@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{font-family:Space Grotesk,Inter,ui-sans-serif,system-ui,sans-serif;color:#f4f3fb;background:#1b1b33;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at top,#333363,#1b1b33 55%)}button,input{font:inherit}button{border:0;border-radius:10px;padding:.8rem 1.1rem;color:#1b1932;background:#b9a8ff;font-weight:800;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}input{width:100%;padding:.8rem;border-radius:8px;border:1px solid #56568c;color:#f4f3fb;background:#22223f;margin-top:.35rem}.landing,.shell{max-width:1180px;min-height:100vh;margin:auto;padding:2rem}.landing{display:grid;place-items:center;max-width:620px}.card{background:#22223feb;border:1px solid #474775;border-radius:18px;padding:1.5rem;box-shadow:0 16px 50px #0c0b2166}.panel{background:linear-gradient(145deg,#2b2b50f5,#1c1c34fa);border:1px solid #474775;border-radius:14px;padding:1.25rem}.hero{margin-bottom:1.5rem;text-align:center}.hero>span{color:#b9a8ff;font:600 .75rem DM Mono,monospace;letter-spacing:.18em}.hero h1{max-width:600px;margin:.7rem auto .5rem;font-size:clamp(2.5rem,7vw,4.5rem);letter-spacing:-.07em}.hero p{margin:0}.landing .join{width:min(100%,470px);display:block;margin:0 auto}.landing .join>button{width:100%}.landing .join .join{display:grid;grid-template-columns:1fr auto;align-items:end;gap:.6rem;margin-top:.8rem}.landing .join .join label{margin:0}.or{margin:.7rem 0;color:#aaaac4;text-align:center;font:.7rem DM Mono,monospace;text-transform:uppercase}.secondary{color:#d7d5e8;background:#22223f;border:1px solid #474775}.landing .card{width:100%}.landing-leaderboard{width:100%;margin-top:1rem}.landing-leaderboard h2{margin:.35rem 0 1rem}.landing-leaderboard ol{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.landing-leaderboard li{display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:.7rem;align-items:center;padding:.65rem .75rem;border-radius:10px;background:#c3c2da14}.landing-leaderboard li>b{color:#b9a8ff;font-family:DM Mono,monospace}.landing-leaderboard li span{min-width:0}.landing-leaderboard li small{display:block;margin-top:.15rem;color:#aaaac4;font-size:.75rem}.landing-leaderboard li strong{white-space:nowrap}.muted{color:#aaaac4}h1{font-size:clamp(2rem,6vw,4rem);margin:.2rem 0 1rem}h2{margin-top:0}p{color:#c3c2da;line-height:1.5}label{display:block;margin:1.4rem 0;color:#d7d5e8}.eyebrow{color:#b9a8ff;font-size:.75rem;font-weight:900;letter-spacing:.16em}header{display:flex;gap:1rem;align-items:center;margin-bottom:2rem;color:#c3c2da}header strong{color:#b9a8ff;font-size:1.2rem}header span:last-child{margin-left:auto}.shell>header button{margin-left:auto}code{color:#fff}.join{display:flex;gap:.5rem;margin-top:.8rem}.join input{margin:0}.error{color:#ff9c9c}ul{padding-left:1.2rem}li{padding:.4rem}li small{color:#b9a8ff;margin-left:.4rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:1rem}.choices{display:grid;gap:.7rem;margin:1.5rem 0}.choices button{display:flex;justify-content:space-between}.choices small{opacity:.7}.result{border-left:3px solid #c3c2da;border-radius:0 10px 10px 0;background:#c3c2da14;padding:.8rem 1rem;margin:1.5rem 0}.result-great,.result-good{border-color:#84d66a;background:#56a34829}.result-bad{border-color:#ff8c80;background:#b8463c29}.event.outcome-great,.event.outcome-good{border-color:#84d66a}.event.outcome-bad{border-color:#ff8c80}.changes{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.changes b{padding:.35rem .55rem;border-radius:6px;background:#c3c2da21;font-size:.78rem}.changes .up{color:#a8ef8b;background:#56a34840}.changes .down{color:#ffaaa1;background:#b8463c40}.changes .neutral{color:#d5d4e2}.rolling{overflow:hidden}.rolling>small{display:block;margin-top:.8rem;color:#c3c2da;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}.outcome-roller.reel{padding:.75rem 0 .2rem}.reel-viewport{position:relative;overflow:hidden;border:1px solid rgba(185,168,255,.35);border-radius:10px;background:#17172b}.reel-track{display:flex;width:max-content;padding-left:calc(50% - 58px);transform:translate(0)}.reel-track.spinning{animation:reel-spin 1.65s cubic-bezier(.15,.8,.18,1) forwards}.reel-track b{display:flex;flex:0 0 116px;align-items:center;justify-content:center;min-height:52px;padding:.45rem;color:#d5d4e2;font-size:.67rem;letter-spacing:.03em;text-align:center}.reel-track b.great{color:#b9f5a0;background:#56a34829}.reel-track b.good{color:#a8ef8b;background:#56a3481a}.reel-track b.neutral{background:#c3c2da14}.reel-track b.bad{color:#ffaaa1;background:#b8463c26}.reel-pin{position:absolute;z-index:1;top:-2px;left:50%;width:2px;height:100%;background:#b9a8ff;box-shadow:0 0 10px #b9a8ff;transform:translate(-50%)}.reel-pin:before{position:absolute;top:0;left:50%;width:0;height:0;border:7px solid transparent;border-top-color:#b9a8ff;content:"";transform:translate(-50%)}@keyframes reel-spin{to{transform:translate(-2552px)}}.market-list{display:grid;gap:.7rem;margin:1.4rem 0}.offer{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.9rem;border:1px solid #474775;border-radius:10px}.offer div{display:grid;gap:.2rem}.offer span{color:#c3c2da;font-size:.85rem}.tabs{display:flex;gap:.4rem;overflow-x:auto;margin-bottom:1rem}.hub-banner{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;margin-bottom:1rem;padding:1.4rem 1.6rem;border:1px solid #56568c;border-radius:14px;background:linear-gradient(110deg,#1d1d38,#29294d 62%,#1d1d38)}.hub-banner h1{margin:.2rem 0 .4rem;font-size:clamp(1.8rem,4vw,2.8rem)}.hub-banner small,.hub-card small,.hub-advance small{color:#c7bbff;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.hub-banner p{margin:0}.hub-metrics{display:grid;grid-template-columns:repeat(5,minmax(70px,1fr));gap:.5rem}.hub-metrics b{display:grid;gap:.25rem;min-width:76px;padding:.65rem;border-radius:9px;background:#1c1c34;color:#f4f3fb}.hub-metrics b small{letter-spacing:.04em}.hub-nav,.competition-tabs{display:flex;gap:.35rem;overflow-x:auto;margin-bottom:1rem;padding:.35rem;border:1px solid #474775;border-radius:11px;background:#1c1c34}.hub-nav button,.competition-tabs button{flex:1;min-width:max-content;padding:.7rem 1rem;border:0;border-radius:8px;color:#c3c2da;background:transparent}.competition-subtabs{display:flex;gap:.35rem;margin:0 0 1rem;border-bottom:1px solid #474775}.competition-subtabs button{flex:0 0 auto;min-width:max-content;padding:.55rem .85rem;border:0;border-radius:8px 8px 0 0;color:#c3c2da;background:transparent}.hub-nav button.selected,.competition-tabs button.selected,.competition-subtabs button.selected{color:#1b1932;background:#b9a8ff}.hub-content{min-width:0}.hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.hub-card{display:grid;align-content:start;gap:.5rem;min-height:145px;padding:1rem;border:1px solid #474775;border-radius:14px;color:#f4f3fb;text-align:left;background-position:center;background-size:cover;box-shadow:inset 0 0 0 1px #8c9ce614,0 12px 28px #0a0c2838;transition:border-color .16s ease,transform .16s ease,filter .16s ease}.hub-card:hover{border-color:#9b9ae0;filter:saturate(1.08);transform:translateY(-2px)}.hub-card strong{font-size:1.05rem}.hub-card span{color:#c3c2da;font-size:.85rem}.hub-card b{margin-top:auto;color:#b9a8ff;font-size:.75rem}.season-champions{display:grid;gap:1rem;margin-bottom:1rem;background:linear-gradient(115deg,#343361,#20203d)}.season-champions-heading h2{margin:.15rem 0 .35rem}.season-champions-heading p:last-child{margin:0;color:#c3c2da}.season-champion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.season-champion{display:grid;gap:.3rem;min-width:0;padding:.8rem;border:1px solid #56568c;border-radius:9px;background:#1c1c34b8}.season-champion small{overflow:hidden;color:#c7bbff;font-size:.68rem;letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.season-champion strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.season-champions-action{display:flex;justify-content:flex-end;align-items:center;min-height:2.2rem}.season-champions-action p{margin:0;color:#c3c2da}.hub-decision{display:flex;grid-column:span 2;grid-row:span 2;min-height:380px;overflow:hidden;border:1px solid #56568c;border-radius:14px;background-position:center;background-size:cover;box-shadow:0 14px 34px #0a0c283d}.hub-decision>.event{width:100%;margin:0;border:0;border-radius:0;background:transparent}.season-ended-card{background:linear-gradient(135deg,#232347,#303064)}.season-ended-card .event{padding:1.4rem}.hub-detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:1rem;align-items:start}.market-page{display:grid;gap:1rem}.market-profile .profile-layout{grid-template-columns:minmax(0,1fr)}.offer-actions,.negotiation-actions{display:grid;gap:.45rem;min-width:8rem}.offer-cancelled{opacity:.7}.offer-cancelled span:last-child{color:#ff9bb0}.negotiation-panel{min-height:20rem}.negotiation-empty{display:flex;flex-direction:column;justify-content:center}.negotiation-message{min-height:3.2rem;color:#d8d4ef}.negotiation-details{display:grid;gap:.7rem;margin:1rem 0}.negotiation-details span{display:flex;justify-content:space-between;gap:1rem;color:#c3c2da}.negotiation-details strong{color:#f4f3fb}.negotiation-input{display:grid;gap:.4rem;margin-bottom:.8rem;color:#c3c2da}.negotiation-input input{width:100%;box-sizing:border-box;padding:.7rem;border:1px solid #474775;border-radius:8px;color:#f4f3fb;background:#1c1c34;font:inherit}.negotiation-input>span:first-child{display:flex;justify-content:space-between;gap:1rem}.negotiation-input>span:first-child strong{color:#f4f3fb}.negotiation-input .negotiation-range{width:100%;padding:0;accent-color:#b9a5ff;border:0;background:transparent}.negotiation-range-labels{display:flex;justify-content:space-between;gap:1rem;font-size:.78rem;color:#9694b7}.profile-compact{display:block}.profile-compact .profile-panel{height:100%}.career-layout{display:grid;gap:1rem}.season-result{margin-bottom:1rem;background:linear-gradient(115deg,#343361,#20203d)}.season-result h1{margin-bottom:.4rem}.final-results{max-width:820px;margin:0 auto}.final-results>article{display:grid;grid-template-columns:3rem 1fr;gap:1rem;align-items:start;padding:1rem 0;border-bottom:1px solid #474775}.final-results>article.current{margin:0 -.75rem;padding-left:.75rem;padding-right:.75rem;border-radius:9px;background:#b9a8ff1a}.final-results article>b{color:#b9a8ff;font-size:1.25rem}.final-results article h3{margin:0}.final-results article strong{display:block;margin:.25rem 0 .5rem}.final-results article small{display:block;color:#c3c2da}.competition{min-width:0}.league-picker{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1rem;color:#c7bbff;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.league-picker select{max-width:280px;padding:.65rem 2rem .65rem .8rem;border:1px solid #474775;border-radius:8px;color:#f4f3fb;background:#1c1c34}.competition-tabs{padding:0;border-width:0 0 1px;border-radius:0;background:transparent}.competition-tabs button{flex:0 0 auto}.continental-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.continental-group{overflow:hidden;border:1px solid #474775;border-radius:9px}.continental-group h4{margin:0;padding:.7rem;color:#b9a8ff;background:#b9a8ff1a}.continental-group table{min-width:0;font-size:.75rem}.continental-group td,.continental-group th{padding:.45rem .35rem}.position-number{display:inline-grid;width:1.6rem;height:1.6rem;place-items:center}.position-number.continental-qualified{color:#ff6c84;border:1px solid currentColor}.position-number.national-cup-champion{color:#4ccaff;border:1px solid currentColor}.position-number.continental-champion{color:#d9a7ff;border:1px solid currentColor}.tab{color:#c3c2da;background:#22223f;border:1px solid #474775;padding:.65rem .9rem}.tab.active{color:#1b1932;background:#b9a8ff}.wide-panel{min-width:0}.table-scroll{overflow-x:auto}.standings-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.standings-columns.standings-single{grid-template-columns:minmax(0,1fr)}.standings-table{min-width:0}table{width:100%;border-collapse:collapse;min-width:520px}th,td{text-align:left;padding:.55rem .45rem;border-bottom:1px solid #474775}th{color:#b9a8ff;font-size:.78rem;text-transform:uppercase}tr.mine td,.bracket-team.mine,.cupwin.mine strong{color:#b9a8ff;font-weight:700}.bracket-team.mine{border-radius:4px;background:#b9a8ff24}@media(max-width:720px){.standings-columns{grid-template-columns:1fr}}.bracket{display:grid;gap:.55rem}.bracket div{display:grid;gap:.2rem;padding:.7rem;border:1px solid #474775;border-radius:10px}.bracket span,.history-row small,.career-row small{color:#c3c2da;font-size:.82rem}.bracket-tree{display:flex;width:100%;min-width:0;gap:.7rem;overflow-x:auto;padding:.5rem .15rem 1rem 0}.bracket-round{position:relative;display:grid;grid-template-rows:auto 1fr;min-width:0;flex:1 1 0}.bracket-round h4{margin:0 0 .65rem;color:#b9a8ff;font-size:.7rem;text-align:center;text-transform:uppercase}.bracket-round>div{display:flex;min-height:360px;flex-direction:column;justify-content:space-around;gap:.7rem}.bracket-round article{position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:.15rem .35rem;min-width:0;padding:.42rem;border:1px solid #56568c;border-radius:7px;background:#242445;font-size:.68rem}.bracket-team{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem;min-width:0;align-items:center}.bracket-tie .bracket-score-head,.bracket-tie .bracket-team{grid-template-columns:minmax(0,1fr) 1.2rem 1.2rem}.bracket-tie .bracket-score-head.has-penalties,.bracket-tie .bracket-team.has-penalties{grid-template-columns:minmax(0,1fr) 1.2rem 1.2rem 1.2rem}.bracket-score-head{display:grid;grid-template-columns:minmax(0,1fr) 1.2rem 1.2rem;gap:.35rem;color:#aaaac4;text-align:center}.bracket-score-head.has-penalties{grid-template-columns:minmax(0,1fr) 1.2rem}.bracket-tie .bracket-score-head.has-penalties{grid-template-columns:minmax(0,1fr) 1.2rem 1.2rem 1.2rem}.bracket-match:not(.bracket-tie) .bracket-team.has-penalties{grid-template-columns:minmax(0,1fr) 1.2rem 1.2rem}.bracket-score-head small{font-size:.58rem;text-align:center}.bracket-team span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bracket-team b{align-self:center;color:#b9a8ff;text-align:center}.bracket-leg{color:#aaaac4;font-size:.62rem}.bracket-decision{grid-column:1 / -1;color:#c3c2da;font-size:.6rem;text-align:right}.bracket-round:not(:last-child) article:after{position:absolute;z-index:-1;top:50%;left:100%;width:.7rem;height:1px;background:#b9a8ffa6;content:""}.bracket-round:not(:last-child) article:before{position:absolute;z-index:-2;top:50%;left:calc(100% + .7rem);width:1px;height:calc(100% + 2rem);background:#b9a8ff80;content:""}.bracket-round:not(:last-child) article:last-child:before{height:0}.cupwin{color:#c3c2da}.cupwin strong{color:#b9a8ff}.history-row,.career-row,.ranking-row{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;margin:0;border-bottom:1px solid #474775}.history-row,.career-row{display:grid}.ranking-row span{color:#b9a8ff;font-weight:800}.player-ranking{min-width:0}.player-ranking>div{display:grid;grid-template-columns:1.5rem minmax(0,1fr) auto auto;gap:.25rem .6rem;align-items:center;padding:.7rem 0;border-bottom:1px solid #474775}.player-ranking>div.current{margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem;border-radius:8px;background:#b9a8ff1a}.player-ranking>div>b{color:#b9a8ff}.player-ranking span,.player-ranking small{display:block}.player-ranking span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-ranking small{color:#c3c2da;font-size:.72rem;font-weight:400}.player-ranking strong{color:#f4f3fb;white-space:nowrap}.player-ranking>div>small{grid-column:2/-1}.contract-button{padding:.35rem .5rem;font-size:.7rem}.contract-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:1rem;background:#0c0b21b8}.contract-modal .card{position:relative;width:min(100%,380px)}.modal-close{position:absolute;top:.8rem;right:.8rem;padding:.3rem .6rem}.contract-modal small{display:block;margin-top:.5rem;color:#c3c2da}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.7rem}.stats b{display:grid;gap:.25rem;padding:.85rem;background:#22223f;border-radius:10px;color:#c3c2da}.stats em{color:#f4f3fb;font-style:normal}@media(max-width:700px){.landing,.shell{padding:1rem}header{flex-wrap:wrap}header span:last-child{margin-left:0;width:100%}.columns{grid-template-columns:1fr}.hub-banner,.hub-detail-grid{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.hub-metrics{grid-template-columns:repeat(3,1fr)}.hub-grid,.continental-groups{grid-template-columns:1fr}.season-champion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-decision{grid-column:auto;grid-row:auto}}
