@keyframes custom-dashdraw{0%{stroke-dashoffset:20}}.vue-flow__handle{background:var(--p-surface-400);border:2px solid var(--p-content-0);border-radius:6px;height:12px;width:12px}.vue-flow__handle:hover{background:var(--p-primary-500);box-shadow:0 0 0 4px rgba(var(--p-primary-500),.2)}.vue-flow__handle.vue-flow__handle-type-source,.vue-flow__handle.vue-flow__handle-type-target{border-color:var(--p-surface-0)}.vue-flow__edge .vue-flow__edge-path{animation:custom-dashdraw 1s linear infinite;stroke:var(--p-surface-400);stroke-dasharray:5,5;stroke-width:2;transition:all .2s ease}.vue-flow__edge:hover .vue-flow__edge-path{stroke:var(--p-primary-500);stroke-width:3}.vue-flow__edge.selected .vue-flow__edge-path{filter:drop-shadow(0 0 8px rgba(var(--p-primary-500-rgb),.6));stroke:var(--p-primary-500);stroke-width:3}.vue-flow__node.selected{border-radius:12px;box-shadow:0 0 0 1px var(--p-primary-500)}.vue-flow__controls{background:var(--p-surface-50);border-radius:12px;box-shadow:0 4px 12px #0000001a}.vue-flow__controls-button{background:var(--p-surface-100);border:1px solid var(--p-content-100);border-radius:8px;color:var(--p-content-0);fill:var(--p-content-0);transition:all .2s ease}.vue-flow__controls-button:hover{background:var(--p-surface-200);transform:scale(1.05)}@media(max-width:768px){.vue-flow__node{font-size:.875rem}.vue-flow__handle{height:16px;width:16px}.vue-flow__controls{scale:.8}}
