
:root{--bg:#fffaf0;--ink:#2b2418;--mut:#5f5442;--amb:#c77700;--link:#8a4b00;--nbg:#7a4300;--ntx:#fff;--line:#e8dcc4;--card:#fff}
@media(prefers-color-scheme:dark){:root{--bg:#1d1a14;--ink:#f1e9d8;--mut:#b8ab93;--amb:#f0a43a;--link:#f0b45a;--nbg:#3a2a10;--ntx:#f6ecd8;--line:#3a3326;--card:#262118}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 system-ui,-apple-system,Segoe UI,sans-serif}
.wrap{max-width:860px;margin:0 auto;padding:0 18px}
.notice{background:var(--nbg);color:var(--ntx);font:14px/1.4 ui-monospace,Menlo,Consolas,monospace;padding:8px 0}
header.site{border-bottom:1px solid var(--line);padding:14px 0}
header.site .wrap{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
a.brand{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;font:700 21px ui-monospace,Menlo,Consolas,monospace}
nav a:first-child{margin-left:0}nav a{margin-left:16px;color:var(--link);text-decoration:none;font:600 15px ui-monospace,Menlo,Consolas,monospace}
nav a:hover{text-decoration:underline}
main{padding:30px 0 50px}h1{font:700 30px/1.25 ui-monospace,Menlo,Consolas,monospace;margin:.2em 0 .5em}
h2{font:700 19px ui-monospace,Menlo,Consolas,monospace;margin:1.6em 0 .4em;color:var(--link)}
main a{color:var(--link)}main p a,ul.topics a,.card a{text-decoration:underline;text-underline-offset:2px}a:focus-visible{outline:3px solid var(--amb);outline-offset:2px}
p,li{max-width:70ch}.meta{color:var(--mut);font:14px ui-monospace,Menlo,Consolas,monospace}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin:12px 0}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.grid a,main .grid a{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.grid a strong{display:block;color:var(--link);font:700 14px ui-monospace,Menlo,Consolas,monospace}
.pager{display:flex;justify-content:space-between;gap:12px;margin-top:34px;padding-top:16px;border-top:1px solid var(--line);font:600 15px ui-monospace,Menlo,Consolas,monospace}
.pager a{color:var(--link);text-decoration:none}.pager a:hover{text-decoration:underline}
footer.site{border-top:1px solid var(--line);padding:24px 0;color:var(--mut);font-size:14px}
@media(max-width:480px){.pager{flex-direction:column}}ul.topics{padding-left:20px}ul.topics li{margin:.3em 0}
