.canvas-page[data-v-1c859b5e]{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden;background-color:#f0f1ff}.canvas-header[data-v-1c859b5e]{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background-color:#fff;border-bottom:1px solid #e0e0ff}.back-btn[data-v-1c859b5e]{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:#10b981;color:#fff;border:none;border-radius:20px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.back-btn[data-v-1c859b5e]:hover{background-color:#059669}.back-btn i[data-v-1c859b5e]{font-size:16px}.save-btn[data-v-1c859b5e]{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:#6366f1;color:#fff;border:none;border-radius:20px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;margin-left:12px}.save-btn[data-v-1c859b5e]:hover{background-color:#4f46e5}.save-btn i[data-v-1c859b5e]{font-size:16px}.canvas-title[data-v-1c859b5e]{display:flex;align-items:center;gap:4px;font-size:16px;font-weight:500;color:#374151}.title-prefix[data-v-1c859b5e]{color:#818cf8}.title-separator[data-v-1c859b5e]{color:#e0e0ff;margin:0 4px}.canvas-name-input[data-v-1c859b5e]{width:200px}.canvas-name-input[data-v-1c859b5e] .el-input__inner{border:none;background-color:transparent;font-size:16px;font-weight:500;color:#374151;cursor:pointer;text-align:left;padding:0}.canvas-name-input[data-v-1c859b5e] .el-input__inner:focus,.canvas-name-input[data-v-1c859b5e] .el-input__inner:hover{background-color:#f3f4ff;border-radius:4px}.canvas-name-input[data-v-1c859b5e] .el-input__inner::-moz-placeholder{color:#9ca3af}.canvas-name-input[data-v-1c859b5e] .el-input__inner::placeholder{color:#9ca3af}.canvas-body[data-v-1c859b5e]{flex:1;display:flex;overflow:hidden}.left-panel[data-v-1c859b5e]{width:200px;background-color:#fff;border-right:1px solid #e0e0ff;display:flex;flex-direction:column}.panel-header[data-v-1c859b5e]{padding:16px 20px;border-bottom:1px solid #e0e0ff}.panel-header h3[data-v-1c859b5e]{margin:0;font-size:16px;font-weight:600;color:#1f2937}.node-list[data-v-1c859b5e]{flex:1;padding:12px}.node-item[data-v-1c859b5e]{display:flex;align-items:center;padding:12px 16px;margin-bottom:8px;background-color:#f5f5ff;border-radius:8px;cursor:pointer;transition:all .2s ease}.node-item[data-v-1c859b5e]:hover{background-color:rgba(99,102,241,.15);transform:translateX(4px)}.node-item i[data-v-1c859b5e]{font-size:20px;color:#6366f1;margin-right:12px}.node-item span[data-v-1c859b5e]{font-size:14px;color:#374151;font-weight:500}.canvas-area[data-v-1c859b5e]{flex:1;position:relative;overflow:hidden;cursor:grab}.canvas-area[data-v-1c859b5e]:active{cursor:grabbing}.canvas-inner[data-v-1c859b5e]{position:relative;width:8000px;height:8000px;min-width:100%;min-height:100%}.connections-layer[data-v-1c859b5e]{position:absolute;top:0;left:0;z-index:1}.connection-line[data-v-1c859b5e]{stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.connection-delete-btn[data-v-1c859b5e]{fill:#fff;stroke:#ef4444;stroke-width:2;cursor:pointer;opacity:0;transition:opacity .2s}.connections-layer:hover .connection-delete-btn[data-v-1c859b5e]{opacity:1}.connection-delete-btn[data-v-1c859b5e]:hover{fill:#ef4444}.delete-icon[data-v-1c859b5e]{font-size:12px;fill:#ef4444;pointer-events:none}.connection-delete-btn:hover+.delete-icon[data-v-1c859b5e]{fill:#fff}.connection-line.connecting[data-v-1c859b5e]{stroke-dasharray:5,5;animation:dash-data-v-1c859b5e .5s linear infinite}@keyframes dash-data-v-1c859b5e{to{stroke-dashoffset:-10}}.canvas-node[data-v-1c859b5e]{position:absolute;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.08);cursor:move;transition:box-shadow .2s ease,border-color .2s ease;z-index:10}.canvas-node[data-v-1c859b5e]:hover{box-shadow:0 4px 16px rgba(99,102,241,.15)}.canvas-node.selected.text[data-v-1c859b5e]{border:2px solid rgba(16,185,129,.5);box-shadow:0 0 0 2px rgba(16,185,129,.2)}.connection-handle[data-v-1c859b5e]{position:absolute;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background-color:#10b981;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:20;opacity:0;transition:all .2s ease;box-shadow:0 2px 8px rgba(16,185,129,.4)}.canvas-node:hover .connection-handle[data-v-1c859b5e]{opacity:1}.connection-handle[data-v-1c859b5e]:hover{background-color:#059669;transform:translateY(-50%) scale(1.1)}.left-handle[data-v-1c859b5e]{left:-24px}.right-handle[data-v-1c859b5e]{right:-24px}.connection-handle i[data-v-1c859b5e]{font-size:14px;font-weight:700}.add-menu-overlay[data-v-1c859b5e]{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000}.add-menu[data-v-1c859b5e]{position:absolute;background-color:#fff;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.15);padding:4px;min-width:140px;transform:translate(-50%,-50%)}.menu-item[data-v-1c859b5e]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;border-radius:4px;transition:background-color .2s ease}.menu-item[data-v-1c859b5e]:hover{background-color:rgba(99,102,241,.1)}.menu-item i[data-v-1c859b5e]{font-size:16px;color:#6366f1}.menu-item span[data-v-1c859b5e]{font-size:13px;color:#374151}.node-header[data-v-1c859b5e]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background-color:#f8f9ff;border-bottom:1px solid #e0e0ff}.node-title-wrapper[data-v-1c859b5e]{display:flex;align-items:center;flex:1;min-width:0}.node-title[data-v-1c859b5e]{font-size:12px;font-weight:600;color:#374151;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-title-input[data-v-1c859b5e]{flex:1;font-size:12px;font-weight:600;color:#374151;border:1px solid #10b981;border-radius:4px;padding:2px 6px;outline:none;background-color:#fff}.node-header .el-icon-close[data-v-1c859b5e]{font-size:14px;color:#9ca3af;cursor:pointer;padding:4px;transition:color .2s ease}.node-header .el-icon-close[data-v-1c859b5e]:hover{color:#ef4444}.node-content[data-v-1c859b5e]{padding:12px;height:calc(100% - 40px);display:flex}.text-preview[data-v-1c859b5e]{width:100%;height:100%;display:flex;flex-direction:column;align-self:stretch;margin:0;padding:0}.text-content[data-v-1c859b5e]{width:100%;height:100%;border:none;resize:none;background-color:transparent;font-size:13px;line-height:1.5;color:#374151;outline:none;padding:0;margin:0;box-sizing:border-box}.text-content[data-v-1c859b5e]::-moz-placeholder{color:#9ca3af}.text-content[data-v-1c859b5e]::placeholder{color:#9ca3af}.audio-preview[data-v-1c859b5e],.image-preview[data-v-1c859b5e],.video-preview[data-v-1c859b5e]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;width:100%;height:100%}.audio-preview i[data-v-1c859b5e],.image-preview i[data-v-1c859b5e],.video-preview i[data-v-1c859b5e]{font-size:32px;margin-bottom:8px}.audio-preview span[data-v-1c859b5e],.image-preview span[data-v-1c859b5e],.video-preview span[data-v-1c859b5e]{font-size:12px}.video-generating[data-v-1c859b5e]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;gap:8px}.video-generating i[data-v-1c859b5e]{font-size:32px;animation:spin-data-v-1c859b5e 1s linear infinite}@keyframes spin-data-v-1c859b5e{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.image-wrapper[data-v-1c859b5e]{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.preview-image[data-v-1c859b5e]{max-width:100%;max-height:200px;-o-object-fit:contain;object-fit:contain;border-radius:4px;cursor:zoom-in;transition:transform .2s ease}.preview-image[data-v-1c859b5e]:hover{transform:scale(1.05)}.image-click-hint[data-v-1c859b5e]{position:absolute;bottom:10px;right:10px;display:flex;align-items:center;gap:4px;padding:4px 10px;background:rgba(0,0,0,.5);border-radius:12px;color:#fff;font-size:11px;opacity:0;transition:opacity .2s ease}.image-wrapper:hover .image-click-hint[data-v-1c859b5e]{opacity:1}.image-click-hint i[data-v-1c859b5e]{font-size:12px}.image-preview-modal[data-v-1c859b5e]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn-data-v-1c859b5e .2s ease}@keyframes fadeIn-data-v-1c859b5e{0%{opacity:0}to{opacity:1}}.modal-content[data-v-1c859b5e]{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;animation:slideUp-data-v-1c859b5e .3s ease}@keyframes slideUp-data-v-1c859b5e{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header[data-v-1c859b5e]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.modal-title[data-v-1c859b5e]{font-size:16px;font-weight:600;color:#374151}.close-btn[data-v-1c859b5e]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#f3f4f6;border-radius:6px;cursor:pointer;transition:background .2s ease}.close-btn[data-v-1c859b5e]:hover{background:#e5e7eb}.close-btn i[data-v-1c859b5e]{font-size:16px;color:#6b7280}.modal-body[data-v-1c859b5e]{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;overflow:hidden;background:#f9fafb}.image-container[data-v-1c859b5e]{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto}.preview-full-image[data-v-1c859b5e]{max-width:100%;max-height:500px;-o-object-fit:contain;object-fit:contain;border-radius:8px;transition:transform .2s ease;transform-origin:center center}.modal-footer[data-v-1c859b5e]{display:flex;justify-content:center;padding:16px 20px;border-top:1px solid #e5e7eb}.zoom-controls[data-v-1c859b5e]{display:flex;align-items:center;gap:12px}.zoom-btn[data-v-1c859b5e]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:#f3f4f6;border-radius:8px;cursor:pointer;transition:background .2s ease}.zoom-btn[data-v-1c859b5e]:hover:not(:disabled){background:#e5e7eb}.zoom-btn[data-v-1c859b5e]:disabled{opacity:.5;cursor:not-allowed}.zoom-btn i[data-v-1c859b5e]{font-size:16px;color:#374151}.zoom-value[data-v-1c859b5e]{font-size:14px;color:#6b7280;min-width:60px;text-align:center;font-weight:500}.preview-placeholder[data-v-1c859b5e]{display:flex;flex-direction:column;align-items:center;justify-content:center}.audio-info[data-v-1c859b5e]{display:flex;flex-direction:column;align-items:center;gap:12px;padding:12px;width:100%;box-sizing:border-box}.audio-name[data-v-1c859b5e]{font-size:12px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.audio-player[data-v-1c859b5e]{width:100%;width:300px;height:40px;padding:4px 0}.video-info[data-v-1c859b5e]{padding:8px;box-sizing:border-box}.video-player[data-v-1c859b5e]{width:100%;max-width:360px;height:auto;max-height:200px;-o-object-fit:contain;object-fit:contain;outline:none;cursor:pointer}.video-info[data-v-1c859b5e]{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;pointer-events:auto}.video-name[data-v-1c859b5e]{font-size:12px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.video-thumb[data-v-1c859b5e]{position:relative;display:flex;align-items:center;justify-content:center}.video-icon[data-v-1c859b5e]{position:absolute;font-size:32px;color:hsla(0,0%,100%,.8);text-shadow:0 2px 8px rgba(0,0,0,.5)}.canvas-node.text[data-v-1c859b5e]{border-left:3px solid #6366f1}.canvas-node.image[data-v-1c859b5e]{border-left:3px solid #10b981}.canvas-node.audio[data-v-1c859b5e]{border-left:3px solid #f59e0b}.canvas-node.video[data-v-1c859b5e]{border-left:3px solid #ec4899}.text-editor-panel[data-v-1c859b5e]{position:absolute;top:calc(100% + 8px);left:-20px;right:-20px;background-color:#f5f5f5;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.1);padding:16px;z-index:30}.text-editor-panel.expanded[data-v-1c859b5e]{left:-100px;right:-100px}.panel-arrow[data-v-1c859b5e]{position:absolute;top:-6px;left:24px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #f5f5f5}.panel-toolbar[data-v-1c859b5e]{display:flex;justify-content:flex-end;gap:16px;margin-bottom:8px}.panel-toolbar i[data-v-1c859b5e]{font-size:16px;color:#9ca3af;cursor:pointer;transition:color .2s ease}.panel-toolbar i[data-v-1c859b5e]:hover{color:#6366f1}.panel-input-wrapper[data-v-1c859b5e]{position:relative;margin-bottom:12px}.panel-input[data-v-1c859b5e]{width:100%;height:100px;min-height:100px;max-height:300px;border:none;background-color:#fff;font-size:13px;line-height:1.6;color:#374151;outline:none;padding:12px;border-radius:4px;box-sizing:border-box;resize:vertical}.text-editor-panel.expanded .panel-input[data-v-1c859b5e]{height:200px;min-height:200px}.panel-input[data-v-1c859b5e]::-moz-placeholder{color:#9ca3af}.panel-input[data-v-1c859b5e]::placeholder{color:#9ca3af}.node-suggestions[data-v-1c859b5e]{position:absolute;top:calc(100% + 4px);left:0;right:0;background-color:#fff;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.15);max-height:200px;overflow-y:auto;z-index:40;padding:8px}.suggestion-item[data-v-1c859b5e]{display:inline-flex;align-items:center;gap:6px;padding:6px 10px 6px 6px;cursor:pointer;transition:all .2s ease;background-color:#d1fae5;border-radius:20px;margin:4px}.suggestion-item[data-v-1c859b5e]:hover{background-color:#a7f3d0;transform:translateY(-1px)}.tag-icon[data-v-1c859b5e]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:#059669;color:#fff;border-radius:50%;font-size:10px;font-weight:700}.tag-name[data-v-1c859b5e]{font-size:13px;color:#059669;font-weight:500}.tag-close[data-v-1c859b5e]{font-size:12px;color:#059669;cursor:pointer;padding:2px;transition:opacity .2s ease}.tag-close[data-v-1c859b5e]:hover{opacity:.7}.panel-footer[data-v-1c859b5e]{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.panel-footer-row[data-v-1c859b5e]{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.image-settings[data-v-1c859b5e],.video-settings[data-v-1c859b5e]{position:relative}.settings-summary[data-v-1c859b5e]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease}.settings-summary[data-v-1c859b5e]:hover{border-color:#10b981;background-color:#f0fdf4}.summary-text[data-v-1c859b5e]{font-size:13px;color:#374151;font-weight:500}.settings-summary i[data-v-1c859b5e]{font-size:14px;color:#9ca3af;transition:transform .2s ease}.settings-detail[data-v-1c859b5e]{position:absolute;top:calc(100% + 8px);left:0;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;box-shadow:0 4px 16px rgba(0,0,0,.15);z-index:1000;min-width:200px}.setting-group[data-v-1c859b5e]{margin-bottom:8px}.setting-label[data-v-1c859b5e]{font-size:12px;color:#666;margin-bottom:6px;display:block}.aspect-grid[data-v-1c859b5e]{display:flex;flex-wrap:wrap;gap:6px}.aspect-grid.video[data-v-1c859b5e]{display:flex;gap:8px}.aspect-btn[data-v-1c859b5e]{padding:4px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:12px;cursor:pointer;transition:all .2s}.aspect-btn[data-v-1c859b5e]:hover{border-color:#10b981;color:#10b981}.aspect-btn.active[data-v-1c859b5e]{background-color:#d1fae5;border-color:#10b981;color:#059669}.resolution-group[data-v-1c859b5e]{display:flex;gap:8px}.resolution-btn[data-v-1c859b5e]{padding:4px 16px;border:1px solid #ddd;border-radius:4px;background:#fff;font-size:12px;cursor:pointer;transition:all .2s}.resolution-btn[data-v-1c859b5e]:hover{border-color:#10b981;color:#10b981}.resolution-btn.active[data-v-1c859b5e]{background-color:#d1fae5;border-color:#10b981;color:#059669}.duration-group[data-v-1c859b5e]{display:flex;align-items:center;gap:12px;width:100%}.duration-slider[data-v-1c859b5e]{flex:1;height:6px;border-radius:3px;background:#ddd;outline:none;cursor:pointer}.duration-slider[data-v-1c859b5e]::-webkit-slider-thumb{width:16px;height:16px;border-radius:50%;background:#10b981;cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.2)}.duration-value[data-v-1c859b5e]{font-size:12px;color:#666;min-width:30px}.model-select[data-v-1c859b5e]{width:160px}.send-btn[data-v-1c859b5e]{width:36px;height:36px;border:none;border-radius:50%;background-color:#10b981;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.send-btn[data-v-1c859b5e]:hover{background-color:#059669;transform:scale(1.05)}.send-btn i[data-v-1c859b5e]{font-size:16px}.toolbar[data-v-1c859b5e]{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:8px 16px;background-color:#fff;border-radius:24px;box-shadow:0 4px 16px rgba(0,0,0,.08)}.toolbar-btn[data-v-1c859b5e]{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;background-color:#f5f5ff;border-radius:16px;cursor:pointer;font-size:14px;color:#374151;transition:all .2s ease}.toolbar-btn[data-v-1c859b5e]:hover{background-color:rgba(99,102,241,.15);color:#6366f1}.toolbar-btn i[data-v-1c859b5e]{font-size:16px}.zoom-info[data-v-1c859b5e]{margin-left:12px;padding-left:12px;border-left:1px solid #e0e0ff;font-size:14px;color:#6b7280;font-weight:500}.node-upload-bar[data-v-1c859b5e]{position:absolute;top:-44px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background-color:#f5f5f5;border-radius:8px 8px 0 0;border:1px solid #e5e7eb;border-bottom:none;z-index:25}.upload-label[data-v-1c859b5e]{display:flex;align-items:center;gap:8px;font-size:13px;color:#374151}.upload-label i[data-v-1c859b5e]{font-size:14px}.upload-btn[data-v-1c859b5e]{display:flex;align-items:center;gap:6px;padding:6px 12px;background-color:#10b981;color:#fff;border-radius:16px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.upload-btn[data-v-1c859b5e]:hover{background-color:#059669}.upload-btn i[data-v-1c859b5e]:first-child{font-size:12px}.hidden-input-wrapper[data-v-1c859b5e],.hidden-input[data-v-1c859b5e]{position:absolute;visibility:hidden;width:0;height:0;overflow:hidden}.asset-filter-group[data-v-1c859b5e]{display:flex;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e0e0e0}.filter-btn[data-v-1c859b5e]{padding:6px 16px;border:1px solid #d9d9d9;border-radius:20px;background-color:#fff;color:#666;font-size:13px;cursor:pointer;transition:all .2s ease}.filter-btn[data-v-1c859b5e]:hover{border-color:#10b981;color:#10b981}.filter-btn.active[data-v-1c859b5e]{background-color:#10b981;border-color:#10b981;color:#fff}.asset-library-list[data-v-1c859b5e]{display:flex;flex-wrap:wrap;gap:12px;max-height:400px;overflow-y:auto;padding:12px 0}.asset-item[data-v-1c859b5e]{width:calc(25% - 10px);cursor:pointer;text-align:center}.asset-preview[data-v-1c859b5e]{width:100%;height:80px;border-radius:8px;overflow:hidden;background-color:#f5f5f5;display:flex;align-items:center;justify-content:center}.asset-preview img[data-v-1c859b5e]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.audio-preview-item[data-v-1c859b5e]{background-color:#fef3c7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.video-preview-item[data-v-1c859b5e]{background-color:#000}.video-preview-item video[data-v-1c859b5e]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.audio-preview-item i[data-v-1c859b5e]{font-size:24px;color:#f59e0b}.asset-audio-player[data-v-1c859b5e]{width:100%;max-width:200px;height:36px}.asset-name[data-v-1c859b5e]{display:block;font-size:12px;color:#374151;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.empty-state[data-v-1c859b5e]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:#9ca3af}.empty-state i[data-v-1c859b5e]{font-size:48px;margin-bottom:12px}.empty-state span[data-v-1c859b5e]{font-size:14px}