/* login.css */
.card {
    transition: transform 0.3s ease;
}

    .card:hover {
        transform: translateY(-2px);
    }

.input-group-text {
    min-width: 45px;
}

#togglePassword {
    min-width: 45px;
    border-left: 0;
}

.form-control:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.btn-primary {
    background: linear-gradient(135deg, #0d6efd 0%, #0b5ed7 100%);
    border: none;
    transition: all 0.3s ease;
}

    .btn-primary:hover {
        background: linear-gradient(135deg, #0b5ed7 0%, #0a58ca 100%);
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(13, 110, 253, 0.25);
    }

    .btn-primary:disabled {
        opacity: 0.65;
        transform: none;
        box-shadow: none;
        cursor: not-allowed;
    }

#login-spinner {
    width: 1.5rem;
    height: 1.5rem;
}

/* Toast Styles for Login Page */
.toast-container {
    z-index: 1060;
}

.toast {
    border: none;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

/* Form Validation */
.was-validated .form-control:invalid {
    border-color: #dc3545;
}

.was-validated .form-control:valid {
    border-color: #198754;
}

/* Responsive */
@media (max-width: 768px) {
    .card {
        margin-top: 2rem !important;
    }
}

@media (max-width: 576px) {
    .card-body {
        padding: 2rem !important;
    }
}
