/* FXCHS V3.24 – keep the rounded television window nailed to the phone.
   Gestures may pan the panorama, float the hotspots or displace the muted
   video internally; they must never pan the document/frame itself. */
@media (pointer:coarse) and (max-width:1024px) {
  html.fxv2-js:has(body.fxv2.fxv2-hybrid-enabled),
  html.fxv2-js body.fxv2.fxv2-hybrid-enabled {
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    overflow-y:hidden!important;
    overscroll-behavior:none!important;
  }
  body.fxv2.fxv2-hybrid-enabled .fxv2-hybrid {
    box-sizing:border-box;
    width:100%!important;
    max-width:100%!important;
    height:100dvh!important;
    overflow:hidden!important;
    overscroll-behavior:none;
  }
  body.fxv2.fxv2-hybrid-enabled .fxv2-world {
    position:fixed!important;
    inset:0!important;
    box-sizing:border-box;
    width:100%!important;
    max-width:100%!important;
    height:100dvh!important;
    min-height:0!important;
    margin:0!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    touch-action:none;
  }
  body.fxv2.fxv2-hybrid-enabled .fxv2-world-scene {
    box-sizing:border-box;
    max-width:100%!important;
    overscroll-behavior:none;
    touch-action:none;
  }
  body.fxv2.fxv2-hybrid-enabled .fxv2-world .fxv2-pano:not(.is-overview),
  body.fxv2.fxv2-hybrid-enabled .fxv2-world .fxv2-pano-canvas {
    touch-action:none!important;
    overscroll-behavior:none;
  }
  /* The zoomed-out card overview still needs native vertical scrolling. */
  body.fxv2.fxv2-hybrid-enabled .fxv2-world .fxv2-pano.is-overview .fxv2-pano-hotspots {
    touch-action:pan-y!important;
    overscroll-behavior:contain;
  }
}

/* The slider title, line and its end controls share one central axis. */
body.fxv2 .fxv2-menu-shell .fxv323-fluidity {
  width:min(275px,calc(100% - 84px))!important;
  margin:5px auto 9px!important;
  padding-inline:0!important;
  text-align:center!important;
}
body.fxv2 .fxv323-fluidity>label {
  display:block;
  width:100%;
  text-align:center!important;
}
body.fxv2 .fxv323-fluidity-control {
  width:100%;
  justify-content:center;
}

/* Keep text, pictures and actions on a single optical axis within each
   floating window. The windows themselves retain their organic positions. */
body.fxv2 .fxv2-world .fxv2-pano-hotspots>a.fxv257-room-teaser {
  box-sizing:border-box;
  text-align:center!important;
  align-items:stretch!important;
}
body.fxv2 .fxv2-world .fxv2-pano-hotspots>a.fxv257-room-teaser :is(small,strong,em,span) {
  max-width:100%;
  text-align:center!important;
  margin-inline:auto;
}
body.fxv2 .fxv2-world .fxv2-pano-hotspots>a.fxv257-room-teaser img {
  width:100%;
  margin-inline:auto;
}
body.fxv2 .fxv2-world .fxv2-pano-hotspots>.fxv323-home-story {
  display:flex!important;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center!important;
}
body.fxv2 .fxv2-world .fxv2-pano-hotspots>.fxv323-home-story :is(small,h1,p) {
  margin-inline:auto!important;
  text-align:center!important;
}

/* V3.25: article heading and article paper share the same central column.
   Older editorial CSS forced margin-left:0!important on the heading only,
   leaving an equally wide title box stranded against the left page edge. */
html.fxv2-js body.fxv2 .fxv2-hybrid-panel .fxv2-article-page>.fxv2-article-intro {
  box-sizing:border-box!important;
  width:100%!important;
  max-width:1060px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
