:root{--app-background:#f4f2f9;--app-surface:#fff;--app-text:#2c2540;--app-muted:#6b6880;--app-soft:#b8b0ca;--app-border:#3c3c431a;--app-input-border:#b8b0ca;--app-bloom:#8b72d4;--app-link:#7054b4;--app-bloom-light:#c9b8f0;--app-bloom-mist:#ede8ff;--app-bloom-deep:#3d2d6b;--app-action:#7054b4;--app-on-action:#fff;--app-strong-action:#2c2540;--app-on-strong-action:#fff;--app-spark-mist:#edfaf8;--app-spark-text:#007c74;--app-ignite-mist:#fff0eb;--app-ignite-text:#a63c16;--app-danger:#b0362a;--app-danger-surface:#fff0eb;--app-nav:#fafaf8d1;--app-shadow:0 1px 2px #2c25400d, 0 14px 34px -18px #2c254033}:root.dark{--app-background:#0b0713;--app-surface:#17101f;--app-text:#f5f3fa;--app-muted:#a9a2bc;--app-soft:#6f6784;--app-border:#ffffff17;--app-input-border:#6f6784;--app-bloom:#a78bea;--app-link:#a78bea;--app-bloom-light:#c9b8f0;--app-bloom-mist:#a78bea24;--app-bloom-deep:#c9b8f0;--app-action:#a78bea;--app-on-action:#17101f;--app-strong-action:#a78bea;--app-on-strong-action:#17101f;--app-spark-mist:#00b4a824;--app-spark-text:#55d6c9;--app-ignite-mist:#ff6b3524;--app-ignite-text:#ffa17f;--app-danger:#ff9d91;--app-danger-surface:#ff6b351f;--app-nav:#17101fd1;--app-shadow:0 1px 2px #0003, 0 14px 34px -18px #0006}html,body{background:var(--app-background);color:var(--app-text)}body{margin:0;font-family:Outfit,system-ui,sans-serif}html .email-auth{background:var(--app-background);color:var(--app-text);color-scheme:inherit}html .email-auth .email-auth-card{background:var(--app-surface);box-shadow:var(--app-shadow)}html .email-auth .email-auth-brand,html .email-auth a{color:var(--app-link)}html .email-auth input:not([type=checkbox]){background:var(--app-surface);color:var(--app-text);border-color:var(--app-input-border)}html .email-auth input::placeholder{color:var(--app-muted)}html .email-auth button{background:var(--app-action);color:var(--app-on-action)}html .email-auth .email-auth-secondary{color:var(--app-link);border-color:var(--app-input-border);background:0 0}html .email-auth .email-auth-error{color:var(--app-danger)}.loading-screen{box-sizing:border-box;width:100%;color:var(--app-text);text-align:center;place-items:center;font-family:Outfit,system-ui,sans-serif;line-height:1.5;display:grid}.loading-screen *,.loading-screen :before,.loading-screen :after{box-sizing:border-box}.loading-screen--fullscreen{min-height:100svh;padding:max(32px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(32px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));background:var(--app-background)}.loading-screen--content{min-height:clamp(12rem,36svh,22rem);padding:32px 16px}.loading-screen-content{flex-direction:column;align-items:center;gap:20px;width:100%;max-width:24rem;display:flex}.loading-globe{isolation:isolate;border-radius:50%;flex:none;width:80px;height:80px;animation:4s ease-in-out infinite loading-breathe;position:relative}.loading-globe:before{content:"";z-index:-1;background:radial-gradient(circle, var(--app-bloom-mist) 15%, transparent 70%);border-radius:50%;position:absolute;inset:-18px}.loading-globe img{width:100%;height:100%;display:block}.loading-screen--content .loading-globe{width:48px;height:48px}.loading-screen .loading-wordmark{letter-spacing:.02em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:32px;font-weight:500;line-height:1.2}.loading-status{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.loading-screen .loading-label{color:var(--app-muted);overflow-wrap:anywhere;margin:0;font-size:14px}.loading-dots{gap:6px;height:6px;display:flex}.loading-dots span{background:var(--app-bloom);border-radius:50%;width:5px;height:5px;animation:1.5s ease-in-out infinite loading-dot}.loading-dots span:nth-child(2){animation-delay:.18s}.loading-dots span:nth-child(3){animation-delay:.36s}.loading-screen [hidden]{display:none}.loading-recovery{flex-direction:column;align-items:center;gap:20px;display:flex}.loading-screen .loading-reload{background:var(--app-action);min-height:44px;color:var(--app-on-action);font:inherit;cursor:pointer;border:0;border-radius:999px;padding:10px 28px;font-size:14px;font-weight:500}.loading-reload:focus-visible{outline:3px solid var(--app-bloom);outline-offset:4px}.loading-screen.is-error .loading-globe{animation:none}@keyframes loading-breathe{0%,to{transform:scale(.98)}50%{transform:scale(1.03)}}@keyframes loading-dot{0%,to{opacity:.35}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.loading-globe,.loading-dots span{animation:none}}
