template-designer 0.4.1 → 0.4.3

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.
@@ -13,8 +13,9 @@ const e = {
13
13
  prop: "Title",
14
14
  label: "标题",
15
15
  default: "",
16
- layout: "full"
16
+ layout: "full",
17
17
  // 独占一行
18
+ desc: "用于固定文案的打印,不需要则不填。示例:如果填写“价格:”,则打印时内容为“价格:【字段对应值】”"
18
19
  },
19
20
  {
20
21
  prop: "FieldName",
@@ -27,7 +28,7 @@ const e = {
27
28
  },
28
29
  {
29
30
  prop: "Text",
30
- label: "测试数据",
31
+ label: "测试数据(展示使用,无实际意义)",
31
32
  default: "测试文本",
32
33
  layout: "full"
33
34
  // 独占一行
@@ -36,10 +37,14 @@ const e = {
36
37
  prop: "FontName",
37
38
  label: "字体名称",
38
39
  type: "select",
40
+ desc: "注意:选择的字体需要计算机中安装有对应字体才有效",
39
41
  options: [
40
42
  { label: "黑体", value: "黑体", cssValue: "SimHei" },
41
43
  { label: "楷体", value: "楷体", cssValue: "KaiTi" },
42
- { label: "宋体", value: "宋体", cssValue: "SimSun" }
44
+ { label: "宋体", value: "宋体", cssValue: "SimSun" },
45
+ { label: "隶书", value: "隶书", cssValue: "LiSu" },
46
+ { label: "缅语Arial", value: "Arial", cssValue: "Arial" },
47
+ { label: "缅语Segoe UI", value: "Segoe UI", cssValue: "Segoe UI" }
43
48
  ],
44
49
  default: "黑体",
45
50
  layout: "half"
@@ -225,7 +230,7 @@ const e = {
225
230
  },
226
231
  {
227
232
  prop: "BarcodeValue",
228
- label: "测试数据",
233
+ label: "测试数据(展示使用,无实际意义)",
229
234
  type: "text",
230
235
  default: "1234567890"
231
236
  },
@@ -283,7 +288,7 @@ const e = {
283
288
  },
284
289
  {
285
290
  prop: "QRCodeValue",
286
- label: "测试数据",
291
+ label: "测试数据(展示使用,无实际意义)",
287
292
  type: "text",
288
293
  default: "FB-GOLD"
289
294
  },
@@ -307,7 +312,7 @@ const e = {
307
312
  { label: "H (30%)", value: "H" }
308
313
  ],
309
314
  hide: !0,
310
- default: "Q"
315
+ default: "H"
311
316
  },
312
317
  {
313
318
  prop: "QRCodeEncodeMode",
@@ -379,17 +384,19 @@ const e = {
379
384
  prop: "LineWidth",
380
385
  type: "select",
381
386
  label: "线宽",
382
- default: "0.75pt",
387
+ default: "0.5",
383
388
  options: [
384
- { label: "0.75pt", value: "0.75pt" },
385
- { label: "1.5pt", value: "1.5pt" },
386
- { label: "2.25pt", value: "2.25pt" },
387
- { label: "3pt", value: "3pt" },
388
- { label: "3.75pt", value: "3.75pt" },
389
- { label: "4.5pt", value: "4.5pt" },
390
- { label: "5.25pt", value: "5.25pt" },
391
- { label: "6pt", value: "6pt" },
392
- { label: "6.75pt", value: "6.75pt" }
389
+ { label: "默认", value: "0.5" },
390
+ { label: "1px", value: "1" },
391
+ { label: "2px", value: "2" },
392
+ { label: "3px", value: "3" },
393
+ { label: "4px", value: "4" },
394
+ { label: "5px", value: "5" },
395
+ { label: "6px", value: "6" },
396
+ { label: "7px", value: "7" },
397
+ { label: "8px", value: "8" },
398
+ { label: "9px", value: "9" },
399
+ { label: "10px", value: "10" }
393
400
  ]
394
401
  },
395
402
  {
@@ -415,7 +422,7 @@ const e = {
415
422
  },
416
423
  line: {
417
424
  width: 15,
418
- height: 0.75,
425
+ height: 0.5,
419
426
  // 等于默认线宽值
420
427
  rotation: 0,
421
428
  lockAspectRatio: !1,
@@ -429,17 +436,19 @@ const e = {
429
436
  prop: "LineWidth",
430
437
  type: "select",
431
438
  label: "线宽",
432
- default: "0.75pt",
439
+ default: "0.5",
433
440
  options: [
434
- { label: "0.75pt", value: "0.75pt" },
435
- { label: "1.5pt", value: "1.5pt" },
436
- { label: "2.25pt", value: "2.25pt" },
437
- { label: "3pt", value: "3pt" },
438
- { label: "3.75pt", value: "3.75pt" },
439
- { label: "4.5pt", value: "4.5pt" },
440
- { label: "5.25pt", value: "5.25pt" },
441
- { label: "6pt", value: "6pt" },
442
- { label: "6.75pt", value: "6.75pt" }
441
+ { label: "默认", value: "0.5" },
442
+ { label: "1px", value: "1" },
443
+ { label: "2px", value: "2" },
444
+ { label: "3px", value: "3" },
445
+ { label: "4px", value: "4" },
446
+ { label: "5px", value: "5" },
447
+ { label: "6px", value: "6" },
448
+ { label: "7px", value: "7" },
449
+ { label: "8px", value: "8" },
450
+ { label: "9px", value: "9" },
451
+ { label: "10px", value: "10" }
443
452
  ]
444
453
  },
445
454
  {
@@ -28,8 +28,9 @@ const e = {
28
28
  prop: "Title",
29
29
  label: "标题",
30
30
  default: "",
31
- layout: "full"
31
+ layout: "full",
32
32
  // 独占一行
33
+ desc: "设置文本组件的标题内容,用于显示在组件上"
33
34
  },
34
35
  {
35
36
  prop: "FieldName",
@@ -42,7 +43,7 @@ const e = {
42
43
  },
43
44
  {
44
45
  prop: "Text",
45
- label: "测试数据",
46
+ label: "测试数据(展示使用,无实际意义)",
46
47
  default: "测试文本",
47
48
  layout: "full"
48
49
  // 独占一行
@@ -51,6 +52,7 @@ const e = {
51
52
  prop: "FontName",
52
53
  label: "字体名称",
53
54
  type: "select",
55
+ desc: "注意:选择的字体需要计算机中安装有对应字体才有效",
54
56
  options: [
55
57
  { label: "黑体", value: "黑体", cssValue: "SimHei" },
56
58
  { label: "楷体", value: "楷体", cssValue: "KaiTi" },
@@ -153,7 +155,7 @@ const e = {
153
155
  },
154
156
  {
155
157
  prop: "BarcodeValue",
156
- label: "测试数据",
158
+ label: "测试数据(展示使用,无实际意义)",
157
159
  type: "text",
158
160
  default: "1234567890"
159
161
  },
@@ -217,7 +219,7 @@ const e = {
217
219
  },
218
220
  {
219
221
  prop: "QRCodeValue",
220
- label: "测试数据",
222
+ label: "测试数据(展示使用,无实际意义)",
221
223
  type: "text",
222
224
  default: "FB-GOLD"
223
225
  },
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .td-text-component{width:100%;height:100%;position:relative;display:flex;align-items:center;overflow:hidden;box-sizing:border-box}.td-text-content{width:100%;min-width:0;box-sizing:border-box}.label[data-v-02fe6f81]{display:flex;align-items:center;justify-content:flex-start}.property-item[data-v-02fe6f81]{display:flex;flex-direction:column;gap:4px}.property-item label[data-v-02fe6f81]{font-size:14px;color:#666}.property-item input[data-v-02fe6f81],.property-item select[data-v-02fe6f81]{padding:4px 8px;border:1px solid #ddd;border-radius:4px}.property-item input[type=color][data-v-02fe6f81]{height:32px;padding:2px}.property-item input[type=checkbox][data-v-02fe6f81]{width:16px;height:16px}.file-input-container[data-v-02fe6f81]{position:relative;display:flex;align-items:center;gap:8px}.file-input-container input[data-v-02fe6f81]{height:100%!important}.file-url-input[data-v-02fe6f81]{flex:1;padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:12px}.file-url-input[data-v-02fe6f81]:disabled{background-color:#f5f5f5;cursor:not-allowed}.file-input[data-v-02fe6f81]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.file-select-btn[data-v-02fe6f81]{padding:4px 12px;border:1px solid #ddd;border-radius:4px;background:var(--el-color-primary);color:#fff;cursor:pointer;font-size:12px;white-space:nowrap;display:flex;align-items:center;gap:4px}.file-select-btn[data-v-02fe6f81]:hover:not(:disabled){background:var(--el-color-primary-dark-2);border-color:var(--el-color-primary-dark-2)}.file-select-btn[data-v-02fe6f81]:disabled{background:#ccc;cursor:not-allowed}.file-info[data-v-02fe6f81]{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background-color:#f5f5f5;border-radius:4px;margin-top:4px}.file-name[data-v-02fe6f81]{font-size:12px;color:#666;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clear-btn[data-v-02fe6f81]{background:none;border:none;color:#ff4d4f;cursor:pointer;font-size:12px;padding:2px 6px;border-radius:2px}.clear-btn[data-v-02fe6f81]:hover{background-color:#fff2f0}.property-panel[data-v-020f4837]{padding:16px;background:#fff;border-left:1px solid #e4e7ed;overflow-y:auto;height:100%}.property-group[data-v-020f4837]{margin-bottom:16px}.property-group-title[data-v-020f4837]{font-size:14px;font-weight:500;color:#303133;margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid #ebeef5}.property-item[data-v-020f4837]{margin-bottom:12px}.text-property-panel .property-item[data-v-020f4837]:last-child,.barcode-property-panel .property-item[data-v-020f4837]:last-child,.qrcode-property-panel .property-item[data-v-020f4837]:last-child,.image-property-panel .property-item[data-v-020f4837]:last-child,.rectangle-property-panel .property-item[data-v-020f4837]:last-child,.line-property-panel .property-item[data-v-020f4837]:last-child,.verline-property-panel .property-item[data-v-020f4837]:last-child{margin-bottom:0}.property-layout-container[data-v-020f4837]{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.property-item-wrapper[data-v-020f4837]{margin-bottom:0}.property-item-wrapper.full-width[data-v-020f4837]{width:100%;flex-basis:100%}.property-item-wrapper.half-width[data-v-020f4837]{width:calc(50% - 6px);flex-basis:calc(50% - 6px)}.property-item-wrapper.default-width[data-v-020f4837]{width:100%;flex-basis:100%}.property-item-wrapper .property-item[data-v-020f4837]{margin-bottom:0;width:100%}.barcode-component{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}.barcode-component svg{width:100%!important;height:100%!important;max-width:100%;max-height:100%;display:block}.component-selection-overlay{position:absolute;border:2px dashed #1890ff;pointer-events:none;box-sizing:border-box;z-index:1000}.qrcode-component[data-v-75484065]{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}.qrcode-canvas-fixed[data-v-75484065]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0;margin:0}.qrcode-image[data-v-75484065]{display:block;width:100%!important;height:100%!important;padding:0;margin:0;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-crisp-edges;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;filter:none;-webkit-filter:none;object-fit:cover;object-position:center}.component-selection-overlay[data-v-75484065]{position:absolute;border:2px dashed #1890ff;pointer-events:none;box-sizing:border-box;z-index:1000}.qrcode-property-panel[data-v-cce393d5]{display:flex;flex-direction:column;gap:12px}.property-item[data-v-cce393d5]{display:flex;flex-direction:column;gap:4px}.property-item label[data-v-cce393d5]{font-size:14px;color:#666}.property-item input[data-v-cce393d5],.property-item select[data-v-cce393d5]{padding:4px 8px;border:1px solid #ddd;border-radius:4px}.property-item input[type=color][data-v-cce393d5]{height:32px;padding:2px}.image-component[data-v-ba3a7617]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;pointer-events:auto}.image-placeholder[data-v-ba3a7617]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#999;font-size:12px;gap:8px;pointer-events:auto}.image-loading-overlay[data-v-ba3a7617]{position:absolute;left:0;top:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.6);z-index:5;pointer-events:none}.image-content[data-v-ba3a7617]{display:block;max-width:100%;max-height:100%;image-rendering:-webkit-optimize-contrast;image-rendering:-webkit-crisp-edges;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:crisp-edges;image-rendering:high-quality;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:auto;object-fit:contain;object-position:center}.component-selection-overlay[data-v-ba3a7617]{position:absolute;border:2px dashed #1890ff;pointer-events:none;box-sizing:border-box;z-index:1000}.image-property-panel[data-v-462c8b63]{display:flex;flex-direction:column;gap:12px}.property-item[data-v-462c8b63]{display:flex;flex-direction:column;gap:4px}.property-item label[data-v-462c8b63]{font-size:14px;color:#666}.property-item input[data-v-462c8b63],.property-item select[data-v-462c8b63]{padding:4px 8px;border:1px solid #ddd;border-radius:4px}.property-item input[type=color][data-v-462c8b63]{height:32px;padding:2px}.rectangle-component{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:visible;box-sizing:border-box}.rectangle-content{width:100%;height:100%;box-sizing:border-box;position:relative}.hairline-edge{position:absolute;pointer-events:none}.rectangle-property-panel[data-v-e06ed44e]{display:flex;flex-direction:column;gap:12px}.line-component{position:relative;display:flex;align-items:center;justify-content:center;overflow:visible;box-sizing:border-box}.line-selection-outline{position:absolute;left:0;top:0;border:2px dashed #1890ff;pointer-events:none;box-sizing:border-box;z-index:1000}.component-list[data-v-a29cc5ae]{background:#fff;display:flex;flex-direction:column;gap:20px}.component-group[data-v-a29cc5ae]{display:flex;flex-direction:column;gap:8px}.group-title[data-v-a29cc5ae]{font-size:14px;font-weight:600;color:#333;padding:8px 12px;border-left:4px solid var(--el-color-primary);background:linear-gradient(135deg,var(--el-color-primary-light-9) 0%,var(--el-color-primary-light-8) 100%);border-radius:0 6px 6px 0;margin-bottom:4px;box-shadow:0 1px 3px #0000001a}.group-content[data-v-a29cc5ae]{display:grid;grid-template-columns:1fr 1fr;grid-row-gap:8px;grid-column-gap:8px}.component-item[data-v-a29cc5ae]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 0;border:1px solid #ddd;border-radius:4px;cursor:grab;font-size:13px;color:#555;transition:all .2s ease;width:100%;height:70px;background:#fff;box-shadow:0 1px 3px #0000001a}.component-item[data-v-a29cc5ae]:hover{background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary);color:var(--el-color-primary);box-shadow:0 2px 8px #00000014}.component-item i[data-v-a29cc5ae]{font-size:24px;margin-bottom:8px;color:var(--el-color-primary)}.component-item span[data-v-a29cc5ae]{font-size:12px;text-align:center;color:#333}.component-item:hover i[data-v-a29cc5ae],.component-item:hover span[data-v-a29cc5ae]{color:var(--el-color-primary)!important}.ruler[data-v-3635eba4]{position:absolute;z-index:1}.ruler.horizontal[data-v-3635eba4]{left:20px;top:0;width:calc(100% - 40px);height:20px;border-bottom:none}.ruler.vertical[data-v-3635eba4]{top:20px;left:0;width:20px;height:calc(100% - 40px);border-right:none}.ruler-unit[data-v-3635eba4]{position:absolute}.ruler.horizontal .ruler-unit[data-v-3635eba4]{height:100%}.ruler.vertical .ruler-unit[data-v-3635eba4]{width:100%}.ruler-mark[data-v-3635eba4]{position:absolute;background:#999}.ruler.horizontal .ruler-mark[data-v-3635eba4]{bottom:0}.ruler.vertical .ruler-mark[data-v-3635eba4]{right:0}.ruler-text[data-v-3635eba4]{position:absolute;font-size:8px;color:#666;white-space:nowrap}.ruler.horizontal .ruler-text[data-v-3635eba4]{bottom:8px;transform:translate(-50%)}.ruler.vertical .ruler-text[data-v-3635eba4]{right:8px;transform:translateY(-50%) rotate(-90deg)}.label-container[data-v-21b6e8d1]{display:flex;flex-direction:column;align-items:flex-end}.tg-title[data-v-21b6e8d1]{display:flex;align-items:center}.tg-title p[data-v-21b6e8d1]{font-size:18px;font-weight:700}.tge-main[data-v-21b6e8d1]{max-height:82vh;padding:0}.tge-text[data-v-21b6e8d1]{font-size:14px;line-height:26px}.tge-content[data-v-21b6e8d1]{display:flex;width:100%}.tge-block[data-v-21b6e8d1]{display:flex;flex-direction:column;flex:1}.tge-title[data-v-21b6e8d1]{padding:6px 0;font-size:14px;color:var(--el-color-primary)}.tge-img[data-v-21b6e8d1]{width:100%;height:auto}.table-container[data-v-21b6e8d1]{width:100%;border:1px dashed #ddd;border-radius:4px}.empty-placeholder[data-v-21b6e8d1]{display:flex;align-items:center;justify-content:center;color:#999;padding:20px;border-radius:4px;min-height:80px}.graph-table[data-v-21b6e8d1]{margin-top:10px}.tge-divider[data-v-21b6e8d1]{width:1px;background:var(--el-border-color);margin:0 10px}.table-container .el-table .el-table__body-wrapper{background:transparent!important}.graph-table .el-table__header,.graph-table .el-table__body{width:100%!important}.graph-table .el-table__body{margin-bottom:10px!important}.graph-table .el-form-item__error{position:static!important;top:0!important}.graph-table .el-input-number{width:auto}.graph-table .el-input-number.is-without-controls .el-input__wrapper{padding-left:4px;padding-right:4px}button[data-v-bef911ca]{display:flex;align-items:center;justify-content:center}.label-designer[data-v-bef911ca]{display:flex;height:100%}.toolbar[data-v-bef911ca]{width:200px;background:#fff;border-right:1px solid #e0e0e0;padding:16px;display:flex;flex-direction:column;gap:16px}.zoom-controls span[data-v-bef911ca]{width:44px;text-align:center}.zoom-controls[data-v-bef911ca]{display:flex;align-items:center;gap:8px;background:#f5f5f5;border-radius:4px;padding:4px 8px}.zoom-controls button[data-v-bef911ca]{width:24px;height:24px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer}.zoom-controls button[data-v-bef911ca]:disabled{opacity:.5;cursor:not-allowed}.center-container[data-v-bef911ca]{display:flex;flex-direction:column;flex:1;overflow:hidden;height:100%}.center-toolbar[data-v-bef911ca]{display:flex;align-items:center;justify-content:flex-end;padding:16px 16px 0;background:rgba(0,0,0,.05)}.canvas-container[data-v-bef911ca]{flex:1;padding:0 16px 16px;overflow:auto;background:rgba(0,0,0,.05);position:relative;display:flex;flex-direction:column}.canvas-wrapper[data-v-bef911ca]{position:relative;transform-origin:0 0;overflow:visible;width:fit-content;height:fit-content;margin-top:20px;transition:all .2s ease;transform:translateZ(0);will-change:transform}.ruler-horizontal[data-v-bef911ca]{position:absolute;left:0;top:0;right:0;height:24px;z-index:10;pointer-events:none}.ruler-vertical[data-v-bef911ca]{position:absolute;left:0;top:0;bottom:0;width:24px;z-index:10;pointer-events:none}.canvas[data-v-bef911ca]{position:relative;overflow:visible;z-index:1;position:absolute;left:21px;top:21px}.property-panel[data-v-bef911ca]{width:260px;background:#fff;border-left:1px solid #ddd;padding:0 16px 16px;display:flex;flex-direction:column;gap:16px;position:relative;z-index:100;overflow-y:auto}.property-panel-title[data-v-bef911ca]{position:sticky;top:0;left:0;right:0;background:#fff;z-index:100;display:flex;align-items:center;justify-content:flex-start;margin:10px 0 0}.position-controls[data-v-bef911ca]{display:flex;flex-direction:column;gap:12px;padding:12px;background:#f5f5f5;border-radius:4px}.control-group[data-v-bef911ca]{display:flex;align-items:center;justify-content:space-between;gap:4px}.control-group label[data-v-bef911ca]{width:80px;font-size:14px;color:#666;text-align:end}.number-input[data-v-bef911ca]{display:flex;align-items:center;gap:4px}.number-input input[data-v-bef911ca]{width:90px;padding:4px;border:1px solid #ddd;border-radius:4px;text-align:center}.number-input button[data-v-bef911ca]{width:24px;height:24px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer}.canvas-item[data-v-bef911ca]{position:absolute;cursor:move;-webkit-user-select:none;user-select:none;z-index:10;transform:translateZ(0);will-change:transform;left:0;top:0}.resize-handle[data-v-bef911ca]{position:absolute;width:6px;height:6px;background:#1890ff;border:1px solid #fff;box-shadow:0 0 3px #0000004d;z-index:1001;transition:all .2s ease;border-radius:1px;display:block!important;visibility:visible!important;opacity:1!important;transform:translateZ(0);will-change:transform;font-size:16px!important;line-height:1!important}.resize-handle[data-v-bef911ca]:hover{background:#40a9ff;box-shadow:0 0 4px #0006}.resize-handle.top-left[data-v-bef911ca]{top:-4px;left:-4px;background:#52c41a}.resize-handle.top-left[data-v-bef911ca]:hover{background:#73d13d}.resize-handle.top-left[data-v-bef911ca]:active{background:#389e0d}.resize-handle.top[data-v-bef911ca]{top:-4px;left:50%;transform:translate(-50%)}.resize-handle.top[data-v-bef911ca]:hover,.resize-handle.top[data-v-bef911ca]:active{transform:translate(-50%)}.resize-handle.top-right[data-v-bef911ca]{top:-4px;right:-4px;background:#52c41a}.resize-handle.top-right[data-v-bef911ca]:hover{background:#73d13d}.resize-handle.top-right[data-v-bef911ca]:active{background:#389e0d}.resize-handle.right[data-v-bef911ca]{top:50%;right:-4px;transform:translateY(-50%)}.resize-handle.right[data-v-bef911ca]:hover,.resize-handle.right[data-v-bef911ca]:active{transform:translateY(-50%)}.resize-handle.bottom-right[data-v-bef911ca]{bottom:-4px;right:-4px;background:#52c41a;z-index:1001}.resize-handle.bottom-right[data-v-bef911ca]:hover{background:#73d13d}.resize-handle.bottom-right[data-v-bef911ca]:active{background:#389e0d}.resize-handle.bottom[data-v-bef911ca]{bottom:-4px;left:50%;transform:translate(-50%)}.resize-handle.bottom[data-v-bef911ca]:hover,.resize-handle.bottom[data-v-bef911ca]:active{transform:translate(-50%)}.resize-handle.bottom-left[data-v-bef911ca]{bottom:-4px;left:-4px;background:#52c41a}.resize-handle.bottom-left[data-v-bef911ca]:hover{background:#73d13d}.resize-handle.bottom-left[data-v-bef911ca]:active{background:#389e0d}.resize-handle.left[data-v-bef911ca]{top:50%;left:-4px;transform:translateY(-50%)}.resize-handle.left[data-v-bef911ca]:hover,.resize-handle.left[data-v-bef911ca]:active{transform:translateY(-50%)}.rotate-handle[data-v-bef911ca]{position:absolute;top:-5px;left:50%;transform:translate(-50%);width:10px;height:10px;background:#1890ff;color:#fff;border-radius:50%;cursor:grab;z-index:1002;display:flex;align-items:center;justify-content:center}.size-label[data-v-bef911ca]{display:flex;justify-content:center;flex-wrap:nowrap;white-space:nowrap;position:absolute;top:-14px;left:-4px;width:auto;min-width:70px;height:auto;background:rgba(255,34,34,.8);color:#fff;font-size:7px;border-radius:6px;z-index:20;line-height:1.2;box-shadow:0 2px 8px #00000014;pointer-events:none;padding:1px 8px 0}.delete-btn[data-v-bef911ca]{position:absolute;top:-5px;right:-5px;width:10px;height:10px;background:#ff4d4f;color:#fff;border:none;border-radius:50%;cursor:pointer;z-index:1003;display:flex;align-items:center;justify-content:center}.drag-extend-lines[data-v-bef911ca]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.drag-extend-line[data-v-bef911ca]{position:absolute;pointer-events:none;z-index:998}.drag-extend-line.horizontal[data-v-bef911ca]{width:100%;height:0;left:0;border-top:1px dashed rgb(177,179,184)}.drag-extend-line.vertical[data-v-bef911ca]{width:0;height:100%;top:0;border-left:1px dashed rgb(177,179,184)}.drag-extend-line.rotated[data-v-bef911ca]{position:absolute;border:1px dashed #1890ff;pointer-events:none;z-index:998}.alignment-guides[data-v-bef911ca]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999}.alignment-guide[data-v-bef911ca]{background-color:transparent;pointer-events:none;z-index:9999}.alignment-guide.horizontal[data-v-bef911ca]{position:absolute;left:0;right:0;height:1px;background:linear-gradient(to right,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:6px 1px;background-repeat:repeat-x;transform:translateZ(0);will-change:auto}.alignment-guide.vertical[data-v-bef911ca]{position:absolute;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:1px 6px;background-repeat:repeat-y;transform:translateZ(0);will-change:auto}.alignment-guide.guide-center[data-v-bef911ca]{background:linear-gradient(to right,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:4px 1px}.alignment-guide.guide-center.vertical[data-v-bef911ca]{background:linear-gradient(to bottom,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:1px 4px}.alignment-guide.guide-resize-anchor[data-v-bef911ca]{background:linear-gradient(to right,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:4px 1px}.alignment-guide.guide-resize-anchor.vertical[data-v-bef911ca]{background:linear-gradient(to bottom,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:1px 4px}.alignment-guide.guide-canvas-center[data-v-bef911ca]{background:linear-gradient(to right,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:6px 1px}.alignment-guide.guide-canvas-center.vertical[data-v-bef911ca]{background:linear-gradient(to bottom,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:1px 6px}.number-input input[type=number][data-v-bef911ca]::-webkit-inner-spin-button,.number-input input[type=number][data-v-bef911ca]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.switch-input[data-v-bef911ca]{display:flex;align-items:center}.switch-input input[type=checkbox][data-v-bef911ca]{width:20px;height:20px;cursor:pointer;accent-color:#1890ff}.component-selected[data-v-bef911ca],.component-current[data-v-bef911ca]{outline:1px dashed #1890ff!important;outline-offset:0!important}.component-selected[data-v-bef911ca],.component-current[data-v-bef911ca]{box-sizing:border-box}.no-outline.component-selected[data-v-bef911ca],.no-outline.component-current[data-v-bef911ca]{outline:none!important}.component-config-missing[data-v-bef911ca]{display:flex;align-items:center;justify-content:center;background:#fff3cd;border:1px dashed #ffc107;border-radius:4px;color:#856404;font-size:12px}.missing-config-tip[data-v-bef911ca]{display:flex;align-items:center;gap:4px;padding:8px}.missing-config-tip .el-icon[data-v-bef911ca]{font-size:14px;color:#ffc107}.loader-container[data-v-bef911ca]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center}.loader-container p[data-v-bef911ca]{color:var(--el-color-primary-light-3);font-size:14px;margin-top:20px}.loader-circle[data-v-bef911ca]{width:70px;height:70px;display:inline-block;margin-right:10px;position:relative;vertical-align:top}.loader-circle[data-v-bef911ca]:before{border-radius:50%;border-top:5px solid var(--el-color-primary-light-3);content:" ";display:block;position:absolute;top:10%;left:10%;height:80%;width:80%;animation:loader-circle_rotation-bef911ca 1s linear infinite}.loader-circle[data-v-bef911ca]:after{border-radius:50%;border-bottom:5px solid var(--el-color-primary-light-3);content:" ";display:block;height:100%;width:100%;animation:loader-circle_rotation-reverse-bef911ca 1s linear infinite;position:absolute;top:0}@keyframes loader-circle_rotation-reverse-bef911ca{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes loader-circle_rotation-bef911ca{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.template-designer[data-v-a3d9b11f]{overflow-y:hidden}.template-designer-border-top[data-v-a3d9b11f]{border-top:1px solid #e0e0e0}
1
+ .td-text-component{width:100%;height:100%;position:relative;display:flex;align-items:center;overflow:hidden;box-sizing:border-box}.td-text-content{width:100%;min-width:0;box-sizing:border-box}.label[data-v-59226236]{display:flex;align-items:center;justify-content:flex-start;gap:4px}.help-icon[data-v-59226236]{font-size:14px;color:#999;cursor:help;transition:color .2s ease}.help-icon[data-v-59226236]:hover{color:var(--el-color-primary)}.property-item[data-v-59226236]{display:flex;flex-direction:column;gap:4px}.property-item label[data-v-59226236]{font-size:14px;color:#666}.property-item input[data-v-59226236],.property-item select[data-v-59226236]{padding:4px 8px;border:1px solid #ddd;border-radius:4px}.property-item input[type=color][data-v-59226236]{height:32px;padding:2px}.property-item input[type=checkbox][data-v-59226236]{width:16px;height:16px}.file-input-container[data-v-59226236]{position:relative;display:flex;align-items:center;gap:8px}.file-input-container input[data-v-59226236]{height:100%!important}.file-url-input[data-v-59226236]{flex:1;padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:12px}.file-url-input[data-v-59226236]:disabled{background-color:#f5f5f5;cursor:not-allowed}.file-input[data-v-59226236]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.file-select-btn[data-v-59226236]{padding:4px 12px;border:1px solid #ddd;border-radius:4px;background:var(--el-color-primary);color:#fff;cursor:pointer;font-size:12px;white-space:nowrap;display:flex;align-items:center;gap:4px}.file-select-btn[data-v-59226236]:hover:not(:disabled){background:var(--el-color-primary-dark-2);border-color:var(--el-color-primary-dark-2)}.file-select-btn[data-v-59226236]:disabled{background:#ccc;cursor:not-allowed}.file-info[data-v-59226236]{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background-color:#f5f5f5;border-radius:4px;margin-top:4px}.file-name[data-v-59226236]{font-size:12px;color:#666;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clear-btn[data-v-59226236]{background:none;border:none;color:#ff4d4f;cursor:pointer;font-size:12px;padding:2px 6px;border-radius:2px}.clear-btn[data-v-59226236]:hover{background-color:#fff2f0}.property-panel[data-v-42ee2d63]{padding:16px;background:#fff;border-left:1px solid #e4e7ed;overflow-y:auto;height:100%}.property-group[data-v-42ee2d63]{margin-bottom:16px}.property-group-title[data-v-42ee2d63]{font-size:14px;font-weight:500;color:#303133;margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid #ebeef5}.property-item[data-v-42ee2d63]{margin-bottom:12px}.text-property-panel .property-item[data-v-42ee2d63]:last-child,.barcode-property-panel .property-item[data-v-42ee2d63]:last-child,.qrcode-property-panel .property-item[data-v-42ee2d63]:last-child,.image-property-panel .property-item[data-v-42ee2d63]:last-child,.rectangle-property-panel .property-item[data-v-42ee2d63]:last-child,.line-property-panel .property-item[data-v-42ee2d63]:last-child,.verline-property-panel .property-item[data-v-42ee2d63]:last-child{margin-bottom:0}.property-layout-container[data-v-42ee2d63]{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.property-item-wrapper[data-v-42ee2d63]{margin-bottom:0}.property-item-wrapper.full-width[data-v-42ee2d63]{width:100%;flex-basis:100%}.property-item-wrapper.half-width[data-v-42ee2d63]{width:calc(50% - 6px);flex-basis:calc(50% - 6px)}.property-item-wrapper.default-width[data-v-42ee2d63]{width:100%;flex-basis:100%}.property-item-wrapper .property-item[data-v-42ee2d63]{margin-bottom:0;width:100%}.barcode-component{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}.barcode-component svg{width:100%!important;height:100%!important;max-width:100%;max-height:100%;display:block}.component-selection-overlay{position:absolute;border:2px dashed #1890ff;pointer-events:none;box-sizing:border-box;z-index:1000}.qrcode-component[data-v-75484065]{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}.qrcode-canvas-fixed[data-v-75484065]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0;margin:0}.qrcode-image[data-v-75484065]{display:block;width:100%!important;height:100%!important;padding:0;margin:0;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-crisp-edges;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;filter:none;-webkit-filter:none;object-fit:cover;object-position:center}.component-selection-overlay[data-v-75484065]{position:absolute;border:2px dashed #1890ff;pointer-events:none;box-sizing:border-box;z-index:1000}.qrcode-property-panel[data-v-cce393d5]{display:flex;flex-direction:column;gap:12px}.property-item[data-v-cce393d5]{display:flex;flex-direction:column;gap:4px}.property-item label[data-v-cce393d5]{font-size:14px;color:#666}.property-item input[data-v-cce393d5],.property-item select[data-v-cce393d5]{padding:4px 8px;border:1px solid #ddd;border-radius:4px}.property-item input[type=color][data-v-cce393d5]{height:32px;padding:2px}.image-component[data-v-ba3a7617]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;pointer-events:auto}.image-placeholder[data-v-ba3a7617]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#999;font-size:12px;gap:8px;pointer-events:auto}.image-loading-overlay[data-v-ba3a7617]{position:absolute;left:0;top:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.6);z-index:5;pointer-events:none}.image-content[data-v-ba3a7617]{display:block;max-width:100%;max-height:100%;image-rendering:-webkit-optimize-contrast;image-rendering:-webkit-crisp-edges;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:crisp-edges;image-rendering:high-quality;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:auto;object-fit:contain;object-position:center}.component-selection-overlay[data-v-ba3a7617]{position:absolute;border:2px dashed #1890ff;pointer-events:none;box-sizing:border-box;z-index:1000}.image-property-panel[data-v-462c8b63]{display:flex;flex-direction:column;gap:12px}.property-item[data-v-462c8b63]{display:flex;flex-direction:column;gap:4px}.property-item label[data-v-462c8b63]{font-size:14px;color:#666}.property-item input[data-v-462c8b63],.property-item select[data-v-462c8b63]{padding:4px 8px;border:1px solid #ddd;border-radius:4px}.property-item input[type=color][data-v-462c8b63]{height:32px;padding:2px}.rectangle-component{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;overflow:visible;box-sizing:border-box}.rectangle-content{width:100%;height:100%;box-sizing:border-box;position:relative}.hairline-edge{position:absolute;pointer-events:none}.rectangle-property-panel[data-v-e06ed44e]{display:flex;flex-direction:column;gap:12px}.line-component{position:relative;display:flex;align-items:center;justify-content:center;overflow:visible;box-sizing:border-box}.line-selection-outline{position:absolute;left:0;top:0;border:2px dashed #1890ff;pointer-events:none;box-sizing:border-box;z-index:1000}.component-list[data-v-010ae52b]{background:#fff;display:flex;flex-direction:column;gap:20px}.component-group[data-v-010ae52b]{display:flex;flex-direction:column;gap:8px}.group-title[data-v-010ae52b]{font-size:14px;font-weight:600;color:#333;padding:8px 12px;border-left:4px solid var(--el-color-primary);background:linear-gradient(135deg,var(--el-color-primary-light-9) 0%,var(--el-color-primary-light-8) 100%);border-radius:0 6px 6px 0;margin-bottom:4px;box-shadow:0 1px 3px #0000001a}.group-content[data-v-010ae52b]{display:grid;grid-template-columns:1fr 1fr;grid-row-gap:8px;grid-column-gap:8px}.component-item[data-v-010ae52b]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 0;border:1px solid #ddd;border-radius:4px;cursor:grab;font-size:13px;color:#555;transition:all .2s ease;width:100%;height:70px;background:#fff;box-shadow:0 1px 3px #0000001a}.component-item[data-v-010ae52b]:hover{background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary);color:var(--el-color-primary);box-shadow:0 2px 8px #00000014}.component-item i[data-v-010ae52b]{font-size:24px;margin-bottom:8px;color:var(--el-color-primary)}.component-item span[data-v-010ae52b]{font-size:12px;text-align:center;color:#333}.component-item:hover i[data-v-010ae52b],.component-item:hover span[data-v-010ae52b]{color:var(--el-color-primary)!important}.ruler[data-v-3635eba4]{position:absolute;z-index:1}.ruler.horizontal[data-v-3635eba4]{left:20px;top:0;width:calc(100% - 40px);height:20px;border-bottom:none}.ruler.vertical[data-v-3635eba4]{top:20px;left:0;width:20px;height:calc(100% - 40px);border-right:none}.ruler-unit[data-v-3635eba4]{position:absolute}.ruler.horizontal .ruler-unit[data-v-3635eba4]{height:100%}.ruler.vertical .ruler-unit[data-v-3635eba4]{width:100%}.ruler-mark[data-v-3635eba4]{position:absolute;background:#999}.ruler.horizontal .ruler-mark[data-v-3635eba4]{bottom:0}.ruler.vertical .ruler-mark[data-v-3635eba4]{right:0}.ruler-text[data-v-3635eba4]{position:absolute;font-size:8px;color:#666;white-space:nowrap}.ruler.horizontal .ruler-text[data-v-3635eba4]{bottom:8px;transform:translate(-50%)}.ruler.vertical .ruler-text[data-v-3635eba4]{right:8px;transform:translateY(-50%) rotate(-90deg)}.label-container[data-v-21b6e8d1]{display:flex;flex-direction:column;align-items:flex-end}.tg-title[data-v-21b6e8d1]{display:flex;align-items:center}.tg-title p[data-v-21b6e8d1]{font-size:18px;font-weight:700}.tge-main[data-v-21b6e8d1]{max-height:82vh;padding:0}.tge-text[data-v-21b6e8d1]{font-size:14px;line-height:26px}.tge-content[data-v-21b6e8d1]{display:flex;width:100%}.tge-block[data-v-21b6e8d1]{display:flex;flex-direction:column;flex:1}.tge-title[data-v-21b6e8d1]{padding:6px 0;font-size:14px;color:var(--el-color-primary)}.tge-img[data-v-21b6e8d1]{width:100%;height:auto}.table-container[data-v-21b6e8d1]{width:100%;border:1px dashed #ddd;border-radius:4px}.empty-placeholder[data-v-21b6e8d1]{display:flex;align-items:center;justify-content:center;color:#999;padding:20px;border-radius:4px;min-height:80px}.graph-table[data-v-21b6e8d1]{margin-top:10px}.tge-divider[data-v-21b6e8d1]{width:1px;background:var(--el-border-color);margin:0 10px}.table-container .el-table .el-table__body-wrapper{background:transparent!important}.graph-table .el-table__header,.graph-table .el-table__body{width:100%!important}.graph-table .el-table__body{margin-bottom:10px!important}.graph-table .el-form-item__error{position:static!important;top:0!important}.graph-table .el-input-number{width:auto}.graph-table .el-input-number.is-without-controls .el-input__wrapper{padding-left:4px;padding-right:4px}button[data-v-90f39283]{display:flex;align-items:center;justify-content:center}.label-designer[data-v-90f39283]{display:flex;height:100%}.toolbar[data-v-90f39283]{width:200px;background:#fff;border-right:1px solid #e0e0e0;padding:16px;display:flex;flex-direction:column;gap:16px}.zoom-controls span[data-v-90f39283]{width:44px;text-align:center}.zoom-controls[data-v-90f39283]{display:flex;align-items:center;gap:8px;background:#f5f5f5;border-radius:4px;padding:4px 8px}.zoom-controls button[data-v-90f39283]{width:24px;height:24px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer}.zoom-controls button[data-v-90f39283]:disabled{opacity:.5;cursor:not-allowed}.center-container[data-v-90f39283]{display:flex;flex-direction:column;flex:1;overflow:hidden;height:100%}.center-toolbar[data-v-90f39283]{display:flex;align-items:center;justify-content:flex-end;padding:16px 16px 0;background:rgba(0,0,0,.05)}.canvas-container[data-v-90f39283]{flex:1;padding:0 16px 16px;overflow:auto;background:rgba(0,0,0,.05);position:relative;display:flex;flex-direction:column}.canvas-wrapper[data-v-90f39283]{position:relative;transform-origin:0 0;overflow:visible;width:fit-content;height:fit-content;margin-top:20px;transition:all .2s ease;transform:translateZ(0);will-change:transform}.ruler-horizontal[data-v-90f39283]{position:absolute;left:0;top:0;right:0;height:24px;z-index:10;pointer-events:none}.ruler-vertical[data-v-90f39283]{position:absolute;left:0;top:0;bottom:0;width:24px;z-index:10;pointer-events:none}.canvas[data-v-90f39283]{position:relative;overflow:visible;z-index:1;position:absolute;left:21px;top:21px}.property-panel[data-v-90f39283]{width:260px;background:#fff;border-left:1px solid #ddd;padding:0 16px 16px;display:flex;flex-direction:column;gap:16px;position:relative;z-index:100;overflow-y:auto}.property-panel-title[data-v-90f39283]{position:sticky;top:0;left:0;right:0;background:#fff;z-index:100;display:flex;align-items:center;justify-content:flex-start;margin:10px 0 0}.position-controls[data-v-90f39283]{display:flex;flex-direction:column;gap:12px;padding:12px;background:#f5f5f5;border-radius:4px}.control-group[data-v-90f39283]{display:flex;align-items:center;justify-content:space-between;gap:4px}.control-group label[data-v-90f39283]{width:80px;font-size:14px;color:#666;text-align:end}.number-input[data-v-90f39283]{display:flex;align-items:center;gap:4px}.number-input input[data-v-90f39283]{width:90px;padding:4px;border:1px solid #ddd;border-radius:4px;text-align:center}.number-input button[data-v-90f39283]{width:24px;height:24px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer}.canvas-item[data-v-90f39283]{position:absolute;cursor:move;-webkit-user-select:none;user-select:none;z-index:10;transform:translateZ(0);will-change:transform;left:0;top:0;pointer-events:auto}.resize-handle[data-v-90f39283]{position:absolute;width:6px;height:6px;background:#1890ff;border:1px solid #fff;box-shadow:0 0 3px #0000004d;z-index:1001;transition:all .2s ease;border-radius:1px;display:block!important;visibility:visible!important;opacity:1!important;transform:translateZ(0);will-change:transform;font-size:16px!important;line-height:1!important;cursor:pointer}.resize-handle[data-v-90f39283]:hover{background:#40a9ff;box-shadow:0 0 4px #0006}.resize-handle.top-left[data-v-90f39283]{top:-4px;left:-4px;background:#52c41a}.resize-handle.top-left[data-v-90f39283]:hover{background:#73d13d}.resize-handle.top-left[data-v-90f39283]:active{background:#389e0d}.resize-handle.top[data-v-90f39283]{top:-4px;left:50%;transform:translate(-50%)}.resize-handle.top[data-v-90f39283]:hover,.resize-handle.top[data-v-90f39283]:active{transform:translate(-50%)}.resize-handle.top-right[data-v-90f39283]{top:-4px;right:-4px;background:#52c41a}.resize-handle.top-right[data-v-90f39283]:hover{background:#73d13d}.resize-handle.top-right[data-v-90f39283]:active{background:#389e0d}.resize-handle.right[data-v-90f39283]{top:50%;right:-4px;transform:translateY(-50%)}.resize-handle.right[data-v-90f39283]:hover,.resize-handle.right[data-v-90f39283]:active{transform:translateY(-50%)}.resize-handle.bottom-right[data-v-90f39283]{bottom:-4px;right:-4px;background:#52c41a;z-index:1001}.resize-handle.bottom-right[data-v-90f39283]:hover{background:#73d13d}.resize-handle.bottom-right[data-v-90f39283]:active{background:#389e0d}.resize-handle.bottom[data-v-90f39283]{bottom:-4px;left:50%;transform:translate(-50%)}.resize-handle.bottom[data-v-90f39283]:hover,.resize-handle.bottom[data-v-90f39283]:active{transform:translate(-50%)}.resize-handle.bottom-left[data-v-90f39283]{bottom:-4px;left:-4px;background:#52c41a}.resize-handle.bottom-left[data-v-90f39283]:hover{background:#73d13d}.resize-handle.bottom-left[data-v-90f39283]:active{background:#389e0d}.resize-handle.left[data-v-90f39283]{top:50%;left:-4px;transform:translateY(-50%)}.resize-handle.left[data-v-90f39283]:hover,.resize-handle.left[data-v-90f39283]:active{transform:translateY(-50%)}.rotate-handle[data-v-90f39283]{position:absolute;top:-5px;left:50%;transform:translate(-50%);width:10px;height:10px;background:#1890ff;color:#fff;border-radius:50%;cursor:grab;z-index:1002;display:flex;align-items:center;justify-content:center}.size-label[data-v-90f39283]{display:flex;justify-content:center;flex-wrap:nowrap;white-space:nowrap;position:absolute;top:-14px;left:-4px;width:auto;min-width:70px;height:auto;background:rgba(255,34,34,.8);color:#fff;font-size:7px;border-radius:6px;z-index:20;line-height:1.2;box-shadow:0 2px 8px #00000014;pointer-events:none;padding:1px 8px 0}.delete-btn[data-v-90f39283]{position:absolute;top:-5px;right:-5px;width:10px;height:10px;background:#ff4d4f;color:#fff;border:none;border-radius:50%;cursor:pointer;z-index:1003;display:flex;align-items:center;justify-content:center}.drag-extend-lines[data-v-90f39283]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.drag-extend-line[data-v-90f39283]{position:absolute;pointer-events:none;z-index:998}.drag-extend-line.horizontal[data-v-90f39283]{width:100%;height:1px;left:0;background:linear-gradient(to right,rgb(177,179,184) 0%,rgb(177,179,184) 50%,transparent 50%,transparent 100%);background-size:6px 1px;background-repeat:repeat-x;transform:translateZ(0);will-change:auto}.drag-extend-line.vertical[data-v-90f39283]{width:1px;height:100%;top:0;background:linear-gradient(to bottom,rgb(177,179,184) 0%,rgb(177,179,184) 50%,transparent 50%,transparent 100%);background-size:1px 6px;background-repeat:repeat-y;transform:translateZ(0);will-change:auto}.drag-extend-line.rotated[data-v-90f39283]{position:absolute;border:1px dashed #1890ff;pointer-events:none;z-index:998}.alignment-guides[data-v-90f39283]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999}.alignment-guide[data-v-90f39283]{background-color:transparent;pointer-events:none;z-index:9999}.alignment-guide.horizontal[data-v-90f39283]{position:absolute;left:0;right:0;height:1px;background:linear-gradient(to right,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:6px 1px;background-repeat:repeat-x;transform:translateZ(0);will-change:auto}.alignment-guide.vertical[data-v-90f39283]{position:absolute;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:1px 6px;background-repeat:repeat-y;transform:translateZ(0);will-change:auto}.alignment-guide.guide-center[data-v-90f39283]{background:linear-gradient(to right,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:4px 1px}.alignment-guide.guide-center.vertical[data-v-90f39283]{background:linear-gradient(to bottom,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:1px 4px}.alignment-guide.guide-resize-anchor[data-v-90f39283]{background:linear-gradient(to right,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:4px 1px}.alignment-guide.guide-resize-anchor.vertical[data-v-90f39283]{background:linear-gradient(to bottom,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:1px 4px}.alignment-guide.guide-canvas-center[data-v-90f39283]{background:linear-gradient(to right,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:6px 1px}.alignment-guide.guide-canvas-center.vertical[data-v-90f39283]{background:linear-gradient(to bottom,#ff4d4f 0%,#ff4d4f 50%,transparent 50%,transparent 100%);background-size:1px 6px}.number-input input[type=number][data-v-90f39283]::-webkit-inner-spin-button,.number-input input[type=number][data-v-90f39283]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.switch-input[data-v-90f39283]{display:flex;align-items:center}.switch-input input[type=checkbox][data-v-90f39283]{width:20px;height:20px;cursor:pointer;accent-color:#1890ff}.component-selected[data-v-90f39283],.component-current[data-v-90f39283]{outline:1px dashed #1890ff!important;outline-offset:0!important}.component-selected[data-v-90f39283],.component-current[data-v-90f39283]{box-sizing:border-box}.no-outline.component-selected[data-v-90f39283],.no-outline.component-current[data-v-90f39283]{outline:none!important}.component-config-missing[data-v-90f39283]{display:flex;align-items:center;justify-content:center;background:#fff3cd;border:1px dashed #ffc107;border-radius:4px;color:#856404;font-size:12px}.missing-config-tip[data-v-90f39283]{display:flex;align-items:center;gap:4px;padding:8px}.missing-config-tip .el-icon[data-v-90f39283]{font-size:14px;color:#ffc107}.loader-container[data-v-90f39283]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center}.loader-container p[data-v-90f39283]{color:var(--el-color-primary-light-3);font-size:14px;margin-top:20px}.loader-circle[data-v-90f39283]{width:70px;height:70px;display:inline-block;margin-right:10px;position:relative;vertical-align:top}.loader-circle[data-v-90f39283]:before{border-radius:50%;border-top:5px solid var(--el-color-primary-light-3);content:" ";display:block;position:absolute;top:10%;left:10%;height:80%;width:80%;animation:loader-circle_rotation-90f39283 1s linear infinite}.loader-circle[data-v-90f39283]:after{border-radius:50%;border-bottom:5px solid var(--el-color-primary-light-3);content:" ";display:block;height:100%;width:100%;animation:loader-circle_rotation-reverse-90f39283 1s linear infinite;position:absolute;top:0}@keyframes loader-circle_rotation-reverse-90f39283{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes loader-circle_rotation-90f39283{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.template-designer[data-v-a3d9b11f]{overflow-y:hidden}.template-designer-border-top[data-v-a3d9b11f]{border-top:1px solid #e0e0e0}