:root{color:#ece9d7;background:#11120e;font-family:IBM Plex Sans,Noto Sans SC,Microsoft YaHei UI,Avenir Next,sans-serif;font-synthesis:none;font-smooth:always;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;--ink: #171912;--ink-soft: #34372b;--paper: #c8bd78;--paper-light: #e5dda5;--paper-muted: #a99f65;--fluorescent: #eee9bc;--night: #11130f;--night-raised: #1a1d17;--night-soft: #242820;--bone: #eeecdc;--muted: #a7aa9a;--line: rgb(238 236 220 / 26%);--danger: #c7433b;--danger-bright: #f06a5e;--success: #b9c77d;--cyan: #9bc4c0;--focus: #fff18b;--health-danger: 0;--sanity-distress: 0}*{box-sizing:border-box}html,body,#app,#game-shell,#viewport{width:100%;height:100%;margin:0}html{min-width:320px;background:var(--night)}body{overflow:hidden;overscroll-behavior:none}body,button,input,output{font:inherit}button,input{-webkit-tap-highlight-color:transparent}button{min-width:44px;min-height:44px;border:0;cursor:pointer}button:disabled{cursor:not-allowed}button:active:not(:disabled){transform:scale(.96)}button:focus-visible,input:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{color:var(--night);background:var(--focus)}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.icon{display:block;width:1.25rem;height:1.25rem;flex:0 0 auto}#game-shell{position:relative;overflow:hidden;isolation:isolate;background:var(--night)}#viewport{position:absolute;inset:0;overflow:hidden}#viewport canvas{display:block;width:100%;height:100%;outline:0}#screen-effects{position:fixed;z-index:8;inset:0;overflow:hidden;pointer-events:none;opacity:1;transition-property:opacity;transition-duration:.26s;transition-timing-function:ease}#game-shell[data-level=menu] #screen-effects{opacity:0}#screen-effects>div{position:absolute;inset:0}.screen-tint{opacity:.16;mix-blend-mode:color;transition-property:background-color,opacity;transition-duration:.7s;transition-timing-function:ease}#game-shell[data-level=level-0] .screen-tint{background:#8f8249;opacity:.13}#game-shell[data-level=level-1] .screen-tint{background:#172826;opacity:.18}#game-shell[data-level=level-2] .screen-tint{background:#7f3f1d;opacity:.15}#game-shell[data-level=level-37] .screen-tint{background:#b6d7d4;opacity:.1}#game-shell[data-level=level-4] .screen-tint{background:#53615d;opacity:.14}#game-shell[data-level="level-!"] .screen-tint{background:radial-gradient(circle at 50% 55%,#5b0a0e08 0 31%,#89141b3d);opacity:.2;animation:alarm-breathe 6.4s ease-in-out infinite}.screen-scanlines{inset:-6px!important;opacity:.055;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 3px,rgb(0 0 0 / 48%) 4px);background-size:100% 4px;animation:scanline-drift 14s linear infinite}.screen-noise{opacity:calc(.045 + var(--sanity-distress) * .13);background-image:radial-gradient(circle at 18% 32%,rgb(255 255 255 / 28%) 0 .45px,transparent .8px),radial-gradient(circle at 71% 68%,rgb(0 0 0 / 45%) 0 .55px,transparent .9px),radial-gradient(circle at 43% 83%,rgb(255 255 255 / 16%) 0 .4px,transparent .75px);background-size:4px 4px,5px 5px,7px 7px;mix-blend-mode:overlay}.screen-vignette{background:radial-gradient(ellipse at center,transparent 42%,rgb(0 0 0 / 18%) 70%,rgb(0 0 0 / 64%) 112%)}.screen-health-edge{opacity:calc(var(--health-danger) * .72);box-shadow:inset 0 0 5vw #7e0b0dbf,inset 0 0 12vw #340004b8;transition-property:opacity;transition-duration:.28s;transition-timing-function:ease-out}.screen-sanity-edge{opacity:calc(var(--sanity-distress) * .34);box-shadow:inset 10px 0 24px #841c2466,inset -10px 0 24px #297f8457;mix-blend-mode:screen}@keyframes alarm-breathe{0%,to{opacity:.16}50%{opacity:.22}}@keyframes scanline-drift{0%{transform:translateY(0)}to{transform:translateY(4px)}}.state-panel{position:fixed;z-index:30;inset:0}.menu-stage{overflow-x:hidden;overflow-y:auto;color:var(--ink);background-color:var(--paper);background-image:radial-gradient(ellipse at 68% -12%,rgb(255 252 203 / 74%) 0,transparent 32%),linear-gradient(112deg,transparent 0 58%,rgb(79 67 23 / 10%) 58.15% 58.4%,transparent 58.7%),repeating-linear-gradient(90deg,transparent 0 13.8vw,rgb(84 77 43 / 11%) 13.9vw 14vw),linear-gradient(180deg,#d1c681,#c1b56e 56%,#aa9e5e)}.menu-stage:before{content:"";position:fixed;z-index:0;inset:0;pointer-events:none;background:linear-gradient(90deg,rgb(52 47 25 / 48%),transparent 9%,transparent 88%,rgb(50 43 21 / 56%)),linear-gradient(180deg,transparent 64%,rgb(47 42 21 / 19%) 64.2%,rgb(32 29 17 / 56%) 100%),radial-gradient(ellipse at 50% 104%,rgb(34 31 18 / 40%) 0,transparent 51%)}.menu-stage:after{content:"";position:fixed;z-index:0;inset:0;pointer-events:none;opacity:.24;background-image:radial-gradient(circle at 12% 28%,rgb(44 39 19 / 36%) 0 .6px,transparent .85px),radial-gradient(circle at 78% 61%,rgb(255 248 195 / 28%) 0 .55px,transparent .8px);background-size:5px 5px,7px 7px;mix-blend-mode:multiply}.menu-stage>*{position:relative;z-index:2}.menu-light{position:absolute;z-index:1;top:max(1.5rem,env(safe-area-inset-top));height:12px;background:#4d4b33;box-shadow:0 2px #ffffe052,0 12px 34px #fff8be61,0 44px 100px #fff5b138;pointer-events:none}.menu-light span{position:absolute;inset:2px 8px;background:var(--fluorescent);box-shadow:0 0 14px #fffbd3db;animation:fluorescent-hum 7.6s ease-in-out infinite}.menu-light-primary{left:10vw;width:min(34vw,34rem);transform:perspective(500px) rotateX(18deg) rotate(-1deg)}.menu-light-distant{top:17vh;right:4vw;width:min(20vw,17rem);opacity:.52;transform:perspective(500px) rotateX(18deg) rotate(1.5deg)}@keyframes fluorescent-hum{0%,68%,74%,to{opacity:1}71%{opacity:.83}}.menu-room-number{position:absolute;z-index:1;right:clamp(1rem,4vw,4rem);bottom:clamp(6rem,12vh,10rem);color:#2d2a1721;font-family:Bahnschrift SemiCondensed,DIN Condensed,Franklin Gothic Medium,sans-serif;font-size:clamp(5rem,15vw,14rem);font-weight:700;line-height:.8;letter-spacing:-.06em;pointer-events:none;transform:rotate(-2deg)}.menu-utility{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:76px;padding:max(1.25rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) 1rem max(1.25rem,env(safe-area-inset-left));border-bottom:1px solid rgb(31 31 18 / 32%);animation:menu-reveal .46s cubic-bezier(.2,0,0,1) both}.menu-file-mark,.menu-coordinate,.menu-adaptation,.menu-build,.settings-index,.status-kicker,.hud-caption,.hud-level-code,.archive-header>div>p{font-family:IBM Plex Mono,Cascadia Mono,SFMono-Regular,monospace;text-transform:uppercase;letter-spacing:.12em}.menu-file-mark{margin:0;font-size:.7rem;font-weight:700}.menu-utility-actions{display:flex;align-items:center;gap:.5rem}.utility-button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;height:44px;padding:0 .8rem;color:var(--ink);background:#e8dfa485;border:1px solid rgb(30 31 18 / 46%);border-radius:1px;font-size:.78rem;font-weight:750;letter-spacing:.04em;transition-property:color,background-color,border-color,transform;transition-duration:.18s;transition-timing-function:ease}.utility-button:hover{color:var(--bone);background:var(--ink);border-color:var(--ink)}.utility-button-wide{padding-inline:1rem}.language-button{min-width:58px;font-family:IBM Plex Mono,Cascadia Mono,monospace}.menu-composition{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(19rem,.62fr);align-items:end;gap:clamp(3rem,8vw,9rem);width:min(100%,94rem);min-height:clamp(32rem,68vh,52rem);margin:0 auto;padding:clamp(5rem,12vh,10rem) max(1.25rem,5vw) clamp(3rem,8vh,6rem)}.menu-copy{align-self:center;max-width:61rem;animation:menu-reveal .62s 80ms cubic-bezier(.2,0,0,1) both}.menu-coordinate{margin:0 0 clamp(1rem,3vh,2rem);color:#1e1f12a6;font-size:clamp(.62rem,1vw,.76rem);font-weight:700}#main-title{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:end;max-width:56rem;margin:0;cursor:pointer;user-select:none;text-wrap:balance}.title-latin{grid-column:1 / -1;font-family:Bahnschrift SemiCondensed,DIN Condensed,Franklin Gothic Medium,sans-serif;font-size:clamp(4rem,10.4vw,9.6rem);font-stretch:condensed;font-weight:800;line-height:.76;letter-spacing:-.055em;text-shadow:0 2px 0 rgb(255 248 190 / 26%)}.title-rule{align-self:center;width:100%;height:.48rem;margin-top:clamp(1rem,2vw,1.8rem);background:var(--ink);box-shadow:0 4px #1b1c102e;transform-origin:left;transition-property:transform,background-color;transition-duration:.18s;transition-timing-function:cubic-bezier(.2,0,0,1)}.title-chinese{margin-left:1.25rem;font-family:Noto Sans SC,Microsoft YaHei UI,sans-serif;font-size:clamp(1.4rem,3vw,2.6rem);font-weight:800;line-height:1;letter-spacing:.2em}#main-title:hover .title-rule,#main-title.title-activated .title-rule{transform:scaleX(.94);background:#423f24}#main-title.title-activated .title-latin{text-shadow:1px 0 rgb(110 31 27 / 26%),-1px 0 rgb(26 88 84 / 20%)}.menu-introduction{max-width:46rem;margin:clamp(1.8rem,4vh,3rem) 0 0;color:var(--ink-soft);font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.72;text-wrap:pretty}.menu-adaptation{margin:1.4rem 0 0;color:#1f2013a8;font-size:.68rem;font-weight:700}.menu-actions{display:flex;flex-direction:column;align-self:center;border-top:4px solid var(--ink);border-bottom:1px solid rgb(31 32 19 / 44%);box-shadow:12px 14px #322f191c;animation:menu-reveal .62s .17s cubic-bezier(.2,0,0,1) both}.menu-action{display:grid;grid-template-columns:2.2rem minmax(0,1fr) 2rem;align-items:center;gap:1rem;width:100%;min-height:78px;padding:.85rem 1rem;text-align:left;color:var(--ink);background:#e0d69657;border-bottom:1px solid rgb(31 32 19 / 35%);border-radius:0;transition-property:color,background-color,padding-left,transform;transition-duration:.2s;transition-timing-function:cubic-bezier(.2,0,0,1)}.menu-action:hover:not(:disabled),.menu-action:focus-visible{padding-left:1.35rem;color:var(--bone);background:var(--ink)}.menu-action-primary{min-height:94px;color:var(--bone);background:var(--ink)}.menu-action-primary:hover,.menu-action-primary:focus-visible{color:var(--ink);background:var(--fluorescent)}.menu-action-secondary:disabled{color:#26271875;background:repeating-linear-gradient(135deg,rgb(44 43 25 / 4%) 0 7px,transparent 7px 14px),#cdc27c57}.menu-action-tertiary{min-height:64px}.menu-action-index{align-self:start;padding-top:.2rem;font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.64rem;font-weight:700;opacity:.62}.menu-action-copy{display:flex;flex-direction:column;gap:.28rem}.menu-action-copy strong{font-size:clamp(1rem,1.4vw,1.18rem);font-weight:780;letter-spacing:.01em}.menu-action-copy small{font-size:.75rem;line-height:1.35;opacity:.68}.menu-action-icon{justify-self:end;transition-property:transform;transition-duration:.2s;transition-timing-function:cubic-bezier(.2,0,0,1)}.menu-action:hover:not(:disabled) .menu-action-icon,.menu-action:focus-visible .menu-action-icon{transform:translate(3px)}.archive-panel{width:min(calc(100% - 2.5rem),86rem);margin:0 auto clamp(3rem,7vh,6rem);color:var(--bone);background:#181b16;border-top:5px solid var(--fluorescent);box-shadow:16px 20px #2f2b1630}.archive-panel-enter{animation:archive-enter .46s cubic-bezier(.2,0,0,1) both}.archive-header{display:grid;grid-template-columns:minmax(13rem,.5fr) minmax(0,1fr);gap:2rem;align-items:end;padding:clamp(1.5rem,4vw,3rem);border-bottom:1px solid var(--line)}.archive-header>div>p{margin:0 0 .55rem;color:var(--success);font-size:.62rem;font-weight:700}.archive-header h2{margin:0;font-family:Bahnschrift SemiCondensed,DIN Condensed,sans-serif;font-size:clamp(2.1rem,4vw,4.2rem);line-height:.9;letter-spacing:-.025em;text-wrap:balance}.archive-header>p{max-width:45rem;margin:0;color:var(--muted);font-size:.92rem;line-height:1.65;text-wrap:pretty}.archive-level-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.archive-level-button{display:grid;grid-template-columns:clamp(3.5rem,7vw,6.5rem) minmax(0,1fr) 2rem;align-items:stretch;gap:1rem;min-height:148px;padding:0;color:var(--bone);text-align:left;background:transparent;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;transition-property:color,background-color,transform;transition-duration:.19s;transition-timing-function:ease}.archive-level-button:nth-child(2n){border-right:0}.archive-level-button:hover,.archive-level-button:focus-visible{color:var(--night);background:var(--fluorescent)}.archive-level-code{display:grid;place-items:center;min-width:3.5rem;color:var(--success);background:#ffffff08;border-right:1px solid var(--line);font-family:Bahnschrift SemiCondensed,DIN Condensed,sans-serif;font-size:clamp(2.2rem,4.4vw,4.6rem);font-weight:800;line-height:1;letter-spacing:-.05em}.archive-level-button:hover .archive-level-code,.archive-level-button:focus-visible .archive-level-code{color:var(--night);border-color:#1416113b}.archive-level-copy{display:flex;flex-direction:column;justify-content:center;gap:.42rem;padding:1.2rem 0}.archive-level-name-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:.42rem}.archive-level-name-line strong{color:var(--bone);font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.25}.archive-level-alternate-name,.archive-level-name-separator{color:#eeecdc94;font-size:.82rem}.archive-level-copy>span:not(.archive-level-name-line){color:var(--muted);font-size:.82rem;line-height:1.45}.archive-level-copy small{color:#eeecdc7a;font-size:.7rem;line-height:1.45}.archive-level-button:hover .archive-level-copy>span,.archive-level-button:hover .archive-level-copy small,.archive-level-button:focus-visible .archive-level-copy>span,.archive-level-button:focus-visible .archive-level-copy small{color:#11130fad}.archive-level-button:hover .archive-level-name-line strong,.archive-level-button:focus-visible .archive-level-name-line strong{color:var(--night)}.archive-level-arrow{align-self:center;justify-self:center;transition-property:transform;transition-duration:.18s;transition-timing-function:ease}.archive-level-button:hover .archive-level-arrow,.archive-level-button:focus-visible .archive-level-arrow{transform:translate(3px)}.menu-footer{display:flex;justify-content:space-between;gap:2rem;width:100%;padding:1.2rem max(1.25rem,env(safe-area-inset-right)) max(1.2rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));color:#1f2013b3;border-top:1px solid rgb(31 32 19 / 25%);font-size:.7rem;line-height:1.5}.menu-footer p{margin:0}.menu-build{text-align:right;font-size:.61rem;font-weight:700}.touch-notice{display:none;width:calc(100% - 2rem);margin:0 1rem 1rem;padding:.9rem 1rem;color:var(--bone);background:var(--ink);border-left:4px solid var(--fluorescent);font-size:.78rem;line-height:1.5}@keyframes menu-reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes archive-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}#hud{position:fixed;z-index:20;inset:0;color:var(--bone);pointer-events:none;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px rgb(0 0 0 / 80%)}.hud-objective-block{position:absolute;top:max(1rem,env(safe-area-inset-top));left:max(1rem,env(safe-area-inset-left));width:min(34rem,calc(100vw - 8rem));padding:.85rem 1rem .9rem 1.1rem;background:linear-gradient(90deg,rgb(10 12 10 / 86%),rgb(10 12 10 / 64%) 72%,transparent);border-left:3px solid var(--fluorescent)}.hud-level-line{display:flex;align-items:baseline;gap:.65rem;min-width:0}.hud-level-code{flex:0 0 auto;color:var(--fluorescent);font-size:.59rem;font-weight:800}.hud-level-name{overflow:hidden;color:var(--muted);font-size:.73rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.hud-objective-line{display:flex;flex-direction:column;gap:.23rem;margin:.55rem 0 0}.hud-caption{color:#eeecdc8c;font-size:.52rem;font-weight:700}.hud-objective-line strong{font-size:clamp(.82rem,1.2vw,.97rem);line-height:1.4;text-wrap:pretty}.hud-objective-progress{display:grid;grid-template-columns:minmax(5rem,1fr) auto;align-items:center;gap:.7rem;margin-top:.72rem}.hud-progress-track,.hud-chase-meter{position:relative;display:block;overflow:hidden;height:3px;background:#eeecdc2e}.hud-progress-fill,.hud-chase-meter>span{position:absolute;inset:0 auto 0 0;width:var(--progress, 0%);background:var(--fluorescent);transition-property:width;transition-duration:.18s;transition-timing-function:linear}.hud-objective-progress output{color:var(--fluorescent);font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.63rem;font-weight:700}.hud-icon-button{position:absolute;top:max(1rem,env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));display:inline-flex;align-items:center;justify-content:center;gap:.38rem;width:50px;height:46px;padding:0;color:var(--bone);background:#0a0c0ac2;border:1px solid rgb(238 236 220 / 25%);border-radius:1px;pointer-events:auto;transition-property:color,background-color,border-color,transform;transition-duration:.17s;transition-timing-function:ease}.hud-icon-button:hover{color:var(--night);background:var(--fluorescent);border-color:var(--fluorescent)}.hud-icon-button .icon{width:1rem;height:1rem}.hud-key{font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.58rem;font-weight:800}.hud-vitals{position:absolute;bottom:max(1rem,env(safe-area-inset-bottom));left:max(1rem,env(safe-area-inset-left));display:grid;grid-template-columns:repeat(2,minmax(8.5rem,11rem));gap:1px;background:#eeecdc21;box-shadow:0 8px 28px #0003}.hud-stat{display:flex;align-items:center;gap:.68rem;min-height:54px;padding:.62rem .75rem;background:#090b09c2}.hud-stat-icon{color:var(--muted)}.hud-stat-icon .icon{width:1.05rem;height:1.05rem}.hud-stat-body{min-width:0;flex:1}.hud-stat-heading{display:flex;justify-content:space-between;gap:.75rem;margin-bottom:.38rem;color:var(--muted);font-size:.61rem;font-weight:680}.hud-stat-heading output{color:var(--bone);font-family:IBM Plex Mono,Cascadia Mono,monospace;font-weight:800}.hud-stat-bar{position:relative;overflow:hidden;height:3px;background:#eeecdc2b}.hud-stat-bar span{position:absolute;inset:0 auto 0 0;width:var(--value, 100%);background:var(--bone);transition-property:width,background-color;transition-duration:.18s;transition-timing-function:linear}.hud-stat-health .hud-stat-bar span{background:#d4c681}.hud-stat-stamina .hud-stat-bar span{background:#a8bea1}.hud-stat-sanity .hud-stat-bar span{background:#8fb9b8}.hud-stat-battery .hud-stat-bar span{background:#d6d3a4}.hud-equipment{position:absolute;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:flex-end;gap:.55rem}.hud-flashlight{display:grid;grid-template-columns:auto minmax(5rem,auto) auto;align-items:center;gap:.68rem;min-height:48px;padding:.5rem .65rem;background:#090b09c7;border-right:3px solid rgb(238 236 220 / 28%)}.hud-flashlight[data-on=true]{border-color:var(--fluorescent)}.hud-flashlight[data-available=false]{color:#eeecdc6b;border-color:var(--danger)}.hud-equipment-icon{color:var(--fluorescent)}.hud-equipment-copy{display:flex;flex-direction:column;gap:.12rem;font-size:.59rem}.hud-equipment-copy>span{color:var(--muted)}.hud-equipment-copy strong{font-size:.68rem}kbd{display:inline-grid;place-items:center;min-width:28px;min-height:28px;padding:.15rem .4rem;color:var(--bone);background:#24271f;border:1px solid rgb(238 236 220 / 34%);border-bottom-width:2px;border-radius:2px;font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.68rem;font-weight:800;line-height:1;text-shadow:none}.hud-inventory{display:flex;flex-direction:column;align-items:flex-end;gap:.38rem}.hud-inventory-items{display:flex;gap:1px;background:#eeecdc1f}.hud-item{display:flex;align-items:center;gap:.42rem;min-height:36px;padding:.4rem .58rem;color:#eeecdc59;background:#090b09b8;font-size:.58rem;text-decoration:line-through}.hud-item .icon{width:.9rem;height:.9rem}.hud-item[data-owned=true]{color:var(--bone);text-decoration:none}.hud-interaction{position:absolute;left:50%;bottom:clamp(6rem,18vh,11rem);display:flex;align-items:center;gap:.72rem;max-width:min(34rem,calc(100vw - 2rem));padding:.55rem .85rem .55rem .58rem;color:var(--bone);background:#080a08d6;border-bottom:2px solid var(--fluorescent);font-size:.78rem;line-height:1.4;text-align:left;transform:translate(-50%);animation:interaction-enter .18s ease-out both}@keyframes interaction-enter{0%{opacity:0;transform:translate(-50%,5px)}to{opacity:1;transform:translate(-50%)}}.hud-chase{position:absolute;top:max(1rem,env(safe-area-inset-top));left:50%;width:min(26rem,calc(100vw - 10rem));padding:.7rem .85rem;background:#1e0407d6;border-top:2px solid var(--danger-bright);box-shadow:0 10px 28px #18000447;transform:translate(-50%)}.hud-chase-heading{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.55rem;margin-bottom:.55rem;color:#e8b4ae;font-size:.62rem}.hud-chase-heading .icon{width:.95rem;height:.95rem}.hud-chase-heading strong{font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.56rem;text-transform:uppercase;letter-spacing:.06em}.hud-chase[data-phase=routeInProgress] .hud-chase-heading strong{color:#ff8c80}.hud-chase[data-phase=safeGateReached]{border-color:var(--success)}.hud-chase[data-phase=safeGateReached] .hud-chase-heading strong{color:var(--success)}.hud-chase-meter{height:4px;background:#ffdcd72b}.hud-chase-meter>span{background:var(--danger-bright)}.hud-chase output{display:block;margin-top:.45rem;font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.62rem;font-weight:800;text-align:right}#crosshair{position:fixed;z-index:16;top:50%;left:50%;width:10px;height:10px;pointer-events:none;transform:translate(-50%,-50%)}#crosshair:before,#crosshair:after{content:"";position:absolute;top:50%;left:50%;background:#fffff0d6;box-shadow:0 0 2px #000000eb;transform:translate(-50%,-50%)}#crosshair:before{width:8px;height:1px}#crosshair:after{width:1px;height:8px}.status-stage,.ending-stage{display:grid;place-items:center;overflow:auto;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:linear-gradient(90deg,#080a08c7,#080a087a 50%,#080a08d1),repeating-linear-gradient(0deg,transparent 0 4px,rgb(0 0 0 / 7%) 4px 5px)}.status-stage-danger{background:radial-gradient(circle at 50% 55%,transparent 0 20%,rgb(59 5 9 / 36%) 74%),#070807cc}.status-stage-complete{background:radial-gradient(ellipse at 50% 15%,rgb(220 217 165 / 9%),transparent 48%),#080a08c7}.status-card{position:relative;width:min(34rem,100%);padding:clamp(1.7rem,5vw,3.4rem);color:var(--bone);background:#151812;border-top:5px solid var(--fluorescent);box-shadow:18px 20px #00000040,0 26px 80px #0000005c;animation:status-enter .3s cubic-bezier(.2,0,0,1) both}.status-stage-danger .status-card{border-color:var(--danger-bright)}.status-stage-complete .status-card{border-color:var(--success)}.status-kicker{margin:0 0 1rem;color:var(--muted);font-size:.62rem;font-weight:700}.status-card h2,.ending-card h2{margin:0;font-family:Bahnschrift SemiCondensed,DIN Condensed,Franklin Gothic Medium,sans-serif;font-size:clamp(2.5rem,7vw,5.2rem);font-weight:780;line-height:.9;letter-spacing:-.035em;text-wrap:balance}.status-card>p:not(.status-kicker,.status-level-name,.error-message){max-width:28rem;margin:1.35rem 0 0;color:var(--muted);line-height:1.65;text-wrap:pretty}.status-level-name{margin:1rem 0 0;color:var(--success);font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.72rem;font-weight:700;letter-spacing:.04em}.status-actions{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:2rem;background:#eeecdc24}.state-action{display:inline-flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:54px;padding:.75rem .95rem;color:var(--bone);text-align:left;background:var(--night-soft);border-radius:0;font-size:.82rem;font-weight:700;transition-property:color,background-color,transform;transition-duration:.17s;transition-timing-function:ease}.state-action:hover,.state-action:focus-visible{color:var(--night);background:var(--fluorescent)}.state-action-primary{grid-column:1 / -1;min-height:62px;color:var(--night);background:var(--fluorescent);font-size:.92rem}.state-action-primary:hover,.state-action-primary:focus-visible{color:var(--bone);background:#34382d}.loading-line{position:relative;overflow:hidden;height:4px;margin-top:2.2rem;background:#eeecdc21}.loading-line span{position:absolute;inset:0 auto 0 -34%;width:34%;background:var(--fluorescent);animation:loading-pass 1.7s cubic-bezier(.4,0,.2,1) infinite}.ending-stage{place-items:end start;background:linear-gradient(90deg,#080907f2 0 34%,#080907bd 58%,#08090733),linear-gradient(180deg,rgb(195 188 128 / 13%),transparent 45%),#11130f}.ending-stage:before{content:"";position:absolute;top:0;right:8vw;bottom:0;width:min(34vw,32rem);background:linear-gradient(90deg,#efebb70f,#efebb736 48%,#efebb70d),repeating-linear-gradient(0deg,transparent 0 11vh,rgb(238 236 220 / 5%) 11.1vh 11.3vh);transform:skew(-7deg);transform-origin:bottom}.ending-card{position:relative;z-index:2;width:min(44rem,100%);margin:clamp(1rem,4vw,4rem);padding:clamp(1.8rem,5vw,4rem);color:var(--bone);border-left:5px solid var(--success);background:#10130ed6;box-shadow:18px 22px #0003;animation:status-enter .43s cubic-bezier(.2,0,0,1) both}.ending-body{max-width:36rem;margin:1.7rem 0 0;color:#d4d3c4;font-size:clamp(1rem,1.8vw,1.17rem);line-height:1.78;text-wrap:pretty}.ending-note{max-width:34rem;margin:1rem 0 2.2rem;color:var(--muted);font-size:.82rem;line-height:1.6}.ending-card .state-action{width:min(22rem,100%)}.error-message{overflow-wrap:anywhere;margin:1.4rem 0 2rem;padding:.8rem 0;color:#efbbb6;border-top:1px solid rgb(240 106 94 / 28%);border-bottom:1px solid rgb(240 106 94 / 28%);font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.76rem;line-height:1.6}.fatal-recovery-message{margin-top:1.35rem!important}.fatal-technical-label{margin:1.6rem 0 0!important;color:var(--danger-bright)!important;font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}@keyframes status-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes loading-pass{0%{transform:translate(0)}to{transform:translate(400%)}}.context-status{position:fixed;z-index:80;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;width:min(37rem,calc(100vw - 2rem));padding:1rem;color:var(--bone);background:#191c16;border-left:4px solid var(--danger-bright);box-shadow:0 16px 44px #0000006b}.context-status[data-status=restored]{border-color:var(--success)}.context-title{margin:0 0 .32rem;color:var(--muted);font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}#context-status-text{margin:0;font-size:.78rem;line-height:1.5}.context-status button{padding:.65rem .8rem;color:var(--night);background:var(--fluorescent);border-radius:0;font-size:.75rem;font-weight:750}.settings-layer{position:fixed;z-index:100;inset:0}.settings-backdrop{position:absolute;inset:0;background:#050605c2}.settings-drawer{position:absolute;top:0;right:0;bottom:0;display:flex;flex-direction:column;width:min(43rem,92vw);max-width:100%;color:var(--bone);background:#171a14;border-left:1px solid rgb(238 236 220 / 24%);box-shadow:-24px 0 80px #0000006b;animation:drawer-enter .26s cubic-bezier(.2,0,0,1) both}.settings-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:max(1.3rem,env(safe-area-inset-top)) max(1.3rem,env(safe-area-inset-right)) 1.2rem 1.5rem;border-top:5px solid var(--fluorescent);border-bottom:1px solid var(--line)}.settings-index{margin:0 0 .5rem;color:var(--muted);font-size:.58rem;font-weight:700}.settings-header h2{margin:0;font-family:Bahnschrift SemiCondensed,DIN Condensed,sans-serif;font-size:clamp(2rem,4vw,3.3rem);line-height:.95;letter-spacing:-.025em;text-wrap:balance}.settings-close-button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:44px;padding:.55rem .75rem;color:var(--bone);background:transparent;border:1px solid var(--line);border-radius:0;font-size:.7rem;font-weight:700;transition-property:color,background-color,border-color,transform;transition-duration:.17s;transition-timing-function:ease}.settings-close-button:hover{color:var(--night);background:var(--fluorescent);border-color:var(--fluorescent)}.close-mark{position:relative;width:14px;height:14px}.close-mark:before,.close-mark:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:1.5px;background:currentColor}.close-mark:before{transform:translate(-50%,-50%) rotate(45deg)}.close-mark:after{transform:translate(-50%,-50%) rotate(-45deg)}.settings-introduction{margin:0;padding:1rem 1.5rem;color:var(--muted);background:#11130f;border-bottom:1px solid var(--line);font-size:.78rem;line-height:1.55;text-wrap:pretty}.settings-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(1.5rem,env(safe-area-inset-bottom));scrollbar-color:#666a58 #11130f;scrollbar-width:thin}.settings-section{padding:1.4rem 1.5rem 1.55rem;border-bottom:1px solid var(--line)}.settings-section h3{margin:0 0 .8rem;color:var(--success);font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.11em}.range-setting,.switch-setting{display:grid;grid-template-columns:minmax(10rem,1fr) minmax(13rem,.8fr);align-items:center;gap:1.5rem;min-height:68px;padding:.75rem 0;border-top:1px solid rgb(238 236 220 / 10%);cursor:pointer}.setting-copy{display:flex;flex-direction:column;gap:.24rem}.setting-copy strong{font-size:.86rem}.setting-copy small{color:var(--muted);font-size:.69rem;line-height:1.45}.range-control{display:grid;grid-template-columns:minmax(7rem,1fr) 3.3rem;align-items:center;gap:.8rem}.range-control output{color:var(--fluorescent);font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.72rem;font-variant-numeric:tabular-nums;font-weight:800;text-align:right}input[type=range]{width:100%;height:44px;margin:0;color:var(--fluorescent);background:transparent;cursor:pointer;appearance:none}input[type=range]::-webkit-slider-runnable-track{height:4px;background:linear-gradient(to right,var(--fluorescent) 0 var(--range-progress, 0%),#45493d var(--range-progress, 0%) 100%)}input[type=range]::-webkit-slider-thumb{width:18px;height:18px;margin-top:-7px;background:var(--fluorescent);border:2px solid #171a14;border-radius:0;box-shadow:0 0 0 1px var(--fluorescent);appearance:none}input[type=range]::-moz-range-track{height:4px;background:#45493d}input[type=range]::-moz-range-progress{height:4px;background:var(--fluorescent)}input[type=range]::-moz-range-thumb{width:16px;height:16px;background:var(--fluorescent);border:2px solid #171a14;border-radius:0;box-shadow:0 0 0 1px var(--fluorescent)}.switch-setting{grid-template-columns:minmax(0,1fr) auto}.switch-control{position:relative;display:grid;place-items:center;width:58px;height:44px}.switch-control input{position:absolute;width:1px;height:1px;opacity:0}.switch-track{position:relative;display:block;width:52px;height:28px;background:#3a3e34;border:1px solid rgb(238 236 220 / 26%);transition-property:background-color,border-color;transition-duration:.18s;transition-timing-function:ease}.switch-track span{position:absolute;top:3px;left:3px;width:20px;height:20px;background:#a9ac9c;transition-property:transform,background-color;transition-duration:.18s;transition-timing-function:cubic-bezier(.2,0,0,1)}.switch-control input:checked+.switch-track{background:#5d6541;border-color:var(--fluorescent)}.switch-control input:checked+.switch-track span{background:var(--fluorescent);transform:translate(24px)}.switch-control input:focus-visible+.switch-track{outline:3px solid var(--focus);outline-offset:3px}.controls-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.controls-heading p{margin:0;color:var(--muted);font-size:.68rem}.controls-guide dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;background:#eeecdc1c}.controls-guide dl div{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;padding:.65rem .75rem;background:#1e211a}.controls-guide dl .control-level-bang{background:linear-gradient(90deg,#6813196b,#1e211a 72%);box-shadow:inset 3px 0 0 var(--danger-bright)}.controls-guide .control-level-bang dt{color:#efb2ad}.controls-guide dt{color:var(--muted);font-size:.7rem}.controls-guide dd{margin:0;color:var(--bone);font-family:IBM Plex Mono,Cascadia Mono,monospace;font-size:.68rem;font-weight:700;text-align:right}@keyframes drawer-enter{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:translate(0)}}noscript{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:2rem;color:var(--bone);background:var(--night);text-align:center}@media(hover:none),(pointer:coarse){.touch-notice{display:block}}@media(max-width:900px){.menu-composition{grid-template-columns:1fr;align-items:start;gap:3rem;min-height:auto;padding-top:clamp(6rem,16vh,9rem)}.menu-actions{width:min(100%,34rem)}.archive-level-list{grid-template-columns:1fr}.archive-level-button,.archive-level-button:nth-child(2n){border-right:0}.hud-chase{top:7.4rem;width:min(26rem,calc(100vw - 2rem))}}@media(max-width:680px){.menu-utility{align-items:flex-start}.menu-file-mark{max-width:9rem;line-height:1.5}.utility-button-wide span:last-child{display:none}.menu-light-primary{left:7vw;width:58vw}.menu-light-distant{display:none}.menu-composition{padding-inline:1.1rem;padding-bottom:2.5rem}.title-latin{font-size:clamp(3.25rem,16vw,5.5rem)}.title-chinese{font-size:1.35rem}.menu-introduction{font-size:.96rem}.archive-panel{width:calc(100% - 2rem)}.archive-header{grid-template-columns:1fr;gap:1.2rem}.archive-level-button{grid-template-columns:3.5rem minmax(0,1fr) 1.6rem;min-height:160px}.archive-level-copy small{display:none}.menu-footer{flex-direction:column;gap:.5rem}.menu-build{text-align:left}.hud-objective-block{top:max(.65rem,env(safe-area-inset-top));left:max(.65rem,env(safe-area-inset-left));width:calc(100vw - 5.8rem);padding:.7rem .8rem}.hud-icon-button{top:max(.65rem,env(safe-area-inset-top));right:max(.65rem,env(safe-area-inset-right))}.hud-vitals{right:max(.65rem,env(safe-area-inset-right));bottom:max(.65rem,env(safe-area-inset-bottom));left:max(.65rem,env(safe-area-inset-left));grid-template-columns:repeat(2,minmax(0,1fr))}.hud-stat{min-height:46px;padding:.48rem .55rem}.hud-equipment{right:max(.65rem,env(safe-area-inset-right));bottom:7rem}.hud-interaction{bottom:10.5rem;width:calc(100vw - 2rem)}.hud-chase{top:7.8rem}.status-actions{grid-template-columns:1fr}.state-action-primary{grid-column:auto}.settings-drawer{width:100%}.settings-header{padding-left:1rem}.settings-close-button span:last-child{display:none}.settings-section,.settings-introduction{padding-inline:1rem}.range-setting{grid-template-columns:1fr;gap:.6rem;padding-block:1rem}.switch-setting{gap:.8rem}.controls-heading{display:block}.controls-heading p{margin:-.35rem 0 .8rem}.controls-guide dl,.context-status{grid-template-columns:1fr}}@media(max-width:420px){.menu-utility-actions{gap:.3rem}.utility-button{padding-inline:.6rem}.menu-action{grid-template-columns:1.7rem minmax(0,1fr) 1.4rem;gap:.65rem}.archive-level-button{grid-template-columns:3.25rem minmax(0,1fr) 1.35rem;gap:.65rem}.hud-stat-icon{display:none}.hud-stat-heading{font-size:.55rem}.hud-flashlight{grid-template-columns:auto auto}.hud-equipment-copy{display:none}.hud-item>span:not(.sr-only):not(:first-child),.hud-inventory>.hud-caption{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0ms!important}.screen-scanlines,#game-shell[data-level="level-!"] .screen-tint{animation:none!important}}#game-shell[data-reduce-flashing=true] .menu-light span,#game-shell[data-reduce-flashing=true] .screen-scanlines,#game-shell[data-reduce-flashing=true][data-level="level-!"] .screen-tint{animation:none}#game-shell[data-reduce-flashing=true][data-level="level-!"] .screen-tint{opacity:.14}#game-shell[data-camera-motion=off] .screen-scanlines,#game-shell[data-camera-motion=off] .menu-light span,#game-shell[data-camera-motion=off][data-level="level-!"] .screen-tint,#game-shell[data-camera-motion=off] .loading-line span,#game-shell[data-camera-motion=off] .menu-utility,#game-shell[data-camera-motion=off] .menu-copy,#game-shell[data-camera-motion=off] .menu-actions,#game-shell[data-camera-motion=off] .archive-panel-enter,#game-shell[data-camera-motion=off] .status-card,#game-shell[data-camera-motion=off] .ending-card,#game-shell[data-camera-motion=off] .settings-drawer,#game-shell[data-camera-motion=off] .hud-interaction{animation:none!important}#game-shell[data-camera-motion=off] #screen-effects,#game-shell[data-camera-motion=off] #screen-effects *,#game-shell[data-camera-motion=off] .hud-progress-fill,#game-shell[data-camera-motion=off] .hud-chase-meter>span,#game-shell[data-camera-motion=off] .hud-stat-bar span{transition-duration:.001ms!important;transition-delay:0ms!important}
