@robot-admin/naive-ui-components 0.11.8 → 0.12.1

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 (179) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +145 -28
  3. package/README_EN.md +145 -28
  4. package/SECURITY.md +1 -0
  5. package/dist/C_ActionBar.cjs +1 -1
  6. package/dist/C_ActionBar.css +53 -53
  7. package/dist/C_ActionBar.d.cts +2 -2
  8. package/dist/C_ActionBar.d.ts +2 -2
  9. package/dist/C_ActionBar.js +1 -1
  10. package/dist/C_ActionBar2.cjs +1 -1
  11. package/dist/C_ActionBar2.js +1 -1
  12. package/dist/C_AntV.css +67 -67
  13. package/dist/C_AntV2.cjs +3 -3
  14. package/dist/C_AntV2.js +3 -3
  15. package/dist/C_AudioPlayer.d.cts +1 -1
  16. package/dist/C_AudioPlayer.d.ts +1 -1
  17. package/dist/C_AvatarGroup.d.cts +1 -1
  18. package/dist/C_AvatarGroup.d.ts +1 -1
  19. package/dist/C_Barcode.d.cts +1 -1
  20. package/dist/C_Barcode.d.ts +1 -1
  21. package/dist/C_Breadcrumb.d.cts +1 -1
  22. package/dist/C_Breadcrumb.d.ts +1 -1
  23. package/dist/C_Captcha.cjs +1 -1
  24. package/dist/C_Captcha.css +193 -51
  25. package/dist/C_Captcha.d.cts +2 -3
  26. package/dist/C_Captcha.d.ts +2 -3
  27. package/dist/C_Captcha.js +1 -1
  28. package/dist/C_Captcha2.cjs +1 -1
  29. package/dist/C_Captcha2.js +1 -1
  30. package/dist/C_Cascade.d.cts +1 -1
  31. package/dist/C_Cascade.d.ts +1 -1
  32. package/dist/C_Chat.d.cts +1 -1
  33. package/dist/C_Chat.d.ts +1 -1
  34. package/dist/C_City.d.cts +1 -1
  35. package/dist/C_City.d.ts +1 -1
  36. package/dist/C_Code.d.cts +1 -1
  37. package/dist/C_Code.d.ts +1 -1
  38. package/dist/C_ContextMenu.d.cts +1 -1
  39. package/dist/C_ContextMenu.d.ts +1 -1
  40. package/dist/C_Date.d.cts +1 -1
  41. package/dist/C_Date.d.ts +1 -1
  42. package/dist/C_Editor.d.cts +1 -1
  43. package/dist/C_Editor.d.ts +1 -1
  44. package/dist/C_FormModal.cjs +1 -0
  45. package/dist/C_FormModal.css +41 -0
  46. package/dist/C_FormModal.d.cts +2 -0
  47. package/dist/C_FormModal.d.ts +3 -0
  48. package/dist/C_FormModal.js +1 -0
  49. package/dist/C_FormModal2.cjs +1 -0
  50. package/dist/C_FormModal2.js +1 -0
  51. package/dist/C_Login.css +210 -127
  52. package/dist/C_Login2.cjs +1 -1
  53. package/dist/C_Login2.js +1 -1
  54. package/dist/C_Map.css +3 -3
  55. package/dist/C_Map2.cjs +1 -1
  56. package/dist/C_Map2.js +1 -1
  57. package/dist/C_Menu.d.cts +1 -1
  58. package/dist/C_Table.base.css +86 -86
  59. package/dist/C_Table.cjs +1 -1
  60. package/dist/C_Table.css +86 -86
  61. package/dist/C_Table.d.ts +4 -3
  62. package/dist/C_Table.js +1 -1
  63. package/dist/C_Tabs.cjs +1 -0
  64. package/dist/C_Tabs.css +1 -0
  65. package/dist/C_Tabs.d.cts +2 -0
  66. package/dist/C_Tabs.d.ts +2 -0
  67. package/dist/C_Tabs.js +1 -0
  68. package/dist/C_TagsView.css +38 -38
  69. package/dist/C_TagsView2.cjs +1 -1
  70. package/dist/C_TagsView2.js +1 -1
  71. package/dist/constants.d.cts +2 -2
  72. package/dist/constants.d.ts +2 -2
  73. package/dist/constants2.d.cts +3 -3
  74. package/dist/constants2.d.ts +3 -3
  75. package/dist/constants3.d.cts +2 -2
  76. package/dist/constants3.d.ts +2 -2
  77. package/dist/constants4.d.cts +2 -2
  78. package/dist/constants4.d.ts +2 -2
  79. package/dist/constants5.d.cts +2 -2
  80. package/dist/constants5.d.ts +2 -2
  81. package/dist/data.d.cts +108 -0
  82. package/dist/data.d.ts +108 -0
  83. package/dist/data2.cjs +1 -0
  84. package/dist/data2.js +1 -0
  85. package/dist/index.cjs +1 -1
  86. package/dist/index.d.cts +49 -48
  87. package/dist/index.d.ts +51 -49
  88. package/dist/index.js +1 -1
  89. package/dist/index.vue.d.cts +72 -69
  90. package/dist/index.vue.d.ts +72 -69
  91. package/dist/index10.vue.d.cts +80 -39
  92. package/dist/index10.vue.d.ts +68 -77
  93. package/dist/index11.vue.d.cts +68 -77
  94. package/dist/index11.vue.d.ts +53 -68
  95. package/dist/index12.vue.d.cts +53 -68
  96. package/dist/index12.vue.d.ts +52 -58
  97. package/dist/index13.vue.d.cts +52 -58
  98. package/dist/index13.vue.d.ts +3 -3
  99. package/dist/index14.vue.d.cts +3 -3
  100. package/dist/index14.vue.d.ts +4 -4
  101. package/dist/index15.vue.d.cts +4 -4
  102. package/dist/index15.vue.d.ts +2 -2
  103. package/dist/index16.vue.d.cts +2 -2
  104. package/dist/index16.vue.d.ts +15 -12
  105. package/dist/index17.vue.d.cts +15 -12
  106. package/dist/index17.vue.d.ts +3 -3
  107. package/dist/index18.vue.d.cts +3 -3
  108. package/dist/index2.vue.d.cts +70 -65
  109. package/dist/index2.vue.d.ts +70 -65
  110. package/dist/index20.vue.d.cts +1 -1
  111. package/dist/index20.vue.d.ts +1 -1
  112. package/dist/index21.vue.d.cts +2 -2
  113. package/dist/index21.vue.d.ts +2 -2
  114. package/dist/index22.vue.d.cts +2 -2
  115. package/dist/index22.vue.d.ts +2 -2
  116. package/dist/index24.vue.d.cts +2 -2
  117. package/dist/index24.vue.d.ts +2 -2
  118. package/dist/index26.vue.d.cts +3 -3
  119. package/dist/index26.vue.d.ts +3 -3
  120. package/dist/index27.vue.d.cts +2 -2
  121. package/dist/index27.vue.d.ts +2 -2
  122. package/dist/index3.vue.d.cts +30 -80
  123. package/dist/index3.vue.d.ts +30 -80
  124. package/dist/index4.vue.d.cts +130 -30
  125. package/dist/index4.vue.d.ts +22 -30
  126. package/dist/index5.vue.d.cts +18 -126
  127. package/dist/index5.vue.d.ts +22 -19
  128. package/dist/index6.vue.d.cts +22 -19
  129. package/dist/index6.vue.d.ts +117 -22
  130. package/dist/index7.vue.d.cts +117 -22
  131. package/dist/index7.vue.d.ts +17 -110
  132. package/dist/index8.vue.d.cts +17 -110
  133. package/dist/index8.vue.d.ts +37 -24
  134. package/dist/index9.vue.d.cts +37 -24
  135. package/dist/index9.vue.d.ts +80 -39
  136. package/dist/mapUtils.d.cts +1 -1
  137. package/dist/mapUtils.d.ts +1 -1
  138. package/dist/presets.d.cts +96 -0
  139. package/dist/presets.d.ts +96 -0
  140. package/dist/resolver.cjs +1 -1
  141. package/dist/resolver.d.cts +1 -1
  142. package/dist/resolver.d.ts +1 -1
  143. package/dist/resolver.js +1 -1
  144. package/dist/style.css +501 -374
  145. package/dist/useCalendarEvents.d.cts +2 -2
  146. package/dist/useCalendarEvents.d.ts +2 -2
  147. package/dist/useCollapsePanel.d.cts +3 -3
  148. package/dist/useCollapsePanel.d.ts +3 -3
  149. package/dist/useCropperCore.d.cts +7 -7
  150. package/dist/useCropperCore.d.ts +7 -7
  151. package/dist/useDraggableLayout.d.cts +3 -3
  152. package/dist/useDraggableLayout.d.ts +3 -3
  153. package/dist/useDynamicFormState.d.cts +2 -2
  154. package/dist/useDynamicFormState.d.ts +2 -2
  155. package/dist/useEdgeInteraction.d.cts +2 -1
  156. package/dist/useEdgeInteraction.d.ts +2 -1
  157. package/dist/useInfiniteScroll.d.cts +3 -3
  158. package/dist/useInfiniteScroll.d.ts +3 -3
  159. package/dist/useQRCode.d.cts +2 -2
  160. package/dist/useQRCode.d.ts +2 -2
  161. package/dist/useSearchState.d.cts +9 -9
  162. package/dist/useSearchState.d.ts +9 -9
  163. package/dist/useSplitResize.d.cts +7 -7
  164. package/dist/useSplitResize.d.ts +7 -7
  165. package/dist/useTableQuery.cjs +3 -3
  166. package/dist/useTableQuery.d.cts +11 -1
  167. package/dist/useTableQuery.d.ts +11 -1
  168. package/dist/useTableQuery.js +3 -3
  169. package/dist/useTimeSelection.d.cts +3 -3
  170. package/dist/useTimeSelection.d.ts +3 -3
  171. package/dist/useTreeOperations.d.cts +6 -6
  172. package/dist/useTreeOperations.d.ts +6 -6
  173. package/dist/useWorkflowValidation.d.cts +5 -5
  174. package/dist/useWorkflowValidation.d.ts +5 -5
  175. package/dist/verification.d.cts +69 -4
  176. package/dist/verification.d.ts +69 -4
  177. package/package.json +2 -1
  178. package/dist/types.d.ts +0 -58
  179. package/dist/types2.d.cts +0 -58
