/* ===== 核心特点：3D 环形轮播（无卡片容器） ===== */
.show{ margin:30px 0 10px; }
.show .sec{ margin:0 0 18px; }

.ringwrap{ position:relative; margin-top:4px; }

.ringstage{
  position:relative; height:520px;
  perspective:1500px; perspective-origin:50% 45%;
  overflow:hidden;
}

.ring{
  position:absolute; left:50%; top:34px;
  width:236px; margin-left:-118px; height:430px;
  transform-style:preserve-3d;
  transition:transform .85s cubic-bezier(.22,1,.36,1);
}

.ring .shot{
  position:absolute; inset:0; margin:0; width:236px;
  -webkit-user-drag:none; user-select:none; -webkit-user-select:none;
  cursor:grab;
  transform-style:preserve-3d;
  transition:opacity .6s ease, filter .6s ease;
  cursor:pointer;
}
.ring .shot figcaption{ display:none; }        /* 文字统一放到底部 */

.ring .shot .win{
  width:236px; height:430px;
  transition:box-shadow .5s ease, filter .5s ease;
}
.ring .shot .win img{
  width:100%; height:100%; object-fit:cover;
  -webkit-user-drag:none; user-select:none; -webkit-user-select:none;
  pointer-events:none;   /* 拖动交给容器处理，图片本身不接收指针事件 */
}
.ring .shot:hover .win{ transform:none; }       /* 关掉原来的上浮，避免和环形冲突 */

.ring .shot.is-front{ cursor:default; }
.ring .shot.is-front .win{
  outline:1px solid rgba(10,132,255,.22);
  outline-offset:1px;
}

/* 底部说明 + 圆点 + 箭头 */
.ringcap{
  text-align:center; min-height:46px; margin-top:8px;
  transition:opacity .3s;
}
.ringcap b{ display:block; font-size:15px; letter-spacing:.2px; }
.ringcap span{ display:block; color:var(--sub); font-size:12.5px; margin-top:3px; }

.ringdots{ display:flex; gap:7px; justify-content:center; margin-top:12px; }
.ringdots i{
  width:7px; height:7px; border-radius:99px; background:rgba(10,132,255,.22);
  transition:width .35s cubic-bezier(.22,1,.36,1), background .35s; cursor:pointer;
}
.ringdots i.on{ width:22px; background:linear-gradient(90deg,#0A84FF,#5E5CE6); }

/* 手机 / 窄屏：退化成横向滑动条（不做 3D） */
@media (max-width:820px){
  .ringstage{ height:auto; overflow:visible; perspective:none; }
  .ring{
    position:static; width:auto; margin:0; height:auto;
    transform:none !important;
    display:flex; gap:14px; align-items:flex-start;
    overflow-x:auto; scroll-snap-type:x mandatory;
    padding:4px 2px 10px; -webkit-overflow-scrolling:touch;
  }
  .ring .shot{
    position:relative; inset:auto; flex:0 0 auto; width:auto;
    opacity:1 !important; filter:none !important; transform:none !important;
    scroll-snap-align:center;
  }
  .ring .shot .win{ height:360px; }
  .ring .shot figcaption{ display:block; }
  .ringdots{ display:none; }
  .ringcap{ margin-top:2px; }
}

@media (prefers-reduced-motion:reduce){
  .ring{ transition:none; }
  .ring .shot{ transition:none; }
}

.ring:active .shot{cursor:grabbing;}
