:root{--lamp:#ffb347;--ink:#e8e2d8;--mute:#6a6a68;--edge:#1a1d21}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{color:var(--ink);overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;cursor:crosshair;background:#000;font:14px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden}canvas{touch-action:none;display:block}.hud{pointer-events:none;z-index:10;flex-direction:column;justify-content:space-between;padding:18px;display:flex;position:fixed;inset:0}.hud>*{pointer-events:auto}.row{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.panel{border:1px solid var(--edge);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060709d1;border-radius:10px;padding:11px 14px}.k{letter-spacing:.18em;text-transform:uppercase;color:#5e5a52;margin-bottom:6px;font:600 10px/1 ui-monospace,Menlo,monospace}.fuel{background:#15161a;border-radius:99px;width:168px;height:7px;overflow:hidden}.fuel i{background:var(--lamp);height:100%;transition:width .2s;display:block}.fuel.low i{background:#c2452f}.num{font-variant-numeric:tabular-nums;font:600 19px/1 ui-monospace,Menlo,monospace}.keys{flex-wrap:wrap;gap:7px;display:flex}.key{border:1px solid var(--edge);color:var(--mute);background:#0a0b0d;border-radius:6px;padding:5px 8px;font:600 11px/1 ui-monospace,Menlo,monospace}.key b{color:var(--ink)}.toasts{z-index:11;pointer-events:none;flex-direction:column;align-items:center;gap:7px;display:flex;position:fixed;bottom:86px;left:50%;transform:translate(-50%)}.toast{border:1px solid var(--edge);background:#060709e6;border-radius:99px;padding:7px 16px;font-size:13px;animation:.3s ease-out rise}.toast.warn{color:#e8a892;border-color:#5a2a1e}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.dot{background:#3a3a38;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.dot.on{background:var(--lamp);box-shadow:0 0 9px var(--lamp)}.boot{z-index:50;background:#000;place-items:center;display:grid;position:fixed;inset:0}.boot div{text-align:center}.boot h1{letter-spacing:-.04em;background:radial-gradient(120% 160% at 20% 120%,var(--lamp),#c98a3c 40%,var(--ink));color:#0000;-webkit-background-clip:text;background-clip:text;font:800 46px/1 ui-sans-serif,system-ui}.boot p{color:var(--mute);margin-top:10px;font-size:13px}.touch{z-index:12;pointer-events:none;padding:0 max(18px,env(safe-area-inset-left)) max(22px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-right));justify-content:space-between;align-items:flex-end;display:flex;position:fixed;inset:0}.stick{pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);touch-action:none;-webkit-tap-highlight-color:transparent;background:#0a080e6b;border:1px solid #ffb34738;border-radius:50%;place-items:center;width:132px;height:132px;display:grid}.stick i{background:radial-gradient(circle at 35% 30%,#ffd08a,#ff9a3c);border-radius:50%;width:56px;height:56px;transition:transform 60ms linear;display:block;box-shadow:0 0 18px #ff9a3c80}.tbtns{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.tbtn{pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;border:1px solid var(--edge);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:76px;height:76px;color:var(--ink);cursor:pointer;background:#0a080e9e;border-radius:50%;place-items:center;line-height:1.15;display:grid}.tbtn:active{background:#1a120acc;transform:scale(.93)}.tbtn b{font-size:12.5px;font-weight:700;display:block}.tbtn span{color:var(--lamp);font-variant-numeric:tabular-nums;font-size:11px;display:block}.tbtn.hang{border-color:#ffb34780;box-shadow:0 0 22px #ff9a3c38}body.touch-device .keys{display:none}body.touch-device .hud{padding:12px}body.touch-device .panel{padding:8px 11px}body.touch-device .num{font-size:16px}body.touch-device .fuel{width:118px}body.touch-device .toasts{top:96px;bottom:auto}@media (width<=520px){.stick{width:112px;height:112px}.stick i{width:48px;height:48px}.tbtn{width:66px;height:66px}}
