:root{--bg:#0d0e15;--bg-elev:#12131a;--panel:#191b2999;--divider:#ffffff14;--my:#0fc;--my-glow:#00ffcc59;--enemy:#ff2d78;--enemy-glow:#ff2d7859;--item:#39ff14;--ball:#fff;--text:#f1f3f9;--text-dim:#b8bdcc;--danger:#ff3b3b;--gold:#fc0}*{box-sizing:border-box}html,body{background:var(--bg);width:100%;min-height:100%;color:var(--text);-moz-text-size-adjust:100%;text-size-adjust:100%;margin:0;font-family:Inter,Outfit,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}button,canvas{-webkit-tap-highlight-color:transparent}button,select,input[type=checkbox],input[type=range]{min-height:44px}.prototypeShell{background:radial-gradient(circle at 50% 36%, #ff2d781f, transparent 30%), radial-gradient(circle at 50% 70%, #00ffcc24, transparent 34%), linear-gradient(180deg, #10111a 0%, var(--bg) 48%, #090a10 100%);grid-template-rows:auto 1fr auto;display:grid;position:fixed;inset:0}.prototypeShell.colorAssist .sideLabel:before{min-width:1.4em;display:inline-block}.prototypeShell.colorAssist .mySide .sideLabel:before{content:"B "}.prototypeShell.colorAssist .enemySide .sideLabel:before{content:"T "}.prototypeShell.reducedMotion,.prototypeShell.reducedMotion *,.appShell.reducedMotion,.appShell.reducedMotion *{scroll-behavior:auto}.prototypeShell.reducedMotion.embeddedBattle,.prototypeShell.reducedMotion.turnSurge .turnBanner,.prototypeShell.reducedMotion.breachSurge .canvasHost,.prototypeShell.reducedMotion .juiceLineFlash:before,.prototypeShell.reducedMotion.victorySurge .juiceResultBurst:before,.prototypeShell.reducedMotion.victorySurge .juiceResultBurst:after,.prototypeShell.reducedMotion.defeatSurge .juiceResultBurst,.prototypeShell.reducedMotion .connectionSpinner{animation-duration:1ms;animation-iteration-count:1}.prototypeShell.reducedMotion .pressureGauge span,.prototypeShell.reducedMotion .edgeGlow{transition-duration:1ms}.prototypeShell.embeddedBattle{animation:.26s ease-out battleEnter}.prototypeShell.turnSurge .turnBanner{animation:.52s ease-out turnPulse}.prototypeShell.breachSurge .canvasHost{animation:.16s ease-out breachZoom}.prototypeShell.pressureSurge .pressureGauge.enemy span,.prototypeShell.pressureSurge .pressureGauge.my span{box-shadow:0 0 18px,0 0 34px #ffffff2e}.prototypeShell.victorySurge .resultPanel{box-shadow:0 0 44px #00ffcc5c,0 0 88px #fc03}.prototypeShell.defeatSurge .resultPanel{box-shadow:0 0 44px #ff2d7857,0 0 80px #ff3b3b38}.topHud,.bottomHud{z-index:2;padding:max(12px, env(safe-area-inset-top)) 16px 12px;pointer-events:none;background:linear-gradient(#0d0e15db,#0d0e1500);justify-content:space-between;align-items:center;gap:12px;display:flex}.topHud.active{box-shadow:inset 0 1px #ff2d7833}.bottomHud{padding:12px 16px max(14px, env(safe-area-inset-bottom));background:linear-gradient(#0d0e1500,#0d0e15e6)}.bottomHud.active{box-shadow:inset 0 -1px #0fc3}.playerBlock{gap:4px;min-width:180px;display:grid}.sideLabel{letter-spacing:0;font-size:17px;font-weight:800}.turnLabel{color:var(--text-dim);font-size:12px;font-weight:600}.mySide .sideLabel,.bottomHud.active .turnLabel{color:var(--my);text-shadow:0 0 16px var(--my-glow)}.enemySide .sideLabel,.topHud.active .turnLabel{color:var(--enemy);text-shadow:0 0 16px var(--enemy-glow)}.hudMetric{text-align:right;min-width:64px;color:var(--ball);font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px;font-weight:800}.hudStack{justify-items:end;gap:2px;min-width:64px;display:grid}.pendingBalls{color:var(--item);text-shadow:0 0 16px #39ff1473;font-size:12px;font-weight:800}.aimTimer{background:#ffffff14;border-radius:999px;width:148px;height:6px;margin:3px 0;position:relative;overflow:hidden}.aimTimerFill{border-radius:inherit;transform-origin:0;will-change:transform;width:100%;height:100%;display:block;transform:scaleX(0)}.aimTimer.my .aimTimerFill{background:var(--my);box-shadow:0 0 12px var(--my-glow)}.aimTimer.enemy .aimTimerFill{background:var(--enemy);box-shadow:0 0 12px var(--enemy-glow)}.pressureGauge{background:#ffffff14;border-radius:999px;width:148px;height:5px;position:relative;overflow:hidden}.pressureGauge span{border-radius:inherit;height:100%;transition:width .18s ease-out;display:block}.pressureGauge.my span{background:var(--my);box-shadow:0 0 14px var(--my-glow)}.pressureGauge.enemy span{background:var(--enemy);box-shadow:0 0 14px var(--enemy-glow)}.canvasHost{min-height:0;position:relative}.edgeGlow{z-index:1;pointer-events:none;border:2px solid #0000;transition:box-shadow .16s ease-out;position:absolute;inset:0}.edgeGlow.active{box-shadow:inset 0 0 48px #ff2d7875,inset 0 0 42px #00ffcc47,0 0 28px #ffffff14}.juiceLineFlash,.juiceResultBurst{z-index:2;pointer-events:none;position:absolute;inset:0}.juiceLineFlash:before{content:"";background:linear-gradient(90deg, transparent, var(--ball), transparent);opacity:0;width:100%;height:4px;position:absolute;top:calc(50% - 2px);left:0}.breachSurge .juiceLineFlash:before{animation:.26s ease-out lineFlash}.juiceResultBurst:before,.juiceResultBurst:after{content:"";opacity:0;border-radius:50%;width:84px;height:84px;position:absolute;top:18%}.juiceResultBurst:before{border:2px solid var(--my);left:14%}.juiceResultBurst:after{border:2px solid var(--gold);right:14%}.victorySurge .juiceResultBurst:before,.victorySurge .juiceResultBurst:after{animation:.9s ease-out infinite resultBurst}.defeatSurge .juiceResultBurst{background:linear-gradient(#ff3b3b2e,#0000 42%);animation:.68s ease-out defeatCollapse}.pixiMount{touch-action:none;position:absolute;inset:0}.pixiMount canvas{width:100%;height:100%;display:block}.turnBanner{z-index:2;border:1px solid var(--divider);min-width:min(220px,100vw - 80px);color:var(--text);text-align:center;opacity:.72;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none;background:#12131a94;border-radius:8px;gap:3px;padding:7px 12px;display:grid;position:absolute;top:8px;left:50%;transform:translate(-50%)}.turnBanner span{color:var(--text-dim);text-transform:uppercase;font-size:10px;font-weight:700}.turnBanner strong{letter-spacing:0;font-size:13px}.turnBanner.my strong{color:var(--my);box-shadow:0 0 20px var(--my-glow)}.turnBanner.enemy strong{color:var(--enemy);text-shadow:0 0 18px var(--enemy-glow)}.resultOverlay{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#05060aad;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.resultPanel{border:1px solid var(--divider);text-align:center;background:#12131ae0;border-radius:8px;width:min(340px,100%);padding:24px;box-shadow:0 0 34px #00ffcc2e}.resultKicker{color:var(--text-dim);letter-spacing:0;font-size:11px;font-weight:800}.resultPanel h1{margin:6px 0 2px;font-size:28px}.resultPanel p{color:var(--text-dim);margin:0 0 18px;font-size:13px;font-weight:700}.resultPanel button{width:100%;min-height:44px;color:var(--my);font:inherit;cursor:pointer;box-shadow:0 0 20px var(--my-glow);background:#00ffcc1f;border:1px solid #00ffcc80;border-radius:8px;font-weight:800}.connectionOverlay{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#05060ab3;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.connectionPanel{text-align:center;background:#12131ae6;border:1px solid #ffffff1a;border-radius:8px;justify-items:center;gap:8px;width:min(360px,100%);padding:24px;display:grid;box-shadow:0 0 34px #ffcc0029}.connectionSpinner{border:3px solid #ffffff2e;border-top-color:var(--gold);border-radius:999px;width:28px;height:28px;animation:.9s linear infinite spin}.connectionKicker{color:var(--gold);letter-spacing:0;font-size:11px;font-weight:900}.connectionPanel h2{margin:0;font-size:20px}.connectionPanel p{color:var(--text-dim);margin:0;font-size:13px;font-weight:700}.connectionPanel button{width:100%;min-height:42px;color:var(--gold);font:inherit;cursor:pointer;background:#ffcc001a;border:1px solid #ffcc0080;border-radius:8px;margin-top:8px;font-weight:900}@keyframes spin{to{transform:rotate(360deg)}}.appShell{padding:max(12px, env(safe-area-inset-top)) 14px max(12px, env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 22%, #ff2d7829, transparent 28%), radial-gradient(circle at 46% 78%, #00ffcc29, transparent 34%), linear-gradient(180deg, #10111a 0%, var(--bg) 58%, #07080d 100%);place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.phoneFrame{grid-template-rows:auto auto auto 1fr auto;gap:16px;width:min(100%,430px);height:min(100%,880px);min-height:0;padding:18px 16px 12px;display:grid;position:relative;overflow:hidden}.lobbyFrame{grid-template-rows:minmax(0,1fr) auto}.lobbyScroll{overscroll-behavior:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;align-content:start;gap:16px;min-height:0;padding:0 2px 10px;display:grid;overflow-y:auto}.lobbyScroll::-webkit-scrollbar{display:none}.fullFrame{grid-template-rows:1fr;place-items:stretch stretch}.lobbyTopbar,.profileMini,.currencyRow,.bottomTabs,.resultActions,.loginActions,.queueStats,.playerCards,.statsCard,.tutorialActions,.progressDots{align-items:center;display:flex}.loginFrame{grid-template-rows:1fr auto auto;align-items:center}html[data-enter] .appShell>.phoneFrame{animation:.2s ease-out both appEnter}@keyframes appEnter{0%{opacity:0}to{opacity:1}}.refreshNote{z-index:3;color:#ffffffb3;pointer-events:none;justify-content:flex-end;align-items:center;gap:6px;height:0;font-size:11px;line-height:1;display:flex;position:sticky;top:0;overflow:visible}.refreshNote>*{transform:translateY(10px)}.refreshNote i{border:2px solid #ffffff40;border-top-color:#fffc;border-radius:50%;width:10px;height:10px;animation:.8s linear infinite refreshSpin}.refreshNote.failed{pointer-events:auto;height:auto}.refreshNote.failed>*{transform:none}.refreshNote button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:999px;padding:3px 9px}@keyframes refreshSpin{to{transform:rotate(360deg)}}.splashFrame{text-align:center;grid-template-rows:1fr auto auto;place-items:center}.splashBrand{justify-items:center;gap:14px;display:grid}.splashMark{width:104px;height:104px;color:var(--gold);border-color:#ffcc0094;box-shadow:0 0 28px #ffcc0042,inset 0 0 30px #00ffcc1f}.splashBrand h1{letter-spacing:0;margin:6px 0 0;font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:38px}.splashBrand p{color:var(--text-dim);margin:0;font-size:13px;font-weight:900}.splashProgress{background:#ffffff14;border-radius:999px;width:min(240px,78%);height:5px;overflow:hidden}.splashProgress span{border-radius:inherit;background:linear-gradient(90deg, var(--my), var(--gold), var(--enemy));width:52%;height:100%;animation:.9s ease-in-out infinite alternate splashLoad;display:block}.splashVersion{color:var(--text-dim);font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:900}@keyframes splashLoad{0%{transform:translate(-62%)}to{transform:translate(102%)}}.loginBrand{text-align:center;justify-items:center;gap:8px;display:grid}.brandMark{width:86px;height:86px;color:var(--my);box-shadow:0 0 20px var(--my-glow), inset 0 0 24px #ff2d7824;background:#00ffcc14;border:1px solid #00ffcc8c;border-radius:999px;place-items:center;font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:26px;font-weight:900;display:grid}.loginBrand h1{letter-spacing:0;margin:0;font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:34px}.loginBrand p,.loginActions p{color:var(--text-dim);margin:0;font-size:13px;font-weight:800}.loginActions{flex-direction:column;gap:10px;width:100%}.socialButton,.guestButton{width:100%;min-height:48px;font:inherit;cursor:pointer;border-radius:8px;font-weight:900}.socialButton{border:1px solid var(--divider);color:var(--text);background:#ffffff0d}.socialButton.kakao{color:var(--gold);border-color:#ffcc0061}.guestButton{color:var(--my);box-shadow:0 0 18px var(--my-glow);background:#00ffcc1a;border:1px solid #00ffcc85}.socialButton.google.primary{color:#1a1c24;background:#fff;border-color:#ffffffe6;min-height:54px;box-shadow:0 0 18px #ffffff47}.loginNotice{width:100%;color:var(--gold);text-align:center;background:#ffcc001a;border:1px solid #ffcc0080;border-radius:8px;padding:10px;font-size:13px;font-weight:800}.socialButton:disabled,.guestButton:disabled{cursor:progress;opacity:.68}.orDivider{width:100%;color:var(--text-dim);grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:12px;display:grid}.orDivider span{background:var(--divider);height:1px}.loginError{width:100%;color:var(--danger);text-align:center;background:#ff3b3b1a;border:1px solid #ff3b3b6b;border-radius:8px;padding:10px;font-size:13px;font-weight:800}.legalLinks{color:var(--text-dim);justify-content:center;gap:8px;font-size:12px;font-weight:800;display:flex}.legalLinks a{color:inherit;text-decoration:none}.legalLinks a:hover,.settingsTerms a:hover,.legalBack:hover{color:var(--my)}.legalScreen{place-items:start center;overflow-y:auto}.legalDocument{width:min(100%,760px);min-height:auto;padding:max(24px, env(safe-area-inset-top)) 18px max(28px, env(safe-area-inset-bottom));gap:18px}.legalBack{color:var(--my);font-size:13px;font-weight:900;text-decoration:none}.legalDocument article{gap:14px;padding-bottom:28px;display:grid}.legalDocument h1{margin:0;font-size:30px;line-height:1.05}.legalDocument h2{color:var(--gold);margin:10px 0 0;font-size:16px}.legalDocument p,.legalDocument li{color:var(--text-dim);font-size:14px;font-weight:700;line-height:1.6}.legalDocument p,.legalDocument ul{margin:0}.lobbyTopbar{justify-content:space-between}.profileMini{gap:10px}.profileMini strong,.profileMini span{display:block}.profileMini strong{font-size:18px;font-weight:900}.profileMini span{color:var(--text-dim);font-size:13px;font-weight:700}.abstractAvatar{--avatar-size:48px;width:var(--avatar-size);height:var(--avatar-size);border:2px solid var(--gold);color:var(--text);background:#ffffff0a;border-radius:999px;flex:none;place-items:center;font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:19px;font-weight:900;display:inline-grid;box-shadow:0 0 18px #ffcc0047}.tone-platinum{border-color:#3ad5c9;box-shadow:0 0 18px #3ad5c947}.tone-gold{border-color:var(--gold)}.iconButton{border:1px solid var(--divider);width:44px;height:44px;color:var(--text);font:inherit;cursor:pointer;background:#ffffff0a;border-radius:8px}.currencyRow{justify-content:flex-start;gap:10px}.currencyRow>span,.queueStats span,.caption{color:var(--text-dim);letter-spacing:0;font-size:12px;font-weight:800}.currencyRow>span{border:1px solid var(--divider);min-height:30px;color:var(--gold);background:#ffffff0a;border-radius:999px;padding:7px 10px}.dailyRewardCard,.permissionSheet{border:1px solid var(--divider);background:#12131ab8;border-radius:8px;gap:10px;padding:12px;display:grid}.dailyRewardCard{border-color:#ffcc003d;grid-template-columns:1fr auto;align-items:center}.dailyRewardCard.loading,.dailyRewardCard.error{grid-template-columns:1fr}.dailyRewardCard strong,.dailyRewardCard small,.dailyRewardPayout>span,.permissionSheet strong,.permissionSheet p{display:block}.dailyRewardCard strong,.permissionSheet strong{font-size:15px}.dailyRewardCard small,.permissionSheet p{color:var(--text-dim);margin:3px 0 0;font-size:12px;font-weight:800}.dailyRewardPayout{color:var(--gold);justify-items:end;gap:4px;font-size:12px;font-weight:900;display:grid}.permissionSheet{background:linear-gradient(135deg,#00ffcc1c,#ff2d7812),#12131ac2;border-color:#00ffcc40}.permissionActions{grid-template-columns:1fr auto;gap:8px;display:grid}.permissionActions .battleCta,.permissionActions .textButton{min-height:40px;font-size:13px}.permissionActions .textButton{min-width:76px}.seasonBanner{background:linear-gradient(135deg,#00ffcc1a,#ff2d781a);border:1px solid #ffffff1a;border-radius:8px;gap:10px;padding:16px;display:grid}.tutorialReplay{min-height:34px;color:var(--my);font:inherit;cursor:pointer;background:#00ffcc14;border:1px solid #00ffcc6b;border-radius:999px;justify-self:start;padding:0 12px;font-size:12px;font-weight:900}.seasonBanner strong{margin-top:4px;font-size:18px;display:block}.bannerDots{gap:5px;display:flex}.bannerDots span{background:#ffffff47;border-radius:999px;width:6px;height:6px}.bannerDots span:first-child{background:var(--my);box-shadow:0 0 12px var(--my-glow)}.lobbyHero{text-align:center;align-self:end;gap:10px;padding-bottom:10px;display:grid}.lobbyHero p{color:var(--text-dim);margin:0;font-size:14px;font-weight:800}.battleCta,.ghostButton,.secondaryButton,.dangerButton,.textButton{min-height:48px;font:inherit;cursor:pointer;border-radius:8px;font-weight:900}.battleCta{width:100%;min-height:72px;color:var(--my);box-shadow:0 0 20px var(--my-glow), inset 0 0 22px #00ffcc14;background:#00ffcc1f;border:1px solid #00ffccad;font-size:24px}.singleModeGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.singleModeCta{min-height:54px;color:var(--text);font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:8px;font-size:16px;font-weight:900}.singleModeCta:hover{color:#7ec8ff;border-color:#3399ff9e;box-shadow:inset 0 0 18px #3399ff1f}.battleCta.compact,.secondaryButton,.dangerButton,.textButton,.ghostButton{min-height:46px;font-size:15px}.bottomTabs{border:1px solid var(--divider);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#12131ac7;border-radius:8px;justify-content:space-between;gap:8px;padding:6px}.bottomTabs button{width:100%;min-height:44px;color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:13px;font-weight:900}.bottomTabs button.active{color:var(--my);box-shadow:0 0 14px var(--my-glow);background:#00ffcc1f}.radarSearch,.vsReveal,.matchError,.confirmPanel,.resultFrame,.coachMark{text-align:center;align-content:center;justify-items:center;gap:18px;display:grid}.radarSearch h1,.matchError h1,.resultFrame h1{margin:0;font-size:30px}.radar{aspect-ratio:1;place-items:center;width:min(72vw,270px);display:grid;position:relative}.radar span{border:1px solid #00ffcc59;border-radius:999px;animation:1.7s ease-out infinite radarPulse;position:absolute;inset:18%;box-shadow:0 0 18px #00ffcc1f}.radar span:nth-child(2){animation-delay:.22s;inset:8%}.radar span:nth-child(3){animation-delay:.44s;inset:0}.radar:after{transform-origin:0;background:linear-gradient(90deg, var(--my), transparent);content:"";width:46%;height:2px;animation:1.35s linear infinite spin;position:absolute}.queueStats{flex-direction:column;gap:6px}.ghostButton,.secondaryButton{border:1px solid var(--divider);width:100%;color:var(--text);background:#ffffff0a}.vsReveal{animation:.26s ease-out battleEnter}.vsMark{color:var(--text);text-shadow:-12px 0 28px var(--enemy-glow), 12px 0 28px var(--my-glow);font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:54px;font-weight:900}.playerCards{justify-content:center;gap:12px;width:100%}.matchPlayerCard{border:1px solid var(--divider);background:#12131ad1;border-radius:8px;justify-items:center;gap:6px;width:min(48%,160px);padding:15px 10px;display:grid}.matchPlayerCard.enemy{box-shadow:0 0 20px var(--enemy-glow);border-color:#ff2d788c}.matchPlayerCard.my{box-shadow:0 0 20px var(--my-glow);border-color:#00ffcc8c}.matchPlayerCard strong,.matchPlayerCard span,.matchPlayerCard small{display:block}.matchPlayerCard small,.matchError p,.resultFrame p,.mmrCard small,.statsCard span{color:var(--text-dim);margin:0;font-size:13px;font-weight:800}.autoAccept{gap:10px;width:min(100%,320px);display:grid}.autoAccept strong{color:var(--gold);text-shadow:0 0 18px #ffcc004d;font-size:20px}.autoAccept span{background:#ffffff1a;border-radius:999px;width:100%;height:6px;display:block;overflow:hidden}.autoAccept span:before{border-radius:inherit;background:var(--gold);content:"";width:72%;height:100%;animation:.72s ease-out infinite alternate acceptFill;display:block;box-shadow:0 0 16px #ffcc0059}.modalLayer{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#05060aad;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.confirmPanel{border:1px solid var(--divider);background:#12131aeb;border-radius:8px;width:min(330px,100%);padding:22px}.dangerButton{width:100%;color:var(--danger);background:#ff3b3b1a;border:1px solid #ff3b3b94}.resultFrame{align-content:center}.resultFrame h1{color:var(--my);text-shadow:0 0 22px var(--my-glow)}.tutorialFrame{grid-template-rows:1fr auto;gap:16px}.tutorialScreen{--tut-mine:#ff5a4a;--tut-mine-glow:#ff5a4a59;--tut-enemy:#2f8af7;--tut-enemy-glow:#2f8af759;--tut-ball:#2f9bff;--tut-ball-glow:#2f9bff66}.tutorialBoard{border:1px solid var(--divider);background:linear-gradient(#2f8af721,#0000 42%),linear-gradient(#0000 58%,#ff5a4a21),#12131aad;border-radius:8px;grid-template-rows:1fr auto 1fr;min-height:0;display:grid;position:relative;overflow:hidden}.tutorialZone{align-content:center;gap:14px;padding:20px;display:grid;position:relative}.tutorialZone>span{color:var(--text-dim);font-size:12px;font-weight:900}.enemyTutorial{color:var(--tut-enemy)}.myTutorial{color:var(--tut-mine)}.tutorialDrift{color:inherit;opacity:.8;justify-self:center;font-size:14px}.tutorialBricks{grid-template-columns:1fr minmax(46px,.6fr) 1fr;align-items:center;gap:10px;display:grid}.tutorialBrick,.tutorialGap{border-radius:8px;place-items:center;min-height:58px;font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:900;display:grid}.tutorialBrick{color:var(--brick-2,#39f);background:#ffffff0f;border:1px solid}.enemyTutorial .tutorialBrick{color:var(--tut-enemy)}.myTutorial .tutorialBrick{color:var(--tut-mine)}.tutorialBrick.pulse{color:var(--tut-enemy);box-shadow:0 0 24px var(--tut-enemy-glow);animation:.82s ease-out infinite alternate pressurePulse}.tutorialBrick.chip{background:linear-gradient(135deg,#0000 0 42%,#ffffff38 43% 48%,#0000 49%),#ff5a4a17}.tutorialBrick.danger{color:var(--danger);box-shadow:0 0 20px #ff3b3b42}.tutorialGap{color:var(--text-dim);border:1px dashed #ffffff38;font-size:12px}.tutorialGap.active{border-color:var(--gold);color:var(--gold);box-shadow:0 0 18px #fc03}.centerLine{background:linear-gradient(90deg,#0000,#ffffff94,#0000);height:2px}.pressureCallout,.defenseCallout,.deadlineLine{border-radius:999px;justify-self:center;min-height:30px;padding:7px 10px;font-size:12px;font-weight:900}.pressureCallout{color:var(--tut-enemy);box-shadow:0 0 20px var(--tut-enemy-glow);background:#2f8af71f}.defenseCallout{color:var(--tut-mine);background:#ff5a4a1a}.deadlineLine{width:100%;color:var(--danger);border:1px dashed #ff3b3b9e}.aimGuide{transform-origin:bottom;opacity:.36;border-left:3px dotted #ffffff42;width:3px;height:112px;position:absolute;bottom:22px;right:50%;transform:rotate(28deg)}.aimGuide.active{border-color:var(--tut-ball);opacity:1;filter:drop-shadow(0 0 8px var(--tut-ball-glow))}.coachMark{border:1px solid var(--divider);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#12131ae6;border-radius:8px;align-content:start;justify-items:stretch;padding:16px}.coachMark h1{margin:4px 0 6px;font-size:22px}.coachMark p,.coachMark strong{margin:0;font-size:14px;display:block}.coachMark p{color:var(--text-dim);font-weight:800}.coachMark strong{color:var(--text);margin-top:8px}.tutorial-pressure .coachMark strong{color:var(--tut-enemy);text-shadow:0 0 18px var(--tut-enemy-glow)}.progressDots{justify-content:center;gap:7px}.progressDots span{background:#ffffff38;border-radius:999px;width:7px;height:7px}.progressDots span.active{background:var(--my);width:18px;box-shadow:0 0 12px var(--my-glow)}.tutorialActions{justify-content:space-between;gap:10px}.tutorialActions .textButton{width:auto;min-width:76px}.tutorialActions .battleCta{flex:1}.outcome-lose .resultFrame h1{color:var(--danger);text-shadow:0 0 22px #ff3b3b4d}.outcome-draw .resultFrame h1{color:var(--gold);text-shadow:0 0 22px #ffcc0047}.mmrCard,.statsCard{border:1px solid var(--divider);background:#12131ac7;border-radius:8px;width:100%;padding:16px}.mmrCard{gap:8px;display:grid}.mmrCard span{color:var(--gold);font-weight:900}.mmrCard strong{font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:42px}.tierTrack{background:#ffffff14;border-radius:999px;width:100%;height:8px;overflow:hidden}.tierTrack span{border-radius:inherit;background:var(--gold);height:100%;display:block;box-shadow:0 0 16px #ffcc0059}.statsCard{justify-content:space-between;gap:8px}.statsCard div{gap:3px;min-width:0;display:grid}.statsCard strong{font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:19px}.resultActions{flex-wrap:wrap;gap:8px;width:100%}.resultActions .battleCta,.resultActions .secondaryButton{flex:130px}.textButton{width:100%;color:var(--text-dim);background:0 0;border:0}@keyframes radarPulse{0%{opacity:.15;transform:scale(.82)}70%{opacity:.55}to{opacity:.05;transform:scale(1.08)}}@keyframes battleEnter{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes acceptFill{0%{width:32%}to{width:100%}}@keyframes pressurePulse{0%{transform:scale(1)}to{transform:scale(1.08)}}@keyframes turnPulse{0%{filter:brightness(1.4);opacity:.94;transform:translate(-50%)scale(.96)}to{filter:brightness();opacity:.72;transform:translate(-50%)scale(1)}}@keyframes breachZoom{0%{filter:brightness(1.35);transform:scale(1.012)}to{filter:brightness();transform:scale(1)}}@keyframes lineFlash{0%{opacity:0;transform:scaleX(.2)}38%{opacity:.92}to{opacity:0;transform:scaleX(1)}}@keyframes resultBurst{0%{opacity:.9;transform:scale(.25)}to{opacity:0;transform:scale(1.9)}}@keyframes defeatCollapse{0%{opacity:1;transform:translateY(-10px)}to{opacity:0;transform:translateY(30px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto}.prototypeShell.embeddedBattle,.prototypeShell.turnSurge .turnBanner,.prototypeShell.breachSurge .canvasHost,.prototypeShell .juiceLineFlash:before,.prototypeShell.victorySurge .juiceResultBurst:before,.prototypeShell.victorySurge .juiceResultBurst:after,.prototypeShell.defeatSurge .juiceResultBurst,.connectionSpinner,.splashProgress span,html[data-enter] .appShell>.phoneFrame,.radar span,.radar:after,.vsReveal,.acceptFill span,.pressureTutorialPulse{animation-duration:1ms;animation-iteration-count:1}.pressureGauge span,.edgeGlow{transition-duration:1ms}}.screenTitle{margin:2px 0 0;font-size:26px;line-height:1}.tabContentScroller{scrollbar-width:none;align-content:start;gap:12px;min-height:0;padding:0 2px 8px;display:grid;overflow-y:auto}.tabContentScroller::-webkit-scrollbar{display:none}.profileHero,.metaPanel,.myRankSticky,.statePanel{border:1px solid var(--divider);background:#12131ab8;border-radius:8px}.profileHero{align-items:center;gap:14px;padding:16px;display:flex}.profileHero .abstractAvatar{--avatar-size:64px;font-size:24px}.profileHero h1,.profileHero p{margin:0}.profileHero h1{font-size:28px}.profileHero p{color:var(--text-dim);font-size:13px;font-weight:800}.profileStatsGrid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.profileStatsGrid div,.statsCard div{border:1px solid var(--divider);text-align:center;background:#ffffff0a;border-radius:8px;gap:3px;padding:12px 8px;display:grid}.profileStatsGrid span,.statsCard span{color:var(--text-dim);font-size:11px;font-weight:800}.profileStatsGrid strong,.statsCard strong{font-size:16px}.metaPanel{gap:12px;padding:14px;display:grid}.panelHeading{justify-content:space-between;align-items:center;gap:12px;display:flex}.panelHeading strong{font-size:15px}.panelHeading span{color:var(--text-dim);font-size:12px;font-weight:800}.trendChart{grid-template-columns:repeat(4,1fr);align-items:end;gap:8px;height:118px;padding-top:8px;display:grid}.trendChart span{min-height:30px;color:var(--text);box-shadow:0 0 14px var(--my-glow);background:linear-gradient(#00ffcc8c,#00ffcc1f);border-radius:8px 8px 2px 2px;place-items:end center;font-size:10px;font-weight:900;display:grid}.matchList,.rankingList,.roundList{gap:8px;display:grid}.matchRow,.rankRow,.roundRow{border:1px solid var(--divider);background:#ffffff0a;border-radius:8px;align-items:center;gap:8px;min-height:58px;display:grid}.matchRow{color:var(--text);font:inherit;text-align:left;cursor:pointer;grid-template-columns:auto 1fr;padding:10px}.matchRow small{color:var(--text-dim);grid-column:2;font-weight:800}.resultPill{border-radius:999px;place-items:center;width:34px;height:34px;font-size:13px;font-weight:900;display:grid}.resultPill.win{color:var(--my);background:#00ffcc1f}.resultPill.lose{color:var(--enemy);background:#ff2d781f}.resultPill.draw{color:var(--gold);background:#ffcc001f}.rankingControls{gap:10px;display:grid}.rankingControls label,.settingsSelect,.settingsRange{color:var(--text-dim);gap:6px;font-size:12px;font-weight:900;display:grid}.rankingControls select,.settingsSelect select{border:1px solid var(--divider);width:100%;min-height:40px;color:var(--text);font:inherit;background:#12131ae6;border-radius:8px;font-weight:800}.scopeTabs{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.scopeTabs button{border:1px solid var(--divider);min-height:38px;color:var(--text-dim);font:inherit;cursor:pointer;background:#ffffff0a;border-radius:8px;font-size:12px;font-weight:900}.scopeTabs button.active{color:var(--my);border-color:#00ffcc7a}.shopWallet{border:1px solid var(--divider);background:#12131abd;border-radius:8px;grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;padding:10px;display:grid}.shopWallet div{gap:2px;display:grid}.shopWallet span{color:var(--text-dim);font-size:11px;font-weight:900}.shopWallet strong{font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px}.shopWallet button,.shopPassBanner button,.shopCategories button{border:1px solid var(--divider);min-height:38px;color:var(--text);font:inherit;cursor:pointer;background:#ffffff0d;border-radius:8px;font-size:12px;font-weight:900}.shopWallet button{min-width:68px;color:var(--gold);border-color:#ffcc0075}.shopPassBanner{background:linear-gradient(135deg,#ffcc0029,#ff2d7814),#12131ab8;border:1px solid #ffcc0047;border-radius:8px;grid-template-columns:1fr auto;gap:10px 12px;padding:14px;display:grid}.shopPassBanner strong,.shopPassBanner small{display:block}.shopPassBanner small{color:var(--text-dim);margin-top:4px;font-size:12px;font-weight:800}.passProgress{background:#ffffff1a;border-radius:999px;grid-column:1/-1;height:7px;overflow:hidden}.passProgress span{border-radius:inherit;background:var(--gold);height:100%;display:block;box-shadow:0 0 14px #ffcc005c}.shopCategories{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.shopCategories button{min-width:0;color:var(--text-dim);padding:0 5px;font-size:11px}.shopCategories button.active{color:var(--my);background:#00ffcc1a;border-color:#00ffcc85}.shopNotice{border:1px solid var(--divider);border-radius:8px;padding:10px 12px;font-size:13px;font-weight:900}.shopNotice.success{color:var(--my);background:#00ffcc1a;border-color:#00ffcc61}.shopNotice.error{color:var(--danger);background:#ff3b3b1a;border-color:#ff3b3b73}.shopGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.shopCard{border:1px solid var(--divider);background:#ffffff0a;border-radius:8px;align-content:start;gap:9px;min-height:238px;padding:10px;display:grid}.shopCard.owned{border-color:#00ffcc40}.shopPreview{color:#07080de6;border-radius:8px;place-items:center;height:74px;font-size:30px;font-weight:900;display:grid;box-shadow:inset 0 0 28px #ffffff24}.shopCardCopy{gap:3px;min-height:58px;display:grid}.shopCardCopy strong{font-size:14px}.shopCardCopy span,.shopCardMeta span{color:var(--text-dim);font-size:11px;font-weight:800;line-height:1.25}.shopCardMeta{justify-content:space-between;align-items:center;gap:8px;min-height:22px;display:flex}.shopCardMeta b{color:var(--my);font-size:11px}.shopCard button{align-self:end;min-height:40px;font-size:13px}.shopCard button:disabled{cursor:default;opacity:.58}.purchasePanel{gap:10px;display:grid}.purchasePanel h2,.purchasePanel p{margin:0}.purchasePanel p{color:var(--text-dim);font-size:13px;font-weight:800}.purchasePanel>strong{color:var(--gold);font-size:18px}.myRankSticky{z-index:1;background:#12131af0;grid-template-columns:1fr auto;gap:2px 8px;padding:12px;display:grid;position:sticky;top:0;box-shadow:0 10px 22px #0000003d}.myRankSticky span,.myRankSticky small{color:var(--text-dim);font-size:12px;font-weight:800}.myRankSticky strong{color:var(--my)}.rankRow{grid-template-columns:48px auto 1fr auto;padding:9px}.rankRow .abstractAvatar{--avatar-size:36px;font-size:15px}.rankRow strong,.rankRow small{display:block}.rankRow small{color:var(--text-dim);font-size:12px;font-weight:800}.rankRow b{color:var(--my);font-size:14px}.rankNo{color:var(--gold);font-family:Share Tech Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:900}.statePanel{text-align:center;gap:4px;padding:16px;display:grid}.statePanel.loading strong{color:var(--my)}.statePanel.empty strong{color:var(--gold)}.statePanel.error strong{color:var(--danger)}.statePanel span,.settingsGroup span,.settingsTerms{color:var(--text-dim);font-size:12px;font-weight:800}.settingsTerms{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.settingsTerms a{min-height:44px;color:inherit;align-items:center;text-decoration:none;display:inline-flex}.settingToggle{justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 2px;font-weight:900;display:flex}.settingToggle input{width:46px;height:26px;accent-color:var(--my)}.settingsRange input{width:100%;accent-color:var(--my)}.compactGroup{align-content:center;justify-items:center;min-height:120px}.textButton.inline{width:auto;min-height:38px;padding:0 12px}.roundRow{grid-template-columns:38px 1fr 1fr;padding:10px}.roundRow>span{color:var(--text-dim);font-weight:900}.detailPressure{background:#ffffff14;border-radius:999px;height:8px;overflow:hidden}.detailPressure span{border-radius:inherit;height:100%;display:block}.detailPressure.my span{background:var(--my);box-shadow:0 0 12px var(--my-glow)}.detailPressure.enemy span{background:var(--enemy);box-shadow:0 0 12px var(--enemy-glow)}.globalOverlay{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#05060ab8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.globalOverlayPanel{border:1px solid var(--divider);text-align:center;background:#12131af0;border-radius:8px;gap:10px;width:min(360px,100%);padding:22px;display:grid}.globalOverlayPanel h2,.globalOverlayPanel p{margin:0}.globalOverlayPanel h2{font-size:22px}.globalOverlayPanel p{color:var(--text-dim);font-size:13px;font-weight:800}.tabFrame{grid-template-rows:auto minmax(0,1fr) auto}.settingsFrame{grid-template-rows:auto minmax(0,1fr)}.lobbyTopbar{justify-content:space-between;gap:12px}.topbarSpacer{width:64px}.nickInput{border:1px solid var(--divider);width:100%;min-height:48px;color:var(--text);font:inherit;text-align:center;background:#ffffff0f;border-radius:8px;padding:12px 14px;font-size:16px;font-weight:800}.nickInput::placeholder{color:var(--text-dim);font-weight:700}.loginActions p{text-align:center;line-height:1.5}.linkButton{min-height:44px;color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 6px;font-size:12px;font-weight:800;text-decoration:underline}.legalLinks{align-items:center}.serverBanner{background:#ff3b3b1a;border:1px solid #ff3b3b6b;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.serverBanner strong,.serverBanner small{display:block}.serverBanner strong{color:var(--danger);font-size:15px}.serverBanner small{color:var(--text-dim);margin-top:4px;font-size:12px;font-weight:700;line-height:1.45}.serverBanner button{min-height:44px;color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;background:#ff3b3b24;border:1px solid #ff3b3b94;border-radius:8px;padding:0 14px;font-size:13px;font-weight:900}.aimCard{background:#00ffcc0f;border:1px solid #00ffcc4d;border-radius:8px;gap:10px;padding:12px;display:grid}.aimCard strong,.aimCard small{display:block}.aimCard strong{color:var(--my);font-variant-numeric:tabular-nums;margin-top:2px;font-size:16px}.aimCard small{color:var(--text-dim);margin-top:3px;font-size:12px;font-weight:700}.aimCardActions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.aimCardActions button,.adGemButton,.shopBuy{border:1px solid var(--divider);min-height:44px;color:var(--text);font:inherit;cursor:pointer;background:#ffffff0f;border-radius:8px;font-size:13px;font-weight:900}.adGemButton{width:100%;color:var(--gold);border-color:#fc06}.aimCardActions button:disabled,.adGemButton:disabled,.shopBuy:disabled,.battleCta:disabled,.secondaryButton:disabled,.dangerButton:disabled{cursor:default;opacity:.45}.battleCta:disabled{box-shadow:none}.dailyRewardPayout{justify-items:end;gap:4px;display:grid}.dailyRewardPayout>span{color:var(--gold);white-space:nowrap;font-size:13px;font-weight:900;display:block}.singleModeCta.wide{grid-column:1/-1}.singleModeCta.subtle{min-height:46px;color:var(--text-dim);background:0 0;font-size:14px}.lobbyHero{align-self:auto}.shopWallet{grid-template-columns:1fr 1fr}.shopRow{border:1px solid var(--divider);background:#ffffff08;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:52px;padding:8px 10px;display:grid}.shopRow strong,.shopRow small{display:block}.shopRow strong{font-size:14px}.shopRow small{color:var(--gold);margin-top:3px;font-size:12px;font-weight:800}.shopBuy{min-width:78px;padding:0 12px}.shopBuy.primary,.shopRow .shopBuy{color:var(--my);background:#00ffcc1a;border-color:#00ffcc80}.panelNote{color:var(--text-dim);margin:0;font-size:12px;font-weight:700;line-height:1.5}.panelNote.strong{color:var(--gold);font-weight:900}.skinGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.skinCard{border:1px solid var(--divider);text-align:center;background:#ffffff08;border-radius:8px;gap:6px;padding:10px;display:grid}.skinCard.equipped{border-color:#00ffcc80}.skinCard strong{font-size:14px}.skinCard small{color:var(--gold);font-size:12px;font-weight:800}.skinPreview{background:#f4f6fb;border-radius:8px;place-items:center;height:58px;display:grid;position:relative;overflow:hidden}.skinBall{border-radius:999px;width:24px;height:24px;position:relative}.skinTrail{opacity:.55;border-radius:999px;width:44%;height:12px;position:absolute;top:50%;right:50%;transform:translateY(-50%)}.rankRow.mine{background:#00ffcc14;border-color:#00ffcc80}.podium-1{--medal:#f5c542;--medal-hi:#fff1b8;--medal-lo:#b8860b;--medal-tint:#f5c54229}.podium-2{--medal:#c9d1d9;--medal-hi:#fff;--medal-lo:#7d8794;--medal-tint:#c9d1d921}.podium-3{--medal:#cd7f32;--medal-hi:#f3c08a;--medal-lo:#7a4416;--medal-tint:#cd7f3226}.rankRow.podium,.myRankSticky.podium{box-shadow:inset 3px 0 0 var(--medal)}.rankRow.podium{border-color:color-mix(in srgb, var(--medal) 38%, transparent);background:linear-gradient(90deg, var(--medal-tint), transparent 62%), #ffffff0a}.rankRow.podium.mine{background:linear-gradient(90deg, var(--medal-tint), transparent 62%), #00ffcc14;border-color:#00ffcc80}.myRankSticky.podium{background:linear-gradient(90deg, var(--medal-tint), transparent 62%), #12131af0;box-shadow:inset 3px 0 0 var(--medal), 0 10px 22px #0000003d}.rankNo.rankMedal{--medal-size:30px;width:var(--medal-size);height:var(--medal-size);border:2px solid var(--medal-hi);background:radial-gradient(circle at 34% 28%, var(--medal-hi), var(--medal) 48%, var(--medal-lo));color:#14161f;box-shadow:0 0 10px color-mix(in srgb, var(--medal) 55%, transparent);isolation:isolate;border-radius:999px;justify-self:start;place-items:center;margin-left:4px;font-size:15px;line-height:1;display:inline-grid;position:relative}.rankNo.rankMedal:before,.rankNo.rankMedal:after{content:"";z-index:-1;background:var(--medal-lo);clip-path:polygon(0 0,100% 0,100% 100%,50% 72%,0 100%);width:8px;height:12px;position:absolute;bottom:-7px}.rankNo.rankMedal:before{left:5px;transform:rotate(18deg)}.rankNo.rankMedal:after{right:5px;transform:rotate(-18deg)}.myRankSticky .rankNo.inline:not(.rankMedal){color:inherit;font:inherit}.myRankSticky .rankNo.rankMedal.inline{--medal-size:20px;color:#14161f;vertical-align:middle;border-width:1px;margin:0 0 0 2px;font-size:11px}.myRankSticky .rankNo.rankMedal.inline:before,.myRankSticky .rankNo.rankMedal.inline:after{width:6px;height:8px;bottom:-5px}.myRankSticky .rankNo.rankMedal.inline:before{left:3px}.myRankSticky .rankNo.rankMedal.inline:after{right:3px}.rankRow strong,.matchRow strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.globalModal,.adModal{z-index:900;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#05060ab8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirmPanel{text-align:center;gap:10px;display:grid}.confirmPanel h2,.confirmPanel p{margin:0}.confirmPanel h2{font-size:20px;line-height:1.3}.confirmPanel p{color:var(--text-dim);font-size:13px;font-weight:700;line-height:1.55}.confirmPanel .confirmError{color:var(--danger)}.toast{top:max(14px, env(safe-area-inset-top));z-index:950;border:1px solid var(--divider);width:min(360px,100% - 28px);color:var(--text);text-align:center;background:#12131af5;border-radius:8px;padding:12px 14px;font-size:14px;font-weight:900;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #0006}.toast.success{color:var(--my);border-color:#00ffcc80}.toast.error{color:#ff8a8a;border-color:#ff3b3b8c}.adLayer{z-index:1000;color:#fff;background:#000;display:grid;position:fixed;inset:0}.adVideo{object-fit:contain;background:#000;width:100%;height:100%}.adLayer>.adVideo{position:absolute;inset:0}.adTopBar{z-index:2;padding:max(12px, env(safe-area-inset-top)) 12px 12px;background:linear-gradient(#000000b3,#0000);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid;position:absolute;top:0;left:0;right:0}.adBadge{color:#111;background:#ffffffeb;border-radius:6px;padding:4px 10px;font-size:13px;font-weight:900}.adRemaining{font-variant-numeric:tabular-nums;font-size:14px;font-weight:800}.adClose,.adClosePlaceholder{width:44px;height:44px}.adClose{color:#fff;cursor:pointer;background:#0000008c;border:1px solid #ffffff80;border-radius:999px;font-size:18px;font-weight:900}.adCta{right:16px;bottom:max(18px, env(safe-area-inset-bottom));z-index:2;color:#111;min-height:56px;font:inherit;cursor:pointer;background:#fc0;border:0;border-radius:10px;font-size:17px;font-weight:900;position:absolute;left:16px;box-shadow:0 8px 24px #00000080}.adResume,.adUnmute{z-index:2;color:#fff;min-height:52px;font:inherit;cursor:pointer;background:#0009;border:1px solid #fff9;border-radius:999px;padding:0 22px;font-size:16px;font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.adUnmute{top:auto;bottom:max(88px, calc(env(safe-area-inset-bottom) + 88px));min-height:44px;font-size:14px;transform:translate(-50%)}.adModal{z-index:1010}.profileMini .abstractAvatar{color:var(--text);flex:none;font-size:19px;font-weight:900;display:inline-grid}.profileMini>div{min-width:0}.profileMini strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.appShell,.globalModal,.adLayer,.toast{word-break:keep-all;overflow-wrap:anywhere}.segmented{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.segmented.segmented3{grid-template-columns:repeat(3,minmax(0,1fr))}.segmented button{border:1px solid var(--divider);min-width:0;min-height:44px;color:var(--text-dim);font:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#ffffff0a;border-radius:8px;font-size:14px;font-weight:900;overflow:hidden}.segmented button.active{color:var(--my);background:#00ffcc1f;border-color:#0fc9}.rankNote{color:var(--text-dim);margin:0;font-size:12px;font-weight:700;line-height:1.45}.versionLine{color:var(--text-dim);text-align:center;margin:0;font-size:12px;font-weight:700}.bottomTabs{gap:4px}.bottomTabs button{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;padding:0 4px;overflow:hidden}.noWrap{white-space:nowrap}.single-v2{color:#172033;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#eef1f7;flex-direction:column;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;position:fixed;inset:0;overflow:hidden}.single-v2__header{z-index:2;padding:max(8px, env(safe-area-inset-top)) 10px 9px 16px;background:#fff;border-bottom:1px solid #d7deea;flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;display:grid;position:relative}.single-v2__titles{align-items:baseline;gap:8px;min-width:0;display:flex}.single-v2__mode{color:#64748b;flex:none;font-size:12px;font-weight:900}.single-v2__sub{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:20px;font-weight:900;line-height:1.15;overflow:hidden}.single-v2__exit{color:#4a5568;cursor:pointer;background:#fffffff0;border:1px solid #d5dbe6;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;min-height:36px;padding:0;display:flex;box-shadow:0 1px 4px #141e321f}.single-v2__exit:active{background:#eef1f6}.single-v2__exit svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round}.single-v2__stats{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.single-v2__stat{background:#f3f6fb;border-radius:8px;min-width:0;padding:5px 8px 4px}.single-v2__stat-label{color:#64748b;font-size:10.5px;font-weight:800;line-height:1.1}.single-v2__stat-value{text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;color:#172033;font-size:16px;font-weight:900;line-height:1.25;overflow:hidden}.single-v2__stat-value.is-accent{color:#1688ee}.single-v2__stage{touch-action:none;min-height:0;margin-bottom:env(safe-area-inset-bottom);flex:1;position:relative}.single-v2__stage canvas{position:absolute;inset:0}.single-aim-hint{z-index:1;visibility:hidden;box-sizing:border-box;text-align:center;pointer-events:none;opacity:0;background:#ffffffdb;border:1px solid #d7deea;border-radius:14px;flex-direction:column;align-items:center;gap:5px;padding:10px 12px;transition:opacity .25s;display:flex;position:absolute;box-shadow:0 6px 20px #1720331a}.single-aim-hint[data-show="1"]{opacity:1}.single-aim-hint__icon{fill:none;stroke:#2b7de9;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:92px;height:27px}.single-aim-hint__icon circle{fill:#2b7de9;stroke:none}.single-aim-hint__text{color:#334155;font-size:14px;font-weight:800;line-height:1.25}.single-aim-hint__sub{color:#64748b;font-size:12px;font-weight:700;line-height:1.3}.single-v2__stat-value.is-gold{color:#b7791f}.stage-stars{color:#cbd5e1;letter-spacing:0;gap:1px;line-height:1;display:inline-flex}.stage-stars .is-on{color:#f5b301}.stage-select__stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stage-select__body{-webkit-overflow-scrolling:touch;min-height:0;padding:12px 12px max(16px, env(safe-area-inset-bottom));flex:1;overflow-y:auto}.stage-select__note{color:#64748b;text-align:center;margin:10px 4px;font-size:13px;font-weight:700;line-height:1.45}.stage-select__note.is-warn{color:#8a5a00;background:#fff8e1;border:1px solid #f2c14e;border-radius:10px;padding:9px 12px}.stage-select__empty{flex-direction:column;align-items:center;gap:8px;padding-top:32px;display:flex}.stage-select__retry{color:#fff;background:#2277e8;border:1px solid #2277e8;border-radius:10px;min-height:46px;padding:10px 22px;font-size:16px;font-weight:900}.stage-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.stage-tile{color:#172033;cursor:pointer;background:#fff;border:1px solid #cfd8e6;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:92px;padding:10px 4px 8px;font-family:inherit;display:flex;position:relative;box-shadow:0 1px 3px #141e3214}.stage-tile:active{background:#eef4ff}.stage-tile.is-cleared{background:#f4f9ff;border-color:#9cc2f5}.stage-tile.is-boss{background:#fffaf0;border-color:#f2c14e}.stage-tile.is-locked{color:#94a3b8;box-shadow:none;cursor:default;background:#e8ecf3;border-color:#d5dbe6}.stage-tile.is-busy{opacity:.6}.stage-tile__no{font-variant-numeric:tabular-nums;font-size:24px;font-weight:900;line-height:1}.stage-tile__name{text-overflow:ellipsis;white-space:nowrap;color:#64748b;max-width:100%;font-size:11px;font-weight:700;line-height:1.2;overflow:hidden}.stage-tile.is-locked .stage-tile__name{color:#94a3b8}.stage-tile__boss{color:#fff;background:#f5b301;border-radius:6px;padding:1px 5px;font-size:9px;font-weight:900;line-height:1.4;position:absolute;top:4px;left:5px}.stage-tile.is-locked .stage-tile__boss{background:#b9c2d0}.stage-tile__lock{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.stage-tile__old{color:#b7791f;font-size:9px;font-weight:800;line-height:1.2}.battleShell{background:#fff;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.battleFrame{background:#fff;border:none;width:100%;height:100%}@media (min-width:700px){html[data-platform=web] body{background:radial-gradient(circle at 50% 22%, #ff2d7829, transparent 28%), radial-gradient(circle at 46% 78%, #00ffcc29, transparent 34%), linear-gradient(180deg, #10111a 0%, var(--bg) 58%, #07080d 100%) fixed}html[data-platform=web] .battleShell{background:0 0}html[data-platform=web] .battleFrame,html[data-platform=web] .single-v2{width:min(100%,max(430px,51.8135vh));box-shadow:0 0 0 1px #ffffff14,0 24px 80px #0000008c}html[data-platform=web] .single-v2{margin:0 auto;left:0;right:0}}@media (min-width:700px) and (hover:hover) and (pointer:fine){html[data-platform=web] .lobbyScroll,html[data-platform=web] .tabContentScroller{scrollbar-width:thin;scrollbar-color:#ffffff38 transparent}html[data-platform=web] .lobbyScroll::-webkit-scrollbar{width:6px;display:block}html[data-platform=web] .tabContentScroller::-webkit-scrollbar{width:6px;display:block}html[data-platform=web] .lobbyScroll::-webkit-scrollbar-thumb{background:#ffffff38;border-radius:3px}html[data-platform=web] .tabContentScroller::-webkit-scrollbar-thumb{background:#ffffff38;border-radius:3px}html[data-platform=web] button:not(:disabled){cursor:pointer}html[data-platform=web] button:not(:disabled):hover{filter:brightness(1.12)}html[data-platform=web] .single-v2__exit:hover{filter:none;background:#eef1f6}}.currencyRow>span{align-items:center;font-size:13px;display:inline-flex}.shopWallet .walletValue{align-items:center;gap:8px;font-size:20px;display:flex}.shopRow small,.skinCard small{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.skinCard small{justify-content:center}.adGemButton{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:inline-flex}.toast{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.confirmPanel .spendLine{color:var(--text);font-size:15px;font-weight:800}.confirmPanel .spendLine.shortLine{color:#ff8a8a}.confirmPanel .spendSub{font-size:12px}.confirmPanel .spendSub strong{color:var(--text)}.nickForm{width:min(360px,100%)}.profileHero{flex-wrap:wrap}.nickChangeButton{min-height:44px;color:var(--my);font:inherit;cursor:pointer;background:#00ffcc1a;border:1px solid #00ffcc80;border-radius:8px;flex:100%;justify-content:space-between;align-items:center;gap:10px;padding:6px 14px;font-size:14px;font-weight:900;display:flex}.nickChangeButton small{color:var(--gold);white-space:nowrap;font-size:12px;font-weight:800}.profileHero>div{flex:1 1 0;min-width:0}.profileHero h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tabFrame.shopFrame{grid-template-rows:auto auto minmax(0,1fr) auto}.shopFrame>.shopWallet{z-index:1;background:#12131af5;position:relative;box-shadow:0 8px 14px -10px #000000e6}.aimCard strong>span{color:var(--text);font-weight:800}.aimPips{grid-template-columns:repeat(4,1fr);gap:4px;margin-top:6px;display:grid}.aimPips i{background:#ffffff1f;border-radius:999px;height:5px}.aimPips i.on{background:var(--my);box-shadow:0 0 8px var(--my-glow)}.aimCard small.aimNext{color:var(--gold)}.aimCardActions.single{grid-template-columns:1fr}.passCard{background:#9b7bff1a;border:1px solid #9b7bff73;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.passCard.soon{background:#ffcc0014;border-color:#fc09}.passCard strong,.passCard small{display:block}.passCard strong{margin-top:2px;font-size:16px}.passCard small{color:var(--text-dim);margin-top:3px;font-size:12px;font-weight:700;line-height:1.4}.passGem{color:var(--gold);white-space:nowrap;justify-items:end;gap:2px;font-size:15px;font-weight:900;display:grid}.offerPanel{background:linear-gradient(160deg,#ffcc001f,#191b2999 60%);border-color:#ffcc0080}.offerPanel.monthly{background:linear-gradient(160deg,#9b7bff29,#191b2999 60%);border-color:#9b7bff8c}.offerList{gap:6px;margin:0;padding:0;font-size:13px;font-weight:800;line-height:1.4;list-style:none;display:grid}.offerList li{padding-left:20px;position:relative}.offerList li>*{vertical-align:middle}.offerList li:before{content:"✓";color:var(--my);font-weight:900;position:absolute;top:0;left:0}.offerBall{background:#2f9bff;border-radius:999px;width:14px;height:14px;display:inline-block}.offerFoot{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.offerFoot strong{color:var(--gold);font-size:18px}.aimTierRow{border:1px solid var(--divider);background:#ffffff05;border-radius:8px;gap:8px;padding:10px;display:grid}.aimTierRow.current{background:#00ffcc12;border-color:#00ffcc8c}.aimTierHead{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.aimTierHead strong,.aimTierHead small{display:block}.aimTierHead strong{font-size:14px}.aimTierHead small{color:var(--text-dim);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px;font-weight:700}.aimTierBadge{border:1px solid var(--divider);min-width:66px;color:var(--text-dim);text-align:center;white-space:nowrap;border-radius:999px;padding:6px 8px;font-size:12px;font-weight:900}.aimTierRow.current .aimTierBadge{border-color:var(--my);color:var(--my);background:#00ffcc29}.aimTierRow.current .aimTierHead small{color:var(--my)}.skinTrail.effect{opacity:.95;filter:drop-shadow(0 0 4px #ffffffb3);width:46%;height:16px}.skinPreview .abstractAvatar{--avatar-size:42px;background:#14161f;font-size:17px}.skinPreview.framePreview{background:#0b0d14;height:76px}.abstractAvatar.framed{border:3px solid #0000}.abstractAvatar.hasArt{margin:calc(var(--avatar-size) * .16);box-shadow:none;background:#14161f;border:0;position:relative}.avatarFrameArt{pointer-events:none;-webkit-user-select:none;user-select:none;width:156.25%;max-width:none;height:156.25%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.adCtaBar{right:12px;bottom:max(14px, env(safe-area-inset-bottom));z-index:2;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:8px;max-width:560px;margin:0 auto;display:grid;position:absolute;left:12px}.adCtaBar.single{grid-template-columns:1fr}.adCtaBar .adCta{min-width:0;min-height:52px;padding:6px 10px;line-height:1.2;position:static}.adCtaBar .adCta.secondary{color:#fff;background:#0000009e;border:1px solid #ffffffb3;font-size:14px}.adLayer:has(.adCtaBar)>.adVideo{height:calc(100% - (max(14px, env(safe-area-inset-bottom)) + 62px));inset:0 0 auto}.buildBadge{right:max(6px, env(safe-area-inset-right));bottom:max(1px, env(safe-area-inset-bottom));z-index:2147483000;color:#868b99;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:calc(100vw - 12px);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:600;line-height:10px;position:fixed;overflow:hidden}.buildBadgeOld{color:#ff3b30;font-weight:900}.tierButton{max-width:100%;color:inherit;font:inherit;text-align:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:inline-block}.tierButton>i{opacity:.75;border:1px solid;border-radius:50%;place-items:center;width:1.3em;height:1.3em;margin-left:.4em;font-size:.78em;font-style:normal;font-weight:900;line-height:1;display:inline-grid}.tierButton:focus-visible,.tierGuideLink:focus-visible{outline:2px solid var(--my);outline-offset:3px;border-radius:4px}.profileMini .tierButton{color:var(--text-dim);font-size:13px;font-weight:700;display:block}.profileMini .tierButton span,.profileMini [data-tier-label] span{display:inline}.profileMini [data-tier-label]{display:inline-block}.tierGuideEntry{justify-content:flex-end;display:flex}.tierGuideLink{border:1px solid var(--divider);min-height:32px;color:var(--text-dim);font:inherit;cursor:pointer;background:#ffffff0a;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:800}.confirmPanel.tierGuide{align-content:start;justify-items:stretch;gap:12px;width:min(360px,100%);max-height:calc(100dvh - 48px);padding:18px;overflow-y:auto}.tierGuide .tierGuideMine{color:var(--text);background:#ffcc000f;border:1px solid #ffcc0052;border-radius:8px;padding:10px}.tierGuideList,.tierGuideRules{text-align:left;margin:0;padding:0;list-style:none;display:grid}.tierGuideList{gap:4px}.tierGuideList li{background:#ffffff0a;border:1px solid #0000;border-radius:8px;grid-template-columns:auto auto 1fr;align-items:center;gap:8px;min-height:40px;padding:4px 10px;font-size:14px;display:grid}.tierGuideList li.current{border-color:var(--gold);background:#ffcc001a}.tierGuideList strong{font-weight:900}.tierGuideList em{background:var(--gold);color:#1a1400;border-radius:999px;grid-area:1/3;justify-self:start;padding:1px 7px;font-size:11px;font-style:normal;font-weight:900}.tierGuideList small{color:var(--text-dim);white-space:nowrap;grid-area:1/3;justify-self:end;font-size:12px;font-weight:800}.tierGuideList li.current small{color:var(--text)}.tierGuideRules{color:var(--text-dim);gap:6px;font-size:12px;font-weight:700;line-height:1.5}.tierGuideRules li{padding-left:12px;position:relative}.tierGuideRules li:before{content:"";background:var(--gold);border-radius:50%;width:5px;height:5px;position:absolute;top:.62em;left:0}.helpModal{padding:12px}.helpPanel{border:1px solid var(--divider);width:min(440px,100%);height:min(760px,100dvh - 24px);color:var(--text);background:#12131af7;border-radius:10px;grid-template-rows:auto auto minmax(0,1fr);gap:10px;padding:14px;display:grid}.helpHead{justify-content:space-between;align-items:center;gap:10px;display:flex}.helpHead h2{margin:0;font-size:18px;line-height:1.3}.helpClose{border:1px solid var(--divider);width:40px;height:40px;color:var(--text);cursor:pointer;background:#ffffff0f;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.helpBody{overscroll-behavior:contain;align-content:start;gap:14px;min-height:0;padding-right:2px;display:grid;overflow-y:auto}.helpLead{color:var(--text);background:#ffcc000f;border:1px solid #ffcc0052;border-radius:8px;margin:0;padding:9px 11px;font-size:13px;font-weight:800;line-height:1.5}.helpSection{gap:7px;display:grid}.helpSection h3{color:var(--gold);margin:0;font-size:14px;font-weight:900}.helpNote{color:var(--text-dim);margin:0;font-size:12px;font-weight:700;line-height:1.5}.helpList,.helpRules{gap:5px;margin:0;padding:0;list-style:none;display:grid}.helpList li{background:#ffffff0a;border-radius:8px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:11px;padding:7px 10px;display:grid}.helpArt{width:64px;height:46px;display:block}.helpList strong{font-size:14px;font-weight:900;display:block}.helpList em{border:1px solid var(--divider);color:var(--text-dim);white-space:nowrap;border-radius:999px;margin-left:7px;padding:1px 7px;font-size:10.5px;font-style:normal;font-weight:800}.helpList p{color:var(--text-dim);margin:2px 0 0;font-size:12.5px;font-weight:700;line-height:1.45}.helpRules{color:var(--text-dim);font-size:12.5px;font-weight:700;line-height:1.5}.helpRules li{background:#ffffff0a;border-radius:8px;padding:7px 10px}.helpMark{color:#4a5568;width:26px;height:26px;min-height:26px;font:inherit;cursor:pointer;background:#fff;border:1px solid #c3ccda;border-radius:50%;flex:none;align-self:center;padding:0;font-size:14px;font-weight:900;line-height:1}.confirmPanel.tierGuide,.helpPanel{scrollbar-width:thin;scrollbar-color:#ffffff2e transparent;scrollbar-gutter:stable;width:min(460px,100%)}.confirmPanel.tierGuide::-webkit-scrollbar{background:0 0;width:6px;height:6px}.helpPanel::-webkit-scrollbar{background:0 0;width:6px;height:6px}.helpPanel ::-webkit-scrollbar{background:0 0;width:6px;height:6px}.confirmPanel.tierGuide::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}.helpPanel::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}.helpPanel ::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}.confirmPanel.tierGuide::-webkit-scrollbar-track{background:0 0}.helpPanel::-webkit-scrollbar-track{background:0 0}.helpPanel ::-webkit-scrollbar-track{background:0 0}.helpPanel *{scrollbar-width:thin;scrollbar-color:#ffffff2e transparent}html[data-platform=native] .confirmPanel.tierGuide,html[data-platform=native] .helpPanel{scrollbar-width:none}
