/* ============================================================
   亚泰娱乐 · 全站统一页脚（赞助商广告位招商）
   由 server.js::injectSiteShell() 自动注入到所有前台页面
   ============================================================ */
.yt-footer {
  width: min(1180px, calc(100% - 32px));
  margin: 36px auto 0;
  padding: 26px 20px 34px;
  border-top: 1px solid rgba(232, 178, 58, 0.16);
  text-align: center;
}

.yt-foot-title {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 1px;
  color: var(--gold-2, #ffd75e);
  margin-bottom: 8px;
}

.yt-foot-desc {
  margin: 0 auto 16px;
  max-width: 640px;
  font-size: 12.5px;
  line-height: 1.9;
  color: var(--muted, #8fa6c0);
}

.yt-foot-btns {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.yt-foot-meta {
  font-size: 11.5px;
  line-height: 1.9;
  color: var(--muted, #8fa6c0);
}

.yt-foot-meta b {
  color: var(--gold-2, #ffd75e);
}

/* 分类图标加载失败时的 emoji 回退 */
.ico-fb {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  line-height: 1;
}
.ico-fb::after { content: attr(data-fb); }

/* 手机端适配 */
@media (max-width: 480px) {
  .yt-footer { padding: 22px 12px 28px; margin-top: 26px; }
  .yt-foot-title { font-size: 14px; }
  .yt-foot-desc { font-size: 12px; }
  .yt-foot-btns .btn { flex: 1 1 46%; }
}

/* ============================================================
   悬浮按钮（游戏大厅/个人中心/客服/线路）避让正文
   ============================================================ */
@media (min-width: 900px) {
  main.container { padding-right: 96px; }
}
@media (max-height: 720px) {
  .yt-fab { padding: 7px 10px; font-size: 11px; }
  .yt-fab-lobby  { bottom: 198px; }
  .yt-fab-member { bottom: 156px; }
  .yt-fab-kefu   { bottom: 114px; }
  .yt-fab-lines  { bottom: 72px; }
}
/* ============================================================
   修复：风格切换器容器（.yt-tsw）隐藏时仍吞掉点击
   —— 容器本身是 236×255 的透明盒子，必须 pointer-events:none
   ============================================================ */
.yt-tsw { pointer-events: none; }
.yt-tsw .yt-tsw-btn { pointer-events: auto; }
.yt-tsw.is-open .yt-tsw-panel { pointer-events: auto; }
/* ============================================================
   首页 · 顶部赞助商广告位（外部投放位）
   ============================================================ */
.sponsor-slot{margin:14px auto 18px;}
.sponsor-slot-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
.sponsor-slot-tag{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;
  font-size:11px;font-weight:800;letter-spacing:1px;color:#7a5a14;
  background:linear-gradient(180deg,#ffe9a8,#e8b23a);
  border-radius:6px;padding:2px 8px;}
.sponsor-slot-tag::before{content:'广告';font-size:9px;opacity:.7;}
.sponsor-slot-tip{font-size:12px;color:#8aa0b4;}
.sponsor-slot-cta{margin-left:auto;flex:0 0 auto;font-size:12px;font-weight:700;
  color:#ffd75e;text-decoration:none;padding:3px 10px;border-radius:999px;
  border:1px solid rgba(232,178,58,.45);background:rgba(232,178,58,.08);transition:.15s;}
.sponsor-slot-cta:hover{background:rgba(232,178,58,.2);color:#fff;}

/* 顶部赞助商广告位：横向卡片轮播（向左滑动） */
.sponsor-slot-body{position:relative;}
.spn-rail{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;scroll-behavior:smooth;
  padding:2px 2px 6px;margin:0 -2px;
  -ms-overflow-style:none;scrollbar-width:none;cursor:grab;}
.spn-rail::-webkit-scrollbar{display:none;}
.spn-rail.is-drag{cursor:grabbing;scroll-behavior:auto;}
.spn-rail.is-drag .spn-card{pointer-events:none;}

.spn-card{flex:0 0 92%;scroll-snap-align:start;
  display:grid;grid-template-columns:1fr 44%;align-items:stretch;min-width:0;
  text-decoration:none;border-radius:16px;overflow:hidden;
  border:1px solid rgba(232,178,58,.22);
  background:linear-gradient(120deg,#0d1a26 0%,#101f2c 55%,#0b1620 100%);
  transition:border-color .16s,box-shadow .16s,transform .16s;}
.spn-card:hover{border-color:rgba(232,178,58,.6);box-shadow:0 12px 30px rgba(0,0,0,.42);transform:translateY(-2px);}

/* 左侧文案区（独立区域，不与动图文字重叠） */
.spn-card-txt{display:flex;flex-direction:column;justify-content:center;gap:9px;
  padding:22px 26px;min-width:0;
  background:
    radial-gradient(120% 120% at 0% 0%,rgba(232,178,58,.14) 0%,rgba(232,178,58,0) 58%),
    radial-gradient(120% 120% at 100% 100%,rgba(34,211,238,.08) 0%,rgba(34,211,238,0) 60%);}
.spn-card-txt strong{font-size:21px;font-weight:900;letter-spacing:2px;color:#ffd75e;line-height:1.35;}
.spn-card-txt em{font-style:normal;font-size:12.8px;line-height:1.75;color:#9fb3c6;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}

/* 右侧动图（完整展示，不被压字） */
.spn-card-media{position:relative;display:block;overflow:hidden;background:#08121b;min-height:100%;}
.spn-card-media img{display:block;width:100%;height:100%;object-fit:cover;
  transition:transform .45s;}
.spn-card:hover .spn-card-media img{transform:scale(1.04);}
.spn-card.is-ad{grid-template-columns:1fr;aspect-ratio:1500/420;}
.spn-card.is-ad .spn-card-media{min-height:0;}

.spn-foot{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap;}
.spn-hint{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:#8aa0b4;letter-spacing:.5px;}
.spn-hint i{font-style:normal;display:inline-block;color:#ffd75e;animation:spnHint 1.4s ease-in-out infinite;}
@keyframes spnHint{0%,100%{transform:translateX(0);opacity:.5}50%{transform:translateX(-4px);opacity:1}}
.spn-dots{display:flex;gap:6px;margin-left:auto;}
.spn-dots i{width:7px;height:7px;border-radius:50%;cursor:pointer;
  background:rgba(255,255,255,.28);transition:.18s;}
.spn-dots i.on{width:18px;border-radius:4px;background:#e8b23a;}
.spn-arrows{display:inline-flex;gap:6px;}
.spn-arrow{width:26px;height:26px;border-radius:50%;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  font-size:15px;line-height:1;font-family:inherit;color:#ffe6b0;
  background:rgba(0,0,0,.4);border:1px solid rgba(232,178,58,.35);transition:.15s;}
.spn-arrow:hover{background:rgba(232,178,58,.25);color:#fff;}

@media(max-width:820px){ .spn-card{flex:0 0 94%;grid-template-columns:1fr 42%;} }
@media(max-width:560px){
  .spn-rail{gap:10px;}
  .spn-card{flex:0 0 92%;grid-template-columns:1fr;border-radius:14px;}
  .spn-card-txt{padding:15px 15px 12px;gap:5px;}
  .spn-card-txt strong{font-size:16px;letter-spacing:1px;}
  .spn-card-txt em{font-size:11.5px;-webkit-line-clamp:2;}
  .spn-card-media{aspect-ratio:600/316;min-height:0;}
  .spn-arrows{display:none;}
}

/* ── 图标广告：仅 64×64 GIF 横向轮播（无任何文字） ── */
.yt-ads-icons .yt-ads-b{padding:0;}
.yt-ico-row{padding:2px 0;}
.yt-ico-track{gap:12px;}
.yt-ico-cell{flex:0 0 auto;display:block;width:64px;height:64px;border-radius:14px;overflow:hidden;
  border:1px solid rgba(212,175,93,.45);background:rgba(0,0,0,.35);
  box-shadow:0 4px 14px rgba(232,178,58,.2);transition:.16s;}
.yt-ico-cell:hover{border-color:#ffd75e;box-shadow:0 8px 20px rgba(232,178,58,.4);transform:translateY(-2px);}
.yt-ico-cell img{width:64px;height:64px;object-fit:cover;display:block;}
.yt-ico-cell.is-dup{pointer-events:none;}
@media(max-width:560px){
  .yt-ico-cell,.yt-ico-cell img{width:56px;height:56px;border-radius:12px;}
}

/* ── 底部赞助商推荐位：8 条等宽网格（整齐不跨列） ── */
.yt-ads-texts{max-width:1240px;margin-left:auto;margin-right:auto;}
.yt-txt-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:10px;}
.yt-txt{min-height:42px;}
.yt-txt span{white-space:nowrap;}
@media(max-width:1100px){ .yt-txt-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;} }
@media(max-width:560px){ .yt-txt-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px;} }

/* ============================================================
   首页 · 彩种分类图卡
   ============================================================ */
.cat-tiles{display:grid;gap:12px;margin:0 0 18px;
  grid-template-columns:repeat(4,1fr);}
@media(max-width:1100px){ .cat-tiles{grid-template-columns:repeat(3,1fr);} }
@media(max-width:820px){ .cat-tiles{grid-template-columns:repeat(2,1fr);} }

/* 大厅：无左侧分类栏时铺满 */
.hall.is-full{grid-template-columns:1fr !important;}
.hall.is-full .hall-main{grid-column:1 / -1;}
.cat-tile{display:flex;flex-direction:column;gap:0;padding:0;cursor:pointer;
  text-align:left;border-radius:14px;overflow:hidden;
  border:1px solid rgba(255,255,255,.09);background:#0e1a24;
  transition:transform .16s,border-color .16s,box-shadow .16s;}
.cat-tile:hover{transform:translateY(-2px);border-color:rgba(232,178,58,.5);
  box-shadow:0 10px 26px rgba(0,0,0,.38);}
.cat-tile.is-active{border-color:#e8b23a;box-shadow:0 0 0 1px rgba(232,178,58,.55),0 10px 26px rgba(232,178,58,.16);}
.cat-tile-media{position:relative;display:block;width:100%;aspect-ratio:16/9;background:#08121b;overflow:hidden;}
.cat-tile-media img{display:block;width:100%;height:100%;object-fit:cover;
  transition:transform .3s;}
.cat-tile:hover .cat-tile-media img{transform:scale(1.04);}
.cat-tile-live{position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:2px;
  background:radial-gradient(120% 120% at 50% 0%,rgba(34,211,238,.2),transparent 65%),
             linear-gradient(160deg,#0d2230,#0a1620);}
.cat-tile-live b{font-size:26px;font-weight:900;color:#22d3ee;line-height:1;}
.cat-tile-live em{font-style:normal;font-size:11px;letter-spacing:2px;color:#7fa6b8;}
.cat-tile-body{display:flex;flex-direction:column;gap:3px;padding:10px 12px 12px;}
.cat-tile-body b{font-size:14px;font-weight:800;color:#ffe6b0;letter-spacing:1px;}
.cat-tile-body em{font-style:normal;font-size:11.5px;color:#7f93a6;}
.cat-tile.is-active .cat-tile-body b{color:#ffd75e;}
.cat-tile.is-skeleton{height:172px;background:#0d1721;animation:ytSkel 1.2s ease-in-out infinite;}
@keyframes ytSkel{0%,100%{opacity:.55}50%{opacity:.9}}

@media(max-width:600px){
  .sponsor-slot{margin:10px auto 14px;}
  .sponsor-slot-body{aspect-ratio:16/7;max-height:none;border-radius:12px;}
  .sponsor-slot-tip{display:none;}
  .spn-nav{width:28px;height:28px;font-size:16px;}
  .spn-dots{right:10px;bottom:8px;}
  .spn-ph{padding:0 14px;gap:10px;}
  .spn-ph-r i{display:none;}
  .spn-ph-r u{font-size:11px;padding:6px 12px;}
  .cat-tiles{grid-template-columns:repeat(2,1fr);gap:9px;}  .cat-tile-body{padding:8px 10px 10px;}
  .cat-tile-body b{font-size:13px;}
  .cat-tile-body em{font-size:10.5px;}
  .cat-tile.is-skeleton{height:140px;}
}