.auth-main{max-width:30rem;margin:clamp(2rem,8vh,5rem) auto;padding:0 1rem}.auth-main section{padding:clamp(1.5rem,5vw,2.5rem);border-radius:20px}.auth-main input{width:100%;box-sizing:border-box}.auth-main strong{overflow-wrap:anywhere}
.auth-card h1{font-size:1.65rem;margin:0 0 .6rem}.auth-subtitle{color:var(--ui-muted);margin:0 0 1.8rem}.auth-card #loginform{display:grid;gap:8px}.auth-card #loginform[hidden]{display:none}.auth-card #loginform label{margin-top:8px}.auth-card #loginform input{border-radius:10px;padding:12px}.auth-card button{min-height:48px;border-radius:10px;font:inherit}.auth-card #submit,.auth-card #passkey-login{width:100%;margin-top:16px}.auth-secondary{background:var(--ui-soft,var(--ui-bg));color:var(--ui-text);border:1px solid var(--ui-line)}
.auth-remember{display:flex;flex-direction:row;align-items:center;gap:10px;margin:20px 0;font-size:.9rem}.auth-main .auth-remember input{width:18px;min-height:18px;height:18px;margin:0;flex:none}.auth-remember[hidden]{display:none}.auth-recovery{text-align:center;margin:22px 0 0}.auth-card #message:empty{display:none}.auth-card #message{margin-top:20px}.auth-dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.auth-dialog-actions button{min-height:46px}.auth-dialog-actions .auth-secondary{color:var(--ui-text)}#passkey-offer{width:min(440px,calc(100vw - 48px));box-sizing:border-box}#passkey-offer::backdrop{background:#19151e80}#passkey-offer-feedback:empty{display:none}

.auth-main .auth-option{display:flex;align-items:center;justify-content:center;gap:.65rem;min-height:48px;width:100%;padding:.7rem 1rem;box-sizing:border-box;border-radius:10px;text-decoration:none;text-align:center;font:inherit}
.auth-main .auth-option[hidden]{display:none}
.auth-card .auth-option-primary{background:var(--ui-primary,#c84b40);color:#fff;font-weight:700}
.auth-option-icon{width:1.25rem;height:1.25rem;flex:none}
#resident-code-login{margin-bottom:1rem}
#resident-code-alternate{margin-top:1rem;color:var(--ui-text)}
.auth-main .auth-option:focus-visible{outline:2px solid currentColor;outline-offset:3px}
