html,
body {
    height: 100%;
}
body {
    display: flex;
    align-items: center;
    padding-top: 40px;
    padding-bottom: 40px;
    /* background-color: #f5f5f5; */
}
/* background */
@media screen and (min-width: 767px) {
    .bg-login {
        width: 100%;
        height: 100%;
        position: fixed;
        filter: blur(10px);
        z-index: -10;
        background-size: cover;
        opacity: 0.4;
    }
}
.form-signin {
    width: 100%;
    max-width: 330px;
    padding: 15px;
    margin: auto;
}
.form-signin .checkbox {
    font-weight: 400;
}
.form-signin .form-floating:focus-within {
    z-index: 2;
}
.form-floating:first-child input {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}
.form-floating:not(:first-child):not(:last-child) input {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.form-floating:last-child input {
    margin-bottom: 10px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.form-control {
    background-color: var(--bs-gray-700);
    color: var(--bs-gray-100);
}
.form-control:focus {
    background-color: var(--bs-gray-600);
    color: var(--bs-gray-100);
}
.text-muted {
    color: #c6c4c4 !important;
}
.form-floating > .form-control:focus ~ label::after,
.form-floating > .form-control:not(:placeholder-shown) ~ label::after,
.form-floating > .form-control-plaintext ~ label::after,
.form-floating > .form-select ~ label::after {
    background-color: unset !important;
}