/* All acquired historical records use horizontal Ma Shan Zheng. The private letters stay vertical. */
.ancient-scroll{writing-mode:horizontal-tb;direction:ltr;overflow:visible;max-width:100%;border:0;margin:12px 0}.ancient-columns{display:block;direction:ltr;width:100%;min-width:0;padding:0}.ancient-line{display:flex;align-items:baseline;writing-mode:horizontal-tb;text-orientation:mixed;direction:ltr;width:100%;height:auto;min-height:48px;max-height:none;min-width:0;padding:17px 8px;margin:0;border-bottom:1px solid #a58c6538;font:21px/1.85 MaShan,Brush,WenKai,serif;letter-spacing:.035em;text-align:left;white-space:normal;overflow-wrap:anywhere}.ancient-line>span:last-child{min-width:0;flex:1}.ancient-line .source-number{display:inline-block;writing-mode:horizontal-tb;font:11px/1.7 WenKai;margin:0 11px 0 0;flex:none;text-combine-upright:none;-webkit-text-combine:none}.ancient-line.active{background:#a87a3e13;box-shadow:inset 2px 0 #9a514276}.modern-notes{margin:8px 0 15px;writing-mode:horizontal-tb;direction:ltr}.horizontal-reader .leaf{padding-top:24px}.horizontal-reader .doc-head h1{font:24px/1.4 LongCang,WenKai,serif;margin:8px 0}.horizontal-reader .doc-head p{font:12px/1.7 WenKai;color:#897058}.local-line .sentence{display:block;writing-mode:horizontal-tb;text-orientation:mixed;height:auto;width:100%;max-width:100%;font:21px/1.85 MaShan,Brush,WenKai,serif;padding:14px 5px;overflow-wrap:anywhere}.local-line{overflow:visible}.final-narrative p.ancient-narrative,.final-narrative p.ancient-narrative.past{writing-mode:horizontal-tb;direction:ltr;height:auto;min-height:0;max-height:none;width:auto;max-width:100%;overflow:visible;letter-spacing:.035em;font-size:21px!important;line-height:1.9!important;margin-inline:0!important}.opening-excerpt{writing-mode:horizontal-tb;text-orientation:mixed;height:auto;margin:24px 0;line-height:1.9}.modern-evidence .candidate{font-family:WenKai,Text,serif;font-size:17px}.final-article{font:17px/2 WenKai,Text,serif;writing-mode:horizontal-tb;overflow-wrap:anywhere}.final-article p{margin:22px 0}.article-sheet .doc-head h1{font:27px/1.6 WenKai,Text,serif;text-align:center;letter-spacing:.09em;margin:24px 0 28px}.article-read-end{height:2px}.article-sheet>.paper-action{margin:30px 0 15px}.ending-pair{text-align:center;animation:dual-ending 3.8s linear both}.ending-zh{font:32px/1.5 WenKai,serif;color:#514236;letter-spacing:.23em;text-indent:.23em;margin-bottom:17px}.ending-en{font:clamp(48px,14vw,60px)/1.4 EndSerif,serif;color:#514236;letter-spacing:.1em;text-indent:.1em}.article-assembly{position:relative;isolation:isolate;height:100vh;height:100svh;min-height:100vh;min-height:100svh;max-width:520px;overflow:hidden;background:#eee5d2 url(assets/paper.jpg) center/cover}.assembly-caption{position:absolute;left:24px;top:calc(24px + env(safe-area-inset-top));font:12px WenKai;color:#8e775d}.assembly-notebook.obj.notebook{left:50%;top:50%;width:145px;height:215px;transform:translate(-50%,-50%) rotate(-3deg);animation:notebook-merge 5.2s ease both;z-index:2}.assembly-notebook .tag{font-family:LongCang,serif;font-size:24px}.material-piece{position:absolute;left:50%;top:50%;width:155px;max-height:160px;overflow:hidden;margin:-45px 0 0 -77px;padding:12px 13px;background:#f5ebd3 url(assets/paper.jpg) center/cover;border-left:2px solid #b29b7466;box-shadow:1px 3px 7px #60482e24;animation:materials-merge 5.2s ease both;z-index:3;--dx:-90px;--dy:-195px;--rot:-7deg}.material-piece small{font:10px/1.6 WenKai;color:#8c7254}.material-piece p{font:13px/1.8 WenKai;margin:8px 0 0}.archive-fragment p{font:18px/1.75 MaShan,serif}.hand-fragment p{font:22px/1.5 ZhiMangXing,serif;writing-mode:vertical-rl;height:6em}.piece-1{--dx:85px;--dy:-155px;--rot:8deg}.piece-2{--dx:-100px;--dy:0px;--rot:-5deg}.piece-3{--dx:95px;--dy:35px;--rot:5deg}.piece-4{--dx:-75px;--dy:175px;--rot:-4deg}.piece-5{--dx:85px;--dy:185px;--rot:6deg}.assembled-paper{position:absolute;left:8%;right:8%;top:21%;min-height:55%;padding:32px 28px;box-shadow:2px 4px 12px #654c3222;animation:manuscript-arrive 5.2s ease both;z-index:4}.assembled-paper h1{font:25px/1.6 WenKai;text-align:center;letter-spacing:.08em}.assembled-paper p{font:15px/2 WenKai}.assembled-paper h1,.assembled-paper p{writing-mode:horizontal-tb}@keyframes dual-ending{0%{opacity:0}23.6842%,76.3158%{opacity:1}100%{opacity:0}}@keyframes notebook-merge{0%,45%{opacity:1;transform:translate(-50%,-50%) rotate(-3deg)}73%{opacity:.6;transform:translate(-50%,-50%) rotate(0) scale(.97)}85%,100%{opacity:0;transform:translate(-50%,-50%) scale(.98)}}@keyframes materials-merge{0%,12%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(.98)}28%,46%{opacity:1;transform:translate(var(--dx),var(--dy)) rotate(var(--rot))}76%{opacity:.85;transform:translate(0,0) rotate(0) scale(.96)}86%,100%{opacity:0;transform:translate(0,0) scale(.95)}}@keyframes manuscript-arrive{0%,65%{opacity:0;transform:translateY(8px) scale(.98)}87%,100%{opacity:1;transform:none}}@media(max-width:350px){.ancient-line,.local-line .sentence{font-size:20px}.material-piece{width:135px;margin-left:-67px;--dx:-72px}.piece-1,.piece-3,.piece-5{--dx:72px}.piece-2{--dx:-78px}.piece-4{--dx:-65px}.assembled-paper{padding:25px 22px}.ending-en{letter-spacing:.07em;text-indent:.07em}}@media(prefers-reduced-motion:reduce){.ending-pair{opacity:1}.assembly-notebook.obj.notebook{opacity:0}.material-piece{display:none}.assembled-paper{opacity:1;transform:none}}
.assembly-notebook.obj.notebook,.material-piece,.assembled-paper{animation-delay:var(--assembly-delay,0ms)}
.cover .entry,.cover-tools button{font-family:LongCang,WenKai,serif;font-weight:400;letter-spacing:.08em}.cover .entry{font-size:25px;line-height:1.5;padding-block:10px}.cover-tools button{font-size:22px;line-height:1.5}.cover .edition,.cover .subtitle,.cover-foot,.cover-tools>span{font-family:WenKai,serif}.rolling-credits .credits-end-title{font:clamp(44px,13vw,56px)/1.15 EndSerif,serif;letter-spacing:.1em;text-indent:.1em;color:#655345;margin:0 0 12px}.rolling-credits header{padding-bottom:12px}.rolling-credits header h1{font-size:23px;margin-bottom:8px}.rolling-credits header p{margin-bottom:4px}@media(max-height:700px){.rolling-credits{padding-top:max(14px,env(safe-area-inset-top))}.rolling-credits .credits-end-title{font-size:44px;margin-bottom:7px}.rolling-credits header{padding-bottom:7px}.rolling-credits footer{padding-top:8px}.credits-copy li{padding-block:11px}}@media(max-width:350px){.cover .entry{font-size:24px}.cover-tools button{font-size:22px;letter-spacing:.03em}}

/* Font identity only. Layout, sizes, spacing and reading direction stay untouched. */
.ancient-source-text{font-family:MaShan,WenKai,serif!important;font-weight:400;font-style:normal;font-synthesis:none}

/* Private letter translation only: bounded semantic columns, right to left. */
.hand-letter .balanced-hand{writing-mode:vertical-rl;text-orientation:upright;font-family:ZhiMangXing,WenKai,serif;height:calc(var(--column-glyphs)*1.06em + .25em);min-height:0;width:max-content;max-width:100%;margin:25px auto 22px;padding:0 4px;overflow-x:auto;overflow-y:hidden;letter-spacing:.04em;line-height:1.5;white-space:normal}.balanced-hand .hand-column{display:block;writing-mode:vertical-rl;text-orientation:upright;font:inherit;letter-spacing:inherit;white-space:nowrap;margin:0;padding:0}

/* Final research article font roles only; no column, spacing or interaction changes. */
.article-view .doc-head h1{font-family:LongCang,WenKai,serif!important;font-size:clamp(36px,10vw,42px);font-weight:400;color:#654b32}.article-view .final-article,.article-view .final-article p{font-family:WenKai,serif!important;font-size:19px;line-height:1.95;font-weight:400;font-style:normal}.article-view .top,.article-view .top button,.article-view .doc-head small,.article-view .paper-action{font-family:WenKai,serif!important}
