/* Load last. Light is the initial appearance; a saved dark choice stays available. */
.theme-toggle {
  display: inline-grid;
  place-items: center;
  flex: none;
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface);
  color: var(--ink);
  cursor: pointer;
}
.theme-toggle:hover { background: var(--surface-2); color: var(--ink); }
.theme-toggle svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.theme-toggle .theme-icon-moon { display: none; }
:root[data-theme="light"] .theme-toggle .theme-icon-sun { display: none; }
:root[data-theme="light"] .theme-toggle .theme-icon-moon { display: block; }
.theme-toggle:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

:root[data-theme="light"] {
  color-scheme: light;
  --paper: #f5f7fa;
  --ink: #1b2a3b;
  --muted: #526276;
  --dim: #64748a;
  --surface: #fff;
  --surface-2: #edf2f7;
  --line: #d8e1ea;
  --accent: #175d88;
  --coral: var(--accent);
  --green: var(--accent);
  --vesl-acc: var(--accent);
  --west: #405d93;
  --midwest: #287477;
  --southwest: #854d87;
  --southeast: #746126;
  --northeast: #5d5894;
}
:root[data-theme="light"] body { background: var(--paper); color: var(--ink); }
:root[data-theme="light"] ::selection { background: #cae5f6; color: #122639; }
:root[data-theme="light"] :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible {
  outline-color: var(--accent);
}

/* Header and controls. */
:root[data-theme="light"] .site-header { background: #ffffffed; border-bottom-color: var(--line); }
:root[data-theme="light"] .tile-wordmark > span { background: var(--ink); color: #fff; }
:root[data-theme="light"] .tile-wordmark > span:first-child { background: var(--accent); color: #fff; }
:root[data-theme="light"] .site-header nav { border-color: var(--line); }
:root[data-theme="light"] .site-header .nav-item { color: #526276; }
:root[data-theme="light"] .site-header .nav-item.active,
:root[data-theme="light"] .site-header .nav-item[aria-pressed="true"],
:root[data-theme="light"] .site-header .nav-item.active:hover { background: #dfeef8; color: #12476a; }
:root[data-theme="light"] .site-header .nav-item:hover { background: #eef3f8; color: #123955; }
:root[data-theme="light"] .search-trigger { background: #f6f8fb; border-color: var(--line); color: var(--muted); }
:root[data-theme="light"] .search-trigger:hover { background: #eaf2f8; border-color: #a8c8dc; color: var(--ink); }
:root[data-theme="light"] .search-trigger svg { color: var(--muted); }
:root[data-theme="light"] .search-trigger kbd { background: #fff; border-color: var(--line); color: var(--muted); }
:root[data-theme="light"] .city-hop-header,
:root[data-theme="light"] .location-button { color: var(--ink); border-color: var(--line); }
:root[data-theme="light"] .city-hop-header:hover,
:root[data-theme="light"] .location-button:hover { background: #eaf2f8; color: var(--accent); border-color: #a8c8dc; }
:root[data-theme="light"] .ask-button { background: #dceef8; color: #124d73; border-color: #bcdced; }
:root[data-theme="light"] .ask-button > span { color: #124d73; }
:root[data-theme="light"] .ask-button:hover { background: #c8e3f2; color: #0d4468; border-color: #9fc9df; }
:root[data-theme="light"] .newsroom-link { color: var(--accent); border-color: var(--line); }
:root[data-theme="light"] .newsroom-link[data-state="paused"] { color: #87600c; }
:root[data-theme="light"] .theme-toggle { background: #fff; color: #1b5679; }
:root[data-theme="light"] .theme-toggle:hover { background: #eaf2f8; color: #10496e; }

/* Geography canvas. */
:root[data-theme="light"] .explorer,
:root[data-theme="light"] .explorer.city-open,
:root[data-theme="light"] .map-panel,
:root[data-theme="light"] .city-open .map-panel,
:root[data-theme="light"] .mobile-pane-map .map-panel { background: #fff; }
:root[data-theme="light"] .map-explore-content::before { background: none; }
:root[data-theme="light"] .map-caption h2 { color: var(--ink); }
:root[data-theme="light"] .map-caption p,
:root[data-theme="light"] #national-map-hint { color: var(--muted); }
:root[data-theme="light"] .map-caption .eyebrow { color: var(--accent); }
:root[data-theme="light"] .map-top :is(#all-regions,.breadcrumbs button) { background: #fff; color: var(--accent); border-color: var(--line); }
:root[data-theme="light"] .map-top :is(#all-regions,.breadcrumbs button):hover { background: #eaf2f8; color: #10496e; border-color: #a8c8dc; }
:root[data-theme="light"] .modern-map .glocal-map-svg { filter: none; }
:root[data-theme="light"] .modern-map .glocal-map-svg g[aria-label="States"] { filter: drop-shadow(0 5px 7px #344e6825); }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-state { fill: #cedfea; stroke: #fff; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-state.is-active { fill: #b0cfe0; }
:root[data-theme="light"] .modern-map .glocal-map-svg[data-region="all"] .gm-state[data-region="west"] { fill: #c8d9ed; }
:root[data-theme="light"] .modern-map .glocal-map-svg[data-region="all"] .gm-state[data-region="midwest"] { fill: #c5e0dc; }
:root[data-theme="light"] .modern-map .glocal-map-svg[data-region="all"] .gm-state[data-region="southwest"] { fill: #dfd0e5; }
:root[data-theme="light"] .modern-map .glocal-map-svg[data-region="all"] .gm-state[data-region="southeast"] { fill: #e1ddca; }
:root[data-theme="light"] .modern-map .glocal-map-svg[data-region="all"] .gm-state[data-region="northeast"] { fill: #d2d5eb; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-state.is-hovered,
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-state:focus { fill: #a7c8db; stroke: #397fa6; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-region rect { fill: #fff; stroke: #a6bfd0; stroke-opacity: 1; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-region text { fill: #24465f; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-region:hover rect,
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-region:focus rect { fill: #e6f3fa; stroke: var(--accent); }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-city text { fill: #213c54; stroke: #f5f8fb; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-city .gm-dot { fill: #316e91; stroke: #fff; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-city.is-selected .gm-dot,
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-city.is-selected.has-signal .gm-dot { fill: #d2643d; stroke: #fff; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-city.is-selected .gm-halo { fill: #df7955; fill-opacity: .2; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-city.is-selected text { fill: #0f344f; stroke: #fff; }
:root[data-theme="light"] .modern-map .glocal-map-svg .gm-city:hover .gm-dot { fill: #de704a; }

/* Feed, filters, and article cards. */
:root[data-theme="light"] .results-panel,
:root[data-theme="light"] .mobile-pane-map .results-panel,
:root[data-theme="light"] .city-open .results-panel { background: #fff; border-color: var(--line); scrollbar-color: #b9c8d5 transparent; }
:root[data-theme="light"] .city-preview-header h2,
:root[data-theme="light"] .results-heading h2 { color: var(--ink); }
:root[data-theme="light"] .city-preview-header .eyebrow,
:root[data-theme="light"] .results-heading .eyebrow { color: var(--accent); }
:root[data-theme="light"] .city-preview-header p,
:root[data-theme="light"] .feed-description,
:root[data-theme="light"] .feed-updated,
:root[data-theme="light"] .feed-stats,
:root[data-theme="light"] #preview-city-stats { color: var(--muted); }
:root[data-theme="light"] .feed-view-tabs { border-color: var(--line); }
:root[data-theme="light"] .feed-view-tabs button { color: var(--muted); }
:root[data-theme="light"] .feed-view-tabs button:hover { background: #f3f7fa; color: var(--accent); }
:root[data-theme="light"] .feed-view-tabs button[aria-pressed="true"] { color: var(--ink); }
:root[data-theme="light"] .feed-view-tabs button[aria-pressed="true"]::after { background: var(--accent); }
:root[data-theme="light"] .feed-region-chips button { border-color: color-mix(in srgb, var(--region-color) 55%, #fff); }
:root[data-theme="light"] .feed-region-chips button.selected,
:root[data-theme="light"] .feed-region-chips button[aria-pressed="true"] { background: color-mix(in srgb, var(--region-color) 13%, #fff); color: var(--ink); }
:root[data-theme="light"] .discovery-toolbar > .category-tabs { border-color: var(--line); background: #f7f9fb; }
:root[data-theme="light"] .category-tabs button { color: var(--muted); }
:root[data-theme="light"] .category-tabs button:hover { background: #eaf2f8; color: var(--accent); }
:root[data-theme="light"] .category-tabs button.selected,
:root[data-theme="light"] .category-tabs button.selected:hover { background: #d9ecf6; color: #12476a; }
:root[data-theme="light"] .results-meta,
:root[data-theme="light"] .results-meta .demo-label,
:root[data-theme="light"] .guide-group-heading,
:root[data-theme="light"] .guide-group-heading span { color: var(--dim); border-color: var(--line); }
:root[data-theme="light"] .news-post:hover,
:root[data-theme="light"] .watch-next-card:hover,
:root[data-theme="light"] .bulletin-card:hover,
:root[data-theme="light"] .city-open .bulletin-card:hover { background: #f3f7fa; color: var(--ink); }
:root[data-theme="light"] .news-post.is-current-story,
:root[data-theme="light"] .watch-next-card.is-current-edition,
:root[data-theme="light"] .bulletin-card.is-current-story,
:root[data-theme="light"] .city-open .event-card.bulletin-card.is-current-story { background: #eaf4fa; box-shadow: inset 3px 0 var(--accent); }
:root[data-theme="light"] .post-title,
:root[data-theme="light"] .post-name,
:root[data-theme="light"] .visual-story-link,
:root[data-theme="light"] .visual-story-link:hover,
:root[data-theme="light"] .visual-story-link .post-title,
:root[data-theme="light"] .watch-next-card .media-card-copy h3,
:root[data-theme="light"] .city-open .watch-next-card .media-card-copy h3,
:root[data-theme="light"] .bulletin-card h3,
:root[data-theme="light"] .city-open .bulletin-card h3 { color: var(--ink); }
:root[data-theme="light"] .post-dek,
:root[data-theme="light"] .visual-story-link .post-dek,
:root[data-theme="light"] .mixed-post .post-copy .visual-story-link .post-dek,
:root[data-theme="light"] .feature-dek,
:root[data-theme="light"] .feature-body { color: #415367; }
:root[data-theme="light"] .post-time,
:root[data-theme="light"] .post-handle,
:root[data-theme="light"] .post-source-count,
:root[data-theme="light"] .post-footer .post-source,
:root[data-theme="light"] .mixed-post .post-footer .post-source,
:root[data-theme="light"] .watch-next-agent,
:root[data-theme="light"] .bulletin-meta { color: var(--muted); }
:root[data-theme="light"] .mixed-post .post-city-link { color: var(--accent); }
:root[data-theme="light"] .mixed-post .post-city-link:hover { color: #0e456b; }
:root[data-theme="light"] .post-open,
:root[data-theme="light"] .post-listen,
:root[data-theme="light"] .post-footer .post-watch { color: var(--accent); }
:root[data-theme="light"] .post-status.status-watch { color: #86610b; }
:root[data-theme="light"] .post-status.status-following { color: #86610b; }
:root[data-theme="light"] .post-status.status-improving { color: #247453; }
:root[data-theme="light"] .post-status.status-progress { color: #247453; }
:root[data-theme="light"] .post-status.status-scheduled,
:root[data-theme="light"] .post-status.status-forecast { color: #536b82; }
:root[data-theme="light"] .ai-tag { background: #deedf6; color: #164d70; }
:root[data-theme="light"] .story-facts > span { border-color: var(--line); color: #4b5c6f; background: #f7f9fb; }
:root[data-theme="light"] .format-text .post-copy > .story-facts > span { color: var(--accent); background: transparent; }
:root[data-theme="light"] .story-visual,
:root[data-theme="light"] .post-image { background: #eef3f7; border-color: var(--line); }
:root[data-theme="light"] .visual-graphic img { background: #eef3f7; }
:root[data-theme="light"] .feature-avatar { background: #e7f1f7; border-color: #bfd5e3; color: var(--accent); }
:root[data-theme="light"] .feature-byline small,
:root[data-theme="light"] .feature-source,
:root[data-theme="light"] .feature-source > span { color: var(--muted); }
:root[data-theme="light"] .feature-source > a,
:root[data-theme="light"] .feature-source button { color: var(--accent); }
:root[data-theme="light"] .feature-audio { background: #f3f8fb; border-color: var(--line); }
:root[data-theme="light"] .feature-audio > span,
:root[data-theme="light"] .feature-audio strong { color: var(--accent); }
:root[data-theme="light"] .feature-audio small { color: var(--muted); }
:root[data-theme="light"] .feature-watch-caption { background: #eef5fa; border-color: var(--line); }
:root[data-theme="light"] .feature-watch-caption strong,
:root[data-theme="light"] .feature-watch-caption b { color: var(--accent); }
:root[data-theme="light"] .feature-watch-caption > span { color: var(--muted); }
:root[data-theme="light"] .source-media-card { background: #f6f9fb; border-color: var(--line); }
:root[data-theme="light"] .source-media-card > header { border-color: var(--line); }
:root[data-theme="light"] .source-media-card > header strong { color: var(--ink); }
:root[data-theme="light"] .source-media-card > header small,
:root[data-theme="light"] .source-embed-status { color: var(--muted) !important; }
:root[data-theme="light"] .source-media-card > header a { color: var(--accent); }
:root[data-theme="light"] .source-embed-load { background: #eef5fa; color: var(--ink); }
:root[data-theme="light"] .source-embed-load:hover { background: #dcecf6; }
:root[data-theme="light"] .source-provider-mark { background: #d4e9f5; color: var(--accent); }
:root[data-theme="light"] .source-embed-load small { color: var(--muted); }

/* Following, conversation, and compose surfaces. */
:root[data-theme="light"] .feed-follow-city,
:root[data-theme="light"] .mixed-post .post-byline .post-follow { border-color: #bcd2e1; color: var(--accent); }
:root[data-theme="light"] .feed-follow-city[aria-pressed="true"],
:root[data-theme="light"] .mixed-post .post-byline .post-follow[aria-pressed="true"] { background: #e1f1f9; border-color: #9cc5dc; color: #10496e; }
:root[data-theme="light"] .following-chooser,
:root[data-theme="light"] .community-thread { background: #f7fafc; border-color: var(--line); }
:root[data-theme="light"] .following-chooser strong,
:root[data-theme="light"] .community-thread-header strong,
:root[data-theme="light"] .community-empty strong,
:root[data-theme="light"] .community-comment-byline strong { color: var(--ink); }
:root[data-theme="light"] .following-chooser > div:first-child > span,
:root[data-theme="light"] .community-thread-header small,
:root[data-theme="light"] .community-comment-byline,
:root[data-theme="light"] .community-empty,
:root[data-theme="light"] .community-comment-copy > p { color: var(--muted); }
:root[data-theme="light"] .following-cities button,
:root[data-theme="light"] .community-compose-modes button { border-color: var(--line); color: var(--muted); }
:root[data-theme="light"] .following-cities button[aria-pressed="true"],
:root[data-theme="light"] .community-compose-modes button[aria-pressed="true"] { background: #d9edf8; border-color: #a8cee2; color: #10496e; }
:root[data-theme="light"] .story-community,
:root[data-theme="light"] .community-filters,
:root[data-theme="light"] .community-comment { border-color: var(--line); }
:root[data-theme="light"] .community-actions button,
:root[data-theme="light"] .community-filters button,
:root[data-theme="light"] .community-comment-tools button,
:root[data-theme="light"] .community-name-label { color: var(--muted); }
:root[data-theme="light"] .community-actions button:hover,
:root[data-theme="light"] .community-actions button[aria-pressed="true"],
:root[data-theme="light"] .community-filters button[aria-pressed="true"] { color: var(--accent); }
:root[data-theme="light"] .community-actions button:hover { background: #e9f3f9; }
:root[data-theme="light"] .community-avatar,
:root[data-theme="light"] .community-invite .community-avatar { background: #dfeef7; color: var(--accent); }
:root[data-theme="light"] .community-name-label input,
:root[data-theme="light"] .community-text-label textarea { color: var(--ink); border-color: #bdccd8; background: #fff; }
:root[data-theme="light"] .community-text-label textarea::placeholder { color: var(--dim); }
:root[data-theme="light"] .community-compose-footer button { background: var(--accent); color: #fff; }
:root[data-theme="light"] .community-peek { background: #f4f8fb; color: var(--ink); border-color: #a7c7da; }
:root[data-theme="light"] .community-peek-copy > span,
:root[data-theme="light"] .community-invite { color: var(--muted); }

/* City channel and reading view. Video remains naturally dark. */
:root[data-theme="light"] .city-dashboard,
:root[data-theme="light"] .city-open .city-dashboard { background: #fff; color: var(--ink); scrollbar-color: #bfceda transparent; }
:root[data-theme="light"] .city-dashboard .station-heading h2,
:root[data-theme="light"] .city-dashboard .station-program h3,
:root[data-theme="light"] .channel-reading-body h2,
:root[data-theme="light"] .channel-reading-body .story-detail-section h3,
:root[data-theme="light"] .channel-reading-body .story-evidence h4 { color: var(--ink); }
:root[data-theme="light"] .city-dashboard .station-heading .eyebrow,
:root[data-theme="light"] .city-dashboard .station-program .event-category,
:root[data-theme="light"] .channel-reading-body .eyebrow { color: var(--accent); }
:root[data-theme="light"] .city-dashboard .station-summary,
:root[data-theme="light"] .city-dashboard .station-demo-note,
:root[data-theme="light"] .channel-reading-body p,
:root[data-theme="light"] .channel-reading-body .story-detail-section p { color: var(--muted); }
:root[data-theme="light"] .channel-top .channel-navigation,
:root[data-theme="light"] .channel-reading-toolbar,
:root[data-theme="light"] .creator-profile { border-color: var(--line); }
:root[data-theme="light"] .city-dashboard .channel-top .channel-button,
:root[data-theme="light"] .city-dashboard .station-tabs button { color: var(--muted); }
:root[data-theme="light"] .city-dashboard .channel-button.is-active,
:root[data-theme="light"] .city-dashboard .station-tabs button[aria-pressed="true"] { color: var(--accent); }
:root[data-theme="light"] .city-dashboard .channel-button.is-active::after,
:root[data-theme="light"] .city-dashboard .station-tabs button[aria-pressed="true"]::after { background: var(--accent); }
:root[data-theme="light"] .city-dashboard .channel-button:hover { color: #10496e; }
:root[data-theme="light"] .player-utility,
:root[data-theme="light"] .player-utility #playback-status,
:root[data-theme="light"] .creator-identity > span { color: var(--muted); }
:root[data-theme="light"] .creator-identity strong,
:root[data-theme="light"] .station-newsroom-intro h3,
:root[data-theme="light"] .station-desk strong { color: var(--ink); }
:root[data-theme="light"] .creator-profile button.station-prompt-link,
:root[data-theme="light"] .channel-reading-toolbar button { color: var(--accent); }
:root[data-theme="light"] .city-dashboard .station-info,
:root[data-theme="light"] .city-dashboard .station-share,
:root[data-theme="light"] .player-utility .broadcast-transport button { background: #f8fafc; border-color: var(--line); color: var(--accent); }
:root[data-theme="light"] .city-dashboard .station-info:hover,
:root[data-theme="light"] .city-dashboard .station-share:hover,
:root[data-theme="light"] .player-utility .broadcast-transport button:hover { background: #e8f2f8; color: #10496e; }
:root[data-theme="light"] .channel-reader,
:root[data-theme="light"] .channel-reading-body .detail-facts,
:root[data-theme="light"] .channel-reading-body .detail-notice { color: var(--muted); }
:root[data-theme="light"] .channel-reading-body .agent-assignment,
:root[data-theme="light"] .channel-reading-body pre { background: #f4f8fb; color: var(--ink); border-color: var(--line); }
:root[data-theme="light"] .channel-reading-body .agent-identity strong,
:root[data-theme="light"] .channel-reading-body summary { color: var(--ink); }
:root[data-theme="light"] .channel-reading-body .agent-identity span,
:root[data-theme="light"] .channel-reading-body .agent-state { color: var(--muted); }
:root[data-theme="light"] .channel-reading-body .agent-emblem { background: #dfeef7; color: var(--accent); }
:root[data-theme="light"] .channel-reading-body .primary-button { background: var(--accent); color: #fff; }
:root[data-theme="light"] .station-newsroom-intro p,
:root[data-theme="light"] .station-desk small,
:root[data-theme="light"] .station-desk > span > span,
:root[data-theme="light"] .station-pipeline li span,
:root[data-theme="light"] .station-pipeline > p { color: var(--muted); }
:root[data-theme="light"] .station-desk { border-color: var(--line); }
:root[data-theme="light"] .station-desk:hover { background: #f3f7fa; }

/* Search, Ask, and dialogs. */
:root[data-theme="light"] dialog { background: #fff; color: var(--ink); border-color: var(--line); box-shadow: 0 24px 80px #2f4e6829; }
:root[data-theme="light"] dialog::backdrop { background: #1f334b88; }
:root[data-theme="light"] dialog h2 { color: var(--ink); }
:root[data-theme="light"] dialog p,
:root[data-theme="light"] .city-option small,
:root[data-theme="light"] .home-city-controls small { color: var(--muted); }
:root[data-theme="light"] .dialog-top .eyebrow { color: var(--accent); }
:root[data-theme="light"] .small-icon { color: var(--accent); background: #f3f8fb; border-color: var(--line); }
:root[data-theme="light"] .dialog-search,
:root[data-theme="light"] #ask-input { background: #f7fafc; border-color: #bccfdd; color: var(--ink); }
:root[data-theme="light"] .dialog-search input { color: var(--ink); }
:root[data-theme="light"] .city-option { color: var(--ink); border-color: var(--line); }
:root[data-theme="light"] .city-option:hover { background: #edf5fa; color: var(--ink); }
:root[data-theme="light"] .ask-examples button { background: #f5f9fb; border-color: var(--line); color: var(--accent); }
:root[data-theme="light"] .primary-button { background: var(--accent); color: #fff; }
:root[data-theme="light"] .primary-button:hover { background: #10496e; color: #fff; }
:root[data-theme="light"] .ask-response,
:root[data-theme="light"] .intent-filter { background: #eaf4fa; border-color: #bed9e9; color: var(--ink); }
:root[data-theme="light"] .intent-filter button { color: var(--accent); }
:root[data-theme="light"] .empty-state h3 { color: var(--ink); }
:root[data-theme="light"] .empty-state p { color: var(--muted); }
:root[data-theme="light"] .toast { background: #e7f4fa; color: #10425f; border-color: #b6d5e6; }

/* Sports rail, match view, and generated score visuals. */
:root[data-theme="light"] .sports-rail { background: #fff; border-color: var(--line); scrollbar-color: #bdcbd8 transparent; }
:root[data-theme="light"] .score-rail-kicker,
:root[data-theme="light"] .game-eyebrow,
:root[data-theme="light"] .game-section-label { color: var(--accent); }
:root[data-theme="light"] .score-rail-top h3,
:root[data-theme="light"] .football-explorer-head h2,
:root[data-theme="light"] .game-source h2 { color: var(--ink); }
:root[data-theme="light"] .score-rail-note,
:root[data-theme="light"] .score-rail-empty,
:root[data-theme="light"] .score-rail-source,
:root[data-theme="light"] .football-explorer-head > span { color: var(--muted); }
:root[data-theme="light"] .score-rail-pulse { background: var(--accent); box-shadow: 0 0 0 4px #cfe5f1; }
:root[data-theme="light"] .score-card { background: #f7fafc; border-color: var(--line); color: var(--ink); }
:root[data-theme="light"] .score-card:hover { background: #eaf4fa; border-color: #a7c9dd; }
:root[data-theme="light"] .score-card-heading { color: var(--accent); }
:root[data-theme="light"] .score-card-heading i,
:root[data-theme="light"] .score-card-bottom { color: var(--muted); }
:root[data-theme="light"] .score-card-bottom { border-color: var(--line); }
:root[data-theme="light"] .score-card-bottom b { color: var(--ink); }
:root[data-theme="light"] .score-card-bottom b.live { color: #a63e2b; }
:root[data-theme="light"] .score-rail-source a { color: var(--accent); }
:root[data-theme="light"] .city-dashboard .game-view { color: var(--ink); }
:root[data-theme="light"] .game-back { background: #edf5fa; color: var(--accent); border-color: #bcd5e5; }
:root[data-theme="light"] .game-back:hover { background: #dcecf5; }
:root[data-theme="light"] .game-checked { color: var(--muted); }
:root[data-theme="light"] .game-hero { background: radial-gradient(circle at 92% 12%, #d8e9f5, transparent 42%), linear-gradient(145deg, #e5f1f8, #f9fbfd 68%); border-color: #bbd5e5; box-shadow: 0 15px 36px #57799324; }
:root[data-theme="light"] .game-hero::after { background: linear-gradient(90deg, #3c92be, #1c638c, #e6815b); }
:root[data-theme="light"] .game-status,
:root[data-theme="light"] .game-meta { color: #485d70; }
:root[data-theme="light"] .game-meta { border-color: #c9dce8; }
:root[data-theme="light"] .game-team > span,
:root[data-theme="light"] .game-team-copy > span { color: var(--accent); }
:root[data-theme="light"] .game-at { color: #637f94; }
:root[data-theme="light"] .game-source p,
:root[data-theme="light"] .game-empty { color: var(--muted); }
:root[data-theme="light"] .game-source a,
:root[data-theme="light"] .game-story > span { color: var(--accent); }
:root[data-theme="light"] .game-source small { color: #87570e; }
:root[data-theme="light"] .game-coverage-head,
:root[data-theme="light"] .game-story { border-color: var(--line); }
:root[data-theme="light"] .game-story { color: var(--ink); }
:root[data-theme="light"] .game-story small,
:root[data-theme="light"] .game-coverage-head > span:last-child { color: var(--muted); }
:root[data-theme="light"] .field-insight { background: #f3f8fb; border-color: #c9dbe7; }
:root[data-theme="light"] .field-insight p,
:root[data-theme="light"] .field-disclosure { color: var(--muted); }
:root[data-theme="light"] .field-insight > a,
:root[data-theme="light"] .field-insight > button { background: #e0eff7; color: var(--accent); border-color: #b9d5e5; }
:root[data-theme="light"] .field-insight > a:hover,
:root[data-theme="light"] .field-insight > button:hover { background: #cfe5f1; }
:root[data-theme="light"] .feed-score-wrap .score-visual,
:root[data-theme="light"] .score-visual { background: radial-gradient(ellipse at 25% 10%, #d5e8f4, transparent 75%), #eaf3f9; border: 1px solid #cadde9; }
:root[data-theme="light"] .score-label,
:root[data-theme="light"] .score-team > small,
:root[data-theme="light"] .score-team > span { color: #4d6578; }
:root[data-theme="light"] .score-team > strong { color: var(--ink); }
:root[data-theme="light"] .score-divider { color: #8098aa; }
:root[data-theme="light"] .score-note { color: var(--accent); border-color: #cbdde9; }
:root[data-theme="light"] .feed-forecast { background: radial-gradient(ellipse at 85% 10%, #d0e8f5, transparent 80%), #f0f7fb; border-color: #c2dbe9; }
:root[data-theme="light"] .feed-forecast-top,
:root[data-theme="light"] .feed-forecast-stats strong { color: var(--ink); }
:root[data-theme="light"] .feed-forecast-top > span:last-child,
:root[data-theme="light"] .feed-forecast-stats span,
:root[data-theme="light"] .feed-forecast > p { color: var(--muted); }
:root[data-theme="light"] .feed-forecast > p { border-color: var(--line); }

@media (min-width: 1360px) {
  :root[data-theme="light"] .explorer:not(.city-open) .sports-rail { background: #fff; }
}
@media (max-width: 760px) {
  :root[data-theme="light"] .site-header { background: #ffffffed; }
  :root[data-theme="light"] .mobile-nav { background: #fffffff0; border-color: var(--line); }
  :root[data-theme="light"] .mobile-nav button { color: var(--muted); }
  :root[data-theme="light"] .mobile-nav button[aria-current="page"] { background: #dceef8; color: #124d73; }
  :root[data-theme="light"] .results-panel,
  :root[data-theme="light"] .mobile-pane-map .results-panel,
  :root[data-theme="light"] .city-open .results-panel { border-color: var(--line); }
  .theme-toggle { width: 36px; height: 36px; }
}
@media (max-width: 390px) {
  .site-header .header-end .location-button { width: 36px; min-width: 36px; max-width: 36px; padding: 0; }
  .site-header .header-end .location-button #header-city {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  .site-header .header-end .location-button .chevron { display: none; }
}
