html,body{margin:0;padding:0;width:100%;height:100vh;overflow:hidden;background-color:#f5f5f5}#app{width:100%;height:100vh;display:flex;justify-content:center;align-items:center}.graph{width:100%;height:100%}.v-ng-selection-box{shape-rendering:crispEdges}.v-ng-background-grid{pointer-events:none}.v-ng-line-background.selectable{cursor:pointer}.v-ng-edge{transition:stroke .1s linear,stroke-width .1s linear;pointer-events:none}.v-ng-line-summarized.selectable{cursor:pointer}.v-ng-edge-labels .v-ng-text,.v-ng-edge-labels .v-ng-text-background,.v-ng-node-focusring{pointer-events:none}:where(.v-ng-shape-circle){transition:r .1s linear}:where(.v-ng-shape-rect){transition:x .1s linear,y .1s linear,width .1s linear,height .1s linear}:where(.dragging .v-ng-shape-circle),:where(.dragging .v-ng-shape-rect){transition:none}.v-ng-node :where(.v-ng-shape-circle){transition:fill .1s linear,stroke .1s linear,stroke-width .1s linear,r .1s linear}.v-ng-node :where(.v-ng-shape-rect){transition:fill .1s linear,stroke .1s linear,stroke-width .1s linear,x .1s linear,y .1s linear,width .1s linear,height .1s linear}.v-ng-node :where(.v-ng-node-default.v-ng-shape-circle){pointer-events:none}.v-ng-node :where(.v-ng-node-default.v-ng-shape-rect){pointer-events:none}.v-ng-node .draggable,.v-ng-node .selectable{pointer-events:all;cursor:pointer}:where(.v-ng-node-label)>:where(*){cursor:default;-webkit-user-select:none;user-select:none;transition:transform .1s linear}:where(.v-ng-node-label) .draggable,:where(.v-ng-node-label) .selectable{pointer-events:all;cursor:pointer}.v-path{pointer-events:none;transition:stroke .1s linear,stroke-width .1s linear}.v-path.clickable{pointer-events:stroke;cursor:pointer}.v-path.hoverable{pointer-events:stroke}:where(.v-ng-container){width:100%;height:100%}.v-ng-container{padding:0;position:relative;-webkit-user-select:none;user-select:none}.v-ng-canvas{-webkit-tap-highlight-color:transparent;width:100%;height:100%;opacity:0}.v-ng-canvas.show{opacity:1;transition:opacity .5s linear}.v-ng-canvas.dragging *{cursor:grabbing!important}.v-ng-canvas.dragging .v-ng-line{transition:d 0s}.v-ng-canvas.touches{touch-action:none}.v-ng-canvas.box-selection-mode,.v-ng-canvas.box-selection-mode *{cursor:crosshair!important}.v-ng-canvas:not(.show) .v-ng-node,.v-ng-canvas:not(.show) .v-ng-node-label,.v-ng-canvas:not(.show) .v-ng-node-focusring,.v-ng-canvas:not(.show) .v-ng-edge,.v-ng-canvas:not(.show) .v-ng-edge-label,.v-ng-canvas:not(.show) .v-ng-path{transition:none}.v-ng-canvas:not(.show) .v-ng-node>*,.v-ng-canvas:not(.show) .v-ng-node-label>*,.v-ng-canvas:not(.show) .v-ng-node-focusring>*,.v-ng-canvas:not(.show) .v-ng-edge>*,.v-ng-canvas:not(.show) .v-ng-edge-label>*,.v-ng-canvas:not(.show) .v-ng-path>*{transition:none}.v-ng-viewport.v-ng-transition{--transition-duration: .3s;--transition-function: linear}.v-ng-viewport.v-ng-transition .v-ng-node,.v-ng-viewport.v-ng-transition .v-ng-node-label,.v-ng-viewport.v-ng-transition .v-ng-node-focusring,.v-ng-viewport.v-ng-transition .v-ng-edge,.v-ng-viewport.v-ng-transition .v-ng-edge-label,.v-ng-viewport.v-ng-transition .v-ng-path{transition:all var(--transition-duration) var(--transition-function)}.v-ng-viewport.v-ng-transition .v-ng-node>*,.v-ng-viewport.v-ng-transition .v-ng-node-label>*,.v-ng-viewport.v-ng-transition .v-ng-node-focusring>*,.v-ng-viewport.v-ng-transition .v-ng-edge>*,.v-ng-viewport.v-ng-transition .v-ng-edge-label>*,.v-ng-viewport.v-ng-transition .v-ng-path>*{transition:all var(--transition-duration) var(--transition-function)}.v-ng-line.animate,.v-ng-path.animate{--animation-speed: 100;animation:v-ng-dash 10s linear infinite;stroke-dashoffset:var(--animation-speed)}@keyframes v-ng-dash{to{stroke-dashoffset:0}}.export-container[data-v-91b1e6db]{position:absolute;top:30px;right:30px;z-index:100}.export-button[data-v-91b1e6db]{padding:10px 20px;background-color:#fff;color:#333;border:1px solid #dddddd;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:6px;box-shadow:0 2px 6px #0000000d}.export-button[data-v-91b1e6db]:before{content:"↓";font-size:16px}.export-button[data-v-91b1e6db]:hover{background-color:#f8f8f8;border-color:#ccc;box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.export-button[data-v-91b1e6db]:active{background-color:#f0f0f0;transform:translateY(0);box-shadow:0 2px 4px #0000000d}.graph-container[data-v-6dda0edf]{position:relative;display:flex;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;box-sizing:border-box;background-color:#f8f8f8}.graph[data-v-6dda0edf]{position:relative;display:flex;width:100%;height:100%;background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #0000000f;overflow:hidden}[data-v-6dda0edf] .v-ng-viewport{position:absolute!important;width:100%!important;height:100%!important;display:flex;justify-content:center;align-items:center}[data-v-6dda0edf] .v-ng-canvas{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center}.input-container[data-v-cbae0132]{padding:20px;display:flex;flex-direction:column;gap:15px;height:100%;box-sizing:border-box}.graph-type-selector[data-v-cbae0132]{display:flex;gap:10px;justify-content:center}.graph-type-selector button[data-v-cbae0132]{padding:8px 16px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s}.graph-type-selector button.active[data-v-cbae0132]{background:#4caf50;color:#fff;border-color:#4caf50}.graph-type-selector button[data-v-cbae0132]:hover:not(.active){background:#f5f5f5}.input-container[data-v-cbae0132]:before,.input-container[data-v-cbae0132]:after{content:"";flex:1}textarea[data-v-cbae0132]{height:100%;padding:12px;border:1px solid #ddd;border-radius:4px;resize:vertical;font-family:monospace;font-size:14px;line-height:1.5}textarea[data-v-cbae0132]:focus{outline:none}.input-tips[data-v-cbae0132]{background-color:#f5f5f5;padding:12px;border-radius:4px}.input-tips p[data-v-cbae0132]{margin:0 0 8px;font-weight:700;color:#333}.input-tips ul[data-v-cbae0132]{margin:0;padding-left:20px}.input-tips li[data-v-cbae0132]{color:#666;margin-bottom:4px}.input-tips li[data-v-cbae0132]:last-child{margin-bottom:0}.container[data-v-fbaed8ca]{display:flex;width:100%;height:100vh;background-color:#f5f5f5}.input-panel[data-v-fbaed8ca]{width:300px;border-right:1px solid #eee;background-color:#fff;height:100%}.graph-panel[data-v-fbaed8ca]{flex:1;height:100%;display:flex;justify-content:center;align-items:center;padding:20px;box-sizing:border-box}
