/* ============================================================
   Lustre type system — Plus Jakarta Sans
   Six roles: Display, Headline, Title, Body, Label, Caption.
   Sizes in px map 1:1 to pt on iOS; all roles scale with
   Dynamic Type in the native implementation.
   ============================================================ */

:root {
  --font-sans: "Plus Jakarta Sans", -apple-system, "Segoe UI", system-ui, sans-serif;

  /* Display — hero / onboarding / empty states. Used sparingly. */
  --type-display-size: 34px;
  --type-display-line: 40px;
  --type-display-weight: 800;
  --type-display-tracking: -0.02em;

  /* Headline — screen titles, section headers */
  --type-headline-size: 24px;
  --type-headline-line: 30px;
  --type-headline-weight: 700;
  --type-headline-tracking: -0.01em;

  /* Title — card titles, task names. The workhorse. */
  --type-title-size: 17px;
  --type-title-line: 22px;
  --type-title-weight: 600;
  --type-title-tracking: 0;

  /* Body — descriptions, chat, notes */
  --type-body-size: 16px;
  --type-body-line: 23px;
  --type-body-weight: 400;
  --type-body-tracking: 0;

  /* Label — buttons, tab items, form labels */
  --type-label-size: 14px;
  --type-label-line: 18px;
  --type-label-weight: 600;
  --type-label-tracking: 0.01em;

  /* Caption — timestamps, metadata, translation badges */
  --type-caption-size: 12px;
  --type-caption-line: 16px;
  --type-caption-weight: 500;
  --type-caption-tracking: 0.02em;
}
