.energy-flow{position:relative;height:310px;margin:22px 0 12px;border-radius:18px;background:linear-gradient(145deg,#f7faf5,#eef4ed);overflow:hidden}.energy-flow svg{position:absolute;inset:0;width:100%;height:100%}.energy-route{fill:none;stroke:#d5ded8;stroke-width:5;stroke-linecap:round}.energy-route.active{stroke-dasharray:4 12;animation:energy-pulse 1.1s linear infinite}.solar-route.active{stroke:#f5ad32}.grid-route.active{stroke:#3989a8}.battery-route.active{stroke:#9fcf58}.load-route.active{stroke:#136f55}.generator-route.active{stroke:#8b5cab}.energy-route.reverse{animation-direction:reverse}@keyframes energy-pulse{to{stroke-dashoffset:-32}}.energy-node{position:absolute;width:130px;min-height:82px;padding:10px 12px;border:1px solid #dce3dc;border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(20,52,42,.08);display:grid;grid-template-columns:34px 1fr;align-items:center}.energy-node>span{grid-row:1/3;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#edf4ed;color:#136f55;font-size:18px}.energy-node small{color:#66746f}.energy-node strong{font-size:17px}.solar-node{left:2%;top:22px}.generator-node{right:2%;top:22px}.grid-node{right:2%;top:50%;transform:translateY(-50%)}.battery-node{left:2%;bottom:22px}.load-node{right:2%;bottom:22px}.home-node{left:50%;top:50%;transform:translate(-50%,-50%);width:140px;border-color:#a9c8b8}.home-node>span{background:#136f55;color:#fff}.generator-node>span{background:#f0e7f7;color:#6f4a8e;font-weight:800}@media(max-width:650px){.energy-flow{height:360px}.energy-node{width:112px}.home-node{width:126px}.solar-node,.battery-node{left:1%}.generator-node,.grid-node,.load-node{right:1%}}
