:root{--ink:#e8f4ff;--dim:#8aa4b8;--accent:#5fd0ff;--gold:#e3c27a;--glass:#060e18c7;--edge:#5fd0ff59;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{overscroll-behavior:none;height:100%;color:var(--ink);background:#010208;margin:0;font:15px/1.5 system-ui,Segoe UI,Roboto,sans-serif;overflow:hidden}canvas#view{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}kbd{border:1px solid var(--edge);color:var(--accent);background:#5fd0ff14;border-radius:4px;padding:1px 6px;font:600 12px ui-monospace,monospace}#intro,#panel{padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));background:radial-gradient(#01040c8c,#010208e6);place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}#intro[hidden],#panel[hidden],#hud[hidden],#prompt[hidden],#toast[hidden],#enter[hidden]{display:none}.card{background:var(--glass);border:1px solid var(--edge);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:14px;width:100%;max-width:620px;padding:28px 32px;box-shadow:0 0 40px #5fd0ff1f,inset 0 0 0 1px #ffffff08}#intro .card{text-align:center;margin:auto}.kicker{color:var(--gold);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:12px}h1{letter-spacing:.06em;text-wrap:balance;margin:6px 0 4px;font-size:clamp(34px,7vw,56px);font-weight:300;line-height:1.1}.sub{color:var(--dim);margin:0 0 18px}#loading{color:var(--dim);margin:0}#launch{margin:0 0 18px}#launch .bar{background:#5fd0ff1f;border-radius:2px;max-width:360px;height:4px;margin:0 auto 12px;transition:opacity .6s .4s;overflow:hidden}#launch .bar i{background:linear-gradient(90deg, var(--accent), var(--gold));width:0;height:100%;box-shadow:0 0 12px var(--accent);transition:width .25s linear;display:block}#eta{color:var(--dim);opacity:.8;font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:12px}#launch.done .bar,#launch.failed .bar{opacity:0}#launch.done #eta,#launch.failed #eta{visibility:hidden}button{font:inherit;color:#021018;background:var(--accent);cursor:pointer;border:0;border-radius:8px;padding:10px 22px;font-weight:600;box-shadow:0 0 20px #5fd0ff66}button:hover{filter:brightness(1.1)}button.secondary{color:var(--accent);border:1px solid var(--edge);box-shadow:none;background:0 0}#crew-opt{color:var(--dim);cursor:pointer;justify-content:center;align-items:center;gap:8px;margin:0 0 14px;font-size:13px;display:flex}#crew-opt input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;margin:0}#crew-opt span{opacity:.75}.keys{color:var(--dim);margin-top:18px;font-size:13px}#crosshair{pointer-events:none;background:#e8f4ffd9;border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;transition:transform .12s;position:fixed;top:50%;left:50%;box-shadow:0 0 6px #5fd0ffe6}#crosshair.active{background:var(--gold);transform:scale(2.2)}#prompt{background:var(--glass);border:1px solid var(--edge);white-space:nowrap;pointer-events:none;border-radius:8px;align-items:center;gap:8px;padding:6px 12px;display:flex;position:fixed;top:calc(50% + 28px);left:50%;transform:translate(-50%)}#deck{left:calc(16px + env(safe-area-inset-left,0px));top:calc(14px + env(safe-area-inset-top,0px));color:var(--accent);letter-spacing:.12em;text-transform:uppercase;text-shadow:0 0 8px #5fd0ff99;background:#02060c8c;border-radius:6px;padding:4px 8px;font:600 12px ui-monospace,monospace;position:fixed}#keys{color:var(--dim);background:#02060c8c;border-radius:6px;padding:4px 8px;font-size:12px;position:fixed;bottom:14px;left:16px}#toast{background:var(--glass);border:1px solid var(--edge);color:var(--ink);text-align:center;border-radius:10px;max-width:calc(100vw - 32px);padding:10px 18px;position:fixed;top:18%;left:50%;transform:translate(-50%)}#panel h2{letter-spacing:.04em;color:var(--accent);margin:0 0 12px;font-weight:400}#panel-body{color:var(--ink)}#panel-body .dim{color:var(--dim);font-size:13px}#panel-body ul{padding-left:20px}#panel-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}#charge{pointer-events:none;background:conic-gradient(var(--gold) calc(var(--charge,0) * 360deg), #ffffff1f 0);border-radius:50%;width:38px;height:38px;margin:-19px 0 0 -19px;position:fixed;top:50%;left:50%;-webkit-mask:radial-gradient(circle,#0000 15px,#000 16px);mask:radial-gradient(circle,#0000 15px,#000 16px)}#charge[hidden]{display:none}#panel .card{flex-direction:column;max-height:calc(100dvh - 32px);display:flex}#panel-body{min-height:0;overflow-y:auto}.crumbs{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:8px;font:12px ui-monospace,monospace;display:flex}.crumb{color:var(--accent);border:1px solid var(--edge);box-shadow:none;font:inherit;background:0 0;border-radius:6px;padding:2px 8px;font-weight:500}.crumbs .sep{color:var(--dim)}.crumbs .here{color:var(--gold)}.bullseye{color:var(--gold);margin:4px 0;font-weight:600}.meta{color:var(--dim);letter-spacing:.06em;margin:4px 0 10px;font:12px ui-monospace,monospace}.desc{margin:0 0 12px}#panel h3{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin:12px 0 8px;font-size:13px;font-weight:600}.kids{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.kid{text-align:left;color:var(--ink);border:1px solid var(--edge);box-shadow:none;background:#5fd0ff0f;border-radius:8px;align-items:baseline;gap:8px;padding:8px 10px;font-weight:500;display:flex}.kid:hover{background:#5fd0ff24}.kid .nt{color:var(--gold);white-space:nowrap;font:700 12px ui-monospace,monospace}.kid .tt{flex:1}.kid .ct{color:var(--dim);font:11px ui-monospace,monospace}.kid.vacant{opacity:.55}.empty{color:var(--dim);margin:0 0 10px;font-style:italic}.catalogue input{width:100%;font:inherit;color:var(--ink);border:1px solid var(--edge);background:#5fd0ff0f;border-radius:8px;outline:none;padding:10px 12px}.catalogue input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #5fd0ff26}@media (width<=600px){#keys{display:none}.card{padding:20px}}.touch .desktop-only,.touch #keys,html:not(.touch) .touch-only{display:none}.touch body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.touch input{-webkit-user-select:text;user-select:text}#hud>:not(#touchpad){pointer-events:none}#touchpad{touch-action:none;position:fixed;inset:0}#touchpad[hidden],#t-use[hidden]{display:none}#stick{--r:56px;width:calc(var(--r) * 2);height:calc(var(--r) * 2);margin:calc(var(--r) * -1) 0 0 calc(var(--r) * -1);border:2px solid var(--edge);pointer-events:none;background:radial-gradient(circle,#5fd0ff1f,#5fd0ff08 70%);border-radius:50%;position:fixed;top:0;left:0}#stick:after{content:"";inset:calc(var(--r) * -.2 - 2px);border:1px dashed #e3c27a66;border-radius:50%;position:absolute}#stick i{width:calc(var(--r) * .9);height:calc(var(--r) * .9);margin:calc(var(--r) * -.45) 0 0 calc(var(--r) * -.45);border:1px solid var(--accent);background:#5fd0ff59;border-radius:50%;position:absolute;top:50%;left:50%;box-shadow:0 0 16px #5fd0ff80}#stick.idle{opacity:.45;transform:translate(calc(env(safe-area-inset-left,0px) + var(--r) + 40px), calc(100vh - var(--r) - 36px));transform:translate(calc(env(safe-area-inset-left,0px) + var(--r) + 40px), calc(100dvh - var(--r) - 36px));transition:transform .25s ease-out,opacity .25s}#stick.idle:after{display:none}#stick.run{border-color:var(--gold)}#stick.run i{border-color:var(--gold);background:#e3c27a80;box-shadow:0 0 18px #e3c27a99}.tbtn{color:var(--accent);border:1px solid var(--edge);letter-spacing:.04em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);touch-action:none;background:#060e188c;border-radius:50%;place-items:center;padding:0;font:600 13px system-ui,sans-serif;display:grid;position:fixed;box-shadow:0 0 14px #5fd0ff33}.tbtn:active{background:#5fd0ff47}#t-jump,#t-use{width:72px;height:72px;right:calc(env(safe-area-inset-right,0px) + 28px)}#t-jump{bottom:calc(env(safe-area-inset-bottom,0px) + 28px)}#t-use{bottom:calc(env(safe-area-inset-bottom,0px) + 116px);color:#021018;background:var(--gold);border-color:var(--gold);box-shadow:0 0 20px #e3c27a80}#t-pause{width:44px;height:44px;right:calc(env(safe-area-inset-right,0px) + 16px);top:calc(env(safe-area-inset-top,0px) + 12px);font-size:12px}#rotate{z-index:100;text-align:center;background:#010208;align-content:center;justify-items:center;gap:6px;padding:24px;display:none;position:fixed;inset:0}#rotate p{margin:0;font-size:18px}#rotate .dim{color:var(--dim);font-size:14px}#rotate .phone{border:3px solid var(--accent);border-radius:9px;width:44px;height:76px;margin-bottom:20px;animation:2.4s ease-in-out infinite turn;box-shadow:0 0 18px #5fd0ff66}@keyframes turn{0%,20%{transform:rotate(0)}50%,80%{transform:rotate(-90deg)}to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){#rotate .phone{animation:none;transform:rotate(-90deg)}}@media (orientation:portrait){.touch #rotate{display:grid}}@media (height<=500px){#intro,#panel{padding:max(8px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.card{padding:14px 20px}#intro .card{max-width:720px}h1{margin:2px 0;font-size:30px}.sub{margin-bottom:8px}#launch{margin-bottom:10px}#crew-opt{margin-bottom:8px;font-size:12px}#crew-opt span{display:none}.keys{margin:8px 0 0;font-size:12px}#panel .card{max-height:calc(100dvh - 16px)}#panel h2{margin-bottom:6px;font-size:20px}#panel-actions{margin-top:10px}.kids{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}
