/* NOD Term — a Nord terminal. Polar night ground, aurora green prompt, monospace headings with a
   block cursor; JetBrains Mono for headings and code, Manrope for prose. */

:root {
  --page-bg: #2e3440; --page-text: #e5e9f0; --page-muted: #b4bccb; --page-line: #434c5e;
  --page-accent: #a3be8c; --strong: #eceff4; --surface: #3b4252; --raise: #434c5e;
  --code-bg: #272c36; --code-text: #d8dee9;
  --page-ui: "Manrope", system-ui, sans-serif;
  --display: "JetBrains Mono", ui-monospace, monospace;
  --mono: "JetBrains Mono", ui-monospace, monospace;
  --k-ink: #e5e9f0; --k-accent: #a3be8c; --k-b: #88c0d0; --k-c: #b48ead; --k-ok: #a3be8c; --k-muted: #8c96a8; --k-file: #b4bccb;
  color-scheme: dark;
}
.hero h1 { font: 800 clamp(44px, 6.5vw, 84px)/1 var(--display); letter-spacing: -0.04em; }
.hero h1 .prompt { color: var(--page-accent); }
.hero h1 .cursor { display: inline-block; width: 0.55em; height: 0.9em; margin-left: 0.08em; vertical-align: -0.08em;
  background: #88c0d0; animation: blink 1.1s steps(1) infinite; }
@keyframes blink { 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .hero h1 .cursor { animation: none; } }
.part > h2 { font: 700 clamp(24px, 2.8vw, 32px)/1.15 var(--display); letter-spacing: -0.02em; }
.part > h2::before { content: "# "; color: #616e88; }
.fig { padding: 16px 12px; background: var(--code-bg); border: 1px solid var(--page-line); border-radius: 8px; }
.dg .lab-bg { fill: var(--code-bg); }
.dg .halo { stroke: var(--code-bg); }
.trio { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 18px; align-items: start; }
.shot { margin: 0; }
.shot img { display: block; width: 100%; height: auto; border-radius: 12px; border: 1px solid var(--page-line); }
.shot figcaption { margin-top: 8px; font-size: 13.5px; color: var(--page-muted); }
@media (max-width: 640px) { .trio { grid-template-columns: 1fr 1fr; } }
