/*
 * PixelBox — harmonisation WooCommerce, couche 1 (CSS pur, zéro changement de markup).
 * Mappe les classes standard WooCommerce (gabarits classiques : boutique, fiche produit,
 * compte) et des blocs Panier / Commande (wc-block-*) sur les jetons de tokens.css.
 * Aucun hook, aucun gabarit surchargé : le tunnel B2B (mu-plugins) n'est pas touché.
 * Les !important ne répondent qu'à ceux de Divi (badge promo, étoiles, prix de la grille).
 */

/* ------------------------------------------------------------------ */
/* Boutons                                                             */
/* ------------------------------------------------------------------ */
.woocommerce a.button,
.woocommerce-page a.button,
.woocommerce button.button,
.woocommerce-page button.button,
.woocommerce input.button,
.woocommerce-page input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce .single_add_to_cart_button,
.woocommerce .woocommerce-Button,
.woocommerce button.woocommerce-Button,
.woocommerce .woocommerce-button,
.woocommerce .wc-forward,
.wc-block-components-button,
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wc-block-mini-cart__footer-checkout,
.wp-block-button__link.wc-block-components-product-button__button,
.wc-block-components-product-button .wp-block-button__link{
  font-family:var(--font-sans);
  font-size:var(--text-body);
  font-weight:400;
  letter-spacing:0.01em;
  line-height:1.2;
  color:var(--color-bg);
  background:var(--color-ink);
  border:0 !important; /* Divi remet border:2px transparent au survol : le bouton grossissait de 4px */
  border-radius:var(--radius);
  padding:18px var(--space-4) !important; /* Divi (.et_button_no_icon …) impose .3em 1em en !important */
  line-height:1.2 !important;
  text-decoration:none;
  box-shadow:none;
  transition:none;
}
.woocommerce a.button:hover,
.woocommerce-page a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce .woocommerce-Button:hover,
.woocommerce .woocommerce-button:hover,
.wc-block-components-button:not(.is-link):hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover{
  color:var(--color-bg);
  background:var(--color-ink-soft);
  border:0 !important;
  padding:18px var(--space-4) !important;
}
.woocommerce a.button:after,
.woocommerce button.button:after,
.woocommerce input.button:after,
.woocommerce a.button.alt:after,
.woocommerce button.button.alt:after{content:none !important} /* flèche Divi au survol */
.woocommerce a.button.disabled,
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce .single_add_to_cart_button.disabled,
.wc-block-components-button:disabled{
  color:var(--color-ink-soft);
  background:var(--color-surface);
  border-color:var(--color-rule);
  opacity:1;
}
.woocommerce ul.products li.product .button{
  display:inline-block;
  margin-top:var(--space-2);
  padding:14px var(--space-3) !important;
  font-size:var(--text-small);
}
.wc-block-components-button.is-link,
.wc-block-components-button.is-link:hover{
  background:none;
  border:0;
  color:var(--color-ink);
  padding:0;
}
.wc-block-components-button .wc-block-components-button__text{font:inherit}

/* ------------------------------------------------------------------ */
/* Champs et formulaires                                               */
/* ------------------------------------------------------------------ */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .woocommerce-Input,
.woocommerce .input-text,
.woocommerce select,
.woocommerce .quantity .qty,
.woocommerce div.product form.cart .variations select,
.woocommerce-ordering select.orderby,
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="url"],
.wc-block-components-text-input input[type="number"],
.wc-block-components-textarea,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-form .wc-block-components-text-input input,
.wc-block-components-quantity-selector,
.wc-block-components-totals-coupon__input input,
.wc-block-components-select .components-custom-select-control__button{
  font-family:var(--font-sans);
  font-size:var(--text-body);
  color:var(--color-ink);
  background:var(--color-bg);
  border:1px solid var(--color-rule);
  border-radius:var(--radius);
  box-shadow:none;
  padding:14px var(--space-2);
  line-height:1.3;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.woocommerce .quantity .qty:focus,
.wc-block-components-text-input input:focus,
.wc-block-components-textarea:focus{
  border-color:var(--color-ink);
  outline:none;
  box-shadow:none;
}
.wc-block-components-text-input.is-active input,
.wc-block-components-text-input input:focus{border-color:var(--color-ink)}
.wc-block-components-text-input label,
.wc-block-components-combobox label{font-family:var(--font-sans);color:var(--color-ink-soft)}
.woocommerce form .form-row label,
.woocommerce-form__label,
.woocommerce div.product form.cart .variations label{
  font-family:var(--font-sans);
  font-size:var(--text-small);
  color:var(--color-ink);
  font-weight:400;
}
.woocommerce form .form-row .required{color:var(--color-ink-soft)}
.woocommerce .quantity .qty{width:5em;text-align:center;padding:14px var(--space-1)}
/* Divi cible ces champs avec #content et td : mêmes sélecteurs pour l'emporter par l'ordre */
.woocommerce .quantity input.qty,
.woocommerce-page .quantity input.qty,
.woocommerce #content .quantity input.qty,
.woocommerce-page #content .quantity input.qty,
.woocommerce-cart table.cart td.actions .coupon .input-text{
  background:var(--color-bg);
  border:1px solid var(--color-rule);
  border-radius:var(--radius);
  color:var(--color-ink);
  font-family:var(--font-sans);
  box-shadow:none;
}
.orderby,
.woocommerce div.product form.cart .variations td select,
.woocommerce-ordering select.orderby{
  font-family:var(--font-sans);
  font-size:var(--text-small);
  color:var(--color-ink);
  background:var(--color-bg);
  border:1px solid var(--color-rule);
  border-radius:var(--radius);
  padding:10px var(--space-2);
  height:auto;
  box-shadow:none;
}
.posted_in a,
.tagged_as a,
.woocommerce div.product form.cart .reset_variations,
.woocommerce .product_meta a{color:var(--color-ink)}
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce-EditAccountForm,
.woocommerce-address-fields{
  border:1px solid var(--color-rule);
  border-radius:var(--radius);
  padding:var(--space-4);
}
.woocommerce-form-login .woocommerce-form-login__rememberme{margin:var(--space-2) 0}
.wc-block-components-checkout-step__title,
.wc-block-components-title{font-family:var(--font-serif);font-weight:400}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]{border:1px solid var(--color-ink);border-radius:var(--radius)}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:checked{background:var(--color-ink);border-color:var(--color-ink)}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{color:var(--color-bg)}
.wc-block-components-radio-control__option,
.wc-block-components-radio-control .wc-block-components-radio-control__input{border-color:var(--color-rule)}
.wc-block-components-radio-control__input:checked{border-color:var(--color-ink)}
.wc-block-components-radio-control__input:checked:before{background:var(--color-ink)}
.wc-block-components-payment-method-label,
.wc-block-components-radio-control__label{font-family:var(--font-sans);color:var(--color-ink)}
.wc-block-components-radio-control-accordion-option,
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option{border-color:var(--color-rule);border-radius:var(--radius)}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted{box-shadow:inset 0 0 0 1px var(--color-ink)}

