/* ==========================================================================
   Utilities: Text
   ========================================================================== */

/*
 * Text utility classes for typography adjustments.
 * Uses the u- prefix for utility classes.
 */

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

/* Text colors */
.u-text-muted { color: var(--color-text-muted); }
.u-text-light { color: var(--color-text-light); }
.u-text-primary { color: var(--color-primary); }
.u-text-success { color: var(--color-success); }
.u-text-warning { color: var(--color-warning); }
.u-text-danger { color: var(--color-danger); }

/* Font weights */
.u-font-light { font-weight: var(--font-weight-light); }
.u-font-normal { font-weight: var(--font-weight-normal); }
.u-font-medium { font-weight: var(--font-weight-medium); }
.u-font-semibold { font-weight: var(--font-weight-semibold); }
.u-font-bold { font-weight: var(--font-weight-bold); }

/* Font sizes */
.u-text-xs { font-size: var(--font-size-xs); }
.u-text-sm { font-size: var(--font-size-sm); }
.u-text-base { font-size: var(--font-size-base); }
.u-text-lg { font-size: var(--font-size-lg); }
.u-text-xl { font-size: var(--font-size-xl); }

/* Text transforms */
.u-uppercase { text-transform: uppercase; }
.u-lowercase { text-transform: lowercase; }
.u-capitalize { text-transform: capitalize; }

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