:root{color-scheme:light dark;--paper:#faf8f3;--card:#fffefb;--ink:#23332b;--muted:#56635b;--line:#d8ddd3;--accent:#315b40;--notice:#f2ead5}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.7 system-ui,-apple-system,"Segoe UI",sans-serif;overflow-wrap:anywhere}
a{color:var(--accent);text-underline-offset:.2em}
a:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:2px}
.skip-link{position:absolute;left:1rem;top:-6rem;background:var(--card);padding:.8rem;z-index:2}
.skip-link:focus{top:1rem}
header,main,footer{max-width:52rem;margin:auto;padding:1.25rem 1.5rem}
header{border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem}
header a,footer a{display:inline-flex;align-items:center;min-height:44px}
.brand{font-weight:650;text-decoration:none}
main{padding-top:2.5rem;padding-bottom:3rem}
main:focus{outline:none}
h1,h2{line-height:1.3;letter-spacing:-.02em}
h1{font-size:clamp(1.9rem,6vw,2.6rem);margin:0 0 .6rem}
h2{font-size:1.3rem;margin:2.25rem 0 .7rem}
p,ul{margin:.7rem 0 1rem}
ul{padding-left:1.3rem}
li+li{margin-top:.5rem}
.meta{color:var(--muted);font-size:.95rem}
.draft{background:var(--notice);border:1px solid var(--line);border-radius:.6rem;padding:1rem 1.2rem;margin:1.5rem 0}
.draft p:last-child{margin-bottom:0}
.draft strong{display:block}
.contents{padding:1rem 1.2rem;background:var(--card);border:1px solid var(--line);border-radius:.6rem}
.contents ul{margin-bottom:0}
.contents a{display:inline-flex;align-items:center;min-height:44px}
footer{border-top:1px solid var(--line);color:var(--muted);display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
@media(prefers-color-scheme:dark){:root{--paper:#18221c;--card:#202d24;--ink:#edece5;--muted:#bac4b9;--line:#405246;--accent:#b4d8b8;--notice:#343421}}
@media(max-width:390px){header,main,footer{padding-left:1rem;padding-right:1rem}.draft,.contents{padding:1rem}}
@media print{:root{color-scheme:light;--paper:#fff;--card:#fff;--ink:#000;--muted:#333;--line:#bbb;--accent:#000;--notice:#fff}header,footer,.skip-link,.contents{display:none}main{max-width:none;padding:0}h2{break-after:avoid}.draft{break-inside:avoid}a{color:inherit}}
