html,body{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}body{min-height:100vh;display:grid;place-items:center;background:var(--bg, #090e17);color:var(--text, #f3f6fb);font-family:ui-sans-serif,-apple-system,system-ui,sans-serif;margin:0;padding:24px 16px;box-sizing:border-box}.auth-card{box-sizing:border-box;width:min(486px,100%);min-width:0;background:var(--bg-elev-1, #111827);border:1px solid var(--border, #273449);border-radius:12px;padding:32px;box-shadow:0 20px 60px #00000080}.auth-card h1{margin:0 0 6px;font-size:22px;font-weight:700}.auth-card p.sub{margin:0 0 24px;color:var(--text-mute, #8f9cb0);font-size:13.5px}.auth-tabs{display:flex;gap:4px;background:var(--bg, #090e17);border:1px solid var(--border, #273449);border-radius:8px;padding:3px;margin-bottom:20px}.auth-tabs button{flex:1;padding:8px 12px;background:transparent;color:var(--text-mute, #8f9cb0);border:0;border-radius:6px;font-weight:600;cursor:pointer;font-size:13px}.auth-tabs button.active{background:var(--bg-elev-3, #202b40);color:var(--text, #f3f6fb)}:focus-visible{outline:3px solid var(--accent-ring, rgb(113, 92, 255, .38));outline-offset:2px}.auth-form label{display:block;font-size:12px;color:var(--text-mute, #8f9cb0);margin:12px 0 4px;text-transform:uppercase;letter-spacing:.5px}.auth-form input{width:100%;box-sizing:border-box;padding:10px 12px;background:var(--bg, #090e17);border:1px solid var(--border, #273449);border-radius:6px;color:var(--text, #f3f6fb);font-size:14px;outline:none}.auth-form input:focus{border-color:var(--accent, #715cff)}.auth-form button.primary{width:100%;margin-top:20px;padding:11px;background:var(--accent, #715cff);border:0;border-radius:6px;color:#fff;font-weight:600;font-size:14px;cursor:pointer}.auth-form button.primary:hover{background:var(--accent-hi, #9383ff)}.auth-form button.primary:disabled{opacity:.6;cursor:not-allowed}.auth-msg{margin-top:12px;font-size:12.5px;min-height:18px}.auth-msg.err{color:var(--danger-text, #fca5a5)}.auth-msg.ok{color:var(--success, #10b981)}.auth-foot{margin-top:20px;font-size:12px;color:var(--text-mute, #8f9cb0);text-align:center;line-height:1.6}.auth-foot a{color:var(--accent, #715cff);text-decoration:none}.auth-foot .forgot-password-link{color:var(--danger, #ef4444);font-size:12.5px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.auth-foot .forgot-password-link:hover{color:var(--danger-text, #fca5a5)}.auth-foot .forgot-password-link:focus-visible{color:var(--danger-text, #fca5a5)}.trial-note{margin-top:14px;padding:10px 12px;background:var(--accent-soft, rgb(113, 92, 255, .15));border:1px solid var(--accent-ring, rgb(113, 92, 255, .38));border-radius:6px;font-size:12.5px;color:var(--text-dim, #b3bfd0)}.oauth-btns{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px;background:var(--bg, #090e17);border:1px solid var(--border, #273449);border-radius:6px;color:var(--text, #f3f6fb);font-size:13.5px;font-weight:600;text-decoration:none;cursor:pointer}.oauth-btn:hover{background:var(--bg-elev-2, #172033);border-color:var(--border-strong, #3a4963)}.oauth-btn svg{width:18px;height:18px;flex:none}.oauth-sep{display:flex;align-items:center;gap:10px;margin:14px 0 12px;color:var(--text-mute, #8f9cb0);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.oauth-sep:before,.oauth-sep:after{content:"";flex:1;height:1px;background:var(--border, #273449)}
