/* Slide Gallery */
.wp-block-cni-blocks-slide-gallery{
  --cni-object-fit: cover;
  --cni-side-main: 3fr;
  --cni-side-thumbs: 1fr;
  --cni-thumb-size: 72px;
}
.wp-block-cni-blocks-slide-gallery .cni-main{
  position:relative;
  width:100%;
}
.wp-block-cni-blocks-slide-gallery .cni-main-viewport{
  position:relative;
  overflow:hidden;
  width:100%;
}
.wp-block-cni-blocks-slide-gallery .cni-main-img,
.wp-block-cni-blocks-slide-gallery .cni-slide{
  display:block;
  width:100%;
  max-width:100%;
}
.wp-block-cni-blocks-slide-gallery .cni-main-img{
  height:auto;
  object-fit:var(--cni-object-fit, cover);
}
.wp-block-cni-blocks-slide-gallery[data-has-frame="1"] .cni-main-img{
  height:100%;
}
.wp-block-cni-blocks-slide-gallery .cni-slides{
  position:relative;
}
.wp-block-cni-blocks-slide-gallery .cni-slide{
  display:none;
  height:auto;
  object-fit:contain;
  opacity:0;
  transform:translateX(0%);
  transition:opacity 260ms ease, transform 260ms ease;
  will-change:opacity, transform;
}
.wp-block-cni-blocks-slide-gallery .cni-slide.is-active,
.wp-block-cni-blocks-slide-gallery .cni-slide.is-enter,
.wp-block-cni-blocks-slide-gallery .cni-slide.is-leave{
  display:block;
  opacity:1;
}
.wp-block-cni-blocks-slide-gallery[data-has-frame="1"] .cni-slides{
  position:absolute;
  inset:0;
}
.wp-block-cni-blocks-slide-gallery[data-has-frame="1"] .cni-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:var(--cni-object-fit, cover);
}
.wp-block-cni-blocks-slide-gallery.cni-no-transition .cni-slide{
  transition:none !important;
}

