/* ============================================================
   BOLT-ON 直装局 — 设计系统 v2
   方向：精密机械 + 奢侈品。石墨黑 / 钛银 / 香槟金。
   大留白、细字重大标题、发丝线、金属渐变、噪点与光晕。
   无卡片阴影、无渐变紫、无 emoji、无圆角。
   ============================================================ */

:root{
  /* 底 */
  --ink:        #06060A;
  --ink-1:      #0A0A0F;
  --ink-2:      #0E0E14;
  --panel:      rgba(255,255,255,.018);
  --panel-2:    rgba(255,255,255,.035);

  /* 线 */
  --line:       rgba(255,255,255,.07);
  --line-2:     rgba(255,255,255,.13);
  --line-3:     rgba(255,255,255,.22);

  /* 字 */
  --fg:         #EAEAEC;
  --silver:     #A9ADB6;
  --fg-2:       #8C909A;
  --fg-3:       #5D616B;
  --fg-4:       #3D4049;

  /* 金属 + 强调 */
  --gold:       #C6A664;
  --gold-lt:    #E4C98D;
  --gold-dk:    #8A6F3C;
  --steel:      #7E8A99;
  --danger:     #C4553F;
  --ok:         #6FA98A;

  --font-cn: "PingFang SC","HarmonyOS Sans SC","Source Han Sans SC","Microsoft YaHei",system-ui,sans-serif;
  --font-serif: "Source Han Serif SC","Noto Serif SC","Songti SC",Georgia,"Times New Roman",serif;
  --font-mono: "JetBrains Mono","SF Mono","Roboto Mono",Consolas,"Courier New",monospace;

  --nav-h: 62px;
  --gut: 40px;
}

*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }

body{
  background:var(--ink);
  color:var(--fg);
  font-family:var(--font-cn);
  font-size:15px;
  line-height:1.8;
  letter-spacing:.012em;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

/* 顶部环境光 + 细网格 + 噪点 */
body::before{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(900px 520px at 74% -6%, rgba(198,166,100,.10), transparent 62%),
    radial-gradient(700px 480px at 8% 8%, rgba(126,138,153,.07), transparent 60%),
    linear-gradient(to right, rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.022) 1px, transparent 1px);
  background-size:auto,auto,64px 64px,64px 64px;
}
body::after{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none; opacity:.035;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/></filter><rect width='140' height='140' filter='url(%23n)'/></svg>");
}

