.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:100%;max-width:400px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:40px 36px 36px;display:flex;flex-direction:column;gap:20px}.auth-card .brand-logo{text-align:center;display:block;font-size:1.5rem}.auth-heading{font-family:var(--font-display);font-size:1.5rem;font-weight:500;margin:0;text-align:center;color:var(--text-soft)}.auth-error{margin:0;padding:10px 14px;background:#ff84841a;border:1px solid rgba(255,132,132,.3);border-radius:var(--radius-sm);color:var(--danger);font-size:.875rem}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-label{display:flex;flex-direction:column;gap:6px;font-size:.8125rem;color:var(--muted);letter-spacing:.03em}.auth-input{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-main);font-size:.9375rem;padding:10px 14px;outline:none;transition:border-color .15s}.auth-input:focus{border-color:var(--accent)}.auth-btn{margin-top:6px;width:100%}.auth-switch{margin:0;text-align:center;font-size:.875rem;color:var(--muted)}.auth-switch a{color:var(--accent);text-decoration:none}.auth-switch a:hover{text-decoration:underline}
