@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600&display=swap";:root{color-scheme:light;--bg:#f5f1e8;--surface:#fbf9f5;--ink:#292823;--muted:#777064;--accent:#a75d43;--line:#d9d0c2;--code:#eeeae1;--serif:"Newsreader",Georgia,"Noto Serif SC","Songti SC",serif;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans SC","Microsoft YaHei",sans-serif;--mono:"JetBrains Mono","SFMono-Regular",Consolas,monospace;--max:1160px;--reading:740px;--header:74px;--ease:cubic-bezier(.2,.7,.2,1)}[data-theme=dark]{color-scheme:dark;--bg:#24231f;--surface:#2c2a25;--ink:#f1ede4;--muted:#b4ac9e;--accent:#d18a6b;--line:#49443b;--code:#302e28}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased;transition:background .2s,color .2s}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button{font:inherit;color:inherit}::selection{background:#d9a58f66}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.site-header{height:var(--header);border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(12px);z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between}.brand{font:600 23px var(--serif);letter-spacing:-1.2px}.brand span{color:var(--accent)}.nav{display:flex;gap:34px;align-items:center;font-size:13px;color:var(--muted)}.nav a{transition:color .2s}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}.header-tools{display:flex;gap:10px;align-items:center}.icon-button{border:1px solid var(--line);background:transparent;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;cursor:pointer}.locale{font-size:12px;color:var(--muted);padding:6px 9px;border:1px solid var(--line);border-radius:20px}.mobile-menu{display:none}.eyebrow{font:500 10px var(--mono);letter-spacing:1.6px;text-transform:uppercase;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2,.display{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(44px,6.2vw,76px)}h2{font-size:clamp(30px,4vw,44px)}h3{font-size:20px;font-weight:500;letter-spacing:-.02em}.muted{color:var(--muted)}.accent{color:var(--accent)}.hero{padding:105px 0 86px;max-width:900px}.hero h1{max-width:850px;margin:22px 0 24px}.hero-copy{font-size:17px;line-height:1.9;color:var(--muted);max-width:690px}.hero-actions{display:flex;gap:22px;margin-top:30px;font-size:13px}.text-link{border-bottom:1px solid var(--accent);padding-bottom:3px}.section{padding:62px 0;border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:28px}.section-head h2{font-size:31px;margin:0}.small-link{font-size:12px;color:var(--accent)}.article-list{border-top:1px solid var(--line)}.article-row{display:grid;grid-template-columns:105px 1fr 120px;gap:22px;padding:22px 0;border-bottom:1px solid var(--line);align-items:start}.article-date,.article-category{font:11px var(--mono);color:var(--muted)}.article-row h3{margin:0 0 5px;font:500 23px/1.25 var(--serif)}.article-row p{margin:0;color:var(--muted);font-size:13px;max-width:680px}.article-category{text-align:right}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 46px}.project-item{padding:22px 0;border-top:1px solid var(--line)}.project-item h3{font:500 25px var(--serif);margin:10px 0}.project-item p{color:var(--muted);font-size:13px;margin-bottom:14px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tag{font:10px var(--mono);padding:4px 8px;border:1px solid var(--line);border-radius:2px;color:var(--muted)}.footer{border-top:1px solid var(--line);padding:28px 0 38px;color:var(--muted);font-size:11px}.footer-inner{display:flex;justify-content:space-between;gap:20px}.page-intro{padding:76px 0 48px;max-width:760px}.page-intro h1{font-size:64px;margin:14px 0}.page-intro p{color:var(--muted);font-size:16px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 28px}.filter{border:1px solid var(--line);background:transparent;padding:6px 12px;font-size:11px;border-radius:30px;cursor:pointer;color:var(--muted)}.filter.active,.filter:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.article-layout{display:grid;grid-template-columns:minmax(0,var(--reading)) 190px;gap:70px;justify-content:center;padding:70px 0}.article-header{margin-bottom:44px}.article-header h1{font-size:clamp(40px,5vw,62px);margin:16px 0}.article-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:11px}.prose{font-size:16px;line-height:1.9}.prose h2{font-size:34px;margin:2.1em 0 .65em}.prose h3{margin:1.8em 0 .5em}.prose p{margin:0 0 1.45em}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.prose blockquote{margin:2em 0;padding:4px 0 4px 22px;border-left:2px solid var(--accent);color:var(--muted)}.prose pre{background:var(--code);padding:20px;overflow:auto;border:1px solid var(--line);font:12px/1.8 var(--mono);border-radius:3px}.prose code{font-family:var(--mono);font-size:.86em}.prose :not(pre)>code{background:var(--code);padding:2px 5px}.prose table{width:100%;border-collapse:collapse;font-size:13px}.prose th,.prose td{padding:10px;border-bottom:1px solid var(--line);text-align:left}.toc{position:sticky;top:110px;height:max-content;font-size:11px}.toc strong{font:11px var(--mono);letter-spacing:1px}.toc a{display:block;color:var(--muted);padding:5px 0}.toc a:hover{color:var(--accent)}.search{display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:8px 0}.search input{background:transparent;border:0;outline:0;color:var(--ink);width:100%;font:14px var(--sans)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.research-list{border-top:1px solid var(--line)}.research-item{padding:20px 0;border-bottom:1px solid var(--line)}.research-item h3{font:500 23px var(--serif);margin:0 0 5px}.not-found{padding:120px 0;text-align:center}.mobile-nav{display:none}@media(max-width:760px){.wrap{width:min(100% - 36px,var(--max))}.nav{display:none}.mobile-menu{display:grid}.hero{padding:76px 0 60px}.hero h1{font-size:48px}.hero-copy{font-size:15px}.section{padding:44px 0}.article-row{grid-template-columns:76px 1fr;gap:12px}.article-category{display:none}.article-row h3{font-size:20px}.project-grid,.about-grid{grid-template-columns:1fr;gap:8px}.page-intro{padding:58px 0 35px}.page-intro h1{font-size:48px}.article-layout{display:block;padding:52px 0}.toc{display:none}.article-header h1{font-size:42px}.footer-inner{flex-direction:column}.mobile-nav.open{display:flex;position:absolute;top:74px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);padding:18px 24px;flex-direction:column;gap:12px}.hero-actions{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}.prose img{max-width:100%;height:auto;border:1px solid var(--line)}.prose .mermaid{margin:28px 0;padding:18px;background:var(--surface);border:1px solid var(--line);overflow:auto}.prose .katex-display{overflow-x:auto;overflow-y:hidden;padding:8px 0}.prose pre{position:relative}.copy-code{position:absolute;right:10px;top:10px;border:1px solid var(--line);background:var(--surface);font:10px var(--mono);padding:4px 7px;cursor:pointer}
