/* RJ DTC Admin · typography.css · split verbatim from phase-2/kit/tokens.css (kit v3) by phase-4/src/build_pack.py.
   Colour roles are shadcn-style bare HSL triples: use hsl(var(--x)) or hsl(var(--x) / .12). */
:root {
  /* ---------- type ---------- */
  --font-title: 'Archivo', system-ui, sans-serif;     /* titles, buttons, menu, labels, table headers */
  --font-voice: var(--font-title);
  --font-ui: 'IBM Plex Sans', system-ui, sans-serif;  /* reading text, tables, prices */
  --font-code: 'IBM Plex Mono', ui-monospace, monospace; /* cloth codes, handles, versions, ids */
  --font-stretch-title: 100%;              /* Frank 2026-10-11: Archivo is NEVER set wide */
  --title-w: 600;
  /* scale: size / line-height / tracking (tracking is never positive on Archivo) */
  --text-display: 40px;  --lh-display: 1.05; --tr-display: -.02em;   /* kit page H1 only */
  --text-page: 26px;     --lh-page: 1.15;    --tr-page: -.015em;     /* page title in the app */
  --text-section: 16px;  --lh-section: 1.25; --tr-section: -.005em;  /* sheet / dialog / panel title */
  --text-card: 13.5px;   --lh-card: 1.3;                              /* card title, panel h3 */
  --text-body: 13px;     --lh-body: 1.45;                             /* default UI text (Plex) */
  --text-read: 15px;     --lh-read: 1.55;                             /* help drawer, long copy */
  --text-label: 13px;                                                /* form label (Archivo 600) */
  --text-small: 12px;                                                /* meta, table secondary */
  --text-kpi: 28px;      --text-hero: 30px;                          /* KPI value / chart headline figure (raised by data-display) */
  --text-step-m: 17px;                                               /* phone compact step title (raised by wizard-stepper) */
  --text-input-m: 16px;                                              /* phone text fields: iOS never zooms at >= 16px */
  --text-micro: 11.5px;                                              /* chips, counts, th */
  --text-code: 12px;
  --text-btn: 13.5px;    --text-btn-sm: 12.5px;  --text-btn-lg: 15px;
  --w-regular: 400; --w-medium: 500; --w-semibold: 600; --w-bold: 700;

  /* ---------- kit v3 · type literals (off the main scale; named so every use can be found) ---------- */
  --text-8: 8px;           /* initials in the empty garment placeholder (.dt-ph.none) */
  --text-8-5: 8.5px;       /* initials in the empty garment placeholder (.dt-ph.none) */
  --text-9: 9px;           /* initials in the large empty garment placeholder (.dt-ph.lg.none) */
  --text-9-5: 9.5px;       /* small mono badge */
  --text-10: 10px;         /* tab bar badge, tiny avatar */
  --text-10-5: 10.5px;     /* STAGING / environment badge, tab bar label, filter counts */
  --text-11: 11px;         /* kbd, chip count, step mark */
  --text-14: 14px;         /* phone lede, phone list title */
  --text-18: 18px;         /* phone sheet and ticket title */
  --text-19: 19px;         /* surface-only literal */
  --text-20: 20px;         /* ticket head, mini error page title */
  --text-22: 22px;         /* stacked KPI value, error page title */
  --text-24: 24px;         /* phone page title */
  --text-44: 44px;         /* surface-only literal */
  --text-52: 52px;         /* surface-only literal */
}
