/* Technical Mono -- light, airy monospace. One accent, the university's red.
   Chosen 2026-09-04 from the Terminal variations; see design/terminal-variations.
   IBM Plex Mono is self-hosted (tools/fetch_fonts.py) so every visitor sees the
   same face; the stack below is only the fallback while it loads. */
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;
  src:url("/static/fonts/ibm-plex-mono-regular.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:italic;font-weight:400;font-display:swap;
  src:url("/static/fonts/ibm-plex-mono-italic.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:700;font-display:swap;
  src:url("/static/fonts/ibm-plex-mono-bold.woff2") format("woff2")}
:root{
--font-body:"IBM Plex Mono","Berkeley Mono","SF Mono",Menlo,Consolas,"DejaVu Sans Mono",monospace;
--font-head:var(--font-body); --font-mono:var(--font-body);
--fs-base:0.9375rem; --fs-small:0.8125rem; --fs-h1:1.6rem; --fs-h2:1rem; --fs-h3:0.9375rem;
--lh-body:1.6; --lh-head:1.25;
--measure:42rem; --page-max:66rem; --gutter:1.5rem; --unit:1rem; --radius:0;
--bg:#eeede8; --bg-alt:#e5e4de; --fg:#151513; --fg-soft:#2e2d2a; --muted:#6e6b66;
--accent:#ba0c2f; --link:#151513; --link-visited:#151513;
--rule:1px; --rule-color:#151513; --rule-faint:#c9c6bf;
--head-weight:700; --head-transform:lowercase; --head-spacing:0; --nav-transform:lowercase;
--numeric:tabular-nums; --venue-style:normal; --pub-title-weight:700;
--bracket-open:"["; --bracket-close:"]";
--todo-bg:#fff3c4;
/* layout gates: the ruler, the hero name, the section rules */
--ruler:block; --hero-size:clamp(2.6rem,7vw,5rem); --hero-spacing:-0.04em;
--section-rule:var(--rule) solid var(--rule-color); --h2-rule:0;
}
@media (prefers-color-scheme:dark){:root{
--bg:#141412;--bg-alt:#1d1d1a;--fg:#e8e6df;--fg-soft:#cfcdc5;--muted:#9a978f;
--accent:#ff5470;--link:#e8e6df;--link-visited:#e8e6df;--rule-color:#e8e6df;--rule-faint:#3a3934;--todo-bg:#4a3d00;}}
