/* Foxco Cart & Checkout — Linen Style v1.0.0 */

:root{--fcc-accent:#df6737;--fcc-accent-dark:#c4572a;--fcc-accent-rgb:223,103,55;--fcc-bg:#faf9f7;--fcc-surface:#ffffff;--fcc-border:#e5e0d8;--fcc-muted:#8a857e;--fcc-navy:#1a1a2e;--fcc-navy-dark:#0d0d1a;--fcc-text:#1a1a2e}

/* Font overrides */
body.fcc-font-inter     .woocommerce-checkout,body.fcc-font-inter     .woocommerce-cart{font-family:'Inter',sans-serif}
body.fcc-font-dm-sans   .woocommerce-checkout,body.fcc-font-dm-sans   .woocommerce-cart{font-family:'DM Sans',sans-serif}
body.fcc-font-nunito    .woocommerce-checkout,body.fcc-font-nunito    .woocommerce-cart{font-family:'Nunito',sans-serif}
body.fcc-font-lato      .woocommerce-checkout,body.fcc-font-lato      .woocommerce-cart{font-family:'Lato',sans-serif}
body.fcc-font-poppins   .woocommerce-checkout,body.fcc-font-poppins   .woocommerce-cart{font-family:'Poppins',sans-serif}

/* Page backgrounds */
body.fcc-active.woocommerce-cart,body.fcc-active.woocommerce-checkout,body.fcc-active.woocommerce-order-received{background-color:var(--fcc-bg)}

/* WooPay hidden — not used */
.woopay-save-new-user-container,.wc-block-checkout__woopay-save-info,[class*="woopay-save"]{display:none !important}

/* ── Checkout header ── */
.fcc-checkout-header{margin-bottom:24px}
.fcc-ch-title{font-size:clamp(22px,3vw,34px);font-weight:600;color:var(--fcc-text);margin:0 0 6px;line-height:1.15}
.fcc-ch-intro{font-size:15px;color:var(--fcc-muted);margin:0 0 12px}
.fcc-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.fcc-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--fcc-border);border-radius:999px;font-size:12px;font-weight:500;color:var(--fcc-muted);background:var(--fcc-surface)}
.fcc-badge svg{opacity:.6;flex-shrink:0}

/* ── Shared card ── */
body.fcc-active .woocommerce-billing-fields,
body.fcc-active .woocommerce-shipping-fields,
body.fcc-active .woocommerce-additional-fields,
body.fcc-active .cart_totals,
body.fcc-active .woocommerce-order-received .woocommerce-order-details,
body.fcc-active .woocommerce-order-received .woocommerce-customer-details{
  background:var(--fcc-surface);border:1px solid var(--fcc-border);border-radius:14px;
  box-shadow:0 1px 3px rgba(26,26,46,.04),0 4px 16px rgba(26,26,46,.04);
  overflow:visible;margin-bottom:20px;position:relative
}

/* ── Heading base ── */
body.fcc-active .woocommerce-billing-fields h3,
body.fcc-active .woocommerce-shipping-fields h3,
body.fcc-active .woocommerce-additional-fields h3,
body.fcc-active .cart_totals>h2,
body.fcc-active #order_review_heading,
body.fcc-active h3.fcc-step-heading,
body.fcc-active .woocommerce-order-received .woocommerce-order-details__title,
body.fcc-active .woocommerce-order-received .woocommerce-column__title{
  margin:0;padding:13px 18px;font-size:11px;font-weight:600;text-transform:uppercase;
  letter-spacing:.65px;color:var(--fcc-text);display:flex;align-items:center;gap:10px;
  border-radius:13px 13px 0 0
}

/* Heading: Linen */
body.fcc-head-linen .woocommerce-billing-fields h3,
body.fcc-head-linen .woocommerce-shipping-fields h3,
body.fcc-head-linen .woocommerce-additional-fields h3,
body.fcc-head-linen .cart_totals>h2,
body.fcc-head-linen #order_review_heading,
body.fcc-head-linen h3.fcc-step-heading,
body.fcc-head-linen .woocommerce-order-received .woocommerce-order-details__title,
body.fcc-head-linen .woocommerce-order-received .woocommerce-column__title{
  background:var(--fcc-bg);border-bottom:1px solid var(--fcc-border)
}

/* Heading: Line */
body.fcc-head-line .woocommerce-billing-fields h3,
body.fcc-head-line .woocommerce-shipping-fields h3,
body.fcc-head-line .woocommerce-additional-fields h3,
body.fcc-head-line .cart_totals>h2,
body.fcc-head-line #order_review_heading,
body.fcc-head-line h3.fcc-step-heading,
body.fcc-head-line .woocommerce-order-received .woocommerce-order-details__title,
body.fcc-head-line .woocommerce-order-received .woocommerce-column__title{
  background:transparent;border-bottom:2px solid var(--fcc-accent);padding-bottom:12px
}

/* Heading: Clean */
body.fcc-head-clean .woocommerce-billing-fields h3,
body.fcc-head-clean .woocommerce-shipping-fields h3,
body.fcc-head-clean .woocommerce-additional-fields h3,
body.fcc-head-clean .cart_totals>h2,
body.fcc-head-clean #order_review_heading,
body.fcc-head-clean h3.fcc-step-heading,
body.fcc-head-clean .woocommerce-order-received .woocommerce-order-details__title,
body.fcc-head-clean .woocommerce-order-received .woocommerce-column__title{
  background:transparent;border-bottom:none;padding-top:16px
}

