/* utilities.css */

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

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

.m-xs { margin: var(--spacing-xs) !important; }
.mt-xs { margin-top: var(--spacing-xs) !important; }
.mr-xs { margin-right: var(--spacing-xs) !important; }
.mb-xs { margin-bottom: var(--spacing-xs) !important; }
.ml-xs { margin-left: var(--spacing-xs) !important; }

.p-xs { padding: var(--spacing-xs) !important; }
.pt-xs { padding-top: var(--spacing-xs) !important; }
.pr-xs { padding-right: var(--spacing-xs) !important; }
.pb-xs { padding-bottom: var(--spacing-xs) !important; }
.pl-xs { padding-left: var(--spacing-xs) !important; }

.m-sm { margin: var(--spacing-sm) !important; }
.mt-sm { margin-top: var(--spacing-sm) !important; }
.mr-sm { margin-right: var(--spacing-sm) !important; }
.mb-sm { margin-bottom: var(--spacing-sm) !important; }
.ml-sm { margin-left: var(--spacing-sm) !important; }

.p-sm { padding: var(--spacing-sm) !important; }
.pt-sm { padding-top: var(--spacing-sm) !important; }
.pr-sm { padding-right: var(--spacing-sm) !important; }
.pb-sm { padding-bottom: var(--spacing-sm) !important; }
.pl-sm { padding-left: var(--spacing-sm) !important; }

.m-md { margin: var(--spacing-md) !important; }
.mt-md { margin-top: var(--spacing-md) !important; }
.mr-md { margin-right: var(--spacing-md) !important; }
.mb-md { margin-bottom: var(--spacing-md) !important; }
.ml-md { margin-left: var(--spacing-md) !important; }

.p-md { padding: var(--spacing-md) !important; }
.pt-md { padding-top: var(--spacing-md) !important; }
.pr-md { padding-right: var(--spacing-md) !important; }
.pb-md { padding-bottom: var(--spacing-md) !important; }
.pl-md { padding-left: var(--spacing-md) !important; }

.m-lg { margin: var(--spacing-lg) !important; }
.mt-lg { margin-top: var(--spacing-lg) !important; }
.mr-lg { margin-right: var(--spacing-lg) !important; }
.mb-lg { margin-bottom: var(--spacing-lg) !important; }
.ml-lg { margin-left: var(--spacing-lg) !important; }

.p-lg { padding: var(--spacing-lg) !important; }
.pt-lg { padding-top: var(--spacing-lg) !important; }
.pr-lg { padding-right: var(--spacing-lg) !important; }
.pb-lg { padding-bottom: var(--spacing-lg) !important; }
.pl-lg { padding-left: var(--spacing-lg) !important; }

.m-xl { margin: var(--spacing-xl) !important; }
.mt-xl { margin-top: var(--spacing-xl) !important; }
.mr-xl { margin-right: var(--spacing-xl) !important; }
.mb-xl { margin-bottom: var(--spacing-xl) !important; }
.ml-xl { margin-left: var(--spacing-xl) !important; }

.p-xl { padding: var(--spacing-xl) !important; }
.pt-xl { padding-top: var(--spacing-xl) !important; }
.pr-xl { padding-right: var(--spacing-xl) !important; }
.pb-xl { padding-bottom: var(--spacing-xl) !important; }
.pl-xl { padding-left: var(--spacing-xl) !important; }

/* Text Alignment Utilities */
.text-left { text-align: left !important; }
.text-center { text-align: center !important; }
.text-right { text-align: right !important; }
.text-justify { text-align: justify !important; }

/* Display Utilities */
.d-block { display: block !important; }
.d-inline { display: inline !important; }
.d-inline-block { display: inline-block !important; }
.d-flex { display: flex !important; }
.d-inline-flex { display: inline-flex !important; }
.d-none { display: none !important; }

/* Visibility Utilities */
.visible { visibility: visible !important; }
.invisible { visibility: hidden !important; }

/* Flex Utilities */
.flex-row { flex-direction: row !important; }
.flex-column { flex-direction: column !important; }
.flex-wrap { flex-wrap: wrap !important; }
.flex-nowrap { flex-wrap: nowrap !important; }
.justify-content-start { justify-content: flex-start !important; }
.justify-content-center { justify-content: center !important; }
.justify-content-end { justify-content: flex-end !important; }
.justify-content-between { justify-content: space-between !important; }
.justify-content-around { justify-content: space-around !important; }
.align-items-start { align-items: flex-start !important; }
.align-items-center { align-items: center !important; }
.align-items-end { align-items: flex-end !important; }

/* Position Utilities */
.position-static { position: static !important; }
.position-relative { position: relative !important; }
.position-absolute { position: absolute !important; }
.position-fixed { position: fixed !important; }
.position-sticky { position: sticky !important; }

/* Overflow Utilities */
.overflow-auto { overflow: auto !important; }
.overflow-hidden { overflow: hidden !important; }
.overflow-visible { overflow: visible !important; }
.overflow-scroll { overflow: scroll !important; }

/* Border Radius Utilities */
.rounded { border-radius: var(--border-radius-md) !important; }
.rounded-sm { border-radius: var(--border-radius-sm) !important; }
.rounded-lg { border-radius: var(--border-radius-lg) !important; }
