@font-face{font-family:JourneySerif;src:url(/assets/MaShanZheng-Regular.ttf)format("truetype");font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#fff4dc;background:#191c1b;font-family:JourneySerif,STKaiti,KaiTi,serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,input:focus-visible{outline-offset:5px;outline:3px solid #ffe1a0}button{touch-action:manipulation}button:disabled{cursor:default;opacity:.5}::selection{color:#151916;background:#b68b4b}svg{flex-shrink:0;width:32px;height:32px}.game{isolation:isolate;background:var(--ink);height:100svh;min-height:620px;color:var(--text);position:relative;overflow:hidden}.backdrop,.vignette{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.vignette{z-index:-1;pointer-events:none;background:linear-gradient(#0d17182b,#0000 24% 57%,#0c151987)}.chapter{top:var(--title-top);animation:title-in var(--title-enter) ease-out both;background:linear-gradient(100deg,#171b1de8 75%,#171b1d00);border-block:1px solid #c6a2698c;align-items:center;gap:20px;padding:12px 35px 14px 20px;display:flex;position:absolute;left:2vw}.chapter svg{width:46px;height:42px;color:var(--gold)}h1{letter-spacing:.08em;color:var(--paper);margin:0;font-size:clamp(22px,2.25vw,36px);font-weight:400}.icon-button{border:1px solid var(--gold);width:52px;height:52px;color:var(--paper);background:#202527d9;border-radius:50%;place-items:center;display:grid}.icon-button:hover{background:#4b4030}.pause{right:2.5vw;top:var(--title-top);position:absolute}.dialogue{bottom:var(--dialogue-bottom);width:var(--dialogue-width);min-height:var(--dialogue-height);border:1px solid var(--gold);background:rgb(25 28 27/var(--panel-alpha));max-height:62svh;animation:panel-in var(--panel-enter) ease-out both;padding:36px clamp(24px,5.8vw,100px) 42px;position:absolute;left:50%;transform:translate(-50%)}.dialogue:before{content:"";pointer-events:none;border:1px solid #c6a26955;position:absolute;inset:5px}.dialogue:after{content:"";background:linear-gradient(90deg,var(--gold) 14px,transparent 14px) left top/30px 1px no-repeat,linear-gradient(var(--gold) 14px,transparent 14px) left top/1px 30px no-repeat,linear-gradient(270deg,var(--gold) 14px,transparent 14px) right bottom/30px 1px no-repeat,linear-gradient(0deg,var(--gold) 14px,transparent 14px) right bottom/1px 30px no-repeat;pointer-events:none;position:absolute;inset:10px}.nameplate{text-align:center;letter-spacing:.14em;color:#2c2418;background:linear-gradient(115deg,#c5aa76,#efdfb5 40%,#d2b681);border:1px solid #987547;border-radius:2px;min-width:148px;padding:8px 26px;font-size:28px;position:absolute;top:-25px;left:4%;box-shadow:inset 0 0 0 4px #a7895350}.dialogue-text{text-align:left;width:100%;min-height:2.9em;max-height:29svh;font-size:clamp(20px,2.05vw,var(--text-size));font-size:var(--text-size);letter-spacing:.045em;white-space:pre-wrap;scrollbar-width:thin;scrollbar-color:var(--gold) var(--ink);background:0 0;border:0;padding:0;line-height:1.7;display:block;overflow-y:auto}.dialogue-text[aria-disabled=true]{cursor:default}.type-caret{background:var(--gold);vertical-align:-.08em;width:2px;height:1em;margin-left:5px;display:inline-block}.type-caret[hidden]{display:none}.continue{color:var(--paper);background:0 0;border:0;align-items:center;gap:12px;padding:4px 8px;display:flex;position:absolute;bottom:14px;right:26px}.continue span{letter-spacing:.1em;font-family:serif;font-size:13px}.continue svg{width:26px;height:26px}.continue:hover{color:#fff4d1}.choices{gap:20px;margin-top:22px;display:flex}.choices button{color:var(--paper);text-align:left;background:#36392b;border:1px solid #ac8c55;flex:1;align-items:center;gap:14px;padding:13px 20px;font-size:23px;transition:background .18s,border-color .18s;display:flex}.choices button:hover,.choices button:focus-visible{background:#665037;border-color:#f1d393}.choices svg{width:21px;height:21px;margin-left:auto}.choice-diamond{border:1px solid var(--gold);flex-shrink:0;width:7px;height:7px;transform:rotate(45deg)}.reading-tools{align-items:center;gap:18px;display:flex;position:absolute;bottom:1.1vh;right:3vw}.reading-tools button{color:#f0debe;text-shadow:0 2px 4px #000;background:0 0;border:0;padding:7px 4px;font-size:16px}.reading-tools button:hover{color:#fff}.reading-tools>span{background:#c6a26999;width:1px;height:10px}.restore{border:1px solid var(--gold);background:#191c1be8;padding:12px 25px;font-size:22px;position:absolute;bottom:4vh;right:3vw}.menu{color:var(--text);border:1px solid var(--gold);background:#202522;width:min(600px,92vw);max-height:88svh;padding:30px 36px;font-family:JourneySerif,serif;overflow:auto;box-shadow:0 20px 80px #0008}.menu::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#111916b8}.menu-heading{border-bottom:1px solid #c6a26955;justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.menu h2{letter-spacing:.12em;margin:0;font-size:32px;font-weight:400}.menu-heading .icon-button{width:40px;height:40px}.menu-note{color:#ddcdad;font-family:serif;font-size:17px;line-height:1.8}.menu label{margin-top:24px;font-size:22px;display:block}.menu output{float:right;color:var(--paper);font-family:serif;font-size:16px}.menu input[type=range]{width:100%;accent-color:var(--gold);margin:16px 0;display:block}.menu .check{align-items:center;gap:10px;font-size:18px;display:flex}.menu input[type=checkbox]{width:19px;height:19px;accent-color:var(--gold)}.menu-actions{justify-content:flex-end;gap:16px;margin-top:28px;display:flex}.menu button:not(.icon-button){background:0 0;border:1px solid #ac8c55;padding:12px 18px;font-size:19px}.menu button.primary{color:#25261d;background:#dbc18c}.menu button:not(.icon-button):hover{color:#fff4dc;background:#665037}.history{scrollbar-color:var(--gold) var(--ink);max-height:52svh;margin:20px 0;padding-right:12px;overflow:auto}.history article+article{border-top:1px solid #c6a26944;padding-top:12px}.history h3{color:var(--paper);margin:10px 0;font-size:22px;font-weight:400}.history p{font-family:serif;font-size:18px;line-height:1.85}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.asset-error{background:#191c1b;margin:120px 30px;padding:20px}.reduce-motion *{transition:none!important;animation:none!important}@keyframes panel-in{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0}}@keyframes title-in{0%{opacity:0;translate:-12px}to{opacity:1;translate:0}}@media (max-width:700px){.game{min-height:540px}.chapter{gap:10px;max-width:79%;padding:10px 18px 10px 12px;left:3%}.chapter svg{width:28px;height:28px}h1{font-size:22px}.pause{width:42px;height:42px;right:3%}.dialogue{min-height:27svh;max-height:56svh;padding:32px 23px 40px;bottom:62px}.dialogue-text{font-size:calc(var(--text-size)*.82);max-height:25svh;line-height:1.65}.nameplate{min-width:120px;font-size:24px;top:-22px}.choices{flex-direction:column;gap:10px;margin-top:14px}.choices button{padding:10px 14px;font-size:20px}.reading-tools{gap:12px;bottom:12px;right:4%}.reading-tools button{min-height:36px;font-size:16px}.menu{padding:20px}.menu-actions{flex-wrap:wrap}.backdrop{object-position:58% center!important}}@media (max-height:540px) and (min-width:701px){.game{min-height:360px}.chapter{padding-block:6px;top:14px}h1{font-size:24px}.chapter svg{height:30px}.pause{width:40px;height:40px;top:14px}.dialogue{padding:24px 38px 28px;bottom:42px}.dialogue-text{max-height:25svh;font-size:22px;line-height:1.5}.nameplate{padding-block:6px;font-size:22px;top:-20px}.choices{margin-top:10px}.choices button{padding:8px 14px;font-size:19px}.reading-tools{bottom:3px}.continue{bottom:5px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.dialogue-text,.choices button,.reading-tools,.menu label,.menu button:not(.icon-button),.restore{font-family:Songti SC,SimSun,Noto Serif CJK SC,serif;font-weight:400}.dialogue-text{letter-spacing:.025em;align-content:start}.reading-tools{background:#191c1ba8;border-radius:2px;padding:0 12px}.menu label{font-size:19px}.menu input[type=range]{min-height:24px}@media (max-width:700px) and (orientation:portrait){.game{background:linear-gradient(#202a2d,#181d1c 60%);min-height:680px}.backdrop{aspect-ratio:16/9;object-fit:contain;height:auto;top:100px;object-position:center!important}.vignette{background:linear-gradient(#0000 38%,#181d1c66 60%,#181d1c 90%)}.dialogue{flex-direction:column;min-height:0;max-height:none;padding:32px 22px 24px;display:flex;top:calc(132px + 56.25vw);bottom:62px}.dialogue-text{flex-direction:column;flex:1;justify-content:flex-start;min-height:0;max-height:none;padding-bottom:20px;line-height:1.7;display:flex}.choices{flex-shrink:0;margin-top:8px}.choices button{min-height:46px;font-size:18px}.continue{bottom:10px}.reading-tools{white-space:nowrap;gap:10px;padding:0 8px;right:50%;transform:translate(50%)}}@media (max-height:540px) and (min-width:701px){.chapter{gap:10px;max-width:49%;padding-inline:10px;left:42%}.chapter h1{letter-spacing:.03em;font-size:20px}.chapter svg{width:27px;height:27px}}
.scene-viewport{z-index:-2;background:#182322;position:absolute;inset:0;overflow:hidden;container-type:size}.scene-camera{transform-origin:50% 55%;will-change:transform;position:absolute;inset:0}.scene-artboard{width:max(100cqw,177.778cqh);height:max(56.25cqw,100cqh);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.scene-environment{object-fit:fill;width:100%;height:100%;position:absolute;inset:0}.scene-actor{object-fit:contain;filter:url(#actor-alpha)brightness();transform-origin:50% 100%;pointer-events:none;width:auto;transition:filter .45s;position:absolute}.scene-actor.listening{filter:url(#actor-alpha)brightness(.88)}.scene-curtain{opacity:0;pointer-events:none;background:#172020;position:absolute;inset:0}.scene-loading .scene-curtain{opacity:1}.scene-load-message{color:#e7d1a0;letter-spacing:.1em;flex-direction:column;justify-content:center;align-items:center;font-size:26px;display:flex;position:absolute;inset:0}.scene-load-message button{background:#222b29;border:1px solid #c6a269;padding:12px 24px;font-size:20px}.river-light{opacity:.14;clip-path:polygon(19% 0,33% 0,31% 15%,65% 28%,72% 44%,59% 63%,85% 82%,56% 100%,28% 100%,51% 81%,27% 63%,50% 42%,42% 29%,9% 17%);mix-blend-mode:soft-light;pointer-events:none;background:repeating-linear-gradient(175deg,#0000 0 12px,#fff1c8aa 13px 14px,#0000 15px 25px) 0 0/100% 200%;width:30%;height:36%;animation:9s linear infinite water-light;position:absolute;top:44%;left:38%}@keyframes water-light{to{background-position:0 100%}}.scene-viewport[data-paused=true] .river-light{animation-play-state:paused}.arrival-controls{color:#e7d1a0;white-space:nowrap;background:#18201fd9;border-block:1px solid #c6a269;align-items:center;gap:28px;padding:16px 26px;display:flex;position:absolute;bottom:8vh;left:50%;transform:translate(-50%)}.arrival-controls>span{letter-spacing:.12em;font-size:28px}.arrival-controls button{border:0;color:inherit;background:0 0;border-left:1px solid #c6a26966;padding:8px 0 8px 24px;font-family:serif;font-size:16px}.cinematic-game .menu-actions{flex-wrap:wrap}@media (max-width:700px) and (orientation:portrait){.scene-viewport{width:100%;height:56.25vw;top:100px;bottom:auto}.scene-artboard{width:100cqw;height:56.25cqw}.arrival-controls{gap:15px;padding:14px 18px;top:calc(56.25vw + 155px);bottom:auto}.arrival-controls>span{font-size:24px}}@media (prefers-reduced-motion:reduce){.river-light{animation:none}}
.adventure-game{min-height:560px}.world-frame{z-index:0;border:0;width:100%;height:100%;position:absolute;inset:0}.adventure-game .chapter,.adventure-game .pause,.adventure-game .dialogue,.adventure-game .reading-tools,.adventure-game .arrival-controls{z-index:3}.adventure-game .chapter{pointer-events:none;max-width:55%}.adventure-game .chapter h1{font-size:clamp(22px,2.15vw,34px)}.adventure-game .dialogue{max-height:43svh}.adventure-game .dialogue-text{font-size:var(--text-size);max-height:18svh}.adventure-game .choices{gap:12px}.adventure-game .choices button{padding:12px 18px;font-size:clamp(17px,1.6vw,23px);line-height:1.45}.journey-status{z-index:4;gap:10px;display:flex;position:absolute;top:3.5vh;right:8vw}.journey-status button{color:#efd9ae;cursor:pointer;background:#1b302ade;border:1px solid #b39660;padding:9px 13px;font:16px SimSun,serif}.title-screen{z-index:2;pointer-events:none;background:linear-gradient(90deg,#132a29c9,#172c2733);place-items:center;display:grid;position:absolute;inset:0}.title-inner{pointer-events:auto;text-align:center;background:#172c29cf;border-block:1px solid #c6a26977;max-width:92%;padding:45px 65px}.title-chapter{letter-spacing:.16em;color:#dbc69e;font:18px SimSun,serif}.title-inner h1{letter-spacing:.16em;color:#f0dba5;margin:20px 0;font:clamp(64px,8vw,112px) JourneySerif,serif}.title-subtitle{letter-spacing:.07em;font:25px SimSun,serif}.title-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin:32px 0 20px;display:flex}.title-actions button,.explore-controls button{color:#f5dfb5;cursor:pointer;background:#26382f;border:1px solid #c6a269;padding:13px 25px;font:21px SimSun,serif}.title-actions button.primary,.explore-controls button.primary{color:#243024;background:#d9bd82}.title-actions button:hover,.explore-controls button:hover{color:#fff1d5;background:#80603c}.title-hint{color:#d9cba9;margin-top:28px;font:15px/1.8 SimSun,serif}.title-note{color:#bfb294;font:12px SimSun,serif}.game-loading,.game-error{z-index:8;color:#f4ddb1;background:#1c352fe6;flex-direction:column;justify-content:center;align-items:center;font-size:25px;display:flex;position:absolute;inset:0}.game-error button{color:#efdaad;background:#2b4539;border:1px solid #c6a269;padding:12px 24px}.explore-controls{z-index:5;white-space:nowrap;background:#1b302bea;border:1px solid #c6a269;align-items:center;gap:16px;padding:15px 22px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.explore-controls span{color:#d4c49f;font:15px SimSun,serif}.explore-controls button{padding:10px 15px;font-size:17px}.lab-overlay{z-index:30;background:#182825;position:absolute;inset:0}.lab-overlay iframe{border:0;width:100%;height:100%}.adventure-menu{z-index:40;width:min(720px,94vw)}.chapter-list{flex-direction:column;gap:12px;margin-top:22px;display:flex}.chapter-list button{text-align:left;justify-content:space-between;align-items:center;gap:20px;display:flex}.chapter-list button>span{color:#d6c191;font-size:15px}.journal-evidence article{border-bottom:1px solid #c6a26944;padding:12px 0}.journal-evidence h3{color:#e5c88e;margin:12px 0;font-size:23px;font-weight:400}.journal-evidence p{font:17px/1.8 SimSun,serif}.adventure-menu details{margin-top:20px}.adventure-menu summary{cursor:pointer}.editor-note{color:#e5c897;margin-top:8px;font:13px/1.6 SimSun,serif;display:block}.reopen-lab{color:#e9d5ad;background:#324336;border:1px solid #b19765;padding:5px 12px;font:14px SimSun,serif;position:absolute;bottom:10px;left:30px}.ending-screen{z-index:4;background:#1a302bee;border:1px solid #c6a269;padding:40px;position:absolute;inset:6vh 7vw;overflow:auto}.ending-screen h1{text-align:center;margin-bottom:22px;font-size:42px}.ending-screen>p{text-align:center;font:20px/1.85 SimSun,serif}.ending-evidence{grid-template-columns:repeat(3,1fr);gap:25px;margin:28px 0;display:grid}.ending-evidence article{border-top:1px solid #ac8f59;padding:18px}.ending-evidence h2{color:#e8ce99;font-size:25px;font-weight:400}.ending-evidence p{font:17px/1.8 SimSun,serif}.city-panel{z-index:5;background:#20372df5;border:1px solid #c6a269;width:min(510px,45vw);max-height:43vh;padding:18px 22px;font-family:SimSun,serif;position:absolute;top:100px;right:3vw;overflow:auto}.city-panel h2{margin:0;font:25px JourneySerif,serif}.city-panel p{color:#d8c9a6;font-size:14px;line-height:1.6}.city-close{float:right;color:#e6c996;cursor:pointer;background:0 0;border:0}.city-select{flex-wrap:wrap;gap:8px;display:flex}.city-select button{color:#f4dcac;background:#304737;border:1px solid #9e885c;padding:7px 10px;font-size:15px}.city-select button.selected{color:#1d3128;background:#d5b97d}.city-panel table{border-collapse:collapse;width:100%;margin:14px 0;font-size:14px}.city-panel th,.city-panel td{text-align:left;border-bottom:1px solid #c6a26944;padding:7px 4px;font-weight:400}.city-panel small{color:#c7b895;font-size:11px;line-height:1.6;display:block}.cities-open{z-index:4;color:#edd6a5;background:#20372def;border:1px solid #c6a269;padding:10px 18px;position:absolute;top:110px;right:3vw}@media (max-width:700px){.adventure-game{min-height:600px}.adventure-game .chapter{max-width:80%;padding:9px 12px;top:18px}.adventure-game .chapter h1{font-size:21px}.adventure-game .pause{top:18px}.journey-status{gap:8px;top:80px;left:3vw;right:auto}.journey-status button{padding:7px 10px;font-size:13px}.adventure-game .dialogue{min-height:0;max-height:49svh;padding:28px 20px 37px;display:block;top:auto;bottom:60px}.adventure-game .dialogue-text{font-size:calc(var(--text-size)*.8);min-height:3.4em;max-height:19svh;display:block}.adventure-game .choices{gap:8px;max-height:175px;overflow-y:auto}.adventure-game .choices button{min-height:40px;padding:9px 12px;font-size:16px}.adventure-game .reading-tools{white-space:nowrap;justify-content:center;gap:8px;width:96%;bottom:10px}.adventure-game .reading-tools button{padding:4px 2px;font-size:13px}.title-inner{width:94%;max-width:94%;padding:25px 18px}.title-inner h1{font-size:66px}.title-subtitle{font-size:18px}.title-chapter{font-size:14px}.title-actions{gap:10px}.title-actions button{padding:12px 18px;font-size:18px}.title-hint{font-size:13px}.explore-controls{white-space:normal;flex-wrap:wrap;justify-content:center;width:94%;padding:13px;bottom:20px}.explore-controls span{text-align:center;width:100%;font-size:13px}.explore-controls button{font-size:15px}.adventure-game .arrival-controls{gap:15px;padding:15px;top:auto;bottom:20vh}.arrival-controls>span{font-size:22px}.ending-screen{padding:22px;inset:18px 3vw}.ending-screen h1{font-size:30px}.ending-screen>p{font-size:17px}.ending-evidence{grid-template-columns:1fr;gap:0;margin:15px 0}.ending-evidence article{padding:6px 0}.ending-evidence h2{margin:12px 0;font-size:23px}.city-panel{width:94vw;max-height:31vh;padding:12px;top:125px;right:3vw}.city-panel h2{font-size:20px}.city-panel table{font-size:12px}.city-panel th,.city-panel td{padding:5px 3px}.cities-open{top:125px}.editor-note{font-size:11px}}@media (max-height:540px) and (min-width:701px){.adventure-game{min-height:360px}.adventure-game .chapter{max-width:50%;top:10px;left:2vw}.journey-status{top:14px}.adventure-game .dialogue{max-height:48svh;padding:24px 28px 30px;bottom:43px}.adventure-game .dialogue-text{max-height:14svh;font-size:20px}.adventure-game .choices{margin-top:7px}.adventure-game .choices button{padding:7px 11px;font-size:16px}.adventure-game .reading-tools{bottom:2px}.title-inner{padding:16px 40px}.title-inner h1{margin:10px;font-size:62px}.title-chapter,.title-hint,.title-note{margin:8px}.title-subtitle{margin:10px;font-size:20px}.title-actions{margin:15px 0}.city-panel{max-height:37vh;top:65px}.ending-screen{padding:18px;inset:15px 4vw}.ending-screen h1{font-size:30px}.ending-evidence{margin:10px 0}}.story-scene{z-index:2;background:#1b2928;animation:.45s ease-out both story-reveal;position:absolute;inset:0}.story-scene .scene-viewport{z-index:0;width:100%;height:100%;inset:0}.scene-map-return,.scene-reopen{z-index:4;color:#f4ddb1;cursor:pointer;background:#1c302be8;border:1px solid #c6a269;padding:10px 17px;font:16px SimSun,serif;position:absolute;top:100px;right:3vw}.scene-map-return:hover,.scene-reopen:hover{background:#665037}.scene-entering{white-space:nowrap;background:#1b2928dd;border-block:1px solid #c6a269;padding:16px 28px;font-size:28px;position:absolute;bottom:12vh;left:50%;transform:translate(-50%)}.story-scene .scene-actor.listening{filter:url(#actor-alpha)brightness(.76)}.with-story-scene .chapter,.with-story-scene .dialogue,.with-story-scene .reading-tools{z-index:3}@keyframes story-reveal{0%{opacity:0}to{opacity:1}}@media (max-width:700px) and (orientation:portrait){.story-scene .scene-viewport{width:100%;height:56.25vw;top:160px;bottom:auto}.story-scene .scene-artboard{width:100cqw;height:56.25cqw}.scene-map-return,.scene-reopen{padding:8px 12px;font-size:14px;top:118px;right:3vw}.with-story-scene .dialogue{flex-direction:column;max-height:none;padding:28px 20px 34px;display:flex;top:calc(192px + 56.25vw);bottom:60px}.with-story-scene .dialogue-text{min-height:0;max-height:none;font-size:calc(var(--text-size)*.8);flex-direction:column;flex:1;justify-content:flex-start;align-items:stretch;display:flex;overflow-y:auto}.with-story-scene .choices{flex-shrink:0;max-height:155px}.scene-entering{padding:12px 20px;font-size:21px;top:calc(190px + 56.25vw);bottom:auto}.story-scene .scene-load-message{letter-spacing:0;font-size:18px}}@media (max-height:540px) and (min-width:701px){.scene-map-return,.scene-reopen{padding:8px 12px;font-size:14px;top:65px}}