/* Step counter */
body.fcc-active .woocommerce-checkout{counter-reset:fcc-step}
body.fcc-active .woocommerce-billing-fields h3,
body.fcc-active .woocommerce-shipping-fields h3:not(#ship-to-different-address),
body.fcc-active .woocommerce-additional-fields h3,
body.fcc-active #order_review_heading,
body.fcc-active h3.fcc-step-heading{counter-increment:fcc-step}
body.fcc-active .woocommerce-billing-fields h3::before,
body.fcc-active .woocommerce-shipping-fields h3:not(#ship-to-different-address)::before,
body.fcc-active .woocommerce-additional-fields h3::before,
body.fcc-active #order_review_heading::before,
body.fcc-active h3.fcc-step-heading::before{
  content:counter(fcc-step);display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;min-width:22px;border-radius:50%;background:var(--fcc-accent);
  color:#fff;font-size:11px;font-weight:700;letter-spacing:0;flex-shrink:0
}

/* Payment heading (PHP-injected) */
body.fcc-active h3.fcc-payment-heading{margin:20px 0 0;border:1px solid var(--fcc-border);border-bottom:none;border-radius:13px 13px 0 0}
body.fcc-head-line h3.fcc-payment-heading{border:none;border-bottom:2px solid var(--fcc-accent);border-radius:0;margin-top:24px}

/* Ship to different address */
body.fcc-active .woocommerce-shipping-fields h3#ship-to-different-address{counter-increment:none;cursor:pointer}
body.fcc-active .woocommerce-shipping-fields h3#ship-to-different-address::before{display:none}
body.fcc-active .woocommerce-shipping-fields h3#ship-to-different-address label{
  display:flex !important;align-items:center;gap:10px;cursor:pointer;margin:0;
  font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.65px;color:var(--fcc-text)
}
body.fcc-active .woocommerce-shipping-fields h3#ship-to-different-address input[type="checkbox"]{
  -webkit-appearance:checkbox;appearance:checkbox;width:16px;height:16px;min-width:16px;
  accent-color:var(--fcc-accent);filter:brightness(1.1);margin:0;padding:0;box-shadow:none;flex-shrink:0
}

/* Field wrappers */
body.fcc-active .woocommerce-billing-fields__field-wrapper,
body.fcc-active .woocommerce-shipping-fields__field-wrapper,
body.fcc-active .woocommerce-additional-fields__field-wrapper{padding:20px}

/* col2-set */
body.fcc-active .woocommerce-checkout .col2-set{float:none;width:100%;display:flex;flex-direction:column;gap:20px}
body.fcc-active .woocommerce-checkout .col2-set .col-1,
body.fcc-active .woocommerce-checkout .col2-set .col-2{float:none !important;width:100% !important}

/* ── Form fields ── */
body.fcc-active .woocommerce form .form-row{margin-bottom:14px}
body.fcc-active .woocommerce form .form-row label{font-size:12px;font-weight:600;color:var(--fcc-text);margin-bottom:5px;display:block}
body.fcc-active .woocommerce form .form-row .required{color:var(--fcc-accent)}
body.fcc-active .woocommerce form .form-row input.input-text,
body.fcc-active .woocommerce form .form-row textarea{
  border:1px solid var(--fcc-border);border-radius:8px;padding:10px 13px;font-size:14px;
  color:var(--fcc-text);background:var(--fcc-surface);width:100%;box-sizing:border-box;
  transition:border-color .18s,box-shadow .18s;-webkit-appearance:none;appearance:none
}
body.fcc-active .woocommerce form .form-row input.input-text:focus,
body.fcc-active .woocommerce form .form-row textarea:focus{
  border-color:var(--fcc-accent);box-shadow:0 0 0 3px rgba(var(--fcc-accent-rgb),.13);outline:none
}
body.fcc-active .woocommerce form .form-row input.input-text::placeholder,
body.fcc-active .woocommerce form .form-row textarea::placeholder{color:var(--fcc-muted);opacity:1}

