/* === Fix general carrusel === */
[data-ude="galeria"] .carousel {
  visibility: visible !important; /* anula slide_destacados.css */
}

/* === Flechas: blancas grandes con sombra === */
[data-ude="galeria"] .carousel .carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M11 1 3 8l8 7'/%3E%3C/svg%3E") !important;
  width: 3rem !important;
  height: 3rem !important;
  background-size: 100% 100% !important;
  filter: drop-shadow(0 0 4px rgba(0,0,0,0.9)) !important;
}

[data-ude="galeria"] .carousel .carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M5 1l8 7-8 7'/%3E%3C/svg%3E") !important;
  width: 3rem !important;
  height: 3rem !important;
  background-size: 100% 100% !important;
  filter: drop-shadow(0 0 4px rgba(0,0,0,0.9)) !important;
}

/* Botones laterales mas anchos para mejor usabilidad */
[data-ude="galeria"] .carousel-control-prev,
[data-ude="galeria"] .carousel-control-next {
  width: 12%;
  z-index: 5;
}

/* === Imagenes carrusel === */
[data-ude="galeria"] .carousel-item img {
  display: block;
  width: 100%;
  height: auto;
  min-height: 300px;   /* asegura altura minima en PC */
  object-fit: cover;   /* recorta en lugar de deformar */
}

/* Variante responsive: en movil altura minima mas baja */
@media (max-width: 768px) {
  [data-ude="galeria"] .carousel-item img {
    min-height: 200px;
  }
}

/* === Grid: espacio y consistencia === */
[data-ude="galeria"][data-gallery="grid"] .figure {
  margin: 0;
}
[data-ude="galeria"][data-gallery="grid"] img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
[data-ude="galeria"][data-gallery="grid"] figcaption {
  font-size: 0.9rem;
  text-align: center;
  margin-top: .25rem;
  color: #555;
}

/* Justified responsive */
.ude-justified{display:flex;flex-wrap:wrap;gap:.5rem;}
.ude-j-item{flex:1 0 48%;max-height:200px;overflow:hidden;}
@media (min-width:768px){ .ude-j-item{flex-basis:32%;} }    /*  3 col en tablet */
@media (min-width:1200px){ .ude-j-item{flex-basis:23.5%;} } /*  4 col en desktop */
.ude-j-img{width:100%;height:100%;object-fit:cover;display:block;}
.ude-j-cap{text-align:center;margin-top:.25rem;font-size:.9rem;color:#6c757d;}

/* ===== Galeria Masonry (reforzada) ===== */
[data-gallery="masonry"] .ude-galeria-masonry {
  display: block !important;
  column-count: 1;
  column-gap: 1rem;
}

[data-gallery="masonry"] .ude-galeria-masonry .ude-galeria-item {
  display: inline-block;
  width: 100%;
  margin-bottom: 1rem;
  break-inside: avoid;
}

[data-gallery="masonry"] .ude-galeria-masonry img {
  width: 100%;
  height: auto;
  display: block;
}

@media (min-width: 360px) {
  [data-gallery="masonry"] .ude-galeria-masonry { column-count: 2; }
}
@media (min-width: 768px) {
  [data-gallery="masonry"] .ude-galeria-masonry { column-count: 3; }
}
@media (min-width: 1200px) {
  [data-gallery="masonry"] .ude-galeria-masonry { column-count: 4; }
}

/* === Simulación Justified en editor === */
.ude-justified {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.ude-justified .ude-jitem {
  flex: 1 0 30%;
  max-height: 160px;
  overflow: hidden;
}
.ude-justified .ude-jimg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 4px;
}

/* === Simulación Masonry en editor === */
[data-ude="galeria"][data-gallery="masonry"] .ude-galeria-masonry {
  column-count: 3;
  column-gap: 1rem;
}
[data-ude="galeria"][data-gallery="masonry"] .ude-galeria-item {
  break-inside: avoid;
  margin-bottom: 1rem;
}
[data-ude="galeria"][data-gallery="masonry"] img {
  width: 100% !important;
  height: auto;
  display: block;
}
@media (max-width: 768px) {
  .ude-justified .ude-jitem { flex: 1 0 48%; }
  [data-ude="galeria"][data-gallery="masonry"] .ude-galeria-masonry { column-count: 2; }
}
@media (max-width: 360px) {
  .ude-justified .ude-jitem { flex: 1 0 100%; }
  [data-ude="galeria"][data-gallery="masonry"] .ude-galeria-masonry { column-count: 1; }
}
