:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#233c34;background:#f7f8f2;font-synthesis:none;line-height:1.7;--muted:#6d7971;--green:#234e3d;--line:#dce1d5}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #9db781;outline-offset:5px}[hidden]{display:none!important}.wrap{max-width:1140px;margin:auto;padding-left:32px;padding-right:32px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.02em}.logo{display:grid;place-items:center;width:37px;height:37px;border-radius:10px;background:var(--green);color:#e9f4d1;font-family:Georgia,serif;font-size:24px}.header nav{display:flex;gap:30px;font-size:14px}.header nav a:hover{color:#62804e}.hero{position:relative;padding-top:80px;padding-bottom:72px;overflow:hidden}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:650;color:var(--muted)}.dot{display:inline-block;width:7px;height:7px;background:#74945a;border-radius:50%;margin-right:9px}.hero h1{font-size:clamp(38px,5.3vw,64px);line-height:1.25;letter-spacing:-.055em;margin:26px 0}.hero h1 span{color:#76915c}.hero p{color:var(--muted);font-size:16px;line-height:1.9}.hero-link{display:inline-flex;gap:36px;margin-top:17px;border-bottom:1px solid #a8b39b;padding-bottom:6px;font-size:14px}.hero-mark{position:absolute;right:80px;top:80px;transform:rotate(7deg);color:#77905e;border:1px solid #d5ddc9;border-radius:4px;padding:28px 32px;width:265px;background:linear-gradient(135deg,#edf0e3,#f3f5ec);box-shadow:18px 18px #e8ecdf}.hero-mark span{font-family:monospace;font-size:29px;line-height:1.6}.hero-mark i{display:block;font-style:normal;font-size:8px;letter-spacing:.15em;margin-top:16px}.articles{padding-top:36px;padding-bottom:55px}.section-heading{display:flex;justify-content:space-between;align-items:center}.section-heading h2{font-size:28px;font-weight:600;margin:8px 0 24px;letter-spacing:-.03em}sup{font-size:12px;color:#8a9582;vertical-align:super;margin-left:10px}.search{display:flex;align-items:center;border:1px solid var(--line);border-radius:7px;gap:8px;padding:7px 14px;background:#fff9}.search span{font-size:25px;line-height:1}.search input{border:0;outline:none;background:transparent;width:210px;font-size:13px;color:var(--green)}.filters{display:flex;gap:10px;border-bottom:1px solid var(--line);padding-bottom:20px;flex-wrap:wrap}.filters button{cursor:pointer;background:transparent;border:1px solid var(--line);border-radius:5px;color:var(--muted);padding:5px 13px;font-size:12px}.filters button.active{background:var(--green);border-color:var(--green);color:#fff}.post{display:grid;grid-template-columns:45px 1fr 30px;gap:16px;border-bottom:1px solid var(--line);padding:29px 0;transition:background .15s}.post:hover{background:#eef1e7}.post-number{font-family:monospace;font-size:12px;color:#8e9987;padding-top:3px}.post-meta{display:flex;align-items:center;gap:15px;font-size:11px;color:#7c8779}.post-meta>span{color:#5f7b4d}.post h3{font-size:21px;line-height:1.5;font-weight:600;margin:9px 0;letter-spacing:-.02em}.post p{font-size:14px;color:var(--muted);margin:0}.tags{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:#85917c;margin-top:13px}.post-arrow{align-self:center;font-size:22px;color:#77905f}.note{display:flex;gap:22px;align-items:center;padding-top:30px;padding-bottom:30px;background:#edf0e4;border-radius:8px;margin-bottom:65px;max-width:1076px}.note>span{font-size:32px;color:#7d9469}.note h2{font-size:17px;margin:0}.note p{font-size:12px;color:var(--muted);margin:5px 0 0}.note>a{margin-left:auto;font-size:12px;white-space:nowrap}.footer{border-top:1px solid var(--line);padding-top:30px;padding-bottom:35px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.footer strong{color:var(--green)}.footer p{margin:5px 0}.footer>div:last-child{display:flex;gap:24px;align-items:center}.skip{position:absolute;left:-9999px}.skip:focus{left:15px;top:5px;background:#fff;z-index:10}.article-wrap{padding-top:35px;padding-bottom:80px}.back{font-size:13px;color:var(--muted)}.article-header{max-width:800px;padding:45px 0 35px;border-bottom:1px solid var(--line)}.article-header h1{font-size:40px;line-height:1.4;letter-spacing:-.04em;margin:18px 0}.article-header p{color:var(--muted);font-size:17px}.article-grid{display:grid;grid-template-columns:minmax(0,760px) 200px;gap:60px;padding-top:30px}.toc{font-size:12px;align-self:start;position:sticky;top:30px;border-left:1px solid var(--line);padding-left:20px}.toc a{display:block;margin:13px 0;color:var(--muted)}.prose{font-size:16px;line-height:1.95;overflow-wrap:anywhere;min-width:0}.prose h2{font-size:24px;margin:42px 0 16px;scroll-margin-top:30px}.prose h3{font-size:19px}.prose a{color:#477843;text-decoration:underline;text-underline-offset:3px}.prose pre{padding:20px;border-radius:8px;font-size:13px;overflow:auto;line-height:1.7}.prose :not(pre)>code{background:#e8ecdf;padding:2px 5px;border-radius:3px;font-size:.9em}.prose blockquote,.disclosure{border-left:3px solid #8ca474;background:#edf0e4;margin:20px 0;padding:12px 18px;font-size:14px;color:#5c6d54}.prose table{border-collapse:collapse;display:block;overflow:auto;font-size:14px}.prose td,.prose th{border:1px solid var(--line);padding:10px}.prose img{max-width:100%;height:auto}.standalone{max-width:850px;padding-top:70px;padding-bottom:100px;min-height:65vh}.standalone h1{font-size:38px}.prose li{margin:8px 0}@media(max-width:800px){.hero-mark{right:36px;width:200px;padding:20px;opacity:.65;top:110px}.hero-mark span{font-size:23px}.hero h1,.hero p,.hero-link,.hero>.eyebrow{position:relative;z-index:1}.hero-mark{right:-55px;opacity:.23}.article-grid{grid-template-columns:1fr}.toc{display:none}.note{margin:0 24px 45px}.note>a{display:none}.footer{gap:20px;flex-direction:column}}@media(max-width:560px){.wrap{padding-left:22px;padding-right:22px}.header{height:78px}.brand{font-size:14px}.header nav{gap:16px;font-size:12px}.hero{padding-top:55px;padding-bottom:45px}.hero h1{font-size:40px}.section-heading{display:block}.search{margin-bottom:20px}.search input{width:100%}.post{grid-template-columns:23px 1fr 20px;gap:8px;padding:24px 0}.post h3{font-size:18px}.post p{font-size:13px}.article-header h1{font-size:30px}.article-header{padding-top:30px}.footer>div:last-child{gap:18px}.standalone h1{font-size:30px}}
