:root{color-scheme:light;--bg:#f4f3ee;--text:#121212;--muted:#5f625a;--green:#3ccb5a;--navy:#15192b;--mono:ui-monospace,'SF Mono','Cascadia Mono',Menlo,Consolas,monospace;--display:Impact,Haettenschweiler,'Arial Narrow Bold','sans-serif-condensed',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:16px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--green);outline-offset:4px}[hidden]{display:none!important}.marquee{height:28px;overflow:hidden;background:#e9ef5a;font:600 11px/28px var(--mono);letter-spacing:.04em;white-space:nowrap}.marquee-track{display:flex;width:max-content;animation:marquee 24s linear infinite}.marquee-group{display:flex;flex:none}.marquee-group>span{flex:none;padding-right:1ch}main,footer{width:min(1160px,calc(100% - 48px));margin:auto}.hero{padding:20px 0 32px;border-bottom:1px solid #1212121f}.hero-art{height:clamp(300px,40vw,460px);position:relative;isolation:isolate;display:flex;align-items:flex-end}.character{position:absolute;z-index:1;width:clamp(245px,36vw,420px);left:50%;top:0;transform:translateX(-50%)}.character img{display:block;width:100%;height:auto;border-radius:50%}.character{animation:character-pop .5s .3s both cubic-bezier(.34,1.56,.64,1)}h1{position:relative;z-index:2;margin:0;display:flex;justify-content:center;width:100%;font-family:var(--display);font-weight:900;font-stretch:condensed;font-size:clamp(56px,15vw,168px);line-height:.82;letter-spacing:-.02em}h1>span{overflow:clip;display:block}h1 i{display:block;font-style:normal;animation:rise .6s calc(var(--i)*70ms) both cubic-bezier(.16,1,.3,1)}.sticker{position:absolute;z-index:3;animation:pop .5s calc(.3s + var(--i)*80ms) both cubic-bezier(.34,1.56,.64,1)}.meteor{right:15%;top:12%;font-size:52px}.ticker{left:3%;bottom:18%;padding:8px 14px;background:var(--green);border:1px solid var(--text);border-radius:30px;font:700 14px var(--mono);font-variant-numeric:tabular-nums;rotate:-8deg}.up{right:3%;top:38%;bottom:auto;font-size:14px;font-weight:800;rotate:8deg}.coin{left:22%;top:18%;background:#d5ae4c;border:3px double #121212;border-radius:50%;width:40px;height:40px;text-align:center;font:900 25px/34px var(--mono);rotate:-15deg}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px}.tagline{font-size:clamp(24px,3vw,36px);line-height:1.13;font-weight:750;letter-spacing:-.04em;margin:0}.hero-actions,.game-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:48px;padding:12px 24px;border:1px solid var(--text);border-radius:40px;text-decoration:none;background:transparent;color:var(--text);font-size:13px;line-height:1.2;letter-spacing:.04em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background .2s,color .2s}.button:hover{background:#e9ef5a}.primary{background:var(--text);color:#fff}.primary:hover{background:var(--green);color:#0b1f10}.button[aria-disabled=true]{background:transparent;border-style:dashed;color:var(--muted);cursor:not-allowed}#contract-row{font:12px var(--mono);overflow-wrap:anywhere}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:26px 0 16px}h2{font-size:clamp(22px,3vw,36px);letter-spacing:-.04em;line-height:1.1;margin:0}.section-heading h2{font-size:clamp(19px,2.8vw,30px)}.section-heading p,.game-hint{font-size:12px;color:var(--muted)}.game-stage{height:auto;background:var(--navy);position:relative;overflow:hidden;color:#f4f3ee;border-radius:6px} .scoreboard{max-width:calc(50% - 24px);position:absolute;top:18px;left:20px;pointer-events:none;font-family:var(--mono);font-variant-numeric:tabular-nums;z-index:1}.game-records{display:flex;gap:14px;font-size:10px;color:#c0c5b9}.market-cap{font-size:clamp(32px,6vw,52px);font-weight:800;line-height:1.2;letter-spacing:-.055em}.quote-details{display:flex;gap:15px;align-items:baseline;color:#c0c5b9;font-size:12px}.multiplier{font-size:15px;color:var(--green)}.game-stage[data-state=running] .market-cap{color:#a3ffb7}.game-stage[data-sold=true]:not([data-state=crashed]) .market-cap,.game-stage[data-sold=true]:not([data-state=crashed]) .quote-details{opacity:.5}.game-stage[data-state=crashed] .market-cap,.game-stage[data-state=crashed] .quote-details,.game-stage[data-state=crashed] .multiplier{color:#ff583b}#sold-value{margin-top:6px;font:700 11px/1.5 var(--mono);color:#ffe18a}.game-feed{display:flex;align-items:baseline;gap:14px;overflow:hidden;white-space:nowrap;font:10px/1.6 var(--mono);color:var(--muted);margin-top:8px}.game-feed>span{flex:none;font-size:9px;letter-spacing:.02em}.game-feed ol{list-style:none;margin:0;padding:0;min-width:0;overflow:hidden}.game-feed li{display:none;overflow:hidden;text-overflow:ellipsis}.game-feed li:first-child{display:block}canvas{width:100%;height:410px;display:block;touch-action:manipulation}#game-result{position:relative;margin:0;padding:10px 16px;min-height:44px;border-top:1px solid #ffffff13;font:12px/1.5 var(--mono);pointer-events:none;text-align:center;white-space:pre-line}.game-stage[data-sold=true] #game-result{color:#ffe18a;font-size:12px}.game-stage[data-state=crashed]:not([data-sold=true]) #game-result{color:#ff6846;font:900 24px/1.5 var(--display);letter-spacing:-.02em}.live-ticker{margin:16px 0 0;font:11px/1.6 var(--mono);color:var(--muted);overflow-wrap:anywhere}.game-section>.live-ticker{margin:0 0 12px}.game-controls{margin:16px 0 30px}.game-controls .primary{min-width:190px}.lore{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:40px 0;border-top:1px solid #1212121f}.eyebrow{font:12px var(--mono);color:var(--muted);letter-spacing:.04em}.lore h2{font-size:clamp(32px,4vw,52px)}.lore p{line-height:1.8}.text-link{font-size:14px;font-weight:700;text-underline-offset:5px}figure{margin:0;min-width:0}figure img{width:100%;height:auto;display:block}figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font:11px/1.5 var(--mono)}figcaption span{color:var(--muted)}figcaption a{white-space:nowrap;font-size:13px}footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #1212121f;padding:24px 0 32px}footer strong{font:700 13px var(--mono)}footer p{margin:0;color:var(--muted);font-size:12px}@keyframes rise{from{transform:translateY(105%)}to{transform:translateY(0)}}@keyframes pop{from{transform:scale(.4) rotate(-12deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes character-pop{from{transform:translateX(-50%) scale(.4) rotate(-12deg);opacity:0}to{transform:translateX(-50%) scale(1) rotate(0);opacity:1}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes shake{25%,75%{transform:translateX(-5px)}50%{transform:translateX(5px)}}@media(max-width:600px){main,footer{width:calc(100% - 32px)}.hero{padding-top:12px;padding-bottom:24px}.hero-art{height:280px}h1{font-size:15vw;letter-spacing:-.035em}.character{width:265px}.meteor{right:0;top:12%;font-size:40px}.coin{left:7%;top:20%}.ticker{left:0;bottom:24%;font-size:12px}.up{right:2%;top:48%;bottom:auto;font-size:12px}.hero-bottom{display:block;margin-top:20px}.tagline br{display:none}.tagline{font-size:24px;max-width:300px}.hero-actions{margin-top:18px;gap:8px}.hero-actions .button{padding:12px 17px}.section-heading{display:block;margin-top:22px}.section-heading p{margin:8px 0 0}#game-canvas{height:390px}.scoreboard{left:14px;top:16px}.game-records{gap:9px;font-size:9px}.quote-details{font-size:10px;gap:10px}.market-cap{font-size:23px}.game-feed{gap:8px;font-size:9px}.game-feed>span{font-size:8px}#game-result{padding:10px;font-size:10px}.game-stage[data-sold=true] #game-result{font-size:10px}.game-controls .primary{flex:1}.game-controls .button{padding:12px 17px}#game-mute{min-width:96px}.game-hint{width:100%}.lore{grid-template-columns:1fr;gap:28px;padding:30px 0}figcaption span{max-width:55%}footer{display:block}footer p{margin-top:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Fit the poster lettering even when a platform lacks a condensed system font. */
.hero-art{overflow:clip}h1{width:max-content;flex:none;transform:scaleX(var(--wordmark-scale,.75));transform-origin:left bottom}h1>span{flex:none}

.memes{border-top:1px solid #1212121f;padding-bottom:32px}.meme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.meme-thumb{display:block;border:0;padding:0;background:transparent;cursor:zoom-in}.meme-thumb img{display:block;width:100%;height:auto;aspect-ratio:1;background:#1212120d;color:transparent}
#meme-dialog{width:min(680px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:12px;border:1px solid var(--text);background:var(--bg);color:var(--text);overflow:auto}#meme-dialog::backdrop{background:#090b12d9}body:has(#meme-dialog[open]){overflow:hidden}.meme-toolbar,.meme-navigation,.meme-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.meme-toolbar{margin-bottom:8px;font:12px var(--mono)}#meme-full{display:block;width:100%;height:auto;max-height:calc(100dvh - 240px);object-fit:contain;touch-action:pan-y}.meme-navigation{margin:10px 0}.meme-actions{justify-content:flex-start;flex-wrap:wrap}#meme-dialog .button{min-height:40px;padding:9px 16px;font-size:11px}#meme-status{min-height:18px;margin:8px 0 0;font:11px var(--mono)}
@media(max-width:600px){.meme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}}

/* The escape cue uses the existing stage, with a quiet reduced-motion border. */
.game-records{flex-wrap:wrap;column-gap:10px;row-gap:2px}
.game-stage[data-state=diving]::after{content:"";position:absolute;inset:0;pointer-events:none;border:4px solid #ff583b;box-shadow:inset 0 0 30px #ff583b88;animation:dive-alert .35s ease-in-out 2 alternate}
.game-stage[data-clutch=true] #game-result{font-weight:800;color:#ffe18a;animation:clutch-stamp .28s ease-out}
@keyframes dive-alert{from{opacity:1}to{opacity:.4}}
@keyframes clutch-stamp{from{transform:scale(1.15) rotate(-3deg);opacity:.4}to{transform:scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.game-stage[data-state=diving]::after{border-width:3px;box-shadow:inset 0 0 12px #ff583b44}}
