smart-admin-web 10.14.0 → 10.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/README.md +5 -5
  2. package/dist/api/index.d.ts +37 -0
  3. package/dist/api/index.js +35 -14
  4. package/dist/api/index.js.map +1 -1
  5. package/dist/api/schema.d.ts +381 -3
  6. package/dist/assets/icons/ph-subset.json.js +3 -3
  7. package/dist/assets/smart-logo.svg.js +5 -0
  8. package/dist/assets/smart-logo.svg.js.map +1 -0
  9. package/dist/components/SmartLogo.vue.d.ts +3 -0
  10. package/dist/components/SmartLogo.vue.js +1 -1
  11. package/dist/components/SmartLogo2.vue.js +22 -64
  12. package/dist/components/SmartLogo2.vue.js.map +1 -1
  13. package/dist/composables/useLoginHero.d.ts +2 -0
  14. package/dist/composables/useLoginHero.js +22 -0
  15. package/dist/composables/useLoginHero.js.map +1 -0
  16. package/dist/composables/usePageTitle.js +16 -14
  17. package/dist/composables/usePageTitle.js.map +1 -1
  18. package/dist/composables/useSite.d.ts +5 -0
  19. package/dist/composables/useSite.js +16 -13
  20. package/dist/composables/useSite.js.map +1 -1
  21. package/dist/index.js +92 -91
  22. package/dist/lib/favicon.d.ts +1 -0
  23. package/dist/lib/favicon.js +12 -0
  24. package/dist/lib/favicon.js.map +1 -0
  25. package/dist/lib/loginHero.d.ts +16 -0
  26. package/dist/lib/loginHero.js +33 -0
  27. package/dist/lib/loginHero.js.map +1 -0
  28. package/dist/lib/logoCrop.d.ts +25 -0
  29. package/dist/lib/logoCrop.js +22 -0
  30. package/dist/lib/logoCrop.js.map +1 -0
  31. package/dist/lib/runtime.d.ts +2 -0
  32. package/dist/lib/runtime.js +1 -1
  33. package/dist/lib/runtime.js.map +1 -1
  34. package/dist/lib/securityRules.d.ts +26 -0
  35. package/dist/lib/securityRules.js +86 -0
  36. package/dist/lib/securityRules.js.map +1 -0
  37. package/dist/locales/en-US.d.ts +242 -28
  38. package/dist/locales/en-US.js +262 -58
  39. package/dist/locales/en-US.js.map +1 -1
  40. package/dist/locales/zh-CN.d.ts +242 -28
  41. package/dist/locales/zh-CN.js +257 -58
  42. package/dist/locales/zh-CN.js.map +1 -1
  43. package/dist/router/viewRegistry.js +10 -10
  44. package/dist/router/viewRegistry.js.map +1 -1
  45. package/dist/style.css +1 -1
  46. package/dist/utils/oauthBrand.d.ts +34 -9
  47. package/dist/utils/oauthBrand.js +70 -74
  48. package/dist/utils/oauthBrand.js.map +1 -1
  49. package/dist/views/login/components/LoginHeroPanel.vue.d.ts +18 -0
  50. package/dist/views/login/components/LoginHeroPanel.vue.js +8 -0
  51. package/dist/views/login/components/LoginHeroPanel.vue.js.map +1 -0
  52. package/dist/views/login/components/LoginHeroPanel2.vue.js +66 -0
  53. package/dist/views/login/components/LoginHeroPanel2.vue.js.map +1 -0
  54. package/dist/views/login/skins/SplitPanel.vue.js +1 -1
  55. package/dist/views/login/skins/SplitPanel2.vue.js +39 -59
  56. package/dist/views/login/skins/SplitPanel2.vue.js.map +1 -1
  57. package/dist/views/system/config/components/AdminMock.vue.js +8 -0
  58. package/dist/views/system/config/components/AdminMock.vue.js.map +1 -0
  59. package/dist/views/system/config/components/AdminMock2.vue.js +76 -0
  60. package/dist/views/system/config/components/AdminMock2.vue.js.map +1 -0
  61. package/dist/views/system/config/components/AdvancedSection.vue.js +5 -0
  62. package/dist/views/system/config/components/AdvancedSection.vue.js.map +1 -0
  63. package/dist/views/system/config/components/AdvancedSection2.vue.js +135 -0
  64. package/dist/views/system/config/components/AdvancedSection2.vue.js.map +1 -0
  65. package/dist/views/system/config/components/BrandSection.vue.d.ts +7 -0
  66. package/dist/views/system/config/components/BrandSection.vue.js +8 -0
  67. package/dist/views/system/config/components/BrandSection.vue.js.map +1 -0
  68. package/dist/views/system/config/components/BrandSection2.vue.js +264 -0
  69. package/dist/views/system/config/components/BrandSection2.vue.js.map +1 -0
  70. package/dist/views/system/config/components/CfgGroup.vue.d.ts +18 -0
  71. package/dist/views/system/config/components/CfgGroup.vue.js +8 -0
  72. package/dist/views/system/config/components/CfgGroup.vue.js.map +1 -0
  73. package/dist/views/system/config/components/CfgGroup2.vue.js +22 -0
  74. package/dist/views/system/config/components/CfgGroup2.vue.js.map +1 -0
  75. package/dist/views/system/config/components/CfgRow.vue.d.ts +26 -0
  76. package/dist/views/system/config/components/CfgRow.vue.js +9 -0
  77. package/dist/views/system/config/components/CfgRow.vue.js.map +1 -0
  78. package/dist/views/system/config/components/CfgRow2.vue.js +53 -0
  79. package/dist/views/system/config/components/CfgRow2.vue.js.map +1 -0
  80. package/dist/views/system/config/components/CfgSegment.vue.d.ts +28 -0
  81. package/dist/views/system/config/components/CfgSegment.vue.js +8 -0
  82. package/dist/views/system/config/components/CfgSegment.vue.js.map +1 -0
  83. package/dist/views/system/config/components/CfgSegment2.vue.js +44 -0
  84. package/dist/views/system/config/components/CfgSegment2.vue.js.map +1 -0
  85. package/dist/views/system/config/components/ConfigFormModal.vue.js +5 -2
  86. package/dist/views/system/config/components/ConfigFormModal.vue.js.map +1 -1
  87. package/dist/views/system/config/components/ConfigFormModal2.vue.js +66 -56
  88. package/dist/views/system/config/components/ConfigFormModal2.vue.js.map +1 -1
  89. package/dist/views/system/config/components/JobSection.vue.js +8 -0
  90. package/dist/views/system/config/components/JobSection.vue.js.map +1 -0
  91. package/dist/views/system/config/components/JobSection2.vue.js +138 -0
  92. package/dist/views/system/config/components/JobSection2.vue.js.map +1 -0
  93. package/dist/views/system/config/components/{GroupExtraConfig.vue.d.ts → LoginMock.vue.d.ts} +3 -4
  94. package/dist/views/system/config/components/LoginMock.vue.js +8 -0
  95. package/dist/views/system/config/components/LoginMock.vue.js.map +1 -0
  96. package/dist/views/system/config/components/LoginMock2.vue.js +121 -0
  97. package/dist/views/system/config/components/LoginMock2.vue.js.map +1 -0
  98. package/dist/views/system/config/components/LogoCropper.vue.d.ts +10 -0
  99. package/dist/views/system/config/components/LogoCropper.vue.js +8 -0
  100. package/dist/views/system/config/components/LogoCropper.vue.js.map +1 -0
  101. package/dist/views/system/config/components/LogoCropper2.vue.js +122 -0
  102. package/dist/views/system/config/components/LogoCropper2.vue.js.map +1 -0
  103. package/dist/views/system/config/components/LogoEditor.vue.js +8 -0
  104. package/dist/views/system/config/components/LogoEditor.vue.js.map +1 -0
  105. package/dist/views/system/config/components/LogoEditor2.vue.js +163 -0
  106. package/dist/views/system/config/components/LogoEditor2.vue.js.map +1 -0
  107. package/dist/views/system/config/components/ProviderSheet.vue.d.ts +17 -0
  108. package/dist/views/system/config/components/ProviderSheet.vue.js +8 -0
  109. package/dist/views/system/config/components/ProviderSheet.vue.js.map +1 -0
  110. package/dist/views/system/config/components/ProviderSheet2.vue.js +343 -0
  111. package/dist/views/system/config/components/ProviderSheet2.vue.js.map +1 -0
  112. package/dist/views/system/config/components/ScaleToFit.vue.d.ts +17 -0
  113. package/dist/views/system/config/components/ScaleToFit.vue.js +8 -0
  114. package/dist/views/system/config/components/ScaleToFit.vue.js.map +1 -0
  115. package/dist/views/system/config/components/ScaleToFit2.vue.js +41 -0
  116. package/dist/views/system/config/components/ScaleToFit2.vue.js.map +1 -0
  117. package/dist/views/system/config/components/SectionLayout.vue.d.ts +28 -0
  118. package/dist/views/system/config/components/SectionLayout.vue.js +8 -0
  119. package/dist/views/system/config/components/SectionLayout.vue.js.map +1 -0
  120. package/dist/views/system/config/components/SectionLayout2.vue.js +45 -0
  121. package/dist/views/system/config/components/SectionLayout2.vue.js.map +1 -0
  122. package/dist/views/system/config/components/SecuritySection.vue.js +8 -0
  123. package/dist/views/system/config/components/SecuritySection.vue.js.map +1 -0
  124. package/dist/views/system/config/components/SecuritySection2.vue.js +416 -0
  125. package/dist/views/system/config/components/SecuritySection2.vue.js.map +1 -0
  126. package/dist/views/system/config/components/SensitiveSection.vue.js +8 -0
  127. package/dist/views/system/config/components/SensitiveSection.vue.js.map +1 -0
  128. package/dist/views/system/config/components/SensitiveSection2.vue.js +209 -0
  129. package/dist/views/system/config/components/SensitiveSection2.vue.js.map +1 -0
  130. package/dist/views/system/config/components/SigninSection.vue.js +8 -0
  131. package/dist/views/system/config/components/SigninSection.vue.js.map +1 -0
  132. package/dist/views/system/config/components/SigninSection2.vue.js +201 -0
  133. package/dist/views/system/config/components/SigninSection2.vue.js.map +1 -0
  134. package/dist/views/system/config/components/UploadSection.vue.d.ts +3 -0
  135. package/dist/views/system/config/components/UploadSection.vue.js +8 -0
  136. package/dist/views/system/config/components/UploadSection.vue.js.map +1 -0
  137. package/dist/views/system/config/components/UploadSection2.vue.js +167 -0
  138. package/dist/views/system/config/components/UploadSection2.vue.js.map +1 -0
  139. package/dist/views/system/config/draft.d.ts +148 -0
  140. package/dist/views/system/config/draft.js +170 -0
  141. package/dist/views/system/config/draft.js.map +1 -0
  142. package/dist/views/system/config/flash.d.ts +2 -0
  143. package/dist/views/system/config/flash.js +9 -0
  144. package/dist/views/system/config/flash.js.map +1 -0
  145. package/dist/views/system/config/groups.d.ts +35 -7
  146. package/dist/views/system/config/groups.js +99 -14
  147. package/dist/views/system/config/groups.js.map +1 -1
  148. package/dist/views/system/config/index.vue.js +4 -1
  149. package/dist/views/system/config/index.vue.js.map +1 -1
  150. package/dist/views/system/config/index2.vue.js +180 -115
  151. package/dist/views/system/config/index2.vue.js.map +1 -1
  152. package/dist/views/system/config/providerForm.d.ts +33 -0
  153. package/dist/views/system/config/providerForm.js +63 -0
  154. package/dist/views/system/config/providerForm.js.map +1 -0
  155. package/package.json +4 -4
  156. package/dist/views/system/config/components/ExternalAuthConfig.vue.js +0 -8
  157. package/dist/views/system/config/components/ExternalAuthConfig.vue.js.map +0 -1
  158. package/dist/views/system/config/components/ExternalAuthConfig2.vue.js +0 -218
  159. package/dist/views/system/config/components/ExternalAuthConfig2.vue.js.map +0 -1
  160. package/dist/views/system/config/components/GroupExtraConfig.vue.js +0 -8
  161. package/dist/views/system/config/components/GroupExtraConfig.vue.js.map +0 -1
  162. package/dist/views/system/config/components/GroupExtraConfig2.vue.js +0 -108
  163. package/dist/views/system/config/components/GroupExtraConfig2.vue.js.map +0 -1
  164. package/dist/views/system/config/components/HighSensConfig.vue.js +0 -5
  165. package/dist/views/system/config/components/HighSensConfig.vue.js.map +0 -1
  166. package/dist/views/system/config/components/HighSensConfig2.vue.js +0 -134
  167. package/dist/views/system/config/components/HighSensConfig2.vue.js.map +0 -1
  168. package/dist/views/system/config/components/JobConfig.vue.js +0 -5
  169. package/dist/views/system/config/components/JobConfig.vue.js.map +0 -1
  170. package/dist/views/system/config/components/JobConfig2.vue.js +0 -116
  171. package/dist/views/system/config/components/JobConfig2.vue.js.map +0 -1
  172. package/dist/views/system/config/components/OtherConfig.vue.js +0 -5
  173. package/dist/views/system/config/components/OtherConfig.vue.js.map +0 -1
  174. package/dist/views/system/config/components/OtherConfig2.vue.js +0 -121
  175. package/dist/views/system/config/components/OtherConfig2.vue.js.map +0 -1
  176. package/dist/views/system/config/components/SecurityConfig.vue.js +0 -8
  177. package/dist/views/system/config/components/SecurityConfig.vue.js.map +0 -1
  178. package/dist/views/system/config/components/SecurityConfig2.vue.js +0 -456
  179. package/dist/views/system/config/components/SecurityConfig2.vue.js.map +0 -1
  180. package/dist/views/system/config/components/SysBaseConfig.vue.js +0 -5
  181. package/dist/views/system/config/components/SysBaseConfig.vue.js.map +0 -1
  182. package/dist/views/system/config/components/SysBaseConfig2.vue.js +0 -107
  183. package/dist/views/system/config/components/SysBaseConfig2.vue.js.map +0 -1
  184. package/dist/views/system/config/components/UploadConfig.vue.js +0 -5
  185. package/dist/views/system/config/components/UploadConfig.vue.js.map +0 -1
  186. package/dist/views/system/config/components/UploadConfig2.vue.js +0 -135
  187. package/dist/views/system/config/components/UploadConfig2.vue.js.map +0 -1
  188. /package/dist/views/system/config/components/{ExternalAuthConfig.vue.d.ts → AdminMock.vue.d.ts} +0 -0
  189. /package/dist/views/system/config/components/{HighSensConfig.vue.d.ts → AdvancedSection.vue.d.ts} +0 -0
  190. /package/dist/views/system/config/components/{JobConfig.vue.d.ts → JobSection.vue.d.ts} +0 -0
  191. /package/dist/views/system/config/components/{OtherConfig.vue.d.ts → LogoEditor.vue.d.ts} +0 -0
  192. /package/dist/views/system/config/components/{SecurityConfig.vue.d.ts → SecuritySection.vue.d.ts} +0 -0
  193. /package/dist/views/system/config/components/{SysBaseConfig.vue.d.ts → SensitiveSection.vue.d.ts} +0 -0
  194. /package/dist/views/system/config/components/{UploadConfig.vue.d.ts → SigninSection.vue.d.ts} +0 -0
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .reauth-hint[data-v-f489ff1a]{margin:0 0 12px;color:var(--n-text-color-3);font-size:13px;line-height:1.5}:root{--color-gray-900: #181a2a;--color-gray-800: #2f313f;--color-gray-700: #5d5f6a;--color-gray-600: #7b7c85;--color-gray-500: #85868e;--color-gray-400: #bababf;--color-gray-300: #d1d1d1;--color-gray-200: #e3e3e3;--color-gray-100: #f1f1f1;--color-gray-50: #f0f0f0;--color-white: #ffffff;--color-primary: #646cff;--color-primary-hover: #7d84ff;--color-primary-pressed: #5259d1;--color-primary-light: #f0f0ff;--color-success: #00a43b;--color-success-bg: #e0f4e7;--color-warning: #a88400;--color-warning-bg: #fff8e0;--color-danger: #d15054;--color-danger-bg: #ffeced;--color-info: #0090b5;--color-info-bg: #e0f2f6;--color-bg-body: #f2f8f5;--color-bg-app: linear-gradient( 135deg, #f7fbf9 0%, #edf7f3 55%, #f7fbf9 100% );--color-bg-container: rgba(255, 255, 255, .78);--color-bg-container-solid: #fefefe;--color-bg-elevated: #ffffff;--color-text-primary: #111827;--color-text-secondary: #374151;--color-text-tertiary: #6b7280;--color-text-disabled: #9ca3af;--color-border: #d7dbe0;--color-border-strong: #bfc5cd;--color-fill: #eef1f5;--color-fill-hover: #e5e9ef;--color-bg-input: #ffffff;--color-fill-disabled: #eef1f5;--color-mask: rgba(24, 26, 42, .45);--color-header-bg: rgba(255, 255, 255, .82);--font-family-base: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;--font-family-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--font-size-xs: 12px;--line-height-xs: 18px;--font-size-sm: 13px;--line-height-sm: 20px;--font-size-base: 14px;--line-height-base: 22px;--font-size-md: 16px;--line-height-md: 24px;--font-size-lg: 20px;--line-height-lg: 28px;--font-size-xl: 24px;--line-height-xl: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--space-4: 4px;--space-8: 8px;--space-12: 12px;--space-16: 16px;--space-24: 24px;--space-32: 32px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--shadow-1: 0 1px 2px rgba(24, 26, 42, .05), 0 2px 6px rgba(24, 26, 42, .06);--shadow-2: 0 10px 30px rgba(24, 26, 42, .12);--shadow-3: 0 16px 48px rgba(24, 26, 42, .18);--transition-fast: .15s ease;--transition-base: .2s ease}:root[data-theme=dark]{--color-primary: #14b8a6;--color-primary-hover: #2dd4bf;--color-primary-pressed: #0f766e;--color-primary-light: rgba(20, 184, 166, .16);--color-success: #34d399;--color-success-bg: rgba(16, 185, 129, .14);--color-warning: #fbbf24;--color-warning-bg: rgba(251, 191, 36, .14);--color-danger: #fb7185;--color-danger-bg: rgba(244, 63, 94, .16);--color-info: #38bdf8;--color-info-bg: rgba(56, 189, 248, .14);--color-bg-body: #020617;--color-bg-app: linear-gradient( 135deg, #020617 0%, #0f172a 55%, #020617 100% );--color-bg-container: rgba(18, 28, 46, .9);--color-bg-container-solid: #121c2e;--color-bg-elevated: #182234;--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-tertiary: #94a3b8;--color-text-disabled: #64748b;--color-border: rgba(71, 85, 105, .4);--color-border-strong: rgba(100, 116, 139, .5);--color-fill: #0f172a;--color-fill-hover: #1a2436;--color-bg-input: #0f172a;--color-fill-disabled: #1b2434;--color-mask: rgba(2, 6, 23, .72);--color-header-bg: rgba(15, 23, 42, .7);--shadow-1: 0 1px 0 rgba(255, 255, 255, .04) inset, 0 2px 8px rgba(2, 6, 23, .3);--shadow-2: 0 10px 30px rgba(2, 6, 23, .45), 0 0 0 1px rgba(51, 65, 85, .35);--shadow-3: 0 16px 48px rgba(2, 6, 23, .55), 0 0 0 1px rgba(51, 65, 85, .4)}:root{--pad-page: 14px;--gap-card: 12px;--row-h: 58px;--sidebar-w: 236px;--sidebar-w-collapsed: 76px;--rail-w: 64px;--header-h: 62px}:root[data-density=compact]{--pad-page: 10px;--gap-card: 8px;--row-h: 48px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text-primary);background:var(--color-bg-app);-webkit-font-smoothing:antialiased}:root[data-theme=dark] body{background-attachment:fixed}a{color:var(--color-primary);text-decoration:none}.tabular{font-variant-numeric:tabular-nums}.n-card{border:1px solid var(--color-border)}:root:not([data-theme=dark]) .n-card:not(.n-modal){background:linear-gradient(145deg,#ffffffe0,#ffffffad);box-shadow:inset 0 1px #ffffffe6,0 8px 24px #2d695a14;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}:root:not([data-theme=dark]) .n-card.n-modal{background:var(--color-bg-elevated);box-shadow:var(--shadow-3);backdrop-filter:none;-webkit-backdrop-filter:none}:root[data-theme=dark] .n-card{background:#121c2e;border-color:#47556966;box-shadow:0 8px 24px #02061738}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#64748b85}:root[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#94a3b8b3}:root[data-theme=dark] ::selection{background:#14b8a647;color:#ecfeff}html.theme-switching,html.theme-switching *,html.theme-switching *:before,html.theme-switching *:after{transition:background-color .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#90939966;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#909399b3}::-webkit-scrollbar-track{background:transparent}html[data-gray]{filter:grayscale(1)}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-slide-enter-active,.fade-slide-leave-active{transition:opacity .24s ease,transform .24s ease}.fade-slide-enter-from{opacity:0;transform:translate(16px)}.fade-slide-leave-to{opacity:0;transform:translate(-16px)}.n-menu,.n-dropdown-menu{user-select:none;-webkit-user-select:none}.n-data-table{--table-selected-bg: var(--color-primary-light)}.n-data-table .n-data-table-tr:nth-child(2n)>.n-data-table-td{background-color:var(--n-merged-td-color-striped)}.n-data-table .n-data-table-tr:has(>.n-data-table-td--selection .n-checkbox--checked,>.n-data-table-td--selection .n-radio--checked)>.n-data-table-td,.smart-table .smart-table-row--active>.n-data-table-td{background-color:var(--table-selected-bg)}.n-data-table .n-data-table-tr.row-selected>.n-data-table-td{background-color:var(--table-selected-bg)}.n-data-table .n-data-table-tr.row-selected>.n-data-table-td--fixed-left,.n-data-table .n-data-table-tr.row-selected>.n-data-table-td--fixed-right{background-color:var(--table-fixed-bg);background-image:linear-gradient(var(--table-selected-bg),var(--table-selected-bg))}.n-data-table .n-data-table-tr.row-selected>.n-data-table-td:first-child{box-shadow:inset 3px 0 0 var(--color-primary)}.n-data-table .n-data-table-th,.n-data-table .n-data-table-td{border-right:1px solid var(--n-merged-border-color);white-space:nowrap}.n-data-table .n-data-table-th--last,.n-data-table .n-data-table-td--last-col{border-right:0}.n-data-table .n-data-table-th--fixed-left,.n-data-table .n-data-table-th--fixed-right{background-color:var(--color-fill)}.n-data-table{--table-fixed-bg: var(--color-bg-container-solid)}.n-modal .n-data-table,.n-drawer .n-data-table,.n-popover .n-data-table{--table-fixed-bg: var(--n-merged-td-color)}.n-data-table .n-data-table-td--fixed-left,.n-data-table .n-data-table-td--fixed-right{background-color:var(--table-fixed-bg)}.smart-table .n-data-table .smart-table-row--active>.n-data-table-td--fixed-left,.smart-table .n-data-table .smart-table-row--active>.n-data-table-td--fixed-right{background-color:var(--table-fixed-bg);background-image:linear-gradient(var(--smart-table-active-row-bg, rgba(99, 102, 241, .08)),var(--smart-table-active-row-bg, rgba(99, 102, 241, .08)))}.n-data-table .n-data-table-td--last-col .n-space{gap:0!important}.n-data-table .n-data-table-td .n-space:has(.n-button){flex-wrap:nowrap!important;min-width:max-content;white-space:nowrap}.n-data-table .n-data-table-td .n-space:has(.n-button)>.n-space-item,.n-data-table .n-data-table-td .n-button{white-space:nowrap}.table-zoom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--color-bg-body);padding:16px;display:flex;flex-direction:column;min-height:0;gap:8px}.table-zoom>.n-data-table,.table-zoom>.route-table,.table-zoom>.table-zoom-body{flex:1;min-height:0}.row-sort .drag-handle{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-sm, 6px);color:var(--color-text-tertiary);cursor:grab;transition:color var(--transition-base, .2s ease),background-color var(--transition-base, .2s ease)}.row-sort .drag-handle:hover{background:var(--color-fill-hover);color:var(--color-primary)}.row-sort .drag-handle:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.row-sort .drag-handle:active{cursor:grabbing}.row-sort .row-chosen>td{position:relative;z-index:1;background:var(--color-bg-elevated);box-shadow:0 6px 16px #0000001f;cursor:grabbing}.row-sort .row-ghost>td{background:var(--color-primary-light);color:var(--color-primary)}.row-sort .row-ghost>td:first-child{box-shadow:inset 3px 0 0 var(--color-primary)}.row-sort .row-fallback{display:none!important}.row-sort.is-dragging .n-data-table-tr:not(.row-ghost){opacity:.5}.row-sort.is-dragging .n-data-table-td{transition:none}.side-filter{flex:0 0 var(--side-filter-width, 224px);display:flex;flex-direction:column;gap:8px;min-height:0;padding:12px 10px;border-radius:var(--radius-lg, 12px);background:var(--color-bg-container);box-shadow:var(--shadow-1);transition:flex-basis var(--transition-base, .2s ease)}.side-filter__head{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:24px;padding-left:6px}.side-filter__actions{display:flex;flex:none;margin-left:auto;align-items:center;gap:2px}.side-filter__body{display:flex;flex:1;flex-direction:column;gap:2px;min-height:0;overflow-y:auto;scrollbar-width:thin}.side-filter__divider{height:1px;margin:6px 8px;background:var(--color-border)}.side-filter__empty{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:24px;color:var(--color-text-tertiary);font-size:var(--font-size-sm, 13px)}.side-row{position:relative;display:flex;align-items:center;gap:8px;width:100%;height:34px;padding:0 10px;border:0;border-radius:var(--radius-md, 10px);background:transparent;color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-base, 14px);text-align:left;cursor:pointer;transition:background var(--transition-fast, .15s ease),color var(--transition-fast, .15s ease)}.side-row:hover{background:var(--color-fill-hover);color:var(--color-text-primary)}.side-row.is-active{background:var(--color-primary-light);color:var(--color-primary);font-weight:var(--font-weight-medium, 500)}.side-row.is-active:before,.side-tree .n-tree-node--selected:before{content:"";position:absolute;top:50%;left:0;width:3px;height:16px;border-radius:0 3px 3px 0;background:var(--color-primary);transform:translateY(-50%)}.side-row__icon,.side-row__dot{flex:none}.side-row__dot{width:6px;height:6px;margin:0 4px;border-radius:50%;background:var(--color-border-strong);transition:background var(--transition-fast, .15s ease)}.side-row:hover .side-row__dot{background:var(--color-text-tertiary)}.side-row.is-active .side-row__dot{background:currentcolor}.side-row__label{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.side-row__count{flex:none;min-width:22px;height:18px;padding:0 6px;border-radius:9px;background:var(--color-fill);color:var(--color-text-tertiary);font-size:var(--font-size-xs, 12px);font-variant-numeric:tabular-nums;line-height:18px;text-align:center;transition:background var(--transition-fast, .15s ease),color var(--transition-fast, .15s ease)}.side-row.is-active .side-row__count{background:var(--color-primary);color:var(--color-white, #fff)}.side-tree.n-tree{flex:1;min-height:0;overflow:auto;scrollbar-width:thin}.side-tree .n-tree-node{position:relative;padding-right:4px}.side-tree .n-tree-node--selected .n-tree-node-content__text{color:var(--color-primary);font-weight:var(--font-weight-medium, 500)}.side-tree .n-tree-node-content__suffix{opacity:0;transition:opacity var(--transition-fast, .15s ease)}.side-tree .n-tree-node:hover .n-tree-node-content__suffix,.side-tree .n-tree-node--selected .n-tree-node-content__suffix{opacity:1}.side-actions{display:flex;align-items:center;gap:2px}@media(max-width:1280px){.side-filter{flex-basis:min(var(--side-filter-width, 224px),200px)}}.form-section+.form-section{margin-top:16px}.form-section__title{margin-bottom:10px;color:var(--color-text-primary);font-weight:var(--font-weight-semibold, 600)}.form-section--fieldset,.form-section--panel{min-width:0;border:none;padding:0}.form-section--fieldset{margin-inline:0}.form-section--fieldset>legend{display:block;width:100%;margin-bottom:12px;padding:0 0 8px;border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-weight:var(--font-weight-semibold, 600)}.form-section--panel>.form-section__title,.form-section--panel>.head{display:flex;box-sizing:content-box;align-items:center;justify-content:space-between;height:var(--panel-head-h, 30px);margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.page-view:has(>.smart-table),.page-view:has(>.fill-page),.page-view:has(>.side-page){height:100%}.page-view>.smart-table{height:100%;min-height:0}.fill-page{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.fill-page>*{flex-shrink:0}.side-page{display:flex;gap:12px;align-items:stretch;height:100%;min-height:0}.side-page>.smart-table{flex:1;align-self:stretch;min-width:0;min-height:0;height:100%}.fill-page>.smart-table,.fill-main,:is(.fill-main,.fill-split,.fill-tabs .n-tab-pane,.fill-pass>.n-spin-content)>.smart-table{flex:1 1 auto;min-height:0}.fill-main{display:flex;flex-direction:column}:is(.page-view,.fill-page,.side-page,.fill-main,.fill-split,.fill-tabs .n-tab-pane,.fill-pass>.n-spin-content)>.smart-table>.smart-table-card{display:flex;flex:1;flex-direction:column;min-height:0}:is(.page-view,.fill-page,.side-page,.fill-main,.fill-split,.fill-tabs .n-tab-pane,.fill-pass>.n-spin-content)>.smart-table>.smart-table-card>:is(.n-card-content,.n-card__content){display:flex;flex:1;flex-direction:column;min-height:0}:is(.page-view,.fill-page,.side-page,.fill-main,.fill-split,.fill-tabs .n-tab-pane,.fill-pass>.n-spin-content)>.smart-table>.smart-table-card>:is(.n-card-content,.n-card__content)>.n-data-table{flex:1;min-height:0}.fill-card{display:flex;flex:1;flex-direction:column;min-height:0}.fill-card>:is(.n-card-content,.n-card__content){display:flex;flex:1;flex-direction:column;min-height:0}.fill-card>:is(.n-card-content,.n-card__content)>.n-data-table{flex:1;min-height:0}.fill-tabs{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.fill-tabs>.n-tabs-nav{flex-shrink:0}.fill-tabs>.n-tabs-pane-wrapper,.fill-tabs>.n-tabs-pane-wrapper>.n-tab-pane,.fill-tabs>.n-tab-pane{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.fill-split{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--fill-split-gap, var(--gap-card, 12px));min-height:0}.fill-split--row{flex-direction:row}.fill-split>.fill-main,.fill-split>.smart-table{flex:1 1 0;min-height:0}.fill-pass,.fill-pass>.n-spin-content{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.fill-page--soft{height:auto;min-height:100%;overflow:visible}.chart[data-v-558fd76a]{width:100%;height:320px}.code-block[data-v-953af54c]{position:relative;font-size:12px;line-height:1.5}.copy-btn[data-v-953af54c]{position:absolute;top:0;right:0}.cron-editor[data-v-8ed8204a]{width:100%}.cron-rows[data-v-8ed8204a]{display:flex;flex-direction:column;gap:10px;width:100%}.cron-row[data-v-8ed8204a]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cron-num[data-v-8ed8204a]{width:96px}.cron-dow[data-v-8ed8204a]{width:120px}.cron-list[data-v-8ed8204a]{flex:1;min-width:200px}.cron-sep[data-v-8ed8204a]{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.cron-hint[data-v-8ed8204a]{margin-top:6px;font-size:12px;color:var(--color-text-tertiary)}.cron-preview[data-v-8ed8204a]{margin-top:12px;padding:10px 12px;border-radius:var(--radius-md);background:var(--color-fill);display:flex;flex-direction:column;gap:8px}.cron-warn[data-v-8ed8204a]{margin-bottom:2px}.cron-preview-error[data-v-8ed8204a]{color:var(--color-danger);font-size:var(--font-size-sm)}.cron-preview-row[data-v-8ed8204a]{display:flex;gap:12px;align-items:flex-start}.cron-preview-label[data-v-8ed8204a]{flex:0 0 auto;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:22px}.cron-code[data-v-8ed8204a]{font-family:var(--font-family-mono, ui-monospace, monospace);font-size:13px;line-height:22px}.cron-occurrences[data-v-8ed8204a]{display:flex;flex-wrap:wrap;gap:2px 16px}.cron-occurrence[data-v-8ed8204a]{font-family:var(--font-family-mono, ui-monospace, monospace);font-size:13px;line-height:22px;font-variant-numeric:tabular-nums}.cron-empty[data-v-8ed8204a]{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.detail-page[data-v-6733c96a]{display:flex;flex-direction:column;gap:var(--gap-card, 16px)}.detail-header[data-v-6733c96a]{display:flex;align-items:center;gap:8px}.detail-title[data-v-6733c96a]{margin:0;font-size:var(--font-size-lg, 18px);font-weight:600;color:var(--color-text-primary)}.detail-actions[data-v-6733c96a]{margin-left:auto}.error-boundary[data-v-3b4e3577]{min-height:60vh;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;color:var(--color-text-secondary)}h2[data-v-3b4e3577]{margin:0;color:var(--color-text-primary);font-size:var(--font-size-lg)}.desc[data-v-3b4e3577]{margin:0;max-width:460px}.detail[data-v-3b4e3577]{max-width:100%;padding:6px 10px;overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-container);color:var(--color-danger);font-family:var(--font-family-mono);font-size:var(--font-size-xs)}.export-cols-head[data-v-6b86f7cf]{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--n-border-color)}.smart-form--fullscreen{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;border-radius:0}.smart-form--fullscreen>.n-card__content{flex:1;min-height:0;overflow:auto}.import-steps[data-v-20fd3250]{margin-bottom:20px}.import-pane[data-v-20fd3250]{min-height:200px}.import-upload-icon[data-v-20fd3250]{margin-bottom:12px;color:var(--n-text-color-3)}.import-mapping-head[data-v-20fd3250],.import-mapping-row[data-v-20fd3250]{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}.import-mapping-head[data-v-20fd3250]{font-weight:600;font-size:13px;margin-bottom:8px;color:var(--n-text-color-2)}.import-mapping-row[data-v-20fd3250]{margin-bottom:8px}.import-mapping-header[data-v-20fd3250]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.import-strategy[data-v-20fd3250]{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}[data-v-20fd3250] .import-cell{padding:2px;border-radius:4px}[data-v-20fd3250] .import-cell--error{background:var(--color-danger-bg)}[data-v-20fd3250] .import-cell--dup{background:var(--color-warning-bg)}.pw-meter[data-v-81b0f6bf]{margin:-8px 0 14px}.pw-bar[data-v-81b0f6bf]{display:flex;gap:6px}.pw-bar span[data-v-81b0f6bf]{flex:1;height:4px;border-radius:2px;transition:background var(--transition-fast)}.pw-level[data-v-81b0f6bf]{margin-top:6px;font-size:12px}.pw-rules[data-v-81b0f6bf]{margin:8px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2px 12px}.pw-rules li[data-v-81b0f6bf]{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-tertiary)}.pw-rules li.ok[data-v-81b0f6bf]{color:#5aa86e}.select-table[data-v-78ca7f91]{height:520px;min-height:0;display:flex;flex-direction:column;gap:12px}.select-table-search[data-v-78ca7f91]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.select-table-search[data-v-78ca7f91] .n-input{flex:0 1 200px}.select-table-search .keyword-input[data-v-78ca7f91]{flex:1 1 320px;min-width:260px}.select-table-search[data-v-78ca7f91] .n-button{flex:none}.select-table-grid[data-v-78ca7f91]{flex:1;min-height:0}[data-v-78ca7f91] .select-table-row-selected td{background-color:var(--table-selected-bg)}.user-picker[data-v-41b95328]{display:flex;gap:12px;min-height:400px}.panel-header[data-v-41b95328]{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;padding:0 0 8px;border-bottom:1px solid var(--n-border-color, #e0e0e6);margin-bottom:8px}.picker-tree[data-v-41b95328]{width:160px;flex-shrink:0;overflow:auto;border-right:1px solid var(--n-border-color, #e0e0e6);padding-right:12px}.picker-table[data-v-41b95328]{flex:1;min-width:0;overflow:hidden}.picker-selected[data-v-41b95328]{width:200px;flex-shrink:0;border-left:1px solid var(--n-border-color, #e0e0e6);padding-left:12px;display:flex;flex-direction:column}.selected-list[data-v-41b95328]{flex:1;overflow:auto;max-height:380px}.selected-item[data-v-41b95328]{display:flex;align-items:center;justify-content:space-between;padding:4px 0;font-size:13px;border-bottom:1px solid var(--n-border-color, #e0e0e6)}.selected-item[data-v-41b95328]:last-child{border-bottom:none}.selected-name[data-v-41b95328]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-account[data-v-41b95328]{color:var(--n-text-color-disabled, #999);font-size:12px;margin-left:2px}.palette[data-v-7f4fa2eb]{width:560px;max-width:92vw;background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);overflow:hidden}.search[data-v-7f4fa2eb]{display:flex;align-items:center;gap:8px;padding:6px 16px;border-bottom:1px solid var(--color-border)}.sicon[data-v-7f4fa2eb]{color:var(--color-text-tertiary);flex-shrink:0}.list[data-v-7f4fa2eb]{padding:8px}.item[data-v-7f4fa2eb]{display:flex;align-items:center;gap:10px;height:44px;padding:0 12px;border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-primary)}.item.active[data-v-7f4fa2eb]{background:var(--color-primary-light);color:var(--color-primary)}.iicon[data-v-7f4fa2eb]{flex-shrink:0}.ititle[data-v-7f4fa2eb]{font-size:var(--font-size-md)}.ititle[data-v-7f4fa2eb] mark{background:transparent;color:var(--color-primary);font-weight:600}.ipath[data-v-7f4fa2eb]{margin-left:auto;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.empty[data-v-7f4fa2eb]{padding:32px 0}.hint[data-v-7f4fa2eb]{padding:8px 16px;border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.site-logo[data-v-88ac0194]{display:block;width:auto;max-width:100%;object-fit:contain}.oauth-brand-badge[data-v-d7509bf4]{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;border-radius:50%;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none;flex-shrink:0}.oauth-brand-icon[data-v-d7509bf4]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.oauth-brand-letter[data-v-d7509bf4]{font-size:12px;font-weight:700;color:var(--color-text-secondary, #666);line-height:1}.login-form[data-v-edac6de7]{width:100%}.lf-pending-alert[data-v-edac6de7]{margin-bottom:16px;border-radius:10px;text-align:left}.lf-brand[data-v-edac6de7]{display:flex;align-items:center;gap:10px;margin-bottom:18px}.lf-word[data-v-edac6de7]{font-size:22px;font-weight:700;letter-spacing:.2px;color:var(--lf-title, var(--color-text-primary))}.lf-title[data-v-edac6de7]{font-size:var(--font-size-lg);font-weight:600;margin:0 0 22px;color:var(--lf-title, var(--color-text-primary))}.lf-hint-line[data-v-edac6de7]{margin:-14px 0 18px;font-size:13px;color:var(--lf-hint, var(--color-text-tertiary))}.row[data-v-edac6de7]{margin:4px 0 20px}.lf-between[data-v-edac6de7]{display:flex;align-items:center;justify-content:space-between}.lf-link[data-v-edac6de7]{font-size:13px;color:var(--color-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.lf-link[data-v-edac6de7]:hover{opacity:.85}.lf-link-disabled[data-v-edac6de7]{color:var(--lf-hint, var(--color-text-tertiary));cursor:default;pointer-events:none}.lf-captcha[data-v-edac6de7]{display:flex;gap:10px;width:100%;align-items:stretch}.lf-captcha-img[data-v-edac6de7]{flex:0 0 auto;height:40px;min-width:96px;padding:0;border:1px solid var(--lf-border, var(--color-border));border-radius:var(--radius-md);background:#fff;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center}.lf-captcha-img[data-v-edac6de7] svg{height:100%;width:auto}.lf-send-btn[data-v-edac6de7]{flex:0 0 auto;height:40px;min-width:96px;padding:0 12px;border:1px solid var(--lf-border, var(--color-border));border-radius:var(--radius-md);background:var(--color-fill);font-size:13px;color:var(--lf-title, var(--color-text-secondary));cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}.lf-send-btn[data-v-edac6de7]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.lf-send-btn[data-v-edac6de7]:disabled{opacity:.6;cursor:not-allowed}.hero-btn[data-v-edac6de7]{width:100%;height:48px;border:none;border-radius:var(--radius-md);color:#fff;font-size:var(--font-size-md);font-weight:600;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hero-btn[data-v-edac6de7]:hover{transform:translateY(-2px)}.hero-btn[data-v-edac6de7]:active{transform:translateY(0)}.hero-btn[data-v-edac6de7]:disabled{opacity:.7;cursor:not-allowed}.lf-divider[data-v-edac6de7]{display:flex;align-items:center;gap:14px;margin:24px 0 16px}.lf-divider[data-v-edac6de7]:before,.lf-divider[data-v-edac6de7]:after{content:"";flex:1;height:1px;background:var(--lf-border, var(--color-border))}.lf-divider span[data-v-edac6de7]{font-size:12px;color:var(--lf-hint, var(--color-text-tertiary))}.lf-sso[data-v-edac6de7]{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.lf-sso-btn[data-v-edac6de7]{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:inherit;text-decoration:none;cursor:pointer;overflow:hidden;box-sizing:border-box;flex-shrink:0}.lf-sso-btn[data-v-edac6de7]:hover{text-decoration:none;color:inherit}.lf-sso-btn[data-v-edac6de7]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lf-sso-more[data-v-edac6de7]{width:32px;height:32px;border:1px solid var(--lf-border, var(--color-border));background:var(--color-fill, #f5f5f5);color:var(--color-text-tertiary, #999)}.lf-foot[data-v-edac6de7]{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;font-size:12px;color:var(--lf-hint, var(--color-text-tertiary))}.lf-foot a[data-v-edac6de7]{color:inherit;text-decoration:none}.lf-foot a[data-v-edac6de7]:hover{color:var(--color-primary)}.lf-ver[data-v-edac6de7]{opacity:.75}.aurora[data-v-e994c489]{position:relative;height:100dvh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(140% 120% at 50% 0%,#12162b,#0a0b12 55%,#06060c)}.aurora[data-v-e994c489]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(circle at 50% 45%,#000 0%,transparent 72%);mask-image:radial-gradient(circle at 50% 45%,#000 0%,transparent 72%)}.aurora[data-v-e994c489]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:radial-gradient(120% 120% at 50% 42%,transparent 52%,rgba(0,0,0,.6) 100%)}.aurora-bg[data-v-e994c489]{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;z-index:0;background:radial-gradient(38% 38% at 18% 22%,var(--a1),transparent 68%),radial-gradient(42% 42% at 82% 18%,var(--a2),transparent 70%),radial-gradient(48% 48% at 60% 88%,var(--a3),transparent 72%),radial-gradient(34% 34% at 88% 68%,var(--a4),transparent 66%);filter:blur(28px);animation:aurora-move-e994c489 18s ease-in-out infinite alternate}@keyframes aurora-move-e994c489{0%{transform:translate3d(-3%,-2%,0) rotate(0) scale(1.05)}50%{transform:translate3d(3%,2%,0) rotate(4deg) scale(1.16)}to{transform:translate3d(-2%,3%,0) rotate(-3deg) scale(1.08)}}.stars[data-v-e994c489]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:radial-gradient(1.5px 1.5px at 20% 30%,rgba(255,255,255,.7),transparent 60%),radial-gradient(1px 1px at 70% 62%,rgba(255,255,255,.5),transparent 60%),radial-gradient(1.5px 1.5px at 42% 82%,rgba(255,255,255,.6),transparent 60%),radial-gradient(1px 1px at 85% 22%,rgba(255,255,255,.5),transparent 60%),radial-gradient(1px 1px at 55% 14%,rgba(255,255,255,.55),transparent 60%),radial-gradient(1.5px 1.5px at 12% 66%,rgba(255,255,255,.5),transparent 60%),radial-gradient(1px 1px at 92% 48%,rgba(255,255,255,.45),transparent 60%);animation:twinkle-e994c489 5s ease-in-out infinite}@keyframes twinkle-e994c489{0%,to{opacity:.45}50%{opacity:.9}}.orb[data-v-e994c489]{position:absolute;z-index:0;border-radius:50%;filter:blur(55px);opacity:.55}.orb-1[data-v-e994c489]{width:340px;height:340px;background:var(--a1);top:-60px;left:-40px;animation:float-y-e994c489 14s ease-in-out infinite}.orb-2[data-v-e994c489]{width:280px;height:280px;background:var(--a4);bottom:-80px;right:-40px;animation:float-y-e994c489 16s ease-in-out infinite reverse}.orb-3[data-v-e994c489]{width:200px;height:200px;background:var(--a3);top:38%;right:18%;animation:float-y-e994c489 20s ease-in-out infinite}@keyframes float-y-e994c489{0%,to{transform:translateY(0)}50%{transform:translateY(-30px)}}.aurora-content[data-v-e994c489]{position:relative;z-index:3;width:100%;max-width:520px;padding:24px}.halo[data-v-e994c489]{position:absolute;z-index:0;top:8px;right:8px;bottom:8px;left:8px;border-radius:36px;background:conic-gradient(from 0deg,var(--a1),var(--a2),var(--a3),var(--a4),var(--a1));filter:blur(48px);opacity:.6;animation:spin-e994c489 16s linear infinite}@keyframes spin-e994c489{to{transform:rotate(360deg)}}.glass-card[data-v-e994c489]{--lf-title: #fff;--lf-hint: rgba(255, 255, 255, .5);position:relative;z-index:1;width:100%;padding:46px;border-radius:20px;background:#ffffff12;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(26px) saturate(150%);-webkit-backdrop-filter:blur(26px) saturate(150%);box-shadow:0 30px 80px #0000008c,0 0 60px -12px var(--a2),inset 0 1px #fff3;overflow:hidden}.glass-card[data-v-e994c489]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;padding:1px;background:linear-gradient(135deg,var(--a1),transparent 45%,var(--a2));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.9}.glass-card[data-v-e994c489]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:linear-gradient(120deg,transparent 36%,rgba(255,255,255,.1) 48%,transparent 60%);background-size:220% 100%;background-repeat:no-repeat;animation:sheen-e994c489 8s ease-in-out infinite}@keyframes sheen-e994c489{0%{background-position:180% 0}55%,to{background-position:-60% 0}}.grain[data-v-e994c489]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.aurora.light[data-v-e994c489]{background:radial-gradient(140% 120% at 50% 0%,#eef1fb,#f6f7fc 55%,#fff)}.aurora.light[data-v-e994c489]:before{background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px)}.aurora.light[data-v-e994c489]:after{background:radial-gradient(120% 120% at 50% 42%,transparent 55%,rgba(120,130,180,.12) 100%)}.aurora.light .stars[data-v-e994c489]{display:none}.aurora.light .halo[data-v-e994c489]{opacity:.5}.aurora.light .glass-card[data-v-e994c489]{--lf-title: var(--color-text-primary);--lf-hint: var(--color-text-tertiary);background:#ffffff9e;border:1px solid rgba(214,218,235,.9);box-shadow:0 30px 80px #505aa02e,0 0 60px -12px var(--a2),inset 0 1px #ffffffe6}.aurora.light .glass-card[data-v-e994c489]:before{display:none}.aurora.light .glass-card[data-v-e994c489]:after{display:none}@media(max-width:480px){.aurora-content[data-v-e994c489]{padding:16px}.glass-card[data-v-e994c489]{padding:32px 24px}}@media(prefers-reduced-motion:reduce){.aurora-bg[data-v-e994c489],.orb[data-v-e994c489],.stars[data-v-e994c489],.halo[data-v-e994c489],.glass-card[data-v-e994c489]:after{animation:none}.glass-card[data-v-e994c489]:after{display:none}}.split[data-v-75743368]{height:100dvh;display:grid;grid-template-columns:1.15fr .85fr;background:var(--color-bg-body)}.panel[data-v-75743368]{position:relative;overflow:hidden;background:var(--color-bg-body);border-right:1px solid var(--color-border)}.panel[data-v-75743368]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(127,127,127,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(127,127,127,.08) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(circle at 30% 40%,#000,transparent 72%);mask-image:radial-gradient(circle at 30% 40%,#000,transparent 72%)}.panel-aurora[data-v-75743368]{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(40% 40% at 25% 20%,var(--a1),transparent 68%),radial-gradient(45% 45% at 80% 78%,var(--a2),transparent 70%);filter:blur(45px);opacity:.9;animation:panel-move-75743368 22s ease-in-out infinite alternate}@keyframes panel-move-75743368{0%{transform:translate3d(-3%,-2%,0) scale(1.05)}to{transform:translate3d(3%,3%,0) scale(1.12)}}.panel-inner[data-v-75743368]{position:relative;z-index:1;padding:64px 56px;display:flex;flex-direction:column;height:100%;justify-content:center}.logo[data-v-75743368]{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:700;color:#2a3c82}.bar[data-v-75743368]{width:40px;height:3px;border-radius:2px;margin:28px 0 20px}.headline[data-v-75743368]{font-size:42px;line-height:1.2;font-weight:800;color:var(--color-text-primary);margin:0}.sub[data-v-75743368]{color:var(--color-text-secondary);margin:16px 0 28px}.points[data-v-75743368]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}.points li[data-v-75743368]{display:flex;align-items:center;gap:10px;color:var(--color-text-secondary)}.form-wrap[data-v-75743368]{position:relative;display:flex;flex-direction:column;background:var(--color-bg-container)}.mid[data-v-75743368]{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}.form-inner[data-v-75743368]{width:100%;max-width:340px;animation:fade-up-75743368 .6s cubic-bezier(.16,1,.3,1) both}.greet[data-v-75743368]{font-size:26px;font-weight:700;letter-spacing:-.01em;color:var(--color-text-primary);margin:0 0 6px}.greet-sub[data-v-75743368]{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin:0 0 26px}.foot[data-v-75743368]{margin:0;padding:18px 24px 22px;text-align:center;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.foot a[data-v-75743368]{color:inherit;text-decoration:none}.foot a[data-v-75743368]:hover{color:var(--color-primary)}.foot-ver[data-v-75743368]{margin-left:8px;opacity:.75}@keyframes fade-up-75743368{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media(max-width:900px){.split[data-v-75743368]{grid-template-columns:1fr}.panel[data-v-75743368]{display:none}}@media(prefers-reduced-motion:reduce){.panel-aurora[data-v-75743368],.form-inner[data-v-75743368]{animation:none}}.spotlight[data-v-2d0bde1c]{position:relative;height:100dvh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--color-bg-body)}.mesh[data-v-2d0bde1c]{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(30% 40% at 15% 20%,var(--s1),transparent 60%),radial-gradient(30% 40% at 85% 80%,var(--s2),transparent 60%);opacity:.9}.spot[data-v-2d0bde1c]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(340px 340px at var(--mx) var(--my),var(--spot),transparent 60%);transition:background .12s ease-out}.card[data-v-2d0bde1c]{position:relative;z-index:2;width:100%;max-width:460px;padding:46px;background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-3);animation:fade-up-2d0bde1c .6s cubic-bezier(.16,1,.3,1) both}@keyframes fade-up-2d0bde1c{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media(max-width:480px){.spotlight[data-v-2d0bde1c]{padding:0 16px}.card[data-v-2d0bde1c]{padding:32px 24px}}@media(prefers-reduced-motion:reduce){.spot[data-v-2d0bde1c]{transition:none}.card[data-v-2d0bde1c]{animation:none}}.login-shell[data-v-846afb99]{position:relative;height:100dvh;overflow:hidden}.login-topbar[data-v-846afb99]{position:fixed;top:20px;right:24px;z-index:10;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.login-tools[data-v-846afb99]{display:flex;gap:2px;padding:4px;border-radius:999px;background:#12141c8c;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 6px 20px #00000047}.tool-btn[data-v-846afb99]{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:30px;padding:0 10px;border:none;cursor:pointer;border-radius:999px;background:transparent;font-size:13px;font-weight:600;color:#ffffff9e;transition:color .2s,background .2s}.tool-btn[data-v-846afb99]:hover{color:#fff}.tool-btn[data-v-846afb99]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.skin-switch[data-v-846afb99]{display:flex;gap:2px;padding:4px;border-radius:999px;background:#12141c8c;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 6px 20px #00000047}.skin-seg[data-v-846afb99]{border:none;cursor:pointer;padding:6px 16px;border-radius:999px;background:transparent;font-size:13px;font-weight:600;color:#ffffff9e;transition:color .2s,background .2s}.skin-seg[data-v-846afb99]:hover{color:#fff}.skin-seg.active[data-v-846afb99]{background:var(--color-primary);color:#fff}.oauth-cb[data-v-843f1b99]{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--color-bg-layout, #f5f6f8)}.oauth-box[data-v-843f1b99]{display:flex;flex-direction:column;align-items:center;gap:14px}.oauth-msg[data-v-843f1b99]{font-size:15px;color:var(--color-text-primary)}.oauth-sub[data-v-843f1b99]{font-size:13px;color:var(--color-text-tertiary)}.oauth-err-icon[data-v-843f1b99]{font-size:44px;color:var(--color-error, #e88080)}.mfa-page[data-v-b6e82c2c]{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--color-body, #f5f7fa)}.mfa-card[data-v-b6e82c2c]{width:min(100%,520px)}.mfa-header[data-v-b6e82c2c]{display:flex;align-items:center;justify-content:space-between;gap:12px}.mfa-qr-wrap[data-v-b6e82c2c]{display:flex;justify-content:center;margin:0 0 16px;padding:16px;background:#fff;border-radius:8px;border:1px solid var(--color-border, #e5e7eb)}.mfa-manual-hint[data-v-b6e82c2c]{margin:-8px 0 12px;font-size:12px;color:var(--color-text-tertiary, #9ca3af);line-height:1.5}.recovery-codes[data-v-b6e82c2c]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recovery-codes[data-v-b6e82c2c] .n-alert,.recovery-codes[data-v-b6e82c2c] .n-button{grid-column:1 / -1}.recovery-code[data-v-b6e82c2c]{padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--color-hover, #f4f4f5);border-radius:4px}@media(max-width:480px){.mfa-page[data-v-b6e82c2c]{padding:12px}.recovery-codes[data-v-b6e82c2c]{grid-template-columns:1fr}}.boot-error[data-v-c523298c]{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;background:var(--color-bg-app)}h1[data-v-c523298c]{margin:0;color:var(--color-text-primary);font-size:var(--font-size-xl)}p[data-v-c523298c]{margin:0 0 8px;max-width:480px;color:var(--color-text-secondary)}.wrap[data-v-f50f3abd]{min-height:100dvh;background:var(--color-bg-body);padding:80px 24px;display:flex;flex-direction:column;align-items:center}.head[data-v-f50f3abd]{display:flex;align-items:center;gap:12px;margin-bottom:32px}.head h1[data-v-f50f3abd]{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary)}.grid[data-v-f50f3abd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--gap-card);width:100%;max-width:900px}.card[data-v-f50f3abd]{position:relative;display:flex;align-items:center;gap:14px;padding:20px;background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast)}.card.current[data-v-f50f3abd]{border-color:var(--color-primary)}.card[data-v-f50f3abd]:hover{transform:translateY(-3px);border-color:var(--color-primary);box-shadow:var(--shadow-2)}.card[data-v-f50f3abd]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ico[data-v-f50f3abd]{color:var(--color-primary)}.name[data-v-f50f3abd]{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary)}.code[data-v-f50f3abd]{font-size:var(--font-size-sm);color:var(--color-text-tertiary);font-family:var(--font-family-mono)}.def[data-v-f50f3abd]{position:absolute;top:10px;right:12px}.row[data-v-195679a9]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}.lbl[data-v-195679a9]{color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap}.ctl[data-v-195679a9]{display:flex;align-items:center;min-width:0}.grid[data-v-66443dff]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding-inline:3px}.cell[data-v-66443dff]{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer}.card[data-v-66443dff]{width:100%;height:62px;padding:6px;border:none;border-radius:4px;background:var(--color-bg-container);box-shadow:0 1px 3px #141b2d1a,0 0 0 2px transparent;cursor:pointer;transition:box-shadow .15s ease}.cell:hover .card[data-v-66443dff],.card.on[data-v-66443dff]{box-shadow:0 1px 3px #141b2d1a,0 0 0 2px var(--color-primary)}.inner[data-v-66443dff]{--strong: var(--color-primary);--p300: color-mix(in srgb, var(--color-primary) 58%, var(--color-bg-container));--p200: color-mix(in srgb, var(--color-primary) 34%, var(--color-bg-container));display:flex;gap:5px;width:100%;height:100%}.inner.row[data-v-66443dff]{flex-direction:row}.inner.col[data-v-66443dff]{flex-direction:column}.inner i[data-v-66443dff],.inner .vwrap[data-v-66443dff],.inner .hwrap[data-v-66443dff]{border-radius:3px}.strong[data-v-66443dff]{background:var(--strong)}.p300[data-v-66443dff]{background:var(--p300)}.p200[data-v-66443dff]{background:var(--p200)}.sider[data-v-66443dff]{width:18%;flex-shrink:0}.rail[data-v-66443dff]{width:9%;flex-shrink:0}.subsider[data-v-66443dff]{width:16%;flex-shrink:0}.header[data-v-66443dff]{flex-shrink:0;height:13px}.header.full[data-v-66443dff]{width:100%}.main[data-v-66443dff]{flex:1}.vwrap[data-v-66443dff]{flex:1;display:flex;flex-direction:column;gap:5px}.vwrap .header[data-v-66443dff]{width:100%}.hwrap[data-v-66443dff]{flex:1;display:flex;flex-direction:row;gap:5px}.label[data-v-66443dff]{margin:0;text-align:center;font-size:var(--font-size-xs);line-height:var(--line-height-xs);color:var(--color-text-secondary)}.label.on[data-v-66443dff]{color:var(--color-primary);font-weight:var(--font-weight-medium)}.tabs[data-v-adecf714]{height:100%}.footer-actions[data-v-adecf714]{display:flex;flex-direction:column;gap:8px;width:100%}.ri[data-v-adecf714]{margin-right:5px;font-size:15px}.seg[data-v-adecf714]{display:flex;width:100%}.seg[data-v-adecf714] .n-radio-button{flex:1;display:flex;align-items:center;justify-content:center}.accents[data-v-adecf714]{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:12px}.dot[data-v-adecf714]{position:relative;width:100%;max-width:30px;margin:0 auto;aspect-ratio:1;padding:0;border:none;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 0 1px #00000014;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.dot[data-v-adecf714]:hover{transform:scale(1.12)}.dot.on[data-v-adecf714]{transform:scale(1.1);box-shadow:0 0 0 2px var(--color-bg-container),0 0 0 4px var(--color-primary)}.tick[data-v-adecf714]{color:#fff;font-size:14px;filter:drop-shadow(0 0 1px rgba(0,0,0,.35))}.notice-panel[data-v-1ac49123]{width:360px;max-width:92vw}.notice-head[data-v-1ac49123]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 4px}.notice-title[data-v-1ac49123]{font-weight:600;font-size:var(--font-size-md)}.notice-empty[data-v-1ac49123]{padding:32px 0}.notice-list[data-v-1ac49123]{margin:0;padding:0;list-style:none}.notice-item[data-v-1ac49123]{position:relative;display:flex;gap:8px;padding:12px 16px;cursor:pointer;border-top:1px solid var(--n-divider-color, rgba(128, 128, 128, .15));transition:background-color .2s}.notice-item[data-v-1ac49123]:hover{background-color:#80808014}.notice-item.unread[data-v-1ac49123]{background-color:color-mix(in srgb,var(--color-primary) 4%,transparent)}.notice-item.unread[data-v-1ac49123]:hover{background-color:color-mix(in srgb,var(--color-primary) 9%,transparent)}.notice-item.read[data-v-1ac49123]{opacity:.55}.dot[data-v-1ac49123]{position:absolute;left:6px;top:18px;width:6px;height:6px;border-radius:50%;background:var(--color-primary, #d03050)}.notice-body[data-v-1ac49123]{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.line1[data-v-1ac49123]{display:flex;align-items:center;gap:6px;min-width:0}.item-title[data-v-1ac49123]{flex:1;min-width:0;font-size:var(--font-size-sm)}.item-title.unread[data-v-1ac49123]{font-weight:600}.item-actions-mark[data-v-1ac49123]{flex-shrink:0;color:var(--color-primary, #d03050)}.item-snippet[data-v-1ac49123]{font-size:12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.item-time[data-v-1ac49123]{font-size:11px}.notice-foot[data-v-1ac49123]{display:flex;justify-content:center;padding:8px;border-top:1px solid var(--n-divider-color, rgba(128, 128, 128, .15))}.bar[data-v-8dc4f67f]{height:100%;display:flex;align-items:center;gap:12px;padding:0 16px}.left[data-v-8dc4f67f]{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden}.brand[data-v-8dc4f67f]{display:flex;align-items:center;gap:8px;color:var(--color-text-primary);font-weight:600;flex-shrink:0}.brand-name[data-v-8dc4f67f]{font-size:var(--font-size-md)}.title[data-v-8dc4f67f]{font-size:var(--font-size-md);font-weight:500;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uname[data-v-8dc4f67f]{margin-left:6px}.center[data-v-8dc4f67f]{flex:1;min-width:0;overflow:hidden}.right[data-v-8dc4f67f]{display:flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}@media(max-width:767px){.bar[data-v-8dc4f67f]{gap:8px;padding:0 8px}.mobile-hide[data-v-8dc4f67f]{display:none}}.sidenav[data-v-0b56822a]{height:100%;display:flex;flex-direction:column;background:var(--color-bg-container);overflow:hidden}.brand[data-v-0b56822a]{display:flex;align-items:center;gap:10px;height:var(--header-h);padding:0 22px;color:var(--color-text-primary);font-weight:600;overflow:hidden;white-space:nowrap;flex-shrink:0}.rail .brand[data-v-0b56822a]{padding:0;justify-content:center}.brand-name[data-v-0b56822a]{font-size:20px;font-weight:700;color:var(--color-text-primary)}.sidenav[data-v-0b56822a] .n-scrollbar{flex:1;min-height:0}.tabsbar[data-v-8fc6542a]{height:42px;display:flex;align-items:center;padding:0 8px;background:var(--color-bg-container);border-bottom:1px solid var(--color-border)}.strip[data-v-8fc6542a]{display:flex;align-items:center;gap:6px;padding:5px 0}.chip[data-v-8fc6542a]{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-fill);color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s,background .15s,border-color .15s}.chip[data-v-8fc6542a]:hover{color:var(--color-text-primary)}.chip.active[data-v-8fc6542a]{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.chip[data-v-8fc6542a]:focus-visible,.chip-close[data-v-8fc6542a]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.chip-pin[data-v-8fc6542a]{opacity:.7}.chip-close[data-v-8fc6542a]{border-radius:50%;opacity:.6}.chip-close[data-v-8fc6542a]:hover{opacity:1;background:var(--color-fill)}.layout[data-v-aa6e9642]{display:grid;height:100dvh;overflow:hidden;background:var(--color-bg-app)}.mode-vertical[data-v-aa6e9642],.mode-vertical-mix[data-v-aa6e9642],.mode-vertical-hybrid-header-first[data-v-aa6e9642]{grid-template-columns:auto 1fr;grid-template-rows:var(--header-h) 1fr;grid-template-areas:"aside header" "aside content"}.mode-top-hybrid-sidebar-first[data-v-aa6e9642],.mode-top-hybrid-header-first[data-v-aa6e9642]{grid-template-columns:auto 1fr;grid-template-rows:var(--header-h) 1fr;grid-template-areas:"header header" "aside content"}.mode-horizontal[data-v-aa6e9642],.mode-mobile[data-v-aa6e9642]{grid-template-columns:1fr;grid-template-rows:var(--header-h) 1fr;grid-template-areas:"header" "content"}.aside[data-v-aa6e9642]{grid-area:aside;height:100%;overflow:hidden;border-right:1px solid var(--color-border);background:var(--color-bg-container);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:width .2s ease}.aside--mix[data-v-aa6e9642]{display:flex}.aside--mix .rail[data-v-aa6e9642]{width:var(--rail-w);flex-shrink:0;border-right:1px solid var(--color-border)}.aside--mix .l2col[data-v-aa6e9642]{flex:1;min-width:0}.header[data-v-aa6e9642]{grid-area:header;display:flex;align-items:stretch;border-bottom:1px solid var(--color-border);background:var(--color-header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10}.header--static[data-v-aa6e9642]{-webkit-backdrop-filter:none;backdrop-filter:none}.hbg[data-v-aa6e9642]{align-self:center;margin-left:8px}.apph[data-v-aa6e9642]{flex:1;min-width:0;height:100%}.content[data-v-aa6e9642]{grid-area:content;display:flex;flex-direction:column;min-height:0;overflow:hidden}.tabs[data-v-aa6e9642]{flex-shrink:0}.page[data-v-aa6e9642]{flex:1;min-height:0;overflow:auto;padding:var(--pad-page)}.personal-layout[data-v-45e1c4ea]{display:flex;gap:16px;align-items:stretch;min-height:100%}.personal-sider[data-v-45e1c4ea]{width:200px;flex-shrink:0;background:var(--color-bg-container, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:8px;padding:8px 0 12px}.personal-main[data-v-45e1c4ea]{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.personal-mobile-nav[data-v-45e1c4ea]{max-width:360px}.personal-content[data-v-45e1c4ea]{min-width:0}.personal-layout.is-mobile[data-v-45e1c4ea]{flex-direction:column}.avatar-field[data-v-5c4afffc]{display:flex;align-items:center;gap:12px}.sec-desc[data-v-7afb110e]{margin:0 0 16px;color:var(--color-text-2, #666);line-height:1.5}.sec-note[data-v-7afb110e]{margin:20px 0 0;font-size:12px;color:var(--color-text-3, #999);line-height:1.5}[data-v-83e5e6b1] .device-cell{display:flex;align-items:center;gap:8px}.bind-page[data-v-3ab6b190]{max-width:920px}.bind-header[data-v-3ab6b190]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}.bind-title[data-v-3ab6b190]{margin:0 0 6px;font-size:18px;font-weight:600;line-height:1.3;color:var(--color-text-primary, #1f1f1f)}.bind-hint[data-v-3ab6b190]{margin:0;max-width:520px;font-size:13px;line-height:1.55;color:var(--color-text-secondary, #666)}.bind-summary[data-v-3ab6b190]{display:inline-flex;align-items:baseline;gap:4px;padding:8px 12px;border-radius:10px;background:var(--color-fill, #f5f5f5);font-size:13px;color:var(--color-text-secondary, #666);flex-shrink:0}.bind-summary-num[data-v-3ab6b190]{font-size:18px;font-weight:700;color:var(--color-primary, #646cff);font-variant-numeric:tabular-nums}.bind-summary-sep[data-v-3ab6b190]{opacity:.5}.bind-summary-label[data-v-3ab6b190]{margin-left:4px}.bind-alert[data-v-3ab6b190]{margin-bottom:16px;border-radius:10px}.bind-empty[data-v-3ab6b190]{padding:48px 0}.bind-grid[data-v-3ab6b190]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.bind-card[data-v-3ab6b190] .n-card-content{display:flex;flex-direction:column;gap:14px}.bind-card[data-v-3ab6b190]:hover{box-shadow:0 4px 14px #0000000f}.bind-card.bind-card--bound[data-v-3ab6b190]{border-color:color-mix(in srgb,var(--color-success, #18a058) 40%,var(--color-border, #e8e8e8));background:color-mix(in srgb,var(--color-success, #18a058) 4%,var(--color-bg-container, #fff))}.bind-card.bind-card--disabled[data-v-3ab6b190]{opacity:.78;background:var(--color-fill-quaternary, #f7f7f7);border-style:dashed}.bind-card-main[data-v-3ab6b190]{display:flex;align-items:flex-start;gap:12px;min-width:0}.bind-avatar[data-v-3ab6b190]{position:relative;display:inline-flex;width:48px;height:48px;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%;overflow:visible;background:var(--color-fill, #f5f5f5)}.bind-avatar[data-v-3ab6b190] .oauth-brand-badge,.bind-avatar[data-v-3ab6b190] img{border-radius:50%;overflow:hidden}.bind-avatar--bound[data-v-3ab6b190]{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success, #18a058) 35%,transparent)}.bind-check[data-v-3ab6b190]{position:absolute;right:-2px;bottom:-2px;display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;border-radius:50%;background:var(--color-success, #18a058);color:#fff;border:2px solid var(--color-bg-container, #fff);line-height:0}.bind-meta[data-v-3ab6b190]{min-width:0;flex:1}.bind-title-row[data-v-3ab6b190]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.bind-name[data-v-3ab6b190]{font-size:15px;font-weight:600;color:var(--color-text-primary, #1f1f1f);line-height:1.3}.bind-code[data-v-3ab6b190]{display:inline-block;font-size:12px;color:var(--color-text-tertiary, #999);background:var(--color-fill, #f5f5f5);padding:1px 6px;border-radius:4px}.bind-time[data-v-3ab6b190],.bind-free-tip[data-v-3ab6b190],.bind-disabled-tip[data-v-3ab6b190]{margin:8px 0 0;font-size:12px;line-height:1.45;color:var(--color-text-tertiary, #999)}.bind-time[data-v-3ab6b190]{color:var(--color-text-secondary, #666)}.bind-actions[data-v-3ab6b190]{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px dashed var(--color-border, #e8e8e8);min-height:36px}.bind-na[data-v-3ab6b190]{font-size:12px;color:var(--color-text-tertiary, #999)}.nf[data-v-6b886879]{min-height:60vh;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--color-bg-body)}.code[data-v-6b886879]{font-size:96px;font-weight:800;line-height:1}.msg[data-v-6b886879]{color:var(--color-text-secondary);font-size:var(--font-size-md)}.row[data-v-1ba501cb]{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-md);cursor:pointer}.row[data-v-1ba501cb]:hover{background:var(--color-fill-hover)}.empty[data-v-1ba501cb]{padding:24px 0}.view[data-v-4a6a23e0]{display:flex;flex-direction:column;gap:var(--gap-card)}.banner[data-v-4a6a23e0]{display:flex;align-items:center;gap:16px;padding:24px;border-radius:var(--radius-lg);background:var(--color-primary-light)}.avatar[data-v-4a6a23e0]{flex-shrink:0;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center}.banner-body[data-v-4a6a23e0]{min-width:0}.hi[data-v-4a6a23e0]{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.tip[data-v-4a6a23e0]{color:var(--color-text-secondary);margin-top:4px}.meta-row[data-v-4a6a23e0]{margin-top:8px;display:flex;align-items:center;gap:10px;font-size:13px;color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}.meta-dot[data-v-4a6a23e0]{width:3px;height:3px;border-radius:50%;background:var(--color-text-disabled);flex-shrink:0}.row[data-v-4a6a23e0]{display:grid;grid-template-columns:1.35fr 1fr;gap:var(--gap-card);align-items:start}@media(max-width:760px){.row[data-v-4a6a23e0]{grid-template-columns:1fr}}.todo-list[data-v-4a6a23e0]{display:flex;flex-direction:column}.todo-row[data-v-4a6a23e0]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border);cursor:pointer}.todo-row[data-v-4a6a23e0]:last-child{border-bottom:none}.todo-title[data-v-4a6a23e0]{color:var(--color-text-primary);font-weight:500}.todo-sub[data-v-4a6a23e0]{margin-top:2px;font-size:12px;color:var(--color-text-tertiary)}.todo-time[data-v-4a6a23e0]{flex-shrink:0;font-size:12px;color:var(--color-text-tertiary)}.quick-group-label[data-v-4a6a23e0]{font-size:12px;color:var(--color-text-tertiary);margin:4px 0 8px}.quick-grid[data-v-4a6a23e0]{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:4px}.quick-item[data-v-4a6a23e0]{position:relative;border:1px solid var(--color-border);border-radius:var(--radius-md)}.quick-item.suggested[data-v-4a6a23e0]{border-style:dashed}.quick-body[data-v-4a6a23e0]{display:flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;cursor:pointer}.quick-name[data-v-4a6a23e0]{font-size:13px;color:var(--color-text-secondary)}.quick-star[data-v-4a6a23e0]{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-disabled);display:flex;align-items:center;justify-content:center;cursor:pointer}.quick-star.active[data-v-4a6a23e0]{color:var(--color-warning)}.notice-row[data-v-4a6a23e0]{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.notice-title[data-v-4a6a23e0]{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-primary)}.dot[data-v-4a6a23e0]{flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--color-primary)}.notice-time[data-v-4a6a23e0]{flex-shrink:0;color:var(--color-text-secondary);font-size:12px}.view[data-v-a20971bd]{display:flex;flex-direction:column;gap:var(--gap-card)}.banner[data-v-a20971bd]{display:flex;align-items:center;gap:16px;padding:24px;border-radius:var(--radius-lg);background:var(--color-primary-light)}.avatar[data-v-a20971bd]{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center}.hi[data-v-a20971bd]{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.tip[data-v-a20971bd]{color:var(--color-text-secondary);margin-top:4px}.stat[data-v-a20971bd]{display:flex;align-items:center;gap:16px}.stat-body[data-v-a20971bd]{min-width:0}.stat-ico[data-v-a20971bd]{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,currentColor 12%,transparent)}.stat-val[data-v-a20971bd]{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.1}.stat-label[data-v-a20971bd]{color:var(--color-text-secondary);margin-top:2px}.embed-wrap[data-v-dcc7858a]{height:100%;min-height:calc(100dvh - 160px)}.embed[data-v-dcc7858a]{display:block;width:100%;height:100%;min-height:calc(100dvh - 160px);border:0}.missing-route[data-v-1e499090]{min-height:60vh;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--color-text-secondary);text-align:center}h1[data-v-1e499090]{margin:0;color:var(--color-text-primary);font-size:var(--font-size-xl)}p[data-v-1e499090]{margin:0}code[data-v-1e499090]{padding:6px 8px;background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:4px;color:var(--color-danger)}.provider-card[data-v-659dbae9]{border-radius:var(--radius-lg);transition:border-color .15s,background-color .15s,opacity .15s}.provider-card[data-v-659dbae9] .n-card-content{display:flex;flex-direction:column;gap:10px}.provider-card.provider-card--enabled[data-v-659dbae9]{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 4%,var(--color-bg-container))}.provider-card.provider-card--disabled[data-v-659dbae9]{opacity:.72}.provider-card.provider-card--pending[data-v-659dbae9]{border-style:dashed;border-color:color-mix(in srgb,var(--color-warning) 55%,var(--color-border))}.card-head[data-v-659dbae9]{display:flex;align-items:flex-start;gap:10px;min-width:0}.badge[data-v-659dbae9]{flex-shrink:0;width:42px;height:42px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,currentColor 14%,transparent)}.head-meta[data-v-659dbae9]{min-width:0;flex:1}.name-row[data-v-659dbae9]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.name[data-v-659dbae9]{font-size:15px;font-weight:600;color:var(--color-text-primary);line-height:1.3}.code[data-v-659dbae9]{display:inline-block;margin-top:4px;font-size:12px;color:var(--color-text-tertiary);background:var(--color-fill);padding:1px 6px;border-radius:4px}.pending-tip[data-v-659dbae9]{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--color-warning-bg);color:var(--color-warning);font-size:12px}.card-body[data-v-659dbae9]{display:flex;flex-direction:column;gap:6px}.row[data-v-659dbae9]{display:flex;align-items:baseline;gap:8px;font-size:12px;min-width:0}.label[data-v-659dbae9]{flex-shrink:0;color:var(--color-text-tertiary);width:66px}.value[data-v-659dbae9]{min-width:0;color:var(--color-text-secondary)}.value.ellipsis[data-v-659dbae9]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.mask[data-v-659dbae9]{margin-left:4px;color:var(--color-text-tertiary)}.card-actions[data-v-659dbae9]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-top:8px;border-top:1px dashed var(--color-border)}.switch-group[data-v-659dbae9]{display:flex;align-items:center;gap:6px}.switch-text[data-v-659dbae9]{font-size:12px;color:var(--color-text-tertiary)}.test-result[data-v-659dbae9]{display:flex;flex-direction:column;gap:4px;font-size:12px}.test-head[data-v-659dbae9]{display:flex;align-items:center;gap:6px;font-weight:600;margin-bottom:2px}.test-head.ok[data-v-659dbae9]{color:var(--color-success)}.test-head.fail[data-v-659dbae9]{color:var(--color-danger)}.test-row[data-v-659dbae9]{color:var(--color-text-secondary)}.test-error[data-v-659dbae9]{color:var(--color-danger)}.hint[data-v-adc0e948]{font-size:12px;color:var(--color-text-tertiary, #999)}.model-row[data-v-adc0e948]{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 12px}.model-row+.model-row[data-v-adc0e948]{margin-top:8px}.model-row-head[data-v-adc0e948]{display:flex;align-items:center;gap:8px}.model-index[data-v-adc0e948]{font-size:12px;font-weight:600;color:var(--color-text-tertiary)}.model-row-spacer[data-v-adc0e948]{flex:1}.model-row-fields[data-v-adc0e948]{display:flex;gap:8px;margin-top:8px}.field[data-v-adc0e948]{flex:1;min-width:0}.mini-label[data-v-adc0e948]{display:block;margin-bottom:2px;font-size:11px;color:var(--color-text-tertiary)}.view[data-v-b955f807]{display:flex;flex-direction:column;gap:var(--gap-card, 16px)}.toolbar[data-v-b955f807]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar-spacer[data-v-b955f807]{flex:1}.empty[data-v-b955f807]{padding:64px 0}.view[data-v-d81fc5a2]{display:flex;flex-direction:column;gap:var(--gap-card)}.filter-bar[data-v-d81fc5a2]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 24px}.filter-item[data-v-d81fc5a2]{display:flex;flex-direction:column;gap:6px}.filter-label[data-v-d81fc5a2]{font-size:var(--font-size-sm, 13px);color:var(--color-text-secondary)}.date-filter-row[data-v-d81fc5a2]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.quick-range[data-v-d81fc5a2]{display:flex;gap:4px}.metric-body[data-v-d81fc5a2]{min-width:0}.metric-val[data-v-d81fc5a2]{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.1}.metric-suffix[data-v-d81fc5a2]{font-size:14px;font-weight:400;color:var(--color-text-secondary)}.metric-label[data-v-d81fc5a2]{color:var(--color-text-secondary);margin-top:4px}.share-cell[data-v-d81fc5a2]{display:flex;align-items:center;gap:8px}.share-bar[data-v-d81fc5a2]{flex:1;min-width:60px}.share-text[data-v-d81fc5a2]{flex:0 0 auto;color:var(--color-text-secondary);font-size:12px}.cache[data-v-21abb77a]{display:flex;flex-direction:column;gap:12px}.action-card[data-v-21abb77a]{height:100%}.head[data-v-21abb77a]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600}.desc[data-v-21abb77a]{margin:10px 0 14px;font-size:13px;line-height:1.6;color:var(--color-text-secondary, #999);min-height:42px}.note[data-v-21abb77a]{margin:4px 0 0;font-size:12px;line-height:1.6;color:var(--color-text-secondary, #999)}.group-extra-hint[data-v-3cb9c09b]{margin:-6px 0 12px;font-size:12px;color:var(--color-text-tertiary)}.ea[data-v-71792251]{max-width:920px}.ea-alert[data-v-71792251]{margin-bottom:16px;border-radius:10px}.ea-empty[data-v-71792251]{padding:48px 0}.ea-toolbar[data-v-71792251]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.ea-summary[data-v-71792251]{font-size:13px;color:var(--color-text-secondary, #666)}.ea-toolbar-actions[data-v-71792251]{display:flex;align-items:center;gap:8px}.ea-grid[data-v-71792251]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.ea-card[data-v-71792251]{display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:12px;border:1px solid var(--color-border, #e8e8e8);background:var(--color-bg-container, #fff);transition:border-color .15s ease,box-shadow .15s ease,opacity .15s ease}.ea-card[data-v-71792251]:hover{box-shadow:0 4px 14px #0000000f}.ea-card--off[data-v-71792251]{opacity:.85;background:var(--color-fill-quaternary, #fafafa)}.ea-card--on[data-v-71792251]{border-color:color-mix(in srgb,var(--color-primary, #18a058) 35%,var(--color-border, #e8e8e8))}.ea-card--na[data-v-71792251]{opacity:.72;background:var(--color-fill-quaternary, #f7f7f7);border-style:dashed}.ea-card-main[data-v-71792251]{display:flex;align-items:flex-start;gap:12px;min-width:0}.ea-avatar[data-v-71792251]{display:inline-flex;width:44px;height:44px;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;background:var(--color-fill, #f5f5f5)}.ea-meta[data-v-71792251]{min-width:0;flex:1}.ea-title-row[data-v-71792251]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.ea-name[data-v-71792251]{font-size:15px;font-weight:600;color:var(--color-text-primary, #1f1f1f);line-height:1.3}.ea-code[data-v-71792251]{font-size:12px;color:var(--color-text-tertiary, #999);background:var(--color-fill, #f5f5f5);padding:1px 6px;border-radius:4px}.ea-na-tip[data-v-71792251]{margin:8px 0 0;font-size:12px;line-height:1.45;color:var(--color-text-tertiary, #999)}.ea-switch[data-v-71792251]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px dashed var(--color-border, #e8e8e8)}.ea-switch+.ea-switch[data-v-71792251]{margin-top:-4px;padding-top:0;border-top:0}.ea-switch-label[data-v-71792251]{font-size:13px;color:var(--color-text-secondary, #666)}.sms-hint[data-v-c20e33fd]{margin:-6px 0 12px;font-size:12px;color:var(--color-text-tertiary)}.dict-layout[data-v-a7b1ad76]{flex-wrap:wrap;gap:var(--gap-card)}.dict-pane[data-v-a7b1ad76]{flex:1 1 380px;min-width:0}.clear-body[data-v-8324d44c]{display:flex;flex-direction:column;gap:10px}.clear-hint[data-v-8324d44c]{font-size:12px;color:var(--color-text-tertiary)}.attempts-title[data-v-8324d44c]{margin:16px 0 8px;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary)}.log-output[data-v-8324d44c]{margin:0;white-space:pre-wrap;word-break:break-all;font-family:var(--font-family-mono, ui-monospace, monospace);font-size:12px;line-height:1.5}.log-error[data-v-8324d44c]{color:var(--color-danger)}.view[data-v-34ed407f]{gap:var(--gap-card)}.job-tables[data-v-34ed407f],.job-tables[data-v-34ed407f]>*{min-height:240px}.stat[data-v-34ed407f]{display:flex;align-items:center;gap:16px}.stat-ico[data-v-34ed407f]{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,currentColor 12%,transparent)}.stat-val[data-v-34ed407f]{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.1}.stat-label[data-v-34ed407f]{color:var(--color-text-secondary);margin-top:2px}.kv-editor[data-v-aabac178]{display:flex;flex-direction:column;gap:8px;width:100%}.kv-row[data-v-aabac178]{display:flex;gap:8px;align-items:center}.kv-hint[data-v-aabac178]{font-size:12px;color:var(--color-text-tertiary)}.job-hint[data-v-aabac178]{font-size:12px;color:var(--color-text-tertiary);white-space:nowrap;line-height:1.4}.job-inline[data-v-aabac178]{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;min-width:0}.job-sec-text[data-v-aabac178]{font-size:var(--font-size-sm);font-weight:600}.job-sections[data-v-aabac178] .n-collapse-item{margin:0}.job-sections[data-v-aabac178] .n-collapse-item__header{padding:10px 0}.job-sections[data-v-aabac178] .n-collapse-item__content-inner{padding:4px 0 12px}.job-sections[data-v-aabac178] .n-form-item{margin-bottom:14px}.job-sections[data-v-aabac178] .n-form-item-feedback-wrapper:empty,.job-sections[data-v-aabac178] .n-form-item-feedback-wrapper:has(:empty){min-height:0}.job-advanced[data-v-aabac178] .n-form-item{margin-bottom:18px}.job-advanced[data-v-aabac178] .n-form-item-label{padding-right:12px}.exception[data-v-d5b09c10],.exception[data-v-9e9a338d]{margin:0;white-space:pre-wrap;word-break:break-all;font-family:var(--font-mono, ui-monospace, monospace);font-size:12px;line-height:1.5;color:var(--color-danger)}.perm-hint[data-v-0a7963e1],.link-hint[data-v-5b265f65]{font-size:12px;color:var(--color-text-tertiary, #999);line-height:1.5}.view[data-v-d019bdd8]{display:flex;flex-direction:column;gap:var(--gap-card)}[data-v-d019bdd8] .row-no{font-variant-numeric:tabular-nums;white-space:nowrap}[data-v-d019bdd8] .row-no__path{color:var(--color-text-disabled)}[data-v-d019bdd8] .row-no__self{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.hint[data-v-ea6672c5]{font-size:12px;color:var(--color-text-secondary, #999)}.monitor[data-v-8ea4d493]{display:flex;flex-direction:column;gap:12px}.bar[data-v-8ea4d493]{display:flex;justify-content:flex-end}.metric[data-v-8ea4d493]{font-size:28px;font-weight:600;line-height:1.2;margin-bottom:10px}.metric.small[data-v-8ea4d493]{font-size:18px}.unit[data-v-8ea4d493]{font-size:16px;margin-left:2px;color:var(--color-text-secondary, #999)}.sub[data-v-8ea4d493]{margin-top:8px;font-size:12px;color:var(--color-text-secondary, #999)}.rows[data-v-8ea4d493]{display:grid;gap:8px;font-size:13px}.rows .k[data-v-8ea4d493]{display:inline-block;width:88px;color:var(--color-text-secondary, #999)}.rows .v[data-v-8ea4d493]{word-break:break-all}.notice-actions-editor[data-v-5c6d1da0]{width:100%}.notice-action-row[data-v-5c6d1da0]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%}.notice-actions-hint[data-v-5c6d1da0]{display:block;margin-top:4px;font-size:12px;line-height:1.4}.view[data-v-72e7ef38],.view[data-v-ef7d111d]{gap:var(--gap-card)}.grant-menu-table[data-v-6c2563ee]{display:flex;flex-direction:column;gap:10px}.grant-toolbar[data-v-6c2563ee]{display:flex;gap:8px}.grant-grid[data-v-6c2563ee]{border:1px solid var(--n-border-color, #e0e0e6);border-radius:4px;font-size:13px;overflow:hidden}.grant-header[data-v-6c2563ee]{display:flex;background:var(--n-th-color, #fafafc);font-weight:600;font-size:12px;border-bottom:1px solid var(--n-border-color, #e0e0e6)}.grant-header>div[data-v-6c2563ee]{padding:8px 12px}.grant-group[data-v-6c2563ee]{display:flex;border-bottom:1px solid var(--n-border-color, #e0e0e6)}.grant-group[data-v-6c2563ee]:last-child{border-bottom:none}.grant-group>.col-catalog[data-v-6c2563ee]{display:flex;align-items:center;gap:4px;padding:8px 12px;border-right:1px solid var(--n-border-color, #e0e0e6);cursor:pointer;-webkit-user-select:none;user-select:none}.collapse-arrow[data-v-6c2563ee]{display:inline-block;font-size:10px;transition:transform .2s;color:var(--n-text-color-disabled, #999)}.collapse-arrow.is-collapsed[data-v-6c2563ee]{transform:rotate(-90deg)}.group-rows[data-v-6c2563ee]{flex:1;min-width:0}.grant-row[data-v-6c2563ee]{display:flex;border-bottom:1px solid var(--n-border-color, #e0e0e6)}.grant-row[data-v-6c2563ee]:last-child{border-bottom:none}.col-catalog[data-v-6c2563ee]{width:130px;flex-shrink:0}.col-menu[data-v-6c2563ee]{width:140px;flex-shrink:0;display:flex;align-items:center;padding:6px 12px;border-right:1px solid var(--n-border-color, #e0e0e6)}.anchor-tag[data-v-6c2563ee]{font-size:12px}.col-buttons[data-v-6c2563ee]{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:6px 12px;min-width:0}.no-buttons[data-v-6c2563ee]{color:var(--n-text-color-disabled, #c0c0c0)}.grant-empty[data-v-6c2563ee]{text-align:center;padding:24px;color:var(--n-text-color-disabled, #c0c0c0)}.reset-hint[data-v-104f8da0]{margin:0 0 12px;font-size:var(--font-size-sm, 13px);color:var(--color-text-secondary, #888)}.pw-field[data-v-f2afa7e7]{flex:1;min-width:0}.avatar-field[data-v-f2afa7e7]{display:flex;align-items:center;gap:12px}.user-layout[data-v-99109370]{--side-filter-width: 248px}
1
+ .reauth-hint[data-v-f489ff1a]{margin:0 0 12px;color:var(--n-text-color-3);font-size:13px;line-height:1.5}:root{--color-gray-900: #181a2a;--color-gray-800: #2f313f;--color-gray-700: #5d5f6a;--color-gray-600: #7b7c85;--color-gray-500: #85868e;--color-gray-400: #bababf;--color-gray-300: #d1d1d1;--color-gray-200: #e3e3e3;--color-gray-100: #f1f1f1;--color-gray-50: #f0f0f0;--color-white: #ffffff;--color-primary: #646cff;--color-primary-hover: #7d84ff;--color-primary-pressed: #5259d1;--color-primary-light: #f0f0ff;--color-success: #00a43b;--color-success-bg: #e0f4e7;--color-warning: #a88400;--color-warning-bg: #fff8e0;--color-danger: #d15054;--color-danger-bg: #ffeced;--color-info: #0090b5;--color-info-bg: #e0f2f6;--color-bg-body: #f2f8f5;--color-bg-app: linear-gradient( 135deg, #f7fbf9 0%, #edf7f3 55%, #f7fbf9 100% );--color-bg-container: rgba(255, 255, 255, .78);--color-bg-container-solid: #fefefe;--color-bg-elevated: #ffffff;--color-text-primary: #111827;--color-text-secondary: #374151;--color-text-tertiary: #6b7280;--color-text-disabled: #9ca3af;--color-border: #d7dbe0;--color-border-strong: #bfc5cd;--color-fill: #eef1f5;--color-fill-hover: #e5e9ef;--color-bg-input: #ffffff;--color-fill-disabled: #eef1f5;--color-mask: rgba(24, 26, 42, .45);--color-header-bg: rgba(255, 255, 255, .82);--font-family-base: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;--font-family-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--font-size-xs: 12px;--line-height-xs: 18px;--font-size-sm: 13px;--line-height-sm: 20px;--font-size-base: 14px;--line-height-base: 22px;--font-size-md: 16px;--line-height-md: 24px;--font-size-lg: 20px;--line-height-lg: 28px;--font-size-xl: 24px;--line-height-xl: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--space-4: 4px;--space-8: 8px;--space-12: 12px;--space-16: 16px;--space-24: 24px;--space-32: 32px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--shadow-1: 0 1px 2px rgba(24, 26, 42, .05), 0 2px 6px rgba(24, 26, 42, .06);--shadow-2: 0 10px 30px rgba(24, 26, 42, .12);--shadow-3: 0 16px 48px rgba(24, 26, 42, .18);--transition-fast: .15s ease;--transition-base: .2s ease}:root[data-theme=dark]{--color-primary: #14b8a6;--color-primary-hover: #2dd4bf;--color-primary-pressed: #0f766e;--color-primary-light: rgba(20, 184, 166, .16);--color-success: #34d399;--color-success-bg: rgba(16, 185, 129, .14);--color-warning: #fbbf24;--color-warning-bg: rgba(251, 191, 36, .14);--color-danger: #fb7185;--color-danger-bg: rgba(244, 63, 94, .16);--color-info: #38bdf8;--color-info-bg: rgba(56, 189, 248, .14);--color-bg-body: #020617;--color-bg-app: linear-gradient( 135deg, #020617 0%, #0f172a 55%, #020617 100% );--color-bg-container: rgba(18, 28, 46, .9);--color-bg-container-solid: #121c2e;--color-bg-elevated: #182234;--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-tertiary: #94a3b8;--color-text-disabled: #64748b;--color-border: rgba(71, 85, 105, .4);--color-border-strong: rgba(100, 116, 139, .5);--color-fill: #0f172a;--color-fill-hover: #1a2436;--color-bg-input: #0f172a;--color-fill-disabled: #1b2434;--color-mask: rgba(2, 6, 23, .72);--color-header-bg: rgba(15, 23, 42, .7);--shadow-1: 0 1px 0 rgba(255, 255, 255, .04) inset, 0 2px 8px rgba(2, 6, 23, .3);--shadow-2: 0 10px 30px rgba(2, 6, 23, .45), 0 0 0 1px rgba(51, 65, 85, .35);--shadow-3: 0 16px 48px rgba(2, 6, 23, .55), 0 0 0 1px rgba(51, 65, 85, .4)}:root{--pad-page: 14px;--gap-card: 12px;--row-h: 58px;--sidebar-w: 236px;--sidebar-w-collapsed: 76px;--rail-w: 64px;--header-h: 62px}:root[data-density=compact]{--pad-page: 10px;--gap-card: 8px;--row-h: 48px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text-primary);background:var(--color-bg-app);-webkit-font-smoothing:antialiased}:root[data-theme=dark] body{background-attachment:fixed}a{color:var(--color-primary);text-decoration:none}.tabular{font-variant-numeric:tabular-nums}.n-card{border:1px solid var(--color-border)}:root:not([data-theme=dark]) .n-card:not(.n-modal){background:linear-gradient(145deg,#ffffffe0,#ffffffad);box-shadow:inset 0 1px #ffffffe6,0 8px 24px #2d695a14;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}:root:not([data-theme=dark]) .n-card.n-modal{background:var(--color-bg-elevated);box-shadow:var(--shadow-3);backdrop-filter:none;-webkit-backdrop-filter:none}:root[data-theme=dark] .n-card{background:#121c2e;border-color:#47556966;box-shadow:0 8px 24px #02061738}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#64748b85}:root[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#94a3b8b3}:root[data-theme=dark] ::selection{background:#14b8a647;color:#ecfeff}html.theme-switching,html.theme-switching *,html.theme-switching *:before,html.theme-switching *:after{transition:background-color .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#90939966;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#909399b3}::-webkit-scrollbar-track{background:transparent}html[data-gray]{filter:grayscale(1)}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.fade-slide-enter-active,.fade-slide-leave-active{transition:opacity .24s ease,transform .24s ease}.fade-slide-enter-from{opacity:0;transform:translate(16px)}.fade-slide-leave-to{opacity:0;transform:translate(-16px)}.n-menu,.n-dropdown-menu{user-select:none;-webkit-user-select:none}.n-data-table{--table-selected-bg: var(--color-primary-light)}.n-data-table .n-data-table-tr:nth-child(2n)>.n-data-table-td{background-color:var(--n-merged-td-color-striped)}.n-data-table .n-data-table-tr:has(>.n-data-table-td--selection .n-checkbox--checked,>.n-data-table-td--selection .n-radio--checked)>.n-data-table-td,.smart-table .smart-table-row--active>.n-data-table-td{background-color:var(--table-selected-bg)}.n-data-table .n-data-table-tr.row-selected>.n-data-table-td{background-color:var(--table-selected-bg)}.n-data-table .n-data-table-tr.row-selected>.n-data-table-td--fixed-left,.n-data-table .n-data-table-tr.row-selected>.n-data-table-td--fixed-right{background-color:var(--table-fixed-bg);background-image:linear-gradient(var(--table-selected-bg),var(--table-selected-bg))}.n-data-table .n-data-table-tr.row-selected>.n-data-table-td:first-child{box-shadow:inset 3px 0 0 var(--color-primary)}.n-data-table .n-data-table-th,.n-data-table .n-data-table-td{border-right:1px solid var(--n-merged-border-color);white-space:nowrap}.n-data-table .n-data-table-th--last,.n-data-table .n-data-table-td--last-col{border-right:0}.n-data-table .n-data-table-th--fixed-left,.n-data-table .n-data-table-th--fixed-right{background-color:var(--color-fill)}.n-data-table{--table-fixed-bg: var(--color-bg-container-solid)}.n-modal .n-data-table,.n-drawer .n-data-table,.n-popover .n-data-table{--table-fixed-bg: var(--n-merged-td-color)}.n-data-table .n-data-table-td--fixed-left,.n-data-table .n-data-table-td--fixed-right{background-color:var(--table-fixed-bg)}.smart-table .n-data-table .smart-table-row--active>.n-data-table-td--fixed-left,.smart-table .n-data-table .smart-table-row--active>.n-data-table-td--fixed-right{background-color:var(--table-fixed-bg);background-image:linear-gradient(var(--smart-table-active-row-bg, rgba(99, 102, 241, .08)),var(--smart-table-active-row-bg, rgba(99, 102, 241, .08)))}.n-data-table .n-data-table-td--last-col .n-space{gap:0!important}.n-data-table .n-data-table-td .n-space:has(.n-button){flex-wrap:nowrap!important;min-width:max-content;white-space:nowrap}.n-data-table .n-data-table-td .n-space:has(.n-button)>.n-space-item,.n-data-table .n-data-table-td .n-button{white-space:nowrap}.table-zoom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--color-bg-body);padding:16px;display:flex;flex-direction:column;min-height:0;gap:8px}.table-zoom>.n-data-table,.table-zoom>.route-table,.table-zoom>.table-zoom-body{flex:1;min-height:0}.row-sort .drag-handle{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-sm, 6px);color:var(--color-text-tertiary);cursor:grab;transition:color var(--transition-base, .2s ease),background-color var(--transition-base, .2s ease)}.row-sort .drag-handle:hover{background:var(--color-fill-hover);color:var(--color-primary)}.row-sort .drag-handle:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.row-sort .drag-handle:active{cursor:grabbing}.row-sort .row-chosen>td{position:relative;z-index:1;background:var(--color-bg-elevated);box-shadow:0 6px 16px #0000001f;cursor:grabbing}.row-sort .row-ghost>td{background:var(--color-primary-light);color:var(--color-primary)}.row-sort .row-ghost>td:first-child{box-shadow:inset 3px 0 0 var(--color-primary)}.row-sort .row-fallback{display:none!important}.row-sort.is-dragging .n-data-table-tr:not(.row-ghost){opacity:.5}.row-sort.is-dragging .n-data-table-td{transition:none}.side-filter{flex:0 0 var(--side-filter-width, 224px);display:flex;flex-direction:column;gap:8px;min-height:0;padding:12px 10px;border-radius:var(--radius-lg, 12px);background:var(--color-bg-container);box-shadow:var(--shadow-1);transition:flex-basis var(--transition-base, .2s ease)}.side-filter__head{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:24px;padding-left:6px}.side-filter__actions{display:flex;flex:none;margin-left:auto;align-items:center;gap:2px}.side-filter__body{display:flex;flex:1;flex-direction:column;gap:2px;min-height:0;overflow-y:auto;scrollbar-width:thin}.side-filter__divider{height:1px;margin:6px 8px;background:var(--color-border)}.side-filter__empty{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:24px;color:var(--color-text-tertiary);font-size:var(--font-size-sm, 13px)}.side-row{position:relative;display:flex;align-items:center;gap:8px;width:100%;height:34px;padding:0 10px;border:0;border-radius:var(--radius-md, 10px);background:transparent;color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-base, 14px);text-align:left;cursor:pointer;transition:background var(--transition-fast, .15s ease),color var(--transition-fast, .15s ease)}.side-row:hover{background:var(--color-fill-hover);color:var(--color-text-primary)}.side-row.is-active{background:var(--color-primary-light);color:var(--color-primary);font-weight:var(--font-weight-medium, 500)}.side-row.is-active:before,.side-tree .n-tree-node--selected:before{content:"";position:absolute;top:50%;left:0;width:3px;height:16px;border-radius:0 3px 3px 0;background:var(--color-primary);transform:translateY(-50%)}.side-row__icon,.side-row__dot{flex:none}.side-row__dot{width:6px;height:6px;margin:0 4px;border-radius:50%;background:var(--color-border-strong);transition:background var(--transition-fast, .15s ease)}.side-row:hover .side-row__dot{background:var(--color-text-tertiary)}.side-row.is-active .side-row__dot{background:currentcolor}.side-row__label{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.side-row__count{flex:none;min-width:22px;height:18px;padding:0 6px;border-radius:9px;background:var(--color-fill);color:var(--color-text-tertiary);font-size:var(--font-size-xs, 12px);font-variant-numeric:tabular-nums;line-height:18px;text-align:center;transition:background var(--transition-fast, .15s ease),color var(--transition-fast, .15s ease)}.side-row.is-active .side-row__count{background:var(--color-primary);color:var(--color-white, #fff)}.side-tree.n-tree{flex:1;min-height:0;overflow:auto;scrollbar-width:thin}.side-tree .n-tree-node{position:relative;padding-right:4px}.side-tree .n-tree-node--selected .n-tree-node-content__text{color:var(--color-primary);font-weight:var(--font-weight-medium, 500)}.side-tree .n-tree-node-content__suffix{opacity:0;transition:opacity var(--transition-fast, .15s ease)}.side-tree .n-tree-node:hover .n-tree-node-content__suffix,.side-tree .n-tree-node--selected .n-tree-node-content__suffix{opacity:1}.side-actions{display:flex;align-items:center;gap:2px}@media(max-width:1280px){.side-filter{flex-basis:min(var(--side-filter-width, 224px),200px)}}.form-section+.form-section{margin-top:16px}.form-section__title{margin-bottom:10px;color:var(--color-text-primary);font-weight:var(--font-weight-semibold, 600)}.form-section--fieldset,.form-section--panel{min-width:0;border:none;padding:0}.form-section--fieldset{margin-inline:0}.form-section--fieldset>legend{display:block;width:100%;margin-bottom:12px;padding:0 0 8px;border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-weight:var(--font-weight-semibold, 600)}.form-section--panel>.form-section__title,.form-section--panel>.head{display:flex;box-sizing:content-box;align-items:center;justify-content:space-between;height:var(--panel-head-h, 30px);margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.page-view:has(>.smart-table),.page-view:has(>.fill-page),.page-view:has(>.side-page){height:100%}.page-view>.smart-table{height:100%;min-height:0}.fill-page{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.fill-page>*{flex-shrink:0}.side-page{display:flex;gap:12px;align-items:stretch;height:100%;min-height:0}.side-page>.smart-table{flex:1;align-self:stretch;min-width:0;min-height:0;height:100%}.fill-page>.smart-table,.fill-main,:is(.fill-main,.fill-split,.fill-tabs .n-tab-pane,.fill-pass>.n-spin-content)>.smart-table{flex:1 1 auto;min-height:0}.fill-main{display:flex;flex-direction:column}:is(.page-view,.fill-page,.side-page,.fill-main,.fill-split,.fill-tabs .n-tab-pane,.fill-pass>.n-spin-content)>.smart-table>.smart-table-card{display:flex;flex:1;flex-direction:column;min-height:0}:is(.page-view,.fill-page,.side-page,.fill-main,.fill-split,.fill-tabs .n-tab-pane,.fill-pass>.n-spin-content)>.smart-table>.smart-table-card>:is(.n-card-content,.n-card__content){display:flex;flex:1;flex-direction:column;min-height:0}:is(.page-view,.fill-page,.side-page,.fill-main,.fill-split,.fill-tabs .n-tab-pane,.fill-pass>.n-spin-content)>.smart-table>.smart-table-card>:is(.n-card-content,.n-card__content)>.n-data-table{flex:1;min-height:0}.fill-card{display:flex;flex:1;flex-direction:column;min-height:0}.fill-card>:is(.n-card-content,.n-card__content){display:flex;flex:1;flex-direction:column;min-height:0}.fill-card>:is(.n-card-content,.n-card__content)>.n-data-table{flex:1;min-height:0}.fill-tabs{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.fill-tabs>.n-tabs-nav{flex-shrink:0}.fill-tabs>.n-tabs-pane-wrapper,.fill-tabs>.n-tabs-pane-wrapper>.n-tab-pane,.fill-tabs>.n-tab-pane{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.fill-split{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--fill-split-gap, var(--gap-card, 12px));min-height:0}.fill-split--row{flex-direction:row}.fill-split>.fill-main,.fill-split>.smart-table{flex:1 1 0;min-height:0}.fill-pass,.fill-pass>.n-spin-content{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.fill-page--soft{height:auto;min-height:100%;overflow:visible}.chart[data-v-558fd76a]{width:100%;height:320px}.code-block[data-v-953af54c]{position:relative;font-size:12px;line-height:1.5}.copy-btn[data-v-953af54c]{position:absolute;top:0;right:0}.cron-editor[data-v-8ed8204a]{width:100%}.cron-rows[data-v-8ed8204a]{display:flex;flex-direction:column;gap:10px;width:100%}.cron-row[data-v-8ed8204a]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cron-num[data-v-8ed8204a]{width:96px}.cron-dow[data-v-8ed8204a]{width:120px}.cron-list[data-v-8ed8204a]{flex:1;min-width:200px}.cron-sep[data-v-8ed8204a]{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.cron-hint[data-v-8ed8204a]{margin-top:6px;font-size:12px;color:var(--color-text-tertiary)}.cron-preview[data-v-8ed8204a]{margin-top:12px;padding:10px 12px;border-radius:var(--radius-md);background:var(--color-fill);display:flex;flex-direction:column;gap:8px}.cron-warn[data-v-8ed8204a]{margin-bottom:2px}.cron-preview-error[data-v-8ed8204a]{color:var(--color-danger);font-size:var(--font-size-sm)}.cron-preview-row[data-v-8ed8204a]{display:flex;gap:12px;align-items:flex-start}.cron-preview-label[data-v-8ed8204a]{flex:0 0 auto;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:22px}.cron-code[data-v-8ed8204a]{font-family:var(--font-family-mono, ui-monospace, monospace);font-size:13px;line-height:22px}.cron-occurrences[data-v-8ed8204a]{display:flex;flex-wrap:wrap;gap:2px 16px}.cron-occurrence[data-v-8ed8204a]{font-family:var(--font-family-mono, ui-monospace, monospace);font-size:13px;line-height:22px;font-variant-numeric:tabular-nums}.cron-empty[data-v-8ed8204a]{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.detail-page[data-v-6733c96a]{display:flex;flex-direction:column;gap:var(--gap-card, 16px)}.detail-header[data-v-6733c96a]{display:flex;align-items:center;gap:8px}.detail-title[data-v-6733c96a]{margin:0;font-size:var(--font-size-lg, 18px);font-weight:600;color:var(--color-text-primary)}.detail-actions[data-v-6733c96a]{margin-left:auto}.error-boundary[data-v-3b4e3577]{min-height:60vh;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;color:var(--color-text-secondary)}h2[data-v-3b4e3577]{margin:0;color:var(--color-text-primary);font-size:var(--font-size-lg)}.desc[data-v-3b4e3577]{margin:0;max-width:460px}.detail[data-v-3b4e3577]{max-width:100%;padding:6px 10px;overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-container);color:var(--color-danger);font-family:var(--font-family-mono);font-size:var(--font-size-xs)}.export-cols-head[data-v-6b86f7cf]{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--n-border-color)}.smart-form--fullscreen{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;border-radius:0}.smart-form--fullscreen>.n-card__content{flex:1;min-height:0;overflow:auto}.import-steps[data-v-20fd3250]{margin-bottom:20px}.import-pane[data-v-20fd3250]{min-height:200px}.import-upload-icon[data-v-20fd3250]{margin-bottom:12px;color:var(--n-text-color-3)}.import-mapping-head[data-v-20fd3250],.import-mapping-row[data-v-20fd3250]{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}.import-mapping-head[data-v-20fd3250]{font-weight:600;font-size:13px;margin-bottom:8px;color:var(--n-text-color-2)}.import-mapping-row[data-v-20fd3250]{margin-bottom:8px}.import-mapping-header[data-v-20fd3250]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.import-strategy[data-v-20fd3250]{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}[data-v-20fd3250] .import-cell{padding:2px;border-radius:4px}[data-v-20fd3250] .import-cell--error{background:var(--color-danger-bg)}[data-v-20fd3250] .import-cell--dup{background:var(--color-warning-bg)}.pw-meter[data-v-81b0f6bf]{margin:-8px 0 14px}.pw-bar[data-v-81b0f6bf]{display:flex;gap:6px}.pw-bar span[data-v-81b0f6bf]{flex:1;height:4px;border-radius:2px;transition:background var(--transition-fast)}.pw-level[data-v-81b0f6bf]{margin-top:6px;font-size:12px}.pw-rules[data-v-81b0f6bf]{margin:8px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2px 12px}.pw-rules li[data-v-81b0f6bf]{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-tertiary)}.pw-rules li.ok[data-v-81b0f6bf]{color:#5aa86e}.select-table[data-v-78ca7f91]{height:520px;min-height:0;display:flex;flex-direction:column;gap:12px}.select-table-search[data-v-78ca7f91]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.select-table-search[data-v-78ca7f91] .n-input{flex:0 1 200px}.select-table-search .keyword-input[data-v-78ca7f91]{flex:1 1 320px;min-width:260px}.select-table-search[data-v-78ca7f91] .n-button{flex:none}.select-table-grid[data-v-78ca7f91]{flex:1;min-height:0}[data-v-78ca7f91] .select-table-row-selected td{background-color:var(--table-selected-bg)}.user-picker[data-v-41b95328]{display:flex;gap:12px;min-height:400px}.panel-header[data-v-41b95328]{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;padding:0 0 8px;border-bottom:1px solid var(--n-border-color, #e0e0e6);margin-bottom:8px}.picker-tree[data-v-41b95328]{width:160px;flex-shrink:0;overflow:auto;border-right:1px solid var(--n-border-color, #e0e0e6);padding-right:12px}.picker-table[data-v-41b95328]{flex:1;min-width:0;overflow:hidden}.picker-selected[data-v-41b95328]{width:200px;flex-shrink:0;border-left:1px solid var(--n-border-color, #e0e0e6);padding-left:12px;display:flex;flex-direction:column}.selected-list[data-v-41b95328]{flex:1;overflow:auto;max-height:380px}.selected-item[data-v-41b95328]{display:flex;align-items:center;justify-content:space-between;padding:4px 0;font-size:13px;border-bottom:1px solid var(--n-border-color, #e0e0e6)}.selected-item[data-v-41b95328]:last-child{border-bottom:none}.selected-name[data-v-41b95328]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-account[data-v-41b95328]{color:var(--n-text-color-disabled, #999);font-size:12px;margin-left:2px}.palette[data-v-7f4fa2eb]{width:560px;max-width:92vw;background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);overflow:hidden}.search[data-v-7f4fa2eb]{display:flex;align-items:center;gap:8px;padding:6px 16px;border-bottom:1px solid var(--color-border)}.sicon[data-v-7f4fa2eb]{color:var(--color-text-tertiary);flex-shrink:0}.list[data-v-7f4fa2eb]{padding:8px}.item[data-v-7f4fa2eb]{display:flex;align-items:center;gap:10px;height:44px;padding:0 12px;border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-primary)}.item.active[data-v-7f4fa2eb]{background:var(--color-primary-light);color:var(--color-primary)}.iicon[data-v-7f4fa2eb]{flex-shrink:0}.ititle[data-v-7f4fa2eb]{font-size:var(--font-size-md)}.ititle[data-v-7f4fa2eb] mark{background:transparent;color:var(--color-primary);font-weight:600}.ipath[data-v-7f4fa2eb]{margin-left:auto;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.empty[data-v-7f4fa2eb]{padding:32px 0}.hint[data-v-7f4fa2eb]{padding:8px 16px;border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.site-logo[data-v-22940506]{display:block;width:auto;max-width:100%;object-fit:contain}.oauth-brand-badge[data-v-d7509bf4]{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;border-radius:50%;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none;flex-shrink:0}.oauth-brand-icon[data-v-d7509bf4]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.oauth-brand-letter[data-v-d7509bf4]{font-size:12px;font-weight:700;color:var(--color-text-secondary, #666);line-height:1}.login-form[data-v-edac6de7]{width:100%}.lf-pending-alert[data-v-edac6de7]{margin-bottom:16px;border-radius:10px;text-align:left}.lf-brand[data-v-edac6de7]{display:flex;align-items:center;gap:10px;margin-bottom:18px}.lf-word[data-v-edac6de7]{font-size:22px;font-weight:700;letter-spacing:.2px;color:var(--lf-title, var(--color-text-primary))}.lf-title[data-v-edac6de7]{font-size:var(--font-size-lg);font-weight:600;margin:0 0 22px;color:var(--lf-title, var(--color-text-primary))}.lf-hint-line[data-v-edac6de7]{margin:-14px 0 18px;font-size:13px;color:var(--lf-hint, var(--color-text-tertiary))}.row[data-v-edac6de7]{margin:4px 0 20px}.lf-between[data-v-edac6de7]{display:flex;align-items:center;justify-content:space-between}.lf-link[data-v-edac6de7]{font-size:13px;color:var(--color-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.lf-link[data-v-edac6de7]:hover{opacity:.85}.lf-link-disabled[data-v-edac6de7]{color:var(--lf-hint, var(--color-text-tertiary));cursor:default;pointer-events:none}.lf-captcha[data-v-edac6de7]{display:flex;gap:10px;width:100%;align-items:stretch}.lf-captcha-img[data-v-edac6de7]{flex:0 0 auto;height:40px;min-width:96px;padding:0;border:1px solid var(--lf-border, var(--color-border));border-radius:var(--radius-md);background:#fff;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center}.lf-captcha-img[data-v-edac6de7] svg{height:100%;width:auto}.lf-send-btn[data-v-edac6de7]{flex:0 0 auto;height:40px;min-width:96px;padding:0 12px;border:1px solid var(--lf-border, var(--color-border));border-radius:var(--radius-md);background:var(--color-fill);font-size:13px;color:var(--lf-title, var(--color-text-secondary));cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}.lf-send-btn[data-v-edac6de7]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.lf-send-btn[data-v-edac6de7]:disabled{opacity:.6;cursor:not-allowed}.hero-btn[data-v-edac6de7]{width:100%;height:48px;border:none;border-radius:var(--radius-md);color:#fff;font-size:var(--font-size-md);font-weight:600;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hero-btn[data-v-edac6de7]:hover{transform:translateY(-2px)}.hero-btn[data-v-edac6de7]:active{transform:translateY(0)}.hero-btn[data-v-edac6de7]:disabled{opacity:.7;cursor:not-allowed}.lf-divider[data-v-edac6de7]{display:flex;align-items:center;gap:14px;margin:24px 0 16px}.lf-divider[data-v-edac6de7]:before,.lf-divider[data-v-edac6de7]:after{content:"";flex:1;height:1px;background:var(--lf-border, var(--color-border))}.lf-divider span[data-v-edac6de7]{font-size:12px;color:var(--lf-hint, var(--color-text-tertiary))}.lf-sso[data-v-edac6de7]{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.lf-sso-btn[data-v-edac6de7]{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:inherit;text-decoration:none;cursor:pointer;overflow:hidden;box-sizing:border-box;flex-shrink:0}.lf-sso-btn[data-v-edac6de7]:hover{text-decoration:none;color:inherit}.lf-sso-btn[data-v-edac6de7]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lf-sso-more[data-v-edac6de7]{width:32px;height:32px;border:1px solid var(--lf-border, var(--color-border));background:var(--color-fill, #f5f5f5);color:var(--color-text-tertiary, #999)}.lf-foot[data-v-edac6de7]{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;font-size:12px;color:var(--lf-hint, var(--color-text-tertiary))}.lf-foot a[data-v-edac6de7]{color:inherit;text-decoration:none}.lf-foot a[data-v-edac6de7]:hover{color:var(--color-primary)}.lf-ver[data-v-edac6de7]{opacity:.75}.aurora[data-v-e994c489]{position:relative;height:100dvh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(140% 120% at 50% 0%,#12162b,#0a0b12 55%,#06060c)}.aurora[data-v-e994c489]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(circle at 50% 45%,#000 0%,transparent 72%);mask-image:radial-gradient(circle at 50% 45%,#000 0%,transparent 72%)}.aurora[data-v-e994c489]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:radial-gradient(120% 120% at 50% 42%,transparent 52%,rgba(0,0,0,.6) 100%)}.aurora-bg[data-v-e994c489]{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;z-index:0;background:radial-gradient(38% 38% at 18% 22%,var(--a1),transparent 68%),radial-gradient(42% 42% at 82% 18%,var(--a2),transparent 70%),radial-gradient(48% 48% at 60% 88%,var(--a3),transparent 72%),radial-gradient(34% 34% at 88% 68%,var(--a4),transparent 66%);filter:blur(28px);animation:aurora-move-e994c489 18s ease-in-out infinite alternate}@keyframes aurora-move-e994c489{0%{transform:translate3d(-3%,-2%,0) rotate(0) scale(1.05)}50%{transform:translate3d(3%,2%,0) rotate(4deg) scale(1.16)}to{transform:translate3d(-2%,3%,0) rotate(-3deg) scale(1.08)}}.stars[data-v-e994c489]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:radial-gradient(1.5px 1.5px at 20% 30%,rgba(255,255,255,.7),transparent 60%),radial-gradient(1px 1px at 70% 62%,rgba(255,255,255,.5),transparent 60%),radial-gradient(1.5px 1.5px at 42% 82%,rgba(255,255,255,.6),transparent 60%),radial-gradient(1px 1px at 85% 22%,rgba(255,255,255,.5),transparent 60%),radial-gradient(1px 1px at 55% 14%,rgba(255,255,255,.55),transparent 60%),radial-gradient(1.5px 1.5px at 12% 66%,rgba(255,255,255,.5),transparent 60%),radial-gradient(1px 1px at 92% 48%,rgba(255,255,255,.45),transparent 60%);animation:twinkle-e994c489 5s ease-in-out infinite}@keyframes twinkle-e994c489{0%,to{opacity:.45}50%{opacity:.9}}.orb[data-v-e994c489]{position:absolute;z-index:0;border-radius:50%;filter:blur(55px);opacity:.55}.orb-1[data-v-e994c489]{width:340px;height:340px;background:var(--a1);top:-60px;left:-40px;animation:float-y-e994c489 14s ease-in-out infinite}.orb-2[data-v-e994c489]{width:280px;height:280px;background:var(--a4);bottom:-80px;right:-40px;animation:float-y-e994c489 16s ease-in-out infinite reverse}.orb-3[data-v-e994c489]{width:200px;height:200px;background:var(--a3);top:38%;right:18%;animation:float-y-e994c489 20s ease-in-out infinite}@keyframes float-y-e994c489{0%,to{transform:translateY(0)}50%{transform:translateY(-30px)}}.aurora-content[data-v-e994c489]{position:relative;z-index:3;width:100%;max-width:520px;padding:24px}.halo[data-v-e994c489]{position:absolute;z-index:0;top:8px;right:8px;bottom:8px;left:8px;border-radius:36px;background:conic-gradient(from 0deg,var(--a1),var(--a2),var(--a3),var(--a4),var(--a1));filter:blur(48px);opacity:.6;animation:spin-e994c489 16s linear infinite}@keyframes spin-e994c489{to{transform:rotate(360deg)}}.glass-card[data-v-e994c489]{--lf-title: #fff;--lf-hint: rgba(255, 255, 255, .5);position:relative;z-index:1;width:100%;padding:46px;border-radius:20px;background:#ffffff12;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(26px) saturate(150%);-webkit-backdrop-filter:blur(26px) saturate(150%);box-shadow:0 30px 80px #0000008c,0 0 60px -12px var(--a2),inset 0 1px #fff3;overflow:hidden}.glass-card[data-v-e994c489]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;padding:1px;background:linear-gradient(135deg,var(--a1),transparent 45%,var(--a2));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.9}.glass-card[data-v-e994c489]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:linear-gradient(120deg,transparent 36%,rgba(255,255,255,.1) 48%,transparent 60%);background-size:220% 100%;background-repeat:no-repeat;animation:sheen-e994c489 8s ease-in-out infinite}@keyframes sheen-e994c489{0%{background-position:180% 0}55%,to{background-position:-60% 0}}.grain[data-v-e994c489]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.aurora.light[data-v-e994c489]{background:radial-gradient(140% 120% at 50% 0%,#eef1fb,#f6f7fc 55%,#fff)}.aurora.light[data-v-e994c489]:before{background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px)}.aurora.light[data-v-e994c489]:after{background:radial-gradient(120% 120% at 50% 42%,transparent 55%,rgba(120,130,180,.12) 100%)}.aurora.light .stars[data-v-e994c489]{display:none}.aurora.light .halo[data-v-e994c489]{opacity:.5}.aurora.light .glass-card[data-v-e994c489]{--lf-title: var(--color-text-primary);--lf-hint: var(--color-text-tertiary);background:#ffffff9e;border:1px solid rgba(214,218,235,.9);box-shadow:0 30px 80px #505aa02e,0 0 60px -12px var(--a2),inset 0 1px #ffffffe6}.aurora.light .glass-card[data-v-e994c489]:before{display:none}.aurora.light .glass-card[data-v-e994c489]:after{display:none}@media(max-width:480px){.aurora-content[data-v-e994c489]{padding:16px}.glass-card[data-v-e994c489]{padding:32px 24px}}@media(prefers-reduced-motion:reduce){.aurora-bg[data-v-e994c489],.orb[data-v-e994c489],.stars[data-v-e994c489],.halo[data-v-e994c489],.glass-card[data-v-e994c489]:after{animation:none}.glass-card[data-v-e994c489]:after{display:none}}.login-hero-panel[data-v-a4cecbe6]{min-width:0}.logo[data-v-a4cecbe6]{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:700;color:#2a3c82}.bar[data-v-a4cecbe6]{width:40px;height:3px;border-radius:2px;margin:28px 0 20px}.headline[data-v-a4cecbe6]{font-size:42px;line-height:1.2;font-weight:800;color:var(--color-text-primary);margin:0}.sub[data-v-a4cecbe6]{color:var(--color-text-secondary);margin:16px 0 28px}.points[data-v-a4cecbe6]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}.points li[data-v-a4cecbe6]{display:flex;align-items:center;gap:10px;color:var(--color-text-secondary)}.split[data-v-b4c7728a]{height:100dvh;display:grid;grid-template-columns:1.15fr .85fr;background:var(--color-bg-body)}.panel[data-v-b4c7728a]{position:relative;overflow:hidden;background:var(--color-bg-body);border-right:1px solid var(--color-border)}.panel[data-v-b4c7728a]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(127,127,127,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(127,127,127,.08) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(circle at 30% 40%,#000,transparent 72%);mask-image:radial-gradient(circle at 30% 40%,#000,transparent 72%)}.panel-aurora[data-v-b4c7728a]{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(40% 40% at 25% 20%,var(--a1),transparent 68%),radial-gradient(45% 45% at 80% 78%,var(--a2),transparent 70%);filter:blur(45px);opacity:.9;animation:panel-move-b4c7728a 22s ease-in-out infinite alternate}@keyframes panel-move-b4c7728a{0%{transform:translate3d(-3%,-2%,0) scale(1.05)}to{transform:translate3d(3%,3%,0) scale(1.12)}}.panel-inner[data-v-b4c7728a]{position:relative;z-index:1;padding:64px 56px;display:flex;flex-direction:column;height:100%;justify-content:center}.form-wrap[data-v-b4c7728a]{position:relative;display:flex;flex-direction:column;background:var(--color-bg-container)}.mid[data-v-b4c7728a]{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}.form-inner[data-v-b4c7728a]{width:100%;max-width:340px;animation:fade-up-b4c7728a .6s cubic-bezier(.16,1,.3,1) both}.greet[data-v-b4c7728a]{font-size:26px;font-weight:700;letter-spacing:-.01em;color:var(--color-text-primary);margin:0 0 6px}.greet-sub[data-v-b4c7728a]{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin:0 0 26px}.foot[data-v-b4c7728a]{margin:0;padding:18px 24px 22px;text-align:center;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.foot a[data-v-b4c7728a]{color:inherit;text-decoration:none}.foot a[data-v-b4c7728a]:hover{color:var(--color-primary)}.foot-ver[data-v-b4c7728a]{margin-left:8px;opacity:.75}@keyframes fade-up-b4c7728a{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media(max-width:900px){.split[data-v-b4c7728a]{grid-template-columns:1fr}.panel[data-v-b4c7728a]{display:none}}@media(prefers-reduced-motion:reduce){.panel-aurora[data-v-b4c7728a],.form-inner[data-v-b4c7728a]{animation:none}}.spotlight[data-v-2d0bde1c]{position:relative;height:100dvh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--color-bg-body)}.mesh[data-v-2d0bde1c]{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(30% 40% at 15% 20%,var(--s1),transparent 60%),radial-gradient(30% 40% at 85% 80%,var(--s2),transparent 60%);opacity:.9}.spot[data-v-2d0bde1c]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(340px 340px at var(--mx) var(--my),var(--spot),transparent 60%);transition:background .12s ease-out}.card[data-v-2d0bde1c]{position:relative;z-index:2;width:100%;max-width:460px;padding:46px;background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-3);animation:fade-up-2d0bde1c .6s cubic-bezier(.16,1,.3,1) both}@keyframes fade-up-2d0bde1c{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media(max-width:480px){.spotlight[data-v-2d0bde1c]{padding:0 16px}.card[data-v-2d0bde1c]{padding:32px 24px}}@media(prefers-reduced-motion:reduce){.spot[data-v-2d0bde1c]{transition:none}.card[data-v-2d0bde1c]{animation:none}}.login-shell[data-v-846afb99]{position:relative;height:100dvh;overflow:hidden}.login-topbar[data-v-846afb99]{position:fixed;top:20px;right:24px;z-index:10;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.login-tools[data-v-846afb99]{display:flex;gap:2px;padding:4px;border-radius:999px;background:#12141c8c;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 6px 20px #00000047}.tool-btn[data-v-846afb99]{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:30px;padding:0 10px;border:none;cursor:pointer;border-radius:999px;background:transparent;font-size:13px;font-weight:600;color:#ffffff9e;transition:color .2s,background .2s}.tool-btn[data-v-846afb99]:hover{color:#fff}.tool-btn[data-v-846afb99]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.skin-switch[data-v-846afb99]{display:flex;gap:2px;padding:4px;border-radius:999px;background:#12141c8c;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 6px 20px #00000047}.skin-seg[data-v-846afb99]{border:none;cursor:pointer;padding:6px 16px;border-radius:999px;background:transparent;font-size:13px;font-weight:600;color:#ffffff9e;transition:color .2s,background .2s}.skin-seg[data-v-846afb99]:hover{color:#fff}.skin-seg.active[data-v-846afb99]{background:var(--color-primary);color:#fff}.oauth-cb[data-v-843f1b99]{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--color-bg-layout, #f5f6f8)}.oauth-box[data-v-843f1b99]{display:flex;flex-direction:column;align-items:center;gap:14px}.oauth-msg[data-v-843f1b99]{font-size:15px;color:var(--color-text-primary)}.oauth-sub[data-v-843f1b99]{font-size:13px;color:var(--color-text-tertiary)}.oauth-err-icon[data-v-843f1b99]{font-size:44px;color:var(--color-error, #e88080)}.mfa-page[data-v-b6e82c2c]{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--color-body, #f5f7fa)}.mfa-card[data-v-b6e82c2c]{width:min(100%,520px)}.mfa-header[data-v-b6e82c2c]{display:flex;align-items:center;justify-content:space-between;gap:12px}.mfa-qr-wrap[data-v-b6e82c2c]{display:flex;justify-content:center;margin:0 0 16px;padding:16px;background:#fff;border-radius:8px;border:1px solid var(--color-border, #e5e7eb)}.mfa-manual-hint[data-v-b6e82c2c]{margin:-8px 0 12px;font-size:12px;color:var(--color-text-tertiary, #9ca3af);line-height:1.5}.recovery-codes[data-v-b6e82c2c]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recovery-codes[data-v-b6e82c2c] .n-alert,.recovery-codes[data-v-b6e82c2c] .n-button{grid-column:1 / -1}.recovery-code[data-v-b6e82c2c]{padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--color-hover, #f4f4f5);border-radius:4px}@media(max-width:480px){.mfa-page[data-v-b6e82c2c]{padding:12px}.recovery-codes[data-v-b6e82c2c]{grid-template-columns:1fr}}.boot-error[data-v-c523298c]{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;background:var(--color-bg-app)}h1[data-v-c523298c]{margin:0;color:var(--color-text-primary);font-size:var(--font-size-xl)}p[data-v-c523298c]{margin:0 0 8px;max-width:480px;color:var(--color-text-secondary)}.wrap[data-v-f50f3abd]{min-height:100dvh;background:var(--color-bg-body);padding:80px 24px;display:flex;flex-direction:column;align-items:center}.head[data-v-f50f3abd]{display:flex;align-items:center;gap:12px;margin-bottom:32px}.head h1[data-v-f50f3abd]{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary)}.grid[data-v-f50f3abd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--gap-card);width:100%;max-width:900px}.card[data-v-f50f3abd]{position:relative;display:flex;align-items:center;gap:14px;padding:20px;background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast)}.card.current[data-v-f50f3abd]{border-color:var(--color-primary)}.card[data-v-f50f3abd]:hover{transform:translateY(-3px);border-color:var(--color-primary);box-shadow:var(--shadow-2)}.card[data-v-f50f3abd]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.ico[data-v-f50f3abd]{color:var(--color-primary)}.name[data-v-f50f3abd]{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary)}.code[data-v-f50f3abd]{font-size:var(--font-size-sm);color:var(--color-text-tertiary);font-family:var(--font-family-mono)}.def[data-v-f50f3abd]{position:absolute;top:10px;right:12px}.row[data-v-195679a9]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}.lbl[data-v-195679a9]{color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap}.ctl[data-v-195679a9]{display:flex;align-items:center;min-width:0}.grid[data-v-66443dff]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding-inline:3px}.cell[data-v-66443dff]{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer}.card[data-v-66443dff]{width:100%;height:62px;padding:6px;border:none;border-radius:4px;background:var(--color-bg-container);box-shadow:0 1px 3px #141b2d1a,0 0 0 2px transparent;cursor:pointer;transition:box-shadow .15s ease}.cell:hover .card[data-v-66443dff],.card.on[data-v-66443dff]{box-shadow:0 1px 3px #141b2d1a,0 0 0 2px var(--color-primary)}.inner[data-v-66443dff]{--strong: var(--color-primary);--p300: color-mix(in srgb, var(--color-primary) 58%, var(--color-bg-container));--p200: color-mix(in srgb, var(--color-primary) 34%, var(--color-bg-container));display:flex;gap:5px;width:100%;height:100%}.inner.row[data-v-66443dff]{flex-direction:row}.inner.col[data-v-66443dff]{flex-direction:column}.inner i[data-v-66443dff],.inner .vwrap[data-v-66443dff],.inner .hwrap[data-v-66443dff]{border-radius:3px}.strong[data-v-66443dff]{background:var(--strong)}.p300[data-v-66443dff]{background:var(--p300)}.p200[data-v-66443dff]{background:var(--p200)}.sider[data-v-66443dff]{width:18%;flex-shrink:0}.rail[data-v-66443dff]{width:9%;flex-shrink:0}.subsider[data-v-66443dff]{width:16%;flex-shrink:0}.header[data-v-66443dff]{flex-shrink:0;height:13px}.header.full[data-v-66443dff]{width:100%}.main[data-v-66443dff]{flex:1}.vwrap[data-v-66443dff]{flex:1;display:flex;flex-direction:column;gap:5px}.vwrap .header[data-v-66443dff]{width:100%}.hwrap[data-v-66443dff]{flex:1;display:flex;flex-direction:row;gap:5px}.label[data-v-66443dff]{margin:0;text-align:center;font-size:var(--font-size-xs);line-height:var(--line-height-xs);color:var(--color-text-secondary)}.label.on[data-v-66443dff]{color:var(--color-primary);font-weight:var(--font-weight-medium)}.tabs[data-v-adecf714]{height:100%}.footer-actions[data-v-adecf714]{display:flex;flex-direction:column;gap:8px;width:100%}.ri[data-v-adecf714]{margin-right:5px;font-size:15px}.seg[data-v-adecf714]{display:flex;width:100%}.seg[data-v-adecf714] .n-radio-button{flex:1;display:flex;align-items:center;justify-content:center}.accents[data-v-adecf714]{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:12px}.dot[data-v-adecf714]{position:relative;width:100%;max-width:30px;margin:0 auto;aspect-ratio:1;padding:0;border:none;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 0 1px #00000014;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.dot[data-v-adecf714]:hover{transform:scale(1.12)}.dot.on[data-v-adecf714]{transform:scale(1.1);box-shadow:0 0 0 2px var(--color-bg-container),0 0 0 4px var(--color-primary)}.tick[data-v-adecf714]{color:#fff;font-size:14px;filter:drop-shadow(0 0 1px rgba(0,0,0,.35))}.notice-panel[data-v-1ac49123]{width:360px;max-width:92vw}.notice-head[data-v-1ac49123]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 4px}.notice-title[data-v-1ac49123]{font-weight:600;font-size:var(--font-size-md)}.notice-empty[data-v-1ac49123]{padding:32px 0}.notice-list[data-v-1ac49123]{margin:0;padding:0;list-style:none}.notice-item[data-v-1ac49123]{position:relative;display:flex;gap:8px;padding:12px 16px;cursor:pointer;border-top:1px solid var(--n-divider-color, rgba(128, 128, 128, .15));transition:background-color .2s}.notice-item[data-v-1ac49123]:hover{background-color:#80808014}.notice-item.unread[data-v-1ac49123]{background-color:color-mix(in srgb,var(--color-primary) 4%,transparent)}.notice-item.unread[data-v-1ac49123]:hover{background-color:color-mix(in srgb,var(--color-primary) 9%,transparent)}.notice-item.read[data-v-1ac49123]{opacity:.55}.dot[data-v-1ac49123]{position:absolute;left:6px;top:18px;width:6px;height:6px;border-radius:50%;background:var(--color-primary, #d03050)}.notice-body[data-v-1ac49123]{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.line1[data-v-1ac49123]{display:flex;align-items:center;gap:6px;min-width:0}.item-title[data-v-1ac49123]{flex:1;min-width:0;font-size:var(--font-size-sm)}.item-title.unread[data-v-1ac49123]{font-weight:600}.item-actions-mark[data-v-1ac49123]{flex-shrink:0;color:var(--color-primary, #d03050)}.item-snippet[data-v-1ac49123]{font-size:12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.item-time[data-v-1ac49123]{font-size:11px}.notice-foot[data-v-1ac49123]{display:flex;justify-content:center;padding:8px;border-top:1px solid var(--n-divider-color, rgba(128, 128, 128, .15))}.bar[data-v-8dc4f67f]{height:100%;display:flex;align-items:center;gap:12px;padding:0 16px}.left[data-v-8dc4f67f]{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden}.brand[data-v-8dc4f67f]{display:flex;align-items:center;gap:8px;color:var(--color-text-primary);font-weight:600;flex-shrink:0}.brand-name[data-v-8dc4f67f]{font-size:var(--font-size-md)}.title[data-v-8dc4f67f]{font-size:var(--font-size-md);font-weight:500;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uname[data-v-8dc4f67f]{margin-left:6px}.center[data-v-8dc4f67f]{flex:1;min-width:0;overflow:hidden}.right[data-v-8dc4f67f]{display:flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}@media(max-width:767px){.bar[data-v-8dc4f67f]{gap:8px;padding:0 8px}.mobile-hide[data-v-8dc4f67f]{display:none}}.sidenav[data-v-0b56822a]{height:100%;display:flex;flex-direction:column;background:var(--color-bg-container);overflow:hidden}.brand[data-v-0b56822a]{display:flex;align-items:center;gap:10px;height:var(--header-h);padding:0 22px;color:var(--color-text-primary);font-weight:600;overflow:hidden;white-space:nowrap;flex-shrink:0}.rail .brand[data-v-0b56822a]{padding:0;justify-content:center}.brand-name[data-v-0b56822a]{font-size:20px;font-weight:700;color:var(--color-text-primary)}.sidenav[data-v-0b56822a] .n-scrollbar{flex:1;min-height:0}.tabsbar[data-v-8fc6542a]{height:42px;display:flex;align-items:center;padding:0 8px;background:var(--color-bg-container);border-bottom:1px solid var(--color-border)}.strip[data-v-8fc6542a]{display:flex;align-items:center;gap:6px;padding:5px 0}.chip[data-v-8fc6542a]{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-fill);color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s,background .15s,border-color .15s}.chip[data-v-8fc6542a]:hover{color:var(--color-text-primary)}.chip.active[data-v-8fc6542a]{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.chip[data-v-8fc6542a]:focus-visible,.chip-close[data-v-8fc6542a]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.chip-pin[data-v-8fc6542a]{opacity:.7}.chip-close[data-v-8fc6542a]{border-radius:50%;opacity:.6}.chip-close[data-v-8fc6542a]:hover{opacity:1;background:var(--color-fill)}.layout[data-v-aa6e9642]{display:grid;height:100dvh;overflow:hidden;background:var(--color-bg-app)}.mode-vertical[data-v-aa6e9642],.mode-vertical-mix[data-v-aa6e9642],.mode-vertical-hybrid-header-first[data-v-aa6e9642]{grid-template-columns:auto 1fr;grid-template-rows:var(--header-h) 1fr;grid-template-areas:"aside header" "aside content"}.mode-top-hybrid-sidebar-first[data-v-aa6e9642],.mode-top-hybrid-header-first[data-v-aa6e9642]{grid-template-columns:auto 1fr;grid-template-rows:var(--header-h) 1fr;grid-template-areas:"header header" "aside content"}.mode-horizontal[data-v-aa6e9642],.mode-mobile[data-v-aa6e9642]{grid-template-columns:1fr;grid-template-rows:var(--header-h) 1fr;grid-template-areas:"header" "content"}.aside[data-v-aa6e9642]{grid-area:aside;height:100%;overflow:hidden;border-right:1px solid var(--color-border);background:var(--color-bg-container);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:width .2s ease}.aside--mix[data-v-aa6e9642]{display:flex}.aside--mix .rail[data-v-aa6e9642]{width:var(--rail-w);flex-shrink:0;border-right:1px solid var(--color-border)}.aside--mix .l2col[data-v-aa6e9642]{flex:1;min-width:0}.header[data-v-aa6e9642]{grid-area:header;display:flex;align-items:stretch;border-bottom:1px solid var(--color-border);background:var(--color-header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10}.header--static[data-v-aa6e9642]{-webkit-backdrop-filter:none;backdrop-filter:none}.hbg[data-v-aa6e9642]{align-self:center;margin-left:8px}.apph[data-v-aa6e9642]{flex:1;min-width:0;height:100%}.content[data-v-aa6e9642]{grid-area:content;display:flex;flex-direction:column;min-height:0;overflow:hidden}.tabs[data-v-aa6e9642]{flex-shrink:0}.page[data-v-aa6e9642]{flex:1;min-height:0;overflow:auto;padding:var(--pad-page)}.personal-layout[data-v-45e1c4ea]{display:flex;gap:16px;align-items:stretch;min-height:100%}.personal-sider[data-v-45e1c4ea]{width:200px;flex-shrink:0;background:var(--color-bg-container, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:8px;padding:8px 0 12px}.personal-main[data-v-45e1c4ea]{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.personal-mobile-nav[data-v-45e1c4ea]{max-width:360px}.personal-content[data-v-45e1c4ea]{min-width:0}.personal-layout.is-mobile[data-v-45e1c4ea]{flex-direction:column}.avatar-field[data-v-5c4afffc]{display:flex;align-items:center;gap:12px}.sec-desc[data-v-7afb110e]{margin:0 0 16px;color:var(--color-text-2, #666);line-height:1.5}.sec-note[data-v-7afb110e]{margin:20px 0 0;font-size:12px;color:var(--color-text-3, #999);line-height:1.5}[data-v-83e5e6b1] .device-cell{display:flex;align-items:center;gap:8px}.bind-page[data-v-3ab6b190]{max-width:920px}.bind-header[data-v-3ab6b190]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}.bind-title[data-v-3ab6b190]{margin:0 0 6px;font-size:18px;font-weight:600;line-height:1.3;color:var(--color-text-primary, #1f1f1f)}.bind-hint[data-v-3ab6b190]{margin:0;max-width:520px;font-size:13px;line-height:1.55;color:var(--color-text-secondary, #666)}.bind-summary[data-v-3ab6b190]{display:inline-flex;align-items:baseline;gap:4px;padding:8px 12px;border-radius:10px;background:var(--color-fill, #f5f5f5);font-size:13px;color:var(--color-text-secondary, #666);flex-shrink:0}.bind-summary-num[data-v-3ab6b190]{font-size:18px;font-weight:700;color:var(--color-primary, #646cff);font-variant-numeric:tabular-nums}.bind-summary-sep[data-v-3ab6b190]{opacity:.5}.bind-summary-label[data-v-3ab6b190]{margin-left:4px}.bind-alert[data-v-3ab6b190]{margin-bottom:16px;border-radius:10px}.bind-empty[data-v-3ab6b190]{padding:48px 0}.bind-grid[data-v-3ab6b190]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.bind-card[data-v-3ab6b190] .n-card-content{display:flex;flex-direction:column;gap:14px}.bind-card[data-v-3ab6b190]:hover{box-shadow:0 4px 14px #0000000f}.bind-card.bind-card--bound[data-v-3ab6b190]{border-color:color-mix(in srgb,var(--color-success, #18a058) 40%,var(--color-border, #e8e8e8));background:color-mix(in srgb,var(--color-success, #18a058) 4%,var(--color-bg-container, #fff))}.bind-card.bind-card--disabled[data-v-3ab6b190]{opacity:.78;background:var(--color-fill-quaternary, #f7f7f7);border-style:dashed}.bind-card-main[data-v-3ab6b190]{display:flex;align-items:flex-start;gap:12px;min-width:0}.bind-avatar[data-v-3ab6b190]{position:relative;display:inline-flex;width:48px;height:48px;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%;overflow:visible;background:var(--color-fill, #f5f5f5)}.bind-avatar[data-v-3ab6b190] .oauth-brand-badge,.bind-avatar[data-v-3ab6b190] img{border-radius:50%;overflow:hidden}.bind-avatar--bound[data-v-3ab6b190]{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success, #18a058) 35%,transparent)}.bind-check[data-v-3ab6b190]{position:absolute;right:-2px;bottom:-2px;display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;border-radius:50%;background:var(--color-success, #18a058);color:#fff;border:2px solid var(--color-bg-container, #fff);line-height:0}.bind-meta[data-v-3ab6b190]{min-width:0;flex:1}.bind-title-row[data-v-3ab6b190]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.bind-name[data-v-3ab6b190]{font-size:15px;font-weight:600;color:var(--color-text-primary, #1f1f1f);line-height:1.3}.bind-code[data-v-3ab6b190]{display:inline-block;font-size:12px;color:var(--color-text-tertiary, #999);background:var(--color-fill, #f5f5f5);padding:1px 6px;border-radius:4px}.bind-time[data-v-3ab6b190],.bind-free-tip[data-v-3ab6b190],.bind-disabled-tip[data-v-3ab6b190]{margin:8px 0 0;font-size:12px;line-height:1.45;color:var(--color-text-tertiary, #999)}.bind-time[data-v-3ab6b190]{color:var(--color-text-secondary, #666)}.bind-actions[data-v-3ab6b190]{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px dashed var(--color-border, #e8e8e8);min-height:36px}.bind-na[data-v-3ab6b190]{font-size:12px;color:var(--color-text-tertiary, #999)}.nf[data-v-6b886879]{min-height:60vh;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--color-bg-body)}.code[data-v-6b886879]{font-size:96px;font-weight:800;line-height:1}.msg[data-v-6b886879]{color:var(--color-text-secondary);font-size:var(--font-size-md)}.row[data-v-1ba501cb]{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-md);cursor:pointer}.row[data-v-1ba501cb]:hover{background:var(--color-fill-hover)}.empty[data-v-1ba501cb]{padding:24px 0}.view[data-v-4a6a23e0]{display:flex;flex-direction:column;gap:var(--gap-card)}.banner[data-v-4a6a23e0]{display:flex;align-items:center;gap:16px;padding:24px;border-radius:var(--radius-lg);background:var(--color-primary-light)}.avatar[data-v-4a6a23e0]{flex-shrink:0;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center}.banner-body[data-v-4a6a23e0]{min-width:0}.hi[data-v-4a6a23e0]{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.tip[data-v-4a6a23e0]{color:var(--color-text-secondary);margin-top:4px}.meta-row[data-v-4a6a23e0]{margin-top:8px;display:flex;align-items:center;gap:10px;font-size:13px;color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}.meta-dot[data-v-4a6a23e0]{width:3px;height:3px;border-radius:50%;background:var(--color-text-disabled);flex-shrink:0}.row[data-v-4a6a23e0]{display:grid;grid-template-columns:1.35fr 1fr;gap:var(--gap-card);align-items:start}@media(max-width:760px){.row[data-v-4a6a23e0]{grid-template-columns:1fr}}.todo-list[data-v-4a6a23e0]{display:flex;flex-direction:column}.todo-row[data-v-4a6a23e0]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border);cursor:pointer}.todo-row[data-v-4a6a23e0]:last-child{border-bottom:none}.todo-title[data-v-4a6a23e0]{color:var(--color-text-primary);font-weight:500}.todo-sub[data-v-4a6a23e0]{margin-top:2px;font-size:12px;color:var(--color-text-tertiary)}.todo-time[data-v-4a6a23e0]{flex-shrink:0;font-size:12px;color:var(--color-text-tertiary)}.quick-group-label[data-v-4a6a23e0]{font-size:12px;color:var(--color-text-tertiary);margin:4px 0 8px}.quick-grid[data-v-4a6a23e0]{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:4px}.quick-item[data-v-4a6a23e0]{position:relative;border:1px solid var(--color-border);border-radius:var(--radius-md)}.quick-item.suggested[data-v-4a6a23e0]{border-style:dashed}.quick-body[data-v-4a6a23e0]{display:flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;cursor:pointer}.quick-name[data-v-4a6a23e0]{font-size:13px;color:var(--color-text-secondary)}.quick-star[data-v-4a6a23e0]{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-disabled);display:flex;align-items:center;justify-content:center;cursor:pointer}.quick-star.active[data-v-4a6a23e0]{color:var(--color-warning)}.notice-row[data-v-4a6a23e0]{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.notice-title[data-v-4a6a23e0]{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-primary)}.dot[data-v-4a6a23e0]{flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--color-primary)}.notice-time[data-v-4a6a23e0]{flex-shrink:0;color:var(--color-text-secondary);font-size:12px}.view[data-v-a20971bd]{display:flex;flex-direction:column;gap:var(--gap-card)}.banner[data-v-a20971bd]{display:flex;align-items:center;gap:16px;padding:24px;border-radius:var(--radius-lg);background:var(--color-primary-light)}.avatar[data-v-a20971bd]{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center}.hi[data-v-a20971bd]{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.tip[data-v-a20971bd]{color:var(--color-text-secondary);margin-top:4px}.stat[data-v-a20971bd]{display:flex;align-items:center;gap:16px}.stat-body[data-v-a20971bd]{min-width:0}.stat-ico[data-v-a20971bd]{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,currentColor 12%,transparent)}.stat-val[data-v-a20971bd]{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.1}.stat-label[data-v-a20971bd]{color:var(--color-text-secondary);margin-top:2px}.embed-wrap[data-v-dcc7858a]{height:100%;min-height:calc(100dvh - 160px)}.embed[data-v-dcc7858a]{display:block;width:100%;height:100%;min-height:calc(100dvh - 160px);border:0}.missing-route[data-v-1e499090]{min-height:60vh;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--color-text-secondary);text-align:center}h1[data-v-1e499090]{margin:0;color:var(--color-text-primary);font-size:var(--font-size-xl)}p[data-v-1e499090]{margin:0}code[data-v-1e499090]{padding:6px 8px;background:var(--color-bg-container);border:1px solid var(--color-border);border-radius:4px;color:var(--color-danger)}.provider-card[data-v-659dbae9]{border-radius:var(--radius-lg);transition:border-color .15s,background-color .15s,opacity .15s}.provider-card[data-v-659dbae9] .n-card-content{display:flex;flex-direction:column;gap:10px}.provider-card.provider-card--enabled[data-v-659dbae9]{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 4%,var(--color-bg-container))}.provider-card.provider-card--disabled[data-v-659dbae9]{opacity:.72}.provider-card.provider-card--pending[data-v-659dbae9]{border-style:dashed;border-color:color-mix(in srgb,var(--color-warning) 55%,var(--color-border))}.card-head[data-v-659dbae9]{display:flex;align-items:flex-start;gap:10px;min-width:0}.badge[data-v-659dbae9]{flex-shrink:0;width:42px;height:42px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,currentColor 14%,transparent)}.head-meta[data-v-659dbae9]{min-width:0;flex:1}.name-row[data-v-659dbae9]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.name[data-v-659dbae9]{font-size:15px;font-weight:600;color:var(--color-text-primary);line-height:1.3}.code[data-v-659dbae9]{display:inline-block;margin-top:4px;font-size:12px;color:var(--color-text-tertiary);background:var(--color-fill);padding:1px 6px;border-radius:4px}.pending-tip[data-v-659dbae9]{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--color-warning-bg);color:var(--color-warning);font-size:12px}.card-body[data-v-659dbae9]{display:flex;flex-direction:column;gap:6px}.row[data-v-659dbae9]{display:flex;align-items:baseline;gap:8px;font-size:12px;min-width:0}.label[data-v-659dbae9]{flex-shrink:0;color:var(--color-text-tertiary);width:66px}.value[data-v-659dbae9]{min-width:0;color:var(--color-text-secondary)}.value.ellipsis[data-v-659dbae9]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.mask[data-v-659dbae9]{margin-left:4px;color:var(--color-text-tertiary)}.card-actions[data-v-659dbae9]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-top:8px;border-top:1px dashed var(--color-border)}.switch-group[data-v-659dbae9]{display:flex;align-items:center;gap:6px}.switch-text[data-v-659dbae9]{font-size:12px;color:var(--color-text-tertiary)}.test-result[data-v-659dbae9]{display:flex;flex-direction:column;gap:4px;font-size:12px}.test-head[data-v-659dbae9]{display:flex;align-items:center;gap:6px;font-weight:600;margin-bottom:2px}.test-head.ok[data-v-659dbae9]{color:var(--color-success)}.test-head.fail[data-v-659dbae9]{color:var(--color-danger)}.test-row[data-v-659dbae9]{color:var(--color-text-secondary)}.test-error[data-v-659dbae9]{color:var(--color-danger)}.hint[data-v-adc0e948]{font-size:12px;color:var(--color-text-tertiary, #999)}.model-row[data-v-adc0e948]{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 12px}.model-row+.model-row[data-v-adc0e948]{margin-top:8px}.model-row-head[data-v-adc0e948]{display:flex;align-items:center;gap:8px}.model-index[data-v-adc0e948]{font-size:12px;font-weight:600;color:var(--color-text-tertiary)}.model-row-spacer[data-v-adc0e948]{flex:1}.model-row-fields[data-v-adc0e948]{display:flex;gap:8px;margin-top:8px}.field[data-v-adc0e948]{flex:1;min-width:0}.mini-label[data-v-adc0e948]{display:block;margin-bottom:2px;font-size:11px;color:var(--color-text-tertiary)}.view[data-v-b955f807]{display:flex;flex-direction:column;gap:var(--gap-card, 16px)}.toolbar[data-v-b955f807]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar-spacer[data-v-b955f807]{flex:1}.empty[data-v-b955f807]{padding:64px 0}.view[data-v-d81fc5a2]{display:flex;flex-direction:column;gap:var(--gap-card)}.filter-bar[data-v-d81fc5a2]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 24px}.filter-item[data-v-d81fc5a2]{display:flex;flex-direction:column;gap:6px}.filter-label[data-v-d81fc5a2]{font-size:var(--font-size-sm, 13px);color:var(--color-text-secondary)}.date-filter-row[data-v-d81fc5a2]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.quick-range[data-v-d81fc5a2]{display:flex;gap:4px}.metric-body[data-v-d81fc5a2]{min-width:0}.metric-val[data-v-d81fc5a2]{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.1}.metric-suffix[data-v-d81fc5a2]{font-size:14px;font-weight:400;color:var(--color-text-secondary)}.metric-label[data-v-d81fc5a2]{color:var(--color-text-secondary);margin-top:4px}.share-cell[data-v-d81fc5a2]{display:flex;align-items:center;gap:8px}.share-bar[data-v-d81fc5a2]{flex:1;min-width:60px}.share-text[data-v-d81fc5a2]{flex:0 0 auto;color:var(--color-text-secondary);font-size:12px}.cache[data-v-21abb77a]{display:flex;flex-direction:column;gap:12px}.action-card[data-v-21abb77a]{height:100%}.head[data-v-21abb77a]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600}.desc[data-v-21abb77a]{margin:10px 0 14px;font-size:13px;line-height:1.6;color:var(--color-text-secondary, #999);min-height:42px}.note[data-v-21abb77a]{margin:4px 0 0;font-size:12px;line-height:1.6;color:var(--color-text-secondary, #999)}.mock[data-v-7ad8e65f]{display:flex;flex-direction:column;width:880px;height:540px;overflow:hidden;border-radius:10px;background:var(--color-bg-container);box-shadow:0 10px 30px #0000001f;font-size:14px}.chrome[data-v-7ad8e65f]{display:flex;flex:none;align-items:flex-end;gap:10px;height:38px;padding:0 12px;background:var(--color-fill)}.lights[data-v-7ad8e65f]{display:flex;align-self:center;gap:6px}.lights i[data-v-7ad8e65f]{width:11px;height:11px;border-radius:50%;background:#ff5f57}.lights i[data-v-7ad8e65f]:nth-child(2){background:#febc2e}.lights i[data-v-7ad8e65f]:nth-child(3){background:#28c840}.btab[data-v-7ad8e65f]{display:flex;align-items:center;gap:7px;max-width:260px;height:30px;padding:0 14px;border-radius:8px 8px 0 0;background:var(--color-bg-container);font-size:12.5px}.btab span[data-v-7ad8e65f]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app[data-v-7ad8e65f]{display:grid;flex:1;grid-template-columns:196px 1fr;min-height:0}.side[data-v-7ad8e65f]{padding:16px 12px;border-right:1px solid var(--color-border)}.brand[data-v-7ad8e65f]{display:flex;align-items:center;gap:9px;padding:4px 6px;margin-bottom:14px;overflow:hidden;border-radius:8px;font-size:15px;font-weight:600;white-space:nowrap}.side i[data-v-7ad8e65f]{display:block;height:10px;margin:16px 8px;border-radius:5px;background:var(--color-fill)}.main[data-v-7ad8e65f]{display:flex;flex-direction:column;background:var(--color-bg-body)}.top[data-v-7ad8e65f]{height:48px;border-bottom:1px solid var(--color-border);background:var(--color-bg-container)}.body[data-v-7ad8e65f]{display:grid;flex:1;grid-template-columns:repeat(3,1fr);grid-auto-rows:90px;gap:14px;padding:20px}.body i[data-v-7ad8e65f]{border-radius:10px;background:var(--color-bg-container)}.body i.w[data-v-7ad8e65f]{grid-column:span 3;grid-row:span 2}.foot[data-v-7ad8e65f]{display:grid;place-items:center;height:42px;border-radius:6px;font-size:12.5px;color:var(--color-text-tertiary)}.foot a[data-v-7ad8e65f]{color:var(--color-primary)}.key-hint[data-v-cfd3060b]{margin-bottom:12px}.cfg-section[data-v-1f5b0c64]{display:flex;flex-direction:column;height:100%;min-height:0}.cfg-head[data-v-1f5b0c64]{display:flex;flex:none;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:14px}.cfg-head h2[data-v-1f5b0c64]{margin:0;font-size:20px;font-weight:600;letter-spacing:-.01em}.cfg-head p[data-v-1f5b0c64]{margin:0;font-size:var(--font-size-base);color:var(--color-text-secondary)}.cfg-split[data-v-1f5b0c64]{display:grid;flex:1;gap:20px;min-height:0}.cfg-split--even[data-v-1f5b0c64]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cfg-split--wide[data-v-1f5b0c64]{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}.cfg-split--slim[data-v-1f5b0c64]{grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr)}.cfg-split--single[data-v-1f5b0c64]{grid-template-columns:minmax(0,1fr)}.cfg-form[data-v-1f5b0c64]{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0;overflow:auto}.cfg-preview[data-v-1f5b0c64]{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border-radius:14px;background:color-mix(in srgb,var(--color-fill) 70%,var(--color-bg-body))}.cfg-preview-cap[data-v-1f5b0c64]{display:flex;flex:none;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.live[data-v-1f5b0c64]{display:inline-flex;align-items:center;gap:6px}.live[data-v-1f5b0c64]:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-success)}.cfg-preview-body[data-v-1f5b0c64]{display:flex;flex:1;flex-direction:column;justify-content:center;gap:12px;min-height:0;padding:12px 14px 14px;overflow:auto}.cfg-preview-body--start[data-v-1f5b0c64]{justify-content:flex-start}.cfg-preview[data-v-1f5b0c64] .cfg-flash{animation:cfg-flash-1f5b0c64 1.1s ease-out}@keyframes cfg-flash-1f5b0c64{0%{box-shadow:0 0 0 3px var(--color-warning)}to{box-shadow:0 0 0 3px transparent}}@media(prefers-reduced-motion:reduce){.cfg-preview[data-v-1f5b0c64] .cfg-flash{animation:none}}@media(max-width:1000px){.cfg-split[data-v-1f5b0c64]{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(280px,1fr);overflow:auto}.cfg-form[data-v-1f5b0c64]{overflow:visible}}.cfg-group[data-v-85a7c281]{flex:none;min-width:0}h4[data-v-85a7c281]{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:22px;margin:0 0 6px 12px;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary)}.cfg-list[data-v-85a7c281]{border-radius:12px;background:var(--color-bg-container);border:1px solid var(--color-border);box-shadow:0 1px 2px #0000000a}.cfg-row[data-v-bd8e29b3]{position:relative;display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 14px;font-size:var(--font-size-base)}.cfg-row+.cfg-row[data-v-bd8e29b3]:before{content:"";position:absolute;top:0;left:14px;right:0;border-top:.5px solid var(--color-border)}.cfg-row.sub[data-v-bd8e29b3]{padding-left:34px}.cfg-row.sub[data-v-bd8e29b3]:before{left:34px}.cfg-row.tall[data-v-bd8e29b3]{align-items:flex-start;padding-top:8px;padding-bottom:8px}.cfg-row.off .lb[data-v-bd8e29b3],.cfg-row.off .ctl[data-v-bd8e29b3]{opacity:.45;pointer-events:none}.lb[data-v-bd8e29b3]{display:flex;flex:1;flex-direction:column;min-width:130px}.name[data-v-bd8e29b3]{position:relative;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;color:var(--color-text-primary)}.dot[data-v-bd8e29b3]{position:absolute;left:-11px;width:6px;height:6px;border-radius:50%;background:var(--color-warning)}small[data-v-bd8e29b3]{font-size:var(--font-size-sm);line-height:1.4;color:var(--color-text-tertiary)}.ctl[data-v-bd8e29b3]{display:flex;flex:0 1 auto;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.sr-only[data-v-bd8e29b3]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.cfg-row:has(>.ctl>:is(.n-input,.n-select))>.lb{flex:1 1 0}.cfg-row:has(>.ctl>:is(.n-input,.n-select))>.ctl{flex:1.8 1 0}.cfg-row>.ctl>:is(.n-input,.n-select){flex:1;min-width:0}.seg[data-v-aedf9324]{display:inline-flex;flex:none;padding:2px;border-radius:8px;background:var(--color-fill)}button[data-v-aedf9324]{padding:2px 12px;border:0;border-radius:6px;background:none;font:inherit;font-size:var(--font-size-sm);line-height:20px;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap}button.on[data-v-aedf9324]{background:var(--color-bg-container);color:var(--color-text-primary);font-weight:500;box-shadow:0 1px 3px #0000001f}button[data-v-aedf9324]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.fit[data-v-bebb8d09]{position:relative;flex:1;min-height:0;overflow:hidden}.stage[data-v-bebb8d09]{position:absolute;left:50%;top:50%;transform-origin:center}.cropper[data-v-a92c4a40]{display:flex;flex-direction:column;align-items:center;gap:12px}.viewport[data-v-a92c4a40]{position:relative;overflow:hidden;border-radius:var(--radius-lg);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:repeating-conic-gradient(#e5e7eb 0,#e5e7eb 25%,#fff 0,#fff 50%) 0 0 / 16px 16px}.viewport[data-v-a92c4a40]:active{cursor:grabbing}.viewport[data-v-a92c4a40]:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.viewport img[data-v-a92c4a40]{position:absolute;left:50%;top:50%;max-width:none;pointer-events:none}.frame[data-v-a92c4a40]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:12px;box-shadow:0 0 0 999px #00000073;pointer-events:none}.zoom[data-v-a92c4a40]{display:flex;align-items:center;gap:12px;width:280px;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.zoom span[data-v-a92c4a40]{flex:none}.tip[data-v-a92c4a40]{margin:0;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.logo-box[data-v-cec63628]{position:relative;display:grid;place-items:center;width:56px;height:56px;padding:0;overflow:hidden;border:0;border-radius:14px;background:var(--color-fill);cursor:pointer}.logo-box[data-v-cec63628]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.logo-box.dragging[data-v-cec63628]{box-shadow:inset 0 0 0 2px var(--color-primary)}.ov[data-v-cec63628]{position:absolute;inset:auto 0 0;padding:2px 0;font-size:10px;color:#fff;background:#00000080;opacity:0;transition:opacity .15s}.logo-box:hover .ov[data-v-cec63628],.logo-box:focus-visible .ov[data-v-cec63628]{opacity:1}.dlg-foot[data-v-cec63628]{display:flex;justify-content:flex-end;gap:8px}.logo-remove{color:var(--color-danger)}.mock[data-v-d1880ff3]{display:grid;grid-template-columns:1.15fr 1fr;width:880px;height:540px;overflow:hidden;border-radius:10px;background:var(--color-bg-container);box-shadow:0 10px 30px #0000001f}.mock.form-only[data-v-d1880ff3]{grid-template-columns:1fr;width:440px}.hero[data-v-d1880ff3]{display:flex;align-items:center;padding:32px 36px;overflow:hidden;background:radial-gradient(60% 70% at 20% 15%,color-mix(in srgb,var(--color-primary) 18%,transparent),transparent 72%),var(--color-bg-body)}.hero[data-v-d1880ff3] .headline{font-size:30px;line-height:1.3}.hero[data-v-d1880ff3] .bar{margin:22px 0 16px}.hero[data-v-d1880ff3] .sub{margin:12px 0 18px}.form[data-v-d1880ff3]{display:flex;flex-direction:column;gap:12px;padding:44px 40px 18px;font-size:13px}.welcome[data-v-d1880ff3]{font-size:22px}.sub[data-v-d1880ff3]{margin:-8px 0 4px;border-radius:6px;color:var(--color-text-secondary)}.modes[data-v-d1880ff3]{display:flex;gap:18px;border-radius:6px;color:var(--color-text-secondary)}.modes .on[data-v-d1880ff3]{padding-bottom:3px;border-bottom:2px solid var(--color-primary);color:var(--color-text-primary);font-weight:600}.in[data-v-d1880ff3]{display:block;height:40px;border-radius:8px;background:var(--color-fill)}.captcha[data-v-d1880ff3]{display:flex;gap:8px}.captcha .in[data-v-d1880ff3]{flex:1}.captcha span[data-v-d1880ff3]{display:grid;place-items:center;width:104px;border-radius:8px;font-weight:700;letter-spacing:1px;color:var(--color-text-secondary);background:repeating-linear-gradient(45deg,var(--color-fill) 0 4px,var(--color-bg-body) 4px 8px)}.go[data-v-d1880ff3]{display:grid;place-items:center;height:42px;border-radius:8px;color:#fff;background:var(--color-primary);font-weight:600}.oauth[data-v-d1880ff3]{min-height:20px;border-radius:8px}.divider[data-v-d1880ff3]{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--color-text-tertiary)}.divider[data-v-d1880ff3]:before,.divider[data-v-d1880ff3]:after{content:"";flex:1;border-top:1px solid var(--color-border)}.btns[data-v-d1880ff3]{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:12px}.btns span[data-v-d1880ff3]{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--color-border);border-radius:50%}.copy[data-v-d1880ff3]{margin-top:auto;border-radius:6px;text-align:center;font-size:12px;color:var(--color-text-tertiary)}.fld[data-v-8627a064]{width:240px}.logo-row[data-v-8627a064]{min-height:64px}.feat[data-v-8627a064] .ctl{flex:1.6}.warn[data-v-8627a064]{color:var(--color-warning)}.err[data-v-8627a064]{color:var(--color-danger)}.num[data-v-1c9fd766]{width:72px}.num[data-v-1c9fd766] input{text-align:right}.unit[data-v-1c9fd766]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.presets[data-v-1c9fd766]{display:inline-flex;gap:4px}.chip[data-v-1c9fd766]{min-width:34px;padding:2px 6px;border:0;border-radius:6px;background:var(--color-fill);font:inherit;font-size:var(--font-size-sm);line-height:20px;color:var(--color-text-secondary);cursor:pointer}.chip[aria-pressed=true][data-v-1c9fd766]{background:var(--color-primary);color:#fff}.chip[data-v-1c9fd766]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.mails[data-v-1c9fd766] .ctl{flex:1.4}.mails[data-v-1c9fd766] .n-dynamic-tags{justify-content:flex-end}.card[data-v-1c9fd766]{border-radius:12px;background:var(--color-bg-container)}.tl[data-v-1c9fd766]{padding:14px 16px 12px}.tl-text[data-v-1c9fd766]{margin-bottom:8px;font-size:var(--font-size-base);font-weight:500}.bar[data-v-1c9fd766]{position:relative;height:26px;overflow:hidden;border-radius:7px;background:repeating-linear-gradient(-45deg,var(--color-fill) 0 6px,transparent 6px 12px)}.keep[data-v-1c9fd766]{position:absolute;top:0;right:0;bottom:0;display:grid;place-items:center;border-radius:7px;background:var(--color-primary);color:#fff;font-size:var(--font-size-sm);white-space:nowrap;transition:width .25s}@media(prefers-reduced-motion:reduce){.keep[data-v-1c9fd766]{transition:none}}.axis[data-v-1c9fd766]{display:flex;justify-content:space-between;margin-top:6px;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.mail[data-v-1c9fd766]{overflow:hidden;font-size:var(--font-size-base)}.mh[data-v-1c9fd766]{display:grid;gap:3px;padding:10px 14px;border-bottom:.5px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.mh b[data-v-1c9fd766]{font-weight:500;color:var(--color-text-primary)}.mb[data-v-1c9fd766]{padding:12px 14px}.err[data-v-1c9fd766]{margin-top:8px;padding:8px 10px;border-radius:8px;background:var(--color-danger-bg);color:var(--color-danger);font:var(--font-size-sm) ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.none[data-v-1c9fd766]{padding:28px 16px;text-align:center;color:var(--color-text-secondary)}.sheet[data-v-947e55e5]{display:flex;flex-direction:column;width:520px;max-width:calc(100vw - 32px);max-height:calc(100vh - 40px);overflow:hidden;border-radius:16px;background:var(--color-bg-elevated);box-shadow:0 20px 60px #00000040}header[data-v-947e55e5]{display:flex;flex:none;align-items:center;gap:10px;padding:16px 20px 12px}.av[data-v-947e55e5]{display:grid;flex:none;place-items:center;width:34px;height:34px;overflow:hidden;border-radius:8px;background:var(--color-fill)}h3[data-v-947e55e5]{margin:0;font-size:16px;font-weight:600}header small[data-v-947e55e5]{display:block;color:var(--color-text-tertiary)}.body[data-v-947e55e5]{flex:1;min-height:0;padding:0 20px 6px;overflow:auto}.list[data-v-947e55e5]{margin-bottom:10px;border-radius:10px;background:var(--color-fill)}.fld[data-v-947e55e5]{display:flex;align-items:center;gap:12px;min-height:42px;padding:5px 12px}.fld+.fld[data-v-947e55e5]{border-top:.5px solid var(--color-border)}.k[data-v-947e55e5]{flex:none;width:120px;font-size:var(--font-size-base);color:var(--color-text-primary)}.k i[data-v-947e55e5]{margin-left:2px;font-style:normal;color:var(--color-danger)}.k small[data-v-947e55e5]{display:block;font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.k small.bad[data-v-947e55e5]{color:var(--color-danger)}.fld[data-v-947e55e5] .n-input{flex:1}.note[data-v-947e55e5]{margin:0 0 8px;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-tertiary)}.note.warn[data-v-947e55e5]{padding:8px 10px;border-radius:8px;color:var(--color-warning);background:var(--color-warning-bg)}.note.inline[data-v-947e55e5]{flex:1;margin:0}.cb[data-v-947e55e5]{display:flex;flex:1;align-items:center;gap:8px;min-width:0}.cb code[data-v-947e55e5]{flex:1;min-width:0;font-size:var(--font-size-sm);word-break:break-all}.results[data-v-947e55e5]{padding:0;margin:0 0 10px;list-style:none}.results li[data-v-947e55e5]{display:flex;align-items:flex-start;gap:8px;padding:4px 2px;font-size:var(--font-size-base)}.results li small[data-v-947e55e5]{display:block;color:var(--color-text-tertiary)}.results .ok[data-v-947e55e5]{color:var(--color-success)}.results .failed[data-v-947e55e5]{color:var(--color-danger)}.results .skipped[data-v-947e55e5],.results .spin[data-v-947e55e5]{color:var(--color-text-tertiary)}footer[data-v-947e55e5]{display:flex;flex:none;align-items:center;gap:8px;padding:12px 20px 16px;border-top:.5px solid var(--color-border)}.grow[data-v-947e55e5]{flex:1}.cols[data-v-7f9b84df]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.col[data-v-7f9b84df]{display:flex;flex-direction:column;gap:14px;min-width:0}.num[data-v-7f9b84df]{width:96px}.num[data-v-7f9b84df] input{text-align:right}.unit[data-v-7f9b84df]{flex:none;width:32px;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.tip[data-v-7f9b84df]{display:inline-grid;place-items:center;width:16px;height:16px;padding:0;border:0;border-radius:50%;background:var(--color-fill);color:var(--color-text-secondary);cursor:help}.tip[data-v-7f9b84df]:focus-visible{outline:2px solid var(--color-primary)}.chips[data-v-7f9b84df]{display:inline-flex;flex:none;gap:5px}.chip[data-v-7f9b84df]{padding:2px 8px;border:0;border-radius:6px;background:var(--color-fill);font:var(--font-size-sm) ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:20px;color:var(--color-text-secondary);white-space:nowrap;cursor:pointer}.chip[aria-pressed=true][data-v-7f9b84df]{background:var(--color-primary);color:#fff}.chip[data-v-7f9b84df]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.sr-only[data-v-7f9b84df]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.rules[data-v-7f9b84df]{margin:0;padding:2px 0;list-style:none;border-radius:12px;background:var(--color-bg-container)}.rules li[data-v-7f9b84df]{position:relative;display:flex;align-items:flex-start;gap:10px;padding:7px 14px;border-radius:8px;font-size:var(--font-size-base);line-height:1.5}.rules li+li[data-v-7f9b84df]:before{content:"";position:absolute;top:0;left:46px;right:0;border-top:.5px solid var(--color-border)}.ic[data-v-7f9b84df]{display:grid;flex:none;place-items:center;width:22px;height:22px;border-radius:6px;color:#fff;background:var(--color-primary)}.rules li.off .ic[data-v-7f9b84df]{color:var(--color-text-tertiary);background:var(--color-fill)}.rules li.off .txt[data-v-7f9b84df]{color:var(--color-text-tertiary)}.try[data-v-7f9b84df]{flex:none;padding:10px 14px;border-radius:12px;background:var(--color-bg-container)}.try label[data-v-7f9b84df]{display:flex;align-items:center;gap:10px;font-size:var(--font-size-base);color:var(--color-text-secondary)}.try input[data-v-7f9b84df]{flex:1;min-width:0;height:28px;padding:0 10px;border:0;border-radius:7px;outline:none;background:var(--color-fill);color:var(--color-text-primary);font:inherit}.try input[data-v-7f9b84df]:focus-visible{box-shadow:0 0 0 2px var(--color-primary)}.try ul[data-v-7f9b84df]{display:flex;flex-wrap:wrap;gap:4px 14px;margin:8px 0 0;padding:0;list-style:none;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.try li[data-v-7f9b84df]:before{content:"○ "}.try li.ok[data-v-7f9b84df]{color:var(--color-success)}.try li.ok[data-v-7f9b84df]:before{content:"● "}.try li.verdict[data-v-7f9b84df]{margin-left:auto;color:var(--color-danger)}.try li.verdict[data-v-7f9b84df]:before,.try li.verdict.ok[data-v-7f9b84df]:before{content:""}.try li.verdict.ok[data-v-7f9b84df]{color:var(--color-success)}@media(max-width:1280px){.cols[data-v-7f9b84df]{grid-template-columns:minmax(0,1fr)}}.tbl[data-v-d6672f0c]{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden;border-radius:12px;background:var(--color-bg-container);border:1px solid var(--color-border);box-shadow:0 1px 2px #0000000a}.th[data-v-d6672f0c],.tr[data-v-d6672f0c]{display:grid;grid-template-columns:70px minmax(0,1fr) 120px 64px;gap:10px;align-items:center;min-height:38px;padding:0 14px}.th[data-v-d6672f0c]{flex:none;font-size:var(--font-size-sm);color:var(--color-text-secondary);border-bottom:.5px solid var(--color-border)}.spin[data-v-d6672f0c]{flex:1;min-height:0}.spin[data-v-d6672f0c] .n-spin-content{height:100%}.tb[data-v-d6672f0c]{height:100%;margin:0;padding:0;overflow:auto;list-style:none}.tr[data-v-d6672f0c]{border-bottom:.5px solid var(--color-border);font-size:var(--font-size-base);cursor:pointer}.tr[data-v-d6672f0c]:hover{background:var(--color-fill-hover)}.tr.sel[data-v-d6672f0c]{background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.tr[data-v-d6672f0c]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}code[data-v-d6672f0c]{overflow:hidden;font:var(--font-size-sm) ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap;text-overflow:ellipsis}.remark[data-v-d6672f0c]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-secondary)}.m[data-v-d6672f0c]{justify-self:start;padding:1px 6px;border-radius:5px;font:600 11px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--color-fill);color:var(--color-text-secondary)}.m.POST[data-v-d6672f0c]{background:var(--color-success-bg);color:var(--color-success)}.m.PUT[data-v-d6672f0c]{background:var(--color-warning-bg);color:var(--color-warning)}.m.DELETE[data-v-d6672f0c]{background:var(--color-danger-bg);color:var(--color-danger)}.badge[data-v-d6672f0c]{justify-self:start;padding:1px 6px;border-radius:5px;font-size:var(--font-size-xs);background:var(--color-fill);color:var(--color-text-secondary)}.add[data-v-d6672f0c]{display:flex;flex:none;gap:8px;padding:8px 10px;border-top:.5px solid var(--color-border)}.add .rm[data-v-d6672f0c]{flex:0 0 150px}.dlg[data-v-d6672f0c]{width:min(380px,100%);margin:0 auto;padding:22px 22px 18px;border-radius:14px;background:var(--color-bg-container);box-shadow:0 12px 40px #00000024;text-align:center;font-size:var(--font-size-base)}.lock[data-v-d6672f0c]{display:grid;place-items:center;width:44px;height:44px;margin:0 auto 10px;border-radius:12px;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.dlg b[data-v-d6672f0c]{font-size:16px}.dlg p[data-v-d6672f0c]{margin:6px 0 0;color:var(--color-text-secondary)}.dlg p code[data-v-d6672f0c]{display:block;margin-top:4px;white-space:normal;word-break:break-all;color:var(--color-text-primary)}.dlg .hint[data-v-d6672f0c]{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.in[data-v-d6672f0c]{display:block;height:34px;margin:14px 0 12px;padding:0 10px;border-radius:8px;background:var(--color-fill);font-style:normal;line-height:34px;text-align:left;color:var(--color-text-tertiary)}.acts[data-v-d6672f0c]{display:flex;gap:8px}.acts span[data-v-d6672f0c]{flex:1;height:32px;border-radius:8px;line-height:32px;background:var(--color-fill)}.acts .p[data-v-d6672f0c]{color:#fff;background:var(--color-primary)}.avatar[data-v-f795c261]{display:grid;flex:none;place-items:center;width:24px;height:24px;margin-right:6px;overflow:hidden;border-radius:6px;background:var(--color-fill)}.na[data-v-f795c261]{color:var(--color-text-tertiary)}.status[data-v-f795c261]{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.status.configured[data-v-f795c261]{color:var(--color-success)}.slider[data-v-18bf86bc]{width:160px}.num[data-v-18bf86bc]{width:72px}.num[data-v-18bf86bc] input{text-align:right}.unit[data-v-18bf86bc]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.exts[data-v-18bf86bc] .ctl{flex:1.4}.exts[data-v-18bf86bc] .n-dynamic-tags{justify-content:flex-end}.presets[data-v-18bf86bc]{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.chip[data-v-18bf86bc]{padding:2px 9px;border:0;border-radius:6px;background:var(--color-fill);font:inherit;font-size:var(--font-size-sm);line-height:20px;color:var(--color-text-secondary);cursor:pointer}.chip[data-v-18bf86bc]:hover{background:var(--color-fill-hover)}.chip[data-v-18bf86bc]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.drop[data-v-18bf86bc]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:24px 16px;border:1.5px dashed var(--color-border-strong);border-radius:14px;background:var(--color-bg-container);text-align:center}.drop .ic[data-v-18bf86bc]{color:var(--color-primary)}.drop b[data-v-18bf86bc]{font-weight:500}.drop small[data-v-18bf86bc]{padding:1px 6px;border-radius:6px;color:var(--color-text-secondary)}.files[data-v-18bf86bc]{margin:0;padding:0;list-style:none;border-radius:12px;background:var(--color-bg-container)}.files li[data-v-18bf86bc]{position:relative;display:flex;align-items:center;gap:10px;padding:9px 14px;font-size:var(--font-size-base)}.files li+li[data-v-18bf86bc]:before{content:"";position:absolute;top:0;left:50px;right:0;border-top:.5px solid var(--color-border)}.fi[data-v-18bf86bc]{display:grid;flex:none;place-items:center;width:26px;height:30px;border-radius:5px;background:var(--color-fill);font-size:9px;font-weight:700;color:var(--color-text-secondary)}.nm[data-v-18bf86bc]{display:flex;flex:1;flex-direction:column;min-width:0}.nm small[data-v-18bf86bc],.st[data-v-18bf86bc]{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.st.ok[data-v-18bf86bc]{color:var(--color-success)}.st.no[data-v-18bf86bc]{color:var(--color-danger)}.config-center[data-v-8ea68f7d]{position:relative;overflow:hidden;border-radius:var(--radius-lg);background:var(--color-bg-body)}.cfg-nav[data-v-8ea68f7d]{display:flex;flex:none;flex-wrap:wrap;justify-content:center;gap:2px;padding:8px 16px;border-bottom:.5px solid var(--color-border);background:var(--color-bg-container)}.gap[data-v-8ea68f7d]{width:14px}.nav-item[data-v-8ea68f7d]{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:3px;min-width:76px;min-height:52px;padding:6px 10px 5px;border:0;border-radius:8px;background:none;font:inherit;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.nav-item[data-v-8ea68f7d]:hover{background:var(--color-fill-hover)}.nav-item.on[data-v-8ea68f7d]{background:var(--color-fill);color:var(--color-primary)}.nav-item.on span[data-v-8ea68f7d]{color:var(--color-text-primary);font-weight:500}.nav-item[data-v-8ea68f7d]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.nav-item .dot[data-v-8ea68f7d]{position:absolute;top:6px;right:16px;box-shadow:0 0 0 2px var(--color-bg-container)}.sr-only[data-v-8ea68f7d]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.dot[data-v-8ea68f7d]{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--color-warning)}.cfg-loading[data-v-8ea68f7d]{display:grid;flex:1;place-items:center}.cfg-body[data-v-8ea68f7d]{flex:1;min-height:0;padding:16px 24px 20px}.cfg-body[data-v-8ea68f7d]>section{height:100%}.savebar[data-v-8ea68f7d]{position:absolute;left:50%;bottom:18px;z-index:10;display:flex;align-items:center;gap:10px;padding:7px 7px 7px 16px;border-radius:14px;background:color-mix(in srgb,var(--color-bg-container) 88%,transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--color-border);box-shadow:0 12px 40px #00000024;transform:translate(-50%)}.savebar .msg[data-v-8ea68f7d]{display:inline-flex;align-items:center;gap:8px;margin-right:4px;font-size:var(--font-size-base);color:var(--color-text-secondary);white-space:nowrap}.savebar-enter-active[data-v-8ea68f7d],.savebar-leave-active[data-v-8ea68f7d]{transition:transform .25s cubic-bezier(.2,.9,.3,1.2),opacity .2s ease}.savebar-enter-from[data-v-8ea68f7d],.savebar-leave-to[data-v-8ea68f7d]{transform:translate(-50%,140%);opacity:0}@media(prefers-reduced-motion:reduce){.savebar-enter-active[data-v-8ea68f7d],.savebar-leave-active[data-v-8ea68f7d]{transition:opacity .15s linear}.savebar-enter-from[data-v-8ea68f7d],.savebar-leave-to[data-v-8ea68f7d]{transform:translate(-50%)}}@media(max-height:899px){.cfg-nav[data-v-8ea68f7d]{padding:6px 16px}.nav-item[data-v-8ea68f7d]{min-height:48px;padding:4px 10px 3px}.cfg-body[data-v-8ea68f7d]{padding:12px 20px 14px}}.dict-layout[data-v-a7b1ad76]{flex-wrap:wrap;gap:var(--gap-card)}.dict-pane[data-v-a7b1ad76]{flex:1 1 380px;min-width:0}.clear-body[data-v-8324d44c]{display:flex;flex-direction:column;gap:10px}.clear-hint[data-v-8324d44c]{font-size:12px;color:var(--color-text-tertiary)}.attempts-title[data-v-8324d44c]{margin:16px 0 8px;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary)}.log-output[data-v-8324d44c]{margin:0;white-space:pre-wrap;word-break:break-all;font-family:var(--font-family-mono, ui-monospace, monospace);font-size:12px;line-height:1.5}.log-error[data-v-8324d44c]{color:var(--color-danger)}.view[data-v-34ed407f]{gap:var(--gap-card)}.job-tables[data-v-34ed407f],.job-tables[data-v-34ed407f]>*{min-height:240px}.stat[data-v-34ed407f]{display:flex;align-items:center;gap:16px}.stat-ico[data-v-34ed407f]{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,currentColor 12%,transparent)}.stat-val[data-v-34ed407f]{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.1}.stat-label[data-v-34ed407f]{color:var(--color-text-secondary);margin-top:2px}.kv-editor[data-v-aabac178]{display:flex;flex-direction:column;gap:8px;width:100%}.kv-row[data-v-aabac178]{display:flex;gap:8px;align-items:center}.kv-hint[data-v-aabac178]{font-size:12px;color:var(--color-text-tertiary)}.job-hint[data-v-aabac178]{font-size:12px;color:var(--color-text-tertiary);white-space:nowrap;line-height:1.4}.job-inline[data-v-aabac178]{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;min-width:0}.job-sec-text[data-v-aabac178]{font-size:var(--font-size-sm);font-weight:600}.job-sections[data-v-aabac178] .n-collapse-item{margin:0}.job-sections[data-v-aabac178] .n-collapse-item__header{padding:10px 0}.job-sections[data-v-aabac178] .n-collapse-item__content-inner{padding:4px 0 12px}.job-sections[data-v-aabac178] .n-form-item{margin-bottom:14px}.job-sections[data-v-aabac178] .n-form-item-feedback-wrapper:empty,.job-sections[data-v-aabac178] .n-form-item-feedback-wrapper:has(:empty){min-height:0}.job-advanced[data-v-aabac178] .n-form-item{margin-bottom:18px}.job-advanced[data-v-aabac178] .n-form-item-label{padding-right:12px}.exception[data-v-d5b09c10],.exception[data-v-9e9a338d]{margin:0;white-space:pre-wrap;word-break:break-all;font-family:var(--font-mono, ui-monospace, monospace);font-size:12px;line-height:1.5;color:var(--color-danger)}.perm-hint[data-v-0a7963e1],.link-hint[data-v-5b265f65]{font-size:12px;color:var(--color-text-tertiary, #999);line-height:1.5}.view[data-v-d019bdd8]{display:flex;flex-direction:column;gap:var(--gap-card)}[data-v-d019bdd8] .row-no{font-variant-numeric:tabular-nums;white-space:nowrap}[data-v-d019bdd8] .row-no__path{color:var(--color-text-disabled)}[data-v-d019bdd8] .row-no__self{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.hint[data-v-ea6672c5]{font-size:12px;color:var(--color-text-secondary, #999)}.monitor[data-v-8ea4d493]{display:flex;flex-direction:column;gap:12px}.bar[data-v-8ea4d493]{display:flex;justify-content:flex-end}.metric[data-v-8ea4d493]{font-size:28px;font-weight:600;line-height:1.2;margin-bottom:10px}.metric.small[data-v-8ea4d493]{font-size:18px}.unit[data-v-8ea4d493]{font-size:16px;margin-left:2px;color:var(--color-text-secondary, #999)}.sub[data-v-8ea4d493]{margin-top:8px;font-size:12px;color:var(--color-text-secondary, #999)}.rows[data-v-8ea4d493]{display:grid;gap:8px;font-size:13px}.rows .k[data-v-8ea4d493]{display:inline-block;width:88px;color:var(--color-text-secondary, #999)}.rows .v[data-v-8ea4d493]{word-break:break-all}.notice-actions-editor[data-v-5c6d1da0]{width:100%}.notice-action-row[data-v-5c6d1da0]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%}.notice-actions-hint[data-v-5c6d1da0]{display:block;margin-top:4px;font-size:12px;line-height:1.4}.view[data-v-72e7ef38],.view[data-v-ef7d111d]{gap:var(--gap-card)}.grant-menu-table[data-v-6c2563ee]{display:flex;flex-direction:column;gap:10px}.grant-toolbar[data-v-6c2563ee]{display:flex;gap:8px}.grant-grid[data-v-6c2563ee]{border:1px solid var(--n-border-color, #e0e0e6);border-radius:4px;font-size:13px;overflow:hidden}.grant-header[data-v-6c2563ee]{display:flex;background:var(--n-th-color, #fafafc);font-weight:600;font-size:12px;border-bottom:1px solid var(--n-border-color, #e0e0e6)}.grant-header>div[data-v-6c2563ee]{padding:8px 12px}.grant-group[data-v-6c2563ee]{display:flex;border-bottom:1px solid var(--n-border-color, #e0e0e6)}.grant-group[data-v-6c2563ee]:last-child{border-bottom:none}.grant-group>.col-catalog[data-v-6c2563ee]{display:flex;align-items:center;gap:4px;padding:8px 12px;border-right:1px solid var(--n-border-color, #e0e0e6);cursor:pointer;-webkit-user-select:none;user-select:none}.collapse-arrow[data-v-6c2563ee]{display:inline-block;font-size:10px;transition:transform .2s;color:var(--n-text-color-disabled, #999)}.collapse-arrow.is-collapsed[data-v-6c2563ee]{transform:rotate(-90deg)}.group-rows[data-v-6c2563ee]{flex:1;min-width:0}.grant-row[data-v-6c2563ee]{display:flex;border-bottom:1px solid var(--n-border-color, #e0e0e6)}.grant-row[data-v-6c2563ee]:last-child{border-bottom:none}.col-catalog[data-v-6c2563ee]{width:130px;flex-shrink:0}.col-menu[data-v-6c2563ee]{width:140px;flex-shrink:0;display:flex;align-items:center;padding:6px 12px;border-right:1px solid var(--n-border-color, #e0e0e6)}.anchor-tag[data-v-6c2563ee]{font-size:12px}.col-buttons[data-v-6c2563ee]{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:6px 12px;min-width:0}.no-buttons[data-v-6c2563ee]{color:var(--n-text-color-disabled, #c0c0c0)}.grant-empty[data-v-6c2563ee]{text-align:center;padding:24px;color:var(--n-text-color-disabled, #c0c0c0)}.reset-hint[data-v-104f8da0]{margin:0 0 12px;font-size:var(--font-size-sm, 13px);color:var(--color-text-secondary, #888)}.pw-field[data-v-f2afa7e7]{flex:1;min-width:0}.avatar-field[data-v-f2afa7e7]{display:flex;align-items:center;gap:12px}.user-layout[data-v-99109370]{--side-filter-width: 248px}
@@ -22,27 +22,51 @@ export declare function previewAllBrandProviders(): SsoProviderLike[];
22
22
  * 自定义 provider 真要开(如 sub 就是工号的 OIDC),到「其他配置」加 sys.externalauth.{code}.linkByAccount。
23
23
  */
24
24
  export declare const LINK_BY_ACCOUNT_CODES: readonly string[];
25
- /** 配置页一行:内置品牌全展示;registered=后端已装包/已配密钥。 */
25
+ /** 服务器上有对应扩展包的官方厂商类型,按「登录方式」页的展示顺序。 */
26
+ export declare const OFFICIAL_TYPES: readonly ["wecom", "dingtalk", "github", "wechat"];
27
+ /** 一行的状态:类型没装 / 已装未配 / 已配可用。 */
28
+ export type ProviderState = 'notInstalled' | 'unconfigured' | 'configured';
29
+ /** 配置页一行:后端目录里有的类型与 provider,不是预置品牌全量。 */
26
30
  export type ConfigProviderRow = {
27
31
  code: string;
32
+ /** 类型码;代码注册的 provider 没有类型,为空串 */
33
+ type: string;
28
34
  displayName: string;
29
35
  icon?: string | null;
36
+ state: ProviderState;
37
+ /** db = 在本页配置;code = 消费者用代码注册(只读);none = 没有配置 */
38
+ source: 'db' | 'code' | 'none';
39
+ /** 已配置且可用:开关可操作,预览与登录页才会出现它 */
30
40
  registered: boolean;
31
41
  enabled: boolean;
32
42
  /** 未绑定的外部身份按账号名关联同名本地账号(sys.externalauth.{code}.linkByAccount) */
33
43
  linkByAccount: boolean;
34
44
  };
35
- /**
36
- * 配置页列表 = 预置品牌(全量) + 其它已注册 code(如 oidc-demo)。
37
- * 未注册项 registered=false、两个开关强制 false(未部署的方式开了也没用)。
38
- */
39
- export declare function buildConfigProviderRows(registered: readonly {
45
+ type CatalogLike = {
46
+ types: readonly {
47
+ type: string;
48
+ }[];
49
+ providers: readonly {
50
+ code: string;
51
+ type: string;
52
+ displayName: string;
53
+ icon?: string | null;
54
+ source: string;
55
+ installed: boolean;
56
+ configured: boolean;
57
+ }[];
58
+ };
59
+ type AdminLike = {
40
60
  code: string;
41
- displayName: string;
42
- icon?: string | null;
43
61
  enabled: boolean;
44
62
  linkByAccount?: boolean;
45
- }[]): ConfigProviderRow[];
63
+ };
64
+ /**
65
+ * 配置页列表 = 四个官方厂商(按固定顺序,没装的也列出并标「未安装」)
66
+ * + 目录里其余的 provider(OIDC 条目、代码注册的)。
67
+ * 未配置或未安装的行开关强制关:没配好的方式开了也没用,也不写库。
68
+ */
69
+ export declare function buildConfigProviderRows(catalog: CatalogLike, admin: readonly AdminLike[]): ConfigProviderRow[];
46
70
  export type SsoProviderLike = {
47
71
  code: string;
48
72
  displayName: string;
@@ -98,3 +122,4 @@ export declare function splitLoginProviders<T>(providers: readonly T[], maxVisib
98
122
  * 不做 N=4 截断。
99
123
  */
100
124
  export declare function mergeBindingRows(providers: readonly SsoProviderLike[], bindings: readonly BindingLike[]): BindingRow[];
125
+ export {};