.auth-page{padding-top:70px;padding-bottom:80px}.auth-card{max-width:760px;margin:auto;padding:clamp(24px,5vw,48px);background:#fff;border:1px solid #dbe3f0;border-radius:20px;box-shadow:0 18px 55px #071b4310}.auth-card h1{font-size:clamp(28px,5vw,42px);line-height:1.15;margin:16px 0}.auth-card p{line-height:1.8;white-space:pre-line;overflow-wrap:anywhere}.auth-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-top:28px}.auth-form{display:grid;width:100%;gap:18px}.auth-form label{display:grid;gap:8px}.auth-form input{width:100%;padding:12px;border:1px solid #c9d5e8;border-radius:8px}.auth-form button{justify-self:start}.auth-account{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.auth-account form{margin:0}.auth-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

.auth-account{width:100%;justify-content:space-between;padding:12px 0;color:#16395f;font-weight:600}.auth-signout{appearance:none;background:none;border:0;padding:0;color:#0874e3;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.auth-signout:hover{color:#064d9c}.auth-signout:focus-visible{outline:2px solid #0874e3;outline-offset:4px}

.password-success{padding:14px 18px;border:1px solid #b7e1cb;border-radius:10px;background:#effaf4;color:#216340}.password-error{padding:14px 18px;border:1px solid #f0c1c1;border-radius:10px;background:#fff3f3;color:#a42c2c}

.auth-error-dialog{border:1px solid #dbe3f0;border-radius:20px;padding:32px;max-width:460px;width:calc(100% - 32px);color:#092a59;box-shadow:0 24px 80px #071b4330}.auth-error-dialog::backdrop{background:rgba(7,27,67,.48);backdrop-filter:blur(3px)}.auth-error-dialog h2{margin:0 0 16px;font-size:26px;line-height:1.25}.auth-error-dialog p{margin:0 0 24px;line-height:1.65;color:#637c9b}

/* Consistent text links across login, registration and account recovery forms. */
.auth-card a:not(.button),
.register-card a:not(.button),
.register-side-card a:not(.button),
.error-card a:not(.button) {
  color: #086aca;
  font-weight: 650;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  border-radius: 3px;
  transition: color .15s ease, background-color .15s ease;
}
.auth-card a:not(.button):hover,
.register-card a:not(.button):hover,
.register-side-card a:not(.button):hover,
.error-card a:not(.button):hover {
  color: #064a98;
  background-color: #edf6ff;
  text-decoration-thickness: 2px;
}
.auth-card a:not(.button):focus-visible,
.register-card a:not(.button):focus-visible,
.register-side-card a:not(.button):focus-visible,
.error-card a:not(.button):focus-visible {
  outline: 2px solid #0874e3;
  outline-offset: 4px;
  background-color: #edf6ff;
}