/* ------------------------------------------------------------------ */
/* Notices et messages : filet + monochrome                             */
/* ------------------------------------------------------------------ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-NoticeGroup .woocommerce-error,
.wc-block-components-notice-banner,
.wc-block-components-notice-banner.is-error,
.wc-block-components-notice-banner.is-success,
.wc-block-components-notice-banner.is-info,
.wc-block-components-notice-banner.is-warning,
.wc-block-store-notice{
  background:var(--color-bg);
  color:var(--color-ink);
  border:1px solid var(--color-rule);
  border-left:2px solid var(--color-ink);
  border-radius:var(--radius);
  padding:var(--space-2) var(--space-3);
  font-family:var(--font-sans);
  font-size:var(--text-small);
  line-height:var(--leading-body);
  box-shadow:none;
}
/* Divi impose color/font-size/padding/background en !important sur les notices : on répond à l'identique.
   Fond blanc partout ; message d'information (ex. confirmation d'adresse e-mail) cadré en ink,
   erreur cadrée en rouge (--color-alert). */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
body .woocommerce-message,
body .woocommerce-info,
body .woocommerce-error{ /* `body` : la feuille Customizer de Divi se charge après celle-ci */
  background:var(--color-bg) !important;
  color:var(--color-ink) !important;
  font-size:var(--text-small) !important;
  line-height:var(--leading-body) !important;
  padding:var(--space-2) var(--space-3) !important;
  border:1px solid var(--color-rule) !important;
  border-left:2px solid var(--color-ink) !important;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-2);
}
body .woocommerce-info{border:1px solid var(--color-ink) !important;border-left-width:2px !important}
body .woocommerce-error{border:1px solid var(--color-alert) !important;border-left-width:2px !important}
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button{order:2;margin-left:auto !important;float:none}
.woocommerce-message a.button.wc-forward,
.woocommerce-message a.button.wc-forward:hover,
.woocommerce-info a.button.wc-forward{
  background:var(--color-ink);
  color:var(--color-bg);
  border:1px solid var(--color-ink);
}
.woocommerce-message:before,
.woocommerce-info:before,
.woocommerce-error:before,
.woocommerce .woocommerce-message:before,
.woocommerce .woocommerce-info:before,
.woocommerce .woocommerce-error:before{display:none}
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a,
.woocommerce .woocommerce-message a,
.woocommerce .woocommerce-info a,
.woocommerce .woocommerce-error a{color:var(--color-ink)}
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce .woocommerce-message .button{padding:10px var(--space-2) !important;font-size:var(--text-small);margin-left:var(--space-2)}
.wc-block-components-notice-banner > svg{fill:var(--color-ink);background:none}
.wc-block-components-notice-banner .wc-block-components-notice-banner__content{color:var(--color-ink)}
.woocommerce ul.woocommerce-error,
.woocommerce ul.woocommerce-error li{list-style:none;margin:0}

/* ------------------------------------------------------------------ */
/* Titres, prix                                                         */
/* ------------------------------------------------------------------ */
.woocommerce-products-header__title,
.woocommerce div.product .product_title,
.woocommerce-account .entry-title,
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title{
  font-family:var(--font-serif);
  font-weight:400;
  font-size:var(--text-h2);
  line-height:var(--leading-title);
  letter-spacing:-0.01em;
  color:var(--color-ink);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product h2{
  font-family:var(--font-serif);
  font-weight:400;
  font-size:var(--text-h3);
  line-height:1.3;
  color:var(--color-ink);
  padding:var(--space-2) 0 0;
  margin:0;
}
.woocommerce div.product .woocommerce-tabs h2,
.woocommerce .related > h2,
.woocommerce .up-sells > h2,
.woocommerce .cross-sells > h2,
.woocommerce-cart .cart_totals h2,
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3,
.wc-block-components-checkout-step__title,
.wc-block-components-order-summary__button-text,
.wc-block-cart__totals-title,
.wc-block-components-title,
.wp-block-heading{
  font-family:var(--font-serif);
  font-weight:400;
  color:var(--color-ink);
}
.woocommerce div.product .woocommerce-tabs h2,
.woocommerce .related > h2,
.woocommerce .up-sells > h2,
.woocommerce-cart .cart_totals h2,
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3{font-size:var(--text-h3);line-height:1.3}
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce #content div.product p.price,
.woocommerce #content div.product span.price,
.woocommerce div.product p.price ins,
.woocommerce div.product .woocommerce-variation-price .price,
.woocommerce-Price-amount,
.wc-block-components-product-price,
.wc-block-components-product-price__value,
.wc-block-components-totals-item,
.wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-family:var(--font-sans) !important;
  color:var(--color-ink) !important;
  font-weight:400;
}
.woocommerce ul.products li.product .price{font-size:var(--text-small);margin-top:var(--space-1) !important}
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce #content div.product p.price,
.woocommerce #content div.product span.price{font-size:var(--text-lead)}
.woocommerce div.product p.price del,
.woocommerce ul.products li.product .price del{color:var(--color-ink-soft) !important;opacity:1}
.woocommerce div.product p.price ins,
.woocommerce ul.products li.product .price ins{text-decoration:none;font-weight:400}
.pxb-indispo{font-family:var(--font-sans);font-size:var(--text-small);color:var(--color-ink-soft)}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering,
.woocommerce .product_meta,
.woocommerce .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-tabs .panel,
.woocommerce-MyAccount-content,
.woocommerce .woocommerce-variation-availability,
.woocommerce .stock{
  font-family:var(--font-sans);
  font-size:var(--text-body);
  line-height:var(--leading-body);
  color:var(--color-ink-soft);
}
.woocommerce .stock.in-stock,
.woocommerce .stock.out-of-stock{color:var(--color-ink-soft)}
.woocommerce div.product .product_meta{display:none} /* SKU et catégorie : information redondante sur la fiche */

