:root{--ink:#eee7d7;--gold:#d7bb80;--muted:#bcb8ab;--dark:#171d1a;--line:rgba(227,215,189,.22);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);font-size:15px}*{box-sizing:border-box}body{margin:0;background:#17201b;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;touch-action:manipulation}button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button:disabled{opacity:.3;cursor:default}button{transition:background .2s,color .2s,transform .2s}button:hover:not(:disabled){color:#fff}h1,h2,p{margin:0}h1,h2,.bookQuote{font-family:"Songti SC","STSong","Noto Serif CJK SC","SimSun",serif;font-weight:500}#panorama{position:fixed;inset:0;width:100%;height:100%;touch-action:none;cursor:grab}#panorama:active{cursor:grabbing}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(7,15,14,.63),transparent 30%,transparent 52%,rgba(9,17,15,.76) 82%,rgba(9,17,15,.98))}.vignette:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 130px #0a16192e}header{position:absolute;top:36px;left:44px;right:44px;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.identity{display:flex;gap:20px;align-items:flex-start}.seal{border:1px solid #d7bb8090;width:37px;height:42px;font-family:"Songti SC",serif;display:grid;place-items:center;font-size:25px;color:var(--gold);margin-top:4px}.eyebrow{font-size:11px;letter-spacing:.24em;color:var(--gold);line-height:1.8}.eyebrow i{padding:0 9px;font-style:normal;color:#9eaa9c}h1{font-size:42px;letter-spacing:.1em;margin-top:12px;text-shadow:0 2px 15px #0005}#sceneMeta{font-size:11px;letter-spacing:.18em;margin-top:12px;color:#e2ded0b3}#sceneNav{display:flex;gap:0;pointer-events:auto;background:#101d1933;border:1px solid var(--line);backdrop-filter:blur(16px)}#sceneNav button{padding:14px 21px;font-size:13px;letter-spacing:.1em;position:relative}#sceneNav button.active{background:#d7bb801b;color:var(--gold)}#sceneNav button.active:after{content:"";height:2px;position:absolute;bottom:0;left:20px;right:20px;background:var(--gold)}.viewtools{position:absolute;right:38px;top:40%;display:flex;flex-direction:column;border:1px solid var(--line);background:#14241e50;backdrop-filter:blur(14px)}.viewtools button{height:44px;width:43px;font-size:23px;font-weight:200}.viewtools button:hover{background:#d7bb8026}.viewtools span{border-top:1px solid var(--line);margin:0 10px}.orientation{position:absolute;right:38px;bottom:210px;display:flex;align-items:center;gap:9px;opacity:.75}.orientation small{font-size:11px;letter-spacing:.1em}#compass{font-size:26px;color:var(--gold)}#sceneNote{position:absolute;left:44px;bottom:215px;font-size:10px;letter-spacing:.12em;color:#ded8c5b3}footer{position:absolute;bottom:0;left:0;right:0;padding:0 44px 24px}.caption{display:flex;align-items:center;gap:22px;min-height:94px;border-bottom:1px solid var(--line);padding-bottom:22px}.stepmark{font:italic 38px Georgia;color:var(--gold);align-self:flex-start;margin-top:3px;min-width:47px}.caption>div{max-width:780px;flex:1}#stepTitle{font-size:14px;letter-spacing:.16em;color:var(--gold);margin-bottom:8px}#captionText{font-size:18px;line-height:1.8;letter-spacing:.035em;white-space:pre-line}.detailBtn{margin-left:auto;border:1px solid #d7bb8070;padding:13px 21px;font-size:13px;white-space:nowrap;flex:none}.detailBtn span{margin-left:28px;color:var(--gold)}.detailBtn:hover{background:#d7bb8020}.footrow{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-top:20px}#steps{display:flex;gap:4px;overflow:auto;scrollbar-width:none;max-width:calc(100% - 330px)}#steps button{font-size:12px;letter-spacing:.07em;white-space:nowrap;padding:8px 12px 8px 0;margin-right:14px;position:relative;color:#e0ddcd7c}#steps button b{font:10px Georgia;padding-right:7px;color:#e0ddcd50}#steps button.active{color:var(--gold)}#steps button.active:after{content:"";width:22px;height:1px;position:absolute;bottom:0;left:0;background:var(--gold)}.transport{display:flex;gap:8px;flex:none;align-items:center}.transport button{height:35px;min-width:33px;border:1px solid var(--line);font-size:12px}.transport #next{padding:0 15px}.transport #next span{padding-left:22px}.transport #prev{font-size:19px}#sound{padding:0 7px}#hotspots{position:fixed;inset:0;pointer-events:none}.hotspot{position:absolute;display:flex;gap:10px;align-items:center;transform:translate(-13px,-13px);pointer-events:auto;white-space:nowrap;text-shadow:0 2px 8px #000;background:#15201975;backdrop-filter:blur(9px);padding:5px 14px 5px 5px;border-radius:25px;border:1px solid #e3d5ac55;font-size:13px;letter-spacing:.08em}.hotspot .dot{display:grid;place-items:center;width:26px;height:26px;border:1px solid #d7bb80bd;border-radius:50%;color:var(--gold);font:11px Georgia}.hotspot:hover,.hotspot.active{background:#51442dcc;border-color:var(--gold);transform:translate(-13px,-13px) scale(1.04)}.intro{position:fixed;inset:0;background:linear-gradient(90deg,#081610d9,#0714115c);display:flex;flex-direction:column;justify-content:center;padding-left:13vw;z-index:10;transition:opacity .7s,visibility .7s}.intro h2{font-size:clamp(58px,7.2vw,110px);letter-spacing:.16em;line-height:1.32;text-shadow:0 5px 30px #0005}.intro .eyebrow{font-size:12px;letter-spacing:.35em}.introRule{width:54px;height:1px;background:var(--gold);margin:27px 0}.introSub{margin-top:22px;font-size:15px;letter-spacing:.24em;color:#e1d8c2c2;line-height:2}.intro button{margin-top:43px;width:200px;padding:17px 24px;border:1px solid #d7bb807a;text-align:left;letter-spacing:.16em}.intro button span{float:right;color:var(--gold)}.intro button:hover{background:#d7bb8030}.introHint{font-size:10px;letter-spacing:.2em;color:#ddd0b86b;margin-top:18px}.intro.hidden{opacity:0;visibility:hidden}dialog{padding:0;border:1px solid #d0be962c;width:min(1240px,90vw);max-width:95vw;height:min(760px,85vh);max-height:92vh;overflow:hidden;background:#19201d;color:var(--ink);box-shadow:0 30px 120px #0008}dialog::backdrop{background:#06100dc9;backdrop-filter:blur(12px)}dialog[open]{animation:reveal .35s both}@keyframes reveal{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}.close{position:absolute;right:16px;top:12px;z-index:4;width:38px;height:38px;font-size:28px;color:#a99e88}.close:hover{color:var(--gold);background:#eee1b611}.detailWrap{display:grid;grid-template-columns:60% 40%;height:100%}.imageSide{display:flex;flex-direction:column;min-height:0;position:relative;background:radial-gradient(ellipse at 50% 40%,#475247,#1f2823 70%);border-right:1px solid var(--line)}#artViewport{position:relative;overflow:hidden;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;touch-action:none;cursor:grab;padding:24px}#artImage{max-width:92%;max-height:92%;object-fit:contain;filter:drop-shadow(0 18px 23px #0004);transform-origin:center;user-select:none;-webkit-user-drag:none;transition:transform .12s}#compareImages{display:none}.imageToolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 23px;min-height:42px;background:#0e1b172f}.imageToolbar>span{font-size:10px;color:#dfd6be8c;letter-spacing:.07em}.imageToolbar button{font-size:13px;padding:5px 9px;color:#d7bb80}#gallery{display:flex;gap:12px;padding:18px 24px;overflow-x:auto;min-height:105px;border-top:1px solid #e3d5ac1a}#gallery:empty{display:none}#gallery button{flex:0 0 80px;padding:5px;border:1px solid transparent;color:#c2bfaf;font-size:10px}#gallery button.active{border-color:#d7bb8077;color:var(--gold)}#gallery img{display:block;width:68px;height:50px;object-fit:contain;margin-bottom:7px}#gallery span{display:block;line-height:1.4}.textSide{padding:60px 40px 32px;display:flex;flex-direction:column;overflow:auto;min-height:0}.textSide h2{font-size:37px;line-height:1.45;letter-spacing:.08em;margin-top:17px}.goldline{background:#d7bb80;width:38px;height:1px;margin:25px 0}.textSide #modalText{font-size:17px;line-height:2.1;color:#dedaca;white-space:pre-line}.textSide #modalHint{font-size:11px;line-height:1.9;color:#a8af9d;margin-top:24px}.textSide #modalNext{margin-top:auto;padding:22px 0 0;text-align:left;font-size:12px;letter-spacing:.12em;color:var(--gold)}#modalNext span{float:right}#modalPages{display:flex;gap:10px;margin-top:15px}#modalPages button{border:1px solid var(--line);padding:5px 10px}#modalPages button.active{color:var(--gold);border-color:var(--gold)}dialog.book .detailWrap{grid-template-columns:26% 74%}dialog.book .imageSide{background:linear-gradient(100deg,#362b20,#796342)}dialog.book #artViewport{padding:0}dialog.book #artImage{display:none}dialog.book .imageToolbar,dialog.book #gallery{display:none}dialog.book .textSide{background:#eee6d3;color:#382e22;padding:55px 60px 35px}dialog.book .textSide .eyebrow{color:#8d6743}dialog.book .textSide h2{font-size:31px}dialog.book #modalText{font-family:"Songti SC","STSong","SimSun",serif;color:#473726;font-size:clamp(19px,2.3vw,30px);line-height:2;letter-spacing:.08em}dialog.book #modalHint{color:#8a7760}dialog.book #modalNext{color:#805c35}dialog.book .close{color:#6a573c}dialog.book .goldline{background:#a28253}dialog.book #modalPages button{color:#805c35;border-color:#805c3544}.bookSpine{font-family:"Songti SC",serif;writing-mode:vertical-rl;font-size:32px;letter-spacing:.28em;color:#e2d2ad;padding:22px 10px;border:1px solid #ddc69a4f;text-shadow:0 2px 10px #0005}#toast{position:fixed;top:25px;left:50%;transform:translateX(-50%);background:#162b24eb;padding:12px 24px;z-index:30;font-size:13px;opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}#loading{position:fixed;inset:0;background:#101d17;z-index:40;display:grid;place-content:center;text-align:center;transition:opacity .4s;pointer-events:none}#loading span{margin:auto;width:32px;height:32px;border:1px solid #d7bb8030;border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}#loading p{font-size:12px;letter-spacing:.2em;color:var(--gold);margin-top:20px}#loading.hide{opacity:0}@keyframes spin{to{transform:rotate(360deg)}}body.noCaptions #captionText{display:none}body.noLabels .hotspot{display:none}body.library footer #steps button{font-size:13px}body.library .imageSide{background:radial-gradient(ellipse,#5c5744,#222920)}
@media(min-width:1700px){:root{font-size:17px}h1{font-size:50px}#captionText{font-size:22px}.caption>div{max-width:1000px}#sceneNote,.orientation{bottom:235px}footer{padding-bottom:30px}.caption{min-height:115px}.footrow{padding-top:24px}#steps button{font-size:14px}.transport button{height:41px}.hotspot{font-size:15px}.textSide #modalText{font-size:21px}}
@media(max-width:900px){header{top:22px;left:24px;right:24px}.seal{display:none}h1{font-size:32px}#sceneNav button{padding:11px 13px;font-size:12px}.viewtools{right:20px;top:34%}footer{padding:0 24px 18px}.caption{gap:12px;padding-bottom:14px}#captionText{font-size:16px}.stepmark{font-size:28px;min-width:32px}.detailBtn{padding:11px 13px}.detailBtn span{margin-left:12px}.footrow{gap:10px}#steps{max-width:calc(100% - 270px)}#steps button{margin-right:7px}.transport{gap:4px}#sceneNote{left:24px;bottom:215px}.orientation{right:24px;bottom:215px}.detailWrap{grid-template-columns:54% 46%}.textSide{padding:48px 25px 25px}.textSide h2{font-size:28px}.textSide #modalText{font-size:16px;line-height:1.9}dialog.book .textSide{padding:45px 35px 25px}.intro h2{font-size:67px}.intro{padding-left:10vw}}
@media(max-width:600px){header{top:20px;left:20px;right:20px;display:block}.eyebrow{font-size:9px}h1{font-size:29px;margin-top:7px}#sceneMeta{font-size:9px;margin-top:6px}#sceneNav{margin-top:15px;display:inline-flex}#sceneNav button{padding:9px 12px}.viewtools{right:14px;top:38%}.viewtools button{width:35px;height:36px;font-size:20px}.orientation{display:none}#sceneNote{left:20px;font-size:9px;bottom:205px}footer{padding:0 18px 14px}.caption{align-items:flex-start;gap:10px;min-height:100px}.stepmark{font-size:24px;min-width:27px}#stepTitle{font-size:12px}#captionText{font-size:14px;line-height:1.7}.detailBtn{font-size:0;width:35px;height:35px;padding:0}.detailBtn span{font-size:22px;margin:0}.footrow{display:block;padding-top:8px}#steps{max-width:100%;margin-bottom:10px}.transport{justify-content:flex-end}.transport button{height:29px}.intro h2{font-size:55px}.intro{padding:0 30px}.introSub{font-size:12px;letter-spacing:.15em}.intro .eyebrow{font-size:10px}.intro button{margin-top:30px}.hotspot{font-size:11px}.detailWrap{display:flex;flex-direction:column}.imageSide{height:48%;flex:none;border-right:0}.textSide{padding:22px;flex:1}.textSide h2{font-size:25px;margin-top:7px}.goldline{margin:12px 0}.textSide #modalText{font-size:15px}.textSide #modalHint{margin-top:12px}#gallery{padding:8px 13px;min-height:70px;gap:5px}#gallery button{flex-basis:60px}#gallery img{height:30px;width:45px}.imageToolbar{padding:4px 14px;min-height:27px}dialog{width:95vw;height:88vh}dialog.book .imageSide{height:0;overflow:hidden}dialog.book .textSide{padding:50px 27px 25px}dialog.book #modalText{font-size:21px}.textSide #modalNext{padding-top:16px}.close{background:#16231ac0;color:#e2d2ad;top:8px;right:8px}dialog.book .close{background:none}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.cropFrame{width:90%;max-height:94%;background-repeat:no-repeat;filter:drop-shadow(0 15px 24px #0005);flex:none;transition:transform .12s}.comparison{display:flex;width:95%;height:92%;gap:24px;align-items:center;justify-content:center}.comparison figure{margin:0;max-width:45%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.comparison img{max-width:100%;max-height:84%;object-fit:contain;filter:drop-shadow(0 12px 22px #0003)}.comparison figcaption{font-size:13px;color:#d7bb80;letter-spacing:.13em;margin-top:17px}
#memorialStage{display:none;position:absolute;inset:0;padding:195px 8vw 230px;gap:3vw;background:radial-gradient(ellipse at 50% 10%,#434334,#0f1c17 80%)}body.memorial #memorialStage{display:flex}body.memorial #panorama{visibility:hidden}body.memorial .viewtools,body.memorial .orientation{display:none}.memorialPlate{position:relative;flex:1;min-width:0;box-shadow:0 30px 50px #0005;padding:0;perspective:1000px;overflow:hidden;text-align:left;border:1px solid #d7bb802b}.memorialPhoto{position:absolute;inset:0;background-repeat:no-repeat;transition:transform .7s;filter:saturate(.75)}.memorialPlate:hover .memorialPhoto{transform:scale(1.035)}.memorialPlate:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,#0c1713dc)}.memorialLabel{position:absolute;z-index:1;bottom:23px;left:28px}.memorialLabel small{color:#dfc58d;letter-spacing:.25em;font-size:10px}.memorialLabel h2{margin-top:9px;font-size:31px;letter-spacing:.12em}body.memorial .vignette{z-index:1}body.memorial header,body.memorial footer,body.memorial #sceneNote{z-index:2}@media(max-width:600px){#memorialStage{padding:177px 22px 210px;gap:14px;flex-direction:column}.memorialLabel{bottom:12px;left:18px}.memorialLabel h2{font-size:22px}.memorialLabel small{font-size:9px}}
body:not(.entered) header,body:not(.entered) footer,body:not(.entered) #hotspots,body:not(.entered) .viewtools,body:not(.entered) .orientation,body:not(.entered) #sceneNote{opacity:0;pointer-events:none}header,footer,#hotspots,.viewtools,.orientation,#sceneNote{transition:opacity .5s}.memorialPlate{aspect-ratio:476/282;align-self:center;max-height:100%}@media(max-width:600px){.memorialPlate{width:100%;aspect-ratio:auto;align-self:stretch}}
body:not(.entered) header,body:not(.entered) footer,body:not(.entered) #hotspots,body:not(.entered) .viewtools,body:not(.entered) .orientation,body:not(.entered) #sceneNote{visibility:hidden}
.memorialPlate{height:100%;aspect-ratio:auto;border:0;box-shadow:none;overflow:visible}.memorialPlate:after{display:none}.memorialPhoto.model{inset:-25px 0 60px;background-size:contain;background-position:center;filter:drop-shadow(0 20px 24px #0007);transition:transform .3s}.memorialLabel{bottom:0;left:0;right:0;text-align:center}.memorialLabel h2{font-size:27px}.memorialLabel small{font-size:11px}@media(max-width:600px){#memorialStage{gap:24px}.memorialPhoto.model{inset:0 0 35px}.memorialLabel h2{font-size:19px;margin-top:5px}.memorialLabel small{font-size:9px}.memorialPlate{min-height:0}}

#imageCredit a{color:inherit;text-decoration:none;border-bottom:1px solid #d7bb8044}dialog.focus{width:min(1460px,94vw);height:89vh}dialog.focus .detailWrap{grid-template-columns:72% 28%}dialog.focus .textSide{padding:60px 28px 30px}dialog.focus .textSide h2{font-size:32px}dialog.focus #artImage{max-width:98%;max-height:98%}dialog.focus #gallery{min-height:90px;padding-top:10px;padding-bottom:10px}@media(max-width:900px){dialog.focus .detailWrap{grid-template-columns:64% 36%}dialog.focus .textSide h2{font-size:27px}}@media(max-width:600px){dialog.focus .detailWrap{display:flex}dialog.focus .imageSide{height:56%}dialog.focus .textSide{padding:22px}dialog.focus .textSide h2{font-size:23px}}
