/* ==============================================================
   V10 视觉升级 V1.0 · Phase 1 基础层（20260916）
   内容：本地字体@font-face + 全局背景系统（深色三层/浅色丝绸）
        + 丝绸流动分隔曲线
   作用域约定：
   - body> 前缀 = 仅首页生效（首页section是body直接子元素）
   - SSR子页面仅继承字体与页脚深色，不继承首页背景改造
   - 双写类名（.about.about）用于压过 style.css 末端 OPT2 覆盖层
   ============================================================== */

/* ---------- 1. 本地字体：思源黑体 Noto Sans SC 子集化 woff2 ---------- */
@font-face {
  font-family: 'Noto Sans SC';
  src: url('/css/fonts/NotoSansSC-400.subset.woff2') format('woff2');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Noto Sans SC';
  src: url('/css/fonts/NotoSansSC-500.subset.woff2') format('woff2');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Noto Sans SC';
  src: url('/css/fonts/NotoSansSC-700.subset.woff2') format('woff2');
  font-weight: 700; font-style: normal; font-display: swap;
}
/* ZS Display = Noto Sans SC wght 900（替代阿里普惠体 Heavy，用于Hero大标题/天机/数据数字） */
@font-face {
  font-family: 'ZS Display';
  src: url('/css/fonts/NotoSansSC-900.subset.woff2') format('woff2');
  font-weight: 900; font-style: normal; font-display: swap;
}
body {
  font-family: 'Noto Sans SC', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', system-ui, -apple-system, sans-serif;
}

