:root{--bg:#fff;--fg:#111;--muted:#777;--line:#eee;--accent:#111}
@media (prefers-color-scheme:dark){:root{--bg:#111;--fg:#eee;--muted:#888;--line:#222;--accent:#eee}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.7 -apple-system,"Helvetica Neue",Helvetica,"PingFang SC","Noto Sans CJK SC",sans-serif}
a{color:var(--fg);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
a:hover{text-decoration-color:var(--fg)}
.wrap{max-width:640px;margin:0 auto;padding:0 20px}
.site-header .wrap{padding-top:48px;padding-bottom:8px}
.brand{font-weight:600;text-decoration:none;display:inline-block;margin-bottom:6px}
nav{display:flex;gap:16px;flex-wrap:wrap;font-size:14px}
nav a{color:var(--muted);text-decoration:none} nav a.active,nav a:hover{color:var(--fg)}
main{padding:24px 0 72px}
h1{font-size:22px;font-weight:600;margin:24px 0 12px} h2{font-size:16px;font-weight:600;margin:40px 0 8px}
h3{font-size:16px;font-weight:600;margin:0}
.muted,time{color:var(--muted)}

ul.plain{list-style:none;padding:0;margin:0} ul.plain li{padding:4px 0}
ul.plain time{display:inline-block;width:88px;font-size:14px}
.item{margin:0 0 18px} .item p{margin:2px 0 0;color:var(--muted)}
.pubs{padding-left:20px} .pubs li{margin:0 0 10px}
img{max-width:100%}
.photo{width:120px;height:120px;object-fit:cover;border-radius:50%}
.site-footer .wrap{padding-bottom:48px;font-size:13px;color:var(--muted)}
.site-footer a{color:var(--muted)}
