[data-brand-logo][hidden]{display:none!important}.login-story .brand{align-items:center}.login-story>div:nth-child(2){margin-block:auto}.cloud-company-code{margin-top:14px}.cloud-company-code a{color:inherit;text-decoration:underline}

.cloud-login-frame {
  display: grid;
  align-items: center;
  min-height: 100vh;
  min-height: 100svh;
  padding: 32px 24px;
  background: #f0f1f3;
}

.cloud-login-frame:has(.login-screen[hidden]) {
  display: none;
}

.cloud-login-frame .login-screen {
  width: min(100%, 1080px);
  min-height: 574px;
  margin-inline: auto;
  overflow: hidden;
  border: 1px solid #dce3eb;
  border-radius: 16px;
  box-shadow: 0 14px 36px rgb(23 60 101 / 8%);
}

.cloud-login-frame .login-story {
  min-height: 0;
  padding: clamp(26px, 4vw, 48px);
  background: #173c65;
}

/* Public entry uses the product wordmark. Tenant screens use their own branding. */
.cloud-login-brand {
  position: relative;
  width: min(100%, 330px);
  aspect-ratio: 3.25;
  overflow: hidden;
  border-radius: 10px;
  background: #fff;
}

.operator-gate .cloud-login-brand {
  margin-bottom: 20px;
  border: 1px solid #e3e5e8;
}

.cloud-login-brand img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 118%;
  max-width: none;
  height: auto;
  transform: translate(-50%, -50%);
}

.cloud-login-frame .login-story .eyebrow,
.cloud-login-frame .login-story p,
.cloud-login-frame .story-line {
  color: #dce7f3;
}

.cloud-login-frame .login-story h1 {
  font-size: clamp(32px, 3.4vw, 46px);
}

.cloud-login-frame .login-panel {
  padding: clamp(28px, 4vw, 52px);
}

.cloud-login-frame .login-panel .btn.primary {
  background: #164a83;
  border-color: #164a83;
  color: #fff;
}

.cloud-login-frame .login-panel .btn.primary:hover {
  background: #173c65;
}

@media (max-width: 800px) {
  .cloud-login-frame {
    padding: 20px 14px;
  }

  .cloud-login-frame .login-screen {
    min-height: 0;
    grid-template-columns: 1fr;
  }

  .cloud-login-frame .login-story > div:nth-child(2) {
    display: none;
  }

  .cloud-login-frame .login-panel {
    padding: 26px 22px;
  }
}

.cloud-entry { width: min(100%, 355px); }
.cloud-entry .form-error:empty { display: none; }
.cloud-entry .form-error { margin: 10px 0 0; }
.cloud-entry-links { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 18px; align-items: center; }
.cloud-entry-links a, .cloud-entry-links button { color: #164a83; font: inherit; font-size: 13px; }
.cloud-entry-links button { padding: 0; border: 0; background: none; text-decoration: underline; cursor: pointer; }
.cloud-recovery { width: min(94%, 460px); max-height: 94vh; padding: 22px; border: 1px solid #dce3eb; border-radius: 12px; }
.cloud-recovery::backdrop { background: rgb(23 44 67 / 56%); }
.cloud-recovery label { margin-block: 12px; }


/* Company display preferences */
.brand img[data-brand-logo][data-logo-size="small"] {
  width: 36px;
  height: 36px;
}
.brand img[data-brand-logo][data-logo-size="large"] {
  width: 68px;
  height: 68px;
}
.branding-preview img[data-logo-size="small"] {
  width: 48px;
  height: 48px;
}
.branding-preview img[data-logo-size="large"] {
  width: 96px;
  height: 96px;
}
.branding-preview img {
  flex: 0 0 auto;
  max-width: 38%;
}
.branding-preview strong {
  overflow-wrap: anywhere;
}
#branding-form .branding-trim {
  display: flex;
  align-items: center;
  gap: 9px;
}
#branding-form .branding-trim input {
  width: auto;
  margin: 0;
}
.branding-save {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
@media (max-width: 600px) {
  .brand img[data-brand-logo][data-logo-size="large"] {
    width: 57px;
    height: 57px;
  }
}

.cloud-workspace-help {
  display: inline-block;
  margin: 0 0 10px;
  color: #dbe8f5;
  font-size: 13px;
  text-underline-offset: 3px;
}
.cloud-workspace-help:hover { color: #fff; }
.cloud-operator-help { margin-top: 12px; }
.cloud-footer-help { margin-right: 12px; color: inherit; text-underline-offset: 3px; }
