/* Bubbly Surreal — Typography tokens */

:root {
  /* ---- Families ---- */
  --font-display: 'Fredoka', 'Trebuchet MS', system-ui, sans-serif;  /* bubbly, rounded */
  --font-body: 'Nunito', system-ui, -apple-system, sans-serif;        /* friendly sans */
  --font-mono: 'Space Mono', ui-monospace, 'SFMono-Regular', monospace; /* spec-tag mono */

  /* ---- Weights ---- */
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-black: 800;

  /* ---- Type scale (fluid-ish, rem based on 16px root) ---- */
  --text-2xs: 0.6875rem;  /* 11px — mono micro-tags */
  --text-xs: 0.75rem;     /* 12px */
  --text-sm: 0.875rem;    /* 14px */
  --text-base: 1rem;      /* 16px — body default */
  --text-md: 1.125rem;    /* 18px */
  --text-lg: 1.375rem;    /* 22px */
  --text-xl: 1.75rem;     /* 28px */
  --text-2xl: 2.25rem;    /* 36px */
  --text-3xl: 3rem;       /* 48px */
  --text-4xl: 4rem;       /* 64px — big bubbly display */

  /* ---- Line heights ---- */
  --leading-tight: 1.05;
  --leading-snug: 1.2;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  /* ---- Letter spacing ---- */
  --tracking-tight: -0.01em;
  --tracking-normal: 0em;
  --tracking-wide: 0.04em;
  --tracking-mono: 0.08em;   /* uppercase mono tags run wide */

  /* ---- Semantic roles ---- */
  --font-heading: var(--font-display);
  --font-ui: var(--font-body);
  --font-tag: var(--font-mono);
}
