@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/Barlow-latin-400-qiz4-Cze.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/Barlow-latin-ext-400-HxX4XjxC.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/Barlow-vietnamese-400-Dpl4UHAZ.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/Barlow-latin-500-BPAOfeC8.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/Barlow-latin-ext-500-DOaysfXq.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/Barlow-vietnamese-500-zTViEIzf.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/Barlow-latin-600-DILqtrty.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/Barlow-latin-ext-600-B8NK_A3D.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/Barlow-vietnamese-600-DcjprdFV.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/Barlow-latin-700-A9pxMQ4z.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/Barlow-latin-ext-700-BLuWmldJ.woff2) format("woff2");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:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/Barlow-vietnamese-700-D6euyNzi.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/BarlowCondensed-latin-400-Dc2u_eUW.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/BarlowCondensed-latin-ext-400-DPMBkgfB.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/BarlowCondensed-vietnamese-400-Dq9fsqrz.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/BarlowCondensed-latin-600-DepVgxBB.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/BarlowCondensed-latin-ext-600-18ESti3H.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/BarlowCondensed-vietnamese-600-A5AYRdjN.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/BarlowCondensed-latin-700-v1xN8_Wq.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/BarlowCondensed-latin-ext-700-CwuXbfVR.woff2) format("woff2");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:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/BarlowCondensed-vietnamese-700-DYeBwlKR.woff2) format("woff2");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}:root{--bg-deep: #090b10;--bg: #0d1016;--panel: #1a212e;--panel-2: #222b3a;--panel-solid: #161c27;--line: #2c3648;--line-soft: #202938;--text: #eef1f6;--muted: #a9b3c6;--text-dim: #8b97ab;--text-bright: #ffffff;--accent: #3b82f6;--accent-strong: #2a66c4;--accent-soft: rgba(59, 130, 246, .16);--accent-line: rgba(59, 130, 246, .5);--blue: #4fa3ff;--blue-team: #4fa3ff;--red: #e5533d;--red-team: #ee6a54;--green: #46c08a;--tier-s: #e8c05a;--tier-a: #9db4ef;--tier-b: #5ec8e0;--tier-c: #5fd6a3;--tier-d: #8b95a3;--font-head: "Barlow Condensed", "Barlow", "Segoe UI", system-ui, sans-serif;--font-body: "Barlow", "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 3px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 20px rgba(0, 0, 0, .5);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);background-image:radial-gradient(900px 500px at 85% -10%,rgba(63,126,232,.06),transparent 55%);background-attachment:fixed}*{scrollbar-width:thin;scrollbar-color:rgba(154,166,189,.35) transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#9aa6bd40;border-radius:6px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#9aa6bd73;background-clip:content-box}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{height:100vh;display:flex;flex-direction:column;max-width:none;margin:0 auto;padding:14px 18px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;flex-shrink:0;padding:10px 14px 12px;border-bottom:1px solid var(--line-soft)}.brand h1{margin:0;font-family:var(--font-head);font-weight:600;font-size:22px;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-bright);line-height:1.05}.brand-sub{display:block;font-size:10.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);margin-top:3px}.nav-tabs{display:flex;gap:2px}.nav-tabs .nav-btn{position:relative;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--muted);font-family:var(--font-body);font-weight:500;font-size:13px;padding:6px 14px;letter-spacing:.5px;transition:color .18s cubic-bezier(.16,1,.3,1),background .18s cubic-bezier(.16,1,.3,1),border-color .18s cubic-bezier(.16,1,.3,1)}.nav-tabs .nav-btn:active{transform:scale(.97)}.nav-tabs .nav-btn:hover:not(:disabled){color:var(--text);background:var(--panel-2)}.nav-tabs .nav-btn.active{color:var(--text-bright);background:var(--panel-2);border-color:var(--accent-line)}.nav-active{position:absolute;left:12px;right:12px;bottom:-7px;height:2px;background:var(--accent);border-radius:1px}.card{background:linear-gradient(180deg,#171e2a 0%,var(--panel-solid) 48%);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:14px;box-shadow:var(--shadow-sm),inset 0 1px #ffffff0a}.card h2,.card h3{margin:0 0 10px;font-family:var(--font-head);font-weight:600;font-size:15px;letter-spacing:.4px;color:var(--text)}.card h2{font-size:18px}button{background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);padding:7px 13px;cursor:pointer;font-family:var(--font-body);font-weight:500;font-size:13px;transition:border-color .18s cubic-bezier(.16,1,.3,1),background .18s cubic-bezier(.16,1,.3,1),transform .1s cubic-bezier(.16,1,.3,1)}button:hover:not(:disabled){border-color:var(--accent-line);background:var(--accent-soft)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed}button.win{border-color:#46c08a80;color:#63d3a0}button.win:hover:not(:disabled){border-color:var(--green);color:#7ce8b6}button.lose,button.exit{border-color:#e5533d80;color:#f08a78}button.lose:hover:not(:disabled),button.exit:hover:not(:disabled){border-color:var(--red);color:#ffa290}button.mini{padding:3px 10px;font-size:11px;background:transparent;font-weight:500}.pill{background:var(--panel-2);border-radius:999px;padding:3px 12px;margin-right:8px;display:inline-block;font-size:12px;border:1px solid var(--line)}.pill.side-blue{border-color:#4fa3ff80;color:#8fc4ff}.pill.side-red{border-color:#e5533d80;color:#f7a18f}.pill.turn-blue.mine{border-color:#4fa3ff80}.pill.turn-red.mine{border-color:#e5533d80}.result-win{border-color:#46c08a80;color:#63d3a0}.result-lose{border-color:#e5533d80;color:#f7a18f}.badge-warn{background:var(--red);color:#fff;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:700}.badge-off{background:var(--muted);color:#0c0f14;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:700}.error{color:#f7a18f}.muted{color:var(--muted)}.error-bar{grid-column:1 / -1}.app-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.status{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.status .error{width:100%}.status.thin{margin-top:12px}.board{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:visible}.phase-banner{display:flex;align-items:center;gap:10px;padding:8px 14px;margin-bottom:12px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--panel-2);flex-shrink:0}.phase-icon{width:8px;height:8px;border-radius:50%;background:var(--accent)}.phase-icon.ban{background:var(--red)}.phase-icon.pick{background:var(--blue)}.phase-icon.done{background:var(--muted)}.phase-text{font-size:13px;font-weight:600;letter-spacing:.4px;color:var(--text)}.phase-count{margin-left:auto;font-size:12px;color:var(--accent);font-weight:600}.board-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-template-rows:minmax(0,1fr);gap:12px;flex:1;min-height:0}.board-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.hero-pool{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.hero-pool .pool-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0}.hero-pool .count-badge{font-size:12px;font-weight:500;color:var(--muted)}.hero-pool .picker{display:flex;flex-direction:column;min-height:0;flex:1}.hero-pool .hero-filters,.hero-pool .search{flex-shrink:0}.hero-pool .hero-grid{flex:1;min-height:0;max-height:none;margin-top:4px;overflow-y:auto;overflow-x:hidden;padding-right:6px;padding-bottom:14px;scrollbar-gutter:stable}.hero-pool{position:relative}.hero-pool:after{content:"";position:absolute;left:0;right:4px;bottom:0;height:36px;background:linear-gradient(180deg,transparent,rgba(13,16,22,.9));pointer-events:none}.board-side{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:0;overflow-y:auto;padding-right:2px}.board-side .suggestions{display:flex;flex-direction:column;min-width:0}.board-side .suggestions h3{flex-shrink:0}.board-side .suggestions .sug-list{display:flex;flex-direction:column;gap:14px}.board-side .suggestions>.muted{display:flex;align-items:center;justify-content:center;text-align:center;border:1px dashed var(--line);border-radius:var(--radius-sm);margin:4px 0 0;padding:20px 16px;color:var(--muted)}.tl-wrap{display:flex;flex-direction:column;gap:8px;padding:10px 16px;flex-shrink:0;overflow-x:auto}.tl-group{display:flex;align-items:center;gap:10px;min-width:0}.tl-label{flex-shrink:0;display:flex;align-items:center;gap:5px;width:44px;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.tl-group:first-child .tl-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--red)}.tl-group:nth-child(2) .tl-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue)}.tl-chips{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;min-width:0}.tl-chip{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;width:46px;height:46px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);transition:border-color .2s cubic-bezier(.16,1,.3,1),opacity .2s cubic-bezier(.16,1,.3,1)}.tl-chip.side-blue{border-color:#4fa3ff66}.tl-chip.side-red{border-color:#e5533d66}.tl-chip.filled{background:var(--panel-2)}.tl-chip.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-line),0 0 0 1px var(--accent-line)}.tl-chip.skipped{opacity:.35;border-style:dashed}.tl-avatar{display:inline-flex}.tl-chip .slot-undo{right:auto;top:-5px;left:22px}.tl-empty{font-size:13px;font-weight:700;color:var(--text-dim)}.tl-order{position:absolute;left:2px;bottom:1px;font-size:9px;font-weight:600;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:0 3px;line-height:1.3}.tl-chip.active .tl-order{color:var(--accent);border-color:var(--accent)}.team-comp{display:flex;flex-direction:column;gap:10px}.team-comp h3{margin:0;font-size:14px}.tc-team{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--line)}.tc-blue{border-color:#4fa3ff59}.tc-red{border-color:#e5533d59}.tc-head{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.tc-blue .tc-head .side-dot{background:var(--blue-team);border-color:var(--blue-team)}.tc-red .tc-head .side-dot{background:var(--red-team);border-color:var(--red-team)}.tc-name{color:var(--text)}.tc-count{margin-left:auto;font-size:11px}.tc-slots{display:flex;gap:8px}.tc-slot{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;flex:1;min-width:0;padding:4px 2px;border-radius:var(--radius-sm);border:1px dashed var(--line);background:var(--bg-deep)}.tc-slot.filled{border-style:solid;border-color:var(--line);background:var(--panel-2)}.tc-lane{font-size:9.5px;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.1}.tc-empty{font-size:12px;color:var(--text-dim);line-height:34px}.tc-coverage{display:flex;flex-wrap:wrap;gap:4px}.tc-cov{font-size:10px;padding:2px 7px;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:var(--bg-deep)}.tc-cov.on{border-color:#46c08a80;color:var(--green);background:#46c08a1a}.mini-comp{display:flex;flex-direction:column;gap:6px;padding:4px 2px}.mini-comp-row{display:flex;align-items:baseline;gap:8px;font-size:12.5px}.mini-team{flex-shrink:0;font-weight:700;font-size:11px;width:36px}.mini-team.blue{color:var(--blue-team)}.mini-team.red{color:var(--red-team)}.mini-note{margin:4px 0 0;font-size:11.5px}@media (max-width: 1100px){.board-grid{grid-template-columns:minmax(0,1fr)}.board-side{grid-column:1 / -1}}@media (max-width: 900px){.board-grid{grid-template-columns:1fr;grid-template-rows:auto;align-items:start}.board{overflow-y:auto}.board-main{overflow-y:visible}.hero-pool,.board-main{min-height:0}.hero-pool{overflow:visible;flex:none}.hero-pool .picker{overflow:visible}.hero-pool .hero-grid{flex:none;min-height:0;max-height:none;overflow-y:visible;overflow-x:visible;padding-right:0}.board-side{overflow-y:visible}}.hero-gem{position:relative;display:inline-block;flex-shrink:0}.gem-rim{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:2px;background:var(--rim);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.gem-face{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--face);color:#fff;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.gem-face img{width:100%;height:100%;object-fit:cover}.avatar-init{line-height:1;font-weight:700}.slots{display:flex;flex-wrap:wrap;gap:8px}.slot{position:relative;border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 8px;min-width:56px;text-align:center;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;transition:border-color .18s cubic-bezier(.16,1,.3,1)}.slot-undo{position:absolute;top:-5px;left:-5px;width:16px;height:16px;line-height:14px;padding:0;font-size:9px;border-radius:50%;background:var(--red);color:#fff;border:1px solid rgba(0,0,0,.5);cursor:pointer;opacity:0;transition:opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1);z-index:2;box-shadow:var(--shadow-sm)}.slot:hover .slot-undo,.slot-undo:focus-visible{opacity:1}.slot-undo:hover{transform:scale(1.15)}.slot-undo:disabled{opacity:.4;cursor:not-allowed}.board-draft .slot-undo{width:14px;height:14px;line-height:12px;font-size:8px;top:-4px;left:-4px}.slot.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-line)}.slot.skipped{opacity:.35;border-style:dashed}.slot .side-tag{display:block;font-size:10px;color:var(--muted);font-weight:600}.slot-empty{color:var(--text-dim);font-size:12px}.pick-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.side-label{min-width:40px;font-size:11px;font-weight:600;letter-spacing:.4px}.side-blue .side-label{color:var(--blue-team)}.side-red .side-label{color:var(--red-team)}.pick-row.side-blue .slot{border-color:#4fa3ff66}.pick-row.side-red .slot{border-color:#e5533d66}.slot.pick{min-width:72px;padding:5px 6px}.search{width:100%;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg-deep);color:var(--text);font-family:var(--font-body);font-size:13px;margin-bottom:12px;outline:none;transition:border-color .18s cubic-bezier(.16,1,.3,1)}.search::placeholder{color:#bfc9da}.search:focus{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-line)}.hero-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:12px}.hero-filters button{padding:4px 11px;font-size:11px;font-weight:600;border-radius:999px}.hero-filters .chip-active{background:var(--accent-soft);border-color:var(--accent-line);color:var(--text-bright)}.hero-filters .filter-sep{width:1px;height:18px;background:var(--line);margin:0 4px}.hero-filters .tier-chip{font-weight:700}.hero-filters .tier-chip.S{color:var(--tier-s)}.hero-filters .tier-chip.A{color:var(--tier-a)}.hero-filters .tier-chip.B{color:var(--tier-b)}.hero-filters .tier-chip.C{color:var(--tier-c)}.hero-filters .tier-chip.D{color:var(--tier-d)}.hero-filters .tier-chip.S.chip-active{border-color:var(--tier-s);color:var(--tier-s)}.hero-filters .tier-chip.A.chip-active{border-color:var(--tier-a);color:var(--tier-a)}.hero-filters .tier-chip.B.chip-active{border-color:var(--tier-b);color:var(--tier-b)}.hero-filters .tier-chip.C.chip-active{border-color:var(--tier-c);color:var(--tier-c)}.hero-filters .tier-chip.D.chip-active{border-color:var(--tier-d);color:var(--tier-d)}.hero-filters .count{font-size:12px}.hero-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:10px;max-height:320px;overflow-y:auto}.hero-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px 8px;text-align:center;background:transparent;border-radius:var(--radius-sm);border:1px solid transparent;transition:background .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.hero-card:hover{background:var(--panel-2);border-color:var(--line);transform:translateY(-2px)}.hero-card:active{transform:translateY(0) scale(.97)}.hero-card .hero-name{font-size:11px;font-weight:500;line-height:1.15;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.3em;color:var(--muted);transition:color .18s cubic-bezier(.16,1,.3,1)}.hero-card:hover .hero-name{color:var(--text)}.hero-gem{transition:transform .2s cubic-bezier(.16,1,.3,1)}.hero-card:hover .hero-gem{transform:scale(1.03)}.scenario-panel{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.scenario-panel h3{margin:0;font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.sc-marginals{display:flex;flex-direction:column;gap:5px}.sc-marginal{display:flex;align-items:center;gap:8px;font-size:11px}.sc-ph{min-width:58px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-dim)}.sc-bar{flex:1;height:14px;border-radius:3px;background:var(--bg-deep);border:1px solid var(--line-soft);display:flex;overflow:hidden}.sc-seg{height:100%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#0b0d12}.sc-lane-slayer{background:#e8b14f}.sc-lane-mid{background:#5ea8e8}.sc-lane-jungle{background:#9b8de8}.sc-lane-dragon{background:#e88a6f}.sc-lane-support{background:#58cd97}.sc-tabs{display:flex;gap:5px;flex-wrap:wrap}.sc-tab.on{color:var(--text-bright);border-color:var(--accent-line);background:var(--accent-soft)}.sc-scenario{display:flex;flex-direction:column;gap:7px}.sc-lane-map{display:flex;flex-wrap:wrap;gap:4px;font-size:11px}.sc-lane-tag{background:var(--panel-2);border:1px solid var(--line-soft);border-radius:4px;padding:1px 6px}.sc-lane-tag b{color:var(--text);font-weight:600}.sc-picks{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.sc-picks-label,.sc-balance-label,.sc-rotation-label{font-size:11px;color:var(--text-dim)}.sc-pick,.sc-balance-pick{display:inline-flex;align-items:center;gap:5px}.sc-pick-lane{font-style:normal;font-size:10px;color:var(--muted)}.sc-balance{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sc-rotation{border-top:1px solid var(--line-soft);padding-top:7px;display:flex;flex-direction:column;gap:5px}.sc-rotation-moves{display:flex;flex-wrap:wrap;gap:4px}.sc-rot-move{font-size:11px;background:var(--panel-2);border:1px solid var(--line-soft);border-radius:4px;padding:1px 6px;color:var(--text)}.sug-list{display:flex;flex-direction:column;gap:14px}.sug-group{display:flex;flex-direction:column;gap:6px;min-width:0}.sug-lane-title{margin:0;font-family:var(--font-head);font-weight:600;font-size:12px;letter-spacing:.8px;text-transform:uppercase;color:var(--text);border-bottom:1px solid var(--line-soft);padding-bottom:5px;display:flex;align-items:center;gap:6px}.sug-lane-title:after{content:"";flex:1;height:1px;background:var(--line-soft)}.sug-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);text-align:left;background:transparent;border:1px solid transparent}.sug-item:hover:not(:disabled){background:var(--panel-2);border-color:var(--line)}.sug-item.hard{opacity:.5}.sug-item.off{box-shadow:inset 3px 0 0 var(--muted)}.sug-rank{min-width:16px;font-size:11px;font-weight:600;color:var(--text-dim);text-align:center}.sug-info{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.sug-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.sug-feats{display:flex;gap:5px}.feat{width:7px;height:24px;background:var(--bg-deep);border:1px solid var(--line-soft);border-radius:2px;display:flex;align-items:flex-end;overflow:hidden}.feat i{display:block;width:100%;height:calc(var(--fill) * 100%);background:var(--tier-d)}.feat-meta i{background:var(--tier-s)}.feat-synergy i{background:var(--tier-c)}.feat-counter i{background:var(--tier-b)}.feat-risk i{background:var(--red)}.sug-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.sug-score{font-weight:600;font-size:14px;color:var(--text-bright)}.sug-badges{display:flex;gap:3px}.sug-tags{display:flex;flex-wrap:wrap;gap:3px 6px}.tag{font-size:10px;font-weight:600;line-height:1.2;padding:1px 6px;border-radius:4px;white-space:nowrap}.tag-syn{color:#63d3a0;background:#46c08a1f;border:1px solid rgba(70,192,138,.35)}.tag-ctr{color:#e8c05a;background:#e8c05a1a;border:1px solid rgba(232,192,90,.4)}@media (max-width: 760px){.sug-list{gap:12px}}.bans h3,.picks h3{margin:0 0 8px;font-size:14px}.bans-head{display:flex;align-items:center;gap:8px}.ban-count{font-size:12px;color:var(--accent);font-weight:600}.bans-head button.complete-bans{color:var(--text);border-color:var(--line)}.bans-head button.complete-bans:hover:not(:disabled){border-color:var(--accent-line);color:var(--text-bright)}.bans-head button.complete-bans:disabled{opacity:.5;cursor:not-allowed}.spacer{flex:1}.bans-collapsed{padding:8px 12px}.bans-collapsed .bans-head{margin-bottom:0}.bans-slots{flex-wrap:wrap;justify-content:center}.bans-slots .slot.small{padding:3px;min-width:36px}.result-actions-row{display:flex;gap:8px;flex-direction:column}.pick-row .side-label{min-width:20px;font-size:11px}.board-draft .slots{flex-wrap:wrap;gap:6px}.board-draft .slot{min-width:0;padding:2px;flex:0 0 auto;width:34px}.board-draft .pick-row .slots{flex-wrap:nowrap}.board-draft .pick-row .slot{width:32px}.board-draft .hero-gem{font-size:11px}.board-draft .picks h3,.board-draft .bans h3{margin:0 0 8px;font-size:14px}.board-draft .pick-row .side-label{min-width:18px;font-size:11px}.board-draft .slot-empty{font-size:10px}.board-draft .slot .side-tag{display:none}.new-draft-wrap{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:8px 0}.new-draft{width:min(560px,100%);display:grid;gap:20px;padding:30px}.new-head h2{margin:0 0 4px;font-family:var(--font-head);font-weight:600;font-size:26px;letter-spacing:.6px;color:var(--text-bright)}.new-head p{margin:0;color:var(--muted);font-size:13px}.new-section{display:grid;gap:8px}.new-label{font-size:11px;font-weight:600;letter-spacing:1.2px;color:var(--muted);text-transform:uppercase}.side-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.side-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg-deep);color:var(--text);cursor:pointer;text-align:left;transition:border-color .18s cubic-bezier(.16,1,.3,1),background .18s cubic-bezier(.16,1,.3,1),transform .1s cubic-bezier(.16,1,.3,1)}.side-card:hover{border-color:var(--muted)}.side-card:active{transform:translateY(1px)}.side-card.side-blue.active{border-color:#4fa3ff99;background:#4fa3ff14}.side-card.side-red.active{border-color:#e5533d99;background:#e5533d14}.side-dot{width:13px;height:13px;border-radius:50%;border:2px solid var(--muted)}.side-blue .side-dot{border-color:var(--blue-team);background:var(--blue-team)}.side-red .side-dot{border-color:var(--red-team);background:var(--red-team)}.side-card-title{font-size:16px;font-weight:600;letter-spacing:.3px}.side-blue .side-card-title{color:#8fc4ff}.side-red .side-card-title{color:#f0a28f}.side-card-hint{font-size:12px;color:var(--muted)}.pick-order{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pick-btn{padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-deep);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .18s cubic-bezier(.16,1,.3,1),background .18s cubic-bezier(.16,1,.3,1)}.pick-btn:hover{border-color:var(--muted)}.pick-btn.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--text-bright)}.new-note{color:var(--muted);font-size:12px}.new-start{padding:14px;border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent);color:#fff;font-family:var(--font-head);font-weight:600;font-size:16px;letter-spacing:1.2px;cursor:pointer;text-transform:uppercase;box-shadow:var(--shadow-md);transition:background .18s cubic-bezier(.16,1,.3,1),transform .1s cubic-bezier(.16,1,.3,1)}.new-start:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.new-start:hover:not(:disabled){transform:translateY(-1px)}.new-start:active:not(:disabled){transform:translateY(0)}.new-start:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 760px){.app-header{flex-wrap:wrap;gap:8px;padding:8px 2px 10px;margin-bottom:10px}.brand h1{font-size:17px}.nav-tabs{width:100%;overflow-x:auto;display:flex;gap:4px}.nav-tabs .nav-btn{flex:1;white-space:nowrap;padding:6px 10px}.new-draft-wrap{padding:4px 0 16px}.new-draft{padding:20px;gap:16px}.side-card{padding:12px}.pick-btn{white-space:nowrap;padding:10px 8px;font-size:12px}}.match-row{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line-soft)}.match-picks{flex:1;display:grid;gap:2px;font-size:13px}.pick-line b{color:var(--muted);font-weight:600}.tabs{margin-bottom:12px}.tabs button{margin-right:8px}.tabs .tab-active{background:var(--accent-soft);border-color:var(--accent-line);color:var(--text-bright)}.table-wrap{overflow-x:auto}.table-wrap table{width:100%;border-collapse:collapse;font-size:13px}.table-wrap th,.table-wrap td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--line-soft);white-space:nowrap}.table-wrap th{color:var(--muted);font-weight:600;position:sticky;top:0;background:var(--panel-solid)}.table-wrap .table-wrap{max-height:480px;overflow-y:auto}.db-view .card .table-wrap{max-height:60vh;overflow-y:auto}.lane-editor .card.table-wrap{max-height:none;overflow:hidden}.lane-editor .lane-table-wrap{display:flex;overflow-x:auto;height:min(60vh,620px);padding:0}.lane-editor .lane-table{flex:1 0 auto;display:flex;flex-direction:column;width:100%;min-width:820px;border-collapse:separate;border-spacing:0;table-layout:fixed}.lane-editor .lane-table thead{display:block;flex:none;width:100%}.lane-editor .lane-table thead tr{display:table;table-layout:fixed;width:100%}.lane-editor .lane-table tbody{display:block;flex:1;min-height:0;overflow-y:auto;overflow-anchor:none;width:100%;scrollbar-width:thin;scrollbar-color:rgba(154,166,189,.35) transparent}.lane-editor .lane-table tbody::-webkit-scrollbar{width:8px;height:8px}.lane-editor .lane-table tbody::-webkit-scrollbar-track{background:transparent}.lane-editor .lane-table tbody::-webkit-scrollbar-thumb{background:#9aa6bd4d;border-radius:4px;border:2px solid transparent;background-clip:content-box}.lane-editor .lane-table tbody::-webkit-scrollbar-thumb:hover{background:#9aa6bd80;background-clip:content-box}.lane-editor .lane-table tbody tr{display:table;table-layout:fixed;width:100%}.lane-editor .lane-table-wrap::-webkit-scrollbar{height:8px}.lane-editor .lane-table-wrap::-webkit-scrollbar-thumb{background:#9aa6bd40;border-radius:4px}.lane-editor .lane-warn{margin-bottom:10px;padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--accent-line);background:var(--accent-soft);color:#bcd6ff;font-size:13px}.lane-editor .lane-warn.err{border-color:#e5533d80;background:#e5533d1a;color:#f0a28f}.lane-editor .lane-warn.ok{border-color:#46c08a80;background:#46c08a1a;color:#63d3a0}.lane-editor tr.invalid{background:#e5533d0d}.lane-editor .lane-name{font-weight:600;min-width:110px}.lane-editor td select{width:62px;padding:4px;border:1px solid var(--line);border-radius:4px;background:var(--panel-2);color:var(--text);font-size:13px;text-align:center;text-align-last:center;cursor:pointer}.lane-editor td select.active{border-color:var(--accent-line);border-width:2px}.lane-editor td select:disabled{opacity:.35;cursor:not-allowed;border-color:var(--line-soft)}.lane-editor .sum-ok{color:#63d3a0;font-weight:600}.lane-editor .sum-bad{color:#f0a28f;font-weight:600}.lane-editor .lane-state .badge{display:inline-block;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600;color:var(--muted);border:1px solid var(--line-soft);white-space:nowrap}.lane-editor .lane-state .badge.saved{color:#63d3a0;border-color:#46c08a80}.lane-editor .lane-state .badge.warn{color:#f0a28f;border-color:#e5533d80}.lane-editor th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .12s cubic-bezier(.16,1,.3,1)}.lane-editor th.sortable:hover{color:var(--text)}.lane-editor th.name-asc,.lane-editor th.name-desc,.lane-editor th.tier-asc,.lane-editor th.tier-desc,.lane-editor th.score-asc,.lane-editor th.score-desc{color:var(--accent)}.lane-editor .lane-table th,.lane-editor .lane-table td{white-space:nowrap;padding:4px 6px;border-bottom:1px solid var(--line-soft);overflow:hidden;text-overflow:ellipsis}.lane-editor .lane-table th{position:sticky;top:0;z-index:1;background:var(--panel-2);color:var(--muted);border-bottom:2px solid var(--line)}.lane-editor .lane-table th:nth-child(1),.lane-editor .lane-table td:nth-child(1){width:130px}.lane-editor .lane-table th:nth-child(2),.lane-editor .lane-table td:nth-child(2){width:46px}.lane-editor .lane-table th:nth-child(3),.lane-editor .lane-table td:nth-child(3){width:52px}.lane-editor .lane-table th:nth-child(4),.lane-editor .lane-table td:nth-child(4),.lane-editor .lane-table th:nth-child(5),.lane-editor .lane-table td:nth-child(5),.lane-editor .lane-table th:nth-child(6),.lane-editor .lane-table td:nth-child(6),.lane-editor .lane-table th:nth-child(7),.lane-editor .lane-table td:nth-child(7),.lane-editor .lane-table th:nth-child(8),.lane-editor .lane-table td:nth-child(8){width:72px}.lane-editor .lane-table th:nth-child(9),.lane-editor .lane-table td:nth-child(9){width:50px}.lane-editor .lane-table th:nth-child(10),.lane-editor .lane-table td:nth-child(10){width:150px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes turnPulse{0%,to{opacity:1}50%{opacity:.4}}::view-transition-old(root){animation:vtOut .22s cubic-bezier(.16,1,.3,1) both}::view-transition-new(root){animation:vtIn .22s cubic-bezier(.16,1,.3,1) both}@keyframes vtOut{to{opacity:0;transform:translateY(-4px)}}@keyframes vtIn{0%{opacity:0;transform:translateY(4px)}}.board{animation:fadeIn .25s ease-out}.slot-avatar{display:inline-flex}.phase-icon.your-turn{animation:turnPulse 2.4s ease-in-out infinite}.app-body{min-height:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
