/* ============================================================
   Tilt Protocol — Typography tokens
   Geist for everything; Geist Mono for code, tickers, addresses,
   and tabular numerics. Headlines run extrabold with tight,
   negative tracking. Labels are tiny, uppercase, wide-tracked.
   ============================================================ */

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

  /* ---- Weights ---- */
  --weight-normal: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;
  --weight-black: 900;

  /* ---- Type scale (px) ---- */
  --text-2xs: 10px;   /* micro labels, step numbers */
  --text-xs: 11px;    /* eyebrow labels, meta */
  --text-sm: 12px;    /* secondary meta, captions */
  --text-base: 13px;  /* default UI body */
  --text-md: 14px;    /* emphasized body / row titles */
  --text-lg: 15px;    /* lead paragraph */
  --text-xl: 17px;    /* card titles */
  --text-2xl: 20px;   /* section sub-headers */
  --text-3xl: 24px;   /* page titles / stats */
  --text-4xl: 32px;   /* big numerics */
  --text-display-sm: 2.2rem;   /* hero, small */
  --text-display: 2.8rem;      /* hero, mid */
  --text-display-lg: 4.4rem;   /* hero, max */

  /* ---- Line heights ---- */
  --leading-none: 1.05;   /* display headlines */
  --leading-tight: 1.1;   /* headings */
  --leading-snug: 1.4;
  --leading-normal: 1.6;
  --leading-relaxed: 1.75; /* body copy */

  /* ---- Letter spacing ---- */
  --tracking-display: -0.04em;  /* hero headlines */
  --tracking-tight: -0.03em;    /* section headings */
  --tracking-snug: -0.02em;     /* card titles */
  --tracking-normal: 0;
  --tracking-label: 0.1em;      /* uppercase labels */
  --tracking-eyebrow: 0.18em;   /* uppercase eyebrows */
  --tracking-wide: 0.2em;       /* widest micro-labels */
}
