.validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

.message-text {
    display: block;
    margin-bottom: 1rem;
    font-size: 0.9rem;
}

.form-container {
    background: white;
    border-radius: 1rem;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    padding: 2.5rem;
}

.btn-login {
    background: #61197C;
    border: 1.5px solid rgba(255, 255, 255, .14);
    box-shadow: 0 6px 12px rgba(97, 25, 124, .35);
    border-radius: 30px;
    color: #fff;
    font-size: 18px;
    padding: 0.5rem 2.5rem;
    transition: all 0.3s ease;
    min-width: 150px;
}

    .btn-login:hover {
        background: #4f1464;
        box-shadow: 0 6px 12px rgba(97, 25, 124, .5);
        transform: translateY(-2px);
        color: rgba(255, 255, 255, .8);
    }

.login-title {
    color: #61197C;
    font-weight: 600;
    margin-bottom: 2rem;
}

.form-floating > label {
    color: #666;
}

.required-field::after {
    content: "*";
    color: #dc3545;
    margin-left: 4px;
}

.form-check-input:checked {
    background-color: #61197C;
    border-color: #61197C;
}

a {
    color: #61197C;
    text-decoration: none;
    transition: all 0.2s ease;
}

    a:hover {
        color: #4f1464;
        text-decoration: underline;
    }
