/* Full-size spoken text plus actual cartridge canvases; no duplicate renderer. */
.console{position:relative}
.research-launch{position:absolute;left:0;right:0;z-index:20;display:grid;place-items:center;pointer-events:none;background:color-mix(in srgb,var(--os-bg) 20%,transparent)}
.research-begin{pointer-events:auto;padding:clamp(22px,4vw,46px) clamp(48px,8vw,110px);font:400 clamp(32px,5vw,60px)/1.1 Georgia,serif;color:var(--os-bg);background:var(--os-ink);border:1px solid var(--os-ink);cursor:pointer;box-shadow:0 0 0 10px color-mix(in srgb,var(--os-bg) 75%,transparent)}
.research-begin:focus-visible{outline:3px solid var(--os-text);outline-offset:14px}.research-begin:disabled{opacity:.5;cursor:wait}
.research-lines,.research-immersive-reference,.matrix-immersive-tools{display:none}
html.research-immersive-active,body.research-immersive-active{overflow:hidden!important;overscroll-behavior:none;background:var(--os-bg)!important}
body.research-immersive-active :is(.site-enclosure,.mast,.chapter-ticker,.about-pilot,.site-interference-field){display:none!important}
body.research-immersive-active .console.research-immersive{position:fixed!important;top:var(--immersive-top,0px)!important;left:var(--immersive-left,0px)!important;right:auto!important;bottom:auto!important;width:var(--immersive-width,100vw)!important;height:var(--immersive-height,100dvh)!important;z-index:2147483647!important;display:flex!important;flex-direction:column;overflow:hidden!important;border:0!important;margin:0!important;padding:0!important;background:var(--os-bg)!important;outline:none}
body.research-immersive-active .console.research-immersive:fullscreen{top:0!important;left:0!important;width:100%!important;height:100%!important}
.console.research-immersive>:not(.narrative-window):not(.operating-system):not(.research-lines):not(.matrix-immersive-tools):not(dialog){display:none!important}
.console.research-immersive .narrative-window{flex:0 0 var(--immersive-text-height,120px)!important;height:var(--immersive-text-height,120px)!important;max-height:none!important;min-height:0!important;padding:14px clamp(20px,3vw,32px)!important;overflow:hidden!important;background:transparent!important;border:0!important;display:flex;justify-content:center;align-items:flex-start}
.console.research-immersive .passage{text-align:center;margin:0!important}
.console.research-immersive :is(.observer,.clocks,.instrument-title,.instrument-foot,.device-corner,.cartridge-direction-pad,.cartridge-replay,.missile-paused-board){display:none!important}
.console.research-immersive #defense-takeover{display:none!important}
.console.research-immersive :is(.operating-system,.work-area,.instrument,.geometry-space,.visual-panes,.visual-panes>section){border:0!important;padding:0!important;min-height:0!important;min-width:0;overflow:hidden!important;background:transparent!important}
.console.research-immersive .operating-system{display:flex!important;flex:1!important}.console.research-immersive .work-area{display:flex!important;flex:1}.console.research-immersive .instrument{display:flex!important;flex-direction:column;width:100%;flex:1;position:relative}
.console.research-immersive .visual-panes{display:flex!important;flex:1;gap:16px;padding:0 16px 12px!important}
.console.research-immersive .visual-panes>[hidden]{display:none!important}
.console.research-immersive .visual-panes h3{display:none!important}.console.research-immersive .visual-panes canvas{height:100%!important;max-height:100%!important;min-height:0!important;object-fit:contain}
.console.research-immersive[data-immersive-mode=lines] :is(.narrative-window,.operating-system){display:none!important}
.console.research-immersive[data-immersive-mode=lines] .research-lines{display:block;position:absolute;inset:max(12px,env(safe-area-inset-top)) 20px max(12px,env(safe-area-inset-bottom));overflow:hidden}
.research-line{position:absolute;top:0;left:50%;width:min(100%,80ch);max-width:none!important;margin:0!important;text-align:center;overflow-wrap:anywhere;transform:translateY(0);translate:-50% 0;font-family:var(--immersive-font)!important;font-size:var(--immersive-size)!important;line-height:var(--immersive-leading)!important;font-weight:var(--immersive-weight)!important;transition:transform .35s ease,opacity .35s ease}
.console.research-immersive.immersive-reference-active .visual-panes{visibility:hidden!important}
.console.research-immersive .research-immersive-reference:not([hidden]){display:block;position:absolute;inset:0;pointer-events:none}.research-immersive-reference canvas{width:100%;height:100%;object-fit:contain}
@media(max-width:700px){.console.research-immersive .visual-panes{gap:8px;padding:0 8px 8px!important}.console.research-immersive.has-equations .visual-panes{flex-direction:column!important}}
/* Matrix already carries the transcript. Its immersive stage is all graphics. */
.console[data-cartridge=matrix] #system-grid{touch-action:manipulation}
.console.research-immersive[data-cartridge=matrix][data-immersive-mode=visual] .narrative-window{display:none!important;flex:0!important;height:0!important;padding:0!important}
.console.research-immersive[data-cartridge=matrix][data-immersive-mode=visual] :is(.visual-panes,.geometry-space){width:100%!important;height:100%!important;flex:1!important;padding:0!important;gap:0!important}
.console.research-immersive[data-cartridge=matrix][data-immersive-mode=visual] #system-grid{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:fill!important}
.console.research-immersive[data-cartridge=matrix][data-immersive-mode=visual] .instrument-title{display:flex!important;position:absolute;top:max(6px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);width:auto!important;z-index:5;border:0!important;padding:0!important;background:transparent!important}
.console.research-immersive[data-cartridge=matrix] .instrument-title :is(h2,#close-visual){display:none!important}
.console.research-immersive[data-cartridge=matrix][data-immersive-mode=visual] #defense-takeover:not([hidden]){display:block!important;font:11px ui-monospace,monospace;padding:5px 8px;background:#00160de6;color:#a8ffd4;border:1px solid #387b5b;touch-action:manipulation}
.console.research-immersive[data-cartridge=matrix] .cartridge-direction-pad:not([hidden]){display:grid!important;position:absolute;bottom:max(50px,env(safe-area-inset-bottom));left:12px;z-index:6;opacity:.9}
.console.research-immersive[data-cartridge=matrix] .cartridge-direction-pad button{font:16px ui-monospace,monospace!important;min-width:38px;min-height:36px;padding:5px;background:#00160de6;color:#a8ffd4;border:1px solid #387b5b;touch-action:manipulation}
.console.research-immersive[data-cartridge=matrix] .matrix-immersive-tools{display:flex!important;position:absolute;right:8px;top:max(6px,env(safe-area-inset-top));gap:5px;z-index:6}
.matrix-immersive-tools button{font:11px ui-monospace,monospace!important;padding:5px 7px!important;min-height:28px;background:#00160de6;color:#a8ffd4;border:1px solid #387b5b;touch-action:manipulation}
@media(max-width:600px){.console.research-immersive[data-cartridge=matrix] .matrix-immersive-tools{top:auto;bottom:max(5px,env(safe-area-inset-bottom))}.console.research-immersive[data-cartridge=matrix] .cartridge-direction-pad:not([hidden]){bottom:65px;left:6px}}
@media(prefers-reduced-motion:reduce){.research-line{transition:none!important}}
