/* dmi-Redesign: Objekt-Bildergalerie (Masonry v4 + PhotoSwipe v5, vanilla, kein jQuery)
   Nur auf estates/indexSuccess geladen (siehe apps/dmi/modules/estates/config/view.yml).
   Vorbild: apps/dmi_de/modules/estate/templates/_images.php (Realia-Theme, alte jQuery-
   Masonry-v3/lightGallery-v1-Kombination) - hier mit aktuellen, jQuery-freien Libraries
   nachgebaut. lightGallery v2 wurde bewusst NICHT verwendet (kostenpflichtige Commercial-
   Lizenz seit v2 fuer kommerzielle Seiten, siehe CLAUDE.md) - PhotoSwipe v5 (MIT) statt. */

.dmi-masonry {
  position: relative;
  margin: 0 -8px;
}

.dmi-masonry__item {
  width: 100%;
  padding: 0 8px;
  margin-bottom: 16px;
}

.dmi-masonry__ratio {
  position: relative;
  width: 100%;
  height: 0;
  overflow: hidden;
  border-radius: 4px;
  background: #f0f0f0;
}

.dmi-masonry__ratio > a {
  position: absolute;
  inset: 0;
  display: block;
}

.dmi-masonry__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media (min-width: 576px) {
  .dmi-masonry__item {
    width: 50%;
  }
}

@media (min-width: 992px) {
  .dmi-masonry__item {
    width: 33.3333%;
  }
}

/* Claude 2026-07-17: Bildunterschrift im Grundriss-Viewer (PhotoSwipe v5 hat bewusst keine
   eingebaute Caption, siehe dmi-gallery.js). Bewusst hier statt in style.css: gehoert zum
   PhotoSwipe-Scope, wird nur auf der Objektdetailseite geladen (estates/config/view.yml). */
.pswp__floorplan-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 14px 20px;
  text-align: center;
  font-size: 15px;
  line-height: 1.4;
  color: #fff;
  background: rgba(34, 37, 40, 0.75);
  pointer-events: none;
}

.pswp__floorplan-caption:empty {
  display: none;
}

/* Claude 2026-07-17 (echter Bug, per elementFromPoint gefunden): PhotoSwipes Standard-z-index ist
   100000 - damit lag die sticky Navigationsleiste (#stickymenu, z-index 999999999) beim geoeffneten
   Viewer DARUEBER. Auf Mobilbreiten deckte das Hamburger-Icon exakt PhotoSwipes Schliessen-Button ab
   (beide oben rechts): ein Klick auf "X" oeffnete das Menue statt den Viewer zu schliessen, der
   Viewer war nicht mehr schliessbar (elementFromPoint am Button lieferte das Hamburger-IMG).
   Der Viewer ist ein echtes Vollbild-Overlay und gehoert damit ueber ALLES - inklusive der sticky
   Leiste und der sticky Icons. Ueber PhotoSwipes eigene CSS-Variable geloest, statt die vendorte
   photoswipe.css zu patchen (bleibt dadurch unveraendert/austauschbar). */
.pswp {
  --pswp-root-z-index: 1000000000;
}
