/* ==========================================================================
   BEATSHOUSE — Cart & Checkout v6.0
   Amber design system. Classic WC + WC Blocks. Mobile-first.
   ========================================================================== */

/* ── Nuclear theme bg reset ── */
body.woocommerce-checkout,
body.woocommerce-cart {
  background: #000 !important;
  color: #F2EDE4;
  font-family: 'Manrope', system-ui, -apple-system, sans-serif;
}
body.woocommerce-checkout #main,
body.woocommerce-cart #main,
body.woocommerce-checkout .site-content,
body.woocommerce-cart .site-content,
body.woocommerce-checkout article,
body.woocommerce-cart article,
body.woocommerce-checkout .entry-content,
body.woocommerce-cart .entry-content,
body.woocommerce-checkout .wp-block-post-content,
body.woocommerce-cart .wp-block-post-content {
  background-color: transparent !important;
  background: transparent !important;
}

/* ── Page wrapper ── */
body.woocommerce-cart .entry-content,
body.woocommerce-checkout .entry-content,
body.woocommerce-cart .wp-block-post-content,
body.woocommerce-checkout .wp-block-post-content,
body.woocommerce-cart main,
body.woocommerce-checkout main {
  width: min(1160px, calc(100% - 24px)) !important;
  max-width: 1160px !important;
  margin: 16px auto 80px !important;
  overflow: visible !important;
  padding-bottom: 100px !important;
}

/* Page title */
body.woocommerce-cart .page-title,
body.woocommerce-checkout .page-title,
body.woocommerce-cart h1.entry-title,
body.woocommerce-checkout h1.entry-title {
  font: 700 clamp(22px, 4vw, 36px)/1 'Syne', system-ui, sans-serif !important;
  color: #F2EDE4 !important;
  letter-spacing: .02em !important;
  margin-bottom: 20px !important;
}

/* ==========================================================================
   NOTICES
   ========================================================================== */

