/* ============================================================================
   almanac.css — typographic skin for the self-contained "island" pages.

   The island pages each ship their own inline palette + layout and don't load
   assets/notes.css, so they drifted to system fonts (Iowan, Georgia, Arial,
   Inter, -apple-system…). This file loads the shared Almanac trio — Fraunces
   (display) + Newsreader (body) + IBM Plex Mono (code) — and applies it by
   element, so every island page reads as one family with the notes.css pages
   WITHOUT touching its layout, colours, or class names.

   Wired in by a single <link> near the end of each island page's <head>, after
   its own styles, so the family swap wins. Palette stays the page's own.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;0,9..144,700;1,9..144,400;1,9..144,500&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;0,6..72,700;1,6..72,400;1,6..72,500&family=IBM+Plex+Mono:ital,wght@0,400;0,500;0,600;1,400&display=swap');
@import url('prism.css'); /* Prism.js syntax highlighting (theme + slab override) */

:root {
  --alm-display: 'Fraunces', ui-serif, Georgia, 'Times New Roman', serif;
  --alm-body:    'Newsreader', ui-serif, Georgia, 'Times New Roman', serif;
  --alm-mono:    'IBM Plex Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;
}

/* Body prose → reading serif */
body {
  font-family: var(--alm-body) !important;
  font-optical-sizing: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* Headings → display serif, always roman (kills any inherited italic-header tell) */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--alm-display) !important;
  font-optical-sizing: auto;
  font-style: normal !important;
}

/* Code / monospace → the shared engineering mono */
code, pre, kbd, samp, tt, var {
  font-family: var(--alm-mono) !important;
}
var { font-style: normal; }
