@mlightcad/cad-viewer 1.4.13 → 1.5.0

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.
Files changed (121) hide show
  1. package/dist/app/register.d.ts.map +1 -1
  2. package/dist/app/store.d.ts +1 -0
  3. package/dist/app/store.d.ts.map +1 -1
  4. package/dist/command/AcApHatchRibbonCmd.d.ts +74 -0
  5. package/dist/command/AcApHatchRibbonCmd.d.ts.map +1 -0
  6. package/dist/command/AcApLayerStateCmd.d.ts.map +1 -1
  7. package/dist/command/AcApPropertiesCmd.d.ts +5 -0
  8. package/dist/command/AcApPropertiesCmd.d.ts.map +1 -0
  9. package/dist/command/index.d.ts +2 -0
  10. package/dist/command/index.d.ts.map +1 -1
  11. package/dist/component/MlCadViewer.vue.d.ts +1 -1
  12. package/dist/component/MlCadViewer.vue.d.ts.map +1 -1
  13. package/dist/component/common/MlBaseDialog.vue.d.ts.map +1 -1
  14. package/dist/component/common/MlBaseDrawStyleToolbar.vue.d.ts +1 -1
  15. package/dist/component/common/MlBaseDrawStyleToolbar.vue.d.ts.map +1 -1
  16. package/dist/component/common/MlColorDropdown.vue.d.ts +4 -0
  17. package/dist/component/common/MlColorDropdown.vue.d.ts.map +1 -1
  18. package/dist/component/common/MlColorPickerDropdown.vue.d.ts +2 -2
  19. package/dist/component/common/MlHatchPatternDropdown.vue.d.ts +65 -0
  20. package/dist/component/common/MlHatchPatternDropdown.vue.d.ts.map +1 -0
  21. package/dist/component/common/MlHatchPatternPanel.vue.d.ts +55 -0
  22. package/dist/component/common/MlHatchPatternPanel.vue.d.ts.map +1 -0
  23. package/dist/component/common/MlLayerSelect.vue.d.ts +46 -0
  24. package/dist/component/common/MlLayerSelect.vue.d.ts.map +1 -0
  25. package/dist/component/common/MlLineTypeSelect.vue.d.ts +35 -0
  26. package/dist/component/common/MlLineTypeSelect.vue.d.ts.map +1 -0
  27. package/dist/component/common/MlLineWeightSelect.vue.d.ts +13 -5
  28. package/dist/component/common/MlLineWeightSelect.vue.d.ts.map +1 -1
  29. package/dist/component/common/MlSysVarToggleButton.vue.d.ts.map +1 -1
  30. package/dist/component/common/hatchPatternPreview.d.ts +36 -0
  31. package/dist/component/common/hatchPatternPreview.d.ts.map +1 -0
  32. package/dist/component/common/index.d.ts +4 -0
  33. package/dist/component/common/index.d.ts.map +1 -1
  34. package/dist/component/common/lineTypeOptions.d.ts +41 -0
  35. package/dist/component/common/lineTypeOptions.d.ts.map +1 -0
  36. package/dist/component/index.d.ts +1 -0
  37. package/dist/component/index.d.ts.map +1 -1
  38. package/dist/component/layout/MlEntityInfo.vue.d.ts.map +1 -1
  39. package/dist/component/layout/MlLanguageSelector.vue.d.ts.map +1 -1
  40. package/dist/component/layout/MlLayerDrawStyleToolbar.vue.d.ts.map +1 -1
  41. package/dist/component/layout/MlToolBars.vue.d.ts.map +1 -1
  42. package/dist/component/palette/MlEntityProperties.vue.d.ts.map +1 -1
  43. package/dist/component/palette/MlLayerList.vue.d.ts.map +1 -1
  44. package/dist/component/palette/MlPaletteManager.vue.d.ts +1 -1
  45. package/dist/component/palette/MlPaletteManager.vue.d.ts.map +1 -1
  46. package/dist/component/ribbon/MlRibbonCommands.vue.d.ts +30 -0
  47. package/dist/component/ribbon/MlRibbonCommands.vue.d.ts.map +1 -0
  48. package/dist/component/ribbon/MlRibbonHatchColorRow2.vue.d.ts +19 -0
  49. package/dist/component/ribbon/MlRibbonHatchColorRow2.vue.d.ts.map +1 -0
  50. package/dist/component/ribbon/MlRibbonHatchColorRow3.vue.d.ts +20 -0
  51. package/dist/component/ribbon/MlRibbonHatchColorRow3.vue.d.ts.map +1 -0
  52. package/dist/component/ribbon/MlRibbonHatchPatternButton.vue.d.ts +76 -0
  53. package/dist/component/ribbon/MlRibbonHatchPatternButton.vue.d.ts.map +1 -0
  54. package/dist/component/ribbon/MlRibbonLanguageSelector.vue.d.ts +34 -0
  55. package/dist/component/ribbon/MlRibbonLanguageSelector.vue.d.ts.map +1 -0
  56. package/dist/component/ribbon/MlRibbonPropertyColorDropdown.vue.d.ts +32 -0
  57. package/dist/component/ribbon/MlRibbonPropertyColorDropdown.vue.d.ts.map +1 -0
  58. package/dist/component/ribbon/MlRibbonPropertyField.vue.d.ts +45 -0
  59. package/dist/component/ribbon/MlRibbonPropertyField.vue.d.ts.map +1 -0
  60. package/dist/component/ribbon/MlRibbonPropertyLineTypeSelect.vue.d.ts +30 -0
  61. package/dist/component/ribbon/MlRibbonPropertyLineTypeSelect.vue.d.ts.map +1 -0
  62. package/dist/component/ribbon/MlRibbonPropertyLineWeightSelect.vue.d.ts +28 -0
  63. package/dist/component/ribbon/MlRibbonPropertyLineWeightSelect.vue.d.ts.map +1 -0
  64. package/dist/component/ribbon/index.d.ts +8 -0
  65. package/dist/component/ribbon/index.d.ts.map +1 -0
  66. package/dist/component/ribbon/useHatchContextualRibbon.d.ts +19 -0
  67. package/dist/component/ribbon/useHatchContextualRibbon.d.ts.map +1 -0
  68. package/dist/component/statusBar/MlFullScreenButton.vue.d.ts.map +1 -1
  69. package/dist/component/statusBar/MlStatusBar.vue.d.ts.map +1 -1
  70. package/dist/component/statusBar/MlThemeButton.vue.d.ts.map +1 -1
  71. package/dist/composable/index.d.ts +3 -0
  72. package/dist/composable/index.d.ts.map +1 -1
  73. package/dist/composable/markComponentConfigRaw.d.ts +2 -0
  74. package/dist/composable/markComponentConfigRaw.d.ts.map +1 -0
  75. package/dist/composable/useCommands.d.ts +3 -0
  76. package/dist/composable/useCommands.d.ts.map +1 -1
  77. package/dist/composable/useDocOpenMode.d.ts +16 -0
  78. package/dist/composable/useDocOpenMode.d.ts.map +1 -1
  79. package/dist/composable/useDocumentOpening.d.ts +9 -0
  80. package/dist/composable/useDocumentOpening.d.ts.map +1 -0
  81. package/dist/composable/useHover.d.ts +458 -34
  82. package/dist/composable/useHover.d.ts.map +1 -1
  83. package/dist/composable/useLayers.d.ts +21 -4
  84. package/dist/composable/useLayers.d.ts.map +1 -1
  85. package/dist/composable/useLocale.d.ts +8 -0
  86. package/dist/composable/useLocale.d.ts.map +1 -1
  87. package/dist/composable/useRibbonContextualTab.d.ts +19 -0
  88. package/dist/composable/useRibbonContextualTab.d.ts.map +1 -0
  89. package/dist/composable/useViewerRect.d.ts +72 -0
  90. package/dist/composable/useViewerRect.d.ts.map +1 -0
  91. package/dist/index.css +1 -1
  92. package/dist/index.js +16580 -8831
  93. package/dist/locale/en/command.d.ts +7 -1
  94. package/dist/locale/en/command.d.ts.map +1 -1
  95. package/dist/locale/en/entity.d.ts +48 -0
  96. package/dist/locale/en/entity.d.ts.map +1 -1
  97. package/dist/locale/en/main.d.ts +238 -0
  98. package/dist/locale/en/main.d.ts.map +1 -1
  99. package/dist/locale/zh/command.d.ts +7 -1
  100. package/dist/locale/zh/command.d.ts.map +1 -1
  101. package/dist/locale/zh/entity.d.ts +48 -0
  102. package/dist/locale/zh/entity.d.ts.map +1 -1
  103. package/dist/locale/zh/main.d.ts +238 -0
  104. package/dist/locale/zh/main.d.ts.map +1 -1
  105. package/dist/svg/arc/index.d.ts +11 -0
  106. package/dist/svg/arc/index.d.ts.map +1 -0
  107. package/dist/svg/circle/index.d.ts +7 -0
  108. package/dist/svg/circle/index.d.ts.map +1 -0
  109. package/dist/svg/ellipse/index.d.ts +3 -0
  110. package/dist/svg/ellipse/index.d.ts.map +1 -0
  111. package/dist/svg/hatch/index.d.ts +3 -0
  112. package/dist/svg/hatch/index.d.ts.map +1 -0
  113. package/dist/svg/index.d.ts +22 -6
  114. package/dist/svg/index.d.ts.map +1 -1
  115. package/dist/svg/layer/index.d.ts +14 -0
  116. package/dist/svg/layer/index.d.ts.map +1 -0
  117. package/dist/svg/measure/index.d.ts +7 -0
  118. package/dist/svg/measure/index.d.ts.map +1 -0
  119. package/dist/svg/spline/index.d.ts +2 -0
  120. package/dist/svg/spline/index.d.ts.map +1 -0
  121. package/package.json +9 -8
@@ -1,5 +1,5 @@
1
1
  import { AcApDocManager } from '@mlightcad/cad-simple-viewer';
