:root{--bg: #0e1014;--panel: #171a20;--panel2: #1e222a;--line: #2c313c;--line-strong: #3a4150;--text: #f3efe6;--muted: #8d94a2;--accent: #ff4655;--accent-ink: #14171c;--gold: #e7b53c;--display: "Oswald", "Segoe UI", system-ui, sans-serif;--logo: "Anton", "Oswald", sans-serif;--body: "Segoe UI", system-ui, -apple-system, sans-serif;--radius: 6px}[data-theme=light]{--bg: #ece6d7;--panel: #f4efe3;--panel2: #e7e1d1;--line: #d8d1bd;--line-strong: #c1b79b;--text: #1b1913;--muted: #6e6857;--accent: #e0452f;--accent-ink: #ffffff;--gold: #b07d12}[data-game=cs]{--accent: #f0831f;--accent-ink: #14140c;--gold: #e0a437}[data-game=cs][data-theme=dark]{--bg: #0b130e;--panel: #11201a;--panel2: #16271f;--line: #234034;--line-strong: #305845;--text: #eef3ec;--muted: #87a796}[data-game=cs][data-theme=light]{--bg: #e4e9dc;--panel: #eef1e6;--panel2: #e1e7d6;--line: #cdd4bd;--line-strong: #aeb89a;--text: #16201a;--muted: #5f6e5c;--accent-ink: #ffffff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--display);font-weight:700;letter-spacing:.3px}h2{text-transform:uppercase;letter-spacing:1px}.app{max-width:1080px;margin:0 auto;padding:16px}.muted{color:var(--muted)}.small{font-size:12px}code{background:var(--panel2);padding:1px 5px;border-radius:4px}.empty{color:var(--muted);padding:40px 0;text-align:center}.setup-block h3,.filters label,.br-section h4,.path-title,.review-strength,.comp-status,.br-col-title,.br-group-title,.seed-field,.sb-maps{font-family:var(--display)}.topbar{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:16px}.topbar h1{font-size:20px;margin:6px 0 12px;letter-spacing:.5px}.filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.filters label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.filters .grow{flex:1;min-width:200px}.filters select,.filters input{background:var(--panel2);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:7px 9px;font-size:14px}.event-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.event-head h2{font-size:18px;margin:0}.team{background:var(--panel);border:1px solid var(--line-strong);border-radius:4px;margin-bottom:12px;overflow:hidden}.team-head{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--panel2);border-bottom:1px solid var(--line)}.team-name{font-family:var(--display);font-weight:600;font-size:16px;text-transform:uppercase;letter-spacing:.5px}.team-tag{font-family:var(--display);font-size:12px;letter-spacing:.5px}.tier{font-family:var(--display);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:3px 8px;border-radius:3px;color:#14171c}.tier-champion{background:#ffd34d}.tier-runnerUp{background:#d7dde6}.tier-top4{background:#c98b4b}.tier-top8{background:#5b8def;color:#fff}.tier-top12{background:#3a4250;color:#cfd6e2}.tier-groups{background:#2a2f3a;color:var(--muted)}.players{display:flex;flex-direction:column}.player{display:grid;grid-template-columns:44px 160px 130px 1fr;gap:10px;align-items:center;padding:8px 14px;border-top:1px solid var(--line)}.player:first-child{border-top:none}.pname{font-weight:600}.role{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px}.flex{font-size:9px;font-weight:700;background:var(--accent);color:#fff;padding:1px 4px;border-radius:3px;letter-spacing:.5px}.stats{font-size:12px;color:var(--muted)}.stats b{color:var(--text);font-weight:600;margin-left:8px}.stats b:first-child{margin-left:0}.ovr{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;border-radius:4px;font-family:var(--logo);font-size:20px;line-height:1;color:#14171c;border:1px solid rgba(0,0,0,.25)}.ovr-elite{background:var(--gold);box-shadow:inset 0 0 0 1px #ffffff40}.ovr-gold{background:#d8b24a}.ovr-silver{background:#c2cad6}.ovr-bronze{background:#c08a4e}.ovr-base{background:#3a4150;color:#d6dbe4;border-color:var(--line-strong)}.search-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.search-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.search-name{font-weight:700;font-size:15px;margin-bottom:8px}.appearances{width:100%;border-collapse:collapse}.appearances td{padding:4px 6px;border-top:1px solid var(--line);font-size:13px}.appearances .ovr{min-width:30px;height:26px;font-size:13px;border-radius:5px}.role-cell{color:var(--muted);font-size:11px;font-weight:700}.inspector-filters{margin:16px 0 20px}.appbar{display:flex;align-items:center;justify-content:space-between;padding:12px 0 14px;border-bottom:2px solid var(--line-strong);margin-bottom:16px;position:sticky;top:0;background:var(--bg);z-index:20}.brand{display:flex;align-items:center;gap:12px;background:none;border:none;padding:0;color:inherit;cursor:pointer}.brand:hover .logo-a{filter:brightness(1.15)}.logo{font-family:var(--logo);font-size:38px;line-height:.8;letter-spacing:1px}.logo-a{color:var(--accent)}.brand-tag{font-family:var(--display);font-size:10.5px;line-height:1.25;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);border-left:2px solid var(--line-strong);padding-left:10px}.tabs{display:flex;gap:0;border:1.5px solid var(--line-strong);border-radius:var(--radius);overflow:hidden}.tabs button{font-family:var(--display);background:transparent;color:var(--muted);border:none;padding:8px 18px;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer}.tabs button+button{border-left:1.5px solid var(--line-strong)}.tabs button.is-active{background:var(--accent);color:var(--accent-ink)}.appbar-actions{display:flex;align-items:center;gap:10px}.support-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--display);text-transform:uppercase;letter-spacing:1px;font-size:13px;font-weight:700;text-decoration:none;height:40px;padding:0 16px;border-radius:var(--radius);background:var(--accent);color:var(--accent-ink);border:1.5px solid var(--accent)}.support-btn:hover{filter:brightness(1.08)}.settings{position:relative}.settings-btn{font-size:18px;background:transparent;border:1.5px solid var(--line-strong);color:var(--text);width:40px;height:40px;border-radius:var(--radius);cursor:pointer;line-height:1}.settings-btn:hover{border-color:var(--accent)}.settings-menu{position:absolute;right:0;top:48px;z-index:30;background:var(--panel);border:1.5px solid var(--line-strong);border-radius:var(--radius);padding:12px;min-width:190px;box-shadow:0 10px 26px #00000059}.set-group{margin-bottom:12px}.set-group:last-child{margin-bottom:0}.set-label{font-family:var(--display);font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:6px}.set-options{display:flex;gap:6px}.set-options button{flex:1;font-family:var(--display);text-transform:uppercase;letter-spacing:.5px;font-size:12px;background:var(--panel2);border:1px solid var(--line-strong);color:var(--text);border-radius:4px;padding:7px 10px;cursor:pointer}.set-options button.is-active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.coming{max-width:560px;margin:0 auto;padding:64px 0;text-align:center}.coming-mark{font-family:var(--logo);font-size:84px;line-height:.85;color:var(--accent);letter-spacing:2px}.coming h2{font-size:30px;margin:14px 0 6px}.coming-tag{font-family:var(--display);text-transform:uppercase;letter-spacing:1.5px;font-size:13px}.btn-primary,.btn-ghost{font-family:var(--display);text-transform:uppercase;letter-spacing:1px;border-radius:var(--radius);padding:11px 20px;font-weight:700;font-size:14px;cursor:pointer}.btn-primary{background:var(--accent);color:var(--accent-ink);border:1.5px solid var(--accent)}.btn-primary:hover{filter:brightness(1.08)}.btn-ghost{background:transparent;color:var(--text);border:1.5px solid var(--line-strong)}.btn-ghost:hover{border-color:var(--text)}.btn-primary.big,.btn-ghost.big{padding:15px 28px;font-size:17px}button:disabled{opacity:.4;cursor:not-allowed}.link{font-family:var(--display);background:none;border:none;color:var(--muted);cursor:pointer;font-size:12px;text-transform:uppercase;letter-spacing:.5px;text-decoration:underline;text-underline-offset:2px}.link:hover{color:var(--text)}.setup,.camp-config,.auto-recap{max-width:720px;margin:0 auto;padding-top:8px}.setup h2,.draft-head h2,.camp-config h2,.auto-recap h2{font-size:26px}.setup-block{margin:18px 0}.setup-block h3{font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:8px}.option-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.option-card{text-align:left;background:var(--panel);border:1.5px solid var(--line);border-radius:4px;padding:14px;cursor:pointer;color:var(--text)}.option-card.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.option-title{font-family:var(--display);font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.option-desc{font-size:12px;color:var(--muted)}.slot-chips{display:flex;gap:5px;flex-wrap:wrap}.chip{font-size:10px;font-weight:800;padding:3px 7px;border-radius:5px;background:var(--panel2);color:var(--text)}.chip-duelist{background:#5a2230;color:#ff9aa8}.chip-initiator{background:#1f3a4d;color:#8fd3ff}.chip-controller{background:#2c2350;color:#c2aaff}.chip-sentinel{background:#1f4030;color:#8fe0b0}.chip-flex{background:#444a57;color:#fff}.comp-builder{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.comp-role{display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:12px 14px}.comp-role-name{font-family:var(--display);font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:.5px}.comp-counter{display:flex;align-items:center;justify-content:space-between;gap:8px}.comp-counter button{width:34px;height:34px;border-radius:8px;border:1px solid var(--line);background:var(--panel2);color:var(--text);font-size:20px;font-weight:700;cursor:pointer;line-height:1}.comp-counter button:hover:not(:disabled){border-color:var(--accent)}.comp-count{font-family:var(--logo);font-size:26px;line-height:1;min-width:24px;text-align:center}.chip-bg-duelist{border-left:3px solid #ff6473}.chip-bg-initiator{border-left:3px solid #6bb8ff}.chip-bg-controller{border-left:3px solid #b69cff}.chip-bg-sentinel{border-left:3px solid #67d39a}.comp-status{display:flex;align-items:center;gap:14px;margin-top:14px;flex-wrap:wrap}.comp-total{font-weight:800;font-size:14px}.comp-total.ok{color:#43c47a}.comp-total.bad{color:var(--muted)}.presets{display:flex;align-items:center;gap:8px;margin-top:14px;flex-wrap:wrap}.preset-btn{background:var(--panel2);border:1px solid var(--line);color:var(--text);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;cursor:pointer}.preset-btn:hover{border-color:var(--accent)}.draft{max-width:880px;margin:0 auto}.draft-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.counter{font-family:var(--logo);color:var(--accent);font-size:1.3em}.rerolls{font-family:var(--display);text-transform:uppercase;letter-spacing:.5px;font-size:13px;color:var(--muted)}.slots{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:18px}.slot{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:10px;min-height:92px}.slot.is-filled{border-color:var(--line-strong)}.slot-role{font-family:var(--display);font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:600;margin-bottom:8px}.slot-pick{display:flex;flex-direction:column;gap:6px}.slot-pick-name{font-weight:700;font-size:13px}.slot-pick-src{font-size:11px}.slot-actions{display:flex;gap:4px}.slot-actions button{background:var(--panel2);border:1px solid var(--line);color:var(--muted);border-radius:5px;width:24px;height:22px;cursor:pointer;font-size:12px}.slot-empty{font-size:12px;padding-top:14px}.roll-cta{text-align:center;padding:30px 0}.roll-cta p{margin-top:12px}.roll-result{background:var(--panel);border:1.5px solid var(--line-strong);border-radius:var(--radius);padding:16px}.roll-team{display:flex;align-items:baseline;gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.roll-team-name{font-family:var(--display);font-size:24px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.roll-team-event{font-size:13px}.roll-players{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.pcard{display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:var(--panel2);border:1px solid var(--line);border-radius:4px;padding:10px;cursor:pointer;color:var(--text)}.pcard:not(.is-disabled):hover{border-color:var(--accent)}.pcard.is-disabled{opacity:.35}.pcard-name{font-weight:700}.pcard-role{font-size:12px;color:var(--muted);display:flex;gap:6px;align-items:center}.pcard-roles{display:flex;gap:4px;flex-wrap:wrap}.rchip{font-size:9px;font-weight:800;padding:2px 5px;border-radius:4px}.choose-role{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding:10px 12px;background:var(--panel2);border:1px solid var(--accent);border-radius:8px;font-size:13px}.choose-role button{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:6px 12px;font-weight:700;cursor:pointer}.role-choice{display:flex;gap:4px;margin-top:6px}.role-choice button{background:var(--panel2);border:1px solid var(--line);color:var(--text);border-radius:5px;padding:3px 7px;font-size:10px;font-weight:700;cursor:pointer}.role-choice button.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.warn{color:#ffcf66;font-size:13px;margin-top:12px}.roll-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;align-items:center}.roll-actions .free-roll{background:var(--accent);color:#fff;border:none}.roll-actions button{font-family:var(--display);text-transform:uppercase;letter-spacing:.5px;background:var(--panel2);border:1px solid var(--line-strong);color:var(--text);border-radius:4px;padding:9px 14px;font-weight:600;cursor:pointer}.draft-done{text-align:center;padding:16px}.comp{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:10px}.comp-card{position:relative;background:var(--panel);border:1.5px solid var(--line);border-radius:4px;padding:12px 8px;min-height:138px;cursor:pointer;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;transition:border-color .15s,transform .12s,box-shadow .15s}.comp-card.is-empty{justify-content:center;border-style:dashed;cursor:default}.comp-card:not(.is-empty):hover{border-color:var(--line-strong);transform:translateY(-2px)}.comp-card.is-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);transform:translateY(-2px)}.comp-card.is-swap{border-color:var(--gold);border-style:dashed}.comp-ovr{margin-bottom:3px}.comp-name{font-weight:700;font-size:14px;line-height:1.1}.comp-src{font-size:10px;line-height:1.2}.comp-role-ctrl{display:flex;align-items:center;gap:4px;margin-top:auto;padding-top:8px}.role-arrow{background:var(--panel2);border:1px solid var(--line-strong);color:var(--text);border-radius:4px;width:22px;height:26px;cursor:pointer;font-size:18px;line-height:1}.role-arrow:hover{border-color:var(--accent);color:var(--accent)}.role-badge{font-family:var(--display);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:5px 9px;border-radius:4px;min-width:78px}.role-chips{display:flex;gap:4px;flex-wrap:wrap;justify-content:center;margin-top:6px}.role-chips .rchip{cursor:pointer;opacity:.45}.role-chips .rchip.is-on{opacity:1;box-shadow:0 0 0 1.5px currentColor}.swap-hint{position:absolute;top:6px;right:6px;font-family:var(--display);font-size:8.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--gold)}.roll-result.spinning .roll-team-name{color:var(--muted)}.roll-result.spinning .roll-team-event{visibility:hidden}@keyframes landPop{0%{transform:scale(1.1);color:var(--accent)}to{transform:scale(1)}}.roll-result:not(.spinning) .roll-team-name{display:inline-block;animation:landPop .28s ease}@keyframes roleFlip{0%{opacity:0;transform:translateY(-5px) scale(.88)}to{opacity:1;transform:none}}.role-flip{display:inline-block;animation:roleFlip .18s ease}.comp-card.is-target{border-color:var(--accent);cursor:pointer;animation:targetGlow 1.3s ease-in-out infinite}.comp-card.is-target:hover{background:var(--panel2)}.comp-filled{display:flex;flex-direction:column;align-items:center;gap:3px;margin-top:6px}.comp-empty{font-family:var(--display);font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin-top:14px}.comp-card .role-badge{margin-bottom:0}.comp-card.is-flex:hover{border-color:var(--gold)}.flex-tag{position:absolute;top:6px;right:6px;font-family:var(--display);font-size:8.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--gold);opacity:.8}.comp-tip{text-align:center;font-size:12px;margin:0 0 14px}.comp-tip b{color:var(--gold)}.formation{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.form-slot{background:var(--panel);border:1.5px solid var(--line);border-radius:4px;padding:14px 8px;display:flex;flex-direction:column;align-items:center;gap:12px}.form-pos{font-family:var(--display);font-size:11px;letter-spacing:1px}.form-arrows{display:flex;align-items:center;gap:4px}.form-role-name{font-family:var(--display);font-size:11px;text-transform:uppercase;letter-spacing:.5px;min-width:74px;text-align:center}.seed-field{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:20px 0}.seed-row{display:flex;align-items:center;gap:6px;margin-top:6px}.seed-row .hash{font-size:22px;font-weight:800;color:var(--muted)}.seed-row input{background:var(--panel2);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:10px 12px;font-size:20px;font-weight:800;letter-spacing:3px;width:160px;text-transform:uppercase}.seed-row button{background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:10px 12px;cursor:pointer}.camp-start{display:flex;gap:10px;flex-wrap:wrap}.watch{max-width:720px;margin:0 auto}.watch-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.watch-progress{font-size:14px}.scoreboard{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;background:var(--panel);border:1.5px solid var(--line-strong);border-radius:var(--radius);padding:18px}.sb-team{text-align:center}.sb-team.is-user .sb-name{color:var(--accent)}.sb-opp{text-align:center}.sb-name{font-family:var(--display);font-weight:600;font-size:17px;text-transform:uppercase;letter-spacing:.5px}.sb-maps{font-size:11px;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.sb-side{font-size:11px;font-weight:700;margin-top:4px}.sb-side.atk{color:#ff7a86}.sb-side.def{color:#6fd3a0}.map-dots{display:flex;gap:6px;justify-content:center;margin-top:8px}.map-dots .dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--muted);box-sizing:border-box;transition:background .2s ease,border-color .2s ease,transform .2s ease}.map-dots .dot.filled{background:var(--accent);border-color:var(--accent);transform:scale(1.12)}.sb-center{text-align:center}.sb-map{font-size:11px;margin-bottom:6px}.sb-score{font-family:var(--logo);font-size:52px;line-height:1;font-variant-numeric:tabular-nums}.sb-score .sep{color:var(--muted);margin:0 6px}.sb-score .lead{color:var(--accent)}.round-feed{margin:14px 0;display:flex;flex-direction:column;gap:3px;min-height:180px}.feed-row{display:grid;grid-template-columns:90px 1fr 60px;gap:8px;padding:6px 12px;border-radius:6px;font-size:13px;background:var(--panel);border-left:3px solid var(--line)}.feed-row.won{border-left-color:#43c47a}.feed-row.lost{border-left-color:#c44;opacity:.7}.feed-rn{color:var(--muted);font-variant-numeric:tabular-nums}.feed-sc{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.watch-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.speeds{display:flex;gap:4px}.speeds button{background:var(--panel2);border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:6px 12px;cursor:pointer;font-size:12px}.speeds button.is-active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.ctrl-buttons{display:flex;gap:6px}.ctrl-buttons button{background:var(--panel2);border:1px solid var(--line);color:var(--text);border-radius:6px;padding:6px 12px;cursor:pointer;font-size:12px}.match-result{text-align:center;margin-top:18px;padding:18px;border-radius:12px;border:1px solid var(--line)}.match-result.win{background:#43c47a1a;border-color:#43c47a}.match-result.loss{background:#cc44441a;border-color:#c44}.mr-title{font-family:var(--logo);font-size:32px;text-transform:uppercase;letter-spacing:1px}.match-result.win .mr-title{color:#5cd28a}.match-result.loss .mr-title{color:#e06b6b}.mr-score{color:var(--muted);margin:6px 0 14px}.report{display:flex;flex-direction:column;gap:16px}.report-head{text-align:center;padding:18px;border:1.5px solid var(--line-strong);border-radius:var(--radius);position:relative}.report-head:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;border-radius:var(--radius) var(--radius) 0 0}.report-head.win{border-color:#43c47a}.report-head.win:before{background:#43c47a}.report-head.loss{border-color:#c44}.report-head.loss:before{background:#c44}.report-head .mr-title{font-size:34px}.report-score{margin-top:6px;font-size:15px}.report-score b{font-family:var(--logo);font-size:22px;vertical-align:-1px}.report-score .lead{color:var(--accent)}.report-maps{display:flex;gap:18px;flex-wrap:wrap;justify-content:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.report-map{display:inline-flex;align-items:baseline;gap:7px}.report-map.lost{opacity:.6}.rm-name{font-family:var(--display);font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.rm-sc{font-family:var(--logo);font-size:18px}.report-map.won .rm-sc{color:#5cd28a}.report-next{text-align:center;font-family:var(--display);text-transform:uppercase;letter-spacing:1px;font-size:13px;color:var(--muted);border:1px dashed var(--line-strong);border-radius:var(--radius);padding:10px}.report-next b{color:var(--text)}.report .btn-primary{align-self:center}.recap-list{display:flex;flex-direction:column;gap:6px;margin:16px 0}.recap-row{display:grid;grid-template-columns:110px 50px 1fr 28px;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);border-left-width:3px;border-radius:8px;padding:9px 12px}.recap-row.win{border-left-color:#43c47a}.recap-row.loss{border-left-color:#c44}.recap-score{font-weight:800;font-variant-numeric:tabular-nums}.recap-tag{text-align:center;font-weight:800;border-radius:5px}.recap-tag.win{color:#43c47a}.recap-tag.loss{color:#e06666}.final-wrap{max-width:460px;margin:0 auto;text-align:center}.final-card{background:linear-gradient(160deg,#1b1f29,#14171e);border:1.5px solid var(--line-strong);border-radius:var(--radius);padding:22px;margin-bottom:16px;position:relative}.final-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--accent);border-radius:var(--radius) var(--radius) 0 0}.final-card.is-champion{border-color:var(--gold);box-shadow:0 0 32px #e7b53c33}.final-card.is-champion:before{background:var(--gold)}.final-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.final-place{font-family:var(--logo);font-size:28px;text-transform:uppercase;letter-spacing:.5px}.final-seed{font-family:var(--display);font-size:12px;color:var(--muted);letter-spacing:1.5px}.final-team-strength{font-family:var(--display);text-transform:uppercase;letter-spacing:1px;font-size:12px;color:var(--muted);margin-bottom:14px}.final-team-strength b{color:var(--gold);font-family:var(--logo);font-size:18px}.final-roster{display:flex;flex-direction:column;gap:8px}.final-player{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:8px 12px}.final-player-name{font-weight:700}.final-player-role{font-size:12px;text-transform:uppercase;letter-spacing:.5px}.final-player-src{font-size:11px;text-align:right;line-height:1.3}.final-foot{margin-top:16px;font-family:var(--display);font-size:11px;letter-spacing:1.5px;text-transform:uppercase}.final-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes popIn{0%{opacity:0;transform:scale(.85)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes scorePop{0%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes targetGlow{0%,to{box-shadow:0 0 #ff465573}50%{box-shadow:0 0 0 6px #ff465500}}@keyframes softPulse{0%,to{box-shadow:0 0 #ff465580}50%{box-shadow:0 0 0 8px #ff465500}}@keyframes feedIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}.fade-in{animation:fadeIn .28s ease both}.pop-in{animation:popIn .3s ease both}.pulse{animation:softPulse 1.8s ease-in-out infinite}.sb-score{animation:scorePop .22s ease}.feed-row{animation:feedIn .22s ease both}.match-result{animation:popIn .32s ease both}.btn-primary,.btn-ghost,.tabs button,.speeds button,.pcard,.slot,.option-card{transition:transform .12s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}.btn-primary:active,.btn-ghost:active{transform:translateY(1px)}.pcard:not(.is-disabled):hover{transform:translateY(-3px)}.pcard.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent);transform:translateY(-3px)}.slot.is-target{cursor:pointer;border-color:var(--accent);animation:targetGlow 1.3s ease-in-out infinite}.slot.is-target:hover{background:var(--panel2)}.slot-edit{align-self:flex-start;background:var(--panel2);border:1px solid var(--line);color:var(--muted);border-radius:5px;width:26px;height:22px;cursor:pointer;font-size:12px}.drop-hint{background:#ff46551f;border:1px solid var(--accent);border-radius:8px;padding:10px 14px;margin-bottom:14px;font-size:14px}.review-strength{text-align:center;color:var(--muted);margin:4px 0 16px;font-size:13px}.review-strength b{color:var(--text);font-size:18px}.review-roster{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.review-player{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:9px 12px}.review-name{font-weight:700}.review-role{font-size:12px}.review-src{font-size:11px;text-align:right}.final-path{margin-bottom:16px}.path-title{font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;text-align:center}.path-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);border-left-width:3px;border-radius:8px;padding:8px 12px;margin-bottom:6px;font-size:13px}.path-row.win{border-left-color:#43c47a}.path-row.loss{border-left-color:#c44}.path-stage{font-weight:700}.path-opp{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.path-score{font-weight:800;font-variant-numeric:tabular-nums}.path-tag{font-weight:800;width:18px;text-align:center}.path-tag.win{color:#43c47a}.path-tag.loss{color:#e06666}.bracket{margin-top:16px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;text-align:left}.br-section{margin-bottom:16px}.br-section h4{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 8px}.br-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.br-group{background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:8px}.br-group.mine{border-color:var(--accent)}.br-group-title{font-size:11px;font-weight:700;color:var(--muted);margin-bottom:6px}.br-grow{display:grid;grid-template-columns:1fr auto 14px;gap:6px;align-items:center;padding:3px 4px;font-size:12px;border-radius:4px}.br-grow.me{background:#ff46551f}.br-grow.me .br-gname{color:var(--accent)}.br-grow.st-out{opacity:.45}.br-grow.st-ok .br-gst{color:#43c47a}.br-grow.st-out .br-gst{color:#c44}.br-gname{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.br-grec{font-variant-numeric:tabular-nums;color:var(--muted)}.br-gst{text-align:center;font-weight:800}.br-cols{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.br-col{min-width:132px;display:flex;flex-direction:column;gap:8px}.br-col-title{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.bm{background:var(--panel2);border:1px solid var(--line);border-radius:6px;overflow:hidden}.bm-grand{border-color:var(--gold)}.bm-pending{border-style:dashed;border-color:var(--line-strong)}.bm-pending .bm-team{opacity:.9}.bm-pending .bm-sc{color:var(--muted)}.bm-tbd{background:transparent;border:1px dashed var(--line);color:var(--muted);font-size:11px;padding:9px;text-align:center}.bm-team{display:flex;justify-content:space-between;gap:6px;padding:5px 8px;font-size:12px}.bm-team+.bm-team{border-top:1px solid var(--line)}.bm-team.win{font-weight:700}.bm-team.win .bm-sc{color:#43c47a}.bm:not(.bm-pending) .bm-team:not(.win){opacity:.55}.bm-team.me .bm-name{color:var(--accent)}.bm-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bm-sc{font-variant-numeric:tabular-nums;font-weight:700}.br-cols{-webkit-overflow-scrolling:touch;scrollbar-width:thin}@media(max-width:640px){.app{padding:12px}.appbar{padding:10px 0 12px;gap:8px}.logo{font-size:30px}.appbar-actions{gap:8px}.support-btn{height:36px;padding:0 12px;font-size:12px;letter-spacing:.5px}.settings-btn{width:36px;height:36px;font-size:16px}.game-tabs button{padding:7px 12px;font-size:12px}.setup h2,.draft-head h2,.camp-config h2,.auto-recap h2{font-size:22px}.formation,.comp,.slots{grid-template-columns:1fr;gap:6px}.form-slot{flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:10px 14px;min-height:0}.form-pos{min-width:26px}.form-slot .role-badge{min-width:64px}.form-arrows{margin-left:auto}.comp-card{flex-direction:row;align-items:center;text-align:left;gap:10px;padding:10px 12px;min-height:0}.comp-card.is-empty{justify-content:flex-start}.comp-card .role-badge{min-width:64px;margin-bottom:0}.comp-filled{flex-direction:row;align-items:center;gap:10px;margin-top:0;flex:1;min-width:0}.comp-ovr{margin-bottom:0}.comp-name{flex:1;min-width:0;font-size:14px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comp-src{text-align:right;white-space:nowrap}.comp-empty{margin-top:0}.option-grid{grid-template-columns:1fr}.roll-result{padding:14px 12px}.roll-team-name{font-size:20px}.roll-actions button{flex:1;min-width:0}.camp-start{flex-direction:column}.camp-start .btn-primary,.camp-start .btn-ghost{width:100%}.btn-primary.big,.btn-ghost.big{padding:14px 20px;font-size:16px}.watch-top{flex-wrap:wrap;gap:8px}.speeds{flex-wrap:wrap}.scoreboard{padding:14px 10px;gap:8px}.sb-name{font-size:15px}.sb-score{font-size:40px}.feed-row{grid-template-columns:64px 1fr 46px;gap:6px;font-size:12px;padding:6px 10px}.report-head{padding:14px 12px}.report-head .mr-title{font-size:28px}.report-maps{gap:12px}.final-wrap{max-width:100%}.final-card{padding:18px 14px}.final-actions{flex-direction:column}.final-actions .btn-primary,.final-actions .btn-ghost{width:100%}.final-place{font-size:24px}.path-row{gap:8px;font-size:12px}.review-player,.final-player{gap:8px;padding:8px 10px}.bracket{padding:12px 10px;border-radius:10px}.br-groups{grid-template-columns:repeat(2,1fr)}.br-col{min-width:122px}.player{grid-template-columns:40px 1fr;gap:6px 10px}.player .stats{grid-column:1 / -1}.search-results{grid-template-columns:1fr}}@media(max-width:380px){.logo{font-size:26px}.support-btn{padding:0 10px}.br-groups{grid-template-columns:1fr}.feed-row{grid-template-columns:58px 1fr 42px}}
