3d-decorate-platform 1.0.21 → 1.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -919,8 +919,8 @@
919
919
  return _getAllBrandList.apply(this, arguments);
920
920
  }
921
921
 
922
- /*
923
- * 我的方案列表查询
922
+ /*
923
+ * 平台方案管理列表查询
924
924
  * @param {Object} params
925
925
  * @returns {Promise<Object>}
926
926
  */
@@ -946,7 +946,7 @@
946
946
  return _getMySchemeList.apply(this, arguments);
947
947
  }
948
948
 
949
- /*
949
+ /*
950
950
  * 保存方案
951
951
  * @param {Object} params
952
952
  * @returns {Promise<Object>}
@@ -973,7 +973,7 @@
973
973
  return _saveScheme.apply(this, arguments);
974
974
  }
975
975
 
976
- /*
976
+ /*
977
977
  * 删除方案
978
978
  * @param {Object} params
979
979
  * @returns {Promise<Object>}
@@ -1000,7 +1000,7 @@
1000
1000
  return _deleteScheme.apply(this, arguments);
1001
1001
  }
1002
1002
 
1003
- /*
1003
+ /*
1004
1004
  * 查询方案详情
1005
1005
  * @param {Object} params
1006
1006
  * @returns {Promise<Object>}
@@ -1027,7 +1027,7 @@
1027
1027
  return _getSchemeDetail.apply(this, arguments);
1028
1028
  }
1029
1029
 
1030
- /*
1030
+ /*
1031
1031
  * 方案版本列表查询
1032
1032
  * @param {Object} params
1033
1033
  * @returns {Promise<Object>}
@@ -1054,7 +1054,7 @@
1054
1054
  return _getSchemeVersionList.apply(this, arguments);
1055
1055
  }
1056
1056
 
1057
- /*
1057
+ /*
1058
1058
  * 文件上传
1059
1059
  * @param {Object} params
1060
1060
  * @returns {Promise<Object>}
@@ -1139,7 +1139,7 @@
1139
1139
  return _getMaterialClassifyList.apply(this, arguments);
1140
1140
  }
1141
1141
 
1142
- /*
1142
+ /*
1143
1143
  * 查询素材列表
1144
1144
  * @param {Object} params
1145
1145
  * @returns {Promise<Object>}
@@ -1167,7 +1167,7 @@
1167
1167
  return _getMaterialList.apply(this, arguments);
1168
1168
  }
1169
1169
 
1170
- /*
1170
+ /*
1171
1171
  * 保存素材
1172
1172
  * @param {Object} params
1173
1173
  * @returns {Promise<Object>}
@@ -6356,10 +6356,10 @@
6356
6356
  _useState0 = _slicedToArray(_useState9, 2),
6357
6357
  submitting = _useState0[0],
6358
6358
  setSubmitting = _useState0[1];
6359
- var _useState1 = React.useState(null),
6359
+ var _useState1 = React.useState({}),
6360
6360
  _useState10 = _slicedToArray(_useState1, 2),
6361
- uploadingType = _useState10[0],
6362
- setUploadingType = _useState10[1];
6361
+ uploadingTypes = _useState10[0],
6362
+ setUploadingTypes = _useState10[1];
6363
6363
  var fileInputRef = React.useRef(null);
6364
6364
  var currentUploadType = React.useRef(null);
6365
6365
  var _useState11 = React.useState(false),
@@ -6439,7 +6439,7 @@
6439
6439
  setBatchOneMaterialId('');
6440
6440
  setBatchOneFiles(createEmptyBatchOneFiles());
6441
6441
  }
6442
- setUploadingType(null);
6442
+ setUploadingTypes({});
6443
6443
  setIsDraggingRef(false);
6444
6444
  setIsDraggingPbr({});
6445
6445
  setIsBatchMultiDragging(false);
@@ -6763,8 +6763,7 @@
6763
6763
  var selectedFile = files === null || files === void 0 ? void 0 : files[0];
6764
6764
  if (selectedFile) {
6765
6765
  if (validateImageFile(selectedFile)) {
6766
- currentUploadType.current = 'reference';
6767
- handleUpload(selectedFile);
6766
+ handleUpload(selectedFile, 'reference');
6768
6767
  }
6769
6768
  }
6770
6769
  };
@@ -6803,26 +6802,26 @@
6803
6802
  var selectedFile = files === null || files === void 0 ? void 0 : files[0];
6804
6803
  if (selectedFile) {
6805
6804
  if (validateImageFile(selectedFile)) {
6806
- currentUploadType.current = key;
6807
- handleUpload(selectedFile);
6805
+ handleUpload(selectedFile, key);
6808
6806
  }
6809
6807
  }
6810
6808
  };
6811
6809
  };
6812
6810
  var handleUpload = /*#__PURE__*/function () {
6813
- var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(file) {
6814
- var uploadType, formData, response, data, dataValue, fileUrl, fileFormat, resolution, _t;
6811
+ var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(file, uploadType) {
6812
+ var formData, response, data, dataValue, fileUrl, fileFormat, resolution, _t;
6815
6813
  return _regenerator().w(function (_context6) {
6816
6814
  while (1) switch (_context6.p = _context6.n) {
6817
6815
  case 0:
6818
- if (file) {
6816
+ if (!(!file || !uploadType)) {
6819
6817
  _context6.n = 1;
6820
6818
  break;
6821
6819
  }
6822
6820
  return _context6.a(2);
6823
6821
  case 1:
6824
- uploadType = currentUploadType.current;
6825
- setUploadingType(uploadType);
6822
+ setUploadingTypes(function (prev) {
6823
+ return _objectSpread2(_objectSpread2({}, prev), {}, _defineProperty({}, uploadType, (prev[uploadType] || 0) + 1));
6824
+ });
6826
6825
  _context6.p = 2;
6827
6826
  _context6.n = 3;
6828
6827
  return ensureSingleMaterialId();
@@ -6888,16 +6887,23 @@
6888
6887
  });
6889
6888
  case 11:
6890
6889
  _context6.p = 11;
6891
- setUploadingType(null);
6892
- currentUploadType.current = null;
6893
- if (fileInputRef.current) fileInputRef.current.value = '';
6890
+ setUploadingTypes(function (prev) {
6891
+ var next = _objectSpread2({}, prev);
6892
+ var remaining = (next[uploadType] || 1) - 1;
6893
+ if (remaining > 0) {
6894
+ next[uploadType] = remaining;
6895
+ } else {
6896
+ delete next[uploadType];
6897
+ }
6898
+ return next;
6899
+ });
6894
6900
  return _context6.f(11);
6895
6901
  case 12:
6896
6902
  return _context6.a(2);
6897
6903
  }
6898
6904
  }, _callee6, null, [[2, 10, 11, 12]]);
6899
6905
  }));
6900
- return function handleUpload(_x4) {
6906
+ return function handleUpload(_x4, _x5) {
6901
6907
  return _ref7.apply(this, arguments);
6902
6908
  };
6903
6909
  }();
@@ -6932,9 +6938,12 @@
6932
6938
  var handleFileChange = function handleFileChange(e) {
6933
6939
  var files = e.target.files;
6934
6940
  var selectedFile = files && files[0];
6941
+ var uploadType = currentUploadType.current;
6942
+ currentUploadType.current = null;
6943
+ e.target.value = '';
6935
6944
  if (selectedFile) {
6936
6945
  if (validateImageFile(selectedFile)) {
6937
- handleUpload(selectedFile);
6946
+ handleUpload(selectedFile, uploadType);
6938
6947
  }
6939
6948
  }
6940
6949
  };
@@ -7143,7 +7152,7 @@
7143
7152
  }
7144
7153
  }, _callee8);
7145
7154
  }));
7146
- return function uploadBatchChannelFile(_x5) {
7155
+ return function uploadBatchChannelFile(_x6) {
7147
7156
  return _ref9.apply(this, arguments);
7148
7157
  };
7149
7158
  }();
@@ -7262,7 +7271,7 @@
7262
7271
  }
7263
7272
  }, _callee9, null, [[3, 8, 9, 10]]);
7264
7273
  }));
7265
- return function handleBatchChannelFileChange(_x6) {
7274
+ return function handleBatchChannelFileChange(_x7) {
7266
7275
  return _ref0.apply(this, arguments);
7267
7276
  };
7268
7277
  }();
@@ -7350,7 +7359,7 @@
7350
7359
  }
7351
7360
  }, _callee0, null, [[3, 9, 10, 11]]);
7352
7361
  }));
7353
- return function handleUploadBatchMultiFiles(_x7, _x8) {
7362
+ return function handleUploadBatchMultiFiles(_x8, _x9) {
7354
7363
  return _ref1.apply(this, arguments);
7355
7364
  };
7356
7365
  }();
@@ -7391,7 +7400,7 @@
7391
7400
  }
7392
7401
  }, _callee1);
7393
7402
  }));
7394
- return function handleBatchMultiDrop(_x9) {
7403
+ return function handleBatchMultiDrop(_x0) {
7395
7404
  return _ref10.apply(this, arguments);
7396
7405
  };
7397
7406
  }();
@@ -7537,7 +7546,7 @@
7537
7546
  }
7538
7547
  }, _callee11, null, [[1, 3]]);
7539
7548
  }));
7540
- return function handleAddBatchOneFiles(_x0) {
7549
+ return function handleAddBatchOneFiles(_x1) {
7541
7550
  return _ref12.apply(this, arguments);
7542
7551
  };
7543
7552
  }();
@@ -7653,7 +7662,7 @@
7653
7662
 
7654
7663
  // Render reference image upload area
7655
7664
  var renderRefUploadArea = function renderRefUploadArea() {
7656
- var isUploading = uploadingType === 'reference';
7665
+ var isUploading = !!uploadingTypes.reference;
7657
7666
  var hasImage = referenceImage && referenceImage.url;
7658
7667
  var isDisabled = false;
7659
7668
 
@@ -7713,7 +7722,7 @@
7713
7722
 
7714
7723
  // Render single PBR map upload area
7715
7724
  var renderPbrUploadArea = function renderPbrUploadArea(pbrType) {
7716
- var isUploading = uploadingType === pbrType.key;
7725
+ var isUploading = !!uploadingTypes[pbrType.key];
7717
7726
  var imageData = pbrMaps[pbrType.key];
7718
7727
  var isDragging = isDraggingPbr[pbrType.key] || false;
7719
7728
  var isDisabled = false;
@@ -60368,6 +60377,13 @@
60368
60377
  }, SEND_INTERVAL);
60369
60378
  sendMessage(messageQueue.shift());
60370
60379
  }
60380
+ function clearUEMessageQueue() {
60381
+ messageQueue.length = 0;
60382
+ if (sendTimer) {
60383
+ clearInterval(sendTimer);
60384
+ sendTimer = null;
60385
+ }
60386
+ }
60371
60387
 
60372
60388
  var UE_SCHEME_ACTION = {
60373
60389
  DG_SCHEME: 'DgScheme',
@@ -60437,7 +60453,7 @@
60437
60453
  });
60438
60454
  }
60439
60455
 
