/* Pointnara photo-copy friction: normal scrolling and links remain functional. */
img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
  pointer-events: none;
}
button.pointnara-photo-zoom {
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  padding: 0;
  margin: 0;
  width: 100%;
  color: inherit;
  background: transparent;
  font: inherit;
  text-align: inherit;
  cursor: zoom-in;
}
button.pointnara-photo-zoom:focus-visible {
  outline: 3px solid #78a888;
  outline-offset: -3px;
}

/* Single-image native links. Preserve the current 2-column gallery arrangement. */
.photos figure > a.gallery-photo-link { display:block; width:100%; line-height:0; cursor:zoom-in; border-radius:inherit; }
.photos figure > a.gallery-photo-link img { display:block; width:100%; height:auto; }
.photos figure > a.gallery-photo-link:focus-visible, a.pointnara-photo-zoom:focus-visible { outline:3px solid #78a888; outline-offset:3px; }
a.photo-frame.pointnara-photo-zoom { text-decoration:none; cursor:zoom-in; }
/* A separate viewer element holds one image only, on a full-screen dark backdrop. */
.pointnara-single-photo-viewer[hidden] { display:none !important; }
.pointnara-single-photo-viewer { position:fixed; inset:0; z-index:2147483640; display:flex; align-items:center; justify-content:center; padding:10px; background:rgba(5,16,11,.94); overscroll-behavior:contain; }
.pointnara-single-photo-panel { display:flex; flex-direction:column; width:min(100%,1080px); max-height:calc(100vh - 20px); max-height:calc(100dvh - 20px); background:#14241b; border-radius:12px; overflow:hidden; box-shadow:0 10px 40px rgba(0,0,0,.4); }
.pointnara-single-photo-toolbar { flex:none; display:flex; align-items:center; justify-content:flex-end; padding:7px 11px; }
.pointnara-single-photo-close { -webkit-appearance:none; appearance:none; padding:8px 14px; border:1px solid #678677; border-radius:9px; background:#315441; color:white; font:700 15px system-ui,sans-serif; cursor:pointer; }
.pointnara-single-photo-image { display:block; flex:1 1 auto; min-height:0; max-width:100%; width:100%; max-height:calc(100vh - 115px); max-height:calc(100dvh - 115px); height:auto; object-fit:contain; background:#14241b; }
.pointnara-single-photo-caption { flex:none; color:#d5e4d8; font:13px/1.5 system-ui,sans-serif; margin:0; padding:10px 16px 14px; text-align:center; max-height:3.9em; overflow:hidden; }
@media(max-width:600px){.pointnara-single-photo-viewer {padding:0}.pointnara-single-photo-panel {max-height:100vh;max-height:100dvh;width:100%;border-radius:0}.pointnara-single-photo-toolbar {padding:10px 13px}}
