/* The login has its own theme, independent of an existing user session. */
.login-body {
  --primary-color: #087f65;
  --primary-hover: #066650;
  --secondary-color: #285f96;
  --text-color: #263b48;
  --background-color: #f3f6f8;
  --border-color: #dde5e9;
  font-size: 14px;
  line-height: 1.5;
  min-height: 100dvh;
  height: auto;
}
.login-body .login-container {
  box-sizing: border-box;
  margin: 24px 16px;
  border: 1px solid var(--border-color);
  border-radius: 10px;
  box-shadow: 0 4px 18px #17313d0a;
}
.login-body .login-container h2 { color: #18323d; }
.login-body .login-container form { box-sizing: border-box; border-radius: 10px; padding: 24px; gap: 18px; }
.login-body .login-container label { margin-bottom: 5px; font-size: 12px; font-weight: 600; color: #3c535e; }
.login-body .login-container input {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  border-radius: 7px;
  font: inherit;
  padding: 10px 12px;
  border: 1px solid #cdd9df;
  background: #fff;
  color: #263b48;
}
.login-body .login-container input[type="submit"] {
  background: #087f65;
  color: #fff;
  border: 1px solid #087f65;
  padding: 10px 16px;
  cursor: pointer;
}
.login-body .login-container input[type="submit"]:hover { background: #066650; }
.login-body .login-container input:focus-visible {
  outline: 3px solid #087f6540;
  outline-offset: 2px;
  border-color: #087f65;
  box-shadow: none;
}
