/* js/viz/pipe-config.js — ağaç / halka / ızgara borulama planı */
.pcf-ctl { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-bottom: 12px; }
.pcf-plan svg { display: block; width: 100%; height: auto; }
.pcf-out { font-size: 0.88rem; }
.pcf-t { fill: oklch(1 0 0 / 0.78); font-size: 12px; font-family: inherit; }
.pcf-title { fill: var(--foreground, #fff); font-size: 13px; font-weight: 600; }
.pcf-sm { font-size: 11px; font-family: var(--font-mono); }
.pcf-lab { fill: var(--accent); }
.pcf-main { stroke: oklch(0.88 0.05 215 / 0.85); stroke-width: 4; stroke-linecap: round; }
.pcf-br { stroke: oklch(0.88 0.05 215 / 0.55); stroke-width: 2; stroke-linecap: round; }
.pcf-pipe.is-flow { stroke-dasharray: 7 6; animation: pcf-flow 1.1s linear infinite; }
.pcf-pipe.is-flow.is-rev { animation-direction: reverse; }
.pcf-pipe.is-flow.is-both { animation-duration: 1.6s; }
@keyframes pcf-flow { to { stroke-dashoffset: -26; } }
.pcf-riser { fill: oklch(0.88 0.05 215 / 0.25); stroke: var(--water); stroke-width: 1.5; }
.pcf-head { fill: oklch(1 0 0 / 0.35); transition: fill .3s; }
.pcf-head.is-on { fill: var(--accent); }
.pcf-area { fill: oklch(0.80 0.15 62 / 0.12); stroke: oklch(0.80 0.15 62 / 0.7); stroke-width: 1.4; stroke-dasharray: 4 3; transition: x .5s, y .5s; }
.pcf-area.is-fav { fill: oklch(0.86 0.13 165 / 0.12); stroke: oklch(0.86 0.13 165 / 0.7); }
.pcf-ban { fill: oklch(0.2 0.04 25 / 0.96); stroke: var(--c-bad); stroke-width: 1.2; }
.pcf-bant { fill: var(--c-bad); font-weight: 600; }
@media (max-width: 480px) { .pcf-ctl { gap: 8px; } }
@media (prefers-reduced-motion: reduce) { .pcf-pipe.is-flow { animation: none; } .pcf-area, .pcf-head { transition: none; } }
.cviz-stage.is-still .pcf-ctl { display: none; }
.cviz-stage.is-still .pcf-pipe.is-flow { animation: none; }