/* ---------- 2. Hero 深色三层背景：墨黑渐变 + 丝绸纹理 + 暗金网格 ---------- */
.hero .hero-bg {
  background:
    radial-gradient(ellipse 80% 60% at 20% 30%, rgba(45, 122, 181, 0.18) 0%, transparent 60%),
    radial-gradient(ellipse 60% 50% at 80% 70%, rgba(212, 175, 106, 0.10) 0%, transparent 55%),
    radial-gradient(ellipse 40% 40% at 50% 50%, rgba(45, 139, 122, 0.08) 0%, transparent 50%),
    linear-gradient(180deg, var(--bg-dark-1) 0%, var(--bg-dark-2) 62%, #12243A 100%) !important;
}
.hero .hero-bg::before {
  background-image:
    url('/images/bg/grid-gold.svg'),
    url('/images/bg/silk-texture.svg') !important;
  background-size: 60px 60px, 80px 80px !important;
  background-position: 0 0, 0 0 !important;
}

/* ---------- 3. 深色区域：技术优势（technology）转深邃暗金 ---------- */
body > section.technology.technology {
  background:
    url('/images/bg/grid-gold.svg'),
    url('/images/bg/silk-texture.svg'),
    linear-gradient(180deg, var(--bg-dark-2) 0%, var(--bg-dark-1) 45%, var(--bg-dark-3) 100%) !important;
  background-repeat: repeat, repeat, no-repeat !important;
  background-size: 60px 60px, 80px 80px, auto !important;
  color: var(--text-ivory) !important;
  position: relative;
}
/* 暗区内标题/副标题/标签重着色（可读性） */
body > section.technology.technology .section-title { color: var(--text-ivory) !important; }
body > section.technology.technology .section-desc { color: var(--text-silver) !important; }
body > section.technology.technology .section-tag {
  background: rgba(212, 175, 106, 0.12) !important;
  color: var(--mystic-gold-2) !important;
  border: 1px solid var(--border-gold) !important;
}

/* ---------- 4. 页脚：最深墨黑 + 丝绸纹理 ---------- */
body > footer.footer.footer {
  background:
    url('/images/bg/silk-texture.svg'),
    linear-gradient(180deg, var(--bg-dark-2) 0%, var(--bg-dark-1) 100%) !important;
  background-repeat: repeat, no-repeat !important;
  background-size: 80px 80px, auto !important;
  border-top: 0 !important;
  position: relative;
}

/* ---------- 5. 浅色区域：象牙白 + 极淡经纬纹 + 回纹双角 ---------- */
body > section.about.about,
body > section.products.products,
body > section.scenarios.scenarios,
body > section.news.news,
body > section.cases.cases,
body > section.faq-home.faq-home,
body > section.partners.partners {
  background-color: var(--bg-light-1) !important;
  background-image:
    url('/images/bg/huiwen-faint.svg'),
    url('/images/bg/huiwen-faint.svg'),
    url('/images/bg/silk-texture.svg') !important;
  background-repeat: no-repeat, no-repeat, repeat !important;
  background-position: left top, right bottom, 0 0 !important;
  background-size: 120px 120px, 120px 120px, auto !important;
  color: var(--text-dark-2) !important;
  position: relative;
}

/* ---------- 6. 丝绸流动分隔曲线（80px，替代生硬直线切割） ---------- */
/* 暗→浅（wave-light：透明上半接深色区，象牙白下半接浅色区） */
body > section.about.about::before,
body > section.scenarios.scenarios::before {
  content: '';
  position: absolute;
  top: -79px; left: 0; right: 0;
  height: 80px;
  background: url('/images/bg/divider-wave.svg') center / 100% 100% no-repeat;
  pointer-events: none;
  z-index: 1;
}
/* 浅→暗（wave-dark：透明上半接浅色区，深蓝下半接深色区） */
body > section.technology.technology::before {
  content: '';
  position: absolute;
  top: -79px; left: 0; right: 0;
  height: 80px;
  background: url('/images/bg/divider-wave-dark.svg') center / 100% 100% no-repeat;
  pointer-events: none;
  z-index: 1;
}
/* 浅色contact → 深色页脚 的收尾曲线 */
body > footer.footer.footer::before {
  content: '';
  position: absolute;
  top: -79px; left: 0; right: 0;
  height: 80px;
  background: url('/images/bg/divider-wave-dark.svg') center / 100% 100% no-repeat;
  pointer-events: none;
  z-index: 1;
}

/* ---------- 7. 动效可访问性（为Phase4滚动渐入预留.reveal基类） ---------- */
.reveal-init { opacity: 0; transform: translateY(20px); }
@media (prefers-reduced-motion: reduce) {
  .reveal-init { opacity: 1; transform: none; }
}

/* ==============================================================
   V10 Phase 2 · Hero 区域（20260916）
   ============================================================== */

/* ---------- 8. 粒子Canvas（层级：hero-bg之上/内容之下） ---------- */
.hero-canvas {
  position: absolute; inset: 0;
  z-index: 0; pointer-events: none;
}

/* ---------- 9. Hero左侧内容 ---------- */
/* 顶部标签：玻璃拟态 + 暗金边框 + 数字鎏金 */
.hero .hero-badge {
  background: rgba(255, 255, 255, 0.05) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid var(--border-gold) !important;
  border-radius: 20px;
  padding: 8px 20px;
  color: var(--text-silver);
}
.hero .hero-badge .hb-num { font-weight: 700; }

/* 大标题：ZS Display 900 + 科技蓝渐变/象牙白分色 + 左侧3px暗金竖线 */
.hero .hero-title {
  font-family: 'ZS Display', 'Noto Sans SC', sans-serif;
  font-weight: 900;
  font-size: clamp(34px, 4.4vw, 58px);
  line-height: 1.2;
  margin-bottom: 0;
}
.hero .hero-title .ht-line {
  display: inline-block;
  border-left: 3px solid var(--mystic-gold-1);
  padding-left: 16px;
}
.hero .hero-title .ht-plain { color: var(--text-ivory); display: inline-block; }
.hero .hero-title .hero-slogan {
  font-size: 24px;
  font-weight: 500;
  color: var(--text-ivory);
  letter-spacing: 0.5px;
  margin-top: 16px;
  display: inline-block;
}

/* 描述文字 */
.hero .hero-subtitle {
  color: var(--text-silver);
  font-size: 16px;
  line-height: 1.8;
  max-width: 520px;
  margin-top: 16px;
}

/* CTA：丝绸青绿渐变（光带扫过） + 暗金描边（发光hover） */
.hero .hero-actions a.btn-primary.btn-primary {
  background: linear-gradient(135deg, var(--silk-teal-1), var(--silk-teal-2)) !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 8px !important;
  padding: 14px 32px !important;
  font-weight: 500 !important;
  position: relative;
  overflow: hidden;
}
.hero .hero-actions a.btn-primary.btn-primary::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 50%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.55), transparent);
  transform: skewX(-20deg);
  opacity: 0.3;
  mix-blend-mode: overlay;
  transition: left 0.4s ease-out;
  pointer-events: none;
}
.hero .hero-actions a.btn-primary.btn-primary:hover::before { left: 150%; }
.hero .hero-actions a.btn-primary.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(45, 139, 122, 0.35);
}
.hero .hero-actions a.btn-outline.btn-outline {
  background: transparent !important;
  border: 1px solid var(--mystic-gold-1) !important;
  color: var(--mystic-gold-2) !important;
  border-radius: 8px !important;
  padding: 14px 32px !important;
  font-weight: 500 !important;
}
.hero .hero-actions a.btn-outline.btn-outline:hover {
  box-shadow: 0 0 20px var(--mystic-glow);
  background: rgba(212, 175, 106, 0.1) !important;
  color: var(--mystic-gold-3) !important;
  transform: translateY(-2px);
}