body.woocommerce-cart .woocommerce-message,
body.woocommerce-checkout .woocommerce-message {
  background: rgba(74,222,128,.06) !important;
  border: 1px solid rgba(74,222,128,.2) !important;
  color: #4ADE80 !important;
  border-radius: 0 !important;
  padding: 11px 14px !important;
  margin-bottom: 12px !important;
  font-size: 13px !important;
}
/* "View cart" link inside the added-to-cart notice is redundant on the cart page */
body.woocommerce-cart .woocommerce-message a.wc-forward { display: none !important; }
body.woocommerce-cart .woocommerce-error,
body.woocommerce-checkout .woocommerce-error {
  background: rgba(255,82,82,.06) !important;
  border: 1px solid rgba(255,82,82,.2) !important;
  color: #FF5252 !important;
  border-radius: 0 !important;
  padding: 11px 14px !important;
  margin-bottom: 12px !important;
  list-style: none !important;
  font-size: 13px !important;
}
body.woocommerce-cart .woocommerce-info,
body.woocommerce-checkout .woocommerce-info {
  background: rgba(200,255,0,.06) !important;
  border: 1px solid rgba(200,255,0,.15) !important;
  color: #C4B89A !important;
  border-radius: 0 !important;
  padding: 11px 14px !important;
  margin-bottom: 12px !important;
  font-size: 13px !important;
}
/* WC Blocks notice banners (coupon toggle, AJAX notices) — same amber system */
body.woocommerce-cart .wc-block-components-notice-banner,
body.woocommerce-checkout .wc-block-components-notice-banner {
  background: rgba(200,255,0,.06) !important;
  border: 1px solid rgba(200,255,0,.15) !important;
  color: #C4B89A !important;
  border-radius: 0 !important;
  padding: 11px 14px !important;
  margin-bottom: 12px !important;
  font-size: 13px !important;
  box-shadow: none !important;
}
body.woocommerce-cart .wc-block-components-notice-banner svg,
body.woocommerce-checkout .wc-block-components-notice-banner svg {
  fill: #C8FF00 !important;
  background: transparent !important;
}
body.woocommerce-cart .wc-block-components-notice-banner a,
body.woocommerce-checkout .wc-block-components-notice-banner a {
  color: #C8FF00 !important;
  text-decoration: underline !important;
}
body.woocommerce-cart .wc-block-components-notice-banner.is-error,
body.woocommerce-checkout .wc-block-components-notice-banner.is-error {
  background: rgba(255,82,82,.06) !important;
  border-color: rgba(255,82,82,.2) !important;
  color: #FF5252 !important;
}
body.woocommerce-cart .wc-block-components-notice-banner.is-error svg,
body.woocommerce-checkout .wc-block-components-notice-banner.is-error svg { fill: #FF5252 !important; }
body.woocommerce-cart .wc-block-components-notice-banner.is-success,
body.woocommerce-checkout .wc-block-components-notice-banner.is-success {
  background: rgba(74,222,128,.06) !important;
  border-color: rgba(74,222,128,.2) !important;
  color: #4ADE80 !important;
}
body.woocommerce-cart .wc-block-components-notice-banner.is-success svg,
body.woocommerce-checkout .wc-block-components-notice-banner.is-success svg { fill: #4ADE80 !important; }

/* ==========================================================================
   CART — Classic WC
   ========================================================================== */

body.woocommerce-cart .woocommerce {
  background: transparent !important;
  color: #F2EDE4 !important;
  overflow: visible !important;
  display: grid !important;
  grid-template-columns: 1fr 360px !important;
  gap: 24px !important;
  align-items: start !important;
  width: min(1160px, calc(100% - 24px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
body.woocommerce-cart .woocommerce::after,
body.woocommerce-cart .woocommerce::before { display: none !important; }

body.woocommerce-cart form.woocommerce-cart-form {
  grid-column: 1 !important;
  margin: 0 !important;
  float: none !important;
  width: 100% !important;
}
body.woocommerce-cart .cart-collaterals {
  grid-column: 2 !important;
  float: none !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}
body.woocommerce-cart .cross-sells { display: none !important; }

/* Cart table */
body.woocommerce-cart table.shop_table.cart {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}
body.woocommerce-cart table.shop_table.cart thead { display: none !important; }

body.woocommerce-cart table.shop_table.cart tbody tr {
  border-bottom: 1px solid rgba(200,255,0,.05) !important;
  transition: background .18s cubic-bezier(.23,1,.32,1) !important;
}
body.woocommerce-cart table.shop_table.cart tbody tr:last-child { border-bottom: 0 !important; }
body.woocommerce-cart table.shop_table.cart tbody tr:hover { background: rgba(200,255,0,.03) !important; }

body.woocommerce-cart table.shop_table.cart tbody td {
  padding: 14px 16px !important;
  vertical-align: middle !important;
  background: transparent !important;
  border: 0 !important;
  color: #C4B89A !important;
}
body.woocommerce-cart table.shop_table td.product-thumbnail { display: none !important; }

body.woocommerce-cart table.shop_table td.product-name { padding-left: 18px !important; }
body.woocommerce-cart table.shop_table td.product-name a {
  font: 600 14px/1.3 'Manrope', system-ui, sans-serif !important;
  color: #F2EDE4 !important;
  text-decoration: none !important;
  transition: color .18s !important;
}
body.woocommerce-cart table.shop_table td.product-name a:hover { color: #C8FF00 !important; }
body.woocommerce-cart table.shop_table td.product-name dl.variation { margin: 5px 0 0 !important; }
body.woocommerce-cart table.shop_table td.product-name dl.variation dt,
body.woocommerce-cart table.shop_table td.product-name dl.variation dd {
  font: 600 9px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  margin: 0 !important;
  display: inline !important;
}
body.woocommerce-cart table.shop_table td.product-name dl.variation dt::after { content: ': '; }

body.woocommerce-cart table.shop_table .product-price .amount,
body.woocommerce-cart table.shop_table .product-price .woocommerce-Price-amount {
  font: 500 13px/1 'Manrope', sans-serif !important;
  color: #7A6E5E !important;
}
body.woocommerce-cart table.shop_table .product-subtotal .amount,
body.woocommerce-cart table.shop_table .product-subtotal .woocommerce-Price-amount {
  font: 700 15px/1 'Manrope', sans-serif !important;
  color: #C4B89A !important;
}
body.woocommerce-cart table.shop_table td.product-subtotal { text-align: right !important; padding-right: 10px !important; }
body.woocommerce-cart table.shop_table td.product-quantity { display: none !important; }
body.woocommerce-cart .quantity input.qty { display: none !important; }

/* Remove button */
body.woocommerce-cart table.shop_table td.product-remove {
  padding: 14px 12px 14px 6px !important;
  text-align: right !important;
  width: 40px !important;
}
body.woocommerce-cart table.shop_table td.product-remove a.remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(200,255,0,.1) !important;
  background: rgba(200,255,0,.04) !important;
  color: #7A6E5E !important;
  font-size: 16px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: background .18s, border-color .18s, color .18s !important;
}
body.woocommerce-cart table.shop_table td.product-remove a.remove:hover {
  background: rgba(255,82,82,.12) !important;
  border-color: rgba(255,82,82,.3) !important;
  color: #FF5252 !important;
}

/* Actions row */
body.woocommerce-cart .actions {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  padding: 12px 16px !important;
  border-top: 1px solid rgba(200,255,0,.06) !important;
  background: rgba(200,255,0,.02) !important;
  border-radius: 0 !important;
  margin-top: 0 !important;
}
body.woocommerce-cart .actions .coupon {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
body.woocommerce-cart .coupon input#coupon_code {
  background: rgba(16,13,24,.8) !important;
  border: 1px solid rgba(200,255,0,.1) !important;
  color: #F2EDE4 !important;
  border-radius: 0 !important;
  padding: 8px 12px !important;
  font: 500 12px/1 'Manrope', sans-serif !important;
  width: 150px !important;
  min-width: 0 !important;
  transition: border-color .18s, box-shadow .18s !important;
}
body.woocommerce-cart .coupon input#coupon_code:focus {
  outline: none !important;
  border-color: rgba(200,255,0,.4) !important;
  box-shadow: 0 0 0 3px rgba(200,255,0,.08) !important;
}
body.woocommerce-cart .coupon input#coupon_code::placeholder { color: #3A3228 !important; }
body.woocommerce-cart .coupon .button {
  background: rgba(200,255,0,.1) !important;
  border: 1px solid rgba(200,255,0,.22) !important;
  color: #C8FF00 !important;
  border-radius: 0 !important;
  padding: 8px 13px !important;
  font: 600 11px/1 'Manrope', sans-serif !important;
  letter-spacing: .04em !important;
  cursor: pointer !important;
  transition: background .18s, border-color .18s !important;
  white-space: nowrap !important;
}
body.woocommerce-cart .coupon .button:hover {
  background: rgba(200,255,0,.18) !important;
  border-color: rgba(200,255,0,.45) !important;
  color: #E8FF88 !important;
}
body.woocommerce-cart .actions .button[name="update_cart"] {
  background: transparent !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  color: #7A6E5E !important;
  border-radius: 0 !important;
  padding: 8px 13px !important;
  font: 600 11px/1 'Manrope', sans-serif !important;
  letter-spacing: .04em !important;
  cursor: pointer !important;
  transition: border-color .18s, color .18s !important;
  white-space: nowrap !important;
  margin-left: auto !important;
}
body.woocommerce-cart .actions .button[name="update_cart"]:hover {
  border-color: rgba(200,255,0,.22) !important;
  color: #C4B89A !important;
}

/* Cart totals */
body.woocommerce-cart .cart_totals {
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  padding: 20px !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.03), 0 8px 32px rgba(5,3,12,.55) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  position: sticky !important;
  top: 20px !important;
}
body.woocommerce-cart .cart_totals h2 {
  font: 700 10px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  margin: 0 0 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(200,255,0,.07) !important;
}
body.woocommerce-cart .cart_totals table {
  width: 100% !important;
  border-collapse: collapse !important;
}
body.woocommerce-cart .cart_totals table th {
  font: 500 11px/1 'Manrope', sans-serif !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  color: #7A6E5E !important;
  padding: 8px 0 !important;
  border: 0 !important;
  text-align: left !important;
  vertical-align: middle !important;
}
body.woocommerce-cart .cart_totals table td {
  padding: 8px 0 !important;
  border: 0 !important;
  text-align: right !important;
  vertical-align: middle !important;
  color: #C4B89A !important;
}
body.woocommerce-cart .cart_totals .cart-subtotal th,
body.woocommerce-cart .cart_totals .cart-subtotal td {
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(200,255,0,.06) !important;
}
body.woocommerce-cart .cart_totals .order-total th {
  font: 600 11px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  padding-top: 14px !important;
  border: 0 !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
}
body.woocommerce-cart .cart_totals .order-total td {
  padding-top: 14px !important;
  border: 0 !important;
}
body.woocommerce-cart .cart_totals .order-total .amount,
body.woocommerce-cart .cart_totals .order-total .woocommerce-Price-amount {
  font: 800 28px/1 'Syne', system-ui, sans-serif !important;
  color: #F2EDE4 !important;
  letter-spacing: -.02em !important;
}

/* Coupon discount row */
body.woocommerce-cart .cart_totals .cart-discount th,
body.woocommerce-cart .cart_totals .cart-discount td { color: #4ADE80 !important; }
body.woocommerce-cart .cart_totals .cart-discount .woocommerce-Price-amount {
  color: #4ADE80 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
body.woocommerce-cart .cart_totals a.showcoupon {
  color: #7A6E5E !important;
  font-size: 12px !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  transition: color .15s !important;
}
body.woocommerce-cart .cart_totals a.showcoupon:hover { color: #C4B89A !important; }
body.woocommerce-cart .cart_totals .woocommerce-remove-coupon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  height: 16px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  color: #7A6E5E !important;
  font-size: 10px !important;
  text-decoration: none !important;
  transition: background .18s, color .18s !important;
}
body.woocommerce-cart .cart_totals .woocommerce-remove-coupon:hover {
  background: rgba(255,82,82,.12) !important;
  border-color: rgba(255,82,82,.3) !important;
  color: #FF5252 !important;
}

/* Proceed to checkout button */
body.woocommerce-cart .wc-proceed-to-checkout { margin-top: 16px !important; }
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .wc-proceed-to-checkout a,
body.woocommerce-cart .wc-proceed-to-checkout .button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  background: #C8FF00 !important;
  color: #000 !important;
  border: none !important;
  border-radius: 999px !important;
  font: 700 13px/1 'Syne', system-ui, sans-serif !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-shadow: 0 4px 20px rgba(200,255,0,.28) !important;
  transition: box-shadow .18s, transform .15s !important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a:hover {
  box-shadow: 0 4px 28px rgba(200,255,0,.48) !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:active { transform: scale(.97) !important; }
/* Bloque "Empty cart" (.cart-empty/.return-to-shop nativo de WC) eliminado: dead code.
   /cart/ se sirve por bh-full-page.php con body "bh-full-page bh-beats-page" (no woocommerce-cart)
   y el vacío usa el componente propio .bh-empty-cart. */

/* ==========================================================================
   CHECKOUT — Classic WC
   ========================================================================== */

body.woocommerce-checkout .woocommerce {
  background: transparent !important;
  color: #F2EDE4 !important;
  overflow: visible !important;
  width: min(1160px, calc(100% - 24px)) !important;
  max-width: 1160px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.woocommerce-checkout .woocommerce::after { display: none !important; }

/* Coupon / login toggles */
body.woocommerce-checkout .woocommerce-form-login-toggle,
body.woocommerce-checkout .woocommerce-form-coupon-toggle {
  background: rgba(16,13,24,.6) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  padding: 10px 14px !important;
  margin-bottom: 12px !important;
  color: #7A6E5E !important;
  font-size: 12px !important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle a,
body.woocommerce-checkout .woocommerce-form-coupon-toggle a {
  color: #C4B89A !important;
  text-underline-offset: 3px !important;
}

/* Two-column layout */
body.woocommerce-checkout .woocommerce .col2-set {
  display: grid !important;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) !important;
  gap: 20px !important;
  align-items: start !important;
}
body.woocommerce-checkout .woocommerce .col2-set .col-1,
body.woocommerce-checkout .woocommerce .col2-set .col-2 {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}
/* WC's clearfix ::before/::after (display:table) become GRID ITEMS and shove
   .col-1 into the second track — billing form rendered as a narrow card over
   a giant white block. Kill them, and neutralise the theme's float/width/
   background on #customer_details that this grid override didn't reset. */
body.woocommerce-checkout .woocommerce .col2-set::before,
body.woocommerce-checkout .woocommerce .col2-set::after {
  display: none !important;
  content: none !important;
}
body.woocommerce-checkout #customer_details {
  float: none !important;
  width: 100% !important;
  background: transparent !important;
  padding: 0 !important;
}

/* Section headings */
body.woocommerce-checkout h3#ship-to-different-address,
body.woocommerce-checkout h3#order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3 {
  font: 700 10px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  margin: 0 0 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(200,255,0,.07) !important;
}

/* Form cards */
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields {
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  padding: 18px 20px !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.03), 0 8px 32px rgba(5,3,12,.55) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  margin-bottom: 14px !important;
}

/* Dense 2-col billing grid */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout #shipping_country_field {
  grid-column: 1 / -1 !important;
}

body.woocommerce-checkout .form-row { margin-bottom: 0 !important; }

body.woocommerce-checkout .form-row label {
  display: block !important;
  font: 600 10px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  margin-bottom: 5px !important;
}
body.woocommerce-checkout .form-row label .required { color: rgba(200,255,0,.7) !important; }

body.woocommerce-checkout .form-row input,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .form-row textarea {
  width: 100% !important;
  background: rgba(16,13,24,.8) !important;
  border: 1px solid rgba(200,255,0,.10) !important;
  color: #F2EDE4 !important;
  border-radius: 0 !important;
  padding: 9px 12px !important;
  font: 500 13px/1 'Manrope', system-ui, sans-serif !important;
  box-sizing: border-box !important;
  transition: border-color .18s, box-shadow .18s !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
body.woocommerce-checkout .form-row input:focus,
body.woocommerce-checkout .form-row select:focus,
body.woocommerce-checkout .form-row textarea:focus {
  outline: none !important;
  border-color: rgba(200,255,0,.4) !important;
  box-shadow: 0 0 0 3px rgba(200,255,0,.08) !important;
}
body.woocommerce-checkout .form-row input::placeholder,
body.woocommerce-checkout .form-row textarea::placeholder { color: #3A3228 !important; }

/* Order review panel */
body.woocommerce-checkout #order_review {
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  padding: 18px 20px !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.03), 0 8px 32px rgba(5,3,12,.55) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  position: sticky !important;
  top: 20px !important;
}

body.woocommerce-checkout table.shop_table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 14px !important;
}
body.woocommerce-checkout table.shop_table thead th {
  font: 600 9px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  padding: 0 0 10px !important;
  border-bottom: 1px solid rgba(200,255,0,.07) !important;
  text-align: left !important;
}
body.woocommerce-checkout table.shop_table thead th:last-child { text-align: right !important; }
body.woocommerce-checkout table.shop_table tbody td {
  padding: 11px 0 !important;
  border-bottom: 1px solid rgba(200,255,0,.05) !important;
  color: #C4B89A !important;
  font-size: 13px !important;
  vertical-align: middle !important;
}
body.woocommerce-checkout table.shop_table .product-name {
  color: #F2EDE4 !important;
  font-weight: 600 !important;
}
body.woocommerce-checkout table.shop_table .product-total { text-align: right !important; }
body.woocommerce-checkout table.shop_table tfoot th {
  font: 500 11px/1 'Manrope', sans-serif !important;
  color: #7A6E5E !important;
  padding: 8px 0 !important;
  border-bottom: 1px solid rgba(200,255,0,.05) !important;
  text-align: left !important;
}
body.woocommerce-checkout table.shop_table tfoot td {
  padding: 8px 0 !important;
  border-bottom: 1px solid rgba(200,255,0,.05) !important;
  text-align: right !important;
  color: #C4B89A !important;
  font-size: 13px !important;
}
body.woocommerce-checkout table.shop_table tfoot .order-total th,
body.woocommerce-checkout table.shop_table tfoot .order-total td {
  border-bottom: 0 !important;
  padding-top: 14px !important;
}
body.woocommerce-checkout table.shop_table tfoot .order-total th {
  font: 700 10px/1 'DM Mono', monospace !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  color: #7A6E5E !important;
}
body.woocommerce-checkout .woocommerce-Price-amount,
body.woocommerce-checkout table.shop_table tfoot .order-total .amount {
  font: 800 24px/1 'Syne', system-ui, sans-serif !important;
  color: #F2EDE4 !important;
  letter-spacing: -.02em !important;
}

/* Payment section */
body.woocommerce-checkout #payment {
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  padding: 16px 18px !important;
  margin-top: 12px !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.03), 0 8px 32px rgba(5,3,12,.55) !important;
}
body.woocommerce-checkout #payment ul.payment_methods {
  list-style: none !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  display: grid !important;
  gap: 7px !important;
  border: 0 !important;
  background: transparent !important;
}
body.woocommerce-checkout #payment ul.payment_methods li {
  border: 1px solid rgba(200,255,0,.07) !important;
  border-radius: 0 !important;
  padding: 11px 13px !important;
  background: rgba(16,13,24,.5) !important;
  cursor: pointer !important;
  transition: border-color .18s !important;
}
body.woocommerce-checkout #payment ul.payment_methods li:hover {
  border-color: rgba(200,255,0,.18) !important;
}
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label {
  color: #C4B89A !important;
  font: 600 13px/1.3 'Manrope', sans-serif !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"] {
  -webkit-appearance: auto !important;
  appearance: auto !important;
  accent-color: #C8FF00 !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 1 !important;
}
body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input:checked) {
  border-color: rgba(200,255,0,.32) !important;
  background: rgba(200,255,0,.06) !important;
}
body.woocommerce-checkout #payment .payment_box {
  margin-top: 8px !important;
  padding: 9px 12px !important;
  background: rgba(6,5,10,.5) !important;
  border-radius: 0 !important;
  color: #7A6E5E !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}