/* Select2 */
body.fcc-active .select2-container--default .select2-selection--single{
  border:1px solid var(--fcc-border);border-radius:8px;height:42px;display:flex;
  align-items:center;background:var(--fcc-surface);padding:0 13px;transition:border-color .18s,box-shadow .18s
}
body.fcc-active .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--fcc-text);padding:0;line-height:1}
body.fcc-active .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;transform:translateY(-50%);right:10px}
body.fcc-active .select2-container--default.select2-container--open .select2-selection--single,
body.fcc-active .select2-container--default.select2-container--focus .select2-selection--single{border-color:var(--fcc-accent);box-shadow:0 0 0 3px rgba(var(--fcc-accent-rgb),.13)}
.select2-dropdown{border:1px solid var(--fcc-border) !important;border-radius:10px !important;box-shadow:0 8px 30px rgba(26,26,46,.12) !important;z-index:999999 !important}
.select2-results__option{font-size:14px;color:var(--fcc-text);padding:8px 13px}
.select2-results__option--highlighted,.select2-results__option[aria-selected="true"]{background:var(--fcc-accent) !important;color:#fff !important}
.select2-search--dropdown .select2-search__field{border:1px solid var(--fcc-border) !important;border-radius:6px !important;padding:7px 10px !important;font-size:14px !important}
.select2-search--dropdown .select2-search__field:focus{outline:none !important;border-color:var(--fcc-accent) !important}

/* ── Buttons ── */
body.fcc-active .woocommerce a.button,
body.fcc-active .woocommerce button.button,
body.fcc-active .woocommerce input[type="submit"]{
  background:var(--fcc-navy) !important;color:#fff !important;border:none !important;
  padding:10px 20px !important;font-size:14px !important;font-weight:600 !important;cursor:pointer;
  transition:background .18s,box-shadow .18s,transform .12s !important;text-decoration:none !important;display:inline-block
}
body.fcc-active .woocommerce a.button:hover,
body.fcc-active .woocommerce button.button:hover,
body.fcc-active .woocommerce input[type="submit"]:hover{
  background:var(--fcc-navy-dark) !important;color:#fff !important;
  box-shadow:0 4px 14px rgba(26,26,46,.18) !important;transform:translateY(-1px)
}
body.fcc-active .woocommerce a.button.alt,
body.fcc-active .woocommerce button.button.alt,
body.fcc-active .woocommerce #place_order,
body.fcc-active .woocommerce .checkout-button,
body.fcc-active .woocommerce-cart a.checkout-button{
  background:var(--fcc-accent) !important;color:#fff !important;border:none !important;
  padding:15px 28px !important;font-size:15px !important;font-weight:700 !important;
  width:100%;display:block;text-align:center;
  box-shadow:0 2px 12px rgba(var(--fcc-accent-rgb),.28) !important;letter-spacing:.02em
}
body.fcc-active .woocommerce a.button.alt:hover,
body.fcc-active .woocommerce button.button.alt:hover,
body.fcc-active .woocommerce #place_order:hover,
body.fcc-active .woocommerce .checkout-button:hover{
  background:var(--fcc-accent-dark) !important;
  box-shadow:0 6px 22px rgba(var(--fcc-accent-rgb),.38) !important;transform:translateY(-1px)
}
body.fcc-btn-rounded .woocommerce a.button,body.fcc-btn-rounded .woocommerce button.button,body.fcc-btn-rounded .woocommerce input[type="submit"],body.fcc-btn-rounded .woocommerce #place_order,body.fcc-btn-rounded .woocommerce .checkout-button{border-radius:10px !important}
body.fcc-btn-pill    .woocommerce a.button,body.fcc-btn-pill    .woocommerce button.button,body.fcc-btn-pill    .woocommerce input[type="submit"],body.fcc-btn-pill    .woocommerce #place_order,body.fcc-btn-pill    .woocommerce .checkout-button{border-radius:999px !important}
body.fcc-btn-square  .woocommerce a.button,body.fcc-btn-square  .woocommerce button.button,body.fcc-btn-square  .woocommerce input[type="submit"],body.fcc-btn-square  .woocommerce #place_order,body.fcc-btn-square  .woocommerce .checkout-button{border-radius:4px !important}

/* ── Cart table ── */
body.fcc-active .woocommerce table.shop_table{
  border:1px solid var(--fcc-border) !important;border-radius:14px !important;overflow:hidden;
  box-shadow:0 1px 3px rgba(26,26,46,.04),0 4px 16px rgba(26,26,46,.04) !important;
  background:var(--fcc-surface) !important;border-collapse:separate !important;border-spacing:0 !important;width:100% !important
}
body.fcc-active .woocommerce table.shop_table thead th{
  background:var(--fcc-bg) !important;color:var(--fcc-text) !important;font-size:11px !important;
  font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.7px !important;
  padding:13px 18px !important;border-bottom:1px solid var(--fcc-border) !important
}
body.fcc-active .woocommerce table.shop_table tbody td{
  border-color:var(--fcc-border) !important;border-style:solid;border-width:0 0 1px 0;
  padding:15px 18px !important;vertical-align:middle !important;color:var(--fcc-text) !important;background:var(--fcc-surface) !important
}
body.fcc-active .woocommerce table.shop_table tbody tr:last-child td{border-bottom:none !important}
body.fcc-active .woocommerce table.shop_table tbody tr:hover td{background:var(--fcc-bg) !important}
body.fcc-active .woocommerce table.shop_table tfoot td,
body.fcc-active .woocommerce table.shop_table tfoot th{
  padding:11px 18px !important;border-top:1px solid var(--fcc-border) !important;
  color:var(--fcc-text) !important;font-size:14px !important;background:var(--fcc-surface) !important
}
body.fcc-active .woocommerce table.shop_table tfoot .order-total td,
body.fcc-active .woocommerce table.shop_table tfoot .order-total th{
  background:var(--fcc-navy) !important;color:#fff !important;font-size:16px !important;
  font-weight:700 !important;border:none !important;padding:15px 18px !important
}
body.fcc-active .woocommerce table.shop_table .product-remove{width:36px !important;padding:15px 8px 15px 14px !important}
body.fcc-active .woocommerce table.shop_table .product-thumbnail{width:80px !important;padding:12px !important}
body.fcc-active .woocommerce table.shop_table .product-price{width:100px !important;white-space:nowrap}
body.fcc-active .woocommerce table.shop_table .product-quantity{width:100px !important}
body.fcc-active .woocommerce table.shop_table .product-subtotal{width:110px !important;white-space:nowrap;text-align:right !important}
body.fcc-active .woocommerce-cart-form__cart-item .product-thumbnail img{
  border-radius:8px !important;width:62px !important;height:62px !important;
  object-fit:cover !important;display:block;border:1px solid var(--fcc-border)
}
body.fcc-active .woocommerce-cart-form__cart-item .product-remove a.remove{
  display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;
  border-radius:50%;background:transparent !important;border:1.5px solid var(--fcc-border) !important;
  color:var(--fcc-muted) !important;font-size:14px !important;line-height:1;text-decoration:none !important;transition:all .15s
}
body.fcc-active .woocommerce-cart-form__cart-item .product-remove a.remove:hover{background:#fef2f2 !important;border-color:#ef4444 !important;color:#ef4444 !important}
body.fcc-active .woocommerce table.shop_table td a{color:var(--fcc-text) !important;text-decoration:none !important;font-weight:600;font-size:14px}
body.fcc-active .woocommerce table.shop_table td a:hover{color:var(--fcc-accent) !important}
body.fcc-active .woocommerce .quantity input.qty{
  border:1px solid var(--fcc-border) !important;border-radius:8px !important;padding:8px 10px !important;
  text-align:center !important;color:var(--fcc-text) !important;font-weight:600 !important;
  background:var(--fcc-surface) !important;width:62px !important;transition:border-color .18s,box-shadow .18s
}
body.fcc-active .woocommerce .quantity input.qty:focus{border-color:var(--fcc-accent) !important;box-shadow:0 0 0 3px rgba(var(--fcc-accent-rgb),.13) !important;outline:none !important}

/* Coupon */
body.fcc-active .woocommerce-cart-form .coupon{display:flex !important;align-items:center !important;gap:10px !important;flex-wrap:wrap}
body.fcc-active .woocommerce-cart-form .coupon input#coupon_code{
  border:1px solid var(--fcc-border) !important;border-radius:8px !important;padding:10px 13px !important;
  font-size:14px !important;color:var(--fcc-text) !important;background:var(--fcc-surface) !important;flex:1;min-width:150px
}
body.fcc-active .woocommerce-cart-form .coupon input#coupon_code:focus{border-color:var(--fcc-accent) !important;box-shadow:0 0 0 3px rgba(var(--fcc-accent-rgb),.13) !important;outline:none !important}
body.fcc-active .woocommerce-cart-form .actions{
  background:var(--fcc-bg) !important;border-top:1px solid var(--fcc-border) !important;
  padding:14px 18px !important;display:flex !important;justify-content:space-between !important;
  align-items:center !important;flex-wrap:wrap;gap:10px
}

/* Cart totals */
body.fcc-active .cart-collaterals{margin-top:26px}
body.fcc-active .cart_totals .shop_table{box-shadow:none !important;border:none !important;border-radius:0 !important;margin:0 !important}
body.fcc-active .cart_totals .order-total td{font-size:20px !important;font-weight:700 !important;color:#fff !important;background:var(--fcc-navy) !important}
body.fcc-active .cart_totals .order-total th{font-weight:700 !important;background:var(--fcc-navy) !important;color:#fff !important}
body.fcc-active .wc-proceed-to-checkout{padding:16px 20px !important}
body.fcc-active .woocommerce a.shipping-calculator-button{
  background:var(--fcc-accent) !important;color:#fff !important;border:none !important;
  border-radius:999px !important;padding:7px 16px !important;font-size:12px !important;
  font-weight:600 !important;display:inline-block !important;text-decoration:none !important
}
body.fcc-active .woocommerce a.shipping-calculator-button:hover{background:var(--fcc-accent-dark) !important;color:#fff !important}
body.fcc-active .woocommerce-shipping-destination{font-size:13px;color:var(--fcc-muted);margin-bottom:10px}

/* Notices */
body.fcc-active .woocommerce-message,body.fcc-active .woocommerce-error,body.fcc-active .woocommerce-info{
  border-radius:10px;margin-bottom:20px;font-size:14px;display:flex;align-items:center;gap:10px;padding:13px 18px
}
body.fcc-active .woocommerce-message::before,body.fcc-active .woocommerce-error::before,body.fcc-active .woocommerce-info::before{
  position:static !important;transform:none !important;float:none !important;flex-shrink:0;font-size:16px;line-height:1;margin:0 !important
}
body.fcc-active .woocommerce-info,body.fcc-active .woocommerce-message{background:var(--fcc-bg);border-top:3px solid var(--fcc-accent);color:var(--fcc-text)}
body.fcc-active .woocommerce-info::before,body.fcc-active .woocommerce-message::before{color:var(--fcc-accent)}
body.fcc-active .woocommerce-info a,body.fcc-active .woocommerce-info a.showcoupon{color:var(--fcc-accent) !important;font-weight:600 !important;text-decoration:underline !important}
body.fcc-active .woocommerce-error{background:#fef2f2;border-top:3px solid #ef4444;color:#991b1b}
body.fcc-active .woocommerce-error::before{color:#ef4444}

/* Order review card */
body.fcc-active #order_review_heading{
  background:var(--fcc-bg);border:1px solid var(--fcc-border);border-radius:13px 13px 0 0;margin:0
}
body.fcc-active #order_review{
  background:var(--fcc-surface);border:1px solid var(--fcc-border);border-top:none;
  border-radius:0 0 14px 14px;overflow:visible;
  box-shadow:0 1px 3px rgba(26,26,46,.04),0 4px 16px rgba(26,26,46,.04)
}
body.fcc-active .woocommerce-checkout-review-order-table{border-collapse:separate !important;border-spacing:0 !important;width:100% !important}
body.fcc-active .woocommerce-checkout-review-order-table thead th{
  background:var(--fcc-bg) !important;color:var(--fcc-text) !important;font-size:11px !important;
  font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.7px !important;
  padding:12px 18px !important;border-bottom:1px solid var(--fcc-border) !important
}
body.fcc-active .woocommerce-checkout-review-order-table tbody td{
  padding:13px 18px !important;border-bottom:1px solid var(--fcc-border) !important;
  color:var(--fcc-text) !important;vertical-align:middle !important;background:var(--fcc-surface) !important;font-size:14px !important
}
body.fcc-active .woocommerce-checkout-review-order-table tbody tr:last-child td{border-bottom:none !important}
body.fcc-active .woocommerce-checkout-review-order-table .product-name{font-weight:600 !important}
body.fcc-active .woocommerce-checkout-review-order-table .product-total{text-align:right !important;font-weight:600 !important}
body.fcc-active .woocommerce-checkout-review-order-table tfoot td,
body.fcc-active .woocommerce-checkout-review-order-table tfoot th{
  padding:11px 18px !important;border-top:1px solid var(--fcc-border) !important;
  color:var(--fcc-text) !important;font-size:14px !important;background:var(--fcc-surface) !important
}
body.fcc-active .woocommerce-checkout-review-order-table tfoot th{font-weight:600 !important}
body.fcc-active .woocommerce-checkout-review-order-table tfoot td{text-align:right !important}
body.fcc-active .woocommerce-checkout-review-order-table tfoot .order-total td,
body.fcc-active .woocommerce-checkout-review-order-table tfoot .order-total th{
  background:var(--fcc-navy) !important;color:#fff !important;font-size:16px !important;
  font-weight:700 !important;border-top:none !important;padding:15px 18px !important
}
body.fcc-active .woocommerce-checkout-review-order-table tfoot .order-total td{text-align:right !important}
body.fcc-active .woocommerce-checkout-review-order-table tfoot .order-total th{text-align:left !important}

/* Shipping pills */
body.fcc-active .woocommerce-checkout-review-order-table .woocommerce-shipping-totals td{padding:13px 18px !important}
body.fcc-active #shipping_method{list-style:none !important;margin:0 !important;padding:0 !important;display:flex !important;flex-direction:column !important;gap:6px !important}
body.fcc-active #shipping_method li{
  display:flex !important;align-items:center !important;gap:8px !important;padding:9px 12px !important;
  border:1.5px solid var(--fcc-border) !important;border-radius:8px !important;background:var(--fcc-surface) !important;
  cursor:pointer;transition:border-color .15s,background .15s !important;font-size:13px !important;color:var(--fcc-text) !important
}
body.fcc-active #shipping_method li:has(input:checked){border-color:var(--fcc-accent) !important;background:color-mix(in srgb,var(--fcc-accent) 6%,transparent) !important}
body.fcc-active #shipping_method li label{cursor:pointer !important;font-size:13px !important;margin:0 !important;color:var(--fcc-text) !important;font-weight:500 !important}
body.fcc-active #shipping_method input[type="radio"]{accent-color:var(--fcc-accent) !important;width:15px !important;height:15px !important;flex-shrink:0;margin:0 !important}

/* Thumbnails in order review */
body.fcc-active .fcc-ri{display:flex;align-items:center;gap:12px}
body.fcc-active .fcc-rt{width:52px;height:52px;object-fit:cover;border-radius:8px;border:1px solid var(--fcc-border);flex-shrink:0;display:block}
body.fcc-active .fcc-rn{font-weight:600;color:var(--fcc-text);line-height:1.35}

/* Payment */
body.fcc-active #payment{background:transparent !important;border:none !important;padding:0 !important}
body.fcc-active #payment ul.payment_methods{list-style:none !important;margin:0 !important;padding:14px 16px !important;display:flex;flex-direction:column;gap:8px}
body.fcc-active #payment ul.payment_methods li{border:1.5px solid var(--fcc-border);border-radius:10px;padding:12px 16px;background:var(--fcc-surface);transition:border-color .15s}
body.fcc-active #payment ul.payment_methods li:has(input:checked){border-color:var(--fcc-accent)}
body.fcc-active #payment ul.payment_methods label{font-weight:600 !important;font-size:14px !important;display:flex !important;align-items:center !important;gap:8px;cursor:pointer}
body.fcc-active #payment div.payment_box{background:var(--fcc-bg) !important;border-radius:8px !important;padding:12px 14px !important;margin-top:10px !important;font-size:13px !important;color:var(--fcc-muted) !important}
body.fcc-active .place-order{padding:16px !important}
body.fcc-active #payment input[type="radio"]{accent-color:var(--fcc-accent) !important}

/* Express pay divider */
body.fcc-active .cart_totals [class*="ppcp"]:first-of-type::before,
body.fcc-active .cart_totals [class*="paypal-button-container"]:first-of-type::before{
  content:'or pay with';display:block;text-align:center;font-size:11px;font-weight:600;
  text-transform:uppercase;letter-spacing:.7px;color:var(--fcc-muted);padding:12px 0 8px;
  border-top:1px solid var(--fcc-border);margin-top:4px
}

/* Empty cart */
body.fcc-active .woocommerce-cart-is-empty{text-align:center;padding:60px 20px !important;background:var(--fcc-surface) !important;border-radius:14px !important;border:1px solid var(--fcc-border) !important}
body.fcc-active .woocommerce-cart-is-empty .cart-empty{font-size:18px !important;color:var(--fcc-muted) !important;font-weight:600}

/* ── Order received ── */
body.fcc-active.woocommerce-order-received .woocommerce-order{max-width:800px;margin:0 auto}
body.fcc-active .woocommerce-order-received p.woocommerce-thankyou-order-received{
  background:var(--fcc-accent) !important;color:#fff !important;border-radius:12px !important;
  padding:20px 26px !important;font-size:17px !important;font-weight:700 !important;
  text-align:center !important;margin-bottom:28px !important;display:block;
  box-shadow:0 4px 20px rgba(var(--fcc-accent-rgb),.28) !important
}
body.fcc-active .woocommerce-order-received p.woocommerce-thankyou-order-received::before{content:'\2713  '}
body.fcc-active ul.woocommerce-order-overview{
  background:var(--fcc-surface) !important;border:1px solid var(--fcc-border) !important;
  border-radius:14px !important;display:flex !important;flex-wrap:wrap !important;
  margin:0 0 28px !important;padding:0 !important;list-style:none !important;overflow:hidden;
  box-shadow:0 1px 3px rgba(26,26,46,.04) !important
}
body.fcc-active ul.woocommerce-order-overview li{
  flex:1 1 150px !important;padding:18px 20px !important;margin:0 !important;
  border-right:1px solid var(--fcc-border) !important;border-bottom:none !important;
  font-size:11px !important;font-weight:600 !important;text-transform:uppercase;
  letter-spacing:.6px;color:var(--fcc-muted) !important;display:flex !important;flex-direction:column !important;gap:5px
}
body.fcc-active ul.woocommerce-order-overview li:last-child{border-right:none !important}
body.fcc-active ul.woocommerce-order-overview li strong{font-size:15px !important;font-weight:700 !important;color:var(--fcc-text) !important;text-transform:none;letter-spacing:0;display:block}
body.fcc-active ul.woocommerce-order-overview li.woocommerce-order-overview__total{background:var(--fcc-bg) !important}
body.fcc-active ul.woocommerce-order-overview li.woocommerce-order-overview__total strong{color:var(--fcc-accent) !important;font-size:20px !important}
body.fcc-active .woocommerce-order-received .woocommerce-table--order-details{margin:0 !important;box-shadow:none !important;border-radius:0 !important;border:none !important}
body.fcc-active .woocommerce-order-received .woocommerce-customer-details .col2-set{display:flex !important;flex-wrap:wrap !important}
body.fcc-active .woocommerce-order-received .woocommerce-customer-details address{padding:18px 20px !important;font-style:normal !important;font-size:14px !important;line-height:1.7 !important;color:var(--fcc-text) !important;flex:1 1 200px;border-right:1px solid var(--fcc-border)}
body.fcc-active .woocommerce-order-received .woocommerce-customer-details address:last-child{border-right:none}
body.fcc-active .woocommerce-order-received .woocommerce-info{background:var(--fcc-bg) !important;border-left:3px solid var(--fcc-accent) !important;border-top:none !important;border-radius:8px !important}
body.fcc-active .woocommerce-order-received .woocommerce-form.woocommerce-form-login{background:var(--fcc-surface) !important;border:1px solid var(--fcc-border) !important;border-radius:14px !important;padding:22px !important;margin-bottom:28px !important}

/* ── Elementor widget two-column layout ── */
.fcc-checkout-widget{container-type:inline-size}
.fcc-checkout-body form.woocommerce-checkout .woocommerce-NoticeGroup,
.fcc-checkout-body form.woocommerce-checkout .woocommerce-notices-wrapper{grid-column:1 / -1}

.fcc-layout-two-col form.woocommerce-checkout{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);column-gap:28px;align-items:start
}
.fcc-layout-two-col #customer_details{
  grid-column:1;grid-row:2 / span 5;display:flex;flex-direction:column;gap:20px;float:none !important;width:100% !important
}
.fcc-layout-two-col #order_review_heading{grid-column:2;grid-row:2;position:sticky;top:20px}
.fcc-layout-two-col #order_review{grid-column:2;grid-row:3;position:sticky;top:68px}
.fcc-layout-two-col .col2-set{float:none !important;width:100% !important;display:flex !important;flex-direction:column !important;gap:20px !important}
.fcc-layout-two-col .col2-set .col-1,.fcc-layout-two-col .col2-set .col-2{float:none !important;width:100% !important}

@container(max-width:900px){
  .fcc-layout-two-col form.woocommerce-checkout{grid-template-columns:1fr}
  .fcc-layout-two-col #customer_details,.fcc-layout-two-col #order_review_heading,.fcc-layout-two-col #order_review{grid-column:1;grid-row:auto;position:static}
}

/* ── Mobile ── */
@media(max-width:767px){
  body.fcc-active .woocommerce form .form-row label{font-size:14px !important}
  body.fcc-active .woocommerce form .form-row input.input-text,
  body.fcc-active .woocommerce form .form-row textarea{font-size:16px !important;padding:12px 13px !important}
  body.fcc-active .woocommerce .quantity input.qty{font-size:16px !important;width:66px !important}
  body.fcc-active .woocommerce table.shop_table thead{display:none !important}
  body.fcc-active .woocommerce table.shop_table tbody td{
    display:flex !important;align-items:center !important;justify-content:space-between;
    border-bottom:1px solid var(--fcc-border) !important;font-size:14px !important;padding:13px 16px !important
  }
  body.fcc-active .woocommerce table.shop_table tbody td::before{
    content:attr(data-title);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--fcc-muted)
  }
  body.fcc-active .woocommerce a.button.alt,body.fcc-active .woocommerce #place_order,body.fcc-active .woocommerce .checkout-button{font-size:16px !important;padding:16px 24px !important}
  body.fcc-active .woocommerce-billing-fields h3,body.fcc-active .woocommerce-shipping-fields h3,body.fcc-active .woocommerce-additional-fields h3,body.fcc-active .cart_totals>h2,body.fcc-active #order_review_heading,body.fcc-active h3.fcc-step-heading{font-size:10px !important;padding:12px 16px !important}
  body.fcc-active .woocommerce-cart-form .coupon{flex-direction:column !important}
  body.fcc-active .woocommerce-cart-form .coupon input#coupon_code{font-size:16px !important;width:100% !important}
  body.fcc-active .woocommerce-cart-form .actions{flex-direction:column;align-items:stretch;gap:10px}
  body.fcc-active .woocommerce-cart-form .actions .button{font-size:15px !important;width:100% !important;text-align:center}
  body.fcc-active ul.woocommerce-order-overview{flex-direction:column !important}
  body.fcc-active ul.woocommerce-order-overview li{border-right:none !important;border-bottom:1px solid var(--fcc-border) !important;flex-direction:row !important;justify-content:space-between !important;align-items:center !important}
  body.fcc-active ul.woocommerce-order-overview li:last-child{border-bottom:none !important}
  body.fcc-active .woocommerce-order-received .woocommerce-customer-details .col2-set{flex-direction:column !important}
  body.fcc-active .woocommerce-order-received .woocommerce-customer-details address{border-right:none !important;border-bottom:1px solid var(--fcc-border)}
  body.fcc-active .woocommerce-order-received .woocommerce-customer-details address:last-child{border-bottom:none}
}

