:root[data-theme=dark]{--bg-1:#0a1410;--bg-2:#12241b;--bg-3:#1b3327;--bg-4:#1f9d55;--bg-5:#2f6fd0;--bg-6:#00000094;--text-1:#f2f7f4;--text-2:#b9c9c1;--text-3:#f5b72e;--text-4:#46d67f;--text-5:#ff6b5e;--text-6:#fff;--edge:#ffffff24;--edge-strong:#ffffff47;--shadow:0 6px 24px #00000073}:root[data-theme=light]{--bg-1:#eef2ef;--bg-2:#fff;--bg-3:#e2eae5;--bg-4:#17864a;--bg-5:#2563b0;--bg-6:#0c18126b;--text-1:#10201a;--text-2:#3d524a;--text-3:#c98a12;--text-4:#0f7a41;--text-5:#c0392b;--text-6:#fff;--edge:#0c181224;--edge-strong:#0c18124d;--shadow:0 6px 24px #0c18122e}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;background:var(--bg-1);width:100%;height:100%;color:var(--text-1);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,PingFang SC,Microsoft YaHei,sans-serif;overflow:hidden}#app{position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}#scene{touch-action:none;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}#ui-root{pointer-events:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:absolute;top:0;bottom:0;left:0;right:0}.hud-band{top:calc(env(safe-area-inset-top) + 1vh);left:calc(env(safe-area-inset-left) + 1.6vh);pointer-events:none;position:absolute}.scoreboard{letter-spacing:.02em;grid-template-rows:auto auto;grid-template-columns:auto auto auto auto auto;align-items:stretch;font-size:clamp(12px,3.4vh,20px);font-weight:800;line-height:1;display:grid}.scoreboard>.team-badge,.scoreboard>.team-name{background:var(--bg-6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);grid-row:1}.team-badge{width:clamp(16px,4.2vh,28px);display:block;position:relative}.team-badge:after{content:"";background:var(--kit,var(--bg-4));box-shadow:0 0 0 1.5px var(--edge-strong);border-radius:2px 2px 45% 45%;position:absolute;top:22%;bottom:22%;left:18%;right:18%}.team-badge[data-side=home]{border-radius:.6vh 0 0 .6vh}.team-badge[data-side=away]{border-radius:0 .6vh .6vh 0}.scoreboard .team-name{text-overflow:ellipsis;white-space:nowrap;max-width:clamp(84px,36vh,200px);color:var(--text-6);align-content:center;padding:0 1.2vh;font-weight:700;display:block;overflow:hidden}.scoreboard .score{min-width:clamp(64px,16vh,110px);color:var(--text-1);background:var(--bg-3);font-variant-numeric:tabular-nums;grid-area:1/3;justify-content:center;align-items:center;gap:1vh;padding:.9vh 1.6vh;font-size:1.25em;display:flex}.score-sep{background:var(--edge-strong);border-radius:1px;width:2px;height:.8em;display:block}.clock{text-align:center;background:var(--bg-4);color:var(--text-6);font-variant-numeric:tabular-nums;border-radius:0 0 .6vh .6vh;grid-area:2/3;padding:.5vh 0;font-size:.95em;font-weight:800}.half{background:var(--bg-6);color:var(--text-6);letter-spacing:.04em;border-radius:.5vh;grid-area:2/4/auto/6;place-self:start;margin:.4vh 0 0 .6vh;padding:.3vh .8vh;font-size:clamp(9px,2.4vh,12px);font-weight:600}#input-layer{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}#gesture-layer{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:absolute;top:0;bottom:0;left:0;right:0}.gesture-fx{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.gfx-ripple,.gfx-marker{--c:var(--text-6);pointer-events:none;width:16px;height:16px;margin:-8px 0 0 -8px;animation:.45s ease-out forwards gfx-fade;position:absolute}.gfx-marker{animation:none}.gfx-ripple:before,.gfx-ripple:after,.gfx-marker:before,.gfx-marker:after{content:"";background:var(--c);border-radius:2px;width:18px;height:3px;margin:-1.5px 0 0 -9px;position:absolute;top:50%;left:50%;transform:rotate(45deg)}.gfx-ripple:after,.gfx-marker:after{transform:rotate(-45deg)}@keyframes gfx-fade{0%{opacity:1}to{opacity:0}}.gfx-pass{--c:var(--bg-5)}.gfx-through,.gfx-second{--c:var(--text-3)}.gfx-shoot,.gfx-press,.gfx-slide{--c:var(--text-5)}.gfx-switch,.gfx-clear{--c:var(--text-4)}@media (prefers-reduced-motion:reduce){.gfx-ripple,.gfx-marker{animation:none}.gfx-ripple{opacity:.8}}#joystick-zone{left:env(safe-area-inset-left);top:16vh;bottom:env(safe-area-inset-bottom);pointer-events:auto;touch-action:none;width:45%;position:absolute}.joystick{--jd:clamp(112px, 28vh, 210px);width:var(--jd);height:var(--jd);margin-left:calc(var(--jd) / -2);margin-top:calc(var(--jd) / -2);background:radial-gradient(circle, transparent 52%, var(--bg-6) 100%), var(--bg-6);box-shadow:inset 0 0 0 2px var(--edge), 0 0 0 1px var(--edge);opacity:1;pointer-events:none;border-radius:50%;transition:opacity .15s ease-out;position:absolute}#joystick.resting{opacity:.75}.joystick .knob{background:radial-gradient(circle at 50% 40%, var(--text-6) 0 55%, color-mix(in srgb, var(--text-6) 78%, var(--bg-6)) 100%);width:56%;height:56%;box-shadow:0 3px 10px var(--bg-6), inset 0 -3px 6px color-mix(in srgb, var(--bg-6) 45%, transparent);border-radius:50%;margin-top:-28%;margin-left:-28%;position:absolute;top:50%;left:50%}#action-zone{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}:root{--bm:clamp(88px, 26vh, 176px);--bs:clamp(64px, 19vh, 128px)}.action-btn{--d:var(--bs);--ring:var(--edge-strong);width:var(--d);height:var(--d);right:calc(env(safe-area-inset-right) + var(--bm) * var(--cx) - var(--d) / 2);bottom:calc(env(safe-area-inset-bottom) + var(--bm) * var(--cy) - var(--d) / 2);border:calc(var(--d) * .065) solid var(--ring);background:radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--text-6) 16%, transparent) 0, transparent 55%), radial-gradient(circle at 50% 50%, transparent 55%, color-mix(in srgb, var(--ring) 30%, transparent) 100%), color-mix(in srgb, var(--bg-6) 80%, var(--bg-4));box-shadow:0 0 0 calc(var(--d) * .03) color-mix(in srgb, var(--text-6) 28%, transparent), 0 4px 14px var(--bg-6), inset 0 2px 6px color-mix(in srgb, var(--text-6) 18%, transparent);color:var(--text-6);font-weight:800;font-size:clamp(13px, calc(var(--d) * .2), 24px);text-align:center;text-shadow:0 1px 3px var(--bg-6);pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);white-space:pre-line;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;line-height:1.1;transition:transform 70ms ease-out,border-color 70ms ease-out,box-shadow 70ms ease-out;display:flex;position:absolute}.action-btn .label{pointer-events:none;position:relative}.action-btn.pressed{border-color:color-mix(in srgb, var(--ring) 55%, var(--text-6));box-shadow:0 0 0 calc(var(--d) * .03) color-mix(in srgb, var(--ring) 60%, transparent), 0 0 calc(var(--d) * .28) color-mix(in srgb, var(--ring) 75%, transparent), inset 0 0 calc(var(--d) * .25) color-mix(in srgb, var(--ring) 45%, transparent);transform:scale(.9)}.action-btn .charge{--p:0;inset:calc(var(--d) * -.14);pointer-events:none;background:conic-gradient(from 0deg, var(--text-6) calc(var(--p) * 1turn), transparent 0);filter:drop-shadow(0 0 4px var(--ring));border-radius:50%;position:absolute;-webkit-mask:radial-gradient(closest-side,#0000 86%,#000 87.5%);mask:radial-gradient(closest-side,#0000 86%,#000 87.5%)}.btn-sprint{--d:var(--bm);--cx:.62;--cy:.64;--ring:var(--text-4);font-size:clamp(14px, calc(var(--d) * .17), 26px)}.btn-pass{--cx:1.74;--cy:.54;--ring:var(--bg-5)}.btn-through{--cx:1.36;--cy:1.36;--ring:var(--text-3)}.btn-skill{--d:calc(var(--bs) * .74);--cx:2.6;--cy:.54;--ring:var(--text-3)}.btn-skill.off{display:none}.btn-cross{--d:calc(var(--bs) * .74);--cx:2.6;--cy:1.3;--ring:var(--bg-5)}.btn-cross.off{display:none}.btn-strike{--cx:.56;--cy:1.76;--ring:var(--text-5)}.action-btn .swipe-tag{--a:0deg;background:var(--bg-6);border:2px solid var(--ring);color:var(--text-6);white-space:nowrap;pointer-events:none;border-radius:999px;padding:2px 8px 2px 18px;font-size:clamp(11px,2.6vh,15px);font-weight:800;line-height:1.3;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.action-btn .swipe-tag:before{content:"";border-left:8px solid var(--text-6);width:0;height:0;transform:rotate(var(--a));transform-origin:3px;border-top:4px solid #0000;border-bottom:4px solid #0000;margin-top:-4px;position:absolute;top:50%;left:6px}.action-btn .swipe-tag.hidden{display:none}html[lang=en] .action-btn{font-size:clamp(10px, calc(var(--d) * .14), 19px)}#overlay-root{pointer-events:none;z-index:5;position:absolute;top:0;bottom:0;left:0;right:0}.modal-scrim{background:var(--bg-6);pointer-events:auto;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.modal-card{background:var(--bg-2);width:min(560px,88vw);max-height:85vh;color:var(--text-1);border:1px solid var(--edge);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.modal-head{z-index:2;background:var(--bg-2);border-bottom:1px solid var(--edge);justify-content:space-between;align-items:center;padding:14px 16px;display:flex;position:sticky;top:0}.modal-head h2{margin:0;font-size:17px}.modal-close{border:1px solid var(--edge);background:var(--bg-3);width:34px;height:34px;color:var(--text-1);cursor:pointer;border-radius:8px;font-size:17px}.modal-body{-webkit-overflow-scrolling:touch;flex:1;padding:14px 16px;overflow-y:auto}.modal-foot{z-index:2;background:var(--bg-2);border-top:1px solid var(--edge);justify-content:flex-end;gap:10px;padding:12px 16px;display:flex;position:sticky;bottom:0}.btn{border:1px solid var(--edge);background:var(--bg-3);min-height:44px;color:var(--text-1);cursor:pointer;border-radius:9px;padding:0 18px;font-size:15px;font-weight:600}.btn.primary{background:var(--bg-4);color:var(--text-6);border-color:var(--bg-4)}.btn.danger{background:var(--bg-3);color:var(--text-5);border-color:var(--text-5)}#loading{z-index:30;pointer-events:auto;background:radial-gradient(ellipse 70% 55% at 50% 42%, color-mix(in srgb, var(--bg-4) 32%, transparent), transparent 70%), radial-gradient(ellipse 120% 80% at 50% 120%, color-mix(in srgb, var(--bg-5) 22%, transparent), transparent 60%), var(--bg-1);flex-direction:column;justify-content:center;align-items:center;gap:3.2vh;transition:opacity .55s,transform .55s;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}#loading.out{opacity:0;pointer-events:none;transform:scale(1.04)}.loading-brand{flex-direction:column;align-items:center;gap:1.4vh;animation:.8s cubic-bezier(.2,.8,.2,1) both rise-in;display:flex}.loading-ball{aspect-ratio:1;background:radial-gradient(circle at 34% 30%, var(--text-6) 0 18%, transparent 46%), conic-gradient(from 0deg, var(--text-1) 0 12%, var(--bg-1) 12% 18%, var(--text-1) 18% 37%, var(--bg-1) 37% 43%, var(--text-1) 43% 62%, var(--bg-1) 62% 68%, var(--text-1) 68% 87%, var(--bg-1) 87% 93%, var(--text-1) 93%);width:clamp(48px,11vh,96px);box-shadow:0 0 40px color-mix(in srgb, var(--bg-4) 70%, transparent), inset -8px -10px 18px #00000073;border-radius:50%;animation:2.4s linear infinite spin}.loading-title{letter-spacing:.12em;background:linear-gradient(180deg, var(--text-6) 20%, var(--text-2) 55%, var(--text-6) 80%);color:#0000;filter:drop-shadow(0 4px 18px color-mix(in srgb, var(--bg-4) 60%, transparent));-webkit-background-clip:text;background-clip:text;font-size:clamp(28px,8vh,64px);font-weight:900}.loading-tagline{color:var(--text-2);letter-spacing:.4em;text-transform:uppercase;font-size:clamp(11px,1.8vh,14px)}#loading .bar{background:color-mix(in srgb, var(--text-1) 12%, transparent);border-radius:2px;width:min(360px,62vw);height:4px;overflow:hidden}#loading .bar>i{background:linear-gradient(90deg, var(--bg-4), var(--text-4), var(--text-3));width:0%;height:100%;box-shadow:0 0 12px var(--text-4);transition:width .3s;display:block}#loading .label{color:var(--text-2);letter-spacing:.08em;font-size:13px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:none}}.hidden{display:none!important}.muted{color:var(--text-2)}.stamina{background:var(--bg-6);color:var(--text-6);border-radius:999px;grid-area:2/1/auto/3;place-self:start end;align-items:center;gap:.6vh;margin:.4vh .6vh 0 0;padding:.3vh .8vh;font-size:clamp(9px,2.4vh,12px);font-weight:600;display:flex}.stamina-label{white-space:nowrap}.stamina-bar{background:var(--bg-3);border-radius:999px;width:clamp(48px,13vh,110px);height:.9vh;min-height:5px;overflow:hidden}.stamina-bar>i{background:var(--bg-4);width:100%;height:100%;transition:width .2s linear;display:block}.stamina.low .stamina-bar>i{background:var(--text-5)}.corner-tools{top:calc(env(safe-area-inset-top) + .6vh);right:calc(env(safe-area-inset-right) + 1.2vh);pointer-events:auto;gap:.8vh;display:flex;position:absolute}.icon-btn{border:1px solid var(--edge);background:var(--bg-6);width:clamp(44px,9vh,52px);height:clamp(44px,9vh,52px);color:var(--text-6);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:50%;font-size:clamp(13px,2vh,20px);line-height:1}.icon-btn:active{background:var(--bg-4);color:var(--text-6)}.icon-btn.on{background:var(--bg-4);color:var(--text-6);border-color:var(--bg-4)}.banner{left:50%;top:calc(env(safe-area-inset-top) + .6vh);background:var(--bg-6);color:var(--text-6);border:1px solid var(--edge-strong);border-left:.6vh solid var(--bg-4);letter-spacing:.06em;white-space:nowrap;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:1vh;padding:.6vh 2.4vh;font-size:clamp(14px,3.4vh,28px);font-weight:800;animation:.22s ease-out banner-in;position:absolute;transform:translate(-50%)}@keyframes banner-in{0%{opacity:0;transform:translate(-50%,-40%)scale(.86)}to{opacity:1;transform:translate(-50%)scale(1)}}.menu-scrim{pointer-events:auto;padding:max(2.4vh, env(safe-area-inset-top)) max(3vw, env(safe-area-inset-right)) max(2.4vh, env(safe-area-inset-bottom)) max(3vw, env(safe-area-inset-left));background:radial-gradient(ellipse 90% 70% at 50% 45%, transparent 0%, var(--bg-6) 75%), linear-gradient(180deg, color-mix(in srgb, var(--bg-1) 70%, transparent), color-mix(in srgb, var(--bg-1) 35%, transparent) 40%, color-mix(in srgb, var(--bg-1) 88%, transparent));justify-content:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0;overflow-y:auto}.menu-glow{pointer-events:none;background:radial-gradient(ellipse 40% 50% at 18% 48%, color-mix(in srgb, var(--home-kit,var(--bg-4)) 22%, transparent), transparent 70%), radial-gradient(ellipse 40% 50% at 82% 48%, color-mix(in srgb, var(--bg-5) 22%, transparent), transparent 70%);position:absolute;top:0;bottom:0;left:0;right:0}#ui-root:has(.menu-scrim:not(.hidden)) :-webkit-any(#hud-top,#input-layer,.tutorial){visibility:hidden}#ui-root:has(.menu-scrim:not(.hidden)) :is(#hud-top,#input-layer,.tutorial){visibility:hidden}.menu-shell{flex-direction:column;gap:2.2vh;width:min(980px,100%);height:100%;max-height:900px;margin:auto 0;display:flex;position:relative}.menu-scrim.enter .menu-hero{animation:.7s cubic-bezier(.2,.8,.2,1) both rise-in}.menu-scrim.enter .matchup-side.home{animation:.7s cubic-bezier(.2,.8,.2,1) .1s both slide-l}.menu-scrim.enter .matchup-side.away{animation:.7s cubic-bezier(.2,.8,.2,1) .1s both slide-r}.menu-scrim.enter .matchup-vs{animation:.6s cubic-bezier(.3,1.6,.5,1) .35s both vs-pop}.menu-scrim.enter .team-rail{animation:.7s cubic-bezier(.2,.8,.2,1) .25s both rise-in}.menu-scrim.enter .menu-actions{animation:.7s cubic-bezier(.2,.8,.2,1) .35s both rise-in}.menu-hero{text-align:center}.menu-title{letter-spacing:.14em;background:linear-gradient(180deg, var(--text-6) 15%, var(--text-2) 52%, var(--text-6) 58%, var(--text-1) 90%);color:#0000;filter:drop-shadow(0 6px 22px #0000008c);-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(30px,8.5vh,76px);font-weight:900;line-height:1.05}.menu-subtitle{color:var(--text-3);letter-spacing:.5em;text-transform:uppercase;margin:.8vh 0 0;font-size:clamp(10px,1.9vh,15px);font-weight:700}.menu-subtitle:before,.menu-subtitle:after{content:"";vertical-align:middle;background:linear-gradient(90deg, transparent, var(--text-3), transparent);width:5vw;height:1px;margin:0 1.2vw;display:inline-block}.matchup{grid-template-columns:1fr auto 1fr;align-items:center;gap:2vw;display:grid}.matchup-side{cursor:pointer;border:1px solid var(--edge);background:linear-gradient(160deg, color-mix(in srgb, var(--kit-1) 30%, transparent), transparent 55%), linear-gradient(0deg, color-mix(in srgb, var(--kit-2) 22%, transparent), transparent 50%), color-mix(in srgb, var(--bg-2) 72%, transparent);-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;align-items:center;gap:.8vh;padding:2vh 1.6vw 1.6vh;transition:transform .25s,border-color .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden}.matchup-side:after{content:"";background:linear-gradient(105deg, transparent 42%, color-mix(in srgb, var(--text-6) 14%, transparent) 50%, transparent 58%);pointer-events:none;position:absolute;top:-40%;bottom:-40%;left:-60%;right:-60%;transform:translate(-60%)}.matchup-side.swap:after{animation:.9s sheen}.matchup-side.swap .matchup-crest{animation:.5s cubic-bezier(.3,1.5,.5,1) crest-in}.matchup-side.editing{border-color:var(--text-3);box-shadow:0 0 0 1px var(--text-3), 0 0 28px color-mix(in srgb, var(--text-3) 35%, transparent), var(--shadow);transform:translateY(-3px)}.matchup-tag{letter-spacing:.3em;color:var(--text-2);font-size:clamp(10px,1.6vh,13px);font-weight:800}.matchup-side.editing .matchup-tag{color:var(--text-3)}.matchup-info{flex-direction:column;align-items:center;gap:.6vh;display:flex}.matchup-name{color:var(--text-1);text-align:center;text-shadow:0 2px 10px #00000080;font-size:clamp(15px,3.4vh,28px);font-weight:800}.matchup-meta{color:var(--text-2);align-items:baseline;gap:.7vw;font-size:clamp(10px,1.7vh,14px);display:flex}.matchup-ovr{color:var(--text-3);margin-right:.8vw;font-size:clamp(16px,3.2vh,26px);font-weight:900}.matchup-nav{pointer-events:none;justify-content:space-between;align-items:center;padding:0 .4vw;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.nav-btn{pointer-events:auto;border:1px solid var(--edge);background:var(--bg-6);width:44px;height:44px;color:var(--text-1);cursor:pointer;border-radius:50%;font-size:26px;line-height:1;transition:background .2s,transform .15s}.nav-btn:hover{background:var(--bg-3)}.nav-btn:active{transform:scale(.9)}.matchup-vs{color:var(--text-6);letter-spacing:.04em;text-shadow:0 0 24px color-mix(in srgb, var(--text-3) 80%, transparent), 0 4px 0 color-mix(in srgb, var(--text-3) 70%, transparent);font-size:clamp(28px,8vh,68px);font-style:italic;font-weight:900}.crest{aspect-ratio:.86;clip-path:polygon(50% 0,100% 12%,100% 58%,50% 100%,0 58%,0 12%);background:linear-gradient(160deg, color-mix(in srgb, var(--text-6) 35%, transparent), transparent 40%), linear-gradient(90deg, var(--kit-1) 0 50%, var(--kit-2) 50% 100%);filter:drop-shadow(0 6px 14px #00000080);place-items:center;display:grid;position:relative}.crest:before{content:"";clip-path:inherit;background:linear-gradient(90deg, var(--kit-1) 0 50%, var(--kit-2) 50% 100%);border:0;position:absolute;top:7%;bottom:7%;left:7%;right:7%;box-shadow:inset 0 0 0 100px #00000014}.crest-abbr{letter-spacing:.06em;color:var(--text-6);-webkit-text-stroke:1px #0000008c;text-shadow:0 2px 4px #0009;font-weight:900;position:relative}.crest.lg{width:clamp(56px,15vh,120px)}.crest.lg .crest-abbr{font-size:clamp(14px,3.6vh,30px)}.crest.sm{flex:none;width:clamp(26px,5vh,38px)}.crest.sm .crest-abbr{font-size:clamp(7px,1.3vh,10px)}.team-rail{border:1px solid var(--edge);background:color-mix(in srgb, var(--bg-2) 66%, transparent);-webkit-backdrop-filter:blur(10px);border-radius:16px;flex-direction:column;flex:auto;min-height:90px;padding:1.4vh 1.2vw 1.6vh;display:flex}.team-rail-head{letter-spacing:.25em;color:var(--text-3);margin:0 0 1vh;font-size:clamp(11px,1.8vh,14px);font-weight:800}.team-grid{flex:auto;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-content:start;gap:.9vh .8vw;min-height:0;padding:2px;display:grid;overflow-y:auto}.team-card{border:1px solid var(--edge);background:color-mix(in srgb, var(--bg-3) 75%, transparent);min-height:44px;color:var(--text-1);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:.7vw;padding:.5vh .8vw;font-size:clamp(11px,1.8vh,14px);transition:transform .15s,background .2s,border-color .2s;display:flex}.team-card:hover{border-color:var(--edge-strong);transform:translateY(-2px)}.team-card.other{opacity:.5}.team-card.on{border-color:var(--text-3);background:color-mix(in srgb, var(--text-3) 18%, var(--bg-3));box-shadow:0 0 14px color-mix(in srgb, var(--text-3) 35%, transparent);opacity:1}.team-card-name{flex:1;font-weight:600;line-height:1.2}.team-card-ovr{color:var(--text-3);font-weight:900}.menu-actions{flex-direction:column;align-items:center;gap:1.2vh;display:flex}.menu-actions-row{flex-wrap:wrap;justify-content:center;gap:1vw;display:flex}.play-btn{letter-spacing:.3em;background:linear-gradient(180deg, color-mix(in srgb, var(--bg-4) 75%, var(--text-6)), var(--bg-4) 55%);min-width:min(380px,80vw);min-height:52px;box-shadow:0 0 0 1px color-mix(in srgb, var(--text-4) 60%, transparent), 0 8px 30px color-mix(in srgb, var(--bg-4) 60%, transparent);border-radius:999px;font-size:clamp(16px,3vh,22px);font-weight:900;transition:transform .15s,box-shadow .2s;position:relative;overflow:hidden}.play-btn:after{content:"";background:linear-gradient(105deg, transparent 35%, color-mix(in srgb, var(--text-6) 35%, transparent) 50%, transparent 65%);animation:3s ease-in-out 1.2s infinite sheen;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}.play-btn:hover{transform:translateY(-2px)scale(1.02)}.play-btn:active{transform:scale(.97)}.btn.ghost{background:var(--bg-6);border-color:var(--edge-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;min-width:140px}.btn.wide{width:100%;min-height:48px;font-size:clamp(14px,2.2vh,19px)}.kickoff-intro{z-index:25;pointer-events:none;background:radial-gradient(ellipse at center, var(--bg-6), transparent 75%);flex-direction:column;justify-content:center;align-items:center;gap:2vh;animation:2.8s forwards intro-fade;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.intro-sweep{background:linear-gradient(90deg, transparent, var(--bg-6) 20%, var(--bg-6) 80%, transparent);border-top:2px solid var(--text-3);border-bottom:2px solid var(--text-3);height:26vh;animation:.5s cubic-bezier(.2,.8,.2,1) both sweep-in;position:absolute;top:50%;left:0;right:0;transform:translateY(-58%)skewY(-4deg)}.intro-row{align-items:center;gap:5vw;display:flex;position:relative}.intro-side{flex-direction:column;align-items:center;gap:1vh;display:flex}.intro-side.home{animation:.6s cubic-bezier(.2,.8,.2,1) .15s both slide-l}.intro-side.away{animation:.6s cubic-bezier(.2,.8,.2,1) .15s both slide-r}.intro-name{color:var(--text-6);text-shadow:0 2px 10px #000000b3;font-size:clamp(14px,3.4vh,28px);font-weight:900}.intro-vs{color:var(--text-6);text-shadow:0 0 30px var(--text-3), 0 4px 0 var(--text-3);font-size:clamp(30px,10vh,84px);font-style:italic;font-weight:900;animation:.6s cubic-bezier(.3,1.6,.5,1) .5s both vs-pop}.intro-caption{color:var(--text-3);letter-spacing:.6em;font-size:clamp(12px,2.4vh,18px);font-weight:800;animation:.5s .8s both rise-in;position:relative}@keyframes slide-l{0%{opacity:0;transform:translate(-12vw)}to{opacity:1;transform:none}}@keyframes slide-r{0%{opacity:0;transform:translate(12vw)}to{opacity:1;transform:none}}@keyframes vs-pop{0%{opacity:0;transform:scale(2.6)}to{opacity:1;transform:none}}@keyframes sheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes crest-in{0%{opacity:0;transform:scale(.6)rotate(-8deg)}to{opacity:1;transform:none}}@keyframes sweep-in{0%{transform:translateY(-58%)skewY(-4deg)scaleX(0)}to{transform:translateY(-58%)skewY(-4deg)scaleX(1)}}@keyframes intro-fade{0%,78%{opacity:1}to{opacity:0}}@media (max-height:480px){.menu-shell{gap:1.4vh}.menu-subtitle{margin-top:.2vh}.matchup-side{gap:.4vh;padding:1.2vh 1vw 1vh}.menu-subtitle{display:none}.menu-title{font-size:clamp(22px,9vh,40px)}.crest.lg{width:clamp(40px,13vh,64px)}.matchup-side{flex-flow:wrap;justify-content:center;column-gap:1.6vw;padding:1vh 56px}.matchup-tag{text-align:center;width:100%}.matchup-name{font-size:clamp(13px,4.6vh,20px)}.team-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.play-btn{min-height:44px}.menu-actions{flex-direction:row;justify-content:center;gap:1vw}.play-btn{min-width:34vw}.btn.ghost{min-width:0}}@media (prefers-reduced-motion:reduce){.menu-scrim *,.kickoff-intro,.loading-ball,.play-btn:after{animation:none!important}}.settings{flex-direction:column;gap:14px;display:flex}.settings-row{justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex}.settings-label{color:var(--text-2);font-size:15px}.settings-value{align-items:center;gap:8px;display:flex}.seg{border:1px solid var(--edge);border-radius:9px;display:flex;overflow:hidden}.seg-btn{background:var(--bg-3);min-width:46px;min-height:38px;color:var(--text-2);cursor:pointer;border:0;padding:0 12px;font-size:14px}.seg-btn.on{background:var(--bg-4);color:var(--text-6)}.switch{border:1px solid var(--edge);background:var(--bg-3);width:58px;min-height:38px;color:var(--text-2);cursor:pointer;border-radius:999px;font-size:16px}.switch.on{background:var(--bg-4);color:var(--text-6);border-color:var(--bg-4)}.range{width:min(220px,46vw);accent-color:var(--bg-4);background:0 0}.value-grow{flex:1;min-width:0}.cam-range{flex:1;min-width:80px;height:44px}.range-end{color:var(--text-2);white-space:nowrap;font-size:13px}.settings-block h3{color:var(--text-2);align-items:center;gap:8px;margin:6px 0 8px;font-size:15px;display:flex}.badge{background:var(--bg-3);color:var(--text-2);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500}.binding-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.binding-list li{color:var(--text-2);align-items:center;gap:10px;font-size:14px;display:flex}.binding-list kbd{background:var(--bg-3);border:1px solid var(--edge);min-width:90px;color:var(--text-1);text-align:center;border-radius:6px;padding:4px 8px;font-family:inherit;font-size:12px}.pause-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;width:100%;display:flex}.pause-body{text-align:center}.pause-score{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:clamp(15px,2.3vh,20px);font-weight:600}.stats-block{text-align:left;margin-top:1.2vh}.stats-block h3{color:var(--text-2);text-align:center;letter-spacing:.04em;margin:0 0 .6vh;font-size:clamp(12px,1.7vh,15px);font-weight:600}.stats-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:clamp(12px,1.75vh,15px)}.stats-table td{border-bottom:1px solid var(--edge);color:var(--text-2);padding:.5vh .6vh}.stats-table tr:last-child td{border-bottom:none}.stats-table .stats-val{width:27%;color:var(--text-1);font-weight:600}.stats-table .stats-val:first-child{text-align:right}.stats-table .stats-name{text-align:center;color:var(--text-2)}.tutorial{left:50%;top:calc(env(safe-area-inset-top) + max(17vh, 64px));background:var(--bg-6);border:1px solid var(--edge);max-width:min(60vw,560px);color:var(--text-6);pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;align-items:center;gap:1.2vh;padding:.6vh .6vh .6vh 1.6vh;font-size:clamp(12px,1.9vh,16px);display:flex;position:absolute;transform:translate(-50%)}.tutorial-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tutorial-skip{border:1px solid var(--edge);background:var(--bg-3);min-height:44px;color:var(--text-2);cursor:pointer;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:0 12px;font-size:clamp(11px,1.6vh,14px)}@media (max-height:420px){.banner{font-size:clamp(13px,4.4vh,18px)}}.rotate-gate{z-index:40;background:var(--bg-1);pointer-events:auto;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.rotate-card{text-align:center;max-width:320px;color:var(--text-1)}.rotate-icon{color:var(--text-4);margin-bottom:12px;font-size:56px;line-height:1}.rotate-card h2{margin:0 0 8px;font-size:20px}.rotate-card p{color:var(--text-2);margin:0;font-size:14px}.rotate-card .btn{margin-top:18px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.setpiece-timer{left:50%;top:calc(env(safe-area-inset-top) + 6vh);background:var(--bg-6);color:var(--text-6);pointer-events:none;border-radius:1vh;padding:.4vh 1.6vh;font-size:clamp(12px,2.6vh,20px);position:absolute;transform:translate(-50%)}.setpiece-timer.hidden{display:none}
