:root {
  --notebook-login-wallpaper: url("/static/img/login-wallpaper.png");
  --notebook-login-overlay: 36;
}
html,
body,
#app {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
body.notebook-login-page {
  background-color: #152033 !important;
  background-image:
    linear-gradient(
      rgba(8, 15, 27, calc(var(--notebook-login-overlay) / 100)),
      rgba(8, 15, 27, calc(var(--notebook-login-overlay) / 100))
    ),
    var(--notebook-login-wallpaper) !important;
  background-position: center top !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-attachment: fixed !important;
}
body.notebook-login-page #app,
body.notebook-login-page .login-container,
body.notebook-login-page .auth-shell,
body.notebook-login-page .auth-page {
  min-height: 100vh;
  background: transparent !important;
}
body.notebook-login-page .auth-shell__form {
  background: rgba(255, 255, 255, 0.66) !important;
  border: 1px solid rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 24px 70px rgba(6, 13, 25, 0.28) !important;
  -webkit-backdrop-filter: blur(24px) saturate(135%);
  backdrop-filter: blur(24px) saturate(135%);
}
body.notebook-login-page .auth-shell__brand-name.auth-shell__sr-only {
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: nowrap !important;
}
body.notebook-login-page .auth-shell__brand-lockup .auth-shell__wide-logo {
  width: 36px !important;
  height: 36px !important;
  object-fit: contain !important;
  object-position: center !important;
}
body.notebook-login-page .auth-shell__form-brand .auth-shell__wide-logo {
  width: 48px !important;
  height: 48px !important;
  object-fit: contain !important;
  object-position: center !important;
}
body.notebook-login-page .auth-shell__brand {
  color: #fff;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.38);
}
body.notebook-login-page .auth-shell__topbar {
  color: #fff;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
}
@media (max-width: 640px) {
  html,
  body,
  #app {
    overflow-x: hidden;
  }
  body.notebook-login-page {
    background-position: 58% top !important;
    background-attachment: scroll !important;
  }
  body.notebook-login-page .auth-shell {
    height: auto;
    min-height: 100vh;
    min-height: 100dvh;
    overflow-x: hidden;
    overflow-y: visible;
  }
  body.notebook-login-page .auth-shell__topbar,
  body.notebook-login-page .auth-shell__card,
  body.notebook-login-page .auth-shell__features,
  body.notebook-login-page .auth-shell__footer {
    flex-shrink: 0;
  }
  body.notebook-login-page .auth-shell__card {
    height: auto;
    align-items: flex-start;
  }
  body.notebook-login-page .auth-shell__panel,
  body.notebook-login-page .auth-shell__form,
  body.notebook-login-page .auth-shell__form-inner {
    min-width: 0;
    max-width: 100%;
  }
  body.notebook-login-page .auth-shell__form {
    order: 1;
  }
  body.notebook-login-page .auth-shell__brand {
    display: none;
  }
  body.notebook-login-page .auth-shell__panel {
    transform: none;
  }
  body.notebook-login-page .auth-shell__features {
    margin-top: 22px;
  }
  body.notebook-login-page .auth-shell__form {
    background: rgba(255, 255, 255, 0.84) !important;
    -webkit-backdrop-filter: blur(18px) saturate(125%);
    backdrop-filter: blur(18px) saturate(125%);
  }
  .register-policy__footer {
    flex-direction: column-reverse;
  }
  .register-policy__footer > .arco-btn {
    width: 100%;
    margin: 0 !important;
  }
  .arco-modal {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin-inline: 12px;
  }
  .arco-drawer {
    max-width: 100vw !important;
  }
  .np-layout,
  .np-main,
  .np-content,
  .np-page,
  .np-mobile {
    min-width: 0;
    max-width: 100%;
  }
  .np-header {
    padding-inline: 10px !important;
  }
  .np-header__right {
    gap: 6px !important;
    flex-shrink: 0;
  }
  .np-user {
    padding-inline: 4px !important;
  }
  .np-user__name {
    display: none !important;
  }
  .np-ann {
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
  }
  button,
  a,
  input,
  .arco-btn {
    touch-action: manipulation;
  }
}
@media (max-width: 390px) {
  body.notebook-login-page .auth-shell__topbar {
    padding-inline: 10px;
  }
  body.notebook-login-page .auth-shell__actions {
    gap: 4px;
  }
  body.notebook-login-page .auth-shell__login-link,
  body.notebook-login-page .auth-shell__register-link {
    min-width: 42px;
    padding-inline: 8px;
  }
  body.notebook-login-page .auth-shell__form {
    padding-inline: 16px;
  }
}
