:root{color-scheme:light dark;--fg:#1d1d1f;--muted:#6e6e73;--bg:#fff;--line:#e5e5ea;--accent:#0a58ca}
@media (prefers-color-scheme:dark){:root{--fg:#f2f2f7;--muted:#a1a1a6;--bg:#111113;--line:#2c2c2e;--accent:#6ea8fe}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.7 -apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",system-ui,sans-serif;word-break:keep-all;overflow-wrap:anywhere}
a{color:var(--accent)}
.wrap{max-width:42rem;margin:0 auto;padding:0 1rem}
header.site{border-bottom:1px solid var(--line);padding:.75rem 0}
header.site .brand{font-weight:700;font-size:1.15rem;text-decoration:none;color:var(--fg)}
nav.topics ul{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1rem}
nav.topics a{text-decoration:none}
main{padding:1.25rem 0 2rem}
h1{font-size:1.5rem;line-height:1.4;margin:.25rem 0 1rem}
h2{font-size:1.15rem;line-height:1.45;margin:0 0 .5rem}
.meta,.src,footer.site,.muted{color:var(--muted);font-size:.9rem}
.lead{font-size:1.05rem}
article.item{border-top:1px solid var(--line);padding:1.25rem 0}
article.item h2 a{color:inherit;text-decoration:none}
ul.posts{list-style:none;padding:0;margin:0}
ul.posts li{border-top:1px solid var(--line);padding:1rem 0}
ul.posts h2{margin:.25rem 0}
nav.toc ul{padding-left:1.1rem}
footer.site{border-top:1px solid var(--line);padding:1rem 0 2rem}
