/* =========================================================
   UEA × 电竞专委会 品牌共建 · 背书组件样式 V4（2026-09-05）
   V4 调整（按用户反馈）：
   1) 信任专区显式 100% 宽铺满整页（不再受 .container 影响，背景更明显）
   2) Footer 双 logo 高度对齐（统一 padding + min-height + align stretch）
   3) 研学页「指导单位专栏」板块标头突出（更大 logo + 红底白文徽章 + 浅红描边）
   合规口径：仅「指导单位 / 品牌共建」；禁「官方认证 / 唯一 / 首家」
   ========================================================= */

:root {
  --cepc-red: #E60012;        /* CEPC 标准红：仅用于文字点缀与描边，不用于改标识 */
  --cepc-red-bright: #FF5A5F; /* 深色底（研学 Hero）上的亮红 */
  --tz-bg-1: #E8F1FE;          /* V4 信任专区背景起点：更明显的浅蓝 */
  --tz-bg-2: #F2F6FC;          /* V4 信任专区背景终点：近白浅蓝 */
}

/* ---------- 背书徽条：V3 撤销（保留 class 占位以便回滚） ---------- */
.endorse-chip { display: none; }
.yx-hero .endorse-chip { display: none; }

/* ---------- 首页信任专区：浅色铺满整页 · logo+主题在上 · 三卡在下 ---------- */
.trust-zone {
  /* V4：显式 100% 宽 + 全屏铺满背景（不再受任何父级宽度限制） */
  width: 100%;
  position: relative;
  background: linear-gradient(180deg, var(--tz-bg-1) 0%, var(--tz-bg-2) 100%);
  border-top: 1px solid #D6E4FF;
  border-bottom: 1px solid #D6E4FF;
  padding: 64px 0 72px;
  margin: 0;                   /* V4：去掉任何外边距防止父级被收窄 */
  box-sizing: border-box;
  overflow: hidden;             /* 防止内部 SVG/背景溢出 */
}
/* V4：trust-zone 内的 .container 兼容：取消 .container 居中收窄的影响（用户 V3 反馈） */
.trust-zone .container { width: 100%; max-width: none; margin: 0; padding: 0; }
.tz-inner {
  width: 100%;
  max-width: min(1280px, calc(100% - 48px));  /* V4：1280px 上限 + 至少留 24px 左右安全边距 */
  margin: 0 auto;
  padding: 0 8px;
  box-sizing: border-box;
  text-align: center;
}
.tz-head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
  width: 100%;
}
.tz-logo {
  height: 60px;                 /* V4：稍大一点让 logo 更醒目 */
  max-width: 240px;
  object-fit: contain;
  display: block;
}
.tz-title {
  margin: 0;
  font-size: clamp(22px, 2.6vw, 30px);   /* V4：稍大 */
  font-weight: 800;
  color: #0F1B2D;
  letter-spacing: 0.01em;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.tz-title::before {
  content: "";
  width: 7px;
  height: 28px;                 /* V4：随字号略加长 */
  border-radius: 4px;
  background: linear-gradient(180deg, var(--blue, #0066FF), var(--cyan, #00D4FF));
}
.tz-sub {
  margin: 14px 0 0;
  font-size: 13.5px;
  color: var(--muted, #6B7280);
  letter-spacing: 0.06em;
}
.tz-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));  /* minmax(0,1fr) 防内容溢出 */
  gap: 24px;
  margin-top: 40px;             /* V4：与标头稍拉开 */
  width: 100%;
  text-align: left;
}
.tz-value {
  background: #FFFFFF;
  border: 1px solid var(--line, #E8ECF2);
  border-radius: var(--radius-card, 16px);
  padding: 30px 26px;
  box-shadow: var(--shadow-sm, 0 2px 8px rgba(0,32,128,.06));
  transition: transform 0.25s var(--ease, ease), box-shadow 0.25s var(--ease, ease), border-color 0.25s var(--ease, ease);
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;                                    /* grid 子项最小宽度 0，避免文字撑爆 */
}
.tz-value:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow, 0 8px 30px rgba(0,32,128,.10));
  border-color: var(--line-b, #D6E4FF);
}
.tzv-icon {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: var(--blue-light, #F0F7FF);
  color: var(--blue, #0066FF);
  display: flex;
  align-items: center;
  justify-content: center;
}
.tzv-icon svg { width: 22px; height: 22px; }
.tz-value h4 {
  margin: 2px 0 0;
  color: #0F1B2D;
  font-size: 16.5px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.tz-value p {
  margin: 0;
  color: var(--ink-3, #4B5563);
  font-size: 13.5px;
  line-height: 1.75;
}
.tz-foot { margin-top: 32px; }
.tz-foot a {
  color: var(--blue, #0066FF);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  letter-spacing: 0.04em;
  border-bottom: 1px dashed rgba(0, 102, 255, 0.4);
  padding-bottom: 2px;
  transition: color 0.2s ease, border-color 0.2s ease;
}
.tz-foot a:hover { color: var(--blue-d, #0052CC); border-color: var(--blue-d, #0052CC); }

/* ---------- Footer：UEA + CEPC 双 logo 横向并排，高度对齐 ---------- */
.footer-logo-row {
  display: flex;
  align-items: stretch;          /* V4：让两个 logo wrap 同高 */
  flex-wrap: wrap;
  gap: 0;                        /* V4：gap 0，分隔线位置自己控制 */
  margin-bottom: 20px;
}
/* V4：双 logo 高度对齐 —— 重置两边 wrap 的 padding/margin/box，统一 min-height */
.footer-logo-row .footer-logo-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 12px;
  padding: 10px 16px;
  margin: 0;                     /* V4：去掉 .footer-logo-wrap 默认 margin-bottom:20px */
  min-height: 76px;              /* V4：固定一个最小高度，让两边对齐（UEA logo 56px + padding 10*2 = 76px） */
  box-sizing: border-box;
  box-shadow: 0 8px 30px rgba(0,102,255,.12);
  transition: transform .3s ease, box-shadow .3s ease;
}
.footer-logo-row .footer-logo-wrap:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 40px rgba(0,212,255,.18);
}
.footer-logo-row .footer-logo {
  height: 56px;
  width: auto;
  max-width: 280px;
  object-fit: contain;
  display: block;
}
/* V4：取消 V2 时块级 margin，让两 logo 紧贴在同一行 */
.footer-endorse-block { margin-bottom: 0; padding: 0; }
.footer-endorse-block .footer-logo-wrap { margin-bottom: 0; }
/* V4：致敬分隔线：在两个 logo 之间，高度与 logo 同高 */
.footer-logo-row .footer-endorse-block {
  position: relative;
  padding-left: 16px;
  margin-left: 16px;
}
.footer-logo-row .footer-endorse-block::before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  bottom: 14px;
  width: 1px;
  background: rgba(255, 255, 255, 0.22);
}

/* ---------- 研学页：指导单位专栏（突出板块标头 · V4 加强） ---------- */
.committee-section { padding: 12px 0 8px; }
.cm-head {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
  margin-bottom: 28px;
  padding: 22px 28px;            /* V4：加 padding 给底色留白 */
  background: linear-gradient(135deg, rgba(230,0,18,0.04) 0%, rgba(0,102,255,0.04) 100%);  /* V4：浅红蓝混合底色 */
  border: 1px solid rgba(230,0,18,0.18);   /* V4：浅红描边 */
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(15,27,45,0.04);
}
.cm-logo {
  height: 56px;                  /* V4：从 44px 加大到 56px，让 logo 与标头字号更协调 */
  max-width: 220px;
  object-fit: contain;
  display: block;
}
.cm-title-wrap { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; justify-content: center; }
.cm-title-wrap h2 { margin: 0; font-size: clamp(22px, 2.4vw, 28px); }  /* V4：标头字号加大 */
.cm-host {
  font-size: 13px;               /* V4：从 12.5 加到 13 */
  color: #FFFFFF;                /* V4：反白文，更醒目 */
  background: var(--cepc-red);   /* V4：直接用红底，不再用淡红描边胶囊 */
  border: 0;
  border-radius: 999px;
  padding: 5px 14px;
  font-weight: 700;
  letter-spacing: 0.04em;
  box-shadow: 0 4px 12px rgba(230,0,18,0.25);
}
.cm-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);   /* V4.3：删「专家观点」后 4→3 列，保持满铺 */
  gap: 16px;
}
.cm-card {
  background: #FFFFFF;
  border: 1px solid var(--line, #E8ECF2);
  border-radius: var(--radius-card, 16px);
  padding: 22px 18px 18px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  gap: 9px;
  box-shadow: var(--shadow-sm, 0 2px 8px rgba(0,32,128,.06));
  transition: transform 0.22s var(--ease, ease), box-shadow 0.22s var(--ease, ease), border-color 0.22s var(--ease, ease);
}
.cm-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow, 0 8px 30px rgba(0,32,128,.10));
  border-color: var(--line-b, #D6E4FF);
}
.cm-card .cmc-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--blue-light, #F0F7FF);
  color: var(--blue, #0066FF);
  display: flex;
  align-items: center;
  justify-content: center;
}
.cm-card .cmc-icon svg { width: 20px; height: 20px; }
.cm-card h4 { margin: 2px 0 0; color: #0F1B2D; font-size: 16px; font-weight: 700; letter-spacing: 0.02em; }
.cm-card p { margin: 0; color: var(--ink-3, #4B5563); font-size: 13px; line-height: 1.7; }
.cm-card .cmc-tag {
  margin-top: auto;
  align-self: flex-start;
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--cepc-red);
  border: 1px solid rgba(230, 0, 18, 0.3);
  background: rgba(230, 0, 18, 0.045);
  border-radius: 999px;
  padding: 2px 10px;
  font-weight: 600;
}
.cm-foot { margin-top: 18px; text-align: center; font-size: 13px; color: var(--muted, #6B7280); }

/* 研学页：生态墙专委会置顶 chip（视觉权重高于普通伙伴 · V4 升级） */
.yx-eco-chip-committee {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 18px 16px;
  border-radius: 14px;
  background: linear-gradient(180deg, #FFFFFF 0%, #FFF7F8 100%);  /* V4：从纯白改为白→极浅红渐变 */
  border: 1.5px solid rgba(230, 0, 18, 0.45);                      /* V4：描边加深 */
  box-shadow: 0 10px 28px rgba(230, 0, 18, 0.14);                  /* V4：阴影加深 */
  text-decoration: none;
  text-align: center;
  position: relative;
  overflow: hidden;
  min-width: 168px;                                                  /* V4：保证 chip 有合理的最小宽度，避免长名字被压扁 */
}
/* V4：顶部装饰条，让 chip 有「专区置顶」标识感 */
.yx-eco-chip-committee::before {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--cepc-red, #E60012) 0%, #FF5A5F 100%);
}
.yx-eco-chip-committee .ycc-logo {
  height: 44px;                  /* V4：从 32 → 44px，明显放大 */
  max-width: 150px;
  object-fit: contain;
  display: block;
}
.yx-eco-chip-committee .ycc-name {
  font-size: 12.5px;             /* V4：从 11.5 → 12.5px，提一档可读性 */
  color: #1F2A44;
  line-height: 1.5;
  font-weight: 600;
  letter-spacing: 0.01em;
}
.yx-eco-chip-committee .ycc-badge {
  font-size: 11.5px;             /* V4：从 10.5 → 11.5px */
  letter-spacing: 0.08em;        /* V4：从 0.12em 略减，字间距不至于过散 */
  color: #FFFFFF;                /* V4：反白文 */
  background: var(--cepc-red, #E60012);   /* V4：实心红底胶囊 */
  border: 0;
  border-radius: 999px;
  padding: 4px 12px;
  font-weight: 700;
  box-shadow: 0 4px 10px rgba(230, 0, 18, 0.28);   /* V4：胶囊立体感 */
}

/* ---------- 响应式 ---------- */
@media (max-width: 1024px) {
  .tz-values { grid-template-columns: 1fr; }
  .cm-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .tz-head { flex-direction: column; gap: 12px; }
  .cm-grid { grid-template-columns: 1fr; }
  .endorse-chip { font-size: 12.5px; }
}