@charset "utf-8";
/* CSS Document */

/* Área de login
/* ............. */

/* enfeite do background */
.background {
	position: absolute;
	left: 0;
	top: 5%;
	z-index: -1;
}

/* área de formatação principal */
div#corpoLogin {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}

	/* área esquerda da tela */
	div#areaLogotipo {
		width: 40%;
		margin: 10% 0 0 8%;
	}
	
div#rodapeLogin {
	position: absolute;
	bottom: 30px;
	font-weight: bold;
	margin-left: 8%;
	z-index: 2;
}

	div#rodapeLogin p {
		margin-bottom: 7px;
	}

	div#rodapeLogin img {
		position: relative;
		width: 15px;
		margin-right: 3px;
		top: 3px;
	}

/* área direita da tela */
div#espacoLogin {
	position: absolute;
	right: 0;
	top: 0;
	width: 50%;
	height: 100%;
	background: linear-gradient(180deg, var(--padrao) 70%, var(--padraoTexto) 100%);
	background-size: 100% 100%;
}

	div#areaLogin {
		transform: translate(0, 25vh);
		height: 50vh;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}

		div#areaLogin #areaFormulario,
		div#areaLogin #statusLogin {
			width: 60%;
		}

		div#areaLogin #statusLogin {
			margin-top: 20px;
			text-align: center;
			font-weight: bold;
		}

			div#areaLogin #statusLogin span {
				color: var(--fonte) !important;
			}

	#areaLogin a:hover {
		font-weight: bold;
	}

	#areaLogin :where(a, p, label) {
		color: var(--background);
	}

/* área de recuperação da senha */
div#recuperacaoLogin {
	display: none;
}

	div#recuperacaoLogin #txtVoltarLogin {
		user-select: none;
	}

/* área do recaptcha */
div#areaRecaptcha {
	display: none;
	width: 100%;
}

	div#areaRecaptcha .g-recaptcha {
		justify-content: center;
		display: flex;
		margin-top: 20px;
	}

	div#areaRecaptcha p {
		color: var(--background);
	}

/* Inputs do Formulário
/* .................... */

.inputLogin {
	position: relative;
	width: calc(100% - 40px);
	margin: 0 auto;
	left: -20px;
}

	.inputLogin input {
		width: 100%;
		padding: 10px 20px;
		border-top: none;
		border-left: none;
		border-right: none;
	}

		.inputLogin input,
		.inputLogin input:enabled {
			background: transparent;
			border-bottom: 1px solid var(--background);
			color: var(--background);
		}

		.inputLogin input[type="password"] {
			padding-right: 60px;
			width: calc(100% - 40px);
		}

			/* Autocomplete dos navegadores */
			.inputLogin input:-webkit-autofill {
				-webkit-box-shadow: 0 0 0 30px var(--padrao) inset;
				-webkit-text-fill-color: var(--background);
			}

	.inputLogin label {
		position: absolute;
		top: 0;
		left: 0;
		transform: translate(15px, 25px) scale(0.85);
		transform-origin: left;
		transition: 0.25s;
		padding: 0px 10px;
		z-index: -1;
	}

		.inputLogin input:focus-visible ~ label,
		.inputLogin input:valid ~ label {
			transform: translate(0, -2px) scale(0.9);
		}
	
	.inputLogin .verSenha {
		position: absolute;
		top: 20px;
		right: -20px;
		cursor: pointer;
	}

		.inputLogin .iconSenha {
			background: url(../../imagens/gestor/senha.png);
			width: 30px;
			height: 25px;
			filter: brightness(10);
		}

		.inputLogin .iconSenhaOff {
			background-position: 0px -25px;
			opacity: 0.5;
		}

.inputLogin input,
#areaLogin input[type="button"] {
	margin: 15px 0;
}

	#areaLogin input[type="button"]:active,
	#areaLogin input[type="button"] { 
		background: var(--background); 
		border: 1px solid var(--borda);
		color: var(--fonte);
		padding: 10px 30px;
		cursor: pointer;
	}

	#areaLogin input[type="button"]:hover { 
		background: var(--backgroundDestaque);
		border: 1px solid var(--bordarHover); 
	}

#ckLogado {
	position: relative;
	cursor: pointer;
	user-select: none;
	padding-left: 25px;
}
  
	#ckLogado input {
		display: none;
	}

		#ckLogado input:checked ~ .marcacao:after {
			display: block;
		}

		#ckLogado input:checked ~ .marcacao {
			background-color: transparent;
			box-shadow: 0 0 0 10px var(--background) inset;
		}

	#ckLogado .marcacao {
		position: absolute;
		top: -1px;
		left: 0;
		height: 15px;
		width: 15px;
		background-color: transparent;
		border: 1px solid var(--background);
		transition: 0.3s;
	}

		#ckLogado .marcacao::after {
			content: "";
			position: absolute;
			display: none;
			left: 5px;
			top: 2px;
			width: 3px;
			height: 7px;
			transform: rotate(45deg);
			border: solid var(--padrao);
			border-width: 0 2px 2px 0;
		}

/* Dispositivos mobile
/* ................... */

@media only screen and (max-width: 750px) {

	.background { display: none; }

	div#areaLogotipo,
	div#espacoLogin,
	div#rodapeLogin {
		position: relative !important;
		width: 100% !important;
		text-align: center;
		margin: 20px 0 0 0;
	}

		div#areaLogin {
			margin: 100px 0 !important;
			transform: translate(0, 0) !important;		
		}

			.inputLogin label {
				width: calc(100% + 40px);
			}

				.inputLogin input:focus-visible ~ label,
				.inputLogin input:valid ~ label {
					transform: translate(0.5rem, -2px) scale(0.9);
				}

			div#areaLogin #statusLogin {
				margin-top: 0 !important;
			}
	
		div#rodapeLogin {
			bottom: -15px !important;
			margin-bottom: 30px !important;
		}

}