@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(./oswald-latin-600-normal-plFmSr5g.woff2)format("woff2"),url(./oswald-latin-600-normal-DRToI_2E.woff)format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:700;src:url(./oswald-latin-700-normal-vy6hmKSr.woff2)format("woff2"),url(./oswald-latin-700-normal-UmC9Ev9x.woff)format("woff")}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(./rubik-latin-500-normal-1os41rQk.woff2)format("woff2"),url(./rubik-latin-500-normal-LZYVHeqz.woff)format("woff")}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:700;src:url(./rubik-latin-700-normal-D-tMm-eS.woff2)format("woff2"),url(./rubik-latin-700-normal-KHOtubUA.woff)format("woff")}:root{--ink:#1a1024;--paper:#fff6e8;--amber:#ff9a1f;--amber-ink:#2a1404;--violet:#6d4dff;--mint:#b6ff3c;--good:#ffe14a;--danger:#ff4d7a;--line:#f6f0e6e6;--display:"Oswald", "Arial Narrow", Impact, sans-serif;--body:"Rubik", "Trebuchet MS", "Segoe UI", sans-serif;color:var(--paper);font-family:var(--body);font-synthesis:none}*{box-sizing:border-box}.hidden{display:none!important}html,body{width:var(--app-w,100%);height:var(--app-h,100dvh);touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:#7ecbff;margin:0;position:fixed;inset:0;overflow:hidden}button,#stick-zone,#meter{touch-action:none}#c{width:var(--app-w,100%);height:var(--app-h,100%);z-index:0;display:block;position:fixed;inset:0}#vignette{pointer-events:none;z-index:1;background:radial-gradient(#0000 45%,#00000061 100%);position:fixed;inset:0}#flash{pointer-events:none;z-index:3;opacity:0;background:#fff8ea;position:fixed;inset:0}#flash.pop{animation:.28s ease-out flash}@keyframes flash{0%{opacity:.45}to{opacity:0}}#hud,#overlay,#fatal{width:var(--app-w,100%);height:var(--app-h,100%);z-index:2;pointer-events:none;position:fixed;inset:0}#overlay,#fatal{z-index:6}#top{padding:calc(10px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) 0 calc(12px + env(safe-area-inset-left));grid-template-columns:48px 1fr 48px;align-items:start;gap:8px;display:grid}#top button{pointer-events:auto;border:2px solid var(--paper);width:44px;height:44px;color:var(--paper);background:#14151cd1;border-radius:12px;box-shadow:3px 3px #000}#btn-sound svg{width:22px;height:22px;margin:0 auto;display:block}#sound-mute{display:none}#btn-sound.is-muted #sound-wave{opacity:.35}#btn-sound.is-muted #sound-mute{display:block}.bars,.bars:before,.bars:after{background:var(--paper);border-radius:2px;width:4px;height:16px;display:block}.bars{margin:0 auto;position:relative}.bars:before,.bars:after{content:"";position:absolute;top:0}.bars:before{left:-7px}.bars:after{left:7px}#scoreboard{border:2px solid var(--paper);background:#100e14db;border-radius:14px;grid-template-columns:1fr auto 1fr;align-items:stretch;min-height:58px;display:grid;overflow:hidden;box-shadow:4px 4px #0000008c}.team{font-family:var(--display);letter-spacing:.06em;align-items:center;gap:6px;padding:6px 10px;display:flex}.team.ace{background:linear-gradient(90deg,#ff9a1f38,#0000)}.team.vic{background:linear-gradient(270deg,#7c5cff47,#0000);justify-content:flex-end}.team .name{opacity:.8;font-size:13px}.team b{font-size:32px;font-weight:700;line-height:1;display:inline-block}.team b.pop{animation:.38s cubic-bezier(.2,1.6,.4,1) scorepop}@keyframes scorepop{0%{transform:scale(1)}40%{transform:scale(1.35)rotate(-6deg)}to{transform:scale(1)rotate(0)}}.team.ace b{color:var(--amber)}.team.vic b{color:#c9bdff}.pip{background:0 0;border:2px solid #f6f0e659;border-radius:50%;width:8px;height:8px}.pip.on{background:var(--mint);border-color:var(--mint);box-shadow:0 0 8px var(--mint)}#mid{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-width:84px;padding:0 8px;display:flex}#tag{font-family:var(--display);letter-spacing:.12em;font-size:14px}#mid small{letter-spacing:.16em;opacity:.65;font-size:9px}#tip{text-align:center;letter-spacing:.01em;background:#100e14b8;border-radius:999px;width:fit-content;max-width:min(92vw,520px);margin:8px auto 0;padding:6px 12px;font-size:13px}#banner{font-family:var(--display);letter-spacing:.08em;text-shadow:4px 4px #000;font-size:clamp(64px,16vw,120px);position:absolute;top:28%;left:50%;transform:translate(-50%,-50%)}#callout{font-family:var(--display);letter-spacing:.04em;opacity:0;color:var(--ink);border:4px solid var(--ink);box-shadow:6px 6px 0 var(--ink);white-space:nowrap;background:#fff4c8;border-radius:18px 22px 16px 26px;max-width:92vw;padding:2px 16px 6px;font-size:clamp(28px,8vw,64px);position:absolute;top:36%;left:50%;transform:translate(-50%,10px)rotate(-4deg)}#callout.pop{animation:.9s cubic-bezier(.2,1.4,.3,1) both callout}#callout.good{background:#d6ff4a}#callout.bad{background:#ff8fab}#callout.info{background:#ffe14a}@keyframes callout{0%{opacity:0;transform:translate(-50%,24px)rotate(-12deg)scale(.35)}22%{opacity:1;transform:translate(-50%)rotate(4deg)scale(1.12)}46%{transform:translate(-50%)rotate(-5deg)scale(.96)}68%{opacity:1;transform:translate(-50%)rotate(-3deg)scale(1)}to{opacity:0;transform:translate(-50%,-18px)rotate(-8deg)scale(1.04)}}#meter{left:50%;bottom:calc(228px + env(safe-area-inset-bottom));pointer-events:auto;z-index:4;width:min(300px,74vw);position:absolute;transform:translate(-50%)}.meter-head{font-family:var(--display);letter-spacing:.14em;justify-content:space-between;margin-bottom:4px;font-size:13px;display:flex}.meter-track{border:3px solid var(--paper);background:#1a120c;border-radius:999px;height:22px;position:relative;overflow:hidden;box-shadow:3px 3px #000}#zone-good,#zone-perfect,#needle{position:absolute;top:0;bottom:0}#zone-good{background:var(--good);transform:translate(-50%)}#zone-perfect{background:var(--mint);transform:translate(-50%)}#needle{background:#fff;width:4px;transform:translate(-50%);box-shadow:0 0 0 2px #14151c}#controls.hidden{display:none}#stick-zone{width:46%;height:calc(210px + env(safe-area-inset-bottom));z-index:4;pointer-events:auto;position:absolute;bottom:0;left:0}#stick-base{left:18px;bottom:calc(18px + env(safe-area-inset-bottom));background:#100e1473;border:3px solid #f6f0e6d9;border-radius:50%;width:128px;height:128px;position:absolute}#stick-knob{background:var(--paper);border:3px solid var(--ink);border-radius:50%;width:58px;height:58px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:3px 3px #00000073}#actions{right:calc(14px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:4;pointer-events:auto;flex-direction:column;align-items:flex-end;gap:12px;display:flex;position:absolute}#btn-action,#btn-skill{font-family:var(--display);letter-spacing:.08em;border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);color:var(--amber-ink)}#btn-action{background:var(--amber);border-radius:28px;width:108px;height:108px;font-size:22px}#btn-skill{background:var(--paper);border-radius:24px;width:86px;height:86px;font-size:16px}#btn-action.is-down,#btn-skill.is-down,#btn-action:active,#btn-skill:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}#controls.defend #btn-action{background:var(--violet);color:#fff}#keyhint{left:50%;bottom:calc(14px + env(safe-area-inset-bottom));letter-spacing:.04em;opacity:.82;white-space:nowrap;background:#100e14b8;border-radius:999px;margin:0;padding:6px 12px;font-size:12px;display:none;position:absolute;transform:translate(-50%)}.panel{padding:max(12px, env(safe-area-inset-top)) 16px max(12px, env(safe-area-inset-bottom));place-items:center;display:grid;position:absolute;inset:0;overflow:auto}.panel.hidden{display:none}.card{pointer-events:auto;width:min(440px,100%);max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:3px solid var(--paper);background:#121018f0;border-radius:18px;min-height:0;padding:22px 20px 18px;overflow:auto;box-shadow:8px 8px #0000008c}.card h1,.card h2,.eyebrow,#banner,#callout,.team b,#tag{font-family:var(--display)}.card h1{letter-spacing:.02em;margin:0 0 8px;font-size:clamp(58px,16vw,84px);line-height:.84}.card h2{letter-spacing:.03em;margin:0 0 8px;font-size:clamp(36px,9vw,52px);line-height:.95}.eyebrow{letter-spacing:.18em;color:var(--amber);margin:0 0 6px;font-size:13px}.lede,.card p,.fine{margin:0 0 14px;line-height:1.4}.fine{opacity:.75;margin-bottom:0;font-size:13px}.diff{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.diff button{pointer-events:auto;border:2px solid var(--paper);color:var(--paper);font-family:var(--display);letter-spacing:.08em;background:0 0;border-radius:10px;padding:8px 4px}.diff button.on{background:var(--amber);color:var(--amber-ink);border-color:var(--amber)}.btn{pointer-events:auto;width:100%;font-family:var(--display);letter-spacing:.08em;border-radius:12px;margin-bottom:8px;padding:12px 14px;font-size:22px}.btn.solid{background:var(--amber);color:var(--amber-ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.btn.ghost{color:var(--paper);border:2px solid var(--line);background:0 0}.btn:active{transform:translate(2px,2px)}.btn:focus-visible,#top button:focus-visible,.diff button:focus-visible{outline:3px solid var(--good);outline-offset:2px}.row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.row .btn{margin:0}.dots{justify-content:center;gap:6px;margin:4px 0 14px;display:flex}.dots i{background:#f6f0e64d;border-radius:50%;width:8px;height:8px;display:block}.dots i.on{background:var(--amber)}.final{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;display:grid}.final div{text-align:center;background:#ffffff0a;border-radius:12px;padding:8px}.final span{font-family:var(--display);letter-spacing:.12em;font-size:13px}.final b{font-family:var(--display);font-size:42px;line-height:1;display:block}.final small{opacity:.7}#fatal{background:#0a080ee0;place-items:center;padding:20px;display:grid}#fatal.hidden{display:none}@media (orientation:landscape){#stick-zone{width:34%;height:calc(100% - 70px);top:70px;bottom:auto}#stick-base{width:112px;height:112px;left:14px}#actions{flex-direction:row;align-items:flex-end;gap:10px}#btn-action{width:92px;height:92px;font-size:18px}#btn-skill{width:76px;height:76px}#meter{bottom:calc(112px + env(safe-area-inset-bottom));width:min(220px,28vw)}#tip{margin-top:4px}.card{padding:12px 16px 10px}.card h1{font-size:48px}.lede,.card p{margin-bottom:8px}}@media (hover:hover) and (pointer:fine){body[data-phase=title] #keyhint,body[data-phase=countdown] #keyhint,body[data-phase=live] #keyhint{display:block}}@media (height<=520px){.card{padding:10px 14px 8px}.card h1{margin-bottom:4px;font-size:36px}.card h2{margin-bottom:4px;font-size:30px}.lede,.card p{margin-bottom:6px;font-size:13px;line-height:1.3}.eyebrow{margin-bottom:2px;font-size:11px}.btn{margin-bottom:6px;padding:7px 10px;font-size:18px}.diff{gap:6px;margin-bottom:8px}.diff button{padding:5px 4px}.fine{font-size:12px}}@media (height<=420px){#tip{display:none}.card h1{font-size:32px}.fine{display:none}#banner{font-size:52px;top:42%}#keyhint{display:none}}@media (prefers-reduced-motion:reduce){#callout.pop,#flash.pop{opacity:1;animation:none}}
