html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
}

/* ============================= */
/*       LOADER STYLES           */
/* ============================= */

/* Loader wrapper */
#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: white;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 999999;
}

/* Dots Loader */
.loader-dots {
    display: flex;
    gap: 8px;
}

    .loader-dots div {
        width: 12px;
        height: 12px;
        background: #0d6efd;
        border-radius: 50%;
        animation: bounce 0.6s infinite alternate;
    }

        .loader-dots div:nth-child(2) {
            animation-delay: 0.2s;
        }

        .loader-dots div:nth-child(3) {
            animation-delay: 0.4s;
        }

@keyframes bounce {
    from {
        transform: translateY(0);
    }

    to {
        transform: translateY(-12px);
    }
}
