:root{
  --bg:#0b1220; --bg-soft:#0f1a2e; --panel:#ffffff; --ink:#14233b; --ink-soft:#46566e;
  --line:#b8c4d6; --brand:#1e6bff; --brand-2:#13c2c2; --accent:#7c3aed;
  --h2-inset:16px; --top-h:64px; --maxw:1200px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:"Segoe UI","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  color:var(--ink);background:#f5f8fd;line-height:1.7;-webkit-font-smoothing:antialiased;}
a{color:var(--brand);text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;}

/* ===== 顶部固定导航 ===== */
.site-header{position:fixed;top:0;left:0;right:0;height:var(--top-h);z-index:50;
  background:rgba(11,18,32,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08);}
.header-inner{max-width:var(--maxw);margin:0 auto;height:100%;padding:0 var(--h2-inset);
  display:flex;align-items:center;justify-content:space-between;}
.brand{color:#fff;font-weight:700;font-size:18px;letter-spacing:.5px;}
.nav-list{list-style:none;display:flex;gap:22px;margin:0;padding:0;}
.nav-list a{color:#cdd9ee;font-size:15px;}
.nav-list a:hover{color:#fff;text-decoration:none;}
.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.3);color:#fff;
  font-size:20px;border-radius:8px;padding:4px 10px;cursor:pointer;}
.mobile-cats{display:none;}

/* ===== 主容器 ===== */
.site-main{max-width:var(--maxw);margin:calc(var(--top-h) + 24px) auto 40px;padding:0 var(--h2-inset);}

/* ===== 面包屑（左缘与 H2 严格对齐） ===== */
.breadcrumb-nav{margin:0 0 18px;}
.breadcrumb{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;font-size:13px;color:var(--ink-soft);}
.breadcrumb li:not(:last-child)::after{content:"›";margin-left:8px;color:#9fb0c9;}
.breadcrumb a{color:var(--ink-soft);}
.breadcrumb .active span{color:var(--ink);font-weight:600;}

/* ===== 文章 / 产品布局 ===== */
.article-layout{--h2-inset:var(--h2-inset);}
.article-grid{display:grid;grid-template-columns:minmax(0,760px) 240px;gap:32px;align-items:start;}
.doc-article,.doc-product{background:var(--panel);border:1px solid var(--line);border-radius:14px;
  padding:28px 32px;min-width:0;}
.doc-head h1{font-size:28px;line-height:1.3;margin:.1em 0 .4em;}
.doc-summary{background:linear-gradient(135deg,#eef4ff,#eafaf8);border-left:4px solid var(--brand);
  padding:12px 16px;border-radius:8px;color:var(--ink);margin:0 0 14px;font-size:15px;}
.doc-keywords{font-size:13px;color:var(--ink-soft);margin:0 0 6px;}
.tag-text{display:inline-block;background:#eef2fb;color:#34507e;border:1px solid #d7e0f2;
  border-radius:999px;padding:1px 10px;margin:0 6px 6px 0;font-size:12px;}
.doc-update{font-size:12px;color:#8a99b3;margin:0 0 16px;}
.doc-body{font-size:16px;color:var(--ink);}
.doc-body h2{font-size:21px;margin:28px 0 12px;padding-bottom:8px;border-bottom:2px solid #eef2fb;
  scroll-margin-top:calc(var(--top-h) + 16px);}
.doc-body h3{font-size:17px;margin:20px 0 10px;color:#22324d;}
.doc-body p{margin:0 0 14px;}
.doc-body ul,.doc-body ol{padding-left:22px;margin:0 0 14px;}
.doc-body table{border-collapse:collapse;width:100%;margin:14px 0;font-size:14px;}
.doc-body th,.doc-body td{border:2px solid var(--line);padding:8px 10px;text-align:left;}
.doc-body th{background:#f1f5fc;}
.spec-section table,.adapt-spec{border-collapse:collapse;width:100%;margin:14px 0;font-size:14px;}
.spec-section th,.spec-section td,.adapt-spec th,.adapt-spec td{border:2px solid var(--line);padding:8px 10px;text-align:left;}
.spec-section th,.adapt-spec th{background:#f1f5fc;}
.doc-body blockquote{margin:14px 0;padding:10px 14px;background:#f7faff;border-left:3px solid var(--brand-2);color:#33445e;}
.case-callout{margin:18px 0;padding:12px 16px;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;font-size:14px;}
.related{margin-top:22px;}
.related-list{list-style:none;padding:0;margin:0;}
.related-list li{margin:6px 0;}

/* ===== TOC（sticky，非 fixed） ===== */
.toc-aside{position:sticky;top:calc(var(--top-h) + 16px);max-height:calc(100vh - 100px);overflow-y:auto;}
.toc-panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 12px;}
.toc-panel summary{cursor:pointer;font-weight:600;color:#22324d;}
.toc-panel summary::after{content:"▾";float:right;transition:transform .2s;}
.toc-panel:not([open]) summary::after{transform:rotate(-90deg);}
.toc-body ul{list-style:none;margin:8px 0 0;padding-left:0;}
.toc-body li{margin:4px 0;font-size:13px;}
.toc-body a{color:#44597a;}

/* ===== FAQ ===== */
.faq-block{margin-top:24px;}
.faq-block h2{font-size:21px;}
.faq-block details{border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin:8px 0;background:#fff;}
.faq-block summary{cursor:pointer;font-weight:600;}
.faq-a{padding-top:8px;color:var(--ink-soft);}

/* ===== 列表 / 分类页 ===== */
.list-grid{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start;}
.cat-side .cat-panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 14px;}
.cat-panel summary{cursor:pointer;font-weight:600;}
.category-list{list-style:none;margin:10px 0 0;padding:0;}
.category-list li{margin:4px 0;}
.category-list li.active a{color:var(--brand);font-weight:700;}
.cat-content h1.list-title{font-size:26px;margin:0 0 8px;}
.list-intro{color:var(--ink-soft);margin:0 0 18px;}
.entry-list{list-style:none;margin:0;padding:0;}
.entry-item{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin:0 0 14px;}
.entry-title{font-size:18px;margin:0 0 6px;}
.entry-link{color:var(--ink);}
.entry-desc{color:var(--ink-soft);font-size:14px;margin:0 0 6px;}
.entry-meta{font-size:12px;color:#8a99b3;margin:0;}

/* ===== 页面卡片 ===== */
.page-wrap{max-width:880px;margin:0 auto;}
.page-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:32px 40px;}
.page-title{font-size:26px;margin:0 0 16px;}
.page-body{font-size:16px;}
.page-body h2{font-size:20px;margin:24px 0 10px;border-bottom:2px solid #eef2fb;padding-bottom:6px;}
.page-body table{border-collapse:collapse;width:100%;margin:12px 0;}
.page-body th,.page-body td{border:1px solid var(--line);padding:8px 10px;}

/* ===== 首页 ===== */
.hero{background:linear-gradient(135deg,#0b1220,#102a4c);color:#fff;border-radius:18px;padding:54px 40px;margin-bottom:34px;}
.hero-title{font-size:34px;margin:0 0 14px;}
.hero-sub{font-size:16px;color:#c7d6ef;max-width:760px;margin:0 0 22px;}
.hero-cta a{display:inline-block;padding:11px 22px;border-radius:10px;margin-right:12px;font-weight:600;}
.btn-primary{background:var(--brand);color:#fff;}
.btn-ghost{border:1px solid rgba(255,255,255,.4);color:#fff;}
.section-title{font-size:22px;margin:34px 0 16px;}
.cat-cards,.article-cards,.product-cards,.view-cards{display:grid;gap:16px;}
.cat-cards{grid-template-columns:repeat(3,1fr);}
.article-cards{grid-template-columns:repeat(3,1fr);}
.product-cards{grid-template-columns:repeat(3,1fr);}
.view-cards{grid-template-columns:repeat(3,1fr);}
.cat-card,.article-card,.product-card,.view-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;transition:transform .15s,box-shadow .15s;}
.cat-card:hover,.article-card:hover,.product-card:hover,.view-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(20,40,80,.12);}
.cat-card h3,.article-card h3,.product-card h3,.view-card h3{margin:0 0 8px;font-size:17px;}
.cat-card p,.article-card p,.product-card p{margin:0;font-size:13px;color:var(--ink-soft);}
.card-cat{display:inline-block;font-size:12px;color:var(--brand);background:#eef4ff;padding:1px 8px;border-radius:6px;margin-bottom:6px;}

/* ===== 页脚 ===== */
.site-footer{background:var(--bg);color:#aebfd8;margin-top:60px;padding:36px 0 18px;}
.footer-inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--h2-inset);display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px;}
.footer-title{color:#fff;font-size:15px;margin:0 0 12px;}
.footer-desc{font-size:13px;line-height:1.6;}
.footer-nav{list-style:none;margin:0;padding:0;}
.footer-nav li{margin:6px 0;font-size:13px;}
.footer-nav a{color:#aebfd8;}
.footer-bottom{max-width:var(--maxw);margin:24px auto 0;padding:16px var(--h2-inset) 0;border-top:1px solid rgba(255,255,255,.08);font-size:12px;text-align:center;}

/* ===== 悬浮工具胶囊 ===== */
.float-capsule{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:60;
  display:flex;flex-direction:column;gap:10px;padding:10px 8px;border-radius:999px;
  background:linear-gradient(160deg,var(--brand),var(--accent));box-shadow:0 10px 30px rgba(30,40,90,.35);}
.cap-btn{width:46px;height:46px;border:none;border-radius:50%;background:rgba(255,255,255,.14);
  color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;font-size:11px;}
.cap-btn .cap-ico{font-size:18px;line-height:1;}
.cap-btn .cap-txt{margin-top:2px;}
.cap-btn:hover{background:rgba(255,255,255,.28);}

/* ===== 名片弹窗 ===== */
.wecom-modal{position:fixed;inset:0;z-index:80;background:rgba(5,10,20,.6);display:flex;align-items:center;justify-content:center;}
.wecom-modal[hidden]{display:none;}
.wecom-modal__box{position:relative;background:#fff;border-radius:12px;padding:8px;}
.wecom-modal__box img{display:block;border-radius:8px;}
.wecom-modal__close{position:absolute;top:-12px;right:-12px;width:30px;height:30px;border-radius:50%;border:none;background:#fff;color:#333;font-size:18px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.3);}
.mail-pop{position:fixed;right:78px;top:50%;transform:translateY(-50%);z-index:70;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 14px;box-shadow:0 8px 24px rgba(20,40,80,.2);font-size:14px;}
.mail-pop[hidden]{display:none;}
.mail-pop a{font-weight:700;}

/* ===== 响应式 ===== */
@media (max-width:1024px){
  .article-grid{grid-template-columns:1fr;}
  .toc-aside{position:static;max-height:none;margin-top:16px;}
  .list-grid{grid-template-columns:1fr;}
  .cat-cards,.article-cards,.product-cards,.view-cards{grid-template-columns:repeat(2,1fr);}
  .nav-toggle{display:block;}
  .primary-nav{display:none;position:absolute;top:var(--top-h);left:0;right:0;background:var(--bg);padding:14px var(--h2-inset);}
  .primary-nav.open{display:block;}
  .nav-list{flex-direction:column;gap:12px;}
  .mobile-cats{display:block;margin-top:12px;}
  .footer-inner{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .cat-cards,.article-cards,.product-cards,.view-cards{grid-template-columns:1fr;}
  .page-card{padding:22px 18px;}
  .doc-article,.doc-product{padding:20px 16px;}
}
