:root{--bg: #0e1117;--panel: #171c26;--panel-2: #1f2632;--line: #2a3340;--text: #e7edf5;--muted: #8a97a8;--accent: #ff7a00;--win: #2ecc71;--loss: #e74c3c;--tie: #f1c40f}*{box-sizing:border-box}body{margin:0;-webkit-text-size-adjust:100%;text-size-adjust:100%;background:radial-gradient(1200px 600px at 50% -200px,#1a2230,var(--bg));color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.app{max-width:920px;margin:0 auto;padding:24px 20px 64px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}header h1{font-size:1.6rem;margin:0;letter-spacing:.5px}.brand{display:flex;align-items:center;gap:10px;margin:0;font-weight:900;line-height:1;-webkit-user-select:none;user-select:none;cursor:pointer}.brand:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:8px}.brand-ball{font-size:1.7rem;filter:drop-shadow(0 2px 3px rgba(0,0,0,.45));animation:brandBounce 2.4s ease-in-out infinite}.brand-5v5{font-size:2.1rem;letter-spacing:-1px;background:linear-gradient(180deg,#ffd27a 0%,var(--accent) 55%,#d35400 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 8px rgba(255,122,0,.25)}.brand-5v5 .brand-v{font-size:1.3rem;color:var(--text);-webkit-text-fill-color:var(--text);margin:0 1px;vertical-align:middle;opacity:.85}.brand-duel{font-size:1.7rem;letter-spacing:4px;color:var(--text);text-shadow:0 2px 6px rgba(0,0,0,.5)}@keyframes brandBounce{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(-12deg)}}@media (prefers-reduced-motion: reduce){.brand-ball{animation:none}}@media (max-width: 560px){.brand-5v5{font-size:1.7rem}.brand-duel{font-size:1.35rem;letter-spacing:3px}.brand-ball{font-size:1.4rem}}.record{display:flex;flex-direction:column;align-items:flex-end;font-size:.95rem}.record .who{color:var(--muted);font-size:.8rem}.record .w{color:var(--win)}.record .l{color:var(--loss)}.record .t{color:var(--tie)}.hint{color:var(--muted);font-size:.9rem;margin-top:0}.error{background:#e74c3c26;border:1px solid var(--loss);color:#ffb3aa;padding:10px 14px;border-radius:8px;margin-bottom:16px}.setup{display:flex;flex-direction:column;align-items:center;text-align:center}.setup .submit{align-self:center;min-width:220px}.setup form{display:flex;gap:10px;margin-top:16px}.setup input{flex:1;background:var(--panel);border:1px solid var(--line);color:var(--text);padding:12px 14px;border-radius:8px;font-size:1rem}.submit{background:var(--accent);color:#1a1206;font-weight:700;border:none;padding:12px 20px;border-radius:8px;cursor:pointer;font-size:1rem;transition:transform .05s ease,opacity .2s ease}.submit:hover:not(:disabled){transform:translateY(-1px)}.submit:disabled{opacity:.45;cursor:not-allowed}.prompts{display:grid;gap:16px;margin:18px 0 24px}.prompt{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px}.prompt-head{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.prompt-head .decade{background:var(--accent);color:#1a1206;font-weight:700;padding:2px 10px;border-radius:999px;font-size:.85rem}.prompt-head .team{font-weight:600;font-size:1.05rem}.candidates{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.candidate{text-align:left;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:10px;color:var(--text);cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:border-color .15s ease,background .15s ease}.candidate:hover:not(.disabled){border-color:var(--accent)}.candidate.selected{border-color:var(--accent);background:#ff7a0024}.candidate.disabled{opacity:.35;cursor:not-allowed}.pos-badge{display:inline-block;background:var(--line);color:var(--text);font-size:.7rem;font-weight:700;padding:1px 7px;border-radius:6px;width:fit-content}.cand-name{font-weight:600}.statline{color:var(--muted);font-size:.78rem}.banner{border-radius:14px;padding:22px;text-align:center;margin-bottom:20px;display:flex;flex-direction:column;gap:6px}.banner.win{background:linear-gradient(135deg,#2ecc7140,#2ecc7114);border:1px solid var(--win)}.banner.loss{background:linear-gradient(135deg,#e74c3c40,#e74c3c14);border:1px solid var(--loss)}.banner.tie{background:linear-gradient(135deg,#f1c40f40,#f1c40f14);border:1px solid var(--tie)}.banner-text{font-size:2rem;font-weight:800;letter-spacing:2px}.final-score{font-size:1.5rem;font-weight:700}.vs-team{color:var(--muted)}.matchups{margin-bottom:20px}.matchup{padding:8px 10px;border-radius:8px;border:1px solid var(--line);margin-bottom:6px;font-size:.9rem}.matchup-row{display:grid;grid-template-columns:40px 1fr 32px 1fr;align-items:center;gap:8px}.matchup .m-pos{font-weight:700;color:var(--accent)}.matchup .m-vs{text-align:center;color:var(--muted)}.matchup .m-away{text-align:right}.matchup.you{border-left:4px solid var(--win)}.matchup.opp{border-left:4px solid var(--loss)}.matchup.even{border-left:4px solid var(--tie)}.matchup-note{margin-top:5px;font-size:.76rem;color:var(--tie)}.lineups{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.lineup{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px}.lineup.highlight{border-color:var(--accent)}.lineup h3{margin:0 0 6px}.lineup-total{font-size:1.8rem;font-weight:800}.lineup-total .sub{display:block;font-size:.72rem;font-weight:400;color:var(--muted)}.scored-players{list-style:none;padding:0;margin:6px 0 0}.scored-players li{padding:8px 0;border-top:1px solid var(--line)}.sp-head{display:flex;align-items:center;gap:8px}.sp-head .sp-name{font-weight:600}.sp-head .sp-ht{margin-left:auto}.sp-head .sp-rating{font-weight:800;font-size:.9rem}.sp-base{text-align:right;font-size:.7rem;color:var(--muted);margin-top:1px}.sp-stats{font-size:.8rem;color:var(--muted);margin-top:3px}.sp-stats b{color:var(--text)}.sp-prov{color:var(--muted)}.fit-notes{list-style:none;padding:0;margin:10px 0 0;color:var(--muted);font-size:.78rem}.fit-notes li:before{content:"• ";color:var(--accent)}@media (max-width: 640px){.lineups{grid-template-columns:1fr}.matchup-row{grid-template-columns:26px 1fr;gap:2px 8px}.matchup .m-vs{display:none}.matchup .m-pos{grid-row:1 / span 2;align-self:center}.matchup .m-home,.matchup .m-away{grid-column:2;min-width:0;overflow-wrap:anywhere}.matchup .m-away{text-align:left;color:var(--muted);font-size:.85rem}.matchup .m-away:before{content:"vs ";color:var(--muted);font-weight:700}}.lineup-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:22px}.slot-chip{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 8px;text-align:center;display:flex;flex-direction:column;gap:4px;min-height:56px;justify-content:center}.slot-chip .slot-label{font-weight:800;color:var(--muted);font-size:.8rem}.slot-chip .slot-name{font-size:.82rem}.slot-chip.done{border-color:var(--win)}.slot-chip.done .slot-name{color:var(--text);font-weight:600}.slot-chip.current{border-color:var(--accent);background:#ff7a0024}.slot-chip.current .slot-label,.slot-chip.current .slot-name{color:var(--accent)}.step-head{margin-bottom:14px}.step-count{display:inline-block;background:var(--panel-2);border:1px solid var(--line);color:var(--muted);padding:2px 10px;border-radius:999px;font-size:.8rem;margin-bottom:6px}.step-head h2{margin:4px 0 8px}.slot-hi{color:var(--accent);font-weight:800}.pos-badges{display:inline-flex;gap:4px}.pos-badge.match{background:var(--accent);color:#1a1206}.cand-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.locked{font-size:.68rem;color:var(--loss);font-weight:600}.cand-stats{font-size:.82rem;color:var(--text)}.cand-stats b{color:var(--text)}.cand-stats.sub{color:var(--muted);font-size:.72rem}.candidate.ineligible{opacity:.5;filter:grayscale(.85);cursor:not-allowed}.candidate.ineligible:hover{border-color:var(--line)}.slot-chip.open{border-style:dashed;border-color:var(--accent)}.slot-chip.open .slot-name{color:var(--accent)}.slot-pick{display:flex;align-items:center;gap:6px;margin-top:8px;flex-wrap:wrap}.slot-pick-label{font-size:.7rem;color:var(--muted)}.slot-btn{background:var(--accent);color:#1a1206;border:none;font-weight:800;font-size:.78rem;padding:4px 10px;border-radius:6px;cursor:pointer}.slot-btn:hover:not(:disabled){transform:translateY(-1px)}.slot-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes slotFlash{0%{box-shadow:0 0 #2ecc7199}to{box-shadow:0 0 0 14px #2ecc7100}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.candidates .candidate{animation:fadeInUp .35s ease both}.step-head{animation:fadeIn .3s ease both}.slot-chip.flash{animation:slotFlash .7s ease-out 1}.banner{animation:popIn .45s cubic-bezier(.34,1.56,.64,1) both}.matchups .matchup{animation:slideInLeft .3s ease both}.lineup{animation:fadeInUp .4s ease both}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#080b10b8;display:flex;align-items:center;justify-content:center;z-index:50;animation:fadeIn .15s ease both}.modal{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px;width:min(380px,90vw);text-align:center;animation:popIn .25s ease both}.modal .m-player{font-size:1.3rem;font-weight:800;margin:4px 0}.modal .m-assign{color:var(--muted);margin-bottom:4px}.modal .m-slot{display:inline-block;background:var(--accent);color:#1a1206;font-weight:800;padding:2px 12px;border-radius:999px;font-size:1rem}.modal .m-stats{color:var(--muted);font-size:.85rem;margin:10px 0 18px}.modal-actions{display:flex;gap:10px}.modal-actions button{flex:1;padding:11px;border-radius:8px;font-weight:700;cursor:pointer;border:none}.btn-confirm{background:var(--accent);color:#1a1206}.btn-cancel{background:var(--panel-2);color:var(--text);border:1px solid var(--line)!important}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion: reduce){.candidates .candidate,.step-head,.slot-chip.flash,.banner,.matchups .matchup,.lineup,.modal-backdrop,.modal{animation:none!important}}.candidate.selectable{cursor:pointer}.candidate.selectable:hover{border-color:var(--accent);background:#ff7a001a}.candidate.ineligible{cursor:not-allowed}.cand-cta{margin-top:8px;font-size:.74rem;font-weight:700;color:var(--accent)}.modal-slots{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:12px 0 16px}.slot-choice{min-width:56px;font-size:1.05rem;padding:12px 14px!important}.cand-height{font-size:.72rem;color:var(--muted);font-weight:700;margin-left:auto}.sp-ht{font-size:.78rem;color:var(--muted);font-weight:700}.mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.mode-btn{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:12px 14px;cursor:pointer;font-weight:700;transition:border-color .15s ease,background .15s ease}.mode-btn:hover{border-color:var(--accent)}.mode-btn.active{border-color:var(--accent);background:#ff7a0024}.mode-btn .mode-sub{font-size:.74rem;color:var(--muted);font-weight:400}@media (max-width: 480px){.mode-toggle{grid-template-columns:1fr}}.timer{position:relative;height:22px;background:var(--panel-2);border:1px solid var(--line);border-radius:999px;overflow:hidden;margin-bottom:14px}.timer-bar{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,var(--accent),#ffb060);transition:width .25s linear}.timer-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800;color:var(--text)}.opp-progress{color:var(--muted)}.waiting-banner{margin-top:14px;text-align:center;color:var(--win);font-weight:700}.live-banner{background:#e74c3c24;border:1px solid var(--loss);border-radius:8px;padding:8px 12px;margin-bottom:12px;font-size:.95rem}.waiting-room{text-align:center;padding:30px 10px}.waiting-room .submit{margin-top:14px}.spinner{width:44px;height:44px;margin:0 auto 16px;border:4px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation:none}}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);background:var(--panel);border:1px solid var(--accent);color:var(--text);padding:12px 18px;border-radius:10px;font-weight:700;box-shadow:0 8px 24px #00000073;z-index:60;animation:toastIn .25s ease both}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.header-right{display:flex;align-items:center;gap:14px}.lb-toggle{background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:7px 12px;font-weight:700;cursor:pointer}.lb-toggle:hover{border-color:var(--accent)}.rating-line{display:flex;align-items:center;gap:6px;justify-content:flex-end}.rating-num{color:var(--accent)}.tier-badge{font-size:.7rem;font-weight:800;padding:1px 8px;border-radius:999px;border:1px solid var(--line);letter-spacing:.3px}.tier-badge.amateur{background:#2a3340;color:#c7d2dd}.tier-badge.pro{background:#1f4a3a;color:#6ef0b0;border-color:#2ecc71}.tier-badge.allstar{background:#1f3a5a;color:#7cc0ff;border-color:#3a86ff}.tier-badge.veteran{background:#4a2f5a;color:#d29bff;border-color:#a35bff}.tier-badge.halloffame{background:#5a3a1f;color:#ffcf8a;border-color:var(--accent)}.tier-badge.goat{background:linear-gradient(90deg,#b8860b,gold);color:#2a1d00;border-color:gold}.leaderboard{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px}.lb-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.lb-head h2{margin:0}.lb-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.lb-table{width:100%;border-collapse:collapse}.lb-table th,.lb-table td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);white-space:nowrap}.lb-table th{color:var(--muted);font-size:.78rem;font-weight:600}.lb-table .rank{color:var(--muted);width:28px}.lb-table .lb-name{font-weight:600}.lb-table .lb-rating{font-weight:800;color:var(--accent)}.lb-table .lb-wlt{color:var(--muted)}.lb-table tr.me{background:#ff7a001a}@media (max-width: 560px){.app{padding:16px 12px 56px}header{flex-direction:column;align-items:stretch;gap:12px}.header-right{width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px}.identity-card{order:-1;margin-right:auto}.lb-toggle{padding:8px 11px;font-size:.85rem;min-height:40px}}.rating-change{font-size:.95rem;margin-top:4px}.rating-change .up{color:var(--win)}.rating-change .down{color:var(--loss)}.rating-change.unranked{color:var(--muted)}.opp-rec{color:var(--muted);font-size:.85rem}.rating-now{color:var(--accent)}.promo-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080b10c7;display:flex;align-items:center;justify-content:center;z-index:80;overflow:hidden;animation:fadeIn .2s ease both}.promo-card{position:relative;z-index:2;background:var(--panel);border:1px solid var(--accent);border-radius:16px;padding:28px 32px;text-align:center;animation:popIn .45s cubic-bezier(.34,1.56,.64,1) both}.promo-sub{color:var(--muted);font-weight:800;letter-spacing:3px;font-size:.8rem}.promo-tier{display:inline-block;font-size:1.4rem!important;padding:6px 18px!important;margin:12px 0}.promo-msg{margin-bottom:16px}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.confetti span{position:absolute;top:-12px;width:9px;height:14px;border-radius:2px;opacity:.9;animation-name:confettiFall;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes confettiFall{0%{transform:translateY(-10vh) rotate(0)}to{transform:translateY(110vh) rotate(720deg)}}@media (prefers-reduced-motion: reduce){.confetti{display:none}.promo-card{animation:none}}.match-intro{display:flex;align-items:center;justify-content:center;padding:44px 0;min-height:240px;overflow:hidden}.fighter{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 22px;text-align:center;min-width:150px}.fighter.left{animation:slideFromLeft .7s cubic-bezier(.2,.8,.3,1.4) both;border-color:var(--win)}.fighter.right{animation:slideFromRight .7s cubic-bezier(.2,.8,.3,1.4) both;border-color:var(--loss)}.fighter-name{font-weight:800;font-size:1.1rem;margin-bottom:6px}.fighter-rating{font-size:1.6rem;font-weight:900;color:var(--accent);margin-top:6px}.fighter-wlt{color:var(--muted);font-size:.8rem}.vs-clash{font-size:2.6rem;font-weight:900;color:var(--accent);margin:0 -10px;z-index:2;text-shadow:0 0 18px rgba(255,122,0,.6);animation:clashPop .5s .55s both}@keyframes slideFromLeft{0%{opacity:0;transform:translate(-120vw)}to{opacity:1;transform:translate(0)}}@keyframes slideFromRight{0%{opacity:0;transform:translate(120vw)}to{opacity:1;transform:translate(0)}}@keyframes clashPop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.6)}to{opacity:1;transform:scale(1)}}.reveal-title{text-align:center;margin:6px 0 14px}.reveal-countdown{text-align:center;margin-top:18px;color:var(--muted);font-size:1.1rem}.count-num{display:inline-block;font-size:2rem;color:var(--accent);animation:countPulse 1s ease}@keyframes countPulse{0%{transform:scale(1.7);opacity:.3}to{transform:scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.fighter.left,.fighter.right,.vs-clash,.count-num{animation:none}}.size-bonus{color:var(--accent);font-weight:800;font-size:.78rem}.mscore.up{color:var(--win);font-weight:700}.mscore.down{color:var(--loss);font-weight:700}.mdelta{font-size:.74rem;font-weight:800}.auth-modal{width:min(360px,92vw);text-align:left}.auth-tabs{display:flex;gap:8px;margin-bottom:12px}.auth-tabs button{flex:1;background:var(--panel-2);border:1px solid var(--line);color:var(--muted);border-radius:8px;padding:8px;font-weight:700;cursor:pointer}.auth-tabs button.active{color:var(--text);border-color:var(--accent);background:#ff7a001f}.auth-form{display:flex;flex-direction:column;gap:10px}.auth-form input{background:var(--panel-2);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:11px 12px;font-size:1rem}.link-btn{background:none;border:none;color:var(--accent);font-weight:700;cursor:pointer;padding:0;text-decoration:underline}.guest-name{width:100%;background:var(--panel);border:1px solid var(--line);color:var(--text);padding:11px 14px;border-radius:8px;font-size:1rem;margin-bottom:14px}.auth-hint div{margin-bottom:3px}.status-badge{font-size:.68rem;font-weight:800;padding:1px 7px;border-radius:999px;white-space:nowrap}.status-badge.hot{background:#ff7a0033;color:#ff9a3c;border:1px solid var(--accent)}.status-badge.slump{background:#3a86ff2e;color:#7cc0ff;border:1px solid #3a86ff}.ot-tag{color:var(--tie);font-weight:800}.unlock-avatars{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin:12px 0}.unlock-item{display:flex;flex-direction:column;align-items:center;gap:6px}.unlock-label{font-weight:800;font-size:.85rem}.streak-bonus{color:var(--accent);font-size:.9rem}.streak{margin-left:4px;white-space:nowrap}.streak-fire{font-size:.8em;position:relative;top:-2px}.streak-num{font-weight:800;margin-left:1px;background:linear-gradient(180deg,#ffd34d,#ff7a1a 55%,#e8473b);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.best-stats{margin:20px auto 0;max-width:360px;text-align:left;background:#ffffff08;border:1px solid var(--line);border-radius:12px;padding:14px 16px}.best-streak{font-weight:700;margin-bottom:10px}.best-team-head{font-weight:800;margin-bottom:6px}.best-team-head span{color:var(--muted);font-weight:400;font-size:.82rem}.best-team ul{list-style:none;margin:0;padding:0}.best-team li{display:flex;align-items:center;gap:8px;font-size:.9rem;padding:2px 0}.best-team .bt-slot{display:inline-block;min-width:28px;color:var(--accent);font-weight:700}.best-team li b{margin-left:auto;color:var(--text)}.status-chip{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:.74rem;font-weight:800;vertical-align:middle}.status-chip.hot{background:#e8473b2e;color:#ff8a5c;border:1px solid #e8473b}.status-chip.slump{background:#4fc3ff29;color:#8fd6ff;border:1px solid #4fc3ff}.confirm-modal{width:min(380px,92vw)}.confirm-title{margin:0 0 8px}.confirm-msg{color:var(--muted);margin:0 0 18px;line-height:1.45}.confirm-actions{display:flex;gap:10px;justify-content:center}.confirm-actions .btn-cancel,.confirm-actions .submit{min-width:110px}.submit.danger{background:var(--loss);border-color:var(--loss);color:#fff}.submit.danger:hover{filter:brightness(1.08)}.avatar{display:block;border-radius:50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.avatar.locked{filter:grayscale(.7) brightness(.85)}.identity-card{display:flex;align-items:center;gap:10px;background:#ffffff0a;border:1px solid var(--line);border-radius:999px;padding:4px 12px 4px 4px;cursor:pointer;color:var(--text);transition:background .15s ease,border-color .15s ease,transform .1s ease}.identity-card:hover{background:#ffffff14;border-color:var(--accent)}.identity-card:active{transform:scale(.98)}.identity-card .id-text{display:flex;flex-direction:column;align-items:flex-start;gap:4px;line-height:1.2}.identity-card .id-name{font-weight:700;font-size:.92rem}.identity-card .id-stats{display:flex;align-items:center;gap:8px;font-size:.82rem}.identity-card .rating-num{color:var(--accent)}.identity-card .wl{color:var(--muted)}.identity-card .wl .w{color:var(--win)}.identity-card .wl .l{color:var(--loss)}.lb-player{display:inline-flex;align-items:center;gap:8px}.avatar-picker{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px;width:min(540px,94vw);max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:popIn .22s ease both}.ap-head{display:flex;align-items:center;justify-content:space-between}.ap-head h3{margin:0}.ap-sub{color:var(--muted);font-size:.9rem;margin:6px 0 16px}.ap-section{font-weight:800;font-size:.95rem;margin:16px 0 10px}.ap-section:first-of-type{margin-top:10px}.ap-section span{color:var(--muted);font-weight:400;font-size:.82rem}.ap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ap-cell{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--text);background:#ffffff08;border:1px solid var(--line);border-radius:12px;padding:14px 8px;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .1s ease}.ap-cell:hover:not(:disabled){border-color:var(--accent);background:#ffffff0f;transform:translateY(-2px)}.ap-cell.current{border-color:var(--accent);box-shadow:0 0 0 2px #f7a50059 inset}.ap-cell.locked{cursor:not-allowed;opacity:.85}.ap-tier{font-weight:700;font-size:.88rem}.ap-meta{color:var(--muted);font-size:.76rem}.ap-cell.current .ap-meta{color:var(--accent)}@media (max-width: 560px){.ap-grid{grid-template-columns:repeat(2,1fr)}}.tier-pill{display:inline-flex;align-items:center;gap:3px;font-size:.72rem;line-height:1;font-weight:800;padding:2px 7px;border-radius:6px;border:1px solid transparent;position:relative;overflow:hidden;isolation:isolate;white-space:nowrap;vertical-align:middle}.tier-pill.sm{font-size:.62rem;padding:1px 5px;gap:2px}.tier-pill .tier-letter{font-weight:900;letter-spacing:.3px;position:relative;z-index:2}.tier-pill .tier-cost{font-weight:800;opacity:.95;position:relative;z-index:2}.tier-D,.tier-E{background:var(--line);color:var(--text)}.tier-C{background:linear-gradient(135deg,#7a4a22,#b5793f);color:#fff3e6;border-color:#caa06b}.tier-B{background:linear-gradient(135deg,#8a929c,#cfd6de);color:#1b1f26;border-color:#eef3f9}.tier-A{background:linear-gradient(135deg,#6a2fb0,#a766e6 55%,#c79bff);color:#fff;border-color:#d9b6ff;box-shadow:0 0 6px #a766e680}.tier-pill.tier-A:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;z-index:1;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.45) 50%,transparent 60%);transform:translate(-120%);animation:tierShine 2.8s ease-in-out infinite}@keyframes tierShine{0%{transform:translate(-120%)}60%,to{transform:translate(120%)}}.tier-S{background:linear-gradient(135deg,#57c8f5,#cdeeff 45%,#8ad4f5);color:#042430;border-color:#e6fbff;box-shadow:0 0 7px #78dcff99}.tier-pill.tier-S:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;z-index:1;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.5) 50%,transparent 60%);transform:translate(-120%);animation:tierShine 2.6s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.tier-pill.tier-A:after,.tier-pill.tier-S:after{animation:none;display:none}}.candidate.tier-card.tier-S{box-shadow:inset 3px 0 #8fe6ff}.candidate.tier-card.tier-A{box-shadow:inset 3px 0 #b07bf0}.candidate.tier-card.tier-B{box-shadow:inset 3px 0 #c9d2db}.candidate.tier-card.tier-C{box-shadow:inset 3px 0 #c89058}.candidate.tier-card.tier-D,.candidate.tier-card.tier-E{box-shadow:inset 3px 0 #3a4350}.candidate.overbudget{opacity:.5}.candidate.overbudget .locked{color:#ffc04d}.candidate.tier-card.tier-S.selectable:hover{border-color:#8fe6ff;background:#78dcff1f}.candidate.tier-card.tier-A.selectable:hover{border-color:#c79bff;background:#a766e621}.candidate.tier-card.tier-B.selectable:hover{border-color:#d7dee6;background:#b4c0cc1f}.candidate.tier-card.tier-C.selectable:hover{border-color:#caa06b;background:#b5793f24}.candidate.tier-card.selectable:hover{color:#eaf2f9}.candidate.tier-card.selectable:hover .cand-name{color:#fff}.budget-meter{margin:4px 0 10px}.budget-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.82rem;margin-bottom:4px}.budget-cap{color:var(--muted);font-weight:600}.budget-left b{font-size:1rem;color:var(--win)}.budget-left.tight b{color:var(--tie)}.budget-left.low b{color:var(--loss)}.budget-of{color:var(--muted);font-size:.75rem}.budget-track{height:7px;background:var(--line);border-radius:5px;overflow:hidden}.budget-fill{height:100%;border-radius:5px;background:linear-gradient(90deg,#2ecc71,#7ed957);transition:width .4s ease}.budget-fill.tight{background:linear-gradient(90deg,#f1c40f,#ffb14d)}.budget-fill.low{background:linear-gradient(90deg,#e67e22,#e74c3c)}.cand-peak{font-size:.7rem;color:#ffd27a;margin-top:2px}.cand-peak b{color:#ffe3a8}.m-peak{font-size:.82rem;color:#ffd27a;margin:2px 0 4px}.sp-peak{font-size:.68rem;color:var(--muted);margin-top:1px}