::selection{ background:var(--gold); color:#000; }
a{ color:inherit; text-decoration:none; }
img,svg{ display:block; max-width:100%; }
table{ border-collapse:collapse; width:100%; }

.wrap{ max-width:1280px; margin:0 auto; padding:0 var(--gut); position:relative; z-index:1; }
.grid12{ display:grid; grid-template-columns:repeat(12,1fr); gap:var(--gut); }

/* ---------- 排版 ---------- */
h1,h2,h3,h4{ font-weight:300; letter-spacing:.005em; line-height:1.16; }
h1{ font-size:clamp(38px,6.2vw,84px); line-height:1.1; }
h2{ font-size:clamp(27px,3.6vw,46px); }
h3{ font-size:20px; font-weight:400; }
h4{ font-size:15px; font-weight:500; }
b,strong{ font-weight:500; color:var(--fg); }

.mono{ font-family:var(--font-mono); }
.num{ font-family:var(--font-mono); font-variant-numeric:tabular-nums; }
.serif{ font-family:var(--font-serif); }
.muted{ color:var(--fg-2); }
.muted2{ color:var(--fg-3); }
.sig{ color:var(--gold); }
.dg{ color:var(--danger); }

.gilt{
  background:linear-gradient(96deg,var(--gold-dk) 0%,var(--gold-lt) 38%,#FFF6E2 50%,var(--gold) 62%,var(--gold-dk) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

.eyebrow{
  font-family:var(--font-mono); font-size:10.5px; letter-spacing:.3em;
  color:var(--gold); text-transform:uppercase;
  display:flex; align-items:center; gap:12px;
}
.eyebrow::before{ content:""; width:26px; height:1px; background:linear-gradient(90deg,transparent,var(--gold)); }

.lead{ font-size:16.5px; color:var(--silver); line-height:1.95; max-width:56ch; font-weight:300; }

.hairline{ height:1px; background:linear-gradient(90deg,transparent,var(--line-2) 18%,var(--line-2) 82%,transparent); }
.stripe{ height:6px; background:repeating-linear-gradient(45deg,var(--gold) 0 8px,var(--ink) 8px 16px); opacity:.75; }
.stripe.thin{ height:3px; }

.tag{
  display:inline-flex; align-items:center; gap:6px;
  font-family:var(--font-mono); font-size:10px; letter-spacing:.12em;
  padding:4px 9px; border:1px solid var(--line-2); color:var(--fg-2); white-space:nowrap;
}
.tag.sig{ border-color:rgba(198,166,100,.45); color:var(--gold); }
.tag.red{ border-color:rgba(196,85,63,.45); color:var(--danger); }
.tag.ok{ border-color:rgba(111,169,138,.4); color:var(--ok); }

.btn{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--font-mono); font-size:12.5px; letter-spacing:.1em;
  padding:15px 26px; border:1px solid var(--line-3); color:var(--fg);
  background:transparent; transition:all .2s; cursor:pointer; font-weight:400;
}
.btn:hover{ border-color:var(--fg); background:var(--panel-2); }
.btn.primary{
  border:0; color:#0A0A0A; font-weight:600;
  background:linear-gradient(100deg,var(--gold-dk),var(--gold-lt) 45%,var(--gold) 70%,var(--gold-dk));
  box-shadow:0 0 0 1px rgba(198,166,100,.35), 0 8px 30px -14px rgba(198,166,100,.6);
}
.btn.primary:hover{ filter:brightness(1.08); }
.btn .arw{ transition:transform .2s; }
.btn:hover .arw{ transform:translateX(4px); }

/* ---------- 导航 ---------- */
.nav{
  position:fixed; top:0; left:0; right:0; height:var(--nav-h);
  background:rgba(6,6,10,.72); backdrop-filter:blur(20px) saturate(140%);
  border-bottom:1px solid var(--line); z-index:100;
}
.nav-in{ max-width:1280px; margin:0 auto; height:100%; padding:0 var(--gut);
  display:flex; align-items:center; justify-content:space-between; gap:24px; }
.logo{ display:flex; align-items:center; gap:12px; }
.logo-mark{ width:24px; height:24px; border:1px solid var(--gold); position:relative; flex:none; }
.logo-mark::before,.logo-mark::after{ content:""; position:absolute; background:var(--gold); }
.logo-mark::before{ left:3px; right:3px; top:50%; height:1px; transform:translateY(-50%); }
.logo-mark::after{ top:3px; bottom:3px; left:50%; width:1px; transform:translateX(-50%); }
.logo-txt{ font-family:var(--font-mono); font-weight:600; font-size:15px; letter-spacing:.18em; line-height:1; color:var(--fg); }
.logo-txt span{ display:block; margin-top:4px; font-weight:400; letter-spacing:.14em; font-size:9.5px; color:var(--fg-3); }

.nav-menu{ display:flex; align-items:center; gap:4px; }
.nav-menu a{ font-size:13px; color:var(--silver); padding:8px 13px; letter-spacing:.08em;
  border:1px solid transparent; transition:color .18s,border-color .18s,background .18s; white-space:nowrap; font-weight:300; }
.nav-menu a:hover{ color:var(--fg); border-color:var(--line-2); }
.nav-menu a.on{ color:var(--gold); border-color:rgba(198,166,100,.4); background:rgba(198,166,100,.06); }
.nav-cta{ font-family:var(--font-mono); font-size:11.5px; letter-spacing:.14em; border:1px solid rgba(198,166,100,.5);
  color:var(--gold); padding:10px 16px; margin-left:14px; transition:background .18s,color .18s; }
.nav-cta:hover{ background:var(--gold); color:#0A0A0A; }
.nav-burger{ display:none; background:none; border:1px solid var(--line-2); color:var(--silver);
  width:40px; height:32px; cursor:pointer; font-family:var(--font-mono); font-size:10px; letter-spacing:.1em; }

/* ---------- 章节 ---------- */
.sec{ padding:120px 0; position:relative; }
.sec.tight{ padding:84px 0; }
.sec-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:48px; flex-wrap:wrap; margin-bottom:56px; }
.sec-head .lft{ max-width:760px; }
.sec-head h2{ margin-top:20px; }
.sec-head p{ color:var(--fg-2); font-size:14.5px; margin-top:16px; max-width:60ch; font-weight:300; }

.stat{ border-top:1px solid var(--line); padding-top:18px; }
.stat .v{ font-family:var(--font-mono); font-size:34px; font-weight:300; line-height:1; letter-spacing:-.02em; color:var(--fg); }
.stat .v small{ font-size:12.5px; color:var(--fg-3); margin-left:4px; letter-spacing:.06em; }
.stat .k{ font-size:12.5px; color:var(--fg-3); margin-top:10px; letter-spacing:.05em; font-weight:300; }

/* ---------- 表格 ---------- */
.tbl{ width:100%; font-size:13.5px; }
.tbl th{ font-family:var(--font-mono); font-size:10px; letter-spacing:.2em; color:var(--fg-3); text-align:left;
  font-weight:400; padding:14px 16px; border-bottom:1px solid var(--line-2); text-transform:uppercase; white-space:nowrap; }
.tbl td{ padding:16px; border-bottom:1px solid var(--line); vertical-align:top; font-weight:300; }
.tbl tbody tr{ transition:background .16s; }
.tbl tbody tr:hover{ background:var(--panel); }
.tbl .r{ text-align:right; font-family:var(--font-mono); font-variant-numeric:tabular-nums; }
.tbl .price{ font-family:var(--font-mono); color:var(--gold); }
.tbl-wrap{ overflow-x:auto; border-top:1px solid var(--line-2); }

/* ---------- 卡片 ---------- */
.card{ border:1px solid var(--line); background:var(--panel); padding:30px; position:relative;
  transition:border-color .2s,background .2s; }
.card:hover{ border-color:var(--line-3); background:var(--panel-2); }
.card .idx{ font-family:var(--font-mono); font-size:10px; color:var(--fg-4); letter-spacing:.2em; }

.rv{ opacity:0; transform:translateY(16px);
  transition:opacity .7s cubic-bezier(.2,.7,.3,1), transform .7s cubic-bezier(.2,.7,.3,1); }
.rv.in{ opacity:1; transform:none; }

/* ---------- HERO ---------- */
.hero{ padding:calc(var(--nav-h) + 96px) 0 72px; position:relative; overflow:hidden; border-bottom:1px solid var(--line); }
.hero-bg{ position:absolute; right:-3%; top:0; bottom:0; width:56%; display:flex; align-items:center;
  justify-content:center; pointer-events:none; }
.hero-bg img,.hero-bg svg{ width:100%; height:auto; max-height:560px; opacity:.85;
  filter:drop-shadow(0 0 60px rgba(198,166,100,.10)); }
.hero-in{ position:relative; z-index:2; }
.hero h1{ margin:26px 0 0; max-width:16em; }
.hero h1 em{ font-style:normal; font-weight:400; }
.hero .lead{ margin-top:30px; }
.hero-actions{ display:flex; gap:16px; margin-top:44px; flex-wrap:wrap; }
.hero-meta{ display:flex; gap:0; margin-top:72px; border-top:1px solid var(--line); flex-wrap:wrap; }
.hero-meta > div{ padding:22px 34px 0 0; margin-right:34px; border-right:1px solid var(--line); }
.hero-meta > div:last-child{ border-right:0; }

/* 席位状态条 */
.seatbar{
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  background:var(--ink-1); padding:14px 0;
}
.seatbar-in{ max-width:1280px; margin:0 auto; padding:0 var(--gut); display:flex; align-items:center;
  justify-content:space-between; gap:24px; flex-wrap:wrap; position:relative; z-index:1; }
.seatbar .lbl{ font-family:var(--font-mono); font-size:10.5px; letter-spacing:.24em; color:var(--fg-3); }
.seatbar .lbl b{ color:var(--gold); font-weight:500; }
.seatbar .track{ width:220px; height:2px; background:rgba(255,255,255,.08); position:relative; }
.seatbar .fill{ position:absolute; inset:0 auto 0 0; width:0; background:linear-gradient(90deg,var(--gold-dk),var(--gold-lt));
  transition:width 1.4s cubic-bezier(.2,.7,.3,1); }
.dotlive{ width:5px; height:5px; background:var(--gold); border-radius:50%; box-shadow:0 0 0 0 rgba(198,166,100,.6);
  animation:pulse 2.4s infinite; }
@keyframes pulse{ 70%{ box-shadow:0 0 0 8px rgba(198,166,100,0); } 100%{ box-shadow:0 0 0 0 rgba(198,166,100,0); } }

.ticker{ border-bottom:1px solid var(--line); background:var(--ink-1); overflow:hidden; height:36px; display:flex; align-items:center; }
.ticker-track{ display:flex; gap:56px; white-space:nowrap; animation:tk 46s linear infinite; padding-left:56px; }
.ticker-track span{ font-family:var(--font-mono); font-size:10.5px; letter-spacing:.22em; color:var(--fg-4); }
.ticker-track b{ color:var(--silver); font-weight:400; }
@keyframes tk{ to{ transform:translateX(-50%); } }

/* ---------- 双业务线 ---------- */
.lines{ display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line-2); }
.line{ padding:38px 38px 38px 0; }
.line + .line{ padding-left:38px; border-left:1px solid var(--line); }
.line .hd{ display:flex; align-items:baseline; gap:14px; margin-bottom:8px; }
.line .hd .id{ font-family:var(--font-mono); font-size:11px; letter-spacing:.24em; color:var(--gold); }
.line .hd h3{ font-size:23px; font-weight:400; }
.line p.sub{ color:var(--fg-2); font-size:14px; margin:14px 0 26px; font-weight:300; }
.line ul{ list-style:none; }
.line li{ display:flex; gap:14px; padding:12px 0; border-top:1px solid var(--line); font-size:14px; font-weight:300; }
.line li .mk{ font-family:var(--font-mono); color:var(--fg-4); flex:none; width:28px; font-size:10px; padding-top:4px; letter-spacing:.1em; }

/* ---------- 品类目录 ---------- */
.cat-row{ display:grid; grid-template-columns:64px 1fr 210px 140px 24px; align-items:center; gap:22px;
  padding:26px 0; border-bottom:1px solid var(--line); transition:background .18s,padding-left .18s; cursor:pointer; }
.cat-row:hover{ background:var(--panel); padding-left:12px; }
.cat-row .cid{ font-family:var(--font-mono); font-size:11px; color:var(--fg-4); letter-spacing:.2em; }
.cat-row h3{ font-size:21px; }
.cat-row .desc{ color:var(--fg-2); font-size:13px; margin-top:6px; max-width:48ch; font-weight:300; }
.cat-row .pv{ font-family:var(--font-mono); font-size:13px; color:var(--silver); }
.cat-row .ar{ font-family:var(--font-mono); color:var(--fg-4); transition:color .18s,transform .18s; }
.cat-row:hover .ar{ color:var(--gold); transform:translateX(4px); }
.cat-head{ display:grid; grid-template-columns:64px 1fr 210px 140px 24px; gap:22px; padding:0 0 14px;
  border-bottom:1px solid var(--line-2); font-family:var(--font-mono); font-size:9.5px; letter-spacing:.2em; color:var(--fg-4); }

/* ---------- SOP ---------- */
.sop{ display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid var(--line-2); }
.sop-step{ padding:28px 18px 28px 0; border-right:1px solid var(--line); }
.sop-step:last-child{ border-right:0; }
.sop-step .n{ font-family:var(--font-mono); font-size:10px; color:var(--gold); letter-spacing:.2em; }
.sop-step h4{ margin:14px 0 10px; font-size:14.5px; font-weight:400; }
.sop-step p{ font-size:12.5px; color:var(--fg-2); line-height:1.75; font-weight:300; }
.sop-step .t{ font-family:var(--font-mono); font-size:10px; color:var(--fg-4); margin-top:14px; letter-spacing:.1em; }

/* ---------- 合规矩阵 ---------- */
.mtx{ display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line-2); }
.mtx-col{ padding:28px 28px 28px 0; border-right:1px solid var(--line); }
.mtx-col:last-child{ border-right:0; padding-right:0; }
.mtx-col .t{ display:flex; align-items:center; gap:10px; margin-bottom:20px; }
.mtx-col .t .dot{ width:7px; height:7px; flex:none; }
.mtx-col .t h4{ font-size:15px; font-weight:400; letter-spacing:.03em; }
.mtx-col ul{ list-style:none; }
.mtx-col li{ font-size:13px; color:var(--fg-2); padding:10px 0; border-top:1px solid var(--line);
  display:flex; gap:10px; font-weight:300; }
