@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(./rajdhani-devanagari-500-normal-B_DH_jja.woff2) format("woff2"),url(./rajdhani-devanagari-500-normal-BPH8g_s8.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(./rajdhani-latin-ext-500-normal-DiyUS11w.woff2) format("woff2"),url(./rajdhani-latin-ext-500-normal-CyRWJZ5B.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(./rajdhani-latin-500-normal-ByNUCHrt.woff2) format("woff2"),url(./rajdhani-latin-500-normal-DfvNI-Td.woff) format("woff");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}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-devanagari-600-normal-DhS7ScYx.woff2) format("woff2"),url(./rajdhani-devanagari-600-normal-BtY48IV_.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-latin-ext-600-normal-C9ZjJQAt.woff2) format("woff2"),url(./rajdhani-latin-ext-600-normal-BleIgkPp.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-latin-600-normal-CXCVEoA9.woff2) format("woff2"),url(./rajdhani-latin-600-normal-Dx02qI2_.woff) format("woff");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}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(./rajdhani-devanagari-700-normal-BQQOj9BB.woff2) format("woff2"),url(./rajdhani-devanagari-700-normal-DBRwWuxA.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(./rajdhani-latin-ext-700-normal-S6aYESQK.woff2) format("woff2"),url(./rajdhani-latin-ext-700-normal-BPaQ7tlD.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(./rajdhani-latin-700-normal-BPDUZo87.woff2) format("woff2"),url(./rajdhani-latin-700-normal-e0Uj8ZlN.woff) format("woff");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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(./inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(./inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(./inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(./inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(./inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(./inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff) format("woff");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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(./inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(./inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(./inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(./inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(./inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(./inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(./inter-latin-500-normal-BL9OpVg8.woff) format("woff");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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(./inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(./inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(./inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(./inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(./inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(./inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff) format("woff");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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(./inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(./inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(./inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(./inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(./inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(./inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(./inter-latin-700-normal-BLAVimhd.woff) format("woff");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{--surface-sunken: #060910;--surface-base: #0a0e17;--surface-base-2: #0e1320;--surface-raised: #151c2c;--surface-raised-2: #1d2638;--surface-raised-3: #27324a;--surface-glass: rgba(18, 24, 40, .74);--surface-glass-strong: rgba(12, 17, 30, .9);--scrim: rgba(4, 6, 12, .72);--scrim-strong: rgba(3, 5, 10, .88);--border-subtle: rgba(214, 178, 102, .14);--border: rgba(214, 178, 102, .22);--border-strong: rgba(214, 178, 102, .42);--border-cool: rgba(120, 156, 196, .26);--text-primary: #f4efe2;--text-secondary: #aeb6c6;--text-muted: #717c92;--text-on-gold: #1c1402;--text-on-accent: #07111a;--gold: #e7c170;--gold-bright: #ffd884;--gold-deep: #c2952f;--gold-ink: #8a6a1d;--gold-soft: rgba(231, 193, 112, .16);--gold-glow: rgba(255, 216, 132, .55);--steel: #5aa9d6;--steel-bright: #8fd0f0;--steel-deep: #2f6f96;--steel-soft: rgba(90, 169, 214, .16);--danger: #d65b46;--danger-bright: #ff8a73;--success: #5bbf87;--success-bright: #8fe6b3;--warning: #e8a33d;--warning-bright: #ffc46b;--currency-gem: #6fd3e8;--currency-gem-glow: rgba(111, 211, 232, .5);--currency-gold: #ffd166;--currency-gold-glow: rgba(255, 209, 102, .45);--currency-ticket: #d59cf0;--rarity-R: #6c95c2;--rarity-R-2: #9cc4ef;--rarity-R-glow: rgba(108, 149, 194, .5);--rarity-SR: #b06fe6;--rarity-SR-2: #d9a6ff;--rarity-SR-glow: rgba(176, 111, 230, .55);--rarity-SSR: #f2b705;--rarity-SSR-2: #ffe08a;--rarity-SSR-glow: rgba(255, 209, 64, .6);--color-bg: var(--surface-base);--color-bg-elev: var(--surface-raised);--color-bg-elev-2: var(--surface-raised-2);--color-border: var(--border);--color-text: var(--text-primary);--color-text-dim: var(--text-secondary);--color-accent: var(--gold);--color-accent-2: var(--steel);--color-danger: var(--danger);--color-success: var(--success);--faction-allies: #4f96c4;--faction-axis: #c45b4c;--faction-neutral: #a8966e;--role-dps: #e08552;--role-tank: #5e8fd0;--role-healer: #6fc28a;--role-support: #c79ae0;--grad-gold: linear-gradient(135deg, #ffe7a8 0%, #e7c170 38%, #c2952f 100%);--grad-gold-press: linear-gradient(135deg, #e7c170 0%, #c2952f 100%);--grad-steel: linear-gradient(135deg, #8fd0f0 0%, #5aa9d6 45%, #2f6f96 100%);--grad-ssr: linear-gradient(135deg, #fff1c2 0%, #ffd166 45%, #c2952f 100%);--grad-sr: linear-gradient(135deg, #e9c8ff 0%, #b06fe6 50%, #7a3fb0 100%);--grad-r: linear-gradient(135deg, #cfe4ff 0%, #6c95c2 50%, #3f6493 100%);--grad-hp: linear-gradient(90deg, #5bbf87, #8fe6b3);--grad-hp-enemy: linear-gradient(90deg, #a8362a, #d65b46);--grad-banner-scrim: linear-gradient(180deg, rgba(8, 11, 20, 0) 0%, rgba(8, 11, 20, .35) 52%, rgba(8, 11, 20, .94) 100%);--grad-screen-scrim: linear-gradient(180deg, rgba(8, 11, 20, .62) 0%, rgba(8, 11, 20, .82) 60%, rgba(6, 9, 16, .95) 100%);--grad-hud: linear-gradient(180deg, rgba(10, 14, 23, .92) 0%, rgba(10, 14, 23, .55) 100%);--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--gap: var(--space-3);--r-xs: 5px;--r-sm: 8px;--r-md: 14px;--r-lg: 22px;--r-xl: 28px;--r-pill: 999px;--radius: var(--r-sm);--radius-sm: var(--r-xs);--shadow-card: 0 12px 36px rgba(0, 0, 0, .42);--shadow-elev: 0 18px 48px rgba(0, 0, 0, .55);--shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .05);--glow-gold: 0 0 22px rgba(255, 216, 132, .45);--glow-r: 0 0 18px rgba(108, 149, 194, .5);--glow-sr: 0 0 24px rgba(176, 111, 230, .55);--glow-ssr: 0 0 34px rgba(255, 209, 64, .62);--font-display: "Rajdhani", "Oswald", "Segoe UI", system-ui, sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "SFMono-Regular", "Consolas", "Liberation Mono", monospace;--font: var(--font-body);--mono: var(--font-mono);--fs-display: 34px;--fs-h1: 26px;--fs-h2: 21px;--fs-h3: 17px;--fs-body: 15px;--fs-sm: 13px;--fs-caption: 11.5px;--fs-num: 15px;--lh-tight: 1.05;--lh-snug: 1.2;--lh-body: 1.45;--tracking-wide: .08em;--tracking-wider: .16em;--tracking-widest: .28em;--t-press: 90ms;--t-fast: .14s;--t-modal: .22s;--t-route: .36s;--t-anticipation: .85s;--t-impact: .16s;--t-settle: .52s;--t-legendary: 2.8s;--ease-enter: cubic-bezier(.16, 1, .3, 1);--ease-exit: cubic-bezier(.7, 0, .84, 0);--ease-impact: cubic-bezier(.34, 1.56, .64, 1);--reduced-motion-max: .18s;--shell-max: 1180px;--hud-h: 60px;--nav-h: 64px}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{background:radial-gradient(1200px 700px at 50% -10%,rgba(231,193,112,.06),transparent 60%),var(--surface-base);color:var(--text-primary);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#root{isolation:isolate}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:700;line-height:var(--lh-snug);letter-spacing:.01em}a{color:var(--steel-bright);text-decoration:none}p{margin:0 0 var(--space-3)}img{-webkit-user-drag:none;user-select:none}.app-shell{min-height:100%;display:flex;flex-direction:column;position:relative}.screen{position:relative;width:100%;max-width:var(--shell-max);margin:0 auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.row{display:flex;gap:var(--gap);align-items:center}.col{display:flex;flex-direction:column;gap:var(--gap)}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.center{justify-content:center;align-items:center}.grow{flex:1}.dim{color:var(--text-secondary)}.muted{color:var(--text-muted)}.error{color:var(--danger-bright)}.success{color:var(--success-bright)}.eyebrow{font-family:var(--font-display);font-size:var(--fs-caption);font-weight:700;letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--gold)}.section-title{display:flex;align-items:center;gap:var(--space-3);font-size:var(--fs-h2);margin-bottom:var(--space-1)}.section-title:before{content:"";width:4px;height:1.1em;border-radius:var(--r-pill);background:var(--grad-gold);box-shadow:var(--glow-gold)}.panel{background:var(--surface-glass);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:var(--space-4);box-shadow:var(--shadow-card),var(--shadow-inset);backdrop-filter:blur(10px)}.panel--tight{padding:var(--space-3)}.card{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:var(--space-3)}.glass{background:var(--surface-glass);backdrop-filter:blur(8px)}.frame-gold{position:relative;border:1px solid var(--border-strong);border-radius:var(--r-md);background:linear-gradient(180deg,rgba(231,193,112,.06),transparent 30%),var(--surface-raised)}.frame-gold:after{content:"";position:absolute;inset:3px;border:1px solid var(--border-subtle);border-radius:calc(var(--r-md) - 3px);pointer-events:none}button{font-family:var(--font-body);font-size:var(--fs-body);cursor:pointer;color:var(--text-primary);background:var(--surface-raised-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:var(--space-2) var(--space-4);transition:transform var(--t-press) var(--ease-impact),box-shadow var(--t-fast),filter var(--t-fast),background var(--t-fast)}button:active{transform:scale(.96)}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible{outline:2px solid var(--steel-bright);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-display);font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase}.btn--lg{padding:var(--space-3) var(--space-6);font-size:var(--fs-h3)}.btn--block{width:100%}.btn--gold,button.primary{background:var(--grad-gold);color:var(--text-on-gold);border:1px solid var(--gold-bright);box-shadow:var(--glow-gold),var(--shadow-inset)}.btn--gold:hover:not(:disabled),button.primary:hover:not(:disabled){filter:brightness(1.08)}.btn--steel{background:var(--grad-steel);color:var(--text-on-accent);border:1px solid var(--steel-bright);box-shadow:0 0 18px var(--steel-soft),var(--shadow-inset)}.btn--ghost{background:#ffffff08;border:1px solid var(--border);color:var(--text-secondary)}.btn--ghost:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-primary)}.btn--danger{background:#d65b4629;border:1px solid var(--danger);color:var(--danger-bright)}.pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--r-pill);background:var(--surface-glass-strong);border:1px solid var(--border-subtle);font-size:var(--fs-sm);font-weight:600;white-space:nowrap}.pill__icon{font-size:1.05em;line-height:1}.pill__val{font-family:var(--font-display);font-weight:700;font-variant-numeric:tabular-nums}.pill--gem{border-color:var(--currency-gem);box-shadow:0 0 12px var(--currency-gem-glow)}.pill--gem .pill__val{color:var(--currency-gem)}.pill--gold .pill__val{color:var(--currency-gold)}.pill--ticket .pill__val{color:var(--currency-ticket)}.pill--stamina .pill__val{color:var(--steel-bright)}.chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--r-xs);font-size:var(--fs-caption);font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase;border:1px solid var(--border-subtle);color:var(--text-secondary);background:#ffffff0a}.chip--limited{color:var(--text-on-gold);background:var(--grad-gold);border-color:var(--gold-bright)}.chip--role{color:var(--text-primary)}.chip--allies{border-color:var(--faction-allies);color:var(--faction-allies)}.chip--axis{border-color:var(--faction-axis);color:var(--faction-axis)}.chip--neutral{border-color:var(--faction-neutral);color:var(--faction-neutral)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill);background:var(--danger);color:#fffffff5;font-size:10px;font-weight:800;line-height:1;box-shadow:0 0 10px #d65b4699}.badge--new{background:var(--grad-gold);color:var(--text-on-gold);box-shadow:var(--glow-gold);animation:pop-in var(--t-modal) var(--ease-impact) both}.badge--dot{min-width:9px;height:9px;padding:0}.badge--bounce{animation:badge-bounce .7s var(--ease-impact)}.rarity-frame{position:relative;border-radius:var(--r-sm);border:2px solid var(--rarity-R);background:var(--surface-raised);overflow:hidden}.rarity-R{--aura: var(--rarity-R);--aura-2: var(--rarity-R-2);--aura-glow: var(--rarity-R-glow)}.rarity-SR{--aura: var(--rarity-SR);--aura-2: var(--rarity-SR-2);--aura-glow: var(--rarity-SR-glow)}.rarity-SSR{--aura: var(--rarity-SSR);--aura-2: var(--rarity-SSR-2);--aura-glow: var(--rarity-SSR-glow)}.rarity-frame.rarity-R{border-color:var(--rarity-R);box-shadow:0 0 0 1px #0006,var(--glow-r)}.rarity-frame.rarity-SR{border-color:var(--rarity-SR);box-shadow:0 0 0 1px #0006,var(--glow-sr)}.rarity-frame.rarity-SSR{border-color:var(--rarity-SSR);box-shadow:0 0 0 1px #0006,var(--glow-ssr)}.rarity-stars{color:var(--aura, var(--gold));letter-spacing:1px;text-shadow:0 0 8px var(--aura-glow, transparent);font-size:var(--fs-sm)}.rarity-badge{display:inline-flex;align-items:center;justify-content:center;padding:1px var(--space-2);border-radius:var(--r-xs);font-family:var(--font-display);font-weight:800;font-size:var(--fs-caption);letter-spacing:var(--tracking-wide);color:var(--text-on-gold);background:var(--aura, var(--rarity-R))}.bar{position:relative;height:8px;border-radius:var(--r-pill);background:#ffffff14;overflow:hidden;border:1px solid var(--border-subtle)}.bar__fill{position:absolute;inset:0 auto 0 0;height:100%;border-radius:var(--r-pill);background:var(--grad-gold);transition:width var(--t-settle) var(--ease-enter)}.bar--pity .bar__fill{background:var(--grad-ssr);box-shadow:0 0 10px var(--rarity-SSR-glow)}.bar--sr .bar__fill{background:var(--grad-sr)}.bar--xp .bar__fill{background:var(--grad-steel)}.bar--hp .bar__fill{background:var(--grad-hp)}.bar--hp-enemy .bar__fill{background:var(--grad-hp-enemy)}.bar--lg{height:12px}.bar__label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary);text-shadow:0 1px 2px rgba(0,0,0,.8)}.charge-ring{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:800;color:var(--text-primary)}.charge-ring--ready{animation:glow-breathe 1.1s ease-in-out infinite;color:var(--gold-bright)}.hud{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);min-height:var(--hud-h);background:var(--grad-hud);border-bottom:1px solid var(--border-subtle);backdrop-filter:blur(12px)}.hud__identity{display:flex;align-items:center;gap:var(--space-3);min-width:0}.hud__avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);box-shadow:var(--glow-gold);flex-shrink:0}.hud__name{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h3);line-height:1}.hud__rank{font-size:var(--fs-caption);color:var(--text-muted);letter-spacing:var(--tracking-wide);text-transform:uppercase}.hud__currencies{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.bottom-nav{position:sticky;bottom:0;z-index:30;display:flex;gap:2px;padding:var(--space-1) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom));background:var(--grad-hud);border-top:1px solid var(--border-subtle);backdrop-filter:blur(12px);overflow-x:auto;scrollbar-width:none}.bottom-nav::-webkit-scrollbar{display:none}.nav-item{position:relative;flex:1 0 auto;min-width:58px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-1) var(--space-2);background:transparent;border:none;border-radius:var(--r-sm);color:var(--text-muted);font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase}.nav-item .nav-item__icon{font-size:18px;line-height:1;filter:grayscale(.5);transition:transform var(--t-fast) var(--ease-impact)}.nav-item--active{color:var(--gold-bright)}.nav-item--active .nav-item__icon{filter:none;transform:translateY(-2px) scale(1.12)}.nav-item--active:after{content:"";position:absolute;top:0;left:18%;right:18%;height:3px;border-radius:var(--r-pill);background:var(--grad-gold);box-shadow:var(--glow-gold)}.nav-item__badge{position:absolute;top:0;right:22%}.screen-bg{position:relative;background-size:cover;background-position:center;background-attachment:local}.screen-bg:before{content:"";position:absolute;inset:0;background:var(--grad-screen-scrim);pointer-events:none;z-index:0}.screen-bg>*{position:relative;z-index:1}.app-main{flex:1;min-height:0}.route-enter{animation:route-enter var(--t-route) var(--ease-enter) both}@keyframes route-enter{0%{opacity:0}to{opacity:1}}.statline{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border-radius:var(--r-xs);background:#ffffff08;border:1px solid var(--border-subtle)}.statline__label{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--fs-sm)}.statline__val{font-family:var(--font-display);font-weight:700;font-variant-numeric:tabular-nums}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:var(--space-3)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.cc{position:relative;display:flex;flex-direction:column;padding:0;text-align:left;background:var(--surface-raised);border-radius:var(--r-sm);overflow:hidden;border:2px solid var(--aura, var(--border))}.cc__art{width:100%;aspect-ratio:3 / 4;object-fit:cover;display:block;background:var(--surface-raised-2);transition:transform var(--t-route) var(--ease-enter)}.cc:hover .cc__art{transform:scale(1.05)}.cc--locked .cc__art{filter:grayscale(1) brightness(.4) contrast(.9)}.cc__scrim{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(8,11,20,.92) 100%);pointer-events:none}.cc__top{position:absolute;top:var(--space-1);left:var(--space-1);right:var(--space-1);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-1)}.cc__bottom{position:absolute;left:var(--space-2);right:var(--space-2);bottom:var(--space-2)}.cc__name{font-family:var(--font-display);font-weight:700;font-size:var(--fs-sm);line-height:1.1;text-shadow:0 1px 4px rgba(0,0,0,.9)}.cc__lock{position:absolute;inset:0;display:grid;place-items:center;font-size:28px;color:var(--text-muted)}.cc__upgrade{position:absolute;bottom:var(--space-1);right:var(--space-1);animation:glow-breathe 2.4s ease-in-out infinite}.hero{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-elev);min-height:220px;display:flex}.hero__art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero__art--anim{animation:hero-drift 18s ease-in-out infinite alternate}.hero__scrim{position:absolute;inset:0;background:var(--grad-banner-scrim)}.hero__body{position:relative;z-index:1;margin-top:auto;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);width:100%}.hero__title{font-size:var(--fs-display);text-shadow:0 2px 16px rgba(0,0,0,.8),0 0 24px var(--gold-glow)}.hero__sheen{position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.14) 50%,transparent 60%);transform:translate(-100%);animation:sheen 6s ease-in-out infinite;pointer-events:none}.banner-carousel{display:flex;gap:var(--space-3);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 calc(-1 * var(--space-4));padding:0 var(--space-4)}.banner-carousel::-webkit-scrollbar{display:none}.banner-slide{flex:0 0 100%;scroll-snap-align:center}.reward-strip{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1);scrollbar-width:none}.reward-strip::-webkit-scrollbar{display:none}.reward-thumb{position:relative;flex:0 0 auto;width:56px;height:56px;border-radius:var(--r-xs);overflow:hidden;border:2px solid var(--aura, var(--border));background:var(--surface-raised-2)}.reward-thumb img{width:100%;height:100%;object-fit:cover}.modal-scrim{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--scrim-strong);backdrop-filter:blur(6px);animation:fade-in var(--t-modal) ease both}.modal{position:relative;width:100%;max-width:440px;border-radius:var(--r-lg);border:1px solid var(--border-strong);background:linear-gradient(180deg,rgba(231,193,112,.07),transparent 30%),var(--surface-raised);box-shadow:var(--shadow-elev);padding:var(--space-6);animation:modal-pop var(--t-modal) var(--ease-impact) both}.modal__title{font-size:var(--fs-h2);text-align:center;margin-bottom:var(--space-4);letter-spacing:var(--tracking-wide)}.ceremony{position:fixed;inset:0;z-index:90;overflow:hidden;background:radial-gradient(circle at 50% 42%,var(--surface-base-2),var(--surface-sunken) 75%);display:flex;align-items:center;justify-content:center;pointer-events:none}.ceremony__field{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,var(--aura-glow, transparent),transparent 58%);opacity:.9}.particle-layer{position:absolute;inset:0;z-index:93;pointer-events:none}.particle-layer canvas{width:100%!important;height:100%!important}.ceremony__rays{position:absolute;width:160vmax;height:160vmax;left:50%;top:45%;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0deg,var(--aura-glow, rgba(255, 255, 255, .06)) 6deg,transparent 12deg);opacity:.5;animation:spin 24s linear infinite;pointer-events:none}.ceremony__flash{position:fixed;inset:0;z-index:95;background:radial-gradient(circle at center,rgba(255,255,255,.96),var(--aura, var(--gold)) 38%,transparent 72%);animation:summon-flash .9s ease-out forwards;pointer-events:none}.ceremony__skip{position:absolute;top:var(--space-4);right:var(--space-4);z-index:96;pointer-events:auto}.ceremony__card-stage{position:relative;z-index:94;display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.summon-card{width:min(64vw,260px);border-radius:var(--r-md);overflow:hidden;border:3px solid var(--aura, var(--gold));box-shadow:0 0 40px var(--aura-glow, transparent),var(--shadow-elev);background:var(--surface-raised);animation:card-reveal .6s var(--ease-impact) both}.summon-card--breathe{animation:card-reveal .6s var(--ease-impact) both,glow-breathe 2.4s ease-in-out infinite .7s}.summon-card__art{width:100%;aspect-ratio:3 / 4;object-fit:cover;display:block}.result-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-2)}.result-cell{position:relative;border-radius:var(--r-xs);overflow:hidden;border:2px solid var(--aura, var(--border));background:var(--surface-raised-2);aspect-ratio:3 / 4;animation:card-deal .45s var(--ease-impact) both}.result-cell img{width:100%;height:100%;object-fit:cover}.result-cell__tag{position:absolute;bottom:2px;left:2px;right:2px;text-align:center}.toast{margin:var(--space-2) auto;max-width:var(--shell-max);border-radius:var(--r-sm);padding:var(--space-2) var(--space-4);border:1px solid var(--border)}.toast--error{border-color:var(--danger);background:#d65b461f}.overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background-size:cover;background-position:center}.overlay:before{content:"";position:absolute;inset:0;background:var(--scrim-strong)}.overlay__panel{position:relative;z-index:1;width:100%;max-width:540px;text-align:center}.banner-art{width:100%;border-radius:var(--r-md);border:1px solid var(--border);display:block}.dots{display:flex;gap:var(--space-2);justify-content:center}.dots span{width:8px;height:8px;border-radius:50%;background:#fff3}.dots span.on{background:var(--gold);box-shadow:var(--glow-gold)}.outcome{font-family:var(--font-display);font-weight:800;letter-spacing:var(--tracking-wider);text-transform:uppercase;text-align:center}.outcome--victory{font-size:var(--fs-display);color:var(--gold-bright);text-shadow:0 0 26px var(--gold-glow);animation:pop-in var(--t-settle) var(--ease-impact) both}.outcome--victory:before{content:"✦";margin-right:.4em}.outcome--victory:after{content:"✦";margin-left:.4em}.outcome--defeat{font-size:var(--fs-display);color:var(--danger-bright);text-shadow:0 0 22px rgba(214,91,70,.5)}.loot-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--r-xs);background:#ffffff08;border:1px solid var(--border-subtle)}.loot-row__icon{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--r-xs);background:var(--surface-raised-2);font-size:18px}.bstage{position:fixed;inset:0;z-index:72;pointer-events:none;display:flex;flex-direction:column;background-size:cover;background-position:center}.bstage__bar{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--grad-hud);border-bottom:1px solid var(--border-subtle)}.turn-track{display:flex;align-items:center;gap:3px;overflow:hidden}.turn-chip{width:26px;height:26px;border-radius:50%;overflow:hidden;border:1px solid var(--border);flex:0 0 auto;background:var(--surface-raised-2)}.turn-chip img{width:100%;height:100%;object-fit:cover}.turn-chip--now{border-color:var(--gold-bright);box-shadow:var(--glow-gold);transform:scale(1.12)}.turn-chip--enemy{border-color:var(--faction-axis)}.bstage__field{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:space-evenly;padding:var(--space-3);gap:var(--space-2)}.b-row{display:flex;gap:var(--space-2);justify-content:center;align-items:flex-end}.b-unit{position:relative;width:80px;transition:transform .16s ease,opacity .32s ease;will-change:transform}.b-unit__sprite{width:100%;aspect-ratio:3 / 4;object-fit:contain;display:block;filter:drop-shadow(0 6px 8px rgba(0,0,0,.6))}.b-unit--dead{opacity:.28;filter:grayscale(1)}.b-unit__shadow{position:absolute;bottom:2px;left:18%;right:18%;height:7px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.55),transparent 70%)}.vfx-flash{position:absolute;inset:-6%;border-radius:var(--r-sm);background:radial-gradient(circle,rgba(255,255,255,.92),rgba(255,210,120,.4) 45%,transparent 72%);pointer-events:none;animation:vfx-flash .32s ease-out forwards;z-index:3}.vfx-slash{position:absolute;top:30%;left:-10%;width:120%;height:6px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);transform:rotate(-24deg);pointer-events:none;animation:vfx-slash .3s ease-out forwards;z-index:3}.cutin{position:fixed;inset:0;z-index:74;display:grid;place-items:center;pointer-events:none}.cutin__banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:linear-gradient(100deg,transparent,var(--surface-glass-strong) 14%,var(--surface-glass-strong) 86%,transparent);border-top:2px solid var(--aura, var(--gold));border-bottom:2px solid var(--aura, var(--gold));width:100%;animation:cutin-in .7s var(--ease-impact) both}.cutin__portrait{width:76px;height:76px;border-radius:50%;object-fit:cover;border:3px solid var(--aura, var(--gold));box-shadow:0 0 24px var(--aura-glow, var(--gold-glow))}.shake{animation:battle-shake-hit .34s ease-in-out}@keyframes vfx-flash{0%{opacity:1;transform:scale(.7)}to{opacity:0;transform:scale(1.25)}}@keyframes vfx-slash{0%{opacity:0;transform:rotate(-24deg) translate(-30%) scaleX(.4)}40%{opacity:1}to{opacity:0;transform:rotate(-24deg) translate(30%) scaleX(1.1)}}@keyframes battle-shake-hit{0%,to{transform:translate(0)}20%{transform:translate(-6px,3px)}40%{transform:translate(6px,-4px)}60%{transform:translate(-4px,3px)}80%{transform:translate(4px,-2px)}}@keyframes cutin-in{0%{opacity:0;transform:translate(-30px) skew(-8deg)}20%{opacity:1;transform:translate(0) skew(-8deg)}82%{opacity:1;transform:translate(0) skew(-8deg)}to{opacity:0;transform:translate(30px) skew(-8deg)}}.battlefield{position:relative;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--border);min-height:300px;display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-4);background-size:cover;background-position:center}.unit-row{display:flex;gap:var(--space-3);flex-wrap:wrap}.unit{position:relative;width:92px;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--border);background:var(--surface-glass-strong)}.unit__art{width:100%;aspect-ratio:1 / 1;object-fit:cover}.unit__bars{padding:3px var(--space-1) var(--space-1);display:flex;flex-direction:column;gap:2px}.dmg-float{position:absolute;font-family:var(--font-display);font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.9)}.dmg-float--anim{animation:dmg-rise 1.5s ease-out infinite both}.unit__art--sprite{object-fit:contain;background:radial-gradient(circle at 50% 60%,rgba(120,60,40,.35),transparent 70%)}.hit-spark{position:absolute;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,rgba(255,244,196,.95),rgba(255,150,60,.5) 42%,transparent 72%);pointer-events:none;animation:hit-spark 1.5s ease-out infinite}.battlefield--live{animation:battle-shake 3s ease-in-out infinite}.unit--hit{animation:unit-hit 1.5s ease-in-out infinite}@keyframes dmg-rise{0%{transform:translateY(10px) scale(.7);opacity:0}18%{transform:translateY(0) scale(1.15);opacity:1}68%{opacity:1}to{transform:translateY(-30px) scale(1);opacity:0}}@keyframes hit-spark{0%{transform:scale(.2);opacity:0}28%{transform:scale(1);opacity:.95}to{transform:scale(1.7);opacity:0}}@keyframes battle-shake{0%,90%,to{transform:translate(0)}92%{transform:translate(-3px,1px)}94%{transform:translate(3px,-2px)}96%{transform:translate(-2px,2px)}98%{transform:translate(2px,-1px)}}@keyframes unit-hit{0%,60%,to{filter:none}70%{filter:brightness(1.7) saturate(1.3)}}.divider{height:1px;background:var(--border-subtle);margin:var(--space-2) 0}.scrollx{display:flex;gap:var(--space-3);overflow-x:auto;scrollbar-width:none;padding-bottom:var(--space-1)}.scrollx::-webkit-scrollbar{display:none}.tabbar{display:flex;gap:var(--space-1);background:var(--surface-glass-strong);border:1px solid var(--border-subtle);border-radius:var(--r-pill);padding:3px}.tabbar button{flex:1;border:none;background:transparent;border-radius:var(--r-pill);font-family:var(--font-display);font-weight:700;font-size:var(--fs-sm);letter-spacing:var(--tracking-wide);color:var(--text-secondary);padding:var(--space-2)}.tabbar button.on{background:var(--grad-gold);color:var(--text-on-gold)}.num{font-variant-numeric:tabular-nums;font-family:var(--font-display)}.count-pop{animation:count-pop var(--t-fast) var(--ease-impact)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08);opacity:1}to{transform:scale(1)}}@keyframes modal-pop{0%{transform:scale(.92) translateY(8px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@keyframes card-reveal{0%{transform:scale(.4) rotateY(90deg);opacity:0}60%{transform:scale(1.08) rotateY(0);opacity:1}to{transform:scale(1) rotateY(0);opacity:1}}@keyframes card-deal{0%{transform:translateY(18px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes summon-flash{0%{opacity:0}12%{opacity:1}to{opacity:0}}@keyframes glow-breathe{0%,to{box-shadow:0 0 12px 1px var(--aura-glow, var(--gold-glow))}50%{box-shadow:0 0 28px 6px var(--aura-glow, var(--gold-glow))}}@keyframes sheen{0%,70%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes hero-drift{0%{transform:scale(1.04) translate(0)}to{transform:scale(1.12) translate(-2%,-1%)}}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes badge-bounce{0%{transform:scale(0) translateY(-6px)}60%{transform:scale(1.25) translateY(2px)}to{transform:scale(1) translateY(0)}}@keyframes count-pop{0%{transform:scale(1.3);color:var(--gold-bright)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:var(--reduced-motion-max)!important}.hero__art--anim,.hero__sheen,.ceremony__rays,.ceremony__flash,.summon-card--breathe{animation:none!important}}.reduced-motion .hero__art--anim,.reduced-motion .hero__sheen,.reduced-motion .ceremony__rays,.reduced-motion .ceremony__flash,.reduced-motion .summon-card,.reduced-motion .summon-card--breathe,.reduced-motion .result-cell,.reduced-motion .dmg-float--anim,.reduced-motion .hit-spark,.reduced-motion .battlefield--live,.reduced-motion .unit--hit,.reduced-motion .vfx-flash,.reduced-motion .vfx-slash,.reduced-motion .cutin__banner,.reduced-motion .shake{animation:none!important}
