:root{--bg:#0e0e0e;--surface:#1c1c1c;--text:#f2f2f2;--muted:#a3a3a3;--lime:#d4f53c;--olive:#4d6b12}*{box-sizing:border-box}body,html{background:var(--bg);height:100%;color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;overflow:hidden}.battle[data-v-199275df]{pointer-events:none;--edge-t:max(16px, env(safe-area-inset-top));--edge-b:max(16px, env(safe-area-inset-bottom));font-family:Inter,system-ui,sans-serif;position:fixed;inset:0}button[data-v-199275df]{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.board[data-v-199275df]{top:var(--edge-t);pointer-events:auto;max-width:calc(100vw - 24px);color:var(--text);white-space:nowrap;background:#141414e0;border-radius:12px;gap:14px;padding:8px 8px 8px 14px;position:absolute;left:50%;transform:translate(-50%)}.board[data-v-199275df],.side[data-v-199275df]{align-items:center;display:flex}.side[data-v-199275df]{gap:10px}.who[data-v-199275df]{font-size:14px;font-weight:600}.you .who[data-v-199275df]{color:var(--lime)}.score[data-v-199275df]{font-variant-numeric:tabular-nums;min-width:52px;font-size:20px}.you .score[data-v-199275df]{text-align:right}.pips[data-v-199275df]{gap:4px;display:flex}.pips i[data-v-199275df]{border:1.5px solid #555;border-radius:50%;width:9px;height:9px}.pips i.on[data-v-199275df]{background:var(--lime);border-color:var(--lime);box-shadow:0 0 8px var(--lime)}.round[data-v-199275df]{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;padding:0 6px;font-size:12px}.banner[data-v-199275df]{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:28%;left:50%;transform:translate(-50%)}.banner span[data-v-199275df]{letter-spacing:-.03em;color:var(--text);text-shadow:0 4px 24px #0009;background:linear-gradient(transparent 55%,var(--olive) 55%,var(--olive) 92%,transparent 92%);padding:4px 14px;font-size:calc(clamp(40px,8vw,84px));font-weight:800;line-height:1}.banner.win span[data-v-199275df]{color:var(--lime)}.banner small[data-v-199275df]{color:var(--muted);font-size:16px}.pop-enter-active[data-v-199275df]{transition:transform .25s cubic-bezier(.3,1.6,.5,1),opacity .2s}.pop-leave-active[data-v-199275df]{transition:opacity .15s}.pop-enter-from[data-v-199275df]{opacity:0;transform:translate(-50%)scale(.6)}.pop-leave-to[data-v-199275df]{opacity:0}.lane[data-v-199275df]{width:min(680px,100% - 32px);position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.track[data-v-199275df]{background:#141414e6;border:1px solid #2c2c2c;border-radius:14px;height:64px;position:relative;overflow:visible}.ring[data-v-199275df]{border:3px solid var(--lime);border-radius:50%;width:52px;height:52px;box-shadow:0 0 16px #d4f53c80}.note[data-v-199275df],.ring[data-v-199275df]{position:absolute;top:50%}.note[data-v-199275df]{color:#111;border-radius:10px;place-items:center;width:42px;height:42px;font-size:18px;font-weight:800;transition:opacity .2s,transform .2s;display:grid;transform:translate(-50%,-50%)}.ke[data-v-199275df],.note.ke[data-v-199275df]{background:var(--lime)}.k1[data-v-199275df],.note.k1[data-v-199275df]{background:#f2f2f2}.k2[data-v-199275df],.note.k2[data-v-199275df]{background:#8fb23a}.k3[data-v-199275df],.note.k3[data-v-199275df]{background:#eaff9a}.k4[data-v-199275df],.note.k4[data-v-199275df]{background:#bdbdbd}.k5[data-v-199275df],.note.k5[data-v-199275df]{color:#f2f2f2;background:#6f8f22}.k6[data-v-199275df],.k7[data-v-199275df],.note.k6[data-v-199275df],.note.k7[data-v-199275df]{color:var(--lime);box-shadow:inset 0 0 0 2px var(--lime);background:#111}.note.k6[data-v-199275df],.note.k7[data-v-199275df]{width:48px;height:48px}.note.good[data-v-199275df],.note.perfect[data-v-199275df]{opacity:0;transform:translate(-50%,-50%)scale(1.5)}.note.miss[data-v-199275df]{color:#777;opacity:.5;background:#3a3a3a}.feedback[data-v-199275df]{white-space:nowrap;color:var(--text);font-size:22px;font-weight:800;position:absolute;bottom:74px;transform:translate(-50%)}.feedback.freeze[data-v-199275df],.feedback.perfect[data-v-199275df]{color:var(--lime)}.feedback.miss[data-v-199275df]{color:#8a8a8a}.feedback em[data-v-199275df]{color:var(--text);font-size:16px;font-style:normal}.fb-enter-active[data-v-199275df]{transition:transform .2s,opacity .2s}.fb-leave-active[data-v-199275df]{transition:opacity .3s}.fb-enter-from[data-v-199275df]{opacity:0;transform:translate(-50%)translateY(8px)scale(.8)}.fb-leave-to[data-v-199275df]{opacity:0}.legend[data-v-199275df]{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:14px;margin-top:10px;font-size:13px;display:flex}.legend b[data-v-199275df]{color:#111;border-radius:6px;place-items:center;width:22px;height:22px;margin-right:4px;font-size:12px;display:inline-grid}.legend.dim[data-v-199275df]{opacity:.7;margin-top:6px;font-size:12px}.quit[data-v-199275df]{color:var(--muted);cursor:pointer;white-space:nowrap;background:#262626;border:0;border-radius:8px;padding:6px 10px;font:500 12px Inter,sans-serif}.quit[data-v-199275df]:hover{color:var(--text)}.pad[data-v-199275df]{display:none}@media (hover:none) and (pointer:coarse){.desk[data-v-199275df],.legend[data-v-199275df]{display:none}.lane[data-v-199275df]{bottom:calc(84px + var(--edge-b))}.pad[data-v-199275df]{left:12px;right:12px;bottom:var(--edge-b);pointer-events:auto;gap:8px;position:absolute}.pad[data-v-199275df],.pad button[data-v-199275df]{justify-content:center;display:flex}.pad button[data-v-199275df]{color:#111;border:0;border-radius:14px;flex-direction:column;flex:1 1 0;align-items:center;gap:3px;max-width:110px;height:68px;font:600 11px/1.1 Inter,sans-serif}.pad button b[data-v-199275df]{font-size:20px;line-height:1}.pad button[data-v-199275df]:active{filter:brightness(1.15);transform:scale(.94)}.pad button.k5[data-v-199275df]{color:#f2f2f2}.pad button.freeze[data-v-199275df]{color:var(--lime);box-shadow:inset 0 0 0 2px var(--lime);background:#111}}@media (width<=420px){.board[data-v-199275df]{gap:8px;padding:6px 6px 6px 10px}.who[data-v-199275df]{text-overflow:ellipsis;max-width:64px;font-size:12px;overflow:hidden}.score[data-v-199275df]{min-width:36px;font-size:16px}.round[data-v-199275df]{padding:0 2px;font-size:10px}.pips i[data-v-199275df]{width:7px;height:7px}.note[data-v-199275df]{width:36px;height:36px;font-size:15px}.note.k6[data-v-199275df],.note.k7[data-v-199275df]{width:40px;height:40px}.ring[data-v-199275df]{width:44px;height:44px}}.joy[data-v-5ccc46f0]{left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));touch-action:none;-webkit-user-select:none;user-select:none;background:#1c1c1cb3;border:1px solid #2c2c2c;width:112px;height:112px;position:fixed}.joy[data-v-5ccc46f0],.knob[data-v-5ccc46f0]{border-radius:50%}.knob[data-v-5ccc46f0]{background:var(--lime);width:48px;height:48px;margin:-24px 0 0 -24px;position:absolute;top:50%;left:50%}.hud[data-v-091c3a27],.stage[data-v-091c3a27]{position:fixed;inset:0}.stage[data-v-091c3a27] canvas{touch-action:none;display:block}.hud[data-v-091c3a27],.moves[data-v-091c3a27],.touch[data-v-091c3a27]{--edge-t:max(16px, env(safe-area-inset-top));--edge-r:max(16px, env(safe-area-inset-right));--edge-b:max(16px, env(safe-area-inset-bottom));--edge-l:max(16px, env(safe-area-inset-left))}button[data-v-091c3a27]{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.hud[data-v-091c3a27]{pointer-events:none}.top[data-v-091c3a27]{top:var(--edge-t);left:var(--edge-l);right:var(--edge-r);justify-content:space-between;position:absolute}.brand[data-v-091c3a27],.top[data-v-091c3a27]{align-items:center;gap:10px;display:flex}.brand[data-v-091c3a27]{letter-spacing:-.02em;white-space:nowrap;font-size:20px;font-weight:700}.mark[data-v-091c3a27]{background:var(--lime);color:#111;border-radius:8px;place-items:center;width:28px;height:28px;font-size:16px;font-weight:800;display:grid}.hl[data-v-091c3a27]{z-index:0;position:relative}.hl[data-v-091c3a27]:before{content:"";background:var(--olive);z-index:-1;border-radius:3px;position:absolute;inset:3px -2px 1px;transform:skew(-8deg)rotate(-1deg)}.pills[data-v-091c3a27]{gap:8px;min-width:0;display:flex}.pill[data-v-091c3a27]{background:var(--surface);white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:500;display:inline-flex}.pill.area[data-v-091c3a27]{color:var(--muted)}.dot[data-v-091c3a27]{background:var(--lime);width:7px;height:7px;box-shadow:0 0 10px var(--lime);border-radius:50%}.zoom[data-v-091c3a27]{right:var(--edge-r);pointer-events:auto;background:var(--surface);border-radius:10px;flex-direction:column;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.zoom button[data-v-091c3a27]{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;font:600 20px Inter,sans-serif}.zoom button+button[data-v-091c3a27]{border-top:1px solid #2c2c2c}.zoom button[data-v-091c3a27]:hover{color:var(--lime);background:#262626}.challenge[data-v-091c3a27]{pointer-events:auto;background:var(--lime);color:#111;cursor:pointer;white-space:nowrap;border:0;border-radius:12px;align-items:center;gap:10px;padding:12px 18px;font:700 16px Inter,sans-serif;animation:1.4s ease-in-out infinite nudge-091c3a27;display:inline-flex;position:absolute;bottom:76px;left:50%;transform:translate(-50%);box-shadow:0 0 24px #d4f53c59}.challenge .kbd[data-v-091c3a27]{color:var(--lime);background:#111;border-radius:6px;padding:2px 8px;font-size:13px}@keyframes nudge-091c3a27{50%{transform:translate(-50%)translateY(-3px)}}.toast[data-v-091c3a27]{top:calc(56px + var(--edge-t));opacity:0;background:var(--lime);color:#111;white-space:nowrap;border-radius:10px;padding:8px 14px;font-size:14px;font-weight:600;transition:opacity .25s,transform .25s;position:absolute;left:50%;transform:translate(-50%)translateY(-8px)}.toast.show[data-v-091c3a27]{opacity:1;transform:translate(-50%)translateY(0)}.keys[data-v-091c3a27]{flex-wrap:wrap;justify-content:center;gap:8px;display:flex;position:absolute;bottom:20px;left:16px;right:16px}.key[data-v-091c3a27]{color:var(--muted);background:#1c1c1cd9;border-radius:10px;align-items:center;gap:8px;padding:7px 12px;font-size:13px;display:inline-flex}.key b[data-v-091c3a27]{color:#111;background:var(--lime);border-radius:6px;padding:2px 7px;font-size:12px;font-weight:600}.moves[data-v-091c3a27]{pointer-events:none;color:var(--muted);background:#141414cc;border-radius:12px;flex-direction:column;gap:4px;padding:10px;font-size:12.5px;display:flex;position:fixed;top:50%;left:20px;transform:translateY(-50%)}.moves-title[data-v-091c3a27]{text-transform:uppercase;letter-spacing:.08em;color:#777;margin-bottom:2px;font-size:11px}.move[data-v-091c3a27]{align-items:center;gap:8px;display:flex}.move b[data-v-091c3a27]{background:var(--lime);color:#111;border-radius:6px;place-items:center;width:20px;height:20px;font-size:11px;display:inline-grid}.move.freeze b[data-v-091c3a27]{color:var(--lime);box-shadow:inset 0 0 0 1.5px var(--lime);background:#111}.fade[data-v-091c3a27]{pointer-events:none;background:#000;position:fixed;inset:0}.touch[data-v-091c3a27]{display:none}.actions[data-v-091c3a27]{right:var(--edge-r);bottom:var(--edge-b);align-items:flex-end;gap:12px;display:flex;position:fixed}.actions button[data-v-091c3a27]{border:0;border-radius:50%;font:700 14px Inter,sans-serif}.jump[data-v-091c3a27]{background:var(--lime);color:#111;width:76px;height:76px;box-shadow:0 0 20px #d4f53c4d}.dance[data-v-091c3a27]{background:var(--surface);width:60px;height:60px;color:var(--text);border:1.5px solid #333!important}.dance.on[data-v-091c3a27]{background:var(--olive);color:var(--lime);border-color:var(--lime)!important}.tray[data-v-091c3a27]{right:var(--edge-r);bottom:calc(124px + var(--edge-b));width:min(300px,100vw - var(--edge-l) - var(--edge-r));background:#141414eb;border:1px solid #2c2c2c;border-radius:14px;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px;display:grid;position:fixed}.tray button[data-v-091c3a27]{height:44px;color:var(--text);background:#262626;border:0;border-radius:10px;padding:0 4px;font:600 11px/1.15 Inter,sans-serif}.tray button[data-v-091c3a27]:active{background:var(--lime);color:#111}.tray button.freeze[data-v-091c3a27]{color:var(--lime);box-shadow:inset 0 0 0 1.5px var(--lime);background:#111}.tray-enter-active[data-v-091c3a27],.tray-leave-active[data-v-091c3a27]{transition:opacity .15s,transform .15s}.tray-enter-from[data-v-091c3a27],.tray-leave-to[data-v-091c3a27]{opacity:0;transform:translateY(8px)}@media (hover:none) and (pointer:coarse){.touch[data-v-091c3a27]{display:block}.challenge .kbd[data-v-091c3a27],.hud.battling .top[data-v-091c3a27],.keys[data-v-091c3a27],.moves[data-v-091c3a27]{display:none}.zoom[data-v-091c3a27]{top:calc(50px + var(--edge-t));flex-direction:row;transform:none}.zoom button[data-v-091c3a27]{width:38px;height:34px;font-size:18px}.zoom button+button[data-v-091c3a27]{border-top:0;border-left:1px solid #2c2c2c}.challenge[data-v-091c3a27]{bottom:auto;top:calc(50px + var(--edge-t));padding:10px 16px;font-size:15px}.toast[data-v-091c3a27]{top:calc(100px + var(--edge-t))}}@media (hover:none) and (pointer:coarse) and (height<=500px){.tray[data-v-091c3a27]{bottom:var(--edge-b);right:calc(160px + var(--edge-r))}}@media (width<=420px){.brand[data-v-091c3a27]{gap:8px;font-size:17px}.mark[data-v-091c3a27]{width:24px;height:24px;font-size:14px}.pill[data-v-091c3a27]{gap:6px;padding:6px 10px;font-size:12.5px}.challenge[data-v-091c3a27]{font-size:14px}}
