.login-trust {
  display: grid;
  gap: 14px;
  margin-top: 40px;
}

.login-trust p {
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 0;
  color: var(--brand-muted);
  font-size: 0.9rem;
}

.login-trust span {
  display: grid;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid rgba(var(--brand-accent-rgb), 0.38);
  border-radius: 9px;
  color: var(--mint);
  background: rgba(var(--brand-accent-rgb), 0.08);
  font-weight: 700;
}

.login-panel .form-wrap {
  max-width: 480px;
}

.account-link {
  margin: 28px 0 0;
  color: var(--ink-soft);
  font-size: 0.88rem;
  text-align: center;
}

.account-link a {
  color: var(--blue);
  font-weight: 700;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.login-success {
  padding: 8px 0 0;
  text-align: center;
}

.login-panel.is-signed-in .setup-progress { margin-bottom: 28px; }
.login-panel .setup-progress li.is-complete { color: var(--success); border-color: var(--success); }
.login-success .confirmation-icon { width: 52px; height: 52px; margin-bottom: 16px; border-radius: 16px; box-shadow: none; }
.login-success .eyebrow { margin-bottom: 10px; }
.login-success h2 {
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  line-height: 1.2;
  letter-spacing: -0.035em;
}
/* This heading receives announcement focus after sign-in. Interactive controls
   retain their shared visible keyboard focus indicator. */
.login-success h2:focus { outline: none; }
.login-success > p:not(.eyebrow) {
  max-width: 34ch;
  margin: 14px auto 0;
  font-size: .95rem;
  color: var(--ink-soft);
  line-height: 1.65;
}

.login-success .confirmation-help {
  font-size: var(--type-small);
}

.login-continue {
  display: flex;
  margin-top: 24px;
  text-decoration: none;
}

@media (max-width: 640px) {
  .login-trust {
    margin-top: 32px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
