:root{color-scheme:light;--paper:#f6f3ec;--ink:#272923;--muted:#66675e;--line:#d9d6cc;--accent:#9a3d24;--panel:#eeebe2;--body-size:19px;--removed:#f9ded5;--added:#deeadb}
:root[data-theme="dark"]{color-scheme:dark;--paper:#1b1e1c;--ink:rgba(255,255,255,.85);--muted:#b4b8ad;--line:#464b44;--accent:#f2ae91;--panel:#272c27;--removed:#58372f;--added:#304c36}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;line-height:1.75}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}strong,em,h1,h2,h3{font-weight:600}em{font-style:normal}button{border:0;border-radius:4px;background:var(--panel);min-height:42px;padding:4px 12px}a:hover{color:var(--accent)}.skip-link{position:fixed;top:-100px;left:20px;padding:10px;background:var(--paper);z-index:30}.skip-link:focus{top:8px}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(28px,calc((100vw - 1260px)/2));position:sticky;top:0;background:var(--paper);z-index:10;font-size:14px}.topbar>a{text-decoration:none;white-space:nowrap}.edition{color:var(--muted);margin-right:auto;border-left:1px solid var(--line);padding-left:24px;letter-spacing:.12em}.reader-controls{display:flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}.reader-controls output{width:26px;text-align:center;font-size:13px;color:var(--muted)}#theme{margin-left:12px;min-width:62px}.progress-track{position:fixed;top:75px;left:0;right:0;height:3px;z-index:11}#progress{height:100%;width:0;background:var(--accent)}.reading-layout{max-width:1190px;margin:auto;display:grid;grid-template-columns:220px minmax(0,740px);gap:64px;padding:34px 32px 80px;justify-content:center}.sidebar{position:sticky;top:124px;align-self:start;padding-top:12px}.sidebar summary{font-size:13px;color:var(--muted);letter-spacing:.1em;list-style:none;pointer-events:none}.sidebar summary::-webkit-details-marker{display:none}.sidebar nav{display:flex;flex-direction:column;gap:4px;margin-top:22px}.sidebar nav a{font-size:14px;text-decoration:none;display:flex;gap:12px;align-items:baseline;padding:10px 8px;border-left:2px solid transparent;line-height:1.6}.sidebar nav a span{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.sidebar nav a[aria-current="location"]{border-color:var(--accent);color:var(--accent);background:var(--panel)}.reading-state{border-top:1px solid var(--line);padding-top:22px;margin-top:28px;font-size:12px;color:var(--muted);display:flex;justify-content:space-between;font-variant-numeric:tabular-nums}main{min-width:0}article{font-size:var(--body-size);line-height:1.85;overflow-wrap:break-word}.article-block{scroll-margin-top:100px}.article-block p{margin:0 0 1.4em}.article-block h1{font-size:clamp(30px,3.2vw,44px);line-height:1.35;letter-spacing:.02em;margin:28px 0 22px;text-wrap:balance}.byline{font-size:13px;display:flex;flex-wrap:wrap;gap:12px;color:var(--muted)}.review-link{display:inline-block;font-size:13px;margin:14px 0 36px;color:var(--accent)}h2{font-size:1.45em;line-height:1.5;margin:2.2em 0 .9em;padding-top:22px;border-top:1px solid var(--line)}.article-block ul{padding-left:1.3em;margin:1.2em 0 1.6em}.article-block li{padding-left:.15em;margin-bottom:1.05em}.article-block li::marker{color:var(--accent)}.article-block a:not(.zoom-image):not(.review-link){color:var(--accent)}figure{margin:0}.zoom-image{display:block;cursor:zoom-in}.zoom-image img{width:100%;height:auto;max-height:340px;object-fit:contain;display:block;background:#e4ddce}.prompt{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--panel);border-left:3px solid var(--accent);padding:18px 22px;margin:16px 0 22px;font-size:.92em;line-height:1.85;font-family:inherit}.prompt code{font:inherit}.full-prompt{margin:0 0 32px}code{font-size:.92em}#web-block-33{font-size:14px;color:var(--muted);margin-top:40px}.footer{border-top:1px solid var(--line);margin-top:45px;padding-top:28px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.footer p{margin:0 0 8px}.footer p:first-child{color:var(--ink);font-size:14px}.footer a{display:inline-block;margin-top:12px;color:var(--accent)}dialog{padding:0;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);max-width:94vw;max-height:94vh}dialog::backdrop{background:rgba(0,0,0,.8)}dialog img{display:block;max-width:90vw;max-height:82vh;object-fit:contain}#close-image{display:block;margin:8px 8px 8px auto}.review-main{max-width:1140px;margin:42px auto 80px;padding:0 32px}.back-article{font-size:14px;color:var(--accent)}.review-main>h1{font-size:42px;line-height:1.3;margin:32px 0 12px}.review-intro{font-size:20px;margin:0 0 12px}.review-summary{font-size:14px;color:var(--muted)}.diff-legend{display:flex;gap:22px;font-size:13px;margin:25px 0 36px}del{background:var(--removed);text-decoration:line-through;text-decoration-thickness:1px}ins{background:var(--added);text-decoration:underline;text-underline-offset:3px}.revision{margin:0 0 48px;border-top:1px solid var(--line);padding-top:20px;scroll-margin-top:100px}.revision-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.revision-heading h2{margin:0;border:0;padding:0;font-size:22px}.revision-heading h2 span{font-size:13px;color:var(--accent);margin-right:12px}.revision-heading a{font-size:13px;white-space:nowrap;color:var(--accent)}.reason{font-size:14px;color:var(--muted);margin:14px 0 25px}.compare{display:grid;grid-template-columns:1fr 1fr;gap:28px}.compare>div{min-width:0;background:var(--panel);padding:20px 24px}.compare h3{font-size:13px;color:var(--muted);margin:0 0 16px}.diff-text{font-size:calc(var(--body-size) - 2px);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85}.source-text{margin-top:14px;font-size:14px}.source-text summary{cursor:pointer;padding:12px 0;color:var(--accent)}.source-text p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:18px 22px;border-left:2px solid var(--line);color:var(--muted);font-size:15px}
@media(min-width:900px){#web-block-6{background:var(--panel);padding:8px 24px 4px;border-top:2px solid var(--accent)}}
@media(max-width:899px){.topbar{padding:0 22px}.edition{display:none}.reading-layout{display:block;max-width:800px;padding:22px 26px 64px}.sidebar{position:static;padding:0;margin-bottom:26px}.sidebar summary{pointer-events:auto;cursor:pointer;display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink)}.sidebar summary:after{content:'＋'}.sidebar details[open] summary:after{content:'−'}.sidebar nav{margin-top:10px}.reading-state{display:none}.zoom-image img{max-height:300px}.article-block h1{font-size:34px}.compare{grid-template-columns:1fr;gap:16px}}
@media(max-width:480px){.topbar{padding:0 16px;gap:10px;height:68px;font-size:12px}.topbar>a{font-size:12px}.reader-controls{gap:0}.reader-controls button{min-width:36px;padding:4px 6px}.reader-controls output{width:22px}#theme{min-width:48px;margin-left:4px}.progress-track{top:67px}.reading-layout{padding:12px 20px 52px}.article-block h1{font-size:30px;margin-top:24px}.byline{gap:8px;font-size:12px}.article-block ul{padding-left:1.05em}.prompt{padding:14px 16px}.review-main{padding:0 20px;margin-top:28px}.review-main>h1{font-size:34px}.review-intro{font-size:18px}.revision-heading{display:block}.revision-heading h2{font-size:20px}.revision-heading a{display:inline-block;margin-top:8px}.compare>div{padding:16px}.zoom-image img{max-height:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.topbar,.progress-track,.sidebar,.reader-controls,dialog,.review-link,.skip-link{display:none}.reading-layout{display:block;max-width:780px;padding:0}.article-block{break-inside:auto}body{background:white;color:#111}a{color:inherit!important}.prompt{border:1px solid #999}.source-text{display:block}.compare{grid-template-columns:1fr 1fr}}
