html.dark{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--el-color-primary:#409eff;--el-color-primary-light-3:#3375b9;--el-color-primary-light-5:#2a598a;--el-color-primary-light-7:#213d5b;--el-color-primary-light-8:#1d3043;--el-color-primary-light-9:#18222b;--el-color-primary-dark-2:#66b1ff;--el-color-success:#67c23a;--el-color-success-light-3:#4e8e2f;--el-color-success-light-5:#3e6b27;--el-color-success-light-7:#2d481f;--el-color-success-light-8:#25371c;--el-color-success-light-9:#1c2518;--el-color-success-dark-2:#85ce61;--el-color-warning:#e6a23c;--el-color-warning-light-3:#a77730;--el-color-warning-light-5:#7d5b28;--el-color-warning-light-7:#533f20;--el-color-warning-light-8:#3e301c;--el-color-warning-light-9:#292218;--el-color-warning-dark-2:#ebb563;--el-color-danger:#f56c6c;--el-color-danger-light-3:#b25252;--el-color-danger-light-5:#854040;--el-color-danger-light-7:#582e2e;--el-color-danger-light-8:#412626;--el-color-danger-light-9:#2a1d1d;--el-color-danger-dark-2:#f78989;--el-color-error:#f56c6c;--el-color-error-light-3:#b25252;--el-color-error-light-5:#854040;--el-color-error-light-7:#582e2e;--el-color-error-light-8:#412626;--el-color-error-light-9:#2a1d1d;--el-color-error-dark-2:#f78989;--el-color-info:#909399;--el-color-info-light-3:#6b6d71;--el-color-info-light-5:#525457;--el-color-info-light-7:#393a3c;--el-color-info-light-8:#2d2d2f;--el-color-info-light-9:#202121;--el-color-info-dark-2:#a6a9ad;--el-box-shadow:0px 12px 32px 4px #0000005c, 0px 8px 20px #000000b8;--el-box-shadow-light:0px 0px 12px #000000b8;--el-box-shadow-lighter:0px 0px 6px #000000b8;--el-box-shadow-dark:0px 16px 48px 16px #000000b8, 0px 12px 32px #000, 0px 8px 16px -8px #000;--el-bg-color-page:#0a0a0a;--el-bg-color:#141414;--el-bg-color-overlay:#1d1e1f;--el-text-color-primary:#e5eaf3;--el-text-color-regular:#cfd3dc;--el-text-color-secondary:#a3a6ad;--el-text-color-placeholder:#8d9095;--el-text-color-disabled:#6c6e72;--el-border-color-darker:#636466;--el-border-color-dark:#58585b;--el-border-color:#4c4d4f;--el-border-color-light:#414243;--el-border-color-lighter:#363637;--el-border-color-extra-light:#2b2b2c;--el-fill-color-darker:#424243;--el-fill-color-dark:#39393a;--el-fill-color:#303030;--el-fill-color-light:#262727;--el-fill-color-lighter:#1d1d1d;--el-fill-color-extra-light:#191919;--el-fill-color-blank:#141414;--el-mask-color:#000c;--el-mask-color-extra-light:#0000004d}html.dark .el-button{--el-button-disabled-text-color:#ffffff80}html.dark .el-card{--el-card-bg-color:var(--el-bg-color-overlay);--el-fill-color-blank:var(--el-card-bg-color)}html.dark .el-empty{--el-empty-fill-color-0:var(--el-color-black);--el-empty-fill-color-1:#4b4b52;--el-empty-fill-color-2:#36383d;--el-empty-fill-color-3:#1e1e20;--el-empty-fill-color-4:#262629;--el-empty-fill-color-5:#202124;--el-empty-fill-color-6:#212224;--el-empty-fill-color-7:#1b1c1f;--el-empty-fill-color-8:#1c1d1f;--el-empty-fill-color-9:#18181a}:root{--color-primary:#10b981;--color-primary-hover:#059669;--color-primary-active:#047857;--color-primary-light:#10b9811f;--color-primary-glow:#10b98140;--color-success:#22c55e;--color-success-hover:#16a34a;--color-success-light:#22c55e1f;--color-warning:#f59e0b;--color-warning-hover:#d97706;--color-warning-light:#f59e0b1f;--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-danger-light:#ef44441f;--color-info:#3b82f6;--color-info-hover:#2563eb;--color-info-light:#3b82f61f;--color-purple:#8b5cf6;--color-purple-light:#8b5cf61f;--color-indigo:#6366f1;--color-indigo-light:#6366f11f;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--text-placeholder:#cbd5e1;--text-white:#fff;--bg-page:#f8fafc;--bg-card:#fff;--bg-input:#fff;--bg-sidebar:#ffffffd9;--bg-hover:#00000008;--bg-active:#10b9810f;--bg-selected:#10b9811a;--bg-stripe:#f8fafc;--bg-overlay:#0f172a4d;--bg-glass-overlay:#fff9;--border-color:#e2e8f0;--border-light:#0000000a;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:22px;--radius-2xl:28px;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000a, 0 4px 12px #00000008;--shadow-md:0 2px 6px #0000000a, 0 8px 24px #0000000f;--shadow-lg:0 4px 12px #0000000a, 0 16px 40px #00000014;--shadow-xl:0 8px 24px #0000000f, 0 24px 60px #0000001f;--shadow-glow:0 0 0 1px #10b9811a, 0 4px 16px #10b9811f;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--font-family:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Inter", "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:"SF Mono", "JetBrains Mono", SFMono-Regular, Menlo, Consolas, monospace;--text-xs:11px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:17px;--text-xl:20px;--text-2xl:24px;--text-3xl:28px;--text-4xl:34px;--ease-default:cubic-bezier(.25, .1, .25, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--ease-bounce:cubic-bezier(.34, 1.8, .64, 1);--duration-fast:.18s;--duration-normal:.3s;--duration-slow:.45s;--glass-bg:#ffffffb8;--glass-blur:blur(24px);--glass-saturate:saturate(180%);--glass-border:1px solid #ffffff4d;--sidebar-width:240px;--sidebar-collapsed-width:64px;--header-height:56px;--tabbar-height:40px}[data-theme=dark],html.dark{--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--text-placeholder:#475569;--bg-page:#0f172a;--bg-card:#1e293b;--bg-input:#1e293b;--bg-sidebar:#1e293bd9;--bg-hover:#ffffff0d;--bg-active:#10b9811f;--bg-selected:#10b9812e;--bg-stripe:#1e293b;--bg-overlay:#00000080;--bg-glass-overlay:#0f172a99;--border-color:#334155;--border-light:#ffffff0f;--glass-bg:#1e293bcc;--glass-border:1px solid #ffffff14;--shadow-sm:0 1px 3px #0003, 0 4px 12px #00000026;--shadow-md:0 2px 6px #0003, 0 8px 24px #0003;--shadow-lg:0 4px 12px #0003, 0 16px 40px #0000004d;--shadow-xl:0 8px 24px #0000004d, 0 24px 60px #0006}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-out) forwards}.animate-slide-up{animation:slideUp var(--duration-slow) var(--ease-out) forwards}.animate-scale-in{animation:scaleIn var(--duration-normal) var(--ease-spring) forwards}[data-animate]{opacity:0;transition:opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out);transform:translateY(16px)}[data-animate].visible{opacity:1;transform:translateY(0)}.fade-enter-active,.fade-leave-active{transition:opacity var(--duration-normal) var(--ease-default)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active{transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out)}.slide-up-leave-active{transition:opacity var(--duration-fast) var(--ease-default), transform var(--duration-fast) var(--ease-default)}.slide-up-enter-from{opacity:0;transform:translateY(12px)}.slide-up-leave-to{opacity:0;transform:translateY(-8px)}.scale-enter-active{transition:opacity var(--duration-normal) var(--ease-spring), transform var(--duration-normal) var(--ease-spring)}.scale-leave-active{transition:opacity var(--duration-fast) var(--ease-default), transform var(--duration-fast) var(--ease-default)}.scale-enter-from{opacity:0;transform:scale(.92)}.scale-leave-to{opacity:0;transform:scale(.95)}.slide-right-enter-active{transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out)}.slide-right-leave-active{transition:opacity var(--duration-fast) var(--ease-default), transform var(--duration-fast) var(--ease-default)}.slide-right-enter-from{opacity:0;transform:translate(20px)}.slide-right-leave-to{opacity:0;transform:translate(-20px)}.fade-view-enter-active{transition:opacity .15s ease-out}.fade-view-leave-active{transition:opacity .1s ease-in;position:absolute;top:0;bottom:0;left:0;right:0}.fade-view-enter-from,.fade-view-leave-to{opacity:0}:root{--el-color-primary:var(--color-primary);--el-color-primary-light-3:#58cea7;--el-color-primary-light-5:#88dcc0;--el-color-primary-light-7:#b7ead9;--el-color-primary-light-8:#cff1e6;--el-color-primary-light-9:#e7f8f2;--el-color-primary-dark-2:var(--color-primary-hover);--el-color-success:var(--color-success);--el-color-warning:var(--color-warning);--el-color-danger:var(--color-danger);--el-color-info:var(--color-primary);--el-text-color-primary:var(--text-primary);--el-text-color-regular:var(--text-secondary);--el-text-color-secondary:var(--text-tertiary);--el-text-color-placeholder:var(--text-placeholder);--el-bg-color:var(--bg-card);--el-bg-color-page:var(--bg-page);--el-bg-color-overlay:var(--bg-card);--el-border-color:var(--border-color);--el-border-color-light:var(--border-light);--el-border-radius-base:var(--radius-sm);--el-border-radius-small:var(--radius-xs);--el-border-radius-round:var(--radius-full);--el-font-family:var(--font-family);--el-font-size-base:var(--text-base);--el-font-size-small:var(--text-sm);--el-font-size-extra-small:var(--text-xs);--el-font-size-medium:var(--text-md);--el-font-size-large:var(--text-lg);--el-box-shadow:var(--shadow-md);--el-box-shadow-light:var(--shadow-sm);--el-box-shadow-lighter:var(--shadow-xs);--el-box-shadow-dark:var(--shadow-lg);--el-component-size:38px;--el-component-size-small:32px;--el-component-size-large:46px;--el-fill-color-light:#eff1f5}html.dark{--el-color-primary:var(--color-primary);--el-color-primary-dark-2:var(--color-primary-hover);--el-color-primary-light-3:#0e9b6e;--el-color-primary-light-5:#0c7d59;--el-color-primary-light-7:#0a5f43;--el-color-primary-light-8:#09502e;--el-color-primary-light-9:#084129;--el-color-success:var(--color-success);--el-color-warning:var(--color-warning);--el-color-danger:var(--color-danger);--el-color-info:var(--color-info);--el-text-color-primary:var(--text-primary);--el-text-color-regular:var(--text-secondary);--el-text-color-secondary:var(--text-tertiary);--el-text-color-placeholder:var(--text-placeholder);--el-bg-color:var(--bg-card);--el-bg-color-page:var(--bg-page);--el-bg-color-overlay:var(--bg-card);--el-border-color:var(--border-color);--el-border-color-light:var(--border-light);--el-fill-color:var(--bg-hover);--el-fill-color-light:#ffffff0a;--el-fill-color-lighter:#ffffff05;--el-fill-color-blank:var(--bg-card);--el-box-shadow:var(--shadow-md);--el-box-shadow-light:var(--shadow-sm);--el-box-shadow-lighter:var(--shadow-xs);--el-box-shadow-dark:var(--shadow-lg)}.el-button{border-radius:var(--radius-sm);letter-spacing:-.01em;transition:all var(--duration-fast) var(--ease-default);font-weight:600}.el-button:active{transition-duration:80ms;transform:scale(.96)}.el-button--danger.is-plain{color:var(--color-danger-hover);border-color:var(--color-danger-light);background:0 0}.el-button--danger.is-plain:hover{background:var(--color-danger-light);color:#b91c1c}.el-button--small{border-radius:var(--radius-xs);font-weight:500}.el-input{--el-input-border-radius:var(--radius-sm)}.el-input .el-input__wrapper{border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default)}.el-input .el-input__wrapper:hover{box-shadow:inset 0 0 0 1.5px #94a3b8}.el-input .el-input__wrapper.is-focus{box-shadow:0 0 0 1.5px var(--color-primary) inset, 0 0 0 3px var(--color-primary-glow)}.el-input-number--default .el-input-number__increase,.el-input-number--default .el-input-number__decrease{--el-input-number-controls-height:18px!important}.el-select .el-select__wrapper{border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default)}.el-select .el-select__wrapper.is-focused{box-shadow:0 0 0 1.5px var(--color-primary) inset, 0 0 0 3px var(--color-primary-glow)!important}.el-table{--el-table-border-color:var(--border-light);--el-table-header-bg-color:var(--bg-stripe);--el-table-row-hover-bg-color:var(--bg-active)}.el-table th.el-table__cell{font-weight:600;font-size:var(--text-sm);color:var(--text-secondary);padding:var(--space-3) 0;background:var(--bg-stripe)}.el-table td.el-table__cell{padding:var(--space-4) 0;font-size:var(--text-base)}.el-table .el-table__row:hover>td.el-table__cell{background-color:var(--bg-active)}.el-table tbody .el-table-fixed-column--right{background-color:var(--bg-card)!important;padding-left:1px!important}.el-table:before,.el-table .el-table__inner-wrapper:before{display:none}.el-pagination{width:100%;padding:var(--space-2) var(--space-5)}.el-pagination .el-pagination__total{margin-right:auto}.el-pagination .el-pager li{border-radius:var(--radius-sm);min-width:34px;height:34px;font-weight:500;line-height:34px;font-size:var(--text-sm)}.el-pagination .el-pager li.is-active{background:var(--color-primary);color:var(--text-white);box-shadow:0 2px 6px #10b9814d}.el-pagination .btn-prev,.el-pagination .btn-next{border-radius:var(--radius-sm);min-width:34px;height:34px}.el-overlay-dialog{justify-content:center;align-items:center;display:flex}.el-dialog{border-radius:var(--radius-xl);box-shadow:var(--shadow-xl), 0 0 0 1px var(--border-light);flex-direction:column;max-height:85vh;padding:0;display:flex;overflow:hidden;margin:0!important}.el-dialog .el-dialog__header{padding:var(--space-3) var(--space-6) var(--space-4);border-bottom:1px solid var(--border-light);flex-shrink:0;margin-right:0}.el-dialog .el-dialog__header .el-dialog__title{font-size:var(--text-lg);letter-spacing:-.02em;font-weight:700}.el-dialog .el-dialog__headerbtn{top:var(--space-3);right:var(--space-6);background:var(--bg-hover);border-radius:var(--radius-full);width:32px;height:32px;transition:all var(--duration-fast) var(--ease-default);justify-content:center;align-items:center;display:flex}.el-dialog .el-dialog__headerbtn:hover{background:var(--bg-selected);transform:rotate(90deg)}.el-dialog .el-dialog__headerbtn .el-dialog__close{color:var(--text-tertiary);font-size:16px}.el-dialog .el-dialog__body{padding:var(--space-4) var(--space-6) var(--space-6);flex:1;min-height:0;overflow-y:auto}.el-dialog .el-dialog__footer{padding:var(--space-3) var(--space-6);border-top:1px solid var(--border-light);flex-shrink:0}.el-dialog .el-dialog__footer .el-button+.el-button{margin-left:12px}.el-overlay{-webkit-backdrop-filter:blur(8px)saturate(120%)}.el-drawer{border-radius:var(--radius-xl) 0 0 var(--radius-xl);box-shadow:var(--shadow-xl)}.el-drawer__header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-light);margin-bottom:0}.el-tag{border-radius:var(--radius-xs);font-weight:600;font-size:var(--text-xs);letter-spacing:-.01em;height:24px;padding:0 var(--space-3);border:none}.el-card{border-radius:var(--radius-md);border-color:var(--border-light);box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-out)}.el-card:hover{box-shadow:var(--shadow-md)}.el-form-item{margin-bottom:var(--space-5)}.el-form-item .el-form-item__label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:600}.el-tabs .el-tabs__nav-wrap:after{background:var(--border-light);height:1px}.el-tabs .el-tabs__item{font-size:var(--text-base);color:var(--text-tertiary);transition:color var(--duration-fast) var(--ease-default);font-weight:600}.el-tabs .el-tabs__item:hover{color:var(--text-primary)}.el-tabs .el-tabs__item.is-active{color:var(--color-primary);font-weight:600}.el-tabs .el-tabs__active-bar{background:var(--color-primary);border-radius:2px;height:2.5px}.el-message{border-radius:var(--radius-sm)}html.dark .el-message{box-shadow:0 4px 12px #0000004d}html.dark .el-message--error{--el-message-bg-color:#2d1619;--el-message-border-color:#5c2d30;--el-message-text-color:#f87171}html.dark .el-message--success{--el-message-bg-color:#162d1f;--el-message-border-color:#2d5c3a;--el-message-text-color:#4ade80}html.dark .el-message--warning{--el-message-bg-color:#2d2516;--el-message-border-color:#5c4a2d;--el-message-text-color:#fbbf24}html.dark .el-message--info{--el-message-bg-color:#1a2332;--el-message-border-color:#2d3f5c;--el-message-text-color:#60a5fa}.el-message-box{border-radius:var(--radius-xl)}.el-checkbox__inner{--el-checkbox-border-radius:2px}.login-page .login-btn.el-button--primary{transition:all var(--duration-fast) var(--ease-default);box-shadow:0 4px 16px #10b98159}.login-page .login-btn.el-button--primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #10b98173}.login-page .login-btn.el-button--primary:active{transform:translateY(0)scale(.96)}.page-header{margin-bottom:var(--space-5);animation:fadeIn var(--duration-normal) var(--ease-out);justify-content:space-between;align-items:center;display:flex}.page-header h1{font-size:var(--text-2xl);color:var(--text-primary);letter-spacing:-.3px;font-weight:700}.header-actions{gap:var(--space-2);display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:38px;padding:0 var(--space-5);font-size:var(--text-sm);letter-spacing:-.01em;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-default);-webkit-user-select:none;user-select:none;white-space:nowrap;border:none;font-family:inherit;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:active{transition-duration:80ms;transform:scale(.96)}.btn-primary{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-hover));color:var(--text-white);box-shadow:0 2px 8px #10b9814d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 16px #10b98166}.btn-primary:active{transform:scale(.96)translateY(0);box-shadow:0 1px 4px #10b98133}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-outline{background:var(--bg-input);color:var(--text-primary);border:1.5px solid var(--border-color);font-weight:500}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.btn-link{color:var(--color-primary);padding:0 var(--space-3);background:0 0;font-weight:500}.btn-link:hover{background:var(--color-primary-light);color:var(--color-primary-hover)}.btn-danger{color:var(--color-danger-hover);padding:0 var(--space-3);background:0 0;font-weight:500}.btn-danger:hover{background:var(--color-danger-light);color:#b91c1c}.btn-danger-solid{background:linear-gradient(135deg, var(--color-danger), var(--color-danger-hover));color:var(--text-white);box-shadow:0 2px 8px #ef44444d}.btn-danger-solid:hover{transform:translateY(-1px);box-shadow:0 4px 16px #ef444466}.btn-sm{height:32px;padding:0 var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-xs);font-weight:500}.btn-lg{height:46px;padding:0 var(--space-8);font-size:var(--text-md);border-radius:var(--radius-md)}.filter-card{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);margin-bottom:var(--space-5);animation:slideUp var(--duration-normal) var(--ease-out)}.filter-bar{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);flex-wrap:wrap;display:flex}.filter-bar .el-input{--el-input-height:36px}.filter-bar .el-input .el-input__wrapper{height:36px}.filter-bar .el-select{--el-component-size:36px}.filter-bar .el-select .el-select__wrapper{height:36px;min-height:36px}.filter-bar .el-date-editor{--el-input-height:36px;height:36px}.filter-bar .el-date-editor .el-input__wrapper{height:36px}.filter-bar .filter-sep{font-size:var(--text-sm);color:var(--text-tertiary)}.filter-actions{margin-left:auto;display:flex}.filter-actions .el-button{height:36px}.tab-filter{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}.tab-filter .el-input{--el-input-height:36px}.tab-filter .el-input .el-input__wrapper{height:36px}.tab-filter .el-select{--el-component-size:36px}.tab-filter .el-select .el-select__wrapper{height:36px;min-height:36px}.tab-filter .el-button{--el-component-size:36px;height:36px}.table-card{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);animation:slideUp var(--duration-slow) var(--ease-out) 80ms both;overflow:hidden}.table-toolbar{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}.toolbar-left,.toolbar-right{align-items:center;gap:var(--space-2);display:flex}.toolbar-info{font-size:var(--text-sm);color:var(--text-tertiary)}.cell:has(.row-actions){padding:0}.row-actions{align-items:center;gap:var(--space-1);display:flex}.row-actions .btn-link,.row-actions .btn-danger{height:28px;font-size:var(--text-sm)}.row-actions .el-button{height:28px;padding:0 var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-xs);font-weight:500}.row-actions .el-button+.el-button{margin-left:0}.row-actions .el-button.is-link.el-button--primary{color:var(--color-primary)}.row-actions .el-button.is-link.el-button--primary:hover{background:var(--color-primary-light);color:var(--color-primary-hover)}.row-actions .el-button.is-link.el-button--danger,.row-actions .el-button.is-text.el-button--danger{color:var(--color-danger-hover)}.row-actions .el-button.is-link.el-button--danger:hover,.row-actions .el-button.is-text.el-button--danger:hover{background:var(--color-danger-light);color:#b91c1c}.row-actions .el-button.is-text.el-button--primary{color:var(--color-primary)}.row-actions .el-button.is-text.el-button--primary:hover{background:var(--color-primary-light);color:var(--color-primary-hover)}.tag{height:24px;padding:0 var(--space-3);font-size:var(--text-xs);letter-spacing:-.01em;border-radius:var(--radius-xs);white-space:nowrap;align-items:center;font-weight:600;display:inline-flex}.tag-primary{background:var(--color-primary-light);color:var(--color-primary)}.tag-success{background:var(--color-success-light);color:var(--color-success-hover)}.tag-warning{background:var(--color-warning-light);color:var(--color-warning-hover)}.tag-danger{background:var(--color-danger-light);color:var(--color-danger-hover)}.tag-default{background:var(--bg-hover);color:var(--text-secondary)}.form-group{margin-bottom:var(--space-5)}.form-label{margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);font-weight:600;display:block}.form-required:after{content:" *";color:var(--color-danger)}.form-row,.form-grid-2{gap:0 var(--space-5);grid-template-columns:1fr 1fr;display:grid}.append-input .el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.modal-header{padding:var(--space-6) var(--space-6) var(--space-4);justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-size:var(--text-lg);letter-spacing:-.02em;color:var(--text-primary);font-weight:700}.modal-close{background:var(--bg-hover);border-radius:var(--radius-full);cursor:pointer;width:32px;height:32px;color:var(--text-tertiary);transition:all var(--duration-fast) var(--ease-default);border:none;justify-content:center;align-items:center;font-size:16px;display:flex}.modal-close:hover{background:var(--bg-selected);color:var(--text-primary);transform:rotate(90deg)}.modal-body{padding:var(--space-4) var(--space-6) var(--space-6);flex:1;overflow-y:auto}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-top:1px solid var(--border-light);display:flex}.chart-card{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-xs);overflow:hidden}.chart-header{padding:var(--space-5) var(--space-5) var(--space-3);justify-content:space-between;align-items:center;display:flex}.chart-header h3{font-size:var(--text-md);color:var(--text-primary);letter-spacing:-.02em;font-weight:700}.chart-body{padding:0 var(--space-5) var(--space-5)}.stat-grid{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(4,1fr);display:grid}.stat-card{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-5);border:1px solid var(--border-light);box-shadow:var(--shadow-xs);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);position:relative;overflow:hidden}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-light);transform:translateY(-2px)}.stat-icon{border-radius:var(--radius-sm);width:42px;height:42px;margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.stat-icon svg{color:#fff;width:20px;height:20px}.stat-icon.blue{background:linear-gradient(135deg, var(--color-primary), #60a5fa)}.stat-icon.green{background:linear-gradient(135deg, var(--color-success), #4ade80)}.stat-icon.orange{background:linear-gradient(135deg, var(--color-warning), #fbbf24)}.stat-icon.purple{background:linear-gradient(135deg, var(--color-purple), #a78bfa)}.stat-icon.red{background:linear-gradient(135deg, var(--color-danger), #f87171)}.stat-icon.cyan{background:linear-gradient(135deg,#06b6d4,#22d3ee)}.stat-value{font-size:var(--text-3xl);color:var(--text-primary);letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-weight:800;line-height:1.1}.stat-desc{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:4px}.stat-footer{align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-light);font-size:var(--text-xs);color:var(--text-tertiary);display:flex}.stat-change{font-weight:700}.stat-change.up{color:var(--color-success)}.stat-change.down{color:var(--color-danger)}.status-dot{border-radius:var(--radius-full);width:7px;height:7px;margin-right:6px;display:inline-block}.status-dot.active{background:var(--color-success);box-shadow:0 0 6px #22c55e66}.status-dot.inactive{background:var(--text-placeholder)}.avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary), #818cf8);width:36px;height:36px;color:var(--text-white);font-size:var(--text-sm);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.avatar-sm{width:28px;height:28px;font-size:var(--text-xs)}.avatar-lg{width:48px;height:48px;font-size:var(--text-lg)}.tabs{gap:var(--space-1);border-bottom:1px solid var(--border-light);padding:0 var(--space-6);display:flex}.tab-item{padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--text-tertiary);cursor:pointer;transition:color var(--duration-fast) var(--ease-default);background:0 0;border:none;font-family:inherit;font-weight:600;position:relative}.tab-item:hover{color:var(--text-primary)}.tab-item.active{color:var(--color-primary)}.tab-item.active:after{content:"";bottom:-1px;left:var(--space-3);right:var(--space-3);background:var(--color-primary);border-radius:2px;height:2.5px;position:absolute}.tab-content{padding:var(--space-6)}.empty-state{padding:var(--space-12) var(--space-6);color:var(--text-tertiary);flex-direction:column;align-items:center;display:flex}.empty-state svg{margin-bottom:var(--space-4);opacity:.4}.empty-state p{font-size:var(--text-md)}.section-card{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-light);box-shadow:var(--shadow-xs);overflow:hidden}.card-header{padding:var(--space-5) var(--space-5) var(--space-3);justify-content:space-between;align-items:center;display:flex}.card-header h3{font-size:var(--text-md);color:var(--text-primary);letter-spacing:-.02em;font-weight:700}.panel-link{font-size:var(--text-sm);color:var(--color-primary);cursor:pointer;font-weight:600;text-decoration:none}.panel-link:hover{color:var(--color-primary-hover)}.sticky-footer{bottom:0;left:var(--sidebar-width);padding:var(--space-4) var(--space-6);background:var(--bg-card);border-top:1px solid var(--border-light);justify-content:flex-end;align-items:center;gap:var(--space-3);z-index:100;display:flex;position:fixed;right:0;box-shadow:0 -2px 12px #0000000f}@media (max-width:1200px){.stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.stat-grid{grid-template-columns:1fr}}.pagination-wrap{justify-content:flex-end;display:flex}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{font-family:var(--font-family);font-size:var(--text-base);color:var(--text-primary);background:var(--bg-page);line-height:1.6}a{color:var(--color-primary);transition:color var(--duration-fast) var(--ease-default);text-decoration:none}a:hover{color:var(--color-primary-hover)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#0000001f}::-webkit-scrollbar-thumb:hover{background:#0003}.glass{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur) var(--glass-saturate);border:var(--glass-border)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.flex-1{flex:1}.w-full{width:100%}.text-center{text-align:center}.text-right{text-align:right}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#nprogress .bar{background:var(--color-primary)!important;height:2px!important}#nprogress .peg{box-shadow:0 0 10px var(--color-primary), 0 0 5px var(--color-primary)!important}
