/* Shared orthographic machine finish. All movement is driven by process state. */
.scene-object *, .scene-object *::before, .scene-object *::after {animation-play-state: paused}
#plant-stage.simulation-running .scene-object *,
#plant-stage.simulation-running .scene-object *::before,
#plant-stage.simulation-running .scene-object *::after {animation-play-state: running}
.scene-object .object-caption {font-family: var(--font-ui);font-weight: 600;color: var(--n-800);letter-spacing: 0}
.scene-object .object-signal {color: var(--n-600);letter-spacing: 0;font-variant-numeric: tabular-nums}
.scene-object .dock-port {opacity: .25;transition: opacity 120ms ease-out}
.scene-object:is(:hover,.selected,:focus-visible) .dock-port {opacity: 1}
.simulation-running .scene-object .dock-port {opacity: 0;pointer-events: none}
@media(prefers-reduced-motion:reduce){
  .scene-object .dock-port {transition: none}
}
