@font-face{font-family:BookSong;src:url('/assets/fonts/song.e75ea8c5.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;background:#f8f6f0;color:#2a2c28;font-family:system-ui,-apple-system,'Segoe UI',sans-serif;--reading-size:19px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #486d59;outline-offset:4px}a:hover{color:#456550}button:hover{background:#e9e9df}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:20px;padding:12px;background:white;z-index:20}.skip:focus{top:10px}.topbar{height:72px;position:sticky;top:0;z-index:10;background:#f8f6f0f5;border-bottom:1px solid #dedfd4;display:flex;align-items:center;justify-content:space-between;padding:0 42px;backdrop-filter:blur(10px)}.brand{font-family:Georgia,serif;letter-spacing:.19em;font-size:20px}.brand span{font-family:system-ui,sans-serif;letter-spacing:.12em;margin-left:22px;font-size:12px;color:#74796e}.tools{display:flex;gap:8px;align-items:center}.tools button{border:1px solid #d9dcd0;border-radius:5px;background:transparent;padding:7px 11px;font-size:13px;min-height:36px}.tools #toggle-german{margin-left:10px}.tools button[aria-pressed=true]{background:#e6eadf}.sidebar{position:fixed;top:72px;bottom:0;width:258px;padding:35px 26px 24px 42px;border-right:1px solid #dedfd4;overflow:auto}.sidebar summary{font-size:12px;letter-spacing:.16em;color:#6e756a;margin-bottom:22px;list-style:none}.sidebar summary span{display:none}.sidebar nav{display:grid;gap:5px}.sidebar nav a{display:block;font-size:14px;line-height:1.65;padding:8px 10px;border-radius:4px}.sidebar nav a:hover,.sidebar nav a.current{background:#e9eddf}.sidebar nav small{display:block;font-size:12px;color:#777c70}.sidebar-foot{font-size:11px;color:#8b8f83;line-height:2;margin:30px 10px 0;border-top:1px solid #dedfd4;padding-top:20px}main{max-width:1170px;padding:52px 72px 28px;margin-left:258px}.hero{padding:12px 0 32px}.eyebrow{font-size:11px;letter-spacing:.18em;color:#6f796b;margin:0 0 18px}.hero h1{font-family:BookSong,'Noto Serif CJK SC','Songti SC',serif;font-size:clamp(38px,4.5vw,62px);font-weight:400;letter-spacing:.12em;margin:0 0 14px;line-height:1.3}.subtitle{font:italic 21px Georgia,serif;color:#72796b;margin:0 0 22px}.byline{font-size:13px;color:#717669}.edition{font-size:13px;color:#666f61;border:1px solid #dcded3;padding:16px 20px;line-height:1.9;margin-bottom:38px;border-radius:5px}.edition summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;color:#4c5848;font-size:12px}.edition summary:before{content:'＋';margin-right:4px}.edition[open] summary:before{content:'−'}.edition summary span{margin-left:auto;color:#8a8e81}.edition a,.prose a{color:#4c6a54;text-decoration:underline;text-underline-offset:3px}.edition h3{font-size:15px}.reading-meta{display:flex;justify-content:space-between;gap:10px;font-size:11px;letter-spacing:.05em;color:#8a8e81;padding:0 0 15px;border-bottom:1px solid #dcded3}.prose{font-family:BookSong,'Noto Serif CJK SC','Songti SC',serif;font-size:var(--reading-size);line-height:2.08;overflow-wrap:anywhere}.prose h2{font-size:1.45em;font-weight:500;margin:40px 0 20px;line-height:1.6}.prose h3{font-size:1.1em;font-weight:500;margin:30px 0 16px}.prose h4{font-size:1em;font-weight:500;margin:24px 0 12px}.prose>p{margin:18px 0}.prose>p:has(>.anchor-target:only-child){margin:0}.prose>p:has(>em:only-child){color:#72796c;font:italic 16px Georgia,serif}.prose>p:has(>a[href^='https://www.marxists.org']){font-family:system-ui,sans-serif;font-size:12px;color:#8a8e81}.unit{position:relative;padding:22px 0 24px;border-bottom:1px solid #e4e5dc;scroll-margin-top:95px}.unit-number{display:inline-block;font:11px ui-monospace,SFMono-Regular,monospace;color:#92998a!important;text-decoration:none!important;letter-spacing:.07em;margin-bottom:9px}.zh{text-align:justify}.zh>a{font-family:system-ui,sans-serif;font-size:11px;white-space:nowrap}.german{margin-top:14px;font:16px/1.85 Georgia,'Times New Roman',serif;color:#626b5d}.german summary{cursor:pointer;font:11px/1.6 system-ui,sans-serif;letter-spacing:.04em;color:#79866f;display:list-item;margin-left:13px}.german[open]{border-left:2px solid #d7ddcd;padding-left:18px;margin-top:20px}.german[open] summary{margin-bottom:14px}.german div{hyphens:auto}.source-link{font:11px/2 system-ui,sans-serif;display:inline-block;margin-top:12px}.table-scroll{overflow:visible}.table-scroll:empty{display:none}.prose table{border-collapse:collapse;font-size:.8em;width:100%;display:block;overflow-x:auto}.prose td,.prose th{border:1px solid #daddd0;padding:10px;min-width:120px;vertical-align:top}.chapter-title{padding:8px 0 28px}.chapter-title h1{font-family:BookSong,serif;font-size:30px;line-height:1.5;font-weight:400;margin:0}.pagination{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #d7dbcf;padding:28px 0;margin-top:50px;font-size:13px}.pagination>span{font-size:11px;color:#8c9284}.pagination a{border:1px solid #d7dbcf;border-radius:5px;padding:10px 14px}.pagination a:hover{background:#e9eddf}footer{display:flex;justify-content:space-between;font-size:10px;color:#929887;letter-spacing:.06em;padding:15px 0}.resume{display:block;background:#e9eddf;border-radius:4px;padding:12px 16px;margin-bottom:24px;font-size:13px}.anchor-target{scroll-margin-top:90px}.prose hr{border:0;border-top:1px solid #dedfd4;margin:32px 0}.prose code{font-size:.8em;word-break:break-all}.prose pre{white-space:pre-wrap;font-size:12px}.prose blockquote{border-left:2px solid #cfd7c6;margin:20px 0;padding:0 20px;color:#5e6856}
@media(min-width:901px){.sidebar details>summary{pointer-events:none}.sidebar details:not([open])>nav,.sidebar details:not([open])>.sidebar-foot{display:block}.sidebar details:not([open])>nav{display:grid}}
@media(min-width:1500px){main{margin-left:max(258px,calc((100vw - 1000px)/2));max-width:1000px}}
@media(max-width:1100px){main{padding:38px 40px 24px}.sidebar{width:226px;padding-left:28px}main{margin-left:226px}.topbar{padding:0 28px}}
@media(max-width:900px){.topbar{height:62px;padding:0 20px}.brand{font-size:17px}.brand span{display:none}.tools{gap:5px}.tools button{font-size:12px;padding:6px 9px}.tools #toggle-german{margin-left:4px}.sidebar{position:relative;top:auto;bottom:auto;width:auto;border-right:0;border-bottom:1px solid #dedfd4;padding:0 20px;background:#f1f2e9}.sidebar summary{cursor:pointer;margin:0;padding:16px 0;font-size:12px;letter-spacing:.05em;display:flex;justify-content:space-between}.sidebar summary span{display:inline;color:#8b9282;font-size:10px}.sidebar nav{grid-template-columns:1fr 1fr;padding-bottom:18px}.sidebar-foot{display:none}main{margin-left:0;max-width:820px;padding:28px 24px 18px;margin-inline:auto}.hero{padding-top:8px}.hero h1{font-size:42px}.subtitle{font-size:18px}.edition{padding:13px 14px;margin-bottom:28px}.edition summary{flex-wrap:wrap}.edition summary span{font-size:10px}.prose{font-size:var(--reading-size)}.reading-meta{font-size:10px}.chapter-title h1{font-size:25px}}
@media(max-width:420px){main{padding-inline:19px}.hero h1{font-size:37px}.reading-meta{letter-spacing:0}.pagination{gap:7px}.pagination a{padding:9px 10px}.prose{line-height:1.95}}
@media print{.sidebar,.topbar,.tools,.pagination,.resume,footer,.edition,.german{display:none!important}main{margin:0;padding:0;max-width:none}.prose{font-size:11pt}.unit{break-inside:avoid}body{background:white;color:black}}

/* 2026-10-30: sentence-paired reading layout */
.sentence-pairs{margin-top:3px}
.sentence-pair{padding:15px 0 16px;border-bottom:1px solid #e4e5dc}
.sentence-pair:last-child{border-bottom:0;padding-bottom:7px}
.de-sentence{font:16px/1.86 Georgia,'Times New Roman',serif;color:#53604e;background:#eef2e9;border-left:2px solid #c7d2bd;padding:10px 13px;margin-bottom:10px;hyphens:auto}
.zh-sentence{text-align:justify}
.source-cluster{border-left:2px solid #e4cfa1;padding-left:12px}
.source-cluster .de-sentence{margin-left:-12px}
.source-cluster:before{content:attr(data-source-sentences) '句德文合译';display:block;margin-bottom:7px;font:10px/1.4 system-ui,sans-serif;letter-spacing:.06em;color:#917a4a}
.unit-notes{margin-top:10px;font:11px/1.7 system-ui,sans-serif;color:#73806e}
.unit-notes a{font:inherit}
body.german-hidden .de-sentence{display:none}
body.german-hidden .sentence-pair{padding-top:5px}
@media(max-width:900px){.sentence-pair{padding:13px 0 15px}.de-sentence{font-size:14px;line-height:1.78;padding:9px 11px;margin-bottom:8px}.source-cluster{padding-left:9px}.source-cluster .de-sentence{margin-left:-9px}}
@media(max-width:420px){.de-sentence{font-size:13.5px}}
