:root {
  --ink: #0a0c10;
  --paper: #f6f5f1;
  --border: #e2ded8;
  --muted: #5a6478;
  --accent: #2563eb;
  --serif: "Fraunces", Georgia, serif;
  --sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: var(--sans);
  color: var(--ink);
  background: linear-gradient(180deg, #fbfaf7 0%, var(--paper) 100%);
  line-height: 1.7;
  padding: 24px;
}

.page {
  max-width: 760px;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid rgba(226, 222, 216, 0.9);
  border-radius: 24px;
  padding: 48px;
  box-shadow: 0 24px 60px rgba(10, 12, 16, 0.08);
}

.crumb {
  font-size: 0.9rem;
  margin-bottom: 20px;
}

.crumb a {
  color: var(--accent);
  text-decoration: none;
  font-weight: 600;
}

h1 {
  font-family: var(--serif);
  font-size: 2.4rem;
  letter-spacing: -0.03em;
  line-height: 1.05;
  margin: 0 0 6px;
}

.updated {
  color: var(--muted);
  font-size: 0.92rem;
  margin: 0 0 28px;
}

h2 {
  font-family: var(--serif);
  font-size: 1.4rem;
  letter-spacing: -0.02em;
  margin: 32px 0 8px;
}

p, li { color: #333a46; }

ul { padding-left: 1.3rem; }

.footer {
  max-width: 760px;
  margin: 18px auto 0;
  color: var(--muted);
  font-size: 0.9rem;
  text-align: center;
}

.footer a { color: inherit; margin: 0 8px; }

@media (max-width: 600px) {
  .page { padding: 28px 20px; }
  h1 { font-size: 1.9rem; }
}
