/* ============================================================
   首页 · 热门大图轮播（后台「上热门」控制）
   - 顶部标题栏 + 榜单名次 + 大小/热度/类型 + 简介 + CTA
   - 切换只动 opacity / transform
   ============================================================ */

.lyw-bn{
  position: relative;
  width: 100%;
  border-radius: 0;                 /* 不要圆角，避免四角被切出黑边 */
  overflow: hidden;
  background: #0d0a08;
  box-shadow: 0 18px 60px rgba(0, 0, 0, .75);   /* 去掉外圈金线，避免看着像"边" */
  isolation: isolate;
}

/* ---------- 顶部标题栏 ---------- */
.lyw-bn-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  height: 46px;
  padding: 0 18px;
  background: linear-gradient(180deg, #17110c, #0e0a07);
  border-bottom: 1px solid rgba(217, 180, 90, .22);
}
.lyw-bn-h{
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1px;
  color: #f2d99a;
}
.lyw-bn-h i{
  font-style: normal;
  font-size: 15px;
  filter: drop-shadow(0 0 8px rgba(255, 140, 60, .7));
}
.lyw-bn-tip{
  font-size: 12px;
  color: #7c7468;
  letter-spacing: .5px;
}

/* ---------- 舞台 ---------- */
.lyw-bn-stage{
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 6.4;
  min-height: 240px;
  max-height: 470px;
}

