:root{--app-vh: 100vh;--app-vh-fallback: 100vh;--app-vw-fallback: 100vw;--game-launch-scale: 1;--game-font-scale: 1.2;--game-brightness: 1;--bg-deep: #05080c;--bg-panel: #0a1218;--bg-panel-2: #0d1820;--border: #1a3340;--border-bright: #2a5568;--text: #c8dde6;--text-dim: #6a8a96;--cyan: #3ec8d4;--cyan-dim: #1a7a85;--white: #e8f4f8;--red: #c44a4a;--amber: #c9a227;--font-mono: "IBM Plex Mono", monospace;--font-ui: "Noto Sans JP", sans-serif}@supports (height: 100dvh){:root{--app-vh: 100dvh}}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%;min-height:var(--app-vh-fallback);max-width:100%;overflow:hidden;background:var(--bg-deep);color:var(--text);font-family:var(--font-ui)}#app{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.game-ambient-backdrop{--game-shell-w: min(var(--app-vw-fallback), var(--app-vh-fallback) * 16 / 9);--game-shell-h: min(var(--app-vh-fallback), var(--app-vw-fallback) * 9 / 16);--letterbox-top: max(0px, (var(--app-vh-fallback) - var(--game-shell-h)) / 2);--letterbox-left: max(0px, (var(--app-vw-fallback) - var(--game-shell-w)) / 2);position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;background:#020408}.game-ambient-backdrop__city{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;opacity:.42;filter:saturate(.85) brightness(.55)}.game-ambient-backdrop__logo-slot{position:absolute;top:calc(var(--letterbox-top) + clamp(6px,1vh,14px));left:calc(var(--letterbox-left) + clamp(10px,1.2vw,22px));z-index:10;pointer-events:none;max-width:min(360px,max(160px,calc(var(--letterbox-left) - 24px)),42vw);max-height:min(calc(var(--app-vh) - var(--letterbox-top) * 2 - 12px),max(80px,calc(var(--letterbox-left) * 1.1),30vh))}.game-ambient-backdrop__logo-slot:not(.has-horizontal-logo){opacity:0;visibility:hidden}.game-ambient-backdrop__logo{display:block;width:100%;height:auto;max-height:inherit;object-fit:contain;object-position:left top;opacity:.92;filter:drop-shadow(0 4px 24px rgba(0,0,0,.65))}.game-header{display:grid;grid-template-columns:minmax(140px,1.1fr) 2fr 1fr;align-items:center;padding:8px 12px 6px 10px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#0c151c,#080e14);font-family:var(--font-mono);position:relative;z-index:2;min-height:64px}.header-brand{display:flex;align-items:center;gap:10px;min-width:0}.header-brand.has-horizontal-logo .header-title{display:none}.game-header__logo{display:block;height:clamp(32px,5.2vh,42px);width:auto;max-width:min(240px,36vw);object-fit:contain;object-position:left center;flex-shrink:0}.game-shell{position:relative;z-index:1;margin-left:auto;margin-right:auto;align-self:center;flex-shrink:0}.game-shell{width:min(calc(var(--app-vw-fallback) * var(--game-screen-scale, 1) * var(--game-launch-scale, 1)),calc(var(--app-vh-fallback) * 16 / 9 * var(--game-screen-scale, 1) * var(--game-launch-scale, 1)));height:min(calc(var(--app-vh-fallback) * var(--game-screen-scale, 1) * var(--game-launch-scale, 1)),calc(var(--app-vw-fallback) * 9 / 16 * var(--game-screen-scale, 1) * var(--game-launch-scale, 1)));max-width:100%;max-height:100%;flex-shrink:0;position:relative;background:var(--bg-deep);border:1px solid var(--border);box-shadow:0 0 60px #3ec8d414;display:grid;grid-template-rows:64px 1fr 36px;font-size:calc(clamp(12px,1.05vw,15px) * var(--game-font-scale))}.game-shell.with-observer{grid-template-rows:64px 44px 1fr 36px}.game-shell.with-observer.with-hint{grid-template-rows:64px 44px 52px 1fr 36px}.image-scene-shell{display:block;grid-template-rows:none;overflow:hidden}.scene-fill{position:relative;flex:1;min-height:0;overflow:hidden;background:#000}.scene-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:#000}.cover-image-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.cover-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.scene-filter{filter:grayscale(.55) contrast(1.08) brightness(.52)}.scene-filter-dark{filter:grayscale(.7) contrast(1.1) brightness(.38)}.text-dock{position:absolute;left:0;right:0;bottom:0;z-index:30;display:flex;flex-direction:column;max-height:46%;min-height:0;overflow:hidden;pointer-events:auto;background:linear-gradient(180deg,#05080c00,#05080cb8 14%,#05080cf7);border-top:1px solid rgba(42,85,104,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.text-dock--center{top:50%;bottom:auto;left:50%;right:auto;transform:translate(-50%,-50%);max-height:85%;width:min(92%,640px);border:1px solid var(--border-bright);border-radius:2px;background:#05080ce0}.text-dock-body{flex:1;overflow-y:auto;padding:16px 24px}.text-dock-footer{flex-shrink:0;padding:8px 20px 12px;border-top:1px solid rgba(42,85,104,.35);display:flex;align-items:center;justify-content:space-between;gap:12px}.ui-dock{position:absolute;z-index:25;pointer-events:auto}.ui-dock--top{top:0;left:0;right:0;z-index:90;background:linear-gradient(180deg,rgba(5,8,12,.92) 0%,rgba(5,8,12,.55) 70%,transparent 100%);border-bottom:1px solid rgba(42,85,104,.4);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.observer-bar{display:grid;grid-template-columns:100px 1fr auto;gap:12px;align-items:center;padding:6px 14px;background:#0a1218f2;border-bottom:1px solid var(--border);font-size:.8em}.observer-bar--status{grid-template-columns:1fr auto;gap:16px;padding:8px 18px}.observer-bar--status .observer-stats{flex-wrap:wrap;row-gap:2px}.observer-label{font-family:var(--font-mono);color:var(--cyan);letter-spacing:.1em}.tag-gen{font-size:.65em;color:var(--amber);margin-left:4px}.observer-text-slot{min-width:0}.observer-text{color:var(--text);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.observer-bar--protagonist{grid-template-columns:88px 1fr;grid-template-rows:auto auto;gap:8px 14px;padding:12px 18px 10px;min-height:56px;background:linear-gradient(90deg,#18486073,#0a1218fa 50%);border-bottom:2px solid rgba(90,210,255,.55);box-shadow:0 6px 28px #008cc82e;animation:observer-protagonist-in .35s ease-out}.observer-bar--protagonist .observer-label{font-size:.95em;font-weight:600;color:#8ee9ff;letter-spacing:.14em;text-shadow:0 0 14px rgba(80,200,255,.4);align-self:start;padding-top:2px}.observer-bar--protagonist .observer-text-slot{align-self:center}.observer-bar--protagonist .viewport-marquee--observer{font-size:1.08em;font-weight:500;letter-spacing:.03em;color:#f2f9fc}.observer-bar--protagonist .viewport-marquee--observer .viewport-marquee__text{color:#f2f9fc}.observer-bar--protagonist .observer-stats{grid-column:1 / -1;justify-content:flex-end;padding-top:6px;border-top:1px solid rgba(42,85,104,.4)}@keyframes observer-protagonist-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.observer-stats{font-family:var(--font-mono);font-size:.84em;color:var(--text-dim);display:flex;gap:14px;flex-shrink:0;align-items:center;line-height:1.5}.observer-bar--status .observer-stats{letter-spacing:.04em}.hint-banner{display:flex;align-items:center;gap:12px;padding:8px 14px;font-size:.85em;border-bottom:1px solid var(--border)}.hint-banner.hint-ai_dialogue{background:#3ec8d414;border-left:3px solid var(--cyan)}.hint-banner.hint-hacker{background:#c9a22714;border-left:3px solid var(--amber)}.btn-hint-dismiss{margin-left:auto;padding:4px 10px;font-size:.75em}.plutchik-wrap{margin-bottom:10px}.plutchik-svg{width:100%;max-height:100px}.plutchik-caption{font-size:.65em;color:var(--text-dim);text-align:center;margin-top:4px}.dialogue-choices{display:flex;flex-direction:column;gap:8px;margin-top:16px}.dialogue-choice-btn{text-align:left;width:100%}.observer-eternal,.path-meter{font-family:var(--font-mono);font-size:.8em;color:var(--cyan-dim);margin:8px 0}.path-meter{color:var(--amber)}.game-shell[data-corruption=mid]{animation:flicker 4s infinite}.game-shell[data-corruption=high] .header-title{animation:glitch-text 2s infinite}.game-shell[data-obs-pressure="2"]{animation:flicker 3s infinite}.game-shell[data-obs-pressure="3"] .game-header,.game-shell[data-obs-pressure="4"] .game-header{box-shadow:inset 0 -1px #ff64a040}.game-shell[data-obs-pressure="4"] .header-center{animation:glitch-text 1.8s infinite}@keyframes flicker{0%,95%,to{opacity:1}96%{opacity:.92}98%{opacity:.97}}@keyframes glitch-text{0%{text-shadow:none}20%{text-shadow:2px 0 var(--cyan),-2px 0 var(--red)}40%{text-shadow:none}}.cinematic-shell,.narrative-shell,.screen-opening-title,.screen-start-menu{cursor:pointer}.cinematic-shell .text-dock-body,.narrative-shell .text-dock-body{padding:18px 28px}.screen-title-content{text-align:center}.screen-title-content h1{font-family:var(--font-mono);font-weight:300;font-size:clamp(28px,3.5vw,48px);letter-spacing:.35em;color:var(--white)}.screen-title-content .sub{font-size:clamp(10px,1vw,14px);letter-spacing:.5em;color:var(--cyan-dim)}.start-menu-inner{text-align:center;background:transparent;padding:28px 32px}.cinematic-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 30%,rgba(5,8,12,.85) 100%)}.cinematic-overlay.cctv-mode{position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:1px solid rgba(62,200,212,.3);font-family:var(--font-mono);font-size:.75em;color:var(--cyan)}.cinematic-overlay.cctv-mode .rec{position:absolute;top:8px;left:12px;color:var(--red)}.cinematic-overlay.cctv-mode .cam{position:absolute;bottom:8px;right:12px}.cinematic-overlay.noise{position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.2'/%3E%3C/svg%3E");mix-blend-mode:overlay;opacity:.5}.cinematic-textbox{background:transparent;border:none;max-height:none}.cinematic-progress{font-family:var(--font-mono);font-size:.7em;color:var(--text-dim);margin-bottom:12px}.cinematic-line{line-height:1.9;margin-bottom:8px;font-size:1.05em}.cinematic-line .speaker{color:var(--cyan);font-family:var(--font-mono);margin-right:8px}.cinematic-controls{background:transparent}.cinematic-hint{font-family:var(--font-mono);font-size:.75em;color:var(--text-dim)}.btn-skip{border-color:var(--border);color:var(--text-dim);background:transparent}.btn-skip:hover{color:var(--text)}.screen-title{grid-row:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:radial-gradient(ellipse at center,#0d1a22,#05080c 70%);cursor:pointer}.screen-opening-title .title-tagline{margin-top:20px;font-size:clamp(12px,1.2vw,16px);letter-spacing:.25em;color:var(--text-dim)}.screen-opening-title .title-echo{font-family:var(--font-mono);font-size:.8em;color:var(--cyan-dim);letter-spacing:.15em}.logo-video-backdrop{background:#000}.logo-title-video-layer{z-index:2}.logo-title-poster-layer{z-index:1}.logo-title-fallback-layer{z-index:2;animation:logo-title-fallback-in .8s ease-out forwards}.logo-title-fallback-layer .cover-image{animation:logo-title-fallback-ken 4.8s ease-in-out forwards}@keyframes logo-title-fallback-in{0%{opacity:0}to{opacity:1}}@keyframes logo-title-fallback-ken{0%{transform:scale(1.06);filter:brightness(.4)}to{transform:scale(1);filter:brightness(1)}}.logo-title-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.logo-title-screen-img{filter:none}.corner-controls{position:absolute;top:10px;right:10px;z-index:50;display:flex;flex-direction:row;align-items:center;gap:10px;pointer-events:auto}.corner-controls .btn-corner{position:static;flex-shrink:0;font-size:.65em;padding:6px 12px;min-height:32px;white-space:nowrap;letter-spacing:.08em;border-color:#3ec8d459;color:var(--cyan-dim);background:#05080c8c}.corner-controls .btn-corner:hover{color:var(--cyan);border-color:var(--cyan-dim)}.crossfade-video-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden}.crossfade-video-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;will-change:opacity}.screen-start-menu .text-dock--menu,.screen-start-menu .text-dock--start-menu{top:auto;bottom:8%;left:50%;right:auto;transform:translate(-50%) translateY(40px);width:min(92%,640px);max-height:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;pointer-events:none}.screen-start-menu .text-dock--sns-login{top:50%;bottom:auto;left:50%;right:auto;transform:translate(-50%,-50%);width:min(92%,520px);max-height:min(86vh,680px);background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;pointer-events:none}.screen-start-menu .text-dock--start-menu .text-dock-body,.screen-start-menu .text-dock--menu .text-dock-body,.screen-start-menu .text-dock--sns-login .text-dock-body{pointer-events:auto}.start-tagline{font-size:1.12em;letter-spacing:.28em;color:var(--white);text-align:center;margin-bottom:20px;font-weight:300;text-shadow:0 2px 12px rgba(0,0,0,.9)}.screen-start-menu .start-menu-inner{padding:12px 16px 8px;background:transparent}.screen-start-menu .start-menu-nav .btn{text-shadow:0 2px 10px rgba(0,0,0,.85)}.screen-start-menu .start-menu-meta{text-shadow:0 1px 8px rgba(0,0,0,.85)}.start-menu-meta{font-family:var(--font-mono);font-size:.85em;color:var(--text-dim);margin-top:14px;text-align:center}.sns-login-card{padding:22px 24px;background:linear-gradient(180deg,#081119e0,#04080eeb);border:1px solid rgba(62,200,212,.28);box-shadow:0 24px 80px #0000009e;text-align:center}.sns-login-kicker{margin:0 0 8px;color:var(--cyan);font-family:var(--font-mono);font-size:.72em;letter-spacing:.22em}.sns-login-card h1{margin:0;color:var(--white);font-family:var(--font-mono);font-size:clamp(22px,2.4vw,32px);font-weight:400;letter-spacing:.16em}.sns-login-copy,.sns-login-note{color:#b9d2e1c2;line-height:1.55}.sns-login-copy{margin:12px auto 18px;max-width:34em;font-size:.9em}.sns-login-note{margin:14px 0 0;font-size:.75em}.sns-login-actions{display:grid;grid-template-columns:1fr;gap:9px}.sns-login-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:54px;padding:9px 16px;text-align:left}.sns-login-btn__label{color:var(--white);font-size:.98em;letter-spacing:.08em}.sns-login-btn__sub{color:var(--cyan-dim);font-size:.74em;letter-spacing:.02em}.sns-login-btn--guest{opacity:.78}.opening-video-shell{cursor:pointer}.text-dock--opening{max-height:38%}.opening-line{font-size:1.12em;line-height:1.85;margin-bottom:10px}.opening-line .speaker{display:block;font-family:var(--font-mono);font-size:.82em;color:var(--cyan-dim);margin-bottom:6px;letter-spacing:.06em}.opening-line--plain{color:var(--white)}.opening-fade{background:#000!important}.scene-layer--logo .opening-logo-layer .cover-image{object-fit:contain;padding:8vh 10vw}.opening-intro-bg .cover-image{object-fit:cover}.text-dock--typing{top:50%;bottom:auto;transform:translateY(-50%);max-height:none;background:transparent;border:none;text-align:center}.opening-typing-line,.dbh-d-text.typing-cinematic{font-family:var(--font-mono);font-size:clamp(1.4rem,3.2vw,2.2rem);letter-spacing:.14em;color:var(--white)}.typing-caret,.opening-typing-caret{display:inline-block;width:.55em;height:1em;margin-left:.08em;vertical-align:text-bottom;background:var(--cyan);animation:opening-typing-blink .9s step-end infinite}.opening-typing-hint,.text-dock--typing .dbh-dialogue-hint,.opening-caption-dock .dbh-dialogue-hint,.opening-intro-caption__hint{display:block;width:100%;margin-top:1.4rem;font-size:.82rem;color:var(--text-dim);letter-spacing:.08em;text-align:center}@keyframes opening-typing-blink{50%{opacity:0}}.text-dock--intro-image{background:linear-gradient(transparent,#000000d1 35%);border:none}.opening-intro-caption{text-align:center;padding:0 6vw 2vh}.opening-intro-caption__text{font-size:clamp(1.05rem,2.4vw,1.45rem);line-height:1.85;color:var(--white);letter-spacing:.06em}.opening-intro-caption__hint{margin-top:1rem}.text-dock--fade{top:50%;bottom:auto;transform:translateY(-50%);max-height:none;background:transparent;border:none}.opening-caption-dock{text-align:center}.opening-caption{font-size:1.1em;color:var(--white);margin-bottom:8px}.dbh-settings-shell{grid-template-rows:1fr;background:#030508}.dbh-settings{--dbh-accent: #6eb8ff;--dbh-accent-dim: rgba(110, 184, 255, .45);--dbh-line: rgba(255, 255, 255, .22);position:relative;display:grid;grid-template-columns:200px 1fr;width:100%;height:100%;font-family:Roboto Condensed,Noto Sans JP,sans-serif;color:#e8eef4;overflow:hidden}.dbh-settings-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 70% at 70% 40%,rgba(20,45,80,.35) 0%,transparent 55%),linear-gradient(135deg,#03080e33,#000000d9);pointer-events:none;z-index:0}.dbh-settings-scan{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.015) 2px,rgba(255,255,255,.015) 4px);pointer-events:none;z-index:1}.dbh-settings-nav{position:relative;z-index:2;display:flex;flex-direction:column;gap:6px;padding:48px 12px 24px 20px;border-right:1px solid var(--dbh-line);background:linear-gradient(90deg,rgba(0,0,0,.5) 0%,transparent 100%)}.dbh-nav-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px 14px 20px;border:none;background:transparent;color:#ffffff73;cursor:pointer;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);transition:color .2s,background .2s;text-align:left}.dbh-nav-item:hover{color:#ffffffbf;background:#6eb8ff14}.dbh-nav-item.is-active{color:#fff;background:linear-gradient(90deg,#6eb8ff40,#6eb8ff0d);box-shadow:inset 3px 0 0 var(--dbh-accent)}.dbh-nav-en{font-size:.95em;font-weight:500;letter-spacing:.22em}.dbh-nav-ja{font-size:.72em;letter-spacing:.12em;opacity:.65}.settings-account-card{padding:16px 18px;border:1px solid rgba(110,184,255,.24);background:#040a129e}.settings-account-kicker{display:block;color:var(--cyan);font-family:var(--font-mono);font-size:.72em;letter-spacing:.18em;margin-bottom:8px}.settings-account-card strong{display:block;color:var(--white);font-size:1.1em;letter-spacing:.08em}.settings-account-card p{margin:8px 0 4px;color:#c8e1f0d1}.settings-account-card small{color:#a0bed29e}.settings-account-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.dbh-settings-main{position:relative;z-index:2;display:flex;flex-direction:column;padding:36px 48px 28px 40px;overflow-y:auto}.dbh-settings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:36px;padding-bottom:20px;border-bottom:1px solid var(--dbh-line)}.dbh-title-en{font-size:clamp(28px,3.5vw,42px);font-weight:300;letter-spacing:.35em;margin:0;color:#fff}.dbh-title-ja{margin:6px 0 0;font-size:.85em;letter-spacing:.4em;color:var(--dbh-accent-dim)}.dbh-close{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 16px;border:1px solid var(--dbh-line);background:#00000059;color:var(--dbh-accent);cursor:pointer;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:border-color .2s,background .2s}.dbh-close:hover{border-color:var(--dbh-accent);background:#6eb8ff1f}.dbh-close-icon{width:18px;height:18px;position:relative}.dbh-close-icon:before,.dbh-close-icon:after{content:"";position:absolute;top:50%;left:0;width:100%;height:1px;background:currentColor}.dbh-close-icon:before{transform:rotate(45deg)}.dbh-close-icon:after{transform:rotate(-45deg)}.dbh-close-label{font-size:.65em;letter-spacing:.2em}.dbh-panel{flex:1;max-width:560px}.dbh-panel-note{font-size:.8em;color:#ffffff73;letter-spacing:.08em;margin-bottom:20px}.dbh-shortcut-grid{display:grid;gap:10px;max-width:640px}.dbh-shortcut-grid>div{display:grid;grid-template-columns:minmax(116px,auto) 1fr;align-items:center;gap:14px;padding:10px 12px;border-left:2px solid rgba(110,184,255,.3);background:#ffffff0a;font-size:.82em}.dbh-shortcut-grid kbd{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:28px;margin-right:6px;padding:0 8px;border:1px solid rgba(110,184,255,.45);background:#00000073;color:var(--dbh-accent);font-family:var(--font-mono);font-size:.78em}.game-menu-modal,.backlog-modal{width:min(720px,88vw);max-height:82vh;padding:22px}.game-menu-header h2,.backlog-header h2{margin:8px 0;color:var(--white)}.game-menu-header p{color:var(--text-dim);font-size:.9em}.game-menu-actions{display:grid;gap:10px;margin-top:18px}.operation-guide-chip{min-width:32px;width:32px;padding:0;color:var(--text-dim);opacity:.72}.operation-guide-chip:hover,.operation-guide-chip:focus-visible{color:var(--cyan);opacity:1}.btn-corner--guide{min-width:32px;padding-inline:10px;opacity:.72}.operation-guide-backdrop{z-index:920;background:#00050ccc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.operation-guide-modal{width:min(92vw,760px);max-height:min(86vh,720px);padding:22px;gap:16px;overflow-y:auto;background:linear-gradient(180deg,#08141cfa,#02080dfa);border-color:#5ad2e66b;box-shadow:0 24px 64px #000000b8}.operation-guide-header h2,.operation-guide-header p{margin:0}.operation-guide-header h2{margin-top:8px;color:var(--cyan)}.operation-guide-header p{margin-top:8px;color:var(--text-dim);line-height:1.7}.operation-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.operation-guide-grid section{padding:14px;border:1px solid var(--border);background:#000c1280}.operation-guide-grid h3{margin:0 0 10px;font-size:.95rem;color:var(--text)}.operation-guide-grid ul{display:grid;gap:8px;margin:0;padding-left:1.1em;color:var(--text-dim);line-height:1.6}.operation-guide-grid kbd{display:inline-block;min-width:1.6em;margin:0 2px;padding:1px 5px;border:1px solid var(--border-bright);border-radius:3px;background:#ffffff0f;color:var(--cyan);font-family:var(--font-mono);font-size:.78em;text-align:center}.operation-guide-close{align-self:flex-end}.backlog-modal{display:flex;flex-direction:column}.backlog-list{flex:1;min-height:0;overflow-y:auto;margin:12px 0 16px;padding-right:8px}.backlog-entry{padding:10px 0;border-bottom:1px solid rgba(62,200,212,.16)}.backlog-entry__meta{margin-bottom:4px;color:var(--cyan);font-family:var(--font-mono);font-size:.72em}.backlog-entry p,.backlog-empty{color:var(--text);line-height:1.65;white-space:pre-wrap}.dialogue-menu-btn{position:absolute;top:14px;right:14px;z-index:45}.dbh-row{margin-bottom:28px}.dbh-row-head{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:2px 16px;margin-bottom:10px}.dbh-label-en{grid-column:1;font-size:.78em;letter-spacing:.28em;color:#ffffff8c}.dbh-label-ja{grid-column:1;font-size:.72em;letter-spacing:.1em;color:#ffffff59}.dbh-val{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:1.4em;font-weight:300;letter-spacing:.05em;color:#fff}.dbh-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:28px;background:transparent;border-radius:0;cursor:pointer;outline:none}.dbh-range::-webkit-slider-runnable-track{height:4px;background:#ffffff26}.dbh-range::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:#fff;box-shadow:0 0 12px #6eb8ffcc;cursor:pointer}.dbh-range::-moz-range-track{height:4px;background:#ffffff26}.dbh-range::-moz-range-thumb{width:14px;height:14px;border:none;border-radius:50%;background:#fff;cursor:pointer}.dbh-toggle{display:flex;align-items:center;gap:16px;margin-bottom:32px;cursor:pointer}.dbh-toggle input{position:absolute;opacity:0;width:0;height:0}.dbh-toggle-track{width:48px;height:24px;background:#ffffff1f;border:1px solid var(--dbh-line);position:relative;clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%);transition:background .2s,border-color .2s}.dbh-toggle-thumb{position:absolute;top:3px;left:4px;width:16px;height:16px;background:#ffffff80;transition:transform .2s,background .2s}.dbh-toggle input:checked+.dbh-toggle-track{background:#6eb8ff40;border-color:var(--dbh-accent-dim)}.dbh-toggle input:checked+.dbh-toggle-track .dbh-toggle-thumb{transform:translate(22px);background:var(--dbh-accent)}.dbh-toggle-text{display:flex;flex-direction:column;gap:2px}.dbh-field{margin-bottom:18px}.dbh-field-label{display:block;font-size:.72em;letter-spacing:.2em;color:#ffffff80;margin-bottom:8px}.dbh-input,.dbh-select{width:100%;padding:12px 14px;background:#00000073;border:1px solid var(--dbh-line);border-left:3px solid var(--dbh-accent-dim);color:#fff;font-family:IBM Plex Mono,monospace;font-size:.9em;outline:none;transition:border-color .2s}.dbh-input:focus,.dbh-select:focus{border-color:var(--dbh-accent);border-left-color:var(--dbh-accent)}.dbh-llm-block{margin-top:8px;padding:16px 18px;border:1px solid var(--dbh-line);background:#00000059;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}.dbh-action{margin-top:16px;padding:12px 28px;border:1px solid var(--dbh-accent-dim);background:linear-gradient(180deg,#6eb8ff33,#6eb8ff0d);color:#fff;font-family:Roboto Condensed,sans-serif;font-size:.88em;letter-spacing:.15em;cursor:pointer;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);transition:background .2s,border-color .2s}.dbh-action:hover{border-color:var(--dbh-accent);background:#6eb8ff47}.dbh-action--ghost{background:transparent;color:#ffffff8c}.dbh-action--ghost:hover{color:#fff}.dbh-action--danger{border-color:#ff5f708f;background:#78142238;color:#ffb7c0}.dbh-action--danger:hover{border-color:#ff8794e6;background:#961c2c52;color:#fff}.dbh-test-result{margin-top:14px;padding:12px 14px;border-left:2px solid var(--dbh-accent);font-size:.9em;line-height:1.65;color:#ffffffbf;background:#0000004d}.dbh-settings-footer{margin-top:auto;padding-top:24px}.start-menu-inner h1{font-family:var(--font-mono);font-weight:300;font-size:clamp(24px,3vw,40px);letter-spacing:.3em;color:var(--white)}.start-menu-nav{display:flex;flex-direction:column;gap:12px;margin:36px 0 24px;align-items:center}.screen-start-menu .start-menu-nav{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:14px;margin:28px 0 18px}.screen-start-menu .start-menu-nav .btn-large{min-width:240px;flex:1 1 220px;max-width:300px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:6px 22px;font-size:1em;line-height:1.2}.btn-continue{flex-direction:column;gap:2px;line-height:1.15;padding:5px 22px}.btn-continue__title{font-size:1em;letter-spacing:.12em}.btn-continue__meta{font-family:var(--font-mono);font-size:.62em;font-weight:400;letter-spacing:.02em;color:var(--cyan-dim);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.btn-continue:disabled .btn-continue__meta{display:none}.btn-large{min-width:280px;padding:12px 24px;font-size:1em}.start-menu-note{font-size:.85em;color:var(--text-dim)}.narrative-shell{cursor:default}.narrative-shell .text-dock{z-index:250;pointer-events:auto;isolation:isolate;max-height:min(44vh,46%);overflow:hidden}.narrative-shell .text-dock.dbh-dialogue-dock--choosing{max-height:min(48vh,50%)}.narrative-shell .ui-dock--top{z-index:251}.narrative-shell .scanlines{z-index:40;pointer-events:none!important}.narrative-panel{background:transparent;border:none;padding:0}.phone-overlay{display:none}@keyframes phone-pulse{0%,to{opacity:1}50%{opacity:.5}}.narrative-location{font-family:var(--font-mono);font-size:.75em;color:var(--cyan);letter-spacing:.1em;margin-bottom:16px}.narrative-panel .narrative-location{font-size:1.05em}.narrative-lines{font-size:1.08em;line-height:1.75;flex:1;overflow-y:auto}.narrative-lines p{margin-bottom:14px;line-height:1.8}.narrative-lines .speaker{display:block;font-family:var(--font-mono);font-size:.8em;color:var(--cyan-dim);margin-bottom:4px}.narrative-footer{margin-top:16px;padding-top:12px;border-top:1px solid var(--border)}.screen-title h1{font-family:var(--font-mono);font-weight:300;font-size:clamp(28px,3.5vw,48px);letter-spacing:.35em;color:var(--white)}.screen-title .sub{font-size:clamp(10px,1vw,14px);letter-spacing:.5em;color:var(--cyan-dim)}.screen-title .prompt{margin-top:40px;font-family:var(--font-mono);color:var(--text-dim);animation:blink 1.5s step-end infinite}@keyframes blink{50%{opacity:0}}.header-title{font-size:1.1em;color:var(--white);letter-spacing:.15em}.header-title span{display:block;font-size:.55em;color:var(--cyan-dim);letter-spacing:.3em}.header-center{text-align:center;color:var(--text-dim)}.header-center strong{color:var(--cyan);font-weight:500}.header-right{text-align:right}.progress-bar{display:inline-block;width:120px;height:6px;background:var(--border);margin-left:8px;vertical-align:middle}.progress-fill{height:100%;background:linear-gradient(90deg,var(--cyan-dim),var(--cyan));transition:width .4s ease}.game-main{display:grid;grid-template-columns:220px 1fr 260px;min-height:0;overflow:hidden}.panel{border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:0;background:var(--bg-panel)}.panel-right{display:flex;flex-direction:column;border-right:none;border-left:1px solid var(--border);overflow-x:hidden;overflow-y:hidden;scrollbar-gutter:stable}.panel-title{padding:10px 12px;font-family:var(--font-mono);font-size:.75em;letter-spacing:.2em;color:var(--cyan);border-bottom:1px solid var(--border);background:var(--bg-panel-2)}.area-list{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:8px;-webkit-overflow-scrolling:touch}.area-item{display:grid;grid-template-columns:64px 1fr;gap:8px;width:100%;padding:8px;margin-bottom:6px;border:1px solid transparent;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .2s,background .2s}.area-item:hover:not(.locked){border-color:var(--border-bright);background:#3ec8d40d}.area-item.active{border-color:var(--cyan);background:#3ec8d414}.area-item.locked{opacity:.35;cursor:not-allowed}.area-item:disabled{pointer-events:none}.area-thumb{width:64px;height:40px;object-fit:cover;border:1px solid var(--border);filter:saturate(.6) contrast(1.1)}.area-meta h3{font-size:.95em;font-weight:500;color:var(--white)}.area-meta p{font-size:.75em;color:var(--text-dim)}.area-pct{font-family:var(--font-mono);font-size:.7em;color:var(--cyan)}.panel-center{border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:0;background:#000;padding:0;overflow:hidden}.spot-tabs{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--border);flex-wrap:wrap}.spot-tab{padding:6px 12px;font-family:var(--font-mono);font-size:.75em;border:1px solid var(--border);background:transparent;color:var(--text-dim);cursor:pointer;flex-shrink:0;white-space:nowrap}.spot-tab:hover,.spot-tab.active{color:var(--cyan);border-color:var(--cyan-dim)}.observation-tabs{display:flex;gap:2px;padding:6px 12px;background:var(--bg-panel-2)}.obs-tab{padding:4px 10px;font-size:.7em;font-family:var(--font-mono);background:none;border:none;color:var(--text-dim);cursor:pointer;border-bottom:2px solid transparent;flex-shrink:0;white-space:nowrap}.obs-tab.active{color:var(--cyan);border-bottom-color:var(--cyan)}.viewport{flex:1;width:100%;min-height:0}.viewport-top-dock__row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:5px 8px 5px 6px;min-width:0}.viewport-top-dock__tabs-scroll{display:flex;align-items:center;gap:2px;flex:1 1 100%;min-width:0}.viewport-top-dock__tabs-scroll:not(.has-overflow) .viewport-top-dock__scroll-btn{display:none}.viewport-top-dock__scroll-btn{flex:0 0 auto;width:32px;min-height:32px;padding:0;border:1px solid var(--border);background:#0a1218f2;color:var(--cyan);cursor:pointer;font-size:.7em;line-height:1}.viewport-top-dock__scroll-btn:hover:not(:disabled){border-color:var(--cyan-dim);color:var(--white)}.viewport-top-dock__scroll-btn:disabled{opacity:.35;cursor:default}.viewport-top-dock__tabs-viewport{flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.viewport-top-dock__tabs-viewport::-webkit-scrollbar{display:none}.viewport-top-dock__tabs-track{display:flex;flex-wrap:nowrap;align-items:center;gap:4px 10px;width:max-content}.viewport-top-dock__tabs-track .spot-tabs,.viewport-top-dock__tabs-track .observation-tabs,.viewport-top-dock__row .spot-tabs,.viewport-top-dock__row .observation-tabs{padding:0;margin:0;background:transparent;border:none;flex:0 0 auto;flex-wrap:nowrap}.viewport-top-dock__actions{display:flex;align-items:center;gap:6px;justify-content:flex-end;width:100%;margin-left:0;flex-shrink:0}.viewport-top-dock .spot-tab{min-height:32px;padding:6px 10px;font-size:.68em}.viewport-top-dock .obs-tab{min-height:32px;padding:6px 9px;font-size:.65em}.viewport-top-dock .btn-scan-terminal,.viewport-top-dock .btn-angler-board{min-height:32px;padding:6px 10px;font-size:.65em;margin-left:0}.viewport-text-dock{max-height:50%}.viewport-text-dock--compact{max-height:14%;min-height:0}.viewport-text-dock--speech{max-height:32%;min-height:108px}.viewport-text-dock__stack{display:flex;flex-direction:column;gap:0;min-height:0;width:100%}.viewport-text-dock__hint-row{display:flex;align-items:center;gap:10px 14px;padding:5px 18px 4px 20px;min-height:0;flex-wrap:nowrap;border-bottom:1px solid rgba(42,85,104,.35)}.inv-speech-dock{flex:1 1 auto;min-height:0;padding:6px 14px 12px 16px;pointer-events:none}.inv-speech-bubble{width:100%;pointer-events:auto;animation:inv-speech-in .4s ease-out}.inv-speech-dock--scanning .inv-speech-bubble{animation:none}.inv-speech-dock--scanning .inv-speech-bubble__frame{box-shadow:inset 0 1px #64dcff40,inset 3px 0 #46c8ff80,0 8px 28px #00283c73}.inv-speech-dock--scanning .dbh-d-speaker,.inv-speech-dock--scanning .inv-speech-bubble__text,.inv-speech-dock--scanning .inv-speech-bubble__text.dbh-d-text--typing{color:#6ee8ff!important;text-shadow:0 0 10px rgba(80,220,255,.45)}.inv-speech-dock--protagonist.inv-speech-dock--scanning .dbh-d-speaker,.inv-speech-dock--protagonist.inv-speech-dock--scanning .inv-speech-bubble__text{color:#9ef0ff!important;text-shadow:0 0 12px rgba(120,230,255,.5)}.viewport-hint-row--scanning .viewport-marquee__text{color:#5ec8e0!important}.inv-speech-bubble__frame{position:relative;padding:12px 16px 11px 14px;background:linear-gradient(165deg,#0e1824b8,#060a10f0 55%,#04070bfa);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);box-shadow:inset 0 1px #78c8ff38,inset 3px 0 #5ab4f059,0 8px 32px #00000073}.inv-speech-bubble__accent{position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#5ad2ff26,#5ad2ffd9);opacity:.9}.inv-speech-dock--protagonist .inv-speech-bubble__accent{background:linear-gradient(180deg,#ffc87833,#ffb45ae6)}.inv-speech-dock--protagonist .inv-speech-bubble__frame{box-shadow:inset 0 1px #ffdca033,inset 3px 0 #ffbe6473,0 10px 36px #00000080}.inv-speech-bubble__body{min-height:2.8em;gap:12px}.inv-speech-bubble__body .dbh-portrait{width:52px;height:52px;flex-shrink:0}.inv-speech-bubble__body .dbh-portrait img{width:100%;height:100%;object-fit:cover;object-position:top center}.inv-speech-bubble__text-col{flex:1 1 auto;min-width:0}.inv-speech-bubble__text{margin:0;min-width:0;font-size:1.02em;line-height:1.65;font-weight:300;letter-spacing:.04em;color:#f4fafc;cursor:pointer}.inv-speech-dock--protagonist .inv-speech-bubble__text{color:#fffaf2}.inv-speech-bubble__hint{margin:8px 0 0;font-size:.62em;letter-spacing:.2em;color:#ffffff52;text-align:right}.inv-speech-bubble__hint[style*=hidden]{display:none}.inv-speech-bubble .dbh-d-speaker{margin-bottom:4px;font-size:.72em}.viewport-marquee--speech{width:100%}.viewport-marquee--speech .viewport-marquee__viewport{border:none;background:transparent;padding:0;-webkit-mask-image:none;mask-image:none}.viewport-marquee--speech .viewport-marquee__text,.viewport-marquee--speech .dbh-d-text{font-size:1.02em;line-height:1.65;font-weight:300;letter-spacing:.04em;color:#f4fafc}.inv-speech-dock--protagonist .viewport-marquee--speech .viewport-marquee__text{color:#fffaf2}@keyframes inv-speech-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.viewport-text-dock--emotion{max-height:38%}.viewport-text-dock__compact{display:flex;align-items:center;gap:10px 14px;padding:6px 14px 7px;min-height:0;flex-wrap:nowrap}.viewport-marquee{min-width:0;overflow:hidden}.viewport-marquee--log{flex:1 1 40%;font-size:.72em;line-height:1.3}.viewport-marquee--observer{flex:1 1 auto;min-width:0}.viewport-marquee--observer .viewport-marquee__viewport{border:none;background:transparent;padding:0}.viewport-marquee--hint{flex:0 1 32%;font-family:var(--font-mono);font-size:.62em;line-height:1.3;color:var(--text-dim)}.viewport-marquee__viewport{overflow:hidden;width:100%;padding-left:4px;mask-image:none;-webkit-mask-image:none}.viewport-marquee.is-overflow .viewport-marquee__viewport{padding-left:0;mask-image:linear-gradient(90deg,transparent 0,#000 22px,#000 calc(100% - 14px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22px,#000 calc(100% - 14px),transparent 100%)}.viewport-marquee__track{display:inline-block;white-space:nowrap;will-change:transform}.viewport-marquee__text,.viewport-marquee__gap{display:inline-block;white-space:nowrap}.viewport-marquee:not(.is-scrolling) .viewport-marquee__track{max-width:100%}.viewport-marquee:not(.is-scrolling) .viewport-marquee__text{overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block}@keyframes viewport-marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.playback-bar--inline{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:0;margin:0;border:none;font-family:var(--font-mono);font-size:.62em;color:var(--text-dim);letter-spacing:.06em;white-space:nowrap}.playback-bar--observer{display:flex;align-items:center;gap:10px;padding:4px 12px;font-family:var(--font-mono);font-size:.72em;color:#a0dcffd9;letter-spacing:.08em;white-space:nowrap;background:#060e1699;border:1px solid rgba(42,85,104,.5);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.playback-bar__rec-dot{width:7px;height:7px;border-radius:50%;background:#e44;box-shadow:0 0 8px #dc3c3ccc;animation:playback-rec-blink 1.2s ease-in-out infinite}@keyframes playback-rec-blink{0%,to{opacity:1}50%{opacity:.35}}.viewport-text-dock .text-dock-body{padding:14px 18px}.viewport-text-dock--emotion .text-dock-body{padding:10px 14px}.viewport-text-dock--emotion .text-dock-footer{padding:6px 14px 8px}.viewport-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.viewport-overlay.rain:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(255,255,255,.02) 2px,rgba(255,255,255,.02) 3px);animation:rain .3s linear infinite}@keyframes rain{0%{transform:translateY(-4px)}to{transform:translateY(4px)}}.viewport-overlay.noise{background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.15'/%3E%3C/svg%3E");opacity:calc(.2 + var(--noise-level, 0) * .5);mix-blend-mode:overlay}.cctv-hud{position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:1px solid rgba(62,200,212,.25);pointer-events:none;font-family:var(--font-mono);font-size:.7em;color:var(--cyan)}.cctv-hud .ts{position:absolute;top:8px;right:12px}.cctv-hud .cam{position:absolute;bottom:8px;left:12px}.cctv-hud .rec{position:absolute;top:8px;left:12px;color:var(--red)}.cctv-hud .rec:before{content:"● "}.testimony-log{font-family:var(--font-mono);font-size:.85em;line-height:1.7;color:var(--text);white-space:pre-wrap}.emotion-graph{height:80px;margin-top:8px;border:1px solid var(--border);background:#0006;position:relative}.emotion-graph svg{width:100%;height:100%}.playback-bar{display:flex;align-items:center;gap:12px;padding:8px 12px;border-top:1px solid var(--border);font-family:var(--font-mono);font-size:.7em;color:var(--text-dim)}.right-panel-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:8px;border-bottom:1px solid var(--border);background:#000c1459}.right-panel-tab{min-height:32px;padding:5px 4px;border:1px solid var(--border);background:#0000002e;color:var(--text-dim);cursor:pointer;font-family:var(--font-mono);font-size:.64em}.right-panel-tab span{display:block;margin-top:2px;color:var(--cyan);font-size:.8em}.right-panel-tab.active{border-color:var(--cyan-dim);color:var(--cyan);background:#3ec8d414}.right-panel-tab:disabled{cursor:not-allowed;opacity:.45}.right-panel-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,#04101a8f,#00080fc7),linear-gradient(rgba(80,180,220,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(80,180,220,.035) 1px,transparent 1px);background-size:auto,24px 24px,24px 24px}.log-scroll-stack{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.log-list,.log-detail-panel{box-sizing:border-box;width:100%;margin:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}.log-list{flex:1.4 1 0;min-height:240px;max-height:none;padding:6px 4px 6px 10px;border-bottom:1px solid var(--border)}.log-detail-panel{flex:.75 1 0;min-height:120px;max-height:42%;padding:10px 4px 10px 10px;border-left:1px solid rgba(72,190,210,.14);background:linear-gradient(135deg,#001826b8,#000810a3),repeating-linear-gradient(0deg,transparent,transparent 9px,rgba(120,220,255,.028) 9px,rgba(120,220,255,.028) 10px)}.log-detail-title{font-size:.9em;color:var(--cyan);margin-bottom:4px;letter-spacing:.08em;text-transform:uppercase}.log-detail-time{font-family:var(--font-mono);font-size:.68em;color:var(--text-dim);margin-bottom:8px}.log-detail-body{font-size:.78em;line-height:1.55;white-space:pre-wrap;color:var(--text);margin:0;font-family:var(--font-ui)}.log-detail-placeholder{font-size:.78em;color:var(--text-dim);margin:0}.log-filters{display:flex;flex-wrap:wrap;gap:4px;padding:8px;border-bottom:1px solid var(--border);background:#00101a85}.log-filter{min-height:30px;padding:5px 9px;font-size:.65em;font-family:var(--font-mono);border:1px solid var(--border);background:none;color:var(--text-dim);cursor:pointer}.log-filter.active{color:var(--cyan);border-color:var(--cyan-dim)}.log-item{display:block;width:100%;padding:9px 10px;margin-bottom:4px;border:1px solid rgba(80,160,190,.18);border-left:2px solid var(--border);background:linear-gradient(90deg,rgba(62,200,212,.045),transparent 58%),#00080e4d;color:inherit;cursor:pointer;font-size:.85em;font-family:inherit;text-align:left;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.log-item:hover,.log-item.selected{border-left-color:var(--cyan);border-color:#3ec8d46b;background:linear-gradient(90deg,rgba(62,200,212,.12),transparent 64%),#00121cb8;box-shadow:inset 0 0 18px #3ec8d409}.log-item.important{border-left-color:var(--amber)}.log-item .time{font-family:var(--font-mono);font-size:.7em;color:var(--text-dim);letter-spacing:.08em}.log-item.new:after{content:" NEW";color:var(--cyan);font-size:.65em}.characters{flex:1 1 auto;min-height:0;overflow-y:auto;padding:8px}.char-row{display:flex;gap:8px;align-items:center;padding:7px 8px;margin-bottom:4px;border:1px solid rgba(80,160,190,.14);background:#000a1252;font-size:.8em}.char-row img{width:36px;height:36px;object-fit:cover;border:1px solid var(--border);border-radius:2px}.game-footer{display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-top:1px solid var(--border);font-family:var(--font-mono);font-size:.75em;color:var(--text-dim);background:var(--bg-panel-2)}.footer-debrief-hint{color:var(--cyan);max-width:min(520px,55vw);line-height:1.35}.footer-actions{display:flex;align-items:center;gap:8px}.btn{padding:6px 14px;font-family:var(--font-mono);font-size:.85em;border:1px solid var(--border-bright);background:#3ec8d414;color:var(--cyan);cursor:pointer;transition:background .2s,color .2s}.btn:hover{background:#3ec8d42e;color:var(--white)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-primary{border-color:var(--cyan)}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:100}.modal{width:90%;max-width:720px;max-height:85%;background:var(--bg-panel);border:1px solid var(--border-bright);display:flex;flex-direction:column}.modal-header{padding:12px 16px;border-bottom:1px solid var(--border);font-family:var(--font-mono);color:var(--cyan);letter-spacing:.2em}.modal-body{flex:1;overflow:auto;padding:16px}.deduction-canvas{position:relative;height:320px;background:#060c10;border:1px solid var(--border)}.deduction-node{position:absolute;transform:translate(-50%,-50%);padding:8px 14px;border:1px solid var(--border-bright);background:var(--bg-panel-2);font-size:.8em;cursor:pointer;-webkit-user-select:none;user-select:none}.deduction-node.selected{border-color:var(--cyan);box-shadow:0 0 12px #3ec8d44d}.deduction-node.connected{border-color:var(--amber)}.deduction-hint{margin-top:12px;font-size:.85em;color:var(--text-dim)}.params-radar{width:140px;height:140px;margin:12px auto}.investigation-video-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:600;display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:#00040af0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.investigation-video-wrap{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:12px;width:min(92vw,calc(100vh * 16 / 9 * .92),900px);max-height:min(92vh,100%);margin:auto;padding:16px 18px 18px;border:1px solid rgba(100,180,220,.45);border-radius:6px;background:linear-gradient(165deg,#080e16fa,#04080efa);box-shadow:0 20px 48px #000000a6}.investigation-video-title{margin:0;font-size:.82rem;letter-spacing:.12em;color:#a0d2f0e6;text-transform:uppercase}.investigation-video{display:block;width:100%;min-height:min(52vh,420px);max-height:min(72vh,calc(100vh - 160px));background:#000;object-fit:contain;border:1px solid rgba(80,140,180,.35)}.investigation-video-note{margin:0;font-size:.82rem;line-height:1.45;color:#c8dcebd9}.investigation-video-continue{position:absolute;right:18px;bottom:18px;min-width:6rem;padding:8px 14px;opacity:.72;background:#000c14b8;border-color:#82d2f073;font-size:.78rem}.investigation-video-continue:hover,.investigation-video-continue:focus-visible{opacity:1}.investigation-evidence-backdrop{z-index:380}.investigation-evidence-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:min(94vw,900px);margin:auto;padding:16px}.investigation-evidence-title{margin:0;font-size:1rem;color:var(--cyan);letter-spacing:.08em}.investigation-evidence-img{width:100%;max-height:72vh;object-fit:contain;background:#000;border:1px solid var(--border-bright);box-shadow:0 0 32px #0009}.jukebox-panel{width:min(94vw,1040px);max-height:min(92vh,860px);display:flex;flex-direction:column;padding-bottom:4px;background:linear-gradient(180deg,#0a1c2af5,#01080efa),repeating-linear-gradient(90deg,rgba(120,220,255,.04) 0 1px,transparent 1px 18px)}.jukebox-content{display:grid;grid-template-columns:minmax(190px,260px) minmax(0,1fr);gap:18px;margin:18px 20px 0;min-height:0;flex:1 1 auto}.jukebox-main{min-width:0;min-height:0;display:flex;flex-direction:column}.jukebox-list{display:grid;gap:8px;flex:1 1 auto;min-height:220px;max-height:none;overflow:auto;margin:12px 0 0;padding:6px 10px 6px 6px;scrollbar-color:rgba(100,220,245,.5) rgba(0,18,26,.7);scrollbar-width:thin}.jukebox-transport__btn{min-height:40px;border:1px solid rgba(100,210,240,.34);background:#081c28d1;color:#d7f0fad1;font-family:var(--font-sans);font-size:1.08rem;line-height:1;cursor:pointer;transition:border-color .16s,background .16s,color .16s}.jukebox-transport__btn:hover,.jukebox-transport__btn:focus-visible{border-color:#64f0ffc2;background:#103040eb;color:#fff}.jukebox-transport__btn--main{color:var(--cyan);border-color:#64f0ff94;font-size:1.18rem}.jukebox-header-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.jukebox-status{padding:4px 10px;border:1px solid rgba(90,210,235,.28);color:#82e6f5db;font-family:var(--mono);font-size:.66rem;letter-spacing:.18em;background:#00202c94}.jukebox-now{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:18px 20px 0;padding:12px 14px;border:1px solid rgba(100,220,245,.24);background:linear-gradient(90deg,#00c8dc1f,#001e2d7a),#00080e99}.jukebox-now__label{color:var(--cyan);font-family:var(--mono);font-size:.72rem;letter-spacing:.2em}.jukebox-now__body{min-width:0;display:flex;flex-direction:column;gap:2px}.jukebox-now__title{min-width:0;overflow:hidden;color:#e7f7ff;text-overflow:ellipsis;white-space:nowrap}.jukebox-now__artist{font-size:.75rem;color:var(--text-dim);letter-spacing:.04em}.jukebox-now__meter{display:inline-flex;align-items:end;gap:3px;height:18px}.jukebox-now__meter i{display:block;width:3px;height:8px;background:#50e6f0ad;box-shadow:0 0 10px #50e6f061}.jukebox-now__meter i:nth-child(2){height:14px}.jukebox-now__meter i:nth-child(3){height:11px}.jukebox-now__meter i:nth-child(4){height:16px}.jukebox-scene-preview{min-width:0}.jukebox-scene-preview__frame{position:relative;aspect-ratio:1 / 1;overflow:hidden;border:1px solid rgba(100,220,245,.34);background:#00080ed1;box-shadow:inset 0 0 0 1px #b4f5ff14,0 0 24px #46d2f01a}.jukebox-scene-preview__frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.34)),repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 7px);pointer-events:none}.jukebox-scene-preview__frame img{width:100%;height:100%;object-fit:cover;display:block}.jukebox-scene-preview__meta{display:grid;gap:5px;margin-top:10px;padding:10px 12px;border-left:2px solid rgba(80,230,240,.72);background:#00142075}.jukebox-scene-preview__meta span{color:#82e6f5bf;font-family:var(--mono);font-size:.66rem;letter-spacing:.18em}.jukebox-scene-preview__meta strong{min-width:0;overflow:hidden;color:#e7f7ff;font-size:.9rem;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.jukebox-scene-preview__artist{color:var(--text-dim);font-family:var(--sans);font-size:.74rem;letter-spacing:.04em}.jukebox-transport{display:grid;grid-template-columns:1fr 1.18fr 1fr;gap:8px;margin-top:12px}.jukebox-main .jukebox-now{margin:0}.jukebox-track{display:grid;grid-template-columns:86px minmax(0,1fr) 64px;gap:10px;align-items:center;width:100%;padding:10px 12px;border:1px solid rgba(120,210,240,.32);border-radius:4px;background:linear-gradient(90deg,#05202ed1,#010e18d6);color:var(--text);text-align:left;cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s}.jukebox-track:hover:not(:disabled),.jukebox-track:focus-visible:not(:disabled){border-color:#64f0ffb8;background:#042a3ae6;box-shadow:inset 3px 0 #50e6f0cc,0 0 18px #50e6f01a;transform:translate(2px)}.jukebox-track.locked{cursor:default;opacity:.42;background:#020c149e}.jukebox-track.is-current{border-color:#64f0ffdb;box-shadow:inset 3px 0 #50e6f0f2,0 0 20px #50e6f024}.jukebox-track__id{color:var(--cyan);font-family:var(--mono);font-size:.78rem}.jukebox-track__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.jukebox-track__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jukebox-track__artist{font-size:.72rem;color:var(--text-dim);letter-spacing:.04em}.jukebox-track__state{justify-self:end;color:var(--text-dim);font-size:.75rem;letter-spacing:.08em}.jukebox-track.is-current .jukebox-track__state{color:var(--cyan)}.jukebox-footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin:16px 20px 0;padding:16px 0 18px;border-top:1px solid rgba(100,180,220,.18);background:linear-gradient(180deg,rgba(0,20,30,.18),transparent)}.jukebox-volume{display:flex;flex:1 1 320px;align-items:center;gap:12px;min-width:280px;color:var(--text-dim);font-family:var(--mono);font-size:.78rem}.jukebox-volume input{flex:1;min-width:120px;accent-color:var(--cyan);cursor:pointer}.jukebox-volume strong{min-width:42px;color:var(--cyan);font-weight:600;text-align:right}.jukebox-footer .dbh-action{min-width:112px;min-height:44px;margin-top:0;padding:12px 22px;text-align:center}.jukebox-footer .dbh-action--primary{min-width:128px}@media(max-width:640px){.jukebox-content{grid-template-columns:1fr;margin-inline:14px}.jukebox-scene-preview{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;align-items:start}.jukebox-scene-preview__meta{margin-top:0}.jukebox-transport{grid-column:1 / -1;margin-top:0}.jukebox-list{min-height:180px;max-height:none}.jukebox-footer{margin-inline:14px}.jukebox-volume{flex-basis:100%;min-width:0}.jukebox-footer .dbh-action{flex:1 1 120px}}.memo-box{flex-shrink:0;padding:8px 12px;margin:8px;border:1px solid var(--border);font-size:.8em;color:var(--text-dim);min-height:48px;max-height:28vh;overflow-y:auto}.dialogue-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;background:#000}.dialogue-text-dock{max-height:55%}.dialogue-box{border:none;background:transparent;padding:0;max-width:none}.dialogue-speaker{font-family:var(--font-mono);color:var(--cyan);margin-bottom:8px;font-size:.85em}.dialogue-text{line-height:1.8;font-size:1.05em}.briefing-screen{grid-row:1 / -1;padding:48px;overflow-y:auto;background:var(--bg-deep);font-size:1em;line-height:2}.briefing-screen h2{font-family:var(--font-mono);color:var(--cyan);margin-bottom:24px;letter-spacing:.2em}.scanlines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.12) 2px,rgba(0,0,0,.12) 4px);z-index:200;opacity:.4}@media(max-width:760px){.operation-guide-grid{grid-template-columns:1fr}}.compliance-backdrop{z-index:900;background:#00050ce6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.compliance-modal{width:min(92vw,560px);max-height:min(86vh,720px);padding:24px;gap:14px;overflow-y:auto;background:linear-gradient(180deg,#07121afa,#02080dfa);border-color:#5ad2e673;box-shadow:0 24px 64px #000000b8}.compliance-modal h2{margin:0;color:var(--cyan);letter-spacing:.08em}.compliance-modal p{margin:0;line-height:1.75;color:var(--text)}.compliance-kicker{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.18em;color:var(--text-dim)}.compliance-check{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);background:#000c128c;color:var(--text);line-height:1.55}.compliance-check input{margin-top:4px;accent-color:var(--cyan)}.compliance-links{display:flex;flex-wrap:wrap;gap:10px}.compliance-modal--legal{width:min(92vw,680px)}html.app--windowed{--game-launch-scale: .88}html.app--display-fullscreen{--game-launch-scale: 1}html:fullscreen,html:-webkit-full-screen,html:-ms-fullscreen{width:100%;height:100%;overflow:hidden}html:fullscreen body,html:-webkit-full-screen body,html:-ms-fullscreen body,html:fullscreen #app,html:-webkit-full-screen #app,html:-ms-fullscreen #app{width:100%;height:100%;margin:0;display:flex;align-items:center;justify-content:center}html.app--display-fullscreen #app{display:flex;align-items:center;justify-content:center}.fullscreen-prompt-backdrop{z-index:880}.fullscreen-prompt-modal{width:min(92vw,520px)}.fullscreen-prompt-note{font-size:.88rem;color:var(--text-dim);line-height:1.65}.fullscreen-prompt-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.app-error-toast{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:980;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;max-width:min(92vw,520px);padding:12px 14px 12px 16px;border:1px solid rgba(255,90,100,.62);border-left:4px solid rgba(255,64,74,.9);background:linear-gradient(90deg,#7800106b,#180408f5 54%),repeating-linear-gradient(90deg,rgba(255,90,100,.08),rgba(255,90,100,.08) 2px,transparent 2px,transparent 5px);color:#ffe7ea;box-shadow:0 16px 40px #00000080,0 0 22px #ff32461f;font-size:.86rem}.app-error-toast strong{color:#ff7884;letter-spacing:.12em}.app-error-toast button{width:28px;height:28px;border:1px solid rgba(255,255,255,.18);background:#ffffff14;color:inherit;cursor:pointer}.cloud-save-backdrop{z-index:880;background:#00050cd1;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.cloud-save-modal{width:min(92vw,560px);padding:24px;gap:14px;background:linear-gradient(180deg,#08141cfa,#02080dfa);border-color:#5ad2e673;box-shadow:0 24px 64px #000000b8}.cloud-save-modal h2,.cloud-save-modal p{margin:0}.cloud-save-modal h2{color:var(--cyan)}.cloud-save-modal p{line-height:1.7;color:var(--text)}.cloud-save-kicker{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.18em;color:var(--text-dim)}.cloud-save-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cloud-save-compare div{padding:12px;border:1px solid var(--border);background:#000c128c}.cloud-save-compare span{display:block;margin-bottom:6px;font-size:.74rem;color:var(--text-dim);letter-spacing:.08em}.cloud-save-compare strong{font-size:.9rem;color:var(--text)}.cloud-save-actions{display:flex;flex-wrap:wrap;gap:10px}.app-error-toast--info{border-color:#5ad2e68c;border-left-color:#5ad2e6e6;background:linear-gradient(90deg,#0030406b,#081016f5 54%),repeating-linear-gradient(90deg,rgba(90,210,230,.08),rgba(90,210,230,.08) 2px,transparent 2px,transparent 5px);color:#e8f8fc;box-shadow:0 16px 40px #00000080,0 0 22px #5ad2e61f}.app-error-toast--info strong{color:#7ad8ea}.update-notice-toast{position:fixed;left:50%;bottom:max(16px,env(safe-area-inset-bottom));z-index:970;transform:translate(-50%);display:grid;gap:8px;width:min(92vw,560px);padding:14px 16px;border:1px solid rgba(90,210,230,.45);border-left:4px solid rgba(90,210,230,.85);background:linear-gradient(180deg,#08141cfa,#02080dfa);color:var(--text);box-shadow:0 16px 40px #0000008c;font-size:.86rem}.update-notice-toast strong{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.16em;color:var(--cyan)}.update-notice-toast--maintenance{top:max(12px,env(safe-area-inset-top));bottom:auto;border-color:#ffc46073;border-left-color:#ffc460d9}.update-notice-toast--maintenance strong{color:#ffc460}.update-notice-actions{display:flex;flex-wrap:wrap;gap:8px}.maintenance-gate-backdrop{z-index:890;background:#00050cdb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.maintenance-gate-modal{width:min(92vw,560px);padding:24px;gap:14px}.maintenance-gate-note{font-size:.84rem;color:var(--text-dim);line-height:1.6}.browser-safari video.cover-image,.browser-safari .logo-title-video,.browser-safari .investigation-video{-webkit-transform:translateZ(0);transform:translateZ(0)}.dbh-theme{--dbh-accent: #6eb8ff;--dbh-accent-dim: rgba(110, 184, 255, .4);--dbh-line: rgba(255, 255, 255, .2)}.scene-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#000;transition:opacity .65s ease-in-out}.scene-layer--fade{background:#000}.scene-layer--b{z-index:2}.dbh-dialogue-dock{background:transparent!important;border:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;overflow:hidden}.dbh-dialogue{width:100%;padding:0 28px 8px;pointer-events:auto}.dbh-dialogue-frame{position:relative;padding:18px 24px 14px;background:linear-gradient(180deg,#080e1626,#080e16e0 35%,#05080cf5);border:none;box-shadow:inset 0 1px 0 var(--dbh-line),inset 2px 0 0 var(--dbh-accent-dim)}.dbh-dialogue-corner{position:absolute;width:12px;height:12px;border-color:var(--dbh-accent);border-style:solid;opacity:.7}.dbh-dialogue-corner--tl{top:0;left:0;border-width:2px 0 0 2px}.dbh-dialogue-corner--br{bottom:0;right:0;border-width:0 2px 2px 0}.dbh-dialogue-location{font-family:Roboto Condensed,sans-serif;font-size:.72em;letter-spacing:.28em;color:var(--dbh-accent);margin-bottom:12px;text-transform:uppercase}.dbh-dialogue-body{min-height:3.2em}.dbh-d-speaker{display:block;font-family:Roboto Condensed,sans-serif;font-size:.78em;font-weight:500;letter-spacing:.22em;color:#ffffff8c;margin-bottom:8px}.dbh-d-speaker--none{opacity:.25}.dbh-d-text{font-size:1.15em;line-height:1.85;color:#fff;font-weight:300;letter-spacing:.04em}.dbh-dialogue-hint{margin-top:14px;font-family:Roboto Condensed,sans-serif;font-size:.68em;letter-spacing:.35em;color:#ffffff59;text-align:right}.dbh-dialogue-action{margin-top:16px;text-align:center;pointer-events:auto}.dbh-menu-btn{clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);letter-spacing:.12em;font-family:Roboto Condensed,sans-serif}.dbh-phone-badge--incoming{position:absolute;top:54%;left:50%;transform:translate(-50%,-50%);z-index:25;display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 28px 16px;pointer-events:none;animation:dbh-phone-incoming 2s ease-in-out infinite}.dbh-phone-badge__frame{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(200,230,255,.55);box-shadow:inset 0 0 24px #50a0dc14,0 0 20px #3c8cc826;clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px)}.dbh-phone-badge--incoming .phone-label{position:relative;font-family:Roboto Condensed,sans-serif;font-size:15px;font-weight:500;letter-spacing:.35em;color:#f0f8fffa;text-shadow:0 0 12px rgba(120,200,255,.5)}.dbh-phone-badge--incoming .phone-label-sub{position:relative;font-family:Roboto Condensed,sans-serif;font-size:13px;letter-spacing:.28em;color:#b4dcf5eb;padding-bottom:2px;border-bottom:1px solid rgba(120,200,255,.45)}@keyframes dbh-phone-incoming{0%,to{opacity:1;filter:brightness(1)}50%{opacity:.82;filter:brightness(1.08)}}.narrative-shell.phone-mode .cover-image{filter:grayscale(.35) brightness(.55) contrast(1.05)}.dbh-theme.game-shell{border-color:#6eb8ff33}.dbh-theme .header-bar{background:linear-gradient(180deg,#0a121cfa,#05080cd9);border-bottom:1px solid var(--dbh-line);font-family:Roboto Condensed,sans-serif;letter-spacing:.08em}.dbh-theme .observer-bar{background:#080e16f2;border-bottom:1px solid var(--dbh-line)}.dbh-theme .playback-bar--observer{font-family:Roboto Condensed,sans-serif;letter-spacing:.12em;color:var(--dbh-accent);border-color:var(--dbh-line);background:#060c14bf}.dbh-theme .viewport-text-dock--speech{background:linear-gradient(180deg,transparent 0%,rgba(5,8,12,.92) 18%)!important}.dbh-theme .inv-speech-bubble__frame{font-family:Roboto Condensed,sans-serif}.dbh-theme .inv-speech-bubble .dbh-d-speaker{letter-spacing:.22em;color:#ffffff80}.dbh-theme .inv-speech-dock--protagonist .dbh-d-speaker--protagonist{color:#ffdcaad9}.dbh-theme .inv-speech-bubble__text{font-family:Roboto Condensed,sans-serif;font-size:1.08em;font-weight:300;letter-spacing:.05em;line-height:1.7}.dbh-theme .inv-speech-bubble__text.dbh-d-text--typing{cursor:pointer}.dbh-theme .inv-speech-bubble__hint{font-family:Roboto Condensed,sans-serif;letter-spacing:.28em}.dbh-theme .inv-speech-bubble__body .dbh-portrait{border:1px solid var(--dbh-line);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}.dbh-theme .panel{border-color:var(--dbh-line);background:#080e16eb;min-height:0;overflow:hidden}.dbh-theme .panel-right{overflow-x:hidden;overflow-y:hidden;scrollbar-gutter:stable}.dbh-theme .panel-title{font-family:Roboto Condensed,sans-serif;letter-spacing:.18em;color:var(--dbh-accent)}.dbh-theme .btn{font-family:Roboto Condensed,sans-serif;letter-spacing:.1em;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.dbh-theme .btn-primary{border-color:var(--dbh-accent-dim);background:linear-gradient(180deg,#6eb8ff38,#6eb8ff0f)}.dbh-theme .footer-bar{border-top:1px solid var(--dbh-line);background:#05080cf2;font-family:Roboto Condensed,sans-serif}.dbh-theme .text-dock,.dbh-theme .viewport-text-dock{border-top:1px solid var(--dbh-line);background:linear-gradient(180deg,transparent 0%,rgba(5,8,12,.94) 25%)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.dbh-theme .viewport-text-dock,.dbh-theme .viewport-text-dock .text-dock-body{pointer-events:none}.dbh-theme .viewport-text-dock .text-dock-body>*,.dbh-theme .viewport-text-dock .text-dock-footer,.dbh-theme .viewport-text-dock .text-dock-footer>*,.dbh-theme .viewport-text-dock .viewport-text-dock__stack>*,.dbh-theme .viewport-text-dock .viewport-text-dock__hint-row>*,.dbh-theme .viewport-text-dock .inv-speech-dock,.dbh-theme .viewport-text-dock .inv-speech-bubble,.dbh-theme .viewport-text-dock .viewport-text-dock__compact>*,.dbh-theme .viewport-text-dock button,.dbh-theme .viewport-text-dock a,.dbh-theme .viewport-text-dock input,.dbh-theme .viewport-text-dock select,.dbh-theme .viewport-text-dock pre,.dbh-theme .viewport-text-dock p{pointer-events:auto}.dbh-theme .viewport-top-dock{pointer-events:none}.dbh-theme .viewport-top-dock button,.dbh-theme .viewport-top-dock .spot-tab,.dbh-theme .viewport-top-dock .obs-tab,.dbh-theme .viewport-top-dock .btn,.dbh-theme .viewport-top-dock .viewport-top-dock__scroll-btn{pointer-events:auto}.investigation-hotspot-layer[data-active-spot=scrap_yard]:not(.scan-active) .investigation-hotspot.scrap-hover-only .dbh-marker,.investigation-hotspot-layer[data-active-spot=scrap_yard]:not(.scan-active) .investigation-hotspot.scrap-hover-only .hotspot-label{visibility:hidden;opacity:0;transform:scale(.55);pointer-events:none}.investigation-hotspot-layer[data-active-spot=scrap_yard]:not(.scan-active) .investigation-hotspot.scrap-hover-only:hover .dbh-marker,.investigation-hotspot-layer[data-active-spot=scrap_yard]:not(.scan-active) .investigation-hotspot.scrap-hover-only:hover .hotspot-label{visibility:visible;opacity:1;transform:scale(1)}.investigation-hotspot-layer.scan-active[data-active-spot=scrap_yard] .investigation-hotspot.scrap-hover-only:hover .dbh-marker,.investigation-hotspot-layer.scan-active[data-active-spot=scrap_yard] .investigation-hotspot.scrap-hover-only:hover .hotspot-label{visibility:visible;opacity:1;transform:scale(1)}.investigation-hotspot-layer[data-active-spot=scrap_yard] .investigation-hotspot[data-hotspot-id^=q_gate_],.investigation-hotspot-layer[data-active-spot=scrap_yard] .investigation-hotspot[data-hotspot-id^=q_zone_],.investigation-hotspot-layer[data-active-spot=scrap_yard] .investigation-hotspot[data-hotspot-id=q_scrap_pile],.investigation-hotspot-layer[data-active-spot=scrap_yard] .investigation-hotspot[data-spot-id=zone_gate]{display:none!important;pointer-events:none!important}.dbh-theme .dialogue-text-dock .dbh-dialogue-frame,.dbh-theme .dialogue-box{background:#080e16f0;border-left:2px solid var(--dbh-accent-dim)}.dbh-dialogue-choices{display:flex;flex-direction:column;gap:10px;margin-top:16px;pointer-events:auto}.opening-root{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.screen-start-menu.logo-video-only .text-dock,.screen-start-menu.logo-video-only .ui-dock--top{display:none!important}.logo-video-backdrop,.logo-video-backdrop .cover-image-layer{background:#000}.dbh-dialogue-meta{position:absolute;top:14px;right:20px;z-index:2;display:inline-flex;gap:12px;padding:4px 10px;font-family:Roboto Condensed,sans-serif;font-size:10px;letter-spacing:.12em;color:#a0c8e6bf;pointer-events:none}.dbh-dialogue-meta strong{color:#7ec8e8;font-weight:500}.dbh-story-choice{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;flex:1 1 0;min-width:min(100%,160px);width:auto;margin:0;padding:14px 16px 14px 12px;border:1px solid rgba(90,150,190,.35);background:linear-gradient(105deg,#06121ceb,#0a1c2ac7 48%,#040c14e0);color:#f8fcfff5;font-family:Roboto Condensed,Noto Sans JP,sans-serif;font-size:1.02em;font-weight:400;letter-spacing:.04em;line-height:1.4;text-align:left;cursor:pointer;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,0 4px 16px #00000059;transition:color .18s ease,border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease;clip-path:polygon(0 10px,10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px))}.dbh-story-choice:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:linear-gradient(180deg,#78c8ff33,#78c8ffd9);opacity:.65;transition:opacity .18s ease,width .18s ease}.dbh-choice-index{flex-shrink:0;min-width:1.8em;font-size:.78em;font-weight:500;letter-spacing:.14em;color:#78c8ffd9;font-variant-numeric:tabular-nums}.dbh-choice-body{display:flex;align-items:center;gap:12px;min-width:0}.dbh-choice-mark{flex-shrink:0;width:auto;height:auto;border:none;transform:none;font-size:.82em;line-height:1;color:#a0dcfff2;text-shadow:0 0 10px rgba(120,200,255,.35);transition:color .18s ease,text-shadow .18s ease,transform .18s ease}.dbh-choice-text-wrap{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.dbh-choice-text{flex:1;min-width:0}.dbh-story-choice--with-sub .dbh-choice-body{align-items:flex-start}.dbh-story-choice--with-sub{align-items:start}.dbh-choice-chevron{flex-shrink:0;width:10px;height:10px;border-top:2px solid rgba(180,210,240,.5);border-right:2px solid rgba(180,210,240,.5);transform:rotate(45deg) translate(-2px);opacity:.55;transition:opacity .18s ease,transform .18s ease,border-color .18s ease}.dbh-story-choice:hover,.dbh-story-choice:focus-visible{border-color:#8cd2ffbf;background:linear-gradient(105deg,#0e283ef5,#12344ee0,#081826f0);color:#fff;outline:none;transform:translateY(-3px);box-shadow:inset 0 1px #ffffff1a,0 8px 28px #00285073,0 0 24px #50a0dc26}.dbh-story-choice:hover:before,.dbh-story-choice:focus-visible:before{opacity:1;width:4px}.dbh-story-choice:hover .dbh-choice-mark,.dbh-story-choice:focus-visible .dbh-choice-mark{color:#fff;text-shadow:0 0 16px rgba(160,230,255,.75);transform:scale(1.12)}.dbh-story-choice:hover .dbh-choice-chevron,.dbh-story-choice:focus-visible .dbh-choice-chevron{opacity:1;border-color:#fff;transform:rotate(45deg) translate(2px,-2px)}.dbh-story-choice:active{transform:translateY(-1px) scale(.995)}.observer-whisper-banner{position:absolute;top:52px;left:50%;transform:translate(-50%);z-index:11;max-width:90%;padding:6px 16px;background:#14001ebf;border:1px solid rgba(200,120,255,.35);color:#dcb4fff2;font-size:12px;text-align:center;pointer-events:none}.story-llm-loading{margin-top:12px;font-size:12px;color:#96c8e6b3;animation:dbh-pulse 1.2s ease-in-out infinite}@keyframes dbh-pulse{0%,to{opacity:.5}50%{opacity:1}}.dbh-story-choices{display:flex;flex-direction:row;flex-wrap:wrap;align-items:stretch;gap:10px;margin-top:0;pointer-events:auto;width:100%;max-width:100%;overflow:visible}.dbh-story-choices>.dbh-choice-timer{flex:1 1 100%;width:100%}.dbh-story-choices.cols-2,.dbh-story-choices.cols-3{display:grid;gap:10px;flex-wrap:unset}.dbh-story-choices.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.dbh-story-choices.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.dbh-story-choices.cols-2>.dbh-story-choice,.dbh-story-choices.cols-3>.dbh-story-choice{flex:unset;width:100%;min-width:0;min-height:4.75rem}.dbh-story-choices.cols-2>.dbh-choice-timer,.dbh-story-choices.cols-3>.dbh-choice-timer{grid-column:1 / -1}@media(max-width:720px){.dbh-story-choices.cols-3{grid-template-columns:1fr}}.dbh-story-choices-wrap{padding:8px 18px 16px;pointer-events:auto!important;position:relative;z-index:10;flex-shrink:0;border-top:1px solid rgba(80,140,180,.28);background:linear-gradient(180deg,#00081059,#00000026)}.dbh-story-choices__head{margin:0 0 10px;padding-left:4px;font-family:Roboto Condensed,sans-serif;font-size:11px;letter-spacing:.42em;color:#82c8ffcc}.dbh-dialogue-dock--choosing{display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.dbh-dialogue-dock--choosing .dbh-dialogue{flex:0 1 auto;min-height:0;padding:0 12px 2px;overflow:hidden}.dbh-dialogue-dock--choosing .dbh-dialogue-frame{padding:8px 12px 6px}.dbh-dialogue-dock--choosing .dbh-dialogue-location{margin-bottom:4px;font-size:.65em}.dbh-dialogue-dock--choosing .dbh-dialogue-body--with-portrait{grid-template-columns:44px 1fr;gap:6px;align-items:start}.dbh-dialogue-dock--choosing .dbh-portrait{width:44px;height:44px}.dbh-dialogue-dock--choosing .dbh-portrait img{width:44px;height:44px;object-fit:cover}.dbh-dialogue-dock--choosing .dbh-d-speaker{margin-bottom:2px;font-size:.7em}.dbh-dialogue-dock--choosing .dbh-d-text{font-size:.92em;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.dbh-dialogue-dock--choosing .dbh-dialogue-hint{display:none}.dbh-dialogue-dock--choosing .dbh-dialogue-meta{top:8px;right:10px;font-size:9px;padding:2px 6px}.dbh-dialogue-dock--choosing .dbh-story-choices-wrap{padding:10px 14px 14px}.dbh-dialogue-dock--choosing .dbh-story-choice{padding:10px 12px 10px 8px;font-size:.88em;gap:8px}.dbh-dialogue-dock--choosing .dbh-choice-index{font-size:.76em}.dbh-dialogue-dock--choosing .dbh-choice-mark{font-size:.78em}.dbh-dialogue-dock--choosing .dbh-choice-timer{margin-bottom:2px;gap:6px}.dbh-dialogue-dock--choosing .dbh-choice-timer-ring{height:3px}.dbh-param-side-dock,.investigation-status-panel{position:absolute;top:clamp(52px,12vh,120px);right:clamp(8px,1.5vw,20px);bottom:auto;z-index:260;width:min(220px,28vw);height:auto;pointer-events:none}.investigation-status-panel{top:clamp(72px,14vh,140px);z-index:45}.dbh-param-panel{height:auto;display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:linear-gradient(165deg,#081622f0,#040a12f7);border:1px solid rgba(110,184,255,.45);box-shadow:0 12px 40px #000000a6;clip-path:polygon(0 10px,10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px))}.dbh-param-panel__title{margin:0;font-family:Roboto Condensed,sans-serif;font-size:13px;letter-spacing:.28em;color:#8cd2fff2}.dbh-param-panel__note{margin:0;font-size:11px;line-height:1.5;color:#b4d2e6b8}.dbh-param-meters--panel{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;margin:0;padding:0;border:none}.dbh-param-meters--panel .dbh-param-row{flex-direction:row;align-items:baseline;justify-content:space-between;gap:6px;font-size:11px;padding:2px 0}.dbh-param-meters--panel .dbh-param-label{width:auto;font-size:10px;letter-spacing:.04em;color:#c8dcebe0;white-space:nowrap}.dbh-param-meters--panel .dbh-param-track{display:none}.dbh-param-meters--panel .dbh-param-val{width:auto;align-self:auto;font-size:13px;font-weight:500;color:#fff;letter-spacing:.04em;font-variant-numeric:tabular-nums}.dbh-param-panel__extra{margin:2px 0 0;padding-top:6px;border-top:1px solid rgba(80,140,180,.25);display:grid;grid-template-columns:1fr 1fr;gap:4px 10px}.dbh-param-panel__extra div{display:flex;justify-content:space-between;gap:8px;font-size:11px}.dbh-param-panel__extra dt{color:#a0c8e6bf}.dbh-param-panel__extra dd{margin:0;color:#fff;font-variant-numeric:tabular-nums}.narrative-shell--choosing .text-dock{max-width:calc(100% - min(240px,30vw))}.scene-backdrop.lens-active .cover-image,.scene-backdrop.lens-active .scene-filter-investigate{transform:scale(2.2);transform-origin:var(--lens-x, 50%) var(--lens-y, 50%);transition:transform .35s ease-out}.investigation-hotspot-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;pointer-events:none}.investigation-hotspot{position:absolute;transform:translate(-50%,-50%);padding:0;border:none;background:transparent;cursor:crosshair;pointer-events:auto;z-index:10;min-width:48px;min-height:48px}.investigation-hotspot-hit{position:absolute;left:50%;top:50%;display:block;width:48px;height:48px;transform:translate(-50%,-50%);pointer-events:none}.investigation-hotspot:hover,.investigation-hotspot:has(.investigation-hotspot-hit:hover){z-index:30}.dbh-marker{position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;opacity:0;transform:scale(.55);transition:opacity .22s,transform .22s,filter .25s;pointer-events:none}.dbh-marker-bracket{position:absolute;width:10px;height:10px;border:2px solid rgba(100,220,255,.95);box-shadow:0 0 8px #3cb4ff66}.dbh-marker-bracket.tl{top:2px;left:2px;border-right:none;border-bottom:none}.dbh-marker-bracket.tr{top:2px;right:2px;border-left:none;border-bottom:none}.dbh-marker-bracket.bl{bottom:2px;left:2px;border-right:none;border-top:none}.dbh-marker-bracket.br{bottom:2px;right:2px;border-left:none;border-top:none}.dbh-marker-ring{position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:1px solid rgba(80,200,255,.35);transform:rotate(45deg);opacity:.7}.dbh-marker-core{position:absolute;top:10px;right:10px;bottom:10px;left:10px;display:flex;align-items:center;justify-content:center;background:#04101cd1;border:1px solid rgba(100,200,255,.45);clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%)}.dbh-marker-icon{width:18px;height:18px;color:#a0e6fff2}.dbh-marker-scanline{position:absolute;left:4px;right:4px;height:2px;top:50%;background:linear-gradient(90deg,transparent,rgba(120,220,255,.8),transparent);opacity:0;animation:marker-scanline 2.4s ease-in-out infinite}.dbh-marker-depth{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);display:flex;gap:3px}.dbh-depth-dot{width:4px;height:4px;border:1px solid rgba(120,200,255,.5);transform:rotate(45deg);background:transparent}.dbh-depth-dot.filled{background:#78dcffe6;box-shadow:0 0 6px #50c8ff99}.dbh-depth-dot.active{border-color:#dcb4fff2;animation:dbh-pulse 1s ease-in-out infinite}.marker-kind-scan .dbh-marker-bracket{border-color:#b478fff2}.marker-kind-scan .dbh-marker-core{border-color:#a064ff80}.marker-kind-window .dbh-marker-core{clip-path:none;border-radius:2px}.marker-kind-trace .dbh-marker-icon{color:#ffb478f2}.hotspot-label{position:absolute;left:50%;top:calc(50% + 26px);transform:translate(-50%);white-space:nowrap;font-family:Roboto Condensed,sans-serif;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#c8e6fff2;text-shadow:0 0 8px #000,0 0 16px rgba(40,120,200,.5);opacity:0;transition:opacity .2s;pointer-events:none;padding:2px 8px;border-bottom:1px solid rgba(80,180,255,.35)}.investigation-hotspot-layer:not(.scan-active) .investigation-hotspot:hover .dbh-marker,.investigation-hotspot-layer:not(.scan-active) .investigation-hotspot:hover .hotspot-label{visibility:visible;opacity:1;transform:scale(1)}.investigation-hotspot-layer:not(.scan-active) .investigation-hotspot:hover .dbh-marker-scanline{visibility:visible;opacity:.85}.investigation-hotspot-layer.scan-active .investigation-hotspot .dbh-marker{visibility:visible;opacity:.88;transform:scale(.92)}.investigation-hotspot-layer.scan-active .investigation-hotspot .hotspot-label{opacity:.82}.investigation-hotspot-layer.scan-active .investigation-hotspot.scan-only .dbh-marker{opacity:1;transform:scale(1.02);animation:marker-breathe 2s ease-in-out infinite}.investigation-hotspot-layer.scan-active .investigation-hotspot.scan-only .hotspot-label{opacity:1;color:#dcb4fffa;border-bottom-color:#b478ff99}.investigation-hotspot-layer.scan-active .investigation-hotspot:hover .dbh-marker{opacity:1;transform:scale(1)}.investigation-hotspot.viewed .dbh-marker-bracket{border-color:#dcb45af2;box-shadow:0 0 10px #dcb45059}.investigation-hotspot.viewed .dbh-marker-core{background:#201a0ae0;border-color:#dcb45abf}.investigation-hotspot.viewed .dbh-marker-icon{color:#ffdca0f2}.investigation-hotspot.viewed .hotspot-label{color:#ffdcb4f2;border-bottom-color:#dcb45a80}.investigation-hotspot-layer.scan-active .investigation-hotspot.viewed:not(.observe-saturated) .dbh-marker-bracket{border-color:#dcb45af2;box-shadow:0 0 10px #dcb45059}.investigation-hotspot-layer.scan-active .investigation-hotspot.viewed:not(.observe-saturated) .dbh-marker-core{background:#201a0ae0;border-color:#dcb45abf}.investigation-hotspot-layer.scan-active .investigation-hotspot.viewed:not(.observe-saturated) .dbh-marker-icon{color:#ffdca0f2}.investigation-hotspot-layer.scan-active .investigation-hotspot.observe-saturated .dbh-marker-bracket{border-color:#6e7882bf;box-shadow:none}.investigation-hotspot-layer.scan-active .investigation-hotspot.observe-saturated .dbh-marker-core{background:#121418e6;border-color:#646e7880}.investigation-hotspot.observe-saturated .dbh-marker{filter:grayscale(.85)}.investigation-hotspot-layer:not(.scan-active) .investigation-hotspot.observe-saturated:hover .dbh-marker{opacity:.45!important;transform:scale(.8)!important}.investigation-hotspot-layer.scan-active .investigation-hotspot.observe-saturated .dbh-marker{opacity:.38!important;transform:scale(.78)!important;animation:none!important}.investigation-hotspot-layer.scan-active .investigation-hotspot.observe-saturated .hotspot-label{opacity:.4;color:#8c96a0b3}.investigation-hotspot.observe-saturated{cursor:not-allowed}.investigation-hotspot.deep-complete:not(.observe-saturated) .dbh-marker-core{border-color:#78dcfff2;box-shadow:0 0 12px #50c8ff73}.hotspot-result-panel.saturated .hotspot-result-body{color:#b4bec8e6;font-style:italic}.btn-scan-terminal.scanning{color:var(--dbh-accent);box-shadow:inset 0 0 0 1px var(--dbh-accent),0 0 10px #50c8ff40}@keyframes marker-scanline{0%,to{top:18%;opacity:0}50%{top:78%;opacity:.9}}@keyframes marker-breathe{0%,to{filter:brightness(1)}50%{filter:brightness(1.25)}}.hotspot-result-panel.deep-unlock{border-color:#c8a05099;box-shadow:0 0 24px #c8a03c33}.hotspot-result-panel .deep-badge{font-size:.65em;letter-spacing:.2em;color:#dcb464f2;border:1px solid rgba(200,160,80,.5);padding:1px 6px;margin-left:6px}.obs-pressure-overlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:90;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(80,200,255,.03) 2px,rgba(80,200,255,.03) 4px);mix-blend-mode:screen;animation:obs-pressure-flicker 3s steps(2) infinite}.obs-pressure-glitch{position:fixed;top:48px;right:12%;z-index:91;pointer-events:none;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:#ff78b4bf;text-shadow:2px 0 rgba(80,200,255,.8);animation:glitch-text 1.5s infinite;opacity:.7}.game-shell[data-obs-pressure="3"] .viewport,.game-shell[data-obs-pressure="4"] .viewport{animation:obs-viewport-shake 4s ease-in-out infinite}.obs-watch-meter{color:#ffa0c8e6!important}@keyframes obs-pressure-flicker{0%,88%,to{opacity:.35}90%{opacity:.65}}@keyframes obs-viewport-shake{0%,96%,to{transform:translate(0)}97%{transform:translate(-1px,1px)}98%{transform:translate(1px,-1px)}}.scan-fx-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;overflow:hidden;perspective:1200px}.scan-fx-layer>*{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .35s ease}.scan-fx-layer.is-active>*{opacity:1}.scan-fx-layer:before,.scan-fx-layer:after{content:"";position:absolute;top:18px;right:18px;bottom:18px;left:18px;opacity:0;pointer-events:none;transition:opacity .35s ease}.scan-fx-layer.is-active:before,.scan-fx-layer.is-active:after{opacity:1}.scan-fx-layer:before{border:1px solid rgba(112,230,255,.18);border-radius:48%/8%;box-shadow:inset 0 0 48px #3cd2ff12,0 0 24px #3cd2ff14;transform:rotateX(1.8deg) scaleX(.985)}.scan-fx-layer:after{top:10%;right:7%;bottom:10%;left:7%;background:linear-gradient(90deg,transparent 0 17%,rgba(255,82,70,.28) 17.2% 17.6%,transparent 17.8% 82%,rgba(255,82,70,.2) 82.2% 82.6%,transparent 82.8%),radial-gradient(circle at 22% 34%,rgba(255,180,40,.2),transparent 5%),radial-gradient(circle at 72% 42%,rgba(40,230,255,.16),transparent 7%),radial-gradient(circle at 56% 72%,rgba(255,84,60,.18),transparent 6%);mix-blend-mode:screen;filter:blur(.2px);animation:scan-thermal-pulse 1.9s ease-in-out infinite}.scan-grid-overlay{background-image:linear-gradient(rgba(80,200,255,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(80,200,255,.075) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:28px 28px,28px 28px,112px 112px,112px 112px;animation:scan-grid-drift 4s linear infinite;mix-blend-mode:screen}.scan-noise-overlay{background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(80,200,255,.03) 2px,rgba(80,200,255,.03) 4px);animation:scan-noise-flicker .12s steps(2) infinite;opacity:.35!important}.scan-hud-ring{top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(90,220,255,.35);border-radius:2px;box-shadow:inset 0 0 40px #3cb4ff14,0 0 24px #3cb4ff1f;animation:scan-hud-pulse 1.8s ease-in-out infinite}.scan-hud-ring:before,.scan-hud-ring:after{content:"";position:absolute;width:18px;height:18px;border-color:#78e6ffbf;border-style:solid}.scan-hud-ring:before{top:-1px;left:-1px;border-width:2px 0 0 2px}.scan-hud-ring:after{bottom:-1px;right:-1px;border-width:0 2px 2px 0}.scan-sweep-overlay{background:linear-gradient(180deg,transparent 0%,rgba(80,200,255,.08) 42%,rgba(255,72,70,.18) 48%,rgba(255,190,50,.08) 50%,transparent 92%);animation:scan-sweep 1.6s ease-in-out infinite}.viewport.investigation-scanning .scene-filter-investigate{filter:saturate(1.18) hue-rotate(-10deg) brightness(1.08) contrast(1.1)}.viewport.investigation-scanning:after{content:"OBSERVATION SCAN";position:absolute;right:18px;top:18px;z-index:6;padding:5px 10px;border:1px solid rgba(120,230,255,.42);background:#000e18b8;color:#a0f5ffdb;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;pointer-events:none;text-shadow:0 0 8px rgba(80,220,255,.4)}.viewport.investigation-scanning .cctv-hud .rec{animation:playback-rec-blink .9s ease-in-out infinite}@keyframes scan-sweep{0%{transform:translateY(-100%);opacity:.25}50%{opacity:.85}to{transform:translateY(100%);opacity:.2}}@keyframes scan-grid-drift{0%{background-position:0 0}to{background-position:28px 28px}}@keyframes scan-noise-flicker{0%{opacity:.25}to{opacity:.4}}@keyframes scan-hud-pulse{0%,to{border-color:#5adcff47}50%{border-color:#78f0ff8c}}@keyframes scan-thermal-pulse{0%,to{opacity:.42;transform:translateZ(0)}50%{opacity:.72;transform:translate3d(1px,-1px,0)}}.btn-scan-terminal{margin-left:0;font-size:.72em;letter-spacing:.1em;color:var(--dbh-accent)!important;border:none!important;box-shadow:inset 0 0 0 1px var(--dbh-accent-dim)!important}@keyframes hotspot-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.7}}.hotspot-result-panel{position:absolute;left:50%;top:10%;bottom:auto;transform:translate(-50%);z-index:120;width:min(520px,92%);max-height:38vh;pointer-events:auto}.viewport .hotspot-result-panel{top:8%;z-index:120}.narrative-shell .hotspot-result-panel{z-index:280}.hotspot-result-inner{padding:16px 20px;background:linear-gradient(135deg,#001e30f5,#000812f0),repeating-linear-gradient(0deg,transparent,transparent 8px,rgba(110,220,255,.035) 8px,rgba(110,220,255,.035) 9px);border:1px solid rgba(100,200,240,.4);box-shadow:0 0 40px #3cb4dc26,inset 0 1px #78c8f033,inset 0 0 0 1px #ffffff08;clip-path:polygon(12px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 12px)}.hotspot-result-title{font-size:12px;letter-spacing:.12em;color:#7ec8e8;margin-bottom:8px}.hotspot-result-body{font-size:14px;line-height:1.6;margin:0 0 10px}.hotspot-result-meta{font-size:11px;color:#b4c8dcb3;margin:0 0 12px}.dbh-deduction-backdrop{background:#000000e0}.dbh-deduction-modal{width:min(920px,96vw);max-height:90vh;background:linear-gradient(165deg,#08121cfa,#04080efc),repeating-linear-gradient(90deg,transparent,transparent 35px,rgba(120,220,255,.035) 35px,rgba(120,220,255,.035) 36px);border:none;box-shadow:0 0 40px #3ca0dc26,inset 0 0 0 1px #5ab4dc59,inset 0 0 60px #00285033}.dbh-deduction-header{padding:20px 24px 12px;border-bottom:1px solid rgba(100,180,220,.2)}.dbh-deduction-tag{font-size:10px;letter-spacing:.2em;color:#78c8f0cc}.dbh-deduction-title{margin:6px 0 4px;font-size:1.35rem;font-weight:300;letter-spacing:.06em;color:#e8f4fc}.dbh-deduction-sub{margin:0;font-size:12px;color:#a0bed2bf}.dbh-deduction-progress{margin:8px 0 0;font-size:11px;color:#78c8ffd9;letter-spacing:.06em}.dbh-deduction-body{padding:16px 20px 20px}.dbh-deduction-canvas{position:relative;height:340px;background:radial-gradient(ellipse at 50% 50%,rgba(30,80,120,.12),transparent 70%),linear-gradient(rgba(80,180,230,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(80,180,230,.06) 1px,transparent 1px),repeating-linear-gradient(0deg,transparent,transparent 24px,rgba(60,120,160,.04) 24px,rgba(60,120,160,.04) 25px);background-size:auto,32px 32px,32px 32px,auto;border:none;box-shadow:inset 0 0 0 1px #50a0c840}.dbh-deduction-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.dbh-deduction-edge.connected{stroke:#78dcffd9;stroke-width:.55;filter:drop-shadow(0 0 3px rgba(100,200,255,.9));animation:ded-edge-glow 1.5s ease-in-out infinite}@keyframes ded-edge-glow{0%,to{stroke-opacity:.7}50%{stroke-opacity:1}}.dbh-deduction-node{position:absolute;transform:translate(-50%,-50%);min-width:100px;max-width:140px;padding:10px 12px;background:#001423e0;border:none;box-shadow:inset 0 0 0 1px #64b4dc66;color:#d0e8f8;font-size:11px;letter-spacing:.04em;cursor:pointer;transition:box-shadow .2s,transform .15s ease-out;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.dbh-deduction-node:hover,.dbh-deduction-node.hovered{box-shadow:inset 0 0 0 1px #a0dcffe6,0 0 20px #50b4ff4d;z-index:3}.dbh-deduction-node.selected{box-shadow:inset 0 0 0 1px #f0d060,0 0 22px #f0c85066;z-index:4}.dbh-deduction-node.connected{box-shadow:inset 0 0 0 1px #64dcc8a6}.dbh-deduction-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(80,140,180,.2)}.dbh-deduction-hint{margin:0;font-size:12px;color:#a0bed2cc}.dbh-deduction-stat strong{color:#7ec8e8}.dbh-dialogue-body--with-portrait{display:flex;gap:16px;align-items:flex-end}.dbh-portrait{flex-shrink:0;width:88px;height:110px;overflow:hidden;border:1px solid var(--dbh-accent-dim);background:#00081099;clip-path:polygon(8% 0,100% 0,100% 92%,92% 100%,0 100%,0 8%)}.dbh-portrait img{width:100%;height:100%;object-fit:cover;object-position:top center;transform-origin:center}.dbh-portrait--empty{opacity:.2;border-style:dashed}.dbh-d-speaker--ai{color:#9ad4ff}.dbh-d-speaker--observer{color:#d8a8ff}.dbh-d-speaker--system{color:#88a8b8}.dbh-d-speaker--human{color:#e8d4b8}.dbh-d-text--typing:after{content:none}.dbh-param-meters{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 14px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(80,140,180,.2);pointer-events:none}.dbh-param-row{display:flex;align-items:center;gap:6px;font-size:10px}.dbh-param-label{width:72px;flex-shrink:0;color:#a0c8e6bf}.dbh-param-track{flex:1;height:4px;background:#ffffff14}.dbh-param-fill{display:block;height:100%;transition:width .4s ease}.dbh-param-val{width:22px;text-align:right;font-family:var(--font-mono, monospace);color:#c8e6ffe6}.dbh-choice-timer{grid-column:1 / -1;display:flex;align-items:center;gap:10px;margin-bottom:4px}.dbh-choice-timer-ring{flex:1;height:4px;background:#ffffff1a;position:relative;overflow:hidden}.dbh-choice-timer-ring:after{content:"";position:absolute;left:0;top:0;height:100%;width:var(--timer-pct, 100%);background:linear-gradient(90deg,#c44a4a,#c9a227);transition:width .1s linear}.dbh-choice-timer-label{font-size:10px;letter-spacing:.15em;color:#ffb478e6}.dbh-chapter-interstitial{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#030508;animation:dbh-chapter-in .8s ease;overflow:hidden}.dbh-chapter-interstitial__bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;object-position:center;opacity:.78;filter:saturate(.9) brightness(.68)}.dbh-chapter-interstitial__scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:radial-gradient(ellipse 80% 65% at 50% 42%,#0818281f,#000000b8 70%),linear-gradient(180deg,#00000080,#00000059 42%,#0000009e);pointer-events:none}.dbh-chapter-interstitial__frame{position:relative;z-index:2;width:min(92vw,820px);min-height:min(58vh,520px);max-height:88vh;display:flex;align-items:center;justify-content:center;padding:clamp(28px,5vw,56px) clamp(24px,4vw,48px);box-sizing:border-box;background:linear-gradient(165deg,#0a1c2aeb,#040c14f5 48%,#06121cf0);border:1px solid rgba(110,184,255,.38);box-shadow:0 0 0 1px #000000a6 inset,0 24px 80px #000000bf,0 0 48px #3c8cc81f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);clip-path:polygon(0 12px,12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px))}.dbh-chapter-frame-corner{position:absolute;width:28px;height:28px;border-color:#8cd2ffbf;border-style:solid;pointer-events:none}.dbh-chapter-frame-corner--tl{top:10px;left:10px;border-width:2px 0 0 2px}.dbh-chapter-frame-corner--tr{top:10px;right:10px;border-width:2px 2px 0 0}.dbh-chapter-frame-corner--bl{bottom:10px;left:10px;border-width:0 0 2px 2px}.dbh-chapter-frame-corner--br{bottom:10px;right:10px;border-width:0 2px 2px 0}.dbh-chapter-inner{position:relative;z-index:1;width:100%;text-align:center;padding:8px 12px 4px}.dbh-chapter-act{font-size:12px;letter-spacing:.35em;color:#8cd2fff2;margin:0 0 16px;text-shadow:0 1px 8px rgba(0,0,0,.8)}.dbh-chapter-title{font-family:Roboto Condensed,sans-serif;font-size:clamp(2rem,6vw,3.5rem);font-weight:300;letter-spacing:.2em;color:#fff;margin:0 0 12px;text-shadow:0 2px 16px rgba(0,0,0,.85)}.dbh-chapter-sub{font-size:14px;letter-spacing:.12em;color:#d2e6f5eb;margin:0 0 28px;text-shadow:0 1px 10px rgba(0,0,0,.75)}.dbh-chapter-line{width:140px;height:2px;margin:0 auto 28px;background:linear-gradient(90deg,transparent,var(--dbh-accent),transparent);box-shadow:0 0 12px #6eb8ff59}.dbh-chapter-continue{min-width:200px;margin-top:4px}@keyframes dbh-chapter-in{0%{opacity:0}to{opacity:1}}.dbh-flowchart-modal{max-width:520px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.dbh-flowchart-body{overflow-y:auto;padding:12px 20px;flex:1}.dbh-flowchart-chapter h3{font-size:12px;letter-spacing:.12em;color:var(--dbh-accent);margin:12px 0 6px}.dbh-flowchart-chapter h3 span{display:block;font-size:10px;color:#a0bed299;font-weight:400}.dbh-flowchart-list{list-style:none;margin:0;padding:0}.dbh-flowchart-list li{padding:6px 10px;margin-bottom:4px;font-size:12px;border-left:2px solid rgba(80,100,120,.4);color:#8ca0b4b3}.dbh-flowchart-list li.visited{border-left-color:var(--dbh-accent);color:#dcf0fff2;background:#3c78b414}.dbh-flowchart-history{margin-top:16px;padding-top:12px;border-top:1px solid rgba(80,140,180,.2)}.dbh-flowchart-history h4{font-size:11px;margin:0 0 8px;color:#a0bed2cc}.dbh-flowchart-history ol{margin:0;padding-left:18px;font-size:11px;color:#c8dcf0d9}.game-shell.investigate-cinematic .game-main{grid-template-columns:1fr!important}.panel-center--cinematic{min-height:70vh}.cinematic-investigate-dock{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--border, rgba(80, 140, 180, .3));background:#040a12e6}.cinematic-investigate-hint{margin:0;font-size:12px;color:#a0c8e6bf}.scene-ken-burns .cover-image{animation:ken-burns 24s ease-in-out infinite alternate}@keyframes ken-burns{0%{transform:scale(1.02) translate(0)}to{transform:scale(1.08) translate(-1%,-.5%)}}.dbh-ending-card{padding:24px}.dbh-ending-epilogue{font-size:11px;letter-spacing:.3em;color:#c8a050e6}.dbh-ending-title{font-size:1.8rem;letter-spacing:.15em;color:#fff;margin:8px 0}.dbh-ending-sub{color:#b4d2e6cc;margin-bottom:20px}.dbh-ending-note{font-size:12px;line-height:1.5;color:#c8a050d9;border-left:2px solid rgba(200,160,80,.5);padding:8px 12px;margin:0 0 16px}.dbh-ending-line--redacted{color:#8c96a0bf;letter-spacing:.05em;-webkit-user-select:none;user-select:none}.interference-flash{z-index:4;pointer-events:none;animation:interference-flash-pulse 2.2s ease-in-out infinite;mix-blend-mode:screen}.interference-flash__img{object-fit:cover;width:100%;height:100%;opacity:.42;filter:contrast(1.15) saturate(.85)}.interference-flash--coexist .interference-flash__img{filter:contrast(1.1) saturate(1.05) hue-rotate(-8deg)}.interference-flash--audit .interference-flash__img{filter:contrast(1.2) saturate(.7) hue-rotate(12deg);opacity:.48}@keyframes interference-flash-pulse{0%,to{opacity:.35}50%{opacity:.72}}.log-detail-body--tampered{border-left:2px solid rgba(220,90,90,.65);padding-left:10px;color:#d2c8c3eb}.btn-seal-act1--armed{animation:seal-armed-pulse 1.6s ease-in-out infinite;border-color:#c8a050d9}@keyframes seal-armed-pulse{0%,to{box-shadow:0 0 #c8a05033}50%{box-shadow:0 0 12px 2px #c8a05073}}.btn-flowchart-open,.btn-header-flow{font-size:10px;letter-spacing:.1em;margin-right:8px}.dbh-flowchart-backdrop{background:#00040ceb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dbh-flowchart-modal--tree{max-width:min(98vw,1320px);width:98vw;max-height:min(92vh,900px);display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(165deg,#060e18fa,#02060cfc);border:1px solid rgba(80,160,200,.25);box-shadow:0 0 60px #2878b41f,inset 0 1px #78c8f014}.dbh-flowchart-header{position:relative;padding:20px 24px 12px;border-bottom:1px solid rgba(80,140,180,.15)}.dbh-flowchart-header-accent{position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#78dcffe6,#c8a05099)}.dbh-flowchart-header h2{font-size:18px;font-weight:300;letter-spacing:.08em;margin:4px 0 10px}.dbh-flowchart-pan-hint{color:#8caabe8c;font-size:.92em}.dbh-flowchart-main{display:flex;flex:1;min-height:0;min-width:0}.dbh-flowchart-viewport{position:relative;flex:1;min-width:0;min-height:280px;overflow:hidden;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background-color:#00060ea6;background-image:linear-gradient(90deg,rgba(60,120,160,.07) 1px,transparent 1px),linear-gradient(0deg,rgba(60,120,160,.07) 1px,transparent 1px);background-size:28px 28px;background-position:0 0}.dbh-flowchart-viewport.is-dragging{cursor:grabbing}.dbh-flowchart-canvas{display:flex;flex-direction:column;align-items:center;gap:0;transform-origin:0 0;padding:16px 24px 28px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}.dbh-flowchart-history-box{flex:0 0 min(280px,32vw);min-width:200px;max-width:300px;display:flex;flex-direction:column;min-height:0;margin:0;padding:12px 14px;border-left:1px solid rgba(80,140,180,.22);background:#040a12eb;box-shadow:inset 1px 0 #78c8f00f}.dbh-flowchart-history-title{flex-shrink:0;margin:0 0 10px;font-size:10px;letter-spacing:.16em;font-weight:500;color:#a0c8e6d9}.dbh-fc-history-chips{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:6px;padding-right:4px}.dbh-fc-history-chip{display:block;padding:6px 8px;font-size:10px;line-height:1.35;letter-spacing:.02em;color:#c8dcf0e6;background:#08121cf2;border:1px solid rgba(80,140,180,.28);border-left:2px solid rgba(100,200,255,.45);border-radius:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dbh-fc-history-chip:hover{border-color:#78c8f080;background:#0c1824fa}.dbh-flowchart-history-box .dbh-fc-history-empty{margin:0;padding:8px;font-size:10px;font-style:italic;color:#8ca0b48c;border:1px dashed rgba(80,120,160,.25);border-radius:2px}.dbh-flowchart-report-box{flex:0 0 200px;max-width:200px;padding:12px 14px;border-left:1px solid rgba(80,140,180,.22);background:#060c128c;display:flex;flex-direction:column;gap:10px}.dbh-flowchart-report-title{margin:0;font-size:.82rem;letter-spacing:.12em;color:#78c8e6e6;text-transform:uppercase}.dbh-flowchart-report-meta{margin:0;font-size:.72rem;line-height:1.45;color:#8caac8bf}.dbh-flowchart-report-compile{width:100%;font-size:.78rem;padding:10px 8px}.dbh-flowchart-report-list-label{margin:4px 0 0;font-size:.68rem;color:#8caac88c}.dbh-flowchart-report-list{display:flex;flex-direction:column;gap:6px;max-height:180px;overflow-y:auto}.dbh-flowchart-report-item{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid rgba(80,140,180,.25);background:#080e16cc;color:#b4dcf0e6;font-size:.74rem;cursor:pointer;text-align:left}.dbh-flowchart-report-item:hover,.dbh-flowchart-report-item.active{border-color:#64c8e68c;background:#0c1c28e6}.header-report-hint{font-size:.72rem;color:#78dcb4f2;margin-right:8px}.log-report-section{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding:10px 12px 8px}.log-report-section-title{font-size:.75rem;letter-spacing:.08em;color:#78c8e6d9;margin-bottom:8px}.log-report-list{display:flex;flex-direction:column;gap:6px;min-height:0;overflow-y:auto}.log-report-item{width:100%;text-align:left;padding:8px 10px;border:1px solid rgba(70,110,140,.3);background:#060c12b3;color:inherit;cursor:pointer}.log-report-item:hover,.log-report-item.selected{border-color:#64c8e680}.log-report-item-title{font-size:.8rem;font-weight:600}.log-report-item-meta{font-size:.68rem;color:#8caac8b3;margin-top:2px}.log-report-empty{margin:0;font-size:.72rem;color:#8caac88c;line-height:1.45}@media(max-width:760px){.dbh-flowchart-main{flex-direction:column}.dbh-flowchart-report-box{flex:0 0 auto;max-width:none;border-left:none;border-top:1px solid rgba(80,140,180,.22)}.dbh-flowchart-history-box{flex:0 0 auto;max-width:none;max-height:120px;border-left:none;border-top:1px solid rgba(80,140,180,.22)}.dbh-fc-history-chips{flex-direction:row;flex-wrap:wrap;max-height:88px}.dbh-fc-history-chip{flex:1 1 auto;max-width:100%}}.dbh-flowchart-tree-body{overflow-x:auto;overflow-y:auto;max-height:68vh;padding:12px 16px 20px}.dbh-flowchart-chapter-block{margin-bottom:28px}.dbh-fc-ch-title{margin:0 0 10px;padding-left:12px;border-left:2px solid rgba(120,200,240,.5)}.dbh-fc-ch-num{display:block;font-size:11px;letter-spacing:.2em;color:var(--dbh-accent)}.dbh-fc-ch-sub{display:block;font-size:10px;color:#a0bed28c;font-weight:400;margin-top:2px}.dbh-fc-svg-wrap{position:relative;border-radius:2px;overflow:hidden}.dbh-fc-svg-wrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(120,200,255,.04) 0%,transparent 30%,transparent 70%,rgba(120,200,255,.04) 100%);z-index:1}.dbh-flowchart-svg{width:100%;height:auto;min-height:280px;display:block}.dbh-fc-spine{stroke:#3c78a01f;stroke-width:.6}.dbh-fc-edge{stroke-width:.45;fill:none}.dbh-fc-edge.taken{stroke:#64d2ffe6;stroke-width:.55}.dbh-fc-edge.reachable{stroke:#c8a05080;stroke-dasharray:1.2 .8}.dbh-fc-edge.locked{stroke:#46505a33}.dbh-fc-edge-label{font-size:2px;fill:#b4d2e6bf;text-anchor:middle;letter-spacing:.05em}.dbh-fc-edge-label.taken{fill:#8cdcffd9}.dbh-fc-edge-label.locked{fill:#78645073}.dbh-fc-node-halo{fill:none;stroke:none}.dbh-fc-node.current .dbh-fc-node-halo{fill:#dca03c1f;stroke:#dcb46459;stroke-width:.2;animation:fc-node-pulse 2.4s ease-in-out infinite}@keyframes fc-node-pulse{0%,to{opacity:.7}50%{opacity:1}}.dbh-fc-node rect{stroke-width:.3;fill:#060e18eb}.dbh-fc-node-dot{fill:#78c8f0b3}.dbh-fc-node.visited rect{stroke:#64d2ffd9;fill:#0c2438e6}.dbh-fc-node.visited .dbh-fc-node-dot{fill:#78dcfff2}.dbh-fc-node.current rect{stroke:#e6be5af2;fill:#30200ceb}.dbh-fc-node.current .dbh-fc-node-dot{fill:#f0c864}.dbh-fc-node.locked rect{stroke:#46505a59;fill:#080a0ed9}.dbh-fc-node.locked .dbh-fc-node-dot{fill:#5a646e66}.dbh-fc-node-text{font-size:2.6px;fill:#e6f5fff2;font-weight:500}.dbh-fc-node.locked .dbh-fc-node-text{fill:#828c9673}.dbh-fc-lock{font-size:2.2px;opacity:.7}.dbh-fc-history-empty{color:#8ca0b480;font-style:italic}.fc-legend{margin-right:12px;font-size:10px}.fc-legend.visited{color:#78dcffe6}.fc-legend.current{color:#dcb464e6}.fc-legend.locked{color:#8c96a099}.narrative-hotspot-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.narrative-hotspot{pointer-events:auto}.narrative-hotspot .hotspot-label{opacity:0;transition:opacity .2s ease}.narrative-hotspot:hover .hotspot-label,.narrative-hotspot.observed .hotspot-label{opacity:1}.narrative-hotspot .dbh-marker{opacity:.45}.narrative-hotspot:hover .dbh-marker,.narrative-hotspot.observed .dbh-marker{opacity:1}.narrative-shell .hotspot-result-panel{z-index:280;top:8%}.hotspot-result-inner .dbh-action{pointer-events:auto;cursor:pointer}.dbh-fc-html-track{display:flex;flex-direction:column;align-items:center;gap:0;width:100%;min-width:min(100%,1100px);padding:12px 8px 20px;background:#00081073;border:1px solid rgba(60,120,160,.18);border-radius:2px;box-shadow:inset 0 0 40px #00142859}.dbh-fc-col-main{display:flex;flex-direction:column;align-items:center;width:100%;max-width:220px}.dbh-fc-vline{width:2px;min-width:2px;height:20px;flex-shrink:0;background:#465a6e59;margin:2px 0;box-shadow:0 0 1px #0006}.dbh-fc-vline.taken{background:linear-gradient(180deg,#64d2ffe6,#50a0c880);box-shadow:0 0 8px #50c8ff59}.dbh-fc-vline.reachable{background:#c8a05073}.dbh-fc-card{position:relative;width:100%;max-width:76px;min-width:0;padding:0;border:none;background:transparent}.dbh-fc-card-shape{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;padding:10px 6px 8px;border:1px solid rgba(80,140,180,.35);background:#060e18f0;clip-path:polygon(8% 0%,92% 0%,100% 50%,92% 100%,8% 100%,0% 50%);box-shadow:0 0 12px #00000080,inset 0 0 20px #28648c14}.dbh-fc-card-shape:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:1px solid rgba(100,200,255,.12);clip-path:polygon(10% 2%,90% 2%,98% 50%,90% 98%,10% 98%,2% 50%);pointer-events:none}.dbh-fc-card-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:#78c8f0bf;box-shadow:0 0 6px #50c8ff66}.dbh-fc-card-text{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;min-width:0;text-align:center}.dbh-fc-card-label{display:block;font-size:10px;line-height:1.25;letter-spacing:.04em;color:#e6f5fff2;word-break:keep-all;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dbh-fc-card-sub{display:block;font-size:8px;line-height:1.2;color:#a0bed28c}.dbh-fc-card-lock{position:absolute;top:2px;right:4px;font-size:8px;opacity:.55;z-index:2}.dbh-fc-card.visited .dbh-fc-card-shape{border-color:#64d2ffbf;box-shadow:0 0 14px #50c8ff40,inset 0 0 16px #3c8cc81f}.dbh-fc-card.visited .dbh-fc-card-dot{background:#78dcff;box-shadow:0 0 8px #64d2ffb3}.dbh-fc-card.current .dbh-fc-card-shape{border-color:#e6be5ae6;background:#281c08eb;box-shadow:0 0 20px #dcb45059,inset 0 0 12px #dca03c26}.dbh-fc-card.current .dbh-fc-card-dot{background:#f0c864}.dbh-fc-card.locked .dbh-fc-card-shape{opacity:.4}.dbh-fc-fan-wrap{width:100%;display:flex;flex-direction:column;align-items:center}.dbh-fc-hub{display:flex;justify-content:center;width:100%}.dbh-fc-fan{display:grid;grid-template-columns:repeat(5,minmax(68px,1fr));gap:14px 10px;width:100%;max-width:100%;padding:14px 12px 10px;box-sizing:border-box}.dbh-fc-branch-col{display:flex;flex-direction:column;align-items:center;min-width:0;width:100%}.dbh-fc-branch-col.branch-locked{opacity:.35}.dbh-fc-branch-label{font-size:8px;letter-spacing:.04em;color:#b49664b3;text-align:center;margin-bottom:6px;line-height:1.35;max-width:100%;word-break:keep-all}.dbh-fc-branch-label.taken{color:#8cdcffd9}.dbh-fc-converge{display:flex;flex-direction:column;align-items:center}.dbh-fc-row-wrap{width:100%;display:flex;flex-direction:column;align-items:center}.dbh-fc-row{display:grid;grid-template-columns:repeat(3,minmax(68px,1fr));gap:14px 10px;width:100%;max-width:420px;padding:12px 8px}.dbh-fc-row-cell{display:flex;flex-direction:column;align-items:center;min-width:0;width:100%}.dbh-flowchart-footer{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:12px 20px;border-top:1px solid rgba(80,140,180,.15)}.player-memo-backdrop{background:#00040cf0;z-index:200}.player-memo-modal{max-width:420px;width:92vw;max-height:80vh;display:flex;flex-direction:column;background:linear-gradient(165deg,#080c14fc,#04060cfc);border:1px solid rgba(80,120,160,.3)}.player-memo-header{padding:16px 18px 10px;border-bottom:1px solid rgba(80,120,160,.2)}.player-memo-header h2{font-size:17px;margin:4px 0;letter-spacing:.06em}.player-memo-sub{font-size:11px;color:#a0bed2a6;margin:0}.player-memo-body{flex:1;overflow-y:auto;padding:14px 16px;min-height:0}.player-memo-empty{font-size:12px;color:#a0bed2b3;line-height:1.6}.player-memo-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0;padding:0}.player-memo-section+.player-memo-section{margin-top:16px;padding-top:14px;border-top:1px solid rgba(80,120,160,.18)}.player-memo-section-title{margin:0 0 8px;color:var(--cyan);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.12em}.player-memo-item{padding:12px 14px;border:1px solid rgba(60,100,130,.35);background:#0a1018eb}.player-memo-tag{display:inline-block;font-size:10px;letter-spacing:.08em;color:var(--cyan);border:1px solid rgba(62,200,212,.35);padding:2px 8px;margin-bottom:8px}.player-memo-item-title{font-size:14px;font-weight:600;margin:0 0 6px;color:#dcebfaf2}.player-memo-figure{margin:0 0 10px;padding:0;border:1px solid rgba(60,100,130,.4);background:#060a10d9;line-height:0}.player-memo-evidence{display:block;width:100%;max-height:220px;object-fit:contain;object-position:center}.player-memo-item-body{font-size:12px;color:#a0bed2bf;margin:0;line-height:1.5}.player-memo-footer{padding:12px 16px;border-top:1px solid rgba(80,140,180,.15);display:flex;justify-content:flex-end}.game-footer .footer-actions .btn.active{border-color:var(--cyan);color:var(--cyan)}.game-footer .footer-actions{align-items:center}.game-footer .footer-actions .btn{margin:0;height:34px;min-height:34px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;font-size:.85em;letter-spacing:.1em;line-height:1;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.game-footer .footer-actions .btn.dbh-action,.game-footer .footer-actions .dbh-action{margin-top:0;padding:0 14px;font-size:.85em;letter-spacing:.1em;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.game-footer .footer-actions .operation-guide-chip{min-width:34px;padding:0 10px}.spot-progress-guide{position:absolute;left:16px;bottom:168px;z-index:40;max-width:min(420px,calc(100% - 32px));padding:14px 16px 12px;border:1px solid rgba(110,184,255,.45);background:linear-gradient(165deg,#060e18f0,#04080eeb);box-shadow:0 10px 28px #00000073;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);pointer-events:auto}.spot-progress-guide__tag{display:inline-block;margin-bottom:6px;font-family:Roboto Condensed,sans-serif;font-size:.68em;letter-spacing:.22em;color:var(--dbh-accent, #6eb8ff)}.spot-progress-guide__title{margin:0 0 6px;font-family:Roboto Condensed,sans-serif;font-size:1.02em;letter-spacing:.06em;color:#f2f7ff;font-weight:600}.spot-progress-guide__body{margin:0;font-size:.84em;line-height:1.55;color:#dce8f4e0}.spot-progress-guide__dismiss{margin-top:10px;height:28px;min-height:28px;padding:0 12px}.spot-tabs .spot-tab.locked{opacity:.72;cursor:pointer}.spot-tabs .spot-tab.locked:hover{opacity:.95;border-color:#6eb8ff8c}.angler-board-backdrop{background:#00040cf0;z-index:200}.angler-board-modal{max-width:520px;width:92vw;max-height:88vh;display:flex;flex-direction:column;background:linear-gradient(165deg,#080c14fc,#04060cfc);border:1px solid rgba(80,120,160,.3)}.angler-board-header{padding:16px 18px 10px;border-bottom:1px solid rgba(80,120,160,.2)}.angler-board-header h2{font-size:17px;margin:4px 0;letter-spacing:.06em}.angler-board-sub{font-size:11px;color:#a0bed2a6;margin:0}.angler-board-warn{font-size:10px;color:#c87864bf;margin:8px 0 0}.angler-board-body{flex:1;overflow-y:auto;padding:10px 12px;min-height:0}.angler-feed{display:flex;flex-direction:column;gap:10px}.angler-post-card,.angler-post-static{width:100%;text-align:left;padding:12px;border:1px solid rgba(60,80,100,.35);background:#0c1018e6;border-radius:4px;cursor:pointer;color:inherit;font:inherit}.angler-post-card:hover{border-color:#64b4dc80;background:#101824f2}.angler-post-card.read{opacity:.75}.angler-post-head{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:11px;margin-bottom:6px}.angler-author{font-weight:600;color:#dcebfaf2}.angler-handle{color:#78a0c8b3}.angler-time{margin-left:auto;color:#8ca0b480;font-size:10px}.angler-body{font-size:13px;line-height:1.55;margin:0 0 8px;color:#d2e1f0e6}.angler-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.angler-tag{font-size:9px;padding:2px 6px;border:1px solid rgba(80,140,180,.35);color:#8cc8e6cc}.angler-tag--warn{border-color:#c8645080;color:#f0a078e6}.angler-stats{display:flex;gap:14px;font-size:11px;color:#8caac8a6}.angler-reply-count{color:#64b4dcd9}.angler-thread-nav{margin-bottom:10px}.angler-thread-replies{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(60,80,100,.25)}.angler-reply{padding:10px;border-left:2px solid rgba(60,80,100,.4);background:#080c12cc}.angler-reply--anti{border-left-color:#c8505099}.angler-reply--defend{border-left-color:#50b48c80}.angler-reply--troll{border-left-color:#b478c866;opacity:.85}.angler-board-footer{padding:10px 14px;border-top:1px solid rgba(80,120,160,.2)}.btn-angler-board{margin-left:6px;font-size:.72em;border-color:#7850b473;color:#c8b4f0e6}.btn-angler-board:hover{border-color:#a078dcb3;background:#28183c66}.title-audio-hint{position:absolute;right:16px;bottom:16px;z-index:40;padding:8px 14px;font-size:11px;letter-spacing:.08em;color:#c8e6ffe6;background:#08101cd9;border:1px solid rgba(100,180,220,.45);border-radius:2px;cursor:pointer;animation:title-audio-hint-pulse 2s ease-in-out infinite}.title-audio-hint:hover{border-color:#8cdcffcc;background:#0c1c30f2}.game-mute-button{position:fixed;right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:1200;width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(178,220,255,.26);border-radius:999px;background:#0309106b;color:#dcf2ffbd;box-shadow:0 8px 24px #00000047;opacity:.42;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .14s ease,color .14s ease,border-color .14s ease,background .14s ease,transform .14s ease}.game-mute-button:hover,.game-mute-button:focus-visible{opacity:.9;color:#ecf9fff2;border-color:#b2dcff85;background:#08121fb8;transform:translateY(-1px)}.game-mute-button:focus-visible{outline:2px solid rgba(130,210,255,.7);outline-offset:3px}.game-mute-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.game-mute-button svg path:first-child{fill:currentColor;stroke:none;opacity:.9}.game-mute-button.is-muted{color:#e1ebf2b8;border-color:#b2dcff3d}@keyframes title-audio-hint-pulse{0%,to{opacity:.75}50%{opacity:1}}.btn-compile-report{margin-right:8px;padding:6px 12px;font-size:11px;letter-spacing:.06em;color:#0a1420;background:linear-gradient(180deg,#7ec8e8,#3a9ec4);border:1px solid rgba(120,220,255,.6);border-radius:2px;cursor:pointer;animation:compile-report-pulse 2.4s ease-in-out infinite}@keyframes compile-report-pulse{0%,to{box-shadow:0 0 #64c8ff00}50%{box-shadow:0 0 12px #64c8ff73}}.btn-seal-act1{border-color:#d8a8ff8c;color:#e8d4ff;margin-right:6px}.btn-seal-act1:hover{background:#783ca040}.dbh-ending-step{margin:0 0 8px;font-size:.75rem;letter-spacing:.12em;color:var(--dbh-text-dim, #7a9ab0);text-transform:uppercase}.report-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:#00060ee6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.investigation-branch-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:350;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:#00060ee0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.investigation-branch-modal{width:min(92vw,520px);margin:auto;padding:1.25rem 1.5rem 1.5rem;background:linear-gradient(165deg,#0a101afc,#060a12fc);border:1px solid rgba(100,180,220,.45)}.investigation-branch-modal--wide{width:min(96vw,780px)}.investigation-branch-lead{font-size:1.15rem;color:#c8e8f8;margin:0 0 .5rem}.investigation-branch-meta{font-size:.85rem;color:#a0c8e6bf;margin:0 0 1rem}.investigation-branch-choices{margin-top:.75rem;width:100%}.investigation-branch-choices.cols-1,.investigation-branch-choices.cols-2,.investigation-branch-choices.cols-3{display:grid;gap:10px;flex-wrap:unset}.investigation-branch-choices.cols-1{grid-template-columns:1fr}.investigation-branch-choices.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.investigation-branch-choices.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.investigation-branch-modal .dbh-story-choice{flex:unset;width:100%;min-width:0;min-height:5.25rem;align-items:start;align-content:start}.investigation-branch-modal .dbh-choice-text{line-height:1.35}@media(max-width:640px){.investigation-branch-choices.cols-3,.investigation-branch-choices.cols-2{grid-template-columns:1fr}.investigation-branch-modal--wide{width:min(96vw,520px)}}.dbh-choice-sub{font-size:.72em;line-height:1.35;color:#a0c8e6b8}.report-panel-modal{display:flex;flex-direction:column;width:min(92vw,560px);max-height:min(82vh,680px);margin:auto;padding:0;overflow:hidden;background:linear-gradient(165deg,#0a101afc,#060a12fc);border:1px solid rgba(100,180,220,.45);box-shadow:0 0 0 1px #3c78a026,0 16px 48px #000000a6,0 0 32px #50a0dc1f}.report-panel-header{flex-shrink:0;padding:18px 20px 10px;border-bottom:1px solid rgba(80,140,180,.25)}.report-panel-header h2{margin:0 0 6px;font-size:16px;letter-spacing:.06em;color:#e8f4fc}.report-panel-scroll{flex:1;min-height:0;overflow-y:auto;padding:14px 20px}.report-panel-meta{font-size:12px;color:#a0c8e6d9;margin:0}.report-panel-body{white-space:pre-wrap;font-family:inherit;font-size:13px;line-height:1.55;color:#dcebf5f2;background:#00000040;padding:12px;border:1px solid rgba(80,140,180,.35);margin:0 0 12px}.report-panel-note{font-size:11px;color:#8caac8bf}.report-panel-actions{flex-shrink:0;display:flex;gap:8px;justify-content:flex-end;padding:12px 20px 16px;border-top:1px solid rgba(80,140,180,.2)}.travel-choice-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}.travel-choice{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:12px 14px;background:#081420e6;border:1px solid rgba(80,150,200,.4);color:#c8e4f4;cursor:pointer;border-radius:2px}.travel-choice:hover:not(:disabled){border-color:#78c8ffb3;background:#0c2030f2}.travel-choice strong{font-size:13px}.travel-choice span{font-size:11px;opacity:.8;margin-top:4px}.travel-choice.locked{opacity:.45;cursor:not-allowed}.travel-choice.recommended{border-color:#ffc850bf;box-shadow:0 0 0 1px #ffc85033}.travel-recommended{display:inline-block;font-size:10px;font-style:normal;color:#ffd080;margin-bottom:4px;letter-spacing:.06em}.dbh-theme .log-list,.dbh-theme .log-detail-panel,.dbh-theme .characters,.dbh-theme .log-report-list{scrollbar-width:thin;scrollbar-color:rgba(120,160,190,.55) rgba(0,0,0,.35)}.dbh-theme .log-list::-webkit-scrollbar,.dbh-theme .log-detail-panel::-webkit-scrollbar,.dbh-theme .characters::-webkit-scrollbar,.dbh-theme .log-report-list::-webkit-scrollbar{width:10px}.dbh-theme .log-list::-webkit-scrollbar-track,.dbh-theme .log-detail-panel::-webkit-scrollbar-track,.dbh-theme .characters::-webkit-scrollbar-track,.dbh-theme .log-report-list::-webkit-scrollbar-track{background:#00000059}.dbh-theme .log-list::-webkit-scrollbar-thumb,.dbh-theme .log-detail-panel::-webkit-scrollbar-thumb,.dbh-theme .characters::-webkit-scrollbar-thumb,.dbh-theme .log-report-list::-webkit-scrollbar-thumb{border-radius:5px;background:#78a0be80;border:2px solid rgba(0,0,0,.35)}.narrative-shell .narrative-hotspot-layer.scan-active .narrative-hotspot.scan-only.scan-revealed .dbh-marker{filter:drop-shadow(0 0 8px rgba(160,100,255,.85))}.narrative-shell .ui-dock--top .btn-scan-terminal.scanning{border-color:#a064ffb3;color:#e8d4ff}.viewport--corkboard .scene-backdrop{pointer-events:none}.viewport--corkboard .viewport-text-dock{z-index:80;pointer-events:none}.viewport--corkboard .viewport-text-dock .inv-speech-dock,.viewport--corkboard .viewport-text-dock .viewport-text-dock__hint-row>*{pointer-events:auto}.viewport--corkboard .viewport-text-dock--speech{max-height:22%;min-height:92px;padding-bottom:2px}.corkboard-scene{position:absolute;top:36px;left:1.5%;right:1.5%;bottom:22%;z-index:60;display:grid;grid-template-columns:1fr min(260px,30%);grid-template-rows:auto minmax(0,1fr);gap:8px;pointer-events:auto;max-height:none}.corkboard-scene__progress{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:baseline;padding:8px 12px;background:#080c12e0;border:1px solid rgba(180,140,80,.35);pointer-events:auto}.corkboard-scene__title{font-size:13px;letter-spacing:.12em;color:#e8d4a8}.corkboard-scene__count{font-family:var(--font-mono, monospace);font-size:12px;color:#c9a227}.corkboard-board{position:relative;display:flex;align-items:stretch;justify-content:center;min-height:0;height:100%;width:100%;pointer-events:auto}.corkboard-board-inner{position:relative;line-height:0;flex-shrink:0;width:auto;height:auto;max-width:100%;max-height:100%;margin:0 auto;border:2px solid rgba(120,90,50,.55);box-shadow:inset 0 0 40px #00000080;overflow:visible}.corkboard-board__img{display:block;width:100%;height:100%;object-fit:contain;object-position:center center;pointer-events:none;-webkit-user-select:none;user-select:none}.corkboard-pins-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.corkboard-pins-layer .corkboard-pin-btn{pointer-events:auto}.corkboard-pin-btn{position:absolute;transform:translate(-50%,-50%) rotate(var(--pin-rot, 0deg));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0;border:none;background:transparent;cursor:pointer;pointer-events:auto;touch-action:manipulation;min-width:56px;min-height:56px}.corkboard-pin-btn__hit{position:absolute;left:50%;top:50%;width:56px;height:56px;transform:translate(-50%,-50%);border-radius:50%;pointer-events:auto}.corkboard-pin-btn__dot{position:relative;z-index:2;width:14px;height:14px;border-radius:50%;background:#c94a4a;box-shadow:0 0 0 3px #c94a4a59;transition:transform .15s,box-shadow .15s}.corkboard-pin-btn.checked .corkboard-pin-btn__dot{background:#c9a227;box-shadow:0 0 0 4px #c9a22773}.corkboard-pin-btn.selected .corkboard-pin-btn__label{border-color:#7ec8e8;color:#7ec8e8}.corkboard-pin-btn:hover .corkboard-pin-btn__dot{transform:scale(1.2)}.corkboard-pin-btn__label{position:relative;z-index:1;font-size:10px;padding:3px 7px;pointer-events:none;background:#080a0ee6;color:#e8d4a8;white-space:nowrap;max-width:148px;overflow:hidden;text-overflow:ellipsis;border:1px solid rgba(180,140,80,.45);box-shadow:0 2px 6px #00000073}.corkboard-detail{padding:12px 16px 12px 20px;background:#0a0e14eb;border:1px solid rgba(100,180,220,.35);overflow-y:auto;overflow-x:hidden;pointer-events:auto;isolation:isolate}.corkboard-detail h4{margin:0 0 8px;font-size:13px;color:#7ec8e8}.corkboard-detail p{margin:0 0 8px;font-size:12px;line-height:1.5;color:#dce6f0eb}.corkboard-detail__hint{font-size:11px;color:#c9a227!important}.shed-enter-cta,.shed-keypad-cta{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:18;min-width:160px;padding:14px 28px;font-size:1.05rem;letter-spacing:.12em;pointer-events:auto;box-shadow:0 0 24px #000000a6,0 0 12px #3ec8d440}.shed-keypad-cta{top:auto;bottom:18%;min-width:180px;z-index:50}.shed-enter-cta:hover,.shed-keypad-cta:hover{box-shadow:0 0 28px #000000b3,0 0 16px #3ec8d473}.shed-keypad-modal{max-width:320px}.shed-keypad-display{font-family:var(--font-mono, monospace);font-size:1.6em;letter-spacing:.35em;text-align:center;padding:12px 16px;margin:10px 0 14px;border:1px solid rgba(100,180,220,.45);background:#050a10e6;color:var(--cyan, #3ec8d4)}.shed-keypad-feedback{margin:0 0 12px;padding:10px 12px;text-align:center;font-size:.95rem;line-height:1.5;color:#f0c8a8;border:1px solid rgba(220,140,80,.45);background:#180c08d9}.shed-keypad-feedback[hidden]{display:none}.shed-keypad-modal.has-keypad-feedback .shed-keypad-display{border-color:#dc8c5080}.investigation-input-kbd-hint,.shed-keypad-kbd-hint{margin:0 0 10px;font-size:.72rem;line-height:1.45;color:#a0bed2bf;text-align:center}.investigation-text-input{width:100%;box-sizing:border-box;margin:10px 0 14px;padding:10px 12px;font-family:var(--font-mono, monospace);font-size:1rem;letter-spacing:.08em;border:1px solid rgba(100,180,220,.45);background:#050a10e6;color:var(--cyan, #3ec8d4)}.investigation-text-input:focus{outline:1px solid rgba(100,200,230,.6);outline-offset:2px}.shed-keypad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}.shed-keypad-key{min-height:40px;font-family:var(--font-mono, monospace);font-size:1em;border:1px solid var(--border, #1a3340);background:#0a1218f2;color:var(--text, #c8dde6);cursor:pointer}.shed-keypad-key:hover{border-color:var(--cyan-dim, #1a7a85);color:var(--white, #e8f4f8)}.archive-inquiry-modal{width:min(92vw,420px);padding:1.25rem 1.35rem 1.1rem}.archive-inquiry-lead{margin:0 0 .75rem;font-size:.95rem;color:#c8e8f8}.archive-inquiry-display{width:100%;box-sizing:border-box;margin-bottom:.65rem;padding:.65rem .75rem;font-family:Roboto Condensed,Noto Sans JP,monospace;font-size:1.05rem;letter-spacing:.08em;color:#e8f4ff;background:#000c18d9;border:1px solid rgba(90,160,200,.45)}.archive-inquiry-feedback{min-height:1.2em;margin:0 0 .65rem;font-size:.85rem;color:#ffb080}.archive-inquiry-feedback[hidden]{display:none}.archive-inquiry-actions{display:flex;gap:.65rem;justify-content:flex-end}.archive-inquiry-cta{position:absolute;left:50%;bottom:clamp(88px,14vh,140px);transform:translate(-50%);z-index:48;pointer-events:auto}.shed-keypad-cancel{width:100%}.psychology-archive-backdrop{z-index:56}.psychology-archive-modal{width:min(92vw,720px);max-height:min(88vh,820px);display:flex;flex-direction:column;gap:.75rem;padding:clamp(12px,2vw,20px)}.psychology-archive-head{flex-shrink:0}.psychology-archive-lead{margin:0;font-size:.95rem;font-weight:600;color:var(--dbh-text-bright, #e8ecf4)}.psychology-archive-sub{margin:.35rem 0 0;font-size:.8rem;opacity:.85}.psychology-archive-origin{flex-shrink:0;font-size:.82rem;border:1px solid rgba(255,120,120,.25);border-radius:4px;padding:.35rem .6rem;background:#00000040}.psychology-archive-origin__body{margin:.5rem 0 0;line-height:1.45;white-space:pre-wrap}.psychology-archive-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1 1 auto;min-height:120px;max-height:42vh;display:flex;flex-direction:column;gap:.35rem}.psychology-archive-doc{width:100%;text-align:left;padding:.5rem .65rem;border:1px solid rgba(180,200,255,.2);border-radius:4px;background:#0a0e1ca6;color:inherit;cursor:pointer;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:.15rem .65rem}.psychology-archive-doc:hover{border-color:#ff8c8c73}.psychology-archive-doc.is-read{opacity:.72}.psychology-archive-doc__id{font-family:var(--dbh-mono, monospace);font-size:.75rem;color:#f0a0a0;grid-row:1 / 3;align-self:center}.psychology-archive-doc__title{font-weight:600;font-size:.88rem}.psychology-archive-doc__theory{font-size:.72rem;opacity:.75}.psychology-archive-doc__badge{grid-column:2;justify-self:end;font-size:.65rem;color:#8ab4ff}.psychology-archive-reader{flex:1 1 auto;overflow-y:auto;min-height:200px;max-height:52vh;border:1px solid rgba(255,255,255,.12);border-radius:4px;padding:.75rem;background:#00000059}.psychology-archive-text{margin:0;font-family:var(--dbh-mono, "Consolas", monospace);font-size:.78rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.psychology-archive-loading{margin:0;opacity:.7}.psychology-archive-actions{flex-shrink:0;display:flex;justify-content:flex-end;gap:.5rem}.psychology-archive-cta{bottom:clamp(140px,18vh,200px)}.ui-tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12000;pointer-events:auto}.ui-tutorial-overlay--target-click{pointer-events:none}.ui-tutorial-dim{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:auto}.ui-tutorial-overlay--target-click .ui-tutorial-dim{pointer-events:none}.ui-tutorial-hole{position:fixed;z-index:12001;border-radius:6px;box-shadow:0 0 0 9999px #02080cb8,0 0 0 2px #3ec8d4f2,0 0 24px #3ec8d459;pointer-events:none}.ui-tutorial-card{position:fixed;z-index:12002;max-width:min(420px,calc(100vw - 24px));padding:16px 36px 16px 18px;background:linear-gradient(145deg,#08141cf7,#040c12fa);border:1px solid rgba(62,200,212,.45);box-shadow:0 12px 40px #0000008c;pointer-events:auto}.ui-tutorial-card--center{max-width:min(480px,92vw)}.ui-tutorial-close{position:absolute;top:8px;right:8px;width:32px;height:32px;padding:0;border:1px solid rgba(255,255,255,.25);border-radius:4px;background:#00000059;color:#c8dde6;font-size:1.1rem;line-height:1;cursor:pointer}.ui-tutorial-close:hover{border-color:#3ec8d499;color:#fff;background:#3ec8d426}.ui-tutorial-kicker{font-size:.7rem;letter-spacing:.12em;color:var(--cyan, #3ec8d4);margin-bottom:6px}.ui-tutorial-title{font-family:Roboto Condensed,sans-serif;font-size:1.05rem;font-weight:500;color:var(--white, #e8f4f8);margin-bottom:8px}.ui-tutorial-body{font-size:.92rem;line-height:1.55;color:var(--text, #c8dde6);margin-bottom:14px}.ui-tutorial-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.ui-tutorial-wait{font-size:.85rem;color:var(--amber, #c9a227);letter-spacing:.04em}.ui-tutorial-body--warn{color:#ffb478f2;font-size:.85rem;margin-top:-6px}.ui-tutorial-target--pulse{position:relative;z-index:12003!important;pointer-events:auto!important;animation:ui-tutorial-pulse 1.4s ease-in-out infinite}.ui-tutorial-target--pulse *{position:relative;z-index:12004;pointer-events:auto!important}.dbh-story-choices-wrap.ui-tutorial-target--pulse{outline:2px solid rgba(62,200,212,.95);outline-offset:4px;box-shadow:0 0 0 4px #3ec8d440,0 0 28px #3ec8d48c;background:linear-gradient(180deg,#001824eb,#000c14e0)!important}.dbh-story-choices-wrap.ui-tutorial-target--pulse .dbh-story-choice{border-color:#3ec8d48c;opacity:1}@keyframes ui-tutorial-pulse{0%,to{filter:drop-shadow(0 0 6px rgba(62,200,212,.5))}50%{filter:drop-shadow(0 0 14px rgba(62,200,212,.95))}}.game-footer .footer-debrief-hint.footer-tutorial-hint{color:var(--cyan, #3ec8d4)}.demo-finale-root{position:relative;width:100%;height:100%;min-height:100vh;background:#000}.demo-finale-shell{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.demo-finale{position:absolute;top:0;right:0;bottom:0;left:0}.demo-finale--glitch .demo-finale__flash-bg{position:absolute;top:-8%;right:-8%;bottom:-8%;left:-8%;background-size:cover;background-position:center;filter:saturate(1.2) contrast(1.1);animation:demo-finale-flash .35s steps(2) infinite}.demo-finale__noise{position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;mix-blend-mode:screen;pointer-events:none;transition:opacity .4s ease}.demo-finale__scan{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.15) 2px,rgba(0,0,0,.15) 4px);pointer-events:none;animation:demo-finale-scan .08s linear infinite}.demo-finale__text{position:relative;z-index:3;max-width:min(720px,92vw);margin:auto;padding:24px;text-align:center;color:#e8f4ff;text-shadow:0 0 24px rgba(0,0,0,.9)}.demo-finale__text--card{background:#080c14d1;border:1px solid rgba(110,184,255,.35);border-radius:4px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:left}.demo-finale__record-label{font-family:Roboto Condensed,sans-serif;font-size:.72em;letter-spacing:.28em;color:var(--dbh-accent, #6eb8ff);margin:0 0 4px}.demo-finale__record-step{font-size:.75rem;opacity:.45;margin:0 0 14px;letter-spacing:.12em}.demo-finale__line-body{display:flex;gap:16px;align-items:flex-start;margin-bottom:8px}.demo-finale__portrait{flex-shrink:0}.demo-finale__line-copy{min-width:0;flex:1}.demo-finale__speaker{margin:0 0 8px;font-family:Roboto Condensed,sans-serif;font-size:.78em;letter-spacing:.22em;color:#ffffff8c}.demo-finale__line-text{margin:0;font-size:1.05rem;line-height:1.85;color:#fff;font-weight:300;white-space:pre-line}.demo-finale__kicker{font-size:.75rem;letter-spacing:.2em;color:var(--dbh-accent, #6eb8ff);margin-bottom:12px}.demo-finale__lead{font-size:1rem;line-height:1.7;margin:0 0 8px}.demo-finale__frame{font-size:.8rem;opacity:.55;margin-top:16px}.demo-finale__skip-hint{font-size:.75rem;opacity:.45;margin-top:10px;letter-spacing:.08em}.demo-finale--line{display:flex;align-items:flex-end;justify-content:center;padding:32px 16px 48px;background:radial-gradient(ellipse at center bottom,#14283c80,#000 70%)}.demo-finale__advance{margin-top:20px;width:100%}.demo-finale--blackout{background:#000;display:flex;align-items:center;justify-content:center}.demo-finale__blackout-core{text-align:center;color:#ffffff59;padding:32px;animation:demo-finale-fade-in 2s ease forwards}.demo-finale__blackout-core p{font-size:1.05rem;line-height:1.8;margin-bottom:24px}.demo-finale--cta{display:flex;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(ellipse at center,#1e325066,#050508 75%);overflow-y:auto}.demo-finale__cta-card{max-width:560px;padding:28px 24px 32px;background:#0a0e16eb;border:1px solid rgba(110,184,255,.3);border-radius:6px;color:#dce8f5}.demo-finale__cta-card h2{font-size:1.15rem;font-weight:600;line-height:1.6;margin:0 0 16px}.demo-finale__cta-card>p{line-height:1.75;margin:0 0 16px;font-size:.95rem}.demo-finale__cta-list{list-style:none;padding:0;margin:0 0 20px;font-size:.95rem}.demo-finale__cta-list li{padding:6px 0}.demo-finale__cta-list s{opacity:.5}.demo-finale__cta-actions{display:flex;flex-direction:column;gap:10px}.demo-finale__cta-actions .dbh-action{text-align:center;text-decoration:none}.demo-finale__cta-note{margin-top:16px!important;font-size:.78rem!important;opacity:.55}@keyframes demo-finale-flash{0%,to{transform:scale(1.02) translate(0)}50%{transform:scale(1.05) translate(-2%,1%)}}@keyframes demo-finale-scan{0%{transform:translateY(0)}to{transform:translateY(4px)}}@keyframes demo-finale-fade-in{0%{opacity:0}to{opacity:1}}.app--demo .demo-banner{position:fixed;top:8px;right:8px;z-index:9999;padding:4px 10px;font-size:.7rem;letter-spacing:.15em;background:#6eb8ff33;border:1px solid rgba(110,184,255,.5);color:#6eb8ff;border-radius:3px;pointer-events:none}