.mtx-col li .x{ font-family:var(--font-mono); font-size:10px; flex:none; width:16px; color:var(--fg-4); }

/* ---------- 知识条目 ---------- */
.kblk{ border-top:1px solid var(--line-2); padding-top:40px; margin-top:40px;
  display:grid; grid-template-columns:repeat(12,1fr); gap:var(--gut); }
.kblk .k-ttl{ grid-column:span 4; }
.kblk .k-body{ grid-column:span 8; }
.kblk .k-ttl h3{ font-size:30px; }
.kblk .k-ttl .en{ font-family:var(--font-mono); font-size:10px; letter-spacing:.26em; color:var(--fg-4); margin-top:10px; }
.kv{ display:grid; grid-template-columns:150px 1fr; gap:0 24px; border-top:1px solid var(--line); }
.kv > div{ padding:13px 0; border-bottom:1px solid var(--line); font-size:13.5px; }
.kv .kk{ font-family:var(--font-mono); font-size:11px; letter-spacing:.1em; color:var(--gold); padding-top:15px; }
.kv .vv{ color:var(--fg-2); font-weight:300; }

/* ---------- 案例 ---------- */
.case{ border-top:1px solid var(--line-2); padding:50px 0; display:grid; grid-template-columns:repeat(12,1fr); gap:var(--gut); }
.case .c-vis{ grid-column:span 5; }
.case .c-txt{ grid-column:span 7; }
.case .c-vis figure{ border:1px solid var(--line); background:var(--panel); padding:20px; }
.case .c-vis figcaption{ font-family:var(--font-mono); font-size:10px; color:var(--fg-4); letter-spacing:.16em;
  margin-top:14px; display:flex; justify-content:space-between; }
