/* popup.css F_band : D socle + B (commande, barre mobile, cadre 1 rangee) + A (RTL, toast, unstyle) ; bandeau plein c1 ; scope .bsf-prod-modal,
   fragment a 0-3-0 (.bsf-prod-modal.is-open, pose par le JS avant injection), repli sur chaque variable. !important documentes : garde du pied, onglets, text-align WordPress. */

/* 1. Jetons */
.bsf-prod-modal{--pp-c1:var(--space-c1,var(--brand,#0C304C));--pp-c2:var(--space-c2,#fff);--pp-ink:#0f172a;--pp-ink2:#334155;--pp-muted:#64748b;--pp-line:#e6eaf0;--pp-soft:#f6f7f9;--pp-tint:#f1f5f9;--pp-font:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--surface1:#fff;--surface2:#f8fafc;--border:#e6eaf0;--text:#0f172a;--muted:#64748b;--primary:var(--pp-c1);--bsf-status-success-500:#059669}
@supports (color:color-mix(in srgb,#000 10%,#fff)){.bsf-prod-modal{--pp-tint:color-mix(in srgb,var(--pp-c1) 7%,#fff)}}

/* 2. Cadre : grille, rangee 1 = bandeau c1 [titre | outils | x], rangee 2 = corps defilant */
body.bsf-prod-modal-open{overflow:hidden}
.bsf-prod-modal{position:fixed;inset:0;z-index:99980;display:none;font-family:var(--pp-font);font-size:15px;line-height:1.5;color:var(--pp-ink);text-align:start}
.bsf-prod-modal.is-open{display:block}
.bsf-prod-modal *{box-sizing:border-box}
.bsf-prod-modal__backdrop{position:absolute;inset:0;background:rgba(6,12,22,.66)}
.bsf-prod-modal__dialog{position:relative;margin:4vh auto;width:min(1040px,calc(100% - 32px));max-height:92vh;display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:auto minmax(0,1fr);background:var(--pp-c1);color:var(--pp-ink);border-radius:18px;box-shadow:0 32px 90px rgba(0,0,0,.35);overflow:hidden}
.bsf-prod-modal__head{grid-area:1/1;display:flex;align-items:center;min-width:0;min-height:60px;padding-block:10px;padding-inline:24px 12px;border:0;background:var(--pp-c1);color:var(--pp-c2)}
.bsf-prod-modal .bsf-prod-modal__title{flex:1 1 auto;min-width:0;margin:0;padding:0;font:600 15px/1.3 var(--pp-font);color:var(--pp-c2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bsf-prod-modal__foot{grid-area:1/2;display:flex;align-items:center;gap:6px;padding-block:10px;padding-inline:0 6px;border:0;background:var(--pp-c1);color:var(--pp-c2)}
.bsf-prod-modal .bsf-prod-modal__close{grid-area:1/3;align-self:center;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;margin:0;margin-inline-end:12px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.16);color:var(--pp-c2);cursor:pointer;font:400 26px/1 var(--pp-font)}
.bsf-prod-modal .bsf-prod-modal__close:hover{background:rgba(255,255,255,.3)}
.bsf-prod-modal .bsf-prod-modal__close svg{width:20px;height:20px;stroke:currentColor}
/* Garde (priorite forcee) : une regle hote sur button encadre Partager sur social ; border/background/box-shadow/color verrouilles */
.bsf-prod-modal button.bsf-prod-modal__share,.bsf-prod-modal a.bsf-prod-modal__open{display:inline-flex;align-items:center;gap:8px;min-height:40px;margin:0;padding:8px 12px;border:0!important;border-radius:999px;background:rgba(255,255,255,.16)!important;box-shadow:none!important;color:var(--pp-c2)!important;appearance:none;-webkit-appearance:none;text-decoration:none;cursor:pointer;font:600 14px/1.2 var(--pp-font);white-space:nowrap}
.bsf-prod-modal .bsf-prod-modal__foot span,.bsf-prod-modal .bsf-prod-modal__foot svg{color:var(--pp-c2)}
.bsf-prod-modal button.bsf-prod-modal__share:hover,.bsf-prod-modal a.bsf-prod-modal__open:hover{background:rgba(255,255,255,.3)!important}
.bsf-prod-modal button.bsf-prod-modal__share.is-done{background:#fff!important;color:var(--pp-c1)!important}
.bsf-prod-modal .bsf-prod-modal__share.is-done span,.bsf-prod-modal .bsf-prod-modal__share.is-done svg{color:var(--pp-c1)}
.bsf-prod-modal .bsf-prod-modal__foot svg{width:17px;height:17px;flex:none;stroke:currentColor}
.bsf-prod-modal__body{grid-area:2/1/3/4;min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px 24px 28px;background:#fff;color:var(--pp-ink);scrollbar-width:thin}
.bsf-prod-modal__body img{max-width:100%;height:auto}
.bsf-prod-modal__loading{padding:72px 20px;text-align:center;color:var(--pp-muted);font-weight:600}
.bsf-prod-modal :focus-visible{outline:2px solid var(--pp-c1);outline-offset:2px}
.bsf-prod-modal .bsf-prod-modal__close:focus-visible,.bsf-prod-modal .bsf-prod-modal__foot :focus-visible{outline-color:var(--pp-c2)}

/* 3. Fragment market.product_detail */
.bsf-prod-modal.is-open .mkt-container{width:100%;max-width:none;margin:0;padding:0}
.bsf-prod-modal.is-open .mkt-product-breadcrumb,.bsf-prod-modal.is-open .mkt-breadcrumb{display:none}
.bsf-prod-modal.is-open .mkt-product-gallery,.bsf-prod-modal.is-open .mkt-product-info{min-width:0;position:static}
/* Galerie : carre, un cadre, hauteur stable ; miniatures defilantes, active = anneau c1 */
.bsf-prod-modal.is-open .mkt-gallery-main{position:relative;display:block;aspect-ratio:1;margin:0 0 12px;padding:0;border:1px solid var(--pp-line);border-radius:16px;background:#fbfbfc;overflow:hidden}
.bsf-prod-modal.is-open .mkt-gallery-main img{position:absolute;inset:18px;width:calc(100% - 36px);height:calc(100% - 36px);object-fit:contain;display:block;border-radius:8px}
.bsf-prod-modal.is-open .mkt-gallery-main .mkt-badge{position:absolute;top:12px;inset-inline-start:12px;z-index:1}
.bsf-prod-modal.is-open .mkt-gallery-empty{display:flex;align-items:center;justify-content:center;aspect-ratio:1;height:auto;border-radius:16px;background:var(--pp-soft);color:var(--pp-muted)}
.bsf-prod-modal.is-open .mkt-gallery-thumbs{display:flex;flex-wrap:nowrap;gap:8px;margin:0 -3px;padding:3px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}
.bsf-prod-modal.is-open .mkt-gallery-thumb{flex:none;width:64px;height:64px;margin:0;padding:0;border:1px solid var(--pp-line);border-radius:12px;background:#fff;overflow:hidden;cursor:pointer;scroll-snap-align:start}
.bsf-prod-modal.is-open .mkt-gallery-thumb.active{border-color:#fff;box-shadow:0 0 0 2px var(--pp-c1)}
.bsf-prod-modal.is-open .mkt-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}
/* Info : vendeur > titre > vues > prix c1 */
.bsf-prod-modal.is-open .mkt-product-info svg{width:18px;height:18px;flex:none}
.bsf-prod-modal.is-open .mkt-product-info > .mkt-card-shop{display:inline-flex;align-items:center;gap:7px;margin:4px 0 10px;padding:0;font-size:12.5px;font-weight:700;line-height:1.3;letter-spacing:.06em;text-transform:uppercase;color:var(--pp-ink2);text-decoration:none;background:none}
.bsf-prod-modal.is-open .mkt-product-info > .mkt-card-shop:hover{color:var(--pp-ink);text-decoration:underline}
.bsf-prod-modal.is-open .mkt-product-info > .mkt-card-shop svg,.bsf-prod-modal.is-open .mkt-product-info > .mkt-card-shop i{width:14px;height:14px;flex:none;color:var(--pp-c1)}
.bsf-prod-modal.is-open .mkt-product-title{margin:0 0 8px;font:700 24px/1.25 var(--pp-font);letter-spacing:-.015em;color:var(--pp-ink);overflow-wrap:anywhere;text-wrap:balance}
.bsf-prod-modal.is-open .mkt-card-rating{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;line-height:1.3;color:var(--pp-muted)}
.bsf-prod-modal.is-open .stars{display:inline-flex;gap:1px;color:#f59e0b;font-size:13px;line-height:1;letter-spacing:0}
.bsf-prod-modal.is-open .stars.is-empty{display:none}
.bsf-prod-modal.is-open .star{font-style:normal}
.bsf-prod-modal.is-open .star-empty{color:#d4d9e0;opacity:1}
.bsf-prod-modal.is-open .mkt-product-lead{margin:4px 0 16px;font-size:15px;line-height:1.65;color:var(--pp-ink2);opacity:1}
.bsf-prod-modal.is-open .mkt-product-pricing{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin:6px 0 4px}
.bsf-prod-modal.is-open .mkt-product-price{font:800 30px/1.1 var(--pp-font);letter-spacing:-.015em;color:var(--pp-c1);font-variant-numeric:tabular-nums}
.bsf-prod-modal.is-open .mkt-price-compare{font-size:16px;font-weight:500;color:#94a3b8;text-decoration:line-through}
.bsf-prod-modal.is-open .mkt-badge{display:inline-flex;align-items:center;align-self:center;padding:3px 9px;border:0;border-radius:999px;font-size:12px;font-weight:700;line-height:1.3;text-transform:none;background:var(--pp-tint);color:var(--pp-ink2)}
.bsf-prod-modal.is-open .mkt-badge.promo{background:var(--pp-c1);color:var(--pp-c2)}
.bsf-prod-modal.is-open .mkt-badge.demo{background:var(--pp-ink);color:#fff}
.bsf-prod-modal.is-open .mkt-badge.service,.bsf-prod-modal.is-open .mkt-badge.digital{align-self:flex-start;background:#fff;color:var(--pp-ink2);border:1px solid var(--pp-line)}
/* Attributs : .active (popup) / .selected (market) */
.bsf-prod-modal.is-open .mkt-attrs-section{margin:16px 0 0}
.bsf-prod-modal.is-open .mkt-attrs-label{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--pp-ink2)}
.bsf-prod-modal.is-open .mkt-attr-opts{display:flex;flex-wrap:wrap;gap:8px}
.bsf-prod-modal.is-open .mkt-attr-opt{min-height:40px;margin:0;padding:8px 14px;border:1.5px solid var(--pp-line);border-radius:10px;background:#fff;color:var(--pp-ink);font:600 14px/1.2 var(--pp-font);cursor:pointer}
.bsf-prod-modal.is-open .mkt-attr-opt.active{border-color:var(--pp-c1);background:var(--pp-tint);color:var(--pp-ink)}
/* Quantite + stock (rempli par le JS variantes) */
.bsf-prod-modal.is-open .mkt-qty-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin:20px 0 0}
.bsf-prod-modal.is-open .mkt-qty-ctrl{display:inline-flex;align-items:stretch;height:48px;border:1.5px solid var(--pp-line);border-radius:12px;background:#fff;overflow:hidden}
.bsf-prod-modal.is-open .mkt-qty-ctrl > button{width:44px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--pp-ink);font:500 22px/1 var(--pp-font);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.bsf-prod-modal.is-open .mkt-qty-ctrl > button:hover{background:var(--pp-soft)}
.bsf-prod-modal.is-open .mkt-qty-ctrl > input{width:50px;margin:0;padding:0;border:0;border-inline:1px solid var(--pp-line);border-radius:0;background:#fff;color:var(--pp-ink);text-align:center;font:700 15px/1 var(--pp-font);outline:0;-moz-appearance:textfield;appearance:textfield}
.bsf-prod-modal.is-open .mkt-qty-ctrl > input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.bsf-prod-modal.is-open #mktStockInfo{font-size:13px;font-weight:600;color:#b42318;opacity:1}
.bsf-prod-modal.is-open #mktStockInfo:empty{display:none}
/* Actions : un seul plein (c1) ; bloc soude [stepper | Ajouter] / [Acheter] = .bsf-pp-actions (enhance.js) */
.bsf-prod-modal.is-open .mkt-add-cart-btn,.bsf-prod-modal.is-open .mkt-buy-now-btn{flex:1 1 auto;min-height:48px;margin:0;padding:8px 16px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 15px/1.2 var(--pp-font);text-align:center;cursor:pointer;box-shadow:none;transform:none}
.bsf-prod-modal.is-open .mkt-add-cart-btn{border:0;background:var(--pp-c1);color:var(--pp-c2)}
.bsf-prod-modal.is-open .mkt-add-cart-btn:hover{filter:brightness(1.08)}
.bsf-prod-modal.is-open .mkt-buy-now-btn{border:1.5px solid #cfd6df;background:#fff;color:var(--pp-ink)}
.bsf-prod-modal.is-open .mkt-buy-now-btn:hover{border-color:var(--pp-ink)}
.bsf-prod-modal.is-open .mkt-add-cart-btn[disabled],.bsf-prod-modal.is-open .mkt-buy-now-btn[disabled]{opacity:.6;cursor:wait;filter:none}
.bsf-prod-modal.is-open .bsf-pp-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:stretch;margin:14px 0 0}
.bsf-prod-modal.is-open .bsf-pp-actions .mkt-qty-row{display:contents}
.bsf-prod-modal.is-open .bsf-pp-actions .mkt-qty-row > span:not([id]){position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.bsf-prod-modal.is-open .bsf-pp-actions .mkt-qty-ctrl{grid-area:1/1}
.bsf-prod-modal.is-open .bsf-pp-actions .mkt-add-cart-btn{grid-area:1/2}
.bsf-prod-modal.is-open .bsf-pp-actions .mkt-buy-now-btn{grid-area:2/1/3/3}
.bsf-prod-modal.is-open .bsf-pp-actions #mktStockInfo{grid-area:3/1/4/3}
.bsf-prod-modal.is-open .mkt-wishlist-inline{display:inline-flex;align-items:center;gap:8px;margin:12px 0 0;padding:6px 0;border:0;background:transparent;color:var(--pp-ink2);font:600 13.5px/1.2 var(--pp-font);cursor:pointer}
/* Boutons market generiques (vitrine, avis) */
.bsf-prod-modal.is-open .mkt-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:8px 18px;border:1.5px solid #cfd6df;border-radius:12px;background:#fff;color:var(--pp-ink);font:700 14px/1.2 var(--pp-font);text-decoration:none;cursor:pointer;box-shadow:none;transform:none}
.bsf-prod-modal.is-open .mkt-btn-primary{border-color:transparent;background:var(--pp-c1);color:var(--pp-c2)}
/* Vendeur nomme une fois (eyebrow) ; ligne basse = ville + lien boutique en encre */
.bsf-prod-modal.is-open .mkt-shop-mini{display:flex;align-items:center;gap:12px;margin:22px 0 0;padding:14px 0 0;border:0;border-top:1px solid var(--pp-line);border-radius:0;background:transparent;box-shadow:none}
.bsf-prod-modal.is-open .mkt-shop-mini-main{flex:1 1 auto;min-width:0}
.bsf-prod-modal.is-open .mkt-shop-mini-main > a{display:none}
.bsf-prod-modal.is-open .mkt-shop-mini-meta{display:inline-flex;align-items:center;gap:5px;margin:0;font-size:13px;font-weight:600;line-height:1.3;color:var(--pp-ink2)}
.bsf-prod-modal.is-open .mkt-shop-mini-meta svg,.bsf-prod-modal.is-open .mkt-shop-mini-meta i{width:13px;height:13px;flex:none;color:var(--pp-c1)}
.bsf-prod-modal.is-open .mkt-shop-mini .mkt-btn{flex:none;min-height:40px;margin:0;padding:8px 10px;border:0;border-radius:10px;background:transparent;color:var(--pp-ink);font:700 14px/1.2 var(--pp-font);white-space:nowrap}
.bsf-prod-modal.is-open .mkt-shop-mini .mkt-btn:hover{background:var(--pp-soft);text-decoration:underline}
/* Onglets soulignes, durcis contre market.css. Priorite forcee 1/2 : margin-top:48px inline (enhance.js l'efface aussi) */
.bsf-prod-modal.is-open .mkt-detail-tabs{display:flex;flex-direction:row;flex-wrap:nowrap;gap:4px;margin-top:28px!important;padding:0;border:0;border-bottom:1px solid var(--pp-line);border-radius:0;background:none;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.bsf-prod-modal.is-open .mkt-tab-btn{flex:0 0 auto;width:auto;min-width:0;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;margin:0 0 -1px;padding:10px 12px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;box-shadow:none;transform:none;color:var(--pp-muted);font:600 14px/1.2 var(--pp-font);letter-spacing:0;text-transform:none;cursor:pointer;white-space:nowrap}
.bsf-prod-modal.is-open .mkt-tab-btn:hover{color:var(--pp-ink)}
.bsf-prod-modal.is-open .mkt-tab-btn.active{color:var(--pp-ink);border-bottom-color:var(--pp-c1)}
.bsf-prod-modal.is-open .mkt-tab-btn svg,.bsf-prod-modal.is-open .mkt-tab-btn i{width:16px;height:16px;flex:none}
.bsf-prod-modal.is-open .mkt-tab-panel{padding:18px 0 4px;font-size:15px;line-height:1.7;color:var(--pp-ink2);overflow-wrap:anywhere}
/* Priorite forcee 2/2 : text-align:justify inline WordPress ; padding immunise contre margin:0cm inline ; plaintext = ponctuation FR juste en RTL */
.bsf-prod-modal.is-open .mkt-tab-panel p{margin:0;padding:0 0 12px;text-align:start!important;unicode-bidi:plaintext}
.bsf-prod-modal.is-open .mkt-tab-panel p:last-child{padding-bottom:0}
.bsf-prod-modal.is-open .mkt-tab-panel a{color:var(--pp-ink);text-decoration:underline}
.bsf-prod-modal.is-open .mkt-tab-panel ul,.bsf-prod-modal.is-open .mkt-tab-panel ol{margin:0 0 12px;padding-inline-start:22px}
/* Caracteristiques */
.bsf-prod-modal.is-open .mkt-product-specs table{width:100%;border-collapse:collapse;font-size:14px}
.bsf-prod-modal.is-open .mkt-product-specs tr{border-bottom:1px solid var(--pp-line)}
.bsf-prod-modal.is-open .mkt-product-specs td{padding:10px 12px;vertical-align:top;text-align:start}
.bsf-prod-modal.is-open .mkt-product-specs td:first-child{width:40%;font-weight:600;color:var(--pp-ink2)}
.bsf-prod-modal.is-open .mkt-product-specs p{margin:0;padding:0;opacity:1;color:var(--pp-muted)}
/* Produits lies : prix alignes, etoiles et panier masques */
.bsf-prod-modal.is-open .mkt-related-products-component{margin-top:36px;padding-top:20px;border-top:1px solid var(--pp-line)}
.bsf-prod-modal.is-open .mkt-section-title{margin:0 0 14px;font:700 15px/1.3 var(--pp-font);color:var(--pp-ink)}
.bsf-prod-modal.is-open .mkt-products-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bsf-prod-modal.is-open .mkt-card{position:relative;display:flex;flex-direction:column;margin:0;border:1px solid var(--pp-line);border-radius:14px;overflow:hidden;background:#fff;color:var(--pp-ink);box-shadow:none;transform:none}
.bsf-prod-modal.is-open .mkt-card-img-wrap{position:relative;display:block;aspect-ratio:1;background:#fbfbfc;overflow:hidden}
.bsf-prod-modal.is-open .mkt-card-img-wrap img{width:100%;height:100%;padding:10px;object-fit:contain;display:block}
.bsf-prod-modal.is-open .mkt-card-body{display:flex;flex-direction:column;flex:1 1 auto;padding:10px 12px 12px}
.bsf-prod-modal.is-open .mkt-card .mkt-card-shop,.bsf-prod-modal.is-open .mkt-card .mkt-card-rating,.bsf-prod-modal.is-open .mkt-products-grid .mkt-btn-cart{display:none}
.bsf-prod-modal.is-open .mkt-card-title{display:block;margin:0 0 6px;font:600 13.5px/1.35 var(--pp-font);color:var(--pp-ink);text-decoration:none;overflow-wrap:anywhere}
.bsf-prod-modal.is-open .mkt-card-pricing{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin-top:auto}
.bsf-prod-modal.is-open .mkt-price-main{font-size:14.5px;font-weight:800;color:var(--pp-c1)}

/* 4. Desktop >= 768 : galerie col 1, le reste col 2, lies pleine largeur */
@media (min-width:768px){
  .bsf-prod-modal.is-open .bsf-prod-modal__body > .mkt-container:not(.mkt-product-breadcrumb){display:grid;grid-template-columns:minmax(0,46fr) minmax(0,54fr);column-gap:36px;row-gap:0;align-items:start}
  .bsf-prod-modal.is-open .mkt-product-layout{display:contents}
  .bsf-prod-modal.is-open .mkt-product-gallery{grid-column:1;grid-row:1/span 40}
  .bsf-prod-modal.is-open .mkt-product-info,.bsf-prod-modal.is-open .mkt-detail-tabs,.bsf-prod-modal.is-open .mkt-tab-panel{grid-column:2}
  .bsf-prod-modal.is-open .mkt-related-products-component{grid-column:1/-1}
  .bsf-prod-modal.is-open .mkt-products-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (min-width:1200px){
  .bsf-prod-modal__dialog{width:min(1080px,calc(100% - 48px))}
  .bsf-prod-modal.is-open .bsf-prod-modal__body > .mkt-container:not(.mkt-product-breadcrumb){column-gap:44px}
}

/* 5. Mobile <= 767 : bottom-sheet ; [titre | x] / outils (blanc) / corps ; barre collante (enhance.js) */
@media (max-width:767px){
  .bsf-prod-modal__dialog{position:fixed;inset:auto 0 0 0;margin:0;width:100%;max-height:94vh;max-height:94dvh;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto minmax(0,1fr);border-radius:20px 20px 0 0;box-shadow:0 -20px 60px rgba(0,0,0,.35)}
  .bsf-prod-modal__head{grid-area:1/1;min-height:54px;padding-block:8px;padding-inline:18px 8px}
  .bsf-prod-modal .bsf-prod-modal__close{grid-area:1/2;width:44px;height:44px;margin-inline-end:8px}
  .bsf-prod-modal__foot{grid-area:2/1/3/3;justify-content:space-between;padding:2px 8px;background:#fff;color:var(--pp-ink2);border-bottom:1px solid var(--pp-line)}
  .bsf-prod-modal button.bsf-prod-modal__share,.bsf-prod-modal a.bsf-prod-modal__open{min-height:40px;padding:6px 10px;font-size:13.5px;background:transparent!important;color:var(--pp-ink2)!important}
  .bsf-prod-modal .bsf-prod-modal__foot span,.bsf-prod-modal .bsf-prod-modal__foot svg{color:var(--pp-ink2)}
  .bsf-prod-modal button.bsf-prod-modal__share:hover,.bsf-prod-modal a.bsf-prod-modal__open:hover{background:var(--pp-soft)!important;color:var(--pp-ink)!important}
  .bsf-prod-modal button.bsf-prod-modal__share.is-done{background:var(--pp-tint)!important;color:var(--pp-c1)!important}
  .bsf-prod-modal button.bsf-prod-modal__share.is-done span,.bsf-prod-modal button.bsf-prod-modal__share.is-done svg{color:var(--pp-c1)}
  .bsf-prod-modal .bsf-prod-modal__foot :focus-visible{outline-color:var(--pp-c1)}
  .bsf-prod-modal__body{grid-area:3/1/4/3;padding:14px 16px 0}
  .bsf-prod-modal.is-open .bsf-prod-modal__body > .mkt-container:not(.mkt-product-breadcrumb){display:flex;flex-direction:column}
  .bsf-prod-modal.is-open .mkt-product-layout,.bsf-prod-modal.is-open .mkt-product-info{display:contents}
  .bsf-prod-modal.is-open .mkt-product-info > .mkt-card-shop,.bsf-prod-modal.is-open .mkt-wishlist-inline{align-self:flex-start}
  .bsf-prod-modal.is-open .mkt-gallery-main{aspect-ratio:4/3;border-radius:14px}
  .bsf-prod-modal.is-open .mkt-gallery-main img{inset:12px;width:calc(100% - 24px);height:calc(100% - 24px)}
  .bsf-prod-modal.is-open .mkt-gallery-thumb{width:56px;height:56px;border-radius:10px}
  .bsf-prod-modal.is-open .mkt-product-title{font-size:21px}
  .bsf-prod-modal.is-open .mkt-detail-tabs{flex-direction:row;background:none;padding:0;border-radius:0;margin-top:22px!important}
  .bsf-prod-modal.is-open .mkt-tab-panel{padding-bottom:16px}
  /* Barre : [prix | stepper] / [Ajouter 1.4fr | Acheter 1fr] ; stock en ligne 3 seulement s'il est rempli */
  .bsf-prod-modal.is-open .bsf-pp-bar{position:sticky;bottom:0;z-index:3;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px;align-items:center;margin:0 -16px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid var(--pp-line);box-shadow:0 -14px 28px -16px rgba(15,23,42,.3)}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-product-pricing{grid-area:1/1;margin:0;gap:2px 8px}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-product-price{font-size:24px}
  .bsf-prod-modal.is-open .bsf-pp-bar .bsf-pp-actions,.bsf-prod-modal.is-open .bsf-pp-bar .mkt-qty-row{display:contents}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-qty-ctrl{grid-area:1/2;justify-self:end;height:44px}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-qty-ctrl > button{width:42px}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-qty-ctrl > input{width:44px}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-add-cart-btn{grid-area:2/1}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-buy-now-btn{grid-area:2/2}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-add-cart-btn,.bsf-prod-modal.is-open .bsf-pp-bar .mkt-buy-now-btn{align-self:stretch;min-height:48px;padding:6px 10px;font-size:14px;line-height:1.15;white-space:normal}
  .bsf-prod-modal.is-open .bsf-pp-bar .mkt-add-cart-btn svg,.bsf-prod-modal.is-open .bsf-pp-bar .mkt-add-cart-btn i,.bsf-prod-modal.is-open .bsf-pp-bar .mkt-buy-now-btn svg,.bsf-prod-modal.is-open .bsf-pp-bar .mkt-buy-now-btn i{display:none}
  .bsf-prod-modal.is-open .bsf-pp-bar #mktStockInfo{grid-area:3/1/4/3}
  .bsf-prod-toast{bottom:calc(136px + env(safe-area-inset-bottom,0px))}
}

/* 6. RTL : interlettrage latin neutralise (le reste est logique) */
[dir="rtl"] .bsf-prod-modal .bsf-prod-modal__title,[dir="rtl"] .bsf-prod-modal.is-open .mkt-product-info > .mkt-card-shop,[dir="rtl"] .bsf-prod-modal .mkt-product-title,[dir="rtl"] .bsf-prod-modal .mkt-product-price,[dir="rtl"] .bsf-prod-modal .mkt-badge,[dir="rtl"] .bsf-prod-modal .mkt-attrs-label,[dir="rtl"] .bsf-prod-modal .mkt-qty-row > span:first-child,[dir="rtl"] .bsf-prod-modal .mkt-section-title,[dir="rtl"] .bsf-prod-modal .stars,[dir="rtl"] .bsf-prod-modal__loading{letter-spacing:0}

/* 7. Toast : centre par inset-inline + marges auto (RTL ok), mouvement reduit */
.bsf-prod-toast{position:fixed;inset-inline:0;bottom:calc(24px + env(safe-area-inset-bottom,0px));width:fit-content;max-width:calc(100% - 32px);margin-inline:auto;z-index:99990;padding:12px 18px;border-radius:12px;background:#0f172a;color:#fff;font:600 14px/1.3 Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;text-align:center;box-shadow:0 12px 32px rgba(0,0,0,.3);opacity:0;transform:translateY(16px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}
.bsf-prod-toast.is-visible{opacity:1;transform:none}
.bsf-prod-toast.is-error{background:#b91c1c}
@media (prefers-reduced-motion:reduce){.bsf-prod-toast{transition:none;transform:none}}
