/* ============================================================
   Typography — THE one file to edit to change the font everywhere.

   To swap fonts:
     1. Change the Google Fonts URL below to the new family + weights.
     2. Change --font-family to match.
   Every page, chart, table and component reads from these variables;
   nothing else needs to change.

   Load order: this file FIRST, before theme.css, so the variables exist
   when the rest of the theme references them.
   ============================================================ */

/* Inter: the de facto dashboard font — very legible at small sizes, has real
   tabular figures (so numbers line up in tables), and ships every weight
   used below. display=swap avoids invisible text while it downloads. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
  --font-family: 'Inter', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;

  /* Weight set. Use these tokens, never raw numbers, so a font that lacks a
     given weight (or maps them differently) can be re-tuned here alone. */
  --fw-regular:  400;   /* body text, table cells */
  --fw-medium:   500;   /* nav links, secondary labels */
  --fw-semibold: 600;   /* buttons, table headers, badges, card titles */
  --fw-bold:     700;   /* page titles, KPI values */
  --fw-black:    800;   /* reserved for hero numbers / emphasis */

  /* Monospace for code snippets and IDs, kept separate on purpose. */
  --font-mono: ui-monospace, 'Cascadia Code', 'Consolas', 'Menlo', monospace;
}

/* Tabular figures everywhere numbers are compared vertically. Inter supports
   this; fonts that do not simply ignore it. */
.num,
.kpi .val,
.dt tbody td.num,
table.dt td {
  font-variant-numeric: tabular-nums;
}
