/* Bamtex — pages WooCommerce hors fiche (boutique, catégorie, panier, compte). */

/* En-tête de boutique / catégorie */
.bx-shop-hero{background:var(--bx-cream-2);border-bottom:1px solid var(--bx-border);padding:clamp(40px,6vw,72px) 0 clamp(30px,4vw,44px);}
.bx-shop-hero h1{font-size:clamp(34px,5vw,60px);margin:12px 0 12px;}
.bx-shop-hero__desc{max-width:60ch;font-size:17px;color:var(--bx-text-2);margin:0;}

/* Grille produits */
.bx-shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:18px;}
.woocommerce-result-count{color:var(--bx-muted);font-size:14px;margin:0 0 4px;}

/* Pagination */
.woocommerce-pagination{margin-top:34px;}
.woocommerce-pagination ul{list-style:none;display:flex;gap:8px;padding:0;justify-content:center;}
.woocommerce-pagination a,.woocommerce-pagination span{display:grid;place-items:center;min-width:42px;height:42px;padding:0 10px;border:1px solid var(--bx-border);border-radius:12px;color:var(--bx-ink);background:#fff;}
.woocommerce-pagination .current{background:var(--bx-green);color:#fff;border-color:var(--bx-green);}

/* Messages WooCommerce (ajout panier, etc.) */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:12px;border:1px solid var(--bx-border);background:#fff;padding:14px 18px;list-style:none;}
.woocommerce-message{border-left:4px solid var(--bx-green);}
.woocommerce-error{border-left:4px solid var(--bx-terracotta);}
.woocommerce-message .button,.woocommerce-info .button{background:var(--bx-green);color:#fff;border-radius:999px;padding:8px 18px;font-weight:700;}

/* Boutons WooCommerce génériques -> style pill Bamtex (force le vert sur les défauts WP/WooCommerce) */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce .button,
.woocommerce .button.alt,.woocommerce a.checkout-button,.wc-proceed-to-checkout .button,
.woocommerce #respond input#submit,.wp-element-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  background:var(--bx-green)!important;color:#fff!important;border:none!important;border-radius:999px!important;
  padding:14px 26px;font-weight:800;font-family:inherit;cursor:pointer;transition:background .2s;text-transform:none;box-shadow:none;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button:hover,
.woocommerce .button.alt:hover,.woocommerce a.checkout-button:hover{background:var(--bx-green-deep)!important;}
/* Bouton secondaire (Mettre à jour le panier) -> plus discret mais lisible */
.woocommerce button[name="update_cart"]{background:var(--bx-forest)!important;}
.woocommerce button[name="update_cart"]:disabled{opacity:.45;}

/* ============ PANIER (custom, d'après maquette) ============ */
.bx-wc-page{padding-bottom:clamp(40px,5vw,80px);}
.bx-cartp{padding-top:clamp(28px,4vw,52px);}
.bx-cartp__title{font-family:var(--bx-serif);font-weight:400;font-size:clamp(34px,4.8vw,58px);line-height:1.04;margin:0 0 6px;}
.bx-cartp__sub{margin:0 0 clamp(24px,3vw,38px);font-size:16.5px;color:var(--bx-text-2);}
.bx-cartp__grid{display:grid;grid-template-columns:1.6fr .9fr;gap:clamp(22px,3vw,42px);align-items:start;}
.bx-cartp__items{display:grid;gap:14px;}
.bx-citem{background:#fff;border:1px solid var(--bx-border);border-radius:18px;padding:18px;display:flex;gap:18px;flex-wrap:wrap;}
.bx-citem__media{flex:none;width:118px;height:104px;border-radius:12px;overflow:hidden;background:var(--bx-cream-2);}
.bx-citem__media img{width:100%;height:100%;object-fit:cover;}
.bx-citem__body{flex:1;min-width:190px;}
.bx-citem__top{display:flex;justify-content:space-between;gap:12px;align-items:start;}
.bx-citem__top h2{font-family:var(--bx-serif);font-weight:400;font-size:23px;margin:0 0 3px;}
.bx-citem__variant{margin:0;font-size:14.5px;color:var(--bx-muted);}
.bx-citem__line{font-family:var(--bx-serif);font-size:23px;line-height:1.1;text-align:right;}
.bx-citem__actions{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px;}
.bx-citem__gift{background:var(--bx-green-tint);color:#3f5a22;font-size:13px;font-weight:700;padding:8px 14px;border-radius:999px;}
.bx-citem__remove{font-size:14px;font-weight:600;color:var(--bx-muted);text-decoration:underline;}
.bx-citem__remove:hover{color:var(--bx-terracotta);}
.bx-qty{display:flex;align-items:center;border:1.5px solid #dfd8c6;border-radius:999px;overflow:hidden;}
.bx-qty__btn{width:40px;height:40px;border:none;background:#fbfaf6;font-size:19px;cursor:pointer;color:var(--bx-ink);font-family:inherit;}
.bx-qty__input{width:46px;text-align:center;font-weight:700;font-size:16px;border:none;background:#fff;-moz-appearance:textfield;font-family:inherit;}
.bx-qty__input::-webkit-outer-spin-button,.bx-qty__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.bx-cartp__update{margin-top:4px;background:var(--bx-forest);color:#fff;border:none;border-radius:999px;padding:12px 22px;font-weight:700;font-family:inherit;cursor:pointer;justify-self:start;}
.bx-cartp__continue{display:inline-block;font-weight:700;font-size:15px;margin-top:4px;}
.bx-cartp__aside{position:sticky;top:120px;display:grid;gap:14px;}
.bx-cartp__summary{background:#fff;border:1px solid var(--bx-border);border-radius:20px;padding:clamp(22px,2.6vw,30px);box-shadow:0 24px 54px -34px rgba(38,53,42,.36);}
.bx-cartp__summary h2{font-family:var(--bx-serif);font-weight:400;font-size:26px;margin:0 0 20px;}
.bx-cartp__lines{display:grid;gap:11px;font-size:15.5px;}
.bx-cartp__lines>div{display:flex;justify-content:space-between;gap:12px;}
.bx-cartp__lines span{color:var(--bx-text-2);}
.bx-cartp__discount{color:var(--bx-terracotta);}
.bx-free{color:var(--bx-green-deep);}
.bx-cartp__total{border-top:1px solid #ece6d8;margin:18px 0;padding-top:18px;display:flex;justify-content:space-between;align-items:baseline;gap:12px;}
.bx-cartp__total span:first-child{font-weight:700;font-size:17px;}
.bx-cartp__total-val{font-family:var(--bx-serif);font-size:36px;line-height:1;}
.bx-cartp__total-val .woocommerce-Price-amount{font-family:var(--bx-serif);}
.bx-cartp__checkout{display:block;text-align:center;font-size:17px;padding:18px;}
.bx-cartp__reassure{margin-top:18px;display:grid;gap:9px;font-size:14.5px;color:var(--bx-text-2);}
.bx-cartp__reassure div{display:flex;gap:9px;}
.bx-cartp__reassure span{color:var(--bx-green);font-weight:800;}
.bx-cartp__promo{background:var(--bx-cream-2);border:1px solid var(--bx-border);border-radius:20px;padding:22px;}
.bx-cartp__promo label{font-weight:700;font-size:14.5px;display:block;margin-bottom:9px;}
.bx-cartp__promo-row{display:flex;gap:9px;flex-wrap:wrap;}
.bx-cartp__promo-row input{flex:1;min-width:130px;font-size:15.5px;padding:13px 16px;border-radius:12px;border:1.5px solid #dfd8c6;background:#fff;font-family:inherit;}
.bx-cartp__promo-row button{background:var(--bx-forest);color:#fff;font-weight:700;font-size:14.5px;padding:13px 22px;border-radius:12px;border:none;cursor:pointer;font-family:inherit;}
@media (max-width:900px){.bx-cartp__grid{grid-template-columns:1fr;}.bx-cartp__aside{position:static;}}

/* ============ COMMANDE (checkout) ============ */
.bx-checkoutp{padding-top:clamp(26px,3.4vw,44px);}
.bx-checkoutp__head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:clamp(20px,2.6vw,32px);}
.bx-checkoutp__head h1{font-family:var(--bx-serif);font-weight:400;font-size:clamp(30px,4vw,46px);line-height:1.05;margin:0;}
.bx-checkoutp__secure{font-size:14px;font-weight:600;color:var(--bx-text-2);}
.bx-checkoutp #customer_details .col-1,
.bx-checkoutp #customer_details .col-2{background:#fff;border:1px solid var(--bx-border);border-radius:20px;padding:clamp(20px,3vw,32px);box-shadow:0 24px 54px -34px rgba(38,53,42,.34);}
.bx-checkoutp #order_review{background:#fff;border:1px solid var(--bx-border);border-radius:20px;padding:clamp(20px,2.6vw,30px);}
.bx-checkoutp__reassure{background:var(--bx-cream-2);border:1px solid var(--bx-border);border-radius:20px;padding:20px;margin-top:14px;display:grid;gap:10px;font-size:14.5px;color:var(--bx-text-2);}
.bx-checkoutp__reassure div{display:flex;gap:9px;}
.bx-checkoutp__reassure span{color:var(--bx-green);font-weight:800;}
.bx-checkoutp__back{display:inline-block;margin-top:14px;font-weight:700;font-size:15px;}

/* ---- Paiement (CB / WooPayments / Stripe) restylé aux couleurs Bamtex ---- */
.woocommerce-checkout #payment{background:transparent;border-radius:0;}
.woocommerce-checkout #payment ul.payment_methods{border:none;background:transparent;margin:0;padding:0;display:grid;gap:10px;}
.woocommerce-checkout #payment ul.payment_methods li{list-style:none;background:#fbfaf6;border:1.5px solid var(--bx-border);border-radius:14px;padding:15px 16px;transition:border-color .15s,background .15s;}
.woocommerce-checkout #payment ul.payment_methods li:hover{border-color:var(--bx-green);}
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked){border-color:var(--bx-green);background:var(--bx-green-tint);}
.woocommerce-checkout #payment ul.payment_methods li input[type="radio"]{accent-color:var(--bx-green);margin-right:8px;}
.woocommerce-checkout #payment ul.payment_methods li label{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:15.5px;color:var(--bx-ink);cursor:pointer;}
.woocommerce-checkout #payment ul.payment_methods li label img{max-height:24px;width:auto;margin-left:6px;}
/* La boîte des champs (retire le jaune + le triangle par défaut WooCommerce) */
.woocommerce-checkout #payment div.payment_box{background:#fff!important;color:var(--bx-text-2);border:1px solid var(--bx-border);border-radius:12px;margin:12px 0 0;padding:16px 18px;font-size:14.5px;box-shadow:none;}
.woocommerce-checkout #payment div.payment_box::before{display:none!important;}
.woocommerce-checkout #payment div.payment_box p{margin:0 0 8px;}
/* Champs carte (WooPayments / Stripe elements) */
.woocommerce-checkout #payment .wcpay-card-mounted,
.woocommerce-checkout #payment .wc-stripe-elements-field,
.woocommerce-checkout #payment .wcpay-upe-element,
.woocommerce-checkout #payment .StripeElement{background:#fbfaf6;border:1.5px solid var(--bx-border);border-radius:12px;padding:14px 16px;}
.woocommerce-checkout #payment .StripeElement--focus,
.woocommerce-checkout #payment .wcpay-card-mounted.focused{border-color:var(--bx-green);}
/* Mentions de paiement sécurisé */
.woocommerce-checkout #payment .woocommerce-privacy-policy-text{font-size:13.5px;color:var(--bx-muted);}

/* ============ PANIER & COMMANDE (legacy WooCommerce) ============ */
/* Pleine largeur (annule le cap 760px du gabarit de page) */
.woocommerce-cart .bx-page-content,
.woocommerce-checkout .bx-page-content{max-width:none;}
.woocommerce-cart .bx-page-hero,
.woocommerce-checkout .bx-page-hero{display:none;}
.woocommerce-cart .bx-main,
.woocommerce-checkout .bx-main{padding-top:clamp(30px,4vw,50px);padding-bottom:clamp(40px,5vw,70px);}
/* (Ancien layout panier par défaut retiré : le panier utilise désormais le template
   custom .bx-cartp — le wrapper .woocommerce doit rester en flux normal.) */
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title{font-family:var(--bx-serif);font-weight:400;font-size:clamp(30px,4vw,48px);margin:0 0 24px;}

/* Tableau panier */
.woocommerce table.shop_table{border:1px solid var(--bx-border);border-radius:16px;border-collapse:separate;border-spacing:0;overflow:hidden;background:#fff;}
.woocommerce table.shop_table th{background:var(--bx-cream-2);font-weight:700;padding:16px;}
.woocommerce table.shop_table td{padding:16px;border-top:1px solid var(--bx-border);}
.woocommerce table.shop_table img{width:72px;border-radius:10px;}
.woocommerce .cart_item .product-name a{font-weight:700;color:var(--bx-ink);}
.woocommerce .quantity input.qty{border:2px solid var(--bx-border);border-radius:12px;padding:10px;width:72px;text-align:center;font-family:inherit;}
.woocommerce a.remove{color:var(--bx-terracotta)!important;font-weight:700;}
.woocommerce .actions .coupon input{border:2px solid var(--bx-border);border-radius:999px;padding:12px 16px;font-family:inherit;}

/* Totaux */
.cart_totals,.woocommerce-checkout #order_review{background:#fff;border:1px solid var(--bx-border);border-radius:16px;padding:24px;}
.cart_totals h2,.woocommerce-checkout #order_review_heading{font-family:var(--bx-serif);font-weight:400;font-size:26px;margin:0 0 16px;}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{display:block;text-align:center;font-size:17px;padding:18px;}

/* Formulaire de commande */
.woocommerce-checkout .col2-set,.woocommerce form .form-row{margin-bottom:0;}
.woocommerce-checkout h3{font-family:var(--bx-serif);font-weight:400;font-size:24px;}
.woocommerce form .form-row{padding:8px 0;}
.woocommerce form .form-row label{font-weight:600;font-size:14px;margin-bottom:6px;display:block;}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout .select2-selection{border:2px solid var(--bx-border)!important;border-radius:12px!important;padding:12px 14px!important;font-family:inherit!important;min-height:auto;}
.woocommerce #payment{background:transparent;}
.woocommerce #payment ul.payment_methods{border:1px solid var(--bx-border);border-radius:14px;background:#fff;}
.woocommerce #payment div.place-order .button,
.woocommerce #place_order{width:100%;font-size:18px;padding:19px;}

/* « Informations complémentaires » sous « Détails de facturation » (empilés).
   NB : dans WooCommerce, #customer_details EST le .col2-set ; .col-1/.col-2 sont ses enfants directs. */
.woocommerce-checkout #customer_details{display:block;}
.woocommerce-checkout #customer_details > .col-1,
.woocommerce-checkout #customer_details > .col-2{float:none;width:auto;max-width:none;margin:0 0 18px;}

/* Layout 2 colonnes commande (desktop) : gauche (facturation) 1/2, droite (récap) 1/2 */
@media (min-width:900px){
  .woocommerce-checkout form.checkout{display:grid;grid-template-columns:1fr 1fr;gap:8px 34px;align-items:start;}
  .woocommerce-checkout #customer_details{grid-column:1;grid-row:1 / span 2;}
  .woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1;margin:0 0 12px;}
  .woocommerce-checkout #order_review{grid-column:2;grid-row:2;position:sticky;top:120px;}
}
.woocommerce-checkout #order_review_heading{font-family:var(--bx-serif);font-weight:400;text-align:left;}

/* ============ PANIER & COMMANDE — version BLOCS WooCommerce ============ */
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{padding-top:clamp(20px,3vw,40px);}
.wc-block-components-title,.wc-block-cart__totals-title,.wc-block-components-checkout-step__title{font-family:var(--bx-serif)!important;font-weight:400!important;}
.wc-block-cart-items__header,.wc-block-components-totals-item{font-family:var(--bx-sans);}
.wc-block-cart .wc-block-cart-items,.wc-block-components-totals-wrapper,.wc-block-components-order-summary{border-color:var(--bx-border);}
/* Cartouche total / résumé */
.wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.wc-block-checkout__sidebar .wc-block-components-order-summary{background:#fff;border:1px solid var(--bx-border);border-radius:16px;}
/* Champs de formulaire */
.wc-block-components-text-input input,.wc-block-components-address-form input,
.wc-block-components-select .components-form-token-field__input,
.wc-block-components-combobox input{border-radius:12px!important;}
/* Boutons blocs -> vert marque */
.wc-block-components-button.contained,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button{
  background:var(--bx-green)!important;color:#fff!important;border-radius:999px!important;
  font-weight:800!important;padding:18px 24px!important;font-family:inherit!important;
}
.wc-block-components-button.contained:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover{background:var(--bx-green-deep)!important;}
