/* 4NextSport cart — pixel-matched to approved design (E08) */
:root{--fnx-ink:#0A2423;--fnx-pine2:#123A33;--fnx-mint:#2FCFB0;--fnx-mintd:#1FA98E;--fnx-msoft:#DFF7F1;--fnx-navy:#1D2B3F;--fnx-slate:#5C6B68;--fnx-line:#E4E9E7;--fnx-paper:#F4F6F5}
/* full-bleed hero inside page content */
.fnxcart-hero{width:100vw;margin-left:calc(50% - 50vw);background:linear-gradient(115deg,var(--fnx-ink),var(--fnx-pine2));color:#fff;padding:30px 0 34px;margin-bottom:40px}
.fnxcart-herowrap{max-width:1240px;margin:0 auto;padding:0 24px}
.fnxcart-crumb{font-size:13px;color:rgba(255,255,255,.55);margin-bottom:8px}
.fnxcart-crumb a{color:inherit;text-decoration:none}
.fnxcart-crumb b{color:var(--fnx-mint);font-weight:600}
.fnxcart-hero h1{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(26px,3vw,36px);color:#fff;margin:0}
.fnxcart{max-width:1240px;margin:0 auto;padding:0 24px 70px;font-family:'Outfit',sans-serif;color:var(--fnx-ink)}
.fnxcart-grid{display:grid;grid-template-columns:1fr 360px;gap:30px;align-items:start}

/* rows */
.fnxcart-list{background:#fff;border:1px solid var(--fnx-line);border-radius:18px;overflow:hidden}
.fnxcart-row{display:flex;gap:18px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--fnx-line)}
.fnxcart-thumb{width:72px;height:72px;border-radius:12px;background:linear-gradient(150deg,#EFF4F3,#E4EBEA);display:grid;place-items:center;flex-shrink:0;overflow:hidden}
.fnxcart-thumb img{max-width:85%;max-height:85%;width:auto!important;height:auto;object-fit:contain;margin:0!important}
.fnxcart-info{flex:1;min-width:0}
.fnxcart-info b{display:block;font-weight:600;font-size:15.5px}
.fnxcart-info b a{color:inherit;text-decoration:none}
.fnxcart-info b a:hover{color:var(--fnx-mintd)}
.fnxcart-info>span{font-size:13px;color:var(--fnx-slate)}
.fnxcart-qty .quantity{display:inline-flex;align-items:center;border:1.5px solid var(--fnx-line);border-radius:12px;background:#fff;overflow:hidden}
.fnxcart-qty .qty{width:56px;height:42px;border:none!important;text-align:center;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:14.5px;background:#fff;-moz-appearance:textfield;padding:0!important;margin:0!important}
.fnxcart-qty .qty::-webkit-outer-spin-button,.fnxcart-qty .qty::-webkit-inner-spin-button{-webkit-appearance:none}
.fnxcart-qty label{display:none}
.fnxcart-qone{display:inline-grid;place-items:center;min-width:42px;height:42px;border:1.5px solid var(--fnx-line);border-radius:12px;font-family:'Space Grotesk',sans-serif;font-weight:700}
.fnxcart-price{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:16px;min-width:92px;text-align:right}
.fnxcart-price .amount,.fnxcart-price bdi{color:var(--fnx-ink)!important;font-weight:700!important}
.fnxcart-rm{background:none;border:none;color:#ABB8B5;font-size:22px;line-height:1;text-decoration:none;padding:4px 6px}
.fnxcart-rm:hover{color:#E8433F}
.fnxcart-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 24px;background:var(--fnx-paper)}
.fnxcart-continue{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;color:var(--fnx-slate);text-decoration:none}
.fnxcart-continue:hover{color:var(--fnx-ink)}
.fnxcart-update{border:1.5px solid var(--fnx-line);background:#fff;border-radius:10px;padding:10px 18px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13px;cursor:pointer;color:var(--fnx-ink)}
.fnxcart-update:hover{border-color:var(--fnx-ink)}
.fnxcart-update.fnx-hide{display:none}

/* totals */
.fnxcart-totals{background:#fff;border:1px solid var(--fnx-line);border-radius:18px;padding:26px;position:sticky;top:96px}
.fnxcart-totals>h3{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:18px;margin:0 0 14px}
.fnxcart-promo{display:flex;gap:8px;margin:0 0 12px}
.fnxcart-promo input{flex:1;border:1.5px solid var(--fnx-line);border-radius:10px;padding:10px 12px;font-size:13.5px;font-family:inherit;min-width:0}
.fnxcart-promo input:focus{outline:none;border-color:var(--fnx-mintd)}
.fnxcart-promo button{border:1.5px solid var(--fnx-ink);background:none;border-radius:10px;padding:0 16px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:12.5px;cursor:pointer;color:var(--fnx-ink)}
.fnxcart-promo button:hover{background:var(--fnx-ink);color:#fff}

/* WooCommerce totals table restyled to design rows */
.fnxcart-wctotals .cart_totals{width:100%;float:none}
.fnxcart-wctotals .cart_totals>h2{display:none}
.fnxcart-wctotals table{width:100%;border:none!important;margin:0}
.fnxcart-wctotals th,.fnxcart-wctotals td{border:none!important;padding:8px 0!important;font-size:14.5px;background:none!important}
.fnxcart-wctotals th{font-weight:400;color:var(--fnx-slate);text-align:left;width:auto}
.fnxcart-wctotals td{text-align:right;color:var(--fnx-ink)}
.fnxcart-wctotals td .amount,.fnxcart-wctotals td bdi{color:var(--fnx-ink);font-weight:600}
.fnxcart-wctotals .order-total th,.fnxcart-wctotals .order-total td{border-top:1px solid var(--fnx-line)!important;padding-top:16px!important;font-family:'Space Grotesk',sans-serif;font-weight:700!important;font-size:18px;color:var(--fnx-ink)}
.fnxcart-wctotals .order-total td .amount{font-weight:700}
.fnxcart-wctotals .woocommerce-shipping-destination{font-size:12px;color:var(--fnx-slate)}
.fnxcart-wctotals .woocommerce-shipping-calculator{font-size:13px}
.fnxcart-wctotals .shipping-calculator-button{color:var(--fnx-mintd);font-weight:600;text-decoration:none}
.fnxcart-wctotals ul#shipping_method{list-style:none;margin:0;padding:0;text-align:right}
.fnxcart-wctotals ul#shipping_method li{margin:0 0 6px}

/* checkout button (native proceed link restyled) */
.fnxcart-checkout .checkout-button{display:flex!important;justify-content:center;align-items:center;gap:10px;width:100%;background:var(--fnx-mint)!important;color:var(--fnx-ink)!important;border:none!important;border-radius:12px!important;padding:15px 20px!important;font-family:'Space Grotesk',sans-serif!important;font-weight:600!important;font-size:14.5px!important;text-decoration:none;margin:14px 0 0!important}
.fnxcart-checkout .checkout-button:hover{filter:brightness(1.07)}
.fnxcart-checkout .checkout-button::after{content:"→"}
.fnxcart-paynote{margin:12px 0 0;font-size:12.5px;color:var(--fnx-slate);text-align:center}

/* coupon feedback + notices inside our layout */
.fnxcart .woocommerce-error,.fnxcart .woocommerce-message,.fnxcart .woocommerce-info{border-radius:12px;margin-bottom:16px}

/* empty state */
.fnxcart-empty{max-width:640px;margin:30px auto 80px;text-align:center;border:1.5px dashed var(--fnx-line);border-radius:18px;padding:64px 24px;font-family:'Outfit',sans-serif;color:var(--fnx-slate)}
.fnxcart-empty b{display:block;font-family:'Space Grotesk',sans-serif;font-size:19px;color:var(--fnx-ink);margin-bottom:8px}
.fnxcart-empty span{display:block;margin-bottom:20px}
.fnxcart-emptybtn{display:inline-block;background:var(--fnx-mint);color:var(--fnx-ink);border-radius:12px;padding:13px 24px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:14px;text-decoration:none}

/* responsive */
@media(max-width:1080px){
  .fnxcart-grid{grid-template-columns:1fr}
  .fnxcart-totals{position:static}
}
@media(max-width:640px){
  .fnxcart-row{flex-wrap:wrap;padding:16px;gap:12px}
  .fnxcart-info{flex:1 1 55%}
  .fnxcart-qty{order:3}
  .fnxcart-price{order:4;flex:1;min-width:0}
  .fnxcart-rm{position:absolute;margin-left:calc(100% - 40px)}
  .fnxcart-row{position:relative}
  .fnxcart-actions{flex-wrap:wrap}
}


/* ===== 4NS fixes 2026-10-05 ===== */
/* WoodMart wraps the totals heading one level deeper: hide the duplicate 'Total panier' */
.fnxcart-wctotals .cart_totals h2{display:none}
/* empty cart: keep only our own empty state (WoodMart's block is untranslated) */
.woocommerce-cart .wd-empty-block-title.wc-empty-cart-message,.woocommerce-cart .wd-empty-block-text{display:none!important}
/* approved design: no free-shipping bar on the cart; button label in sentence case */
.woocommerce-cart .wd-shipping-progress-bar{display:none!important}
.fnxcart-checkout .checkout-button{text-transform:none!important}
