/* Theme tokens: all theme-dependent visual values live here. */
:root,
:root[data-theme="nfl"]{
  color-scheme:light;
  --bg:#eef2f6;--pattern-dot:rgba(12,35,64,.055);--surface:#ffffff;--surface-soft:#f5f7fa;--surface-strong:#e4e9ef;
  --text:#111827;--text-muted:#596273;--line:#a9b3c1;--line-soft:rgba(17,24,39,.14);
  --nav-bg:#0c2340;--nav-text:#ffffff;--nav-muted:#aebccd;--nav-line:#314761;--nav-active-bg:#ffffff;--nav-active-text:#0c2340;--nav-border:#d7dee7;
  --header-bg:rgba(238,242,246,.96);--accent:#d50a0a;--accent-contrast:#ffffff;--accent-soft:#f4dada;
  --table-head-bg:#0c2340;--table-head-text:#ffffff;--status-bg:#0c2340;--status-text:#ffffff;
  --button-bg:#ffffff;--button-text:#111827;--danger:#a31515;--positive:#146c2e;--negative:#a31515;
  --shadow:0 10px 24px rgba(12,35,64,.10);--logo-filter:var(--logo-filter);
  --serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--display:var(--sans);
}
:root[data-theme="crt"]{
  color-scheme:dark;
  --bg:#020704;--pattern-dot:rgba(87,255,118,.08);--surface:#061009;--surface-soft:#08180d;--surface-strong:#0c2112;
  --text:#9dffaf;--text-muted:#5ccf73;--line:#237a36;--line-soft:rgba(87,255,118,.20);
  --nav-bg:#000000;--nav-text:#8cff9f;--nav-muted:#4ebd63;--nav-line:#174d24;--nav-active-bg:#0e2a16;--nav-active-text:#b5ffc1;--nav-border:#237a36;
  --header-bg:rgba(2,7,4,.96);--accent:#57ff76;--accent-contrast:#001503;--accent-soft:#10351a;
  --table-head-bg:#0d2b15;--table-head-text:#aaffb8;--status-bg:#57ff76;--status-text:#001503;
  --button-bg:#061009;--button-text:#9dffaf;--danger:#ff6b6b;--positive:#74ff8b;--negative:#ff7474;
  --shadow:0 0 18px rgba(87,255,118,.08);--logo-filter:grayscale(1) invert(1) sepia(1) saturate(6) hue-rotate(75deg) brightness(1.2);
  --serif:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--sans:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--display:var(--mono);
}
:root[data-theme="aghs"]{
  color-scheme:light;
  --bg:#f4f6fa;--pattern-dot:rgba(15,47,91,.055);--surface:#ffffff;--surface-soft:#f7f8fb;--surface-strong:#e8ecf4;
  --text:#10233f;--text-muted:#5c6675;--line:#9aa9be;--line-soft:rgba(16,35,63,.14);
  --nav-bg:#0f2f5b;--nav-text:#ffffff;--nav-muted:#c4cedd;--nav-line:#35517a;--nav-active-bg:#d8aa2e;--nav-active-text:#10233f;--nav-border:#d8aa2e;
  --header-bg:rgba(244,246,250,.96);--accent:#d8aa2e;--accent-contrast:#10233f;--accent-soft:#f5e8bd;
  --table-head-bg:#0f2f5b;--table-head-text:#ffffff;--status-bg:#d8aa2e;--status-text:#10233f;
  --button-bg:#ffffff;--button-text:#10233f;--danger:#98252b;--positive:#1c6b3a;--negative:#98252b;
  --shadow:0 10px 24px rgba(15,47,91,.10);--logo-filter:var(--logo-filter);
  --serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--display:Georgia,'Times New Roman',serif;
}

