.user-menu[data-v-ed782458]{display:flex;align-items:center;gap:4px}.user-trigger[data-v-ed782458]{display:inline-flex;align-items:center;gap:8px;color:#5a6c7d}.user-name[data-v-ed782458]{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.auth-link[data-v-ed782458]{color:#5a6c7d;padding:0 6px}.captcha-img[data-v-507ad999]{width:110px;height:32px;cursor:pointer;object-fit:cover}.forgot-link[data-v-507ad999]{margin-top:6px;text-align:right}.auth-footer[data-v-507ad999],.auth-footer[data-v-98f6b958]{margin-top:16px;text-align:center;color:#666}.email-hint[data-v-e714ffaa]{color:#888;font-size:12px}.captcha-img[data-v-e714ffaa]{width:110px;height:32px;cursor:pointer;object-fit:cover}.auth-footer[data-v-e714ffaa],.auth-footer[data-v-c8a1abf4]{margin-top:16px;text-align:center;color:#666}.back-to-home-container[data-v-a03ffc1b]{position:fixed;top:0;left:0;right:0;z-index:1000}.back-bar[data-v-a03ffc1b]{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;height:48px;background:linear-gradient(135deg,#f0f4f8,#e8edf2);color:#5a6c7d;font-size:16px;font-weight:500;box-shadow:0 1px 4px #00000014;transition:all .3s ease;padding:0 24px;border-bottom:1px solid #e0e6ed}.left-actions[data-v-a03ffc1b]{display:flex;align-items:center;z-index:1}.back-icon[data-v-a03ffc1b]{font-size:18px;cursor:pointer}.brand-title[data-v-a03ffc1b]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:26px;font-weight:600;color:#3d4f5f;letter-spacing:.5px;-webkit-user-select:text;user-select:text;cursor:text}.right-icons[data-v-a03ffc1b]{display:flex;align-items:center;gap:12px;z-index:1}.help-icon[data-v-a03ffc1b]{font-size:18px;cursor:pointer}.footer-container[data-v-78f262d9]{position:fixed;bottom:0;left:0;right:0;z-index:100;background:linear-gradient(135deg,#f0f4f8,#e8edf2);border-top:1px solid #e0e6ed;box-shadow:0 -1px 4px #00000014}.footer-content[data-v-78f262d9]{display:flex;align-items:center;justify-content:center;height:40px;padding:0 24px}.footer-text[data-v-78f262d9]{display:flex;align-items:center;gap:12px;color:#5a6c7d;font-size:12px}.divider[data-v-78f262d9]{color:#d0d7de;margin:0 4px}@media (max-width: 768px){.footer-text[data-v-78f262d9]{font-size:11px;flex-wrap:wrap;justify-content:center}}.seo-landing[data-v-56dbc0c9]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.seo-landing__title[data-v-56dbc0c9],.seo-landing__subtitle[data-v-56dbc0c9],.seo-landing__desc[data-v-56dbc0c9],.seo-landing__list[data-v-56dbc0c9],.seo-landing__keywords[data-v-56dbc0c9]{margin:0;padding:0}.node-actions[data-v-b9d210c9]{display:flex;gap:2px;opacity:.6;transition:opacity .2s}[data-v-b9d210c9] .tree-node-content:hover .node-actions{opacity:1}.node-actions[data-v-b9d210c9] .ant-btn{width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;font-size:10px}.node-actions[data-v-b9d210c9] .ant-btn:focus,.node-actions[data-v-b9d210c9] .ant-btn:active,.node-actions[data-v-b9d210c9] .ant-btn:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.data-tree[data-v-43157a43]{height:550px;min-height:0;overflow-y:auto;margin-top:8px}.empty-state[data-v-43157a43]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px}.data-tree[data-v-43157a43]::-webkit-scrollbar{width:6px}.data-tree[data-v-43157a43]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.data-tree[data-v-43157a43]::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.data-tree[data-v-43157a43]::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.custom-tree[data-v-43157a43]{background:transparent}.custom-tree[data-v-43157a43] .ant-tree-node-content-wrapper{padding:0;border-radius:4px;transition:all .2s}.custom-tree[data-v-43157a43] .ant-tree-node-content-wrapper:hover{background:#f5f5f5}.custom-tree[data-v-43157a43] .ant-tree-node-selected .ant-tree-node-content-wrapper{background:#e6f7ff;border:1px solid #91d5ff}.tree-node-content[data-v-43157a43]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 8px;min-height:32px}.node-info[data-v-43157a43]{flex:1;min-width:0}.node-title[data-v-43157a43]{font-size:14px;font-weight:500;color:#333;margin-bottom:2px}.coordinate-title[data-v-43157a43],.curve-title[data-v-43157a43],.curve-group-title[data-v-43157a43]{display:flex;align-items:center;gap:6px}.coordinate-icon[data-v-43157a43]{font-size:14px;color:#52c41a;flex-shrink:0}.curve-icon[data-v-43157a43]{font-size:14px;color:#1890ff;flex-shrink:0}.curve-group-icon[data-v-43157a43]{font-size:14px;color:#fa8c16;flex-shrink:0}.tree-node-content.drawing-mode-highlight[data-v-43157a43]{background:#bae7ff!important;border-radius:4px;box-shadow:0 0 4px #1890ff4d}.custom-tree[data-v-43157a43] .ant-tree-show-line .ant-tree-child-tree>.ant-tree-treenode:not(:last-child)>.ant-tree-switcher-noop:before{border-left:1px solid #d9d9d9}.custom-tree[data-v-43157a43] .ant-tree-show-line .ant-tree-child-tree>.ant-tree-treenode:not(:last-child)>.ant-tree-switcher-noop:after{border-bottom:1px solid #d9d9d9}.custom-tree[data-v-43157a43] .ant-tree-switcher{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#666;font-size:12px}.custom-tree[data-v-43157a43] .ant-tree-switcher:hover{color:#1890ff}.custom-tree[data-v-43157a43] .ant-tree-treenode-draggable{cursor:move}.custom-tree[data-v-43157a43] .ant-tree-treenode-drag-over{background-color:#e6f7ff;border:1px dashed #1890ff}.custom-tree[data-v-43157a43] .ant-tree-treenode-drag-over>.ant-tree-node-content-wrapper{background-color:#e6f7ff}.custom-tree[data-v-43157a43] .ant-tree-treenode-draggable .ant-tree-node-content-wrapper{cursor:move}.coordinate-system-panel[data-v-58693e62]{width:100%;height:100%;background:#fff;overflow-y:auto;padding:5px;margin-top:-8px;display:flex;flex-direction:column}.coordinate-system-panel-content[data-v-58693e62]{flex:1;min-height:0}.control-card[data-v-58693e62]{margin-bottom:16px;height:100%;display:flex;flex-direction:column}.control-card[data-v-58693e62]:last-child{margin-bottom:0}.control-card[data-v-58693e62] .ant-card-body{flex:1;display:flex;flex-direction:column;padding:12px}.coord-header[data-v-58693e62]{text-align:left;display:flex;align-items:center}.header-btn[data-v-58693e62]:focus,.header-btn[data-v-58693e62]:active{outline:none;border:none;box-shadow:none}.coordinate-system-panel[data-v-58693e62]::-webkit-scrollbar{width:6px}.coordinate-system-panel[data-v-58693e62]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.coordinate-system-panel[data-v-58693e62]::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.coordinate-system-panel[data-v-58693e62]::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 768px){.coordinate-system-panel[data-v-58693e62]{padding:12px}}.color-picker-wrapper[data-v-6883958a]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.color-input[data-v-6883958a]{width:50px;height:32px;border:1px solid #d9d9d9;border-radius:4px;cursor:pointer}.color-display[data-v-6883958a]{width:32px;height:32px;border:1px solid #d9d9d9;border-radius:4px}.color-value[data-v-6883958a]{font-family:monospace;font-size:14px;color:#666}.preset-colors[data-v-6883958a]{margin-top:12px}.preset-colors-label[data-v-6883958a]{font-size:14px;color:#666;margin-bottom:8px}.preset-colors-grid[data-v-6883958a]{display:grid;grid-template-columns:repeat(12,24px);gap:4px}.preset-color-item[data-v-6883958a]{width:24px;height:24px;border-radius:4px;cursor:pointer;border:2px solid transparent;transition:border-color .2s}.preset-color-item[data-v-6883958a]:hover{border-color:var(--curve-color, var(--edfd46ae))}.preset-color-item.active[data-v-6883958a]{border-color:var(--curve-color, var(--edfd46ae));box-shadow:0 0 4px color-mix(in srgb,var(--curve-color, var(--edfd46ae)) 40%,transparent)}.preset-shapes[data-v-ba92185c]{display:flex;gap:8px}.preset-shape-item[data-v-ba92185c]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:2px solid #d9d9d9;border-radius:4px;cursor:pointer;transition:border-color .2s}.preset-shape-item[data-v-ba92185c]:hover,.preset-shape-item.active[data-v-ba92185c]{border-color:var(--curve-color, var(--aa413c84))}.preset-shape-item.active[data-v-ba92185c]{box-shadow:0 0 4px color-mix(in srgb,var(--curve-color, var(--aa413c84)) 40%,transparent)}.shape-icon[data-v-ba92185c]{display:block}.shape-icon-circle[data-v-ba92185c]{width:16px;height:16px;border-radius:50%}.shape-icon-square[data-v-ba92185c]{width:16px;height:16px}.shape-icon-diamond[data-v-ba92185c]{width:12px;height:12px;transform:rotate(45deg)}.curve-line-style-picker[data-v-5445372c]{display:flex;flex-direction:column;gap:12px}.picker-section-label[data-v-5445372c]{margin-bottom:6px;font-size:12px;color:#666}.preset-line-styles[data-v-5445372c],.preset-line-widths[data-v-5445372c]{display:flex;gap:8px}.preset-item[data-v-5445372c]{width:44px;height:36px;display:flex;align-items:center;justify-content:center;border:2px solid #d9d9d9;border-radius:4px;cursor:pointer;transition:border-color .2s}.preset-item[data-v-5445372c]:hover,.preset-item.active[data-v-5445372c]{border-color:var(--curve-color, var(--v8fca2f54))}.preset-item.active[data-v-5445372c]{box-shadow:0 0 4px color-mix(in srgb,var(--curve-color, var(--v8fca2f54)) 40%,transparent)}.line-preview[data-v-5445372c]{display:block;width:28px;height:0;border-top-color:var(--curve-color, var(--v8fca2f54));border-top-style:solid}.line-preview-dashed[data-v-5445372c]{border-top-style:dashed}.line-preview-dotted[data-v-5445372c]{border-top-style:dotted}.line-preview-dashDot[data-v-5445372c]{background:repeating-linear-gradient(to right,var(--curve-color, var(--v8fca2f54)) 0 6px,transparent 6px 10px,var(--curve-color, var(--v8fca2f54)) 10px 12px,transparent 12px 16px);height:2px;border:none}.curve-modal-form[data-v-01b37c0b] .ant-form-item{align-items:flex-start}.curve-modal-form[data-v-01b37c0b] .ant-form-item-label>label{height:32px;line-height:32px}.curve-modal-wrap .ant-modal-header{cursor:move;-webkit-user-select:none;user-select:none}.formula-display[data-v-b8c56f67]{display:inline-block;max-width:100%;overflow-x:auto}.fit-info[data-v-c8fcc3c2]{flex:1;min-width:0;padding:6px 10px;background:#fafafa;border:1px solid #f0f0f0;border-radius:4px;font-size:14px}.fit-info-item[data-v-c8fcc3c2]{display:flex;align-items:baseline;gap:6px;margin-bottom:4px}.fit-info-item[data-v-c8fcc3c2]:last-child{margin-bottom:0}.fit-info-label[data-v-c8fcc3c2]{flex:0 0 7em;text-align:right;color:#00000073}.fit-info-value[data-v-c8fcc3c2]{color:#000000d9;word-break:break-word}.fit-info-formula[data-v-c8fcc3c2]{align-items:flex-start}.fit-info-formula[data-v-c8fcc3c2] .formula-display{flex:1;min-width:0}.fit-info-empty[data-v-c8fcc3c2]{font-size:12px;color:#00000073}.fit-summary-r-squared[data-v-c8fcc3c2]{font-family:ui-monospace,monospace;font-size:15px}.fit-params-row[data-v-1894704a]{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.fit-type-hint[data-v-1894704a]{margin-bottom:20px;padding:8px 12px;border-radius:6px;background:#00000005;border:1px solid rgba(0,0,0,.06)}.fit-type-hint-text[data-v-1894704a]{font-size:13px;line-height:1.55;color:#000000bf}.fit-type-hint-note[data-v-1894704a]{margin-top:4px;font-size:12px;line-height:1.5;color:#00000073}.fit-params-row .fit-type-item[data-v-1894704a]{flex:1.6}[data-v-1894704a] .form-item-inline .ant-form-item-row{flex-flow:row nowrap;align-items:center}[data-v-1894704a] .form-item-inline .ant-form-item-label{flex:0 0 auto;padding:0 8px 0 0}[data-v-1894704a] .form-item-inline .ant-form-item-label>label{height:32px}[data-v-1894704a] .form-item-inline .ant-form-item-control{flex:1;min-width:0}.fit-params-row .form-item-inline[data-v-1894704a]{flex:1;min-width:0;margin-bottom:0}.fit-params-row[data-v-1894704a] .form-item-inline .ant-select{width:100%}.smoothing-lambda-item[data-v-1894704a]{flex:1.4;min-width:220px}.smoothing-lambda-item[data-v-1894704a] .ant-slider{margin:8px 6px 4px}.coeff-input[data-v-1894704a]{width:100%}.curve-fit-modal-wrap .ant-modal-header{cursor:move;-webkit-user-select:none;user-select:none}.grid-overlay[data-v-4563c3f8]{position:absolute;top:0;left:0;pointer-events:none}.grid-svg[data-v-4563c3f8]{position:absolute;top:0;left:0;z-index:1}.pixel-scale[data-v-4563c3f8]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3}.top-scale[data-v-4563c3f8],.left-scale[data-v-4563c3f8]{position:absolute}.top-scale[data-v-4563c3f8]{top:-20px;left:0;right:0;height:20px}.left-scale[data-v-4563c3f8]{top:0;left:-40px;width:40px;height:100%}.scale-mark[data-v-4563c3f8]{position:absolute;display:flex;align-items:center;justify-content:center}.top-scale .scale-mark[data-v-4563c3f8]{flex-direction:column;height:20px}.left-scale .scale-mark[data-v-4563c3f8]{flex-direction:row-reverse;width:40px}.scale-line[data-v-4563c3f8]{background-color:#999;position:absolute}.top-scale .scale-line[data-v-4563c3f8]{width:1px;height:10px;top:10px}.left-scale .scale-line.horizontal[data-v-4563c3f8]{height:1px;width:10px;left:30px}.scale-text[data-v-4563c3f8]{font-size:10px;color:#666;white-space:nowrap;position:absolute}.top-scale .scale-text[data-v-4563c3f8]{top:-2px;transform:translate(-50%)}.left-scale .scale-text[data-v-4563c3f8]{right:2px;transform:translateY(-50%)}.curve-drawing-container{height:100vh;display:flex;flex-direction:column;background:#f5f5f5;padding-top:48px;padding-bottom:40px}.main-layout{height:calc(100vh - 48px);background:#f5f5f5}.content-wrapper{flex:1;display:flex;position:relative;overflow:hidden;background:#f5f5f5}.main-content{flex:1;width:100%;height:100vh;background:#f5f5f5;display:flex}.data-sidebar,.list-sidebar{height:100%;background:#fff;border-right:1px solid #e8e8e8;box-shadow:2px 0 8px #0000000a;overflow:hidden;flex-shrink:0}.list-sidebar-header{padding:16px;border-bottom:1px solid #e8e8e8;background:#fafafa;display:flex;justify-content:space-between;align-items:center;min-height:57px}.list-sidebar-header h3{margin:0;font-size:16px;font-weight:600;color:#262626;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collapse-btn{color:#8c8c8c;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.collapse-btn:hover{color:#262626}.list-content-wrapper{height:calc(100vh - 113px);overflow:hidden}.sample-list{height:calc(100vh - 113px);overflow-y:auto;padding:8px 0}.sample-list :deep(.ant-list-item){padding:12px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s}.sample-list :deep(.ant-list-item:hover){background-color:#f5f5f5}.sample-list :deep(.ant-list-item-meta-title){margin-bottom:4px;font-size:14px;color:#262626}.sample-list :deep(.ant-list-item-meta-description){font-size:12px;color:#8c8c8c}.data-sidebar :deep(.coordinate-system-panel){height:100%}.canvas-container{width:100%;height:100%;position:relative;background:#fafafa;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;flex:1;padding-top:24px;padding-left:40px}.zoom-controls{position:absolute;top:16px;right:0;transform:translate(calc(100% + 8px));z-index:1000;display:flex;flex-direction:column;align-items:center;gap:4px;background:#fffffff2;border:1px solid #e8e8e8;border-radius:8px;padding:8px 4px;box-shadow:0 2px 8px #0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:auto}.zoom-controls .zoom-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#595959;transition:all .2s;outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .zoom-btn:hover{background:#f5f5f5;color:#1890ff}.zoom-controls .zoom-btn:active{background:#e6f7ff;color:#1890ff;outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .zoom-btn:focus{outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .zoom-btn:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .zoom-btn:after{display:none!important}.zoom-controls .zoom-btn.active{background:#e6f7ff;color:#1890ff}.zoom-controls .zoom-btn.active:hover{background:#bae7ff;color:#0050b3}.zoom-info{font-size:12px;color:#8c8c8c;padding:4px 8px;border-top:1px solid #f0f0f0;margin-top:4px;width:100%;text-align:center;font-weight:500}.zoom-controls .shortcuts-hint-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:#8c8c8c;border-radius:6px;outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .shortcuts-hint-btn:hover{color:#1890ff;background:#f5f5f5}.zoom-controls .shortcuts-hint-btn:active,.zoom-controls .shortcuts-hint-btn:focus,.zoom-controls .shortcuts-hint-btn:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .shortcuts-hint-btn:after{display:none!important}.shortcuts-table{border-collapse:collapse;font-size:12px;line-height:1.5}.shortcuts-table td{padding:4px 8px 4px 0;vertical-align:top}.shortcuts-table .shortcuts-key{white-space:nowrap;font-weight:600;color:#262626;padding-right:12px}:global(.shortcuts-popover .ant-popover-inner){max-width:360px}.canvas-tips{height:30px;text-align:center}.mouse-point-info{text-align:right;display:flex;flex-direction:column;align-items:flex-end;position:absolute;top:16px;right:16px;z-index:1000;max-width:300px;pointer-events:none;border-radius:6px;padding:8px 12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.coordinate-display{text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:4px;font-size:14px;line-height:1.4}.coordinate-display:last-child{margin-bottom:0}.coordinate-display .value{font-weight:600;color:#1890ff;font-family:Courier New,monospace;padding:2px 6px;border-radius:4px}.canvas-wrapper{width:var(--v4a388682);height:var(--v673f2fe4);position:relative;cursor:default;background:#fff;border:1px solid #e8e8e8;border-radius:8px;box-shadow:0 2px 8px #0000001a}.canvas-wrapper.drawing-mode{cursor:crosshair}.canvas-wrapper:not(.drawing-mode){cursor:grab}.canvas-wrapper:not(.drawing-mode) canvas{cursor:grab}.canvas-wrapper.dragging{cursor:grabbing}.canvas-wrapper.dragging canvas{cursor:grabbing}canvas{display:block;background:#fff;border-radius:8px}.konva-canvas-container{position:relative;width:var(--v4a388682);height:var(--v673f2fe4);display:flex;justify-content:flex-start;align-items:flex-start;background:var(--d65d6b40);z-index:1}.konva-canvas-container canvas{position:relative;z-index:2;border:1px solid #e8e8e8;border-radius:8px;box-shadow:0 2px 8px #0000001a}.canvas-wrapper.drag-over{border:2px dashed #1890ff;background:#1890ff0d}:deep(.ant-modal-body){padding:24px}:deep(.ant-form-item){margin-bottom:16px}:deep(.ant-form-item-label){padding-bottom:4px}:deep(.ant-table-small){font-size:12px}:deep(.ant-table-thead > tr > th){background:#fafafa;font-weight:500}:deep(.ant-table-tbody > tr:hover > td){background:#f5f5f5}:deep(.ant-btn-group){display:flex}:deep(.ant-btn-group .ant-btn){border-radius:0}:deep(.ant-btn-group .ant-btn:first-child){border-top-left-radius:6px;border-bottom-left-radius:6px}:deep(.ant-btn-group .ant-btn:last-child){border-top-right-radius:6px;border-bottom-right-radius:6px}:deep(.ant-tag){margin:0;font-size:11px;padding:2px 6px;border-radius:4px}:deep(.ant-upload){display:inline-block}:deep(.ant-divider-vertical){height:20px;margin:0 8px}:deep(.ant-card-head-title){font-size:14px;font-weight:600}:deep(.ant-card-extra){font-size:12px}:deep(.ant-tooltip-inner){font-size:12px}:deep(.ant-message){z-index:9999}.mode-indicator{margin-left:5px;margin-right:5px;margin-bottom:10px;padding:10px;border:1px solid #e8e8e8;border-radius:8px;transition:all .3s ease;text-align:left}.mode-indicator .ant-tag,.mode-indicator span{font-size:15px}.mode-indicator .ant-btn{border:none;box-shadow:none}.mode-indicator .ant-btn:focus,.mode-indicator .ant-btn:active,.mode-indicator .ant-btn:hover{border:none!important;box-shadow:none!important;outline:none!important}.mode-indicator.drawing-mode{background:#e6f7ff;border-color:#1890ff;box-shadow:0 2px 8px #1890ff26}.mode-content{display:flex;flex-direction:column;gap:8px}.mode-header{display:flex;align-items:center;gap:8px}.mode-icon{font-size:18px;flex-shrink:0}.mode-icon.drawing-icon{color:#1890ff}.mode-icon.drag-icon{color:#52c41a}.mode-tag{margin:0;font-size:14px;font-weight:500;padding:2px 8px;border-radius:4px}.mode-tip{display:flex;align-items:center;gap:6px;padding-top:8px;border-top:1px solid #f0f0f0}.mode-indicator.drawing-mode .mode-tip{border-top-color:#bae7ff}.tip-icon{font-size:14px;color:#8c8c8c;flex-shrink:0}.mode-indicator.drawing-mode .tip-icon{color:#1890ff}.tip-text{font-size:13px;color:#595959;line-height:1.5;display:inline-flex;align-items:center;gap:4px}.mode-indicator.drawing-mode .tip-text{color:#0050b3}.esc-icon{font-size:12px;margin-right:2px}@media (max-width: 768px){.canvas-wrapper{width:100%;height:100%;max-width:100vw;max-height:calc(100vh - 108px)}.data-sidebar{display:none}}.calibration-table[data-v-f141402b]{table-layout:auto;width:100%;border-collapse:collapse;margin-top:16px}.calibration-table th[data-v-f141402b],.calibration-table td[data-v-f141402b]{border:1px solid #d9d9d9;padding:8px;text-align:center;vertical-align:top;height:auto}.calibration-table th[data-v-f141402b]{background-color:#fafafa;font-weight:600}.calibration-table th[rowspan][data-v-f141402b]{vertical-align:middle}.horizontal-radio-group .ant-radio-wrapper[data-v-f141402b]{display:inline-block;margin-right:8px}.horizontal-radio-group .ant-form-item[data-v-f141402b],.calibration-table td .ant-form-item[data-v-f141402b]{margin-bottom:0}.coord-form-top-row[data-v-f141402b]{display:flex;align-items:flex-start;gap:16px}.coord-form-top-row[data-v-f141402b] .ant-form-item{margin-bottom:0}.coord-form-name[data-v-f141402b]{flex:1;min-width:0}.coord-form-handle-size[data-v-f141402b]{margin-top:16px;margin-bottom:0;width:260px}.coord-form-handle-size .input-select[data-v-f141402b]{width:100%}.input-container[data-v-f141402b]{display:flex;align-items:center}.validation-error-icon[data-v-f141402b]{padding-left:5px;color:#ff4d4f}.log-axis-hint[data-v-f141402b]{margin-top:12px}.coord-system-modal-wrap .ant-modal-header{cursor:move;-webkit-user-select:none;user-select:none}.image-upload-area[data-v-2660d768]{width:100%;margin-top:-10px;margin-bottom:8px;padding-left:5px;padding-right:5px}.image-list[data-v-2660d768]{border:1px solid #d9d9d9;border-radius:8px;background:#fff;margin-top:5px}.image-grid[data-v-2660d768]{--tile-size: 80px;--tile-border: 2px;--row-height: calc(var(--tile-size) + var(--tile-border) * 2);--grid-gap: 12px;--grid-padding: 5px;--max-visible-rows: 2;padding:var(--grid-padding);display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start;gap:var(--grid-gap);min-height:10px;max-height:calc(var(--grid-padding) * 2 + var(--row-height) * var(--max-visible-rows) + var(--grid-gap) * (var(--max-visible-rows) - 1));overflow-x:hidden;overflow-y:auto}.image-grid.empty-grid[data-v-2660d768]{max-height:calc(var(--grid-padding) * 2 + var(--row-height) * var(--max-visible-rows) + var(--grid-gap) * (var(--max-visible-rows) - 1))}.empty-state[data-v-2660d768]{display:flex;align-items:center;padding-top:0;margin-top:0}.empty-state[data-v-2660d768] .empty-component{transform:scale(.75);transform-origin:center;height:50px}.image-item-wrapper[data-v-2660d768]{--tile-size: 80px;--tile-border: 2px;--action-col-width: 18px;display:flex;align-items:center;gap:8px;width:calc(var(--tile-size) + var(--tile-border) * 2 + 8px + var(--action-col-width) - 5px);min-height:calc(var(--tile-size) + var(--tile-border) * 2);border-radius:8px;transition:all .2s ease;flex-shrink:0;box-sizing:border-box}.image-item-wrapper.selected[data-v-2660d768]{background:#1890ff1a}.image-item[data-v-2660d768]{position:relative;border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease;background:#fff;overflow:hidden;flex-shrink:0}.image-item-wrapper:hover .image-item[data-v-2660d768]{border-color:#1890ff;box-shadow:0 4px 12px #1890ff26}.image-item-wrapper.selected .image-item[data-v-2660d768]{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33}.image-container[data-v-2660d768]{position:relative;width:var(--tile-size, 80px);height:var(--tile-size, 80px);flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.image-thumbnail[data-v-2660d768]{transition:transform .2s ease;max-width:80px;max-height:80px;width:100%;height:100%;object-fit:contain}.image-thumbnail[data-v-2660d768] img{max-width:70px;max-height:70px;width:100%;height:100%;object-fit:contain}.image-item:hover .image-thumbnail[data-v-2660d768]{transform:scale(1.05)}.image-actions[data-v-2660d768]{display:flex;gap:3px;flex-direction:column;flex-shrink:0;width:var(--action-col-width, 18px);margin-left:-5px}.action-btn[data-v-2660d768]{width:18px;height:18px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.action-btn[data-v-2660d768]:hover{background:#1890ff1a;transform:scale(1.1)}.action-btn[data-v-2660d768]:focus,.action-btn[data-v-2660d768]:active,.action-btn[data-v-2660d768]:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.action-btn[data-v-2660d768] .ant-btn,.action-btn[data-v-2660d768] .ant-btn:focus,.action-btn[data-v-2660d768] .ant-btn:active,.action-btn[data-v-2660d768] .ant-btn:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.action-btn.invisible[data-v-2660d768]{opacity:.5}.action-btn.invisible[data-v-2660d768]:hover{opacity:.8}.action-btn.locked[data-v-2660d768]{color:#ff4d4f}.action-btn.locked[data-v-2660d768]:hover{color:#ff7875}.action-btn.curve-recognize-btn[data-v-2660d768]{color:#722ed1}.action-btn.curve-recognize-btn[data-v-2660d768] .ant-btn{width:18px;height:18px;min-width:18px;padding:0;display:inline-flex;align-items:center;justify-content:center;line-height:1;font-size:12px;font-weight:600}.action-btn.curve-recognize-btn[data-v-2660d768]:hover{color:#9254de;background:#722ed11a}.add-image-wrapper[data-v-2660d768]{border:none}.add-image-item[data-v-2660d768]{border:2px dashed #d9d9d9;background:#fafafa;cursor:pointer;position:relative;border-radius:8px;transition:all .2s ease;background:#fff;overflow:hidden;flex-shrink:0}.add-image-item[data-v-2660d768]:hover{border-color:#1890ff;background:#f0f8ff;box-shadow:0 4px 12px #1890ff26}.add-image-container[data-v-2660d768]{background:transparent}.add-image-actions-spacer[data-v-2660d768]{visibility:hidden;pointer-events:none}.add-icon[data-v-2660d768]{font-size:24px;color:#8c8c8c;transition:all .2s ease}.add-image-item:hover .add-icon[data-v-2660d768]{color:#1890ff;transform:scale(1.2)}@media (max-width: 768px){.image-grid[data-v-2660d768]{--grid-gap: 8px;--grid-padding: 8px}}.list-sidebar-header[data-v-e32351af]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #f0f0f0}.list-sidebar-header.collapsed-header[data-v-e32351af]{justify-content:center}.list-sidebar-header h3[data-v-e32351af]{margin:0;font-size:16px;font-weight:500;text-align:left}.collapse-btn[data-v-e32351af]{flex-shrink:0}.collapse-btn[data-v-e32351af]:focus,.collapse-btn[data-v-e32351af]:active{outline:none;border:none;box-shadow:none}.list-content-wrapper[data-v-e32351af]{overflow-y:auto;height:calc(100vh - 80px)}.list-empty[data-v-e32351af]{margin-top:48px}.sample-list[data-v-e32351af]{background:transparent;margin-left:-10px}.sample-list[data-v-e32351af] .ant-list-item{cursor:pointer;transition:background-color .2s}.sample-list[data-v-e32351af] .ant-list-item:hover{background-color:#f5f5f5}.sample-list[data-v-e32351af] .ant-list-item-action{margin-left:0;margin-right:-25px}.sample-list[data-v-e32351af] .ant-list-item-action li{padding:0 2px}.sample-list[data-v-e32351af] .ant-list-item-action .ant-btn{padding:0 4px;height:20px;font-size:14px}.sample-list[data-v-e32351af] .ant-list-item-meta-title{text-align:left}.sample-list[data-v-e32351af] .ant-list-item-meta-title span{display:inline-flex;align-items:center;text-align:left}.data-point-list-sider[data-v-1c4357b3]{position:relative}.resize-handle[data-v-1c4357b3]{position:absolute;top:0;right:0;width:5px;height:100%;cursor:col-resize;z-index:10;background:transparent}.resize-handle[data-v-1c4357b3]:hover{background:#1890ff26}.list-sidebar-header[data-v-1c4357b3]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #f0f0f0}.list-sidebar-header.collapsed-header[data-v-1c4357b3]{justify-content:center}.list-sidebar-header h3[data-v-1c4357b3]{margin:0;font-size:16px;font-weight:500;text-align:left}.collapse-btn[data-v-1c4357b3]{flex-shrink:0}.collapse-btn[data-v-1c4357b3]:focus,.collapse-btn[data-v-1c4357b3]:active{outline:none;border:none;box-shadow:none}.list-content-wrapper[data-v-1c4357b3]{overflow-y:auto;height:calc(100vh - 80px);padding:16px}.display-options[data-v-1c4357b3]{margin-top:10px;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 12px}.display-options[data-v-1c4357b3] .ant-checkbox-wrapper{margin-inline-end:0;white-space:nowrap}.sidebar-action-btn[data-v-1c4357b3]{flex-shrink:0;display:inline-flex;align-items:center;gap:4px;height:28px;padding-inline:10px;font-size:13px;color:#000000a6;background:#fafafa;border-color:#e8e8e8;box-shadow:none}.sidebar-action-btn[data-v-1c4357b3] .anticon{font-size:14px}.sidebar-action-btn[data-v-1c4357b3]:hover{color:#1890ff;background:#fff;border-color:#91caff}.sidebar-action-btn[data-v-1c4357b3]:focus,.sidebar-action-btn[data-v-1c4357b3]:active,.sidebar-action-btn[data-v-1c4357b3]:focus-visible{outline:none;box-shadow:none}.sidebar-action-btn[data-v-1c4357b3]:after{display:none}.fit-settings-quick-link-row[data-v-1c4357b3]{margin-top:0;justify-content:flex-start}.fit-settings-quick-link[data-v-1c4357b3]{display:inline-flex;align-items:center;gap:4px;padding-inline:0;height:auto;font-size:13px}.fit-settings-quick-link[data-v-1c4357b3]:focus,.fit-settings-quick-link[data-v-1c4357b3]:active,.fit-settings-quick-link[data-v-1c4357b3]:focus-visible{outline:none;box-shadow:none}.fit-info-row[data-v-1c4357b3]{align-items:flex-start}.data-points-section[data-v-1c4357b3]{margin-top:5px}.data-table-wrap[data-v-1c4357b3]{position:relative}.data-table-wrap[data-v-1c4357b3] .ant-table-pagination{margin:8px 0 0;display:flex;justify-content:flex-end;padding-left:36px}.data-table-wrap .table-stats-btn[data-v-1c4357b3]{position:absolute;left:0;bottom:0;z-index:1}.point-stats-panel[data-v-1c4357b3]{padding:10px 12px;background:#fafafa;border:1px solid #f0f0f0;border-radius:4px}.point-stats-panel--modal[data-v-1c4357b3]{margin-top:0}.point-stats-header[data-v-1c4357b3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.point-stats-count[data-v-1c4357b3]{font-size:17px;color:#00000073}.point-stats-table[data-v-1c4357b3]{width:100%;border-collapse:collapse;font-size:17px}.point-stats-table th[data-v-1c4357b3],.point-stats-table td[data-v-1c4357b3]{padding:4px 6px;text-align:right;border-bottom:1px solid #f0f0f0}.point-stats-table th[data-v-1c4357b3]:first-child,.point-stats-table td[data-v-1c4357b3]:first-child{text-align:left;color:#000000a6}.point-stats-table th[data-v-1c4357b3]{font-weight:500;color:#00000073}.point-stats-table tbody tr:last-child td[data-v-1c4357b3]{border-bottom:none}.coord-input[data-v-1c4357b3]{width:100%}.no-curve-tip[data-v-1c4357b3]{display:flex;align-items:center;justify-content:center;height:200px;color:#999}.stats-modal-wrap .ant-modal-header{cursor:move;-webkit-user-select:none;user-select:none}.curve-drawing-container[data-v-0d27611e]{height:100vh;display:flex;flex-direction:column;background:#f5f5f5;padding-top:48px;padding-bottom:40px}.main-layout[data-v-0d27611e]{height:calc(100vh - 48px);background:#f5f5f5}.content-wrapper[data-v-0d27611e]{flex:1;display:flex;position:relative;overflow:hidden;background:#f5f5f5}.main-content[data-v-0d27611e]{flex:1;width:100%;height:100vh;background:#f5f5f5;display:flex}.data-sidebar[data-v-0d27611e],.list-sidebar[data-v-0d27611e]{height:100%;background:#fff;border-right:1px solid #e8e8e8;box-shadow:2px 0 8px #0000000a;overflow:hidden;flex-shrink:0}.list-sidebar-header[data-v-0d27611e]{padding:16px;border-bottom:1px solid #e8e8e8;background:#fafafa;display:flex;justify-content:space-between;align-items:center;min-height:57px}.list-sidebar-header h3[data-v-0d27611e]{margin:0;font-size:16px;font-weight:600;color:#262626;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collapse-btn[data-v-0d27611e]{color:#8c8c8c;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.collapse-btn[data-v-0d27611e]:hover{color:#262626}.list-content-wrapper[data-v-0d27611e]{height:calc(100vh - 113px);overflow:hidden}.sample-list[data-v-0d27611e]{height:calc(100vh - 113px);overflow-y:auto;padding:8px 0}.sample-list[data-v-0d27611e] .ant-list-item{padding:12px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s}.sample-list[data-v-0d27611e] .ant-list-item:hover{background-color:#f5f5f5}.sample-list[data-v-0d27611e] .ant-list-item-meta-title{margin-bottom:4px;font-size:14px;color:#262626}.sample-list[data-v-0d27611e] .ant-list-item-meta-description{font-size:12px;color:#8c8c8c}.data-sidebar[data-v-0d27611e] .coordinate-system-panel{height:100%}.canvas-container[data-v-0d27611e]{width:100%;height:100%;position:relative;background:#fafafa;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;flex:1;padding-top:24px;padding-left:40px}.zoom-controls[data-v-0d27611e]{position:absolute;top:16px;right:0;transform:translate(calc(100% + 8px));z-index:1000;display:flex;flex-direction:column;align-items:center;gap:4px;background:#fffffff2;border:1px solid #e8e8e8;border-radius:8px;padding:8px 4px;box-shadow:0 2px 8px #0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:auto}.zoom-controls .zoom-btn[data-v-0d27611e]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#595959;transition:all .2s;outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .zoom-btn[data-v-0d27611e]:hover{background:#f5f5f5;color:#1890ff}.zoom-controls .zoom-btn[data-v-0d27611e]:active{background:#e6f7ff;color:#1890ff;outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .zoom-btn[data-v-0d27611e]:focus{outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .zoom-btn[data-v-0d27611e]:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .zoom-btn[data-v-0d27611e]:after{display:none!important}.zoom-controls .zoom-btn.active[data-v-0d27611e]{background:#e6f7ff;color:#1890ff}.zoom-controls .zoom-btn.active[data-v-0d27611e]:hover{background:#bae7ff;color:#0050b3}.zoom-info[data-v-0d27611e]{font-size:12px;color:#8c8c8c;padding:4px 8px;border-top:1px solid #f0f0f0;margin-top:4px;width:100%;text-align:center;font-weight:500}.zoom-controls .shortcuts-hint-btn[data-v-0d27611e]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:#8c8c8c;border-radius:6px;outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .shortcuts-hint-btn[data-v-0d27611e]:hover{color:#1890ff;background:#f5f5f5}.zoom-controls .shortcuts-hint-btn[data-v-0d27611e]:active,.zoom-controls .shortcuts-hint-btn[data-v-0d27611e]:focus,.zoom-controls .shortcuts-hint-btn[data-v-0d27611e]:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.zoom-controls .shortcuts-hint-btn[data-v-0d27611e]:after{display:none!important}.shortcuts-table[data-v-0d27611e]{border-collapse:collapse;font-size:12px;line-height:1.5}.shortcuts-table td[data-v-0d27611e]{padding:4px 8px 4px 0;vertical-align:top}.shortcuts-table .shortcuts-key[data-v-0d27611e]{white-space:nowrap;font-weight:600;color:#262626;padding-right:12px}.shortcuts-popover .ant-popover-inner{max-width:360px}.canvas-tips[data-v-0d27611e]{height:30px;text-align:center}.mouse-point-info[data-v-0d27611e]{text-align:right;display:flex;flex-direction:column;align-items:flex-end;position:absolute;top:16px;right:16px;z-index:1000;max-width:300px;pointer-events:none;border-radius:6px;padding:8px 12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.coordinate-display[data-v-0d27611e]{text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:4px;font-size:14px;line-height:1.4}.coordinate-display[data-v-0d27611e]:last-child{margin-bottom:0}.coordinate-display .value[data-v-0d27611e]{font-weight:600;color:#1890ff;font-family:Courier New,monospace;padding:2px 6px;border-radius:4px}.canvas-wrapper[data-v-0d27611e]{width:var(--v7020d37e);height:var(--v4273ada2);position:relative;cursor:default;background:#fff;border:1px solid #e8e8e8;border-radius:8px;box-shadow:0 2px 8px #0000001a}.canvas-wrapper.drawing-mode[data-v-0d27611e]{cursor:crosshair}.canvas-wrapper[data-v-0d27611e]:not(.drawing-mode){cursor:grab}.canvas-wrapper:not(.drawing-mode) canvas[data-v-0d27611e]{cursor:grab}.canvas-wrapper.dragging[data-v-0d27611e]{cursor:grabbing}.canvas-wrapper.dragging canvas[data-v-0d27611e]{cursor:grabbing}canvas[data-v-0d27611e]{display:block;background:#fff;border-radius:8px}.konva-canvas-container[data-v-0d27611e]{position:relative;width:var(--v7020d37e);height:var(--v4273ada2);display:flex;justify-content:flex-start;align-items:flex-start;background:var(--v2e46dfc1);z-index:1}.konva-canvas-container canvas[data-v-0d27611e]{position:relative;z-index:2;border:1px solid #e8e8e8;border-radius:8px;box-shadow:0 2px 8px #0000001a}.canvas-wrapper.drag-over[data-v-0d27611e]{border:2px dashed #1890ff;background:#1890ff0d}[data-v-0d27611e] .ant-modal-body{padding:24px}[data-v-0d27611e] .ant-form-item{margin-bottom:16px}[data-v-0d27611e] .ant-form-item-label{padding-bottom:4px}[data-v-0d27611e] .ant-table-small{font-size:12px}[data-v-0d27611e] .ant-table-thead>tr>th{background:#fafafa;font-weight:500}[data-v-0d27611e] .ant-table-tbody>tr:hover>td{background:#f5f5f5}[data-v-0d27611e] .ant-btn-group{display:flex}[data-v-0d27611e] .ant-btn-group .ant-btn{border-radius:0}[data-v-0d27611e] .ant-btn-group .ant-btn:first-child{border-top-left-radius:6px;border-bottom-left-radius:6px}[data-v-0d27611e] .ant-btn-group .ant-btn:last-child{border-top-right-radius:6px;border-bottom-right-radius:6px}[data-v-0d27611e] .ant-tag{margin:0;font-size:11px;padding:2px 6px;border-radius:4px}[data-v-0d27611e] .ant-upload{display:inline-block}[data-v-0d27611e] .ant-divider-vertical{height:20px;margin:0 8px}[data-v-0d27611e] .ant-card-head-title{font-size:14px;font-weight:600}[data-v-0d27611e] .ant-card-extra,[data-v-0d27611e] .ant-tooltip-inner{font-size:12px}[data-v-0d27611e] .ant-message{z-index:9999}.mode-indicator[data-v-0d27611e]{margin-left:5px;margin-right:5px;margin-bottom:10px;padding:10px;border:1px solid #e8e8e8;border-radius:8px;transition:all .3s ease;text-align:left}.mode-indicator .ant-tag[data-v-0d27611e],.mode-indicator span[data-v-0d27611e]{font-size:15px}.mode-indicator .ant-btn[data-v-0d27611e]{border:none;box-shadow:none}.mode-indicator .ant-btn[data-v-0d27611e]:focus,.mode-indicator .ant-btn[data-v-0d27611e]:active,.mode-indicator .ant-btn[data-v-0d27611e]:hover{border:none!important;box-shadow:none!important;outline:none!important}.mode-indicator.drawing-mode[data-v-0d27611e]{background:#e6f7ff;border-color:#1890ff;box-shadow:0 2px 8px #1890ff26}.mode-content[data-v-0d27611e]{display:flex;flex-direction:column;gap:8px}.mode-header[data-v-0d27611e]{display:flex;align-items:center;gap:8px}.mode-icon[data-v-0d27611e]{font-size:18px;flex-shrink:0}.mode-icon.drawing-icon[data-v-0d27611e]{color:#1890ff}.mode-icon.drag-icon[data-v-0d27611e]{color:#52c41a}.mode-tag[data-v-0d27611e]{margin:0;font-size:14px;font-weight:500;padding:2px 8px;border-radius:4px}.mode-tip[data-v-0d27611e]{display:flex;align-items:center;gap:6px;padding-top:8px;border-top:1px solid #f0f0f0}.mode-indicator.drawing-mode .mode-tip[data-v-0d27611e]{border-top-color:#bae7ff}.tip-icon[data-v-0d27611e]{font-size:14px;color:#8c8c8c;flex-shrink:0}.mode-indicator.drawing-mode .tip-icon[data-v-0d27611e]{color:#1890ff}.tip-text[data-v-0d27611e]{font-size:13px;color:#595959;line-height:1.5;display:inline-flex;align-items:center;gap:4px}.mode-indicator.drawing-mode .tip-text[data-v-0d27611e]{color:#0050b3}.esc-icon[data-v-0d27611e]{font-size:12px;margin-right:2px}@media (max-width: 768px){.canvas-wrapper[data-v-0d27611e]{width:100%;height:100%;max-width:100vw;max-height:calc(100vh - 108px)}.data-sidebar[data-v-0d27611e]{display:none}}
