/* Cores personalizadas para status das aulas - Aluno e Administrativo */

/* Status de Presença - Verde */
.badge.bg-success:not(:contains("Confirmado")),
.badge.bg-presenca,
.badge[style*="color:green"],
.badge[style*="color: green"] {
    background-color: #28a745 !important;
    color: white !important;
}

/* Status Confirmado - Azul (mesmo quando usa bg-success) */
.badge.bg-success:contains("Confirmado"),
.badge.bg-success:contains("CONFIRMADO") {
    background-color: #007bff !important;
    color: white !important;
}

/* Status de Falta - Vermelho */
.badge.bg-danger,
.badge.bg-falta,
.badge[style*="color:red"],
.badge[style*="color: red"] {
    background-color: #dc3545 !important;
    color: white !important;
}

/* Status de Reposição - Azul */
.badge.bg-primary,
.badge.bg-reposicao,
.badge[style*="color:blue"],
.badge[style*="color: blue"] {
    background-color: #007bff !important;
    color: white !important;
}

/* Status Pendente - Laranja/Amarelo */
.badge.bg-warning,
.badge.bg-pendente,
.badge[style*="color:goldenrod"],
.badge[style*="color: goldenrod"] {
    background-color: #ffc107 !important;
    color: #212529 !important; /* Texto escuro para contraste */
}

/* Status Agendada - Azul claro */
.badge.bg-info,
.badge.bg-agendada {
    background-color: #17a2b8 !important;
    color: white !important;
}

/* Status Cancelada - Cinza */
.badge.bg-secondary,
.badge.bg-cancelada {
    background-color: #6c757d !important;
    color: white !important;
}

/* Status Realizada - Verde escuro */
.badge.bg-realizada {
    background-color: #198754 !important;
    color: white !important;
}

/* Status Confirmado - Azul */
.badge.bg-confirmado {
    background-color: #007bff !important;
    color: white !important;
}

/* Status On Holiday - Azul claro/Roxo */
.badge.bg-holiday,
.badge[style*="background-color: #6f42c1"],
.badge[style*="color:purple"],
.badge[style*="color: purple"] {
    background-color: #6f42c1 !important;
    color: white !important;
}

/* Status Falta - Sem reposição - Cinza escuro */
.badge.bg-dark,
.badge[style*="color:darkred"],
.badge[style*="color: darkred"] {
    background-color: #343a40 !important;
    color: white !important;
}

/* Status específicos por texto */
.badge:contains("Presença"),
.badge:contains("PRESENÇA") {
    background-color: #28a745 !important;
    color: white !important;
}

.badge:contains("Falta"),
.badge:contains("FALTA") {
    background-color: #dc3545 !important;
    color: white !important;
}

.badge:contains("Reposição"),
.badge:contains("REPOSIÇÃO") {
    background-color: #007bff !important;
    color: white !important;
}

.badge:contains("Pendente"),
.badge:contains("PENDENTE") {
    background-color: #ffc107 !important;
    color: #212529 !important;
}

.badge:contains("Confirmado"),
.badge:contains("CONFIRMADO") {
    background-color: #007bff !important;
    color: white !important;
}

.badge:contains("On Holiday"),
.badge:contains("ON HOLIDAY") {
    background-color: #6f42c1 !important;
    color: white !important;
}

.badge:contains("Falta - Sem reposição"),
.badge:contains("FALTA - SEM REPOSIÇÃO"),
.badge:contains("Falta - sem reposição"),
.badge:contains("FALTA - SEM REPOSIÇÃO") {
    background-color: #343a40 !important;
    color: white !important;
}

/* Hover effects para melhor interatividade */
.badge:hover {
    opacity: 0.9;
    transform: scale(1.05);
    transition: all 0.2s ease;
}

/* Responsividade para badges em telas pequenas */
@media (max-width: 768px) {
    .badge {
        font-size: 0.75em;
        padding: 0.25em 0.5em;
    }
}

/* Animações para badges que mudam de status */
.badge.status-changing {
    animation: statusChange 0.5s ease-in-out;
}

@keyframes statusChange {
    0% { transform: scale(1); }
    50% { transform: scale(1.1); }
    100% { transform: scale(1); }
}

/* Forçar cores específicas para elementos com classes específicas */
.table .badge,
.card .badge,
.aula-field .badge {
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    font-size: 0.7rem;
    padding: 0.4em 0.8em;
    border-radius: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

/* Cores específicas para formulários de status */
select option[style*="color:green"],
select option[style*="color: green"] {
    color: #28a745 !important;
}

select option[style*="color:red"],
select option[style*="color: red"] {
    color: #dc3545 !important;
}

select option[style*="color:blue"],
select option[style*="color: blue"] {
    color: #007bff !important;
}

select option[style*="color:goldenrod"],
select option[style*="color: goldenrod"] {
    color: #ffc107 !important;
}

select option[style*="color:purple"],
select option[style*="color: purple"] {
    color: #6f42c1 !important;
}

select option[style*="color:darkred"],
select option[style*="color: darkred"] {
    color: #343a40 !important;
}
