:root { --ink:#1a2733; --accent:#0e6e8c; --paper:#f7f5f0; --line:#d8d2c4; --sub:#6b7684; --tint:#ece8df; }
body { font-family: Georgia, 'Times New Roman', serif; color: var(--ink);
       background: var(--paper); max-width: 42rem; margin: 0 auto; padding: 3rem 1.5rem; line-height: 1.6; }
h1 { font-size: 2.2rem; margin-bottom: .25rem; line-height: 1.2; }
h2 { font-size: 1.5rem; margin-top: 2.4rem; border-bottom: 1px solid var(--line); padding-bottom: .2rem; }
h3 { font-size: 1.2rem; margin-top: 1.8rem; }
.tagline { color: var(--accent); font-style: italic; margin-top: 0; }
code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .9em;
       background: var(--tint); padding: .1em .35em; border-radius: 3px; }
pre { background: var(--tint); padding: 1rem; border-radius: 6px; overflow-x: auto; }
pre code { background: none; padding: 0; }
table { border-collapse: collapse; margin: 1.5rem 0; width: 100%; }
th, td { text-align: left; border-bottom: 1px solid var(--line); padding: .5rem .75rem; vertical-align: top; }
th { background: #efece4; }
a { color: var(--accent); }
hr { border: none; border-top: 1px solid var(--line); margin: 2rem 0; }
.nav { font-size: .9rem; margin-bottom: 2rem; color: var(--sub); }
.backlink { display: inline-block; margin-top: 2.5rem; }
footer { margin-top: 3rem; font-size: .85rem; color: var(--sub); }
