/* One viewport is the stage; only opened documents scroll. */
body.game-started{overflow:hidden}body.game-started>.topbar{display:none}#game.game-shell{position:fixed;inset:0;max-width:none;width:100%;height:100vh;height:100dvh;margin:0;padding:0;overflow:hidden;--dock-height:0px;--hud-top:max(14px,env(safe-area-inset-top))}#game .game-grid,#game .story-panel{display:contents}#game .scene{position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none;background:#def3ed}#game #world-stage{inset:80px 0 calc(var(--dock-height) + 14px);transition:transform 190ms,transform-origin 190ms,background .5s}#game .story-nav{position:absolute;top:var(--hud-top);left:16px;right:16px;z-index:22;padding:0;border:0;display:block;pointer-events:none}#game .chapters{pointer-events:auto;width:max-content;padding:8px 12px;background:#ffffffdc;border:1px solid #b9d9cf;border-radius:14px;max-width:46%;overflow:hidden}#game .chapters>div:not(.active){display:none}#game .chapters .active{font-size:11px}#game .nav-actions{display:none;pointer-events:auto;position:absolute;top:52px;right:0;background:#fffffff2;border:1px solid #bdd9d0;border-radius:14px;padding:12px;max-width:320px;flex-wrap:wrap;box-shadow:0 8px 30px #264c5820}#game .menu-expanded .nav-actions{display:flex}#game .nav-actions button{font-size:12px;min-height:44px}#game .immersive-tools{position:absolute;right:16px;top:var(--hud-top);z-index:24;display:flex;gap:5px}#game .immersive-tools button{min-height:40px;padding:6px 10px;font-size:11px;border-radius:12px;background:#ffffffdb;border:1px solid #b9d9cf;color:#355b66;box-shadow:none}#game .scene-top{top:calc(var(--hud-top) + 52px);left:16px;right:auto;gap:8px}#game .scene-top>span:first-child{font-size:15px}#game .scene-top>span:last-child{font-size:10px}#game .shot-controls{top:calc(var(--hud-top) + 53px);right:16px;left:auto;max-width:50%}#game .shot-controls button{font-size:10px;padding:6px 8px;min-height:32px}#game .shot-controls>span{display:none}#game .scene-bottom,#game .flow-ribbon,#game .game-footer,#game .state-drawer{display:none}#game .scene-action{top:24%;font-size:12px;padding:10px 13px}#game .computer-shortcut{bottom:calc(var(--dock-height) + 18px);font-size:12px}#game .shot-playback{bottom:20%;left:16%;right:16%;padding:14px}#game .shot-playback p{font-size:16px;color:#446c63}#game .shot-playback>span{font-size:10px}#game .thought-bubble{font-size:12px;color:#466f65}#game .cinema-dock{position:absolute;z-index:16;bottom:0;left:0;right:0;width:min(100%,1080px);margin:auto;display:grid;grid-template-columns:1fr;gap:8px;padding:12px 18px max(14px,env(safe-area-inset-bottom));background:linear-gradient(0deg,#eaf7f1 90%,#eaf7f100);border-radius:24px 24px 0 0}#game .cinema-dock.dialogue-locked{visibility:hidden;pointer-events:none}#game .cinema-dock.dock-collapsed{transform:translateY(calc(100% + 15px));pointer-events:none}#game .dialogue{padding:14px 18px;margin:0;border:1px solid #aacfc1;border-radius:18px;background:#fffffff2;box-shadow:0 4px 0 #b8d9cb44;min-height:0}#game .dialogue:before{display:none}#game .avatar{width:36px;height:36px;flex:0 0 36px;border-radius:12px}#game .speaker{gap:9px}#game .speaker b{font-size:13px;color:#315e63}#game .speaker small{font-size:10px;color:#6c8d8e}#game #beat-label{font-size:9px}#game .dialogue h2{font-size:18px;line-height:1.3;margin:8px 0 6px;font-weight:700}#game .story-text{font-size:16px;line-height:1.7;color:#345862;min-height:2.9em}#game .feedback{font-size:11px;line-height:1.5;margin:6px 0 0;padding:5px 8px;max-height:3.6em;overflow:auto}#game .dialogue-navigation{display:flex;align-items:center;gap:8px;padding:0 4px}#game .dialogue-navigation button{min-height:36px;border:1px solid #adcfc1;background:#fff;color:#355f62;font-size:12px;border-radius:10px;padding:6px 12px;box-shadow:none}#game #dialogue-next{margin-left:auto}#game #dialogue-counter{font-size:10px;color:#688b83}#game #investigate-open{display:none}#game .cinema-dock .workspace{border:0;background:none;box-shadow:none;margin:0;border-radius:0}#game .cinema-dock .window-bar,#game #workspace-gate{display:none!important}#game .cinema-dock #workspace-content{padding:0}#game .cinema-dock .choice-label{font-size:10px;margin:0 0 6px;color:#648c7f}#game .cinema-dock .choice-stack{gap:6px}#game .cinema-dock .choice{min-height:44px;padding:9px 12px;border:1px solid #a6cbbd;border-radius:11px;font-size:13px;line-height:1.35;color:#2f5d5e;box-shadow:0 2px 0 #c1dccd}#game .cinema-dock .choice .num{width:24px;height:24px;font-size:11px}#game .stage-prompt{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:18;text-align:center;max-width:90%;width:max-content}#game .stage-prompt small{display:block;color:#446f65;font-size:12px;margin-bottom:6px}#game #stage-cta{min-height:48px;border:2px solid #3f776a;border-radius:15px;background:#f5d66c;color:#284f53;padding:10px 24px;font-size:15px;font-weight:700;box-shadow:0 5px 0 #96bbae;animation:cta-bounce 1.7s ease-in-out infinite}.investigation-sheet{width:min(850px,calc(100% - 24px));max-height:86dvh;padding:0;background:#f8fcf8;border:1px solid #a8cdbf;border-radius:22px;overflow:auto;color:#355f65}.investigation-sheet::backdrop{background:#254b5660;backdrop-filter:blur(5px)}.investigation-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:#edf8f0;border-bottom:1px solid #c5ded1}.investigation-header b{font-size:14px}.investigation-header button{width:44px;height:44px;border:1px solid #b7d4c6;border-radius:12px;background:white;color:#355f65;font-size:24px}.investigation-sheet .workspace{border:0;box-shadow:none;margin:0}.investigation-sheet .window-bar{display:none}.investigation-sheet #workspace-content{padding:20px}.investigation-sheet .choice{font-size:14px;min-height:48px}.investigation-sheet td,.investigation-sheet th{font-size:13px}.investigation-sheet .evidence{font-size:13px;min-height:44px}.investigation-sheet .desk-card p{font-size:14px}.investigation-sheet .report-item{font-size:14px;min-height:48px}#modal{max-height:85dvh;overflow:auto}#game [hidden]{display:none!important}.line-arrive{animation:line-pop .2s ease-out}@keyframes line-pop{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes cta-bounce{50%{transform:translateY(-4px)}}
@media(min-width:900px){#game .cinema-dock.has-choices{grid-template-columns:1.1fr 1fr}#game .has-choices .dialogue{grid-row:1/3}#game .has-choices .dialogue-navigation{grid-column:2;grid-row:2}#game .has-choices #cinema-choices{grid-column:2;grid-row:1}#game .story-text{font-size:18px}}
@media(max-width:760px){#game.game-shell{--hud-top:max(58px,env(safe-area-inset-top))}#game #world-stage{top:135px}#game .cinema-dock{gap:6px;padding:8px 10px max(12px,env(safe-area-inset-bottom))}#game .dialogue{padding:11px 13px}#game .dialogue h2{font-size:17px;margin:7px 0}#game .story-text{font-size:15px;line-height:1.6;min-height:2.8em}#game .speaker small{font-size:9px}#game .cinema-dock .choice{font-size:12px;padding:8px 10px}#game .immersive-tools{right:10px;gap:4px}#game .immersive-tools button{font-size:10px;padding:5px 8px}#game .story-nav{left:10px;right:10px}#game .chapters{padding:8px;max-width:43%}#game .scene-top{left:10px}#game .shot-controls{right:10px}#game .shot-controls button{font-size:9px;padding:4px 6px}#game .shot-playback{left:8%;right:8%;bottom:25%}#game .shot-playback p{font-size:14px}#game .scene-action{font-size:10px;padding:8px;top:26%}#game .thought-bubble{font-size:10px}.investigation-sheet #workspace-content{padding:14px}}
@media(max-height:600px){#game .dialogue h2{display:none}#game .story-text{min-height:0;font-size:14px}#game .speaker{display:none}#game .cinema-dock .choice{min-height:38px;font-size:12px;padding:6px}#game #world-stage{top:85px}#game.game-shell{--hud-top:10px}}
@media(prefers-reduced-motion:reduce){.line-arrive,#game #stage-cta{animation:none!important}}