/* ------------------------------------------------------------------ */
/* Badge promo et étoiles : carrés, trait fin                           */
/* ------------------------------------------------------------------ */
.woocommerce span.onsale,
.wc-block-components-product-sale-badge,
.wc-block-grid__product-onsale{
  background:var(--color-ink) !important;
  color:var(--color-bg) !important;
  border:0 !important;
  border-radius:var(--radius) !important;
  box-shadow:none !important;
  font-family:var(--font-sans);
  font-size:var(--text-micro) !important;
  font-weight:400 !important;
  letter-spacing:0.02em;
  text-transform:uppercase;
  line-height:1 !important;
  min-height:0 !important;
  min-width:0 !important;
  padding:6px var(--space-1) !important;
  left:var(--space-2) !important;
  top:var(--space-2) !important;
  margin:0 !important;
}
.woocommerce .star-rating,
.wc-block-components-product-rating__stars,
.wc-block-grid__product-rating .star-rating{
  color:var(--color-ink) !important;
  font-size:var(--text-small);
}
.woocommerce .star-rating:before{color:var(--color-rule) !important}
.woocommerce .star-rating span:before{color:var(--color-ink) !important}
.woocommerce p.stars a{color:var(--color-ink)}
.woocommerce p.stars a:before{color:var(--color-rule)}
.woocommerce p.stars:hover a:before,
.woocommerce p.stars.selected a.active:before,
.woocommerce p.stars.selected a:not(.active):before{color:var(--color-ink)}

/* ------------------------------------------------------------------ */
/* Tableaux (compte, commandes, panier classique) et pagination        */
/* ------------------------------------------------------------------ */
.woocommerce table.shop_table,
.woocommerce-page table.shop_table,
.woocommerce table.woocommerce-orders-table,
.woocommerce-MyAccount-content table{
  border:0;
  border-top:1px solid var(--color-rule);
  border-collapse:collapse;
  border-radius:var(--radius);
  font-family:var(--font-sans);
  font-size:var(--text-small);
  color:var(--color-ink);
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td,
.woocommerce-page table.shop_table th,
.woocommerce-page table.shop_table td,
.woocommerce-MyAccount-content table th,
.woocommerce-MyAccount-content table td{
  border:0;
  border-bottom:1px solid var(--color-rule);
  padding:var(--space-2) var(--space-1);
  vertical-align:middle;
  background:transparent;
}
.woocommerce table.shop_table th{font-weight:400;color:var(--color-ink-soft);text-align:left}
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tfoot td{border-top:1px solid var(--color-rule)}
.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th{font-weight:400}
.wc-block-cart-items,
.wc-block-cart-items .wc-block-cart-items__header,
.wc-block-cart-items .wc-block-cart-item__wrap,
.wc-block-cart .wc-block-components-totals-wrapper,
.wc-block-components-order-summary-item,
.wc-block-components-order-summary,
.wc-block-cart-item__total,
.wc-block-components-totals-item{font-family:var(--font-sans);color:var(--color-ink)}
.wc-block-cart-items th{font-weight:400;color:var(--color-ink-soft);border-bottom:1px solid var(--color-rule)}
.wc-block-cart-items .wc-block-cart-items__row td,
.wc-block-cart-items td{border-bottom:1px solid var(--color-rule)}
.wc-block-cart .wc-block-components-totals-wrapper,
.wc-block-checkout .wc-block-components-totals-wrapper{border-top:1px solid var(--color-rule)}
.wc-block-components-sidebar-layout .wc-block-components-sidebar,
.wc-block-components-sidebar-layout .wc-block-components-main{font-family:var(--font-sans)}
.wc-block-cart__sidebar .wc-block-components-totals-item,
.is-large .wc-block-cart__sidebar{border-color:var(--color-rule)}
.wc-block-components-product-name,
.wc-block-components-product-metadata,
.wc-block-cart-item__quantity{color:var(--color-ink)}
.wc-block-cart-item__remove-link,
.wc-block-components-product-metadata__description{color:var(--color-ink-soft)}
.wc-block-components-panel__button{font-family:var(--font-sans);color:var(--color-ink)}
.wc-block-components-totals-coupon-link{color:var(--color-ink)}
.wc-block-components-quantity-selector{border:1px solid var(--color-rule);border-radius:var(--radius);box-shadow:none}
.wc-block-components-quantity-selector:after{border-color:var(--color-rule);box-shadow:none;border-radius:var(--radius)}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input,
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button{color:var(--color-ink);font-family:var(--font-sans)}
.wc-block-components-order-summary-item__quantity{background:var(--color-ink);border-color:var(--color-bg);color:var(--color-bg);box-shadow:none}
.wc-block-components-order-summary-item__image img,
.wc-block-cart-item__image img{border-radius:var(--radius)}
.wc-block-checkout__sidebar .wc-block-components-panel,
.wc-block-checkout__main .wc-block-components-checkout-step{border-color:var(--color-rule)}
.wc-block-components-checkout-step__container:after{border-color:var(--color-rule)}
.wc-block-components-address-card,
.wc-block-components-shipping-rates-control__package,
.wc-block-components-radio-control--highlight-checked{border-color:var(--color-rule);border-radius:var(--radius)}
.wc-block-components-address-card__edit,
.wc-block-components-checkout-return-to-cart-button{color:var(--color-ink)}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-family:var(--font-serif);font-weight:400}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-pagination .page-numbers{border:0;border-radius:var(--radius)}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li .page-numbers{
  font-family:var(--font-sans);
  font-size:var(--text-small);
  color:var(--color-ink);
  border:1px solid var(--color-rule);
  border-radius:var(--radius);
  padding:10px var(--space-2);
  margin-right:var(--space-1);
  min-width:0;
  line-height:1;
  background:var(--color-bg);
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus{color:var(--color-bg);background:var(--color-ink);border-color:var(--color-ink)}

/* ------------------------------------------------------------------ */
/* Fil d'ariane, tri, onglets, compte, divers                          */
/* ------------------------------------------------------------------ */
.woocommerce .woocommerce-breadcrumb,
.wc-block-breadcrumbs{
  font-family:var(--font-sans);
  font-size:var(--text-micro);
  color:var(--color-ink-soft);
  margin:0 0 var(--space-4);
}
.woocommerce .woocommerce-breadcrumb a{color:var(--color-ink-soft)}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{font-size:var(--text-small)}
.woocommerce .woocommerce-ordering select.orderby{padding:10px var(--space-2);font-size:var(--text-small)}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 var(--space-4);border-bottom:1px solid var(--color-rule)}
.woocommerce div.product .woocommerce-tabs ul.tabs:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:none;
  border:0;
  border-radius:var(--radius);
  margin:0 var(--space-3) -1px 0;
  padding:0;
  box-shadow:none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font-family:var(--font-sans);
  font-size:var(--text-small);
  font-weight:400;
  color:var(--color-ink-soft);
  padding:var(--space-1) 0 var(--space-2);
  border-bottom:1px solid transparent;
  text-decoration:none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--color-ink);border-bottom-color:var(--color-ink)}
