@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700;800;900&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&display=swap";#root{max-width:auto;margin:0 auto;padding:2rem;text-align:center;background-color:#000}body{margin:0;font-family:Poppins,sans-serif}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--black: #070709;--deep: #0b0c10;--surface: #10111a;--card: #13141f;--border: rgba(255,255,255,.07);--blue: #2563eb;--blue-glow: rgba(37,99,235,.35);--blue-soft: #3b82f6;--violet: #7c3aed;--violet-glow: rgba(124,58,237,.3);--accent: #818cf8;--text: #f1f5f9;--muted: #64748b;--subtle: #94a3b8}html:has(.auth-page-exact),html:has(.auth-page-exact) body{height:100%;background:var(--black);color:var(--text);font-family:DM Sans,sans-serif;overflow:hidden}#bg-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.grid-overlay{position:fixed;inset:0;background-image:linear-gradient(rgba(37,99,235,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.04) 1px,transparent 1px);background-size:60px 60px;pointer-events:none;z-index:0}.glow-blue{position:fixed;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.18) 0%,transparent 70%);top:-200px;left:-100px;pointer-events:none;z-index:0;animation:drift 12s ease-in-out infinite alternate}.glow-violet{position:fixed;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.15) 0%,transparent 70%);bottom:-150px;right:-100px;pointer-events:none;z-index:0;animation:drift 15s ease-in-out infinite alternate-reverse}@keyframes drift{0%{transform:translate(0)}to{transform:translate(30px,20px)}}.layout{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;height:100vh}.left-panel{display:flex;flex-direction:column;justify-content:center;padding:60px 70px;position:relative;overflow:hidden}.left-panel:after{content:"";position:absolute;right:0;top:10%;bottom:10%;width:1px;background:linear-gradient(to bottom,transparent,rgba(37,99,235,.4),rgba(124,58,237,.3),transparent)}.brand{display:flex;align-items:center;gap:12px;margin-bottom:64px;animation:fadeUp .6s ease both}.brand-icon{width:38px;height:38px;background:linear-gradient(135deg,var(--blue),var(--violet));border-radius:10px;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 0 20px var(--blue-glow)}.brand-icon svg{width:20px;height:20px}.brand-name{font-family:Playfair Display,serif;font-weight:800;font-size:20px;letter-spacing:-.5px;background:linear-gradient(90deg,#fff 40%,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-text{animation:fadeUp .7s ease .1s both}.hero-eyebrow{font-size:11px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:18px;display:flex;align-items:center;gap:10px}.hero-eyebrow:before{content:"";display:block;width:24px;height:1px;background:var(--accent)}.hero-headline{font-family:Playfair Display,serif;font-size:clamp(32px,4vw,48px);font-weight:800;line-height:1.12;letter-spacing:-.5px;margin-bottom:20px;color:#fff}.hero-headline span{background:linear-gradient(90deg,var(--blue-soft),var(--accent),var(--violet));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-sub{font-size:15px;color:var(--subtle);line-height:1.65;max-width:340px;font-weight:300}.viz-container{margin-top:52px;animation:fadeUp .8s ease .2s both}.viz-bars{display:flex;align-items:flex-end;gap:4px;height:60px}.viz-bar{flex:1;border-radius:3px 3px 0 0;background:linear-gradient(to top,var(--blue),var(--violet));opacity:.7;animation:barPulse var(--dur, 1.2s) ease-in-out infinite alternate;animation-delay:var(--del, 0s)}@keyframes barPulse{0%{transform:scaleY(.2);opacity:.4}to{transform:scaleY(1);opacity:.85}}.viz-label{margin-top:14px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}.viz-label:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#22c55e;box-shadow:0 0 8px #22c55e;animation:blink 1.5s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.right-panel{display:flex;align-items:center;justify-content:center;padding:40px;animation:fadeIn .8s ease .15s both}.auth-card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--border);border-radius:24px;padding:40px;position:relative;box-shadow:0 0 0 1px #ffffff0a,0 30px 80px #00000080,0 0 60px #2563eb14,inset 0 1px #ffffff12}.auth-card:before{content:"";position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),rgba(167,139,250,.4),transparent);border-radius:1px}.tab-switcher{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border-radius:12px;padding:4px;margin-bottom:32px;border:1px solid var(--border);position:relative}.tab-switcher:before{content:"";position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:#fff;border-radius:9px;transition:transform .38s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #00000059;z-index:0}.tab-switcher.on-signup:before{transform:translate(calc(100% + 4px))}.tab-btn{padding:10px;border:none;background:none;color:var(--muted);font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;border-radius:9px;cursor:pointer;transition:color .3s ease;position:relative;z-index:1}.tab-btn.active{color:#0a0a0f;font-weight:600}.form-title{font-family:Playfair Display,serif;font-size:22px;font-weight:700;letter-spacing:-.5px;margin-bottom:6px;color:#fff}.form-sub{font-size:13px;color:var(--muted);margin-bottom:28px}.form-group{margin-bottom:16px;position:relative}.form-label{display:block;font-size:12px;font-weight:500;letter-spacing:.5px;color:var(--subtle);margin-bottom:8px;text-transform:uppercase}.form-input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:13px 16px;color:var(--text);font-family:DM Sans,sans-serif;font-size:14.5px;outline:none;transition:all .25s ease}.form-input::placeholder{color:var(--muted)}.form-input:focus{border-color:#ffffff4d;background:#ffffff0d;box-shadow:0 0 0 3px #a78bfa1a,0 0 20px #7c3aed0f}.input-icon{position:absolute;right:14px;bottom:13px;color:var(--muted);pointer-events:none}.form-row{display:flex;justify-content:flex-end;margin-bottom:22px}.forgot-link{font-size:12.5px;color:#a78bfacc;text-decoration:none;opacity:.8;transition:opacity .2s}.forgot-link:hover{opacity:1}.btn-primary{width:100%;padding:14px;border:none;border-radius:12px;background:#fff;color:#0a0a0f;font-family:DM Sans,sans-serif;font-size:15px;font-weight:600;letter-spacing:.2px;cursor:pointer;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s,background .2s;box-shadow:0 2px 16px #ffffff1f,0 0 30px #7c3aed1a}.btn-primary:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.6) 0%,transparent 55%);border-radius:12px}.btn-primary:after{content:"";position:absolute;top:-50%;left:-60%;width:55%;height:200%;background:#ffffff4d;transform:skew(-20deg);transition:left .5s ease}.btn-primary:hover:after{left:130%}.btn-primary:hover{transform:translateY(-1px);background:#f0f0ff;box-shadow:0 6px 28px #ffffff2e,0 0 40px #7c3aed2e}.btn-primary:active{transform:translateY(0)}.divider{display:flex;align-items:center;gap:12px;margin:22px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border)}.divider span{font-size:12px;color:var(--muted)}.social-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.btn-social{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:11px;color:var(--subtle);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all .22s ease}.btn-social:hover{border-color:#ffffff38;color:#fff;background:#ffffff14;box-shadow:0 0 18px #7c3aed1a}.btn-social svg{width:16px;height:16px}.panels-wrapper{position:relative}.form-panel{transition:opacity .35s ease,transform .35s ease}.form-panel.hidden{position:absolute;top:0;left:0;right:0;opacity:0;transform:translateY(8px);pointer-events:none}.form-panel.active{opacity:1;transform:translateY(0);pointer-events:auto}.name-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes rippleAnim{to{transform:scale(2.5);opacity:0}}#root:has(.auth-page-exact){min-height:100%;height:100%}.auth-page-exact{min-height:100vh;height:100%;background:var(--black);color:var(--text);font-family:DM Sans,sans-serif;overflow:hidden;position:relative}.auth-server-error{margin-bottom:16px;padding:12px 14px;border-radius:12px;background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#fecaca;font-size:13px;line-height:1.5}.auth-field-error{margin:-4px 0 10px;font-size:12px;color:#f87171}.name-row .auth-field-error{margin-top:4px}.auth-layout-center{display:flex!important;grid-template-columns:none!important;justify-content:center;align-items:center}.auth-layout-center .right-panel{animation:none!important;width:100%;max-width:560px;padding:40px 24px}.panels-wrapper{position:static!important}.form-panel{transition:none!important}.form-panel.hidden{position:static!important;opacity:1!important;transform:none!important;pointer-events:none!important;display:none!important}.form-panel.active{opacity:1!important;transform:none!important;pointer-events:auto!important;display:block!important}
