:root {
  --bg: #eef2ec;
  --surface: #ffffff;
  --ink: #1f2a24;
  --muted: #5d6b62;
  --accent: #2f6b4f;
  --accent-ink: #ffffff;
  --line: #c9d8cc;
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #141a16;
    --surface: #1d2520;
    --ink: #e6ede7;
    --muted: #9aa99f;
    --accent: #6fbf95;
    --accent-ink: #0f1f16;
    --line: #2f3b33;
    color-scheme: dark;
  }
}
* { box-sizing: border-box; }
html, body { margin: 0; height: 100%; }
body {
  background: var(--bg);
  color: var(--ink);
  font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;
  line-height: 1.6;
  display: grid;
  place-items: center;
  padding: 24px;
}
main {
  width: 100%;
  max-width: 520px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 40px 32px;
}
h1 { font-size: 2rem; line-height: 1.25; margin: 0 0 12px; letter-spacing: -0.01em; }
p { color: var(--muted); margin: 0 0 28px; }
.actions { display: grid; gap: 12px; }
.btn {
  display: block;
  text-align: center;
  text-decoration: none;
  font-size: 1.05rem;
  font-weight: 600;
  padding: 14px 20px;
  border-radius: 12px;
  border: 2px solid var(--accent);
  transition: transform .1s ease;
}
.btn:active { transform: scale(.98); }
.btn-primary { background: var(--accent); color: var(--accent-ink); }
.btn-secondary { background: transparent; color: var(--accent); }
.btn:focus-visible { outline: 3px solid var(--ink); outline-offset: 3px; }
.back { display: inline-block; margin-top: 28px; color: var(--accent); }
dl { display: grid; grid-template-columns: auto 1fr; gap: 8px 20px; margin: 0; }
dt { color: var(--muted); }
dd { margin: 0; font-weight: 600; }
.dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--muted); margin-right: 8px; }
.dot.ok { background: var(--accent); }
@media (prefers-reduced-motion: reduce) { .btn { transition: none; } }
