.access-recovery{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:grid;place-items:center;padding:24px;background:var(--page,#f3f0f7)}.access-recovery-card{width:min(440px,100%);box-sizing:border-box;padding:30px;border:1px solid var(--line,#e5daed);border-radius:24px;background:var(--surface,#fff);box-shadow:var(--shadow,0 18px 52px #36253f24);color:var(--text,#24152f);animation:access-recovery-enter .22s ease-out}.access-recovery-heading{display:flex;align-items:center;gap:12px}.access-recovery-mark{display:grid;place-items:center;width:38px;height:38px;flex:none;border:1px solid var(--line,#e5daed);border-radius:50%;color:var(--primary,#9c64be);font-size:22px;font-weight:700}.access-recovery h1{margin:0;font-size:20px;line-height:1.45}.access-recovery p{margin:18px 0 0;color:var(--ink-soft,#5d5365);line-height:1.75;font-size:14px;overflow-wrap:anywhere}.access-recovery-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.access-recovery-actions button,.access-recovery-banner button{min-height:44px;padding:10px 16px;border:1px solid var(--line,#e5daed);border-radius:12px;background:var(--surface,#fff);color:var(--text,#24152f);font:inherit;font-size:14px;font-weight:650;cursor:pointer}.access-recovery-actions button{flex:1;white-space:nowrap}.access-recovery-actions button:first-child{border-color:transparent;background:#8654a5;color:#fff}.access-recovery-actions button:disabled,.access-recovery-banner button:disabled{cursor:wait;opacity:.65}.access-recovery-actions button:focus-visible,.access-recovery-banner button:focus-visible{outline:3px solid #bc8ddb;outline-offset:3px}.access-recovery small{display:block;margin-top:16px;color:var(--ink-soft,#5d5365);font-size:12px;line-height:1.6}.access-recovery-banner{position:fixed;top:max(12px,env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:1900;display:flex;align-items:center;flex-wrap:wrap;gap:10px;width:max-content;max-width:calc(100% - 32px);box-sizing:border-box;padding:12px 16px;border:1px solid var(--line,#e5daed);border-radius:16px;background:var(--surface,#fff);color:var(--text,#24152f);box-shadow:var(--shadow,0 12px 32px #36253f24);font-size:14px}.access-recovery-banner span{flex:1 1 220px;line-height:1.6}@keyframes access-recovery-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.access-recovery{padding:18px}.access-recovery-card{padding:24px 20px}.access-recovery h1{font-size:19px}.access-recovery-banner{padding:12px}}@media(prefers-reduced-motion:reduce){.access-recovery-card{animation:none}}
