/* ================================================================
   Panier Supertrainers (WooCommerce classic cart)
   ================================================================ */

/* Disposition 2 colonnes : articles à gauche, récapitulatif à droite */
.stc-cart-layout{ display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:24px; align-items:start; max-width:1120px; margin:0 auto; }
.stc-cart-layout .woocommerce-cart-form{ min-width:0; margin:0; }
.stc-cart-layout .cart-collaterals{ width:100% !important; float:none !important; margin:0; }
.stc-cart-layout .cart-collaterals .cross-sells{ display:none; }

/* Tableau des articles = carte blanche */
.woocommerce-cart .woocommerce-cart-form__contents{ width:100%; border-collapse:separate; border-spacing:0; background:#fff; border-radius:18px; overflow:hidden; box-shadow:0 12px 40px rgba(28,27,36,.06); }
.woocommerce-cart .woocommerce-cart-form__contents thead th{ font-family:'Hanken Grotesk',sans-serif; font-size:.76rem; text-transform:uppercase; letter-spacing:.05em; color:#8a8893; text-align:left; padding:18px 16px; border-bottom:1.5px solid rgba(38,36,48,.1); }
.woocommerce-cart .woocommerce-cart-form__contents td{ padding:18px 16px; border-bottom:1px solid rgba(38,36,48,.07); vertical-align:middle; background:#fff; }
.woocommerce-cart .product-thumbnail img{ width:72px; height:72px; object-fit:cover; border-radius:12px; }
.woocommerce-cart td.product-name a{ font-family:'Hanken Grotesk',sans-serif; font-weight:800; font-size:1.02rem; color:#1C1B24; text-decoration:none; }
.woocommerce-cart td.product-name a:hover{ color:#3F6CB0; }
.woocommerce-cart td.product-price, .woocommerce-cart td.product-subtotal{ font-family:'Hanken Grotesk',sans-serif; font-weight:700; color:#1C1B24; }
.woocommerce-cart td.product-remove a.remove{ color:#c8c6cf !important; font-size:1.4rem; font-weight:400; }
.woocommerce-cart td.product-remove a.remove:hover{ color:#FF6B4D !important; background:none !important; }
.woocommerce-cart .quantity input.qty{ width:66px; padding:.5rem; border-radius:10px; border:1.5px solid rgba(38,36,48,.15); text-align:center; font-family:'Inter',sans-serif; }

/* Ligne actions : coupon + mise à jour */
.woocommerce-cart .woocommerce-cart-form__contents td.actions{ padding:18px 16px; background:#FBFBFD; overflow:hidden; }
.woocommerce-cart td.actions .coupon{ display:inline-flex; gap:8px; float:left; }
.woocommerce-cart td.actions .coupon input#coupon_code{ padding:.7rem .85rem; border-radius:10px; border:1.5px solid rgba(38,36,48,.15); font-family:'Inter',sans-serif; }
.woocommerce-cart td.actions .coupon .button{ font-family:'Hanken Grotesk',sans-serif; font-weight:700; padding:.7rem 1.1rem; border-radius:10px; border:1.5px solid #1C1B24; background:#fff; color:#1C1B24; cursor:pointer; }
.woocommerce-cart td.actions .coupon .button:hover{ background:#1C1B24; color:#fff; }
.woocommerce-cart td.actions button[name=update_cart]{ float:right; font-family:'Hanken Grotesk',sans-serif; font-weight:800; padding:.7rem 1.3rem; border-radius:10px; border:none; background:#1C1B24; color:#fff; cursor:pointer; }
.woocommerce-cart td.actions button[name=update_cart][disabled]{ opacity:.45; }

/* Récapitulatif (colonne droite) */
.woocommerce-cart .cart_totals{ background:#fff; border-radius:18px; padding:26px; box-shadow:0 12px 40px rgba(28,27,36,.06); }
.woocommerce-cart .cart_totals h2{ font-family:'Hanken Grotesk',sans-serif; font-weight:800; font-size:1.15rem; color:#1C1B24; margin:0 0 16px; }
.woocommerce-cart .cart_totals table{ width:100%; border-collapse:collapse; }
.woocommerce-cart .cart_totals th{ font-family:'Inter',sans-serif; font-weight:500; color:#6a6873; text-align:left; padding:11px 10px 11px 0; font-size:.92rem; vertical-align:top; border:none; width:34%; }
.woocommerce-cart .cart_totals td{ text-align:right; padding:11px 0; font-size:.92rem; color:#1C1B24; border:none; }
.woocommerce-cart .cart_totals .shipping ul{ list-style:none; margin:0; padding:0; }
.woocommerce-cart .cart_totals .shipping li{ margin-bottom:7px; font-size:.9rem; line-height:1.4; }
.woocommerce-cart .cart_totals .woocommerce-shipping-calculator a{ color:#3F6CB0; }
.woocommerce-cart .cart_totals tr.order-total th, .woocommerce-cart .cart_totals tr.order-total td{ font-family:'Hanken Grotesk',sans-serif; font-weight:800; font-size:1.22rem; color:#1C1B24; border-top:1.5px solid rgba(38,36,48,.12); padding-top:16px; }

/* Bouton commander */
.woocommerce-cart .wc-proceed-to-checkout{ padding:0; margin-top:18px; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{ display:block; width:100%; text-align:center; font-family:'Hanken Grotesk',sans-serif; font-weight:800; font-size:1.05rem; padding:15px; border-radius:13px; background:#6C9CE4 !important; color:#fff !important; border:none; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{ background:#3F6CB0 !important; }

@media(max-width:860px){
  .stc-cart-layout{ grid-template-columns:1fr; }
}

/* Ligne Expédition : libellé au-dessus, options en pleine largeur (fini le mot à mot) */
.woocommerce-cart .cart_totals tr.shipping th,
.woocommerce-cart .cart_totals tr.shipping td{ display:block; width:100%; text-align:left; padding:4px 0; }
.woocommerce-cart .cart_totals tr.shipping th{ padding-top:14px; }
.woocommerce-cart .cart_totals .shipping ul#shipping_method li,
.woocommerce-cart .cart_totals .shipping li{ display:flex; align-items:flex-start; gap:8px; margin-bottom:9px; font-size:.88rem; line-height:1.35; }
.woocommerce-cart .cart_totals .shipping li input{ margin-top:3px; flex:0 0 auto; }
.woocommerce-cart .cart_totals .shipping li label{ flex:1; margin:0; }
.woocommerce-cart .cart_totals .shipping .woocommerce-shipping-methods{ margin:0; padding:0; }

/* Renfort options de livraison : pleine largeur forcée, alignées à gauche */
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th,
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td{ display:block !important; width:100% !important; max-width:100% !important; text-align:left !important; padding:4px 0 !important; white-space:normal !important; }
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th{ padding-top:14px !important; }
.woocommerce-cart .cart_totals #shipping_method{ width:100% !important; margin:0 !important; padding:0 !important; list-style:none !important; }
.woocommerce-cart .cart_totals #shipping_method li{ display:flex !important; align-items:flex-start; gap:8px; width:100% !important; margin:0 0 9px !important; font-size:.88rem; line-height:1.35; }
.woocommerce-cart .cart_totals #shipping_method li input{ margin-top:3px; flex:0 0 auto; }
.woocommerce-cart .cart_totals #shipping_method li label{ flex:1; margin:0; text-align:left; }

/* Correctif définitif livraison : forcer la LIGNE du tableau en bloc pleine largeur */
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals{ display:block !important; width:100% !important; }
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th,
.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td{ display:block !important; width:100% !important; max-width:100% !important; box-sizing:border-box; padding:4px 0 !important; text-align:left !important; }
.woocommerce-cart .cart_totals ul#shipping_method{ display:block !important; width:100% !important; margin:0 !important; padding:0 !important; list-style:none !important; }
.woocommerce-cart .cart_totals ul#shipping_method li{ display:flex !important; align-items:flex-start; gap:8px; width:100% !important; margin:0 0 9px !important; font-size:.88rem; line-height:1.4; }
.woocommerce-cart .cart_totals ul#shipping_method li label{ flex:1 1 auto !important; width:auto !important; margin:0 !important; text-align:left !important; }
.woocommerce-cart .cart_totals ul#shipping_method li input.shipping_method{ flex:0 0 auto; margin-top:3px; }

/* ================================================================
   Totaux du panier : conversion complète en flex (fiable)
   Le tableau WooCommerce empêchait la largeur de se propager.
   ================================================================ */
.woocommerce-cart .cart_totals table,
.woocommerce-cart .cart_totals table tbody{ display:block !important; width:100% !important; border:none !important; }
.woocommerce-cart .cart_totals table tr{ display:flex !important; justify-content:space-between !important; align-items:baseline; gap:14px; width:100% !important; padding:10px 0 !important; border:none !important; }
.woocommerce-cart .cart_totals table tr th,
.woocommerce-cart .cart_totals table tr td{ display:block !important; width:auto !important; padding:0 !important; border:none !important; }
.woocommerce-cart .cart_totals table tr th{ text-align:left; color:#6a6873; font-weight:500; }
.woocommerce-cart .cart_totals table tr td{ text-align:right; color:#1C1B24; }

/* Ligne Expédition : empilée, options en pleine largeur */
.woocommerce-cart .cart_totals table tr.woocommerce-shipping-totals{ display:block !important; }
.woocommerce-cart .cart_totals table tr.woocommerce-shipping-totals th{ margin-bottom:8px; }
.woocommerce-cart .cart_totals table tr.woocommerce-shipping-totals td{ width:100% !important; text-align:left !important; }
.woocommerce-cart .cart_totals ul#shipping_method{ display:block !important; width:100% !important; margin:0 !important; padding:0 !important; list-style:none !important; }
.woocommerce-cart .cart_totals ul#shipping_method li{ display:flex !important; align-items:flex-start; gap:8px; width:100% !important; margin:0 0 9px !important; font-size:.88rem; line-height:1.4; }
.woocommerce-cart .cart_totals ul#shipping_method li label{ flex:1 1 auto !important; margin:0 !important; text-align:left !important; }
.woocommerce-cart .cart_totals ul#shipping_method li input{ flex:0 0 auto; margin-top:3px; }
.woocommerce-cart .cart_totals .woocommerce-shipping-destination{ font-size:.82rem; color:#8a8893; margin:8px 0 0; }

/* Total en gras */
.woocommerce-cart .cart_totals table tr.order-total{ border-top:1.5px solid rgba(38,36,48,.12) !important; margin-top:6px; padding-top:14px !important; }
.woocommerce-cart .cart_totals table tr.order-total th,
.woocommerce-cart .cart_totals table tr.order-total td{ font-family:'Hanken Grotesk',sans-serif; font-weight:800; font-size:1.2rem; color:#1C1B24; }

/* Badge type de produit sous le nom (panier) */
.woocommerce-cart td.product-name .stc-item-type{ display:block; width:fit-content; margin-top:7px; font-family:'Inter',sans-serif; font-size:.72rem; font-weight:600; padding:3px 10px; border-radius:999px; letter-spacing:.01em; white-space:nowrap; text-align:center; }
.woocommerce-cart td.product-name .stc-badge-dl{ background:rgba(108,156,228,.16); color:#3F6CB0; }
.woocommerce-cart td.product-name .stc-badge-phys{ background:rgba(224,168,136,.22); color:#9a5b3a; }