/* 数据指标：暗金渐变数字 + 40px/700 + 滚动动画(复用main.js) */
.hero .hero-stats { margin-top: 40px; }
.hero .hero-stats .stat-number {
  font-family: 'ZS Display', 'Noto Sans SC', sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1;
  color: var(--mystic-gold-2);
}
@supports (-webkit-background-clip: text) {
  .hero .hero-stats .stat-number {
    background: linear-gradient(135deg, var(--mystic-gold-1), var(--mystic-gold-2), var(--mystic-gold-3));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}
.hero .hero-stats .stat-label { color: var(--text-silver); font-size: 13px; }
.hero .hero-stats .stat-divider {
  width: 1px; height: 40px;
  background: var(--mystic-gold-2); opacity: 0.3;
}

/* ---------- 10. Hero右侧视觉：预测曲线+丝绸光带+罗盘 ---------- */
.hero .hero-visual { position: relative; display: flex; justify-content: center; align-items: center; }
.hv-wrap { position: relative; width: 480px; max-width: 100%; }
.hv-svg { width: 100%; height: auto; display: block; }
.hv-compass {
  position: absolute; left: 6px; bottom: 6px;
  width: 60px; height: 60px;
  opacity: 0.4;
  animation: hvSpin 30s linear infinite;
  transform-origin: 50% 50%;
}
@keyframes hvSpin { to { transform: rotate(360deg); } }
.silk-band { animation: silkSway 8s ease-in-out infinite alternate; }
.silk-band.sb2 { animation-duration: 6.5s; }
.silk-band.sb3 { animation-duration: 9.5s; }
@keyframes silkSway { from { transform: translateX(-24px); } to { transform: translateX(24px); } }
.hv-node, .d-node { animation: nodeBreath 3s ease-in-out infinite; }
.hv-node.n2 { animation-delay: 0.6s; }
.hv-node.n3 { animation-delay: 1.2s; }
.hv-node.n4 { animation-delay: 1.8s; }
.d-node:nth-child(2n) { animation-delay: 0.7s; }
.d-node:nth-child(3n) { animation-delay: 1.4s; }
@keyframes nodeBreath { 0%, 100% { opacity: 0.35; } 50% { opacity: 0.9; } }

/* ---------- 11. 天机·实时趋势小部件（纯展示·不可点击·无链接） ---------- */
.oracle-widget {
  position: absolute;
  right: 0; bottom: -12px;
  width: 260px;
  padding: 16px;
  background: rgba(13, 27, 42, 0.8);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  border: 1px solid var(--border-gold);
  border-radius: 12px;
  pointer-events: none;
  cursor: default;
  z-index: 10;
  color: var(--text-silver);
}
.ow-head { display: flex; align-items: center; gap: 8px; }
.ow-bolt { color: var(--mystic-gold-2); font-size: 14px; }
.ow-title { font-size: 14px; font-weight: 500; }
.ow-tianji {
  font-family: 'ZS Display', 'Noto Sans SC', sans-serif;
  font-weight: 900;
  font-size: 15.4px; /* 比同级大10% */
  text-shadow: 0 0 20px var(--mystic-glow);
}
.ow-rest { color: var(--text-silver); }
.ow-divider { height: 1px; background: rgba(212, 175, 106, 0.25); margin: 10px 0; }
.ow-row { display: flex; justify-content: space-between; align-items: baseline; font-size: 13px; margin: 6px 0; }
.ow-k { color: var(--text-silver); }
.ow-v b {
  font-family: 'ZS Display', 'Noto Sans SC', sans-serif;
  font-size: 18px; font-weight: 700;
  color: var(--mystic-gold-2);
}
@supports (-webkit-background-clip: text) {
  .ow-v b {
    background: linear-gradient(135deg, var(--mystic-gold-1), var(--mystic-gold-2), var(--mystic-gold-3));
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}
.ow-up, .ow-down { font-style: normal; font-size: 12px; margin-left: 6px; }
.ow-up { color: var(--silk-teal-3); }
.ow-down { color: #d98a8a; }
.ow-curve { width: 100%; height: 40px; margin-top: 4px; display: block; }
.ow-note { font-size: 11px; color: var(--text-silver); opacity: 0.6; margin-top: 8px; text-align: center; }

/* ---------- 12. Hero 移动端适配 ---------- */
@media (max-width: 768px) {
  .oracle-widget { display: none; } /* 移动端隐藏，避免遮挡内容 */
  .hv-wrap { width: 100%; height: auto; }
  .hero .hero-visual { margin-top: 8px; }
}

/* ==========================================================================
   V1.0 第三阶段：卡片系统升级（spec 第6节 6.1-6.3）
   - 深色区（technology）：玻璃拟态卡片 + 暗金圆形角标
   - 浅色区：纯白卡片 + 青蓝圆形角标 + hover暗金左线
   - 仅作用于首页（body>section前缀），SSR子页面不受影响
   ========================================================================== */

/* ---------- 6.1 深色卡片：玻璃拟态（覆盖OPT2浅色强制层） ---------- */
body > section.technology.technology .comparison-table,
body > section.technology.technology .patent-card {
  background: rgba(255, 255, 255, 0.05) !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border: 1px solid var(--border-glass) !important;
  border-top-color: rgba(255, 255, 255, 0.15) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3) !important;
  transition: transform .3s ease-out, box-shadow .3s ease-out, background .3s ease-out;
}
body > section.technology.technology .patent-card { padding: 24px !important; }
/* 表格内部重着色（象牙白/银灰/暗金高亮） */
body > section.technology.technology .table-header { background: rgba(212, 175, 106, 0.10) !important; }
body > section.technology.technology .header-cell { color: var(--text-ivory) !important; }
body > section.technology.technology .header-cell.highlight,
body > section.technology.technology .table-cell.highlight { color: var(--mystic-gold-2) !important; }
body > section.technology.technology .table-cell { color: var(--text-silver) !important; }
body > section.technology.technology .table-row { border-color: var(--border-glass) !important; }
body > section.technology.technology .table-row.alt { background: rgba(255, 255, 255, 0.03) !important; }
body > section.technology.technology .table-cell.highlight { background: rgba(212, 175, 106, 0.06) !important; }
body > section.technology.technology .check { color: var(--silk-teal-3) !important; }
body > section.technology.technology .cross { color: #d98a8a !important; }
body > section.technology.technology .badge-new {
  background: rgba(212, 175, 106, 0.15) !important;
  color: var(--mystic-gold-2) !important;
  border: 1px solid var(--border-gold) !important;
}
/* patent-card 文字重着色 */
body > section.technology.technology .patent-info h4 { color: var(--text-ivory) !important; font-size: 18px; }
body > section.technology.technology .patent-number { color: var(--mystic-gold-2) !important; }
body > section.technology.technology .patent-desc { color: var(--text-silver) !important; }
/* 深色卡片角标：暗金圆形 40px + 白色图标 */
body > section.technology.technology .patent-icon {
  width: 40px; height: 40px; border-radius: 50%;
  background: rgba(212, 175, 106, 0.15);
  border: 1px solid var(--border-gold);
  color: #FFFFFF !important;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  transition: transform .3s ease-out;
}
body > section.technology.technology .patent-icon svg { width: 20px; height: 20px; }
/* 深色卡片 hover：上浮4px + 边框发光 + 纹理微亮(5%→8%) + 角标旋转5° */
body > section.technology.technology .patent-card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 0 30px var(--mystic-glow), 0 12px 40px rgba(0, 0, 0, 0.4) !important;
}
body > section.technology.technology .patent-card:hover .patent-icon { transform: rotate(5deg); }

/* ---------- 6.2 浅色卡片：纯白 + 细边 + 极淡阴影 + hover暗金左线 ---------- */
body > section.about.about .about-features .feature-item,
body > section.core-edge.core-edge .feature-item,
body > section.scenarios.scenarios .scenario-card,
body > section.news.news .news-card,
body > section.cases.cases .case-card,
body > section.products.products .product-card,
body > section.partners.partners .partner-card,
body > section.contact.contact .contact-info .info-item,
body > section.faq-home.faq-home .faq-accordion details {
  background: var(--bg-light-2) !important;
  border: 1px solid var(--border-light) !important;
  border-left: 3px solid transparent !important; /* 默认透明，hover显暗金（防布局跳动） */
  border-radius: 12px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
  transition: transform .3s ease-out, box-shadow .3s ease-out, border-color .3s ease-out;
}
body > section.about.about .about-features .feature-item:hover,
body > section.core-edge.core-edge .feature-item:hover,
body > section.scenarios.scenarios .scenario-card:hover,
body > section.news.news .news-card:hover,
body > section.cases.cases .case-card:hover,
body > section.products.products .product-card:hover,
body > section.partners.partners .partner-card:hover,
body > section.contact.contact .contact-info .info-item:hover,
body > section.faq-home.faq-home .faq-accordion details:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1) !important;
  border-left-color: var(--mystic-gold-1) !important;
}
/* 浅色卡片角标：青蓝圆形 40px */
body > section.about.about .feature-icon,
body > section.core-edge.core-edge .feature-icon,
body > section.scenarios.scenarios .scenario-icon,
body > section.contact.contact .info-icon {
  width: 40px; height: 40px; border-radius: 50% !important;
  background: rgba(45, 139, 122, 0.1) !important;
  border: 1px solid rgba(45, 139, 122, 0.3);
  color: var(--silk-teal-1) !important;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
body > section.about.about .feature-icon svg,
body > section.core-edge.core-edge .feature-icon svg,
body > section.scenarios.scenarios .scenario-icon svg,
body > section.contact.contact .info-icon svg { width: 20px; height: 20px; }

/* ---------- 6.3 卡片内容排版（标题18/700 · 正文14/1.7 · 浅色区深蓝黑） ---------- */
body > section.about.about .feature-item h4,
body > section.core-edge.core-edge .feature-item h4 {
  font-size: 18px; font-weight: 700; margin-bottom: 8px;
}
body > section.about.about .feature-item p,
body > section.core-edge.core-edge .feature-item p { font-size: 14px; line-height: 1.7; }
/* 产品卡：标题深蓝黑18px + 角标/规格tag转青蓝（对齐V10色板） */
body > section.products.products .product-card { border-top: 1px solid var(--border-light) !important; }
body > section.products.products .product-card h3 {
  color: var(--text-dark-1) !important;
  font-size: 18px !important;
}
body > section.products.products .product-icon { color: var(--silk-teal-1) !important; }
body > section.products.products .spec-tag {
  background: rgba(45, 139, 122, 0.08) !important;
  color: var(--silk-teal-1) !important;
  border-color: rgba(45, 139, 122, 0.3) !important;
}

/* ==========================================================================
   V1.0 第四阶段：交互动效系统（spec 第7节 7.1/7.3/7.5）
   ========================================================================== */

/* ---------- 7.1 滚动渐入（JS: scroll-reveal.js 触发，动画结束移除类恢复hover） ---------- */
.v10-reveal {
  --v10-reveal-dist: 20px; /* 移动端10px */
  opacity: 0;
  transform: translateY(var(--v10-reveal-dist));
  will-change: opacity, transform;
  pointer-events: none; /* NO.25: 未进入视口前不拦截触摸/点击 */
}
.v10-reveal.v10-in {
  animation: v10Reveal 600ms ease-out both; /* 移动端400ms */
  animation-delay: var(--v10-reveal-delay, 0ms);
  pointer-events: auto;
}
@keyframes v10Reveal {
  from { opacity: 0; transform: translateY(var(--v10-reveal-dist)); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 768px) {
  .v10-reveal { --v10-reveal-dist: 10px; }
  .v10-reveal.v10-in { animation-duration: 400ms; }
}
@media (prefers-reduced-motion: reduce) {
  .v10-reveal { opacity: 1; transform: none; pointer-events: auto; }
}
/* NO.25: 兜底硬收敛类——取消被冻结的活动帧动画并直显（!important 压过 .v10-reveal 基础态） */
.n25-final {
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
  animation: none !important;
  transition: none !important;
}

/* ---------- 7.3 按钮光效泛化（hero CTA已在第二阶段用::before实现，其余主按钮用::after同样光带） ---------- */
body .btn-primary { position: relative; overflow: hidden; }
body section:not(.hero) .btn-primary::after {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 50%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.55), transparent);
  transform: skewX(-20deg);
  opacity: 0.3;
  mix-blend-mode: overlay;
  transition: left 0.4s ease-out;
  pointer-events: none;
}
body section:not(.hero) .btn-primary:hover::after { left: 150%; }