60440
- var css_248z$l = ".myScheme-module_page__3ldLy {\n height: 100%;\n min-height: 0;\n overflow: auto;\n background: #f5f5f7;\n color: #000f2c;\n font-size: 12px;\n}\n.myScheme-module_page__3ldLy .myScheme-module_container__p3iuY {\n width: 100%;\n height: 100%;\n min-height: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n.myScheme-module_primaryButton__2OA3k,\n.myScheme-module_secondaryButton__2coh1,\n.myScheme-module_linkButton__1tQSv,\n.myScheme-module_filterTab__2W0m6,\n.myScheme-module_backButton__2pKvO,\n.myScheme-module_selectTrigger__3tWi0,\n.myScheme-module_selectOption__2JCf7,\n.myScheme-module_modalClose__nehKy,\n.myScheme-module_exportButton__2dmSV,\n.myScheme-module_panelTabs__aWvDB button,\n.myScheme-module_sceneObject__vyE3e,\n.myScheme-module_viewToolbar__2Fcxi button,\n.myScheme-module_segmentGroup__2ZvYu button {\n border: none;\n outline: none;\n cursor: pointer;\n transition: all 0.12s ease;\n}\n.myScheme-module_primaryButton__2OA3k,\n.myScheme-module_secondaryButton__2coh1 {\n min-height: 32px;\n padding: 0 12px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n border-radius: 4px;\n font-size: 12px;\n font-weight: 400;\n white-space: nowrap;\n box-sizing: border-box;\n}\n.myScheme-module_primaryButton__2OA3k:disabled,\n.myScheme-module_secondaryButton__2coh1:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n.myScheme-module_primaryButton__2OA3k {\n border: 1px solid #1890ff;\n background: #1890ff;\n color: #fff;\n}\n.myScheme-module_primaryButton__2OA3k:hover {\n border-color: #0077e6;\n background: #0077e6;\n}\n.myScheme-module_secondaryButton__2coh1 {\n border: 1px solid #c5ccd6;\n background: #fff;\n color: #737b8b;\n}\n.myScheme-module_secondaryButton__2coh1:hover {\n border-color: #1890ff;\n background: #fff;\n color: #1890ff;\n}\n.myScheme-module_statusOk__4Ic1T,\n.myScheme-module_statusInfo__1dS1L,\n.myScheme-module_statusNeutral__3qNrt {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 2px 8px;\n border-radius: 999px;\n font-size: 11px;\n line-height: 17px;\n font-weight: 500;\n white-space: nowrap;\n}\n.myScheme-module_statusOk__4Ic1T::before,\n.myScheme-module_statusInfo__1dS1L::before,\n.myScheme-module_statusNeutral__3qNrt::before {\n content: '';\n width: 5px;\n height: 5px;\n border-radius: 50%;\n background: currentColor;\n flex-shrink: 0;\n}\n.myScheme-module_statusOk__4Ic1T {\n background: #ecfdf5;\n color: #059669;\n}\n.myScheme-module_statusInfo__1dS1L {\n background: #eff6ff;\n color: #3b82f6;\n}\n.myScheme-module_statusNeutral__3qNrt {\n background: #f3f4f6;\n color: #6b7280;\n}\n.myScheme-module_listPage__Zj7rr,\n.myScheme-module_workbenchPage__R4fxG {\n flex: 1;\n height: auto;\n min-height: 0;\n padding: 24px;\n display: flex;\n flex-direction: column;\n gap: 14px;\n box-sizing: border-box;\n}\n.myScheme-module_listPage__Zj7rr {\n padding: 16px;\n gap: 16px;\n font-family: PingFang SC, Microsoft YaHei, sans-serif;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_headerSection__3V8s_ {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n min-height: 40px;\n gap: 12px;\n margin-bottom: 0;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r {\n min-width: 0;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageTitle__2_OS3 {\n margin: 0;\n font-size: 14px;\n line-height: 20px;\n font-weight: 500;\n color: #000f2c;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageDesc__3G2-a {\n width: auto;\n margin: 2px 0 0;\n font-size: 12px;\n line-height: 18px;\n color: #737b8b;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 {\n display: flex;\n align-items: center;\n gap: 16px;\n margin-bottom: 0;\n flex-wrap: nowrap;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr {\n position: relative;\n width: 240px;\n flex: 0 0 240px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr .myScheme-module_searchIcon__1B7Y5 {\n position: absolute;\n top: 50%;\n left: 12px;\n transform: translateY(-50%);\n color: #737b8b;\n font-size: 16px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr .myScheme-module_searchInput__1hQMH {\n width: 100%;\n height: 32px;\n padding: 0 10px 0 34px;\n border: 1px solid #fff;\n border-radius: 6px;\n background: #fff;\n color: #000f2c;\n font-size: 14px;\n line-height: 22px;\n box-sizing: border-box;\n outline: none;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr .myScheme-module_searchInput__1hQMH:focus {\n border-color: #1890ff;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2 {\n min-width: 0;\n display: flex;\n align-items: center;\n flex: 0 0 auto;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2.myScheme-module_templateFilterField__1ojde .myScheme-module_filterSelect__WzvVu {\n width: 180px;\n flex-basis: 180px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2 .myScheme-module_filterLabel__1SVxS {\n flex: 0 0 auto;\n color: #000f2c;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n white-space: nowrap;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu {\n width: 140px;\n flex: 0 0 140px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu .ant-select-selector {\n height: 32px !important;\n padding: 0 28px 0 8px !important;\n border-color: #fff !important;\n border-radius: 4px;\n background: #fff;\n box-shadow: none !important;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu .ant-select-selection-item {\n min-width: 0;\n padding-right: 0;\n color: #737b8b;\n font-size: 14px;\n line-height: 30px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu .ant-select-arrow {\n right: 8px;\n color: #737b8b;\n font-size: 10px;\n transition: transform 0.16s ease;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu:hover .ant-select-selector,\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu.ant-select-focused .ant-select-selector,\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu.ant-select-open .ant-select-selector {\n border-color: #1890ff !important;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu.ant-select-open .ant-select-arrow {\n transform: rotate(180deg);\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 {\n display: inline-flex;\n height: 32px;\n padding: 3px;\n border: 1px solid #fff;\n border-radius: 6px;\n background: #fff;\n overflow: hidden;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6 {\n height: 24px;\n padding: 0 10px;\n border-right: 0;\n background: transparent;\n color: #737b8b;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6:last-child {\n border-right: 0;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6.myScheme-module_filterTabActive__2JDzG {\n border-radius: 3px;\n background: #f0f2f5;\n color: #000f2c;\n font-weight: 500;\n box-shadow: none;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_cardGrid__3wP3h {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 360px));\n grid-auto-rows: 1fr;\n gap: clamp(12px, 1.2vw, 16px);\n justify-content: start;\n align-items: stretch;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq {\n min-height: clamp(360px, 52vh, 560px);\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq .ant-spin-nested-loading,\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq .ant-spin-container,\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq .myScheme-module_cardGrid__3wP3h {\n min-height: inherit;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq .ant-spin {\n max-height: none;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listVirtualSentinel__110vy {\n grid-column: -1;\n width: 100%;\n height: 1px;\n pointer-events: none;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listNotice__3vlwx {\n min-width: 0;\n width: 100%;\n height: 100%;\n min-height: clamp(240px, 21vw, 320px);\n padding: 20px;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 10px;\n border: 1px solid #e5e7eb;\n border-radius: 12px;\n background: #fff;\n color: #6b7280;\n font-size: 13px;\n line-height: 18px;\n box-sizing: border-box;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_emptyState__1cRpf {\n min-width: 0;\n min-height: clamp(240px, 21vw, 320px);\n padding: 40px 16px;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 10px;\n border: 1px dashed #d7dce5;\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.46);\n color: #6b7280;\n text-align: center;\n box-sizing: border-box;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_emptyState__1cRpf .myScheme-module_emptyIcon__1BcYl {\n width: 44px;\n height: 44px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #b8c0cc;\n font-size: 32px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_emptyState__1cRpf .myScheme-module_emptyTitle__2F90O {\n color: #1a1a2e;\n font-size: 15px;\n line-height: 22px;\n font-weight: 600;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_emptyState__1cRpf .myScheme-module_emptyDesc__2E1Fv {\n margin-bottom: 4px;\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_paginationInfo__1Levb {\n width: 100%;\n margin-top: 10px;\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n text-align: right;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_paginationBar__MIEed {\n width: 100%;\n padding: 16px 20px 20px;\n display: flex;\n justify-content: flex-end;\n box-sizing: border-box;\n}\n.myScheme-module_inlineRetryButton__2rwfm {\n padding: 0;\n border: none;\n background: transparent;\n color: #3b82f6;\n cursor: pointer;\n}\n.myScheme-module_filterSelectDropdown__mYCGA {\n padding: 8px;\n border: 1px solid rgba(113, 125, 153, 0.3);\n border-radius: 4px;\n background: #fff;\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.16);\n}\n.myScheme-module_filterSelectDropdown__mYCGA .ant-select-item {\n min-width: 0;\n height: 40px;\n min-height: 40px;\n padding: 0 12px;\n display: flex;\n align-items: center;\n border-radius: 4px;\n color: #616778;\n font-size: 14px;\n line-height: 40px;\n}\n.myScheme-module_filterSelectDropdown__mYCGA .ant-select-item-option-content {\n min-width: 0;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_filterSelectDropdown__mYCGA .ant-select-item-option-active:not(.ant-select-item-option-disabled) {\n background: #f5f6f8;\n color: #000f2c;\n}\n.myScheme-module_filterSelectDropdown__mYCGA .ant-select-item-option-selected:not(.ant-select-item-option-disabled) {\n background: #f0f2f5;\n color: #000f2c;\n font-weight: 500;\n}\n.myScheme-module_filterSelectDropdown__mYCGA .myScheme-module_filterOptionText__2xi5S {\n min-width: 0;\n width: 100%;\n display: block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_schemeTableWrap__1JbKU {\n min-width: 0;\n width: 100%;\n overflow: hidden;\n border: 1px solid #fff;\n border-radius: 6px;\n background: #fff;\n box-sizing: border-box;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE {\n width: 100%;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table {\n color: #000f2c;\n font-size: 14px;\n font-weight: 400;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-container {\n border-radius: 6px 6px 0 0;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-content {\n overscroll-behavior-x: contain;\n -webkit-overflow-scrolling: touch;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-content::-webkit-scrollbar {\n height: 8px;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-content::-webkit-scrollbar-track {\n background: #f5f6f8;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-content::-webkit-scrollbar-thumb {\n border: 2px solid #f5f6f8;\n border-radius: 8px;\n background: #c5ccd6;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-thead > tr > th {\n height: 32px;\n padding: 4px 12px;\n border-bottom: 0;\n background: #f0f2f5;\n color: #737b8b;\n font-size: 12px;\n font-weight: 400;\n line-height: 20px;\n white-space: nowrap;\n box-sizing: border-box;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-tbody > tr > td {\n height: 48px;\n padding: 4px 12px;\n border-bottom-color: #f1f3f5;\n background: #fff;\n color: #000f2c;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n box-sizing: border-box;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-cell-fix-right {\n background: #fff;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-thead .ant-table-cell-fix-right {\n background: #f0f2f5;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-placeholder .ant-table-cell {\n height: 96px;\n color: #737b8b;\n}\n.myScheme-module_tableCellText__1Xedl {\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_tableActions__1ZGgT {\n display: flex;\n align-items: center;\n gap: 10px;\n white-space: nowrap;\n}\n.myScheme-module_generatedStatus__20kIV,\n.myScheme-module_pendingStatus__2gFeC {\n height: 20px;\n padding: 0 6px;\n display: inline-flex;\n align-items: center;\n border-radius: 4px;\n font-size: 14px;\n line-height: 20px;\n white-space: nowrap;\n}\n.myScheme-module_generatedStatus__20kIV {\n background: #e9f9f1;\n color: #1fb978;\n}\n.myScheme-module_pendingStatus__2gFeC {\n background: #f0f2f5;\n color: #a0a7b4;\n}\n.myScheme-module_tableEmpty__32CE2 {\n min-height: 64px;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n.myScheme-module_schemeCard__jPfmS,\n.myScheme-module_createCard__2pnhr {\n min-width: 0;\n width: 100%;\n height: 100%;\n overflow: hidden;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: #fff;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n}\n.myScheme-module_schemeCard__jPfmS {\n display: flex;\n flex-direction: column;\n transition: box-shadow 0.15s, transform 0.1s;\n}\n.myScheme-module_schemeCard__jPfmS:hover {\n transform: translateY(-1px);\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04);\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_coverWrap__1hGe6 {\n position: relative;\n aspect-ratio: 2.13333333;\n overflow: hidden;\n border-bottom: 1px solid #f0f1f3;\n background: linear-gradient(135deg, #dbeafe 0%, #ede9fe 50%, #fce7f3 100%);\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_coverWrap__1hGe6::after {\n content: '';\n position: absolute;\n inset: 0;\n background: linear-gradient(to top, rgba(0, 0, 0, 0.06), transparent 40%);\n opacity: 0;\n transition: opacity 0.2s;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_coverWrap__1hGe6 .myScheme-module_coverImage__3VgGP {\n width: 100%;\n height: 100%;\n display: block;\n -o-object-fit: cover;\n object-fit: cover;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_coverWrap__1hGe6 .myScheme-module_coverPlaceholder__3VJEL {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, #e0e7ff 0%, #fafbfc 100%);\n color: #6b7280;\n font-size: 13px;\n}\n.myScheme-module_schemeCard__jPfmS:hover .myScheme-module_coverWrap__1hGe6::after {\n opacity: 1;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX {\n padding: 14px;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX .myScheme-module_schemeTitle__3Pxgw {\n margin: 0 0 4px;\n font-size: 15px;\n line-height: 22px;\n font-weight: 600;\n color: #1a1a2e;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX .myScheme-module_customerLine__37-HC,\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX .myScheme-module_metaLine__1yrw5 {\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX .myScheme-module_tagRow__1g3gZ {\n margin-top: 8px;\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 {\n margin-top: auto;\n min-height: 45px;\n padding: 10px 14px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 10px;\n border-top: 1px solid #f0f1f3;\n background: #fafbfc;\n box-sizing: border-box;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 .myScheme-module_replaceText__2t-7Z {\n min-width: 0;\n color: #6b7280;\n font-size: 12px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 .myScheme-module_footerActions__JKjxC {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-shrink: 0;\n}\n.myScheme-module_createCard__2pnhr {\n min-height: clamp(240px, 21vw, 320px);\n padding: 20px;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n border: 2px dashed #e5e7eb;\n background: transparent;\n box-shadow: none;\n}\n.myScheme-module_createCard__2pnhr .myScheme-module_createIcon__10zAg {\n font-size: 32px;\n line-height: 1;\n color: #d1d5db;\n}\n.myScheme-module_createCard__2pnhr .myScheme-module_createTitle__2GMKS {\n color: #6b7280;\n font-size: 14px;\n}\n.myScheme-module_linkButton__1tQSv {\n padding: 0;\n background: transparent;\n color: #1890ff;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n}\n.myScheme-module_linkButton__1tQSv:hover {\n color: #0077e6;\n}\n.myScheme-module_toast__rWmQY {\n position: fixed;\n top: 28px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 1300;\n width: -moz-fit-content;\n width: fit-content;\n min-width: 0;\n max-width: calc(100vw - 48px);\n min-height: 28px;\n padding: 0 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n border: 1px solid #6AB015;\n border-radius: 5px;\n background: #6AB015;\n color: #fff;\n font-size: 12px;\n line-height: 18px;\n box-shadow: 0 6px 18px rgba(15, 23, 42, 0.12);\n box-sizing: border-box;\n}\n.myScheme-module_toast__rWmQY .anticon {\n flex-shrink: 0;\n color: #fff;\n font-size: 13px;\n}\n.myScheme-module_toast__rWmQY span {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_toastError__hL_qA {\n border-color: #d9363e;\n background: #d9363e;\n}\n.myScheme-module_globalTopbar__2Axph {\n position: sticky;\n top: 0;\n z-index: 20;\n min-height: 59px;\n padding: 12px 24px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n border-bottom: 1px solid #e5e7eb;\n background: #fff;\n box-sizing: border-box;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarBreadcrumb__1s98w {\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n white-space: nowrap;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarSearchWrap__2aR7B {\n flex: 0 1 auto;\n width: min(360px, 30vw);\n min-width: 220px;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarSearchWrap__2aR7B .myScheme-module_searchInput__1hQMH {\n width: 100%;\n height: 34px;\n padding: 0 12px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #f5f6f8;\n color: #1a1a2e;\n font-size: 13px;\n box-sizing: border-box;\n outline: none;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarSearchWrap__2aR7B .myScheme-module_searchInput__1hQMH:focus {\n border-color: #3b82f6;\n background: #fff;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarRight__2RTU_ {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarRight__2RTU_ .myScheme-module_topbarStatus__3sK7B {\n padding: 2px 8px;\n display: inline-flex;\n align-items: center;\n gap: 5px;\n border-radius: 999px;\n background: #eff6ff;\n color: #3b82f6;\n font-size: 11px;\n font-weight: 500;\n line-height: 17px;\n white-space: nowrap;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarRight__2RTU_ .myScheme-module_topbarStatus__3sK7B::before {\n width: 5px;\n height: 5px;\n flex-shrink: 0;\n border-radius: 50%;\n background: currentColor;\n content: '';\n}\n.myScheme-module_backButton__2pKvO {\n height: 34px;\n min-width: 72px;\n padding: 0 12px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #fff;\n color: #1a1a2e;\n font-size: 13px;\n white-space: nowrap;\n}\n.myScheme-module_backButton__2pKvO:hover {\n border-color: #c0c4cc;\n background: #fafbfc;\n}\n.myScheme-module_workbenchPage__R4fxG {\n padding: 0;\n gap: 16px;\n background: #f5f5f7;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ {\n height: 40px;\n min-height: 40px;\n margin: 16px 16px 0;\n padding: 0;\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: 12px;\n background: transparent;\n box-sizing: border-box;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r {\n min-width: 0;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageTitle__2_OS3 {\n margin: 0;\n color: #000f2c;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageDesc__3G2-a {\n margin: 2px 0 0;\n color: #737b8b;\n font-size: 12px;\n line-height: 18px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 12px;\n flex-wrap: nowrap;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_sceneStatus__1RGPl {\n height: 22px;\n padding: 2px 6px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n border-radius: 4px;\n background: #ecfef6;\n color: #079669;\n font-size: 14px;\n font-weight: 400;\n line-height: normal;\n white-space: nowrap;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_sceneStatusLoading__2al1H {\n background: #fff7e6;\n color: #d46b08;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_sceneStatusLoaded__1odxT {\n background: #ecfef6;\n color: #079669;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_primaryButton__2OA3k,\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_secondaryButton__2coh1 {\n height: 32px;\n min-height: 32px;\n padding: 0 13px;\n gap: 2px;\n border-radius: 6px;\n font-size: 14px;\n line-height: 22px;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_secondaryButton__2coh1 {\n border-color: rgba(115, 123, 139, 0.4);\n background: transparent;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_secondaryButton__2coh1:hover {\n background: transparent;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D {\n flex: 1;\n display: block;\n min-height: 0;\n min-height: 420px;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF {\n width: 100%;\n height: 100%;\n min-height: 0;\n position: relative;\n overflow: hidden;\n border: none;\n border-radius: 0;\n background: #000;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF .myScheme-module_ueTestActions__jsci5 {\n position: absolute;\n top: 16px;\n right: 16px;\n z-index: 10000;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n width: auto;\n white-space: nowrap;\n pointer-events: auto;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF .myScheme-module_ueTestActions__jsci5 .myScheme-module_testSendRoomTypeButton__2RcnC {\n position: relative !important;\n top: auto !important;\n right: auto !important;\n bottom: auto !important;\n left: auto !important;\n width: auto !important;\n min-width: 100px;\n height: 32px;\n padding: 0 12px;\n margin: 0;\n display: inline-flex;\n flex: 0 0 auto;\n align-items: center;\n justify-content: center;\n border: 1px solid #1890ff;\n border-radius: 6px;\n background: #1890ff;\n color: #fff;\n font-size: 14px;\n line-height: 30px;\n white-space: nowrap;\n word-break: keep-all;\n writing-mode: horizontal-tb;\n transform: none !important;\n cursor: pointer;\n pointer-events: auto;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF .myScheme-module_ueTestActions__jsci5 .myScheme-module_testSendRoomTypeButton__2RcnC:hover {\n border-color: #40a9ff;\n background: #40a9ff;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #enterAnimation {\n border-radius: 0 !important;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #loadingCenterImgAnimation {\n position: absolute;\n left: 50%;\n width: 80% !important;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #video-stream {\n width: 100%;\n height: 100%;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #loadingContainerImg > div:last-child {\n background-size: cover !important;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #select-input {\n right: 80px !important;\n bottom: 20px !important;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #select-input > div:last-child > div {\n overflow-x: hidden !important;\n}\n.myScheme-module_workbenchLoading__3WOEP {\n min-height: 420px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: #fff;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV {\n max-width: 460px;\n padding: 32px;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 10px;\n color: #737b8b;\n text-align: center;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV .myScheme-module_workbenchLoadErrorIcon__1XQbC {\n color: #ff4d4f;\n font-size: 32px;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV h3 {\n margin: 0;\n color: #000f2c;\n font-size: 16px;\n line-height: 24px;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV p {\n margin: 0 0 6px;\n line-height: 20px;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV .myScheme-module_workbenchLoadErrorActions__3v0st {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n.myScheme-module_sceneStage__3Gtw2 {\n height: calc(100vh - 190px);\n min-height: 420px;\n position: relative;\n overflow: hidden;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: #e8ecf4;\n}\n.myScheme-module_sceneLayer__1Gehf {\n position: absolute;\n inset: 0;\n overflow: hidden;\n background: linear-gradient(160deg, #d6dcec 0%, #c4ccde 30%, #b5bed4 60%, #e8ecf4 100%);\n}\n.myScheme-module_roomBox__2rj3E {\n position: absolute;\n left: 5%;\n right: 5%;\n top: 15%;\n bottom: 5%;\n overflow: hidden;\n border-radius: 4px;\n background: #f0f2f8;\n box-shadow: inset 0 0 80px rgba(0, 0, 0, 0.06);\n}\n.myScheme-module_backWall__1cpYv {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n height: 65%;\n background: linear-gradient(to bottom, #f5f7fb, #eef1f8);\n}\n.myScheme-module_windowBox__13veX {\n position: absolute;\n right: 5%;\n top: 10%;\n width: 35%;\n height: 60%;\n border: 1px solid rgba(255, 255, 255, 0.3);\n border-radius: 2px;\n background: linear-gradient(135deg, #b8c8e6 0%, #d4e0f5 60%, #e8f0ff 100%);\n}\n.myScheme-module_artBox__23fqd {\n position: absolute;\n left: 8%;\n top: 12%;\n width: 28%;\n height: 42%;\n border: 1px solid rgba(0, 0, 0, 0.06);\n border-radius: 2px;\n background: linear-gradient(135deg, #f0a8a8 0%, #f0c8a8 30%, #a8c8f0 60%, #c8a8f0 100%);\n}\n.myScheme-module_floorBox__9nNQ2 {\n position: absolute;\n left: 0;\n right: 0;\n bottom: 0;\n height: 35%;\n background: linear-gradient(to bottom, #d4d8e4, #c0c6d6);\n}\n.myScheme-module_carpetBox__3GFwu {\n position: absolute;\n left: 20%;\n right: 20%;\n top: 15%;\n bottom: 10%;\n border: 1px dashed rgba(255, 255, 255, 0.2);\n border-radius: 6px;\n background: rgba(255, 255, 255, 0.08);\n}\n.myScheme-module_sceneObject__vyE3e {\n position: absolute;\n z-index: 5;\n display: grid;\n place-items: center;\n border-radius: 6px;\n font-size: 10px;\n}\n.myScheme-module_sceneObjectActive__3Uihs {\n left: 43%;\n top: 47%;\n width: 52px;\n height: 36px;\n border: 2px solid #3b82f6;\n background: rgba(59, 130, 246, 0.12);\n color: #3b82f6;\n}\n.myScheme-module_sceneObjectShower___-i4L {\n left: 56%;\n top: 42%;\n width: 48px;\n height: 32px;\n border: 1px dashed rgba(107, 114, 128, 0.5);\n background: rgba(255, 255, 255, 0.15);\n color: #6b7280;\n}\n.myScheme-module_sceneObjectFloor__1sOfu {\n left: 33%;\n top: 66%;\n width: 48px;\n height: 28px;\n border: 1px dashed rgba(107, 114, 128, 0.5);\n background: rgba(255, 255, 255, 0.15);\n color: #6b7280;\n}\n.myScheme-module_sceneBadge__1eZOC {\n position: absolute;\n z-index: 10;\n max-width: calc(100% - 20px);\n padding: 2px 8px;\n border-radius: 999px;\n background: rgba(255, 255, 255, 0.85);\n color: #6b7280;\n font-size: 11px;\n line-height: 17px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_sceneBadgeTop__3kabW {\n left: 10px;\n top: 10px;\n color: #059669;\n}\n.myScheme-module_sceneBadgeLeft__2_hGM {\n left: 10px;\n bottom: 10px;\n}\n.myScheme-module_sceneBadgeRight__2DLZ- {\n right: 10px;\n bottom: 10px;\n color: #3b82f6;\n}\n.myScheme-module_viewToolbar__2Fcxi {\n position: absolute;\n left: 50%;\n bottom: 14px;\n z-index: 10;\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.9);\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04);\n transform: translateX(-50%);\n}\n.myScheme-module_viewToolbar__2Fcxi button {\n height: 28px;\n padding: 0 10px;\n border-radius: 4px;\n border: 1px solid transparent;\n background: transparent;\n color: #6b7280;\n font-size: 12px;\n}\n.myScheme-module_viewToolbar__2Fcxi .myScheme-module_toolbarActive__3-Dgr,\n.myScheme-module_viewToolbar__2Fcxi button:hover {\n border-color: #e5e7eb;\n background: #fff;\n color: #1a1a2e;\n}\n.myScheme-module_viewToolbar__2Fcxi span {\n width: 1px;\n height: 20px;\n background: #e5e7eb;\n}\n.myScheme-module_rightPanel__1UfJJ {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n.myScheme-module_panelTabs__aWvDB {\n display: flex;\n gap: 6px;\n}\n.myScheme-module_panelTabs__aWvDB button {\n flex: 1;\n height: 32px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #fff;\n color: #6b7280;\n font-size: 12px;\n font-weight: 500;\n}\n.myScheme-module_panelTabs__aWvDB .myScheme-module_panelTabActive__zd-tU {\n border-color: #3b82f6;\n background: #3b82f6;\n color: #fff;\n}\n.myScheme-module_sideCard__3MmGp {\n padding: 14px;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: #fff;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n}\n.myScheme-module_panelHeader__yKfco {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 10px;\n}\n.myScheme-module_panelHeader__yKfco h3 {\n margin: 0;\n font-size: 14px;\n line-height: 20px;\n font-weight: 600;\n color: #1a1a2e;\n}\n.myScheme-module_productPhoto__2B7ZV {\n aspect-ratio: 2.28571429;\n min-height: 110px;\n margin-bottom: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n border: 1px solid #f0f1f3;\n border-radius: 6px;\n background: linear-gradient(135deg, #dbeafe 0%, #ede9fe 50%, #fce7f3 100%);\n color: #6b7280;\n font-size: 12px;\n text-align: center;\n}\n.myScheme-module_productInfo__jBYfQ {\n margin-bottom: 8px;\n}\n.myScheme-module_productInfo__jBYfQ .myScheme-module_productName__2oKGL {\n font-size: 13px;\n line-height: 20px;\n font-weight: 600;\n}\n.myScheme-module_productInfo__jBYfQ .myScheme-module_productMeta__260co {\n margin-top: 2px;\n color: #6b7280;\n font-size: 12px;\n}\n.myScheme-module_sellingPoints__33xaS {\n margin-bottom: 8px;\n padding: 8px 10px;\n display: grid;\n gap: 2px;\n border-radius: 6px;\n background: #f9fafb;\n color: #1a1a2e;\n font-size: 12px;\n}\n.myScheme-module_sellingPoints__33xaS .myScheme-module_sellingTitle__2IrC- {\n margin-bottom: 2px;\n font-weight: 500;\n}\n.myScheme-module_statusRow__3e0S4,\n.myScheme-module_sideActions__MJt4B {\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n}\n.myScheme-module_sideActions__MJt4B {\n margin-top: 10px;\n}\n.myScheme-module_sideActions__MJt4B .myScheme-module_primaryButton__2OA3k,\n.myScheme-module_sideActions__MJt4B .myScheme-module_secondaryButton__2coh1 {\n flex: 1;\n min-width: 0;\n height: 30px;\n min-height: 30px;\n padding: 0 10px;\n font-size: 12px;\n}\n.myScheme-module_sliderItem__2xeXj {\n margin-bottom: 8px;\n}\n.myScheme-module_sliderItem__2xeXj input {\n width: 100%;\n height: 4px;\n accent-color: #3b82f6;\n}\n.myScheme-module_sliderLabel__2pr0W {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 2px;\n color: #6b7280;\n font-size: 11px;\n}\n.myScheme-module_segmentGroup__2ZvYu {\n display: flex;\n gap: 4px;\n margin-top: 8px;\n}\n.myScheme-module_segmentGroup__2ZvYu button {\n flex: 1;\n height: 26px;\n border: 1px solid #e5e7eb;\n border-radius: 4px;\n background: #fff;\n color: #6b7280;\n font-size: 11px;\n}\n.myScheme-module_segmentGroup__2ZvYu .myScheme-module_segmentActive__2JmxH {\n border-color: #3b82f6;\n background: #eff6ff;\n color: #3b82f6;\n}\n.myScheme-module_infoLine__3GNSp {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n margin-top: 8px;\n color: #6b7280;\n font-size: 12px;\n}\n.myScheme-module_infoLine__3GNSp span:last-child {\n min-width: 0;\n color: #1a1a2e;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_exportButton__2dmSV {\n width: 100%;\n height: 34px;\n margin-top: 12px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #fff;\n color: #3b82f6;\n font-size: 13px;\n font-weight: 500;\n}\n.myScheme-module_exportButton__2dmSV:hover {\n background: #eff6ff;\n}\n.myScheme-module_modalOverlay__2-LY3 {\n position: fixed;\n inset: 0;\n z-index: 1200;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n opacity: 0;\n pointer-events: none;\n transition: opacity 0.18s ease;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalMask__2jhCK {\n position: absolute;\n inset: 0;\n background: rgba(18, 28, 42, 0.3);\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX {\n position: relative;\n width: min(100%, calc(100vw - 48px));\n max-height: calc(100vh - 48px);\n overflow: auto;\n border-radius: 12px;\n background: #fff;\n transform: scale(0.96);\n transition: transform 0.18s ease;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalHeader__3dndE {\n height: 52px;\n padding: 0 16px 0 24px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n border-bottom: 1px solid #dde1e6;\n box-sizing: border-box;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalHeader__3dndE .myScheme-module_modalTitle__3lzET {\n color: #000;\n font-size: 16px;\n line-height: 20px;\n font-weight: 600;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalHeader__3dndE .myScheme-module_modalClose__nehKy {\n width: 28px;\n height: 28px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n background: transparent;\n color: #737b8b;\n font-size: 16px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalHeader__3dndE .myScheme-module_modalClose__nehKy:hover {\n background: #f3f4f6;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalBody__3FEFU {\n padding: 12px 24px 0;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalFooter__2S_E9 {\n min-height: 64px;\n padding: 0 24px;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 20px;\n flex-wrap: wrap;\n border-top: 1px solid #dde1e6;\n box-sizing: border-box;\n}\n.myScheme-module_modalOverlayOpen__3voZn {\n opacity: 1;\n pointer-events: auto;\n}\n.myScheme-module_modalOverlayOpen__3voZn .myScheme-module_modalPanelOpen__22C1W {\n transform: scale(1);\n}\n.myScheme-module_modalDesc__3KgKO {\n margin: 0;\n color: #737b8b;\n font-size: 14px;\n line-height: 20px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA {\n max-height: min(720px, calc(100vh - 48px));\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border-radius: 8px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalHeader__3dndE {\n height: 44px;\n min-height: 44px;\n padding: 0 16px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalHeader__3dndE .myScheme-module_modalTitle__3lzET {\n font-size: 14px;\n line-height: 20px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalHeader__3dndE .myScheme-module_modalClose__nehKy {\n width: 24px;\n height: 24px;\n border-radius: 4px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalBody__3FEFU {\n min-height: 0;\n padding: 0 16px;\n display: flex;\n flex: 1;\n flex-direction: column;\n overflow: hidden;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalFooter__2S_E9 {\n flex: 0 0 auto;\n min-height: 54px;\n padding: 10px 16px;\n border-top: 1px solid #f1f3f5;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalDesc__3KgKO {\n margin-bottom: 10px;\n color: #737b8b;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableHeader__3zi3I,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableRow__2my5l {\n grid-template-columns: 96px minmax(0, 1fr) 76px 86px 48px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableHeader__3zi3I > div,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableRow__2my5l > div {\n white-space: nowrap;\n word-break: keep-all;\n}\n.myScheme-module_formPanel__1b3n6,\n.myScheme-module_summaryBox__2XD76 {\n padding: 14px;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: #fff;\n}\n.myScheme-module_formPanel__1b3n6 h3,\n.myScheme-module_summaryBox__2XD76 h3 {\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 20px;\n font-weight: 600;\n}\n.myScheme-module_formPanel__1b3n6 {\n margin-bottom: 14px;\n}\n.myScheme-module_formGrid__2dNVF {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 10px;\n}\n.myScheme-module_formBlock__2gAj2 {\n display: flex;\n flex-direction: column;\n gap: 3px;\n}\n.myScheme-module_formBlock__2gAj2 .myScheme-module_formLabel__Yde9r {\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_formBlock__2gAj2 .myScheme-module_formInput__wKddg {\n width: 100%;\n height: 34px;\n padding: 0 10px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #fff;\n box-sizing: border-box;\n color: #1a1a2e;\n font-size: 13px;\n outline: none;\n}\n.myScheme-module_formBlock__2gAj2 .myScheme-module_formInput__wKddg:focus {\n border-color: #3b82f6;\n}\n.myScheme-module_summaryGrid__1O0Pj {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 6px;\n color: #1a1a2e;\n font-size: 13px;\n line-height: 20px;\n}\n.myScheme-module_summaryGrid__1O0Pj span {\n color: #6b7280;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs {\n height: 499px;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n font-family: PingFang SC, Microsoft YaHei, sans-serif;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalBody__3FEFU {\n min-height: 0;\n padding: 12px 24px 0;\n flex: 1;\n overflow: auto;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalFooter__2S_E9 {\n flex: 0 0 64px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalFooter__2S_E9 .myScheme-module_secondaryButton__2coh1,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalFooter__2S_E9 .myScheme-module_primaryButton__2OA3k {\n height: 32px;\n min-height: 32px;\n padding: 0 16px;\n border-radius: 4px;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalFooter__2S_E9 .myScheme-module_secondaryButton__2coh1 {\n border-color: #717d99;\n color: #737b8b;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_formPanel__1b3n6,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryBox__2XD76 {\n padding: 0;\n border: none;\n border-radius: 0;\n background: transparent;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_formPanel__1b3n6 h3,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryBox__2XD76 h3 {\n margin: 0;\n color: #000;\n font-size: 14px;\n line-height: 20px;\n font-weight: 600;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_formPanel__1b3n6 {\n margin: 24px 0 0;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRows__1bzF0 {\n margin-top: 19px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ {\n height: 40px;\n display: grid;\n grid-template-columns: 72px 320px;\n align-items: center;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formLabel__Yde9r {\n position: relative;\n color: #737b8b;\n font-size: 14px;\n line-height: 20px;\n font-weight: 400;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_requiredMark__14sip {\n position: absolute;\n left: -10px;\n color: #ff4b04;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_readonlyFormInput__3ItTL,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg {\n width: 320px;\n height: 40px;\n padding: 0 10px;\n border: none;\n border-radius: 4px;\n background: #f0f2f5;\n color: #000;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n box-sizing: border-box;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_readonlyFormInput__3ItTL {\n display: flex;\n align-items: center;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg {\n outline: none;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg::-moz-placeholder {\n color: #d1d5db;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg::placeholder {\n color: #d1d5db;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg:focus {\n box-shadow: 0 0 0 1px #1890ff inset;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryBox__2XD76 {\n margin-top: 28px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryGrid__1O0Pj {\n margin-top: 16px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n color: #000;\n font-size: 14px;\n line-height: 20px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryError__2hbUw {\n margin-top: 12px;\n color: #f5222d;\n font-size: 13px;\n line-height: 20px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryRow__2BzvS {\n display: grid;\n grid-template-columns: 72px minmax(0, 1fr);\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryRow__2BzvS > span {\n color: #737b8b;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryRow__2BzvS > div {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_exportTableWrap__1dVHQ {\n min-height: 0;\n max-height: min(480px, calc(100vh - 220px));\n overflow: auto;\n margin-bottom: 16px;\n border: 0;\n border-radius: 0;\n}\n.myScheme-module_exportDownloadError__2vK4B {\n margin-bottom: 10px;\n padding: 8px 10px;\n border: 1px solid #ffccc7;\n border-radius: 4px;\n background: #fff2f0;\n color: #cf1322;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_exportTableWrapLoading__1tUrO {\n min-height: 160px;\n}\n.myScheme-module_exportTableWrapLoading__1tUrO .ant-spin-nested-loading,\n.myScheme-module_exportTableWrapLoading__1tUrO .ant-spin-container,\n.myScheme-module_exportTableWrapLoading__1tUrO .myScheme-module_exportTable__7y2Nv {\n min-height: inherit;\n}\n.myScheme-module_exportTableWrapLoading__1tUrO .ant-spin {\n max-height: none;\n}\n.myScheme-module_exportTable__7y2Nv {\n min-width: min(508px, calc(100vw - 80px));\n background: #fff;\n font-size: 12px;\n}\n.myScheme-module_exportTableHeader__3zi3I,\n.myScheme-module_exportTableRow__2my5l {\n display: grid;\n grid-template-columns: 96px minmax(0, 1fr) 76px 86px 48px;\n}\n.myScheme-module_exportTableHeader__3zi3I > div,\n.myScheme-module_exportTableRow__2my5l > div {\n min-width: 0;\n min-height: 40px;\n padding: 8px 10px;\n display: flex;\n align-items: center;\n border-bottom: 1px solid #f0f1f3;\n box-sizing: border-box;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n word-break: keep-all;\n}\n.myScheme-module_exportTableHeader__3zi3I {\n position: sticky;\n top: 0;\n z-index: 1;\n background: #f0f2f5;\n color: #737b8b;\n font-size: 11px;\n font-weight: 600;\n}\n.myScheme-module_exportTableRow__2my5l:last-child > div {\n border-bottom: 0;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableRow__2my5l > div:nth-child(4) {\n overflow: hidden;\n text-overflow: clip;\n white-space: normal;\n word-break: break-all;\n overflow-wrap: anywhere;\n line-height: 18px;\n}\n.myScheme-module_exportTableNotice__3E2oh {\n min-height: 80px;\n padding: 16px 12px;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 10px;\n color: #6b7280;\n font-size: 13px;\n line-height: 18px;\n border-bottom: 1px solid #f0f1f3;\n box-sizing: border-box;\n}\n@media (max-width: 1100px) {\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 {\n flex-wrap: wrap;\n gap: 10px 16px;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr {\n flex-basis: 200px;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2 {\n flex-basis: 160px;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2.myScheme-module_templateFilterField__1ojde {\n flex-basis: 200px;\n }\n .myScheme-module_renderLayout__X4A8D {\n grid-template-columns: 1fr;\n }\n .myScheme-module_rightPanel__1UfJJ {\n display: grid;\n grid-template-columns: 1fr 1fr;\n align-items: start;\n }\n .myScheme-module_rightPanel__1UfJJ .myScheme-module_panelTabs__aWvDB {\n grid-column: -1;\n }\n}\n@media (max-width: 768px) {\n .myScheme-module_page__3ldLy .myScheme-module_container__p3iuY {\n padding: 0;\n }\n .myScheme-module_headerSection__3V8s_,\n .myScheme-module_workbenchActions__3Y2G6,\n .myScheme-module_toolbar__2xU64 {\n align-items: stretch;\n flex-direction: column;\n }\n .myScheme-module_listPage__Zj7rr,\n .myScheme-module_workbenchPage__R4fxG {\n padding: 16px;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr,\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2,\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2.myScheme-module_templateFilterField__1ojde,\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 {\n width: 100%;\n flex: none;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 {\n justify-content: stretch;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6 {\n flex: 1;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_paginationBar__MIEed {\n padding: 12px;\n overflow-x: auto;\n }\n .myScheme-module_globalTopbar__2Axph {\n align-items: stretch;\n flex-direction: column;\n padding: 12px 16px;\n }\n .myScheme-module_topbarRight__2RTU_ {\n width: 100%;\n }\n .myScheme-module_sceneStatus__1RGPl {\n width: 100%;\n justify-content: center;\n box-sizing: border-box;\n }\n .myScheme-module_topbarSearchWrap__2aR7B {\n flex: none;\n width: 100%;\n min-width: 0;\n }\n .myScheme-module_topbarStatus__3sK7B {\n justify-content: center;\n white-space: normal;\n text-align: center;\n }\n .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr {\n width: 100%;\n }\n .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2 {\n width: 100%;\n flex: none;\n }\n .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2.myScheme-module_templateFilterField__1ojde {\n flex-basis: auto;\n }\n .myScheme-module_selectWrap__1lQjP,\n .myScheme-module_selectTrigger__3tWi0,\n .myScheme-module_filterTabs__2T2j2,\n .myScheme-module_primaryButton__2OA3k,\n .myScheme-module_secondaryButton__2coh1 {\n width: 100%;\n }\n .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6 {\n flex: 1;\n }\n .myScheme-module_cardGrid__3wP3h {\n grid-template-columns: 1fr;\n }\n .myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 {\n align-items: flex-start;\n flex-direction: column;\n }\n .myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 .myScheme-module_replaceText__2t-7Z {\n width: 100%;\n white-space: normal;\n }\n .myScheme-module_viewToolbar__2Fcxi {\n width: calc(100% - 20px);\n overflow-x: auto;\n }\n .myScheme-module_rightPanel__1UfJJ {\n display: flex;\n }\n .myScheme-module_formGrid__2dNVF,\n .myScheme-module_summaryGrid__1O0Pj {\n grid-template-columns: 1fr;\n }\n .myScheme-module_workbenchPage__R4fxG {\n padding: 0;\n gap: 12px;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ {\n height: auto;\n min-height: 40px;\n margin: 12px 16px 0;\n align-items: flex-start;\n flex-direction: column;\n gap: 8px;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r {\n width: 100%;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageDesc__3G2-a {\n overflow: visible;\n white-space: normal;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 {\n width: 100%;\n align-items: center;\n justify-content: flex-start;\n flex-direction: row;\n flex-wrap: wrap;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_sceneStatus__1RGPl,\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_primaryButton__2OA3k,\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_secondaryButton__2coh1 {\n width: auto;\n }\n}\n";
60456
+ var css_248z$l = ".myScheme-module_page__3ldLy {\n height: 100%;\n min-height: 0;\n overflow: auto;\n background: #f5f5f7;\n color: #000f2c;\n font-size: 12px;\n}\n.myScheme-module_page__3ldLy .myScheme-module_container__p3iuY {\n width: 100%;\n height: 100%;\n min-height: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n.myScheme-module_primaryButton__2OA3k,\n.myScheme-module_secondaryButton__2coh1,\n.myScheme-module_linkButton__1tQSv,\n.myScheme-module_filterTab__2W0m6,\n.myScheme-module_backButton__2pKvO,\n.myScheme-module_selectTrigger__3tWi0,\n.myScheme-module_selectOption__2JCf7,\n.myScheme-module_modalClose__nehKy,\n.myScheme-module_exportButton__2dmSV,\n.myScheme-module_panelTabs__aWvDB button,\n.myScheme-module_sceneObject__vyE3e,\n.myScheme-module_viewToolbar__2Fcxi button,\n.myScheme-module_segmentGroup__2ZvYu button {\n border: none;\n outline: none;\n cursor: pointer;\n transition: all 0.12s ease;\n}\n.myScheme-module_primaryButton__2OA3k,\n.myScheme-module_secondaryButton__2coh1 {\n min-height: 32px;\n padding: 0 12px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n border-radius: 4px;\n font-size: 12px;\n font-weight: 400;\n white-space: nowrap;\n box-sizing: border-box;\n}\n.myScheme-module_primaryButton__2OA3k:disabled,\n.myScheme-module_secondaryButton__2coh1:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n.myScheme-module_primaryButton__2OA3k {\n border: 1px solid #1890ff;\n background: #1890ff;\n color: #fff;\n}\n.myScheme-module_primaryButton__2OA3k:hover {\n border-color: #0077e6;\n background: #0077e6;\n}\n.myScheme-module_secondaryButton__2coh1 {\n border: 1px solid #c5ccd6;\n background: #fff;\n color: #737b8b;\n}\n.myScheme-module_secondaryButton__2coh1:hover {\n border-color: #1890ff;\n background: #fff;\n color: #1890ff;\n}\n.myScheme-module_statusOk__4Ic1T,\n.myScheme-module_statusInfo__1dS1L,\n.myScheme-module_statusNeutral__3qNrt {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n padding: 2px 8px;\n border-radius: 999px;\n font-size: 11px;\n line-height: 17px;\n font-weight: 500;\n white-space: nowrap;\n}\n.myScheme-module_statusOk__4Ic1T::before,\n.myScheme-module_statusInfo__1dS1L::before,\n.myScheme-module_statusNeutral__3qNrt::before {\n content: '';\n width: 5px;\n height: 5px;\n border-radius: 50%;\n background: currentColor;\n flex-shrink: 0;\n}\n.myScheme-module_statusOk__4Ic1T {\n background: #ecfdf5;\n color: #059669;\n}\n.myScheme-module_statusInfo__1dS1L {\n background: #eff6ff;\n color: #3b82f6;\n}\n.myScheme-module_statusNeutral__3qNrt {\n background: #f3f4f6;\n color: #6b7280;\n}\n.myScheme-module_listPage__Zj7rr,\n.myScheme-module_workbenchPage__R4fxG {\n flex: 1;\n height: auto;\n min-height: 0;\n padding: 24px;\n display: flex;\n flex-direction: column;\n gap: 14px;\n box-sizing: border-box;\n}\n.myScheme-module_listPage__Zj7rr {\n padding: 16px;\n gap: 16px;\n font-family: PingFang SC, Microsoft YaHei, sans-serif;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_headerSection__3V8s_ {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n min-height: 40px;\n gap: 12px;\n margin-bottom: 0;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r {\n min-width: 0;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageTitle__2_OS3 {\n margin: 0;\n font-size: 14px;\n line-height: 20px;\n font-weight: 500;\n color: #000f2c;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageDesc__3G2-a {\n width: auto;\n margin: 2px 0 0;\n font-size: 12px;\n line-height: 18px;\n color: #737b8b;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 {\n display: flex;\n align-items: center;\n gap: 16px;\n margin-bottom: 0;\n flex-wrap: nowrap;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr {\n position: relative;\n width: 240px;\n flex: 0 0 240px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr .myScheme-module_searchIcon__1B7Y5 {\n position: absolute;\n top: 50%;\n left: 12px;\n transform: translateY(-50%);\n color: #737b8b;\n font-size: 16px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr .myScheme-module_searchInput__1hQMH {\n width: 100%;\n height: 32px;\n padding: 0 10px 0 34px;\n border: 1px solid #fff;\n border-radius: 6px;\n background: #fff;\n color: #000f2c;\n font-size: 14px;\n line-height: 22px;\n box-sizing: border-box;\n outline: none;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr .myScheme-module_searchInput__1hQMH:focus {\n border-color: #1890ff;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2 {\n min-width: 0;\n display: flex;\n align-items: center;\n flex: 0 0 auto;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2.myScheme-module_templateFilterField__1ojde .myScheme-module_filterSelect__WzvVu {\n width: 180px;\n flex-basis: 180px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2 .myScheme-module_filterLabel__1SVxS {\n flex: 0 0 auto;\n color: #000f2c;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n white-space: nowrap;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu {\n width: 140px;\n flex: 0 0 140px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu .ant-select-selector {\n height: 32px !important;\n padding: 0 28px 0 8px !important;\n border-color: #fff !important;\n border-radius: 4px;\n background: #fff;\n box-shadow: none !important;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu .ant-select-selection-item {\n min-width: 0;\n padding-right: 0;\n color: #737b8b;\n font-size: 14px;\n line-height: 30px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu .ant-select-arrow {\n right: 8px;\n color: #737b8b;\n font-size: 10px;\n transition: transform 0.16s ease;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu:hover .ant-select-selector,\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu.ant-select-focused .ant-select-selector,\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu.ant-select-open .ant-select-selector {\n border-color: #1890ff !important;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterSelect__WzvVu.ant-select-open .ant-select-arrow {\n transform: rotate(180deg);\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 {\n display: inline-flex;\n height: 32px;\n padding: 3px;\n border: 1px solid #fff;\n border-radius: 6px;\n background: #fff;\n overflow: hidden;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6 {\n height: 24px;\n padding: 0 10px;\n border-right: 0;\n background: transparent;\n color: #737b8b;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6:last-child {\n border-right: 0;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6.myScheme-module_filterTabActive__2JDzG {\n border-radius: 3px;\n background: #f0f2f5;\n color: #000f2c;\n font-weight: 500;\n box-shadow: none;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_cardGrid__3wP3h {\n width: 100%;\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 360px));\n grid-auto-rows: 1fr;\n gap: clamp(12px, 1.2vw, 16px);\n justify-content: start;\n align-items: stretch;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq {\n min-height: clamp(360px, 52vh, 560px);\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq .ant-spin-nested-loading,\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq .ant-spin-container,\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq .myScheme-module_cardGrid__3wP3h {\n min-height: inherit;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listLoadingArea__2GIGq .ant-spin {\n max-height: none;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listVirtualSentinel__110vy {\n grid-column: -1;\n width: 100%;\n height: 1px;\n pointer-events: none;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_listNotice__3vlwx {\n min-width: 0;\n width: 100%;\n height: 100%;\n min-height: clamp(240px, 21vw, 320px);\n padding: 20px;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 10px;\n border: 1px solid #e5e7eb;\n border-radius: 12px;\n background: #fff;\n color: #6b7280;\n font-size: 13px;\n line-height: 18px;\n box-sizing: border-box;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_emptyState__1cRpf {\n min-width: 0;\n min-height: clamp(240px, 21vw, 320px);\n padding: 40px 16px;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 10px;\n border: 1px dashed #d7dce5;\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.46);\n color: #6b7280;\n text-align: center;\n box-sizing: border-box;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_emptyState__1cRpf .myScheme-module_emptyIcon__1BcYl {\n width: 44px;\n height: 44px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #b8c0cc;\n font-size: 32px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_emptyState__1cRpf .myScheme-module_emptyTitle__2F90O {\n color: #1a1a2e;\n font-size: 15px;\n line-height: 22px;\n font-weight: 600;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_emptyState__1cRpf .myScheme-module_emptyDesc__2E1Fv {\n margin-bottom: 4px;\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_paginationInfo__1Levb {\n width: 100%;\n margin-top: 10px;\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n text-align: right;\n}\n.myScheme-module_listPage__Zj7rr .myScheme-module_paginationBar__MIEed {\n width: 100%;\n padding: 16px 20px 20px;\n display: flex;\n justify-content: flex-end;\n box-sizing: border-box;\n}\n.myScheme-module_inlineRetryButton__2rwfm {\n padding: 0;\n border: none;\n background: transparent;\n color: #3b82f6;\n cursor: pointer;\n}\n.myScheme-module_filterSelectDropdown__mYCGA {\n padding: 8px;\n border: 1px solid rgba(113, 125, 153, 0.3);\n border-radius: 4px;\n background: #fff;\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.16);\n}\n.myScheme-module_filterSelectDropdown__mYCGA .ant-select-item {\n min-width: 0;\n height: 40px;\n min-height: 40px;\n padding: 0 12px;\n display: flex;\n align-items: center;\n border-radius: 4px;\n color: #616778;\n font-size: 14px;\n line-height: 40px;\n}\n.myScheme-module_filterSelectDropdown__mYCGA .ant-select-item-option-content {\n min-width: 0;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_filterSelectDropdown__mYCGA .ant-select-item-option-active:not(.ant-select-item-option-disabled) {\n background: #f5f6f8;\n color: #000f2c;\n}\n.myScheme-module_filterSelectDropdown__mYCGA .ant-select-item-option-selected:not(.ant-select-item-option-disabled) {\n background: #f0f2f5;\n color: #000f2c;\n font-weight: 500;\n}\n.myScheme-module_filterSelectDropdown__mYCGA .myScheme-module_filterOptionText__2xi5S {\n min-width: 0;\n width: 100%;\n display: block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_schemeTableWrap__1JbKU {\n min-width: 0;\n width: 100%;\n overflow: hidden;\n border: 1px solid #fff;\n border-radius: 6px;\n background: #fff;\n box-sizing: border-box;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE {\n width: 100%;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table {\n color: #000f2c;\n font-size: 14px;\n font-weight: 400;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-container {\n border-radius: 6px 6px 0 0;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-content {\n overscroll-behavior-x: contain;\n -webkit-overflow-scrolling: touch;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-content::-webkit-scrollbar {\n height: 8px;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-content::-webkit-scrollbar-track {\n background: #f5f6f8;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-content::-webkit-scrollbar-thumb {\n border: 2px solid #f5f6f8;\n border-radius: 8px;\n background: #c5ccd6;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-thead > tr > th {\n height: 32px;\n padding: 4px 12px;\n border-bottom: 0;\n background: #f0f2f5;\n color: #737b8b;\n font-size: 12px;\n font-weight: 400;\n line-height: 20px;\n white-space: nowrap;\n box-sizing: border-box;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-tbody > tr > td {\n height: 48px;\n padding: 4px 12px;\n border-bottom-color: #f1f3f5;\n background: #fff;\n color: #000f2c;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n box-sizing: border-box;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-cell-fix-right {\n background: #fff;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-thead .ant-table-cell-fix-right {\n background: #f0f2f5;\n}\n.myScheme-module_schemeTableWrap__1JbKU .myScheme-module_schemeTable__1pjmE .ant-table-placeholder .ant-table-cell {\n height: 96px;\n color: #737b8b;\n}\n.myScheme-module_tableCellText__1Xedl {\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_tableActions__1ZGgT {\n display: flex;\n align-items: center;\n gap: 10px;\n white-space: nowrap;\n}\n.myScheme-module_generatedStatus__20kIV,\n.myScheme-module_pendingStatus__2gFeC {\n height: 20px;\n padding: 0 6px;\n display: inline-flex;\n align-items: center;\n border-radius: 4px;\n font-size: 14px;\n line-height: 20px;\n white-space: nowrap;\n}\n.myScheme-module_generatedStatus__20kIV {\n background: #e9f9f1;\n color: #1fb978;\n}\n.myScheme-module_pendingStatus__2gFeC {\n background: #f0f2f5;\n color: #a0a7b4;\n}\n.myScheme-module_tableEmpty__32CE2 {\n min-height: 64px;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n.myScheme-module_schemeCard__jPfmS,\n.myScheme-module_createCard__2pnhr {\n min-width: 0;\n width: 100%;\n height: 100%;\n overflow: hidden;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: #fff;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n}\n.myScheme-module_schemeCard__jPfmS {\n display: flex;\n flex-direction: column;\n transition: box-shadow 0.15s, transform 0.1s;\n}\n.myScheme-module_schemeCard__jPfmS:hover {\n transform: translateY(-1px);\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04);\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_coverWrap__1hGe6 {\n position: relative;\n aspect-ratio: 2.13333333;\n overflow: hidden;\n border-bottom: 1px solid #f0f1f3;\n background: linear-gradient(135deg, #dbeafe 0%, #ede9fe 50%, #fce7f3 100%);\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_coverWrap__1hGe6::after {\n content: '';\n position: absolute;\n inset: 0;\n background: linear-gradient(to top, rgba(0, 0, 0, 0.06), transparent 40%);\n opacity: 0;\n transition: opacity 0.2s;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_coverWrap__1hGe6 .myScheme-module_coverImage__3VgGP {\n width: 100%;\n height: 100%;\n display: block;\n -o-object-fit: cover;\n object-fit: cover;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_coverWrap__1hGe6 .myScheme-module_coverPlaceholder__3VJEL {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, #e0e7ff 0%, #fafbfc 100%);\n color: #6b7280;\n font-size: 13px;\n}\n.myScheme-module_schemeCard__jPfmS:hover .myScheme-module_coverWrap__1hGe6::after {\n opacity: 1;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX {\n padding: 14px;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX .myScheme-module_schemeTitle__3Pxgw {\n margin: 0 0 4px;\n font-size: 15px;\n line-height: 22px;\n font-weight: 600;\n color: #1a1a2e;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX .myScheme-module_customerLine__37-HC,\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX .myScheme-module_metaLine__1yrw5 {\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardContent__2QsLX .myScheme-module_tagRow__1g3gZ {\n margin-top: 8px;\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 {\n margin-top: auto;\n min-height: 45px;\n padding: 10px 14px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 10px;\n border-top: 1px solid #f0f1f3;\n background: #fafbfc;\n box-sizing: border-box;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 .myScheme-module_replaceText__2t-7Z {\n min-width: 0;\n color: #6b7280;\n font-size: 12px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 .myScheme-module_footerActions__JKjxC {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-shrink: 0;\n}\n.myScheme-module_createCard__2pnhr {\n min-height: clamp(240px, 21vw, 320px);\n padding: 20px;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n border: 2px dashed #e5e7eb;\n background: transparent;\n box-shadow: none;\n}\n.myScheme-module_createCard__2pnhr .myScheme-module_createIcon__10zAg {\n font-size: 32px;\n line-height: 1;\n color: #d1d5db;\n}\n.myScheme-module_createCard__2pnhr .myScheme-module_createTitle__2GMKS {\n color: #6b7280;\n font-size: 14px;\n}\n.myScheme-module_linkButton__1tQSv {\n padding: 0;\n background: transparent;\n color: #1890ff;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n}\n.myScheme-module_linkButton__1tQSv:hover {\n color: #0077e6;\n}\n.myScheme-module_toast__rWmQY {\n position: fixed;\n top: 28px;\n left: 50%;\n transform: translateX(-50%);\n z-index: 1300;\n width: -moz-fit-content;\n width: fit-content;\n min-width: 0;\n max-width: calc(100vw - 48px);\n min-height: 28px;\n padding: 0 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n border: 1px solid #6AB015;\n border-radius: 5px;\n background: #6AB015;\n color: #fff;\n font-size: 12px;\n line-height: 18px;\n box-shadow: 0 6px 18px rgba(15, 23, 42, 0.12);\n box-sizing: border-box;\n}\n.myScheme-module_toast__rWmQY .anticon {\n flex-shrink: 0;\n color: #fff;\n font-size: 13px;\n}\n.myScheme-module_toast__rWmQY span {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_toastError__hL_qA {\n border-color: #d9363e;\n background: #d9363e;\n}\n.myScheme-module_globalTopbar__2Axph {\n position: sticky;\n top: 0;\n z-index: 20;\n min-height: 59px;\n padding: 12px 24px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n border-bottom: 1px solid #e5e7eb;\n background: #fff;\n box-sizing: border-box;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarBreadcrumb__1s98w {\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n white-space: nowrap;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarSearchWrap__2aR7B {\n flex: 0 1 auto;\n width: min(360px, 30vw);\n min-width: 220px;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarSearchWrap__2aR7B .myScheme-module_searchInput__1hQMH {\n width: 100%;\n height: 34px;\n padding: 0 12px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #f5f6f8;\n color: #1a1a2e;\n font-size: 13px;\n box-sizing: border-box;\n outline: none;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarSearchWrap__2aR7B .myScheme-module_searchInput__1hQMH:focus {\n border-color: #3b82f6;\n background: #fff;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarRight__2RTU_ {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarRight__2RTU_ .myScheme-module_topbarStatus__3sK7B {\n padding: 2px 8px;\n display: inline-flex;\n align-items: center;\n gap: 5px;\n border-radius: 999px;\n background: #eff6ff;\n color: #3b82f6;\n font-size: 11px;\n font-weight: 500;\n line-height: 17px;\n white-space: nowrap;\n}\n.myScheme-module_globalTopbar__2Axph .myScheme-module_topbarRight__2RTU_ .myScheme-module_topbarStatus__3sK7B::before {\n width: 5px;\n height: 5px;\n flex-shrink: 0;\n border-radius: 50%;\n background: currentColor;\n content: '';\n}\n.myScheme-module_backButton__2pKvO {\n height: 34px;\n min-width: 72px;\n padding: 0 12px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #fff;\n color: #1a1a2e;\n font-size: 13px;\n white-space: nowrap;\n}\n.myScheme-module_backButton__2pKvO:hover {\n border-color: #c0c4cc;\n background: #fafbfc;\n}\n.myScheme-module_workbenchPage__R4fxG {\n padding: 0;\n gap: 16px;\n background: #f5f5f7;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ {\n height: 40px;\n min-height: 40px;\n margin: 16px 16px 0;\n padding: 0;\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: 12px;\n background: transparent;\n box-sizing: border-box;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r {\n min-width: 0;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageTitle__2_OS3 {\n margin: 0;\n color: #000f2c;\n font-size: 14px;\n font-weight: 500;\n line-height: 20px;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageDesc__3G2-a {\n margin: 2px 0 0;\n color: #737b8b;\n font-size: 12px;\n line-height: 18px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 12px;\n flex-wrap: nowrap;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_sceneStatus__1RGPl {\n height: 22px;\n padding: 2px 6px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n border-radius: 4px;\n background: #ecfef6;\n color: #079669;\n font-size: 14px;\n font-weight: 400;\n line-height: normal;\n white-space: nowrap;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_sceneStatusLoading__2al1H {\n background: #fff7e6;\n color: #d46b08;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_sceneStatusLoaded__1odxT {\n background: #ecfef6;\n color: #079669;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_primaryButton__2OA3k,\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_secondaryButton__2coh1 {\n height: 32px;\n min-height: 32px;\n padding: 0 13px;\n gap: 2px;\n border-radius: 6px;\n font-size: 14px;\n line-height: 22px;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_secondaryButton__2coh1 {\n border-color: rgba(115, 123, 139, 0.4);\n background: transparent;\n}\n.myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_secondaryButton__2coh1:hover {\n background: transparent;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D {\n flex: 1;\n display: block;\n min-height: 0;\n min-height: 420px;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF {\n width: 100%;\n height: 100%;\n min-height: 0;\n position: relative;\n overflow: hidden;\n border: none;\n border-radius: 0;\n background: #000;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF .myScheme-module_ueTestActions__jsci5 {\n position: absolute;\n top: 16px;\n right: 16px;\n z-index: 10000;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 8px;\n width: auto;\n white-space: nowrap;\n pointer-events: auto;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF .myScheme-module_ueTestActions__jsci5 .myScheme-module_testSendRoomTypeButton__2RcnC {\n position: relative !important;\n top: auto !important;\n right: auto !important;\n bottom: auto !important;\n left: auto !important;\n width: auto !important;\n min-width: 100px;\n height: 32px;\n padding: 0 12px;\n margin: 0;\n display: inline-flex;\n flex: 0 0 auto;\n align-items: center;\n justify-content: center;\n border: 1px solid #1890ff;\n border-radius: 6px;\n background: #1890ff;\n color: #fff;\n font-size: 14px;\n line-height: 30px;\n white-space: nowrap;\n word-break: keep-all;\n writing-mode: horizontal-tb;\n transform: none !important;\n cursor: pointer;\n pointer-events: auto;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF .myScheme-module_ueTestActions__jsci5 .myScheme-module_testSendRoomTypeButton__2RcnC:hover {\n border-color: #40a9ff;\n background: #40a9ff;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #enterAnimation {\n border-radius: 0 !important;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #loadingCenterImgAnimation {\n position: absolute;\n left: 50%;\n width: 80% !important;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #video-stream {\n width: 100%;\n height: 100%;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #loadingContainerImg > div:last-child {\n background-size: cover !important;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #select-input {\n right: 80px !important;\n bottom: 20px !important;\n}\n.myScheme-module_workbenchPage__R4fxG .myScheme-module_renderLayout__X4A8D .myScheme-module_uePreviewWrap__1_4WF #select-input > div:last-child > div {\n overflow-x: hidden !important;\n}\n.myScheme-module_workbenchLoading__3WOEP {\n min-height: 420px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: #fff;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV {\n max-width: 460px;\n padding: 32px;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 10px;\n color: #737b8b;\n text-align: center;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV .myScheme-module_workbenchLoadErrorIcon__1XQbC {\n color: #ff4d4f;\n font-size: 32px;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV h3 {\n margin: 0;\n color: #000f2c;\n font-size: 16px;\n line-height: 24px;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV p {\n margin: 0 0 6px;\n line-height: 20px;\n}\n.myScheme-module_workbenchLoading__3WOEP .myScheme-module_workbenchLoadError__14TEV .myScheme-module_workbenchLoadErrorActions__3v0st {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n.myScheme-module_sceneStage__3Gtw2 {\n height: calc(100vh - 190px);\n min-height: 420px;\n position: relative;\n overflow: hidden;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: #e8ecf4;\n}\n.myScheme-module_sceneLayer__1Gehf {\n position: absolute;\n inset: 0;\n overflow: hidden;\n background: linear-gradient(160deg, #d6dcec 0%, #c4ccde 30%, #b5bed4 60%, #e8ecf4 100%);\n}\n.myScheme-module_roomBox__2rj3E {\n position: absolute;\n left: 5%;\n right: 5%;\n top: 15%;\n bottom: 5%;\n overflow: hidden;\n border-radius: 4px;\n background: #f0f2f8;\n box-shadow: inset 0 0 80px rgba(0, 0, 0, 0.06);\n}\n.myScheme-module_backWall__1cpYv {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n height: 65%;\n background: linear-gradient(to bottom, #f5f7fb, #eef1f8);\n}\n.myScheme-module_windowBox__13veX {\n position: absolute;\n right: 5%;\n top: 10%;\n width: 35%;\n height: 60%;\n border: 1px solid rgba(255, 255, 255, 0.3);\n border-radius: 2px;\n background: linear-gradient(135deg, #b8c8e6 0%, #d4e0f5 60%, #e8f0ff 100%);\n}\n.myScheme-module_artBox__23fqd {\n position: absolute;\n left: 8%;\n top: 12%;\n width: 28%;\n height: 42%;\n border: 1px solid rgba(0, 0, 0, 0.06);\n border-radius: 2px;\n background: linear-gradient(135deg, #f0a8a8 0%, #f0c8a8 30%, #a8c8f0 60%, #c8a8f0 100%);\n}\n.myScheme-module_floorBox__9nNQ2 {\n position: absolute;\n left: 0;\n right: 0;\n bottom: 0;\n height: 35%;\n background: linear-gradient(to bottom, #d4d8e4, #c0c6d6);\n}\n.myScheme-module_carpetBox__3GFwu {\n position: absolute;\n left: 20%;\n right: 20%;\n top: 15%;\n bottom: 10%;\n border: 1px dashed rgba(255, 255, 255, 0.2);\n border-radius: 6px;\n background: rgba(255, 255, 255, 0.08);\n}\n.myScheme-module_sceneObject__vyE3e {\n position: absolute;\n z-index: 5;\n display: grid;\n place-items: center;\n border-radius: 6px;\n font-size: 10px;\n}\n.myScheme-module_sceneObjectActive__3Uihs {\n left: 43%;\n top: 47%;\n width: 52px;\n height: 36px;\n border: 2px solid #3b82f6;\n background: rgba(59, 130, 246, 0.12);\n color: #3b82f6;\n}\n.myScheme-module_sceneObjectShower___-i4L {\n left: 56%;\n top: 42%;\n width: 48px;\n height: 32px;\n border: 1px dashed rgba(107, 114, 128, 0.5);\n background: rgba(255, 255, 255, 0.15);\n color: #6b7280;\n}\n.myScheme-module_sceneObjectFloor__1sOfu {\n left: 33%;\n top: 66%;\n width: 48px;\n height: 28px;\n border: 1px dashed rgba(107, 114, 128, 0.5);\n background: rgba(255, 255, 255, 0.15);\n color: #6b7280;\n}\n.myScheme-module_sceneBadge__1eZOC {\n position: absolute;\n z-index: 10;\n max-width: calc(100% - 20px);\n padding: 2px 8px;\n border-radius: 999px;\n background: rgba(255, 255, 255, 0.85);\n color: #6b7280;\n font-size: 11px;\n line-height: 17px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.myScheme-module_sceneBadgeTop__3kabW {\n left: 10px;\n top: 10px;\n color: #059669;\n}\n.myScheme-module_sceneBadgeLeft__2_hGM {\n left: 10px;\n bottom: 10px;\n}\n.myScheme-module_sceneBadgeRight__2DLZ- {\n right: 10px;\n bottom: 10px;\n color: #3b82f6;\n}\n.myScheme-module_viewToolbar__2Fcxi {\n position: absolute;\n left: 50%;\n bottom: 14px;\n z-index: 10;\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: rgba(255, 255, 255, 0.9);\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04);\n transform: translateX(-50%);\n}\n.myScheme-module_viewToolbar__2Fcxi button {\n height: 28px;\n padding: 0 10px;\n border-radius: 4px;\n border: 1px solid transparent;\n background: transparent;\n color: #6b7280;\n font-size: 12px;\n}\n.myScheme-module_viewToolbar__2Fcxi .myScheme-module_toolbarActive__3-Dgr,\n.myScheme-module_viewToolbar__2Fcxi button:hover {\n border-color: #e5e7eb;\n background: #fff;\n color: #1a1a2e;\n}\n.myScheme-module_viewToolbar__2Fcxi span {\n width: 1px;\n height: 20px;\n background: #e5e7eb;\n}\n.myScheme-module_rightPanel__1UfJJ {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n.myScheme-module_panelTabs__aWvDB {\n display: flex;\n gap: 6px;\n}\n.myScheme-module_panelTabs__aWvDB button {\n flex: 1;\n height: 32px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #fff;\n color: #6b7280;\n font-size: 12px;\n font-weight: 500;\n}\n.myScheme-module_panelTabs__aWvDB .myScheme-module_panelTabActive__zd-tU {\n border-color: #3b82f6;\n background: #3b82f6;\n color: #fff;\n}\n.myScheme-module_sideCard__3MmGp {\n padding: 14px;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: #fff;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n}\n.myScheme-module_panelHeader__yKfco {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 10px;\n}\n.myScheme-module_panelHeader__yKfco h3 {\n margin: 0;\n font-size: 14px;\n line-height: 20px;\n font-weight: 600;\n color: #1a1a2e;\n}\n.myScheme-module_productPhoto__2B7ZV {\n aspect-ratio: 2.28571429;\n min-height: 110px;\n margin-bottom: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n border: 1px solid #f0f1f3;\n border-radius: 6px;\n background: linear-gradient(135deg, #dbeafe 0%, #ede9fe 50%, #fce7f3 100%);\n color: #6b7280;\n font-size: 12px;\n text-align: center;\n}\n.myScheme-module_productInfo__jBYfQ {\n margin-bottom: 8px;\n}\n.myScheme-module_productInfo__jBYfQ .myScheme-module_productName__2oKGL {\n font-size: 13px;\n line-height: 20px;\n font-weight: 600;\n}\n.myScheme-module_productInfo__jBYfQ .myScheme-module_productMeta__260co {\n margin-top: 2px;\n color: #6b7280;\n font-size: 12px;\n}\n.myScheme-module_sellingPoints__33xaS {\n margin-bottom: 8px;\n padding: 8px 10px;\n display: grid;\n gap: 2px;\n border-radius: 6px;\n background: #f9fafb;\n color: #1a1a2e;\n font-size: 12px;\n}\n.myScheme-module_sellingPoints__33xaS .myScheme-module_sellingTitle__2IrC- {\n margin-bottom: 2px;\n font-weight: 500;\n}\n.myScheme-module_statusRow__3e0S4,\n.myScheme-module_sideActions__MJt4B {\n display: flex;\n align-items: center;\n gap: 6px;\n flex-wrap: wrap;\n}\n.myScheme-module_sideActions__MJt4B {\n margin-top: 10px;\n}\n.myScheme-module_sideActions__MJt4B .myScheme-module_primaryButton__2OA3k,\n.myScheme-module_sideActions__MJt4B .myScheme-module_secondaryButton__2coh1 {\n flex: 1;\n min-width: 0;\n height: 30px;\n min-height: 30px;\n padding: 0 10px;\n font-size: 12px;\n}\n.myScheme-module_sliderItem__2xeXj {\n margin-bottom: 8px;\n}\n.myScheme-module_sliderItem__2xeXj input {\n width: 100%;\n height: 4px;\n accent-color: #3b82f6;\n}\n.myScheme-module_sliderLabel__2pr0W {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 2px;\n color: #6b7280;\n font-size: 11px;\n}\n.myScheme-module_segmentGroup__2ZvYu {\n display: flex;\n gap: 4px;\n margin-top: 8px;\n}\n.myScheme-module_segmentGroup__2ZvYu button {\n flex: 1;\n height: 26px;\n border: 1px solid #e5e7eb;\n border-radius: 4px;\n background: #fff;\n color: #6b7280;\n font-size: 11px;\n}\n.myScheme-module_segmentGroup__2ZvYu .myScheme-module_segmentActive__2JmxH {\n border-color: #3b82f6;\n background: #eff6ff;\n color: #3b82f6;\n}\n.myScheme-module_infoLine__3GNSp {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n margin-top: 8px;\n color: #6b7280;\n font-size: 12px;\n}\n.myScheme-module_infoLine__3GNSp span:last-child {\n min-width: 0;\n color: #1a1a2e;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_exportButton__2dmSV {\n width: 100%;\n height: 34px;\n margin-top: 12px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #fff;\n color: #3b82f6;\n font-size: 13px;\n font-weight: 500;\n}\n.myScheme-module_exportButton__2dmSV:hover {\n background: #eff6ff;\n}\n.myScheme-module_modalOverlay__2-LY3 {\n position: fixed;\n inset: 0;\n z-index: 1200;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n opacity: 0;\n pointer-events: none;\n transition: opacity 0.18s ease;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalMask__2jhCK {\n position: absolute;\n inset: 0;\n background: rgba(18, 28, 42, 0.3);\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX {\n position: relative;\n width: min(100%, calc(100vw - 48px));\n max-height: calc(100vh - 48px);\n overflow: auto;\n border-radius: 12px;\n background: #fff;\n transform: scale(0.96);\n transition: transform 0.18s ease;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalHeader__3dndE {\n height: 52px;\n padding: 0 16px 0 24px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n border-bottom: 1px solid #dde1e6;\n box-sizing: border-box;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalHeader__3dndE .myScheme-module_modalTitle__3lzET {\n color: #000;\n font-size: 16px;\n line-height: 20px;\n font-weight: 600;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalHeader__3dndE .myScheme-module_modalClose__nehKy {\n width: 28px;\n height: 28px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: 4px;\n background: transparent;\n color: #737b8b;\n font-size: 16px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalHeader__3dndE .myScheme-module_modalClose__nehKy:hover {\n background: #f3f4f6;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalBody__3FEFU {\n padding: 12px 24px 0;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX .myScheme-module_modalFooter__2S_E9 {\n min-height: 64px;\n padding: 0 24px;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 20px;\n flex-wrap: wrap;\n border-top: 1px solid #dde1e6;\n box-sizing: border-box;\n}\n.myScheme-module_modalOverlayOpen__3voZn {\n opacity: 1;\n pointer-events: auto;\n}\n.myScheme-module_modalOverlayOpen__3voZn .myScheme-module_modalPanelOpen__22C1W {\n transform: scale(1);\n}\n.myScheme-module_modalDesc__3KgKO {\n margin: 0;\n color: #737b8b;\n font-size: 14px;\n line-height: 20px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA {\n max-height: min(720px, calc(100vh - 48px));\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border-radius: 8px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalHeader__3dndE {\n height: 44px;\n min-height: 44px;\n padding: 0 16px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalHeader__3dndE .myScheme-module_modalTitle__3lzET {\n font-size: 14px;\n line-height: 20px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalHeader__3dndE .myScheme-module_modalClose__nehKy {\n width: 24px;\n height: 24px;\n border-radius: 4px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalBody__3FEFU {\n min-height: 0;\n padding: 0 16px;\n display: flex;\n flex: 1;\n flex-direction: column;\n overflow: hidden;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalFooter__2S_E9 {\n flex: 0 0 auto;\n min-height: 54px;\n padding: 10px 16px;\n border-top: 1px solid #f1f3f5;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_modalDesc__3KgKO {\n margin-bottom: 10px;\n color: #737b8b;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableHeader__3zi3I,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableRow__2my5l {\n grid-template-columns: 96px minmax(0, 1fr) 76px 86px 48px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableHeader__3zi3I > div,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableRow__2my5l > div {\n white-space: nowrap;\n word-break: keep-all;\n}\n.myScheme-module_formPanel__1b3n6,\n.myScheme-module_summaryBox__2XD76 {\n padding: 14px;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n background: #fff;\n}\n.myScheme-module_formPanel__1b3n6 h3,\n.myScheme-module_summaryBox__2XD76 h3 {\n margin: 0 0 10px;\n font-size: 14px;\n line-height: 20px;\n font-weight: 600;\n}\n.myScheme-module_formPanel__1b3n6 {\n margin-bottom: 14px;\n}\n.myScheme-module_formGrid__2dNVF {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 10px;\n}\n.myScheme-module_formBlock__2gAj2 {\n display: flex;\n flex-direction: column;\n gap: 3px;\n}\n.myScheme-module_formBlock__2gAj2 .myScheme-module_formLabel__Yde9r {\n color: #6b7280;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_formBlock__2gAj2 .myScheme-module_formInput__wKddg {\n width: 100%;\n height: 34px;\n padding: 0 10px;\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n background: #fff;\n box-sizing: border-box;\n color: #1a1a2e;\n font-size: 13px;\n outline: none;\n}\n.myScheme-module_formBlock__2gAj2 .myScheme-module_formInput__wKddg:focus {\n border-color: #3b82f6;\n}\n.myScheme-module_summaryGrid__1O0Pj {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 6px;\n color: #1a1a2e;\n font-size: 13px;\n line-height: 20px;\n}\n.myScheme-module_summaryGrid__1O0Pj span {\n color: #6b7280;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs {\n height: 499px;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n font-family: PingFang SC, Microsoft YaHei, sans-serif;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalBody__3FEFU {\n min-height: 0;\n padding: 12px 24px 0;\n flex: 1;\n overflow: auto;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalFooter__2S_E9 {\n flex: 0 0 64px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalFooter__2S_E9 .myScheme-module_secondaryButton__2coh1,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalFooter__2S_E9 .myScheme-module_primaryButton__2OA3k {\n height: 32px;\n min-height: 32px;\n padding: 0 16px;\n border-radius: 4px;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_modalFooter__2S_E9 .myScheme-module_secondaryButton__2coh1 {\n border-color: #717d99;\n color: #737b8b;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_formPanel__1b3n6,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryBox__2XD76 {\n padding: 0;\n border: none;\n border-radius: 0;\n background: transparent;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_formPanel__1b3n6 h3,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryBox__2XD76 h3 {\n margin: 0;\n color: #000;\n font-size: 14px;\n line-height: 20px;\n font-weight: 600;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_formPanel__1b3n6 {\n margin: 24px 0 0;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRows__1bzF0 {\n margin-top: 19px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ {\n height: 40px;\n display: grid;\n grid-template-columns: 72px 320px;\n align-items: center;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formLabel__Yde9r {\n position: relative;\n color: #737b8b;\n font-size: 14px;\n line-height: 20px;\n font-weight: 400;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_requiredMark__14sip {\n position: absolute;\n left: -10px;\n color: #ff4b04;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_readonlyFormInput__3ItTL,\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg {\n width: 320px;\n height: 40px;\n padding: 0 10px;\n border: none;\n border-radius: 4px;\n background: #f0f2f5;\n color: #000;\n font-size: 14px;\n line-height: 22px;\n font-weight: 400;\n box-sizing: border-box;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_readonlyFormInput__3ItTL {\n display: flex;\n align-items: center;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg {\n outline: none;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg::-moz-placeholder {\n color: #d1d5db;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg::placeholder {\n color: #d1d5db;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_saveFormRow__36j2_ .myScheme-module_formInput__wKddg:focus {\n box-shadow: 0 0 0 1px #1890ff inset;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryBox__2XD76 {\n margin-top: 28px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryGrid__1O0Pj {\n margin-top: 16px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n color: #000;\n font-size: 14px;\n line-height: 20px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryError__2hbUw {\n margin-top: 12px;\n color: #f5222d;\n font-size: 13px;\n line-height: 20px;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryRow__2BzvS {\n display: grid;\n grid-template-columns: 72px minmax(0, 1fr);\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryRow__2BzvS > span {\n color: #737b8b;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_saveSchemeModal__3qUGs .myScheme-module_summaryRow__2BzvS > div {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.myScheme-module_exportTableWrap__1dVHQ {\n min-height: 0;\n max-height: min(480px, calc(100vh - 220px));\n overflow: auto;\n margin-bottom: 16px;\n border: 0;\n border-radius: 0;\n}\n.myScheme-module_exportDownloadError__2vK4B {\n margin-bottom: 10px;\n padding: 8px 10px;\n border: 1px solid #ffccc7;\n border-radius: 4px;\n background: #fff2f0;\n color: #cf1322;\n font-size: 12px;\n line-height: 18px;\n}\n.myScheme-module_exportTableWrapLoading__1tUrO {\n min-height: 160px;\n}\n.myScheme-module_exportTableWrapLoading__1tUrO .ant-spin-nested-loading,\n.myScheme-module_exportTableWrapLoading__1tUrO .ant-spin-container,\n.myScheme-module_exportTableWrapLoading__1tUrO .myScheme-module_exportTable__7y2Nv {\n min-height: inherit;\n}\n.myScheme-module_exportTableWrapLoading__1tUrO .ant-spin {\n max-height: none;\n}\n.myScheme-module_exportTable__7y2Nv {\n min-width: min(508px, calc(100vw - 80px));\n background: #fff;\n font-size: 12px;\n}\n.myScheme-module_exportTableHeader__3zi3I,\n.myScheme-module_exportTableRow__2my5l {\n display: grid;\n grid-template-columns: 96px minmax(0, 1fr) 76px 86px 48px;\n}\n.myScheme-module_exportTableHeader__3zi3I > div,\n.myScheme-module_exportTableRow__2my5l > div {\n min-width: 0;\n min-height: 40px;\n padding: 8px 10px;\n display: flex;\n align-items: center;\n border-bottom: 1px solid #f0f1f3;\n box-sizing: border-box;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n word-break: keep-all;\n}\n.myScheme-module_exportTableHeader__3zi3I {\n position: sticky;\n top: 0;\n z-index: 1;\n background: #f0f2f5;\n color: #737b8b;\n font-size: 11px;\n font-weight: 600;\n}\n.myScheme-module_exportTableRow__2my5l:last-child > div {\n border-bottom: 0;\n}\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableRow__2my5l > div:nth-child(1),\n.myScheme-module_modalOverlay__2-LY3 .myScheme-module_modalPanel__cqXcX.myScheme-module_exportModal__1ODKA .myScheme-module_exportTableRow__2my5l > div:nth-child(4) {\n overflow: hidden;\n text-overflow: clip;\n white-space: normal;\n word-break: break-all;\n overflow-wrap: anywhere;\n line-height: 18px;\n}\n.myScheme-module_exportTableNotice__3E2oh {\n min-height: 80px;\n padding: 16px 12px;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 10px;\n color: #6b7280;\n font-size: 13px;\n line-height: 18px;\n border-bottom: 1px solid #f0f1f3;\n box-sizing: border-box;\n}\n@media (max-width: 1100px) {\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 {\n flex-wrap: wrap;\n gap: 10px 16px;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr {\n flex-basis: 200px;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2 {\n flex-basis: 160px;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2.myScheme-module_templateFilterField__1ojde {\n flex-basis: 200px;\n }\n .myScheme-module_renderLayout__X4A8D {\n grid-template-columns: 1fr;\n }\n .myScheme-module_rightPanel__1UfJJ {\n display: grid;\n grid-template-columns: 1fr 1fr;\n align-items: start;\n }\n .myScheme-module_rightPanel__1UfJJ .myScheme-module_panelTabs__aWvDB {\n grid-column: -1;\n }\n}\n@media (max-width: 768px) {\n .myScheme-module_page__3ldLy .myScheme-module_container__p3iuY {\n padding: 0;\n }\n .myScheme-module_headerSection__3V8s_,\n .myScheme-module_workbenchActions__3Y2G6,\n .myScheme-module_toolbar__2xU64 {\n align-items: stretch;\n flex-direction: column;\n }\n .myScheme-module_listPage__Zj7rr,\n .myScheme-module_workbenchPage__R4fxG {\n padding: 16px;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr,\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2,\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2.myScheme-module_templateFilterField__1ojde,\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 {\n width: 100%;\n flex: none;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 {\n justify-content: stretch;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_toolbar__2xU64 .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6 {\n flex: 1;\n }\n .myScheme-module_listPage__Zj7rr .myScheme-module_paginationBar__MIEed {\n padding: 12px;\n overflow-x: auto;\n }\n .myScheme-module_globalTopbar__2Axph {\n align-items: stretch;\n flex-direction: column;\n padding: 12px 16px;\n }\n .myScheme-module_topbarRight__2RTU_ {\n width: 100%;\n }\n .myScheme-module_sceneStatus__1RGPl {\n width: 100%;\n justify-content: center;\n box-sizing: border-box;\n }\n .myScheme-module_topbarSearchWrap__2aR7B {\n flex: none;\n width: 100%;\n min-width: 0;\n }\n .myScheme-module_topbarStatus__3sK7B {\n justify-content: center;\n white-space: normal;\n text-align: center;\n }\n .myScheme-module_toolbar__2xU64 .myScheme-module_searchWrap__2Bozr {\n width: 100%;\n }\n .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2 {\n width: 100%;\n flex: none;\n }\n .myScheme-module_toolbar__2xU64 .myScheme-module_filterField__2oIH2.myScheme-module_templateFilterField__1ojde {\n flex-basis: auto;\n }\n .myScheme-module_selectWrap__1lQjP,\n .myScheme-module_selectTrigger__3tWi0,\n .myScheme-module_filterTabs__2T2j2,\n .myScheme-module_primaryButton__2OA3k,\n .myScheme-module_secondaryButton__2coh1 {\n width: 100%;\n }\n .myScheme-module_filterTabs__2T2j2 .myScheme-module_filterTab__2W0m6 {\n flex: 1;\n }\n .myScheme-module_cardGrid__3wP3h {\n grid-template-columns: 1fr;\n }\n .myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 {\n align-items: flex-start;\n flex-direction: column;\n }\n .myScheme-module_schemeCard__jPfmS .myScheme-module_cardFooter__1dNb7 .myScheme-module_replaceText__2t-7Z {\n width: 100%;\n white-space: normal;\n }\n .myScheme-module_viewToolbar__2Fcxi {\n width: calc(100% - 20px);\n overflow-x: auto;\n }\n .myScheme-module_rightPanel__1UfJJ {\n display: flex;\n }\n .myScheme-module_formGrid__2dNVF,\n .myScheme-module_summaryGrid__1O0Pj {\n grid-template-columns: 1fr;\n }\n .myScheme-module_workbenchPage__R4fxG {\n padding: 0;\n gap: 12px;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ {\n height: auto;\n min-height: 40px;\n margin: 12px 16px 0;\n align-items: flex-start;\n flex-direction: column;\n gap: 8px;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r {\n width: 100%;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_titleBlock__2V22r .myScheme-module_pageDesc__3G2-a {\n overflow: visible;\n white-space: normal;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 {\n width: 100%;\n align-items: center;\n justify-content: flex-start;\n flex-direction: row;\n flex-wrap: wrap;\n }\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_sceneStatus__1RGPl,\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_primaryButton__2OA3k,\n .myScheme-module_workbenchPage__R4fxG > .myScheme-module_headerSection__3V8s_ .myScheme-module_workbenchActions__3Y2G6 .myScheme-module_secondaryButton__2coh1 {\n width: auto;\n }\n}\n";
60441
60457
  var styles$j = {"page":"myScheme-module_page__3ldLy","container":"myScheme-module_container__p3iuY","primaryButton":"myScheme-module_primaryButton__2OA3k","secondaryButton":"myScheme-module_secondaryButton__2coh1","linkButton":"myScheme-module_linkButton__1tQSv","filterTab":"myScheme-module_filterTab__2W0m6","backButton":"myScheme-module_backButton__2pKvO","selectTrigger":"myScheme-module_selectTrigger__3tWi0","selectOption":"myScheme-module_selectOption__2JCf7","modalClose":"myScheme-module_modalClose__nehKy","exportButton":"myScheme-module_exportButton__2dmSV","panelTabs":"myScheme-module_panelTabs__aWvDB","sceneObject":"myScheme-module_sceneObject__vyE3e","viewToolbar":"myScheme-module_viewToolbar__2Fcxi","segmentGroup":"myScheme-module_segmentGroup__2ZvYu","statusOk":"myScheme-module_statusOk__4Ic1T","statusInfo":"myScheme-module_statusInfo__1dS1L","statusNeutral":"myScheme-module_statusNeutral__3qNrt","listPage":"myScheme-module_listPage__Zj7rr","workbenchPage":"myScheme-module_workbenchPage__R4fxG","headerSection":"myScheme-module_headerSection__3V8s_","titleBlock":"myScheme-module_titleBlock__2V22r","pageTitle":"myScheme-module_pageTitle__2_OS3","pageDesc":"myScheme-module_pageDesc__3G2-a","toolbar":"myScheme-module_toolbar__2xU64","searchWrap":"myScheme-module_searchWrap__2Bozr","searchIcon":"myScheme-module_searchIcon__1B7Y5","searchInput":"myScheme-module_searchInput__1hQMH","filterField":"myScheme-module_filterField__2oIH2","templateFilterField":"myScheme-module_templateFilterField__1ojde","filterSelect":"myScheme-module_filterSelect__WzvVu","filterLabel":"myScheme-module_filterLabel__1SVxS","filterTabs":"myScheme-module_filterTabs__2T2j2","filterTabActive":"myScheme-module_filterTabActive__2JDzG","cardGrid":"myScheme-module_cardGrid__3wP3h","listLoadingArea":"myScheme-module_listLoadingArea__2GIGq","listVirtualSentinel":"myScheme-module_listVirtualSentinel__110vy","listNotice":"myScheme-module_listNotice__3vlwx","emptyState":"myScheme-module_emptyState__1cRpf","emptyIcon":"myScheme-module_emptyIcon__1BcYl","emptyTitle":"myScheme-module_emptyTitle__2F90O","emptyDesc":"myScheme-module_emptyDesc__2E1Fv","paginationInfo":"myScheme-module_paginationInfo__1Levb","paginationBar":"myScheme-module_paginationBar__MIEed","inlineRetryButton":"myScheme-module_inlineRetryButton__2rwfm","filterSelectDropdown":"myScheme-module_filterSelectDropdown__mYCGA","filterOptionText":"myScheme-module_filterOptionText__2xi5S","schemeTableWrap":"myScheme-module_schemeTableWrap__1JbKU","schemeTable":"myScheme-module_schemeTable__1pjmE","tableCellText":"myScheme-module_tableCellText__1Xedl","tableActions":"myScheme-module_tableActions__1ZGgT","generatedStatus":"myScheme-module_generatedStatus__20kIV","pendingStatus":"myScheme-module_pendingStatus__2gFeC","tableEmpty":"myScheme-module_tableEmpty__32CE2","schemeCard":"myScheme-module_schemeCard__jPfmS","createCard":"myScheme-module_createCard__2pnhr","coverWrap":"myScheme-module_coverWrap__1hGe6","coverImage":"myScheme-module_coverImage__3VgGP","coverPlaceholder":"myScheme-module_coverPlaceholder__3VJEL","cardContent":"myScheme-module_cardContent__2QsLX","schemeTitle":"myScheme-module_schemeTitle__3Pxgw","customerLine":"myScheme-module_customerLine__37-HC","metaLine":"myScheme-module_metaLine__1yrw5","tagRow":"myScheme-module_tagRow__1g3gZ","cardFooter":"myScheme-module_cardFooter__1dNb7","replaceText":"myScheme-module_replaceText__2t-7Z","footerActions":"myScheme-module_footerActions__JKjxC","createIcon":"myScheme-module_createIcon__10zAg","createTitle":"myScheme-module_createTitle__2GMKS","toast":"myScheme-module_toast__rWmQY","toastError":"myScheme-module_toastError__hL_qA","globalTopbar":"myScheme-module_globalTopbar__2Axph","topbarBreadcrumb":"myScheme-module_topbarBreadcrumb__1s98w","topbarSearchWrap":"myScheme-module_topbarSearchWrap__2aR7B","topbarRight":"myScheme-module_topbarRight__2RTU_","topbarStatus":"myScheme-module_topbarStatus__3sK7B","workbenchActions":"myScheme-module_workbenchActions__3Y2G6","sceneStatus":"myScheme-module_sceneStatus__1RGPl","sceneStatusLoading":"myScheme-module_sceneStatusLoading__2al1H","sceneStatusLoaded":"myScheme-module_sceneStatusLoaded__1odxT","renderLayout":"myScheme-module_renderLayout__X4A8D","uePreviewWrap":"myScheme-module_uePreviewWrap__1_4WF","ueTestActions":"myScheme-module_ueTestActions__jsci5","testSendRoomTypeButton":"myScheme-module_testSendRoomTypeButton__2RcnC","workbenchLoading":"myScheme-module_workbenchLoading__3WOEP","workbenchLoadError":"myScheme-module_workbenchLoadError__14TEV","workbenchLoadErrorIcon":"myScheme-module_workbenchLoadErrorIcon__1XQbC","workbenchLoadErrorActions":"myScheme-module_workbenchLoadErrorActions__3v0st","sceneStage":"myScheme-module_sceneStage__3Gtw2","sceneLayer":"myScheme-module_sceneLayer__1Gehf","roomBox":"myScheme-module_roomBox__2rj3E","backWall":"myScheme-module_backWall__1cpYv","windowBox":"myScheme-module_windowBox__13veX","artBox":"myScheme-module_artBox__23fqd","floorBox":"myScheme-module_floorBox__9nNQ2","carpetBox":"myScheme-module_carpetBox__3GFwu","sceneObjectActive":"myScheme-module_sceneObjectActive__3Uihs","sceneObjectShower":"myScheme-module_sceneObjectShower___-i4L","sceneObjectFloor":"myScheme-module_sceneObjectFloor__1sOfu","sceneBadge":"myScheme-module_sceneBadge__1eZOC","sceneBadgeTop":"myScheme-module_sceneBadgeTop__3kabW","sceneBadgeLeft":"myScheme-module_sceneBadgeLeft__2_hGM","sceneBadgeRight":"myScheme-module_sceneBadgeRight__2DLZ-","toolbarActive":"myScheme-module_toolbarActive__3-Dgr","rightPanel":"myScheme-module_rightPanel__1UfJJ","panelTabActive":"myScheme-module_panelTabActive__zd-tU","sideCard":"myScheme-module_sideCard__3MmGp","panelHeader":"myScheme-module_panelHeader__yKfco","productPhoto":"myScheme-module_productPhoto__2B7ZV","productInfo":"myScheme-module_productInfo__jBYfQ","productName":"myScheme-module_productName__2oKGL","productMeta":"myScheme-module_productMeta__260co","sellingPoints":"myScheme-module_sellingPoints__33xaS","sellingTitle":"myScheme-module_sellingTitle__2IrC-","statusRow":"myScheme-module_statusRow__3e0S4","sideActions":"myScheme-module_sideActions__MJt4B","sliderItem":"myScheme-module_sliderItem__2xeXj","sliderLabel":"myScheme-module_sliderLabel__2pr0W","segmentActive":"myScheme-module_segmentActive__2JmxH","infoLine":"myScheme-module_infoLine__3GNSp","modalOverlay":"myScheme-module_modalOverlay__2-LY3","modalMask":"myScheme-module_modalMask__2jhCK","modalPanel":"myScheme-module_modalPanel__cqXcX","modalHeader":"myScheme-module_modalHeader__3dndE","modalTitle":"myScheme-module_modalTitle__3lzET","modalBody":"myScheme-module_modalBody__3FEFU","modalFooter":"myScheme-module_modalFooter__2S_E9","modalOverlayOpen":"myScheme-module_modalOverlayOpen__3voZn","modalPanelOpen":"myScheme-module_modalPanelOpen__22C1W","modalDesc":"myScheme-module_modalDesc__3KgKO","exportModal":"myScheme-module_exportModal__1ODKA","exportTableHeader":"myScheme-module_exportTableHeader__3zi3I","exportTableRow":"myScheme-module_exportTableRow__2my5l","formPanel":"myScheme-module_formPanel__1b3n6","summaryBox":"myScheme-module_summaryBox__2XD76","formGrid":"myScheme-module_formGrid__2dNVF","formBlock":"myScheme-module_formBlock__2gAj2","formLabel":"myScheme-module_formLabel__Yde9r","formInput":"myScheme-module_formInput__wKddg","summaryGrid":"myScheme-module_summaryGrid__1O0Pj","saveSchemeModal":"myScheme-module_saveSchemeModal__3qUGs","saveFormRows":"myScheme-module_saveFormRows__1bzF0","saveFormRow":"myScheme-module_saveFormRow__36j2_","requiredMark":"myScheme-module_requiredMark__14sip","readonlyFormInput":"myScheme-module_readonlyFormInput__3ItTL","summaryError":"myScheme-module_summaryError__2hbUw","summaryRow":"myScheme-module_summaryRow__2BzvS","exportTableWrap":"myScheme-module_exportTableWrap__1dVHQ","exportDownloadError":"myScheme-module_exportDownloadError__2vK4B","exportTableWrapLoading":"myScheme-module_exportTableWrapLoading__1tUrO","exportTable":"myScheme-module_exportTable__7y2Nv","exportTableNotice":"myScheme-module_exportTableNotice__3E2oh","selectWrap":"myScheme-module_selectWrap__1lQjP"};
