/* BSBKTV mobile browser viewport/layout correction.
   One image stage for original and replacement backgrounds. Mobile uses
   full width with internal vertical scrolling; desktop remains contained. */

/* The main world already excludes the fixed bottom dock. Do not reserve it again. */
.host-lounge{padding-bottom:0!important}
.host-room-page{padding-bottom:0!important}

/* The stage and every hotspot share one measured aspect-ratio box. A tall
   picture may exceed the room viewport; that is content, not a blank tail.
   Keep the mounted-original hiding rules below more specific than >img. */
@media (max-width: 820px){
  #sceneRoom .room-space.image-room{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
  }
  #sceneRoom .room-space.image-room .room-image-stage{
    position:relative!important;
    left:0!important;
    top:0!important;
    transform:none!important;
    min-width:0!important;
    margin:0!important;
    box-shadow:none!important;
    /* Both render paths measure usable width and proportional height.
       height:auto would collapse the absolutely positioned mounted canvas. */
  }
  #sceneRoom .room-space.image-room .room-image-stage>img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:fill!important;
  }
  #sceneRoom .room-space.image-room .room-image-stage.space-mounted>img,
  #sceneRoom .room-space.image-room .room-image-stage.space-mounted>.room-hotspots{
    display:none!important;
  }
  #sceneRoom .room-space.image-room .room-hotspots{
    position:absolute!important;
    inset:0!important;
  }
  /* Never display a second blurry copy of the old room behind the new art. */
  #sceneRoom .room-space.image-room>.room-photo{display:none!important}
  #sceneRoom .room-space.image-room>.room-wash,
  #sceneRoom .room-space.image-room>.room-vignette{pointer-events:none!important}
}

/* Narrow phones: the two custom long pages should end immediately at their footer,
   then the fixed dock begins. No artificial dark strip between them. */
@media (max-width: 560px){
  .host-lounge,.host-room-page{padding-bottom:0!important}
}
