<style>

body {
    background-color: #f4f7f6; /* Un gris muy claro */
}

.card {
    border: none;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.06);
}

.navbar-brand {
    font-weight: bold;
}

.nav-pills .nav-link {
    color: #6c757d;
}

.nav-pills .nav-link.active {
    background-color: #0d6efd;
}

.alert-fee_change {
    color: #664d03;
    background-color: #fff3cd;
    border-color: #ffecb5;
}

.badge.bg-overdue, .badge.bg-rejected {
    background-color: #dc3545 !important;
}

.badge.bg-paid {
    background-color: #198754 !important;
}

.badge.bg-pending_approval {
    background-color: #ffc107 !important;
    color: #000 !important;
}

.badge.bg-pending_payment {
    background-color: #6c757d !important;
}

.login-container {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 15px;
    background: linear-gradient(135deg, #667eea, #764ba2);
}

.login-wrapper {
    width: 100%;
    max-width: 480px;
    padding: 40px;
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}
</style>