/* IMMOCOM Phase 4: nur Immobilien-Detailseite; bestehende Vorschaubilder werden nicht überschrieben. */
.phase4-open-gallery{position:absolute;left:14px;top:14px;z-index:3;background:rgba(0,0,0,.72);border:1px solid rgba(255,255,255,.32);color:#fff;border-radius:10px;padding:9px 13px;font-size:13px;cursor:pointer;backdrop-filter:blur(10px)}
.phase4-open-gallery:hover{background:rgba(0,0,0,.9)}
.phase4-open-gallery:focus-visible,.phase4-lightbox button:focus-visible,.phase4-mobile-cta a:focus-visible{outline:3px solid #efb72a;outline-offset:3px}
.phase4-lightbox{position:fixed;inset:0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;background:#151515;color:#fff;overflow:hidden}
.phase4-lightbox::backdrop{background:rgba(0,0,0,.92)}
.phase4-lightbox[open]{display:flex;flex-direction:column}
.phase4-lightbox-head{display:flex;align-items:center;gap:18px;padding:12px 18px;min-height:52px;border-bottom:1px solid #333}
.phase4-lightbox-head strong{font-size:15px}.phase4-lightbox-head span{margin-left:auto;font-size:13px;color:#d3d3d3}
.phase4-lightbox button{border:1px solid #555;border-radius:10px;background:#292929;color:#fff;cursor:pointer;min-width:39px;min-height:39px}
.phase4-lightbox button:hover{background:#404040}
.phase4-lightbox-stage{display:flex;align-items:center;justify-content:space-between;flex:1;min-height:0;position:relative;overflow:hidden;touch-action:pan-y}
.phase4-lightbox-stage img{position:absolute;left:50%;top:50%;width:auto;height:auto;max-width:calc(100% - 120px);max-height:100%;object-fit:contain;transform-origin:center center;user-select:none;-webkit-user-drag:none;will-change:transform;touch-action:none;cursor:zoom-in}
.phase4-lightbox-stage.is-zoomed img{cursor:grab}.phase4-lightbox-stage.is-dragging img{cursor:grabbing}
.phase4-lightbox-nav{position:relative;z-index:2;margin:0 12px;font-size:22px;background:rgba(28,28,28,.82)!important;flex-shrink:0}
.phase4-lightbox-controls{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:8px 12px}
.phase4-lightbox-controls output{min-width:60px;text-align:center;font-size:13px}
.phase4-lightbox-controls #phase4ZoomReset{padding:5px 12px;font-size:13px}
.phase4-lightbox-thumbs{display:flex;justify-content:safe center;gap:9px;overflow-x:auto;padding:10px 16px;min-height:83px;max-width:100%;border-top:1px solid #333;scrollbar-width:thin}
.phase4-lightbox-thumbs button{width:82px;height:60px;flex:0 0 82px;padding:0;overflow:hidden;border:2px solid transparent;opacity:.65}
.phase4-lightbox-thumbs button.is-active{border-color:#efb72a;opacity:1}.phase4-lightbox-thumbs img{height:100%;width:100%;object-fit:cover}
.phase4-lightbox-hint{margin:0;padding:0 8px 10px;text-align:center;font-size:11px;color:#c0c0c0}
.phase4-highlight-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.phase4-highlight-row span{display:flex;flex-direction:column;gap:5px;border:1px solid rgb(var(--border));padding:10px 16px;border-radius:12px;min-width:140px;font-size:14px}
.phase4-highlight-row b{font-weight:500;font-size:12px;color:rgb(var(--muted))}
.phase4-mobile-cta{display:none}
@media (max-width:767px){
  body.page-immobilien{padding-bottom:calc(83px + env(safe-area-inset-bottom,0px))}
  .phase4-mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:35;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));gap:10px;background:rgba(25,25,25,.96);border-top:1px solid #555;box-shadow:0 -10px 35px rgba(0,0,0,.3)}
  .phase4-mobile-cta a{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;min-height:48px;padding:8px;border:1px solid #888;border-radius:12px;color:#f8f8f8;font-weight:600;font-size:13px}
  .phase4-mobile-cta .phase4-mobile-cta-primary{background:rgb(var(--accent));border-color:rgb(var(--accent));color:#111}
  .phase4-lightbox-stage img{max-width:calc(100% - 20px);max-height:95%}
  .phase4-lightbox-nav{position:absolute;margin:0;bottom:10px;min-width:44px;min-height:44px;z-index:2}
  #phase4Prev{left:10px}#phase4Next{right:10px}
  .phase4-lightbox-thumbs{justify-content:flex-start}
  .phase4-lightbox-hint{display:none}
}
@media (prefers-reduced-motion:reduce){.phase4-lightbox img{transition:none!important}}
