/* Load after refinement.css. A fixed desktop canvas avoids camera refits and
   room-dependent layout shifts; only its presentation moves into the left lane. */
@media(min-width:701px){
 .plan-layout,.plan-layout[data-selected]{display:block;grid-template-columns:none;gap:0;transition:none}
 .plan-layout [data-leap-plan]{width:100%;transform:translateX(0) scale(1);transform-origin:left center;transition:transform .85s var(--ease);will-change:transform}
 /* The engine reads these settled values to place room names beside the photograph. */
 .plan-layout{--plan-selected-shift:-5%;--plan-selected-scale:.76}
 .plan-layout[data-plan-layout=selected] [data-leap-plan]{transform:translateX(var(--plan-selected-shift)) scale(var(--plan-selected-scale))}
 .plan-layout .room-view,.plan-layout[data-selected] .room-view{display:block;position:absolute;right:0;top:50%;width:35%;z-index:1;opacity:0;transform:translateY(-50%);pointer-events:none;transition:opacity .6s ease}
 .plan-layout[data-photo=visible] .room-view{opacity:1}
 .plan-layout .room-view figure{height:calc(var(--leap-vh,100svh) * .48)}
 .plan-layout .room-photo{transform:none;transition:opacity .6s ease}
 .plan-layout .room-photo.incoming{transform:none}
}
@media(prefers-reduced-motion:reduce){
 .plan-layout [data-leap-plan],.plan-layout .room-view,.plan-layout .room-photo{transition:none!important}
}
