html {
    scroll-padding-top: 100px; /* Garante que o scroll pare antes de chegar no menu */
    scroll-behavior: smooth;
}

/* --- Estilos de Base e Tipografia --- */
body { 
    font-family: 'Diodrum', 'Arial', 'Google Sans', 'Verdana', sans-serif; 
    margin: 0; 
    font-size: 12px; 
    transition: background-color 0.6s ease, color 0.6s ease;
}

h2 { 
    color: #0a66c2; 
    border-bottom: 2px solid #0a66c2; 
    padding-bottom: 10px; 
    margin-top: 0; 
}

.info { color: #555; margin-bottom: 20px; font-size: 12px; }

/* --- Tabelas --- */
table { 
    width: 100%; 
    border-collapse: collapse; 
    margin-top: 10px; 
    table-layout: fixed; 
}

th { 
    background-color: #0a66c2; 
    color: white; 
    padding: 4px 8px; 
    text-align: left; 
    font-size: 13px; 
}

td { 
    border-bottom: 1px solid #ddd; 
    padding: 8px; 
    color: #333; 
    word-wrap: break-word; 
}

tr:nth-child(even) { background-color: #f2f2f2; }

/* --- Links e Tags --- */
a { 
    text-decoration: none; 
    color: white; 
    background-color: #0a66c2; 
    padding: 3px 6px; 
    border-radius: 6px; 
    display: inline-block; 
}

.tag-badge {
    padding: 3px 8px;
    border-radius: 6px;
    font-size: 12px;
    display: inline-block;
    margin: 0 4px 4px 0;
}

 /* --- Cores por Categoria de Tags --- */
 .tag-areas { background-color: #f1f5f9; color: #334155; border: 1px solid #cbd5e1; } 
 .tag-banco { background-color: #f3f4f6; color: #4b5563; border: 1px solid #e5e7eb; } 
 .tag-contrato { background-color: #ffedd5; color: #c2410c; border: 1px solid #fed7aa; } 
 .tag-diversidade { background-color: #fdf2f8; color: #be185d; border: 1px solid #fbcfe8; } 
 .tag-escopo { background-color: #fef3c7; color: #b45309; border: 1px solid #fde68a; } 
 .tag-especialista { background-color: #fae8ff; color: #a21caf; border: 1px solid #f5d0fe; } 
 .tag-gestao { background-color: #fef9c3; color: #a16207; border: 1px solid #fef08a; } 
 .tag-ia { background-color: #f3e8ff; color: #7e22ce; border: 1px solid #e9d5ff; } 
 .tag-idioma { background-color: #e0e7ff; color: #4338ca; border: 1px solid #c7d2fe; } 
 .tag-metodologia { background-color: #ecfccb; color: #4d7c0f; border: 1px solid #d9f99d; } 
 .tag-nivel { background-color: #dcfce7; color: #15803d; border: 1px solid #bbf7d0; } 
 .tag-padrao { background-color: #e0f2fe; color: #0284c7; border: 1px solid #bae6fd; } 
 .tag-qa { background-color: #ffe4e6; color: #e11d48; border: 1px solid #fecdd3; } 
 .tag-tech { background-color: #cffafe; color: #0f766e; border: 1px solid #a5f3fc; } 
 .tag-vendas { background-color: #fee2e2; color: #b91c1c; border: 1px solid #fecaca; } 

/* --- Cards de Vagas --- */
.job-card {
    transition: transform 0.2s, box-shadow 0.2s;
    font-size: 0.85rem;
    background-color: white;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    margin-bottom: 20px;
}

.job-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15) !important;
}

/* --- COLUNAS DA TABELA --- */
th:nth-child(1), td:nth-child(1) { width: 5%; text-align: center; }
th:nth-child(4), td:nth-child(4) { width: 22%; font-weight: bold; }

/* --- CORES CUSTOMIZADAS DE NÍVEL (Onde estava o erro) --- */
/* Certifique-se de que não existem chaves extras antes destas linhas */

.bg-especialista { 
    background-color: #F9F9E680 !important; 
}

.bg-senior { 
    background-color: #F7E65280 !important; 
}

.bg-pleno { 
    background-color: #BCADA380 !important; 
}

.bg-junior { 
    background-color: #D91E5C80 !important; 
}

.bg-outros { 
    background-color: #13994880 !important; 
}

/* Links da Navbar à direita */
.navbar-nav .nav-link {
    font-size: 1.1rem; /* Usar rem é uma boa prática para acessibilidade */
    padding-left: 15px; /* Adiciona um espaçamento entre os links */
    padding-right: 15px;
    font-weight: 500; /* Opcional: deixa a fonte levemente mais grossa */
}

/* Título do Cargo nos Cards */
.card-title {
    font-size: 18px; 
    margin-bottom: 10px;
    display: block; /* Garante que ocupe a linha toda */
}

.icon-img {
    max-width: 75px;
    max-height: 75px;
    border-radius: 8px; /* Aumente este valor para arredondar mais (ex: 8px ou 12px) */
    object-fit: contain;
}
