@charset "UTF-8";:root{--paper:#f6f4ee;--ink:#23332c;--muted:#68716a;--line:#d9ddd4;--accent:#426c53;--white:#fffefa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.9 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.wrap{width:min(1080px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:20px;top:-100px;background:white;padding:8px}.skip:focus{top:8px}header{border-bottom:1px solid var(--line)}.head{display:flex;justify-content:space-between;align-items:center;min-height:98px;gap:20px}.brand{display:flex;align-items:center;gap:13px;font:600 22px/1 Georgia,serif;letter-spacing:-.6px}.mark{width:35px;height:35px;border:1px solid var(--ink);display:grid;place-items:center;font:italic 23px Georgia,serif;transform:rotate(-5deg)}nav{display:flex;gap:30px;font-size:14px}nav a[aria-current=page]{color:var(--accent);border-bottom:1px solid var(--accent)}.eyebrow{font:11px/1.6 ui-monospace,monospace;letter-spacing:2px;text-transform:uppercase;color:var(--accent)}.hero{display:grid;grid-template-columns:1fr 260px;gap:70px;padding:70px 0 66px;border-bottom:1px solid var(--line)}h1{font-size:clamp(32px,4.7vw,53px);letter-spacing:-1.9px;line-height:1.42;font-weight:600;margin:18px 0 24px}.intro{font-size:17px;color:var(--muted);max-width:590px;line-height:2}.hero-aside{align-self:end;padding:20px 0 5px 25px;border-left:1px solid var(--line)}.hero-aside p{font-size:14px;color:var(--muted);margin:10px 0}.tiny{font-size:12px;color:var(--muted)}.section-top{display:flex;justify-content:space-between;align-items:center;padding:34px 0 12px}.section-top h2{font-size:18px;font-weight:600}.entry{display:grid;grid-template-columns:110px 1fr 35px;gap:25px;padding:32px 0;border-bottom:1px solid var(--line)}.entry .meta{color:var(--muted);font-size:12px;padding-top:5px}.tag{display:block;color:var(--accent);margin-bottom:9px}.entry h2{margin:0 0 9px;font-size:23px;line-height:1.5;font-weight:550;letter-spacing:-.5px}.entry p{color:var(--muted);font-size:14px;margin:0;max-width:720px}.arrow{align-self:center;font:24px Georgia,serif}.topics{padding:38px 0 46px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.topics span:not(:first-child){padding:3px 12px;border:1px solid var(--line);border-radius:3px}footer{border-top:1px solid var(--line);margin-top:35px}.foot{display:flex;justify-content:space-between;gap:20px;padding:29px 0 35px;font-size:12px;color:var(--muted)}.foot a{margin-left:20px}.pagehead{padding:54px 0 30px;max-width:800px}.pagehead h1{font-size:38px;letter-spacing:-1px}.article{max-width:760px;padding-bottom:45px}.article p,.article li{color:#3d4941}.article h2{font-size:23px;line-height:1.5;margin:39px 0 15px;letter-spacing:-.3px}.article h3{font-size:18px;margin:27px 0 10px}.article ul,.article ol{padding-left:23px}.article a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.article pre{padding:22px;background:#eaece5;border:1px solid #dce0d5;border-radius:5px;overflow:auto;font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;tab-size:4}.article code:not(pre code){background:#eaece5;padding:2px 5px;border-radius:3px;font-size:.88em}.note{border-left:3px solid #8ca28d;background:#eef0e8;padding:14px 20px;margin:26px 0;font-size:14px}.back{display:inline-block;font-size:13px;color:var(--accent);margin-bottom:12px}.article-meta{font-size:12px;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:25px}.next{border-top:1px solid var(--line);padding:27px 0;margin-top:40px;font-size:14px}.next a{margin-right:22px}svg{vertical-align:middle}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.head{min-height:80px}.brand{font-size:19px}nav{gap:18px;font-size:13px}.hero{grid-template-columns:1fr;gap:22px;padding:40px 0}.hero-aside{border-left:0;border-top:1px solid var(--line);padding:17px 0 0}.hero-aside p{display:inline;margin-right:10px}.hero h1{letter-spacing:-1px}.intro{font-size:15px}.entry{grid-template-columns:1fr 24px;gap:6px 14px;padding:25px 0}.entry .meta{grid-column:1/-1;display:flex;gap:12px}.tag{display:inline;margin:0}.entry h2{font-size:21px}.foot{flex-direction:column;gap:7px}.foot a{margin:0 20px 0 0}.pagehead{padding-top:35px}.pagehead h1{font-size:31px}.article pre{padding:14px;font-size:12px}}