/* 护航 GEO / HuhangCMS · V4 全站品牌设计系统 */
:root {
  --brand-primary:#6548e8; --brand-primary-strong:#4f35c9; --brand-primary-hover:var(--brand-primary-strong); --brand-primary-soft:#f2eeff;
  --brand-accent:#4d83f4; --brand-ink:#20243a; --brand-body:#4e5870; --brand-muted:#7a8498;
  --brand-line:#e5e8f1; --brand-surface:#f7f8fc; --brand-white:#fff;
  --brand-radius-sm:10px; --brand-radius-md:16px; --brand-radius-lg:22px;
  --brand-shadow:0 10px 30px rgba(31,42,82,.055); --brand-shadow-hover:0 16px 38px rgba(47,52,112,.10);
  --brand-font:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;
}
html { scroll-behavior:smooth; }
body.site-refresh,body.blog-refresh {
  font-family:var(--brand-font)!important; color:var(--brand-body); background:#fff; font-size:16px; line-height:1.75;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; accent-color:var(--brand-primary);
}
.site-refresh *, .blog-refresh * { box-sizing:border-box; }
.site-refresh img,.blog-refresh img { max-width:100%; }
.site-refresh :is(h1,h2,h3,h4,h5,h6),.blog-refresh :is(h1,h2,h3,h4,h5,h6) {
  font-family:var(--brand-font)!important; color:var(--brand-ink); letter-spacing:-.018em; text-wrap:balance;
}
.site-refresh p,.site-refresh li,.blog-refresh p,.blog-refresh li { text-wrap:pretty; }
.site-refresh .col000 { color:var(--brand-ink)!important; }
.site-refresh .colfff { color:#fff!important; }
.site-refresh .col777,.site-refresh .col272,.site-refresh .col461 { color:var(--brand-muted); }
.site-refresh a,.blog-refresh a { text-underline-offset:3px; }
.site-refresh :is(a,button,input,select,textarea):focus-visible,.blog-refresh :is(a,button,input,select,textarea):focus-visible {
  outline:3px solid rgba(101,72,232,.32); outline-offset:3px;
}
.site-refresh p,.site-refresh li { overflow-wrap:break-word; }

/* 字号阶梯：将旧页面 f-* 工具类收敛到一致比例。 */
.site-refresh .f-62 { font-size:clamp(38px,4.4vw,54px)!important; line-height:1.12!important; }
.site-refresh .f-48 { font-size:clamp(30px,3.5vw,46px)!important; line-height:1.22!important; }
.site-refresh .f-42,.site-refresh .f-40 { font-size:clamp(28px,2.9vw,36px)!important; line-height:1.3!important; }
.site-refresh .f-36,.site-refresh .f-32 { font-size:clamp(24px,2.3vw,30px)!important; line-height:1.38!important; }
.site-refresh .f-30,.site-refresh .f-28,.site-refresh .f26 { font-size:clamp(21px,1.9vw,26px)!important; line-height:1.42!important; }
.site-refresh .f-24,.site-refresh .f-22 { font-size:clamp(18px,1.45vw,21px)!important; line-height:1.5!important; }
.site-refresh .f-20,.site-refresh .f-18 { font-size:17px!important; line-height:1.6!important; }
.site-refresh .f-16 { font-size:16px!important; line-height:1.75!important; }
.site-refresh .f-14 { font-size:14px!important; line-height:1.7!important; }
.site-refresh .f-12 { font-size:12px!important; line-height:1.6!important; }
.site-refresh .bold { font-weight:680!important; }
.site-refresh .bold-900 { font-weight:760!important; }
.site-refresh h1 { font-weight:740; } .site-refresh h2 { font-weight:700; } .site-refresh h3,.site-refresh h4 { font-weight:650; }
.blog-refresh h1 { font-size:clamp(30px,3.8vw,48px); line-height:1.2; font-weight:750; }
.blog-refresh h2 { line-height:1.35; font-weight:700; } .blog-refresh h3 { line-height:1.45; font-weight:650; }

/* 导航：统一字号与点击区域，避免固定宽度挤压较长菜单项。 */
.site-refresh .nav-wrap { padding:14px 0; border-bottom:1px solid rgba(229,232,241,.9); box-shadow:0 3px 18px rgba(31,42,82,.035); }
.site-refresh .nav-wrap .nav-bar { gap:4px; }
.site-refresh .nav-wrap .nav-bar li { width:auto; min-width:max-content; padding:0 7px; font-size:14px; line-height:1.4; }
.site-refresh .nav-wrap .nav-bar li a,.site-refresh .nav-wrap .nav-bar li .nav-toggle em { color:#3f475c; font-weight:550; }
.site-refresh .nav-wrap .nav-bar li a:hover,.site-refresh .nav-wrap .nav-bar li .nav-toggle:hover em { color:var(--brand-primary); }
.site-refresh .nav-wrap .nav-bar li.active a,.site-refresh .nav-wrap .nav-bar li.active .nav-toggle em { color:var(--brand-primary); font-weight:700; }
.site-refresh .nav-wrap .nav-freeTrial-btn,.site-refresh .banner-freeTrial-btn,.site-refresh .free-try-btn,
.site-refresh .btn-submit,.site-refresh .nav-drawer-consult,.blog-refresh .qdk-trial-btn {
  background:var(--brand-primary)!important; color:#fff!important; border:1px solid var(--brand-primary)!important;
  border-radius:999px!important; font-weight:650; box-shadow:0 7px 18px rgba(101,72,232,.17);
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.site-refresh .nav-wrap .nav-freeTrial-btn:hover,.site-refresh .banner-freeTrial-btn:hover,.site-refresh .free-try-btn:hover,
.site-refresh .btn-submit:hover,.site-refresh .nav-drawer-consult:hover,.blog-refresh .qdk-trial-btn:hover {
  background:var(--brand-primary-hover)!important; border-color:var(--brand-primary-hover)!important; color:#fff!important;
  transform:translateY(-1px); box-shadow:0 10px 22px rgba(101,72,232,.23);
}
.site-refresh .banner-pre-bookbtn { color:var(--brand-primary); font-weight:650; cursor:pointer; }
.site-refresh .banner-pre-bookbtn:hover { color:var(--brand-primary-hover); }
.site-refresh .drop-down-nav,.site-refresh .nav-drawer { border:1px solid var(--brand-line); box-shadow:var(--brand-shadow-hover); }
.site-refresh .drop-down-nav-item { border-radius:12px; }
.site-refresh .nav-drawer-menu a,.site-refresh .nav-drawer-menu em { color:var(--brand-ink); }

/* 内容卡片：统一形态，不强制覆盖模块语义配色。 */
.site-refresh :is(.product-item,.case-card,.why-card,.plan-panel,.answer-panel,.suggest-panel,.about-value,.about-fact,
 .about-tl-card,.whyChoose-panel,.recommend-card,.whoUse-panel,.who-item,.why-item,.faq-list li,.benefitWrap li,.geo-steps li,.getWhat li) {
  border-color:var(--brand-line); border-radius:var(--brand-radius-lg); box-shadow:var(--brand-shadow);
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.site-refresh :is(.product-item,.case-card,.why-card,.plan-panel,.answer-panel,.suggest-panel,.about-value,.about-fact,
 .about-tl-card,.whyChoose-panel,.recommend-card,.whoUse-panel,.who-item,.why-item,.faq-list li,.benefitWrap li,.geo-steps li,.getWhat li):hover {
  border-color:rgba(101,72,232,.25); box-shadow:var(--brand-shadow-hover);
}
.site-refresh .whoUse-panel { border-radius:20px; }
.site-refresh .whoUse-panel img { width:64px; height:64px; object-fit:contain; }
.site-refresh .whoUse-panel h3 { font-size:19px; line-height:1.45; }
.site-refresh .whoUse-panel p { font-size:14px; line-height:1.75; }
.site-refresh :is(.product-item,.plan-panel,.answer-panel,.suggest-panel,.why-card,.recommend-card) :is(h3,h4) { color:var(--brand-ink); }
.site-refresh :is(.product-item,.plan-panel,.answer-panel,.suggest-panel,.why-card,.recommend-card) p { color:var(--brand-body); }
.site-refresh .case-card .case-tag,.site-refresh .geo-chip,.site-refresh .nx-chip { border-radius:999px; font-weight:650; }
.site-refresh .faq-list li { background:#fff; } .site-refresh .faq-list li:hover { border-color:#d8d0ff; }

/* 表格：统一表头、斑马纹、行距、重点字段与横向滚动，不使用图片底纹。 */
.site-refresh .v2-table-scroll,.blog-refresh .v2-table-scroll {
  width:100%; max-width:100%; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch;
  border:1px solid var(--brand-line); border-radius:18px; background:#fff;
  box-shadow:0 9px 28px rgba(31,42,82,.055); scrollbar-color:#c8c1f2 #f5f6fb;
}
.site-refresh .v2-data-table,.blog-refresh .v2-data-table {
  width:100%; border-collapse:separate!important; border-spacing:0!important; background:#fff;
  color:var(--brand-body); font-size:14px; font-variant-numeric:tabular-nums;
}
.site-refresh .v2-data-table.v2-cols-3 { min-width:660px; }
.site-refresh .v2-data-table.v2-cols-4 { min-width:760px; }
.site-refresh .v2-data-table.v2-cols-5,.site-refresh .v2-data-table.v2-cols-6 { min-width:850px; }
.blog-refresh .v2-data-table { min-width:620px; }
.site-refresh .v2-data-table caption,.blog-refresh .v2-data-table caption {
  caption-side:top; padding:16px 20px; text-align:left; color:#59647c; background:#fff;
  border-bottom:1px solid var(--brand-line); font-size:14px; font-weight:700; line-height:1.6;
}
.site-refresh .v2-data-table thead th,.blog-refresh .v2-data-table thead th {
  padding:16px 18px!important; background:#f1efff!important; color:#342c65!important;
  border:0!important; border-bottom:1px solid #e3defb!important; text-align:left;
  font-size:14px; font-weight:700; line-height:1.55; vertical-align:middle;
}
.site-refresh .v2-data-table tbody th,.site-refresh .v2-data-table tbody td,
.blog-refresh .v2-data-table tbody th,.blog-refresh .v2-data-table tbody td {
  padding:15px 18px!important; color:#4e5870!important; background:#fff!important;
  border:0!important; border-bottom:1px solid #edf0f6!important; font-size:14px;
  line-height:1.75; vertical-align:middle; overflow-wrap:anywhere;
}
.site-refresh .v2-data-table tbody th[scope="row"],.blog-refresh .v2-data-table tbody th[scope="row"] {
  color:#5842c5!important; background:#faf9ff!important; font-weight:700; min-width:118px;
}
.site-refresh .v2-data-table tbody tr:nth-child(even)>*,.blog-refresh .v2-data-table tbody tr:nth-child(even)>* { background:#f8f9fd!important; }
.site-refresh .v2-data-table tbody tr:nth-child(even)>th[scope="row"],.blog-refresh .v2-data-table tbody tr:nth-child(even)>th[scope="row"] { background:#f4f2ff!important; }
.site-refresh .v2-data-table tbody tr:hover>*,.blog-refresh .v2-data-table tbody tr:hover>* { background:#f0eeff!important; }
.site-refresh .v2-data-table tbody tr:last-child>*,.blog-refresh .v2-data-table tbody tr:last-child>* { border-bottom:0!important; }
.site-refresh .v2-data-table a,.blog-refresh .v2-data-table a { color:var(--brand-primary-hover); text-decoration:underline; text-decoration-color:#c9c1f4; }
.site-refresh .v2-data-table a:hover,.blog-refresh .v2-data-table a:hover { text-decoration-color:var(--brand-primary); }
.site-refresh .v2-table-scroll+.v3-table-hint,.blog-refresh .v2-table-scroll+.v3-table-hint { margin:8px 3px 0; color:var(--brand-muted); font-size:12px; }
.site-refresh .whoUsing-banner,.site-refresh .whoUse-wrap { color:var(--brand-ink); }

/* 表单：统一控件高度、边框、焦点态和错误提示的可读性。 */
.site-refresh :is(input,select,textarea,.form-control) {
  max-width:100%; border:1px solid #dfe3ed; border-radius:10px; color:var(--brand-ink); background:#fff;
  font:inherit; transition:border-color .18s ease,box-shadow .18s ease;
}
.site-refresh :is(input,select,textarea,.form-control):focus { border-color:var(--brand-primary); box-shadow:0 0 0 3px rgba(101,72,232,.11); outline:0; }
.site-refresh label { color:#3e475e; font-weight:600; }
.site-refresh ::placeholder { color:#9aa2b2; opacity:1; }

/* 博客卡片与正文：保留编辑式阅读体验，减少装饰噪声。 */
.blog-refresh .nx-card { border:1px solid var(--brand-line); border-radius:18px; box-shadow:var(--brand-shadow); }
.blog-refresh .nx-card-hoverable:hover { border-color:rgba(101,72,232,.25); box-shadow:var(--brand-shadow-hover); }
.blog-refresh .nx-chip { display:inline-flex; align-items:center; border:1px solid #e5e0ff; background:#f5f2ff; color:#5a45c7; padding:5px 10px; }
.blog-refresh .qdk-prose,.blog-refresh .nx-prose { color:#3f485d; font-size:16px; line-height:1.9; }
.blog-refresh .qdk-prose h2,.blog-refresh .nx-prose h2 { margin-top:2.2em; margin-bottom:.8em; font-size:clamp(22px,2.2vw,28px); }
.blog-refresh .qdk-prose h3,.blog-refresh .nx-prose h3 { margin-top:1.8em; margin-bottom:.6em; font-size:clamp(18px,1.7vw,21px); }
.blog-refresh .qdk-prose p,.blog-refresh .nx-prose p { margin:1em 0; }
.blog-refresh .qdk-prose img,.blog-refresh .nx-prose img { display:block; width:auto; max-width:100%; height:auto; margin:1.5rem auto; border-radius:14px; }
.blog-refresh .qdk-prose table,.blog-refresh .nx-prose table { display:block; width:100%; max-width:100%; overflow-x:auto; }

/* 窄屏：缩小留白、保持卡片可读，不允许组件撑宽整页。 */
@media (max-width:991px) {
  .site-refresh .nav-wrap .nav-bar li { padding-inline:5px; }
  .site-refresh .whoUse-panel img { width:60px; height:60px; }
}
@media (max-width:767px) {
  .site-refresh .nav-wrap { padding:10px 0; }
  .site-refresh .f-48 { font-size:clamp(28px,8vw,34px)!important; }
  .site-refresh .f-42,.site-refresh .f-40 { font-size:clamp(24px,6.5vw,29px)!important; }
  .site-refresh .f-36,.site-refresh .f-32 { font-size:clamp(22px,5.8vw,26px)!important; }
  .site-refresh .f-24,.site-refresh .f-22 { font-size:18px!important; }
  .site-refresh .whoUse-panel { min-height:0; padding:22px 14px; }
  .site-refresh .whoUse-panel img { width:52px; height:52px; }
  .site-refresh .whoUse-panel h3 { font-size:16px; }
  .site-refresh .whoUse-panel p { font-size:13px; }
  .site-refresh .v2-table-scroll,.blog-refresh .v2-table-scroll { border-radius:14px; }
  .site-refresh .v2-data-table thead th,.blog-refresh .v2-data-table thead th { padding:12px 13px!important; font-size:12.5px; }
  .site-refresh .v2-data-table tbody th,.site-refresh .v2-data-table tbody td,
  .blog-refresh .v2-data-table tbody th,.blog-refresh .v2-data-table tbody td { padding:11px 13px!important; font-size:12.5px; line-height:1.7; }
  .site-refresh .v2-data-table caption,.blog-refresh .v2-data-table caption { padding:12px 14px; font-size:12.5px; }
  .site-refresh .case-card { padding:22px 18px; }
  .site-refresh .case-card .case-metrics { gap:7px; }
  .site-refresh .case-card .case-metrics>div { padding:9px 8px; }
  .blog-refresh .qdk-prose,.blog-refresh .nx-prose { font-size:15px; line-height:1.85; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .site-refresh *, .blog-refresh * { transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; }
}

/* 图标尺寸分级：导航/行内 20–24px，小模块 40px，角色卡片 64px。 */
.site-refresh .nav-wrap .drop-down-nav-item img,.blog-refresh .qdk-drop-item img { width:40px; height:40px; object-fit:contain; }
.site-refresh .nav-drawer-menu img,.blog-refresh .qdk-drawer-item img { width:24px; height:24px; object-fit:contain; }
.site-refresh .request-geo .layRow img,
.site-refresh .AI-source-left .layRow img,
.site-refresh .AI-source-right .layRow img { width:40px; height:40px; object-fit:contain; }
.site-refresh .whoUse-panel img { width:64px; height:64px; object-fit:contain; }
.blog-refresh .qdk-nav-item img,.site-refresh .geo-title-row img { width:20px; height:20px; object-fit:contain; }
