/* 凤凰体育 A28 品牌层：仅覆盖品牌视觉与图标字形，不改动 Reference 的页面宽度/栅格/模块结构 */
:root {
  --fh-primary: #b81d2c;
  --fh-dark: #6b0f1a;
  --fh-deep: #8d1420;
  --fh-gold: #e2b04a;
  --fh-gold-lt: #f7e2b0;
  --fh-text: #373743;
  --fh-gray: #f5f5f7;
  --fh-tint: #f0cdd1;
}

/* Reference 使用的 iconfont 字体文件不随 A28 分发，这里以系统字形等价替代 */
.iconfont {
  font-family: inherit !important;
  font-style: normal;
  line-height: 1;
}
.icon-xiala:before { content: "\25BE"; }
.icon-zuihouqixianshijianhuoyanshijian:before { content: "\1F552"; font-size: .92em; }
.icon-icon-shequ-redu:before { content: "\1F525"; font-size: .92em; }

/* 品牌头部：深红 + 金色强调 */
.header { background: linear-gradient(180deg, var(--fh-deep) 0%, var(--fh-dark) 100%); }
.header .enfold .logo a img { width: auto; }
.header .enfold .nav .depositary ul li.is_active,
.header .enfold .nav .depositary ul li:hover { background: var(--fh-primary); }
.header .enfold .logo .wordmark {
  display: none;
}

/* 品牌页脚：深红底，文字统一白色（Reference 只给 p/dt 上了颜色，
   站点标语是裸文本节点会掉回默认黑，这里在容器上兜底） */
.footer,
.footer .enclose {
  color: #fff;
}
.footer .enclose p,
.footer .enclose p a,
.footer .enclose .advance dl dt {
  color: #fff;
}
.footer .enclose .advance dl dd a {
  color: var(--fh-tint);
}
.footer .enclose .advance dl dd a:hover {
  color: #fff;
}

/* 分页（Reference 原为内联样式，这里统一到品牌层） */
.fenye { display: flex; justify-content: center; align-items: center; padding: 20px 0; }
.fenye .epages {
  display: flex; gap: 8px; align-items: center; flex-wrap: wrap;
  justify-content: center; list-style: none; margin: 0; padding: 0;
}
.fenye .epages li { list-style: none; }
.fenye .epages a, .fenye .epages span {
  display: inline-block; min-width: 36px; height: 36px; line-height: 36px;
  text-align: center; padding: 0 12px; border: 1px solid #e3d7d9; border-radius: 6px;
  text-decoration: none; color: #333 !important; box-sizing: border-box;
  transition: all .3s ease; background: #fff;
}
.fenye .epages a:hover,
.fenye .epages a.on,
.fenye .epages a.active {
  background-color: var(--fh-primary); color: #fff !important; border-color: var(--fh-primary);
}

/* 状态色沿用 Reference 的 .fettle.start/.await/.end（已随 shared.css 一并品牌化），此处不再覆盖 */

/* 直播信号（比赛详情）：页面主 CTA，跳出新标签页播放。
   信号条数通常只有 1 条，用 auto-fit 让按钮自动撑满整行，
   而不是被固定 4 列栅格压成窄窄一格。 */
