@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-cyrillic-ext-wght-normal-Duf7tWJ7.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-cyrillic-wght-normal-DINSYtDx.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-vietnamese-wght-normal-DlPkZmYr.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-latin-ext-wght-normal-B5pmZ151.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-latin-wght-normal-CQ1lLIdm.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #07061a;--panel: rgba(24, 20, 56, .86);--panel-2: rgba(36, 30, 78, .9);--line: rgba(150, 130, 255, .26);--text: #eef0ff;--muted: #a7a6cf;--cyan: #6fe3ff;--violet: #9b7bff;--magenta: #ff5d8f;--gold: #f2cf7a;--green: #54f0a8;--font: "Exo 2 Variable", "Exo 2", "Segoe UI", system-ui, sans-serif;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.35;overflow:hidden;overscroll-behavior:none;user-select:none;-webkit-user-select:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;padding:0;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.backdrop{position:relative;height:100dvh;display:flex;justify-content:center;align-items:center;overflow:hidden;background:radial-gradient(900px 600px at 18% 12%,rgba(120,80,255,.22),transparent 60%),radial-gradient(800px 600px at 86% 88%,rgba(255,80,150,.16),transparent 60%),linear-gradient(180deg,#080720,#05040f)}.backdrop__aura{position:absolute;inset:-20%;background:conic-gradient(from 0deg at 50% 50%,transparent,rgba(111,227,255,.06),transparent 30%,rgba(255,93,143,.06),transparent 70%);animation:aura 40s linear infinite;pointer-events:none}@keyframes aura{to{transform:rotate(360deg)}}.side{display:none;flex:1;align-self:stretch;position:relative;padding:48px 36px;flex-direction:column}.side--left{align-items:flex-end;justify-content:center;text-align:right}.side--right{justify-content:flex-end}.side__logo{font-size:clamp(40px,5vw,76px);font-weight:900;letter-spacing:.14em;line-height:1;background:linear-gradient(180deg,#fff,var(--cyan) 55%,var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 28px rgba(111,227,255,.35))}.side__tag{margin-top:10px;font-size:15px;letter-spacing:.36em;text-transform:uppercase;color:var(--gold)}.side__note{color:#a7a6cf80;font-size:12px;letter-spacing:.1em}.shell{position:relative;z-index:1;width:100%;max-width:480px;height:100dvh;display:flex;flex-direction:column;background:linear-gradient(180deg,#0d0b26,#090720);overflow:hidden;padding-top:env(safe-area-inset-top)}@media(min-width:620px){.shell{height:min(100dvh - 32px,940px);border-radius:22px;border:1px solid var(--line);box-shadow:0 0 0 1px #0009,0 30px 90px #000000b3,0 0 120px #785aff2e}}@media(min-width:1000px){.side{display:flex}}.topbar{display:flex;align-items:center;gap:10px;padding:8px 12px;background:linear-gradient(180deg,#28205cf2,#141032f2);border-bottom:1px solid var(--line);flex:none}.topbar__crest{position:relative;flex:none;width:44px;height:44px;filter:drop-shadow(0 0 8px rgba(111,227,255,.45))}.topbar__level{position:absolute;right:-6px;bottom:-4px;min-width:22px;padding:0 5px;height:18px;border-radius:9px;background:linear-gradient(180deg,#ffe39a,#d99a2b);color:#2a1a00;font-size:12px;font-weight:800;text-align:center;line-height:18px;border:1px solid #5a3c00}.topbar__info{flex:1;min-width:0}.topbar__name{font-weight:800;font-size:15px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar__power{margin-left:6px;font-size:12px;font-weight:700;color:var(--gold)}.topbar__wallet{display:flex;flex-direction:column;gap:3px;flex:none}.currency{display:flex;align-items:center;gap:5px;min-width:78px;padding:2px 9px 2px 4px;border-radius:12px;background:#060412b3;border:1px solid var(--line);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.currency span{margin-left:auto}.bar{position:relative;height:14px;border-radius:7px;background:#060412cc;border:1px solid var(--line);overflow:hidden}.bar__fill{height:100%;border-radius:6px;transition:width .18s linear}.bar__label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;letter-spacing:.04em;text-shadow:0 1px 2px #000;font-variant-numeric:tabular-nums}.bar--exp{margin-top:4px}.bar--exp .bar__fill{background:linear-gradient(90deg,#7a5cff,var(--cyan))}.bar--hp .bar__fill{background:linear-gradient(90deg,#2bd98a,#8dffc6)}.bar--energy{height:6px;margin-top:3px}.bar--energy .bar__fill{background:linear-gradient(90deg,var(--cyan),var(--gold))}.battle{position:relative;flex:none;width:100%;aspect-ratio:720 / 540;max-height:46dvh;background:#06051a;overflow:hidden;border-bottom:1px solid var(--line)}.battle__canvas{position:absolute;inset:0}.battle__error{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;color:var(--magenta)}.stage-chip{position:absolute;top:8px;left:8px;display:flex;align-items:stretch;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:#080618b8;backdrop-filter:blur(6px);pointer-events:none}.stage-chip__id{display:flex;align-items:center;gap:4px;padding:4px 10px;font-weight:900;font-size:16px;color:#1a1200;background:linear-gradient(180deg,#ffe39a,#d99a2b)}.stage-chip__body{padding:4px 10px 5px}.stage-chip__name{font-size:12px;font-weight:700}.stage-chip__waves{display:flex;gap:4px;margin-top:4px}.pip{width:18px;height:4px;border-radius:2px;background:#ffffff2e}.pip--done{background:var(--green)}.pip--now{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.battle-controls{position:absolute;top:8px;right:8px;display:flex;gap:6px}.chip-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:34px;min-width:52px;padding:0 10px;border-radius:10px;border:1px solid var(--line);background:#080618b8;backdrop-filter:blur(6px);font-weight:800;font-size:12px;color:var(--muted);transition:background .15s,color .15s,border-color .15s}.chip-btn--on{color:#06121a;background:linear-gradient(180deg,#a7f0ff,#4ac6ea);border-color:#c9f6ff}.chip-btn--locked{opacity:.7}.chip-btn--tall{min-height:52px;font-size:10px;line-height:1.15;text-transform:uppercase;letter-spacing:.04em}.banner{position:absolute;left:0;right:0;top:30%;padding:12px 16px 14px;text-align:center;background:linear-gradient(90deg,transparent,rgba(10,8,30,.92) 18%,rgba(10,8,30,.92) 82%,transparent);border-top:1px solid rgba(242,207,122,.6);border-bottom:1px solid rgba(242,207,122,.6);animation:banner-in .35s cubic-bezier(.2,1.4,.4,1) both;pointer-events:none}.banner--defeat{border-color:#ff5d8f99}@keyframes banner-in{0%{opacity:0;transform:scaleY(.2)}}.banner__title{font-size:26px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg,#fff6d6,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}.banner--defeat .banner__title{background-image:linear-gradient(180deg,#ffd2de,var(--magenta))}.banner__subtitle{font-size:12px;color:var(--muted)}.banner__rewards{display:flex;justify-content:center;gap:14px;margin-top:6px;font-weight:800;font-size:14px}.banner__rewards span{display:inline-flex;align-items:center;gap:4px}.banner__exp{color:var(--cyan)}.banner__tag{display:inline-block;margin-top:6px;padding:1px 10px;border-radius:9px;background:#f2cf7a29;border:1px solid rgba(242,207,122,.5);color:var(--gold);font-size:11px;font-weight:700}.toasts{position:absolute;left:0;right:0;bottom:8px;display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:none}.toast{padding:4px 12px;border-radius:12px;background:#080618db;border:1px solid var(--line);font-size:12px;font-weight:700;animation:toast-in .25s ease-out both}.toast--good{border-color:#54f0a899;color:var(--green)}.toast--warn{border-color:#ff5d8f99;color:#ffb3c8}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.skillbar{flex:none;display:flex;align-items:center;gap:10px;padding:8px 12px;background:linear-gradient(180deg,#1c1642f5,#0e0b26f5);border-bottom:1px solid var(--line)}.skillbar__vitals{flex:1;min-width:0}.skillbar__skills{display:flex;align-items:center;gap:8px}.skill{position:relative;width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:12px;background:radial-gradient(circle at 50% 30%,#2f2a6e,#120e30);border:1.5px solid rgba(150,130,255,.45);overflow:hidden}.skill--ready{border-color:var(--cyan);box-shadow:0 0 12px #6fe3ff73}.skill--static{width:44px;height:44px}.skill__cd{position:absolute;inset:0}.skill__time{position:absolute;inset:0;display:grid;place-items:center;font-weight:900;font-size:15px;text-shadow:0 1px 3px #000;font-variant-numeric:tabular-nums}.skill--ult{width:54px;height:54px;border-radius:50%;border:0;background:radial-gradient(circle,#1a1440 58%,transparent 60%),conic-gradient(var(--gold) var(--charge, 0deg),rgba(255,255,255,.12) 0)}.skill--ult.skill--static{width:44px;height:44px;--charge: 360deg}.skill--ult.skill--ready{box-shadow:0 0 18px #f2cf7acc;animation:ult-pulse .9s ease-in-out infinite}@keyframes ult-pulse{50%{transform:scale(1.07)}}.content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(150,130,255,.4) transparent}.screen{display:flex;flex-direction:column;gap:10px;padding:10px 12px 16px}.panel{padding:12px;border-radius:14px;background:var(--panel);border:1px solid var(--line);box-shadow:inset 0 1px #ffffff0d}.panel--muted{background:transparent;color:var(--muted);font-size:12px;text-align:center;box-shadow:none;border-style:dashed}.panel__head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}.panel__title{font-size:15px;font-weight:800;letter-spacing:.03em}.panel__title:before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;transform:rotate(45deg) translateY(-2px);background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.panel__hint,.panel__eyebrow{font-size:11px;color:var(--muted);text-align:right}.panel__eyebrow{text-align:left;text-transform:uppercase;letter-spacing:.12em;color:var(--gold)}.panel__text{margin:0 0 10px;color:var(--muted);font-size:13px}.goal{display:flex;align-items:center;gap:12px;background:linear-gradient(100deg,#3c2c82e6,#181438db)}.goal__text{flex:1;min-width:0}.goal__title{font-weight:700;font-size:14px}.btn{min-height:40px;padding:0 18px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);font-weight:800;letter-spacing:.04em}.btn:active{transform:translateY(1px)}.btn--primary{color:#06121a;background:linear-gradient(180deg,#b6f3ff,#46c2e8);border-color:#d8f9ff;box-shadow:0 4px 16px #46c2e859}.btn--danger{color:#fff;background:linear-gradient(180deg,#ff7aa0,#c92f5e);border-color:#ffb3c8}.btn--ghost{background:transparent;color:var(--muted)}.row{display:flex;gap:8px}.train{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.train__card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 8px;border-radius:12px;border:1px solid var(--line);background:linear-gradient(180deg,#322a6ee6,#161236e6);transition:transform .08s,border-color .15s,box-shadow .15s}.train__card:active:not(:disabled){transform:scale(.96)}.train__card--ready{border-color:#f2cf7abf;box-shadow:0 0 14px #f2cf7a38}.train__card:disabled{opacity:.6}.train__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#06041299;border:1px solid var(--line)}.train__card--atk .train__icon{color:#ff9db5}.train__card--hp .train__icon{color:var(--green)}.train__card--def .train__icon{color:var(--cyan)}.train__label{font-weight:800;font-size:13px}.train__level,.train__gain{font-size:11px;color:var(--muted)}.train__gain{color:var(--green)}.train__cost{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:2px 10px;border-radius:10px;background:#060412b3;font-weight:800;font-size:13px;color:var(--gold);font-variant-numeric:tabular-nums}.train__cost--low{color:#ff8ea8}.stats{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}.stats__row{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:8px;background:#06041273;color:var(--muted);font-size:13px}.stats__row svg{color:var(--cyan);flex:none}.stats__row b{margin-left:auto;color:var(--text);font-variant-numeric:tabular-nums}.skills-list{display:flex;flex-direction:column;gap:10px}.skills-list__row{display:flex;gap:10px;align-items:flex-start}.skills-list__name{font-weight:800;font-size:13px}.skills-list__name span{margin-left:8px;font-weight:600;font-size:11px;color:var(--gold)}.skills-list__desc{font-size:12px;color:var(--muted)}.stages{display:flex;flex-direction:column;gap:8px}.stage{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:linear-gradient(100deg,#2e2668e6,#161236e6);text-align:left}.stage--current{border-color:var(--cyan);box-shadow:0 0 14px #6fe3ff40}.stage--boss{background:linear-gradient(100deg,#6e1e46d9,#1e0e2ce6)}.stage--locked{opacity:.5}.stage__id{display:flex;align-items:center;justify-content:center;gap:3px;flex:none;width:54px;height:40px;border-radius:9px;background:#06041299;border:1px solid var(--line);font-weight:900;font-size:15px;color:var(--gold)}.stage__body{flex:1;min-width:0;display:flex;flex-direction:column}.stage__name{font-weight:800}.stage__desc{font-size:12px;color:var(--muted)}.stage__reward{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:2px;font-size:12px;font-weight:700;color:var(--gold)}.stage__reward i{margin-left:6px;font-style:normal;font-weight:500;color:var(--muted)}.stage__state{flex:none;color:var(--cyan)}.toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:6px 0;text-align:left;border-top:1px solid rgba(150,130,255,.12)}.toggle:first-of-type{border-top:0}.toggle__text{flex:1;font-weight:600}.toggle__text small{display:block;font-weight:400;font-size:11px;color:var(--muted)}.toggle__track{flex:none;width:46px;height:26px;border-radius:13px;background:#060412cc;border:1px solid var(--line);padding:2px;transition:background .15s}.toggle__track--on{background:linear-gradient(90deg,#46c2e8,#9b7bff)}.toggle__thumb{display:block;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .15s}.toggle__track--on .toggle__thumb{transform:translate(20px)}.nav{flex:none;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(62px,1fr);overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity;padding:4px 2px calc(4px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#1e1848fa,#0c0920fa);border-top:1px solid var(--line)}.nav__tab{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:52px;justify-content:center;border-radius:12px;position:relative;min-width:0;color:var(--muted);font-size:9.5px;font-weight:700;letter-spacing:-.01em;transition:color .15s}.nav__tab--active{color:var(--cyan);background:radial-gradient(60% 80% at 50% 100%,rgba(111,227,255,.22),transparent)}.nav__tab--active svg{filter:drop-shadow(0 0 6px var(--cyan))}.story{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;justify-content:flex-end;padding:16px 12px calc(20px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#05040f8c,#05040fe6 60%);animation:fade-in .3s ease-out both}@keyframes fade-in{0%{opacity:0}}.story__title{margin-bottom:auto;margin-top:22%;text-align:center;font-size:24px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;background:linear-gradient(180deg,#fff,var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px rgba(111,227,255,.5))}.story__box{display:grid;grid-template-columns:auto 1fr;gap:10px 12px;padding:14px;border-radius:16px;background:#100c2af5;border:1px solid var(--speaker);box-shadow:0 0 30px color-mix(in srgb,var(--speaker) 30%,transparent)}.story__speaker{font-weight:900;font-size:15px;letter-spacing:.06em;color:var(--speaker)}.story__text{margin:4px 0 0;min-height:76px;font-size:15px;line-height:1.45;animation:fade-in .25s ease-out both}.story__footer{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:10px}.story__progress{color:var(--muted);font-size:12px}@media(prefers-reduced-motion:reduce){.backdrop__aura,.skill--ult.skill--ready{animation:none}}.nav--more-right{-webkit-mask-image:linear-gradient(90deg,#000 86%,transparent);mask-image:linear-gradient(90deg,#000 86%,transparent)}.nav--more-left{-webkit-mask-image:linear-gradient(270deg,#000 86%,transparent);mask-image:linear-gradient(270deg,#000 86%,transparent)}.nav--more-left.nav--more-right{-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}.currency--shop{cursor:pointer;font:inherit;color:inherit}.currency__plus{display:grid;place-items:center;width:16px;height:16px;margin-left:4px;border-radius:50%;background:var(--cyan);color:#0b0920;font-style:normal;font-weight:800;font-size:13px;line-height:1}.gate{position:absolute;inset:0;z-index:30;display:grid;place-items:center;padding:20px;background:radial-gradient(90% 60% at 50% 20%,#2a1c5c,#0b0920 75%)}.gate__card{display:flex;flex-direction:column;gap:12px;width:100%;max-width:320px;padding:22px 18px;border-radius:18px;border:1px solid var(--line);background:#0c0920eb;font-size:13.5px;line-height:1.5}.gate__card p{margin:0;color:var(--muted)}.gate__card a,.legal-links a,.screen a{color:var(--cyan)}.gate__logo{font-size:30px;font-weight:800;letter-spacing:.16em;text-align:center;color:var(--cyan)}.gate__title{font-size:17px;font-weight:800;text-align:center}.legal-links{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px}.usd{margin-left:4px;font-size:.82em;font-weight:600;opacity:.85;white-space:nowrap}.summon-usd{margin-top:8px;font-size:11.5px;line-height:1.4;color:var(--muted)}.up{color:var(--green)}.down{color:#ff8ea8}.res{display:flex;gap:10px;font-weight:800;font-size:13px}.res span{display:inline-flex;align-items:center;gap:4px}.row--wrap{flex-wrap:wrap;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:13px}.btn:disabled{opacity:.5}.btn--icon{min-height:32px;padding:0 10px}.btn__cost{display:inline-flex;align-items:center;gap:2px;font-weight:700}.link{margin-top:8px;color:var(--cyan);font-size:12px;text-decoration:underline}.nav__badge{position:absolute;top:3px;right:calc(50% - 22px);min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--magenta);color:#fff;font-style:normal;font-size:10px;line-height:16px;text-align:center}.item{--rarity: #aab0d0;position:relative;display:grid;place-items:center;aspect-ratio:1;width:100%;border-radius:10px;border:1.5px solid var(--rarity);background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--rarity) 34%,transparent),transparent 70%),#110d2c;color:color-mix(in srgb,var(--rarity) 70%,#fff)}.item--rare{--rarity: #5aa9ff}.item--epic{--rarity: #b77bff}.item--legendary{--rarity: #ffc24d;box-shadow:0 0 10px #ffc24d73}.item--mythic{--rarity: #ff5d8f;box-shadow:0 0 12px #ff5d8f99;animation:mythic 2.4s ease-in-out infinite}@keyframes mythic{50%{box-shadow:0 0 20px #ff5d8ff2}}.item--selected{outline:2px solid #fff;outline-offset:1px}.item--empty{border-style:dashed;border-color:var(--line);color:#a7a6cf66;background:#06041266}.item--static{width:52px;flex:none}.item__enh,.item__lvl,.item__mark,.item__lock{position:absolute;font-size:10px;font-weight:900;line-height:1;text-shadow:0 1px 2px #000;color:#fff}.item__enh{top:3px;right:4px;color:var(--gold)}.item__lvl{bottom:3px;right:4px;color:var(--muted)}.item__mark{top:3px;left:4px;padding:1px 3px;border-radius:3px;background:var(--green);color:#04180e;text-shadow:none}.item__lock{bottom:3px;left:4px;color:var(--gold)}.slots{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:10px}.slots__cell{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0}.slots__cell>span{max-width:100%;font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.presets{display:flex;align-items:center;gap:4px;margin-left:auto}.presets .chip-btn{min-width:34px;padding:0}.presets .btn{min-height:34px;padding:0 10px;font-size:12px}.inventory{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.bulk{margin-top:10px;gap:6px;font-size:12px;color:var(--muted)}.bulk .chip-btn{min-height:30px}.bulk .btn{min-height:30px;margin-left:auto}.detail{border-color:var(--rarity);box-shadow:0 0 18px color-mix(in srgb,var(--rarity) 25%,transparent)}.detail__head{display:flex;gap:10px;align-items:center}.detail__title{flex:1;min-width:0}.detail__name{font-weight:900;font-size:15px;color:var(--rarity)}.detail__meta{font-size:11px;color:var(--muted)}.detail__stats{display:flex;flex-wrap:wrap;gap:4px 12px;margin:10px 0;font-size:13px;color:var(--muted)}.detail__main{width:100%;font-size:16px;font-weight:800;color:var(--text)}.detail__actions{display:flex;flex-wrap:wrap;gap:6px}.detail__actions .btn{min-height:36px;padding:0 10px;font-size:12px}.compare{margin-bottom:10px;padding:8px;border-radius:8px;background:#06041280;font-size:12px}.compare__title{display:flex;justify-content:space-between;gap:8px;color:var(--muted)}.compare__rows{display:flex;flex-wrap:wrap;gap:2px 12px;margin-top:4px;font-weight:700}.rates{margin-top:8px;font-size:10.5px;font-variant-numeric:tabular-nums}.rates__row{display:grid;grid-template-columns:2.4fr 1fr repeat(5,1fr);gap:4px;padding:3px 0;border-top:1px solid rgba(150,130,255,.12);color:var(--muted)}.rates__row--head{border-top:0;font-weight:800;color:var(--text)}.tree{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.tree__branch{display:flex;flex-direction:column;gap:14px}.tree__name{text-align:center;font-weight:900;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--branch)}.node{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:12px;border:1.5px solid color-mix(in srgb,var(--branch) 45%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--branch) 16%,#1a1540),#120e30);text-align:center}.node+.node:before{content:"";position:absolute;top:-15px;left:50%;width:2px;height:14px;background:color-mix(in srgb,var(--branch) 60%,transparent)}.node--ready{border-color:var(--branch);box-shadow:0 0 12px color-mix(in srgb,var(--branch) 40%,transparent)}.node--locked{opacity:.55}.node--max{border-color:var(--gold)}.node__name{font-weight:800;font-size:12px}.node__level{font-weight:900;font-size:15px;color:var(--branch)}.node__desc{min-height:28px;font-size:10.5px;line-height:1.25;color:var(--muted)}.node__cost{display:inline-flex;align-items:center;gap:3px;padding:1px 8px;border-radius:9px;background:#060412b3;font-weight:800;font-size:11px;color:var(--gold)}.arts{display:flex;flex-direction:column;gap:8px}.art{display:flex;align-items:center;gap:10px;padding:8px;border-radius:12px;border:1px solid var(--line);background:#06041266}.art--owned{border-color:#f2cf7a80;background:linear-gradient(100deg,#5a3c1459,#06041266)}.art__icon{position:relative;flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#110d2c;color:#a7a6cf80}.art--owned .art__icon{color:var(--gold);border-color:var(--gold);box-shadow:0 0 10px #f2cf7a59}.art__icon span{position:absolute;right:-4px;bottom:-4px;min-width:18px;height:18px;border-radius:9px;background:var(--gold);color:#2a1a00;font-size:11px;font-weight:900;line-height:18px;text-align:center}.art__body{flex:1;min-width:0}.art__name{font-weight:800}.art__lore{font-size:11px;color:var(--muted);font-style:italic}.art__bonus{font-size:12px;font-weight:700;color:var(--green)}.art__bonus i{font-style:normal;font-weight:500;color:var(--muted)}.art .btn{flex:none;flex-direction:column;gap:0;min-width:86px;min-height:44px;padding:2px 8px;font-size:12px}.set-tiers{display:flex;flex-direction:column;gap:2px;margin-top:10px;font-size:12px;color:var(--muted)}.set-tiers__on{color:var(--gold);font-weight:700}.afk{display:flex;align-items:center;gap:10px}.afk--full{border-color:var(--gold);box-shadow:0 0 16px #f2cf7a4d}.afk__icon{flex:none;filter:drop-shadow(0 0 8px rgba(242,207,122,.4))}.afk__body{flex:1;min-width:0}.afk__title{display:flex;justify-content:space-between;gap:8px;font-weight:800}.afk__title span{font-weight:600;font-size:12px;color:var(--gold);font-variant-numeric:tabular-nums}.bar--afk{height:8px;margin:4px 0}.bar--afk .bar__fill{background:linear-gradient(90deg,#d99a2b,#ffe39a)}.afk__rates{font-size:11px;color:var(--muted)}.afk__rates svg{vertical-align:-2px}.modal{position:absolute;inset:0;z-index:9;display:grid;place-items:center;padding:16px;background:#05040fcc;animation:fade-in .2s ease-out both}.modal__box{width:100%;max-width:360px;max-height:86%;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:16px;background:#151038;border:1px solid var(--gold);box-shadow:0 0 40px #f2cf7a40}.modal__title{text-align:center;font-size:20px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}.modal__sub,.modal__note{text-align:center;font-size:12px;color:var(--muted)}.loot{display:flex;flex-direction:column;gap:4px}.loot__row{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;background:#06041280}.loot__row b{margin-left:auto;font-variant-numeric:tabular-nums}.skins{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.skin-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:12px;border:1px solid var(--line);background:#06041266}.skin-card--active{border-color:var(--cyan);box-shadow:0 0 12px #6fe3ff4d}.skin-card--locked{opacity:.75}.skin-card__swatch{display:flex;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.25)}.skin-card__swatch i{width:22px;height:22px}.skin-card__name{font-weight:800;font-size:12px}.skin-card__state{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:var(--gold)}.nav::-webkit-scrollbar{display:none}.nav__tab{scroll-snap-align:start}.difficulty{display:flex;gap:6px;margin-bottom:8px}.difficulty .chip-btn{flex:1}.portrait{display:block;border-radius:10px}.stars{display:inline-flex;gap:1px}.stars__on{color:var(--gold)}.stars__off{color:#a7a6cf40}.team{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:8px}.team__slot{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:12px;border:1px solid var(--line);background:#06041266;min-width:0}.team__slot--front{border-color:#ff8a5db3;background:linear-gradient(180deg,#ff8a5d24,#06041266)}.team__slot--empty{border-style:dashed;opacity:.7}.team__row{font-size:8.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:nowrap}.team__slot--front .team__row{color:#ffb08f}.team__hero{display:grid;place-items:center;width:52px;height:52px;border-radius:10px;background:radial-gradient(circle at 50% 30%,#2f6f8f,#0d0a22);color:var(--cyan)}.team__hero--empty{background:#06041280;color:var(--muted);font-size:22px}.team__name{max-width:100%;font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team__move{display:flex;gap:4px}.team__move button{width:30px;height:26px;border-radius:7px;border:1px solid var(--line);background:var(--panel-2);font-size:10px}.team__move button:disabled{opacity:.3}.formations{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}.formation{display:flex;flex-direction:column;gap:2px;padding:6px;border-radius:10px;border:1px solid var(--line);background:#06041266;text-align:left}.formation b{font-size:13px}.formation span{font-size:10px;line-height:1.25;color:var(--muted)}.formation--active{border-color:var(--cyan);box-shadow:0 0 12px #6fe3ff40}.formation--active b{color:var(--cyan)}.synergies{display:flex;flex-direction:column;gap:4px;font-size:12px}.synergies__none{color:var(--muted);font-size:11px}.synergy{padding:4px 8px;border-radius:8px;background:#f2cf7a1a;border:1px solid rgba(242,207,122,.4);color:var(--green)}.synergy b{margin-right:8px;color:var(--gold)}.roster{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.ally-card{--rarity: #5aa9ff;position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 2px 6px;border-radius:12px;border:1.5px solid var(--rarity);background:linear-gradient(180deg,color-mix(in srgb,var(--rarity) 22%,#14103a),#100c2a);min-width:0}.ally-card--epic,.ally-face--epic,.pull--epic{--rarity: #b77bff}.ally-card--legendary,.ally-face--legendary,.pull--legendary{--rarity: #ffc24d}.ally-card--legendary{box-shadow:0 0 10px #ffc24d59}.ally-card--locked{border-style:dashed;background:#06041266}.ally-card--selected{outline:2px solid #fff;outline-offset:1px}.ally-card__name{max-width:100%;font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ally-card__lvl{font-size:10px;color:var(--muted)}.ally-card__team{position:absolute;top:3px;left:3px;padding:1px 4px;border-radius:4px;background:var(--green);color:#04180e;font-size:8.5px;font-weight:900}.ally-face{--rarity: #5aa9ff;flex:none;border-radius:12px;border:2px solid var(--rarity);overflow:hidden;box-shadow:0 0 14px color-mix(in srgb,var(--rarity) 40%,transparent)}.tags{display:flex;flex-wrap:wrap;gap:2px 8px;margin-top:3px;font-size:11px;font-weight:700;color:var(--muted)}.ally-bio{margin:10px 0;font-size:12.5px;line-height:1.45;color:#cfcdea;font-style:italic}.ability{margin-bottom:6px;padding:6px 8px;border-radius:8px;background:#06041280;font-size:12px}.ability b{color:var(--cyan)}.ability i{font-style:normal;font-size:11px;color:var(--gold)}.ability span{display:block;color:var(--muted)}.stats--compact{margin:8px 0}.banner-card{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;background:radial-gradient(120% 90% at 50% 0%,rgba(183,123,255,.4),transparent 60%),linear-gradient(180deg,#24184f,#120e30);border-color:#b77bff99}.banner-card__title{font-size:22px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg,#fff,#d4b8ff);-webkit-background-clip:text;background-clip:text;color:transparent}.banner-card__sub{margin-top:-6px;font-size:12px;color:var(--muted)}.banner-card__faces{display:flex;gap:4px}.banner-card__faces .portrait{border:1.5px solid #ffc24d}.res--center{justify-content:center}.btn--wide{width:100%}.summon-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;width:100%}.summon-buttons .btn{padding:0 4px;font-size:12px}.pity{display:flex;flex-direction:column;gap:1px;font-size:11px;color:var(--muted)}.pity b{color:var(--gold)}.rate-row{padding:6px 0;border-top:1px solid rgba(150,130,255,.12)}.rate-row:first-of-type{border-top:0}.rate-row__head{display:flex;justify-content:space-between;gap:8px;font-size:13px;font-variant-numeric:tabular-nums}.rate-row__names{font-size:11px;color:var(--muted)}.rules{margin:8px 0 0;padding-left:18px;font-size:11px;line-height:1.4;color:var(--muted)}.pulls{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.pull{--rarity: #5aa9ff;display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 1px;border-radius:10px;border:1.5px solid var(--rarity);background:color-mix(in srgb,var(--rarity) 18%,#100c2a);min-width:0;animation:pull-in .35s cubic-bezier(.2,1.4,.4,1) both}.pull--legendary{box-shadow:0 0 14px #ffc24d99}@keyframes pull-in{0%{opacity:0;transform:scale(.5) rotate(-8deg)}}.pull .portrait{width:100%;height:auto;max-width:54px}.pull__name{max-width:100%;font-size:9.5px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pull__tag{font-size:8.5px;color:var(--gold)}.tasks{display:flex;flex-direction:column;gap:8px}.task{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:#06041266}.task--done{border-color:#f2cf7abf;background:linear-gradient(100deg,#5a3c1466,#06041266);box-shadow:0 0 12px #f2cf7a33}.task--claimed{opacity:.5}.task__body{flex:1;min-width:0}.task__name{font-weight:700;font-size:13px}.bar--task{height:12px;margin:4px 0}.bar--task .bar__fill{background:linear-gradient(90deg,#7a5cff,var(--cyan))}.task--done .bar--task .bar__fill{background:linear-gradient(90deg,#d99a2b,#ffe39a)}.bar--task .bar__label{font-size:9.5px}.task__reward{display:flex;flex-wrap:wrap;gap:2px 10px;font-size:12px;font-weight:700;color:var(--gold)}.task__reward span{display:inline-flex;align-items:center;gap:3px}.task .btn{flex:none;min-width:84px;padding:0 8px;font-size:12px}.chip-badge{min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--magenta);color:#fff;font-style:normal;font-size:10px;line-height:16px;text-align:center}.boot{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;background:radial-gradient(80% 50% at 50% 30%,rgba(120,90,255,.3),transparent 70%),linear-gradient(180deg,#0d0b26,#06051a)}.boot__logo{font-size:46px;font-weight:900;letter-spacing:.14em;background:linear-gradient(180deg,#fff,var(--cyan) 55%,var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}.boot__tag{margin-top:-8px;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}.boot__status{margin:18px 0 6px;color:var(--muted);animation:boot-pulse 1.4s ease-in-out infinite}.boot__status--error{color:#ffb3c8;animation:none}@keyframes boot-pulse{50%{opacity:.45}}.boot .btn{width:100%;max-width:280px}.boot__note{max-width:320px;font-size:11px;line-height:1.45;color:var(--muted)}.conn{flex:none;padding:3px 10px;text-align:center;font-size:11px;font-weight:700}.conn--offline{background:#5a1830;color:#ffd2de}.conn--local{background:#4a3a10;color:#ffe39a}.account{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px}.account div{display:flex;flex-direction:column;padding:6px 10px;border-radius:8px;background:#06041273}.account span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.account b{font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}.account-form{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:10px;background:#06041273}.account-form__title{font-weight:800}.account-form label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--muted)}.account-form input{min-height:40px;padding:0 10px;border-radius:8px;border:1px solid var(--line);background:#0d0a22;color:var(--text);font:inherit;font-size:15px;user-select:text;-webkit-user-select:text}.account-form input:focus{outline:2px solid var(--cyan);outline-offset:1px}.account-form__error,.account-form__warn{font-size:12px;color:#ffb3c8}.account__danger{margin-top:10px;padding-top:8px;border-top:1px solid rgba(150,130,255,.12)}.announcement{padding:8px 12px;border-radius:12px;border:1px solid rgba(111,227,255,.5);background:#143c5a80;font-size:13px;font-weight:600}.chips{display:inline-flex;flex-wrap:wrap;gap:2px 10px;font-size:12px;font-weight:700;color:var(--gold)}.chips span{display:inline-flex;align-items:center;gap:3px}.offers{display:flex;flex-direction:column;gap:8px}.offer{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px solid var(--line);background:#06041266}.offer--paid{border-color:#b77bff8c;background:linear-gradient(100deg,#46288266,#06041266)}.offer--sold{opacity:.5}.offer__body{flex:1;min-width:0}.offer__name{font-weight:800;font-size:13px}.offer__desc,.offer__limit{font-size:11px;color:var(--muted)}.offer .btn{flex:none;flex-direction:column;gap:0;min-width:82px;min-height:44px;padding:2px 8px}.offer .btn small{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.75}.legal{text-align:left;line-height:1.45}.sandbox-badge{align-self:center;padding:3px 12px;border-radius:10px;background:#5a3a10;border:1px dashed #ffc24d;color:#ffe39a;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.checkout__price{text-align:center;font-size:30px;font-weight:900}.checkout__note{margin:0;padding:8px 10px;border-radius:8px;background:#06041280;font-size:12px;line-height:1.4;color:var(--muted)}.checkout__note b{color:#ffe39a}.checkout__ok{text-align:center;font-weight:700;color:var(--green)}.checkout__error{text-align:center;font-size:12px;color:#ffb3c8}.modal__box .chips{justify-content:center}.season-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.season-head__name{font-size:17px;font-weight:900;color:var(--gold)}.season-head__time{font-size:11px;color:var(--muted)}.season-head__level{display:flex;align-items:baseline;gap:4px;color:var(--muted);font-size:12px}.season-head__level b{font-size:26px;color:var(--cyan)}.season-upsell{margin-bottom:8px;font-size:12px;border-color:#b77bff99;color:#d4b8ff}.season-premium{margin-bottom:8px;padding:6px 10px;border-radius:8px;background:#b77bff2e;border:1px solid rgba(183,123,255,.6);color:#d4b8ff;font-size:12px;font-weight:700;text-align:center}.season-track{display:flex;flex-direction:column;gap:4px}.season-row{display:grid;grid-template-columns:30px 1fr 1fr;gap:4px;align-items:stretch;opacity:.6}.season-row--reached,.season-row--head{opacity:1}.season-row--head{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-align:center}.season-row__lvl{display:grid;place-items:center;border-radius:8px;background:#06041280;font-weight:900;font-size:12px}.season-cell{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:34px;padding:3px 8px;border-radius:8px;border:1px solid var(--line);background:#06041266;color:var(--muted)}.season-cell--ready{border-color:var(--gold);box-shadow:0 0 10px #f2cf7a4d}.season-cell--claimed{opacity:.45;color:var(--green)}.rank-me{margin-bottom:8px;font-weight:800;color:var(--cyan)}.ranks{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.rank{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:10px;background:#06041266;border:1px solid transparent}.rank--me{border-color:var(--cyan);background:#143c5a73}.rank__pos{width:26px;text-align:center;font-weight:900;color:var(--muted)}.rank--top .rank__pos{color:var(--gold)}.rank__name{flex:1;min-width:0;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank__name small{margin-left:8px;font-weight:500;color:var(--muted)}.rank b{font-variant-numeric:tabular-nums;color:var(--gold)}.name-editor{display:flex;align-items:flex-end;gap:8px;margin-bottom:8px}.name-editor label{flex:1;display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--muted)}.name-editor input{min-height:40px;padding:0 10px;border-radius:8px;border:1px solid var(--line);background:#0d0a22;color:var(--text);font:inherit;font-size:15px;user-select:text;-webkit-user-select:text}@media(min-width:700px)and (min-height:900px){.shell{max-width:560px;height:min(100dvh - 32px,1040px)}}@media(orientation:landscape)and (max-height:540px){.shell{max-width:none;height:100dvh;border:0;border-radius:0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto auto;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.topbar{grid-column:1 / -1;grid-row:1;padding:4px 12px}.topbar__crest,.topbar__crest svg{width:34px;height:34px}.topbar__wallet{flex-direction:row;gap:6px}.conn{grid-column:1 / -1;grid-row:2}.battle{grid-column:1;grid-row:3;aspect-ratio:auto;max-height:none;min-height:0;height:100%;border-bottom:0;border-right:1px solid var(--line)}.skillbar{grid-column:1;grid-row:4;padding:4px 10px;border-right:1px solid var(--line);border-bottom:0}.skill{width:40px;height:40px}.skill--ult{width:44px;height:44px}.chip-btn--tall{min-height:40px}.content{grid-column:2;grid-row:3 / 5}.nav{grid-column:1 / -1;grid-row:5;padding-top:2px;padding-bottom:calc(2px + env(safe-area-inset-bottom))}.nav__tab{min-height:40px;gap:0;font-size:9px}.nav__tab svg{width:18px;height:18px}.boot{grid-column:1 / -1;grid-row:1 / -1}.banner{top:22%;padding:6px 12px 8px}.banner__title{font-size:20px}.story__title{margin-top:2%;font-size:18px}.story__text{min-height:44px}}@media(prefers-reduced-motion:reduce){.banner,.toast,.pull,.story,.modal,.boot__status,.item--mythic{animation:none}}
