:root{color-scheme:light;--bg:#f6f3ec;--surface:#fffdf7;--text:#2a302f;--muted:#6e7773;--line:#d9ded5;--accent:#405f58;--font-size:20px;--line-height:2;--reading-width:720px}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#151c20;--surface:#1e282c;--text:#d5dcd8;--muted:#97aaa5;--line:#344440;--accent:#9dc8b9}}
:root[data-theme=dark]{color-scheme:dark;--bg:#151c20;--surface:#1e282c;--text:#d5dcd8;--muted:#97aaa5;--line:#344440;--accent:#9dc8b9}
*{box-sizing:border-box}html{scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif}button,input,summary{font:inherit}a{color:inherit;text-decoration:none}button,summary{cursor:pointer}button{color:var(--text);background:transparent;border:1px solid var(--line);border-radius:7px;padding:9px 13px;min-height:44px}button:hover,summary:hover{background:var(--surface)}button:disabled{cursor:default;color:var(--muted);font-size:12px;border:0}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.skip{position:fixed;top:-70px;left:20px;z-index:20;background:var(--surface);padding:15px}.skip:focus{top:8px}.topbar{height:80px;padding:0 max(24px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:3;gap:20px}.brand{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:21px;letter-spacing:.13em;white-space:nowrap}.brand small{display:block;font:8px system-ui;letter-spacing:.2em;margin-top:5px;color:var(--muted)}.topbar nav{display:flex;align-items:center;gap:8px}.settings{position:relative}.settings summary{list-style:none;padding:10px 13px;border:1px solid var(--line);border-radius:7px;min-height:44px}.settings summary::-webkit-details-marker{display:none}.settings-panel{position:absolute;right:0;top:55px;width:260px;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:22px;box-shadow:0 16px 60px #0002}.settings label{display:block;font-size:14px;margin-bottom:22px}.settings output{float:right;color:var(--muted);font-variant-numeric:tabular-nums}.settings input{display:block;width:100%;accent-color:var(--accent);margin-top:13px;min-height:24px}.edition-note{text-align:center;font-size:11px;letter-spacing:.12em;color:var(--muted);padding:12px 16px;border-bottom:1px solid var(--line)}.home{max-width:1040px;margin:auto;padding:72px 28px 40px}.hero{display:grid;grid-template-columns:290px 1fr;gap:88px;align-items:center;padding-bottom:80px}.cover{position:relative;isolation:isolate;overflow:hidden;height:410px;background:radial-gradient(ellipse at 80% 25%,#365453 0,transparent 55%),#13232b;color:#f0f1dc;box-shadow:16px 24px 50px #081e292b;border-left:5px solid #31474e;border-radius:2px 5px 5px 2px;padding:30px;display:flex;flex-direction:column}.cover-kicker{font:9px system-ui;letter-spacing:.18em;opacity:.7;z-index:1}.cover-title{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:62px;letter-spacing:.16em;line-height:1.4;margin-top:72px;z-index:1;font-weight:400}.cover-bottom{margin-top:auto;font-size:10px;letter-spacing:.2em;opacity:.6;z-index:1}.orbit{position:absolute;width:390px;height:170px;border:1px solid #afc6b34d;border-radius:50%;transform:rotate(-43deg);left:30px;top:170px;z-index:0}.orbit:after{content:"";width:8px;height:8px;border-radius:50%;background:#dbead6;position:absolute;left:40px;top:33px;box-shadow:0 0 35px #dbead680}.eyebrow{color:var(--muted);font-size:10px;letter-spacing:.18em}.hero h1{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:48px;font-weight:400;letter-spacing:.13em;margin:22px 0 10px}.english-title{font-family:Georgia,serif;color:var(--muted);font-size:20px;font-style:italic;margin:0}.synopsis{max-width:530px;font-size:15px;line-height:2.1;margin:30px 0 24px;color:var(--text)}.book-stats{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.book-stats span{padding:0 10px}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:28px}.primary{display:inline-block;background:var(--accent);color:var(--bg);padding:13px 26px;border-radius:6px;font-size:14px}.text-link{font-size:13px;color:var(--muted);padding:12px 0}.muted{color:var(--muted);font-size:12px;line-height:1.8}.section-heading{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:18px}.section-heading h2{font-family:"Songti SC",serif;font-size:25px;font-weight:400;margin:0}.section-heading span{font-size:10px;letter-spacing:.15em;color:var(--muted)}.chapter-list{list-style:none;padding:0;margin:0}.home-contents>.chapter-list{display:grid;grid-template-columns:1fr 1fr;column-gap:50px}.chapter-list li{border-bottom:1px solid var(--line)}.chapter-list li[hidden]{display:none}.chapter-list a{display:flex;align-items:center;gap:16px;padding:19px 3px;font-size:14px;min-height:54px}.chapter-list a:hover,.chapter-list a[aria-current=page]{color:var(--accent);background:var(--surface)}.chapter-list a>span{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.chapter-list small{font-size:10px;color:var(--muted);margin-left:auto;white-space:nowrap}.reading{width:min(calc(100% - 48px),var(--reading-width));margin:auto}.chapter-heading{text-align:center;padding:70px 0 48px}.chapter-heading h1{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:clamp(24px,4vw,34px);font-weight:400;letter-spacing:.08em;line-height:1.6}.chapter-heading .muted span{padding:0 8px}progress{display:block;width:100px;height:2px;margin:24px auto 0;border:0;background:var(--line);accent-color:var(--accent)}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--accent)}progress::-moz-progress-bar{background:var(--accent)}.prose{font-family:"Songti SC","Noto Serif CJK SC","Source Han Serif SC",SimSun,serif;font-size:var(--font-size);line-height:var(--line-height);text-align:justify;text-justify:inter-ideograph;line-break:strict;overflow-wrap:break-word;hanging-punctuation:allow}.prose p{text-indent:2em;margin:0 0 1em;scroll-margin-top:110px}.prose strong{font-weight:600}.prose hr{border:0;width:48px;height:1px;background:var(--line);margin:3em auto}.chapter-nav{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin:60px 0 20px;padding:28px 0;align-items:center;font-size:13px;line-height:1.8}.chapter-nav a{padding:10px 0;max-width:38%}.chapter-nav span{font-size:11px;color:var(--muted)}.site-footer{max-width:1040px;margin:30px auto 0;padding:28px;border-top:1px solid var(--line);display:flex;align-items:center;flex-wrap:wrap;gap:18px;font-size:10px;color:var(--muted)}.site-footer span{margin-left:auto}dialog{color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:25px;width:min(94vw,580px);max-height:85dvh}dialog::backdrop{background:#08141699}.dialog-top{display:flex;align-items:center;justify-content:space-between}.dialog-top h2{font-family:"Songti SC",serif;font-weight:400}.search-label{font-size:12px;display:block;color:var(--muted);margin:12px 0 20px}.search-label input{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}
@media(max-width:760px){.topbar{height:70px;padding:0 18px;gap:12px}.brand{font-size:17px}.brand small{font-size:6px}.topbar nav{gap:5px}.topbar button,.settings summary{font-size:12px;padding:9px 10px}.home{padding:40px 24px 20px}.hero{grid-template-columns:1fr;gap:40px;padding-bottom:50px}.cover{width:215px;height:300px;margin:auto;padding:22px}.cover-title{font-size:44px;margin-top:45px}.cover-kicker{font-size:7px}.cover-bottom{font-size:8px}.orbit{width:290px;height:130px;top:135px;left:10px}.hero h1{font-size:34px;margin-top:14px}.synopsis{font-size:14px;margin-top:24px}.home-contents>.chapter-list{grid-template-columns:1fr}.reading{width:calc(100% - 40px)}.chapter-heading{padding-top:45px}.chapter-nav{font-size:12px;gap:12px}.site-footer{margin-top:20px;padding:24px 20px;gap:10px}.site-footer span{margin-left:0;width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
