/* base_statics/global/css/style.css */

/* ============== 1. VARIÁVEIS (THEME) ============== */
:root {
  --bs-body-bg: #dde4ed;
  --bs-border-color: #dee2e6;
  --fnp-blue: #194685;
  --fnp-yellow: #eeaf19;
  --fnp-green: #1c8846;
  --fnp-dark-blue: #103758;
  --card-radius: 8px;
}

/* ============== 2. RESET & LAYOUT BASE (CORRIGIDO) ============== */
html, body, * {
    box-sizing: border-box; /* Garante que padding não estique o quadro */
}

body {
    font-family: "Inter", system-ui, -apple-system, sans-serif;
    background-color: var(--bs-body-bg);
    color: #111827;
    min-height: 100vh;
    margin: 0;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
}

/* ============== 3. CABEÇALHO ============== */
.page-header {
  background-color: #ffffff;
  z-index: 1000;
  position: relative;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.page-header .container { 
  max-width: 100%; 
  padding: 0 1.5rem; 
}

.page-header header {
  display: flex; 
  align-items: center; 
  justify-content: space-between; 
  padding: 8px 0;
  gap: 20px; 
}

/* Logos */
.page-header .logo-fnp { 
    height: auto; 
    width: auto; 
    max-height: 60px; 
    margin-right: 12px; 
    flex-shrink: 0; 
}

.page-header .logo-ifem { 
    height: 92px; 
    width: auto; 
    margin-left: -40px; 
    margin-right: 80px; 
    object-fit: contain;
    transform: scale(1.5); 
    transform-origin: left center; 
    flex-shrink: 0; 
}

/* Menu */
.page-header .nav { 
    display: flex; 
    justify-content: center; 
    gap: 2rem; 
    flex: 1; 
    list-style: none; 
    margin: 0; 
    padding: 0; 
    white-space: nowrap; 
}

.page-header .nav-link {
  color: #333; 
  font-weight: 600; 
  padding: 6px 12px; 
  border-radius: 6px; 
  text-decoration: none; 
  transition: all .2s;
}

.page-header .nav-link:hover { 
  background-color: rgba(25,70,133,.12); 
  color: var(--fnp-blue, #003366); 
}

.page-header .nav-link.active { 
  background-color: var(--fnp-blue, #003366); 
  color: #fff; 
}

@media (max-width: 1200px) {
    .page-header .logo-ifem {
        transform: scale(1.3); 
        margin-right: 40px; 
        margin-left: -20px;
    }
    .page-header .nav {
        gap: 1rem; /
    }
    .page-header .nav-link {
        font-size: 0.9rem;
    }
}

@media (max-width: 992px) {
    .page-header .logo-ifem {
        transform: scale(1); 
        margin-right: 10px;
        margin-left: -10px;
    }
    .page-header .nav {
        gap: 0.5rem;
    }
    .page-header .nav-link {
        font-size: 0.85rem;
        padding: 6px 8px;
    }

/* 1. Força o fundo do menu suspenso a ser branco absoluto */
.page-header .dropdown-menu {
    background-color: #ffffff !important;
    border: 1px solid var(--bs-border-color) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

/* 2. Padroniza a cor dos itens normais */
.page-header .dropdown-item {
    color: #334155 !important;
    background-color: transparent !important;
}

/* 3. Estilo ao passar o mouse (Hover) */
.page-header .dropdown-item:hover {
    color: var(--fnp-blue) !important;
    background-color: #f1f5f9 !important; /* Cinza bem leve */
}

/* 4. Estilo do item ATIVO (Análise Município) - Letra Azul FNP e Negrito */
.page-header .dropdown-item.active {
    color: var(--fnp-blue) !important; 
    font-weight: 800 !important;
    background-color: transparent !important; /* Remove o fundo azul/cinza padrão */
}

}

/* ============== 4. ESTRUTURA DO DASHBOARD (AUTOMÁTICA) ============== */
.content-wrapper,
.detail-wrapper {
    display: flex;
    flex: 1;
    width: 100%;
}

@media (min-width: 992px) {
    .content-wrapper,
    .detail-wrapper {
        height: calc(100vh - 100px);
        overflow: hidden;
    }
}

.dashboard-content,
.detail-content {
    flex: 1;
    width: 100%;
    max-width: 100vw;
    padding: 1rem;
    overflow-x: hidden;
}

/* ============== 5. COMPONENTES UI ============== */
.btn-fnp, 
body .btn-primary { 
  background-color: var(--fnp-blue); 
  border-color: var(--fnp-blue); 
  color: #fff; 
}

.btn-fnp:hover, 
body .btn-primary:hover {
  background-color: var(--fnp-dark-blue);
  border-color: var(--fnp-dark-blue);
}

.app-shadow-card, .kpi-card, .chart-card {
  background: #fff; 
  border-radius: var(--card-radius);
  box-shadow: 0 4px 8px rgba(0,0,0,.08); 
  border: 1px solid transparent;
}

/* Mobile */
@media (max-width: 768px) {
  .page-header header { flex-direction: column; gap: .5rem; }
  .content-wrapper, .detail-wrapper { flex-direction: column; height: auto; overflow: visible; }
  .sidebar, .filters-sidebar { width: 100%; max-height: none; }
}

