.iframe-waiting main,.iframe-waiting dialog,.iframe-waiting #toast{display:none!important}
#iframe-auth-gate{display:none}
.iframe-waiting #iframe-auth-gate{display:flex;min-height:100dvh;box-sizing:border-box;padding:24px;flex-direction:column;justify-content:center;align-items:center;gap:16px;text-align:center;background:#f8fafc;color:#1e293b;font-family:Inter,Arial,sans-serif}
.iframe-loading-circle{width:36px;height:36px;box-sizing:border-box;border:3px solid #e2e8f0;border-top-color:#4f46e5;border-radius:50%;animation:iframeLoadingSpin .85s linear infinite}
#iframe-auth-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#iframe-auth-gate[data-error="true"] .iframe-loading-circle{display:none}
#iframe-auth-gate[data-error="true"] #iframe-auth-status{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none;white-space:normal;font-size:15px;line-height:24px;color:#64748b;max-width:420px}
@keyframes iframeLoadingSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.iframe-loading-circle{animation:none}}
#iframe-auth-retry{min-height:44px;padding:10px 18px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#475569;font:500 14px/24px Inter,Arial,sans-serif;cursor:pointer}
#iframe-auth-retry:focus-visible{outline:3px solid #4f46e5;outline-offset:3px}
#iframe-sync-status{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:16px;right:16px;z-index:30;max-width:440px;margin:0 auto;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569;font:14px/20px Inter,Arial,sans-serif;box-shadow:0 4px 16px #1e293b15}
.iframe-waiting #iframe-sync-status{display:none}
