:root {
  /* Font families */
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: "Courier New", monospace;
  
  /* Font sizes */
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-base: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-2xl: 24px;
  --font-size-3xl: 32px;
  --font-size-4xl: 40px;
  --font-size-5xl: 48px;
  
  /* Font weights */
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  
  /* Line heights */
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.75;
  
  /* Semantic text styles */
  --text-display: var(--font-size-5xl) var(--font-weight-bold) / var(--line-height-tight);
  --text-heading-1: var(--font-size-4xl) var(--font-weight-bold) / var(--line-height-tight);
  --text-heading-2: var(--font-size-3xl) var(--font-weight-bold) / var(--line-height-tight);
  --text-heading-3: var(--font-size-2xl) var(--font-weight-semibold) / var(--line-height-tight);
  --text-body-large: var(--font-size-lg) var(--font-weight-normal) / var(--line-height-normal);
  --text-body: var(--font-size-base) var(--font-weight-normal) / var(--line-height-normal);
  --text-body-small: var(--font-size-sm) var(--font-weight-normal) / var(--line-height-normal);
  --text-caption: var(--font-size-xs) var(--font-weight-normal) / var(--line-height-normal);
}
