.login-body {
  font-family: "Roboto Mono", "Open Sans", "Source Sans Pro", "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  background-color: #000000;
  color: #ffffff;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-template-rows: 1fr auto 1fr;
  grid-template-areas: ". . ." ". content ." ". . .";
}

h1, h2, h3, h4, h5, h6, a, a:hover, a:focus,
.btn {
  color: #ffffff;
  font-family: "Roboto Mono", "Open Sans", "Source Sans Pro", "Lato", "Helvetica Neue", sans-serif;
  letter-spacing: -0.5px;
}

.login-main-container {
  grid-area: content;
  display: grid;
  grid-template-columns: 150px 1fr;
  grid-template-rows: 150px 1fr;
  grid-template-areas: "logo title" ". form";
  border: 2px solid #000000;
  outline: 2px solid #ffffff;
  outline-offset: -4px;
}
.login-main-container .login-logo-container {
  grid-area: logo;
}
.login-main-container .login-logo-container img {
  width: 100%;
  height: 100%;
}
.login-main-container .login-title-container {
  grid-area: title;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: calc(150px / 3 * 2) calc(150px / 3);
  grid-template-areas: "h1" "h2";
  border-bottom: 2px solid #ffffff;
}
.login-main-container .login-title-container h1 {
  grid-area: h1;
  font-size: 42px;
  padding: 0 70px;
  border-bottom: 2px solid #ffffff;
  margin: 0;
  display: flex;
  align-items: center;
  margin-bottom: -1px;
}
.login-main-container .login-title-container h2 {
  grid-area: h2;
  margin: 0;
  display: flex;
  align-items: center;
  padding: 0 70px;
  font-size: 18px;
}
.login-main-container .login-title-container a {
  text-decoration: underline;
}
.login-main-container .login-form-container {
  grid-area: form;
  border-left: 2px solid #ffffff;
  margin-left: -2px;
  padding: 50px 60px 55px 60px;
}
.login-main-container .login-form-container .btn.btn-login {
  color: #000000;
  background-color: #ffffff;
  border-radius: 0px;
  font-size: 16px;
  font-weight: 600;
  padding: 11px;
  margin-top: 20px;
}

.form-label {
  margin-bottom: 5px;
  font-weight: 600;
}

.form-control {
  background: #000000;
  border: 1px solid #ffffffd5;
  border-radius: 0;
  color: #ffffff;
  letter-spacing: 0.2px;
}
.form-control::placeholder {
  font-size: 13px;
  color: #ffffffa9;
  letter-spacing: 0px;
}
.form-control:focus {
  border: 1px solid #ffffff;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  border: 1px solid #ffffff;
  -webkit-text-fill-color: #ffffff;
  -webkit-box-shadow: 0 0 0px 1000px #000 inset;
  transition: background-color 5000s ease-in-out 0s;
}

.alert-danger {
  background-color: #f4364ec2;
  border: none;
}

.alert {
  padding: 10px 15px;
}