2
- import { AcCmColor } from '@mlightcad/data-model';
2
+ import { AcCmColor, AcDbDatabase } from '@mlightcad/data-model';
3
3
  export interface LayerInfo {
4
4
  name: string;
5
5
  /**
@@ -8,7 +8,7 @@ export interface LayerInfo {
8
8
  color: string;
9
9
  cssColor: string;
10
10
  isLocked: boolean;
11
- isHidden: boolean;
11
+ isFrozen: boolean;
12
12
  isInUse: boolean;
13
13
  isOn: boolean;
14
14
  isPlottable: boolean;
@@ -16,11 +16,28 @@ export interface LayerInfo {
16
16
  linetype: string;
17
17
  lineWeight: number;
18
18
  }
19
+ export type LayerStateToggleKey = 'on' | 'frozen' | 'locked';
20
+ export interface LayerStateSnapshot {
21
+ clayer: string;
22
+ states: LayerInfo[];
23
+ }
19
24
  export declare function useLayers(editor: AcApDocManager): {
20
25
  layers: import('vue').Reactive<LayerInfo[]>;
21
26
  currentLayerName: import('vue').WritableComputedRef<string, string>;
22
27
  currentLayerInfo: import('vue').ComputedRef<LayerInfo | undefined>;
23
- setLayerColor: (layerName: string, color: AcCmColor) => void;
24
- setLayerLineWeight: (layerName: string, lineWeight: number) => void;
28
+ setCurrentLayer: (layerName: string) => boolean;
29
+ setLayerOn: (layerName: string, isOn: boolean) => boolean;
30
+ setLayerFrozen: (layerName: string, isFrozen: boolean) => boolean;
31
+ setLayerLocked: (layerName: string, isLocked: boolean) => boolean;
32
+ toggleLayerOn: (layerName: string) => boolean;
33
+ toggleLayerFrozen: (layerName: string) => boolean;
34
+ toggleLayerLocked: (layerName: string) => boolean;
35
+ toggleLayerState: (layerName: string, state: LayerStateToggleKey) => boolean;
36
+ isolateLayer: (layerName: string) => boolean;
37
+ setAllLayersOn: () => boolean;
38
+ captureLayerSnapshot: (db?: AcDbDatabase) => LayerStateSnapshot | null;
39
+ applyLayerSnapshot: (snapshot: LayerStateSnapshot, db?: AcDbDatabase) => boolean;
40
+ setLayerColor: (layerName: string, color: AcCmColor) => boolean;
41
+ setLayerLineWeight: (layerName: string, lineWeight: number) => boolean;
25
42
  };
26
43
  //# sourceMappingURL=useLayers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLayers.d.ts","sourceRoot":"","sources":["../../src/composable/useLayers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAgB,MAAM,uBAAuB,CAAA;AAG/D,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,cAAc;;;;+BAgFZ,MAAM,SAAS,SAAS;oCAOnB,MAAM,cAAc,MAAM;EAalE"}
1
+ {"version":3,"file":"useLayers.d.ts","sourceRoot":"","sources":["../../src/composable/useLayers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAEf,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,SAAS,EACT,YAAY,EAMb,MAAM,uBAAuB,CAAA;AAG9B,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,mBAAmB,GAAG,IAAI,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE5D,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,SAAS,EAAE,CAAA;CACpB;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,cAAc;;;;iCAgKV,MAAM;4BAcX,MAAM,QAAQ,OAAO;gCAoBjB,MAAM,YAAY,OAAO;gCAoBzB,MAAM,YAAY,OAAO;+BA5B1B,MAAM;mCAoBF,MAAM;mCAmBN,MAAM;kCAQP,MAAM,SAAS,mBAAmB;8BAatC,MAAM;;iDA0DpC,kBAAkB,GAAG,IAAI;mCAShB,kBAAkB;+BAjCI,MAAM,SAAS,SAAS;oCAWnB,MAAM,cAAc,MAAM;EAiFlE"}
@@ -1,5 +1,13 @@
1
1
  import { AcApLocale } from '@mlightcad/cad-simple-viewer';
2
2
  import { LocaleProp } from '../locale';
3
+ export declare const LOCALE_OPTIONS: ({
4
+ locale: "en";
5
+ label: string;
6
+ } | {
7
+ locale: "zh";
8
+ label: string;
9
+ })[];
10
+ export declare const isSupportedLocale: (value: string) => value is AcApLocale;
3
11
  export declare function useLocale(propLocale?: LocaleProp): {
4
12
  currentLocale: import('vue').Ref<AcApLocale, AcApLocale>;
5
13
  effectiveLocale: import('vue').ComputedRef<LocaleProp>;
@@ -1 +1 @@
1
- {"version":3,"file":"useLocale.d.ts","sourceRoot":"","sources":["../../src/composable/useLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAMnE,OAAO,EAAQ,UAAU,EAAE,MAAM,WAAW,CAAA;AAI5C,wBAAgB,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAuBjB,UAAU;;;EA4DzC"}
1
+ {"version":3,"file":"useLocale.d.ts","sourceRoot":"","sources":["../../src/composable/useLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAMnE,OAAO,EAAQ,UAAU,EAAE,MAAM,WAAW,CAAA;AAG5C,eAAO,MAAM,cAAc;;;;;;IAG1B,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,OAAO,MAAM,KAAG,KAAK,IAAI,UAE1D,CAAA;AAMD,wBAAgB,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAuBjB,UAAU;;;EA4DzC"}
@@ -0,0 +1,19 @@
1
+ import { AcEdCommandEventArgs } from '@mlightcad/cad-simple-viewer';
2
+ import { Ref } from 'vue';
3
+ export interface UseRibbonContextualTabOptions {
4
+ activeTabId: Ref<string>;
5
+ tabId: string;
6
+ commandGlobalNames: string | readonly string[];
7
+ fallbackTabId?: string;
8
+ }
9
+ export declare function useRibbonContextualTab({ activeTabId, tabId, commandGlobalNames, fallbackTabId }: UseRibbonContextualTabOptions): {
10
+ isVisible: Ref<boolean, boolean>;
11
+ isCommandActive: Ref<boolean, boolean>;
12
+ previousTabId: Ref<string, string>;
13
+ isContextCommand: (args: AcEdCommandEventArgs) => boolean;
14
+ showContextTab: () => void;
15
+ hideContextTab: () => void;
16
+ handleCommandWillStart: (args: AcEdCommandEventArgs) => void;
17
+ handleCommandEnded: (args: AcEdCommandEventArgs) => void;
18
+ };
19
+ //# sourceMappingURL=useRibbonContextualTab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRibbonContextualTab.d.ts","sourceRoot":"","sources":["../../src/composable/useRibbonContextualTab.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AACxE,OAAO,EAAE,KAAK,GAAG,EAAO,MAAM,KAAK,CAAA;AAEnC,MAAM,WAAW,6BAA6B;IAC5C,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,kBAAkB,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,wBAAgB,sBAAsB,CAAC,EACrC,WAAW,EACX,KAAK,EACL,kBAAkB,EAClB,aAAsB,EACvB,EAAE,6BAA6B;;;;6BAUE,oBAAoB;;;mCAoBd,oBAAoB;+BAMxB,oBAAoB;EAgBvD"}
@@ -0,0 +1,72 @@
1
+ import { Ref } from 'vue';
2
+ /**
3
+ * Viewport-relative rectangle of the current viewer host element.
4
+ *
5
+ * The values come from `getBoundingClientRect()`, so they are expressed in
6
+ * CSS pixels relative to the browser viewport rather than the document.
7
+ */
8
+ export interface ViewerRect {
9
+ top: number;
10
+ left: number;
11
+ width: number;
12
+ height: number;
13
+ }
14
+ /**
15
+ * Creates and provides a reactive viewport rectangle for a viewer host element.
16
+ *
17
+ * This function is meant to be called once near the root of a viewer subtree,
18
+ * typically from the main viewer component that owns the container element.
19
+ * It measures the target element with `getBoundingClientRect()`, keeps the
20
+ * result synchronized as layout changes, and exposes that state to descendants
21
+ * through Vue's dependency injection.
22
+ *
23
+ * Synchronization happens in three situations:
24
+ * 1. When the target element starts existing.
25
+ * 2. When the target element is resized.
26
+ * 3. When the browser window is resized.
27
+ *
28
+ * Descendants can then consume the provided state with {@link useViewerRect}
29
+ * without prop drilling through intermediate components.
30
+ *
31
+ * @param targetRef - Ref pointing at the viewer host element to observe.
32
+ * @returns A readonly reactive ref containing the latest viewer rectangle.
33
+ */
34
+ export declare function provideViewerRect(targetRef: Ref<HTMLElement | undefined>): Readonly<Ref<{
35
+ readonly top: number;
36
+ readonly left: number;
37
+ readonly width: number;
38
+ readonly height: number;
39
+ }, {
40
+ readonly top: number;
41
+ readonly left: number;
42
+ readonly width: number;
43
+ readonly height: number;
44
+ }>>;
45
+ /**
46
+ * Returns the reactive rectangle of the current viewer subtree.
47
+ *
48
+ * This function reads the rectangle previously registered by
49
+ * {@link provideViewerRect}. It is intended for floating panels, overlays, and
50
+ * other layout-aware descendants that need to align themselves to the current
51
+ * viewer host element.
52
+ *
53
+ * When no provider exists in the current component tree, the function returns
54
+ * a shared readonly zero rectangle as a safe fallback. That behavior keeps the
55
+ * API easy to consume in optional or test-only contexts without forcing every
56
+ * caller to guard for `undefined`.
57
+ *
58
+ * @returns A readonly reactive ref containing the current viewer rectangle, or
59
+ * a zero rectangle when no provider is available.
60
+ */
61
+ export declare function useViewerRect(): Readonly<Ref<{
62
+ readonly top: number;
63
+ readonly left: number;
64
+ readonly width: number;
65
+ readonly height: number;
66
+ }, {
67
+ readonly top: number;
68
+ readonly left: number;
69
+ readonly width: number;
70
+ readonly height: number;
71
+ }>>;
72
+ //# sourceMappingURL=useViewerRect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useViewerRect.d.ts","sourceRoot":"","sources":["../../src/composable/useViewerRect.ts"],"names":[],"mappings":"AACA,OAAO,EAML,KAAK,GAAG,EAGT,MAAM,KAAK,CAAA;AAEZ;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAcD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;kBAtClE,MAAM;mBACL,MAAM;oBACL,MAAM;qBACL,MAAM;;kBAHT,MAAM;mBACL,MAAM;oBACL,MAAM;qBACL,MAAM;IA+Ff;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa;kBApHtB,MAAM;mBACL,MAAM;oBACL,MAAM;qBACL,MAAM;;kBAHT,MAAM;mBACL,MAAM;oBACL,MAAM;qBACL,MAAM;IAmHf"}
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- @charset "UTF-8";body{margin:0;display:flex}body,html{height:100%}html.dark{color-scheme:dark;--el-color-primary: #409eff;--el-color-primary-light-3: rgb(51, 117, 185);--el-color-primary-light-5: rgb(42, 89, 138);--el-color-primary-light-7: rgb(33, 61, 91);--el-color-primary-light-8: rgb(29, 48, 67);--el-color-primary-light-9: rgb(24, 34, 43);--el-color-primary-dark-2: rgb(102, 177, 255);--el-color-success: #67c23a;--el-color-success-light-3: rgb(78, 142, 47);--el-color-success-light-5: rgb(62, 107, 39);--el-color-success-light-7: rgb(45, 72, 31);--el-color-success-light-8: rgb(37, 55, 28);--el-color-success-light-9: rgb(28, 37, 24);--el-color-success-dark-2: rgb(133, 206, 97);--el-color-warning: #e6a23c;--el-color-warning-light-3: rgb(167, 119, 48);--el-color-warning-light-5: rgb(125, 91, 40);--el-color-warning-light-7: rgb(83, 63, 32);--el-color-warning-light-8: rgb(62, 48, 28);--el-color-warning-light-9: rgb(41, 34, 24);--el-color-warning-dark-2: rgb(235, 181, 99);--el-color-danger: #f56c6c;--el-color-danger-light-3: rgb(178, 82, 82);--el-color-danger-light-5: rgb(133, 64, 64);--el-color-danger-light-7: rgb(88, 46, 46);--el-color-danger-light-8: rgb(65, 38, 38);--el-color-danger-light-9: rgb(42, 29, 29);--el-color-danger-dark-2: rgb(247, 137, 137);--el-color-error: #f56c6c;--el-color-error-light-3: rgb(178, 82, 82);--el-color-error-light-5: rgb(133, 64, 64);--el-color-error-light-7: rgb(88, 46, 46);--el-color-error-light-8: rgb(65, 38, 38);--el-color-error-light-9: rgb(42, 29, 29);--el-color-error-dark-2: rgb(247, 137, 137);--el-color-info: #909399;--el-color-info-light-3: rgb(107, 109, 113);--el-color-info-light-5: rgb(82, 84, 87);--el-color-info-light-7: rgb(57, 58, 60);--el-color-info-light-8: rgb(45, 45, 47);--el-color-info-light-9: rgb(32, 33, 33);--el-color-info-dark-2: rgb(166, 169, 173);--el-box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, .36), 0px 8px 20px rgba(0, 0, 0, .72);--el-box-shadow-light: 0px 0px 12px rgba(0, 0, 0, .72);--el-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, .72);--el-box-shadow-dark: 0px 16px 48px 16px rgba(0, 0, 0, .72), 0px 12px 32px #000000, 0px 8px 16px -8px #000000;--el-bg-color-page: #0a0a0a;--el-bg-color: #141414;--el-bg-color-overlay: #1d1e1f;--el-text-color-primary: #E5EAF3;--el-text-color-regular: #CFD3DC;--el-text-color-secondary: #A3A6AD;--el-text-color-placeholder: #8D9095;--el-text-color-disabled: #6C6E72;--el-border-color-darker: #636466;--el-border-color-dark: #58585B;--el-border-color: #4C4D4F;--el-border-color-light: #414243;--el-border-color-lighter: #363637;--el-border-color-extra-light: #2B2B2C;--el-fill-color-darker: #424243;--el-fill-color-dark: #39393A;--el-fill-color: #303030;--el-fill-color-light: #262727;--el-fill-color-lighter: #1D1D1D;--el-fill-color-extra-light: #191919;--el-fill-color-blank: #141414;--el-mask-color: rgba(0, 0, 0, .8);--el-mask-color-extra-light: rgba(0, 0, 0, .3)}html.dark .el-button{--el-button-disabled-text-color: rgba(255, 255, 255, .5)}html.dark .el-card{--el-card-bg-color: var(--el-bg-color-overlay);--el-fill-color-blank: var(--el-card-bg-color)}html.dark .el-empty{--el-empty-fill-color-0: var(--el-color-black);--el-empty-fill-color-1: #4b4b52;--el-empty-fill-color-2: #36383d;--el-empty-fill-color-3: #1e1e20;--el-empty-fill-color-4: #262629;--el-empty-fill-color-5: #202124;--el-empty-fill-color-6: #212224;--el-empty-fill-color-7: #1b1c1f;--el-empty-fill-color-8: #1c1d1f;--el-empty-fill-color-9: #18181a}:root{--ml-status-bar-height: 30px}body{font-family:Inter,system-ui,Avenir,Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}a{color:var(--el-color-primary)}code{border-radius:2px;padding:2px 4px;background-color:var(--el-color-primary-light-9);color:var(--elcolor-primary)}.ml-aci-picker[data-v-1cb688ad]{font-size:12px;font-family:Arial}.ml-aci-palette[data-v-1cb688ad]{margin-bottom:6px}.ml-aci-palette-large[data-v-1cb688ad]{display:grid;grid-template-columns:repeat(24,1fr);gap:1px}.ml-aci-palette-gray[data-v-1cb688ad]{display:flex;align-items:center;justify-content:flex-start;gap:4px}.ml-aci-palette-small[data-v-1cb688ad]{display:grid;grid-template-columns:repeat(9,1fr);gap:1px}.ml-aci-small-row[data-v-1cb688ad]{display:flex;align-items:center;justify-content:space-between;gap:8px}.ml-aci-small-actions[data-v-1cb688ad]{display:flex;flex-direction:row;gap:4px;margin-left:auto}.ml-aci-small-actions button[data-v-1cb688ad]{font-size:11px;padding:2px 6px}.ml-aci-color-cell[data-v-1cb688ad]{width:10px;height:10px;border:1px solid #999;cursor:pointer}.ml-aci-color-cell[data-v-1cb688ad]:hover{outline:1px solid #00a8ff}.ml-aci-info-row[data-v-1cb688ad]{display:flex;align-items:center;justify-content:space-between;margin:4px 0}.ml-aci-info-left[data-v-1cb688ad]{text-align:left}.ml-aci-info-right[data-v-1cb688ad]{text-align:right}.ml-aci-bottom-row[data-v-1cb688ad]{display:flex;align-items:stretch;justify-content:flex-start;gap:8px;margin-top:4px}.ml-aci-bottom-left[data-v-1cb688ad]{flex:1;display:flex;flex-direction:column;gap:2px}.ml-aci-input-row[data-v-1cb688ad]{margin-top:4px;display:flex;align-items:center;gap:6px}.ml-aci-preview-box[data-v-1cb688ad]{width:32px;min-width:32px;margin-left:auto;align-self:stretch;border:1px solid #666}.ml-color-picker-tabs-panel-body[data-v-80b8ea66]{display:flex;flex-direction:column;margin-top:12px}.ml-color-picker-dropdown[data-v-b8d8f88e]{min-width:40px;width:100%;height:100%;display:flex;align-items:center;justify-content:center;line-height:0}.ml-color-picker-dropdown-popper[data-v-b8d8f88e]{padding:0}.ml-color-picker-dropdown-trigger[data-v-b8d8f88e]{width:100%;height:100%;border:0;outline:0;background:transparent;padding:0;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;line-height:0;cursor:pointer}.ml-color-picker-dropdown-trigger[data-v-b8d8f88e]:disabled{cursor:not-allowed;opacity:.6}.ml-color-picker-dropdown-indicator[data-v-b8d8f88e]{width:14px;height:14px;border-radius:50%;border:1px solid #666;display:block}.ml-base-dialog[data-v-23bef8c6]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;display:flex;align-items:center;justify-content:center}.ml-base-dialog-overlay[data-v-23bef8c6]{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#0006}.ml-base-dialog-container[data-v-23bef8c6]{position:relative;z-index:1;--ml-dialog-font-size: 12px;--el-font-size-base: 12px;background:var(--el-bg-color);border:1px solid var(--el-border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.ml-base-dialog-header[data-v-23bef8c6]{display:flex;align-items:center;justify-content:space-between;padding:2px 6px;height:24px;border-bottom:1px solid var(--el-border-color);background:var(--el-fill-color-light);position:relative}.ml-base-dialog-title[data-v-23bef8c6]{display:flex;align-items:center;gap:8px;font-weight:600;font-size:var(--ml-dialog-font-size);color:var(--el-text-color-primary)}.ml-base-dialog-icon-wrapper[data-v-23bef8c6]{display:flex;align-items:center;justify-content:center;width:16px;height:16px}.ml-base-dialog-icon[data-v-23bef8c6]{width:20px;height:20px;color:var(--el-color-primary)}.ml-base-dialog-actions[data-v-23bef8c6]{display:flex;align-items:center}.ml-base-dialog-close[data-v-23bef8c6]{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:28px;height:28px;display:flex;align-items:center;justify-content:center}.ml-base-dialog-body[data-v-23bef8c6]{padding:16px;overflow-y:auto;flex:1;font-size:var(--ml-dialog-font-size)}.ml-base-dialog-footer[data-v-23bef8c6]{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--el-border-color);background:var(--el-bg-color);padding:4px 8px}.ml-base-dialog-footer[data-v-23bef8c6] .el-button{min-width:72px}.ml-base-draw-style-toolbar[data-v-c11abf2e]{display:inline-flex}.ml-base-draw-style-color-indicator[data-v-c11abf2e]{width:14px;height:14px;border-radius:50%;border:1px solid #666;display:inline-block}.ml-base-input-number[data-v-a79684a5]{display:flex;align-items:center;gap:.5rem}.ml-base-input-number__input[data-v-a79684a5]{flex:1}.ml-base-input-number__select[data-v-a79684a5]{width:80px}.ml-quick-select-result[data-v-e60ceedd]{margin-top:6px;color:var(--el-text-color-secondary)}.ml-color-dropdown-color-item[data-v-694c38cc]{display:flex;align-items:center;gap:6px}.ml-color-dropdown-color-preview[data-v-694c38cc]{width:14px;height:14px;border:1px solid #aaa}.ml-color-dropdown-custom-icon[data-v-694c38cc]{font-size:16px}.ml-color-dropdown-color-name[data-v-694c38cc]{font-size:13px}.ml-lineweight-btn[data-v-43c8202f]{display:flex;align-items:center;gap:6px}.ml-lineweight-caret[data-v-43c8202f]{font-size:12px}.ml-lineweight-menu[data-v-43c8202f]{padding:4px 0;max-height:260px;overflow-y:auto}.ml-lineweight-item[data-v-43c8202f]{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:160px}.ml-lineweight-text[data-v-43c8202f],.ml-lineweight-label[data-v-43c8202f]{font-size:13px}.ml-lineweight-preview[data-v-43c8202f]{width:40px;background-color:currentColor;border-radius:2px}.ml-lineweight-preview--btn[data-v-43c8202f]{width:32px}.ml-toggle-button[data-v-7cc689f0]{border:none;padding:0;cursor:pointer;width:var(--v161493fe);height:var(--v161493fe);color:var(--el-text-color-regular)}[data-v-1dc1836d] .el-table__placeholder{width:0px}[data-v-1dc1836d] .el-table .cell{display:flex}[data-v-1dc1836d] .ml-cell-value>*{width:100%}.ml-entity-properties[data-v-1dc1836d]{padding:5px}.ml-entity-properties-table[data-v-1dc1836d]{width:100%}.ml-cell-container[data-v-1dc1836d]{display:flex;align-items:center;line-height:1}.ml-cell-label[data-v-1dc1836d]{font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml-group-row[data-v-1dc1836d]{font-weight:600}.ml-cell-value[data-v-1dc1836d]{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml-readonly-value[data-v-1dc1836d]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml-no-entity-selected[data-v-1dc1836d]{display:flex;justify-content:center;align-items:center;text-align:center;font-style:italic;font-size:.875rem;padding:.5rem}.ml-layer-list{width:100%;font-size:small;min-width:100%}.ml-layer-list .el-table__cell{padding-top:2px;padding-bottom:2px}.ml-layer-list .el-table__header .el-table__cell{padding-top:4px;padding-bottom:4px}.ml-layer-list .el-table__header,.ml-layer-list .el-table__body{border-bottom:1px solid var(--el-border-color)}.ml-layer-list-cell,.ml-layer-list-header-toggle{display:flex;align-items:center;justify-content:center}.ml-layer-list-color{width:20px;height:20px}.ml-layer-manager[data-v-c34cbb81]{left:2px;top:55px;width:400px;height:500px}.ml-layer-list-wrapper[data-v-c34cbb81]{overflow:auto;width:100%;display:flex;align-items:flex-start;justify-content:flex-start}.ml-entity-info[data-v-6c80b27c]{position:fixed;left:var(--v92de4484);top:var(--v46cd1e84);width:180px;margin:0;transition:none!important}.ml-entity-info-title[data-v-6c80b27c]{font-weight:700}.ml-entity-info-text[data-v-6c80b27c]{margin-bottom:6px;margin-top:6px}.ml-language-selector[data-v-5219aeaa]{position:fixed;right:40px;top:20px;z-index:1000}.ml-layer-draw-style-layer-button[data-v-1a94c502]{min-width:100px;display:flex;align-items:center}.ml-layer-draw-style-layer-name[data-v-1a94c502]{flex:1;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ml-dropdown-caret[data-v-1a94c502]{margin-left:8px;font-size:12px;opacity:.7}.ml-layer-draw-style-layer-dropdown[data-v-1a94c502]{max-height:260px;overflow-y:auto}.ml-layer-draw-style-layer-item-name[data-v-1a94c502]{vertical-align:middle}.el-dropdown-menu__item.is-active[data-v-1a94c502]{font-weight:600;background-color:var(--el-fill-color-light)}.ml-main-menu-container[data-v-8c8f4e2c]{position:fixed;left:40px;top:20px;z-index:1000}.ml-main-menu-icon[data-v-8c8f4e2c],.ml-main-menu-icon[data-v-8c8f4e2c]:hover{outline:none;border:none}.ml-vertical-toolbar-container{position:fixed;right:30px;top:50%;transform:translateY(-50%)}.ml-notification-item[data-v-8ce88f8a]{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid var(--el-border-color-lighter);transition:background-color .2s ease}.ml-notification-item[data-v-8ce88f8a]:hover{background-color:var(--el-fill-color-light)}.ml-notification-item[data-v-8ce88f8a]:last-child{border-bottom:none}.ml-notification-item-icon[data-v-8ce88f8a]{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-top:2px}.ml-notification-item--info .ml-notification-item-icon[data-v-8ce88f8a]{color:var(--el-color-info)}.ml-notification-item--warning .ml-notification-item-icon[data-v-8ce88f8a]{color:var(--el-color-warning)}.ml-notification-item--error .ml-notification-item-icon[data-v-8ce88f8a]{color:var(--el-color-danger)}.ml-notification-item--success .ml-notification-item-icon[data-v-8ce88f8a]{color:var(--el-color-success)}.ml-notification-item-content[data-v-8ce88f8a]{flex:1;min-width:0}.ml-notification-item-header[data-v-8ce88f8a]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.ml-notification-item-title[data-v-8ce88f8a]{margin:0;font-size:14px;font-weight:600;color:var(--el-text-color-primary);line-height:1.4;flex:1}.ml-notification-item-actions[data-v-8ce88f8a]{display:flex;align-items:center;gap:8px;flex-shrink:0}.ml-notification-item-message[data-v-8ce88f8a]{margin:0 0 8px;font-size:13px;color:var(--el-text-color-regular);line-height:1.4;word-wrap:break-word}.ml-notification-item-footer[data-v-8ce88f8a]{display:flex;align-items:center;justify-content:flex-end}.ml-notification-item-time[data-v-8ce88f8a]{font-size:12px;color:var(--el-text-color-secondary)}.dark .ml-notification-item[data-v-8ce88f8a]:hover{background-color:var(--el-fill-color-darker)}.ml-notification-center[data-v-cd4c651f]{position:fixed;bottom:calc(var(--ml-status-bar-height) + 20px);right:0;width:400px;max-width:100vw;box-sizing:border-box;max-height:500px;background:var(--el-bg-color);border:1px solid var(--el-border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:2000;display:flex;flex-direction:column;overflow:hidden}.ml-notification-center-header[data-v-cd4c651f]{display:flex;align-items:center;justify-content:space-between;padding:5px;height:30px;border-bottom:1px solid var(--el-border-color);background:var(--el-fill-color-light);position:relative}.ml-notification-center-title[data-v-cd4c651f]{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--el-text-color-primary)}.ml-notification-center-icon[data-v-cd4c651f]{color:var(--el-color-primary)}.ml-notification-center-actions[data-v-cd4c651f]{display:flex;align-items:center;gap:8px;margin-right:36px}.ml-notification-center-close[data-v-cd4c651f]{position:absolute;top:50%;right:8px;transform:translateY(-50%);padding:4px;min-width:auto;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.ml-notification-center-clear[data-v-cd4c651f]{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center}.ml-notification-center-clear[data-v-cd4c651f] .el-icon{font-size:16px}.ml-notification-center-content[data-v-cd4c651f]{flex:1;overflow-y:auto;max-height:400px}.ml-notification-center-empty[data-v-cd4c651f]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--el-text-color-secondary)}.ml-notification-center-empty-icon[data-v-cd4c651f]{font-size:48px;margin-bottom:16px;opacity:.5}.ml-notification-center-empty p[data-v-cd4c651f]{margin:0;font-size:14px}.ml-notification-list[data-v-cd4c651f]{padding:8px 0}.dark .ml-notification-center[data-v-cd4c651f]{background:var(--el-bg-color-page);border-color:var(--el-border-color)}.dark .ml-notification-center-header[data-v-cd4c651f]{background:var(--el-fill-color-darker)}.ml-notification-button[data-v-46fa6383]{border:none;padding:0;cursor:pointer;width:30px;position:relative}.ml-notification-badge[data-v-46fa6383]{position:absolute;top:-2px;right:-2px}.ml-notification-badge[data-v-46fa6383] .el-badge__content{font-size:10px;min-width:16px;height:16px;line-height:16px;padding:0 4px}.ml-osnap-setting-button[data-v-2c1a1e8b],.ml-point-style-button[data-v-fa98355b]{border:none;padding:0;cursor:pointer;width:30px}.ml-progress[data-v-6b45cf71]{width:100px}.ml-setting-button[data-v-1e137e77],.ml-warning-button[data-v-53fa8f43]{border:none;padding:0;cursor:pointer;width:30px}.ml-status-bar[data-v-f541c675]{box-sizing:border-box}.ml-status-bar-left-button-group[data-v-f541c675]{border:none;box-sizing:border-box;height:var(--ml-status-bar-height)}.ml-status-bar-layout-button[data-v-f541c675]{box-sizing:border-box}.ml-status-bar-right-button-group[data-v-f541c675]{border:none;padding:0;height:var(--ml-status-bar-height)}.ml-status-bar-current-pos[data-v-f541c675]{border:none;height:100%}.ml-cad-container{position:absolute;top:0;left:0;height:calc(100vh - var(--ml-status-bar-height));width:100%;display:block;outline:none;z-index:1;pointer-events:auto}.ml-cad-viewer-container{position:relative;width:100vw;z-index:2;pointer-events:auto}.ml-file-name{position:fixed;top:20px;left:50%;color:var(--el-text-color-regular);transform:translate(-50%);text-align:center;pointer-events:none;z-index:3}.ml-rev-tool-bar{position:absolute;top:0;left:50%;transform:translate(-50%);margin-top:20px;z-index:2}
1
+ @charset "UTF-8";body{margin:0;display:flex}body,html{height:100%}html.dark{color-scheme:dark;--el-color-primary: #409eff;--el-color-primary-light-3: rgb(51, 117, 185);--el-color-primary-light-5: rgb(42, 89, 138);--el-color-primary-light-7: rgb(33, 61, 91);--el-color-primary-light-8: rgb(29, 48, 67);--el-color-primary-light-9: rgb(24, 34, 43);--el-color-primary-dark-2: rgb(102, 177, 255);--el-color-success: #67c23a;--el-color-success-light-3: rgb(78, 142, 47);--el-color-success-light-5: rgb(62, 107, 39);--el-color-success-light-7: rgb(45, 72, 31);--el-color-success-light-8: rgb(37, 55, 28);--el-color-success-light-9: rgb(28, 37, 24);--el-color-success-dark-2: rgb(133, 206, 97);--el-color-warning: #e6a23c;--el-color-warning-light-3: rgb(167, 119, 48);--el-color-warning-light-5: rgb(125, 91, 40);--el-color-warning-light-7: rgb(83, 63, 32);--el-color-warning-light-8: rgb(62, 48, 28);--el-color-warning-light-9: rgb(41, 34, 24);--el-color-warning-dark-2: rgb(235, 181, 99);--el-color-danger: #f56c6c;--el-color-danger-light-3: rgb(178, 82, 82);--el-color-danger-light-5: rgb(133, 64, 64);--el-color-danger-light-7: rgb(88, 46, 46);--el-color-danger-light-8: rgb(65, 38, 38);--el-color-danger-light-9: rgb(42, 29, 29);--el-color-danger-dark-2: rgb(247, 137, 137);--el-color-error: #f56c6c;--el-color-error-light-3: rgb(178, 82, 82);--el-color-error-light-5: rgb(133, 64, 64);--el-color-error-light-7: rgb(88, 46, 46);--el-color-error-light-8: rgb(65, 38, 38);--el-color-error-light-9: rgb(42, 29, 29);--el-color-error-dark-2: rgb(247, 137, 137);--el-color-info: #909399;--el-color-info-light-3: rgb(107, 109, 113);--el-color-info-light-5: rgb(82, 84, 87);--el-color-info-light-7: rgb(57, 58, 60);--el-color-info-light-8: rgb(45, 45, 47);--el-color-info-light-9: rgb(32, 33, 33);--el-color-info-dark-2: rgb(166, 169, 173);--el-box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, .36), 0px 8px 20px rgba(0, 0, 0, .72);--el-box-shadow-light: 0px 0px 12px rgba(0, 0, 0, .72);--el-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, .72);--el-box-shadow-dark: 0px 16px 48px 16px rgba(0, 0, 0, .72), 0px 12px 32px #000000, 0px 8px 16px -8px #000000;--el-bg-color-page: #0a0a0a;--el-bg-color: #141414;--el-bg-color-overlay: #1d1e1f;--el-text-color-primary: #E5EAF3;--el-text-color-regular: #CFD3DC;--el-text-color-secondary: #A3A6AD;--el-text-color-placeholder: #8D9095;--el-text-color-disabled: #6C6E72;--el-border-color-darker: #636466;--el-border-color-dark: #58585B;--el-border-color: #4C4D4F;--el-border-color-light: #414243;--el-border-color-lighter: #363637;--el-border-color-extra-light: #2B2B2C;--el-fill-color-darker: #424243;--el-fill-color-dark: #39393A;--el-fill-color: #303030;--el-fill-color-light: #262727;--el-fill-color-lighter: #1D1D1D;--el-fill-color-extra-light: #191919;--el-fill-color-blank: #141414;--el-mask-color: rgba(0, 0, 0, .8);--el-mask-color-extra-light: rgba(0, 0, 0, .3)}html.dark .el-button{--el-button-disabled-text-color: rgba(255, 255, 255, .5)}html.dark .el-card{--el-card-bg-color: var(--el-bg-color-overlay);--el-fill-color-blank: var(--el-card-bg-color)}html.dark .el-empty{--el-empty-fill-color-0: var(--el-color-black);--el-empty-fill-color-1: #4b4b52;--el-empty-fill-color-2: #36383d;--el-empty-fill-color-3: #1e1e20;--el-empty-fill-color-4: #262629;--el-empty-fill-color-5: #202124;--el-empty-fill-color-6: #212224;--el-empty-fill-color-7: #1b1c1f;--el-empty-fill-color-8: #1c1d1f;--el-empty-fill-color-9: #18181a}:root{--ml-status-bar-height: 30px}body{font-family:Inter,system-ui,Avenir,Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}a{color:var(--el-color-primary)}code{border-radius:2px;padding:2px 4px;background-color:var(--el-color-primary-light-9);color:var(--elcolor-primary)}.ml-aci-picker[data-v-1cb688ad]{font-size:12px;font-family:Arial}.ml-aci-palette[data-v-1cb688ad]{margin-bottom:6px}.ml-aci-palette-large[data-v-1cb688ad]{display:grid;grid-template-columns:repeat(24,1fr);gap:1px}.ml-aci-palette-gray[data-v-1cb688ad]{display:flex;align-items:center;justify-content:flex-start;gap:4px}.ml-aci-palette-small[data-v-1cb688ad]{display:grid;grid-template-columns:repeat(9,1fr);gap:1px}.ml-aci-small-row[data-v-1cb688ad]{display:flex;align-items:center;justify-content:space-between;gap:8px}.ml-aci-small-actions[data-v-1cb688ad]{display:flex;flex-direction:row;gap:4px;margin-left:auto}.ml-aci-small-actions button[data-v-1cb688ad]{font-size:11px;padding:2px 6px}.ml-aci-color-cell[data-v-1cb688ad]{width:10px;height:10px;border:1px solid #999;cursor:pointer}.ml-aci-color-cell[data-v-1cb688ad]:hover{outline:1px solid #00a8ff}.ml-aci-info-row[data-v-1cb688ad]{display:flex;align-items:center;justify-content:space-between;margin:4px 0}.ml-aci-info-left[data-v-1cb688ad]{text-align:left}.ml-aci-info-right[data-v-1cb688ad]{text-align:right}.ml-aci-bottom-row[data-v-1cb688ad]{display:flex;align-items:stretch;justify-content:flex-start;gap:8px;margin-top:4px}.ml-aci-bottom-left[data-v-1cb688ad]{flex:1;display:flex;flex-direction:column;gap:2px}.ml-aci-input-row[data-v-1cb688ad]{margin-top:4px;display:flex;align-items:center;gap:6px}.ml-aci-preview-box[data-v-1cb688ad]{width:32px;min-width:32px;margin-left:auto;align-self:stretch;border:1px solid #666}.ml-color-picker-tabs-panel-body[data-v-80b8ea66]{display:flex;flex-direction:column;margin-top:12px}.ml-color-picker-dropdown[data-v-b8d8f88e]{min-width:40px;width:100%;height:100%;display:flex;align-items:center;justify-content:center;line-height:0}.ml-color-picker-dropdown-popper[data-v-b8d8f88e]{padding:0}.ml-color-picker-dropdown-trigger[data-v-b8d8f88e]{width:100%;height:100%;border:0;outline:0;background:transparent;padding:0;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;line-height:0;cursor:pointer}.ml-color-picker-dropdown-trigger[data-v-b8d8f88e]:disabled{cursor:not-allowed;opacity:.6}.ml-color-picker-dropdown-indicator[data-v-b8d8f88e]{width:14px;height:14px;border-radius:50%;border:1px solid #666;display:block}.ml-base-dialog[data-v-bc39550d]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;display:flex;align-items:center;justify-content:center}.ml-base-dialog-overlay[data-v-bc39550d]{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#0006}.ml-base-dialog-container[data-v-bc39550d]{position:relative;z-index:1;--ml-dialog-font-size: 12px;--el-font-size-base: 12px;background:var(--el-bg-color);border:1px solid var(--el-border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.ml-base-dialog-header[data-v-bc39550d]{display:flex;align-items:center;justify-content:space-between;padding:2px 6px;height:24px;border-bottom:1px solid var(--el-border-color);background:var(--el-fill-color-light);position:relative}.ml-base-dialog-title[data-v-bc39550d]{display:flex;align-items:center;flex:1 1 auto;gap:8px;font-weight:600;font-size:var(--ml-dialog-font-size);color:var(--el-text-color-primary);min-width:0}.ml-base-dialog-icon-wrapper[data-v-bc39550d]{display:flex;align-items:center;justify-content:center;width:16px;height:16px}.ml-base-dialog-icon[data-v-bc39550d]{width:20px;height:20px;color:var(--el-color-primary)}.ml-base-dialog-actions[data-v-bc39550d]{display:flex;align-items:center}.ml-base-dialog-close[data-v-bc39550d]{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:28px;height:28px;display:flex;align-items:center;justify-content:center}.ml-base-dialog-body[data-v-bc39550d]{padding:16px;overflow-y:auto;flex:1;font-size:var(--ml-dialog-font-size)}.ml-base-dialog-footer[data-v-bc39550d]{display:flex;align-items:center;justify-content:flex-end;gap:8px;border-top:1px solid var(--el-border-color);background:var(--el-bg-color);padding:4px 8px}.ml-base-dialog-footer-actions[data-v-bc39550d]{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto}.ml-base-dialog-footer-actions[data-v-bc39550d] .el-button{min-width:72px;display:inline-flex;justify-content:center!important;text-align:center!important;border:var(--el-border)!important;border-color:var( --el-button-border-color, var(--el-border-color) )!important;background-color:var( --el-button-bg-color, var(--el-fill-color-blank) )!important}.ml-base-dialog-footer-actions[data-v-bc39550d] .el-button>span{width:100%;justify-content:center!important;text-align:center!important}.ml-base-draw-style-toolbar[data-v-75c93194]{--ml-base-draw-style-height: var(--ml-rb-compact-height, 28px);--ml-base-draw-style-lineweight-width: 188px;display:inline-flex;align-items:stretch}.ml-base-draw-style-toolbar__color-picker[data-v-75c93194]{flex:0 0 auto;width:var(--ml-base-draw-style-height);min-width:var(--ml-base-draw-style-height);height:var(--ml-base-draw-style-height)}.ml-base-draw-style-toolbar__color-button[data-v-75c93194]{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0;border:1px solid var(--el-border-color);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank);color:var(--el-text-color-regular);cursor:pointer;box-sizing:border-box;transition:border-color var(--el-transition-duration),box-shadow var(--el-transition-duration)}.ml-base-draw-style-toolbar__color-button[data-v-75c93194]:hover{border-color:var(--el-border-color-hover)}.ml-base-draw-style-toolbar__color-button[data-v-75c93194]:focus-visible{outline:none;border-color:var(--el-color-primary);box-shadow:0 0 0 1px var(--el-color-primary) inset}.ml-base-draw-style-toolbar__color-button[data-v-75c93194]:disabled{cursor:not-allowed;color:var(--el-disabled-text-color);background:var(--el-fill-color-light);border-color:var(--el-border-color-light)}.ml-base-draw-style-toolbar[data-v-75c93194] .ml-base-draw-style-toolbar__lineweight{flex:0 0 var(--ml-base-draw-style-lineweight-width);width:var(--ml-base-draw-style-lineweight-width);min-width:var(--ml-base-draw-style-lineweight-width);height:var(--ml-base-draw-style-height)}.ml-base-draw-style-color-indicator[data-v-75c93194]{width:14px;height:14px;border-radius:50%;border:1px solid #666;display:inline-block}.ml-base-input-number[data-v-a79684a5]{display:flex;align-items:center;gap:.5rem}.ml-base-input-number__input[data-v-a79684a5]{flex:1}.ml-base-input-number__select[data-v-a79684a5]{width:80px}.ml-quick-select-result[data-v-e60ceedd]{margin-top:6px;color:var(--el-text-color-secondary)}.ml-color-dropdown[data-v-bd131fd6]{display:flex;width:100%}.ml-color-dropdown-select[data-v-bd131fd6]{width:100%;min-width:100%}.ml-color-dropdown[data-v-bd131fd6] .el-select__wrapper,.ml-color-dropdown[data-v-bd131fd6] .el-select__selection,.ml-color-dropdown[data-v-bd131fd6] .el-select__selected-item,.ml-color-dropdown[data-v-bd131fd6] .el-select__placeholder{width:100%;min-width:0}.ml-color-dropdown-color-item[data-v-bd131fd6]{display:flex;align-items:center;gap:6px;min-width:0}.ml-color-dropdown-color-item--selected[data-v-bd131fd6]{width:100%}.ml-color-dropdown-leading-icon[data-v-bd131fd6]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px;color:var(--el-text-color-secondary)}.ml-color-dropdown-color-preview[data-v-bd131fd6]{width:14px;height:14px;border:1px solid #aaa;border-radius:2px;flex:0 0 14px}.ml-color-dropdown-custom-icon[data-v-bd131fd6]{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1px dashed var(--el-border-color);border-radius:2px;font-size:12px;line-height:1}.ml-color-dropdown-custom-icon[data-v-bd131fd6]:before{content:"+"}.ml-color-dropdown-color-name[data-v-bd131fd6]{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ml-color-dropdown-popper .el-select-dropdown__wrap{max-height:none;overflow-y:visible}.ml-color-dropdown-popper .el-scrollbar__bar.is-vertical{display:none}.ml-hatch-pattern-panel[data-v-da325fe7]{width:320px;max-height:360px;overflow-y:auto;box-sizing:border-box;padding:10px;border:1px solid var(--ml-rb-border, var(--el-border-color));border-radius:2px;background:var(--ml-rb-panel-bg, var(--el-fill-color-lighter));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ml-hatch-pattern-panel__item[data-v-da325fe7]{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:98px;padding:8px 4px;border:1px solid transparent;background:transparent;color:var(--ml-rb-tab-text, var(--el-text-color-primary));cursor:pointer}.ml-hatch-pattern-panel__item[data-v-da325fe7]:hover{background:var(--ml-rb-hover-bg, var(--el-fill-color))}.ml-hatch-pattern-panel__item.is-active[data-v-da325fe7]{border-color:var(--ml-rb-active-border, var(--el-border-color-darker));background:var(--ml-rb-active-bg, var(--el-fill-color-dark))}.ml-hatch-pattern-panel__item[data-v-da325fe7]:focus-visible{outline:1px solid var(--ml-rb-active, var(--el-color-primary));outline-offset:1px}.ml-hatch-pattern-panel__item[data-v-da325fe7]:disabled{opacity:.55;cursor:not-allowed}.ml-hatch-pattern-panel__swatch[data-v-da325fe7]{width:52px;height:52px;box-sizing:border-box;border:1px solid var(--ml-rb-border-strong, var(--el-border-color-dark));background-color:#f6f8fb}.ml-hatch-pattern-panel__label[data-v-da325fe7]{font-size:11px;line-height:1.2;text-align:center;letter-spacing:.2px}@media (max-width: 768px){.ml-hatch-pattern-panel[data-v-da325fe7]{width:286px;grid-template-columns:repeat(2,minmax(0,1fr))}}.ml-lineweight-select[data-v-9c366484]{--ml-lineweight-caret-size: var(--el-font-size-base);display:flex;flex:1 1 auto;align-self:stretch;width:100%;height:100%;min-width:0}.ml-lineweight-select__dropdown[data-v-9c366484],.ml-lineweight-select__dropdown[data-v-9c366484] .el-tooltip__trigger{display:flex;flex:1 1 auto;align-self:stretch;width:100%;height:100%;min-width:0}.ml-lineweight-select__trigger[data-v-9c366484]{display:flex;flex:1 1 auto;align-items:center;justify-content:flex-start;width:100%;height:100%;min-height:var(--ml-rb-compact-height, 28px);min-width:0;box-sizing:border-box;padding:0 6px;border:1px solid var(--el-border-color);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank);color:var(--el-text-color-regular);font-size:13px;line-height:1;cursor:pointer;transition:border-color var(--el-transition-duration),box-shadow var(--el-transition-duration)}.ml-lineweight-select__trigger[data-v-9c366484]:hover{border-color:var(--el-border-color-hover)}.ml-lineweight-select__trigger[data-v-9c366484]:focus-visible{outline:none;border-color:var(--el-color-primary);box-shadow:0 0 0 1px var(--el-color-primary) inset}.ml-lineweight-select__trigger.is-disabled[data-v-9c366484]{cursor:not-allowed;color:var(--el-disabled-text-color);background:var(--el-fill-color-light);border-color:var(--el-border-color-light)}.ml-lineweight-select__value[data-v-9c366484]{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;flex:1 1 auto}.ml-lineweight-caret[data-v-9c366484]{flex:0 0 auto;font-size:var(--ml-lineweight-caret-size);color:var(--el-text-color-placeholder)}.ml-lineweight-menu[data-v-9c366484]{padding:4px 0;max-height:260px;overflow-y:auto}.ml-lineweight-label[data-v-9c366484]{font-size:13px;min-width:0}.ml-lineweight-label[data-v-9c366484]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1 1 auto}.ml-lineweight-preview[data-v-9c366484]{position:relative;display:inline-flex;width:52px;height:14px;flex:0 0 52px}.ml-lineweight-preview[data-v-9c366484]:before{content:"";position:absolute;left:0;right:0;top:50%;height:var(--ml-lineweight-height, 2px);transform:translateY(-50%);background-color:currentColor;border-radius:999px}.ml-lineweight-popper .ml-lineweight-menu{padding:4px 0;max-height:260px;overflow-y:auto}.ml-lineweight-popper .ml-lineweight-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:160px}.ml-lineweight-popper .ml-lineweight-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:13px}.ml-layer-select[data-v-b4523697]{display:flex;width:100%;min-width:0}.ml-layer-select__control[data-v-b4523697],.ml-layer-select[data-v-b4523697] .el-select__wrapper,.ml-layer-select[data-v-b4523697] .el-select__selection,.ml-layer-select[data-v-b4523697] .el-select__selected-item,.ml-layer-select[data-v-b4523697] .el-select__placeholder{width:100%;min-width:0}.ml-layer-select-trigger[data-v-b4523697]{display:inline-flex;align-items:center;gap:8px;width:100%;min-width:0}.ml-layer-select-trigger-text[data-v-b4523697]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ml-layer-select-option[data-v-b4523697]{display:grid;grid-template-columns:16px 16px 16px 84px 12px 1fr;align-items:center;column-gap:8px;width:100%;min-width:0}.ml-layer-select-text[data-v-b4523697]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ml-layer-select-state-icon[data-v-b4523697]{display:inline-flex;width:16px;height:16px;color:var(--el-text-color-disabled)}.ml-layer-select-state-button[data-v-b4523697]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;background:transparent;cursor:pointer}.ml-layer-select-state-icon.is-on[data-v-b4523697]{color:var(--el-color-primary)}.ml-layer-select-state-icon.is-frozen[data-v-b4523697],.ml-layer-select-state-icon.is-locked[data-v-b4523697]{color:var(--el-text-color-regular)}.ml-layer-select-state-icon[data-v-b4523697] svg{width:16px;height:16px}.ml-layer-select-state-icon[data-v-b4523697] path,.ml-layer-select-state-icon[data-v-b4523697] rect,.ml-layer-select-state-icon[data-v-b4523697] polygon,.ml-layer-select-state-icon[data-v-b4523697] ellipse{fill:currentColor;stroke:currentColor}.ml-layer-select-line-preview[data-v-b4523697]{height:3px;border-radius:2px}.ml-layer-select-color[data-v-b4523697]{display:inline-flex;width:12px;height:12px;border-radius:2px;border:1px solid var(--el-border-color);box-sizing:border-box}.ml-layer-select-empty[data-v-b4523697]{padding:8px 12px;color:var(--el-text-color-secondary)}.ml-layer-select-popper{width:340px}.ml-layer-select-popper .el-select-dropdown__wrap{max-height:360px}.ml-layer-select-popper .el-select-dropdown__item{height:36px;line-height:36px}.ml-layer-select-header[data-v-b4523697]{padding:6px 8px 8px;border-bottom:1px solid var(--el-border-color-lighter)}.ml-layer-select-search[data-v-b4523697] .el-input__wrapper{border-radius:8px}.ml-linetype-select[data-v-376873ff]{display:flex;width:100%;min-width:0}.ml-linetype-leading-icon[data-v-376873ff]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px;color:var(--el-text-color-secondary)}.ml-linetype-select__control[data-v-376873ff],.ml-linetype-select[data-v-376873ff] .el-select__wrapper,.ml-linetype-select[data-v-376873ff] .el-select__selection,.ml-linetype-select[data-v-376873ff] .el-select__selected-item,.ml-linetype-select[data-v-376873ff] .el-select__placeholder{width:100%;min-width:0}.ml-linetype-item[data-v-376873ff]{display:inline-flex;align-items:center;gap:8px;width:100%;min-width:0}.ml-linetype-item--selected[data-v-376873ff]{width:100%}.ml-linetype-preview[data-v-376873ff]{position:relative;width:52px;height:14px;flex:0 0 52px}.ml-linetype-preview[data-v-376873ff]:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;transform:translateY(-50%);background:var(--ml-linetype-bg)}.ml-linetype-preview--svg[data-v-376873ff]:before{content:none}.ml-linetype-preview-svg[data-v-376873ff]{display:block;width:100%;height:100%}.ml-linetype-preview-svg[data-v-376873ff] svg{display:block;width:100%;height:100%}.ml-linetype-text[data-v-376873ff]{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ml-hatch-pattern-dropdown[data-v-60888b8d]{--ml-hatch-pattern-scale: var(--ml-rb-scale, 1);display:inline-flex;width:100%;min-width:152px}.ml-hatch-pattern-dropdown[data-v-60888b8d] .el-popover__reference-wrapper{display:inline-flex;width:100%}.ml-hatch-pattern-dropdown__button[data-v-60888b8d]{width:100%;min-width:0}.ml-hatch-pattern-dropdown__swatch[data-v-60888b8d]{display:inline-block;width:calc(18px * var(--ml-hatch-pattern-scale));height:calc(18px * var(--ml-hatch-pattern-scale));box-sizing:border-box;border:1px solid var(--ml-rb-border-strong, #404a59);flex:0 0 calc(18px * var(--ml-hatch-pattern-scale))}.ml-toggle-button[data-v-7cc689f0]{border:none;padding:0;cursor:pointer;width:var(--v161493fe);height:var(--v161493fe);color:var(--el-text-color-regular)}[data-v-01aae531] .el-table__placeholder{width:0px}[data-v-01aae531] .el-table .cell{display:flex}[data-v-01aae531] .ml-cell-value>*{width:100%}.ml-entity-properties[data-v-01aae531]{padding:5px}.ml-entity-properties-table[data-v-01aae531]{width:100%}.ml-cell-container[data-v-01aae531]{display:flex;align-items:center;width:100%;min-width:0;line-height:1}.ml-cell-label[data-v-01aae531]{font-weight:400;width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml-group-row[data-v-01aae531]{font-weight:600}.ml-cell-value[data-v-01aae531]{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml-readonly-value[data-v-01aae531]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml-no-entity-selected[data-v-01aae531]{display:flex;justify-content:center;align-items:center;text-align:center;font-style:italic;font-size:.875rem;padding:.5rem}.ml-layer-list{width:100%;font-size:small;min-width:100%}.ml-layer-list .el-table__cell{padding-top:2px;padding-bottom:2px}.ml-layer-list .el-table__header .el-table__cell{padding-top:4px;padding-bottom:4px}.ml-layer-list .el-table__header,.ml-layer-list .el-table__body{border-bottom:1px solid var(--el-border-color)}.ml-layer-list-cell,.ml-layer-list-header-toggle{display:flex;align-items:center;justify-content:center}.ml-layer-list-color{width:20px;height:20px}.ml-layer-manager[data-v-49338dfd]{left:var(--ml-palette-left);top:var(--ml-palette-top);width:var(--ml-palette-width);height:var(--ml-palette-height);max-width:var(--ml-palette-max-width);max-height:var(--ml-palette-max-height);z-index:7}.ml-layer-list-wrapper[data-v-49338dfd]{overflow:auto;width:100%;height:100%;min-height:0;display:flex;align-items:flex-start;justify-content:flex-start}.ml-entity-info[data-v-cb6de694]{position:fixed;left:var(--v856c8a54);top:var(--a976deb4);z-index:99999;width:180px;margin:0;transition:none!important}.ml-entity-info-title[data-v-cb6de694]{font-weight:700}.ml-entity-info-text[data-v-cb6de694]{margin-bottom:6px;margin-top:6px}.ml-language-selector[data-v-d9ad28e0]{position:fixed;right:40px;top:20px;z-index:1000}.ml-layer-draw-style-layer-select[data-v-bac9e6a9]{min-width:100px;max-width:220px}.ml-main-menu-container[data-v-8c8f4e2c]{position:fixed;left:40px;top:20px;z-index:1000}.ml-main-menu-icon[data-v-8c8f4e2c],.ml-main-menu-icon[data-v-8c8f4e2c]:hover{outline:none;border:none}.ml-vertical-toolbar-container{position:fixed;right:30px;top:50%;transform:translateY(-50%);z-index:3}.ml-vertical-toolbar-container.is-disabled{opacity:.6;pointer-events:none;-webkit-user-select:none;user-select:none}:root{--ml-rb-border:var(--el-border-color);--ml-rb-border-strong:var(--el-border-color-dark);--ml-rb-bg:var(--el-fill-color-light);--ml-rb-panel-bg:var(--el-fill-color-lighter);--ml-rb-tab-text:var(--el-text-color-primary);--ml-rb-muted:var(--el-text-color-secondary);--ml-rb-active:var(--el-color-primary);--ml-rb-header-start:var(--el-bg-color);--ml-rb-header-end:var(--el-fill-color-light);--ml-rb-hover-bg:var(--el-fill-color);--ml-rb-hover-border:var(--el-border-color);--ml-rb-active-bg:var(--el-fill-color-dark);--ml-rb-active-border:var(--el-border-color-darker);--ml-rb-surface:var(--el-bg-color);--ml-rb-surface-soft:var(--el-fill-color-blank);--ml-rb-keytip-border:#e7a957;--ml-rb-keytip-bg:#fff7eb;--ml-rb-keytip-inline-bg:#1b212a;--ml-rb-keytip-inline-fg:#ffdc85;--ml-rb-keytip-inline-shadow:oklab(0% none none/.2);--ml-rb-split-icon-hover-bg:color-mix(in oklab, var(--el-color-primary) 14%, transparent);--ml-rb-split-icon-hover-fg:var(--el-color-primary);--ml-rb-split-label-hover-bg:oklab(57.259% -.0282497 -.196933/.16);--ml-rb-split-label-hover-fg:#1f4fbf}html.dark{--ml-rb-keytip-border:#cf9448;--ml-rb-keytip-bg:#2b2420;--ml-rb-keytip-inline-bg:#f4f6fb;--ml-rb-keytip-inline-fg:#1d2530;--ml-rb-keytip-inline-shadow:oklab(0% none none/.35);--ml-rb-split-icon-hover-bg:color-mix(in oklab, var(--el-color-primary) 24%, transparent);--ml-rb-split-icon-hover-fg:#8db9ff;--ml-rb-split-label-hover-bg:oklab(71.6785% -.0267566 -.145349/.2);--ml-rb-split-label-hover-fg:#a8ccff}.ml-ribbon{--ml-rb-scale:1;--ml-rb-overflow-slot-width:40px;--ml-rb-font-xs:calc(var(--el-font-size-extra-small) * var(--ml-rb-scale));--ml-rb-font-sm:calc(var(--el-font-size-small) * var(--ml-rb-scale));--ml-rb-font-base:calc(var(--el-font-size-base) * var(--ml-rb-scale));--ml-rb-control-height:calc(var(--el-component-size-default) * var(--ml-rb-scale));--ml-rb-compact-height:calc(var(--el-component-size-small) * var(--ml-rb-scale));--ml-rb-content-rows:3;--ml-rb-content-row-gap:2px;--ml-rb-footer-line-height:calc(14px * var(--ml-rb-scale));--ml-rb-footer-pad-top:calc(4px * var(--ml-rb-scale));--ml-rb-footer-pad-bottom:calc(2px * var(--ml-rb-scale));--ml-rb-footer-height:calc(var(--ml-rb-footer-line-height) + var(--ml-rb-footer-pad-top) + var(--ml-rb-footer-pad-bottom));--ml-rb-panel-content-height:calc((var(--ml-rb-compact-height) * var(--ml-rb-content-rows)) + (var(--ml-rb-content-row-gap) * (var(--ml-rb-content-rows) - 1)));--ml-rb-panel-height:calc(var(--ml-rb-panel-content-height) + var(--ml-rb-footer-height));--ml-rb-select-padding-x:6px;--ml-rb-select-font-size:calc(13px * var(--ml-rb-scale));border:1px solid var(--ml-rb-border-strong);background:var(--ml-rb-bg);color:var(--ml-rb-tab-text);border-radius:0;overflow:hidden}.ml-ribbon.ml-ribbon--disabled{opacity:.72}.ml-ribbon.ml-ribbon--size-small{--ml-rb-scale:.92;--ml-rb-select-padding-x:4px}.ml-ribbon.ml-ribbon--size-large{--ml-rb-scale:1.08;--ml-rb-select-padding-x:7px}.ml-ribbon__header{z-index:10;min-height:calc(var(--ml-rb-control-height) + 2px);border-bottom:1px solid var(--ml-rb-border);background:linear-gradient(180deg,var(--ml-rb-header-start) 0%,var(--ml-rb-header-end) 100%);justify-content:space-between;align-items:center;gap:8px;padding:0 8px;display:flex;position:relative}.ml-ribbon__minimized-anchor{pointer-events:none;opacity:0;position:absolute}.ml-ribbon__head-left,.ml-ribbon__head-right{align-items:center;display:flex}.ml-ribbon__head-left{gap:8px}.ml-ribbon__head-right{gap:4px}.ml-ribbon__tabs-extra{align-items:center;gap:8px;display:inline-flex}.ml-ribbon__control--minimize.el-button{height:24px;min-height:24px;padding:0 8px}.ml-ribbon__head-right .el-button+.el-button{margin-left:0}.ml-ribbon-popper{--ml-rb-popper-scale:1}.ml-ribbon-popper.ml-ribbon-popper--size-small{--ml-rb-popper-scale:.92}.ml-ribbon-popper.ml-ribbon-popper--size-large{--ml-rb-popper-scale:1.08}.ml-ribbon-popper.ml-ribbon-popper--size-small .el-dropdown-menu__item{min-height:22px}.ml-ribbon-file-menu-dropdown .el-dropdown-menu__item{font-size:calc(var(--el-font-size-small) * var(--ml-rb-popper-scale,1));color:var(--ml-rb-tab-text);min-height:20px;font-family:inherit;font-weight:400;line-height:20px}.ml-ribbon-dropdown-menu .el-dropdown-menu__item,.ml-ribbon-select-dropdown .el-select-dropdown__item{font-size:calc(var(--el-font-size-small) * var(--ml-rb-popper-scale,1))}.ml-ribbon-dropdown-item__content{align-items:center;gap:6px;display:inline-flex}.ml-ribbon-dropdown-item__icon{font-size:var(--ml-rb-font-sm)}.ml-ribbon-dropdown-item__icon--class{justify-content:center;align-items:center;width:1em;height:1em;display:inline-flex}.ml-ribbon-dropdown-item__label{line-height:1.2}.ml-ribbon-tabs{align-items:center;gap:2px;display:inline-flex}.ml-ribbon-tab{height:calc(var(--ml-rb-compact-height) - 2px);color:var(--ml-rb-tab-text);font-size:var(--ml-rb-font-sm);cursor:pointer;line-height:calc(var(--ml-rb-compact-height) - 2px);background:0 0;border:none;border-bottom:2px solid #0000;margin:0;padding:0 8px}.ml-ribbon-tab:hover{background:var(--ml-rb-hover-bg)}.ml-ribbon-tab:disabled{cursor:not-allowed;opacity:.6}.ml-ribbon-tab:disabled:hover{background:0 0}.ml-ribbon-tab.is-active{color:var(--ml-rb-active);border-bottom-color:var(--ml-rb-active)}.ml-ribbon-contextual-tabs{align-items:center;gap:6px;display:flex}.ml-ribbon-contextual-tabs__ctx{gap:6px;display:flex}.ml-ribbon-contextual-tabs__block{border:1px solid color-mix(in oklab,var(--ctx-color) 55%,#fff);border-radius:4px;align-items:center;gap:4px;padding:0 3px;display:inline-flex}.ml-ribbon-contextual-tabs__block small{font-size:calc(var(--ml-rb-font-xs) * .9);color:color-mix(in oklab,var(--ctx-color) 72%,#111);font-weight:600}.ml-ribbon__head-right .el-button.is-circle{width:24px;height:24px}.ml-ribbon__head-right .el-switch{--el-switch-on-color:#d0d4dc;--el-switch-height:18px;--el-switch-width:34px}.ml-ribbon__panel{z-index:1;background:var(--ml-rb-panel-bg);min-height:var(--ml-rb-panel-height);height:var(--ml-rb-panel-height);align-items:stretch;gap:0;padding:0;display:flex;position:relative;overflow-x:hidden}.ml-ribbon__panel--simplified{align-items:center;gap:6px;height:36px;min-height:36px}.ml-ribbon-group{border-right:1px solid var(--ml-rb-border);flex-direction:column;flex:0 0 190px;justify-content:space-between;min-width:190px;max-width:190px;padding:0 6px;display:flex;overflow:hidden}.ml-ribbon-group.ml-ribbon-group--auto-width{flex:none;width:max-content;min-width:0;max-width:none}.ml-ribbon-group.ml-ribbon-group--overflow{flex:0 0 var(--ml-rb-overflow-slot-width);min-width:var(--ml-rb-overflow-slot-width);max-width:var(--ml-rb-overflow-slot-width);padding:0 4px}.ml-ribbon-group__body{flex:auto;min-height:0;display:flex;overflow:hidden}.ml-ribbon-group__body--overflow{justify-content:center;align-items:center;display:flex}.ml-ribbon-group__content{min-height:var(--ml-rb-panel-content-height);height:var(--ml-rb-panel-content-height);align-items:stretch;gap:6px;padding:0 1px;display:flex;overflow:hidden}.ml-ribbon-group__content--row,.ml-ribbon-group__content--column{flex-direction:row}.ml-ribbon-collection{gap:4px;max-width:100%;display:flex}.ml-ribbon-collection--row{flex-flow:wrap;align-content:flex-start;align-items:flex-start}.ml-ribbon-collection--column{grid-auto-flow:column;grid-template-rows:repeat(var(--ml-ribbon-collection-rows,3),var(--ml-rb-compact-height));align-items:stretch;gap:var(--ml-rb-content-row-gap);grid-auto-columns:minmax(98px,max-content);min-width:98px;display:grid}.ml-ribbon-item-host{min-height:var(--ml-rb-compact-height);align-items:center;max-width:100%;display:inline-flex;position:relative}.ml-ribbon-item-host__keytip{left:50%;top:calc(-8px * var(--ml-rb-scale));z-index:30;min-width:calc(18px * var(--ml-rb-scale));height:calc(20px * var(--ml-rb-scale));padding:0 calc(4px * var(--ml-rb-scale));border:1px solid var(--ml-rb-keytip-border);border-radius:calc(2px * var(--ml-rb-scale));background:var(--ml-rb-keytip-inline-bg);color:var(--ml-rb-keytip-inline-fg);font-size:var(--ml-rb-font-sm);white-space:nowrap;pointer-events:none;box-shadow:0 1px 3px var(--ml-rb-keytip-inline-shadow);justify-content:center;align-items:center;line-height:1;display:inline-flex;position:absolute;transform:translate(-50%)}.ml-ribbon-item-host.is-large{align-self:stretch;height:100%}.ml-ribbon-item-host.is-large .el-button{text-align:center;justify-content:center;align-items:center;width:max-content;min-width:0;height:100%;min-height:0;padding:8px 6px;display:inline-flex}.ml-ribbon-item-host.is-large .el-button>span{flex-direction:column;justify-content:center;align-items:center;gap:4px;line-height:1.1;display:inline-flex}.ml-ribbon-item-host.is-large.type-toggle .ml-ribbon-toggle{min-width:62px}.ml-ribbon-item-host.is-large.type-toggle .ml-ribbon-toggle>span{flex-direction:column;justify-content:center;align-items:center;gap:4px;line-height:1.1;display:inline-flex}.ml-ribbon-item-host.is-small .el-button{min-height:var(--ml-rb-compact-height);height:var(--ml-rb-compact-height);padding:0 6px}.ml-ribbon-item-host :is(.el-button,.el-select,.el-input-number,.el-input__wrapper,.el-checkbox){font-size:var(--ml-rb-font-sm)}.ml-ribbon-item-host .el-button{box-shadow:none;height:calc(var(--ml-rb-compact-height) + 2px);background:0 0;border-color:#0000;border-radius:4px;justify-content:flex-start;padding:0 7px}.ml-ribbon-item-host__icon{font-size:calc(var(--ml-rb-font-base) + 2px);margin-right:4px}.ml-ribbon-item-host__icon--class{justify-content:center;align-items:center;width:1em;height:1em;display:inline-flex}.ml-ribbon-item-host__icon--dropdown-primary{cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0;line-height:1;transition:background-color .15s,color .15s;display:inline-flex}.ml-ribbon-item-host__icon--dropdown-primary:hover{background:var(--ml-rb-split-icon-hover-bg);color:var(--ml-rb-split-icon-hover-fg)}.ml-ribbon-item-host.is-label-hidden .ml-ribbon-item-host__icon{margin-right:0}.ml-ribbon-item-host.type-buttonGroup .ml-ribbon-item-host__icon--with-label{margin-right:4px}.ml-ribbon-item-host.type-buttonGroup .ml-ribbon-item-host__icon--icon-only{margin-right:0}.ml-ribbon-item-host.is-label-hidden .el-button{min-width:var(--ml-rb-compact-height);justify-content:center;padding-left:4px;padding-right:4px}.ml-ribbon-item-host__label{line-height:1.1}.ml-ribbon-item-host__content{align-items:center;gap:4px;display:inline-flex}.ml-ribbon-item-host__text-row{align-items:center;gap:2px;display:inline-flex}.ml-ribbon-item-host.type-dropdown .ml-ribbon-item-host__text-row,.ml-ribbon-dropdown .ml-ribbon-item-host__text-row{border-radius:4px;padding:1px 4px;transition:background-color .15s,color .15s}.ml-ribbon-item-host.type-dropdown .ml-ribbon-item-host__text-row:hover,.ml-ribbon-dropdown .ml-ribbon-item-host__text-row:hover{background:var(--ml-rb-split-label-hover-bg);color:var(--ml-rb-split-label-hover-fg)}.ml-ribbon-item-host__dropdown-arrow{font-size:var(--ml-rb-font-xs)}.ml-ribbon-item-host.is-large .ml-ribbon-item-host__icon{font-size:calc((var(--ml-rb-font-base) * 1.7) + 2px);margin-bottom:2px;margin-right:0}.ml-ribbon-item-host.is-large .ml-ribbon-item-host__label{font-size:var(--ml-rb-font-sm)}.ml-ribbon-item-host.is-large.type-button .ml-ribbon-button__icon+.ml-ribbon-button__label{margin-left:0}.ml-ribbon-item-host.is-large.type-button.is-label-wrap .el-button{width:var(--ml-rb-item-label-wrap-width,74px);max-width:100%}.ml-ribbon-item-host.is-large.type-button.is-label-wrap .el-button>span{width:100%}.ml-ribbon-item-host.is-large.type-button.is-label-wrap .ml-ribbon-item-host__label{-webkit-line-clamp:var(--ml-rb-item-label-max-lines,2);white-space:normal;text-align:center;overflow-wrap:anywhere;word-break:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ml-ribbon-item-host.is-large.type-dropdown .ml-ribbon-item-host__content,.ml-ribbon-dropdown.ml-ribbon-dropdown--item-large .ml-ribbon-dropdown__content{flex-direction:column;justify-content:center}.ml-ribbon-item-host.is-label-hidden.is-small.type-dropdown .ml-ribbon-item-host__content,.ml-ribbon-dropdown.is-label-hidden.ml-ribbon-dropdown--item-small .ml-ribbon-dropdown__content{gap:2px}.ml-ribbon-item-host.is-label-hidden.is-small.type-dropdown .ml-ribbon-item-host__text-row,.ml-ribbon-dropdown.is-label-hidden.ml-ribbon-dropdown--item-small .ml-ribbon-dropdown__text-row{margin-left:0}.ml-ribbon__panel .el-button:hover,.ml-ribbon__panel .el-button:focus-visible{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border)}.ml-ribbon__panel .el-button:active{background:var(--ml-rb-active-bg);border-color:var(--ml-rb-active-border)}.ml-ribbon__panel .el-button.is-disabled{background:0 0;border-color:#0000}.ml-ribbon--keytips-open .ml-ribbon__panel,.ml-ribbon--keytips-open .ml-ribbon-group,.ml-ribbon--keytips-open .ml-ribbon-group__body,.ml-ribbon--keytips-open .ml-ribbon-group__content{overflow:visible}.ml-ribbon--keytips-open .ml-ribbon__panel{z-index:20}.ml-ribbon-item-host .el-select{max-width:100%}.ml-ribbon-input-number{align-items:center;gap:calc(4px * var(--ml-rb-scale,1));max-width:100%;min-height:var(--ml-rb-compact-height);height:var(--ml-rb-compact-height);display:inline-flex;overflow:visible}.ml-ribbon-input-number.is-full .el-input-number{flex:1 1 0;min-width:0}.ml-ribbon-input-number__prefix{align-items:center;gap:calc(3px * var(--ml-rb-scale,1));min-width:0;min-height:var(--ml-rb-compact-height);color:var(--ml-rb-muted);font-size:var(--ml-rb-font-xs,calc(var(--el-font-size-extra-small) * var(--ml-rb-scale,1)));line-height:calc(var(--ml-rb-font-sm,calc(var(--el-font-size-small) * var(--ml-rb-scale,1))) * 1.2);white-space:nowrap;flex:none;display:inline-flex}.ml-ribbon-input-number__prefix-icon{width:calc(var(--ml-rb-font-sm,calc(var(--el-font-size-small) * var(--ml-rb-scale,1))) + 1px);height:calc(var(--ml-rb-font-sm,calc(var(--el-font-size-small) * var(--ml-rb-scale,1))) + 1px);color:var(--ml-rb-tab-text);font-size:calc(var(--ml-rb-font-sm,calc(var(--el-font-size-small) * var(--ml-rb-scale,1))) + 1px);flex:none;justify-content:center;align-items:center;display:inline-flex}.ml-ribbon-input-number__prefix-label{max-width:calc(72px * var(--ml-rb-scale,1));text-overflow:ellipsis;overflow:hidden}.ml-ribbon-item-host .el-input-number{--ml-rb-input-number-control-width:calc(var(--ml-rb-compact-height) - 8px);box-sizing:border-box;height:var(--ml-rb-compact-height);max-width:100%;line-height:var(--ml-rb-compact-height)}.ml-ribbon-item-host .el-input-number .el-input{--el-input-height:var(--ml-rb-compact-height);--el-input-inner-height:calc(var(--ml-rb-compact-height) - 2px);box-sizing:border-box;height:var(--ml-rb-compact-height);line-height:var(--ml-rb-compact-height)}.ml-ribbon-collection--column .ml-ribbon-item-host,.ml-ribbon-collection--column .ml-ribbon-item-host>.el-button,.ml-ribbon-collection--column .ml-ribbon-item-host>.el-select,.ml-ribbon-collection--column .ml-ribbon-item-host>.el-input-number,.ml-ribbon-collection--column .ml-ribbon-item-host>.ml-ribbon-input-number{width:100%}.ml-ribbon-group--auto-width .ml-ribbon-group__content{width:max-content}.ml-ribbon-group--auto-width .ml-ribbon-collection--column{grid-auto-columns:max-content;width:max-content;min-width:0}.ml-ribbon-group--auto-width .ml-ribbon-collection--column .ml-ribbon-item-host,.ml-ribbon-group--auto-width .ml-ribbon-collection--column .ml-ribbon-item-host>.el-button,.ml-ribbon-group--auto-width .ml-ribbon-collection--column .ml-ribbon-item-host>.el-select,.ml-ribbon-group--auto-width .ml-ribbon-collection--column .ml-ribbon-item-host>.el-input-number,.ml-ribbon-group--auto-width .ml-ribbon-collection--column .ml-ribbon-item-host>.ml-ribbon-input-number{width:auto}.ml-ribbon-item-host .el-input__wrapper{box-shadow:none;background:0 0;border:1px solid #0000}.ml-ribbon-item-host .el-select .el-select__wrapper,.ml-ribbon-item-host .el-select .el-input__wrapper,.ml-ribbon-item-host .el-input-number .el-input__wrapper{box-sizing:border-box;min-height:var(--ml-rb-compact-height);height:var(--ml-rb-compact-height);padding:0 var(--ml-rb-select-padding-x);border-radius:4px}.ml-ribbon-item-host .el-input-number .el-input__wrapper{box-sizing:border-box;border-color:var(--ml-rb-border)}.ml-ribbon-item-host .el-select .el-select__selected-item,.ml-ribbon-item-host .el-select .el-select__placeholder,.ml-ribbon-item-host .el-select .el-select__input,.ml-ribbon-item-host .el-input-number .el-input__inner{font-size:var(--ml-rb-select-font-size)}.ml-ribbon-item-host .el-select:hover .el-input__wrapper,.ml-ribbon-item-host .el-select.is-focus .el-input__wrapper,.ml-ribbon-item-host .el-input-number:hover .el-input__wrapper,.ml-ribbon-item-host .el-input-number.is-focus .el-input__wrapper{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border)}.ml-ribbon-item-host .el-input-number .el-input-number__decrease,.ml-ribbon-item-host .el-input-number .el-input-number__increase{box-sizing:border-box;width:var(--ml-rb-input-number-control-width);height:calc(var(--ml-rb-compact-height) - 2px);line-height:calc(var(--ml-rb-compact-height) - 2px);border-color:var(--ml-rb-border);color:var(--ml-rb-muted);background:0 0}.ml-ribbon-item-host .el-input-number.is-controls-right .el-input-number__decrease,.ml-ribbon-item-host .el-input-number.is-controls-right .el-input-number__increase{--el-input-number-controls-height:calc((var(--ml-rb-compact-height) - 2px) / 2);height:var(--el-input-number-controls-height);line-height:var(--el-input-number-controls-height)}.ml-ribbon-item-host .el-color-picker{--el-color-picker-size:var(--ml-rb-compact-height);width:var(--ml-rb-compact-height);min-width:var(--ml-rb-compact-height);height:var(--ml-rb-compact-height);align-items:center;line-height:1;display:inline-flex}.ml-ribbon-item-host .el-color-picker .el-color-picker__trigger{background:0 0;border-color:#0000;border-radius:4px;width:100%;height:100%;padding:0}.ml-ribbon-item-host .el-color-picker .el-color-picker__empty,.ml-ribbon-item-host .el-color-picker .el-color-picker__icon{font-size:calc(12px * var(--ml-rb-scale));line-height:1;transform:none}.ml-ribbon-item-host .el-color-picker:hover .el-color-picker__trigger,.ml-ribbon-item-host .el-color-picker .el-color-picker__trigger:focus-visible{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border)}.ml-ribbon-template-item{width:100%;max-width:100%;min-height:var(--ml-rb-compact-height);align-items:stretch;display:inline-flex}.ml-ribbon-item-host.is-large .ml-ribbon-template-item{height:100%}.ml-ribbon-button-group{flex-direction:column;gap:2px;width:100%;max-width:100%;display:flex}.ml-ribbon-button-group .el-button-group{flex-wrap:wrap;max-width:100%;display:flex}.ml-ribbon-button-group.ml-ribbon-button-group--nowrap .el-button-group{flex-wrap:nowrap}.ml-ribbon-button-group.ml-ribbon-button-group--nowrap .el-button-group .el-button{min-width:var(--ml-rb-compact-height);flex:none}.ml-ribbon-button-group.ml-ribbon-button-group--nowrap .el-button-group .el-button>span{white-space:nowrap;align-items:center;display:inline-flex}.ml-ribbon-button-group.ml-ribbon-button-group--equal-width .el-button-group{width:100%}.ml-ribbon-button-group.ml-ribbon-button-group--equal-width .el-button-group .el-button{flex:1 1 0;min-width:0;overflow:hidden}.ml-ribbon-button-group.ml-ribbon-button-group--equal-width .el-button-group .el-button>span{text-overflow:ellipsis;min-width:0;max-width:100%;overflow:hidden}.ml-ribbon-button-group__label{font-size:var(--ml-rb-font-xs);color:var(--ml-rb-muted)}.ml-ribbon-item-host .ml-ribbon-toggle{min-height:var(--ml-rb-compact-height);height:var(--ml-rb-compact-height);font-size:var(--ml-rb-font-sm)}.ml-ribbon-toggle.is-active,.ml-ribbon-toggle.is-active:hover,.ml-ribbon-toggle.is-active:focus-visible{background:var(--ml-rb-active-bg);border-color:var(--ml-rb-active-border);color:var(--ml-rb-tab-text)}.ml-ribbon-segmented{flex-direction:column;gap:2px;max-width:100%;display:flex}.ml-ribbon-segmented__label{font-size:var(--ml-rb-font-xs);color:var(--ml-rb-muted)}.ml-ribbon-segmented__control{max-width:100%;min-height:var(--ml-rb-compact-height);font-size:var(--ml-rb-font-sm);--el-segmented-padding:2px}.ml-ribbon-segmented__control.el-segmented,.ml-ribbon-segmented__control.el-segmented.el-segmented--small,.ml-ribbon-segmented__control.el-segmented.el-segmented--large{min-height:var(--ml-rb-compact-height);font-size:var(--ml-rb-font-sm);border-radius:4px}.ml-ribbon-segmented__control .el-segmented__group{min-height:calc(var(--ml-rb-compact-height) - 4px)}.ml-ribbon-segmented__control .el-segmented__item,.ml-ribbon-segmented__control.el-segmented--small .el-segmented__item,.ml-ribbon-segmented__control.el-segmented--large .el-segmented__item{min-height:calc(var(--ml-rb-compact-height) - 4px);padding:0 6px}.ml-ribbon-segmented__control .el-segmented__item-label{min-height:calc(var(--ml-rb-compact-height) - 4px);justify-content:center;align-items:center;display:inline-flex}.ml-ribbon-segmented__option{min-width:calc(var(--ml-rb-compact-height) - 4px);min-height:calc(var(--ml-rb-compact-height) - 6px);justify-content:center;align-items:center;line-height:1;display:inline-flex}.ml-ribbon-segmented__option-icon{font-size:var(--ml-rb-font-base);justify-content:center;align-items:center;display:inline-flex}.ml-ribbon-segmented__option-label{white-space:nowrap;font-size:var(--ml-rb-font-sm)}.ml-ribbon-segmented__option-sr-label{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ml-ribbon-gallery{--ml-ribbon-gallery-item-width:calc(64px * var(--ml-rb-scale));--ml-ribbon-gallery-item-height:calc(54px * var(--ml-rb-scale));--ml-ribbon-gallery-panel-item-width:calc(64px * var(--ml-rb-scale));box-sizing:border-box;flex-direction:column;min-width:238px;max-width:100%;height:100%;padding:2px 0;display:flex;overflow:hidden}.ml-ribbon-gallery.is-collapsed{width:auto;min-width:0;height:100%;padding:0}.ml-ribbon-gallery__title{font-size:var(--ml-rb-font-xs);font-weight:600;line-height:calc(15px * var(--ml-rb-scale));color:var(--ml-rb-muted);text-overflow:ellipsis;white-space:nowrap;flex:none;margin-bottom:3px;overflow:hidden}.ml-ribbon-gallery__categories{flex:auto;gap:4px;min-height:0;display:flex;overflow:hidden}.ml-ribbon-gallery.is-unlabeled .ml-ribbon-gallery__categories{align-items:center}.ml-ribbon-gallery__category{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.ml-ribbon-gallery.is-unlabeled .ml-ribbon-gallery__category{flex:none}.ml-ribbon-gallery__category-title{font-size:var(--ml-rb-font-xs);line-height:calc(14px * var(--ml-rb-scale));text-overflow:ellipsis;white-space:nowrap;flex:none;margin:0 0 3px;overflow:hidden}.ml-ribbon-gallery__grid{grid-template-columns:repeat(var(--ml-ribbon-gallery-inline-columns,4),minmax(0,var(--ml-ribbon-gallery-item-width)));flex:auto;grid-auto-rows:minmax(0,1fr);gap:4px;min-height:0;display:grid}.ml-ribbon-gallery.is-unlabeled .ml-ribbon-gallery__grid{grid-auto-rows:var(--ml-ribbon-gallery-item-height);flex:none}.ml-ribbon-gallery__item{box-sizing:border-box;border:1px solid var(--ml-rb-border);background:var(--ml-rb-surface);cursor:pointer;text-align:center;border-radius:4px;grid-template-rows:minmax(0,1fr) auto;width:100%;min-width:0;min-height:0;padding:4px;display:grid;overflow:hidden}.ml-ribbon-gallery__item:hover,.ml-ribbon-gallery__item:focus-visible{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border)}.ml-ribbon-gallery__item.is-selected{border-color:var(--ml-rb-active);box-shadow:0 0 0 1px color-mix(in oklab,var(--ml-rb-active) 35%,#fff)}.ml-ribbon-gallery__collapsed-button{box-sizing:border-box;min-width:calc(70px * var(--ml-rb-scale));height:100%;color:var(--ml-rb-tab-text);cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 6px;display:inline-flex;position:relative}.ml-ribbon-gallery__collapsed-button:hover,.ml-ribbon-gallery__collapsed-button:focus-visible{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border)}.ml-ribbon-gallery__collapsed-button.is-selected{border-color:var(--ml-rb-active)}.ml-ribbon-gallery__collapsed-button.is-open{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-active)}.ml-ribbon-gallery__collapsed-button:disabled{cursor:not-allowed;opacity:.56}.ml-ribbon-gallery__controls{flex:0 0 calc(22px * var(--ml-rb-scale));width:calc(22px * var(--ml-rb-scale));border:1px solid var(--ml-rb-border);background:var(--ml-rb-surface);border-radius:4px;grid-template-rows:1fr 1fr 1fr;min-height:100%;display:grid;overflow:hidden}.ml-ribbon-gallery.is-unlabeled .ml-ribbon-gallery__controls{height:var(--ml-ribbon-gallery-item-height);min-height:var(--ml-ribbon-gallery-item-height)}.ml-ribbon-gallery__control-button{border:0;border-bottom:1px solid var(--ml-rb-border);width:100%;min-width:0;min-height:0;color:var(--ml-rb-muted);cursor:pointer;font-size:var(--ml-rb-font-xs);background:0 0;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.ml-ribbon-gallery__control-button:last-child{border-bottom:0}.ml-ribbon-gallery__control-button:hover,.ml-ribbon-gallery__control-button:focus-visible,.ml-ribbon-gallery__control-button.is-open{background:var(--ml-rb-hover-bg);color:var(--ml-rb-tab-text)}.ml-ribbon-gallery__control-button:disabled{cursor:not-allowed;opacity:.56}.ml-ribbon-gallery__preview{min-height:0;color:var(--ml-rb-muted);font-size:calc(var(--ml-rb-font-base) * 1.2);justify-content:center;align-items:center;line-height:1;display:flex}.ml-ribbon-gallery__preview--icon,.ml-ribbon-gallery__preview--svg{color:var(--ml-rb-tab-text)}.ml-ribbon-gallery__preview-icon{font-size:calc(var(--ml-rb-font-base) * 1.5);justify-content:center;align-items:center;display:inline-flex}.ml-ribbon-gallery__preview-icon--class{width:1em;height:1em}.ml-ribbon-gallery__preview-svg{width:calc(24px * var(--ml-rb-scale));height:calc(24px * var(--ml-rb-scale));color:currentColor;object-fit:contain;display:block}.ml-ribbon-gallery__collapsed-preview .ml-ribbon-gallery__preview-icon{font-size:calc((var(--ml-rb-font-base) * 1.7) + 2px)}.ml-ribbon-gallery__collapsed-preview .ml-ribbon-gallery__preview-svg{width:calc(28px * var(--ml-rb-scale));height:calc(28px * var(--ml-rb-scale))}.ml-ribbon-gallery__label{min-width:0;color:var(--ml-rb-tab-text);font-size:var(--ml-rb-font-xs);line-height:calc(13px * var(--ml-rb-scale));text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.ml-ribbon-gallery__collapsed-label{max-width:calc(76px * var(--ml-rb-scale));white-space:normal;overflow-wrap:anywhere}.ml-ribbon-gallery-panel{--ml-rb-scale:1;--ml-rb-font-xs:calc(var(--el-font-size-extra-small) * var(--ml-rb-scale));--ml-rb-font-base:calc(var(--el-font-size-base) * var(--ml-rb-scale));--ml-rb-compact-height:calc(var(--el-component-size-small) * var(--ml-rb-scale));--ml-ribbon-gallery-panel-item-width:calc(64px * var(--ml-rb-scale));--ml-ribbon-gallery-panel-item-height:calc(54px * var(--ml-rb-scale));--ml-ribbon-gallery-panel-gap:4px;padding:6px!important}.ml-ribbon-gallery-panel--size-small{--ml-rb-scale:.92}.ml-ribbon-gallery-panel--size-large{--ml-rb-scale:1.08}.ml-ribbon-gallery__panel{max-height:min(calc((var(--ml-ribbon-gallery-panel-item-height) * 4) + (var(--ml-ribbon-gallery-panel-gap) * 3)),calc(100vh - 160px));overflow:hidden auto}.ml-ribbon-gallery__panel-category+.ml-ribbon-gallery__panel-category{margin-top:8px}.ml-ribbon-gallery__panel-category-title{color:var(--ml-rb-muted);font-size:var(--ml-rb-font-xs);font-weight:600;line-height:calc(14px * var(--ml-rb-scale));margin:0 0 6px}.ml-ribbon-gallery__panel-grid{grid-template-columns:repeat(var(--ml-ribbon-gallery-panel-columns,4),minmax(0,var(--ml-ribbon-gallery-panel-item-width)));gap:var(--ml-ribbon-gallery-panel-gap);width:max-content;display:grid}.ml-ribbon-gallery__panel-item{width:var(--ml-ribbon-gallery-panel-item-width);min-height:var(--ml-ribbon-gallery-panel-item-height)}.ml-ribbon-group__footer{box-sizing:border-box;width:calc(100% + 12px);min-height:var(--ml-rb-footer-height);height:var(--ml-rb-footer-height);padding:var(--ml-rb-footer-pad-top) 0 var(--ml-rb-footer-pad-bottom);line-height:var(--ml-rb-footer-line-height);font-size:var(--ml-rb-font-xs);color:var(--ml-rb-muted);border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:2px;margin:0 -6px;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex;position:relative;overflow:hidden}.ml-ribbon-group__footer:hover{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border);color:var(--ml-rb-tab-text)}.ml-ribbon-group__title{line-height:var(--ml-rb-footer-line-height);white-space:nowrap;text-overflow:ellipsis;max-width:calc(100% - 26px);display:inline-block;overflow:hidden}.ml-ribbon-group__footer-trigger{width:12px;height:10px;color:var(--ml-rb-muted);cursor:pointer;vertical-align:middle;background:0 0;border:none;justify-content:center;align-items:center;margin:0 0 0 1px;padding:0;display:inline-flex}.ml-ribbon-group__footer-trigger:hover{color:var(--ml-rb-tab-text)}.ml-ribbon-group__footer-trigger:disabled,.ml-ribbon-group__overflow-trigger:disabled,.ml-ribbon-simplified-group:disabled,.ml-ribbon-overflow-trigger:disabled{cursor:not-allowed;opacity:.55}.ml-ribbon-group__footer-trigger:disabled:hover,.ml-ribbon-group__overflow-trigger:disabled:hover{color:var(--ml-rb-muted)}.ml-ribbon-group__icon{font-size:var(--ml-rb-font-xs);vertical-align:middle;margin-right:2px}.ml-ribbon-group__launcher{--el-button-icon-size:10px;height:10px;min-height:10px;margin:0;padding:0;line-height:10px;position:absolute;bottom:0;right:0}.ml-ribbon-group__overflow-trigger{width:12px;height:10px;color:var(--ml-rb-muted);cursor:pointer;vertical-align:middle;background:0 0;border:none;justify-content:center;align-items:center;margin-left:2px;padding:0;display:inline-flex}.ml-ribbon-group__overflow-trigger:hover{color:var(--ml-rb-tab-text)}.ml-ribbon-group__overflow-popover{--ml-rb-scale:1;--ml-rb-font-xs:calc(var(--el-font-size-extra-small) * var(--ml-rb-scale));--ml-rb-font-sm:calc(var(--el-font-size-small) * var(--ml-rb-scale));--ml-rb-font-base:calc(var(--el-font-size-base) * var(--ml-rb-scale));--ml-rb-control-height:calc(var(--el-component-size-default) * var(--ml-rb-scale));--ml-rb-compact-height:calc(var(--el-component-size-small) * var(--ml-rb-scale));padding:8px!important}.ml-ribbon-group__overflow-popover.ml-ribbon-group__overflow-popover--size-small{--ml-rb-scale:.92}.ml-ribbon-group__overflow-popover.ml-ribbon-group__overflow-popover--size-large{--ml-rb-scale:1.08}.ml-ribbon-group__overflow-content{max-width:min(420px,80vw)}.ml-ribbon-group__overflow-content .ml-ribbon-group__content{overflow:visible}.ml-ribbon-group__overflow-content .ml-ribbon-collection--column{grid-template-rows:none;grid-template-columns:minmax(110px,max-content);grid-auto-columns:auto;grid-auto-flow:row}.ml-ribbon-group__overflow-content .ml-ribbon-collection--column .ml-ribbon-item-host,.ml-ribbon-group__overflow-content .ml-ribbon-collection--column .ml-ribbon-item-host>.el-button,.ml-ribbon-group__overflow-content .ml-ribbon-collection--column .ml-ribbon-item-host>.el-select{width:auto}.ml-ribbon-simplified-group{height:28px;color:var(--ml-rb-tab-text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.ml-ribbon-simplified-group:hover{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border)}.ml-ribbon-simplified-group:disabled:hover,.ml-ribbon-overflow-trigger:disabled:hover{background:0 0;border-color:#0000}.ml-ribbon-simplified-group__icon{font-size:calc(var(--ml-rb-font-base) * 1.1)}.ml-ribbon-group-popover{--ml-rb-scale:1;--ml-rb-font-xs:calc(var(--el-font-size-extra-small) * var(--ml-rb-scale));--ml-rb-font-sm:calc(var(--el-font-size-small) * var(--ml-rb-scale));--ml-rb-font-base:calc(var(--el-font-size-base) * var(--ml-rb-scale));--ml-rb-control-height:calc(var(--el-component-size-default) * var(--ml-rb-scale));--ml-rb-compact-height:calc(var(--el-component-size-small) * var(--ml-rb-scale));--ml-rb-select-padding-x:6px;--ml-rb-select-font-size:calc(13px * var(--ml-rb-scale));padding:8px!important}.ml-ribbon-tab-panel-popover{--ml-rb-scale:1;--ml-rb-font-xs:calc(var(--el-font-size-extra-small) * var(--ml-rb-scale));--ml-rb-font-sm:calc(var(--el-font-size-small) * var(--ml-rb-scale));--ml-rb-font-base:calc(var(--el-font-size-base) * var(--ml-rb-scale));--ml-rb-control-height:calc(var(--el-component-size-default) * var(--ml-rb-scale));--ml-rb-compact-height:calc(var(--el-component-size-small) * var(--ml-rb-scale));--ml-rb-content-rows:3;--ml-rb-content-row-gap:2px;--ml-rb-footer-line-height:calc(14px * var(--ml-rb-scale));--ml-rb-footer-pad-top:calc(4px * var(--ml-rb-scale));--ml-rb-footer-pad-bottom:calc(2px * var(--ml-rb-scale));--ml-rb-footer-height:calc(var(--ml-rb-footer-line-height) + var(--ml-rb-footer-pad-top) + var(--ml-rb-footer-pad-bottom));--ml-rb-panel-content-height:calc((var(--ml-rb-compact-height) * var(--ml-rb-content-rows)) + (var(--ml-rb-content-row-gap) * (var(--ml-rb-content-rows) - 1)));--ml-rb-panel-height:calc(var(--ml-rb-panel-content-height) + var(--ml-rb-footer-height));--ml-rb-select-padding-x:6px;--ml-rb-select-font-size:calc(13px * var(--ml-rb-scale));overflow:hidden;padding:0!important}.ml-ribbon-tab-panel-popover.ml-ribbon-tab-panel-popover--size-small{--ml-rb-scale:.92;--ml-rb-select-padding-x:4px}.ml-ribbon-tab-panel-popover.ml-ribbon-tab-panel-popover--size-large{--ml-rb-scale:1.08;--ml-rb-select-padding-x:7px}.ml-ribbon-tab-panel-popover .ml-ribbon__panel--floating{width:100%;min-width:0}.ml-ribbon-group-popover.ml-ribbon-group-popover--size-small{--ml-rb-scale:.92;--ml-rb-select-padding-x:4px}.ml-ribbon-group-popover.ml-ribbon-group-popover--size-large{--ml-rb-scale:1.08;--ml-rb-select-padding-x:7px}.ml-ribbon-simplified-group__panel{min-width:300px;max-width:min(560px,80vw)}.ml-ribbon-simplified-group__panel .ml-ribbon-group__content{gap:8px;padding:6px 4px;overflow:visible}.ml-ribbon-simplified-group__panel .ml-ribbon-collection{flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:10px 6px;display:flex}.ml-ribbon-overflow-trigger{width:28px;height:20px;color:var(--ml-rb-tab-text);font-family:inherit;font-size:var(--ml-rb-font-base);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-self:center;align-items:center;margin-top:0;margin-left:0;font-weight:400;display:inline-flex}.ml-ribbon-overflow-trigger:hover{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border)}.ml-ribbon-overflow-trigger__dots{line-height:1;font-size:calc(var(--ml-rb-font-base) * 1.1);letter-spacing:1px;justify-content:center;align-items:center;display:inline-flex;transform:none}.ml-ribbon-group__footer.ml-ribbon-group__footer--overflow{visibility:hidden}.ml-ribbon-overflow-popover{--ml-rb-scale:1;--ml-rb-font-xs:calc(var(--el-font-size-extra-small) * var(--ml-rb-scale));--ml-rb-font-sm:calc(var(--el-font-size-small) * var(--ml-rb-scale));--ml-rb-font-base:calc(var(--el-font-size-base) * var(--ml-rb-scale));--ml-rb-control-height:calc(var(--el-component-size-default) * var(--ml-rb-scale));--ml-rb-compact-height:calc(var(--el-component-size-small) * var(--ml-rb-scale));--ml-rb-select-padding-x:6px;--ml-rb-select-font-size:calc(13px * var(--ml-rb-scale));padding:8px!important}.ml-ribbon-overflow-popover.ml-ribbon-overflow-popover--size-small{--ml-rb-scale:.92;--ml-rb-select-padding-x:4px}.ml-ribbon-overflow-popover.ml-ribbon-overflow-popover--size-large{--ml-rb-scale:1.08;--ml-rb-select-padding-x:7px}.ml-ribbon-overflow-popover .ml-ribbon-group__content{overflow:visible}.ml-ribbon-overflow-popover .ml-ribbon__panel .el-button:hover,.ml-ribbon-overflow-popover .ml-ribbon__panel .el-button:focus-visible,.ml-ribbon-overflow-popover .el-button:hover,.ml-ribbon-overflow-popover .el-button:focus-visible{background:var(--ml-rb-hover-bg);border-color:var(--ml-rb-hover-border)}.ml-ribbon-overflow-popover .ml-ribbon__panel .el-button:active,.ml-ribbon-overflow-popover .el-button:active{background:var(--ml-rb-active-bg);border-color:var(--ml-rb-active-border)}.ml-ribbon-overflow-list{flex-direction:column;gap:8px;max-height:320px;display:flex;overflow:auto}.ml-ribbon-overflow-group{border:1px solid var(--ml-rb-border);background:var(--ml-rb-surface-soft);border-radius:6px;padding:6px}.ml-ribbon-overflow-group__header{font-size:var(--ml-rb-font-sm);color:var(--ml-rb-tab-text);margin-bottom:6px;font-weight:600}.ml-ribbon-backstage{--ml-rb-backstage-scale:1;--ml-rb-backstage-nav-width:calc(260px * var(--ml-rb-backstage-scale));--ml-rb-backstage-nav-padding:calc(16px * var(--ml-rb-backstage-scale));--ml-rb-backstage-content-padding:calc(24px * var(--ml-rb-backstage-scale));--ml-rb-backstage-title-size:calc(var(--el-font-size-extra-large) * var(--ml-rb-backstage-scale));--ml-rb-backstage-text-size:calc(var(--el-font-size-base) * var(--ml-rb-backstage-scale));grid-template-columns:var(--ml-rb-backstage-nav-width) 1fr;height:100%;display:grid}.ml-ribbon-backstage.ml-ribbon-backstage--size-small{--ml-rb-backstage-scale:.92}.ml-ribbon-backstage.ml-ribbon-backstage--size-large{--ml-rb-backstage-scale:1.08}.ml-ribbon-backstage__nav{border-right:1px solid var(--ml-rb-border);padding:var(--ml-rb-backstage-nav-padding)}.ml-ribbon-backstage__content{padding:var(--ml-rb-backstage-content-padding)}.ml-ribbon-backstage__content h2{font-size:var(--ml-rb-backstage-title-size);margin:0;line-height:1.2}.ml-ribbon-backstage__content p{margin-top:calc(10px * var(--ml-rb-backstage-scale));font-size:var(--ml-rb-backstage-text-size);line-height:1.6}.ml-ribbon-backstage__menu .el-menu-item{min-height:calc(36px * var(--ml-rb-backstage-scale));line-height:calc(36px * var(--ml-rb-backstage-scale));font-size:var(--ml-rb-backstage-text-size)}.ml-ribbon-keytips{z-index:5000;border:1px solid var(--ml-rb-keytip-border);background:var(--ml-rb-keytip-bg);border-radius:8px;align-items:center;gap:6px;padding:8px;display:flex;position:fixed;bottom:12px;right:12px}.ml-ribbon-keytip{border:1px solid var(--ml-rb-keytip-border);background:var(--ml-rb-surface);font-size:var(--ml-rb-font-sm);border-radius:4px;padding:2px 6px}@media (width<=960px){.ml-ribbon-backstage{grid-template-columns:1fr}}.ml-ribbon-language-switch[data-v-de30394a]{display:inline-flex;align-items:center}.ml-ribbon-language-switch__select[data-v-de30394a]{width:110px}.ml-ribbon-property-field[data-v-40e77cd4]{--ml-ribbon-property-scale: var(--ml-rb-scale, 1);--ml-ribbon-property-gap: calc(6px * var(--ml-ribbon-property-scale));--ml-ribbon-property-icon-size: calc(18px * var(--ml-ribbon-property-scale));--ml-ribbon-property-column-width: calc( 188px * var(--ml-ribbon-property-scale) );display:inline-flex;align-items:center;gap:var(--ml-ribbon-property-gap);width:100%;min-height:var(--ml-rb-compact-height, 28px)}.ml-ribbon-property-field--disabled[data-v-40e77cd4]{opacity:.7}.ml-ribbon-property-field__icon[data-v-40e77cd4]{display:inline-flex;align-items:center;justify-content:center;width:var(--ml-ribbon-property-icon-size);height:var(--ml-ribbon-property-icon-size);flex:0 0 var(--ml-ribbon-property-icon-size);color:var(--el-text-color-secondary)}.ml-ribbon-property-field__icon[data-v-40e77cd4] svg{width:100%;height:100%}.ml-ribbon-property-field--line-type .ml-ribbon-property-field__icon[data-v-40e77cd4] path,.ml-ribbon-property-field--line-weight .ml-ribbon-property-field__icon[data-v-40e77cd4] path,.ml-ribbon-property-field--line-type .ml-ribbon-property-field__icon[data-v-40e77cd4] rect,.ml-ribbon-property-field--line-weight .ml-ribbon-property-field__icon[data-v-40e77cd4] rect{fill:currentColor;stroke:currentColor}.ml-ribbon-property-field__control[data-v-40e77cd4]{flex:1 1 auto;min-width:var(--ml-ribbon-property-column-width);width:var(--ml-ribbon-property-column-width);max-width:var(--ml-ribbon-property-column-width)}.ml-ribbon-property-field__control[data-v-40e77cd4] .el-select,.ml-ribbon-property-field__control[data-v-40e77cd4] .el-dropdown{width:100%}.ml-ribbon-toolbar-container{width:100%;box-sizing:border-box;z-index:6}.ml-ribbon-hatch-pattern-large-dropdown[data-v-1ebcdc3b]{--ml-ribbon-hatch-pattern-scale: var(--ml-rb-scale, 1);display:inline-flex;align-self:stretch;height:100%}.ml-ribbon-hatch-pattern-large-dropdown[data-v-1ebcdc3b] .el-popover__reference-wrapper{display:inline-flex;align-self:stretch;width:100%;height:100%}.ml-ribbon-hatch-pattern-large-dropdown__swatch[data-v-1ebcdc3b]{display:inline-block;width:calc(30px * var(--ml-ribbon-hatch-pattern-scale));height:calc(30px * var(--ml-ribbon-hatch-pattern-scale));border:1px solid var(--ml-rb-border-strong, #404a59);box-sizing:border-box}.ml-hatch-pattern-dropdown-popper{padding:0}.ml-hatch-pattern-dropdown-popper .el-popper__arrow{display:none}.ml-notification-item[data-v-8ce88f8a]{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid var(--el-border-color-lighter);transition:background-color .2s ease}.ml-notification-item[data-v-8ce88f8a]:hover{background-color:var(--el-fill-color-light)}.ml-notification-item[data-v-8ce88f8a]:last-child{border-bottom:none}.ml-notification-item-icon[data-v-8ce88f8a]{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-top:2px}.ml-notification-item--info .ml-notification-item-icon[data-v-8ce88f8a]{color:var(--el-color-info)}.ml-notification-item--warning .ml-notification-item-icon[data-v-8ce88f8a]{color:var(--el-color-warning)}.ml-notification-item--error .ml-notification-item-icon[data-v-8ce88f8a]{color:var(--el-color-danger)}.ml-notification-item--success .ml-notification-item-icon[data-v-8ce88f8a]{color:var(--el-color-success)}.ml-notification-item-content[data-v-8ce88f8a]{flex:1;min-width:0}.ml-notification-item-header[data-v-8ce88f8a]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.ml-notification-item-title[data-v-8ce88f8a]{margin:0;font-size:14px;font-weight:600;color:var(--el-text-color-primary);line-height:1.4;flex:1}.ml-notification-item-actions[data-v-8ce88f8a]{display:flex;align-items:center;gap:8px;flex-shrink:0}.ml-notification-item-message[data-v-8ce88f8a]{margin:0 0 8px;font-size:13px;color:var(--el-text-color-regular);line-height:1.4;word-wrap:break-word}.ml-notification-item-footer[data-v-8ce88f8a]{display:flex;align-items:center;justify-content:flex-end}.ml-notification-item-time[data-v-8ce88f8a]{font-size:12px;color:var(--el-text-color-secondary)}.dark .ml-notification-item[data-v-8ce88f8a]:hover{background-color:var(--el-fill-color-darker)}.ml-notification-center[data-v-cd4c651f]{position:fixed;bottom:calc(var(--ml-status-bar-height) + 20px);right:0;width:400px;max-width:100vw;box-sizing:border-box;max-height:500px;background:var(--el-bg-color);border:1px solid var(--el-border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:2000;display:flex;flex-direction:column;overflow:hidden}.ml-notification-center-header[data-v-cd4c651f]{display:flex;align-items:center;justify-content:space-between;padding:5px;height:30px;border-bottom:1px solid var(--el-border-color);background:var(--el-fill-color-light);position:relative}.ml-notification-center-title[data-v-cd4c651f]{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--el-text-color-primary)}.ml-notification-center-icon[data-v-cd4c651f]{color:var(--el-color-primary)}.ml-notification-center-actions[data-v-cd4c651f]{display:flex;align-items:center;gap:8px;margin-right:36px}.ml-notification-center-close[data-v-cd4c651f]{position:absolute;top:50%;right:8px;transform:translateY(-50%);padding:4px;min-width:auto;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.ml-notification-center-clear[data-v-cd4c651f]{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center}.ml-notification-center-clear[data-v-cd4c651f] .el-icon{font-size:16px}.ml-notification-center-content[data-v-cd4c651f]{flex:1;overflow-y:auto;max-height:400px}.ml-notification-center-empty[data-v-cd4c651f]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--el-text-color-secondary)}.ml-notification-center-empty-icon[data-v-cd4c651f]{font-size:48px;margin-bottom:16px;opacity:.5}.ml-notification-center-empty p[data-v-cd4c651f]{margin:0;font-size:14px}.ml-notification-list[data-v-cd4c651f]{padding:8px 0}.dark .ml-notification-center[data-v-cd4c651f]{background:var(--el-bg-color-page);border-color:var(--el-border-color)}.dark .ml-notification-center-header[data-v-cd4c651f]{background:var(--el-fill-color-darker)}.ml-notification-button[data-v-46fa6383]{border:none;padding:0;cursor:pointer;width:30px;position:relative}.ml-notification-badge[data-v-46fa6383]{position:absolute;top:-2px;right:-2px}.ml-notification-badge[data-v-46fa6383] .el-badge__content{font-size:10px;min-width:16px;height:16px;line-height:16px;padding:0 4px}.ml-osnap-setting-button[data-v-2c1a1e8b],.ml-point-style-button[data-v-fa98355b]{border:none;padding:0;cursor:pointer;width:30px}.ml-progress[data-v-6b45cf71]{width:100px}.ml-setting-button[data-v-1e137e77],.ml-warning-button[data-v-53fa8f43]{border:none;padding:0;cursor:pointer;width:30px}.ml-status-bar[data-v-08b67a2d]{box-sizing:border-box}.ml-status-bar.is-disabled[data-v-08b67a2d]{opacity:.6;pointer-events:none;-webkit-user-select:none;user-select:none}.ml-status-bar-left-button-group[data-v-08b67a2d]{border:none;box-sizing:border-box;height:var(--ml-status-bar-height)}.ml-status-bar-layout-button[data-v-08b67a2d]{box-sizing:border-box}.ml-status-bar-right-button-group[data-v-08b67a2d]{border:none;padding:0;height:var(--ml-status-bar-height)}.ml-status-bar-current-pos[data-v-08b67a2d]{border:none;height:100%}.ml-cad-container{position:absolute;top:0;right:0;bottom:0;left:0;display:block;outline:none;z-index:1;pointer-events:auto}.ml-cad-viewer-container{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:auto;overflow:hidden}.ml-cad-layout{position:relative;width:100%;height:100%}.ml-cad-viewer-container>.el-config-provider{display:block;height:100%}.ml-cad-header{position:absolute;top:0;left:0;right:0;z-index:6}.ml-cad-main{position:absolute;top:var(--ml-header-height);left:0;right:0;bottom:var(--ml-status-bar-height);min-height:0}.ml-cad-footer{position:absolute;left:0;right:0;bottom:0;z-index:6}.ml-file-name{position:fixed;top:20px;left:50%;color:var(--el-text-color-regular);transform:translate(-50%);text-align:center;pointer-events:none;z-index:3}.ml-rev-tool-bar{position:absolute;top:0;left:50%;transform:translate(-50%);margin-top:20px;z-index:2}