.case h3{ font-size:25px; margin:12px 0 6px; font-weight:400; }
.spec{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin:26px 0; }
.spec > div{ background:var(--ink-1); padding:15px; }
.spec .k{ font-family:var(--font-mono); font-size:9.5px; letter-spacing:.16em; color:var(--fg-4); }
.spec .v{ font-family:var(--font-mono); font-size:15px; margin-top:6px; font-weight:300; }

/* ---------- 驾驶日志 ---------- */
.log{ border-left:1px solid var(--line-2); padding-left:28px; margin-left:8px; }
.log-item{ position:relative; padding-bottom:42px; }
.log-item::before{ content:""; position:absolute; left:-32px; top:10px; width:7px; height:7px; background:var(--gold); }
.log-item .d{ font-family:var(--font-mono); font-size:10.5px; letter-spacing:.2em; color:var(--gold); }
.log-item h4{ font-size:18px; margin:10px 0 12px; font-weight:400; }
.log-item p{ font-size:14px; color:var(--fg-2); margin-bottom:14px; font-weight:300; }
.bar{ display:flex; align-items:center; gap:14px; margin:8px 0; font-size:12px; }
.bar .bn{ width:70px; color:var(--fg-3); font-family:var(--font-mono); font-size:10px; letter-spacing:.1em; flex:none; }
.bar .bt{ flex:1; height:3px; background:rgba(255,255,255,.07); position:relative; }
.bar .bf{ position:absolute; left:0; top:0; bottom:0; width:0;
  background:linear-gradient(90deg,var(--gold-dk),var(--gold-lt)); transition:width 1.2s cubic-bezier(.2,.7,.3,1); }
