:root{--bg: #f7f5f0;--bg2: #fff;--ink: #1c1c18;--muted: #8a8578;--rule: #ddd9d0;--accent: #b5442e;--card-bg: #fff;--card-border: #e4e0d8;--nav-bg: rgba(247,245,240,.92);--dash-bg: #f0eee8;--dash-border: #e4e0d8;--green: #22c55e;--green-t: #16a34a;--shadow: rgba(0,0,0,.04);--card-hover: rgba(0,0,0,.06)}[data-theme=dark]{--bg: #0a0a09;--bg2: #131312;--ink: #e4e0d8;--muted: #7a756c;--rule: #1e1c16;--accent: #d45a3e;--card-bg: #131312;--card-border: #1e1c16;--nav-bg: rgba(10,10,9,.92);--dash-bg: #0f0f0e;--dash-border: #1e1c16;--green: #4ade80;--green-t: #4ade80;--shadow: rgba(0,0,0,.4);--card-hover: rgba(255,255,255,.04)}[data-theme=dark] body:after{opacity:.04;mix-blend-mode:screen}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:Newsreader,Georgia,serif;-webkit-font-smoothing:antialiased;line-height:1.6;transition:background .4s ease,color .4s ease}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.025;mix-blend-mode:multiply}[lang=zh] body,[lang=zh] h1,[lang=zh] h2,[lang=zh] h3{font-family:Noto Sans SC,Newsreader,sans-serif}a{color:inherit;text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:0 28px}@media(min-width:1400px){.container{max-width:1340px}}.mono{font-family:DM Mono,monospace}.divider{border:none;border-top:1px solid var(--rule);margin:0;transition:border-color .3s}.link-ed{background-image:linear-gradient(var(--accent),var(--accent));background-size:0% 1.5px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .4s cubic-bezier(.16,1,.3,1)}.link-ed:hover{background-size:100% 1.5px}@keyframes pd{0%,to{opacity:1}50%{opacity:.4}}@media(max-width:640px){.container{padding:0 16px}h1{font-size:clamp(1.5rem,8vw,2rem)!important}}
