/* ============================================================
   v3-legacy-bridge.css — 旧版（V2 深色）页面 → V3 浅色桥接层
   用法：在页面原有 <style> 之后引入本文件（级联覆盖生效）。
   内容不变，仅将视觉风格统一到 Cobalt & Cream。
   ============================================================ */

/* ---------- 1. V3 设计令牌（与 v3-tokens.css 一致） ---------- */
:root{
  --bg:        #FAFAF7;
  --bg-tint:   #F1F1EC;
  --ink:       #111114;
  --ink-60:    #5C5C63;
  --ink-50:    #6E6E74;
  --ink-30:    #B9B9B0;
  --cobalt:    #0A4FD6;
  --cobalt-ink:#083B9E;
  --paper:     #FFFFFF;
  --line:      #111114;
  --line-soft: #DEDED5;
  --ok:        #0E8A4D;
  --warn:      #B45309;
  --fail:      #C0392B;
  --font-latin:'Space Grotesk','PingFang SC','Microsoft YaHei',sans-serif;
  --font-cn:'PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;
  --nav-h:68px;
  --pad-x:clamp(20px,5vw,72px);

  /* ---------- 2. 旧版变量重映射（同名覆盖，页面样式自动变浅色） ---------- */
  --primary:#0A4FD6;
  --primary-light:#3D7BFF;
  --primary-dark:#083B9E;
  --accent:#0A4FD6;            /* 全站唯一强调色：钴蓝 */
  --accent2:#083B9E;
  --success:#0E8A4D;
  --warning:#B45309;
  --danger:#C0392B;
  --bg-dark:#FAFAF7;           /* 深色底 → 米白 */
  --bg-card:#FFFFFF;           /* 深卡 → 白 */
  --bg-card2:#F1F1EC;          /* 深卡2 → 浅灰米 */
  --text-primary:#111114;      /* 白字 → 近黑 */
  --text-secondary:#5C5C63;
  --text-muted:#6E6E74;
  --border:#DEDED5;
  --border-bright:#0A4FD6;
  --gradient-main:#0A4FD6;     /* 渐变 → 纯色钴蓝 */
  --gradient-accent:#0A4FD6;
  --gradient-orange:#0A4FD6;
  --gradient-green:#0A4FD6;
  --glow:0 8px 24px rgba(10,79,214,.12);
  --glow-accent:0 8px 28px rgba(10,79,214,.16);

  /* 旧版变体色板（Tailwind slate 系，calibration 页）重映射 */
  --bg-primary:#FAFAF7;
  --bg-secondary:#F1F1EC;
  --accent-hover:#083B9E;
  --border-color:#DEDED5;
}

