* { box-sizing: border-box; }
body {
  margin: 0; min-height: 100vh; display: flex; align-items: center; justify-content: center;
  background: #f4f4f4; font-family: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif; color: #111;
}
.auth-card {
  background: #fff; width: 340px; max-width: 92vw; padding: 36px 32px 30px;
  border: 1px solid #ddd; border-radius: 10px; box-shadow: 0 6px 24px rgba(0,0,0,.06);
}
.auth-card h1 { margin: 0 0 6px; font-size: 26px; text-align: center; letter-spacing: 2px; }
.auth-card .sub { margin: 0 0 22px; text-align: center; color: #777; font-size: 13px; line-height: 1.6; }
.auth-card label { display: block; font-size: 13px; color: #444; margin-bottom: 14px; }
.auth-card input {
  width: 100%; margin-top: 6px; padding: 10px 12px; font-size: 15px;
  border: 1px solid #ccc; border-radius: 6px; outline: none;
}
.auth-card input:focus { border-color: #111; }
.auth-card button {
  width: 100%; padding: 11px; margin-top: 6px; background: #111; color: #fff; border: 0;
  border-radius: 6px; font-size: 15px; cursor: pointer;
}
.auth-card button:hover { background: #333; }
.auth-card .err { min-height: 18px; color: #c00; font-size: 13px; margin-bottom: 6px; }
