.auth-page{position:relative;min-height:calc(100vh - 116px);display:grid;place-items:center;overflow:hidden;padding:64px 18px 80px}.auth-glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,var(--accent-soft-border),transparent 68%);filter:blur(18px);pointer-events:none}.auth-card{position:relative;width:min(100%,460px);padding:38px;background:color-mix(in srgb,var(--bg-card) 94%,transparent);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md),var(--shadow-glow)}.auth-card h1{margin:18px 0 9px;font-family:var(--font-display);font-size:clamp(27px,5vw,34px);letter-spacing:-.025em}.auth-intro{margin-bottom:28px;font-size:14.5px;line-height:1.6}.auth-field,.auth-intro{color:var(--text-secondary)}.auth-field{display:block;margin-bottom:17px;font-size:13px;font-weight:600}.auth-input-wrap{height:48px;margin-top:8px;padding:0 14px;display:flex;align-items:center;gap:10px;color:var(--text-tertiary);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}.auth-input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.auth-input-wrap input{min-width:0;flex:1 1;height:100%;color:var(--text-primary);background:transparent;border:0;outline:0;font:inherit;font-weight:400}.auth-input-wrap input::placeholder{color:var(--text-tertiary)}.auth-password-toggle{width:28px;height:28px;display:grid;place-items:center;flex-shrink:0}.auth-error{margin:2px 0 16px;padding:11px 13px;color:var(--down);background:var(--down-soft);border:1px solid color-mix(in srgb,var(--down) 30%,transparent);border-radius:var(--radius-sm);font-size:13px}.auth-submit{min-height:48px;margin-top:5px}.auth-submit:disabled{cursor:wait;opacity:.7}.auth-switch{margin-top:24px;text-align:center;color:var(--text-secondary);font-size:14px}.auth-switch a{color:var(--accent);font-weight:600}@media (max-width:520px){.auth-page{padding-top:36px}.auth-card{padding:28px 22px}}