/* Monoframe — Typography tokens
   Geist for everything; Geist Mono for data, numerals, and mono labels.
   Display is intentionally LIGHT (300) and tightly tracked. Numbers want
   tabular figures. Labels are uppercase mono with wide tracking. */

:root {
  /* ---- Families ---- */
  --font-sans: 'Geist', system-ui, -apple-system, sans-serif;
  --font-mono: 'Geist Mono', ui-monospace, 'SF Mono', Menlo, monospace;

  /* ---- Weights ---- */
  --fw-light:   300; /* @kind font */
  --fw-regular: 400; /* @kind font */
  --fw-medium:  500; /* @kind font */

  /* ---- Display / big numerals (Geist 300, tight) ---- */
  --text-hero:    84px;  --text-hero-ls:    -0.035em;  --text-hero-lh:    0.96;
  --text-display: 52px;  --text-display-ls: -0.025em;  --text-display-lh: 1.0;
  --text-numeral: 104px; --text-numeral-ls: -0.03em;   --text-numeral-lh: 0.86;
  --text-stat:    38px;  --text-stat-ls:    -0.025em;  --text-stat-lh:    1.0;

  /* ---- Titles (Geist 500) ---- */
  --text-title:    30px; --text-title-ls:    -0.018em; --text-title-lh:    1.15;
  --text-subtitle: 18px; --text-subtitle-ls: -0.01em;  --text-subtitle-lh: 1.3;

  /* ---- Body (Geist 400) ---- */
  --text-body:  18px; --text-body-lh:  1.55;
  --text-base:  14px; --text-base-lh:  1.5;
  --text-small: 13px; --text-small-lh: 1.45;

  /* ---- Label (Geist 500, uppercase, wide) ---- */
  --text-label:    13px; --text-label-ls:    0.12em;
  --text-overline: 11px; --text-overline-ls: 0.16em;

  /* ---- Mono / data (Geist Mono) ---- */
  --text-data:       15px; --text-data-ls:       0.01em;
  --text-mono-meta:  11px; --text-mono-meta-ls:  0.06em;  /* uppercase caption */
  --text-mono-micro: 10.5px;
}
