:root{--paper:#f7f5ee;--ink:#233d35;--muted:#6d756b;--line:#d9ddd2;--accent:#bc683e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.wrap{max-width:1060px;margin:auto;padding:0 40px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:25px 0}.brand{font-family:Georgia,"Songti SC",serif;font-size:23px;font-weight:700;letter-spacing:2px}nav{display:flex;gap:27px;font-size:14px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--muted)}.hero{padding:70px 0 58px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 240px;gap:60px}.hero h1{font-family:Georgia,"Songti SC",SimSun,serif;font-size:50px;line-height:1.4;font-weight:500;letter-spacing:2px;margin:15px 0 22px}.hero p{max-width:540px;margin:0;color:var(--muted)}.margin-note{border-left:1px solid var(--line);padding:12px 0 0 26px;align-self:center;font-size:14px}.margin-note strong{display:block;font-size:15px;margin-bottom:10px}.margin-note p{line-height:2}.layout{display:grid;grid-template-columns:1fr 205px;gap:65px;padding:43px 0 60px}.section-label{font-size:13px;color:var(--muted);letter-spacing:1px;margin:0 0 24px}.entry{padding:25px 0 28px;border-bottom:1px solid var(--line)}.entry:first-of-type{padding-top:0}.meta{font-size:12px;color:var(--muted)}.entry h2{font-size:23px;line-height:1.55;font-weight:550;margin:9px 0}.entry p{font-size:14px;color:var(--muted);margin:0 0 12px}.read{font-size:13px;color:var(--accent)}.sidebar{font-size:13px}.sidebar section{margin:0 0 32px}.sidebar h3{font-size:14px;margin:0 0 12px}.sidebar p{color:var(--muted);margin:0}.topics a{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--line)}.article{max-width:740px;margin:0 auto;padding:38px 0 65px}.breadcrumb{font-size:13px;color:var(--muted)}.article h1{font-family:Georgia,"Songti SC",SimSun,serif;font-size:37px;line-height:1.5;font-weight:500;margin:25px 0 16px}.article .intro{border-bottom:1px solid var(--line);padding-bottom:26px;margin-bottom:30px}.prose p{margin:20px 0}.lead{font-size:18px;color:#4d5f55}.prose h2{font-size:22px;margin:38px 0 13px;scroll-margin-top:24px}.prose a{text-decoration:underline;text-underline-offset:4px}.prose li{margin:9px 0}.prose ul,.prose ol{padding-left:24px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#eaece3;border:1px solid var(--line);padding:19px 22px;font:14px/1.9 Consolas,monospace;color:#2a493e}aside{border-left:3px solid #adba9d;background:#eeefe6;padding:16px 20px;margin:27px 0;font-size:14px}.toc{font-size:14px;border-bottom:1px solid var(--line);padding-bottom:20px}.toc span{color:var(--muted);margin-right:18px}.toc a{margin-right:18px;display:inline-block}.related{margin-top:45px;padding-top:24px;border-top:1px solid var(--line)}.related a{display:block;padding:8px 0;font-size:15px}.back{font-size:13px;color:var(--accent)}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:24px 0 32px;color:var(--muted);font-size:12px}footer a{white-space:nowrap}@media(max-width:740px){.wrap{padding:0 23px}header{padding:20px 0}nav{gap:18px}.brand{font-size:20px}.hero{display:block;padding:45px 0 35px}.hero h1{font-size:37px}.margin-note{margin-top:30px;padding-top:0}.layout{display:block;padding-top:30px}.sidebar{margin-top:35px;border-top:1px solid var(--line);padding-top:25px}.entry h2{font-size:21px}.article h1{font-size:29px}.article{padding-top:26px}.prose h2{font-size:20px}footer{display:block}footer a{display:block;margin-top:7px}}.hero h1{font-size:45px;letter-spacing:0}.toc{display:block}.toc a{display:block;margin:5px 0;line-height:1.7}.article .meta{line-height:2}.prose code{tab-size:2}pre{font-size:13px;line-height:1.8}.series{border-top:1px solid var(--line);padding:23px 0}.series h2{font-size:23px;margin:0 0 6px}.series p{color:var(--muted);font-size:14px}.hero .eyebrow{letter-spacing:1px}@media(max-width:740px){.hero h1{font-size:33px}nav{gap:15px}.brand{font-size:19px}}