/* 登录页独立样式：不依赖主样式，未登录时唯一放行的 css */
:root { color-scheme: dark; }
* { box-sizing: border-box; }
html, body { height: 100%; margin: 0; }
body {
  display: grid; place-items: center;
  background: radial-gradient(ellipse at 50% 30%, #161b22 0%, #0d1117 70%);
  color: #e6edf3;
  font: 15px/1.5 system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
  -webkit-tap-highlight-color: transparent;
  padding: calc(20px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));
}
form {
  width: min(340px, 100%);
  display: grid; gap: 12px;
  background: #161b22; border: 1px solid #262d3a; border-radius: 14px;
  padding: 26px 22px;
  box-shadow: 0 18px 60px rgba(0,0,0,.55);
}
.brand { display: flex; align-items: baseline; gap: 8px; font-weight: 700; letter-spacing: .5px; font-size: 19px; }
.dot { width: 9px; height: 9px; border-radius: 50%; background: #3fb950; box-shadow: 0 0 10px #3fb950; }
.sub { margin: -6px 0 8px; color: #8b949e; font-size: 12px; }
input {
  font: inherit; font-size: 16px; /* ≥16px：iOS 聚焦不缩放 */
  padding: 11px 12px; border-radius: 8px;
  border: 1px solid #262d3a; background: #0d1117; color: #e6edf3; outline: none;
}
input:focus { border-color: #2f81f7; }
button {
  font: inherit; font-size: 16px; padding: 11px; border-radius: 8px; cursor: pointer;
  border: 1px solid #2f81f7; background: #2f81f7; color: #fff; font-weight: 600;
}
button:disabled { opacity: .6; }
#err { min-height: 20px; color: #f85149; font-size: 13px; text-align: center; }
