:root {
  --form-background: #242423;
  --body-background:#F8F9F9;
}
html {
  overscroll-behavior: contain;
  background-image: url("../img/login-background.png");
  background-size: cover;
  background-repeat: no-repeat;
}

/* Formatos pagina de registración*/
.login-body {
  background-color: rgba(145, 157, 160, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
}
.login-form {
  position: relative;
  margin: auto;
  width: 80vw;
  max-width: 450px;
  background-color: rgba(0,0,0, 0.4);
  padding: 1em 1em 1em;
  border: 0 transparent;
  border-radius: 10px;
}
@media only screen and (min-width : 280px) {
  .registration-form{ width: 90% }
}
@media only screen and (min-width : 480px) {
  .registration-form{ width: 60% }
}
@media only screen and (min-width : 768px) {
  .registration-form{ width: 40% }
}
@media only screen and (min-width : 992px) {
  .registration-form{ width: 30% }
}
.login-form-header{
  align-items: center;
  border: var(--form-background);
  padding: 0 0 1em;
}
.login-form-footer {
  padding: 1em;
}
.form-group {
  padding: 0.7em;
}
.btn-submit {
  font-size: 14px;
}
form a {
text-decoration: none;
color: white;
font-size: 12px;
}
.wrong-pass-div {
background-color: black;
color:white;
padding: 0.5em;
}
.whatsapp {
position:fixed;
width:60px;
height:60px;
bottom:40px;
right:40px;
background-color:#25d366;
border-color: #25d366;
color:#FFF;
border-radius:50px;
text-align:center;
font-size:30px;
z-index:100;
box-shadow: 8px 8px 8px #0f5d2c;
padding: 0.3em;
}

.valid {
    color: rgb(112, 219, 112);
}
.valid::before {
    content: "✓ "; /* Checkmark verde */
}
.invalid {
    color: rgb(243, 109, 85);
}
.invalid::before {
    content: "✗ "; /* X roja */
}
/* Oculta los estilos predeterminados del input pattern mientras se usa JS */
input:invalid:not(:focus) {
    box-shadow: none;
}