/* ==============================================================
   V11 AI氛围增强+问题修复 V1.1（20260916）
   字体抗锯齿 / 导航滚动玻璃 / 留白修复 / 水印遮罩 / 卡片hover增强
   Hero AI标签+浮动标签 / 全栈AI架构区 / 数据飞轮 / 全站AI细节
   ============================================================== */

/* ========== V11-A1 任务1：全局字体抗锯齿 ========== */
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; }
h1, h2, h3, h4, h5, h6, .hero-title, .section-title { text-rendering: geometricPrecision; }
.hero-title .ht-line { text-shadow: 0 0 2px rgba(0, 0, 0, 0.05); }

/* ========== V11-A2 任务5：导航栏 透明→毛玻璃深色（仅首页v10-home） ========== */
body.v10-home .navbar { background: transparent !important; box-shadow: none !important; border-bottom: 1px solid transparent !important; }
body.v10-home .navbar.scrolled { background: rgba(5, 10, 20, 0.85) !important; backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px); box-shadow: 0 2px 20px rgba(0, 0, 0, 0.3) !important; border-bottom: 1px solid var(--border-glass) !important; }
body.v10-home .navbar.scrolled .nav-link { color: var(--text-ivory) !important; }
body.v10-home .navbar.scrolled .nav-link:hover { color: var(--mystic-gold-3) !important; }
body.v10-home .navbar.scrolled .nav-link.active { color: var(--mystic-gold-2) !important; border-color: var(--mystic-gold-2) !important; }
body.v10-home .navbar.scrolled .dd-menu { background: rgba(13, 27, 42, 0.96) !important; border: 1px solid var(--border-glass) !important; box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4) !important; }
body.v10-home .navbar.scrolled .dd-item, body.v10-home .navbar.scrolled .dd-group-title { color: var(--text-silver) !important; }
body.v10-home .navbar.scrolled .dd-item:hover { background: rgba(212, 175, 106, 0.12) !important; color: var(--mystic-gold-3) !important; }
body.v10-home .navbar.scrolled #navDemoLink { color: #0a0e17 !important; }

