.confirm-overlay[data-v-c6b12d71]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.confirm-box[data-v-c6b12d71]{width:min(400px,100%);background:#fff;border-radius:8px;box-shadow:0 12px 40px #0000002e;overflow:hidden;font-size:14px;color:#303133}.confirm-header[data-v-c6b12d71]{padding:16px 20px 8px;font-size:16px;font-weight:600;line-height:1.4}.confirm-body[data-v-c6b12d71]{padding:8px 20px 20px;line-height:1.6;color:#606266;white-space:pre-wrap;word-break:break-word}.confirm-footer[data-v-c6b12d71]{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px 16px;background:#f5f7fa;border-top:1px solid #ebeef5}.btn-cancel[data-v-c6b12d71],.btn-ok[data-v-c6b12d71]{min-width:72px;padding:8px 16px;border-radius:4px;font-size:14px;cursor:pointer;border:1px solid #dcdfe6;background:#fff;color:#606266}.btn-cancel[data-v-c6b12d71]:hover{color:#409eff;border-color:#c6e2ff;background:#ecf5ff}.btn-ok[data-v-c6b12d71]{background:#409eff;border-color:#409eff;color:#fff}.btn-ok[data-v-c6b12d71]:hover{background:#66b1ff;border-color:#66b1ff}.btn-ok.danger[data-v-c6b12d71]{background:#f56c6c;border-color:#f56c6c}.btn-ok.danger[data-v-c6b12d71]:hover{background:#f78989;border-color:#f78989}.login-container[data-v-fc0ddd5c]{display:flex;width:100vw;height:100vh;height:100dvh;background-color:#f5f7fa;overflow:hidden;font-family:Segoe UI,Microsoft YaHei,PingFang SC,sans-serif}.login-form-wrapper[data-v-fc0ddd5c]{flex:0 0 40%;min-width:420px;max-height:100%;position:relative;display:flex;align-items:center;justify-content:center;padding:72px 56px 28px;overflow:hidden;z-index:2}.login-form[data-v-fc0ddd5c]{width:100%;max-width:400px;margin-top:12px}.brand-header[data-v-fc0ddd5c]{position:absolute;top:14px;left:10px;z-index:3}.logo[data-v-fc0ddd5c]{display:flex;align-items:center;gap:12px}.logo-img[data-v-fc0ddd5c]{width:48px;height:48px;margin-left:4px;object-fit:contain;flex-shrink:0;display:block}.company-name[data-v-fc0ddd5c]{font-size:28px;font-weight:700;color:#1a1a1a;letter-spacing:.04em;margin:0;line-height:1.2}.login-title h2[data-v-fc0ddd5c]{font-size:24px;font-weight:600;color:#1a1a1a;margin:0 0 6px}.login-title p[data-v-fc0ddd5c]{font-size:15px;color:#1677ff;margin:0 0 22px}.login-form-content[data-v-fc0ddd5c]{display:block}.form-item[data-v-fc0ddd5c]{margin-bottom:14px}.field-label[data-v-fc0ddd5c]{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#1a1a1a;line-height:1.4}.input-wrap[data-v-fc0ddd5c]{display:flex;align-items:center;height:44px;padding:0 14px;background:#fff;border:1px solid #dcdfe6;border-radius:8px;transition:border-color .2s,box-shadow .2s}.input-wrap[data-v-fc0ddd5c]:hover{border-color:#c0c4cc}.input-wrap[data-v-fc0ddd5c]:focus-within{border-color:#1677ff;box-shadow:0 0 0 2px #1677ff1f}.input-wrap input[data-v-fc0ddd5c]{flex:1;border:none;outline:none;font-size:15px;color:#1a1a1a;background:transparent;min-width:0}.input-wrap input[data-v-fc0ddd5c]::placeholder{color:#a8abb2}.pwd-eye[data-v-fc0ddd5c]{border:none;background:none;padding:4px;cursor:pointer;color:#a8abb2;display:flex}.pwd-eye[data-v-fc0ddd5c]:hover{color:#1677ff}.pwd-eye svg[data-v-fc0ddd5c]{width:18px;height:18px}.form-options[data-v-fc0ddd5c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.remember-label[data-v-fc0ddd5c]{display:flex;align-items:center;gap:8px;font-size:14px;color:#606266;cursor:pointer}.remember-label input[data-v-fc0ddd5c]{accent-color:#1677ff}.link-primary[data-v-fc0ddd5c]{color:#1677ff;text-decoration:none;font-size:14px}.link-primary[data-v-fc0ddd5c]:hover{color:#4096ff}.login-btn[data-v-fc0ddd5c]{width:100%;height:44px;background-color:#1677ff;border:none;border-radius:6px;font-size:16px;font-weight:500;color:#fff;cursor:pointer;transition:background .2s}.login-btn[data-v-fc0ddd5c]:hover:not(:disabled){background-color:#4096ff}.login-btn[data-v-fc0ddd5c]:disabled{opacity:.7;cursor:not-allowed}.error-msg[data-v-fc0ddd5c]{margin:12px 0 0;font-size:13px;color:#f56c6c;text-align:center}.register-tip[data-v-fc0ddd5c]{text-align:center;margin-top:12px;color:#666;font-size:14px}.feature-list[data-v-fc0ddd5c]{display:flex;justify-content:space-between;margin-top:28px;gap:8px}.feature-item[data-v-fc0ddd5c]{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;min-width:0}.feature-item-icon[data-v-fc0ddd5c]{display:flex;align-items:center;justify-content:center;height:28px}.feature-item-icon[data-v-fc0ddd5c] svg{width:24px;height:24px}.feature-item h4[data-v-fc0ddd5c]{font-size:14px;font-weight:500;color:#1a1a1a;margin:8px 0 4px}.feature-item p[data-v-fc0ddd5c]{font-size:12px;color:#666;margin:0;line-height:1.4}.product-showcase[data-v-fc0ddd5c]{flex:1;min-width:0;height:100%;background:#eef2f7 url(/login-showcase-bg.png) center center / cover no-repeat}@media (max-width: 1100px){.login-form-wrapper[data-v-fc0ddd5c]{padding:0 40px;flex:0 0 45%;min-width:360px}.brand-header[data-v-fc0ddd5c]{top:20px;left:12px}.logo-img[data-v-fc0ddd5c]{width:53px;height:53px}.feature-list[data-v-fc0ddd5c]{flex-wrap:wrap;gap:16px;justify-content:center}.feature-item[data-v-fc0ddd5c]{flex:0 0 45%}}@media (max-width: 900px){.login-container[data-v-fc0ddd5c]{flex-direction:column;overflow-y:auto}.login-form-wrapper[data-v-fc0ddd5c]{flex:none;width:100%;min-width:0;padding:120px 24px 32px}.brand-header[data-v-fc0ddd5c]{top:16px;left:10px}.login-form[data-v-fc0ddd5c]{margin-top:0}.product-showcase[data-v-fc0ddd5c]{flex:none;min-height:380px;height:42vh}}.register-wrap[data-v-9de92c31]{height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f7fa}.register-box[data-v-9de92c31]{width:360px;padding:30px;background:#fff;border-radius:8px;box-shadow:0 0 12px #00000015}.inp[data-v-9de92c31]{width:100%;padding:10px;margin:10px 0;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.submit-btn[data-v-9de92c31],.back-btn[data-v-9de92c31]{width:100%;padding:10px;margin-top:8px;border:none;border-radius:4px;cursor:pointer}.submit-btn[data-v-9de92c31]{background:#42b983;color:#fff}.back-btn[data-v-9de92c31]{background:#eee;color:#333}.error[data-v-9de92c31]{color:red;margin-top:10px;text-align:center}.success[data-v-9de92c31]{color:green;margin-top:10px;text-align:center}.feature-tree-panel[data-v-2527483b]{display:flex;flex-direction:column;height:100%;background:#f5f7fa;min-width:0}.panel-head[data-v-2527483b]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #e4e7ed;background:#fff}.panel-title[data-v-2527483b]{margin:0;font-size:14px;font-weight:600;color:#303133}.head-actions[data-v-2527483b]{display:flex;gap:4px;flex-wrap:wrap}.mini-btn[data-v-2527483b]{padding:3px 8px;font-size:11px;border:1px solid #dcdfe6;border-radius:4px;background:#fff;cursor:pointer;color:#606266}.mini-btn[data-v-2527483b]:hover{border-color:#409eff;color:#409eff}.mini-btn.primary[data-v-2527483b]{background:#409eff;color:#fff;border-color:#409eff}.tree-body[data-v-2527483b]{flex:1;overflow-y:auto;padding:8px}.tree-group[data-v-2527483b]{margin-bottom:12px}.group-label[data-v-2527483b]{font-size:12px;font-weight:600;color:#909399;margin-bottom:6px;padding-left:4px}.group-empty[data-v-2527483b]{font-size:12px;color:#c0c4cc;padding:4px 8px}.node-list[data-v-2527483b]{list-style:none;margin:0;padding:0}.tree-node[data-v-2527483b]{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:4px;cursor:pointer;font-size:13px;color:#303133}.tree-node[data-v-2527483b]:hover{background:#ecf5ff}.tree-node.selected[data-v-2527483b]{background:#d9ecff;border:1px solid #b3d8ff}.tree-node.disabled[data-v-2527483b]{opacity:.45}.node-icon[data-v-2527483b]{width:16px;text-align:center;color:#409eff}.node-name[data-v-2527483b]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-ops[data-v-2527483b]{display:flex;gap:2px}.op[data-v-2527483b]{border:none;background:transparent;cursor:pointer;padding:0 4px;font-size:12px;color:#909399}.op.danger[data-v-2527483b]:hover{color:#f56c6c}.panel-foot[data-v-2527483b]{padding:10px 12px;border-top:1px solid #e4e7ed;background:#fff}.apply-btn[data-v-2527483b]{width:100%;padding:8px;border:none;border-radius:4px;background:#67c23a;color:#fff;font-size:13px;cursor:pointer}.apply-btn[data-v-2527483b]:disabled{opacity:.6;cursor:not-allowed}.param-modal-mask[data-v-2527483b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:2000;display:flex;align-items:center;justify-content:center}.param-modal[data-v-2527483b]{background:#fff;border-radius:8px;padding:16px 20px;width:min(360px,92vw);box-shadow:0 8px 24px #00000026}.param-modal h4[data-v-2527483b]{margin:0 0 12px;font-size:15px}.field[data-v-2527483b]{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:13px}.field.block[data-v-2527483b]{flex-direction:column;align-items:stretch}.field span[data-v-2527483b]{width:72px;flex-shrink:0;color:#606266}.field input[data-v-2527483b],.field select[data-v-2527483b],.field textarea[data-v-2527483b]{flex:1;padding:6px 8px;border:1px solid #dcdfe6;border-radius:4px}.modal-actions[data-v-2527483b]{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.datum-toolbar[data-v-26914fec]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;background:#fffffff2;border-bottom:1px solid #e4e7ed;font-size:12px}.toolbar-label[data-v-26914fec]{font-size:14px;font-weight:600;color:#303133;margin-right:4px;line-height:1.35}.tb-select[data-v-26914fec]{padding:4px 8px;border:1px solid #dcdfe6;border-radius:4px;font-size:12px}.tb-select.narrow[data-v-26914fec]{min-width:56px}.tb-field[data-v-26914fec]{display:flex;align-items:center;gap:4px;color:#606266}.tb-input[data-v-26914fec]{width:64px;padding:4px 6px;border:1px solid #dcdfe6;border-radius:4px}.tb-btn[data-v-26914fec]{padding:4px 10px;border:1px solid #dcdfe6;border-radius:4px;background:#fff;cursor:pointer;font-size:12px}.tb-btn.primary[data-v-26914fec]{background:#409eff;color:#fff;border-color:#409eff}.tb-btn.danger[data-v-26914fec]{color:#f56c6c;border-color:#fbc4c4}.tb-btn.danger[data-v-26914fec]:hover{background:#fef0f0}.model-viewer[data-v-33c19242]{width:100%;height:100%;position:relative;background:#e3f2fd}.viewer-container[data-v-33c19242]{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;background:#e3f2fd}.loading-overlay[data-v-33c19242]{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#e3f2fdd9;z-index:10}.loading-spinner[data-v-33c19242]{width:40px;height:40px;border:4px solid #42b983;border-top-color:transparent;border-radius:50%;animation:spin-33c19242 1s linear infinite;margin-bottom:10px}@keyframes spin-33c19242{to{transform:rotate(360deg)}}.empty-state[data-v-33c19242]{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#999;z-index:10}.empty-icon[data-v-33c19242]{font-size:48px;margin-bottom:10px;opacity:.5}.cad-viewer-workspace[data-v-2c182507]{display:flex;flex-direction:column;flex:1;min-width:0;height:100%;overflow:hidden;background:var(--preview-bg, #e3f2fd)}.workspace-toolbar[data-v-2c182507]{flex-shrink:0;width:100%;z-index:40;border-bottom:1px solid #e4e7ed}.preview-body[data-v-2c182507]{position:relative;flex:1;min-height:0;overflow:hidden;background:var(--preview-bg, #e3f2fd)}.tree-rail[data-v-2c182507]{position:absolute;left:0;top:0;bottom:0;z-index:30;width:220px;transition:width .28s ease;overflow:hidden;border-right:1px solid #dcdfe6;background:#f5f7fa;box-shadow:2px 0 8px #0000000f;pointer-events:auto}.tree-rail.collapsed[data-v-2c182507]{width:32px;background:#f5f7faf5}.tree-slide[data-v-2c182507]{width:220px;height:100%;transition:transform .28s ease,opacity .2s ease}.tree-rail.collapsed .tree-slide[data-v-2c182507]{transform:translate(-100%);opacity:0;pointer-events:none}.tree-toggle[data-v-2c182507]{position:absolute;right:0;top:50%;z-index:31;transform:translateY(-50%);width:28px;min-height:80px;padding:8px 4px;border:1px solid #c0c4cc;border-right:none;border-radius:6px 0 0 6px;background:#fff;box-shadow:-2px 0 8px #00000014;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#606266;font-size:12px}.tree-rail.collapsed .tree-toggle[data-v-2c182507]{border-radius:0 6px 6px 0;border-right:1px solid #c0c4cc;border-left:none;box-shadow:2px 0 8px #00000014}.tree-toggle[data-v-2c182507]:hover{color:#409eff;border-color:#b3d8ff;background:#ecf5ff}.toggle-icon[data-v-2c182507]{font-size:18px;font-weight:700;line-height:1}.toggle-label[data-v-2c182507]{writing-mode:vertical-rl;letter-spacing:1px;font-size:11px}.viewer-canvas-wrap[data-v-2c182507]{position:absolute;top:0;right:0;bottom:0;left:0;min-width:0;min-height:0;background:var(--preview-bg, #e3f2fd)}.viewer-canvas-wrap[data-v-2c182507] .model-viewer,.viewer-canvas-wrap[data-v-2c182507] .viewer-container{width:100%;height:100%;background:var(--preview-bg, #e3f2fd)}.ai-chat[data-v-6f648c46]{width:100%;height:100%;display:flex;flex-direction:column}.chat-header[data-v-6f648c46]{background-color:#f8f9fa;padding:12px 16px;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center}.chat-title[data-v-6f648c46]{font-size:18px;font-weight:600;color:#2c3e50;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;letter-spacing:.5px;text-shadow:0 1px 2px rgba(0,0,0,.1)}.chat-messages[data-v-6f648c46]{flex:1;padding:12px;overflow-y:auto;min-height:0}.message[data-v-6f648c46]{margin-bottom:12px}.user-message[data-v-6f648c46]{text-align:right}.user-message .message-content[data-v-6f648c46]{background-color:#42b983;color:#fff;margin-left:auto}.ai-message .message-content[data-v-6f648c46]{background-color:#f5f5f5;border:1px solid #e5e5e5;margin-right:auto}.message-content[data-v-6f648c46]{display:inline-block;padding:8px 12px;border-radius:8px;max-width:85%}.message-content p[data-v-6f648c46]{margin:0 0 8px;font-size:14px;line-height:1.5}.message-content p[data-v-6f648c46]:last-child{margin-bottom:0}.code-block[data-v-6f648c46]{background-color:#1e1e1e;color:#ccc;padding:8px;border-radius:4px;font-family:Consolas,Monaco,monospace;font-size:12px;overflow-x:auto;white-space:pre-wrap;word-break:break-all;max-height:300px;overflow-y:auto}.cae-result[data-v-6f648c46]{background-color:#e8f4f8;border-radius:4px;padding:8px;margin-top:8px}.cae-item[data-v-6f648c46]{display:flex;justify-content:space-between;padding:4px 0}.cae-label[data-v-6f648c46]{font-weight:700;color:#333}.cae-value[data-v-6f648c46]{color:#007bff;font-weight:700}.cae-report[data-v-6f648c46]{display:block;text-align:center;margin-top:8px;padding:6px;background-color:#007bff;color:#fff;border-radius:4px;text-decoration:none;font-size:12px}.cae-report[data-v-6f648c46]:hover{background-color:#0056b3}.plm-card[data-v-6f648c46]{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;padding:12px;margin-top:8px}.plm-card h3[data-v-6f648c46]{color:#495057;font-size:15px;margin:0 0 8px;padding-bottom:4px;border-bottom:1px solid #eee}.plm-card h4[data-v-6f648c46]{color:#6c757d;font-size:13px;margin:8px 0 4px}.plm-card ul[data-v-6f648c46]{margin:0;padding-left:20px}.plm-card li[data-v-6f648c46]{font-size:13px;line-height:1.6;color:#495057}.chat-input[data-v-6f648c46]{display:flex;gap:8px;padding:12px;border-top:1px solid #e5e5e5;align-items:flex-end}.attach-btn[data-v-6f648c46]{width:40px;height:40px;border:1px solid #ddd;background-color:#fff;color:#666;border-radius:50%;cursor:pointer;font-size:20px;font-weight:700;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.attach-btn[data-v-6f648c46]:hover{background-color:#f0f0f0;border-color:#42b983;color:#42b983}.input[data-v-6f648c46]{flex:1;padding:12px 16px;border:1px solid #ddd;border-radius:24px;font-size:14px;min-height:40px;max-height:120px;resize:none;overflow-y:auto}.input[data-v-6f648c46]:focus{outline:none;border-color:#42b983;box-shadow:0 0 0 2px #42b9831a}.btn[data-v-6f648c46]{width:70px;height:40px;background-color:#42b983;color:#fff;border:none;border-radius:24px;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background-color .2s}.btn[data-v-6f648c46]:hover{background-color:#3aa573}.new-chat-btn[data-v-6f648c46]{margin:10px 12px;padding:6px 12px;background-color:#f0f0f0;color:#666;border:1px solid #ddd;border-radius:16px;cursor:pointer;font-size:12px;transition:all .2s}.new-chat-btn[data-v-6f648c46]:hover{background-color:#e0e0e0;border-color:#42b983;color:#42b983}.chat-actions[data-v-6f648c46]{display:flex;justify-content:flex-end;padding:0;margin:0}.bottom-buttons[data-v-6f648c46]{display:flex;gap:10px;padding:10px 15px;border-top:1px solid #eee}.bottom-buttons .action-btn[data-v-6f648c46]{flex:1;padding:10px 14px;border:none;border-radius:20px;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s ease}.bottom-buttons .history-btn[data-v-6f648c46]{background-color:#667eea;color:#fff}.bottom-buttons .history-btn[data-v-6f648c46]:hover{background-color:#5a6fd6;transform:translateY(-1px)}.bottom-buttons .settings-btn[data-v-6f648c46]{background-color:#f0f0f0;color:#666}.bottom-buttons .settings-btn[data-v-6f648c46]:hover{background-color:#e0e0e0;transform:translateY(-1px)}.thinking-animation[data-v-6f648c46]{display:flex;align-items:center;gap:8px;padding:10px 15px}.thinking-dots[data-v-6f648c46]{display:flex;gap:4px}.thinking-dots .dot[data-v-6f648c46]{width:8px;height:8px;background-color:#42b983;border-radius:50%;animation:dotBounce-6f648c46 1.4s infinite ease-in-out}.thinking-dots .dot[data-v-6f648c46]:nth-child(1){animation-delay:-.32s}.thinking-dots .dot[data-v-6f648c46]:nth-child(2){animation-delay:-.16s}.thinking-dots .dot[data-v-6f648c46]:nth-child(3){animation-delay:0s}@keyframes dotBounce-6f648c46{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.thinking-text[data-v-6f648c46]{color:#666;font-size:14px}.cad-hint[data-v-6f648c46]{background-color:#e3f2fd;color:#1976d2;padding:8px 12px;border-radius:4px;font-size:13px;margin-top:8px;border-left:3px solid #1976d2}.modal-overlay[data-v-6f648c46]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-6f648c46]{background-color:#fff;border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003}.modal-header[data-v-6f648c46]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.modal-header h3[data-v-6f648c46]{margin:0;font-size:18px;color:#333}.close-btn[data-v-6f648c46]{background:none;border:none;font-size:24px;cursor:pointer;color:#999;padding:0;line-height:1}.close-btn[data-v-6f648c46]:hover{color:#333}.modal-body[data-v-6f648c46]{flex:1;overflow-y:auto;padding:16px}.modal-footer[data-v-6f648c46]{padding:16px 20px;border-top:1px solid #eee;text-align:right}.cancel-btn[data-v-6f648c46]{background-color:#f5f5f5;color:#666}.cancel-btn[data-v-6f648c46]:hover{background-color:#eee}.empty-state[data-v-6f648c46]{text-align:center;padding:40px;color:#999}.history-list[data-v-6f648c46]{display:flex;flex-direction:column;gap:12px}.history-item[data-v-6f648c46]{background-color:#f9f9f9;border-radius:8px;padding:12px;border:1px solid #eee}.history-item.pinned[data-v-6f648c46]{border-color:#667eea;background-color:#f0f3ff}.history-header[data-v-6f648c46]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.history-name[data-v-6f648c46]{display:flex;align-items:center;gap:6px}.pin-icon[data-v-6f648c46]{font-size:14px}.session-name[data-v-6f648c46]{font-weight:600;color:#333}.history-time[data-v-6f648c46]{font-size:12px;color:#999}.history-content[data-v-6f648c46]{margin-bottom:10px}.user-msg[data-v-6f648c46]{font-size:13px;color:#333;margin:0 0 4px;padding:6px 10px;background-color:#42b983;color:#fff;border-radius:4px;display:inline-block}.ai-msg[data-v-6f648c46]{font-size:13px;color:#666;margin:0;padding:6px 10px;background-color:#fff;border:1px solid #ddd;border-radius:4px;max-height:60px;overflow-y:auto}.history-actions[data-v-6f648c46]{display:flex;gap:8px}.action-btn[data-v-6f648c46]{padding:4px 10px;font-size:12px;border:none;border-radius:4px;cursor:pointer}.edit-btn[data-v-6f648c46]{background-color:#fff;color:#667eea;border:1px solid #667eea}.edit-btn[data-v-6f648c46]:hover{background-color:#f0f3ff}.pin-btn[data-v-6f648c46]{background-color:#fff;color:#f5a623;border:1px solid #f5a623}.pin-btn[data-v-6f648c46]:hover{background-color:#fffef5}.delete-btn[data-v-6f648c46]{background-color:#fff;color:#e74c3c;border:1px solid #e74c3c}.delete-btn[data-v-6f648c46]:hover{background-color:#fff5f5}.edit-input[data-v-6f648c46]{padding:4px 8px;font-size:13px;border:1px solid #667eea;border-radius:4px;outline:none}.edit-input[data-v-6f648c46]:focus{border-color:#5a6fd6}.code-editor[data-v-eb72b80f]{width:100%;height:100%;display:flex;flex-direction:column;background:#1e1e1e;border-radius:4px;overflow:hidden}.editor-header[data-v-eb72b80f]{display:flex;justify-content:flex-end;align-items:center;padding:12px 16px;background:#252526;border-bottom:1px solid #3c3c3c}.btn-group[data-v-eb72b80f]{display:flex;gap:8px}.btn[data-v-eb72b80f]{display:flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary[data-v-eb72b80f]{background:#007acc;color:#fff}.btn-primary[data-v-eb72b80f]:hover{background:#0066b8}.btn-primary[data-v-eb72b80f]:active{background:#0055a0}.btn-secondary[data-v-eb72b80f]{background:#3c3c3c;color:#ccc}.btn-secondary[data-v-eb72b80f]:hover{background:#4a4a4a;color:#fff}.btn-secondary[data-v-eb72b80f]:active{background:#555}.btn-import[data-v-eb72b80f]{background:#3498db;color:#fff}.btn-import[data-v-eb72b80f]:hover{background:#2980b9}.btn-import[data-v-eb72b80f]:active{background:#2471a3}.btn-icon[data-v-eb72b80f]{font-size:12px}.file-input[data-v-eb72b80f]{display:none}.editor-container[data-v-eb72b80f]{flex:1;width:100%;min-height:0}.modal-overlay[data-v-b6b8e3d2]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:flex-start;align-items:center;z-index:1000;padding-left:20px;animation:fadeInOverlay-b6b8e3d2 .2s ease}@keyframes fadeInOverlay-b6b8e3d2{0%{opacity:0}to{opacity:1}}.modal-content[data-v-b6b8e3d2]{width:340px;max-width:340px;height:calc(100vh - 40px);max-height:100vh;background:#1e1e1e;border-radius:12px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000080;animation:slideIn-b6b8e3d2 .3s cubic-bezier(.4,0,.2,1)}@keyframes slideIn-b6b8e3d2{0%{opacity:0;transform:translate(-30px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}.modal-overlay-closing[data-v-b6b8e3d2]{animation:fadeOutOverlay-b6b8e3d2 .3s ease forwards}@keyframes fadeOutOverlay-b6b8e3d2{0%{opacity:1}to{opacity:0}}.modal-content-closing[data-v-b6b8e3d2]{animation:slideOut-b6b8e3d2 .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes slideOut-b6b8e3d2{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-30px) scale(.95)}}.modal-header[data-v-b6b8e3d2]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#252526;border-bottom:1px solid #3c3c3c}.modal-header h3[data-v-b6b8e3d2]{margin:0;font-size:28px;font-weight:600;color:#ccc}.close-btn[data-v-b6b8e3d2]{width:28px;height:28px;background:#ffffff1a;border:none;color:#ccc;font-size:18px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn[data-v-b6b8e3d2]:hover{background:#fff3;color:#fff}.modal-body[data-v-b6b8e3d2]{flex:1;overflow:hidden;padding:8px}.run-message[data-v-b6b8e3d2]{padding:10px 16px;text-align:center;font-weight:500;font-size:13px;animation:fadeSlideIn-b6b8e3d2 .3s}.run-message.success[data-v-b6b8e3d2]{background:#00b894;color:#fff}.run-message.error[data-v-b6b8e3d2]{background:#e17055;color:#fff}@keyframes fadeSlideIn-b6b8e3d2{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.modal-overlay[data-v-f1080d9d]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-f1080d9d]{width:500px;max-width:90vw;background:#fff;border-radius:10px;display:flex;flex-direction:column;overflow:hidden}.modal-header[data-v-f1080d9d]{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:#2c3e50;color:#fff}.modal-header h3[data-v-f1080d9d]{margin:0}.close-btn[data-v-f1080d9d]{width:30px;height:30px;background:#fff3;border:none;color:#fff;font-size:20px;cursor:pointer;border-radius:50%}.close-btn[data-v-f1080d9d]:hover{background:#ffffff4d}.modal-body[data-v-f1080d9d]{padding:20px;max-height:60vh;overflow-y:auto}.setting-section[data-v-f1080d9d]{margin-bottom:25px}.setting-section h4[data-v-f1080d9d]{margin:0 0 12px;color:#2c3e50;font-size:14px}.color-options[data-v-f1080d9d]{display:flex;gap:10px;flex-wrap:wrap}.color-btn[data-v-f1080d9d]{width:40px;height:40px;border:3px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s}.color-btn[data-v-f1080d9d]:hover{transform:scale(1.1)}.color-btn.active[data-v-f1080d9d]{border-color:#3498db;box-shadow:0 0 0 2px #3498db4d}.form-group[data-v-f1080d9d]{margin-bottom:15px}.form-group label[data-v-f1080d9d]{display:block;margin-bottom:5px;font-size:13px;color:#555}.form-control[data-v-f1080d9d]{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;font-size:14px;box-sizing:border-box}.form-control[data-v-f1080d9d]:focus{outline:none;border-color:#3498db}.path-input-group[data-v-f1080d9d]{display:flex;gap:10px}.path-input[data-v-f1080d9d]{flex:1}.browse-btn[data-v-f1080d9d]{padding:10px 15px;background:#3498db;color:#fff;border:none;border-radius:5px;cursor:pointer}.browse-btn[data-v-f1080d9d]:hover{background:#2980b9}.hint[data-v-f1080d9d]{margin:5px 0 0;font-size:12px;color:#999}.modal-footer[data-v-f1080d9d]{display:flex;justify-content:flex-end;gap:10px;padding:15px 20px;background:#f8f9fa;border-top:1px solid #ddd}.btn[data-v-f1080d9d]{padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-size:14px}.btn-secondary[data-v-f1080d9d]{background:#6c757d;color:#fff}.btn-secondary[data-v-f1080d9d]:hover{background:#5a6268}.btn-primary[data-v-f1080d9d]{background:#3498db;color:#fff}.btn-primary[data-v-f1080d9d]:hover{background:#2980b9}.modal-overlay[data-v-9ec540ab]{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999;cursor:pointer;overflow:hidden}.modal-container[data-v-9ec540ab]{background:#fff;border-radius:12px;width:90%;max-width:1000px;height:90%;max-height:800px;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000026}.modal-header[data-v-9ec540ab]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e5e5;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.modal-header h3[data-v-9ec540ab]{margin:0;font-size:18px;font-weight:600}.close-btn[data-v-9ec540ab]{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s;z-index:10000;position:relative}.close-btn[data-v-9ec540ab]:hover{background:#fff3}.modal-body[data-v-9ec540ab]{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:25px}.upload-section h4[data-v-9ec540ab],.preview-section h4[data-v-9ec540ab],.result-section h4[data-v-9ec540ab]{margin:0 0 12px;font-size:16px;font-weight:600;color:#2c3e50}.upload-container[data-v-9ec540ab]{background:#f8f9fa;border:2px dashed #667eea;border-radius:8px;padding:20px;text-align:center;transition:all .3s}.upload-container[data-v-9ec540ab]:hover{border-color:#764ba2;background:#f0f1f7}.file-input[data-v-9ec540ab]{display:none}.upload-btn[data-v-9ec540ab]{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 24px;border-radius:6px;cursor:pointer;transition:transform .2s;display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:12px}.upload-btn[data-v-9ec540ab]:hover{transform:translateY(-2px)}.upload-icon[data-v-9ec540ab]{font-size:24px}.upload-btn small[data-v-9ec540ab]{font-size:12px;opacity:.9}.file-info[data-v-9ec540ab]{display:flex;justify-content:center;align-items:center;gap:10px;padding:10px;background:#fff;border:1px solid #e5e5e5;border-radius:6px}.file-name[data-v-9ec540ab]{font-size:14px;color:#333}.remove-btn[data-v-9ec540ab]{background:#e74c3c;color:#fff;border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px}.preview-container[data-v-9ec540ab]{background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;padding:20px;min-height:150px;display:flex;align-items:center;justify-content:center}.empty-preview[data-v-9ec540ab]{text-align:center;color:#666}.preview-icon[data-v-9ec540ab]{font-size:48px;display:block;margin-bottom:10px}.file-preview[data-v-9ec540ab]{width:100%;background:#fff;border:1px solid #e5e5e5;border-radius:6px;overflow:hidden}.preview-header[data-v-9ec540ab]{background:#f8f9fa;padding:12px 16px;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center}.preview-title[data-v-9ec540ab]{font-weight:600;color:#333}.file-size[data-v-9ec540ab]{font-size:12px;color:#666}.preview-content[data-v-9ec540ab]{padding:20px;text-align:center}.file-type-icon[data-v-9ec540ab]{font-size:64px;margin-bottom:15px}.preview-text[data-v-9ec540ab]{color:#666;font-size:14px;line-height:1.5}.result-header[data-v-9ec540ab]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.start-review-btn[data-v-9ec540ab]{background:linear-gradient(135deg,#1abc9c,#16a085);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:transform .2s}.start-review-btn[data-v-9ec540ab]:hover:not(:disabled){transform:translateY(-2px)}.start-review-btn[data-v-9ec540ab]:disabled{background:#95a5a6;cursor:not-allowed}.result-container[data-v-9ec540ab]{background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;padding:20px;min-height:200px}.empty-result[data-v-9ec540ab]{text-align:center;color:#666}.result-icon[data-v-9ec540ab]{font-size:48px;display:block;margin-bottom:10px}.review-results[data-v-9ec540ab]{display:flex;flex-direction:column;gap:20px}.result-status[data-v-9ec540ab]{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff;border-radius:6px;border-left:4px solid #1abc9c}.result-status .status-icon[data-v-9ec540ab]{font-size:24px;margin-bottom:0}.result-status .status-text[data-v-9ec540ab]{font-size:18px;font-weight:600;color:#2c3e50}.result-details h5[data-v-9ec540ab]{margin:0 0 12px;font-size:14px;font-weight:600;color:#2c3e50}.review-comments[data-v-9ec540ab]{display:flex;flex-direction:column;gap:12px}.comment-item[data-v-9ec540ab]{display:flex;gap:12px;padding:12px;background:#fff;border-radius:6px;border-left:4px solid #1abc9c}.comment-type[data-v-9ec540ab]{font-size:20px;flex-shrink:0;margin-top:2px}.comment-content[data-v-9ec540ab]{flex:1}.comment-title[data-v-9ec540ab]{font-weight:600;color:#333;font-size:14px;margin-bottom:4px}.comment-text[data-v-9ec540ab]{color:#666;font-size:13px;line-height:1.5}.comment-item[data-v-9ec540ab]:nth-child(3){border-left-color:#f39c12}.result-stats[data-v-9ec540ab]{display:flex;gap:15px;justify-content:space-around;background:#fff;padding:16px;border-radius:6px}.stat-item[data-v-9ec540ab]{text-align:center}.stat-label[data-v-9ec540ab]{display:block;font-size:12px;color:#666;margin-bottom:4px}.stat-value[data-v-9ec540ab]{display:block;font-size:20px;font-weight:600;color:#2c3e50}.stat-value.success[data-v-9ec540ab]{color:#1abc9c}.stat-value.warning[data-v-9ec540ab]{color:#f39c12}.stat-value.error[data-v-9ec540ab]{color:#e74c3c}.download-section[data-v-9ec540ab]{display:flex;justify-content:flex-end;margin-top:10px}.download-btn[data-v-9ec540ab]{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:transform .2s}.download-btn[data-v-9ec540ab]:hover{transform:translateY(-2px)}.modal-body[data-v-9ec540ab]::-webkit-scrollbar{width:8px}.modal-body[data-v-9ec540ab]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.modal-body[data-v-9ec540ab]::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.modal-body[data-v-9ec540ab]::-webkit-scrollbar-thumb:hover{background:#764ba2}.modal-overlay[data-v-76400f56]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.modal-container[data-v-76400f56]{background:#fff;border-radius:12px;width:92%;max-width:960px;height:90%;max-height:820px;display:flex;flex-direction:column;box-shadow:0 12px 40px #0000002e}.modal-header[data-v-76400f56]{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:linear-gradient(135deg,#5d6d7e,#34495e);color:#fff;border-radius:12px 12px 0 0}.modal-header h3[data-v-76400f56]{margin:0;font-size:18px;font-weight:600}.close-btn[data-v-76400f56]{background:none;border:none;color:#fff;font-size:26px;cursor:pointer;line-height:1}.modal-body[data-v-76400f56]{flex:1;overflow-y:auto;padding:16px 20px 24px}.toolbar-row[data-v-76400f56]{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:12px}.form-group[data-v-76400f56]{display:flex;flex-direction:column;gap:4px}.form-group label[data-v-76400f56]{font-size:12px;color:#666}.form-group select[data-v-76400f56],.form-group input[data-v-76400f56]{padding:8px 10px;border:1px solid #dcdfe6;border-radius:6px;min-width:120px}.primary-btn[data-v-76400f56]{padding:9px 18px;background:#34495e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500}.primary-btn[data-v-76400f56]:hover:not(:disabled){background:#2c3e50}.primary-btn[data-v-76400f56]:disabled{opacity:.6;cursor:not-allowed}.secondary-btn[data-v-76400f56]{padding:9px 16px;background:#fff;border:1px solid #bdc3c7;border-radius:6px;cursor:pointer}.feature-summary[data-v-76400f56]{font-size:13px;color:#555;margin-bottom:10px;padding:8px 12px;background:#f8f9fa;border-radius:6px}.summary-label[data-v-76400f56]{font-weight:600;margin-right:8px}.status-hint[data-v-76400f56]{font-size:13px;margin-bottom:10px;padding:6px 10px;border-radius:4px}.status-hint.ok[data-v-76400f56]{background:#e8f8f0;color:#1e8449}.status-hint.warn[data-v-76400f56]{background:#fef9e7;color:#b7950b}.loading-box[data-v-76400f56]{text-align:center;padding:48px 20px;color:#666}.spinner[data-v-76400f56]{width:40px;height:40px;margin:0 auto 16px;border:3px solid #ecf0f1;border-top-color:#34495e;border-radius:50%;animation:spin-76400f56 .8s linear infinite}@keyframes spin-76400f56{to{transform:rotate(360deg)}}.info-cards[data-v-76400f56]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:16px}.info-card[data-v-76400f56]{background:#f4f6f8;padding:10px 12px;border-radius:8px}.info-card .label[data-v-76400f56]{display:block;font-size:11px;color:#888;margin-bottom:4px}.info-card .value[data-v-76400f56]{font-weight:600;font-size:14px}.section[data-v-76400f56]{margin-bottom:18px}.section h4[data-v-76400f56]{margin:0 0 8px;font-size:14px;color:#2c3e50}.route-chain[data-v-76400f56]{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.route-node[data-v-76400f56]{background:#ecf0f1;padding:4px 10px;border-radius:4px;font-size:13px}.route-arrow[data-v-76400f56]{color:#95a5a6;font-size:12px}.table-wrap[data-v-76400f56]{overflow-x:auto;border:1px solid #e5e8eb;border-radius:8px}.steps-table[data-v-76400f56]{width:100%;border-collapse:collapse;font-size:13px}.steps-table th[data-v-76400f56],.steps-table td[data-v-76400f56]{padding:8px 10px;border-bottom:1px solid #eee;text-align:left}.steps-table th[data-v-76400f56]{background:#34495e;color:#fff;font-weight:500}.params-cell[data-v-76400f56]{max-width:200px;word-break:break-word}.cost-row[data-v-76400f56]{display:flex;flex-wrap:wrap;gap:16px;font-size:14px}.cost-total[data-v-76400f56]{font-weight:700;color:#c0392b}.notes[data-v-76400f56]{font-size:13px;color:#555;line-height:1.5;margin:0 0 12px}.actions[data-v-76400f56]{display:flex;gap:10px;margin-bottom:8px}.disclaimer[data-v-76400f56]{font-size:12px;color:#999;margin:0}.empty-state[data-v-76400f56]{text-align:center;padding:60px 24px;color:#888}.empty-icon[data-v-76400f56]{font-size:48px;display:block;margin-bottom:12px}.empty-state .warn[data-v-76400f56]{color:#e67e22;margin-top:12px}.modal-overlay[data-v-bd62c8ad]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.modal-container[data-v-bd62c8ad]{background:#fff;border-radius:12px;width:94%;max-width:980px;height:90%;max-height:840px;display:flex;flex-direction:column;box-shadow:0 12px 40px #0000002e}.modal-header[data-v-bd62c8ad]{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:linear-gradient(135deg,#16a085,#1abc9c);color:#fff;border-radius:12px 12px 0 0}.modal-header h3[data-v-bd62c8ad]{margin:0;font-size:18px}.close-btn[data-v-bd62c8ad]{background:none;border:none;color:#fff;font-size:26px;cursor:pointer}.tabs[data-v-bd62c8ad]{display:flex;gap:4px;padding:10px 16px 0;border-bottom:1px solid #eee;background:#f8f9fa}.tab[data-v-bd62c8ad]{padding:8px 14px;border:none;background:transparent;cursor:pointer;border-radius:6px 6px 0 0;font-size:13px;color:#666;position:relative}.tab.active[data-v-bd62c8ad]{background:#fff;color:#16a085;font-weight:600;box-shadow:0 -1px #fff}.badge[data-v-bd62c8ad]{background:#e74c3c;color:#fff;font-size:10px;padding:1px 5px;border-radius:8px;margin-left:4px}.modal-body[data-v-bd62c8ad]{flex:1;overflow-y:auto;padding:16px 20px}.tab-panel[data-v-bd62c8ad]{max-width:900px}.form-row[data-v-bd62c8ad]{margin-bottom:12px}.form-row label[data-v-bd62c8ad]{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-row input[data-v-bd62c8ad]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:6px;box-sizing:border-box}.dept-grid[data-v-bd62c8ad]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}.dept-check[data-v-bd62c8ad]{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#f4f6f8;border-radius:6px;cursor:pointer}.preview-box[data-v-bd62c8ad]{background:#eefaf7;border:1px solid #d5f0ea;border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:13px}.preview-box h4[data-v-bd62c8ad]{margin:0 0 8px;font-size:13px;color:#16a085}.preview-box ul[data-v-bd62c8ad]{margin:0;padding-left:18px}.remark[data-v-bd62c8ad]{width:100%;box-sizing:border-box;padding:8px;border:1px solid #ddd;border-radius:6px;margin-bottom:12px}.primary-btn[data-v-bd62c8ad]{padding:10px 20px;background:#16a085;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500}.primary-btn[data-v-bd62c8ad]:disabled{opacity:.6;cursor:not-allowed}.secondary-btn[data-v-bd62c8ad]{padding:6px 12px;border:1px solid #bdc3c7;background:#fff;border-radius:4px;cursor:pointer;font-size:12px}.link-btn[data-v-bd62c8ad]{background:none;border:none;color:#16a085;cursor:pointer;margin-bottom:10px}.hint[data-v-bd62c8ad]{font-size:13px;margin:10px 0;padding:8px;border-radius:4px}.hint.ok[data-v-bd62c8ad]{background:#e8f8f0;color:#1e8449}.hint.warn[data-v-bd62c8ad]{background:#fef9e7;color:#b7950b}.disclaimer[data-v-bd62c8ad]{font-size:12px;color:#999;margin-top:12px;line-height:1.5}.loading[data-v-bd62c8ad],.empty[data-v-bd62c8ad]{text-align:center;color:#888;padding:32px}.task-card[data-v-bd62c8ad]{margin-bottom:14px}[data-v-bd62c8ad] .task-inner{border:1px solid #e5e8eb;border-radius:8px;padding:12px 14px;background:#fafbfc}[data-v-bd62c8ad] .task-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px}[data-v-bd62c8ad] .meta{font-size:12px;color:#888}[data-v-bd62c8ad] .agent-sum{font-size:12px;color:#16a085;margin:0 0 10px}[data-v-bd62c8ad] .recipient-block{margin:8px 0;padding:8px;background:#fff;border-radius:6px}[data-v-bd62c8ad] .rec-title{display:flex;justify-content:space-between;font-weight:600;font-size:13px}[data-v-bd62c8ad] .status{font-size:11px;color:#e67e22}[data-v-bd62c8ad] .status.signed{color:#27ae60}[data-v-bd62c8ad] .rec-notes{font-size:12px;color:#666;margin:4px 0}[data-v-bd62c8ad] .file-list{margin:4px 0 0;padding-left:18px;font-size:12px;color:#555}[data-v-bd62c8ad] .task-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}[data-v-bd62c8ad] .sign-row{display:flex;gap:8px;flex:1;min-width:200px}[data-v-bd62c8ad] .sign-row input{flex:1;padding:6px 8px;border:1px solid #ddd;border-radius:4px}.project-header[data-v-58aa92a8]{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;background:linear-gradient(135deg,#1a2a3a,#2c3e50);color:#fff;border-radius:10px;margin-bottom:16px}.header-main h2[data-v-58aa92a8]{margin:0 0 8px;font-size:18px;font-weight:600}.meta[data-v-58aa92a8]{margin:0;font-size:12px;opacity:.85;display:flex;flex-wrap:wrap;gap:12px}.progress-ring-wrap[data-v-58aa92a8]{position:relative;width:100px;height:100px;flex-shrink:0}.progress-ring[data-v-58aa92a8]{width:100%;height:100%;transform:rotate(-90deg)}.ring-bg[data-v-58aa92a8]{fill:none;stroke:#ffffff26;stroke-width:10}.ring-fg[data-v-58aa92a8]{fill:none;stroke:#1abc9c;stroke-width:10;stroke-linecap:round;transition:stroke-dashoffset .6s ease}.progress-text[data-v-58aa92a8]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.pct[data-v-58aa92a8]{font-size:22px;font-weight:700}.lbl[data-v-58aa92a8]{font-size:11px;opacity:.8}.process-flow-section[data-v-6a67d8f7]{margin-bottom:16px}.section-title[data-v-6a67d8f7]{margin:0 0 12px;font-size:14px;font-weight:600;color:#2c3e50}.process-flow[data-v-6a67d8f7]{display:flex;align-items:flex-start;padding:12px 8px;background:#f8f9fb;border-radius:10px;overflow-x:auto}.flow-item[data-v-6a67d8f7]{flex:1;min-width:88px;text-align:center}.dot[data-v-6a67d8f7]{width:32px;height:32px;border-radius:50%;margin:0 auto 6px;line-height:32px;font-size:13px;font-weight:600;color:#fff}.wait .dot[data-v-6a67d8f7]{background:#bdc3c7}.doing .dot[data-v-6a67d8f7]{background:#409eff;box-shadow:0 0 0 4px #409eff40}.success .dot[data-v-6a67d8f7]{background:#00c48c}.error .dot[data-v-6a67d8f7]{background:#f56c6c}.label[data-v-6a67d8f7]{font-size:12px;font-weight:600;color:#333;margin-bottom:4px}.detail[data-v-6a67d8f7]{font-size:10px;color:#888;line-height:1.3;padding:0 4px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.connector[data-v-6a67d8f7]{width:24px;height:3px;background:#ddd;margin-top:28px;flex-shrink:0;border-radius:2px}.connector.done[data-v-6a67d8f7]{background:#00c48c}.connector.error[data-v-6a67d8f7]{background:#f56c6c}.data-panels[data-v-ac345fff]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}@media (max-width: 900px){.data-panels[data-v-ac345fff]{grid-template-columns:1fr}}.panel[data-v-ac345fff]{background:#fff;border:1px solid #e8ecf0;border-radius:10px;padding:12px 14px}.panel h4[data-v-ac345fff]{margin:0 0 10px;font-size:13px;color:#2c3e50;border-bottom:1px solid #eee;padding-bottom:8px}.panel dl[data-v-ac345fff]{margin:0;font-size:12px}.panel dt[data-v-ac345fff]{color:#888;margin-top:6px}.panel dd[data-v-ac345fff]{margin:2px 0 0;color:#333;font-weight:500}.stress[data-v-ac345fff]{color:#e67e22}.empty-hint[data-v-ac345fff]{font-size:12px;color:#999}.sign-rate[data-v-ac345fff]{margin-bottom:10px}.rate-bar[data-v-ac345fff]{height:8px;background:#ecf0f1;border-radius:4px;overflow:hidden;margin-bottom:6px}.rate-fill[data-v-ac345fff]{height:100%;background:linear-gradient(90deg,#1abc9c,#16a085);transition:width .5s ease}.rate-text[data-v-ac345fff]{font-size:12px;color:#555}.dept-list[data-v-ac345fff]{list-style:none;margin:0;padding:0}.dept-list li[data-v-ac345fff]{display:flex;justify-content:space-between;font-size:12px;padding:4px 0;border-bottom:1px dashed #eee}.badge[data-v-ac345fff]{font-size:10px;padding:2px 6px;border-radius:4px;background:#fef9e7;color:#b7950b}.badge.signed[data-v-ac345fff]{background:#e8f8f0;color:#1e8449}.drawer-overlay[data-v-d2c3057f]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:10000}.drawer-panel[data-v-d2c3057f]{position:fixed;top:0;right:0;width:min(520px,92vw);height:100vh;background:#f0f2f5;z-index:10001;display:flex;flex-direction:column;box-shadow:-8px 0 32px #0000001f}.drawer-header[data-v-d2c3057f]{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#2c3e50;color:#fff;flex-shrink:0}.title-row[data-v-d2c3057f]{display:flex;align-items:center;gap:10px}.title-row h2[data-v-d2c3057f]{margin:0;font-size:17px;font-weight:600}.gauge-icon[data-v-d2c3057f]{width:28px;height:28px;color:#1abc9c}.header-actions[data-v-d2c3057f]{display:flex;gap:8px}.icon-btn[data-v-d2c3057f]{width:36px;height:36px;border:none;border-radius:8px;background:#ffffff1f;color:#fff;font-size:18px;cursor:pointer}.icon-btn[data-v-d2c3057f]:hover:not(:disabled){background:#ffffff38}.icon-btn.close[data-v-d2c3057f]{font-size:22px;line-height:1}.drawer-body[data-v-d2c3057f]{flex:1;overflow-y:auto;padding:16px}.loading-state[data-v-d2c3057f],.error-state[data-v-d2c3057f]{text-align:center;padding:48px 20px;color:#666}.spinner[data-v-d2c3057f]{width:40px;height:40px;margin:0 auto 16px;border:3px solid #e0e0e0;border-top-color:#1abc9c;border-radius:50%;animation:spin-d2c3057f .8s linear infinite}@keyframes spin-d2c3057f{to{transform:rotate(360deg)}}.retry-btn[data-v-d2c3057f]{margin-top:12px;padding:8px 16px;background:#1abc9c;color:#fff;border:none;border-radius:6px;cursor:pointer}.admin-strip[data-v-d2c3057f]{display:flex;flex-wrap:wrap;gap:12px;padding:10px 12px;background:#fff3cd;border-radius:8px;font-size:12px;color:#856404;margin-bottom:16px}.insights-block[data-v-d2c3057f]{background:#fff;border-radius:10px;padding:14px 16px;border:1px solid #e8ecf0}.insights-block h3[data-v-d2c3057f]{margin:0 0 10px;font-size:14px;display:flex;align-items:center;gap:8px}.tag[data-v-d2c3057f]{font-size:10px;font-weight:400;background:#e8f6f3;color:#16a085;padding:2px 8px;border-radius:10px}.insight-summary[data-v-d2c3057f]{font-size:13px;line-height:1.6;color:#444;margin:0 0 12px}.insight-list h4[data-v-d2c3057f]{margin:0 0 6px;font-size:12px;color:#666}.insight-list ul[data-v-d2c3057f]{margin:0 0 12px;padding-left:18px;font-size:12px;line-height:1.5}.insight-list.risks ul[data-v-d2c3057f]{color:#c0392b}.drawer-fade-enter-active[data-v-d2c3057f],.drawer-fade-leave-active[data-v-d2c3057f]{transition:opacity .25s}.drawer-fade-enter-from[data-v-d2c3057f],.drawer-fade-leave-to[data-v-d2c3057f]{opacity:0}.drawer-slide-enter-active[data-v-d2c3057f],.drawer-slide-leave-active[data-v-d2c3057f]{transition:transform .28s ease}.drawer-slide-enter-from[data-v-d2c3057f],.drawer-slide-leave-to[data-v-d2c3057f]{transform:translate(100%)}.cae-pick-canvas[data-v-23ef07da]{width:100%;height:100%;min-height:320px;border-radius:8px;overflow:hidden;cursor:default}.cae-pick-canvas.interactive[data-v-23ef07da]{cursor:crosshair}.modal-overlay[data-v-97926a86]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1200;display:flex;align-items:center;justify-content:center;padding:16px}.modal-container[data-v-97926a86]{width:min(1100px,96vw);max-height:92vh;background:#1a1a2e;border-radius:12px;border:1px solid #2d2d44;color:#e8e8f0;display:flex;flex-direction:column;overflow:hidden}.modal-header[data-v-97926a86]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #2d2d44}.modal-header h3[data-v-97926a86]{margin:0;font-size:18px}.close-btn[data-v-97926a86]{background:transparent;border:none;color:#aaa;font-size:24px;cursor:pointer}.step-bar[data-v-97926a86]{display:flex;list-style:none;margin:0;padding:10px 16px;gap:8px;border-bottom:1px solid #2d2d44;flex-wrap:wrap}.step-bar li[data-v-97926a86]{display:flex;align-items:center;gap:6px;font-size:13px;color:#888;padding:4px 10px;border-radius:6px}.step-bar li.active[data-v-97926a86]{color:#4fc3f7;background:#4fc3f71f}.step-bar li.done[data-v-97926a86]{color:#81c784}.step-bar .num[data-v-97926a86]{width:20px;height:20px;border-radius:50%;background:#2d2d44;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.modal-body[data-v-97926a86]{flex:1;overflow:auto;padding:16px 18px}.step-panel[data-v-97926a86]{min-height:340px}.step-with-canvas[data-v-97926a86]{display:grid;grid-template-columns:220px 1fr;gap:12px;min-height:380px}.canvas-wrap[data-v-97926a86]{position:relative;min-height:360px;background:#12121f;border-radius:8px;border:1px solid #2d2d44;overflow:hidden}.canvas-box[data-v-97926a86]{min-height:360px;height:100%}.canvas-placeholder[data-v-97926a86]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:360px;color:#6b7289;font-size:14px;text-align:center;padding:24px}.preview-status[data-v-97926a86]{font-size:13px;margin-top:10px;color:#9aa0b5}.preview-status.ok[data-v-97926a86]{color:#81c784}.preview-status.loading[data-v-97926a86]{display:flex;align-items:center;gap:8px;color:#4fc3f7}.spinner[data-v-97926a86]{width:16px;height:16px;border:2px solid rgba(79,195,247,.25);border-top-color:#4fc3f7;border-radius:50%;animation:cae-spin-97926a86 .7s linear infinite}@keyframes cae-spin-97926a86{to{transform:rotate(360deg)}}.spinner.large[data-v-97926a86]{width:28px;height:28px;margin-bottom:12px}.hint[data-v-97926a86]{color:#9aa0b5;font-size:13px;margin:0 0 10px}.file-input[data-v-97926a86]{width:100%}.file-name[data-v-97926a86]{margin-top:8px;font-size:13px;color:#4fc3f7}.map-note[data-v-97926a86]{font-size:13px;margin:6px 0}.form-grid[data-v-97926a86]{display:grid;grid-template-columns:80px 1fr;gap:10px 12px;max-width:420px;align-items:center}.form-grid select[data-v-97926a86],.form-grid input[data-v-97926a86]{padding:8px;border-radius:6px;border:1px solid #3d3d55;background:#12121f;color:#eee}.progress-wrap[data-v-97926a86]{margin-bottom:12px}.progress-bar[data-v-97926a86]{height:6px;background:linear-gradient(90deg,#4fc3f7,#81c784);border-radius:3px;transition:width .3s;margin-bottom:6px}.result-cards .metric[data-v-97926a86]{display:flex;justify-content:space-between;margin:8px 0;font-size:14px}.result-cards .metric b[data-v-97926a86]{color:#4fc3f7}.modal-footer[data-v-97926a86]{display:flex;justify-content:flex-end;gap:10px;padding:12px 18px;border-top:1px solid #2d2d44}.primary-btn[data-v-97926a86],.secondary-btn[data-v-97926a86]{padding:8px 16px;border-radius:6px;border:none;cursor:pointer;font-size:14px}.primary-btn[data-v-97926a86]{background:#4fc3f7;color:#0f0f1a}.primary-btn[data-v-97926a86]:disabled{opacity:.5;cursor:not-allowed}.secondary-btn[data-v-97926a86]{background:#2d2d44;color:#eee}.error-hint[data-v-97926a86]{color:#ef5350;font-size:13px;margin-top:10px}.link-btn[data-v-97926a86]{display:inline-block;margin-top:10px;color:#4fc3f7;font-size:13px}.main-layout[data-v-37aec98d]{width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden}.header[data-v-37aec98d]{height:50px;background:#2c3e50;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 20px;flex-shrink:0}.header h1[data-v-37aec98d]{font-size:18px;margin:0}.header-actions[data-v-37aec98d]{display:flex;gap:10px;align-items:center}.header-toolbar-btn[data-v-37aec98d]{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:6px 12px;border-radius:8px;font-size:13px;font-weight:500;line-height:1;cursor:pointer;box-sizing:border-box;border:1px solid transparent;transition:background .2s,border-color .2s,color .2s}.dashboard-header-btn[data-v-37aec98d]{background:#1abc9c26;border-color:#1abc9c73;color:#ecf0f1}.dashboard-header-btn[data-v-37aec98d]:hover{background:#1abc9c47;border-color:#1abc9c}.user-btn[data-v-37aec98d]{background:#ffffff1a;border-color:#ffffff47;color:#ecf0f1}.user-btn[data-v-37aec98d]:hover{background:#ffffff2e;border-color:#fff6;color:#fff}.user-btn.active[data-v-37aec98d]{background:#ffffff38;border-color:#ffffff73;color:#fff}.dashboard-gauge-icon[data-v-37aec98d]{width:22px;height:22px;flex-shrink:0;color:#1abc9c}.user-avatar[data-v-37aec98d]{width:22px;height:22px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1}.dropdown-arrow[data-v-37aec98d]{font-size:10px;opacity:.85;transition:transform .2s ease}.user-btn.active .dropdown-arrow[data-v-37aec98d]{transform:rotate(180deg)}@media (max-width: 720px){.dashboard-label[data-v-37aec98d]{display:none}}.content[data-v-37aec98d]{flex:1;display:flex;width:100%;min-height:0}.sidebar-panel[data-v-37aec98d]{width:148px;flex-shrink:0;height:100%;min-height:0;background:#2c3e50;display:flex;flex-direction:column;padding:8px;gap:6px;overflow:hidden;box-sizing:border-box}.function-block[data-v-37aec98d]{flex:1 1 0;min-height:0;display:flex;flex-direction:column}.function-block.reserved .func-btn[data-v-37aec98d]{background:#34495e;opacity:.7}.func-btn[data-v-37aec98d]{width:100%;height:100%;min-height:0;padding:6px 8px;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transition:background .2s,box-shadow .2s;font-size:12px;line-height:1.25;box-sizing:border-box}.func-btn[data-v-37aec98d]:hover:not(:disabled){box-shadow:0 2px 8px #00000047;filter:brightness(1.06)}.func-btn[data-v-37aec98d]:disabled{cursor:not-allowed}.func-btn .icon[data-v-37aec98d]{font-size:20px;line-height:1}.func-btn .badge[data-v-37aec98d]{font-size:11px;background:#f39c12;padding:2px 8px;border-radius:10px}.code-btn[data-v-37aec98d]{background:#3498db}.plm-btn[data-v-37aec98d]{background:#27ae60}.cae-btn[data-v-37aec98d]{background:#9b59b6}.rag-btn[data-v-37aec98d]{background:#e67e22}.review-btn[data-v-37aec98d]{background:#1abc9c}.process-btn[data-v-37aec98d]{background:#7f8c8d}.dept-btn[data-v-37aec98d]{background:#e96443}.viewer-panel[data-v-37aec98d]{flex:1;height:100%;overflow:hidden;transition:background-color .3s;display:flex;flex-direction:column;min-width:0}.chat-panel[data-v-37aec98d]{width:350px;height:100%;overflow:hidden}.header-actions[data-v-37aec98d]{position:relative}.user-menu[data-v-37aec98d]{position:relative;display:inline-block}.dropdown-menu[data-v-37aec98d]{position:absolute;top:calc(100% + 4px);right:0;background:#f8f9fa;border-radius:8px;box-shadow:0 4px 16px #0000001f;width:100%;min-width:max-content;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .25s cubic-bezier(.4,0,.2,1);border:1px solid #e9ecef}.dropdown-menu.show[data-v-37aec98d]{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item[data-v-37aec98d]{display:block;width:calc(100% - 8px);padding:10px 16px;background:#f1f3f4;border:none;text-align:left;cursor:pointer;font-size:14px;color:#495057;transition:all .2s ease;border-radius:6px;margin:2px 4px}.dropdown-item[data-v-37aec98d]:hover{background:#e9ecef;color:#2c3e50}.dropdown-item[data-v-37aec98d]:active,.dropdown-item.active[data-v-37aec98d]{background:#d1d5db;color:#1f2937}.plm-container[data-v-691c89bc]{display:flex;height:100vh}.plm-sidebar[data-v-691c89bc]{width:220px;background:#2f4050;color:#fff;padding:20px 0}.plm-sidebar h3[data-v-691c89bc]{text-align:center;margin-bottom:20px}.plm-sidebar li[data-v-691c89bc]{list-style:none;padding:12px 20px;cursor:pointer}.plm-sidebar li[data-v-691c89bc]:hover{background:#1f2d3d}.plm-sidebar a[data-v-691c89bc]{color:#fff;text-decoration:none;display:block}.plm-sidebar a.router-link-active[data-v-691c89bc]{color:#17a2b8;font-weight:700}.plm-content[data-v-691c89bc]{flex:1;padding:20px;background:#f3f3f4;overflow-y:auto}.plm-table[data-v-691c89bc]{width:100%;border-collapse:collapse;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:15px 0;overflow:hidden}.plm-table th[data-v-691c89bc]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 15px;text-align:left;font-weight:600;font-size:14px;border-bottom:2px solid #e5e5e5}.plm-table td[data-v-691c89bc]{padding:12px 15px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#333;line-height:1.5}.plm-table tr[data-v-691c89bc]:hover{background-color:#f8f9fa}.plm-table tr:last-child td[data-v-691c89bc]{border-bottom:none}.plm-btn[data-v-691c89bc]{padding:6px 12px;margin-right:5px;border:none;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s;text-decoration:none;display:inline-block}.plm-btn-primary[data-v-691c89bc]{background-color:#667eea;color:#fff}.plm-btn-primary[data-v-691c89bc]:hover{background-color:#5a6fd8}.plm-btn-secondary[data-v-691c89bc]{background-color:#6c757d;color:#fff}.plm-btn-secondary[data-v-691c89bc]:hover{background-color:#5a6268}.plm-header[data-v-691c89bc]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.plm-header h2[data-v-691c89bc]{margin:0;font-size:20px;color:#2c3e50}.plm-list[data-v-691c89bc]{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:0;margin:15px 0;list-style:none;overflow:hidden}.plm-list li[data-v-691c89bc]{padding:12px 15px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#333;cursor:pointer;transition:background-color .2s;line-height:1.5}.plm-list li[data-v-691c89bc]:hover{background-color:#f8f9fa}.plm-list li[data-v-691c89bc]:last-child{border-bottom:none}.dashboard[data-v-2f56a23b]{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:20px;padding:20px}.card[data-v-2f56a23b]{background:#fff;padding:30px;text-align:center;border-radius:8px;box-shadow:0 2px 8px #eee}.cae-container[data-v-f270cb18]{height:100%;display:flex;flex-direction:column;background:#0f0f1a;color:#eee}.cae-header[data-v-f270cb18]{padding:15px 20px;background:linear-gradient(135deg,#667eea,#764ba2)}.header-row[data-v-f270cb18]{display:flex;align-items:center;justify-content:space-between;gap:12px}.wizard-open-btn[data-v-f270cb18]{padding:8px 16px;border:none;border-radius:8px;background:#fff3;color:#fff;cursor:pointer;font-size:14px;white-space:nowrap}.wizard-open-btn[data-v-f270cb18]:hover{background:#ffffff52}.cae-header h2[data-v-f270cb18]{margin:0 0 5px;font-size:20px}.cae-header .subtitle[data-v-f270cb18]{margin:0;font-size:12px;opacity:.8}.cae-content[data-v-f270cb18]{flex:1;display:flex;gap:15px;padding:15px;min-height:0}.params-panel[data-v-f270cb18]{width:220px;background:#1e1e2e;border-radius:10px;padding:15px;display:flex;flex-direction:column;gap:15px}.panel-section h3[data-v-f270cb18]{font-size:13px;margin:0 0 8px;color:#8892b0}.file-input[data-v-f270cb18]{width:100%;padding:8px;background:#2d2d3d;border:1px solid #3d3d4d;border-radius:5px;color:#eee}.file-name[data-v-f270cb18]{font-size:11px;color:#8892b0;margin:5px 0 0;word-break:break-all}.material-select[data-v-f270cb18]{width:100%;padding:8px;background:#2d2d3d;border:1px solid #3d3d4d;border-radius:5px;color:#eee}.force-input[data-v-f270cb18]{display:flex;align-items:center;gap:8px}.force-input input[data-v-f270cb18]{flex:1;padding:8px;background:#2d2d3d;border:1px solid #3d3d4d;border-radius:5px;color:#eee}.force-input span[data-v-f270cb18]{color:#8892b0}.panel-section label[data-v-f270cb18]{display:flex;align-items:center;gap:8px;margin:5px 0;font-size:13px;cursor:pointer}.preview-btn[data-v-f270cb18]{padding:10px;background:#3498db;border:none;border-radius:8px;color:#fff;font-weight:700;cursor:pointer;transition:background .2s}.preview-btn[data-v-f270cb18]:hover:not(:disabled){background:#2980b9}.preview-btn[data-v-f270cb18]:disabled{opacity:.6;cursor:not-allowed}.run-btn[data-v-f270cb18]{padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-weight:700;cursor:pointer;transition:transform .2s}.run-btn[data-v-f270cb18]:hover:not(:disabled){transform:scale(1.02)}.run-btn[data-v-f270cb18]:disabled{opacity:.6;cursor:not-allowed}.demo-btn[data-v-f270cb18]{padding:10px;background:#3d3d4d;border:none;border-radius:8px;color:#eee;cursor:pointer}.demo-btn[data-v-f270cb18]:hover{background:#4d4d5d}.back-btn[data-v-f270cb18]{margin-top:auto;width:80px;height:45px;background:#4d4d5d;border:none;border-radius:8px;color:#eee;cursor:pointer;font-size:13px;transition:background .2s;align-self:flex-start}.back-btn[data-v-f270cb18]:hover{background:#5d5d6d}.result-panel[data-v-f270cb18]{flex:1;display:flex;flex-direction:column;gap:10px}.viz-container[data-v-f270cb18]{flex:1;background:#1a1a2e;border-radius:10px;overflow:hidden;min-height:0}.three-canvas[data-v-f270cb18]{width:100%;height:100%}.result-info[data-v-f270cb18]{display:flex;gap:15px}.result-item[data-v-f270cb18]{flex:1;background:#1e1e2e;padding:12px;border-radius:8px;display:flex;flex-direction:column;gap:5px}.result-item .label[data-v-f270cb18]{font-size:12px;color:#8892b0}.result-item .value[data-v-f270cb18]{font-size:18px;font-weight:700}.result-item .stress[data-v-f270cb18]{color:#e74c3c}.result-item .displacement[data-v-f270cb18]{color:#3498db}.result-item .safety[data-v-f270cb18]{color:#2ecc71}.report-link[data-v-f270cb18]{text-align:center}.download-btn[data-v-f270cb18]{display:inline-block;padding:10px 25px;background:#27ae60;color:#fff;text-decoration:none;border-radius:8px;transition:background .2s}.download-btn[data-v-f270cb18]:hover{background:#2ecc71}.rag-manage-container[data-v-ada6c39c]{padding:24px;background:#fff;min-height:calc(100vh - 60px)}.page-header[data-v-ada6c39c]{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.page-title[data-v-ada6c39c]{font-size:22px;font-weight:700;margin-bottom:0;color:#333}.mode-tabs[data-v-ada6c39c]{display:flex;gap:8px}.mode-tab[data-v-ada6c39c]{padding:8px 14px;border:1px solid #dcdfe6;border-radius:6px;background:#fff;color:#606266;cursor:pointer}.mode-tab.active[data-v-ada6c39c]{background:#409eff;border-color:#409eff;color:#fff}.mode-banner[data-v-ada6c39c]{margin-bottom:18px;padding:12px 14px;border-radius:6px;font-size:14px;line-height:1.6;background:#f5f7fa;color:#606266}.mode-banner.remote[data-v-ada6c39c]{background:#ecf5ff;border:1px solid #d9ecff}.warn-text[data-v-ada6c39c]{color:#e6a23c;margin-left:8px}.console-link[data-v-ada6c39c]{margin-left:12px;color:#409eff;text-decoration:none}.console-link[data-v-ada6c39c]:hover{text-decoration:underline}.doc-meta[data-v-ada6c39c]{font-size:12px;color:#909399;margin-left:10px}.search-row-wrap[data-v-ada6c39c]{margin-bottom:18px}.search-row-wrap .chat-input[data-v-ada6c39c]{margin-bottom:0}.kb-select-wrap[data-v-ada6c39c]{margin-bottom:20px;font-size:15px}.kb-select-wrap select[data-v-ada6c39c]{margin-left:10px;padding:6px 10px;min-width:180px;border:1px solid #ccc;border-radius:4px}.btn-group[data-v-ada6c39c]{margin-bottom:20px;display:flex;gap:12px;align-items:center}.btn[data-v-ada6c39c]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.upload-btn[data-v-ada6c39c]{background:#409eff;color:#fff;padding:8px 16px;border-radius:4px;cursor:pointer;display:inline-block}.refresh-btn[data-v-ada6c39c]{background:#67c23a;color:#fff}.all-refresh-btn[data-v-ada6c39c]{background:#e6a23c;color:#fff}.back-workbench-btn[data-v-ada6c39c]{background:#909399;color:#fff}.back-workbench-btn[data-v-ada6c39c]:hover{background:#a6a9ad}input[type=file][data-v-ada6c39c]{display:none}.msg-box[data-v-ada6c39c]{padding:10px 15px;border-radius:4px;margin-bottom:15px}.success[data-v-ada6c39c]{background:#f0f9ff;color:#67c23a;border:1px solid #e1f3d8}.error[data-v-ada6c39c]{background:#fef0f0;color:#f56c6c;border:1px solid #fbc4c4}.doc-list-wrap[data-v-ada6c39c]{margin-top:24px}.doc-section-title[data-v-ada6c39c]{margin:0 0 16px;padding:0 0 12px 12px;font-size:18px;font-weight:600;line-height:1.35;color:#303133;border-bottom:2px solid #409eff;border-left:4px solid #409eff;background:linear-gradient(90deg,rgba(64,158,255,.08) 0%,transparent 48%);border-radius:2px 0 0 2px}.doc-empty[data-v-ada6c39c]{color:#999;font-size:14px;padding:8px 0 16px}.doc-item[data-v-ada6c39c]{padding:8px 12px;border:1px solid #eee;border-radius:4px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.doc-row-main[data-v-ada6c39c]{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:1;min-width:0}.doc-actions[data-v-ada6c39c]{display:flex;gap:8px;flex-shrink:0}.action-btn[data-v-ada6c39c]{padding:4px 12px;font-size:13px;border:1px solid #dcdfe6;border-radius:4px;background:#fff;color:#606266;cursor:pointer}.action-btn[data-v-ada6c39c]:hover{color:#409eff;border-color:#c6e2ff;background:#ecf5ff}.action-btn.primary[data-v-ada6c39c]{background:#409eff;color:#fff;border-color:#409eff}.action-btn.primary[data-v-ada6c39c]:hover{background:#66b1ff;border-color:#66b1ff;color:#fff}.action-btn.muted[data-v-ada6c39c]{color:#909399}.action-btn.muted[data-v-ada6c39c]:hover{color:#606266;background:#f4f4f5;border-color:#dcdfe6}.action-btn.danger[data-v-ada6c39c]:hover{color:#f56c6c;border-color:#fbc4c4;background:#fef0f0}.rename-input[data-v-ada6c39c]{min-width:180px;flex:1;max-width:420px;padding:6px 10px;border:1px solid #ccc;border-radius:4px}.name-label[data-v-ada6c39c],.move-label[data-v-ada6c39c]{font-size:13px;color:#666;white-space:nowrap}.kb-mini-select[data-v-ada6c39c]{padding:5px 10px;border-radius:4px;border:1px solid #ccc;min-width:130px}.name[data-v-ada6c39c]{color:#555;flex:1;min-width:120px;word-break:break-all}.chat-wrap[data-v-ada6c39c]{margin:20px 0;border:1px solid #eee;border-radius:4px;padding:15px}.chat-wrap--results[data-v-ada6c39c]{min-height:48px}.chat-input[data-v-ada6c39c]{display:flex;gap:10px;margin-bottom:15px;align-items:stretch}.search-input-shell[data-v-ada6c39c]{position:relative;width:calc((100% - 108px) / 3);min-width:140px;max-width:calc((100% - 108px) / 3)}.search-icon[data-v-ada6c39c]{position:absolute;left:10px;top:50%;transform:translateY(-50%);pointer-events:none;font-size:15px;line-height:1;-webkit-user-select:none;user-select:none;opacity:.85}.search-input[data-v-ada6c39c]{width:100%;box-sizing:border-box;padding:8px 12px 8px 36px;border:1px solid #ccc;border-radius:4px;font-size:14px}.search-input[data-v-ada6c39c]:focus{outline:none;border-color:#409eff;box-shadow:0 0 0 1px #409eff33}.send-btn[data-v-ada6c39c]{background:#409eff;color:#fff;border:none;border-radius:4px;padding:0 18px;flex-shrink:0;min-width:88px;cursor:pointer}.chat-history[data-v-ada6c39c]{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.chat-item[data-v-ada6c39c]{padding:8px 12px;border-radius:4px;max-width:80%}.user[data-v-ada6c39c]{align-self:flex-start;background:#f5fafe;border:1px solid #e1f3d8}.chat-role[data-v-ada6c39c]{font-weight:700;margin-right:8px;color:#409eff}.chat-content[data-v-ada6c39c]{color:#333;line-height:1.5}.rag-card[data-v-ada6c39c]{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:15px;margin-top:10px}.card-header[data-v-ada6c39c]{font-size:16px;font-weight:700;color:#333;margin-bottom:10px;border-bottom:1px solid #eee;padding-bottom:8px}.card-content[data-v-ada6c39c]{line-height:1.6;color:#555;margin-bottom:10px}.card-content h2[data-v-ada6c39c]{font-size:15px;margin:10px 0;color:#333}.card-content h3[data-v-ada6c39c]{font-size:14px;margin:8px 0;color:#444}.card-content p[data-v-ada6c39c]{margin:4px 0}.card-source[data-v-ada6c39c]{margin-top:10px;padding-top:10px;border-top:1px dashed #eee}.source-title[data-v-ada6c39c]{font-size:13px;font-weight:700;color:#666;margin-bottom:6px}.source-item[data-v-ada6c39c]{font-size:12px;color:#777;margin-bottom:4px}.user-settings-container[data-v-bce7efb4]{height:100%;display:flex;flex-direction:column;background:#f5f7fa;color:#333}.user-settings-header[data-v-bce7efb4]{padding:20px;background:#fff;box-shadow:0 2px 4px #0000001a;display:flex;align-items:center;gap:15px}.back-btn[data-v-bce7efb4]{background:none;border:none;font-size:18px;cursor:pointer;color:#666}.user-settings-header h2[data-v-bce7efb4]{margin:0;font-size:20px;font-weight:600}.user-settings-content[data-v-bce7efb4]{flex:1;padding:20px;overflow-y:auto}.setting-section[data-v-bce7efb4]{background:#fff;border-radius:8px;padding:15px;margin-bottom:20px;box-shadow:0 2px 4px #0000000d}.setting-section h3[data-v-bce7efb4]{margin:0 0 8px;font-size:14px;font-weight:600;color:#666}.hint[data-v-bce7efb4]{font-size:12px;color:#888;margin:0 0 12px;line-height:1.5}.input-container[data-v-bce7efb4]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dept-select[data-v-bce7efb4]{flex:1;min-width:200px;padding:10px;border:1px solid #e0e0e0;border-radius:4px;font-size:14px}.action-btn[data-v-bce7efb4]{padding:8px 16px;background:#16a085;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer}.action-btn[data-v-bce7efb4]:hover:not(:disabled){background:#138d75}.action-btn[data-v-bce7efb4]:disabled{opacity:.6;cursor:not-allowed}.save-msg[data-v-bce7efb4]{margin-top:10px;font-size:13px;color:#16a085}.current-label[data-v-bce7efb4]{margin-top:8px;font-size:13px;color:#555}.rag-section h3[data-v-bce7efb4]{margin:0}.section-title-row[data-v-bce7efb4]{display:flex;align-items:center;gap:10px;margin-bottom:8px}.status-badge[data-v-bce7efb4]{font-size:12px;padding:2px 8px;border-radius:10px;font-weight:500}.status-ok[data-v-bce7efb4]{background:#e8f8f5;color:#16a085}.status-pending[data-v-bce7efb4]{background:#f0f0f0;color:#888}.form-grid[data-v-bce7efb4]{display:grid;grid-template-columns:140px 1fr;gap:12px 16px;align-items:center;margin-top:12px}.field-label[data-v-bce7efb4]{font-size:13px;color:#666}.field-input[data-v-bce7efb4]{width:100%;padding:10px;border:1px solid #e0e0e0;border-radius:4px;font-size:14px;box-sizing:border-box}.field-readonly[data-v-bce7efb4]{background:#f8f9fa;color:#666}.meta-line[data-v-bce7efb4]{margin:12px 0 0;font-size:12px;color:#888}.button-row[data-v-bce7efb4]{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.secondary-btn[data-v-bce7efb4]{background:#fff;color:#16a085;border:1px solid #16a085}.secondary-btn[data-v-bce7efb4]:hover:not(:disabled){background:#e8f8f5}.msg-error[data-v-bce7efb4]{color:#c0392b!important}.test-result[data-v-bce7efb4]{margin-top:14px;padding:12px;border-radius:6px;font-size:13px;line-height:1.5}.test-ok[data-v-bce7efb4]{background:#e8f8f5;border:1px solid #a3e4d7;color:#1e8449}.test-fail[data-v-bce7efb4]{background:#fdecea;border:1px solid #f5b7b1;color:#c0392b}.test-title[data-v-bce7efb4]{margin:0 0 4px;font-weight:600}.test-detail[data-v-bce7efb4]{margin:6px 0 0;font-size:12px;opacity:.9}@media (max-width: 640px){.form-grid[data-v-bce7efb4]{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box;font-family:Microsoft YaHei,sans-serif}html,body,#app{height:100vh;width:100vw;overflow:hidden}body.login-page,body.login-page #app{overflow:hidden;height:100%;min-height:100vh;min-height:100dvh}body.login-page .login-container{display:flex;width:100vw;height:100vh;height:100dvh;min-height:0;overflow:hidden;background-color:#f5f7fa}body.login-page .login-form-wrapper{flex:0 0 40%;min-width:320px;max-height:100%;overflow:hidden;padding:72px 40px 24px;box-sizing:border-box}body.login-page .login-form{max-width:400px}body.login-page .logo-img{width:56px;height:56px;object-fit:contain;display:block}body.login-page .company-name{font-size:28px;font-weight:700;color:#1a1a1a;letter-spacing:.04em}body.login-page .field-label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#1a1a1a}body.login-page .input-wrap{display:flex;align-items:center;height:44px;padding:0 14px;margin-bottom:0;background:#fff;border:1px solid #dcdfe6;border-radius:8px}body.login-page .product-showcase{flex:1;min-height:40vh;background:#eef2f7 url(/login-showcase-bg.png) center center / cover no-repeat}body.login-page .login-btn{width:100%;height:48px;background:#1677ff;border:none;border-radius:6px;color:#fff;font-size:16px;cursor:pointer}body.login-page .input-wrap{display:flex;align-items:center;height:48px;padding:0 12px;margin-bottom:16px;background:#fff;border:1px solid #dcdfe6;border-radius:6px}body.login-page .input-wrap input{flex:1;border:none;outline:none;font-size:16px;background:transparent}.layout{display:flex;height:100%;width:100%}.code-editor{width:100%;height:100%;background-color:#1e1e1e;color:#fff;border-right:1px solid #333;overflow:hidden;display:flex;flex-direction:column}.model-viewer{width:100%;height:100%;background-color:#222;border-right:1px solid #333;position:relative}.ai-chat{width:100%;height:100%;display:flex;flex-direction:column;background-color:#fff}.btn{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;background-color:#42b983;color:#fff;font-size:14px;transition:background-color .2s}.btn:hover{background-color:#359469}.btn-secondary{background-color:#606670}.btn-secondary:hover{background-color:#4a4f56}.editor-header{padding:8px 12px;background-color:#2d2d2d;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #333}.chat-header{padding:12px;background-color:#f5f5f5;border-bottom:1px solid #e5e5e5;font-weight:700;font-size:16px}.chat-messages{flex:1;padding:12px;overflow-y:auto}.chat-input{padding:12px;border-top:1px solid #e5e5e5;display:flex;gap:8px}.message{margin-bottom:12px;max-width:80%}.message.user{text-align:right}.message.bot{text-align:left}.message-content{display:inline-block;padding:8px 12px;border-radius:8px;font-size:14px;line-height:1.5}.user .message-content{background-color:#42b983;color:#fff}.bot .message-content{background-color:#f1f1f1;color:#333}.code-block{background-color:#1e1e1e;color:#fff;padding:8px;border-radius:4px;font-size:12px;overflow-x:auto;margin:4px 0}.viewer-tip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#aaa;font-size:14px;text-align:center}.loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#aaa;font-size:14px}.input{flex:1;padding:8px 12px;border:1px solid #e5e5e5;border-radius:4px;font-size:14px;outline:none}.input:focus{border-color:#42b983}
