/* assets/css/style.css */

/* =================================================================
   ESTILOS GLOBAIS E DE LOGIN
   ================================================================= */
body {
    /* Gradiente sutil no fundo para um visual mais moderno */
    background-color: #1a1a1a;
    background-image: radial-gradient(circle at 1px 1px, rgba(255, 255, 255, 0.04) 1px, transparent 0);
    background-size: 25px 25px;
}

/* --- Estilos da tela de Login --- */
.login-body {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}

.login-card {
    /* Efeito de vidro fosco (glassmorphism) */
    background: rgba(33, 37, 41, 0.85);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.login-card .form-floating>.form-control {
    background-color: rgba(0, 0, 0, 0.2);
    border-color: rgba(255, 255, 255, 0.1);
}

.login-card .form-floating>.form-control:focus {
    background-color: rgba(0, 0, 0, 0.3);
}

/* =================================================================
   ESTILOS DO PAINEL DE CONTROLE
   ================================================================= */

/* --- Layout Principal --- */
.sidebar {
    background-color: #212529;
    /* Cor de fundo escura para o menu */
}

/* --- Estilos dos Cards do Dashboard --- */
.card {
    border: none;
    border-radius: 0.75rem;
    background-color: #2c3034;
    /* Cor de fundo dos cards */
}

.card .card-header {
    background-color: transparent;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.card.border-left-primary {
    border-left: 0.25rem solid #4e73df !important;
}

.card.border-left-success {
    border-left: 0.25rem solid #1cc88a !important;
}

.card.border-left-info {
    border-left: 0.25rem solid #36b9cc !important;
}

.card.border-left-warning {
    border-left: 0.25rem solid #f6c23e !important;
}

.text-xs {
    font-size: .8rem;
}

.text-gray-300 {
    color: #adb5bd !important;
}

.font-weight-bold {
    font-weight: 700 !important;
}

/* --- Estilos do Menu Lateral (Sidebar) --- */
.sidebar .nav-link {
    font-size: 0.95rem;
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    color: #ced4da;
    /* Cor do texto dos links inativos */
}

.sidebar .nav-link i {
    font-size: 1.1rem;
}

.sidebar .nav-link.active {
    background-color: #4e73df !important;
    color: #fff !important;
    font-weight: 600;
}

.sidebar .nav-link:not(.active):hover {
    background-color: rgba(255, 255, 255, 0.05);
    color: #fff;
}

.sidebar .dropdown-item:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

/* --- Ajustes de texto e títulos --- */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
    color: #f8f9fa;
    /* Garante que os títulos sejam brancos */
}

.text-primary {
    color: #4e73df !important;
}

.text-gray-800 {
    color: #f8f9fa !important;
    /* Ajuste para tema escuro */
}


/* Container principal do seletor de data */
/* =================================================================
   TEMA ESCURO DEFINITIVO PARA O DATE RANGE PICKER (UX)
   ================================================================= */

/* Container principal e inputs do calendário */
.daterangepicker {
    background-color: #212529 !important;
    /* Fundo escuro principal */
    border: 1px solid #4a4a4a !important;
    border-radius: 0.5rem !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3) !important;
    color: #f8f9fa !important;
}

.daterangepicker .drp-calendar {
    padding: 8px !important;
}

.daterangepicker .calendar-table {
    background-color: transparent !important;
    border: none !important;
}

.daterangepicker .drp-selected {
    background-color: #2c3034 !important;
    font-weight: bold;
}

/* Título do mês e setas de navegação */
.daterangepicker th.month {
    color: #ffffff !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
}

.daterangepicker .prev,
.daterangepicker .next {
    color: #f8f9fa !important;
    border-radius: 50% !important;
}

.daterangepicker .prev:hover,
.daterangepicker .next:hover {
    background-color: #3a3f44 !important;
}

/* Dias da semana (Dom, Seg, etc.) */
.daterangepicker th.dow {
    color: #8f959b !important;
    font-weight: 500 !important;
}

/* Dias do calendário */
.daterangepicker td.day {
    color: #ced4da !important;
    border-radius: 50% !important;
    border: none !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
}

.daterangepicker td.day:hover {
    background-color: #3a3f44 !important;
}

.daterangepicker td.in-range {
    background-color: rgba(78, 115, 223, 0.2) !important;
    /* Azul primário com transparência */
    color: #d1d8f0 !important;
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
    background-color: #4e73df !important;
    /* Azul primário do tema */
    color: #fff !important;
    font-weight: bold !important;
}

.daterangepicker td.off,
.daterangepicker td.off.in-range,
.daterangepicker td.off.start-date,
.daterangepicker td.off.end-date {
    background-color: transparent !important;
    color: #495057 !important;
    /* Cor para dias de outros meses */
}

/* Botões de períodos pré-definidos (Hoje, Ontem, etc.) */
.daterangepicker .ranges li {
    color: #e0e0e0 !important;
    background-color: #2c3034 !important;
    border: 1px solid #4a4a4a !important;
    border-radius: 0.3rem !important;
    transition: background-color 0.2s ease, border-color 0.2s ease !important;
    margin-bottom: 8px !important;
}

.daterangepicker .ranges li:hover {
    background-color: #3a3f44 !important;
    border-color: #5a5a5a !important;
}

.daterangepicker .ranges li.active {
    background-color: #4e73df !important;
    border-color: #4e73df !important;
    color: #fff !important;
}

/* Botões "Aplicar" e "Limpar" */
.daterangepicker .drp-buttons {
    border-top: 1px solid #4a4a4a !important;
}

.daterangepicker .btn {
    font-weight: 600 !important;
    border-radius: 0.3rem !important;
    padding: 8px 16px !important;
}

.daterangepicker .btn-primary {
    background-color: #4e73df !important;
    border-color: #4e73df !important;
}

.daterangepicker .btn-secondary,
.daterangepicker .cancelBtn {
    background-color: #5a5c69 !important;
    border-color: #5a5c69 !important;
    color: #fff !important;
}

.daterangepicker .btn-secondary:hover,
.daterangepicker .cancelBtn:hover {
    background-color: #4e4f5a !important;
    border-color: #4e4f5a !important;
}

/* Estilo para o dropdown de status com checkboxes */
#filtro-status-menu {
    max-height: 250px;
    /* Altura máxima antes de mostrar a barra de rolagem */
    overflow-y: auto;
    /* Adiciona a barra de rolagem vertical quando necessário */
}