:root{--ink: #e8f2ff;--dim: #7f93b0;--accent: #36c6ff;--warn: #ffb14d;--bg: #05070d;--panel: rgba(9, 15, 26, .72);--edge: rgba(84, 130, 180, .35);font-family:SF Mono,JetBrains Mono,ui-monospace,Menlo,Consolas,monospace}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);overflow:hidden;overscroll-behavior:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}#stage{position:fixed;inset:0;width:100vw;height:100dvh;display:block;touch-action:none}#hud{position:fixed;inset:0;pointer-events:none;padding:18px clamp(16px,3vw,40px);display:flex;flex-direction:column;gap:10px}.hud-row{display:flex;gap:clamp(12px,3vw,48px);flex-wrap:wrap}.hud-stat{display:flex;flex-direction:column;gap:2px;background:var(--panel);border:1px solid var(--edge);border-radius:10px;padding:8px 14px;backdrop-filter:blur(6px)}.hud-label{font-size:10px;letter-spacing:.16em;color:var(--dim)}.hud-value{font-size:clamp(18px,2.4vw,28px);font-weight:700;font-variant-numeric:tabular-nums}.hud-progress{height:5px;width:min(420px,60vw);border-radius:99px;background:#78a0c829;overflow:hidden}.hud-progress i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--accent),#8fe9ff);transition:width .25s ease-out}.hud-mode{align-self:flex-start;font-size:11px;letter-spacing:.22em;color:var(--dim);border:1px solid var(--edge);border-radius:99px;padding:5px 12px;background:var(--panel)}.hud-mode[data-mode=chase]{color:#ff8080;border-color:#ff808080}.hud-mode[data-mode=frightened]{color:var(--warn);border-color:#ffb14d8c}.hud-banner{margin:auto;font-size:clamp(28px,6vw,68px);font-weight:800;letter-spacing:.08em;text-align:center;text-shadow:0 0 36px rgba(54,198,255,.45)}.hud-banner[data-status=levelComplete]{color:#8fffc4}.hud-banner[data-status=gameOver]{color:#ff7a7a}#loading{position:fixed;inset:0;display:grid;place-items:center;background:var(--bg);letter-spacing:.2em;font-size:13px;color:var(--dim);z-index:10}#help{position:fixed;left:0;right:0;bottom:12px;text-align:center;font-size:11px;color:var(--dim);letter-spacing:.06em;pointer-events:none}#help b{color:var(--ink);font-weight:600}.fatal{position:fixed;left:16px;bottom:40px;z-index:20;max-width:70vw;padding:12px 16px;border-radius:10px;background:#2a0f14;border:1px solid #ff7a7a;color:#ffd7d7;white-space:pre-wrap}.minimap{position:fixed;top:18px;right:clamp(16px,3vw,40px);border:1px solid var(--edge);border-radius:10px;background:#060a128c;backdrop-filter:blur(6px);opacity:.85;pointer-events:none;box-shadow:0 10px 30px #00000073}.quota-timer{align-self:flex-start;display:flex;align-items:center;gap:10px;padding:6px 12px;border-radius:99px;background:var(--panel);border:1px solid rgba(255,199,90,.55)}.quota-timer[hidden]{display:none}.quota-label{font-size:10px;letter-spacing:.18em;color:var(--warn)}.quota-bar{width:min(260px,40vw);height:6px;border-radius:99px;background:#ffc75a2e;overflow:hidden}.quota-bar i{display:block;height:100%;width:100%;border-radius:99px;background:linear-gradient(90deg,#ffc75a,#fff0c4)}.quota-timer[data-expiring=true]{border-color:#ff7a7a;animation:quota-expiring .45s steps(2,end) infinite}.quota-timer[data-expiring=true] .quota-bar i{background:linear-gradient(90deg,#ff7a7a,#ffc75a)}@keyframes quota-expiring{0%{opacity:1}to{opacity:.45}}#touchpad{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:clamp(168px,42vw,240px);aspect-ratio:1;z-index:5;touch-action:none}#touchpad[hidden]{display:none}.touchpad-key{position:absolute;translate:-50% -50%;width:56px;height:56px;display:grid;place-items:center;padding:0;border-radius:50%;border:1px solid var(--edge);background:var(--panel);color:var(--ink);backdrop-filter:blur(6px);box-shadow:0 6px 18px #00000073;touch-action:none;transition:background .08s linear,transform .08s ease-out}.touchpad-key svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;rotate:var(--lean)}.touchpad-key[data-held]{background:#36c6ff47;border-color:var(--accent);color:#eaf9ff;transform:scale(.94)}@media(orientation:landscape)and (max-height:520px){#touchpad{width:clamp(132px,26vh,180px)}.touchpad-key{width:46px;height:46px}.touchpad-key svg{width:21px;height:21px}}@media(max-width:720px){#hud{padding:max(10px,env(safe-area-inset-top)) 12px 12px;gap:6px}.hud-stat{padding:5px 9px;border-radius:8px}.hud-label{font-size:8px;letter-spacing:.1em}.hud-row{gap:8px}.minimap{top:104px;right:max(10px,env(safe-area-inset-right));transform:scale(.72);transform-origin:top right;opacity:.7}}body[data-touch] #help{bottom:calc(max(16px,env(safe-area-inset-bottom)) + 4px);right:clamp(180px,44vw,256px);left:max(12px,env(safe-area-inset-left));text-align:left;font-size:10px}.help-keys{display:inline}body[data-touch] .help-keys,.help-touch{display:none}body[data-touch] .help-touch{display:inline}
