:root[data-theme="dark"] {
  color-scheme:dark;
  --ink:#e8eff3;
  --ink2:#d3dee5;
  --muted:#a2b1bc;
  --subtle:#8095a3;
  --line:#344550;
  --surface:#1d2a33;
  --bg:#111a21;
  --side:#111a21;
  --side2:#1a2831;
  --green:#7ddaaf;
  --greenbg:#1c3d33;
  --amber:#f0c477;
  --amberbg:#443621;
  --red:#f19a9e;
  --redbg:#472a31;
  --blue:#8ec8f1;
  --bluebg:#213e51;
  --shadow:0 3px 18px rgba(0,0,0,.18);
}
:root[data-theme="dark"] body {background:var(--bg);color:var(--ink)}
:root[data-theme="dark"] input,
:root[data-theme="dark"] select,
:root[data-theme="dark"] textarea {color:var(--ink);accent-color:var(--lime)}
:root[data-theme="dark"] input::placeholder,
:root[data-theme="dark"] textarea::placeholder {color:var(--subtle)}
:root[data-theme="dark"] .topbar,
:root[data-theme="dark"] .searchbox,
:root[data-theme="dark"] .select-wrap,
:root[data-theme="dark"] .btn:not(.btn-lime):not(.btn-dark),
:root[data-theme="dark"] .square-btn,
:root[data-theme="dark"] .modal,
:root[data-theme="dark"] .toast,
:root[data-theme="dark"] .list-game-panel,
:root[data-theme="dark"] .settings-nav,
:root[data-theme="dark"] .account-panel,
:root[data-theme="dark"] .public-profile,
:root[data-theme="dark"] .public-profile-card,
:root[data-theme="dark"] .table-shell,
:root[data-theme="dark"] .account-toolbar input,
:root[data-theme="dark"] .account-toolbar select,
:root[data-theme="dark"] .user-action,
:root[data-theme="dark"] .position-icon-action,
:root[data-theme="dark"] .games-icon-action,
:root[data-theme="dark"] .document-upload,
:root[data-theme="dark"] .game-actions-menu,
:root[data-theme="dark"] .games-season-field select,
:root[data-theme="dark"] .profile-app-settings-panels .profile-app-setting-row select,
:root[data-theme="dark"] .dashboard-next-card,
:root[data-theme="dark"] .dashboard-month-list,
:root[data-theme="dark"] .dashboard-profile,
:root[data-theme="dark"] .dashboard-empty,
:root[data-theme="dark"] .dashboard-kpi,
:root[data-theme="dark"] .dashboard-chart-card,
:root[data-theme="dark"] .dashboard-view-toggle,
:root[data-theme="dark"] .admin-stat-card,
:root[data-theme="dark"] .admin-side-panel,
:root[data-theme="dark"] .admin-position-card,
:root[data-theme="dark"] .admin-table-wrap,
:root[data-theme="dark"] .game-detail-section,
:root[data-theme="dark"] .game-detail-pagination a,
:root[data-theme="dark"] .full-infocenter-content-action,
:root[data-theme="dark"] .attendance-card,
:root[data-theme="dark"] .attendance-views,
:root[data-theme="dark"] .attendance-view:not(.active),
:root[data-theme="dark"] .attendance-export,
:root[data-theme="dark"] .attendance-filters button,
:root[data-theme="dark"] .attendance-filters select,
:root[data-theme="dark"] .attendance-filters input,
:root[data-theme="dark"] .attendance-popover,
:root[data-theme="dark"] .attendance-popover button,
:root[data-theme="dark"] .attendance-day-card,
:root[data-theme="dark"] .attendance-user-stat,
:root[data-theme="dark"] .attendance-user-table-scroll,
:root[data-theme="dark"] .attendance-user-chart-card,
:root[data-theme="dark"] .attendance-user-season select,
:root[data-theme="dark"] .od-search-field,
:root[data-theme="dark"] .od-sort-select,
:root[data-theme="dark"] .od-picker-columns,
:root[data-theme="dark"] .position-menu,
:root[data-theme="dark"] .position-menu button,
:root[data-theme="dark"] .wish-position-menu,
:root[data-theme="dark"] .wish-position-menu button,
:root[data-theme="dark"] .wish-history-tooltip,
:root[data-theme="dark"] .response-log-filter select {background:var(--surface);color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] .dashboard-next-main,
:root[data-theme="dark"] .public-profile-intro {background:linear-gradient(115deg,var(--surface) 60%,#263740)}
:root[data-theme="dark"] .dashboard-next-footer,
:root[data-theme="dark"] .admin-capacity,
:root[data-theme="dark"] .dashboard-calendar-row,
:root[data-theme="dark"] .attendance-matrix th,
:root[data-theme="dark"] .attendance-matrix td,
:root[data-theme="dark"] .attendance-matrix thead th,
:root[data-theme="dark"] .attendance-matrix .attendance-rate-column {background:var(--surface);color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] .dashboard-calendar-row:hover,
:root[data-theme="dark"] .attendance-matrix tbody tr:hover th,
:root[data-theme="dark"] .attendance-matrix tbody tr:hover td,
:root[data-theme="dark"] .attendance-popover button:hover,
:root[data-theme="dark"] .list-game-panel:hover,
:root[data-theme="dark"] .btn:not(.btn-lime):not(.btn-dark):hover,
:root[data-theme="dark"] .game-actions-menu a:hover,
:root[data-theme="dark"] .game-actions-menu button:hover {background:#293a45}
:root[data-theme="dark"] .attendance-matrix thead th.attendance-played:not(.attendance-recent),
:root[data-theme="dark"] .attendance-matrix tbody td.attendance-played:not(.attendance-recent) {background:#1a252d}
:root[data-theme="dark"] .attendance-matrix thead th.attendance-recent,
:root[data-theme="dark"] .attendance-matrix tbody td.attendance-recent {background:#22392e}
:root[data-theme="dark"] .account-table th,
:root[data-theme="dark"] .admin-games-table th,
:root[data-theme="dark"] .attendance-user-table th,
:root[data-theme="dark"] .game-attendance-table thead th,
:root[data-theme="dark"] .full-infocenter-standings-table thead th,
:root[data-theme="dark"] .od-picker-column h3 {background:#263640;color:var(--muted)}
:root[data-theme="dark"] .dashboard-heading h1,
:root[data-theme="dark"] .dashboard-section-head h2,
:root[data-theme="dark"] .dashboard-next-fixture h3,
:root[data-theme="dark"] .dashboard-date strong,
:root[data-theme="dark"] .dashboard-next-position strong,
:root[data-theme="dark"] .dashboard-next-times strong,
:root[data-theme="dark"] .dashboard-all-link,
:root[data-theme="dark"] .admin-stat-card strong,
:root[data-theme="dark"] .attendance-user-stat strong {color:var(--ink)}
:root[data-theme="dark"] .dashboard-heading p,
:root[data-theme="dark"] .dashboard-section-head p,
:root[data-theme="dark"] .dashboard-round,
:root[data-theme="dark"] .dashboard-next-times,
:root[data-theme="dark"] .admin-dashboard-meta,
:root[data-theme="dark"] .admin-stat-card>span:first-child,
:root[data-theme="dark"] .attendance-user-stat span,
:root[data-theme="dark"] .list-game .list-staff {color:var(--muted)}
:root[data-theme="dark"] .dashboard-date,
:root[data-theme="dark"] .dashboard-filter,
:root[data-theme="dark"] .dashboard-load-more,
:root[data-theme="dark"] .admin-table-date,
:root[data-theme="dark"] .attendance-game-mark,
:root[data-theme="dark"] .attendance-avatar,
:root[data-theme="dark"] .readonly-value,
:root[data-theme="dark"] .settings-rate-fixed,
:root[data-theme="dark"] .od-browser #odMessage,
:root[data-theme="dark"] .od-browser#ligaBrowser .liga-message {background:#293a45;color:var(--ink)}
:root[data-theme="dark"] .dashboard-filter button.active,
:root[data-theme="dark"] .settings-nav a[aria-current="page"] {background:#344a54;color:var(--ink)}
:root[data-theme="dark"] .settings-nav a:hover,
:root[data-theme="dark"] .settings-nav summary:hover,
:root[data-theme="dark"] .dashboard-view-toggle:hover {background:#293a45}
:root[data-theme="dark"] .profile-app-settings-panels .profile-app-setting-row select,
:root[data-theme="dark"] .games-season-field select {border-color:var(--line)}
:root[data-theme="dark"] .settings-color-grid .form-field:nth-child(even),
:root[data-theme="dark"] .settings-chart-section .form-field,
:root[data-theme="dark"] .settings-icon-preview {background:#263640}
:root[data-theme="dark"] .settings-panels input:disabled,
:root[data-theme="dark"] .settings-panels select:disabled {background:#293a45;color:var(--muted)}
:root[data-theme="dark"] .game-actions-menu a,
:root[data-theme="dark"] .game-actions-menu button {color:var(--ink)}
:root[data-theme="dark"] .dashboard-role-icon,
:root[data-theme="dark"] .dashboard-response.committed,
:root[data-theme="dark"] .attendance-response-committed,
:root[data-theme="dark"] .attendance-present {background:var(--greenbg);color:var(--green)}
:root[data-theme="dark"] .dashboard-role-icon.declined,
:root[data-theme="dark"] .dashboard-response.declined,
:root[data-theme="dark"] .attendance-response-declined,
:root[data-theme="dark"] .attendance-absent,
:root[data-theme="dark"] .attendance-unexcused {background:var(--redbg);color:var(--red)}
:root[data-theme="dark"] .dashboard-role-icon.pending,
:root[data-theme="dark"] .dashboard-response.pending,
:root[data-theme="dark"] .attendance-late {background:var(--amberbg);color:var(--amber)}
:root[data-theme="dark"] .attendance-response-open,
:root[data-theme="dark"] .attendance-pending,
:root[data-theme="dark"] .attendance-open,
:root[data-theme="dark"] .attendance-user-future {background:#293a45;color:var(--muted)}
:root[data-theme="dark"] .public-profile-calendar-date,
:root[data-theme="dark"] .public-profile-stat-ring::before,
:root[data-theme="dark"] .attendance-rate::before {background:var(--surface);color:var(--blue)}
:root[data-theme="dark"] .admin-position-card.is-empty {background:#26333c;color:var(--muted);border-color:var(--line)}
:root[data-theme="dark"] .od-setup-notice,
:root[data-theme="dark"] .od-owner-notice {background:var(--amberbg);color:var(--ink);border-color:var(--amber)}
:root[data-theme="dark"] .od-setup-fields li {background:var(--surface);border-color:var(--line)}
:root[data-theme="dark"] .team-logo img,
:root[data-theme="dark"] .dashboard-team-logo img,
:root[data-theme="dark"] .admin-activity-logo img,
:root[data-theme="dark"] .games-table-opponent img {background:transparent}
:root[data-theme="dark"] .game-card,
:root[data-theme="dark"] .card-header,
:root[data-theme="dark"] .response-log-list li,
:root[data-theme="dark"] .modal,
:root[data-theme="dark"] .form-field input,
:root[data-theme="dark"] .form-field select,
:root[data-theme="dark"] .form-field textarea,
:root[data-theme="dark"] .mini-select,
:root[data-theme="dark"] .view-toggle,
:root[data-theme="dark"] .game-attendance-table select,
:root[data-theme="dark"] .position-restriction {background:var(--surface);color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] .tabs {background:#263640;border-color:var(--line)}
:root[data-theme="dark"] .tab {color:var(--muted)}
:root[data-theme="dark"] .tab.active {background:#40535e;color:var(--ink)}
:root[data-theme="dark"] .form-field label,
:root[data-theme="dark"] .checkbox-label {color:var(--muted)}
:root[data-theme="dark"] .full-infocenter-content-add {background:#263640;color:var(--green);border-color:var(--line)}
:root[data-theme="dark"] .full-infocenter-standings-table .is-home-team {background:#22392e}
:root[data-theme="dark"] .full-infocenter-standings-table .is-guest-team {background:#443621}
:root[data-theme="dark"] .standings-team-marker.guest {background:var(--amberbg);color:var(--amber)}
:root[data-theme="dark"] .btn-dark {background:#344853;border-color:#344853;color:var(--ink)}
:root[data-theme="dark"] .btn-dark:hover {background:#405864}
:root[data-theme="dark"] .admin-collapsible-chevron,
:root[data-theme="dark"] .admin-activity-toggle,
:root[data-theme="dark"] .dashboard-filter button.active {background:#344a54;color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] .admin-games-table tbody tr:hover,
:root[data-theme="dark"] .admin-mobile-game:hover {background:#293a45}
:root[data-theme="dark"] .admin-stat-card.red .admin-stat-icon,
:root[data-theme="dark"] .admin-status.critical,
:root[data-theme="dark"] .admin-capacity.short .admin-capacity-verdict {background:var(--redbg);color:var(--red)}
:root[data-theme="dark"] .admin-stat-card.yellow .admin-stat-icon,
:root[data-theme="dark"] .admin-status.partial,
:root[data-theme="dark"] .admin-capacity.tight .admin-capacity-verdict {background:var(--amberbg);color:var(--amber)}
:root[data-theme="dark"] .admin-capacity-track {background:#493038}
:root[data-theme="dark"] .dashboard-kpi[aria-pressed="true"],
:root[data-theme="dark"] .games-management-table .account-table tbody tr.is-next-game {background:#22392e}
:root[data-theme="dark"] .public-profile-next-list a,
:root[data-theme="dark"] .public-profile-history-table th,
:root[data-theme="dark"] .system-health {background:#293a45;color:var(--ink)}
:root[data-theme="dark"] .public-profile-bar-track {background:#293a45}
:root[data-theme="dark"] .game-number,
:root[data-theme="dark"] .date-line small,
:root[data-theme="dark"] .game-tipoff,
:root[data-theme="dark"] .game-card-times,
:root[data-theme="dark"] .card-wish-empty,
:root[data-theme="dark"] .wish-position-menu p,
:root[data-theme="dark"] .response-log-list time,
:root[data-theme="dark"] .response-log-list small {color:var(--muted)}
:root[data-theme="dark"] .role-name,
:root[data-theme="dark"] .card-wish-title,
:root[data-theme="dark"] .card-response-group>strong,
:root[data-theme="dark"] .wish-position-menu strong,
:root[data-theme="dark"] .wish-history-total {color:var(--ink2)}
:root[data-theme="dark"] .role-person,
:root[data-theme="dark"] .doc-link {color:var(--ink)}
:root[data-theme="dark"] .role-person.empty,
:root[data-theme="dark"] .role-name em {color:var(--subtle)}
:root[data-theme="dark"] .role,
:root[data-theme="dark"] .wish-history-tooltip li {border-color:var(--line)}
:root[data-theme="dark"] .role:is(button):hover {background:#293a45}
:root[data-theme="dark"] .progress-track {background:#344550}
:root[data-theme="dark"] .card-response-list li,
:root[data-theme="dark"] .card-wish-person {background:var(--bluebg);color:var(--blue);border-color:#40627a}
:root[data-theme="dark"] .card-wish-person.is-assigned {background:var(--greenbg);color:var(--green);border-color:#40735e}
:root[data-theme="dark"] .card-wish-person:hover {background:#2a4b60}
:root[data-theme="dark"] .card-wish-person.is-assigned:hover {background:#285140}
:root[data-theme="dark"] .game-wish-chip,
:root[data-theme="dark"] .game-count-chip,
:root[data-theme="dark"] .filled {background:#30424d;color:var(--ink2);border-color:var(--line)}
:root[data-theme="dark"] .game-wish-chip:hover,
:root[data-theme="dark"] .game-wish-chip.is-active,
:root[data-theme="dark"] .game-response-chip:hover,
:root[data-theme="dark"] .game-response-chip.is-active {background:#405864}
:root[data-theme="dark"] .response-button.is-muted,
:root[data-theme="dark"] .response-button.is-muted:hover:not(:disabled) {background:#30404a;color:var(--muted);border-color:var(--line)}
:root[data-theme="dark"] h1,
:root[data-theme="dark"] h2,
:root[data-theme="dark"] h3,
:root[data-theme="dark"] h4 {color:var(--ink)}
:root[data-theme="dark"] select,
:root[data-theme="dark"] option,
:root[data-theme="dark"] optgroup {background-color:var(--surface);color:var(--ink)}
:root[data-theme="dark"] .admin-section-head h2,
:root[data-theme="dark"] .admin-capacity-head strong,
:root[data-theme="dark"] .admin-position-card,
:root[data-theme="dark"] .admin-task a,
:root[data-theme="dark"] .admin-quick-action,
:root[data-theme="dark"] .admin-games-table td a,
:root[data-theme="dark"] .admin-team,
:root[data-theme="dark"] .admin-activity,
:root[data-theme="dark"] .admin-mobile-game {color:var(--ink)}
:root[data-theme="dark"] .admin-section-head p,
:root[data-theme="dark"] .admin-collapsible-toolbar a,
:root[data-theme="dark"] .admin-capacity-head small,
:root[data-theme="dark"] .admin-capacity-head strong span,
:root[data-theme="dark"] .admin-capacity-foot,
:root[data-theme="dark"] .admin-position-card span,
:root[data-theme="dark"] .admin-filter,
:root[data-theme="dark"] .admin-activity small,
:root[data-theme="dark"] .admin-table-foot {color:var(--muted)}
:root[data-theme="dark"] .admin-filter select {background:var(--surface);color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] .admin-capacity.enough .admin-capacity-verdict,
:root[data-theme="dark"] .admin-stat-card.green .admin-stat-icon,
:root[data-theme="dark"] .admin-status.complete {background:var(--greenbg);color:var(--green)}
:root[data-theme="dark"] .admin-stat-card.blue .admin-stat-icon {background:var(--bluebg);color:var(--blue)}
:root[data-theme="dark"] .admin-stat-track,
:root[data-theme="dark"] .admin-progress {background:#344550}
:root[data-theme="dark"] .admin-capacity-track i {background:var(--ink)}
:root[data-theme="dark"] .admin-activity-logo {background:#293a45;color:var(--muted)}
:root[data-theme="dark"] .admin-activity-logo img {background:transparent}
:root[data-theme="dark"] .detail-line {border-color:var(--line)}
:root[data-theme="dark"] .detail-line span:first-child,
:root[data-theme="dark"] .micro-note {color:var(--muted)}
:root[data-theme="dark"] .detail-line button {color:var(--blue)}
:root[data-theme="dark"] .person-pill,
:root[data-theme="dark"] .game-detail-count-chip,
:root[data-theme="dark"] .filled:not(.good):not(.warn):not(.bad) {background:#344550;color:var(--ink2)}
:root[data-theme="dark"] .game-detail-section .detail-wish-chip.is-assigned {background:var(--greenbg);color:var(--green);border-color:#40735e}
:root[data-theme="dark"] .game-detail-pagination .is-disabled {background:#263640;color:var(--subtle)}
:root[data-theme="dark"] .infocenter-document {border-color:var(--line)}
:root[data-theme="dark"] .standings-team-marker.home {background:var(--greenbg);color:var(--green)}
:root[data-theme="dark"] .dashboard-kpi-label,
:root[data-theme="dark"] .dashboard-chart-summary,
:root[data-theme="dark"] .dashboard-position-summary,
:root[data-theme="dark"] .dashboard-profile-copy p {color:var(--muted)}
:root[data-theme="dark"] .dashboard-chart-card>p,
:root[data-theme="dark"] .dashboard-kpi small {color:var(--muted)}
:root[data-theme="dark"] .dashboard-kpi-icon-open {background:var(--amberbg);color:var(--amber)}
:root[data-theme="dark"] .dashboard-kpi-icon-planned {background:var(--bluebg);color:var(--blue)}
:root[data-theme="dark"] .dashboard-kpi-icon-completed {background:var(--greenbg);color:var(--green)}
:root[data-theme="dark"] #userEligible label,
:root[data-theme="dark"] .user-delete:disabled,
:root[data-theme="dark"] .user-delete:disabled:hover {background:var(--surface);color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] #userEligible label:hover {background:#293a45}
:root[data-theme="dark"] .response-yes,
:root[data-theme="dark"] .response-no {color:#102027}
:root[data-theme="dark"] .response-yes:hover:not(:disabled) {background:#6ac99d}
:root[data-theme="dark"] .response-no:hover:not(:disabled) {background:#df858b}
:root[data-theme="dark"] .public-profile-position-badge,
:root[data-theme="dark"] .public-profile-avatar {background:#344550;color:var(--ink)}
:root[data-theme="dark"] .public-profile-card-icon,
:root[data-theme="dark"] .public-profile-rate-card .public-profile-card-icon,
:root[data-theme="dark"] .public-profile-metric-card .public-profile-card-icon,
:root[data-theme="dark"] .public-profile-commitments-card .public-profile-card-icon,
:root[data-theme="dark"] .public-profile-positions-card .public-profile-card-icon {background:var(--bluebg);color:var(--blue)}
:root[data-theme="dark"] .public-profile-milestone-value {border-color:var(--blue)}
:root[data-theme="dark"] .public-profile-milestone-value svg {color:var(--blue)}
:root[data-theme="dark"] .public-profile-rate-ring {background:conic-gradient(var(--blue) var(--profile-rate,0%),#344550 0)}
:root[data-theme="dark"] .public-profile-bar,
:root[data-theme="dark"] .public-profile-position-track>span {background:var(--blue)}
:root[data-theme="dark"] .public-profile-position-track,
:root[data-theme="dark"] .public-profile-stat-ring {background:#344550}
:root[data-theme="dark"] .public-profile-next-list a:hover {background:#314550}
:root[data-theme="dark"] .public-profile-next-logo,
:root[data-theme="dark"] .public-profile-next-item-logo {color:var(--muted)}
:root[data-theme="dark"] .public-profile-stat-ring.public-profile-rate-ring {background:conic-gradient(var(--blue) var(--profile-rate,0%),#344550 0)}
:root[data-theme="dark"] .scouting-highlights-table tr.scouting-special-highlight td {background:var(--amberbg)}
:root[data-theme="dark"] .scouting-special-label {background:#715525;color:#fff0c7}
:root[data-theme="dark"] .scouting-highlight-dialog-actions .btn.scouting-special-save {background:var(--amberbg);color:var(--amber);border-color:var(--amber)}
:root[data-theme="dark"] .scouting-highlight-dialog-actions .btn.scouting-special-save:hover {background:#58452b}
