.qing-marquee {
    overflow: hidden;
    width: 100%;
    container-type: inline-size;
}

.qing-marquee-track {
    display: flex;
    align-items: center;
    gap: var(--qing-gap, 20px);
    width: max-content;
    animation: qing-marquee-left var(--qing-speed, 30s) linear infinite;
}

/*
  每张图片宽度 = (容器宽 - gap*(n-1)) / n
  用 container query unit (cqw) 近似：1cqw = 容器宽度的1%
  item宽 = (100cqw - gap*(n-1)) / n
  gap 由 JS 控制不到，用 CSS calc 近似：
  width = calc( (100cqw - (var(--qing-visible,6) - 1) * var(--qing-gap,20px)) / var(--qing-visible,6) )
*/
.qing-marquee-item {
    flex-shrink: 0;
    width: calc( (100cqw - (var(--qing-visible, 6) - 1) * var(--qing-gap, 20px)) / var(--qing-visible, 6) );
    height: 240px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f9f9f9;
}

.qing-marquee-item img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.qing-marquee-item a {
    display: block;
    width: 100%;
    height: 100%;
}

@keyframes qing-marquee-left {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

.qing-marquee--right .qing-marquee-track {
    animation-name: qing-marquee-right;
}

@keyframes qing-marquee-right {
    from { transform: translateX(-50%); }
    to   { transform: translateX(0); }
}

.qing-marquee--pause:hover .qing-marquee-track {
    animation-play-state: paused;
}
