/**
 * galeria.css — Masonry grid, hover, lightbox
 * @package Akademia
 */

.galeria { padding-block: var(--space-16); background: var(--color-bg); }

.galeria__grid {
  columns: 3;
  column-gap: var(--space-4);
}

.galeria__item {
  break-inside: avoid;
  margin-bottom: var(--space-4);
  border-radius: var(--radius-md);
  overflow: hidden;
  cursor: pointer;
  position: relative;
}

.galeria__item img {
  width: 100%;
  display: block;
  opacity: 0;
  transition: opacity var(--duration-slow), transform var(--duration-slow);
}

.galeria__item img.is-loaded { opacity: 1; }
.galeria__item:hover img { transform: scale(1.03); }

/* Lightbox */
.galeria-lightbox {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.92);
  z-index: var(--z-modal);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-6);
}

.galeria-lightbox[hidden] { display: none; }

.galeria-lightbox__img { max-height: 90vh; max-width: 90vw; border-radius: var(--radius-md); object-fit: contain; }

.galeria-lightbox__close,
.galeria-lightbox__prev,
.galeria-lightbox__next {
  position: absolute;
  background: rgba(255,255,255,.12);
  border: none;
  color: #fff;
  font-size: 1.5rem;
  cursor: pointer;
  border-radius: var(--radius-full);
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--duration-fast);
}

.galeria-lightbox__close:hover,
.galeria-lightbox__prev:hover,
.galeria-lightbox__next:hover { background: rgba(255,255,255,.25); }

.galeria-lightbox__close { top: var(--space-4); right: var(--space-4); }
.galeria-lightbox__prev  { left: var(--space-4); top: 50%; transform: translateY(-50%); }
.galeria-lightbox__next  { right: var(--space-4); top: 50%; transform: translateY(-50%); }

@media (max-width: 767px) { .galeria__grid { columns: 2; } }
@media (max-width: 480px) { .galeria__grid { columns: 1; } }
