body.auth{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:#17191c}
.auth-card{width:min(380px,100%);background:var(--panel);border:1px solid #111214;border-radius:6px;padding:0 20px 18px;box-shadow:0 18px 50px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.03) inset;overflow:hidden}
.auth-brand{display:flex;align-items:center;gap:8px;margin:0 -20px 16px;padding:0 12px;height:34px;background:linear-gradient(180deg,#2e3137,#27292e);border-bottom:1px solid #111214;font-weight:600;font-size:12.5px;color:var(--ink)}
.auth-brand .mark{width:18px;height:18px;border-radius:4px;background:var(--grad-primary);color:#fff;display:grid;place-items:center;font-size:8.5px;font-weight:700}
.auth-card h1{font-size:16px;font-weight:600;letter-spacing:0;margin-bottom:4px}
.auth-sub{color:var(--muted);font-size:12.5px;margin-bottom:4px;line-height:1.5}
.auth-card label{margin-top:12px}
.auth-card input{height:30px;font-size:13px}
.auth-card input.code{font-family:var(--mono);font-size:18px;letter-spacing:.3em;text-align:center;height:40px}
.auth-card button{width:100%;height:30px;margin-top:16px;font-size:13px}
.auth-err{margin-top:12px;padding:7px 10px;border-radius:var(--r-sm);border:1px solid var(--rose-line);background:var(--rose-dim);color:var(--rose2);font-size:12.5px;font-weight:500}
.auth-foot{margin:18px -20px -18px;padding:6px 12px;border-top:1px solid var(--line);background:var(--panel2);display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11.5px}
.auth-foot a{color:var(--ink2);text-decoration:none}
.auth-foot a:hover{color:#fff}
.btn-link{display:inline-flex;margin-top:14px;color:#7fa8ff;font-weight:500;text-decoration:none;font-size:13px}
