:root{--bg:#0d0d0d;--surface:#181818;--raised:#242424;--ember:#d43a24;--ember-dark:#821c12;--cream:#fff7ec;--muted:#b8afa5;--gold:#c9853b;--line:#2b2927;--safe-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}html{background:#080808;color-scheme:dark}body{margin:0;background:radial-gradient(circle at 50% -10%,#422016 0,#14100f 28rem,#080808 55rem);color:var(--cream);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;min-height:100vh}.app-shell{background:var(--bg);width:min(100%,520px);min-height:100dvh;margin:0 auto;position:relative;box-shadow:0 0 80px #000}.topbar{height:70px;display:flex;align-items:center;padding:10px 16px;position:sticky;top:0;z-index:20;background:rgba(13,13,13,.94);backdrop-filter:blur(16px);border-bottom:1px solid #2a211d}.brand-logo{width:50px;height:50px;border-radius:50%;object-fit:cover;background:var(--cream)}.brand-copy{display:flex;flex-direction:column;flex:1;margin-left:10px}.brand-copy strong{font-size:1.1rem;font-weight:950;letter-spacing:.07em}.brand-copy span{color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.25em;margin-top:2px}.cart-chip{border:0;background:var(--raised);color:var(--cream);border-radius:20px;padding:9px 12px;font-weight:900;font-size:.9rem}main{padding-bottom:calc(82px + var(--safe-bottom))}.view{display:none;min-height:calc(100dvh - 150px);padding:18px}.view.active{display:block}.hero{min-height:285px;border-radius:24px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;margin-bottom:28px;overflow:hidden;background:radial-gradient(circle at 75% 20%,rgba(255,145,47,.55),transparent 20%),linear-gradient(145deg,#a22b18 0,#6d180f 48%,#240907 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 18px 40px rgba(0,0,0,.32);position:relative}.hero:after{content:"🔥";font-size:9rem;filter:blur(1px);opacity:.12;position:absolute;right:-12px;top:25px;transform:rotate(12deg)}.eyebrow{color:#f1a552;font-size:.75rem;font-weight:950;letter-spacing:.16em}.hero h1{font-size:2.55rem;line-height:.98;letter-spacing:-.04em;margin:10px 0 12px;max-width:300px;position:relative;z-index:1}.hero p{line-height:1.45;margin:0 0 19px;max-width:350px;position:relative;z-index:1}.primary{border:0;border-radius:14px;background:var(--ember);color:#fff;min-height:50px;padding:0 18px;font-size:.95rem;font-weight:900;cursor:pointer;position:relative;z-index:1}.primary:active,.text-button:active,.tab:active,.cart-chip:active,.qty button:active{transform:scale(.97);opacity:.78}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.section-head h2{font-size:1.45rem;margin:0}.text-button{border:0;background:transparent;color:var(--gold);font-weight:850;font-size:.9rem;padding:8px;cursor:pointer}.featured-track{display:grid;grid-auto-flow:column;grid-auto-columns:72%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none}.featured-track::-webkit-scrollbar{display:none}.featured-track .product-card{scroll-snap-align:start}.product-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;min-width:0}.product-card img,.image-fallback{width:100%;aspect-ratio:1;display:block;object-fit:cover;background:var(--cream)}.image-fallback{display:grid;place-items:center;font-size:3rem}.product-info{padding:12px}.product-info h3{font-size:.92rem;line-height:1.25;margin:0;min-height:3.45rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.price-row{display:flex;align-items:baseline;gap:7px;margin:10px 0}.price{color:var(--gold);font-size:1.05rem;font-weight:950}.old-price{color:var(--muted);font-size:.78rem;text-decoration:line-through}.add-button{width:100%;height:40px;border:0;border-radius:10px;background:var(--ember);color:#fff;font-weight:900}.add-button:disabled{opacity:.45}.promise{background:var(--surface);border-radius:18px;padding:18px;display:flex;align-items:center;margin-top:22px}.promise>span{font-size:2.2rem;margin-right:14px}.promise h3{margin:0 0 5px;font-size:1.05rem}.promise p{margin:0;color:var(--muted);line-height:1.4;font-size:.9rem}.page-title h1{margin:0;font-size:2rem;letter-spacing:-.03em}.page-title p{margin:5px 0 20px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.loader{color:var(--muted);padding:35px 4px;grid-column:1/-1}.error-box{min-height:45vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px}.error-box span{color:var(--muted);margin-bottom:10px}.hidden{display:none!important}.offer-card{border:1px solid var(--ember);background:linear-gradient(145deg,#8c2114,#4c100b);border-radius:24px;padding:24px}.offer-card h2{margin:12px 0 0;font-size:1.8rem}.offer-card>strong{display:block;font-size:4rem;line-height:1.1}.offer-card p{line-height:1.45;margin:5px 0 18px}.offer-card .primary{width:100%}.notification-card{background:var(--surface);border-radius:20px;text-align:center;padding:24px;margin-top:18px}.notification-card>span{font-size:2.5rem}.notification-card h2{font-size:1.25rem;margin:8px 0}.notification-card p{color:var(--muted);line-height:1.45;margin:0 0 8px}.cart-empty{min-height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.cart-empty>span{font-size:3.5rem}.cart-empty h2{margin:10px 0 0}.cart-empty p{color:var(--muted);line-height:1.4;margin:8px 0 18px}.cart-lines{display:flex;flex-direction:column;gap:10px}.cart-line{background:var(--surface);border-radius:16px;padding:10px;display:grid;grid-template-columns:64px 1fr auto;gap:10px;align-items:center}.cart-line img{width:64px;height:64px;border-radius:11px;object-fit:cover;background:var(--cream)}.cart-line h3{font-size:.9rem;line-height:1.25;margin:0 0 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-line .line-price{color:var(--gold);font-weight:900}.qty{display:flex;align-items:center;background:var(--raised);border-radius:11px}.qty button{width:34px;height:38px;border:0;background:transparent;color:var(--cream);font-size:1.25rem}.qty span{min-width:20px;text-align:center;font-weight:900}.checkout{position:sticky;bottom:calc(63px + var(--safe-bottom));background:rgba(24,24,24,.97);margin:18px -18px -18px;padding:18px;border-top:1px solid var(--line);backdrop-filter:blur(16px)}.total-row{display:flex;justify-content:space-between;align-items:center;font-weight:850}.total-row strong{font-size:1.55rem}.checkout small{display:block;color:var(--muted);margin:4px 0 14px}.checkout .primary{width:100%}.tabbar{height:calc(64px + var(--safe-bottom));padding:7px 4px var(--safe-bottom);position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:30;width:min(100%,520px);display:flex;background:rgba(17,17,17,.96);backdrop-filter:blur(20px);border-top:1px solid var(--line)}.tab{flex:1;border:0;background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:3px;font-weight:800;cursor:pointer}.tab>span{font-size:1.25rem;filter:grayscale(1);opacity:.55}.tab small{font-size:.7rem}.tab.active{color:var(--ember)}.tab.active>span{filter:none;opacity:1}.toast{position:fixed;left:50%;bottom:calc(84px + var(--safe-bottom));transform:translate(-50%,20px);width:max-content;max-width:calc(100% - 32px);background:var(--cream);color:#1b1715;padding:12px 16px;border-radius:14px;font-weight:850;box-shadow:0 12px 32px #0008;opacity:0;pointer-events:none;transition:.25s;z-index:50}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:700px){body{padding:28px 0}.app-shell{border-radius:26px;overflow:hidden;min-height:calc(100dvh - 56px)}.topbar{position:relative}.tabbar{bottom:28px;border-radius:0 0 26px 26px}.featured-track{grid-auto-columns:48%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Thème braise claire : plus lumineux tout en conservant l'identité Red Smoker. */
:root{--bg:#f5efe7;--surface:#fffdfa;--raised:#efe3d7;--ink:#241a16;--muted:#746861;--gold:#b96a23;--line:#ded2c7}
html{background:#e7ddd3;color-scheme:light}
body{color:var(--ink);background:radial-gradient(circle at 50% -10%,#fffaf4 0,#eee5dc 34rem,#ddd1c6 60rem)}
.app-shell{background:var(--bg);box-shadow:0 0 70px #59483c26}
.topbar{background:rgba(255,250,245,.94);border-bottom-color:var(--line)}
.brand-logo{box-shadow:0 3px 12px #59311e26}
.brand-copy strong,.cart-chip{color:var(--ink)}
.hero{color:var(--cream);background:radial-gradient(circle at 75% 20%,rgba(255,177,92,.68),transparent 23%),linear-gradient(145deg,#bd3b25 0,#8c2417 48%,#48110c 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),0 16px 34px rgba(126,48,25,.24)}
.product-card,.promise,.notification-card,.cart-line{background:var(--surface);border-color:var(--line);box-shadow:0 8px 24px rgba(91,63,47,.07)}
.product-info h3,.promise h3,.notification-card h2,.cart-line h3,.page-title h1{color:var(--ink)}
.promise p,.notification-card p,.page-title p,.loader,.cart-empty p{color:var(--muted)}
.cart-chip,.qty{background:var(--raised)}
.qty button,.qty span{color:var(--ink)}
.checkout{color:var(--ink);background:rgba(255,253,250,.97);border-top-color:var(--line);box-shadow:0 -12px 30px rgba(91,63,47,.08)}
.tabbar{background:rgba(255,250,245,.97);border-top-color:var(--line);box-shadow:0 -10px 28px rgba(91,63,47,.08)}
.tab{color:#746861}
.toast{background:#281b16;color:#fffaf5}
.notification-action{width:100%;margin-top:10px}
.hero-actions{display:flex;align-items:center;gap:10px;position:relative;z-index:2;flex-wrap:wrap}.install-button{min-height:50px;padding:0 15px;border:1px solid rgba(255,255,255,.48);border-radius:14px;background:rgba(255,255,255,.12);color:#fff;font-weight:900;font-size:.9rem;backdrop-filter:blur(8px)}
.install-sheet{position:fixed;inset:0;z-index:80;background:rgba(36,26,22,.56);display:flex;align-items:flex-end;justify-content:center;padding:18px;backdrop-filter:blur(7px)}.install-panel{position:relative;width:min(100%,480px);background:#fffdfa;color:var(--ink);border-radius:25px;padding:28px 22px calc(24px + var(--safe-bottom));text-align:center;box-shadow:0 20px 60px #241a1655}.install-panel img{width:86px;height:86px;border-radius:20px;object-fit:cover;box-shadow:0 8px 25px #8a5c3c33}.install-panel h2{margin:14px 0 8px;font-size:1.5rem}.install-panel p{margin:0 auto 20px;color:var(--muted);line-height:1.5;max-width:330px}.install-panel .primary{width:100%}.sheet-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:var(--raised);color:var(--ink);font-size:1.6rem;line-height:1}

/* Fiche produit et lien social */
.product-open{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.product-open .product-info{display:block}.product-name{display:-webkit-box;min-height:3.45rem;overflow:hidden;font-size:.92rem;font-weight:700;line-height:1.25;-webkit-line-clamp:3;-webkit-box-orient:vertical}.product-action{padding:0 12px 12px}.details-label{display:block;color:var(--ember);font-size:.8rem;font-weight:850;margin-top:-2px}.instagram-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-top:12px;padding:16px;border:1px solid #dfcbd5;border-radius:18px;color:var(--ink);text-decoration:none;background:linear-gradient(135deg,#fffdfa,#fff4f2);box-shadow:0 8px 24px rgba(91,63,47,.07)}.instagram-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);color:#fff;font-size:2rem;font-weight:900}.instagram-card div{display:flex;flex-direction:column;gap:3px;min-width:0}.instagram-card strong{font-size:.94rem}.instagram-card div span{color:var(--muted);font-size:.82rem;overflow:hidden;text-overflow:ellipsis}.instagram-card b{color:var(--ember);font-size:.86rem}.product-sheet{position:fixed;inset:0;z-index:90;display:flex;align-items:flex-end;justify-content:center;background:rgba(36,26,22,.58);backdrop-filter:blur(7px)}.product-panel{position:relative;width:min(100%,520px);max-height:92dvh;overflow-y:auto;border-radius:26px 26px 0 0;background:var(--surface);color:var(--ink);box-shadow:0 -20px 60px #241a1655}.product-panel>.sheet-close{position:fixed;right:max(14px,calc((100vw - 520px)/2 + 14px));top:max(9dvh,14px);z-index:2;box-shadow:0 4px 14px #241a1633}.product-panel>img{display:block;width:100%;aspect-ratio:1.25;object-fit:cover;background:var(--raised)}.product-detail-copy{padding:22px 20px calc(24px + var(--safe-bottom))}.product-detail-copy h2{margin:8px 0 10px;font-size:1.65rem;line-height:1.12}.detail-price-row{display:flex;align-items:baseline;gap:9px}.detail-price-row strong{color:var(--ember);font-size:1.35rem}.detail-price-row span{color:var(--muted);font-size:.9rem;text-decoration:line-through}.product-detail-copy p{color:var(--muted);line-height:1.58;margin:18px 0 22px;white-space:pre-line}.product-detail-copy .primary{width:100%}.sheet-open{overflow:hidden}
