:root{color-scheme:dark;--bg: #0a0c10;--panel: #12161f;--neon: #7dffb3;--amber: #ffc857;--pink: #ff6b9d;--muted: #a8b0c4;--muted-dim: #8b95ab;--text: #eef1f8;--frame: #1c2333;--border: #2a3448;--scan: rgba(0, 0, 0, .18);--font-display: "Press Start 2P", ui-monospace, monospace;--font-body: "IBM Plex Mono", ui-monospace, "Cascadia Code", monospace;--space-1: .35rem;--space-2: .65rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--radius: 6px;--focus: 0 0 0 3px rgba(255, 200, 87, .55);--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--lh-tight: 1.55;--lh-body: 1.75;--lh-loose: 1.9;--shell-max: 1560px;--touch-min: 2.5rem}*{box-sizing:border-box}html{font-size:100%}html,body{margin:0;min-height:100%;background:radial-gradient(ellipse at top,#152033 0%,var(--bg) 55%),var(--bg);color:var(--text);font-family:var(--font-body);line-height:var(--lh-body)}body{padding:var(--space-3) var(--space-3) var(--space-5)}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--focus)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.crt-overlay{display:none}}.skip-link{position:absolute;left:-9999px;top:.5rem;z-index:2000;padding:.65rem 1rem;background:var(--amber);color:var(--bg);font-family:var(--font-display);font-size:var(--text-xs);text-decoration:none;border-radius:var(--radius)}.skip-link:focus{left:.75rem;box-shadow:var(--focus)}.beta-banner{width:100%;margin:0 0 50px;padding:.55rem 1rem;text-align:center;background:linear-gradient(90deg,#4a2060eb,#143028f2,#4a2060eb);border-bottom:1px solid rgba(125,255,179,.35);box-shadow:0 2px 12px #00000059}@media(max-width:720px){.beta-banner{margin-bottom:.75rem}}.beta-banner-text{margin:0 auto;max-width:52rem;font-family:var(--font-body, "IBM Plex Mono", ui-monospace, monospace);font-size:clamp(.72rem,1.6vw,.85rem);line-height:1.45;color:#e8f0e8}.beta-banner-label{display:inline-block;margin-right:.45rem;padding:.12rem .4rem;border-radius:3px;font-family:var(--font-display, "Press Start 2P", monospace);font-size:.55rem;letter-spacing:.08em;color:#0a0c10;background:#7dffb3;box-shadow:0 0 10px #7dffb373;vertical-align:middle}#shell{width:min(100%,var(--shell-max));margin:0 auto;display:flex;flex-direction:column;gap:var(--space-3)}.topbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.topbar-brand{min-width:min(100%,16rem);text-align:left}.logo{text-decoration:none;display:inline-block}.logo-mark{font-family:var(--font-display);font-size:clamp(1rem,2.5vw,1.35rem);letter-spacing:.14em;color:var(--neon);line-height:1.4;text-shadow:0 0 12px rgba(125,255,179,.4),3px 3px 0 #0d3d28}.tagline{margin:.5rem 0 0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);letter-spacing:.02em;line-height:var(--lh-loose);max-width:28rem}.topbar-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem .65rem}.auth-status{font-family:var(--font-body);font-size:var(--text-xs);color:var(--muted);max-width:14rem;text-align:right;line-height:var(--lh-body);padding:.35rem .5rem}.nav-btn{font-family:var(--font-display);font-size:.625rem;letter-spacing:.04em;line-height:1.5;min-height:var(--touch-min);padding:.55rem .85rem;border-radius:var(--radius);border:2px solid #c9a227;background:var(--amber);color:var(--bg);cursor:pointer;box-shadow:2px 2px #0a0c10;display:inline-flex;align-items:center;gap:.4rem}.nav-btn:hover{filter:brightness(1.06)}.nav-btn:active{transform:translate(1px,1px);box-shadow:1px 1px #0a0c10}.nav-btn.is-active{color:#0a0c10;background:#7dffb3;border-color:#5ad4a0}.nav-btn-ghost{background:transparent;color:var(--amber);border-color:#5c4d20}.nav-btn-primary{background:var(--neon);border-color:#3a9a68;color:var(--bg)}.nav-kbd{font-family:var(--font-body);font-size:.7rem;opacity:.85;border:1px solid rgba(10,12,16,.35);border-radius:3px;padding:.1rem .28rem}.main{display:grid;grid-template-columns:1fr;gap:var(--space-3);align-items:start}@media(min-width:1100px){.main{grid-template-columns:minmax(0,1fr) minmax(12rem,15rem)}}.game-stage{display:flex;flex-direction:column;width:100%;min-width:0;gap:0}#game-frame{position:relative;background:var(--frame);border:4px solid var(--border);border-radius:10px;box-shadow:0 0 0 2px #0a0c10,0 18px 50px #0000008c,inset 0 0 40px #00000059;overflow:hidden;max-height:100dvh;flex:0 1 auto}.identity-pick-panel{max-width:min(42rem,96vw)}.identity-pick-body{margin:.5rem 0 .25rem}.identity-race-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.55rem;max-height:min(52vh,28rem);overflow-y:auto;padding:.15rem}.identity-race-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:.35rem;margin:0;padding:.55rem .35rem .65rem;border:2px solid #3a3150;border-radius:8px;background:#12161f;cursor:pointer;color:#f4f0ff;font-family:inherit;text-align:center;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.identity-race-card:hover,.identity-race-card:focus-visible{border-color:#7dffb3;box-shadow:0 0 0 2px #7dffb34d;outline:none;transform:translateY(-1px)}.identity-race-card.is-selected{border-color:#7dffb3;box-shadow:0 0 0 2px #7dffb373;background:#161c28}.identity-race-thumb{display:block;width:64px;height:64px;image-rendering:pixelated;image-rendering:crisp-edges;border-radius:4px;border:2px solid #2a2438;background:#0a0c10;pointer-events:none}.identity-race-name{font-family:"Press Start 2P",monospace;font-size:.48rem;letter-spacing:.04em;color:#7dffb3;line-height:1.4}.identity-race-blurb{font-size:.68rem;line-height:1.35;color:var(--muted);max-width:7.5rem}.identity-selected-chip{position:absolute;top:.25rem;right:.25rem;font-family:"Press Start 2P",monospace;font-size:.35rem;color:#0a0c10;background:#7dffb3;padding:.15rem .25rem;border-radius:3px}.identity-step-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:.75rem}.identity-step-actions .identity-back-btn{margin-right:auto}.identity-pick-gallery{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:.5rem 0 .25rem}.identity-portrait-card{display:flex;flex-direction:column;align-items:center;gap:.65rem;margin:0;padding:.85rem .75rem 1rem;border:3px solid #3a3150;border-radius:10px;background:#12161f;cursor:pointer;color:#f4f0ff;font-family:inherit;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.identity-portrait-card:hover,.identity-portrait-card:focus-visible{border-color:#7dffb3;box-shadow:0 0 0 2px #7dffb359;outline:none;transform:translateY(-2px)}.identity-portrait-card:active{transform:translateY(0);border-color:#ffc857}.identity-portrait{display:block;width:min(192px,38vw);height:auto;aspect-ratio:1;image-rendering:pixelated;image-rendering:crisp-edges;border-radius:6px;border:2px solid #2a2438;background:#0a0c10;pointer-events:none}.identity-portrait-label{font-family:"Press Start 2P",monospace;font-size:.7rem;letter-spacing:.06em;color:#7dffb3}.identity-pick-note{margin-top:.75rem;opacity:.85;font-size:.85em}@media(max-width:720px){.identity-race-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:480px){.identity-race-grid{grid-template-columns:repeat(2,1fr);max-height:48vh}.identity-pick-gallery{gap:.55rem}.identity-portrait-card{padding:.55rem .4rem .75rem}.identity-portrait-label{font-size:.55rem}.identity-race-name{font-size:.4rem}}.loot-reveal-panel{max-width:min(44rem,96vw);text-align:center}.loot-reveal-box-wrap{display:flex;justify-content:center;margin:.35rem 0 .75rem}.loot-reveal-box-img{width:96px;height:96px;image-rendering:pixelated;image-rendering:crisp-edges;border:3px solid #c9a227;border-radius:8px;background:#0a0c10;box-shadow:0 0 24px #ffc85773;animation:loot-box-pulse 1.1s ease-in-out infinite}@keyframes loot-box-pulse{0%,to{box-shadow:0 0 16px #ffc85759;transform:scale(1)}50%{box-shadow:0 0 32px #7dffb38c;transform:scale(1.04)}}.loot-reveal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.85rem;margin:.5rem 0 1rem;max-height:min(52vh,28rem);overflow-y:auto;padding:.25rem}.loot-reveal-card{display:flex;flex-direction:column;align-items:center;gap:.55rem;padding:.75rem .5rem .85rem;border:2px solid #3a3150;border-radius:10px;background:linear-gradient(180deg,#1a2030,#12161f);animation:loot-card-in .35s ease-out both}.loot-reveal-card:nth-child(1){animation-delay:.05s}.loot-reveal-card:nth-child(2){animation-delay:.1s}.loot-reveal-card:nth-child(3){animation-delay:.15s}.loot-reveal-card:nth-child(4){animation-delay:.2s}.loot-reveal-card:nth-child(5){animation-delay:.25s}.loot-reveal-card:nth-child(6){animation-delay:.3s}.loot-reveal-card:nth-child(7){animation-delay:.35s}@keyframes loot-card-in{0%{opacity:0;transform:translateY(12px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.loot-reveal-icon{display:block;width:min(128px,28vw);height:auto;aspect-ratio:1;image-rendering:pixelated;image-rendering:crisp-edges;border:3px solid #5c4d7a;border-radius:8px;background:#0c0e14;box-shadow:0 4px #1a1528,0 0 18px #7dffb333}.loot-reveal-name{font-family:"Press Start 2P",monospace;font-size:.55rem;line-height:1.45;letter-spacing:.03em;color:#7dffb3;max-width:9rem}.loot-reveal-actions{justify-content:center}@media(prefers-reduced-motion:reduce){.loot-reveal-box-img,.loot-reveal-card{animation:none}}.game-version{margin:.4rem 0 0 .2rem;padding:0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.72rem;font-weight:500;letter-spacing:.06em;color:#6a738a;text-align:left;user-select:none;pointer-events:none}body.touch-play.mobile-immersive .game-version{display:none}.touch-pad{display:none;position:absolute;inset:0;z-index:50;box-sizing:border-box;pointer-events:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:.5rem;padding:.5rem max(.55rem,env(safe-area-inset-right,0px)) max(.75rem,env(safe-area-inset-bottom,0px)) max(.55rem,env(safe-area-inset-left,0px));background:transparent;border:none}.touch-pad:not([hidden]){display:flex}.touch-cluster{pointer-events:auto;flex-shrink:0}.touch-stick{width:7.5rem;height:7.5rem;display:flex;align-items:center;justify-content:center}.stick-base{position:relative;width:7.25rem;height:7.25rem;border-radius:50%;border:2px solid rgba(255,200,87,.55);background:#0c101859;box-shadow:0 4px 16px #0006,inset 0 0 24px #ffc85714;touch-action:none;cursor:grab}.touch-stick.is-active .stick-base{border-color:#7dffb3bf;cursor:grabbing}.stick-ring{position:absolute;inset:18%;border-radius:50%;border:1px dashed rgba(255,200,87,.25);pointer-events:none}.stick-knob{position:absolute;left:50%;top:50%;width:2.65rem;height:2.65rem;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 35% 30%,#ffe08a,#c9a227 55%,#6a5010);border:2px solid rgba(255,240,180,.85);box-shadow:0 3px 10px #00000073;pointer-events:none;will-change:transform}.rotate-hint{display:none;position:absolute;inset:0;z-index:80;align-items:center;justify-content:center;background:#05060af0;padding:1.5rem;text-align:center;pointer-events:auto}body.need-landscape .rotate-hint{display:flex}body.need-landscape #touch-pad,body.need-landscape #game-container{visibility:hidden;pointer-events:none}.rotate-hint-card{max-width:18rem}.rotate-hint-icon{font-size:2.5rem;margin:0 0 .75rem;line-height:1}.rotate-hint-title{font-family:var(--font-display);font-size:.85rem;color:var(--neon);margin:0 0 .75rem;letter-spacing:.04em}.rotate-hint-sub{font-family:var(--font-body);font-size:.95rem;color:var(--muted);margin:0;line-height:1.5}.touch-actions{display:grid;grid-template-columns:repeat(3,minmax(3.1rem,3.5rem));gap:.35rem;justify-items:stretch}.touch-btn{pointer-events:auto;min-width:3.1rem;min-height:3.1rem;padding:.2rem;border:2px solid rgba(58,154,104,.85);border-radius:16px;background:#0c10186b;color:var(--neon);font-family:var(--font-display);font-size:.52rem;line-height:1.15;letter-spacing:.02em;box-shadow:0 2px 8px #00000059,inset 0 0 14px #7dffb31a;-webkit-tap-highlight-color:transparent;touch-action:none;cursor:pointer;backdrop-filter:blur(2px)}.touch-btn:active,.touch-btn.is-down{background:#7dffb36b;transform:translateY(1px);box-shadow:0 1px 4px #0006}.touch-dir{font-size:.95rem;color:var(--amber);border-color:#8a7020e6;min-width:3.25rem;min-height:3.25rem;background:#14100866}.touch-a{min-height:3.35rem;color:#0a0c10;background:#5ad49ab8;border-color:#7dffb3;font-size:.58rem}.touch-b{min-height:3.35rem;background:#ffc857b8;color:#0a0c10;border-color:#ffe08a;font-size:.52rem}.touch-c{background:#12161f80}html.touch-play-root{height:100%;height:100dvh;overflow:hidden;overscroll-behavior:none;min-height:-webkit-fill-available}body.touch-play{padding:0;margin:0;overflow:hidden;overscroll-behavior:none;position:fixed;inset:0;width:100%;height:100%;height:100dvh;min-height:-webkit-fill-available;padding-top:env(safe-area-inset-top,0px);touch-action:none}body.touch-play #shell{height:100%;max-width:none;display:flex;flex-direction:column;overflow:hidden;min-height:0}body.touch-play .beta-banner,body.touch-play .topbar,body.touch-play .tagline,body.touch-play .nav-kbd,body.touch-play .site-footer,body.touch-play .controls-panel{display:none!important}body.touch-play .main{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;grid-template-columns:1fr;gap:0;padding:0;overflow:hidden}body.touch-play .game-stage{flex:1 1 auto;min-height:0;width:100%;height:100%;display:block;position:relative}body.touch-play #game-frame{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;border-width:0;border-radius:0;box-shadow:none;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden}body.touch-play #game-container{width:100%;height:100%;max-width:100%;max-height:100%;aspect-ratio:auto;margin:0}body.touch-play #game-container canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges}body.touch-play .touch-pad{position:absolute;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:space-between;border:none;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.28) 0%,rgba(0,0,0,.08) 28%,transparent 48%);padding:.5rem max(.55rem,env(safe-area-inset-right,0px)) max(.75rem,env(safe-area-inset-bottom,0px)) max(.55rem,env(safe-area-inset-left,0px))}body.touch-play .touch-cluster{pointer-events:auto}body.touch-play .touch-pad.pad-mode-dialog .touch-stick{visibility:hidden;pointer-events:none}body.touch-play .touch-pad.pad-mode-panel .touch-stick{opacity:.95}body.touch-play .touch-pad.pad-mode-pause .touch-stick{visibility:hidden;pointer-events:none}body.touch-play.mobile-immersive,html.touch-play-root:has(body.mobile-immersive){background:#000}body.touch-play.mobile-immersive{padding:0!important;height:100dvh;width:100vw;max-width:100vw}body.touch-play.mobile-immersive #shell,body.touch-play.mobile-immersive .main,body.touch-play.mobile-immersive .game-stage,body.touch-play.mobile-immersive #game-frame{width:100%;height:100%;max-width:none}@media(orientation:landscape)and (max-height:520px){body.touch-play{padding:0}body.touch-play #game-frame{inset:0}body.touch-play .touch-pad{padding-left:max(.4rem,env(safe-area-inset-left,0px));padding-right:max(.4rem,env(safe-area-inset-right,0px));padding-bottom:max(.35rem,env(safe-area-inset-bottom,0px))}}@media(max-height:500px)and (orientation:landscape){body.touch-play .touch-pad{padding-bottom:max(.35rem,env(safe-area-inset-bottom,0px))}body.touch-play .touch-stick,body.touch-play .stick-base{width:6.1rem;height:6.1rem}body.touch-play .stick-knob{width:2.2rem;height:2.2rem}body.touch-play .touch-actions{grid-template-columns:repeat(3,minmax(2.5rem,2.9rem));gap:.2rem}body.touch-play .touch-btn{min-width:2.5rem;min-height:2.5rem;font-size:.42rem;border-radius:12px}body.touch-play .touch-a,body.touch-play .touch-b{min-height:2.65rem}}#game-container{width:100%;aspect-ratio:16 / 9;background:#000}#game-container canvas{display:block;width:100%!important;height:100%!important;image-rendering:pixelated;image-rendering:crisp-edges}.crt-overlay{pointer-events:none;position:absolute;inset:0;background:linear-gradient(to bottom,transparent 50%,var(--scan) 50%);background-size:100% 3px;mix-blend-mode:multiply;opacity:.45}.crt-overlay:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.35) 100%)}.controls-panel{background:var(--panel);border:2px solid var(--border);border-radius:8px;padding:var(--space-3)}.panel-heading{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:.625rem;letter-spacing:.08em;color:var(--neon);line-height:1.6}.help-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.55rem}.help-list li{font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-loose)}.help-list kbd{display:inline-block;font-family:var(--font-display);font-size:.55rem;line-height:1.5;color:var(--text);background:#0a0c10;border:1px solid var(--border);border-radius:3px;padding:.2rem .35rem;margin:0 .1rem;white-space:nowrap}.site-footer{border-top:1px solid var(--border);padding-top:var(--space-3)}.footer-grid{display:grid;gap:var(--space-2);text-align:left}.copyright{margin:0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);letter-spacing:.02em;line-height:var(--lh-loose)}.copyright-sub{display:block;color:var(--muted-dim);margin-top:.35rem}.footer-note{margin:0;font-family:var(--font-body);font-size:var(--text-xs);color:var(--muted-dim);line-height:var(--lh-body);max-width:40rem}.ghost-btn{background:transparent!important;color:var(--amber)!important;border-color:#5c4d20!important}.journal-panel{width:min(100%,560px);max-height:min(90vh,680px);display:flex;flex-direction:column}.journal-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-bottom:.75rem;border:2px solid var(--border);border-radius:var(--radius);overflow:hidden;background:#0a0c10}.journal-tab{font-family:var(--font-display);font-size:.625rem;letter-spacing:.04em;line-height:1.5;min-height:var(--touch-min);color:var(--muted);background:transparent;border:none;border-right:2px solid var(--border);border-radius:0;padding:.7rem .75rem;cursor:pointer;width:100%}.journal-tab:last-child{border-right:none}.journal-tab.is-active{color:var(--bg);background:var(--neon)}.journal-tab:not(.is-active):hover{color:var(--text);background:#151a24}.journal-blurb-tab{margin:0 0 .65rem}.journal-body[hidden]{display:none!important}.journal-box-row .journal-open-box{margin-top:.55rem;width:100%;min-height:var(--touch-min);font-family:var(--font-display);font-size:.55rem;letter-spacing:.04em;cursor:pointer}.journal-rewards{margin-bottom:.35rem}.journal-summary{margin:0 0 .65rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--amber);letter-spacing:.02em;line-height:var(--lh-body)}.journal-body{flex:1;overflow-y:auto;max-height:48vh;display:flex;flex-direction:column;gap:.65rem;padding-right:.35rem;margin-bottom:.85rem}.journal-row{border:2px solid var(--border);border-radius:var(--radius);padding:.75rem .85rem;background:#0a0c10}.journal-row.is-active{border-color:var(--amber)}.journal-row.is-done{border-color:#3a6a50}.journal-row.is-locked{opacity:.85}.journal-row-head{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.45rem}.journal-status{color:var(--neon);font-family:var(--font-display);font-size:.625rem;flex-shrink:0}.journal-title{margin:0;flex:1;font-family:var(--font-display);font-size:.625rem;color:var(--text);letter-spacing:.03em;line-height:1.65;font-weight:400}.journal-progress{font-family:var(--font-body);font-size:var(--text-xs);color:var(--amber);line-height:var(--lh-body);white-space:nowrap}.journal-section-label{margin:12px 0 6px;font-size:.7rem;letter-spacing:.08em;color:#8a93a8;text-transform:uppercase}.journal-focus{margin-bottom:10px;padding:8px;border:1px solid rgba(125,255,179,.35);border-radius:6px;background:#1428208c}.journal-focus-label{margin:0 0 6px;font-size:.68rem;letter-spacing:.1em;color:#7dffb3;font-weight:700}.journal-row.is-focus{border-color:#7dffb380}.journal-hint{margin:6px 0 0;font-size:.82rem;line-height:1.35;color:#ffe08a}.journal-hint-muted{color:#9aa3b5}.journal-hint-label{display:inline-block;margin-right:6px;padding:1px 5px;border-radius:3px;background:#ffc8572e;color:#ffc857;font-size:.65rem;letter-spacing:.06em;font-weight:700}.journal-blurb{margin:0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-loose)}.journal-meta{margin:.45rem 0 0;font-family:var(--font-body);font-size:var(--text-xs);color:var(--muted-dim);letter-spacing:.03em;line-height:var(--lh-body)}.settings-form{display:flex;flex-direction:column;gap:.85rem}.settings-fieldset{border:1px solid var(--panel-border, #3a3150);border-radius:6px;padding:.65rem .75rem .75rem;margin:0;display:flex;flex-direction:column;gap:.55rem}.settings-legend{font-family:var(--font-body);font-size:var(--text-sm);color:var(--neon, #7dffb3);padding:0 .35rem}.settings-check{display:flex;align-items:center;gap:.65rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-body);cursor:pointer;min-height:var(--touch-min)}.settings-check input{width:1.15rem;height:1.15rem;accent-color:var(--neon);cursor:pointer;flex-shrink:0}.settings-row{display:flex;flex-direction:column;gap:.45rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-body)}.settings-row strong{color:var(--neon);font-weight:600}.settings-row input[type=range]{width:100%;accent-color:var(--amber);cursor:pointer;min-height:1.5rem}.settings-actions{margin-top:.35rem;justify-content:space-between}.mirror-mode-list{display:flex;flex-direction:column;gap:.75rem}.mirror-mode-row{display:flex;gap:.75rem;align-items:flex-start;padding:.75rem .85rem;border:2px solid #3a4050;border-radius:6px;background:#0a0e18d9;cursor:pointer}.mirror-mode-row:has(input:checked){border-color:var(--amber, #ffc857);box-shadow:0 0 0 1px #ffc85759}.mirror-mode-row input{margin-top:.2rem;accent-color:#ffc857;width:1.1rem;height:1.1rem;flex-shrink:0}.mirror-mode-copy{display:flex;flex-direction:column;gap:.35rem}.mirror-mode-copy strong{font-family:var(--font-display, "Press Start 2P", monospace);font-size:.65rem;color:#7dffb3;line-height:1.4}.mirror-mode-blurb{font-family:var(--font-body, "IBM Plex Mono", monospace);font-size:.8rem;color:#c5cde0;line-height:1.45}.feedback-modal{display:none;position:fixed;inset:0;z-index:1000;align-items:center;justify-content:center;padding:1rem;background:#05070cd1;backdrop-filter:blur(3px)}.feedback-modal.is-open{display:flex}.feedback-panel{width:min(100%,480px);max-height:min(92vh,720px);overflow-y:auto;background:var(--panel);border:3px solid var(--amber);border-radius:8px;box-shadow:0 0 0 2px #0a0c10,0 20px 50px #000000a6;padding:1.15rem 1.25rem 1.25rem;text-align:left}.feedback-header{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.65rem}.feedback-header h2{margin:0;font-family:var(--font-display);font-size:.75rem;color:var(--amber);letter-spacing:.06em;line-height:1.55}.feedback-x{font-family:var(--font-body);font-size:1.35rem;line-height:1;color:var(--muted);background:transparent;border:none;cursor:pointer;min-width:var(--touch-min);min-height:var(--touch-min);padding:.25rem .45rem;border-radius:var(--radius)}.feedback-x:hover{color:var(--text)}.feedback-blurb{margin:0 0 1rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-loose);max-width:40rem}.feedback-blurb strong{color:var(--neon);font-weight:600}.shell-form,#feedback-form,#auth-guest-form,#auth-magic-form{display:flex;flex-direction:column;gap:.85rem}.shell-form label,#feedback-form label,#auth-guest-form label,#auth-magic-form label{display:flex;flex-direction:column;gap:.4rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);letter-spacing:.01em;line-height:var(--lh-body)}.shell-form input,.shell-form textarea,#feedback-form input,#feedback-form textarea,#auth-guest-form input,#auth-magic-form input{font-family:var(--font-body);font-size:var(--text-md);color:var(--text);background:#0a0c10;border:2px solid var(--border);border-radius:var(--radius);padding:.65rem .75rem;line-height:var(--lh-body);min-height:var(--touch-min);resize:vertical}.shell-form input:focus-visible,.shell-form textarea:focus-visible,#feedback-form input:focus-visible,#feedback-form textarea:focus-visible,#auth-guest-form input:focus-visible,#auth-magic-form input:focus-visible{border-color:var(--neon);box-shadow:var(--focus)}#feedback-form .hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.feedback-status{min-height:1.35rem;margin:0;font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--lh-body);color:var(--muted)}.feedback-status[data-kind=ok]{color:var(--neon)}.feedback-status[data-kind=err]{color:#ff9a9a}.feedback-status[data-kind=busy]{color:var(--amber)}.feedback-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem;margin-top:.35rem}.btn{font-family:var(--font-display);font-size:.625rem;letter-spacing:.04em;line-height:1.5;border-radius:var(--radius);padding:.65rem .95rem;min-height:var(--touch-min);cursor:pointer;border:2px solid var(--border)}.btn.ghost{color:var(--muted);background:transparent}.btn.primary{color:var(--bg);background:var(--neon);border-color:#3a9a68}.btn.primary:disabled{opacity:.55;cursor:wait}.auth-panel .shell-form{margin-bottom:.85rem}.auth-magic{padding-top:.65rem;border-top:1px solid var(--border)}.auth-extra{flex-wrap:wrap;justify-content:flex-start}#auth-guest-form .btn,#auth-magic-form .btn{margin-top:.25rem;width:100%}@media(max-width:720px){body{padding:.75rem .65rem 1.5rem}.topbar{flex-direction:column;align-items:stretch}.topbar-nav{justify-content:flex-start}.auth-status{text-align:left;max-width:none;width:100%}.nav-btn{font-size:.6rem}.help-list li,.feedback-blurb,.copyright{font-size:var(--text-sm)}}.nav-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.landing-body{padding-left:clamp(1rem,3vw,2.5rem);padding-right:clamp(1rem,3vw,2.5rem)}.landing-shell{width:100%;max-width:none;margin:0 auto}.landing-main{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-2) 0 var(--space-4);text-align:left;width:100%;max-width:none}.landing-hero{padding:var(--space-4) 0 var(--space-3);width:100%;max-width:none;display:grid;gap:var(--space-4);align-items:start}.landing-hero-copy{max-width:none;width:100%}.landing-hero-figure{margin:0;max-width:100%;width:100%}.sb-problem-grid{display:grid;gap:var(--space-3);margin:0 0 var(--space-4);width:100%;max-width:none}.sb-card{margin:0;padding:var(--space-3);border:2px solid var(--border);border-radius:10px;background:#12161fbf}.sb-card-h{margin:0 0 .65rem;font-family:var(--font-display);font-size:.55rem;letter-spacing:.08em;color:var(--neon);line-height:1.6}.sb-card p{margin:0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-loose)}.sb-shot{margin:0 0 var(--space-3);border-radius:10px;overflow:hidden;border:2px solid var(--border);background:#0a0c10;box-shadow:0 8px 28px #00000059;width:100%;max-width:none}.sb-shot img{display:block;width:100%;height:auto;aspect-ratio:16 / 10;object-fit:cover;background:#12161f}.sb-shot figcaption{margin:0;padding:.7rem .85rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-body);border-top:1px solid var(--border);background:#12161fe6}.sb-shot-wide{width:100%;max-width:none}.sb-shot-row{display:grid;gap:var(--space-3);width:100%;max-width:none;margin:var(--space-3) 0 0}.sb-steps{list-style:none;margin:0 0 var(--space-4);padding:0;display:flex;flex-direction:column;gap:var(--space-3);width:100%;max-width:none;counter-reset:none}.sb-step{display:grid;grid-template-columns:auto 1fr;gap:var(--space-3);align-items:start;padding:var(--space-3);border:2px solid var(--border);border-radius:10px;background:#12161f8c}.sb-step-n{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;flex-shrink:0;font-family:var(--font-display);font-size:.65rem;color:#0a0c10;background:var(--amber);border-radius:6px;box-shadow:0 0 12px #ffc85759}.sb-step-h{margin:0 0 .4rem;font-family:var(--font-body);font-size:var(--text-md);font-weight:600;color:var(--text);line-height:var(--lh-body)}.sb-step p{margin:0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-loose)}.sb-stakes-grid{display:grid;gap:var(--space-3);width:100%;max-width:none}.sb-stake{padding:var(--space-3);border-radius:10px;border:2px solid var(--border)}.sb-stake-win{border-color:#7dffb373;background:#0d3d2859}.sb-stake-lose{border-color:#e74c3c59;background:#28101059}.sb-cta-band{border:none;padding:0;width:100%;max-width:none}.sb-cta-band-inner{text-align:center;padding:var(--space-5) var(--space-4);border-radius:12px;border:3px solid var(--border);background:radial-gradient(ellipse at 50% 0%,rgba(125,255,179,.12),transparent 55%),#12161fe6;box-shadow:0 0 0 2px #ffc85733,0 16px 48px #0006}.sb-cta-band-lead{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:clamp(.75rem,2.5vw,1rem);letter-spacing:.08em;color:var(--neon);line-height:1.6}.sb-cta-band-sub{margin:0 auto var(--space-4)!important;text-align:center}.sb-cta-band-inner .cta-lg{margin:0 auto}@media(min-width:720px){.sb-problem-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sb-shot-row{grid-template-columns:1fr 1fr;align-items:stretch}.sb-stakes-grid{grid-template-columns:1fr 1fr}.landing-hero-figure-char{justify-self:end}}.landing-hero-link{display:block;border-radius:12px;overflow:hidden;border:3px solid var(--border);box-shadow:0 0 0 2px #ffc85759,0 12px 40px #00000073;transition:border-color .15s ease,box-shadow .15s ease}.landing-hero-link:hover,.landing-hero-link:focus-visible{border-color:var(--amber);box-shadow:0 0 0 2px #7dffb373,0 14px 44px #00000080;outline:none}.landing-hero-img{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;background:#0a0c10;vertical-align:middle}.landing-hero-figure-char{max-width:22rem;justify-self:center}.landing-hero-link-char{display:flex;align-items:center;justify-content:center;padding:1.5rem 1.25rem 1rem;background:radial-gradient(ellipse at 50% 70%,rgba(92,77,122,.4),transparent 60%),#0a0c10}.landing-hero-char{width:min(100%,18rem);height:auto;aspect-ratio:1 / 1;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;background:transparent}.landing-figcap{margin:.65rem 0 0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-body)}.landing-figcap a{color:var(--neon);font-weight:600;text-decoration:none}.landing-figcap a:hover{color:var(--amber);text-decoration:underline;text-underline-offset:.2em}.landing-gallery{display:grid;grid-template-columns:1fr;gap:var(--space-3);margin:0 0 var(--space-4);width:100%;max-width:none}.landing-card{margin:0;border-radius:10px;overflow:hidden;border:2px solid var(--border);background:#0a0c10;box-shadow:0 8px 28px #00000059}.landing-card img{display:block;width:100%;height:auto;aspect-ratio:16 / 10;object-fit:cover;background:#12161f}.landing-card figcaption{margin:0;padding:.7rem .85rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-body);border-top:1px solid var(--border);background:#12161fe6}@media(min-width:900px){.landing-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--space-5)}.landing-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-card img{aspect-ratio:1 / 1}}.landing-kicker{margin:0 0 var(--space-2);font-family:var(--font-body);font-size:var(--text-sm);color:var(--neon);letter-spacing:.04em;line-height:var(--lh-body)}.landing-h1{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:clamp(1.35rem,4vw,2rem);letter-spacing:.12em;line-height:1.45;color:var(--neon);text-shadow:0 0 14px rgba(125,255,179,.4),3px 3px 0 #0d3d28}.landing-h2{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:clamp(.75rem,2vw,.9rem);letter-spacing:.08em;line-height:1.6;color:var(--amber)}.landing-lede{margin:0 0 var(--space-4);font-family:var(--font-body);font-size:var(--text-md);color:var(--text);line-height:var(--lh-loose);max-width:none}.landing-micro{margin:var(--space-3) 0 0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--muted);line-height:var(--lh-loose);max-width:none}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.cta-lg{min-height:2.75rem;padding:.75rem 1.15rem;font-size:.7rem}.landing-section{width:100%;max-width:none;padding:var(--space-3) 0;border-top:1px solid var(--border)}.landing-section:has(.landing-gallery){max-width:none}.landing-support{background:#12161fa6;border:2px solid var(--border);border-radius:10px;padding:var(--space-4);width:100%;max-width:none}.landing-prose{font-family:var(--font-body);font-size:var(--text-md);color:var(--muted);line-height:var(--lh-loose);width:100%;max-width:none}.landing-prose p{margin:0 0 var(--space-3);max-width:none}.landing-prose strong{color:var(--text);font-weight:600}.landing-subhead{margin:var(--space-3) 0 var(--space-2)!important;font-family:var(--font-display);font-size:.625rem;letter-spacing:.06em;color:var(--neon);line-height:1.6}.landing-bullets{margin:0 0 var(--space-3);padding-left:1.25rem;max-width:none}.landing-bullets li{margin-bottom:.55rem;line-height:var(--lh-loose);color:var(--muted)}.landing-bullets-muted li{color:var(--muted-dim)}.landing-table-wrap{overflow-x:auto;margin:0 0 var(--space-3);border:2px solid var(--border);border-radius:var(--radius);background:#0a0c10}.landing-table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--lh-body)}.landing-table th,.landing-table td{text-align:left;padding:.75rem .9rem;border-bottom:1px solid var(--border);vertical-align:top}.landing-table th{color:var(--amber);font-weight:600;font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase}.landing-table td:first-child{color:var(--text);white-space:nowrap;font-weight:500}.landing-table tr:last-child td{border-bottom:none}.inline-play{color:var(--neon);font-weight:600;text-decoration:underline;text-underline-offset:.2em}.inline-play:hover{color:var(--amber)}.footer-nav{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.footer-nav a{font-family:var(--font-body);font-size:var(--text-sm);color:var(--neon);text-decoration:none;line-height:var(--lh-body)}.footer-nav a:hover{color:var(--amber);text-decoration:underline;text-underline-offset:.2em}@media(max-width:720px){.landing-hero{padding-top:var(--space-3)}.landing-table td:first-child{white-space:normal}.landing-gallery{gap:var(--space-2)}}
