.online-editor-container[data-v-a1741542]{min-height:100vh;background:#f5f7fb;display:flex;flex-direction:column}.editor-toolbar[data-v-a1741542]{background:#fff;padding:15px 30px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px rgba(0,0,0,.1);z-index:10}.editor-toolbar .toolbar-left[data-v-a1741542]{display:flex;align-items:center;gap:15px}.editor-toolbar .toolbar-left .editor-title[data-v-a1741542]{font-size:18px;font-weight:600;color:#555}.editor-toolbar .toolbar-right[data-v-a1741542]{display:flex;gap:10px}.editor-content[data-v-a1741542]{flex:1;display:flex;gap:20px;padding:20px;overflow:hidden}.modules-list[data-v-a1741542]{width:280px;background:#fff;border-radius:12px;padding:15px;box-shadow:0 2px 12px rgba(0,0,0,.08);overflow-y:auto}.modules-list .module-item[data-v-a1741542]{padding:12px;margin-bottom:10px;border-radius:8px;background:#f9fcff;border:2px solid transparent;cursor:pointer;transition:all .3s}.modules-list .module-item[data-v-a1741542]:hover{background:#e8f4ff}.modules-list .module-item.active[data-v-a1741542]{background:#e8f4ff;border-color:#2c7be5}.modules-list .module-item .module-header[data-v-a1741542]{display:flex;align-items:center;gap:10px}.modules-list .module-item .module-header .drag-handle[data-v-a1741542]{cursor:move;color:#909399;font-size:16px}.modules-list .module-item .module-header .module-title[data-v-a1741542]{flex:1;font-size:14px;color:#555;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modules-list .module-item .module-header .module-actions i[data-v-a1741542]{color:#f56c6c;cursor:pointer;font-size:16px}.modules-list .module-item .module-header .module-actions i[data-v-a1741542]:hover{opacity:.8}.module-editor[data-v-a1741542]{flex:1;background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 12px rgba(0,0,0,.08);overflow-y:auto}.module-editor .editor-form[data-v-a1741542]{max-width:900px}.module-editor .rich-text-editor[data-v-a1741542]{border:1px solid #dcdfe6;border-radius:4px}.no-module[data-v-a1741542]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#909399}.no-module i[data-v-a1741542]{font-size:64px;margin-bottom:15px}.no-module p[data-v-a1741542]{font-size:16px}.preview-content .preview-toolbar[data-v-a1741542]{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e8f4ff}.preview-content .preview-toolbar .preview-tip[data-v-a1741542]{margin-left:auto;font-size:13px;color:#909399}.preview-content .preview-modules[data-v-a1741542]{max-height:60vh;overflow-y:auto}.preview-content .preview-module[data-v-a1741542]{padding:20px;margin-bottom:15px;border-radius:8px;background:#f9fcff;border:2px solid #e8f4ff;cursor:pointer;transition:all .3s}.preview-content .preview-module[data-v-a1741542]:hover{background:#e8f4ff}.preview-content .preview-module.selected[data-v-a1741542]{border-color:#2c7be5;background:#e8f4ff}.preview-content .preview-module .preview-module-title[data-v-a1741542]{font-size:18px;font-weight:600;color:#555;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #2c7be5;min-width:200px;width:100%}.preview-content .preview-module .preview-module-content .info-item[data-v-a1741542]{margin-bottom:12px;line-height:1.6;color:hsla(0,0%,100%,.55)}.preview-content .preview-module .preview-module-content .info-item strong[data-v-a1741542]{color:#555;margin-right:8px}.module-types[data-v-a1741542]{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.module-types .module-type-item[data-v-a1741542]{padding:20px;border-radius:8px;border:2px solid #e8f4ff;text-align:center;cursor:pointer;transition:all .3s}.module-types .module-type-item[data-v-a1741542]:hover{border-color:#2c7be5;background:#e8f4ff}.module-types .module-type-item i[data-v-a1741542]{font-size:36px;color:#2c7be5;margin-bottom:10px}.module-types .module-type-item h4[data-v-a1741542]{font-size:16px;color:#555;margin-bottom:8px}.module-types .module-type-item p[data-v-a1741542]{font-size:13px;color:#909399;line-height:1.4}[data-v-a1741542] .preview-dialog .el-dialog__body{padding:20px 30px}