/* ============================================================
   OORT — Typography tokens
   Display/labels: Chakra Petch (squared, mechanical)
   Body:          Space Grotesk
   Mono/data:     JetBrains Mono
   ============================================================ */

:root {
  /* ---- Families ---- */
  --font-display: 'Chakra Petch', 'Space Grotesk', system-ui, sans-serif;
  --font-body:    'Space Grotesk', system-ui, -apple-system, sans-serif;
  --font-mono:    'JetBrains Mono', ui-monospace, 'SF Mono', monospace;

  /* ---- Weights ---- */
  --weight-regular:  400;
  --weight-medium:   500;
  --weight-semibold: 600;
  --weight-bold:     700;

  /* ---- Type scale (1.250 major-third-ish, tuned) ---- */
  --text-2xs:  10px;
  --text-xs:   12px;
  --text-sm:   13px;
  --text-base: 15px;
  --text-md:   17px;
  --text-lg:   20px;
  --text-xl:   25px;
  --text-2xl:  32px;
  --text-3xl:  42px;
  --text-4xl:  56px;
  --text-5xl:  72px;
  --text-6xl:  96px;

  /* ---- Line heights ---- */
  --leading-tight:   1.05;
  --leading-snug:    1.2;
  --leading-normal:  1.5;
  --leading-relaxed: 1.65;

  /* ---- Letter spacing (technomachinist loves tracking) ---- */
  --tracking-tighter: -0.02em;
  --tracking-tight:   -0.01em;
  --tracking-normal:  0em;
  --tracking-wide:    0.04em;
  --tracking-wider:   0.12em;   /* labels, eyebrows */
  --tracking-widest:  0.22em;   /* HUD micro-labels */

  /* ---- Semantic roles ---- */
  --role-display-family: var(--font-display);
  --role-display-weight: var(--weight-bold);
  --role-display-tracking: var(--tracking-tight);

  --role-heading-family: var(--font-display);
  --role-heading-weight: var(--weight-semibold);

  --role-body-family: var(--font-body);
  --role-body-weight: var(--weight-regular);

  --role-label-family: var(--font-display);
  --role-label-weight: var(--weight-semibold);
  --role-label-tracking: var(--tracking-wider);

  --role-data-family: var(--font-mono);
  --role-data-weight: var(--weight-medium);
}
