/* 蓝图（Blueprint）方向：深蓝底、白色细线、网格与工程标注 */
:root{
  --bg:#10293f;          /* 深蓝底：源自工程蓝图晒图纸色 */
  --bg-deep:#0b1e30;
  --ink:#eef4f8;
  --ink-dim:#b9cbd9;
  --line:#7fa3bd;
  --accent:#f2b544;      /* 图纸上的标注黄，用于强调 */
  --gap:24px;
  --fs-s:13px; --fs-b:16px; --fs-m:20px; --fs-l:28px; --fs-xl:44px; --fs-hero:clamp(38px,6vw,68px);
  --mono:"Courier New",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:"Noto Sans SC","Microsoft YaHei",system-ui,sans-serif;
  font-size:var(--fs-b);line-height:1.85;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:48px 48px;
}
.wrap{max-width:1280px;margin:0 auto;padding:0 24px}
.wrap.narrow{max-width:960px}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* 页头 */
.site-head{border-bottom:2px solid var(--line);background:var(--bg-deep)}
.head-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:16px 24px}
.site-head nav{display:flex;flex-wrap:wrap;gap:4px}
.site-head nav a{color:var(--ink);font-family:var(--mono);font-size:var(--fs-s);letter-spacing:.12em;padding:6px 10px;border:1px solid transparent}
.site-head nav a:hover{border-color:var(--line);text-decoration:none;color:var(--accent)}

/* 标注文字 */
.tag{font-family:var(--mono);font-size:var(--fs-s);letter-spacing:.18em;color:var(--line);border-left:3px solid var(--accent);padding-left:10px;margin-bottom:24px}
.byline{font-family:var(--mono);color:var(--ink-dim);font-size:var(--fs-s);letter-spacing:.1em}

h1{font-size:var(--fs-hero);font-weight:800;line-height:1.2;letter-spacing:.02em;margin-bottom:24px}
h2{font-size:var(--fs-l);font-weight:700;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:24px}
h3{font-size:var(--fs-m);font-weight:700;color:var(--accent);margin-bottom:8px}
p,li,dd{max-width:62ch}
.lead{font-size:var(--fs-m);line-height:1.9;color:var(--ink);max-width:44em}

/* 首页首屏：左右分栏（图右文左，非居中 hero） */
.hero-index{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;padding:64px 24px;align-items:start}
.hero-fig{border:1px solid var(--line);padding:12px;background:var(--bg-deep)}
.hero-fig img{width:100%;height:auto;display:block;mix-blend-mode:screen}
figcaption{font-family:var(--mono);font-size:var(--fs-s);color:var(--ink-dim);letter-spacing:.1em;margin-top:8px}
.cta-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:24px}
.btn{display:inline-block;font-family:var(--mono);letter-spacing:.12em;padding:12px 24px;background:var(--accent);color:var(--bg-deep);font-weight:700;border:1px solid var(--accent)}
.btn:hover{text-decoration:none;background:var(--ink);border-color:var(--ink)}
.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}
.btn.ghost:hover{background:var(--accent);color:var(--bg-deep)}

/* 区块 */
.sec{padding:64px 24px 32px}
.sec-note{font-family:var(--mono);font-size:var(--fs-s);color:var(--ink-dim);margin-bottom:24px;letter-spacing:.08em}
.cols3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.cols3>div{border-top:3px solid var(--accent);padding-top:16px}

/* 九宫格 */
.items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.item{border:1px solid var(--line);padding:16px;background:rgba(255,255,255,.03)}
.item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;filter:sepia(.2) saturate(.85);border-bottom:1px solid var(--line)}
.item h2{font-size:var(--fs-m);border:none;padding:12px 0 4px;margin:0}
.item p{font-size:14px;color:var(--ink-dim);line-height:1.7}
.item ul{margin-top:8px;padding-left:1.2em}
.item li{font-size:13px;font-family:var(--mono);color:var(--line);line-height:1.8}
@media(max-width:760px){.items{grid-template-columns:minmax(0,1fr)}}

/* 流程 */
.steps{list-style:none;counter-reset:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}
.steps li{border:1px solid var(--line);padding:16px}
.steps span{font-family:var(--mono);font-size:var(--fs-xl);color:var(--accent);display:block;line-height:1.2}
.steps h3{margin-top:8px}
.steps p{font-size:14px;color:var(--ink-dim)}
.steps-wide li{padding:24px}

/* FAQ */
.faq dt{font-weight:700;color:var(--accent);margin-top:24px;font-size:var(--fs-m)}
.faq dd{color:var(--ink-dim);margin-top:8px;border-left:1px solid var(--line);padding-left:16px}
.faq dl{margin-bottom:16px}

/* 表格 */
table{width:100%;border-collapse:collapse;margin:32px 0;font-size:14px}
caption{font-family:var(--mono);font-size:var(--fs-s);color:var(--ink-dim);text-align:left;padding-bottom:8px;letter-spacing:.1em}
th,td{border:1px solid var(--line);padding:10px 12px;text-align:left}
th{background:var(--bg-deep);font-family:var(--mono);letter-spacing:.08em}

/* 关于页分栏 */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.split img{width:100%;height:auto;display:block;border:1px solid var(--line);padding:12px;background:var(--bg-deep);mix-blend-mode:screen}

/* 文章页 */
.art-head{padding:64px 0 32px;border-bottom:1px solid var(--line);margin-bottom:48px}
article h2{margin-top:48px}
article p{margin-bottom:16px;color:var(--ink)}

/* CTA */
.cta{border:1px dashed var(--line);padding:32px;margin-top:32px}
.cta h2{border:none;margin-bottom:8px}

/* 面包屑 */
.breadcrumb{font-size:12px;letter-spacing:.12em;color:var(--ink-dim);padding:24px 0 0;font-family:var(--mono)}
.breadcrumb a{color:var(--ink-dim)}
.breadcrumb a:hover{color:var(--accent)}
.breadcrumb span{margin:0 8px;color:var(--line)}

/* 页脚 */
.site-foot{border-top:2px solid var(--line);background:var(--bg-deep);margin-top:64px}
.foot-row{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;padding:32px 24px;font-size:14px}
.foot-row nav{display:flex;gap:16px;flex-wrap:wrap}
.foot-row nav a{color:var(--ink-dim)}
.foot-row nav a:hover{color:var(--accent)}

@media(max-width:900px){
  .hero-index,.split{grid-template-columns:minmax(0,1fr)}
  .cols3,.steps{grid-template-columns:minmax(0,1fr)}
  h1{font-size:var(--fs-xl)}
  .sec{padding:48px 24px 24px}
}