:root {
  --bg0: #0e0c0a;
  --bg1: #1a1410;
  --ink: #f2ebe0;
  --mute: #9a8f82;
  --line: #3a3028;
  --accent: #c4a36a;
  --felt: #0c5a38;
  --font: "PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  --display: "Songti SC", "STSong", "Noto Serif SC", "Source Han Serif SC", serif;
}

* { box-sizing: border-box; }
html, body {
  margin: 0;
  min-height: 100%;
  background: var(--bg0);
  color: var(--ink);
  font-family: var(--font);
}

body {
  background:
    radial-gradient(70% 50% at 50% -10%, #2a1c1288, transparent 55%),
    radial-gradient(50% 40% at 90% 80%, #0a3d2888, transparent 50%),
    linear-gradient(165deg, var(--bg1), var(--bg0));
}

.page {
  max-width: 42rem;
  margin: 0 auto;
  padding: 48px 22px 64px;
}

.hero {
  margin-bottom: 40px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--line);
}

.brand {
  margin: 0 0 10px;
  font-family: var(--display);
  font-size: 0.85rem;
  letter-spacing: 0.28em;
  text-indent: 0.28em;
  color: var(--accent);
  text-transform: lowercase;
}

.hero h1 {
  margin: 0 0 12px;
  font-family: var(--display);
  font-size: clamp(2rem, 7vw, 2.6rem);
  font-weight: 700;
  letter-spacing: 0.12em;
}

.lede {
  margin: 0 0 18px;
  color: var(--mute);
  line-height: 1.55;
  max-width: 28em;
}

.go a {
  color: var(--ink);
  text-decoration: none;
  border-bottom: 1px solid var(--accent);
  padding-bottom: 2px;
}
.go a:hover { color: var(--accent); }

.log article {
  margin: 0 0 28px;
  padding: 0;
}

.log time {
  display: block;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  color: var(--accent);
  margin-bottom: 6px;
}

.log h2 {
  margin: 0 0 10px;
  font-size: 1.15rem;
  font-weight: 600;
}

.log ul {
  margin: 0;
  padding-left: 1.15em;
  color: var(--mute);
  line-height: 1.65;
}

.log li { margin-bottom: 4px; }
.log a { color: var(--ink); }
.log code, .foot code {
  font-size: 0.86em;
  color: #d4c4a8;
  background: #00000044;
  padding: 0.1em 0.35em;
  border-radius: 3px;
}

.foot {
  margin-top: 36px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
  font-size: 0.85rem;
  color: var(--mute);
}
.foot .sep { margin: 0 0.45em; opacity: 0.5; }
.foot a { color: var(--accent); }
