/* SellSip: site styles. Colours come only from tokens.css. */
@font-face{font-family:'Sofia Sans Extra Condensed';src:url(fonts/SofiaSansExtraCondensed-VF.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Sofia Sans';src:url(fonts/SofiaSans-VF.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url(fonts/JetBrainsMono-VF.woff2) format('woff2');font-weight:100 800;font-display:swap}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(fonts/IBMPlexSansArabic-Regular.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(fonts/IBMPlexSansArabic-Bold.woff2) format('woff2');font-weight:700;font-display:swap}

:root{
  --sec-alt:var(--ss-crema); --sec-alt-ink:var(--ss-roast-black);
  --card:var(--ss-white); --card-ink:var(--ss-roast-black); --card-label:var(--ss-welcome-red); --card-link:var(--ss-copy-blue);
  --tag:var(--ss-golden-hour); --glow-rgb:255,181,71; --rcpt:var(--ss-crema); --rcpt-ink:var(--ss-roast-black); --rcpt-on-paper:var(--ss-white);
  --tip-bg:var(--ss-roast-black); --sip-bg:var(--ss-crema); --sip-ink:var(--ss-roast-black); --sip-label:var(--ss-welcome-red);
  --wrap:1240px;
}
[data-mode="night"]{
  --sec-alt:var(--ss-roast-black); --sec-alt-ink:var(--ss-crema);
  --card:var(--ss-night-slip); --card-ink:var(--ss-crema); --card-label:var(--ss-ember); --card-link:var(--ss-ember);
  --tag:var(--ss-ember); --glow-rgb:232,137,43; --rcpt:var(--ss-night-slip); --rcpt-ink:var(--ss-crema); --rcpt-on-paper:var(--ss-night-slip);
  --tip-bg:var(--ss-evening-blue); --sip-bg:var(--ss-roast-black); --sip-ink:var(--ss-crema); --sip-label:var(--ss-ember);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:clip}
body{background:var(--bg);color:var(--text-on-dark);font:400 var(--ss-text-base)/var(--ss-lh-body) var(--ss-font-body);-webkit-font-smoothing:antialiased;transition:background-color var(--ss-dur-mode),color var(--ss-dur-mode)}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:9;background:var(--ss-white);color:var(--ss-roast-black);padding:8px 12px}
[data-mode="day"] .only-night,[data-mode="night"] .only-day{display:none!important}
:focus-visible{outline:3px solid var(--glow);outline-offset:3px}

/* type */
.eyebrow{font:700 13px/1.2 var(--ss-font-mono);letter-spacing:var(--ss-track-label);text-transform:uppercase;color:var(--label);margin-bottom:18px}
.eyebrow--ink{color:var(--card-label)}
.h-hero{font:900 clamp(76px,9.6vw,150px)/.86 var(--ss-font-display);text-transform:uppercase;letter-spacing:-.01em;color:var(--text-on-dark)}
.h-hero em{font-style:normal;color:var(--accent)}
.h2{font:900 clamp(48px,6vw,84px)/.9 var(--ss-font-display);text-transform:uppercase;letter-spacing:-.005em}
.h3{font:800 30px/1 var(--ss-font-display);text-transform:uppercase;letter-spacing:.005em}
.lede{font-size:20px;line-height:1.5;max-width:30ch;margin-top:26px;color:var(--text-on-dark)}
.sec-lede{font-size:18px;max-width:46ch;margin-top:16px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:56px;padding:0 28px;border-radius:var(--ss-radius-button);font:800 22px/1 var(--ss-font-display);text-transform:uppercase;letter-spacing:.04em;text-decoration:none;border:0;cursor:pointer;transition:transform .15s}
.btn:hover{transform:translateY(-2px)}
.btn--red{background:var(--button-bg);color:var(--button-text);box-shadow:0 6px 0 rgba(0,0,0,.28)}
.btn--ghost{background:transparent;color:var(--text-on-dark);box-shadow:inset 0 0 0 2px currentColor}

/* nav */
.nav{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid rgba(var(--glow-rgb),.18)}
.nav__in{display:flex;align-items:center;gap:32px;height:78px}
.nav__logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.nav__icon{width:30px;height:42px}.nav__icon .slip{fill:var(--ss-crema)}.nav__icon .ink{fill:var(--ss-roast-black)}
.nav__word{display:flex;flex-direction:column;font:900 36px/.8 var(--ss-font-display);text-transform:uppercase;letter-spacing:.01em;color:var(--text-on-dark)}
.nav__word small{font:700 10.5px/1 var(--ss-font-mono);letter-spacing:.16em;margin-top:6px;color:var(--label)}
.nav__links{display:flex;gap:28px;margin-left:auto}
.nav__links a{font:700 13px/1 var(--ss-font-mono);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--text-on-dark)}
.nav__links a:hover{color:var(--label)}
/* theme toggle: sun / moon / auto (auto = viewer's local clock, day 06:00-18:59) */
.nav__mode.theme{display:flex;align-items:center;gap:2px;padding:4px;border-radius:999px;box-shadow:inset 0 0 0 2px rgba(246,235,217,.45);flex:none}
.theme__btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:var(--text-on-dark);cursor:pointer;font:700 11px/1 var(--ss-font-mono);letter-spacing:.1em;text-transform:uppercase;transition:background var(--ss-dur-mode),color var(--ss-dur-mode)}
.theme__btn svg{width:18px;height:18px;display:block}
.theme__btn:hover{background:rgba(246,235,217,.14)}
.theme__btn[aria-pressed="true"]{background:var(--toggle);color:var(--ss-white)}
.theme__auto{padding:0 11px}
.theme__auto[aria-pressed="true"]::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:6px}
.theme__btn.is-current:not([aria-pressed="true"]){box-shadow:inset 0 0 0 2px currentColor}
.theme__btn:focus-visible{outline:3px solid var(--ss-golden-hour);outline-offset:2px}

/* hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(60% 70% at 78% 30%,rgba(var(--glow-rgb),.28),transparent 70%),radial-gradient(40% 50% at 8% 100%,rgba(var(--glow-rgb),.12),transparent 70%),var(--bg)}
.hero__in{display:grid;grid-template-columns:.86fr 1.2fr;gap:64px;align-items:center;padding-top:64px;padding-bottom:150px}
.cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.proof{display:flex;flex-wrap:wrap;gap:22px;list-style:none;margin-top:30px;font:700 12px/1 var(--ss-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-on-dark)}
.proof li::before{content:"✓ ";color:var(--label)}
.hero__scene{position:relative}
.scene{position:relative;border-radius:22px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.5),0 0 0 1px rgba(var(--glow-rgb),.25);transform:rotate(1.2deg)}
.scene img{width:100%;aspect-ratio:16/10;object-fit:cover}
.scene::before,.scene::after{content:"";position:absolute;left:0;right:0;height:9%;background:var(--ss-roast-black);z-index:1}
.scene::before{top:0}.scene::after{bottom:0}
.scene figcaption{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;padding:2.4% 4%}
.scene__tag{font:700 12px/1 var(--ss-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ss-golden-hour)}
[data-mode="night"] .scene__tag{color:var(--ss-ember)}
.scene__sub{align-self:center;margin-right:16%;font:600 17px/1 var(--ss-font-body);color:var(--ss-white)}
.receipt{position:relative;background:var(--rcpt);color:var(--rcpt-ink);font-family:var(--ss-font-mono);padding:22px 22px 96px;
  -webkit-mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/14px 100%;mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/14px 100%}
.receipt-wrap{filter:drop-shadow(0 18px 30px rgba(0,0,0,.45))}
.r-head{font:900 34px/.9 var(--ss-font-display);text-transform:uppercase;letter-spacing:.01em}
.r-meta{font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin:6px 0 12px;padding-bottom:12px;border-bottom:2px dashed currentColor}
.receipt dl{display:grid;grid-template-columns:1fr auto;gap:6px 12px;font-size:14px}
.receipt dd{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}
.r-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px;padding-top:12px;border-top:2px dashed currentColor;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.r-total b{font:900 34px/1 var(--ss-font-display);letter-spacing:0}
.r-next{font-size:12.5px;line-height:1.45;margin-top:10px}
.r-foot{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;margin-top:14px;opacity:1}
.r-stamp{position:absolute;width:64%;right:4%;bottom:8px;transform:rotate(-8deg);pointer-events:none;mix-blend-mode:multiply}
[data-mode="night"] .r-stamp{mix-blend-mode:normal}
.receipt--hero{position:absolute;width:250px;right:-26px;bottom:-150px;transform:rotate(-3deg);z-index:3;filter:drop-shadow(0 22px 26px rgba(0,0,0,.5))}
.hero__mug{position:absolute;width:260px;left:-70px;bottom:-150px;z-index:4;transform:rotate(-6deg);filter:drop-shadow(0 14px 18px rgba(0,0,0,.35))}
@keyframes slam{0%{transform:rotate(-8deg) scale(2.2);opacity:0}55%{transform:rotate(-8deg) scale(.92);opacity:1}75%{transform:rotate(-8deg) scale(1.04)}100%{transform:rotate(-8deg) scale(1)}}
.slam{animation:slam var(--ss-dur-ink) cubic-bezier(.2,.9,.3,1.2) both}

/* ticker */
.ticker-clip{overflow:hidden;padding:22px 0;margin:-36px 0 -22px;position:relative;z-index:2}
.ticker{background:var(--ss-welcome-red);color:var(--ss-white);overflow:hidden;border-block:3px solid var(--ss-roast-black);transform:rotate(-1.2deg);margin:0 -20px}
.ticker__track{display:flex;gap:0;white-space:nowrap;width:max-content;animation:tick 38s linear infinite}
.ticker span{font:900 30px/1 var(--ss-font-display);text-transform:uppercase;letter-spacing:.03em;padding:16px 28px}
.ticker span::after{content:"★";margin-left:56px;color:var(--ss-roast-black)}
@keyframes tick{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker__track{animation:none}.slam{animation:none}}

