/* --------- BASE / UTIL --------- */
.ytiw-sm-block { display:block; }
.ytiw-sm-inline { display:inline-block; }
.ytiw-sm-border { box-sizing:border-box; }
.ytiw-sm-mx-auto { margin-left:auto; margin-right:auto; }
.ytiw-sm-img, .ytiw-sm-video { max-width:100%; height:auto; display:block; }

/* Aplicar border-radius às imagens e vídeos dentro dos containers */
.ytiw-single-container, .ytiw-gallery {
    overflow: hidden; /* Garante que o border-radius recorte os elementos internos */
}
.ytiw-single-container .ytiw-sm-img,
.ytiw-single-container .ytiw-sm-video,
.ytiw-gallery .ytiw-gallery-image {
    border-radius: inherit; /* Herda o border-radius do container pai */
}

/* --------- TÍTULO CUSTOM --------- */
.ytiw-sm-title { margin: 0 0 8px 0; line-height: 1.25; }

/* --------- DESCRIÇÃO --------- */
.ytiw-sm-desc { margin-top: 8px; line-height: 1.5; }

/* --------- SINGLE WIDGET --------- */
.ytiw-single-container { position:relative; display:block; box-sizing:border-box; }

/* --------- GALLERY (TROCA INSTÂNEA) --------- */
.ytiw-gallery {
  position: relative;
  display: block;
  box-sizing: border-box;
}

/* As imagens ficam empilhadas; só a ativa fica visível. */
.ytiw-gallery-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: none;      /* todas escondidas por padrão */
}
.ytiw-gallery-image.is-active { display: block; }

/* Avisos */
.ytiw-gallery-warning {
  padding: 8px 10px;
  border-left: 4px solid #d63638;
  background: #ffecec;
  color: #1d2327;
  margin: 6px 0 10px;
}

/* * YouTube responsivo no widget Single 
 * REGRA CORRIGIDA (v1.4.1): Aumentada a especificidade para .ytiw-single-container .ytiw-yt-wrap
 * para evitar conflitos com temas que definem 'width' genérica para 'div'.
 */
.ytiw-single-container .ytiw-yt-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
}
.ytiw-yt-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Overlay de texto — exibido sobre a mídia */
.ytiw-sm-overlay-text {
  position: absolute;
  inset: 0;
  display: flex;               /* alinhamento via justify-content/align-items inline */
  padding: 5px;
  pointer-events: none;        /* clique passa para a mídia/âncora por baixo */
  box-sizing: border-box;
}
.ytiw-sm-overlay-text:not(.is-active) { display: none; } /* usado na galeria com textos por imagem */