/* 轮播图改版：在官方 slideshow 样式之上的增量 */

.dh-slideshow-v2-wrap {
  margin-top: var(--dh-slideshow-v2-margin-top, 0);
  margin-bottom: var(--dh-slideshow-v2-margin-bottom, 0);
  padding-top: var(--dh-slideshow-v2-inner-pt, 0);
  padding-bottom: var(--dh-slideshow-v2-inner-pb, 0);
  box-sizing: border-box;
  /* 与 dh-media-carousel 一致 */
  --dh-slideshow-v2-radius: 4px;
}

@media screen and (max-width: 959px) {
  .dh-slideshow-v2-wrap {
    margin-top: calc(var(--dh-slideshow-v2-margin-top, 0px) * 0.5);
    margin-bottom: calc(var(--dh-slideshow-v2-margin-bottom, 0px) * 0.5);
    padding-top: calc(var(--dh-slideshow-v2-inner-pt, 0px) * 0.5);
    padding-bottom: calc(var(--dh-slideshow-v2-inner-pb, 0px) * 0.5);
  }
}

.dh-slideshow-v2 .slideshow-slide__buttons:empty {
  display: none;
  margin: 0;
  min-height: 0;
}

/* 翻页控件保持官方绝对定位，图层置于文本背景之上 */
.dh-slideshow-v2 {
  isolation: isolate;
  overflow: visible;
}

.dh-slideshow-v2 .slideshow__slider {
  position: relative;
  z-index: 1;
}

.dh-slideshow-v2 .slideshow__control {
  z-index: 20;
  pointer-events: auto;
}

.dh-slideshow-v2 .slideshow__control button {
  pointer-events: auto;
}

/* 单次滑动最多停一页：CSS snap-stop + JS 手势收尾校正 */
.dh-slideshow-v2 .slideshow__slider.slider {
  scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain;
}

.dh-slideshow-v2 .slideshow__slide {
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

/* 外轮廓四角圆角（固定 4px，与图片/视频轮播 dh-media-carousel 一致） */
@media screen and (max-width: 959px) {
  /* 避免 --slideshow-text-color-N 无效值（如 ", ,"）导致圆点/进度条透明 */
  .dh-slideshow-v2.slideshow-layout--text-bottom,
  .dh-slideshow-v2.slideshow-layout--text-overlap,
  .dh-slideshow-v2.slideshow-layout--text-bottom[current="1"],
  .dh-slideshow-v2.slideshow-layout--text-bottom[current="2"],
  .dh-slideshow-v2.slideshow-layout--text-bottom[current="3"],
  .dh-slideshow-v2.slideshow-layout--text-bottom[current="4"],
  .dh-slideshow-v2.slideshow-layout--text-bottom[current="5"],
  .dh-slideshow-v2.slideshow-layout--text-overlap[current="1"],
  .dh-slideshow-v2.slideshow-layout--text-overlap[current="2"],
  .dh-slideshow-v2.slideshow-layout--text-overlap[current="3"],
  .dh-slideshow-v2.slideshow-layout--text-overlap[current="4"],
  .dh-slideshow-v2.slideshow-layout--text-overlap[current="5"] {
    --control-item-color: var(--color-text);
  }

  .dh-slideshow-v2.slideshow-layout--text-bottom .slideshow-slide__media,
  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow-slide__media {
    border-radius: var(--dh-slideshow-v2-radius) var(--dh-slideshow-v2-radius) 0 0;
    overflow: hidden;
  }

  .dh-slideshow-v2.slideshow-layout--text-bottom .slideshow-slide__text-wrapper,
  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow-slide__text-wrapper {
    padding-bottom: var(--dh-slideshow-v2-mobile-text-bottom-gap, 40px);
  }

  .dh-slideshow-v2.slideshow-layout--text-bottom .slideshow-slide__text-wrapper {
    border-radius: 0 0 var(--dh-slideshow-v2-radius) var(--dh-slideshow-v2-radius);
    overflow: hidden;
  }

  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow-slide__text-wrapper {
    overflow: visible;
  }

  /* 文本在图下：文本无需高于图片 */
  .dh-slideshow-v2.slideshow-layout--text-bottom .slideshow-slide__text-wrapper {
    z-index: 1;
    padding-top: var(--dh-slideshow-v2-mobile-image-text-gap, 0);
  }

  /* 文本与图片重叠：文本及背景须高于图片 */
  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow__slide {
    overflow: visible;
  }

  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow-slide__media {
    position: relative;
    z-index: 1;
  }

  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow-slide__text-wrapper {
    position: relative;
    z-index: 2;
    padding-top: 0;
    padding-left: 20px;
    padding-right: 20px;
  }

  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow-slide__text {
    position: relative;
    z-index: 2;
    margin-top: calc(-40px + var(--dh-slideshow-v2-mobile-image-text-gap, 0));
    border-radius: 0 0 var(--dh-slideshow-v2-radius) var(--dh-slideshow-v2-radius);
    overflow: hidden;
  }

  .dh-slideshow-v2.slideshow-layout--text-bottom .slideshow-slide__text,
  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow-slide__text {
    padding-top: 0;
    padding-bottom: 0;
  }

  .dh-slideshow-v2.slideshow-layout--text-bottom .slideshow-slide__text > :first-child,
  .dh-slideshow-v2.slideshow-layout--text-overlap .slideshow-slide__text > :first-child {
    margin-top: 0;
  }
}

@media screen and (min-width: 960px) {
  .dh-slideshow-v2 .slideshow__slide {
    border-radius: var(--dh-slideshow-v2-radius);
    overflow: hidden;
  }
}

/* 非 text-bottom/overlap（文本叠在图上）移动端同样四角圆角 */
@media screen and (max-width: 959px) {
  .dh-slideshow-v2:not(.slideshow-layout--text-bottom):not(.slideshow-layout--text-overlap)
    .slideshow__slide {
    border-radius: var(--dh-slideshow-v2-radius);
    overflow: hidden;
  }
}
