.auth-card [hidden],.security-card [hidden] { display:none!important; }
#authForgot { margin-top:18px; }
#recoveryResult p,.security-card p { font-size:13px; line-height:1.7; color:#716875; }
#recoveryResultCode,.security-code { box-sizing:border-box; width:100%; min-height:88px; padding:12px; border:1px solid #e5dcea; border-radius:10px; background:#faf7fc; color:#59386b; font:14px/1.8 monospace; resize:none; }
#recoveryCopy { margin:12px 0; padding:9px 14px; border:1px solid #e5dcea; background:white; border-radius:8px; cursor:pointer; }
.security-card { padding:24px; border-top:1px solid #e7e2ea; }
.security-card h2 { font-size:18px; margin:0 0 16px; }
.security-card form { display:grid; gap:10px; max-width:420px; }
.security-card label { display:grid; gap:6px; font-size:13px; }
.security-card input { box-sizing:border-box; width:100%; padding:10px 12px; border:1px solid #ddd; border-radius:8px; }
.security-card button { padding:10px 14px; border:1px solid #ded5e4; border-radius:8px; background:#f4edf8; color:#5c386d; cursor:pointer; }
.security-card button:disabled { opacity:.5; cursor:wait; }
.security-actions { display:flex; flex-wrap:wrap; gap:8px; }
.security-card [role="alert"] { color:#9f3f48; }
.auth-social { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 22px; }
.auth-social-button { display:flex; align-items:center; justify-content:center; gap:9px; min-height:46px; padding:10px 12px; border:1px solid #ddd5e3; border-radius:12px; color:#28232b; background:rgba(255,255,255,.84); font-family:inherit; font-size:13px; font-weight:500; line-height:1.3; cursor:pointer; transition:border-color .18s,background .18s; }
.auth-card #passwordFields,.auth-card #invitationFields,.auth-card #confirmFields,.auth-card #recoveryFields { display:grid; gap:.7rem; }
.auth-social-button svg { width:19px; height:19px; flex:none; }
.auth-social-button:hover:not(:disabled) { border-color:#a48bb1; background:#fbf7ff; }
.auth-social-button:focus-visible { outline:2px solid #8d69a1; outline-offset:3px; }
.auth-social-button:disabled { opacity:.5; cursor:not-allowed; }
.auth-divider { grid-column:1/-1; display:flex; align-items:center; gap:14px; margin-top:13px; color:#918995; font-size:11px; }
.auth-divider::before,.auth-divider::after { content:''; height:1px; background:#e6dfe9; flex:1; }
.auth-oauth-note { font-size:13px; color:#716875; line-height:1.7; margin:0 0 20px; }
.oauth-connections { display:grid; gap:12px; }
.oauth-connection { display:flex; gap:12px; align-items:center; justify-content:space-between; border:1px solid #e9e1ed; border-radius:12px; padding:14px; }
.oauth-connection small { display:block; margin-top:5px; color:#807587; }
.oauth-connections input { max-width:420px; }
@media(max-width:420px) { .auth-social-button { padding:10px 8px; gap:7px; } .oauth-connection { gap:8px; padding:12px; } }
