/* RentGuarantor CSS: login-overlay.css (source: src/assets/scss/_login-overlay.scss) */
.login-overlay {
  position: fixed;
  top: var(--navbar-height, 108px);
  left: 0;
  width: 100%;
  height: calc(100vh - var(--navbar-height, 108px));
  z-index: 1040;
  display: block;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s ease, visibility 0s linear 0.25s;
}
@media (max-width: 991.98px) {
  .login-overlay {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 20px;
  }
}
.login-overlay.active {
  pointer-events: auto;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.25s ease, visibility 0s linear 0s;
}

.login-overlay-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1;
  pointer-events: auto;
  opacity: 0;
  transition: opacity 0.25s ease;
}

.login-overlay-card {
  position: absolute;
  top: -20px;
  z-index: 2;
  background-color: var(--color-core-white);
  border-radius: 20px;
  box-shadow: 0px 2px 4px 0px rgba(35, 45, 93, 0.25);
  padding: var(--spacing-800);
  width: 337px;
  max-width: calc(100vw - 40px);
  pointer-events: auto;
  opacity: 0;
  transform: translateY(-12px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}
@media (max-width: 991.98px) {
  .login-overlay-card {
    position: static;
    margin-right: 20px;
    margin-left: 20px;
  }
}
@media (max-width: 575.98px) {
  .login-overlay-card {
    padding: var(--spacing-700);
    width: 100%;
    max-width: calc(100vw - 32px);
    margin-right: 16px;
    margin-left: 16px;
  }
}

.login-overlay.active .login-overlay-backdrop {
  opacity: 1;
}
.login-overlay.active .login-overlay-card {
  opacity: 1;
  transform: translateY(0);
}

.login-overlay-header {
  margin-bottom: var(--spacing-800);
}

.login-overlay-form {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-800);
}
.login-overlay-form .form-group {
  display: flex;
  flex-direction: column;
}
.login-overlay-form .form-group label {
  margin-bottom: var(--spacing-300);
}

.login-overlay-forgot-link {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.login-overlay-forgot-link:hover {
  text-decoration: none;
  color: var(--color-mid-blue-600);
}