/*!
 * isbat-woo.css — WooCommerce globale overstyringer (from WPCode 1009434)
 * Skip-link, butikk-header-hide (page-id-1009213), og global breadcrumb-hide
 * flyttet til isbat-global.css. Rest er Woo-spesifikke stiler.
 * Loaded on: any Woo page + page-id-1009213
 */
/* ============================================================
   ISHELLA V2.5 — Globale overstyringer
   + fjerner breadcrumbs på alle sider (vises kun på butikksider)
   + skjuler skip-link ("Hopp til hovedinnhold")
   + wider shop-layout (ingen sidebar på produkt-/shop-sider)
   + større, bredere "Relaterte produkter"-kort
   + skjuler site-header/nav på /butikk/ (side har egen meny)
   ============================================================ */

/* --- Vis brødsmuler på butikksider (Woo) --- */
body.single-product .woocommerce-breadcrumb,
body.tax-product_cat .woocommerce-breadcrumb,
body.post-type-archive-product .woocommerce-breadcrumb,
body.woocommerce-cart .woocommerce-breadcrumb,
body.woocommerce-checkout .woocommerce-breadcrumb,
body.woocommerce-account .woocommerce-breadcrumb {
  display: block !important;
  font-family: 'JetBrains Mono', ui-monospace, 'SF Mono', monospace !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #aebfd1 !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  position: relative;
  z-index: 2;
}
body.single-product .woocommerce-breadcrumb a,
body.tax-product_cat .woocommerce-breadcrumb a,
body.post-type-archive-product .woocommerce-breadcrumb a,
body.woocommerce-cart .woocommerce-breadcrumb a,
body.woocommerce-checkout .woocommerce-breadcrumb a,
body.woocommerce-account .woocommerce-breadcrumb a {
  color: #2dd4ff !important;
  text-decoration: none !important;
  transition: color 200ms;
}
body.single-product .woocommerce-breadcrumb a:hover,
body.tax-product_cat .woocommerce-breadcrumb a:hover,
body.post-type-archive-product .woocommerce-breadcrumb a:hover,
body.woocommerce-cart .woocommerce-breadcrumb a:hover,
body.woocommerce-checkout .woocommerce-breadcrumb a:hover {
  color: #7be5ff !important;
}

/* ============================================================
   SHOP-LAYOUT — full bredde uten sidebar
   ============================================================ */
body.single-product .content-area,
body.single-product #primary.content-area,
body.tax-product_cat .content-area,
body.tax-product_cat #primary.content-area,
body.post-type-archive-product .content-area,
body.post-type-archive-product #primary.content-area,
body.woocommerce-cart .content-area,
body.woocommerce-checkout .content-area,
body.woocommerce-account .content-area {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  max-width: none !important;
  padding: 0 !important;
}

/* Bredere grid-container på shop-sider slik at kortene får plass */
body.single-product .grid-container,
body.single-product .site-content .grid-container,
body.single-product .inside-article,
body.tax-product_cat .grid-container,
body.tax-product_cat .site-content .grid-container,
body.tax-product_cat .inside-article,
body.post-type-archive-product .grid-container,
body.post-type-archive-product .inside-article {
  max-width: 1600px !important;
  width: 100% !important;
}

/* Forhindre horisontal scroll */
html, body.single-product, body.tax-product_cat, body.post-type-archive-product {
  overflow-x: clip !important;
}

body.single-product #secondary,
body.single-product .widget-area,
body.single-product .sidebar,
body.tax-product_cat #secondary,
body.tax-product_cat .widget-area,
body.tax-product_cat .sidebar,
body.post-type-archive-product #secondary,
body.post-type-archive-product .widget-area,
body.post-type-archive-product .sidebar,
body.woocommerce-cart #secondary,
body.woocommerce-checkout #secondary {
  display: none !important;
}

/* ============================================================
   RELATERTE PRODUKTER — store bredere kort
   ============================================================ */
body.single-product .related.products,
body.single-product .upsells.products {
  grid-column: 1 / -1 !important;
  clear: both;
  width: 100% !important;
  max-width: 100% !important;
  margin: clamp(40px, 5vw, 72px) 0 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}

body.single-product .related.products > h2,
body.single-product .upsells.products > h2 {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: clamp(1.5rem, 2.8vw, 2.25rem) !important;
  font-weight: 800;
  color: #f8fbff;
  letter-spacing: -0.015em;
  margin: 0 0 clamp(20px, 3vw, 36px) !important;
  padding-top: clamp(32px, 4vw, 48px);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
}
body.single-product .related.products > h2::after,
body.single-product .upsells.products > h2::after {
  content: '';
  display: block;
  width: 64px;
  height: 3px;
  background: linear-gradient(90deg, #2dd4ff 0%, #ff1744 100%);
  border-radius: 2px;
  margin-top: 14px;
}

/* Grid layout — store, luftige kort */
body.single-product .related.products ul.products,
body.single-product .upsells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: clamp(16px, 2vw, 28px) !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}
body.single-product .related.products ul.products::before,
body.single-product .related.products ul.products::after,
body.single-product .upsells.products ul.products::before,
body.single-product .upsells.products ul.products::after {
  display: none !important;
  content: none !important;
}

/* Kort-proporsjoner */
body.single-product .related.products ul.products li.product,
body.single-product .upsells.products ul.products li.product {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}

/* Større bilder */
body.single-product .related.products ul.products li.product img,
body.single-product .upsells.products ul.products li.product img {
  height: 340px !important;
  aspect-ratio: auto !important;
}

/* Større tittel */
body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .related.products ul.products li.product h2,
body.single-product .related.products ul.products li.product h3,
body.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .upsells.products ul.products li.product h2,
body.single-product .upsells.products ul.products li.product h3 {
  padding: 24px 24px 10px !important;
  font-size: 1.15rem !important;
  line-height: 1.35 !important;
  -webkit-line-clamp: 2;
}

/* Større pris */
body.single-product .related.products ul.products li.product .price,
body.single-product .upsells.products ul.products li.product .price {
  padding: 0 24px 18px !important;
  font-size: 1.0625rem !important;
}

/* Større CTA */
body.single-product .related.products ul.products li.product a.button,
body.single-product .related.products ul.products li.product .add_to_cart_button,
body.single-product .upsells.products ul.products li.product a.button,
body.single-product .upsells.products ul.products li.product .add_to_cart_button {
  margin: auto 24px 24px !important;
  padding: 14px 22px !important;
  font-size: 0.9375rem !important;
  letter-spacing: 0.05em;
  width: calc(100% - 48px);
  white-space: nowrap;
  min-width: 0;
}

/* Responsiv nedskalering */
@media (max-width: 1200px) {
  body.single-product .related.products ul.products,
  body.single-product .upsells.products ul.products {
    grid-template-columns: repeat(3, 1fr) !important;
  }
  body.single-product .related.products ul.products li.product img,
  body.single-product .upsells.products ul.products li.product img {
    height: 300px !important;
  }
}
@media (max-width: 820px) {
  body.single-product .related.products ul.products,
  body.single-product .upsells.products ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
  }
  body.single-product .related.products ul.products li.product img,
  body.single-product .upsells.products ul.products li.product img {
    height: 240px !important;
  }
}
@media (max-width: 480px) {
  body.single-product .related.products ul.products,
  body.single-product .upsells.products ul.products {
    grid-template-columns: 1fr !important;
  }
  body.single-product .related.products ul.products li.product img,
  body.single-product .upsells.products ul.products li.product img {
    height: 260px !important;
  }
}


/* ============================================================
   HANDLEKURV / KASSEN / MIN KONTO — dark-theme styling
   ============================================================ */