/* tools */
.tools{overflow-x:clip;background:var(--sec-alt);color:var(--sec-alt-ink);padding:120px 0 110px;margin-top:-20px}
.sec-head{margin-bottom:48px}
.sec-head--row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.tools__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tool{background:var(--card);color:var(--card-ink);border-radius:var(--ss-radius-card);padding:28px;box-shadow:0 2px 0 rgba(20,16,14,.08),0 14px 30px rgba(20,16,14,.08);display:flex;flex-direction:column;gap:10px;position:relative}
[data-mode="night"] .tool{box-shadow:0 0 0 1px rgba(232,137,43,.22),0 18px 40px rgba(0,0,0,.4)}
.tool__no{font:700 12px/1 var(--ss-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--card-label)}
.tool a{margin-top:auto;font:700 13px/1 var(--ss-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--card-link);text-underline-offset:4px}
.tool--live{grid-column:span 2;grid-row:span 2;display:grid;grid-template-columns:1fr 300px;gap:32px;align-items:start;padding:34px}
.tool--live .h3{font-size:44px}
.qform{display:grid;gap:14px;margin-top:18px}
.qform label{display:grid;gap:6px;font:700 11.5px/1 var(--ss-font-mono);letter-spacing:.1em;text-transform:uppercase}
.qform input,.receipt--sip input{font:500 18px/1 var(--ss-font-mono);padding:13px 14px;border-radius:10px;border:2px solid currentColor;background:transparent;color:inherit;width:100%}
.qform .btn{margin-top:8px;justify-self:start}
.receipt--tool{background:var(--ss-crema);transform:rotate(1.5deg);filter:drop-shadow(0 14px 18px rgba(20,16,14,.22))}
[data-mode="night"] .receipt--tool{background:var(--ss-roast-black)}
.tool--mug{padding-top:28px;padding-right:150px;overflow:visible}
.tool--mug img{position:absolute;width:190px;bottom:-26px;right:-30px}

/* tip */
.tip{background:radial-gradient(50% 80% at 20% 50%,rgba(var(--glow-rgb),.22),transparent 70%),var(--tip-bg);padding:90px 0}
.tip__in{display:grid;grid-template-columns:380px 1fr;gap:40px;align-items:center}
.bubble{background:var(--ss-crema);color:var(--ss-roast-black);border-radius:28px;padding:40px 44px;position:relative;box-shadow:0 8px 0 var(--ss-welcome-red)}
.bubble::before{content:"";position:absolute;left:-22px;top:50%;border:14px solid transparent;border-right:26px solid var(--ss-crema);transform:translateY(-50%)}
.bubble .eyebrow{color:var(--ss-welcome-red)}
.bubble__q{font:800 clamp(30px,3.4vw,46px)/1.02 var(--ss-font-display);text-transform:uppercase;letter-spacing:.005em}
.bubble__q b{color:var(--ss-welcome-red);font-weight:900}