.woocommerce div.product .woocommerce-product-gallery img,
.woocommerce ul.products li.product img,
.woocommerce-product-gallery__image{border-radius:var(--radius)}
.woocommerce ul.products li.product .et_shop_image .et_overlay{border-radius:var(--radius);border-color:var(--color-rule)}
.woocommerce ul.products li.product .et_shop_image .et_overlay:before{color:var(--color-ink)}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img{border-radius:var(--radius);opacity:.6}
.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active{opacity:1;outline:1px solid var(--color-ink)}
.woocommerce div.product form.cart .reset_variations{font-size:var(--text-micro);color:var(--color-ink-soft)}
.woocommerce div.product form.cart table.variations td.label{padding-right:var(--space-2)}

/* Divi impose des puces via #left-area ul : sélecteurs de même poids pour l'emporter */
.woocommerce-MyAccount-navigation ul,
#left-area .woocommerce-MyAccount-navigation ul,
.entry-content .woocommerce-MyAccount-navigation ul,
.et-l--body .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--color-rule);line-height:inherit}
#left-area .woocommerce-MyAccount-navigation ul li,
.entry-content .woocommerce-MyAccount-navigation ul li{list-style:none;padding:0}
.woocommerce-MyAccount-navigation ul li{border-bottom:1px solid var(--color-rule);margin:0}
.woocommerce-MyAccount-navigation ul li a{
  display:block;
  padding:var(--space-2) 0;
  font-family:var(--font-sans);
  font-size:var(--text-small);
  color:var(--color-ink-soft);
  text-decoration:none;
}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover{color:var(--color-ink)}
.woocommerce-MyAccount-navigation ul li.is-active a{box-shadow:inset 2px 0 0 var(--color-ink);padding-left:var(--space-2)}
.woocommerce-account .addresses .title .edit,
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button{font-size:var(--text-micro)}
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button{padding:10px var(--space-2) !important}
.woocommerce-account .woocommerce-Address address{font-family:var(--font-sans);color:var(--color-ink-soft);line-height:var(--leading-body)}
.woocommerce-account .u-columns .col-1,
.woocommerce-account .u-columns .col-2{font-family:var(--font-sans)}
.woocommerce .woocommerce-privacy-policy-text,
.woocommerce .woocommerce-LostPassword,
.woocommerce-form-register .woocommerce-privacy-policy-text{font-family:var(--font-sans);font-size:var(--text-micro);color:var(--color-ink-soft)}
.woocommerce .woocommerce-privacy-policy-text a,
.woocommerce .woocommerce-LostPassword a{color:var(--color-ink)}
.woocommerce-account .woocommerce-MyAccount-content p,
.woocommerce-account .woocommerce-notices-wrapper + p{font-family:var(--font-sans);color:var(--color-ink-soft)}

/* ------------------------------------------------------------------ */
/* Blocs Panier / Commande : leurs feuilles se chargent après celle-ci  */
/* (spécificité renforcée par `body`) — radius 0 et filets rule partout */
/* ------------------------------------------------------------------ */
body .wc-block-components-quantity-selector,
body .wc-block-components-quantity-selector:after,
body .wc-block-components-text-input input,
body .wc-block-components-textarea,
body .wc-block-components-combobox .components-combobox-control__input,
body .wc-block-components-select .components-custom-select-control__button,
body .wc-block-components-country-input input,
body .wc-block-components-state-input input,
body .wc-block-components-radio-control-accordion-option,
body .wc-block-components-radio-control--highlight-checked,
body .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"],
body .wc-block-components-button,
body .wc-block-components-address-card,
body .wc-block-components-notice-banner,
body .wc-block-components-order-summary-item__image img,
body .wc-block-components-totals-coupon__input input,
body .wc-block-components-panel,
body .wc-block-components-shipping-rates-control__package,
body .wc-block-checkout__sidebar .wc-block-components-panel{
  border-radius:var(--radius);
}
body .wc-block-components-quantity-selector{border:1px solid var(--color-rule);box-shadow:none;width:auto;min-width:0}
body .wc-block-components-quantity-selector:after{border:0;box-shadow:none}
body .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{font-family:var(--font-sans);color:var(--color-ink);min-height:44px}
body .wc-block-components-text-input input,
body .wc-block-components-textarea,
body .wc-block-components-combobox .components-combobox-control__input,
body .wc-block-components-select .components-custom-select-control__button{
  border:1px solid var(--color-rule);
  color:var(--color-ink);
  font-family:var(--font-sans);
}
body .wc-block-components-text-input.is-active input,
body .wc-block-components-text-input input:focus,
body .wc-block-components-textarea:focus,
body .wc-block-components-combobox.is-active .components-combobox-control__input{border-color:var(--color-ink);box-shadow:none;outline:none}
body .wc-block-components-checkout-step__heading .wc-block-components-checkout-step__title,
body .wc-block-cart__totals-title,
body .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-family:var(--font-serif);font-weight:400;color:var(--color-ink);text-transform:none;letter-spacing:0}
body .wc-block-components-checkout-step__description,
body .wc-block-components-checkout-step p{font-family:var(--font-sans);color:var(--color-ink-soft)}
body .wc-block-components-radio-control__input:checked,
body .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:checked{border-color:var(--color-ink);background:var(--color-ink)}
body .wc-block-components-radio-control__input:checked:before{background:var(--color-ink)}
body .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
body .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted{box-shadow:inset 0 0 0 1px var(--color-ink);border-color:var(--color-ink)}
body .wc-block-components-checkout-place-order-button,
body .wc-block-cart__submit-button{width:100%}
body .wc-block-components-order-summary-item__quantity{background:var(--color-ink);color:var(--color-bg);border-color:var(--color-bg);box-shadow:none;border-radius:0}