60442
60458
  styleInject(css_248z$l);
60443
60459
 
@@ -61195,13 +61211,113 @@
61195
61211
  clearTimeout(reconnectTimer);
61196
61212
  reconnectTimer = null;
61197
61213
  }
61198
- if (socket) {
61199
- socket.close();
61200
- }
61214
+ lockReconnect = false;
61215
+ socketProjectName = '';
61216
+ var closingSocket = socket;
61201
61217
  socket = null;
61218
+ if (closingSocket) {
61219
+ closingSocket.onopen = null;
61220
+ closingSocket.onmessage = null;
61221
+ closingSocket.onerror = null;
61222
+ closingSocket.onclose = null;
61223
+ closingSocket.close();
61224
+ }
61202
61225
  }
61203
61226
  window.addEventListener('beforeunload', closeSocket);
61204
61227
 
61228
+ var CLOUD_GAME_FAST_LEAVE_WINDOW = 5000;
61229
+ function createCloudGameEntryTracker(onEntered) {
61230
+ var schemeLoadingStarted = false;
61231
+ var entered = false;
61232
+ return function (message) {
61233
+ if (message && message.action === 'StartLoadResouce') {
61234
+ schemeLoadingStarted = true;
61235
+ return false;
61236
+ }
61237
+ if (!message || message.action !== 'LoadingFinish' || !schemeLoadingStarted || entered) {
61238
+ return false;
61239
+ }
61240
+ entered = true;
61241
+ if (onEntered) onEntered();
61242
+ return true;
61243
+ };
61244
+ }
61245
+ function isWithinFastLeaveWindow(enteredAt) {
61246
+ var currentTime = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Date.now();
61247
+ return Boolean(enteredAt && currentTime >= enteredAt && currentTime - enteredAt < CLOUD_GAME_FAST_LEAVE_WINDOW);
61248
+ }
61249
+ function createDestroyOnce(destroy) {
61250
+ var destroyed = false;
61251
+ var destroyResult;
61252
+ return function () {
61253
+ if (destroyed) return destroyResult;
61254
+ destroyed = true;
61255
+ destroyResult = destroy();
61256
+ return destroyResult;
61257
+ };
61258
+ }
61259
+ function waitForSettlement(result, timeoutMs) {
61260
+ if (!result || !result.then) return Promise.resolve(true);
61261
+ return new Promise(function (resolve) {
61262
+ var settled = false;
61263
+ var timer = null;
61264
+ var finish = function finish(completed) {
61265
+ if (settled) return;
61266
+ settled = true;
61267
+ if (timer) clearTimeout(timer);
61268
+ resolve(completed);
61269
+ };
61270
+ timer = setTimeout(function () {
61271
+ return finish(false);
61272
+ }, timeoutMs);
61273
+ Promise.resolve(result).then(function () {
61274
+ return finish(true);
61275
+ }, function () {
61276
+ return finish(true);
61277
+ });
61278
+ });
61279
+ }
61280
+ function createLatestSessionSwitch(destroyCurrent, activate) {
61281
+ var latestRequestId = 0;
61282
+ var switchSession = /*#__PURE__*/function () {
61283
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(session) {
61284
+ var requestId, destroyed;
61285
+ return _regenerator().w(function (_context) {
61286
+ while (1) switch (_context.n) {
61287
+ case 0:
61288
+ requestId = latestRequestId + 1;
61289
+ latestRequestId = requestId;
61290
+ _context.n = 1;
61291
+ return destroyCurrent();
61292
+ case 1:
61293
+ destroyed = _context.v;
61294
+ if (!(destroyed === false)) {
61295
+ _context.n = 2;
61296
+ break;
61297
+ }
61298
+ return _context.a(2, false);
61299
+ case 2:
61300
+ if (!(requestId !== latestRequestId)) {
61301
+ _context.n = 3;
61302
+ break;
61303
+ }
61304
+ return _context.a(2, false);
61305
+ case 3:
61306
+ activate(session);
61307
+ return _context.a(2, true);
61308
+ }
61309
+ }, _callee);
61310
+ }));
61311
+ return function switchSession(_x) {
61312
+ return _ref.apply(this, arguments);
61313
+ };
61314
+ }();
61315
+ switchSession.cancel = function () {
61316
+ latestRequestId += 1;
61317
+ };
61318
+ return switchSession;
61319
+ }
61320
+
61205
61321
  var DEFAULT_UE_PLAN = {
61206
61322
  id: 'dg-plan-20260616-001',
61207
61323
  sceneImageUrl: 'https://onewo-vbim-obs2.obs.cn-south-1.myhuaweicloud.com/3d-decorate-platform/ue_cover.jpg',
@@ -61274,15 +61390,19 @@
61274
61390
  sessionStorage.setItem(FALLBACK_USER_ID_KEY, fallbackUserId);
61275
61391
  return fallbackUserId;
61276
61392
  }
