/* Self-hosted fonts — no external requests (China-safe). Latin text uses Alan Sans, the typeface of alan.com
   (Alan Sans 1.100 by Raphaël Ronot and Samar Zureik for Alan; Copyright 2025 The Alan Sans Project Authors,
   https://github.com/alan-eu/Alan-Sans; SIL Open Font License 1.1, see OFL-alan-sans.txt). One variable file, weights
   300 to 900, upright only: nothing on the site is italic (2026-11-09). Chinese text uses the system CJK stack
   (PingFang SC / HarmonyOS Sans / MiSans / Microsoft YaHei, see site.css). */
@font-face { font-family: 'Alan Sans'; font-style: normal; font-weight: 300 900; font-display: swap; src: url('alan-sans-variable.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 400; font-display: swap; src: url('ibm-plex-mono-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 500; font-display: swap; src: url('ibm-plex-mono-latin-500-normal.woff2') format('woff2'); }
