/**
 * Utility classes — single-purpose helpers.
 */

/* Screen reader only */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Screen reader only — but visible on focus (skip link) */
.sr-only--focusable:focus,
.sr-only--focusable:focus-within {
  position: fixed !important;
  top: var(--space-sm);
  left: var(--space-sm);
  width: auto !important;
  height: auto !important;
  padding: var(--space-sm) var(--space-md) !important;
  margin: 0 !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important;
  background: var(--color-surface-base);
  color: var(--color-text-primary);
  font-weight: var(--weight-semibold);
  border: 2px solid var(--color-brand-gold);
  border-radius: var(--radius-sm);
  z-index: var(--z-modal);
  box-shadow: var(--shadow-md);
}

/* Text alignment */
.text-center {
  text-align: center;
}

/* Accent text color */
.text-accent {
  color: var(--color-brand-gold);
}