61277
- function MySchemeUEPreview(_ref) {
61393
+ function MySchemeUEPreview(_ref, previewRef) {
61278
61394
  var activeScheme = _ref.activeScheme,
61279
61395
  schemeId = _ref.schemeId,
61280
61396
  schemeAction = _ref.schemeAction,
61281
61397
  onStatusChange = _ref.onStatusChange,
61398
+ onCloudGameEntered = _ref.onCloudGameEntered,
61282
61399
  onSchemeJson = _ref.onSchemeJson;
61283
61400
  var userId = React.useMemo(function () {
61284
61401
  return getCurrentUserId();
61285
61402
  }, []);
61403
+ var embeddedUI = React.useMemo(function () {
61404
+ return isEmbedUI();
61405
+ }, []);
61286
61406
  var uePlan = React.useMemo(function () {
61287
61407
  return buildUEPlan(activeScheme);
61288
61408
  }, [activeScheme]);
@@ -61295,6 +61415,32 @@
61295
61415
  var ueInitTimerRef = React.useRef(null);
61296
61416
  var resolutionTimerRef = React.useRef(null);
61297
61417
  var restoreResolutionTimerRef = React.useRef(null);
61418
+ var ueContainerInstanceRef = React.useRef(null);
61419
+ var destroyImplementationRef = React.useRef(null);
61420
+ var destroyOnceRef = React.useRef(null);
61421
+ var onCloudGameEnteredRef = React.useRef(onCloudGameEntered);
61422
+ var cloudGameEntryTrackerRef = React.useRef(null);
61423
+ onCloudGameEnteredRef.current = onCloudGameEntered;
61424
+ if (!cloudGameEntryTrackerRef.current) {
61425
+ cloudGameEntryTrackerRef.current = createCloudGameEntryTracker(function () {
61426
+ if (onCloudGameEnteredRef.current) {
61427
+ onCloudGameEnteredRef.current();
61428
+ }
61429
+ });
61430
+ }
61431
+ if (!destroyOnceRef.current) {
61432
+ destroyOnceRef.current = createDestroyOnce(function () {
61433
+ if (destroyImplementationRef.current) {
61434
+ return destroyImplementationRef.current();
61435
+ }
61436
+ return undefined;
61437
+ });
61438
+ }
61439
+ React.useImperativeHandle(previewRef, function () {
61440
+ return {
61441
+ destroy: destroyOnceRef.current
61442
+ };
61443
+ }, []);
61298
61444
  var _useState = React.useState(function () {
61299
61445
  var size = {
61300
61446
  x: 0,
@@ -61305,6 +61451,7 @@
61305
61451
  // disableForceRotate: true,
61306
61452
  isInContainer: true,
61307
61453
  projectName: 'imperialPalace_central',
61454
+ device: '3DDecoratePlatform',
61308
61455
  type: 'tx',
61309
61456
  x: size.x,
61310
61457
  y: size.y,
@@ -61316,7 +61463,6 @@
61316
61463
  dataTimer: 6000,
61317
61464
  loadingPercent: 1,
61318
61465
  preLoading: true,
61319
- device: 'imperialPalacePc',
61320
61466
  loadingFinish: true,
61321
61467
  xyScreen: false,
61322
61468
  appScreen: 'rotate',
@@ -61359,11 +61505,6 @@
61359
61505
  _useState2 = _slicedToArray(_useState, 2),
61360
61506
  ueData = _useState2[0],
61361
61507
  setUeData = _useState2[1];
61362
- var sendRoomType = React.useCallback(function () {
61363
- if (roomType) {
61364
- sendRoomTypeToUE(roomType, schemeAction);
61365
- }
61366
- }, [roomType, schemeAction]);
61367
61508
  var reportStatus = React.useCallback(function (status) {
61368
61509
  if (reportedStatusRef.current === status) return;
61369
61510
  reportedStatusRef.current = status;
@@ -61371,6 +61512,11 @@
61371
61512
  onStatusChange(status);
61372
61513
  }
61373
61514
  }, [onStatusChange]);
61515
+ var sendRoomType = React.useCallback(function () {
61516
+ if (roomType) {
61517
+ sendRoomTypeToUE(roomType, schemeAction);
61518
+ }
61519
+ }, [roomType, schemeAction]);
61374
61520
  var clearUETimers = React.useCallback(function () {
61375
61521
  if (ueInitTimerRef.current) {
61376
61522
  clearTimeout(ueInitTimerRef.current);
@@ -61431,6 +61577,7 @@
61431
61577
  sessionStorage.setItem('projectName', ueData.projectName);
61432
61578
  if (window.sendTCGMessage && window.sendTCGMessage.sendMessage) {
61433
61579
  clearUETimers();
61580
+ syncUEPreviewSize();
61434
61581
  window.sendTCGMessage.sendMessage("urlParams=devTool=false&userId=".concat(ueData.userId));
61435
61582
  ueInitTimerRef.current = setTimeout(function () {
61436
61583
  sendRoomType();
@@ -61440,7 +61587,7 @@
61440
61587
  sendUEResolution();
61441
61588
  }, 5000);
61442
61589
  }
61443
- }, [clearUETimers, sendRoomType, sendUEResolution, ueData.projectName, ueData.userId]);
61590
+ }, [clearUETimers, sendRoomType, sendUEResolution, syncUEPreviewSize, ueData.projectName, ueData.userId]);
61444
61591
  var finalResolveMsgFromUE = React.useCallback(function (data) {
61445
61592
  // 这里集中处理 UE 主动抛给前端的 action,后续可按业务扩展。
61446
61593
  if ((data === null || data === void 0 ? void 0 : data.action) === 'GetRequestHeader') {
@@ -61462,7 +61609,7 @@
61462
61609
  }
61463
61610
  }, [onSchemeJson]);
61464
61611
  var preResolveMsgFromUE = React.useCallback(function (msg) {
61465
- if (isEmbedUI()) {
61612
+ if (embeddedUI) {
61466
61613
  console.log('嵌入式拿到UE的消息:', msg);
61467
61614
  finalResolveMsgFromUE(msg);
61468
61615
  return;
@@ -61477,7 +61624,7 @@
61477
61624
  console.log('云渲染拿到UE的消息:', data, msg);
61478
61625
  }
61479
61626
  finalResolveMsgFromUE(data);
61480
- }, [finalResolveMsgFromUE]);
61627
+ }, [embeddedUI, finalResolveMsgFromUE]);
61481
61628
  var handleReceiveMessage = React.useCallback(function (e) {
61482
61629
  var msg = {};
61483
61630
  try {
@@ -61489,13 +61636,58 @@
61489
61636
  if (!msg) return;
61490
61637
  var currentUserId = sessionStorage.getItem('projectUserId') || ueData.userId;
61491
61638
  if (msg.userId && currentUserId !== msg.userId) return;
61492
- if ((msg.type === 'UEinited' || msg.action === 'LoadingFinish') && !ueInitedRef.current) {
61639
+ if ((msg.type === 'UEinited' || msg.action === 'LoadingFinish') && !ueInitedRef.current
61640
+ // msg.action === 'StartLoadResouce' &&
61641
+ ) {
61493
61642
  ueInitedRef.current = true;
61494
- reportStatus('loaded');
61495
61643
  initUEData();
61496
61644
  }
61645
+ if (cloudGameEntryTrackerRef.current(msg)) {
61646
+ reportStatus('loaded');
61647
+ }
61497
61648
  preResolveMsgFromUE(msg);
61498
61649
  }, [initUEData, preResolveMsgFromUE, reportStatus, ueData.userId]);
61650
+ destroyImplementationRef.current = function () {
61651
+ var exitPromise = Promise.resolve();
61652
+ reportStatus('idle');
61653
+ clearUETimers();
61654
+ window.removeEventListener('onReceiveMessage', handleReceiveMessage);
61655
+ closeSocket();
61656
+ clearUEMessageQueue();
61657
+ var ueContainerInstance = ueContainerInstanceRef.current;
61658
+ if (ueContainerInstance && typeof ueContainerInstance.exitCloudGame === 'function') {
61659
+ try {
61660
+ exitPromise = Promise.resolve(ueContainerInstance.exitCloudGame()).catch(function (error) {
61661
+ console.log('销毁云渲染实例失败:', error);
61662
+ });
61663
+ } catch (error) {
61664
+ console.log('销毁云渲染实例失败:', error);
61665
+ }
61666
+ }
61667
+ if (embeddedUI) {
61668
+ try {
61669
+ ue.interface.webUIReceiver = null;
61670
+ } catch (error) {
61671
+ console.log('清理UE消息接收器失败:', error);
61672
+ }
61673
+ }
61674
+ if (sessionStorage.getItem('projectUserId') === ueData.userId) {
61675
+ sessionStorage.removeItem('projectUserId');
61676
+ }
61677
+ if (sessionStorage.getItem('projectName') === ueData.projectName) {
61678
+ sessionStorage.removeItem('projectName');
61679
+ }
61680
+ localStorage.removeItem('gameToken');
61681
+ window.isWebSocket = false;
61682
+ window.isEmbedUI = false;
61683
+ window.ueNipple = false;
61684
+ return exitPromise;
61685
+ };
61686
+ React.useEffect(function () {
61687
+ return function () {
61688
+ destroyOnceRef.current();
61689
+ };
61690
+ }, []);
61499
61691
  React.useEffect(function () {
61500
61692
  setUeData(function (prev) {
61501
61693
  return _objectSpread2(_objectSpread2({}, prev), {}, {
@@ -61547,59 +61739,15 @@
61547
61739
  };
61548
61740
  }, [syncUEPreviewSize]);
61549
61741
  React.useEffect(function () {
61550
- var previewWrap = uePreviewWrapRef.current;
61551
- var currentVideo = null;
61552
- var observer = null;
61553
- var handleVideoReady = function handleVideoReady() {
61554
- if (currentVideo && (currentVideo.readyState >= 2 || currentVideo.currentSrc)) {
61555
- reportStatus('loaded');
61556
- }
61557
- };
61558
- var bindVideo = function bindVideo() {
61559
- var nextVideo = previewWrap ? previewWrap.querySelector('video') : null;
61560
- if (nextVideo === currentVideo) {
61561
- handleVideoReady();
61562
- return;
61563
- }
61564
- if (currentVideo) {
61565
- currentVideo.removeEventListener('loadeddata', handleVideoReady);
61566
- currentVideo.removeEventListener('canplay', handleVideoReady);
61567
- currentVideo.removeEventListener('playing', handleVideoReady);
61568
- }
61569
- currentVideo = nextVideo;
61570
- if (currentVideo) {
61571
- currentVideo.addEventListener('loadeddata', handleVideoReady);
61572
- currentVideo.addEventListener('canplay', handleVideoReady);
61573
- currentVideo.addEventListener('playing', handleVideoReady);
61574
- handleVideoReady();
61575
- }
61576
- };
61577
61742
  reportStatus('loading');
61578
- bindVideo();
61579
- if (window.MutationObserver && previewWrap) {
61580
- observer = new MutationObserver(bindVideo);
61581
- observer.observe(previewWrap, {
61582
- childList: true,
61583
- subtree: true
61584
- });
61585
- }
61586
- return function () {
61587
- if (observer) {
61588
- observer.disconnect();
61589
- }
61590
- if (currentVideo) {
61591
- currentVideo.removeEventListener('loadeddata', handleVideoReady);
61592
- currentVideo.removeEventListener('canplay', handleVideoReady);
61593
- currentVideo.removeEventListener('playing', handleVideoReady);
61594
- }
61595
- };
61743
+ return undefined;
61596
61744
  }, [reportStatus]);
61597
61745
  React.useEffect(function () {
61598
61746
  window.addEventListener('onReceiveMessage', handleReceiveMessage);
61599
61747
  window.isWebSocket = true;
61600
- window.isEmbedUI = isEmbedUI();
61748
+ window.isEmbedUI = embeddedUI;
61601
61749
  createSocket(ueData.projectName);
61602
- if (isEmbedUI()) {
61750
+ if (embeddedUI) {
61603
61751
  try {
61604
61752
  ue.interface.webUIReceiver = preResolveMsgFromUE;
61605
61753
  } catch (error) {
@@ -61612,7 +61760,7 @@
61612
61760
  window.removeEventListener('onReceiveMessage', handleReceiveMessage);
61613
61761
  closeSocket();
61614
61762
  };
61615
- }, [clearUETimers, handleReceiveMessage, preResolveMsgFromUE, reportStatus, ueData.projectName]);
61763
+ }, [clearUETimers, embeddedUI, handleReceiveMessage, preResolveMsgFromUE, reportStatus, ueData.projectName]);
61616
61764
  return /*#__PURE__*/React__default['default'].createElement("div", {
61617
61765
  className: styles$j.uePreviewWrap,
61618
61766
  ref: uePreviewWrapRef
@@ -61625,24 +61773,97 @@
61625
61773
  onClick: function onClick(event) {
61626
61774
  return event.stopPropagation();
61627
61775
  }
61628
- }, false ), !window.isEmbedUI && ueData.gameId && ueData.x && ueData.y ? /*#__PURE__*/React__default['default'].createElement(ueGameContainerApp.UEContainer, {
61776
+ }, false ), !embeddedUI && ueData.gameId && ueData.x && ueData.y ? /*#__PURE__*/React__default['default'].createElement(ueGameContainerApp.UEContainer, {
61777
+ ref: function ref(instance) {
61778
+ if (instance) {
61779
+ ueContainerInstanceRef.current = instance;
61780
+ }
61781
+ },
61629
61782
  ueData: ueData
61630
61783
  }) : null);
61631
61784
  }
61632
- var MySchemeUEPreview$1 = /*#__PURE__*/React__default['default'].memo(MySchemeUEPreview);
61785
+ var MySchemeUEPreview$1 = /*#__PURE__*/React__default['default'].memo(/*#__PURE__*/React__default['default'].forwardRef(MySchemeUEPreview));
61633
61786
 
61634
- function MySchemeWorkbench(_ref) {
61787
+ var UE_DESTROY_TIMEOUT = 3000;
61788
+ function MySchemeUESession(_ref) {
61635
61789
  var activeScheme = _ref.activeScheme,
61636
- location = _ref.location,
61637
- detailLoading = _ref.detailLoading,
61638
- detailError = _ref.detailError,
61639
- sceneLoadStatus = _ref.sceneLoadStatus,
61790
+ schemeId = _ref.schemeId,
61791
+ schemeAction = _ref.schemeAction,
61640
61792
  onStatusChange = _ref.onStatusChange,
61793
+ onCloudGameEntered = _ref.onCloudGameEntered,
61641
61794
  onSchemeJson = _ref.onSchemeJson,
61642
- onSave = _ref.onSave,
61643
- onExport = _ref.onExport,
61644
- onLeave = _ref.onLeave,
61645
- onRetryDetail = _ref.onRetryDetail;
61795
+ uePreviewRef = _ref.uePreviewRef;
61796
+ var desiredSessionKey = "".concat(schemeAction, "-").concat(schemeId);
61797
+ var _useState = React.useState(function () {
61798
+ return {
61799
+ key: desiredSessionKey,
61800
+ activeScheme: activeScheme,
61801
+ schemeId: schemeId,
61802
+ schemeAction: schemeAction
61803
+ };
61804
+ }),
61805
+ _useState2 = _slicedToArray(_useState, 2),
61806
+ session = _useState2[0],
61807
+ setSession = _useState2[1];
61808
+ var switchSessionRef = React.useRef(null);
61809
+ if (!switchSessionRef.current) {
61810
+ switchSessionRef.current = createLatestSessionSwitch(function () {
61811
+ var currentPreview = uePreviewRef.current;
61812
+ if (!currentPreview || !currentPreview.destroy) return Promise.resolve();
61813
+ var destroyResult = currentPreview.destroy();
61814
+ return waitForSettlement(destroyResult, UE_DESTROY_TIMEOUT).then(function (completed) {
61815
+ if (!completed) {
61816
+ console.log('切换方案时等待旧云渲染实例销毁超时');
61817
+ }
61818
+ return completed;
61819
+ });
61820
+ }, setSession);
61821
+ }
61822
+ React.useEffect(function () {
61823
+ if (session.key === desiredSessionKey) return undefined;
61824
+ switchSessionRef.current({
61825
+ key: desiredSessionKey,
61826
+ activeScheme: activeScheme,
61827
+ schemeId: schemeId,
61828
+ schemeAction: schemeAction
61829
+ });
61830
+ return undefined;
61831
+ }, [activeScheme, desiredSessionKey, schemeAction, schemeId, session.key]);
61832
+ React.useEffect(function () {
61833
+ return function () {
61834
+ switchSessionRef.current.cancel();
61835
+ };
61836
+ }, []);
61837
+ var renderedSession = session.key === desiredSessionKey ? _objectSpread2(_objectSpread2({}, session), {}, {
61838
+ activeScheme: activeScheme,
61839
+ schemeId: schemeId,
61840
+ schemeAction: schemeAction
61841
+ }) : session;
61842
+ return /*#__PURE__*/React__default['default'].createElement(MySchemeUEPreview$1, {
61843
+ key: renderedSession.key,
61844
+ ref: uePreviewRef,
61845
+ activeScheme: renderedSession.activeScheme,
61846
+ schemeId: renderedSession.schemeId,
61847
+ schemeAction: renderedSession.schemeAction,
61848
+ onStatusChange: onStatusChange,
61849
+ onCloudGameEntered: onCloudGameEntered,
61850
+ onSchemeJson: onSchemeJson
61851
+ });
61852
+ }
61853
+ function MySchemeWorkbench(_ref2) {
61854
+ var activeScheme = _ref2.activeScheme,
61855
+ location = _ref2.location,
61856
+ detailLoading = _ref2.detailLoading,
61857
+ detailError = _ref2.detailError,
61858
+ sceneLoadStatus = _ref2.sceneLoadStatus,
61859
+ onStatusChange = _ref2.onStatusChange,
61860
+ onCloudGameEntered = _ref2.onCloudGameEntered,
61861
+ onSchemeJson = _ref2.onSchemeJson,
61862
+ onSave = _ref2.onSave,
61863
+ onExport = _ref2.onExport,
61864
+ onLeave = _ref2.onLeave,
61865
+ onRetryDetail = _ref2.onRetryDetail,
61866
+ uePreviewRef = _ref2.uePreviewRef;
61646
61867
  if (!activeScheme) {
61647
61868
  var directMySchemeId = getQueryValue(location, 'mySchemeId');
61648
61869
  var detailLoadFailed = directMySchemeId && !isDouGongTemplateRender(location) && !detailLoading && detailError;
@@ -61709,17 +61930,20 @@
61709
61930
  onClick: onLeave
61710
61931
  }, /*#__PURE__*/React__default['default'].createElement("span", null, "\u9000\u51FA")))), /*#__PURE__*/React__default['default'].createElement("div", {
61711
61932
  className: styles$j.renderLayout
61712
- }, /*#__PURE__*/React__default['default'].createElement(MySchemeUEPreview$1, {
61933
+ }, /*#__PURE__*/React__default['default'].createElement(MySchemeUESession, {
61713
61934
  activeScheme: activeScheme,
61714
61935
  schemeId: renderSchemeId,
61715
61936
  schemeAction: renderSchemeAction,
61716
61937
  onStatusChange: onStatusChange,
61717
- onSchemeJson: onSchemeJson
61938
+ onCloudGameEntered: onCloudGameEntered,
61939
+ onSchemeJson: onSchemeJson,
61940
+ uePreviewRef: uePreviewRef
61718
61941
  })));
61719
61942
  }
61720
61943
 
61721
61944
  function MyScheme(props) {
61722
61945
  var dispatch = props.dispatch,
61946
+ history = props.history,
61723
61947
  location = props.location,
61724
61948
  schemeWorkbench = props.schemeWorkbench;
61725
61949
  var douGongRenderPageNo = schemeWorkbench.douGongRenderPageNo,
@@ -61743,6 +61967,9 @@
61743
61967
  var schemeJsonPendingRef = React.useRef(false);
61744
61968
  var previousListQueryRef = React.useRef('');
61745
61969
  var filterOptionsRequestedRef = React.useRef(false);
61970
+ var uePreviewRef = React.useRef(null);
61971
+ var allowNextRouteRef = React.useRef(false);
61972
+ var leaveConfirmRef = React.useRef(null);
61746
61973
  var _useState = React.useState(''),
61747
61974
  _useState2 = _slicedToArray(_useState, 2),
61748
61975
  searchText = _useState2[0],
@@ -61831,20 +62058,24 @@
61831
62058
  _useState42 = _slicedToArray(_useState41, 2),
61832
62059
  sceneLoadStatus = _useState42[0],
61833
62060
  setSceneLoadStatus = _useState42[1];
61834
- var _useState43 = React.useState({
62061
+ var _useState43 = React.useState(0),
62062
+ _useState44 = _slicedToArray(_useState43, 2),
62063
+ cloudGameEnteredAt = _useState44[0],
62064
+ setCloudGameEnteredAt = _useState44[1];
62065
+ var _useState45 = React.useState({
61835
62066
  name: '',
61836
62067
  customerName: '',
61837
62068
  phone: '',
61838
62069
  community: '',
61839
62070
  remark: ''
61840
62071
  }),
61841
- _useState44 = _slicedToArray(_useState43, 2),
61842
- saveForm = _useState44[0],
61843
- setSaveForm = _useState44[1];
61844
- var _useState45 = React.useState([]),
61845
62072
  _useState46 = _slicedToArray(_useState45, 2),
61846
- exportTableData = _useState46[0],
61847
- setExportTableData = _useState46[1];
62073
+ saveForm = _useState46[0],
62074
+ setSaveForm = _useState46[1];
62075
+ var _useState47 = React.useState([]),
62076
+ _useState48 = _slicedToArray(_useState47, 2),
62077
+ exportTableData = _useState48[0],
62078
+ setExportTableData = _useState48[1];
61848
62079
  var mySchemeListQuery = React.useMemo(function () {
61849
62080
  var keyword = searchText.trim();
61850
62081
  var isPlatformSchemeId = /^\d+$/.test(keyword);
@@ -61905,7 +62136,7 @@
61905
62136
  }) : schemes.find(function (item) {
61906
62137
  return item.id === mySchemeId;
61907
62138
  }) ||
61908
- // 兼容旧链接中使用 schemeId 承载“我的方案”记录 ID 的情况。
62139
+ // 兼容旧链接中使用 schemeId 承载“平台方案管理”记录 ID 的情况。
61909
62140
  schemes.find(function (item) {
61910
62141
  return item.id === schemeId;
61911
62142
  }) || schemes.find(function (item) {
@@ -62004,6 +62235,92 @@
62004
62235
  }, [activeSchemeId, location, schemes]);
62005
62236
  var activeSourceId = activeScheme ? activeScheme.sourceId || getQueryValue(location, 'sourceId') || getQueryValue(location, 'schemeId') : '';
62006
62237
  var activePlatformSchemeId = getQueryValue(location, 'mySchemeId') || getPlatformSchemeId(activeScheme);
62238
+ var handleCloudGameEntered = React.useCallback(function () {
62239
+ allowNextRouteRef.current = false;
62240
+ setCloudGameEnteredAt(Date.now());
62241
+ }, []);
62242
+ var restoreCurrentRouteSelection = React.useCallback(function () {
62243
+ var currentPath = location.pathname || '/myScheme';
62244
+ window.dispatchEvent(new CustomEvent('onDecoratePageChange', {
62245
+ detail: {
62246
+ path: currentPath,
62247
+ title: getMenuTitle(currentPath)
62248
+ }
62249
+ }));
62250
+ }, [location.pathname]);
62251
+ var confirmFastLeave = React.useCallback(function (proceed) {
62252
+ if (!isWithinFastLeaveWindow(cloudGameEnteredAt)) {
62253
+ proceed();
62254
+ return;
62255
+ }
62256
+ if (leaveConfirmRef.current) return;
62257
+ leaveConfirmRef.current = _Modal__default['default'].confirm({
62258
+ title: '确认离开当前页面?',
62259
+ content: '云游戏刚刚加载完成,是否确认立即离开?',
62260
+ okText: '确认离开',
62261
+ cancelText: '留在当前页',
62262
+ onOk: function onOk() {
62263
+ leaveConfirmRef.current = null;
62264
+ proceed();
62265
+ },
62266
+ onCancel: function onCancel() {
62267
+ leaveConfirmRef.current = null;
62268
+ restoreCurrentRouteSelection();
62269
+ if (!isWithinFastLeaveWindow(cloudGameEnteredAt)) {
62270
+ setCloudGameEnteredAt(0);
62271
+ }
62272
+ }
62273
+ });
62274
+ }, [cloudGameEnteredAt, restoreCurrentRouteSelection]);
62275
+ React.useEffect(function () {
62276
+ if (!cloudGameEnteredAt || !history || typeof history.block !== 'function') {
62277
+ return undefined;
62278
+ }
62279
+ var remainingTime = Math.max(0, CLOUD_GAME_FAST_LEAVE_WINDOW - (Date.now() - cloudGameEnteredAt));
62280
+ var blockerActive = true;
62281
+ var unblock = history.block(function (transition) {
62282
+ var retryTransition = function retryTransition() {
62283
+ if (!blockerActive) return;
62284
+ blockerActive = false;
62285
+ unblock();
62286
+ transition.retry();
62287
+ };
62288
+ if (allowNextRouteRef.current) {
62289
+ allowNextRouteRef.current = false;
62290
+ retryTransition();
62291
+ return;
62292
+ }
62293
+ if (!isWithinFastLeaveWindow(cloudGameEnteredAt)) {
62294
+ setCloudGameEnteredAt(0);
62295
+ retryTransition();
62296
+ return;
62297
+ }
62298
+ confirmFastLeave(retryTransition);
62299
+ });
62300
+ var timer = window.setTimeout(function () {
62301
+ if (leaveConfirmRef.current) return;
62302
+ if (blockerActive) {
62303
+ blockerActive = false;
62304
+ unblock();
62305
+ }
62306
+ setCloudGameEnteredAt(0);
62307
+ }, remainingTime);
62308
+ return function () {
62309
+ window.clearTimeout(timer);
62310
+ if (blockerActive) {
62311
+ blockerActive = false;
62312
+ unblock();
62313
+ }
62314
+ };
62315
+ }, [cloudGameEnteredAt, confirmFastLeave, history]);
62316
+ React.useEffect(function () {
62317
+ return function () {
62318
+ if (leaveConfirmRef.current) {
62319
+ leaveConfirmRef.current.destroy();
62320
+ leaveConfirmRef.current = null;
62321
+ }
62322
+ };
62323
+ }, []);
62007
62324
  var handleSaveFormChange = function handleSaveFormChange(field) {
62008
62325
  return function (e) {
62009
62326
  var value = e && e.target ? e.target.value : '';
@@ -62060,61 +62377,115 @@
62060
62377
  setToastText(e.message || '获取平台方案详情失败');
62061
62378
  });
62062
62379
  };
62063
- var leaveRenderView = function leaveRenderView(returnLocation) {
62064
- var isExplicitReturnPath = typeof returnLocation === 'string';
62065
- var targetLocation = returnLocation && returnLocation.nativeEvent ? location : returnLocation || location;
62066
- var returnPath = getSafeReturnPath(targetLocation);
62067
- leavingRenderRef.current = true;
62068
- setMode('list');
62069
- setActiveSchemeId('');
62070
- setSaveModalVisible(false);
62071
- setExportModalVisible(false);
62072
- setExportScheme(null);
62073
- setExportDownloadError('');
62074
- setSceneLoadStatus('idle');
62075
- exportRequestIdRef.current += 1;
62076
- if (returnPath === '/douGongSchemeTemplate') {
62077
- dispatch({
62078
- type: 'schemeWorkbench/updateState',
62079
- payload: {
62080
- douGongRenderPageNo: null,
62081
- douGongReturnPageNo: douGongRenderPageNo || 1
62082
- }
62083
- });
62084
- } else if (douGongRenderPageNo) {
62085
- dispatch({
62086
- type: 'schemeWorkbench/updateState',
62087
- payload: {
62088
- douGongRenderPageNo: null,
62089
- douGongReturnPageNo: null
62090
- }
62091
- });
62092
- }
62093
- if (!isExplicitReturnPath && returnPath === '/myScheme' && mySchemeRenderPageNo) {
62094
- dispatch({
62095
- type: 'schemeWorkbench/updateState',
62096
- payload: {
62097
- mySchemeRenderPageNo: null,
62098
- mySchemeReturnPageNo: mySchemeRenderPageNo
62099
- }
62100
- });
62101
- } else if (mySchemeRenderPageNo || mySchemeReturnPageNo) {
62102
- dispatch({
62103
- type: 'schemeWorkbench/updateState',
62104
- payload: {
62105
- mySchemeRenderPageNo: null,
62106
- mySchemeReturnPageNo: null
62380
+ var leaveRenderView = /*#__PURE__*/function () {
62381
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(returnLocation) {
62382
+ var isExplicitReturnPath, targetLocation, returnPath, currentUEPreview, destroyResult, completed, _t;
62383
+ return _regenerator().w(function (_context) {
62384
+ while (1) switch (_context.p = _context.n) {
62385
+ case 0:
62386
+ if (!leavingRenderRef.current) {
62387
+ _context.n = 1;
62388
+ break;
62389
+ }
62390
+ return _context.a(2);
62391
+ case 1:
62392
+ isExplicitReturnPath = typeof returnLocation === 'string';
62393
+ targetLocation = returnLocation && returnLocation.nativeEvent ? location : returnLocation || location;
62394
+ returnPath = getSafeReturnPath(targetLocation);
62395
+ leavingRenderRef.current = true;
62396
+ if (!(uePreviewRef.current && uePreviewRef.current.destroy)) {
62397
+ _context.n = 6;
62398
+ break;
62399
+ }
62400
+ currentUEPreview = uePreviewRef.current;
62401
+ uePreviewRef.current = null;
62402
+ _context.p = 2;
62403
+ destroyResult = currentUEPreview.destroy();
62404
+ if (!(destroyResult && destroyResult.then)) {
62405
+ _context.n = 4;
62406
+ break;
62407
+ }
62408
+ _context.n = 3;
62409
+ return waitForSettlement(destroyResult, 3000);
62410
+ case 3:
62411
+ completed = _context.v;
62412
+ if (!completed) {
62413
+ console.log('退出时等待云渲染实例销毁超时');
62414
+ }
62415
+ case 4:
62416
+ _context.n = 6;
62417
+ break;
62418
+ case 5:
62419
+ _context.p = 5;
62420
+ _t = _context.v;
62421
+ console.log('退出时销毁云渲染预览失败:', _t);
62422
+ case 6:
62423
+ setMode('list');
62424
+ setActiveSchemeId('');
62425
+ setSaveModalVisible(false);
62426
+ setExportModalVisible(false);
62427
+ setExportScheme(null);
62428
+ setExportDownloadError('');
62429
+ setSceneLoadStatus('idle');
62430
+ setCloudGameEnteredAt(0);
62431
+ exportRequestIdRef.current += 1;
62432
+ if (returnPath === '/douGongSchemeTemplate') {
62433
+ dispatch({
62434
+ type: 'schemeWorkbench/updateState',
62435
+ payload: {
62436
+ douGongRenderPageNo: null,
62437
+ douGongReturnPageNo: douGongRenderPageNo || 1
62438
+ }
62439
+ });
62440
+ } else if (douGongRenderPageNo) {
62441
+ dispatch({
62442
+ type: 'schemeWorkbench/updateState',
62443
+ payload: {
62444
+ douGongRenderPageNo: null,
62445
+ douGongReturnPageNo: null
62446
+ }
62447
+ });
62448
+ }
62449
+ if (!isExplicitReturnPath && returnPath === '/myScheme' && mySchemeRenderPageNo) {
62450
+ dispatch({
62451
+ type: 'schemeWorkbench/updateState',
62452
+ payload: {
62453
+ mySchemeRenderPageNo: null,
62454
+ mySchemeReturnPageNo: mySchemeRenderPageNo
62455
+ }
62456
+ });
62457
+ } else if (mySchemeRenderPageNo || mySchemeReturnPageNo) {
62458
+ dispatch({
62459
+ type: 'schemeWorkbench/updateState',
62460
+ payload: {
62461
+ mySchemeRenderPageNo: null,
62462
+ mySchemeReturnPageNo: null
62463
+ }
62464
+ });
62465
+ }
62466
+ // 先保存回跳页码,再通知主应用和切换路由,避免页面卸载后状态丢失。
62467
+ window.dispatchEvent(new CustomEvent('onDecoratePageChange', {
62468
+ detail: {
62469
+ path: returnPath,
62470
+ title: getMenuTitle(returnPath)
62471
+ }
62472
+ }));
62473
+ dispatch(router.routerRedux.push(returnPath));
62474
+ case 7:
62475
+ return _context.a(2);
62107
62476
  }
62108
- });
62109
- }
62110
- // 先保存回跳页码,再通知主应用和切换路由,避免页面卸载后状态丢失。
62111
- window.dispatchEvent(new CustomEvent('onDecoratePageChange', {
62112
- detail: {
62113
- path: returnPath,
62114
- title: getMenuTitle(returnPath)
62115
- }
62477
+ }, _callee, null, [[2, 5]]);
62116
62478
  }));
62117
- dispatch(router.routerRedux.push(returnPath));
62479
+ return function leaveRenderView(_x) {
62480
+ return _ref.apply(this, arguments);
62481
+ };
62482
+ }();
62483
+ var requestLeaveRenderView = function requestLeaveRenderView(returnLocation) {
62484
+ var normalizedReturnLocation = returnLocation && returnLocation.nativeEvent ? location : returnLocation;
62485
+ confirmFastLeave(function () {
62486
+ allowNextRouteRef.current = true;
62487
+ leaveRenderView(normalizedReturnLocation);
62488
+ });
62118
62489
  };
62119
62490
  var fetchExportMaterials = function fetchExportMaterials(scheme) {
62120
62491
  var requestId = exportRequestIdRef.current + 1;
@@ -62346,11 +62717,13 @@
62346
62717
  detailError: mySchemeDetailError,
62347
62718
  sceneLoadStatus: sceneLoadStatus,
62348
62719
  onStatusChange: setSceneLoadStatus,
62720
+ onCloudGameEntered: handleCloudGameEntered,
62349
62721
  onSchemeJson: handleSchemeJsonFromUE,
62350
62722
  onSave: openSaveModal,
62351
62723
  onExport: openExportModal,
62352
- onLeave: leaveRenderView,
62353
- onRetryDetail: retryRenderDetail
62724
+ onLeave: requestLeaveRenderView,
62725
+ onRetryDetail: retryRenderDetail,
62726
+ uePreviewRef: uePreviewRef
62354
62727
  }) : /*#__PURE__*/React__default['default'].createElement(MySchemeList, {
62355
62728
  schemes: schemes,
62356
62729
  pagination: mySchemePagination,
@@ -62404,8 +62777,8 @@
62404
62777
  onDownload: handleExportMaterials
62405
62778
  }));
62406
62779
  }
62407
- var MyScheme$1 = dva.connect(function (_ref) {
62408
- var schemeWorkbench = _ref.schemeWorkbench;
62780
+ var MyScheme$1 = dva.connect(function (_ref2) {
62781
+ var schemeWorkbench = _ref2.schemeWorkbench;
62409
62782
  return {
62410
62783
  schemeWorkbench: schemeWorkbench
62411
62784
  };
@@ -62717,15 +63090,15 @@
62717
63090
  }, /*#__PURE__*/React__default['default'].createElement("div", {
62718
63091
  className: styles$l.modelIcon
62719
63092
  }, /*#__PURE__*/React__default['default'].createElement("img", {
62720
- src: currentMaterial.assetType === '3D模型' ? fileLogo : currentMaterial.referenceImage,
63093
+ src: currentMaterial.assetType === '3D模型' ? currentMaterial.modelThumbnail || fileLogo : currentMaterial.referenceImage,
62721
63094
  alt: "3D",
62722
63095
  className: styles$l.modelLogo
62723
63096
  })), /*#__PURE__*/React__default['default'].createElement("div", {
62724
63097
  className: styles$l.modelDetail
62725
63098
  }, /*#__PURE__*/React__default['default'].createElement("div", {
62726
63099
  className: styles$l.modelName,
62727
- title: currentMaterial.modelName
62728
- }, currentMaterial.modelName), currentMaterial.assetType === '3D模型' ? /*#__PURE__*/React__default['default'].createElement("div", {
63100
+ title: currentMaterial.name
63101
+ }, currentMaterial.name), currentMaterial.assetType === '3D模型' ? /*#__PURE__*/React__default['default'].createElement("div", {
62729
63102
  className: styles$l.modelMeta,
62730
63103
  title: "".concat(currentMaterial.fileFormat, "/").concat(currentMaterial.fileSize)
62731
63104
  }, currentMaterial.fileFormat, "/", currentMaterial.fileSize) : /*#__PURE__*/React__default['default'].createElement("div", {
@@ -62759,12 +63132,13 @@
62759
63132
  if (detail) {
62760
63133
  this.setState({
62761
63134
  currentMaterial: {
62762
- modelName: detail.modelName || '-',
63135
+ name: detail.name || '-',
62763
63136
  fileFormat: detail.fileFormat,
62764
63137
  fileSize: formatFileSize$1(detail.fileSize),
62765
63138
  referenceImage: detail.referenceImage || "",
62766
63139
  resolution: detail.resolution || "",
62767
- assetType: detail.assetType || ""
63140
+ assetType: detail.assetType || "",
63141
+ modelThumbnail: detail.modelThumbnail
62768
63142
  }
62769
63143
  });
62770
63144
  }
@@ -64822,7 +65196,7 @@
64822
65196
  src: material.referenceImage,
64823
65197
  alt: material.name
64824
65198
  }) : /*#__PURE__*/React__default['default'].createElement("img", {
64825
- src: fileLogo,
65199
+ src: material.modelThumbnail || fileLogo,
64826
65200
  alt: ""
64827
65201
  })), /*#__PURE__*/React__default['default'].createElement("div", {
64828
65202
  className: styles$r.materialInfo
@@ -72124,7 +72498,7 @@
72124
72498
  return _getDouGongSchemeDetail.apply(this, arguments);
72125
72499
  }
72126
72500
 
72127
- /** 保存我的方案 */
72501
+ /** 保存平台方案 */
72128
72502
  function _getDouGongSchemeDetail() {
72129
72503
  _getDouGongSchemeDetail = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
72130
72504
  var params,
@@ -72147,7 +72521,7 @@
72147
72521
  return _saveSelfScheme.apply(this, arguments);
72148
72522
  }
72149
72523
 
72150
- /** 查询我的方案分页列表 */
72524
+ /** 查询平台方案管理分页列表 */
72151
72525
  function _saveSelfScheme() {
72152
72526
  _saveSelfScheme = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
72153
72527
  var params,
@@ -72833,7 +73207,7 @@
72833
73207
  totalSize: 0,
72834
73208
  totalPage: 1
72835
73209
  },
72836
- // 从“我的方案”查看渲染时记录当前页;仅在退出渲染回列表时恢复一次。
73210
+ // 从“平台方案管理”查看渲染时记录当前页;仅在退出渲染回列表时恢复一次。
72837
73211
  mySchemeRenderPageNo: null,
72838
73212
  mySchemeReturnPageNo: null,
72839
73213
  mySchemeLoading: false,