package/dist/style.css CHANGED
@@ -1708,7 +1708,7 @@ svg.leaflet-image-layer.leaflet-interactive path {
1708
1708
  /* --- C_ActionBar --- */
1709
1709
  /* unplugin-vue-components disabled *//* 通用操作按钮组件样式 */
1710
1710
  /* ================= 主容器 ================= */
1711
- .c-action-bar[data-v-9dc5812b] {
1711
+ .c-action-bar[data-v-5e9fda00] {
1712
1712
  display: flex;
1713
1713
  align-items: center;
1714
1714
  justify-content: space-between;
@@ -1717,28 +1717,28 @@ svg.leaflet-image-layer.leaflet-interactive path {
1717
1717
  background: var(--c-bg-card);
1718
1718
  border-radius: var(--c-radius);
1719
1719
  border: 1px solid var(--c-border);
1720
- transition: all 0.3s ease;
1720
+ transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
1721
1721
  }
1722
- .c-action-bar.is-align-left[data-v-9dc5812b] {
1722
+ .c-action-bar.is-align-left[data-v-5e9fda00] {
1723
1723
  justify-content: flex-start;
1724
1724
  }
1725
- .c-action-bar.is-align-center[data-v-9dc5812b] {
1725
+ .c-action-bar.is-align-center[data-v-5e9fda00] {
1726
1726
  justify-content: center;
1727
1727
  }
1728
- .c-action-bar.is-align-right[data-v-9dc5812b] {
1728
+ .c-action-bar.is-align-right[data-v-5e9fda00] {
1729
1729
  justify-content: flex-end;
1730
1730
  }
1731
- .c-action-bar.is-align-space-between[data-v-9dc5812b] {
1731
+ .c-action-bar.is-align-space-between[data-v-5e9fda00] {
1732
1732
  justify-content: space-between;
1733
1733
  }
1734
- .c-action-bar.is-align-space-around[data-v-9dc5812b] {
1734
+ .c-action-bar.is-align-space-around[data-v-5e9fda00] {
1735
1735
  justify-content: space-around;
1736
1736
  }
1737
- .c-action-bar.is-compact[data-v-9dc5812b] {
1738
- padding: 12px;
1739
- margin-bottom: 12px;
1737
+ .c-action-bar.is-compact[data-v-5e9fda00] {
1738
+ padding: 8px;
1739
+ margin-bottom: 8px;
1740
1740
  }
1741
- .c-action-bar.is-inline[data-v-9dc5812b] {
1741
+ .c-action-bar.is-inline[data-v-5e9fda00] {
1742
1742
  padding: 0;
1743
1743
  margin-bottom: 0;
1744
1744
  background: transparent;
@@ -1746,97 +1746,97 @@ svg.leaflet-image-layer.leaflet-interactive path {
1746
1746
  border-radius: 0;
1747
1747
  box-shadow: none;
1748
1748
  }
1749
- .c-action-bar.is-wrap[data-v-9dc5812b] {
1749
+ .c-action-bar.is-wrap[data-v-5e9fda00] {
1750
1750
  flex-wrap: wrap;
1751
- gap: 12px;
1751
+ gap: 8px;
1752
1752
  }
1753
1753
  @media (max-width: 768px) {
1754
- .c-action-bar[data-v-9dc5812b] {
1754
+ .c-action-bar[data-v-5e9fda00] {
1755
1755
  flex-direction: column;
1756
1756
  gap: 12px;
1757
1757
  }
1758
- .c-action-bar .actions-group[data-v-9dc5812b] {
1758
+ .c-action-bar .actions-group[data-v-5e9fda00] {
1759
1759
  width: 100%;
1760
1760
  justify-content: center;
1761
1761
  }
1762
1762
  }
1763
1763
 
1764
1764
  /* ================= 按钮组 ================= */
1765
- .actions-group[data-v-9dc5812b] {
1765
+ .actions-group[data-v-5e9fda00] {
1766
1766
  display: flex;
1767
1767
  align-items: center;
1768
1768
  gap: 12px;
1769
1769
  flex-wrap: nowrap;
1770
1770
  }
1771
- .actions-group.actions-left[data-v-9dc5812b] {
1771
+ .actions-group.actions-left[data-v-5e9fda00] {
1772
1772
  justify-content: flex-start;
1773
1773
  }
1774
- .actions-group.actions-right[data-v-9dc5812b] {
1774
+ .actions-group.actions-right[data-v-5e9fda00] {
1775
1775
  justify-content: flex-end;
1776
1776
  }
1777
- .c-action-bar.has-only-left.is-align-center .actions-group.actions-left[data-v-9dc5812b], .c-action-bar.has-only-right.is-align-center .actions-group.actions-right[data-v-9dc5812b] {
1777
+ .c-action-bar.has-only-left.is-align-center .actions-group.actions-left[data-v-5e9fda00], .c-action-bar.has-only-right.is-align-center .actions-group.actions-right[data-v-5e9fda00] {
1778
1778
  width: 100%;
1779
1779
  justify-content: center;
1780
1780
  }
1781
- .c-action-bar.has-only-left.is-align-space-between .actions-group.actions-left[data-v-9dc5812b], .c-action-bar.has-only-right.is-align-space-between .actions-group.actions-right[data-v-9dc5812b] {
1781
+ .c-action-bar.has-only-left.is-align-space-between .actions-group.actions-left[data-v-5e9fda00], .c-action-bar.has-only-right.is-align-space-between .actions-group.actions-right[data-v-5e9fda00] {
1782
1782
  width: 100%;
1783
1783
  justify-content: space-between;
1784
1784
  }
1785
- .c-action-bar.has-only-left.is-align-space-around .actions-group.actions-left[data-v-9dc5812b], .c-action-bar.has-only-right.is-align-space-around .actions-group.actions-right[data-v-9dc5812b] {
1785
+ .c-action-bar.has-only-left.is-align-space-around .actions-group.actions-left[data-v-5e9fda00], .c-action-bar.has-only-right.is-align-space-around .actions-group.actions-right[data-v-5e9fda00] {
1786
1786
  width: 100%;
1787
1787
  justify-content: space-around;
1788
1788
  }
1789
- .c-action-bar.has-only-left.is-align-right .actions-group.actions-left[data-v-9dc5812b] {
1789
+ .c-action-bar.has-only-left.is-align-right .actions-group.actions-left[data-v-5e9fda00] {
1790
1790
  width: 100%;
1791
1791
  justify-content: flex-end;
1792
1792
  }
1793
- .c-action-bar.has-only-right.is-align-left .actions-group.actions-right[data-v-9dc5812b] {
1793
+ .c-action-bar.has-only-right.is-align-left .actions-group.actions-right[data-v-5e9fda00] {
1794
1794
  width: 100%;
1795
1795
  justify-content: flex-start;
1796
1796
  }
1797
- .actions-group[data-v-9dc5812b] .n-button {
1798
- transition: all 0.3s ease;
1797
+ .actions-group[data-v-5e9fda00] .n-button {
1798
+ transition: color 0.16s ease, background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
1799
1799
  font-weight: 500;
1800
1800
  }
1801
- .actions-group[data-v-9dc5812b] .n-button .n-icon {
1801
+ .actions-group[data-v-5e9fda00] .n-button .n-icon {
1802
1802
  transition: transform 0.3s ease;
1803
1803
  }
1804
- .actions-group[data-v-9dc5812b] .n-button:hover:not(:disabled) {
1805
- transform: translateY(-2px);
1806
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
1804
+ .actions-group[data-v-5e9fda00] .n-button:hover:not(:disabled) {
1805
+ transform: translateY(-1px);
1806
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
1807
1807
  }
1808
- .actions-group[data-v-9dc5812b] .n-button:hover:not(:disabled) .n-icon {
1808
+ .actions-group[data-v-5e9fda00] .n-button:hover:not(:disabled) .n-icon {
1809
1809
  transform: scale(1.1);
1810
1810
  }
1811
- .actions-group[data-v-9dc5812b] .n-button:active:not(:disabled) {
1811
+ .actions-group[data-v-5e9fda00] .n-button:active:not(:disabled) {
1812
1812
  transform: translateY(0);
1813
1813
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
1814
1814
  }
1815
- .actions-group[data-v-9dc5812b] .n-button:disabled {
1815
+ .actions-group[data-v-5e9fda00] .n-button:disabled {
1816
1816
  cursor: not-allowed;
1817
1817
  opacity: 0.5;
1818
1818
  }
1819
- .actions-group[data-v-9dc5812b] .n-button.n-button--loading {
1819
+ .actions-group[data-v-5e9fda00] .n-button.n-button--loading {
1820
1820
  pointer-events: none;
1821
1821
  }
1822
- .actions-group[data-v-9dc5812b] .n-button--primary-type:hover:not(:disabled) {
1822
+ .actions-group[data-v-5e9fda00] .n-button--primary-type:hover:not(:disabled) {
1823
1823
  box-shadow: 0 4px 12px rgba(24, 160, 88, 0.3);
1824
1824
  }
1825
- .actions-group[data-v-9dc5812b] .n-button--info-type:hover:not(:disabled) {
1825
+ .actions-group[data-v-5e9fda00] .n-button--info-type:hover:not(:disabled) {
1826
1826
  box-shadow: 0 4px 12px rgba(42, 148, 125, 0.3);
1827
1827
  }
1828
- .actions-group[data-v-9dc5812b] .n-button--success-type:hover:not(:disabled) {
1828
+ .actions-group[data-v-5e9fda00] .n-button--success-type:hover:not(:disabled) {
1829
1829
  box-shadow: 0 4px 12px rgba(99, 226, 183, 0.3);
1830
1830
  }
1831
- .actions-group[data-v-9dc5812b] .n-button--warning-type:hover:not(:disabled) {
1831
+ .actions-group[data-v-5e9fda00] .n-button--warning-type:hover:not(:disabled) {
1832
1832
  box-shadow: 0 4px 12px rgba(240, 138, 0, 0.3);
1833
1833
  }
1834
- .actions-group[data-v-9dc5812b] .n-button--error-type:hover:not(:disabled) {
1834
+ .actions-group[data-v-5e9fda00] .n-button--error-type:hover:not(:disabled) {
1835
1835
  box-shadow: 0 4px 12px rgba(208, 48, 80, 0.3);
1836
1836
  }
1837
1837
 
1838
1838
  /* ================= 中间插槽区域 ================= */
1839
- .actions-center[data-v-9dc5812b] {
1839
+ .actions-center[data-v-5e9fda00] {
1840
1840
  display: flex;
1841
1841
  align-items: center;
1842
1842
  justify-content: center;
@@ -1846,32 +1846,32 @@ svg.leaflet-image-layer.leaflet-interactive path {
1846
1846
  }
1847
1847
 
1848
1848
  /* ================= 分隔线 ================= */
1849
- .action-divider[data-v-9dc5812b] {
1849
+ .action-divider[data-v-5e9fda00] {
1850
1850
  margin: 0 8px !important;
1851
1851
  height: 20px;
1852
1852
  opacity: 0.3;
1853
1853
  transition: opacity 0.3s ease;
1854
1854
  }
1855
- .action-divider[data-v-9dc5812b]:hover {
1855
+ .action-divider[data-v-5e9fda00]:hover {
1856
1856
  opacity: 0.6;
1857
1857
  }
1858
1858
 
1859
1859
  /* ================= 下拉菜单优化 ================= */
1860
- [data-v-9dc5812b] .n-dropdown-option {
1860
+ [data-v-5e9fda00] .n-dropdown-option {
1861
1861
  transition: all 0.2s ease;
1862
1862
  }
1863
- [data-v-9dc5812b] .n-dropdown-option:hover {
1863
+ [data-v-5e9fda00] .n-dropdown-option:hover {
1864
1864
  transform: translateX(4px);
1865
1865
  }
1866
- [data-v-9dc5812b] .n-dropdown-option .n-icon {
1866
+ [data-v-5e9fda00] .n-dropdown-option .n-icon {
1867
1867
  transition: transform 0.2s ease;
1868
1868
  }
1869
- [data-v-9dc5812b] .n-dropdown-option:hover .n-icon {
1869
+ [data-v-5e9fda00] .n-dropdown-option:hover .n-icon {
1870
1870
  transform: scale(1.15);
1871
1871
  }
1872
1872
 
1873
1873
  /* ================= 加载动画 ================= */
1874
- @keyframes button-loading-9dc5812b {
1874
+ @keyframes button-loading-5e9fda00 {
1875
1875
  0% {
1876
1876
  opacity: 0.6;
1877
1877
  }
@@ -1882,12 +1882,12 @@ svg.leaflet-image-layer.leaflet-interactive path {
1882
1882
  opacity: 0.6;
1883
1883
  }
1884
1884
  }
1885
- [data-v-9dc5812b] .n-button--loading {
1886
- animation: button-loading-9dc5812b 1.5s ease-in-out infinite;
1885
+ [data-v-5e9fda00] .n-button--loading {
1886
+ animation: button-loading-5e9fda00 1.5s ease-in-out infinite;
1887
1887
  }
1888
1888
 
1889
1889
  /* ================= Tooltip 样式 ================= */
1890
- [data-v-9dc5812b] .n-tooltip .n-tooltip__content {
1890
+ [data-v-5e9fda00] .n-tooltip .n-tooltip__content {
1891
1891
  font-size: 12px;
1892
1892
  padding: 6px 10px;
1893
1893
  border-radius: 4px;
@@ -1896,17 +1896,17 @@ svg.leaflet-image-layer.leaflet-interactive path {
1896
1896
  }
1897
1897
 
1898
1898
  /* ================= 暗黑模式适配 ================= */
1899
- html.dark .c-action-bar[data-v-9dc5812b] {
1899
+ html.dark .c-action-bar[data-v-5e9fda00] {
1900
1900
  border-color: rgba(255, 255, 255, 0.09);
1901
1901
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
1902
1902
  }
1903
- html.dark .actions-group[data-v-9dc5812b] .n-button:hover:not(:disabled) {
1903
+ html.dark .actions-group[data-v-5e9fda00] .n-button:hover:not(:disabled) {
1904
1904
  box-shadow: 0 4px 12px rgba(255, 255, 255, 0.1);
1905
1905
  }
1906
- html.dark .action-divider[data-v-9dc5812b] {
1906
+ html.dark .action-divider[data-v-5e9fda00] {
1907
1907
  opacity: 0.15;
1908
1908
  }
1909
- html.dark .action-divider[data-v-9dc5812b]:hover {
1909
+ html.dark .action-divider[data-v-5e9fda00]:hover {
1910
1910
  opacity: 0.4;
1911
1911
  }
1912
1912
 
@@ -1922,20 +1922,20 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
1922
1922
  /* 卡片样式 */
1923
1923
  /* 滚动条样式 */
1924
1924
  /* 编辑器容器样式 */
1925
- .er-layout[data-v-19cb7526] {
1925
+ .er-layout[data-v-edf47b23] {
1926
1926
  display: flex;
1927
1927
  flex-direction: column;
1928
1928
  width: 100%;
1929
1929
  height: 100%;
1930
1930
  min-height: 400px;
1931
1931
  }
1932
- .er-layout .toolbar[data-v-19cb7526] {
1932
+ .er-layout .toolbar[data-v-edf47b23] {
1933
1933
  padding: 12px;
1934
1934
  background: var(--n-color-embedded);
1935
1935
  border-bottom: 1px solid var(--c-border);
1936
1936
  flex-shrink: 0;
1937
1937
  }
1938
- .er-layout .graph-container[data-v-19cb7526] {
1938
+ .er-layout .graph-container[data-v-edf47b23] {
1939
1939
  flex: 1;
1940
1940
  position: relative;
1941
1941
  min-height: 300px;
@@ -1943,71 +1943,71 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
1943
1943
  border: 1px solid var(--c-border);
1944
1944
  overflow: hidden;
1945
1945
  }
1946
- .er-layout .graph-container[data-v-19cb7526] .x6-graph,
1947
- .er-layout .graph-container[data-v-19cb7526] .x6-graph-svg {
1946
+ .er-layout .graph-container[data-v-edf47b23] .x6-graph,
1947
+ .er-layout .graph-container[data-v-edf47b23] .x6-graph-svg {
1948
1948
  width: 100% !important;
1949
1949
  height: 100% !important;
1950
1950
  display: block;
1951
1951
  }
1952
- .er-layout .graph-container[data-v-19cb7526] .x6-graph-svg-stage {
1952
+ .er-layout .graph-container[data-v-edf47b23] .x6-graph-svg-stage {
1953
1953
  outline: none;
1954
1954
  }
1955
- .er-layout .table-editor[data-v-19cb7526] {
1955
+ .er-layout .table-editor[data-v-edf47b23] {
1956
1956
  height: 100%;
1957
1957
  overflow-y: auto;
1958
1958
  padding: 0 4px;
1959
1959
  }
1960
- .er-layout .table-editor[data-v-19cb7526]::-webkit-scrollbar {
1960
+ .er-layout .table-editor[data-v-edf47b23]::-webkit-scrollbar {
1961
1961
  width: 6px;
1962
1962
  }
1963
- .er-layout .table-editor[data-v-19cb7526]::-webkit-scrollbar-thumb {
1963
+ .er-layout .table-editor[data-v-edf47b23]::-webkit-scrollbar-thumb {
1964
1964
  background: var(--n-scrollbar-color);
1965
1965
  border-radius: 3px;
1966
1966
  }
1967
- .er-layout .table-editor .fields-container[data-v-19cb7526] {
1967
+ .er-layout .table-editor .fields-container[data-v-edf47b23] {
1968
1968
  max-height: calc(100vh - 400px);
1969
1969
  overflow-y: auto;
1970
1970
  }
1971
- .er-layout .table-editor .fields-container[data-v-19cb7526]::-webkit-scrollbar {
1971
+ .er-layout .table-editor .fields-container[data-v-edf47b23]::-webkit-scrollbar {
1972
1972
  width: 6px;
1973
1973
  }
1974
- .er-layout .table-editor .fields-container[data-v-19cb7526]::-webkit-scrollbar-thumb {
1974
+ .er-layout .table-editor .fields-container[data-v-edf47b23]::-webkit-scrollbar-thumb {
1975
1975
  background: var(--n-scrollbar-color);
1976
1976
  border-radius: 3px;
1977
1977
  }
1978
- .er-layout .table-editor .fields-container .field-card[data-v-19cb7526] {
1978
+ .er-layout .table-editor .fields-container .field-card[data-v-edf47b23] {
1979
1979
  margin-bottom: 16px;
1980
1980
  }
1981
- .er-layout .table-editor .fields-container .field-card .field-header[data-v-19cb7526] {
1981
+ .er-layout .table-editor .fields-container .field-card .field-header[data-v-edf47b23] {
1982
1982
  display: flex;
1983
1983
  justify-content: space-between;
1984
1984
  align-items: center;
1985
1985
  font-size: 13px;
1986
1986
  font-weight: 500;
1987
1987
  }
1988
- .er-layout .table-editor .fields-container .field-card[data-v-19cb7526] .n-card-header {
1988
+ .er-layout .table-editor .fields-container .field-card[data-v-edf47b23] .n-card-header {
1989
1989
  padding: 10px 16px 8px;
1990
1990
  }
1991
- .er-layout .table-editor .fields-container .field-card[data-v-19cb7526] .n-card__content {
1991
+ .er-layout .table-editor .fields-container .field-card[data-v-edf47b23] .n-card__content {
1992
1992
  padding: 12px 16px 16px;
1993
1993
  }
1994
- .er-layout .table-editor .fields-container[data-v-19cb7526] .n-select {
1994
+ .er-layout .table-editor .fields-container[data-v-edf47b23] .n-select {
1995
1995
  min-width: 140px;
1996
1996
  }
1997
- .er-layout .table-editor .fields-container[data-v-19cb7526] .n-select .n-select-menu {
1997
+ .er-layout .table-editor .fields-container[data-v-edf47b23] .n-select .n-select-menu {
1998
1998
  max-height: 200px;
1999
1999
  z-index: 9999;
2000
2000
  }
2001
- .er-layout .table-editor .fields-container .n-form-item[data-v-19cb7526] {
2001
+ .er-layout .table-editor .fields-container .n-form-item[data-v-edf47b23] {
2002
2002
  margin-bottom: 8px;
2003
2003
  }
2004
- .er-layout .table-editor .fields-container .n-form-item .n-form-item-label[data-v-19cb7526] {
2004
+ .er-layout .table-editor .fields-container .n-form-item .n-form-item-label[data-v-edf47b23] {
2005
2005
  font-size: 12px;
2006
2006
  color: #666;
2007
2007
  margin-bottom: 4px;
2008
2008
  white-space: nowrap;
2009
2009
  }
2010
- .er-layout .table-editor .fields-container[data-v-19cb7526] .n-input {
2010
+ .er-layout .table-editor .fields-container[data-v-edf47b23] .n-input {
2011
2011
  min-width: 100px;
2012
2012
  }
2013
2013
  /* unplugin-vue-components disabled *//* BPMN 布局样式 */
@@ -2020,7 +2020,7 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2020
2020
  /* 卡片样式 */
2021
2021
  /* 滚动条样式 */
2022
2022
  /* 编辑器容器样式 */
2023
- .bpmn-layout[data-v-d588444e] {
2023
+ .bpmn-layout[data-v-700d0476] {
2024
2024
  display: flex;
2025
2025
  flex-direction: column;
2026
2026
  width: 100%;
@@ -2030,28 +2030,28 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2030
2030
  border-radius: 6px;
2031
2031
  overflow: hidden;
2032
2032
  }
2033
- .bpmn-layout .top-toolbar[data-v-d588444e] {
2033
+ .bpmn-layout .top-toolbar[data-v-700d0476] {
2034
2034
  background: var(--c-bg-card);
2035
2035
  border-bottom: 1px solid var(--c-border);
2036
2036
  padding: 10px 16px;
2037
2037
  flex-shrink: 0;
2038
2038
  }
2039
- .bpmn-layout .top-toolbar .toolbar-section[data-v-d588444e] {
2039
+ .bpmn-layout .top-toolbar .toolbar-section[data-v-700d0476] {
2040
2040
  display: flex;
2041
2041
  align-items: center;
2042
2042
  gap: 16px;
2043
2043
  }
2044
- .bpmn-layout .top-toolbar .toolbar-section .toolbar-group[data-v-d588444e] {
2044
+ .bpmn-layout .top-toolbar .toolbar-section .toolbar-group[data-v-700d0476] {
2045
2045
  display: flex;
2046
2046
  align-items: center;
2047
2047
  gap: 8px;
2048
2048
  }
2049
- .bpmn-layout .main-content[data-v-d588444e] {
2049
+ .bpmn-layout .main-content[data-v-700d0476] {
2050
2050
  display: flex;
2051
2051
  flex: 1;
2052
2052
  height: 0;
2053
2053
  }
2054
- .bpmn-layout .main-content .left-panel[data-v-d588444e] {
2054
+ .bpmn-layout .main-content .left-panel[data-v-700d0476] {
2055
2055
  width: 180px;
2056
2056
  background: var(--c-bg-card);
2057
2057
  border-right: 1px solid var(--c-border);
@@ -2059,20 +2059,20 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2059
2059
  flex-direction: column;
2060
2060
  flex-shrink: 0;
2061
2061
  }
2062
- .bpmn-layout .main-content .left-panel .panel-title[data-v-d588444e] {
2062
+ .bpmn-layout .main-content .left-panel .panel-title[data-v-700d0476] {
2063
2063
  padding: 16px;
2064
2064
  font-weight: 600;
2065
2065
  font-size: 14px;
2066
2066
  color: var(--c-text-1);
2067
2067
  border-bottom: 1px solid var(--c-border);
2068
2068
  }
2069
- .bpmn-layout .main-content .left-panel .element-grid[data-v-d588444e] {
2069
+ .bpmn-layout .main-content .left-panel .element-grid[data-v-700d0476] {
2070
2070
  padding: 16px 12px;
2071
2071
  display: grid;
2072
2072
  grid-template-columns: 1fr 1fr;
2073
2073
  gap: 12px;
2074
2074
  }
2075
- .bpmn-layout .main-content .left-panel .element-grid .element-item[data-v-d588444e] {
2075
+ .bpmn-layout .main-content .left-panel .element-grid .element-item[data-v-700d0476] {
2076
2076
  display: flex;
2077
2077
  flex-direction: column;
2078
2078
  align-items: center;
@@ -2085,56 +2085,56 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2085
2085
  transition: all 0.2s ease;
2086
2086
  border: 1px solid transparent;
2087
2087
  }
2088
- .bpmn-layout .main-content .left-panel .element-grid .element-item[data-v-d588444e]:hover {
2088
+ .bpmn-layout .main-content .left-panel .element-grid .element-item[data-v-700d0476]:hover {
2089
2089
  background: rgba(24, 144, 255, 0.1);
2090
2090
  border-color: rgba(24, 144, 255, 0.4);
2091
2091
  color: var(--c-primary);
2092
2092
  }
2093
- .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon[data-v-d588444e] {
2093
+ .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon[data-v-700d0476] {
2094
2094
  flex-shrink: 0;
2095
2095
  border: 2px solid var(--c-border);
2096
2096
  display: flex;
2097
2097
  align-items: center;
2098
2098
  justify-content: center;
2099
2099
  }
2100
- .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.circle[data-v-d588444e] {
2100
+ .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.circle[data-v-700d0476] {
2101
2101
  width: 24px;
2102
2102
  height: 24px;
2103
2103
  border-radius: 50%;
2104
2104
  }
2105
- .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.rect[data-v-d588444e] {
2105
+ .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.rect[data-v-700d0476] {
2106
2106
  width: 32px;
2107
2107
  height: 20px;
2108
2108
  border-radius: 4px;
2109
2109
  }
2110
- .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.diamond[data-v-d588444e] {
2110
+ .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.diamond[data-v-700d0476] {
2111
2111
  width: 24px;
2112
2112
  height: 24px;
2113
2113
  transform: rotate(45deg);
2114
2114
  border-radius: 3px;
2115
2115
  }
2116
- .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.start-event[data-v-d588444e] {
2116
+ .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.start-event[data-v-700d0476] {
2117
2117
  border-color: #52c41a;
2118
2118
  background: #f6ffed;
2119
2119
  }
2120
- .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.end-event[data-v-d588444e] {
2120
+ .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.end-event[data-v-700d0476] {
2121
2121
  border-color: #ff4d4f;
2122
2122
  background: #fff2f0;
2123
2123
  }
2124
- .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.activity[data-v-d588444e] {
2124
+ .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.activity[data-v-700d0476] {
2125
2125
  border-color: #1890ff;
2126
2126
  background: #e6f7ff;
2127
2127
  }
2128
- .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.gateway[data-v-d588444e] {
2128
+ .bpmn-layout .main-content .left-panel .element-grid .element-item .element-icon.gateway[data-v-700d0476] {
2129
2129
  border-color: #722ed1;
2130
2130
  background: #f9f0ff;
2131
2131
  }
2132
- .bpmn-layout .main-content .graph-wrapper[data-v-d588444e] {
2132
+ .bpmn-layout .main-content .graph-wrapper[data-v-700d0476] {
2133
2133
  flex: 1;
2134
2134
  display: flex;
2135
2135
  flex-direction: column;
2136
2136
  }
2137
- .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-d588444e] {
2137
+ .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-700d0476] {
2138
2138
  flex: 1;
2139
2139
  position: relative;
2140
2140
  min-height: 300px;
@@ -2142,31 +2142,31 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2142
2142
  border: 1px solid var(--c-border);
2143
2143
  overflow: hidden;
2144
2144
  }
2145
- .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-d588444e] .x6-graph,
2146
- .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-d588444e] .x6-graph-svg {
2145
+ .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-700d0476] .x6-graph,
2146
+ .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-700d0476] .x6-graph-svg {
2147
2147
  width: 100% !important;
2148
2148
  height: 100% !important;
2149
2149
  display: block;
2150
2150
  }
2151
- .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-d588444e] .x6-graph-svg-stage {
2151
+ .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-700d0476] .x6-graph-svg-stage {
2152
2152
  outline: none;
2153
2153
  }
2154
- .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-d588444e] {
2154
+ .bpmn-layout .main-content .graph-wrapper .graph-container[data-v-700d0476] {
2155
2155
  border-radius: 4px;
2156
2156
  }
2157
- .n-drawer .property-panel[data-v-d588444e] {
2157
+ .n-drawer .property-panel[data-v-700d0476] {
2158
2158
  padding: 16px;
2159
2159
  }
2160
- .n-drawer .property-panel .property-item[data-v-d588444e] {
2160
+ .n-drawer .property-panel .property-item[data-v-700d0476] {
2161
2161
  margin-bottom: 16px;
2162
2162
  }
2163
- .n-drawer .property-panel .property-item .property-label[data-v-d588444e] {
2163
+ .n-drawer .property-panel .property-item .property-label[data-v-700d0476] {
2164
2164
  font-size: 14px;
2165
2165
  font-weight: 500;
2166
2166
  color: var(--c-text-1);
2167
2167
  margin-bottom: 8px;
2168
2168
  }
2169
- .n-drawer .property-panel .form-actions[data-v-d588444e] {
2169
+ .n-drawer .property-panel .form-actions[data-v-700d0476] {
2170
2170
  margin-top: 24px;
2171
2171
  padding-top: 16px;
2172
2172
  border-top: 1px solid var(--c-border);
@@ -2225,20 +2225,20 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2225
2225
  /* 卡片样式 */
2226
2226
  /* 滚动条样式 */
2227
2227
  /* 编辑器容器样式 */
2228
- .uml-layout[data-v-e4891a91] {
2228
+ .uml-layout[data-v-dcbc422b] {
2229
2229
  display: flex;
2230
2230
  flex-direction: column;
2231
2231
  width: 100%;
2232
2232
  height: 100%;
2233
2233
  min-height: 400px;
2234
2234
  }
2235
- .uml-layout .toolbar[data-v-e4891a91] {
2235
+ .uml-layout .toolbar[data-v-dcbc422b] {
2236
2236
  padding: 12px;
2237
2237
  background: var(--n-color-embedded);
2238
2238
  border-bottom: 1px solid var(--c-border);
2239
2239
  flex-shrink: 0;
2240
2240
  }
2241
- .uml-layout .graph-container[data-v-e4891a91] {
2241
+ .uml-layout .graph-container[data-v-dcbc422b] {
2242
2242
  flex: 1;
2243
2243
  position: relative;
2244
2244
  min-height: 300px;
@@ -2246,59 +2246,59 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2246
2246
  border: 1px solid var(--c-border);
2247
2247
  overflow: hidden;
2248
2248
  }
2249
- .uml-layout .graph-container[data-v-e4891a91] .x6-graph,
2250
- .uml-layout .graph-container[data-v-e4891a91] .x6-graph-svg {
2249
+ .uml-layout .graph-container[data-v-dcbc422b] .x6-graph,
2250
+ .uml-layout .graph-container[data-v-dcbc422b] .x6-graph-svg {
2251
2251
  width: 100% !important;
2252
2252
  height: 100% !important;
2253
2253
  display: block;
2254
2254
  }
2255
- .uml-layout .graph-container[data-v-e4891a91] .x6-graph-svg-stage {
2255
+ .uml-layout .graph-container[data-v-dcbc422b] .x6-graph-svg-stage {
2256
2256
  outline: none;
2257
2257
  }
2258
2258
 
2259
2259
  /* 抽屉编辑器样式 - 使用单独的样式块避免 scoped 问题 */
2260
- .class-editor[data-v-e4891a91] {
2260
+ .class-editor[data-v-dcbc422b] {
2261
2261
  padding: 20px;
2262
2262
  height: calc(100vh - 60px);
2263
2263
  overflow-y: auto;
2264
2264
  }
2265
- .class-editor[data-v-e4891a91]::-webkit-scrollbar {
2265
+ .class-editor[data-v-dcbc422b]::-webkit-scrollbar {
2266
2266
  width: 6px;
2267
2267
  }
2268
- .class-editor[data-v-e4891a91]::-webkit-scrollbar-thumb {
2268
+ .class-editor[data-v-dcbc422b]::-webkit-scrollbar-thumb {
2269
2269
  background: var(--n-scrollbar-color);
2270
2270
  border-radius: 3px;
2271
2271
  }
2272
- .class-editor .section[data-v-e4891a91] {
2272
+ .class-editor .section[data-v-dcbc422b] {
2273
2273
  max-height: 300px;
2274
2274
  overflow-y: auto;
2275
2275
  padding-right: 4px;
2276
2276
  }
2277
- .class-editor .section[data-v-e4891a91]::-webkit-scrollbar {
2277
+ .class-editor .section[data-v-dcbc422b]::-webkit-scrollbar {
2278
2278
  width: 6px;
2279
2279
  }
2280
- .class-editor .section[data-v-e4891a91]::-webkit-scrollbar-thumb {
2280
+ .class-editor .section[data-v-dcbc422b]::-webkit-scrollbar-thumb {
2281
2281
  background: var(--n-scrollbar-color);
2282
2282
  border-radius: 3px;
2283
2283
  }
2284
- .class-editor .section .item[data-v-e4891a91] {
2284
+ .class-editor .section .item[data-v-dcbc422b] {
2285
2285
  margin-bottom: 8px;
2286
2286
  }
2287
- .class-editor .section .n-card[data-v-e4891a91] {
2287
+ .class-editor .section .n-card[data-v-dcbc422b] {
2288
2288
  border: 1px solid var(--c-border);
2289
2289
  }
2290
- .class-editor .section .n-card .n-card-header[data-v-e4891a91] {
2290
+ .class-editor .section .n-card .n-card-header[data-v-dcbc422b] {
2291
2291
  padding: 8px 12px;
2292
2292
  background: var(--n-color-embedded);
2293
2293
  border-bottom: 1px solid var(--c-border);
2294
2294
  }
2295
- .class-editor .section .n-card .n-card__content[data-v-e4891a91] {
2295
+ .class-editor .section .n-card .n-card__content[data-v-dcbc422b] {
2296
2296
  padding: 12px;
2297
2297
  }
2298
- .class-editor .section .n-form-item[data-v-e4891a91] {
2298
+ .class-editor .section .n-form-item[data-v-dcbc422b] {
2299
2299
  margin-bottom: 8px;
2300
2300
  }
2301
- .class-editor .section .n-form-item .n-form-item-label[data-v-e4891a91] {
2301
+ .class-editor .section .n-form-item .n-form-item-label[data-v-dcbc422b] {
2302
2302
  font-size: 12px;
2303
2303
  color: #666;
2304
2304
  margin-bottom: 4px;
@@ -2797,69 +2797,134 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2797
2797
 
2798
2798
 
2799
2799
  /* --- C_Captcha --- */
2800
- /* unplugin-vue-components disabled */.c-captcha-modern[data-v-29edd4c3] {
2800
+ /* unplugin-vue-components disabled */.c-captcha-modern[data-v-fe4cd59a] {
2801
+ --cc-height: 44px;
2802
+ --cc-radius: 12px;
2803
+ --cc-color: rgba(255, 255, 255, 0.76);
2804
+ --cc-icon-color: #8fb5ff;
2805
+ --cc-bg: rgba(255, 255, 255, 0.055);
2806
+ --cc-bg-hover: rgba(255, 255, 255, 0.09);
2807
+ --cc-border: rgba(255, 255, 255, 0.14);
2808
+ --cc-border-hover: rgba(126, 166, 255, 0.55);
2809
+ --cc-focus: #77a4ff;
2801
2810
  width: 100%;
2802
2811
  font-family: inherit;
2803
2812
  }
2804
- .captcha-shell[data-v-29edd4c3] {
2813
+ .captcha-shell[data-v-fe4cd59a] {
2805
2814
  position: relative;
2806
2815
  width: 100%;
2807
- max-width: 280px;
2816
+ max-width: none;
2808
2817
  margin: 0 auto;
2809
2818
  }
2810
- .captcha-trigger[data-v-29edd4c3] {
2819
+ .captcha-trigger[data-v-fe4cd59a] {
2811
2820
  appearance: none;
2812
- border: 0;
2813
- background: transparent;
2814
- color: inherit;
2815
- font: inherit;
2816
2821
  width: 100%;
2817
- padding: 12px 16px;
2822
+ min-height: var(--cc-height);
2823
+ padding: 0 14px;
2824
+ border: 1px solid var(--cc-border);
2825
+ border-radius: var(--cc-radius);
2826
+ background: var(--cc-bg);
2827
+ color: var(--cc-color);
2828
+ font: inherit;
2818
2829
  cursor: pointer;
2819
2830
  user-select: none;
2820
2831
  display: flex;
2821
2832
  align-items: center;
2822
2833
  justify-content: center;
2823
2834
  position: relative;
2824
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
2835
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
2836
+ transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
2837
+ }
2838
+ .captcha-trigger[data-v-fe4cd59a]::after {
2839
+ content: "";
2840
+ width: 7px;
2841
+ height: 7px;
2842
+ margin-left: 12px;
2843
+ border-top: 1.5px solid currentColor;
2844
+ border-right: 1.5px solid currentColor;
2845
+ opacity: 0.48;
2846
+ transform: rotate(45deg);
2847
+ transition: opacity 0.2s ease, transform 0.2s ease;
2848
+ }
2849
+ .altcha-provider[data-v-fe4cd59a] {
2850
+ width: 100%;
2851
+ min-height: var(--cc-height);
2825
2852
  }
2826
- .captcha-trigger[data-v-29edd4c3]:hover:not(.disabled) {
2853
+ .altcha-provider.is-disabled[data-v-fe4cd59a] {
2854
+ opacity: 0.68;
2855
+ pointer-events: none;
2856
+ }
2857
+ .altcha-widget[data-v-fe4cd59a] {
2858
+ display: block;
2859
+ width: 100%;
2860
+ min-height: var(--cc-height);
2861
+ --altcha-max-width: 100%;
2862
+ --altcha-border-radius: var(--cc-radius);
2863
+ --altcha-border-width: 1px;
2864
+ --altcha-border-color: var(--cc-border);
2865
+ --altcha-color-base: var(--cc-bg);
2866
+ --altcha-color-base-content: var(--cc-color);
2867
+ --altcha-color-primary: var(--cc-focus);
2868
+ --altcha-color-success: #65d39a;
2869
+ --altcha-checkbox-size: 20px;
2870
+ --altcha-padding: 9px 12px;
2871
+ }
2872
+ .captcha-trigger[data-v-fe4cd59a]:hover:not(.disabled) {
2827
2873
  transform: translateY(-1px);
2874
+ border-color: var(--cc-border-hover);
2875
+ background: var(--cc-bg-hover);
2876
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 8px 22px rgba(5, 12, 30, 0.18);
2828
2877
  }
2829
- .captcha-trigger.disabled[data-v-29edd4c3] {
2830
- opacity: 0.5;
2878
+ .captcha-trigger[data-v-fe4cd59a]:hover:not(.disabled)::after {
2879
+ opacity: 0.86;
2880
+ transform: translateX(2px) rotate(45deg);
2881
+ }
2882
+ .captcha-trigger.disabled[data-v-fe4cd59a] {
2883
+ opacity: 0.68;
2831
2884
  cursor: not-allowed;
2832
2885
  }
2833
- .captcha-trigger[data-v-29edd4c3]:focus-visible,
2834
- .refresh-button[data-v-29edd4c3]:focus-visible {
2835
- outline: 2px solid var(--n-color-target, #18a058);
2886
+ .captcha-trigger[data-v-fe4cd59a]:focus-visible,
2887
+ .refresh-button[data-v-fe4cd59a]:focus-visible {
2888
+ outline: 2px solid var(--cc-focus);
2836
2889
  outline-offset: 2px;
2837
2890
  }
2838
- .captcha-content[data-v-29edd4c3] {
2891
+ .captcha-content[data-v-fe4cd59a] {
2839
2892
  display: flex;
2840
2893
  align-items: center;
2841
- justify-content: center;
2894
+ justify-content: flex-start;
2842
2895
  gap: 8px;
2843
2896
  flex: 1;
2844
2897
  }
2845
- .captcha-icon[data-v-29edd4c3] {
2846
- font-size: 18px;
2847
- width: 20px;
2848
- height: 20px;
2898
+ .captcha-icon[data-v-fe4cd59a] {
2899
+ width: 22px;
2900
+ height: 22px;
2849
2901
  display: flex;
2850
2902
  align-items: center;
2851
2903
  justify-content: center;
2852
2904
  flex-shrink: 0;
2905
+ color: var(--cc-icon-color);
2853
2906
  }
2854
- .captcha-text[data-v-29edd4c3] {
2855
- color: rgba(255, 255, 255, 0.8);
2856
- font-size: 14px;
2907
+ .captcha-state-icon[data-v-fe4cd59a] {
2908
+ transition: color 0.2s ease, transform 0.2s ease;
2909
+ }
2910
+ .captcha-state-icon.is-spinning[data-v-fe4cd59a] {
2911
+ animation: captcha-spin-fe4cd59a 0.8s linear infinite;
2912
+ }
2913
+ .captcha-state-icon.is-success[data-v-fe4cd59a] {
2914
+ color: #65d39a;
2915
+ }
2916
+ .captcha-state-icon.is-error[data-v-fe4cd59a] {
2917
+ color: #ff7f8d;
2918
+ }
2919
+ .captcha-text[data-v-fe4cd59a] {
2920
+ color: inherit;
2921
+ font-size: 13px;
2857
2922
  font-weight: 500;
2858
- letter-spacing: 0.3px;
2923
+ letter-spacing: 0.4px;
2859
2924
  text-align: center;
2860
2925
  white-space: nowrap;
2861
2926
  }
2862
- .refresh-button[data-v-29edd4c3] {
2927
+ .refresh-button[data-v-fe4cd59a] {
2863
2928
  appearance: none;
2864
2929
  border: 0;
2865
2930
  background: transparent;
@@ -2873,30 +2938,51 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2873
2938
  align-items: center;
2874
2939
  justify-content: center;
2875
2940
  cursor: pointer;
2876
- transition: all 0.3s ease;
2941
+ border-radius: 8px;
2942
+ transition: color 0.2s ease, background-color 0.2s ease, transform 0.3s ease;
2877
2943
  color: rgba(255, 255, 255, 0.6);
2878
- font-size: 14px;
2879
2944
  flex-shrink: 0;
2880
2945
  }
2881
- .c-captcha-modern[data-theme=light] .captcha-text[data-v-29edd4c3] {
2882
- color: rgba(0, 0, 0, 0.72);
2946
+ .c-captcha-modern[data-theme=light][data-v-fe4cd59a] {
2947
+ --cc-color: rgba(15, 23, 42, 0.72);
2948
+ --cc-icon-color: #4778dc;
2949
+ --cc-bg: rgba(15, 23, 42, 0.035);
2950
+ --cc-bg-hover: rgba(71, 120, 220, 0.07);
2951
+ --cc-border: rgba(15, 23, 42, 0.12);
2952
+ --cc-border-hover: rgba(71, 120, 220, 0.42);
2883
2953
  }
2884
- .c-captcha-modern[data-theme=light] .refresh-button[data-v-29edd4c3] {
2954
+ .c-captcha-modern[data-theme=light] .captcha-text[data-v-fe4cd59a] {
2955
+ color: inherit;
2956
+ }
2957
+ .c-captcha-modern[data-theme=light] .refresh-button[data-v-fe4cd59a] {
2885
2958
  color: rgba(0, 0, 0, 0.52);
2886
2959
  }
2887
- .refresh-button[data-v-29edd4c3]:hover {
2960
+ .refresh-button[data-v-fe4cd59a]:hover {
2888
2961
  color: rgba(255, 255, 255, 0.9);
2962
+ background: rgba(255, 255, 255, 0.08);
2889
2963
  transform: translateY(-50%) rotate(180deg);
2890
2964
  }
2891
- .success-icon[data-v-29edd4c3],
2892
- .success-text[data-v-29edd4c3] {
2893
- color: #43c23a;
2965
+ .captcha-trigger.verified[data-v-fe4cd59a] {
2966
+ color: rgba(183, 246, 211, 0.92);
2967
+ border-color: rgba(101, 211, 154, 0.4);
2968
+ background: rgba(66, 188, 124, 0.1);
2969
+ }
2970
+ .captcha-trigger.verified[data-v-fe4cd59a]::after,
2971
+ .captcha-trigger.error[data-v-fe4cd59a]::after {
2972
+ opacity: 0;
2973
+ }
2974
+ .captcha-trigger.error[data-v-fe4cd59a] {
2975
+ color: rgba(255, 205, 211, 0.92);
2976
+ border-color: rgba(255, 127, 141, 0.42);
2977
+ background: rgba(245, 108, 108, 0.1);
2978
+ animation: captcha-shake-fe4cd59a 0.3s ease;
2979
+ }
2980
+ @keyframes captcha-spin-fe4cd59a {
2981
+ to {
2982
+ transform: rotate(360deg);
2894
2983
  }
2895
- .error-icon[data-v-29edd4c3],
2896
- .error-text[data-v-29edd4c3] {
2897
- color: #f56c6c;
2898
2984
  }
2899
- @keyframes shake-29edd4c3 {
2985
+ @keyframes captcha-shake-fe4cd59a {
2900
2986
  0%, 100% {
2901
2987
  transform: translateX(0);
2902
2988
  }
@@ -2908,21 +2994,18 @@ html.dark .action-divider[data-v-9dc5812b]:hover {
2908
2994
  }
2909
2995
  }
2910
2996
  @media (max-width: 768px) {
2911
- .captcha-trigger[data-v-29edd4c3] {
2912
- padding: 10px 14px;
2913
- }
2914
- .captcha-shell[data-v-29edd4c3] {
2915
- max-width: 240px;
2997
+ .captcha-trigger[data-v-fe4cd59a] {
2998
+ min-height: 42px;
2999
+ padding: 0 13px;
2916
3000
  }
2917
- .captcha-icon[data-v-29edd4c3] {
2918
- font-size: 16px;
2919
- width: 18px;
2920
- height: 18px;
3001
+ .captcha-icon[data-v-fe4cd59a] {
3002
+ width: 20px;
3003
+ height: 20px;
2921
3004
  }
2922
- .captcha-text[data-v-29edd4c3] {
3005
+ .captcha-text[data-v-fe4cd59a] {
2923
3006
  font-size: 13px;
2924
3007
  }
2925
- .refresh-button[data-v-29edd4c3] {
3008
+ .refresh-button[data-v-fe4cd59a] {
2926
3009
  width: 24px;
2927
3010
  height: 24px;
2928
3011
  font-size: 12px;
@@ -6043,6 +6126,50 @@ to {
6043
6126
  }
6044
6127
 
6045
6128
 
6129
+ /* --- C_FormModal --- */
6130
+ /* unplugin-vue-components disabled *//*
6131
+ * @Author: ChenYu ycyplus@gmail.com
6132
+ * @Date: 2026-09-13
6133
+ * @FilePath: \naive-ui-components\src\components\C_FormModal\index.scss
6134
+ * @Description: 紧凑型数据驱动表单弹窗样式
6135
+ * Copyright (c) 2026 by CHENY, All Rights Reserved 😎.
6136
+ */
6137
+ .c-form-modal[data-v-be44edc5] {
6138
+ overflow: hidden;
6139
+ border-radius: 10px;
6140
+ }
6141
+ .c-form-modal[data-v-be44edc5] .n-card-header {
6142
+ min-height: 46px;
6143
+ padding: 12px 16px;
6144
+ border-bottom: 1px solid var(--n-border-color);
6145
+ }
6146
+ .c-form-modal[data-v-be44edc5] .n-card-header__main {
6147
+ font-size: 15px;
6148
+ font-weight: 650;
6149
+ }
6150
+ .c-form-modal[data-v-be44edc5] .n-card__content {
6151
+ padding: 14px 16px 8px;
6152
+ }
6153
+ .c-form-modal[data-v-be44edc5] .n-card__action {
6154
+ display: flex;
6155
+ justify-content: flex-end;
6156
+ padding: 10px 16px;
6157
+ background: color-mix(in srgb, var(--n-color-modal) 94%, var(--n-border-color));
6158
+ border-top: 1px solid var(--n-border-color);
6159
+ }
6160
+ .c-form-modal[data-v-be44edc5] .n-form-item {
6161
+ margin-bottom: 2px;
6162
+ }
6163
+ @media (max-width: 640px) {
6164
+ .c-form-modal[data-v-be44edc5] .n-card__content {
6165
+ padding-inline: 12px;
6166
+ }
6167
+ .c-form-modal[data-v-be44edc5] .n-card__action {
6168
+ padding-inline: 12px;
6169
+ }
6170
+ }
6171
+
6172
+
6046
6173
  /* --- C_FormSearch --- */
6047
6174
  /* unplugin-vue-components disabled */.form-search-card[data-v-b3fd614b] .n-card__content {
6048
6175
  padding: 20px;
@@ -7580,7 +7707,7 @@ to {
7580
7707
  * }
7581
7708
  */
7582
7709
  /* ===== CSS 变量默认值(暗色玻璃风格) ===== */
7583
- .c-login-panel[data-v-a14d06fd] {
7710
+ .c-login-panel[data-v-168f3b3f] {
7584
7711
  /* 面板 */
7585
7712
  --cl-panel-bg: rgba(255, 255, 255, 0.1);
7586
7713
  --cl-panel-border: rgba(255, 255, 255, 0.18);
@@ -7629,7 +7756,7 @@ to {
7629
7756
  }
7630
7757
 
7631
7758
  /* ===== 面板容器 ===== */
7632
- .c-login-panel[data-v-a14d06fd] {
7759
+ .c-login-panel[data-v-168f3b3f] {
7633
7760
  width: var(--cl-panel-width);
7634
7761
  background: var(--cl-panel-bg);
7635
7762
  border: 1px solid var(--cl-panel-border);
@@ -7642,7 +7769,7 @@ to {
7642
7769
  transition: box-shadow 0.3s ease;
7643
7770
  /* 顶部光泽线 */
7644
7771
  }
7645
- .c-login-panel[data-v-a14d06fd]::before {
7772
+ .c-login-panel[data-v-168f3b3f]::before {
7646
7773
  content: "";
7647
7774
  position: absolute;
7648
7775
  top: 0;
@@ -7652,10 +7779,10 @@ to {
7652
7779
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.45) 50%, rgba(255, 255, 255, 0) 100%);
7653
7780
  pointer-events: none;
7654
7781
  }
7655
- .c-login-panel[data-v-a14d06fd] {
7782
+ .c-login-panel[data-v-168f3b3f] {
7656
7783
  /* 玻璃内衬 */
7657
7784
  }
7658
- .c-login-panel[data-v-a14d06fd]::after {
7785
+ .c-login-panel[data-v-168f3b3f]::after {
7659
7786
  content: "";
7660
7787
  position: absolute;
7661
7788
  inset: 0;
@@ -7664,19 +7791,19 @@ to {
7664
7791
  border-radius: inherit;
7665
7792
  z-index: 0;
7666
7793
  }
7667
- .c-login-panel[data-v-a14d06fd] > * {
7794
+ .c-login-panel[data-v-168f3b3f] > * {
7668
7795
  position: relative;
7669
7796
  z-index: 1;
7670
7797
  }
7671
7798
 
7672
7799
  /* ===== Header ===== */
7673
- .c-login__header[data-v-a14d06fd] {
7800
+ .c-login__header[data-v-168f3b3f] {
7674
7801
  text-align: center;
7675
7802
  margin-bottom: 10px;
7676
7803
  }
7677
7804
 
7678
7805
  /* ===== 返回按钮(登录/注册下方块级按钮) ===== */
7679
- .c-login__back-btn[data-v-a14d06fd] {
7806
+ .c-login__back-btn[data-v-168f3b3f] {
7680
7807
  margin-top: 10px;
7681
7808
  height: var(--cl-btn-height) !important;
7682
7809
  border-radius: var(--cl-btn-radius) !important;
@@ -7688,41 +7815,41 @@ to {
7688
7815
  letter-spacing: 2px;
7689
7816
  transition: all 0.25s ease !important;
7690
7817
  }
7691
- .c-login__back-btn[data-v-a14d06fd]:hover {
7818
+ .c-login__back-btn[data-v-168f3b3f]:hover {
7692
7819
  background: rgba(255, 255, 255, 0.06) !important;
7693
7820
  border-color: var(--cl-input-underline-hover) !important;
7694
7821
  color: var(--cl-text-primary) !important;
7695
7822
  }
7696
- .c-login__logo[data-v-a14d06fd] {
7823
+ .c-login__logo[data-v-168f3b3f] {
7697
7824
  display: flex;
7698
7825
  justify-content: center;
7699
7826
  margin-bottom: 4px;
7700
7827
  }
7701
- .c-login__logo .c-login__logo-icon[data-v-a14d06fd] {
7828
+ .c-login__logo .c-login__logo-icon[data-v-168f3b3f] {
7702
7829
  color: var(--cl-text-primary);
7703
7830
  filter: drop-shadow(0 2px 8px rgba(24, 89, 233, 0.4));
7704
7831
  }
7705
- .c-login__title[data-v-a14d06fd] {
7832
+ .c-login__title[data-v-168f3b3f] {
7706
7833
  margin: 0 0 2px;
7707
7834
  font-size: 20px;
7708
7835
  font-weight: 600;
7709
7836
  color: var(--cl-text-primary);
7710
7837
  letter-spacing: 0.5px;
7711
7838
  }
7712
- .c-login__subtitle[data-v-a14d06fd] {
7839
+ .c-login__subtitle[data-v-168f3b3f] {
7713
7840
  margin: 0;
7714
7841
  font-size: 13px;
7715
7842
  color: var(--cl-text-secondary);
7716
7843
  }
7717
7844
 
7718
7845
  /* ===== 登录方式切换(底部) ===== */
7719
- .c-login__mode-switch[data-v-a14d06fd] {
7846
+ .c-login__mode-switch[data-v-168f3b3f] {
7720
7847
  margin-top: 14px;
7721
7848
  display: grid;
7722
7849
  grid-template-columns: 1fr 1fr;
7723
7850
  gap: 10px;
7724
7851
  }
7725
- .c-login__mode-btn[data-v-a14d06fd] {
7852
+ .c-login__mode-btn[data-v-168f3b3f] {
7726
7853
  --n-border: none !important;
7727
7854
  --n-border-hover: none !important;
7728
7855
  --n-border-pressed: none !important;
@@ -7735,51 +7862,51 @@ to {
7735
7862
  color: var(--cl-text-secondary) !important;
7736
7863
  transition: all 0.2s ease !important;
7737
7864
  }
7738
- .c-login__mode-btn[data-v-a14d06fd]:hover {
7865
+ .c-login__mode-btn[data-v-168f3b3f]:hover {
7739
7866
  background: rgba(255, 255, 255, 0.1) !important;
7740
7867
  color: var(--cl-text-primary) !important;
7741
7868
  }
7742
- .c-login__mode-btn.is-active[data-v-a14d06fd] {
7869
+ .c-login__mode-btn.is-active[data-v-168f3b3f] {
7743
7870
  background: color-mix(in srgb, var(--cl-tab-bar) 22%, transparent) !important;
7744
7871
  color: var(--cl-tab-active) !important;
7745
7872
  }
7746
7873
 
7747
7874
  /* ===== 表单 ===== */
7748
- .c-login__form[data-v-a14d06fd] {
7875
+ .c-login__form[data-v-168f3b3f] {
7749
7876
  margin-top: 6px;
7750
7877
  }
7751
- .c-login__form-item[data-v-a14d06fd] {
7878
+ .c-login__form-item[data-v-168f3b3f] {
7752
7879
  margin-bottom: 6px !important;
7753
7880
  /* 彻底干掉 NaiveUI FormItem 内置间距 CSS 变量 */
7754
7881
  }
7755
- .c-login__form-item[data-v-a14d06fd] .n-form-item {
7882
+ .c-login__form-item[data-v-168f3b3f] .n-form-item {
7756
7883
  --n-feedback-padding: 2px 0 0 0 !important;
7757
7884
  --n-feedback-height: 0 !important;
7758
7885
  --n-blank-height: 0 !important;
7759
7886
  --n-label-height: 0 !important;
7760
7887
  }
7761
- .c-login__form-item[data-v-a14d06fd] .n-form-item-label {
7888
+ .c-login__form-item[data-v-168f3b3f] .n-form-item-label {
7762
7889
  display: none;
7763
7890
  }
7764
- .c-login__form-item[data-v-a14d06fd] {
7891
+ .c-login__form-item[data-v-168f3b3f] {
7765
7892
  /* 校验信息减少占用 */
7766
7893
  }
7767
- .c-login__form-item[data-v-a14d06fd] .n-form-item-feedback-wrapper {
7894
+ .c-login__form-item[data-v-168f3b3f] .n-form-item-feedback-wrapper {
7768
7895
  min-height: 0 !important;
7769
7896
  padding-top: 0 !important;
7770
7897
  line-height: 1.4;
7771
7898
  }
7772
- .c-login__form-item[data-v-a14d06fd] .n-form-item-feedback {
7899
+ .c-login__form-item[data-v-168f3b3f] .n-form-item-feedback {
7773
7900
  font-size: 11px !important;
7774
7901
  line-height: 1.4;
7775
7902
  }
7776
- .c-login__form-item[data-v-a14d06fd] .n-form-item-blank {
7903
+ .c-login__form-item[data-v-168f3b3f] .n-form-item-blank {
7777
7904
  min-height: 0 !important;
7778
7905
  }
7779
- .c-login__form-item[data-v-a14d06fd] {
7906
+ .c-login__form-item[data-v-168f3b3f] {
7780
7907
  /* 底线风格输入框 */
7781
7908
  }
7782
- .c-login__form-item[data-v-a14d06fd] .n-input {
7909
+ .c-login__form-item[data-v-168f3b3f] .n-input {
7783
7910
  --n-border: none !important;
7784
7911
  --n-border-hover: none !important;
7785
7912
  --n-border-focus: none !important;
@@ -7795,58 +7922,58 @@ to {
7795
7922
  padding: 5px 2px !important;
7796
7923
  transition: border-color 0.25s ease;
7797
7924
  }
7798
- .c-login__form-item[data-v-a14d06fd] .n-input:hover {
7925
+ .c-login__form-item[data-v-168f3b3f] .n-input:hover {
7799
7926
  border-bottom-color: var(--cl-input-underline-hover) !important;
7800
7927
  }
7801
- .c-login__form-item[data-v-a14d06fd] .n-input:focus-within {
7928
+ .c-login__form-item[data-v-168f3b3f] .n-input:focus-within {
7802
7929
  border-bottom-color: var(--cl-input-underline-focus) !important;
7803
7930
  }
7804
- .c-login__form-item[data-v-a14d06fd] .n-input .n-input__input-el {
7931
+ .c-login__form-item[data-v-168f3b3f] .n-input .n-input__input-el {
7805
7932
  color: var(--cl-input-text) !important;
7806
7933
  }
7807
- .c-login__form-item[data-v-a14d06fd] .n-input .n-input__input-el::placeholder {
7934
+ .c-login__form-item[data-v-168f3b3f] .n-input .n-input__input-el::placeholder {
7808
7935
  color: var(--cl-input-placeholder) !important;
7809
7936
  }
7810
- .c-login__form-item[data-v-a14d06fd] .n-input .n-input__prefix,
7811
- .c-login__form-item[data-v-a14d06fd] .n-input .n-input__suffix {
7937
+ .c-login__form-item[data-v-168f3b3f] .n-input .n-input__prefix,
7938
+ .c-login__form-item[data-v-168f3b3f] .n-input .n-input__suffix {
7812
7939
  color: var(--cl-input-icon) !important;
7813
7940
  }
7814
7941
 
7815
7942
  /* ===== 辅助行:记住我 + 忘记密码 ===== */
7816
- .c-login__aux-row[data-v-a14d06fd] {
7943
+ .c-login__aux-row[data-v-168f3b3f] {
7817
7944
  display: flex;
7818
7945
  justify-content: space-between;
7819
7946
  align-items: center;
7820
7947
  margin-top: 8px;
7821
7948
  margin-bottom: 14px;
7822
7949
  }
7823
- .c-login__remember[data-v-a14d06fd] .n-checkbox__label {
7950
+ .c-login__remember[data-v-168f3b3f] .n-checkbox__label {
7824
7951
  color: var(--cl-text-secondary) !important;
7825
7952
  font-size: 13px;
7826
7953
  }
7827
- .c-login__remember[data-v-a14d06fd] .n-checkbox-box {
7954
+ .c-login__remember[data-v-168f3b3f] .n-checkbox-box {
7828
7955
  --n-border: 1px solid var(--cl-input-underline) !important;
7829
7956
  }
7830
- .c-login__forgot[data-v-a14d06fd] {
7957
+ .c-login__forgot[data-v-168f3b3f] {
7831
7958
  font-size: 13px;
7832
7959
  color: var(--cl-link-color);
7833
7960
  cursor: pointer;
7834
7961
  transition: color 0.2s ease;
7835
7962
  }
7836
- .c-login__forgot[data-v-a14d06fd]:hover {
7963
+ .c-login__forgot[data-v-168f3b3f]:hover {
7837
7964
  color: var(--cl-link-hover);
7838
7965
  }
7839
7966
 
7840
7967
  /* ===== 验证码行 ===== */
7841
- .c-login__code-row[data-v-a14d06fd] {
7968
+ .c-login__code-row[data-v-168f3b3f] {
7842
7969
  display: flex;
7843
7970
  gap: 10px;
7844
7971
  width: 100%;
7845
7972
  }
7846
- .c-login__code-input[data-v-a14d06fd] {
7973
+ .c-login__code-input[data-v-168f3b3f] {
7847
7974
  flex: 1;
7848
7975
  }
7849
- .c-login__send-code-btn[data-v-a14d06fd] {
7976
+ .c-login__send-code-btn[data-v-168f3b3f] {
7850
7977
  flex-shrink: 0;
7851
7978
  white-space: nowrap;
7852
7979
  background: rgba(255, 255, 255, 0.08) !important;
@@ -7856,13 +7983,13 @@ to {
7856
7983
  font-size: 13px;
7857
7984
  transition: all 0.25s ease;
7858
7985
  }
7859
- .c-login__send-code-btn[data-v-a14d06fd]:not(:disabled):hover {
7986
+ .c-login__send-code-btn[data-v-168f3b3f]:not(:disabled):hover {
7860
7987
  background: rgba(255, 255, 255, 0.16) !important;
7861
7988
  color: var(--cl-text-primary) !important;
7862
7989
  }
7863
7990
 
7864
7991
  /* ===== 登录按钮 ===== */
7865
- .c-login__submit-btn[data-v-a14d06fd] {
7992
+ .c-login__submit-btn[data-v-168f3b3f] {
7866
7993
  height: var(--cl-btn-height) !important;
7867
7994
  background: var(--cl-btn-bg) !important;
7868
7995
  border: none !important;
@@ -7877,7 +8004,7 @@ to {
7877
8004
  margin-top: 14px;
7878
8005
  /* 光泽扫过动画 */
7879
8006
  }
7880
- .c-login__submit-btn[data-v-a14d06fd]::before {
8007
+ .c-login__submit-btn[data-v-168f3b3f]::before {
7881
8008
  content: "";
7882
8009
  position: absolute;
7883
8010
  top: 0;
@@ -7888,34 +8015,34 @@ to {
7888
8015
  transform: skewX(-25deg);
7889
8016
  transition: left 0.6s ease;
7890
8017
  }
7891
- .c-login__submit-btn[data-v-a14d06fd]:not(:disabled):hover {
8018
+ .c-login__submit-btn[data-v-168f3b3f]:not(:disabled):hover {
7892
8019
  background: var(--cl-btn-bg-hover) !important;
7893
8020
  transform: translateY(-1px);
7894
8021
  box-shadow: var(--cl-btn-shadow-hover) !important;
7895
8022
  }
7896
- .c-login__submit-btn[data-v-a14d06fd]:not(:disabled):hover::before {
8023
+ .c-login__submit-btn[data-v-168f3b3f]:not(:disabled):hover::before {
7897
8024
  left: 150%;
7898
8025
  }
7899
- .c-login__submit-btn[data-v-a14d06fd]:active {
8026
+ .c-login__submit-btn[data-v-168f3b3f]:active {
7900
8027
  transform: translateY(0) !important;
7901
8028
  }
7902
8029
 
7903
8030
  /* ===== 人机验证 ===== */
7904
- .c-login__captcha-wrap[data-v-a14d06fd] {
8031
+ .c-login__captcha-wrap[data-v-168f3b3f] {
7905
8032
  margin-top: 10px;
7906
8033
  display: flex;
7907
8034
  justify-content: center;
7908
8035
  }
7909
8036
 
7910
8037
  /* ===== 扫码登录面板 ===== */
7911
- .c-login__qr-panel[data-v-a14d06fd] {
8038
+ .c-login__qr-panel[data-v-168f3b3f] {
7912
8039
  display: flex;
7913
8040
  flex-direction: column;
7914
8041
  align-items: center;
7915
8042
  padding: 8px 0 4px;
7916
8043
  gap: 14px;
7917
8044
  }
7918
- .c-login__qr-frame[data-v-a14d06fd] {
8045
+ .c-login__qr-frame[data-v-168f3b3f] {
7919
8046
  position: relative;
7920
8047
  width: 164px;
7921
8048
  height: 164px;
@@ -7924,7 +8051,7 @@ to {
7924
8051
  background: rgba(0, 0, 0, 0.35);
7925
8052
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08), 0 8px 28px rgba(0, 0, 0, 0.4);
7926
8053
  }
7927
- .c-login__qr-frame .c-login__qr-placeholder[data-v-a14d06fd] {
8054
+ .c-login__qr-frame .c-login__qr-placeholder[data-v-168f3b3f] {
7928
8055
  display: flex;
7929
8056
  align-items: center;
7930
8057
  justify-content: center;
@@ -7934,10 +8061,10 @@ to {
7934
8061
  font-size: 13px;
7935
8062
  text-align: center;
7936
8063
  }
7937
- .c-login__qr-frame[data-v-a14d06fd] {
8064
+ .c-login__qr-frame[data-v-168f3b3f] {
7938
8065
  /* 扫描动画线 */
7939
8066
  }
7940
- @keyframes qr-scan-a14d06fd {
8067
+ @keyframes qr-scan-168f3b3f {
7941
8068
  0% {
7942
8069
  transform: translateY(0);
7943
8070
  opacity: 1;
@@ -7953,12 +8080,12 @@ to {
7953
8080
  }
7954
8081
 
7955
8082
  /* C_QRCode 居中在 frame 内 */
7956
- .c-login__qr-frame[data-v-a14d06fd] {
8083
+ .c-login__qr-frame[data-v-168f3b3f] {
7957
8084
  display: flex;
7958
8085
  align-items: center;
7959
8086
  justify-content: center;
7960
8087
  }
7961
- .c-login__qr-scan-line[data-v-a14d06fd] {
8088
+ .c-login__qr-scan-line[data-v-168f3b3f] {
7962
8089
  position: absolute;
7963
8090
  top: 10px;
7964
8091
  left: 10px;
@@ -7967,12 +8094,12 @@ to {
7967
8094
  background: linear-gradient(90deg, transparent 0%, rgba(24, 89, 233, 0.7) 30%, rgb(100, 160, 255) 50%, rgba(24, 89, 233, 0.7) 70%, transparent 100%);
7968
8095
  border-radius: 1px;
7969
8096
  box-shadow: 0 0 6px rgba(24, 89, 233, 0.8);
7970
- animation: qr-scan-a14d06fd 2.4s ease-in-out infinite;
8097
+ animation: qr-scan-168f3b3f 2.4s ease-in-out infinite;
7971
8098
  pointer-events: none;
7972
8099
  }
7973
8100
 
7974
8101
  /* 四角刻度装饰 */
7975
- .c-login__qr-corner[data-v-a14d06fd] {
8102
+ .c-login__qr-corner[data-v-168f3b3f] {
7976
8103
  position: absolute;
7977
8104
  width: 14px;
7978
8105
  height: 14px;
@@ -7980,31 +8107,31 @@ to {
7980
8107
  border-style: solid;
7981
8108
  pointer-events: none;
7982
8109
  }
7983
- .c-login__qr-corner--tl[data-v-a14d06fd] {
8110
+ .c-login__qr-corner--tl[data-v-168f3b3f] {
7984
8111
  top: 6px;
7985
8112
  left: 6px;
7986
8113
  border-width: 2px 0 0 2px;
7987
8114
  border-radius: 3px 0 0 0;
7988
8115
  }
7989
- .c-login__qr-corner--tr[data-v-a14d06fd] {
8116
+ .c-login__qr-corner--tr[data-v-168f3b3f] {
7990
8117
  top: 6px;
7991
8118
  right: 6px;
7992
8119
  border-width: 2px 2px 0 0;
7993
8120
  border-radius: 0 3px 0 0;
7994
8121
  }
7995
- .c-login__qr-corner--bl[data-v-a14d06fd] {
8122
+ .c-login__qr-corner--bl[data-v-168f3b3f] {
7996
8123
  bottom: 6px;
7997
8124
  left: 6px;
7998
8125
  border-width: 0 0 2px 2px;
7999
8126
  border-radius: 0 0 0 3px;
8000
8127
  }
8001
- .c-login__qr-corner--br[data-v-a14d06fd] {
8128
+ .c-login__qr-corner--br[data-v-168f3b3f] {
8002
8129
  bottom: 6px;
8003
8130
  right: 6px;
8004
8131
  border-width: 0 2px 2px 0;
8005
8132
  border-radius: 0 0 3px 0;
8006
8133
  }
8007
- .c-login__qr-hint[data-v-a14d06fd] {
8134
+ .c-login__qr-hint[data-v-168f3b3f] {
8008
8135
  margin: 0;
8009
8136
  display: flex;
8010
8137
  align-items: center;
@@ -8013,22 +8140,22 @@ to {
8013
8140
  color: var(--cl-text-hint);
8014
8141
  letter-spacing: 0.3px;
8015
8142
  }
8016
- .c-login__qr-refresh[data-v-a14d06fd] {
8143
+ .c-login__qr-refresh[data-v-168f3b3f] {
8017
8144
  color: var(--cl-text-secondary) !important;
8018
8145
  font-size: 11px !important;
8019
8146
  }
8020
- .c-login__qr-refresh[data-v-a14d06fd]:hover {
8147
+ .c-login__qr-refresh[data-v-168f3b3f]:hover {
8021
8148
  color: var(--cl-tab-bar) !important;
8022
8149
  }
8023
8150
 
8024
8151
  /* ===== 分割线 ===== */
8025
- .c-login__divider[data-v-a14d06fd] {
8152
+ .c-login__divider[data-v-168f3b3f] {
8026
8153
  margin: 12px 10px 10px !important;
8027
8154
  }
8028
- .c-login__divider[data-v-a14d06fd] .n-divider__line {
8155
+ .c-login__divider[data-v-168f3b3f] .n-divider__line {
8029
8156
  background: var(--cl-divider-color) !important;
8030
8157
  }
8031
- .c-login__divider[data-v-a14d06fd] .n-divider__title {
8158
+ .c-login__divider[data-v-168f3b3f] .n-divider__title {
8032
8159
  color: var(--cl-text-hint) !important;
8033
8160
  font-size: 12px;
8034
8161
  white-space: nowrap;
@@ -8036,13 +8163,13 @@ to {
8036
8163
  }
8037
8164
 
8038
8165
  /* ===== 社交登录 ===== */
8039
- .c-login__social-row[data-v-a14d06fd] {
8166
+ .c-login__social-row[data-v-168f3b3f] {
8040
8167
  display: flex;
8041
8168
  justify-content: center;
8042
8169
  gap: 14px;
8043
8170
  margin-bottom: 6px;
8044
8171
  }
8045
- .c-login__social-btn[data-v-a14d06fd] {
8172
+ .c-login__social-btn[data-v-168f3b3f] {
8046
8173
  width: var(--cl-social-size) !important;
8047
8174
  height: var(--cl-social-size) !important;
8048
8175
  background: var(--cl-social-btn-bg) !important;
@@ -8050,38 +8177,38 @@ to {
8050
8177
  color: var(--cl-text-secondary) !important;
8051
8178
  transition: all 0.25s ease !important;
8052
8179
  }
8053
- .c-login__social-btn[data-v-a14d06fd]:hover {
8180
+ .c-login__social-btn[data-v-168f3b3f]:hover {
8054
8181
  background: var(--cl-social-btn-hover-bg) !important;
8055
8182
  color: var(--cl-text-primary) !important;
8056
8183
  transform: translateY(-2px);
8057
8184
  }
8058
8185
 
8059
8186
  /* ===== 注册 ===== */
8060
- .c-login__register-row[data-v-a14d06fd] {
8187
+ .c-login__register-row[data-v-168f3b3f] {
8061
8188
  text-align: center;
8062
8189
  margin-top: 14px;
8063
8190
  font-size: 13px;
8064
8191
  }
8065
- .c-login__register-hint[data-v-a14d06fd] {
8192
+ .c-login__register-hint[data-v-168f3b3f] {
8066
8193
  color: var(--cl-text-hint);
8067
8194
  }
8068
- .c-login__register-link[data-v-a14d06fd] {
8195
+ .c-login__register-link[data-v-168f3b3f] {
8069
8196
  color: var(--cl-tab-bar);
8070
8197
  cursor: pointer;
8071
8198
  margin-left: 4px;
8072
8199
  transition: opacity 0.2s ease;
8073
8200
  }
8074
- .c-login__register-link[data-v-a14d06fd]:hover {
8201
+ .c-login__register-link[data-v-168f3b3f]:hover {
8075
8202
  opacity: 0.8;
8076
8203
  }
8077
8204
 
8078
8205
  /* ===== 输入图标 ===== */
8079
- .c-login__input-icon[data-v-a14d06fd] {
8206
+ .c-login__input-icon[data-v-168f3b3f] {
8080
8207
  color: var(--cl-input-icon);
8081
8208
  }
8082
8209
 
8083
8210
  /* ===== 亮色主题预设(父级加 .c-login--light 类可切换) ===== */
8084
- .c-login--light .c-login-panel[data-v-a14d06fd] {
8211
+ .c-login--light .c-login-panel[data-v-168f3b3f] {
8085
8212
  --cl-panel-bg: rgba(255, 255, 255, 0.96);
8086
8213
  --cl-panel-border: rgba(0, 0, 0, 0.08);
8087
8214
  --cl-panel-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
@@ -8105,7 +8232,7 @@ to {
8105
8232
 
8106
8233
 
8107
8234
  /* --- C_Map --- */
8108
- /* unplugin-vue-components disabled */.c-map[data-v-13a71151] {
8235
+ /* unplugin-vue-components disabled */.c-map[data-v-55f6be95] {
8109
8236
  position: relative;
8110
8237
  width: 100%;
8111
8238
  min-height: 300px;
@@ -8113,13 +8240,13 @@ to {
8113
8240
  border-radius: var(--c-radius-sm, 4px);
8114
8241
  overflow: hidden;
8115
8242
  }
8116
- .c-map .map-container[data-v-13a71151] {
8243
+ .c-map .map-container[data-v-55f6be95] {
8117
8244
  width: 100%;
8118
8245
  height: 100%;
8119
8246
  border-radius: inherit;
8120
8247
  overflow: hidden;
8121
8248
  }
8122
- .c-map .map-loading[data-v-13a71151] {
8249
+ .c-map .map-loading[data-v-55f6be95] {
8123
8250
  position: absolute;
8124
8251
  top: 0;
8125
8252
  left: 0;
@@ -9810,7 +9937,7 @@ to {
9810
9937
  * 标签组件样式 - 精简版
9811
9938
  * =========================================== */
9812
9939
  /* --------- 标签视图容器 --------- */
9813
- .tags-view-container[data-v-2f4c32a7] {
9940
+ .tags-view-container[data-v-7078e2ed] {
9814
9941
  border-bottom: 1px solid var(--color-border);
9815
9942
  padding: 8px 16px 0;
9816
9943
  position: relative;
@@ -9818,14 +9945,14 @@ to {
9818
9945
  }
9819
9946
 
9820
9947
  /* --------- 滚动轨道容器 --------- */
9821
- .tags-track[data-v-2f4c32a7] {
9948
+ .tags-track[data-v-7078e2ed] {
9822
9949
  width: 100%;
9823
9950
  overflow: hidden;
9824
9951
  position: relative;
9825
9952
  }
9826
9953
 
9827
9954
  /* --------- 滚动容器 --------- */
9828
- .tags-container[data-v-2f4c32a7] {
9955
+ .tags-container[data-v-7078e2ed] {
9829
9956
  display: flex;
9830
9957
  overflow-x: auto;
9831
9958
  overflow-y: hidden;
@@ -9835,12 +9962,12 @@ to {
9835
9962
  align-items: center;
9836
9963
  min-height: 40px;
9837
9964
  }
9838
- .tags-container[data-v-2f4c32a7]::-webkit-scrollbar {
9965
+ .tags-container[data-v-7078e2ed]::-webkit-scrollbar {
9839
9966
  display: none;
9840
9967
  }
9841
9968
 
9842
9969
  /* --------- 现代化标签样式 --------- */
9843
- .n-tag[data-v-2f4c32a7] {
9970
+ .n-tag[data-v-7078e2ed] {
9844
9971
  position: relative;
9845
9972
  display: inline-flex;
9846
9973
  align-items: center;
@@ -9857,7 +9984,7 @@ to {
9857
9984
  white-space: nowrap;
9858
9985
  /* 内部高光效果 */
9859
9986
  }
9860
- .n-tag[data-v-2f4c32a7]::before {
9987
+ .n-tag[data-v-7078e2ed]::before {
9861
9988
  content: "";
9862
9989
  position: absolute;
9863
9990
  top: 1px;
@@ -9869,67 +9996,67 @@ to {
9869
9996
  opacity: 0.5;
9870
9997
  transition: opacity 0.22s ease;
9871
9998
  }
9872
- .n-tag[data-v-2f4c32a7] {
9999
+ .n-tag[data-v-7078e2ed] {
9873
10000
  /* --------- 悬停效果 --------- */
9874
10001
  }
9875
- .n-tag[data-v-2f4c32a7]:hover:not([type=primary]) {
10002
+ .n-tag[data-v-7078e2ed]:hover:not([type=primary]) {
9876
10003
  color: var(--color-primary) !important;
9877
10004
  border-color: var(--color-primary);
9878
10005
  transform: scale(1.02);
9879
10006
  }
9880
- .n-tag[data-v-2f4c32a7]:hover:not([type=primary])::before {
10007
+ .n-tag[data-v-7078e2ed]:hover:not([type=primary])::before {
9881
10008
  opacity: 0.8;
9882
10009
  }
9883
- .n-tag[data-v-2f4c32a7]:hover:not([type=primary]) .c-icon,
9884
- .n-tag[data-v-2f4c32a7]:hover:not([type=primary]) [class*='c-icon'] {
10010
+ .n-tag[data-v-7078e2ed]:hover:not([type=primary]) .c-icon,
10011
+ .n-tag[data-v-7078e2ed]:hover:not([type=primary]) [class*='c-icon'] {
9885
10012
  color: var(--color-primary) !important;
9886
10013
  }
9887
- .n-tag:hover:not([type=primary]) i[data-v-2f4c32a7],
9888
- .n-tag:hover:not([type=primary]) .icon[data-v-2f4c32a7] {
10014
+ .n-tag:hover:not([type=primary]) i[data-v-7078e2ed],
10015
+ .n-tag:hover:not([type=primary]) .icon[data-v-7078e2ed] {
9889
10016
  color: var(--color-primary) !important;
9890
10017
  }
9891
- .n-tag[data-v-2f4c32a7]:hover:not([type=primary]) .n-tag__close {
10018
+ .n-tag[data-v-7078e2ed]:hover:not([type=primary]) .n-tag__close {
9892
10019
  color: var(--color-primary) !important;
9893
10020
  opacity: 0.8;
9894
10021
  transform: scale(1.05);
9895
10022
  }
9896
- .n-tag[data-v-2f4c32a7] {
10023
+ .n-tag[data-v-7078e2ed] {
9897
10024
  /* --------- 激活状态 --------- */
9898
10025
  }
9899
- .n-tag[type=primary][data-v-2f4c32a7] {
10026
+ .n-tag[type=primary][data-v-7078e2ed] {
9900
10027
  background: var(--tag-active-bg, rgba(32, 128, 240, 0.08)) !important;
9901
10028
  color: var(--color-primary) !important;
9902
10029
  border-color: var(--color-primary) !important;
9903
10030
  font-weight: 600;
9904
10031
  transform: scale(1.02);
9905
10032
  }
9906
- .n-tag[type=primary][data-v-2f4c32a7]::before {
10033
+ .n-tag[type=primary][data-v-7078e2ed]::before {
9907
10034
  opacity: 0.6;
9908
10035
  }
9909
- .n-tag[type=primary][data-v-2f4c32a7] .n-tag__content,
9910
- .n-tag[type=primary][data-v-2f4c32a7] *:not(.n-tag__close) {
10036
+ .n-tag[type=primary][data-v-7078e2ed] .n-tag__content,
10037
+ .n-tag[type=primary][data-v-7078e2ed] *:not(.n-tag__close) {
9911
10038
  color: var(--color-primary) !important;
9912
10039
  }
9913
- .n-tag[type=primary][data-v-2f4c32a7] .c-icon,
9914
- .n-tag[type=primary][data-v-2f4c32a7] [class*='c-icon'] {
10040
+ .n-tag[type=primary][data-v-7078e2ed] .c-icon,
10041
+ .n-tag[type=primary][data-v-7078e2ed] [class*='c-icon'] {
9915
10042
  color: var(--color-primary) !important;
9916
10043
  }
9917
- .n-tag[type=primary] i[data-v-2f4c32a7],
9918
- .n-tag[type=primary] .icon[data-v-2f4c32a7] {
10044
+ .n-tag[type=primary] i[data-v-7078e2ed],
10045
+ .n-tag[type=primary] .icon[data-v-7078e2ed] {
9919
10046
  color: var(--color-primary) !important;
9920
10047
  }
9921
- .n-tag[type=primary][data-v-2f4c32a7]:hover {
10048
+ .n-tag[type=primary][data-v-7078e2ed]:hover {
9922
10049
  background: var(--tag-active-hover-bg, rgba(32, 128, 240, 0.12)) !important;
9923
10050
  transform: scale(1.03);
9924
10051
  }
9925
- .n-tag[type=primary][data-v-2f4c32a7] .n-tag__close {
10052
+ .n-tag[type=primary][data-v-7078e2ed] .n-tag__close {
9926
10053
  color: var(--color-primary) !important;
9927
10054
  opacity: 0.8;
9928
10055
  }
9929
- .n-tag[data-v-2f4c32a7] {
10056
+ .n-tag[data-v-7078e2ed] {
9930
10057
  /* --------- 关闭按钮 --------- */
9931
10058
  }
9932
- .n-tag[data-v-2f4c32a7] .n-tag__close {
10059
+ .n-tag[data-v-7078e2ed] .n-tag__close {
9933
10060
  width: 16px !important;
9934
10061
  height: 16px !important;
9935
10062
  border-radius: 8px !important;
@@ -9944,10 +10071,10 @@ to {
9944
10071
  background: rgba(0, 0, 0, 0.02) !important;
9945
10072
  border: 1px solid transparent;
9946
10073
  }
9947
- .n-tag[data-v-2f4c32a7] .n-tag__close:not(:hover) {
10074
+ .n-tag[data-v-7078e2ed] .n-tag__close:not(:hover) {
9948
10075
  transform: scale(0.9);
9949
10076
  }
9950
- .n-tag[data-v-2f4c32a7] .n-tag__close:hover {
10077
+ .n-tag[data-v-7078e2ed] .n-tag__close:hover {
9951
10078
  background: linear-gradient(135deg, rgba(248, 113, 113, 0.1), rgba(239, 68, 68, 0.08)) !important;
9952
10079
  border-color: rgba(239, 68, 68, 0.15) !important;
9953
10080
  color: #ef4444 !important;
@@ -9955,13 +10082,13 @@ to {
9955
10082
  transform: scale(0.6) !important;
9956
10083
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.2) !important;
9957
10084
  }
9958
- .n-tag[data-v-2f4c32a7] .n-tag__close:active {
10085
+ .n-tag[data-v-7078e2ed] .n-tag__close:active {
9959
10086
  transform: scale(0.95) !important;
9960
10087
  transition-duration: 0.1s !important;
9961
10088
  }
9962
10089
 
9963
10090
  /* --------- C_Icon --------- */
9964
- [data-v-2f4c32a7] .c-icon {
10091
+ [data-v-7078e2ed] .c-icon {
9965
10092
  margin-right: 4px;
9966
10093
  font-size: 12px;
9967
10094
  transition: color 0.22s ease;
@@ -9971,36 +10098,36 @@ to {
9971
10098
 
9972
10099
  /* --------- 响应式 --------- */
9973
10100
  @media (max-width: 768px) {
9974
- .tags-view-container[data-v-2f4c32a7] {
10101
+ .tags-view-container[data-v-7078e2ed] {
9975
10102
  padding: 6px 12px 0;
9976
10103
  }
9977
- .n-tag[data-v-2f4c32a7] {
10104
+ .n-tag[data-v-7078e2ed] {
9978
10105
  height: 26px;
9979
10106
  padding: 0 10px;
9980
10107
  font-size: 11px;
9981
10108
  margin-right: 3px;
9982
10109
  border-radius: 13px;
9983
10110
  }
9984
- .n-tag[data-v-2f4c32a7] .n-tag__close {
10111
+ .n-tag[data-v-7078e2ed] .n-tag__close {
9985
10112
  width: 14px;
9986
10113
  height: 14px;
9987
10114
  font-size: 11px;
9988
10115
  margin-left: 4px;
9989
10116
  }
9990
- .tags-container[data-v-2f4c32a7] {
10117
+ .tags-container[data-v-7078e2ed] {
9991
10118
  padding: 0 12px;
9992
10119
  min-height: 36px;
9993
10120
  }
9994
- [data-v-2f4c32a7] .c-icon {
10121
+ [data-v-7078e2ed] .c-icon {
9995
10122
  font-size: 11px;
9996
10123
  margin-right: 3px;
9997
10124
  }
9998
10125
  }
9999
10126
  /* --------- 暗色主题 --------- */
10000
- [data-theme=dark] .n-tag[data-v-2f4c32a7] .n-tag__close {
10127
+ [data-theme=dark] .n-tag[data-v-7078e2ed] .n-tag__close {
10001
10128
  background: rgba(255, 255, 255, 0.03) !important;
10002
10129
  }
10003
- [data-theme=dark] .n-tag[data-v-2f4c32a7] .n-tag__close:hover {
10130
+ [data-theme=dark] .n-tag[data-v-7078e2ed] .n-tag__close:hover {
10004
10131
  background: linear-gradient(135deg, rgba(248, 113, 113, 0.12), rgba(239, 68, 68, 0.1)) !important;
10005
10132
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.25) !important;
10006
10133
  }
@@ -12833,7 +12960,7 @@ to {
12833
12960
  transform: scale(1.15);
12834
12961
  }
12835
12962
  /* unplugin-vue-components disabled *//* ================= 1. 组件根容器 ================= */
12836
- .c-table-wrapper[data-v-cb3ea22c] {
12963
+ .c-table-wrapper[data-v-4bd8844d] {
12837
12964
  --c-table-border-color: var(--border-color, #e5e7eb);
12838
12965
  --c-table-bg: var(--body-color, #fff);
12839
12966
  --c-table-header-bg: var(--card-color, #fafafc);
@@ -12846,52 +12973,52 @@ to {
12846
12973
  }
12847
12974
 
12848
12975
  /* ================= 列拖拽排序 ================= */
12849
- .column-drag-ghost[data-v-cb3ea22c] {
12976
+ .column-drag-ghost[data-v-4bd8844d] {
12850
12977
  opacity: var(--c-table-drag-ghost-opacity);
12851
12978
  background: var(--c-table-drag-ghost-bg) !important;
12852
12979
  }
12853
- .drag-handle[data-v-cb3ea22c] {
12980
+ .drag-handle[data-v-4bd8844d] {
12854
12981
  cursor: grab;
12855
12982
  }
12856
- .drag-handle[data-v-cb3ea22c]:active {
12983
+ .drag-handle[data-v-4bd8844d]:active {
12857
12984
  cursor: grabbing;
12858
12985
  }
12859
12986
 
12860
12987
  /* ================= 合计行强调 ================= */
12861
- .c-table-wrapper[data-v-cb3ea22c] .n-data-table-tfoot {
12988
+ .c-table-wrapper[data-v-4bd8844d] .n-data-table-tfoot {
12862
12989
  background: var(--c-table-summary-bg);
12863
12990
  font-weight: var(--c-table-summary-font-weight);
12864
12991
  }
12865
12992
 
12866
12993
  /* ================= 2. 表格工具栏 ================= */
12867
- .table-toolbar[data-v-cb3ea22c] {
12994
+ .table-toolbar[data-v-4bd8844d] {
12868
12995
  display: flex;
12869
12996
  justify-content: space-between;
12870
12997
  align-items: center;
12871
12998
  margin-bottom: 16px;
12872
12999
  }
12873
- .table-toolbar .toolbar-left[data-v-cb3ea22c] {
13000
+ .table-toolbar .toolbar-left[data-v-4bd8844d] {
12874
13001
  display: flex;
12875
13002
  align-items: center;
12876
13003
  gap: 12px;
12877
13004
  }
12878
- .table-toolbar .toolbar-right[data-v-cb3ea22c] {
13005
+ .table-toolbar .toolbar-right[data-v-4bd8844d] {
12879
13006
  display: flex;
12880
13007
  align-items: center;
12881
13008
  gap: 8px;
12882
13009
  }
12883
- .table-toolbar .toolbar-right .column-settings-btn[data-v-cb3ea22c] {
13010
+ .table-toolbar .toolbar-right .column-settings-btn[data-v-4bd8844d] {
12884
13011
  opacity: 0.6;
12885
13012
  transition: opacity 0.2s ease, transform 0.2s ease;
12886
13013
  cursor: pointer;
12887
13014
  }
12888
- .table-toolbar .toolbar-right .column-settings-btn[data-v-cb3ea22c]:hover {
13015
+ .table-toolbar .toolbar-right .column-settings-btn[data-v-4bd8844d]:hover {
12889
13016
  opacity: 1;
12890
13017
  transform: scale(1.1);
12891
13018
  }
12892
13019
 
12893
13020
  /* ================= 3. 动态行工具栏 ================= */
12894
- .dynamic-rows-toolbar[data-v-cb3ea22c] {
13021
+ .dynamic-rows-toolbar[data-v-4bd8844d] {
12895
13022
  margin-bottom: 16px;
12896
13023
  padding: 16px;
12897
13024
  border-radius: 8px;
@@ -12900,12 +13027,12 @@ to {
12900
13027
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
12901
13028
  transition: all 0.2s ease;
12902
13029
  }
12903
- .dynamic-rows-toolbar[data-v-cb3ea22c]:hover {
13030
+ .dynamic-rows-toolbar[data-v-4bd8844d]:hover {
12904
13031
  border-color: var(--n-primary-color-suppl);
12905
13032
  }
12906
13033
 
12907
13034
  /* ================= 4. 表格布局基础 ================= */
12908
- [data-v-cb3ea22c] .n-data-table {
13035
+ [data-v-4bd8844d] .n-data-table {
12909
13036
  table-layout: auto !important;
12910
13037
  width: 100% !important;
12911
13038
  border-radius: 8px;
@@ -12913,12 +13040,12 @@ to {
12913
13040
  }
12914
13041
 
12915
13042
  /* 确保表格容器允许横向滚动(固定列必需) */
12916
- [data-v-cb3ea22c] .n-data-table-wrapper {
13043
+ [data-v-4bd8844d] .n-data-table-wrapper {
12917
13044
  overflow-x: auto !important;
12918
13045
  }
12919
13046
 
12920
13047
  /* 分页组件样式 */
12921
- .pagination-wrapper[data-v-cb3ea22c] {
13048
+ .pagination-wrapper[data-v-4bd8844d] {
12922
13049
  margin-top: 16px;
12923
13050
  display: flex;
12924
13051
  justify-content: flex-end;
@@ -12926,12 +13053,12 @@ to {
12926
13053
 
12927
13054
  /* ================= 5. 表格列宽度管理 ================= */
12928
13055
  /* 普通列的最小宽度保护 */
12929
- [data-v-cb3ea22c] .n-data-table-th:not(:last-child) {
13056
+ [data-v-4bd8844d] .n-data-table-th:not(:last-child) {
12930
13057
  min-width: 80px !important;
12931
13058
  }
12932
13059
 
12933
13060
  /* 操作列固定宽度(适应4个按钮的布局) */
12934
- [data-v-cb3ea22c] .c-table-actions-column {
13061
+ [data-v-4bd8844d] .c-table-actions-column {
12935
13062
  width: 180px !important;
12936
13063
  min-width: 160px !important;
12937
13064
  max-width: 200px !important;
@@ -12940,14 +13067,14 @@ to {
12940
13067
  }
12941
13068
 
12942
13069
  /* 操作按钮容器居中 */
12943
- [data-v-cb3ea22c] .c-table-actions-column .n-space {
13070
+ [data-v-4bd8844d] .c-table-actions-column .n-space {
12944
13071
  justify-content: center !important;
12945
13072
  align-items: center !important;
12946
13073
  }
12947
13074
 
12948
13075
  /* ================= 6. 可编辑单元格样式 ================= */
12949
13076
  /* 单元格编辑容器 - 精致化设计 */
12950
- .cell-edit-wrapper[data-v-cb3ea22c] {
13077
+ .cell-edit-wrapper[data-v-4bd8844d] {
12951
13078
  display: flex;
12952
13079
  align-items: center;
12953
13080
  justify-content: space-between;
@@ -12960,23 +13087,23 @@ to {
12960
13087
  position: relative;
12961
13088
  /* 悬停效果 */
12962
13089
  }
12963
- .cell-edit-wrapper[data-v-cb3ea22c]:hover {
13090
+ .cell-edit-wrapper[data-v-4bd8844d]:hover {
12964
13091
  background-color: var(--n-color-target);
12965
13092
  }
12966
- .cell-edit-wrapper:hover .cell-edit-icon[data-v-cb3ea22c] {
13093
+ .cell-edit-wrapper:hover .cell-edit-icon[data-v-4bd8844d] {
12967
13094
  opacity: 1;
12968
13095
  color: var(--n-color-success);
12969
13096
  transform: scale(1.05);
12970
13097
  }
12971
- .cell-edit-wrapper[data-v-cb3ea22c] {
13098
+ .cell-edit-wrapper[data-v-4bd8844d] {
12972
13099
  /* 激活状态 */
12973
13100
  }
12974
- .cell-edit-wrapper[data-v-cb3ea22c]:active {
13101
+ .cell-edit-wrapper[data-v-4bd8844d]:active {
12975
13102
  transform: translateY(1px);
12976
13103
  }
12977
13104
 
12978
13105
  /* 单元格内容 */
12979
- .cell-value[data-v-cb3ea22c] {
13106
+ .cell-value[data-v-4bd8844d] {
12980
13107
  flex: 1;
12981
13108
  overflow: hidden;
12982
13109
  text-overflow: ellipsis;
@@ -12987,7 +13114,7 @@ to {
12987
13114
  }
12988
13115
 
12989
13116
  /* 编辑图标 - 使用全局选择器确保动态创建的元素也能被选中 */
12990
- .cell-edit-icon[data-v-cb3ea22c],.cell-edit-icon {
13117
+ .cell-edit-icon[data-v-4bd8844d],.cell-edit-icon {
12991
13118
  flex-shrink: 0;
12992
13119
  width: 24px;
12993
13120
  height: 24px;
@@ -13003,29 +13130,29 @@ to {
13003
13130
  position: relative;
13004
13131
  /* 悬停效果 */
13005
13132
  }
13006
- .cell-edit-icon[data-v-cb3ea22c]:hover,.cell-edit-icon {
13133
+ .cell-edit-icon[data-v-4bd8844d]:hover,.cell-edit-icon {
13007
13134
  opacity: 1 !important;
13008
13135
  color: var(--n-color-success-hover) !important;
13009
13136
  background-color: var(--n-color-success-pressed);
13010
13137
  transform: scale(1.1);
13011
13138
  }
13012
- .cell-edit-icon[data-v-cb3ea22c],.cell-edit-icon {
13139
+ .cell-edit-icon[data-v-4bd8844d],.cell-edit-icon {
13013
13140
  /* 激活效果 */
13014
13141
  }
13015
- .cell-edit-icon[data-v-cb3ea22c]:active,.cell-edit-icon {
13142
+ .cell-edit-icon[data-v-4bd8844d]:active,.cell-edit-icon {
13016
13143
  transform: scale(0.95);
13017
13144
  }
13018
- .cell-edit-icon[data-v-cb3ea22c],.cell-edit-icon {
13145
+ .cell-edit-icon[data-v-4bd8844d],.cell-edit-icon {
13019
13146
  /* 图标尺寸 */
13020
13147
  }
13021
- .cell-edit-icon svg[data-v-cb3ea22c],.cell-edit-icon {
13148
+ .cell-edit-icon svg[data-v-4bd8844d],.cell-edit-icon {
13022
13149
  width: 14px;
13023
13150
  height: 14px;
13024
13151
  }
13025
13152
 
13026
13153
  /* ================= 7. 单元格编辑状态样式 ================= */
13027
13154
  /* 编辑容器 - 确保水平布局不换行 */
13028
- .cell-editing-container[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-editing-container {
13155
+ .cell-editing-container[data-v-4bd8844d],[data-v-4bd8844d] .cell-editing-container {
13029
13156
  display: flex !important;
13030
13157
  align-items: center !important;
13031
13158
  width: 100% !important;
@@ -13039,39 +13166,39 @@ to {
13039
13166
  }
13040
13167
 
13041
13168
  /* 编辑输入区域 - 占据剩余空间 */
13042
- .cell-editing-input[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-editing-input {
13169
+ .cell-editing-input[data-v-4bd8844d],[data-v-4bd8844d] .cell-editing-input {
13043
13170
  flex: 1 !important;
13044
13171
  min-width: 0 !important;
13045
13172
  }
13046
13173
 
13047
13174
  /* 深度选择器处理输入框样式 */
13048
- [data-v-cb3ea22c] .cell-editing-input .n-input {
13175
+ [data-v-4bd8844d] .cell-editing-input .n-input {
13049
13176
  border: none !important;
13050
13177
  box-shadow: none !important;
13051
13178
  background: transparent !important;
13052
13179
  }
13053
- [data-v-cb3ea22c] .cell-editing-input .n-input.n-input--focus {
13180
+ [data-v-4bd8844d] .cell-editing-input .n-input.n-input--focus {
13054
13181
  border: none !important;
13055
13182
  box-shadow: none !important;
13056
13183
  }
13057
- [data-v-cb3ea22c] .cell-editing-input .n-input-number {
13184
+ [data-v-4bd8844d] .cell-editing-input .n-input-number {
13058
13185
  border: none !important;
13059
13186
  box-shadow: none !important;
13060
13187
  background: transparent !important;
13061
13188
  }
13062
- [data-v-cb3ea22c] .cell-editing-input .n-select {
13189
+ [data-v-4bd8844d] .cell-editing-input .n-select {
13063
13190
  border: none !important;
13064
13191
  box-shadow: none !important;
13065
13192
  background: transparent !important;
13066
13193
  }
13067
- [data-v-cb3ea22c] .cell-editing-input .n-select .n-base-selection {
13194
+ [data-v-4bd8844d] .cell-editing-input .n-select .n-base-selection {
13068
13195
  border: none !important;
13069
13196
  box-shadow: none !important;
13070
13197
  background: transparent !important;
13071
13198
  }
13072
13199
 
13073
13200
  /* 编辑操作按钮容器 */
13074
- .cell-editing-actions[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-editing-actions {
13201
+ .cell-editing-actions[data-v-4bd8844d],[data-v-4bd8844d] .cell-editing-actions {
13075
13202
  display: flex !important;
13076
13203
  flex-shrink: 0 !important;
13077
13204
  align-items: center !important;
@@ -13084,7 +13211,7 @@ to {
13084
13211
  }
13085
13212
 
13086
13213
  /* 编辑操作按钮 */
13087
- .cell-action-btn[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-action-btn {
13214
+ .cell-action-btn[data-v-4bd8844d],[data-v-4bd8844d] .cell-action-btn {
13088
13215
  display: flex !important;
13089
13216
  align-items: center !important;
13090
13217
  justify-content: center !important;
@@ -13097,34 +13224,34 @@ to {
13097
13224
  background: transparent !important;
13098
13225
  /* 保存按钮 */
13099
13226
  }
13100
- .cell-action-btn.cell-action-save[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-action-btn.cell-action-save {
13227
+ .cell-action-btn.cell-action-save[data-v-4bd8844d],[data-v-4bd8844d] .cell-action-btn.cell-action-save {
13101
13228
  color: var(--n-color-success) !important;
13102
13229
  }
13103
- .cell-action-btn.cell-action-save[data-v-cb3ea22c]:hover,[data-v-cb3ea22c] .cell-action-btn.cell-action-save:hover {
13230
+ .cell-action-btn.cell-action-save[data-v-4bd8844d]:hover,[data-v-4bd8844d] .cell-action-btn.cell-action-save:hover {
13104
13231
  background: var(--n-color-success-pressed) !important;
13105
13232
  transform: scale(1.1) !important;
13106
13233
  }
13107
- .cell-action-btn[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-action-btn {
13234
+ .cell-action-btn[data-v-4bd8844d],[data-v-4bd8844d] .cell-action-btn {
13108
13235
  /* 取消按钮 */
13109
13236
  }
13110
- .cell-action-btn.cell-action-cancel[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-action-btn.cell-action-cancel {
13237
+ .cell-action-btn.cell-action-cancel[data-v-4bd8844d],[data-v-4bd8844d] .cell-action-btn.cell-action-cancel {
13111
13238
  color: var(--n-color-error) !important;
13112
13239
  }
13113
- .cell-action-btn.cell-action-cancel[data-v-cb3ea22c]:hover,[data-v-cb3ea22c] .cell-action-btn.cell-action-cancel:hover {
13240
+ .cell-action-btn.cell-action-cancel[data-v-4bd8844d]:hover,[data-v-4bd8844d] .cell-action-btn.cell-action-cancel:hover {
13114
13241
  background: var(--n-color-error-pressed) !important;
13115
13242
  transform: scale(1.1) !important;
13116
13243
  }
13117
- .cell-action-btn[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-action-btn {
13244
+ .cell-action-btn[data-v-4bd8844d],[data-v-4bd8844d] .cell-action-btn {
13118
13245
  /* 图标尺寸 */
13119
13246
  }
13120
- .cell-action-btn svg[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-action-btn svg {
13247
+ .cell-action-btn svg[data-v-4bd8844d],[data-v-4bd8844d] .cell-action-btn svg {
13121
13248
  width: 11px !important;
13122
13249
  height: 11px !important;
13123
13250
  }
13124
13251
 
13125
13252
  /* ================= 7. 操作按钮样式 ================= */
13126
13253
  /* 通用按钮样式 */
13127
- [data-v-cb3ea22c] .n-button {
13254
+ [data-v-4bd8844d] .n-button {
13128
13255
  white-space: nowrap;
13129
13256
  font-size: 12px !important;
13130
13257
  flex-shrink: 0 !important;
@@ -13133,60 +13260,60 @@ to {
13133
13260
  font-weight: 500;
13134
13261
  /* 图标间距 */
13135
13262
  }
13136
- [data-v-cb3ea22c] .n-button .n-icon {
13263
+ [data-v-4bd8844d] .n-button .n-icon {
13137
13264
  margin-right: 4px !important;
13138
13265
  }
13139
- [data-v-cb3ea22c] .n-button {
13266
+ [data-v-4bd8844d] .n-button {
13140
13267
  /* 小尺寸按钮优化 */
13141
13268
  }
13142
- [data-v-cb3ea22c] .n-button.n-button--small-type {
13269
+ [data-v-4bd8844d] .n-button.n-button--small-type {
13143
13270
  padding: 4px 8px;
13144
13271
  height: 28px;
13145
13272
  line-height: 20px;
13146
13273
  }
13147
- [data-v-cb3ea22c] .n-button {
13274
+ [data-v-4bd8844d] .n-button {
13148
13275
  /* 四元按钮样式 */
13149
13276
  }
13150
- [data-v-cb3ea22c] .n-button.n-button--quaternary-type:hover {
13277
+ [data-v-4bd8844d] .n-button.n-button--quaternary-type:hover {
13151
13278
  transform: translateY(-1px);
13152
13279
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
13153
13280
  }
13154
- [data-v-cb3ea22c] .n-button.n-button--quaternary-type:active {
13281
+ [data-v-4bd8844d] .n-button.n-button--quaternary-type:active {
13155
13282
  transform: translateY(0);
13156
13283
  }
13157
13284
 
13158
13285
  /* ================= 8. 按钮组间距优化 ================= */
13159
13286
  /* 操作按钮组 */
13160
- [data-v-cb3ea22c] .n-space.n-space--horizontal .n-space-item:not(:last-child) {
13287
+ [data-v-4bd8844d] .n-space.n-space--horizontal .n-space-item:not(:last-child) {
13161
13288
  margin-right: 6px !important;
13162
13289
  }
13163
13290
 
13164
13291
  /* ================= 9. 模态框样式优化 ================= */
13165
13292
  /* 编辑模态框 */
13166
- [data-v-cb3ea22c] .n-modal .n-card {
13293
+ [data-v-4bd8844d] .n-modal .n-card {
13167
13294
  border-radius: 12px;
13168
13295
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
13169
13296
  }
13170
- [data-v-cb3ea22c] .n-modal .n-card__header {
13297
+ [data-v-4bd8844d] .n-modal .n-card__header {
13171
13298
  padding: 20px 24px 16px;
13172
13299
  font-weight: 600;
13173
13300
  font-size: 16px;
13174
13301
  }
13175
- [data-v-cb3ea22c] .n-modal .n-card__content {
13302
+ [data-v-4bd8844d] .n-modal .n-card__content {
13176
13303
  padding: 0 24px 16px;
13177
13304
  }
13178
- [data-v-cb3ea22c] .n-modal .n-card__action {
13305
+ [data-v-4bd8844d] .n-modal .n-card__action {
13179
13306
  padding: 16px 24px 20px;
13180
13307
  border-top: 1px solid var(--n-divider-color);
13181
13308
  }
13182
13309
 
13183
13310
  /* ================= 10. 描述列表样式 ================= */
13184
13311
  /* 详情模态框描述列表 */
13185
- [data-v-cb3ea22c] .n-descriptions .n-descriptions-item-label {
13312
+ [data-v-4bd8844d] .n-descriptions .n-descriptions-item-label {
13186
13313
  font-weight: 500;
13187
13314
  color: var(--n-text-color-2);
13188
13315
  }
13189
- [data-v-cb3ea22c] .n-descriptions .n-descriptions-item-content {
13316
+ [data-v-4bd8844d] .n-descriptions .n-descriptions-item-content {
13190
13317
  color: var(--n-text-color-1);
13191
13318
  word-break: break-all;
13192
13319
  }
@@ -13194,99 +13321,99 @@ to {
13194
13321
  /* ================= 11. 响应式设计 ================= */
13195
13322
  /* 移动端适配 */
13196
13323
  @media (max-width: 768px) {
13197
- .c-table-wrapper[data-v-cb3ea22c] {
13324
+ .c-table-wrapper[data-v-4bd8844d] {
13198
13325
  overflow-x: auto;
13199
13326
  }
13200
13327
  /* 操作列在移动端的适配 */
13201
- [data-v-cb3ea22c] .n-data-table-th:last-child {
13328
+ [data-v-4bd8844d] .n-data-table-th:last-child {
13202
13329
  width: 160px !important;
13203
13330
  min-width: 160px !important;
13204
13331
  }
13205
13332
  /* 按钮在移动端的优化 */
13206
- [data-v-cb3ea22c] .n-button {
13333
+ [data-v-4bd8844d] .n-button {
13207
13334
  font-size: 11px !important;
13208
13335
  padding: 3px 6px;
13209
13336
  }
13210
- [data-v-cb3ea22c] .n-button .n-icon {
13337
+ [data-v-4bd8844d] .n-button .n-icon {
13211
13338
  margin-right: 2px !important;
13212
13339
  }
13213
13340
  /* 单元格编辑图标在移动端始终显示 */
13214
- .cell-edit-icon[data-v-cb3ea22c] {
13341
+ .cell-edit-icon[data-v-4bd8844d] {
13215
13342
  opacity: 0.6;
13216
13343
  }
13217
13344
  }
13218
13345
  /* ================= 12. 主题适配 ================= */
13219
13346
  /* 暗色主题适配 - 已通过 CSS 变量自动适配 */
13220
- [data-theme=dark][data-v-cb3ea22c] {
13347
+ [data-theme=dark][data-v-4bd8844d] {
13221
13348
  /* CSS 变量已自动适配,如有特殊需求可在此添加 */
13222
13349
  }
13223
13350
 
13224
13351
  /* ================= 13. 响应式优化 ================= */
13225
13352
  /* 小屏幕下的单元格编辑优化 */
13226
13353
  @media (max-width: 768px) {
13227
- .cell-editing-container[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-editing-container {
13354
+ .cell-editing-container[data-v-4bd8844d],[data-v-4bd8844d] .cell-editing-container {
13228
13355
  gap: 6px !important;
13229
13356
  }
13230
- .cell-editing-actions[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-editing-actions {
13357
+ .cell-editing-actions[data-v-4bd8844d],[data-v-4bd8844d] .cell-editing-actions {
13231
13358
  gap: 3px !important;
13232
13359
  padding: 2px !important;
13233
13360
  }
13234
- .cell-action-btn[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-action-btn {
13361
+ .cell-action-btn[data-v-4bd8844d],[data-v-4bd8844d] .cell-action-btn {
13235
13362
  width: 18px !important;
13236
13363
  height: 18px !important;
13237
13364
  }
13238
- .cell-action-btn svg[data-v-cb3ea22c],[data-v-cb3ea22c] .cell-action-btn svg {
13365
+ .cell-action-btn svg[data-v-4bd8844d],[data-v-4bd8844d] .cell-action-btn svg {
13239
13366
  width: 10px !important;
13240
13367
  height: 10px !important;
13241
13368
  }
13242
13369
  /* 移动端编辑图标 */
13243
- .cell-edit-icon[data-v-cb3ea22c] {
13370
+ .cell-edit-icon[data-v-4bd8844d] {
13244
13371
  opacity: 0.6 !important;
13245
13372
  }
13246
- .cell-value[data-v-cb3ea22c] {
13373
+ .cell-value[data-v-4bd8844d] {
13247
13374
  margin-right: 12px !important;
13248
13375
  }
13249
13376
  }
13250
13377
  /* ================= 14. 性能优化 ================= */
13251
13378
  /* 使用 GPU 加速的动画 */
13252
- .cell-edit-icon[data-v-cb3ea22c],
13253
- .cell-action-btn[data-v-cb3ea22c] {
13379
+ .cell-edit-icon[data-v-4bd8844d],
13380
+ .cell-action-btn[data-v-4bd8844d] {
13254
13381
  will-change: transform;
13255
13382
  backface-visibility: hidden;
13256
13383
  }
13257
- [data-v-cb3ea22c] .n-button {
13384
+ [data-v-4bd8844d] .n-button {
13258
13385
  will-change: transform;
13259
13386
  backface-visibility: hidden;
13260
13387
  }
13261
13388
 
13262
13389
  /* ================= 15. 可访问性优化 ================= */
13263
13390
  /* 聚焦状态 */
13264
- .cell-edit-wrapper[data-v-cb3ea22c]:focus-within,
13265
- .cell-editing-container[data-v-cb3ea22c]:focus-within {
13391
+ .cell-edit-wrapper[data-v-4bd8844d]:focus-within,
13392
+ .cell-editing-container[data-v-4bd8844d]:focus-within {
13266
13393
  outline: 2px solid var(--n-primary-color);
13267
13394
  outline-offset: 2px;
13268
13395
  }
13269
13396
 
13270
13397
  /* 高对比度模式支持 */
13271
13398
  @media (prefers-contrast: high) {
13272
- .cell-edit-icon[data-v-cb3ea22c] {
13399
+ .cell-edit-icon[data-v-4bd8844d] {
13273
13400
  opacity: 0.8;
13274
13401
  }
13275
- .cell-editing-actions[data-v-cb3ea22c] {
13402
+ .cell-editing-actions[data-v-4bd8844d] {
13276
13403
  border-width: 2px;
13277
13404
  }
13278
13405
  }
13279
13406
  /* ================= 11. 行拖拽排序 ================= */
13280
- .row-drag-ghost[data-v-cb3ea22c] {
13407
+ .row-drag-ghost[data-v-4bd8844d] {
13281
13408
  opacity: 0.4;
13282
13409
  background: var(--c-table-drag-ghost-bg) !important;
13283
13410
  }
13284
- .row-drag-chosen[data-v-cb3ea22c] {
13411
+ .row-drag-chosen[data-v-4bd8844d] {
13285
13412
  background: var(--n-color-hover, #f5f5f5) !important;
13286
13413
  }
13287
13414
 
13288
13415
  /* ================= 12. 批量操作栏 ================= */
13289
- .batch-actions-bar[data-v-cb3ea22c] {
13416
+ .batch-actions-bar[data-v-4bd8844d] {
13290
13417
  display: flex;
13291
13418
  align-items: center;
13292
13419
  justify-content: space-between;
@@ -13296,25 +13423,25 @@ to {
13296
13423
  border-radius: 6px;
13297
13424
  border: 1px solid var(--n-primary-color-suppl, #70b3ff);
13298
13425
  }
13299
- .batch-actions-bar .batch-info[data-v-cb3ea22c] {
13426
+ .batch-actions-bar .batch-info[data-v-4bd8844d] {
13300
13427
  font-size: 13px;
13301
13428
  color: var(--n-text-color-2);
13302
13429
  font-weight: 500;
13303
13430
  }
13304
13431
 
13305
13432
  /* ================= 13. 错误状态 ================= */
13306
- .table-error-state[data-v-cb3ea22c] {
13433
+ .table-error-state[data-v-4bd8844d] {
13307
13434
  padding: 48px 24px;
13308
13435
  text-align: center;
13309
13436
  }
13310
- .table-error-state .error-content[data-v-cb3ea22c] {
13437
+ .table-error-state .error-content[data-v-4bd8844d] {
13311
13438
  display: flex;
13312
13439
  flex-direction: column;
13313
13440
  align-items: center;
13314
13441
  gap: 12px;
13315
13442
  color: var(--n-text-color-3, #999);
13316
13443
  }
13317
- .table-error-state .error-message[data-v-cb3ea22c] {
13444
+ .table-error-state .error-message[data-v-4bd8844d] {
13318
13445
  font-size: 14px;
13319
13446
  margin: 0;
13320
13447
  color: var(--n-text-color-2, #666);