.zv-gallery { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); }
.zv-gallery a { display: block; aspect-ratio: 1; border-radius: 14px; overflow: hidden; }
.zv-gallery img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .2s ease; }
.zv-gallery a:hover img { transform: scale(1.05); }

.zv-lightbox { border: 0; padding: 0; background: transparent; max-width: 100vw; max-height: 100vh; width: 100vw; height: 100vh; }
.zv-lightbox::backdrop { background: rgba(20, 16, 28, .92); }
.zv-lightbox img { position: absolute; inset: 0; margin: auto; max-width: calc(100vw - 32px); max-height: calc(100vh - 96px); border-radius: 10px; }
.zv-lightbox button {
	position: absolute; border: 0; border-radius: 50%; width: 48px; height: 48px; cursor: pointer;
	background: rgba(255, 255, 255, .9); color: #2b2236; font-size: 26px; line-height: 1;
}
.zv-lightbox .zv-close { top: 16px; right: 16px; }
.zv-lightbox .zv-prev { left: 16px; top: 50%; transform: translateY(-50%); }
.zv-lightbox .zv-next { right: 16px; top: 50%; transform: translateY(-50%); }
.zv-lightbox .zv-count { position: absolute; bottom: 16px; left: 0; right: 0; text-align: center; color: #fff; }

/* Galéria oldal: kereső + évszűrő (a téma Dokumentumok-kereső stílusát használja) */
.gallery-filter { margin: 0 0 28px; }
.cards .card[hidden] { display: none; }

/* „Fotók: zalaegerszeg.hu – …” sor ne tapadjon a képekhez */
.zv-gallery + .meta { margin-top: 20px; }
