/* Velvet red (Jay, 2026-10-19: "select an iconic color for the site instead of black"): the header is a deep
   movie-palace burgundy that sits with the gold logo, and dark mode's backgrounds take a faint warm tint of it. */
/* film-reference.com: the site's look, loaded after style.css on every page since 2026-10-19 (the Baseball-Reference
   "classic" look was retired). System fonts (no downloads), softer surfaces, rounded cards, a dark sticky header.
   Light or dark follows the device unless the member picks one (html[data-mode="light"|"dark"], POST /prefs/mode):
   every dark rule is written twice, under prefers-color-scheme with :not([data-mode="light"]) and under
   [data-mode="dark"]. Links are one teal in each mode (no visited purple); gold is for the brand and buttons. */

:root {
  --bg: #f5f6f8; --surface: #ffffff; --surface-2: #f0f2f5; --border: #e3e6eb; --text: #16181d;
  --muted: #5f6672; --link: #0b6e77; --link-visited: #0b6e77; --accent: #b5891f; --accent-text: #7f5c0f; --on-accent: #17130a; --hover: #fff6d6;
  --head: #4a0d18; --head-text: #f6eee6; --shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .08);
  --radius: 10px;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-mode="light"]) {
    --bg: #110b0c; --surface: #1b1214; --surface-2: #24181b; --border: #3a272b; --text: #ece6e4;
    --muted: #9aa3b2; --link: #63c7cd; --link-visited: #63c7cd; --accent: #d9ae3a; --accent-text: #d9ae3a; --on-accent: #17130a; --hover: #2c2a1d;
    --head: #33080f; --head-text: #f6eee6; --shadow: none;
  }
}
:root[data-mode="dark"] {
  --bg: #110b0c; --surface: #1b1214; --surface-2: #24181b; --border: #3a272b; --text: #ece6e4;
  --muted: #9aa3b2; --link: #63c7cd; --link-visited: #63c7cd; --accent: #d9ae3a; --accent-text: #d9ae3a; --on-accent: #17130a; --hover: #2c2a1d;
  --head: #33080f; --head-text: #f6eee6; --shadow: none;
}

