.auth-dialog,.site-login-dialog{margin:auto;inset:0;border:1px solid #e6ebf4;border-radius:23px;color:#1d2942;background:#fff;padding:32px;width:min(460px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 30px 100px #14234140;outline:none}
.auth-dialog[open],.site-login-dialog[open]{animation:authAppear .28s cubic-bezier(.2,.75,.2,1) both}
.auth-dialog::backdrop,.site-login-dialog::backdrop{background:#17243b65;backdrop-filter:blur(9px);animation:authFade .22s ease}
.auth-dialog-close{position:absolute;top:12px;left:12px;width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:10px;background:#f2f4f9;color:#6d7b91;font-size:25px;line-height:1;cursor:pointer;z-index:2}
.auth-dialog-close:hover{background:#e7ebf5}.auth-dialog-close:focus-visible{outline:3px solid #7c8ef0;outline-offset:2px}
.auth-dialog .auth-card,.auth-dialog .admin-auth-card{width:100%;padding:12px 0 0}.auth-dialog .auth-heading h2{font-size:27px}.auth-dialog .auth-heading p{font-size:14px}.auth-dialog .account-form label{font-size:14px}.auth-dialog .account-form input,.auth-dialog .account-form select{font-size:16px;height:51px}.auth-dialog .account-form .button{font-size:15px}.auth-dialog .auth-tabs button{font-size:14px}.auth-dialog .form-description,.auth-dialog .account-alert{font-size:14px}.auth-dialog .form-consent,.auth-dialog .auth-foot,.auth-dialog .resend-row{font-size:12px}
.site-login-dialog{padding:0;width:min(520px,calc(100vw - 24px));overflow:hidden;height:min(680px,calc(100dvh - 28px))}.site-login-dialog iframe{border:0;width:100%;height:100%;display:block;background:#fff}.site-login-dialog .auth-dialog-close{top:10px;left:10px}
.embedded-auth{background:transparent;min-height:0}.embedded-auth .account-topbar,.embedded-auth .auth-aside,.embedded-auth .site-footer,.embedded-auth .auth-launch,.embedded-auth .auth-dialog-close{display:none}.embedded-auth .auth-layout,.embedded-auth .auth-side{min-height:0;background:transparent;padding:0}.embedded-auth .auth-dialog{border:0;box-shadow:none;width:100%;max-height:100dvh;border-radius:0;padding:34px 30px 24px}.embedded-auth .auth-dialog::backdrop{background:#fff;backdrop-filter:none}.embedded-auth .auth-dialog[open]{animation:none}
body:has(.auth-dialog[open]),body:has(.site-login-dialog[open]){overflow:hidden}
@keyframes authAppear{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes authFade{from{opacity:0}to{opacity:1}}
@media(max-width:560px){.auth-dialog{padding:30px 21px 22px;border-radius:18px}.auth-dialog .auth-heading h2{font-size:24px}.embedded-auth .auth-dialog{padding:38px 22px 20px}}
@media(prefers-reduced-motion:reduce){.auth-dialog[open],.site-login-dialog[open],.auth-dialog::backdrop,.site-login-dialog::backdrop{animation:none}}
.auth-dialog .admin-form label{font-size:14px}.auth-dialog .admin-form input{font-size:16px}.auth-dialog .admin-form .admin-primary{font-size:15px}.auth-dialog .admin-alert,.auth-dialog .verify-hint{font-size:14px}.auth-dialog .auth-foot{font-size:12px}
/* v27: compact, accessible mobile-first login dialog */
.auth-dialog{padding:22px 26px;width:min(460px,calc(100vw - 24px));max-height:min(720px,calc(100dvh - 20px))}
.auth-dialog .auth-card,.auth-dialog .admin-auth-card{padding-top:8px}
.auth-dialog .auth-heading{margin:8px 0 16px}
.auth-dialog .account-form{gap:12px}
.auth-dialog .account-form .back-step{max-width:100%;width:auto;min-height:35px;text-align:right;line-height:1.65;white-space:normal;overflow-wrap:anywhere;font-size:13px;padding:5px 2px}
.az27-remember{display:flex!important;align-items:center;gap:10px;font-size:14px!important;color:inherit!important;font-weight:500!important;margin:7px 0!important;cursor:pointer}
.az27-remember input{width:17px!important;height:17px!important;margin:0!important;flex:0 0 auto;accent-color:#6078e5}
.auth-dialog .admin-form .az27-remember input{width:17px;height:17px}
.auth-dialog #setupPasswordArea{display:grid;gap:9px}
.auth-dialog .account-form input[type=hidden]{display:none!important}
.az27-danger{border:1px solid #cc4452!important;color:#b42336!important;background:#fff8f8!important;border-radius:9px;padding:9px 13px;cursor:pointer}
.az27-erasure{font-size:14px;line-height:2;max-width:100%;overflow-wrap:anywhere}
.az27-erasure form{display:grid;gap:10px}
.az27-erasure input[type=password]{width:100%;max-width:360px;padding:9px;border:1px solid #ddd;border-radius:9px}
@media(max-width:560px){.auth-dialog{padding:18px 18px 22px}.auth-dialog .auth-heading{margin-top:8px}.embedded-auth .auth-dialog{padding:20px}}
