.human-controls{pointer-events:none;gap:4px;width:100%;display:grid}.human-controls :is(button,input,summary,[data-receive-surface]){pointer-events:auto}.human-prototype{text-align:center;color:#f7f5f1;font-size:11px}.human-instruction{text-align:center;font-size:11px;line-height:1.15}.human-player-row,.human-lanes{gap:6px;display:flex}.human-player-row button,.human-lanes button{flex:1;min-height:48px;padding:6px;font-size:13px}.human-controls button[aria-pressed=true]{background:#50302be8;border-color:#ff4b2b}.human-touch-row{align-items:stretch;gap:5px;display:flex}.human-main{flex:1;min-height:46px}.human-mine{min-width:64px;font-size:13px!important}.human-move-pad,.human-shape-pad{touch-action:none;background:#292a30e8;border:1px solid #ff4b2b;border-radius:12px;min-height:48px}.human-move-pad{text-align:center;flex:0 0 60px;place-content:center;display:grid}.human-move-pad>span{font-size:22px;line-height:1}.human-move-pad small{font-size:11px}.human-shape-pad{text-align:center;flex:2;place-content:center;padding:4px;font-size:11px;display:grid}.human-shape-pad small{color:#d6d7db;margin-top:5px;font-size:10px}.human-angle{pointer-events:auto;justify-content:center;align-items:center;gap:10px;font-size:12px;display:flex}.human-angle input{width:min(55%,220px);min-height:48px}.human-key-hint{text-align:center;color:#d6d7db;font-size:10px;line-height:1.3}.human-mirrored .human-touch-row{flex-direction:row-reverse}@media (height<=650px){.human-controls{gap:5px}.human-instruction{font-size:12px}.human-prototype,.human-key-hint{font-size:10px}.human-key-hint{display:none}.human-move-pad,.human-shape-pad{min-height:64px}}.human-settings{min-width:0}.human-settings summary{cursor:pointer;color:#d6d7db;min-height:44px;padding:12px 8px;font-size:13px;display:list-item}.human-settings-body{gap:6px;display:grid}@media (height<=650px){.human-settings summary{padding-block:10px}.human-controls{gap:4px}}.human-controls [data-receive-surface=pass]{touch-action:none}.human-move-pad[aria-disabled=true]{opacity:.5}.human-swipe-cue{color:#d6d7db;text-align:center;font-size:12px;line-height:1.35}.game.human-practice .controls:has(.human-controls){top:calc(62px + env(safe-area-inset-top));bottom:auto;left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));color:#f7f5f1;background:linear-gradient(115deg,#333438f0,#222327f0);border:2px solid #16171b;border-radius:6px;gap:0;width:auto;max-width:520px;padding:6px 8px;box-shadow:4px 4px #16171b}.game.human-practice .human-controls{gap:3px;width:100%}.game.human-practice .human-receive-label{display:none}.game.human-practice .human-instruction{color:#e4e5e9;min-height:0;text-shadow:none;margin:0;font-size:10px;line-height:1.15}.game.human-practice .human-touch-row{align-items:center}.game.human-practice .human-main,.game.human-practice .human-mine,.game.human-practice .human-dive{min-height:44px;padding-block:4px}.human-dive{flex:0 0 68px;min-width:58px;min-height:44px;padding:4px 8px;color:#16171b!important;background:#ff4b2b!important;border-color:#ff4b2b!important;font-size:12px!important;font-weight:900!important}.human-dive:disabled{color:#bcbdc1!important;background:#46474b!important;border-color:#696a6e!important}.human-receive-actions{align-items:center;gap:5px;display:flex}@media (orientation:landscape){.game.human-practice .controls:has(.human-controls){left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));width:auto;max-width:640px}}.game.human-practice .human-pass{min-height:44px;padding:4px 10px;font-size:12px}.game.human-practice .human-swipe-cue{font-size:10px;line-height:1.15}.game.human-practice .human-dive{flex-basis:80px;min-width:80px;font-size:11px!important}.game.arcade-mode{--arcade-ink:#16171b;--arcade-panel:#25262a;--arcade-accent:#ff4b2b;--arcade-yellow:#f4c531;--arcade-orange:#ff4b2b;--arcade-paper:#f7f5f1;background:#2f3034;font-family:Arial,system-ui,sans-serif}.game.arcade-mode:after{content:"";pointer-events:none;z-index:1;background:radial-gradient(at 50% 38%,#0000 45%,#1c1d2128 100%);position:absolute;inset:0}.game.arcade-mode header{padding-inline:max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right));border-bottom:3px solid var(--arcade-ink);background:linear-gradient(100deg,#202125f5,#242529ce 65%,#242529a8);box-shadow:0 3px #ff4b2b26}.game.arcade-mode header strong{letter-spacing:.035em;text-transform:uppercase;font-family:Impact,Arial Black,sans-serif;font-size:clamp(18px,4.5vw,23px);font-weight:900}.game.arcade-mode header small{color:var(--arcade-accent);font-size:10px}.game.arcade-mode button,.game.arcade-mode .view-tools summary{border:2px solid var(--arcade-ink);box-shadow:3px 3px 0 var(--arcade-ink);background:#47484c;border-radius:5px;font-weight:800}.game.arcade-mode button:not(:disabled):active,.game.arcade-mode .view-tools summary:active{box-shadow:1px 1px 0 var(--arcade-ink);transform:translate(2px,2px)}.game.arcade-mode button.primary{background:var(--arcade-accent);color:var(--arcade-ink)}.game.arcade-mode button[aria-pressed=true]{color:var(--arcade-ink);background:var(--arcade-yellow);border-color:var(--arcade-ink)}.game.arcade-mode select{background:#2e2f33;border:2px solid #8d8e92;border-radius:5px}.game.arcade-mode .scene-top{background:var(--arcade-ink);border-left:5px solid var(--arcade-yellow);padding:6px 12px 8px 9px;font-size:11px;font-weight:800;line-height:1.4;box-shadow:4px 4px #16171b40}.game.arcade-mode .view-tools summary{background:var(--arcade-accent);color:var(--arcade-ink)}.game.arcade-mode .view-options,.game.arcade-mode .practice-setup{border:3px solid var(--arcade-ink);box-shadow:7px 7px 0 var(--arcade-ink);background:#323337;border-radius:8px}.game.arcade-mode .practice-setup{border-top:6px solid var(--arcade-accent)}.game.arcade-mode .practice-setup h1,.game.arcade-mode .result h1{letter-spacing:.025em;text-transform:uppercase;font-family:Impact,Arial Black,sans-serif;font-size:28px;font-weight:900}.game.arcade-mode .result{border:3px solid var(--arcade-ink);border-top:7px solid var(--arcade-orange);box-shadow:7px 7px 0 var(--arcade-ink);background:#242529f5;border-radius:7px}.game.arcade-mode .result.legal{border-top-color:var(--arcade-accent)}.game.arcade-mode .result h1{color:var(--arcade-yellow)}.game.arcade-mode .controls{border:2px solid var(--arcade-ink);background:#242529e8;border-radius:5px}.game.arcade-mode .aim-map-panel{border:2px solid var(--arcade-ink);background:#242529eb;border-radius:5px;box-shadow:4px 4px #16171b50}.game.arcade-mode .aim-map-dot{background:var(--arcade-accent);border-color:var(--arcade-paper);box-shadow:0 0 0 3px var(--arcade-ink)}.game.arcade-mode .landing-target>span{border-color:var(--arcade-accent);box-shadow:0 0 0 4px var(--arcade-ink)}.game.arcade-mode .offscreen{background:var(--arcade-yellow);border:2px solid var(--arcade-ink);color:var(--arcade-ink);border-radius:4px;font-weight:900}.arcade-hud{z-index:5;top:calc(62px + env(safe-area-inset-top));bottom:auto;left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));border:3px solid var(--arcade-ink,#16171b);width:auto;max-width:400px;box-shadow:5px 5px 0 var(--arcade-ink,#16171b);color:var(--arcade-paper,#f7f5f1);pointer-events:none;isolation:isolate;background:linear-gradient(115deg,#333438f0,#222327f0);border-radius:6px;margin:0;padding:10px 12px 9px;position:absolute}.arcade-hud:before{content:"";background:var(--arcade-accent,#ff4b2b);height:5px;position:absolute;top:-3px;left:-3px;right:-3px}.arcade-hud-power:before{background:var(--arcade-orange,#ff4b2b)}.arcade-stage-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.arcade-hud h2{letter-spacing:.02em;text-transform:uppercase;margin:0;font-family:Impact,Arial Black,sans-serif;font-size:25px;font-style:italic;font-weight:900;line-height:1}.arcade-choice-count{background:var(--arcade-ink,#16171b);color:var(--arcade-accent,#ff4b2b);white-space:nowrap;padding:4px 7px;font-size:10px;font-weight:900}.arcade-instruction{text-align:center;color:#e4e5e9;min-height:13px;font-size:10px;font-weight:700;line-height:1.25;margin-top:6px!important}.game.arcade-mode .arcade-action{border:3px solid var(--arcade-ink,#16171b);background:var(--arcade-accent,#ff4b2b);width:100%;min-height:42px;color:var(--arcade-ink,#16171b);letter-spacing:.035em;text-transform:uppercase;pointer-events:auto;touch-action:manipulation;border-radius:4px;justify-content:space-between;align-items:center;margin-top:7px;padding:5px 12px;font-family:Impact,Arial Black,sans-serif;font-size:22px;font-style:italic;font-weight:900;display:flex;box-shadow:3px 3px #101114}.game.arcade-mode .arcade-action:disabled{opacity:.75;background:#9b9ca0}.game.arcade-mode .arcade-hud-power .arcade-action{background:var(--arcade-orange,#ff4b2b)}.arcade-stance{grid-template-columns:1fr 1fr;align-items:center;gap:12px;margin-top:9px;display:grid}.arcade-position{gap:5px;font-size:11px;font-weight:800;display:grid}.arcade-position>span,.arcade-facing>div{justify-content:space-between;align-items:baseline;gap:5px;display:flex}.arcade-stance output{color:var(--arcade-accent,#ff4b2b);font-size:10px;font-weight:800}.arcade-position input{width:100%;min-width:0;min-height:30px;accent-color:var(--arcade-accent,#ff4b2b);pointer-events:auto;touch-action:pan-y;margin:0}.arcade-position small,.arcade-choice-ends{color:#e4e5e9;justify-content:space-between;font-size:9px;font-weight:800;display:flex}.arcade-facing{min-width:0;font-size:11px;font-weight:800}.arcade-facing svg{pointer-events:auto;touch-action:none;cursor:ew-resize;width:100%;height:65px;margin-top:2px;display:block;overflow:visible}.arcade-facing svg:focus-visible{outline:2px solid var(--arcade-paper,#f7f5f1);outline-offset:2px}.arcade-facing svg[aria-disabled=true]{opacity:.5;pointer-events:none}.arcade-fan-area{fill:#ff4b2b1c;stroke:#8e8f93;stroke-width:1px}.arcade-fan-tick{stroke:#8e8f9366;stroke-width:1px}.arcade-facing-ray{stroke:var(--arcade-accent,#ff4b2b);stroke-width:3px}.arcade-facing-tip,.arcade-facing-pivot{fill:var(--arcade-accent,#ff4b2b);stroke:var(--arcade-ink,#16171b);stroke-width:1.5px}.arcade-spin-choice{align-items:center;gap:14px;min-height:45px;margin-top:5px;padding-inline:5px;display:flex}.arcade-spin-ball{border:2px solid var(--arcade-ink,#16171b);background:conic-gradient(#f4c531 0 70deg, #6e6f73 70deg 140deg, #f4c531 140deg 210deg, #6e6f73 210deg 280deg, #f4c531 280deg);width:29px;height:29px;transform:rotate(var(--arcade-spin,0deg));border-radius:50%;flex:0 0 29px;display:block}.arcade-spin-scale{flex:1}.arcade-spin-track{border:2px solid var(--arcade-ink,#16171b);background:linear-gradient(90deg,#919296,#ff4b2b);height:10px;position:relative}.arcade-spin-track>span{top:-5px;bottom:-5px;left:var(--arcade-value,0%);border:1px solid var(--arcade-ink,#16171b);background:var(--arcade-paper,#f7f5f1);width:5px;position:absolute;transform:translate(-50%)}.arcade-choice-ends{margin-top:6px}.arcade-path-choice,.arcade-curve-choice{color:#e4e5e9;justify-content:center;align-items:center;gap:8px;height:45px;margin-top:5px;font-size:10px;font-weight:800;display:flex;position:relative}.arcade-path-choice svg{width:min(180px,65%);height:45px;overflow:visible}.arcade-curve-choice svg{width:125px;height:43px}.arcade-curve-choice>small{color:var(--arcade-accent,#ff4b2b);background:#2b2c30;padding:0 3px;font-size:8px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.arcade-path-baseline{fill:none;stroke:#91929688;stroke-width:1px}.arcade-path-selected{fill:none;stroke:var(--arcade-accent,#ff4b2b);stroke-width:3px;stroke-linecap:round}.arcade-path-ball{fill:var(--arcade-yellow,#f4c531);stroke:var(--arcade-ink,#16171b);stroke-width:1px}.arcade-fan-outline{fill:none;stroke:#91929688;stroke-width:1px}.arcade-power-choice{justify-content:center;align-items:center;gap:22px;height:51px;margin-top:5px;display:flex}.arcade-power-choice>div:first-child{text-align:center;flex-direction:column;display:flex}.arcade-power-choice strong{color:var(--arcade-orange,#ff4b2b);font-family:Impact,Arial Black,sans-serif;font-size:33px;font-style:italic;line-height:1}.arcade-power-choice strong small{font:800 12px Arial,sans-serif}.arcade-power-choice>div:first-child>span{color:#e4e5e9;margin-top:2px;font-size:9px;font-weight:800}.arcade-power-stack{grid-template-rows:1fr 1fr;grid-template-columns:1fr auto;column-gap:7px;min-width:65px;height:46px;font-size:8px;font-weight:900;display:grid}.arcade-power-stack ol{background:var(--arcade-ink,#16171b);flex-direction:column-reverse;grid-area:1/1/3;gap:1px;width:32px;height:46px;margin:0;padding:3px;list-style:none;display:flex;transform:skew(-5deg)}.arcade-power-stack li{background:#494a4e;flex:1}.arcade-power-stack li[data-filled=true]{background:var(--arcade-orange,#ff4b2b)}.arcade-power-top{grid-area:1/2;align-self:start}.arcade-power-bottom{grid-area:2/2;align-self:end}.arcade-hud-transition,.arcade-hud-flight{background:#222327de;max-width:260px;padding-block:9px}.arcade-hud-transition h2,.arcade-hud-flight h2{color:var(--arcade-yellow,#f4c531)}.arcade-hud-result{display:none}@media (width<=350px){.arcade-hud{padding-inline:10px;left:8px;right:8px}.arcade-hud h2{font-size:23px}.arcade-stance{gap:8px}.arcade-stance output,.arcade-instruction{font-size:9px}}@media (height<=700px){.arcade-hud{top:calc(58px + env(safe-area-inset-top));padding-top:8px;padding-bottom:7px}.arcade-hud h2{font-size:23px}.arcade-position input{min-height:25px}.arcade-facing svg{height:55px}.game.arcade-mode .arcade-action{min-height:40px;margin-top:6px;font-size:21px}.arcade-instruction{margin-top:5px!important}}@media (orientation:landscape){.arcade-hud{top:calc(58px + env(safe-area-inset-top));left:max(12px, env(safe-area-inset-left));width:min(340px,43vw);padding-inline:10px;right:auto}.arcade-hud h2{font-size:23px}.arcade-instruction,.arcade-choice-count{font-size:9px}.arcade-stance{gap:8px}.arcade-facing>div{flex-wrap:wrap;row-gap:0}.arcade-facing svg{height:53px}}@media (prefers-reduced-motion:no-preference){.arcade-hud-transition h2{animation:.18s ease-out both arcade-phase-go}}@keyframes arcade-phase-go{0%{opacity:.4;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.game.arcade-mode .view-tools{top:calc(8px + env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));z-index:10}.game.arcade-mode .view-options{max-height:calc(100dvh - 72px - env(safe-area-inset-top));overscroll-behavior:contain;touch-action:pan-y;overflow:auto}.game.arcade-mode header>div:first-child{min-width:0;max-width:calc(100% - 116px)}.game.arcade-mode header strong{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100vw - 140px);display:block;overflow:hidden}.game.arcade-serving .result:not(.error){top:calc(64px + env(safe-area-inset-top));bottom:auto;left:max(16px, env(safe-area-inset-left));width:calc(100% - 32px);max-width:400px;max-height:min(220px,40dvh);margin:0;right:auto;overflow:auto}.game.court-top-controls .arcade-status{z-index:5;top:calc(64px + env(safe-area-inset-top));border-left:5px solid var(--arcade-accent);background:#242529ed;max-width:400px;padding:10px 14px;font-size:13px;position:absolute;left:16px;right:16px}.game.court-top-controls .arcade-status strong{text-transform:uppercase;font:italic 22px Impact,Arial Black,sans-serif}.game.arcade-serving .arcade-continue{color:var(--arcade-accent);margin-top:8px;font-size:11px}.arcade-stance-readout{color:var(--arcade-accent);justify-content:space-between;gap:8px;margin-top:7px;font-size:11px;display:flex}.court-stance-controls{z-index:6;pointer-events:none;width:0;height:0;position:absolute}.game.arcade-mode .court-stance-controls button{border:2px solid var(--arcade-accent);width:48px;min-width:48px;height:48px;min-height:48px;color:var(--arcade-accent);pointer-events:auto;touch-action:none;background:#2a2b2fb8;border-radius:50%;padding:5px;position:absolute}.court-stance-controls svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.court-move-left{top:-24px;left:-98px}.court-move-right{top:-24px;left:50px}.game.arcade-mode .court-stance-controls .court-turn{border-color:var(--arcade-yellow);height:56px;color:var(--arcade-yellow);top:58px;left:-24px}.court-turn svg{height:25px}.court-turn span{font-size:9px;display:block}.game.arcade-serving header{gap:6px;padding-right:106px}.game.arcade-serving header>div:first-child{flex:1;min-width:0}.game.arcade-serving header strong{white-space:nowrap;text-overflow:ellipsis;font-size:clamp(13px,3.8vw,19px);display:block;overflow:hidden}.game.arcade-serving .serve-type-picker{pointer-events:auto;width:114px;min-width:0;font-size:10px}.game.arcade-serving .serve-type-picker select{width:100%;min-height:44px;padding:4px;font-size:11px}.serve-type-picker span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.arcade-new-run-note{color:#e4e5e9;font-size:10px}@media (width<=350px){.game.arcade-serving header{padding-left:8px;padding-right:106px}.game.arcade-serving .serve-type-picker{width:102px}}.game.court-top-controls header{gap:6px;padding-right:106px}.game.court-top-controls header>div:first-child{flex:1;min-width:0;max-width:none}.game.court-top-controls header strong{font-size:clamp(13px,3.8vw,19px)}.game.court-top-controls .serve-type-picker{pointer-events:auto;width:114px;min-width:0}.game.court-top-controls .serve-type-picker select{width:100%;min-height:44px;padding:4px;font-size:11px}.game.court-top-controls .view-tools{top:calc(8px + env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right))}.game.human-practice .hint,.game.human-practice .controls>.main-row{display:none}.game.human-practice .controls:has(.human-controls){max-width:400px}.game.human-practice .result:not(.error){top:calc(64px + env(safe-area-inset-top));bottom:auto;left:max(12px, env(safe-area-inset-left));width:calc(100% - 24px);max-width:400px;max-height:min(220px,40dvh);right:auto;overflow:auto}.game.human-practice .arcade-continue{color:#ff4b2b;font-size:11px}.quick-change-note{z-index:5;top:calc(220px + env(safe-area-inset-top));color:#e4e5e9;pointer-events:none;font-size:10px;position:absolute;left:16px}@media (width<=350px){.game.court-top-controls header{padding-left:8px;padding-right:106px}.game.court-top-controls .serve-type-picker{width:102px}}@media (orientation:landscape){.game.human-practice .controls:has(.human-controls){width:42vw;max-width:280px;right:auto}.game.human-practice .human-controls{grid-template-rows:auto;grid-template-columns:1fr;display:grid}.game.human-practice .human-controls>*{grid-area:auto!important}.game.human-practice .human-touch-row{flex-direction:row}}.game.arcade-mode .court-stance-controls .court-depth{border-color:var(--arcade-paper);height:78px;color:var(--arcade-paper);cursor:ns-resize;border-radius:20px;top:35px;left:50px}.court-depth svg{height:49px}.court-depth span{font-size:9px;display:block}.arcade-mode-picker{--picker-ink:#101115;--picker-orange:#ff4b2b;--picker-yellow:#f4c531;--picker-paper:#f7f5f1;z-index:30;isolation:isolate;overscroll-behavior:contain;touch-action:pan-y;padding:max(20px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));color:var(--picker-paper);background:repeating-linear-gradient(128deg,#ff4b2b08 0 2px,#0000 2px 22px),radial-gradient(at 86% 82%,#3d2626 0%,#26252c 41%,#16171b 75%);flex-direction:column;font:16px Arial,system-ui,sans-serif;display:flex;position:fixed;inset:0;overflow:auto}.arcade-picker-court{color:#ff4b2b;fill:none;stroke:currentColor;stroke-width:2px;opacity:.12;pointer-events:none;z-index:-1;width:clamp(360px,56vw,850px);height:auto;position:fixed;bottom:-12vw;right:-7vw;transform:rotate(-12deg)}.arcade-picker-shell{width:min(100%,760px);margin:auto}.arcade-picker-nav{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.arcade-mode-picker .arcade-picker-nav button{min-height:44px;color:var(--picker-paper);cursor:pointer;touch-action:manipulation;background:#2d2b30;border:2px solid #807778;border-radius:4px;padding:7px 11px;font:800 13px Arial,system-ui,sans-serif}.arcade-picker-heading{margin:0 0 clamp(20px,4vw,35px)}.arcade-picker-heading h1{letter-spacing:.015em;text-transform:uppercase;text-shadow:4px 4px 0 var(--picker-ink);outline:none;margin:0;font-family:Impact,Arial Black,Arial,sans-serif;font-size:clamp(42px,10vw,78px);font-style:italic;font-weight:900;line-height:.95}.arcade-picker-heading h1 span{color:var(--picker-yellow)}.arcade-picker-heading .arcade-picker-brand{color:var(--picker-orange);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:900}.arcade-picker-heading .arcade-picker-prompt{color:#e9e2dd;margin:13px 0 0;font-weight:700;line-height:1.3}.arcade-picker-options{gap:12px;display:grid}.arcade-mode-picker .arcade-picker-options button.arcade-picker-card{--card-accent:var(--picker-orange);border:3px solid var(--picker-ink);border-left:6px solid var(--card-accent);min-width:0;min-height:100px;box-shadow:5px 5px 0 var(--picker-ink);color:var(--picker-paper);text-align:left;font:inherit;cursor:pointer;touch-action:manipulation;background:linear-gradient(115deg,#373239,#23242b 85%);border-radius:6px;grid-template-columns:40px minmax(0,1fr) 12px;align-items:center;gap:13px;padding:14px 13px;display:grid;position:relative}.arcade-mode-picker .arcade-picker-options button[data-icon=receive],.arcade-mode-picker .arcade-picker-options button[data-icon=competition]{--card-accent:var(--picker-yellow)}.arcade-mode-picker .arcade-picker-options button:hover{background:linear-gradient(115deg,#473538,#2c2b33 85%)}.arcade-picker-icon{width:40px;height:40px;color:var(--card-accent);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;display:block}.arcade-picker-icon circle:last-child{fill:#302b30}.arcade-picker-card-copy{gap:5px;display:grid}.arcade-picker-card-copy>strong{text-transform:uppercase;font-family:Impact,Arial Black,Arial,sans-serif;font-size:clamp(22px,5.5vw,29px);font-style:italic;font-weight:900;line-height:1}.arcade-picker-card-copy>span{color:#e5dedb;font-size:13px;line-height:1.35}.arcade-picker-card-copy b{color:var(--card-accent);margin-bottom:2px;font-size:11px;display:block}.arcade-picker-chevron{border-top:2px solid var(--card-accent,var(--picker-orange));border-right:2px solid var(--card-accent,var(--picker-orange));width:9px;height:9px;transform:rotate(45deg)}.arcade-mode-picker button.arcade-picker-stationary{width:100%;min-height:52px;color:var(--picker-paper);text-align:left;cursor:pointer;touch-action:manipulation;background:#24242b;border:2px solid #ad6455;border-radius:5px;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;margin-top:14px;padding:9px 13px;font:13px Arial,system-ui,sans-serif;display:grid}.arcade-picker-stationary strong,.arcade-picker-stationary>span:first-of-type{grid-column:1}.arcade-picker-stationary>span:first-of-type{color:#e5dedb}.arcade-picker-stationary .arcade-picker-chevron{grid-area:1/2/3}.arcade-picker-shell .arcade-picker-note{color:#e5dedb;max-width:52ch;margin:17px 0 0;font-size:12px;line-height:1.4}.arcade-mode-picker button:focus-visible{outline:3px solid var(--picker-paper);outline-offset:3px}@media (width>=650px){.arcade-picker-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}}@media (height<=460px){.arcade-mode-picker{padding-top:max(12px, env(safe-area-inset-top));padding-bottom:max(18px, env(safe-area-inset-bottom))}.arcade-picker-heading{margin-bottom:17px}.arcade-picker-heading h1{font-size:clamp(35px,7vw,55px)}.arcade-mode-picker .arcade-picker-options button.arcade-picker-card{min-height:86px}}.ranked-screen{--ranked-ink:#101115;--ranked-panel:#25242b;--ranked-accent:#ff4b2b;--ranked-reward:#f4c531;--ranked-paper:#f7f5f1;--ranked-muted:#d4cbd0;z-index:35;overscroll-behavior:contain;padding:max(20px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));color:var(--ranked-paper);background:repeating-linear-gradient(128deg,#ff4b2b08 0 2px,#0000 2px 22px),radial-gradient(at 87% 64%,#402b29,#16171b 70%);font:16px system-ui,sans-serif;position:fixed;inset:0;overflow:auto}.ranked-shell{gap:14px;width:min(100%,680px);margin-inline:auto;display:grid}.ranked-screen :is(h1,h2,p){margin:0}.ranked-heading p{color:#ff9b87;letter-spacing:.09em;text-transform:uppercase;margin-bottom:6px;font-size:12px;font-weight:800}.ranked-heading h1{text-transform:uppercase;text-shadow:4px 4px var(--ranked-ink);outline:none;font-family:Impact,Arial Black,Arial,sans-serif;font-size:clamp(40px,9vw,66px);font-style:italic;line-height:1}.ranked-screen :is(button,input){font:inherit}.ranked-screen button{min-height:44px;color:var(--ranked-paper);cursor:pointer;touch-action:manipulation;background:#37333b;border:1px solid #81757e;border-radius:7px;padding:8px 12px;font-size:14px;font-weight:750}.ranked-screen button:not(:disabled):hover{filter:brightness(1.14)}.ranked-screen button:disabled{opacity:.62;cursor:default}.ranked-screen :is(button,input):focus-visible{outline:3px solid var(--ranked-paper);outline-offset:2px}.ranked-screen button.ranked-primary{border-color:var(--ranked-accent);color:var(--ranked-ink);background:var(--ranked-accent)}.ranked-actions,.ranked-options{flex-wrap:wrap;gap:8px;display:flex}.ranked-profile .ranked-actions{align-items:center}.ranked-navigation{justify-content:space-between}.ranked-options button{flex:1}.ranked-options button[aria-pressed=true]{border-color:var(--ranked-reward);box-shadow:inset 0 -3px var(--ranked-reward)}.ranked-panel{background:var(--ranked-panel);min-width:0;box-shadow:3px 3px var(--ranked-ink);border:1px solid #59505a;border-radius:8px;justify-items:start;gap:10px;padding:clamp(12px,3vw,20px);display:grid}.ranked-panel h2{font-size:17px;font-weight:800}.ranked-panel p{font-size:14px;line-height:1.45}.ranked-preview{color:var(--ranked-reward);background:#342a1a;border:1px solid #81682b;border-radius:5px;justify-self:start;padding:5px 9px;font-size:12px;font-weight:750}.ranked-balance,.ranked-board-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;width:100%;display:flex}.ranked-balance p{color:var(--ranked-muted);margin-top:3px}.ranked-balance strong{color:var(--ranked-reward);font-size:clamp(18px,5vw,29px)}.ranked-muted{color:var(--ranked-muted)}.ranked-screen .ranked-error{color:#ffe0da;background:#472827;border:1px solid #aa584d;border-radius:6px;width:100%;padding:10px 12px}.ranked-handle{gap:4px;width:min(100%,300px);font-size:14px;font-weight:700;display:grid}.ranked-handle input{min-width:0;min-height:44px;color:var(--ranked-paper);background:var(--ranked-ink);border:1px solid #81757e;border-radius:6px;padding:7px 10px;font-size:16px}.ranked-listing{align-items:center;gap:9px;min-height:44px;font-size:14px;display:flex}.ranked-listing input{width:18px;height:18px;accent-color:var(--ranked-reward);flex:0 0 18px}.ranked-board{border-collapse:collapse;table-layout:fixed;text-align:left;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.ranked-board :is(th,td){border-top:1px solid #49424c;padding:9px 4px}.ranked-board :is(th,td):first-child{width:49px}.ranked-board :is(th,td):nth-child(2){overflow-wrap:anywhere}.ranked-board :is(th,td):last-child{text-align:right;width:75px}.ranked-board thead{color:var(--ranked-muted)}.ranked-result h2{color:var(--ranked-reward);font-variant-numeric:tabular-nums;font-size:clamp(30px,8vw,50px);line-height:1.1}.ranked-earned{color:var(--ranked-reward);font-weight:750}*{box-sizing:border-box}html,body{overscroll-behavior:none;margin:0;overflow:hidden}body{color:#f4f5f9;background:#16171b;font:16px system-ui,sans-serif}.game{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;height:100dvh;position:relative;overflow:hidden}.game p{margin:0}.game button,.game select{font:inherit;color:#f4f5f9;cursor:pointer;touch-action:manipulation;background:#292a2ee8;border:1px solid #818286;border-radius:12px;min-height:48px;padding:8px 12px}.game button{font-weight:600}.game button:disabled,.game select:disabled{opacity:.55;cursor:default}.game button.primary{color:#16171b;background:#ff4b2b;border:0}.game :is(button,input,select,summary):focus-visible{outline-offset:3px;outline:3px solid #fff}.game header{top:env(safe-area-inset-top);z-index:8;pointer-events:none;background:linear-gradient(#16171bec,#16171b65);justify-content:space-between;align-items:center;height:56px;padding:4px 12px;display:flex;position:absolute;left:0;right:0}.game header small{color:#d3d4d8;font-size:11px;display:block}.header-actions{pointer-events:auto;gap:6px;display:flex}.header-actions button{font-size:12px}.viewport{touch-action:none;position:absolute;inset:0}.viewport canvas{-webkit-user-drag:none;touch-action:none;outline:none;display:block;position:absolute;inset:0}.scene-top{top:calc(68px + env(safe-area-inset-top));z-index:2;text-shadow:0 1px 4px #000;pointer-events:none;font-size:12px;position:absolute;left:16px}.view-tools{top:calc(64px + env(safe-area-inset-top));z-index:7;position:absolute;right:16px}.view-tools summary{cursor:pointer;text-align:center;background:#212226e8;border:1px solid #818286;border-radius:12px;min-width:72px;min-height:48px;padding:12px;font-size:14px;list-style:none}.view-tools summary::-webkit-details-marker{display:none}.view-options{background:#212226f5;border:1px solid #818286;border-radius:14px;gap:10px;width:240px;padding:12px;display:grid;position:absolute;top:54px;right:0}.view-options label{font-size:12px}.view-options select{width:100%;margin-top:4px;font-size:14px;display:block}.aim-map-panel{top:calc(124px + env(safe-area-inset-top));z-index:3;background:#1e1f23d9;border:1px solid #a0a1a5;border-radius:12px;width:112px;padding:7px;position:absolute;right:16px}.aim-map-panel>span{color:#e3e4e8;margin-bottom:5px;font-size:11px;display:block}.aim-map{cursor:crosshair;touch-action:none;background:repeating-linear-gradient(90deg,#0000 0 calc(33.333% - 1px),#ffffff36 calc(33.333% - 1px) 33.333%),repeating-linear-gradient(#a9774a80 0 calc(33.333% - 1px),#ffffff36 calc(33.333% - 1px) 33.333%);border:1px solid #eaebef;border-bottom:3px solid #fff;height:96px;position:relative}.aim-map-dot{pointer-events:none;background:#f4c531;border:3px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;top:22.2%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #16171b,0 0 12px #f4c531}.map-net{text-align:center;color:#fff;pointer-events:none;font-size:9px;position:absolute;bottom:1px;left:0;right:0}.mirrored .aim-map-panel{left:16px;right:auto}.landing-target{z-index:2;text-align:center;pointer-events:none;color:#fff;text-shadow:0 1px 3px #000;position:absolute;transform:translate(-50%,-50%)}.landing-target>span{background:#ff4b2b45;border:3px solid #f7f5f1;border-radius:50%;place-items:center;width:52px;height:52px;font-size:28px;line-height:1;display:grid;box-shadow:0 0 0 3px #16171be0,inset 0 0 0 2px #16171b}.landing-target small{background:#24252bdc;border-radius:6px;margin-top:3px;padding:2px 4px;font-size:11px;display:block}.controls{z-index:5;bottom:calc(12px + env(safe-area-inset-bottom));left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));pointer-events:none;background:linear-gradient(#212226b8,#212226ed);border:1px solid #8a8b8f66;border-radius:16px;flex-direction:column;gap:8px;max-width:480px;margin:0 auto;padding:12px;display:flex;position:absolute;box-shadow:0 4px 24px #0003}.controls :is(button,input,summary){pointer-events:auto}.instruction{text-align:center;text-shadow:0 1px 4px #000;font-size:15px;line-height:1.3}.instruction:empty{display:none}.spin{justify-content:center;gap:8px;display:flex}.spin button{min-width:72px;font-size:14px}.spin button[aria-pressed=true]{background:#50302be8;border-color:#ff4b2b}.technique{text-align:center;color:#d9dade;margin-top:7px;font-size:11px;line-height:1.3;display:block}.hint{color:#d6d7db;text-align:center;font-size:11px;line-height:1.3}.main-row{gap:8px;display:flex}.main-row:empty{display:none}.main-row>button{flex:1;font-size:14px}.meter-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:5px 10px;display:grid}.meter-title{margin-bottom:4px;font-size:11px;display:block}.meter-row[data-mode=toss]{grid-template-columns:1fr}.meter-row[data-mode=toss] .power-block,.meter-row:not([data-mode=hold]) .hold-cue,.meter-row[data-mode=hold] .timing-block,.meter-row[data-mode=hold] .power-block{display:none}.hold-cue{text-align:center;color:#f7f5f1;grid-column:1/-1;font-size:14px}.timing-meter,.power-meter{background:#141519;border:1px solid #8e8f93;border-radius:8px;height:14px;position:relative;overflow:hidden}.green-band{background:#ff4b2b;width:12%;height:100%;position:absolute;left:50%;transform:translate(-50%)}.marker{background:#fff;width:4px;position:absolute;top:0;bottom:0;left:0;transform:translate(-50%);box-shadow:0 0 4px #fff}.power-fill{background:#f4c531;width:0;height:100%;display:block}.power-guide{background:#f4c53126;border-left:2px solid #f4c531;border-right:2px solid #f4c531;width:20%;position:absolute;top:0;bottom:0;left:65%}.meter-label{color:#d6d7db;grid-column:1/-1;font-size:11px;line-height:1.3}.result{z-index:6;bottom:calc(140px + env(safe-area-inset-bottom));touch-action:pan-y;background:#212226f2;border:1px solid #e9a37c;border-radius:16px;max-width:460px;max-height:min(60dvh,480px);margin:auto;padding:16px;position:absolute;left:16px;right:16px;overflow:auto}.result.legal{border-color:#ff4b2b}.result h1{margin:0 0 8px;font-size:22px}.result details{margin-top:12px;font-size:13px;line-height:1.5}.result details p{margin-top:8px}.result summary{cursor:pointer;min-height:32px}.release-result{color:#f7f5f1}.error button{margin:8px 8px 0 0}.scrubber{align-items:center;gap:10px;font-size:12px;display:flex}.scrubber input{flex:1;min-width:0;min-height:32px}.stage-notice{z-index:4;text-align:center;pointer-events:none;background:#212226ed;border:1px solid #f4c531;border-radius:10px;max-width:400px;margin:auto;padding:10px;font-size:14px;position:absolute;top:36%;left:16px;right:16px}.offscreen{z-index:3;pointer-events:none;background:#232428e0;border-radius:12px;padding:8px;position:absolute;top:45%;left:50%;transform:translate(-50%)}.fallback{z-index:2;color:#f4c531;font-size:12px;position:absolute;bottom:35%;left:16px}[hidden]{display:none!important}@media (height<=650px){.controls{bottom:calc(6px + env(safe-area-inset-bottom));gap:6px;padding:9px}.controls:has(.meter-row:not([hidden])) .hint{display:none}.aim-map-panel{top:calc(118px + env(safe-area-inset-top));width:96px;padding:5px}.aim-map{height:82px}.instruction{font-size:14px}}@media (orientation:landscape){.controls{left:max(12px, env(safe-area-inset-left));width:min(360px,45vw);right:auto}.human-practice .controls:has(.human-swipe-controls){width:min(280px,35vw)}.human-practice.mirrored .controls:has(.human-controls){left:auto;right:max(12px, env(safe-area-inset-right))}.human-practice .controls:has(.human-move-pad:not([hidden]),.human-shape-pad:not([hidden])){left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));width:auto;max-width:none;box-shadow:none;background:0 0;border-color:#0000}.human-practice .human-controls:has(.human-move-pad:not([hidden]),.human-shape-pad:not([hidden]))>:is(.human-prototype,.human-instruction,.human-settings){text-shadow:0 1px 4px #000;justify-self:end;width:min(280px,35vw)}.human-practice .human-mirrored:has(.human-move-pad:not([hidden]),.human-shape-pad:not([hidden]))>:is(.human-prototype,.human-instruction,.human-settings){justify-self:start}.human-practice .human-shape-pad{flex:0 220px;min-width:0}.human-practice .human-touch-row:has(.human-move-pad:not([hidden]),.human-shape-pad:not([hidden])) .human-main{flex:0 180px}.human-practice .human-touch-row .human-main{margin-left:auto}.human-practice .human-mirrored .human-main{margin-left:0;margin-right:auto}.human-practice .controls:has(.human-move-pad:not([hidden]),.human-shape-pad:not([hidden])) .main-row{align-self:flex-end;width:min(280px,35vw)}.human-practice.mirrored .controls:has(.human-move-pad:not([hidden]),.human-shape-pad:not([hidden])) .main-row{align-self:flex-start}.result{width:min(400px,48vw);max-height:calc(100dvh - 88px);bottom:16px;left:auto}.stage-notice{top:30%}.technique,.hint{font-size:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}}.gesture-guide{z-index:4;pointer-events:none;width:100%;height:100%;display:none;position:absolute;inset:0;overflow:hidden}.gesture-guide circle{fill:#ff4b2b45;stroke:#f4c531;stroke-width:2px;stroke-dasharray:4 3}.gesture-guide path{fill:none;stroke:#f7f5f1;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 2px #000)}.gesture-guide text{fill:#fff;paint-order:stroke;stroke:#212226;stroke-width:3px;font:11px system-ui,sans-serif}.aim-map-target{pointer-events:none;background:#f4c53126;border:2px solid #f4c531;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.setup-shade{z-index:20;padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));touch-action:pan-y;background:#111216ce;place-items:center;display:grid;position:absolute;inset:0}.practice-setup{background:#212226;border:1px solid #8a8b8f;border-radius:16px;gap:10px;width:min(100%,420px);max-height:100%;padding:16px;display:grid;overflow:auto}.practice-setup h1{margin:0;font-size:22px}.practice-setup label{gap:4px;font-size:14px;display:grid}.practice-setup p{color:#d6d7db;font-size:13px;line-height:1.4}.practice-setup .primary{min-height:56px}.run-summary{gap:6px;margin:10px 0;font-size:14px;display:grid}.run-summary li{padding:3px 0}.target-challenge .landing-target>span{border-width:2px;width:32px;height:32px;font-size:18px}.target-challenge .landing-target small{white-space:nowrap;margin:0 0 4px;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.target-challenge .aim-map-dot{border-width:2px;width:10px;height:10px}.approach-hud{gap:6px;max-width:440px;margin:0 auto 8px;font-size:13px;display:grid}.approach-timing{background:#393a3e;border-radius:8px;height:15px;position:relative;overflow:hidden}.approach-band{background:#b43d2b;width:40%;height:100%;position:absolute;left:30%}.approach-marker{background:#f7f5f1;width:4px;height:100%;position:absolute;left:0}
