/* ==========================================================================
   1. CLASSES ESSENCIAIS E INTERNAS DO SISTEMA (G-TEC)
   ========================================================================== */
.logo {
    float: left;
    width: 30%;
    padding: 2%;
    margin: 0% 2% 2% 0%;
}

.centro {
    text-align: center;
}

.table-overflow {
    max-height: 400px;
    overflow-y: auto;
}

.login {
    position: absolute;
    padding-left: 100px;
}

.login img {
    height: 30px;
}

.esconder {
    display: none;
}

.mostrar {
    display: block;
}

.ass {
    border: 1px solid #4e73df;
    border-radius: 4px;
}

/* ==========================================================================
   2. RECONSTRUÇÃO DO MENU SUPERIOR (COMPATIBILIDADE BOOTSTRAP 3)
   ========================================================================== */
.navbar-default {
    background-color: #ffffff !important;
    border: none !important;
    border-bottom: 1px solid #e3e6f0 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    margin-bottom: 30px;
}

.navbar-default .navbar-brand {
    padding: 5px 15px;
}

.navbar-default .navbar-nav > li > a {
    color: #4e73df !important;
    font-weight: 600;
    transition: color 0.2s ease-in-out;
}

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    color: #224abe !important;
    background-color: #f8f9fc !important;
}

/* Botão sanduíche para telas mobile */
.navbar-default .navbar-toggle {
    border-color: #dddddd;
    margin-top: 13px;
}

.navbar-default .navbar-toggle .icon-bar {
    background-color: #4e73df;
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: #f8f9fc;
}

/* ==========================================================================
   3. MODERNIZAÇÃO VISUAL DOS COMPONENTES (STYLE DASHBOARD)
   ========================================================================== */
body {
    background-color: #f4f6f9 !important;
    color: #333333;
    font-family: 'Nunito', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Blocos brancos arredondados com sombra suave */
.card-sistema {
    background: #ffffff !important;
    border: 1px solid #e3e6f0 !important;
    border-radius: 10px !important;
    padding: 24px !important;
    margin-bottom: 24px !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02), 0 1px 3px rgba(0, 0, 0, 0.05) !important;
    transition: box-shadow 0.3s ease;
}

.card-sistema:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.06) !important;
}

/* Títulos internos */
h3.page-header, .card-sistema h3, .card-sistema h4 {
    color: #2c3e50;
    font-weight: 700;
    border-bottom: 2px solid #eaecf4;
    padding-bottom: 12px;
    margin-bottom: 20px;
}

/* Inputs de texto e seletores */
.form-control {
    border: 1px solid #d1d3e2 !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    height: auto !important;
    color: #6e707e !important;
    background-color: #fff !important;
    box-shadow: none !important;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out !important;
}

.form-control:focus {
    border-color: #bac8f3 !important;
    box-shadow: 0 0 0 0.2rem rgba(78, 115, 223, 0.15) !important;
    color: #2c3e50 !important;
}

/* Botões do sistema */
.btn {
    border-radius: 6px !important;
    font-weight: 600 !important;
    padding: 8px 16px !important;
    transition: all 0.2s ease !important;
}

.btn-primary { background-color: #4e73df !important; border-color: #4e73df !important; }
.btn-primary:hover { background-color: #2e59d9 !important; border-color: #2653d4 !important; }

.btn-success { background-color: #1cc88a !important; border-color: #1cc88a !important; }
.btn-success:hover { background-color: #17a673 !important; border-color: #149366 !important; }

.btn-danger { background-color: #e74a3b !important; border-color: #e74a3b !important; }
.btn-danger:hover { background-color: #be2617 !important; border-color: #b02214 !important; }

.btn-warning { background-color: #f6c23e !important; border-color: #f6c23e !important; color: #fff !important; }
.btn-warning:hover { background-color: #dfa515 !important; border-color: #cd9711 !important; color: #fff !important; }

/* Tabelas (Histórico de Pontos e Movimentações) */
.table-responsive {
    border-radius: 8px !important;
    overflow: hidden !important;
    border: 1px solid #eaecf4 !important;
}

.table {
    margin-bottom: 0 !important;
    background-color: #ffffff !important;
    border-collapse: collapse !important;
}

.table thead th {
    background-color: #f8f9fc !important;
    color: #5a5c69 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 0.75rem !important;
    letter-spacing: 0.05em !important;
    border-bottom: 2px solid #eaecf4 !important;
    padding: 12px !important;
}

.table tbody td {
    padding: 12px !important;
    vertical-align: middle !important;
    border-top: 1px solid #eaecf4 !important;
    border-color: #eaecf4 !important;
}

/* ==========================================================================
   4. JANELA DE AVISOS FLUTUANTE (#ALERTA)
   ========================================================================== */
#alerta {
    box-sizing: border-box !important;
    position: fixed !important;
    
    /* Centralização matemática perfeita na tela */
    width: min(500px, 92vw) !important;
    height: auto !important;
    max-height: 80vh !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    
    /* Layout clean */
    padding: 25px !important;
    background-color: #ffffff !important; 
    border: 1px solid #e3e6f0 !important;
    border-top: 4px solid #337ab7 !important; /* Tarja decorativa superior azul */
    border-radius: 12px !important;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15) !important;
    overflow-y: auto !important;
    z-index: 10000 !important;
}