/* ============================================================
   game 站栏目页通用样式（news 父栏目页优先，其他栏目页沿用）
   依赖 index.css 的全局变量与公共组件（header/footer/.ac）；幻灯 .np-foc 本页专属
   ============================================================ */

/* ============ 1. 栏目横幅：石板蓝渐变 + 中央标题 ============ */
.np-banner { position: relative; height: 250px; margin-top: 66px; overflow: hidden; display: flex; align-items: center; justify-content: center; background: linear-gradient(120deg, #2f4b73 0%, #41618f 62%, #5c7ba6 100%); transform-origin: center; animation: np-zoom-out 1.6s cubic-bezier(.22,1,.36,1) both; }
/* 装饰：左上 / 右下两个半透明大圆 + 顶部光线 */
.np-banner::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,.55) 30%, rgba(255,255,255,.9) 50%, rgba(255,255,255,.55) 70%, transparent 100%); }
.np-banner::after { content: ""; position: absolute; right: -140px; bottom: -190px; width: 380px; height: 380px; border-radius: 50%; background: rgba(255,255,255,.06); }
.np-banner .np-orb { position: absolute; width: 100%; height: 100%; background: rgba(255,255,255,.07); pointer-events: none; }
.np-banner-inner { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; text-align: center; animation: np-zoom-in 1.3s cubic-bezier(.16,1,.3,1) .35s both; }
.np-banner-inner h5 { margin: 0; font-size: 40px; font-weight: bold; color: #fff; letter-spacing: 12px; text-indent: 12px; text-shadow: 0 2px 14px rgba(15,23,42,.35); }
.np-banner-inner i { display: block; width: 72px; height: 2px; margin: 12px 0 10px; background: linear-gradient(90deg, transparent, rgba(255,255,255,.85), transparent); }
.np-banner-inner p { margin: 0; font-size: 14px; letter-spacing: 4px; font-family: Georgia, serif; color: rgba(255,255,255,.72); }
@keyframes np-zoom-out { from { transform: scale(1.12); } to { transform: scale(1); } }
@keyframes np-zoom-in { from { opacity: 0; transform: scale(.9); } to { opacity: 1; transform: scale(1); } }

/* ============ 2. 子栏目导航条：白底 + 分隔符 + 下划线 ============ */
.np-subnav { position: relative; z-index: 2; background: #fff; border-bottom: 1px solid var(--line); box-shadow: var(--sh2); text-align: center; }
.np-subnav a { position: relative; display: inline-block; height: 52px; line-height: 52px; padding: 0 24px; font-size: 17px; color: var(--tx2); transition: color .3s; }
.np-subnav a ~ a::after { content: "/"; position: absolute; left: -8px; color: #d6dee9; font-weight: 300; }
.np-subnav a::before { content: ""; position: absolute; left: 50%; bottom: 0; width: 0; height: 2px; background: var(--ac); transition: .3s; }
.np-subnav a:hover, .np-subnav a.active { color: var(--ac); font-weight: bold; }
.np-subnav a:hover::before, .np-subnav a.active::before { width: calc(100% - 48px); left: 24px; }
/* 紧跟子栏目导航条的首个区块：压缩顶部留白（64px→30px），贴紧导航条 */
/* 面包屑/子栏目导航 → 主体首区块：统一 64px（!important 覆盖静态页内联 26/30px） */
.np-subnav + .blk, .np-crumb + .blk { padding-top: 64px !important; }
/* 网格列表页分页区：白区间距统一 64px（!important 覆盖静态页内联 margin-top:34px） */
.pic-grid-wrap ~ .w { margin-top: 64px !important; }

/* ============ 3. 首行：左轮播 + 右新闻列表 ============ */
.np-row1 { display: grid; grid-template-columns: 560px 1fr; gap: 20px; align-items: stretch; }
/* 左侧幻灯 .np-foc（移植 game/news：大图 560x350、缩略图 136x85，均为 16:10） */
.np-foc { width: 560px; }
.np-foc-pic { position: relative; width: 100%; height: 350px; overflow: hidden; border-radius: var(--r); box-shadow: var(--sh2); }
.np-foc-imgs { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 0; padding: 0; list-style: none; }
.np-foc-imgs li { position: absolute; left: -100%; top: 0; width: 100%; height: 100%; overflow: hidden; opacity: 0; transition: left .5s ease, opacity .5s ease; }
.np-foc-imgs li.on { left: 0; opacity: 1; z-index: 3; }
.np-foc-imgs li.leaving { left: 0; opacity: 0; z-index: 2; }
.np-foc-imgs li a { display: block; height: 100%; }
.np-foc-imgs li img { display: block; width: 100%; height: 100%; object-fit: cover; }
.np-foc-cap { position: absolute; left: 0; bottom: 0; width: 100%; height: 40px; box-sizing: border-box; padding: 0 20px; background: rgba(15,23,42,.55); line-height: 40px; z-index: 4; }
.np-foc-cap ul { margin: 0; padding: 0; list-style: none; }
.np-foc-cap li { display: none; }
.np-foc-cap li.on { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.np-foc-cap a { color: #fff; font-size: 16px; transition: color .3s; }
.np-foc-cap a:hover { color: #cdddf2; }
.np-foc-thumbs { display: flex; justify-content: space-between; height: 85px; margin: 10px 0 0; padding: 0; list-style: none; }
.np-foc-thumbs li { width: 136px; height: 85px; box-sizing: border-box; border: 2px solid #dde5ef; background: #fff; box-shadow: 0 6px 14px rgba(15,23,42,.18); opacity: .55; cursor: pointer; transition: opacity .3s, border-color .3s; }
.np-foc-thumbs li img { display: block; width: 100%; height: 100%; object-fit: cover; }
.np-foc-thumbs li.on { border-color: var(--ac); opacity: 1; }
.np-foc-thumbs li:hover { opacity: .85; }
/* 右侧新闻列表：白卡 + 日期块 + 竖线 + 标题/摘要 + 右上角分类角标 */
.np-list { display: flex; flex-direction: column; gap: 20px; }
.np-list dl { position: relative; flex: 1; min-height: 0; display: flex; align-items: center; margin: 0; padding: 11px 24px 11px 16px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s, box-shadow .3s, border-color .3s; overflow: hidden; }
.np-list dl:hover { transform: translateY(-3px); border-color: rgba(65,97,143,.45); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.np-list dt { flex-shrink: 0; padding-right: 14px; text-align: center; color: var(--tx2); font-size: 13px; }
.np-list dt b { display: block; margin-bottom: 2px; font-size: 19px; font-weight: bold; color: var(--ac); letter-spacing: 0; }
.np-list dd { flex: 1; margin: 0; padding-left: 14px; border-left: 1px solid var(--line); min-width: 0; }
.np-list dd h2 { margin: 0; }
.np-list dd h2 a { display: block; height: 26px; line-height: 26px; font-size: 16px; color: var(--tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .3s; }
.np-list dl:hover dd h2 a { color: var(--ac); }
.np-list dd p { margin: 6px 0 0; height: 40px; line-height: 20px; font-size: 13px; color: var(--tx2); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
/* 右上角菱形分类角标 */
.np-list .jiao1 { position: absolute; top: 0; right: 0; width: 75px; height: 75px; padding: 0; border-left: none; background: linear-gradient(to bottom left, var(--jc, rgba(65,97,143,.14)) 50%, transparent 50%); border-radius: 0 var(--r) 0 0; }
.np-list .jiao1 .labeltxt { display: block; width: 75px; height: 75px; line-height: 36px; text-align: center; transform: rotate(45deg) translateX(-3px); font-size: 13px; color: var(--jt, var(--ac)); }

/* ============ 4. 图文速递：1 大图 + 3 小卡 / 第二行 5 小卡 ============ */
.pc-grid { display: flex; gap: 20px; }
/* 大图卡 */
.pc-big { position: relative; width: 468px; height: 292.5px; margin: 0; padding: 0; list-style: none; flex-shrink: 0; border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); transition: box-shadow .35s ease, transform .35s ease; }
.pc-big:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.pc-big a { display: block; width: 100%; height: 100%; }
.pc-big img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1.2s ease; }
.pc-big:hover img { transform: scale(1.12); }
.pc-big .pc-mask { position: absolute; inset: 0; background: rgba(15,23,42,.42); opacity: 0; z-index: 3; transition: opacity .35s; pointer-events: none; }
.pc-big:hover .pc-mask { opacity: 1; }
.pc-big .pc-tit { position: absolute; left: 0; bottom: 0; width: 100%; box-sizing: border-box; padding: 34px 16px 14px; background: linear-gradient(transparent, rgba(15,23,42,.72)); color: #fff; font-size: 16px; font-weight: bold; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; z-index: 4; transition: transform .9s cubic-bezier(.25,.6,.35,1), opacity .9s cubic-bezier(.25,.6,.35,1); }
.pc-big:hover .pc-tit { transform: translateY(100%); opacity: 0; }
.pc-big .pc-cat { position: absolute; top: 14px; left: 14px; z-index: 4; padding: 3px 12px; font-size: 13px; color: #fff; background: rgba(47,75,115,.85); border-radius: 20px; transition: opacity .35s; }
.pc-big:hover .pc-cat { opacity: 0; }
.pc-big .pc-btn { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) scale(.82); z-index: 5; padding: 9px 26px; font-size: 14px; color: var(--ac-d); font-weight: bold; border: 1px solid #fff; border-radius: 6px; background: rgba(255,255,255,.92); opacity: 0; white-space: nowrap; pointer-events: none; transition: all .35s ease; }
.pc-big:hover .pc-btn { opacity: 1; transform: translate(-50%,-50%) scale(1); pointer-events: auto; }
.pc-big .pc-btn:hover { background: var(--ac); border-color: #fff; color: #fff; }
/* 父栏目「大图位」改为轮播（468x292.5；沿用旧版轮播样式，无缩略图） */
.pc-slide { position: relative; width: 468px; height: 292.5px; flex-shrink: 0; border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); }
.pc-slide .car, .pc-slide .car-main { height: 100%; }
.pc-slide .car-main { border-radius: 0; box-shadow: none; }
/* 小图卡（第一行 3 列 / 第二行 5 列同构） */
.pc-card { position: relative; width: 224px; height: 292.5px; box-sizing: border-box; list-style: none; margin: 0; padding: 0; background: #fff; border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); transition: transform .3s, box-shadow .3s, border-color .3s; flex-shrink: 0; }
.pc-card:hover { transform: translateY(-4px); border-color: rgba(65,97,143,.45); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.pc-card a { display: block; width: 100%; height: 100%; }
.pc-card .im { position: relative; height: 140px; overflow: hidden; }
.pc-card .im img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1.2s ease; }
.pc-card:hover .im img { transform: scale(1.12); }
.pc-card .pc-mask { position: absolute; left: 0; top: 0; width: 100%; height: 140px; background: rgba(15,23,42,.4); opacity: 0; z-index: 3; transition: opacity .35s; pointer-events: none; }
.pc-card:hover .pc-mask { opacity: 1; }
.pc-card .bd { display: flex; align-items: flex-start; height: 150.5px; padding: 16px 14px 0; box-sizing: border-box; }
.pc-card .im .pc-tit { position: absolute; left: 0; right: 0; bottom: 0; box-sizing: border-box; padding: 22px 10px 8px; background: linear-gradient(transparent, rgba(15,23,42,.72)); color: #fff; font-size: 14px; font-weight: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; z-index: 5; transition: transform .9s cubic-bezier(.25,.6,.35,1), opacity .9s cubic-bezier(.25,.6,.35,1); }
.pc-card:hover .im .pc-tit { transform: translateY(100%); opacity: 0; }
.pc-card:hover .bd h2 { color: var(--ac); }
.pc-card .bd p { position: relative; z-index: 4; margin: 0; height: 54px; line-height: 18px; font-size: 13px; color: var(--tx2); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; transition: color .6s ease; }
.pc-card:hover .bd p { color: rgba(255,255,255,.78); }
.pc-card .pc-ov { position: absolute; left: 0; width: 100%; top: 216px; bottom: 76px; background: linear-gradient(135deg, rgba(30,44,68,.92), rgba(15,23,42,.96)); z-index: 3; pointer-events: none; transition: top .6s ease, bottom .6s ease; }
.pc-card:hover .pc-ov { top: 140px; bottom: 0; }
.pc-card .pc-cat { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%); padding: 3px 14px; font-size: 13px; color: var(--ac); border: 1px solid rgba(65,97,143,.55); border-radius: 15px; z-index: 4; white-space: nowrap; transition: opacity .35s, transform .35s; }
.pc-card:hover .pc-cat { opacity: 0; transform: translateX(-50%) scale(.9); }
.pc-card .pc-btn { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%) scale(.85); padding: 3px 18px; font-size: 13px; color: var(--ac-d); font-weight: bold; background: #fff; border: 1px solid #fff; border-radius: 15px; z-index: 4; white-space: nowrap; opacity: 0; pointer-events: none; transition: all .35s ease; }
.pc-card:hover .pc-btn { opacity: 1; transform: translateX(-50%) scale(1); pointer-events: auto; }
.pc-card .pc-btn:hover { background: var(--ac-d); color: #fff; }
/* 第二行 5 列 */
.pc-row2 { display: flex; gap: 20px; margin-top: 20px; }

/* ============ 5. 响应式 ============ */
@media (max-width: 1240px) {
  .np-row1 { grid-template-columns: 1fr; }
  .np-foc { width: 100%; }
  .pc-grid { flex-wrap: wrap; }
  .pc-big { width: 100%; height: 300px; }
  .pc-slide { width: 100%; height: 300px; }
  .pc-row2 { flex-wrap: wrap; }
}

/* ===== 新闻列表页：两列图文列表 .np-items + 分页 .np-pager ===== */
.np-items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 4px 0 0; }
.np-item { position: relative; display: flex; align-items: center; box-sizing: border-box; min-height: 117px; margin: 0; padding: 16px 20px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.np-item:hover { transform: translateY(-3px); border-color: rgba(65,97,143,.45); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.np-item dt { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-shrink: 0; width: 136px; height: 85px; text-align: center; color: var(--tx2); font-size: 16px; }
.np-item.pic dt { overflow: hidden; border-radius: 4px; }
.np-item.pic dt a { display: block; width: 100%; height: 100%; }
.np-item.pic dt img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.np-item.pic:hover dt img { transform: scale(1.06); }
.np-item:not(.pic) dt { background: linear-gradient(135deg, rgba(65,97,143,.10), rgba(65,97,143,.04)); border-radius: 4px; }
.np-item dt b { display: block; margin-bottom: 3px; line-height: 1.1; font-size: 24px; font-weight: bold; color: var(--ac); }
.np-item dd { flex: 1; min-width: 0; margin: 0 0 0 14px; padding-left: 14px; border-left: 1px solid var(--line); }
.np-item dd h2 { margin: 0; }
.np-item dd h2 a { display: block; height: 26px; line-height: 26px; font-size: 16px; font-weight: bold; color: var(--tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .3s; }
.np-item dd h2 a:hover { color: var(--ac); }
.np-item dd p { margin: 8px 0 0; height: 44px; line-height: 22px; font-size: 13px; color: var(--tx2); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.np-pager { margin: 30px 0 0; text-align: center; font-size: 0; }
.np-pager p { margin: 0; }
.np-pager a, .np-pager b { display: inline-block; vertical-align: middle; margin: 0 4px; padding: 8px 15px; border: 1px solid var(--line); border-radius: 4px; background: #fff; color: var(--tx2); font-size: 14px; font-weight: normal; line-height: 20px; text-decoration: none; transition: color .2s, border-color .2s, background .2s; }
.np-pager a:hover { color: var(--ac); border-color: var(--ac); }
.np-pager b { background: var(--ac); border-color: var(--ac); color: #fff; }

/* ===== 父栏目聚合列表卡（tempid 9：新闻/游戏资料/技术文档父栏目共用） ===== */
.nl-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 4px 0 0; }
.nl-card { position: relative; display: flex; box-sizing: border-box; margin: 0; padding: 16px 20px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.nl-card:hover { transform: translateY(-3px); border-color: rgba(65,97,143,.45); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.nl-card dt { position: relative; flex-shrink: 0; width: 200px; height: 125px; overflow: hidden; border-radius: 4px; }
.nl-card dt a { display: block; width: 100%; height: 100%; }
.nl-card dt img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.nl-card:hover dt img { transform: scale(1.06); }
.nl-card dt:not(:has(img)) { display: flex; flex-direction: column; justify-content: center; align-items: center; background: linear-gradient(135deg, rgba(65,97,143,.10), rgba(65,97,143,.04)); text-align: center; }
.nl-card dt b { display: block; margin-bottom: 3px; line-height: 1.1; font-size: 24px; font-weight: bold; color: var(--ac); }
.nl-card dt { color: var(--tx2); font-size: 13px; }
.nl-card dd { flex: 1; min-width: 0; display: flex; flex-direction: column; justify-content: center; margin: 0 0 0 16px; padding: 0 64px 0 0; }
.nl-card dd h2 { margin: 0; }
.nl-card dd h2 a { display: block; font-size: 16px; font-weight: bold; color: var(--tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .3s; }
.nl-card dd h2 a:hover { color: var(--ac); }
.nl-card dd p { margin: 8px 0 10px; font-size: 13px; line-height: 22px; height: 44px; color: var(--tx2); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.nl-card .nl-time { font-size: 13px; color: var(--tx2); }
.nl-jiao { position: absolute; top: 0; right: 0; flex: none !important; margin: 0 !important; padding: 0 !important; width: 75px; height: 75px; background: linear-gradient(to bottom left, var(--jc, rgba(65,97,143,.14)) 50%, transparent 50%); border-radius: 0 var(--r) 0 0; }
.nl-jiao p { margin: 0; padding: 0; width: 75px; height: 75px; line-height: 36px; text-align: center; transform: rotate(45deg) translateX(-3px); background: none; border-radius: 0; color: var(--jt, var(--ac)); font-size: 13px; height: auto; }
@media (max-width: 1240px) {
  .np-items { grid-template-columns: minmax(0, 1fr); }
  .nl-grid { grid-template-columns: minmax(0, 1fr); }
}

/* =====  新闻内容页（资讯详情）===== */
/* 面包屑 */
.np-crumb { position: relative; z-index: 2; background: #fff; border-bottom: 1px solid var(--line); box-shadow: var(--sh2); }
.np-crumb .w { display: flex; align-items: center; height: 48px; font-size: 13px; color: var(--tx2); }
.np-crumb a { color: var(--tx2); }
.np-crumb a:hover { color: var(--ac); }
.np-crumb .fr { flex: none; margin-left: auto; padding: 4px 16px; border: 1px solid var(--line); border-radius: 20px; transition: color .25s, background .25s, border-color .25s; }
.np-crumb .fr:hover { color: #fff; background: var(--ac); border-color: var(--ac); }

/* 两栏骨架：左正文 1fr + 右侧栏 380px */
.np-crow { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 20px; align-items: start; margin-top: 4px; }
.np-crow > * { min-width: 0; }
/* 内容页主体底部白区与其余页面 .blk 底距对齐（64px，覆盖模板内联 46px） */
section.blk:has(> .w > .np-crow) { padding-bottom: 64px !important; }

/* 左栏：正文卡 */
.np-art { padding: 30px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); }
.np-art h1 { font-size: 24px; line-height: 36px; font-weight: bold; text-align: center; }
.np-art-meta { margin: 14px 0 24px; padding-bottom: 18px; border-bottom: 1px dashed var(--line); text-align: center; font-size: 13px; color: var(--tx2); }
.np-art-meta span { margin: 0 14px; }
.np-art-meta span + span::before { content: "|"; margin-right: 14px; color: #d6dee9; font-weight: 300; }

/* 正文排版 */
.np-txt { font-size: 15px; line-height: 30px; color: var(--tx); word-break: break-word; }
.np-txt p { margin: 0 0 18px; }
.np-txt img { max-width: 100%; height: auto; margin: 20px auto; border-radius: 4px; }
.np-txt a { color: var(--ac); }
.np-txt h2, .np-txt h3, .np-txt h4 { margin: 26px 0 14px; line-height: 1.45; font-weight: bold; }
.np-txt h2 { font-size: 20px; }
.np-txt h3 { font-size: 18px; }
.np-txt h4 { font-size: 16px; }
.np-txt ul, .np-txt ol { margin: 0 0 18px; padding-left: 26px; }
.np-txt ul { list-style: disc; }
.np-txt ol { list-style: decimal; }
.np-txt li { margin-bottom: 8px; }
.np-txt blockquote { margin: 20px 0; padding: 14px 20px; border-left: 3px solid var(--ac); border-radius: 0 4px 4px 0; background: var(--bg2); color: var(--tx2); }
.np-txt table { width: 100%; margin: 20px 0; border-collapse: collapse; font-size: 14px; }
.np-txt th, .np-txt td { padding: 9px 12px; border: 1px solid var(--line); }
.np-txt th { background: var(--bg2); font-weight: bold; }

/* 底部分页 + 上下篇 */
.np-art-page { margin: 26px 0 0; }
.np-art-page:empty { display: none; }
/* ECMS 分页前缀“当前页/总页数”去按钮化（该链接固定带 title="Page"） */
.np-art-page > a[title="Page"] { padding: 0; border: 0; background: none; color: var(--tx2); font-size: 14px; }
.np-art-page > a[title="Page"] b { padding: 0; border: 0; background: none; color: var(--ac); font-size: 14px; }
.np-art-np { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; margin-top: 26px; padding-top: 20px; border-top: 1px dashed var(--line); font-size: 14px; }
.np-art-np p { display: flex; margin: 0; min-width: 0; }
.np-art-np em { flex: none; font-style: normal; color: var(--tx2); }
.np-art-np a { flex: 1; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

/* 右栏：侧栏卡（复用首页 .sec 区块头 + .rk 排行） */
.np-side { display: flex; flex-direction: column; gap: 20px; }
.np-cd { background: #fff; border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); }
.np-cd .sec { height: 44px; margin: 0; padding: 0 15px; align-items: center; gap: 10px; border-bottom: 1px solid var(--line); }
.np-cd .sec h2 { flex: none; padding-left: 8px; font-size: 17px; white-space: nowrap; }
.np-cd .sec .more { margin-left: auto; font-size: 13px; }
.np-cd .rk li:first-child { border-top: 0; }

/* 推荐图文 3行2列 */
.np-pics { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; padding: 15px; }
.np-pics li { position: relative; aspect-ratio: 16 / 10; border-radius: 4px; overflow: hidden; }
.np-pics li a { display: block; height: 100%; }
.np-pics img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.np-pics li:hover img { transform: scale(1.1); }
.np-pics .tt { position: absolute; left: 0; right: 0; bottom: 0; padding: 16px 10px 7px; background: linear-gradient(transparent, rgba(15,23,42,.78)); color: #fff; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: transform .5s cubic-bezier(.25,.6,.35,1), opacity .5s; }
.np-pics li:hover .tt { transform: translateY(100%); opacity: 0; }
.np-pics .mk { position: absolute; inset: 0; display: grid; place-items: center; background: rgba(15,23,42,.45); opacity: 0; transition: opacity .35s; }
.np-pics li:hover .mk { opacity: 1; }
.np-pics .mk b { padding: 4px 14px; border: 1px solid rgba(255,255,255,.85); border-radius: 999px; color: #fff; font-size: 13px; font-weight: 400; }

/* 内容页响应式 */
@media (max-width: 1180px) {
  .np-crow { grid-template-columns: 1fr 320px; gap: 16px; }
  .np-art { padding: 26px 24px; }
}
@media (max-width: 960px) {
  .np-crow { grid-template-columns: 1fr; }
}

/* ===== 图片频道子栏目列表页：2行4列图片网格 .pic-grid-wrap（点卡弹图集轮播） ===== */
.pic-grid-wrap { width: 1200px; margin: 64px auto 0; }
.pic-grid-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.pic-grid-list li { position: relative; width: 100%; aspect-ratio: 16 / 10; overflow: hidden; cursor: pointer; background: #111; border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s ease, box-shadow .3s ease; }
.pic-grid-list li:hover { transform: translateY(-3px); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.pic-grid-list li a { display: block; width: 100%; height: 100%; }
.pic-grid-list img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
/* 底部标题栏 */
.pic-grid-list .v-tit { position: absolute; left: 0; bottom: 0; width: 100%; height: 30px; line-height: 30px; padding: 0 0 0 10px; color: #fff; font-size: 14px; background: rgba(15, 23, 42, .45); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: opacity .3s ease; z-index: 2; box-sizing: border-box; }
/* Hover 蒙层 + 中央"查看图集"按钮 */
.pic-grid-list .v-hover { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 3; display: flex; align-items: center; justify-content: center; background: rgba(15, 23, 42, 0); opacity: 0; transition: opacity .3s ease; }
.pic-grid-list .v-hover::after { content: "查看图集"; display: inline-block; padding: 8px 24px; border: 1px solid rgba(255, 255, 255, .65); border-radius: 18px; color: #fff; font-size: 15px; font-weight: 500; white-space: nowrap; background: rgba(15, 23, 42, .4); transform: scale(.8); transition: opacity .25s ease .15s, transform .25s ease .15s, background .2s, border-color .2s; opacity: 0; cursor: pointer; }
.pic-grid-list li:hover .v-hover { opacity: 1; background: rgba(15, 23, 42, .4); }
.pic-grid-list li:hover .v-tit { opacity: 0; }
.pic-grid-list li:hover img { transform: scale(1.04); }
.pic-grid-list li:hover .v-hover::after { opacity: 1; transform: scale(1); }
.pic-grid-list li:hover .v-hover:hover::after { border-color: #fff; background: rgba(47, 107, 255, .55); }

/* 列表页响应式 */
@media (max-width: 1240px) {
  .pic-grid-wrap { width: 100%; padding: 0 20px; box-sizing: border-box; }
  .pic-grid-list { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}

/* ===== 图片集内容页：大图浏览 .gv-stage / 缩略图 .gv-thumbs / 列表 .gv-list ===== */
.gv-intro { margin: 14px 0 0; padding: 12px 16px; background: linear-gradient(135deg, rgba(47,107,255,.08), rgba(47,107,255,.03)); border-left: 3px solid var(--ac); border-radius: 4px; color: var(--tx2); font-size: 14px; line-height: 24px; }
.gv-stage { position: relative; margin: 18px 0 0; aspect-ratio: 16 / 10; background: #10151f; border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); }
.gv-stage img { display: block; width: 100%; height: 100%; object-fit: contain; opacity: 1; transition: opacity .2s ease; }
.gv-arr { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 86px; border: 0; padding: 0; background: rgba(0, 0, 0, .55); color: #fff; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .3s, opacity .3s; z-index: 3; }
.gv-arr svg { width: 22px; height: 22px; }
.gv-arr.l { left: 0; }
.gv-arr.r { right: 0; }
.gv-arr:hover { background: rgba(47, 107, 255, .85); }
.gv-arr.off { opacity: 0; pointer-events: none; }
.gv-bar { position: absolute; left: 0; right: 0; bottom: 0; display: flex; align-items: center; gap: 12px; padding: 26px 16px 9px; background: linear-gradient(transparent, rgba(10, 14, 22, .82)); color: #fff; z-index: 2; pointer-events: none; }
.gv-cap { flex: 1; min-width: 0; align-self: flex-end; padding: 4px 10px; border-radius: 4px; background: rgba(10, 14, 22, .55); font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gv-num { flex: none; align-self: flex-end; padding: 4px 10px; border-radius: 4px; background: rgba(10, 14, 22, .55); font-size: 13px; color: rgba(255, 255, 255, .75); }
.gv-num b { color: #fff; font-size: 16px; }
.gv-thumbs { display: grid; grid-auto-flow: column; grid-auto-columns: 132px; gap: 10px; margin: 14px 0 0; padding: 10px; list-style: none; background: #f4f6fa; border: 1px solid var(--line); border-radius: var(--r); overflow-x: auto; }
.gv-thumbs li { width: 132px; height: 82px; border-radius: 4px; overflow: hidden; cursor: pointer; opacity: .68; outline: 2px solid transparent; outline-offset: -2px; transition: opacity .25s, outline-color .25s; }
.gv-thumbs li a { display: block; width: 100%; height: 100%; }
.gv-thumbs li img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gv-thumbs li:hover { opacity: 1; }
.gv-thumbs li.on { opacity: 1; outline-color: var(--ac); }
.gv-tools { display: flex; align-items: center; gap: 14px; margin: 16px 0 0; }
.gv-toggle { padding: 8px 20px; border: 1px solid var(--line); border-radius: 4px; background: #fff; color: var(--tx); font-size: 13px; cursor: pointer; transition: color .2s, border-color .2s, background .2s; }
.gv-toggle:hover { color: #fff; border-color: var(--ac); background: var(--ac); }
.gv-cmt { padding: 8px 20px; border: 1px solid var(--line); border-radius: 4px; background: #fff; color: var(--tx); font-size: 13px; text-decoration: none; transition: color .2s, border-color .2s, background .2s; }
.gv-cmt:hover { color: #fff; border-color: var(--ac); background: var(--ac); }
.gv-tip { margin-left: auto; font-size: 13px; color: var(--tx2); }
/* 列表查看（[list_morepic] 输出 li > .picimg/.pictxt） */
.pvl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 18px 0 0; padding: 0; list-style: none; }
.pvl[hidden] { display: none; }
.pvl li { background: #fff; border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); cursor: pointer; transition: transform .3s ease, box-shadow .3s ease; }
.pvl li:hover { transform: translateY(-3px); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.pvl .picimg { aspect-ratio: 16 / 10; overflow: hidden; background: #10151f; }
.pvl .picimg img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s ease; }
.pvl li:hover .picimg img { transform: scale(1.06); }
.pvl .pictxt h3 { margin: 0; padding: 9px 12px; font-size: 13px; font-weight: normal; color: var(--tx2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pvl .pictxt h3 span { color: var(--ac); margin-left: 6px; }
.gv-empty { margin: 16px 0 0; color: var(--tx2); font-size: 14px; }
@media (max-width: 1240px) {
  .gv-list { grid-template-columns: repeat(2, 1fr); }
}

/* ===== 下载封面：卡片 hover 双按钮（查看演示 / 前往下载） ===== */
.pc-btns { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%) scale(.85); display: flex; gap: 10px; z-index: 6; opacity: 0; pointer-events: none; white-space: nowrap; transition: all .35s ease; }
.pc-big .pc-btns { top: 50%; bottom: auto; transform: translate(-50%,-50%) scale(.85); }
.pc-big:hover .pc-btns { opacity: 1; transform: translate(-50%,-50%) scale(1); pointer-events: auto; }
.pc-card:hover .pc-btns { opacity: 1; transform: translateX(-50%) scale(1); pointer-events: auto; }
.pc-btns a { display: inline-block; padding: 8px 20px; font-size: 13px; color: #fff; border: 1px solid #fff; border-radius: 6px; background: rgba(15,23,42,.35); transition: all .25s ease; }
.pc-btns a:hover { background: var(--ac); border-color: #fff; color: #fff; }

/* ===== 下载子栏目列表页：软件下载卡片 .sd-list（grid 每行两列，左图右文，参照 game softdown） ===== */
.sd-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 4px 0 0; }
.sd-item { display: flex; align-items: flex-start; padding: 16px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.sd-item:hover { transform: translateY(-3px); border-color: rgba(65,97,143,.45); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.sd-img { flex: none; display: block; width: 224px; height: 140px; border-radius: 4px; overflow: hidden; }
.sd-img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.sd-item:hover .sd-img img { transform: scale(1.05); }
.sd-bd { flex: 1; min-width: 0; position: relative; box-sizing: border-box; height: 140px; margin-left: 20px; padding: 2px 0 44px; }
.sd-bd h2 { height: 28px; font-size: 19px; line-height: 28px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sd-bd h2 a { color: var(--tx); transition: color .25s ease; }
.sd-bd h2 a:hover { color: var(--ac); }
.sd-bd p { margin: 8px 0 0; height: 66px; font-size: 13px; line-height: 22px; color: var(--tx2); overflow: hidden; }
.sd-bd p strong { margin-right: 4px; color: var(--ac); font-weight: bold; }
.sd-acts { position: absolute; left: 0; bottom: 0; display: flex; gap: 12px; }
.sd-a { display: inline-block; padding: 7px 22px; font-size: 13px; line-height: 18px; color: var(--ac); background: #fff; border: 1px solid var(--ac); border-radius: 4px; transition: all .25s ease; }
.sd-a:hover { color: #fff; background: var(--ac); }
.sd-a.pri { color: #fff; background: var(--ac); }
.sd-a.pri:hover { background: #31496b; border-color: #31496b; }
@media (max-width: 1240px) { .sd-list { grid-template-columns: minmax(0, 1fr); } }
/* ===== 下载内容页：.dl-*（tempid=11，左正文 + 右侧栏 400px） ===== */
.np-crow.w400 { grid-template-columns: minmax(0, 1fr) 400px; }
.dl-hero { display: flex; align-items: stretch; gap: 20px; margin-top: 18px; }
.dl-pic { flex: none; display: block; width: 360px; height: 225px; border-radius: 4px; overflow: hidden; }
.dl-pic img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.dl-pic:hover img { transform: scale(1.04); }
.dl-side { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.dl-info { display: grid; grid-template-columns: auto 1fr auto 1fr; gap: 12px 10px; margin: 2px 0 0; align-content: start; }
.dl-info dt { color: var(--tx2); font-size: 13px; line-height: 22px; white-space: nowrap; }
.dl-info dd { margin: 0; min-width: 0; font-size: 13px; line-height: 22px; color: var(--tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dl-info dd.dl-fj { grid-column: 2 / -1; white-space: normal; overflow: visible; text-overflow: clip; word-break: break-all; }
.dl-acts { display: flex; justify-content: space-between; gap: 8px; margin-top: auto; padding-top: 14px; }
.dl-btn { display: inline-flex; align-items: center; justify-content: center; padding: 10px 14px; font-size: 15px; letter-spacing: 2px; text-indent: 2px; white-space: nowrap; border-radius: 4px; border: 1px solid var(--ac); transition: all .25s ease; }
.dl-btn.pri { color: #fff; background: var(--ac); }
.dl-btn.pri:hover { background: #31496b; border-color: #31496b; }
.dl-btn.ghost { color: var(--ac); background: #fff; }
.dl-btn.ghost:hover { color: #fff; background: var(--ac); }
.dl-say, .dl-urls, .dl-tags { margin-top: 22px; }
.dl-say h3, .dl-urls h3, .dl-tags h3 { margin: 0 0 10px; padding-left: 10px; border-left: 3px solid var(--ac); font-size: 16px; line-height: 22px; }
.dl-say-txt { font-size: 14px; line-height: 26px; color: var(--tx2); }
.dl-urls-list a, .dl-tags-list a { display: inline-block; margin: 0 30px 10px 0; padding: 7px 20px; font-size: 13px; color: var(--ac); background: rgba(65,97,143,.06); border: 1px solid rgba(65,97,143,.35); border-radius: 4px; transition: all .25s ease; }
.dl-urls-list a:hover, .dl-tags-list a:hover { color: #fff; background: var(--ac); border-color: var(--ac); }
.dl-note { margin: 2px 0 0; padding: 0; list-style: none; }
.dl-note li { position: relative; padding: 0 0 0 16px; font-size: 13px; line-height: 26px; color: var(--tx2); }
.dl-note li::before { content: ""; position: absolute; left: 2px; top: 11px; width: 6px; height: 6px; border-radius: 50%; background: var(--ac); opacity: .55; }

/* ===== 商城内容页：.spd-*（tempid=12，复用 .dl-* 布局） ===== */
.spd-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 14px; margin: 12px 0 0; padding: 10px 14px; background: rgba(65,97,143,.05); border-radius: 4px; }
.spd-price .mk { font-size: 13px; color: var(--tx2); }
.spd-price .mk del { color: #a8b0bb; }
.spd-price .now { color: #e8541f; font-size: 13px; }
.spd-price .now b { font-size: 24px; font-weight: 800; }
.spd-price .fen { margin-left: auto; font-size: 13px; color: var(--tx2); }
.spd-bigpic { border-radius: 4px; overflow: hidden; }
.spd-bigpic img { display: block; width: 100%; }
.dl-say-txt img { max-width: 100%; }

/* ===== 商城内容页2：meta 六栏均布 + 会员等级优惠 + 四按钮（20260920f） ===== */
.spd-meta6 { justify-content: space-between; }
.spd-meta6 span { margin: 0; }
.spd-meta6 span + span::before { content: none; }
.spd-click { display: none; }
.dl-side .spd-price { margin: 0; }
.dl-side .dl-acts { margin-top: auto; }
.spd-mid { flex: 1; display: flex; flex-direction: column; justify-content: space-between; gap: 10px; padding: 8px 0 0; }
.spd-mid .spd-price { margin: 0; }
.spd-lv { margin: 10px 0 0; padding: 10px 14px; list-style: none; display: flex; justify-content: space-between; background: rgba(65,97,143,.05); border-radius: 4px; font-size: 13px; }
.spd-lv li { display: flex; flex-direction: column; gap: 2px; }
.spd-lv i { font-style: normal; color: var(--tx2); }
.spd-lv b { color: #e8541f; font-weight: 600; }
.dl-acts .dl-btn { flex: 1; min-width: 0; padding: 10px 6px; font-size: 14px; letter-spacing: 1px; text-indent: 1px; }

/* ===== 商城列表页：商品展示卡 .sc-*（tempid=6，四列悬停遮罩） ===== */.sc-list { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.sc-list li { position: relative; height: 192px; overflow: hidden; cursor: pointer; border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s ease, box-shadow .3s ease; }
.sc-list li:hover { transform: translateY(-3px); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.sc-default { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background: #eef1f5; }
.sc-default img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.sc-list li:hover .sc-default img { transform: scale(1.05); }
.sc-info { position: absolute; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: space-between; padding: 9px 14px; background: rgba(255,255,255,.55); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); transition: transform .5s ease, opacity .5s ease; }
.sc-list li:hover .sc-info { transform: translateY(100%); opacity: 0; }
.sc-title { flex: 1; margin: 0; font-size: 14px; font-weight: normal; color: var(--tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sc-price { margin: 0 0 0 12px; font-size: 13px; color: #e8541f; white-space: nowrap; }
.sc-price span { font-size: 18px; font-weight: 800; }
.sc-mask { position: absolute; top: 0; left: -100%; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 14px 14px 54px; background: rgba(47,72,105,.88); color: #fff; text-align: center; transition: left .3s ease; }
.sc-list li:hover .sc-mask { left: 0; }
.sc-mask-title { max-width: 100%; margin: 0; font-size: 14px; font-weight: normal; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; opacity: 0; transform: translateX(-100%); transition: opacity .25s ease .1s, transform .3s ease .1s; }
.sc-list li:hover .sc-mask-title { opacity: 1; transform: translateX(0); font-weight: bold; }
.sc-mask-desc { margin: 0; font-size: 13px; line-height: 20px; color: rgba(255,255,255,.72); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; opacity: 0; transform: translateX(-100%); transition: opacity .25s ease .2s, transform .3s ease .2s; }
.sc-list li:hover .sc-mask-desc { opacity: 1; transform: translateX(0); }
.sc-mask-price { margin: 2px 0 0; font-size: 13px; color: #fff; transform: scale(1.4); transition: transform .3s ease .3s; }
.sc-mask-price span { font-size: 18px; font-weight: 700; }
.sc-list li:hover .sc-mask-price { transform: scale(1); }
.sc-btns { position: absolute; left: 0; right: 0; bottom: -50px; z-index: 2; display: flex; justify-content: center; gap: 10px; transition: bottom .25s ease .5s; }
.sc-list li:hover .sc-btns { bottom: 12px; }
.sc-mask-btn { display: inline-block; margin: 0; padding: 6px 22px; font-size: 13px; color: #fff; border: 1px solid rgba(255,255,255,.7); border-radius: 18px; white-space: nowrap; text-decoration: none; transition: background .25s ease, color .25s ease; }
.sc-mask-btn:hover { color: var(--ac); background: #fff; border-color: #fff; }
@media (max-width: 1240px) { .sc-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ===== 电影频道封面：视频精选 .mv-*（tempid=6，1 大图 + 3 卡 + 5 卡，点击弹视频） ===== */
.mv-grid { display: flex; gap: 20px; }
.mv-big { position: relative; width: 468px; height: 292.5px; margin: 0; padding: 0; list-style: none; flex-shrink: 0; border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); transition: box-shadow .35s ease, transform .35s ease; }
.mv-big > li { width: 100%; height: 100%; margin: 0; list-style: none; }
.mv-big:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.mv-big a { display: block; width: 100%; height: 100%; }
.mv-big img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1.2s ease; }
.mv-big:hover img { transform: scale(1.12); }
.mv-big .mv-mask { position: absolute; inset: 0; background: rgba(15,23,42,.42); opacity: 0; z-index: 3; transition: opacity .35s; pointer-events: none; }
.mv-big:hover .mv-mask { opacity: 1; }
.mv-big .mv-tit { position: absolute; left: 0; bottom: 0; width: 100%; box-sizing: border-box; padding: 34px 16px 14px; background: linear-gradient(transparent, rgba(15,23,42,.72)); color: #fff; font-size: 16px; font-weight: bold; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; z-index: 4; transition: transform .9s cubic-bezier(.25,.6,.35,1), opacity .9s cubic-bezier(.25,.6,.35,1); }
.mv-big:hover .mv-tit { transform: translateY(100%); opacity: 0; }
.mv-big .mv-cat { margin-right: 2px; font-size: 14px; font-weight: normal; color: #9fc0f2; }
.mv-big .mv-btn { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) scale(.82); z-index: 5; padding: 9px 26px; font-size: 14px; color: var(--ac-d); font-weight: bold; border: 1px solid #fff; border-radius: 6px; background: rgba(255,255,255,.92); opacity: 0; white-space: nowrap; pointer-events: none; transition: all .35s ease; }
.mv-big:hover .mv-btn { opacity: 1; transform: translate(-50%,-50%) scale(1); pointer-events: auto; }
.mv-big .mv-btn:hover { background: var(--ac); border-color: #fff; color: #fff; }
.mv-card { position: relative; width: 224px; height: 292.5px; box-sizing: border-box; list-style: none; margin: 0; padding: 0; background: #fff; border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); transition: transform .3s, box-shadow .3s, border-color .3s; flex-shrink: 0; }
.mv-card:hover { transform: translateY(-4px); border-color: rgba(65,97,143,.45); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.mv-card a { display: block; width: 100%; height: 100%; }
.mv-card .im { position: relative; height: 140px; overflow: hidden; }
.mv-card .im img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 1.2s ease; }
.mv-card:hover .im img { transform: scale(1.12); }
.mv-card .mv-mask { position: absolute; left: 0; top: 0; width: 100%; height: 140px; background: rgba(15,23,42,.4); opacity: 0; z-index: 3; transition: opacity .35s; pointer-events: none; }
.mv-card:hover .mv-mask { opacity: 1; }
.mv-card .bd { display: flex; align-items: flex-start; height: 150.5px; padding: 16px 14px 0; box-sizing: border-box; }
.mv-card .im .mv-tit { position: absolute; left: 0; right: 0; bottom: 0; box-sizing: border-box; padding: 22px 10px 8px; background: linear-gradient(transparent, rgba(15,23,42,.72)); color: #fff; font-size: 14px; font-weight: bold; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; z-index: 5; transition: transform .9s cubic-bezier(.25,.6,.35,1), opacity .9s cubic-bezier(.25,.6,.35,1); }
.mv-card:hover .im .mv-tit { transform: translateY(100%); opacity: 0; }
.mv-card:hover .bd p { color: rgba(255,255,255,.78); }
.mv-card .bd p { position: relative; z-index: 4; margin: 0; height: 54px; line-height: 18px; font-size: 13px; color: var(--tx2); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; transition: color .6s ease; }
.mv-card .mv-ov { position: absolute; left: 0; width: 100%; top: 216px; bottom: 76px; background: linear-gradient(135deg, rgba(30,44,68,.92), rgba(15,23,42,.96)); z-index: 3; pointer-events: none; transition: top .6s ease, bottom .6s ease; }
.mv-card:hover .mv-ov { top: 140px; bottom: 0; }
.mv-card .mv-cat { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%); padding: 3px 14px; font-size: 13px; color: var(--ac); border: 1px solid rgba(65,97,143,.55); border-radius: 15px; z-index: 4; white-space: nowrap; transition: opacity .35s, transform .35s; }
.mv-card:hover .mv-cat { opacity: 0; transform: translateX(-50%) scale(.9); }
.mv-card .mv-btn { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%) scale(.85); padding: 3px 18px; font-size: 13px; color: var(--ac-d); font-weight: bold; background: #fff; border: 1px solid #fff; border-radius: 15px; z-index: 4; white-space: nowrap; opacity: 0; pointer-events: none; transition: all .35s ease; }
.mv-card:hover .mv-btn { opacity: 1; transform: translateX(-50%) scale(1); pointer-events: auto; }
.mv-card .mv-btn:hover { background: var(--ac-d); color: #fff; }
.mv-cards { display: flex; gap: 20px; }
.mv-row2 { display: flex; gap: 20px; margin-top: 20px; }
@media (max-width: 1240px) {
  .mv-grid { flex-wrap: wrap; }
  .mv-big { width: 100%; height: 300px; }
  .mv-cards { flex-wrap: wrap; }
  .mv-row2 { flex-wrap: wrap; }
}

/* ===== 电影频道列表页：复用封面页 .mv-card 小卡（tempid=5，每行四列网格，点击弹视频） ===== */
.mvl-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 0; padding: 0; list-style: none; }
.mvl-list .mv-card { width: 100%; height: 330px; }
.mvl-list .mv-card .im { height: 178px; }
.mvl-list .mv-card .mv-mask { height: 178px; }
.mvl-list .mv-card .bd { height: 152px; }
.mvl-list .mv-card .bd p { -webkit-line-clamp: 4; }
.mvl-list .mv-card .mv-ov { top: 244px; bottom: 85px; }
.mvl-list .mv-card:hover .mv-ov { top: 178px; bottom: 0; }
.mvl-list .mv-card.off { cursor: default; }
.mvl-list .mv-card.off .mv-mask { opacity: 1; background: rgba(15,23,42,.55); }
.mvl-list:not(:has(li))::after { grid-column: 1 / -1; padding: 56px 0 64px; text-align: center; font-size: 14px; letter-spacing: 2px; color: var(--tx2); content: "内容整理中，敬请期待……"; }
@media (max-width: 1240px) { .mvl-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ===== 电影频道内容页：播放器 / 选集 / 简介 .mvd-*（tempid=6 电影内容模板） ===== */
.mvd-player { position: relative; margin: 4px 0 0; background: #000; border-radius: var(--r); overflow: hidden; box-shadow: var(--sh2); }
.mvd-player video { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: contain; background: #000; }
.mvd-tip { position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%); text-align: center; font-size: 14px; letter-spacing: 1px; color: rgba(255,255,255,.78); pointer-events: none; }
.mvd-info { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 30px; margin: 24px 0 0; padding: 16px 20px; background: var(--bg2); border: 1px solid var(--line); border-radius: var(--r); font-size: 13px; line-height: 24px; list-style: none; }
.mvd-info li { position: relative; margin: 0; padding: 0 0 0 16px; color: var(--tx2); }
.mvd-info li::before { content: ""; position: absolute; left: 2px; top: 10px; width: 5px; height: 5px; border-radius: 50%; background: var(--ac); }
.mvd-eps { margin-top: 24px; padding: 18px 20px 20px; background: var(--bg2); border: 1px solid var(--line); border-radius: var(--r); }
.mvd-eps-hd { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; padding-bottom: 10px; border-bottom: 1px solid var(--line); }
.mvd-eps-hd h3 { position: relative; margin: 0; padding-left: 12px; font-size: 17px; color: var(--tx); }
.mvd-eps-hd h3::before { content: ""; position: absolute; left: 0; top: 50%; width: 4px; height: 16px; margin-top: -8px; background: var(--ac); border-radius: 2px; }
.mvd-eps-hd span { font-size: 13px; color: var(--tx2); }
.mvd-eps-list { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
.mvd-eps-list a { display: block; height: 38px; padding: 0 6px; box-sizing: border-box; text-align: center; font-size: 13px; line-height: 36px; color: var(--tx2); background: #fff; border: 1px solid var(--line); border-radius: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: all .25s ease; }
.mvd-eps-list a:hover { color: var(--ac); border-color: var(--ac); transform: translateY(-2px); }
.mvd-eps-list a.on { color: #fff; font-weight: bold; background: var(--ac); border-color: var(--ac); }
.mvd-say { margin-top: 24px; padding: 20px 22px; background: #fff; border: 1px solid var(--line); border-left: 3px solid var(--ac); border-radius: 0 var(--r) var(--r) 0; box-shadow: var(--sh); }
.mvd-say h3 { margin: 0 0 10px; font-size: 17px; color: var(--tx); }
.mvd-say p { margin: 0; font-size: 14px; line-height: 1.9; color: var(--tx2); }
@media (max-width: 1240px) {
  .mvd-eps-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .mvd-info { grid-template-columns: minmax(0, 1fr); }
}

/* ===== 图集边界弹出层 .md-edge（翻到首/末张时提示，参照 game 模态轮播；.md 基础在 index.css） ===== */
.md-edge { width: 1200px; max-width: 92vw; }
.md-edge .edge-box { padding: 30px 32px 26px; text-align: center; }
.md-edge .edge-box h3 { margin: 0 0 16px; font-size: 20px; color: var(--tx); }
.md-edge .edge-replay { margin: 0 0 20px; padding: 9px 30px; border: 0; border-radius: 4px; background: var(--ac); color: #fff; font-size: 14px; cursor: pointer; transition: background .25s; }
.md-edge .edge-replay:hover { background: var(--ac-d); }
.md-edge .edge-albums { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.md-edge .edge-album { display: block; background: #fff; border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; box-shadow: var(--sh3); text-decoration: none; transition: transform .3s ease, box-shadow .3s ease; }
.md-edge .edge-album:hover { transform: translateY(-3px); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.md-edge .edge-album img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; background: #10151f; }
.md-edge .edge-album span { display: block; padding: 9px 0 1px; font-size: 13px; color: var(--ac); }
.md-edge .edge-album em { display: block; padding: 2px 12px 11px; font-style: normal; font-size: 13px; color: var(--tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.md-edge .edge-album.none { opacity: .55; cursor: default; }
.md-edge .edge-album.none:hover { transform: none; box-shadow: var(--sh3); }
.md-edge .edge-back { display: block; margin-top: 18px; font-size: 13px; color: var(--tx2); text-decoration: none; transition: color .2s; }
.md-edge .edge-back:hover { color: var(--ac); }

/* ================================================================
   关于单页（/html/about/）：战略轮播 + 产品轮播 + 情报手风琴
   结构参照 game 站 pic.html / 手风琴，视觉按 game 亮色主题重写
   ================================================================ */

/* ---- 滚动揭示动画 ---- */
.reveal-row { opacity: 0; transform: translateY(60px); transition: opacity .85s cubic-bezier(.22,.61,.36,1), transform .85s cubic-bezier(.22,.61,.36,1); will-change: opacity, transform; }
.reveal-row.revealed { opacity: 1; transform: none; }

/* ---- 面板容器与战略轮播（左图右文） ---- */
/* 底部 margin 30 → 0：about 页外包 .blk（padding:64px 0）后，
   底部留白 = 64px 与 equip 页同节奏；原先 30+64=94px 双重叠加过高 */
.pic-panels { width: 1200px; margin: 0 auto 0; position: relative; }
.pic-panel { display: none; }
.pic-panel.active { display: block; }
.pic-carousel-strategy { background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); height: 330px; box-sizing: border-box; }
.pic-strategy-track, .pic-game-track { gap: 0 !important; }
.pic-strategy-slide { width: 1200px; flex-shrink: 0; height: 300px; display: flex; align-items: center; overflow: hidden; list-style: none; }
.pic-strategy-slide img { width: 600px; height: 300px; object-fit: cover; flex-shrink: 0; padding: 15px; box-sizing: border-box; }
.pic-strategy-text { width: 600px; flex-shrink: 0; height: 300px; padding: 15px 30px 15px 15px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; }
.pic-strategy-text p { font-size: 14px; line-height: 22px; color: var(--tx2); margin: 0; }
.pic-strategy-text p strong { display: block; font-size: 16px; color: var(--ac); margin-bottom: 10px; font-weight: bold; line-height: 1.4; }

/* ---- 通用轮播（箭头贴 1200px 外侧，到尽头消失） ---- */
/* margin 30px auto 0 → 0：about 页外包 .blk（padding:64px 0）后，
   此处 30px 会叠加成 64+30=94px 上端空白（与底部 64 不对称），清零 */
.pic-carousel { position: relative; width: 1200px; margin: 0 auto 0; }
.pic-carousel-prev, .pic-carousel-next { position: absolute; top: 50%; transform: translateY(-50%); width: 36px; height: 86px; z-index: 10; cursor: pointer; background: rgba(255,255,255,.92); border: 1px solid var(--line); box-shadow: var(--sh); display: flex; align-items: center; justify-content: center; transition: all .25s; }
.pic-carousel-prev { left: -36px; }
.pic-carousel-next { right: -36px; }
.pic-carousel-prev::after, .pic-carousel-next::after { content: ""; display: block; width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; }
.pic-carousel-prev::after { border-right: 12px solid var(--ac); margin-left: 2px; }
.pic-carousel-next::after { border-left: 12px solid var(--ac); margin-right: 2px; }
.pic-carousel-prev:hover, .pic-carousel-next:hover { background: var(--ac); border-color: var(--ac); }
.pic-carousel-prev:hover::after { border-right-color: #fff; }
.pic-carousel-next:hover::after { border-left-color: #fff; }
.pic-carousel-prev.hidden, .pic-carousel-next.hidden { display: none; }
.pic-carousel-viewport { width: 1200px; overflow: hidden; }
.pic-carousel-track { display: flex; gap: 20px; margin: 0; padding: 0; list-style: none; transition: transform .5s cubic-bezier(.25,.1,.25,1); width: max-content; }
/* margin-bottom:-30px：圆点下沉进 .blk 的 64px 底 padding 区域内，
   使"轮播底(含圆点)→灰带顶"总视觉距离 = 64px（原 30+64=94px 过高） */
.pic-carousel-dots { height: 30px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; margin-bottom: -30px; }
.pic-carousel-dots .pic-dot { display: inline-block; width: 12px; height: 12px; margin: 0 5px; border-radius: 50%; background: #d6dee9; cursor: pointer; transition: all .3s; vertical-align: middle; }
.pic-carousel-dots .pic-dot.active { background: var(--ac); transform: scale(1.1); }

/* ---- 产品页包装：2 行 4 列 ---- */
.pic-game-page { width: 1200px; flex-shrink: 0; display: grid; grid-template-columns: repeat(4, 285px); grid-template-rows: repeat(2, minmax(0,1fr)); gap: 20px; list-style: none; margin: 0; padding: 0; }

/* ---- 产品卡片：default 底部标题条，hover 遮罩 + 查看详情 ---- */
.pic-game-card { width: 285px; position: relative; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh); transition: box-shadow .25s; }
.pic-game-card:hover { box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.pic-game-img { width: 100%; height: 176px; overflow: hidden; position: relative; }
.pic-game-img > a { display: block; width: 100%; height: 100%; }
.pic-game-img > a img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.pic-game-card:hover .pic-game-img img { transform: scale(1.08); }
.pic-game-intro { display: none; }
.pic-game-card .sc-info { position: absolute; left: 0; right: 0; bottom: 0; padding: 6px 10px; background: linear-gradient(transparent, rgba(15,23,42,.72)); transition: transform .5s ease, opacity .5s ease; z-index: 2; }
.pic-game-card:hover .sc-info { transform: translateY(100%); opacity: 0; }
.pic-game-card .sc-title { font-size: 15px; color: #fff; font-weight: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin: 0; line-height: 22px; }
.pic-game-card .sc-mask { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0; padding: 0; background: rgba(0,0,0,0); z-index: 3; transition: background .3s ease; }
.pic-game-card:hover .sc-mask { background: rgba(15,23,42,.45); }
.pic-game-card a.sc-mask-btn { position: static; display: inline-block; padding: 8px 24px; border: 1px solid rgba(255,255,255,.65); border-radius: 18px; color: #fff; font-size: 15px; font-weight: 500; text-decoration: none; margin: 0; background: rgba(15,23,42,.35); opacity: 0; transform: scale(.8); transition: opacity .25s ease .15s, transform .25s ease .15s, background .2s, color .2s; white-space: nowrap; cursor: pointer; }
.pic-game-card:hover a.sc-mask-btn { opacity: 1; transform: scale(1); }
.pic-game-card a.sc-mask-btn:hover, .pic-game-card a.sc-mask-btn:active { background: var(--ac); border-color: var(--ac); color: #fff; text-decoration: none; }

/* ---- 情报手风琴（通栏一行四列，hover 展开） ---- */
.moon-accordion-section { width: 1200px; margin: 30px auto 60px; border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; background: #fff; box-shadow: var(--sh3); }
.moon-tablist { list-style: none; display: flex; height: 200px; overflow: hidden; margin: 0; padding: 0; }
.moon-tablist > li { position: relative; height: 200px; overflow: hidden; flex-shrink: 0; transition: width .5s ease; }
.moon-tablist > li, .moon-tablist > li.moon-default { width: 300px; }
.moon-tablist > li.moon-shrink { width: 200px; }
.moon-tablist > li.moon-current { width: 600px; }
.moon-tablist .moon-item { position: absolute; display: block; width: 100%; height: 100%; }
.moon-tablist li.moon-current .moon-item { display: none; }
.moon-tablist .moon-item .moon-cover { position: absolute; display: block; width: calc(100% - 30px); height: calc(100% - 30px); top: 15px; left: 15px; overflow: hidden; border: 1px solid var(--line); border-radius: 6px; box-shadow: var(--sh); }
.moon-tablist .moon-item .moon-cover img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s ease; }
.moon-tablist .moon-item .moon-cover:hover img { transform: scale(1.05); }
.moon-tablist .moon-item .moon-cover span { position: absolute; bottom: 0; left: 0; width: 100%; height: 30px; line-height: 30px; text-align: center; font-size: 14px; color: #fff; background: linear-gradient(transparent, rgba(15,23,42,.72)); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 0 5px; box-sizing: border-box; }
.moon-tablist li .moon-hover { position: absolute; display: none; width: 100%; height: 100%; }
.moon-tablist li.moon-current .moon-hover { display: block; }
.moon-tablist li .moon-hover-wrap { width: 100%; height: 100%; display: flex; overflow: hidden; }
.moon-tablist li .moon-hover-wrap .moon-left { width: 240px; height: 200px; flex-shrink: 0; position: relative; background: linear-gradient(135deg, rgba(65,97,143,.10) 0%, rgba(47,107,255,.05) 100%); overflow: hidden; }
.moon-tablist li .moon-hover-wrap .moon-left .moon-more { position: absolute; display: flex; align-items: center; justify-content: center; width: 24px; height: 24px; left: 6px; top: 6px; z-index: 2; background: rgba(255,255,255,.85); border: 1px solid var(--line); border-radius: 4px; color: var(--ac); font-size: 18px; font-weight: bold; line-height: 1; text-decoration: none; transition: all .2s; }
.moon-tablist li .moon-hover-wrap .moon-left .moon-more::before { content: "+"; }
.moon-tablist li .moon-hover-wrap .moon-left .moon-more:hover { background: var(--ac); border-color: var(--ac); color: #fff; }
.moon-tablist li .moon-hover-wrap .moon-left .moon-top { position: absolute; left: 0; top: 0; display: block; width: 100%; height: 100%; }
.moon-tablist li .moon-hover-wrap .moon-left .moon-top img { width: 240px; height: 200px; object-fit: cover; display: block; }
.moon-tablist li .moon-hover-wrap .moon-left span { font-size: 14px; color: #fff; position: absolute; width: 100%; height: 40px; left: 0; bottom: 0; line-height: 40px; text-align: center; background: linear-gradient(transparent, rgba(15,23,42,.72)); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 0 5px; box-sizing: border-box; z-index: 1; }
.moon-tablist li .moon-hover-wrap .moon-left span:hover { color: var(--ac); text-shadow: none; background: rgba(255,255,255,.9); }
.moon-tablist li .moon-hover-wrap .moon-right { flex: 1; list-style: none; padding: 0 15px; overflow: hidden; margin: 0; align-self: center; height: 180px; display: flex; flex-direction: column; justify-content: center; }
.moon-tablist li .moon-hover-wrap .moon-right li { display: flex; align-items: center; gap: 10px; height: 36px; border-bottom: 1px dashed var(--line); position: relative; }
.moon-tablist li .moon-hover-wrap .moon-right li:last-child { border-bottom: 0; }
.moon-tablist li .moon-hover-wrap .moon-right li span { position: static; font-size: 13px; color: #94a3b8; flex: none; }
.moon-tablist li .moon-hover-wrap .moon-right li a { flex: 1; min-width: 0; font-size: 14px; color: var(--tx); display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .2s, transform .2s; }
.moon-tablist li .moon-hover-wrap .moon-right li a::before { content: "\00BB"; margin-right: 6px; font-weight: 700; color: var(--ac); }
.moon-tablist li .moon-hover-wrap .moon-right li:hover a { color: var(--ac); transform: translateX(3px); }
/* 列间竖线：默认态与封面图等高（inset 15px）、中段实两端渐隐；
   hover 展开态（moon-current 当前列 / moon-shrink 收缩列）竖线满格高实线
   —— 与 index.css 的 .ac / .sp 分隔线行为统一（20261017b） */
.moon-tablist > li > i { position: absolute; right: 0; top: 15px; bottom: 15px; width: 1px; background: linear-gradient(to bottom, transparent, #cbd5e1 20%, #cbd5e1 80%, transparent); z-index: 3; transition: top .3s ease, bottom .3s ease, background .3s ease; }
.moon-tablist > li:last-child > i { display: none; }
.moon-tablist > li.moon-current > i, .moon-tablist > li.moon-shrink > i { top: 0; bottom: 0; background: #cbd5e1; }

/* ---- 专题封面（最新专题块 moon-cover-zt）：名称居中放大、简介沉底栏；只影响带该类名的块，2/3/4 不受影响 ---- */
.moon-tablist .moon-item .moon-cover-zt .moon-zt-name { position: absolute; left: 0; right: 0; top: 50%; bottom: auto; transform: translateY(-50%); width: 100%; height: auto; padding: 0 10px; box-sizing: border-box; text-align: center; font-size: 22px; font-weight: 700; line-height: 1.35; color: #fff; background: none; text-shadow: 0 2px 8px rgba(15,23,42,.95); white-space: normal; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.moon-tablist .moon-item .moon-cover-zt .moon-zt-intro { font-size: 14px; }

/* ===== 商城内容页 meta 行：发布人靠左 / 发布时间靠右（.spd-meta 专用于商城，不影响其他系统共用样式） ===== */
.spd-meta { display: flex; align-items: center; flex-wrap: wrap; text-align: left; }
.spd-meta .m-r { margin-left: auto; }
.spd-meta .m-r::before { content: none; }

/* ===== 商品状态徽标：列表卡角标 .sc-badge / 内容页标题旁 .spd-status ===== */
.sc-badge { position: absolute; left: 10px; top: 10px; z-index: 3; padding: 3px 10px; font-size: 13px; font-style: normal; line-height: 18px; color: #fff; background: rgba(65,97,143,.9); border-radius: 4px; pointer-events: none; }
.sc-badge-yishouchu, .sc-badge-shouqi { background: rgba(192,57,43,.92); }
.sc-badge-xiaxian { background: rgba(102,102,102,.92); }
.spd-status { display: none; vertical-align: 4px; margin-left: 10px; padding: 3px 10px; font-size: 13px; font-weight: normal; line-height: 18px; color: #fff; background: rgba(65,97,143,.9); border-radius: 4px; }
.spd-status.show { display: inline-block; }
.spd-status[data-st="yishouchu"], .spd-status[data-st="shouqi"] { background: rgba(192,57,43,.92); }
.spd-status[data-st="xiaxian"] { background: rgba(102,102,102,.92); }
.dl-btn.pri.off { pointer-events: none; opacity: .5; }

/* ===== 充值平台单页 .pay-*（tempid=13，栏目22） ===== */
.pay-crow { grid-template-columns: minmax(0, 1fr) 360px; }
.pay-tabs { display: flex; margin-top: 4px; border-bottom: 1px solid var(--line); }
.pay-tabs a { padding: 10px 24px; font-size: 15px; line-height: 22px; color: var(--tx2); border: 1px solid transparent; border-bottom: none; border-radius: 6px 6px 0 0; cursor: pointer; transition: color .2s, background .2s; }
.pay-tabs a:hover { color: var(--ac); }
.pay-tabs a.on { color: var(--ac); font-weight: bold; background: #fff; border-color: var(--line); margin-bottom: -1px; }
.pay-qr { display: none; margin-top: 24px; padding: 24px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh); aspect-ratio: 16 / 10; box-sizing: border-box; text-align: center; }
.pay-qr.on { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; }
.pay-qr img { max-width: 62%; max-height: 62%; width: auto; height: auto; object-fit: contain; }
.pay-qr p { margin: 0; font-size: 13px; color: var(--tx2); }
.pay-warn { margin-top: 20px; padding: 12px 16px; background: rgba(65,97,143,.06); border: 1px dashed rgba(65,97,143,.4); border-radius: var(--r); font-size: 13px; line-height: 22px; color: var(--tx2); }
.pay-warn b { color: var(--ac); }
.np-side .pay-card { background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh); padding: 16px 20px 18px; margin-bottom: 16px; }
.np-side .pay-card h3 { margin: 0 0 10px; padding-left: 10px; border-left: 3px solid var(--ac); font-size: 16px; line-height: 22px; }
.np-side .pay-card p { margin: 0 0 8px; font-size: 13px; line-height: 22px; color: var(--tx2); }
.pay-off { margin: 0; padding: 0; list-style: none; }
.pay-off li { display: flex; align-items: center; justify-content: space-between; padding: 9px 2px; font-size: 14px; border-bottom: 1px dashed var(--line); }
.pay-off li:last-child { border-bottom: none; }
.pay-off li b { font-size: 13px; font-weight: normal; color: #c0392b; }
.pay-card-cta p { margin-bottom: 12px; }
.pay-qq { display: block; text-align: center; padding: 9px 0; font-size: 14px; color: #fff; background: var(--ac); border-radius: var(--r); text-decoration: none; transition: opacity .2s; }
.pay-qq:hover { opacity: .88; }

/* ===== 充值平台单页内容区 .pay-body（内容来自后台"单页内容"编辑器） ===== */
.pay-body { font-size: 14px; line-height: 24px; color: var(--tx); }
.pay-body .pay-lead { margin: 4px 0 8px; padding: 10px 14px; background: rgba(65,97,143,.06); border-radius: var(--r); font-size: 14px; }
.pay-body h3 { margin: 24px 0 10px; padding-left: 10px; border-left: 3px solid var(--ac); font-size: 16px; line-height: 22px; }
.pay-body p { margin: 0 0 8px; }
.pay-body .pay-img { text-align: center; margin: 0 0 10px; }
.pay-body .pay-img img { width: 300px; max-width: 72%; box-sizing: border-box; padding: 8px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh); }
.pay-body ul { margin: 0 0 8px; padding-left: 20px; }
.pay-body li { padding: 3px 0; }
.pay-body b { color: var(--ac); }

/* ===== 充值平台单页内容两列网格 .pay-grid（微信/支付宝、优惠/须知 两行两列） ===== */
.pay-body .pay-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 4px 24px; margin: 0 0 8px; }
.pay-body .pay-grid h3 { margin-top: 14px; }
.pay-body .pay-grid .pay-img { margin-bottom: 6px; }
.pay-body .pay-grid .pay-img img { width: 190px; max-width: 88%; }

/* ===== 商城父栏目封面（tempid=5，栏目5）：充值通道卡 .rc-* + 商品卡角标 .sd-price ===== */
.rc-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 4px 0 0; }
.rc-card { display: flex; align-items: center; gap: 18px; padding: 24px 26px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.rc-card:hover { transform: translateY(-3px); border-color: rgba(65,97,143,.45); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.rc-card.wx { background: linear-gradient(115deg, #edf9f2 0%, #ffffff 58%); }
.rc-card.ali { background: linear-gradient(115deg, #ebf3fd 0%, #ffffff 58%); }
.rc-ic { flex: none; display: flex; align-items: center; justify-content: center; width: 58px; height: 58px; background: #fff; border-radius: 6px; box-shadow: var(--sh2); }
.rc-ic img { width: 34px; height: 34px; object-fit: contain; }
.rc-bd { flex: 1; min-width: 0; }
.rc-bd h3 { margin: 0; font-size: 17px; line-height: 24px; color: var(--tx); transition: color .25s ease; }
.rc-card:hover .rc-bd h3 { color: var(--ac); }
.rc-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 9px; }
.rc-meta i { padding: 3px 12px; font-style: normal; font-size: 13px; line-height: 18px; border-radius: 999px; background: #f3f6fa; color: var(--tx2); }
.rc-card.wx .rc-meta i { background: rgba(10,188,100,.1); color: #0a9c55; }
.rc-card.ali .rc-meta i { background: rgba(37,110,220,.1); color: #256edc; }
.rc-go { flex: none; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid var(--ac); border-radius: 50%; color: var(--ac); transition: all .25s ease; }
.rc-go svg { width: 18px; height: 18px; }
.rc-card:hover .rc-go { color: #fff; background: var(--ac); transform: translateX(3px); }
.sd-img { position: relative; }
.sd-price { position: absolute; right: 0; bottom: 0; padding: 3px 10px; font-style: normal; font-size: 13px; line-height: 20px; font-weight: bold; color: #fff; background: rgba(192,57,43,.92); border-radius: 4px 0 4px 0; }
.sd-price del { margin-left: 6px; font-weight: normal; opacity: .75; }
@media (max-width: 1240px) { .rc-grid { grid-template-columns: minmax(0, 1fr); } }

/* ===== 充值平台页（classtempid=13）：二维码收款卡 .rc-card.qr + 2×2 说明卡 .pay-info ===== */
.rc-card.qr { cursor: default; }
.rc-card.qr .rc-ic { width: 132px; height: 132px; }
.rc-card.qr .rc-ic img { width: 120px; height: 120px; border-radius: 4px; }
.pay-info { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.pay-info-card { padding: 24px 26px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s ease, box-shadow .3s ease; }
.pay-info-card:hover { transform: translateY(-2px); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.pay-info-card h4 { margin: 0 0 14px; font-size: 17px; line-height: 24px; color: var(--tx); }
.pay-info-card h4 b { position: relative; padding-left: 14px; }
.pay-info-card h4 b::before { content: ""; position: absolute; left: 0; top: 5px; bottom: 5px; width: 5px; border-radius: 3px; background: var(--ac); }
.pay-info-card p { margin: 0; font-size: 14px; line-height: 28px; color: var(--tx2); }
.pay-info-card p strong { color: var(--ac); font-weight: 700; }
@media (max-width: 1240px) { .pay-info { grid-template-columns: minmax(0, 1fr); } }

/* ===== 游戏下载列表页（tempid=11，栏目20）：固定官方下载四卡 .gd-*（左 SVG 图 + 大小/环境 + 双按钮） ===== */
.gd-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 4px 0 0; }
.gd-item { display: flex; align-items: flex-start; padding: 16px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); box-shadow: var(--sh3); transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.gd-item:hover { transform: translateY(-3px); border-color: rgba(65,97,143,.45); box-shadow: 0 18px 36px rgba(65,97,143,.28), 0 5px 12px rgba(65,97,143,.14); }
.gd-img { flex: none; display: block; width: 224px; height: 140px; border-radius: 4px; overflow: hidden; }
.gd-img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.gd-item:hover .gd-img img { transform: scale(1.05); }
.gd-bd { flex: 1; min-width: 0; position: relative; box-sizing: border-box; height: 140px; margin-left: 20px; padding: 2px 0 44px; }
.gd-info { margin: 6px 0 0; }
.gd-info p { margin: 0; padding: 6px 0; font-size: 13px; line-height: 20px; color: var(--tx2); border-bottom: 1px dashed var(--line); }
.gd-info p:last-child { border-bottom: none; }
.gd-info b { margin-right: 8px; font-weight: bold; color: var(--ac); }
@media (max-width: 1240px) { .gd-grid { grid-template-columns: minmax(0, 1fr); } }

/* 虚拟商品提示（统一点数：价格以点数计） */
.spd-price .mk { padding: 2px 9px; border-radius: 999px; background: rgba(180,83,75,.1); color: #b4534b; }
.spd-tip { margin: 10px 0 0; font-size: 13px; line-height: 1.7; color: #b4534b; }

/* moon 手风琴嵌入灰底区块（首页/新闻资讯封面页）：去固定宽与外距，由 .blk 控制节奏 */
.blk .moon-accordion-section { width: auto; margin: 0; }

/* 商品页 hero：左图+提示句 / 右价格区占满图片高度，提示与四按钮同一水平带（20260921b） */
.dl-left { flex: none; width: 360px; display: flex; flex-direction: column; }
.dl-left .dl-pic { width: 100%; }
.dl-left .spd-tip { margin: auto 0 0; padding-top: 12px; }
.dl-side .spd-priwrap { flex: 1; min-height: 0; display: flex; flex-direction: column; justify-content: space-evenly; gap: 10px; }
.dl-side .spd-priwrap .spd-price { margin: 0; }
.dl-side .spd-priwrap .spd-lv { margin: 0; }
.dl-left + .dl-side .dl-acts { margin-top: 0; padding-top: 12px; }
