/* ── 首页首屏「信号雷达 + AI 研判」演示台 · 浅色科技版（2026-10-20 第 2 版）
   老板要求：高度放大、接近 16:9、浅色科技风；右上角固定一句「示意数据，仅供参考」。
   配色沿用 dt.css 的品牌蓝与灰阶，不另造视觉语言。 */

.aihero{position:relative;padding:8px 0 4px;width:min(1280px,96vw);margin-left:50%;transform:translateX(-50%)}

.aih-card{position:relative;width:100%;aspect-ratio:16/9;
  display:grid;grid-template-columns:minmax(0,34%) minmax(0,66%);
  background:
    radial-gradient(120% 100% at 0% 0%,#EAF3FF 0%,rgba(234,243,255,0) 55%),
    radial-gradient(90% 90% at 100% 100%,#F2F8FF 0%,rgba(242,248,255,0) 60%),
    #FFFFFF;
  border:1px solid #DDE9F8;border-radius:18px;overflow:hidden;
  box-shadow:0 18px 44px -24px rgba(9,58,120,.28),0 2px 6px rgba(9,58,120,.05)}

/* 细网格底纹，浅色下才有科技感 */
.aih-card::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(to right,rgba(22,119,255,.05) 1px,transparent 1px),
                   linear-gradient(to bottom,rgba(22,119,255,.05) 1px,transparent 1px);
  background-size:34px 34px;
  -webkit-mask-image:radial-gradient(120% 120% at 20% 10%,#000 0%,rgba(0,0,0,.25) 60%,transparent 100%);
  mask-image:radial-gradient(120% 120% at 20% 10%,#000 0%,rgba(0,0,0,.25) 60%,transparent 100%)}

/* 左：雷达 */
.aih-l{position:relative;padding:16px 6px 12px 16px;border-right:1px solid #E8F1FD;
  display:flex;flex-direction:column;min-width:0}
.aih-lhd{display:flex;align-items:center;gap:9px;font-size:19px;color:#4E5969;letter-spacing:.02em}
.aih-lhd .live{width:6px;height:6px;border-radius:50%;background:#00B42A;
  box-shadow:0 0 0 0 rgba(0,180,42,.45);animation:aihPulse 2.2s infinite}
@keyframes aihPulse{0%{box-shadow:0 0 0 0 rgba(0,180,42,.40)}70%{box-shadow:0 0 0 7px rgba(0,180,42,0)}100%{box-shadow:0 0 0 0 rgba(0,180,42,0)}}
.aih-lhd em{margin-left:auto;margin-right:14px;font-style:normal;color:#86909C;font-size:15px;
  border:1px solid #E5E6EB;border-radius:999px;padding:1px 7px;background:#fff}
.radar-wrap{position:relative;flex:1 1 auto;min-height:0;margin:6px 0 2px}
.radar-wrap canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.rlabel{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:7px;
  font-size:17px;color:#4E5969;white-space:nowrap;padding:2px 7px;border-radius:999px;
  border:1px solid #E3EDFA;background:rgba(255,255,255,.92);transition:.25s var(--ease);
  box-shadow:0 1px 3px rgba(9,58,120,.05)}
.rlabel i{width:8px;height:8px;border-radius:50%;background:#B7D3F2;transition:.2s}
.rlabel.on{color:#0958D9;border-color:#9CC8FF;background:#fff;box-shadow:0 2px 8px rgba(22,119,255,.16)}
.rlabel.on i{background:#1677FF;box-shadow:0 0 8px rgba(22,119,255,.65)}
.radar-hud{display:flex;align-items:center;gap:7px;font-size:13px;color:#86909C;padding:0 4px;white-space:nowrap}
.radar-hud b{color:#0958D9;font-variant-numeric:tabular-nums;font-weight:600}

/* 右：AI 研判 */
.aih-r{position:relative;display:flex;flex-direction:column;padding:22px 26px 24px;min-width:0}
.aih-rhd{display:flex;align-items:center;gap:9px;padding-bottom:10px;border-bottom:1px solid #EDF3FB}
.aih-badge{display:inline-flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:#0958D9;
  background:#EBF5FF;border:1px solid #CFE5FF;border-radius:7px;padding:3px 8px}
.aih-badge::before{content:"";width:5px;height:5px;border-radius:50%;background:#1677FF;box-shadow:0 0 0 3px rgba(22,119,255,.14)}
.aih-step{font-size:17px;color:#86909C;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aih-next{margin-left:auto;flex:0 0 auto;font:inherit;font-size:17px;color:#0958D9;background:#fff;
  border:1px solid #CFE5FF;border-radius:8px;padding:7px 14px;cursor:pointer;transition:.18s}
.aih-next:hover{background:#EBF5FF;border-color:#9CC8FF}

.aih-client{display:flex;align-items:baseline;gap:8px;font-size:17px;color:#86909C;padding:14px 2px 10px}
.aih-client b{font-size:25px;color:#1F2329;font-weight:600}

.aih-ins{display:flex;flex-direction:column;gap:9px;min-height:0;flex:1 1 auto;justify-content:center}
.aih-in{display:grid;grid-template-columns:28px 74px minmax(0,1fr);gap:12px;align-items:start;
  background:#F8FBFF;border:1px solid #E9F1FC;border-radius:10px;padding:11px 14px;
  opacity:0;transform:translateY(5px);
  transition:opacity .3s var(--ease),transform .3s var(--ease),border-color .18s,background .18s}
.aih-in.show{opacity:1;transform:none}
.aih-in.hl{border-color:#9CC8FF;background:#EFF7FF;box-shadow:0 2px 10px rgba(22,119,255,.10)}
.aih-in .n{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:16px;font-weight:700;color:#fff;background:#8FB8E8;margin-top:2px;flex:0 0 28px}
.aih-in.show .n{background:#1677FF}
.aih-in .k{font-size:15px;font-weight:600;border-radius:6px;padding:3px 7px;text-align:center;margin-top:3px;
  border:1px solid #D8E6F7;color:#4E5969;background:#fff;white-space:nowrap}
.aih-in .k.bid{border-color:#CDE2FF;color:#0958D9;background:#F0F6FF}
.aih-in .k.job{border-color:#CBEED6;color:#0E7A3A;background:#F1FCF4}
.aih-in .k.reg{border-color:#FFE3BC;color:#A85B00;background:#FFF9F0}
.aih-in .k.ann{border-color:#E3D4FF;color:#6B3FBF;background:#F8F3FF}
.aih-in .k.riv{border-color:#FFD3D3;color:#B42318;background:#FFF4F4}
.aih-in .t{font-size:21px;line-height:1.42;color:#1F2329;min-width:0}
.aih-in .t span{display:block;color:#86909C;font-size:15px;margin-top:3px}

.aih-merge{display:flex;align-items:center;gap:7px;font-size:16px;color:#86909C;height:20px;
  opacity:0;transition:opacity .25s}
.aih-merge.show{opacity:1}
.aih-merge .dots{display:inline-flex;gap:3px}
.aih-merge .dots i{width:4px;height:4px;border-radius:50%;background:#1677FF;opacity:.35;animation:aihDot 1.1s infinite}
.aih-merge .dots i:nth-child(2){animation-delay:.15s}
.aih-merge .dots i:nth-child(3){animation-delay:.3s}
@keyframes aihDot{0%,80%,100%{opacity:.25;transform:none}40%{opacity:1;transform:translateY(-2px)}}

.aih-out{margin-top:10px;border:1px solid #CFE5FF;border-radius:11px;
  background:linear-gradient(100deg,#F2F9FF 0%,#FBFDFF 60%,#FFFFFF 100%);
  padding:11px 13px 12px;opacity:0;transform:translateY(6px);
  transition:opacity .35s var(--ease),transform .35s var(--ease)}
.aih-out.show{opacity:1;transform:none}
.aih-ol{display:inline-block;font-size:14px;letter-spacing:.05em;color:#0958D9;
  border:1px solid #CFE5FF;border-radius:6px;padding:1px 8px;margin-bottom:8px;background:#fff}
.aih-out .concl{font-size:26px;line-height:1.42;color:#1F2329;font-weight:600}
.aih-out .act{font-size:20px;color:#4E5969;margin-top:8px}
.aih-out .act b{color:#0E7A3A;font-weight:600}
.aih-out .ev{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.aih-ev{font-size:15px;color:#0958D9;background:#fff;border:1px solid #DCEAFF;border-radius:999px;
  padding:3px 11px;transition:.18s;cursor:default}
.aih-ev:hover,.aih-ev.hl{border-color:#9CC8FF;background:#EBF5FF}

@media (max-width:900px){
  .aih-card{aspect-ratio:auto;grid-template-columns:1fr;max-height:none}
  .aih-l{border-right:0;border-bottom:1px solid #E8F1FD;padding:14px 14px 8px}
  .radar-wrap{height:230px;flex:0 0 230px}
  .aih-r{padding:12px 14px 16px}
}
@media (prefers-reduced-motion:reduce){
  .aih-lhd .live,.aih-merge .dots i{animation:none}
}

/* 首屏收紧：面板按 16:9 放大后，把上面文字区的呼吸压一点，保证 1440×900 能看到整块面板 */
.hero .wrap{padding-top:30px}
.hero .pills{margin-top:10px}
.hero .hero-acts{margin-top:14px}
.hero h1{margin-bottom:10px}

/* 结论框：分析中的加载态 + 逐字输出 */
.aih-load{display:flex;align-items:center;gap:10px;font-size:20px;color:#4E5969;min-height:56px}
.aih-spin{width:19px;height:19px;border-radius:50%;border:1.6px solid #D8E8FB;border-top-color:#1677FF;
  animation:aihSpin .8s linear infinite;flex:0 0 19px}
@keyframes aihSpin{to{transform:rotate(360deg)}}
.aih-dots{display:inline-flex;gap:3px;margin-left:1px}
.aih-dots i{width:4px;height:4px;border-radius:50%;background:#1677FF;opacity:.3;animation:aihDot 1.1s infinite}
.aih-dots i:nth-child(2){animation-delay:.15s}
.aih-dots i:nth-child(3){animation-delay:.3s}
.aih-out .concl.typing::after{content:"▍";margin-left:3px;color:#1677FF;animation:aihCaret .9s steps(1) infinite}
@keyframes aihCaret{50%{opacity:0}}
@media (prefers-reduced-motion:reduce){
  .aih-spin,.aih-dots i,.aih-out .concl.typing::after{animation:none}
}

/* 分析中的占位骨架 */
.aih-in.skel{background:#FBFDFF;border-style:dashed;border-color:#E7F0FB}
.aih-in.skel .n{background:#D6E6F8}
.bar{display:block;height:13px;border-radius:4px;
  background:linear-gradient(90deg,#EFF5FD 0%,#E1ECFA 50%,#EFF5FD 100%);background-size:200% 100%;
  animation:aihShimmer 1.5s linear infinite}
.bar.w1{width:64%}
.bar.w2{width:38%;height:10px;margin-top:9px}
@keyframes aihShimmer{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.bar{animation:none}}

.aih-out.fading{opacity:0;transform:translateY(-4px);transition:opacity .55s var(--ease),transform .55s var(--ease)}

/* 下方四块：宽度与页面正文一致，避免比标题宽 */
.aihero.sm{width:min(1120px,94vw);padding-top:4px}
.aihero.sm .aih-card{aspect-ratio:16/9}
/* 「直达官方原文」链接胶囊 */
.aih-link{font-size:15px;color:#fff;background:#1677FF;border:1px solid #1677FF;border-radius:999px;
  padding:3px 12px;text-decoration:none;transition:.18s;white-space:nowrap}
.aih-link:hover{background:#0958D9;border-color:#0958D9;color:#fff}

/* 结论与建议动作：单行，不换行；字号由脚本按宽度自动缩 */
.aih-out .concl,.aih-out .act{white-space:nowrap;overflow:hidden;text-overflow:clip}
.aih-in .t{white-space:nowrap;overflow:hidden;text-overflow:clip}

/* 左上角换成品牌 logo（老板 2026-10-20） */
.aih-card .aih-logo{height:30px;width:auto;max-width:none;display:block;margin-left:2px}
.aihero.sm .aih-card .aih-logo{height:26px}

/* 四块小卡（1120 宽）：内容更紧凑，保证结论+依据全在卡内 */
.aih-r{overflow:hidden}
.aihero.sm .aih-r{padding:18px 22px 18px}
.aihero.sm .aih-client{padding:10px 2px 8px;font-size:15px}
.aihero.sm .aih-client b{font-size:21px}
.aihero.sm .aih-in{padding:7px 11px;gap:10px;grid-template-columns:24px 64px minmax(0,1fr)}
.aihero.sm .aih-in .n{width:24px;height:24px;font-size:14px;flex:0 0 24px}
.aihero.sm .aih-in .k{font-size:13px;padding:2px 6px}
.aihero.sm .aih-in .t{font-size:18px}
.aihero.sm .aih-in .t span{font-size:13px;margin-top:2px}
.aihero.sm .aih-badge{font-size:15px}
.aihero.sm .aih-step{font-size:14px}
.aihero.sm .aih-next{font-size:14px;padding:5px 11px}
.aihero.sm .aih-lhd{font-size:16px}
.aihero.sm .aih-lhd em{font-size:13px}
.aihero.sm .radar-hud{font-size:12px}
.aihero.sm .rlabel{font-size:14px}
.aihero.sm .aih-out .concl{font-size:22px}
.aihero.sm .aih-out .act{font-size:17px}
.aihero.sm .aih-ev,.aihero.sm .aih-link{font-size:13px}
.aihero.sm .aih-ol{font-size:12px}
.aihero.sm .aih-load{font-size:17px;min-height:44px}

/* ── 演示轮播：三角形左右切换（老板 2026-10-20） ───────────── */
.demo-car-wrap{width:min(1280px,96vw);margin:0 auto;padding:2px 0 4px}
.dc-cap{display:flex;align-items:baseline;gap:12px;padding:0 4px 10px}
.dc-cap b{font-size:19px;color:#1F2329;letter-spacing:.2px}
.dc-cap span{font-size:13px;color:#86909C}
.demo-car{position:relative}
.dc-view{overflow:hidden;border-radius:18px}
.dc-track{display:flex;transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}
.dc-slide{flex:0 0 100%;min-width:0}
.dc-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;
  background:#fff;border:1px solid #DCE8F7;box-shadow:0 8px 22px -8px rgba(9,58,120,.38);
  cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s var(--ease);z-index:5}
.dc-arrow:hover{background:#F2F8FF;border-color:#9CC8FF;transform:translateY(-50%) scale(1.05)}
.dc-arrow:active{transform:translateY(-50%) scale(.97)}
.dc-prev{left:-58px}
.dc-next{right:-58px}
.dc-prev i{display:block;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;
  border-right:14px solid #1677FF;margin-left:-5px}
.dc-next i{display:block;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;
  border-left:14px solid #1677FF;margin-right:-5px}
.dc-dots{display:flex;justify-content:center;gap:8px;padding:14px 0 2px}
.dc-dot{width:7px;height:7px;border-radius:50%;background:#D6E4F5;border:0;padding:0;cursor:pointer;transition:.25s}
.dc-dot.on{width:22px;border-radius:4px;background:#1677FF}
@media (max-width:1420px){
  .dc-prev{left:10px}
  .dc-next{right:10px}
  .dc-arrow{background:rgba(255,255,255,.94)}
}
@media (max-width:900px){
  .dc-cap{flex-direction:column;gap:2px}
  .dc-prev{left:4px}.dc-next{right:4px}
  .dc-arrow{width:40px;height:40px}
}

/* 结论区：留白多一点，依据居中 */
.aih-out{padding:14px 16px 15px;margin-top:12px}
.aih-out .concl{line-height:1.5}
.aih-out .act{margin-top:9px}
.aih-out .ev{justify-content:center;margin-top:12px}

/* 依据整行居中，直达按钮单独一行居中 */
.aih-out .ev{display:block;text-align:left}
.aih-out .ev-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;align-items:center}
.aih-out .ev-link{margin-top:10px;display:flex;justify-content:flex-start}
.aih-out .ev-link .aih-link{margin:0}

/* 分析中阶段的骨架：把预留高度填满，看着不空 */
.aih-skel{margin-top:9px;display:flex;flex-direction:column;gap:9px}
.aih-skel>i{display:block;height:13px;border-radius:7px;
  background:linear-gradient(90deg,#E8F2FE 0%,#F4F9FF 50%,#E8F2FE 100%);
  background-size:200% 100%;animation:aihShimmer 1.5s linear infinite}
.aih-skel>i.sm{height:10px}
.aih-skel-ev{display:flex;gap:8px;margin-top:3px}
.aih-skel-ev b{display:block;height:24px;flex:1;border-radius:999px;
  background:linear-gradient(90deg,#EDF5FF 0%,#F7FBFF 50%,#EDF5FF 100%);
  background-size:200% 100%;animation:aihShimmer 1.5s linear infinite}
@keyframes aihShimmer{from{background-position:200% 0}to{background-position:-200% 0}}

/* ── 左侧可视化：每块演示各用各的（老板 2026-10-20） ───────── */
.vis{display:none;flex:1;min-height:0;position:relative}
.dc-slide[data-demo="hero"] .v-radar,
.dc-slide[data-demo="rival"] .v-radar{display:block}
.dc-slide[data-demo="scene"] .v-map{display:block}
.dc-slide[data-demo="industry"] .v-chain{display:flex;align-items:center}
.dc-slide[data-demo="push"] .v-push{display:block}

/* 竞对：红色雷达 */

.dc-slide[data-demo="rival"] .rlabel{color:#B4232A;border-color:#F6D5D7;background:#FFF7F7}
.dc-slide[data-demo="rival"] .rlabel i{background:#E5484D}

/* 场景：四川地图 */
.v-map svg{position:absolute;inset:0;width:100%;height:100%}
.v-map svg path{fill:#EAF3FE;stroke:#C6DDF7;stroke-width:1.5}
.map-pins{position:absolute;inset:0}100%{left:100%}}
.map-hud{position:absolute;left:4px;bottom:2px;font-size:13px;color:#86909C;letter-spacing:.2px}
.pin{position:absolute;transform:translate(-50%,-50%);opacity:0;transition:opacity .3s}
.pin.on{opacity:1}
.pin i{display:block;width:10px;height:10px;border-radius:50%;background:#E5484D;
  box-shadow:0 0 0 4px rgba(229,72,77,.16);position:relative;z-index:2}
.pin.on i::after{content:"";position:absolute;inset:-6px;border-radius:50%;
  border:1px solid rgba(229,72,77,.55);animation:pinPing 1.9s ease-out infinite}
@keyframes pinPing{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.2);opacity:0}}
.pin b{position:absolute;left:15px;top:-9px;font-size:14px;font-weight:600;color:#1F2329;white-space:nowrap}
.pin em{position:absolute;left:15px;top:9px;font-size:11px;font-style:normal;color:#86909C;white-space:nowrap}

/* 行业：产业链三段式 */
.v-chain{padding:2px 4px}
.js-chain{width:100%}
.ch-row{display:flex;align-items:center;gap:12px;opacity:.22;transition:opacity .35s;padding:2px 0}
.ch-row.on{opacity:1}
.ch-k{width:34px;flex:0 0 34px;font-size:12px;color:#86909C;text-align:left}
.ch-v{font-size:17px;font-weight:600;color:#1F2329;text-align:left}
.ch-line{width:1.5px;height:22px;background:#CFE2F8;margin-left:16px}
.ch-clients{display:flex;flex-wrap:wrap;gap:8px}
.ch-clients span{font-size:13px;font-weight:500;padding:4px 10px;border-radius:999px;
  background:#EAF3FE;border:1px solid #CFE5FF;color:#0958D9;opacity:0;transform:translateY(4px);transition:.32s}
.ch-clients span.on{opacity:1;transform:none}

/* 推送：邮件 + 钉钉待办 */
.v-push{padding:2px 4px}
.js-push{display:flex;flex-direction:column;gap:9px}
.mk{border:1px solid #E5EEF9;border-radius:11px;background:#fff;padding:9px 12px 10px;
  box-shadow:0 8px 18px -14px rgba(9,58,120,.45);opacity:0;transform:translateY(6px);transition:.35s}
.mk.on{opacity:1;transform:none}
.mk-h{display:flex;align-items:center;gap:8px;font-size:12px;color:#4E5969}
.mk-h b{font-size:13px;color:#1F2329}
.mk-h em{margin-left:auto;font-style:normal;color:#86909C;font-size:11px}
.mk-ic{font-size:10px;padding:1px 5px;border-radius:4px;background:#EAF3FE;color:#0958D9}
.mk-ic.ic-todo{background:#E8F7EE;color:#1A7F45}
.mk-t{margin-top:5px;font-size:13px;color:#1F2329;font-weight:600}
.mk-b{margin-top:4px}
.mk-li{font-size:12px;color:#4E5969;line-height:1.7;display:flex;gap:5px}
.mk-li i{font-style:normal;color:#9AA6B5}
.mk-tag{font-size:10px;padding:1px 5px;border-radius:4px;background:#E8F7EE;color:#1A7F45}

/* 行业三段：放大、加箭头 */
.ch-v{font-size:20px}
.ch-k{font-size:13px;color:#8A96A8}
.ch-line{height:26px;position:relative}
.ch-line::after{content:"";position:absolute;left:-4px;bottom:-1px;border-left:4.5px solid transparent;
  border-right:4.5px solid transparent;border-top:6px solid #C6DDF7}
.ch-sigs{display:flex;flex-wrap:wrap;gap:8px}
.ch-sigs span{font-size:14px;font-weight:500;padding:4px 10px;border-radius:7px;background:#F2F7FD;
  color:#4E5969;border:1px solid #E1EDF9;opacity:0;transform:translateY(4px);transition:.3s}
.ch-sigs span.on{opacity:1;transform:none;color:#0958D9;background:#EAF3FE;border-color:#CFE5FF}
.ch-clients span{font-size:14px;padding:5px 11px}

/* 推送卡片字号放大 */
.mk{padding:11px 13px 12px}
.mk-h{font-size:13px}
.mk-h b{font-size:15px}
.mk-h em{font-size:12px}
.mk-ic{font-size:11px;padding:2px 6px;border-radius:4px}
.mk-t{font-size:15px;margin-top:6px}
.mk-li{font-size:13px;line-height:1.65}
.mk-tag{font-size:11px}

/* 行业：带竖轴的三步下钻，填满左栏 */
.v-chain{align-items:stretch!important;padding:2px 2px 2px 4px}
.js-chain{display:flex;flex-direction:column;justify-content:center;width:100%}
.ch-hd{display:flex;flex-direction:column;gap:3px;padding:0 0 14px}
.ch-hd b{font-size:23px;line-height:1.25;color:#1F2329;font-weight:700}
.ch-hd em{font-style:normal;font-size:13px;color:#8A96A8}
.ch-steps{position:relative;padding-left:4px}
.ch-steps::before{content:"";position:absolute;left:14px;top:14px;bottom:16px;width:2px;
  background:linear-gradient(180deg,#CFE2F8 0%,#CFE2F8 70%,rgba(207,226,248,0))}
.ch-step{display:flex;gap:11px;align-items:flex-start;padding:9px 0;opacity:.3;transition:opacity .35s}
.ch-step.on{opacity:1}
.ch-step>i{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#EAF3FE;color:#0958D9;
  font-style:normal;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;
  border:1px solid #CFE5FF;position:relative;z-index:1}
.ch-bd{display:flex;flex-direction:column;gap:6px;padding-top:1px}
.ch-bd u{text-decoration:none;font-size:12px;color:#8A96A8;letter-spacing:.02em}
.ch-sigs,.ch-clients{display:flex;flex-wrap:wrap;gap:7px}
.ch-sigs b,.ch-clients b{font-weight:500;font-size:14px;padding:4px 10px;border-radius:7px;
  background:#F2F7FD;border:1px solid #E1EDF9;color:#4E5969;opacity:0;transform:translateY(4px);transition:.3s}
.ch-sigs b.on{opacity:1;transform:none;background:#EAF3FE;border-color:#CFE5FF;color:#0958D9}
.ch-clients b{background:#E8F7EE;border-color:#CDEBD9;color:#1A7F45;border-radius:999px}
.ch-clients b.on{opacity:1;transform:none}
.ch-seg{font-size:15px;color:#1F2329;font-weight:600}

/* 推送卡片条目再大一点 */
.mk-li{font-size:13.5px}
.mk-b{margin-top:6px}

/* 雷达容器：canvas 铺满，标签定位才对 */
.v-radar canvas{width:100%;height:100%;display:block}
.v-radar .blips{position:absolute;inset:0}

/* 全国地图：城市点依次跳出 */
.pin{opacity:0;animation:pinIn .45s ease forwards}
@keyframes pinIn{to{opacity:1}}
.pin.hot i{box-shadow:0 0 0 6px rgba(229,72,77,.22)}

/* 行业：两块紧凑展示 */
.v-chain{align-items:stretch!important;padding:0 2px}
.js-chain{display:flex;flex-direction:column;gap:10px;width:100%}
.ch-blk{border:1px solid #E5EEF9;border-radius:11px;background:#fff;padding:9px 12px;
  opacity:.35;transition:opacity .35s;box-shadow:0 8px 18px -16px rgba(9,58,120,.4)}
.ch-blk.on{opacity:1}
.ch-top{display:flex;align-items:baseline;gap:8px}
.ch-top b{font-size:16px;color:#1F2329;font-weight:700}
.ch-top em{font-style:normal;font-size:11px;color:#8A96A8}
.ch-sigs{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.ch-sigs span{font-size:12px;padding:3px 8px;border-radius:6px;background:#F2F7FD;
  border:1px solid #E1EDF9;color:#5A6B80;opacity:0;transition:.3s}
.ch-sigs span.on{opacity:1;background:#EAF3FE;border-color:#CFE5FF;color:#0958D9}
.ch-clients{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.ch-clients b{font-size:12.5px;font-weight:500;padding:3px 9px;border-radius:999px;
  background:#E8F7EE;border:1px solid #CDEBD9;color:#1A7F45;opacity:0;transition:.3s}
.ch-clients b.on{opacity:1}

/* 推送：两张卡垂直居中，不再顶在 logo 下 */
.dc-slide[data-demo="push"] .v-push{display:flex;align-items:center}
.js-push{width:100%}
.mk-li.act{color:#1F2329}

/* 东部城市标签向左，避免重叠 */
.pin.flip b{left:auto;right:15px;text-align:right}
.pin.flip em{left:auto;right:15px;text-align:right}
.pin b{font-size:13px}
.pin em{font-size:11px}

/* 城市标签四个方向避让 */
.pin.pos-r b{left:15px;top:-9px}
.pin.pos-r em{left:15px;top:9px}
.pin.pos-l b{left:auto;right:15px;text-align:right}
.pin.pos-l em{left:auto;right:15px;text-align:right}
.pin.pos-t b{left:-8px;top:-32px}
.pin.pos-t em{left:auto;right:-2px;top:-32px;font-size:10px}
.pin.pos-b b{left:-8px;top:12px}
.pin.pos-b em{left:auto;right:-2px;top:12px;font-size:10px}
.pin.pos-t b,.pin.pos-b b{white-space:nowrap}

/* 地图底部命中城市条 */
.map-cities{position:absolute;left:0;right:0;bottom:26px;display:flex;flex-wrap:wrap;gap:6px;padding:0 2px}
.map-cities span{font-size:12px;padding:3px 8px;border-radius:6px;background:#fff;
  border:1px solid #E5EEF9;color:#4E5969}

/* 行业：两块内容都自动展开，不靠输入触发 */
.ch-blk{opacity:1!important}
.ch-sigs span,.ch-clients b{opacity:1!important;animation:chipIn .38s ease both}
@keyframes chipIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* 行业：三块在左栏里均分高度 */
.dc-slide[data-demo="industry"] .js-chain{height:100%;justify-content:space-evenly;gap:8px}

/* 推送卡再充实一点 */
.mk{padding:12px 14px 13px}
.mk-t{font-size:16px}
.mk-li{font-size:14px}
.mk-h b{font-size:15px}

/* 地图：等比正视图，整体居中，不拉伸 */
.dc-slide[data-demo="scene"] .v-map{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:14px 0 10px}
.map-stage{position:relative;width:100%;aspect-ratio:1000/715}
.map-stage svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.map-pins{position:absolute;inset:0}
.map-cities{position:static;display:flex;flex-wrap:wrap;gap:6px;padding:0 1px}
.map-hud{position:static;font-size:12.5px;color:#8A96A8}

/* 底部数据条再收小一档（老板 2026-10-20：各功能都小 2 个号） */
.radar-hud{font-size:13px;color:#8A96A8;white-space:normal;line-height:1.5}
