*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
  /* variables */
  /* sb: sombra  // cp: cuerpo // ep: elementos del cuerpo */
}
body {
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #000;
	background: linear-gradient(145deg, #271b2a, #2e2032);
}
.container-main {
	width: 21.875rem;
	height: 28.125rem;
	display: flex;
	justify-content: center;
	flex-direction: column;
	padding: 2rem;
	border-radius: 1.25rem;
	color: #fff;
	background-color: rgb(15, 15, 15);
	box-shadow: -2px -2px 7px  #F42272,
               2px 2px 5px #5A0B4D;
}
.text-title {
	font-size: 2rem;
	margin-top: 0.5rem;
	text-align: center;
}
.container-box {
	margin: 0.2rem 0rem;
}
.container-box p {
	color: rgba(255, 255, 255, 0.8);
}
.box, .active-error, .active-correct {
	position: relative;
	width: 100%;
	height: 2.5rem;
	margin: 0.5rem 0rem;
}
.box input, .active-error input, .active-correct input {
	position: absolute;
	width: 100%;
	height: 100%;
	padding-left: 0.8rem;
	border: none;
	outline: none;
	border-radius: 0.625rem;
	color: #fff;
	background-color: rgb(19, 19, 19);
	transition: all 0.4s;
}
.box::before,
.box::before {
	content: '';
	position: absolute;
	width: 102%;
	height: 105%;
	top: 50%;
	left: 50%;
	border-radius: 0.625rem;
	background: linear-gradient(to right, #F42272, #5A0B4D);
	transform: translate(-50%, -50%);
}
.box input:focus::placeholder {
	color: #fff;
}
.container-button {
	width: 102%;
	height: 2.5rem;
	margin: 0.5rem 0rem;
	cursor: pointer;
	border: none;
	border-radius: 0.625rem;
	color: #fff;
	background: linear-gradient(to right, #F42272, #5A0B4D);
	transition: all 0.4s;
	transform: translate(-1%);
}
.container-button:hover {
	box-shadow: 0rem 0rem 0.625rem #ff416d65;
	transform: translate(-1%, 5%);
}
.text-invalid {
	display: none;
}
.text-register {
	font-size: 0.8rem;
	text-align: center;
	margin-top: 0.5rem;
	color: rgba(255, 255, 255, 0.623);
}
.text-register a {
	color: rgba(255, 255, 255, 0.9);
}
/******************************************************************************************/

.active-error::before {
	content: '';
	position: absolute;
	width: 102%;
	height: 105%;
	top: 50%;
	left: 50%;
	border-radius: 0.625rem;
	background-color: #FF0808;
	transform: translate(-50%, -50%);
}
.active-error input::placeholder {
	color: #FF0808;
}
.active-correct::before {
	content: '';
	position: absolute;
	width: 102%;
	height: 105%;
	top: 50%;
	left: 50%;
	border-radius: 0.625rem;
	background-color: #1ed12d;
	transform: translate(-50%, -50%);
}
.active-correct input::placeholder {
	color: #1ed12d;
}
.textIncomplete, .textIncorrect {
	display: block;
	font-size: 0.75rem;
	text-align: center;
	margin-top: 0.625rem;
	color: #FF0808;
}
.textSent {
	display: block;
	font-size: 0.75rem;
	text-align: center;
	margin-top: 0.625rem;
	color: #1ed12d;
}