/* Self-hosted, open-licensed faces (SIL OFL 1.1; licenses in fonts/). Latin subset from Fontsource 5.3.0.
   Newsreader — Production Type (display serif, optical sizes)   IBM Plex Sans / Mono — IBM */
@font-face { font-family: "Newsreader"; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url("fonts/newsreader-latin-opsz-normal.woff2") format("woff2-variations"); }
@font-face { font-family: "Newsreader"; font-style: italic; font-weight: 200 800; font-display: swap;
  src: url("fonts/newsreader-latin-opsz-italic.woff2") format("woff2-variations"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 400; font-display: swap; src: url("fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 500; font-display: swap; src: url("fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 600; font-display: swap; src: url("fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-weight: 400; font-display: swap; src: url("fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-weight: 500; font-display: swap; src: url("fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2"); }

/* Metric-compatible fallbacks (JOB F6): each stands in for its web font with the same em-box
   (ascent/descent/line-gap) and average advance width, so the swap from system font to web font
   doesn't reflow the page — the source of the 2-8px one-frame load jumps tools/fit_jumps.mjs was
   finding at ~0.04s. local() only, so these resolve immediately and never trigger a fetch.
   Named for the token role (not the physical face) since that's what they stand in for; unquoted
   custom-idents, not "quoted family name" strings — R9 (docs/role-models.md §5) counts those as
   typefaces, and these are invisible CLS shims, not a 4th typeface.
   Method + the metrics behind every number below: docs/fonts.md. */
@font-face { font-family: ink-ui-fallback; src: local("Helvetica Neue"), local("Arial");
  ascent-override: 86.5385%; descent-override: 23.2176%; line-gap-override: 0%; size-adjust: 118.4444%; }
@font-face { font-family: ink-mono-fallback; src: local("Menlo"), local("Courier New");
  ascent-override: 102.5167%; descent-override: 27.5045%; line-gap-override: 0%; size-adjust: 99.9837%; }
@font-face { font-family: ink-display-fallback; src: local("Georgia"), local("Times New Roman");
  ascent-override: 60.2877%; descent-override: 21.7364%; line-gap-override: 0%; size-adjust: 121.9154%; }