/* ========== V11-A3 任务2.1：关于我们 留白/宽度/数据标签 ========== */
body > section.about.about { padding-top: 80px !important; padding-bottom: 60px !important; }
body > section.about.about .section-desc { max-width: 680px; margin-left: auto; margin-right: auto; line-height: 1.8; }
.about-data-tags { display: flex; justify-content: center; gap: 30px; flex-wrap: wrap; margin: 20px 0 4px; }
.about-data-tags .adt { font-size: 14px; color: var(--text-dark-2); letter-spacing: 0.5px; display: inline-flex; align-items: baseline; }
.about-data-tags .adt b { font-size: 24px; font-weight: 800; margin-right: 7px; font-family: 'ZS Display', 'Noto Sans SC', sans-serif; background: linear-gradient(135deg, var(--mystic-gold-1), var(--mystic-gold-2), var(--mystic-gold-3)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }

/* ========== V11-A4 任务2.2：检测装备区（about-grid）布局修复 ========== */
body > section.about.about .about-grid { grid-template-columns: 45fr 55fr !important; gap: 40px !important; align-items: stretch !important; }
body > section.about.about .about-image { display: flex; flex-direction: column; justify-content: center; gap: 16px; }
body > section.about.about .about-image-wrapper { width: 100%; max-width: 440px; aspect-ratio: 4/3; border: 1px solid rgba(212, 175, 106, 0.3) !important; border-radius: 8px !important; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important; position: relative; }
body > section.about.about .about-title { position: relative; padding-left: 14px; }
body > section.about.about .about-title::before { content: ''; position: absolute; left: 0; top: 5px; bottom: 5px; width: 3px; border-radius: 2px; background: linear-gradient(180deg, var(--mystic-gold-1), var(--mystic-gold-3)); }
body > section.about.about .about-text { line-height: 1.8; letter-spacing: 0.2px; }
body .about-features { gap: 20px !important; }
body .about-features .feature-item { min-height: 140px; }
/* 产品参数标签云（图片下方） */
.about-param-cloud { display: flex; flex-wrap: wrap; gap: 8px; max-width: 440px; }
.about-param-cloud .apc-tag { font-size: 12px; color: var(--mystic-gold-1); border: 1px solid rgba(212, 175, 106, 0.45); background: rgba(212, 175, 106, 0.06); border-radius: 999px; padding: 4px 10px; letter-spacing: 0.5px; white-space: nowrap; }

/* ========== V11-A5 任务2.3：浅色区背景层次（径向渐变+回纹双角+分隔线） ========== */
body > section.about.about,
body > section.products.products,
body > section.scenarios.scenarios,
body > section.news.news,
body > section.cases.cases,
body > section.strength-showcase.strength-showcase,
body > section.core-edge.core-edge,
body > section.faq-home.faq-home,
body > section.partners.partners {
  background-image:
    radial-gradient(ellipse 60% 50% at top left, rgba(212, 175, 106, 0.04) 0%, transparent 55%),
    radial-gradient(ellipse 60% 50% at bottom right, rgba(45, 139, 122, 0.04) 0%, transparent 55%),
    url('/images/bg/huiwen-faint.svg'),
    url('/images/bg/huiwen-faint.svg') !important;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat !important;
  background-size: auto, auto, 80px 80px, 80px 80px !important;
  background-position: 0 0, 100% 100%, top left, bottom right !important;
}
body > section.products.products, body > section.scenarios.scenarios, body > section.news.news,
body > section.cases.cases, body > section.strength-showcase.strength-showcase,
body > section.core-edge.core-edge, body > section.faq-home.faq-home, body > section.partners.partners {
  border-top: 1px solid rgba(212, 175, 106, 0.10) !important;
}

/* ========== V11-A6 任务3：工厂图水印遮罩（方案B） ========== */
body > section.about.about .about-image-wrapper::after {
  content: '';
  position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(135deg, rgba(13, 27, 42, 0.38) 0%, rgba(13, 27, 42, 0.12) 55%, rgba(13, 27, 42, 0.30) 100%);
  pointer-events: none; border-radius: inherit;
}
.about-image-mask-title {
  position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%); z-index: 2;
  text-align: center; color: var(--text-ivory); font-weight: 600; font-size: 17px; letter-spacing: 2px;
  text-shadow: 0 2px 12px rgba(5, 10, 20, 0.65); pointer-events: none; padding: 0 16px;
}