.bar .bv{ width:34px; text-align:right; font-family:var(--font-mono); font-size:11px; color:var(--silver); flex:none; }

/* ---------- 引言 ---------- */
.quote{ border-left:1px solid var(--gold); padding:6px 0 6px 28px; font-family:var(--font-serif);
  font-size:19px; line-height:1.75; color:var(--silver); font-weight:300; }
.quote .by{ display:block; margin-top:14px; font-family:var(--font-mono); font-size:10px;
  letter-spacing:.16em; color:var(--fg-4); }

/* ---------- 提示条 ---------- */
.notice{ border:1px solid var(--line-2); background:var(--panel); padding:22px 24px; display:flex; gap:18px; align-items:flex-start; }
.notice .nc{ font-family:var(--font-mono); font-size:10px; letter-spacing:.2em; color:var(--gold); flex:none; padding-top:5px; }
.notice p{ font-size:13.5px; color:var(--fg-2); font-weight:300; }
.notice.red{ border-color:rgba(196,85,63,.32); }
.notice.red .nc{ color:var(--danger); }

/* ---------- FAQ ---------- */
.qa{ border-bottom:1px solid var(--line); }
.qa-q{ width:100%; text-align:left; background:none; border:0; color:var(--fg); cursor:pointer;
  padding:22px 0; display:flex; justify-content:space-between; align-items:center; gap:24px;
  font-family:var(--font-cn); font-size:15.5px; font-weight:300; }
