*, *::before, *::after {
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
  }
  
  :root {
    --primary-light-hsl: 200, 100%, 91%;
    --primary-hsl: 200, 100%, 50%;
    --primary-dark-hsl: 200, 100%, 6%;
    --success-hsl: 100, 60%, 50%;
    --error-hsl: 0, 60%, 50%;
  }
  
  body {
    margin: 0;
  }
  
  .full-screen-container {
    background-image: url("background-image.jpg");
    height: 100vh;
    width: 100vw;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .login-container {
    --color: hsl(var(--primary-dark-hsl), .7);
    background-color: var(--color);
    box-shadow: 0 0 15px 0 var(--color);
    padding: 40px 30px;
    width: 80%;
    max-width: 600px;
    border-radius: 20px;
  }
  
  .login-title {
    margin: 0;
    color: white;
    text-align: center;
    font-size: 2rem;
    font-weight: normal;
  }
  
  .form {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 40px;
  }
  
  .input-group {
    display: flex;
    flex-direction: column;
    gap: 7px;
  }
  
  .input-group label {
    color: white;
    font-weight: lighter;
  }
  
  .input-group input {
    font-size: 1.25rem;
    padding: .5em;
    background-color: hsl(var(--primary-light-hsl), .3);
    border: none;
    outline: none;
    border-radius: .25em;
    color: white;
    font-weight: lighter;
  }
  
  .input-group.success input {
    box-shadow: 0 0 0 1px hsl(var(--success-hsl));
  }
  
  .input-group.error input {
    box-shadow: 0 0 0 1px hsl(var(--error-hsl));
  }
  
  .input-group input:focus {
    box-shadow: 0 0 0 1px hsl(var(--primary-hsl));
  }
  
  .input-group .msg {
    display: none;
    font-size: .75rem;
  }
  
  .input-group.success .msg,
  .input-group.error .msg {
    display: block;
  }
  
  .input-group.error .msg {
    color: hsl(var(--error-hsl));
  }
  
  .input-group.success .msg {
    color: hsl(var(--success-hsl));
  }
  
  .sign-up-button {
    padding: .5em 1em;
    font-size: 1.5rem;
    font-weight: lighter;
    color: white;
    background-color: hsl(var(--primary-hsl), .25);
    border: 1px solid hsl(var(--primary-hsl));
    border-radius: .25em;
    outline: none;
    cursor: pointer;
  }
  
  .login-button:hover,
  .login-button:focus {
    background-color: hsl(var(--primary-hsl), .4);
  }
  
.form-control input {
	border: 2px solid #f0f0f0;
	border-radius: 4px;
	display: block;
	font-family: inherit;
	font-size: 14px;
	padding: 10px;
	width: 100%;
}

.form-control input:focus {
	outline: 0;
	border-color: #777;
}

.form-control.success input {
	border-color: #2ecc71;
}

.form-control.error input {
	border-color: #e74c3c;
}

.form-control i {
	visibility: hidden;
	position: absolute;
	top: 40px;
	right: 10px;
}

.form-control.success i.fa-check-circle {
	color: #2ecc71;
	visibility: visible;
}

.form-control.error i.fa-exclamation-circle {
	color: #e74c3c;
	visibility: visible;
}

.form-control small {
	color: #e74c3c;
	position: absolute;
	bottom: 0;
	left: 0;
	visibility: hidden;
}

.form-control.error small {
	visibility: visible;
}
/*important modification*/
.input-group.success input {
	border-color: #2ecc71;
}

.input-group.error input {
	border-color: #e74c3c;
}