/* Flexbox Utilities */
.flex {
    display: flex;
}

.flex-col {
    flex-direction: column;
}

.flex-center {
    display: flex;
    justify-content: center;
    align-items: center;
}

.items-center {
    align-items: center;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.flex-wrap {
    flex-wrap: wrap;
}

.gap-6 {
    gap: 6px;
}

.gap-8 {
    gap: 8px;
}

.gap-10 {
    gap: 10px;
}

.gap-12 {
    gap: 12px;
}

.gap-20 {
    gap: 20px;
}

/* Sizing Utilities */
.w-full {
    width: 100%;
}

.h-full {
    height: 100%;
}

.max-w-340 {
    max-width: 340px;
}

/* Spacing Utilities */
.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt-10 {
    margin-top: 10px;
}

.mt-15 {
    margin-top: 15px;
}

.mt-20 {
    margin-top: 20px;
}

.mt-25 {
    margin-top: 25px;
}

.mt-30 {
    margin-top: 30px;
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-12 {
    margin-bottom: 12px;
}

.mb-20 {
    margin-bottom: 20px;
}

.pt-15 {
    padding-top: 15px;
}

.pb-20 {
    padding-bottom: 20px;
}

.pb-50 {
    padding-bottom: 50px;
}

/* Text Utilities */
.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.font-bold {
    font-weight: 700;
}

.font-medium {
    font-weight: 500;
}

.text-sm {
    font-size: 0.85rem;
}

.text-xs {
    font-size: 0.75rem;
}

/* Position Utilities */
.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.z-100 {
    z-index: 100;
}

/* Additional Flex Utilities */
.flex-shrink-0 {
    flex-shrink: 0;
}

.items-end {
    align-items: flex-end;
}

/* Box Sizing */
.box-border {
    box-sizing: border-box;
}

/* Additional Spacing */
.mb-5 {
    margin-bottom: 5px;
}

.mb-8 {
    margin-bottom: 8px;
}

.mb-15 {
    margin-bottom: 15px;
}

.mb-25 {
    margin-bottom: 25px;
}

.mb-30 {
    margin-bottom: 30px;
}

.p-0 {
    padding: 0;
}

.p-10 {
    padding: 10px;
}

.p-15 {
    padding: 15px;
}

/* Display Utilities */
.block {
    display: block;
}

.inline-block {
    display: inline-block;
}