.qa-q .pm{ font-family:var(--font-mono); color:var(--gold); font-size:15px; flex:none; transition:transform .25s; }
.qa.open .qa-q .pm{ transform:rotate(45deg); }
.qa-a{ max-height:0; overflow:hidden; transition:max-height .35s ease; }
.qa-a p{ color:var(--fg-2); font-size:14px; padding:0 0 24px; max-width:80ch; font-weight:300; }

/* ---------- 标签页 ---------- */
.tabs{ display:flex; gap:0; border-bottom:1px solid var(--line-2); flex-wrap:wrap; }
.tabs button{ background:none; border:0; border-bottom:1px solid transparent; margin-bottom:-1px;
  color:var(--fg-3); font-family:var(--font-mono); font-size:11px; letter-spacing:.16em;
  padding:14px 20px; cursor:pointer; transition:color .18s,border-color .18s; }
.tabs button:hover{ color:var(--fg); }
.tabs button.on{ color:var(--gold); border-bottom-color:var(--gold); }
.panel{ display:none; }
.panel.on{ display:block; }

/* ---------- 候补 / 评论 ---------- */
.wl{ border:1px solid var(--line-2); background:var(--panel); padding:38px; }
.wl h3{ font-size:24px; font-weight:400; }
.field{ display:block; margin-bottom:18px; }
.field .fl{ font-family:var(--font-mono); font-size:10px; letter-spacing:.18em; color:var(--fg-3); margin-bottom:9px; }
.field input,.field select,.field textarea{
  width:100%; background:var(--ink-2); border:1px solid var(--line-2); color:var(--fg);
  font-family:var(--font-cn); font-size:14px; padding:13px 15px; outline:none; transition:border-color .18s; font-weight:300;
}
.field input:focus,.field select:focus,.field textarea:focus{ border-color:var(--gold); }
.field textarea{ resize:vertical; min-height:110px; }
.wl-note{ font-family:var(--font-mono); font-size:10.5px; letter-spacing:.1em; color:var(--fg-4); margin-top:16px; line-height:1.9; }
.queue{ display:flex; align-items:center; gap:14px; margin-top:22px; padding-top:22px; border-top:1px solid var(--line); }
.queue .qn{ font-family:var(--font-mono); font-size:22px; color:var(--gold); letter-spacing:.06em; }

