/* /assets/css/machines/aerospace/how-spacecraft-attitude-control-thrusters-work-cutaway.css — 本页专属样式（en/zh 共用） */

/* ============ 零件本体/区分色（part bodies & per-part distinct fills） ============ */
.part .body{fill:var(--metal);stroke:#8ea0b5;stroke-width:1.6}
.part .body2{fill:var(--metal-2);stroke:#a9b7c9;stroke-width:1.2}
.part .body3{fill:#c6d0dd;stroke:none}
.part .accent{fill:none;stroke:#6b7b8c;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.part.is-active .body{fill:#cfe3fb;stroke:var(--accent)}
.part.is-active .body2{fill:#e3eefc;stroke:#60a5fa}
.part.is-active .body3{fill:var(--accent)}
.part.is-active .accent{stroke:var(--accent-2)}
.part.is-active{filter:drop-shadow(0 0 10px rgba(37,99,235,.35))}

/* ============ 动画：推力器火焰（交错喷射）+ 流动 ============ */
.thr-flame{transform-box:view-box;transform-origin:center;transform:scaleY(0);opacity:0;transition:opacity .4s;animation:puff .6s ease-in-out infinite;animation-play-state:paused}
.is-running .thr-flame{opacity:.95;animation-play-state:running}
.thr-flame.d2{animation-delay:.3s}
@keyframes puff{0%,100%{transform:scaleY(.55);opacity:.55}50%{transform:scaleY(1.04);opacity:1}}

.pipe-case{fill:none;stroke:#94a3b8;stroke-width:16;stroke-linecap:round;stroke-linejoin:round}
.pipe-flow{fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:9 15;opacity:0;transition:opacity .4s}
.is-running .pipe-flow{opacity:.9;animation:flow 1.1s linear infinite}
@keyframes flow{to{stroke-dashoffset:-24}}

/* ============ 航天器姿态控制推力器剖面图 · Attitude control thrusters ============
   源图：svgs/todo/machine-59-how-spacecraft-attitude-control-thrusters-work-cutaway.html。 */
body[data-topic="attitude-control-thrusters"] .part[data-id="part-prop-tank"]:not(.is-active) .body{fill:#b7c9dd}
body[data-topic="attitude-control-thrusters"] .part[data-id="part-prop-tank"]:not(.is-active) .body2{fill:#d8e3ef}
body[data-topic="attitude-control-thrusters"] .part[data-id="part-feed-lines"]:not(.is-active) .body{fill:#bcd9f2}
body[data-topic="attitude-control-thrusters"] .part[data-id="part-valves"]:not(.is-active) .body{fill:#c8c1e5}
body[data-topic="attitude-control-thrusters"] .part[data-id="part-thrusters"]:not(.is-active) .body{fill:#d9c49c}
body[data-topic="attitude-control-thrusters"] .part[data-id="part-thrusters"]:not(.is-active) .body2{fill:#e6dbbf}
body[data-topic="attitude-control-thrusters"] .part[data-id="part-electronics"]:not(.is-active) .body{fill:#c2b6d9}
body[data-topic="attitude-control-thrusters"] .part[data-id="part-sensor"]:not(.is-active) .body{fill:#a9d6e0}