   * {
		margin: 0;
		padding: 0;
		box-sizing: border-box;
	}

	body {
		font-family: 'Inter', sans-serif;
		background: linear-gradient(135deg, #e6f0fa 0%, #f0f4f8 100%);
		min-height: 100vh;
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
	}

	/* Palavras "Treinamento" espalhadas - modo treinamento */
	.treinamento-watermark {
		position: fixed;
		color: #dc2626;
		font-weight: 700;
		white-space: nowrap;
		pointer-events: none;
		z-index: 0;
		text-transform: uppercase;
		letter-spacing: 2px;
		font-family: 'Inter', monospace;
		text-shadow: 1px 1px 0 rgba(0,0,0,0.05);
	}

	.container {
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
		padding: 20px;
		position: relative;
		z-index: 1;
	}

	.login-wrapper {
		display: flex;
		justify-content: center;
		align-items: center;
		min-height: 100vh;
	}

	.login-card {
		background: #ffffff;
		border-radius: 20px;
		box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
		overflow: hidden;
		width: 100%;
		max-width: 440px;
		transition: transform 0.3s ease, box-shadow 0.3s ease;
	}

	.login-card:hover {
		transform: translateY(-3px);
		box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
	}

	/* Header Institucional */
	.login-header {
		background: linear-gradient(135deg, #003366 0%, #004080 100%);
		padding: 30px 28px;
		text-align: center;
	}

	/* Brasão do Estado da Bahia */
	.brasao {
		margin-bottom: 15px;
	}

	.brasao img {
		width: 120px;
		border-radius: 12px;
		padding: 2px;
		background: rgba(255,255,255,0.1);
	}

	.login-header h3 {
		color: #ffffff;
		font-size: 1.6rem;
		font-weight: 700;
		margin: 10px 0 5px 0;
		letter-spacing: -0.5px;
	}

	.login-header p {
		color: rgba(255, 255, 255, 0.85);
		font-size: 0.8rem;
		margin: 0;
		line-height: 1.4;
	}

	.system-name {
		font-size: 0.85rem;
		font-weight: 500;
		color: #ffffff;
		background: rgba(255, 255, 255, 0.15);
		display: inline-block;
		padding: 6px 16px;
		border-radius: 30px;
		margin-top: 12px;
	}

	/* Badge de treinamento no header */
	.training-badge {
		display: inline-block;
		background: #dc2626;
		color: white;
		font-size: 0.7rem;
		font-weight: 700;
		padding: 3px 10px;
		border-radius: 20px;
		margin-top: 10px;
		letter-spacing: 1px;
	}

	/* Corpo do formulário */
	.login-body {
		padding: 32px 28px;
		background: #ffffff;
	}

	.input-group-custom {
		margin-bottom: 24px;
	}

	.input-group-custom label {
		display: block;
		font-size: 0.85rem;
		font-weight: 600;
		color: #1e293b;
		margin-bottom: 8px;
	}

	.input-group-custom label i {
		color: #003366;
		width: 20px;
		margin-right: 8px;
	}

	.input-custom {
		width: 100%;
		padding: 12px 16px;
		font-size: 0.95rem;
		font-family: 'Inter', sans-serif;
		border: 1.5px solid #e2e8f0;
		border-radius: 12px;
		transition: all 0.3s ease;
		background: #fafbfc;
	}

	.input-custom:focus {
		outline: none;
		border-color: #003366;
		background: #ffffff;
		box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.08);
	}

	.input-custom:hover {
		border-color: #003366;
	}

	/* Botão */
	.btn-login {
		width: 100%;
		padding: 12px;
		background: #003366;
		color: white;
		border: none;
		border-radius: 12px;
		font-size: 0.95rem;
		font-weight: 600;
		cursor: pointer;
		transition: all 0.3s ease;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 10px;
	}

	.btn-login:hover {
		background: #004080;
		transform: translateY(-1px);
		box-shadow: 0 5px 15px rgba(0, 51, 102, 0.15);
	}

	.btn-login:active {
		transform: translateY(0);
	}

	/* Alertas */
	.alert-custom {
		background: #fee2e2;
		border-left: 4px solid #dc2626;
		padding: 12px 16px;
		border-radius: 12px;
		margin-bottom: 24px;
		display: flex;
		align-items: center;
		gap: 12px;
		font-size: 0.85rem;
		color: #991b1b;
	}

	.alert-custom i {
		font-size: 1rem;
	}

	/* Footer */
	.login-footer {
		background: #f8fafc;
		padding: 20px 28px;
		text-align: center;
		border-top: 1px solid #e2e8f0;
	}

	.copyright {
		font-size: 0.7rem;
		color: #64748b;
	}

	.copyright i {
		color: #003366;
	}

	/* Versão */
	.version-badge {
		width:200px;
		position: inherit;
		background: rgba(0, 51, 102, 0.7);
		backdrop-filter: blur(4px);
		margin: 10px 0 0 100px;
		padding: 2px;
		border-radius: 20px;
		font-size: 0.7rem;
		color: rgba(255, 255, 255, 0.9);
		font-family: monospace;
		z-index: 10;
		text-align:center;
	}

	/* Responsividade */
	@media (max-width: 480px) {
		.login-card {
			max-width: 100%;
		}
		.login-header {
			padding: 24px 20px;
		}
		.login-body {
			padding: 24px 20px;
		}
		.login-footer {
			padding: 16px 20px;
		}
		.brasao img {
			width: 65px;
		}
		.login-header h3 {
			font-size: 1.3rem;
		}
	}


