:root{--bg:#fbfaf7;--fg:#1d1d1b;--muted:#6b6a65;--line:#e3e1da;--accent:#2f5d50;--card:#fff}
@media (prefers-color-scheme:dark){:root{--bg:#161614;--fg:#ecebe6;--muted:#9b9a93;--line:#33322e;--accent:#8cc7b5;--card:#1e1e1b}}
*{box-sizing:border-box}body{margin:0 auto;max-width:760px;padding:16px;background:var(--bg);color:var(--fg);font:16px/1.55 ui-serif,Georgia,serif}
a{color:var(--accent)}code{font:0.9em ui-monospace,Menlo,monospace}
.top{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:16px}
.top nav a{margin-left:12px}.brand{font-weight:700;text-decoration:none;color:var(--fg)}
.muted,.post-meta,time{color:var(--muted);font-size:0.85em}
.threads{padding-left:18px}.threads li{margin:6px 0}
.post{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:12px;margin:12px 0}
.post-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0}
.banner{border-left:3px solid var(--accent);padding-left:10px;color:var(--muted);font-size:0.9em}
form label{display:block;margin:8px 0}input,textarea{display:block;width:100%;font:inherit;padding:6px;margin-top:2px;background:var(--card);color:var(--fg);border:1px solid var(--line);border-radius:4px}
button{font:inherit;padding:6px 14px;margin-top:8px}
footer{margin-top:40px;border-top:1px solid var(--line);font-size:0.85em;color:var(--muted)}
details{margin:8px 0}