/* Les blocs Woo ciblent leurs champs avec des sélecteurs d'attribut (input[type=email]) et des
   chaînes de deux classes : radius 0 et filet rule imposés pour tout le tunnel blocs. */
.wc-block-cart *,
.wc-block-checkout *,
.wc-block-components-sidebar-layout *{
  border-radius:var(--radius) !important;
}
.wc-block-cart .wc-block-components-radio-control__input,
.wc-block-checkout .wc-block-components-radio-control__input,
.wc-block-cart .wc-block-components-radio-control__input:before,
.wc-block-checkout .wc-block-components-radio-control__input:before,
.wc-block-checkout .wc-block-components-spinner,
.wc-block-cart .wc-block-components-order-summary-item__quantity,
.wc-block-checkout .wc-block-components-order-summary-item__quantity{border-radius:50% !important}
body .wc-block-components-text-input input[type="text"],
body .wc-block-components-text-input input[type="email"],
body .wc-block-components-text-input input[type="tel"],
body .wc-block-components-text-input input[type="url"],
body .wc-block-components-text-input input[type="number"],
body .wc-block-components-textarea,
body .wc-block-components-combobox .components-combobox-control__input,
body .wc-block-components-select .components-custom-select-control__button,
body .wc-block-components-form .wc-block-components-text-input input,
body .wc-block-components-address-form .wc-block-components-text-input input{
  border:1px solid var(--color-rule) !important;
  box-shadow:none !important;
}
body .wc-block-components-text-input.is-active input,
body .wc-block-components-text-input input:focus,
body .wc-block-components-textarea:focus,
body .wc-block-components-combobox.is-active .components-combobox-control__input,
body .wc-block-components-text-input.has-error input{border-color:var(--color-ink) !important}
body .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option,
body .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option{border-color:var(--color-rule)}
body .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
body .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted{border-color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-ink)}
body .wc-block-components-checkout-order-summary__title-text,
body .wc-block-components-checkout-order-summary__title{font-family:var(--font-serif);font-weight:400;color:var(--color-ink)}
body .wc-block-components-country-input .wc-block-components-combobox .components-combobox-control__input,
body .wc-block-components-state-input .wc-block-components-combobox .components-combobox-control__input,
body .wc-block-components-combobox .components-combobox-control__input,
body .wc-block-components-select .wc-block-components-select__container,
body .wc-block-components-select .components-custom-select-control__button{border:1px solid var(--color-rule) !important}
body .wc-block-components-combobox.is-active .components-combobox-control__input,
body .wc-block-components-select.is-active .components-custom-select-control__button{border-color:var(--color-ink) !important}
.woocommerce-account .woocommerce h2,
.woocommerce-account .woocommerce h3,
.woocommerce-cart .woocommerce h2,
.woocommerce-checkout .woocommerce h2{font-family:var(--font-serif);font-weight:400;font-size:var(--text-h3);line-height:1.3;color:var(--color-ink)}

/* Divi (icône de bouton désactivée) : .et_button_no_icon.woocommerce-page button.button{padding:.3em 1em!important}
   — même spécificité ici, déclaré après, pour rendre le padding du preset Bouton. */
.et_button_no_icon.woocommerce a.button,
.et_button_no_icon.woocommerce-page a.button,
.et_button_no_icon.woocommerce button.button,
.et_button_no_icon.woocommerce-page button.button,
.et_button_no_icon.woocommerce input.button,
.et_button_no_icon.woocommerce-page input.button,
.et_button_no_icon.woocommerce #respond input#submit,
.et_button_no_icon.woocommerce-page #respond input#submit,
.et_button_no_icon.woocommerce a.button:hover,
.et_button_no_icon.woocommerce-page a.button:hover,
.et_button_no_icon.woocommerce button.button:hover,
.et_button_no_icon.woocommerce-page button.button:hover,
.et_button_no_icon.woocommerce input.button:hover,
.et_button_no_icon.woocommerce-page input.button:hover,
.et_button_no_icon.woocommerce a.button.alt,
.et_button_no_icon.woocommerce-page a.button.alt,
.et_button_no_icon.woocommerce button.button.alt,
.et_button_no_icon.woocommerce-page button.button.alt,
.et_button_no_icon.woocommerce input.button.alt,
.et_button_no_icon.woocommerce-page input.button.alt,
.et_button_no_icon.woocommerce a.button.alt:hover,
.et_button_no_icon.woocommerce-page a.button.alt:hover,
.et_button_no_icon.woocommerce button.button.alt:hover,
.et_button_no_icon.woocommerce-page button.button.alt:hover,
.et_button_no_icon.woocommerce button.button.alt.disabled,
.et_button_no_icon.woocommerce-page button.button.alt.disabled{padding:18px var(--space-4) !important;line-height:1.2 !important}
.et_button_no_icon.woocommerce ul.products li.product .button,
.et_button_no_icon.woocommerce-page ul.products li.product .button,
.et_button_no_icon.woocommerce ul.products li.product .button:hover,
.et_button_no_icon.woocommerce-page ul.products li.product .button:hover{padding:14px var(--space-3) !important}
.et_button_no_icon.woocommerce .woocommerce-message .button,
.et_button_no_icon.woocommerce-page .woocommerce-message .button,
.et_button_no_icon.woocommerce .woocommerce-info .button,
.et_button_no_icon.woocommerce-page .woocommerce-info .button,
.et_button_no_icon.woocommerce-account .woocommerce-orders-table__cell-order-actions .button,
.et_button_no_icon.woocommerce-page .woocommerce-orders-table__cell-order-actions .button,
.et_button_no_icon.woocommerce .woocommerce-message .button:hover,
.et_button_no_icon.woocommerce-page .woocommerce-message .button:hover,
.et_button_no_icon.woocommerce .woocommerce-info .button:hover,
.et_button_no_icon.woocommerce-page .woocommerce-info .button:hover,
.et_button_no_icon.woocommerce-account .woocommerce-orders-table__cell-order-actions .button:hover,
.et_button_no_icon.woocommerce-page .woocommerce-orders-table__cell-order-actions .button:hover{padding:10px var(--space-2) !important}