.lyw-bn-slide{
  position: absolute;
  inset: 0;
  display: block;
  opacity: 0;
  transform: scale(1.03);
  transition: opacity .7s ease, transform .9s ease;
  pointer-events: none;
  text-decoration: none;
  will-change: opacity, transform;
}
.lyw-bn-slide.on{
  opacity: 1;
  transform: scale(1);
  pointer-events: auto;
  z-index: 2;
}
.lyw-bn-slide img{
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

/* 没图时的兜底背景（渐变 + 纹理），保证文字区域不空 */
.lyw-bn-noimg{
  position: absolute; inset: 0;
  display: block;
  background:
    radial-gradient(70% 90% at 22% 30%, rgba(217, 180, 90, .22), transparent 62%),
    radial-gradient(60% 80% at 85% 75%, rgba(168, 50, 44, .28), transparent 60%),
    linear-gradient(135deg, #1a1410 0%, #0d0a08 55%, #171009 100%);
}
.lyw-bn-noimg::after{
  content: "";
  position: absolute; inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px);
  background-size: 4px 4px;
}

/* 左下角压暗，保证文字可读 */
/* 只在底部压一条渐隐，保证文字可读；不再整块压黑左侧 */
.lyw-bn-shade{
  position: absolute; inset: 0;
  background: linear-gradient(0deg,
    rgba(8, 7, 10, .90) 0%,
    rgba(8, 7, 10, .62) 18%,
    rgba(8, 7, 10, .22) 38%,
    rgba(8, 7, 10, 0) 58%);
  pointer-events: none;
}

/* ---------- 文案区 ---------- */
.lyw-bn-info{
  position: absolute;
  left: clamp(20px, 3.6vw, 52px);
  bottom: clamp(22px, 3.4vw, 44px);
  width: min(620px, 62%);
  display: flex;
  flex-direction: column;
  gap: 11px;
  pointer-events: none;
}

/* 榜单名次 */
.lyw-bn-rank{
  align-self: flex-start;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  padding: 5px 12px;
  border-radius: 4px;
  color: #fff;
  background: linear-gradient(90deg, #ff9a3c, #e8552b);
  box-shadow: 0 4px 16px rgba(232, 85, 43, .45);
}

/* 游戏名 */
.lyw-bn-t{
  font-family: "STKaiti", "KaiTi", "楷体", "STZhongsong", "Songti SC", serif;
  font-size: clamp(24px, 3.1vw, 40px);
  font-weight: 800;
  line-height: 1.2;
  color: #fff;
  letter-spacing: 1px;
  text-shadow:
    0 2px 6px rgba(0, 0, 0, 1),
    0 4px 22px rgba(0, 0, 0, .95),
    0 0 48px rgba(0, 0, 0, .8);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 大小 / 热度 / 类型 */
.lyw-bn-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.lyw-bn-meta .mi{
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12.5px;
  line-height: 1;
  padding: 6px 11px;
  border-radius: 5px;
  color: #dfe9f2;
  background: rgba(0, 0, 0, .58);
  border: 1px solid rgba(255, 255, 255, .1);
}
.lyw-bn-meta .mi i{ font-style: normal; font-size: 12px; }

/* 简介 */
.lyw-bn-desc{
  font-size: 13.5px;
  line-height: 1.75;
  color: rgba(238, 244, 250, .88);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 1), 0 2px 14px rgba(0, 0, 0, .9);
}

/* CTA 按钮（外观是按钮，实际仍是整张幻灯片链接的一部分） */
.lyw-bn-cta{
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  padding: 11px 24px;
  border-radius: 8px;
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: .5px;
  color: #1a1208;
  background: linear-gradient(180deg, #ffd98a, #d9a441);
  box-shadow: 0 8px 26px rgba(217, 164, 65, .42), inset 0 1px 0 rgba(255, 255, 255, .5);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.lyw-bn-cta b{ font-weight: 700; transition: transform .18s ease; }
.lyw-bn-slide:hover .lyw-bn-cta{
  filter: brightness(1.07);
  box-shadow: 0 12px 32px rgba(217, 164, 65, .58), inset 0 1px 0 rgba(255, 255, 255, .6);
}
.lyw-bn-slide:hover .lyw-bn-cta b{ transform: translateX(4px); }

/* ---------- 左右箭头 ---------- */
.lyw-bn-arrow{
  position: absolute;
  top: calc(50% + 23px);          /* 扣掉顶部标题栏高度，视觉居中 */
  margin-top: -25px;
  width: 50px; height: 50px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
  border: 1px solid rgba(217, 180, 90, .4);
  background: rgba(10, 8, 12, .55);
  color: #f2d99a;
  cursor: pointer;
  z-index: 4;
  padding: 0;
  backdrop-filter: blur(3px);
  transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.lyw-bn-arrow svg{ width: 21px; height: 21px; }
.lyw-bn-arrow:hover{
  background: rgba(217, 180, 90, .92);
  border-color: #f2d99a;
  color: #1a1208;
  transform: scale(1.06);
}
.lyw-bn-arrow.prev{ left: 16px; }
.lyw-bn-arrow.next{ right: 16px; }

/* ---------- 圆点 ---------- */
.lyw-bn-dots{
  position: absolute;
  right: 20px; bottom: 18px;
  display: flex; gap: 7px;
  z-index: 4;
}
.lyw-bn-dot{
  width: 9px; height: 9px;
  padding: 0;
  border-radius: 50%;
  border: 1px solid rgba(242, 217, 154, .55);
  background: transparent;
  cursor: pointer;
  transition: background .2s ease, width .25s ease, border-radius .25s ease;
}
.lyw-bn-dot.on{
  width: 22px;
  border-radius: 5px;
  background: linear-gradient(90deg, #f0d089, #c9a44c);
  border-color: #f2d99a;
}

/* ---------- 移动端 ---------- */
@media (max-width: 900px){
  .lyw-bn-head{ height: 40px; padding: 0 12px; }
  .lyw-bn-h{ font-size: 13.5px; letter-spacing: 0; }
  .lyw-bn-tip{ display: none; }
  .lyw-bn-stage{ aspect-ratio: 16 / 10; max-height: 340px; }
  .lyw-bn-info{ width: 84%; gap: 8px; bottom: 16px; }
  .lyw-bn-t{ font-size: 21px; }
  .lyw-bn-rank{ font-size: 11px; padding: 4px 9px; }
  .lyw-bn-meta .mi{ font-size: 11px; padding: 5px 8px; }
  .lyw-bn-desc{ font-size: 12px; -webkit-line-clamp: 1; }
  .lyw-bn-cta{ padding: 9px 18px; font-size: 13px; }
  .lyw-bn-arrow{ width: 36px; height: 36px; margin-top: -18px; }
  .lyw-bn-arrow svg{ width: 16px; height: 16px; }
  .lyw-bn-arrow.prev{ left: 8px; }
  .lyw-bn-arrow.next{ right: 8px; }
  .lyw-bn-dots{ right: 12px; bottom: 10px; }
}

/* 减少动效：不做缩放过渡 */
@media (prefers-reduced-motion: reduce){
  .lyw-bn-slide{ transition: opacity .2s linear; transform: none; }
  .lyw-bn-slide.on{ transform: none; }
}
