/* Configuração Base e Fontes */
body {
    font-family: 'Inter', sans-serif;
    background-color: #f0f4f8;
}

/* Transições e Efeitos */
#sidebar, #main-content {
    transition: all 0.3s ease-in-out;
}

.sidebar-text {
    transition: opacity 0.3s ease-in-out;
}

.sidebar-link-icon {
    flex-shrink: 0;
}

/* Estilos de Modais */
.modal {
    display: none;
}
.modal.is-open {
    display: flex;
}

/* Estilos da Tabela de Prazos */
.cumprido-row, .cumprido-row:hover {
    background-color: #f3f4f6 !important;
    text-decoration: line-through;
    color: #6b7280;
}
.cumprido-row .action-btn-open {
    display: none;
}
.prazo-vencido {
    background-color: #fee2e2 !important;
}
.prazo-alerta {
    background-color: #fef9c3 !important;
}

/* Estilos da Página de Login */
.login-bg {
    background-color: #00995D;
    background-image: linear-gradient(135deg, #00995D 0%, #007F4E 100%);
}

/* Estilos para colunas ordenáveis */
.sortable {
    cursor: pointer;
    position: relative;
    padding-right: 20px; /* Espaço para a seta */
}

.sortable:hover {
    background-color: #e2e8f0; /* Cor de fundo ao passar o mouse */
}

/* Setas de ordenação */
.sortable::after {
    content: '';
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.3;
    border: 4px solid transparent;
}

.sort-asc::after {
    opacity: 1;
    border-bottom-color: #334155; /* Seta para cima */
}

.sort-desc::after {
    opacity: 1;
    border-top-color: #334155; /* Seta para baixo */
}

/* Estilo para Prazos Concluídos (Verde Claro) */
.prazo-concluido {
    background-color: #dcfce7 !important; /* Tailwind green-100 */
    color: #166534; /* Tailwind green-800 */
    /* text-decoration: line-through; Opcional: remover o riscado se preferir */
}
/* Remove o hover padrão para manter a cor */
.prazo-concluido:hover {
    background-color: #dcfce7 !important; 
}
/* Garante que os botões fiquem visíveis mesmo na linha concluída, se necessário no futuro */
/* .prazo-concluido .action-btn-open { display: inline-block; } */

/* ================================================== */
/* CORES DE STATUS PARA TABELA DE PRAZOS (MAIS ESCURAS) */
/* ================================================== */

/* Verde Pastel (Concluído) - green-100 */
tr.status-concluido {
  background-color: #dcfce7; 
}
tr.status-concluido:hover {
  background-color: #bbf7d0; /* green-200 */
}

/* Vermelho (Vencido / 1 dia) - red-100 */
tr.status-vencido {
  background-color: #fee2e2;
}
tr.status-vencido:hover {
  background-color: #fecaca; /* red-200 */
}

/* Vermelho (Vencendo Hoje) - red-100 */
tr.status-vencido-hoje {
  background-color: #fee2e2;
  font-weight: bold;
}
tr.status-vencido-hoje:hover {
  background-color: #fecaca; /* red-200 */
}

/* Amarelo (Alerta - 2 a 3 dias) - yellow-100 */
tr.status-alerta {
  background-color: #fef9c3;
}
tr.status-alerta:hover {
  background-color: #fef08a; /* yellow-200 */
}