:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#ebf1fb;background:#071426;font-size:14px;font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:300px;background:#071426}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffd84c;outline-offset:2px}a{color:#ffe277}h1,h2,h3,p{margin-top:0}.loading{padding:4rem;text-align:center;color:#f8d64b}.shell{min-height:100vh}.topbar{height:80px;display:flex;justify-content:space-between;align-items:center;padding:0 32px;background:#071b35;border-bottom:1px solid #193351;position:sticky;top:0;z-index:10;box-shadow:0 6px 28px #040e1c65}.brand{display:flex;gap:12px;align-items:center}.brand-mark{font-size:21px;font-weight:950;letter-spacing:-1.3px;background:#f6d142;color:#102849;padding:10px 11px;border-radius:12px;box-shadow:inset 0 0 0 2px #ffeb8d}.brand-mark span{font-size:13px;vertical-align:super}.brand-text{display:flex;flex-direction:column;gap:4px}.brand-text strong{font-size:13px;letter-spacing:2px}.brand-text small{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#8ba4c6}.header-actions{display:flex;align-items:center;gap:12px}.season-select{background:#0d2b4e;border:1px solid #31516f;color:#fff;border-radius:11px;padding:11px;min-width:110px;font-weight:750}.tag{display:inline-flex;padding:6px 10px;border:1px solid #376473;background:#112e47;border-radius:100px;font-weight:700;font-size:10px}.tag.green{color:#65f3be;background:#0f3532;border-color:#1d6855}.tag.subtle{color:#aac0dc}.layout{display:grid;grid-template-columns:218px minmax(0,1fr)}.sidebar{background:#0a1d36;border-right:1px solid #1d3856;min-height:calc(100vh - 80px);position:sticky;top:80px;align-self:start;display:flex;flex-direction:column}.aside-head{color:#607e9f;font-weight:900;font-size:10px;letter-spacing:1.6px;padding:30px 22px 17px}.side-nav{display:grid;gap:5px;padding:0 12px}.nav-item{background:transparent;color:#9db0cc;text-align:left;border:0;border-radius:11px;padding:14px 17px;font-weight:700;font-size:13px;transition:.2s}.nav-item:hover{background:#163452;color:white}.nav-item.active{color:#ffe25f;background:#1e3752;box-shadow:inset 3px 0 #ffdc48}.side-footer{margin-top:auto;padding:26px 23px;color:#65819f;font-size:11px;line-height:1.8}.mobile-nav{display:none}.content{min-width:0;padding:30px clamp(18px,3vw,45px) 76px;max-width:1540px;width:100%;margin:0 auto}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 91% 0%,#204d75 0,#163555 26%,#0c2445 60%,#0b2140 100%);border:1px solid #275176;border-radius:22px;padding:42px 44px;min-height:274px;box-shadow:0 18px 45px #020a1650}.hero:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(128deg,transparent,transparent 85px,#ffffff07 86px,#ffffff07 88px);pointer-events:none}.hero-content{position:relative;z-index:2}.hero h1{font-size:clamp(32px,4vw,54px);line-height:1.1;letter-spacing:-2px;font-weight:950;margin:16px 0}.hero h1 em{color:#ffda47;font-style:normal}.hero p{color:#b8cbe0;max-width:530px;font-size:13px;line-height:1.65}.hero-number{position:absolute;right:40px;bottom:-46px;color:#ffda4b09;font-size:300px;font-weight:950;line-height:1}.hero-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.hero-chips span{border:1px solid #345876;background:#0a2a48bb;padding:8px 11px;border-radius:30px;color:#d2e2f6;font-size:11px;font-weight:700}.kicker{color:#fbd449;text-transform:uppercase;font-size:10px;font-weight:850;letter-spacing:2px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:20px 0 30px}.metric{padding:23px 20px;background:#0c233e;border:1px solid #1e3857;border-radius:16px;min-height:121px;display:flex;flex-direction:column;justify-content:space-between}.metric-value{font-size:clamp(20px,2.7vw,32px);font-weight:900;letter-spacing:-1.1px;white-space:nowrap}.metric-value small{font-size:12px;margin-left:4px;color:#83a1c0}.metric-label{font-size:11px;color:#92a8c2;font-weight:700;letter-spacing:.4px}.page-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:10px 0 23px}.page-title h1{font-size:clamp(27px,2.8vw,39px);font-weight:880;margin:6px 0 7px;letter-spacing:-1.3px}.subheading{color:#8fa8c6;font-size:12px;margin:0;line-height:1.6}.three-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:8px 0 28px}.comp-card{background:linear-gradient(145deg,#153553,#0c253f);border:1px solid #275079;border-radius:17px;padding:22px;color:#e4efff;text-align:left;display:flex;flex-direction:column;gap:15px;transition:transform .2s,border-color .2s}.comp-card:hover{transform:translateY(-2px);border-color:#d6b84c}.mini-overline{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#eac746}.comp-card strong{font-size:39px;line-height:1;font-weight:930}.comp-card strong small{font-size:12px;font-weight:600;color:#96adc8}.comp-card>span:not(.mini-overline){font-size:12px;color:#a7bfdc}.comp-goal{margin-top:auto}.home-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:16px}.panel{background:#0c223d;border:1px solid #213c59;border-radius:16px;padding:22px;min-width:0}.panel-title{font-size:15px;font-weight:830;display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:20px}.panel-title>span{font-size:11px;font-weight:600;color:#829fc1}.chart-box{padding:10px 0 0}.chart-box svg{width:100%;height:auto;display:block;overflow:visible}.axis{stroke:#44617d;stroke-width:1}.gridline{stroke:#2b4460;stroke-width:1;stroke-dasharray:5 8}.actual-line{fill:none;stroke:#ffd847;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.max-line{fill:none;stroke:#446a94;stroke-width:3;stroke-dasharray:8 6;stroke-linecap:round;stroke-linejoin:round}.legend{display:flex;justify-content:center;gap:21px;margin-top:5px;color:#aabbd1;font-size:10px;font-weight:700}.legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}.legend-dot.yellow{background:#ffda4a}.legend-dot.blue{background:#4a719b}.inline-metrics{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #233b59;padding-top:22px;margin-top:19px;flex-wrap:wrap}.inline-metrics span{font-size:11px;color:#8ea7c4}.inline-metrics b{display:block;color:#fff;font-size:17px;margin-top:7px}.result-list{display:flex;flex-direction:column;gap:3px}.result-row{display:flex;align-items:center;gap:9px;border-top:1px solid #1c3652;padding:13px 0;min-width:0}.result-row:first-child{border-top:0}.result-date{font-size:10px;color:#7899b8;min-width:70px}.venue{font-size:9px;background:#19364f;padding:6px 8px;border-radius:5px;color:#b4c9e0;font-weight:850}.result-team{font-size:12px;min-width:0;flex:1;font-weight:800;overflow-wrap:anywhere}.result-team small{display:block;color:#7799b4;margin-top:4px;font-size:9px;font-weight:600}.score{font-size:17px;white-space:nowrap}.outcome{height:27px;width:27px;display:grid;place-items:center;border-radius:8px;font-size:11px;font-weight:900}.outcome.V{background:#113d35;color:#54d9a0}.outcome.P{background:#4c401b;color:#fbe074}.outcome.S{background:#4a2534;color:#fb8095}.warning-symbol{border-radius:50%;background:#593e1d;color:#ffc762;font-size:10px;height:17px;width:17px;text-align:center;line-height:17px}.row-actions{display:flex;gap:4px}.tiny-button{border:1px solid #2f5374;background:#143250;color:#d5e6f9;padding:7px 9px;font-size:10px;border-radius:7px}.tiny-button:hover{background:#254764}.tiny-button.danger{color:#fa9caa}.empty{text-align:center;padding:35px 12px;color:#9cb1c8;font-size:12px}.empty-icon{color:#f8d753;font-size:29px;margin-bottom:9px}.hint{font-size:11px;color:#7799b6;line-height:1.7;margin:20px 0}.hint.warn{color:#f2ce7d}.primary,.secondary,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:10px;padding:12px 16px;font-weight:850;font-size:12px;border:1px solid transparent;min-height:40px}.primary{background:#ffda48;color:#0b2440}.primary:hover{background:#ffe477}.secondary{border-color:#3b5975;background:#173652;color:#e5f0fe}.secondary:hover{background:#22486b}.danger-button{background:#4f2735;color:#ffd4d4}.link-button{color:#f5d150;background:transparent;border:0;font-size:11px;font-weight:700}.short{margin-top:0}.summary-stripe{display:flex;flex-wrap:wrap;gap:15px;border:1px solid #254363;border-radius:13px;padding:15px 18px;margin-bottom:20px;background:#102b47}.summary-stripe span{color:#8ea9c7;font-size:11px;flex:1;min-width:130px}.summary-stripe strong{color:#fff;display:block;font-size:17px;margin-top:5px}.roster-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.roster-group{padding:17px 19px}.roster-group .panel-title{margin-bottom:10px;color:#f5d453}.player-row{display:flex;align-items:center;gap:11px;border-top:1px solid #233d59;padding:11px 0}.player-row.inactive{opacity:.55}.shirt{width:37px;height:37px;flex-shrink:0;display:grid;place-items:center;background:#193b5e;border:1px solid #3d688f;border-radius:10px;color:#ffdd4c;font-size:15px;font-weight:900}.player-main{flex:1;min-width:0}.player-main strong{display:block;font-size:12px}.player-main small{display:block;color:#8ca5be;font-size:10px;margin-top:5px}.player-rating,.player-goals{text-align:center;min-width:33px}.player-rating b,.player-goals b{font-size:17px}.player-rating small,.player-goals small{font-size:9px;color:#85a1bf;display:block}.player-rating b{color:#ffdd56}.budget-card{display:flex;align-items:center;flex-wrap:wrap;gap:20px;background:linear-gradient(130deg,#123758,#0e253f);border:1px solid #3b5676;border-radius:16px;padding:24px;margin-bottom:20px}.budget-card>div{flex:1;min-width:140px}.budget-card span{display:block;color:#a8bbd1;font-size:11px;margin-bottom:9px}.budget-card strong{font-size:21px;white-space:nowrap}.budget-card button{margin-left:auto}.transfer-row{display:flex;gap:12px;align-items:center;padding:13px 0;border-top:1px solid #1c3652}.transfer-row:first-child{border-top:0}.transfer-icon{height:36px;width:36px;flex-shrink:0;border-radius:10px;display:grid;place-items:center;font-size:22px}.transfer-icon.positive{background:#12493a;color:#7df5bd}.transfer-icon.negative{background:#49352a;color:#f5bd67}.transfer-main{min-width:0;flex:1}.transfer-main strong{display:block;font-size:13px}.transfer-main small{display:block;color:#879eb6;font-size:10px;margin-top:5px;line-height:1.4}.fee{font-weight:850;white-space:nowrap;font-size:12px}.fee.positive{color:#7bdab1}.fee.negative{color:#f6bd72}.tip{margin-top:20px;background:#142c45;border:1px solid #274561;border-radius:14px;padding:18px 21px}.tip strong{color:#f4d350}.tip p{font-size:11px;color:#98afc8;line-height:1.7;margin:9px 0 0}.season-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.season-card{text-align:left;display:flex;flex-direction:column;align-items:start;gap:14px;background:#0f2946;border:1px solid #2b4a66;color:white;padding:25px;border-radius:16px}.season-card.selected{border-color:#f0cf49;box-shadow:inset 0 0 0 1px #f0cf49}.season-card strong{font-size:38px}.season-card span:not(.kicker){font-size:12px;color:#a9c0da}.season-card small{color:#7e9dba;line-height:1.5}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings p{font-size:12px;color:#9eb3cd;line-height:1.7}.settings b{color:#e0eaf5}.settings button{margin:8px 8px 8px 0}.toast{position:fixed;z-index:200;bottom:30px;left:50%;transform:translate(-50%,20px);background:#1d4939;border:1px solid #47745c;color:#dcffe9;padding:13px 20px;border-radius:12px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;font-size:12px;max-width:min(90vw,500px);box-shadow:0 15px 35px #0008}.toast.visible{opacity:1;transform:translate(-50%,0)}.toast.bad{background:#5f3032;border-color:#a55d66;color:#ffe8ea}dialog{padding:0;border:1px solid #3a5a77;border-radius:18px;background:#0d2743;color:#edf5ff;max-width:min(650px,calc(100vw - 24px));max-height:min(90vh,900px);width:100%;overflow:auto;box-shadow:0 25px 80px #000a}dialog::backdrop{background:#020c1bcc;backdrop-filter:blur(5px)}#modal-content{padding:25px 28px}.modal-top{display:flex;justify-content:space-between;align-items:start;gap:16px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #34516c}.modal-top h2{font-size:24px;letter-spacing:-.5px;margin:8px 0 0}.close{border:1px solid #476583;background:#173b5b;color:#fff;border-radius:8px;height:35px;width:35px}.form-layout{display:grid;gap:19px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:750;color:#bad0e9}.field.full{grid-column:1/-1}.field>span{display:block}.field input,.field select,.field textarea,#scorer-select{width:100%;padding:11px 12px;border:1px solid #466783;border-radius:9px;background:#09203a;color:#eef6ff;min-height:42px;outline:none}.field input::placeholder,.field textarea::placeholder{color:#718ca6}.field textarea{resize:vertical}.scorer-picker{display:flex;gap:9px}.scorer-picker select{min-width:0}.scorer-picker button{flex-shrink:0}.goal-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #446581;border-radius:30px;color:#ffdc67;background:#183b58;padding:7px 11px;font-size:11px;margin:4px 5px 0 0}.goal-chip b{font-size:17px}.field-help{font-size:10px;color:#8ba7be;font-weight:500}.form-buttons{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid #34516c;padding-top:20px}@media(max-width:1100px){.layout{grid-template-columns:175px minmax(0,1fr)}.content{padding:25px 18px 100px}.topbar{padding:0 18px}.roster-sections,.home-grid{grid-template-columns:1fr}.sidebar .nav-item{padding:13px}}@media(max-width:760px){.topbar{height:70px;padding:0 13px}.brand-mark{font-size:17px;padding:9px}.brand-text strong{font-size:11px;letter-spacing:1px}.brand-text small{font-size:8px;letter-spacing:0}.header-actions{gap:6px}.header-actions .tag{display:none}.season-select{font-size:12px;padding:9px;min-width:97px}.layout{display:block}.sidebar{display:none}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;background:#071b35;border-top:1px solid #254966;padding:7px max(8px,env(safe-area-inset-left)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-right));gap:5px;box-shadow:0 -6px 20px #0006}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav .nav-item{padding:12px 14px;font-size:11px;border-radius:9px;white-space:nowrap;flex-shrink:0}.mobile-nav .nav-item.active{box-shadow:inset 0 -3px #ffdc48}.content{padding:20px 14px 110px}.hero{padding:28px 23px;min-height:260px;border-radius:17px}.hero h1{font-size:37px;letter-spacing:-1.4px}.hero-number{right:-9px;font-size:240px}.hero p{max-width:290px}.hero-chips{margin-top:20px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:13px 0 21px}.metric{padding:17px 14px;min-height:97px}.metric-value{font-size:24px}.metric-label{font-size:10px}.page-title{align-items:start;flex-wrap:wrap;gap:14px}.page-title h1{font-size:29px}.page-title>button{width:100%}.three-cards{grid-template-columns:1fr;gap:9px}.comp-card{padding:16px;display:grid;grid-template-columns:1fr auto;gap:8px}.comp-card strong{font-size:32px;grid-column:2;grid-row:1/3}.comp-card .mini-overline{grid-column:1}.comp-card .comp-goal{grid-column:1}.panel{padding:16px}.panel-title{font-size:13px}.result-row{gap:6px}.result-date{font-size:9px;min-width:51px}.venue{padding:5px 6px;font-size:8px}.result-team{font-size:11px}.row-actions{flex-direction:column}.tiny-button{font-size:9px;padding:6px}.score{font-size:14px}.outcome{height:23px;width:23px}.roster-sections,.home-grid,.settings-grid{grid-template-columns:1fr}.summary-stripe{gap:10px}.summary-stripe span{min-width:90px}.budget-card{gap:14px}.budget-card>div{min-width:110px}.budget-card button{width:100%}.fee{font-size:10px}.season-cards{grid-template-columns:1fr}.toast{bottom:90px;min-width:220px;text-align:center}}@media(max-width:420px){.brand-text small{display:none}.brand-text strong{font-size:10px}.brand-mark{padding:8px}.result-date{display:none}.hero h1{font-size:33px}.hero-chips span{font-size:9px;padding:7px 9px}.form-grid{grid-template-columns:1fr}.modal-top h2{font-size:20px}#modal-content{padding:20px 17px}}