/* ================================================================
   v1.23 FIXES
================================================================ */

/* ── Text sizing — bumped up across the board ───────────────────
   Base was too small. Labels 14px, body 15px, inputs always 16px
   to prevent iOS auto-zoom and improve desktop readability.      */
body.fcc-active .woocommerce form .form-row label {
  font-size: 14px !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
}
body.fcc-active .woocommerce form .form-row input.input-text,
body.fcc-active .woocommerce form .form-row textarea,
body.fcc-active .woocommerce .quantity input.qty {
  font-size: 16px !important;
  padding: 11px 13px !important;
}
body.fcc-active .select2-container--default .select2-selection--single {
  height: 46px !important;
  font-size: 16px !important;
}
body.fcc-active .select2-container--default .select2-selection--single .select2-selection__rendered {
  font-size: 16px !important;
}
body.fcc-active .woocommerce table.shop_table tbody td {
  font-size: 15px !important;
}
body.fcc-active .woocommerce table.shop_table thead th {
  font-size: 12px !important;
}
body.fcc-active #shipping_method li,
body.fcc-active #shipping_method li label {
  font-size: 15px !important;
}
body.fcc-active #payment ul.payment_methods label {
  font-size: 15px !important;
}
body.fcc-active #payment div.payment_box {
  font-size: 14px !important;
}
body.fcc-active .woocommerce-checkout-review-order-table tbody td,
body.fcc-active .woocommerce-checkout-review-order-table tfoot td,
body.fcc-active .woocommerce-checkout-review-order-table tfoot th {
  font-size: 15px !important;
}
body.fcc-active .woocommerce-checkout-review-order-table tfoot .order-total td,
body.fcc-active .woocommerce-checkout-review-order-table tfoot .order-total th {
  font-size: 18px !important;
}
body.fcc-active .cart_totals .order-total td,
body.fcc-active .cart_totals .order-total th {
  font-size: 20px !important;
}
body.fcc-active .woocommerce-shipping-destination {
  font-size: 14px !important;
}