/* ------------------------------------------------------------------ */
/* Vignettes de couleur (assets/js/product-form.js)                    */
/* ------------------------------------------------------------------ */
.pbx-has-swatches td.value select{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;opacity:0;overflow:hidden;clip:rect(0 0 0 0);pointer-events:none}
.pbx-has-swatches td.value{position:relative}
.pbx-swatches{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0 0 var(--space-1)}
.pbx-swatch{
  width:56px;height:56px;padding:2px;margin:0;
  border:1px solid var(--color-rule);border-radius:var(--radius);
  background:var(--color-bg);color:var(--color-ink);
  font:inherit;font-size:var(--text-small);line-height:1;
  cursor:pointer;display:inline-flex;align-items:center;justify-content:center;
  transition:none;
}
.pbx-swatch img{width:100%;height:100%;object-fit:cover;display:block;border-radius:var(--radius)}
.pbx-swatch:hover{border-color:var(--color-ink)}
.pbx-swatch.is-selected,
.pbx-swatch[aria-checked="true"]{border-color:var(--color-ink);outline:2px solid var(--color-ink);outline-offset:2px}
.pbx-swatch.is-unavailable{opacity:.35;cursor:not-allowed}
.pbx-swatch.is-unavailable img{filter:grayscale(1)}
.pbx-swatch-current{font-family:var(--font-sans);font-size:var(--text-small);color:var(--color-ink)}
.pbx-swatch-current strong{font-weight:600}
/* La ligne d'attribut passe en colonne : libellé + couleur active sur une ligne, vignettes dessous */
.woocommerce div.product form.cart table.variations tr.pbx-has-swatches{display:flex;flex-direction:column;align-items:flex-start;padding:0 !important} /* Divi : #content-area table tr{padding:.857em .587em}, inerte en table-row mais actif en flex */
.woocommerce div.product form.cart table.variations tr.pbx-has-swatches th.label,
.woocommerce div.product form.cart table.variations tr.pbx-has-swatches td.value{display:block;width:auto;padding:0 !important;text-align:left;line-height:1.4}
.woocommerce div.product form.cart table.variations tr.pbx-has-swatches th.label{margin-bottom:var(--space-1);white-space:nowrap}
.woocommerce div.product form.cart table.variations tr.pbx-has-swatches th.label label{margin:0;display:inline;font-size:var(--text-small);color:var(--color-ink-soft)}
.woocommerce div.product form.cart .pbx-has-swatches .reset_variations{display:none !important} /* une vignette est toujours sélectionnée */

/* ------------------------------------------------------------------ */
/* Bloc d'achat : quantité libellée, bouton pleine largeur, paiements   */
/* rapides sous un filet « Acheter maintenant »                         */
/* ------------------------------------------------------------------ */
.woocommerce div.product form.cart.pbx-cart-form .woocommerce-variation-add-to-cart,
.woocommerce div.product form.cart.pbx-cart-form:not(.variations_form){display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}
.woocommerce div.product form.cart.pbx-cart-form .pbx-qty-label{font-family:var(--font-sans);font-size:var(--text-small);color:var(--color-ink-soft);margin:0}
.woocommerce div.product form.cart.pbx-cart-form div.quantity{float:none;margin:0}
.woocommerce div.product form.cart.pbx-cart-form .single_add_to_cart_button,
.woocommerce div.product form.cart.pbx-cart-form .woocommerce-variation-add-to-cart .single_add_to_cart_button{flex:0 0 100%;width:100%;display:block;float:none;margin:var(--space-1) 0 0}
.woocommerce div.product form.cart.pbx-cart-form .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button{opacity:.35}
#wc-stripe-express-checkout-button-separator{display:none !important} /* remplacé par le filet ci-dessous */
.pbx-express-title{display:none;align-items:center;gap:var(--space-2);margin:var(--space-3) 0 var(--space-2);font-family:var(--font-sans);font-size:var(--text-micro);color:var(--color-ink-soft);letter-spacing:0.02em;text-transform:uppercase}
.pbx-express-title.is-visible{display:flex}
.pbx-express-title::before,.pbx-express-title::after{content:"";flex:1;height:1px;background:var(--color-rule)}
#wc-stripe-express-checkout-element{margin-top:0}

/* Avis : le bouton Submit (#respond input#submit) — Divi lui rend une bordure 2px et un padding
   réduit au survol avec des sélecteurs à identifiants ; mêmes sélecteurs ici, déclarés après. */
.woocommerce #respond input#submit,
.woocommerce-page #respond input#submit,
.woocommerce #respond input#submit:hover,
.woocommerce-page #respond input#submit:hover,
.woocommerce #respond input#submit.alt,
.woocommerce #respond input#submit.alt:hover,
.et_button_no_icon.woocommerce #respond input#submit,
.et_button_no_icon.woocommerce-page #respond input#submit,
.et_button_no_icon.woocommerce #respond input#submit:hover,
.et_button_no_icon.woocommerce-page #respond input#submit:hover{
  padding:18px var(--space-4) !important;
  border:0 !important;
  line-height:1.2 !important;
  font-size:var(--text-body) !important;
  border-radius:var(--radius) !important;
}
.woocommerce #respond input#submit:hover,
.woocommerce-page #respond input#submit:hover{background:var(--color-ink-soft) !important;color:var(--color-bg) !important}
.woocommerce #review_form .comment-form-rating label,
.woocommerce #review_form .comment-form-comment label,
.woocommerce #review_form .comment-form-author label,
.woocommerce #review_form .comment-form-email label{font-family:var(--font-sans);font-size:var(--text-small);color:var(--color-ink)}
.woocommerce #review_form #respond textarea,
.woocommerce #review_form #respond input[type="text"],
.woocommerce #review_form #respond input[type="email"]{border:1px solid var(--color-rule);border-radius:var(--radius);background:var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);padding:14px var(--space-2);box-shadow:none}
.woocommerce #review_form #respond textarea:focus,
.woocommerce #review_form #respond input:focus{border-color:var(--color-ink);outline:none}

