/* v856 四化线条视觉模块：只负责 DOM 实测锚点后的四化 SVG 线条与 A/B/C/D 标记展示。
   边界：不得覆盖十二宫宫格结构，不发明四化线，不重新编号 A/B/C/D；
   CSS 只保留在本独立模块内；坐标调试由 sihua-line-debug.js 观察，不在 CSS 中补逻辑，避免继续堆叠到 chart-board-visual.css 或 ziwei.css。 */
.ziwei-sihua-display-lines {
  position: absolute;
  inset: 0;
  z-index: 6;
  pointer-events: none;
  overflow: visible;
}

.ziwei-sihua-display-lines line,
.ziwei-sihua-display-lines polyline,
.ziwei-sihua-display-lines .ziwei-sihua-route-path {
  fill: none;
  stroke: rgba(248, 113, 113, 0.82);
  stroke-width: 1.12;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 5 3;
  vector-effect: non-scaling-stroke;
}

.ziwei-sihua-display-lines g[data-sihua-route-style^="wenmo_template_"] .ziwei-sihua-route-path {
  opacity: 0.94;
}


.ziwei-sihua-display-lines g[data-sihua-route-style="wenmo_template_radial_to_top_bottom_edge"] .ziwei-sihua-route-path,
.ziwei-sihua-display-lines g[data-sihua-route-style="wenmo_template_radial_to_inner_right_edge"] .ziwei-sihua-route-path,
.ziwei-sihua-display-lines g[data-sihua-route-style="wenmo_template_radial_to_outer_right_edge"] .ziwei-sihua-route-path,
.ziwei-sihua-display-lines g[data-sihua-route-style="wenmo_template_radial_to_outer_left_edge"] .ziwei-sihua-route-path {
  stroke-dasharray: 5 4;
}

.ziwei-sihua-display-lines g[data-sihua-route-style="diagnostic_center_radial"] .ziwei-sihua-route-path,
.ziwei-sihua-display-lines g[data-sihua-route-style="edge_polyline_avoid_center"] .ziwei-sihua-route-path {
  opacity: 0.42;
  stroke-dasharray: 3 5;
}

.ziwei-sihua-display-lines .ziwei-sihua-self-loop-path {
  fill: none;
  stroke-width: 1.2;
  stroke-linecap: round;
  stroke-dasharray: 3 3;
  vector-effect: non-scaling-stroke;
}

.ziwei-sihua-display-lines circle {
  fill: rgba(248, 113, 113, 0.88);
  stroke: rgba(255, 255, 255, 0.78);
  stroke-width: 1.0;
  vector-effect: non-scaling-stroke;
}

.ziwei-sihua-display-lines text {
  fill: #fff7ed;
  stroke: rgba(7, 13, 32, 0.92);
  stroke-width: 2.4px;
  paint-order: stroke fill;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: -0.03em;
}

.ziwei-sihua-display-lines g.is-line-lu .ziwei-sihua-route-path,
.ziwei-sihua-display-lines g.is-line-lu .ziwei-sihua-self-loop-path { stroke: rgba(245, 214, 138, 0.84); }
.ziwei-sihua-display-lines g.is-line-quan .ziwei-sihua-route-path,
.ziwei-sihua-display-lines g.is-line-quan .ziwei-sihua-self-loop-path { stroke: rgba(251, 113, 133, 0.86); }
.ziwei-sihua-display-lines g.is-line-ke .ziwei-sihua-route-path,
.ziwei-sihua-display-lines g.is-line-ke .ziwei-sihua-self-loop-path { stroke: rgba(96, 165, 250, 0.82); }
.ziwei-sihua-display-lines g.is-line-ji .ziwei-sihua-route-path,
.ziwei-sihua-display-lines g.is-line-ji .ziwei-sihua-self-loop-path { stroke: rgba(248, 113, 113, 0.88); }

.ziwei-sihua-display-lines g.is-marker-a circle { fill: rgba(245, 214, 138, 0.92); }
.ziwei-sihua-display-lines g.is-marker-b circle { fill: rgba(251, 113, 133, 0.92); }
.ziwei-sihua-display-lines g.is-marker-c circle { fill: rgba(96, 165, 250, 0.90); }
.ziwei-sihua-display-lines g.is-marker-d circle { fill: rgba(248, 113, 113, 0.94); }


.ziwei-sihua-display-lines g[data-sihua-marker-dock-edge="left"] circle,
.ziwei-sihua-display-lines g[data-sihua-marker-dock-edge="right"] circle,
.ziwei-sihua-display-lines g[data-sihua-marker-dock-edge="top"] circle {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.32));
}