/* ── Checkbox alignment — terms, marketing, ship-to-different ───
   WC renders these as <label><input><span> or <label><input><a>.
   Make them flex so the box and text always sit on the same line. */
body.fcc-active .woocommerce-checkout .woocommerce-form__label-for-checkbox,
body.fcc-active .woocommerce-checkout label[for="terms"],
body.fcc-active .woocommerce-checkout .checkbox {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  cursor: pointer;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--fcc-text) !important;
  line-height: 1.5 !important;
}
body.fcc-active .woocommerce-checkout .woocommerce-form__label-for-checkbox input[type="checkbox"],
body.fcc-active .woocommerce-checkout label[for="terms"] input[type="checkbox"],
body.fcc-active .woocommerce-checkout .checkbox input[type="checkbox"] {
  -webkit-appearance: checkbox !important;
  appearance: checkbox !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  accent-color: var(--fcc-accent) !important;
  flex-shrink: 0 !important;
  box-shadow: none !important;
  cursor: pointer;
}
/* Terms & conditions link */
body.fcc-active .woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text a,
body.fcc-active .woocommerce-checkout .woocommerce-privacy-policy-text a {
  color: var(--fcc-accent) !important;
  text-decoration: underline !important;
  font-weight: 500 !important;
}
/* Privacy / terms block text */
body.fcc-active .woocommerce-checkout .woocommerce-privacy-policy-text,
body.fcc-active .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: var(--fcc-text) !important;
}

