/* CSS extraído do menu/navbar e componentes relacionados */
.navbar .nav-link:visited { color: rgba(255,255,255,0.8) !important; }
.navbar .nav-link.active-section,
.navbar .nav-link.active-section:visited,
.navbar .nav-link.active-section:active,
.navbar .nav-link.active-section:hover,
.navbar .nav-link.active-section:focus,
.navbar .nav-link.active-section:focus-visible {
	color: #fff !important;
	background: rgba(20, 184, 166, 0.28) !important;
	outline: none !important;
	box-shadow: none !important;
	position: relative;
}
.navbar .nav-link.active-section::after { content: ''; position: absolute; bottom: 2px; left: 50%; transform: translateX(-50%); width: 20px; height: 3px; background: linear-gradient(90deg, var(--brand-icon-start, var(--teal-400)), var(--brand-icon-end, #22c55e)); border-radius: 2px; }
.navbar .nav-link i { font-size: 14px; }
.nav-btn-login { color: white !important; border: 1.5px solid rgba(255,255,255,0.4) !important; padding: 7px 18px !important; border-radius: 8px !important; font-weight: 600 !important; font-size: 0.85rem !important; transition: all 0.3s ease !important; backdrop-filter: blur(4px); }
.nav-btn-login:hover, .nav-btn-login:focus, .nav-btn-login:focus-visible { border-color: white !important; background: rgba(255,255,255,0.1) !important; outline: none !important; box-shadow: none !important; }
.nav-btn-register { background: linear-gradient(135deg, var(--btn-accent-start, #22c55e), var(--btn-accent-end, #14b8a6)) !important; color: white !important; border: none !important; padding: 8px 20px !important; border-radius: 8px !important; font-weight: 700 !important; font-size: 0.85rem !important; transition: all 0.3s ease !important; box-shadow: 0 4px 12px rgba(34, 197, 94, 0.3); }
.nav-btn-register:hover, .nav-btn-register:focus, .nav-btn-register:focus-visible { transform: translateY(-1px); box-shadow: 0 6px 20px rgba(34, 197, 94, 0.4) !important; background: linear-gradient(135deg, var(--btn-accent-end, #0d9488), var(--btn-accent-start, #16a34a)) !important; outline: none !important; }
.navbar-nav { gap: 2px; align-items: center; }
.nav-separator { width: 1px; height: 24px; background: rgba(255,255,255,0.15); margin: 0 8px; }
.navbar-toggler { border: none; padding: 6px 10px; font-size: 1.2rem; }
.navbar-toggler:focus { box-shadow: none; }
@media (max-width: 991px) { .navbar { background: linear-gradient(135deg, var(--teal-900) 0%, var(--teal-800) 100%) !important; padding: 10px 0; } .navbar .nav-link { padding: 10px 16px !important; } .nav-separator { display: none; } .nav-btn-register, .nav-btn-login { margin-top: 8px; text-align: center; display: block; } .dropdown-menu { min-width: auto !important; width: 100% !important; margin-top: 0 !important; border-radius: 12px !important; box-shadow: 0 4px 16px rgba(0,0,0,0.15) !important; } .dropdown-menu::before { display: none !important; } .dropdown-item { padding: 10px 14px !important; margin: 3px 8px !important; font-size: 0.9rem !important; } .dropdown-header { padding: 10px 14px !important; margin: 0 8px 4px 8px !important; font-size: 0.72rem !important; letter-spacing: 0.5px !important; } }
.footer { background: linear-gradient(135deg, var(--teal-900) 0%, #062020 100%); color: #fff; padding: 40px 0 20px; margin-top: 60px; }
.hero-section { background: linear-gradient(135deg, var(--teal-900) 0%, var(--teal-700) 100%); color: white; padding: 80px 0; margin-bottom: 40px; }
.feature-icon { width: 64px; height: 64px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 28px; margin-bottom: 20px; }
/* ===== DROPDOWNS MODERNOS E ATRAENTES ===== */
.dropdown-menu { border: 1px solid rgba(255,255,255,0.5); box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2), 0 0 20px rgba(13, 115, 119, 0.1); border-radius: 16px; padding: 12px 0; margin-top: 12px; min-width: 300px; backdrop-filter: blur(10px); background: linear-gradient(135deg, rgba(255,255,255,0.98), rgba(249,250,251,0.98)); overflow: hidden; }
.dropdown-menu::before { content: ''; position: absolute; top: -8px; right: 30px; width: 16px; height: 16px; background: white; border-radius: 3px; transform: rotate(45deg); box-shadow: -2px -2px 8px rgba(0,0,0,0.1); }
.dropdown-item { padding: 14px 20px; border-radius: 8px; margin: 4px 12px; color: #374151; font-weight: 500; font-size: 0.95rem; transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); display: flex; align-items: center; justify-content: space-between; position: relative; overflow: hidden; }
.dropdown-item::before { content: ''; position: absolute; left: 0; top: 0; height: 100%; width: 4px; background: transparent; transition: width 0.3s ease; }
.dropdown-item i { min-width: 24px; font-size: 18px; transition: all 0.3s ease; }
.dropdown-item span { display: flex; align-items: center; gap: 8px; }
/* ===== MENU VAGAS (Laranja/Amber) ===== */
.dropdown-item.vagas-item::before { background: linear-gradient(135deg, #f59e0b, #d97706); }
.dropdown-item.vagas-item:hover { background: linear-gradient(135deg, #fef3c7, #fed7aa); color: #b45309; padding-left: 28px; box-shadow: 0 8px 20px rgba(245, 158, 11, 0.2); }
.dropdown-item.vagas-item:hover i { color: #d97706; transform: scale(1.2) rotate(10deg); }
/* ===== MENU RECRUTAMENTO (Azul) ===== */
.dropdown-item.recrutamento-item::before { background: linear-gradient(135deg, #0284c7, #0369a1); }
.dropdown-item.recrutamento-item:hover { background: linear-gradient(135deg, #dbeafe, #bfdbfe); color: #0c4a6e; padding-left: 28px; box-shadow: 0 8px 20px rgba(2, 132, 199, 0.2); }
.dropdown-item.recrutamento-item:hover i { color: #0284c7; transform: scale(1.2) rotate(10deg); }
/* ===== MENU ADMIN (Vermelho/Rose) ===== */
.dropdown-item.admin-item::before { background: linear-gradient(135deg, #dc2626, #991b1b); }
.dropdown-item.admin-item:hover { background: linear-gradient(135deg, #fee2e2, #fecaca); color: #7f1d1d; padding-left: 28px; box-shadow: 0 8px 20px rgba(220, 38, 38, 0.2); }
.dropdown-item.admin-item:hover i { color: #dc2626; transform: scale(1.2) rotate(10deg); }
/* ===== MENU USUÁRIO (Roxo) ===== */
.dropdown-item.user-item:hover { background: linear-gradient(135deg, #e9d5ff, #f3e8ff); color: #581c87; padding-left: 28px; box-shadow: 0 8px 20px rgba(168, 85, 247, 0.2); }
.dropdown-item.user-item:hover i { color: #a855f7; transform: scale(1.2) rotate(10deg); }
.dropdown-divider { margin: 10px 0; border: none; height: 1px; background: linear-gradient(90deg, transparent, #e5e7eb, transparent); }
/* ===== HEADERS DOS DROPDOWNS ===== */
.dropdown-header { padding: 16px 20px; font-weight: 800; color: white; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 1px; background: linear-gradient(135deg, var(--teal-800) 0%, var(--teal-700) 100%); margin: 0 12px 8px 12px; border-radius: 8px; display: flex; align-items: center; gap: 8px; }
/* Cores diferentes para cada header */
.dropdown-header.vagas-header { background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%); }
.dropdown-header.recrutamento-header { background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%); }
.dropdown-header.admin-header { background: linear-gradient(135deg, #dc2626 0%, #991b1b 100%); }
.dropdown-header.user-header { background: linear-gradient(135deg, var(--teal-600) 0%, var(--teal-700) 100%); }
/* Badge Customizados */
.badge-custom { font-size: 0.7rem; padding: 5px 10px; border-radius: 12px; font-weight: 700; margin-left: auto; text-transform: uppercase; letter-spacing: 0.5px; animation: pulse 2s infinite; }
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.7; } }
.badge-custom:hover { animation: none; opacity: 1; }
/* Estilo para o Nav Link ativo */
.nav-link.active-nav { color: white !important; font-weight: 600; }
