/* Full View is an additional inspection layer. Normal compositions stay intact. */
html.iakob-full-view-active,
html.iakob-full-view-active body {
  overflow: hidden !important;
}

#iakob-full-view {
  background: #fefefd;
  height: 100dvh;
  inset: 0;
  position: fixed;
  width: 100vw;
  z-index: 2147483647;
}

.iakob-full-view-scroller {
  -ms-overflow-style: none;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scroll-behavior: auto;
  scroll-snap-type: y mandatory;
  scrollbar-width: none;
  touch-action: pan-y pinch-zoom;
  width: 100%;
  -webkit-overflow-scrolling: touch;
}

.iakob-full-view-scroller::-webkit-scrollbar {
  display: none;
}

.iakob-full-view-slide {
  align-items: center;
  background: #fefefd;
  box-sizing: border-box;
  display: flex;
  height: 100dvh;
  justify-content: center;
  min-height: 100dvh;
  overflow: hidden;
  position: relative;
  scroll-snap-align: start;
  scroll-snap-stop: always;
  width: 100vw;
}

.iakob-full-view-visual {
  cursor: zoom-out;
  flex: 0 0 auto;
  overflow: hidden;
  position: relative;
  transform: scale(var(--iakob-full-view-scale, 1));
  transform-origin: center center;
}

.iakob-full-view-visual > .iakob-full-view-clone {
  height: 100% !important;
  inset: 0 !important;
  margin: 0 !important;
  max-height: none !important;
  max-width: none !important;
  position: absolute !important;
  width: 100% !important;
}

.iakob-full-view-clone.iakob-full-view-direct-image {
  display: block !important;
  object-fit: contain !important;
}

.iakob-full-view-fragment {
  height: 100%;
  inset: 0;
  overflow: hidden;
  position: absolute;
  width: 100%;
}

.iakob-full-view-fragment-item {
  margin: 0 !important;
  max-height: none !important;
  max-width: none !important;
  position: absolute !important;
}

:is(
    #root .iakob-object-stage img,
    #root .iakob-fixed-composition img,
    #root .iakob-commercial-building-page-image,
    #root .iakob-multifamily-figure img,
    #root .ZRRuDw section.rGeu6w svg,
    #root .ZRRuDw section.rGeu6w canvas,
    #iakob-mobile-root .iakob-mobile-visual img,
    #iakob-mobile-root .iakob-mobile-visual svg,
    #iakob-mobile-root .iakob-mobile-visual canvas
  ) {
  pointer-events: auto !important;
}

@media (pointer: fine) {
  :is(
      #root .iakob-object-stage,
      #root .iakob-fixed-composition,
      #root .iakob-commercial-building-page-image,
      #root .iakob-multifamily-figure,
      #root .ZRRuDw section.rGeu6w img,
      #iakob-mobile-root .iakob-mobile-visual
    ) {
    cursor: zoom-in;
  }
}