/* ── Mobile: shipping destination + change address ──────────────
   On small screens the address and button fight for horizontal
   space, squashing the shipping options. Stack them vertically.  */
@media (max-width: 767px) {
  body.fcc-active .woocommerce-shipping-destination {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }
  body.fcc-active .woocommerce a.shipping-calculator-button {
    align-self: flex-start !important;
    margin: 0 !important;
  }

  /* Shipping options — full width, bigger tap targets */
  body.fcc-active #shipping_method li {
    padding: 12px 14px !important;
    font-size: 15px !important;
  }

  /* Cart totals table full width on mobile */
  body.fcc-active .cart_totals .shop_table tfoot td,
  body.fcc-active .cart_totals .shop_table tfoot th {
    font-size: 15px !important;
    padding: 13px 16px !important;
  }
  body.fcc-active .cart_totals .order-total td,
  body.fcc-active .cart_totals .order-total th {
    font-size: 18px !important;
  }

  /* Checkout review table on mobile */
  body.fcc-active .woocommerce-checkout-review-order-table tbody td {
    font-size: 15px !important;
    padding: 12px 14px !important;
  }
  body.fcc-active .woocommerce-checkout-review-order-table tfoot .order-total td,
  body.fcc-active .woocommerce-checkout-review-order-table tfoot .order-total th {
    font-size: 17px !important;
    padding: 14px !important;
  }

  /* Place order button full width, big */
  body.fcc-active .woocommerce #place_order {
    font-size: 17px !important;
    padding: 17px 24px !important;
  }
}

