/* /assets/css/systems/market-economy/how-currency-circulation-in-a-simplified-economy-works-explained.css — page CSS (shared by en/zh) */
/* ============ Currency circulation · Simplified economy · cc-* ============ */
body[data-topic="currency-circulation"] .cc-title{fill:#16202c;font-family:var(--mono);font-size:16px;font-weight:600;letter-spacing:.06em;text-anchor:middle}

/* three actor nodes, each a distinct color */
body[data-topic="currency-circulation"] .part[data-id="part-households"] .cc-box{fill:#dbeafe;stroke:#2563eb;stroke-width:2.4;stroke-linejoin:round}
body[data-topic="currency-circulation"] .part[data-id="part-firms"] .cc-box{fill:#d1fae5;stroke:#059669;stroke-width:2.4;stroke-linejoin:round}
body[data-topic="currency-circulation"] .part[data-id="part-bank"] .cc-box{fill:#ede9fe;stroke:#7c3aed;stroke-width:2.4;stroke-linejoin:round}
body[data-topic="currency-circulation"] .cc-icon{fill:none;stroke:#334155;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body[data-topic="currency-circulation"] .part[data-id="part-households"] .cc-icon{stroke:#1e40af}
body[data-topic="currency-circulation"] .part[data-id="part-firms"] .cc-icon{stroke:#047857}
body[data-topic="currency-circulation"] .part[data-id="part-bank"] .cc-icon{stroke:#5b21b6}

/* highlight */
body[data-topic="currency-circulation"] .part.is-active .cc-box{stroke:#1d4ed8;stroke-width:3.4}
body[data-topic="currency-circulation"] .part.is-active .cc-flow{stroke-width:5}
body[data-topic="currency-circulation"] .part.is-active{filter:drop-shadow(0 0 11px rgba(29,78,216,.5))}

/* money flows: dashed strokes travelling in the arrow direction */
body[data-topic="currency-circulation"] .cc-flow{fill:none;stroke-width:3.4;stroke-linecap:round;stroke-dasharray:11 13;animation:cc-flow 1.5s linear infinite;animation-play-state:paused}
.is-running .cc-flow{animation-play-state:running}
@keyframes cc-flow{to{stroke-dashoffset:-24}}
body[data-topic="currency-circulation"] .part[data-id="part-spending"] .cc-flow{stroke:#1d4ed8}
body[data-topic="currency-circulation"] .part[data-id="part-income"] .cc-flow{stroke:#0e7490}
body[data-topic="currency-circulation"] .part[data-id="part-savings"] .cc-flow{stroke:#7c3aed}
body[data-topic="currency-circulation"] .part[data-id="part-loans"] .cc-flow{stroke:#b45309}

/* flow labels (bold, >=4.5:1 on the light board) */
body[data-topic="currency-circulation"] .cc-flow-label{font-size:12.5px;font-weight:700;text-anchor:middle;font-family:var(--mono);letter-spacing:.02em;pointer-events:none}
body[data-topic="currency-circulation"] .part[data-id="part-spending"] .cc-flow-label{fill:#1d4ed8}
body[data-topic="currency-circulation"] .part[data-id="part-income"] .cc-flow-label{fill:#0e7490}
body[data-topic="currency-circulation"] .part[data-id="part-savings"] .cc-flow-label{fill:#7c3aed}
body[data-topic="currency-circulation"] .part[data-id="part-loans"] .cc-flow-label{fill:#b45309}
body[data-topic="currency-circulation"] .part.is-active .cc-flow-label{fill:#1d4ed8}

/* banks pulse to show the intermediary role */
body[data-topic="currency-circulation"] .cc-halo{fill:none;stroke:#7c3aed;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:cc-halo 2.8s ease-out infinite;animation-play-state:paused}
.is-running .cc-halo{animation-play-state:running}
@keyframes cc-halo{0%{transform:scale(.6);opacity:.8}70%{transform:scale(1.7);opacity:0}100%{transform:scale(1.7);opacity:0}}