:root{--paper:#f7f1e5;--ink:#34382f;--muted:#898775;--accent:#506553;--font-size:20px}*{box-sizing:border-box}body{margin:0;background:#e8e4d9;color:var(--ink);font-family:"Microsoft YaHei",sans-serif}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;z-index:5;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23807352' opacity='.28' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:1px solid #c9c6b6;background:transparent;border-radius:3px;padding:9px 14px;cursor:pointer}button:hover{background:#dedfce}button:disabled{opacity:.32;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.toolbar{height:72px;position:sticky;top:0;z-index:10;background:#f2eee4f5;border-bottom:1px solid #d6d3c6;display:flex;align-items:center;justify-content:space-between;padding:0 36px;backdrop-filter:blur(12px)}.brand{text-decoration:none;color:var(--ink);letter-spacing:4px;font-family:serif;font-size:23px}.brand small{font:11px sans-serif;letter-spacing:3px;margin-left:15px;color:var(--muted)}.settings{display:flex;align-items:center;gap:12px}.settings button{border:0;padding:10px}.settings output{font-size:12px;color:var(--muted)}#menu{border:0}aside{position:fixed;top:72px;bottom:0;left:0;width:270px;padding:35px 25px;background:#ede9dd;border-right:1px solid #d6d3c6;overflow:auto;z-index:8}.catalog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.catalog-top small{color:var(--muted);font-size:11px}nav h2{font-size:13px;letter-spacing:1px;margin:30px 0 18px;color:var(--accent)}nav a{display:block;text-decoration:none;color:#66685b;padding:13px 10px;font-size:14px;border-left:2px solid transparent;line-height:1.8}nav a.active{border-color:var(--accent);background:#dfe2d4;color:#344b39}nav a small{display:block;color:var(--muted);font-size:10px}.catalog-note{font:12px serif;color:var(--muted);margin-top:65px;letter-spacing:2px}main{margin:40px 40px 0 310px;min-height:calc(100vh - 112px);background:var(--paper);box-shadow:0 5px 40px #5449320b;padding:60px clamp(30px,6vw,105px) 20px}.cover{max-width:720px;margin:auto}.cover-frame{position:relative;border:1px solid #b9bda9;min-height:650px;padding:55px 44px 30px;overflow:hidden;background:linear-gradient(150deg,#f6f0df,#edf0e3)}.cover-kicker{font-size:10px;letter-spacing:5px;color:var(--accent);margin:35px 0 22px}.cover h1{font:clamp(45px,5vw,76px) "STSong","SimSun",serif;letter-spacing:12px;margin:0;position:relative;z-index:2}.cover #subtitle{font:15px serif;letter-spacing:5px;color:#767c68;margin-top:25px}.seal{position:absolute;right:35px;top:40px;writing-mode:vertical-rl;color:#935c48;border:1px solid #a47760;padding:8px 5px;font:12px serif;letter-spacing:4px}.mountains{position:absolute;left:-15%;right:-15%;height:310px;bottom:65px;overflow:hidden}.mountains i{position:absolute;inset:60px -10% -80px;background:#aab7a0;clip-path:polygon(0 75%,14% 40%,25% 62%,45% 5%,60% 55%,76% 20%,100% 80%,100% 100%,0 100%);opacity:.4}.mountains i:nth-child(2){transform:translate(75px,65px) scale(1.2);background:#6d8a79;opacity:.4}.mountains i:nth-child(3){transform:translate(-90px,140px);background:#3e6256;opacity:.5}.cover-bottom{position:absolute;bottom:30px;left:40px;right:40px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #bbc3ae;padding-top:20px;font:13px serif;letter-spacing:3px}.cover-bottom button{background:#4b6252;color:#fff;border:0;padding:13px 20px}.cover-bottom button span{margin-left:20px}.chapter-meta{display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;color:var(--muted)}#reading{max-width:760px;margin:auto}#chapter-title{font:30px/1.6 "SimSun",serif;text-align:center;margin:45px 0 15px;outline:none}.divider{text-align:center;font-size:8px;color:#a6ad96;margin:0 0 45px}article{font-family:"Source Han Serif SC","Noto Serif CJK SC","STSong","SimSun",serif;font-size:var(--font-size);line-height:2.15;overflow-wrap:anywhere}article p{text-indent:2em;margin:0 0 1em;text-align:justify}.chapter-nav{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #ddd7c7;padding-top:30px;margin-top:55px}.chapter-nav button{font-size:13px}.endnote{text-align:center;font:12px serif;color:var(--muted);margin:45px 0}footer{text-align:center;font-size:10px;letter-spacing:3px;color:#989584;padding:45px 0 15px}footer span{padding:0 10px}#message{line-height:2;color:#8c4f3c}body.focus aside{display:none}body.focus main{margin-left:auto;margin-right:auto;max-width:1000px}.shade{display:none}@media(min-width:901px){#menu{min-width:100px}}@media(max-width:900px){.toolbar{height:62px;padding:0 12px}.brand{font-size:18px;letter-spacing:2px}.brand small{display:none}.settings{gap:1px}aside{top:62px;transform:translateX(-100%);transition:transform .2s;width:280px;z-index:12}body.menu-open aside{transform:translateX(0)}body.menu-open .shade{display:block;position:fixed;inset:62px 0 0;background:#242b2560;z-index:11;border:0;border-radius:0}main,body.focus main{margin:18px 12px 0;padding:30px 23px 15px}.cover-frame{min-height:590px;padding:45px 25px}.cover h1{letter-spacing:5px;font-size:49px}.seal{right:20px;top:25px}.cover-bottom{left:23px;right:23px;letter-spacing:1px}#chapter-title{font-size:25px}.chapter-meta{letter-spacing:0}.chapter-nav button{padding:9px 8px;font-size:12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.cover-art{display:none;width:100%;height:auto;border:1px solid #bbb49f;box-shadow:0 12px 35px #34382f20}.illustrated .cover-art{display:block}.illustrated .cover-frame{min-height:0;padding:0;border:0;background:none;overflow:visible}.illustrated .cover-frame> :not(.cover-bottom){display:none}.illustrated .cover-bottom{position:static;margin-top:25px;padding-top:20px}

[hidden]{display:none!important}


.cover-notice{font-size:13px;line-height:1.8;color:#8c4f3c;overflow-wrap:anywhere}


.portal-back{display:block;margin:18px 40px -18px 310px;color:var(--accent);font-size:12px;text-decoration:none;position:relative;z-index:6}body.focus .portal-back{max-width:1000px;margin-left:auto;margin-right:auto}@media(max-width:900px){.portal-back{margin:16px 24px 0}body.focus .portal-back{margin:16px 24px 0}}