body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-account {
  background: #040816 !important;
  color: #f8fbff !important;
}
body.woocommerce-cart .inside-article, body.woocommerce-checkout .inside-article, body.woocommerce-account .inside-article {
  background: transparent !important;
  padding: clamp(48px, 7vw, 96px) clamp(16px, 3vw, 28px) !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}
/* Tvinger alle wrappers til 100% bredde */
body.woocommerce-cart #page, body.woocommerce-cart .site-content, body.woocommerce-cart #primary, body.woocommerce-cart #main, body.woocommerce-cart article, body.woocommerce-checkout #page, body.woocommerce-checkout .site-content, body.woocommerce-checkout #primary, body.woocommerce-checkout #main, body.woocommerce-checkout article, body.woocommerce-account #page, body.woocommerce-account .site-content, body.woocommerce-account #primary, body.woocommerce-account #main, body.woocommerce-account article {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  background: transparent !important;
}
body.woocommerce-cart .entry-title, body.woocommerce-checkout .entry-title, body.woocommerce-account .entry-title { display: block !important; color: #f8fbff !important; font-size: clamp(1.6rem, 3vw, 2.25rem) !important; font-weight: 800 !important; margin: 0 0 24px !important; }

/* Input-felter — mørk theme */
body.woocommerce-cart input[type=text], body.woocommerce-cart input[type=email], body.woocommerce-cart input[type=tel], body.woocommerce-cart input[type=number], body.woocommerce-cart input[type=password], body.woocommerce-cart input[type=search], body.woocommerce-cart textarea, body.woocommerce-cart select,
body.woocommerce-checkout input[type=text], body.woocommerce-checkout input[type=email], body.woocommerce-checkout input[type=tel], body.woocommerce-checkout input[type=number], body.woocommerce-checkout input[type=password], body.woocommerce-checkout input[type=search], body.woocommerce-checkout textarea, body.woocommerce-checkout select,
body.woocommerce-account input[type=text], body.woocommerce-account input[type=email], body.woocommerce-account input[type=tel], body.woocommerce-account input[type=number], body.woocommerce-account input[type=password], body.woocommerce-account input[type=search], body.woocommerce-account textarea, body.woocommerce-account select {
  background: rgba(13,20,38,0.6) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: #f8fbff !important;
  border-radius: 12px !important;
  padding: 12px 14px !important;
  font-size: 1rem !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  transition: border-color 200ms, box-shadow 200ms;
}
body.woocommerce-cart input:focus, body.woocommerce-cart textarea:focus, body.woocommerce-cart select:focus,
body.woocommerce-checkout input:focus, body.woocommerce-checkout textarea:focus, body.woocommerce-checkout select:focus,
body.woocommerce-account input:focus, body.woocommerce-account textarea:focus, body.woocommerce-account select:focus {
  outline: none !important;
  border-color: #2dd4ff !important;
  box-shadow: 0 0 0 3px rgba(45,212,255,0.15) !important;
}

/* Labels */
body.woocommerce-cart label, body.woocommerce-checkout label, body.woocommerce-account label {
  color: #d7e2ee !important;
  font-weight: 600 !important;
  font-size: 0.875rem !important;
  display: block !important;
  margin-bottom: 6px !important;
}

/* Section headings */
body.woocommerce-checkout h2, body.woocommerce-checkout h3, body.woocommerce-cart h2, body.woocommerce-cart h3, body.woocommerce-account h2, body.woocommerce-account h3 {
  color: #f8fbff !important;
  font-weight: 800 !important;
  margin: 24px 0 16px !important;
}

/* Buttons */
body.woocommerce-cart .button, body.woocommerce-cart button, body.woocommerce-checkout .button, body.woocommerce-checkout button, body.woocommerce-account .button, body.woocommerce-account button,
body.woocommerce-cart input[type=submit], body.woocommerce-checkout input[type=submit], body.woocommerce-account input[type=submit] {
  background: linear-gradient(135deg, #ff1744, #cc0f35) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 12px 24px !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.02em !important;
  cursor: pointer !important;
  transition: transform 180ms, box-shadow 180ms !important;
  box-shadow: 0 4px 18px rgba(255,23,68,0.38) !important;
}
body.woocommerce-cart .button:hover, body.woocommerce-checkout .button:hover, body.woocommerce-account .button:hover, body.woocommerce-cart button:hover, body.woocommerce-checkout button:hover, body.woocommerce-account button:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(255,23,68,0.5) !important;
}

/* Tabeller (cart-summary, ordersum) */
body.woocommerce-cart table.shop_table, body.woocommerce-checkout table.shop_table, body.woocommerce-account table.shop_table {
  width: 100% !important;
  max-width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: rgba(13,20,38,0.5) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  margin-bottom: 24px !important;
  color: #f8fbff !important;
}
body.woocommerce-cart table.shop_table th, body.woocommerce-cart table.shop_table td, body.woocommerce-checkout table.shop_table th, body.woocommerce-checkout table.shop_table td, body.woocommerce-account table.shop_table th, body.woocommerce-account table.shop_table td {
  padding: 14px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  background: transparent !important;
  color: #f8fbff !important;
}

/* Checkout 2-col grid */
body.woocommerce-checkout form.checkout {
  display: grid !important;
  grid-template-columns: minmax(0,1.4fr) minmax(0,1fr) !important;
  gap: 32px !important;
}
@media (max-width: 900px) {
  body.woocommerce-checkout form.checkout {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 24px !important;
  }
}
body.woocommerce-checkout #order_review_heading, body.woocommerce-checkout #order_review { grid-column: 2 / 3 !important; }
@media (max-width: 900px) {
  body.woocommerce-checkout #order_review_heading, body.woocommerce-checkout #order_review { grid-column: 1 / 2 !important; }
}
body.woocommerce-checkout .col2-set { display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; gap: 24px !important; grid-column: 1 / 2 !important; }
@media (max-width: 900px) {
  body.woocommerce-checkout .col2-set { grid-template-columns: minmax(0,1fr) !important; }
}
body.woocommerce-checkout .col2-set .col-1, body.woocommerce-checkout .col2-set .col-2 { width: 100% !important; max-width: 100% !important; float: none !important; padding: 0 !important; }

/* Forhindre horisontal overflow */
html, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-account { overflow-x: clip !important; }
body.woocommerce-cart *, body.woocommerce-checkout *, body.woocommerce-account * { min-width: 0; max-width: 100%; box-sizing: border-box; }


/* ============================================================
   MOBIL FORM-ROW FIX — fjerner WC's negative margin somør forsvinner i kanten
   ============================================================ */
body.woocommerce-checkout .form-row, body.woocommerce-cart .form-row, body.woocommerce-account .form-row {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  box-sizing: border-box !important;
  margin-bottom: 16px !important;
}
body.woocommerce-checkout .woocommerce, body.woocommerce-cart .woocommerce, body.woocommerce-account .woocommerce {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.woocommerce-checkout .form-row-first, body.woocommerce-checkout .form-row-last,
body.woocommerce-cart .form-row-first, body.woocommerce-cart .form-row-last {
  width: 100% !important;
  float: none !important;
  clear: none !important;
}
@media (min-width: 700px) {
  body.woocommerce-checkout .form-row-first, body.woocommerce-cart .form-row-first { width: calc(50% - 8px) !important; float: left !important; margin-right: 16px !important; }
  body.woocommerce-checkout .form-row-last, body.woocommerce-cart .form-row-last { width: calc(50% - 8px) !important; float: left !important; }
}
body.woocommerce-checkout #customer_details, body.woocommerce-cart #customer_details {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Eksplisitt: alle inputs/select/textarea bruker border-box og fyller parent */
body.woocommerce-cart .form-row input, body.woocommerce-cart .form-row select, body.woocommerce-cart .form-row textarea,
body.woocommerce-checkout .form-row input, body.woocommerce-checkout .form-row select, body.woocommerce-checkout .form-row textarea,
body.woocommerce-account .form-row input, body.woocommerce-account .form-row select, body.woocommerce-account .form-row textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}


/* ============================================================
   WC BLOCKS — cart/checkout block fix (margin: 0 -14px overflow)
   ============================================================ */
body.woocommerce-cart .wp-block-woocommerce-cart, body.woocommerce-cart .wc-block-cart,
body.woocommerce-checkout .wp-block-woocommerce-checkout, body.woocommerce-checkout .wc-block-checkout,
body.woocommerce-cart [class*="wc-block-"], body.woocommerce-checkout [class*="wc-block-"] {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
/* Tving alle kort/columns til 100% bredde og border-box */
body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: minmax(0,1.4fr) minmax(0,1fr) !important;
  gap: 32px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
@media (max-width: 900px) {
  body.woocommerce-cart .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-components-sidebar-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}
body.woocommerce-cart .wc-block-components-main, body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-components-main, body.woocommerce-checkout .wc-block-components-sidebar {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  float: none !important;
}
/* Tving table-cells og rader til 100% width */
body.woocommerce-cart .wc-block-cart-items, body.woocommerce-cart .wc-block-cart-items__row,
body.woocommerce-checkout .wc-block-checkout-totals, body.woocommerce-checkout .wc-block-checkout-form {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}


/* ============================================================
   QUANTITY-SELECTOR — symmetriske +/- knapper
   ============================================================ */
body.woocommerce-cart .wc-block-components-quantity-selector,
body.woocommerce-checkout .wc-block-components-quantity-selector {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  background: rgba(13,20,38,0.6) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 999px !important;
  padding: 4px !important;
  width: auto !important;
  max-width: none !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__button,
body.woocommerce-checkout .wc-block-components-quantity-selector__button {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #ff1744 0%, #cc0f35 100%) !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  box-shadow: 0 2px 8px rgba(255,23,68,0.4) !important;
  transition: transform 150ms, box-shadow 150ms !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__button:hover,
body.woocommerce-checkout .wc-block-components-quantity-selector__button:hover {
  transform: scale(1.05) !important;
  box-shadow: 0 4px 14px rgba(255,23,68,0.55) !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__button:disabled,
body.woocommerce-checkout .wc-block-components-quantity-selector__button:disabled {
  opacity: 0.4 !important;
  cursor: not-allowed !important;
  transform: none !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__input,
body.woocommerce-checkout .wc-block-components-quantity-selector__input {
  width: 44px !important;
  min-width: 44px !important;
  background: transparent !important;
  border: none !important;
  color: #f8fbff !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  -moz-appearance: textfield !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector__input::-webkit-inner-spin-button,
body.woocommerce-cart .wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
body.woocommerce-checkout .wc-block-components-quantity-selector__input::-webkit-inner-spin-button,
body.woocommerce-checkout .wc-block-components-quantity-selector__input::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/* ============================================================
   FLYTENDE CART-BADGE — synlig på ALLE WC-relevante sider
   (særlig butikk der hovedmenyen er skjult)
   ============================================================ */
.isbat-floating-cart {
  position: fixed !important;
  top: 16px !important;
  right: 16px !important;
  z-index: 99998 !important;
  width: 48px !important;
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #ff1744 0%, #cc0f35 60%, #7a061e 100%) !important;
  color: #fff !important;
  border-radius: 50% !important;
  text-decoration: none !important;
  box-shadow: 0 6px 22px rgba(255,23,68,0.45), inset 0 1px 0 rgba(255,255,255,0.22) !important;
  transition: transform 200ms cubic-bezier(.34,1.56,.64,1), box-shadow 200ms !important;
}
.isbat-floating-cart:hover { transform: translateY(-2px) scale(1.05) !important; box-shadow: 0 10px 28px rgba(255,23,68,0.6) !important; }
.isbat-floating-cart i { font-size: 18px !important; line-height: 1 !important; color: #fff !important; }
.isbat-floating-cart .nav-cart-count {
  position: absolute !important; top: -2px !important; right: -2px !important;
  min-width: 20px !important; height: 20px !important; padding: 0 5px !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  font-family: 'JetBrains Mono', monospace !important;
  font-size: .7rem !important; font-weight: 800 !important; line-height: 1 !important;
  color: #fff !important;
  background: #1d293b !important;
  border: 2px solid #ff1744 !important;
  border-radius: 999px !important;
  pointer-events: none !important;
}
.isbat-floating-cart .nav-cart-count[data-cart-count="0"] { display: none !important; }


/* ==========================================================================
   ISHELLA V2.5 MOBILE LIVE-FIX v1
   Narrower scope + bigger touch targets + Stripe iframe rescue
   ========================================================================== */

/* --- Stripe / payment-method iframes må beholde sin naturlige høyde ------ */
body.woocommerce-cart iframe,
body.woocommerce-checkout iframe,
body.woocommerce-account iframe,
body.woocommerce-cart .wc-block-components-payment-methods iframe,
body.woocommerce-checkout .wc-block-components-payment-methods iframe {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 20px !important;
  height: auto !important;
  background: transparent !important;
  display: block !important;
}
/* Stripe injects iframes that are absolutely positioned for measurement —
   ikke skaler dem til 100% bredde */
body.woocommerce-cart iframe[name^="__privateStripeController"],
body.woocommerce-checkout iframe[name^="__privateStripeController"],
body.woocommerce-cart iframe[name^="__privateStripeMetrics"],
body.woocommerce-checkout iframe[name^="__privateStripeMetrics"] {
  position: absolute !important;
  width: 1px !important;
  min-width: 0 !important;
  height: 1px !important;
  min-height: 0 !important;
  pointer-events: none !important;
}

/* Container for payment-methods skal ha luft + synlig høyde på mobil */
body.woocommerce-checkout .wc-block-components-payment-methods,
body.woocommerce-checkout .wc-block-checkout__payment-method,
body.woocommerce-checkout .payment_methods,
body.woocommerce-checkout #payment,
body.woocommerce-checkout .wc-block-components-checkout-step__content {
  background: rgba(13,20,38,0.5) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 16px !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
  min-height: 64px;
}
body.woocommerce-checkout .wc-block-components-radio-control {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}
body.woocommerce-checkout .wc-block-components-radio-control__option,
body.woocommerce-checkout ul.wc_payment_methods li {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 12px !important;
  padding: 14px 16px !important;
  min-height: 56px;
  list-style: none;
  position: relative;
}
body.woocommerce-checkout .wc-block-components-radio-control__option-checked,
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method.is-selected {
  border-color: #2dd4ff !important;
  background: rgba(45,212,255,0.06) !important;
  box-shadow: 0 0 0 2px rgba(45,212,255,0.18);
}
body.woocommerce-checkout ul.wc_payment_methods li label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  color: #f8fbff !important;
}

/* --- Touch-targets: alle input/button minst 48px høye på mobil ---------- */
@media (max-width: 760px) {
  body.woocommerce-cart input[type=text],
  body.woocommerce-cart input[type=email],
  body.woocommerce-cart input[type=tel],
  body.woocommerce-cart input[type=number],
  body.woocommerce-cart input[type=password],
  body.woocommerce-cart select,
  body.woocommerce-checkout input[type=text],
  body.woocommerce-checkout input[type=email],
  body.woocommerce-checkout input[type=tel],
  body.woocommerce-checkout input[type=number],
  body.woocommerce-checkout input[type=password],
  body.woocommerce-checkout select,
  body.woocommerce-account input[type=text],
  body.woocommerce-account input[type=email],
  body.woocommerce-account input[type=tel],
  body.woocommerce-account input[type=password],
  body.woocommerce-account select {
    min-height: 48px !important;
    padding: 12px 14px !important;
    font-size: 16px !important; /* unngå iOS zoom */
  }
  body.woocommerce-cart .button,
  body.woocommerce-cart button,
  body.woocommerce-cart input[type=submit],
  body.woocommerce-checkout .button,
  body.woocommerce-checkout button,
  body.woocommerce-checkout input[type=submit],
  body.woocommerce-account .button,
  body.woocommerce-account button,
  body.woocommerce-account input[type=submit] {
    min-height: 52px !important;
    padding: 14px 24px !important;
    font-size: 1rem !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  body.woocommerce-cart .inside-article,
  body.woocommerce-checkout .inside-article,
  body.woocommerce-account .inside-article {
    padding: 24px 16px 48px !important;
  }
  body.woocommerce-cart .entry-title,
  body.woocommerce-checkout .entry-title,
  body.woocommerce-account .entry-title {
    font-size: 1.5rem !important;
    margin-bottom: 20px !important;
  }
  body.woocommerce-cart table.shop_table,
  body.woocommerce-checkout table.shop_table,
  body.woocommerce-account table.shop_table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  body.woocommerce-cart table.shop_table thead,
  body.woocommerce-checkout table.shop_table thead,
  body.woocommerce-account table.shop_table thead { display: none; }
  body.woocommerce-cart table.shop_table tr,
  body.woocommerce-checkout table.shop_table tr,
  body.woocommerce-account table.shop_table tr {
    display: block;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }
  body.woocommerce-cart table.shop_table td,
  body.woocommerce-checkout table.shop_table td,
  body.woocommerce-account table.shop_table td {
    display: flex !important;
    justify-content: space-between;
    gap: 12px;
    text-align: right !important;
    padding: 8px 12px !important;
    border: none !important;
  }
  body.woocommerce-cart table.shop_table td::before,
  body.woocommerce-checkout table.shop_table td::before,
  body.woocommerce-account table.shop_table td::before {
    content: attr(data-title);
    text-align: left;
    font-weight: 700;
    color: #aebfd1;
    flex: 0 0 auto;
  }

  /* WC Blocks: stack på mobil + luftigere kort */
  body.woocommerce-cart .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-components-sidebar-layout {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  body.woocommerce-checkout .wc-block-checkout__form,
  body.woocommerce-cart .wc-block-cart__main {
    padding: 0 !important;
  }
  body.woocommerce-cart .wc-block-components-panel,
  body.woocommerce-checkout .wc-block-components-panel,
  body.woocommerce-cart .wc-block-components-totals-item,
  body.woocommerce-checkout .wc-block-components-totals-item {
    padding: 14px 0 !important;
  }
  /* Make "Order Summary" panel's collapsible content look like a card */
  body.woocommerce-checkout .wc-block-components-order-summary,
  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-checkout .wc-block-checkout__sidebar {
    background: rgba(13,20,38,0.5) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 16px !important;
    padding: 16px 18px !important;
    margin-bottom: 20px;
  }
}

/* --- Single product mobil: mer kompakt layout + bedre bilde -------------- */
@media (max-width: 760px) {
  body.single-product .inside-article {
    padding: 20px 14px 36px !important;
  }
  body.single-product div.product .woocommerce-product-gallery {
    margin-bottom: 20px !important;
  }
  body.single-product div.product .product_title,
  body.single-product div.product h1.product_title {
    font-size: 1.5rem !important;
    margin-bottom: 12px !important;
  }
  body.single-product .price,
  body.single-product p.price {
    font-size: 1.5rem !important;
    margin-bottom: 16px !important;
  }
  body.single-product .summary form.cart {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  body.single-product .summary form.cart .quantity,
  body.single-product .summary form.cart input.qty {
    flex: 0 0 auto;
  }
  body.single-product .summary form.cart button.single_add_to_cart_button {
    flex: 1 1 100% !important;
    min-height: 52px !important;
    font-size: 1rem !important;
  }
  body.single-product .woocommerce-tabs ul.tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 6px;
    scrollbar-width: none;
  }
  body.single-product .woocommerce-tabs ul.tabs::-webkit-scrollbar { display: none; }
  body.single-product .woocommerce-tabs ul.tabs li {
    flex: 0 0 auto;
  }
  body.single-product .woocommerce-Tabs-panel {
    padding: 18px !important;
  }
  body.single-product .related.products ul.products,
  body.single-product .upsells.products ul.products {
    grid-template-columns: 1fr !important;
  }
}

/* --- Produktkategori / butikk mobil: større kort, bedre typografi ------- */
@media (max-width: 540px) {
  body.tax-product_cat .inside-article,
  body.post-type-archive-product .inside-article {
    padding: 20px 12px 40px !important;
  }
  .woocommerce ul.products li.product {
    min-height: 0 !important;
  }
  .woocommerce ul.products li.product a.button,
  .woocommerce ul.products li.product .add_to_cart_button {
    min-height: 48px !important;
    font-size: 0.95rem !important;
  }
}

/* --- Forhindre horisontal scroll overalt på Woo-sider ------------------- */
html body.woocommerce-cart,
html body.woocommerce-checkout,
html body.woocommerce-account,
html body.single-product,
html body.tax-product_cat,
html body.post-type-archive-product {
  overflow-x: hidden !important;
}

/* --- FLYTENDE HANDLEKURV: synlig på alle Woo-sider -------------------- */
/* Make the floating cart bigger and more tappable on mobile.
   HTML injected via PHP snippet (se ISHELLA V2.5 — Woo Floating Cart). */
.isbat-floating-cart {
  width: 56px !important;
  height: 56px !important;
  top: 16px !important;
  right: 16px !important;
}
.isbat-floating-cart svg,
.isbat-floating-cart i {
  width: 22px !important;
  height: 22px !important;
  font-size: 20px !important;
}
@media (max-width: 760px) {
  .isbat-floating-cart {
    width: 52px !important;
    height: 52px !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 99999 !important;
  }
}
/* På butikksiden (page-id-1009213) bytter vi nav, så unngå duplikat:
   butikken har sin egen #nav-cart og vi skjuler derfor den flytende der */
body.page-id-1009213 .isbat-floating-cart { display: none !important; }

/* Skjul floating cart hvis hovedmenyens cart allerede er synlig og ikke skjules.
   Generell regel: vis alltid på mobil, skjul på ≥1025px hvis site-header er synlig */
@media (min-width: 1025px) {
  body:not(.page-id-1009213) .isbat-floating-cart.has-header-cart {
    display: none !important;
  }
}


/* === ISHELLA V2.5 MOBILE LIVE-FIX v2 (overrides v1 issues) === */

/* Radio-/checkbox-inputs i Woo-blokker skal beholde naturlig størrelse,
   ikke strekke seg. Overstyrer generell input-regel fra v1/globale overrides. */
body.woocommerce-cart input[type=radio],
body.woocommerce-cart input[type=checkbox],
body.woocommerce-checkout input[type=radio],
body.woocommerce-checkout input[type=checkbox],
body.woocommerce-account input[type=radio],
body.woocommerce-account input[type=checkbox] {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
  flex: 0 0 20px !important;
  padding: 0 !important;
  margin: 0 8px 0 0 !important;
  box-sizing: border-box !important;
  border-radius: 50% !important;
  appearance: auto !important;
  -webkit-appearance: radio !important;
  accent-color: #2dd4ff;
}
body.woocommerce-cart input[type=checkbox],
body.woocommerce-checkout input[type=checkbox],
body.woocommerce-account input[type=checkbox] {
  border-radius: 4px !important;
  -webkit-appearance: checkbox !important;
}

/* Stripe / Link / Apple Pay / Google Pay express-payment-knapp skal være høy nok */
body.woocommerce-checkout .wc-block-components-express-payment,
body.woocommerce-checkout .wc-block-components-express-payment__event-buttons,
body.woocommerce-checkout .wc-block-components-express-payment__event-buttons > * {
  min-height: 48px !important;
}
body.woocommerce-checkout .wc-block-components-express-payment iframe,
body.woocommerce-checkout .wc-block-components-express-payment__event-buttons iframe,
body.woocommerce-checkout iframe[title*="Stripe" i],
body.woocommerce-checkout iframe[title*="Link" i],
body.woocommerce-checkout iframe[title*="Pay" i],
body.woocommerce-checkout iframe[name^="__privateStripeMethodsFrame"] {
  min-height: 48px !important;
  height: 48px !important;
  max-height: none !important;
  width: 100% !important;
  display: block !important;
}

/* Stripe Payment Element iframe (card fields) — trenger naturlig høyde,
   ikke tving en bestemt verdi */
body.woocommerce-checkout iframe[name^="__privateStripeFrame"] {
  min-height: 40px !important;
  height: auto !important;
  max-height: none !important;
  width: 100% !important;
}

/* Payment method-radioer: label, ikon og tekst på samme linje */
body.woocommerce-checkout .wc_payment_method label,
body.woocommerce-checkout .wc-block-components-radio-control__option label,
body.woocommerce-checkout .wc-block-components-radio-control__option {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  line-height: 1.4 !important;
  color: #f8fbff !important;
  flex-wrap: wrap;
}
body.woocommerce-checkout .wc_payment_method label img,
body.woocommerce-checkout .wc-block-components-radio-control__option img {
  width: auto !important;
  max-width: 56px !important;
  height: auto !important;
  max-height: 28px !important;
  flex: 0 0 auto !important;
  display: inline-block !important;
}

/* Container-card for payment skal ikke klippe innhold */
body.woocommerce-checkout #payment,
body.woocommerce-checkout .wc-block-components-payment-methods,
body.woocommerce-checkout .wc-block-checkout__payment-method,
body.woocommerce-checkout .payment_methods,
body.woocommerce-checkout .wc-block-components-checkout-step__content {
  overflow: visible !important;
  min-height: auto !important;
}

/* "Legg til en melding til ordren din" — collapsible knapp/label */
body.woocommerce-checkout .wc-block-components-checkout-order-notes__content textarea,
body.woocommerce-checkout textarea#order_comments {
  min-height: 84px !important;
}

/* Sørg for at select (Land/region) ser riktig ut */
body.woocommerce-cart select,
body.woocommerce-checkout select,
body.woocommerce-account select {
  appearance: menulist !important;
  -webkit-appearance: menulist !important;
  background-image: none !important;
}

/* Select2 dropdown (Woo country select) på mobil */
body.woocommerce-checkout .select2-container,
body.woocommerce-cart .select2-container {
  width: 100% !important;
  max-width: 100% !important;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single,
body.woocommerce-cart .select2-container--default .select2-selection--single {
  background: rgba(13,20,38,0.6) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  color: #f8fbff !important;
  border-radius: 12px !important;
  height: 48px !important;
  padding: 0 14px !important;
  display: flex;
  align-items: center;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
body.woocommerce-cart .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #f8fbff !important;
  line-height: 48px !important;
  padding: 0 !important;
}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow,
body.woocommerce-cart .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 46px !important;
  right: 8px !important;
}

/* Disable den for-agressive `* { max-width: 100% }` fra tidligere globalt for
   elementer som Woo bruker (img, svg, iframe med egne dimensjoner) */
body.woocommerce-cart .wc-block-components-payment-methods *,
body.woocommerce-checkout .wc-block-components-payment-methods *,
body.woocommerce-checkout .wc_payment_methods * {
  max-width: none;
}


/* === ISHELLA V2.5 MOBILE LIVE-FIX v3 (polish) === */

/* --- WC Blocks floating labels: unngå overlap med input-innhold ---------- */
body.woocommerce-cart .wc-block-components-text-input,
body.woocommerce-checkout .wc-block-components-text-input,
body.woocommerce-checkout .wc-block-components-combobox,
body.woocommerce-checkout .wc-block-components-select {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 0 14px !important;
}
/* Label som "floating" label — plasser over input */
body.woocommerce-cart .wc-block-components-text-input > label,
body.woocommerce-checkout .wc-block-components-text-input > label,
body.woocommerce-checkout .wc-block-components-combobox > label,
body.woocommerce-checkout .wc-block-components-select > label,
body.woocommerce-checkout .wc-block-components-text-input label:not(.wc-block-components-checkbox__label):not(.wc-block-components-radio-control__label) {
  position: static !important;
  transform: none !important;
  display: block !important;
  color: #aebfd1 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  margin: 0 0 6px 4px !important;
  padding: 0 !important;
  background: transparent !important;
  line-height: 1.3 !important;
  text-transform: none !important;
  pointer-events: auto !important;
}
/* Fokus på input = markert label-farge */
body.woocommerce-checkout .wc-block-components-text-input.is-active > label,
body.woocommerce-checkout .wc-block-components-text-input:focus-within > label,
body.woocommerce-checkout .wc-block-components-select:focus-within > label,
body.woocommerce-checkout .wc-block-components-combobox:focus-within > label {
  color: #2dd4ff !important;
}

/* Flettefelt som ligger inni input (select2, country combobox) — padding-top så innhold ikke dekker label */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox input,
body.woocommerce-checkout .wc-block-components-combobox__container,
body.woocommerce-checkout .wc-block-components-select select {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

/* Utfylt/valgt Combobox (Land/region) — Norge-verdien skal være senter-justert,
   ikke overlappe label */
body.woocommerce-checkout .wc-block-components-combobox__container {
  display: flex !important;
  align-items: center !important;
  min-height: 48px !important;
}

/* --- Radio selected state: tydelig indikator ---------------------------- */
body.woocommerce-checkout .wc-block-components-radio-control__option-checked,
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method input[type=radio]:checked + label {
  color: #f8fbff !important;
}
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method {
  transition: border-color 180ms, background 180ms;
}

/* --- Section spacing (mer luft mellom kortene) -------------------------- */
@media (max-width: 760px) {
  body.woocommerce-checkout .wc-block-components-checkout-step,
  body.woocommerce-cart .wc-block-cart-items {
    margin-bottom: 18px !important;
  }
  body.woocommerce-checkout h2,
  body.woocommerce-cart h2,
  body.woocommerce-account h2 {
    font-size: 1.25rem !important;
    margin: 0 0 14px !important;
  }
  body.woocommerce-checkout .wc-block-components-checkout-step__title,
  body.woocommerce-checkout .wc-block-components-title {
    font-size: 1.25rem !important;
    margin: 0 0 14px !important;
  }
}

/* v3 sticky-submit block removed: reverseres fullt av v4 rescue — se isbat-woo.css v1 i Git for original */

/* --- Gir handlekurv-badge pulseringsanimasjon når antall endres --------- */
.isbat-floating-cart .nav-cart-count {
  transition: transform 220ms cubic-bezier(.34,1.56,.64,1);
}
.isbat-floating-cart.is-bumping .nav-cart-count {
  animation: isbat-cart-bump 480ms cubic-bezier(.34,1.56,.64,1);
}
@keyframes isbat-cart-bump {
  0%   { transform: scale(1); }
  30%  { transform: scale(1.45); }
  60%  { transform: scale(0.88); }
  100% { transform: scale(1); }
}

/* --- Header cart-badge (GP-tema) skal være synlig på alle Woo-sider ----- */
body.woocommerce-cart .site-header,
body.woocommerce-checkout .site-header,
body.woocommerce-account .site-header,
body.single-product .site-header,
body.tax-product_cat .site-header,
body.post-type-archive-product .site-header,
body.woocommerce-cart #masthead,
body.woocommerce-checkout #masthead,
body.woocommerce-account #masthead,
body.single-product #masthead,
body.tax-product_cat #masthead,
body.post-type-archive-product #masthead {
  display: block !important;
  visibility: visible !important;
}

/* --- Focus-states over hele Woo (tilgjengelighet) ----------------------- */
body.woocommerce-cart a:focus-visible,
body.woocommerce-checkout a:focus-visible,
body.woocommerce-account a:focus-visible,
body.woocommerce-cart button:focus-visible,
body.woocommerce-checkout button:focus-visible,
body.woocommerce-account button:focus-visible {
  outline: 2px solid #2dd4ff !important;
  outline-offset: 2px !important;
  border-radius: 6px;
}

/* --- Form validation: rød ramme og varseltekst ------------------------- */
body.woocommerce-checkout .wc-block-components-text-input.has-error input,
body.woocommerce-cart .woocommerce-invalid input,
body.woocommerce-checkout .woocommerce-invalid input,
body.woocommerce-checkout .is-invalid input {
  border-color: #ff4d6d !important;
  box-shadow: 0 0 0 3px rgba(255,77,109,0.15) !important;
}
body.woocommerce-checkout .wc-block-components-validation-error {
  color: #ff7a91 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  margin-top: 6px !important;
}

/* --- "Tilbake til handlekurv"-lenke, penere styling -------------------- */
body.woocommerce-checkout .wc-block-components-back-to-cart,
body.woocommerce-checkout a[href*="handlekurv"] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #2dd4ff !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
body.woocommerce-checkout .wc-block-components-back-to-cart:hover,
body.woocommerce-checkout a[href*="handlekurv"]:hover {
  color: #7be5ff !important;
}

/* --- Order Summary spinner / skeleton loader ---------------------------- */
@keyframes isbat-skeleton-pulse {
  0%, 100% { opacity: 0.4; }
  50%      { opacity: 0.8; }
}
body.woocommerce-checkout .wc-block-components-loading-mask {
  position: relative;
  pointer-events: none;
}
body.woocommerce-checkout .wc-block-components-loading-mask::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(4,8,22,0.5);
  border-radius: inherit;
  animation: isbat-skeleton-pulse 1.4s ease-in-out infinite;
  z-index: 10;
}

/* --- Sørg for at floating-cart alltid er over header --- */
.isbat-floating-cart { z-index: 100000 !important; }


/* === ISHELLA V2.5 MOBILE LIVE-FIX v4 (rescue: submit-button + combobox) === */

/* --- SEND INN ORDRE-knappen: full solid rød pill, ingen overflow --------- */
/* Nullstill evt. sticky-wrapper overflow/margin fra v3 */
body.woocommerce-checkout form.checkout .place-order,
body.woocommerce-checkout .wc-block-checkout__actions,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
  margin: 24px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  position: static !important;
  overflow: visible !important;
  z-index: auto;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Knappen selv — uansett hvilken WC-variant */
body.woocommerce-checkout form.checkout button#place_order,
body.woocommerce-checkout form.checkout input#place_order,
body.woocommerce-checkout .place-order button,
body.woocommerce-checkout .place-order input[type=submit],
body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-checkout__actions button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 56px !important;
  padding: 16px 28px !important;
  background: linear-gradient(135deg, #ff1744 0%, #cc0f35 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 1.0625rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  text-shadow: none !important;
  box-shadow: 0 10px 28px rgba(255,23,68,0.4), inset 0 1px 0 rgba(255,255,255,0.22) !important;
  cursor: pointer !important;
  transition: transform 180ms, box-shadow 180ms, filter 180ms !important;
  position: static !important;
  opacity: 1 !important;
}
body.woocommerce-checkout form.checkout button#place_order:hover,
body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wc-block-checkout__actions button:hover {
  transform: translateY(-2px) !important;
  filter: brightness(1.06);
  box-shadow: 0 14px 34px rgba(255,23,68,0.55), inset 0 1px 0 rgba(255,255,255,0.28) !important;
}
body.woocommerce-checkout form.checkout button#place_order:disabled,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button[disabled] {
  opacity: 0.55 !important;
  cursor: not-allowed !important;
  transform: none !important;
}
/* Chevron-ikon hvis WC Blocks renderer det — hold det synlig og hvitt */
body.woocommerce-checkout .wc-block-components-checkout-place-order-button svg,
body.woocommerce-checkout .wc-block-components-button__text svg {
  fill: currentColor !important;
  stroke: currentColor !important;
  width: 16px !important;
  height: 16px !important;
  opacity: 1 !important;
}

/* --- Land/region combobox: label over, "Norge" inne, ingen overlapp ----- */
body.woocommerce-checkout .wc-block-components-combobox {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 0 14px !important;
  min-height: auto !important;
}
body.woocommerce-checkout .wc-block-components-combobox > label,
body.woocommerce-checkout .wc-block-components-combobox label.wc-block-components-combobox-control__label {
  position: static !important;
  transform: none !important;
  display: block !important;
  order: -1 !important;
  color: #aebfd1 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  margin: 0 0 0 4px !important;
  padding: 0 !important;
  background: transparent !important;
  line-height: 1.3 !important;
  text-transform: none !important;
  pointer-events: auto !important;
  opacity: 1 !important;
}
body.woocommerce-checkout .wc-block-components-combobox__container {
  background: rgba(13,20,38,0.6) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 12px !important;
  min-height: 48px !important;
  padding: 0 12px !important;
  display: flex !important;
  align-items: center !important;
}
body.woocommerce-checkout .wc-block-components-combobox__container input.wc-block-components-combobox-control__input,
body.woocommerce-checkout .wc-block-components-combobox input {
  background: transparent !important;
  border: none !important;
  color: #f8fbff !important;
  padding: 0 !important;
  min-height: 48px !important;
  height: 48px !important;
  font-size: 16px !important;
  width: 100% !important;
  box-shadow: none !important;
}
body.woocommerce-checkout .wc-block-components-combobox:focus-within .wc-block-components-combobox__container {
  border-color: #2dd4ff !important;
  box-shadow: 0 0 0 3px rgba(45,212,255,0.15) !important;
}
body.woocommerce-checkout .wc-block-components-combobox:focus-within > label {
  color: #2dd4ff !important;
}

/* Dropdown-popup (liste over land) — mørk tema */
.components-popover .components-combobox-control__suggestions-container,
.wc-block-components-combobox-control__list {
  background: #0d1426 !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 12px !important;
  box-shadow: 0 20px 48px rgba(0,0,0,0.5) !important;
}
.wc-block-components-combobox-control__list [role="option"],
.components-combobox-control__suggestions-container [role="option"] {
  color: #f8fbff !important;
  padding: 10px 14px !important;
}
.wc-block-components-combobox-control__list [role="option"][data-is-highlighted="true"],
.wc-block-components-combobox-control__list [role="option"]:hover,
.components-combobox-control__suggestions-container [role="option"]:hover {
  background: rgba(45,212,255,0.12) !important;
  color: #2dd4ff !important;
}

/* --- Alle form-row labels som floating-labels: flytt dem over input ---- */
/* WC Blocks — "Fornavn, Etternavn..." label ligger inni input, floater opp.
   Vi fjerner floater og lar label alltid stå over input for konsistens. */
body.woocommerce-checkout .wc-block-components-text-input {
  padding-top: 0 !important;
}
body.woocommerce-checkout .wc-block-components-text-input > label,
body.woocommerce-checkout .wc-block-components-text-input label.wc-block-components-text-input__label {
  position: static !important;
  transform: none !important;
  display: block !important;
  order: -1 !important;
  color: #aebfd1 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  margin: 0 0 6px 4px !important;
  padding: 0 !important;
  background: transparent !important;
  top: auto !important;
  left: auto !important;
  opacity: 1 !important;
}
body.woocommerce-checkout .wc-block-components-text-input input {
  padding: 12px 14px !important;
  min-height: 48px !important;
  margin-top: 0 !important;
  font-size: 16px !important;
}

/* --- "Tilbake til handlekurv"-lenke: tydelig og sentrert under knappen --- */
body.woocommerce-checkout .wc-block-components-order-summary + *,
body.woocommerce-checkout .wc-block-checkout__actions {
  text-align: center;
}
body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button,
body.woocommerce-checkout a[href*="handlekurv"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  margin-top: 14px !important;
  padding: 10px 16px !important;
  color: #2dd4ff !important;
  font-weight: 600 !important;
  font-size: 0.9375rem !important;
  text-decoration: none !important;
  border-radius: 999px !important;
  transition: color 180ms, background 180ms;
}
body.woocommerce-checkout a[href*="handlekurv"]:hover {
  color: #7be5ff !important;
  background: rgba(45,212,255,0.08) !important;
}


/* === ISHELLA V2.5 MOBILE LIVE-FIX v5 (Betalingsmåter + symmetrisk layout) === */

/* --- Betalingsmåter: radio, ikon og tekst justert på én linje, ingen cut-off --- */
body.woocommerce-checkout .wc-block-components-payment-methods,
body.woocommerce-checkout .payment_methods,
body.woocommerce-checkout #payment {
  padding: 8px !important;
  overflow: visible !important;
}

body.woocommerce-checkout .wc-block-components-radio-control {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

body.woocommerce-checkout .wc-block-components-radio-control__option,
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 56px !important;
  padding: 14px 16px !important;
  margin: 0 !important;
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 12px !important;
  list-style: none !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  flex-wrap: nowrap !important;
}

body.woocommerce-checkout .wc-block-components-radio-control__option-checked,
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method:has(input[type=radio]:checked) {
  border-color: #2dd4ff !important;
  background: rgba(45,212,255,0.06) !important;
  box-shadow: 0 0 0 2px rgba(45,212,255,0.18) !important;
}

/* Radio-input inne i option: fast 20px, venstrejustert */
body.woocommerce-checkout .wc-block-components-radio-control__option input[type=radio],
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method input[type=radio] {
  flex: 0 0 20px !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
}

/* Label-tekst: fyll resten av bredden, ingen overflow/cutoff */
body.woocommerce-checkout .wc-block-components-radio-control__option > *:not(input),
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method > label,
body.woocommerce-checkout .wc-block-components-radio-control__option-content,
body.woocommerce-checkout .wc-block-components-radio-control__label,
body.woocommerce-checkout .wc-block-components-radio-control__description {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  color: #f8fbff !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  text-overflow: initial !important;
  white-space: normal !important;
  word-break: break-word !important;
  text-align: left !important;
  display: block !important;
}

/* Payment-method-beskrivelse (under label) */
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method .payment_box,
body.woocommerce-checkout .wc-block-components-radio-control__option-content-wrapper {
  flex: 1 1 100% !important;
  width: 100% !important;
  margin-top: 8px !important;
  padding: 0 !important;
  background: transparent !important;
  color: #aebfd1 !important;
  font-size: 0.8125rem !important;
}

/* Payment-icon (VISA/Mastercard logos osv) */
body.woocommerce-checkout ul.wc_payment_methods li.wc_payment_method label img,
body.woocommerce-checkout .wc-block-components-radio-control__option img {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 48px !important;
  height: auto !important;
  max-height: 24px !important;
  margin: 0 0 0 auto !important;
  display: inline-block !important;
}

/* ============================================================
   SYMMETRISK LAYOUT — alle seksjoner som identiske glass-kort
   ============================================================ */
@media (max-width: 760px) {
  /* Hver checkout-step blir et glass-kort med samme padding/bredde */
  body.woocommerce-checkout .wc-block-components-checkout-step,
  body.woocommerce-checkout .wc-block-checkout__contact-fields,
  body.woocommerce-checkout .wc-block-checkout__billing-fields,
  body.woocommerce-checkout .wc-block-checkout__shipping-fields,
  body.woocommerce-checkout .wc-block-checkout__payment-method,
  body.woocommerce-checkout .wc-block-checkout__order-notes,
  body.woocommerce-cart .wc-block-cart__main > * {
    background: rgba(13,20,38,0.5) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 16px !important;
    padding: 20px 16px !important;
    margin: 0 0 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Seksjon-overskrifter: konsistent størrelse og margin */
  body.woocommerce-checkout .wc-block-components-checkout-step__title,
  body.woocommerce-checkout .wc-block-components-title,
  body.woocommerce-checkout h2,
  body.woocommerce-cart h2 {
    font-size: 1.1875rem !important;
    font-weight: 800 !important;
    color: #f8fbff !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    line-height: 1.3 !important;
  }

  /* Description/subtitle under overskrift */
  body.woocommerce-checkout .wc-block-components-checkout-step__description {
    font-size: 0.875rem !important;
    color: #aebfd1 !important;
    margin: -10px 0 16px !important;
    padding: 0 !important;
  }

  /* Inner form-content: bruk hele kortets bredde */
  body.woocommerce-checkout .wc-block-components-checkout-step__content,
  body.woocommerce-checkout .wc-block-checkout__form-group {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    background: transparent !important;
    border: none !important;
  }

  /* Ordresammendrag (top collapsible) og bunn-ordresammendrag: samme visuelt */
  body.woocommerce-checkout .wc-block-components-order-summary,
  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-checkout .wc-block-checkout__sidebar {
    background: rgba(13,20,38,0.5) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 16px !important;
    padding: 18px 16px !important;
    margin: 0 0 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Container rundt alle steps: fjern evt. dobbel padding */
  body.woocommerce-checkout .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-checkout__main,
  body.woocommerce-checkout .wc-block-checkout,
  body.woocommerce-checkout .wc-block-components-main {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
  }

  /* Den ytre siden-containeren: ett sett med padding */
  body.woocommerce-cart .inside-article,
  body.woocommerce-checkout .inside-article,
  body.woocommerce-account .inside-article {
    padding: 20px 14px 40px !important;
  }

  /* Ordresammendrag (kollapserbar) øverst: ikke dupliser card-styling */
  body.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-panel {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Panel-buttons (Ordresammendrag-toggle) */
  body.woocommerce-checkout .wc-block-components-panel__button,
  body.woocommerce-cart .wc-block-components-panel__button {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 40px !important;
    color: #f8fbff !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    text-align: left !important;
  }

  /* Totalt-tall: samme uppercase-label + tall-stil som resten */
  body.woocommerce-checkout .wc-block-components-totals-item,
  body.woocommerce-cart .wc-block-components-totals-item {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    border: none !important;
  }
  body.woocommerce-checkout .wc-block-components-totals-item__label,
  body.woocommerce-cart .wc-block-components-totals-item__label {
    color: #aebfd1 !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
  }
  body.woocommerce-checkout .wc-block-components-totals-item__value,
  body.woocommerce-cart .wc-block-components-totals-item__value {
    color: #f8fbff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
  }
  /* Totalt-raden i større font */
  body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
  body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #f8fbff !important;
  }
  body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
  body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 1.25rem !important;
    font-weight: 800 !important;
  }

  /* Produktlinje i ordresammendrag: symmetrisk bilde + tekst */
  body.woocommerce-checkout .wc-block-components-order-summary-item,
  body.woocommerce-cart .wc-block-cart-items__row {
    display: grid !important;
    grid-template-columns: 64px 1fr auto !important;
    gap: 12px !important;
    align-items: start !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item:last-child,
  body.woocommerce-cart .wc-block-cart-items__row:last-child {
    border-bottom: none !important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__image,
  body.woocommerce-cart .wc-block-cart-item__image {
    width: 64px !important;
    height: 64px !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: rgba(255,255,255,0.04) !important;
    margin: 0 !important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__image img,
  body.woocommerce-cart .wc-block-cart-item__image img {
    width: 64px !important;
    height: 64px !important;
    object-fit: cover !important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__description {
    min-width: 0 !important;
    color: #f8fbff !important;
    font-size: 0.9375rem !important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
    color: #aebfd1 !important;
    font-size: 0.8125rem !important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__total-price,
  body.woocommerce-checkout .wc-block-components-product-price {
    color: #f8fbff !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    font-size: 0.9375rem !important;
  }
}

/* --- "Legg til en melding til ordren din" blir et kort som alle andre --- */
@media (max-width: 760px) {
  body.woocommerce-checkout .wc-block-checkout__order-notes,
  body.woocommerce-checkout .wc-block-components-checkout-order-notes {
    background: rgba(13,20,38,0.5) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 16px !important;
    padding: 16px !important;
    margin: 0 0 16px !important;
  }
  body.woocommerce-checkout .wc-block-components-checkout-order-notes__label,
  body.woocommerce-checkout label[for*="order_notes" i] {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    cursor: pointer !important;
    color: #f8fbff !important;
    font-weight: 600 !important;
    font-size: 0.9375rem !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* --- Liten margin-reset så ytre wrapping er symmetrisk ----------------- */
body.woocommerce-checkout main.site-main,
body.woocommerce-checkout #primary,
body.woocommerce-checkout .content-area,
body.woocommerce-cart main.site-main,
body.woocommerce-cart #primary,
body.woocommerce-cart .content-area {
  padding: 0 !important;
  margin: 0 !important;
}


/* === ISHELLA V2.5 MOBILE LIVE-FIX v6 (full bredde, ingen kutt) === */

/* Sørg for at viewport er brukt fullt og ingen horisontalkutt */
@media (max-width: 760px) {
  html, body {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  /* Alle ytre wrappere: fyll viewport, ingen margin/padding som pusher innhold ut */
  body.woocommerce-cart #page,
  body.woocommerce-cart .site-content,
  body.woocommerce-cart .grid-container,
  body.woocommerce-cart #primary,
  body.woocommerce-cart .content-area,
  body.woocommerce-cart #main,
  body.woocommerce-cart .site-main,
  body.woocommerce-cart article,
  body.woocommerce-checkout #page,
  body.woocommerce-checkout .site-content,
  body.woocommerce-checkout .grid-container,
  body.woocommerce-checkout #primary,
  body.woocommerce-checkout .content-area,
  body.woocommerce-checkout #main,
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout article,
  body.woocommerce-account #page,
  body.woocommerce-account .site-content,
  body.woocommerce-account .grid-container,
  body.woocommerce-account #primary,
  body.woocommerce-account .content-area,
  body.woocommerce-account #main,
  body.woocommerce-account .site-main,
  body.woocommerce-account article,
  body.single-product #page,
  body.single-product .site-content,
  body.single-product .grid-container,
  body.single-product #primary,
  body.single-product .content-area,
  body.single-product #main,
  body.single-product .site-main,
  body.single-product article,
  body.tax-product_cat #page,
  body.tax-product_cat .site-content,
  body.tax-product_cat .grid-container,
  body.tax-product_cat #primary,
  body.tax-product_cat .content-area,
  body.tax-product_cat #main,
  body.tax-product_cat .site-main,
  body.tax-product_cat article,
  body.post-type-archive-product #page,
  body.post-type-archive-product .site-content,
  body.post-type-archive-product .grid-container,
  body.post-type-archive-product #primary,
  body.post-type-archive-product .content-area,
  body.post-type-archive-product #main,
  body.post-type-archive-product .site-main,
  body.post-type-archive-product article {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
  }

  /* Inside-article: ETT sett med side-padding, aldri negative margin */
  body.woocommerce-cart .inside-article,
  body.woocommerce-checkout .inside-article,
  body.woocommerce-account .inside-article {
    width: 100% !important;
    max-width: 100% !important;
    padding: 20px 12px 40px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* Alle kort/steps: 100% bredde minus padding fra wrapperen, aldri bredere */
  body.woocommerce-checkout .wc-block-components-checkout-step,
  body.woocommerce-checkout .wc-block-checkout__contact-fields,
  body.woocommerce-checkout .wc-block-checkout__billing-fields,
  body.woocommerce-checkout .wc-block-checkout__shipping-fields,
  body.woocommerce-checkout .wc-block-checkout__payment-method,
  body.woocommerce-checkout .wc-block-checkout__order-notes,
  body.woocommerce-checkout .wc-block-components-order-summary,
  body.woocommerce-checkout .wc-block-checkout__sidebar,
  body.woocommerce-cart .wc-block-cart__main > *,
  body.woocommerce-cart .wc-block-cart__sidebar {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  /* Grid/flex containers: aldri bredere enn parent */
  body.woocommerce-checkout .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-checkout__main,
  body.woocommerce-checkout .wc-block-checkout,
  body.woocommerce-checkout .wc-block-components-main,
  body.woocommerce-cart .wc-block-components-sidebar-layout,
  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-cart .wc-block-cart__main {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-template-columns: 1fr !important;
  }

  /* Alle * innenfor Woo-sider på mobil: ingen elementer får være bredere enn parent */
  body.woocommerce-cart *,
  body.woocommerce-checkout *,
  body.woocommerce-account *,
  body.single-product *,
  body.tax-product_cat *,
  body.post-type-archive-product * {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Unntak: flytende cart-knapp skal ikke begrenses */
  .isbat-floating-cart,
  .isbat-floating-cart * {
    max-width: none !important;
  }

  /* Tabeller på mobil: la dem scrolle horisontalt innenfor sin egen container
     hvis de trenger det (shop_table). Alternativ til å kutte. */
  body.woocommerce-cart table.shop_table,
  body.woocommerce-checkout table.shop_table,
  body.woocommerce-account table.shop_table {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* Bilder innenfor Woo: aldri bredere enn container */
  body.woocommerce-cart img,
  body.woocommerce-checkout img,
  body.woocommerce-account img,
  body.single-product img,
  body.tax-product_cat img,
  body.post-type-archive-product img {
    max-width: 100% !important;
    height: auto;
  }

  /* Inputs/select/textarea: 100% bredde, aldri overflow */
  body.woocommerce-cart input,
  body.woocommerce-cart select,
  body.woocommerce-cart textarea,
  body.woocommerce-checkout input:not([type=radio]):not([type=checkbox]),
  body.woocommerce-checkout select,
  body.woocommerce-checkout textarea,
  body.woocommerce-account input:not([type=radio]):not([type=checkbox]),
  body.woocommerce-account select,
  body.woocommerce-account textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Fjern negativ margin som kan dytte ting ut av viewport */
  body.woocommerce-cart [style*="margin-left: -"],
  body.woocommerce-checkout [style*="margin-left: -"],
  body.woocommerce-cart [style*="margin-right: -"],
  body.woocommerce-checkout [style*="margin-right: -"] {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Iframes (Stripe mm): full bredde, ingen overflow */
  body.woocommerce-cart iframe,
  body.woocommerce-checkout iframe,
  body.woocommerce-account iframe {
    max-width: 100% !important;
    width: 100% !important;
  }
}

/* Ekstra-smale skjermer (<380px) */
@media (max-width: 380px) {
  body.woocommerce-cart .inside-article,
  body.woocommerce-checkout .inside-article,
  body.woocommerce-account .inside-article {
    padding: 16px 10px 32px !important;
  }
  body.woocommerce-checkout .wc-block-components-checkout-step,
  body.woocommerce-checkout .wc-block-checkout__order-notes,
  body.woocommerce-checkout .wc-block-components-order-summary,
  body.woocommerce-checkout .wc-block-checkout__sidebar {
    padding: 16px 12px !important;
  }
}
