:root{--bg:#05050a;--cyan:#19f0ff;--magenta:#ff2bd6;--amber:#ffb02e;--red:#f35;--text:#cfe9ff;--dim:#6b7c99}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-user-select:none;user-select:none;touch-action:none;margin:0;font-family:Share Tech Mono,ui-monospace,monospace;overflow:hidden}#app,#app canvas{width:100%;height:100%;display:block;position:fixed;inset:0}.hidden{display:none!important}#hud{pointer-events:none;text-shadow:0 0 6px #19f0ff80;grid-template-columns:1fr 1.2fr 1fr;align-items:start;gap:16px;padding:12px 16px;font-size:14px;display:grid;position:fixed;top:0;left:0;right:0}.hud-right{text-align:right;line-height:1.6}.hud-right span:not(.label){color:var(--cyan);font-size:18px}.label{color:var(--dim);letter-spacing:.15em;font-size:11px}.bar{background:#0006;border:1px solid #19f0ff80;height:10px;margin:3px 0 8px}.bar.small{height:6px}.bar>div{background:var(--cyan);width:100%;height:100%;box-shadow:0 0 10px var(--cyan);transition:width .1s}#heat-fill{background:var(--amber);box-shadow:0 0 10px var(--amber);width:0}.bar.dome{border-color:#ff2bd699}#dome-fill{background:var(--magenta);box-shadow:0 0 12px var(--magenta);width:0}.hud-center{text-align:center}#toast{letter-spacing:.12em;color:var(--amber);text-shadow:0 0 12px var(--amber);text-align:center;opacity:0;pointer-events:none;max-width:100%;padding:0 16px;font-family:Orbitron,sans-serif;font-size:clamp(14px,2.4vw,22px);transition:opacity .3s;position:fixed;top:22%;left:50%;transform:translate(-50%)}#toast.show{opacity:1}#map-overlay{z-index:20;background:radial-gradient(#050814eb,#000000f7);flex-direction:column;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}#map-canvas{width:min(88vw,70vh);height:min(88vw,70vh)}.map-title{color:var(--cyan);letter-spacing:.3em;text-shadow:0 0 10px var(--cyan);text-align:center;margin-bottom:8px;font-family:Orbitron,sans-serif}#map-timer{color:var(--magenta)}.map-hint{color:var(--dim);text-align:center;margin-top:8px}#fade{opacity:0;pointer-events:none;z-index:15;background:#000;transition:opacity .35s;position:fixed;inset:0}#fade.on{opacity:1}.screen{z-index:30;text-align:center;background:radial-gradient(#0a0619d9,#000000f2);flex-direction:column;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}h1,h2{letter-spacing:.12em;margin:0 0 12px;font-family:Orbitron,sans-serif;font-weight:800}h1{font-size:clamp(40px,9vw,96px);line-height:1}h2{font-size:clamp(26px,5vw,48px)}.neon{color:#e9fdff;text-shadow:0 0 4px #fff, 0 0 12px var(--cyan), 0 0 28px var(--cyan), 0 0 60px var(--magenta)}.neon.red{text-shadow:0 0 4px #fff, 0 0 12px var(--red), 0 0 28px var(--red), 0 0 60px var(--red)}.flicker{animation:6s infinite flicker}@keyframes flicker{0%,18%,22%,25%,53%,57%,to{opacity:1}20%,24%,55%{opacity:.25}}.tagline{color:var(--magenta);letter-spacing:.2em;margin:4px 0 20px}.howto{max-width:560px;color:var(--text);line-height:1.5}.howto b{color:var(--cyan);font-weight:400}.controls{color:var(--dim);text-align:left;grid-template-columns:repeat(2,auto);gap:6px 24px;margin:14px 0 22px;display:grid}@media (width<=560px){.controls{grid-template-columns:1fr}}kbd{border:1px solid var(--dim);color:var(--text);border-radius:3px;padding:0 5px;font-family:inherit}.btn{letter-spacing:.2em;cursor:pointer;color:var(--cyan);border:2px solid var(--cyan);text-shadow:0 0 8px var(--cyan);background:0 0;padding:12px 34px;font-family:Orbitron,sans-serif;font-size:18px;box-shadow:0 0 14px #19f0ff80,inset 0 0 14px #19f0ff4d}.btn:hover{background:#19f0ff1f}.best{color:var(--dim);margin-top:16px}#touch{pointer-events:none;z-index:10;position:fixed;inset:0}#stick{pointer-events:auto;background:#19f0ff0d;border:2px solid #19f0ff66;border-radius:50%;width:130px;height:130px;position:absolute;bottom:24px;left:24px}#stick-knob{width:50px;height:50px;box-shadow:0 0 12px var(--cyan);background:#19f0ff59;border-radius:50%;position:absolute;top:40px;left:40px}#touch-buttons{pointer-events:auto;gap:14px;display:flex;position:absolute;bottom:28px;right:20px}#touch-buttons button{color:#fff;border:2px solid var(--magenta);background:#ff2bd61f;border-radius:50%;width:80px;height:80px;font-family:Orbitron,sans-serif;font-size:12px;box-shadow:0 0 12px #ff2bd680}#touch-buttons #t-drill{border-color:var(--amber);background:#ffb02e1f;box-shadow:0 0 12px #ffb02e80}body:after{content:"";pointer-events:none;z-index:5;background:radial-gradient(#0000 55%,#000000a6 100%),repeating-linear-gradient(0deg,#0000001f 0 1px,#0000 1px 3px);position:fixed;inset:0}
