.auth-main{min-height:72vh;display:grid;place-items:center;padding:clamp(32px,6vw,80px) 20px;font-size:16px}
.auth-card{width:100%;max-width:480px;padding:clamp(24px,5vw,42px);background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:var(--radius);box-shadow:var(--shadow)}
.auth-card h1{font-size:2rem;line-height:1.2;margin:12px 0 24px}
.auth-form{display:grid;gap:10px;margin-top:24px}.auth-form label{font-weight:600;margin-top:8px}
.auth-form input:not([type=hidden]){width:100%;min-height:48px;padding:12px;border:1px solid var(--muted);border-radius:6px;font:inherit;background:white;color:var(--ink)}
.auth-form .button{margin-top:16px;min-height:48px;cursor:pointer;font:inherit}
.auth-help{font-size:14px;color:var(--muted);margin:0}.auth-switch{margin:24px 0 0}.auth-switch a{color:var(--blue);text-decoration:underline}
.auth-error,.auth-success{padding:14px;border-radius:6px;overflow-wrap:anywhere}.auth-error{background:#fff1f0;color:#8b2020;border:1px solid #e5aaaa}.auth-success{background:#eaf7ee;color:#215f36;border:1px solid #a4cfb0}
.auth-details{padding:18px 0;overflow-wrap:anywhere}.auth-details dt{color:var(--muted);font-size:14px}.auth-details dd{margin:6px 0}
.auth-card :focus-visible{outline:3px solid var(--blue);outline-offset:3px}
