/* Fullscreen is opt-in; embedded views retain their usual layout. */
.viewer-fullscreen-host{position:relative}
.viewer-fullscreen-button{min-height:44px;padding:10px 14px;border:1px solid #90bac4;background:#0b202be8;color:#fff;font:14px Arial,Helvetica,sans-serif;cursor:pointer;touch-action:manipulation;flex:0 0 auto}
.viewer-fullscreen-button:hover,.viewer-fullscreen-button:focus-visible{border-color:#fff;background:#214653}
.viewer-fullscreen-button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.viewer-fullscreen-overlay{position:absolute;right:14px;top:14px;z-index:40}
.viewer-fullscreen-host>.control-room-overlay{right:160px}
.viewer-fullscreen-target.viewer-is-fullscreen{box-sizing:border-box!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;min-height:0!important;margin:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;transition:none!important;background-color:#071019}
.viewer-fullscreen-target.viewer-expanded{position:fixed!important;inset:0!important;z-index:10000!important}
.viewer-fullscreen-target.viewer-is-fullscreen>canvas{width:100%!important;height:100%!important;max-height:none!important}
.viewer-fullscreen-flex.viewer-is-fullscreen{display:flex!important;flex-direction:column!important;overflow:auto!important}
.viewer-fullscreen-flex.viewer-is-fullscreen>canvas,.viewer-fullscreen-flex.viewer-is-fullscreen>.viewer-fullscreen-viewport{flex:1 1 0!important;height:0!important;min-height:160px!important;max-height:none!important}
.viewer-is-fullscreen>.viewer-fullscreen-viewport>canvas{width:100%!important;height:100%!important;max-height:none!important}
.viewer-fullscreen-flex.viewer-is-fullscreen>:not(canvas):not(.viewer-fullscreen-viewport){flex-shrink:0}
.viewer-fullscreen-open,.viewer-fullscreen-open body{overflow:hidden!important}
.viewer-is-fullscreen .viewer-fullscreen-overlay{position:absolute}
.system-panel.viewer-is-fullscreen>.system-view{flex:1 1 0;min-height:0;overflow:hidden}
.system-panel.viewer-is-fullscreen .system-stage{height:100%!important;min-height:0!important;max-height:none!important}
.system-panel.viewer-is-fullscreen>.system-tracking-info{display:none}
.pyrolytic-display.viewer-is-fullscreen>.pyrolytic-detail,.pyrolytic-display.viewer-is-fullscreen>.pyrolytic-hint,.pyrolytic-display.viewer-is-fullscreen>.pyrolytic-credit{display:none}
.teleoperation.viewer-is-fullscreen>.teleop-intro,.teleoperation.viewer-is-fullscreen>.teleop-scoring,.teleoperation.viewer-is-fullscreen>.teleop-readouts{display:none}
.teleoperation.viewer-is-fullscreen>.teleop-monitors{padding:0 12px;min-height:160px;overflow:hidden}
.teleoperation.viewer-is-fullscreen .teleop-monitor{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.teleoperation.viewer-is-fullscreen .teleop-screen{flex:1;min-height:0}
.teleoperation.viewer-is-fullscreen .teleop-screen canvas{height:100%;aspect-ratio:auto;object-fit:contain}
.teleoperation.viewer-is-fullscreen>.fleet-heading{padding:12px 18px}
.teleoperation.viewer-is-fullscreen>.teleop-controls{padding-bottom:8px}
@media(max-width:650px){.viewer-fullscreen-overlay{top:10px;right:10px}.viewer-fullscreen-button{font-size:13px;padding:9px 12px}.viewer-is-fullscreen .fleet-time-controls{flex-wrap:wrap;justify-content:flex-end}.teleoperation.viewer-is-fullscreen .teleop-controls p{display:none}.teleoperation.viewer-is-fullscreen .teleop-dashboard,.teleoperation.viewer-is-fullscreen .teleop-course-status{padding:8px 16px}}
