body{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px}
.auth{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;gap:14px}
.auth h1{font-size:28px}
.form{display:flex;flex-direction:column;gap:12px}
.field input,.field select{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:8px 10px;width:100%}
.alert{background:color-mix(in srgb,var(--bad) 12%,var(--surface));color:var(--bad);border-radius:var(--r);padding:10px 12px;font-size:14px}
.okmsg{background:color-mix(in srgb,var(--ok) 12%,var(--surface));color:var(--ok);border-radius:var(--r);padding:10px 12px;font-size:14px}
.muted{color:var(--muted);font-size:14px}
code{font-family:var(--font-mono);font-size:.92em;background:var(--surface-2);padding:1px 5px;border-radius:3px}
a.btn{display:inline-block;text-decoration:none}

.btn.ms{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 14px;font-weight:600;background:var(--surface);border:1px solid var(--line);color:var(--fg);text-decoration:none}
.btn.ms:hover{border-color:var(--accent)}
.ou{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12.5px}
.ou::before,.ou::after{content:"";flex:1;height:1px;background:var(--line)}
