.player-reaction,#player>.player-reaction{position:absolute;z-index:6;object-fit:contain;pointer-events:none}
#player[data-reaction] > img:not(.player-reaction),#player[data-reaction] > .character-gesture,#player[data-reaction] > .player-idle-overlay{visibility:hidden!important}
.station.noticed > .character-gesture,.station.noticed > .colleague-idle-eyes{visibility:hidden!important}
.station.noticed > img.workstation{visibility:visible!important}
/* Keep the head replacement and its cutout at the same opacity on capture. */
.station.noticed.head-glancing{animation:none;--head-alpha:1}
.station.noticed.head-glancing > .colleague-head{opacity:var(--head-alpha)!important}
.scene-motion{position:absolute;pointer-events:none;z-index:0;object-fit:fill}
@media(prefers-reduced-motion:reduce){.player-reaction{display:none!important}#player[data-reaction]>img{visibility:visible!important}}
@media(prefers-reduced-motion:reduce){#player[data-reaction-held]>.player-reaction{display:block!important}#player[data-reaction-held]>img:not(.player-reaction){visibility:hidden!important}}
/* Overscan the opaque catch card beneath the scene clip at fractional UI scales. */
#caught-scene{inset:-2px;overflow:hidden}
/* Keep the catch backdrop opaque while artwork enters: parent fading exposed the office seam. */
#caught-scene{animation:none;background:#142021;isolation:isolate}
#caught-scene:not([hidden]) #scene-art{animation:studio-cut .22s ease-out}
@media(prefers-reduced-motion:reduce){#caught-scene:not([hidden]) #scene-art{animation:none}}
