:root{color-scheme:dark;--ink:#e6e5dc;--gold:#e8c891;--line:#ffffff1c;font-family:'Microsoft YaHei',sans-serif}*{box-sizing:border-box}body{margin:0;background:#0d1522;color:var(--ink)}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:4px}header{height:86px;max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 42px}.brand{text-decoration:none;color:var(--gold);font-family:Georgia,'SimSun',serif;font-size:23px;letter-spacing:5px}.brand span{display:block;font:9px sans-serif;letter-spacing:3px;margin-top:7px;color:#9aa8ae}nav{display:flex;gap:12px}nav button,.below button,footer button{background:none;color:#b9c5c8;border:1px solid var(--line);padding:9px 14px;border-radius:5px;font-size:12px}nav button:hover{border-color:var(--gold);color:var(--gold)}main{max-width:1440px;margin:auto;padding:0 32px}.game{position:relative;height:min(760px,calc(100vh - 155px));min-height:620px;border:1px solid #6a83933b;border-radius:12px;overflow:hidden;background:#182b40;isolation:isolate}.art,.vignette{position:absolute;inset:0;z-index:-2}.art svg{width:100%;height:100%}.vignette{z-index:-1;background:linear-gradient(180deg,#08132211 25%,#0b15245c 59%,#0b1524ec 100%)}.scene-top{display:flex;justify-content:space-between;padding:24px 28px;font-size:11px;letter-spacing:2px;color:#d1d7d4}.scene-top span{background:#0e1a2bb8;padding:9px 13px;border:1px solid #ffffff15;border-radius:4px}.intro{position:absolute;top:17%;left:7%;max-width:650px}.eyebrow{font-size:11px;color:var(--gold);letter-spacing:4px}.intro h1{font:clamp(38px,5vw,68px)/1.2 Georgia,'SimSun',serif;letter-spacing:6px;margin:20px 0}.intro p{color:#c5d2d6;line-height:2;font-size:14px;max-width:440px}.primary{background:var(--gold);color:#27313a;border:1px solid var(--gold);border-radius:4px;padding:13px 22px;letter-spacing:1px;font-size:13px}.primary:hover{background:#ffe0a4}.secondary{background:#ffffff09;border:1px solid #ffffff2b;border-radius:4px;color:#d1dadc;padding:12px 16px}.hud{position:absolute;top:82px;right:28px;display:grid;gap:10px;font-size:11px;text-align:right;color:#c9d4d7}.hud span{padding:7px 11px;background:#122335b0;border:1px solid #ffffff14;border-radius:4px}.dialogue{position:absolute;bottom:26px;left:4%;right:4%;padding:25px 30px;background:linear-gradient(115deg,#17283af5,#15202ff5);border:1px solid #91a1ab57;border-radius:8px;box-shadow:0 20px 50px #0006;min-height:170px;backdrop-filter:blur(10px)}.dialogue:empty{display:none}.speaker{font-size:12px;color:var(--gold);letter-spacing:2px;margin-bottom:12px;display:flex;align-items:center;gap:10px}.portrait{width:30px;height:30px;background:#a99072;color:#1b2d40;display:grid;place-items:center;border-radius:50%;font-weight:bold}.narration{font-size:14px;color:#cad5d9;line-height:1.9;margin:0 0 10px}.en{font:19px/1.55 Georgia,serif;color:#f1efe6;margin:0 0 12px}.zh{font-size:12px;color:#aabac0;line-height:1.8}.action-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:18px}.pill{font-size:10px;color:#a8c5b7;border:1px solid #71938666;padding:5px 9px;letter-spacing:1px}.choices{display:grid;gap:8px;margin:15px 0 0}.choice{background:#ffffff05;color:#e0e5e2;text-align:left;border:1px solid #ffffff20;border-radius:4px;padding:12px 15px;font-size:13px;line-height:1.5}.choice:hover{border-color:var(--gold);background:#e8c89110}.choice b{color:var(--gold);margin-right:12px;font-weight:normal}.choice:disabled{opacity:.55;cursor:default}.feedback{border-left:2px solid var(--gold);background:#e8c89109;margin-top:12px;padding:12px 16px;color:#d9d5c8;font-size:13px;line-height:1.8}.good{border-color:#89ba9c}.play{border:1px solid #e8c89160;color:var(--gold);background:#e8c89108;border-radius:4px;padding:9px 13px;font-size:12px}.note{background:#e8ddbf;color:#363d3d;padding:18px 24px;transform:rotate(-1deg);font:16px/1.6 Georgia,serif;box-shadow:4px 5px 0 #0003;margin:10px 0}.note small{display:block;font:11px sans-serif;color:#6c7065;letter-spacing:2px;margin-bottom:7px}textarea{background:#0c1725;color:#eee9da;border:1px solid #819aa34f;border-radius:4px;padding:13px;width:100%;resize:vertical;min-height:78px;font-size:14px;line-height:1.6}input{background:#0c1725;color:var(--ink);padding:10px;border:1px solid #819aa34f;border-radius:4px}.below{display:flex;align-items:center;gap:15px;padding:15px 4px;font-size:12px;color:#a7b8bf}.below #objective{flex:1}.autosave{font-size:10px;color:#738a94}.chapter-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:13px 0}.chapter{border:1px solid var(--line);background:#152033;color:#c9d3d4;text-align:left;padding:20px;border-radius:6px;position:relative}.chapter.selected{border-color:#e8c89188;background:#e8c89108}.chapter small{font-size:10px;color:#829ba4;letter-spacing:2px}.chapter h3{font:18px Georgia,'SimSun',serif;margin:10px 0}.chapter p{font-size:11px;color:#a9b5b6;margin:0;line-height:1.7}.chapter .state{position:absolute;right:16px;top:20px;font-size:10px;color:var(--gold)}footer{padding:24px 0 35px;color:#6c8490;font-size:10px;line-height:1.8;display:flex;justify-content:space-between;align-items:center;gap:20px}dialog{background:#182538;color:var(--ink);border:1px solid #9aaab05c;border-radius:12px;padding:36px;width:min(780px,94vw);max-height:88vh;box-shadow:0 25px 100px #0009}dialog::backdrop{background:#060d1bd9;backdrop-filter:blur(6px)}.close{position:absolute;right:14px;top:10px;background:none;color:#c8d1cd;border:0;font-size:25px}dialog h2{font:30px Georgia,'SimSun',serif;color:var(--gold);line-height:1.5}dialog h3{font-size:15px;color:#dfd9c6;margin-top:25px}dialog p,dialog li{font-size:13px;line-height:1.9;color:#b8c8cd}.summary-stat{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0}.summary-stat div{background:#0f1c2e;border:1px solid var(--line);padding:17px;text-align:center;font-size:11px;color:#93aeb6}.summary-stat strong{display:block;color:var(--gold);font:25px Georgia,serif;margin-bottom:7px}.knowledge{padding:16px 0;border-bottom:1px solid var(--line)}.knowledge b{font:18px Georgia,serif;color:#e7d7b7}.knowledge p{margin:6px 0}.checks label{display:block;margin:9px 0;font-size:12px;color:#cad5d4}.checks input{width:auto;margin-right:8px}.errorlog{background:#331e2560;padding:14px;margin:10px 0;border-radius:5px}.reward{background:#e8c8910c;border:1px solid #e8c89140;padding:20px;line-height:1.8}.rain line{animation:rain .85s linear infinite}.windowglow{animation:glow 5s ease-in-out infinite}.boat{animation:bob 6s ease-in-out infinite}.arrival{animation:appear .5s ease-out}@keyframes rain{from{transform:translate(0,-60px)}to{transform:translate(-35px,70px)}}@keyframes glow{50%{opacity:.65}}@keyframes bob{50%{transform:translateY(7px)}}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}@media(max-width:760px){header{padding:0 16px;height:75px}.brand{font-size:18px;letter-spacing:3px}.brand span{font-size:6px;letter-spacing:2px}nav{gap:5px}nav button{padding:8px;font-size:10px}main{padding:0 10px}.game{height:850px;min-height:0;max-height:none}.scene-top{padding:15px 12px;font-size:9px;letter-spacing:1px}.hud{right:12px;top:67px}.intro{left:7%;top:20%;max-width:85%}.intro h1{font-size:43px}.dialogue{left:12px;right:12px;bottom:15px;padding:19px;max-height:75%;overflow:auto}.en{font-size:17px}.choice{font-size:12px;padding:11px}.chapter-strip{grid-template-columns:1fr}.below{flex-wrap:wrap;font-size:11px}.autosave{width:100%}.action-row{flex-wrap:wrap}footer{display:block}footer button{margin-top:15px}.note{font-size:14px}.summary-stat{gap:5px}.summary-stat div{padding:12px 4px}}
