/* ==================================================================
   Mitmachbox — Typography tokens
   One neo-grotesque carries every voice. Hierarchy comes from weight
   (400 / 500) and a tight type scale, not from many sizes or colors.
   Global tracking is -0.03em — the Swiss optical tightness.
   Base scale: Major Second (1.125) from a 16px base (per the reference),
   extended with a micro label size and an intermediate heading for the
   admin UI's denser needs.
   ================================================================== */
:root {
  /* --- Families --------------------------------------------------- */
  --font-sans: 'Hanken Grotesk', 'Neue Haas Grotesk Text', 'Helvetica Neue',
               ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, 'SF Mono', Menlo, Consolas, monospace;

  /* --- Weights (the system uses two; 600 for dense-UI emphasis) --- */
  --weight-regular: 400;
  --weight-medium:  500;
  --weight-semibold: 600;   /* extension: small-caps labels, table heads */

  /* --- Global tracking -------------------------------------------- */
  --tracking-tight: -0.03em;   /* applied at every size */
  --tracking-normal: 0;

  /* --- Type scale : size / line-height ---------------------------- */
  --text-micro:        13px;   /* extension — badges, table headers, meta */
  --leading-micro:     1.4;
  --text-caption:      14px;
  --leading-caption:   1.4;
  --text-body:         16px;   /* default body & UI */
  --leading-body:      1.4;
  --text-body-lg:      17px;   /* long-form paragraph */
  --leading-body-lg:   1.5;
  --text-subheading:   20px;
  --leading-subheading:1.4;
  --text-heading-sm:   24px;
  --leading-heading-sm:1.2;
  --text-heading-md:   32px;   /* extension — page titles in dense views */
  --leading-heading-md:1.15;
  --text-heading:      42px;   /* hero page heading */
  --leading-heading:   1.1;
}
