/* GeoLage — Typography tokens
   IBM Plex Sans for UI & display; IBM Plex Mono for coordinates, IDs,
   timestamps, radii and any tabular/operational data. Engineered, calm,
   high legibility on dense operational screens. */

:root {
  /* Families */
  --font-sans: 'IBM Plex Sans', 'Segoe UI', system-ui, sans-serif;
  --font-mono: 'IBM Plex Mono', 'SFMono-Regular', ui-monospace, monospace;
  --font-display: var(--font-sans);

  /* Weights */
  --fw-regular: 400; /* @kind font */
  --fw-medium:  500; /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold:    700; /* @kind font */

  /* Type scale (px) — modest steps, dense-friendly */
  --fs-2xs: 11px;
  --fs-xs:  12px;
  --fs-sm:  13px;
  --fs-md:  14px;   /* base UI text */
  --fs-lg:  16px;
  --fs-xl:  18px;
  --fs-2xl: 20px;
  --fs-3xl: 24px;
  --fs-4xl: 30px;
  --fs-5xl: 38px;
  --fs-6xl: 48px;

  /* Line heights */
  --lh-tight:   1.15; /* @kind font */
  --lh-snug:    1.3; /* @kind font */
  --lh-normal:  1.5; /* @kind font */
  --lh-relaxed: 1.65; /* @kind font */

  /* Letter spacing */
  --ls-tight:  -0.02em; /* @kind font */
  --ls-normal: 0; /* @kind font */
  --ls-wide:   0.02em; /* @kind font */
  --ls-caps:   0.08em; /* @kind font */

  /* Semantic roles */
  --text-display:    var(--fw-semibold) var(--fs-5xl)/var(--lh-tight) var(--font-display);
  --text-h1:         var(--fw-semibold) var(--fs-4xl)/var(--lh-tight) var(--font-display);
  --text-h2:         var(--fw-semibold) var(--fs-3xl)/var(--lh-snug) var(--font-display);
  --text-h3:         var(--fw-semibold) var(--fs-2xl)/var(--lh-snug) var(--font-sans);
  --text-h4:         var(--fw-semibold) var(--fs-lg)/var(--lh-snug) var(--font-sans);
  --text-body-lg:    var(--fw-regular) var(--fs-lg)/var(--lh-normal) var(--font-sans);
  --text-base:       var(--fw-regular) var(--fs-md)/var(--lh-normal) var(--font-sans);
  --text-small:      var(--fw-regular) var(--fs-sm)/var(--lh-normal) var(--font-sans);
  --text-caption:    var(--fw-regular) var(--fs-xs)/var(--lh-snug) var(--font-sans);
  --text-mono:       var(--fw-regular) var(--fs-sm)/var(--lh-normal) var(--font-mono);
  --text-mono-sm:    var(--fw-regular) var(--fs-xs)/var(--lh-normal) var(--font-mono);
}
