:root{--bg:#ffffff;--fg:#25201c;--mute:#857b6f;--rule:#ece7e0;--underline:#cfc7bb;--accent:#c8321c;--sel:#f6dccd;--mark-bg:#fbe8a8;--font-sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Noto Sans SC","Source Han Sans SC","Microsoft YaHei",system-ui,sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1a1714;--fg:#ece6dc;--mute:#9a9083;--rule:#2c2722;--underline:#4f463d;--accent:#ff7a4d;--sel:#4a2a1c;--mark-bg:#5a4514;color-scheme:dark}}:root[data-theme=dark]{--bg:#1a1714;--fg:#ece6dc;--mute:#9a9083;--rule:#2c2722;--underline:#4f463d;--accent:#ff7a4d;--sel:#4a2a1c;--mark-bg:#5a4514;color-scheme:dark}html{scroll-padding-top:env(safe-area-inset-top,0px);-webkit-text-size-adjust:100%;text-size-adjust:100%}*,*:before,*:after{box-sizing:inherit}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}::selection{background:var(--sel)}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.wrap{max-width:680px;margin:0 auto;padding:0 24px}.ell{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top{display:flex;align-items:center;justify-content:space-between;padding:36px 0 64px}.crumb{display:flex;align-items:baseline;gap:.55em;min-width:0}.brand{font-size:18px;font-weight:500;letter-spacing:.02em;text-decoration:none;white-space:nowrap}.crumb .sep{color:var(--accent);font-size:18px}.crumb .sec{color:var(--mute);font-size:18px;text-decoration:none;white-space:nowrap}.crumb a.sec:hover{color:var(--fg)}.top nav{display:flex;align-items:center;gap:22px}.top nav a{color:var(--mute);text-decoration:none}.top nav a:hover{color:var(--fg)}.theme{position:relative;width:40px;height:22px;padding:0;border:1px solid var(--rule);border-radius:11px;background:transparent;color:var(--mute);cursor:pointer}.theme .knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .18s ease}.theme[data-dark=true] .knob{transform:translate(18px)}.theme svg{width:12px;height:12px;display:block}.theme .moon,.theme[data-dark=true] .sun{display:none}.theme[data-dark=true] .moon{display:block}.bottom{margin-top:96px;padding:24px 0 48px;border-top:1px solid var(--rule);color:var(--mute);font-size:14px;text-align:center}.cases{list-style:none;margin:0;padding:0}.cases li{display:grid;grid-template-columns:5.6em minmax(0,1fr);column-gap:18px;padding:9px 0;align-items:baseline}.cases .d{color:var(--mute);font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap}.cases a,.pn a{text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:var(--underline);text-underline-offset:5px}.cases a:hover,.pn a:hover{color:var(--accent);text-decoration-color:var(--accent)}.pager{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:56px;padding-top:24px;border-top:1px solid var(--rule);color:var(--mute);font-size:15px}.pager .mid{font-variant-numeric:tabular-nums}.pager .r{text-align:right}.pager a{color:var(--fg);text-decoration:none}.pager a:hover{color:var(--accent)}.post-title{margin:0 0 14px;font-size:28px;line-height:1.4;font-weight:600;letter-spacing:.005em;text-wrap:balance}.meta{display:flex;flex-wrap:wrap;gap:4px 20px;margin-bottom:44px;color:var(--mute);font-size:15px;font-variant-numeric:tabular-nums}.meta a{color:var(--mute)}.meta a:hover{color:var(--accent)}.pn{margin-top:64px;padding-top:24px;border-top:1px solid var(--rule)}.pn-label{color:var(--mute);font-size:14px}.pn-title{display:block}.pn--side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}.pn--side .pn-item{min-width:0}.pn--side .pn-item--next{text-align:right}.pn--side .pn-label{display:block;margin-bottom:5px}.pn--rows .pn-item{display:grid;grid-template-columns:3.6em minmax(0,1fr);column-gap:14px;padding:9px 0;align-items:baseline}.pn--rows .pn-label{font-size:15px}.prose{font-size:17px;line-height:1.95;overflow-wrap:break-word;text-autospace:normal}.prose :where(p,h1,h2,h3,h4,h5,h6,ul,ol,dl,blockquote,table,figure,details){margin:0}.prose>:first-child{margin-top:0}.prose>*+*{margin-block-start:1.35em}.prose>*+:is(h2,h3,h4,h5,h6){margin-block-start:2.4em}.prose>:is(h2,h3,h4,h5,h6)+*{margin-block-start:.8em}.prose p{text-wrap:pretty;text-align:justify}.prose :is(h1,h2,h3,h4,h5,h6){font-weight:600;line-height:1.5;letter-spacing:.005em;text-wrap:balance}.prose h1{font-size:26px}.prose h2{font-size:22px}.prose h3{font-size:19px}.prose h4{font-size:17px}.prose h5{font-size:16px}.prose h6{font-size:15px;color:var(--mute)}.prose :is(h2,h3,h4) .anchor{margin-left:.45em;color:var(--mute);text-decoration:none;font-weight:400;opacity:0;transition:opacity .15s ease}.prose :is(h2,h3,h4):hover .anchor,.prose .anchor:focus-visible{opacity:1}.prose .anchor:hover{color:var(--accent)}.prose a{text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:var(--underline);text-underline-offset:5px;overflow-wrap:anywhere}.prose a:hover{color:var(--accent);text-decoration-color:var(--accent)}.prose strong,.prose b{font-weight:650}.prose em,.prose i{font-style:italic}.prose :lang(zh) em,.prose em:lang(zh){font-style:normal;text-emphasis:filled circle;text-emphasis-position:under right;text-emphasis-color:var(--accent)}.prose del,.prose s{color:var(--mute);text-decoration-thickness:1px}.prose mark{background:var(--mark-bg);color:inherit;padding:.05em .25em;border-radius:3px}.prose :is(sub,sup){font-size:.72em;line-height:0}.prose abbr[title]{text-decoration:underline dotted var(--underline);text-underline-offset:4px;cursor:help}.prose code{font-family:var(--font-mono);font-size:.9em}.prose :is(ul,ol){padding-left:1.6em}.prose li{margin:0}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--mute)}.prose li>*+*{margin-block-start:.5em}.prose li>:is(ul,ol){margin-block-start:.4em}.prose ol{list-style:decimal}.prose ol ol{list-style:lower-alpha}.prose ol ol ol{list-style:lower-roman}.prose ul.contains-task-list,.prose ul:has(>li>input[type=checkbox]){list-style:none;padding-left:.2em}.prose li:has(>input[type=checkbox]){list-style:none}.prose li>input[type=checkbox]{margin:0 .55em 0 0;vertical-align:-.1em;accent-color:var(--accent)}.prose dt{font-weight:600;margin-top:1em}.prose dt:first-child{margin-top:0}.prose dd{margin:.2em 0 0;padding-left:1.6em;color:var(--fg)}.prose blockquote{padding:.1em 0 .1em 1.2em;border-left:2px solid var(--underline);color:var(--mute)}.prose blockquote>*+*{margin-block-start:.8em}.prose blockquote :is(p,li){color:inherit}.prose blockquote cite,.prose blockquote footer{display:block;margin-top:.6em;font-size:15px;font-style:normal}.prose blockquote cite:before{content:"\2014\2014  "}.prose hr{border:0;border-top:1px solid var(--rule);margin:2.8em 0}.prose table{display:block;width:max-content;max-width:100%;margin-inline:auto;overflow-x:auto;border-collapse:collapse;font-size:15px;line-height:1.7;font-variant-numeric:tabular-nums}.prose :is(th,td){padding:.6em 1em;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule)}.prose th{font-weight:600;border-bottom:1px solid var(--underline);white-space:nowrap}.prose :is(th,td):first-child{padding-left:0}.prose :is(th,td):last-child{padding-right:0}.prose :is(th,td)[align=center]{text-align:center}.prose :is(th,td)[align=right]{text-align:right}.prose tbody tr:last-child td{border-bottom-color:var(--underline)}.prose img,.prose video{max-width:100%;height:auto;border-radius:4px}.prose p>img:only-child{display:block;margin-inline:auto}.prose figure{margin:2em 0}.prose figure img{display:block;margin-inline:auto}.prose figcaption{margin-top:.7em;text-align:center;color:var(--mute);font-size:14px;line-height:1.6}.prose iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:4px}.prose audio{width:100%}.prose details{border:1px solid var(--rule);border-radius:6px;padding:.7em 1em}.prose summary{cursor:pointer;font-weight:600;list-style-position:outside}.prose details[open]>summary{margin-bottom:.6em}.prose details>*+*{margin-block-start:.7em}.prose :is(sup.footnote-reference,sup[id^=fnref]){font-size:.72em;line-height:0;padding-left:.1em}.prose :is(sup.footnote-reference,sup[id^=fnref]) a,.prose a.footnote-ref{text-decoration:none;color:var(--accent);padding:0 .1em}.prose :is(.footnotes,section.footnotes){margin-top:3em;padding-top:1.2em;border-top:1px solid var(--rule);font-size:15px;line-height:1.8;color:var(--mute)}.prose .footnotes ol{padding-left:1.4em}.prose .footnotes li+li{margin-top:.5em}.prose .footnotes p{display:inline}.prose a.footnote-backref{text-decoration:none;margin-left:.3em}.prose .footnote-definition{display:flex;gap:.7em;font-size:15px;line-height:1.8;color:var(--mute)}.prose .footnote-definition-label{font-size:.85em;line-height:1.9;color:var(--accent)}@media(max-width:480px){.wrap{padding:0 20px}.top{padding:24px 0 44px}.cases li{grid-template-columns:5.2em minmax(0,1fr);column-gap:14px}.cases .d{font-size:14px}.post-title{font-size:24px}.prose{font-size:16.5px}.prose h2{font-size:20px}.prose h3{font-size:18px}}@media(prefers-reduced-motion:reduce){.theme .knob,.prose .anchor{transition:none}}@media print{.top nav,.pager,.pn,.bottom{display:none}body{background:#fff;color:#000}.prose a{text-decoration:none}}
