body {
  margin: 0 auto;
  max-width: 42rem;
  padding: 2rem 1rem 4rem;
  font: 17px/1.6 Georgia, "Times New Roman", serif;
  color: #2b2b26;
  background: #f7f5ef;
}
header { border-bottom: 1px solid #d8d3c4; margin-bottom: 2rem; padding-bottom: 0.5rem; }
header a { color: inherit; text-decoration: none; }
.site { font-size: 1.6rem; margin: 0 0 0.3rem; }
nav a { margin-right: 1rem; color: #4d6b3c; }
h1, h2, h3 { font-weight: normal; line-height: 1.3; }
h1 { font-size: 1.8rem; margin-bottom: 0.2rem; }
a { color: #4d6b3c; }
.meta, time { color: #7a7566; font-size: 0.9rem; }
.intro { font-style: italic; color: #5a5649; }
.summary h2 { margin-bottom: 0; }
.summary .meta { margin-top: 0.2rem; }
.more { margin-top: 2rem; }
.archive { list-style: none; padding: 0; }
.archive li { margin: 0.3rem 0; }
.archive time { display: inline-block; width: 4.5rem; }
table { border-collapse: collapse; width: 100%; font-size: 0.95rem; }
th, td { text-align: left; padding: 0.3rem 0.5rem; border-bottom: 1px solid #e3dfd3; }
td:last-child, th:last-child { text-align: right; }
.pager { display: flex; justify-content: space-between; gap: 1rem; margin-top: 3rem; padding-top: 1rem; border-top: 1px solid #d8d3c4; font-size: 0.95rem; }
.pager a { margin: 0; }
.pager .next { margin-left: auto; text-align: right; }
footer { margin-top: 3rem; color: #7a7566; font-size: 0.85rem; }
footer a { color: inherit; }
