:root{color-scheme:light dark;--bg: #faf9f5;--text: #1f1f1f;--muted: #6f6f6f;--border: #e6e1d8;--link: #245c5a;--link-hover: #7a3e2e;--code-bg: #f0ede5;--max-width: 760px}@media(prefers-color-scheme:dark){:root{--bg: #171713;--text: #eeeeea;--muted: #aaa69c;--border: #3b3932;--link: #89bab4;--link-hover: #d8a28f;--code-bg: #24231f}}*,*:before,*:after{box-sizing:border-box}html{min-height:100%;font-size:100%}body{min-height:100%;margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.7;text-rendering:optimizeLegibility}a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--link-hover)}a:focus-visible{outline:2px solid var(--link);outline-offset:3px}p,ol,ul{margin-top:0}img{max-width:100%}code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}code{padding:.08em .24em;border-radius:3px;background:var(--code-bg);font-size:.92em}pre{overflow-x:auto;padding:1rem;border:1px solid var(--border);background:var(--code-bg);line-height:1.55}pre code{padding:0;background:transparent}.page{width:min(var(--max-width),calc(100% - 40px));margin:0 auto;padding:44px 0 72px}main{padding-top:48px}.site-header,.site-footer{color:var(--muted);font-size:.95rem}.site-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding-bottom:22px;border-bottom:1px solid var(--border)}.site-title{color:var(--text);font-weight:700;text-decoration:none;letter-spacing:0}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem .85rem}.site-nav a{color:var(--muted);text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--text)}.site-footer{margin-top:64px;padding-top:22px;border-top:1px solid var(--border)}.site-footer .footer-links,.inline-links{display:flex;flex-wrap:wrap;gap:.35rem .6rem}.site-footer .footer-note{margin:0 0 .65rem}.intro h1,.page-title h1,.article-header h1{margin:0;color:var(--text);line-height:1.2;letter-spacing:0}.intro h1{font-size:clamp(2rem,1.7rem + 1vw,2.75rem)}.intro .identity-mark{margin-top:.35rem;color:var(--muted);font-size:1.05rem}.intro p{max-width:42rem;margin:1rem 0 0}.intro .inline-links{margin-top:1.25rem}.intro .tagline{color:var(--muted)}.index-section,.page-title{margin-top:48px}.index-section h2,.project-list h2{margin:0 0 1rem;font-size:1rem;line-height:1.4}.page-title h1,.article-header h1{font-size:clamp(1.75rem,1.45rem + 1vw,2.35rem)}.page-title p,.article-description{margin:.75rem 0 0;color:var(--muted)}.plain-list,.project-list{display:grid;gap:1.15rem;margin:0;padding:0;list-style:none}.plain-list li{display:grid;grid-template-columns:6.75rem 1fr;gap:1rem;align-items:baseline}.plain-list.compact{gap:.65rem}.plain-list time,.entry-meta,.article-meta,.article-tags,.empty-state{color:var(--muted);font-size:.92rem}.plain-list a,.link-list a,.project-list a{color:var(--text);font-weight:560}.plain-list p,.link-list p,.project-list p,.more-link{margin:.25rem 0 0;color:var(--muted)}.more-link{margin-top:1rem}.link-list{display:grid;gap:1rem;margin:0;padding:0;list-style:none}.link-list span{font-weight:560}.project-list li{padding-top:1rem;border-top:1px solid var(--border)}.article{max-width:var(--max-width)}.back-link{display:inline-block;margin-bottom:2rem;color:var(--muted);font-size:.92rem}.article-header{margin-bottom:2.5rem}.article-meta{margin:1rem 0 0}.article-tags{display:flex;flex-wrap:wrap;gap:.35rem .6rem;margin:.65rem 0 0}.article-tags span:before{content:"#"}.ai-byline{margin:1rem 0 0;color:var(--muted);font-size:.92rem}.ai-byline span{color:var(--text);font-weight:600}.article-body{font-size:1.04rem;line-height:1.82}.article-body h2,.article-body h3{margin:2.2rem 0 .75rem;line-height:1.35}.article-body p,.article-body ul,.article-body ol,.article-body blockquote,.article-body pre{margin-bottom:1.15rem}.article-body blockquote{margin-left:0;padding-left:1rem;border-left:2px solid var(--border);color:var(--muted)}.not-found{max-width:36rem}.not-found h1{margin:0 0 1rem;font-size:clamp(2rem,1.7rem + 1vw,2.6rem)}@media(max-width:640px){.page{width:min(100% - 32px,var(--max-width));padding-top:28px}main{padding-top:36px}.site-header{display:block}.site-nav{justify-content:flex-start;margin-top:.75rem}.plain-list li{grid-template-columns:1fr;gap:.1rem}}
