/* Self-hosted fonts (/fonts/*.woff2, latin subset) — the app must work
   offline on hotel wifi, so no Google Fonts CDN.

   Body ink: Atkinson Hyperlegible — designed for low-vision readers,
   unambiguous I/l/1, O/0, B/8. Everything readable uses it.

   Display: ONE themed font, used ONLY for the gathering name in the
   header. rg.js sets --font-display from the active theme's category:
     Art        → Literata        (literary serif)
     Science    → IBM Plex Sans   (precise, modern)
     Technology → Space Grotesk   (futuristic but clear)
     Mind games → Bree Serif      (playful, friendly)
   Weight ranges on the static files avoid synthetic bolding. */

@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/atkinson-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Atkinson Hyperlegible';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/atkinson-700.woff2') format('woff2');
}
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-weight: 600 800;
  font-display: swap;
  src: url('/fonts/literata-700.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600 800;
  font-display: swap;
  src: url('/fonts/plexsans-600.woff2') format('woff2');
}
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600 800;
  font-display: swap;
  src: url('/fonts/spacegrotesk-600.woff2') format('woff2');
}
@font-face {
  font-family: 'Bree Serif';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('/fonts/breeserif-400.woff2') format('woff2');
}

:root {
  --font-readable: 'Atkinson Hyperlegible', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-display: var(--font-readable);
}
