* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
body { background-color: #f4f6f9; color: #333; }
a { text-decoration: none; }

/* =========================================
   Navbar (Menu Superior - Tema Escuro/Vermelho)
========================================= */
.navbar {
    background-color: #1d2630; /* Chumbo Escuro Oficial */
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 20px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.3);
    border-bottom: 4px solid #b6342d; /* Detalhe Vermelho */
}

.navbar .logo {
    display: flex;
    align-items: center;
    gap: 12px;
}

.navbar .logo .escudo-cla {
    width: 45px;
    height: auto;
    filter: drop-shadow(0 2px 3px rgba(0,0,0,0.5)); /* Sombrinha no escudo */
}

.navbar .logo h2 {
    margin: 0;
    padding: 15px 0;
    font-size: 1.5em;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.navbar .menu-topo ul {
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
}

.navbar .menu-topo ul li a {
    display: block;
    padding: 23px 15px;
    color: #bdc3c7;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 0.9em;
    transition: all 0.3s;
}

.navbar .menu-topo ul li a:hover {
    background-color: #2d414e;
    color: #fff;
}

/* =========================================
   Conteúdo Principal
========================================= */
.layout-wrapper { display: block; min-height: calc(100vh - 70px); }
.content { 
    padding: 20px; 
    max-width: 1400px; /* Limita a largura para não esticar demais em telas gigantes */
    margin: 0 auto;    /* Centraliza o painel na tela */
    display: flex; 
    flex-direction: column; 
    gap: 20px; 
}
.top-bar { display: flex; justify-content: space-between; align-items: center; background: #fff; padding: 20px; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.05); }
.top-bar h1 { color: #1d2630; }

/* Tabela */
.tabela-container { background: #fff; padding: 20px; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.05); overflow-x: auto; }
.tabela-membros { width: 100%; border-collapse: collapse; }
.tabela-membros th, .tabela-membros td { padding: 12px 15px; text-align: left; border-bottom: 1px solid #ddd; }
.tabela-membros th { background-color: #f8f9fa; font-weight: 600; color: #1d2630; }
.tabela-membros tbody tr:hover { background-color: #f1f1f1; }

.status-vazio { color: #999; font-style: italic; font-size: 0.9em; }

/* Botões Editar (Vermelho) */
.btn-editar { background: #b6342d; color: #fff; padding: 5px 12px; border-radius: 4px; font-size: 0.85em; font-weight: bold; transition: background 0.2s; }
.btn-editar:hover { background: #8e2823; }

/* =========================================
   Estilo das Badges (Status da Vila)
========================================= */
.select-status {
    padding: 6px 12px;
    border-radius: 20px;
    border: 1px solid #ccc;
    font-size: 0.9em;
    font-weight: bold;
    cursor: pointer;
    outline: none;
    text-align: center;
    text-align-last: center;
    background-color: #f8f9fa;
    color: #333;
    transition: all 0.3s ease;
}

.select-status.badge-vermelha { background-color: #dc3545; color: white; border-color: #c82333; }
.select-status.badge-verde { background-color: #198754; color: white; border-color: #146c43; }
.select-status.badge-amarela { background-color: #ffc107; color: #212529; border-color: #e0a800; }
.select-status:focus { background-color: #fff; color: #333; }

/* =========================================
   Inputs Editáveis (LV da Capital e Vitórias BT)
========================================= */
.input-lv {
    width: 65px;
    padding: 6px;
    border: 1px solid #ccc;
    border-radius: 6px;
    text-align: center;
    font-size: 0.9em;
    font-weight: bold;
    color: #333;
    transition: border-color 0.3s;
}
.input-lv:focus { border-color: #b6342d; outline: none; box-shadow: 0 0 5px rgba(182, 52, 45, 0.3); }

/* =========================================
   Sistema de Abas (Tabs) - Foco Vermelho
========================================= */
.tabs-container { display: flex; gap: 10px; margin-bottom: -15px; padding: 0 20px; }
.tab-btn { background-color: #e9ecef; border: 1px solid #dee2e6; border-bottom: none; padding: 10px 20px; border-radius: 8px 8px 0 0; font-weight: bold; color: #6c757d; cursor: pointer; transition: all 0.3s; }
.tab-btn:hover { background-color: #dde2e6; color: #1d2630; }
.tab-btn.active { background-color: #fff; color: #b6342d; border-top: 3px solid #b6342d; }

/* =========================================
   Destaque das Colunas de Totais
========================================= */
.destaque-aba { background-color: #fff5f5 !important; font-weight: bold; color: #b6342d; }
.destaque-total { background-color: #e6ffed !important; font-size: 1.05em; color: #22863a; border-left: 2px solid #28a745 !important; }

/* =========================================
   Paginação - Foco Vermelho
========================================= */
.paginacao {
    display: flex;
    justify-content: center;
    gap: 5px;
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #eee;
}
.btn-page {
    padding: 8px 12px;
    background: #fff;
    border: 1px solid #dee2e6;
    color: #b6342d;
    border-radius: 4px;
    transition: all 0.2s;
    font-weight: bold;
}
.btn-page:hover { background: #fdf5f5; border-color: #b6342d; }
.btn-page.active { background: #b6342d; color: #fff; border-color: #b6342d; pointer-events: none; }

/* =========================================
   Links de Ordenação dos Cabeçalhos
========================================= */
.sort-link {
    color: inherit;
    text-decoration: none;
    display: inline-block;
    transition: color 0.2s;
}

.sort-link:hover {
    color: #b6342d;
}