/* ====================================================================
   ADJ | AI DJ — Local fonts (jsDelivr / @fontsource sources)
   Run download-fonts.ps1 (or setup.bat) once to populate the .woff2 files.
   If absent, the @font-face declarations silently fail and index.html
   falls back to the jsDelivr CDN <link> tags in the <head>.
==================================================================== */

/* ---------- Space Grotesk (variable, weights 300-700) ---------- */
@font-face {
  font-family: 'Space Grotesk Variable';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('SpaceGrotesk-Variable.woff2') format('woff2-variations'),
       url('SpaceGrotesk-Variable.woff2') format('woff2');
}
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('SpaceGrotesk-Variable.woff2') format('woff2-variations'),
       url('SpaceGrotesk-Variable.woff2') format('woff2');
}

/* ---------- Inter (variable, weights 100-900) ---------- */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('Inter-Variable.woff2') format('woff2-variations'),
       url('Inter-Variable.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('Inter-Variable.woff2') format('woff2-variations'),
       url('Inter-Variable.woff2') format('woff2');
}

/* ---------- JetBrains Mono (variable, weights 100-800) ---------- */
@font-face {
  font-family: 'JetBrains Mono Variable';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url('JetBrainsMono-Variable.woff2') format('woff2-variations'),
       url('JetBrainsMono-Variable.woff2') format('woff2');
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url('JetBrainsMono-Variable.woff2') format('woff2-variations'),
       url('JetBrainsMono-Variable.woff2') format('woff2');
}

/* ---------- Noto Sans SC (Simplified Chinese) ---------- */
@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('NotoSansSC-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('NotoSansSC-500.woff2') format('woff2');
}
@font-face {
  font-family: 'Noto Sans SC';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('NotoSansSC-700.woff2') format('woff2');
}

/* ---------- Noto Sans Thai ---------- */
@font-face {
  font-family: 'Noto Sans Thai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('NotoSansThai-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Noto Sans Thai';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('NotoSansThai-500.woff2') format('woff2');
}
@font-face {
  font-family: 'Noto Sans Thai';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('NotoSansThai-700.woff2') format('woff2');
}
