:root{--ink:#20211f;--muted:#70736c;--line:#dedfd8;--paper:#f8f7f2;--accent:#246b52}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}.public-site{width:min(100% - 40px,820px);min-height:100vh;margin:0 auto;display:flex;flex-direction:column}.public-site main{flex:1 1}.site-header{justify-content:space-between;gap:24px;padding:32px 0 26px;border-bottom:1px solid var(--line)}.identity,.site-header{display:flex;align-items:center}.identity{gap:13px;text-decoration:none;min-width:0}.avatar-fallback,.identity img{width:46px;height:46px;border-radius:50%;object-fit:cover;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-family:Georgia,serif;font-size:24px}.identity span span{display:block;min-width:0}.identity small,.identity strong{display:block}.identity strong{font-family:Georgia,"Noto Serif SC",serif;font-size:18px;letter-spacing:.01em}.identity small{color:var(--muted);margin-top:3px;overflow:hidden;max-width:430px;text-overflow:ellipsis;white-space:nowrap}.social-links{display:flex;gap:17px;font-size:14px}.site-footer a,.social-links a{color:var(--muted);text-decoration:none}.site-footer a:hover,.social-links a:hover{color:var(--accent)}.intro{padding:76px 0 38px;max-width:680px}.eyebrow{margin:0 0 12px;color:var(--accent)!important;font-size:11px;font-weight:700;letter-spacing:.17em}.article-header h1,.empty-state h1,.intro h1{margin:0;font-family:Georgia,"Noto Serif SC",serif;font-weight:500;line-height:1.15}.intro h1{font-size:clamp(38px,7vw,62px)}.intro>p:last-child{color:var(--muted);font-size:17px;line-height:1.75;margin:20px 0 0}.filters{display:flex;flex-wrap:wrap;gap:9px;padding-bottom:22px;border-bottom:1px solid var(--line)}.filters a{padding:7px 12px;border-radius:999px;color:var(--muted);font-size:14px;text-decoration:none}.filters a.active,.filters a:hover{background:#e5ebe5;color:#164f3b}.post-list{margin-bottom:18px}.post-card{padding:36px 0 34px;border-bottom:1px solid var(--line)}.post-card-meta{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px}.post-card-meta>*+:before{content:"·";margin-right:12px}.post-card-meta a{color:var(--accent);text-decoration:none}.post-card h2{margin:13px 0 10px;font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(24px,4vw,31px);font-weight:500;line-height:1.3}.post-card h2 a{text-decoration:none;background:linear-gradient(var(--accent),var(--accent)) 0 100% /0 1px no-repeat;transition:background-size .2s}.post-card h2 a:hover{background-size:100% 1px}.post-card>p{color:#5c5e59;line-height:1.75;margin:0}.article-tags,.tag-list{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:17px 0 0;gap:10px}.article-tags a,.tag-list a{color:var(--muted);font-size:13px;text-decoration:none}.article-tags a:hover,.tag-list a:hover{color:var(--accent)}.pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:28px 0;font-size:14px}.pagination>:last-child{text-align:right}.pagination a{color:var(--accent);text-decoration:none}.pagination>span{color:var(--muted)}.empty-state{margin:60px 0;padding:55px 32px;text-align:center;border:1px solid var(--line);border-radius:14px}.empty-state h1,.empty-state h2{margin:0 0 12px}.empty-state p{color:var(--muted)}.empty-state a{color:var(--accent)}.not-found{margin-top:80px}.site-footer{display:flex;justify-content:space-between;padding:30px 0 36px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.article-page{padding:52px 0 80px}.back-link{color:var(--muted);font-size:14px;text-decoration:none}.article-header{max-width:720px;padding:55px 0 34px}.article-header>a{color:var(--accent);font-size:13px;text-decoration:none}.article-header h1{font-size:clamp(39px,7vw,64px);margin-top:13px;letter-spacing:-.025em}.article-header>p{color:var(--muted);font-family:Georgia,"Noto Serif SC",serif;font-size:19px;line-height:1.65;margin:22px 0}.article-byline{display:flex;flex-wrap:wrap;gap:10px 18px;color:var(--muted);font-size:13px}.article-cover{width:100%;max-height:470px;margin:4px 0 40px;border-radius:12px;object-fit:cover}.markdown-shell{position:relative}.article-toc{margin:0 0 42px;padding:18px 22px;border-left:2px solid var(--accent);background:rgba(36,107,82,.045)}.article-toc p{margin:0 0 9px;font-size:12px;font-weight:700;letter-spacing:.12em}.article-toc ol{margin:0;padding:0;list-style:none;column-count:2}.article-toc li{page-break-inside:avoid;break-inside:avoid;margin:7px 0;font-size:14px}.article-toc li[data-level="2"],.article-toc li[data-level="3"]{padding-left:14px}.article-toc a{color:var(--muted);text-decoration:none}.article-toc a:hover{color:var(--accent)}.markdown-body{font-family:Georgia,"Noto Serif SC",serif;font-size:18px;line-height:1.85;overflow-wrap:anywhere}.markdown-body>:first-child{margin-top:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{scroll-margin-top:24px;line-height:1.3;margin:2.1em 0 .65em}.markdown-body h2{padding-bottom:.35em;border-bottom:1px solid var(--line)}.markdown-body a{color:var(--accent);text-underline-offset:3px}.markdown-body img{max-width:100%;height:auto;border-radius:8px}.markdown-body blockquote{margin:1.6em 0;padding:.1em 0 .1em 1.25em;border-left:3px solid #a8b7ae;color:#5c625d}.markdown-body table{display:block;width:100%;border-collapse:collapse;overflow-x:auto;font-family:Inter,sans-serif;font-size:15px}.markdown-body td,.markdown-body th{padding:9px 13px;border:1px solid var(--line);text-align:left}.markdown-body th{background:#efeee8}.markdown-body code:not(.hljs){padding:.14em .35em;border-radius:4px;background:#eae9e3;font-family:SFMono-Regular,Consolas,monospace;font-size:.85em}.markdown-body .code-block{position:relative;max-width:100%;margin:1.7em 0;padding:20px;border-radius:10px;overflow-x:auto;background:#1f2421;color:#e8eee9;font-size:14px;line-height:1.6}.copy-code{position:sticky;left:100%;top:0;float:right;margin:-9px -8px 8px 12px;padding:5px 8px;border:1px solid #49544e;border-radius:5px;background:#29312d;color:#ccd5cf;cursor:pointer;font:12px Inter,sans-serif}.task-list-item{list-style:none}.task-list-checkbox{margin-left:-1.35em;margin-right:.35em;accent-color:var(--accent)}.katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden}.article-tags{border-top:1px solid var(--line);margin-top:50px;padding-top:24px}@media (max-width:640px){.public-site{width:min(100% - 28px,820px)}.site-header{align-items:flex-start;padding-top:23px}.identity small{max-width:220px}.social-links{display:none}.intro{padding-top:52px}.article-page{padding-top:36px}.article-header{padding-top:40px}.article-toc ol{column-count:1}.markdown-body{font-size:17px;line-height:1.8}.pagination{grid-template-columns:1fr 1fr}.pagination>span:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}