/* ========== V11-A7 任务4：浅色卡片hover增强（光带+图标旋转） ========== */
body .about-features .feature-item { position: relative; overflow: hidden; transition: transform .3s cubic-bezier(.4,0,.2,1), box-shadow .3s cubic-bezier(.4,0,.2,1), border-color .3s cubic-bezier(.4,0,.2,1); }
body .about-features .feature-item::after { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(212, 175, 106, 0.10), transparent); transition: left .6s ease; pointer-events: none; }
body .about-features .feature-item:hover::after { left: 100%; }
body .about-features .feature-icon { transition: transform .3s cubic-bezier(.4,0,.2,1), background .3s cubic-bezier(.4,0,.2,1); }
body .about-features .feature-item:hover .feature-icon { transform: rotate(5deg) scale(1.1); background: rgba(212, 175, 106, 0.18) !important; color: var(--mystic-gold-1) !important; }
/* 其余浅色卡光带 */
body > section.scenarios.scenarios .scenario-card, body > section.news.news .news-card,
body > section.cases.cases .case-card, body > section.products.products .product-card,
body > section.partners.partners .partner-card, body > section.faq-home.faq-home .info-item { position: relative; overflow: hidden; }
body > section.scenarios.scenarios .scenario-card::after, body > section.news.news .news-card::after,
body > section.cases.cases .case-card::after, body > section.products.products .product-card::after,
body > section.partners.partners .partner-card::after, body > section.faq-home.faq-home .info-item::after { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(212, 175, 106, 0.08), transparent); transition: left .6s ease; pointer-events: none; }
body > section.scenarios.scenarios .scenario-card:hover::after, body > section.news.news .news-card:hover::after,
body > section.cases.cases .case-card:hover::after, body > section.products.products .product-card:hover::after,
body > section.partners.partners .partner-card:hover::after, body > section.faq-home.faq-home .info-item:hover::after { left: 100%; }
body > section.scenarios.scenarios .scenario-card:hover .scenario-icon, body > section.faq-home.faq-home .info-item:hover .info-icon { transform: rotate(5deg) scale(1.1); }
body > section.scenarios.scenarios .scenario-icon, body > section.faq-home.faq-home .info-icon { transition: transform .3s cubic-bezier(.4,0,.2,1); }

/* ========== V11-B1 任务6.1：Hero AI定位标签 ========== */
.hero-ai-tags { display: flex; align-items: center; gap: 12px; margin: 16px 0 12px; flex-wrap: wrap; }
.hero-ai-tags .ai-tag { font-size: 13px; color: var(--mystic-gold-3); background: rgba(212, 175, 106, 0.10); border: 1px solid rgba(212, 175, 106, 0.30); padding: 4px 12px; border-radius: 20px; letter-spacing: 1px; }
.hero-ai-tags .ai-tag-divider { color: rgba(212, 175, 106, 0.4); }

/* ========== V11-B2 任务6.3：Hero数据脉冲+浮动AI标签 ========== */
.hv-float-tags { position: absolute; inset: 0; pointer-events: none; }
.hv-ftag { position: absolute; font-size: 10px; color: rgba(232, 213, 163, 0.85); border: 1px solid rgba(212, 175, 106, 0.35); background: rgba(13, 27, 42, 0.35); border-radius: 10px; padding: 2px 8px; letter-spacing: 1px; opacity: 0.7; animation: hvFloat 6s ease-in-out infinite; }
.hv-ftag.t1 { top: 8%; left: 6%; }
.hv-ftag.t2 { top: 2%; right: 4%; animation-delay: 1.2s; }
.hv-ftag.t3 { top: 42%; right: -3%; animation-delay: 2.4s; }
.hv-ftag.t4 { bottom: 20%; left: 0%; animation-delay: 3.6s; }
.hv-ftag.t5 { bottom: 3%; right: 14%; animation-delay: 4.8s; }
@keyframes hvFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }

