@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#12151a;--panel:#232830;--panel2:#2d3440;--line:#46505d;--text:#ffffff;--muted:#bac3cf;--accent:#ffffff;--ink:#14191f;--red:#ffa9a2;--green:#b7dfbd}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px 'DM Sans',system-ui,sans-serif}body.light{color-scheme:light;--bg:#efeee9;--panel:#fffefa;--panel2:#e7e6e0;--line:#d2d0ca;--text:#22242a;--muted:#64666d;--accent:#303238;--ink:#fffefa;--red:#ac4237;--green:#4f7657}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button,input,select{border:1px solid var(--line);color:var(--text);background:var(--panel2);border-radius:7px;padding:11px 14px}button:hover:not(:disabled){border-color:var(--accent)}input,select{width:100%}button.primary{background:var(--accent);color:var(--ink);border-color:transparent;font-weight:700}button.ghost{background:transparent}button.small{padding:7px 10px;font-size:12px}a{color:var(--accent)}.shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh}.sidebar{border-right:1px solid var(--line);padding:30px 20px;display:flex;flex-direction:column;position:fixed;width:220px;height:100vh;background:var(--bg);z-index:5}.brand{font:800 32px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.1px;display:flex;align-items:center;gap:9px}.brand span{font-size:29px;color:var(--accent)}.subbrand{font-size:9px;letter-spacing:2.1px;color:var(--muted);margin:7px 0 40px 2px}.nav{display:grid;gap:6px}.nav button{text-align:left;background:transparent;border:0;padding:13px 14px;color:var(--muted)}.nav button.active{background:var(--panel2);color:var(--accent)}.nav b{display:inline-block;width:25px;font-size:16px;font-weight:400}.sidebar .bottom{margin-top:auto;display:grid;gap:12px}.world-year{font-size:11px;letter-spacing:1px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.world-year strong{color:var(--text);font-size:17px;display:block;margin-top:5px}.main{grid-column:2;padding:0 44px 60px;max-width:1500px;width:100%;margin:auto}.topbar{height:83px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:15px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--accent)}.muted{color:var(--muted)}.topbar .muted{font-size:12px}.status{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px}.dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.hero{padding:38px 0 25px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}h1,h2,h3,p{margin:0}h1{font:700 clamp(44px,5vw,74px)/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.7px;margin:10px 0 13px}h2{font:600 28px 'Barlow Condensed',Impact,sans-serif}h3{font-size:14px}.hero p{max-width:590px;color:var(--muted);line-height:1.7}.badge{font-size:10px;letter-spacing:1px;padding:6px 9px;border:1px solid var(--line);border-radius:4px;color:var(--muted);display:inline-block}.grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr);gap:22px}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:25px;margin-bottom:20px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}.section-label{font-size:10px;letter-spacing:1.7px;color:var(--muted);font-weight:600;text-transform:uppercase}.step{display:flex;gap:12px;margin:24px 0 15px}.step .circle{border:1px solid var(--line);border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:11px;color:var(--accent)}.step strong{font-size:13px;padding-top:4px}.positions{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.positions button{padding:15px 4px;background:transparent;display:grid;gap:5px}.positions b{font:600 22px 'Barlow Condensed',sans-serif}.positions span{font-size:9px;color:var(--muted)}.positions .selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field label{font-size:11px;color:var(--muted);display:block;margin-bottom:8px}.field.full{grid-column:1/-1}.field small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.actions button{flex:1}.prospect{overflow:hidden;position:relative;background:var(--panel);color:var(--text);border-color:var(--line)}.prospect .section-label{color:var(--muted)}.jersey{font:800 130px/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:-7px;color:var(--accent);margin:15px 0;position:relative}.prospect h2{font-size:37px;position:relative}.prospect-meta{color:var(--muted);font-size:12px;margin:8px 0 25px}.ratings{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);padding-top:20px;gap:15px}.rating strong{font:700 49px 'Barlow Condensed',sans-serif;display:block}.rating span{font-size:9px;letter-spacing:1.4px;color:var(--muted)}.stars{color:var(--accent);letter-spacing:4px;font-size:18px;margin-top:20px}.note{font-size:12px;color:var(--muted);line-height:1.8}.rule{height:1px;background:var(--line);margin:20px 0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}.stat{padding:19px;background:var(--panel);border:1px solid var(--line);border-radius:9px}.stat strong{display:block;font:600 35px 'Barlow Condensed',sans-serif;margin-top:5px}.stat span{font-size:10px;letter-spacing:1px;color:var(--muted);text-transform:uppercase}.offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:15px}.offer{margin:0;padding:21px}.offer h2{font-size:26px}.offer .price{font:600 31px 'Barlow Condensed',sans-serif;color:var(--accent);margin:16px 0 4px}.offer button{width:100%;margin-top:15px}.kv{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding:8px 0;border-bottom:1px solid var(--line)}.kv span{color:var(--muted)}.attribute{display:grid;grid-template-columns:145px 1fr 32px;align-items:center;gap:12px;margin:14px 0;font-size:12px}.track{height:5px;background:var(--line);border-radius:3px}.track i{display:block;height:100%;background:var(--accent);border-radius:3px}.attribute strong{text-align:right}.positive{color:var(--green)}.negative{color:var(--red)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:12px}th{text-align:left;color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.6px;padding:13px 12px;border-bottom:1px solid var(--line)}td{padding:14px 12px;border-bottom:1px solid var(--line)}tr.you{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--accent)}.row-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.row-actions select{width:auto;max-width:100%}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.empty{padding:45px 20px;text-align:center;color:var(--muted);line-height:1.8}.banner{background:var(--panel2);border-left:3px solid var(--accent);padding:16px 20px;margin-bottom:22px;line-height:1.7}.banner strong{color:var(--accent)}details{border:1px solid var(--line);border-radius:8px;padding:15px;margin-bottom:12px}summary{cursor:pointer;font-size:13px}.award{padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:12px}.award span{color:var(--muted)}.draft-pick{display:grid;grid-template-columns:45px 1fr 1fr;padding:15px;border-bottom:1px solid var(--line);font-size:13px}.draft-pick.you{background:var(--panel2);color:var(--accent)}.draft-pick b{font-family:'Barlow Condensed',sans-serif;font-size:22px}.draft-pick span:last-child{color:var(--muted)}footer{color:var(--muted);font-size:10px;line-height:1.7;margin-top:25px;display:flex;justify-content:space-between;gap:20px}.toast{position:fixed;bottom:25px;right:25px;background:var(--accent);color:var(--ink);padding:15px 20px;border-radius:8px;z-index:100;max-width:400px}.loading{opacity:.6;pointer-events:none}.pill{display:inline-block;border-radius:20px;background:var(--panel2);padding:7px 12px;font-size:11px}.button-block{width:100%;margin-top:10px}.team-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:10px}.vault-card{margin-bottom:16px}.vault-card h2{font-size:30px}.mobile-brand{display:none}.help{line-height:1.8;color:var(--muted)}.help strong{color:var(--text)}
@media(min-width:1500px){.main{padding-left:65px;padding-right:65px}}@media(max-width:1000px){.sidebar{width:180px;padding:24px 12px}.shell{grid-template-columns:180px minmax(0,1fr)}.brand{font-size:28px}.main{padding:0 24px 40px}.grid{grid-template-columns:1fr}.prospect{order:-1}.jersey{font-size:80px;float:right;margin:0 0 0 20px}.ratings{border:0;padding:0;margin-top:20px}.prospect .stars{margin-top:12px}.stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.shell{display:block}.sidebar{position:static;width:100%;height:auto;border:0;border-bottom:1px solid var(--line);padding:15px}.brand{font-size:26px}.subbrand{display:none}.nav{display:flex;overflow:auto;margin-top:14px;gap:3px}.nav button{padding:9px 10px;font-size:11px;white-space:nowrap}.nav b{display:none}.sidebar .bottom{position:absolute;right:15px;top:17px}.world-year{display:none}.sidebar .bottom button{padding:6px 9px;font-size:11px}.main{padding:0 16px 35px}.topbar{height:55px}.hero{padding-top:25px}.hero .badge{display:none}h1{font-size:51px}.card{padding:19px}.positions span{font-size:8px}.fields{gap:10px}.split{grid-template-columns:1fr}.attribute{grid-template-columns:125px 1fr 25px}.status{font-size:9px}.offers{grid-template-columns:1fr}.stat{padding:14px}.hero p{font-size:12px}.actions button{flex:auto}.draft-pick{grid-template-columns:30px 1fr;font-size:12px}.draft-pick span:last-child{grid-column:2}footer{display:block}}

