/* =====================================================================
   IndieDev AI Tools — self-hosted webfonts
   Enqueued by inc/enqueue.php as the `idt-fonts` handle (priority 1).

   All three faces are bundled locally, so no request ever leaves this
   origin for fonts.googleapis.com / fonts.gstatic.com.

     inter-latin.woff2                      48,256 B   variable 100..900
     jetbrains-mono-latin.woff2             40,404 B   variable 100..800
     material-symbols-outlined-subset.woff2  4,852 B   33 icons, static 400

   The icon face is pre-subset via Google's `icon_names` parameter: the
   full Material Symbols set is 4,001,608 B (4 MB), this subset is 4.8 KB.
   ===================================================================== */

/* ---------- Inter — variable, latin ---------- */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
                 U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- JetBrains Mono — variable, latin ---------- */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url('../fonts/jetbrains-mono-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
                 U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- Material Symbols Outlined — 33-icon ligature subset ----------

   No `unicode-range` here, deliberately. The ligatures that produce each
   glyph are triggered by typing plain ASCII (e.g. the text "rss_feed"), so
   the face has to cover those codepoints. Google's pre-subset omits the
   descriptor for this reason.

   font-display is `block`, NOT `swap`. With `swap` the header briefly
   paints the literal words "rss_feed" / "terminal" before the face loads.
   Blocking shows blank space instead, which degrades far more gracefully.

   The .material-symbols-outlined class rule lives in style.css, not here:
   Google ships its own copy of that rule inside the CSS it returns, and it
   sets font-size:24px where we want 20px.
   ------------------------------------------------------------------------ */
@font-face {
  font-family: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('../fonts/material-symbols-outlined-subset.woff2') format('woff2');
}
