/* 天下为公 · 组件级样式 */
/* ---------- 灵智卡视觉 ---------- */
.card-visual{
  position:relative;aspect-ratio:1.586/1;border-radius:18px;padding:22px;
  background:
    radial-gradient(120% 90% at 100% 0%,rgba(255,255,255,.22),transparent 55%),
    linear-gradient(140deg,#2a2622 0%,#3a332b 42%,#201d1a 100%);
  box-shadow:0 26px 60px -28px rgba(28,26,23,.7),0 2px 0 rgba(255,255,255,.14) inset;
  color:#f4efe4;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;
  border:1px solid rgba(255,255,255,.13);
}
.card-visual::after{
  content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(115deg,transparent 0 14px,rgba(255,255,255,.022) 14px 15px);
  pointer-events:none;
}
.cv-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;position:relative;z-index:1}
.cv-brand{font-size:19px;letter-spacing:4px;font-weight:700}
.cv-brand small{display:block;font-family:var(--sans);font-size:8.5px;letter-spacing:2.4px;color:#c8bda8;font-weight:500;margin-top:2px}
.cv-chip{
  width:44px;height:32px;border-radius:6px;
  background:linear-gradient(135deg,#e2c477,#a8862f 55%,#d8b968);
  position:relative;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18);
}
.cv-chip::before,.cv-chip::after{
  content:"";position:absolute;left:6px;right:6px;height:1px;background:rgba(0,0,0,.28);
}
.cv-chip::before{top:10px}.cv-chip::after{top:20px}
.cv-mid{position:relative;z-index:1}
.cv-no{font-family:var(--mono);font-size:clamp(13px,2.1vw,17px);letter-spacing:3px;color:#efe5cf}
.cv-meta{font-family:var(--sans);font-size:9.5px;letter-spacing:2px;color:#a2988a;margin-top:6px}
.cv-bot{display:flex;justify-content:space-between;align-items:flex-end;position:relative;z-index:1}
.cv-seal{
  width:52px;height:52px;border-radius:9px;background:var(--seal);
  display:grid;place-items:center;color:#fff;font-size:15px;font-weight:700;line-height:1.05;
  text-align:center;letter-spacing:1px;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.3);
}
.cv-type{font-family:var(--sans);font-size:9px;letter-spacing:2.2px;color:#a2988a;text-align:right;line-height:1.9}

/* ---------- 无盘工作站视觉 ---------- */
.station{
  border:1px solid var(--line);border-radius:var(--radius);background:var(--card);
  padding:20px;box-shadow:var(--shadow);
}
.station .mon{
  border-radius:10px;background:linear-gradient(160deg,#23262b,#14161a);
  aspect-ratio:16/9;position:relative;overflow:hidden;margin-bottom:14px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);
}
.station .mon::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 50% 46%,rgba(46,85,128,.5),transparent 62%);
}
.station .mon .slots{
  position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:18%;
}
.station .mon .slots i{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:4px;display:block}
.station .spec{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);letter-spacing:.4px;display:flex;flex-wrap:wrap;gap:6px 14px}
.station .spec b{color:var(--indigo);font-weight:600}

