/* Kanto private railways, "mystery lines": a platform after the last train. Midnight ground,
   lines drawn as unlit silhouettes, a violet stamp, and sodium-lamp yellow for focus. */
:root[data-city="shitetsu"] {
  color-scheme: dark;
  --ground: #0c0e1a;
  --surface: #151a2c;
  --ink: #e7e3f3;
  --ink-soft: #9aa0bd;
  --rule: #2d3352;
  --rail-off: #2b3150;
  --stamp: #b49cff;
  --signal: #ffd25e;
  --ok: #73d99f;
  --warn: #f2b45c;
  --ticket: #1c2238;
  --tone-color: rgb(180 156 255 / 0.10);
  --font-display: "Zen Antique", "BIZ UDPGothic", serif;
}

:root[data-city="shitetsu"] body {
  background:
    radial-gradient(1200px 600px at 20% -10%, rgb(120 96 220 / 0.18), transparent 60%),
    radial-gradient(900px 500px at 110% 110%, rgb(255 210 94 / 0.06), transparent 60%),
    var(--ground);
}
:root[data-city="shitetsu"] .masthead { border-top: 3px solid var(--stamp); }
:root[data-city="shitetsu"] .edition-code {
  border: 1.5px solid var(--stamp);
  color: var(--stamp);
  background: transparent;
  letter-spacing: 0.2em;
}
:root[data-city="shitetsu"] .title { letter-spacing: 0.04em; text-shadow: 0 0 18px rgb(180 156 255 / 0.35); }
:root[data-city="shitetsu"] .title::before { opacity: 0.25; }
:root[data-city="shitetsu"] .cities a[aria-current] { background: var(--stamp); color: var(--ground); }
:root[data-city="shitetsu"] .linestrip span { filter: saturate(0.4) brightness(0.8); }
:root[data-city="shitetsu"] .btn-ink { background: var(--stamp); color: var(--ground); border-color: var(--stamp); }
:root[data-city="shitetsu"] .btn-ink:hover { background: #cbbaff; }

/* Line roundels stay white like real number plates, so their text stays dark. */
:root[data-city="shitetsu"] .roundel { color: #1d2233; }
:root[data-city="shitetsu"] .roundel.blank { color: #575d6b; }

/* Unnamed stations sink into the dark; named ones glow. */
:root[data-city="shitetsu"] #map .st { fill: var(--ground); stroke: #3a4062; }
:root[data-city="shitetsu"] #map .st.on { fill: var(--ink); stroke: var(--stamp); }
:root[data-city="shitetsu"] #map .st.miss { fill: var(--surface); }

/* An unrevealed line: its name is a row of question marks, set apart from revealed ones. */
:root[data-city="shitetsu"] .line-row:has(.line-name:only-of-type) .line-name { letter-spacing: 0.08em; }

@media (min-width: 901px) {
  :root[data-city="shitetsu"] .mapwrap { height: 100dvh; position: sticky; top: 0; }
}
