@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/alegreya-sans-300-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/alegreya-sans-300.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/alegreya-sans-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/alegreya-sans-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/alegreya-sans-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/alegreya-sans-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/alegreya-sans-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/alegreya-sans-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/eb-garamond-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/eb-garamond-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/eb-garamond-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/eb-garamond-600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/eb-garamond-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg-primary: #FCFCFC;--bg-secondary: #FFFFFF;--bg-tertiary: #F8F8F8;--text-primary: #111111;--text-secondary: #666666;--text-tertiary: #AAAAAA;--border-subtle: #EEEEEE;--border-medium: #DDDDDD;--accent-primary: #000000;--accent-secondary: #333333;--font-display: "EB Garamond", Georgia, serif;--font-ui: "Alegreya Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .8125rem;--font-size-sm: .9375rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2.5rem;--font-size-3xl: 3.5rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--max-width-content: 640px;--max-width-wide: 1024px;--border-radius: 2px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-ui);font-size:var(--font-size-base);font-weight:400;line-height:1.7;color:var(--text-primary);background-color:var(--bg-primary)}#app{min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:500;line-height:1.2;margin-bottom:var(--space-lg);color:var(--text-primary);letter-spacing:-.01em}h1{font-size:var(--font-size-3xl);font-weight:400}h2{font-size:var(--font-size-2xl);font-weight:400}h3{font-size:var(--font-size-xl);font-weight:500}h4{font-size:var(--font-size-lg);font-weight:500}p{margin-bottom:var(--space-md);color:var(--text-secondary);line-height:1.8}a{color:var(--text-primary);text-decoration:none;border-bottom:1px solid var(--border-medium);transition:border-color var(--transition-fast)}a:hover{border-bottom-color:var(--text-primary)}strong{font-weight:500}button,.btn{font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:400;padding:.75rem 1.5rem;border:1px solid var(--border-medium);border-radius:var(--border-radius);background-color:transparent;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);letter-spacing:.01em}button:hover,.btn:hover{background-color:var(--bg-tertiary);border-color:var(--text-secondary)}button:active,.btn:active{transform:scale(.98)}button:disabled,.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background-color:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.btn-primary:hover{background-color:var(--accent-secondary);border-color:var(--accent-secondary)}input,textarea,select{font-family:var(--font-ui);font-size:var(--font-size-base);font-weight:300;padding:.75rem 1rem;border:1px solid var(--border-medium);border-radius:var(--border-radius);background-color:var(--bg-secondary);color:var(--text-primary);transition:all var(--transition-fast);width:100%}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-primary);background-color:#fff}input::placeholder,textarea::placeholder{color:var(--text-tertiary);font-weight:300}label{font-size:var(--font-size-sm);font-weight:400;color:var(--text-secondary);display:block;margin-bottom:var(--space-xs);letter-spacing:.01em}.card{background-color:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--border-radius);padding:var(--space-2xl)}.container{max-width:var(--max-width-content);margin:0 auto;padding:var(--space-2xl) var(--space-md)}.container-wide{max-width:var(--max-width-wide)}.mt-xs{margin-top:var(--space-xs)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.mt-3xl{margin-top:var(--space-3xl)}.mb-xs{margin-bottom:var(--space-xs)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.mb-3xl{margin-bottom:var(--space-3xl)}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-muted{color:var(--text-tertiary)}.text-secondary{color:var(--text-secondary)}.text-primary{color:var(--text-primary)}.font-display{font-family:var(--font-display)}.font-ui{font-family:var(--font-ui)}section+section{margin-top:var(--space-3xl)}*{animation:none!important}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.page-enter-active,.page-leave-active{transition:opacity var(--transition-normal),transform var(--transition-normal)}.page-enter-from,.page-leave-to{opacity:0;transform:translateY(8px)}.page-enter-to,.page-leave-from{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.page-enter-active,.page-leave-active{transition:none}}@media (max-width: 640px){:root{--font-size-3xl: 2.5rem;--font-size-2xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem}.card{padding:var(--space-xl)}}.toast-container[data-v-172d4404]{position:fixed;bottom:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast[data-v-172d4404]{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:0;background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:0 4px 12px #00000014;pointer-events:auto;min-width:280px;max-width:400px;font-size:var(--font-size-sm);line-height:1.5;animation:slideIn-172d4404 .3s ease-out}.toast-success[data-v-172d4404],.toast-error[data-v-172d4404],.toast-warning[data-v-172d4404],.toast-info[data-v-172d4404]{background-color:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-medium)}.toast-icon[data-v-172d4404]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;font-weight:700}.toast-message[data-v-172d4404]{flex:1;word-break:break-word}.toast-close[data-v-172d4404]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;padding:0;background:none;border:none;color:inherit;font-size:14px;cursor:pointer;line-height:1;opacity:.5;transition:opacity var(--transition-fast)}.toast-close[data-v-172d4404]:hover{opacity:1}.toast-enter-active[data-v-172d4404],.toast-leave-active[data-v-172d4404]{transition:all .3s ease}.toast-enter-from[data-v-172d4404],.toast-leave-to[data-v-172d4404]{transform:translate(100%);opacity:0}@keyframes slideIn-172d4404{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 640px){.toast-container[data-v-172d4404]{bottom:10px;right:10px;left:10px}.toast[data-v-172d4404]{min-width:auto}}.modal-backdrop[data-v-eb567df9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a0a73;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;align-items:center;justify-content:center;z-index:60}.modal[data-v-eb567df9]{background:var(--bg-primary);padding:var(--space-lg);width:100%;max-width:600px;max-height:90vh;border:1px solid var(--text-primary);border-radius:var(--border-radius);box-shadow:0 8px 24px #0a0a0a33;display:flex;flex-direction:column}.modal-header[data-v-eb567df9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md);flex-shrink:0}.modal-close[data-v-eb567df9]{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-tertiary)}.modal-body[data-v-eb567df9]{padding-top:var(--space-sm);overflow-y:auto}.modal-panel[data-v-eb567df9]{display:flex;flex-direction:column;gap:var(--space-md)}.with-scroll[data-v-eb567df9]{padding-right:var(--space-xs)}.link-action[data-v-eb567df9]{display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border-subtle);border-radius:0;padding:4px var(--space-md);font-family:var(--font-ui);font-size:var(--font-size-xs);line-height:1;text-align:center;white-space:nowrap;font-weight:300;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;letter-spacing:.04em;text-transform:lowercase}.link-action[data-v-eb567df9]:hover{border-color:var(--text-primary);background:#0a0a0a0a;color:var(--text-primary)}.link-action[data-v-eb567df9]:disabled{opacity:.4;cursor:not-allowed}.select-file-link[data-v-eb567df9]{border:none;border-bottom:1px solid var(--border-medium);border-radius:0;padding:0}.select-file-link[data-v-eb567df9]:hover{border-bottom-color:var(--text-primary);background:transparent}.action-primary[data-v-eb567df9]{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary);font-weight:400}.action-primary[data-v-eb567df9]:hover{opacity:.9;color:var(--bg-primary)}.feedback[data-v-eb567df9]{font-size:var(--font-size-xs);margin-top:var(--space-md);text-align:center}.feedback.error[data-v-eb567df9]{color:#991b1b}.step-upload[data-v-eb567df9]{text-align:center;padding:var(--space-xl) 0}.step-hint[data-v-eb567df9]{font-family:var(--font-display);font-size:var(--font-size-lg);font-style:italic;color:var(--text-tertiary);margin-bottom:var(--space-xl)}.drop-area[data-v-eb567df9]{border:1px dashed var(--border-medium);border-radius:var(--border-radius);padding:var(--space-2xl) var(--space-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-md);transition:all var(--transition-fast)}.drop-area.dragging[data-v-eb567df9]{border-color:var(--text-primary);border-style:solid;background-color:#0a0a0a0a}.drop-label[data-v-eb567df9]{font-size:var(--font-size-sm);color:var(--text-tertiary)}.drop-or[data-v-eb567df9]{font-size:var(--font-size-xs);color:var(--text-tertiary)}.preview-summary[data-v-eb567df9]{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-md);text-align:center}.summary-number[data-v-eb567df9]{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:400;color:var(--text-primary)}.summary-label[data-v-eb567df9]{font-size:var(--font-size-sm);color:var(--text-secondary)}.summary-detail[data-v-eb567df9]{font-size:var(--font-size-xs);color:var(--text-tertiary)}.import-note[data-v-eb567df9]{text-align:center;font-size:var(--font-size-xs);color:var(--text-tertiary);font-style:italic;margin-bottom:var(--space-lg);line-height:1.6}.preview-books[data-v-eb567df9]{display:flex;flex-direction:column;gap:var(--space-md)}.preview-book[data-v-eb567df9]{border:1px solid var(--border-subtle);border-radius:var(--border-radius);padding:var(--space-md);background:var(--bg-secondary, transparent)}.preview-book-head[data-v-eb567df9]{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--space-md)}.pb-title[data-v-eb567df9]{font-family:var(--font-display);font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.pb-meta[data-v-eb567df9]{font-size:11px;color:var(--text-tertiary)}.preview-quote[data-v-eb567df9]{padding-left:var(--space-md);border-left:1px solid var(--border-subtle);margin:0 0 var(--space-sm) 0}.preview-quote p[data-v-eb567df9]{font-family:var(--font-display);font-size:11px;font-style:italic;line-height:1.5;color:var(--text-secondary);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.preview-more[data-v-eb567df9]{font-size:10px;color:var(--text-tertiary);padding-left:var(--space-md)}.modal-stick-footer[data-v-eb567df9]{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-subtle);position:sticky;bottom:0;background:var(--bg-primary);width:100%}.no-new[data-v-eb567df9]{font-size:var(--font-size-sm);color:var(--text-tertiary);font-style:italic}.result-stats[data-v-eb567df9]{display:flex;align-items:baseline;justify-content:center;gap:var(--space-md);margin:var(--space-xl) 0 var(--space-2xl)}.result-stat[data-v-eb567df9]{display:flex;align-items:baseline;gap:var(--space-xs)}.rs-number[data-v-eb567df9]{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:400;color:var(--text-primary)}.rs-label[data-v-eb567df9]{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.rs-sep[data-v-eb567df9]{color:var(--text-tertiary)}.step-actions[data-v-eb567df9]{display:flex;justify-content:center;gap:var(--space-xl)}@media (max-width: 640px){.result-stats[data-v-eb567df9]{flex-direction:column;align-items:center;gap:var(--space-sm)}.rs-sep[data-v-eb567df9]{display:none}}.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}}
