/* Worked out from this area's own stylesheets when it starts (shared/lib/dark-css.js). */
:root { color-scheme: light dark; }
@media print { :root { color-scheme: light; } }
@media screen and (prefers-color-scheme: dark) {
  :root {
    --primary: #c93a33;
    --gold: #f7941d;
    --bg: #0f1318;
    --card: #181d24;
    --text: #e6e9ee;
    --muted: #9aa4b2;
    --border: #2c333d;
    --danger: #ef5a50;
  }
  button, .btn { background: #1e2838; }
  button.danger, .btn.danger { color: #f09d98; border-color: #6d342f; }
  .error { background: #3c1b17; border: 1px solid #6d342f; }
  .notice { background: #3e3317; border: 1px solid #816f37; }
  .test-result { border: 1px dashed #4a5566; }
  .success { background: #184025; border: 1px solid #347849; }
  .badge { background: #1e2838; }
  .badge.player { background: #16243b; color: #829eed; }
  .badge.coach { background: #422f19; color: #edb082; }
  .badge.team_manager { background: #25173c; color: #ad86ea; }
  .badge.hidden-status { background: #3e3317; color: #eecb8b; }
  .training-box tbody tr:first-child th { background: #1e2838; }
  .groupnav { background: #1a222b; }
  a.stat-link:hover, a.stat-link:focus-visible { background: #371915; }
  .badge-good { background: #184025; color: #97e6b1; }
  .badge-bad { background: #3c1b17; }
  .badge-warn { background: #3e3317; color: #eecb8b; }
  .season-pill:hover { border-color: #4c5767; }
  tr.editing td { background: #3e3317; }
  .tag-prefix { background: #1e2838; }
  .grid-table td.slot .tick { color: var(--good, #9dedc8); }
  .availability-sheet input[type="checkbox"]:disabled { border: 1.5px solid #4b586a; background: var(--card); }
  .availability-sheet input[type="checkbox"]:disabled:checked::after { border: solid #2e2e2e; }
  .badge-split { background: var(--split-bg, #192742); color: var(--split, #89a7e6); }
  .gd-grade.boys { color: var(--boys, #83a9ec); }
  .gd-grade.girls { color: var(--girls, #e98791); }
  .gd-grid td.gd-hit { background: var(--hit, #5d4b23); }
  .gd-cov td.gd-ok { background: #184025; color: #97e6b1; }
  .gd-cov td.gd-warn { background: #493b1c; color: #eecb8b; }
  .gd-cov td.gd-bad { background: #3c1b17; }
  .gd-lane-h.gd-court-col { color: var(--text, #e2e2e2); }
  .gd-blk.gd-gm { background: #16233a; border-color: #324b76; }
  .gd-blk.gd-gm.girls { background: #39161b; border-color: #73313a; }
  .gd-sup-box { background: #402c18; }
  .gd-sup-box.gd-split { background: var(--split-bg, #192742); }
  .gd-sup-name { color: #f1c19b; }
  .gd-sup-box.gd-split .gd-sup-name { color: var(--split, #89a7e6); }
  .gd-lanes-scroll .gd-axis, .gd-lanes-scroll .gd-lanes > div:first-child { background: var(--card, var(--card)); }
  .gd-blk.gd-gm small { color: var(--text, #d4d4d4); }
  .gd-blk { background: #3f2918; border: 1px solid #815837; }
  .gd-blk-rule { border-top: 1px dashed #5b6573; }
  .gd-blk.gd-on { background: #1a4023; border-color: #44955a; color: #b8eece; }
  .gd-blk.gd-on small { color: #a4d7b7; }
  .gd-blk.gd-open { background: #493d1c; color: #f2d4a4; }
  .gd-blk.gd-open small { color: #efcc91; }
  .gd-blk.gd-split { background: var(--split-bg, #192742); }
  .gd-blk.gd-on.gd-split { background: #1a4023; }
  .gd-blk.gd-oc { background: repeating-linear-gradient(135deg, #184025 0 5px, transparent 5px 10px); color: #97e6b1; }
  .help-message-club { background: #3e2e18; }
  .help-message-member { background: #16243b; }
  .help-file-thumb img { border: 1px solid var(--border, #4d4d4d); }
  .roster-grid .cell-name:focus { background: var(--card); color: var(--text, #d0d9e5); }
  .roster-grid .cell-name::placeholder { color: #f2e4a4; }
  .roster-grid .cell-copy:hover, .roster-grid .cell-copy:focus-visible { background: #182838; }
  .roster-grid.is-boxed td.is-on .cell-box { border-color: #657a97; background: var(--card); color: #acb6c3; }
  .roster-grid.is-boxed td.is-open { background: #6a6328; }
  .roster-grid.is-boxed td.is-open .cell-box { color: #f2e4a4; }
  .roster-grid.is-boxed td.is-out { background: repeating-linear-gradient(135deg, #222935 0 8px, #2b323f 8px 16px); }
  .roster-grid.is-boxed td.cell-bad.is-on .cell-box { background: #3c1b17; }
  .roster-grid.is-boxed td.cell-warn.is-on .cell-box { background: #3e3317; }
  .roster-grid td[data-note]::after { color: #ed8a82; }
  .roster-grid .cell-why-ask { background: #353014; }
  .roster-grid .cell-why-kept { color: #9dedc8; }
  .roster-grid tr.roster-who td.who-yes { background: #1a4023; color: #9dedc8; }
  .roster-grid tr.roster-who td.who-warn { background: #3e3317; color: #f2d4a4; }
  .roster-grid tr.roster-who td.who-game { background: #6a6328; color: #f2d4a4; }
  .roster-grid tr.roster-who td.who-no { background: #202833; }
  .cell-suggest-on.is-on { color: #f2d4a4; }
  .cell-suggest li[data-value]:hover, .cell-suggest li.is-lit { background: #182838; }
  .cell-suggest-level { background: #1e2838; color: #b1bdd4; }
  .cell-suggest-anyway { color: #f2d4a4; }
  .cell-suggest-move .cell-suggest-tag { color: #f2d4a4; }
  .roster-grid .cell-why { color: var(--muted, #acb6c3); }
  .roster-grid td.cell-bad { background: #3c1b17; }
  .roster-grid td.cell-warn { background: #3e3317; }
  .money-field > span { color: var(--muted, #b2b2bd); }
  .suggestion { border-left: 3px solid var(--line, #2e2e5c); }
  .todo-item { border-top: 1px solid var(--line, #323c4e); }
  .email-preview { background: #1a222b; }
  .remind-quote { background: #152331; }
  .ask-note-preview { background: #564d21; }
  .shift-ok { background: #184025; color: #97e6b1; }
  .shift-remind { background: #1b293a; }
  .shift-tag input:checked + span { background: #3c1b17; }
  .chip { background: #371915; }
  .team-badge-player { background: #16243b; color: #829eed; }
  .team-badge-coach { background: #422f19; color: #edb082; }
  .team-badge-tm { background: #25173c; color: #ad86ea; }
  .slot-note { color: #eecb8b; background: #3e3317; }
  select.level-not-set { background-color: #3e3317; }
  .roster-grid.is-boxed tbody tr[class*="venue-tint"] td.is-open { background: #6a6328; }
  .roster-grid tbody tr[class*="venue-tint"] td.cell-bad { background: #3c1b17; }
  .roster-grid tbody tr[class*="venue-tint"] td.cell-warn { background: #3e3317; }
  .roster-grid.is-boxed tbody tr[class*="venue-tint"] td.is-open.cell-warn { background: #6a6328; }
  .roster-grid .cell-clear { background: #626f85; }
  .roster-grid.is-boxed td.is-changed.is-on .cell-box { border-color: #657a97; background: var(--card); }
  .roster-grid.is-boxed td.is-editing .cell-box.cell-box { background: var(--card); color: var(--text, #d0d9e5); }
  .avail-at-table td.who-yes { background: #1a4023; color: #9dedc8; }
  .avail-at-table td.who-warn { background: #3e3317; color: #f2d4a4; }
  .avail-at-table td.who-no { background: #21262e; }
  .avail-at-table td.is-alloc { background: #1b2c48; color: #8aa7e6; }
  .avail-table td .avail-count b.is-supe { background: #1b2c48; color: #8aa7e6; }
  .avail-table td .avail-count b.is-ref { background: #421919; color: #e98686; }
  .avail-table td .avail-count b.is-none { background: #21262e; }
  .avail-table tr.avail-row td.who-yes { background: #1a4023; color: #9dedc8; }
  .avail-table tr.avail-row td.who-warn { background: #3e3317; color: #f2d4a4; }
  .avail-table tr.avail-row td.who-no { background: #21262e; }
  .avail-table tr.avail-row td.is-alloc { background: #1b2c48; color: #8aa7e6; }
  .avail-table tr.avail-row td.who-game { background: #6a6328; color: #f2d4a4; }
  .avail-table tr.avail-row td.who-ref { background: #421919; color: #e98686; }
  .status-strip .chip.ok { border-color: #479a5d; background: #173c1e; color: #9dedc8; }
  .status-strip .chip.warn { border-color: #a88a48; background: #443a1a; color: #f2d4a4; }
  .status-strip .chip.bad { border-color: #793434; background: #3c1717; color: #e98686; }
  .setup-card { background: var(--card); }
  td.slot.slot-game { background: #3e3317; }
  td.slot .slot-game-said { color: #eecb8b; }
  .grid-split { border-top: 1px solid #4f5868; border-bottom: 1px solid #4f5868; }
  .grid-split:hover, .grid-split:active { background: #374152; }
  .draft-grid-table .roster-grid .cell-why { color: var(--text, #d0d9e5); }
  .draft-grid-table .roster-grid .cell-why > summary { background: #626f85; }
  .draft-grid-table .roster-grid .cell-why > div { background: var(--card); color: var(--text, #d0d9e5); }
  .draft-grid-table .roster-grid .cell-why-issues { color: #f2d4a4; }
  .draft-grid-table .roster-grid .cell-why-issues.bad { color: #ed8a82; }
  .draft-grid-table .roster-grid .cell-why-because { color: var(--muted, #acb6c3); }
  .where-grip::after { background: #444c5a; }
  .grid-tools .draft-status { color: var(--muted, #acb6c3); }
  .grid-tools .draft-status.is-mine, .grid-tools .draft-status.is-saved { color: #9dedc8; }
  .grid-tools .draft-status.is-warn { color: #f2d4a4; }
  .grid-tools .draft-status.is-error, .grid-tools .draft-status.is-locked { color: #ed8a82; }
  header.topbar .nav-avatar { background: #50441e; color: #d6dde7; }
  .week-todo a { background: #3e3317; border: 1px solid #816f37; }
  .week-todo-sub { color: #f0d597; }
  .fold-said b { color: #97e6b1; }
  .badge-plain { background: #1e2838; }
  .results-jump a { background: var(--card); }
  .agegroups-won { color: #97e6b1; }
  .agegroups-views { background: var(--card); }
  .week-clash { color: #eecb8b; }
  .week-entry.is-clash { background: #372e15; }
  .who-0 { background: #3f1a18; color: #f09895; }
  .who-1 { background: #1b4838; color: #bef6ea; }
  .who-2 { background: #182d40; color: #9ac5f1; }
  .who-3 { background: #181639; color: #9e97d8; }
  .who-4 { background: #49381c; color: #f4d5b1; }
  .who-5 { background: #3e1725; color: #e09eb4; }
  .who-dot.who-3 { background: #453da1; }
  .age-pill { color: var(--muted, #b1b5be); border: 1px solid var(--border, #3a404b); }
  .age-pill.age-minor { background: #3e3317; color: #eecb8b; border-color: #7f6b36; }
  .age-pill.age-adult { background: #192742; color: #89a7e6; border-color: #2d4069; }
  .account-picture-letters { background: #50441e; color: #d6dde7; }
  .portal-pill { background: #3a1816; }
  .portal-pill.is-gold { color: #f0d497; background: #3e3017; }
  .portal-pill.is-muted { background: #1e2838; }
  .admin-hub-side nav a.active, .admin-hub-side nav a:hover, .portal-side nav a.active, .portal-side nav a:hover { background: #3a1816; }
  label.season-pill:hover { border-color: #4c5767; }
  .site-banner { background: #3e3317; border: 1px solid #816f37; }
  .hat-banner { background: #3e3017; color: #f0d497; }
  @media (min-width: 641px) {
    header.topbar .nav-menu-items { background: var(--card, var(--card)); color: var(--text, #d0d9e5); border: 1px solid var(--border, #3a404b); }
    header.topbar .nav-menu-items a, header.topbar .nav-menu-items button.quiet { color: var(--text, #d0d9e5); }
    header.topbar .nav-menu-items a.active { color: var(--primary, #ed8783); }
    header.topbar .portal-group-name { color: var(--muted, #b1b5be); }
    header.topbar .nav-menu-items form { border-top-color: var(--border, #3a404b); }
    header.topbar .nav-menu-items .nav-menu-email { color: var(--muted, #b1b5be); }
  }
  @media (min-width: 641px) {
    header.topbar .nav-account .nav-menu-items form { border-top-color: var(--border, #3a404b); }
  }
}
