html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

*, *::before, *::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

a {
  color: inherit;
  font-weight: bold;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100vh;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  padding: 1em .5em;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
  font-weight: 400;
  color: #FFF;
}

header {
  height: 5em;
  margin-bottom: 2em;
  background-image: url("../../img/login/logo.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: .4;
}

main {
  height: auto;
  max-width: 60ch;
  padding: 1em;
  border-radius: .25em;
  font-size: 1em;
  line-height: 1.25;
  background-color: rgba(0, 0, 0, 0.4);
}

main h1, main p {
  margin: 0;
}

main h2 {
  margin-top: 0;
}

main h2 span#name {
  white-space: nowrap;
}

main .form {
  margin-top: .25em;
}

main .form__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

main .form__row--streched {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

main form input {
  width: 100%;
  padding: 0 .25em;
  border: none;
  border-radius: 5px;
  background-color: rgba(0, 0, 0, 0.125);
  color: inherit;
}

main form input:focus {
  outline-width: 0;
}

main form input#password {
  font-family: "Roboto Mono";
  font-weight: 500;
  font-size: 1em;
  padding: .5em 2em .5em .5em;
}

main form span#password-visibility {
  width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
}

main form span#password-visibility::before {
  content: "\f06e";
  font-family: "Font Awesome 5 Free";
  font-size: .9em;
  color: rgba(255, 255, 255, 0.85);
  font-weight: 400;
  position: relative;
  right: 1.75em;
}

main form span#password-visibility.hidden::before {
  content: "\f070";
  right: 1.82em;
}

main form button.transparent {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: inherit;
  border: none;
  margin: unset;
  padding: unset;
  margin-left: .5em;
  background: transparent;
}

main form button.transparent:focus {
  outline-width: 0;
}

main form button.transparent#submit {
  width: 3.25em;
  background-image: url("../../img/login/enter.png");
  background-repeat: no-repeat;
  background-position: right;
  background-size: contain;
}

main form #alert {
  margin-top: .5em;
  padding: .5em;
  color: #FFF;
  background-color: rgba(255, 125, 125, 0.25);
  border: 1px solid rgba(255, 125, 125, 0.3);
  border-radius: 5px;
}

main form #alert.hidden {
  display: none;
  visibility: hidden;
}

footer, .credits {
  color: rgba(0, 0, 0, 0.5);
}

footer {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: 60ch;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  position: fixed;
  bottom: 1em;
}

footer .link-list {
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  list-style: none;
}

.credits {
  position: absolute;
  top: .25em;
  right: .5em;
  font-size: .8em;
  font-weight: normal;
}

body.light {
  color: #333;
}

body.light main {
  background-color: rgba(255, 255, 255, 0.75);
}

body.light header {
  background-image: url("../../img/login/logo-light.png");
  opacity: .75;
}

body.light form input {
  background-color: rgba(0, 0, 0, 0.05);
}

body.light form span#password-visibility::before {
  color: rgba(0, 0, 0, 0.85);
}

body.light form button.transparent#submit {
  background-image: url("../../img/login/enter-dark.png");
}

body.light form #alert {
  color: #985555;
  background-color: rgba(255, 125, 125, 0.125);
  border: 1px solid rgba(255, 125, 125, 0.15);
}

body.light footer, body.light .credits {
  color: rgba(255, 255, 255, 0.5);
}
/*# sourceMappingURL=styles.css.map */