/* game room (homepage teaser) */
.nav__hot{background:var(--button-bg);color:var(--button-text)!important;padding:9px 13px;border-radius:999px;margin:-9px 0}
.nav__hot:hover{color:var(--button-text)!important;filter:brightness(1.08)}
.room{padding:110px 0;background:var(--sec-alt);color:var(--sec-alt-ink)}
.room__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.room__card{position:relative;display:flex;flex-direction:column;gap:10px;min-height:250px;padding:28px 150px 28px 28px;border-radius:var(--ss-radius-card);background:var(--card);color:var(--card-ink);text-decoration:none;overflow:visible;transition:transform .15s}
.room__card:hover{transform:translateY(-4px) rotate(-.4deg)}
.room__card img{position:absolute;width:170px;right:-14px;bottom:-18px;transform:rotate(6deg)}
[data-mode="night"] .room__card{box-shadow:0 0 0 1px rgba(232,137,43,.22),0 18px 40px rgba(0,0,0,.4)}
html:not([data-mode="night"]) .room{background:var(--ss-white);border-top:2px solid var(--ss-roast-black)}
html:not([data-mode="night"]) .room__card{box-shadow:0 0 0 2px var(--ss-roast-black),5px 5px 0 2px var(--ss-welcome-red)}
@media (max-width:1080px){.room__grid{grid-template-columns:1fr}.room__card{min-height:180px}}
@media (max-width:760px){.room{padding:90px 0}.room__card{padding-right:120px}.room__card img{width:130px}
  .nav__hot{font-size:11px!important;padding:8px 10px;letter-spacing:.06em!important}}

/* blog */
.blog{padding:110px 0;background:var(--bg)}
.link-arrow{font:700 13px/1 var(--ss-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--label);text-underline-offset:4px}
.blog__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.post img{border-radius:16px;aspect-ratio:4/3;object-fit:cover;margin-bottom:18px;box-shadow:0 0 0 1px rgba(var(--glow-rgb),.2)}
.tag{display:inline-block;font:700 11.5px/1 var(--ss-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--tag);margin-bottom:10px}
.post .h3{font-size:32px;line-height:.98}
.meta{font:500 12px/1 var(--ss-font-mono);letter-spacing:.08em;text-transform:uppercase;margin-top:12px;color:var(--text-on-dark)}

/* newsletter */
.sip{background:var(--sip-bg);color:var(--sip-ink);padding:110px 0 130px;position:relative;overflow:hidden}
.sip .eyebrow{color:var(--sip-label)}
.sip__in{display:grid;grid-template-columns:1fr 380px 280px;gap:40px;align-items:center}
.receipt--sip{background:var(--rcpt-on-paper);color:var(--card-ink);display:grid;gap:10px;transform:rotate(-1.5deg);filter:drop-shadow(0 18px 24px rgba(20,16,14,.25))}
.receipt--sip .r-meta{margin-bottom:4px}
.r-label{font:700 11px/1 var(--ss-font-mono);letter-spacing:.1em;text-transform:uppercase;margin-top:8px}
.receipt--sip .btn{width:100%}
.receipt--sip{padding-bottom:26px}
#sip-stamp{opacity:0;width:74%;right:8%;bottom:34%}
#sip-stamp.show{opacity:1}
.sip__mug{width:300px;transform:rotate(6deg)}

/* footer */
.foot{background:var(--ss-roast-black);color:var(--ss-crema);padding:64px 0;border-top:6px solid var(--ss-welcome-red)}
.foot__in{display:grid;grid-template-columns:200px 1fr auto;gap:40px;align-items:center}
.foot__big{font:900 48px/.9 var(--ss-font-display);text-transform:uppercase}
.foot__meta{font:500 12px/1.5 var(--ss-font-mono);letter-spacing:.08em;text-transform:uppercase;margin-top:12px;color:var(--ss-golden-hour)}
.foot nav{display:flex;flex-direction:column;gap:12px}
.foot nav a{font:700 13px/1 var(--ss-font-mono);letter-spacing:.1em;text-transform:uppercase;text-decoration:none}

