/**
 * Typography System
 * Defines font utilities for consistent typographic styles across the application
 * Fonts are loaded via Google Fonts CDN in index.css
 */

/* Monospace font utilities */
.font-mono {
  font-family: 'JetBrains Mono', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
}

/* Tabular numbers - ensures digits are aligned in columns */
.tabular-nums {
  font-variant-numeric: tabular-nums;
}

.diagonal-nums {
  font-variant-numeric: diagonal-nums;
}

.stacked-fractions {
  font-variant-numeric: stacked-fractions;
}

/* Common utility combinations */
.font-mono-tabular {
  font-family: 'JetBrains Mono', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-variant-numeric: tabular-nums;
}

/* Text sizing utilities */
.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}

/* Font weight utilities */
.font-light {
  font-weight: 300;
}

.font-normal {
  font-weight: 400;
}

.font-medium {
  font-weight: 500;
}

.font-semibold {
  font-weight: 600;
}

.font-bold {
  font-weight: 700;
}

/* Line height utilities for specific use cases */
.leading-tight {
  line-height: 1.25;
}

.leading-normal {
  line-height: 1.5;
}

.leading-relaxed {
  line-height: 1.625;
}

.leading-loose {
  line-height: 2;
}

/* Tracking (letter spacing) utilities */
.tracking-tight {
  letter-spacing: -0.025em;
}

.tracking-normal {
  letter-spacing: 0;
}

.tracking-wide {
  letter-spacing: 0.025em;
}

.tracking-wider {
  letter-spacing: 0.05em;
}
