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

.text-xs { font-size: var(--font-size-xs); }
.text-sm { font-size: var(--font-size-sm); }
.text-base { font-size: var(--font-size-base); }
.text-lg { font-size: var(--font-size-lg); }
.text-xl { font-size: var(--font-size-xl); }

.font-normal { font-weight: var(--font-weight-normal); }
.font-medium { font-weight: var(--font-weight-medium); }
.font-semibold { font-weight: var(--font-weight-semibold); }
.font-bold { font-weight: var(--font-weight-bold); }
.font-extrabold { font-weight: var(--font-weight-extrabold); }

/* Spacing utilities */
.m-0 { margin: 0; }
.mt-0 { margin-top: 0; }
.mb-0 { margin-bottom: 0; }
.ml-0 { margin-left: 0; }
.mr-0 { margin-right: 0; }

.mt-1 { margin-top: var(--space-xs); }
.mb-1 { margin-bottom: var(--space-xs); }
.ml-1 { margin-left: var(--space-xs); }
.mr-1 { margin-right: var(--space-xs); }

.mt-2 { margin-top: var(--space-sm); }
.mb-2 { margin-bottom: var(--space-sm); }
.ml-2 { margin-left: var(--space-sm); }
.mr-2 { margin-right: var(--space-sm); }

.mt-3 { margin-top: var(--space-md); }
.mb-3 { margin-bottom: var(--space-md); }
.ml-3 { margin-left: var(--space-md); }
.mr-3 { margin-right: var(--space-md); }

.mt-4 { margin-top: var(--space-lg); }
.mb-4 { margin-bottom: var(--space-lg); }
.ml-4 { margin-left: var(--space-lg); }
.mr-4 { margin-right: var(--space-lg); }

.mt-5 { margin-top: var(--space-xl); }
.mb-5 { margin-bottom: var(--space-xl); }
.ml-5 { margin-left: var(--space-xl); }
.mr-5 { margin-right: var(--space-xl); }

.p-0 { padding: 0; }
.pt-0 { padding-top: 0; }
.pb-0 { padding-bottom: 0; }
.pl-0 { padding-left: 0; }
.pr-0 { padding-right: 0; }

.pt-1 { padding-top: var(--space-xs); }
.pb-1 { padding-bottom: var(--space-xs); }
.pl-1 { padding-left: var(--space-xs); }
.pr-1 { padding-right: var(--space-xs); }

.pt-2 { padding-top: var(--space-sm); }
.pb-2 { padding-bottom: var(--space-sm); }
.pl-2 { padding-left: var(--space-sm); }
.pr-2 { padding-right: var(--space-sm); }

.pt-3 { padding-top: var(--space-md); }
.pb-3 { padding-bottom: var(--space-md); }
.pl-3 { padding-left: var(--space-md); }
.pr-3 { padding-right: var(--space-md); }

.pt-4 { padding-top: var(--space-lg); }
.pb-4 { padding-bottom: var(--space-lg); }
.pl-4 { padding-left: var(--space-lg); }
.pr-4 { padding-right: var(--space-lg); }

.pt-5 { padding-top: var(--space-xl); }
.pb-5 { padding-bottom: var(--space-xl); }
.pl-5 { padding-left: var(--space-xl); }
.pr-5 { padding-right: var(--space-xl); }