.auth-password-wrap{position:relative;min-width:0}
.auth-password-wrap input{width:100%;padding-right:60px}
.field .auth-password-wrap > input[data-password-input]{padding-right:60px}
.field.field-password > label:not(.sr-only){max-width:calc(100% - 72px)}
.auth-password-toggle{position:absolute;top:50%;right:4px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transform:translateY(-50%)}
.auth-password-toggle:disabled{opacity:.45;cursor:not-allowed}
.auth-password-wrap input::-ms-reveal{display:none}
.auth-password-toggle:hover{background:var(--blue-soft);color:var(--blue-dark)}
.auth-password-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:1px}
.auth-password-toggle svg{display:block;width:22px;height:22px;pointer-events:none}
.auth-password-toggle .auth-eye-closed,.auth-password-toggle[aria-pressed="true"] .auth-eye-open{display:none}
.auth-password-toggle[aria-pressed="true"] .auth-eye-closed{display:block}
.auth-form-assist{display:flex;justify-content:flex-end;margin-top:-8px;font-size:14px}
[data-login-form] .form-status:not(:empty){display:block;margin:0;font-size:13px;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
[data-login-form] [data-login-recovery][hidden]{display:none!important}
.auth-form-assist a{font-weight:600}
.auth-card .auth-back-link{margin:22px 0 0;font-size:14px}
.auth-card .auth-reset-note{margin:16px 0 0;font-size:13px;line-height:1.55}

/* Login: a compact, centered form with accessible labels and visible placeholders. */
.auth-card.auth-login-card{padding:34px 32px 32px}
.auth-card.auth-login-card .brand-logo-link{width:fit-content;max-width:100%;margin:0 auto 26px}
.auth-login-card .brand-full-logo{display:block;width:min(230px,100%);height:auto;max-height:62px;object-fit:contain}
.auth-login-card h1{margin:0;text-align:center;font-size:23px;font-weight:600;line-height:1.3;letter-spacing:-.02em}
.auth-card.auth-login-card form{gap:14px;margin-top:26px}
.auth-login-card .field input{min-height:52px;padding:13px 15px;border:1px solid #ccd7e8;border-radius:12px;background:#f9fbff;box-shadow:0 1px 2px rgba(16,40,80,.035);font-size:15px}
.auth-login-card .field input::placeholder{color:#63738e;opacity:1}
.auth-login-card .field input:focus{background:#fff;border-color:var(--blue)}
.auth-login-card .auth-password-wrap input{padding-right:60px}
.auth-login-card .auth-password-toggle{right:4px;width:44px;height:44px;color:#50637e}
.auth-login-card .auth-form-assist{margin-top:-5px}
.auth-login-card .btn{min-height:48px;border-radius:11px}
.auth-login-card .auth-switch-link{margin:18px 0 0;text-align:center;font-size:14px}
@media(max-width:480px){.auth-card.auth-login-card{padding:28px 22px}.auth-login-card h1{font-size:22px}}

/* Invitation: one direct form for the invited email. */
.auth-invite-card .invite-company{margin:12px 0 8px;text-align:center;font-size:15px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}
.auth-invite-card .invite-role{text-align:center}
.auth-invite-card .invite-account-note{margin:18px 0 0;text-align:center;font-size:14px}
.auth-invite-card .invite-password-hint{margin:-4px 0 0;font-size:12px;line-height:1.5}
.auth-invite-card input[readonly]{background:#f0f3f8;color:#586781;cursor:default}
.auth-invite-card .invite-code-fallback{margin-top:22px;font-size:13px}
.auth-invite-card .invite-code-fallback summary{cursor:pointer;color:var(--blue)}
.auth-invite-card form[hidden]{display:none}

/* Public account forms: comfortable touch controls and clear plan focus. */
.auth-card .auth-form-assist a,
.auth-card .auth-switch-link a,
.auth-card .registration-login a,
.auth-card .auth-back-link a{display:inline-flex;min-height:44px;align-items:center;line-height:1.5}
.auth-card .registration-plan-card>input:focus-visible+.registration-plan-content{outline:3px solid #175fe6;outline-offset:3px}
.auth-card .registration-progress li{color:#52647e}
.auth-card .registration-progress li span{color:#52647e}
.auth-card .registration-progress li.active span{color:#fff}
@media(max-width:767px){
  .auth-card.auth-login-card .field input{font-size:16px}
  .auth-card .registration-heading{margin-bottom:14px}
  .auth-card .registration-progress{margin-bottom:20px}
}