*{box-sizing:border-box}html{background:var(--nav-bg);color:var(--text)}body{margin:0;font-family:var(--sans);color:var(--text);background:var(--bg);min-height:100vh;background-image:radial-gradient(var(--pattern-dot) 1px,transparent 1px);background-size:7px 7px}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--nav-bg);color:var(--nav-text);border-right:4px double var(--nav-border);display:flex;flex-direction:column;overflow:hidden}.brand-block{padding:24px 22px 17px;border-bottom:1px solid var(--nav-line);display:flex;gap:13px;align-items:flex-start}.brand-logo{width:46px;height:46px;object-fit:contain;filter:var(--logo-filter)}.eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.16em;font-weight:800;text-transform:uppercase;color:var(--text-muted)}.sidebar .eyebrow{color:var(--nav-muted)}.brand-block h1{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;font-size:27px;line-height:.88;margin:5px 0 7px}.brand-block p{margin:0;color:var(--nav-muted);font-family:var(--serif);font-style:italic;font-size:12px}.main-nav{padding:15px 12px;display:grid;gap:5px}.nav-button{border:0;background:transparent;color:var(--nav-muted);text-align:left;padding:11px 12px;border-left:3px solid transparent;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.nav-button span{font-family:var(--mono);font-size:10px;color:var(--nav-muted);margin-right:10px}.nav-button:hover,.nav-button.active{background:var(--nav-active-bg);color:var(--nav-active-text);border-left-color:var(--accent)}.nav-button.active span{color:var(--nav-active-text)}.sidebar-controls{margin-top:auto;padding:12px 14px;border-top:1px solid var(--nav-line);display:grid;gap:6px}.sidebar-controls label{font-family:var(--mono);font-size:8px;letter-spacing:.12em;color:var(--nav-muted)}.theme-select{width:100%;background:var(--nav-bg);color:var(--nav-text);border-color:var(--nav-line)}
.manager-identity-form{display:grid;grid-template-columns:minmax(150px,220px) minmax(170px,260px) auto auto;gap:8px;align-items:end}.manager-identity-form label{display:grid;gap:5px}.compact-input{min-width:0;width:100%}
.sidebar-footer{font-family:var(--mono);font-size:9px;letter-spacing:.04em;padding:11px 16px;border-top:1px solid var(--nav-line);color:var(--nav-muted);display:grid;gap:3px}.sidebar-footer strong{color:var(--nav-text)}.main-panel{min-width:0;display:flex;flex-direction:column;min-height:100vh}.topbar{height:84px;position:sticky;top:0;z-index:15;background:var(--header-bg);backdrop-filter:blur(10px);border-bottom:3px double var(--text);display:flex;justify-content:space-between;align-items:center;padding:12px 24px}.topbar h2{font-family:var(--display);text-transform:uppercase;font-size:26px;margin:2px 0 0}.topbar-left{display:flex;align-items:center;gap:12px}.topbar-tools{display:flex;align-items:center;gap:10px}.badge,.small-tag{font-family:var(--mono);font-weight:900;font-size:9px;letter-spacing:.08em;border:1px solid var(--text);padding:6px 8px}.badge.warning{background:var(--status-bg);color:var(--status-text)}.status-chip,.manager-chip{border-left:1px solid var(--line);padding-left:12px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px;min-width:82px}.manager-chip{display:block;min-width:110px}.status-chip small,.manager-chip small{font-family:var(--mono);font-size:9px;color:var(--text-muted);display:block}.status-chip strong,.manager-chip strong{font-size:12px}.status-dot{width:8px;height:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 3px var(--accent-soft)}.mobile-menu{display:none}.alert-host{position:fixed;z-index:50;right:22px;top:98px;display:grid;gap:8px;max-width:360px}.alert{background:var(--status-bg);color:var(--status-text);border:1px solid var(--line);padding:12px 14px;box-shadow:var(--shadow);font-size:12px}.alert.error{background:var(--danger)}.view{display:none;padding:22px 24px 28px;animation:fadeIn .16s ease}.view.active{display:block}@keyframes fadeIn{from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}.paper-card{background:var(--surface);border:1px solid var(--text);box-shadow:var(--shadow);padding:18px;position:relative}.paper-card:before{content:"";position:absolute;inset:4px;border:1px solid var(--line-soft);pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.7fr .8fr .8fr;gap:14px}.hero-card{min-height:238px;background:linear-gradient(135deg,var(--surface),var(--surface-strong));overflow:hidden}.hero-card:after{content:"FT";position:absolute;right:-8px;bottom:-30px;font-family:var(--serif);font-size:150px;font-weight:900;color:var(--line-soft)}.week-lockup{display:flex;align-items:baseline;gap:10px;margin-top:12px}.week-lockup span{font-family:var(--display);font-weight:800;font-size:24px}.week-lockup strong{font-family:var(--display);font-size:92px;line-height:.8}.hero-card h3{font-family:var(--display);font-size:20px;margin:20px 0 5px}.hero-card p{color:var(--text-muted);margin:0}.hero-actions{display:flex;gap:8px;margin-top:20px}.button{border:1px solid var(--text);background:var(--surface);padding:9px 12px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;box-shadow:2px 2px 0 var(--text)}.button:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--text)}.button.primary{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.button.danger{border-color:var(--danger);color:var(--danger);box-shadow:2px 2px 0 var(--danger)}.text-button{background:none;border:0;text-decoration:underline;padding:0;margin-top:10px;font-weight:800;font-size:11px}.score-card,.data-card{display:flex;flex-direction:column}.big-score{margin:18px 0 13px;border-bottom:3px double var(--text);padding-bottom:12px}.big-score strong{font-family:var(--display);font-size:62px;line-height:.8}.big-score span{font-family:var(--mono);font-size:11px;margin-left:5px}.metric-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px dotted var(--line);padding:7px 0;font-size:11px}.metric-row strong{font-family:var(--mono)}.readiness{font-family:var(--display);font-weight:900;font-size:26px;margin:13px 0;border-bottom:3px double var(--text);padding-bottom:10px}.content-grid{display:grid;gap:14px}.content-grid.two-one{grid-template-columns:2fr 1fr;margin-top:14px}.card-heading,.view-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.card-heading h3,.view-toolbar h3,.paper-card>h3{font-family:var(--display);text-transform:uppercase;font-size:20px;margin:2px 0}.card-heading>span{font-family:var(--mono);font-size:9px;font-weight:800;color:var(--text-muted)}.table-wrap{overflow:auto;position:relative}table{width:100%;border-collapse:collapse;font-size:11px}th{background:var(--accent);color:var(--accent-contrast);text-align:left;font-family:var(--mono);font-size:9px;letter-spacing:.06em;padding:8px 9px;white-space:nowrap}td{padding:8px 9px;border-bottom:1px dotted var(--line);vertical-align:middle}tbody tr:hover{background:var(--surface-soft)}td.num{font-family:var(--mono);font-weight:800}.team-current{font-weight:900}.note-stack{display:grid;gap:8px}.note{border-left:3px solid var(--accent);background:var(--surface-soft);padding:9px 10px;font-size:11px}.note strong{display:block;font-family:var(--serif);text-transform:uppercase;margin-bottom:3px}.summary-strip{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--text);margin-bottom:14px;background:var(--accent);color:var(--accent-contrast)}.summary-item{padding:12px;border-right:1px solid var(--line)}.summary-item:last-child{border-right:0}.summary-item small{font-family:var(--mono);font-size:8px;display:block;color:var(--text-muted)}.summary-item strong{font-family:var(--display);font-size:22px}.roster-columns{display:grid;grid-template-columns:1fr 1.3fr;gap:14px}.roster-list{display:grid;gap:8px}.roster-card{border:1px solid var(--text);background:var(--surface-soft);padding:10px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.roster-card .name{font-family:var(--display);font-weight:900;font-size:15px}.roster-card .meta{font-family:var(--mono);font-size:9px;color:var(--text-muted);margin-top:3px}.roster-card .score{font-family:var(--display);font-size:30px;font-weight:900;line-height:1}.roster-card button{grid-column:1/-1;border:0;background:none;text-align:left;padding:0;font-size:9px;text-decoration:underline;font-weight:800}.filters,.toolbar-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.input,.select{border:1px solid var(--text);background:var(--surface);padding:8px 9px;font-size:11px;min-height:35px}.input{min-width:200px}.pool-table{padding:0}.pool-table:before{display:none}.pos-tag,.status-tag{display:inline-block;border:1px solid var(--text);padding:3px 5px;font-family:var(--mono);font-size:8px;font-weight:900}.status-tag.free{background:var(--accent);color:var(--accent-contrast)}.trend-up{font-weight:900}.trend-down{color:var(--negative);font-weight:900}.detail-button{background:none;border:0;text-decoration:underline;font-size:10px;font-weight:800}.draft-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;background:var(--accent);color:var(--accent-contrast)}.draft-header p{color:var(--nav-muted);font-size:11px}.draft-header h3{font-family:var(--display);font-size:28px;margin:3px 0}.draft-clock{border:1px solid var(--table-head-text);padding:10px 14px;min-width:220px;text-align:right}.draft-clock small{font-family:var(--mono);font-size:8px;display:block}.draft-clock strong{font-family:var(--display);font-size:20px;display:block}.draft-clock span{font-family:var(--mono);font-size:9px}.draft-layout{display:grid;grid-template-columns:2fr .8fr;gap:14px}.draft-player-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:66vh;overflow:auto;padding-right:4px}.draft-player{border:1px solid var(--line);background:var(--surface-soft);padding:9px;display:grid;grid-template-columns:1fr auto;gap:8px}.draft-player .name{font-family:var(--display);font-weight:900}.draft-player .details{font-family:var(--mono);font-size:8px;color:var(--text-muted);margin-top:3px}.draft-player .rank{font-family:var(--display);font-weight:900;font-size:24px}.draft-player .draft-action{grid-column:1/-1}.roster-check-row{display:flex;justify-content:space-between;border-bottom:1px dotted var(--line);padding:8px 0;font-size:11px}.top-gap{margin-top:14px}.form-grid,.trade-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:13px 0}.trade-grid{grid-template-columns:repeat(3,1fr)}label{font-size:10px;font-family:var(--mono);font-weight:800}.form-grid label .select,.trade-grid label .select{display:block;width:100%;margin-top:5px}.fine-print{font-size:9px;color:var(--text-muted)}.waiver-list{margin:12px 0 0;padding-left:27px}.waiver-list li{padding:7px;border-bottom:1px dotted var(--line);font-size:11px}.transaction-log{display:grid;gap:7px}.transaction{display:grid;grid-template-columns:70px 1fr auto;gap:10px;border-bottom:1px dotted var(--line);padding:8px 0;font-size:10px}.transaction code{font-family:var(--mono);font-size:8px}.analytics-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.analytics-card{border:1px solid var(--text);padding:13px;background:var(--surface-soft)}.analytics-card small{font-family:var(--mono);font-size:8px;color:var(--text-muted)}.analytics-card strong{font-family:var(--display);font-size:28px;display:block;margin:4px 0}.bar{height:6px;background:var(--surface-strong);position:relative}.bar span{position:absolute;inset:0 auto 0 0;background:var(--accent)}.archetype-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.archetype{border:1px solid var(--text);padding:9px}.archetype strong{font-family:var(--display);display:block}.archetype span{font-family:var(--mono);font-size:8px;color:var(--text-muted)}.data-status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0}.data-status-item{border:1px solid var(--line);padding:10px}.data-status-item small{font-family:var(--mono);font-size:8px;color:var(--text-muted);display:block}.data-status-item strong{font-family:var(--display);font-size:16px}.button-row{display:flex;gap:8px;flex-wrap:wrap}.file-button{display:inline-block}.import-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px}.import-card{border:1px dashed var(--text);padding:15px;background:var(--surface-soft);display:grid;gap:8px;cursor:pointer}.import-card input{font-size:9px;max-width:100%}.import-card span{font-family:var(--mono);font-size:8px;color:var(--text-muted)}.app-footer{margin-top:auto;border-top:3px double var(--text);padding:11px 24px;display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:8px;color:var(--text-muted)}.player-dialog{width:min(760px,92vw);max-height:88vh;border:3px double var(--text);background:var(--surface);padding:24px;box-shadow:0 20px 70px rgba(0,0,0,.4)}.player-dialog::backdrop{background:rgba(0,0,0,.72)}.dialog-close{float:right;border:1px solid var(--text);background:var(--accent);color:var(--accent-contrast);padding:6px 8px;font-family:var(--mono);font-size:9px}.player-detail-header{padding-right:80px}.player-detail-header h2{font-family:var(--display);font-size:34px;text-transform:uppercase;margin:5px 0}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.detail-stat{border:1px solid var(--text);padding:9px}.detail-stat small{font-family:var(--mono);font-size:8px;color:var(--text-muted);display:block}.detail-stat strong{font-family:var(--serif);font-size:22px}.score-breakdown{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.breakdown-group{border:1px solid var(--line);padding:10px}.breakdown-group h4{font-family:var(--display);text-transform:uppercase;margin:0 0 7px}.breakdown-line{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px dotted var(--line);font-size:10px}.sparkline{width:100%;height:54px;border-bottom:1px solid var(--text);margin-top:8px}.muted{color:var(--text-muted)}
@media(max-width:1100px){.manager-identity-form{grid-template-columns:1fr 1fr}.manager-identity-form .button{width:100%}.app-shell{grid-template-columns:220px 1fr}.hero-grid{grid-template-columns:1.4fr 1fr}.data-card{grid-column:1/-1}.analytics-grid{grid-template-columns:repeat(3,1fr)}.brand-block{padding-left:15px}.main-nav{padding-left:7px;padding-right:7px}}
@media(max-width:820px){.manager-identity-form{grid-template-columns:1fr 1fr}.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;z-index:30;width:265px;transform:translateX(-102%);transition:transform .18s ease}.sidebar.open{transform:none}.topbar{height:72px;padding:10px 13px}.mobile-menu{display:inline-block;border:1px solid var(--text);background:var(--accent);color:var(--accent-contrast);padding:7px 8px;font-family:var(--mono);font-size:9px}.topbar h2{font-size:20px}.badge,.status-chip{display:none}.manager-chip{min-width:auto;border:0}.view{padding:14px 12px}.hero-grid,.content-grid.two-one,.roster-columns,.draft-layout{grid-template-columns:1fr}.hero-card{min-height:210px}.week-lockup strong{font-size:74px}.summary-strip{grid-template-columns:repeat(2,1fr)}.summary-item{border-bottom:1px solid var(--line)}.draft-player-list{grid-template-columns:1fr;max-height:none}.trade-grid,.form-grid{grid-template-columns:1fr}.analytics-grid{grid-template-columns:repeat(2,1fr)}.import-grid{grid-template-columns:1fr}.app-footer{padding:10px 12px;flex-wrap:wrap}.stack-mobile{display:block}.stack-mobile .filters{justify-content:flex-start;margin-top:10px}.input,.select{width:100%;min-width:0}.filters{display:grid;grid-template-columns:1fr 1fr}.filters .input{grid-column:1/-1}.topbar-tools{gap:4px}.detail-grid{grid-template-columns:repeat(2,1fr)}.score-breakdown{grid-template-columns:1fr}.alert-host{left:12px;right:12px;top:82px}.archetype-list{grid-template-columns:1fr}}
@media(max-width:480px){.manager-identity-form{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.filters .input{grid-column:auto}.hero-actions,.button-row{display:grid}.analytics-grid{grid-template-columns:1fr}.summary-strip{grid-template-columns:1fr 1fr}.manager-chip strong{max-width:100px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-clock{min-width:150px}.draft-header{align-items:flex-start;gap:8px}.draft-header h3{font-size:22px}.detail-grid{grid-template-columns:1fr 1fr}}
@media print{.sidebar,.topbar,.app-footer,.button,.text-button{display:none!important}.app-shell{display:block}.view{display:none!important}.view.active{display:block!important;padding:0}.paper-card{box-shadow:none;background:#fff;break-inside:avoid}body{background:#fff;color:#111}.main-panel{display:block}}

:root[data-theme="crt"] .paper-card,:root[data-theme="crt"] .input,:root[data-theme="crt"] .select{box-shadow:inset 0 0 18px rgba(87,255,118,.025)}
:root[data-theme="crt"] .brand-logo{opacity:.92}
:root[data-theme="crt"] .hero-card:after{opacity:.25}
:root[data-theme="aghs"] .nav-button.active{box-shadow:inset 4px 0 0 var(--accent)}
:root[data-theme="nfl"] .section-label{color:var(--accent)}
:root[data-theme="aghs"] .section-label{color:#8a6510}
:root[data-theme="crt"] .section-label{color:var(--accent)}
