/* ═══════════════════════════════════════════════════════════
   Utilities — typography helpers
   ═══════════════════════════════════════════════════════════ */

.text-xs   { font-size: 0.75rem; }
.text-sm   { font-size: 0.85rem; }
.text-base { font-size: 1rem; }
.text-lg   { font-size: 1.125rem; }

.text-muted   { color: var(--color-muted); }
.text-success { color: var(--color-success); }
.text-danger  { color: var(--color-error); }
.text-error   { color: var(--color-error); }

.mono {
  font-family: var(--font-mono);
  font-size: 0.875rem;
}

/* Visually hidden but accessible to screen readers (WCAG 1.3.1) */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