.wp-block-cni-blocks-slide-gallery .cni-thumbs{
  display:flex;
  gap:8px;
  margin-top:10px;
  flex-wrap:wrap;
}
.wp-block-cni-blocks-slide-gallery .cni-thumb{
  border:1px solid #ddd;
  padding:0;
  background:transparent;
  cursor:pointer;
  line-height:0;
}
.wp-block-cni-blocks-slide-gallery .cni-thumb img{
  width:var(--cni-thumb-size, 72px);
  height:var(--cni-thumb-size, 72px);
  object-fit:cover;
  display:block;
}
.wp-block-cni-blocks-slide-gallery .cni-thumb.is-active{
  outline:2px solid currentColor;
  outline-offset:1px;
}
.cni-editor-toolbar{display:flex;gap:8px;margin-bottom:10px}
.cni-placeholder{padding:16px;border:1px dashed #ccc}

.wp-block-cni-blocks-slide-gallery .cni-caption{font-size:.95em;line-height:1.5;text-align:center}
.wp-block-cni-blocks-slide-gallery .cni-caption--below{margin-top:8px}
.wp-block-cni-blocks-slide-gallery .cni-caption--overlay{position:absolute;left:0;right:0;bottom:0;padding:10px 12px;box-sizing:border-box;z-index:2}
.wp-block-cni-blocks-slide-gallery .cni-caption--dark{background:rgba(0,0,0,.55);color:#fff}
.wp-block-cni-blocks-slide-gallery .cni-caption--light{background:rgba(255,255,255,.85);color:#111}
.wp-block-cni-blocks-slide-gallery .cni-caption--glass{background:rgba(255,255,255,.01);color:#fff;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}

.wp-block-cni-blocks-slide-gallery .cni-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  border:1px solid rgba(0,0,0,.15);
  background:rgba(255,255,255,.85);
  cursor:pointer;
  width:34px;
  height:34px;
  padding:0;
  line-height:1;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
}
.wp-block-cni-blocks-slide-gallery .cni-arrow:disabled{opacity:.4;cursor:not-allowed}
.wp-block-cni-blocks-slide-gallery .cni-arrow-prev{left:8px}
.wp-block-cni-blocks-slide-gallery .cni-arrow-next{right:8px}

@media (min-width:782px){
  .wp-block-cni-blocks-slide-gallery .cni-main[data-layout="side"]{
    display:grid !important;
    grid-template-columns:minmax(0, var(--cni-side-main, 3fr)) minmax(120px, var(--cni-side-thumbs, 1fr)) !important;
    grid-template-areas:"main thumbs" !important;
    gap:12px !important;
    align-items:start;
  }
  .wp-block-cni-blocks-slide-gallery .cni-main[data-layout="side"] > .cni-main-viewport{
    grid-area:main !important;
    min-width:0;
    margin:0 !important;
  }
  .wp-block-cni-blocks-slide-gallery .cni-main[data-layout="side"] > .cni-thumbs{
    grid-area:thumbs !important;
    min-width:0;
    margin-top:0 !important;
    display:grid !important;
    grid-template-columns:repeat(auto-fill, minmax(var(--cni-thumb-size, 72px), 1fr)) !important;
    gap:8px !important;
    align-content:start;
    max-height:520px;
    overflow:auto;
  }
  .wp-block-cni-blocks-slide-gallery .cni-main[data-layout="side"] > .cni-thumbs .cni-thumb img{
    width:100%;
    height:auto;
    aspect-ratio:1 / 1;
  }
}

/* Tile Gallery */
.wp-block-cni-blocks-tile-gallery{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
.wp-block-cni-blocks-tile-gallery .cni-tile-grid{
  display:grid;
  grid-template-columns:repeat(var(--cni-tile-cols-sp,2), minmax(0,1fr));
  gap:var(--cni-tile-gap,8px);
}
.wp-block-cni-blocks-tile-gallery .cni-tile-item{margin:0}
.wp-block-cni-blocks-tile-gallery .cni-tile-item,
.wp-block-cni-blocks-tile-gallery .cni-tile-trigger{border:0 !important;outline:0 !important;box-shadow:none !important}
.wp-block-cni-blocks-tile-gallery .cni-tile-trigger{background:transparent;padding:0;display:block;width:100%;cursor:pointer}
.wp-block-cni-blocks-tile-gallery .cni-tile-item img{display:block;width:100%;height:auto;border:0 !important;outline:0 !important;border-radius:var(--cni-tile-radius,0)}
.wp-block-cni-blocks-tile-gallery.cni-has-border .cni-tile-item img{border:var(--cni-tile-border-width,1px) solid var(--cni-tile-border-color,#ddd) !important}
.wp-block-cni-blocks-tile-gallery .cni-tile-grid.is-shadow .cni-tile-item img{box-shadow:0 8px 20px rgba(0,0,0,.18) !important}
.wp-block-cni-blocks-tile-gallery .cni-tile-cap{margin-top:6px;font-size:.9em;line-height:1.5}

@media (min-width:782px){
  .wp-block-cni-blocks-tile-gallery .cni-tile-grid{grid-template-columns:repeat(var(--cni-tile-cols-pc,4), minmax(0,1fr))}
}

.wp-block-cni-blocks-tile-gallery.cni-display-justified .cni-tile-grid{display:flex;flex-wrap:wrap;gap:var(--cni-tile-gap,8px)}
.wp-block-cni-blocks-tile-gallery.cni-display-justified .cni-tile-item{flex:1 1 calc((100% - (var(--cni-tile-gap,8px) * (var(--cni-tile-cols-sp,2) - 1))) / var(--cni-tile-cols-sp,2))}
.wp-block-cni-blocks-tile-gallery.cni-display-justified .cni-tile-item img{height:180px;object-fit:cover}
@media (min-width:782px){
  .wp-block-cni-blocks-tile-gallery.cni-display-justified .cni-tile-item{flex-basis:calc((100% - (var(--cni-tile-gap,8px) * (var(--cni-tile-cols-pc,4) - 1))) / var(--cni-tile-cols-pc,4))}
}
.wp-block-cni-blocks-tile-gallery.cni-display-masonry .cni-tile-grid{display:block;columns:var(--cni-masonry-cols-sp,2);column-gap:var(--cni-tile-gap,8px)}
.wp-block-cni-blocks-tile-gallery.cni-display-masonry .cni-tile-item{break-inside:avoid;margin:0 0 var(--cni-tile-gap,8px)}
@media (min-width:782px){.wp-block-cni-blocks-tile-gallery.cni-display-masonry .cni-tile-grid{columns:var(--cni-masonry-cols-pc,3)}}
.wp-block-cni-blocks-tile-gallery.cni-display-portfolio .cni-tile-grid{grid-template-columns:repeat(var(--cni-tile-cols-sp,2), minmax(0,1fr))}
.wp-block-cni-blocks-tile-gallery.cni-display-portfolio .cni-tile-item:first-child{grid-column:1 / -1}
@media (min-width:782px){.wp-block-cni-blocks-tile-gallery.cni-display-portfolio .cni-tile-grid{grid-template-columns:repeat(var(--cni-tile-cols-pc,4), minmax(0,1fr))}}
.wp-block-cni-blocks-tile-gallery.cni-display-single-thumbnail .cni-tile-grid{display:block}
.wp-block-cni-blocks-tile-gallery.cni-display-single-thumbnail .cni-tile-item:not(:first-child){display:none}

/* editor preview switch */
.editor-styles-wrapper .wp-block-cni-blocks-tile-gallery.cni-editor-preview-sp .cni-tile-grid,
.wp-block-cni-blocks-tile-gallery.cni-editor-preview-sp .cni-tile-grid{grid-template-columns:repeat(var(--cni-tile-cols-sp,2), minmax(0,1fr)) !important}
.editor-styles-wrapper .wp-block-cni-blocks-tile-gallery.cni-editor-preview-pc .cni-tile-grid,
.wp-block-cni-blocks-tile-gallery.cni-editor-preview-pc .cni-tile-grid{grid-template-columns:repeat(var(--cni-tile-cols-pc,4), minmax(0,1fr)) !important}
.editor-styles-wrapper .wp-block-cni-blocks-tile-gallery.cni-display-masonry.cni-editor-preview-sp .cni-tile-grid,
.wp-block-cni-blocks-tile-gallery.cni-display-masonry.cni-editor-preview-sp .cni-tile-grid{columns:var(--cni-masonry-cols-sp,2) !important}
.editor-styles-wrapper .wp-block-cni-blocks-tile-gallery.cni-display-masonry.cni-editor-preview-pc .cni-tile-grid,
.wp-block-cni-blocks-tile-gallery.cni-display-masonry.cni-editor-preview-pc .cni-tile-grid{columns:var(--cni-masonry-cols-pc,3) !important}
.editor-styles-wrapper .wp-block-cni-blocks-tile-gallery.cni-editor-preview-sp.cni-display-justified .cni-tile-item{flex-basis:calc((100% - (var(--cni-tile-gap,8px) * (var(--cni-tile-cols-sp,2) - 1))) / var(--cni-tile-cols-sp,2)) !important}
.editor-styles-wrapper .wp-block-cni-blocks-tile-gallery.cni-editor-preview-pc.cni-display-justified .cni-tile-item{flex-basis:calc((100% - (var(--cni-tile-gap,8px) * (var(--cni-tile-cols-pc,4) - 1))) / var(--cni-tile-cols-pc,4)) !important}

.cni-lightbox{position:fixed;inset:0;display:none;z-index:99999}
.cni-lightbox.is-open{display:block}
.cni-lightbox__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.75)}
.cni-lightbox__dialog{position:absolute;inset:5% 8%;display:flex;align-items:center;justify-content:center}
.cni-lightbox__img{max-width:100%;max-height:100%;object-fit:contain}
.cni-lightbox__close,.cni-lightbox__nav{position:absolute;border:0;background:rgba(255,255,255,.9);cursor:pointer;padding:8px 12px;line-height:1;border-radius:999px}
.cni-lightbox__close{top:8px;right:8px;font-size:20px}
.cni-lightbox__prev{left:8px}
.cni-lightbox__next{right:8px}
