/* ═══ TERMINAL — you're inside the OS ═══
   Identity: command-line prompt prefixes on H1, C-style comment
   prefixes on H2, ASCII dividers, bracket-wrapped links, monospace
   blockquotes labelled "// note". Dark interface throughout.
*/

body { background: var(--bg); letter-spacing: -0.01em; }

/* ── H1 with terminal prompt prefix ── */
h1 {
  font-size: clamp(1.75rem, 3.5vw + 0.5rem, 2.25rem);
  font-weight: 700;
  letter-spacing: -0.03em;
}
h1::before {
  content: "> ";
  color: var(--accent);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-weight: 400;
}

/* ── H2 with C-style comment prefix ── */
h2 { letter-spacing: -0.02em; }
h2::before {
  content: "// ";
  color: var(--text-muted);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 0.85em;
  font-weight: 400;
}

h3 { letter-spacing: -0.02em; }

/* ── Subtitle in monospace accent ── */
.subtitle {
  color: var(--accent);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 0.95rem;
}

/* ── Header styling ── */
.site-header { background: var(--bg); border-bottom-color: var(--border); }
.site-header.is-scrolled { box-shadow: 0 1px 12px rgba(124,58,237,0.15); }
.header-cta { background: var(--accent); color: var(--bg) !important; }
.header-cta:hover { background: #22C55E; }

/* ── Body type ── */
.prose strong { color: var(--accent); }
.prose code, code {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 0.88em;
  background: var(--surface);
  padding: 0.15em 0.4em;
  border-radius: 3px;
  color: var(--accent);
}

/* ── Bracket-wrapped body links ── */
.prose a {
  color: var(--accent);
  text-decoration: none;
  font-weight: 600;
}
.prose a::before { content: "["; color: var(--text-muted); margin-right: 0.05em; }
.prose a::after  { content: "]"; color: var(--text-muted); margin-left: 0.05em; }
.prose a:hover { color: #22C55E; }
.prose a:hover::before, .prose a:hover::after { color: #22C55E; }

/* ── ASCII section dividers ── */
.prose hr {
  border: none;
  text-align: center;
  margin: 3rem 0;
  color: var(--accent);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
}
.prose hr::before {
  content: "─ ─ ─";
  letter-spacing: 0.75em;
  font-size: 1rem;
}

/* ── Blockquote as a labelled note block ── */
.prose blockquote {
  border-left: 3px solid var(--accent);
  background: var(--surface);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 0.92rem;
  line-height: 1.6;
  padding: 0.85rem 1.1rem;
  margin: 2rem 0;
  color: var(--text-muted);
}
.prose blockquote::before {
  content: "// note";
  display: block;
  color: var(--accent);
  font-size: 0.78rem;
  letter-spacing: 0.05em;
  margin-bottom: 0.5rem;
  opacity: 0.7;
}
.prose blockquote p { color: var(--text); }
.prose blockquote strong { color: #22C55E; }

/* ── CTAs and footer ── */
.cta { background: var(--surface); border: 1px solid var(--border); }
.cta a { background: var(--accent); color: var(--bg); }
.cta a:hover { background: #22C55E; }
.site-footer { border-top-color: var(--border); }
.mobile-overlay { background: var(--bg); }
