xto-fronted 0.4.67 → 0.4.69

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 (260) hide show
  1. package/dist/{index-2RwL0s53.js → index-BvMcnGze.js} +1 -1
  2. package/dist/{index-B3_VQZ-d.js → index-D0JXJmlJ.js} +1 -1
  3. package/dist/{index-B1VS4tRU.js → index-DZEVfuKk.js} +1 -1
  4. package/dist/{index-B05xso4D.js → index-Df8leAO9.js} +1 -1
  5. package/dist/{index-C69vu_ot.js → index-XgM0GMu2.js} +961 -945
  6. package/dist/index.es.js +1 -1
  7. package/dist/index.umd.js +1 -1
  8. package/dist/style.css +1 -1
  9. package/package.json +1 -1
  10. package/src/components/Layout/Sidebar.vue +40 -1
  11. package/dist/assets/404-ByYjFnhI.js +0 -1
  12. package/dist/assets/404-sqW80Hc-.css +0 -1
  13. package/dist/assets/_plugin-vue_export-helper-DlAUqK2U.js +0 -1
  14. package/dist/assets/index-BBhC8PX4.js +0 -1
  15. package/dist/assets/index-BOEFG4lP.css +0 -1
  16. package/dist/assets/index-BRR97dc6.js +0 -1
  17. package/dist/assets/index-BihVoviB.js +0 -1
  18. package/dist/assets/index-BrvR0Fn_.css +0 -1
  19. package/dist/assets/index-C4ZCZoPp.js +0 -1
  20. package/dist/assets/index-CUh_s55Z.css +0 -1
  21. package/dist/assets/index-D0OnMilp.js +0 -1
  22. package/dist/assets/index-D9wlAuR_.js +0 -1
  23. package/dist/assets/index-DPkO-STg.js +0 -1
  24. package/dist/assets/index-DawJb02s.css +0 -1
  25. package/dist/assets/index-DiHSZ6SJ.js +0 -2
  26. package/dist/assets/index-GDP-IkXE.css +0 -1
  27. package/dist/assets/index-PfV8pzQz.css +0 -1
  28. package/dist/assets/index-Swfu6yvD.css +0 -1
  29. package/dist/assets/vendor-42ANG6Sg.js +0 -6
  30. package/dist/assets/vite-Dw-pgLOX.js +0 -1
  31. package/dist/assets/vue-vendor-Br-l7wbK.js +0 -29
  32. package/dist/assets/xto-base-C-IBqjVs.js +0 -1
  33. package/dist/assets/xto-base-C6eqMPdO.css +0 -1
  34. package/dist/assets/xto-business--V1F5Gwb.css +0 -1
  35. package/dist/assets/xto-core-DZK7Cyg0.js +0 -1
  36. package/dist/assets/xto-data-BFpiDgJi.js +0 -1
  37. package/dist/assets/xto-data-CnAQAQH2.css +0 -1
  38. package/dist/assets/xto-feedback-B2M02fn3.js +0 -1
  39. package/dist/assets/xto-feedback-ByaS-C7_.css +0 -1
  40. package/dist/assets/xto-form-CrsyAjyr.css +0 -1
  41. package/dist/assets/xto-form-NRjKKNcY.js +0 -1
  42. package/dist/assets/xto-layout-D1stVnJI.css +0 -1
  43. package/dist/assets/xto-navigation-BuRQVoD8.css +0 -1
  44. package/dist/assets/xto-navigation-qLRTxo68.js +0 -1
  45. package/dist/index-0h_oG71z.js +0 -345
  46. package/dist/index-1EEezXR3.js +0 -142
  47. package/dist/index-1EkaJDoD.js +0 -142
  48. package/dist/index-1VN-SSaj.js +0 -2873
  49. package/dist/index-23nX2t9j.js +0 -142
  50. package/dist/index-2tvOdd6w.js +0 -372
  51. package/dist/index-3zeoNaqT.js +0 -345
  52. package/dist/index-8oCLh51t.js +0 -475
  53. package/dist/index-AF5JN8Up.js +0 -142
  54. package/dist/index-B02xiP9g.js +0 -372
  55. package/dist/index-B3kL6i_g.js +0 -345
  56. package/dist/index-B4Wny0vt.js +0 -345
  57. package/dist/index-B5RdBQ-f.js +0 -475
  58. package/dist/index-B5rbuoWS.js +0 -2835
  59. package/dist/index-BAFpPlnI.js +0 -475
  60. package/dist/index-BAJakzRz.js +0 -142
  61. package/dist/index-BAOHlfVd.js +0 -142
  62. package/dist/index-BAzJWzWG.js +0 -2852
  63. package/dist/index-BEIxh_R3.js +0 -2982
  64. package/dist/index-BEWrRNps.js +0 -475
  65. package/dist/index-BFtKVmzo.js +0 -142
  66. package/dist/index-BHPrW1wN.js +0 -142
  67. package/dist/index-BHQIqN1E.js +0 -372
  68. package/dist/index-BHZ_y8lp.js +0 -2067
  69. package/dist/index-BHvnTk5Z.js +0 -475
  70. package/dist/index-BIf7CYCW.js +0 -475
  71. package/dist/index-BK1Y1z9_.js +0 -142
  72. package/dist/index-BK8qDl14.js +0 -372
  73. package/dist/index-BKnta6nv.js +0 -372
  74. package/dist/index-BLIem13z.js +0 -345
  75. package/dist/index-BNBv_FCu.js +0 -142
  76. package/dist/index-BNwtCm83.js +0 -345
  77. package/dist/index-BOEMA7WH.js +0 -345
  78. package/dist/index-BOwDukt-.js +0 -2346
  79. package/dist/index-BR9WVjrV.js +0 -2851
  80. package/dist/index-BRMkw154.js +0 -475
  81. package/dist/index-BRQBannD.js +0 -345
  82. package/dist/index-BShKtLTm.js +0 -475
  83. package/dist/index-BVpqTdd2.js +0 -3132
  84. package/dist/index-BWGQANAN.js +0 -2851
  85. package/dist/index-BZKw7U60.js +0 -475
  86. package/dist/index-BadGWG4q.js +0 -475
  87. package/dist/index-BbeWpCd3.js +0 -345
  88. package/dist/index-BeUYNx5P.js +0 -475
  89. package/dist/index-BgiGtxRr.js +0 -142
  90. package/dist/index-BhKJLk9M.js +0 -2824
  91. package/dist/index-BijsKQ3r.js +0 -475
  92. package/dist/index-BjEfspqP.js +0 -475
  93. package/dist/index-BjEnT8WQ.js +0 -372
  94. package/dist/index-BpOcz1m4.js +0 -142
  95. package/dist/index-BrRdLbLB.js +0 -142
  96. package/dist/index-BsHOXfCq.js +0 -372
  97. package/dist/index-Bt5ocakb.js +0 -475
  98. package/dist/index-BtE24Mt4.js +0 -142
  99. package/dist/index-BvcBQjw6.js +0 -2836
  100. package/dist/index-C0krZRWf.js +0 -2859
  101. package/dist/index-C1cKUqmA.js +0 -372
  102. package/dist/index-C3ANmIDM.js +0 -475
  103. package/dist/index-C5JrEkwD.js +0 -345
  104. package/dist/index-C5m4qNMQ.js +0 -2851
  105. package/dist/index-C6Um6eFy.js +0 -475
  106. package/dist/index-C75ePQYC.js +0 -372
  107. package/dist/index-C7wKLGhC.js +0 -142
  108. package/dist/index-C8DBDnxx.js +0 -2836
  109. package/dist/index-CAnqlIjX.js +0 -475
  110. package/dist/index-CB36fztK.js +0 -345
  111. package/dist/index-CBKo6Enz.js +0 -345
  112. package/dist/index-CBcuyFIa.js +0 -2326
  113. package/dist/index-CCxIu4ex.js +0 -372
  114. package/dist/index-CD1ZEMzL.js +0 -2836
  115. package/dist/index-CDx-6tvY.js +0 -345
  116. package/dist/index-CGrvOpdb.js +0 -372
  117. package/dist/index-CHJWNf3f.js +0 -475
  118. package/dist/index-CIb06BxE.js +0 -372
  119. package/dist/index-CLiJcB9v.js +0 -142
  120. package/dist/index-CNS6Ohfw.js +0 -2853
  121. package/dist/index-COkjB5Jm.js +0 -142
  122. package/dist/index-CS5h1O5W.js +0 -345
  123. package/dist/index-CT0deRSL.js +0 -372
  124. package/dist/index-CTQQBaf4.js +0 -345
  125. package/dist/index-CUAC0ZFB.js +0 -475
  126. package/dist/index-CVMV9Tfg.js +0 -142
  127. package/dist/index-CWOx59Vc.js +0 -142
  128. package/dist/index-CWdSR99B.js +0 -372
  129. package/dist/index-CWvOcS8Y.js +0 -345
  130. package/dist/index-C_8yJlf1.js +0 -475
  131. package/dist/index-C_MzXmh2.js +0 -2830
  132. package/dist/index-Cb7HXiBR.js +0 -372
  133. package/dist/index-CbA8oUvZ.js +0 -142
  134. package/dist/index-CbEIzXG9.js +0 -475
  135. package/dist/index-Cb_m0zz1.js +0 -475
  136. package/dist/index-Cc6HgGzc.js +0 -142
  137. package/dist/index-CcWdW9Mj.js +0 -372
  138. package/dist/index-CdAqkP8L.js +0 -345
  139. package/dist/index-CeVUHSt9.js +0 -2847
  140. package/dist/index-CejRpy0a.js +0 -475
  141. package/dist/index-Cg5wO_jJ.js +0 -372
  142. package/dist/index-CgZM1vHq.js +0 -372
  143. package/dist/index-CgofFg1D.js +0 -372
  144. package/dist/index-ChheXGDK.js +0 -372
  145. package/dist/index-ChuFHoI0.js +0 -372
  146. package/dist/index-CiOJZ6_b.js +0 -372
  147. package/dist/index-ClCWmz_7.js +0 -2844
  148. package/dist/index-CmajGrKA.js +0 -142
  149. package/dist/index-Cn_4o3fi.js +0 -345
  150. package/dist/index-CoJBI1vE.js +0 -345
  151. package/dist/index-CqLLaQ-P.js +0 -372
  152. package/dist/index-CsRhLwmR.js +0 -475
  153. package/dist/index-CttJvDTG.js +0 -475
  154. package/dist/index-Cu3m9UeX.js +0 -345
  155. package/dist/index-CyQbOMHa.js +0 -2859
  156. package/dist/index-D-NcbLKL.js +0 -345
  157. package/dist/index-D0gstkiI.js +0 -2836
  158. package/dist/index-D0krzDtx.js +0 -475
  159. package/dist/index-D1moFd4V.js +0 -372
  160. package/dist/index-D2Hs4bZj.js +0 -345
  161. package/dist/index-D4QhrTZs.js +0 -475
  162. package/dist/index-D6CC02F-.js +0 -372
  163. package/dist/index-D6s7Za5s.js +0 -142
  164. package/dist/index-D7i5bck2.js +0 -3132
  165. package/dist/index-D8YBeNfn.js +0 -345
  166. package/dist/index-D93bv6lU.js +0 -372
  167. package/dist/index-DAX_bFj5.js +0 -142
  168. package/dist/index-DBii9cjr.js +0 -475
  169. package/dist/index-DBzpSkNi.js +0 -345
  170. package/dist/index-DCuKNBck.js +0 -3153
  171. package/dist/index-DE3uKf0K.js +0 -142
  172. package/dist/index-DGAqp0QX.js +0 -372
  173. package/dist/index-DGh_w_v1.js +0 -475
  174. package/dist/index-DItKvJyI.js +0 -475
  175. package/dist/index-DKAyB0fv.js +0 -345
  176. package/dist/index-DKN4xsXi.js +0 -2851
  177. package/dist/index-DN_iIn8V.js +0 -345
  178. package/dist/index-DONIBpuJ.js +0 -345
  179. package/dist/index-DPDK8Ht4.js +0 -2851
  180. package/dist/index-DPr3ldST.js +0 -2354
  181. package/dist/index-DS1wfdxM.js +0 -142
  182. package/dist/index-DUW5cCh8.js +0 -372
  183. package/dist/index-DUv28uVd.js +0 -142
  184. package/dist/index-DVS-5SZn.js +0 -475
  185. package/dist/index-DWI51JAp.js +0 -372
  186. package/dist/index-DWVmEexu.js +0 -475
  187. package/dist/index-DXf9wUqQ.js +0 -142
  188. package/dist/index-DXmB-sjP.js +0 -345
  189. package/dist/index-DY_e_Dxv.js +0 -372
  190. package/dist/index-DZar-us7.js +0 -142
  191. package/dist/index-D_nwqVrw.js +0 -2847
  192. package/dist/index-DbEeir7h.js +0 -2834
  193. package/dist/index-Dbf5ypbh.js +0 -142
  194. package/dist/index-DcSK-2pt.js +0 -345
  195. package/dist/index-DclK-Mc7.js +0 -2864
  196. package/dist/index-DcnzaxVi.js +0 -142
  197. package/dist/index-Dd8PlF0M.js +0 -2857
  198. package/dist/index-DdkVT39s.js +0 -345
  199. package/dist/index-DeLbU1t-.js +0 -345
  200. package/dist/index-DfV_J8Te.js +0 -345
  201. package/dist/index-DgPnNd8U.js +0 -475
  202. package/dist/index-Dg_JLa7s.js +0 -345
  203. package/dist/index-Di2VPQjn.js +0 -345
  204. package/dist/index-DibHUbqc.js +0 -372
  205. package/dist/index-DjCVSrpw.js +0 -475
  206. package/dist/index-Djdb936p.js +0 -142
  207. package/dist/index-DmFL_GSt.js +0 -142
  208. package/dist/index-DmP4X2k0.js +0 -372
  209. package/dist/index-DmtmRd1r.js +0 -372
  210. package/dist/index-Dn8MA3kh.js +0 -475
  211. package/dist/index-Do7uXDSi.js +0 -2071
  212. package/dist/index-Dpv1M9Hu.js +0 -372
  213. package/dist/index-DqUuZC8f.js +0 -372
  214. package/dist/index-DtEXQIjn.js +0 -372
  215. package/dist/index-Dtw-qZ0V.js +0 -372
  216. package/dist/index-Dv3hIz8H.js +0 -345
  217. package/dist/index-Dv9jnaWp.js +0 -345
  218. package/dist/index-Dw8KZwGJ.js +0 -2354
  219. package/dist/index-DwJILh-Q.js +0 -3149
  220. package/dist/index-DwzGV3B9.js +0 -142
  221. package/dist/index-DyybaRkK.js +0 -345
  222. package/dist/index-DzerABZq.js +0 -372
  223. package/dist/index-F53NVkhc.js +0 -142
  224. package/dist/index-Fl0_k4XF.js +0 -475
  225. package/dist/index-HMYRCPrs.js +0 -2326
  226. package/dist/index-I49wpmT-.js +0 -372
  227. package/dist/index-IPv1O8Zq.js +0 -345
  228. package/dist/index-JLqnaery.js +0 -372
  229. package/dist/index-JRCQ1CYj.js +0 -142
  230. package/dist/index-L86-iO8O.js +0 -345
  231. package/dist/index-Q56EoFor.js +0 -142
  232. package/dist/index-QxKMr6p0.js +0 -2829
  233. package/dist/index-THRvW9Xm.js +0 -2856
  234. package/dist/index-WIUmTlfL.js +0 -345
  235. package/dist/index-WRrsK0pR.js +0 -475
  236. package/dist/index-Wq652QGf.js +0 -2836
  237. package/dist/index-YnSLCdjP.js +0 -475
  238. package/dist/index-Ynf0lvBE.js +0 -142
  239. package/dist/index-_OtTmb9i.js +0 -142
  240. package/dist/index-_oqoy_3D.js +0 -142
  241. package/dist/index-cl4Y-BWw.js +0 -475
  242. package/dist/index-d_eHJkDW.js +0 -475
  243. package/dist/index-dnmEyUWB.js +0 -372
  244. package/dist/index-dz6CwD6A.js +0 -142
  245. package/dist/index-g4rkaRry.js +0 -475
  246. package/dist/index-g9bRMdAX.js +0 -142
  247. package/dist/index-h4z4-a2p.js +0 -2852
  248. package/dist/index-h7BhcQYM.js +0 -475
  249. package/dist/index-hI3qofTF.js +0 -345
  250. package/dist/index-iyQQumAA.js +0 -372
  251. package/dist/index-js_OhKON.js +0 -345
  252. package/dist/index-kgb4MdHr.js +0 -475
  253. package/dist/index-logKl0VM.js +0 -3144
  254. package/dist/index-lrFMrOlR.js +0 -3132
  255. package/dist/index-mEHxtQWj.js +0 -372
  256. package/dist/index-mNm1BV3n.js +0 -2857
  257. package/dist/index-oOzAFXfr.js +0 -142
  258. package/dist/index-s3vGq0ro.js +0 -345
  259. package/dist/index-wt7AbUqc.js +0 -2342
  260. package/dist/index.html +0 -28
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- @charset "UTF-8";:root{--color-primary: #409eff;--color-primary-light-3: #79bbff;--color-primary-light-5: #a0cfff;--color-primary-light-7: #c6e2ff;--color-primary-light-8: #d9ecff;--color-primary-light-9: #ecf5ff;--color-primary-dark-2: #337ecc;--color-success: #67c23a;--color-success-light: #e1f3d8;--color-success-dark: #529b2e;--color-warning: #e6a23c;--color-warning-light: #fdf6ec;--color-warning-dark: #b88230;--color-danger: #f56c6c;--color-danger-light: #fde2e2;--color-danger-dark: #c45656;--color-info: #909399;--color-info-light: #f4f4f5;--color-info-dark: #73767a;--color-text-primary: #303133;--color-text-regular: #606266;--color-text-secondary: #909399;--color-text-placeholder: #a8abb2;--color-text-disabled: #c0c4cc;--color-border: #dcdfe6;--color-border-light: #e4e7ed;--color-border-lighter: #ebeef5;--color-border-extra-light: #f2f6fc;--color-border-dark: #d4d7de;--color-fill: #f5f7fa;--color-fill-light: #fafafa;--color-fill-lighter: #fafcff;--color-fill-blank: #ffffff;--bg-color: #ffffff;--bg-color-page: #f2f3f5;--bg-color-overlay: #ffffff;--box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .1);--box-shadow-light: 0 2px 8px 0 rgba(0, 0, 0, .06);--box-shadow-lighter: 0 1px 4px 0 rgba(0, 0, 0, .04);--box-shadow-dark: 0 4px 16px 0 rgba(0, 0, 0, .12);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-size-base: 14px;--font-size-small: 12px;--font-size-large: 16px;--font-size-extra-large: 18px;--border-radius-base: 4px;--border-radius-small: 2px;--border-radius-large: 8px;--border-radius-round: 20px;--border-radius-circle: 50%;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--component-size-large: 40px;--component-size-default: 32px;--component-size-small: 24px;--transition-duration: .3s;--transition-duration-fast: .2s;--transition-duration-slow: .5s;--z-index-dropdown: 1000;--z-index-sticky: 1020;--z-index-fixed: 1030;--z-index-modal-backdrop: 1040;--z-index-modal: 1050;--z-index-popover: 1060;--z-index-tooltip: 1070;--sidebar-width: 210px;--sidebar-collapsed-width: 64px;--header-height: 50px;--tabs-height: 40px;--footer-height: 30px}.dark{--color-text-primary: #e5eaf3;--color-text-regular: #cfd3dc;--color-text-secondary: #a3a6ad;--color-text-placeholder: #8d9095;--color-text-disabled: #6c6e72;--color-border: #4c4d4f;--color-border-light: #414243;--color-border-lighter: #363637;--color-border-extra-light: #2b2b2c;--color-border-dark: #58585b;--color-fill: #303030;--color-fill-light: #262727;--color-fill-lighter: #1d1d1d;--color-fill-blank: #141414;--bg-color: #1d1e1f;--bg-color-page: #0a0a0a;--bg-color-overlay: #1d1e1f;--box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .3);--box-shadow-light: 0 2px 8px 0 rgba(0, 0, 0, .24);--box-shadow-lighter: 0 1px 4px 0 rgba(0, 0, 0, .2);--box-shadow-dark: 0 4px 16px 0 rgba(0, 0, 0, .36)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{width:100%;height:100%;font-size:var(--font-size-base);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{width:100%;height:100%;font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--color-text-primary);background-color:var(--bg-color-page)}#app{width:100%;height:100%}a{color:var(--color-primary);text-decoration:none;cursor:pointer;transition:color var(--transition-duration-fast)}a:hover{color:var(--color-primary-light-3)}ul,ol{list-style:none}img{max-width:100%;height:auto;vertical-align:middle}button{cursor:pointer;font-family:inherit;font-size:inherit;border:none;background:none;outline:none}button:disabled{cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit;outline:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{margin:0;font-weight:500;color:var(--color-text-primary)}p{margin:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background-color:var(--color-fill-light);border-radius:3px}::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-secondary)}::selection{background-color:var(--color-primary-light-8);color:var(--color-primary)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-duration)}.fade-enter-from,.fade-leave-to{opacity:0}.fade-scale-enter-active,.fade-scale-leave-active{transition:all var(--transition-duration)}.fade-scale-enter-from,.fade-scale-leave-to{opacity:0;transform:scale(.9)}.fade-transform-enter-active,.fade-transform-leave-active{transition:all var(--transition-duration-fast)}.fade-transform-enter-from{opacity:0;transform:translate(-10px)}.fade-transform-leave-to{opacity:0;transform:translate(10px)}.slide-down-enter-active,.slide-down-leave-active{transition:all var(--transition-duration)}.slide-down-enter-from,.slide-down-leave-to{opacity:0;transform:translateY(-20px)}.slide-up-enter-active,.slide-up-leave-active{transition:all var(--transition-duration)}.slide-up-enter-from,.slide-up-leave-to{opacity:0;transform:translateY(20px)}.slide-left-enter-active,.slide-left-leave-active{transition:all var(--transition-duration)}.slide-left-enter-from,.slide-left-leave-to{opacity:0;transform:translate(20px)}.slide-right-enter-active,.slide-right-leave-active{transition:all var(--transition-duration)}.slide-right-enter-from,.slide-right-leave-to{opacity:0;transform:translate(-20px)}.zoom-enter-active,.zoom-leave-active{transition:all var(--transition-duration)}.zoom-enter-from,.zoom-leave-to{opacity:0;transform:scale(.5)}.list-enter-active,.list-leave-active{transition:all var(--transition-duration)}.list-enter-from,.list-leave-to{opacity:0;transform:translateY(30px)}.collapse-transition{transition:width var(--transition-duration),padding var(--transition-duration)}.dark .sidebar,.dark .layout__aside{background-color:#1d1e1f}.dark .sidebar{border-right:1px solid #363637}.dark .sidebar__search-results{background-color:#1d1e1f;border-color:#363637}.dark .sidebar__search-item:hover{background-color:#262727}.dark .sidebar__search-item-title{color:#cfd3dc}.dark .sidebar__search-item-parent{color:#a3a6ad}.dark .sidebar__logo{border-bottom-color:#363637}.dark .sidebar__user{border-top-color:#363637}.dark .sidebar__user-name{color:#cfd3dc}.dark .sidebar__user-role{color:#a3a6ad}.dark .x-menu{background-color:#1d1e1f!important;border-color:#363637;color:#cfd3dc}.dark .x-menu.x-menu--vertical{border-right-color:#363637}.dark .x-menu.x-menu--horizontal{border-bottom-color:#363637;background-color:#1d1e1f!important}.dark .x-menu-item{color:#cfd3dc!important;background-color:transparent!important}.dark .x-menu-item:hover{background-color:#262727!important}.dark .x-menu-item.is-active{color:#409eff!important;background-color:#409eff1a!important}.dark .x-menu-item.is-active:before{background-color:#409eff}.dark .x-menu-item.is-horizontal:hover{background-color:transparent!important}.dark .x-menu-item.is-horizontal.is-active{background-color:transparent!important;border-bottom-color:#409eff}.dark .x-sub-menu__title{color:#cfd3dc!important;background-color:transparent!important}.dark .x-sub-menu__title:hover{background-color:#262727!important}.dark .x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .x-sub-menu__menu .x-menu-item{background-color:transparent!important;color:#cfd3dc!important}.dark .x-sub-menu__menu .x-menu-item:hover{background-color:#262727!important}.dark .x-sub-menu__menu .x-menu-item.is-active{color:#409eff!important;background-color:#409eff1a!important}.dark .x-sub-menu__arrow{color:#a3a6ad}.dark .x-sub-menu.is-active>.x-sub-menu__title{color:#409eff!important}.dark .x-sub-menu--horizontal .x-sub-menu__title:hover{background-color:transparent!important}.dark .x-sub-menu--horizontal .x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637}.dark .x-sub-menu.is-collapse>.x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637}.dark .header{background-color:#1d1e1f;border-bottom-color:#363637}.dark .header__collapse{color:#cfd3dc}.dark .header__breadcrumb{color:#a3a6ad}.dark .header__user-name{color:#cfd3dc}.dark .header__user-arrow{color:#a3a6ad}.dark .header__action:hover,.dark .header__user-trigger:hover{background-color:#262727}.dark .header__dropdown{background-color:#1d1e1f;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .header__dropdown-name{color:#e5eaf3}.dark .header__dropdown-role{color:#a3a6ad}.dark .header__dropdown-divider{background-color:#363637}.dark .header__dropdown-item{color:#cfd3dc}.dark .header__dropdown-item:hover{background-color:#262727;color:#e5eaf3}.dark .top-menu{background-color:#1d1e1f}.dark .top-menu__menu{background-color:#1d1e1f!important}.dark .top-menu__menu-char{background-color:#409eff33;color:#79bbff}.dark .top-menu__action{color:#cfd3dc}.dark .top-menu__action:hover{background-color:#262727;color:#409eff}.dark .top-menu__user-trigger:hover{background-color:#262727}.dark .top-menu__user-name{color:#cfd3dc}.dark .top-menu__user-arrow{color:#a3a6ad}.dark .top-menu__dropdown{background-color:#1d1e1f;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .top-menu__dropdown-name{color:#e5eaf3}.dark .top-menu__dropdown-role{color:#a3a6ad}.dark .top-menu__dropdown-divider{background-color:#363637}.dark .top-menu__dropdown-item{color:#cfd3dc}.dark .top-menu__dropdown-item:hover{background-color:#262727;color:#e5eaf3}.dark .x-button.x-button--default{background-color:#1d1e1f;border-color:#4c4d4f;color:#cfd3dc}.dark .x-button.x-button--default:hover{border-color:#409eff;color:#409eff}.dark .x-button.x-button--text{color:#409eff}.dark .x-form-item__label{color:#cfd3dc}.dark .x-form-item__error{color:#f56c6c}.dark .x-input{background-color:#1d1e1f;border-color:#4c4d4f}.dark .x-input.is-focus{border-color:#409eff}.dark .x-input .x-input__inner{background-color:transparent;color:#e5eaf3}.dark .x-input .x-input__inner::placeholder{color:#6c6e72}.dark .x-input .x-input__suffix,.dark .x-input .x-input__prefix{color:#a3a6ad}.dark .x-select{background-color:#1d1e1f;border-color:#4c4d4f}.dark .x-card{background-color:#1d1e1f;border-color:#363637}.dark .x-card__header{border-bottom-color:#363637;color:#e5eaf3}.dark .data-table th{background-color:#262727;color:#cfd3dc;border-bottom-color:#363637}.dark .data-table td{border-bottom-color:#363637;color:#cfd3dc}.dark .data-table tr:hover td{background-color:#262727}.dark .x-modal__wrapper{background-color:#000000b3}.dark .x-modal__container{background-color:#1d1e1f;border:1px solid #363637}.dark .x-modal__header{border-bottom-color:#363637;color:#e5eaf3}.dark .x-modal__footer{border-top-color:#363637}.dark .x-message{background-color:#1d1e1f;border:1px solid #363637}.dark .x-tag.x-tag--primary{background-color:#409eff33;color:#79bbff;border-color:#409eff4d}.dark .x-tag.x-tag--success{background-color:#67c23a33;color:#95d475;border-color:#67c23a4d}.dark .x-tag.x-tag--warning{background-color:#e6a23c33;color:#eebe77;border-color:#e6a23c4d}.dark .x-tag.x-tag--danger{background-color:#f56c6c33;color:#fab6b6;border-color:#f56c6c4d}.dark .x-tag.x-tag--info{background-color:#90939933;color:#c0c4cc;border-color:#9093994d}.dark .x-switch{background-color:#4c4d4f}.dark .x-switch.is-checked{background-color:#409eff}.dark .x-pagination{color:#cfd3dc}.dark .x-pagination__item{background-color:#1d1e1f;border-color:#4c4d4f;color:#cfd3dc}.dark .x-pagination__item:hover{color:#409eff}.dark .x-pagination__item.is-active{background-color:#409eff;border-color:#409eff;color:#fff}.dark .login{background:linear-gradient(135deg,#1a1a2e,#16213e)}.dark .login__container{background-color:#1d1e1f;border:1px solid #363637}.dark .login__title{color:#409eff}.dark .login__subtitle{color:#a3a6ad}.dark .login__footer{color:#6c6e72}.dark .stat-card__title{color:#a3a6ad}.dark .quick-link{background-color:#262727}.dark .quick-link:hover{background-color:#409eff1a}.dark .quick-link__title{color:#cfd3dc}.dark .activity-item{border-bottom-color:#363637}.dark .activity-item__action{color:#cfd3dc}.dark .search-card,.dark .table-card,.dark .x-popconfirm{background-color:#1d1e1f;border:1px solid #363637}.dark .x-drawer{background-color:#1d1e1f}.dark .x-drawer__header{background-color:#1d1e1f;border-bottom-color:#363637;color:#e5eaf3}.dark .x-drawer__body{background-color:#1d1e1f;color:#cfd3dc}.dark .x-drawer__footer{background-color:#1d1e1f;border-top-color:#363637}.dark .settings-drawer .settings-title{color:#e5eaf3}.dark .settings-drawer .settings-section{background-color:transparent}.dark .settings-drawer .layout-option{border-color:#4c4d4f;background-color:transparent}.dark .settings-drawer .layout-option:hover{border-color:#409eff}.dark .settings-drawer .layout-option.is-active{border-color:#409eff;background-color:#409eff1a}.dark .settings-drawer .layout-option__label,.dark .settings-drawer .settings-switch-item span{color:#cfd3dc}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-info{color:var(--color-info)}.bg-primary{background-color:var(--color-primary)}.bg-success{background-color:var(--color-success)}.bg-warning{background-color:var(--color-warning)}.bg-danger{background-color:var(--color-danger)}.mt-10{margin-top:10px}.mt-20{margin-top:20px}.mb-10{margin-bottom:10px}.mb-20{margin-bottom:20px}.ml-10{margin-left:10px}.mr-10{margin-right:10px}.p-10{padding:10px}.p-20{padding:20px}.card{background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow-light);padding:var(--spacing-md)}.page-container{padding:var(--spacing-md);min-height:100%}.search-bar{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.table-container{background-color:var(--bg-color);border-radius:var(--border-radius-base);padding:var(--spacing-md)}.pagination-container{display:flex;justify-content:flex-end;margin-top:var(--spacing-md)}.x-menu-item.is-active{color:var(--color-primary)!important;background-color:var(--color-primary-light-9)!important;position:relative}.x-menu-item.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--color-primary);border-radius:0 2px 2px 0}.x-sub-menu__menu .x-menu-item.is-active{color:var(--color-primary)!important;background-color:var(--color-primary-light-9)!important;position:relative}.x-sub-menu__menu .x-menu-item.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--color-primary);border-radius:0 2px 2px 0}html.grey-mode{filter:grayscale(100%);-webkit-filter:grayscale(100%)}:root{--bg-color: #ffffff;--bg-color-page: #f5f7fa;--color-border-lighter: #e4e7ed}.menu-item__content[data-v-d160ae6a]{display:inline-flex;align-items:center;line-height:1}.menu-item__text[data-v-d160ae6a]{flex:1;line-height:1}.menu-item__icon[data-v-d160ae6a]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;flex-shrink:0}.menu-item__char[data-v-d160ae6a]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.sidebar[data-v-9d00a6d4]{height:100%;display:flex;flex-direction:column;background-color:var(--bg-color);border-right:1px solid var(--color-border-lighter)}.sidebar--collapsed .sidebar__logo[data-v-9d00a6d4]{justify-content:center;padding:0}.sidebar__logo[data-v-9d00a6d4]{height:50px;display:flex;align-items:center;padding:0 20px;gap:10px;border-bottom:1px solid var(--color-border-lighter)}.sidebar__logo-img[data-v-9d00a6d4]{width:32px;height:32px}.sidebar__logo-text[data-v-9d00a6d4]{font-size:16px;font-weight:600;color:var(--color-primary)}.sidebar__menu[data-v-9d00a6d4]{flex:1;border-right:none;overflow-y:auto}.sidebar__user[data-v-9d00a6d4]{padding:10px;border-top:1px solid var(--color-border-lighter);display:flex;align-items:center;justify-content:space-between}.sidebar__user-info[data-v-9d00a6d4]{display:flex;flex-direction:column;gap:2px}.sidebar__user-name[data-v-9d00a6d4]{font-size:14px;font-weight:500}.sidebar__user-role[data-v-9d00a6d4]{font-size:12px;color:var(--color-text-secondary)}.header[data-v-89179947]{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:100%;background-color:var(--bg-color);border-bottom:1px solid var(--color-border-lighter)}.header__left[data-v-89179947]{display:flex;align-items:center;gap:15px}.header__collapse[data-v-89179947]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-regular);transition:color .2s}.header__collapse[data-v-89179947]:hover{color:var(--color-primary)}.header__breadcrumb[data-v-89179947]{font-size:14px;color:var(--color-text-secondary)}.header__breadcrumb .breadcrumb-separator[data-v-89179947]{margin:0 8px;color:var(--color-text-placeholder)}.header__breadcrumb .is-current[data-v-89179947]{color:var(--color-text-primary);font-weight:500}.header__right[data-v-89179947]{display:flex;align-items:center;gap:8px}.header__search[data-v-89179947]{position:relative;display:flex;align-items:center;background-color:var(--color-fill-light);border-radius:var(--border-radius-base);padding:0 12px;height:32px;width:200px}.header__search-icon[data-v-89179947]{color:var(--color-text-secondary)}.header__search-input[data-v-89179947]{flex:1;height:100%;font-size:14px;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding-left:8px}.header__search-input[data-v-89179947]::placeholder{color:var(--color-text-placeholder)}.header__search-dropdown[data-v-89179947]{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:200px;max-height:300px;overflow-y:auto;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);z-index:100}.header__search-results[data-v-89179947]{padding:8px 0}.header__search-item[data-v-89179947]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .2s}.header__search-item[data-v-89179947]:hover{background-color:var(--color-fill)}.header__search-item-title[data-v-89179947]{font-size:14px;color:var(--color-text-primary)}.header__search-item-parent[data-v-89179947]{font-size:12px;color:var(--color-text-secondary);margin-left:auto}.header__search-icon[data-v-89179947]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.header__search-char[data-v-89179947]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.header__search-empty[data-v-89179947]{padding:16px 12px;text-align:center;color:var(--color-text-secondary);font-size:14px}.header__action[data-v-89179947]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--border-radius-base);color:var(--color-text-regular);transition:all .2s}.header__action[data-v-89179947]:hover{background-color:var(--color-fill);color:var(--color-primary)}.header__user[data-v-89179947]{position:relative;margin-left:8px}.header__user-trigger[data-v-89179947]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:var(--border-radius-base);transition:background-color .2s}.header__user-trigger[data-v-89179947]:hover{background-color:var(--color-fill)}.header__user-name[data-v-89179947]{font-size:14px;color:var(--color-text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header__user-arrow[data-v-89179947]{font-size:10px;color:var(--color-text-secondary);transition:transform .2s}.header__user-arrow.is-active[data-v-89179947]{transform:rotate(180deg)}.header__avatar[data-v-89179947]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:500}.header__dropdown[data-v-89179947]{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);overflow:hidden;z-index:100}.header__dropdown-header[data-v-89179947]{display:flex;align-items:center;gap:12px;padding:16px}.header__dropdown-avatar[data-v-89179947]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:500}.header__dropdown-info[data-v-89179947]{flex:1}.header__dropdown-name[data-v-89179947]{font-size:14px;font-weight:500;color:var(--color-text-primary)}.header__dropdown-role[data-v-89179947]{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.header__dropdown-divider[data-v-89179947]{height:1px;background-color:var(--color-border-lighter)}.header__dropdown-menu[data-v-89179947]{padding:8px 0}.header__dropdown-item[data-v-89179947]{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:14px;color:var(--color-text-regular);transition:all .2s}.header__dropdown-item[data-v-89179947]:hover{background-color:var(--color-fill);color:var(--color-text-primary)}.header__dropdown-item--danger[data-v-89179947]{color:var(--color-danger)}.header__dropdown-item--danger[data-v-89179947]:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.settings-drawer .settings-section[data-v-89179947]{margin-bottom:24px}.settings-drawer .settings-title[data-v-89179947]{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:12px}.settings-drawer .settings-layout-options[data-v-89179947]{display:flex;gap:12px}.settings-drawer .layout-option[data-v-89179947]{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius-base);cursor:pointer;transition:all .2s}.settings-drawer .layout-option[data-v-89179947]:hover{border-color:var(--color-primary-light-5)}.settings-drawer .layout-option.is-active[data-v-89179947]{border-color:var(--color-primary);background-color:var(--color-primary-light-9)}.settings-drawer .layout-option__preview[data-v-89179947]{width:48px;height:36px;border:1px solid var(--color-border-light);border-radius:2px;overflow:hidden}.settings-drawer .layout-option__label[data-v-89179947]{font-size:12px;color:var(--color-text-regular)}.settings-drawer .layout-preview-sidebar[data-v-89179947]{display:flex;height:100%}.settings-drawer .layout-preview-sidebar .preview-aside[data-v-89179947]{width:25%;height:100%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-sidebar .preview-main[data-v-89179947]{flex:1;display:flex;flex-direction:column}.settings-drawer .layout-preview-sidebar .preview-main .preview-header[data-v-89179947]{height:20%;background-color:var(--color-border-light)}.settings-drawer .layout-preview-sidebar .preview-main .preview-content[data-v-89179947]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-top[data-v-89179947]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-top .preview-header-full[data-v-89179947]{height:25%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-top .preview-content-full[data-v-89179947]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-mix[data-v-89179947]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-mix .preview-header-mix[data-v-89179947]{height:25%;background-color:var(--color-primary-light-7);display:flex}.settings-drawer .layout-preview-mix .preview-header-mix .preview-mix-left[data-v-89179947]{width:30%;background-color:var(--color-primary)}.settings-drawer .layout-preview-mix .preview-mix-body[data-v-89179947]{flex:1;display:flex}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-aside[data-v-89179947]{width:25%;background-color:var(--color-primary-light-8)}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-content[data-v-89179947]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .settings-color-options[data-v-89179947]{display:flex;gap:12px}.settings-drawer .color-option[data-v-89179947]{width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.settings-drawer .color-option[data-v-89179947]:hover{transform:scale(1.1)}.settings-drawer .color-option.is-active[data-v-89179947]{box-shadow:0 0 0 2px var(--bg-color),0 0 0 4px var(--color-primary)}.settings-drawer .settings-switch-list[data-v-89179947]{display:flex;flex-direction:column;gap:12px}.settings-drawer .settings-switch-item[data-v-89179947]{display:flex;align-items:center;justify-content:space-between}.settings-drawer .settings-switch-item span[data-v-89179947]{font-size:14px;color:var(--color-text-regular)}.settings-drawer .switch-wrapper[data-v-89179947]{width:44px;height:22px;display:flex;align-items:center;cursor:pointer}.settings-drawer .switch-wrapper .switch-core[data-v-89179947]{width:100%;height:100%;border-radius:11px;background-color:var(--color-border);position:relative;transition:background-color .2s}.settings-drawer .switch-wrapper .switch-core[data-v-89179947]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background-color:#fff;border-radius:50%;transition:left .2s}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-89179947]{background-color:var(--color-primary)}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-89179947]:after{left:24px}.dropdown-enter-active[data-v-89179947],.dropdown-leave-active[data-v-89179947]{transition:all .2s ease}.dropdown-enter-from[data-v-89179947],.dropdown-leave-to[data-v-89179947]{opacity:0;transform:translateY(-10px)}.search-dropdown-enter-active[data-v-89179947],.search-dropdown-leave-active[data-v-89179947]{transition:all .2s ease}.search-dropdown-enter-from[data-v-89179947],.search-dropdown-leave-to[data-v-89179947]{opacity:0;transform:translateY(-4px)}.top-menu[data-v-ff5f8764]{width:100%;height:100%;display:flex;align-items:center;padding:0 20px}.top-menu__logo[data-v-ff5f8764]{display:flex;align-items:center;gap:10px;margin-right:20px}.top-menu__logo-img[data-v-ff5f8764]{width:32px;height:32px}.top-menu__logo-text[data-v-ff5f8764]{font-size:16px;font-weight:600;color:var(--color-primary)}.top-menu__menu[data-v-ff5f8764]{flex:1;border-bottom:none;height:49px;display:flex;align-items:center;line-height:49px}.top-menu__menu[data-v-ff5f8764] .x-menu{height:49px;line-height:49px;border-bottom:none}.top-menu__menu[data-v-ff5f8764] .x-menu--horizontal{height:49px;display:flex;align-items:center;border-bottom:none;line-height:49px}.top-menu__menu[data-v-ff5f8764] .x-menu-item{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.top-menu__menu[data-v-ff5f8764] .x-menu-item.is-horizontal{height:49px;line-height:49px}.top-menu__menu[data-v-ff5f8764] .x-menu-item__content{height:49px}.top-menu__menu[data-v-ff5f8764] .x-sub-menu{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.top-menu__menu[data-v-ff5f8764] .x-sub-menu--horizontal{height:49px}.top-menu__menu[data-v-ff5f8764] .x-sub-menu__title{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.top-menu__menu[data-v-ff5f8764] .x-sub-menu__content{height:49px}.top-menu__menu-content[data-v-ff5f8764]{align-items:center;line-height:1}.top-menu__menu-text[data-v-ff5f8764]{line-height:1}.top-menu__menu-icon[data-v-ff5f8764]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;flex-shrink:0}.top-menu__menu-char[data-v-ff5f8764]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.top-menu__actions[data-v-ff5f8764]{display:flex;align-items:center;gap:8px}.top-menu__search[data-v-ff5f8764]{position:relative;display:flex;align-items:center;background-color:var(--color-fill-light);border-radius:var(--border-radius-base);padding:0 12px;height:32px;width:200px}.top-menu__search-icon[data-v-ff5f8764]{color:var(--color-text-secondary)}.top-menu__search-input[data-v-ff5f8764]{flex:1;height:100%;font-size:14px;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding-left:8px}.top-menu__search-input[data-v-ff5f8764]::placeholder{color:var(--color-text-placeholder)}.top-menu__search-dropdown[data-v-ff5f8764]{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:200px;max-height:300px;overflow-y:auto;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);z-index:100}.top-menu__search-results[data-v-ff5f8764]{padding:8px 0}.top-menu__search-item[data-v-ff5f8764]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .2s}.top-menu__search-item[data-v-ff5f8764]:hover{background-color:var(--color-fill)}.top-menu__search-item-title[data-v-ff5f8764]{font-size:14px;color:var(--color-text-primary)}.top-menu__search-item-parent[data-v-ff5f8764]{font-size:12px;color:var(--color-text-secondary);margin-left:auto}.top-menu__search-icon-item[data-v-ff5f8764]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.top-menu__search-char[data-v-ff5f8764]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.top-menu__search-empty[data-v-ff5f8764]{padding:16px 12px;text-align:center;color:var(--color-text-secondary);font-size:14px}.top-menu__action[data-v-ff5f8764]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--border-radius-base);color:var(--color-text-regular);transition:all .2s}.top-menu__action[data-v-ff5f8764]:hover{background-color:var(--color-fill);color:var(--color-primary)}.top-menu__user[data-v-ff5f8764]{position:relative;margin-left:8px}.top-menu__user-trigger[data-v-ff5f8764]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:var(--border-radius-base);transition:background-color .2s}.top-menu__user-trigger[data-v-ff5f8764]:hover{background-color:var(--color-fill)}.top-menu__user-name[data-v-ff5f8764]{font-size:14px;color:var(--color-text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-menu__user-arrow[data-v-ff5f8764]{font-size:10px;color:var(--color-text-secondary);transition:transform .2s}.top-menu__user-arrow.is-active[data-v-ff5f8764]{transform:rotate(180deg)}.top-menu__avatar[data-v-ff5f8764]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:500}.top-menu__dropdown[data-v-ff5f8764]{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);overflow:hidden;z-index:100}.top-menu__dropdown-header[data-v-ff5f8764]{display:flex;align-items:center;gap:12px;padding:16px}.top-menu__dropdown-avatar[data-v-ff5f8764]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:500}.top-menu__dropdown-info[data-v-ff5f8764]{flex:1}.top-menu__dropdown-name[data-v-ff5f8764]{font-size:14px;font-weight:500;color:var(--color-text-primary)}.top-menu__dropdown-role[data-v-ff5f8764]{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.top-menu__dropdown-divider[data-v-ff5f8764]{height:1px;background-color:var(--color-border-lighter)}.top-menu__dropdown-menu[data-v-ff5f8764]{padding:8px 0}.top-menu__dropdown-item[data-v-ff5f8764]{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:14px;color:var(--color-text-regular);transition:all .2s}.top-menu__dropdown-item[data-v-ff5f8764]:hover{background-color:var(--color-fill);color:var(--color-text-primary)}.top-menu__dropdown-item--danger[data-v-ff5f8764]{color:var(--color-danger)}.top-menu__dropdown-item--danger[data-v-ff5f8764]:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.settings-drawer .settings-section[data-v-ff5f8764]{margin-bottom:24px}.settings-drawer .settings-title[data-v-ff5f8764]{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:12px}.settings-drawer .settings-layout-options[data-v-ff5f8764]{display:flex;gap:12px}.settings-drawer .layout-option[data-v-ff5f8764]{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius-base);cursor:pointer;transition:all .2s}.settings-drawer .layout-option[data-v-ff5f8764]:hover{border-color:var(--color-primary-light-5)}.settings-drawer .layout-option.is-active[data-v-ff5f8764]{border-color:var(--color-primary);background-color:var(--color-primary-light-9)}.settings-drawer .layout-option__preview[data-v-ff5f8764]{width:48px;height:36px;border:1px solid var(--color-border-light);border-radius:2px;overflow:hidden}.settings-drawer .layout-option__label[data-v-ff5f8764]{font-size:12px;color:var(--color-text-regular)}.settings-drawer .layout-preview-sidebar[data-v-ff5f8764]{display:flex;height:100%}.settings-drawer .layout-preview-sidebar .preview-aside[data-v-ff5f8764]{width:25%;height:100%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-sidebar .preview-main[data-v-ff5f8764]{flex:1;display:flex;flex-direction:column}.settings-drawer .layout-preview-sidebar .preview-main .preview-header[data-v-ff5f8764]{height:20%;background-color:var(--color-border-light)}.settings-drawer .layout-preview-sidebar .preview-main .preview-content[data-v-ff5f8764]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-top[data-v-ff5f8764]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-top .preview-header-full[data-v-ff5f8764]{height:25%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-top .preview-content-full[data-v-ff5f8764]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-mix[data-v-ff5f8764]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-mix .preview-header-mix[data-v-ff5f8764]{height:25%;background-color:var(--color-primary-light-7);display:flex}.settings-drawer .layout-preview-mix .preview-header-mix .preview-mix-left[data-v-ff5f8764]{width:30%;background-color:var(--color-primary)}.settings-drawer .layout-preview-mix .preview-mix-body[data-v-ff5f8764]{flex:1;display:flex}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-aside[data-v-ff5f8764]{width:25%;background-color:var(--color-primary-light-8)}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-content[data-v-ff5f8764]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .settings-color-options[data-v-ff5f8764]{display:flex;gap:12px}.settings-drawer .color-option[data-v-ff5f8764]{width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.settings-drawer .color-option[data-v-ff5f8764]:hover{transform:scale(1.1)}.settings-drawer .color-option.is-active[data-v-ff5f8764]{box-shadow:0 0 0 2px var(--bg-color),0 0 0 4px var(--color-primary)}.settings-drawer .settings-switch-list[data-v-ff5f8764]{display:flex;flex-direction:column;gap:12px}.settings-drawer .settings-switch-item[data-v-ff5f8764]{display:flex;align-items:center;justify-content:space-between}.settings-drawer .settings-switch-item span[data-v-ff5f8764]{font-size:14px;color:var(--color-text-regular)}.settings-drawer .switch-wrapper[data-v-ff5f8764]{width:44px;height:22px;display:flex;align-items:center;cursor:pointer}.settings-drawer .switch-wrapper .switch-core[data-v-ff5f8764]{width:100%;height:100%;border-radius:11px;background-color:var(--color-border);position:relative;transition:background-color .2s}.settings-drawer .switch-wrapper .switch-core[data-v-ff5f8764]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background-color:#fff;border-radius:50%;transition:left .2s}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-ff5f8764]{background-color:var(--color-primary)}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-ff5f8764]:after{left:24px}.dropdown-enter-active[data-v-ff5f8764],.dropdown-leave-active[data-v-ff5f8764]{transition:all .2s ease}.dropdown-enter-from[data-v-ff5f8764],.dropdown-leave-to[data-v-ff5f8764]{opacity:0;transform:translateY(-10px)}.search-dropdown-enter-active[data-v-ff5f8764],.search-dropdown-leave-active[data-v-ff5f8764]{transition:all .2s ease}.search-dropdown-enter-from[data-v-ff5f8764],.search-dropdown-leave-to[data-v-ff5f8764]{opacity:0;transform:translateY(-4px)}.mix-top-menu[data-v-25806305]{width:100%;height:100%;display:flex;align-items:center;padding:0 20px}.mix-top-menu__logo[data-v-25806305]{display:flex;align-items:center;gap:10px;margin-right:20px}.mix-top-menu__logo-img[data-v-25806305]{width:32px;height:32px}.mix-top-menu__logo-text[data-v-25806305]{font-size:16px;font-weight:600;color:var(--color-primary)}.mix-top-menu__menu[data-v-25806305]{flex:1;border-bottom:none;height:49px;display:flex;align-items:center;line-height:49px}.mix-top-menu__menu[data-v-25806305] .x-menu{height:49px;line-height:49px;border-bottom:none}.mix-top-menu__menu[data-v-25806305] .x-menu--horizontal{height:49px;display:flex;align-items:center;border-bottom:none;line-height:49px}.mix-top-menu__menu[data-v-25806305] .x-menu-item{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.mix-top-menu__menu[data-v-25806305] .x-menu-item.is-horizontal{height:49px;line-height:49px}.mix-top-menu__menu[data-v-25806305] .x-menu-item__content{height:49px}.mix-top-menu__menu[data-v-25806305] .x-sub-menu{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.mix-top-menu__menu[data-v-25806305] .x-sub-menu--horizontal{height:49px}.mix-top-menu__menu[data-v-25806305] .x-sub-menu__title{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.mix-top-menu__menu[data-v-25806305] .x-sub-menu__content{height:49px}.mix-top-menu__menu-content[data-v-25806305]{align-items:center;line-height:1}.mix-top-menu__menu-text[data-v-25806305]{line-height:1}.mix-top-menu__menu-icon[data-v-25806305]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;flex-shrink:0}.mix-top-menu__menu-char[data-v-25806305]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.mix-top-menu__actions[data-v-25806305]{display:flex;align-items:center;gap:8px}.mix-top-menu__search[data-v-25806305]{position:relative;display:flex;align-items:center;background-color:var(--color-fill-light);border-radius:var(--border-radius-base);padding:0 12px;height:32px;width:200px}.mix-top-menu__search-icon[data-v-25806305]{color:var(--color-text-secondary)}.mix-top-menu__search-input[data-v-25806305]{flex:1;height:100%;font-size:14px;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding-left:8px}.mix-top-menu__search-input[data-v-25806305]::placeholder{color:var(--color-text-placeholder)}.mix-top-menu__search-dropdown[data-v-25806305]{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:200px;max-height:300px;overflow-y:auto;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);z-index:100}.mix-top-menu__search-results[data-v-25806305]{padding:8px 0}.mix-top-menu__search-item[data-v-25806305]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .2s}.mix-top-menu__search-item[data-v-25806305]:hover{background-color:var(--color-fill)}.mix-top-menu__search-item-title[data-v-25806305]{font-size:14px;color:var(--color-text-primary)}.mix-top-menu__search-item-parent[data-v-25806305]{font-size:12px;color:var(--color-text-secondary);margin-left:auto}.mix-top-menu__search-icon-item[data-v-25806305]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.mix-top-menu__search-char[data-v-25806305]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.mix-top-menu__search-empty[data-v-25806305]{padding:16px 12px;text-align:center;color:var(--color-text-secondary);font-size:14px}.mix-top-menu__action[data-v-25806305]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--border-radius-base);color:var(--color-text-regular);transition:all .2s}.mix-top-menu__action[data-v-25806305]:hover{background-color:var(--color-fill);color:var(--color-primary)}.mix-top-menu__user[data-v-25806305]{position:relative;margin-left:8px}.mix-top-menu__user-trigger[data-v-25806305]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:var(--border-radius-base);transition:background-color .2s}.mix-top-menu__user-trigger[data-v-25806305]:hover{background-color:var(--color-fill)}.mix-top-menu__user-name[data-v-25806305]{font-size:14px;color:var(--color-text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mix-top-menu__user-arrow[data-v-25806305]{font-size:10px;color:var(--color-text-secondary);transition:transform .2s}.mix-top-menu__user-arrow.is-active[data-v-25806305]{transform:rotate(180deg)}.mix-top-menu__avatar[data-v-25806305]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:500}.mix-top-menu__dropdown[data-v-25806305]{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);overflow:hidden;z-index:100}.mix-top-menu__dropdown-header[data-v-25806305]{display:flex;align-items:center;gap:12px;padding:16px}.mix-top-menu__dropdown-avatar[data-v-25806305]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:500}.mix-top-menu__dropdown-info[data-v-25806305]{flex:1}.mix-top-menu__dropdown-name[data-v-25806305]{font-size:14px;font-weight:500;color:var(--color-text-primary)}.mix-top-menu__dropdown-role[data-v-25806305]{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.mix-top-menu__dropdown-divider[data-v-25806305]{height:1px;background-color:var(--color-border-lighter)}.mix-top-menu__dropdown-menu[data-v-25806305]{padding:8px 0}.mix-top-menu__dropdown-item[data-v-25806305]{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:14px;color:var(--color-text-regular);transition:all .2s}.mix-top-menu__dropdown-item[data-v-25806305]:hover{background-color:var(--color-fill);color:var(--color-text-primary)}.mix-top-menu__dropdown-item--danger[data-v-25806305]{color:var(--color-danger)}.mix-top-menu__dropdown-item--danger[data-v-25806305]:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.settings-drawer .settings-section[data-v-25806305]{margin-bottom:24px}.settings-drawer .settings-title[data-v-25806305]{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:12px}.settings-drawer .settings-layout-options[data-v-25806305]{display:flex;gap:12px}.settings-drawer .layout-option[data-v-25806305]{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius-base);cursor:pointer;transition:all .2s}.settings-drawer .layout-option[data-v-25806305]:hover{border-color:var(--color-primary-light-5)}.settings-drawer .layout-option.is-active[data-v-25806305]{border-color:var(--color-primary);background-color:var(--color-primary-light-9)}.settings-drawer .layout-option__preview[data-v-25806305]{width:48px;height:36px;border:1px solid var(--color-border-light);border-radius:2px;overflow:hidden}.settings-drawer .layout-option__label[data-v-25806305]{font-size:12px;color:var(--color-text-regular)}.settings-drawer .layout-preview-sidebar[data-v-25806305]{display:flex;height:100%}.settings-drawer .layout-preview-sidebar .preview-aside[data-v-25806305]{width:25%;height:100%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-sidebar .preview-main[data-v-25806305]{flex:1;display:flex;flex-direction:column}.settings-drawer .layout-preview-sidebar .preview-main .preview-header[data-v-25806305]{height:20%;background-color:var(--color-border-light)}.settings-drawer .layout-preview-sidebar .preview-main .preview-content[data-v-25806305]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-top[data-v-25806305]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-top .preview-header-full[data-v-25806305]{height:25%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-top .preview-content-full[data-v-25806305]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-mix[data-v-25806305]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-mix .preview-header-mix[data-v-25806305]{height:25%;background-color:var(--color-primary-light-7);display:flex}.settings-drawer .layout-preview-mix .preview-header-mix .preview-mix-left[data-v-25806305]{width:30%;background-color:var(--color-primary)}.settings-drawer .layout-preview-mix .preview-mix-body[data-v-25806305]{flex:1;display:flex}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-aside[data-v-25806305]{width:25%;background-color:var(--color-primary-light-8)}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-content[data-v-25806305]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .settings-color-options[data-v-25806305]{display:flex;gap:12px}.settings-drawer .color-option[data-v-25806305]{width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.settings-drawer .color-option[data-v-25806305]:hover{transform:scale(1.1)}.settings-drawer .color-option.is-active[data-v-25806305]{box-shadow:0 0 0 2px var(--bg-color),0 0 0 4px var(--color-primary)}.settings-drawer .settings-switch-list[data-v-25806305]{display:flex;flex-direction:column;gap:12px}.settings-drawer .settings-switch-item[data-v-25806305]{display:flex;align-items:center;justify-content:space-between}.settings-drawer .settings-switch-item span[data-v-25806305]{font-size:14px;color:var(--color-text-regular)}.settings-drawer .switch-wrapper[data-v-25806305]{width:44px;height:22px;display:flex;align-items:center;cursor:pointer}.settings-drawer .switch-wrapper .switch-core[data-v-25806305]{width:100%;height:100%;border-radius:11px;background-color:var(--color-border);position:relative;transition:background-color .2s}.settings-drawer .switch-wrapper .switch-core[data-v-25806305]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background-color:#fff;border-radius:50%;transition:left .2s}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-25806305]{background-color:var(--color-primary)}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-25806305]:after{left:24px}.dropdown-enter-active[data-v-25806305],.dropdown-leave-active[data-v-25806305]{transition:all .2s ease}.dropdown-enter-from[data-v-25806305],.dropdown-leave-to[data-v-25806305]{opacity:0;transform:translateY(-10px)}.search-dropdown-enter-active[data-v-25806305],.search-dropdown-leave-active[data-v-25806305]{transition:all .2s ease}.search-dropdown-enter-from[data-v-25806305],.search-dropdown-leave-to[data-v-25806305]{opacity:0;transform:translateY(-4px)}.layout[data-v-70b115a5]{display:flex;width:100%;height:100%}.layout--sidebar[data-v-70b115a5]{flex-direction:row}.layout--sidebar .layout__aside[data-v-70b115a5]{height:100%}.layout--sidebar .layout__main[data-v-70b115a5]{flex:1;display:flex;flex-direction:column;height:100%}.layout--top[data-v-70b115a5]{flex-direction:column}.layout--top .layout__main[data-v-70b115a5]{flex:1;display:flex;flex-direction:column;height:calc(100% - 50px)}.layout--top .layout__content[data-v-70b115a5]{flex:1}.layout--mix[data-v-70b115a5]{flex-direction:column}.layout--mix .layout__mix-top-menu[data-v-70b115a5]{width:100%;height:50px;background-color:var(--bg-color);border-bottom:1px solid var(--color-border-lighter);flex-shrink:0}.layout--mix .layout__mix-body[data-v-70b115a5]{flex:1;display:flex;flex-direction:row;height:calc(100% - 50px)}.layout__aside[data-v-70b115a5]{transition:width .3s;overflow:hidden;flex-shrink:0;height:100%}.layout__top-menu[data-v-70b115a5]{width:100%;height:50px;box-sizing:border-box;background-color:var(--bg-color);border-bottom:1px solid var(--color-border-lighter);flex-shrink:0}.layout__mix-top-menu[data-v-70b115a5]{width:100%;height:50px;box-sizing:border-box;flex-shrink:0}.layout__main[data-v-70b115a5]{flex:1;display:flex;flex-direction:column;overflow:hidden;height:100%}.layout__header[data-v-70b115a5]{height:50px;box-sizing:border-box;background-color:var(--bg-color);border-bottom:1px solid var(--color-border-lighter);flex-shrink:0}.layout__content[data-v-70b115a5]{flex:1;overflow:auto;background-color:var(--bg-color-page)}.tabs-wrapper[data-v-9156d8cd]{width:100%;height:100%;padding:0 10px}.tabs-wrapper[data-v-9156d8cd] .t-tabs{height:100%}.tabs-wrapper[data-v-9156d8cd] .t-tabs__header{margin:0;border-bottom:none}.tabs-wrapper[data-v-9156d8cd] .t-tabs__nav{border:none}.tabs-wrapper[data-v-9156d8cd] .t-tabs__item{height:32px;line-height:32px;border:1px solid var(--color-border-lighter);margin-right:5px;border-radius:var(--border-radius-base);padding:0 15px}.tabs-wrapper[data-v-9156d8cd] .t-tabs__item.is-active{background-color:var(--color-primary-light-9);border-color:var(--color-primary)}.tab-label[data-v-9156d8cd]{display:flex;align-items:center;gap:5px}.tab-close[data-v-9156d8cd]{width:14px;height:14px;display:flex;align-items:center;justify-content:center;font-size:10px;border-radius:50%}.tab-close[data-v-9156d8cd]:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.footer[data-v-4852826a]{width:100%;text-align:center;font-size:12px;color:var(--color-text-secondary)}.login[data-v-f3e724b6]{width:100%;min-height:100vh;display:flex;align-items:center;justify-content:flex-end;padding-right:15%;background:linear-gradient(135deg,var(--color-primary-light-9) 0%,var(--color-primary-light-7) 100%)}.login__container[data-v-f3e724b6]{width:400px;padding:40px;background-color:var(--bg-color);border-radius:var(--border-radius-large);box-shadow:var(--box-shadow-dark)}.login__header[data-v-f3e724b6]{text-align:center;margin-bottom:30px}.login__logo[data-v-f3e724b6]{width:60px;height:60px}.login__title[data-v-f3e724b6]{font-size:28px;font-weight:600;color:var(--color-primary);margin:15px 0 5px}.login__subtitle[data-v-f3e724b6]{font-size:14px;color:var(--color-text-secondary)}.login__form[data-v-f3e724b6] .x-form-item{margin-bottom:20px}.login__form[data-v-f3e724b6] .x-input__prefix{margin-right:8px}.login__submit[data-v-f3e724b6]{width:100%}.login__footer[data-v-f3e724b6]{text-align:center;margin-top:20px;font-size:12px;color:var(--color-text-placeholder)}.error-page[data-v-3b47f5bc]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-page)}.error-page__content[data-v-3b47f5bc]{text-align:center}.error-page__code[data-v-3b47f5bc]{font-size:120px;font-weight:600;color:var(--color-primary);line-height:1;margin-bottom:20px}.error-page__title[data-v-3b47f5bc]{font-size:24px;font-weight:500;color:var(--color-text-primary);margin-bottom:10px}.error-page__desc[data-v-3b47f5bc]{font-size:14px;color:var(--color-text-secondary);margin-bottom:30px}.error-page[data-v-3081df6c]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-page)}.error-page__content[data-v-3081df6c]{text-align:center}.error-page__code[data-v-3081df6c]{font-size:120px;font-weight:600;color:var(--color-warning);line-height:1;margin-bottom:20px}.error-page__title[data-v-3081df6c]{font-size:24px;font-weight:500;color:var(--color-text-primary);margin-bottom:10px}.error-page__desc[data-v-3081df6c]{font-size:14px;color:var(--color-text-secondary);margin-bottom:30px}.dashboard[data-v-44648cb1]{padding:20px}.dashboard__stats[data-v-44648cb1]{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:20px}@media (max-width: 1200px){.dashboard__stats[data-v-44648cb1]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dashboard__stats[data-v-44648cb1]{grid-template-columns:1fr}}.dashboard__main[data-v-44648cb1]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}@media (max-width: 992px){.dashboard__main[data-v-44648cb1]{grid-template-columns:1fr}}.dashboard__quick[data-v-44648cb1],.dashboard__activity[data-v-44648cb1]{min-height:300px}.card-title[data-v-44648cb1]{font-size:16px;font-weight:500}.stat-card__content[data-v-44648cb1]{display:flex;align-items:center;gap:15px}.stat-card__icon[data-v-44648cb1]{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:24px;border-radius:var(--border-radius-base)}.stat-card__info[data-v-44648cb1]{flex:1}.stat-card__title[data-v-44648cb1]{font-size:14px;color:var(--color-text-secondary);margin-bottom:5px}.stat-card__value[data-v-44648cb1]{font-size:24px;font-weight:600}.quick-links[data-v-44648cb1]{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}@media (max-width: 768px){.quick-links[data-v-44648cb1]{grid-template-columns:repeat(2,1fr)}}.quick-link[data-v-44648cb1]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;border-radius:var(--border-radius-base);background-color:var(--color-fill);text-decoration:none;transition:all var(--transition-duration-fast)}.quick-link[data-v-44648cb1]:hover{background-color:var(--color-primary-light-9);transform:translateY(-2px)}.quick-link__icon[data-v-44648cb1]{font-size:28px;margin-bottom:10px}.quick-link__title[data-v-44648cb1]{font-size:14px;color:var(--color-text-primary)}.activity-list[data-v-44648cb1]{display:flex;flex-direction:column;gap:15px}.activity-item[data-v-44648cb1]{display:flex;align-items:center;gap:10px;padding-bottom:15px;border-bottom:1px solid var(--color-border-lighter)}.activity-item[data-v-44648cb1]:last-child{border-bottom:none;padding-bottom:0}.activity-item__action[data-v-44648cb1]{flex:1;font-size:14px;color:var(--color-text-regular)}.activity-item__time[data-v-44648cb1]{font-size:12px;color:var(--color-text-placeholder)}.system-info[data-v-44648cb1]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media (max-width: 768px){.system-info[data-v-44648cb1]{grid-template-columns:1fr}}.system-info__item[data-v-44648cb1]{display:flex;align-items:center;gap:10px}.system-info__label[data-v-44648cb1]{font-size:14px;color:var(--color-text-secondary);min-width:80px}.system-info__value[data-v-44648cb1]{font-size:14px;color:var(--color-text-primary)}.user-page[data-v-d2491ae0]{padding:20px}.user-page .search-card[data-v-d2491ae0]{margin-bottom:20px}.user-page .toolbar[data-v-d2491ae0]{margin-bottom:15px}.data-table[data-v-d2491ae0]{width:100%;border-collapse:collapse}.data-table th[data-v-d2491ae0],.data-table td[data-v-d2491ae0]{padding:12px;text-align:left;border-bottom:1px solid var(--color-border-lighter)}.data-table th[data-v-d2491ae0]{font-weight:500;color:var(--color-text-regular);background-color:var(--color-fill-light)}.data-table .loading-cell[data-v-d2491ae0],.data-table .empty-cell[data-v-d2491ae0]{text-align:center;color:var(--color-text-secondary);padding:40px}.pagination-wrapper[data-v-d2491ae0]{display:flex;justify-content:flex-end;margin-top:20px}.role-page[data-v-8ad30bc6]{padding:20px}.role-page .search-card[data-v-8ad30bc6]{margin-bottom:20px}.role-page .toolbar[data-v-8ad30bc6]{margin-bottom:15px}.data-table[data-v-8ad30bc6]{width:100%;border-collapse:collapse}.data-table th[data-v-8ad30bc6],.data-table td[data-v-8ad30bc6]{padding:12px;text-align:left;border-bottom:1px solid var(--color-border-lighter)}.data-table th[data-v-8ad30bc6]{font-weight:500;color:var(--color-text-regular);background-color:var(--color-fill-light)}.data-table .loading-cell[data-v-8ad30bc6],.data-table .empty-cell[data-v-8ad30bc6]{text-align:center;color:var(--color-text-secondary);padding:40px}.pagination-wrapper[data-v-8ad30bc6]{display:flex;justify-content:flex-end;margin-top:20px}.menu-page[data-v-2a272a68]{padding:20px}.menu-page .toolbar[data-v-2a272a68]{margin-bottom:15px}.tree-table[data-v-2a272a68]{width:100%;border-collapse:collapse}.tree-table th[data-v-2a272a68],.tree-table td[data-v-2a272a68]{padding:12px;text-align:left;border-bottom:1px solid var(--color-border-lighter)}.tree-table th[data-v-2a272a68]{font-weight:500;color:var(--color-text-regular);background-color:var(--color-fill-light)}.tree-table .tree-row--level-1 td[data-v-2a272a68]:first-child{padding-left:30px}.tree-indent[data-v-2a272a68]{display:inline-block;width:20px}.menu-name[data-v-2a272a68]{cursor:pointer;color:var(--color-primary)}.menu-name[data-v-2a272a68]:hover{text-decoration:underline}
1
+ @charset "UTF-8";:root{--color-primary: #409eff;--color-primary-light-3: #79bbff;--color-primary-light-5: #a0cfff;--color-primary-light-7: #c6e2ff;--color-primary-light-8: #d9ecff;--color-primary-light-9: #ecf5ff;--color-primary-dark-2: #337ecc;--color-success: #67c23a;--color-success-light: #e1f3d8;--color-success-dark: #529b2e;--color-warning: #e6a23c;--color-warning-light: #fdf6ec;--color-warning-dark: #b88230;--color-danger: #f56c6c;--color-danger-light: #fde2e2;--color-danger-dark: #c45656;--color-info: #909399;--color-info-light: #f4f4f5;--color-info-dark: #73767a;--color-text-primary: #303133;--color-text-regular: #606266;--color-text-secondary: #909399;--color-text-placeholder: #a8abb2;--color-text-disabled: #c0c4cc;--color-border: #dcdfe6;--color-border-light: #e4e7ed;--color-border-lighter: #ebeef5;--color-border-extra-light: #f2f6fc;--color-border-dark: #d4d7de;--color-fill: #f5f7fa;--color-fill-light: #fafafa;--color-fill-lighter: #fafcff;--color-fill-blank: #ffffff;--bg-color: #ffffff;--bg-color-page: #f2f3f5;--bg-color-overlay: #ffffff;--box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .1);--box-shadow-light: 0 2px 8px 0 rgba(0, 0, 0, .06);--box-shadow-lighter: 0 1px 4px 0 rgba(0, 0, 0, .04);--box-shadow-dark: 0 4px 16px 0 rgba(0, 0, 0, .12);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-size-base: 14px;--font-size-small: 12px;--font-size-large: 16px;--font-size-extra-large: 18px;--border-radius-base: 4px;--border-radius-small: 2px;--border-radius-large: 8px;--border-radius-round: 20px;--border-radius-circle: 50%;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--component-size-large: 40px;--component-size-default: 32px;--component-size-small: 24px;--transition-duration: .3s;--transition-duration-fast: .2s;--transition-duration-slow: .5s;--z-index-dropdown: 1000;--z-index-sticky: 1020;--z-index-fixed: 1030;--z-index-modal-backdrop: 1040;--z-index-modal: 1050;--z-index-popover: 1060;--z-index-tooltip: 1070;--sidebar-width: 210px;--sidebar-collapsed-width: 64px;--header-height: 50px;--tabs-height: 40px;--footer-height: 30px}.dark{--color-text-primary: #e5eaf3;--color-text-regular: #cfd3dc;--color-text-secondary: #a3a6ad;--color-text-placeholder: #8d9095;--color-text-disabled: #6c6e72;--color-border: #4c4d4f;--color-border-light: #414243;--color-border-lighter: #363637;--color-border-extra-light: #2b2b2c;--color-border-dark: #58585b;--color-fill: #303030;--color-fill-light: #262727;--color-fill-lighter: #1d1d1d;--color-fill-blank: #141414;--bg-color: #1d1e1f;--bg-color-page: #0a0a0a;--bg-color-overlay: #1d1e1f;--box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .3);--box-shadow-light: 0 2px 8px 0 rgba(0, 0, 0, .24);--box-shadow-lighter: 0 1px 4px 0 rgba(0, 0, 0, .2);--box-shadow-dark: 0 4px 16px 0 rgba(0, 0, 0, .36)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{width:100%;height:100%;font-size:var(--font-size-base);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{width:100%;height:100%;font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--color-text-primary);background-color:var(--bg-color-page)}#app{width:100%;height:100%}a{color:var(--color-primary);text-decoration:none;cursor:pointer;transition:color var(--transition-duration-fast)}a:hover{color:var(--color-primary-light-3)}ul,ol{list-style:none}img{max-width:100%;height:auto;vertical-align:middle}button{cursor:pointer;font-family:inherit;font-size:inherit;border:none;background:none;outline:none}button:disabled{cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit;outline:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{margin:0;font-weight:500;color:var(--color-text-primary)}p{margin:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background-color:var(--color-fill-light);border-radius:3px}::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-secondary)}::selection{background-color:var(--color-primary-light-8);color:var(--color-primary)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-duration)}.fade-enter-from,.fade-leave-to{opacity:0}.fade-scale-enter-active,.fade-scale-leave-active{transition:all var(--transition-duration)}.fade-scale-enter-from,.fade-scale-leave-to{opacity:0;transform:scale(.9)}.fade-transform-enter-active,.fade-transform-leave-active{transition:all var(--transition-duration-fast)}.fade-transform-enter-from{opacity:0;transform:translate(-10px)}.fade-transform-leave-to{opacity:0;transform:translate(10px)}.slide-down-enter-active,.slide-down-leave-active{transition:all var(--transition-duration)}.slide-down-enter-from,.slide-down-leave-to{opacity:0;transform:translateY(-20px)}.slide-up-enter-active,.slide-up-leave-active{transition:all var(--transition-duration)}.slide-up-enter-from,.slide-up-leave-to{opacity:0;transform:translateY(20px)}.slide-left-enter-active,.slide-left-leave-active{transition:all var(--transition-duration)}.slide-left-enter-from,.slide-left-leave-to{opacity:0;transform:translate(20px)}.slide-right-enter-active,.slide-right-leave-active{transition:all var(--transition-duration)}.slide-right-enter-from,.slide-right-leave-to{opacity:0;transform:translate(-20px)}.zoom-enter-active,.zoom-leave-active{transition:all var(--transition-duration)}.zoom-enter-from,.zoom-leave-to{opacity:0;transform:scale(.5)}.list-enter-active,.list-leave-active{transition:all var(--transition-duration)}.list-enter-from,.list-leave-to{opacity:0;transform:translateY(30px)}.collapse-transition{transition:width var(--transition-duration),padding var(--transition-duration)}.dark .sidebar,.dark .layout__aside{background-color:#1d1e1f}.dark .sidebar{border-right:1px solid #363637}.dark .sidebar__search-results{background-color:#1d1e1f;border-color:#363637}.dark .sidebar__search-item:hover{background-color:#262727}.dark .sidebar__search-item-title{color:#cfd3dc}.dark .sidebar__search-item-parent{color:#a3a6ad}.dark .sidebar__logo{border-bottom-color:#363637}.dark .sidebar__user{border-top-color:#363637}.dark .sidebar__user-name{color:#cfd3dc}.dark .sidebar__user-role{color:#a3a6ad}.dark .x-menu{background-color:#1d1e1f!important;border-color:#363637;color:#cfd3dc}.dark .x-menu.x-menu--vertical{border-right-color:#363637}.dark .x-menu.x-menu--horizontal{border-bottom-color:#363637;background-color:#1d1e1f!important}.dark .x-menu-item{color:#cfd3dc!important;background-color:transparent!important}.dark .x-menu-item:hover{background-color:#262727!important}.dark .x-menu-item.is-active{color:#409eff!important;background-color:#409eff1a!important}.dark .x-menu-item.is-active:before{background-color:#409eff}.dark .x-menu-item.is-horizontal:hover{background-color:transparent!important}.dark .x-menu-item.is-horizontal.is-active{background-color:transparent!important;border-bottom-color:#409eff}.dark .x-sub-menu__title{color:#cfd3dc!important;background-color:transparent!important}.dark .x-sub-menu__title:hover{background-color:#262727!important}.dark .x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .x-sub-menu__menu .x-menu-item{background-color:transparent!important;color:#cfd3dc!important}.dark .x-sub-menu__menu .x-menu-item:hover{background-color:#262727!important}.dark .x-sub-menu__menu .x-menu-item.is-active{color:#409eff!important;background-color:#409eff1a!important}.dark .x-sub-menu__arrow{color:#a3a6ad}.dark .x-sub-menu.is-active>.x-sub-menu__title{color:#409eff!important}.dark .x-sub-menu--horizontal .x-sub-menu__title:hover{background-color:transparent!important}.dark .x-sub-menu--horizontal .x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637}.dark .x-sub-menu.is-collapse>.x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637}.dark .header{background-color:#1d1e1f;border-bottom-color:#363637}.dark .header__collapse{color:#cfd3dc}.dark .header__breadcrumb{color:#a3a6ad}.dark .header__user-name{color:#cfd3dc}.dark .header__user-arrow{color:#a3a6ad}.dark .header__action:hover,.dark .header__user-trigger:hover{background-color:#262727}.dark .header__dropdown{background-color:#1d1e1f;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .header__dropdown-name{color:#e5eaf3}.dark .header__dropdown-role{color:#a3a6ad}.dark .header__dropdown-divider{background-color:#363637}.dark .header__dropdown-item{color:#cfd3dc}.dark .header__dropdown-item:hover{background-color:#262727;color:#e5eaf3}.dark .top-menu{background-color:#1d1e1f}.dark .top-menu__menu{background-color:#1d1e1f!important}.dark .top-menu__menu-char{background-color:#409eff33;color:#79bbff}.dark .top-menu__action{color:#cfd3dc}.dark .top-menu__action:hover{background-color:#262727;color:#409eff}.dark .top-menu__user-trigger:hover{background-color:#262727}.dark .top-menu__user-name{color:#cfd3dc}.dark .top-menu__user-arrow{color:#a3a6ad}.dark .top-menu__dropdown{background-color:#1d1e1f;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .top-menu__dropdown-name{color:#e5eaf3}.dark .top-menu__dropdown-role{color:#a3a6ad}.dark .top-menu__dropdown-divider{background-color:#363637}.dark .top-menu__dropdown-item{color:#cfd3dc}.dark .top-menu__dropdown-item:hover{background-color:#262727;color:#e5eaf3}.dark .x-button.x-button--default{background-color:#1d1e1f;border-color:#4c4d4f;color:#cfd3dc}.dark .x-button.x-button--default:hover{border-color:#409eff;color:#409eff}.dark .x-button.x-button--text{color:#409eff}.dark .x-form-item__label{color:#cfd3dc}.dark .x-form-item__error{color:#f56c6c}.dark .x-input{background-color:#1d1e1f;border-color:#4c4d4f}.dark .x-input.is-focus{border-color:#409eff}.dark .x-input .x-input__inner{background-color:transparent;color:#e5eaf3}.dark .x-input .x-input__inner::placeholder{color:#6c6e72}.dark .x-input .x-input__suffix,.dark .x-input .x-input__prefix{color:#a3a6ad}.dark .x-select{background-color:#1d1e1f;border-color:#4c4d4f}.dark .x-card{background-color:#1d1e1f;border-color:#363637}.dark .x-card__header{border-bottom-color:#363637;color:#e5eaf3}.dark .data-table th{background-color:#262727;color:#cfd3dc;border-bottom-color:#363637}.dark .data-table td{border-bottom-color:#363637;color:#cfd3dc}.dark .data-table tr:hover td{background-color:#262727}.dark .x-modal__wrapper{background-color:#000000b3}.dark .x-modal__container{background-color:#1d1e1f;border:1px solid #363637}.dark .x-modal__header{border-bottom-color:#363637;color:#e5eaf3}.dark .x-modal__footer{border-top-color:#363637}.dark .x-message{background-color:#1d1e1f;border:1px solid #363637}.dark .x-tag.x-tag--primary{background-color:#409eff33;color:#79bbff;border-color:#409eff4d}.dark .x-tag.x-tag--success{background-color:#67c23a33;color:#95d475;border-color:#67c23a4d}.dark .x-tag.x-tag--warning{background-color:#e6a23c33;color:#eebe77;border-color:#e6a23c4d}.dark .x-tag.x-tag--danger{background-color:#f56c6c33;color:#fab6b6;border-color:#f56c6c4d}.dark .x-tag.x-tag--info{background-color:#90939933;color:#c0c4cc;border-color:#9093994d}.dark .x-switch{background-color:#4c4d4f}.dark .x-switch.is-checked{background-color:#409eff}.dark .x-pagination{color:#cfd3dc}.dark .x-pagination__item{background-color:#1d1e1f;border-color:#4c4d4f;color:#cfd3dc}.dark .x-pagination__item:hover{color:#409eff}.dark .x-pagination__item.is-active{background-color:#409eff;border-color:#409eff;color:#fff}.dark .login{background:linear-gradient(135deg,#1a1a2e,#16213e)}.dark .login__container{background-color:#1d1e1f;border:1px solid #363637}.dark .login__title{color:#409eff}.dark .login__subtitle{color:#a3a6ad}.dark .login__footer{color:#6c6e72}.dark .stat-card__title{color:#a3a6ad}.dark .quick-link{background-color:#262727}.dark .quick-link:hover{background-color:#409eff1a}.dark .quick-link__title{color:#cfd3dc}.dark .activity-item{border-bottom-color:#363637}.dark .activity-item__action{color:#cfd3dc}.dark .search-card,.dark .table-card,.dark .x-popconfirm{background-color:#1d1e1f;border:1px solid #363637}.dark .x-drawer{background-color:#1d1e1f}.dark .x-drawer__header{background-color:#1d1e1f;border-bottom-color:#363637;color:#e5eaf3}.dark .x-drawer__body{background-color:#1d1e1f;color:#cfd3dc}.dark .x-drawer__footer{background-color:#1d1e1f;border-top-color:#363637}.dark .settings-drawer .settings-title{color:#e5eaf3}.dark .settings-drawer .settings-section{background-color:transparent}.dark .settings-drawer .layout-option{border-color:#4c4d4f;background-color:transparent}.dark .settings-drawer .layout-option:hover{border-color:#409eff}.dark .settings-drawer .layout-option.is-active{border-color:#409eff;background-color:#409eff1a}.dark .settings-drawer .layout-option__label,.dark .settings-drawer .settings-switch-item span{color:#cfd3dc}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-info{color:var(--color-info)}.bg-primary{background-color:var(--color-primary)}.bg-success{background-color:var(--color-success)}.bg-warning{background-color:var(--color-warning)}.bg-danger{background-color:var(--color-danger)}.mt-10{margin-top:10px}.mt-20{margin-top:20px}.mb-10{margin-bottom:10px}.mb-20{margin-bottom:20px}.ml-10{margin-left:10px}.mr-10{margin-right:10px}.p-10{padding:10px}.p-20{padding:20px}.card{background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow-light);padding:var(--spacing-md)}.page-container{padding:var(--spacing-md);min-height:100%}.search-bar{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.table-container{background-color:var(--bg-color);border-radius:var(--border-radius-base);padding:var(--spacing-md)}.pagination-container{display:flex;justify-content:flex-end;margin-top:var(--spacing-md)}.x-menu-item.is-active{color:var(--color-primary)!important;background-color:var(--color-primary-light-9)!important;position:relative}.x-menu-item.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--color-primary);border-radius:0 2px 2px 0}.x-sub-menu__menu .x-menu-item.is-active{color:var(--color-primary)!important;background-color:var(--color-primary-light-9)!important;position:relative}.x-sub-menu__menu .x-menu-item.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--color-primary);border-radius:0 2px 2px 0}html.grey-mode{filter:grayscale(100%);-webkit-filter:grayscale(100%)}:root{--bg-color: #ffffff;--bg-color-page: #f5f7fa;--color-border-lighter: #e4e7ed}.menu-item__content[data-v-d160ae6a]{display:inline-flex;align-items:center;line-height:1}.menu-item__text[data-v-d160ae6a]{flex:1;line-height:1}.menu-item__icon[data-v-d160ae6a]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;flex-shrink:0}.menu-item__char[data-v-d160ae6a]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.sidebar[data-v-bc9f0622]{height:100%;display:flex;flex-direction:column;background-color:var(--bg-color);border-right:1px solid var(--color-border-lighter)}.sidebar--collapsed .sidebar__logo[data-v-bc9f0622]{justify-content:center;padding:0}.sidebar__logo[data-v-bc9f0622]{height:50px;display:flex;align-items:center;padding:0 20px;gap:10px;border-bottom:1px solid var(--color-border-lighter)}.sidebar__logo-img[data-v-bc9f0622]{width:32px;height:32px}.sidebar__logo-text[data-v-bc9f0622]{font-size:16px;font-weight:600;color:var(--color-primary)}.sidebar__menu[data-v-bc9f0622]{flex:1;border-right:none;overflow-y:auto}.sidebar__user[data-v-bc9f0622]{padding:10px;border-top:1px solid var(--color-border-lighter);display:flex;align-items:center;justify-content:space-between}.sidebar__user-info[data-v-bc9f0622]{display:flex;flex-direction:column;gap:2px}.sidebar__user-name[data-v-bc9f0622]{font-size:14px;font-weight:500}.sidebar__user-role[data-v-bc9f0622]{font-size:12px;color:var(--color-text-secondary)}.header[data-v-89179947]{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:100%;background-color:var(--bg-color);border-bottom:1px solid var(--color-border-lighter)}.header__left[data-v-89179947]{display:flex;align-items:center;gap:15px}.header__collapse[data-v-89179947]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-regular);transition:color .2s}.header__collapse[data-v-89179947]:hover{color:var(--color-primary)}.header__breadcrumb[data-v-89179947]{font-size:14px;color:var(--color-text-secondary)}.header__breadcrumb .breadcrumb-separator[data-v-89179947]{margin:0 8px;color:var(--color-text-placeholder)}.header__breadcrumb .is-current[data-v-89179947]{color:var(--color-text-primary);font-weight:500}.header__right[data-v-89179947]{display:flex;align-items:center;gap:8px}.header__search[data-v-89179947]{position:relative;display:flex;align-items:center;background-color:var(--color-fill-light);border-radius:var(--border-radius-base);padding:0 12px;height:32px;width:200px}.header__search-icon[data-v-89179947]{color:var(--color-text-secondary)}.header__search-input[data-v-89179947]{flex:1;height:100%;font-size:14px;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding-left:8px}.header__search-input[data-v-89179947]::placeholder{color:var(--color-text-placeholder)}.header__search-dropdown[data-v-89179947]{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:200px;max-height:300px;overflow-y:auto;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);z-index:100}.header__search-results[data-v-89179947]{padding:8px 0}.header__search-item[data-v-89179947]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .2s}.header__search-item[data-v-89179947]:hover{background-color:var(--color-fill)}.header__search-item-title[data-v-89179947]{font-size:14px;color:var(--color-text-primary)}.header__search-item-parent[data-v-89179947]{font-size:12px;color:var(--color-text-secondary);margin-left:auto}.header__search-icon[data-v-89179947]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.header__search-char[data-v-89179947]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.header__search-empty[data-v-89179947]{padding:16px 12px;text-align:center;color:var(--color-text-secondary);font-size:14px}.header__action[data-v-89179947]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--border-radius-base);color:var(--color-text-regular);transition:all .2s}.header__action[data-v-89179947]:hover{background-color:var(--color-fill);color:var(--color-primary)}.header__user[data-v-89179947]{position:relative;margin-left:8px}.header__user-trigger[data-v-89179947]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:var(--border-radius-base);transition:background-color .2s}.header__user-trigger[data-v-89179947]:hover{background-color:var(--color-fill)}.header__user-name[data-v-89179947]{font-size:14px;color:var(--color-text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header__user-arrow[data-v-89179947]{font-size:10px;color:var(--color-text-secondary);transition:transform .2s}.header__user-arrow.is-active[data-v-89179947]{transform:rotate(180deg)}.header__avatar[data-v-89179947]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:500}.header__dropdown[data-v-89179947]{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);overflow:hidden;z-index:100}.header__dropdown-header[data-v-89179947]{display:flex;align-items:center;gap:12px;padding:16px}.header__dropdown-avatar[data-v-89179947]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:500}.header__dropdown-info[data-v-89179947]{flex:1}.header__dropdown-name[data-v-89179947]{font-size:14px;font-weight:500;color:var(--color-text-primary)}.header__dropdown-role[data-v-89179947]{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.header__dropdown-divider[data-v-89179947]{height:1px;background-color:var(--color-border-lighter)}.header__dropdown-menu[data-v-89179947]{padding:8px 0}.header__dropdown-item[data-v-89179947]{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:14px;color:var(--color-text-regular);transition:all .2s}.header__dropdown-item[data-v-89179947]:hover{background-color:var(--color-fill);color:var(--color-text-primary)}.header__dropdown-item--danger[data-v-89179947]{color:var(--color-danger)}.header__dropdown-item--danger[data-v-89179947]:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.settings-drawer .settings-section[data-v-89179947]{margin-bottom:24px}.settings-drawer .settings-title[data-v-89179947]{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:12px}.settings-drawer .settings-layout-options[data-v-89179947]{display:flex;gap:12px}.settings-drawer .layout-option[data-v-89179947]{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius-base);cursor:pointer;transition:all .2s}.settings-drawer .layout-option[data-v-89179947]:hover{border-color:var(--color-primary-light-5)}.settings-drawer .layout-option.is-active[data-v-89179947]{border-color:var(--color-primary);background-color:var(--color-primary-light-9)}.settings-drawer .layout-option__preview[data-v-89179947]{width:48px;height:36px;border:1px solid var(--color-border-light);border-radius:2px;overflow:hidden}.settings-drawer .layout-option__label[data-v-89179947]{font-size:12px;color:var(--color-text-regular)}.settings-drawer .layout-preview-sidebar[data-v-89179947]{display:flex;height:100%}.settings-drawer .layout-preview-sidebar .preview-aside[data-v-89179947]{width:25%;height:100%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-sidebar .preview-main[data-v-89179947]{flex:1;display:flex;flex-direction:column}.settings-drawer .layout-preview-sidebar .preview-main .preview-header[data-v-89179947]{height:20%;background-color:var(--color-border-light)}.settings-drawer .layout-preview-sidebar .preview-main .preview-content[data-v-89179947]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-top[data-v-89179947]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-top .preview-header-full[data-v-89179947]{height:25%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-top .preview-content-full[data-v-89179947]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-mix[data-v-89179947]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-mix .preview-header-mix[data-v-89179947]{height:25%;background-color:var(--color-primary-light-7);display:flex}.settings-drawer .layout-preview-mix .preview-header-mix .preview-mix-left[data-v-89179947]{width:30%;background-color:var(--color-primary)}.settings-drawer .layout-preview-mix .preview-mix-body[data-v-89179947]{flex:1;display:flex}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-aside[data-v-89179947]{width:25%;background-color:var(--color-primary-light-8)}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-content[data-v-89179947]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .settings-color-options[data-v-89179947]{display:flex;gap:12px}.settings-drawer .color-option[data-v-89179947]{width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.settings-drawer .color-option[data-v-89179947]:hover{transform:scale(1.1)}.settings-drawer .color-option.is-active[data-v-89179947]{box-shadow:0 0 0 2px var(--bg-color),0 0 0 4px var(--color-primary)}.settings-drawer .settings-switch-list[data-v-89179947]{display:flex;flex-direction:column;gap:12px}.settings-drawer .settings-switch-item[data-v-89179947]{display:flex;align-items:center;justify-content:space-between}.settings-drawer .settings-switch-item span[data-v-89179947]{font-size:14px;color:var(--color-text-regular)}.settings-drawer .switch-wrapper[data-v-89179947]{width:44px;height:22px;display:flex;align-items:center;cursor:pointer}.settings-drawer .switch-wrapper .switch-core[data-v-89179947]{width:100%;height:100%;border-radius:11px;background-color:var(--color-border);position:relative;transition:background-color .2s}.settings-drawer .switch-wrapper .switch-core[data-v-89179947]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background-color:#fff;border-radius:50%;transition:left .2s}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-89179947]{background-color:var(--color-primary)}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-89179947]:after{left:24px}.dropdown-enter-active[data-v-89179947],.dropdown-leave-active[data-v-89179947]{transition:all .2s ease}.dropdown-enter-from[data-v-89179947],.dropdown-leave-to[data-v-89179947]{opacity:0;transform:translateY(-10px)}.search-dropdown-enter-active[data-v-89179947],.search-dropdown-leave-active[data-v-89179947]{transition:all .2s ease}.search-dropdown-enter-from[data-v-89179947],.search-dropdown-leave-to[data-v-89179947]{opacity:0;transform:translateY(-4px)}.top-menu[data-v-ff5f8764]{width:100%;height:100%;display:flex;align-items:center;padding:0 20px}.top-menu__logo[data-v-ff5f8764]{display:flex;align-items:center;gap:10px;margin-right:20px}.top-menu__logo-img[data-v-ff5f8764]{width:32px;height:32px}.top-menu__logo-text[data-v-ff5f8764]{font-size:16px;font-weight:600;color:var(--color-primary)}.top-menu__menu[data-v-ff5f8764]{flex:1;border-bottom:none;height:49px;display:flex;align-items:center;line-height:49px}.top-menu__menu[data-v-ff5f8764] .x-menu{height:49px;line-height:49px;border-bottom:none}.top-menu__menu[data-v-ff5f8764] .x-menu--horizontal{height:49px;display:flex;align-items:center;border-bottom:none;line-height:49px}.top-menu__menu[data-v-ff5f8764] .x-menu-item{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.top-menu__menu[data-v-ff5f8764] .x-menu-item.is-horizontal{height:49px;line-height:49px}.top-menu__menu[data-v-ff5f8764] .x-menu-item__content{height:49px}.top-menu__menu[data-v-ff5f8764] .x-sub-menu{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.top-menu__menu[data-v-ff5f8764] .x-sub-menu--horizontal{height:49px}.top-menu__menu[data-v-ff5f8764] .x-sub-menu__title{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.top-menu__menu[data-v-ff5f8764] .x-sub-menu__content{height:49px}.top-menu__menu-content[data-v-ff5f8764]{align-items:center;line-height:1}.top-menu__menu-text[data-v-ff5f8764]{line-height:1}.top-menu__menu-icon[data-v-ff5f8764]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;flex-shrink:0}.top-menu__menu-char[data-v-ff5f8764]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.top-menu__actions[data-v-ff5f8764]{display:flex;align-items:center;gap:8px}.top-menu__search[data-v-ff5f8764]{position:relative;display:flex;align-items:center;background-color:var(--color-fill-light);border-radius:var(--border-radius-base);padding:0 12px;height:32px;width:200px}.top-menu__search-icon[data-v-ff5f8764]{color:var(--color-text-secondary)}.top-menu__search-input[data-v-ff5f8764]{flex:1;height:100%;font-size:14px;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding-left:8px}.top-menu__search-input[data-v-ff5f8764]::placeholder{color:var(--color-text-placeholder)}.top-menu__search-dropdown[data-v-ff5f8764]{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:200px;max-height:300px;overflow-y:auto;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);z-index:100}.top-menu__search-results[data-v-ff5f8764]{padding:8px 0}.top-menu__search-item[data-v-ff5f8764]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .2s}.top-menu__search-item[data-v-ff5f8764]:hover{background-color:var(--color-fill)}.top-menu__search-item-title[data-v-ff5f8764]{font-size:14px;color:var(--color-text-primary)}.top-menu__search-item-parent[data-v-ff5f8764]{font-size:12px;color:var(--color-text-secondary);margin-left:auto}.top-menu__search-icon-item[data-v-ff5f8764]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.top-menu__search-char[data-v-ff5f8764]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.top-menu__search-empty[data-v-ff5f8764]{padding:16px 12px;text-align:center;color:var(--color-text-secondary);font-size:14px}.top-menu__action[data-v-ff5f8764]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--border-radius-base);color:var(--color-text-regular);transition:all .2s}.top-menu__action[data-v-ff5f8764]:hover{background-color:var(--color-fill);color:var(--color-primary)}.top-menu__user[data-v-ff5f8764]{position:relative;margin-left:8px}.top-menu__user-trigger[data-v-ff5f8764]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:var(--border-radius-base);transition:background-color .2s}.top-menu__user-trigger[data-v-ff5f8764]:hover{background-color:var(--color-fill)}.top-menu__user-name[data-v-ff5f8764]{font-size:14px;color:var(--color-text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-menu__user-arrow[data-v-ff5f8764]{font-size:10px;color:var(--color-text-secondary);transition:transform .2s}.top-menu__user-arrow.is-active[data-v-ff5f8764]{transform:rotate(180deg)}.top-menu__avatar[data-v-ff5f8764]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:500}.top-menu__dropdown[data-v-ff5f8764]{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);overflow:hidden;z-index:100}.top-menu__dropdown-header[data-v-ff5f8764]{display:flex;align-items:center;gap:12px;padding:16px}.top-menu__dropdown-avatar[data-v-ff5f8764]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:500}.top-menu__dropdown-info[data-v-ff5f8764]{flex:1}.top-menu__dropdown-name[data-v-ff5f8764]{font-size:14px;font-weight:500;color:var(--color-text-primary)}.top-menu__dropdown-role[data-v-ff5f8764]{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.top-menu__dropdown-divider[data-v-ff5f8764]{height:1px;background-color:var(--color-border-lighter)}.top-menu__dropdown-menu[data-v-ff5f8764]{padding:8px 0}.top-menu__dropdown-item[data-v-ff5f8764]{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:14px;color:var(--color-text-regular);transition:all .2s}.top-menu__dropdown-item[data-v-ff5f8764]:hover{background-color:var(--color-fill);color:var(--color-text-primary)}.top-menu__dropdown-item--danger[data-v-ff5f8764]{color:var(--color-danger)}.top-menu__dropdown-item--danger[data-v-ff5f8764]:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.settings-drawer .settings-section[data-v-ff5f8764]{margin-bottom:24px}.settings-drawer .settings-title[data-v-ff5f8764]{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:12px}.settings-drawer .settings-layout-options[data-v-ff5f8764]{display:flex;gap:12px}.settings-drawer .layout-option[data-v-ff5f8764]{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius-base);cursor:pointer;transition:all .2s}.settings-drawer .layout-option[data-v-ff5f8764]:hover{border-color:var(--color-primary-light-5)}.settings-drawer .layout-option.is-active[data-v-ff5f8764]{border-color:var(--color-primary);background-color:var(--color-primary-light-9)}.settings-drawer .layout-option__preview[data-v-ff5f8764]{width:48px;height:36px;border:1px solid var(--color-border-light);border-radius:2px;overflow:hidden}.settings-drawer .layout-option__label[data-v-ff5f8764]{font-size:12px;color:var(--color-text-regular)}.settings-drawer .layout-preview-sidebar[data-v-ff5f8764]{display:flex;height:100%}.settings-drawer .layout-preview-sidebar .preview-aside[data-v-ff5f8764]{width:25%;height:100%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-sidebar .preview-main[data-v-ff5f8764]{flex:1;display:flex;flex-direction:column}.settings-drawer .layout-preview-sidebar .preview-main .preview-header[data-v-ff5f8764]{height:20%;background-color:var(--color-border-light)}.settings-drawer .layout-preview-sidebar .preview-main .preview-content[data-v-ff5f8764]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-top[data-v-ff5f8764]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-top .preview-header-full[data-v-ff5f8764]{height:25%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-top .preview-content-full[data-v-ff5f8764]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-mix[data-v-ff5f8764]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-mix .preview-header-mix[data-v-ff5f8764]{height:25%;background-color:var(--color-primary-light-7);display:flex}.settings-drawer .layout-preview-mix .preview-header-mix .preview-mix-left[data-v-ff5f8764]{width:30%;background-color:var(--color-primary)}.settings-drawer .layout-preview-mix .preview-mix-body[data-v-ff5f8764]{flex:1;display:flex}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-aside[data-v-ff5f8764]{width:25%;background-color:var(--color-primary-light-8)}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-content[data-v-ff5f8764]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .settings-color-options[data-v-ff5f8764]{display:flex;gap:12px}.settings-drawer .color-option[data-v-ff5f8764]{width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.settings-drawer .color-option[data-v-ff5f8764]:hover{transform:scale(1.1)}.settings-drawer .color-option.is-active[data-v-ff5f8764]{box-shadow:0 0 0 2px var(--bg-color),0 0 0 4px var(--color-primary)}.settings-drawer .settings-switch-list[data-v-ff5f8764]{display:flex;flex-direction:column;gap:12px}.settings-drawer .settings-switch-item[data-v-ff5f8764]{display:flex;align-items:center;justify-content:space-between}.settings-drawer .settings-switch-item span[data-v-ff5f8764]{font-size:14px;color:var(--color-text-regular)}.settings-drawer .switch-wrapper[data-v-ff5f8764]{width:44px;height:22px;display:flex;align-items:center;cursor:pointer}.settings-drawer .switch-wrapper .switch-core[data-v-ff5f8764]{width:100%;height:100%;border-radius:11px;background-color:var(--color-border);position:relative;transition:background-color .2s}.settings-drawer .switch-wrapper .switch-core[data-v-ff5f8764]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background-color:#fff;border-radius:50%;transition:left .2s}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-ff5f8764]{background-color:var(--color-primary)}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-ff5f8764]:after{left:24px}.dropdown-enter-active[data-v-ff5f8764],.dropdown-leave-active[data-v-ff5f8764]{transition:all .2s ease}.dropdown-enter-from[data-v-ff5f8764],.dropdown-leave-to[data-v-ff5f8764]{opacity:0;transform:translateY(-10px)}.search-dropdown-enter-active[data-v-ff5f8764],.search-dropdown-leave-active[data-v-ff5f8764]{transition:all .2s ease}.search-dropdown-enter-from[data-v-ff5f8764],.search-dropdown-leave-to[data-v-ff5f8764]{opacity:0;transform:translateY(-4px)}.mix-top-menu[data-v-25806305]{width:100%;height:100%;display:flex;align-items:center;padding:0 20px}.mix-top-menu__logo[data-v-25806305]{display:flex;align-items:center;gap:10px;margin-right:20px}.mix-top-menu__logo-img[data-v-25806305]{width:32px;height:32px}.mix-top-menu__logo-text[data-v-25806305]{font-size:16px;font-weight:600;color:var(--color-primary)}.mix-top-menu__menu[data-v-25806305]{flex:1;border-bottom:none;height:49px;display:flex;align-items:center;line-height:49px}.mix-top-menu__menu[data-v-25806305] .x-menu{height:49px;line-height:49px;border-bottom:none}.mix-top-menu__menu[data-v-25806305] .x-menu--horizontal{height:49px;display:flex;align-items:center;border-bottom:none;line-height:49px}.mix-top-menu__menu[data-v-25806305] .x-menu-item{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.mix-top-menu__menu[data-v-25806305] .x-menu-item.is-horizontal{height:49px;line-height:49px}.mix-top-menu__menu[data-v-25806305] .x-menu-item__content{height:49px}.mix-top-menu__menu[data-v-25806305] .x-sub-menu{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.mix-top-menu__menu[data-v-25806305] .x-sub-menu--horizontal{height:49px}.mix-top-menu__menu[data-v-25806305] .x-sub-menu__title{height:49px;line-height:49px;box-sizing:border-box;border-bottom:none}.mix-top-menu__menu[data-v-25806305] .x-sub-menu__content{height:49px}.mix-top-menu__menu-content[data-v-25806305]{align-items:center;line-height:1}.mix-top-menu__menu-text[data-v-25806305]{line-height:1}.mix-top-menu__menu-icon[data-v-25806305]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;flex-shrink:0}.mix-top-menu__menu-char[data-v-25806305]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.mix-top-menu__actions[data-v-25806305]{display:flex;align-items:center;gap:8px}.mix-top-menu__search[data-v-25806305]{position:relative;display:flex;align-items:center;background-color:var(--color-fill-light);border-radius:var(--border-radius-base);padding:0 12px;height:32px;width:200px}.mix-top-menu__search-icon[data-v-25806305]{color:var(--color-text-secondary)}.mix-top-menu__search-input[data-v-25806305]{flex:1;height:100%;font-size:14px;color:var(--color-text-primary);background:transparent;border:none;outline:none;padding-left:8px}.mix-top-menu__search-input[data-v-25806305]::placeholder{color:var(--color-text-placeholder)}.mix-top-menu__search-dropdown[data-v-25806305]{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:200px;max-height:300px;overflow-y:auto;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);z-index:100}.mix-top-menu__search-results[data-v-25806305]{padding:8px 0}.mix-top-menu__search-item[data-v-25806305]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .2s}.mix-top-menu__search-item[data-v-25806305]:hover{background-color:var(--color-fill)}.mix-top-menu__search-item-title[data-v-25806305]{font-size:14px;color:var(--color-text-primary)}.mix-top-menu__search-item-parent[data-v-25806305]{font-size:12px;color:var(--color-text-secondary);margin-left:auto}.mix-top-menu__search-icon-item[data-v-25806305]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.mix-top-menu__search-char[data-v-25806305]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:12px;font-weight:600;color:var(--color-primary);background-color:var(--color-primary-light-8);border-radius:4px}.mix-top-menu__search-empty[data-v-25806305]{padding:16px 12px;text-align:center;color:var(--color-text-secondary);font-size:14px}.mix-top-menu__action[data-v-25806305]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--border-radius-base);color:var(--color-text-regular);transition:all .2s}.mix-top-menu__action[data-v-25806305]:hover{background-color:var(--color-fill);color:var(--color-primary)}.mix-top-menu__user[data-v-25806305]{position:relative;margin-left:8px}.mix-top-menu__user-trigger[data-v-25806305]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:var(--border-radius-base);transition:background-color .2s}.mix-top-menu__user-trigger[data-v-25806305]:hover{background-color:var(--color-fill)}.mix-top-menu__user-name[data-v-25806305]{font-size:14px;color:var(--color-text-primary);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mix-top-menu__user-arrow[data-v-25806305]{font-size:10px;color:var(--color-text-secondary);transition:transform .2s}.mix-top-menu__user-arrow.is-active[data-v-25806305]{transform:rotate(180deg)}.mix-top-menu__avatar[data-v-25806305]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:500}.mix-top-menu__dropdown[data-v-25806305]{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow);overflow:hidden;z-index:100}.mix-top-menu__dropdown-header[data-v-25806305]{display:flex;align-items:center;gap:12px;padding:16px}.mix-top-menu__dropdown-avatar[data-v-25806305]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light-3));display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:500}.mix-top-menu__dropdown-info[data-v-25806305]{flex:1}.mix-top-menu__dropdown-name[data-v-25806305]{font-size:14px;font-weight:500;color:var(--color-text-primary)}.mix-top-menu__dropdown-role[data-v-25806305]{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.mix-top-menu__dropdown-divider[data-v-25806305]{height:1px;background-color:var(--color-border-lighter)}.mix-top-menu__dropdown-menu[data-v-25806305]{padding:8px 0}.mix-top-menu__dropdown-item[data-v-25806305]{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;font-size:14px;color:var(--color-text-regular);transition:all .2s}.mix-top-menu__dropdown-item[data-v-25806305]:hover{background-color:var(--color-fill);color:var(--color-text-primary)}.mix-top-menu__dropdown-item--danger[data-v-25806305]{color:var(--color-danger)}.mix-top-menu__dropdown-item--danger[data-v-25806305]:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.settings-drawer .settings-section[data-v-25806305]{margin-bottom:24px}.settings-drawer .settings-title[data-v-25806305]{font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:12px}.settings-drawer .settings-layout-options[data-v-25806305]{display:flex;gap:12px}.settings-drawer .layout-option[data-v-25806305]{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius-base);cursor:pointer;transition:all .2s}.settings-drawer .layout-option[data-v-25806305]:hover{border-color:var(--color-primary-light-5)}.settings-drawer .layout-option.is-active[data-v-25806305]{border-color:var(--color-primary);background-color:var(--color-primary-light-9)}.settings-drawer .layout-option__preview[data-v-25806305]{width:48px;height:36px;border:1px solid var(--color-border-light);border-radius:2px;overflow:hidden}.settings-drawer .layout-option__label[data-v-25806305]{font-size:12px;color:var(--color-text-regular)}.settings-drawer .layout-preview-sidebar[data-v-25806305]{display:flex;height:100%}.settings-drawer .layout-preview-sidebar .preview-aside[data-v-25806305]{width:25%;height:100%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-sidebar .preview-main[data-v-25806305]{flex:1;display:flex;flex-direction:column}.settings-drawer .layout-preview-sidebar .preview-main .preview-header[data-v-25806305]{height:20%;background-color:var(--color-border-light)}.settings-drawer .layout-preview-sidebar .preview-main .preview-content[data-v-25806305]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-top[data-v-25806305]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-top .preview-header-full[data-v-25806305]{height:25%;background-color:var(--color-primary-light-7)}.settings-drawer .layout-preview-top .preview-content-full[data-v-25806305]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .layout-preview-mix[data-v-25806305]{display:flex;flex-direction:column;height:100%}.settings-drawer .layout-preview-mix .preview-header-mix[data-v-25806305]{height:25%;background-color:var(--color-primary-light-7);display:flex}.settings-drawer .layout-preview-mix .preview-header-mix .preview-mix-left[data-v-25806305]{width:30%;background-color:var(--color-primary)}.settings-drawer .layout-preview-mix .preview-mix-body[data-v-25806305]{flex:1;display:flex}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-aside[data-v-25806305]{width:25%;background-color:var(--color-primary-light-8)}.settings-drawer .layout-preview-mix .preview-mix-body .preview-mix-content[data-v-25806305]{flex:1;background-color:var(--bg-color-page)}.settings-drawer .settings-color-options[data-v-25806305]{display:flex;gap:12px}.settings-drawer .color-option[data-v-25806305]{width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.settings-drawer .color-option[data-v-25806305]:hover{transform:scale(1.1)}.settings-drawer .color-option.is-active[data-v-25806305]{box-shadow:0 0 0 2px var(--bg-color),0 0 0 4px var(--color-primary)}.settings-drawer .settings-switch-list[data-v-25806305]{display:flex;flex-direction:column;gap:12px}.settings-drawer .settings-switch-item[data-v-25806305]{display:flex;align-items:center;justify-content:space-between}.settings-drawer .settings-switch-item span[data-v-25806305]{font-size:14px;color:var(--color-text-regular)}.settings-drawer .switch-wrapper[data-v-25806305]{width:44px;height:22px;display:flex;align-items:center;cursor:pointer}.settings-drawer .switch-wrapper .switch-core[data-v-25806305]{width:100%;height:100%;border-radius:11px;background-color:var(--color-border);position:relative;transition:background-color .2s}.settings-drawer .switch-wrapper .switch-core[data-v-25806305]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background-color:#fff;border-radius:50%;transition:left .2s}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-25806305]{background-color:var(--color-primary)}.settings-drawer .switch-wrapper.is-checked .switch-core[data-v-25806305]:after{left:24px}.dropdown-enter-active[data-v-25806305],.dropdown-leave-active[data-v-25806305]{transition:all .2s ease}.dropdown-enter-from[data-v-25806305],.dropdown-leave-to[data-v-25806305]{opacity:0;transform:translateY(-10px)}.search-dropdown-enter-active[data-v-25806305],.search-dropdown-leave-active[data-v-25806305]{transition:all .2s ease}.search-dropdown-enter-from[data-v-25806305],.search-dropdown-leave-to[data-v-25806305]{opacity:0;transform:translateY(-4px)}.layout[data-v-70b115a5]{display:flex;width:100%;height:100%}.layout--sidebar[data-v-70b115a5]{flex-direction:row}.layout--sidebar .layout__aside[data-v-70b115a5]{height:100%}.layout--sidebar .layout__main[data-v-70b115a5]{flex:1;display:flex;flex-direction:column;height:100%}.layout--top[data-v-70b115a5]{flex-direction:column}.layout--top .layout__main[data-v-70b115a5]{flex:1;display:flex;flex-direction:column;height:calc(100% - 50px)}.layout--top .layout__content[data-v-70b115a5]{flex:1}.layout--mix[data-v-70b115a5]{flex-direction:column}.layout--mix .layout__mix-top-menu[data-v-70b115a5]{width:100%;height:50px;background-color:var(--bg-color);border-bottom:1px solid var(--color-border-lighter);flex-shrink:0}.layout--mix .layout__mix-body[data-v-70b115a5]{flex:1;display:flex;flex-direction:row;height:calc(100% - 50px)}.layout__aside[data-v-70b115a5]{transition:width .3s;overflow:hidden;flex-shrink:0;height:100%}.layout__top-menu[data-v-70b115a5]{width:100%;height:50px;box-sizing:border-box;background-color:var(--bg-color);border-bottom:1px solid var(--color-border-lighter);flex-shrink:0}.layout__mix-top-menu[data-v-70b115a5]{width:100%;height:50px;box-sizing:border-box;flex-shrink:0}.layout__main[data-v-70b115a5]{flex:1;display:flex;flex-direction:column;overflow:hidden;height:100%}.layout__header[data-v-70b115a5]{height:50px;box-sizing:border-box;background-color:var(--bg-color);border-bottom:1px solid var(--color-border-lighter);flex-shrink:0}.layout__content[data-v-70b115a5]{flex:1;overflow:auto;background-color:var(--bg-color-page)}.tabs-wrapper[data-v-9156d8cd]{width:100%;height:100%;padding:0 10px}.tabs-wrapper[data-v-9156d8cd] .t-tabs{height:100%}.tabs-wrapper[data-v-9156d8cd] .t-tabs__header{margin:0;border-bottom:none}.tabs-wrapper[data-v-9156d8cd] .t-tabs__nav{border:none}.tabs-wrapper[data-v-9156d8cd] .t-tabs__item{height:32px;line-height:32px;border:1px solid var(--color-border-lighter);margin-right:5px;border-radius:var(--border-radius-base);padding:0 15px}.tabs-wrapper[data-v-9156d8cd] .t-tabs__item.is-active{background-color:var(--color-primary-light-9);border-color:var(--color-primary)}.tab-label[data-v-9156d8cd]{display:flex;align-items:center;gap:5px}.tab-close[data-v-9156d8cd]{width:14px;height:14px;display:flex;align-items:center;justify-content:center;font-size:10px;border-radius:50%}.tab-close[data-v-9156d8cd]:hover{background-color:var(--color-danger-light);color:var(--color-danger)}.footer[data-v-4852826a]{width:100%;text-align:center;font-size:12px;color:var(--color-text-secondary)}.login[data-v-f3e724b6]{width:100%;min-height:100vh;display:flex;align-items:center;justify-content:flex-end;padding-right:15%;background:linear-gradient(135deg,var(--color-primary-light-9) 0%,var(--color-primary-light-7) 100%)}.login__container[data-v-f3e724b6]{width:400px;padding:40px;background-color:var(--bg-color);border-radius:var(--border-radius-large);box-shadow:var(--box-shadow-dark)}.login__header[data-v-f3e724b6]{text-align:center;margin-bottom:30px}.login__logo[data-v-f3e724b6]{width:60px;height:60px}.login__title[data-v-f3e724b6]{font-size:28px;font-weight:600;color:var(--color-primary);margin:15px 0 5px}.login__subtitle[data-v-f3e724b6]{font-size:14px;color:var(--color-text-secondary)}.login__form[data-v-f3e724b6] .x-form-item{margin-bottom:20px}.login__form[data-v-f3e724b6] .x-input__prefix{margin-right:8px}.login__submit[data-v-f3e724b6]{width:100%}.login__footer[data-v-f3e724b6]{text-align:center;margin-top:20px;font-size:12px;color:var(--color-text-placeholder)}.error-page[data-v-3b47f5bc]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-page)}.error-page__content[data-v-3b47f5bc]{text-align:center}.error-page__code[data-v-3b47f5bc]{font-size:120px;font-weight:600;color:var(--color-primary);line-height:1;margin-bottom:20px}.error-page__title[data-v-3b47f5bc]{font-size:24px;font-weight:500;color:var(--color-text-primary);margin-bottom:10px}.error-page__desc[data-v-3b47f5bc]{font-size:14px;color:var(--color-text-secondary);margin-bottom:30px}.error-page[data-v-3081df6c]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-page)}.error-page__content[data-v-3081df6c]{text-align:center}.error-page__code[data-v-3081df6c]{font-size:120px;font-weight:600;color:var(--color-warning);line-height:1;margin-bottom:20px}.error-page__title[data-v-3081df6c]{font-size:24px;font-weight:500;color:var(--color-text-primary);margin-bottom:10px}.error-page__desc[data-v-3081df6c]{font-size:14px;color:var(--color-text-secondary);margin-bottom:30px}.dashboard[data-v-44648cb1]{padding:20px}.dashboard__stats[data-v-44648cb1]{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:20px}@media (max-width: 1200px){.dashboard__stats[data-v-44648cb1]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dashboard__stats[data-v-44648cb1]{grid-template-columns:1fr}}.dashboard__main[data-v-44648cb1]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}@media (max-width: 992px){.dashboard__main[data-v-44648cb1]{grid-template-columns:1fr}}.dashboard__quick[data-v-44648cb1],.dashboard__activity[data-v-44648cb1]{min-height:300px}.card-title[data-v-44648cb1]{font-size:16px;font-weight:500}.stat-card__content[data-v-44648cb1]{display:flex;align-items:center;gap:15px}.stat-card__icon[data-v-44648cb1]{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:24px;border-radius:var(--border-radius-base)}.stat-card__info[data-v-44648cb1]{flex:1}.stat-card__title[data-v-44648cb1]{font-size:14px;color:var(--color-text-secondary);margin-bottom:5px}.stat-card__value[data-v-44648cb1]{font-size:24px;font-weight:600}.quick-links[data-v-44648cb1]{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}@media (max-width: 768px){.quick-links[data-v-44648cb1]{grid-template-columns:repeat(2,1fr)}}.quick-link[data-v-44648cb1]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;border-radius:var(--border-radius-base);background-color:var(--color-fill);text-decoration:none;transition:all var(--transition-duration-fast)}.quick-link[data-v-44648cb1]:hover{background-color:var(--color-primary-light-9);transform:translateY(-2px)}.quick-link__icon[data-v-44648cb1]{font-size:28px;margin-bottom:10px}.quick-link__title[data-v-44648cb1]{font-size:14px;color:var(--color-text-primary)}.activity-list[data-v-44648cb1]{display:flex;flex-direction:column;gap:15px}.activity-item[data-v-44648cb1]{display:flex;align-items:center;gap:10px;padding-bottom:15px;border-bottom:1px solid var(--color-border-lighter)}.activity-item[data-v-44648cb1]:last-child{border-bottom:none;padding-bottom:0}.activity-item__action[data-v-44648cb1]{flex:1;font-size:14px;color:var(--color-text-regular)}.activity-item__time[data-v-44648cb1]{font-size:12px;color:var(--color-text-placeholder)}.system-info[data-v-44648cb1]{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media (max-width: 768px){.system-info[data-v-44648cb1]{grid-template-columns:1fr}}.system-info__item[data-v-44648cb1]{display:flex;align-items:center;gap:10px}.system-info__label[data-v-44648cb1]{font-size:14px;color:var(--color-text-secondary);min-width:80px}.system-info__value[data-v-44648cb1]{font-size:14px;color:var(--color-text-primary)}.user-page[data-v-d2491ae0]{padding:20px}.user-page .search-card[data-v-d2491ae0]{margin-bottom:20px}.user-page .toolbar[data-v-d2491ae0]{margin-bottom:15px}.data-table[data-v-d2491ae0]{width:100%;border-collapse:collapse}.data-table th[data-v-d2491ae0],.data-table td[data-v-d2491ae0]{padding:12px;text-align:left;border-bottom:1px solid var(--color-border-lighter)}.data-table th[data-v-d2491ae0]{font-weight:500;color:var(--color-text-regular);background-color:var(--color-fill-light)}.data-table .loading-cell[data-v-d2491ae0],.data-table .empty-cell[data-v-d2491ae0]{text-align:center;color:var(--color-text-secondary);padding:40px}.pagination-wrapper[data-v-d2491ae0]{display:flex;justify-content:flex-end;margin-top:20px}.role-page[data-v-8ad30bc6]{padding:20px}.role-page .search-card[data-v-8ad30bc6]{margin-bottom:20px}.role-page .toolbar[data-v-8ad30bc6]{margin-bottom:15px}.data-table[data-v-8ad30bc6]{width:100%;border-collapse:collapse}.data-table th[data-v-8ad30bc6],.data-table td[data-v-8ad30bc6]{padding:12px;text-align:left;border-bottom:1px solid var(--color-border-lighter)}.data-table th[data-v-8ad30bc6]{font-weight:500;color:var(--color-text-regular);background-color:var(--color-fill-light)}.data-table .loading-cell[data-v-8ad30bc6],.data-table .empty-cell[data-v-8ad30bc6]{text-align:center;color:var(--color-text-secondary);padding:40px}.pagination-wrapper[data-v-8ad30bc6]{display:flex;justify-content:flex-end;margin-top:20px}.menu-page[data-v-2a272a68]{padding:20px}.menu-page .toolbar[data-v-2a272a68]{margin-bottom:15px}.tree-table[data-v-2a272a68]{width:100%;border-collapse:collapse}.tree-table th[data-v-2a272a68],.tree-table td[data-v-2a272a68]{padding:12px;text-align:left;border-bottom:1px solid var(--color-border-lighter)}.tree-table th[data-v-2a272a68]{font-weight:500;color:var(--color-text-regular);background-color:var(--color-fill-light)}.tree-table .tree-row--level-1 td[data-v-2a272a68]:first-child{padding-left:30px}.tree-indent[data-v-2a272a68]{display:inline-block;width:20px}.menu-name[data-v-2a272a68]{cursor:pointer;color:var(--color-primary)}.menu-name[data-v-2a272a68]:hover{text-decoration:underline}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xto-fronted",
3
- "version": "0.4.67",
3
+ "version": "0.4.69",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "XTO 前端应用框架",
@@ -1,5 +1,5 @@
1
1
  <script setup lang="ts">
2
- import { computed } from 'vue'
2
+ import { computed, ref, onMounted } from 'vue'
3
3
  import { useRoute, useRouter } from 'vue-router'
4
4
  import { useMenuStore } from '@/stores/menu'
5
5
  import { useUserStore } from '@/stores/user'
@@ -7,6 +7,7 @@ import { useAuthStore } from '@/stores/auth'
7
7
  import { useAppStore } from '@/stores/app'
8
8
  import { Menu } from '@xto/navigation'
9
9
  import { Button } from '@xto/base'
10
+ import { local } from '@/utils/storage'
10
11
  import SidebarMenuItem from './SidebarMenuItem.vue'
11
12
 
12
13
  // Props
@@ -33,6 +34,41 @@ const displayMenuList = computed(() => props.menuList.length > 0 ? props.menuLis
33
34
  const isCollapsed = computed(() => appStore.isCollapsed)
34
35
  const activeMenu = computed(() => route.path)
35
36
 
37
+ // 菜单展开状态持久化
38
+ const OPENED_MENUS_KEY = 'sidebar_opened_menus'
39
+ const openedMenus = ref<string[]>(local.get<string[]>(OPENED_MENUS_KEY) || [])
40
+
41
+ // 保存展开状态
42
+ const handleMenuOpen = (index: string) => {
43
+ if (!openedMenus.value.includes(index)) {
44
+ openedMenus.value.push(index)
45
+ local.set(OPENED_MENUS_KEY, openedMenus.value)
46
+ }
47
+ }
48
+
49
+ const handleMenuClose = (index: string) => {
50
+ const idx = openedMenus.value.indexOf(index)
51
+ if (idx > -1) {
52
+ openedMenus.value.splice(idx, 1)
53
+ local.set(OPENED_MENUS_KEY, openedMenus.value)
54
+ }
55
+ }
56
+
57
+ // 根据当前路由自动展开父菜单
58
+ onMounted(() => {
59
+ const path = route.path
60
+ // 找到当前路由对应的父菜单并展开
61
+ for (const menu of displayMenuList.value) {
62
+ if (menu.children?.length) {
63
+ const hasActiveChild = menu.children.some((child: any) => path.startsWith(child.menuUrl))
64
+ if (hasActiveChild && !openedMenus.value.includes(menu.menuUrl)) {
65
+ openedMenus.value.push(menu.menuUrl)
66
+ }
67
+ }
68
+ }
69
+ local.set(OPENED_MENUS_KEY, openedMenus.value)
70
+ })
71
+
36
72
  // 菜单主题相关
37
73
  const menuBgColor = computed(() => appStore.isDark ? '#1d1e1f' : '#fff')
38
74
  const menuTextColor = computed(() => appStore.isDark ? '#cfd3dc' : '#303133')
@@ -71,8 +107,11 @@ const handleLogout = () => {
71
107
  :background-color="menuBgColor"
72
108
  :text-color="menuTextColor"
73
109
  :active-text-color="menuActiveTextColor"
110
+ :default-openeds="openedMenus"
74
111
  class="sidebar__menu"
75
112
  @select="handleMenuSelect"
113
+ @open="handleMenuOpen"
114
+ @close="handleMenuClose"
76
115
  >
77
116
  <template v-for="menu in displayMenuList" :key="menu.menuUrl">
78
117
  <SidebarMenuItem :menu="menu" />
@@ -1 +0,0 @@
1
- import{d as t,o as a,c as p,a as o,B as n,C as _,u as d,h as i,P as c}from"./vue-vendor-Br-l7wbK.js";import{o as l}from"./xto-base-C-IBqjVs.js";import{_ as m}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./xto-core-DZK7Cyg0.js";const u={class:"error-page"},f={class:"error-page__content"},g=t({__name:"404",setup(v){const r=c(),s=()=>{r.push("/")};return(x,e)=>(a(),p("div",u,[o("div",f,[e[1]||(e[1]=o("div",{class:"error-page__code"},"404",-1)),e[2]||(e[2]=o("div",{class:"error-page__title"},"页面不存在",-1)),e[3]||(e[3]=o("div",{class:"error-page__desc"},"抱歉,您访问的页面不存在或已被删除",-1)),n(d(l),{type:"primary",onClick:s},{default:_(()=>[...e[0]||(e[0]=[i("返回首页",-1)])]),_:1})])]))}}),V=m(g,[["__scopeId","data-v-54fcac4c"]]);export{V as default};
@@ -1 +0,0 @@
1
- .error-page[data-v-54fcac4c]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--bg-color-page)}.error-page__content[data-v-54fcac4c]{text-align:center}.error-page__code[data-v-54fcac4c]{font-size:120px;font-weight:600;color:var(--color-primary);line-height:1;margin-bottom:20px}.error-page__title[data-v-54fcac4c]{font-size:24px;font-weight:500;color:var(--color-text-primary);margin-bottom:10px}.error-page__desc[data-v-54fcac4c]{font-size:14px;color:var(--color-text-secondary);margin-bottom:30px}
@@ -1 +0,0 @@
1
- const s=(t,r)=>{const o=t.__vccOpts||t;for(const[c,e]of r)o[c]=e;return o};export{s as _};
@@ -1 +0,0 @@
1
- import{d as T,o as x,c as h,a as p,B as t,C as l,u as a,I as B,k as g,P as I,Q as R,R as q,h as k}from"./vue-vendor-Br-l7wbK.js";import{_ as z}from"./vite-Dw-pgLOX.js";import{r as y,o as C}from"./xto-base-C-IBqjVs.js";import{B as j,F as c,w as v,T as P}from"./xto-form-NRjKKNcY.js";import{c as i}from"./xto-feedback-B2M02fn3.js";import{a as U}from"./vendor-42ANG6Sg.js";import{g as L,a as N,c as A,b as D,d as E,s as F}from"./index-DiHSZ6SJ.js";import{_ as K}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./xto-core-DZK7Cyg0.js";import"./xto-data-BFpiDgJi.js";import"./xto-navigation-qLRTxo68.js";/* empty css *//* empty css */const $=()=>{const o=U.create({baseURL:"/api",timeout:3e4,headers:{"Content-Type":"application/json"}});return o.interceptors.request.use(e=>{const r=L(),n=N()||"Bearer";return r&&(e.headers.Authorization=`${n} ${r}`),e},e=>Promise.reject(e)),o.interceptors.response.use(e=>{const{data:r}=e;return r.code===200||r.code===0?r.data:(i.error(r.message||"请求失败"),Promise.reject(new Error(r.message||"请求失败")))},e=>{var n;const{response:r}=e;if(r)switch(r.status){case 401:i.error("登录已过期,请重新登录"),A(),window.location.href="/login";break;case 403:i.error("没有权限访问");break;case 404:i.error("请求资源不存在");break;case 500:i.error("服务器错误");break;default:i.error(((n=r.data)==null?void 0:n.message)||"请求失败")}else i.error("网络连接失败");return Promise.reject(e)}),o},m=$(),M={get(o,e){return m.get(o,e)},post(o,e,r){return m.post(o,e,r)},put(o,e,r){return m.put(o,e,r)},patch(o,e,r){return m.patch(o,e,r)},delete(o,e){return m.delete(o,e)},download(o,e){return m.get(o,{...e,responseType:"blob"})}};function Q(o){return M.post("/user/v1.0/login/by-domain",o)}const X={class:"login"},G={class:"login__container"},H=T({__name:"index",setup(o){const e=I(),r=R(),n=g(!1),_=g(!1),u=B({uid:"",password:""}),V={uid:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:6,message:"密码长度至少6位",trigger:"blur"}]},w=g(),b=async()=>{var f;try{await((f=w.value)==null?void 0:f.validate()),n.value=!0;const s=await Q({appId:E(),clientId:D(),uid:u.uid,password:u.password,code:!0});F(s),i.success("登录成功");const d=r.query.redirect||"/";e.push(d)}catch(s){console.error("登录失败:",s)}finally{n.value=!1}};return(f,s)=>(x(),h("div",X,[p("div",G,[s[5]||(s[5]=p("div",{class:"login__header"},[p("img",{src:z,alt:"Logo",class:"login__logo"}),p("h1",{class:"login__title"},"Xto Demo"),p("p",{class:"login__subtitle"},"后台管理系统")],-1)),t(a(j),{ref_key:"formRef",ref:w,model:u,rules:V,class:"login__form","label-width":"0"},{default:l(()=>[t(a(c),{prop:"uid"},{default:l(()=>[t(a(v),{modelValue:u.uid,"onUpdate:modelValue":s[0]||(s[0]=d=>u.uid=d),placeholder:"用户名",size:"large"},{prefix:l(()=>[t(a(y),{name:"user",size:18})]),_:1},8,["modelValue"])]),_:1}),t(a(c),{prop:"password"},{default:l(()=>[t(a(v),{modelValue:u.password,"onUpdate:modelValue":s[1]||(s[1]=d=>u.password=d),type:"password",placeholder:"密码",size:"large","show-password":"",onKeyup:q(b,["enter"])},{prefix:l(()=>[t(a(y),{name:"lock",size:18})]),_:1},8,["modelValue"])]),_:1}),t(a(c),null,{default:l(()=>[t(a(P),{modelValue:_.value,"onUpdate:modelValue":s[2]||(s[2]=d=>_.value=d)},{default:l(()=>[...s[3]||(s[3]=[k("记住我",-1)])]),_:1},8,["modelValue"])]),_:1}),t(a(c),null,{default:l(()=>[t(a(C),{type:"primary",size:"large",loading:n.value,class:"login__submit",onClick:b},{default:l(()=>[...s[4]||(s[4]=[k(" 登录 ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"]),s[6]||(s[6]=p("div",{class:"login__footer"},[p("p",null,"请输入您的用户名和密码")],-1))])]))}}),ne=K(H,[["__scopeId","data-v-f3e724b6"]]);export{ne as default};
@@ -1 +0,0 @@
1
- .app{width:100%;height:100%;background-color:var(--bg-color-page);transition:background-color .3s}:root{--color-primary: #409eff;--color-primary-light-3: #79bbff;--color-primary-light-5: #a0cfff;--color-primary-light-7: #c6e2ff;--color-primary-light-8: #d9ecff;--color-primary-light-9: #ecf5ff;--color-primary-dark-2: #337ecc;--color-success: #67c23a;--color-success-light: #e1f3d8;--color-success-dark: #529b2e;--color-warning: #e6a23c;--color-warning-light: #fdf6ec;--color-warning-dark: #b88230;--color-danger: #f56c6c;--color-danger-light: #fde2e2;--color-danger-dark: #c45656;--color-info: #909399;--color-info-light: #f4f4f5;--color-info-dark: #73767a;--color-text-primary: #303133;--color-text-regular: #606266;--color-text-secondary: #909399;--color-text-placeholder: #a8abb2;--color-text-disabled: #c0c4cc;--color-border: #dcdfe6;--color-border-light: #e4e7ed;--color-border-lighter: #ebeef5;--color-border-extra-light: #f2f6fc;--color-border-dark: #d4d7de;--color-fill: #f5f7fa;--color-fill-light: #fafafa;--color-fill-lighter: #fafcff;--color-fill-blank: #ffffff;--bg-color: #ffffff;--bg-color-page: #f2f3f5;--bg-color-overlay: #ffffff;--box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .1);--box-shadow-light: 0 2px 8px 0 rgba(0, 0, 0, .06);--box-shadow-lighter: 0 1px 4px 0 rgba(0, 0, 0, .04);--box-shadow-dark: 0 4px 16px 0 rgba(0, 0, 0, .12);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-size-base: 14px;--font-size-small: 12px;--font-size-large: 16px;--font-size-extra-large: 18px;--border-radius-base: 4px;--border-radius-small: 2px;--border-radius-large: 8px;--border-radius-round: 20px;--border-radius-circle: 50%;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--component-size-large: 40px;--component-size-default: 32px;--component-size-small: 24px;--transition-duration: .3s;--transition-duration-fast: .2s;--transition-duration-slow: .5s;--z-index-dropdown: 1000;--z-index-sticky: 1020;--z-index-fixed: 1030;--z-index-modal-backdrop: 1040;--z-index-modal: 1050;--z-index-popover: 1060;--z-index-tooltip: 1070;--sidebar-width: 210px;--sidebar-collapsed-width: 64px;--header-height: 50px;--tabs-height: 40px;--footer-height: 30px}.dark{--color-text-primary: #e5eaf3;--color-text-regular: #cfd3dc;--color-text-secondary: #a3a6ad;--color-text-placeholder: #8d9095;--color-text-disabled: #6c6e72;--color-border: #4c4d4f;--color-border-light: #414243;--color-border-lighter: #363637;--color-border-extra-light: #2b2b2c;--color-border-dark: #58585b;--color-fill: #303030;--color-fill-light: #262727;--color-fill-lighter: #1d1d1d;--color-fill-blank: #141414;--bg-color: #1d1e1f;--bg-color-page: #0a0a0a;--bg-color-overlay: #1d1e1f;--box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .3);--box-shadow-light: 0 2px 8px 0 rgba(0, 0, 0, .24);--box-shadow-lighter: 0 1px 4px 0 rgba(0, 0, 0, .2);--box-shadow-dark: 0 4px 16px 0 rgba(0, 0, 0, .36)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{width:100%;height:100%;font-size:var(--font-size-base);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{width:100%;height:100%;font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--color-text-primary);background-color:var(--bg-color-page)}#app{width:100%;height:100%}a{color:var(--color-primary);text-decoration:none;cursor:pointer;transition:color var(--transition-duration-fast)}a:hover{color:var(--color-primary-light-3)}ul,ol{list-style:none}img{max-width:100%;height:auto;vertical-align:middle}button{cursor:pointer;font-family:inherit;font-size:inherit;border:none;background:none;outline:none}button:disabled{cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit;outline:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{margin:0;font-weight:500;color:var(--color-text-primary)}p{margin:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background-color:var(--color-fill-light);border-radius:3px}::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-secondary)}::selection{background-color:var(--color-primary-light-8);color:var(--color-primary)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-duration)}.fade-enter-from,.fade-leave-to{opacity:0}.fade-scale-enter-active,.fade-scale-leave-active{transition:all var(--transition-duration)}.fade-scale-enter-from,.fade-scale-leave-to{opacity:0;transform:scale(.9)}.fade-transform-enter-active,.fade-transform-leave-active{transition:all var(--transition-duration-fast)}.fade-transform-enter-from{opacity:0;transform:translate(-10px)}.fade-transform-leave-to{opacity:0;transform:translate(10px)}.slide-down-enter-active,.slide-down-leave-active{transition:all var(--transition-duration)}.slide-down-enter-from,.slide-down-leave-to{opacity:0;transform:translateY(-20px)}.slide-up-enter-active,.slide-up-leave-active{transition:all var(--transition-duration)}.slide-up-enter-from,.slide-up-leave-to{opacity:0;transform:translateY(20px)}.slide-left-enter-active,.slide-left-leave-active{transition:all var(--transition-duration)}.slide-left-enter-from,.slide-left-leave-to{opacity:0;transform:translate(20px)}.slide-right-enter-active,.slide-right-leave-active{transition:all var(--transition-duration)}.slide-right-enter-from,.slide-right-leave-to{opacity:0;transform:translate(-20px)}.zoom-enter-active,.zoom-leave-active{transition:all var(--transition-duration)}.zoom-enter-from,.zoom-leave-to{opacity:0;transform:scale(.5)}.list-enter-active,.list-leave-active{transition:all var(--transition-duration)}.list-enter-from,.list-leave-to{opacity:0;transform:translateY(30px)}.collapse-transition{transition:width var(--transition-duration),padding var(--transition-duration)}.dark .sidebar,.dark .layout__aside{background-color:#1d1e1f}.dark .sidebar{border-right:1px solid #363637}.dark .sidebar__search-results{background-color:#1d1e1f;border-color:#363637}.dark .sidebar__search-item:hover{background-color:#262727}.dark .sidebar__search-item-title{color:#cfd3dc}.dark .sidebar__search-item-parent{color:#a3a6ad}.dark .sidebar__logo{border-bottom-color:#363637}.dark .sidebar__user{border-top-color:#363637}.dark .sidebar__user-name{color:#cfd3dc}.dark .sidebar__user-role{color:#a3a6ad}.dark .x-menu{background-color:#1d1e1f!important;border-color:#363637;color:#cfd3dc}.dark .x-menu.x-menu--vertical{border-right-color:#363637}.dark .x-menu.x-menu--horizontal{border-bottom-color:#363637;background-color:#1d1e1f!important}.dark .x-menu-item{color:#cfd3dc!important;background-color:transparent!important}.dark .x-menu-item:hover{background-color:#262727!important}.dark .x-menu-item.is-active{color:#409eff!important;background-color:#409eff1a!important}.dark .x-menu-item.is-active:before{background-color:#409eff}.dark .x-menu-item.is-horizontal:hover{background-color:transparent!important}.dark .x-menu-item.is-horizontal.is-active{background-color:transparent!important;border-bottom-color:#409eff}.dark .x-sub-menu__title{color:#cfd3dc!important;background-color:transparent!important}.dark .x-sub-menu__title:hover{background-color:#262727!important}.dark .x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .x-sub-menu__menu .x-menu-item{background-color:transparent!important;color:#cfd3dc!important}.dark .x-sub-menu__menu .x-menu-item:hover{background-color:#262727!important}.dark .x-sub-menu__menu .x-menu-item.is-active{color:#409eff!important;background-color:#409eff1a!important}.dark .x-sub-menu__arrow{color:#a3a6ad}.dark .x-sub-menu.is-active>.x-sub-menu__title{color:#409eff!important}.dark .x-sub-menu--horizontal .x-sub-menu__title:hover{background-color:transparent!important}.dark .x-sub-menu--horizontal .x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637}.dark .x-sub-menu.is-collapse>.x-sub-menu__menu{background-color:#1d1e1f!important;border:1px solid #363637}.dark .header{background-color:#1d1e1f;border-bottom-color:#363637}.dark .header__collapse{color:#cfd3dc}.dark .header__breadcrumb{color:#a3a6ad}.dark .header__user-name{color:#cfd3dc}.dark .header__user-arrow{color:#a3a6ad}.dark .header__action:hover,.dark .header__user-trigger:hover{background-color:#262727}.dark .header__dropdown{background-color:#1d1e1f;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .header__dropdown-name{color:#e5eaf3}.dark .header__dropdown-role{color:#a3a6ad}.dark .header__dropdown-divider{background-color:#363637}.dark .header__dropdown-item{color:#cfd3dc}.dark .header__dropdown-item:hover{background-color:#262727;color:#e5eaf3}.dark .top-menu{background-color:#1d1e1f}.dark .top-menu__menu{background-color:#1d1e1f!important}.dark .top-menu__menu-char{background-color:#409eff33;color:#79bbff}.dark .top-menu__action{color:#cfd3dc}.dark .top-menu__action:hover{background-color:#262727;color:#409eff}.dark .top-menu__user-trigger:hover{background-color:#262727}.dark .top-menu__user-name{color:#cfd3dc}.dark .top-menu__user-arrow{color:#a3a6ad}.dark .top-menu__dropdown{background-color:#1d1e1f;border:1px solid #363637;box-shadow:0 2px 12px #00000080}.dark .top-menu__dropdown-name{color:#e5eaf3}.dark .top-menu__dropdown-role{color:#a3a6ad}.dark .top-menu__dropdown-divider{background-color:#363637}.dark .top-menu__dropdown-item{color:#cfd3dc}.dark .top-menu__dropdown-item:hover{background-color:#262727;color:#e5eaf3}.dark .x-button.x-button--default{background-color:#1d1e1f;border-color:#4c4d4f;color:#cfd3dc}.dark .x-button.x-button--default:hover{border-color:#409eff;color:#409eff}.dark .x-button.x-button--text{color:#409eff}.dark .x-form-item__label{color:#cfd3dc}.dark .x-form-item__error{color:#f56c6c}.dark .x-input{background-color:#1d1e1f;border-color:#4c4d4f}.dark .x-input.is-focus{border-color:#409eff}.dark .x-input .x-input__inner{background-color:transparent;color:#e5eaf3}.dark .x-input .x-input__inner::placeholder{color:#6c6e72}.dark .x-input .x-input__suffix,.dark .x-input .x-input__prefix{color:#a3a6ad}.dark .x-select{background-color:#1d1e1f;border-color:#4c4d4f}.dark .x-card{background-color:#1d1e1f;border-color:#363637}.dark .x-card__header{border-bottom-color:#363637;color:#e5eaf3}.dark .data-table th{background-color:#262727;color:#cfd3dc;border-bottom-color:#363637}.dark .data-table td{border-bottom-color:#363637;color:#cfd3dc}.dark .data-table tr:hover td{background-color:#262727}.dark .x-modal__wrapper{background-color:#000000b3}.dark .x-modal__container{background-color:#1d1e1f;border:1px solid #363637}.dark .x-modal__header{border-bottom-color:#363637;color:#e5eaf3}.dark .x-modal__footer{border-top-color:#363637}.dark .x-message{background-color:#1d1e1f;border:1px solid #363637}.dark .x-tag.x-tag--primary{background-color:#409eff33;color:#79bbff;border-color:#409eff4d}.dark .x-tag.x-tag--success{background-color:#67c23a33;color:#95d475;border-color:#67c23a4d}.dark .x-tag.x-tag--warning{background-color:#e6a23c33;color:#eebe77;border-color:#e6a23c4d}.dark .x-tag.x-tag--danger{background-color:#f56c6c33;color:#fab6b6;border-color:#f56c6c4d}.dark .x-tag.x-tag--info{background-color:#90939933;color:#c0c4cc;border-color:#9093994d}.dark .x-switch{background-color:#4c4d4f}.dark .x-switch.is-checked{background-color:#409eff}.dark .x-pagination{color:#cfd3dc}.dark .x-pagination__item{background-color:#1d1e1f;border-color:#4c4d4f;color:#cfd3dc}.dark .x-pagination__item:hover{color:#409eff}.dark .x-pagination__item.is-active{background-color:#409eff;border-color:#409eff;color:#fff}.dark .login{background:linear-gradient(135deg,#1a1a2e,#16213e)}.dark .login__container{background-color:#1d1e1f;border:1px solid #363637}.dark .login__title{color:#409eff}.dark .login__subtitle{color:#a3a6ad}.dark .login__footer{color:#6c6e72}.dark .stat-card__title{color:#a3a6ad}.dark .quick-link{background-color:#262727}.dark .quick-link:hover{background-color:#409eff1a}.dark .quick-link__title{color:#cfd3dc}.dark .activity-item{border-bottom-color:#363637}.dark .activity-item__action{color:#cfd3dc}.dark .search-card,.dark .table-card,.dark .x-popconfirm{background-color:#1d1e1f;border:1px solid #363637}.dark .x-drawer{background-color:#1d1e1f}.dark .x-drawer__header{background-color:#1d1e1f;border-bottom-color:#363637;color:#e5eaf3}.dark .x-drawer__body{background-color:#1d1e1f;color:#cfd3dc}.dark .x-drawer__footer{background-color:#1d1e1f;border-top-color:#363637}.dark .settings-drawer .settings-title{color:#e5eaf3}.dark .settings-drawer .settings-section{background-color:transparent}.dark .settings-drawer .layout-option{border-color:#4c4d4f;background-color:transparent}.dark .settings-drawer .layout-option:hover{border-color:#409eff}.dark .settings-drawer .layout-option.is-active{border-color:#409eff;background-color:#409eff1a}.dark .settings-drawer .layout-option__label,.dark .settings-drawer .settings-switch-item span{color:#cfd3dc}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-info{color:var(--color-info)}.bg-primary{background-color:var(--color-primary)}.bg-success{background-color:var(--color-success)}.bg-warning{background-color:var(--color-warning)}.bg-danger{background-color:var(--color-danger)}.mt-10{margin-top:10px}.mt-20{margin-top:20px}.mb-10{margin-bottom:10px}.mb-20{margin-bottom:20px}.ml-10{margin-left:10px}.mr-10{margin-right:10px}.p-10{padding:10px}.p-20{padding:20px}.card{background-color:var(--bg-color);border-radius:var(--border-radius-base);box-shadow:var(--box-shadow-light);padding:var(--spacing-md)}.page-container{padding:var(--spacing-md);min-height:100%}.search-bar{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.table-container{background-color:var(--bg-color);border-radius:var(--border-radius-base);padding:var(--spacing-md)}.pagination-container{display:flex;justify-content:flex-end;margin-top:var(--spacing-md)}.x-menu-item.is-active{color:var(--color-primary)!important;background-color:var(--color-primary-light-9)!important;position:relative}.x-menu-item.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--color-primary);border-radius:0 2px 2px 0}.x-sub-menu__menu .x-menu-item.is-active{color:var(--color-primary)!important;background-color:var(--color-primary-light-9)!important;position:relative}.x-sub-menu__menu .x-menu-item.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--color-primary);border-radius:0 2px 2px 0}html.grey-mode{filter:grayscale(100%);-webkit-filter:grayscale(100%)}
@@ -1 +0,0 @@
1
- var l=(a=>(a[a.ENABLED=1]="ENABLED",a[a.DISABLED=0]="DISABLED",a))(l||{}),E=(a=>(a[a.DIRECTORY=0]="DIRECTORY",a[a.MENU=1]="MENU",a[a.BUTTON=2]="BUTTON",a))(E||{});const D=[{label:"启用",value:1},{label:"禁用",value:0}],r=[{label:"目录",value:0},{label:"菜单",value:1},{label:"按钮",value:2}];export{E as M,l as S,D as a,r as b};
@@ -1 +0,0 @@
1
- import{g as Ae,s as Re,c as Pe,h as Be,u as ge,e as be,f as ye}from"./index-DiHSZ6SJ.js";import{L as Oe,k as f,e as g,d as ke,o as t,c as a,n as T,a as e,x as xe,D as qe,i as u,u as o,g as y,B as m,C as L,F as U,z as V,f as S,h as Ge,Q as $e,P as Ce,q as Me,s as Ne,S as Se,T as re,A as ze,b as he,w as De,j as Ke}from"./vue-vendor-Br-l7wbK.js";import{_ as Ue}from"./vite-Dw-pgLOX.js";import{i as Ee,r as fe,d as Fe}from"./xto-navigation-qLRTxo68.js";import{o as We,r as _}from"./xto-base-C-IBqjVs.js";import{_ as we}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{n as Te}from"./xto-feedback-B2M02fn3.js";import"./xto-form-NRjKKNcY.js";import"./xto-core-DZK7Cyg0.js";import"./xto-data-BFpiDgJi.js";/* empty css *//* empty css */const Le=Oe("auth",()=>{const Q=f(Ae()),C=g(()=>Be()),b=f(""),p=f(""),d=f(""),$=f("/login");return{token:Q,isLoggedIn:C,baseUrl:b,appId:p,clientId:d,loginPath:$,login:x=>{Q.value=x.access_token,Re(x)},logout:()=>{Q.value=null,Pe()},setBaseUrl:x=>{b.value=x},setAppId:x=>{p.value=x},setClientId:x=>{d.value=x},setLoginPath:x=>{$.value=x}}}),He={key:0,class:"sidebar__logo"},je={class:"sidebar__menu-content"},Qe={key:0,class:"sidebar__menu-icon"},Je={key:1,class:"sidebar__menu-char"},Xe={class:"sidebar__menu-text"},Ye={class:"sidebar__menu-content"},Ze={class:"sidebar__menu-icon"},es={key:1,class:"sidebar__menu-char"},ss={class:"sidebar__menu-text"},ts={class:"sidebar__menu-content"},os={key:0,class:"sidebar__menu-icon"},ns={key:1,class:"sidebar__menu-char"},as={class:"sidebar__menu-text"},ls={key:1,class:"sidebar__user"},is={class:"sidebar__user-info"},rs={class:"sidebar__user-name"},cs={class:"sidebar__user-role"},ds=ke({__name:"Sidebar",props:{menuList:{default:()=>[]},showLogo:{type:Boolean,default:!0},showUser:{type:Boolean,default:!0}},setup(Q){const C=Q,b=$e(),p=Ce(),d=ge(),$=be(),O=Le(),M=ye(),E=g(()=>C.menuList.length>0?C.menuList:d.menuList),z=g(()=>M.isCollapsed),D=g(()=>b.path),W=g(()=>M.isDark?"#1d1e1f":"#fff"),x=g(()=>M.isDark?"#cfd3dc":"#303133"),q=g(()=>"#409eff"),G=h=>{h&&h!==b.path&&p.push(h)},J=()=>{O.logout(),$.clearUserInfo(),d.clearMenu(),p.push("/login")},F=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),N=h=>{if(!h||h==="")return"";if(h.startsWith("tineco-icon-")){const k=h.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[k]||k}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[h]||h},A=h=>h?h.charAt(0):"",I=h=>F.has(h);return(h,R)=>(t(),a("div",{class:T(["sidebar",{"sidebar--collapsed":z.value}])},[C.showLogo?(t(),a("div",He,[R[0]||(R[0]=e("img",{src:Ue,alt:"Logo",class:"sidebar__logo-img"},null,-1)),xe(e("span",{class:"sidebar__logo-text"},u(o(M).appName),513),[[qe,!z.value]])])):y("",!0),m(o(Ee),{"model-value":D.value,mode:"vertical",collapse:z.value,"collapse-transition":!1,"background-color":W.value,"text-color":x.value,"active-text-color":q.value,class:"sidebar__menu",onSelect:G},{default:L(()=>[(t(!0),a(U,null,V(E.value,k=>(t(),a(U,{key:k.menuUrl},[k.children&&k.children.length>0?(t(),S(o(Fe),{key:0,index:k.menuUrl},{title:L(()=>[e("span",je,[k.menuName!=="首页"?(t(),a("span",Qe,[I(N(k.icon))?(t(),S(o(_),{key:0,name:N(k.icon),size:16},null,8,["name"])):(t(),a("span",Je,u(A(k.menuName)),1))])):y("",!0),e("span",Xe,u(k.menuName),1)])]),default:L(()=>[(t(!0),a(U,null,V(k.children,w=>(t(),S(o(fe),{key:w.menuUrl,index:w.menuUrl},{default:L(()=>[e("span",Ye,[e("span",Ze,[I(N(w.icon))?(t(),S(o(_),{key:0,name:N(w.icon),size:16},null,8,["name"])):(t(),a("span",es,u(A(w.menuName)),1))]),e("span",ss,u(w.menuName),1)])]),_:2},1032,["index"]))),128))]),_:2},1032,["index"])):(t(),S(o(fe),{key:1,index:k.menuUrl},{default:L(()=>[e("span",ts,[k.menuName!=="首页"?(t(),a("span",os,[I(N(k.icon))?(t(),S(o(_),{key:0,name:N(k.icon),size:16},null,8,["name"])):(t(),a("span",ns,u(A(k.menuName)),1))])):y("",!0),e("span",as,u(k.menuName),1)])]),_:2},1032,["index"]))],64))),128))]),_:1},8,["model-value","collapse","background-color","text-color","active-text-color"]),C.showUser&&!z.value?(t(),a("div",ls,[e("div",is,[e("span",rs,u(o($).userName),1),e("span",cs,u(o($).departmentName),1)]),m(o(We),{type:"text",size:"small",onClick:J},{default:L(()=>[...R[1]||(R[1]=[Ge("退出",-1)])]),_:1})])):y("",!0)],2))}}),Ve=we(ds,[["__scopeId","data-v-d836d8bb"]]),us={class:"header"},ms={class:"header__left"},ps={key:0,class:"header__breadcrumb"},_s={key:0,class:"breadcrumb-separator"},vs={class:"header__right"},hs={key:0,class:"header__search-dropdown"},fs={key:0,class:"header__search-results"},gs=["onClick"],ys={key:0,class:"header__search-icon"},ks={key:1,class:"header__search-char"},ws={class:"header__search-item-title"},bs={key:1,class:"header__search-item-parent"},xs={key:1,class:"header__search-empty"},$s=["title"],Cs={class:"header__avatar"},Ls={class:"header__user-name"},Ms={key:0,class:"header__dropdown"},Ns={class:"header__dropdown-header"},Ss={class:"header__dropdown-avatar"},zs={class:"header__dropdown-info"},Us={class:"header__dropdown-name"},Es={class:"header__dropdown-role"},Ts={class:"header__dropdown-menu"},Is={class:"settings-drawer"},Ds={class:"settings-section"},Vs={class:"settings-layout-options"},Fs=["onClick"],As={class:"layout-option__preview"},Rs={key:0,class:"layout-preview-sidebar"},Ps={key:1,class:"layout-preview-top"},Bs={key:2,class:"layout-preview-mix"},Os={class:"layout-option__label"},qs={class:"settings-section"},Gs={class:"settings-color-options"},Ks=["title","onClick"],Ws={class:"settings-section"},Hs={class:"settings-switch-list"},js={class:"settings-switch-item"},Qs={class:"settings-switch-item"},Js=ke({__name:"Header",setup(Q){const C=$e(),b=Ce(),p=ye(),d=be(),$=Le(),O=ge(),M=f(!1),E=f(!1),z=f(null),D=f(!1),W=f(!1),x=f(""),q=f(null),G=f(!1),J=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],F=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],N=g(()=>C.matched.filter(i=>i.meta&&i.meta.title).map(i=>({title:i.meta.title,path:i.path}))),A=(v,i="")=>{const P=[];return v.forEach(n=>{n.children&&n.children.length>0?P.push(...A(n.children,n.menuName)):P.push({...n,parentTitle:i,title:n.menuName,path:n.menuUrl})}),P},I=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),h=v=>{if(!v||v==="")return"";if(v.startsWith("tineco-icon-")){const P=v.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[P]||P}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[v]||v},R=v=>v?v.charAt(0):"",k=v=>I.has(v),w=g(()=>x.value.trim()?A(O.menuList).filter(i=>i.title.toLowerCase().includes(x.value.toLowerCase())):[]),H=g(()=>p.layout),Z=()=>{p.toggleCollapse()},ee=()=>{p.toggleTheme()},ae=()=>{E.value=!0},te=v=>{p.setLayout(v),E.value=!1},ce=v=>{G.value=v;const i=document.documentElement;v?i.classList.add("grey-mode"):i.classList.remove("grey-mode")},X=()=>{ce(!G.value),E.value=!1},se=()=>{p.toggleTheme(),E.value=!1},de=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},j=()=>{D.value=!!document.fullscreenElement},oe=()=>{M.value=!M.value},Y=()=>{M.value=!1},ne=()=>{W.value=!1,x.value=""},ue=v=>{b.push(v),ne()},me=v=>{p.setPrimaryColor(v),E.value=!1},pe=()=>{Y(),b.push("/profile")},_e=()=>{Y(),b.push("/change-password")},ve=()=>{Y(),$.logout(),d.clearUserInfo(),O.clearMenu(),b.push("/login")},le=v=>{z.value&&!z.value.contains(v.target)&&Y(),q.value&&!q.value.contains(v.target)&&ne()},ie=v=>{v.key==="Escape"&&(ne(),Y())};return Me(()=>{document.addEventListener("click",le),document.addEventListener("fullscreenchange",j),document.addEventListener("keydown",ie),p.initTheme(),G.value=document.documentElement.classList.contains("grey-mode")}),Ne(()=>{document.removeEventListener("click",le),document.removeEventListener("fullscreenchange",j),document.removeEventListener("keydown",ie)}),(v,i)=>{var P;return t(),a("div",us,[e("div",ms,[e("div",{class:"header__collapse",onClick:Z},[m(o(_),{name:o(p).isCollapsed?"menu-unfold":"menu-fold",size:18},null,8,["name"])]),o(p).showBreadcrumb?(t(),a("div",ps,[(t(!0),a(U,null,V(N.value,(n,r)=>(t(),a("span",{key:n.path},[r>0?(t(),a("span",_s,"/")):y("",!0),e("span",{class:T({"is-current":r===N.value.length-1})},u(n.title),3)]))),128))])):y("",!0)]),e("div",vs,[e("div",{class:"header__search",ref_key:"searchRef",ref:q},[m(o(_),{name:"search",size:14,class:"header__search-icon"}),xe(e("input",{"onUpdate:modelValue":i[0]||(i[0]=n=>x.value=n),type:"text",class:"header__search-input",placeholder:"搜索菜单...",onFocus:i[1]||(i[1]=n=>W.value=!0)},null,544),[[Se,x.value]]),m(re,{name:"search-dropdown"},{default:L(()=>[W.value&&(w.value.length>0||x.value)?(t(),a("div",hs,[w.value.length>0?(t(),a("div",fs,[(t(!0),a(U,null,V(w.value,n=>(t(),a("div",{key:n.path,class:"header__search-item",onClick:r=>ue(n.path)},[n.title!=="首页"?(t(),a("span",ys,[k(h(n.icon))?(t(),S(o(_),{key:0,name:h(n.icon),size:16},null,8,["name"])):(t(),a("span",ks,u(R(n.title)),1))])):y("",!0),e("span",ws,u(n.title),1),n.parentTitle?(t(),a("span",bs,u(n.parentTitle),1)):y("",!0)],8,gs))),128))])):(t(),a("div",xs," 未找到匹配的菜单 "))])):y("",!0)]),_:1})],512),e("div",{class:"header__action",onClick:de,title:D.value?"退出全屏":"全屏"},[m(o(_),{name:D.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,$s),e("div",{class:"header__action",onClick:ae,title:"换肤设置"},[m(o(_),{name:"skin",size:16})]),e("div",{class:"header__action",onClick:ee,title:"切换主题"},[m(o(_),{name:o(p).isDark?"sun":"moon",size:16},null,8,["name"])]),e("div",{class:"header__user",ref_key:"dropdownRef",ref:z},[e("div",{class:"header__user-trigger",onClick:ze(oe,["stop"])},[e("div",Cs,[e("span",null,u(((P=o(d).userName)==null?void 0:P.charAt(0))||"U"),1)]),e("span",Ls,u(o(d).userName),1),e("span",{class:T(["header__user-arrow",{"is-active":M.value}])},"▼",2)]),m(re,{name:"dropdown"},{default:L(()=>{var n;return[M.value?(t(),a("div",Ms,[e("div",Ns,[e("div",Ss,[e("span",null,u(((n=o(d).userName)==null?void 0:n.charAt(0))||"U"),1)]),e("div",zs,[e("div",Us,u(o(d).userName),1),e("div",Es,u(o(d).departmentName),1)])]),i[7]||(i[7]=e("div",{class:"header__dropdown-divider"},null,-1)),e("div",Ts,[e("div",{class:"header__dropdown-item",onClick:pe},[m(o(_),{name:"user",size:16}),i[3]||(i[3]=e("span",null,"个人信息",-1))]),e("div",{class:"header__dropdown-item",onClick:_e},[m(o(_),{name:"lock",size:16}),i[4]||(i[4]=e("span",null,"修改密码",-1))]),i[6]||(i[6]=e("div",{class:"header__dropdown-divider"},null,-1)),e("div",{class:"header__dropdown-item header__dropdown-item--danger",onClick:ve},[m(o(_),{name:"logout",size:16}),i[5]||(i[5]=e("span",null,"退出登录",-1))])])])):y("",!0)]}),_:1})],512)]),m(o(Te),{modelValue:E.value,"onUpdate:modelValue":i[2]||(i[2]=n=>E.value=n),title:"换肤设置",direction:"rtl",size:"320px"},{default:L(()=>[e("div",Is,[e("div",Ds,[i[11]||(i[11]=e("div",{class:"settings-title"},"布局模式",-1)),e("div",Vs,[(t(),a(U,null,V(J,n=>e("div",{key:n.value,class:T(["layout-option",{"is-active":H.value===n.value}]),onClick:r=>te(n.value)},[e("div",As,[n.value==="sidebar"?(t(),a("div",Rs,[...i[8]||(i[8]=[e("div",{class:"preview-aside"},null,-1),e("div",{class:"preview-main"},[e("div",{class:"preview-header"}),e("div",{class:"preview-content"})],-1)])])):n.value==="top"?(t(),a("div",Ps,[...i[9]||(i[9]=[e("div",{class:"preview-header-full"},null,-1),e("div",{class:"preview-content-full"},null,-1)])])):(t(),a("div",Bs,[...i[10]||(i[10]=[e("div",{class:"preview-header-mix"},[e("div",{class:"preview-mix-left"})],-1),e("div",{class:"preview-mix-body"},[e("div",{class:"preview-mix-aside"}),e("div",{class:"preview-mix-content"})],-1)])]))]),e("span",Os,u(n.label),1)],10,Fs)),64))])]),e("div",qs,[i[12]||(i[12]=e("div",{class:"settings-title"},"主题色",-1)),e("div",Gs,[(t(),a(U,null,V(F,n=>e("div",{key:n.value,class:T(["color-option",{"is-active":o(p).primaryColor===n.value}]),style:he({backgroundColor:n.value}),title:n.label,onClick:r=>me(n.value)},[o(p).primaryColor===n.value?(t(),S(o(_),{key:0,name:"check",size:12,color:"#fff"})):y("",!0)],14,Ks)),64))])]),e("div",Ws,[i[17]||(i[17]=e("div",{class:"settings-title"},"功能设置",-1)),e("div",Hs,[e("div",js,[i[14]||(i[14]=e("span",null,"灰色模式",-1)),e("div",{class:T(["switch-wrapper",{"is-checked":G.value}]),onClick:X},[...i[13]||(i[13]=[e("span",{class:"switch-core"},null,-1)])],2)]),e("div",Qs,[i[16]||(i[16]=e("span",null,"暗黑模式",-1)),e("div",{class:T(["switch-wrapper",{"is-checked":o(p).isDark}]),onClick:se},[...i[15]||(i[15]=[e("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),Xs=we(Js,[["__scopeId","data-v-916fcfad"]]),Ys={class:"top-menu"},Zs={class:"top-menu__logo"},et={class:"top-menu__logo-text"},st={class:"top-menu__menu-content"},tt={key:0,class:"top-menu__menu-icon"},ot={key:1,class:"top-menu__menu-char"},nt={class:"top-menu__menu-text"},at={class:"top-menu__menu-content"},lt={class:"top-menu__menu-icon"},it={key:1,class:"top-menu__menu-char"},rt={class:"top-menu__menu-text"},ct={class:"top-menu__menu-content"},dt={key:0,class:"top-menu__menu-icon"},ut={key:1,class:"top-menu__menu-char"},mt={class:"top-menu__menu-text"},pt={class:"top-menu__actions"},_t={key:0,class:"top-menu__search-dropdown"},vt={key:0,class:"top-menu__search-results"},ht=["onClick"],ft={key:0,class:"top-menu__search-icon-item"},gt={key:1,class:"top-menu__search-char"},yt={class:"top-menu__search-item-title"},kt={key:1,class:"top-menu__search-item-parent"},wt={key:1,class:"top-menu__search-empty"},bt=["title"],xt={class:"top-menu__avatar"},$t={class:"top-menu__user-name"},Ct={key:0,class:"top-menu__dropdown"},Lt={class:"top-menu__dropdown-header"},Mt={class:"top-menu__dropdown-avatar"},Nt={class:"top-menu__dropdown-info"},St={class:"top-menu__dropdown-name"},zt={class:"top-menu__dropdown-role"},Ut={class:"top-menu__dropdown-menu"},Et={class:"settings-drawer"},Tt={class:"settings-section"},It={class:"settings-layout-options"},Dt=["onClick"],Vt={class:"layout-option__preview"},Ft={key:0,class:"layout-preview-sidebar"},At={key:1,class:"layout-preview-top"},Rt={key:2,class:"layout-preview-mix"},Pt={class:"layout-option__label"},Bt={class:"settings-section"},Ot={class:"settings-color-options"},qt=["title","onClick"],Gt={class:"settings-section"},Kt={class:"settings-switch-list"},Wt={class:"settings-switch-item"},Ht={class:"settings-switch-item"},jt=ke({__name:"TopMenu",setup(Q){const C=$e(),b=Ce(),p=ge(),d=ye(),$=be(),O=Le(),M=g(()=>C.path),E=(n,r="")=>{const K=[];return n.forEach(s=>{s.children&&s.children.length>0?K.push(...E(s.children,s.menuName)):K.push({...s,parentTitle:r,title:s.menuName,path:s.menuUrl})}),K},z=g(()=>I.value.trim()?E(p.menuList).filter(r=>r.title.toLowerCase().includes(I.value.toLowerCase())):[]),D=g(()=>d.isDark?"#1d1e1f":"#fff"),W=g(()=>d.isDark?"#cfd3dc":"#303133"),x=g(()=>"#409eff"),q=f(!1),G=f(null),J=f(!1),F=f(!1),N=f(!1),A=f(!1),I=f(""),h=f(null),R=n=>{n&&n!==C.path&&b.push(n)},k=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),w=n=>{if(!n||n==="")return"";if(n.startsWith("tineco-icon-")){const K=n.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[K]||K}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[n]||n},H=n=>n?n.charAt(0):"",Z=n=>k.has(n),ee=()=>{d.toggleTheme(),F.value=!1},ae=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},te=()=>{J.value=!!document.fullscreenElement},ce=()=>{q.value=!q.value},X=()=>{q.value=!1},se=()=>{A.value=!1,I.value=""},de=n=>{b.push(n),se()},j=()=>{F.value=!0},oe=n=>{N.value=n;const r=document.documentElement;n?r.classList.add("grey-mode"):r.classList.remove("grey-mode")},Y=()=>{oe(!N.value),F.value=!1},ne=()=>{d.toggleTheme(),F.value=!1},ue=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],me=g(()=>d.layout),pe=n=>{d.setLayout(n),F.value=!1},_e=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],ve=n=>{d.setPrimaryColor(n),F.value=!1},le=()=>{X(),b.push("/profile")},ie=()=>{X(),b.push("/change-password")},v=()=>{X(),O.logout(),$.clearUserInfo(),p.clearMenu(),b.push("/login")},i=n=>{G.value&&!G.value.contains(n.target)&&X(),h.value&&!h.value.contains(n.target)&&se()},P=n=>{n.key==="Escape"&&(se(),X())};return Me(()=>{document.addEventListener("click",i),document.addEventListener("fullscreenchange",te),document.addEventListener("keydown",P),N.value=document.documentElement.classList.contains("grey-mode")}),Ne(()=>{document.removeEventListener("click",i),document.removeEventListener("fullscreenchange",te),document.removeEventListener("keydown",P)}),(n,r)=>{var K;return t(),a("div",Ys,[e("div",Zs,[r[3]||(r[3]=e("img",{src:Ue,alt:"Logo",class:"top-menu__logo-img"},null,-1)),e("span",et,u(o(d).appName),1)]),m(o(Ee),{"model-value":M.value,mode:"horizontal","background-color":D.value,"text-color":W.value,"active-text-color":x.value,class:"top-menu__menu",onSelect:R},{default:L(()=>[(t(!0),a(U,null,V(o(p).menuList,s=>(t(),a(U,{key:s.menuUrl},[s.children&&s.children.length>0?(t(),S(o(Fe),{key:0,index:s.menuUrl},{title:L(()=>[e("span",st,[s.menuName!=="首页"?(t(),a("span",tt,[Z(w(s.icon))?(t(),S(o(_),{key:0,name:w(s.icon),size:16},null,8,["name"])):(t(),a("span",ot,u(H(s.menuName)),1))])):y("",!0),e("span",nt,u(s.menuName),1)])]),default:L(()=>[(t(!0),a(U,null,V(s.children,l=>(t(),S(o(fe),{key:l.menuUrl,index:l.menuUrl},{default:L(()=>[e("span",at,[e("span",lt,[Z(w(l.icon))?(t(),S(o(_),{key:0,name:w(l.icon),size:16},null,8,["name"])):(t(),a("span",it,u(H(l.menuName)),1))]),e("span",rt,u(l.menuName),1)])]),_:2},1032,["index"]))),128))]),_:2},1032,["index"])):(t(),S(o(fe),{key:1,index:s.menuUrl},{default:L(()=>[e("span",ct,[s.menuName!=="首页"?(t(),a("span",dt,[Z(w(s.icon))?(t(),S(o(_),{key:0,name:w(s.icon),size:16},null,8,["name"])):(t(),a("span",ut,u(H(s.menuName)),1))])):y("",!0),e("span",mt,u(s.menuName),1)])]),_:2},1032,["index"]))],64))),128))]),_:1},8,["model-value","background-color","text-color","active-text-color"]),e("div",pt,[e("div",{class:"top-menu__search",ref_key:"searchRef",ref:h},[m(o(_),{name:"search",size:14,class:"top-menu__search-icon"}),xe(e("input",{"onUpdate:modelValue":r[0]||(r[0]=s=>I.value=s),type:"text",class:"top-menu__search-input",placeholder:"搜索菜单...",onFocus:r[1]||(r[1]=s=>A.value=!0)},null,544),[[Se,I.value]]),m(re,{name:"search-dropdown"},{default:L(()=>[A.value&&(z.value.length>0||I.value)?(t(),a("div",_t,[z.value.length>0?(t(),a("div",vt,[(t(!0),a(U,null,V(z.value,s=>(t(),a("div",{key:s.path,class:"top-menu__search-item",onClick:l=>de(s.path)},[s.title!=="首页"?(t(),a("span",ft,[Z(w(s.icon))?(t(),S(o(_),{key:0,name:w(s.icon),size:16},null,8,["name"])):(t(),a("span",gt,u(H(s.title)),1))])):y("",!0),e("span",yt,u(s.title),1),s.parentTitle?(t(),a("span",kt,u(s.parentTitle),1)):y("",!0)],8,ht))),128))])):(t(),a("div",wt," 未找到匹配的菜单 "))])):y("",!0)]),_:1})],512),e("div",{class:"top-menu__action",onClick:ae,title:J.value?"退出全屏":"全屏"},[m(o(_),{name:J.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,bt),e("div",{class:"top-menu__action",onClick:j,title:"换肤设置"},[m(o(_),{name:"skin",size:16})]),e("div",{class:"top-menu__action",onClick:ee,title:"切换主题"},[m(o(_),{name:o(d).isDark?"sun":"moon",size:16},null,8,["name"])]),e("div",{class:"top-menu__user",ref_key:"dropdownRef",ref:G},[e("div",{class:"top-menu__user-trigger",onClick:ze(ce,["stop"])},[e("div",xt,[e("span",null,u(((K=o($).userName)==null?void 0:K.charAt(0))||"U"),1)]),e("span",$t,u(o($).userName),1),e("span",{class:T(["top-menu__user-arrow",{"is-active":q.value}])},"▼",2)]),m(re,{name:"dropdown"},{default:L(()=>{var s;return[q.value?(t(),a("div",Ct,[e("div",Lt,[e("div",Mt,[e("span",null,u(((s=o($).userName)==null?void 0:s.charAt(0))||"U"),1)]),e("div",Nt,[e("div",St,u(o($).userName),1),e("div",zt,u(o($).departmentName),1)])]),r[8]||(r[8]=e("div",{class:"top-menu__dropdown-divider"},null,-1)),e("div",Ut,[e("div",{class:"top-menu__dropdown-item",onClick:le},[m(o(_),{name:"user",size:16}),r[4]||(r[4]=e("span",null,"个人信息",-1))]),e("div",{class:"top-menu__dropdown-item",onClick:ie},[m(o(_),{name:"lock",size:16}),r[5]||(r[5]=e("span",null,"修改密码",-1))]),r[7]||(r[7]=e("div",{class:"top-menu__dropdown-divider"},null,-1)),e("div",{class:"top-menu__dropdown-item top-menu__dropdown-item--danger",onClick:v},[m(o(_),{name:"logout",size:16}),r[6]||(r[6]=e("span",null,"退出登录",-1))])])])):y("",!0)]}),_:1})],512)]),m(o(Te),{modelValue:F.value,"onUpdate:modelValue":r[2]||(r[2]=s=>F.value=s),title:"换肤设置",direction:"rtl",size:"320px"},{default:L(()=>[e("div",Et,[e("div",Tt,[r[12]||(r[12]=e("div",{class:"settings-title"},"布局模式",-1)),e("div",It,[(t(),a(U,null,V(ue,s=>e("div",{key:s.value,class:T(["layout-option",{"is-active":me.value===s.value}]),onClick:l=>pe(s.value)},[e("div",Vt,[s.value==="sidebar"?(t(),a("div",Ft,[...r[9]||(r[9]=[e("div",{class:"preview-aside"},null,-1),e("div",{class:"preview-main"},[e("div",{class:"preview-header"}),e("div",{class:"preview-content"})],-1)])])):s.value==="top"?(t(),a("div",At,[...r[10]||(r[10]=[e("div",{class:"preview-header-full"},null,-1),e("div",{class:"preview-content-full"},null,-1)])])):(t(),a("div",Rt,[...r[11]||(r[11]=[e("div",{class:"preview-header-mix"},[e("div",{class:"preview-mix-left"})],-1),e("div",{class:"preview-mix-body"},[e("div",{class:"preview-mix-aside"}),e("div",{class:"preview-mix-content"})],-1)])]))]),e("span",Pt,u(s.label),1)],10,Dt)),64))])]),e("div",Bt,[r[13]||(r[13]=e("div",{class:"settings-title"},"主题色",-1)),e("div",Ot,[(t(),a(U,null,V(_e,s=>e("div",{key:s.value,class:T(["color-option",{"is-active":o(d).primaryColor===s.value}]),style:he({backgroundColor:s.value}),title:s.label,onClick:l=>ve(s.value)},[o(d).primaryColor===s.value?(t(),S(o(_),{key:0,name:"check",size:12,color:"#fff"})):y("",!0)],14,qt)),64))])]),e("div",Gt,[r[18]||(r[18]=e("div",{class:"settings-title"},"功能设置",-1)),e("div",Kt,[e("div",Wt,[r[15]||(r[15]=e("span",null,"灰色模式",-1)),e("div",{class:T(["switch-wrapper",{"is-checked":N.value}]),onClick:Y},[...r[14]||(r[14]=[e("span",{class:"switch-core"},null,-1)])],2)]),e("div",Ht,[r[17]||(r[17]=e("span",null,"暗黑模式",-1)),e("div",{class:T(["switch-wrapper",{"is-checked":o(d).isDark}]),onClick:ne},[...r[16]||(r[16]=[e("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),Qt=we(jt,[["__scopeId","data-v-ff5f8764"]]),Jt={class:"mix-top-menu"},Xt={class:"mix-top-menu__logo"},Yt={class:"mix-top-menu__logo-text"},Zt={class:"mix-top-menu__menu-content"},eo={key:0,class:"mix-top-menu__menu-icon"},so={key:1,class:"mix-top-menu__menu-char"},to={class:"mix-top-menu__menu-text"},oo={class:"mix-top-menu__actions"},no={key:0,class:"mix-top-menu__search-dropdown"},ao={key:0,class:"mix-top-menu__search-results"},lo=["onClick"],io={key:0,class:"mix-top-menu__search-icon-item"},ro={key:1,class:"mix-top-menu__search-char"},co={class:"mix-top-menu__search-item-title"},uo={key:1,class:"mix-top-menu__search-item-parent"},mo={key:1,class:"mix-top-menu__search-empty"},po=["title"],_o={class:"mix-top-menu__avatar"},vo={class:"mix-top-menu__user-name"},ho={key:0,class:"mix-top-menu__dropdown"},fo={class:"mix-top-menu__dropdown-header"},go={class:"mix-top-menu__dropdown-avatar"},yo={class:"mix-top-menu__dropdown-info"},ko={class:"mix-top-menu__dropdown-name"},wo={class:"mix-top-menu__dropdown-role"},bo={class:"mix-top-menu__dropdown-menu"},xo={class:"settings-drawer"},$o={class:"settings-section"},Co={class:"settings-layout-options"},Lo=["onClick"],Mo={class:"layout-option__preview"},No={key:0,class:"layout-preview-sidebar"},So={key:1,class:"layout-preview-top"},zo={key:2,class:"layout-preview-mix"},Uo={class:"layout-option__label"},Eo={class:"settings-section"},To={class:"settings-color-options"},Io=["title","onClick"],Do={class:"settings-section"},Vo={class:"settings-switch-list"},Fo={class:"settings-switch-item"},Ao={class:"settings-switch-item"},Ro=ke({__name:"MixTopMenu",setup(Q){const C=$e(),b=Ce(),p=ge(),d=ye(),$=be(),O=Le(),M=f(""),E=(s,l="")=>{const B=[];return s.forEach(c=>{c.children&&c.children.length>0?B.push(...E(c.children,c.menuName)):B.push({...c,parentTitle:l,title:c.menuName,path:c.menuUrl})}),B},z=g(()=>w.value.trim()?E(p.menuList).filter(l=>l.title.toLowerCase().includes(w.value.toLowerCase())):[]),D=g(()=>{const s=p.menuList.find(l=>l.menuUrl===M.value);return(s==null?void 0:s.children)||[]}),W=g(()=>p.menuList.find(s=>!!(C.path===s.menuUrl||s.children&&s.children.some(l=>C.path.startsWith(l.menuUrl)||C.path===l.menuUrl)))),x=()=>{W.value?M.value=W.value.menuUrl:p.menuList.length>0&&(M.value=p.menuList[0].menuUrl)},q=s=>{M.value=s;const l=p.menuList.find(B=>B.menuUrl===s);if(l)if(l.children&&l.children.length>0){const B=l.children[0].menuUrl;C.path!==B&&b.push(B)}else C.path!==s&&b.push(s)},G=g(()=>d.isDark?"#1d1e1f":"#fff"),J=g(()=>d.isDark?"#cfd3dc":"#303133"),F=g(()=>"#409eff"),N=f(!1),A=f(null),I=f(!1),h=f(!1),R=f(!1),k=f(!1),w=f(""),H=f(null);De(()=>C.path,()=>{x(),d.setMixSubMenus(D.value)}),De(()=>p.menuList,s=>{s&&s.length>0&&(x(),d.setMixSubMenus(D.value))},{immediate:!0});const Z=new Set(["arrow-up","arrow-down","arrow-left","arrow-right","caret-down","caret-right","plus","minus","close","check","edit","delete","copy","download","upload","refresh","search","filter","more","setting","share","loading","info","success","warning","error","question","user","user-add","user-group","logout","login","file","folder","folder-open","document","image","video","music","camera","mail","phone","chat","bell","message","eye","eye-off","calendar","clock","history","timer","location","map","globe","star","heart","thumb-up","link","external-link","lock","unlock","key","home","menu","menu-fold","menu-unfold","sidebar-fold","sidebar-expand","sidebar-left","dashboard","chart","chart-pie","chart-line","report","analytics","system","permission","role","user-manage","log","notification","app","list","grid","fullscreen","fullscreen-exit","zoom-in","zoom-out","print","bookmark","tag","code","terminal","database","server","cloud","gift","moon","sun","theme","skin"]),ee=s=>{if(!s||s==="")return"";if(s.startsWith("tineco-icon-")){const B=s.replace("tineco-icon-","");return{home:"home",dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",file:"file",folder:"folder",chart:"chart",report:"report",analytics:"analytics"}[B]||B}return{dashboard:"dashboard",system:"system",user:"user",role:"role",menu:"list",setting:"setting",home:"home",chart:"chart",report:"report",analytics:"analytics",permission:"permission",log:"log",notification:"notification",app:"app",list:"list",grid:"grid"}[s]||s},ae=s=>s?s.charAt(0):"",te=s=>Z.has(s),ce=()=>{d.toggleTheme(),h.value=!1},X=()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()},se=()=>{I.value=!!document.fullscreenElement},de=()=>{N.value=!N.value},j=()=>{N.value=!1},oe=()=>{k.value=!1,w.value=""},Y=s=>{b.push(s),oe()},ne=()=>{h.value=!0},ue=s=>{R.value=s;const l=document.documentElement;s?l.classList.add("grey-mode"):l.classList.remove("grey-mode")},me=()=>{ue(!R.value),h.value=!1},pe=()=>{d.toggleTheme(),h.value=!1},_e=[{value:"sidebar",label:"左侧菜单",icon:"sidebar-left"},{value:"top",label:"顶部菜单",icon:"menu"},{value:"mix",label:"混合菜单",icon:"grid"}],ve=g(()=>d.layout),le=s=>{d.setLayout(s),h.value=!1},ie=[{value:"#409eff",label:"默认蓝"},{value:"#1890ff",label:"科技蓝"},{value:"#52c41a",label:"极光绿"},{value:"#faad14",label:"日落橙"},{value:"#f5222d",label:"薄暮红"},{value:"#722ed1",label:"酱紫"}],v=s=>{d.setPrimaryColor(s),h.value=!1},i=()=>{j(),b.push("/profile")},P=()=>{j(),b.push("/change-password")},n=()=>{j(),O.logout(),$.clearUserInfo(),p.clearMenu(),b.push("/login")},r=s=>{A.value&&!A.value.contains(s.target)&&j(),H.value&&!H.value.contains(s.target)&&oe()},K=s=>{s.key==="Escape"&&(oe(),j())};return Me(()=>{document.addEventListener("click",r),document.addEventListener("fullscreenchange",se),document.addEventListener("keydown",K),R.value=document.documentElement.classList.contains("grey-mode"),x()}),Ne(()=>{document.removeEventListener("click",r),document.removeEventListener("fullscreenchange",se),document.removeEventListener("keydown",K)}),(s,l)=>{var B;return t(),a("div",Jt,[e("div",Xt,[l[3]||(l[3]=e("img",{src:Ue,alt:"Logo",class:"mix-top-menu__logo-img"},null,-1)),e("span",Yt,u(o(d).appName),1)]),m(o(Ee),{"model-value":M.value,mode:"horizontal","background-color":G.value,"text-color":J.value,"active-text-color":F.value,class:"mix-top-menu__menu",onSelect:q},{default:L(()=>[(t(!0),a(U,null,V(o(p).menuList,c=>(t(),S(o(fe),{key:c.menuUrl,index:c.menuUrl},{default:L(()=>[e("span",Zt,[c.menuName!=="首页"?(t(),a("span",eo,[te(ee(c.icon))?(t(),S(o(_),{key:0,name:ee(c.icon),size:16},null,8,["name"])):(t(),a("span",so,u(ae(c.menuName)),1))])):y("",!0),e("span",to,u(c.menuName),1)])]),_:2},1032,["index"]))),128))]),_:1},8,["model-value","background-color","text-color","active-text-color"]),e("div",oo,[e("div",{class:"mix-top-menu__search",ref_key:"searchRef",ref:H},[m(o(_),{name:"search",size:14,class:"mix-top-menu__search-icon"}),xe(e("input",{"onUpdate:modelValue":l[0]||(l[0]=c=>w.value=c),type:"text",class:"mix-top-menu__search-input",placeholder:"搜索菜单...",onFocus:l[1]||(l[1]=c=>k.value=!0)},null,544),[[Se,w.value]]),m(re,{name:"search-dropdown"},{default:L(()=>[k.value&&(z.value.length>0||w.value)?(t(),a("div",no,[z.value.length>0?(t(),a("div",ao,[(t(!0),a(U,null,V(z.value,c=>(t(),a("div",{key:c.path,class:"mix-top-menu__search-item",onClick:Ie=>Y(c.path)},[c.title!=="首页"?(t(),a("span",io,[te(ee(c.icon))?(t(),S(o(_),{key:0,name:ee(c.icon),size:16},null,8,["name"])):(t(),a("span",ro,u(ae(c.title)),1))])):y("",!0),e("span",co,u(c.title),1),c.parentTitle?(t(),a("span",uo,u(c.parentTitle),1)):y("",!0)],8,lo))),128))])):(t(),a("div",mo," 未找到匹配的菜单 "))])):y("",!0)]),_:1})],512),e("div",{class:"mix-top-menu__action",onClick:X,title:I.value?"退出全屏":"全屏"},[m(o(_),{name:I.value?"fullscreen-exit":"fullscreen",size:16},null,8,["name"])],8,po),e("div",{class:"mix-top-menu__action",onClick:ne,title:"换肤设置"},[m(o(_),{name:"skin",size:16})]),e("div",{class:"mix-top-menu__action",onClick:ce,title:"切换主题"},[m(o(_),{name:o(d).isDark?"sun":"moon",size:16},null,8,["name"])]),e("div",{class:"mix-top-menu__user",ref_key:"dropdownRef",ref:A},[e("div",{class:"mix-top-menu__user-trigger",onClick:ze(de,["stop"])},[e("div",_o,[e("span",null,u(((B=o($).userName)==null?void 0:B.charAt(0))||"U"),1)]),e("span",vo,u(o($).userName),1),e("span",{class:T(["mix-top-menu__user-arrow",{"is-active":N.value}])},"▼",2)]),m(re,{name:"dropdown"},{default:L(()=>{var c;return[N.value?(t(),a("div",ho,[e("div",fo,[e("div",go,[e("span",null,u(((c=o($).userName)==null?void 0:c.charAt(0))||"U"),1)]),e("div",yo,[e("div",ko,u(o($).userName),1),e("div",wo,u(o($).departmentName),1)])]),l[8]||(l[8]=e("div",{class:"mix-top-menu__dropdown-divider"},null,-1)),e("div",bo,[e("div",{class:"mix-top-menu__dropdown-item",onClick:i},[m(o(_),{name:"user",size:16}),l[4]||(l[4]=e("span",null,"个人信息",-1))]),e("div",{class:"mix-top-menu__dropdown-item",onClick:P},[m(o(_),{name:"lock",size:16}),l[5]||(l[5]=e("span",null,"修改密码",-1))]),l[7]||(l[7]=e("div",{class:"mix-top-menu__dropdown-divider"},null,-1)),e("div",{class:"mix-top-menu__dropdown-item mix-top-menu__dropdown-item--danger",onClick:n},[m(o(_),{name:"logout",size:16}),l[6]||(l[6]=e("span",null,"退出登录",-1))])])])):y("",!0)]}),_:1})],512)]),m(o(Te),{modelValue:h.value,"onUpdate:modelValue":l[2]||(l[2]=c=>h.value=c),title:"换肤设置",direction:"rtl",size:"320px"},{default:L(()=>[e("div",xo,[e("div",$o,[l[12]||(l[12]=e("div",{class:"settings-title"},"布局模式",-1)),e("div",Co,[(t(),a(U,null,V(_e,c=>e("div",{key:c.value,class:T(["layout-option",{"is-active":ve.value===c.value}]),onClick:Ie=>le(c.value)},[e("div",Mo,[c.value==="sidebar"?(t(),a("div",No,[...l[9]||(l[9]=[e("div",{class:"preview-aside"},null,-1),e("div",{class:"preview-main"},[e("div",{class:"preview-header"}),e("div",{class:"preview-content"})],-1)])])):c.value==="top"?(t(),a("div",So,[...l[10]||(l[10]=[e("div",{class:"preview-header-full"},null,-1),e("div",{class:"preview-content-full"},null,-1)])])):(t(),a("div",zo,[...l[11]||(l[11]=[e("div",{class:"preview-header-mix"},[e("div",{class:"preview-mix-left"})],-1),e("div",{class:"preview-mix-body"},[e("div",{class:"preview-mix-aside"}),e("div",{class:"preview-mix-content"})],-1)])]))]),e("span",Uo,u(c.label),1)],10,Lo)),64))])]),e("div",Eo,[l[13]||(l[13]=e("div",{class:"settings-title"},"主题色",-1)),e("div",To,[(t(),a(U,null,V(ie,c=>e("div",{key:c.value,class:T(["color-option",{"is-active":o(d).primaryColor===c.value}]),style:he({backgroundColor:c.value}),title:c.label,onClick:Ie=>v(c.value)},[o(d).primaryColor===c.value?(t(),S(o(_),{key:0,name:"check",size:12,color:"#fff"})):y("",!0)],14,Io)),64))])]),e("div",Do,[l[18]||(l[18]=e("div",{class:"settings-title"},"功能设置",-1)),e("div",Vo,[e("div",Fo,[l[15]||(l[15]=e("span",null,"灰色模式",-1)),e("div",{class:T(["switch-wrapper",{"is-checked":R.value}]),onClick:me},[...l[14]||(l[14]=[e("span",{class:"switch-core"},null,-1)])],2)]),e("div",Ao,[l[17]||(l[17]=e("span",null,"暗黑模式",-1)),e("div",{class:T(["switch-wrapper",{"is-checked":o(d).isDark}]),onClick:pe},[...l[16]||(l[16]=[e("span",{class:"switch-core"},null,-1)])],2)])])])])]),_:1},8,["modelValue"])])}}}),Po=we(Ro,[["__scopeId","data-v-25806305"]]),Bo={key:0,class:"layout layout--sidebar"},Oo={class:"layout__main"},qo={class:"layout__header"},Go={class:"layout__content"},Ko={key:1,class:"layout layout--top"},Wo={class:"layout__top-menu"},Ho={class:"layout__main"},jo={class:"layout__content"},Qo={key:2,class:"layout layout--mix"},Jo={class:"layout__mix-top-menu"},Xo={class:"layout__mix-body"},Yo={class:"layout__content"},Zo=ke({__name:"index",setup(Q){const C=ye(),b=ge(),p=g(()=>C.isCollapsed?"64px":"210px"),d=g(()=>C.layout),$=g(()=>d.value==="mix"),O=g(()=>d.value==="sidebar"?b.menuList:d.value==="mix"?C.mixSubMenus:[]),M=g(()=>$.value?O.value.length>0:!1);return(E,z)=>{const D=Ke("router-view");return t(),a(U,null,[d.value==="sidebar"?(t(),a("div",Bo,[e("aside",{class:"layout__aside",style:he({width:p.value})},[m(Ve,{"menu-list":O.value,"show-logo":!0,"show-user":!0},null,8,["menu-list"])],4),e("div",Oo,[e("header",qo,[m(Xs)]),e("main",Go,[m(D)])])])):y("",!0),d.value==="top"?(t(),a("div",Ko,[e("div",Wo,[m(Qt)]),e("div",Ho,[e("main",jo,[m(D)])])])):y("",!0),d.value==="mix"?(t(),a("div",Qo,[e("div",Jo,[m(Po)]),e("div",Xo,[M.value?(t(),a("aside",{key:0,class:"layout__aside",style:he({width:p.value})},[m(Ve,{"menu-list":O.value,"show-logo":!1,"show-user":!1},null,8,["menu-list"])],4)):y("",!0),e("main",Yo,[m(D)])])])):y("",!0)],64)}}}),pn=we(Zo,[["__scopeId","data-v-70b115a5"]]);export{pn as default};