:root{--bg:#faf9f7;--bg-raised:#fff;--ink:#1a1815;--ink-soft:#57524a;--ink-faint:#8b857b;--accent:#8a2f2b;--rule:#e2ded7;--plate-bg:#f1efeb;--max-text:42rem;--max-wide:72rem;--serif:"Georgia", "Times New Roman", "Songti SC", "Noto Serif SC", "Hiragino Mincho ProN", "Yu Mincho", serif;--sans:-apple-system, "PingFang SC", "Hiragino Sans", "Segoe UI", "Noto Sans", sans-serif}[data-theme=dark]{--bg:#161513;--bg-raised:#1e1d1a;--ink:#e8e4dd;--ink-soft:#b0aaa0;--ink-faint:#7a746b;--accent:#c96f62;--rule:#2e2c28;--plate-bg:#211f1c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.7;transition:background-color .25s,color .25s}:lang(zh-CN) body,body:lang(zh-CN),:lang(ja) body,body:lang(ja){line-height:1.9}:lang(zh-CN) .prose,:lang(ja) .prose{letter-spacing:.01em;line-height:1.95}a{color:inherit;text-decoration-color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent)}img{max-width:100%;height:auto;display:block}h1,h2,h3{font-family:var(--serif);margin:0;font-weight:700;line-height:1.25}.display{letter-spacing:-.01em;font-size:clamp(1.9rem,4.5vw,3.1rem);line-height:1.12}:lang(zh-CN) .display,:lang(ja) .display{letter-spacing:.01em;line-height:1.3}.kicker{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.72rem;font-weight:600;text-decoration:none}.kicker:hover{text-decoration:underline}.byline{font-family:var(--sans);color:var(--ink-faint);font-size:.82rem}.byline a{text-decoration:none}.wrap{max-width:var(--max-wide);margin:0 auto;padding:0 1.25rem}.text-col{max-width:var(--max-text);margin:0 auto}.site-header{border-bottom:1px solid var(--rule);background:var(--bg)}.site-header .bar{justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 0;display:flex}.brand{font-family:var(--serif);letter-spacing:-.01em;font-size:1.35rem;font-weight:700;text-decoration:none}.brand small{color:var(--ink-faint);letter-spacing:.08em;margin-left:.35rem;font-size:.7em;font-weight:400}.site-nav{font-family:var(--sans);align-items:center;gap:1.1rem;font-size:.88rem;display:flex}.site-nav a{color:var(--ink-soft);text-decoration:none}.site-nav a:hover{color:var(--accent)}.utility{align-items:center;gap:.6rem;display:flex}.lang-switch{font-family:var(--sans);gap:.15rem;font-size:.8rem;display:flex}.lang-switch a,.lang-switch span{color:var(--ink-faint);border-radius:3px;padding:.2rem .45rem;text-decoration:none}.lang-switch a:hover{color:var(--accent)}.lang-switch [aria-current=true]{color:var(--ink);font-weight:600}.theme-toggle{border:1px solid var(--rule);cursor:pointer;width:1.9rem;height:1.9rem;color:var(--ink-soft);background:0 0;border-radius:50%;place-items:center;font-size:.85rem;display:grid}.theme-toggle:hover{border-color:var(--ink-faint)}.site-footer{border-top:1px solid var(--rule);font-family:var(--sans);color:var(--ink-faint);margin-top:5rem;padding:2.2rem 0 3rem;font-size:.82rem}.site-footer a{color:var(--ink-soft)}.featured{border-bottom:1px solid var(--rule);padding:2.6rem 0 2.2rem}.featured .grid{grid-template-columns:3fr 2fr;align-items:center;gap:2.2rem;display:grid}@media (width<=760px){.featured .grid{grid-template-columns:1fr}}.featured img{background:var(--plate-bg)}.featured .display{margin:.5rem 0 .8rem}.featured p.lede{color:var(--ink-soft);margin:0 0 1rem;font-size:1.05rem}.section-title{font-family:var(--serif);border-bottom:2px solid var(--ink);margin:2.8rem 0 1.4rem;padding-bottom:.5rem;font-size:1.5rem}.card-grid{grid-template-columns:repeat(3,1fr);gap:1.8rem 1.6rem;display:grid}@media (width<=900px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.card-grid{grid-template-columns:1fr}}.card{flex-direction:column;gap:.45rem;display:flex}.card a.thumb{background:var(--plate-bg);display:block}.card .thumb img{aspect-ratio:3/2;object-fit:cover;width:100%}.card h3{font-size:1.12rem;line-height:1.35}.card h3 a{text-decoration:none}.card h3 a:hover{color:var(--accent)}.topic-rows{font-family:var(--sans);margin-top:1rem}.topic-row{border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:baseline;gap:.5rem .9rem;padding:.55rem 0;display:flex}.topic-row .axis{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);min-width:7.5rem;font-size:.72rem;font-weight:600}.topic-row a{color:var(--ink-soft);font-size:.88rem;text-decoration:none}.topic-row a:hover{color:var(--accent)}.article-header{padding:2.6rem 0 1.6rem}.article-header .display{margin:.6rem 0 .9rem}.article-hero{margin:0 0 2.2rem}.article-hero img{background:var(--plate-bg);width:100%}figure{margin:2.2rem 0}figure img{background:var(--plate-bg);margin:0 auto}figcaption,.figcap{font-family:var(--sans);color:var(--ink-faint);margin-top:.55rem;font-size:.78rem;line-height:1.5}figcaption a{color:var(--ink-faint)}.prose{font-size:1.0625rem}.prose p{margin:0 0 1.25em}.prose h2{margin:2.2em 0 .7em;font-size:1.45rem}.prose h3{margin:1.8em 0 .5em;font-size:1.15rem}.prose blockquote{border-left:3px solid var(--accent);color:var(--ink-soft);margin:1.8em 0;padding-left:1.1em;font-style:italic}.prose hr{border:none;border-top:1px solid var(--rule);width:5rem;margin:2.5em auto}.source-note{font-family:var(--sans);color:var(--ink-faint);border-top:1px solid var(--rule);margin-top:2.5rem;padding-top:1rem;font-size:.78rem}.deepzoom-block{margin:2.8rem 0}.deepzoom-viewer{aspect-ratio:16/10;background:var(--plate-bg);border:1px solid var(--rule);width:100%}.deepzoom-hint{font-family:var(--sans);color:var(--ink-faint);margin-top:.5rem;font-size:.78rem}.related{margin-top:3.5rem}.draft-badge{font-family:var(--sans);color:#fff;background:var(--accent);letter-spacing:.08em;vertical-align:middle;border-radius:3px;padding:.15rem .5rem;font-size:.7rem;font-weight:600}.gateway{text-align:center;place-items:center;min-height:100dvh;display:grid}.gateway h1{margin-bottom:.4rem;font-size:clamp(2rem,5vw,3rem)}.gateway p{color:var(--ink-soft);margin:0 0 2rem}.gateway .langs{font-family:var(--sans);justify-content:center;gap:1.2rem;display:flex}.gateway .langs a{border:1px solid var(--rule);border-radius:4px;padding:.7rem 1.6rem;font-size:1.05rem;text-decoration:none}.gateway .langs a:hover{border-color:var(--accent);color:var(--accent)}