/* ------------------------------------------------------------------ */
/* Boucle produits : vignettes de variations entre le visuel et le nom */
/* ------------------------------------------------------------------ */
.woocommerce ul.products li.product .pbx-loop-variations{
  display:flex;
  align-items:center;
  gap:var(--space-1);
  margin:0 0 var(--space-3);
}
.woocommerce ul.products li.product .pbx-loop-variation{
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:1px solid var(--color-rule);
  border-radius:var(--radius);
  overflow:hidden;
  background:var(--color-bg);
  color:var(--color-ink-soft);
  font-size:var(--text-small);
  line-height:1;
  text-decoration:none;
  transition:border-color .15s ease;
}
.woocommerce ul.products li.product .pbx-loop-variation:hover,
.woocommerce ul.products li.product .pbx-loop-variation:focus-visible{border-color:var(--color-ink);color:var(--color-ink)}
.woocommerce ul.products li.product .pbx-loop-variation img{
  display:block;
  width:100% !important;
  height:100% !important;
  max-width:none;
  margin:0 !important;
  padding:0;
  object-fit:cover;
}

/* ------------------------------------------------------------------ */
/* Fiche produit (lot 3) : axes uniques, style de pose, prix unique      */
/* ------------------------------------------------------------------ */
/* Axe à valeur unique : ligne masquée (classe PHP sur le select via :has(), doublée par la classe JS sur la ligne) */
.woocommerce div.product form.cart table.variations tr.pbx-axe-unique-row,
.woocommerce div.product form.cart table.variations tr:has(select.pbx-axe-unique){display:none}
/* Finition pilotée par les radios de style de pose : le select reste dans le DOM (valeur soumise), hors écran */
.woocommerce div.product form.cart table.variations tr.pbx-pose-row td.value select{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;opacity:0;overflow:hidden;clip:rect(0 0 0 0);pointer-events:none}
.woocommerce div.product form.cart table.variations tr.pbx-pose-row td.value{position:relative}
.woocommerce div.product form.cart table.variations tr.pbx-pose-row .reset_variations{display:none !important}
/* Même mise en page que la ligne des vignettes : libellé sur une ligne, choix dessous */
.woocommerce div.product form.cart table.variations tr.pbx-pose-row{display:flex;flex-direction:column;align-items:flex-start;padding:0 !important;margin-top:var(--space-2)}
.woocommerce div.product form.cart table.variations tr.pbx-pose-row th.label,
.woocommerce div.product form.cart table.variations tr.pbx-pose-row td.value{display:block;width:auto;padding:0 !important;text-align:left;line-height:1.4}
.woocommerce div.product form.cart table.variations tr.pbx-pose-row th.label{margin-bottom:var(--space-1)}
.woocommerce div.product form.cart table.variations tr.pbx-pose-row th.label label{margin:0;display:inline;font-size:var(--text-small);color:var(--color-ink-soft)}
.pbx-pose{display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0;border:0;min-width:0}
.pbx-pose-choix{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--space-1);
  margin:0;
  font-family:var(--font-sans);
  font-size:var(--text-body);
  font-weight:400;
  color:var(--color-ink);
  cursor:pointer;
}
.pbx-pose-choix input.pbx-pose-input{width:16px;height:16px;margin:0;flex:none;accent-color:var(--color-ink)}
.pbx-pose-delta,
.pbx-pose-note{font-size:var(--text-small);color:var(--color-ink-soft);white-space:nowrap}
.pbx-pose-delta .woocommerce-Price-amount{font-size:inherit;color:inherit !important}
.pbx-pose-choix.is-unavailable{color:var(--color-ink-soft);cursor:not-allowed}
.pbx-pose-choix.is-unavailable input.pbx-pose-input{accent-color:var(--color-rule)}
/* Un seul prix, sous le titre : le prix natif du formulaire est masqué (la disponibilité reste) */
.woocommerce div.product form.cart .woocommerce-variation-price{display:none}

/* ------------------------------------------------------------------ */
/* Archive de gamme : une carte par variation (pixelbox-decouvrabilite) */
/* ------------------------------------------------------------------ */
.woocommerce ul.products li.product.pbx-carte .pbx-carte-lien{display:block;color:var(--color-ink);text-decoration:none}
.woocommerce ul.products li.product.pbx-carte .pbx-carte-visuel{
  display:block;
  aspect-ratio:1/1;
  overflow:hidden;
  background:var(--color-glass-1);
  border:1px solid var(--color-rule);
  border-radius:var(--radius);
  transition:border-color .15s ease;
}
.woocommerce ul.products li.product.pbx-carte .pbx-carte-visuel img{
  display:block;
  width:100% !important;
  height:100% !important;
  max-width:none;
  margin:0 !important;
  padding:0;
  object-fit:cover;
  border-radius:var(--radius);
}
.woocommerce ul.products li.product.pbx-carte:hover .pbx-carte-visuel,
.woocommerce ul.products li.product.pbx-carte .pbx-carte-lien:focus-visible .pbx-carte-visuel{border-color:var(--color-ink)}
.woocommerce ul.products li.product.pbx-carte .pbx-carte-corps{display:block}
.woocommerce ul.products li.product.pbx-carte .pbx-carte-attributs{
  display:block;
  margin-top:var(--space-1);
  font-family:var(--font-sans);
  font-size:var(--text-small);
  line-height:1.4;
  color:var(--color-ink-soft);
}
.woocommerce ul.products li.product.pbx-carte .price{display:block}
.woocommerce ul.products li.product .pbx-carte-option{
  display:inline-block;
  margin-top:var(--space-1);
  padding:2px var(--space-1);
  border:1px solid var(--color-rule);
  border-radius:var(--radius);
  font-family:var(--font-sans);
  font-size:var(--text-micro);
  line-height:1.4;
  letter-spacing:0.02em;
  text-transform:uppercase;
  color:var(--color-ink-soft);
}

