:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f2f5f7;font-synthesis:none;--ink:#f2f5f7;--muted:#8491a3;--line:#d1e4ff29;--panel:#060c16b8;--accent:#ffb84d;--cyan:#70e9ff;--danger:#ff765f;background:#02040b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}[hidden]{display:none!important}.game-shell{isolation:isolate;background:radial-gradient(circle at 70% 35%,#0f2036 0,#030711 42%,#02040b 75%);width:100%;height:100%;min-height:520px;position:relative}.scene,.space-canvas,.vignette{width:100%;height:100%;position:absolute;inset:0}.space-canvas{display:block}.scene{z-index:-3}.vignette{z-index:-2;pointer-events:none;background:linear-gradient(90deg,#02040bd1 0%,#02040b38 47%,#02040b2e 100%),radial-gradient(circle,#0000 48%,#0000009e 120%)}.skip-link{z-index:20;color:#02040b;background:var(--cyan);padding:.8rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.topbar{z-index:5;width:100%;padding:max(1.2rem, env(safe-area-inset-top)) clamp(1.2rem, 3vw, 3rem) 1rem;letter-spacing:.12em;justify-content:space-between;align-items:center;font-family:DM Mono,monospace;font-size:.68rem;display:flex;position:absolute;top:0;left:0}.brand{cursor:pointer;background:0 0;border:0;align-items:center;gap:.75rem;padding:0;font-weight:500;display:flex}.brand-mark{border:2px solid var(--accent);width:.7rem;height:.7rem;box-shadow:0 0 18px var(--accent);border-radius:50%}.status-strip{color:var(--muted);align-items:center;gap:.65rem;display:flex}.chip{color:var(--ink)}.live-dot{background:#62f0a8;border-radius:50%;width:4px;height:4px;box-shadow:0 0 8px #62f0a8}.panel{z-index:2;padding:clamp(5rem,9vh,7.5rem) clamp(1.4rem,5vw,5.2rem) clamp(2rem,5vh,4rem);position:absolute;inset:0}.menu{grid-template-rows:1fr auto;grid-template-columns:minmax(300px,1.2fr) minmax(330px,.78fr) minmax(220px,.48fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);display:grid}.menu-copy{max-width:690px}.eyebrow{letter-spacing:.24em;color:var(--accent);margin:0 0 1.2rem;font:500 .68rem/1.4 DM Mono,monospace}h1,.result h2{letter-spacing:-.075em;margin:0;font-size:clamp(4.3rem,9vw,9.6rem);font-weight:800;line-height:.77}h1 em{color:#0000;-webkit-text-stroke:1px #f2f5f7b8;font-style:normal}.tagline{letter-spacing:.14em;color:#aeb8c7;margin:2rem 0 1rem;font:500 clamp(.78rem,1.1vw,1rem)/1.5 DM Mono,monospace}.tagline strong{color:var(--cyan)}.lead{color:#a1adbd;max-width:35rem;margin:0;font-size:clamp(.85rem,1.1vw,1rem);line-height:1.75}.glass-panel{border:1px solid var(--line);background:linear-gradient(145deg, #0f1a29c7, var(--panel));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 80px #00000042,inset 0 1px #ffffff0a}.menu-actions{border-radius:1rem;padding:.75rem}.nickname-field{padding:.8rem .9rem 1.1rem;display:block}.nickname-field span{letter-spacing:.16em;color:var(--muted);margin-bottom:.55rem;font:500 .62rem DM Mono,monospace;display:block}.nickname-field input{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-transform:uppercase;background:0 0;border-radius:0;padding:.15rem 0 .65rem;font:500 1.05rem DM Mono,monospace}.mode-button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#ffffff06;border-radius:.65rem;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1rem 1.1rem;transition:transform .18s,border-color .18s,background .18s;display:flex}.mode-button+.mode-button{margin-top:.55rem}.mode-button:hover{background:#70e9ff12;border-color:#70e9ff8c;transform:translateY(-2px)}.mode-button.primary{color:#06101a;background:var(--accent);border-color:var(--accent)}.mode-button.primary:hover{background:#ffc466;border-color:#ffd28a}.mode-button span{gap:.3rem;display:grid}.mode-button b{letter-spacing:.08em;font-size:.78rem}.mode-button small{letter-spacing:.08em;opacity:.68;font:500 .55rem DM Mono,monospace}.mode-button i{font:1.45rem DM Mono,monospace}.control-legend{color:var(--muted);letter-spacing:.06em;flex-wrap:wrap;gap:.55rem 1rem;padding:1.05rem .75rem .4rem;font:500 .53rem DM Mono,monospace;display:flex}kbd{border:1px solid var(--line);min-width:1.4rem;color:var(--ink);font:inherit;background:#ffffff0f;border-radius:.22rem;place-items:center;padding:.2rem .3rem;display:inline-grid;box-shadow:inset 0 -2px #00000040}.leaderboard-card{border-radius:.75rem;align-self:end;padding:1.1rem}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding-bottom:.8rem;display:flex}.section-heading span{color:#62f0a8;letter-spacing:.15em;font:.55rem DM Mono,monospace}.section-heading h2{letter-spacing:.14em;margin:0;font-size:.7rem}.leaderboard{margin:.45rem 0 0;padding:0;list-style:none}.leaderboard li{border-bottom:1px solid #ffffff0f;grid-template-columns:2rem 1fr auto;gap:.5rem;padding:.63rem .2rem;font:.66rem DM Mono,monospace;display:grid}.leaderboard li:last-child{border:0}.leaderboard .rank{color:var(--accent)}.leaderboard li>span:last-child{color:var(--muted)}.leaderboard .empty{color:var(--muted);text-align:center;padding:1.4rem .2rem;line-height:1.5;display:block}.menu-footer{color:#647085;letter-spacing:.14em;grid-column:1/-1;font:.55rem DM Mono,monospace}.hud{z-index:4;pointer-events:none;padding:5.2rem clamp(1rem,3vw,3rem) 2rem;position:absolute;inset:0}.hud-primary{border-radius:.6rem;grid-template-columns:1.4fr repeat(3,1fr);width:min(760px,100% - 2rem);display:grid;overflow:hidden}.metric{border-right:1px solid var(--line);min-width:0;padding:.8rem 1rem;position:relative}.metric:last-child{border:0}.metric span,.encounter-card span{color:var(--muted);letter-spacing:.12em;white-space:nowrap;margin-bottom:.25rem;font:.5rem DM Mono,monospace;display:block}.metric strong{font:500 clamp(1rem,2vw,1.55rem) DM Mono,monospace}.metric small{color:var(--muted);margin-left:.25rem;font:.48rem DM Mono,monospace}.metric.gravity strong{color:var(--cyan)}.encounter-card{border-radius:.6rem;gap:1.5rem;padding:.85rem 1rem;display:flex;position:absolute;top:5.2rem;right:clamp(1rem,3vw,3rem)}.encounter-card strong{font:.68rem DM Mono,monospace}.encounter-card strong.is-captured{color:var(--accent);text-shadow:0 0 12px #ffb84d99}.tutorial{border-radius:999px;align-items:center;width:min(580px,100% - 2rem);padding:.8rem 1rem;display:flex;position:absolute;bottom:7.5rem;left:50%;transform:translate(-50%)}.tutorial span{color:var(--accent);flex:0 0 2rem;font:.58rem DM Mono,monospace}.tutorial p{color:#c5ceda;margin:0;font-size:.75rem}.bank-button{pointer-events:auto;border:1px solid var(--line);color:#aeb9c8;letter-spacing:.08em;cursor:pointer;background:#02040bb8;border-radius:.4rem;padding:.7rem .9rem;font:.56rem DM Mono,monospace;position:absolute;bottom:2rem;right:clamp(1rem,3vw,3rem)}.bank-button:hover{color:var(--ink);border-color:var(--accent)}.bank-button kbd{margin-left:.5rem}.touch-controls{z-index:3;pointer-events:none;position:absolute;inset:0}.touch-zone{pointer-events:auto;bottom:max(1.2rem, env(safe-area-inset-bottom));touch-action:none;-webkit-user-select:none;user-select:none;background:#060d188c;border:1px solid #fff3;border-radius:50%;width:5.4rem;height:5.4rem;position:absolute}.touch-zone.left{left:max(1.2rem, env(safe-area-inset-left))}.touch-zone.right{right:max(1.2rem, env(safe-area-inset-right))}.touch-zone span{color:var(--muted);letter-spacing:.1em;font:.45rem DM Mono,monospace;display:block}.touch-zone b{font-size:1.7rem;line-height:1.2}.touch-zone.is-active{color:#031019;border-color:var(--cyan);background:var(--cyan);box-shadow:0 0 30px #70e9ff47}.touch-controls>p{left:50%;bottom:max(1.2rem, env(safe-area-inset-bottom));color:var(--muted);letter-spacing:.12em;font:.45rem DM Mono,monospace;position:absolute;transform:translate(-50%)}.result{background:linear-gradient(90deg,#02040bdb,#02040b38);grid-template-rows:1fr auto;grid-template-columns:minmax(250px,.6fr) minmax(420px,1fr);align-items:center;gap:3rem;display:grid}.result h2{font-size:clamp(3.5rem,7vw,7rem)}.result-heading>p:last-child{color:var(--muted);letter-spacing:.08em;font:.7rem DM Mono,monospace}.result-grid{border-radius:.8rem;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.result-metric{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:5.5rem;padding:1rem 1.1rem}.result-metric:nth-child(2n){border-right:0}.result-metric span{color:var(--muted);letter-spacing:.12em;margin-bottom:.65rem;font:.52rem DM Mono,monospace;display:block}.result-metric strong{font:500 clamp(1rem,2vw,1.45rem) DM Mono,monospace}.result-metric.highlight strong{color:var(--cyan)}.result-actions{grid-column:2;align-items:center;gap:1rem;display:flex}.result-actions .mode-button{width:min(320px,100%)}.text-button{color:var(--muted);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;padding:.8rem;font:.58rem DM Mono,monospace}.text-button:hover{color:var(--ink)}.toast{z-index:30;opacity:0;pointer-events:none;color:var(--cyan);letter-spacing:.08em;background:#040d17eb;border:1px solid #70e9ff59;border-radius:999px;padding:.7rem 1.1rem;font:.6rem DM Mono,monospace;transition:all .2s;position:absolute;top:6rem;left:50%;transform:translate(-50%,-1rem)}.toast.is-visible{opacity:1;transform:translate(-50%)}.fatal-error{z-index:40;text-align:center;background:#02040b;place-content:center;padding:2rem;display:grid;position:fixed;inset:0}.fatal-error h2{max-width:680px;font-size:clamp(1.8rem,4vw,3.5rem)}.fatal-error p:last-child{color:var(--muted)}@media (max-width:1080px){.menu{grid-template-columns:1fr minmax(320px,.75fr)}.leaderboard-card{display:none}.encounter-card{inset:auto auto 2rem 50%;transform:translate(-50%)}.bank-button{bottom:8.2rem}}@media (max-width:720px){.game-shell{min-height:460px}.topbar{padding-inline:1rem}#sim-version,.live-dot{display:none}.panel{padding:5.5rem 1rem calc(1rem + env(safe-area-inset-bottom));overflow-y:auto}.menu{display:block}.menu-copy{margin-bottom:1.35rem}h1{font-size:clamp(4.1rem,20vw,6.2rem)}.tagline{display:none}.lead{max-width:29rem;margin-top:1.3rem;font-size:.78rem;line-height:1.6}.menu-actions{max-width:34rem}.menu-footer{display:none}.hud{padding:4.8rem .75rem 1rem}.hud-primary{grid-template-columns:repeat(2,1fr);width:100%}.metric{border-bottom:1px solid var(--line)}.metric:nth-child(2n){border-right:0}.metric:nth-child(n+3){border-bottom:0}.metric strong{font-size:1rem}.encounter-card{justify-content:space-between;gap:.65rem;width:calc(100% - 7.5rem);padding:.65rem .75rem;bottom:7.4rem}.encounter-card div:nth-child(2){display:none}.tutorial{border-radius:.6rem;width:calc(100% - 1.5rem);bottom:13.2rem}.tutorial p{font-size:.67rem;line-height:1.35}.bank-button{top:11.6rem;bottom:auto;right:.75rem}.touch-controls>p{white-space:nowrap;bottom:3.4rem}.result{background:#02040bb8;display:block}.result-heading{margin-bottom:1.5rem}.result h2{font-size:3.7rem}.result-grid{margin-bottom:1rem}.result-metric{min-height:4.6rem;padding:.8rem}.result-actions{display:block}.result-actions .mode-button{width:100%}.text-button{width:100%;margin-top:.4rem}}@media (pointer:fine) and (min-width:900px){.touch-zone{opacity:.62;width:4.2rem;height:4.2rem}.touch-controls>p{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