.offer-tier{margin:28px 0 34px}.opportunity{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.recruit-attributes{background:var(--panel);margin-bottom:24px;padding:20px}.recruit-attribute-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:30px;margin-top:14px}.recruit-attribute-grid .attribute{grid-template-columns:145px 1fr 28px}@media(max-width:700px){.recruit-attribute-grid{grid-template-columns:1fr}.recruit-attribute-grid .attribute{grid-template-columns:135px 1fr 28px}}

.dialog-overlay{position:fixed;inset:0;z-index:1000;background:#08090bc9;display:flex;align-items:center;justify-content:center;padding:20px;overscroll-behavior:contain}.game-dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 90px #0008;padding:28px;width:100%;max-width:480px;max-height:90dvh;overflow:auto}.game-dialog h2{margin:12px 0}.game-dialog .help{margin:12px 0 20px}.game-dialog input{margin-top:10px}.game-dialog .actions{margin-top:24px}.game-dialog button{min-height:44px}

.draft-broadcast{padding:22px;margin-top:20px;background:var(--panel2);border:1px solid var(--line);border-radius:8px}.draft-broadcast h2{margin:10px 0}

.standings-scroll{overflow-x:auto}.standings-columns{display:grid;grid-template-columns:repeat(2,minmax(310px,1fr));gap:24px;min-width:644px}.conference-panel{min-width:0}.conference-panel h3{font:600 23px 'Barlow Condensed',sans-serif;letter-spacing:.5px;padding:4px 0 14px;color:var(--accent)}.conference-panel td,.conference-panel th{padding:13px 7px}.conference-panel .team-dot{margin-right:7px}.standings-mobile-note{display:none;margin-top:12px}@media(max-width:1000px){.standings-mobile-note{display:block}}

.contract-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:17px 22px}.contract-strip h2{margin-top:7px}.contract-strip small{font:12px DM Sans,system-ui,sans-serif}

.stat .rating-delta{font:700 25px 'Barlow Condensed',system-ui,sans-serif;letter-spacing:0;vertical-align:middle;text-transform:none;white-space:nowrap}.stat .rating-delta.positive{color:var(--green)}.stat .rating-delta.negative{color:var(--red)}.stat .rating-delta.muted{color:var(--muted)}

.draft-feed{margin-top:20px}.draft-pick.detailed{row-gap:7px;animation:draftReveal .3s ease-out}.draft-player-meta{grid-column:2 / -1;color:var(--muted);font-size:11px}.draft-player-meta strong{font:600 13px 'DM Sans',system-ui,sans-serif;color:var(--text)}@keyframes draftReveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.draft-pick.detailed{animation:none}}

.leaders-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.leader-card{margin-bottom:0}.leader-team{display:block;color:var(--muted);font-size:10px;margin-top:4px}.leader-card td{padding:12px 9px}.leader-card th{padding:12px 9px}@media(max-width:850px){.leaders-grid{grid-template-columns:1fr}}

.name-input-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.name-input-row input{flex:1 1 180px;min-width:0}.name-input-row button{flex:0 0 auto}

.honors-list{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 20px}.honors-list .badge{white-space:normal}

.brand .brand-logo{display:block;flex:0 0 32px;width:32px;height:44px;background:var(--accent);-webkit-mask:url("assets/leaguebound-mark.png") center/cover no-repeat;mask:url("assets/leaguebound-mark.png") center/cover no-repeat}@media(max-width:1000px){.brand .brand-logo{flex-basis:27px;width:27px;height:38px}}@media(max-width:620px){.brand .brand-logo{flex-basis:26px;width:26px;height:36px}}

.growth-notice{border:2px solid var(--accent);padding:20px 22px}.growth-notice strong{font-size:21px;letter-spacing:.6px}.growth-notice p{margin:9px 0 0;color:var(--text)}

.prospect-ratings{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 16px}.prospect-ratings>div{border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--accent) 5%,transparent);padding:15px 12px 12px}.prospect-ratings span{display:block;font-size:11px;font-weight:700;letter-spacing:1px;color:var(--accent)}.prospect-ratings strong{display:block;font:800 64px/1.05 'Barlow Condensed',Impact,sans-serif;color:var(--text);margin-top:7px}.prospect-reputation{position:relative;padding:0 0 20px;margin:0 0 18px;border-bottom:1px solid var(--line)}.prospect-reputation>span{display:block;margin-top:7px;font-size:10px;letter-spacing:.7px;color:var(--muted)}.recruiting-stars{font-size:28px;letter-spacing:4px;color:var(--accent);line-height:1.2}.jersey-preview{position:relative;margin:12px auto 0;text-align:center;width:170px;max-width:100%}.jersey-art{display:block;width:100%;height:auto;overflow:visible}.jersey-body{fill:var(--panel2);stroke:var(--accent);stroke-width:3;stroke-linejoin:round}.jersey-trim{fill:none;stroke:var(--accent);stroke-width:2}.jersey-surname{fill:var(--text);font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;letter-spacing:.6px}.jersey-digits{fill:var(--accent);font:800 70px 'Barlow Condensed',Impact,sans-serif}.jersey-preview figcaption{margin-top:6px;font-size:9px;font-weight:600;letter-spacing:1px;color:var(--muted)}.prospect .jersey-preview figcaption{color:var(--muted)}.jersey-preview figcaption strong{color:inherit;font-size:12px;letter-spacing:0}.jersey-preview.compact{width:132px;margin:0 auto 20px}.prospect .prospect-meta{margin-bottom:12px}@media(max-width:620px){.prospect-ratings strong{font-size:60px}}