/* ------------------------------------------------------------------ */
/* Archives regroupées (gabarit Theme Builder) : blocs, filtres natifs  */
/* ------------------------------------------------------------------ */
.pbx-archive .woocommerce-result-count{float:none;display:block;margin:0 0 var(--space-1)} /* WooCommerce le flotte à gauche : il collait au titre du premier bloc */
.pbx-groupe{margin:0 0 var(--space-6)}
.pbx-groupe-titre{
  font-family:var(--font-serif);
  font-weight:400;
  font-size:var(--text-h3);
  line-height:1.3;
  color:var(--color-ink);
  margin:0 0 var(--space-3);
  padding:0 0 var(--space-1);
  border-bottom:1px solid var(--color-rule);
}
.pbx-groupe-titre a{color:var(--color-ink);text-decoration:none}
.pbx-groupe-titre a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
/* Rythme vertical de l'archive (gabarit Theme Builder) : fil d'Ariane 16 → titre 16 → barre 16 → compteur 8 → blocs */
.et_pb_code_inner > .woocommerce-breadcrumb{margin:0 0 var(--space-2)}
.et_pb_code_inner > .woocommerce-products-header{margin:0 0 var(--space-2)}
.et_pb_code_inner > .woocommerce-products-header .woocommerce-products-header__title{margin:0;padding:0}
.et_pb_code_inner > .woocommerce-products-header .term-description{margin:var(--space-1) 0 0}
/* Barre de filtres : une ligne, un <details> par attribut, valeurs en panneau superposé (aucune ombre : filet) */
.pbx-filtres{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-1) var(--space-3);
  margin:0 0 var(--space-2);
  padding:var(--space-1) 0;
  border-top:1px solid var(--color-rule);
  border-bottom:1px solid var(--color-rule);
}
.pbx-filtres-titre{
  font-family:var(--font-sans);
  font-size:var(--text-micro);
  letter-spacing:0.04em;
  text-transform:uppercase;
  color:var(--color-ink-soft);
}
.pbx-filtre{position:relative;margin:0}
.pbx-filtre-titre{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:var(--space-1) 0;
  margin:0;
  list-style:none;
  cursor:pointer;
  font-family:var(--font-sans);
  font-size:var(--text-small);
  font-weight:400;
  color:var(--color-ink);
}
.pbx-filtre-titre::-webkit-details-marker{display:none}
.pbx-filtre-titre::after{content:"";width:6px;height:6px;border-right:1px solid var(--color-ink);border-bottom:1px solid var(--color-ink);transform:translateY(-2px) rotate(45deg);flex:none}
.pbx-filtre[open] > .pbx-filtre-titre::after{transform:translateY(2px) rotate(-135deg)}
.pbx-filtre-actif{color:var(--color-ink-soft)}
.pbx-filtre-actif::before{content:": "}
/* Divi impose des puces via #left-area ul : sélecteurs de même poids pour l'emporter */
.pbx-filtre ul,
#left-area .pbx-filtre ul,
.et-l--body .pbx-filtre ul{
  position:absolute;
  top:100%;
  left:0;
  z-index:20;
  min-width:360px;
  max-width:min(600px,calc(100vw - 2 * var(--space-2)));
  margin:0;
  padding:var(--space-2);
  background:var(--color-bg);
  border:1px solid var(--color-rule);
  list-style:none;
  line-height:inherit;
  display:flex;
  flex-wrap:wrap;
  gap:4px var(--space-2);
}
#left-area .pbx-filtre ul li,
.et-l--body .pbx-filtre ul li{list-style:none;padding:0}
.woocommerce .pbx-filtre ul li,
.pbx-filtre ul li{padding:2px 0;margin:0;font-family:var(--font-sans);font-size:var(--text-small);color:var(--color-ink-soft);white-space:nowrap}
.pbx-filtre ul li a{color:var(--color-ink-soft);text-decoration:none}
.pbx-filtre ul li a:hover{color:var(--color-ink)}
.pbx-filtre ul li.chosen a,
.pbx-filtre ul li.chosen{color:var(--color-ink)}
.woocommerce .pbx-filtre ul li.chosen a::before,
.pbx-filtre ul li.chosen a::before{content:"";display:inline-block;width:6px;height:6px;background:var(--color-ink);margin-right:var(--space-1);vertical-align:middle}
.pbx-filtre .count{color:var(--color-ink-soft)}
/* Filtres actifs : pastilles à retirer, en fin de ligne */
.pbx-filtres-actifs{margin-left:auto}
.pbx-filtres-actifs ul,
#left-area .pbx-filtres-actifs ul,
.et-l--body .pbx-filtres-actifs ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-1);line-height:inherit}
.woocommerce .pbx-filtres-actifs ul li,
.pbx-filtres-actifs ul li{list-style:none;padding:0;margin:0}
.woocommerce .pbx-filtres-actifs ul li.chosen a,
.pbx-filtres-actifs ul li.chosen a{
  display:inline-block;
  padding:2px var(--space-1);
  border:1px solid var(--color-ink);
  border-radius:var(--radius);
  font-family:var(--font-sans);
  font-size:var(--text-micro);
  color:var(--color-ink);
  text-decoration:none;
}
.woocommerce .pbx-filtres-actifs ul li.chosen a::before,
.pbx-filtres-actifs ul li.chosen a::before{content:"× ";background:none;width:auto;height:auto;margin:0}
/* Fiche : lien vers la collection */
.woocommerce div.product .summary .pbx-product-collection{font-family:var(--font-sans);font-size:var(--text-small);color:var(--color-ink-soft);margin:0 0 var(--space-3)}
.woocommerce div.product .summary .pbx-product-collection a{color:var(--color-ink)}
