/* ===== Estilos principais da página de login/cadastro ===== */
/* Força toda a página a utilizar a fonte Poppins */
			body, h1, h2, h3, h4, h5, h6, p, a, span, button, input, select, textarea {
				font-family: 'Poppins', sans-serif !important;
			}

			/* Corrige o bug de caractere estranho no breadcrumb (Home • Vagas) e garante alinhamento */
			.breadcrumb {
				display: flex !important;
				align-items: center !important;
				background: transparent !important;
				margin: 0 !important;
				padding: 0 !important;
			}
			.breadcrumb > li {
				display: inline-flex !important;
				align-items: center !important;
			}
			.breadcrumb > li + li:before { 
				content: "›" !important; 
				font-size: 16px !important; 
				margin: 0 8px !important;
				color: #fff !important;
				vertical-align: middle !important;
				display: inline-block !important;
			}
			
			/* SEÇÃO DA BARRA DE FILTROS */
			.filter-section {
				background-color: #ededed;
				padding: 14px 0;
				border-bottom: 1px solid #e0e0e0;
			}
			.filter-label {
				font-size: 11px;
				font-weight: 700;
				color: #00592d;
				text-transform: uppercase;
				margin-bottom: 5px;
				display: block;
				letter-spacing: 0.3px;
			}
			.filter-input {
				height: 36px;
				border: 1px solid #ccc;
				border-radius: 4px;
				background: #fff;
				padding-left: 12px;
				width: 100%;
				font-size: 13px;
				color: #333;
			}
			.filter-input::placeholder {
				color: #999;
			}
			.filter-actions {
				margin-top: 21px;
				display: flex;
				align-items: center;
			}
			.btn-filtrar {
				background-color: #006633;
				color: #fff !important;
				border: none;
				height: 36px;
				padding: 0 22px;
				font-weight: 700;
				border-radius: 4px;
				text-transform: uppercase;
				font-size: 13px;
				display: inline-flex;
				align-items: center;
				justify-content: center;
				transition: background 0.2s;
			}
			.btn-filtrar i {
				margin-right: 6px;
			}
			.btn-filtrar:hover {
				background-color: #004d26;
			}
			.btn-limpar {
				color: #8c8c8c !important;
				background: none;
				border: none;
				height: 36px;
				margin-left: 15px;
				font-size: 13px;
				display: inline-flex;
				align-items: center;
				text-decoration: none !important;
			}
			.btn-limpar i {
				margin-right: 4px;
				font-size: 11px;
			}
			.btn-limpar:hover {
				color: #333 !important;
			}

			/* SIDEBAR DE CIDADES */
			.cocari-sidebar { 
				border: 1px solid #e2e8f0; 
				border-radius: 4px; 
				overflow: hidden; 
				box-shadow: 0 1px 3px rgba(0,0,0,0.03); 
			}
			.cocari-sidebar-header { 
				background-color: #006633; 
				color: #ffffff; 
				padding: 12px 15px; 
				font-size: 13px; 
				font-weight: 700; 
				text-transform: uppercase; 
				letter-spacing: 0.5px; 
			}
			.cocari-sidebar-header i { 
				margin-right: 6px; 
			}
			.cocari-menu-item { 
				color: #4a5568 !important; 
				border: none !important; 
				border-bottom: 1px solid #edf2f7 !important; 
				padding: 11px 15px !important; 
				font-size: 13px; 
				background-color: #ffffff !important; 
				display: flex; 
				justify-content: space-between; 
				align-items: center; 
				text-decoration: none !important; 
			}
			.cocari-menu-item:last-child { 
				border-bottom: none !important; 
			}
			.cocari-menu-item:hover { 
				background-color: #f8fafc !important; 
				color: #006633 !important; 
			}
			.badge-cocari { 
				background-color: #006633; 
				color: #fff; 
				font-size: 11px; 
				font-weight: 600; 
				width: 20px; 
				height: 20px; 
				display: flex; 
				align-items: center; 
				justify-content: center; 
				border-radius: 50%; 
			}

			/* CARDS DE VAGAS */
			.vaga-card { 
				background: #fff; 
				border: 1px solid #e8e8e8; 
				border-radius: 4px; 
				padding: 25px; 
				margin-bottom: 25px; 
				height: 100%; 
				display: flex; 
				flex-direction: column; 
			}
			.vaga-titulo { 
				color: #00592d; 
				font-size: 14px; 
				font-weight: 700; 
				margin-top: 0; 
				margin-bottom: 18px; 
				text-transform: uppercase; 
				letter-spacing: 0.3px; 
			}
			.btn-candidatar { 
				background-color: #006633; 
				color: #fff !important; 
				font-size: 11px; 
				font-weight: 700; 
				padding: 7px 16px; 
				border-radius: 4px; 
				display: inline-block; 
				text-transform: uppercase; 
				border: none; 
				margin-bottom: 14px; 
				width: fit-content; 
				text-decoration: none !important; 
				letter-spacing: 0.3px;
			}
			.btn-candidatar:hover { 
				background-color: #004d26; 
			}
			.vaga-local { 
				color: #c53030; 
				font-size: 13px; 
				font-weight: 600; 
				margin-bottom: 12px; 
			}
			.vaga-local i { 
				margin-right: 4px; 
			}
			.vaga-desc { 
				color: #666; 
				font-size: 13px; 
				line-height: 1.6; 
				margin-bottom: 20px; 
				flex-grow: 1; 
				text-align: justify; 
			}
			.vaga-tags { 
				display: flex; 
				flex-wrap: wrap; 
				gap: 6px; 
			}
			.vaga-tag { 
				font-size: 11px; 
				font-weight: 600; 
				padding: 3px 9px; 
				border-radius: 4px; 
			}
			.tag-gray { background-color: #f0f0f0; color: #555; }
			.tag-blue { background-color: #ebf8ff; color: #2b6cb0; }
			.tag-purple { background-color: #faf5ff; color: #6b46c1; }

			@media (max-width: 767px) { 
				.filter-actions { margin-top: 10px; } 
				.btn-limpar { margin-left: 10px; }
			}

			/* LOGIN MODERNO */
			.auth-wrap {
				position: relative;
				padding: 54px 0 70px;
				background: #f4f6f8;
				overflow: hidden;
			}
			.auth-shell {
				position: relative;
				z-index: 1;
				max-width: 980px;
				margin: 0 auto;
				font-family: 'Poppins', 'Open Sans', sans-serif;
			}
			.auth-card {
				background: #fff;
				border: 1px solid #dfe4ea;
				border-radius: 8px;
				box-shadow: 0 12px 28px rgba(17, 41, 69, 0.08);
				margin-bottom: 25px;
			}
			.auth-card-head {
				height: 4px;
				background: #006633;
				border-radius: 8px 8px 0 0;
			}
			.auth-body {
				padding: 35px 35px 30px;
			}
			.auth-grid {
				display: grid;
				grid-template-columns: 1fr 1fr;
				gap: 30px;
				align-items: start;
			}
			@media (max-width: 768px) {
				.auth-grid {
					grid-template-columns: 1fr;
					gap: 30px;
				}
			}
			.auth-panel {
				display: block;
			}
			.auth-panel.hidden {
				display: none;
			}
			.auth-panel.with-title-gap .auth-title {
				margin-bottom: 14px;
			}
			.auth-title {
				margin: 0 0 8px 0;
				font-family: 'Poppins', sans-serif;
				font-size: 24px;
				font-weight: 700;
				color: #2c3540;
				text-align: left;
			}
			.auth-subtitle {
				margin: 0 0 24px;
				text-align: left;
				font-size: 13.5px;
				color: #7a858f;
			}
			.auth-input-wrap .field-label {
				display: block;
				font-size: 13px;
				font-weight: 700;
				color: #66727e;
				margin-bottom: 6px;
				text-transform: uppercase;
				letter-spacing: 0.3px;
			}
			.auth-input-wrap {
				position: relative;
				margin-bottom: 18px;
			}
			.auth-input-wrap i {
				position: absolute;
				right: 12px;
				top: 50%;
				transform: translateY(-50%);
				width: 18px;
				text-align: center;
				font-size: 16px;
				color: #7d8791;
				pointer-events: none;
			}
			.auth-input-wrap.has-label i {
				top: 48px;
			}
			.auth-input-wrap .form-control {
				height: 48px;
				padding: 0 35px 0 12px;
				border: 1px solid #d2d9e1;
				font-size: 14.5px;
				font-weight: 500;
				border-radius: 4px;
				box-shadow: none;
				background: #fafafa;
				transition: border-color 0.2s, background 0.2s;
			}
			.auth-input-wrap .form-control:focus {
				border-color: #006633;
				background: #fff;
				box-shadow: 0 0 0 3px rgba(0, 102, 51, 0.1);
			}
			.auth-help {
				display: block;
				font-size: 13px;
				color: #677886;
				margin: -2px 0 10px;
			}
			.btn-auth {
				width: 100%;
				display: inline-flex;
				align-items: center;
				justify-content: center;
				gap: 8px;
				height: 48px;
				border: 0;
				border-radius: 4px;
				font-size: 14px;
				font-weight: 700;
				text-transform: uppercase;
				letter-spacing: .5px;
				background: #006633;
				color: #fff;
				transition: background 0.2s;
				cursor: pointer;
			}
			.btn-auth:hover {
				background: #004d26;
				color: #fff;
			}
			.auth-links {
				display: flex;
				justify-content: space-between;
				margin-top: 14px;
				gap: 10px;
			}
			.auth-links a {
				font-size: 13.5px;
				font-weight: 600;
				color: #006633;
				text-decoration: none;
				transition: color 0.2s;
			}
			.auth-links a:hover {
				color: #004d26;
				text-decoration: underline;
			}
			.auth-note {
				margin: 8px 0 0;
				font-size: 12px;
				color: #6e7780;
			}
			.validation-msg {
				display: block;
				font-size: 12px;
				margin-top: 5px;
				font-weight: 600;
				font-family: 'Poppins', sans-serif;
			}
			.validation-msg.erro {
				color: #dc3545;
			}
			.validation-msg.sucesso {
				color: #28a745;
			}
			@media (max-width: 991px) {
				.auth-shell {
					max-width: 100%;
				}
			}

			/* Estilos das Abas para Mobile */
			.auth-tabs {
				display: none;
			}
			
			@media (max-width: 768px) {
				.auth-tabs {
					display: flex;
					border-bottom: 1px solid #dfe4ea;
					margin-bottom: 20px;
					background: #fff;
					border-radius: 6px;
					overflow: hidden;
				}
				.auth-tab-btn {
					flex: 1;
					padding: 14px;
					border: 0;
					background: #fafafa;
					font-weight: 700;
					font-size: 14px;
					color: #7a858f;
					cursor: pointer;
					transition: background 0.2s, color 0.2s;
				}
				.auth-tab-btn.active {
					background: #fff;
					color: #006633;
					border-bottom: 3px solid #006633;
				}
				.auth-grid > .auth-card {
					display: none;
				}
				.auth-grid > .auth-card.active-tab {
					display: block;
				}
			}
			.hidden {
				display: none !important;
			}

/* ===== Toast de notificação de sucesso ===== */
.toast-cocari {
			position: fixed;
			top: 24px;
			right: 24px;
			background: #ffffff;
			border: 1px solid #e9ecef;
			border-radius: 8px;
			box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
			width: 360px;
			max-width: 90vw;
			z-index: 999999;
			font-family: 'Poppins', sans-serif;
			overflow: hidden;
			transform: translateX(400px);
			transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
		}
		.toast-cocari.show {
			transform: translateX(0);
		}
		.toast-cocari-header {
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 10px 16px;
			background: #f1f3f5;
			border-bottom: 1px solid #e9ecef;
		}
		.toast-sim-dot {
			width: 10px;
			height: 10px;
			border-radius: 50%;
		}
		.toast-sim-dot.red { background: #ff5f56; }
		.toast-sim-dot.yellow { background: #ffbd2e; }
		.toast-sim-dot.green { background: #27c93f; }
		.toast-cocari-title {
			font-size: 12.5px;
			color: #495057;
			font-weight: 600;
		}
		.toast-cocari-time {
			font-size: 11px;
			color: #868e96;
		}
		.toast-cocari-close {
			background: none;
			border: none;
			font-size: 18px;
			color: #868e96;
			cursor: pointer;
			line-height: 1;
			padding: 0;
		}
		.toast-cocari-close:hover {
			color: #495057;
		}
		.toast-cocari-body {
			padding: 16px;
			display: flex;
			align-items: flex-start;
			gap: 12px;
			font-size: 13.5px;
			color: #495057;
			line-height: 1.5;
			text-align: left;
		}
		.toast-cocari-check {
			color: #2e7d32;
			font-size: 20px;
			line-height: 1;
		}
		.toast-cocari-progress {
			position: absolute;
			bottom: 0;
			left: 0;
			height: 3px;
			background: #006633;
			width: 100%;
		}
		.toast-cocari-progress.active {
			animation: toastProgress 5s linear forwards;
		}
		@keyframes toastProgress {
			to {
				width: 0%;
			}
		}
