:root{--g1: #ff6ad5;--g2: #9b5de5;--g3: #00bbf9;--g4: #00f5d4;--g5: #fee440}@keyframes move1{0%{transform:translate(0) scale(1);opacity:.3;background-color:var(--g1)}25%{transform:translate(60px,30px) scale(1.05);opacity:.35;background-color:color-mix(in srgb,var(--g1),var(--g2))}50%{transform:translate(120px,60px) scale(1.1);opacity:.4;background-color:var(--g2)}75%{transform:translate(60px,30px) scale(1.05);opacity:.35;background-color:color-mix(in srgb,var(--g1),var(--g2))}to{transform:translate(0) scale(1);opacity:.3;background-color:var(--g1)}}@keyframes move2{0%{transform:translate(0) scale(1);opacity:.3;background-color:var(--g2)}25%{transform:translate(-45px,75px) scale(1.1);opacity:.35;background-color:color-mix(in srgb,var(--g2),var(--g3))}50%{transform:translate(-90px,150px) scale(1.2);opacity:.4;background-color:var(--g3)}75%{transform:translate(-45px,75px) scale(1.1);opacity:.35;background-color:color-mix(in srgb,var(--g2),var(--g3))}to{transform:translate(0) scale(1);opacity:.3;background-color:var(--g2)}}@keyframes move3{0%{transform:translate(0) scale(1);opacity:.3;background-color:var(--g3)}25%{transform:translate(30px,-60px) scale(.95);opacity:.35;background-color:color-mix(in srgb,var(--g3),var(--g4))}50%{transform:translate(60px,-120px) scale(.9);opacity:.4;background-color:var(--g4)}75%{transform:translate(30px,-60px) scale(.95);opacity:.35;background-color:color-mix(in srgb,var(--g3),var(--g4))}to{transform:translate(0) scale(1);opacity:.3;background-color:var(--g3)}}@keyframes move4{0%{transform:translate(0) scale(1);opacity:.3;background-color:var(--g4)}25%{transform:translate(-75px,-30px) scale(1.05);opacity:.35;background-color:color-mix(in srgb,var(--g4),var(--g5))}50%{transform:translate(-150px,-60px) scale(1.1);opacity:.4;background-color:var(--g5)}75%{transform:translate(-75px,-30px) scale(1.05);opacity:.35;background-color:color-mix(in srgb,var(--g4),var(--g5))}to{transform:translate(0) scale(1);opacity:.3;background-color:var(--g4)}}@keyframes move5{0%{transform:translate(0) scale(1);opacity:.3;background-color:var(--g5)}25%{transform:translate(45px,45px) scale(1.1);opacity:.35;background-color:color-mix(in srgb,var(--g5),var(--g1))}50%{transform:translate(90px,90px) scale(1.2);opacity:.4;background-color:var(--g1)}75%{transform:translate(45px,45px) scale(1.1);opacity:.35;background-color:color-mix(in srgb,var(--g5),var(--g1))}to{transform:translate(0) scale(1);opacity:.3;background-color:var(--g5)}}@media(prefers-reduced-motion:reduce){.gradient-backdrop>div{animation:none!important}}.gradient-backdrop{position:fixed;inset:-20vmax;z-index:-1;pointer-events:none;filter:blur(80px) saturate(120%)}.gradient-backdrop>div{position:absolute;border-radius:50%;opacity:.3;mix-blend-mode:screen}.g1{width:40vmax;height:40vmax;top:18%;left:22%;animation:move1 10s ease-in-out infinite alternate}.g2{width:36vmax;height:36vmax;top:28%;right:18%;animation:move2 12s ease-in-out infinite alternate}.g3{width:44vmax;height:44vmax;bottom:18%;left:28%;animation:move3 13s ease-in-out infinite alternate}.g4{width:38vmax;height:38vmax;bottom:25%;right:25%;animation:move4 11s ease-in-out infinite alternate}.g5{width:30vmax;height:30vmax;top:50%;left:50%;transform:translate(-50%,-50%);animation:move5 12s ease-in-out infinite alternate}*{box-sizing:border-box}body{margin:0;color:#191f28;background:#f8fafc;font-family:ui-sans-serif,system-ui,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.auth-page{position:relative;isolation:isolate;min-height:100dvh;display:grid;place-items:center;padding:24px 16px;overflow:hidden}.auth-card{width:100%;max-width:448px;padding:32px;border-radius:16px;border:1px solid #0000000d;background:#ffffffb3;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 10px 30px #00000012}.auth-brand{margin:0 0 32px}.auth-brand svg{display:block;width:140px;height:28px;margin:0 auto;overflow:visible}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:#f1f3f5;border-radius:8px;margin-bottom:24px}.auth-tabs button{border:0;border-radius:5px;background:transparent;padding:9px;color:#6b7684;cursor:pointer}.auth-tabs button[aria-pressed=true]{background:#fff;color:#191f28;box-shadow:0 1px 3px #00000015}fieldset{border:0;margin:0;padding:0;display:grid;gap:18px;min-width:0}label{display:grid;gap:8px;font-size:14px;font-weight:500}input{min-width:0;width:100%;border:1px solid #dce1e7;background:#fffc;border-radius:6px;padding:11px 12px;color:#191f28}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #3182f680;outline-offset:2px}.password-field{position:relative;display:block;margin-top:8px}.password-field input{padding-right:64px}.visibility{position:absolute;right:6px;top:5px;bottom:5px;border:0;background:transparent;color:#6b7684;cursor:pointer;padding:0 8px;font-size:12px}.auth-submit{border:0;border-radius:6px;padding:12px;background:#191f28;color:#fff;font-weight:600;cursor:pointer}.moonble-spinner{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:middle;animation:moonble-spin .7s linear infinite}@keyframes moonble-spin{to{transform:rotate(360deg)}}button:disabled,fieldset:disabled{opacity:.6}button:disabled{cursor:default}.auth-hint{margin:-10px 0 0;font-size:12px;color:#6b7684}.auth-link{display:block;margin:18px auto 0;padding:0;border:0;background:transparent;text-align:center;color:#6b7684;font-size:13px;cursor:pointer;text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-separator{height:1px;margin:28px 0 20px;background:#dce1e7}.auth-create{display:block;padding:11px 12px;border:1px solid #3182f6;border-radius:999px;color:#1b64da;font-size:14px;font-weight:600;text-align:center;text-decoration:none}.auth-create:hover{background:#e8f3ff}.auth-message,.auth-error{font-size:14px;line-height:1.6;padding:12px;border-radius:6px;overflow-wrap:anywhere}.auth-message{background:#e8f3ff;color:#1b64da}.auth-error{background:#feecee;color:#b42318}h2{font-size:18px;text-align:center;margin-bottom:24px}@media(max-width:480px){.auth-card{padding:24px}}
