@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#10171b;--panel:#172126;--line:#2b373c;--muted:#96a7ae;--lime:#c4f36b;--blue:#69b7ed}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#eff4f1;font:15px 'DM Sans',sans-serif}header{height:80px;padding:0 4%;display:flex;gap:25px;align-items:center;border-bottom:1px solid var(--line);font-size:13px;letter-spacing:2px}.brand{font-size:28px;font-weight:800;letter-spacing:-1px;color:#fff;text-decoration:none}.brand span{color:var(--lime)}.divider{height:23px;width:1px;background:var(--line)}.badge{border:1px solid #3c4a35;color:var(--lime);padding:6px 9px;border-radius:4px;font-size:11px;letter-spacing:1px}.private{margin-left:auto;letter-spacing:0;color:var(--muted)}main{max-width:1600px;margin:auto;padding:35px 4%}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--lime)}h1,h2,h3,p{margin-top:0}h1{font:600 38px 'Barlow Condensed',sans-serif;letter-spacing:.3px;margin-bottom:9px}.intro p:last-child{color:var(--muted);margin:0;font-size:14px}button,select{font:600 14px 'DM Sans',sans-serif;color:#dce7e7;background:#202d32;border:1px solid #39474e;border-radius:6px;padding:10px 15px;cursor:pointer}button:hover{background:#304047}button:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:3px}button:disabled{opacity:.4;cursor:default}.scoreboard{display:flex;align-items:center;justify-content:space-between;padding:25px 30px;border:1px solid var(--line);background:linear-gradient(100deg,#243224,#192329 50%,#1e2e3a);border-radius:10px;margin-bottom:23px}.club{display:flex;align-items:center;gap:16px}.crest{border:1px solid #718852;color:var(--lime);font:600 30px 'Barlow Condensed',sans-serif;padding:14px 12px;border-radius:10px 10px 20px 20px}.away .crest{color:var(--blue);border-color:#4f7792}.club small{color:var(--muted);font-size:10px;letter-spacing:1.5px}.club h2{font:600 27px 'Barlow Condensed',sans-serif;margin:5px 0}.club span{color:var(--muted);font-size:13px}.away{text-align:right}.score{text-align:center}.score>div{display:flex;align-items:center;gap:20px}.score b{font:600 60px 'Barlow Condensed',sans-serif}.score>div span{color:#617078;font-size:28px}.score small{font-size:12px;color:var(--lime);background:#121d1a;padding:5px 12px;border-radius:4px}.layout{display:grid;grid-template-columns:minmax(0,2.35fr) minmax(290px,1fr);gap:22px}.panel{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}.panelHead{min-height:61px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:13px 20px;gap:10px}.panelHead h3{margin:0;font-size:15px}.panelHead>span{font-size:12px;color:var(--muted)}.canvasWrap{position:relative;background:#142821}canvas{display:block;width:100%;height:auto}.fieldLegend{position:absolute;bottom:12px;left:20px;display:flex;align-items:center;gap:7px;font-size:11px;color:#b5c9be}.dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-left:8px}.lime{background:var(--lime)}.blue{background:var(--blue)}.ball{background:#faac73}.controls{display:flex;align-items:center;gap:10px;padding:16px 18px;flex-wrap:wrap}.primary{background:var(--lime);color:#142219;border-color:var(--lime)}.primary:hover{background:#d6ff90}.controls label{font-size:12px;color:var(--muted);margin-left:auto}.controls select{margin-left:5px;padding:10px 8px}.matchInfo{display:flex;gap:15px;border-top:1px solid var(--line);padding:12px 19px;color:var(--muted);font-size:11px}.feedPanel{display:flex;flex-direction:column;max-height:660px}#feed{overflow:auto;flex:1;padding:0 19px;max-height:590px}.event{border-bottom:1px solid var(--line);padding:15px 0;display:flex;gap:15px}.event time{font-size:11px;color:#91a0a6;min-width:44px;padding-top:3px}.event p{font-size:13px;line-height:1.6;margin:0}.event strong{display:block;color:var(--lime);font-size:10px;letter-spacing:1px;margin-bottom:3px}.event.sharks strong{color:var(--blue)}.bottom{margin-top:23px}.tabs{display:flex;gap:22px}.tabs button{border:0;padding:8px 0;background:none;color:var(--muted);border-radius:0}.tabs .active{color:var(--lime);border-bottom:2px solid var(--lime)}.tableTools{display:flex;justify-content:space-between;align-items:center;padding:18px 20px}.tableTools>span{color:var(--muted);font-size:12px}.teams{display:flex;gap:5px}.teams button{font-size:12px;background:transparent;border:0}.teams .active{background:#2b3930;color:var(--lime)}.tableScroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:right;white-space:nowrap}th{font-size:10px;font-weight:500;letter-spacing:1px;color:var(--muted);padding:10px 20px;background:#141d21}td{padding:12px 20px;font-size:13px;border-top:1px solid #243035}th:nth-child(2),td:nth-child(2){text-align:left}td:nth-child(4){color:var(--lime);font-weight:700}tbody tr{cursor:pointer}tbody tr:hover{background:#253237}.sectionNote{color:var(--muted);padding:20px 20px 0}#roster{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:0 20px 20px}.playerCard{text-align:left;padding:15px}.playerCard small{display:block;color:var(--muted);margin-top:8px}.engine{padding:26px;max-width:1100px}.engine p{line-height:1.7;color:#aebdc2}.engineGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:30px}.engineGrid h3{color:var(--lime)}footer{display:flex;gap:25px;margin-top:27px;font-size:11px;letter-spacing:1px;color:#70828a}footer span:last-child{margin-left:auto}dialog{background:#18242a;color:white;border:1px solid #4a5b60;border-radius:12px;width:460px;max-width:90vw;padding:25px}dialog::backdrop{background:#060c10bb}#closeProfile{float:right}.attribute{display:grid;grid-template-columns:1fr 110px 28px;align-items:center;gap:10px;margin:15px 0;font-size:14px}.attribute progress{width:110px;accent-color:var(--lime)}.muted{color:var(--muted)}[hidden]{display:none!important}@media(min-width:1500px){.feedPanel{max-height:740px}}@media(max-width:1000px){.layout{grid-template-columns:1fr}.feedPanel{height:280px}.club h2{font-size:22px}.crest{display:none}#roster{grid-template-columns:repeat(3,1fr)}.tableTools>span{display:none}}@media(max-width:620px){header{gap:13px;height:66px}.badge,.private,.divider{display:none}main{padding:22px 14px}h1{font-size:29px}.intro{gap:12px}.intro>button{font-size:12px;padding:8px}.intro p:last-child{font-size:12px}.scoreboard{padding:18px 12px;gap:10px}.club h2{font-size:20px;max-width:100px}.club small{font-size:9px}.score b{font-size:45px}.score>div{gap:10px}.club span{font-size:10px}.panelHead{padding:12px}.panelHead>span{font-size:10px}.controls{gap:8px;padding:12px}button,select{padding:9px 10px}.matchInfo{flex-wrap:wrap;gap:8px;font-size:10px}.tabs{gap:12px}.tabs button{font-size:12px}#export{font-size:11px;padding:6px}th,td{padding:10px 12px}#roster{grid-template-columns:repeat(2,1fr)}.engineGrid{grid-template-columns:1fr;gap:0}footer span:nth-child(2){display:none}}

