*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#101b20;color:#e5eedb;font:13px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,select{font:inherit;color:inherit;background:#263b38;border:1px solid #4a5e50;border-radius:7px;padding:9px 12px;cursor:pointer}button:hover{border-color:#e0ecc7}button:disabled{opacity:.4;cursor:wait}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #eff3c6;outline-offset:3px}a{color:inherit;text-decoration:none}[hidden]{display:none!important}header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:20px}.brand{font-size:20px;font-weight:700;letter-spacing:-.06em}.brand span{color:#edc2a7;font-weight:400}.round-clock{display:flex;align-items:center;gap:16px}.round-clock small{font-size:8px;color:#93aa96;letter-spacing:.14em}.round-clock b{font-size:30px;font-weight:500}.round-clock b span{font-size:12px}nav{display:flex;align-items:center;gap:7px}nav button,nav a{font-size:11px}.players{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 20px}.player{--accent:#c7e6a5;min-width:0}.player:nth-child(2){--accent:#edba95}.player-heading{display:flex;justify-content:space-between;align-items:center;height:39px}.player-name{font-size:17px;font-weight:600;color:var(--accent);letter-spacing:-.04em}.player-name small{font-size:8px;color:#9bab95;font-weight:400;margin-left:8px;letter-spacing:0}.score{font-size:26px;font-weight:500;letter-spacing:-.05em}.score small{font-size:10px;color:var(--accent);margin-left:9px}.arena{height:clamp(235px,calc(100dvh - 450px),560px);position:relative;border:1px solid #3e5047;border-radius:14px;overflow:hidden}canvas{width:100%;height:100%;display:block}.arena-info{position:absolute;top:12px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none;font-size:10px;text-shadow:0 1px 4px #000}.phase{font-weight:600}.trail{position:absolute;bottom:11px;left:14px;right:14px;font-size:9px;color:#bbccaf;text-shadow:0 1px 4px #000}.countdown{position:absolute;inset:0;display:grid;place-items:center;font-size:72px;color:var(--accent)}.mission-steps{display:flex;gap:5px;font-size:8px;flex-wrap:wrap}.mission-steps span{background:#1e3031b3;padding:4px;border-radius:3px;color:#92a18e}.mission-steps .done{color:#e0efbd}.coach{margin:7px 0;background:#1e3133;border:1px solid #3c5046;border-radius:8px;padding:9px 11px;min-height:65px;position:relative}.coach strong{display:block;font-size:15px;letter-spacing:-.02em}.coach small{display:block;font-size:9px;color:#a2b298;margin-top:4px}.coach .track{height:4px;background:#3d5147;margin-top:7px;position:relative;border-radius:2px;overflow:hidden}.coach .track:after{content:'';position:absolute;right:0;top:0;height:100%;width:var(--window,25%);background:var(--accent)}.coach .track i{position:absolute;top:0;height:100%;width:3px;background:white;z-index:1}.coach[data-kind=open]{background:#354931;border-color:var(--accent)}.coach[data-kind=queued]{border-color:#abcddd}.deck-head{display:flex;justify-content:space-between;align-items:center;margin:5px 0 7px;gap:8px}.deck-head>span{font-size:8px;color:#b1c1a3}.banks{display:flex;gap:3px}.banks button{font-size:9px;padding:4px 7px}.banks button[aria-pressed=true]{background:var(--accent);color:#233d2e;border-color:var(--accent)}.key-row{display:grid;grid-template-columns:57px 1fr;align-items:center;gap:6px;margin:4px 0}.row-label{font-size:7px;font-weight:600;color:var(--row-color);letter-spacing:.07em}.row-pads{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.pad{position:relative;padding:4px 6px;height:37px;text-align:left;touch-action:none;user-select:none;overflow:hidden;background:#1d2e31}.pad kbd{display:block;font:9px inherit;color:var(--accent)}.pad span{display:block;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.pad[aria-pressed=true]{background:#445940;border-color:var(--accent)}.pad[data-active=true]{box-shadow:inset 0 -2px var(--accent)}.pad[data-link=true]{border-color:#799b65}.pad[data-suggested=true]{outline:2px solid var(--accent);outline-offset:1px}.pad[data-queued=true]:after{content:'↗';position:absolute;right:5px;top:3px;color:var(--accent)}.release{display:block;margin:6px 0 0 auto;font-size:9px;padding:4px 7px;background:transparent}footer{display:flex;justify-content:space-between;padding:13px 22px;font-size:9px;color:#91a58b;gap:20px}.comic{position:absolute;top:55px;right:14px;max-width:175px;background:#edd981;color:#1b2834;box-shadow:3px 4px 0 #071214;border:2px solid #18283a;transform:rotate(3deg);padding:10px;pointer-events:none;border-radius:3px 9px 3px 3px}.comic-kicker{font-size:8px;display:block;font-weight:800}.comic-title{display:block;font-size:19px;line-height:1.05;font-style:italic;letter-spacing:-.06em;font-weight:900;margin-top:3px}.comic-route,.comic-bonuses,.comic-rhythm{font-size:8px;display:block;margin-top:5px}.comic-points{display:block;font-size:23px;font-weight:900}.comic[data-kind=complete]{background:#f5b989}.comic[data-kind=perfect]{background:#a4dde9}.comic.pop{animation:pop .2s ease-out}@keyframes pop{from{scale:.7;opacity:0}to{scale:1;opacity:1}}dialog{margin:auto;width:min(470px,calc(100% - 30px));max-height:94dvh;overflow:auto;border:1px solid #5d6c50;border-radius:18px;background:#17282b;color:#e5ecd6;padding:29px}dialog::backdrop{background:#08151ed9;backdrop-filter:blur(8px)}dialog h1{font-size:49px;letter-spacing:-.055em;font-weight:500;line-height:1.03;margin:16px 0}dialog h1 em{font-style:normal;color:#edc2a7}dialog h2{font-size:33px;font-weight:500;letter-spacing:-.05em}.eyebrow{font-size:8px;letter-spacing:.17em;color:#aec49d}dialog p{font-size:12px;line-height:1.65;color:#aabda4}.versus{display:flex;align-items:center;gap:30px;margin:22px 0}.versus>span{font-size:18px;color:#c6dfa6}.versus>span:last-child{color:#edc2a7}.versus b{display:block;font-size:9px;font-weight:400;color:#90a98e;margin-top:3px}.versus i{font-size:25px;color:#667e6d}.actions{display:flex;gap:8px;margin:17px 0 9px;flex-wrap:wrap}.primary{background:#c5dfa6;color:#183321;border-color:#c5dfa6;font-weight:600}.text{background:transparent;border:0;padding:7px 0;font-size:11px;color:#b6cea3}.avatar-note{font-size:10px!important;color:#9aa88c!important}.subtle{font-size:10px!important}dialog select{display:block;width:100%;margin:7px 0}dialog label{font-size:11px}.result-scores{display:flex;gap:30px}.result-scores b{display:block;font-size:38px;font-weight:500;color:#d7e8bd}.result-scores small{font-size:10px;color:#aebea5}.help-split{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#203638;border-radius:8px;padding:15px}.help-split code{display:block;font-size:13px;line-height:1.8;margin:9px 0;color:#e2e9d7}.help-split small{font-size:9px;color:#b6c5a9;line-height:1.6}#loading{font-size:11px;color:#bdcdaa}body[data-mode=home] .coach,body[data-mode=home] .release{opacity:.4}.music-dock{position:relative}.music-dialog{z-index:10}@media(max-width:850px){header{padding:0 12px;gap:10px;height:62px}.brand{font-size:16px}.round-clock small{display:none}.players{padding:0 9px;gap:8px}.key-row{grid-template-columns:1fr;gap:3px}.row-label{font-size:7px}.arena{height:330px}.player-name small{display:none}.deck-head>span{font-size:7px}.coach strong{font-size:12px}.coach small{font-size:8px}.pad{padding:4px 3px}.pad span{font-size:7px}.score{font-size:21px}.mission-steps{display:none}footer{font-size:8px;padding:12px}.comic{max-width:140px;right:8px;padding:7px}.comic-title{font-size:16px}}
@media(max-width:560px){header{flex-wrap:wrap;height:auto;padding:12px;gap:8px}.brand{font-size:15px}nav{gap:5px}nav button,nav a{font-size:9px;padding:5px}nav a{display:none}.round-clock b{font-size:22px}.players{grid-template-columns:1fr}.arena{height:260px}.key-row{grid-template-columns:53px 1fr}.player{margin-bottom:15px}.coach{min-height:60px}.pad span{font-size:8px}footer{display:block;line-height:1.7}footer span{display:block}.player-name small{display:inline}.mission-steps{display:flex}.deck-head>span{font-size:9px}.coach strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.key-row[data-group=acrobatics] .row-pads{grid-template-columns:minmax(110px,1fr) 4fr}.key-row[data-group=acrobatics] .pad{height:31px}.key-row[data-group=acrobatics] .pad kbd,.key-row[data-group=acrobatics] .pad span{display:inline;margin-right:7px}