/* ---------- 3. 基础：浅色底 + 选中色 ---------- */
::selection{background:#0A4FD6;color:#fff}
html{scroll-behavior:smooth}
section[id],div[id],header[id]{scroll-margin-top:calc(68px + 12px)}

/* ---------- 4. 统一导航（V3 组件，覆盖旧 .nav 样式） ---------- */
.nav{
  position:sticky;top:0;z-index:100;
  height:var(--nav-h);
  background:rgba(250,250,247,.88);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 var(--pad-x);
  box-shadow:none;
}
.nav *{box-sizing:border-box}
.nav-logo{display:flex;align-items:baseline;gap:10px;font-family:var(--font-latin);text-decoration:none}
.nav-logo .zh{font-family:var(--font-cn);font-weight:700;font-size:19px;letter-spacing:.06em;color:var(--ink)}
.nav-logo .en{font-weight:500;font-size:12px;color:var(--ink-60);letter-spacing:.18em}
.nav-links{display:flex;gap:34px;font-size:14.5px;font-weight:500}
.nav-links a{position:relative;padding:4px 0;color:var(--ink);text-decoration:none;transition:color .25s}
.nav-links a:hover{color:var(--cobalt)}
.nav-links a::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--cobalt);transition:width .28s cubic-bezier(.16,1,.3,1)}
.nav-links a:hover::after{width:100%}
.nav-links a.active{color:var(--cobalt)}
.nav-links a.active::after{width:100%}
.nav-cta{
  font-family:var(--font-cn);font-size:14px;font-weight:600;
  background:var(--ink);color:#fff;padding:10px 22px;text-decoration:none;
  transition:background .25s,transform .2s;border:none;border-radius:0;
  box-shadow:none;display:inline-flex;align-items:center;gap:6px;
}
.nav-cta:hover{background:var(--cobalt);color:#fff;transform:none}
.nav-cta:active{transform:scale(.97)}
@media(max-width:960px){.nav-links{display:none}}

/* ---------- 5. 统一页脚（V3 组件，bare footer 选择器） ---------- */
footer{
  background:var(--bg);padding:clamp(56px,8vh,90px) var(--pad-x) 40px;
  border-top:1px solid var(--line);
  font-family:var(--font-cn);color:var(--ink);
}
footer *{box-sizing:border-box}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:44px;padding-bottom:56px;border-bottom:1px solid var(--line-soft);max-width:1280px;margin:0 auto}
.foot-brand .nav-logo{margin-bottom:18px}
.foot-brand p{font-size:14px;line-height:1.8;color:var(--ink-60);max-width:24em;margin:0}
.foot-col h4{font-size:13px;font-weight:600;letter-spacing:.1em;color:var(--ink-30);margin:0 0 20px}
.foot-col a{display:block;font-size:14.5px;padding:7px 0;color:var(--ink-60);text-decoration:none;transition:color .2s}
.foot-col a:hover{color:var(--cobalt)}
.foot-contact h4{font-size:13px;font-weight:600;letter-spacing:.1em;color:var(--ink-30);margin:0 0 20px}
.foot-contact p{font-size:14.5px;line-height:2.1;color:var(--ink-60);margin:0}
.foot-contact .tel{font-family:var(--font-latin);font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.01em}
.foot-contact .qr{display:flex;gap:16px;margin-top:12px}
.foot-contact .qr-item{text-align:center}
.foot-contact .qr-item .qr-box{background:#fff;border:1px solid var(--line-soft);padding:6px;margin-bottom:6px}
.foot-contact .qr-item .qr-box img{width:78px;height:78px;display:block}
.foot-contact .qr-item span{font-size:12px;color:var(--ink-60)}
.foot-base{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:26px;font-size:12.5px;color:var(--ink-30);max-width:1280px;margin:0 auto}
.foot-base a{color:inherit;text-decoration:none}
.foot-base a:hover{color:var(--cobalt)}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}

/* ---------- 6. 深色装饰中和 ---------- */
/* hero 区：去掉深色径向渐变/网格/光晕，改浅色底 */
.hero,.page-hero{
  background-color:var(--bg) !important;
  background-image:none !important;
  text-shadow:none !important;
}
.hero-grid,.grid-bg,.particles,.glow,.glow1,.glow2,.beam,.orb{
  display:none !important;
}
/* hero 伪元素光晕（深色时代装饰，浅底下呈脏斑） */
.hero::before,.hero::after,.page-hero::before,.page-hero::after{
  background:none !important;
  animation:none !important;
}
/* 深色玻璃卡片 → 白卡 */
.vis-card,.glass,.glass-card{
  background:var(--paper) !important;
  border-color:var(--line-soft) !important;
  box-shadow:0 8px 30px rgba(17,17,20,.08) !important;
  backdrop-filter:none !important;
}
/* 进度条轨道（原白色透明，浅底下不可见） */
.cs-bar-track,.qm-bar-track,[class*="bar-track"]{
  background:rgba(17,17,20,.08) !important;
}

/* ---------- 7. 渐变文字中和（浅底下白色端不可见，统一改纯色） ---------- */
.hero h1,.hero-title,.page-hero h1,.page-hero .hero-title,
.section-title .hl,.hero-title .hl,.cta-title .hl,.cta h2 .hl,
.kpi-num,.arch-stat-num,.stat-num,.stat-val{
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:currentColor !important;
}
.hero h1,.page-hero h1{color:var(--ink) !important}
.section-title .hl,.hero-title .hl,.cta-title .hl,.cta h2 .hl,
.kpi-num,.arch-stat-num,.stat-num,.stat-val{color:var(--cobalt) !important}
/* hero 内正文确保深色 */
.hero p,.hero .hero-desc,.page-hero p,.page-hero .hero-subtitle{color:var(--ink-60) !important}

/* ===== 8. FA→SVG 替换图标尺寸（fix_fa_icons.py 生成的内联 SVG） ===== */
svg.fa-ic{width:1em;height:1em;display:inline-block;vertical-align:-.125em;flex-shrink:0}
