/* oaistt — subtitles. A cinema-black page; headings set as caption bars (white Rubik on a
   translucent plate), a lavender accent from the manifest. */

:root {
  --page-bg: #0c0c0f;
  --page-text: #e6e5ec;
  --page-muted: #a3a2b2;
  --page-line: #26252e;
  --page-accent: #b4a7ff;
  --page-ui: "Onest", system-ui, sans-serif;
  --display: "Rubik", "Onest", system-ui, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
  --surface: #131318;
  --raise: #1b1b22;
  --code-bg: #131318;
  --code-text: #ddd6ff;
  --strong: #ffffff;
  --k-ink: #dcdbe6; --k-accent: var(--page-accent); --k-a: #ffd166; --k-b: #6fd3c6; --k-c: #ff9fb2;
  --k-d: #9fd0ff; --k-ok: #92e0a6; --k-err: #ff7b72; --k-muted: #74738a; --k-file: #a3a2b2;
  color-scheme: dark;
}

.hero h1 { display: grid; justify-items: start; gap: 8px; font: 500 clamp(34px, 5vw, 64px)/1.15 var(--display); }
.hero h1 .sub { background: #000000b8; color: #fff; padding: 2px 16px 6px; border-radius: 4px; box-shadow: 0 0 0 1px #ffffff14; }
.hero h1 .sub:last-child { color: #fff7c2; }
.part > h2 { display: inline-block; font: 500 clamp(22px, 2.6vw, 30px)/1.2 var(--display); background: #000000b8; padding: 2px 14px 6px; border-radius: 4px; box-shadow: 0 0 0 1px #ffffff14; }
.term .o { white-space: pre-wrap; overflow-wrap: anywhere; }
.fig { padding: 18px; background: var(--surface); border: 1px solid var(--page-line); border-radius: 6px; }
.dg .lab-bg { fill: var(--surface); }
.dg .halo { stroke: var(--surface); }
.facts li { border-left-color: var(--page-accent); }
