:root{--paper:#ECEFEA;--sheet:#F7F8F4;--ink:#1D2321;--ink-soft:#5C6662;--rule:#C9D0CA;--accent:#2F6B57;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--paper:#141917;--sheet:#1C2220;--ink:#E4E8E3;--ink-soft:#9AA59F;--rule:#34403B;--accent:#7FB3A2;color-scheme:dark}}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Zen Kaku Gothic New","Hiragino Sans","Yu Gothic",system-ui,sans-serif;font-size:15px;line-height:1.85}
main{max-width:720px;margin:0 auto;padding:40px max(16px,env(safe-area-inset-right,0px)) 64px max(16px,env(safe-area-inset-left,0px))}
h1{font-family:"Shippori Mincho B1","Hiragino Mincho ProN","Yu Mincho",serif;font-size:28px;line-height:1.3;margin:0 0 8px;text-wrap:balance}
h2{font-family:"Shippori Mincho B1","Hiragino Mincho ProN","Yu Mincho",serif;font-size:18px;margin:32px 0 6px;color:var(--accent)}
p,li{max-width:65ch}
.meta{color:var(--ink-soft);font-size:13px}
.todo{background:var(--sheet);border:1px dashed var(--rule);border-radius:4px;padding:10px 14px;font-size:13.5px;color:var(--ink-soft)}
a{color:var(--accent)}