/* ================================================================
   v1.68 — MOBILE CART OVERHAUL + SHIPPING FIX
================================================================ */

/* ── Update cart button — always styled, even when disabled ───── */
body.fcc-active .woocommerce-cart-form button[name="update_cart"] {
  background: var(--fcc-navy) !important;
  color: #fff !important;
  opacity: 1 !important;
  cursor: pointer !important;
  width: 100%;
}
body.fcc-active .woocommerce-cart-form button[name="update_cart"]:disabled {
  background: var(--fcc-border) !important;
  color: var(--fcc-muted) !important;
  box-shadow: none !important;
  transform: none !important;
  cursor: default !important;
}

@media (max-width: 767px) {

  /* ── Cart product rows — proper card layout ─────────────────────
     Instead of each <td> becoming its own labeled row (ugly),
     each <tr> becomes a 3-col grid: thumb | info | price+actions  */

  /* Reset the general flex-row approach for cart item rows only */
  body.fcc-active .woocommerce-cart-form__cart-item {
    display: grid !important;
    grid-template-columns: 70px 1fr auto !important;
    align-items: start !important;
    gap: 0 14px !important;
    padding: 16px !important;
    border-bottom: 1px solid var(--fcc-border) !important;
  }

  /* All tds inside cart item reset to plain blocks */
  body.fcc-active .woocommerce-cart-form__cart-item td {
    display: block !important;
    border: none !important;
    padding: 0 !important;
    justify-content: initial !important;
  }
  body.fcc-active .woocommerce-cart-form__cart-item td::before {
    display: none !important;
  }

  /* Col 1: thumbnail spanning all rows */
  body.fcc-active .woocommerce-cart-form__cart-item .product-thumbnail {
    grid-column: 1;
    grid-row: 1 / 5;
    align-self: start;
  }
  body.fcc-active .woocommerce-cart-form__cart-item .product-thumbnail img {
    width: 70px !important;
    height: 70px !important;
    border-radius: 10px !important;
    display: block;
  }

  /* Col 2: name, unit price, qty */
  body.fcc-active .woocommerce-cart-form__cart-item .product-name {
    grid-column: 2;
    grid-row: 1;
    font-size: 15px !important;
    font-weight: 600;
    color: var(--fcc-text) !important;
    line-height: 1.35;
    padding-top: 2px !important;
  }
  body.fcc-active .woocommerce-cart-form__cart-item .product-price {
    grid-column: 2;
    grid-row: 2;
    font-size: 13px !important;
    color: var(--fcc-muted) !important;
    padding-top: 5px !important;
  }
  body.fcc-active .woocommerce-cart-form__cart-item .product-quantity {
    grid-column: 2;
    grid-row: 3;
    padding-top: 10px !important;
  }
  body.fcc-active .woocommerce-cart-form__cart-item .product-quantity input.qty {
    width: 58px !important;
    font-size: 16px !important;
    padding: 8px 10px !important;
  }

  /* Col 3: subtotal (top) + remove btn (bottom) */
  body.fcc-active .woocommerce-cart-form__cart-item .product-subtotal {
    grid-column: 3;
    grid-row: 1;
    font-size: 15px !important;
    font-weight: 700;
    color: var(--fcc-text) !important;
    text-align: right !important;
    white-space: nowrap;
    padding-top: 2px !important;
  }
  body.fcc-active .woocommerce-cart-form__cart-item .product-remove {
    grid-column: 3;
    grid-row: 3;
    text-align: right !important;
    padding-top: 10px !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
  }

  /* Cart actions row — coupon + update stacked */
  body.fcc-active .woocommerce-cart-form .actions {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 16px !important;
  }
  body.fcc-active .woocommerce-cart-form .coupon {
    flex-direction: column !important;
    width: 100% !important;
  }
  body.fcc-active .woocommerce-cart-form .coupon input#coupon_code {
    width: 100% !important;
    font-size: 16px !important;
    padding: 12px 13px !important;
  }
  body.fcc-active .woocommerce-cart-form button[name="update_cart"] {
    width: 100% !important;
    font-size: 15px !important;
    padding: 13px 20px !important;
    text-align: center !important;
  }

  /* ── Cart totals shipping row — fully stacked ───────────────────
     The shipping row mixes methods + destination in one <td>.
     On mobile, make the whole row block-level so it doesn't fight. */
  body.fcc-active .cart_totals table.shop_table tbody tr.woocommerce-shipping-totals {
    display: block !important;
    border-bottom: 1px solid var(--fcc-border) !important;
  }
  body.fcc-active .cart_totals .woocommerce-shipping-totals th,
  body.fcc-active .cart_totals .woocommerce-shipping-totals td {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    padding: 12px 16px !important;
    border: none !important;
    box-sizing: border-box !important;
  }
  body.fcc-active .cart_totals .woocommerce-shipping-totals th {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .5px !important;
    color: var(--fcc-muted) !important;
    padding-bottom: 4px !important;
  }
  body.fcc-active #shipping_method {
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
  }
  body.fcc-active #shipping_method li {
    width: 100% !important;
    font-size: 15px !important;
    padding: 12px 14px !important;
  }

  /* Shipping destination + change address — stacked, no overlap */
  body.fcc-active .woocommerce-shipping-destination {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin-top: 12px !important;
    font-size: 14px !important;
  }
  body.fcc-active .woocommerce a.shipping-calculator-button {
    align-self: flex-start !important;
  }

  /* Cart totals — subtotal and total rows stay as simple flex rows */
  body.fcc-active .cart_totals table.shop_table tfoot tr {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 0 !important;
  }
  body.fcc-active .cart_totals table.shop_table tfoot th,
  body.fcc-active .cart_totals table.shop_table tfoot td {
    display: block !important;
    padding: 13px 16px !important;
    border: none !important;
    font-size: 15px !important;
    width: auto !important;
  }
  body.fcc-active .cart_totals .order-total th,
  body.fcc-active .cart_totals .order-total td {
    font-size: 18px !important;
  }

  /* Proceed to checkout — full width, prominent */
  body.fcc-active .wc-proceed-to-checkout {
    padding: 14px 16px !important;
  }
  body.fcc-active .wc-proceed-to-checkout a.checkout-button {
    font-size: 17px !important;
    padding: 16px 24px !important;
  }
}

