/* Page-specific night palette. Card artwork, game previews and video pixels stay original. */

/* About */
:root[data-theme="dark"] .about-page main { background: var(--theme-bg); }
:root[data-theme="dark"] :is(
  .about-hero-copy h1, .about-compact-heading h2, .about-upgrade-copy h2,
  .about-social-copy h2, .about-prestige-copy h2, .about-cosmetics-copy h2,
  .about-steps strong, .about-constellation b, .about-cosmetic-rules strong,
  .about-frame-contract b, .about-frame-sample figcaption strong,
  .about-dye-pair figcaption strong, .about-media-card h3, .about-social-steps strong,
  .about-date-gallery figcaption, .about-prestige-copy > p strong,
  .about-rarity-card figcaption strong, .about-more-grid h3
) { color: var(--theme-text); }
:root[data-theme="dark"] :is(
  .about-hero-copy > p:not(.kicker), .about-upgrade-copy > p:not(.kicker),
  .about-cosmetics-copy > p:not(.kicker), .about-social-copy > p:not(.kicker),
  .about-prestige-copy > p:not(.kicker), .about-steps p, .about-lock-note,
  .about-cosmetic-facts small, .about-cosmetic-rules li, .about-frame-contract span,
  .about-frame-sample figcaption span, .about-dye-pair figcaption span,
  .about-dye-pair figcaption small, .about-media-card p, .about-social-steps li,
  .about-prestige-rate small, .about-rarity-card figcaption, .about-more-grid p
) { color: var(--theme-muted); }
:root[data-theme="dark"] :is(
  .about-loop, .about-play, .about-hero-media, .about-constellation,
  .about-cosmetic-facts span, .about-frame-contract span, .about-cosmetic-links a,
  .about-dye-pair figure, .about-media-card, .about-date-gallery figure,
  .about-prestige-rate, .about-motion-toggle
) {
  border-color: var(--theme-border);
  background: var(--theme-surface);
  box-shadow: none;
}
:root[data-theme="dark"] :is(
  .about-steps li, .about-cosmetic-rules li, .about-social-steps li,
  .about-media-card > img, .about-more-grid, .about-more-grid article
) { border-color: var(--theme-border); }
:root[data-theme="dark"] :is(.about-cosmetics, .about-prestige) {
  border-color: var(--theme-border);
  background:
    radial-gradient(circle at 90% 10%, rgba(242, 165, 210, .09), transparent 40%),
    radial-gradient(circle at 6% 100%, rgba(121, 221, 235, .08), transparent 45%),
    var(--theme-surface);
  box-shadow: 0 14px 32px rgba(0, 0, 0, .15);
}
:root[data-theme="dark"] :is(
  .about-steps li > span, .about-stat-list li, .about-rarity-label
) {
  border-color: rgba(121, 221, 235, .3);
  color: var(--theme-cyan);
  background: #153341;
}
:root[data-theme="dark"] :is(
  .about-constellation small, .about-cosmetic-facts b, .about-prestige-rate b,
  .about-cosmetic-links a, .about-motion-toggle
) { color: var(--theme-cyan); }
:root[data-theme="dark"] :is(
  .about-lock-note strong, .about-cosmetic-links code,
  .about-prestige-rate span:last-child b, .about-prestige-rate i, .about-constellation i
) { color: var(--theme-pink); }
:root[data-theme="dark"] .about-lock-note {
  border-left-color: var(--theme-pink);
  background: #291e32;
}
:root[data-theme="dark"] :is(
  .about-rarity-card-prestige .about-rarity-label, .about-motion-toggle[aria-pressed='true']
) {
  border-color: rgba(242, 165, 210, .35);
  color: var(--theme-pink);
  background: #291e32;
}
:root[data-theme="dark"] .about-dye-premium {
  border-color: #635382 !important;
  background: linear-gradient(125deg, var(--theme-surface), #291e3a) !important;
}
:root[data-theme="dark"] :is(.about-motion-toggle:hover, .about-cosmetic-links a:hover) {
  border-color: var(--theme-cyan);
  color: var(--theme-text);
  background: var(--theme-surface-raised);
}

/* How to play and readable video transcripts */
:root[data-theme="dark"] .learn-app {
  color-scheme: dark;
  --ink: var(--theme-text);
  --muted: var(--theme-muted);
  --cyan: var(--theme-cyan);
  --pink: var(--theme-pink);
  --line: var(--theme-border);
  --paper: var(--theme-surface);
  color: var(--theme-text);
  background: linear-gradient(180deg, var(--theme-bg), #0c2a36 52%, #112b39);
}
:root[data-theme="dark"] .learn-app .learn-hero::before {
  opacity: .18;
  background: linear-gradient(#0b122055, #0b1220f8), url('/learn/celestial-atrium.webp') center 46% / cover;
}
:root[data-theme="dark"] .learn-app :is(
  .step-card h3, .watch-heading h3, .reference-table h3, .detail-section h3,
  .search-result, .more-details > summary, .reference-table td:first-child
) { color: var(--theme-text); }
:root[data-theme="dark"] .learn-app :is(
  .learn-hero > p:not(.eyebrow):not(.resume-note), .resume-button, .resume-note,
  .lesson-sidebar > .eyebrow, .category-number, .topic-search > summary,
  .topic-search > summary::after, .search-summary, .search-result small, .no-results,
  .sidebar-note, .lesson-header > p:last-child, .step-card > p:not(.step-count),
  .step-result > span, .result-label, .step-result > div > p:last-child, .step-position,
  .watch-heading > span, .media-description, .video-unavailable, .video-shortcuts > summary,
  .sample-scene span, .playback-status, .more-details > summary > small,
  .more-details > summary > span::after, .fact-label, .fact p, .reference-table th,
  .reference-table td, .table-note, .copy-command, .small-note, .detail-section ul,
  .noscript-notice, .mobile-topic-picker > label, .try-lesson p,
  .learn-transcript .time, .learn-transcript .intro, .learn-transcript .note
) { color: var(--theme-muted); }
:root[data-theme="dark"] .learn-app .category-link { color: var(--theme-muted); }
:root[data-theme="dark"] .learn-app :is(
  .eyebrow, .quiet-button, .step-count, .fact-value, .command-row code, .sample-scene
) { color: var(--theme-cyan); }
:root[data-theme="dark"] .learn-app :is(.learn-hero h1 em, .quiet-button:not(:disabled):hover) {
  color: var(--theme-pink);
}
:root[data-theme="dark"] .learn-app :is(
  .search-field input, .search-results, .step-card, .video-unavailable,
  .sample-scene, .fact, .reference-table, .command-row, .try-lesson,
  .mobile-topic-picker > select
) {
  border-color: var(--theme-border);
  background: var(--theme-surface);
}
:root[data-theme="dark"] .learn-app :is(.search-field input, .mobile-topic-picker > select) {
  color: var(--theme-text);
}
:root[data-theme="dark"] .learn-app .search-field input::placeholder { color: var(--theme-muted); }
:root[data-theme="dark"] .learn-app :is(
  .topic-search, .search-result + .search-result, .step-navigation, .more-details,
  .reference-table th, .reference-table td, .video-shell
) { border-color: var(--theme-border); }
:root[data-theme="dark"] .learn-app :is(.video-shell, video) { background: var(--theme-bg); }
:root[data-theme="dark"] .learn-app .step-result {
  border-left-color: var(--theme-pink);
  background: linear-gradient(90deg, #242336, var(--theme-surface));
}
:root[data-theme="dark"] .learn-app :is(
  .category-link:hover, .search-result:hover, .sample-scene:hover,
  .sample-scene[aria-pressed=true]
) { color: var(--theme-cyan); background: var(--theme-surface-raised); }
:root[data-theme="dark"] .learn-app .sample-scene[aria-pressed=true] { border-color: var(--theme-cyan); }
:root[data-theme="dark"] .learn-app .category-link[aria-current=true] {
  border-left-color: var(--theme-pink);
  color: var(--theme-cyan);
  background: linear-gradient(90deg, #164957, transparent);
}
:root[data-theme="dark"] .learn-app #category-nav { scrollbar-color: #405875 transparent; }
:root[data-theme="dark"] .learn-app .primary-button {
  border-color: var(--theme-cyan);
  color: var(--theme-bg);
  background: var(--theme-cyan);
}
:root[data-theme="dark"] .learn-app .primary-button:hover { background: #a5edf5; }
:root[data-theme="dark"] .learn-app .play-lesson:disabled {
  border-color: var(--theme-border);
  color: var(--theme-muted);
  background: var(--theme-surface-raised);
}
:root[data-theme="dark"] .learn-app :is(button, a, input, select, summary):focus-visible {
  outline-color: var(--theme-pink);
}
:root[data-theme="dark"] .learn-app .detail-section li::marker { color: var(--theme-cyan); }
:root[data-theme="dark"] .learn-app .learn-transcript .note { border-left-color: var(--theme-pink); }
@media (max-width: 760px) {
  :root[data-theme="dark"] .learn-app .lesson-sidebar {
    border-color: var(--theme-border);
    background: rgba(8, 25, 35, .96);
  }
}

/* Leaderboards */
:root[data-theme="dark"] :is(.board-definitions article, .leader-row, .pagination > a, .pagination > span) {
  border-color: var(--theme-border);
  background: var(--theme-surface);
}
:root[data-theme="dark"] .leader-row:hover { background: var(--theme-surface-raised); }
:root[data-theme="dark"] .leader-row.rank-1 { background: linear-gradient(90deg, #302b1e, var(--theme-surface) 50%); }
:root[data-theme="dark"] .leader-row.rank-2 { background: linear-gradient(90deg, #263442, var(--theme-surface) 50%); }
:root[data-theme="dark"] .leader-row.rank-3 { background: linear-gradient(90deg, #31271f, var(--theme-surface) 50%); }
:root[data-theme="dark"] :is(.player-cell strong, .score-cell strong) { color: var(--theme-text); }
:root[data-theme="dark"] :is(
  .board-updated span, .board-updated small, .leader-labels, .player-cell small,
  .score-cell span, .board-footer > p, .pagination > span, .pagination small
) { color: var(--theme-muted); }
:root[data-theme="dark"] :is(.player-sigil, .board-tabs a:hover, .board-tabs a.is-active) { color: var(--theme-cyan); }
:root[data-theme="dark"] .board-tabs a { color: var(--theme-muted); }
:root[data-theme="dark"] :is(
  .leaderboards-page .leaderboard-hero, .leaderboard-tabs, .board-rewards-inactive,
  .leader-player-table thead th, .leader-card-owner, .leader-card-art-shell
) { border-color: var(--theme-border); background: var(--theme-surface); }
:root[data-theme="dark"] :is(
  .leaderboards-page .board-header, .board-reward-tiers > div, .leader-player-table-scroll,
  .leader-card-tile, .leader-card-rank
) { border-color: var(--theme-border); background: var(--theme-surface); }
:root[data-theme="dark"] .leaderboard-tabs a { color: var(--theme-muted); }
:root[data-theme="dark"] :is(.leaderboard-tabs a:hover, .leaderboard-tabs a[aria-current="page"]) {
  color: var(--theme-cyan);
  background: var(--theme-surface-raised);
}
:root[data-theme="dark"] .leaderboard-tabs a[aria-current="page"] { border-color: var(--theme-cyan); }
:root[data-theme="dark"] :is(
  .leaderboards-page .board-header h2, .leader-player-table tbody th,
  .leader-player-name, .leader-card-copy h3, .board-rewards-inactive h3,
  .leader-rank-tier, .leader-record
) { color: var(--theme-text); }
:root[data-theme="dark"] :is(
  .leaderboards-page .board-description, .leaderboards-page .rank-number,
  .leaderboards-page .database-empty p, .board-rewards p, .board-reward-tiers dt,
  .leader-player-table thead th, .leader-player-score > span, .leader-win-rate,
  .leader-card-art-fallback, .leader-card-copy > p, .leader-card-score span, .leader-card-meta
) { color: var(--theme-muted); }
:root[data-theme="dark"] .board-rewards {
  --reward-ink: var(--theme-cyan);
  --reward-border: var(--theme-border);
  background: linear-gradient(115deg, #15303e, var(--theme-surface));
}
:root[data-theme="dark"] :is(
  .board-rewards a, .leader-player-score, .leader-player-score > .leader-projected-reward,
  .leader-card-score strong, .leader-card-meta code
) { color: var(--theme-cyan); }
:root[data-theme="dark"] :is(.leader-player-table th, .leader-player-table td, .leader-card-meta) {
  border-color: var(--theme-border);
}
:root[data-theme="dark"] .leader-player-table .rank-1 { background: #28271f; }
:root[data-theme="dark"] .leader-player-avatar {
  border-color: var(--theme-border);
  color: var(--theme-cyan);
  background: var(--theme-surface-raised);
}
:root[data-theme="dark"] .leader-player-avatar img { background: var(--theme-surface-raised); }
:root[data-theme="dark"] .leader-card-art-shell[data-leader-card-media-state="unavailable"] {
  background: repeating-linear-gradient(135deg, #111e31, #111e31 12px, #152338 12px, #152338 24px);
}
:root[data-theme="dark"] .leaderboards-page .rarity-ssr {
  border-color: #417887;
  color: var(--theme-cyan);
  background: #153341;
}
:root[data-theme="dark"] .leader-card-meta code { background: var(--theme-surface-raised); }
:root[data-theme="dark"] .leader-card-meta b { color: var(--theme-pink); }

/* Terms and privacy */
:root[data-theme="dark"] .legal-body { color: var(--theme-text); background: var(--theme-bg); }
:root[data-theme="dark"] .legal-hero {
  border-color: var(--theme-border);
  background:
    radial-gradient(circle at 15% 10%, rgba(121, 221, 235, .08), transparent 25rem),
    radial-gradient(circle at 85% 55%, rgba(242, 165, 210, .06), transparent 28rem),
    var(--theme-bg);
}
:root[data-theme="dark"] :is(
  .legal-hero > div > p:not(.kicker, .legal-date), .legal-hero .legal-date,
  .legal-toc a, .legal-copy p, .legal-copy li, .legal-contact p, .legal-contact li
) { color: var(--theme-muted); }
:root[data-theme="dark"] :is(
  .legal-toc strong, .legal-copy h2, .legal-contact h2, .legal-copy h3
) { color: var(--theme-text); }
:root[data-theme="dark"] :is(.legal-toc, .legal-data-grid article, .legal-contact) {
  border-color: var(--theme-border);
  background: var(--theme-surface);
}
:root[data-theme="dark"] .legal-copy section { border-color: var(--theme-border); }
:root[data-theme="dark"] .legal-summary {
  border-color: var(--theme-border) !important;
  background: linear-gradient(135deg, #142d3b, #261f32);
}
:root[data-theme="dark"] .legal-contact { border-left-color: var(--theme-cyan); }
:root[data-theme="dark"] :is(.legal-copy a, .legal-contact a, .legal-toc a:hover) { color: var(--theme-cyan); }
:root[data-theme="dark"] :is(.legal-copy a:hover, .legal-contact a:hover) { color: var(--theme-pink); }
:root[data-theme="dark"] .legal-toc a:hover { background: var(--theme-surface-raised); }
:root[data-theme="dark"] :is(.legal-copy code, .legal-contact code) {
  border-color: var(--theme-border);
  color: var(--theme-cyan);
  background: var(--theme-surface-raised);
}

/* Card catalog and access screen */
:root[data-theme="dark"] :is(.catalog-page, .catalog-hero, .catalog-access-shell) {
  color: var(--theme-text);
  background:
    radial-gradient(circle at 82% 15%, rgba(242, 165, 210, .07), transparent 25rem),
    radial-gradient(circle at 8% 30%, rgba(121, 221, 235, .07), transparent 27rem),
    var(--theme-bg);
}
:root[data-theme="dark"] :is(
  .catalog-hero-metrics span, .catalog-toolbar, .catalog-series-panel, .catalog-character-card,
  .catalog-rarity-slot, .catalog-rarity-slot.rarity-has-art, .catalog-access-card
) { border-color: var(--theme-border); background: var(--theme-surface); }
:root[data-theme="dark"] :is(
  .catalog-search, .catalog-search kbd, .catalog-filter-row button,
  .catalog-series-header, .catalog-access-form input
) { border-color: var(--theme-border); background: var(--theme-surface-raised); }
:root[data-theme="dark"] :is(
  .catalog-toolbar-heading h2, .catalog-library-heading h2, .catalog-search input, .catalog-character-meta h3,
  .catalog-access-card h1, .catalog-access-form input
) { color: var(--theme-text); }
:root[data-theme="dark"] :is(
  .catalog-hero-metrics small, .catalog-toolbar-heading > p, .catalog-library-heading > p, .catalog-search kbd,
  .catalog-filter-label, .catalog-results, .catalog-completion-help,
  .catalog-series-stats span, .catalog-character-index, .catalog-source-name,
  .catalog-rarity-slot, .catalog-rarity-slot small, .catalog-rarity-slot.is-empty small,
  .catalog-empty-glyph, .catalog-no-results p, .catalog-access-form label,
  .catalog-access-card > p:not(.kicker):not(.catalog-access-error):not(.catalog-access-note),
  .catalog-access-note
) { color: var(--theme-muted); }
:root[data-theme="dark"] .catalog-filter-row button { color: var(--theme-muted); }
:root[data-theme="dark"] .catalog-coverage { color: var(--theme-muted); }
:root[data-theme="dark"] .catalog-search input::placeholder { color: var(--theme-muted); }
:root[data-theme="dark"] :is(
  .catalog-hero-metrics strong, .catalog-search, .catalog-series-stats strong, .catalog-no-results > span,
  .catalog-project-series-panel .catalog-category-label
) { color: var(--theme-cyan); }
:root[data-theme="dark"] :is(
  .catalog-hero h1 em, .catalog-category-label, .catalog-missing-group .catalog-toolbar-heading .kicker,
  .catalog-missing-group .catalog-series-stats strong
) { color: var(--theme-pink); }
:root[data-theme="dark"] .catalog-filter-row button:hover { border-color: var(--theme-cyan); color: var(--theme-text); }
:root[data-theme="dark"] :is(.catalog-filter-row button.is-active, .catalog-access-form button) {
  border-color: var(--theme-cyan);
  color: var(--theme-bg);
  background: var(--theme-cyan);
}
:root[data-theme="dark"] .catalog-access-form button:hover { background: #a5edf5; }
:root[data-theme="dark"] .catalog-missing-group {
  border-color: #694055;
  background: linear-gradient(#221c2e, var(--theme-bg) 600px);
}
:root[data-theme="dark"] :is(.catalog-group-links a, .catalog-data-status-ready) {
  border-color: #315e53; color: #95dfb7; background: #163129;
}
:root[data-theme="dark"] .catalog-coverage-complete { color: #95dfb7; }
:root[data-theme="dark"] .catalog-data-status-partial { border-color: #675734; color: #e8ca8b; background: #302a1f; }
:root[data-theme="dark"] .catalog-coverage-partial { color: #e8ca8b; }
:root[data-theme="dark"] :is(
  .catalog-group-links a:last-child, .catalog-data-status-incomplete,
  .catalog-data-status-missing, .catalog-access-error
) { border-color: #694055; color: var(--theme-pink); background: #302033; }
:root[data-theme="dark"] .catalog-coverage-missing { color: var(--theme-pink); }
:root[data-theme="dark"] :is(.catalog-data-status > i, .catalog-coverage i) { box-shadow: none; }
:root[data-theme="dark"] .catalog-rarity-label { color: var(--theme-muted); background: var(--theme-surface-raised); }
:root[data-theme="dark"] .rarity-c .catalog-rarity-label { color: #c2cddc; background: #293546; }
:root[data-theme="dark"] .rarity-r .catalog-rarity-label { color: var(--theme-cyan); background: #153341; }
:root[data-theme="dark"] .rarity-sr .catalog-rarity-label { color: #d0b9ff; background: #302442; }
:root[data-theme="dark"] .rarity-ssr .catalog-rarity-label { color: var(--theme-pink); background: #382439; }
:root[data-theme="dark"] .catalog-rarity-slot.rarity-has-art:hover { border-color: var(--theme-cyan); }
:root[data-theme="dark"] .catalog-no-results { border-color: var(--theme-border); }

/* Help widget, including topic search and the step-by-step guide */
:root[data-theme="dark"] .support-chat { --support-accent: var(--theme-cyan); color: var(--theme-text); }
:root[data-theme="dark"] .support-chat-panel {
  border-color: var(--theme-border);
  background: var(--theme-bg);
  box-shadow: 0 18px 64px rgba(0, 0, 0, .4), 0 3px 12px rgba(0, 0, 0, .15);
}
:root[data-theme="dark"] .support-chat-header {
  border-color: var(--theme-border);
  background: radial-gradient(ellipse at top right, #175568, transparent 75%), var(--theme-surface);
}
:root[data-theme="dark"] .support-chat-body { background: radial-gradient(ellipse at 0 0, rgba(121, 221, 235, .05), transparent 70%); }
:root[data-theme="dark"] :is(
  .support-chat-mark, .support-chat-topic, .support-chat-message-bot, .support-chat-footer,
  .support-chat-form, .support-chat-search input, .support-chat-command,
  .support-chat-command > button, .support-chat-retry
) { border-color: var(--theme-border); background: var(--theme-surface); }
:root[data-theme="dark"] :is(.support-chat-topic, .support-chat-command > button) { color: var(--theme-cyan); }
:root[data-theme="dark"] :is(
  .support-chat-icon-button:hover, .support-chat-topic:hover,
  .support-chat-category-back, .support-chat-message code
) { border-color: var(--theme-border); color: var(--theme-cyan); background: var(--theme-surface-raised); }
:root[data-theme="dark"] :is(
  .support-chat-icon-button, .support-chat-welcome > span:last-child, .support-chat-speaker,
  .support-chat-note, .support-chat-links, .support-chat-browse:disabled,
  .support-chat-search label, .support-chat-search p, .support-chat-search-empty,
  .support-chat-command > p, .support-chat-status, .support-chat-form input:disabled
) { color: var(--theme-muted); }
:root[data-theme="dark"] :is(.support-chat-form input, .support-chat-search input) { color: var(--theme-text); }
:root[data-theme="dark"] :is(.support-chat-form input, .support-chat-search input)::placeholder { color: var(--theme-muted); }
:root[data-theme="dark"] :is(.support-chat-details, .support-chat-log:not(:empty) + .support-chat-topics) {
  border-color: var(--theme-border);
}
:root[data-theme="dark"] :is(.support-chat-form button, .support-chat-guide-nav [data-guide-next]) {
  border-color: var(--theme-cyan);
  color: var(--theme-bg);
  background: var(--theme-cyan);
}
:root[data-theme="dark"] .support-chat-guide-nav [data-guide-next]:hover { background: #a5edf5; }
:root[data-theme="dark"] .support-chat-form button:disabled { color: var(--theme-muted); background: var(--theme-surface-raised); }
:root[data-theme="dark"] .support-chat-progress { color: var(--theme-cyan); }
:root[data-theme="dark"] .support-chat-warning { border-color: #675734; color: #e8ca8b; background: #302a1f; }
:root[data-theme="dark"] .support-chat-message-user { border-color: #3b8fa4; color: var(--theme-text); background: #10536a; }
:root[data-theme="dark"] .support-chat .support-chat-message-user .support-chat-speaker { color: #d5f2ff; }
:root[data-theme="dark"] .support-chat-launcher { border-color: #4bafc3; color: var(--theme-text); background: #10536a; }
:root[data-theme="dark"] .support-chat-launcher:hover { background: #176477; }
