/* ==========================================================================
   TranXwatch-Solar Console — typefaces

   IBM Plex Sans + IBM Plex Mono, self-hosted.
   © 2019 IBM Corp. SIL Open Font License 1.1 — see /fonts/LICENSE.txt
   (the OFL requires the licence to travel with the font files).

   Self-hosted rather than CDN-linked on purpose:
     - helmet's default CSP already allows font-src 'self', so no policy change
     - no third-party request on every page load (no external dependency, no
       privacy leak, no failure mode when a site link is slow)
     - Lagos operators on poor connectivity get the real face, not a FOUT

   Latin subset only. Five files, ~106 KB total, cached indefinitely by the
   browser after first load.

   font-display: swap — text paints immediately in the fallback and swaps when
   Plex arrives. On a monitoring console, never hide the numbers waiting on a
   font.
   ========================================================================== */

/* ---- IBM Plex Sans ------------------------------------------------------ */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/plex-sans-400.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/plex-sans-500.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/plex-sans-600.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/plex-sans-700.woff2') format('woff2');
}

/* ---- IBM Plex Mono ------------------------------------------------------ */
/* Used for identifiers a person reads character-by-character and may need to
   transcribe: RFID tags, meter IDs, device IDs. A monospace face with a slashed
   zero removes 0/O and 1/l ambiguity — which matters when an operator is
   matching a tag against a physical label in the field. */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/plex-mono-400.woff2') format('woff2');
}
