:root { --paper: #f0e9d8; --ink: #14110f; --ink-soft: #2a2520; --river: #3a5c4a; --rust: #8a3c1f; }
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { background: var(--paper); color: var(--ink); }
body { font-family: 'Fraunces', Georgia, serif; line-height: 1.6; padding: 32px 16px 64px; }
main { max-width: 720px; margin: 0 auto; }
.top { display: flex; align-items: center; gap: 12px; margin-bottom: 28px; }
.top img { width: 44px; height: 44px; border-radius: 50%; }
.top a { color: var(--ink); text-decoration: none; font-weight: 700; font-size: 1.1rem; }
h1 { font-weight: 500; font-size: clamp(1.8rem, 5vw, 2.4rem); line-height: 1.15; margin-bottom: 6px; }
.meta { font-family: 'DM Mono', monospace; font-size: .8rem; color: var(--ink-soft); margin-bottom: 24px; }
.short { background: rgba(58, 92, 74, .08); border-left: 3px solid var(--river); padding: 14px 16px; margin-bottom: 28px; }
h2 { font-weight: 500; font-size: 1.25rem; margin: 28px 0 8px; }
p, li { margin-bottom: 10px; }
ul { padding-left: 20px; }
a { color: var(--river); }
footer { margin-top: 40px; padding-top: 16px; border-top: 1px solid rgba(20, 17, 15, .15); font-family: 'DM Mono', monospace; font-size: .8rem; display: flex; flex-wrap: wrap; gap: 14px; }
footer a { color: var(--ink-soft); }
