:root{--primary: #1890ff;--primary-dark: #096dd9;--primary-light: #40a9ff;--success: #52c41a;--success-light: #73d13d;--warning: #faad14;--warning-light: #ffc53d;--danger: #ff4d4f;--danger-light: #ff7875;--info: #1890ff;--info-light: #40a9ff;--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--text-disabled: #cccccc;--border-color: #d9d9d9;--border-light: #e8e8e8;--border-radius: 4px;--border-radius-lg: 8px;--bg-page: #f5f7fa;--bg-card: #ffffff;--bg-hover: #f5f7fa;--bg-active: #e6f7ff;--shadow-sm: 0 1px 4px rgba(0, 0, 0, .06);--shadow-md: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .15);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--line-height-tight: 1.4;--line-height-normal: 1.6;--line-height-loose: 1.8;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 24px}*{box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-page);margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-disabled{color:var(--text-disabled)}.bg-page{background-color:var(--bg-page)}.bg-card{background-color:var(--bg-card)}.bg-hover{background-color:var(--bg-hover)}.bg-active{background-color:var(--bg-active)}.border{border:1px solid var(--border-color)}.border-light{border:1px solid var(--border-light)}.rounded{border-radius:var(--border-radius)}.rounded-lg{border-radius:var(--border-radius-lg)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.transition{transition:all var(--transition-normal)}.transition-fast{transition:all var(--transition-fast)}.transition-slow{transition:all var(--transition-slow)}.font-xs{font-size:var(--font-size-xs)}.font-sm{font-size:var(--font-size-sm)}.font-base{font-size:var(--font-size-base)}.font-lg{font-size:var(--font-size-lg)}.font-xl{font-size:var(--font-size-xl)}.font-2xl{font-size:var(--font-size-2xl)}.font-bold{font-weight:600}.font-normal{font-weight:400}.text-left{text-align:left}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-1{flex:1}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.user-select-none{user-select:none}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break-word{word-break:break-word;overflow-wrap:break-word}:root{--primary: #1b6ef3;--primary-light: #e8f0ff;--success: #27ae60;--success-light: #d4edda;--warning: #f39c12;--warning-light: #fff3cd;--danger: #e74c3c;--danger-light: #f8d7da;--text-primary: #2c3e50;--text-secondary: #7f8c8d;--text-muted: #bdc3c7;--border-color: #e8ecef;--border-color-light: #f0f2f5;--bg-page: #f2f3f5;--bg-card: #ffffff;--bg-input: #ffffff;--bg-hover: #f5f7fa;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12)}[data-theme=dark]{--text-primary: #ecf0f1;--text-secondary: #95a5a6;--text-muted: #7f8c8d;--border-color: #34495e;--border-color-light: #2c3e50;--bg-page: #1a1a1a;--bg-card: #242424;--bg-input: #2c2c2e;--bg-hover: #333333}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;font-size:16px;line-height:1.5;color:var(--text-primary);background:var(--bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent}#app{height:100%;min-height:100vh}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.text-muted{color:var(--text-muted)}.text-small{font-size:13px}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col{display:flex;flex-direction:column}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.p-12{padding:12px}.p-16{padding:16px}.p-24{padding:24px}.px-16{padding-left:16px;padding-right:16px}.py-12{padding-top:12px;padding-bottom:12px}.m-16{margin:16px}.mt-16{margin-top:16px}.mb-16{margin-bottom:16px}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.bg-white{background:var(--bg-card)}.rounded{border-radius:8px}.shadow{box-shadow:var(--shadow-md)}@media (max-width: 768px){html,body{font-size:15px}.p-16{padding:12px}.p-24{padding:16px}.container{padding:12px}.el-button{font-size:14px}}body.el-popup-parent--hidden{overflow:hidden!important;position:fixed;width:100%}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}.scrollable{overflow-y:auto;-webkit-overflow-scrolling:touch}.gpu-accelerated{transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform,opacity;backface-visibility:hidden;perspective:1000px}.hardware-accelerated{transform:translateZ(0);-webkit-transform:translate3d(0,0,0);will-change:transform;backface-visibility:hidden}@media (max-width: 768px){.el-dialog.is-fullscreen{display:flex;flex-direction:column}.el-dialog.is-fullscreen .el-dialog__body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.el-dialog__wrapper,.el-overlay{overscroll-behavior:contain}}@media (max-width: 480px){html,body{font-size:14px}.container,.el-container{padding:8px!important}.el-card{margin:8px 0;border-radius:8px}.el-card__body{padding:12px!important}.el-table{font-size:13px}.el-table .cell{padding:6px 8px!important}.el-form-item{margin-bottom:16px}.el-form-item__label{font-size:14px;line-height:32px}.el-input,.el-select{max-width:100%}.el-button{font-size:14px;padding:8px 15px}.el-button+.el-button{margin-left:8px}.el-dialog{width:90%!important;margin:5vh auto!important}.el-dialog__body{padding:15px!important;max-height:70vh;overflow-y:auto}.el-message{min-width:300px!important;padding:10px 15px!important}.el-menu{font-size:14px}.el-menu-item{height:50px;line-height:50px}.el-pagination{font-size:13px}.el-pagination button,.el-pagination span:not([class*=suffix]){font-size:13px}.el-tag{font-size:12px;padding:0 8px;height:24px;line-height:22px}.el-breadcrumb,.el-steps{font-size:13px}.el-timeline{padding-left:16px}.el-drawer{width:90%!important}}@media (min-width: 481px) and (max-width: 768px){html,body{font-size:15px}.container,.el-container{padding:12px!important}.el-card__body{padding:15px!important}.el-dialog{width:80%!important}.el-table{font-size:14px}}@media (min-width: 769px) and (max-width: 1024px){.container,.el-container{padding:16px!important}.el-dialog{width:70%!important}}@media (min-width: 1025px){.container,.el-container{max-width:1400px;margin:0 auto;padding:20px!important}}@media (hover: none) and (pointer: coarse){.el-button,.el-menu-item,.el-dropdown-menu__item,.el-table__row,button,a{min-height:44px;min-width:44px}.el-button{padding:10px 20px}.el-button:hover,.el-menu-item:hover,a:hover{background-color:transparent}.el-button:active,.el-menu-item:active,a:active{opacity:.7;transform:scale(.98)}.el-input__inner,.el-textarea__inner,input,textarea,select{font-size:16px!important;padding:10px 12px}.el-table__body-wrapper,.el-dialog__body,.el-drawer__body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}}@media (max-height: 500px) and (orientation: landscape){.el-dialog{margin:2vh auto!important}.el-dialog__body{max-height:60vh}.el-header,.fixed-header{position:fixed;top:0;left:0;right:0;z-index:1000}.main-content{padding-top:60px}}@supports (padding: env(safe-area-inset-top)){.safe-area-top{padding-top:env(safe-area-inset-top)}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-area-left{padding-left:env(safe-area-inset-left)}.safe-area-right{padding-right:env(safe-area-inset-right)}.fixed-bottom{padding-bottom:calc(env(safe-area-inset-bottom) + 16px)}.el-dialog{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}}@media (prefers-color-scheme: dark){html.auto-dark-mode{color-scheme:dark}html.auto-dark-mode body{background:#1a1a1a;color:#e0e0e0}html.auto-dark-mode .el-card{background:#242424;border-color:#333}html.auto-dark-mode .el-table{background:#242424;color:#e0e0e0}html.auto-dark-mode .el-table tr{background:#242424}html.auto-dark-mode .el-table th.el-table__cell{background:#2a2a2a}html.auto-dark-mode .el-dialog{background:#242424}html.auto-dark-mode .el-dialog__header{background:#2a2a2a}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{.no-print,.el-button,.el-menu,nav,footer{display:none!important}.el-card{box-shadow:none!important;border:1px solid #ddd!important}body{font-size:12pt;color:#000}}.page-fade-enter-active[data-v-3892d44a],.page-fade-leave-active[data-v-3892d44a]{transition:opacity .3s ease}.page-fade-enter-from[data-v-3892d44a],.page-fade-leave-to[data-v-3892d44a]{opacity:0}.page-slide-right-enter-active[data-v-3892d44a],.page-slide-right-leave-active[data-v-3892d44a]{transition:all .3s cubic-bezier(.4,0,.2,1)}.page-slide-right-enter-from[data-v-3892d44a]{opacity:.5;transform:translate(30px)}.page-slide-right-leave-to[data-v-3892d44a]{opacity:.5;transform:translate(-30px)}.page-slide-left-enter-active[data-v-3892d44a],.page-slide-left-leave-active[data-v-3892d44a]{transition:all .3s cubic-bezier(.4,0,.2,1)}.page-slide-left-enter-from[data-v-3892d44a]{opacity:.5;transform:translate(-30px)}.page-slide-left-leave-to[data-v-3892d44a]{opacity:.5;transform:translate(30px)}.page-slide-up-enter-active[data-v-3892d44a],.page-slide-up-leave-active[data-v-3892d44a]{transition:all .3s cubic-bezier(.4,0,.2,1)}.page-slide-up-enter-from[data-v-3892d44a]{opacity:0;transform:translateY(30px)}.page-slide-up-leave-to[data-v-3892d44a]{opacity:0;transform:translateY(-30px)}.page-slide-down-enter-active[data-v-3892d44a],.page-slide-down-leave-active[data-v-3892d44a]{transition:all .3s cubic-bezier(.4,0,.2,1)}.page-slide-down-enter-from[data-v-3892d44a]{opacity:0;transform:translateY(-30px)}.page-slide-down-leave-to[data-v-3892d44a]{opacity:0;transform:translateY(30px)}.page-zoom-enter-active[data-v-3892d44a],.page-zoom-leave-active[data-v-3892d44a]{transition:all .3s cubic-bezier(.4,0,.2,1)}.page-zoom-enter-from[data-v-3892d44a]{opacity:0;transform:scale(.9)}.page-zoom-leave-to[data-v-3892d44a]{opacity:0;transform:scale(1.1)}.page-none-enter-active[data-v-3892d44a],.page-none-leave-active[data-v-3892d44a]{transition:none}.page-none-enter-from[data-v-3892d44a],.page-none-leave-to[data-v-3892d44a]{opacity:1}#app{width:100%;height:100%;overflow-x:hidden}.router-view{min-height:100vh;background:var(--bg-page)}html{overflow-y:scroll}.global-loading{position:fixed;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(5px)}.global-loading-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001a}.loading-text{font-size:14px;color:#606266}.loading-progress{width:200px}@media (prefers-color-scheme: dark){.global-loading{background:#000000e6}.global-loading-content{background:#242424}.loading-text{color:#e0e0e0}}
