:root{color:#2f2b28;background:#2f2b28;font-family:Noto Sans SC,Microsoft YaHei,system-ui,sans-serif;font-synthesis:none;--ink: #2f2b28;--paper: #eee7d8;--warm-white: #f7f3e8;--wood: #756253;--rain: #637c87;--anchor: #b54949;--focus: #276a78;--hud-ink: #29231f;--hud-paper: #f2e8d6;--hud-accent: #c86a5d;--hud-line: rgba(247, 237, 220, .34);--base-size: 20px}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{font-size:var(--base-size)}html[data-font=large]{--base-size: 24px}html[data-contrast=true]{--ink: #161311;--paper: #fffbed;--focus: #006b85}button,select,input{font:inherit}button{color:inherit}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;padding:.7rem 1rem;color:var(--warm-white);background:var(--focus)}.skip-link:focus{top:1rem}#game-canvas,#game-canvas canvas{width:100%;height:100%;display:block}#hud,#panel-layer,#system-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}#hud{z-index:10}#panel-layer{z-index:20}#system-layer{z-index:30}#app[data-chapter=rain]{--hud-accent: #bf5e58}#app[data-chapter=life]{--hud-accent: #d09a58}#app[data-chapter=return]{--hud-accent: #d3a75d}#app[data-chapter=ending]{--hud-accent: #d6ad7c}#hud button,#panel-layer>*,#system-layer>*{pointer-events:auto}.objective-chip,.stage-chip,.hud-actions,.interaction-prompt,.toast{position:absolute;color:var(--warm-white);background:linear-gradient(115deg,rgba(255,255,255,.035),transparent 42%),color-mix(in srgb,var(--hud-ink) 88%,transparent);border:1px solid var(--hud-line);box-shadow:0 9px 30px #140f0a3d,inset 0 1px #ffffff0b;-webkit-backdrop-filter:blur(8px) saturate(.8);backdrop-filter:blur(8px) saturate(.8)}.save-notice{position:absolute;right:1.25rem;bottom:1.25rem;padding:.45rem .7rem;color:var(--warm-white);background:color-mix(in srgb,var(--ink) 84%,transparent);border:1px solid rgba(247,243,232,.28);border-radius:.35rem;font-size:.72em}.interaction-prompt{position:absolute;left:50%;bottom:4.6rem;transform:translate(-50%);display:flex;align-items:center;gap:.55rem;max-width:min(28rem,82vw);padding:.5rem .72rem;color:var(--warm-white);background:#2f2b28cc;border:1px solid rgba(247,243,232,.24);border-radius:.65rem;box-shadow:0 5px 18px #140f0a2e;cursor:pointer}.interaction-prompt:hover,.interaction-prompt:focus-visible{background:#2f2b28eb}.interaction-prompt .touch-action{color:#d7c8b5;font-size:.72em}.objective-chip{top:1.3rem;left:1.3rem;max-width:min(33rem,68vw);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem 1rem;align-items:center;padding:.75rem .9rem .72rem 1.1rem;overflow:hidden;border-radius:.25rem 1.1rem .75rem .35rem}.objective-chip:before{content:"";position:absolute;inset:0 auto 0 0;width:.25rem;background:linear-gradient(to bottom,transparent,var(--hud-accent) 20% 80%,transparent);opacity:.92}.objective-chip:after{content:"";position:absolute;right:.45rem;bottom:0;width:4.5rem;height:1px;background:linear-gradient(to left,transparent,color-mix(in srgb,var(--hud-accent) 78%,white));opacity:.68}.objective-copy{min-width:0}.objective-chip .objective-chapter{display:block;margin-bottom:.18rem;color:color-mix(in srgb,var(--hud-paper) 76%,var(--hud-accent));font-size:.65em;letter-spacing:.12em}.objective-chip .objective-text{display:block;font-family:"Noto Serif SC",SimSun,serif;font-size:.92em;line-height:1.45;text-wrap:balance}.observation-hint{display:inline-flex;flex:none;gap:.38rem;align-items:center;align-self:end;padding-left:.7rem;color:color-mix(in srgb,var(--hud-paper) 70%,transparent);border-left:1px solid color-mix(in srgb,var(--hud-accent) 52%,transparent);font-size:.62em;letter-spacing:.06em;white-space:nowrap}.observation-hint kbd{color:color-mix(in srgb,var(--hud-paper) 88%,var(--hud-accent));border-color:color-mix(in srgb,var(--hud-accent) 70%,var(--hud-paper))}#app:has(canvas[data-observation-active=true]) .observation-hint{color:var(--hud-paper)}#app:has(canvas[data-observation-active=true]) .observation-hint kbd{color:var(--hud-ink);background:color-mix(in srgb,var(--hud-accent) 72%,var(--hud-paper));border-color:transparent}.stage-chip{top:1.3rem;right:1.3rem;display:flex;align-items:center;gap:.34rem;padding:.55rem .8rem;border-radius:999px;font-size:.72em;letter-spacing:.04em}.stage-code{font-family:Georgia,Times New Roman,serif;font-variant-numeric:tabular-nums;letter-spacing:.08em}.anchor-dot{display:inline-block;width:.7em;height:.7em;margin-right:.12rem;background:var(--hud-accent);border-radius:50%;box-shadow:0 0 0 3px color-mix(in srgb,var(--hud-accent) 18%,transparent)}.hud-actions{left:1.3rem;bottom:1.1rem;display:flex;gap:.4rem;padding:.35rem;border-radius:.35rem .95rem .55rem .8rem}.hud-actions button{border:0;padding:.5rem .8rem;border-radius:.7rem;color:var(--warm-white);background:transparent;cursor:pointer}.hud-actions button:hover{background:color-mix(in srgb,var(--hud-accent) 18%,transparent)}.hud-actions button:focus-visible{background:color-mix(in srgb,var(--hud-accent) 20%,transparent)}kbd{padding:.05rem .3rem;border:1px solid currentColor;border-radius:.25rem;font-size:.7em;opacity:.8}.washed{filter:blur(.5px);opacity:.76}.hud-memory-layer{transition:opacity 1.4s ease,filter 1.4s ease,transform 1.4s ease}.hud-memory-faded{opacity:.24;filter:saturate(.45) contrast(.8);transform:translateY(-.35rem);transform-origin:center}#app[data-stage=D4] .hud-actions{border-color:color-mix(in srgb,var(--hud-paper) 42%,transparent);background:color-mix(in srgb,var(--hud-ink) 91%,transparent)}html[data-contrast=true] .hud-memory-faded{opacity:.72;filter:none}.toast{left:50%;bottom:8rem;transform:translate(-50%);max-width:min(40rem,82vw);padding:.7rem 1rem;border-radius:.5rem;cursor:pointer;font-size:.83em}.hold-progress-a11y{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.debug-panel{position:absolute;top:5.2rem;right:1.3rem;display:grid;gap:.3rem;max-width:28rem;padding:.55rem .7rem;color:#cceef3;background:#08191ee6;border:1px solid #276a78;border-radius:.4rem;font:12px/1.3 ui-monospace,monospace;pointer-events:auto}.debug-panel div{display:flex;flex-wrap:wrap;gap:.25rem}.debug-panel button{padding:.18rem .35rem;color:inherit;background:transparent;border:1px solid #276a78;border-radius:.2rem}.scrim{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1rem;background:#181411ad;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.paper-panel{width:min(42rem,94vw);max-height:88vh;overflow:auto;padding:clamp(1.3rem,4vw,2.5rem);background:var(--paper);border:1px solid rgba(47,43,40,.35);border-radius:.25rem 1.4rem .35rem 1rem;box-shadow:0 24px 70px #0000006b}.paper-panel h2{margin:0 0 1rem;font-family:"Noto Serif SC",SimSun,serif;font-size:1.65em;font-weight:600}.paper-panel p,.paper-panel li{line-height:1.65}.paper-panel .muted,.muted{opacity:.68;font-size:.85em}.primary,.secondary,.continue,.paper-panel button,.guide-page button{border:1px solid var(--ink);padding:.65rem 1rem;border-radius:.35rem;cursor:pointer}.primary{color:var(--warm-white);background:var(--ink)}.secondary{margin-top:.8rem;background:transparent}.inventory-list{display:grid;gap:.7rem;padding:0;list-style:none}.inventory-list li{display:flex;align-items:center;gap:.8rem;padding:.6rem;border-bottom:1px dashed rgba(47,43,40,.35)}.item-shape{color:var(--anchor);font-size:1.5em}.journal-pages article{padding:.5rem 0 1rem;border-bottom:1px dashed rgba(47,43,40,.3)}.journal-pages h3{font-family:"Noto Serif SC",SimSun,serif}.map-panel{width:min(58rem,94vw)}.map-panel>[data-close]{position:sticky;bottom:0;background:var(--paper)}.map-panel-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.map-panel-heading h2,.map-panel-heading p{margin-bottom:0}.map-status{max-width:28rem;font-size:.82em}.map-drawing{display:block;width:100%;color:var(--ink)}.map-drawing.expanded{max-height:52vh;margin:1rem 0}.map-paper{fill:#d5cbb6;stroke:currentColor;stroke-width:8}.map-route{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:18;vector-effect:non-scaling-stroke}.map-route.secondary{stroke-width:10;opacity:.55}.map-drawing.washed .map-route{opacity:.28;filter:blur(3px)}.map-drawing.washed .map-route.secondary{opacity:.08}.map-place-label{fill:currentColor;font:34px "Noto Serif SC",SimSun,serif}.map-water-stains{fill:var(--rain);opacity:.4}.map-landmark{fill:var(--ink);stroke:var(--paper);stroke-width:7;paint-order:stroke fill}.map-landmark.umbrella{fill:var(--anchor);font-size:70px}.map-landmark.station circle{fill:var(--paper);stroke:var(--ink)}.map-landmark.station text{fill:var(--ink);stroke:none;font:700 25px system-ui,sans-serif}.map-landmark.reached circle{fill:#d0bd79}.map-sound-cue{fill:none;stroke:var(--focus);stroke-linecap:round;stroke-width:12}.map-player circle:first-child{fill:var(--focus);stroke:var(--warm-white);stroke-width:7}.map-player-core{fill:var(--warm-white)}.map-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.35rem 1rem;padding:0;list-style:none}.map-legend li{display:flex;align-items:center;gap:.45rem;border-bottom:1px dashed rgba(47,43,40,.25)}.map-legend li>span:first-child{width:1.4rem;color:var(--anchor);text-align:center}.map-legend small{margin-left:auto;opacity:.66}.washed-text{color:#2f2b289e;text-shadow:8px 2px 9px rgba(99,124,135,.45)}.photo_order-panel{position:relative;width:min(68rem,96vw);max-height:94vh;padding:1.5rem clamp(1.25rem,3vw,2.5rem) 1.2rem 2.8rem;background:linear-gradient(90deg,transparent 2.1rem,rgba(181,73,73,.18) 2.15rem,transparent 2.25rem),repeating-linear-gradient(0deg,rgba(47,43,40,.025) 0 1px,transparent 1px 8px),var(--paper)}.photo_order-panel>[data-close]{position:absolute;z-index:3;top:1rem;right:1.1rem;margin:0;padding:.45rem .65rem;background:color-mix(in srgb,var(--paper) 88%,transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.photo-album{display:grid;gap:.85rem}.photo-album>header{max-width:46rem;padding:0 5rem 0 1rem}.photo-album>header h2,.photo-album>header p{margin-bottom:.35rem}.album-kicker{color:var(--anchor);font-size:.72em;font-weight:700;letter-spacing:.18em}.photo-order{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.65rem,1.8vw,1.2rem);margin:0;padding:0;list-style:none}.photo-order:before{content:"";position:absolute;top:1.15rem;left:11%;right:11%;height:1px;background:repeating-linear-gradient(90deg,var(--anchor) 0 8px,transparent 8px 15px);opacity:.42}.photo-card{position:relative;display:grid;grid-template-rows:auto 1fr auto;gap:.65rem;min-width:0;padding:1.8rem .7rem .72rem;line-height:1.35!important;border:1px solid rgba(47,43,40,.24);border-radius:.25rem .75rem .3rem .6rem;background:linear-gradient(150deg,rgba(255,255,255,.45),transparent 45%),#e4d9c5;box-shadow:0 8px 24px #2f2b281f}.photo-position{position:absolute;z-index:1;top:-.05rem;left:50%;display:inline-flex;align-items:baseline;gap:.16rem;transform:translate(-50%);padding:.05rem .55rem;color:var(--paper);background:var(--anchor);border-radius:0 0 .45rem .45rem;box-shadow:0 3px 8px #2f2b2829}.photo-position strong{font-family:"Noto Serif SC",SimSun,serif;font-size:1.1em}.photo-position small{font-size:.56em}.photo-card figure{display:grid;gap:.55rem;margin:0}.photo-mat{display:grid;place-items:center;aspect-ratio:1.45;padding:.45rem;overflow:hidden;background:#f3ecdd;border:1px solid rgba(47,43,40,.22);box-shadow:0 3px 10px #2f2b2826,inset 0 0 0 .2rem #ffffff59}.photo-mat img{width:100%;height:100%;object-fit:contain;filter:saturate(.78) sepia(.08) contrast(.96)}.photo-placeholder{font:3rem "Noto Serif SC",serif;opacity:.35}.photo-card figcaption{display:grid;gap:.12rem;min-width:0}.photo-card figcaption strong{color:var(--anchor);font-family:"Noto Serif SC",SimSun,serif;font-size:1.2em}.photo-card figcaption>span{font-weight:650}.photo-card figcaption small{min-height:2.7em;color:color-mix(in srgb,var(--ink) 68%,transparent);font-size:.68em;line-height:1.35}.photo-controls{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.photo-controls button{min-width:0;padding:.38rem .3rem;overflow:hidden;background:#eee7d894;border-color:#2f2b2873;font-size:.68em;white-space:nowrap}.photo-controls button:hover:not(:disabled),.photo-controls button:focus-visible:not(:disabled){color:var(--warm-white);background:var(--focus)}.photo-controls button:disabled{opacity:.28;cursor:default}.photo-album>footer{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding-top:.25rem;border-top:1px dashed rgba(47,43,40,.26)}.photo-album>footer>span{margin-right:auto;color:color-mix(in srgb,var(--ink) 55%,transparent);font-family:"Noto Serif SC",SimSun,serif;font-size:.72em}.title-screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;padding:clamp(1rem,4vw,3rem);overflow:auto;color:var(--warm-white);text-align:center;background:radial-gradient(ellipse at 50% 112%,rgba(216,170,111,.16),transparent 40%),radial-gradient(circle at 71% 27%,rgba(181,73,73,.2),transparent 23%),radial-gradient(circle at 20% 18%,rgba(111,132,137,.12),transparent 30%),linear-gradient(142deg,#332d29,#242522 46%,#14191b)}.title-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to right,transparent 49.86%,rgba(234,217,192,.1) 50%,transparent 50.16%),linear-gradient(to bottom,transparent 69%,rgba(239,205,159,.05) 70%,transparent 72%);-webkit-mask-image:linear-gradient(to bottom,transparent 4%,black 22%,black 76%,transparent 96%);mask-image:linear-gradient(to bottom,transparent 4%,black 22%,black 76%,transparent 96%)}.title-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.3;background-image:repeating-linear-gradient(102deg,transparent 0 21px,rgba(255,255,255,.026) 22px 23px),radial-gradient(circle at 30% 72%,rgba(255,255,255,.055) 0 1px,transparent 1.5px);background-size:auto,9px 9px;mix-blend-mode:soft-light}.title-screen>*{position:relative;z-index:1}.title-emblem{position:relative;display:grid;place-items:center;width:5rem;height:4.25rem;margin-bottom:-.15rem}.title-emblem:before,.title-emblem:after{content:"";position:absolute;border-radius:50%}.title-emblem:before{width:4rem;height:4rem;border:1px solid rgba(239,217,187,.22);box-shadow:inset 0 0 1.8rem #b5494914;transform:rotate(11deg) scaleX(1.08)}.title-emblem:after{width:3.42rem;height:3.7rem;border:1px dashed rgba(232,200,169,.2);transform:rotate(-16deg)}.title-art{position:relative;z-index:1;width:4.2rem;height:4.2rem;display:grid;place-items:center;color:var(--anchor);font-size:4.35rem;filter:drop-shadow(0 8px 12px rgba(10,7,6,.28));transform:rotate(-8deg)}.emblem-seam{position:absolute;z-index:2;left:50%;bottom:-.1rem;width:3.8rem;height:1px;background:linear-gradient(to right,transparent,rgba(232,204,174,.58),transparent);transform:translate(-50%) rotate(-4deg)}.title-heading{display:grid;gap:.55rem;place-items:center}.eyebrow{margin:0;color:#d5c8b6;font-size:.68em;letter-spacing:.18em;text-transform:uppercase}.title-screen h1{margin:0;font-family:"Noto Serif SC",SimSun,serif;font-size:clamp(2.5rem,7vw,5.3rem);font-weight:500;letter-spacing:.12em;text-shadow:0 2px rgba(255,255,255,.035),0 12px 30px rgba(9,8,7,.3)}.english-title{margin:-.35rem 0 .35rem;color:#9c9184;font-family:Georgia,serif;font-size:.7em;letter-spacing:.32em}.content-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.3rem .8rem;width:min(38rem,95vw);padding:.72rem .9rem;text-align:left;color:#dfd6c9;border:1px solid rgba(247,243,232,.12);border-left:3px solid color-mix(in srgb,var(--anchor) 72%,#d4ad83);border-radius:.1rem .65rem .4rem .15rem;background:linear-gradient(105deg,rgba(247,243,232,.07),transparent 70%),#12131229}.content-note strong{flex:none;color:#ead9c6;font-size:.72em;letter-spacing:.08em}.content-note span{color:#cfc5b8;font-size:.66em;line-height:1.62}.mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;width:min(46rem,95vw)}.mode-card{display:grid;gap:.3rem;padding:1rem;text-align:left;color:var(--warm-white);border:1px solid rgba(247,243,232,.35);background:#f7f3e812;cursor:pointer}.mode-card.primary{border-color:#d7b9a5;background:#b5494940}.mode-card span{color:#d3c8ba;font-size:.7em;line-height:1.5}.continue{color:var(--warm-white);background:transparent;border-color:#f7f3e880}.title-menu{display:grid;gap:.48rem;width:min(31rem,95vw)}.title-menu-card{position:relative;display:grid;gap:.2rem;width:100%;min-height:3.65rem;padding:.72rem 3rem .72rem 1rem;overflow:hidden;text-align:left;color:var(--warm-white);background:linear-gradient(105deg,rgba(247,243,232,.075),transparent 64%),#1e1d1b5c;border:1px solid rgba(247,243,232,.25);border-radius:.16rem .78rem .28rem .58rem;box-shadow:inset 0 1px #ffffff06;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.title-menu-card:after{content:"›";position:absolute;top:50%;right:1rem;color:#eddac580;font:1.35rem/1 Georgia,serif;transform:translateY(-50%)}.title-menu-card:hover:not(:disabled),.title-menu-card:focus-visible{border-color:#efd2b694;background-color:#f7f3e811;transform:translate(.18rem)}.title-menu-card.primary{border-color:#d8b297b3;background:linear-gradient(105deg,#c1574d4f,#51312b1f 68%),#1e1d1b61;box-shadow:inset 3px 0 color-mix(in srgb,var(--anchor) 80%,#deb187),inset 0 1px #ffffff09}.title-menu-card:disabled{opacity:.42;cursor:not-allowed}.title-menu-card:disabled:after{content:"—"}.title-menu-card span{color:#d3c8ba;font-size:.68em}.title-subpage{justify-content:center}.title-panel{display:grid;gap:1rem;width:min(48rem,94vw);max-height:90vh;overflow:auto;padding:clamp(1.25rem,4vw,2.4rem);text-align:left;background:#1d1b19e6;border:1px solid rgba(247,243,232,.24);border-radius:.35rem 1.2rem .35rem 1rem;box-shadow:0 24px 70px #0000005c}.title-panel h1{margin:0;font-size:clamp(1.8rem,5vw,3rem)}.title-panel>p:not(.eyebrow){margin:0;color:#d3c8ba;line-height:1.55}.title-panel .mode-grid{width:100%}.memory-fragment-list{display:grid;gap:.65rem}.memory-fragment{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;padding:.85rem 1rem;color:var(--warm-white);text-align:left;background:#f7f3e812;border:1px solid rgba(247,243,232,.25);border-radius:.4rem}.memory-fragment.selectable{width:100%;cursor:pointer}.memory-fragment.invalid{border-color:#e5aa87b8}.memory-fragment.empty{opacity:.68;border-style:dashed}.memory-fragment>span{display:grid;gap:.2rem}.memory-fragment small,.memory-fragment time{color:#d3c8ba;font-size:.72em}.memory-fragment-actions{display:flex;gap:.45rem;width:10.5rem}.memory-fragment-actions.single{width:5.05rem}.memory-fragment-actions button{display:inline-grid;flex:1 1 0;place-items:center;min-width:0;min-height:2.7rem;margin:0;color:var(--warm-white);background:transparent;border-color:#f7f3e86b}.title-settings{width:min(56rem,94vw);max-height:none;overflow:visible;gap:.85rem}.settings-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:1rem;align-items:stretch}.settings-section{min-width:0;margin:0;padding:1rem;border:1px solid rgba(247,243,232,.28);border-radius:.65rem;background:#f7f3e80b}.settings-section legend{padding:0 .4rem;color:#ead8c9;font-weight:700}.settings-audio>.toggle{margin-bottom:.8rem;padding:.2rem}.settings-toggle-list,.settings-select-list{display:grid;gap:.45rem}.settings-toggle-list .toggle,.settings-select-list label{min-height:2.7rem;padding:.55rem .65rem;border-radius:.45rem;background:#f7f3e80e}.settings-select-list{margin-top:.65rem;padding-top:.65rem;border-top:1px solid rgba(247,243,232,.18)}.settings-select-list label{display:grid;grid-template-columns:1fr auto;gap:.8rem;align-items:center}.settings-select-list select{min-width:8.25rem;padding:.38rem .55rem;color:var(--warm-white);border:1px solid rgba(247,243,232,.34);border-radius:.35rem;background:#2a2724}.title-settings .audio-mixer{color:var(--warm-white);border-color:#f7f3e833;background:#f7f3e80e}.title-settings .audio-mixer input{accent-color:var(--anchor)}.title-settings .audio-mixer output{color:#d3c8ba}.title-panel>.secondary{width:100%;margin-top:.15rem;color:var(--warm-white);border-color:#f7f3e86b}.title-save-notice{margin:0;color:#ead8c9;font-size:.72em}.controls{display:flex;flex-wrap:wrap;gap:.35rem .9rem;justify-content:center;margin:.25rem 0 0;color:#aa9e91;font-size:.65em}.observe-control{color:#d0b49d}.observe-control kbd{margin-right:.12rem;color:#e1c4aa;border-color:#e1c4aa85}.dialogue-box{position:absolute;left:50%;bottom:3rem;display:grid;gap:.7rem;width:min(48rem,88vw);transform:translate(-50%);padding:1.2rem 1.5rem;color:var(--ink);text-align:left;border:1px solid rgba(47,43,40,.4);border-radius:.3rem 1rem;background:#eee7d8f2;box-shadow:0 16px 50px #0000004d;cursor:pointer}.memory-cutscene{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden;background:#1d2529}.memory-cutscene:before{content:"";position:absolute;z-index:1;width:min(36rem,58vmin);aspect-ratio:1;pointer-events:none;border:2px solid rgba(232,199,164,.72);border-radius:50%;box-shadow:0 0 0 1px #b5494952,0 0 5rem #e8c7a433;animation:memory-arrival .96s cubic-bezier(.16,.8,.3,1) both}.memory-cutscene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to bottom,transparent 52%,rgba(20,18,16,.62))}.memory-cutscene>img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(.97)}.memory-cutscene.ending-hand>img{object-position:center 45%}.memory-cutscene .dialogue-box{z-index:2}@keyframes memory-arrival{0%{opacity:0;transform:scale(.22)}32%{opacity:.64}to{opacity:0;transform:scale(1.36)}}.dialogue-box span{font-family:"Noto Serif SC",SimSun,serif;line-height:1.6}.dialogue-box small{justify-self:end;opacity:.58}.training{text-align:center}.compass{display:inline-grid;place-items:center;width:5rem;height:5rem;margin-bottom:1rem;color:var(--anchor);border:2px solid var(--ink);border-radius:50%;font-size:3rem;transition:transform 1.2s ease}.compass.rotated{transform:rotate(90deg)}.pause-panel{display:grid;gap:.65rem}.save-dialog{display:grid;gap:1rem}.confirm-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:stretch;margin-top:.25rem}.confirm-row button{flex:1 1 9rem;min-height:2.8rem;margin:0}.save-management-scrim{z-index:10}.pause-panel fieldset{display:grid;gap:.7rem;margin-top:.4rem;padding:1rem;border:1px solid rgba(47,43,40,.35)}.audio-mixer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1rem;padding:.8rem;border:1px solid rgba(47,43,40,.22);border-radius:.6rem;background:#ffffff3d}.audio-mixer label{display:grid;grid-template-columns:1fr auto;gap:.25rem .65rem;align-items:center}.audio-mixer input{grid-column:1 / -1;width:100%}.audio-mixer output{font-variant-numeric:tabular-nums;color:var(--muted-ink)}.pause-panel>fieldset>label:not(.toggle){display:flex;justify-content:space-between;gap:1rem}.toggle{display:flex;gap:.65rem;align-items:center}.toggle input{width:1.15rem;height:1.15rem;accent-color:var(--focus)}.guide-page{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;padding:clamp(1.2rem,5vw,4rem) max(1.2rem,calc((100vw - 900px)/2));color:var(--ink);background:var(--paper)}.guide-page header{padding-bottom:2rem;border-bottom:1px solid rgba(47,43,40,.3)}.guide-page h1{max-width:12em;margin:.5rem 0 1rem;font-family:"Noto Serif SC",SimSun,serif;font-size:clamp(2.2rem,7vw,4.6rem);font-weight:500;line-height:1.18}.guide-page h2{margin-top:2rem;font-family:"Noto Serif SC",SimSun,serif}.guide-page p,.guide-page li{line-height:1.75}.guide-page a{color:var(--focus)}.disclaimer,.game-notice{padding:1rem 1.2rem;border-left:4px solid var(--anchor);background:#b5494914}.game-notice h2{margin-top:0}.guide-page footer{display:flex;gap:1rem;padding:2rem 0 4rem}html[data-motion=reduced] *,html[data-motion=reduced] *:before,html[data-motion=reduced] *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}html[data-motion=reduced] .memory-cutscene:before{opacity:.3;transform:scale(.92);animation:none!important}@media(max-width:720px),(max-height:620px){.photo_order-panel{max-height:96vh;padding:.85rem 1.35rem .7rem 2.2rem}.photo_order-panel>[data-close]{top:.65rem;right:.75rem;padding:.3rem .5rem}.photo-album{gap:.4rem}.photo-album>header{padding-right:4rem}.photo-album>header h2{margin-bottom:.15rem;font-size:1.35em}.photo-album>header p{margin:0 0 .12rem;font-size:.72em;line-height:1.35}.photo-order{gap:.55rem}.photo-card{gap:.3rem;padding:1.35rem .5rem .45rem}.photo-card figure{gap:.25rem}.photo-mat{aspect-ratio:2;padding:.3rem}.photo-card figcaption{grid-template-columns:auto 1fr;gap:.05rem .4rem;align-items:baseline}.photo-card figcaption strong{font-size:1em}.photo-card figcaption small{grid-column:1 / -1;min-height:0;font-size:.58em}.photo-controls button{padding:.25rem .2rem;font-size:.58em}.photo-album>footer{gap:.5rem;padding-top:.15rem}.photo-album>footer .primary{padding:.45rem .7rem;font-size:.72em}#app[data-chapter=life] .dialogue-box{bottom:.75rem;gap:.35rem;width:min(48rem,84vw);padding:.7rem 1rem}.objective-chip{max-width:66vw}.stage-chip{top:auto;right:1rem;bottom:1rem}.save-notice{top:1rem;right:1rem;bottom:auto}.map-panel-heading{display:block}.map-drawing.expanded{max-height:42vh}.hud-actions{left:1rem;transform:none}.interaction-prompt{bottom:4.4rem}.mode-grid,.memory-fragment{grid-template-columns:1fr}.memory-fragment-actions{width:100%}.memory-fragment-actions.single{width:min(8rem,100%)}.settings-grid{grid-template-columns:1fr}.title-settings{width:min(48rem,94vw)}.content-note{grid-template-columns:1fr;gap:.3rem}.title-screen{justify-content:flex-start}.title-screen h1{font-size:2.7rem}.title-emblem{margin-top:1rem}}@media(max-width:560px){.objective-chip{grid-template-columns:1fr;gap:.45rem;max-width:calc(100vw - 2rem)}.observation-hint{justify-self:start;padding-top:.35rem;padding-left:0;border-top:1px solid color-mix(in srgb,var(--hud-accent) 42%,transparent);border-left:0}.stage-chip{max-width:calc(100vw - 2rem)}.title-screen{gap:.58rem}.title-menu-card{padding-right:2.5rem}}@media(forced-colors:active){.map-paper,.map-landmark.station circle,.map-landmark.reached circle{fill:Canvas}.map-route,.map-landmark,.map-sound-cue,.map-player circle:first-child{stroke:CanvasText}.map-water-stains{fill:GrayText}}