.semaphore {
  margin-top: 14px;
  padding: 16px 18px 18px;
  border: 1px solid var(--fh-tint);
  border-radius: 10px;
  background: linear-gradient(180deg, #fff6f7 0%, var(--fh-gray) 100%);
}
/* Reference 的 .semaphore 原本是横向 flex + nowrap（里面只放一行文字链接），
   A28 改成「按钮在上、说明文字在下」的纵向块，必须用同等特异性覆盖它的布局，
   否则按钮和说明文字会挤在一行并溢出。 */
.main .extrinsic .essence .utterance .fill_vacancy .autonomy .expound .semaphore {
  display: block;
  gap: 0;
  white-space: normal;
}
/* 说明文字放在按钮下方，按钮本身排在最前，保证第一眼看到的就是 CTA */
.signal-label {
  margin: 12px 0 0;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--fh-dark);
}
.signal-tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
  margin: 0 0 4px;
}
.signal-tabs .playbtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  min-height: 70px;
  padding: 14px 22px;
  border-radius: 10px;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: 2px;
  text-align: center;
  color: #fff !important;
  background: linear-gradient(135deg, #e0313f 0%, var(--fh-primary) 52%, var(--fh-deep) 100%);
  border: 2px solid var(--fh-gold);
  box-shadow: 0 6px 18px rgba(184, 29, 44, .34);
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.signal-tabs .playbtn:hover {
  filter: brightness(1.08);
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(184, 29, 44, .46);
}
.signal-tabs .playbtn:active { transform: translateY(0); box-shadow: 0 4px 12px rgba(184, 29, 44, .34); }
.signal-tabs .playbtn .play-mark {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex: none;
  border-radius: 50%;
  background: var(--fh-gold);
  color: var(--fh-dark);
  font-size: 17px;
  padding-left: 3px;
  box-sizing: border-box;
}
.signal-tip { margin: 4px 0 0; font-size: 13px; color: #8b8b96; }
.stage_tip { margin-top: 12px; padding: 14px; background: var(--fh-gray); border-radius: 6px; color: #666; font-size: 14px; }

/* 录像 / 集锦播放列表（录像详情、视频详情）：同样跳出新标签页播放 */
.play-list { padding: 6px 0 14px; }
.play-list h2 {
  font-size: 17px;
  font-weight: 700;
  color: var(--fh-deep);
  margin: 14px 0 8px;
  padding-left: 10px;
  border-left: 4px solid var(--fh-primary);
  line-height: 1.4;
}
.play-list ul { list-style: none; margin: 0; padding: 0; border: 1px solid #f0e2e4; border-radius: 8px; overflow: hidden; }
.play-list li { list-style: none; border-bottom: 1px solid #f4eaec; background: #fff; }
.play-list li:last-child { border-bottom: 0; }
.play-list li a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  font-size: 15px;
  color: var(--fh-text);
  line-height: 1.5;
}
.play-list li a:hover { background: #fdf0f1; color: var(--fh-deep); }
.play-list .play-mark {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  flex: none;
  border-radius: 50%;
  background: var(--fh-primary);
  color: #fff;
  font-size: 12px;
  padding-left: 2px;
  box-sizing: border-box;
}
.play-list li a:hover .play-mark { background: var(--fh-gold); color: var(--fh-dark); }

/* 赛事频道标签条：Reference 的 .contend 标签，当前标签高亮为品牌色 */
.contend ol li a.thisclass {
  background: var(--fh-primary);
  color: #fff !important;
  border-color: var(--fh-primary);
}

/* 积分榜 / 射手榜表格（Reference 无表格样式，属 A28 新增模块） */
.datatable {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  font-size: 14px;
  margin: 4px 0 18px;
}
.datatable th,
.datatable td {
  border: 1px solid #efe4e6;
  padding: 12px 10px;
  text-align: center;
  color: var(--fh-text);
}
.datatable thead th {
  background: #fdf0f1;
  color: var(--fh-deep);
  font-weight: 700;
  white-space: nowrap;
}
.datatable tbody tr:hover td { background: #fffafa; }
.datatable td.num { color: var(--fh-primary); font-weight: 700; }
.heading .lateral .season {
  font-weight: 400;
  font-size: 12px;
  color: #9a8f91;
  margin-left: 6px;
}

/* 暂无数据 */
.nodata {
  padding: 40px 16px;
  text-align: center;
  color: #9a8f91;
  font-size: 14px;
  background: #fff;
  border-radius: 8px;
  margin: 4px 0 18px;
}
.nodata a { color: var(--fh-primary); }

@media screen and (max-width: 768px) {
  .datatable { font-size: .26rem; }
  .datatable th, .datatable td { padding: .2rem .12rem; }
  .nodata { padding: .6rem .3rem; font-size: .28rem; }
}

/* 热门标签（Reference 静态模块） */
.hot_tags { display: flex; flex-wrap: wrap; gap: 10px; padding: 4px 0 14px; }
.hot_tags a {
  display: inline-block; padding: 6px 14px; border-radius: 999px; font-size: 13px;
  background: #fdf0f1; color: var(--fh-deep); border: 1px solid #f0cdd1;
}
.hot_tags a:hover { background: var(--fh-primary); color: #fff; border-color: var(--fh-primary); }

/* 首页 H1 / 站点文案区 */
.brandline { padding: 16px 0 0; }
.brandline h1 { font-size: 22px; color: var(--fh-deep); margin: 0 0 6px; font-weight: 700; }
.brandline p { margin: 0; font-size: 14px; color: #6d6d78; line-height: 1.7; }
.seotext { padding: 18px 0 26px; font-size: 13px; color: #79798a; line-height: 1.9; }
.seotext h2 { font-size: 16px; color: var(--fh-deep); margin: 0 0 8px; }
.seotext a { color: var(--fh-primary); }

/* 资讯 / 录像正文 */
.richtext { font-size: 15px; line-height: 1.9; color: #3b3b46; padding: 10px 0 20px; word-break: break-word; }
.richtext img { max-width: 100%; height: auto; border-radius: 4px; }
.richtext p { margin: 0 0 14px; }

@media screen and (max-width: 768px) {
  .semaphore { padding: .28rem .26rem .3rem; border-radius: .18rem; }
  .signal-label { font-size: .3rem; margin: .22rem 0 0; }
  /* 手机上信号按钮撑满整行，保证点击热区足够大 */
  .signal-tabs { grid-template-columns: repeat(auto-fit, minmax(3.4rem, 1fr)); gap: .24rem; margin: 0 0 .08rem; }
  .signal-tabs .playbtn { min-height: 1.24rem; font-size: .42rem; gap: .2rem; padding: .24rem .26rem; border-radius: .18rem; letter-spacing: .04rem; }
  .signal-tabs .playbtn .play-mark { width: .68rem; height: .68rem; font-size: .32rem; }
  .signal-tip { font-size: .26rem; }
  .play-list h2 { font-size: .34rem; }
  .play-list li a { font-size: .3rem; padding: .28rem .26rem; }
  .play-list .play-mark { width: .5rem; height: .5rem; font-size: .24rem; }
  .brandline h1 { font-size: .48rem; }
  .brandline p { font-size: .28rem; }
  .seotext { font-size: .26rem; }
  .richtext { font-size: .32rem; }
  .header { position: fixed; }
}

/* ---- 赛事页各 Tab 的唯一主模块标题 ----
   语义升为 h2，视觉与 Reference 的 .heading .lateral strong 完全一致；
   .heading 是 flex + nowrap，h2 必须清掉浏览器默认 margin，否则模块高度会被撑高。 */
.heading .lateral h2 {
  margin: 0;
  font-size: 18px;
  font-weight: bold;
  color: #1b203e;
  line-height: 1.45;
  /* 长赛事名（如「FIBA欧女微国锦」「东南亚运男篮」）允许换行，不撑破模块 */
  white-space: normal;
  word-break: break-word;
}
.heading .lateral { min-width: 0; }

/* Tab 数据区下方的说明文案。合并掉重复标题模块后，上间距收紧，避免出现大片空白 */
.seotext.tabnote { padding: 6px 0 24px; }
.seotext.tabnote p { margin: 0; }

@media screen and (max-width: 768px) {
  .heading .lateral h2 { font-size: 0.34667rem; line-height: 1.5; }
  .seotext.tabnote { padding: 0.1rem 0 0.4rem; }
}
