/* ============================================================
   SXTN OS · Typography tokens
   Geist Sans carries prose & headings.
   Geist Mono carries data, coordinates, labels & code — and is
   the DEFAULT body font of the control surface itself (tnum on).
   ============================================================ */
:root {
  /* ---- Families ---- */
  --font-sans: 'Geist', system-ui, -apple-system, sans-serif;
  --font-mono: 'Geist Mono', ui-monospace, 'SF Mono', Menlo, monospace;
  --font-ui:   var(--font-mono);   /* the dashboard chrome runs on mono */
  --font-prose: var(--font-sans);  /* long-form copy switches to sans   */

  /* ---- Type scale (px) ---- */
  --fs-display: 38px;   /* hero — Sans 700/800, -.02em       */
  --fs-h1:      24px;   /* screen title — Sans 700, -.02em   */
  --fs-h2:      19px;   /* section — Sans 700, -.015em       */
  --fs-h3:      16px;   /* sub-section — Sans 700            */
  --fs-body:    14px;   /* prose — Sans 400, 1.65            */
  --fs-data:    13px;   /* mono data — Mono 600             */
  --fs-sm:      11.5px; /* dense UI text                    */
  --fs-xs:      10px;   /* meta                             */
  --fs-eyebrow: 10px;   /* Mono 700, .14em, uppercase       */

  /* ---- Weights ---- */
  --fw-light:    300;   /* @kind other */
  --fw-regular:  400;   /* @kind other */
  --fw-medium:   500;   /* @kind other */
  --fw-semibold: 600;   /* @kind other */
  --fw-bold:     700;   /* @kind other */
  --fw-black:    800;   /* @kind other */

  /* ---- Line heights ---- */
  --lh-tight:  1.1;    /* @kind other */
  --lh-snug:   1.3;    /* @kind other */
  --lh-body:   1.65;   /* @kind other */
  --lh-data:   1.5;    /* @kind other */

  /* ---- Letter spacing ---- */
  --ls-display:  -.025em;   /* @kind other */
  --ls-heading:  -.02em;    /* @kind other */
  --ls-tight:    -.01em;    /* @kind other */
  --ls-normal:   0;         /* @kind other */
  --ls-eyebrow:  .14em;     /* @kind other */
  --ls-caps:     .12em;     /* @kind other */
}