html { font-size: 15px; }
body { background: var(--bg); color: var(--text); line-height: 1.5;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
a { color: var(--link); }
a:visited { color: var(--link-visited); }
.muted, .daily h3, a.rank, ul.sources, table.stats td.rank { color: var(--muted); }
code { background: var(--surface-2); padding: 1px 4px; border-radius: 4px; }

/* Header */
header.site { background: var(--head); border-bottom: none; position: sticky; top: 0; z-index: 20; }
header.site .wrap { padding-top: 8px; padding-bottom: 8px; }
.logo { color: var(--head-text) !important; font-weight: 800; letter-spacing: -0.02em; }
.logo span { color: var(--accent-text); }
header nav a, header nav a:visited { color: #efdcd2; font-weight: 600; padding: 4px 8px; margin-right: 2px; border-radius: 999px; }
header nav a:hover { background: rgba(255, 255, 255, .1); color: #fff; text-decoration: none; }
nav.site-nav > a, details.menu > summary { color: #efdcd2; font-weight: 600; padding: 4px 8px; margin-right: 2px; border-radius: 999px; }
details.menu > summary:hover, details.menu[open] > summary, nav.site-nav > a.current { background: rgba(255, 255, 255, .1); color: #fff; }
.menu-panel { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); }
header nav .menu-panel a, header nav .menu-panel a:visited { color: var(--text); border-radius: 0; padding: 6px 14px; font-weight: 500; }
header nav .menu-panel a:hover { background: var(--surface-2); color: var(--text); }
header.site .account, header.site .account a, form.theme button { color: #e6d2c7; }
form.search input { background: rgba(255, 255, 255, .1); color: #f6eee6; border: 1px solid rgba(255, 255, 255, .18); border-radius: 8px 0 0 8px; padding: 6px 10px; }
form.search input::placeholder { color: rgba(246, 238, 230, .7); }
form.search button { background: var(--accent); color: var(--on-accent); border: none; border-radius: 0 8px 8px 0; padding: 6px 12px; font-weight: 600; }
form.search { gap: 0; }
ul.suggest { background: var(--surface); border-color: var(--border); border-radius: 8px; overflow: hidden; }
ul.suggest li a { color: var(--text); padding: 6px 10px; }
ul.suggest li.active a, ul.suggest li a:hover { background: var(--hover); }

/* Type */
h1 { font-size: 2rem; font-weight: 800; letter-spacing: -0.02em; }
h2 { font-size: 1.2rem; font-weight: 700; border-bottom: none; padding-bottom: 0; margin-top: 26px; }
h2::after { content: ""; display: block; width: 36px; height: 3px; margin-top: 4px; background: var(--accent); border-radius: 2px; }
.grid-promo h2::after, .mg-group h2::after { display: none; }

/* Cards */
.meta, .daily .feature, .tile, .statline, .notice, details.grid-answers, pre.share, blockquote.cite {
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); }
.meta { padding: 14px; gap: 18px; }
.meta img.poster, .feature-img, .tile img, img.grid-poster { border: none; border-radius: 6px; }
.tile { padding: 8px; transition: transform .08s ease; }
.tile:hover { background: var(--surface); transform: translateY(-1px); }
.tile .muted { font-size: .85em; }
.tile .ph { background: var(--surface-2); border: none; border-radius: 6px; }
.tile b.tile-year { color: var(--accent-text); }
.daily .feature { padding: 12px 14px; }
.grid-promo { background: var(--surface); border: 1px solid var(--border); border-left: 4px solid #d4a106; border-radius: var(--radius); box-shadow: var(--shadow); padding: 12px 16px; }
details.grid-answers { padding: 8px 12px; }
blockquote.cite { border-left: 3px solid var(--accent); }

/* Box scores and the home stat strip */
.statline { overflow: hidden; }
.statline > div { border: none; border-right: 1px solid var(--border); margin: 0; padding: 8px 4px; }
.statline > div:last-child { border-right: none; }
.statline span { background: none; color: var(--muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .04em; font-weight: 600; }
.statline b { font-size: 1.35rem; font-weight: 800; }
.statline a, .statline a:visited, table.box a, table.box a:visited { color: var(--link); }
table.box { border-collapse: separate; border-spacing: 0; background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
table.box th, table.box td { border: none; border-right: 1px solid var(--border); padding: 6px 14px; }
table.box th:last-child, table.box td:last-child { border-right: none; }
table.box th { background: none; color: var(--muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .04em; font-weight: 600; }
table.box td { font-size: 1.25rem; font-weight: 800; }

/* Stats tables */
table.stats { background: var(--surface); border-collapse: separate; border-spacing: 0; border: 1px solid var(--border);
  border-radius: var(--radius); overflow: hidden; font-size: .9rem; box-shadow: var(--shadow); }
table.stats th, table.stats td { border: none; border-bottom: 1px solid var(--border); padding: 5px 9px; }
table.stats tbody tr:last-child td { border-bottom: none; }
table.stats thead th { background: var(--surface-2); color: var(--muted); border-bottom: 1px solid var(--border);
  font-size: .75rem; text-transform: uppercase; letter-spacing: .03em; font-weight: 700; }
table.stats thead th.sortable:hover { background: var(--border); color: var(--text); }
table.stats tbody tr:nth-child(even) { background: transparent; }
table.stats tbody tr:hover, table.stats tbody tr:target { background: var(--hover); }
table.stats tfoot td { background: var(--surface-2); border-top: 1px solid var(--border); }
table.stats tr.set td { background: var(--surface-2); }
table.stats.leader caption a { color: var(--text); }
.tabs a { border: 1px solid var(--border); border-radius: 999px; background: var(--surface); margin: 0 4px 6px 0; padding: 3px 12px; }
.tabs a.current { background: var(--text); color: var(--bg); border-color: var(--text); }

/* Buttons and forms */
a.button, .welcome button, .mg-controls button, form.inline button, form.pin button {
  border-radius: 8px; }
a.button { background: var(--accent); color: var(--on-accent); padding: 6px 14px; font-weight: 600; }
a.button:visited { color: #fff; }
form.pin button { background: var(--surface); color: var(--text); border-color: var(--border); }
form.pin button.on { background: #fff4c2; color: #000; }
input[type=search], input[type=text], input[type=password], textarea, select {
  background: var(--surface); color: var(--text); border: 1px solid var(--border); border-radius: 8px; padding: 6px 10px; }
header form.search input[type=search] { background: rgba(255, 255, 255, .1); color: #f6eee6; border-color: rgba(255, 255, 255, .18); border-radius: 8px 0 0 8px; }
button { color: var(--text); background: var(--surface-2); border: 1px solid var(--border); padding: 5px 12px; }
.welcome button.pw-toggle { color: var(--muted); }
.welcome button.pw-toggle:hover, .welcome button.pw-toggle:focus-visible { color: var(--text); }
ol.be-list li { background: var(--surface); border-color: var(--border); }
ul.be-topics a { border-color: var(--border); border-left-color: var(--text); background: var(--surface); }
ul.be-topics li.ranked a { border-left-color: var(--accent-text); }
ul.be-topics a:hover { background: var(--hover); }
.be-leader { color: var(--accent-text); } .be-go, b.be-pos { color: var(--text); }
.be-table tr.be-mine td { background: var(--surface-2); }

/* Games */
table.grid-board { border-collapse: separate; border-spacing: 6px; }
table.grid-board th { background: none; border: none; color: var(--text); }
table.grid-board td.cell { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); }
table.grid-board td.solved { background: #e7f6ea; }
.mg-tile span { background: var(--surface-2); border: none; border-radius: 8px; color: var(--text); }
.mg-tile input:checked + span { background: #4a4a45; color: #fff; }
.mg-btn, a.mg-btn:visited { background: transparent; color: var(--text); border: 1px solid var(--text); }
.mg-btn:hover { background: var(--surface-2); }
.mg-submit { background: var(--text); color: var(--bg); }
.mg-submit:hover { background: var(--muted); }
.mg-help summary { color: var(--link); }
.mg-group { border: none; }

/* Chart of the week */
.chart-wrap { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); padding: 12px; }
svg.chart .lbl { fill: var(--text); }
svg.chart .val { fill: var(--muted); }
svg.chart .bar, svg.chart .dot { fill: var(--accent); }
svg.chart .grid { stroke: var(--border); }

svg.arc-chart .bar { fill: var(--muted); }
svg.arc-chart .dot { stroke: var(--accent); }
ol.arc-track li { background: var(--surface); border-color: var(--border); color: var(--muted); border-radius: 10px; }
ol.arc-track li.next { border-color: var(--text); color: var(--text); }
ol.arc-track li.miss { background: #d93a4a; border-color: #d93a4a; color: #fff; }
ol.arc-track li.hit { background: #2f9e55; border-color: #2f9e55; color: #fff; }
.arc-result { border-radius: var(--radius); box-shadow: var(--shadow); }
.arc-result.win { background: linear-gradient(135deg, #2f9e55, #1f7a40); }
.arc-result.miss { background: linear-gradient(135deg, #e04556, #b52435); }
.arc-result.lose { background: linear-gradient(135deg, #4a5568, #2d3748); }
ol.arc-clues li { background: var(--surface); border-color: var(--border); border-left-color: var(--accent-text); border-radius: var(--radius); box-shadow: var(--shadow); }
ol.arc-clues li.locked { background: transparent; box-shadow: none; border-color: var(--border); color: var(--muted); }
ol.arc-clues li.new { background: var(--hover); border-color: #d4a106; border-left-color: #d4a106; }
.arc-clue-no { background: var(--accent); }
li.locked .arc-clue-no { background: var(--border); color: var(--muted); }
form.arc-guess input[type=search] { border: 2px solid var(--border); border-radius: 10px; background: var(--surface); color: var(--text); }
form.arc-guess input[type=search]:focus { border-color: var(--accent-text); outline: none; }
form.arc-guess button, button.arc-pick { background: var(--accent); border-radius: 10px; }
form.arc-guess button.arc-skip { background: transparent; color: var(--text); border: 2px solid var(--border); }
ol.arc-track li.skip { background: #6b7a8f; border-color: #6b7a8f; color: #fff; }
.arc-result.skipped { background: linear-gradient(135deg, #6b7a8f, #4a5568); }

.game-card { background: var(--surface); border: 1px solid var(--border); border-top-width: 4px; border-radius: var(--radius); box-shadow: var(--shadow); }
.game-card h2::after { display: none; }
a.game-tile { border-radius: var(--radius); box-shadow: var(--shadow); }
.gt-name { color: var(--text); } .gt-status { color: var(--text); } .gt-meta { color: var(--muted); }
@media (prefers-color-scheme: dark) {
  :root:not([data-mode="light"]) a.game-tile.game-frames, :root:not([data-mode="light"]) a.game-tile.game-montage, :root:not([data-mode="light"]) a.game-tile.game-arc, :root:not([data-mode="light"]) a.game-tile.game-thatguy, :root:not([data-mode="light"]) a.game-tile.game-doubletake, :root:not([data-mode="light"]) a.game-tile.game-rushmore, :root:not([data-mode="light"]) a.game-tile.game-bestever, :root:not([data-mode="light"]) a.game-tile.game-auteur, :root:not([data-mode="light"]) a.game-tile.game-whodirected, :root:not([data-mode="light"]) a.game-tile.game-creditsroll, :root:not([data-mode="light"]) a.game-tile.game-sixdegrees, :root:not([data-mode="light"]) a.game-tile.game-higherlower, :root:not([data-mode="light"]) a.game-tile.game-timeline, :root:not([data-mode="light"]) a.game-tile.game-lineup { background: var(--surface); border-color: var(--border); }
  :root:not([data-mode="light"]) .gt-button { background: #f2f2f2; color: #111; }
  :root:not([data-mode="light"]) a.game-tile.done .gt-button { background: transparent; color: var(--text); border-color: var(--text); }
}
:root[data-mode="dark"] a.game-tile.game-frames, :root[data-mode="dark"] a.game-tile.game-montage, :root[data-mode="dark"] a.game-tile.game-arc, :root[data-mode="dark"] a.game-tile.game-thatguy, :root[data-mode="dark"] a.game-tile.game-doubletake, :root[data-mode="dark"] a.game-tile.game-rushmore, :root[data-mode="dark"] a.game-tile.game-bestever, :root[data-mode="dark"] a.game-tile.game-auteur, :root[data-mode="dark"] a.game-tile.game-whodirected, :root[data-mode="dark"] a.game-tile.game-creditsroll, :root[data-mode="dark"] a.game-tile.game-sixdegrees, :root[data-mode="dark"] a.game-tile.game-higherlower, :root[data-mode="dark"] a.game-tile.game-timeline, :root[data-mode="dark"] a.game-tile.game-lineup { background: var(--surface); border-color: var(--border); }
:root[data-mode="dark"] .gt-button { background: #f2f2f2; color: #111; }
:root[data-mode="dark"] a.game-tile.done .gt-button { background: transparent; color: var(--text); border-color: var(--text); }

/* Plot */
p.tagline { color: var(--muted); }
details.spoilers { background: var(--surface); border: 1px solid var(--border); border-left: 4px solid var(--accent);
  border-radius: var(--radius); box-shadow: var(--shadow); padding: 10px 14px; }
details.spoilers summary { color: var(--accent-text); }

/* Footer */
footer.site { background: transparent; border-top: 1px solid var(--border); color: var(--muted); }

@media (prefers-color-scheme: dark) {
  :root:not([data-mode="light"]) table.grid-board td.solved { background: #17301d; }
  :root:not([data-mode="light"]) table.grid-board td.just-wrong, :root:not([data-mode="light"]) .grid-wrong { background: #3a1519; color: #ffb3bc; }
  :root:not([data-mode="light"]) .rarity { color: #6fd38a; }
  :root:not([data-mode="light"]) .notice { background: #2c2a1d; border-color: #5a5124; }
  :root:not([data-mode="light"]) .tg-score > div { background: var(--surface-2); border-color: var(--border); }
  :root:not([data-mode="light"]) .tg-score span { color: var(--muted); }
  :root:not([data-mode="light"]) ol.tg-named li { background: var(--surface); border-color: var(--border); }
  :root:not([data-mode="light"]) ol.tg-named li.miss { background: #3a1519; border-color: #5a2a2f; color: #ffb3bc; }
  :root:not([data-mode="light"]) table.tg-all tr.yours td { background: #17301d; }
  :root:not([data-mode="light"]) .scan-done { background: #17301d; border-color: #2e7d32; color: #8fe0a3; }
  :root:not([data-mode="light"]) img { opacity: .95; }
}
:root[data-mode="dark"] table.grid-board td.solved { background: #17301d; }
:root[data-mode="dark"] table.grid-board td.just-wrong, :root[data-mode="dark"] .grid-wrong { background: #3a1519; color: #ffb3bc; }
:root[data-mode="dark"] .rarity { color: #6fd38a; }
:root[data-mode="dark"] .notice { background: #2c2a1d; border-color: #5a5124; }
:root[data-mode="dark"] .tg-score > div { background: var(--surface-2); border-color: var(--border); }
:root[data-mode="dark"] .tg-score span { color: var(--muted); }
:root[data-mode="dark"] ol.tg-named li { background: var(--surface); border-color: var(--border); }
:root[data-mode="dark"] ol.tg-named li.miss { background: #3a1519; border-color: #5a2a2f; color: #ffb3bc; }
:root[data-mode="dark"] table.tg-all tr.yours td { background: #17301d; }
:root[data-mode="dark"] .scan-done { background: #17301d; border-color: #2e7d32; color: #8fe0a3; }
:root[data-mode="dark"] img { opacity: .95; }
@media (max-width: 640px) {
  html { font-size: 14px; }
  header.site { position: static; }
  .statline > div { flex-basis: 33%; border-bottom: 1px solid var(--border); }
}

.owned { color: #2fa84f; }
table.stats tr.pending td { background: var(--hover); }
.queue-item { border-top-color: var(--border); }

.ig-head { border-radius: var(--radius); }
.ig-facts > div { background: var(--surface); border-color: var(--border); border-top-color: var(--accent-text); border-radius: var(--radius); }
.ig-facts span, ul.ig-notes { color: var(--muted); } .ig-facts em { color: var(--muted); }
svg.franchise-chart .bar { fill: var(--accent); }
dialog.rm-dialog { background: var(--surface); color: var(--text); }
input.rm-dialog-q { background: var(--surface-2); color: var(--text); border-color: var(--border); }
ul.rm-dialog-results li:hover, ul.rm-dialog-results li.on { background: var(--surface-2); }
button.dt-option { background: var(--surface); color: var(--text); border-color: var(--border); }
ol.dt-progress li { background: var(--surface-2); color: var(--muted); }
ol.dt-progress li.now { background: var(--surface); }
.egot-l.none { color: var(--border); border-color: var(--border); }
.egot-l.nominated { color: var(--muted); border-color: var(--muted); }
p.fh-facts, .st-sub, dl.fh-people dt, dl.fh-grid dt, .fh-themes-label, .st-label, a.st-rank, a.st-rank-in { color: var(--muted); }
.st { background: var(--surface-2); border-color: var(--border); }
a.st-num { color: var(--text); }
a.chip { background: var(--surface-2); border-color: var(--border); }
a.chip:hover { background: var(--border); }
.fh-cert { border-color: var(--muted); }
.egot-card { background: var(--surface); border-color: var(--border); }
.ig-week { border-top-color: var(--border); }
.ig-week.saved { background: var(--surface-2); }
form.ig-edit label { color: var(--muted); }
form.ask-form input { background: var(--surface-2); color: var(--text); border-color: var(--border); }
form.ask-form button { background: var(--accent); }
.ask-read { background: var(--surface-2); }
.ask-cannot { background: var(--surface); }
details.ask-how pre { background: var(--surface-2); }
form.ask-form button.ask-mic { background: var(--surface-2); color: var(--text); border: 1px solid var(--border); }
form.ask-form button.ask-mic.on { background: #c62828; color: #fff; }
.hl-card, button.sd-pick, ol.tl-list li { background: var(--surface); border-color: var(--border); color: var(--text); }
ol.tl-list li.ok { background: rgba(46, 125, 50, .18); border-color: #2e7d32; }
ol.sd-chain li.sd-actor a, ol.sd-chain.best li.sd-actor a { background: var(--surface-2); color: var(--text); }
ol.sd-chain li.sd-actor.target a { background: var(--accent); color: var(--on-accent); }
ol.sd-chain li.sd-film { border-left-color: var(--border); }
p.cr-banner { background: var(--surface-2); }
p.cr-banner.miss { background: rgba(198, 40, 40, .18); color: var(--text); } p.cr-banner.ok { background: rgba(46, 125, 50, .18); color: var(--text); }
ol.cr-guesses li { background: rgba(198, 40, 40, .18); } ol.cr-guesses li.ok { background: rgba(46, 125, 50, .2); }
.sd-who small { color: var(--muted); }
button.sd-pick.target { background: var(--surface-2); }
ol.au-clues li { background: var(--surface); border-color: var(--border); }
ol.au-clues li.hidden-clue { background: var(--surface-2); }
ol.au-clues li.new { border-color: var(--accent-text); }
ul.au-people small { color: var(--muted); }
.fmx-table th, .fmx-table td { border-bottom-color: var(--border); }
.fmx-table .fmx-label, .fmx-table .fmx-corner { background: var(--surface); border-right-color: var(--accent-text); }
.fmx-table td.fmx-in { background: var(--hover); }
.fmx-table td.fmx-archive { background: var(--surface-2); color: var(--muted); }
.fmx-intro, .fmx-table .fmx-label small, .fmx-table td small, .fmx-src-head, ol.fmx-sources { color: var(--muted); }
.fmx-film img, .fmx-film .ph { border-color: var(--border); background: var(--surface-2); }
.fmx-none { color: var(--border); }
.fmx-note[open] { color: var(--muted); } .fmx-note summary { border-color: var(--accent-text); color: var(--accent-text); }
a.fotw { background: var(--surface); border-color: var(--border); border-top-color: var(--accent-text); border-radius: var(--radius); }
.fotw-posters img { border-color: var(--border); }
.fotw-stats > span { color: var(--muted); } .fotw-stats b { color: var(--text); }
p.fmx-picks a { border-color: var(--accent-text); } a.fmx-badge { background: var(--hover); color: var(--accent-text); }

/* desktop header: the last pill's text lines up with the account links below it */
@media (min-width: 641px) { nav.site-nav > :last-child > summary, nav.site-nav > a:last-child { margin-right: -8px; } }
.be-side { border-color: var(--border); background: var(--surface); }
.be-move { background: var(--surface-2); border-color: var(--border); color: var(--text); }
.be-move:hover:not(:disabled) { border-color: var(--accent-text); }
.popnote { background: var(--surface); color: var(--text); border-color: var(--accent-text); }
.popnote strong { color: var(--accent-text); }
.fmx-note summary[aria-expanded="true"] { background: var(--accent); color: var(--on-accent); }
.rc-summary, .rc-report { border-color: var(--border); background: var(--surface); }
.rc-report.changed { border-color: var(--accent-text); } .rc-name, .rc-new { color: var(--accent-text); }
ul.rc-badges li, .rc-badge { border-color: var(--accent-text); color: var(--accent-text); } .rc-bar { background: var(--surface-2); } .rc-bar span { background: var(--accent); }
.rc-status { background: var(--surface-2); } .rc-reply { background: var(--surface-2); border-color: var(--accent-text); }
@media (prefers-color-scheme: dark) {
  :root:not([data-mode="light"]) .rc-status.rc-fixed { background: #17301d; color: #8fe0a3; } :root:not([data-mode="light"]) .rc-status.rc-working { background: #3a3012; color: #f0d37a; } :root:not([data-mode="light"]) .rc-status.rc-wontfix { background: #3a1818; color: #f0a0a0; }
}
:root[data-mode="dark"] .rc-status.rc-fixed { background: #17301d; color: #8fe0a3; } :root[data-mode="dark"] .rc-status.rc-working { background: #3a3012; color: #f0d37a; } :root[data-mode="dark"] .rc-status.rc-wontfix { background: #3a1818; color: #f0a0a0; }
ol.rc-log li { border-color: var(--border); } ol.rc-log time, .rc-found { color: var(--muted); }
.ld-eyebrow { color: var(--accent-text); } .ld-signin, ul.ld-games li, ul.ld-inside li { background: var(--surface); border-color: var(--border); }
ul.ld-inside li { border-top-color: var(--accent-text); } ul.ld-games span, ul.ld-inside span { color: var(--muted); }
.ld-signin input[type=text], .ld-signin input[type=password] { background: var(--surface-2); color: var(--text); border: 1px solid var(--border); border-radius: 8px; }
.ld-signin button[type=submit] { background: var(--accent); color: var(--on-accent); border: none; border-radius: 8px; }
.tl-moves .be-move { background: var(--surface-2); border-color: var(--border); color: var(--text); }
.tl-moves .be-move:hover:not(:disabled) { border-color: var(--accent-text); }

/* Contrast fixes from the 2026-10-19 audit (WCAG AA, 4.5:1 for small text): gold as text is darker in light mode
   (--accent-text), and three controls still carried Classic colours. */
details > summary, details.fh-more summary, details.egot-wins summary, .mg-help summary, .bio details summary { color: var(--link); }
details.not-a-film summary { color: var(--muted); }
.egot-l.won { background: var(--accent); color: var(--on-accent); }
.egot-l.none { color: var(--muted); border-color: var(--border); }
button.linkish { color: #b42318; }
@media (prefers-color-scheme: dark) {
  :root:not([data-mode="light"]) button.linkish { color: #ff8a80; }
}
:root[data-mode="dark"] button.linkish { color: #ff8a80; }
button.arc-pick { background: var(--accent); color: var(--on-accent); }
b.tl-pos { color: var(--text); }
.tl-grip, .be-grip, .fmx-none { color: var(--muted); }
span.ig-oscar { color: var(--accent-text); }
.mg-tile small { color: var(--muted); }
form.arc-guess button { color: var(--on-accent); }
.menu-head { color: var(--muted); } .menu-panel .menu-span, form.menu-signout { border-color: var(--border); }
.menu-tag { background: var(--hover); color: var(--accent-text); }
span.avatar { background: var(--accent); color: var(--on-accent); }
header nav .menu-panel form.look-pick button { border-color: var(--border); color: var(--text); }
header nav .menu-panel form.look-pick button.on { border-color: var(--accent); background: var(--hover); color: var(--text); }
header nav .menu-panel form.menu-signout button { color: var(--text); }
header.site a.feedback-btn, header.site a.feedback-btn:visited { color: #f2d47a; border-color: #8a6d12; }
header.site a.feedback-btn:hover { background: rgba(255,255,255,.08); text-decoration: none; }
.rm-tab { border-color: var(--border); } .rm-tab.on { border-color: var(--accent); background: var(--hover); color: var(--text); }
ul.rm-film-results { background: var(--surface); border-color: var(--border); } ul.rm-film-results li:hover { background: var(--hover); }
.rm-chip { border-color: var(--border); background: var(--surface-2); } .rm-table-wrap { border-color: var(--border); }
.rm-film-q { background: var(--surface-2); color: var(--text); border: 1px solid var(--border); border-radius: 8px; }
button.rm-pick { background: var(--accent); color: var(--on-accent); }
dialog.rm-dialog { background: var(--surface); color: var(--text); }
.gs-card { background: var(--surface); border-color: var(--border); } .gs-stats span { color: var(--muted); }
a.gs-next-btn, a.gs-next-btn:visited { background: var(--accent); color: var(--on-accent); }
.sd-arrow, .hl-vs, .cr-q, .mg-dot { color: var(--muted); }
ol.dt-progress li.now { background: var(--surface); }
@media (prefers-color-scheme: dark) { :root:not([data-mode="light"]) .dt-round-no, :root:not([data-mode="light"]) ol.dt-progress li.now { color: #ff9a62; } }
:root[data-mode="dark"] .dt-round-no, :root[data-mode="dark"] ol.dt-progress li.now { color: #ff9a62; }
ol.lu-films li, ol.lu-answers li { border-color: var(--border); background: var(--surface); }
@media (prefers-color-scheme: dark) { :root:not([data-mode="light"]) ol.lu-answers li.ok { background: #17301d; border-color: #2e7d32; } }
:root[data-mode="dark"] ol.lu-answers li.ok { background: #17301d; border-color: #2e7d32; }
.ec-sort button { border-color: var(--border); } .ec-sort button.on { border-color: var(--accent); background: var(--hover); color: var(--text); }
article.ec-player { background: var(--surface); border-color: var(--border); border-top-color: var(--accent); }
article.ec-player.ec-lead { box-shadow: 0 0 0 2px var(--accent); }
.ec-stats > div { background: var(--surface-2); } .ec-stats > div > span:not(.egot-l) { color: var(--muted); }
.ec-stats > div.ec-hot { background: var(--accent); color: var(--on-accent); } .ec-stats > div.ec-hot span:not(.egot-l) { color: var(--on-accent); }
article.ec-player ul { border-color: var(--border); } .ec-rank { background: var(--accent); color: var(--on-accent); }
.gs-stars button { color: var(--border); } .gs-stars button.on, .gs-stars:hover button { color: var(--accent); } .gs-stars button:hover ~ button { color: var(--border); }
.gs-retire textarea { background: var(--surface-2); color: var(--text); border: 1px solid var(--border); border-radius: 8px; }
.gs-rating b { color: var(--accent-text); }
article.ec-player.ec-pegot { background: linear-gradient(var(--surface), var(--surface)) padding-box, linear-gradient(135deg, #e5e4e2, #b9a6ff 30%, #f2d47a 55%, #9fd8ff 80%, #e5e4e2) border-box; }
li.is-hon { color: var(--muted); }
.ec-step button { border-color: var(--border); } .ec-step button:hover { border-color: var(--accent); } .ec-count { color: var(--muted); }
.ec-locked { background: var(--surface-2); color: var(--muted); border: 1px solid var(--border); }
