/* ============================================================
   TOKENS — typography.css
   Fluid type scale generated via Utopia (utopia.fyi).

   Inputs used:
     Min viewport: 375px   Max viewport: 1400px
     Min font size: 16px   Max font size: 20px
     Type scale: Minor Third (1.200)

   To regenerate or customise: https://utopia.fyi/type/calculator
   Paste your own clamp() values below — the token names stay
   the same so nothing else in the system needs to change.

   Scale steps:
     --step--2  xs       (smallest, captions, legal)
     --step--1  sm       (secondary text, labels)
     --step-0   base     (body copy — your base font size)
     --step-1   md       (lead paragraphs, larger body)
     --step-2   lg       (h4, small headings)
     --step-3   xl       (h3)
     --step-4   2xl      (h2)
     --step-5   3xl      (h1)
   ============================================================ */

/* ── Fluid Type Scale ────────────────────────────────────── */

:root {
  --step--2: clamp(0.69rem, 0.66rem + 0.18vw, 0.80rem);
  --step--1: clamp(0.83rem, 0.78rem + 0.29vw, 1.00rem);
  --step-0:  clamp(1.00rem, 0.91rem + 0.43vw, 1.25rem);
  --step-1:  clamp(1.20rem, 1.07rem + 0.63vw, 1.56rem);
  --step-2:  clamp(1.44rem, 1.26rem + 0.89vw, 1.95rem);
  --step-3:  clamp(1.73rem, 1.48rem + 1.24vw, 2.44rem);
  --step-4:  clamp(2.07rem, 1.74rem + 1.70vw, 3.05rem);
  --step-5:  clamp(2.49rem, 2.03rem + 2.29vw, 3.82rem);
}

/* ── Font Families ───────────────────────────────────────── */
/* Replace with project fonts. System stack is a safe default. */

:root {
  --font-base: system-ui, -apple-system, sans-serif;
  --font-heading: system-ui, -apple-system, sans-serif;
  --font-mono: ui-monospace, "Cascadia Code", "Source Code Pro",
               Menlo, Consolas, "DejaVu Sans Mono", monospace;
}

/* ── Font Weights ────────────────────────────────────────── */

:root {
  --font-weight-regular: 400;
  --font-weight-medium:  500;
  --font-weight-bold:    700;
}

/* ── Line Heights ────────────────────────────────────────── */

:root {
  --leading-tight:  1.1;   /* headings — set by reset, available here */
  --leading-snug:   1.3;   /* subheadings, pull quotes */
  --leading-normal: 1.5;   /* body copy — set by reset */
  --leading-loose:  1.8;   /* long-form prose, accessibility preference */
}

/* ── Letter Spacing ──────────────────────────────────────── */

:root {
  --tracking-tight:  -0.03em;
  --tracking-normal:  0;
  --tracking-wide:    0.05em;
  --tracking-wider:   0.1em;
}

/* ── Measure (line length) ───────────────────────────────── */
/* Used as max-width on prose containers.                    */

:root {
  --measure:      65ch;   /* comfortable reading width */
  --measure-wide: 80ch;   /* tables, wider content */
  --measure-narrow: 45ch; /* callouts, sidebars */
}
