body{font-family:'DM Sans',system-ui,sans-serif;color:#fff;background:#08070d}.shop-wrap{max-width:1120px;margin:0 auto;padding:22px}.shop-hero{margin-bottom:22px}.shop-hero h1{font-family:'Bebas Neue',sans-serif;font-size:56px;margin:8px 0}.shop-hero p,.shop-empty{color:rgba(255,255,255,.72)}.shop-back,.shop-kicker{color:#ffd666;text-decoration:none}.shop-panel{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:26px;padding:18px}.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.shop-item{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:28px;overflow:hidden}.shop-img{height:180px;display:grid;place-items:center;background:rgba(255,255,255,.08);font-size:54px}.shop-img img{width:100%;height:100%;object-fit:cover}.shop-body{padding:16px;display:grid;gap:8px}.shop-body span,.shop-body small{color:rgba(255,255,255,.65)}.shop-body h2{margin:0;font-size:21px}.shop-body p{margin:0;color:rgba(255,255,255,.78)}.shop-buy{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}.shop-buy strong{font-size:20px}.shop-buy button{border:0;border-radius:999px;background:#ffd666;color:#111;font-weight:900;padding:11px 14px;cursor:pointer}.shop-buy button:disabled{opacity:.65;cursor:wait}@media(max-width:900px){.shop-grid{grid-template-columns:1fr}.shop-hero h1{font-size:44px}}

/* Options achat boutique — V5 */
.shop-buy-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:flex-end;justify-content:center;padding:16px;background:rgba(0,0,0,.68);backdrop-filter:blur(8px)}
.shop-buy-modal.open{display:flex}.shop-buy-card{width:min(560px,100%);max-height:92vh;overflow:auto;background:#151515;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:26px 26px 18px 18px;padding:22px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.shop-buy-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:1.35rem}.shop-buy-kicker{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#c9a84c;font-weight:800}.shop-buy-card h2{font-family:'Bebas Neue',sans-serif;font-size:2rem;margin:.25rem 2.5rem .2rem 0}.shop-buy-card form{display:grid;gap:12px}.shop-buy-card label{display:grid;gap:6px;font-size:.78rem;color:rgba(255,255,255,.72);font-weight:800}.shop-buy-card input,.shop-buy-card select{border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.06);color:#fff;padding:.8rem .9rem;font:inherit}.shop-buy-card option{color:#111}.shop-buy-card button[type=submit]{min-height:48px;border:0;border-radius:16px;background:#d4201a;color:#fff;font-weight:900}.shop-buy-msg{min-height:20px;color:#ffb3ad;text-align:center}
@media(max-width:620px){.shop-buy-modal{padding:0}.shop-buy-card{border-radius:26px 26px 0 0}}


/* FTS promo admin */
.promo-admin-card{margin-top:18px;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.055);box-shadow:0 18px 45px rgba(0,0,0,.16)}
.promo-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.promo-head h2{margin:.1rem 0 .25rem}.promo-head p{margin:0;color:rgba(255,255,255,.72)}
.promo-grid,.promo-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.promo-targets{margin-top:10px}.promo-grid label,.promo-targets label{display:grid;gap:6px;color:rgba(255,255,255,.86);font-size:.9rem}.promo-grid input,.promo-grid select,.promo-targets input{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(0,0,0,.22);color:#fff;padding:11px 12px}.promo-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px;padding-top:24px}.promo-check input{width:auto!important}.promo-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.promo-msg{min-height:22px;margin-top:10px;color:#f6d58a}.promo-list{display:grid;gap:10px;margin-top:14px}.promo-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(0,0,0,.18)}.promo-row strong{display:block}.promo-row span,.promo-row small{display:block;color:rgba(255,255,255,.68);margin-top:3px}.promo-row>div:last-child{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.promo-field{margin:12px 0}.promo-field input{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(0,0,0,.22);color:#fff;padding:11px 12px}.price-details{margin-top:8px;padding:10px;border-radius:14px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.86)}.sales-action-btn{border:0;border-radius:999px;padding:8px 12px;background:#f6d58a;color:#1d1304;font-weight:800;cursor:pointer}.sales-status.offline{background:rgba(246,213,138,.15);color:#f6d58a}.sales-status.free{background:rgba(120,255,190,.15);color:#9af7c8}@media(max-width:760px){.promo-grid,.promo-targets{grid-template-columns:1fr}.promo-row{display:grid}.promo-head{display:grid}}


/* Règlement exceptionnel regroupé */
.shop-item-exceptional{border-color:rgba(255,214,102,.24);background:linear-gradient(135deg,rgba(255,214,102,.12),rgba(255,255,255,.055))}
.shop-item-exceptional .shop-img{background:rgba(255,214,102,.12)}
.shop-item-exceptional .shop-buy button{background:#ffd666;color:#111}

/* v10 — panier boutique */
.shop-buy-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.shop-buy-actions button[data-cart]{background:rgba(255,214,102,.16);color:#ffd666;border:1px solid rgba(255,214,102,.35)}
.shop-buy-actions button[data-buy]{background:#ffd666;color:#111}
.shop-cart-bubble{position:fixed;right:16px;bottom:18px;z-index:9998;border:0;border-radius:999px;background:#ffd666;color:#111;font-weight:900;padding:.8rem 1rem;box-shadow:0 18px 50px rgba(0,0,0,.38);cursor:pointer}
.shop-cart-bubble strong{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:999px;background:#111;color:#ffd666;margin-left:.25rem;font-size:.78rem}
.shop-cart-card{width:min(680px,100%)}
.shop-cart-lines{display:grid;gap:10px;margin:14px 0}.shop-cart-line{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.055)}.shop-cart-line strong{display:block}.shop-cart-line small{display:block;color:rgba(255,255,255,.65);line-height:1.35}.shop-cart-line button{border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.10);color:#fff;padding:8px 12px;cursor:pointer}
.shop-cart-form{display:grid;gap:10px;margin-top:14px}.shop-cart-form label{display:grid;gap:6px;font-size:.78rem;color:rgba(255,255,255,.72);font-weight:800}.shop-cart-form input{border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.06);color:#fff;padding:.8rem .9rem;font:inherit}.shop-cart-form button[type=submit]{min-height:48px;border:0;border-radius:16px;background:#d4201a;color:#fff;font-weight:900}.shop-cart-total{display:flex;align-items:center;justify-content:space-between;padding:14px;border-radius:16px;background:rgba(255,214,102,.10);border:1px solid rgba(255,214,102,.24)}.shop-cart-total span{color:rgba(255,255,255,.72)}.shop-cart-total strong{font-size:1.45rem;color:#ffd666}.shop-cart-empty{color:rgba(255,255,255,.72);line-height:1.5}
@media(max-width:620px){.shop-buy{align-items:flex-start}.shop-buy-actions{width:100%;justify-content:stretch}.shop-buy-actions button{flex:1}.shop-cart-line{grid-template-columns:1fr}.shop-cart-line button{width:100%}.shop-cart-bubble{left:16px;right:16px}}
