:root { --fg:#1c1c1c; --muted:#777; --link:#0a5bd3; --bg:#fff; }
@media (prefers-color-scheme: dark) { :root { --fg:#ddd; --muted:#999; --link:#6ea8ff; --bg:#151515; } }
* { box-sizing: border-box; }
body { margin:0; padding:2rem 1rem 4rem; background:var(--bg); color:var(--fg);
  font:16px/1.75 -apple-system,"PingFang SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif; }
main { max-width:44rem; margin:0 auto; }
a { color:var(--link); text-decoration:none; }
a:hover { text-decoration:underline; }
h1 { font-size:1.5rem; line-height:1.3; }
h2 { font-size:1.2rem; margin-top:2em; }
pre { background:rgba(128,128,128,.12); padding:1rem; overflow-x:auto; border-radius:6px; font-size:.85rem; }
code { font-size:.88em; background:rgba(128,128,128,.12); padding:.1em .35em; border-radius:4px; }
pre code { background:none; padding:0; }
table { border-collapse:collapse; width:100%; font-size:.9rem; }
th, td { border:1px solid rgba(128,128,128,.3); padding:.45rem .6rem; text-align:left; }
.meta, .summary { color:var(--muted); font-size:.85rem; }
.ai-tag { border:1px solid var(--muted); border-radius:4px; padding:0 .4em; }
.lead { color:var(--muted); }
.posts { list-style:none; padding:0; }
.posts li { margin:1.2rem 0; }
footer { max-width:44rem; margin:3rem auto 0; padding-top:1rem;
  border-top:1px solid rgba(128,128,128,.25); color:var(--muted); font-size:.85rem; }