/* ---------- 手机地图（DDPC）---------- */
.phone{
  width:min(300px,100%);margin:0 auto;border-radius:26px;padding:9px;
  background:#1a1a1c;box-shadow:0 30px 60px -30px rgba(0,0,0,.7);
}
.phone .scr{background:#f2f4f7;border-radius:19px;overflow:hidden;aspect-ratio:9/17;position:relative}
.phone .topbar{background:#fff;padding:12px 14px 10px;border-bottom:1px solid #e6e8ec}
.phone .topbar b{font-family:var(--sans);font-size:12px;letter-spacing:1.6px;color:#1a1a1c}
.phone .topbar span{display:block;font-family:var(--sans);font-size:9.5px;color:#8b8f98;margin-top:2px}
.phone .map{
  position:absolute;inset:52px 0 0;
  background:
    linear-gradient(90deg,transparent 49.4%,#e3e7ee 49.4% 50.6%,transparent 50.6%),
    linear-gradient(0deg,transparent 33%,#e3e7ee 33% 34%,transparent 34%),
    linear-gradient(0deg,transparent 68%,#e3e7ee 68% 69%,transparent 69%),
    #eef1f5;
}
.phone .map::before{
  content:"";position:absolute;left:-10%;right:-10%;top:38%;height:26px;
  background:#e0e5ec;transform:rotate(-8deg);
}
.pin{
  position:absolute;transform:translate(-50%,-100%);
  background:var(--seal);color:#fff;font-family:var(--sans);font-size:8.5px;font-weight:600;
  padding:3px 7px;border-radius:999px;white-space:nowrap;letter-spacing:.3px;
  box-shadow:0 4px 10px -4px rgba(179,36,28,.7);
}
.pin.py{background:var(--indigo)}
.pin::after{content:"";position:absolute;bottom:-3px;left:50%;width:6px;height:6px;background:inherit;transform:translateX(-50%) rotate(45deg)}
.ph-sheet{
  position:absolute;left:8px;right:8px;bottom:8px;background:#fff;border-radius:14px;
  padding:11px 12px;box-shadow:0 -6px 24px -12px rgba(0,0,0,.35);font-family:var(--sans);
}
.ph-sheet .row{display:flex;justify-content:space-between;align-items:center;font-size:9.5px;color:#5c616b;padding:4px 0}
.ph-sheet .row b{font-size:10.5px;color:#1a1a1c}
.ph-sheet .go{margin-top:6px;background:var(--seal);color:#fff;text-align:center;border-radius:8px;padding:7px;font-size:10px;font-weight:600;letter-spacing:1px}

/* ---------- 场景卡 ---------- */
.scene{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:0;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.scene .band-top{height:76px;position:relative;background:linear-gradient(135deg,#2a2622,#1d2735);display:grid;place-items:center}
.scene .band-top span{font-family:var(--sans);font-size:11px;letter-spacing:3px;color:rgba(255,255,255,.78)}
.scene .body{padding:20px 22px 22px;flex:1;display:flex;flex-direction:column}
.scene h3{margin-bottom:8px}
.scene p{font-size:14px;color:var(--ink-2);line-height:1.8;flex:1}
.scene .kv{font-family:var(--sans);font-size:11.5px;color:var(--ink-3);margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}
.scene .kv b{color:var(--seal-deep);font-weight:600}

/* ---------- 对比 ---------- */
.vs{display:grid;grid-template-columns:1fr auto 1fr;gap:0;align-items:stretch;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--card)}
.vs .col{padding:26px 24px}
.vs .col h4{font-family:var(--sans);font-size:12px;letter-spacing:2px;color:var(--ink-3);margin-bottom:14px;text-transform:uppercase}
.vs .mid{width:1px;background:var(--line);position:relative}
.vs .mid span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--paper);color:var(--ink-3);font-family:var(--mono);font-size:11px;padding:6px 3px;border-radius:4px}

/* ---------- 时间轴 ---------- */
.tl{position:relative;padding-left:26px;margin-top:26px}
.tl::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:1px;background:var(--line)}
.tl .it{position:relative;padding-bottom:26px}
.tl .it:last-child{padding-bottom:0}
.tl .it::before{content:"";position:absolute;left:-25px;top:8px;width:11px;height:11px;border-radius:50%;background:var(--paper);border:2px solid var(--seal)}
.tl .it h4{font-size:16px;margin-bottom:5px}
.tl .it .yr{font-family:var(--mono);font-size:11px;color:var(--seal);letter-spacing:1.5px;margin-bottom:4px;display:block}
.tl .it p{font-size:14px;color:var(--ink-2);line-height:1.8}

/* ---------- 表单/提示 ---------- */
.notice{
  border:1px dashed var(--line);border-radius:var(--radius-sm);
  background:rgba(255,255,255,.6);padding:16px 18px;font-size:14px;color:var(--ink-2);
}
.notice b{color:var(--seal-deep)}
.tagline{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.tagline span{font-family:var(--sans);font-size:11.5px;letter-spacing:1.2px;color:var(--indigo);background:var(--indigo-tint);border:1px solid rgba(31,58,95,.14);padding:4px 10px;border-radius:999px}

/* 大字宣言 */
.manifesto{font-size:clamp(19px,2.5vw,27px);line-height:2;letter-spacing:.5px;max-width:26em}
.manifesto b{color:var(--seal)}

/* 目录导航（子页） */
.pager{display:flex;justify-content:space-between;gap:14px;margin-top:44px;padding-top:22px;border-top:1px solid var(--line);font-family:var(--sans);font-size:13.5px}
.pager a{color:var(--ink-2);display:flex;flex-direction:column;gap:3px}
.pager a:hover{color:var(--seal-deep)}
.pager a span{font-size:11px;letter-spacing:1.6px;color:var(--ink-3)}