.roleDetail{border:1px solid var(--line);padding:14px;border-radius:8px;margin:16px 0}.roleDetail label{display:block;margin-bottom:8px}.roleDetail select{width:100%;font-size:13px}.roleDetail p{font-size:14px;line-height:1.5;margin:12px 0}.roleDetail small{color:var(--muted);line-height:1.5;display:block}

.viewNav{display:flex;gap:8px;margin-bottom:22px}.viewNav .active{color:var(--lime);border-color:var(--lime)}.seasonIntro{display:flex;justify-content:space-between;gap:20px;align-items:center}.seasonIntro h2{font:600 32px 'Barlow Condensed',sans-serif;margin-bottom:8px}.seasonIntro p{color:var(--muted)}.seasonActions{display:flex;gap:8px;flex-wrap:wrap}.seasonGrid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;margin-top:24px}.fixture{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.fixture p{margin:0 0 5px}.fixture small{color:var(--muted)}#seasonStatus{color:var(--lime);font-size:16px;margin:20px 0}#seasonView>.muted{font-size:13px;line-height:1.6}#seasonPlayers td,#ladderRows td{padding:12px}#seasonPlayers td:nth-child(4){color:var(--muted)}.qualifier td:first-child{border-left:3px solid var(--lime)}#seasonView th{padding:10px 12px}#profile{max-height:90vh;overflow:auto}.gameHistory{font-size:13px;line-height:1.7}.gameHistory div{padding:8px 0;border-bottom:1px solid var(--line)}@media(max-width:1100px){.seasonGrid{grid-template-columns:1fr}.seasonIntro{display:block}}@media(max-width:600px){.seasonActions button{font-size:12px}.seasonIntro h2{font-size:27px}}

.statSort{border:0;background:transparent;padding:0;font-size:11px;color:var(--muted);white-space:nowrap}.statSort.sorted{color:var(--lime)}.statSort:hover{color:white;background:transparent}#seasonRatingsPanel .sectionNote{padding:16px 0 0;font-size:14px;line-height:1.5}

.ovrBadge{display:inline-flex;align-items:center;gap:5px;padding:3px 6px;margin-left:6px;border:1px solid currentColor;border-radius:5px;font-size:11px;font-weight:800;line-height:1.2;vertical-align:middle;white-space:nowrap;background:#172027}.ovrBadge span{font-size:10px;opacity:.9;font-weight:600}.gradeS{color:#ffd66b;background:#382e15}.gradeA{color:#d4a5ff;background:#30223e}.gradeB{color:#80c6ff;background:#192e40}.gradeC{color:#a6e79b;background:#213a24}.gradeD{color:#f2ba86;background:#3c2c20}.gradeE{color:#b3bec9;background:#293139}.gradeGuide{margin:12px 20px;color:#aabdc7;font-size:12px}.gradeGuide summary{cursor:pointer}.gradeGuide p{max-width:780px;line-height:1.6}.gradeScale{display:flex;flex-wrap:wrap;gap:14px;margin:12px 0}.gradeScale .ovrBadge{margin-left:0}

.matchTools{display:flex;justify-content:flex-end;margin:16px 0}

.changeLog{padding:28px;max-width:960px;margin:24px auto}.changeLog h2{font-size:28px}.releaseHeading{display:flex;gap:20px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #ffffff22;padding-bottom:16px}.releaseHeading h3{font-size:25px;margin:0}.releaseHeading time{color:#9eb3b6}.changeLog li{font-size:16px;line-height:1.65;margin:8px 0}.changeLog h4{font-size:18px;margin:24px 0 8px}.changeLog .muted{line-height:1.6}.viewNav{flex-wrap:wrap}

.dynastySection{padding:20px}.dynastySection p{font-size:15px;line-height:1.6}.dynastySection summary{cursor:pointer;font-weight:600;font-size:16px}.dynastySection details{padding:12px 0;border-bottom:1px solid var(--line)}#dynastyRoster tr{cursor:pointer}#dynastyNotice{color:var(--muted)}
.textLink{background:transparent;border:0;color:var(--lime,#c4f36b);padding:4px 0;text-align:left;text-decoration:underline;text-underline-offset:3px;font:inherit;cursor:pointer}.textLink:hover{color:white}.awardRow{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.awardBadge{position:relative;display:inline-block;border:1px solid #c4a853;border-radius:5px;background:#312e1d;color:#ffe493;padding:7px 10px;font-size:14px}.awardYears{display:none;position:absolute;z-index:5;top:100%;left:0;background:#18262b;padding:10px;border:1px solid #c4a853;min-width:140px;color:#fff}.awardBadge:hover .awardYears,.awardBadge:focus .awardYears{display:block}.careerYear{padding:18px 0;border-bottom:1px solid #344247}#recordsView{margin-top:16px}#recordsBody h2{font-size:28px}#recordsBody th{white-space:nowrap}#recordsBody .tabs{margin:18px 0}#recordsBody .attribute{max-width:700px}
.controlledClub,.leaguePlayerTools label{display:flex;align-items:center;gap:8px;font-size:14px}.controlledClub select{max-width:230px}.leaguePlayerTools{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:16px}.draftClock{margin:16px;padding:16px 20px;border:1px solid #c4f36b;border-left:5px solid #c4f36b;border-radius:6px;background:#202d27}.draftClock h3{font-size:22px;margin:8px 0}.draftClock p{margin:6px 0}#dynastyPlayerHeaders th{white-space:nowrap}@media(max-width:600px){.controlledClub{width:100%;justify-content:space-between}.leaguePlayerTools label{width:100%;justify-content:space-between}}
.leagueScrollControl{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:16px;background:#1b292e;padding:14px 18px;border-bottom:1px solid #435154;font-size:14px}.leagueScrollControl input{flex:1;min-width:100px;accent-color:#c4f36b}.dynastyWatchBar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;background:#22382b;border:1px solid #c4f36b;border-radius:6px;margin-top:14px}.dynastyWatchBar[hidden]{display:none}

#matchDetails>summary{cursor:pointer;padding:18px 22px;font-size:1rem;font-weight:600}#matchDetails:not([open]){margin-bottom:16px}

.momentumBar{display:inline-block;width:34px;height:7px;background:#54262b;border:1px solid #a24b54;border-radius:3px;vertical-align:middle;margin-left:5px;position:relative;flex-shrink:0}.momentumBar i{display:block;height:100%;background:#fa5968;border-radius:2px}.momentumBar:focus-visible{outline:2px solid white;outline-offset:3px}
/* Mode selection and Dynasty workspace navigation. */
#modeMenu{max-width:900px;margin:36px auto}#modeMenu h1{font-size:32px;margin:8px 0 28px}#modeMenu .viewNav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#modeMenu .viewNav button{text-align:left;padding:28px;min-height:130px;white-space:normal;border-color:var(--line);color:var(--text,#e8eeee)}#modeMenu .viewNav button strong{display:block;font-size:24px;margin-bottom:12px;color:var(--lime)}#modeMenu .viewNav button span{display:block;font-size:16px;font-weight:400;line-height:1.5;color:var(--muted)}#modeMenu .viewNav button:hover{border-color:var(--lime)}
#modeNavigation,#matchBackBar{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:20px}#workSurface{min-width:0}.withDynastySidebar{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;align-items:start}#dynastySidebar{position:sticky;top:20px;background:var(--panel,#17272c);border:1px solid var(--line);border-radius:8px;padding:18px 12px;max-height:calc(100dvh - 40px);overflow:auto}#dynastySidebar .eyebrow{padding:0 10px}#dynastySectionNav{display:flex;flex-direction:column;gap:5px}#dynastySectionNav button{white-space:normal;text-align:left;border:1px solid transparent;padding:11px 12px;min-height:44px;font-size:14px;background:transparent}#dynastySectionNav button[aria-current="page"]{color:var(--lime);border-color:var(--lime);background:#c4f36b0b}#dynastySectionNav small{display:block;color:var(--muted);font-size:12px;margin-top:5px}#dynastySectionNav button:focus-visible{outline:2px solid var(--lime);outline-offset:2px}#dynastyView .seasonIntro{align-items:flex-start}#dynastyView .seasonIntro h2{font-size:28px}#dynastyView .bottom{margin-top:0}[data-dynasty-page]{min-width:0;margin-top:20px}.dynastySimulationControls{flex-wrap:wrap}#appWorkspace[hidden],#modeNavigation[hidden],#dynastySidebar[hidden],[data-dynasty-page][hidden],#modeMenu[hidden]{display:none!important}
@media(max-width:800px){.withDynastySidebar{grid-template-columns:1fr;gap:16px}#dynastySidebar{position:static;max-height:none;padding:12px}#dynastySectionNav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}#dynastySidebar .eyebrow{margin:0 0 8px}#dynastySectionNav button{padding:9px 10px}#modeMenu{margin:20px auto}#modeMenu .viewNav{grid-template-columns:1fr}#modeMenu .viewNav button{min-height:100px;padding:20px}}

.contractBadge{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;border:1px solid;border-radius:5px;padding:4px 7px;font-size:14px;font-weight:600;line-height:1.3}.contract-expiring{color:#ffd77b;background:#493717;border-color:#ab873c}.contract-short{color:#a6d8ff;background:#1c354c;border-color:#588cb2}.contract-secure{color:#a7efc4;background:#1c3c2e;border-color:#4c9b70}.contract-expired{color:#ffb2b7;background:#46252c;border-color:#a95a64}.contract-unsigned{color:#c6cdd4;background:#2d343c;border-color:#707e8a}.contractSalary{display:block;margin-top:5px;color:var(--muted);font-size:13px;white-space:nowrap}.contractLegend{display:flex;align-items:center;flex-wrap:wrap;gap:10px;line-height:1.6}.averageMatchRating{font-weight:700;font-variant-numeric:tabular-nums;color:#e2eff8}

#dynastyUpcoming,#dynastyRoundup{margin-bottom:20px}.roundupGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.roundupGrid article{padding:16px;border:1px solid var(--line);border-radius:6px;background:#ffffff03}.roundupGrid h4,.roundupForm h4{font-size:16px;margin:0 0 10px;color:var(--lime)}.roundupGrid p,.roundupForm p{font-size:16px;line-height:1.65;margin:6px 0}.roundupForm{margin:18px 0;padding:16px;border-left:3px solid var(--lime);background:#c4f36b05}.fixtureBrowse{display:flex;gap:8px;flex-wrap:wrap;padding:12px 20px}.fixture .muted{font-size:14px}#dynastyPage-fixtures .panelHead{flex-wrap:wrap;gap:12px}@media(max-width:800px){.roundupGrid{grid-template-columns:1fr}.fixture{flex-wrap:wrap}.fixtureBrowse button{font-size:14px}}

.specialistBadge{display:inline-block;vertical-align:middle;font-size:12px;line-height:1.4;padding:3px 5px;margin:2px;border:1px solid #9e824b;border-radius:4px;background:#302919;color:#ffe1a0;white-space:nowrap}.specialistBadge:focus-visible{outline:2px solid #ffe1a0;outline-offset:2px}.badgeActivity{display:flex;gap:12px;flex-wrap:wrap;color:#ffe1a0;font-size:14px;min-height:20px;margin-bottom:8px}
#faResults{margin-top:20px}.faOutcome{padding:14px 16px;margin:10px 0;border:1px solid var(--line);border-left:4px solid var(--line);border-radius:6px}.faOutcome p{margin:7px 0;font-size:16px}.faOutcome small,.faOutcome>strong{font-size:14px}.faOutcome-own{border-left-color:#c4f36b;background:#c4f36b12}.faOutcome-own>strong{color:#c4f36b}.faOutcome-missed{border-left-color:#ffb07b;background:#ffb07b12}.faOutcome-missed>strong{color:#ffb07b}.faOutcome-departed{border-left-color:#a6d8ff}.faOutcome-departed>strong{color:#a6d8ff}
.recruitmentTable{width:100%;font-size:14px}.recruitmentTable th,.recruitmentTable td{padding:10px 8px;text-align:left}.recruitmentTable td:first-child{min-width:150px;white-space:normal}.recruitmentTable .specialistBadge{display:none}.recruitmentOffer{display:flex;align-items:center;gap:5px}.recruitmentOffer input{width:6em;min-width:0}.recruitmentOffer select{width:3.5em;min-width:0}.recruitmentTable button,.recruitmentTable input,.recruitmentTable select{font-size:14px}.recruitmentTable .discountDetail{min-height:36px;text-decoration:underline;text-underline-offset:3px}.offerPending{margin-left:6px}.recruitmentTable abbr{cursor:help}
/* Match reports need room for both clubs and the full statistics table. */
#profile:has(.matchReportTable){width:calc(100vw - 48px);max-width:1800px;max-height:94dvh}
.matchReportTable th,.matchReportTable td{padding:12px 14px}
.matchReportTable th:first-child,.matchReportTable td:first-child{text-align:left}
@media(max-width:620px){#profile:has(.matchReportTable){width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:16px}.matchReportTable th,.matchReportTable td{padding:10px}}
.recruitmentOffer{min-width:max-content}.recruitmentOffer select{flex:0 0 4.5rem;width:4.5rem;min-width:4.5rem;padding:8px 6px}.recruitmentOffer input{flex-shrink:0}.freeAgencyBudget{display:flex;flex-wrap:wrap;gap:12px 24px;padding:16px 20px;border-bottom:1px solid var(--line)}.freeAgencyBudget strong{color:var(--lime)}.freeAgencyBudget span{color:var(--muted)}
.tradeHeading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.tradeHeading h2,.tradeHeading h3{margin-bottom:8px}.tradeHeading label{display:flex;align-items:center;gap:10px}.tradeDirections{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.tradeDirections>div{padding:12px;border:1px solid var(--line);border-radius:6px}.tradeDirections strong,.tradeDirections b,.tradeDirections small{display:block;margin-bottom:6px}.tradeDirections b{text-transform:capitalize;color:var(--lime)}.tradeDirections small{font-size:13px;color:var(--muted);line-height:1.6}.tradeOwnClub{border-left:3px solid var(--lime)!important;background:#c4f36b09}.tradeSides{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin:20px 0}.tradeSides>div{min-width:0}.tradeAssetTable th,.tradeAssetTable td{padding:10px 8px;font-size:14px}.tradeAssetTable td:nth-child(2){min-width:150px;white-space:normal}.tradeAssetTable small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.tradeAssetTable input{width:20px;height:20px;accent-color:var(--lime)}.tradeAssessment{padding:16px;background:#ffffff06;border-radius:6px;margin:16px 0}.tradeAssessment p:last-child{margin-bottom:0}.tradeCard{padding:16px;margin:12px 0;border:1px solid var(--line);border-radius:6px}.tradeCard p{margin:10px 0;line-height:1.6}.tradeCard small{color:var(--muted)}.tradeGuide p{max-width:1000px;line-height:1.7;color:var(--muted)}.tradeGuide summary{cursor:pointer}@media(max-width:1200px){.tradeSides{grid-template-columns:1fr}.tradeDirections{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.tradeDirections{grid-template-columns:1fr}.tradeHeading label{flex-wrap:wrap}.tradeHeading select{max-width:100%}}
/* Full-width management workspace with a compact left navigation rail. */
body:has(.withDynastySidebar:not([hidden])) main{max-width:none;padding:24px 24px 24px 0}
.withDynastySidebar{grid-template-columns:208px minmax(0,1fr);gap:24px}
#dynastySidebar{top:16px;max-height:calc(100dvh - 32px);padding:16px 12px;border-left:0;border-radius:0 10px 10px 0}
#dynastySidebar #modeNavigation{gap:10px;margin:0 0 24px;padding:0 4px}
#dynastySectionNav button{font-weight:500;border-radius:6px}
#dynastySectionNav button[aria-current="page"]{font-weight:700;background:#c4f36b12}
#dynastySectionNav small{font-size:12px;opacity:.75}
#dynastyView .panelHead{gap:16px;flex-wrap:wrap}
#dynastyView table{font-variant-numeric:tabular-nums}
#dynastyView th{font-size:12px;letter-spacing:.3px}
#dynastyView td{font-size:14px}
#dynastyView th,#dynastyView td{padding:11px 12px}
#dynastyRoster td:first-child,#dynastyLeaguePlayers td:first-child{min-width:190px;text-align:left;font-weight:600}
#dynastyLeaguePlayers .textLink{font-size:14px;text-align:left;white-space:nowrap}
#dynastyLeaguePlayers td:nth-child(4){color:inherit;font-weight:400}
#dynastyLeaguePlayers .ovrBadge{margin:0;min-width:46px;justify-content:center}
.statBadgeCount{display:inline-block;min-width:44px;text-align:center;padding:4px 7px;border:1px solid #665737;border-radius:5px;color:#ffe1a0;background:#302919;font-size:13px;font-weight:600}
.rosterToolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.rosterToolbar label,.leaguePlayerTools label{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted)}
#rosterSearch,#leaguePlayerSearch{min-height:40px;width:230px;max-width:100%;padding:9px 12px;border:1px solid #39474e;border-radius:6px;background:#10191e;color:#eff4f1;font:inherit}
#rosterSearch:focus-visible,#leaguePlayerSearch:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.rosterScrollControl{flex:1;justify-content:flex-end;min-width:240px}.rosterScrollControl input{width:min(420px,65%);accent-color:var(--lime)}
.rosterDrawer{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .2s ease,visibility .2s}
.rosterDrawer.isOpen{grid-template-rows:1fr;visibility:visible}
.rosterDrawerInner{overflow:hidden;min-height:0}.rosterSettings{display:flex;gap:14px;flex-wrap:wrap;align-items:center;padding:18px 20px;background:#ffffff03;border-bottom:1px solid var(--line)}
.rosterSettings .sectionNote{padding:0;margin:0;flex-basis:100%;line-height:1.6}
.transactionRow{padding:14px 16px;margin:8px 0;border:1px solid var(--line);border-radius:6px;line-height:1.7}
.transactionOwn{border-left:3px solid var(--lime);background:#c4f36b0b}
.transactionTag{display:inline-block;color:var(--lime);font-size:12px;font-weight:700;letter-spacing:.5px;margin-right:12px}
@media(min-width:1800px){.withDynastySidebar{grid-template-columns:224px minmax(0,1fr)}}
@media(max-width:800px){body:has(.withDynastySidebar:not([hidden])) main{padding:16px 12px}.withDynastySidebar{grid-template-columns:1fr;gap:16px}#dynastySidebar{position:static;max-height:none;border-left:1px solid var(--line);border-radius:8px}#dynastySidebar #modeNavigation{margin-bottom:12px}.rosterToolbar label,.leaguePlayerTools label{flex-wrap:wrap}.rosterScrollControl{justify-content:flex-start;flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.rosterDrawer{transition:none}}
/* Reading and decision panels keep a natural line length; wide tables retain room. */
#dynastyPage-overview{max-width:1380px}#dynastyPage-contracts,#dynastyPage-fixtures{max-width:1450px}
#dynastyPage-transactions,#dynastyPage-history,#dynastyPage-saves{max-width:1100px}
.seasonIntro,#dynastyNotice,.dynastySimulationControls{max-width:1450px}
#freeAgencyPanel:has(#restrictedRenewals:not([hidden])){max-width:1100px}
#restrictedRenewals td:first-child{text-align:left}#restrictedRenewals td small{display:block;margin-top:6px;color:var(--muted)}
.listNeeds{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}
.listNeeds>span{padding:6px 10px;background:#ffffff05;border:1px solid var(--line);border-radius:5px}.listNeeds .needShort{color:#ffd77b;border-color:#786335}.listNeeds small{flex-basis:100%;color:var(--muted)}
#freeAgencySearch{font:inherit;padding:9px 12px;max-width:100%;color:inherit;background:#10191e;border:1px solid #39474e;border-radius:6px}
.columnFilters{padding:12px 16px;border-bottom:1px solid var(--line);background:#ffffff02}
.columnFilters summary{cursor:pointer;font-size:14px}.columnFilters summary small{margin-left:10px;color:var(--muted)}
.columnFilters p{color:var(--muted);font-size:14px;margin:12px 0}
.columnFilterFields{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}
.columnFilterFields label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}
.columnFilterFields input{width:140px;max-width:100%;font:inherit;padding:8px;color:#eff4f1;background:#10191e;border:1px solid #39474e;border-radius:5px}
.columnFilterFields input:focus-visible,#freeAgencySearch:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
