/* /assets/css/sim/mechanical/cd-nozzle-flow-simulator.css — 本页专属样式（en/zh 共用） */

/* ============ 控制面板 ============ */
body[data-topic="cd-nozzle-flow"] .controls{
  max-width:900px;width:100%;margin:8px 6px 4px;background:#fff;border:1px solid #dbe3ee;border-radius:12px;
  padding:16px 20px 18px;display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;
}
body[data-topic="cd-nozzle-flow"] .ctrl-group{flex:1 1 240px;display:flex;flex-direction:column;gap:6px;}
body[data-topic="cd-nozzle-flow"] .ctrl-group label{font-size:13px;color:#475569;display:flex;justify-content:space-between;align-items:baseline;}
body[data-topic="cd-nozzle-flow"] .ctrl-group label b{color:#2563eb;font-size:15px;}
body[data-topic="cd-nozzle-flow"] input[type="range"]{
  -webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:4px;
  background:linear-gradient(90deg,#bfdbfe,#2563eb);outline:none;cursor:pointer;
}
body[data-topic="cd-nozzle-flow"] input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;
  background:#fff;border:3px solid #2563eb;box-shadow:0 2px 6px rgba(37,99,235,.35);cursor:grab;
}
body[data-topic="cd-nozzle-flow"] input[type="range"]::-webkit-slider-thumb:active{cursor:grabbing;}
body[data-topic="cd-nozzle-flow"] input[type="range"]::-moz-range-thumb{
  width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid #2563eb;
  box-shadow:0 2px 6px rgba(37,99,235,.35);cursor:grab;
}
body[data-topic="cd-nozzle-flow"] .readouts{display:flex;gap:12px;flex-wrap:wrap;width:100%;}
body[data-topic="cd-nozzle-flow"] .readout{
  flex:1 1 140px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;
  padding:10px 14px;text-align:center;
}
body[data-topic="cd-nozzle-flow"] .readout .k{font-size:12px;color:#5b6472;letter-spacing:.04em;margin-bottom:4px;}
body[data-topic="cd-nozzle-flow"] .readout .v{font-size:20px;font-weight:700;color:#1d4ed8;font-variant-numeric:tabular-nums;line-height:1.1;}
body[data-topic="cd-nozzle-flow"] .readout .v small{font-size:12px;font-weight:500;color:#5b6472;margin-left:3px;}
body[data-topic="cd-nozzle-flow"] .readout.verdict{background:#fefce8;border-color:#fde68a;}
body[data-topic="cd-nozzle-flow"] .readout.verdict .v{color:#b45309;font-size:14px;}

/* ============ SVG 内文字 ============ */
body[data-topic="cd-nozzle-flow"] .svg-title{fill:#16202c;}
body[data-topic="cd-nozzle-flow"] .tag{
  font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;fill:#334155;
}
body[data-topic="cd-nozzle-flow"] .tag-sm{
  font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:12px;fill:#5b6472;
}
body[data-topic="cd-nozzle-flow"] .tag-num{
  font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:11px;fill:#5b6472;
}
body[data-topic="cd-nozzle-flow"] .legend{fill:#5b6472;}

/* ============ 外壳 ============ */
body[data-topic="cd-nozzle-flow"] .shell-layer{pointer-events:none;}

/* ============ 流动虚线 ============ */
body[data-topic="cd-nozzle-flow"] .flow-arrow{
  fill:none;stroke:#475569;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:5 5;
}
body[data-topic="cd-nozzle-flow"] .is-running .flow-arrow{animation:cd-nozzle-flow-dash .8s linear infinite;}
@keyframes cd-nozzle-flow-dash{to{stroke-dashoffset:-10;}}

/* ============ 无障碍：减弱动效 ============ */
@media (prefers-reduced-motion:reduce){
  body[data-topic="cd-nozzle-flow"] .flow-arrow{animation:none;stroke-dasharray:none;opacity:.35;}
}

/* ============ 移动端：控制面板排在能量链之后 ============ */
@media (max-width:1160px){
  body[data-topic="cd-nozzle-flow"] .controls{order:4;}
}
