html,
body {
    min-height: 100vh;
    height: unset !important;
    overflow-x: clip;
}

img {
    max-width: 100%;
    object-fit: contain;
}

button,
button:focus,
button:active,
.btn {
    outline: none;
}

textarea:focus,
input:focus {
    outline: none;
}

a i.bi::before {
    vertical-align: baseline;
}

/* 
========================================
bootstrap override colors
========================================
*/
:root {
    --bs-primary: #3f6397;
    --bs-primary-rgb: 63, 99, 151;
    --bs-link-color-rgb: 63, 99, 151;
    --bs-link-color: var(--bs-primary);
}

.btn-primary {
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-bg: color-mix(in srgb, var(--bs-btn-bg), black 10%);
    --bs-btn-hover-border-color: color-mix(in srgb, var(--bs-btn-bg), black 10%);
    --bs-btn-active-bg: color-mix(in srgb, var(--bs-btn-bg), black 20%);
    --bs-btn-active-border-color: color-mix(in srgb, var(--bs-btn-bg), black 20%);
}

.bg-primary {
    background-color: var(--bs-primary) !important;
}

.text-primary {
    color: var(--bs-primary) !important;
}

.border-primary {
    border-color: var(--bs-primary) !important;
}

.nav-pills {
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-link-active-bg: var(--bs-primary);
}

.pagination{
    --bs-pagination-active-bg: var(--bs-primary);
    --bs-pagination-active-border-color: var(--bs-primary);
}