.creation-grid{grid-template-columns:minmax(0,1.15fr) minmax(350px,1fr)}.prospect-identity{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,1.15fr);align-items:center;gap:12px}.prospect-nameblock{min-width:0}.prospect .prospect-nameblock h2{font-size:34px;line-height:1.08;overflow-wrap:anywhere}.prospect-nameblock .prospect-meta{line-height:1.8;margin-top:12px}.prospect-identity .jersey-preview{width:220px;margin:0 0 0 auto}.jersey-art{filter:drop-shadow(0 8px 10px #00000030)}.jersey-digits{font-size:80px}.jersey-surname{letter-spacing:.35px}@media(max-width:1000px){.creation-grid{grid-template-columns:1fr}.prospect-identity{grid-template-columns:minmax(0,1fr) 220px}}@media(max-width:620px){.prospect-identity{grid-template-columns:minmax(0,1fr) minmax(145px,1.05fr);gap:8px}.prospect .prospect-nameblock h2{font-size:29px}.prospect-identity .jersey-preview{width:190px}}

.finals-history-entry{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.finals-history-entry>.section-label{display:block;margin-bottom:12px}.finals-history-entry .kv{align-items:flex-start}.finals-history-entry .kv strong{text-align:right}
.prospect-nameblock{align-self:start;padding-top:12px}.prospect-nameblock h2{margin-top:0}

.draft-result{margin:0 0 20px;padding:10px 14px;font-size:13px;letter-spacing:.07em}.postseason-career>details,.postseason-season>summary{margin-top:14px}

.results-ratings{grid-template-columns:repeat(2,minmax(0,1fr));max-width:460px;gap:10px;margin-bottom:18px}.results-ratings .stat{padding:12px 18px}.season-summary .card-head{margin-bottom:20px}.season-summary h2{margin-top:7px;font-size:34px}.season-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:5px 0 20px;border-bottom:1px solid var(--line);gap:12px}.season-numbers strong{display:block;font:600 46px/1.1 'Barlow Condensed',sans-serif}.season-numbers span{display:block;font-size:10px;letter-spacing:1px;color:var(--muted);margin-top:6px}.season-meta{display:flex;gap:12px 24px;flex-wrap:wrap;padding:17px 0 10px;font-size:12px;color:var(--muted)}.season-meta strong{color:var(--text);font-weight:500}.season-earnings{margin-top:6px}.season-injury{font-size:12px;color:var(--red);line-height:1.7;margin-top:7px}.season-honors{margin-top:16px}.season-details>h2{margin-bottom:18px}.season-details>details{margin-bottom:9px}.season-details>details:last-child{margin-bottom:0}.season-details details>.card{margin:16px 0 0;padding:14px}.season-actions button:first-child{flex:2}.season-actions button:last-child{flex:1}@media(max-width:620px){.season-numbers strong{font-size:38px}.season-numbers span{font-size:9px;letter-spacing:.4px}.season-summary .card-head{align-items:flex-start}.season-summary .card-head>.badge{display:none}.season-actions{flex-direction:column}.season-actions button{width:100%}.season-meta{gap:10px 16px}}

.season-summary .draft-result{margin:8px 0 0;padding:5px 8px;font-size:10px}

.offer .contract-kind{color:var(--accent);margin-bottom:4px}.offer-competition{margin:14px 0}.competition-position{padding:10px 0;border-bottom:1px solid var(--line)}.competition-position:last-child{border:0}.competition-position>strong{font-size:11px;color:var(--accent)}

.team-context{margin:12px 0 18px}.team-context-tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:7px}.team-direction{color:var(--accent)}.offer .team-context .badge{font-size:9px;letter-spacing:.4px}

.opportunity-recap{margin:8px 0}.minute-opportunity{padding:14px 0;border-bottom:1px solid var(--line)}.minute-opportunity>strong{font-size:12px}

.transfer-interest{margin:12px 0;color:var(--accent)}

.stats-mode-row{margin-bottom:20px}.stats-mode-row .row-actions{margin-bottom:8px}

.championship-result{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px 28px;padding:22px 24px;margin-bottom:24px;border:1px solid var(--line);border-left:4px solid var(--team-color);background:var(--panel)}.championship-heading{display:flex;align-items:center;gap:16px}.championship-heading .eyebrow{font-size:11px;letter-spacing:1.6px}.championship-heading h2{font-size:30px;line-height:1.1;margin:6px 0 0}.championship-icon{display:block;width:30px;height:32px;flex-shrink:0;color:var(--team-color)}.championship-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}.championship-outcome{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.championship-outcome strong{font:700 36px 'Barlow Condensed',sans-serif;line-height:1}.championship-outcome span,.championship-credit{font-size:12px;color:var(--muted)}.championship-credit{grid-column:1/-1;display:flex;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.championship-credit strong{color:var(--text);font-weight:500}.hof-chance{padding:18px 0;border-bottom:1px solid var(--line);margin-bottom:18px}.hof-chance .note{margin-top:8px}.career-honors-group h3{margin-top:18px}@media(max-width:600px){.championship-result{padding:18px 16px;gap:16px}.championship-heading{gap:10px}.championship-heading h2{font-size:25px}.championship-icon{width:24px}.championship-outcome strong{font-size:30px}.championship-credit{flex-wrap:wrap}}

.team-themed{--team-edge:color-mix(in srgb,var(--team-primary) 85%,#ffffff);border-top:0}.team-themed .sidebar{border-right-color:var(--team-edge);box-shadow:inset 0 3px var(--team-secondary)}.team-themed .topbar{border-bottom-color:color-mix(in srgb,var(--team-edge) 65%,var(--line))}.team-themed .card,.team-themed .stat,.team-themed .recruit-attributes{border-color:color-mix(in srgb,var(--team-edge) 32%,var(--line));border-top-color:color-mix(in srgb,var(--team-edge) 65%,var(--line))}.team-themed .nav button.active{border-left:3px solid var(--team-edge)}.team-themed .championship-result{border-left-color:var(--team-primary)}@media(max-width:620px){.team-themed .sidebar{border-bottom:1px solid var(--team-edge)}.team-themed .nav button.active{border-left:0;border-bottom:2px solid var(--team-edge)}}

#toast:not(.toast),#toast:empty{display:none}#toast.toast{max-width:min(400px,calc(100vw - 32px));overflow-wrap:anywhere}@media(max-width:620px){#toast.toast{left:16px;right:16px;bottom:16px;max-width:none}}

.hero .draft-result{margin-top:9px;font-size:10px}.postseason-results>.card{padding:0;border:0;box-shadow:none;margin-bottom:20px}.postseason-results>.card .card-head .section-label{display:none}.postseason-results>.card h2{font-size:14px;color:var(--muted)}.playoff-series{margin-bottom:10px}.playoff-series:last-child{margin-bottom:0}.series-outcome{float:right;font-size:10px;letter-spacing:.7px;color:var(--muted);margin-left:12px}@media(max-width:620px){.series-outcome{float:none;display:block;margin:6px 0 0}}

.hero.player-header{padding-bottom:12px}.player-header p{margin-bottom:0}.player-header .draft-result{display:inline-block;margin:7px 0 0}

.career-ratings{grid-template-columns:repeat(2,minmax(0,1fr));max-width:460px;margin-bottom:12px}.career-secondary{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:12px;color:var(--muted);margin-bottom:22px}.career-secondary strong{font-weight:500;color:var(--text);margin-left:6px}

.team-role-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.team-role-grid span{display:block;font-size:11px;color:var(--muted);margin-bottom:7px}.team-role-grid strong{font-size:14px;font-weight:500}@media(max-width:700px){.team-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.brand{font-size:29px;gap:7px;white-space:nowrap;max-width:100%;line-height:1.15}.brand .brand-logo{flex:0 0 28px;width:28px;height:40px;-webkit-mask-size:contain;mask-size:contain}.creation-heading{display:flex;align-items:center;gap:20px}.creation-heading>span:last-child{min-width:0}.creation-mark{display:block;flex:0 0 94px;width:94px;height:132px;background:var(--accent);-webkit-mask:url("assets/leaguebound-mark.png") center/contain no-repeat;mask:url("assets/leaguebound-mark.png") center/contain no-repeat}.creation-hero>div{min-width:0}.creation-hero h1{font-size:clamp(38px,4.4vw,64px)}@media(max-width:1300px){.creation-hero>.badge{display:none}}@media(max-width:1000px){.brand{font-size:25px;gap:6px}.brand .brand-logo{flex-basis:24px;width:24px;height:35px}.creation-mark{flex-basis:78px;width:78px;height:110px}.creation-heading{gap:14px}}@media(max-width:620px){.brand{font-size:26px}.creation-mark{flex-basis:62px;width:62px;height:92px}.creation-heading{gap:12px}.creation-hero h1{font-size:clamp(31px,7vw,43px)}}

.hero.creation-hero{display:grid;grid-template-columns:minmax(0,1fr) clamp(160px,19vw,270px);align-items:center;gap:24px}.creation-hero>.creation-mark{width:100%;height:250px;margin:0;flex:none}.creation-hero h1{font-size:clamp(38px,4.4vw,64px)}@media(max-width:1000px){.hero.creation-hero{grid-template-columns:minmax(0,1fr) 170px;gap:16px}.creation-hero>.creation-mark{height:210px}}@media(max-width:620px){.hero.creation-hero{grid-template-columns:minmax(0,1fr) 100px;gap:10px}.creation-hero>.creation-mark{height:150px}.creation-hero h1{font-size:clamp(29px,6vw,38px)}}

body.light .team-themed{--team-edge:var(--team-primary)}.team-themed .card,.team-themed .stat{border-top-color:var(--team-edge)}

body:not(.light) .card,body:not(.light) .stat{box-shadow:0 3px 14px #0000001f}body:not(.light) .hero h1{color:#ffffff;font-weight:800}body:not(.light) .brand{color:#ffffff}body:not(.light) .career-ratings .stat strong,body:not(.light) .results-ratings .stat strong{font-size:46px;font-weight:700;line-height:1.05}body:not(.light) .career-ratings .stat,body:not(.light) .results-ratings .stat{padding:17px 20px;border-top-width:3px}body:not(.light) .career-ratings .stat>span,body:not(.light) .results-ratings .stat>span{color:#d6dde6;font-weight:600}body:not(.light) .team-themed{--team-edge:color-mix(in srgb,var(--team-primary) 75%,#ffffff)}body:not(.light) .team-themed .card,body:not(.light) .team-themed .stat,body:not(.light) .team-themed .recruit-attributes{border-color:color-mix(in srgb,var(--team-edge) 50%,var(--line));border-top-color:var(--team-edge)}body:not(.light) .team-themed .nav button.active{background:color-mix(in srgb,var(--team-primary) 22%,var(--panel2));color:#ffffff;border-left-color:var(--team-edge)}body:not(.light) .team-themed .card-head>h2,body:not(.light) .team-themed .card-head>div>h2{color:#ffffff}body:not(.light) .team-themed .topbar{border-bottom-color:var(--team-edge)}body:not(.light) .nav button.active{font-weight:600}body:not(.light) button.primary{font-weight:700;box-shadow:0 1px 0 #ffffff4d}body:not(.light) .postseason-results>.card{box-shadow:none}

/* Team identity: primary surfaces, secondary details. */
body:not(.light) .team-themed{--bg:color-mix(in srgb,var(--team-primary) 23%,#090d17);--panel:color-mix(in srgb,var(--team-primary) 25%,#17202e);--panel2:color-mix(in srgb,var(--team-primary) 30%,#202a39);--line:color-mix(in srgb,var(--team-primary) 25%,#46505f);--team-edge:color-mix(in srgb,var(--team-secondary) 58%,#6b7483);background:var(--bg);border-top-color:var(--team-primary)}
body:not(.light) .team-themed .sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--team-secondary) 5%,var(--bg)),var(--bg) 32%);border-right-color:color-mix(in srgb,var(--team-secondary) 30%,var(--line));box-shadow:inset 0 3px var(--team-secondary)}
body:not(.light) .team-themed .player-header{background:none}
body:not(.light) .team-themed .card,body:not(.light) .team-themed .stat,body:not(.light) .team-themed .recruit-attributes{background:var(--panel);border-color:color-mix(in srgb,var(--team-secondary) 20%,var(--line));border-top-color:var(--team-edge);box-shadow:none}
body:not(.light) .team-themed .career-ratings .stat,body:not(.light) .team-themed .results-ratings .stat{background:linear-gradient(135deg,color-mix(in srgb,var(--team-secondary) 7%,var(--panel)),var(--panel) 65%)}
body:not(.light) .team-themed .nav button.active{background:linear-gradient(100deg,color-mix(in srgb,var(--team-secondary) 12%,var(--panel2)),var(--panel2));border-left-color:var(--team-secondary);color:var(--text)}
body:not(.light) .team-themed .topbar{border-bottom-color:color-mix(in srgb,var(--team-secondary) 38%,var(--line))}
body.light .team-themed{--bg:color-mix(in srgb,var(--team-primary) 4%,#f7f6f1);--panel:color-mix(in srgb,var(--team-primary) 3%,#fffefa);--panel2:color-mix(in srgb,var(--team-primary) 7%,#efeee9);background:var(--bg)}
body.light .team-themed .career-ratings .stat,body.light .team-themed .results-ratings .stat{background:linear-gradient(135deg,color-mix(in srgb,var(--team-secondary) 10%,var(--panel)),var(--panel) 70%)}
@media(max-width:620px){body:not(.light) .team-themed .nav button.active{border-left:0;border-bottom-color:var(--team-secondary)}}

.shell.pre-career{--bg:#0e1523;--panel:#192436;--panel2:#253248;--line:#3b4b63;--accent:#ffffff;--ink:#141b28;background:var(--bg)}body.light .shell.pre-career{--bg:#eef1f6;--panel:#ffffff;--panel2:#e3e9f1;--line:#c6d0df;--accent:#283b59;--ink:#ffffff}.opening-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,29%);align-items:center;gap:24px;padding:42px 0 28px;margin-bottom:22px;border-bottom:1px solid var(--line)}.opening-kicker{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:600;letter-spacing:1.5px;color:var(--muted)}.opening-kicker>span{width:24px;height:3px;background:var(--accent)}.opening-hero h1{font-size:clamp(45px,5.5vw,80px);line-height:.98;font-weight:800;letter-spacing:-.9px;margin:18px 0}.opening-hero h1 em{font-style:normal;color:var(--accent)}.opening-copy>p{font-size:14px;line-height:1.7;max-width:390px;color:var(--muted)}.opening-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:24px}.opening-start{background:var(--accent);color:var(--ink);border-color:var(--accent);font-weight:700;padding:13px 18px}.opening-start span{margin-left:12px}.opening-actions>span{font-size:11px;color:var(--muted)}.opening-scale{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:28px;color:var(--muted);font-size:9px;letter-spacing:.7px}.opening-scale strong{font:600 23px 'Barlow Condensed',sans-serif;color:var(--text);margin-right:5px;vertical-align:middle}.creation-art{position:relative;min-width:0;height:310px;display:flex;align-items:center;justify-content:center;isolation:isolate}.creation-art>.creation-mark{width:100%;height:290px;flex:none;background:var(--text)}#playerBuilder{scroll-margin-top:20px}@media(max-width:1100px){.opening-hero{grid-template-columns:minmax(0,1fr) 190px;gap:15px}.opening-hero h1{font-size:clamp(43px,5.6vw,68px)}.creation-art{height:270px}.creation-art>.creation-mark{height:250px}.opening-scale{gap:10px 14px}}@media(max-width:620px){.opening-hero{grid-template-columns:minmax(0,1fr) 95px;gap:10px;padding-top:26px}.opening-hero h1{font-size:clamp(33px,7.3vw,46px);letter-spacing:-.4px}.opening-kicker{font-size:8px;letter-spacing:.7px;gap:6px}.opening-kicker>span{width:12px}.creation-art{height:200px;align-self:start;margin-top:26px}.creation-art>.creation-mark{height:180px}.opening-copy>p{font-size:12px}.opening-actions>span{display:none}.opening-scale{grid-column:1/-1;gap:8px;font-size:8px;letter-spacing:0}.opening-scale strong{font-size:20px}.opening-start{font-size:12px;padding:12px}.opening-actions{margin-top:18px}.opening-scale{margin-top:20px}}

.creation-art{flex-direction:column;gap:8px;height:auto;min-height:310px}.creation-art>.creation-mark{height:270px;flex:0 0 auto}.opening-wordmark{font:800 38px/1.05 'Barlow Condensed',Impact,sans-serif;letter-spacing:.1px;color:var(--text);text-align:center;white-space:nowrap}@media(max-width:1100px){.creation-art{min-height:270px}.creation-art>.creation-mark{height:230px}.opening-wordmark{font-size:31px}}@media(max-width:620px){.creation-art{min-height:200px;gap:5px}.creation-art>.creation-mark{height:175px}.opening-wordmark{font-size:20px}}

.creation-art{gap:0}.creation-art>.creation-mark{-webkit-mask-position:center bottom;mask-position:center bottom}.opening-wordmark{margin-top:-14px}@media(max-width:620px){.creation-art{gap:0}.opening-wordmark{margin-top:-5px}}

.national-recruit-rank{display:flex;align-items:baseline;gap:10px;margin-top:12px}.national-recruit-rank strong{font:700 27px/1 'Barlow Condensed',sans-serif;color:var(--text)}.national-recruit-rank span{font-size:10px;letter-spacing:.8px;color:var(--muted)}

.season-outcome{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,1.5fr);gap:20px;margin:0 0 24px;padding:18px 0 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.outcome-record>strong{display:block;font:700 48px/1.1 'Barlow Condensed',sans-serif;color:var(--text);margin:7px 0}.outcome-record>.note{font-size:11px}.outcome-postseason{border-left:2px solid var(--team-secondary,var(--accent));padding-left:20px;align-self:center}.outcome-postseason h3{font:700 30px/1.1 'Barlow Condensed',sans-serif;color:var(--text);margin:9px 0}.outcome-postseason p{font-size:12px;line-height:1.6;color:var(--muted)}@media(max-width:620px){.season-outcome{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.outcome-record{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:15px}.outcome-record>strong{grid-column:2;grid-row:1/3;font-size:40px;margin:0}.outcome-postseason{padding-left:14px}.outcome-postseason h3{font-size:28px}}

.season-numbers{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px 12px}.season-numbers strong{font-size:40px}.season-numbers span{font-size:9px;letter-spacing:.6px}@media(max-width:1050px){.season-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.season-numbers strong{font-size:36px}}

.season-honors{margin:22px 0;padding:20px;border:1px solid var(--team-secondary,var(--line));border-left:4px solid var(--team-secondary,var(--accent));border-radius:10px;background:var(--panel2)}.season-honors h3{font:700 25px/1.15 'Barlow Condensed',sans-serif;letter-spacing:1px;color:var(--text)}.season-honors .honors-list{margin:14px 0 0;gap:10px}.season-honors .badge{font-size:14px;line-height:1.4;padding:10px 14px;color:var(--text);border:1px solid var(--line);background:var(--panel);font-weight:600}.outcome-postseason .season-champion{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:12px;color:var(--text)}

.career-accolades{border-top:3px solid var(--team-secondary,var(--accent))}.career-accolades>summary{font:700 27px/1.2 'Barlow Condensed',sans-serif;letter-spacing:1px;color:var(--text)}.career-accolades .career-honors-group h3{font-size:19px;margin-top:22px}.career-accolades .honors-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 0}.career-honor{display:flex;align-items:center;gap:16px;min-width:0;padding:15px 18px;background:var(--panel2);border:1px solid var(--line);border-radius:8px}.career-honor>strong{font:700 33px/1 'Barlow Condensed',sans-serif;flex-shrink:0;color:var(--text)}.career-honor>span{font-size:14px;line-height:1.4;font-weight:600;color:var(--text)}.career-honor.major-honor{border-left:3px solid var(--team-secondary,var(--accent));padding-left:16px}.career-honor.major-honor>strong{font-size:40px}@media(max-width:620px){.career-accolades .honors-list{grid-template-columns:1fr}.career-honor{padding:13px 15px}}

html{overflow-x:clip;overscroll-behavior-x:none}body{min-width:0;overflow-x:clip}#app,.shell,.main,#content{min-width:0;max-width:100%}.shell{width:100%}.main{min-width:0}.card,.grid>*,.split>*,.fields>*,.offers>*,.player-header>*,.topbar>*{min-width:0}.table-wrap,.standings-scroll{max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain}.topbar .eyebrow{overflow-wrap:anywhere}.topbar .status{flex-shrink:0}.hero h1,.card h2,.kv,.award,.career-honor>span{overflow-wrap:anywhere}.kv>*,.award>*{min-width:0}.team-themed .sidebar,body:not(.light) .team-themed .sidebar{box-shadow:none}img,svg{max-width:100%}.toast{max-width:min(400px,calc(100vw - 32px))}@media(max-width:620px){.topbar{gap:10px}.topbar .eyebrow{font-size:9px;letter-spacing:1px}.topbar .status{font-size:8px}.card-head{flex-wrap:wrap}}

.attribute{grid-template-columns:145px minmax(0,1fr) 78px}.recruit-attribute-grid .attribute{grid-template-columns:145px minmax(0,1fr) 78px}.attribute-delta{font-size:11px;white-space:nowrap;margin-left:4px}.training-gains{margin:0 0 22px}.training-gains>div{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.training-gain{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--panel);font-size:12px}.training-gain>span{color:var(--muted)}.training-gain>strong{font-size:17px}.season-attribute-changes .recruit-attribute-grid{column-gap:24px}@media(max-width:700px){.attribute,.recruit-attribute-grid .attribute{grid-template-columns:125px minmax(0,1fr) 70px;gap:8px}.training-gain{flex-wrap:wrap}}

.contract-earnings{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.contract-earnings strong{display:block;margin-top:6px;font:700 36px/1.1 'Barlow Condensed',sans-serif}.contract-earnings .note{max-width:320px}@media(min-width:621px){.sidebar{top:0;bottom:0;height:100vh;height:100dvh;overflow:hidden;padding-bottom:max(20px,env(safe-area-inset-bottom))}.sidebar>.brand,.sidebar>.subbrand{flex-shrink:0}.sidebar .nav{flex:0 0 auto;min-height:0;overflow:visible;align-content:start}.sidebar .bottom{flex-shrink:0;margin-top:16px;padding-top:10px}.sidebar .bottom button{white-space:normal}.sidebar .world-year{padding-top:12px}.sidebar .world-year strong{font-size:15px}}@media(min-width:621px) and (max-height:760px){.sidebar{padding-top:20px}.sidebar .subbrand{margin-bottom:20px}.sidebar .nav button{padding-top:10px;padding-bottom:10px}.sidebar .bottom{gap:8px;margin-top:10px}}

@media(min-width:621px){.sidebar{padding-top:clamp(10px,2.8dvh,24px);padding-bottom:max(12px,env(safe-area-inset-bottom))}.sidebar .subbrand{margin-top:6px;margin-bottom:clamp(10px,2.5dvh,24px)}.sidebar .nav{gap:clamp(2px,.55dvh,6px)}.sidebar .nav button{padding-top:clamp(4px,1.15dvh,11px);padding-bottom:clamp(4px,1.15dvh,11px);line-height:18px}.sidebar .bottom{margin-top:auto;padding-top:12px;gap:10px}.sidebar .world-year{padding-top:10px}.sidebar .world-year strong{font-size:14px}}@media(min-width:621px) and (max-height:600px){.sidebar .world-year{display:none}.sidebar .bottom{padding-top:8px;gap:0}.sidebar .bottom button{padding-top:7px;padding-bottom:7px}.sidebar .nav button{font-size:12px;line-height:16px}}@media(min-width:621px) and (max-height:460px){.sidebar .subbrand{display:none}.sidebar .brand{margin-bottom:10px;font-size:24px}.sidebar .brand .brand-logo{height:30px}.sidebar .nav{gap:2px}.sidebar .nav button{padding-top:4px;padding-bottom:4px}.sidebar .bottom button{padding-top:5px;padding-bottom:5px}}

.career-postseason{margin:20px 0 0;background:var(--panel2)}.career-postseason>summary{font-weight:600;color:var(--text)}.career-postseason .table-wrap{margin-top:14px}

.career-section-heading{display:flex;align-items:center;gap:18px;flex-wrap:wrap;min-width:0}.career-section-heading .row-actions{margin:0;gap:6px}.career-section-heading .row-actions button{font-size:11px;padding:7px 10px}

.career-stats-header p{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px}.career-stats-header p>.draft-result{display:inline-block;font:600 11px/1.5 'DM Sans',sans-serif;letter-spacing:.6px;margin:0;flex-shrink:0;color:var(--text)}

.career-quick-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.contract-strip .career-quick-links{margin:0;flex-shrink:0}.career-quick-links button{white-space:nowrap}

.player-header h1{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px}.player-header h1>.draft-result{display:inline-block;font:600 11px/1.5 'DM Sans',sans-serif;letter-spacing:.6px;margin:0;flex-shrink:0;color:var(--text)}

.contract-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0 16px}.contract-page-heading h1{font-size:44px;margin:0 0 6px}.contract-career-earnings{text-align:right;flex-shrink:0}.contract-career-earnings strong{display:block;font:700 30px/1.1 'Barlow Condensed',sans-serif;margin-top:5px}.contract-key-stats{gap:10px;margin-bottom:14px}.contract-key-stats .stat{padding:12px 16px}.contract-key-stats .stat strong{font-size:28px}.contract-page>.card{padding:18px 22px;margin-bottom:12px}.contract-page .card-head{margin-bottom:12px}.contract-page .kv{padding:7px 0}.contract-page .actions{margin-top:12px}@media(max-width:620px){.contract-page-heading{gap:12px;align-items:flex-start}.contract-page-heading h1{font-size:34px}.contract-career-earnings strong{font-size:25px}.contract-career-earnings .section-label{font-size:8px;letter-spacing:1px}.contract-key-stats .stat{padding:10px}.contract-key-stats .stat strong{font-size:25px}}

.roster-star{font-weight:700;color:var(--text)}

.action-status{padding:12px 16px;margin:16px 0;border-left:2px solid var(--line);background:var(--panel);color:var(--text);font-size:12px;line-height:1.6}.action-status[hidden]{display:none}.trade-goals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.trade-goals .note{margin:12px 0}.draft-jersey-profile{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:20px;padding:20px;margin-top:20px;background:var(--panel2);border:1px solid var(--line);border-left:3px solid var(--draft-secondary);border-radius:10px}.draft-jersey-profile h2{margin:8px 0}.draft-jersey-profile h3{font-size:20px;margin-bottom:8px}.draft-jersey-profile .jersey-preview{margin:0;width:180px}.draft-jersey-profile .jersey-body{fill:color-mix(in srgb,var(--draft-primary) 60%,#111725);stroke:var(--draft-secondary)}.draft-jersey-profile .jersey-trim{stroke:var(--draft-secondary)}.draft-jersey-profile .jersey-surname,.draft-jersey-profile .jersey-digits{fill:#fff}@media(max-width:850px){.trade-goals{grid-template-columns:1fr}}@media(max-width:620px){.draft-jersey-profile{grid-template-columns:minmax(0,1fr) 125px;gap:10px;padding:14px}.draft-jersey-profile .jersey-preview{width:125px}}

.retirement-story .help{margin:12px 0 18px}.retirement-story .career-secondary{margin-bottom:0}.recap-numbers{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin-top:20px}.recap-numbers span{font-size:10px;letter-spacing:1px;color:var(--muted);text-transform:uppercase}.recap-numbers strong{display:block;font:700 34px/1.2 'Barlow Condensed',sans-serif;margin-top:6px}.recap-highs{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:14px 0}.recap-highs strong{text-align:right}@media(max-width:800px){.recap-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:500px){.recap-highs{grid-template-columns:1fr}}

/* Career gallery and focused history views */
[hidden]{display:none!important}.records-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.career-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.career-tile{min-width:0;margin:0;border-top:3px solid var(--career-secondary);overflow:hidden}.career-tile-top{display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:10px;align-items:center;background:linear-gradient(115deg,color-mix(in srgb,var(--career-primary) 20%,transparent),transparent);margin:-24px -24px 0;padding:24px}.career-tile h2{font-size:32px;overflow-wrap:anywhere;margin:12px 0 8px}.career-tile .jersey-preview.compact{width:118px;margin:0}.career-tile .jersey-preview figcaption{display:none}.career-tile .jersey-body{fill:color-mix(in srgb,var(--career-primary) 65%,#172132);stroke:var(--career-secondary)}.career-tile .jersey-trim{stroke:var(--career-secondary)}.career-tile .jersey-digits,.career-tile .jersey-surname{fill:white}.vault-averages{display:grid;grid-template-columns:repeat(3,1fr);padding:18px 0;border-bottom:1px solid var(--line)}.vault-averages strong{display:block;font:700 36px 'Barlow Condensed',sans-serif}.vault-averages span{font-size:10px;letter-spacing:1px;color:var(--muted)}.career-honors{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}.career-honors span{font-size:11px;padding:6px 9px;border:1px solid var(--line);border-radius:4px}.career-destination{min-height:32px}.career-tile-actions,.offer-actions{display:flex;gap:8px;margin-top:16px}.career-tile-actions button,.offer-actions button{flex:1;min-width:0;margin-top:0}.finals-history-entry{padding:20px 0}.finals-history-entry+.finals-history-entry{border-top:1px solid var(--line)}@media(max-width:1000px){.career-gallery{grid-template-columns:1fr}}@media(max-width:480px){.career-tile-top{grid-template-columns:minmax(0,1fr) 90px}.career-tile .jersey-preview.compact{width:90px}.career-tile h2{font-size:28px}.offer-actions{flex-wrap:wrap}.offer-actions button{flex-basis:100%}}

.legends-explainer{max-width:760px;margin-bottom:20px;line-height:1.7}.legends-board,.league-history{padding:22px}.legend-rank{font:700 32px 'Barlow Condensed',sans-serif;color:var(--muted)}.legend-first{background:color-mix(in srgb,var(--accent) 6%,transparent)}.legend-first .legend-rank,.history-champion{color:var(--accent)}.legend-honors{display:flex;flex-direction:column;gap:5px;font-size:11px}.legend-row td{vertical-align:middle}.legend-row td:last-child button{display:block;width:100%;margin:4px 0}.legend-hof{display:inline-block;font-size:9px;letter-spacing:.7px;color:var(--accent);margin-top:6px}.legend-row details{margin-top:7px;font-size:11px}.league-history td{vertical-align:top;min-width:125px}.league-history td:first-child{min-width:150px}.league-history .leader-team{line-height:1.6}

.past-careers-tools{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 20px}.hall-tribute{border-top:3px solid #d7bc72;background:linear-gradient(120deg,color-mix(in srgb,#d7bc72 12%,var(--panel)),var(--panel))}.hall-tribute .section-label{color:#c9ac63}.hall-tribute h2{font-size:44px;margin:12px 0 8px}.hall-tribute h3{font-size:25px}.retired-tributes{padding:0;overflow:hidden}.jersey-tribute{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:28px;padding:24px;background:linear-gradient(110deg,color-mix(in srgb,var(--tribute-primary) 22%,transparent),transparent);border-left:3px solid var(--tribute-secondary)}.jersey-tribute+.jersey-tribute{border-top:1px solid var(--line)}.jersey-tribute .jersey-preview.compact{width:150px;margin:0}.jersey-tribute .jersey-preview figcaption{display:none}.jersey-tribute .jersey-body{fill:color-mix(in srgb,var(--tribute-primary) 65%,#172132);stroke:var(--tribute-secondary)}.jersey-tribute .jersey-trim{stroke:var(--tribute-secondary)}.jersey-tribute .jersey-surname,.jersey-tribute .jersey-digits{fill:white}.jersey-tribute h2{font-size:32px;margin:10px 0}.jersey-tribute h3{margin-bottom:12px}@media(max-width:550px){.jersey-tribute{grid-template-columns:100px minmax(0,1fr);gap:14px;padding:16px}.jersey-tribute .jersey-preview.compact{width:100px}.jersey-tribute h2{font-size:26px}}

.college-scouting{margin:14px 0;padding:12px 0;border-block:1px solid var(--line)}.college-scouting p+p{margin-top:8px}.college-growth{margin:12px 0;line-height:1.7}

.nav button{display:flex;align-items:center;gap:11px}.nav .nav-icon{width:19px;height:19px;flex:0 0 19px;opacity:.8}.nav button:hover .nav-icon,.nav button.active .nav-icon{opacity:1}.nav button span{min-width:0}.nav button.active .nav-icon{stroke-width:1.95}@media(max-width:620px){.nav button{gap:7px}.nav .nav-icon{width:16px;height:16px;flex-basis:16px}}@media(min-width:621px) and (max-height:600px){.nav .nav-icon{width:17px;height:17px;flex-basis:17px}}

/* Team identity stays readable in both display modes. */
body.light .team-themed .sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--team-secondary) 9%,var(--bg)),var(--bg) 36%);border-right-color:var(--line)}body.light .team-themed .card,body.light .team-themed .stat,body.light .team-themed .recruit-attributes{background:var(--panel);border-color:var(--line);border-top-color:var(--team-edge)}body.light .team-themed .nav button.active{background:linear-gradient(105deg,color-mix(in srgb,var(--team-secondary) 10%,var(--panel2)),var(--panel2));color:var(--text);border-left-color:var(--team-primary)}body.light .team-themed .topbar{border-bottom-color:var(--line)}body.light .team-themed .player-header{background:none}.team-themed button.primary{background:var(--accent);color:var(--ink)}body:not(.light) .team-themed .nav button.active{border-left-color:var(--team-trim)}body:not(.light) .team-themed .sidebar{border-right-color:var(--line)}body:not(.light) .team-themed .card,body:not(.light) .team-themed .stat,body:not(.light) .team-themed .recruit-attributes{border-color:var(--line);border-top-color:var(--team-edge)}@media(max-width:620px){body.light .team-themed .nav button.active,body:not(.light) .team-themed .nav button.active{border-left:0;border-bottom:2px solid var(--team-edge)}}

.season-award-strip{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:2px;margin-left:6px;vertical-align:middle;white-space:nowrap}.season-award-strip .season-award-symbol{width:15px;height:16px;flex-basis:15px}.season-award-strip svg{width:14px;height:14px}.season-award-strip small{font-size:9px}.career-highs{margin-top:14px}.season-award-symbol{display:inline-flex;width:20px;height:20px;flex:0 0 20px;color:var(--accent);align-items:center;justify-content:center;border-radius:3px;vertical-align:middle}.season-award-symbol svg{width:17px;height:17px}.season-award-symbol:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stat-with-award{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.award-symbol-key{margin:0 0 18px;font-size:12px;color:var(--muted)}.award-symbol-key>div{display:flex;gap:12px 20px;flex-wrap:wrap;padding:15px 0}.award-symbol-key>div>span{display:inline-flex;align-items:center;gap:5px}.award-symbol-key p{flex-basis:100%;line-height:1.7}.jersey-conflict p{margin:10px 0;line-height:1.7}.jersey-conflict-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.jersey-conflict-actions select{width:auto;min-width:110px}@media(max-width:550px){.jersey-conflict-actions select{width:100%}}

.builder-step-heading{flex-wrap:wrap;gap:10px}.builder-step-heading .circle{flex-shrink:0}button.builder-reroll{margin-left:auto;white-space:nowrap;min-height:42px;padding:10px 16px;font-size:14px;font-weight:700;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--panel));color:var(--text)}button.builder-reroll:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 20%,var(--panel))}.builder-submit{display:block;margin-top:20px}.builder-submit .button-block{display:block;width:100%;margin:0;padding:14px 18px;font-size:14px}@media(max-width:450px){.builder-step-heading{column-gap:8px}.builder-step-heading strong{font-size:13px}button.builder-reroll{font-size:13px;padding:10px 12px}}

.development-season{margin:12px 0;line-height:1.7}.development-season strong{color:var(--text)}

.home-menu{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding:6px 0 24px}.home-save p{margin:8px 0 0;color:var(--muted);line-height:1.6}.home-save strong{color:var(--text)}.home-links{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:620px){.home-menu{align-items:flex-start}.home-links{width:100%}}

/* Close the space left by removed page labels and descriptions. */
.topbar.topbar-compact{height:60px}.hero[data-no-kicker]{padding-top:20px;padding-bottom:20px}.hero[data-no-kicker] h1{margin-top:0;margin-bottom:10px}.hero[data-no-description]{padding-bottom:18px}.hero[data-no-description] h1{margin-bottom:0}.hero[data-no-kicker].player-header{padding-bottom:12px}.prospect-reputation{padding-bottom:14px;margin-bottom:14px}.prospect-reputation>span{margin-top:5px}.main{padding-bottom:28px}footer{margin-top:16px}@media(max-width:620px){.topbar.topbar-compact{height:48px}.hero[data-no-kicker]{padding-top:16px;padding-bottom:16px}}

/* Both conferences fit their panels; names and team direction wrap within the table. */
.standings-scroll,.standings-table-wrap{overflow:visible}.standings-columns{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;gap:20px}.standings-table{table-layout:fixed;white-space:normal;width:100%}.standings-table td,.standings-table th{overflow-wrap:anywhere;vertical-align:middle}.standings-table td:nth-child(2){line-height:1.4}.standings-direction{display:block;margin-top:3px;font-size:10px;line-height:1.4;color:var(--muted)}.conference-panel .standings-table th:first-child{width:10%}.conference-panel .standings-table th:nth-child(2){width:48%}.conference-panel .standings-table th:nth-child(3),.conference-panel .standings-table th:nth-child(4){width:13%}.conference-panel .standings-table th:nth-child(5){width:16%}.conference-panel td,.conference-panel th{padding:11px 4px}.conference-panel .team-dot{margin-right:4px}@media(max-width:800px){.standings-columns{gap:12px}.conference-panel h3{font-size:18px}.conference-panel td,.conference-panel th{padding:9px 2px;font-size:10px}.standings-direction{font-size:9px}}@media(max-width:400px){.conference-panel td,.conference-panel th{font-size:9px}.conference-panel h3{font-size:16px}.conference-panel .team-dot{display:none}.standings-columns{gap:8px}}
.career-stats-tabs{gap:8px;margin-bottom:20px;flex-wrap:wrap}.playoff-history>.card-head{margin-bottom:16px}.playoff-history-season>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:disclosure-closed}.playoff-history-season>summary strong{font:600 23px 'Barlow Condensed',sans-serif}.playoff-history-season>summary small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.playoff-history-finish{display:flex;align-items:center;gap:8px;text-align:right;font-weight:600}.playoff-history-series{margin-top:20px}.playoff-history-season[open]>summary{padding-bottom:16px;border-bottom:1px solid var(--line)}@media(max-width:620px){.career-stats-tabs button{flex:1;padding:9px 7px}.playoff-history-season{padding:18px}.playoff-history-season>summary{gap:10px}.playoff-history-finish{font-size:12px;max-width:50%}}
.playoff-history-season>summary::after{content:'+';font-size:20px;color:var(--muted);flex-shrink:0}.playoff-history-season[open]>summary::after{content:'−'}.playoff-history-season>summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}

.draft-stage{margin-top:20px}.draft-stage .draft-feed{min-height:145px}.draft-result .card-head{margin-bottom:12px}.draft-result-title{font-size:clamp(36px,4vw,56px);margin:0 0 12px}.draft-selection-reason{max-width:900px}.draft-result-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.85fr);gap:22px;align-items:center;margin-top:20px}.draft-result-grid>.draft-jersey-profile{margin:0;padding:16px;grid-template-columns:minmax(0,1fr) 135px}.draft-result-grid .jersey-preview{width:135px}.draft-result-offer{min-width:0}.draft-result-offer h2{margin:10px 0}.draft-result-offer .actions{margin-top:16px;flex-direction:column}.draft-result-offer .note{line-height:1.6}@media(max-width:850px){.draft-result-grid{grid-template-columns:1fr;gap:16px}.draft-result-grid>.draft-jersey-profile{grid-template-columns:minmax(0,1fr) 110px}.draft-result-grid .jersey-preview{width:110px}.draft-result-offer .actions{flex-direction:row}}@media(max-width:480px){.draft-stage{padding:16px}.draft-stage .draft-broadcast{margin:14px 0}.draft-stage .draft-pick{padding:10px 0}.draft-result-grid{margin-top:14px}.draft-result-offer .actions{flex-direction:column}}
.draft-stage .draft-pick.detailed{padding:8px 0;row-gap:3px;font-size:12px}.draft-stage .draft-player-meta{font-size:11px}.draft-stage .draft-pick.detailed b{font-size:20px}.draft-stage .draft-broadcast{margin:16px 0;padding:14px}

.series-outcome.positive{color:var(--green)}.series-outcome.negative{color:var(--red)}
.signed-extension{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.signed-extension h3{margin-bottom:8px}.signed-extension>.note{margin-bottom:8px}
.retirement-career-totals{margin:20px 0 0}.retirement-career-totals[open]>summary{margin-bottom:12px}
.career-work-grid{grid-template-columns:minmax(0,1fr) minmax(360px,1.08fr);align-items:start}
.career-attributes h2{font-size:32px;margin-bottom:12px}
.career-attributes>.note{font-size:14px;line-height:1.5}
.career-attributes .attribute{grid-template-columns:minmax(0,max-content) max-content minmax(0,1fr);column-gap:12px;row-gap:7px;margin:16px 0;min-height:30px;font-size:16px;line-height:1.45}
.career-attributes .attribute>span:first-child{overflow-wrap:break-word}
.career-attributes .attribute>span:first-child small{display:block;font-size:12px}
.career-attributes .attribute>strong{grid-column:2;grid-row:1;text-align:left;font-size:20px;font-variant-numeric:tabular-nums}
.career-attributes .attribute-delta{font-size:12px}
.career-attributes .track{grid-column:1/-1;grid-row:2;height:8px;border-radius:5px}
@media(max-width:1000px){.career-work-grid{grid-template-columns:minmax(0,1fr)}}
.save-warning[hidden]{display:none}.save-warning{border-color:var(--red);margin:20px 0}.save-warning p{line-height:1.5}.save-recovery{max-width:620px;margin:10vh auto;padding:28px}.save-recovery p{line-height:1.6;margin:16px 0}

.game-footer{display:block;line-height:1.6}.game-footer>p{max-width:850px;margin:8px 0 0;font-size:12px;letter-spacing:normal;text-transform:none;color:var(--muted)}