/* ========== V11-B3 任务7/8：全栈AI架构区+数据飞轮 ========== */
body > section.ai-arch.ai-arch { background: linear-gradient(180deg, var(--bg-dark-1) 0%, var(--bg-dark-2) 55%, var(--bg-dark-1) 100%) !important; position: relative; padding: 96px 0 88px; overflow: hidden; color: var(--text-ivory) !important; }
body > section.ai-arch.ai-arch::before { content: ''; position: absolute; inset: 0; background-image: url('/images/bg/grid-gold.svg'), url('/images/bg/silk-texture.svg'); background-size: 60px 60px, 80px 80px; opacity: .5; pointer-events: none; }
body > section.ai-arch.ai-arch .container { position: relative; z-index: 1; }
body > section.ai-arch.ai-arch .section-title { color: var(--text-ivory) !important; }
body > section.ai-arch.ai-arch .section-desc { color: var(--text-silver) !important; }
body > section.ai-arch.ai-arch .section-tag { background: rgba(212, 175, 106, 0.12) !important; color: var(--mystic-gold-2) !important; border: 1px solid var(--border-gold) !important; }
.ai-arch-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; margin-top: 48px; }
.ai-layer { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border: 1px solid var(--border-glass); border-top-color: rgba(255, 255, 255, 0.15); border-radius: 12px; padding: 26px 20px 20px; display: flex; flex-direction: column; gap: 12px; position: relative; transition: transform .3s cubic-bezier(.4,0,.2,1), box-shadow .3s, border-color .3s, background .3s; }
.ai-layer:hover { transform: translateY(-4px); border-color: var(--border-gold); box-shadow: 0 0 30px var(--mystic-glow), 0 12px 40px rgba(0, 0, 0, 0.4); background: rgba(255, 255, 255, 0.08); }
.ai-layer-name { font-size: 20px; font-weight: 700; background: linear-gradient(135deg, var(--mystic-gold-1), var(--mystic-gold-2), var(--mystic-gold-3)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.ai-layer-product { font-size: 15px; color: var(--text-ivory); font-weight: 500; margin-top: -6px; }
.ai-layer ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.ai-layer li { font-size: 13px; color: var(--text-silver); line-height: 1.6; padding-left: 14px; position: relative; }
.ai-layer li::before { content: ''; position: absolute; left: 0; top: 7px; width: 5px; height: 5px; border-radius: 50%; background: var(--mystic-gold-2); box-shadow: 0 0 6px var(--mystic-glow); }
.ai-layer-icon { width: 32px; height: 32px; color: var(--mystic-gold-2); margin-top: auto; opacity: .9; }
.ai-layer:not(:last-child)::after { content: ''; position: absolute; right: -17px; top: 50%; width: 10px; height: 10px; border-top: 2px solid var(--mystic-gold-2); border-right: 2px solid var(--mystic-gold-2); transform: translateY(-50%) rotate(45deg); animation: aiArrow 2s ease-in-out infinite; z-index: 2; }
@keyframes aiArrow { 0%, 100% { opacity: .35; } 50% { opacity: 1; filter: drop-shadow(0 0 4px var(--mystic-glow)); } }
.ai-arch-flow { margin-top: 36px; text-align: center; display: flex; flex-direction: column; gap: 8px; }
.ai-arch-flow .flow-line { font-size: 13.5px; letter-spacing: 1px; color: var(--text-silver); }
.ai-arch-flow .flow-line b { color: var(--mystic-gold-3); font-weight: 500; margin: 0 2px; }
/* 数据飞轮 */
.ai-flywheel { margin-top: 76px; display: grid; grid-template-columns: 2fr 3fr; gap: 48px; align-items: center; }
.ai-fw-visual { position: relative; display: flex; justify-content: center; }
.ai-fw-svg { width: min(360px, 100%); height: auto; }
.ai-fw-rotor { transform-box: fill-box; transform-origin: center; animation: aiSpin 30s linear infinite; }
@keyframes aiSpin { to { transform: rotate(360deg); } }
.ai-fw-node { animation: aiBreath 3s ease-in-out infinite; }
@keyframes aiBreath { 0%, 100% { opacity: .55; } 50% { opacity: 1; } }
.ai-fw-label { position: absolute; font-size: 12px; color: var(--text-silver); letter-spacing: 1px; background: rgba(13, 27, 42, 0.55); border: 1px solid rgba(212, 175, 106, 0.22); border-radius: 10px; padding: 2px 9px; white-space: nowrap; }
.ai-fw-label.l1 { top: -4%; left: 50%; transform: translateX(-50%); }
.ai-fw-label.l2 { top: 22%; right: -6%; }
.ai-fw-label.l3 { bottom: 22%; right: -6%; }
.ai-fw-label.l4 { bottom: -4%; left: 50%; transform: translateX(-50%); }
.ai-fw-label.l5 { bottom: 22%; left: -6%; }
.ai-fw-label.l6 { top: 22%; left: -6%; }
.ai-fw-center { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; pointer-events: none; }
.ai-fw-center .t { font-size: 24px; font-weight: 700; background: linear-gradient(135deg, var(--mystic-gold-1), var(--mystic-gold-2), var(--mystic-gold-3)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.ai-fw-center .s { font-size: 14px; color: var(--text-silver); margin-top: 6px; }
.ai-fw-copy h3 { font-size: 22px; font-weight: 700; color: var(--text-ivory); margin-bottom: 14px; }
.ai-fw-copy p { font-size: 15px; color: var(--text-silver); line-height: 1.8; margin-bottom: 10px; }
.ai-fw-copy .fw-gold { color: var(--mystic-gold-2); font-weight: 500; }

/* ========== V11-B4 任务9：全站AI细节 ========== */
/* 9.1 导航AI标识 */
.nav-ai-badge { display: inline-block; margin-left: 8px; font-size: 10px; line-height: 1; padding: 3px 6px; border-radius: 4px; background: linear-gradient(135deg, var(--mystic-gold-1), var(--mystic-gold-2)); color: #0a0e17; font-weight: 700; letter-spacing: 1px; vertical-align: middle; transform: translateY(-1px); }
/* 9.2 区域标题：暗金渐变竖线+底部装饰线 */
body .section-title { display: inline-block; position: relative; padding-left: 16px; }
body .section-title::before { content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 3px; height: 1em; border-radius: 2px; background: linear-gradient(180deg, var(--mystic-gold-1), var(--mystic-gold-3)); }
body .section-title::after { content: ''; position: absolute; left: 16px; right: 0; bottom: -10px; height: 2px; border-radius: 1px; background: linear-gradient(90deg, rgba(212, 175, 106, 0.85), rgba(212, 175, 106, 0)); }
/* 9.3 卡片AI角标 */
body .about-features .feature-item::before { content: 'AI'; position: absolute; top: 10px; right: 12px; font-size: 9px; color: var(--mystic-gold-1); opacity: .6; letter-spacing: 1px; }
/* 9.4 页脚AI定位语 */
.footer-ai-line { text-align: center; font-size: 12px; letter-spacing: 2px; color: var(--mystic-gold-2); opacity: .8; margin: 0 0 12px; }
/* 9.5 深色区垂直数据流粒子（纯CSS，移动端禁用） */
.ai-dataflow { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; }
.ai-dataflow i { position: absolute; top: -60px; width: 1.5px; height: 46px; border-radius: 1px; background: linear-gradient(180deg, rgba(212, 175, 106, 0), rgba(212, 175, 106, 0.55), rgba(212, 175, 106, 0)); opacity: .16; animation: aiFall 9s linear infinite; }
.ai-dataflow i:nth-child(1) { left: 6%; }
.ai-dataflow i:nth-child(2) { left: 14%; animation-duration: 12s; animation-delay: 1.4s; }
.ai-dataflow i:nth-child(3) { left: 23%; animation-duration: 10s; animation-delay: 3.2s; }
.ai-dataflow i:nth-child(4) { left: 31%; animation-duration: 13s; animation-delay: .8s; }
.ai-dataflow i:nth-child(5) { left: 40%; animation-duration: 9.5s; animation-delay: 2.1s; }
.ai-dataflow i:nth-child(6) { left: 49%; animation-duration: 11s; animation-delay: 4.4s; }
.ai-dataflow i:nth-child(7) { left: 57%; animation-duration: 12.5s; animation-delay: 1.9s; }
.ai-dataflow i:nth-child(8) { left: 65%; animation-duration: 9.8s; animation-delay: 3.7s; }
.ai-dataflow i:nth-child(9) { left: 73%; animation-duration: 10.6s; animation-delay: .4s; }
.ai-dataflow i:nth-child(10) { left: 81%; animation-duration: 12.2s; animation-delay: 2.8s; }
.ai-dataflow i:nth-child(11) { left: 89%; animation-duration: 9.2s; animation-delay: 5.1s; }
.ai-dataflow i:nth-child(12) { left: 95%; animation-duration: 11.6s; animation-delay: 1.1s; }
@keyframes aiFall { to { transform: translateY(120vh); } }
body > footer.footer .container { position: relative; z-index: 1; }

/* ========== V11-R 响应式降级 ========== */
@media (max-width: 900px) {
  .ai-arch-grid { grid-template-columns: 1fr 1fr; }
  .ai-layer:not(:last-child)::after { display: none; }
  .ai-flywheel { grid-template-columns: 1fr; gap: 36px; }
  .ai-fw-label { font-size: 11px; }
}
@media (max-width: 768px) {
  .ai-dataflow { display: none; }
  .ai-layer:not(:last-child)::after { display: none; }
  .hv-float-tags { display: none; }
  .about-param-cloud { max-width: 100%; }
}
@media (max-width: 560px) {
  .ai-arch-grid { grid-template-columns: 1fr; }
  .hero-ai-tags { gap: 8px; }
  .hero-ai-tags .ai-tag { font-size: 12px; padding: 3px 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .hv-ftag, .ai-dataflow i, .ai-fw-rotor, .ai-fw-node, .ai-layer:not(:last-child)::after { animation: none !important; }
}
