/* =====================================================================
   Tencent Cloud 风格首页样式 (首页 index.html 专属)
   注意：--tc-* 颜色变量默认取下方值；前台 header 末尾会引入
   /theme-admin1/theme-config.php（后台可改），其值将覆盖这里的默认值。
   这样即使后台接口不可用，页面也能正常显示默认蓝色风格。
   ===================================================================== */

:root {
  --tc-blue: #006EFF;
  --tc-blue-d: #0052D9;
  --tc-blue-l: #E8F3FF;
  --tc-ink: #0052D9;
  --tc-ink-2: #0052D9;
  --tc-text: #1D2129;
  --tc-sub: #86909C;
  --tc-bg: #F5F7FA;
  --tc-line: #E5E6EB;
  --tc-radius: 8px;
  --tc-shadow: 0 6px 20px rgba(10, 31, 68, .08);
  --tc-shadow-h: 0 12px 30px rgba(0, 110, 255, .18);
  --tc-gradient: linear-gradient(135deg, #006EFF 0%, #0052D9 100%);
}

/* 容器 */
.tc-container {
  width: 1200px;
  max-width: 92%;
  margin: 0 auto;
}

/* =====================================================================
   产品与服务分类导航
   参考专业版 www 主题 comp_products.html 的「标题 + 分类网格」：
   居中标题 / 居中副标题+查看全部 / 等分分类网格 / 悬停蓝色下划线
   ===================================================================== */
.tc-productnav {
  background: #fff;
  padding: 48px 0 28px;
}
.tc-productnav-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 16px 0 46px;
}
.tc-productnav-title {
  margin: 0;
  font-size: 30px;
  line-height: 40px;
  font-weight: 600;
  letter-spacing: .5px;
  color: var(--tc-text, #1d2129);
}
.tc-productnav-desc {
  margin: 18px 0 0;
  font-size: 16px;
  line-height: 24px;
  color: rgba(34, 34, 34, .9);
}
.tc-productnav-more {
  margin-left: 6px;
  color: var(--tc-blue, #165DFF);
  text-decoration: none;
  white-space: nowrap;
}
.tc-productnav-more:hover { text-decoration: underline; }
.tc-productnav-more i {
  display: inline-block;
  margin-left: 2px;
  font-style: normal;
  transition: transform .25s;
}
.tc-productnav-more:hover i { transform: translateX(3px); }

/* 分类网格：≤6 类按实际数量排满一行并居中，>6 类固定 6 列换行 */
.tc-productnav-grid {
  display: grid;
  gap: 10px;
  margin: 0 auto;
}
.tc-productnav-grid.cols-1 { grid-template-columns: 1fr; max-width: min(280px, 100%); }
.tc-productnav-grid.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: min(520px, 100%); }
.tc-productnav-grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: min(780px, 100%); }
.tc-productnav-grid.cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: min(1040px, 100%); }
.tc-productnav-grid.cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); max-width: min(1200px, 100%); }
.tc-productnav-grid.cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); max-width: min(1200px, 100%); }
.tc-productnav-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 8px 26px;
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  color: var(--tc-text, #1d2129);
  text-align: center;
  text-decoration: none;
  transition: color .3s;
}
.tc-productnav-item::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 0;
  border-bottom: 2px solid var(--tc-blue, #165DFF);
  transition: width .45s ease-out;
}
.tc-productnav-item:hover { color: var(--tc-blue, #165DFF); }
.tc-productnav-item:hover::after { width: 100%; }

/* —— 产品分组：Tab + 卡片（Tab = 一级分组，卡片 = 二级分组；纯 CSS radio 切换，无 JS） ——
   radio 在前、bar/panels 在后为同级兄弟，才能用 :checked ~ 控制选中态 */
.tc-prodtabs-cb {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}
.tc-prodtabs-bar {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  padding: 2px 0 28px;
}
.tc-prodtabs-tab {
  position: relative;
  padding: 10px 18px;
  font-size: 15px;
  line-height: 1;
  color: #4e5969;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  transition: color .2s;
}
.tc-prodtabs-tab:hover { color: var(--tc-blue, #165DFF); }
/* 选中 Tab：蓝色 + 底部下划线 */
#tcPTab1:checked ~ .tc-prodtabs-bar .tl1,
#tcPTab2:checked ~ .tc-prodtabs-bar .tl2,
#tcPTab3:checked ~ .tc-prodtabs-bar .tl3,
#tcPTab4:checked ~ .tc-prodtabs-bar .tl4,
#tcPTab5:checked ~ .tc-prodtabs-bar .tl5,
#tcPTab6:checked ~ .tc-prodtabs-bar .tl6,
#tcPTab7:checked ~ .tc-prodtabs-bar .tl7,
#tcPTab8:checked ~ .tc-prodtabs-bar .tl8 {
  color: var(--tc-blue, #165DFF);
  font-weight: 600;
}
#tcPTab1:checked ~ .tc-prodtabs-bar .tl1::after,
#tcPTab2:checked ~ .tc-prodtabs-bar .tl2::after,
#tcPTab3:checked ~ .tc-prodtabs-bar .tl3::after,
#tcPTab4:checked ~ .tc-prodtabs-bar .tl4::after,
#tcPTab5:checked ~ .tc-prodtabs-bar .tl5::after,
#tcPTab6:checked ~ .tc-prodtabs-bar .tl6::after,
#tcPTab7:checked ~ .tc-prodtabs-bar .tl7::after,
#tcPTab8:checked ~ .tc-prodtabs-bar .tl8::after {
  content: '';
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 0;
  height: 3px;
  border-radius: 2px;
  background: var(--tc-blue, #165DFF);
}
.tc-prodtabs-panels { max-width: 1200px; margin: 0 auto; }
.tc-prodtabs-panel {
  display: none;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
#tcPTab1:checked ~ .tc-prodtabs-panels .p1,
#tcPTab2:checked ~ .tc-prodtabs-panels .p2,
#tcPTab3:checked ~ .tc-prodtabs-panels .p3,
#tcPTab4:checked ~ .tc-prodtabs-panels .p4,
#tcPTab5:checked ~ .tc-prodtabs-panels .p5,
#tcPTab6:checked ~ .tc-prodtabs-panels .p6,
#tcPTab7:checked ~ .tc-prodtabs-panels .p7,
#tcPTab8:checked ~ .tc-prodtabs-panels .p8 { display: grid; }
.tc-prodcard {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 22px 20px 18px;
  background: #fff;
  border: 1px solid #eceff5;
  border-radius: 12px;
  text-decoration: none;
  transition: border-color .25s, box-shadow .25s, transform .25s;
}
.tc-prodcard:hover {
  border-color: #c9d8ff;
  box-shadow: 0 10px 26px rgba(22, 93, 255, .10);
  transform: translateY(-2px);
}
.tc-prodcard-tag {
  align-self: flex-start;
  padding: 4px 8px;
  font-size: 12px;
  line-height: 1;
  color: var(--tc-blue, #165DFF);
  background: #f2f6ff;
  border-radius: 4px;
}
.tc-prodcard-title {
  margin: 2px 0 0;
  font-size: 17px;
  line-height: 24px;
  font-weight: 600;
  color: var(--tc-text, #1d2129);
}
.tc-prodcard-desc {
  margin: 0;
  min-height: 40px;
  font-size: 13px;
  line-height: 20px;
  color: #86909c;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.tc-prodcard-btn {
  margin-top: auto;
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 7px 16px;
  font-size: 13px;
  line-height: 1;
  color: #fff;
  background: var(--tc-blue, #165DFF);
  border-radius: 6px;
  transition: background .2s;
}
.tc-prodcard-btn i { font-style: normal; transition: transform .2s; }
.tc-prodcard:hover .tc-prodcard-btn { background: #0e42d2; }
.tc-prodcard:hover .tc-prodcard-btn i { transform: translateX(2px); }

/* 平板/手机：降列，Tab 栏横向滚动 */
@media (max-width: 1280px) {
  .tc-prodtabs-panel { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 992px) {
  .tc-prodtabs-panel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tc-prodtabs-bar {
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .tc-prodtabs-bar::-webkit-scrollbar { display: none; }
}
@media (max-width: 768px) {
  .tc-prodtabs-panel { grid-template-columns: 1fr; }
  .tc-prodtabs-tab { padding: 9px 14px; font-size: 14px; }
  .tc-prodcard { padding: 18px 16px 16px; }
}

/* 分类导航：平板自适应
   只对「列数多于实际分类」的情况降列，cols-1/cols-2/cols-3 保持原列数并居中，
   避免分类很少时右侧留出空位。 */
@media (max-width: 1280px) {
  .tc-productnav-grid.cols-5,
  .tc-productnav-grid.cols-6 { grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: 100%; }
}
@media (max-width: 992px) {
  .tc-productnav { padding: 40px 0 16px; }
  .tc-productnav-head { padding: 12px 0 34px; }
  .tc-productnav-title { font-size: 24px; line-height: 32px; }
  .tc-productnav-desc { margin-top: 12px; font-size: 14px; line-height: 22px; }
  .tc-productnav-grid.cols-4,
  .tc-productnav-grid.cols-5,
  .tc-productnav-grid.cols-6 { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 100%; }
  .tc-productnav-item { font-size: 15px; }
}

/* 手机端下拉：隐藏 checkbox 驱动（无需 JS），横向标签栏桌面隐藏 */
.tc-productnav-cb {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}
.tc-productnav-bar { display: none; }

/* 手机端：横向分组标签栏 + 右侧下拉箭头，点箭头展开全部分组胶囊 */
@media (max-width: 768px) {
  .tc-productnav { padding: 0 0 14px; background: #f5f7fa; }
  .tc-productnav > .tc-container { width: 100%; max-width: 100%; padding: 0 12px; }
  .tc-productnav-head { padding: 26px 4px 20px; }
  .tc-productnav-title { font-size: 19px; line-height: 27px; }
  .tc-productnav-desc { margin-top: 8px; font-size: 13px; line-height: 21px; }

  /* 标签栏：当前分组蓝色 + 底部下划线，右侧箭头固定不滚动 */
  .tc-productnav-bar {
    display: flex;
    align-items: stretch;
    height: 52px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(10, 31, 68, .06);
    overflow: hidden;
  }
  .tc-productnav-cb:checked ~ .tc-productnav-bar { border-radius: 8px 8px 0 0; }
  .tc-productnav-tabs {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .tc-productnav-tabs::-webkit-scrollbar { display: none; }
  .tc-productnav-tab {
    position: relative;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0 16px;
    font-size: 15px;
    line-height: 1;
    color: #1d2129;
    text-decoration: none;
    white-space: nowrap;
  }
  .tc-productnav-tab.is-active { color: var(--tc-blue, #165DFF); font-weight: 600; }
  .tc-productnav-tab.is-active::after {
    content: '';
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 5px;
    height: 3px;
    background: var(--tc-blue, #165DFF);
    border-radius: 2px;
  }
  .tc-productnav-btn {
    flex: 0 0 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px solid #f0f2f5;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
  }
  .tc-productnav-arrow {
    font-style: normal;
    font-size: 14px;
    line-height: 1;
    color: #1d2129;
    transition: transform .25s;
  }
  /* 收起时箭头朝下，展开时朝上 */
  .tc-productnav-cb:checked ~ .tc-productnav-bar .tc-productnav-arrow { transform: rotate(180deg); }
  .tc-productnav-cb:not(:checked) ~ .tc-productnav-grid { display: none; }

  /* 展开后的全部分组胶囊 */
  .tc-productnav-grid,
  .tc-productnav-grid.cols-1,
  .tc-productnav-grid.cols-2,
  .tc-productnav-grid.cols-3,
  .tc-productnav-grid.cols-4,
  .tc-productnav-grid.cols-5,
  .tc-productnav-grid.cols-6 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    max-width: 100%;
    padding: 12px 12px 14px;
    background: #fff;
    border-radius: 0 0 8px 8px;
  }
  .tc-productnav-item {
    padding: 11px 4px;
    font-size: 14px;
    line-height: 20px;
    color: #1d2129;
    background: #e9eff8;
    border-radius: 6px;
    transition: background .2s, color .2s;
  }
  .tc-productnav-item::after { display: none; }
  .tc-productnav-item.is-active {
    color: #fff;
    background: var(--tc-blue, #165DFF);
  }
  .tc-productnav-item:hover,
  .tc-productnav-item:active { color: #1d2129; background: #dbe6f7; }
  .tc-productnav-item.is-active:hover,
  .tc-productnav-item.is-active:active { color: #fff; background: var(--tc-blue, #165DFF); }
}
@media (max-width: 360px) {
  .tc-productnav-tab { padding: 0 12px; font-size: 14px; }
  .tc-productnav-tab.is-active::after { left: 12px; right: 12px; }
  .tc-productnav-item { font-size: 13px; }
}

/* 区块通用 */
.tc-section {
  padding: 64px 0;
}
.tc-section--alt {
  background: var(--tc-bg);
}

/* 区块标题 */
.tc-sec-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 36px;
}
.tc-sec-title {
  font-size: 30px;
  font-weight: 600;
  color: var(--tc-text);
  letter-spacing: 1px;
  position: relative;
  padding-left: 16px;
  line-height: 1.2;
}
.tc-sec-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 26px;
  border-radius: 3px;
  background: var(--tc-gradient);
}
.tc-sec-sub {
  margin-top: 10px;
  font-size: 15px;
  color: var(--tc-sub);
}
.tc-sec-more {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  color: var(--tc-blue);
  text-decoration: none;
  padding: 8px 16px;
  border: 1px solid var(--tc-line);
  border-radius: 20px;
  transition: .25s;
}
.tc-sec-more:hover {
  border-color: var(--tc-blue);
  background: var(--tc-blue-l);
}
.tc-sec-more i {
  font-style: normal;
  font-size: 18px;
  line-height: 1;
}

/* =====================================================================
   1. 产品与服务（热门产品）
   ===================================================================== */
.tc-products {
  background: #fff;
}
.tc-prod-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 28px;
}
.tc-prod-tab {
  border: 1px solid var(--tc-line);
  background: #fff;
  color: var(--tc-text);
  font-size: 15px;
  padding: 9px 22px;
  border-radius: 22px;
  cursor: pointer;
  transition: .25s;
}
.tc-prod-tab:hover {
  color: var(--tc-blue);
  border-color: var(--tc-blue);
}
.tc-prod-tab.is-active {
  background: var(--tc-gradient);
  border-color: transparent;
  color: #fff;
  box-shadow: var(--tc-shadow-h);
}
.tc-prod-panel {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.tc-prod-panel.is-hidden {
  display: none;
}
.tc-prod-card {
  display: block;
  position: relative;
  padding: 26px 24px;
  border: 1px solid var(--tc-line);
  border-radius: var(--tc-radius);
  background: #fff;
  text-decoration: none;
  color: inherit;
  transition: .25s;
  overflow: hidden;
}
.tc-prod-card::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 3px;
  background: var(--tc-gradient);
  transform: scaleX(0);
  transform-origin: left;
  transition: .3s;
}
.tc-prod-card:hover {
  border-color: transparent;
  box-shadow: var(--tc-shadow-h);
  transform: translateY(-4px);
}
.tc-prod-card:hover::after {
  transform: scaleX(1);
}
.tc-prod-icon {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: var(--tc-blue-l);
  color: var(--tc-blue);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 16px;
}
.tc-prod-card h4 {
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 8px;
  color: var(--tc-text);
}
.tc-prod-card p {
  font-size: 13px;
  color: var(--tc-sub);
  line-height: 1.6;
  min-height: 42px;
  margin: 0;
}
.tc-prod-go {
  display: inline-block;
  margin-top: 14px;
  font-size: 13px;
  color: var(--tc-blue);
  font-weight: 500;
}

/* =====================================================================
   2. 行业解决方案（横向手风琴）
   参考腾讯云「服务千行百业的全栈解决方案」：居中标题 + 副标题 +
   等宽卡片；鼠标悬停时该卡片横向展开，显示行业简介与「在线咨询」按钮
   ===================================================================== */
.tc-industry {
  background: #fff;
}
/* 该区块比通用 1200px 容器更宽，充分利用左右空间；
   配合 max-width 与相对 padding，各分辨率下都不会横向溢出 */
.tc-container-wide {
  width: 100%;
  max-width: 1680px;
  padding: 0 44px;
  box-sizing: border-box;
}
@media (max-width: 1440px) {
  .tc-container-wide { padding: 0 36px; }
}
@media (max-width: 1100px) {
  .tc-container-wide { padding: 0 28px; }
}
.tc-industry-head {
  text-align: center;
  padding: 4px 0 44px;
}
.tc-industry-title {
  margin: 0;
  font-size: 30px;
  line-height: 40px;
  font-weight: 600;
  letter-spacing: .5px;
  color: var(--tc-text);
}
.tc-industry-sub {
  margin: 16px 0 0;
  font-size: 16px;
  line-height: 24px;
  color: rgba(34, 34, 34, .9);
}
/* 手风琴容器：所有卡片等宽，悬停的卡片 flex-grow 变大；
   高度随视口宽度自适应（400~480px），避免宽屏下显得扁、窄屏下过高 */
.tc-industry-panel {
  display: flex;
  height: clamp(400px, 30vw, 480px);
  overflow: hidden;
  border-radius: var(--tc-radius);
  background: #0b1f47;
}
.tc-industry-card {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  overflow: hidden;
  border-right: 1px solid rgba(255, 255, 255, .14);
  transition: flex-grow .55s cubic-bezier(.25, .8, .25, 1);
}
.tc-industry-card:last-child { border-right: 0; }
.tc-industry-card:hover { flex-grow: 5; }

.tc-industry-card-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #1b3a7a;
  background-size: cover;
  background-position: center;
  transform: scale(1.03);
  transition: transform .9s ease;
}
.tc-industry-card:hover .tc-industry-card-bg { transform: scale(1.1); }

.tc-industry-card-mask {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(5, 20, 55, .70) 0%, rgba(5, 20, 55, .40) 42%, rgba(5, 20, 55, .82) 100%);
  transition: background .4s;
}
.tc-industry-card:hover .tc-industry-card-mask {
  background: linear-gradient(180deg, rgba(5, 20, 55, .76) 0%, rgba(5, 20, 55, .52) 40%, rgba(5, 20, 55, .88) 100%);
}

/* 卡片标题：收起时也能看清，所以固定宽度让其自动换行 */
.tc-industry-card-title {
  position: absolute;
  left: 26px;
  top: 26px;
  z-index: 2;
  margin: 0;
  width: 150px;
  font-size: 19px;
  line-height: 28px;
  font-weight: 600;
  color: #fff;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .45);
}
.tc-industry-card-title a {
  color: inherit;
  text-decoration: none;
}

/* 展开后出现的简介 + 咨询按钮：定宽，避免展开动画过程中文字回流抖动 */
.tc-industry-card-body {
  position: absolute;
  left: 26px;
  bottom: 32px;
  z-index: 2;
  width: 480px;
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .35s ease .1s, transform .5s ease .1s;
  pointer-events: none;
}
.tc-industry-card:hover .tc-industry-card-body {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.tc-industry-card-desc {
  margin: 0 0 24px;
  font-size: 15px;
  line-height: 28px;
  color: rgba(255, 255, 255, .9);
}
.tc-industry-card-btn {
  display: inline-block;
  height: 40px;
  padding: 0 28px;
  font-size: 15px;
  line-height: 40px;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  background: var(--tc-blue);
  transition: background .25s, transform .25s;
}
.tc-industry-card-btn:hover {
  background: var(--tc-blue-d);
  transform: translateY(-2px);
}

/* 中等宽度（993~1140）：卡片变窄，标题/简介几何随之收紧，
   否则 150px 的标题盒会超出卡片被 overflow:hidden 裁掉 */
@media (max-width: 1140px) and (min-width: 993px) {
  .tc-industry-card-title {
    left: 16px;
    top: 20px;
    width: 118px;
    font-size: 16px;
    line-height: 24px;
  }
  .tc-industry-card-body {
    left: 16px;
    bottom: 22px;
    width: 400px;
  }
  .tc-industry-card-desc {
    margin-bottom: 18px;
    font-size: 14px;
    line-height: 25px;
  }
}

/* 触摸屏没有 hover：取消手风琴，改为纵向堆叠、信息直出 */
@media (max-width: 992px) {
  .tc-industry-panel {
    display: block;
    height: auto;
    background: transparent;
  }
  .tc-industry-card,
  .tc-industry-card:hover {
    display: block;
    flex: none;
    height: auto;
    margin-bottom: 14px;
    overflow: hidden;
    border-right: 0;
    border-radius: var(--tc-radius);
  }
  .tc-industry-card:last-child { margin-bottom: 0; }
  /* 注意：必须用 relative 而不是 static —— 背景图/遮罩是 absolute 定位的，
     static 元素的 z-index 无效，会被背景图盖住 */
  .tc-industry-card-title {
    position: relative;
    left: auto;
    top: auto;
    width: auto;
    padding: 26px 24px 0;
    font-size: 18px;
    line-height: 26px;
  }
  .tc-industry-card-body {
    position: relative;
    left: auto;
    bottom: auto;
    width: auto;
    padding: 12px 24px 26px;
    opacity: 1;
    transform: none;
    pointer-events: auto;
  }
  .tc-industry-card-desc {
    margin-bottom: 16px;
    font-size: 14px;
    line-height: 24px;
  }
}

/* =====================================================================
   3. 为什么选择我们（优势）
   ===================================================================== */
.tc-adv-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.tc-adv-card {
  background: #fff;
  border: 1px solid var(--tc-line);
  border-radius: var(--tc-radius);
  padding: 32px 26px;
  text-align: center;
  transition: .25s;
}
.tc-adv-card:hover {
  box-shadow: var(--tc-shadow);
  transform: translateY(-4px);
}
.tc-adv-num {
  font-size: 34px;
  font-weight: 700;
  background: var(--tc-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 12px;
}
.tc-adv-card h4 {
  font-size: 17px;
  font-weight: 600;
  color: var(--tc-text);
  margin-bottom: 10px;
}
.tc-adv-card p {
  font-size: 13px;
  line-height: 1.7;
  color: var(--tc-sub);
  margin: 0;
}

/* =====================================================================
   4. 数据看板（蓝色统计条）
   ===================================================================== */
.tc-stats {
  background: #fff;
  color: var(--tc-text);
  border-top: 1px solid var(--tc-line);
  border-bottom: 1px solid var(--tc-line);
}
.tc-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  text-align: center;
}
.tc-stat-num {
  font-size: 44px;
  font-weight: 700;
  line-height: 1.1;
  background: var(--tc-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.tc-stat-num small {
  font-size: 22px;
  font-weight: 600;
  -webkit-text-fill-color: var(--tc-blue);
}
.tc-stat-label {
  margin-top: 8px;
  font-size: 15px;
  color: var(--tc-sub);
}

/* =====================================================================
   5. 全球基础设施（地图）
   ===================================================================== */
.tc-global {
  background: #fff;
}
.tc-global .intl-map-dot-layer {
  background: rgba(0, 110, 255, .25);
  border: 1px solid var(--tc-blue);
}
.tc-global .intl-map-dot.style-1 .intl-map-dot-layer {
  background: rgba(0, 110, 255, .25);
  border-color: var(--tc-blue);
}
.tc-global .intl-map-dot.style-2 .intl-map-dot-layer {
  background: rgba(0, 82, 217, .18);
  border-color: var(--tc-blue-d);
}
.tc-global .intl-map-dot-tit {
  color: var(--tc-text);
}
.tc-global .intl-map-bubble-inner {
  border-top: 3px solid var(--tc-blue);
}

/* =====================================================================
   6. 合作伙伴 logo 墙
   ===================================================================== */
.tc-partners {
  background: var(--tc-bg);
  padding: 40px 0;
}
.tc-partners .tc-sec-head { margin-bottom: 22px; }
.tc-partners .tc-sec-title { font-size: 24px; }
.tc-partners .tc-sec-sub { font-size: 14px; }
.tc-logo-wall {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 12px;
}
.tc-logo-wall li {
  list-style: none;
  height: 64px;
  background: #fff;
  border: 1px solid var(--tc-line);
  border-radius: var(--tc-radius);
  background-size: 52% auto;
  background-position: center;
  background-repeat: no-repeat;
  transition: .25s;
}
.tc-logo-wall li:hover {
  border-color: var(--tc-blue);
  box-shadow: var(--tc-shadow);
}

/* 友情链接（友联配置） */
.tc-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin-top: 24px;
  padding-top: 22px;
  border-top: 1px solid var(--tc-line);
}
.tc-links-label {
  font-size: 14px;
  font-weight: 600;
  color: var(--tc-text);
  flex-shrink: 0;
}
.tc-links-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
}
.tc-links-list a,
.tc-links-list span {
  font-size: 14px;
  color: var(--tc-sub);
  text-decoration: none;
  transition: color .2s;
}
.tc-links-list a:hover {
  color: var(--tc-blue);
}

/* =====================================================================
   7. 新闻资讯
   ===================================================================== */
.tc-news {
  background: #fff;
}
.tc-news-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
.tc-news-feature {
  border: 1px solid var(--tc-line);
  border-radius: var(--tc-radius);
  padding: 28px;
  background: linear-gradient(160deg, #f4f9ff, #fff);
}
.tc-news-feature .tag {
  display: inline-block;
  background: var(--tc-blue-l);
  color: var(--tc-blue);
  font-size: 12px;
  padding: 3px 10px;
  border-radius: 4px;
  margin-bottom: 14px;
}
.tc-news-feature h3 {
  font-size: 20px;
  font-weight: 600;
  color: var(--tc-text);
  margin-bottom: 12px;
  line-height: 1.5;
}
.tc-news-feature p {
  font-size: 14px;
  color: var(--tc-sub);
  line-height: 1.8;
  margin: 0;
}
.tc-news-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.tc-news-list li {
  border: 1px solid var(--tc-line);
  border-radius: var(--tc-radius);
  background: #fff;
  overflow: hidden;
  transition: .2s;
}
.tc-news-list li:hover {
  border-color: var(--tc-blue);
  box-shadow: var(--tc-shadow);
}
.tc-news-list a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: var(--tc-text);
  gap: 14px;
  padding: 16px 18px;
}
.tc-news-list .tc-news-t {
  font-size: 15px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: .2s;
}
.tc-news-list a:hover .tc-news-t {
  color: var(--tc-blue);
}
.tc-news-list .tc-news-d {
  flex: none;
  font-size: 13px;
  color: var(--tc-sub);
}

/* =====================================================================
   响应式
   ===================================================================== */
@media (max-width: 992px) {
  .tc-prod-panel { grid-template-columns: repeat(2, 1fr); }
  .tc-adv-grid,
  .tc-logo-wall { grid-template-columns: repeat(2, 1fr); }
  .tc-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 24px 0; }
  .tc-news-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .tc-section { padding: 40px 0; }
  .tc-sec-head { flex-direction: column; align-items: flex-start; gap: 14px; }
  .tc-prod-panel,
  .tc-adv-grid,
  .tc-logo-wall,
  .tc-stats-grid { grid-template-columns: 1fr; }
  /* 行业解决方案：手机端字号收紧（布局已在 992 断点改为纵向堆叠） */
  .tc-industry-head { padding: 0 0 26px; }
  .tc-industry-title { font-size: 22px; line-height: 30px; }
  .tc-industry-sub { margin-top: 12px; font-size: 14px; line-height: 22px; }
  .tc-logo-wall { grid-template-columns: repeat(2, 1fr); }
}

/* =====================================================================
   顶部导航栏三级下拉菜单（网站资讯 / 渠道合作 / 解决方案 / 更多）
   根因：原 common.css 仅定义 .third-menu{display:none}，缺少 hover 显示规则，
   导致这些下拉在所有页面（不止其它页面）都无法展开。统一在此补充 hover 显示。
   ===================================================================== */
.common-header.no-touch .nav .nav-item.spec,
.common-header.no-touch .nav .nav-item.nav-drop-down-wrap {
  position: relative;
}
/* 带通栏面板的导航项取消相对定位，让面板以 .common-header-content 为定位参照
   （这样 left/right:0 就是整屏宽度，形成通栏展开效果） */
.common-header.no-touch .nav .nav-item.spec:has(> .third-menu) {
  position: static;
}
/* 三级菜单 third-menu（网站资讯 / 渠道合作 / 解决方案 / 更多）：展开时为栅格通栏面板 */
.common-header.no-touch .nav .nav-item.spec:hover .third-menu,
.common-header.no-touch .nav .nav-item.nav_item.qz.spec:hover .third-menu,
.common-header.no-touch .nav .nav-item.spec:focus-within .third-menu,
.common-header.no-touch .nav .nav-item.nav-drop-down-wrap:hover .third-menu,
.common-header.no-touch .nav .nav-item.open .third-menu {
  display: grid !important;
}
/* 全部产品 / 更多 的容器支持点击 .open 展开（hover 之外的兜底）*/
.common-header.no-touch .nav .nav-item.nav-drop-down-wrap.open .nav-drop-down-container {
  display: block !important;
}
/* 三级下拉（网站资讯 / 渠道合作 / 解决方案 / 更多）文字右侧的展开箭头：
   参考 www.7ccn.cn static/css/nav.css 的 .nav-arrow::after（灰色细 V #959cad，
   悬停/展开时旋转 180° 朝上并变品牌蓝）。只作用于确实带 .third-menu 的项 */
.common-header .nav .nav-item.spec:has(> .third-menu) > span {
  padding-right: 15px;
}
.common-header .nav .nav-item.spec:has(> .third-menu) > span::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 1px;
  width: 7px;
  height: 7px;
  box-sizing: border-box;
  border-left: 2px solid #959cad;
  border-bottom: 2px solid #959cad;
  transform: translateY(-50%) rotate(-45deg);
  transition: transform .3s ease, border-color .3s ease;
}
.common-header.no-touch .nav .nav-item.spec:has(> .third-menu):hover > span::after,
.common-header.no-touch .nav .nav-item.spec:has(> .third-menu).open > span::after,
.common-header.no-touch .nav .nav-item.spec:has(> .third-menu):focus-within > span::after {
  border-left-color: var(--tc-blue, #165DFF);
  border-bottom-color: var(--tc-blue, #165DFF);
  transform: translateY(-50%) rotate(-225deg);
}

/* =====================================================================
   下拉面板：整条通栏 mega menu（网站资讯 / 渠道合作 / 解决方案 / 更多）
   参考 www.7ccn.cn themes/web/www 的 .Submenu-container —— 左侧灰底标题块
   （菜单标题 + 介绍文字）+ 右侧栅格列（每列 = 子菜单标题 + 描述）。
   面板以 .common-header-content（position:relative、60px 高）为定位参照，
   left/right:0 即铺满整屏宽度，形成参考站那种通栏展开效果。
   ===================================================================== */
.common-header .nav .third-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1002;
  width: auto;
  min-width: 0;
  max-width: none;
  height: auto;
  line-height: normal;
  margin: 0;
  padding: 36px 40px 44px calc(var(--tc-mega-left, 288px) + 40px);
  background: #fff;
  border: 0;
  border-top: 1px solid #eef1f6;
  border-radius: 0;
  box-shadow: 0 16px 34px rgba(31,53,90,.10);
  box-sizing: border-box;
  overflow: visible;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  grid-gap: 8px 26px;
  align-content: start;
  animation: tcMegaIn .24s ease-out;
}
@keyframes tcMegaIn {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}
/* 中和 common.css 中 .nav_child 的 top:70px/left:0 定位 */
.common-header .nav .nav_child.third-menu {
  top: 100%;
  left: 0;
}
/* common.css 里的 `.third-menu :before` 会给所有后代元素画白色小三角，全部关掉 */
.common-header .nav .third-menu .three-menu::before,
.common-header .nav .third-menu li::before,
.common-header .nav .third-menu a::before,
.common-header .nav .third-menu span::before {
  display: none !important;
  content: none !important;
}

/* —— 左侧灰底标题块 —— */
.common-header .nav .third-menu .three-menu {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: var(--tc-mega-left, 288px);
  display: block;
  padding: 48px 36px 40px 44px;
  margin: 0;
  border: 0;
  background: linear-gradient(180deg, #f6f8fc 0%, #edf2fb 100%);
  font-size: 20px;
  font-weight: 600;
  line-height: 28px;
  color: #1d2129;
  box-sizing: border-box;
  overflow: hidden;
  /* common.css 给 .three-menu 设了 nowrap，必须放开，否则介绍文字被裁成一行 */
  white-space: normal !important;
}
.common-header .nav .third-menu .three-menu-title {
  display: block;
  font-size: 20px;
  font-weight: 600;
  line-height: 28px;
  color: #1d2129;
  white-space: normal !important;
}
.common-header .nav .third-menu .three-menu-desc {
  margin: 16px 0 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  color: #86909c;
  white-space: normal !important;
}
.common-header .nav .third-menu .three-menu .img-menu {
  width: 22px;
  height: 22px;
  margin: 0 8px 0 0;
  vertical-align: -4px;
  object-fit: contain;
}

/* —— 右侧列：每个子菜单一项（标题 + 描述）—— */
.common-header .nav .third-menu li.menu-li {
  height: auto;
  line-height: normal;
  margin: 0;
  padding: 0;
  background: transparent;
  list-style: none;
}
.common-header .nav .third-menu li.menu-li > a {
  display: block;
  padding: 22px 22px;
  border-radius: 12px;
  white-space: normal !important;
  text-decoration: none;
  color: #1d2129 !important;
  transition: background .2s ease, box-shadow .2s ease;
}
.common-header .nav .third-menu li.menu-li > a .menu-li-title {
  display: block;
  font-size: 15px;
  font-weight: 600;
  line-height: 24px;
  color: #1d2129;
  transition: color .2s ease;
}
.common-header .nav .third-menu li.menu-li > a .menu-li-desc {
  display: block;
  margin-top: 10px;
  font-size: 13px;
  font-weight: 400;
  line-height: 22px;
  color: #86909c;
}
.common-header .nav .third-menu li.menu-li > a:hover {
  background: #f5f8ff;
  box-shadow: inset 0 0 0 1px #e8efff;
}
.common-header .nav .third-menu li.menu-li > a:hover .menu-li-title { color: var(--tc-blue, #165DFF); }
.common-header .nav .third-menu li.menu-li > a:hover .menu-li-desc { color: #4e5969; }

/* —— 窄屏：面板仍通栏，左块与列宽同步收窄 —— */
@media (max-width: 1280px) {
  .common-header .nav .third-menu {
    --tc-mega-left: 248px;
    padding: 30px 30px 36px calc(var(--tc-mega-left) + 30px);
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  }
  .common-header .nav .third-menu .three-menu { padding: 40px 28px 34px 32px; }
  .common-header .nav .third-menu .three-menu-title { font-size: 19px; }
  .common-header .nav .third-menu li.menu-li > a { padding: 18px 18px; }
  .common-header .nav .third-menu li.menu-li > a .menu-li-title { font-size: 14px; }
}
@media (max-width: 1024px) {
  .common-header .nav .third-menu {
    --tc-mega-left: 212px;
    padding: 26px 22px 30px calc(var(--tc-mega-left) + 22px);
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    grid-gap: 8px 16px;
  }
  .common-header .nav .third-menu .three-menu { padding: 34px 20px 28px 24px; }
  .common-header .nav .third-menu .three-menu-title { font-size: 17px; line-height: 24px; }
  .common-header .nav .third-menu .three-menu-desc { margin-top: 12px; font-size: 13px; line-height: 21px; }
  .common-header .nav .third-menu li.menu-li > a { padding: 16px 16px; }
  .common-header .nav .third-menu li.menu-li > a .menu-li-title { font-size: 14px; }
  .common-header .nav .third-menu li.menu-li > a .menu-li-desc { margin-top: 8px; font-size: 13px; line-height: 20px; }
}
/* 网站资讯双栏布局（left_nav_child + right_nav_child）*/
.common-header .nav .third-menu .left_nav_child,
.common-header .nav .third-menu .right_nav_child {
  display: inline-block;
  vertical-align: top;
  margin: 0;
  padding: 0;
}
.common-header .nav .third-menu .right_nav_child {
  border-left: 1px solid #eef1f6;
  margin-left: 16px;
  padding-left: 16px;
}
.common-header .nav .third-menu .left_nav_child ul,
.common-header .nav .third-menu .right_nav_child ul {
  margin: 0;
}
.common-header .nav .third-menu .left_nav_child li a,
.common-header .nav .third-menu .right_nav_child li a {
  display: block;
  padding: 6px 8px;
  font-size: 13px;
  color: #4d5260 !important;
  border-radius: 6px;
  text-decoration: none;
  white-space: nowrap;
  transition: background .2s ease, color .2s ease;
}
.common-header .nav .third-menu .left_nav_child li a:hover,
.common-header .nav .third-menu .right_nav_child li a:hover {
  background: #f2f8ff;
  color: var(--Original, #165DFF) !important;
}

/* =====================================================================
   顶栏登录态用户下拉（「你好，xxx」+ 头像）
   参考 www.7ccn.cn themes/web/www static/css/nav.css 的 .navbar-user-dropdown：
   白色卡片 + 每项「蓝色线性图标 + 文字」，项高约 46px，悬停整项变品牌蓝底白字。
   标记在 common/header.html 的 .func-info-boxzt > .tc-user-panel > a.tc-user-item，
   旧的 .dropdown-item/.dropdown-img 样式（common.css）已不再被引用。
   ===================================================================== */
.common-header .login-zone .register.func-info-row {
  position: relative;
}
/* 外层只做定位与 hover 桥接（padding-top 保证鼠标从问候行滑到面板时不闪断） */
.common-header .login-zone .func-info-boxzt {
  display: none;
  position: absolute;
  top: 100%;
  left: -22px;
  right: auto;
  width: auto;
  min-width: 196px;
  margin: 0;
  padding: 8px 0 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
  z-index: 1005;
}
.common-header .login-zone .func-info-boxzt::before {
  display: none !important;
  content: none !important;
}
.common-header .login-zone .func-info-row:hover .func-info-boxzt {
  display: block;
}
.common-header .login-zone .tc-user-panel {
  display: flex;
  flex-direction: column;
  padding: 10px 0;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(31, 53, 90, .14), 0 2px 8px rgba(31, 53, 90, .06);
  overflow: hidden;
  animation: tcUserMenuIn .18s ease-out;
}
@keyframes tcUserMenuIn {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}
.common-header .login-zone .tc-user-item {
  display: flex;
  align-items: center;
  padding: 13px 34px 13px 22px;
  font-size: 15px;
  line-height: 20px;
  color: #5f7292 !important;
  text-decoration: none;
  white-space: nowrap;
  transition: background .14s ease, color .14s ease;
}
.common-header .login-zone .tc-user-item + .tc-user-item {
  border-top: 1px solid #f2f5fa;
}
/* 悬停项自身与紧邻项的浅分隔线一起隐去，避免蓝色块上方残留一条灰线 */
.common-header .login-zone .tc-user-item:hover,
.common-header .login-zone .tc-user-item:hover + .tc-user-item {
  border-top-color: transparent;
}
.common-header .login-zone .tc-user-item svg {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin-right: 10px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
  color: var(--tc-blue, #165DFF);
  transition: color .14s ease;
}
.common-header .login-zone .tc-user-item:hover {
  background: var(--tc-blue, #165DFF);
  color: #fff !important;
}
.common-header .login-zone .tc-user-item:hover svg {
  color: #fff;
}
/* 窄屏：面板改为右对齐问候行，避免从右侧溢出视口 */
@media (max-width: 1200px) {
  .common-header .login-zone .func-info-boxzt {
    left: auto;
    right: -10px;
  }
}

/* 余额概览行（参考站用户中心下拉的「余额 + 余额充值」） */
.common-header .login-zone .tc-user-balance {
  font-size: 14px;
}
.common-header .login-zone .tc-user-balance .tc-balance-label {
  margin-left: 8px;
  color: #86909c;
}
.common-header .login-zone .tc-user-balance .tc-balance-num {
  flex: 1 1 auto;
  margin-left: 6px;
  color: #1d2129 !important;
  font-weight: 600;
}
.common-header .login-zone .tc-user-balance .tc-balance-recharge {
  margin-left: 10px;
  color: var(--tc-blue, #165DFF) !important;
  font-size: 13px;
}
.common-header .login-zone .tc-user-balance:hover .tc-balance-label,
.common-header .login-zone .tc-user-balance:hover .tc-balance-num {
  color: #fff !important;
}
.common-header .login-zone .tc-user-balance:hover .tc-balance-recharge {
  color: #fff !important;
}
/* 实名认证状态标签 */
.common-header .login-zone .tc-user-tag {
  margin-left: auto;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 12px;
  line-height: 1.4;
  color: #86909c;
  background: #f2f3f5;
  white-space: nowrap;
}
.common-header .login-zone .tc-user-tag.ok {
  color: #0a8f4d !important;
  background: #e6f6ed !important;
}
.common-header .login-zone .tc-user-item:hover .tc-user-tag,
.common-header .login-zone .tc-user-item:hover .tc-user-tag.ok {
  color: #fff !important;
  background: rgba(255, 255, 255, .22) !important;
}

/* =====================================================================
   顶栏「搜索框 + 展开式搜索面板」（放在「文档中心」左侧）
   参考 www.7ccn.cn themes/web/www/common/header/head.html 的
   .horizontal-menu-navbar-search .input-inner-wrapper / .nav-search：
   浅灰底输入框 + 右侧放大镜；点输入框（获得焦点）向下展开搜索面板，
   面板 = 搜索范围 Tab（全部产品 / 新闻资讯 / 帮助文档）+ 热销推荐词。
   三种范围分别跳：/cart?keywords= 、/newssearch.html?search= 、/helpsearch.html?search=。
   标记在 common/header.html 的 {$tcNavSearch}，交互写在 HTML 内联属性里（不依赖脚本）。
   ===================================================================== */
.common-header .login-zone .tc-nav-search {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin-right: 10px;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-form {
  position: relative;
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  height: 36px;
  padding: 0 5px 0 14px;
  background: #f5f6f8;
  border: 1px solid transparent;
  border-radius: 4px;
  transition: background .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.common-header .login-zone .tc-nav-search:hover .tc-nav-search-form {
  background: #eef0f4;
}
.common-header .login-zone .tc-nav-search:focus-within .tc-nav-search-form {
  background: #fff;
  border-color: var(--tc-blue, #165DFF);
  box-shadow: 0 0 0 3px rgba(22, 93, 255, .10);
}
/* 面板：默认隐藏，搜索框（或其内部元素）获得焦点时出现 —— 点击页面别处即自动收起 */
.common-header .login-zone .tc-nav-search .tc-nav-search-panel {
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  box-sizing: border-box;
  width: 600px;
  max-width: calc(100vw - 40px);
  padding: 16px 24px 22px;
  background: #fff;
  border-radius: 8px;
  text-align: left;
  box-shadow: 0 12px 30px rgba(31, 53, 90, .14), 0 2px 8px rgba(31, 53, 90, .06);
  z-index: 1006;
  animation: tcSearchPanelIn .18s ease;
}
@keyframes tcSearchPanelIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: none; }
}
/* 面板显隐：.open（输入框聚焦时添加、失焦时移除）或搜索框内部仍有焦点（点 Tab 等）；
   关闭按钮另写内联 display:none，保证任何环境下点 × 都能收起 */
.common-header .login-zone .tc-nav-search.open .tc-nav-search-panel,
.common-header .login-zone .tc-nav-search:focus-within .tc-nav-search-panel {
  display: block;
}
/* 搜索范围 Tab（radio + label，纯 CSS 高亮，无脚本） */
.common-header .login-zone .tc-nav-search .tc-nav-search-mode {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-tabs {
  display: flex;
  align-items: flex-end;
  margin: 0 26px 16px 0;
  border-bottom: 1px solid #ededed;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-tab {
  margin-bottom: -1px;
  padding: 0 12px;
  font-size: 14px;
  font-weight: 500;
  line-height: 38px;
  color: #4e5969;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  transition: color .16s ease, border-color .16s ease;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-tab:first-of-type {
  padding-left: 2px;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-tab:hover {
  color: var(--tc-blue, #165DFF);
}
.common-header .login-zone .tc-nav-search .tc-nav-search-mode:checked + .tc-nav-search-tab {
  color: var(--tc-blue, #165DFF);
  border-bottom-color: var(--tc-blue, #165DFF);
}
.common-header .login-zone .tc-nav-search .tc-nav-search-close {
  position: absolute;
  top: 13px;
  right: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #86909c;
  cursor: pointer;
  transition: color .16s ease;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-close:hover {
  color: #1d2129;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-close svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
}
/* 热销推荐词 */
.common-header .login-zone .tc-nav-search .tc-nav-search-hot-head {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-hot-title {
  margin-right: 6px;
  font-size: 14px;
  color: #1d2129;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-hot-badge {
  height: 18px;
  padding: 0 6px;
  font-size: 12px;
  line-height: 18px;
  color: #fff;
  background: #f53f3f;
  border-radius: 3px;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-hot-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-hot {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 8px 10px;
  /* button 默认不继承字体（中文下会退化成宋体），必须显式继承站点字体 */
  font-family: inherit;
  font-size: 14px;
  font-weight: 400;
  line-height: 19px;
  text-align: center;
  color: #1d2129;
  white-space: normal;
  word-break: break-word;
  background: #fff;
  border: 1px solid #f0f0f0;
  border-radius: 2px;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-hot:hover {
  color: #fff;
  background: var(--tc-blue, #165DFF);
  border-color: var(--tc-blue, #165DFF);
}
.common-header .login-zone .tc-nav-search .tc-nav-search-input {
  width: 150px;
  height: 34px;
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 14px;
  line-height: 34px;
  color: #1d2129;
  box-shadow: none;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-input::placeholder {
  color: #86909c;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  margin-left: 2px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #86909c;
  cursor: pointer;
  transition: color .16s ease;
}
.common-header .login-zone .tc-nav-search .tc-nav-search-btn:hover {
  color: var(--tc-blue, #165DFF);
}
.common-header .login-zone .tc-nav-search .tc-nav-search-btn svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
/* 窄屏（<1500px）：顶栏导航 + 登录区并排后空间紧张，收成「放大镜图标」形态，
   点击后向左弹出输入框（position:absolute 不占位，不会挤压导航与登录按钮） */
@media (max-width: 1499px) {
  .common-header .login-zone .tc-nav-search .tc-nav-search-form {
    padding: 0 3px;
    background: transparent;
    border-color: transparent;
  }
  .common-header .login-zone .tc-nav-search:hover .tc-nav-search-form {
    background: transparent;
  }
  .common-header .login-zone .tc-nav-search .tc-nav-search-input {
    position: absolute;
    right: calc(100% + 6px);
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    padding: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    background: #fff;
    border: 1px solid #e5e6eb;
    border-radius: 4px;
    box-shadow: 0 8px 22px rgba(31, 53, 90, .14);
    transition: width .18s ease, opacity .18s ease;
    z-index: 20;
  }
  .common-header .login-zone .tc-nav-search.open .tc-nav-search-input,
  .common-header .login-zone .tc-nav-search:focus-within .tc-nav-search-input {
    width: 240px;
    padding: 0 14px;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  /* 窄屏面板收窄、推荐词两列 */
  .common-header .login-zone .tc-nav-search .tc-nav-search-panel {
    width: 420px;
  }
  .common-header .login-zone .tc-nav-search .tc-nav-search-hot-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* =====================================================================
   顶栏右侧区（搜索框 / 文档中心 / 控制台 / 登录·购物车·问候行）间距收紧
   common.css 原值偏宽松：.login-zone .button{margin-left:10px}、
   .login-zone .login .button{padding:0 40px 0 15px}（右侧空 40px）、
   .button.console{padding:0 15px!important}，叠加后文字之间空到 35~40px。
   这里统一收成：文字左右各 12px + 竖线两侧各 6px = 相邻间距 18~20px。
   ===================================================================== */
.common-header .login-zone .login .button {
  margin-left: 0;
  padding: 0 12px;
}
.common-header .login-zone .button.console {
  padding: 0 12px !important;
}
/* 分隔竖线两侧留白（原为 0，靠按钮 40px 内边距撑开，现改为竖线自带间距） */
.common-header .login-zone .vertical {
  margin: 0 6px;
}
/* 搜索框与「文档中心」之间 */
.common-header .login-zone .tc-nav-search {
  margin-right: 8px;
}
/* 登录态：最后一个按钮（购物车）与用户名问候行之间 */
.common-header .login-zone .register.func-info-row {
  margin-left: 6px;
}

/* =====================================================================
   顶栏登录态问候行：改为「用户名 + 蓝色下拉箭头」
   （原「你好，xxx」+ 右侧 QQ 头像已按用户要求删除，标记同步删掉了
   .d-inline-font 与 $cm_top_avatar 这两处 img，箭头改内联 SVG，
   不再依赖 common.css 的 .waves-span:after 背景图 chevron-down.svg）
   ===================================================================== */
.common-header .login-zone .func-info-row .text-dark-50 {
  display: inline-flex;
  align-items: center;
  font-size: 15px;
  line-height: 1;
  color: #1d2129 !important;
  cursor: pointer;
}
/* 关掉 common.css 里 .waves-span:after 的背景图箭头，避免出现两个箭头 */
.common-header .login-zone .func-info-row .waves-span:after {
  display: none !important;
  content: none !important;
}
.common-header .login-zone .func-info-row .tc-user-arrow {
  width: 13px;
  height: 13px;
  flex: 0 0 13px;
  margin-left: 6px;
  fill: none;
  stroke: var(--tc-blue, #165DFF);
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .2s ease;
}
/* 悬停变蓝 + 箭头翻转（面板展开中） */
.common-header .login-zone .func-info-row:hover .text-dark-50 {
  color: var(--tc-blue, #165DFF) !important;
}
.common-header .login-zone .func-info-row:hover .tc-user-arrow {
  transform: rotate(180deg);
}
/* 问候行去掉头像后变窄，面板改右对齐，避免 196px 宽的下拉向右溢出视口 */
.common-header .login-zone .func-info-boxzt {
  left: auto;
  right: 0;
}

/* =====================================================================
   顶栏自适应修复（768~1499px 中间宽度不再挤压错乱）
   ---------------------------------------------------------------------
   根因：.header-body 是 flex，.nav 与 .login-zone 默认都允许收缩，
   窗口一窄右侧「文档中心/控制台/购物车」被压到逐字竖排、
   导航文字互相重叠 —— 表现为不同窗口宽度显示不一样。
   方案：
   1) 顶栏文字一律禁止折行、关键区块禁止 flex 收缩（根因修复）；
   2) 1366px 以下逐级收紧间距，PC 导航尽量保留；
   3) 1199px 以下 PC 导航（菜单多 + 登录区）物理上放不下，
      直接切到移动端抽屉菜单（.header-bottomwap），任何宽度都不再错乱。
   ===================================================================== */

/* 1) 禁止折行 + 禁止收缩（CJK 文字被压缩时会逐字竖排，这就是截图里的竖排文字） */
.common-header .nav .nav-item span,
.common-header .nav .nav-item span a,
.common-header .login-zone .login,
.common-header .login-zone .register,
.common-header .login-zone .button,
.common-header .login-zone .vertical {
  white-space: nowrap;
}
.common-header .login-zone,
.common-header .nav .nav-item {
  flex-shrink: 0;
}

/* 2) ≤1366px：收紧导航与登录区间距 */
@media (max-width: 1366px) {
  .common-header .common-header-content { padding-left: 16px; padding-right: 16px; }
  .common-header .nav { margin-left: 14px; }
  .common-header .nav .nav-item { padding: 0 11px; }
  .common-header .nav .nav-item span { font-size: 14px; }
  .common-header .login-zone { padding-left: 14px; }
  .common-header .login-zone .register .button { padding: 0 16px; }
}

/* 3) ≤1250px：进一步收紧（角标位置同步内收，避免压到相邻菜单文字） */
@media (max-width: 1250px) {
  .common-header .nav { margin-left: 10px; }
  .common-header .nav .nav-item { padding: 0 8px; }
  .common-header .nav .nav-item span { font-size: 13.5px; }
  .common-header .login-zone { padding-left: 10px; }
  .common-header .login-zone .tc-nav-search { margin-right: 4px; }
  .common-header .login-zone .vertical { margin: 0 3px; }
  .common-header .nav .nav-badge { right: -22px; }
}

/* 4) <1200px：切到移动端抽屉菜单（PC 顶栏放不下，避免任何挤压错乱） */
@media (max-width: 1199px) {
  header .common-header.sectionpc { display: none !important; }
  .header-bottomwap.sectionwap { display: block !important; }
  /* 移动端头部布局（.wrapper 100% / 工具区）原本只在 ≤767px 的媒体查询里生效，
     这里补上 768~1199px 区间，否则汉堡按钮会随 1240px 定宽被排到视口外 */
  .header-bottomwap .wrapper { width: 100%; box-sizing: border-box; padding: 0 16px; }
}

