:root {
  --ground: #f2f2f7;
  --card: #ffffff;
  --ink: #1c1c1e;
  --muted: #6c6c70;
  --rule: #e5e5ea;
  --accent: #cf5a14;
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root {
    --ground: #000000;
    --card: #1c1c1e;
    --ink: #f2f2f7;
    --muted: #98989f;
    --rule: #2c2c2e;
    --accent: #ffa04a;
  }
}
* { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--ground);
  color: var(--ink);
  font: 16px/1.75 -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Helvetica Neue", sans-serif;
  -webkit-font-smoothing: antialiased;
}
main { max-width: 680px; margin: 0 auto; padding: 56px 22px 80px; display: flex; flex-direction: column; gap: 28px; }
header { display: flex; align-items: center; gap: 16px; }
header img { width: 64px; height: 64px; border-radius: 15px; }
h1 { font-size: 28px; line-height: 1.25; margin: 0; text-wrap: balance; }
.sub { color: var(--muted); margin: 2px 0 0; font-size: 15px; }
section { background: var(--card); border-radius: 18px; padding: 22px 24px; }
h2 { font-size: 18px; margin: 0 0 8px; }
h3 { font-size: 15px; margin: 18px 0 4px; }
p, li { margin: 0 0 10px; }
ul { padding-left: 1.2em; margin: 0 0 10px; }
a { color: var(--accent); }
.links { display: flex; gap: 14px; font-size: 14px; }
.links a { text-decoration: none; }
.meta { color: var(--muted); font-size: 13px; }
hr { border: 0; border-top: 1px solid var(--rule); margin: 8px 0; }
footer { color: var(--muted); font-size: 13px; text-align: center; }
.mail { font-weight: 600; user-select: all; -webkit-user-select: all; }
