.auth-page{place-items:center;min-height:100vh;padding:40px 16px;display:grid;position:relative;overflow:hidden}.auth-card{background:var(--card);border:1px solid var(--border);border-radius:20px;width:100%;max-width:420px;padding:32px 28px;position:relative;box-shadow:0 40px 100px -40px #8b5cf699}.auth-brand{justify-content:center;margin-bottom:24px}.auth-card h1{text-align:center;margin:0 0 6px;font-size:24px}.auth-card .sub{text-align:center;color:var(--muted);margin-bottom:24px;font-size:15px}.auth-form{gap:14px;display:grid}.auth-form label{gap:6px;font-size:14px;font-weight:500;display:grid}.auth-form input{background:var(--bg-2);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:10px;outline:none;padding:12px 14px;font-size:15px;transition:all .15s}.auth-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #8b5cf640}.auth-form button{margin-top:6px}.auth-form button:disabled{opacity:.6;cursor:wait}.auth-msg{border-radius:10px;padding:10px 12px;font-size:14px}.auth-msg.err{color:#fca5a5;background:#ef44441f;border:1px solid #ef444459}.auth-msg.ok{color:#86efac;text-align:center;background:#22c55e1f;border:1px solid #22c55e59}.auth-links{text-align:center;color:var(--muted);gap:8px;margin-top:20px;font-size:14px;display:grid}.auth-links a{color:var(--primary-2);font-weight:600}