body.woocommerce-checkout #payment .place-order { margin-top: 0 !important; }

/* Place order button */
body.woocommerce-checkout #place_order {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  background: #C8FF00 !important;
  color: #000 !important;
  border: none !important;
  border-radius: 999px !important;
  font: 700 13px/1 'Syne', system-ui, sans-serif !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: 0 4px 20px rgba(200,255,0,.28) !important;
  transition: box-shadow .18s, transform .15s !important;
  margin-top: 14px !important;
}
body.woocommerce-checkout #place_order:hover {
  box-shadow: 0 4px 28px rgba(200,255,0,.48) !important;
  transform: translateY(-1px) !important;
}
body.woocommerce-checkout #place_order:active { transform: scale(.97) !important; }
body.woocommerce-checkout #place_order:disabled,
body.woocommerce-checkout #place_order.disabled {
  opacity: .4 !important;
  cursor: not-allowed !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Privacy policy */
body.woocommerce-checkout .woocommerce-privacy-policy-text {
  color: #7A6E5E !important;
  font: 400 11px/1.5 'Manrope', sans-serif !important;
  text-align: center !important;
  margin-top: 10px !important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text a { color: #C4B89A !important; }

/* Loading overlay */
body.woocommerce-cart .blockOverlay,
body.woocommerce-checkout .blockOverlay {
  background: rgba(6,5,10,.55) !important;
  border-radius: 0 !important;
  transition: opacity .18s !important;
}

/* ==========================================================================
   WC BLOCKS — Cart Block
   ========================================================================== */

body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wc-block-cart {
  background: transparent !important;
  color: #F2EDE4 !important;
  font-family: 'Manrope', system-ui, sans-serif !important;
}
body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wp-block-woocommerce-cart-items-block,
body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
  background: transparent !important;
}

body.woocommerce-cart table.wc-block-cart-items {
  width: 100% !important;
  border-collapse: collapse !important;
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}
body.woocommerce-cart .wc-block-cart-items thead,
body.woocommerce-cart table.wc-block-cart-items thead,
body.woocommerce-cart .wc-block-cart-items__header { display: none !important; }

body.woocommerce-cart .wc-block-cart-items__row {
  border-bottom: 1px solid rgba(200,255,0,.05) !important;
  transition: background .18s !important;
}
body.woocommerce-cart .wc-block-cart-items__row:last-child { border-bottom: 0 !important; }
body.woocommerce-cart .wc-block-cart-items td,
body.woocommerce-cart .wc-block-cart-item__product,
body.woocommerce-cart .wc-block-cart-item__total {
  background: transparent !important;
  border: 0 !important;
  padding: 14px 16px !important;
  vertical-align: middle !important;
  color: #C4B89A !important;
}
body.woocommerce-cart .wc-block-cart-item__image { display: none !important; }
body.woocommerce-cart .wc-block-cart-item__product-name,
body.woocommerce-cart .wc-block-cart-item__product a {
  font: 600 14px/1.3 'Manrope', system-ui, sans-serif !important;
  color: #F2EDE4 !important;
  text-decoration: none !important;
}
body.woocommerce-cart .wc-block-cart-item__product-metadata {
  font: 600 9px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  margin-top: 5px !important;
}
body.woocommerce-cart .wc-block-cart-item__quantity {
  display: flex !important;
  justify-content: flex-end !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector { display: none !important; }
body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price,
body.woocommerce-cart .wc-block-cart-item__total .woocommerce-Price-amount {
  font: 700 15px/1 'Manrope', sans-serif !important;
  color: #C4B89A !important;
}
body.woocommerce-cart .wc-block-cart-item__remove-link {
  color: #7A6E5E !important;
  font-size: 11px !important;
  text-decoration: none !important;
  border: 1px solid rgba(200,255,0,.1) !important;
  padding: 4px 8px !important;
  border-radius: 0 !important;
  transition: color .16s, border-color .16s !important;
}
body.woocommerce-cart .wc-block-cart-item__remove-link:hover {
  color: #FF5252 !important;
  border-color: rgba(255,82,82,.35) !important;
}

/* Block cart cross-sells — hide */
body.woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block,
body.woocommerce-cart .wc-block-cart__cross-sells,
body.woocommerce-cart .cross-sells,
body.woocommerce-cart .woocommerce-cross-sells { display: none !important; }

/* Block cart totals sidebar */
body.woocommerce-cart .wc-block-cart__payment-button-container,
body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
body.woocommerce-cart .wc-block-components-totals-wrapper {
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  padding: 20px !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.03), 0 8px 32px rgba(5,3,12,.55) !important;
  color: #F2EDE4 !important;
}
body.woocommerce-cart .wc-block-components-totals-wrapper h2,
body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block h2 {
  font: 700 10px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  margin: 0 0 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(200,255,0,.07) !important;
}
body.woocommerce-cart .wc-block-components-totals-item {
  border-bottom: 1px solid rgba(200,255,0,.05) !important;
  padding: 8px 0 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  color: #F2EDE4 !important;
}
body.woocommerce-cart .wc-block-components-totals-item__label {
  font: 500 11px/1 'Manrope', sans-serif !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  color: #7A6E5E !important;
}
body.woocommerce-cart .wc-block-components-totals-item__value,
body.woocommerce-cart .wc-block-components-totals-item .woocommerce-Price-amount {
  font: 700 14px/1 'Manrope', sans-serif !important;
  color: #C4B89A !important;
}
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  font: 700 10px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
}
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-formatted-money-amount,
body.woocommerce-cart .wc-block-components-totals-footer-item .woocommerce-Price-amount {
  font: 800 28px/1 'Syne', system-ui, sans-serif !important;
  color: #F2EDE4 !important;
  letter-spacing: -.02em !important;
}
body.woocommerce-cart .wc-block-components-totals-coupon__link,
body.woocommerce-cart .wc-block-components-panel__button {
  color: #7A6E5E !important;
  font: 600 12px/1 'Manrope', sans-serif !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
body.woocommerce-cart .wc-block-components-totals-coupon__form input {
  background: rgba(16,13,24,.8) !important;
  border: 1px solid rgba(200,255,0,.1) !important;
  color: #F2EDE4 !important;
  border-radius: 0 !important;
  padding: 8px 12px !important;
  font: 500 12px/1 'Manrope', sans-serif !important;
}
body.woocommerce-cart .wc-block-components-totals-coupon__form button {
  background: rgba(200,255,0,.1) !important;
  border: 1px solid rgba(200,255,0,.22) !important;
  color: #C8FF00 !important;
  border-radius: 0 !important;
  padding: 8px 12px !important;
  font: 600 11px/1 'Manrope', sans-serif !important;
}

/* Block cart proceed to checkout */
body.woocommerce-cart .wc-block-cart__submit-container,
body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block { margin-top: 16px !important; }
body.woocommerce-cart .wc-block-cart__submit-container a,
body.woocommerce-cart .wc-block-cart__submit-container .wc-block-components-checkout-place-order-button,
body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a,
body.woocommerce-cart a.wc-block-cart__submit-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  background: #C8FF00 !important;
  color: #000 !important;
  border: none !important;
  border-radius: 999px !important;
  font: 700 13px/1 'Syne', system-ui, sans-serif !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-shadow: 0 4px 20px rgba(200,255,0,.28) !important;
  transition: box-shadow .18s, transform .15s !important;
}
body.woocommerce-cart .wc-block-cart__submit-container a:hover,
body.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a:hover {
  box-shadow: 0 4px 28px rgba(200,255,0,.48) !important;
  transform: translateY(-1px) !important;
}