/* responsive */
@media (max-width:1080px){
  .hero__in{grid-template-columns:1fr;gap:70px}
  .tools__grid{grid-template-columns:1fr 1fr}
  .tool--live{grid-column:span 2;grid-row:auto}
  .sip__in{grid-template-columns:1fr 1fr}.sip__mug{display:none}
}
@media (max-width:760px){
  .wrap{padding:0 20px}
  .nav__links{display:flex;margin-left:auto;gap:0}.nav__links a:not(.nav__hot){display:none}.nav__in{height:66px;gap:10px;justify-content:space-between}
  .nav__word{font-size:30px}
  .theme__btn{min-width:32px;height:32px;padding:0 6px}.theme__auto{padding:0 8px;font-size:10px}.theme__auto[aria-pressed="true"]::before{margin-right:4px}
  .hero__in{padding-top:40px;padding-bottom:120px;gap:56px}
  .h-hero{font-size:clamp(68px,21vw,110px)}
  .lede{font-size:18px}
  .btn{height:52px;font-size:20px;padding:0 22px}
  .scene{transform:none;border-radius:16px}
  .scene__sub{font-size:13px}.scene__tag{font-size:9.5px}
  .receipt--hero{position:relative;width:220px;right:auto;bottom:auto;margin:-46px 4px 0 auto;padding-bottom:84px}
  .scene__sub{display:none}
  .tool--mug img{right:-8px;width:160px}.tool--mug{padding-right:130px}
  .receipt--hero .r-head,.receipt--hero .r-total b{font-size:26px}
  .receipt--hero dl{font-size:12px}.receipt--hero .r-next{display:none}
  .hero__mug{width:180px;left:-14px;bottom:-30px}
  .hero__in{padding-bottom:90px}
  .ticker span{font-size:24px;padding:12px 18px}
  .tools{padding:90px 0 80px}
  .tools__grid,.blog__grid{grid-template-columns:1fr}
  .tool--live{grid-column:auto;grid-template-columns:1fr;padding:26px}
  .tool--live .h3{font-size:38px}
  .tip__in{grid-template-columns:1fr;gap:0}.tip__in>img{width:220px;margin:0 auto -30px;position:relative;z-index:1}
  .bubble{padding:34px 26px}.bubble::before{display:none}
  .sec-head--row{display:block}.sec-head--row .link-arrow{display:inline-block;margin-top:16px}
  .sip__in{grid-template-columns:1fr}
  .foot__in{grid-template-columns:1fr;gap:24px}.foot__in>img{width:160px}
}

