:root{ --brand:#9b46ff;--violet:#d31ad1;--bg:#05030c;--bg2:#0c0620;--ink:#f5eefe; --muted:#a596c0;--faint:#6d5f86;--line:rgba(255,255,255,.09);--line2:rgba(255,255,255,.18); --nav-h:58px; --display:"Chakra Petch",sans-serif;--body:"Space Grotesk",sans-serif;--mono:"JetBrains Mono",monospace; }
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden; background-image:radial-gradient(circle,rgba(255,255,255,.06) 1px,transparent 1px);background-size:22px 22px}
a{text-decoration:none;color:inherit}
/* ── NAV ── */ #nav{position:fixed;top:0;left:0;right:0;z-index:300;height:var(--nav-h);background:transparent;border-bottom:1px solid transparent;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .35s,border-color .35s,backdrop-filter .35s;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1280px)/2 + 40px));gap:24px}
#nav.scrolled,#nav:hover{background:rgba(4,2,10,.95)!important;border-bottom-color:rgba(255,255,255,.06)!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important}
.nav-logo img{width:130px;height:auto;max-width:none}
.nav-link{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55);padding:8px 14px;border-radius:6px;display:flex;align-items:center;gap:5px;transition:color .2s,background .2s;cursor:pointer;white-space:nowrap;user-select:none}
.nav-drop{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(-10px) scale(.97);width:min(960px,92vw);background:linear-gradient(145deg,rgba(8,4,20,.99),rgba(5,2,14,.99));border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:10px 8px 8px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s,transform .22s,visibility 0s .22s;box-shadow:0 30px 80px -10px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.04),inset 0 1px 0 rgba(255,255,255,.06)}
.nav-item:hover .nav-drop{opacity:1;visibility:visible;pointer-events:all;transform:translateX(-50%) translateY(0) scale(1);transition:opacity .22s,transform .22s,visibility 0s 0s}
.ndrop-label{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.25);padding:6px 10px 8px;display:block}
.ndrop-drink{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);text-decoration:none;transition:all .22s;overflow:hidden}
.ndrop-drink-info{flex:1;min-width:0}
.ndrop-drink h4{font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:14px;color:#fff;letter-spacing:.04em;margin:0 0 6px;text-transform:uppercase}
.ndrop-drink-tags span{font-family:"JetBrains Mono",monospace;font-size:8.5px;letter-spacing:.06em;padding:2px 7px;border-radius:20px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.09)}
.ndrop-drink-cta{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.35);transition:color .2s,letter-spacing .2s}
.ndrop-drink:hover .ndrop-drink-cta{color:#fff;letter-spacing:.18em}
.ndrop-drink--focus:hover{border-color:rgba(155,70,255,.35);background:rgba(155,70,255,.07);box-shadow:0 0 32px rgba(155,70,255,.13)}
.ndrop-drink--tonic:hover{border-color:rgba(240,124,29,.35);background:rgba(240,124,29,.07);box-shadow:0 0 32px rgba(240,124,29,.13)}
.ndrop-comp-items{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:9px 4px 4px;flex:1;align-content:space-between}
.ndrop-comp-item{display:flex;flex-direction:column;align-items:center;padding:11px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02);text-decoration:none;transition:all .2s;gap:6px}
.ndrop-comp-item h4{font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#fff;margin:0;text-align:center}
.ndrop-comp-item>span{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.32);text-align:center}
.ndrop-ci--focus:hover{border-color:rgba(232,40,63,.3);background:rgba(232,40,63,.08);box-shadow:0 0 20px rgba(232,40,63,.12)}
.ndrop-ci--sleep:hover{border-color:rgba(47,209,214,.3);background:rgba(47,209,214,.08);box-shadow:0 0 20px rgba(47,209,214,.12)}
.ndrop-ci--nutri:hover{border-color:rgba(198,24,147,.3);background:rgba(198,24,147,.08);box-shadow:0 0 20px rgba(198,24,147,.12)}
.ndrop-ci--relax:hover{border-color:rgba(76,209,55,.3);background:rgba(76,209,55,.08);box-shadow:0 0 20px rgba(76,209,55,.12)}
.ndrop-ci--tonic:hover{border-color:rgba(240,124,29,.3);background:rgba(240,124,29,.08);box-shadow:0 0 20px rgba(240,124,29,.12)}
.ndrop-ci--view:hover{border-color:rgba(242,213,29,.3);background:rgba(242,213,29,.08);box-shadow:0 0 20px rgba(242,213,29,.12)}
.ndrop-shop-btn{display:flex;align-items:center;gap:8px;font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.32);text-decoration:none;width:100%;transition:color .2s}
.ndrop-shop-btn svg{width:13px;height:13px;opacity:.45;flex-shrink:0;transition:opacity .2s}
.nav-right{display:flex;align-items:center;gap:8px;flex-shrink:0}
.nav-icon-btn{width:36px;height:36px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.55);transition:color .2s,background .2s;cursor:pointer}
.nav-btn{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#fff;padding:8px 18px;border-radius:8px;background:linear-gradient(135deg,var(--brand),var(--violet));box-shadow:0 4px 18px -4px rgba(155,70,255,.55);transition:transform .2s,box-shadow .2s;white-space:nowrap}
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;padding:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;flex-shrink:0}
.nav-overlay{position:fixed;inset:0;z-index:290;background:rgba(5,3,12,.98);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;opacity:0;pointer-events:none;transition:opacity .3s}
.nav-overlay a{font-family:"Chakra Petch",sans-serif;font-size:clamp(22px,5vw,32px);font-weight:700;text-transform:uppercase;color:rgba(255,255,255,.55);padding:8px 24px;transition:color .2s,transform .2s}
.nav-overlay a:hover{color:#fff;transform:translateX(8px)}
.nav-overlay .ov-cta{margin-top:14px;padding:13px 32px;border-radius:12px;background:linear-gradient(135deg,var(--brand),var(--violet));color:#fff!important;font-size:13px;box-shadow:0 6px 24px -4px rgba(155,70,255,.6)}
@media(max-width:980px){.nav-center{display:none}.nav-burger{display:flex}#nav{padding:0 20px}}
.nabout-card{position:relative;border-radius:14px;overflow:hidden;height:160px;text-decoration:none;display:flex;align-items:flex-end;padding:14px 16px;border:1px solid rgba(255,255,255,.1);transition:transform .22s,border-color .22s,box-shadow .22s;flex-shrink:0}
.nabout-card-label{position:relative;z-index:2;font-family:"Chakra Petch",sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;color:#fff;letter-spacing:.04em;line-height:1.25}
.nabout-card-sub{position:relative;z-index:2;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-top:3px}
.nabout-card--vision{border-color:rgba(0,229,176,.15)}
.nabout-link{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55);padding:7px 10px;border-radius:7px;text-decoration:none;transition:color .18s,background .18s;display:flex;align-items:center;gap:7px;white-space:nowrap}
.nabout-link svg{width:13px;height:13px;opacity:.5;flex-shrink:0;transition:opacity .18s}
.nabout-soc{display:flex;align-items:center;gap:8px;font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.48);text-decoration:none;padding:7px 10px;border-radius:7px;transition:color .18s,background .18s}
.nabout-soc svg{width:14px;height:14px;flex-shrink:0;opacity:.6;transition:opacity .18s}
.nabout-inner{display:grid;grid-template-columns:1fr 1px 120px 1px 120px;align-items:start;padding:2px;gap:0}
@media(max-width:980px){.nav-center{display:none}.nav-burger{display:flex}#nav{padding:0 20px}}
.wrap{max-width:1280px;margin:0 auto;padding:0 40px}
.foot-top p{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.28)}
.soc{width:38px;height:38px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);display:flex;align-items:center;justify-content:center;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.04em;color:rgba(255,255,255,.4);transition:color .2s,background .2s,border-color .2s}
.soc:hover{color:#fff;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.25)}
.foot-nl{margin-bottom:48px;padding:28px 32px;border-radius:14px;background:rgba(155,70,255,.06);border:1px solid rgba(155,70,255,.14);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.foot-nl h3{font-family:"Chakra Petch",sans-serif;font-size:17px;font-weight:700;text-transform:uppercase}
.foot-nl p{font-size:12px;color:rgba(255,255,255,.4);margin-top:3px}
.nl-input{flex:1;min-width:200px;padding:11px 16px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#fff;font-size:13px;font-family:"Space Grotesk",sans-serif;outline:none;transition:border-color .2s}
.nl-input:focus{border-color:#9b46ff}
.foot-brand p{font-size:13px;color:rgba(255,255,255,.38);line-height:1.7;max-width:270px}
.foot-col h4{font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:16px}
.foot-col a{display:block;font-size:13px;color:rgba(255,255,255,.5);margin-bottom:9px;transition:color .2s}
.foot-base{border-top:1px solid rgba(255,255,255,.06);padding:18px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.foot-base p,.foot-base a{font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.22);transition:color .2s}
.foot-base a:hover{color:rgba(255,255,255,.55)}
.foot-nl{text-align:left!important}
.foot-brand p{font-size:13px!important;color:rgba(255,255,255,.38)!important;line-height:1.7!important;max-width:270px!important}
.foot-brand p{font-family:"Space Grotesk",sans-serif!important;font-size:13px!important;color:rgba(255,255,255,.38)!important;line-height:1.7!important;max-width:270px!important;text-align:left!important}
.foot-nl h3{font-family:"Chakra Petch",sans-serif!important}
.foot-nl p{font-family:"Space Grotesk",sans-serif!important}
.foot-base p,.foot-base a{font-family:"JetBrains Mono",monospace!important}
.foot-nl{text-align:left!important}
.logo-scan-bar{position:absolute;top:0;bottom:0;left:0;right:0;background:linear-gradient(90deg,transparent 0%,rgba(155,70,255,.85) 40%,rgba(211,26,209,.95) 60%,transparent 100%);background-size:60% 100%;background-repeat:no-repeat;animation:logo-scan 2s ease-in-out infinite;pointer-events:none;-webkit-mask-image:url(logos-1337.-grand-sans-fond-san-cecle.webp);-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;mask-image:url(logos-1337.-grand-sans-fond-san-cecle.webp);mask-size:contain;mask-repeat:no-repeat}
.foot-top p{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.28)}
.soc{width:38px;height:38px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);display:flex;align-items:center;justify-content:center;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.04em;color:rgba(255,255,255,.4);transition:color .2s,background .2s,border-color .2s}
.soc:hover{color:#fff;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.25)}
.foot-nl{margin-bottom:48px;padding:28px 32px;border-radius:14px;background:rgba(155,70,255,.06);border:1px solid rgba(155,70,255,.14);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.foot-nl h3{font-family:"Chakra Petch",sans-serif;font-size:17px;font-weight:700;text-transform:uppercase}
.foot-nl p{font-size:12px;color:rgba(255,255,255,.4);margin-top:3px}
.nl-input{flex:1;min-width:200px;padding:11px 16px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#fff;font-size:13px;font-family:"Space Grotesk",sans-serif;outline:none;transition:border-color .2s}
.nl-input:focus{border-color:#9b46ff}
.foot-brand p{font-size:13px;color:rgba(255,255,255,.38);line-height:1.7;max-width:270px}
.foot-col h4{font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:16px}
.foot-col a{display:block;font-size:13px;color:rgba(255,255,255,.5);margin-bottom:9px;transition:color .2s}
.foot-base{border-top:1px solid rgba(255,255,255,.06);padding:18px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.foot-base p,.foot-base a{font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.22);transition:color .2s}
.foot-base a:hover{color:rgba(255,255,255,.55)}
.foot-nl{text-align:left!important}
.foot-brand p{font-size:13px!important;color:rgba(255,255,255,.38)!important;line-height:1.7!important;max-width:270px!important}
.foot-brand p{font-family:"Space Grotesk",sans-serif!important;font-size:13px!important;color:rgba(255,255,255,.38)!important;line-height:1.7!important;max-width:270px!important;text-align:left!important}
.foot-nl h3{font-family:"Chakra Petch",sans-serif!important}
.foot-nl p{font-family:"Space Grotesk",sans-serif!important}
.foot-base p,.foot-base a{font-family:"JetBrains Mono",monospace!important}
.foot-nl{text-align:left!important}
@media(max-width:980px){.nav-btn{display:none!important}}
button{font-family:inherit;cursor:pointer}
/* ── PAGE ── */ .page{padding-top:calc(var(--nav-h) + 52px);padding-bottom:80px;min-height:100vh}
/* ── HERO ── */ .shop-hero{text-align:center;margin-bottom:48px}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.35em;text-transform:uppercase; color:var(--violet);display:inline-flex;align-items:center;gap:10px;margin-bottom:16px}
.eyebrow::before,.eyebrow::after{content:"";width:28px;height:1px;background:var(--violet);opacity:.7}
.shop-hero h1{font-family:var(--display);font-weight:700;text-transform:uppercase;line-height:.96; font-size:clamp(42px,6vw,80px);letter-spacing:-.01em;margin-bottom:14px}
.shop-hero h1 .hl{color:var(--violet);text-shadow:0 0 40px rgba(211,26,209,.5)}
.shop-hero p{color:var(--muted);font-size:16px;max-width:46ch;margin:0 auto 36px;line-height:1.6}
.shop-hero p strong{color:#fff}
/* ── TIERS ── */ .tiers-bar{display:flex;align-items:stretch;max-width:800px;margin:0 auto 52px; background:rgba(10,5,26,.97);border:1px solid var(--line2);border-radius:8px;overflow:hidden}
.tier-step{flex:1;padding:14px 6px;text-align:center;border-right:1px solid var(--line); transition:background .3s;position:relative;min-width:0}
.tier-step:last-child{border-right:none}
.tier-n{font-family:var(--mono);font-size:9px;letter-spacing:.08em;color:var(--faint); text-transform:uppercase;margin-bottom:5px;white-space:nowrap}
.tier-pct{font-family:var(--display);font-weight:700;font-size:17px;color:var(--muted);transition:color .3s;white-space:nowrap}
.tier-step.reached{background:rgba(25,8,45,.97)}
.tier-step.reached .tier-pct{color:rgba(255,255,255,.8)}
.tier-step.active{background:rgba(40,8,50,.97)}
.tier-step.active .tier-pct{color:var(--violet);text-shadow:0 0 16px rgba(211,26,209,.5)}
.tier-step.active::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--violet)}
@media(max-width:600px){.tier-n{font-size:8px}.tier-pct{font-size:14px}.tiers-bar{margin-bottom:36px}}
/* ── LAYOUT ── */ .shop-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}
@media(max-width:1080px){.shop-layout{grid-template-columns:1fr}}
/* ── PRODUCT GRID ── */ .prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:860px){.prod-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.prod-grid{grid-template-columns:1fr}}
.prod-card{background:linear-gradient(160deg,rgba(18,8,38,.99),rgba(6,3,18,.99)); border:1px solid var(--line);border-radius:8px;overflow:hidden; transition:border-color .25s,transform .25s,box-shadow .25s; display:flex;flex-direction:column;cursor:pointer;position:relative}
.prod-card:hover{transform:translateY(-3px);border-color:var(--line2)}
.prod-card.selected{border-color:var(--c,var(--violet)); box-shadow:0 0 24px -6px var(--c,var(--violet))}
.prod-card.selected .check{opacity:1;transform:scale(1)}
.check{position:absolute;top:10px;right:10px;width:24px;height:24px;border-radius:50%; background:var(--c,var(--violet));color:#000;font-weight:700;font-size:12px; display:flex;align-items:center;justify-content:center; box-shadow:0 0 12px var(--c,var(--violet)); opacity:0;transform:scale(.5);transition:opacity .2s,transform .25s cubic-bezier(.34,1.4,.64,1)}
.prod-img-wrap{position:relative;height:148px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:16px}
.prod-img-bg{position:absolute;inset:0;background:radial-gradient(circle at center,var(--c,var(--violet)) 0%,transparent 70%);opacity:.1;transition:opacity .3s}
.prod-card.selected .prod-img-bg{opacity:.2}
.prod-card img{height:108px;width:auto;object-fit:contain;position:relative;z-index:1; filter:drop-shadow(0 0 18px var(--c,var(--violet)));transition:transform .3s}
.prod-card:hover img,.prod-card.selected img{transform:scale(1.07) translateY(-4px)}
.prod-body{padding:12px 14px 14px;flex:1;display:flex;flex-direction:column;gap:4px}
.prod-name{font-family:var(--display);font-weight:700;font-size:19px;text-transform:uppercase; letter-spacing:.02em;color:var(--c,var(--violet))}
.prod-tag{font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.prod-desc{font-size:12px;color:var(--faint);line-height:1.5;margin-top:2px;flex:1}
.prod-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:8px;flex-wrap:wrap}
.prod-price{font-family:var(--display);font-weight:700;font-size:19px;color:#fff;white-space:nowrap}
.prod-price .cts{font-size:13px;font-weight:600;color:var(--muted)}
.qty-ctrl{display:flex;align-items:center;border:1px solid var(--line2);border-radius:4px;overflow:hidden}
.qty-btn{width:28px;height:28px;border:none;background:rgba(20,10,40,.99);color:#fff; font-size:15px;display:grid;place-items:center;transition:background .2s;flex-shrink:0;line-height:1}
.qty-btn:hover{background:rgba(40,20,70,.99)}
.qty-val{width:30px;height:28px;display:grid;place-items:center; font-family:var(--mono);font-size:13px;font-weight:700;color:#fff; background:rgba(12,5,28,.99);border-left:1px solid var(--line);border-right:1px solid var(--line); user-select:none;min-width:0}
/* ── INFO STRIP ── */ .info-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.info-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 12px; background:rgba(10,5,26,.97);border:1px solid var(--line);border-radius:6px;text-align:center}
.info-item svg{width:22px;height:22px;stroke:var(--violet);fill:none;stroke-width:1.6}
.info-item span{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);line-height:1.6}
@media(max-width:480px){.info-strip{grid-template-columns:1fr}}
/* ── SUMMARY ── */ .summary{position:sticky;top:calc(var(--nav-h) + 16px); background:linear-gradient(160deg,rgba(20,10,42,.99),rgba(8,4,22,.97)); border:1px solid var(--line2);border-radius:10px;display:flex;flex-direction:column;gap:16px;padding:22px}
.sum-title{font-family:var(--display);font-weight:700;font-size:14px;text-transform:uppercase; letter-spacing:.1em;color:#fff;display:flex;align-items:center;justify-content:space-between}
.sum-count{font-family:var(--mono);font-size:11px;color:var(--muted)}
/* meter */ .disc-meter{background:rgba(10,5,26,.97);border:1px solid var(--line);border-radius:6px;padding:14px}
.meter-head{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase; color:var(--muted);margin-bottom:8px;display:flex;justify-content:space-between}
.meter-head .val{color:var(--violet);font-weight:700;transition:color .3s}
.meter-track{height:5px;background:rgba(30,15,55,.99);border-radius:3px;overflow:hidden;margin-bottom:10px}
.meter-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#9b46ff,#d31ad1); transition:width .4s cubic-bezier(.34,1.2,.64,1);width:0%}
.meter-dots{display:flex;justify-content:space-between;padding:0 2px}
.m-dot-wrap{display:flex;flex-direction:column;align-items:center;gap:3px}
.m-dot{width:6px;height:6px;border-radius:50%;background:rgba(50,30,80,.99);transition:background .3s,transform .3s,box-shadow .3s}
.m-dot.on{background:var(--violet);transform:scale(1.5);box-shadow:0 0 8px var(--violet)}
.m-lbl{font-family:var(--mono);font-size:8px;color:var(--faint);transition:color .3s;white-space:nowrap}
.m-lbl.on{color:var(--violet)}
/* items */ .sum-items{display:flex;flex-direction:column;gap:7px;min-height:48px}
.sum-empty{font-family:var(--mono);font-size:11px;color:var(--faint);text-align:center;padding:14px 0; border:1px dashed rgba(255,255,255,.08);border-radius:5px}
.s-row{display:flex;align-items:center;gap:9px;padding:7px 10px; background:rgba(10,5,26,.97);border:1px solid var(--line);border-radius:5px;animation:fadein .2s ease}
@keyframes fadein{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.s-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.s-info{flex:1;min-width:0}
.s-name{font-family:var(--display);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.s-qty{font-family:var(--mono);font-size:9px;color:var(--muted)}
.s-price{font-family:var(--mono);font-size:11px;font-weight:700;color:#fff;white-space:nowrap}
/* totaux */ .sum-totals{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid var(--line)}
.t-row{display:flex;justify-content:space-between;align-items:baseline}
.t-label{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.t-val{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--muted)}
.t-row.disc .t-label,.t-row.disc .t-val{color:#4ade80}
.t-row.grand{margin-top:6px}
.t-row.grand .t-label{color:#fff;font-size:12px}
.t-row.grand .t-val{font-family:var(--display);font-size:22px;font-weight:700;color:#fff}
/* CTAs */ .sum-cta{display:flex;flex-direction:column;gap:8px}
.btn-order{display:flex;align-items:center;justify-content:center;gap:10px; font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase; padding:15px 24px;border-radius:4px;border:none;width:100%; background:linear-gradient(100deg,#9b46ff,#d31ad1);color:#fff; box-shadow:0 10px 32px -10px rgba(155,70,255,.55); transition:transform .25s,box-shadow .25s,opacity .25s}
.btn-order:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 40px -10px rgba(155,70,255,.7)}
.btn-order:disabled{opacity:.3;cursor:not-allowed;box-shadow:none;transform:none}
.btn-order .arr{transition:transform .25s}
.btn-order:hover:not(:disabled) .arr{transform:translateX(3px)}
.btn-reset{background:none;border:1px solid var(--line2);color:var(--muted); font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase; padding:8px;border-radius:3px;width:100%;transition:color .2s,border-color .2s}
.btn-reset:hover{color:#fff;border-color:rgba(255,255,255,.3)}
/* ── MOBILE SUMMARY ── */ @media(max-width:1080px){ .summary{position:fixed;bottom:0;left:0;right:0;border-radius:16px 16px 0 0;z-index:200; padding:14px 20px 20px;gap:12px;border-bottom:none; box-shadow:0 -16px 56px -8px rgba(0,0,0,.7);transition:transform .3s ease} .summary.collapsed{transform:translateY(calc(100% - 64px))} .page{padding-bottom:200px} .sum-toggle{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding-bottom:4px} .sum-toggle-icon{color:var(--muted);font-size:14px;transition:transform .3s} .summary.collapsed .sum-toggle-icon{transform:rotate(180deg)} .sum-body{display:flex;flex-direction:column;gap:12px} .summary.collapsed .sum-body{display:none} }
@media(min-width:1081px){ .sum-toggle{display:none} .sum-body{display:contents} }
/* footer */ footer{border-top:1px solid var(--line);padding:28px 0;text-align:center}
footer p{font-family:var(--mono);font-size:11px;color:var(--faint);letter-spacing:.04em}
footer a{color:var(--faint);transition:color .2s}
footer a:hover{color:var(--muted)}
footer{padding:64px 0 0;border-top:1px solid rgba(255,255,255,.07);background-color:#05030c}
.nl-form{display:flex;gap:8px}
.btn-p{display:inline-flex;align-items:center;gap:8px;font-family:"JetBrains Mono",monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#fff;padding:13px 26px;border-radius:8px;transition:transform .2s,box-shadow .2s;text-decoration:none}
.btn-p--v{background:linear-gradient(135deg,#9b46ff,#d31ad1);box-shadow:0 6px 24px -4px rgba(155,70,255,.6)}
.btn-p--v:hover{transform:translateY(-2px);box-shadow:0 10px 32px -4px rgba(155,70,255,.85)}
@media(max-width:768px){.nl-form{flex-direction:column;gap:10px}.nl-input{width:100%}}
footer p,footer h3,footer h4,footer a{text-align:left!important}
footer *{text-align:left!important;box-sizing:border-box}
@keyframes logo-scan{0%{background-position:-100% 0}100%{background-position:200% 0}}
footer{padding:64px 0 0;border-top:1px solid rgba(255,255,255,.07);background-color:#05030c}
.nl-form{display:flex;gap:8px}
.btn-p{display:inline-flex;align-items:center;gap:8px;font-family:"JetBrains Mono",monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#fff;padding:13px 26px;border-radius:8px;transition:transform .2s,box-shadow .2s;text-decoration:none}
.btn-p--v{background:linear-gradient(135deg,#9b46ff,#d31ad1);box-shadow:0 6px 24px -4px rgba(155,70,255,.6)}
.btn-p--v:hover{transform:translateY(-2px);box-shadow:0 10px 32px -4px rgba(155,70,255,.85)}
@media(max-width:768px){.nl-form{flex-direction:column;gap:10px}.nl-input{width:100%}}
footer p,footer h3,footer h4,footer a{text-align:left!important}
footer *{text-align:left!important;box-sizing:border-box}
/* --- ajouts 1337 : retours d'etat du bouton commander --- */
.btn-order.is-loading{opacity:.65;cursor:progress}
.leet-order-error{margin-bottom:10px;padding:9px 12px;border-radius:9px;background:rgba(232,40,63,.1);border:1px solid rgba(232,40,63,.35);color:#ff8d9c;font-family:"JetBrains Mono",monospace;font-size:11px;line-height:1.45}
