#app{height:100vh;min-height:100vh;background:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease}.page-enter-active,.page-leave-active{transition:opacity .2s ease}.page-enter-from,.page-leave-to{opacity:0}:root{--font-family-sans: Inter, Noto Sans TC, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;--font-family-mono: JetBrains Mono, Fira Code, SF Mono, Monaco, Cascadia Code, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--spacing-0: 0;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--radius-none: 0;--radius-sm: .25rem;--radius-base: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--navbar-height: 64px;--mobile-nav-height: 64px;--content-max-width: 1400px;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-sidebar: 1080;--z-navbar: 1090;--transition-fast: all .15s cubic-bezier(.4, 0, .2, 1);--transition-base: all .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: all .5s cubic-bezier(.4, 0, .2, 1);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s}[data-theme=dark]{color-scheme:dark;--bg-primary: #0a0f1a;--bg-secondary: #111827;--bg-tertiary: #1f2937;--bg-elevated: #374151;--bg-hover: #4b5563;--bg-active: #6b7280;--text-primary: #f9fafb;--text-secondary: #d1d5db;--text-tertiary: #9ca3af;--text-disabled: #6b7280;--text-inverse: #0f172a;--border-primary: rgba(255, 255, 255, .1);--border-secondary: rgba(255, 255, 255, .06);--border-hover: rgba(255, 255, 255, .2);--border-focus: #57d2e6;--color-primary: #57d2e6;--color-primary-light: #7de0ef;--color-primary-dark: #3eb8cc;--color-primary-rgb: 87, 210, 230;--color-success: #10b981;--color-success-bg: rgba(16, 185, 129, .15);--color-success-border: rgba(16, 185, 129, .3);--color-warning: #f59e0b;--color-warning-bg: rgba(245, 158, 11, .15);--color-warning-border: rgba(245, 158, 11, .3);--color-error: #ef4444;--color-error-bg: rgba(239, 68, 68, .15);--color-error-border: rgba(239, 68, 68, .3);--color-info: #3b82f6;--color-info-bg: rgba(59, 130, 246, .15);--color-info-border: rgba(59, 130, 246, .3);--glass-bg: rgba(17, 24, 39, .7);--glass-bg-light: rgba(31, 41, 55, .6);--glass-bg-dark: rgba(10, 15, 26, .8);--glass-border: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .15);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .4);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .3), 0 1px 2px -1px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -4px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 8px 10px -6px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px rgba(87, 210, 230, .3);--shadow-glow-lg: 0 0 40px rgba(87, 210, 230, .4);--gradient-primary: linear-gradient(135deg, #57d2e6 0%, #3b82f6 100%);--gradient-primary-hover: linear-gradient(135deg, #7de0ef 0%, #60a5fa 100%);--gradient-bg: linear-gradient(180deg, #0a0f1a 0%, #111827 100%);--gradient-sidebar: linear-gradient(180deg, #0f172a 0%, #1e293b 100%);--gradient-card: linear-gradient(145deg, rgba(255, 255, 255, .05) 0%, rgba(255, 255, 255, .02) 100%);--gradient-shine: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, .05) 50%, transparent 70%);--input-bg: rgba(17, 24, 39, .6);--input-border: rgba(255, 255, 255, .1);--input-border-hover: rgba(255, 255, 255, .2);--input-border-focus: #57d2e6;--input-placeholder: #6b7280;--scrollbar-track: #1f2937;--scrollbar-thumb: #4b5563;--scrollbar-thumb-hover: #6b7280;--overlay-bg: rgba(0, 0, 0, .6);--divider: rgba(255, 255, 255, .08);--highlight: rgba(87, 210, 230, .1);--selection-bg: rgba(87, 210, 230, .3)}[data-theme=light]{color-scheme:light;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-elevated: #ffffff;--bg-hover: #e2e8f0;--bg-active: #cbd5e1;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #64748b;--text-disabled: #94a3b8;--text-inverse: #f9fafb;--border-primary: rgba(0, 0, 0, .1);--border-secondary: rgba(0, 0, 0, .06);--border-hover: rgba(0, 0, 0, .15);--border-focus: #57d2e6;--color-primary: #3eb8cc;--color-primary-light: #57d2e6;--color-primary-dark: #2a9eb2;--color-primary-rgb: 62, 184, 204;--color-success: #059669;--color-success-bg: rgba(5, 150, 105, .1);--color-success-border: rgba(5, 150, 105, .3);--color-warning: #d97706;--color-warning-bg: rgba(217, 119, 6, .1);--color-warning-border: rgba(217, 119, 6, .3);--color-error: #dc2626;--color-error-bg: rgba(220, 38, 38, .1);--color-error-border: rgba(220, 38, 38, .3);--color-info: #2563eb;--color-info-bg: rgba(37, 99, 235, .1);--color-info-border: rgba(37, 99, 235, .3);--glass-bg: rgba(255, 255, 255, .8);--glass-bg-light: rgba(255, 255, 255, .9);--glass-bg-dark: rgba(241, 245, 249, .9);--glass-border: rgba(0, 0, 0, .08);--glass-border-hover: rgba(0, 0, 0, .15);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .1);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(62, 184, 204, .2);--shadow-glow-lg: 0 0 40px rgba(62, 184, 204, .3);--gradient-primary: linear-gradient(135deg, #3eb8cc 0%, #2563eb 100%);--gradient-primary-hover: linear-gradient(135deg, #57d2e6 0%, #3b82f6 100%);--gradient-bg: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%);--gradient-sidebar: linear-gradient(180deg, #1e293b 0%, #334155 100%);--gradient-card: linear-gradient(145deg, rgba(255, 255, 255, .9) 0%, rgba(241, 245, 249, .9) 100%);--gradient-shine: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, .5) 50%, transparent 70%);--input-bg: #ffffff;--input-border: rgba(0, 0, 0, .1);--input-border-hover: rgba(0, 0, 0, .2);--input-border-focus: #3eb8cc;--input-placeholder: #94a3b8;--scrollbar-track: #f1f5f9;--scrollbar-thumb: #cbd5e1;--scrollbar-thumb-hover: #94a3b8;--overlay-bg: rgba(0, 0, 0, .4);--divider: rgba(0, 0, 0, .08);--highlight: rgba(62, 184, 204, .1);--selection-bg: rgba(62, 184, 204, .2)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #57d2e64d}50%{box-shadow:0 0 40px #57d2e680}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-fade-in{animation:fadeIn .3s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .4s ease-out forwards}.animate-fade-in-down{animation:fadeInDown .4s ease-out forwards}.animate-fade-in-left{animation:fadeInLeft .4s ease-out forwards}.animate-fade-in-right{animation:fadeInRight .4s ease-out forwards}.animate-scale-in{animation:scaleIn .3s ease-out forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-glow{animation:glowPulse 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.delay-7{animation-delay:.7s}.delay-8{animation-delay:.8s}.delay-9{animation-delay:.9s}.delay-10{animation-delay:1s}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.hover-scale{transition:transform .3s ease}.hover-scale:hover{transform:scale(1.05)}.hover-glow{transition:box-shadow .3s ease}.hover-glow:hover{box-shadow:var(--shadow-glow)}.hover-shine{position:relative;overflow:hidden}.hover-shine:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.hover-shine:hover:before{left:100%}.page-enter-active,.page-leave-active{transition:opacity .3s ease,transform .3s ease}.page-enter-from{opacity:0;transform:translateY(10px)}.page-leave-to{opacity:0;transform:translateY(-10px)}.fade-slide-enter-active,.fade-slide-leave-active{transition:opacity .25s ease,transform .25s ease}.fade-slide-enter-from{opacity:0;transform:translate(20px)}.fade-slide-leave-to{opacity:0;transform:translate(-20px)}.scale-fade-enter-active,.scale-fade-leave-active{transition:opacity .2s ease,transform .2s ease}.scale-fade-enter-from,.scale-fade-leave-to{opacity:0;transform:scale(.95)}.collapse-enter-active,.collapse-leave-active{transition:max-height .3s ease,opacity .3s ease;overflow:hidden}.collapse-enter-from,.collapse-leave-to{max-height:0;opacity:0}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-elevated) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-base)}.number-animate{display:inline-block;transition:transform .3s ease}.number-animate.counting{animation:fadeInUp .3s ease-out}.loading-spinner{width:24px;height:24px;border:2px solid var(--border-primary);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.container{width:100%;max-width:var(--content-max-width, 1400px);margin-left:auto;margin-right:auto;padding-left:var(--spacing-4, 1rem);padding-right:var(--spacing-4, 1rem)}@media (min-width: 768px){.container{padding-left:var(--spacing-6, 1.5rem);padding-right:var(--spacing-6, 1.5rem)}}.grid{display:grid;gap:var(--spacing-4, 1rem)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}@media (max-width: 767px){.md\:grid-cols-2,.md\:grid-cols-3,.md\:grid-cols-4,.lg\:grid-cols-2,.lg\:grid-cols-3,.lg\:grid-cols-4{grid-template-columns:repeat(1,minmax(0,1fr))}}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-1{gap:var(--spacing-1, .25rem)}.gap-2{gap:var(--spacing-2, .5rem)}.gap-3{gap:var(--spacing-3, .75rem)}.gap-4{gap:var(--spacing-4, 1rem)}.gap-5{gap:var(--spacing-5, 1.25rem)}.gap-6{gap:var(--spacing-6, 1.5rem)}.gap-8{gap:var(--spacing-8, 2rem)}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}@media (max-width: 767px){.hidden-mobile{display:none!important}.show-mobile{display:block!important}.flex-mobile{display:flex!important}}@media (min-width: 768px){.hidden-tablet-up{display:none!important}.show-tablet-up{display:block!important}.flex-tablet-up{display:flex!important}}@media (min-width: 1024px){.hidden-desktop{display:none!important}.show-desktop{display:block!important}.flex-desktop{display:flex!important}}.m-0{margin:0}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-1)}.mt-2{margin-top:var(--spacing-2)}.mt-3{margin-top:var(--spacing-3)}.mt-4{margin-top:var(--spacing-4)}.mt-5{margin-top:var(--spacing-5)}.mt-6{margin-top:var(--spacing-6)}.mt-8{margin-top:var(--spacing-8)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-1)}.mb-2{margin-bottom:var(--spacing-2)}.mb-3{margin-bottom:var(--spacing-3)}.mb-4{margin-bottom:var(--spacing-4)}.mb-5{margin-bottom:var(--spacing-5)}.mb-6{margin-bottom:var(--spacing-6)}.mb-8{margin-bottom:var(--spacing-8)}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.p-0{padding:0}.p-1{padding:var(--spacing-1)}.p-2{padding:var(--spacing-2)}.p-3{padding:var(--spacing-3)}.p-4{padding:var(--spacing-4)}.p-5{padding:var(--spacing-5)}.p-6{padding:var(--spacing-6)}.p-8{padding:var(--spacing-8)}.px-4{padding-left:var(--spacing-4);padding-right:var(--spacing-4)}.px-6{padding-left:var(--spacing-6);padding-right:var(--spacing-6)}.py-2{padding-top:var(--spacing-2);padding-bottom:var(--spacing-2)}.py-4{padding-top:var(--spacing-4);padding-bottom:var(--spacing-4)}.py-6{padding-top:var(--spacing-6);padding-bottom:var(--spacing-6)}.w-full{width:100%}.w-auto{width:auto}.w-screen{width:100vw}.max-w-full{max-width:100%}.max-w-screen{max-width:100vw}.min-w-0{min-width:0}.h-full{height:100%}.h-auto{height:auto}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--font-size-xs, .75rem)}.text-sm{font-size:var(--font-size-sm, .875rem)}.text-base{font-size:var(--font-size-base, 1rem)}.text-lg{font-size:var(--font-size-lg, 1.125rem)}.text-xl{font-size:var(--font-size-xl, 1.25rem)}.text-2xl{font-size:var(--font-size-2xl, 1.5rem)}.text-3xl{font-size:var(--font-size-3xl, 1.875rem)}.text-4xl{font-size:var(--font-size-4xl, 2.25rem)}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-disabled{color:var(--text-disabled)}.text-brand{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.select-all{-webkit-user-select:all;user-select:all}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.transition{transition:var(--transition-base)}.transition-fast{transition:var(--transition-fast)}.transition-slow{transition:var(--transition-slow)}.transition-none{transition:none}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 767px){.table-responsive{display:block}}:root{--el-color-primary: var(--color-primary);--el-color-primary-light-3: rgba(var(--color-primary-rgb), .7);--el-color-primary-light-5: rgba(var(--color-primary-rgb), .5);--el-color-primary-light-7: rgba(var(--color-primary-rgb), .3);--el-color-primary-light-8: rgba(var(--color-primary-rgb), .2);--el-color-primary-light-9: rgba(var(--color-primary-rgb), .1);--el-color-primary-dark-2: var(--color-primary-dark);--el-color-success: var(--color-success);--el-color-warning: var(--color-warning);--el-color-danger: var(--color-error);--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-disabled);--el-text-color-disabled: var(--text-disabled);--el-border-color: var(--border-primary);--el-border-color-light: var(--border-secondary);--el-border-color-lighter: var(--border-secondary);--el-border-color-extra-light: var(--border-secondary);--el-border-color-dark: var(--border-hover);--el-border-color-darker: var(--border-hover);--el-fill-color: var(--bg-tertiary);--el-fill-color-light: var(--bg-secondary);--el-fill-color-lighter: var(--bg-primary);--el-fill-color-extra-light: var(--bg-primary);--el-fill-color-dark: var(--bg-elevated);--el-fill-color-darker: var(--bg-hover);--el-fill-color-blank: var(--bg-secondary);--el-bg-color: var(--bg-secondary);--el-bg-color-page: var(--bg-primary);--el-bg-color-overlay: var(--glass-bg);--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-mask-color: var(--overlay-bg);--el-mask-color-extra-light: rgba(0, 0, 0, .3);--el-border-radius-base: var(--radius-base);--el-border-radius-small: var(--radius-sm);--el-border-radius-round: var(--radius-full);--el-border-radius-circle: 100%;--el-font-size-extra-large: var(--font-size-xl);--el-font-size-large: var(--font-size-lg);--el-font-size-medium: var(--font-size-base);--el-font-size-base: var(--font-size-sm);--el-font-size-small: var(--font-size-xs);--el-font-size-extra-small: 11px}.el-button{--el-button-bg-color: transparent;--el-button-border-color: var(--border-primary);--el-button-text-color: var(--text-primary);--el-button-hover-bg-color: var(--bg-hover);--el-button-hover-border-color: var(--border-hover);--el-button-hover-text-color: var(--text-primary);--el-button-active-bg-color: var(--bg-active);--el-button-disabled-bg-color: var(--bg-tertiary);--el-button-disabled-border-color: var(--border-secondary);--el-button-disabled-text-color: var(--text-disabled);border-radius:var(--radius-base);font-weight:500;transition:all .2s ease}.el-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.el-button--primary{--el-button-bg-color: var(--color-primary);--el-button-border-color: transparent;--el-button-text-color: white;--el-button-hover-bg-color: var(--color-primary-light);--el-button-hover-border-color: transparent;--el-button-hover-text-color: white;background:var(--gradient-primary);border:none;font-weight:600}.el-button--primary:hover{background:var(--gradient-primary-hover);box-shadow:var(--shadow-glow)}.el-button--primary:active{transform:scale(.98)}.el-button--primary.is-disabled{background:var(--bg-tertiary);color:var(--text-disabled)}.el-button--success{--el-button-bg-color: var(--color-success);--el-button-border-color: var(--color-success);--el-button-text-color: white;--el-button-hover-bg-color: #059669;--el-button-hover-border-color: #059669}.el-button--warning{--el-button-bg-color: var(--color-warning);--el-button-border-color: var(--color-warning);--el-button-text-color: white;--el-button-hover-bg-color: #d97706;--el-button-hover-border-color: #d97706}.el-button--danger{--el-button-bg-color: var(--color-error);--el-button-border-color: var(--color-error);--el-button-text-color: white;--el-button-hover-bg-color: #dc2626;--el-button-hover-border-color: #dc2626}.el-button--text{--el-button-text-color: var(--text-secondary);--el-button-hover-text-color: var(--color-primary);--el-button-hover-bg-color: var(--highlight)}.el-button.is-link{--el-button-text-color: var(--color-primary)}.el-button.is-link:hover{text-decoration:underline}.el-input{--el-input-bg-color: var(--input-bg);--el-input-border-color: var(--input-border);--el-input-hover-border-color: var(--input-border-hover);--el-input-focus-border-color: var(--color-primary);--el-input-text-color: var(--text-primary);--el-input-placeholder-color: var(--input-placeholder)}.el-input .el-input__wrapper{background:var(--input-bg);border-radius:var(--radius-base);box-shadow:none;border:1px solid var(--input-border);transition:all .2s ease}.el-input .el-input__wrapper:hover{border-color:var(--input-border-hover)}.el-input .el-input__wrapper.is-focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.el-input.is-disabled .el-input__wrapper{background:var(--bg-tertiary);cursor:not-allowed}.el-select{--el-select-border-color-hover: var(--input-border-hover);--el-select-input-focus-border-color: var(--color-primary)}.el-select .el-select__wrapper{background:var(--input-bg);border-radius:var(--radius-base);box-shadow:none;border:1px solid var(--input-border)}.el-select .el-select__wrapper:hover{border-color:var(--input-border-hover)}.el-select .el-select__wrapper.is-focused{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.el-select-dropdown{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.el-select-dropdown .el-select-dropdown__item{color:var(--text-primary)}.el-select-dropdown .el-select-dropdown__item:hover{background:var(--highlight)}.el-select-dropdown .el-select-dropdown__item.is-selected{color:var(--color-primary);font-weight:500}.el-table{--el-table-bg-color: transparent;--el-table-tr-bg-color: transparent;--el-table-header-bg-color: rgba(var(--color-primary-rgb), .05);--el-table-row-hover-bg-color: var(--highlight);--el-table-text-color: var(--text-primary);--el-table-border-color: var(--border-secondary);--el-table-header-text-color: var(--text-secondary);background:transparent!important;border-radius:var(--radius-lg);overflow:hidden}.el-table:before,.el-table:after{display:none}.el-table .el-table__inner-wrapper:before{display:none}.el-table th.el-table__cell{background:var(--el-table-header-bg-color)!important;font-weight:600;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-primary)!important}.el-table td.el-table__cell{border-bottom:1px solid var(--border-secondary)!important;transition:background .2s ease}.el-table .el-table__row:hover>td.el-table__cell{background:var(--highlight)!important}.el-table .el-table__row--striped:hover>td.el-table__cell{background:var(--highlight)!important}.el-table .el-table__empty-block{background:transparent}.el-table .el-table__empty-text{color:var(--text-tertiary)}.el-card{--el-card-bg-color: var(--glass-bg);--el-card-border-color: var(--glass-border);background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all .3s ease}.el-card:hover{box-shadow:var(--shadow-lg)}.el-card .el-card__header{border-bottom:1px solid var(--border-secondary);padding:var(--spacing-4) var(--spacing-5)}.el-card .el-card__body{padding:var(--spacing-5)}.el-dialog{--el-dialog-bg-color: var(--glass-bg-dark);--el-dialog-border-radius: var(--radius-xl);background:var(--glass-bg-dark);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}.el-dialog .el-dialog__header{border-bottom:1px solid var(--border-secondary);padding:var(--spacing-5) var(--spacing-6)}.el-dialog .el-dialog__title{color:var(--text-primary);font-weight:600;font-size:var(--font-size-lg)}.el-dialog .el-dialog__body{padding:var(--spacing-6);color:var(--text-primary)}.el-dialog .el-dialog__footer{border-top:1px solid var(--border-secondary);padding:var(--spacing-4) var(--spacing-6)}.el-dialog .el-dialog__headerbtn{top:var(--spacing-5);right:var(--spacing-5)}.el-dialog .el-dialog__headerbtn .el-dialog__close{color:var(--text-tertiary)}.el-dialog .el-dialog__headerbtn .el-dialog__close:hover{color:var(--color-primary)}.el-overlay{background:var(--overlay-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.el-form-item{--el-form-label-color: var(--text-secondary)}.el-form-item .el-form-item__label{color:var(--text-secondary);font-weight:500}.el-form-item .el-form-item__error{color:var(--color-error)}.el-menu{--el-menu-bg-color: transparent;--el-menu-text-color: var(--text-secondary);--el-menu-active-color: var(--color-primary);--el-menu-hover-bg-color: var(--highlight);--el-menu-item-height: 48px;border-right:none!important}.el-menu .el-menu-item,.el-menu .el-sub-menu__title{border-radius:var(--radius-base);margin:4px 8px;transition:all .2s ease}.el-menu .el-menu-item:hover,.el-menu .el-sub-menu__title:hover{background:var(--highlight)!important}.el-menu .el-menu-item.is-active,.el-menu .el-sub-menu__title.is-active{background:rgba(var(--color-primary-rgb),.15)!important;color:var(--color-primary)!important;font-weight:500}.el-menu .el-menu-item.is-active:before,.el-menu .el-sub-menu__title.is-active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--color-primary);border-radius:0 2px 2px 0}.el-menu .el-sub-menu .el-menu-item{margin-left:16px}.el-pagination{--el-pagination-bg-color: transparent;--el-pagination-text-color: var(--text-secondary);--el-pagination-button-bg-color: var(--bg-tertiary);--el-pagination-button-color: var(--text-primary);--el-pagination-hover-color: var(--color-primary)}.el-pagination .el-pager li{background:var(--bg-tertiary);border-radius:var(--radius-base);margin:0 2px}.el-pagination .el-pager li:hover{color:var(--color-primary)}.el-pagination .el-pager li.is-active{background:var(--gradient-primary);color:#fff;font-weight:600}.el-pagination button{background:var(--bg-tertiary)!important;border-radius:var(--radius-base)}.el-pagination button:hover{color:var(--color-primary)}.el-pagination button:disabled{background:var(--bg-secondary)!important;color:var(--text-disabled)}.el-tag{--el-tag-bg-color: rgba(var(--color-primary-rgb), .1);--el-tag-border-color: rgba(var(--color-primary-rgb), .2);--el-tag-text-color: var(--color-primary);border-radius:var(--radius-full);font-weight:500}.el-tag--success{--el-tag-bg-color: var(--color-success-bg);--el-tag-border-color: var(--color-success-border);--el-tag-text-color: var(--color-success)}.el-tag--warning{--el-tag-bg-color: var(--color-warning-bg);--el-tag-border-color: var(--color-warning-border);--el-tag-text-color: var(--color-warning)}.el-tag--danger{--el-tag-bg-color: var(--color-error-bg);--el-tag-border-color: var(--color-error-border);--el-tag-text-color: var(--color-error)}.el-tag--info{--el-tag-bg-color: var(--color-info-bg);--el-tag-border-color: var(--color-info-border);--el-tag-text-color: var(--color-info)}.el-tabs{--el-tabs-header-height: 48px}.el-tabs .el-tabs__header{margin-bottom:var(--spacing-4)}.el-tabs .el-tabs__nav-wrap:after{background:var(--border-secondary)}.el-tabs .el-tabs__item{color:var(--text-tertiary);font-weight:500;transition:color .2s ease}.el-tabs .el-tabs__item:hover{color:var(--text-primary)}.el-tabs .el-tabs__item.is-active{color:var(--color-primary)}.el-tabs .el-tabs__active-bar{background:var(--gradient-primary);height:3px;border-radius:2px}.el-message{--el-message-bg-color: var(--glass-bg);background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.el-message .el-message__content{color:var(--text-primary)}.el-message--success{border-color:var(--color-success-border)}.el-message--warning{border-color:var(--color-warning-border)}.el-message--error{border-color:var(--color-error-border)}.el-notification{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl)}.el-notification .el-notification__title{color:var(--text-primary);font-weight:600}.el-notification .el-notification__content{color:var(--text-secondary)}.el-loading-mask{background:var(--overlay-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.el-loading-spinner .circular{animation:loading-rotate 2s linear infinite}.el-loading-spinner .path{stroke:var(--color-primary);stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke-linecap:round;animation:loading-dash 1.5s ease-in-out infinite}.el-loading-spinner .el-loading-text{color:var(--color-primary)}@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}.el-dropdown__popper{background:var(--glass-bg)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important}.el-dropdown__popper .el-dropdown-menu{background:transparent;border:none;padding:var(--spacing-2)}.el-dropdown__popper .el-dropdown-menu__item{color:var(--text-primary);border-radius:var(--radius-base);padding:var(--spacing-2) var(--spacing-3)}.el-dropdown__popper .el-dropdown-menu__item:hover{background:var(--highlight);color:var(--color-primary)}.el-dropdown__popper .el-dropdown-menu__item--divided{border-top-color:var(--border-secondary)}.el-tooltip__popper{background:var(--bg-elevated)!important;border:1px solid var(--glass-border)!important;border-radius:var(--radius-base)!important;box-shadow:var(--shadow-md)!important;color:var(--text-primary)!important}.el-tooltip__popper .el-popper__arrow:before{background:var(--bg-elevated)!important;border-color:var(--glass-border)!important}.el-date-editor{--el-date-editor-width: 100%}.el-date-editor .el-input__wrapper{background:var(--input-bg);border:1px solid var(--input-border)}.el-picker__popper{background:var(--glass-bg)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-xl)!important}.el-picker__popper .el-date-picker__header,.el-picker__popper .el-picker-panel__content{color:var(--text-primary)}.el-picker__popper .el-date-table td.current:not(.disabled) span{background:var(--gradient-primary);color:#fff}.el-picker__popper .el-date-table td:hover span{color:var(--color-primary)}.el-breadcrumb .el-breadcrumb__inner{color:var(--text-tertiary)}.el-breadcrumb .el-breadcrumb__inner.is-link:hover{color:var(--color-primary)}.el-breadcrumb .el-breadcrumb__item:last-child .el-breadcrumb__inner{color:var(--text-primary)}.el-breadcrumb .el-breadcrumb__separator{color:var(--text-disabled)}.el-empty .el-empty__description{color:var(--text-tertiary)}.el-avatar{--el-avatar-bg-color: var(--bg-tertiary);--el-avatar-text-color: var(--text-primary);border:2px solid var(--glass-border)}.el-badge__content{background:var(--gradient-primary);border:none;font-weight:600}.el-scrollbar__bar.is-horizontal{height:8px}.el-scrollbar__bar.is-vertical{width:8px}.el-scrollbar__thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}.el-scrollbar__thumb:hover{background:var(--scrollbar-thumb-hover)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{height:100%;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{height:100%;font-family:var(--font-family-sans);font-size:var(--font-size-sm);line-height:1.5;color:var(--text-primary);background:var(--bg-primary);transition:background-color .3s ease,color .3s ease}#app{height:100%;min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;color:var(--text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--spacing-4);color:var(--text-secondary)}a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary-light)}::selection{background:var(--selection-bg);color:var(--text-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}img{max-width:100%;height:auto}ul,ol{list-style:none}table{border-collapse:collapse;width:100%}button,input,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer;border:none;background:none}.page-container{padding:var(--spacing-6);max-width:var(--content-max-width);margin:0 auto}@media (max-width: 767px){.page-container{padding:var(--spacing-4)}}.page-header{display:flex;flex-direction:column;gap:var(--spacing-2);margin-bottom:var(--spacing-6)}@media (min-width: 768px){.page-header{flex-direction:row;align-items:center;justify-content:space-between}}.page-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--text-primary);margin:0}@media (max-width: 767px){.page-title{font-size:var(--font-size-xl)}}.page-subtitle{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-top:var(--spacing-1)}.page-actions{display:flex;gap:var(--spacing-3);flex-wrap:wrap}@media (max-width: 767px){.page-actions{width:100%}.page-actions>*{flex:1}}.el-card+.el-card{margin-top:var(--spacing-5)}.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);margin-bottom:var(--spacing-4);flex-wrap:wrap}@media (max-width: 767px){.table-toolbar{flex-direction:column;align-items:stretch}}.table-toolbar__search{display:flex;gap:var(--spacing-3);flex-wrap:wrap;flex:1}@media (max-width: 767px){.table-toolbar__search{flex-direction:column}}.table-toolbar__actions{display:flex;gap:var(--spacing-3)}@media (max-width: 767px){.table-toolbar__actions{width:100%}.table-toolbar__actions>*{flex:1}}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);margin-top:var(--spacing-6);padding-top:var(--spacing-4);border-top:1px solid var(--border-secondary)}.status-tag{display:inline-flex;align-items:center;padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500}.status-tag--success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.status-tag--warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.status-tag--danger,.status-tag--error{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border)}.status-tag--info{background:var(--color-info-bg);color:var(--color-info);border:1px solid var(--color-info-border)}.status-tag--primary{background:rgba(var(--color-primary-rgb),.1);color:var(--color-primary);border:1px solid rgba(var(--color-primary-rgb),.3)}.glass-card{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all .3s ease}.glass-card:hover{box-shadow:var(--shadow-lg)}.glass-card--hoverable:hover{transform:translateY(-2px);border-color:var(--glass-border-hover)}.glass-card--glow:hover{box-shadow:var(--shadow-lg),var(--shadow-glow);border-color:rgba(var(--color-primary-rgb),.3)}.stat-card{display:flex;align-items:flex-start;gap:var(--spacing-4);padding:var(--spacing-5)}.stat-card__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-md);background:rgba(var(--color-primary-rgb),.15);color:var(--color-primary);font-size:24px}.stat-card__content{flex:1;min-width:0}.stat-card__label{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-bottom:var(--spacing-1)}.stat-card__value{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);line-height:1.2}.stat-card__trend{display:flex;align-items:center;gap:var(--spacing-1);font-size:var(--font-size-xs);margin-top:var(--spacing-1)}.stat-card__trend--up{color:var(--color-success)}.stat-card__trend--down{color:var(--color-error)}.detail-section{margin-bottom:var(--spacing-6)}.detail-section__title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-3);border-bottom:1px solid var(--border-secondary)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--spacing-4)}.detail-item__label{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-1)}.detail-item__value{font-size:var(--font-size-sm);color:var(--text-primary);font-weight:500}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12) var(--spacing-6);text-align:center}.empty-state__icon{font-size:48px;color:var(--text-disabled);margin-bottom:var(--spacing-4)}.empty-state__title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-2)}.empty-state__description{font-size:var(--font-size-sm);color:var(--text-tertiary);max-width:400px}.empty-state__actions{margin-top:var(--spacing-6)}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--overlay-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal)}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.divider{height:1px;background:var(--divider);margin:var(--spacing-4) 0}.divider--vertical{width:1px;height:auto;margin:0 var(--spacing-4)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--spacing-2);font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);background:var(--color-primary);color:#fff}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media print{body{background:#fff!important;color:#000!important}.no-print{display:none!important}}
