.sync-galeria .thumb.active {
  border: 2px solid #000000;
}

.featured-image {
  position: relative;
  cursor: zoom-in;
}

.featured-image img {
  width: 100%;
  height: auto;
}

.click-hint {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  font-size: 0.75rem;
  padding: 0.3rem 0.6rem;
  border-radius: 4px;
  pointer-events: none;
  user-select: none;
  font-family: 'Roboto';
}

.modal {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

.modal.open {
  display: flex;
}

.modal img {
  max-width: 90vw;
  max-height: 80vh;
}

.modal .nav,
.modal .close {
  position: absolute;
  font-size: 2rem;
  background: none;
  color: white;
  border: none;
  cursor: pointer;
}

.modal .nav.left {
  left: 2rem;
}

.modal .nav.right {
  right: 2rem;
}

.modal .close {
  top: 1rem;
  right: 1rem;
}

.thumbnails-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  margin: 1rem auto;
  padding: 0 1rem;
  box-sizing: border-box;
  overflow: hidden;
}

.thumb-nav {
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
  color: #333;
  padding: 0.5rem;
  z-index: 2;
}

.thumbnails {
  display: flex;
  gap: 0.5rem;
  overflow-x: hidden;
  scroll-behavior: smooth;
  flex: 1;
}

.thumb {
  flex: 0 0 calc(33.3% - 6px);
  max-width: calc(33.3% - 6px);
  aspect-ratio: 1/1;
  cursor: pointer;
  box-sizing: border-box;
}

.thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 4px;
  transition: filter 0.3s ease;
  filter: grayscale(100%) blur(1px);
}

.thumb:not(.active):hover img {
  filter: grayscale(50%) blur(0.5px);
}

.thumb.active img {
  filter: none;
}