@import"https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";.error-boundary[data-v-ac74ccc0]{display:flex;align-items:center;justify-content:center;min-height:400px}.error-boundary__content[data-v-ac74ccc0]{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--color-text-tertiary)}.error-boundary__icon[data-v-ac74ccc0]{width:48px;height:48px;border-radius:50%;background:var(--color-danger-bg);color:var(--color-danger);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700}.error-boundary__btn[data-v-ac74ccc0]{padding:8px 20px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font-size:14px;cursor:pointer;transition:all var(--transition-fast)}.error-boundary__detail[data-v-ac74ccc0]{font-size:12px;color:var(--color-text-tertiary);max-width:400px;text-align:center;word-break:break-all}.error-boundary__btn[data-v-ac74ccc0]:hover{border-color:var(--color-primary);color:var(--color-primary)}.desktop-loading-overlay[data-v-98e51827]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:var(--color-bg)}.desktop-loading-content[data-v-98e51827]{text-align:center;max-width:320px;width:100%;padding:0 24px}.desktop-loading-spinner[data-v-98e51827]{width:40px;height:40px;margin:0 auto 20px;border:3px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:desktop-spin-98e51827 .8s linear infinite}@keyframes desktop-spin-98e51827{to{transform:rotate(360deg)}}.desktop-loading-text[data-v-98e51827]{font-size:15px;font-weight:500;color:var(--color-text);margin-bottom:24px}.desktop-loading-steps[data-v-98e51827]{display:flex;flex-direction:column;gap:12px;text-align:left}.desktop-loading-step[data-v-98e51827]{display:flex;align-items:center;gap:10px;opacity:.35;transition:opacity .3s ease}.desktop-loading-step.active[data-v-98e51827]{opacity:1}.desktop-loading-step.done[data-v-98e51827]{opacity:.7}.step-dot[data-v-98e51827]{width:8px;height:8px;border-radius:50%;background:var(--color-border);flex-shrink:0;transition:background .3s ease}.desktop-loading-step.active .step-dot[data-v-98e51827]{background:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-10);animation:desktop-pulse-98e51827 1.2s ease-in-out infinite}.desktop-loading-step.done .step-dot[data-v-98e51827]{background:var(--color-success)}@keyframes desktop-pulse-98e51827{0%,to{box-shadow:0 0 0 3px var(--color-primary-10)}50%{box-shadow:0 0 0 6px var(--color-primary-10)}}.step-label[data-v-98e51827]{font-size:13px;color:var(--color-text-secondary)}:root{--color-primary: #42b883;--color-primary-hover: #33a06f;--color-primary-light: #e8f8f0;--color-primary-lighter: #f2fbf7;--color-primary-10: rgba(66, 184, 131, .1);--color-accent: #c68b59;--color-accent-light: #fdf5ee;--color-accent-hover: #b87d4e;--color-bg: #f7f8fa;--color-surface: #ffffff;--color-surface-hover: #f0f1f4;--color-surface-active: #e8eaed;--color-border: #e4e6eb;--color-border-light: #eceef1;--color-divider: #e9ebe9;--color-text: #1a1c1e;--color-text-secondary: #5f6368;--color-text-tertiary: #9aa0a6;--color-text-inverse: #ffffff;--color-success: #42b883;--color-success-bg: #e8f8f0;--color-warning: #e8a838;--color-warning-bg: #fef8ec;--color-danger: #d94848;--color-danger-bg: #fdeeed;--color-info: #5b8fa8;--color-info-bg: #e8f4f8;--color-code-bg: #f5f5f5;--color-code-text: #1a1c1e;--color-ref-accent: #FFF3E6;--shadow-xs: 0 1px 2px rgba(26, 28, 30, .04);--shadow-sm: 0 1px 3px rgba(26, 28, 30, .05), 0 1px 2px rgba(26, 28, 30, .03);--shadow-md: 0 4px 12px rgba(26, 28, 30, .06), 0 1px 3px rgba(26, 28, 30, .06);--shadow-lg: 0 8px 24px rgba(26, 28, 30, .07), 0 2px 8px rgba(26, 28, 30, .04);--shadow-xl: 0 12px 40px rgba(26, 28, 30, .09), 0 4px 12px rgba(26, 28, 30, .04);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--font-heading: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-serif: "EB Garamond", "Noto Serif SC", Georgia, serif;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px}html.dark{--color-bg: #1a1c1e;--color-surface: #242628;--color-surface-hover: #2e3032;--color-surface-active: #363839;--color-border: #3a3c3e;--color-border-light: #313334;--color-divider: #363839;--color-text: #e4e6eb;--color-text-secondary: #9aa0a6;--color-text-tertiary: #6b7280;--color-text-inverse: #1a1c1e;--color-primary-light: #1e3a2e;--color-primary-lighter: #1a2e24;--color-primary-10: rgba(66, 184, 131, .15);--color-accent-light: #2e2318;--color-accent-hover: #d4974f;--color-success-bg: #1e3a2e;--color-warning-bg: #3a2e18;--color-danger-bg: #3a1e1e;--color-info-bg: #1e2e3a;--color-code-bg: #0d0d1a;--color-code-text: #c8c8d0;--color-ref-accent: #2a2018;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .25), 0 1px 2px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3), 0 1px 3px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .35), 0 2px 8px rgba(0, 0, 0, .2);--shadow-xl: 0 12px 40px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .25)}html.dark ::-webkit-scrollbar-thumb{background:var(--color-border)}html.dark ::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);line-height:1.6;min-height:100vh}#app{min-height:100vh}.theme-transition,.theme-transition *,.theme-transition *:before,.theme-transition *:after{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.el-button--primary{--el-button-bg-color: var(--color-primary) !important;--el-button-border-color: var(--color-primary) !important;--el-button-hover-bg-color: var(--color-primary-hover) !important;--el-button-hover-border-color: var(--color-primary-hover) !important;--el-button-hover-text-color: var(--color-text-inverse) !important;--el-button-active-bg-color: var(--color-primary-hover) !important;border-radius:var(--radius-md)!important;font-family:var(--font-body);font-weight:500;transition:all var(--transition-fast)}.el-button--primary.is-plain{--el-button-bg-color: var(--color-primary-light) !important;--el-button-border-color: var(--color-primary) !important;--el-button-text-color: var(--color-primary) !important;--el-button-hover-bg-color: var(--color-primary) !important;--el-button-hover-text-color: var(--color-text-inverse) !important;--el-button-hover-border-color: var(--color-primary) !important}.el-button--danger{--el-button-bg-color: var(--color-danger) !important;--el-button-border-color: var(--color-danger) !important;--el-button-hover-bg-color: #c43c3c !important;--el-button-hover-border-color: #c43c3c !important}.el-input__wrapper{border-radius:var(--radius-md)!important;box-shadow:0 0 0 1px var(--color-border) inset!important;transition:all var(--transition-fast)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--color-text-tertiary) inset!important}.el-input__wrapper.is-focus{box-shadow:0 0 0 2px var(--color-primary-light) inset,0 0 0 1px var(--color-primary) inset!important}.el-select .el-input__wrapper{border-radius:var(--radius-md)!important}.el-dialog{border-radius:var(--radius-xl)!important;overflow:hidden}.el-dialog__header{padding:var(--space-lg) var(--space-xl)!important;border-bottom:1px solid var(--color-divider);margin-right:0!important}.el-dialog__body{padding:var(--space-xl)!important}.el-dialog__footer{padding:var(--space-md) var(--space-xl) var(--space-lg)!important;border-top:1px solid var(--color-divider)}.el-message-box{border-radius:var(--radius-lg)!important}.el-tag{border-radius:var(--radius-full)!important;font-family:var(--font-body)}.el-table{--el-table-border-color: var(--color-border-light);--el-table-header-bg-color: var(--color-primary-lighter);font-family:var(--font-body)}.el-table th.el-table__cell{font-weight:600;color:var(--color-text-secondary);font-size:13px;text-transform:none;letter-spacing:0}.el-drawer__header{border-bottom:1px solid var(--color-divider);padding:var(--space-lg) var(--space-xl)!important;margin-bottom:0!important}.el-empty__description p{color:var(--color-text-tertiary);font-family:var(--font-body)}.el-select-dropdown__item.is-selected{color:var(--color-primary)!important;font-weight:600}.page-container{max-width:1200px;margin:0 auto;padding:var(--space-xl)}.section-title{font-family:var(--font-heading);font-size:13px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-md)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-base),transform var(--transition-base)}.fade-enter-from{opacity:0;transform:translateY(8px)}.fade-leave-to{opacity:0;transform:translateY(-8px)}.slide-up-enter-active,.slide-up-leave-active{transition:all var(--transition-base)}.slide-up-enter-from{opacity:0;transform:translateY(16px)}.slide-up-leave-to{opacity:0;transform:translateY(-16px)}html.dark .el-table{--el-table-border-color: var(--color-border-light);--el-table-header-bg-color: var(--color-primary-lighter);--el-table-bg-color: var(--color-surface);--el-table-tr-bg-color: var(--color-surface);--el-table-row-hover-bg-color: var(--color-surface-hover);--el-table-text-color: var(--color-text);--el-table-header-text-color: var(--color-text-secondary)}html.dark .el-dialog{--el-dialog-bg-color: var(--color-surface)}html.dark .el-drawer{--el-drawer-bg-color: var(--color-surface)}html.dark .el-input__wrapper{box-shadow:0 0 0 1px var(--color-border) inset!important;background:var(--color-surface)!important}html.dark .el-message-box{--el-messagebox-bg-color: var(--color-surface)}
