/* Follow system appearance directly: applies on first paint and on OS changes. */
:root{color-scheme:light dark}
@media(prefers-color-scheme:dark){
 :root{
  color-scheme:dark;
  --bg:#111722;--panel:#182231;--text:#e6edf7;--muted:#afbccd;
  --line:#354357;--accent:#a8caff;--soft:#23334a;--mint:#203b32;
  --action:#3767b3;--input-line:#607189;
  --elevation-control:0 0 0 1px rgb(255 255 255 / .14),0 2px 5px rgb(0 0 0 / .2);
  --elevation-popover:0 6px 16px rgb(0 0 0 / .25),0 18px 36px rgb(0 0 0 / .25);
  --elevation-dialog:0 10px 24px rgb(0 0 0 / .3),0 30px 70px rgb(0 0 0 / .35);
 }
 html,body,.stats-page{background:var(--bg);color:var(--text)}
 ::selection{background:#365a87;color:#fff}
 *{scrollbar-color:#64768d #182231}
 .compact-roster,.roster-grid,.team-roster,.table-scroll{scrollbar-color:#64768d #182231}
 .topbar,.owner-banner{background:var(--bg)}
 .main-nav a:hover{background:var(--panel);color:var(--text)}
 .main-nav a.active{background:var(--soft);color:var(--accent)}
 .main-nav span{background:var(--soft);color:var(--text)}
 .search-box{background:var(--panel);border-color:var(--input-line)}
 .search-box kbd{border-color:var(--input-line)}
 .search-box input{color:var(--text)}
 .search-results{background:var(--panel);color:var(--text)}
 .search-results button:hover{background:var(--soft)}
 .search-results img{background:var(--soft)}
 .mode-link:hover{border-color:var(--accent);color:var(--text)}
 .identity-option:has(input:checked),.identity-option:hover{background:var(--soft)}
 .identity-option{border-color:var(--line)}
 .all-library-header,.saved-header,.agent-hero{background:var(--panel)}
 .library-art,.saved-header .library-art,.portrait-stage{background:#24344b}
 .hero-word{color:#344966}
 .hero-side,.hero-copy p,.hero-role,.en-name{color:var(--muted)}
 .hero-copy h1{color:var(--text)}
 .motion-toggle,.all-library-header .motion-toggle{color:var(--muted)}
 .all-library-header .motion-toggle{background:#182231}
 .motion-toggle[aria-pressed=true] .motion-indicator{background:var(--accent)}
 .agent-tile img{background:#26364d}
 .agent-tile:hover,.all-agents:hover,.role-tab:hover{background:var(--panel)}
 .agent-tile.active,.all-agents.active{background:var(--soft);border-color:#6985aa;color:var(--accent)}
 .agent-tile.active img{background:#365071}
 .all-agents.active .all-agents-icon,.role-tab.active{color:var(--accent)}
 .primary-button,.retry-button,#apply-event-update{background:var(--action);color:#fff}
 .primary-button:hover{background:#4275c4}
 .select-control,.content-tools .mobile-platform,.data-filters input,.data-filters select,.sort-field select{
  background:var(--panel);border-color:var(--input-line);color:var(--text);
 }
 .content-tools select{color:var(--text)}
 select option{background:var(--panel);color:var(--text)}
 .content-tools .mobile-platform{color:var(--text)}
 input::placeholder{color:var(--muted)}
 .video-thumb{background:#25364c;outline-color:oklch(1 0 0 / .1)}
 .video-thumb:focus-visible{outline-color:var(--accent)}
 .video-thumb.artwork{background:#263b55}
 .video-thumb.artwork:before{background:#354c6b}
 .thumb-agent{color:var(--text)}
 .thumb-duration,.thumb-platform{background:#101722ed;color:#fff}
 .play-disc{background:#182231ed;color:var(--text)}
 .save-button{background:#182231f5;color:var(--text)}
 .save-button:hover{background:#273951;box-shadow:0 0 0 1px rgb(255 255 255 / .2),0 2px 6px rgb(0 0 0 / .3)}
 .save-button.saved{background:var(--action);color:#fff}
 .category-tag{background:#233e32;color:#b1dbc1}
 .category-tag.streamer{background:#383049;color:#d0c0eb}
 .details-button,.reset-filters{color:var(--accent)}
 .filter-chip{background:var(--soft);color:var(--text)}
 .outline-link,.page-btn,.refresh-event{background:var(--panel);color:var(--accent);border-color:var(--input-line)}
 .outline-link:hover,.page-btn:not(:disabled):hover,.refresh-event:not(:disabled):hover{background:var(--soft);border-color:var(--accent);color:var(--text)}
 .empty-state,.empty-data{background:var(--panel);border-color:var(--line)}
 .empty-symbol{color:var(--muted)}
 .empty-data p{color:var(--muted)}
 .icon-button,.dialog-close{background:var(--soft);color:var(--text)}
 .dialog-close:hover,.icon-button:hover{background:#344b6a}
 dialog,.team-dialog{background:var(--panel);color:var(--text)}
 dialog p,.team-dialog p{color:var(--muted)}
 dialog a,.method-body a{color:var(--accent)}
 dialog .primary-button{color:#fff}
 dialog::backdrop,html:not([data-motion=off]) dialog[open]::backdrop{background:rgb(0 0 0 / .65)}
 .part-info,.about-update,.detail-record{background:var(--soft)}
 .toast{background:#25354b;color:var(--text)}
 .skip{background:var(--panel);color:var(--accent)}
 .event-scope span+span{border-color:var(--line)}
 .match-focus{background:#1c2a3b;color:var(--text)}
 .focus-topline,.focus-bottom{color:var(--muted)}
 .focus-bottom a,.focus-score{color:var(--text)}
 .match-phase{border-color:#607189;color:var(--muted)}
 .match-phase.is-live{background:#244438;color:#c1e9d1;border-color:#648b75}
 /* Keep official logo colors intact and retain their contrast plates. */
 .team-logo,.roster-team .team-logo,.focus-team .team-logo{background:#fff}
 .team-logo.dark-logo,.roster-team .team-logo.dark-logo,.focus-team .team-logo.dark-logo{background:#344966}
 .sync-bar{border-color:var(--line)}
 .sync-dot.ready,.live-dot,.catalog-status:before{background:#79cba2}
 .sync-dot.warning,.catalog-status[data-state=unavailable]:before{background:#e0b975}
 .selector-heading button{border-color:var(--input-line)}
 .selector-heading button[aria-pressed=true]{background:var(--soft);color:var(--accent);border-color:#6985aa}
 .roster-team:hover{background:var(--panel)}
 .roster-team[aria-pressed=true]{background:var(--soft);border-color:#6985aa}
 .roster-team[aria-pressed=true] strong{color:var(--accent)}
 .team-views a:hover{background:var(--panel)}
 .team-views a[aria-current=page]{background:var(--soft);color:var(--accent)}
 .filter-reset{background:var(--panel);border-color:var(--input-line);color:var(--muted)}
 .filter-reset:hover{background:var(--soft);color:var(--text)}
 .table-scroll{background:var(--panel);border-color:var(--line)}
 .stat-table th,.stat-table th:first-child{background:#202e41;color:var(--muted)}
 .stat-table td,.stat-table td:first-child{background:var(--panel);border-color:var(--line);color:var(--text)}
 .stat-table th:first-child{border-color:var(--line)}
 .stat-table tbody tr:nth-child(even)>td{background:#1b2738}
 .stat-table tbody tr:hover td,.stat-table tbody tr:nth-child(even):hover>td{background:#263b54}
 .team-link,.player-link{color:var(--text)}
 .player-link:hover{color:var(--accent)}
 .team-badge{background:var(--soft);color:var(--accent);border-color:var(--line)}
 .stat-table .stat-win{color:#a0d9bd}.stat-table .stat-loss{color:var(--muted)}
 .stat-table .metric-main{color:var(--accent)}
 .rate-track{background:#3a4b64}.rate-track i{background:#93b9ef}
 .sample-note{color:#e0bf85}
 .lineup-names a{background:var(--soft);color:var(--text)}
 .lineup-names a:hover{color:var(--accent);border-color:var(--accent)}
 .source-link,.detail-sources a,.detail-map strong{color:var(--accent)}
 .table-meta,.data-pagination,.detail-kicker,.match-list time{color:var(--muted)}
 .match-list li{border-color:var(--line)}
 .match-list a:hover{color:var(--accent)}
 .stats-page :focus-visible{outline-color:var(--accent)}
 @starting-style{html:not([data-motion=off]) dialog[open]::backdrop{background:rgb(0 0 0 / 0)}}
}
