body {
    background: #f4f7fb;
}

.card {
    border-radius: 18px;
}

.avatar-icon {

    width: 85px;
    height: 85px;

    margin: auto;

    border-radius: 50%;

    background: #0d6efd;

    display: flex;
    align-items: center;
    justify-content: center;

    color: white;

    font-size: 2rem;

    box-shadow: 0 5px 18px rgba(13, 110, 253, .35);

}

.form-control {

    height: 48px;

    border-radius: 10px;

}

.form-control:focus {

    border-color: #0d6efd;

    box-shadow: 0 0 0 .2rem rgba(13, 110, 253, .15);

}

.input-group .btn {

    border-radius: 0 10px 10px 0;

}

.progress {

    height: 10px;

    border-radius: 10px;

}

.progress-bar {

    transition: all .3s ease;

}

.requirements {

    font-size: .92rem;

    line-height: 1.8;

}

.requirements div {

    transition: all .25s ease;

}

.requirements .ok {

    color: #198754;
    font-weight: 600;

}

.requirements .fail {

    color: #dc3545;

}

.text-danger ul {

    margin-bottom: 0;
    padding-left: 18px;

}

.btn-primary {

    height: 48px;

    font-weight: 600;

    border-radius: 10px;

}

.card {

    animation: fadeIn .45s ease;

}

@keyframes fadeIn {

    from {

        opacity: 0;
        transform: translateY(12px);

    }

    to {

        opacity: 1;
        transform: translateY(0);

    }

}

.footer-login {

    font-size: .95rem;

}