:root{--ink:#0b1113;--panel:#131b1e;--orange:#ff913e;--orange-light:#ffc783;--mint:#a4ead0;--bone:#f0ecd9;--muted:#99aaa7;--line:rgba(211,226,209,.14);--font:'DM Sans',Arial,sans-serif;--display:'Barlow Condensed',Impact,sans-serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--ink);color:var(--bone);font-family:var(--font);font-size:14px;-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button,a{-webkit-user-select:none;user-select:none}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--mint);outline-offset:5px}button:disabled{opacity:.45;cursor:default}button,input,select{touch-action:manipulation}button{border:0}button:active{transform:translateY(1px)}.hidden,[hidden]{display:none!important}#game{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none;outline:0}#vignette{position:fixed;inset:0;pointer-events:none;box-shadow:inset 0 0 150px rgba(0,0,0,.4);z-index:1}#screens{position:fixed;inset:0;z-index:5}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--display)}.eyebrow,.field-label{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--mint)}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow i,.scene-live i,.option-note i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 15px rgba(164,234,208,.65)}.topbar{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:1.2px;font-size:16px}.brand svg{width:37px;height:37px;color:var(--orange)}.brand>span>span{color:var(--orange)}.brand small{display:block;font-size:7px;color:var(--muted);font-weight:600;letter-spacing:2.4px;margin-top:3px}.topbar nav{display:flex;gap:30px;align-items:center}.text-button{display:inline-flex;gap:10px;align-items:center;color:var(--muted);background:none;padding:8px 0;font-size:11px;font-weight:600;transition:color .15s}.text-button:hover{color:var(--bone)}.more-games{border-left:1px solid var(--line);padding-left:28px;color:var(--bone)}.more-games span{color:var(--orange);font-size:17px}.back-button{font-size:14px}.back-button span{font-size:11px}.button{display:flex;align-items:center;justify-content:space-between;padding:18px 23px;min-height:56px;border-radius:4px;font-size:13px;font-weight:700;line-height:1.2;gap:25px;transition:background .16s,box-shadow .16s,transform .16s;text-align:left}.button.primary{background:var(--orange);color:#201307;box-shadow:0 8px 35px rgba(255,145,62,.09)}.button.primary:hover{background:#ffa658;box-shadow:0 8px 35px rgba(255,145,62,.23)}.button.primary small{display:block;font-size:9px;font-weight:400;margin-top:6px;color:#4f2e15}.button.secondary{background:rgba(29,40,42,.65);border:1px solid rgba(228,239,221,.2);color:var(--bone)}.button.secondary:hover{background:rgba(54,65,63,.85);border-color:rgba(228,239,221,.4)}.button.plain{background:transparent;color:var(--muted);border:1px solid var(--line)}.button-arrow{font-size:23px;font-weight:400}.menu-screen{width:100%;height:100%;position:relative;background:linear-gradient(90deg,rgba(9,15,16,.98) 0%,rgba(9,15,16,.94) 28%,rgba(9,15,16,.72) 46%,rgba(9,15,16,.1) 68%),linear-gradient(0deg,rgba(8,13,14,.8),transparent 25%)}.menu-screen::after{content:'';position:absolute;left:51%;top:18%;height:56%;width:1px;background:linear-gradient(transparent,var(--line),transparent);pointer-events:none}.menu-hero{position:absolute;left:5%;top:20%;width:43%;max-width:600px}.game-title{font-size:clamp(70px,8vw,126px);font-weight:800;line-height:.86;letter-spacing:-1px;margin-top:24px}.game-title>span{color:var(--orange)}.game-title small{display:block;font-weight:600;font-size:.25em;letter-spacing:7px;margin-top:17px;color:var(--mint)}.game-title.art-wrapper{margin:19px 0 0;max-width:510px;min-height:100px}.title-art{display:block;width:100%;height:auto;max-height:32vh;object-fit:contain;object-position:left center;filter:drop-shadow(0 7px 12px #0006)}.title-fallback>span{color:var(--orange)}.hero-description{font-size:12px;line-height:1.8;color:#b3c0b7;margin-top:25px}.menu-actions{display:flex;flex-direction:column;gap:10px;margin-top:25px;max-width:360px}.menu-actions .primary{min-height:71px}.menu-actions .secondary{min-height:51px}.continue-button{background:none;color:var(--mint);font-size:10px;text-align:left;padding:5px 0}.menu-records{display:flex;gap:31px;margin-top:31px}.menu-records>div{border-right:1px solid var(--line);padding-right:27px}.menu-records>div:last-child{border:0;padding-right:0}.menu-records b{font-family:var(--display);font-size:23px;display:block;line-height:1.1;font-weight:600;color:var(--bone)}.menu-records span{font-size:7px;letter-spacing:1.25px;color:var(--muted);display:block;margin-top:5px}.scene-label{position:absolute;right:5%;bottom:14%;text-align:right;pointer-events:none}.scene-live{font-size:8px;letter-spacing:1.9px;color:var(--mint);font-weight:700;display:flex;gap:8px;justify-content:flex-end;align-items:center}.scene-label h2{font-size:34px;line-height:.98;font-weight:600;margin-top:14px;letter-spacing:.5px;text-shadow:0 2px 10px #000}.scene-label p{color:#aebfb8;font-size:9px;margin-top:12px;text-shadow:0 1px 4px #000}.scene-rule{margin:15px 0 0 auto;width:54px;height:2px;background:var(--orange)}.menu-bottom{position:absolute;left:5%;right:5%;bottom:25px;display:flex;align-items:center;gap:20px;padding-top:17px;border-top:1px solid var(--line)}.menu-bottom>span:first-child{font-size:8px;letter-spacing:1.5px;color:var(--muted);flex:1}.menu-bottom i{color:var(--orange);font-style:normal;margin:0 11px}.menu-bottom .text-button{font-size:9px}.edition{font-size:7px;color:#637b77;letter-spacing:1px;margin-left:20px}.page-screen{width:100%;height:100%;overflow:auto;background:linear-gradient(120deg,rgba(10,17,18,.98),rgba(11,18,20,.95));padding-bottom:35px;scrollbar-color:#46554e #0b1113;scrollbar-width:thin}.page-content{max-width:1190px;margin:13px auto 0;padding:0 30px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:31px;gap:20px}.page-heading h1,.page-content>h1{font-weight:700;font-size:clamp(37px,4.4vw,64px);line-height:1;margin-top:12px;letter-spacing:.2px}.page-heading h1 span,.page-content>h1 span{color:var(--orange)}.page-heading p{font-size:11px;line-height:1.7;color:var(--muted);margin-top:12px}.step-label{font-size:9px;letter-spacing:1.5px;color:var(--muted);padding-top:30px;white-space:nowrap}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.team-option{position:relative;text-align:left;border:1px solid var(--line);border-radius:5px;padding:26px 21px 19px;background:linear-gradient(160deg,rgba(28,39,41,.85),rgba(17,26,27,.7));min-height:302px;transition:background .16s,border .16s;--team:var(--orange)}.team-option:hover{background:linear-gradient(160deg,rgba(40,53,54,.85),rgba(22,31,32,.9));border-color:var(--team)}.team-option.selected{border-color:var(--team);background:linear-gradient(160deg,color-mix(in srgb,var(--team) 12%,#142022),#121c1c);box-shadow:inset 0 2px var(--team)}.team-number{position:absolute;top:18px;right:17px;font-family:var(--display);font-size:18px;color:#687a71}.crest{display:inline-flex;justify-content:center;align-items:center;width:76px;height:84px;background:linear-gradient(150deg,color-mix(in srgb,var(--team) 17%,#152324),#172326);clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%);position:relative;border-top:2px solid var(--team);color:var(--team);filter:drop-shadow(0 0 8px #0003)}.crest>span{font-size:40px;filter:drop-shadow(0 4px 6px #0005);padding-bottom:8px}.team-option h2{font-size:24px;font-weight:600;margin-top:21px;line-height:1.1;letter-spacing:.2px}.team-skill{display:block;color:var(--team);font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-top:10px}.team-option p{font-size:10px;color:var(--muted);line-height:1.7;margin-top:9px;min-height:34px}.team-traits{display:flex;gap:18px;margin-top:20px}.team-traits>span{font-size:7px;color:#95a99e;letter-spacing:1px;flex:1}.team-traits i{display:block;height:3px;background:#37433e;margin-top:6px;position:relative}.team-traits i::after{content:'';position:absolute;left:0;top:0;bottom:0;width:var(--stat);background:var(--team)}.team-select-label{display:block;border-top:1px solid var(--line);font-size:8px;font-weight:700;letter-spacing:1px;margin-top:20px;padding-top:14px;color:#8a9e93}.selected .team-select-label{color:var(--team)}.setup-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-top:33px}.arena-selection{flex:1}.arena-options{display:flex;gap:10px;margin-top:13px}.arena-option{background:#182123;border:1px solid var(--line);border-radius:3px;text-align:left;padding:12px 15px;color:#bac5bc;font-size:10px;flex:1;line-height:1.4}.arena-option small{display:block;font-size:7px;letter-spacing:1.3px;color:#778e82;margin-bottom:5px}.arena-option.selected{border-color:var(--mint);color:var(--bone)}.arena-option.selected small{color:var(--mint)}.setup-confirm{min-width:250px;max-width:300px}.setup-confirm>span{display:block;font-size:7px;letter-spacing:1px;color:var(--muted);margin-bottom:13px;text-align:center}.setup-confirm>span i{font-style:normal;margin:0 8px;color:var(--orange)}.setup-confirm .button{width:100%}.cup-format{display:flex;gap:15px;align-items:center;margin-top:15px;font-size:10px;font-weight:600;letter-spacing:1px}.cup-format i{font-style:normal;color:var(--orange);font-size:20px}.arena-selection>p{font-size:10px;color:var(--muted);margin-top:10px}.options-content{max-width:1050px}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.option-group{border-top:1px solid var(--line);padding-top:20px}.option-group h2{font-family:var(--font);font-size:13px;font-weight:700;margin-bottom:12px}.option-group h2>span{font-size:9px;color:var(--orange);margin-right:12px;letter-spacing:1px}.option-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:65px;border-bottom:1px solid rgba(211,226,209,.07);padding:9px 0}.option-row>label:not(.switch){font-size:11px;line-height:1.5}.option-row label small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.option-row select{background:#1a2526;color:var(--bone);border:1px solid #354442;padding:10px 30px 10px 12px;font-size:10px;min-width:130px;border-radius:3px}.option-row input[type=range]{width:155px;accent-color:var(--orange);cursor:pointer}.switch{position:relative;display:inline-block;width:39px;height:22px;flex-shrink:0;cursor:pointer}.switch input{opacity:0;width:100%;height:100%;margin:0;position:absolute;z-index:2;cursor:pointer}.switch span{position:absolute;inset:0;background:#394542;border-radius:30px;transition:background .15s}.switch span::before{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;background:#aab6ac;border-radius:50%;transition:transform .15s}.switch input:checked+span{background:var(--mint)}.switch input:checked+span::before{transform:translateX(17px);background:#17221e}.switch input:focus-visible+span{outline:2px solid var(--mint);outline-offset:5px}.ads-option{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:35px}.ads-option>h2{grid-column:1/-1}.ads-option .option-row{border:0}.ads-option>p{font-size:10px;color:var(--muted);line-height:1.7}.ads-option strong{color:var(--bone);font-weight:600}.option-note{display:flex;align-items:center;gap:8px;font-size:9px;color:var(--mint);margin-top:7px}.option-note i{width:4px;height:4px}.page-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:26px;padding-top:23px}.page-footer .button{min-width:170px}.page-footer .text-button{font-size:10px}.controls-content{max-width:1120px}.control-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:35px}.controls-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.control-row{display:flex;gap:14px;border-top:1px solid var(--line);padding:19px 0;align-items:flex-start}.control-row kbd{font-family:var(--font);display:block;font-size:8px;color:var(--mint);border:1px solid #3e554c;padding:7px 8px;border-radius:3px;line-height:1.5;min-width:42px;text-align:center;max-width:96px}.control-row h2{font-family:var(--font);font-size:11px;font-weight:600}.control-row p{font-size:9px;color:var(--muted);line-height:1.7;margin-top:6px}.tips-panel{background:linear-gradient(140deg,#1a2b29,#162020);border:1px solid #33483f;border-radius:5px;padding:25px}.tips-panel h2{font-size:32px;line-height:1.04;color:var(--mint);margin-top:18px;font-weight:600}.tips-panel>p{font-size:10px;color:var(--muted);line-height:1.75;margin-top:18px}.tips-panel strong{color:var(--bone);font-weight:600}.mobile-note{display:flex;gap:12px;border-top:1px solid var(--line);padding-top:16px;margin-top:19px}.mobile-note span{color:var(--orange);font-size:25px}.mobile-note p{font-size:9px;line-height:1.7;color:var(--muted)}.muted{color:var(--muted);font-size:10px}.credits-content{max-width:950px;padding-top:35px}.credits-content>h1{font-size:80px;margin-top:20px}.credits-intro{font-size:17px;color:var(--muted);line-height:1.8;margin-top:24px}.credit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:35px 0}.credit-grid>div{border-top:1px solid var(--line);padding-top:22px}.credit-grid h2{font-family:var(--font);font-size:11px}.credit-grid p{font-size:10px;line-height:1.9;color:var(--muted);margin-top:13px}.credit-grid a{display:block;font-size:10px;color:var(--mint);margin-top:12px}.credits-content>.button{max-width:250px}.modal-screen{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:rgba(8,13,15,.7);backdrop-filter:blur(7px);overflow:auto;padding:25px}.modal-panel{background:linear-gradient(135deg,#1a282a,#101a1c);border:1px solid #39433b;border-top:2px solid var(--orange);border-radius:5px;padding:39px;width:420px;max-width:100%;box-shadow:0 18px 100px #0006}.pause-panel h1{font-size:72px;line-height:.94;font-weight:700;margin-top:20px}.pause-panel h1 span{color:var(--orange)}.pause-panel p{font-size:11px;color:var(--muted);margin:20px 0 25px}.pause-panel .button{width:100%;margin-top:10px}.pause-links{display:flex;justify-content:space-between;margin-top:23px;gap:10px}.pause-links .text-button{font-size:9px}.result-panel{position:relative;background:linear-gradient(135deg,#1c2c2d,#111b1d);border:1px solid #3b4c44;border-radius:5px;max-width:820px;width:100%;padding:35px 55px;box-shadow:0 20px 100px #0005}.result-heading{text-align:center}.result-heading .eyebrow{justify-content:center}.result-heading h1{font-size:54px;line-height:1;margin-top:18px;color:var(--orange);font-weight:700}.result-heading p{font-size:10px;color:var(--muted);line-height:1.7;margin-top:12px}.result-score{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;margin-top:24px}.result-score>div{text-align:center;flex:1}.result-score .crest{width:58px;height:64px}.result-score .crest>span{font-size:30px}.result-score strong{display:block;font-size:11px;margin-top:12px}.result-score small{display:block;font-size:7px;letter-spacing:2px;color:var(--muted);margin-top:7px}.result-score>b{font-family:var(--display);font-size:70px;white-space:nowrap;min-width:140px;text-align:center}.result-score>b>span{color:#667d72;font-size:45px;font-weight:400;margin:0 13px}.result-stats{padding:16px 10px}.result-stats>div{display:flex;align-items:center;justify-content:space-between;margin-top:12px;font-size:11px}.result-stats b{min-width:45px;font-family:var(--display);font-size:18px;font-weight:600}.result-stats b:last-child{text-align:right}.result-stats span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.result-actions{display:flex;align-items:stretch;gap:10px;margin-top:22px}.result-actions .primary{flex:1}.result-actions .button{font-size:11px;padding:16px 20px;min-height:52px}.result-trophy{margin:16px auto -2px;color:var(--orange);width:43px}.result-trophy svg{display:block;width:100%;height:47px}.cup-trophy{color:var(--orange);width:65px;filter:drop-shadow(0 0 25px #ff913e55)}.cup-rounds{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:25px}.cup-round{border:1px solid var(--line);border-radius:4px;background:#172224;padding:27px 24px;position:relative}.cup-round.active{border-color:var(--orange);background:linear-gradient(160deg,#312719,#172224)}.cup-round.complete{border-color:#50765f}.round-number{font-family:var(--display);font-size:28px;color:#65796e;position:absolute;right:23px;top:21px}.cup-round.active .round-number{color:var(--orange)}.cup-round>small{font-size:7px;color:var(--muted);letter-spacing:1.3px}.cup-round h2{font-size:36px;font-weight:600;margin-top:15px}.cup-opponent{display:flex;gap:17px;align-items:center;margin-top:25px}.cup-opponent .crest{width:50px;height:58px;flex-shrink:0}.cup-opponent .crest>span{font-size:28px}.cup-opponent strong{font-size:11px;font-weight:600;line-height:1.5}.round-state{font-size:8px;color:#80978b;letter-spacing:1.2px;display:block;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.active .round-state{color:var(--orange)}.complete .round-state{color:var(--mint)}.cup-callout{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:28px;margin-top:36px}.cup-callout h2{font-size:27px;font-weight:600;margin-top:10px}.cup-callout h2 span{font-size:16px;color:var(--muted);padding:0 10px}.cup-callout p{font-size:10px;color:var(--muted);margin-top:10px}.cup-callout .button{min-width:250px}
/* Match overlay. All fields are updated in place so touch gestures stay stable. */
#hud{position:fixed;inset:0;pointer-events:none;z-index:3}.scoreboard{position:absolute;top:25px;left:50%;transform:translateX(-50%);display:flex;align-items:stretch;min-width:390px;border-radius:4px;overflow:hidden;background:rgba(11,21,23,.9);border:1px solid rgba(169,216,183,.3);box-shadow:0 5px 30px #0004}.score-team{display:flex;align-items:center;gap:12px;padding:13px 21px;flex:1;font-size:11px}.score-team>span{font-size:22px}.score-team b{font-family:var(--display);font-size:17px;font-weight:600;letter-spacing:1.2px}.score-team.away{justify-content:flex-end}.score-center{background:#e6eed8;color:#182323;min-width:110px;padding:4px 16px 7px;text-align:center}.score-center>div{font-family:var(--display);font-size:29px;font-weight:600;line-height:1.1;display:flex;gap:16px;align-items:center;justify-content:center}.score-center>div>span{font-size:18px;color:#7b8f7a}.score-center>span{font-size:8px;font-weight:700;letter-spacing:2px}.match-label{position:absolute;left:50%;top:92px;transform:translateX(-50%);font-size:7px;letter-spacing:2px;color:#b4c6b5;text-shadow:0 1px 4px #000}.pause-button{position:absolute;right:25px;top:25px;display:flex;align-items:center;justify-content:center;gap:5px;width:43px;height:43px;border:1px solid #53685f;border-radius:4px;background:rgba(14,25,26,.8);pointer-events:auto}.pause-button>span{width:3px;height:13px;background:var(--bone)}.player-card{position:absolute;left:25px;bottom:72px;display:flex;gap:14px;align-items:center;background:rgba(12,22,24,.89);border:1px solid #426257;border-left:2px solid var(--orange);border-radius:3px;padding:13px 17px;min-width:253px}.player-icon{font-size:28px}.player-card small{display:block;font-size:6px;letter-spacing:1.5px;color:#9bbba4}.player-card strong{display:block;font-family:var(--display);font-size:16px;font-weight:600;letter-spacing:1px;margin-top:4px}.energy-track{height:3px;background:#344a40;width:145px;margin-top:10px}.energy-track i{display:block;height:100%;background:var(--mint);width:100%;transition:width .1s}.player-card>span{font-family:var(--display);font-size:20px;color:var(--mint);padding-left:5px}.skill-card{position:absolute;right:25px;bottom:72px;display:flex;align-items:center;gap:15px;background:rgba(12,22,24,.89);border:1px solid #426257;border-right:2px solid var(--mint);border-radius:3px;padding:12px 17px}.skill-key{border:1px solid #647c6f;border-radius:3px;font-family:var(--display);font-size:20px;padding:3px 10px;color:var(--mint)}.skill-card strong{display:block;font-family:var(--display);font-size:16px;letter-spacing:1px;font-weight:600}.skill-card small{display:block;font-size:7px;margin-top:6px;color:var(--muted)}.skill-orb{--energy:0deg;width:36px;height:36px;background:conic-gradient(var(--mint) var(--energy),#30433c 0);border-radius:50%;display:flex;align-items:center;justify-content:center}.skill-orb span{width:30px;height:30px;border-radius:50%;background:#142421;display:flex;align-items:center;justify-content:center;font-size:19px;color:#658473}.skill-orb.ready{box-shadow:0 0 18px #a4ead05c}.skill-orb.ready span{color:var(--mint)}.keyboard-hint{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:20px;white-space:nowrap;font-size:8px;color:#adc3b3;text-shadow:0 1px 5px #000}.keyboard-hint kbd{font-size:7px;font-family:var(--font);color:#dbe9d3;background:rgba(12,24,24,.8);border:1px solid #4b6454;padding:3px 5px;border-radius:2px;margin-right:4px}.frenzy-banner{position:absolute;left:50%;top:125px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#741f1dcf,transparent);color:#ffd5a8;font-family:var(--display);font-size:25px;letter-spacing:3px;text-align:center;padding:8px 50px;white-space:nowrap}.frenzy-banner small{display:block;font-family:var(--font);font-size:6px;letter-spacing:2px;margin-top:5px;color:#eabda3}.goal-banner{position:absolute;left:50%;top:37%;transform:translateX(-50%);font-family:var(--display);font-size:90px;text-shadow:0 0 30px #ffaf4777;color:var(--orange);text-align:center}.shot-charge{position:absolute;left:50%;bottom:95px;transform:translateX(-50%);text-align:center;width:150px}.shot-charge>span{font-size:7px;letter-spacing:2px;text-shadow:0 1px 4px #000}.shot-charge>div{background:#223731cc;border:1px solid #78907b;height:6px;width:100%;margin-top:8px}.shot-charge i{display:block;height:100%;width:0;background:var(--orange)}.touch-controls{display:none;position:absolute;bottom:20px;left:20px;right:20px;height:170px;pointer-events:none;touch-action:none}.joystick{position:absolute;left:13px;bottom:20px;width:115px;height:115px;border:1px solid #b6d3b655;border-radius:50%;background:rgba(17,32,31,.42);pointer-events:auto;touch-action:none}.joystick-knob{position:absolute;left:50%;top:50%;width:48px;height:48px;margin-left:-24px;margin-top:-24px;background:rgba(178,216,183,.3);border:1px solid #adcab184;border-radius:50%;box-shadow:inset 0 0 15px #ceecc81a}.joystick-cross::before,.joystick-cross::after{content:'';position:absolute;top:50%;left:50%;background:#bcdbb525}.joystick-cross::before{width:75px;height:1px;margin-left:-37.5px}.joystick-cross::after{width:1px;height:75px;margin-top:-37.5px}.touch-actions{position:absolute;right:0;bottom:0;width:250px;height:160px}.touch-actions>button{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#162927bf;border:1px solid #bdd8b676;border-radius:50%;width:54px;height:54px;font-family:var(--display);font-size:23px;pointer-events:auto;touch-action:none;color:var(--bone)}.touch-actions small{font-family:var(--font);font-size:6px;letter-spacing:.7px;margin-top:1px}.touch-actions .touch-shoot{width:67px;height:67px;right:0;bottom:21px;background:#ff913ed6;border-color:#ffc27f;color:#23160c;font-size:25px}.touch-pass{right:80px;bottom:7px}.touch-tackle{right:155px;bottom:7px}.touch-dodge{right:90px;bottom:80px}.touch-skill{right:18px;bottom:98px;color:var(--mint)!important}.touch-sprint{right:170px;bottom:85px;width:43px!important;height:43px!important;font-size:20px!important}#toast{position:fixed;left:50%;bottom:165px;transform:translate(-50%,10px);background:#122425ef;border:1px solid #6d9682;border-radius:3px;padding:14px 24px;color:var(--bone);font-size:11px;text-align:center;max-width:85vw;z-index:15;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;box-shadow:0 4px 20px #0005}#toast.visible{opacity:1;transform:translate(-50%,0)}.ad-test{position:fixed;inset:0;z-index:999;background:#000d;display:flex;align-items:center;justify-content:center;padding:30px}.ad-test>div{text-align:center;padding:40px;border:1px solid #ffdca9;background:#192627;border-radius:5px}.ad-test small{font-size:9px;letter-spacing:2px;color:var(--orange)}.ad-test h2{font-size:45px;margin-top:22px}.ad-test p{font-size:13px;margin:16px}.ad-test .button{width:100%;margin-top:25px;justify-content:center}.no-script{position:fixed;z-index:100;top:40%;left:10%;right:10%;padding:30px;text-align:center;background:#172323;border:1px solid var(--orange)}
/* Honest preloader; the application reports actual asset-loading progress. */
#loading{position:fixed;z-index:50;inset:0;background:radial-gradient(ellipse at 50% 30%,#253b31 0%,#0b1314 60%);display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity .3s;pointer-events:auto}#loading.finished{opacity:0;pointer-events:none}.loading-brand{position:absolute;top:8%;font-size:11px;font-weight:700;letter-spacing:3px;color:var(--bone)}.loading-brand span{display:block;text-align:center;font-size:7px;font-weight:400;letter-spacing:2px;color:var(--muted);margin-top:10px}.loading-mark{color:var(--orange);font-size:38px;margin-bottom:20px;animation:load-spin 6s linear infinite}.loading-brand+h1{margin:0}#loading h1{font-family:var(--display);font-size:74px;line-height:.92;text-align:center;font-weight:800}#loading h1 span{color:var(--orange)}.loading-subtitle{font-family:var(--display);font-size:18px;letter-spacing:6px;color:var(--mint);margin-top:14px}.load-track{width:280px;height:3px;background:#3b4d3f;margin-top:38px}.load-track i{height:100%;width:0;display:block;background:var(--orange);transition:width .2s}.load-meta{display:flex;width:280px;justify-content:space-between;font-size:8px;color:var(--muted);margin-top:12px}.load-meta b{color:var(--bone);font-weight:600}.loading-tip{font-size:9px;color:#7f9789;margin-top:45px;letter-spacing:.2px}@keyframes load-spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.menu-hero{max-width:670px}.game-title.art-wrapper{max-width:580px}.hero-description{font-size:14px}.menu-actions{max-width:410px}.topbar{height:120px}.brand{font-size:19px}.brand svg{width:44px;height:44px}.text-button{font-size:13px}.button{font-size:15px;min-height:65px}.menu-actions .primary{min-height:80px}.menu-actions .secondary{min-height:60px}.scene-label h2{font-size:43px}.menu-records{margin-top:40px}}
@media(max-height:770px) and (min-width:900px){.topbar{height:80px}.menu-hero{top:16%}.game-title.art-wrapper{margin-top:13px}.title-art{max-height:31vh}.hero-description{margin-top:15px;line-height:1.7}.menu-actions{margin-top:18px;gap:8px}.menu-actions .primary{min-height:60px}.menu-actions .secondary{min-height:45px}.menu-records{margin-top:20px}.menu-bottom{bottom:16px;padding-top:10px}.page-content{margin-top:4px}.page-heading{margin-bottom:24px}.team-option{min-height:275px;padding-top:19px}.team-option h2{margin-top:14px}.team-option p{font-size:9px}.crest{width:64px;height:72px}.crest>span{font-size:34px}.team-traits{margin-top:15px}.setup-bottom{margin-top:25px}.result-panel{padding-top:26px;padding-bottom:26px}}
@media(max-width:1000px){.topbar{padding:0 4%;height:85px}.topbar nav{gap:20px}.menu-hero{left:4%;width:47%;top:18%}.game-title{font-size:92px}.hero-description{font-size:11px}.menu-actions{max-width:310px}.scene-label{right:4%;bottom:15%}.scene-label h2{font-size:28px}.menu-bottom{left:4%;right:4%}.menu-bottom>span:first-child{letter-spacing:.8px;font-size:7px}.menu-bottom .edition{display:none}.page-content{padding:0 4%}.team-option{padding:20px 14px 16px}.team-option h2{font-size:21px}.team-option p{font-size:9px}.team-grid{gap:10px}.setup-bottom{gap:20px}.setup-confirm{min-width:210px}.arena-option{padding:11px 9px;font-size:9px}.arena-options{gap:7px}.control-layout{gap:22px}.control-row{gap:10px}.control-row kbd{max-width:75px}.tips-panel{padding:22px}.keyboard-hint{gap:12px}.player-card{min-width:220px;padding:11px 14px;gap:10px}.skill-card{gap:10px;padding:11px 14px}.skill-card strong{font-size:14px}.scene-label p{font-size:8px}}
@media(pointer:coarse){.touch-controls{display:block}.keyboard-hint{display:none}.player-card{bottom:205px;left:20px;padding:10px 12px;min-width:200px}.player-card strong{font-size:13px}.energy-track{width:115px}.player-card small{font-size:5px}.player-card>span{font-size:17px}.player-icon{font-size:23px}.skill-card{right:20px;bottom:205px;padding:10px 12px}.skill-key{display:none}.skill-card strong{font-size:13px}.skill-orb{width:30px;height:30px}.skill-orb span{width:25px;height:25px}.shot-charge{bottom:220px}}
@media(max-width:700px){.topbar{height:77px;padding:0 5%}.brand{font-size:13px;gap:8px}.brand svg{width:29px;height:29px}.brand small{font-size:5px;letter-spacing:1.6px}.topbar nav{gap:15px}.topbar .text-button{font-size:9px}.more-games{padding-left:0;border:0}.topbar nav .more-games{display:none}.menu-screen{background:linear-gradient(90deg,rgba(8,14,15,.92),rgba(8,14,15,.5)),linear-gradient(0deg,#091011 10%,transparent 70%);overflow:auto}.menu-screen::after{display:none}.menu-hero{left:6%;top:17%;width:74%;max-width:390px}.menu-hero>.eyebrow{font-size:7px;letter-spacing:1.3px}.game-title{font-size:83px}.title-art{max-height:28vh}.game-title.art-wrapper{margin-top:15px}.hero-description{font-size:10px;margin-top:18px;line-height:1.8}.menu-actions{margin-top:20px;max-width:280px}.menu-actions .primary{min-height:64px}.menu-actions .secondary{min-height:48px}.button{font-size:11px;padding:15px 19px;min-height:52px}.button.primary small{font-size:8px}.menu-records{gap:20px;margin-top:23px}.menu-records>div{padding-right:19px}.menu-records b{font-size:20px}.menu-records span{font-size:6px;letter-spacing:.7px}.scene-label{display:none}.menu-bottom{left:6%;right:6%;bottom:20px;gap:10px}.menu-bottom>span:first-child{font-size:6px;letter-spacing:.5px;max-width:180px;line-height:1.8}.menu-bottom i{margin:0 4px}.menu-bottom .text-button{font-size:8px;white-space:nowrap;margin-left:auto}.page-content{margin-top:8px;padding:0 5%}.page-heading{margin-bottom:22px;display:block}.page-heading h1,.page-content>h1{font-size:41px}.page-heading p{font-size:10px}.eyebrow{font-size:8px;letter-spacing:1.5px}.step-label{display:none}.team-grid{grid-template-columns:repeat(2,1fr);gap:11px}.team-option{padding:20px 15px 14px;min-height:260px}.team-number{font-size:15px;top:14px;right:13px}.team-option .crest{width:55px;height:62px}.team-option .crest>span{font-size:31px}.team-option h2{font-size:24px;margin-top:15px}.team-skill{font-size:8px;margin-top:7px}.team-option p{font-size:9px;min-height:45px}.team-traits{margin-top:11px;gap:12px}.team-select-label{font-size:7px;padding-top:12px;margin-top:15px}.setup-bottom{display:block;margin-top:25px}.arena-options{gap:7px;flex-wrap:wrap}.arena-option{padding:11px;font-size:9px;min-width:95px}.setup-confirm{margin-top:23px;max-width:100%;min-width:0}.setup-confirm .button{width:100%;justify-content:space-between}.setup-confirm>span{text-align:left}.cup-format{gap:12px;font-size:8px}.cup-format i{font-size:17px}.options-grid{grid-template-columns:1fr;gap:25px}.ads-option{display:block}.ads-option>p{margin-top:12px}.option-note{margin-top:13px}.option-row{min-height:62px}.option-group h2{font-size:12px}.page-footer{margin-top:25px;padding-top:20px}.page-footer .button{min-width:110px}.page-footer .text-button{max-width:180px;font-size:9px;line-height:1.7}.control-layout{display:block}.controls-grid{gap:0 18px}.control-row{display:block;padding:16px 0}.control-row kbd{display:inline-block;max-width:none;min-width:0;margin-bottom:10px;padding:5px 7px;font-size:7px}.control-row h2{font-size:11px}.control-row p{font-size:9px}.tips-panel{margin-top:12px}.tips-panel h2{font-size:29px}.credits-content{padding-top:12px}.credits-content>h1{font-size:63px}.credits-intro{font-size:13px}.credit-grid{grid-template-columns:1fr;gap:22px;margin:25px 0}.modal-screen{padding:20px;align-items:center}.modal-panel{padding:28px;max-width:350px}.pause-panel h1{font-size:61px}.pause-links{gap:7px}.pause-links .text-button{font-size:8px}.result-panel{padding:25px 22px}.result-heading h1{font-size:39px;line-height:1.05}.result-heading p{font-size:9px}.result-score{gap:10px;padding:22px 0;margin-top:22px}.result-score>b{font-size:52px;min-width:90px}.result-score>b>span{font-size:33px;margin:0 5px}.result-score strong{font-size:9px;line-height:1.5;max-width:100px;margin:10px auto 0}.result-score .crest{width:47px;height:55px}.result-score .crest>span{font-size:27px}.result-actions{flex-wrap:wrap;margin-top:16px;gap:8px}.result-actions .primary{width:100%;flex:none}.result-actions .secondary,.result-actions .plain{flex:1;justify-content:center;font-size:10px;padding:13px 10px;min-height:46px}.result-stats{padding:10px 0}.result-stats>div{margin-top:10px}.result-trophy{margin-top:15px}.cup-rounds{grid-template-columns:1fr;gap:13px;margin-top:20px}.cup-round{padding:20px}.cup-round h2{font-size:30px;margin-top:12px}.cup-opponent{margin-top:14px}.round-state{margin-top:17px;padding-top:13px;font-size:7px}.cup-trophy{display:none}.cup-callout{display:block;margin-top:25px;padding-top:23px}.cup-callout h2{font-size:24px;line-height:1.5}.cup-callout .button{width:100%;margin-top:23px}.scoreboard{top:16px;min-width:270px}.score-team{padding:11px 12px;gap:7px}.score-team>span{font-size:18px}.score-team b{font-size:13px;letter-spacing:.5px}.score-center{min-width:78px;padding:4px 12px}.score-center>div{font-size:25px;gap:12px}.score-center>span{font-size:7px;letter-spacing:1px}.pause-button{right:12px;top:17px;width:34px;height:34px;gap:4px}.pause-button>span{height:11px}.match-label{top:76px;font-size:6px;letter-spacing:1px;white-space:nowrap}.frenzy-banner{top:105px;font-size:19px;padding:7px 25px;letter-spacing:2px}.frenzy-banner small{font-size:5px}.keyboard-hint{display:none}.touch-controls{display:block;left:6px;right:10px;bottom:14px}.touch-actions{transform:scale(.84);transform-origin:right bottom}.joystick{left:14px;bottom:11px;width:102px;height:102px}.joystick-knob{width:43px;height:43px;margin-left:-21.5px;margin-top:-21.5px}.player-card{left:16px;bottom:184px;min-width:0;padding:8px 10px;gap:8px}.player-icon{font-size:21px}.player-card strong{font-size:12px;letter-spacing:.4px}.player-card small{font-size:5px;letter-spacing:.9px}.player-card>span{font-size:15px}.energy-track{width:101px;margin-top:7px;height:2px}.skill-card{right:15px;bottom:184px;min-width:0;padding:10px;gap:7px}.skill-card strong{font-size:12px;letter-spacing:.4px}.skill-card small{font-size:5px;max-width:100px;line-height:1.5;margin-top:4px}.skill-key{display:none}.skill-orb{width:27px;height:27px}.skill-orb span{width:22px;height:22px;font-size:16px}.shot-charge{bottom:242px;width:110px}.goal-banner{font-size:68px}#toast{bottom:275px;font-size:9px;padding:11px 17px;white-space:normal;line-height:1.6}.loading-brand{top:10%}#loading h1{font-size:65px}.loading-subtitle{font-size:16px;letter-spacing:4px}.loading-tip{font-size:8px}.load-track,.load-meta{width:250px}}
@media(max-width:450px){.menu-hero{width:83%;top:16%}.title-art{max-height:27vh}.menu-actions{max-width:280px}.menu-records{margin-top:21px}.topbar nav{gap:13px}.menu-bottom>span:first-child{max-width:180px}.score-team{padding:9px}.score-team b{font-size:12px}.scoreboard{min-width:254px;left:45%}.skill-card{right:12px}.player-card{left:12px}.player-card>span{display:none}.player-icon{font-size:19px}.player-card strong{font-size:11px}.skill-card strong{font-size:11px}.skill-orb{display:none}}
@media(max-height:550px) and (orientation:landscape){.topbar{height:64px}.brand svg{width:27px;height:27px}.brand{font-size:12px}.brand small{font-size:5px}.topbar nav{gap:22px}.menu-hero{top:20%;width:45%}.menu-hero>.eyebrow{font-size:7px}.title-art{max-height:27vh}.game-title.art-wrapper{margin-top:12px}.game-title{font-size:59px}.game-title small{letter-spacing:4px}.hero-description{font-size:9px;margin-top:13px}.menu-actions{margin-top:15px;gap:7px;flex-direction:row;flex-wrap:wrap;max-width:360px}.menu-actions .button{min-height:44px;font-size:10px;padding:10px 14px;gap:18px}.menu-actions .primary{flex:1.3}.menu-actions .secondary{flex:1}.menu-actions .primary small{font-size:7px;margin-top:4px}.menu-actions .button-arrow{font-size:18px}.continue-button{width:100%;font-size:8px}.menu-records{margin-top:16px;gap:20px}.menu-records b{font-size:18px}.menu-records span{font-size:5px}.menu-records>div{padding-right:18px}.scene-label{display:block;bottom:18%;right:5%}.scene-label h2{font-size:25px}.scene-live{font-size:6px}.scene-label p{font-size:7px}.scene-rule{margin-top:11px;width:38px}.menu-bottom{bottom:11px;padding-top:7px}.menu-bottom>span:first-child{font-size:6px}.menu-bottom .text-button{font-size:7px}.menu-bottom .edition{display:none}.page-content{margin-top:6px}.page-heading{margin-bottom:22px}.page-heading h1{font-size:39px}.team-grid{grid-template-columns:repeat(4,1fr)}.team-option{padding:15px 12px;min-height:240px}.team-option .crest{width:50px;height:58px}.team-option h2{font-size:20px}.team-option p{font-size:8px;min-height:37px}.team-skill{font-size:7px}.team-traits{margin-top:11px}.team-select-label{font-size:6px}.setup-bottom{display:flex;margin-bottom:15px}.options-grid{grid-template-columns:1fr 1fr}.ads-option{grid-column:1/-1;display:grid}.control-layout{display:grid}.tips-panel{margin-top:0}.control-row{display:block}.controls-grid{gap:0 20px}.controls-content{margin-bottom:20px}.scoreboard{top:12px;min-width:300px}.score-team{padding:8px 15px}.score-team b{font-size:14px}.score-team>span{font-size:18px}.score-center{padding:3px 11px;min-width:88px}.score-center>div{font-size:25px}.score-center>span{font-size:7px}.match-label{top:65px;font-size:6px}.pause-button{top:12px;right:18px;width:34px;height:34px}.frenzy-banner{top:82px;font-size:18px;padding:5px 35px}.frenzy-banner small{font-size:5px}.player-card{bottom:13px;left:160px;padding:8px 10px;min-width:180px;gap:9px}.player-card strong{font-size:11px}.player-card>span{display:none}.player-card small{font-size:5px}.player-icon{font-size:22px}.energy-track{width:110px;margin-top:6px;height:2px}.skill-card{right:240px;bottom:13px;padding:8px 10px;gap:8px}.skill-card strong{font-size:11px}.skill-card small{font-size:5px;max-width:115px}.skill-orb{display:none}.skill-key{display:none}.touch-controls{bottom:8px;left:5px;right:9px;height:140px}.joystick{width:98px;height:98px;left:20px;bottom:12px}.touch-actions{transform:scale(.77);transform-origin:right bottom}.shot-charge{bottom:80px;width:125px}.modal-screen{align-items:flex-start;padding:20px}.pause-panel{width:400px;padding:22px 30px;margin:auto}.pause-panel h1{font-size:52px;margin-top:12px}.pause-panel p{margin:13px 0 15px;font-size:9px}.pause-panel .button{min-height:43px;padding:12px 17px}.pause-links{margin-top:16px}.result-panel{max-width:740px;padding:22px 35px}.result-heading h1{font-size:37px;margin-top:11px}.result-heading p{font-size:9px}.result-score{padding:16px 0;margin-top:18px}.result-score .crest{width:44px;height:50px}.result-score strong{font-size:9px;margin-top:7px}.result-score small{font-size:6px;margin-top:4px}.result-score>b{font-size:55px}.result-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px 40px;padding:12px 0}.result-stats>div{margin-top:4px}.result-actions{margin-top:10px}.result-actions .primary{width:auto;flex:1}.result-actions .button{min-height:42px;padding:11px 17px;font-size:10px}.result-trophy{position:absolute;right:35px;top:27px;width:30px}.result-trophy svg{height:40px}#toast{bottom:auto;top:36%;font-size:9px;padding:10px 20px}.cup-rounds{grid-template-columns:repeat(3,1fr);gap:15px}.cup-round{padding:20px 16px}.cup-round h2{font-size:28px}.cup-opponent{gap:10px}.cup-opponent strong{font-size:9px}.cup-callout{display:flex}.cup-callout .button{margin-top:0;min-width:185px}#loading h1{font-size:52px}.loading-mark{font-size:27px;margin:0 0 12px}.loading-brand{top:6%;font-size:8px}.loading-brand span{font-size:5px;margin-top:5px}.loading-subtitle{font-size:13px;letter-spacing:4px;margin-top:9px}.load-track{margin-top:21px}.load-meta{font-size:7px}.loading-tip{font-size:7px;margin-top:23px}}
.goal-banner{white-space:nowrap;line-height:1}.goal-banner small{display:block;font-family:var(--font);font-size:9px;color:var(--bone);letter-spacing:2px;margin-top:17px;text-shadow:0 2px 7px #000}.goal-banner.kickoff-count{color:var(--mint);font-size:120px;text-shadow:0 0 35px #a4ead04a}.goal-banner.kickoff-count small{font-size:8px;letter-spacing:3px}.goal-banner.kickoff-count{top:30%}
@media(max-width:700px){.goal-banner small{font-size:7px;letter-spacing:1px}.goal-banner.kickoff-count{font-size:95px}.goal-banner.kickoff-count small{font-size:6px;letter-spacing:2px}}
@media(max-height:550px) and (orientation:landscape){.goal-banner{top:30%;font-size:70px}.goal-banner.kickoff-count{font-size:90px;top:24%}.goal-banner small{font-size:7px;margin-top:12px}}
.stamina-heading{display:flex;align-items:center;justify-content:space-between;font-size:6px;color:var(--muted);letter-spacing:1px;margin-top:9px}.stamina-heading b{color:var(--bone);font-size:7px;font-weight:600;letter-spacing:.3px}.player-card .energy-track{margin-top:4px}.dodge-status{display:block;font-size:6px;letter-spacing:1px;color:#c3a988;margin-top:8px;line-height:1.2}.dodge-status.ready{color:var(--mint)}#frenzyClock{font-family:var(--font);font-size:10px;letter-spacing:0;vertical-align:middle;display:inline-block;border:1px solid #ffd5a855;border-radius:3px;padding:4px 6px;margin-left:8px;min-width:31px}
@media(max-width:700px){.stamina-heading{font-size:5px;letter-spacing:.6px;margin-top:7px}.stamina-heading b{font-size:6px}.dodge-status{font-size:5px;letter-spacing:.6px;margin-top:6px}#frenzyClock{font-size:8px;padding:3px 4px;margin-left:5px;min-width:24px}}
@media(max-width:700px) and (orientation:portrait){.menu-screen{display:flex;flex-direction:column;height:100%;overflow-y:auto;overflow-x:hidden}.menu-screen .topbar{flex-shrink:0}.menu-hero{position:relative;left:auto;top:auto;width:88%;margin:30px 6% 28px;flex-shrink:0}.menu-bottom{position:relative;left:auto;right:auto;bottom:auto;margin:auto 6% 20px;flex-shrink:0;padding-top:17px}.title-art{max-height:27vh}}
@media(max-height:550px) and (orientation:landscape){.stamina-heading{margin-top:5px;font-size:5px}.stamina-heading b{font-size:6px}.dodge-status{margin-top:5px;font-size:5px}#frenzyClock{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