/* ===== DAY = clearly daytime: Crema / White surfaces, Roast Black type, Welcome Red + Copy Blue accents ===== */
html:not([data-mode="night"]){
  --bg:var(--ss-crema); --text-on-dark:var(--ss-roast-black); --label:var(--ss-copy-blue); --glow-rgb:255,181,71;
  --sec-alt:var(--ss-white); --card:var(--ss-crema); --card-label:var(--ss-copy-blue); --card-link:var(--ss-copy-blue);
  --tag:var(--ss-copy-blue); --tip-bg:var(--ss-copy-blue); --sip-bg:var(--ss-white); --rcpt:var(--ss-white); --rcpt-on-paper:var(--ss-crema);
}
html:not([data-mode="night"]) body{background:var(--ss-crema)}
html:not([data-mode="night"]) .nav{background:color-mix(in srgb,var(--ss-crema) 94%,transparent);border-bottom:2px solid var(--ss-roast-black)}
html:not([data-mode="night"]) .nav__icon .slip{fill:var(--ss-white)}
html:not([data-mode="night"]) .nav__icon{filter:drop-shadow(0 0 0 #000) drop-shadow(1.5px 1.5px 0 var(--ss-roast-black))}
html:not([data-mode="night"]) .nav__word small{color:var(--ss-copy-blue)}
html:not([data-mode="night"]) .nav__mode.theme{box-shadow:inset 0 0 0 2px var(--ss-roast-black)}
html:not([data-mode="night"]) .theme__btn{color:var(--ss-roast-black)}
html:not([data-mode="night"]) .theme__btn:hover{background:rgba(20,16,14,.08)}
html:not([data-mode="night"]) .theme__btn[aria-pressed="true"]{color:var(--ss-white)}
html:not([data-mode="night"]) .theme__btn:focus-visible{outline-color:var(--ss-copy-blue)}
html:not([data-mode="night"]) .hero{background:
  radial-gradient(55% 75% at 80% 25%,rgba(255,181,71,.55),transparent 70%),
  radial-gradient(35% 45% at 4% 95%,rgba(219,47,36,.10),transparent 70%),
  repeating-linear-gradient(0deg,rgba(20,16,14,.035) 0 1px,transparent 1px 34px),
  var(--ss-crema)}
html:not([data-mode="night"]) .hero .eyebrow{color:var(--ss-copy-blue)}
html:not([data-mode="night"]) .proof li::before{color:var(--ss-welcome-red)}
html:not([data-mode="night"]) .scene{box-shadow:0 26px 60px rgba(20,16,14,.28),0 0 0 3px var(--ss-roast-black),8px 8px 0 3px var(--ss-welcome-red)}
html:not([data-mode="night"]) .receipt--hero{filter:drop-shadow(0 16px 20px rgba(20,16,14,.3))}
html:not([data-mode="night"]) .btn--red{box-shadow:0 5px 0 var(--ss-roast-black)}
html:not([data-mode="night"]) .tools{border-top:0}
html:not([data-mode="night"]) .tool{box-shadow:0 0 0 2px var(--ss-roast-black),5px 5px 0 2px var(--ss-roast-black)}
html:not([data-mode="night"]) .tool--live{background:var(--ss-white);box-shadow:0 0 0 2px var(--ss-roast-black),7px 7px 0 2px var(--ss-welcome-red)}
html:not([data-mode="night"]) .tool--live .tool__no{color:var(--ss-welcome-red)}
html:not([data-mode="night"]) .receipt--tool{background:var(--ss-crema)}
html:not([data-mode="night"]) .tip{background:radial-gradient(50% 80% at 18% 50%,rgba(255,181,71,.35),transparent 70%),var(--ss-copy-blue)}
html:not([data-mode="night"]) .bubble{background:var(--ss-white);box-shadow:0 0 0 3px var(--ss-roast-black),8px 8px 0 3px var(--ss-roast-black)}
html:not([data-mode="night"]) .bubble::before{border-right-color:var(--ss-white)}
html:not([data-mode="night"]) .blog{background:var(--ss-crema)}
html:not([data-mode="night"]) .post img{box-shadow:0 0 0 2px var(--ss-roast-black),6px 6px 0 2px var(--ss-roast-black)}
html:not([data-mode="night"]) .link-arrow{color:var(--ss-copy-blue)}
html:not([data-mode="night"]) .sip{background:var(--ss-white);border-top:2px solid var(--ss-roast-black)}
html:not([data-mode="night"]) .sip .eyebrow{color:var(--ss-welcome-red)}
html:not([data-mode="night"]) .receipt--sip{background:var(--ss-crema)}
html:not([data-mode="night"]) .foot{background:var(--ss-welcome-red);color:var(--ss-white);border-top:3px solid var(--ss-roast-black)}
html:not([data-mode="night"]) .foot__meta{color:var(--ss-white)}
/* theme contrast fix (WCAG AA): Welcome Red is 4.0:1 on the night Crema bubble at label size; Copy Blue is 6+:1 */
[data-mode="night"] .bubble .eyebrow{color:var(--ss-copy-blue)}
/* small phones: the Warm-Up pill also lives in the sub-nav, so give the header room for the theme toggle */
.nav__hot{white-space:nowrap}
@media (max-width:440px){.nav:has(.subnav) .nav__in .nav__links{display:none}.nav__in{justify-content:space-between}}
.nav__word small{white-space:nowrap}

/* ---------- cookie consent banner (consent.js). Small, non-blocking, equal-weight choices; day + night ---------- */
.consent{position:fixed;left:16px;bottom:16px;z-index:60;width:min(560px,calc(100% - 32px));display:grid;grid-template-columns:56px 1fr;gap:12px 16px;align-items:start;
  padding:16px 18px;border-radius:var(--ss-radius-card);background:var(--ss-crema);color:var(--ss-roast-black);border:2px solid var(--ss-roast-black);
  box-shadow:6px 6px 0 var(--ss-welcome-red);font:500 15px/1.45 var(--ss-font-body);animation:ss-consent-in .25s ease-out both}
.consent[hidden]{display:none}
.consent__mug{width:56px;height:56px;object-fit:contain}
.consent__title{font:900 24px/1 var(--ss-font-display);text-transform:uppercase;letter-spacing:.01em;margin:2px 0 6px}
.consent__text{margin:0}
.consent__text a{color:var(--ss-copy-blue);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.consent__now{margin:6px 0 0;font:600 13px/1.4 var(--ss-font-mono)}
.consent__now[hidden]{display:none}
.consent__btns{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.consent__btn{appearance:none;cursor:pointer;min-height:44px;padding:10px 16px;border-radius:var(--ss-radius-button);border:2px solid var(--ss-roast-black);
  background:var(--ss-roast-black);color:var(--ss-crema);font:800 15px/1 var(--ss-font-body);letter-spacing:.02em}
.consent__btn:hover{background:var(--ss-welcome-red);border-color:var(--ss-welcome-red);color:var(--ss-white)}
.consent__btn[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--ss-crema)}
.consent__btn:focus-visible,.consent__text a:focus-visible{outline:3px solid var(--ss-copy-blue);outline-offset:3px}
[data-mode="night"] .consent{background:var(--ss-evening-blue);color:var(--ss-crema);border-color:var(--ss-golden-hour);box-shadow:6px 6px 0 rgba(255,181,71,.35)}
[data-mode="night"] .consent__text a{color:var(--ss-golden-hour)}
[data-mode="night"] .consent__btn{background:var(--ss-crema);border-color:var(--ss-crema);color:var(--ss-evening-blue)}
[data-mode="night"] .consent__btn:hover{background:var(--ss-golden-hour);border-color:var(--ss-golden-hour);color:var(--ss-roast-black)}
[data-mode="night"] .consent__btn[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--ss-evening-blue)}
[data-mode="night"] .consent__btn:focus-visible,[data-mode="night"] .consent__text a:focus-visible{outline-color:var(--ss-golden-hour)}
/* never hide content: while the banner is open the page gets room underneath it, and sticky bars sit above it */
html.has-consent{scroll-padding-bottom:var(--ss-consent-h,0px)}
html.has-consent body{padding-bottom:var(--ss-consent-h,0px)}
html.has-consent .live{bottom:calc(var(--ss-consent-h,0px) + 4px)}
@keyframes ss-consent-in{from{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}
@media (max-width:600px){
  .consent{left:8px;right:8px;bottom:8px;width:auto;grid-template-columns:1fr;padding:12px 14px;gap:8px;font-size:14px;box-shadow:4px 4px 0 var(--ss-welcome-red)}
  [data-mode="night"] .consent{box-shadow:4px 4px 0 rgba(255,181,71,.35)}
  .consent__mug{display:none}
  .consent__title{font-size:21px;margin:0 0 4px}
}
@media (prefers-reduced-motion:reduce){.consent{animation:none}}

/* ---- mobile overflow guard (site-wide) ---- */
img,video,iframe,canvas,embed,object{max-width:100%}
img,video{height:auto}
main p,main li,main dd,main dt,main td,main th,main blockquote,main figcaption,main h1,main h2,main h3,main h4,.answer,.foot{overflow-wrap:anywhere}
main pre,main code{white-space:pre-wrap;overflow-wrap:anywhere}
.post__grid>*,.result>*,.lost>*,.prose,.prose-lite,.aside{min-width:0}
@media (max-width:900px){.post__grid,.result,.lost{grid-template-columns:minmax(0,1fr)}}
.table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:8px 0 26px;border-radius:6px;
 background:linear-gradient(to right,var(--bg) 30%,transparent) left/40px 100% no-repeat local,linear-gradient(to left,var(--bg) 30%,transparent) right/40px 100% no-repeat local,
 radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.22),transparent) left/12px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.22),transparent) right/12px 100% no-repeat scroll}
.table-scroll:focus-visible{outline:3px solid var(--glow,var(--ss-golden-hour));outline-offset:2px}
.prose .table-scroll table,.prose-lite .table-scroll table,.table-scroll table{display:table;width:100%;margin:0;overflow:visible}
.table-scroll th,.table-scroll td{overflow-wrap:normal;word-break:normal;min-width:6.5em}
.prose h2{font-size:clamp(28px,8vw,40px)}
@media (max-width:600px){
 .h-hero{font-size:clamp(44px,14vw,76px)}
 .h2{font-size:clamp(34px,11vw,48px)}
 .post__title{font-size:clamp(36px,11.5vw,48px)}
 .lost h1{font-size:clamp(44px,14vw,64px)}
}
@media (max-width:400px){.nav__in{gap:6px}.nav__in>*{min-width:0}.nav__mode{flex-shrink:0}}