/* ================================================================
   v1.69 — TOTAL ROW FULL-WIDTH DARK BAR
================================================================ */

/* Both cells of the order-total row — full dark bar, no gaps */
body.fcc-active .cart_totals .woocommerce-shipping-totals ~ tfoot .order-total th,
body.fcc-active .cart_totals .woocommerce-shipping-totals ~ tfoot .order-total td,
body.fcc-active .cart_totals .shop_table tfoot .order-total th,
body.fcc-active .cart_totals .shop_table tfoot .order-total td,
body.fcc-active .woocommerce .cart_totals table tfoot tr.order-total th,
body.fcc-active .woocommerce .cart_totals table tfoot tr.order-total td {
  background: var(--fcc-navy) !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  padding: 18px 20px !important;
  border: none !important;
  border-radius: 0 !important;
}

/* Ensure the row itself has no background showing through */
body.fcc-active .cart_totals .shop_table tfoot tr.order-total {
  background: var(--fcc-navy) !important;
}

/* Last row rounded bottom corners to match the card */
body.fcc-active .cart_totals .shop_table tfoot tr.order-total th:first-child {
  border-radius: 0 !important;
}
body.fcc-active .cart_totals .shop_table tfoot tr.order-total td:last-child {
  border-radius: 0 0 13px 0 !important;
}
body.fcc-active .cart_totals .shop_table tfoot tr.order-total th:first-child {
  border-radius: 0 0 0 13px !important;
}

/* ================================================================
   v1.79 — HIGH-SPECIFICITY FIXES
   Previous rules lost the specificity battle against the general
   tfoot rule (0,3,5). These match or beat it.
================================================================ */

/* ── Total row — full dark bar, desktop + mobile ────────────────
   Must beat: body.fcc-active .woocommerce table.shop_table tfoot td
   which is 0,3,5. Using the full chain to reach 0,5,5+            */
body.fcc-active .woocommerce .cart_totals table.shop_table tfoot tr.order-total th,
body.fcc-active .woocommerce .cart_totals table.shop_table tfoot tr.order-total td,
body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.order-total th,
body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.order-total td {
  background: var(--fcc-navy) !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  padding: 18px 20px !important;
  border: none !important;
}

/* Bottom corners follow the card radius */
body.fcc-active .woocommerce .cart_totals table.shop_table tfoot tr.order-total th:first-child,
body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.order-total th:first-child {
  border-radius: 0 0 0 13px !important;
}
body.fcc-active .woocommerce .cart_totals table.shop_table tfoot tr.order-total td:last-child,
body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.order-total td:last-child {
  border-radius: 0 0 13px 0 !important;
}

/* ── Mobile: shipping row — force block/stack layout ───────────
   Must beat: body.fcc-active .woocommerce table.shop_table tbody td (0,3,4)
   Using .woocommerce .cart_totals table.shop_table to reach 0,5,4+ */
@media (max-width: 767px) {

  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.woocommerce-shipping-totals {
    display: block !important;
  }
  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.woocommerce-shipping-totals th,
  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.woocommerce-shipping-totals td {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-align: left !important;
    border: none !important;
    justify-content: initial !important;
    padding: 12px 16px !important;
    background: var(--fcc-surface) !important;
  }
  /* No ::before label on the shipping td */
  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.woocommerce-shipping-totals td::before {
    display: none !important;
  }
  /* Section label above the methods */
  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.woocommerce-shipping-totals th {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .5px !important;
    color: var(--fcc-muted) !important;
    padding-bottom: 4px !important;
  }

  /* Shipping method pills — full width stack */
  body.fcc-active .woocommerce .cart_totals #shipping_method {
    flex-direction: column !important;
    width: 100% !important;
    gap: 8px !important;
  }
  body.fcc-active .woocommerce .cart_totals #shipping_method li {
    width: 100% !important;
    font-size: 15px !important;
    padding: 12px 14px !important;
  }

  /* Destination + change address — stacked column */
  body.fcc-active .woocommerce .cart_totals .woocommerce-shipping-destination {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin-top: 10px !important;
    font-size: 14px !important;
    color: var(--fcc-muted) !important;
  }

  /* Mobile total row — also needs high-specificity background */
  body.fcc-active .woocommerce .cart_totals table.shop_table tfoot tr.order-total,
  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.order-total {
    display: flex !important;
    background: var(--fcc-navy) !important;
    border-radius: 0 0 13px 13px !important;
  }
  body.fcc-active .woocommerce .cart_totals table.shop_table tfoot tr.order-total th,
  body.fcc-active .woocommerce .cart_totals table.shop_table tfoot tr.order-total td,
  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.order-total th,
  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.order-total td {
    display: block !important;
    flex: 1 !important;
    border-radius: 0 !important;
    width: auto !important;
    font-size: 18px !important;
  }
  body.fcc-active .woocommerce .cart_totals table.shop_table tfoot tr.order-total td,
  body.fcc-active .woocommerce .cart_totals table.shop_table tbody tr.order-total td {
    text-align: right !important;
  }
}