.cmt{ border-top:1px solid var(--line); padding:24px 0; }
.cmt:last-child{ border-bottom:1px solid var(--line); }
.cmt-hd{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.cmt-avatar{ width:30px; height:30px; border:1px solid var(--line-3); display:flex; align-items:center;
  justify-content:center; font-family:var(--font-mono); font-size:11px; color:var(--gold); flex:none; }
.cmt-name{ font-size:13.5px; }
.cmt-meta{ font-family:var(--font-mono); font-size:10px; letter-spacing:.12em; color:var(--fg-4); }
.cmt-body{ margin:12px 0 0 42px; font-size:14px; color:var(--silver); font-weight:300; }
.cmt-acts{ margin:12px 0 0 42px; display:flex; gap:18px; }
.cmt-acts button{ background:none; border:0; color:var(--fg-4); font-family:var(--font-mono);
  font-size:10.5px; letter-spacing:.1em; cursor:pointer; transition:color .18s; padding:0; }
.cmt-acts button:hover{ color:var(--gold); }
.cmt-acts button.on{ color:var(--gold); }
.cmt-sort{ display:flex; gap:20px; border-bottom:1px solid var(--line-2); padding-bottom:14px; margin-bottom:8px; }
.cmt-sort button{ background:none; border:0; color:var(--fg-3); font-family:var(--font-mono);
  font-size:10.5px; letter-spacing:.16em; cursor:pointer; padding:0; transition:color .18s; }
.cmt-sort button.on{ color:var(--gold); }
.cmt-sort button:hover{ color:var(--silver); }
.cmt-empty{ padding:40px 0; text-align:center; color:var(--fg-4); font-family:var(--font-mono);
  font-size:11px; letter-spacing:.16em; }

/* 小调查 */
.poll-item{ display:block; width:100%; text-align:left; background:none; border:0;
  border-top:1px solid var(--line); padding:20px 14px; cursor:pointer;
  transition:background .18s,padding-left .18s; }
.poll-item:last-child{ border-bottom:1px solid var(--line); }
.poll-item:hover{ background:var(--panel); padding-left:22px; }
.poll-item.mine{ background:rgba(198,166,100,.06); }
.pi-top{ display:flex; justify-content:space-between; gap:20px; align-items:baseline; flex-wrap:wrap; }
.pi-label{ font-size:15.5px; color:var(--fg); font-weight:300; }
.pi-num{ font-family:var(--font-mono); font-size:12px; color:var(--gold); flex:none; }
.pi-bar{ height:2px; background:rgba(255,255,255,.07); margin:13px 0 10px; position:relative; }
.pi-bar span{ position:absolute; inset:0 auto 0 0; background:linear-gradient(90deg,var(--gold-dk),var(--gold-lt));
  transition:width .8s cubic-bezier(.2,.7,.3,1); }
.pi-note{ font-size:12.5px; color:var(--fg-3); font-weight:300; }
.poll-meta{ display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap;
  border-bottom:1px solid var(--line-2); padding-bottom:14px; margin-bottom:4px;
  font-family:var(--font-mono); font-size:10.5px; letter-spacing:.14em; color:var(--fg-4); }

/* ---------- 页脚 ---------- */
.foot{ border-top:1px solid var(--line); padding:72px 0 44px; background:var(--ink-1); margin-top:40px; }
.foot-grid{ display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:var(--gut); }
.foot h5{ font-family:var(--font-mono); font-size:10px; letter-spacing:.24em; color:var(--fg-3); margin-bottom:18px; font-weight:400; }
.foot ul{ list-style:none; }
.foot li{ font-size:13px; color:var(--fg-2); padding:5px 0; font-weight:300; }
.foot li a:hover{ color:var(--gold); }
.foot-btm{ border-top:1px solid var(--line); margin-top:52px; padding-top:24px; display:flex;
  justify-content:space-between; gap:24px; flex-wrap:wrap; font-family:var(--font-mono);
  font-size:10.5px; color:var(--fg-4); letter-spacing:.1em; }

/* ---------- 响应式 ---------- */
@media (max-width:1080px){
  .hero-bg{ opacity:.30; width:70%; }
  .kblk .k-ttl,.kblk .k-body{ grid-column:span 12; }
  .case .c-vis,.case .c-txt{ grid-column:span 12; }
  .sop{ grid-template-columns:repeat(3,1fr); }
  .sop-step{ border-bottom:1px solid var(--line); }
  .foot-grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:860px){
  .nav-menu{ display:none; }
  .nav-menu.open{ display:flex; position:absolute; top:var(--nav-h); left:0; right:0;
    flex-direction:column; align-items:stretch; background:rgba(6,6,10,.97);
    border-bottom:1px solid var(--line); padding:12px var(--gut) 22px; backdrop-filter:blur(20px); }
  .nav-menu.open a{ padding:13px 0; border-bottom:1px solid var(--line); }
  .nav-cta{ display:none; }
  .nav-burger{ display:block; }
  .lines,.mtx{ grid-template-columns:1fr; }
  .line + .line{ padding-left:0; border-left:0; border-top:1px solid var(--line); }
  .mtx-col{ border-right:0; border-bottom:1px solid var(--line); padding-right:0; }
  .cat-row,.cat-head{ grid-template-columns:44px 1fr 20px; }
  .cat-row .c-hide,.cat-head .c-hide{ display:none; }
  .sop{ grid-template-columns:1fr 1fr; }
  .hero-meta > div{ border-right:0; padding-right:40px; margin-right:0; }
  .spec{ grid-template-columns:1fr 1fr; }
  :root{ --gut:22px; }
  .sec{ padding:76px 0; }
  .wl{ padding:26px; }
}