/* ==========================================================================
   WC BLOCKS — Checkout Block
   ========================================================================== */

body.woocommerce-checkout .wp-block-woocommerce-checkout {
  background: transparent !important;
  color: #F2EDE4 !important;
}
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__add-note,
body.woocommerce-checkout .wc-block-checkout__terms,
body.woocommerce-checkout .wc-block-components-checkout-step {
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  padding: 18px 20px !important;
  margin-bottom: 12px !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.03), 0 8px 32px rgba(5,3,12,.55) !important;
}
body.woocommerce-checkout .wc-block-components-checkout-step__heading,
body.woocommerce-checkout .wc-block-components-checkout-step__heading-content {
  font: 700 10px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
body.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-form .wc-block-components-select label,
body.woocommerce-checkout .wc-block-components-checkout-step__description,
body.woocommerce-checkout .wc-block-components-combobox label {
  font: 600 10px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
body.woocommerce-checkout .wc-block-components-select select,
body.woocommerce-checkout .wc-block-components-country-input input,
body.woocommerce-checkout .wc-block-components-state-input input {
  background: rgba(16,13,24,.8) !important;
  border: 1px solid rgba(200,255,0,.10) !important;
  border-radius: 0 !important;
  color: #F2EDE4 !important;
  font: 500 13px/1 'Manrope', system-ui, sans-serif !important;
  padding: 9px 12px !important;
  box-shadow: none !important;
  transition: border-color .18s, box-shadow .18s !important;
}
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input:focus {
  border-color: rgba(200,255,0,.4) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(200,255,0,.08) !important;
}
body.woocommerce-checkout .wc-block-components-payment-method-label,
body.woocommerce-checkout .wc-block-components-payment-methods__list-item label {
  color: #C4B89A !important;
}
body.woocommerce-checkout .wc-block-components-payment-methods__list-item {
  background: rgba(16,13,24,.5) !important;
  border: 1px solid rgba(200,255,0,.07) !important;
  border-radius: 0 !important;
  margin-bottom: 7px !important;
  padding: 11px 13px !important;
}
body.woocommerce-checkout .wc-block-components-payment-methods__list-item.is-active {
  border-color: rgba(200,255,0,.32) !important;
  background: rgba(200,255,0,.06) !important;
}
body.woocommerce-checkout .wc-block-components-totals-coupon__form input {
  background: rgba(16,13,24,.8) !important;
  border: 1px solid rgba(200,255,0,.1) !important;
  color: #F2EDE4 !important;
  border-radius: 0 !important;
  padding: 8px 12px !important;
  font: 500 12px/1 'Manrope', sans-serif !important;
}
body.woocommerce-checkout .wc-block-components-totals-coupon__form button {
  background: rgba(200,255,0,.1) !important;
  border: 1px solid rgba(200,255,0,.22) !important;
  color: #C8FF00 !important;
  border-radius: 0 !important;
  padding: 8px 12px !important;
  font: 600 11px/1 'Manrope', sans-serif !important;
}
body.woocommerce-checkout .wc-block-components-order-summary,
body.woocommerce-checkout .wc-block-order-summary,
body.woocommerce-checkout .wc-block-checkout__order-summary {
  background: rgba(16,13,24,.94) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  padding: 18px 20px !important;
}
body.woocommerce-checkout .wc-block-components-order-summary__button-text,
body.woocommerce-checkout .wc-block-order-summary__title {
  font: 700 10px/1 'DM Mono', monospace !important;
  color: #7A6E5E !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
body.woocommerce-checkout .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-item__value {
  color: #C4B89A !important;
  font-size: 13px !important;
}
body.woocommerce-checkout .wc-block-components-totals-item--total .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-item--total .wc-block-components-totals-item__value {
  color: #F2EDE4 !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}
body.woocommerce-checkout .wc-block-components-totals-discount__coupon-list-item { color: #4ADE80 !important; }
body.woocommerce-checkout .wc-block-components-order-summary-item__image img { border-radius: 0 !important; }
body.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
  background: rgba(200,255,0,.18) !important;
  color: #C8FF00 !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
}
body.woocommerce-checkout .wc-block-checkout__terms p,
body.woocommerce-checkout .wc-block-components-checkbox__label {
  color: #7A6E5E !important;
  font-size: 12px !important;
}
body.woocommerce-checkout .wc-block-components-checkbox__label a {
  color: #C4B89A !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  background: #C8FF00 !important;
  color: #000 !important;
  border: none !important;
  border-radius: 999px !important;
  font: 700 13px/1 'Syne', system-ui, sans-serif !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: 0 4px 20px rgba(200,255,0,.28) !important;
  transition: box-shadow .18s, transform .15s !important;
  margin-top: 14px !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
  box-shadow: 0 4px 28px rgba(200,255,0,.48) !important;
  transform: translateY(-1px) !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:active { transform: scale(.97) !important; }
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:disabled,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button[disabled] {
  opacity: .4 !important;
  cursor: not-allowed !important;
  transform: none !important;
  box-shadow: none !important;
}
body.woocommerce-checkout .wc-block-components-spinner {
  border-color: rgba(200,255,0,.3) !important;
  border-top-color: #C8FF00 !important;
}

/* WC product cards (empty cart state) */
body.woocommerce-cart .products li.product,
body.woocommerce-cart .wc-block-grid__product {
  background: rgba(16,13,24,.8) !important;
  border: 1px solid rgba(200,255,0,.08) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  color: #C4B89A !important;
}
body.woocommerce-cart .products li.product .woocommerce-loop-product__title,
body.woocommerce-cart .wc-block-grid__product-title { color: #F2EDE4 !important; }
body.woocommerce-cart .products li.product .price,
body.woocommerce-cart .wc-block-grid__product-price { color: #C8FF00 !important; }
body.woocommerce-cart .wc-block-grid__product-image img[src*="woocommerce-placeholder"],
body.woocommerce-cart .products li.product img[src*="woocommerce-placeholder"] {
  filter: invert(1) brightness(.08) !important;
  background: rgba(200,255,0,.06) !important;
  border-radius: 0 !important;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

/* Tablet */
@media (max-width: 960px) {
  body.woocommerce-checkout .woocommerce .col2-set {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-checkout #order_review {
    position: static !important;
    top: auto !important;
  }
  body.woocommerce-cart .woocommerce {
    grid-template-columns: 1fr 320px !important;
  }
}

/* Mobile */
@media (max-width: 760px) {
  body.woocommerce-cart .woocommerce {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-cart form.woocommerce-cart-form,
  body.woocommerce-cart .cart-collaterals {
    grid-column: 1 !important;
  }
  body.woocommerce-cart .cart_totals {
    position: static !important;
    top: auto !important;
  }
}

@media (max-width: 640px) {
  body.woocommerce-cart .entry-content,
  body.woocommerce-checkout .entry-content,
  body.woocommerce-cart .wp-block-post-content,
  body.woocommerce-checkout .wp-block-post-content {
    width: calc(100% - 14px) !important;
    margin-top: 10px !important;
  }

  /* Billing grid: single column on mobile */
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-checkout #billing_address_1_field,
  body.woocommerce-checkout #billing_address_2_field,
  body.woocommerce-checkout #billing_country_field,
  body.woocommerce-checkout #billing_email_field {
    grid-column: 1 !important;
  }

  /* Prevent iOS zoom on input focus */
  body.woocommerce-checkout .form-row input,
  body.woocommerce-checkout .form-row select,
  body.woocommerce-checkout .form-row textarea,
  body.woocommerce-checkout .wc-block-components-text-input input,
  body.woocommerce-checkout .wc-block-components-select select,
  body.woocommerce-cart .coupon input#coupon_code {
    font-size: 16px !important;
  }

  /* Cart table → card layout */
  body.woocommerce-cart table.shop_table.cart tbody tr {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    grid-template-areas: "name remove" "meta meta" "price price" !important;
    gap: 6px !important;
    padding: 12px 14px !important;
    border-bottom: 1px solid rgba(200,255,0,.06) !important;
  }
  body.woocommerce-cart table.shop_table.cart tbody td {
    padding: 0 !important;
    display: block !important;
  }
  body.woocommerce-cart table.shop_table.cart td.product-thumbnail { display: none !important; }
  body.woocommerce-cart table.shop_table.cart td.product-price     { display: none !important; }
  body.woocommerce-cart table.shop_table.cart td.product-name      { grid-area: name; }
  body.woocommerce-cart table.shop_table.cart td.product-remove    { grid-area: remove; justify-self: end; }
  /* Virtual products have no qty input — the cell only renders an empty
     "Quantity:" label on mobile, so drop it from the card entirely */
  body.woocommerce-cart table.shop_table.cart td.product-quantity  { display: none !important; }
  body.woocommerce-cart table.shop_table.cart td.product-subtotal  { grid-area: price; text-align: right; }
  /* WC responsive tables prefix each cell with a data-title label
     ("Product:", "Subtotal:") — redundant in the card layout */
  body.woocommerce-cart table.shop_table.cart tbody td::before { display: none !important; content: none !important; }

  /* Actions row: coupon stacked */
  body.woocommerce-cart .actions { flex-wrap: wrap !important; gap: 8px !important; }
  body.woocommerce-cart .actions .coupon {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 8px !important;
    width: 100% !important;
  }
  body.woocommerce-cart .coupon input#coupon_code { width: 100% !important; }
  body.woocommerce-cart .coupon .button {
    min-height: 46px !important;
    padding: 0 18px !important;
    white-space: nowrap !important;
  }
  body.woocommerce-cart .actions .button[name="update_cart"] { width: 100% !important; margin-left: 0 !important; }

  body.woocommerce-cart .cart_totals { border-radius: 0 !important; padding: 14px !important; }
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout .woocommerce-additional-fields,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #payment {
    border-radius: 0 !important;
    padding: 14px !important;
  }
  body.woocommerce-checkout #place_order,
  body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
  body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
    min-height: 52px !important;
    font-size: 13px !important;
  }
}

@media (max-width: 400px) {
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #payment,
  body.woocommerce-cart .cart_totals { padding: 12px !important; }
}

/* Virtual-only carts (beats): WC prints an empty shipping-fields card — hide it */
body.woocommerce-checkout .woocommerce-shipping-fields:not(:has(h3)):not(:has(input)) {
  display: none !important;
  padding: 0 !important;
  border: 0 !important;
  margin: 0 !important;
}
