@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-devanagari-500-normal-B_DH_jja.woff2)format("woff2"),url(/assets/rajdhani-devanagari-500-normal-BPH8g_s8.woff)format("woff");unicode-range:U+900-97F,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(/assets/rajdhani-latin-ext-500-normal-DiyUS11w.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-500-normal-CyRWJZ5B.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(/assets/rajdhani-latin-500-normal-ByNUCHrt.woff2)format("woff2"),url(/assets/rajdhani-latin-500-normal-DfvNI-Td.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(/assets/rajdhani-devanagari-600-normal-DhS7ScYx.woff2)format("woff2"),url(/assets/rajdhani-devanagari-600-normal-BtY48IV_.woff)format("woff");unicode-range:U+900-97F,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(/assets/rajdhani-latin-ext-600-normal-C9ZjJQAt.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-600-normal-BleIgkPp.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(/assets/rajdhani-latin-600-normal-CXCVEoA9.woff2)format("woff2"),url(/assets/rajdhani-latin-600-normal-Dx02qI2_.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(/assets/rajdhani-devanagari-700-normal-BQQOj9BB.woff2)format("woff2"),url(/assets/rajdhani-devanagari-700-normal-DBRwWuxA.woff)format("woff");unicode-range:U+900-97F,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(/assets/rajdhani-latin-ext-700-normal-S6aYESQK.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-700-normal-BPaQ7tlD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(/assets/rajdhani-latin-700-normal-BPDUZo87.woff2)format("woff2"),url(/assets/rajdhani-latin-700-normal-e0Uj8ZlN.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,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(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,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(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,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(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0d1017;--surface-1:#141926;--surface-2:#1c2231;--border:#2a3142;--text-h:#f3f5fa;--text:#9aa4b8;--accent:#f5c451;--accent-hi:#ffd879;--ally:#3d82f6;--enemy:#ff4d5e;--success:#34d399;--warning:#fbbf24;--danger:#ff4d5e;--font-display:"Rajdhani", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--sans:var(--font-body);--mono:ui-monospace, Consolas, monospace;--fs-2xs:.6875rem;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-base:.875rem;--fs-md:1rem;--fs-lg:1.25rem;--fs-xl:1.5rem;--fs-2xl:2rem;--fs-3xl:2.5rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--shadow-1:0 1px 2px #0000004d;--shadow-2:0 4px 12px #00000059;--shadow-3:0 12px 32px #00000073}[data-theme=light]{--bg:#f7f8fb;--surface-1:#fff;--surface-2:#eef1f6;--border:#dfe3ec;--text-h:#0d1017;--text:#5a6478;--accent:#c9962a;--accent-hi:#b0821f;--ally:#2563eb;--enemy:#dc2626;--success:#059669;--warning:#b45309;--danger:#dc2626}@media (prefers-color-scheme:light){:root:not([data-theme]){--bg:#f7f8fb;--surface-1:#fff;--surface-2:#eef1f6;--border:#dfe3ec;--text-h:#0d1017;--text:#5a6478;--accent:#c9962a;--accent-hi:#b0821f;--ally:#2563eb;--enemy:#dc2626;--success:#059669;--warning:#b45309;--danger:#dc2626}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:var(--sans);letter-spacing:.18px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:18px;line-height:145%}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}#root{box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;display:flex}body,p{margin:0}@media (width>=769px){::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--surface-2)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app__title,.detail-header__name,.detail-section__title,.tier-list__season,.tier-group__letter,.tier-group__label,.counter-suggestions__title,.matchup-matrix__section-title,.win-prob__label,.ban-suggestions__title,.synergy-web__title,.team-bar__label,.draft-pick-indicator{font-family:"Rajdhani", var(--sans);letter-spacing:.3px}.counter-suggestions,.comp-analysis,.win-prob,.ban-suggestions,.synergy-web,.presets-panel,.draft-controls,.matchup-matrix__section,.matchup-matrix__hero-display,.detail-info-grid{background:var(--surface-1);border:1px solid var(--border);box-shadow:var(--shadow-1);position:relative}.counter-suggestions__title,.matchup-matrix__section-title,.ban-suggestions__title,.synergy-web__title,.detail-section__title,.win-prob__label{padding-left:var(--space-3);border-left:3px solid var(--accent)}.hero-card,.counter-card,.matchup-card,.tier-hero,.ban-suggestion-card{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}.is-active-glow{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 55%, transparent), var(--shadow-2)}:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}*,:before,:after{box-sizing:border-box;-webkit-text-size-adjust:100%}input,button,select,textarea{font-family:inherit}body{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.5}#root{overscroll-behavior-y:contain;flex-direction:column;width:100%;min-height:100svh;display:flex}.app{flex-direction:column;min-height:100svh;display:flex}.app__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);padding-top:calc(var(--space-3) + env(safe-area-inset-top,0px));border-bottom:1px solid var(--border);background:var(--surface-1);display:flex}.app__brand{align-items:center;gap:var(--space-3);min-width:0;display:flex}.app__logo{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--accent), var(--accent-hi));width:34px;height:34px;color:var(--bg);font-size:var(--fs-lg);clip-path:polygon(12% 0,100% 0,88% 100%,0 100%);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.app__brand-text{flex-direction:column;min-width:0;line-height:1.05;display:flex}.app__title{font-family:"Rajdhani", var(--sans);font-size:var(--fs-lg);letter-spacing:.5px;color:var(--text-h);text-transform:uppercase;font-weight:700}.app__subtitle{font-family:"Rajdhani", var(--sans);font-size:var(--fs-2xs);letter-spacing:2px;text-transform:uppercase;color:var(--accent);font-weight:600}.app__header-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.app__icon-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);width:44px;height:44px;color:var(--text-h);font-size:var(--fs-md);cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;padding:0;transition:border-color .2s,background .2s;display:flex}.app__icon-btn:hover{border-color:var(--accent);color:var(--accent)}.app__tabs{background:var(--surface-1);border-top:1px solid var(--border);padding:var(--space-1) var(--space-1);padding-bottom:calc(var(--space-1) + env(safe-area-inset-bottom,0px));z-index:100;box-shadow:var(--shadow-2);display:flex;position:fixed;bottom:0;left:0;right:0}.tab-btn{min-height:52px;padding:var(--space-1);font-family:var(--sans);font-size:var(--fs-2xs);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-weight:600;transition:color .2s;display:flex}.tab-btn__icon{font-size:var(--fs-md);line-height:1}.tab-btn.active,.tab-btn[aria-current=page]{color:var(--accent)}.tab-btn.active .tab-btn__icon{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--accent) 60%, transparent))}.tab-btn:active{opacity:.7}.app__main{padding:var(--space-3);padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));flex:1;width:100%;max-width:1200px;margin:0 auto}.app__footer{padding:var(--space-3);padding-bottom:calc(var(--space-3) + 72px + env(safe-area-inset-bottom,0px));text-align:center;border-top:1px solid var(--border);font-size:var(--fs-xs);color:var(--text);opacity:.8}.back-to-top{bottom:calc(76px + env(safe-area-inset-bottom,0px));right:var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-1);width:44px;height:44px;color:var(--text-h);font-size:var(--fs-lg);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;z-index:200;box-shadow:var(--shadow-2);justify-content:center;align-items:center;transition:opacity .3s,transform .2s,visibility .3s;display:flex;position:fixed}.back-to-top:hover{transform:translateY(-2px)}.back-to-top--visible{opacity:1;visibility:visible;pointer-events:auto}.badge{font-size:var(--fs-2xs);border-radius:4px;padding:2px 7px;font-weight:600;display:inline-block}.badge--role{color:#0d1017;font-weight:700}.badge--specialty{background:var(--surface-2);border:1px solid var(--border);color:var(--text-h)}.badge--lane{color:var(--text);background:0 0;border:1px solid}.hero-list__controls{margin-bottom:12px}.hero-list__search{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font-size:var(--fs-base);font-family:var(--sans);background:var(--surface-2);color:var(--text-h);box-sizing:border-box;margin-bottom:12px;padding:10px 36px 10px 14px;transition:border-color .2s,box-shadow .2s}.hero-list__search:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent);outline:none}.search-clear-btn{background:var(--surface-2);cursor:pointer;width:26px;height:26px;font-size:var(--fs-xs);color:var(--text-h);border:none;border-radius:50%;transition:background .2s;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.search-clear-btn:hover{background:var(--border)}.hero-list__filters{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.filter-group__label{font-size:var(--fs-xs);color:var(--text);margin-bottom:4px;font-weight:600;display:block}.filter-group__buttons{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:wrap;gap:4px;display:flex;overflow-x:auto}.filter-group__buttons::-webkit-scrollbar{display:none}.filter-btn{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);color:var(--text);font-family:var(--sans);font-size:var(--fs-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:7px 12px;transition:all .2s}.filter-btn:hover{border-color:var(--accent)}.filter-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.filter-btn--clear{border-color:var(--enemy);color:var(--enemy);background:color-mix(in srgb, var(--enemy) 6%, transparent)}.hero-list__count{font-size:var(--fs-sm);color:var(--text);margin:0 0 12px}.hero-grid{grid-template-columns:repeat(auto-fill,minmax(min(150px,45vw),1fr));gap:10px;display:grid}.hero-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;outline:none;flex-direction:column;padding:10px;transition:transform .12s,border-color .15s;display:flex}.hero-card:hover{border-color:color-mix(in srgb, var(--accent) 45%, transparent);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.hero-card:active{transform:scale(.98)}.hero-card__top{align-items:center;gap:8px;margin-bottom:8px;display:flex}.hero-card__icon{object-fit:cover;border:2px solid var(--border);border-radius:50%;flex-shrink:0;width:42px;height:42px}.hero-card__info{flex:1;min-width:0;overflow:hidden}.hero-card__header{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.hero-card__id{font-size:var(--fs-xs);color:var(--text);font-weight:600;font-family:var(--mono)}.hero-card__date{font-size:var(--fs-xs);color:var(--text)}.hero-card__name{font-size:var(--fs-md);color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:600;overflow:hidden}.hero-card__title{font-size:var(--fs-xs);color:var(--text);margin:1px 0 0;font-style:italic}.hero-card__roles,.hero-card__specialties,.hero-card__lanes{flex-wrap:wrap;gap:3px;margin-bottom:4px;display:flex}.hero-card__region{font-size:var(--fs-xs);color:var(--text);margin:4px 0 0}.modal-overlay{-webkit-backdrop-filter:blur(2px);z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;padding:0;animation:.2s ease-out overlayFade;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes overlayFade{0%{background:0 0}to{background:#00000080}}.modal{background:var(--surface-1);border-radius:var(--radius-lg) var(--radius-lg) 0 0;will-change:transform;border:1px solid var(--border);border-bottom:none;border-top:2px solid var(--accent);width:100%;max-width:100%;max-height:90vh;animation:.2s ease-out slideUp;position:relative;box-shadow:0 -4px 20px #00000026}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal:before{content:"";background:var(--border);border-radius:2px;width:36px;height:4px;margin:8px auto 0;display:block}.modal__close{background:var(--surface-2);width:32px;height:32px;color:var(--text-h);font-size:var(--fs-lg);cursor:pointer;z-index:20;border:none;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:8px;right:8px}.modal__close:hover{background:color-mix(in srgb, var(--accent) 15%, transparent)}.modal__close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.modal__body{-webkit-overflow-scrolling:touch;max-height:calc(90vh - 48px);padding:12px 16px 24px;overflow-y:auto}.detail-section-nav{scrollbar-width:none;background:var(--bg);z-index:5;gap:4px;margin-bottom:12px;padding:4px 0;display:flex;position:sticky;top:0;overflow-x:auto}.detail-section-nav::-webkit-scrollbar{display:none}.detail-section-nav__btn{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2);color:var(--text);font-family:var(--sans);font-size:var(--fs-xs);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;flex-shrink:0;padding:6px 12px;font-weight:600;transition:all .2s}.detail-section-nav__btn:active{transform:scale(.96)}.detail-header{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.detail-header__icon{object-fit:cover;border:3px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:50%;flex-shrink:0;width:64px;height:64px}.detail-header__info{flex:1;min-width:0;overflow:hidden}.detail-header__top{align-items:center;gap:8px;margin-bottom:2px;display:flex}.detail-header__id{font-size:var(--fs-xs);color:var(--text);font-weight:600;font-family:var(--mono)}.detail-header__date{font-size:var(--fs-xs);color:var(--text)}.detail-header__name{font-size:var(--fs-lg);color:var(--text-h);margin:0;font-weight:700}.detail-header__title{font-size:var(--fs-base);color:var(--text);margin:1px 0 4px;font-style:italic}.detail-header__desc{font-size:var(--fs-sm);color:var(--text);overflow-wrap:break-word;word-break:break-word;margin:0 0 8px;line-height:1.4}.detail-header__badges{flex-wrap:wrap;gap:3px;display:flex}.detail-info-grid{background:var(--surface-2);border-radius:var(--radius-sm);grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:16px;padding:10px;display:grid}.detail-info-item{flex-direction:column;gap:1px;display:flex}.detail-info-item__label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.3px;color:var(--text)}.detail-info-item__value{font-size:var(--fs-base);color:var(--text-h);font-weight:500}.detail-section{margin-bottom:20px}.detail-section__title{font-size:var(--fs-lg);color:var(--text-h);border-bottom:2px solid var(--border);letter-spacing:-.2px;margin:0 0 10px;padding-bottom:6px;font-weight:700}.detail-ratings{flex-direction:column;gap:6px;display:flex}.detail-rating{align-items:center;gap:8px;display:flex}.detail-rating__label{width:64px;font-size:var(--fs-xs);color:var(--text);flex-shrink:0}.detail-rating__bar{background:var(--border);border-radius:3px;flex:1;height:6px;overflow:hidden}.detail-rating__fill{background:var(--accent);border-radius:3px;height:100%;transition:width .3s}.detail-rating__value{width:32px;font-size:var(--fs-xs);color:var(--text);text-align:right;flex-shrink:0;font-weight:600}.detail-stats-table{border-collapse:collapse;width:100%}.detail-stats-table th,.detail-stats-table td{text-align:left;border-bottom:1px solid var(--border);font-size:var(--fs-xs);padding:5px 6px}.detail-stats-table th{color:var(--text);font-weight:600;font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.3px;background:var(--surface-2)}.detail-stats-table td:not(:first-child){font-family:var(--mono);color:var(--text-h)}.detail-stats-table tr:last-child td{border-bottom:none}.detail-abilities{flex-direction:column;gap:0;display:flex}.detail-ability{border-bottom:1px solid var(--border);gap:10px;padding:8px 0;display:flex}.detail-ability:last-child{border-bottom:none}.detail-abilities .detail-ability:first-child{border-top:none}.detail-ability__icon{border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--border);flex-shrink:0;width:40px;height:40px}.detail-ability__content{flex:1;min-width:0;overflow:hidden}.detail-ability__header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.detail-ability__label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.3px;color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent);border-radius:3px;padding:2px 6px;font-weight:600}.detail-ability__name{font-size:var(--fs-md);color:var(--text-h);margin:0}.detail-ability__effects{flex-wrap:wrap;gap:3px;margin-bottom:4px;display:flex}.detail-ability__desc{font-size:var(--fs-sm);color:var(--text);overflow-wrap:break-word;margin:0 0 4px;line-height:1.5}.detail-ability__stats{gap:12px;display:flex}.detail-ability__stat{flex-direction:column;gap:1px;display:flex}.detail-ability__stat-label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.2px;color:var(--text)}.detail-ability__stat-value{font-size:var(--fs-sm);color:var(--text-h);font-weight:500;font-family:var(--mono)}.detail-ff-list{grid-template-columns:1fr;gap:6px;display:grid}.detail-ff-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);cursor:pointer;text-align:left;flex-direction:column;gap:4px;padding:8px;font-family:inherit;transition:border-color .2s,transform .15s;display:flex}.detail-ff-card:active{transform:scale(.98)}.detail-ff-card--friend:hover{border-color:var(--success);box-shadow:0 2px 6px color-mix(in srgb, var(--success) 10%, transparent)}.detail-ff-card--foe:hover{border-color:var(--enemy);box-shadow:0 2px 6px color-mix(in srgb, var(--enemy) 10%, transparent)}.detail-ff-card__header{align-items:center;gap:6px;display:flex}.detail-ff-card__icon{object-fit:cover;border-style:solid;border-width:2px;border-radius:50%;flex-shrink:0;width:32px;height:32px}.detail-ff-card--friend .detail-ff-card__icon{border:2px solid var(--success)}.detail-ff-card--foe .detail-ff-card__icon{border:2px solid var(--enemy)}.detail-ff-card__name{font-size:var(--fs-sm);color:var(--text-h);font-weight:600;line-height:1.2}.detail-ff-card__reason{font-size:var(--fs-xs);color:var(--text);overflow-wrap:break-word;margin:0;line-height:1.35}.detail-ff-empty{text-align:center;font-size:var(--fs-sm);color:var(--text);background:var(--surface-2);border-radius:var(--radius-sm);margin:0;padding:12px}.detail-build{flex-direction:column;gap:6px;display:flex}.detail-build__group{align-items:flex-start;gap:6px;display:flex}.detail-build__label{font-size:var(--fs-xs);color:var(--text);flex-shrink:0;min-width:60px;font-weight:600}.detail-build__items{flex-wrap:wrap;gap:3px;display:flex}.detail-build__item{background:var(--surface-2);border:1px solid var(--border);font-size:var(--fs-2xs);color:var(--text-h);border-radius:4px;padding:2px 8px;display:inline-block}.detail-build__item--sit{border-style:dashed}.detail-build__item--emblem{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent)}.detail-emblem{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;padding-top:6px;display:flex}.detail-ability-order{border-top:1px solid var(--border);margin-top:6px;padding-top:6px}.detail-ability-order__pills{flex-wrap:wrap;gap:3px;margin:4px 0;display:flex}.detail-ability-order__pill{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent);font-size:var(--fs-2xs);align-items:center;gap:3px;padding:2px 8px;font-weight:600;display:inline-flex}.detail-ability-order__desc{font-size:var(--fs-xs);color:var(--text);margin:4px 0 0;line-height:1.35}.detail-drafter-actions{border-top:1px solid var(--border);justify-content:center;gap:8px;padding:8px 16px 12px;display:flex}.drafter{flex-direction:column;gap:12px;display:flex}.drafter__topbar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.drafter__shortcuts{display:none}.drafter-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text-h);font-family:var(--sans);font-size:var(--fs-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:5px 10px;font-weight:500;transition:all .2s}.drafter-btn:hover:not(:disabled){background:var(--surface-2)}.drafter-btn:disabled{opacity:.35;cursor:not-allowed}.drafter-btn--icon{font-size:var(--fs-base);padding:5px 8px}.drafter-btn--export{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent)}.drafter-btn--switch{border-color:var(--accent);color:var(--accent)}.drafter-btn--undo,.drafter-btn--reset{border-color:var(--border)}.draft-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text-h);font-family:var(--sans);font-size:var(--fs-xs);cursor:pointer;padding:5px 10px;font-weight:500;transition:all .2s}.draft-btn:hover:not(:disabled){background:var(--surface-2)}.draft-btn:disabled{opacity:.35}.draft-btn--redo{border-color:var(--accent);color:var(--accent)}.draft-toggle{font-size:var(--fs-xs);color:var(--text);cursor:pointer;align-items:center;gap:4px;display:flex}.draft-toggle input{cursor:pointer}.presets-panel{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:4px;padding:10px}.presets-panel__save{gap:6px;margin-bottom:8px;display:flex}.presets-panel__input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-h);font-family:var(--sans);font-size:var(--fs-sm);flex:1;padding:7px 12px;transition:border-color .2s}.presets-panel__input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent);outline:none}.presets-panel__list{flex-direction:column;gap:4px;display:flex}.preset-item{align-items:center;gap:4px;display:flex}.preset-item__load{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-h);font-family:var(--sans);font-size:var(--fs-sm);cursor:pointer;flex:1;justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.preset-item__load:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent)}.preset-item__load{transition:border-color .2s,background .2s}.preset-item__name{font-weight:600}.preset-item__count{font-size:var(--fs-2xs);color:var(--text)}.preset-item__delete{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:32px;height:32px;color:var(--enemy);cursor:pointer;font-size:var(--fs-xs)}.draft-timer{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:8px;margin-bottom:4px;padding:6px;display:flex}.draft-timer__toggle{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);width:30px;height:30px;color:var(--text-h);cursor:pointer;font-size:var(--fs-sm)}.draft-timer__display{font-size:var(--fs-lg);font-weight:800;font-family:var(--mono);color:var(--text-h);text-align:center;min-width:50px}.draft-timer__display.urgent{color:var(--enemy);animation:.5s ease-in-out 3 timerPulse}.draft-timer__display.expired{color:var(--enemy);text-decoration:line-through}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.5}}.team-tabs{gap:4px;margin-bottom:4px;display:flex}.team-tab{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-family:var(--sans);font-size:var(--fs-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 12px;font-weight:600;transition:all .2s;display:flex}.team-tab--enemy.active{border-color:var(--enemy);background:color-mix(in srgb, var(--enemy) 12%, transparent);color:var(--enemy)}.team-tab--ally.active{border-color:var(--ally);background:color-mix(in srgb, var(--ally) 12%, transparent);color:var(--ally)}.team-tab__dot{border-radius:50%;width:8px;height:8px}.team-tab__dot--enemy{background:var(--enemy)}.team-tab__dot--ally{background:var(--ally)}.drafter__teams--swipeable{position:relative;overflow:hidden}.drafter__teams-track{width:200%;transition:transform .25s ease-out;display:flex}.drafter__teams-track--ally{transform:translate(-50%)}.drafter__team-panel{flex-shrink:0;width:50%;padding-right:4px}.team-bar{border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;padding:10px;transition:border-color .2s,box-shadow .2s}.team-bar--enemy{background:color-mix(in srgb, var(--enemy) 6%, transparent);border-color:color-mix(in srgb, var(--enemy) 30%, transparent)}.team-bar--ally{background:color-mix(in srgb, var(--ally) 6%, transparent);border-color:color-mix(in srgb, var(--ally) 30%, transparent)}.team-bar{border-left-width:3px}.team-bar--enemy{border-left-color:var(--enemy)}.team-bar--ally{border-left-color:var(--ally)}.team-bar--active.team-bar--enemy{border-color:var(--enemy);box-shadow:0 0 0 2px color-mix(in srgb, var(--enemy) 35%, transparent), var(--shadow-2)}.team-bar--active.team-bar--ally{border-color:var(--ally);box-shadow:0 0 0 2px color-mix(in srgb, var(--ally) 35%, transparent), var(--shadow-2)}.team-bar__label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.3px;color:var(--text);align-items:center;gap:6px;margin-bottom:6px;font-weight:600;display:flex}.team-bar--enemy .team-bar__label{color:var(--enemy)}.team-bar--ally .team-bar__label{color:var(--ally)}.team-bar__picking{font-size:var(--fs-2xs);text-transform:uppercase;border-radius:3px;padding:1px 5px;font-weight:700}.team-bar--enemy .team-bar__picking{background:var(--enemy);color:#fff}.team-bar--ally .team-bar__picking{background:var(--ally);color:#fff}.team-bar__slots{contain:layout;gap:4px;display:flex}.team-bar__slot{aspect-ratio:1;border-radius:var(--radius-sm);border:2px dashed var(--border);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-width:44px;min-height:44px;transition:border-color .15s;display:flex;position:relative}.team-bar__slot.filled{cursor:pointer;border-style:solid;padding:3px}.team-bar--enemy .team-bar__slot.filled{border-color:var(--enemy)}.team-bar--ally .team-bar__slot.filled{border-color:var(--ally)}.team-bar__placeholder{font-size:var(--fs-base);color:var(--text);opacity:.4;font-weight:600}.team-bar__icon{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:100%;max-width:36px}.team-bar__name{font-size:var(--fs-2xs);text-align:center;color:var(--text-h);word-break:break-word;line-height:1.1}.team-bar__remove{border:2px solid var(--bg);background:var(--enemy);color:#fff;cursor:pointer;z-index:15;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:12px;line-height:1;display:flex;position:absolute;top:-4px;right:-4px;box-shadow:0 2px 4px #0003}.team-bar__remove:hover{background:color-mix(in srgb, var(--enemy) 80%, black)}.draft-controls{background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--border);flex-direction:column;gap:6px;padding:8px;display:flex}.draft-order{scrollbar-width:none;-webkit-overflow-scrolling:touch;contain:layout style;align-items:center;gap:3px;display:flex;overflow-x:auto}.draft-order::-webkit-scrollbar{display:none}.draft-order__slot{border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:clamp(26px,7vw,36px);height:clamp(26px,7vw,36px);display:flex;position:relative;overflow:hidden}.draft-order__slot--enemy{border-color:color-mix(in srgb, var(--enemy) 40%, transparent)}.draft-order__slot--ally{border-color:#3498db66}.draft-order__slot.current{border-color:var(--accent);border-width:3px;animation:1.2s ease-in-out 3 slotPulse}@keyframes slotPulse{0%,to{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 45%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 0%, transparent)}}@keyframes pulse{0%,to{box-shadow:0 0 #aa3bff66}50%{box-shadow:0 0 0 6px #aa3bff00}}.draft-order__slot.filled img{object-fit:cover;cursor:pointer;border-radius:50%;width:100%;height:100%;transition:transform .15s}.draft-order__slot.filled:hover img{transform:scale(1.08)}.draft-order__number{font-size:var(--fs-2xs);color:var(--text-h);opacity:.6;font-weight:700}.draft-actions{justify-content:space-between;align-items:center;gap:6px;display:flex}.draft-pick-indicator{font-size:var(--fs-sm);border-radius:var(--radius-sm);padding:5px 12px;font-weight:600}.draft-pick-indicator--enemy{background:color-mix(in srgb, var(--enemy) 12%, transparent);color:var(--enemy)}.draft-pick-indicator--ally{background:color-mix(in srgb, var(--ally) 12%, transparent);color:var(--ally)}.draft-pick-indicator.done{color:var(--success);background:#2ecc711f}.draft-buttons{align-items:center;gap:4px;display:flex}.mobile-action-bar{background:var(--bg);border-top:1px solid var(--border);padding:6px 8px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px));z-index:50;justify-content:space-around;gap:4px;display:flex;position:sticky;bottom:0;left:0;right:0;box-shadow:0 -4px 12px #0000000f}.mobile-action-bar__btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-family:var(--sans);font-size:var(--fs-2xs);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:4px;padding:8px 4px;font-weight:600;transition:all .2s;display:flex}.mobile-action-bar__btn:disabled{opacity:.35}.mobile-action-bar__btn--enemy.active{border-color:var(--enemy);background:color-mix(in srgb, var(--enemy) 12%, transparent);color:var(--enemy)}.mobile-action-bar__btn--ally.active{border-color:var(--ally);background:color-mix(in srgb, var(--ally) 12%, transparent);color:var(--ally)}.mobile-action-bar__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.mobile-action-bar__dot--enemy{background:var(--enemy)}.mobile-action-bar__dot--ally{background:var(--ally)}.drafter__main{flex-direction:column;gap:10px;display:flex}.drafter__hero-section{flex:1;min-width:0}.drafter__suggestions{width:100%}@media (width>=769px){.drafter__suggestions{max-width:600px;margin:0 auto}}.drafter__hint{font-size:var(--fs-2xs);color:var(--text);text-align:center;opacity:.85;margin-top:6px}.synergy-dot,.danger-dot{vertical-align:middle;border-radius:50%;width:7px;height:7px;display:inline-block}.synergy-dot{background:var(--success)}.danger-dot{background:var(--enemy)}.hero-search-fab{align-items:center;gap:6px;margin-bottom:6px;display:flex}.hero-search-fab__btn{border:1px solid var(--border);background:var(--surface-2);width:36px;height:36px;color:var(--text-h);font-size:var(--fs-base);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.hero-search-fab__btn:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent);transform:scale(1.05)}.hero-list__search--fab{flex:1;margin-bottom:0}.hero-search-active{border:1px solid var(--accent);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent);font-size:var(--fs-xs);cursor:pointer;align-items:center;gap:4px;margin-bottom:6px;padding:5px 12px;transition:all .2s;display:inline-flex}.hero-search-active:hover{background:var(--accent);color:#fff}.role-filter-chips{flex-wrap:wrap;gap:3px;margin-bottom:6px;display:flex}.role-chip{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);color:var(--text);font-family:var(--sans);font-size:var(--fs-2xs);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:6px 10px;font-weight:600;transition:all .2s}.role-chip:hover{border-color:var(--accent)}.role-chip--clear{border-color:var(--enemy);color:var(--enemy);background:color-mix(in srgb, var(--enemy) 6%, transparent)}.hero-icon-grid{contain:layout style;flex-direction:column;gap:8px;margin-top:6px;display:flex}.hero-icon-group{border:1px solid var(--border);border-radius:var(--radius-sm);contain:content;overflow:hidden}.hero-icon-group__header{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--surface-2);border-left:3px solid var(--accent);display:flex}.hero-icon-group__label{font-size:var(--fs-2xs);color:#0d1017;padding:2px var(--space-2);border-radius:var(--radius-sm);font-weight:700}.hero-icon-group__count{font-size:var(--fs-2xs);color:var(--text)}.hero-icon-group__icons{flex-wrap:wrap;gap:3px;padding:6px;display:flex}.hero-icon-btn-wrap{display:inline-block;position:relative}.hero-icon-btn{contain:layout style;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:0 0;border:2px solid #0000;border-radius:50%;width:clamp(34px,10vw,42px);height:clamp(34px,10vw,42px);padding:0;transition:transform .12s,opacity .15s,border-color .15s,box-shadow .2s;position:relative;overflow:hidden}.hero-icon-btn img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.hero-icon-btn:hover:not(:disabled){border-color:var(--accent);z-index:1;transform:scale(1.12)}.hero-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero-icon-btn:active:not(:disabled){transform:scale(.85)}.hero-icon-btn:disabled{cursor:not-allowed;opacity:.35;filter:grayscale(.5)}.hero-icon-btn--enemy img{border:2px solid var(--enemy);border-radius:50%}.hero-icon-btn--ally img{border:2px solid var(--ally);border-radius:50%}.hero-icon-btn--synergy{box-shadow:0 0 0 2px color-mix(in srgb, var(--success) 45%, transparent)}.hero-icon-btn--danger{box-shadow:0 0 0 2px color-mix(in srgb, var(--enemy) 45%, transparent)}.hero-icon-btn__badge{width:14px;height:14px;font-size:var(--fs-2xs);color:#fff;z-index:3;border:1px solid var(--bg);background:var(--enemy);z-index:4;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:flex;position:absolute;top:-2px;left:-2px}.hero-icon-btn--ally .hero-icon-btn__badge{background:var(--ally)}.hero-icon-btn__tier{width:16px;height:16px;font-size:var(--fs-2xs);color:#fff;z-index:2;border:1px solid var(--bg);z-index:3;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:flex;position:absolute;bottom:-2px;right:-2px}.hero-icon-btn__tier--S{background:var(--tier-s,#f43f5e);color:#fff}.hero-icon-btn__tier--A{background:var(--tier-a,#fb923c);color:#0d1017}.hero-icon-btn__tier--B{background:var(--tier-b,#facc15);color:#0d1017}.hero-icon-btn__tier--C{background:var(--tier-c,#38bdf8);color:#0d1017}.hero-preview-tooltip{z-index:150;pointer-events:none;display:none;position:fixed;transform:translateY(-100%)}.hero-preview{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);width:180px;padding:8px}.hero-preview__header{align-items:center;gap:6px;margin-bottom:4px;display:flex}.hero-preview__icon{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:32px;height:32px}.hero-preview__info{flex-direction:column;display:flex}.hero-preview__name{font-size:var(--fs-sm);color:var(--text-h);font-weight:600}.hero-preview__title{font-size:var(--fs-2xs);color:var(--text)}.hero-preview__roles{flex-wrap:wrap;gap:3px;margin-bottom:4px;display:flex}.hero-preview__ratings{flex-direction:column;gap:2px;display:flex}.hero-preview__rating{align-items:center;gap:4px;display:flex}.hero-preview__rating-label{font-size:var(--fs-2xs);width:28px;color:var(--text-h);opacity:.7}.hero-preview__rating-bar{background:var(--border);border-radius:2px;flex:1;height:4px;overflow:hidden}.hero-preview__rating-fill{background:var(--accent);border-radius:2px;height:100%}.counter-suggestions{background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--border);padding:12px}.counter-suggestions--empty{opacity:.7}.counter-suggestions__header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.counter-suggestions__title{font-size:var(--fs-md);color:var(--text-h);margin:0;font-weight:700}.counter-suggestions__hint{font-size:var(--fs-xs);color:var(--text);margin:0 0 8px}.counter-suggestions__list{-webkit-overflow-scrolling:touch;flex-direction:column;gap:6px;max-height:50vh;display:flex;overflow-y:auto}@media (width>=769px){.counter-suggestions__list{max-height:500px}}.counter-card{border-radius:var(--radius-md);background:var(--surface-1);border:1px solid var(--border);cursor:pointer;contain:layout style;align-items:flex-start;gap:6px;padding:8px;transition:border-color .2s,transform .15s,box-shadow .2s;display:flex}.counter-card:hover{border-color:var(--accent);box-shadow:var(--shadow-1);transform:translateY(-1px)}.counter-card:focus-within{border-color:var(--accent)}.counter-card:active{transform:scale(.98)}.counter-card[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.counter-card__quick-add{border:1px solid var(--border);background:color-mix(in srgb, var(--accent) 15%, transparent);width:24px;height:24px;color:var(--accent);font-size:var(--fs-base);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-weight:700;line-height:1;display:flex}.counter-card__rank{font-size:var(--fs-2xs);color:var(--text);flex-shrink:0;min-width:22px;margin-top:4px;font-weight:700}.counter-card__tier{border-radius:var(--radius-sm);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;min-width:38px;padding:3px 6px;display:flex}.counter-card__tier-score{font-size:var(--fs-2xs);color:inherit;opacity:.85;margin-top:1px}.counter-card__tier-letter{font-size:var(--fs-sm);color:inherit;font-weight:800;line-height:1}.counter-card__tier{color:#0d1017}.counter-card__icon{object-fit:cover;border:3px solid;border-radius:50%;flex-shrink:0;width:36px;height:36px}.counter-card__body{flex:1;min-width:0;overflow:hidden}.counter-card__name{font-size:var(--fs-sm);color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px;font-weight:600;display:block;overflow:hidden}.counter-card__badges{flex-wrap:wrap;gap:2px;margin-bottom:3px;display:flex}.counter-card__badges .badge{font-size:var(--fs-2xs);padding:1px 4px}.counter-card__scores{gap:3px;margin-bottom:2px;display:flex}.counter-card__score-pill{font-size:var(--fs-2xs);background:var(--surface-2);color:var(--text);border-radius:3px;padding:1px 4px}.counter-card__section{margin-top:3px}.counter-card__section-label{font-size:var(--fs-2xs);color:var(--text);margin-right:4px;font-weight:600}.counter-card__icons{vertical-align:middle;gap:2px;display:inline-flex}.counter-card__icons img{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:18px;height:18px}.counter-card__icon-wrap--ally img{border-color:var(--ally)}.counter-card__icon-wrap img{border-color:var(--enemy)}.drafter__comp-row-wrapper{margin-bottom:4px}.drafter__comp-row{flex-direction:column;gap:8px;display:flex}.comp-analysis{border-radius:var(--radius-md);border:1px solid var(--border);padding:8px}.comp-analysis--ally{background:color-mix(in srgb, var(--ally) 5%, transparent);border-color:color-mix(in srgb, var(--ally) 20%, transparent)}.comp-analysis--enemy{background:#e74c3c0a;border-color:#e74c3c33}.comp-analysis__roles{flex-wrap:wrap;gap:3px;margin-bottom:4px;display:flex}.comp-analysis__role-badge{font-size:var(--fs-2xs);color:#fff;border-radius:3px;padding:2px 6px;font-weight:600}.comp-analysis__role-badge--missing{opacity:.6;background:0 0;border:1px dashed}.comp-analysis__bars{margin:3px 0}.comp-analysis__dmg-bar{align-items:center;gap:5px;display:flex}.comp-analysis__bar-label{font-size:var(--fs-2xs);color:var(--text-h);opacity:.7;width:28px;font-weight:600}.comp-analysis__bar{background:var(--border);border-radius:3px;flex:1;height:6px;display:flex;overflow:hidden}.comp-analysis__bar-phys{background:var(--enemy)}.comp-analysis__bar-magic{background:var(--ally)}.comp-analysis__bar-true{background:#f1c40f}.comp-analysis__tags{flex-wrap:wrap;gap:3px;margin-top:3px;display:flex}.comp-analysis__tag{font-size:var(--fs-2xs);border-radius:3px;padding:2px 5px;font-weight:600}.comp-analysis__tag--good{background:color-mix(in srgb, var(--success) 15%, transparent);color:var(--success)}.comp-analysis__tag--bad{background:color-mix(in srgb, var(--enemy) 15%, transparent);color:var(--enemy)}.comp-analysis__warnings{margin-top:3px}.comp-analysis__warning{font-size:var(--fs-2xs);color:var(--enemy);margin:1px 0}.comp-collapse-btn,.suggestions-collapse-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);width:100%;color:var(--text-h);font-family:var(--sans);font-size:var(--fs-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;align-items:center;gap:6px;margin-bottom:4px;padding:8px 12px;font-weight:600;transition:all .2s;display:flex}.comp-collapse-btn:active,.suggestions-collapse-btn:active{transform:scale(.98)}.comp-collapse-btn:hover,.suggestions-collapse-btn:hover{background:color-mix(in srgb, var(--accent) 15%, transparent)}.comp-collapse-btn__icon{font-size:var(--fs-2xs);color:var(--text)}.win-prob{background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--border);padding:10px 12px}.win-prob__header{margin-bottom:4px}.win-prob__label{font-size:var(--fs-sm);color:var(--text-h);font-weight:700}.win-prob__bar-container{border-radius:var(--radius-sm);border:1px solid var(--border);height:26px;display:flex;position:relative;overflow:hidden}.win-prob__side{font-size:var(--fs-xs);color:#fff;justify-content:center;align-items:center;min-width:0;font-weight:700;transition:width .3s;display:flex;overflow:hidden}.win-prob__side--ally{background:var(--ally)}.win-prob__side--enemy{background:var(--enemy)}.win-prob__side span{padding:0 4px}.win-prob__side span[data-low]{font-size:var(--fs-2xs);color:var(--text);margin-top:28px;display:block;position:absolute}.win-prob__labels{justify-content:space-between;margin-top:3px;display:flex}.win-prob__team-label{font-size:var(--fs-2xs);color:var(--text)}.ban-suggestions{background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--border);margin-top:10px;padding:10px}.ban-suggestions__title{font-size:var(--fs-base);color:var(--text-h);margin:0 0 8px;font-weight:700}.ban-suggestions__list{flex-direction:column;gap:4px;display:flex}.ban-suggestion-card{border-radius:var(--radius-sm);background:var(--surface-1);border:1px solid var(--border);cursor:pointer;align-items:center;gap:6px;padding:5px 6px;transition:border-color .2s,transform .15s;display:flex}.ban-suggestion-card:hover{border-color:var(--enemy);box-shadow:0 2px 6px color-mix(in srgb, var(--enemy) 10%, transparent)}.ban-suggestion-card:active{transform:scale(.97)}.ban-suggestion-card__icon{object-fit:cover;border:3px solid;border-radius:50%;width:28px;height:28px}.ban-suggestion-card__body{flex:1;justify-content:space-between;align-items:center;display:flex}.ban-suggestion-card__name{font-size:var(--fs-xs);color:var(--text-h);font-weight:600}.ban-suggestion-card__score{font-size:var(--fs-2xs);color:var(--enemy);font-weight:700}.synergy-web{background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--border);text-align:center;margin-top:10px;padding:10px}.synergy-web__title{font-size:var(--fs-base);color:var(--text-h);margin:0 0 8px;font-weight:700}.synergy-web__svg{width:180px;height:180px}.synergy-web__line{stroke:#2ecc71;stroke-width:2px;opacity:.5;stroke-dasharray:4 2}.synergy-web__label{font-size:var(--fs-2xs);fill:var(--text-h);opacity:.8}.compare-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.compare-header__hero{flex-direction:column;flex:1;align-items:center;gap:3px;display:flex}.compare-header__icon{object-fit:cover;border:3px solid;border-radius:50%;width:40px;height:40px}.compare-header__name{font-size:var(--fs-base);color:var(--text-h);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.compare-header__roles{flex-wrap:wrap;justify-content:center;gap:2px;display:flex}.compare-header__vs{font-size:var(--fs-md);color:var(--text);font-weight:800}.compare-ratings{flex-direction:column;gap:3px;margin-bottom:12px;display:flex}.compare-rating-row{align-items:center;gap:6px;display:flex}.compare-rating__val{text-align:center;width:28px;font-size:var(--fs-base);color:var(--text);font-weight:700}.compare-rating__val.winner{color:var(--success)}.compare-rating__label{text-align:center;font-size:var(--fs-xs);color:var(--text);flex:1}.compare-stats-table{border-collapse:collapse;width:100%;font-size:var(--fs-xs)}.compare-stats-table th{text-align:center;border-bottom:2px solid var(--border);color:var(--text-h);padding:5px 6px;font-weight:600}.compare-stats-table td{text-align:center;border-bottom:1px solid var(--border);color:var(--text);padding:4px 6px}.compare-stats__label{color:var(--text-h);font-weight:600}.compare-winner{color:var(--success);font-weight:700}.compare-stats-table tr:last-child td{border-bottom:none}.tier-list{flex-direction:column;gap:16px;display:flex}.tier-list__header{text-align:center;margin-bottom:8px}.tier-list__season{font-size:var(--fs-lg);color:var(--text-h);margin:0;font-weight:800}.tier-list__updated{font-size:var(--fs-xs);color:var(--text);margin:2px 0 0}.tier-list__groups{flex-direction:column;gap:10px;display:flex}.tier-group{border:1px solid var(--border);border-radius:var(--radius-md);border-left-width:4px;overflow:hidden}.tier-group__header{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:#0d1017;text-transform:uppercase;display:flex}.tier-group__letter{font-size:var(--fs-lg);font-weight:800;line-height:1}.tier-group__label{font-size:var(--fs-base);flex:1;font-weight:600}.tier-group__count{font-size:var(--fs-xs);opacity:.8;border-radius:var(--radius-md);background:#fff3;padding:2px 8px}.tier-group__desc{font-size:var(--fs-2xs);color:var(--text);background:var(--bg);border-bottom:1px solid var(--border);padding:4px 10px;font-style:italic}.tier-group__heroes{flex-direction:column;gap:6px;padding:8px;display:flex}.tier-hero{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);cursor:pointer;align-items:center;gap:8px;padding:6px 8px;transition:transform .15s,border-color .2s,box-shadow .2s;display:flex}.tier-hero:hover{border-color:var(--accent);box-shadow:var(--shadow-1);transform:translateY(-1px)}.tier-hero:active{transform:scale(.98)}.tier-hero__icon{object-fit:cover;border:2px solid var(--border);border-radius:50%;flex-shrink:0;width:38px;height:38px}.tier-hero__info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.tier-hero__name{font-size:var(--fs-sm);color:var(--text-h);font-weight:600}.tier-hero__note{font-size:var(--fs-2xs);color:var(--text);margin-top:1px;line-height:1.3}.tier-hero__roles{flex-wrap:wrap;gap:2px;display:flex}.matchup-matrix{flex-direction:column;gap:16px;display:flex}.matchup-matrix__selector{flex-direction:column;gap:8px;display:flex}.matchup-matrix__hero-display{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);align-items:center;gap:10px;padding:10px;display:flex}.matchup-matrix__hero-icon{object-fit:cover;border:3px solid var(--accent);width:56px;height:56px;box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 25%, transparent);border-radius:50%}.matchup-matrix__hero-name{font-size:var(--fs-md);color:var(--text-h);margin:0}.matchup-matrix__hero-title{font-size:var(--fs-xs);color:var(--text);margin:1px 0 3px;font-style:italic}.matchup-matrix__hero-roles{flex-wrap:wrap;gap:3px;display:flex}.matchup-matrix__picker{flex:1;min-width:0}.matchup-matrix__hero-list{flex-wrap:wrap;gap:3px;max-height:150px;margin-top:6px;padding:4px;display:flex;overflow-y:auto}.matchup-matrix__pick{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;font-family:var(--sans);font-size:var(--fs-xs);color:var(--text-h);align-items:center;gap:4px;padding:3px 6px;transition:border-color .15s;display:flex}.matchup-matrix__pick:hover{border-color:var(--accent)}.matchup-matrix__pick:active{transform:scale(.96)}.matchup-matrix__pick.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent);box-shadow:0 0 0 1px var(--accent)}.matchup-matrix__pick img{object-fit:cover;border-radius:50%;width:22px;height:22px}.matchup-matrix__results{flex-direction:column;gap:12px;display:flex}.matchup-matrix__section{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);padding:10px}.matchup-matrix__section--friend{border-color:color-mix(in srgb, var(--success) 30%, transparent);background:color-mix(in srgb, var(--success) 4%, transparent)}.matchup-matrix__section--foe{border-color:color-mix(in srgb, var(--enemy) 30%, transparent);background:#e74c3c08}.matchup-matrix__section-title{font-size:var(--fs-md);color:var(--text-h);margin:0 0 10px;font-weight:700}.matchup-matrix__cards{grid-template-columns:1fr;gap:6px;display:grid}.matchup-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);cursor:pointer;align-items:flex-start;gap:6px;padding:6px;transition:border-color .2s,transform .15s;display:flex}.matchup-card:hover{transform:translateY(-1px)}.matchup-card:active{transform:scale(.98)}.matchup-card--friend:hover{border-color:var(--success);box-shadow:0 2px 6px color-mix(in srgb, var(--success) 10%, transparent)}.matchup-card--foe:hover{border-color:var(--enemy);box-shadow:0 2px 6px color-mix(in srgb, var(--enemy) 10%, transparent)}.matchup-card__icon{object-fit:cover;border-radius:50%;flex-shrink:0;width:32px;height:32px}.matchup-card--friend .matchup-card__icon{border:2px solid var(--success)}.matchup-card--foe .matchup-card__icon{border:2px solid var(--enemy)}.matchup-card__body{flex:1;min-width:0;overflow:hidden}.matchup-card__name{font-size:var(--fs-sm);color:var(--text-h);margin-bottom:2px;font-weight:600;display:block}.matchup-card__reason{font-size:var(--fs-2xs);color:var(--text);overflow-wrap:break-word;margin:0;line-height:1.35}.matchup-matrix__empty{text-align:center;color:var(--text);font-size:var(--fs-sm);padding:12px}.matchup-matrix__neutral-grid{flex-wrap:wrap;gap:3px;display:flex}.matchup-matrix__neutral-btn{cursor:pointer;background:0 0;border:none;padding:0;transition:transform .1s}.matchup-matrix__neutral-btn:hover{transform:scale(1.15)}.matchup-matrix__neutral-btn img{object-fit:cover;opacity:.6;border-radius:50%;width:28px;height:28px;transition:opacity .15s}.matchup-matrix__neutral-btn:hover img{opacity:1}.pull-reset-indicator{background:var(--surface-2);border-radius:var(--radius-sm);z-index:1;justify-content:center;align-items:center;margin-bottom:4px;transition:height .1s ease-out;display:flex;overflow:hidden}.pull-reset-indicator__text{font-size:var(--fs-xs);color:var(--text);white-space:nowrap;font-weight:600}.drafter-btn--enemy{border-color:var(--enemy);color:var(--enemy);background:color-mix(in srgb, var(--enemy) 8%, transparent)}.drafter-btn--enemy:hover{background:color-mix(in srgb, var(--enemy) 15%, transparent)}.drafter-btn--enemy.active{background:var(--enemy);color:#fff}.drafter-btn--ally{border-color:var(--ally);color:var(--ally);background:color-mix(in srgb, var(--ally) 8%, transparent)}.drafter-btn--ally:hover{background:color-mix(in srgb, var(--ally) 15%, transparent)}.drafter-btn--ally.active{background:var(--ally);color:#fff}.hero-icon-grid--compact .hero-icon-btn{width:clamp(24px,7vw,32px);height:clamp(24px,7vw,32px)}.hero-icon-grid--compact .hero-icon-group__icons{gap:2px;padding:4px}.hero-icon-grid--compact .hero-icon-btn__tier{width:11px;height:11px;font-size:var(--fs-2xs)}.team-bar__slot.filled{animation:.3s ease-out slotFillIn}@keyframes slotFillIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.synergy-dot{box-shadow:0 0 4px color-mix(in srgb, var(--success) 60%, transparent)}.danger-dot{box-shadow:0 0 4px #e74c3c99}@media (height<=500px) and (orientation:landscape){.modal{border-radius:0;max-height:100vh}.modal:before{display:none}.modal__body{max-height:100vh;padding:8px 16px}}@media (width>=769px){.app__header{padding:var(--space-5) var(--space-6) var(--space-4)}.app__title{font-size:var(--fs-2xl)}.app__subtitle{font-size:var(--fs-sm)}.app__tabs{border-top:none;border-bottom:1px solid var(--border);padding:0 var(--space-6);box-shadow:none;gap:var(--space-2);position:sticky;top:0;bottom:auto}.tab-btn{gap:var(--space-2);min-height:0;padding:var(--space-3) var(--space-5);font-size:var(--fs-base);border-bottom:3px solid #0000;flex-direction:row;flex:none}.tab-btn.active,.tab-btn[aria-current=page]{border-bottom-color:var(--accent)}.app__main{padding:var(--space-6);padding-bottom:var(--space-6)}.app__footer{padding-bottom:var(--space-3)}.hero-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.hero-card{padding:16px}.hero-card__icon{width:56px;height:56px}.hero-card__name{font-size:var(--fs-lg)}.hero-card__title{font-size:var(--fs-base)}.hero-card__region{font-size:var(--fs-sm)}.filter-btn{font-size:var(--fs-base);padding:6px 14px}.filter-group__label{font-size:var(--fs-sm)}.hero-list__search{font-size:var(--fs-md);padding:12px 16px}.modal-overlay{align-items:center;padding:24px}.modal{border-radius:var(--radius-lg);border:1px solid var(--border);max-width:720px}.modal:before{display:none}.modal__body{max-height:calc(100vh - 48px);padding:24px}.detail-header{flex-direction:row;gap:20px}.detail-header__icon{width:96px;height:96px}.detail-header__name{font-size:var(--fs-xl)}.detail-info-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;padding:16px}.detail-stats-table th,.detail-stats-table td{font-size:var(--fs-base);padding:8px 12px}.detail-ability{border:1px solid var(--border);border-radius:var(--radius-sm);gap:16px;padding:16px}.detail-ability__icon{width:56px;height:56px}.detail-ability__name{font-size:var(--fs-lg)}.detail-ability__desc{font-size:var(--fs-base)}.detail-ff-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.drafter{gap:16px;width:100%;max-width:1200px;margin:0 auto}.drafter__main{flex-direction:row;gap:24px}.drafter__suggestions{flex-shrink:0;width:360px}.drafter__topbar{gap:12px}.drafter__shortcuts{font-size:var(--fs-xs);color:var(--text);margin-left:auto;display:inline}.drafter__shortcuts kbd{background:var(--surface-2);border:1px solid var(--border);font-family:var(--mono);font-size:var(--fs-2xs);border-radius:4px;margin:0 2px;padding:1px 5px}.drafter__hint{font-size:var(--fs-xs);opacity:1}.draft-buttons{display:flex}.mobile-action-bar{display:none}.draft-actions{justify-content:space-between}.team-tabs{display:none}.drafter__teams--swipeable{flex-wrap:wrap;gap:16px;display:flex;overflow:visible}.drafter__teams-track{display:contents}.drafter__teams-track--ally{transform:none}.drafter__team-panel{flex:1;width:auto;min-width:280px;padding:0}.team-bar__slot{max-width:90px}.team-bar__icon{max-width:48px}.team-bar__name{font-size:var(--fs-2xs)}.team-bar__remove{width:22px;height:22px;font-size:14px;top:-6px;right:-6px}.draft-order__slot{width:36px;height:36px}.draft-order__number{font-size:var(--fs-xs)}.hero-icon-btn{width:42px;height:42px}.hero-icon-group__icons{gap:4px;padding:8px}.hero-icon-group__label,.hero-icon-group__count{font-size:var(--fs-xs)}.hero-preview-tooltip{display:block}.comp-collapse-btn,.suggestions-collapse-btn{display:none}.drafter__comp-row-wrapper{margin-bottom:0}.drafter__comp-row{flex-direction:row}.counter-card__icon{width:40px;height:40px}.counter-card__name{font-size:var(--fs-base)}.counter-suggestions__list{max-height:70vh}.hero-search-fab,.hero-search-active{display:none}.detail-section-nav__btn:hover{background:color-mix(in srgb, var(--accent) 15%, transparent);border-color:var(--accent)}.tier-hero{min-width:180px;max-width:260px}.tier-group__heroes{flex-flow:wrap;gap:8px}.tier-group__letter{font-size:var(--fs-xl)}.tier-group__label{font-size:var(--fs-base)}.matchup-matrix__selector{flex-flow:wrap}.matchup-matrix__hero-display{min-width:200px}.matchup-matrix__hero-icon{width:64px;height:64px}.matchup-matrix__hero-name{font-size:var(--fs-lg)}.matchup-matrix__hero-list{max-height:200px}.matchup-matrix__cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.matchup-card__icon{width:36px;height:36px}.matchup-card__name{font-size:var(--fs-base)}.matchup-card__reason{font-size:var(--fs-xs)}.matchup-matrix__neutral-btn img{width:32px;height:32px}.win-prob__label{font-size:var(--fs-sm)}.win-prob__bar-container{height:28px}.ban-suggestion-card__icon{width:32px;height:32px}.ban-suggestion-card__name{font-size:var(--fs-sm)}.compare-header__icon{width:56px;height:56px}.compare-header__name{font-size:var(--fs-md)}.pull-reset-indicator{display:none}.draft-controls{padding:12px}.draft-order{flex-wrap:nowrap}.synergy-web__svg{width:200px;height:200px}}@media (width>=1024px){.hero-icon-btn{width:46px;height:46px}.hero-icon-group__icons{gap:8px}.modal{max-width:800px}.detail-header__icon{width:96px;height:96px}.detail-header__name{font-size:var(--fs-xl)}}@media (width>=1440px){.app{max-width:1400px;margin:0 auto}.hero-icon-btn{width:50px;height:50px}.app__main{max-width:1300px}}.counter-card__add-btn{border:2px solid var(--ally);background:color-mix(in srgb, var(--ally) 10%, transparent);width:36px;height:36px;color:var(--ally);font-size:var(--fs-lg);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-weight:700;line-height:1;transition:background .15s,transform .1s;display:flex}.counter-card__add-btn:hover:not(:disabled){background:var(--ally);color:#fff;transform:scale(1.1)}.counter-card__add-btn:active:not(:disabled){transform:scale(.9)}.counter-card__add-btn:disabled{opacity:.3;cursor:not-allowed}.hero-icon-btn--meta{transition:box-shadow .2s,transform .12s,opacity .15s,border-color .15s;box-shadow:0 0 0 2px #ffa50266}.hero-icon-btn--meta:hover:not(:disabled){box-shadow:0 0 0 3px #ffa50299}.meta-dot{vertical-align:middle;background:#ffa502;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 4px #ffa50299}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.modal,.modal-overlay{animation:none}.draft-order__slot.current{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 45%, transparent);animation:none}.draft-timer__display.urgent,.team-bar__slot.filled,.counter-card:first-child .counter-card__add-btn:not(:disabled),.toast,.confirm-btn--armed,.draft-pick-indicator.done{animation:none}}.tier-group__header{background-image:linear-gradient(135deg,#ffffff1a,#0000)}.counter-card:first-child .counter-card__add-btn:not(:disabled){animation:1.4s ease-in-out 2 addBtnPulse}@keyframes addBtnPulse{0%,to{box-shadow:0 0 #3498db66}50%{box-shadow:0 0 0 6px #3498db00}}[data-theme=dark] .hero-card:hover{box-shadow:0 4px 16px #0000004d}[data-theme=dark] .counter-card:hover{box-shadow:0 2px 12px #0000004d}[data-theme=dark] .modal-overlay{background:#000000b3}[data-theme=dark] .tier-hero:hover{box-shadow:0 2px 12px #0000004d}[data-theme=dark] .back-to-top{box-shadow:0 2px 12px #0006}[data-theme=dark] .mobile-action-bar{box-shadow:0 -4px 16px #0000004d}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--bg)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--border)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--text)}[data-theme=dark] .hero-icon-btn:disabled{filter:grayscale(.7)brightness(.6)}[data-theme=dark] .modal{box-shadow:0 -8px 40px #00000080}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236b6375' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding-right:28px!important}[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%239ca3af' d='M6 8L0 0h12z'/%3E%3C/svg%3E")}.draft-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}::placeholder{color:var(--text);opacity:.5}::selection{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--text-h)}button,[role=button],a,.hero-card,.counter-card,.matchup-card,.tier-hero,.ban-suggestion-card,.detail-ff-card,.team-bar{-webkit-tap-highlight-color:transparent}@media (width<=768px){.tier-group,.matchup-matrix__section{content-visibility:auto;contain-intrinsic-size:200px}}.hero-icon-btn,.tab-btn,.filter-btn,.role-chip,.team-tab,.draft-order__slot,.counter-card,.hero-card,.matchup-card{touch-action:manipulation}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.tab-btn,.filter-btn,.role-chip,.badge,.draft-order__number,.team-bar__label,.team-bar__placeholder,.draft-pick-indicator{-webkit-user-select:none;user-select:none}.app__title{background:linear-gradient(135deg, var(--accent), #e84393);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}[data-theme=dark] .app__title{background:linear-gradient(135deg, var(--accent), #fd79a8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.draft-pick-indicator.done{animation:.4s ease-out donePop}@keyframes donePop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.detail-build__item-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);cursor:default;flex-direction:column;align-items:center;gap:4px;min-width:64px;max-width:80px;padding:6px;transition:border-color .2s,transform .15s;display:inline-flex}.detail-build__item-card:hover{border-color:var(--accent);transform:translateY(-2px)}.detail-build__item-card--sit{border-style:dashed}.detail-build__item-icon{border-radius:var(--radius-sm);object-fit:contain;width:40px;height:40px}.detail-build__item-name{font-size:var(--fs-2xs);color:var(--text-h);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:70px;font-weight:600;line-height:1.2;overflow:hidden}@media (width>=769px){.detail-build__item-card{min-width:72px;max-width:90px}.detail-build__item-icon{width:48px;height:48px}.detail-build__item-name{font-size:var(--fs-2xs);max-width:80px}}.toast-stack{left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));gap:var(--space-2);z-index:1100;pointer-events:none;flex-direction:column;width:min(92vw,420px);display:flex;position:fixed;transform:translate(-50%)}.toast{pointer-events:auto;align-items:center;gap:var(--space-2);text-align:left;width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text-h);font-family:var(--sans);font-size:var(--fs-sm);box-shadow:var(--shadow-3);cursor:pointer;font-weight:600;animation:.2s ease-out toastIn;display:flex}.toast--success{border-left-color:var(--success)}.toast--danger{border-left-color:var(--danger)}.toast__icon{font-size:var(--fs-md);flex-shrink:0}.toast__msg{min-width:0}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width>=769px){.toast-stack{bottom:var(--space-6);left:auto;right:var(--space-6);transform:none}}.confirm-btn{min-width:44px;min-height:32px;padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--danger);font-family:var(--sans);font-size:var(--fs-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;font-weight:600;transition:background .15s,border-color .15s}.confirm-btn--armed{background:var(--danger);color:#fff;border-color:var(--danger);animation:.2s ease-out confirmArm}@keyframes confirmArm{0%{transform:scale(.94)}to{transform:scale(1)}}.counter-suggestions__sort-label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:1px;color:var(--text);font-weight:600}@media (width<=768px){.drafter{position:relative}.drafter__teams-wrapper{z-index:60;background:var(--bg);padding:var(--space-2) 0;margin:0 calc(-1 * var(--space-3));padding-left:var(--space-3);padding-right:var(--space-3);box-shadow:0 2px 8px color-mix(in srgb, var(--bg) 60%, transparent);order:1;position:sticky;top:0}.draft-controls{order:2}.drafter__main{order:3}.drafter__comp-row-wrapper{order:4}.win-prob{order:5}.drafter__suggestions{order:6}.pull-reset-indicator,.drafter__topbar,.presets-panel,.draft-timer{order:0}.mobile-action-bar{order:10}}@media (width>=769px){.drafter>*{order:0}}.drafter__overflow{position:relative}.drafter__overflow-menu{top:calc(100% + var(--space-1));gap:var(--space-1);min-width:200px;padding:var(--space-2);background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-3);z-index:70;flex-direction:column;display:flex;position:absolute;left:0}.drafter__overflow-menu .draft-btn,.drafter__overflow-menu .draft-toggle{text-align:left;width:100%;min-height:44px;font-size:var(--fs-sm);justify-content:flex-start}.draft-btn,.drafter-btn{min-height:44px}.draft-btn--icon,.drafter-btn--icon{min-width:44px}.draft-timer__toggle{width:44px;height:44px}.preset-item__delete{min-width:44px;min-height:44px}.mobile-action-bar__btn{min-height:44px}@media (width>=769px){.draft-btn,.drafter-btn{min-height:0}}.hero-list__empty{align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);text-align:center;color:var(--text);background:var(--surface-1);border:1px dashed var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex}.hero-list__empty-icon{font-size:var(--fs-3xl);opacity:.5}.hero-list__empty-title{font-size:var(--fs-base);color:var(--text-h);margin:0;font-weight:600}.matchup-matrix__neutral-toggle{align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-h);font-family:var(--sans);font-size:var(--fs-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;font-weight:600;display:flex}.matchup-matrix__neutral-toggle:hover{border-color:var(--accent)}.matchup-matrix__picker-note{margin:var(--space-1) 0 0;font-size:var(--fs-2xs);color:var(--text)}@media (width>=769px){.app__tabs{justify-content:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);padding-bottom:var(--space-2);border-top:none;border-bottom:1px solid var(--border);z-index:100;position:sticky;inset:0 auto auto}.tab-btn{min-height:40px;padding:var(--space-2) var(--space-4);font-size:var(--fs-sm);gap:var(--space-2);border-radius:var(--radius-sm);border:1px solid #0000;flex-direction:row;flex:none}.tab-btn:hover{background:var(--surface-2);border-color:var(--border)}.tab-btn__icon{font-size:var(--fs-md)}.app__main{padding:var(--space-5) var(--space-6);padding-bottom:var(--space-5);max-width:1400px}.app__footer{padding-bottom:var(--space-5)}.mobile-action-bar{display:none}.back-to-top{bottom:var(--space-5);right:var(--space-5)}.modal-overlay{padding:var(--space-5);align-items:center}.modal{border-radius:var(--radius-lg);border:1px solid var(--border);border-bottom:1px solid var(--border);max-width:720px;max-height:85vh}.drafter{gap:var(--space-4)}.drafter__main{gap:var(--space-4);flex-direction:row;align-items:flex-start}.drafter__hero-section{flex:1;min-width:0}.drafter__suggestions{flex:0 0 380px;width:380px;max-width:380px}.drafter__teams-wrapper{box-shadow:none;z-index:auto;background:0 0;margin:0;padding:0;position:relative;top:auto}.team-tabs{display:none}.drafter__teams--swipeable{overflow:visible}.drafter__teams-track{flex-direction:row;width:100%;display:flex;transform:none!important}.drafter__team-panel{width:50%;padding-right:var(--space-2);flex:1}.drafter__team-panel:last-child{padding-right:0;padding-left:var(--space-2)}.drafter__comp-row{gap:var(--space-3);flex-direction:row}.drafter__comp-row>*{flex:1;min-width:0}.draft-controls{padding:var(--space-3) var(--space-4)}.hero-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.hero-card{padding:var(--space-3)}.hero-card__icon{width:48px;height:48px}.hero-icon-group__icons{gap:var(--space-2);padding:var(--space-2)}.hero-list__filters{gap:var(--space-3);flex-direction:row;align-items:flex-end}.filter-group{flex:1;min-width:0}.filter-group__buttons{flex-wrap:wrap}.tier-group__heroes{gap:var(--space-2);padding:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.tier-hero{padding:var(--space-2) var(--space-3)}.tier-hero__icon{width:44px;height:44px}.matchup-matrix__cards{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.matchup-matrix__hero-list{max-height:200px}.counter-suggestions__list{max-height:600px}.detail-info-grid{grid-template-columns:repeat(4,1fr)}.detail-ff-list{gap:var(--space-2);grid-template-columns:repeat(2,1fr)}.presets-panel__input{font-size:var(--fs-base)}.drafter__shortcuts{align-items:center;gap:var(--space-1);font-size:var(--fs-xs);color:var(--text);margin-left:var(--space-2);display:inline-flex}.drafter__shortcuts kbd{border:1px solid var(--border);background:var(--surface-2);font-family:var(--mono);font-size:var(--fs-2xs);color:var(--text-h);border-radius:3px;padding:1px 5px;display:inline-block}}@media (width>=1024px){.app__main{padding:var(--space-6) var(--space-8);max-width:1400px}.drafter__suggestions{flex:0 0 420px;width:420px;max-width:420px}.hero-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.tier-group__heroes{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.matchup-matrix__cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.detail-ff-list{grid-template-columns:repeat(3,1fr)}}
