﻿/* Minimal Bootstrap 5 utility shims for apps running Bootstrap 3.
 * Load AFTER bootstrap v3.
 */

/* -----------------------------
   1) Layout / Flex utilities
------------------------------ */

.d-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

.flex-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
}

.flex-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
}

.justify-content-center {
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
}

.align-items-center {
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
}

.align-items-end {
    -webkit-box-align: end !important;
    -ms-flex-align: end !important;
    align-items: flex-end !important;
}

/* Bootstrap 5 gap utility
   Modern browsers support gap on flex; we add a fallback for older ones. */
.gap-3 {
    gap: 1rem !important;
}
.gap-2{
    gap: .75rem !important;
}

    /* Fallback spacing between children when "gap" isn't supported */
    .gap-3.flex-row > * + * {
        margin-left: 1rem;
    }

    .gap-3.flex-column > * + * {
        margin-top: 1rem;
    }

    .gap-2.flex-row > * + * {
        margin-left: .75rem;
    }

    .gap-2.flex-column > * + * {
        margin-top: .75rem;
    }

/* -----------------------------
   2) Width utilities
------------------------------ */

.w-100 {
    width: 100% !important;
}

/* -----------------------------
   3) Spacing utilities (subset)
   Values approximate Bootstrap 5 defaults:
   1 = .25rem, 2 = .5rem, 3 = 1rem
------------------------------ */

.m-0 {
    margin: 0 !important;
}

.mt-2 {
    margin-top: .5rem !important;
}

.ms-3 {
    margin-left: 1rem !important;
}

.p-0 {
    padding: 0 !important;
}

.p-3 {
    padding: 1rem !important;
}

.px-2 {
    padding-left: .5rem !important;
    padding-right: .5rem !important;
}

.py-1 {
    padding-top: .25rem !important;
    padding-bottom: .25rem !important;
}

/* -----------------------------
   4) Typography utilities
------------------------------ */

.fw-bold {
    font-weight: 700 !important;
}

.fst-italic {
    font-style: italic !important;
}

.text-end {
    text-align: right !important;
}

/* -----------------------------
   5) Background utilities
------------------------------ */

.bg-white {
    background-color: #fff !important;
}
/* v5 "bg-light" is a very light gray; v3's closest vibe is #f7f7f7-ish */
.bg-light {
    background-color: #f8f9fa !important;
}

/* -----------------------------
   6) Border + radius utilities
------------------------------ */

/* v5-style border helpers (not present in v3 core) */
.border {
    border: 1px solid #ddd !important;
}

/* border-2 implies thicker border width */
.border-2 {
    border-width: 2px !important;
    border-style: solid !important;
    border-color: #ddd !important;
}

/* Rounding helpers */
.rounded {
    border-radius: .25rem !important;
}

.rounded-3 {
    border-radius: .3rem !important;
}


