@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap";:root{color:#173831;font-synthesis:none;background:#f3f3e9;font-family:Noto Sans JP,sans-serif}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}button:focus-visible,select:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #dd694d}header{border-bottom:1px solid #d9dfd1;justify-content:space-between;align-items:center;height:86px;padding:0 4vw;display:flex}.brand{align-items:center;gap:14px;display:flex}.mark{color:#efffae;background:#173831;border-radius:14px;padding:3px 13px;font-size:28px;transform:rotate(-7deg)}h1{letter-spacing:-1px;margin:0;font-size:25px;font-weight:900}.eyebrow{letter-spacing:2.5px;color:#7e9487;font-size:10px;font-weight:800}.badge{letter-spacing:1px;border:1px solid #c8d1c1;border-radius:20px;padding:8px 12px;font-size:11px}.badge i{background:#589c73;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}main{max-width:1600px;margin:auto;padding:24px 4vw 16px}.intro{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.intro h2{letter-spacing:-.5px;margin:3px 0 0;font-size:23px}.intro p{color:#708174;margin:0;font-size:12px}.layout{grid-template-columns:minmax(0,1fr) 280px;gap:20px;display:grid}.court-card{background:#132d36;border-radius:23px;position:relative;overflow:hidden;box-shadow:0 12px 30px #17383112}.court-top{z-index:2;pointer-events:none;color:#cfdfcf;letter-spacing:1px;justify-content:space-between;font-size:11px;display:flex;position:absolute;top:18px;left:22px;right:22px}.court-top b{color:#e8fbb2}.court{outline:none;height:clamp(430px,66vh,760px);position:relative}.court canvas{width:100%;height:100%;display:block}.court-foot{color:#aabfc0;letter-spacing:1px;background:#10262d;justify-content:space-between;align-items:center;height:51px;padding:0 23px;font-size:10px;display:flex}.court-foot strong{color:#f1f4d8}.overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:3;color:#fff;text-align:center;background:#112b3688;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.overlay.hidden{display:none}.overlay p{color:#d8e5db;font-size:13px;line-height:1.9}.primary{color:#173831;background:#dfff91;border:0;border-radius:12px;margin-top:16px;padding:14px 35px;font-weight:800;box-shadow:0 5px #96b75c}.overlay .tiny{color:#bdd3c2;margin-top:22px;font-size:10px}.side{flex-direction:column;gap:14px;display:flex}.panel{background:#fffef6;border:1px solid #dce1d3;border-radius:18px;padding:19px}.panel h3{justify-content:space-between;margin:0 0 14px;font-size:12px;display:flex}.panel h3 span{color:#8e9b8d;letter-spacing:1px;font-size:9px;font-weight:500}.segments{background:#edf0e5;border-radius:10px;gap:4px;padding:4px;display:flex}.segments button{color:#7a8879;background:0 0;border:0;border-radius:7px;flex:1;padding:8px 2px;font-size:11px;font-weight:700}.segments button.active{color:#234f3e;background:#fffef8;box-shadow:0 2px 5px #17383112}.player{margin-top:16px}.player-title{justify-content:space-between;font-size:11px;font-weight:800;display:flex}.player-title small{color:#7e897b;font-size:10px;font-weight:500}.dot{background:#ff714f;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.meter{background:#edf0e5;border-radius:5px;height:6px;margin-top:8px;overflow:hidden}.meter i{background:#ff714f;border-radius:5px;width:0;height:100%;display:block}.keys{color:#798575;margin-top:9px;font-size:10px;line-height:1.8}kbd{text-align:center;color:#3c5344;background:#f0f2e8;border:1px solid #dce2d2;border-bottom-width:2px;border-radius:4px;min-width:20px;padding:0 4px;font-family:inherit;font-size:10px;display:inline-block}.muted{opacity:.4}.stat-grid{text-align:center;grid-template-columns:repeat(3,1fr);display:grid}.stat-grid b{letter-spacing:-1px;font-size:26px;font-weight:800;display:block}.stat-grid span{color:#85927f;font-size:9px}.tools{gap:7px;display:flex}.tool{color:#385541;background:#f9faef;border:1px solid #d6decc;border-radius:8px;flex:1;padding:9px 5px;font-size:10px;font-weight:600}.tool:hover{background:#edf4d7}.wide{width:100%;margin-top:9px}.adjust summary{cursor:pointer;justify-content:space-between;font-size:12px;font-weight:700;list-style:none;display:flex}.adjust summary:after{content:"＋";color:#70806d}.adjust[open] summary:after{content:"−"}.adjust label{color:#647a65;margin-top:14px;font-size:10px;display:block}.adjust label span{float:right;color:#243f30;font-weight:700}input[type=range]{accent-color:#426c4a;width:100%;height:4px;margin-top:12px}select{background:#fffef6;border:1px solid #d6decc;border-radius:6px;width:100%;margin-top:5px;padding:5px;font-size:11px}.check{align-items:center;gap:8px;display:flex!important}.notice{color:#7b8b76;font-size:10px;line-height:1.8}.steps{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:19px;display:grid}.step{align-items:start;gap:11px;display:flex}.num{color:#536d45;background:#e6ebdb;border-radius:50%;flex-shrink:0;place-items:center;width:25px;height:25px;font-size:12px;display:grid}.step b{font-size:11px}.step p{color:#7a8873;margin:5px 0;font-size:10px;line-height:1.8}.toast{color:#dfff91;pointer-events:none;opacity:0;z-index:2;white-space:nowrap;text-shadow:0 2px 8px #10262d;font-size:21px;font-weight:900;transition:opacity .1s;position:absolute;top:75px;left:50%;transform:translate(-50%)}.toast.show{opacity:1}.countdown{color:#f1f4d8;pointer-events:none;opacity:0;z-index:4;text-shadow:0 6px 20px #10262dcc;letter-spacing:-2px;font-size:96px;font-weight:900;position:absolute;top:50%;left:50%;translate:-50% -50%}.countdown.show{animation:.6s cubic-bezier(.2,1.4,.4,1) both countdown-pop}.self-marker{z-index:5;color:#fff;pointer-events:none;white-space:nowrap;background:#32160ded;border:2px solid #fff3c9;border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:11px;font-weight:800;animation:.8s ease-in-out infinite alternate self-marker-pulse;display:flex;position:absolute;translate:-50% -100%;box-shadow:0 3px 14px #32160d99}.self-marker[hidden]{display:none}.self-marker b{color:#32160d;background:#ff8a00;border-radius:999px;padding:2px 6px;font-size:10px}.self-marker:after{content:"";border:6px solid #0000;border-top-color:#fff3c9;border-bottom:0;position:absolute;bottom:-8px;left:50%;translate:-50%}@keyframes self-marker-pulse{to{transform:translateY(-4px);box-shadow:0 4px 22px #ff8a00cc}}body.online-match #pause{display:none}.checkpoint{z-index:4;pointer-events:none;text-align:center;position:absolute;inset:0}.checkpoint.cue,.checkpoint.resolve{flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.checkpoint-kicker{color:#fff8e8;letter-spacing:.08em;background:#351607d9;border-radius:999px;padding:4px 11px;font-size:11px;font-weight:900;box-shadow:0 3px 12px #20090088}.checkpoint.cue strong{color:#ffe25a;text-shadow:0 5px 18px #351607;font-variant-numeric:tabular-nums;font-size:86px;line-height:.9;animation:.62s cubic-bezier(.2,1.35,.35,1) both checkpoint-count}.checkpoint.resolve{justify-content:flex-start;gap:7px;padding-top:24%}.checkpoint.resolve .checkpoint-kicker{color:#ffe25a;background:#4a200ad9}.checkpoint-values{white-space:nowrap;justify-content:center;align-items:flex-end;gap:clamp(8px,3vw,24px);width:min(94%,620px);display:flex}.checkpoint-values b{min-width:0;color:var(--side);font-variant-numeric:tabular-nums;text-shadow:0 3px 10px #200900;flex-direction:column;flex:1 1 0;padding:3px 0;font-size:clamp(20px,5vw,30px);line-height:1;display:flex}.checkpoint-values small{color:#fff8e8;letter-spacing:.04em;text-overflow:ellipsis;margin-bottom:4px;font-size:clamp(7px,1.8vw,9px);font-weight:800;overflow:hidden}@keyframes checkpoint-count{0%{opacity:0;transform:scale(1.5)}18%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.86)}}.linkstate{z-index:5;pointer-events:none;text-align:center;color:#f1f4d8;letter-spacing:.02em;background:#10262de6;border-radius:999px;max-width:min(88%,32em);padding:10px 18px;font-size:14px;font-weight:700;animation:.25s both linkstate-in;position:absolute;top:50%;left:50%;translate:-50% 64px;box-shadow:0 8px 24px #0b1a1f66}@keyframes linkstate-in{0%{opacity:0;translate:-50% 74px}to{opacity:1;translate:-50% 64px}}@media (width<=640px){.linkstate{padding:8px 14px;font-size:12px;translate:-50% 48px}@keyframes linkstate-in{0%{opacity:0;translate:-50% 58px}to{opacity:1;translate:-50% 48px}}}@keyframes countdown-pop{0%{opacity:0;transform:scale(1.7)}18%{opacity:1;transform:scale(1)}78%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.85)}}footer{letter-spacing:1px;color:#8b9784;justify-content:space-between;margin-top:20px;font-size:9px;display:flex}#error{color:#ffbaaa;overflow-wrap:anywhere;max-width:80%}@media (width<=1000px){main{padding:20px}.layout{grid-template-columns:minmax(0,1fr) 245px;gap:14px}.intro p{display:none}.panel{padding:15px}.court{height:540px}}@media (width<=740px){header{height:70px;padding:0 20px}h1{font-size:20px}.badge{font-size:8px}.layout{grid-template-columns:1fr}.court{height:480px}.side{grid-template-columns:1fr 1fr;display:grid}.steps{gap:10px}.step p{font-size:9px}.intro h2{font-size:20px}.adjust{grid-column:1/-1}.court-foot{padding:0 12px;font-size:8px}}@media (width>=741px){.layout{align-items:start}.layout>section{position:sticky;top:16px}.side{scrollbar-width:thin;max-height:calc(66vh + 120px);padding-right:4px;overflow-y:auto}}.choice{margin-top:14px;font-size:11px;font-weight:600;display:block}.choice select{font-size:10px}.keys[hidden]{display:none}.score{letter-spacing:0;align-items:flex-start;gap:10px;font-size:15px;display:flex}.score b{min-width:54px}.court-top .pscore b{color:var(--side)}.court-top .pscore:nth-child(-n+2) b{text-align:right}.score em{color:#f1f4d8;text-align:center;min-width:40px;padding-top:2px;font-style:normal;font-weight:800}.paintbar{z-index:2;pointer-events:none;background:#ffffff1f;border-radius:4px;width:min(300px,52%);height:5px;display:flex;position:absolute;top:72px;left:50%;overflow:hidden;transform:translate(-50%)}.paintbar i{background:var(--side);width:0;height:100%;transition:width .2s;display:block}.paintbar i:last-child{margin-left:auto}.pscore{flex-direction:column;align-items:center;gap:2px;min-width:74px;display:flex;position:relative}.leader-badge{color:#5a2500;letter-spacing:.08em;background:#fff1a8;border-radius:6px;padding:2px 5px;font-size:8px;font-style:normal;font-weight:950;line-height:1;animation:.8s ease-in-out infinite leader-bounce;display:none;position:absolute;top:-12px;left:50%;translate:-50%;box-shadow:0 2px 7px #35160799}.pscore.leader .leader-badge{display:block}.pscore.leader>b{text-shadow:0 0 9px}@keyframes leader-bounce{50%{filter:brightness(1.15);translate:-50% -3px}}.score-history{color:#fff8e8aa;white-space:nowrap;letter-spacing:.15px;font-size:7px;font-weight:700;line-height:1}.boost-label{color:#fff8e8cc;letter-spacing:.55px;white-space:nowrap;margin-top:1px;font-size:7px;font-weight:800;line-height:1}.boost-only>b,.boost-only .score-history{display:none}.court-boost{background:#ffffff2c;border:1px solid #fff8e84a;border-radius:5px;width:54px;height:7px;display:block;overflow:visible}.court-boost[hidden]{display:none}.court-boost b{border-radius:3px;width:0;min-width:0;height:100%;font-weight:400;transition:width .1s linear;display:block}.court-boost.charged b{animation:.45s ease-in-out infinite boost-charged;box-shadow:0 0 8px 2px #ffd15a}.court-boost.boosting{border-color:var(--side);animation:.65s ease-in-out infinite boost-frame-glow}@keyframes boost-frame-glow{0%,to{box-shadow:0 0 3px 1px var(--side),inset 0 0 3px #fff8e899;filter:brightness(1.05)}50%{box-shadow:0 0 10px 3px var(--side),0 0 18px 5px var(--side),inset 0 0 5px #fff8e8;filter:brightness(1.55)}}.segments{flex-wrap:wrap}.segments button{flex:28%}.player .dot,.player .meter i{background:var(--side)}.boostrow{gap:3px;width:58px;display:flex}.boostrow .court-boost{flex:1;width:auto}.score.checkpoint .score-history{animation:1s both checkpoint-pop}@keyframes checkpoint-pop{0%{color:#fff;text-shadow:0 0 12px #ffe63d;transform:scale(1.35)}45%{color:#ffe63d}to{color:#fff8e8aa;transform:scale(1)}}button{touch-action:manipulation}.court{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#touch{z-index:2;pointer-events:none;position:absolute;inset:0}#touch[hidden],.perf[hidden]{display:none}.stick-zone,.smash-zone,.touch-pause{pointer-events:auto}.stick-zone{width:55%;position:absolute;top:70px;bottom:0;left:0}.smash-zone{width:45%;position:absolute;top:70px;bottom:0;right:0}.stick{left:calc(env(safe-area-inset-left) + 96px);top:calc(100% - 104px - env(safe-area-inset-bottom));opacity:.5;background:#ffffff12;border:2px solid #ffffff45;border-radius:50%;width:120px;height:120px;transition:opacity .15s;position:absolute;translate:-50% -50%}.stick.on{opacity:1}.stick i{background:#f1f4d8d0;border-radius:50%;width:52px;height:52px;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 3px 10px #0005}.smash-zone i{right:calc(env(safe-area-inset-right) + 26px);bottom:calc(env(safe-area-inset-bottom) + 34px);color:#fff;letter-spacing:1px;text-align:center;background:#ff714fd0;border:3px solid #ffd9cc;border-radius:50%;place-content:center;width:112px;height:112px;font-size:15px;font-style:normal;font-weight:900;line-height:1.3;display:grid;position:absolute;box-shadow:0 6px #b9492e}.smash-zone.on i{background:#ff8a6a;transform:translateY(4px)scale(.96);box-shadow:0 2px #b9492e}.touch-pause{color:#f1f4d8;background:#10262dcc;border:1px solid #ffffff45;border-radius:50%;width:40px;height:40px;font-weight:900;position:absolute;top:44px;right:12px}.perf{z-index:4;color:#dfff91;pointer-events:none;background:#10262dcc;border-radius:6px;padding:4px 8px;font:600 10px/1.4 ui-monospace,monospace;position:absolute;top:42px;left:12px}.perf.net{white-space:pre;color:#9fe2ff;max-width:min(92%,440px);top:66px}body.playing{overflow:hidden}body.playing .court-card{z-index:50;border-radius:0;position:fixed;inset:0}body.playing .court{height:100dvh}body.playing .court-foot{display:none}body.playing .court-top{top:calc(env(safe-area-inset-top) + 12px)}body.touch-ui main{padding:12px 12px 16px}body.touch-ui .intro,body.touch-ui .court-foot{display:none}body.touch-ui .layout{grid-template-columns:1fr;gap:14px}body.touch-ui .layout>section{position:static}body.touch-ui .side{grid-template-columns:1fr;max-height:none;padding-right:0;display:grid;overflow:visible}body.touch-ui .steps{grid-template-columns:1fr;gap:12px}body.touch-ui .overlay{padding:0 16px}body.touch-ui:not(.playing) .court{height:min(100dvh - 150px,100vw - 24px)}@media (orientation:landscape) and (height<=600px){body.touch-ui header{display:none}body.touch-ui main{padding:8px 8px 14px}body.touch-ui:not(.playing) .court{height:calc(100dvh - 16px)}body.touch-ui .side{grid-template-columns:1fr 1fr}body.touch-ui .overlay h2{margin:6px 0;font-size:23px}body.touch-ui .overlay p{font-size:12px;line-height:1.7}body.touch-ui .overlay .tiny{margin-top:12px}body.touch-ui .primary{margin-top:10px;padding:12px 28px}}.stage-heading{text-align:left;color:#8b4b29;letter-spacing:1px;margin:5px 0 0;font-size:12px}.stage-grid{grid-template-columns:1fr 1fr;gap:8px;width:100%;display:grid}.stage-card{text-align:left;color:#4a210e;background:#fff7e9;border:1px solid #efd2ae;border-radius:11px;grid-template-columns:54px 1fr;align-items:center;gap:10px;min-width:0;padding:9px;display:grid}.stage-card:not(:disabled):hover,.stage-card.on{background:#fff0c5;border-color:#ff9a18;box-shadow:0 0 0 2px #ff9a1830}.stage-card:disabled:not(.on){opacity:.48}.stage-card span{flex-direction:column;min-width:0;display:flex}.stage-card b{font-size:12px}.stage-card small{color:#80624d;margin-top:2px;font-size:9px;line-height:1.35}.stage-card em{color:#b85a28;letter-spacing:.8px;margin-top:3px;font-size:8px;font-style:normal;font-weight:900}.stage-map{clip-path:polygon(2% 2%,98% 2%,98% 98%,2% 98%);background:#e9bc74;border:3px solid #9b542f;width:48px;height:38px;display:block;box-shadow:inset 0 0 0 2px #fff8}.stage-clockCross{clip-path:polygon(25% 0,75% 0,75% 25%,100% 25%,100% 75%,75% 75%,75% 100%,25% 100%,25% 75%,0 75%,0 25%,25% 25%)}.stage-turtleRing{background:linear-gradient(#0000 43%,#e9bc74 43% 57%,#0000 57%),linear-gradient(90deg,#0000 43%,#e9bc74 43% 57%,#0000 57%),#78cbd0;border-radius:50%;box-shadow:inset 0 0 0 9px #e9bc74}.stage-mooPasture{background:radial-gradient(circle at 22% 18%,#c79a4a 0 3px,#0000 3px),radial-gradient(circle at 78% 22%,#c79a4a 0 3px,#0000 3px),radial-gradient(circle at 18% 78%,#c79a4a 0 3px,#0000 3px),radial-gradient(circle at 82% 82%,#c79a4a 0 3px,#0000 3px),radial-gradient(circle at 34% 34%,#d9b25f 0 2px,#0000 2px),radial-gradient(circle at 66% 34%,#d9b25f 0 2px,#0000 2px),radial-gradient(circle at 34% 66%,#d9b25f 0 2px,#0000 2px),radial-gradient(circle at 66% 66%,#d9b25f 0 2px,#0000 2px),#ecc98a;width:50px;height:42px}@media (width<=520px){.stage-grid{grid-template-columns:1fr}.stage-card{padding:7px}.stage-map{width:43px;height:34px}}body.playing .court-top{padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left)}body.playing .touch-pause{right:calc(env(safe-area-inset-right) + 12px)}.meter.steps{background-image:repeating-linear-gradient(90deg,#0000 0 calc(20% - 1px),#fffef6 calc(20% - 1px) 20%)}.meter i{transition:width 60ms linear}.meter.boost{background:#e8ecdf;height:4px;margin-top:4px;overflow:visible}.meter.boost i{background:linear-gradient(90deg,#ffd15a,#dfff91);transition:width .1s linear}.player.full .meter.steps i{background:#fffbe0;box-shadow:0 0 7px #ffd15a}.player.boosting{outline:2px solid var(--side);outline-offset:5px;border-radius:6px;animation:.65s ease-in-out infinite boost-card-glow}.player.boosting .player-title small{color:#b5801a;font-weight:800}.player.boosting .meter.boost{border:1px solid var(--side);box-shadow:0 0 7px 2px var(--side)}@keyframes boost-card-glow{50%{box-shadow:0 0 12px 3px var(--side)}}.meter.boost.charged i{animation:.45s ease-in-out infinite boost-charged;box-shadow:0 0 9px 2px #ffd15a}@keyframes boost-charged{0%,to{filter:brightness()saturate()}50%{filter:brightness(1.7)saturate(1.4)}}.player.boost-flash{animation:.5s ease-out boost-flash}@keyframes boost-flash{0%{outline-color:#fffbe0;box-shadow:0 0 0 8px #ffd15a66}70%{outline-color:#ffd15a}to{box-shadow:0 0 #ffd15a00}}.boostnote{color:#9aa596;margin-top:3px;font-size:9px;line-height:1.4;display:block}.player.boosting .boostnote{color:#b5801a;font-weight:700}#timer.rush{color:#ff8a6a;animation:.8s ease-in-out infinite rush-beat}@keyframes rush-beat{50%{opacity:.4}}.overlay.result{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(#0e232dee 0%,#0e232dc7 48%,#0e232d00 76%);justify-content:flex-start;padding:14px 16px 0}.overlay.result .overlay-body{flex-direction:column;align-items:center;width:min(820px,100%);display:flex}.overlay.result .eyebrow,.overlay.result .tiny{display:none}.overlay.result h2{margin:1px 0;font-size:21px}.overlay.result p{margin:2px 0 0}.overlay.result .primary{margin-top:0;padding:10px 26px}.result-table-wrap{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#351607dc;border:1px solid #fff1cf44;border-radius:11px;width:100%;display:block;overflow:hidden;box-shadow:0 4px 12px #20090055}.result-table{width:100%;display:grid}.result-table-row{border-top:1px solid #fff1cf22;grid-template-columns:minmax(28px,.36fr) minmax(82px,1.3fr) repeat(3,minmax(0,1fr)) minmax(58px,.85fr);align-items:stretch;min-height:48px;display:grid}.result-table-row:first-child{border-top:0}.result-table-row>*{border-left:1px solid #fff1cf22;justify-content:center;align-items:center;min-width:0;padding:2px clamp(2px,.8vw,5px);display:flex}.result-table-row>:first-child{border-left:0}.result-table-header{color:#fff8e8;letter-spacing:.02em;background:#ffffff09;min-height:31px;font-size:clamp(7px,1.7vw,10px)}.result-table-header b{white-space:nowrap}.result-table-row em{font-size:clamp(11px,2.6vw,15px);font-style:normal;font-weight:950}.result-table-row.winner em{color:#ffe25a}.result-player{text-align:left;justify-content:flex-start;gap:clamp(4px,1vw,7px);font-size:clamp(9px,2.1vw,13px);overflow:hidden}.result-player i{background:var(--side);border-radius:50%;flex:none;width:clamp(7px,1.6vw,9px);height:clamp(7px,1.6vw,9px)}.result-player span{overflow-wrap:anywhere;min-width:0}.result-player small{color:#f4dcc7;margin-top:1px;font-size:clamp(6px,1.4vw,8px);font-weight:600;display:block}.result-cell{font-variant-numeric:tabular-nums;flex-direction:column;gap:0}.result-cell strong{font-size:clamp(9px,2.4vw,13px);line-height:1.05}.result-cell small{color:#ffe897;font-size:clamp(9px,2.2vw,12px);font-weight:800;line-height:1.05}.result-cell.column-best{color:#ff9a88;background:#ff806c0d;position:relative}.result-cell.column-best:after{content:"";background:#ff9a8899;height:1px;position:absolute;bottom:2px;left:24%;right:24%}.result-cell.column-best strong{font-size:clamp(10px,2.6vw,14px)}.result-total{color:#ffe25a;font-variant-numeric:tabular-nums;font-size:clamp(13px,3.4vw,19px)}.winner .result-total{text-shadow:0 0 7px #ffe25a55}.result-detail{box-sizing:border-box;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#351607ee;border:1px solid #fff1cf44;border-radius:11px;width:100%;margin-top:9px;padding:10px;display:block;box-shadow:0 4px 12px #20090055}.result-detail-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.result-detail-head b{font-size:12px}.result-detail-head small{color:#f4dcc7;font-size:9px}.result-detail-table-wrap{border:1px solid #fff1cf22;border-radius:8px;width:100%;display:block;overflow-x:auto}.result-detail-table{width:100%;min-width:max-content;display:grid}.result-detail-row{grid-template-columns:minmax(84px,1.25fr) repeat(var(--result-player-count),minmax(82px,1fr));border-top:1px solid #fff1cf22;display:grid}.result-detail-row:first-child{border-top:0}.result-detail-row>*{font-variant-numeric:tabular-nums;border-left:1px solid #fff1cf22;justify-content:center;align-items:center;min-height:30px;padding:4px 6px;font-size:10px;display:flex}.result-detail-row>:first-child{color:#f4dcc7;border-left:0;justify-content:flex-start}.result-detail-row strong{color:#ffe897;font-size:12px}.result-detail-header{background:#ffffff0d}.result-detail-header>*{font-size:9px;color:#fff8e8!important}.result-detail-player{white-space:nowrap;gap:5px}.result-detail-player i{background:var(--side);border-radius:50%;width:7px;height:7px}.overlay.result.details-open .overlay-body{scrollbar-width:thin;padding-bottom:72px;overflow-y:auto}@media (height<=760px){.overlay.result h2{margin:0;font-size:18px}.result-table-row{min-height:41px}.result-table-header{min-height:26px}.overlay.result .primary{padding:8px 22px}}:is(body.touch-ui .court:has(.overlay:not(.hidden)) .stick-zone,body.touch-ui .court:has(.overlay:not(.hidden)) .smash-zone){display:none}.overlay.result .overlay-buttons{left:50%;bottom:calc(env(safe-area-inset-bottom) + 14px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#351607eb;border:1px solid #fff1cf55;border-radius:15px;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:min(520px,100% - 28px);padding:9px;display:grid;position:absolute;translate:-50%;box-shadow:0 7px 22px #20090088}.overlay.result .overlay-buttons .primary,.overlay.result .overlay-buttons .ghost{white-space:nowrap;min-width:0;margin:0;padding:11px 10px}@media (width<=390px){.overlay.result{padding-inline:6px}.result-table-row{min-height:37px}.result-table-row>*{padding-inline:2px}.checkpoint-values{gap:6px}}@media (orientation:portrait) and (aspect-ratio<=3/4){.overlay.result{padding:clamp(12px,2.2vh,24px) clamp(8px,2.5vw,24px) 0}.overlay.result .overlay-body{width:100%;height:100%}.overlay.result h2{margin:0 0 clamp(4px,1vh,10px);font-size:clamp(20px,4.5vw,30px)}.overlay.result p{width:100%;margin:0}.overlay.result .overlay-buttons{width:min(820px,100% - clamp(16px,5vw,40px));bottom:calc(env(safe-area-inset-bottom) + clamp(10px,2vh,22px));gap:clamp(8px,2vw,14px);padding:clamp(8px,1.4vh,13px)}.overlay.result .overlay-buttons .primary,.overlay.result .overlay-buttons .ghost{padding:clamp(11px,1.8vh,17px) 12px;font-size:clamp(13px,3vw,17px)}}body:not(.dev) #side{display:none}body:not(.dev) .layout{grid-template-columns:minmax(0,1fr)}.overlay-body[hidden],.menu[hidden]{display:none}.overlay-buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.ghost{color:#f1f4d8;background:#ffffff1f;border:1px solid #fff5;border-radius:12px;margin-top:16px;padding:11px 20px;font-weight:700}.ghost:hover{background:#fff3}.ghost[hidden]{display:none}.menu{scrollbar-width:thin;flex-direction:column;align-items:center;width:min(560px,100%);max-height:100%;padding:10px 4px;display:flex;overflow-y:auto}.menu-copy{color:#d8e5db;margin:0;font-size:12px;line-height:1.8}.menu-body{flex-direction:column;gap:10px;width:100%;margin-top:16px;display:flex}.menu-card{text-align:left;color:#f4f7ea;background:#ffffff14;border:1px solid #ffffff3d;border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;padding:15px 18px;display:flex}.menu-card:hover{background:#ffffff26;border-color:#dfff91}.menu-card span{color:#bdd3c2;font-size:11px}.menu-row{grid-template-columns:minmax(76px,max-content) minmax(0,1fr);align-items:center;gap:12px;width:100%;display:grid}.menu-label{letter-spacing:1px;color:#cfdfcf;white-space:nowrap;font-size:11px;font-weight:700}.menu-opts{flex-wrap:wrap;gap:8px;display:flex}.menu-opts button{color:#e7eedd;text-align:center;background:#ffffff14;border:1px solid #ffffff3d;border-radius:9px;flex:auto;min-width:58px;padding:10px 8px;font-size:11px;font-weight:700}.menu-opts button.on{color:#173831;background:#dfff91;border-color:#dfff91}.menu-opts button:disabled{opacity:.3;cursor:not-allowed}.menu-note{color:#d8e5db;text-align:left;background:#ffffff12;border-radius:12px;margin:0;padding:14px 16px;font-size:12px;line-height:2}.menu-teams{justify-content:center;align-items:center;gap:12px;margin-top:2px;display:flex}.menu-teams em{color:#bdd3c2;font-size:11px;font-style:normal;font-weight:900}.menu-team{border:1px solid var(--side);background:#fff;border-radius:12px;flex-direction:column;flex:1;gap:4px;padding:10px;display:flex;box-shadow:0 2px 8px #17383108}.menu-team b{color:var(--side);font-size:12px}.menu-team span{color:#3c5344;font-size:11px}.room-actions{flex-direction:column;gap:10px;display:flex}.room-field{color:#cfdfcf;justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:700;display:flex}.room-field input,.room-join input{color:#fff;background:#ffffff12;border:1px solid #fff4;border-radius:10px;min-width:0;padding:11px 13px;font:700 16px/1 Noto Sans JP,sans-serif}.room-field input{width:70%}.room-join{gap:9px;display:flex}.room-join input{text-align:center;letter-spacing:7px;flex:1;font-size:24px}.room-join .primary{margin:0;padding:10px 18px}.room-code{background:#ffffff12;border:1px solid #ffffff35;border-radius:16px;flex-direction:column;align-items:center;padding:13px;display:flex}.room-code span,.room-code small{color:#bdd3c2;font-size:10px}.room-code strong{letter-spacing:8px;color:#dfff91;font-size:34px;line-height:1.35}.room-seats{grid-template-columns:1fr 1fr;gap:8px;display:grid}.room-seat{text-align:left;background:#ffffff14;border-radius:11px;grid-template-columns:27px 1fr auto;align-items:center;gap:8px;padding:10px;display:grid}.room-seat i{color:#173831;background:#dfff91;border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;font-style:normal;font-weight:900;display:grid}.room-seat b{font-size:12px}.room-seat span{color:#9fe2ff;letter-spacing:1px;font-size:8px}.room-seat.cpu{opacity:.65}.room-seat.cpu i{color:#fff;background:#ffffff30}.room-seat.cpu span{color:#cfdfcf}.room-error{color:#ffbaaa;margin:0;font-size:11px;font-weight:700}.menu-foot{background:linear-gradient(#12303b00,#12303bf5 55%);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:auto;padding:16px 0 2px;display:flex;position:sticky;bottom:0}body.touch-ui .menu .eyebrow{display:none}body.touch-ui .menu h2{margin:2px 0;font-size:21px}body.touch-ui .menu-copy{font-size:11px;line-height:1.7}body.touch-ui .menu-body{gap:8px;margin-top:10px}@media (height<=620px){.menu h2{margin:2px 0;font-size:21px}.menu-body{gap:7px;margin-top:10px}.menu-card{padding:11px 14px}.menu-foot .primary,.menu-foot .ghost{margin-top:8px;padding:9px 20px}}.menu-screen{justify-content:center;align-items:center;gap:clamp(18px,4vh,40px);height:100dvh;padding:clamp(16px,4vh,44px) 4vw;display:none}body.menu-open{overflow:hidden}body.menu-open .menu-screen{display:flex}body.menu-open .game-shell{display:none}body.menu-open main{padding:0 4vw}body.menu-open footer{display:none}.menu-brand{text-align:center;flex:none;min-width:0}.title-logo{width:auto;max-width:min(520px,86vw);height:auto;max-height:36dvh;margin:0 auto;display:block}.menu-screen>.menu{color:#173831;background:#fffef6;border:1px solid #dce1d3;border-radius:24px;width:min(760px,92vw);min-height:0;max-height:calc(100dvh - 170px);padding:clamp(20px,3vw,34px);display:flex;overflow:auto;box-shadow:0 18px 55px #17383116}.menu-screen .menu-card:hover{background:#ebf3d8;border-color:#9cb46b}.menu-screen .menu-card span{color:#708174}.menu-screen .menu-foot{background:linear-gradient(#fffef600,#fffef6 45%)}.menu-screen .room-field{color:#536d61}.menu-screen .room-field input,.menu-screen .room-join input{color:#173831;background:#fff;border-color:#ccd6c8}.menu-screen .room-code,.menu-screen .room-seat,.menu-screen .menu-note{color:#385541;background:#f1f4ea;border-color:#d7ded1}.howto-list{gap:9px;display:grid}.howto-list article{text-align:left;background:#f4f6ec;border:1px solid #d8dfd1;border-radius:13px;padding:13px 15px}.howto-list b{font-size:13px}@media (orientation:portrait){.menu-screen{flex-direction:column;gap:14px;padding:18px 0}.menu-screen>.menu{width:min(560px,100%);max-height:calc(100dvh - 170px);padding:20px}.menu-screen .menu-body{margin-top:11px}.menu-screen .menu-card{padding:12px 15px}}@media (orientation:landscape){.menu-screen{flex-direction:column}.menu-title .menu-screen>.menu{width:min(900px,94vw)}.menu-title .menu-body{flex-direction:row}.menu-title .menu-card{flex:1;min-width:0}.menu-title .menu-card b{font-size:clamp(14px,2vw,18px)}}.menu-title #menu-title{display:none}@media (orientation:landscape) and (height<=600px){.menu-screen{gap:8px;padding:8px 2vw}.title-logo{max-height:42dvh}.menu-screen>.menu{max-height:calc(100dvh - 64px);padding:12px 18px}.menu-screen .menu-body{gap:7px;margin-top:8px}.menu-screen .menu-card{padding:10px 13px}.menu-screen .menu-foot{padding-top:8px}}:root{color:#371609;background:#fff7e8}.character-picker{background:#fff8ed;border:1px solid #efd2ae;border-radius:14px;padding:12px}.character-picker h3{margin:0 0 8px;font-size:14px}.character-seats,.character-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.character-seats{grid-template-columns:repeat(2,minmax(0,1fr))}.character-seats button,.character-cards button{color:#56331b;min-height:44px;font:inherit;overflow-wrap:anywhere;touch-action:manipulation;background:#fffdf8;border:1px solid #d6b791;border-radius:9px;padding:8px;font-size:12px}.character-seats small{margin-top:3px;font-size:10px;display:block}.character-picker button[aria-pressed=true]{background:#ffdf85;border-color:#ce6100;font-weight:800;box-shadow:inset 0 0 0 1px #ce6100}.character-picker button:disabled{cursor:default;opacity:.65}#character-preview-mount{position:relative}.character-intro{z-index:1;box-sizing:border-box;color:#56331b;pointer-events:none;background:#fffdf8e6;border:1px solid #efd2ae;border-radius:10px;flex-direction:column;justify-content:center;gap:6px;width:min(38%,190px);padding:8px 10px;font-size:11px;line-height:1.5;display:flex;position:absolute;top:16px;bottom:16px;right:8px}.character-intro b{color:#fff;background:#ce6100;border-radius:99px;align-self:flex-start;padding:1px 9px;font-size:12px}.character-intro dl{margin:0}.character-intro dt{color:#ce6100;font-size:10px;font-weight:800}.character-intro dd{margin:0 0 4px}.character-intro dd:last-child{margin:0}.character-preview{background:radial-gradient(#fff,#ffe9c0);border-radius:12px;width:100%;height:200px;margin:8px 0;position:relative;overflow:hidden}.character-preview canvas{width:100%;height:100%;display:block}.character-preview [role=status]{text-align:center;color:#664126;font-size:11px;position:absolute;bottom:8px;left:10px;right:10px}.character-description{color:#664126;margin:8px 0;font-size:12px;line-height:1.7}.character-stats{font-size:11px;line-height:1.7;overflow-x:auto}.character-stats table{border-collapse:collapse;text-align:left;width:100%}.character-stats th,.character-stats td{border-bottom:1px solid #ead2b8;padding:4px}.character-stats p{margin:6px 0}@media (width<=380px){.character-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}body{background:radial-gradient(circle at 12% -10%,#ffe56b55 0 20%,#0000 42%),linear-gradient(145deg,#fffdf7,#fff3dc 70%,#ffedcf);min-height:100dvh}button:focus-visible,select:focus-visible,input:focus-visible{outline-color:#ff7a00}main{max-width:1700px;padding:18px 3vw}.game-shell{padding:0}.layout{gap:16px}.court-card{background:#32160d;border:1px solid #6f351d;border-radius:20px;box-shadow:0 16px 38px #4a210f24}.court{height:clamp(500px,100dvh - 36px,900px)}.court-top{color:#fff4d3;justify-content:center;top:16px;left:50%;right:auto;translate:-50%}.score em{color:#fff8e8;text-shadow:0 2px 10px #2b110dcc}.paintbar{background:#fff4dc38;top:74px}.overlay{color:#fff8e8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#35160799}.overlay h2{margin:8px 0;font-size:clamp(24px,3vw,32px)}.overlay p:empty{display:none}.primary{color:#3a1605;background:linear-gradient(#ffd92f,#ffb000);border:1px solid #ff9b00;border-radius:10px;margin-top:10px;padding:10px 22px;font-size:13px;box-shadow:0 3px #cf6900}.primary:hover{background:linear-gradient(#ffe568,#ffc12b)}.ghost{color:#fff8e8;background:#fff8eb18;border-color:#fff1cf66;border-radius:10px;margin-top:10px;padding:9px 16px;font-size:12px}.toast{color:#ffe63d;text-shadow:0 2px 8px #301006}.linkstate,.perf,.touch-pause{color:#fff5d9;background:#32160de8}.smash-zone i{background:#ff7900e8;border-color:#ffe59c;box-shadow:0 6px #a93f00}.smash-zone.on i{background:#ff9b00;box-shadow:0 2px #a93f00}.side-0{--side:#ff8a6a}.side-1{--side:#4fd3cd}.side-2{--side:#ffd15a}.side-3{--side:#a082ff}#boostbar-0 b{background:linear-gradient(90deg,#ff8a6a99,#ff8a6a)}#boostbar-1 b{background:linear-gradient(90deg,#4fd3cd99,#4fd3cd)}#boostbar-2 b{background:linear-gradient(90deg,#ffd15a99,#ffd15a)}#boostbar-3 b{background:linear-gradient(90deg,#a082ff99,#a082ff)}.overlay.result{background:linear-gradient(#351607f2 0%,#351607c9 48%,#35160700 76%)}.result-row{background:#351607e8}.result-score{color:#ffe25a}.result-row b small{color:#f4dcc7}@media (orientation:landscape){.overlay.result{padding:10px max(12px,env(safe-area-inset-right)) 10px calc(50% + 8px);background:linear-gradient(90deg,#35160755 0 48%,#351607ed 58% 100%);display:block}.overlay.result .overlay-body{justify-content:flex-start;width:100%;height:100%;padding-left:clamp(8px,2vw,28px)}.overlay.result h2{margin:0 0 4px;font-size:clamp(17px,3.4vh,25px)}.overlay.result p{width:100%;margin:0}.overlay.result .overlay-buttons{flex:none;width:100%;margin-top:auto;position:static;translate:0}.overlay.result .overlay-buttons .primary,.overlay.result .overlay-buttons .ghost{padding:9px 13px}.overlay.result #error:empty{display:none}}@media (aspect-ratio>=4/3){.overlay.result{padding:10px max(12px,env(safe-area-inset-right)) 10px calc(50% + 8px);background:linear-gradient(90deg,#35160755 0 48%,#351607ed 58% 100%);display:block}.overlay.result .overlay-body{justify-content:flex-start;width:100%;height:100%;padding-left:clamp(8px,2vw,28px)}.overlay.result h2{margin:0 0 4px;font-size:clamp(17px,3.4vh,25px)}.overlay.result p{width:100%;margin:0}.overlay.result .overlay-buttons{flex:none;width:100%;margin-top:auto;position:static;translate:0}.overlay.result .overlay-buttons .primary,.overlay.result .overlay-buttons .ghost{padding:9px 13px}}@media (aspect-ratio<=3/4){.overlay.result{background:linear-gradient(#351607f2 0%,#351607dd 9%,#35160700 30%)}}@media (orientation:portrait) and (aspect-ratio<=3/4){body.touch-ui .court:has(.overlay.result:not(.hidden)){height:calc(100dvh - 24px)}}.menu-screen{background:radial-gradient(circle at 20% 4%,#ffe65d55 0 13%,#0000 34%),radial-gradient(circle at 88% 90%,#ff8a0033 0 12%,#0000 34%),#fff8eb;gap:clamp(12px,2.5vh,26px)}.title-logo{filter:drop-shadow(0 12px 18px #6b2b1018);max-width:min(470px,82vw);max-height:38dvh}.menu-screen>.menu{color:#371609;background:#fffdf8;border:1px solid #f2d7b6;border-radius:20px;width:min(640px,92vw);max-height:calc(100dvh - 150px);padding:clamp(14px,2vw,22px);box-shadow:0 20px 60px #7b310f18}.menu h2{margin:2px 0;font-size:22px}.menu .eyebrow{color:#c35d14}.menu-copy{line-height:1.6}.menu-body{gap:8px;margin-top:8px}.menu-screen .menu-copy{color:#7f624f}.menu-card{text-align:center;border-radius:10px;flex-direction:row;justify-content:center;align-items:center;min-height:44px;padding:9px 14px}.menu-card b{letter-spacing:.2px;font-size:14px}.menu-screen .menu-card{color:#4a210e;background:#fff7e9;border-color:#efd2ae}.menu-screen .menu-card:hover{color:#3a1605;background:#fff0c5;border-color:#ff9a18}.menu-card span{display:none}.menu-row{grid-template-columns:minmax(72px,max-content) minmax(0,1fr);gap:10px}.menu-opts{gap:6px}.menu-opts button{border-radius:8px;min-width:52px;padding:8px 7px}.menu-screen .menu-label{color:#79553f}.menu-screen .menu-opts button{color:#664126;background:#fff8ee;border-color:#ead2b8}.menu-screen .menu-opts button.on{color:#fff;background:#ff8a00;border-color:#ff8a00}.menu-note{border-radius:10px;padding:10px 12px;font-size:11px;line-height:1.7}.menu-screen .menu-note,.menu-screen .room-code,.menu-screen .room-seat{color:#65462f;background:#fff7e9;border-color:#efd8bb}.menu-team{box-shadow:none;border-radius:10px}.menu-screen .room-code strong{color:#d65c00}.menu-screen .room-code span,.menu-screen .room-code small,.menu-screen .room-seat span{color:#8b674e}.room-seat i{color:#3a1605;background:#ffc928}.room-error{color:#c83e20}.menu-foot{background:linear-gradient(#fffdf800,#fffdf8 45%);padding-top:10px}.menu-screen .menu-foot{background:0 0;margin-top:6px;padding:0;position:static}.menu-screen .menu-foot .ghost,.menu-screen .menu-foot .primary{margin-top:6px;padding:7px 14px}.menu-screen .ghost{color:#74472c;background:#fff9ef;border-color:#e4c8a8}.menu-screen .ghost:hover{background:#fff0d8}.howto-devices{text-align:left;grid-template-columns:1fr 1fr;gap:10px;display:grid}.howto-devices h3{color:#d96300;letter-spacing:1px;margin:0 0 5px;font-size:12px}.howto-list{gap:5px}.howto-list article{background:#fff8ed;border-color:#efd8bc;border-radius:9px;padding:7px 10px}.howto-list b{color:#4a210e;font-size:11px}.howto-list p{color:#80624d;margin:3px 0 0;font-size:10px;line-height:1.6}.howto-rules{text-align:left;margin-top:10px}.howto-rules h3{color:#d96300;letter-spacing:1px;margin:0 0 5px;font-size:12px}.menu-title .menu-screen>.menu{padding:14px 18px}.menu-title .menu-body{gap:8px}.menu-title .menu-card{min-width:120px}.legal-links{letter-spacing:.04em;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:12px 0 0;font-size:10px;display:flex}.club-link{background:#fff5d6;border:1px solid #e7c891;border-radius:9px;justify-content:center;align-items:center;min-height:34px;padding:3px 7px;display:inline-flex;box-shadow:0 2px 5px #8a45141a}.club-link img{object-fit:contain;width:auto;max-width:min(190px,58vw);height:29px;display:block}.legal-text-links{gap:12px;display:flex}.legal-links a{color:#80624d;text-underline-offset:3px}.legal-links a:hover{color:#d96300}.club-link:hover{background:#fff0c5;border-color:#d96300}.legal-links[hidden]{display:none}@media (orientation:landscape){.menu-title .menu-screen{flex-direction:column}.menu-title .menu-screen>.menu{width:min(560px,90vw)}}@media (width<=600px){.howto-devices{grid-template-columns:1fr}.court{height:calc(100dvh - 24px)}.menu-screen>.menu{width:calc(100% - 20px)}}@media (orientation:landscape) and (height<=600px){.title-logo{max-width:min(390px,55vw);max-height:38dvh}.menu-screen>.menu{max-height:58dvh}.menu h2{font-size:19px}.menu-title .menu-body{flex-direction:row}.menu-title .menu-card{min-height:38px;padding:7px 12px}}.court-hud{z-index:2;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#2b110dab;border:1px solid #ffe9c229;border-radius:16px;flex-direction:column;align-items:center;gap:7px;padding:9px 16px 11px;display:flex;position:absolute;top:14px;left:50%;translate:-50%;box-shadow:0 8px 22px #17080345}.court-hud .court-top{padding:0;position:static;top:auto;left:auto;right:auto;translate:none}.court-hud .paintbar{background:#ffffff26;width:min(320px,100%);position:static;top:auto;left:auto;transform:none}body.playing .court-hud{top:calc(env(safe-area-inset-top) + 10px)}body.playing .court-hud .court-top{padding:0}body.hud-side .court-hud{top:14px;left:calc(env(safe-area-inset-left) + 14px);padding:10px 12px 12px;translate:none}body.playing.hud-side .court-hud{top:calc(env(safe-area-inset-top) + 12px)}body.hud-side .court-hud .score{flex-direction:column;align-items:stretch;gap:6px}body.hud-side .court-hud .court-top .pscore b{text-align:center}body.hud-side .court-hud .paintbar{width:100%;min-width:104px}.court-clock{display:none}body.hud-side .court-clock:not([hidden]){top:calc(env(safe-area-inset-top) + 8px);z-index:2;pointer-events:none;color:#fff8e8;letter-spacing:.02em;font-variant-numeric:tabular-nums;text-shadow:0 3px 14px #170803cc;background:#2b110d8c;border:1px solid #ffe9c229;border-radius:18px;padding:2px 20px 5px;font-size:clamp(40px,10vh,76px);font-weight:900;line-height:1;transition:opacity .18s;display:block;position:absolute;left:50%;translate:-50%}body.hud-side .court-clock.rush{color:#ff8a6a;animation:.8s ease-in-out infinite rush-beat}body.hud-side .court-hud .score em{display:none}.court-card:has(.overlay:not(.hidden)) .court-clock{opacity:0}@media (orientation:landscape) and (height<=600px){body.touch-ui.playing.hud-side .court-hud{left:auto;right:calc(env(safe-area-inset-right) + 18px);top:calc(env(safe-area-inset-top) + 12px);width:136px}body.touch-ui.playing .smash-zone i{width:92px;height:92px;right:calc(env(safe-area-inset-right) + 38px);bottom:calc(env(safe-area-inset-bottom) + 22px);font-size:13px}body.touch-ui.playing .touch-pause{right:calc(env(safe-area-inset-right) + 166px);top:calc(env(safe-area-inset-top) + 12px)}}body.hud-side .perf{top:auto;bottom:calc(env(safe-area-inset-bottom) + 12px)}body.hud-side .perf.net{bottom:calc(env(safe-area-inset-bottom) + 38px)}.court-hud{transition:opacity .18s}.court-card:has(.overlay:not(.hidden)) .court-hud{opacity:0}body.character-menu .title-logo{max-height:84px}body.character-menu .menu-screen{gap:12px;padding-top:12px;padding-bottom:12px}body.character-menu .menu-screen>.menu{max-height:calc(100dvh - 120px)}.character-stats summary{cursor:pointer;min-height:32px;padding:6px 0;font-weight:700}body.menu-compact .menu-brand{display:none}body.menu-compact .menu-screen{gap:0;padding:12px 4vw}body.menu-compact .menu-screen>.menu{width:min(820px,96vw);max-height:calc(100dvh - 24px);padding:clamp(12px,2vh,20px) clamp(14px,2vw,22px)}body.menu-compact .menu .eyebrow,body.menu-compact .menu-copy{display:none}body.menu-compact .menu h2{margin:0;font-size:clamp(17px,2.6vh,22px)}body.menu-compact .menu-body,body.menu-compact .menu-screen .menu-foot{margin-top:8px}body.menu-compact .character-picker{background:0 0;border:0;grid-template-columns:minmax(0,1fr);gap:8px;padding:0;display:grid}body.menu-compact .character-preview{height:clamp(150px,30dvh,300px);margin:0}body.menu-compact .character-seats{grid-template-columns:repeat(var(--seats,2),minmax(0,1fr));gap:5px}body.menu-compact .character-cards button{min-height:clamp(40px,6.4dvh,56px)}body.menu-compact .character-picker .menu-note{margin:0}body.menu-compact .stage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media (width<=420px){body.menu-compact .stage-grid{grid-template-columns:minmax(0,1fr);gap:8px}}body.menu-compact .stage-card{grid-template-columns:clamp(54px,9vw,84px) 1fr;padding:clamp(8px,1.6dvh,14px)}body.menu-compact .stage-map{width:100%;height:clamp(40px,7dvh,64px)}body.menu-compact .stage-card b{font-size:clamp(12px,1.8dvh,15px)}body.menu-compact .stage-card small{font-size:clamp(9px,1.5dvh,11px)}@media (aspect-ratio>=1) and (width>=600px){body.menu-compact .character-picker{grid-template:"preview seats""preview cards"1fr"note note"/minmax(0,1.15fr) minmax(0,1fr);column-gap:14px}body.menu-compact .character-seats{grid-area:seats;grid-template-columns:repeat(2,minmax(0,1fr))}body.menu-compact #character-preview-mount{grid-area:preview;min-height:0}body.menu-compact .character-preview{height:100%;min-height:200px;max-height:calc(100dvh - 190px)}body.menu-compact .character-pick{grid-area:cards}body.menu-compact .character-cards{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}body.menu-compact .character-picker .menu-note{grid-area:note}}@media (height<=520px){body.menu-compact .character-cards{grid-template-columns:repeat(3,minmax(0,1fr))}body.menu-compact .seat-tab,body.menu-compact .character-cards button{min-height:36px;padding:3px 6px}body.menu-compact .seat-tab{flex-flow:wrap;justify-content:center;column-gap:5px}}.menu-seat-rows{gap:8px;display:grid}body.menu-compact .room-code{flex-direction:row;justify-content:center;align-items:baseline;gap:12px;padding:6px 12px}body.menu-compact .room-code strong{letter-spacing:6px;font-size:26px;line-height:1.2}.seat-tab{border:1px solid #e4c8a8;border-bottom:4px solid var(--side);color:#56331b;background:#fff9ef;border-radius:12px 12px 5px 5px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:0;padding:5px 4px 4px;line-height:1.2;display:flex}.seat-tab i{background:var(--side);color:#3a1605;border-radius:99px;padding:0 9px;font-size:13px;font-style:normal;font-weight:900}.seat-tab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;font-weight:700;overflow:hidden}.seat-tab small{color:#8b674e;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-size:10px;overflow:hidden}.character-picker .seat-tab[aria-pressed=true]{background:color-mix(in srgb,var(--side) 24%,#fffdf8);border-color:var(--side);box-shadow:0 3px 0 -1px var(--side);border-bottom-width:4px;font-weight:400;transform:translateY(-1px)}.character-picker .seat-tab[aria-pressed=true] small{color:#3a1605;font-weight:800}.pick-label{color:#56331b;align-items:center;gap:6px;margin:0 0 5px;font-size:12px;font-weight:800;display:flex}.pick-label i{background:var(--side);border-radius:50%;width:10px;height:10px}.char-card{color:#3a1605;background:#fff;border:2px solid #ead2b8;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:6px 8px;display:flex;position:relative}.char-card b{letter-spacing:.02em;font-size:15px;font-weight:900}.char-card small{color:#8b674e;font-size:10px}.character-picker .char-card[aria-pressed=true]{background:#ffdf85;border-color:#ce6100;font-weight:400;box-shadow:0 2px #ce6100}.char-card[aria-pressed=true]:after{content:"✓";color:#ce6100;font-size:12px;font-weight:900;position:absolute;top:3px;right:6px}@media (height<=520px){body.menu-compact .menu-note:not(.room-error){display:none}}
