.auth-screen{background:var(--background);min-height:100dvh;color:var(--foreground);place-items:center;padding:48px 24px;display:grid}.auth-card{border:1px solid var(--border);background:var(--card);border-radius:24px;width:min(100%,440px);padding:40px 36px 0;box-shadow:0 24px 80px #0003}.auth-header{text-align:center}.auth-emblem{border:1px solid var(--border);background:var(--secondary);width:48px;height:48px;color:var(--primary);border-radius:14px;place-items:center;margin:0 auto 24px;display:grid;box-shadow:inset 0 1px #ffffff08}.auth-emblem svg{width:24px;height:24px}.auth-header h1{color:var(--primary);letter-spacing:-.04em;margin:0;font-size:clamp(28px,5vw,32px);font-weight:500;line-height:1.2}.auth-description{color:var(--muted-foreground-emphasis);margin:12px 0 0;font-size:14px;line-height:1.6}.auth-card form{gap:20px;margin-top:32px;display:grid}.auth-field{gap:8px;font-size:13px;font-weight:500;display:grid}.auth-field input{box-sizing:border-box;border:1px solid var(--input);background:var(--background);width:100%;min-width:0;height:48px;color:var(--foreground);font:inherit;border-radius:10px;padding:0 14px;font-size:16px;font-weight:400;transition:border-color .15s,box-shadow .15s}.auth-field input::placeholder{color:var(--placeholder);font-size:14px}.auth-field input:hover:not(:disabled){border-color:var(--input-focus)}.auth-field input:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb, var(--ring) 18%, transparent);outline:none}.auth-card button:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.auth-password{position:relative}.auth-password input{padding-right:68px}.auth-password-toggle{min-width:56px;height:40px;color:var(--muted-foreground-emphasis);border-radius:6px;font-size:12px;font-weight:500;position:absolute;top:4px;right:4px}.auth-password-toggle:hover:not(:disabled){background:var(--accent);color:var(--primary)}.auth-hint{color:var(--muted-foreground-emphasis);margin:0;font-size:12px;font-weight:400;line-height:1.5}.auth-submit{background:var(--primary);min-height:48px;color:var(--primary-foreground);border-radius:10px;justify-content:center;align-items:center;gap:10px;margin-top:4px;padding:12px 16px;font-size:14px;font-weight:600;transition:background .15s;display:flex}.auth-submit:hover:not(:disabled){background:var(--primary-hover)}.auth-card button:disabled,.auth-card input:disabled{opacity:.6;cursor:wait}.auth-footer{border-top:1px solid var(--border);text-align:center;margin-top:28px;padding:22px 0}.auth-switch{min-height:32px;color:var(--muted-foreground-emphasis);border-radius:4px;font-size:13px;line-height:1.6}.auth-switch span{color:var(--primary);font-weight:500}.auth-switch:hover:not(:disabled) span{text-underline-offset:4px;text-decoration:underline}.auth-error{border:1px solid var(--destructive-border);background:color-mix(in srgb, var(--destructive) 6%, transparent);color:var(--destructive);border-radius:10px;margin:0;padding:12px 14px;font-size:13px;line-height:1.6}.auth-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (width<=480px){.auth-screen{padding:24px 16px}.auth-card{border-radius:20px;padding:28px 24px 0}}@media (prefers-reduced-motion:reduce){.auth-field input,.auth-submit{transition:none}.auth-spinner{animation:none}}
