/* CEX工具箱 · kit.css
   板岩底 + 青柠信号色;四个模块各一条色带。断点:1080 / 680 */

:root {
  --k-slate: #1e2328;
  --k-deep: #171b1f;
  --k-panel: #252b31;
  --k-raise: #2d343b;
  --k-edge: #39424b;
  --k-edge-lo: #2f363d;
  --k-ink: #eef1f3;
  --k-text: #d5dce1;
  --k-mute: #a3aeb7;
  --k-lime: #c6f432;
  --k-lime-dim: rgba(198, 244, 50, .14);
  --k-aqua: #57d6e4;
  --k-amber: #f4b545;
  --k-violet: #ab9cff;
  --k-coral: #ff8a73;
  --k-r-lg: 18px;
  --k-r-md: 12px;
  --k-r-sm: 7px;
  --k-han: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;
  --k-head: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --k-num: "Space Grotesk", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", ui-sans-serif, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: 76px;
}
@media (min-width: 1080px) { html { scroll-padding-top: 28px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
  margin: 0;
  background-color: var(--k-slate);
  background-image: radial-gradient(circle at 1px 1px, rgba(255, 255, 255, .045) 1.1px, transparent 1.6px);
  background-size: 22px 22px;
  color: var(--k-text);
  font: 400 17px/1.82 var(--k-han);
  overflow-x: hidden;
}

img { max-width: 100%; height: auto; }
a { color: var(--k-lime); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible { outline: 2px solid var(--k-lime); outline-offset: 3px; border-radius: 4px; }
::selection { background: var(--k-lime); color: var(--k-slate); }

.ck-skip {
  position: absolute; left: 12px; top: -60px; z-index: 99;
  background: var(--k-lime); color: var(--k-slate); padding: 8px 14px; border-radius: var(--k-r-sm);
  font-weight: 700; text-decoration: none;
}
.ck-skip:focus { top: 12px; }

/* ── 页头 ─────────────────────────────── */
.ck-top {
  background: rgba(23, 27, 31, .92);
  border-bottom: 1px solid var(--k-edge-lo);
}
.ck-top__row {
  max-width: 1180px; margin: 0 auto; padding: 0 40px;
  height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 20px;
}
.ck-mark { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--k-ink); }
.ck-mark__glyph { flex: none; display: block; }
.ck-mark__name { font: 900 19px/1 var(--k-head); letter-spacing: .01em; }
.ck-mark__host {
  font: 500 12px/1 var(--k-num); color: var(--k-mute); letter-spacing: .06em;
  padding: 4px 7px; border: 1px solid var(--k-edge); border-radius: 5px;
}
.ck-mark--small .ck-mark__name { font-size: 16px; }
.ck-links { display: flex; gap: 4px; }
.ck-links a {
  color: var(--k-mute); text-decoration: none; font-size: 15px; font-weight: 500;
  padding: 7px 13px; border-radius: 8px; border: 1px solid transparent;
}
.ck-links a:hover { color: var(--k-ink); border-color: var(--k-edge); }
.ck-links a[aria-current="page"] { color: var(--k-slate); background: var(--k-lime); }

/* ── 首页工作台:桌面网格 ─────────────── */
.ck-bench { max-width: 1180px; margin: 0 auto; padding: 44px 40px 110px; }
.ck-art { display: contents; }
.ck-art h1, .ck-art h2, .ck-art h3, .ck-sheet h1 { word-break: keep-all; overflow-wrap: anywhere; }

@media (min-width: 1080px) {
  .ck-bench {
    display: grid;
    grid-template-columns: [side] 236px [gutter] 60px [body] minmax(0, 316px) [split] minmax(0, 1fr) [end];
    align-items: start;
  }
  .ck-art > [data-part="hero"] { grid-column: side / split; grid-row: 1; padding-right: 48px; align-self: center; }
  .ck-cover { grid-column: split / end; grid-row: 1; }
  .ck-rack { grid-column: side / end; grid-row: 2; }
  .ck-cab { grid-column: side / gutter; grid-row: 3 / span 40; position: sticky; top: 24px; }
  .ck-art > :not([data-part="hero"]) { grid-column: body / end; }
}

/* ── 首屏 ─────────────────────────────── */
[data-part="hero"] { margin: 0; }
[data-part="kicker"] {
  display: inline-flex; align-items: center; gap: 9px; margin: 0 0 18px;
  font: 700 13px/1 var(--k-num); letter-spacing: .08em; color: var(--k-lime);
  padding: 8px 12px 8px 10px; border: 1px solid rgba(198, 244, 50, .35); border-radius: 6px;
  background: rgba(198, 244, 50, .06);
}
[data-part="kicker"]::before { content: ""; width: 8px; height: 8px; background: var(--k-lime); border-radius: 2px; }
[data-part="hero"] h1 {
  margin: 0 0 20px; color: var(--k-ink);
  font: 900 42px/1.26 var(--k-head); letter-spacing: -.015em;
  text-wrap: balance;
}
[data-part="dek"] { margin: 0 0 22px; color: var(--k-mute); font-size: 17px; line-height: 1.85; max-width: 36em; }
[data-part="meta"] {
  margin: 0; display: inline-flex; align-items: center; gap: 10px;
  font: 500 13.5px/1.5 var(--k-num); color: var(--k-text);
  padding: 9px 14px; background: var(--k-deep); border: 1px solid var(--k-edge); border-radius: 9px;
  font-variant-numeric: tabular-nums;
}
[data-part="meta"]::before {
  content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%;
  background: var(--k-lime); box-shadow: 0 0 0 3px rgba(198, 244, 50, .18), 0 0 10px rgba(198, 244, 50, .6);
}

.ck-cover {
  position: relative; margin: 0; border-radius: var(--k-r-lg); overflow: hidden;
  border: 1px solid var(--k-edge); background: #111417;
  box-shadow: 0 30px 60px -28px rgba(0, 0, 0, .7);
}
.ck-cover img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.ck-cover::before, .ck-cover::after {
  content: ""; position: absolute; width: 22px; height: 22px; pointer-events: none;
  border: 2px solid var(--k-lime);
}
.ck-cover::before { top: 12px; left: 12px; border-right: 0; border-bottom: 0; border-radius: 6px 0 0 0; }
.ck-cover::after { bottom: 12px; right: 12px; border-left: 0; border-top: 0; border-radius: 0 0 6px 0; }

/* ── 模块选择器(四格工具卡) ─────────── */
.ck-rack { margin: 44px 0 8px; }
.ck-rack__cap {
  margin: 0 0 12px; font-size: 13.5px; color: var(--k-mute); letter-spacing: .04em;
  display: flex; align-items: center; gap: 12px;
}
.ck-rack__cap::after { content: ""; flex: 1; height: 1px; background: var(--k-edge-lo); }
.ck-rack__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.ck-tool {
  --tone: var(--k-lime);
  position: relative; display: flex; flex-direction: column; height: 100%;
  padding: 22px 20px 18px; text-decoration: none; color: var(--k-text);
  background: linear-gradient(180deg, var(--k-raise), var(--k-panel));
  border: 1px solid var(--k-edge); border-radius: 14px; overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 3px 0 #15181b;
  transition: transform .18s ease, border-color .18s ease;
}
.ck-tool::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px; background: var(--tone); }
.ck-tool::after {
  content: "↘"; position: absolute; right: 16px; top: 18px;
  font: 700 15px/1 var(--k-num); color: var(--k-mute);
}
.ck-tool:hover, .ck-tool.is-on { border-color: var(--tone); transform: translateY(-2px); }
.ck-tool:hover::after, .ck-tool.is-on::after { color: var(--tone); }
.ck-tool[data-tone="id"] { --tone: var(--k-aqua); }
.ck-tool[data-tone="rg"] { --tone: var(--k-amber); }
.ck-tool[data-tone="kv"] { --tone: var(--k-violet); }
.ck-tool__no { font: 700 12.5px/1 var(--k-num); letter-spacing: .12em; color: var(--tone); }
.ck-tool__name { margin: 10px 0 6px; font: 900 27px/1.15 var(--k-head); color: var(--k-ink); }
.ck-tool__spec { font-size: 13.5px; line-height: 1.6; color: var(--k-mute); flex: 1; }
.ck-tool__meter { display: block; margin-top: 16px; height: 3px; border-radius: 3px; background: #3a434c; overflow: hidden; }
.ck-tool__meter > span {
  display: block; height: 100%; background: var(--tone);
  transform-origin: 0 50%; transform: scaleX(var(--ck-p, 0)); transition: transform .25s linear;
}

/* ── 目录:工具抽屉 ─────────────────── */
.ck-cab {
  margin: 0; padding: 14px; border-radius: 16px;
  background: linear-gradient(180deg, #22282e, #1b2025);
  border: 1px solid var(--k-edge);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 18px 40px -26px rgba(0, 0, 0, .8);
}
.ck-cab__head {
  list-style: none; display: flex; align-items: center; gap: 10px;
  padding: 2px 4px 12px; margin-bottom: 12px; border-bottom: 1px dashed var(--k-edge);
  cursor: default;
}
.ck-cab__head::-webkit-details-marker { display: none; }
.ck-cab__title { font: 700 13px/1 var(--k-head); letter-spacing: .12em; color: var(--k-ink); }
.ck-cab__now { display: none; }
.ck-cab__pct { margin-left: auto; font: 700 12.5px/1 var(--k-num); color: var(--k-lime); font-variant-numeric: tabular-nums; }
.ck-cab__list { list-style: none; margin: 0; padding: 0; counter-reset: ckdrawer; display: grid; gap: 7px; }
.ck-drawer { counter-increment: ckdrawer; }
.ck-drawer a {
  --tone: #7f8a94;
  display: grid; grid-template-columns: 26px minmax(0, 1fr) 14px; align-items: center; gap: 10px;
  padding: 10px 11px 10px 10px; text-decoration: none; color: var(--k-mute);
  font-size: 13.5px; line-height: 1.45;
  background: linear-gradient(180deg, #2b3238, #262c32);
  border: 1px solid #363e46; border-radius: 9px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 2px 0 #14171a;
  transition: transform .2s ease, border-color .2s ease, color .2s ease;
}
.ck-drawer a::before {
  content: counter(ckdrawer, decimal-leading-zero);
  font: 700 12px/1 var(--k-num); color: var(--tone); letter-spacing: .04em;
}
.ck-drawer a::after { content: ""; height: 4px; border-radius: 3px; background: #4a545e; }
.ck-drawer__t { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ck-drawer a:hover { color: var(--k-ink); border-color: #4a535c; }
.ck-drawer a.is-on {
  color: var(--k-ink); border-color: var(--tone);
  background: linear-gradient(180deg, #323a41, #2a3137);
  transform: translateX(10px);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .07), -10px 0 0 -6px var(--tone), 0 6px 14px -6px rgba(0, 0, 0, .6);
}
.ck-drawer a.is-on::after { background: var(--tone); }
.ck-drawer a[data-slot="download"] { --tone: var(--k-lime); }
.ck-drawer a[data-slot="fake-app"] { --tone: var(--k-aqua); }
.ck-drawer a[data-slot="register"] { --tone: var(--k-amber); }
.ck-drawer a[data-slot="kyc"] { --tone: var(--k-violet); }
.ck-drawer a[data-slot="overview"], .ck-drawer a[data-slot="eligibility"], .ck-drawer a[data-slot="faq"] { --tone: #c9d2d9; }

@media (min-width: 1080px) {
  .ck-cab { max-height: calc(100vh - 48px); overflow: auto; scrollbar-width: thin; }
  .ck-cab__head { pointer-events: none; }
}

/* ── 正文通用 ─────────────────────────── */
.ck-art > section, .ck-art > aside { margin-top: 56px; min-width: 0; }
.ck-art h2 {
  margin: 0 0 22px; color: var(--k-ink);
  font: 900 30px/1.32 var(--k-head); letter-spacing: -.008em; text-wrap: balance;
}
.ck-art h3 {
  margin: 44px 0 14px; color: var(--k-ink);
  font: 700 21px/1.45 var(--k-head);
  display: flex; align-items: baseline; gap: 12px;
}
.ck-art h3::before {
  content: ""; flex: none; width: 10px; height: 10px; border-radius: 2px;
  background: var(--tone, var(--k-lime)); transform: translateY(-2px);
}
.ck-art p, .ck-art ul, .ck-art dl { max-width: 40em; }
.ck-art p { margin: 0 0 18px; }
.ck-art strong { color: var(--k-ink); font-weight: 700; }
.ck-art ul { padding-left: 0; list-style: none; margin: 0 0 20px; }
.ck-art ul > li { position: relative; padding-left: 26px; margin-bottom: 12px; }
.ck-art ul > li::before {
  content: ""; position: absolute; left: 4px; top: .72em; width: 9px; height: 9px;
  border: 2px solid var(--tone, var(--k-lime)); border-radius: 2px;
}

/* 非模块章节:台面上的说明区 */
.ck-art > section:not([data-module]):not(#faq) {
  padding-top: 40px; border-top: 1px dashed var(--k-edge);
}
.ck-art > section#overview:not([data-module]):not(#faq) { border-top: 0; padding-top: 12px; margin-top: 64px; }

/* ── 模块卡(签名组件) ─────────────── */
.ck-bench { counter-reset: ckmod ckfig; }
.ck-art > section[data-module] {
  --tone: var(--k-lime);
  counter-increment: ckmod;
  position: relative;
  padding: 78px 44px 40px;
  background:
    radial-gradient(circle at calc(100% - 30px) 30px, #14181b 4px, transparent 4.5px),
    radial-gradient(circle at calc(100% - 50px) 30px, #14181b 4px, transparent 4.5px),
    linear-gradient(180deg, #282e35, var(--k-panel) 220px);
  border: 1px solid var(--k-edge);
  border-radius: var(--k-r-lg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 26px 50px -34px rgba(0, 0, 0, .85);
}
.ck-art > section[data-module="辨识"] { --tone: var(--k-aqua); }
.ck-art > section[data-module="注册"] { --tone: var(--k-amber); }
.ck-art > section[data-module="认证"] { --tone: var(--k-violet); }
.ck-art > section[data-module]::before {
  content: ""; position: absolute; left: -1px; right: -1px; top: -1px; height: 9px;
  border-radius: var(--k-r-lg) var(--k-r-lg) 0 0;
  background:
    repeating-linear-gradient(-45deg, var(--tone) 0 7px, transparent 7px 14px) right / 22% 100% no-repeat,
    linear-gradient(var(--tone), var(--tone)) left / 76% 100% no-repeat;
}
.ck-art > section[data-module]::after {
  content: "T-0" counter(ckmod) "   模块 · " attr(data-module);
  white-space: pre;
  position: absolute; left: 44px; top: 32px;
  font: 700 13px/1 var(--k-num); letter-spacing: .1em; color: var(--tone);
  padding: 7px 11px; border-radius: 6px;
  background: rgba(0, 0, 0, .22); border: 1px solid rgba(255, 255, 255, .07);
}
.ck-art > section[data-module] a:not([data-cta]) { color: var(--tone); }

/* ── 步骤:键帽编号 ─────────────────── */
[data-part="steps"] { list-style: none; margin: 8px 0 26px; padding: 0; counter-reset: ckstep; }
[data-part="steps"] > li {
  counter-increment: ckstep;
  position: relative; padding: 16px 0 16px 66px; min-height: 64px;
  border-bottom: 1px dashed var(--k-edge);
}
[data-part="steps"] > li:first-child { border-top: 1px dashed var(--k-edge); }
[data-part="steps"] > li::before {
  content: counter(ckstep, decimal-leading-zero);
  position: absolute; left: 0; top: 14px; width: 46px; height: 44px;
  display: grid; place-items: center;
  font: 700 17px/1 var(--k-num); color: var(--tone, var(--k-lime)); font-variant-numeric: tabular-nums;
  background: linear-gradient(180deg, #3a434b, #2c3339);
  border: 1px solid #47515b; border-radius: 10px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 3px 0 #121518;
}
[data-part="steps"] > li > strong:first-child { display: block; margin-bottom: 2px; }

/* ── 截图 ─────────────────────────────── */
[data-part="shot"] { counter-increment: ckfig; margin: 30px 0 34px; }
[data-part="shot"] img {
  display: block; width: 100%; height: auto;
  background: #fff; border-radius: 10px;
  border: 1px solid #4a535c;
  box-shadow: 0 0 0 6px #15191c, 0 0 0 7px var(--k-edge), 0 24px 44px -26px rgba(0, 0, 0, .9);
}
[data-part="shot"] figcaption {
  margin-top: 18px; font-size: 14.5px; line-height: 1.7; color: var(--k-mute);
  display: flex; gap: 12px; align-items: baseline;
}
[data-part="shot"] figcaption::before {
  content: "图 " counter(ckfig, decimal-leading-zero);
  flex: none; font: 700 12px/1 var(--k-num); letter-spacing: .08em; color: var(--tone, var(--k-lime));
  padding: 5px 7px; border: 1px solid currentColor; border-radius: 5px;
}

/* 手机截图:圆角设备框,卡内左机右注 */
[data-part="shot"][data-device="phone"] {
  position: relative;
  display: grid; grid-template-columns: 236px minmax(0, 1fr); gap: 34px; align-items: end;
  padding: 26px; border-radius: 16px;
  background: repeating-linear-gradient(90deg, rgba(255, 255, 255, .025) 0 1px, transparent 1px 22px), #1b2024;
  border: 1px solid var(--k-edge-lo);
}
[data-part="shot"][data-device="phone"] img {
  border: 9px solid #0c0e10; border-radius: 34px;
  box-shadow: 0 0 0 1px #4b555f, 0 0 0 3px #22282d, 0 28px 50px -22px rgba(0, 0, 0, .95);
}
[data-part="shot"][data-device="phone"]::before {
  content: ""; position: absolute; left: calc(26px + 118px - 22px); top: 29px;
  width: 44px; height: 4px; border-radius: 3px; background: #2e353b;
}
[data-part="shot"][data-device="phone"]::after {
  content: ""; position: absolute; left: calc(26px + 236px + 2px); top: 120px;
  width: 3px; height: 46px; border-radius: 0 3px 3px 0; background: #4b555f;
}
[data-part="shot"][data-device="phone"] figcaption {
  margin: 0 0 6px; flex-direction: column; gap: 12px;
  padding: 16px 18px; border-left: 3px solid var(--tone, var(--k-lime));
  background: rgba(0, 0, 0, .18); border-radius: 0 10px 10px 0; color: var(--k-text);
}

/* ── 表格 ─────────────────────────────── */
.ck-art table {
  width: 100%; margin: 10px 0 30px; border-collapse: separate; border-spacing: 0;
  font-size: 15px; line-height: 1.65;
  border: 1px solid var(--k-edge); border-radius: 12px; overflow: hidden;
  background: rgba(0, 0, 0, .14);
}
.ck-art th {
  text-align: left; vertical-align: bottom; padding: 12px 14px;
  font: 700 13.5px/1.45 var(--k-head); color: var(--tone, var(--k-lime)); letter-spacing: .03em;
  background: #2b3238; border-bottom: 1px solid var(--k-edge);
}
.ck-art th { min-width: 6.5em; }
.ck-art td { padding: 13px 14px; vertical-align: top; border-bottom: 1px solid var(--k-edge-lo); }
.ck-art tr:last-child td { border-bottom: 0; }
.ck-art tbody tr:nth-child(even) td { background: rgba(255, 255, 255, .022); }
.ck-art td:first-child { color: var(--k-ink); font-weight: 700; white-space: nowrap; }

/* ── 定义列表 ─────────────────────────── */
.ck-art dl { margin: 6px 0 24px; display: grid; gap: 4px; }
.ck-art dt {
  font: 700 14px/1.5 var(--k-head); color: var(--tone, var(--k-aqua));
  margin-top: 14px; display: flex; gap: 10px; align-items: center;
}
.ck-art dt::before { content: ""; width: 14px; height: 2px; background: currentColor; flex: none; }
.ck-art dd { margin: 0; padding: 10px 0 10px 24px; border-left: 1px solid var(--k-edge); margin-left: 6px; }

/* ── 提示条 ───────────────────────────── */
[data-part="note"], [data-part="warn"] {
  position: relative; max-width: 40em; margin: 26px 0 30px;
  padding: 20px 22px 20px 24px; border-radius: 12px;
}
[data-part="note"] p:last-child, [data-part="warn"] p:last-child { margin-bottom: 0; }
[data-part="note"] { background: rgba(198, 244, 50, .055); border: 1px solid rgba(198, 244, 50, .28); }
[data-part="note"]::before {
  content: "说明"; display: inline-block; margin-bottom: 10px;
  font: 700 12px/1 var(--k-head); letter-spacing: .14em; color: var(--k-slate);
  background: var(--k-lime); padding: 5px 8px; border-radius: 4px;
}
[data-part="warn"] {
  padding-left: 40px;
  background: linear-gradient(90deg, rgba(255, 138, 115, .1), rgba(255, 138, 115, .04));
  border: 1px solid rgba(255, 138, 115, .38);
}
[data-part="warn"]::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 14px;
  border-radius: 12px 0 0 12px;
  background: repeating-linear-gradient(-45deg, var(--k-amber) 0 6px, #2a2420 6px 12px);
}
[data-part="warn"] strong { color: #ffd0c4; }

/* ── 邀请码卡 ─────────────────────────── */
[data-part="cta"] {
  position: relative; padding: 34px 40px 30px; border-radius: 20px;
  background:
    radial-gradient(circle at 92% 0%, rgba(255, 255, 255, .35), transparent 42%),
    var(--k-lime);
  color: #1d2408;
  box-shadow: 0 30px 60px -30px rgba(198, 244, 50, .45), inset 0 -4px 0 rgba(0, 0, 0, .12);
  display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 32px; align-items: center;
}
[data-part="cta"] > * { grid-column: 1 / -1; }
[data-part="cta"] p { max-width: none; margin: 0 0 12px; font-size: 15.5px; line-height: 1.75; color: #2a3310; }
[data-part="cta"] > p:first-child {
  grid-column: 1; margin: 0; font: 700 14px/1.4 var(--k-head); letter-spacing: .1em; color: #3c4a12;
  display: flex; flex-wrap: wrap; align-items: center; column-gap: 14px; row-gap: 8px;
}
[data-part="cta"] > p:first-child strong {
  flex-basis: 100%;
  font: 700 58px/1 var(--k-num); letter-spacing: .1em; color: var(--k-slate);
  font-variant-numeric: tabular-nums;
}
[data-part="cta"] > p:nth-child(2) { grid-column: 1; margin: 12px 0 18px; font-size: 15px; }
[data-part="cta"] > a[data-cta] {
  grid-column: 2; grid-row: 1 / span 2; align-self: center;
  display: inline-flex; align-items: center; gap: 12px;
  padding: 17px 26px; border-radius: 12px;
  background: var(--k-slate); color: var(--k-lime);
  font: 700 17px/1.2 var(--k-head); text-decoration: none; white-space: nowrap;
  box-shadow: 0 4px 0 #0d1012, 0 16px 26px -14px rgba(0, 0, 0, .6);
  transition: transform .15s ease, box-shadow .15s ease;
}
[data-part="cta"] > a[data-cta]::after { content: "↗"; font: 700 18px/1 var(--k-num); }
[data-part="cta"] > a[data-cta]:hover { transform: translateY(-2px); box-shadow: 0 6px 0 #0d1012, 0 20px 30px -14px rgba(0, 0, 0, .6); }
[data-part="cta"] > a[data-cta]:active { transform: translateY(2px); box-shadow: 0 2px 0 #0d1012; }
[data-part="cta"] > p:nth-of-type(3) {
  margin-top: 6px; padding-top: 16px; border-top: 1px solid rgba(30, 35, 40, .2);
  color: #1e2328; font-size: 15px;
}
[data-part="cta"] > p:last-child { margin-bottom: 0; font-size: 15px; color: #2a3310; }
[data-part="cta"] a:not([data-cta]) { color: #1e2328; text-decoration-color: rgba(30, 35, 40, .5); font-weight: 700; }
.ck-copy {
  font: 700 13.5px/1 var(--k-head); letter-spacing: .06em;
  padding: 9px 14px; border-radius: 8px; cursor: pointer;
  color: var(--k-slate); background: rgba(255, 255, 255, .5);
  border: 1.5px solid var(--k-slate);
  transition: background .15s ease;
}
.ck-copy:hover { background: rgba(255, 255, 255, .8); }
.ck-copy.is-done { background: var(--k-slate); color: var(--k-lime); }

/* ── 常见问题 ─────────────────────────── */
#faq { counter-reset: ckq; }
#faq h2 { display: flex; align-items: center; gap: 14px; }
#faq h2::after { content: ""; flex: 1; height: 1px; background: var(--k-edge); }
#faq details {
  counter-increment: ckq;
  border: 1px solid var(--k-edge-lo); border-radius: 12px; margin-bottom: 10px;
  background: rgba(37, 43, 49, .7);
  transition: border-color .2s ease, background .2s ease;
}
#faq details[open] { border-color: rgba(198, 244, 50, .45); background: var(--k-panel); }
#faq summary {
  list-style: none; cursor: pointer; position: relative;
  display: grid; grid-template-columns: 40px minmax(0, 1fr) 28px; gap: 12px; align-items: center;
  padding: 17px 18px; font: 700 16.5px/1.55 var(--k-head); color: var(--k-ink);
}
#faq summary::-webkit-details-marker { display: none; }
#faq summary::before {
  content: "Q" counter(ckq, decimal-leading-zero);
  font: 700 12.5px/1 var(--k-num); color: var(--k-lime); letter-spacing: .06em;
}
#faq summary::after {
  content: "+"; width: 28px; height: 28px; display: grid; place-items: center;
  font: 500 20px/1 var(--k-num); color: var(--k-ink);
  border: 1px solid var(--k-edge); border-radius: 7px; transition: transform .2s ease, background .2s ease;
}
#faq details[open] summary::after { transform: rotate(45deg); background: var(--k-lime); color: var(--k-slate); border-color: var(--k-lime); }
#faq details p { margin: 0; padding: 0 22px 20px 70px; color: var(--k-text); max-width: none; }

/* ── 页脚 ─────────────────────────────── */
.ck-foot { background: var(--k-deep); border-top: 1px solid var(--k-edge-lo); }
.ck-foot__row {
  max-width: 1180px; margin: 0 auto; padding: 48px 40px 40px;
  display: grid; grid-template-columns: minmax(0, 1.4fr) auto minmax(0, 1fr); gap: 48px;
  font-size: 14.5px; line-height: 1.75; color: var(--k-mute);
}
.ck-foot p { margin: 0 0 8px; }
.ck-foot__id p { margin-top: 14px; max-width: 30em; }
.ck-foot__nav { display: grid; gap: 6px; align-content: start; }
.ck-foot__nav a, .ck-foot__meta a { color: var(--k-text); text-decoration: none; }
.ck-foot__nav a:hover, .ck-foot__meta a:hover { color: var(--k-lime); }
.ck-foot__risk { color: var(--k-text); }
.ck-foot__copy { font-family: var(--k-num); font-size: 13px; letter-spacing: .04em; }

/* ── 站务页 ───────────────────────────── */
.ck-desk { max-width: 880px; margin: 0 auto; padding: 44px 40px 100px; }
.ck-desk__tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 26px; }
.ck-desk__tabs a {
  display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 13px;
  text-decoration: none; color: var(--k-mute); font: 700 15px/1.3 var(--k-head);
  background: linear-gradient(180deg, var(--k-raise), var(--k-panel));
  border: 1px solid var(--k-edge); border-radius: 11px; position: relative; overflow: hidden;
}
.ck-desk__tabs a span { font: 700 11.5px/1 var(--k-num); letter-spacing: .12em; color: #7f8a94; }
.ck-desk__tabs a:hover { color: var(--k-ink); }
.ck-desk__tabs a[aria-current="page"] { color: var(--k-ink); border-color: var(--k-lime); }
.ck-desk__tabs a[aria-current="page"]::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--k-lime); }
.ck-desk__tabs a[aria-current="page"] span { color: var(--k-lime); }
[data-desk="about"] .ck-links a[data-for="about"],
[data-desk="contact"] .ck-links a[data-for="contact"] { color: var(--k-slate); background: var(--k-lime); }
[data-desk="about"] .ck-desk__tabs a[data-for="about"],
[data-desk="contact"] .ck-desk__tabs a[data-for="contact"],
[data-desk="privacy"] .ck-desk__tabs a[data-for="privacy"],
[data-desk="disclosure"] .ck-desk__tabs a[data-for="disclosure"] { color: var(--k-ink); border-color: var(--k-lime); }
.ck-sheet {
  position: relative; padding: 64px 52px 44px;
  background: linear-gradient(180deg, #282e35, var(--k-panel) 260px);
  border: 1px solid var(--k-edge); border-radius: var(--k-r-lg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 26px 50px -34px rgba(0, 0, 0, .85);
}
.ck-sheet::before {
  content: ""; position: absolute; left: -1px; right: -1px; top: -1px; height: 8px;
  border-radius: var(--k-r-lg) var(--k-r-lg) 0 0;
  background:
    repeating-linear-gradient(-45deg, var(--k-lime) 0 7px, transparent 7px 14px) right / 22% 100% no-repeat,
    linear-gradient(var(--k-lime), var(--k-lime)) left / 76% 100% no-repeat;
}
.ck-sheet h1 { margin: 0 0 24px; color: var(--k-ink); font: 900 36px/1.3 var(--k-head); letter-spacing: -.01em; }
.ck-sheet h2 { margin: 40px 0 12px; color: var(--k-ink); font: 700 21px/1.45 var(--k-head); display: flex; align-items: baseline; gap: 12px; }
.ck-sheet h2::before { content: ""; flex: none; width: 10px; height: 10px; border-radius: 2px; background: var(--k-lime); transform: translateY(-2px); }
.ck-sheet p, .ck-sheet ul { max-width: 40em; margin: 0 0 16px; }
.ck-sheet ul { list-style: none; padding: 0; }
.ck-sheet li { position: relative; padding-left: 24px; margin-bottom: 10px; }
.ck-sheet li::before { content: ""; position: absolute; left: 3px; top: .72em; width: 9px; height: 9px; border: 2px solid var(--k-lime); border-radius: 2px; }
.ck-desk__back { margin: 26px 0 0; font-size: 15px; }
.ck-desk__back a::before { content: "← "; font-family: var(--k-num); }

/* 404 */
.ck-lost { text-align: left; }
.ck-lost__code { font: 700 96px/1 var(--k-num); color: var(--k-lime); letter-spacing: .04em; margin: 0 0 12px; }

/* ── 中屏 ─────────────────────────────── */
@media (max-width: 1079.98px) {
  .ck-bench { display: flex; flex-direction: column; padding: 30px 32px 90px; }
  .ck-art > [data-part="hero"] { order: 1; }
  .ck-cover { order: 2; margin-top: 28px; }
  .ck-rack { order: 3; }
  .ck-cab { order: 4; }
  .ck-art > :not([data-part="hero"]) { order: 5; }
  .ck-cab { margin-top: 28px; }

  /* 有脚本时:目录收成吸顶抽屉 */
  .ck-js .ck-cab {
    position: sticky; top: 0; z-index: 40;
    margin-left: -32px; margin-right: -32px; padding: 0;
    border-radius: 0; border-width: 0 0 1px; background: rgba(23, 27, 31, .96);
    -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  }
  .ck-js .ck-cab__head {
    cursor: pointer; margin: 0; padding: 0 32px; height: 54px; border-bottom: 0;
  }
  .ck-js .ck-cab__now {
    display: block; flex: 1; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
    font-size: 14px; color: var(--k-text);
  }
  .ck-js .ck-cab__pct { margin-left: 0; }
  .ck-js .ck-cab__head::after {
    content: ""; flex: none; width: 9px; height: 9px; margin-left: 4px;
    border-right: 2px solid var(--k-lime); border-bottom: 2px solid var(--k-lime);
    transform: translateY(-3px) rotate(45deg); transition: transform .2s ease;
  }
  .ck-js .ck-cab[open] .ck-cab__head::after { transform: translateY(2px) rotate(-135deg); }
  .ck-js .ck-cab__list {
    position: absolute; left: 0; right: 0; top: 100%;
    max-height: 70vh; overflow: auto; padding: 14px 32px 18px;
    background: #1a1e22; border-bottom: 1px solid var(--k-edge);
    box-shadow: 0 24px 40px -10px rgba(0, 0, 0, .7);
  }
  .ck-drawer a.is-on { transform: translateX(6px); }
  .ck-art > section#overview:not([data-module]):not(#faq) { margin-top: 44px; }
}

/* ── 手机 ─────────────────────────────── */
@media (max-width: 680px) {
  body { font-size: 16.5px; line-height: 1.8; }
  .ck-top__row { padding: 0 18px; height: 58px; }
  .ck-mark__host { display: none; }
  .ck-mark__name { font-size: 17px; }
  .ck-links a { padding: 6px 9px; font-size: 14.5px; }

  .ck-bench { padding: 24px 18px 72px; }
  [data-part="kicker"] { margin-bottom: 14px; }
  [data-part="hero"] h1 { font-size: 29px; line-height: 1.3; }
  [data-part="dek"] { font-size: 16px; }
  [data-part="meta"] { font-size: 12.5px; align-items: flex-start; }
  [data-part="meta"]::before { margin-top: 6px; }
  .ck-cover { margin-top: 22px; border-radius: 14px; }

  .ck-rack { margin-top: 28px; }
  .ck-rack__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .ck-tool { padding: 16px 14px 14px; }
  .ck-tool__name { font-size: 22px; margin: 8px 0 4px; }
  .ck-tool__spec { font-size: 12.5px; }
  .ck-tool::after { right: 12px; top: 14px; }

  .ck-js .ck-cab { margin-left: -18px; margin-right: -18px; }
  .ck-js .ck-cab__head { padding: 0 18px; }
  .ck-js .ck-cab__list { padding: 12px 18px 16px; }

  .ck-art > section, .ck-art > aside { margin-top: 40px; }
  .ck-art h2 { font-size: 23.5px; }
  .ck-art h3 { font-size: 18.5px; margin-top: 34px; }

  .ck-art > section[data-module] {
    margin-left: -6px; margin-right: -6px;
    padding: 66px 18px 26px; border-radius: 14px;
  }
  .ck-art > section[data-module]::before { border-radius: 14px 14px 0 0; }
  .ck-art > section[data-module]::after { left: 18px; top: 24px; font-size: 12px; }

  [data-part="steps"] > li { padding-left: 54px; }
  [data-part="steps"] > li::before { width: 38px; height: 38px; font-size: 15px; top: 15px; }

  [data-part="shot"] img { box-shadow: 0 0 0 4px #15191c, 0 0 0 5px var(--k-edge); }
  [data-part="shot"] figcaption { font-size: 13.5px; flex-direction: column; gap: 8px; }

  [data-part="shot"][data-device="phone"] {
    grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 22px 14px 14px; justify-items: center;
  }
  [data-part="shot"][data-device="phone"] img { width: min(240px, 72vw); }
  [data-part="shot"][data-device="phone"]::before { left: calc(50% - 22px); top: 25px; }
  [data-part="shot"][data-device="phone"]::after { display: none; }
  [data-part="shot"][data-device="phone"] figcaption { width: 100%; }

  .ck-art table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; font-size: 14px; }
  .ck-art th, .ck-art td { min-width: 120px; padding: 11px 12px; }
  .ck-art td:first-child { white-space: normal; min-width: 96px; }

  [data-part="note"], [data-part="warn"] { padding: 18px 16px 18px 18px; }
  [data-part="warn"] { padding-left: 30px; }
  [data-part="warn"]::before { width: 10px; }

  [data-part="cta"] { display: block; padding: 26px 20px 22px; border-radius: 16px; margin-left: -6px; margin-right: -6px; }
  [data-part="cta"] > p:first-child strong { font-size: 44px; }
  [data-part="cta"] > a[data-cta] { display: flex; justify-content: center; margin: 4px 0 18px; white-space: normal; text-align: center; }

  #faq summary { grid-template-columns: 34px minmax(0, 1fr) 26px; gap: 8px; padding: 15px 14px; font-size: 15.5px; }
  #faq details p { padding: 0 16px 18px 16px; font-size: 15.5px; }

  .ck-foot__row { grid-template-columns: minmax(0, 1fr); gap: 26px; padding: 36px 18px 30px; }
  .ck-foot__nav { grid-auto-flow: column; justify-content: start; gap: 18px; }

  .ck-desk { padding: 24px 18px 72px; }
  .ck-desk__tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .ck-sheet { padding: 50px 20px 28px; border-radius: 14px; }
  .ck-sheet h1 { font-size: 27px; }
  .ck-sheet h2 { font-size: 19px; }
  .ck-lost__code { font-size: 72px; }
}
