/* BTB Pumpwerke – Bild-Zoom (additiv, PDF-Viewer unberührt) */
#btbImgZoomOverlay{
  position:fixed;inset:0;z-index:21000;
  background:rgba(12,16,22,.88);
  display:none;
  touch-action:none;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}
#btbImgZoomOverlay.btb-open{display:block}
#btbImgZoomStage{
  position:absolute;inset:0 0 56px 0;
  overflow:hidden;
  cursor:grab;
}
#btbImgZoomStage.btb-panning{cursor:grabbing}
#btbImgZoomImg{
  position:absolute;
  left:50%;top:50%;
  transform-origin:center center;
  max-width:none;
  max-height:none;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
  box-shadow:0 8px 40px rgba(0,0,0,.45);
  background:#111;
}
#btbImgZoomBar{
  position:absolute;left:0;right:0;bottom:0;height:56px;
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:rgba(20,24,30,.92);
  border-top:1px solid rgba(255,255,255,.08);
  padding:0 10px;
}
#btbImgZoomBar button,
#btbDocZoomBtns button{
  min-width:40px;height:36px;
  border:0;border-radius:8px;
  background:#2b3340;color:#fff;
  font-size:16px;font-weight:600;
  cursor:pointer;
}
#btbImgZoomBar button:active,
#btbDocZoomBtns button:active{transform:scale(.97)}
#btbImgZoomBar .btb-label,
#btbDocZoomBtns .btb-label{
  color:#c9d2de;font-size:13px;min-width:52px;text-align:center;
}
#btbImgZoomClose{
  position:absolute;top:10px;right:10px;z-index:2;
  width:42px;height:42px;border:0;border-radius:10px;
  background:#c0392b;color:#fff;font-size:22px;cursor:pointer;
}
#btbImgZoomHint{
  position:absolute;top:14px;left:14px;z-index:2;
  color:#d7dee8;font-size:13px;opacity:.85;
  max-width:calc(100% - 70px);
}
#btbDocZoomBtns{
  display:none;
  align-items:center;
  gap:6px;
  margin-right:6px;
}
#docOverlayBody.btb-zoom-stage{
  overflow:hidden !important;
  touch-action:none;
  cursor:grab;
  position:relative;
}
#docOverlayBody.btb-zoom-stage.btb-panning{cursor:grabbing}
#docOverlayBody.btb-zoom-stage img{
  position:absolute;
  left:50%;top:50%;
  transform-origin:center center;
  max-width:none !important;
  max-height:none !important;
  height:auto;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
}

/* Lightbox-Pfeile Verlauf – höherer Kontrast */
#lightbox .lb-nav,
#lightbox #lbPrev,
#lightbox #lbNext {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(255,255,255,0.18) !important;
  border: 1px solid rgba(255,255,255,0.55) !important;
  color: #fff !important;
  font-size: 2.1rem !important;
  font-weight: 600;
  line-height: 54px;
  box-shadow: 0 6px 22px rgba(0,0,0,0.5);
  opacity: 1 !important;
}
#lightbox #lbPrev, #lightbox .lb-prev { left: 18px; }
#lightbox #lbNext, #lightbox .lb-next { right: 18px; }
#lightbox .lb-nav:hover {
  background: rgba(255,255,255,0.32) !important;
}

@media (max-width: 900px) {
  #docOverlayBar {
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 8px 10px !important;
    padding-top: calc(8px + env(safe-area-inset-top, 0px)) !important;
  }
  #docOverlayTitle {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.25 !important;
    padding: 4px 8px 0 0 !important;
  }
  #docOverlayClose { position: static !important; margin: 0 !important; order: 1; }
  #docOverlaySave, #docOverlayPrint { order: 1; }
  #docOverlayActions {
    flex: 0 1 auto !important;
    width: auto !important;
    margin-left: auto !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 6px !important;
  }
  #btbDocZoomBtns {
    order: 2;
    flex: 1 1 100%;
    width: 100%;
    margin: 0 !important;
    justify-content: flex-end !important;
  }
  #docOverlayActions button,
  #btbDocZoomBtns button {
    padding: 8px 11px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    height: 36px !important;
    min-height: 36px !important;
    border-radius: 8px !important;
  }
}
