:root{--primary: #dc2626;--primary-light: #f87171;--primary-dark: #991b1b;--primary-bg: rgba(220, 38, 38, .12);--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--info: #6366f1;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-tertiary: #64748b;--text-placeholder: #475569;--bg-body: #0a0e1a;--bg-card: #121828;--bg-hover: #1a2035;--bg-sidebar: #060912;--border: #1e293b;--border-light: #162032;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .1);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: "SF Mono", "Fira Code", Consolas, monospace;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--dur-fast: .15s;--dur-normal: .25s;--dur-slow: .4s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}[data-theme=light]{--text-primary: #1e293b;--text-secondary: #475569;--text-tertiary: #94a3b8;--text-placeholder: #cbd5e1;--bg-body: #f8fafc;--bg-card: #ffffff;--bg-hover: #f1f5f9;--bg-sidebar: #ffffff;--border: #e2e8f0;--border-light: #f1f5f9;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .1)}.el-button{font-weight:500;transition:all var(--dur-normal) var(--ease-out)}.el-button--primary{background:var(--primary);border-color:var(--primary)}.el-button--primary:hover{background:var(--primary-light);border-color:var(--primary-light);transform:translateY(-2px);box-shadow:0 8px 20px #dc262659}.el-button--primary:active{transform:translateY(0) scale(.98)}.el-card{border-radius:var(--radius-lg)!important;border:1px solid var(--border-light)!important;box-shadow:var(--shadow-sm)!important;transition:box-shadow var(--dur-normal) var(--ease-out),transform var(--dur-normal) var(--ease-out),border-color var(--dur-normal) var(--ease-out)}.el-card:hover{box-shadow:var(--shadow-md)!important}.el-input__wrapper{border-radius:var(--radius-md)!important;transition:box-shadow var(--dur-normal) var(--ease-out)!important;background:var(--bg-hover)!important;box-shadow:0 0 0 1px var(--border) inset!important}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--primary) inset,0 0 0 3px #dc262626!important}.el-input__inner{color:var(--text-primary)!important}.el-input__inner::placeholder{color:var(--text-tertiary)!important}.el-textarea__inner{background:var(--bg-hover)!important;color:var(--text-primary)!important;border-color:var(--border)!important;border-radius:var(--radius-md)!important}.el-textarea__inner::placeholder{color:var(--text-tertiary)!important}.el-textarea__inner:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px #dc262626!important}.el-select__wrapper{border-radius:var(--radius-md)!important;background:var(--bg-hover)!important;box-shadow:0 0 0 1px var(--border) inset!important}.el-select__wrapper.is-focused{box-shadow:0 0 0 1px var(--primary) inset,0 0 0 3px #dc262626!important}.el-select__selection{color:var(--text-primary)!important}.el-select-dropdown__item{color:var(--text-secondary)!important}.el-select-dropdown__item.is-selected{color:var(--primary-light)!important}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background:var(--bg-hover)!important;color:var(--text-primary)!important}.el-popper.is-light{background:var(--bg-card)!important;border-color:var(--border)!important}.el-dropdown__menu,.el-dropdown-menu{background:var(--bg-card)!important;border-color:var(--border)!important;box-shadow:var(--shadow-lg)!important}.el-dropdown__item,.el-dropdown-menu__item{color:var(--text-primary)!important}.el-dropdown__item:hover,.el-dropdown-menu__item:hover{background:var(--bg-hover)!important;color:var(--primary-light)!important}.el-dropdown__item.is-disabled,.el-dropdown-menu__item.is-disabled{color:var(--text-tertiary)!important}.el-message-box{background:var(--bg-card)!important;border-color:var(--border)!important}.el-message-box__title{color:var(--text-primary)!important}.el-message-box__content{color:var(--text-secondary)!important}.el-message-box__btns .el-button--default{background:var(--bg-hover)!important;border-color:var(--border)!important;color:var(--text-primary)!important}.el-message{background:var(--bg-card)!important;border-color:var(--border)!important;box-shadow:var(--shadow-lg)!important}.el-message__content{color:var(--text-primary)!important}.el-drawer{background:var(--bg-card)!important}.el-drawer__header{color:var(--text-primary)!important;border-bottom:1px solid var(--border)!important;margin-bottom:0!important;padding:20px 24px!important}.el-drawer__body{color:var(--text-primary)!important;padding:24px!important}.el-popover.el-popper{background:var(--bg-card)!important;border-color:var(--border)!important;color:var(--text-primary)!important}.el-popover__title{color:var(--text-primary)!important}.el-select-dropdown{background:var(--bg-card)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-lg)!important;border-radius:var(--radius-md)!important}.el-select-dropdown__item{color:var(--text-primary)!important;background:transparent!important}.el-select-dropdown__item.is-hovering{background:var(--bg-hover)!important;color:var(--primary-light)!important}.el-select-dropdown__item.is-selected{color:var(--primary)!important;font-weight:600!important}.el-select-dropdown__item.is-disabled{color:var(--text-tertiary)!important}.el-select__tags-text{color:var(--text-primary)!important}.el-tag.el-tag--info{background:var(--bg-hover)!important;border-color:var(--border)!important;color:var(--text-primary)!important}.el-button{border-radius:var(--radius-sm)!important;font-weight:500!important}.el-button--default{background:var(--bg-hover)!important;border-color:var(--border)!important;color:var(--text-primary)!important}.el-button--default:hover{background:var(--border)!important;border-color:var(--primary)!important;color:var(--primary-light)!important}.el-button--primary{background:linear-gradient(135deg,#dc2626,#991b1b)!important;border-color:#dc2626!important}.el-button--primary:hover{background:linear-gradient(135deg,#ef4444,#dc2626)!important;border-color:#ef4444!important}.el-button--success{background:linear-gradient(135deg,#16a34a,#15803d)!important;border-color:#16a34a!important}.el-button--success:hover{background:linear-gradient(135deg,#22c55e,#16a34a)!important;border-color:#22c55e!important}.el-button--warning{background:linear-gradient(135deg,#d97706,#b45309)!important;border-color:#d97706!important}.el-button--warning:hover{background:linear-gradient(135deg,#f59e0b,#d97706)!important;border-color:#f59e0b!important}.el-button--danger{background:linear-gradient(135deg,#dc2626,#991b1b)!important;border-color:#dc2626!important}.el-button--danger:hover{background:linear-gradient(135deg,#ef4444,#dc2626)!important;border-color:#ef4444!important}.el-form-item__label{color:var(--text-secondary)!important}.el-tag{border-radius:var(--radius-sm)!important;font-weight:500!important}.el-checkbox__inner,.el-radio__input{background-color:var(--bg-hover)!important;border-color:var(--border)!important}.el-checkbox__input.is-checked .el-checkbox__inner,.el-radio__input.is-checked,.el-switch.is-checked .el-switch__core{background-color:var(--primary)!important;border-color:var(--primary)!important}.el-pagination{--el-pagination-hover-color: var(--primary);--el-pagination-bg-color: var(--bg-card);--el-pagination-text-color: var(--text-primary);--el-pagination-button-bg-color: var(--bg-hover);--el-pagination-border-color: var(--border)}.el-pagination button,.el-pagination .el-pager li{background:var(--bg-hover)!important;color:var(--text-secondary)!important;border-color:var(--border)!important}.el-pagination button:hover,.el-pagination .el-pager li:hover{color:var(--primary-light)!important}.el-pagination .el-pager li.is-active{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}.el-table{--el-table-border-color: var(--border-light);--el-table-header-bg-color: var(--bg-hover);--el-table-row-hover-bg-color: var(--bg-hover);--el-table-text-color: var(--text-primary);--el-table-header-text-color: var(--text-primary);--el-table-bg-color: var(--bg-card);--el-table-tr-bg-color: var(--bg-card);border-radius:var(--radius-md)!important;overflow:hidden;background:var(--bg-card)}.el-table th.el-table__cell{background:var(--bg-hover)!important;font-weight:600!important;color:var(--text-primary)!important;font-size:13px!important}.el-table td.el-table__cell{font-size:14px!important;color:var(--text-secondary)!important;background:transparent!important}.el-table .el-table__row:hover>td.el-table__cell{background:var(--bg-hover)!important;color:var(--text-primary)!important}.el-table__empty-block{background:var(--bg-card)}.el-table__empty-text{color:var(--text-tertiary)}.el-dialog{border-radius:var(--radius-xl)!important;box-shadow:var(--shadow-xl)!important;background:var(--bg-card)!important}.el-dialog__header{background:var(--bg-card)!important;border-bottom:1px solid var(--border)!important;padding:20px 24px!important;margin:0!important}.el-dialog__title{color:var(--text-primary)!important;font-size:18px!important;font-weight:600!important}.el-dialog__headerbtn .el-dialog__close{color:var(--text-secondary)!important}.el-dialog__headerbtn:hover .el-dialog__close{color:var(--primary)!important}.el-dialog__body{background:var(--bg-card)!important;color:var(--text-primary)!important;padding:24px!important}.el-dialog__footer{background:var(--bg-card)!important;border-top:1px solid var(--border)!important;padding:16px 24px!important}.el-select__wrapper{border-radius:var(--radius-md)!important}.el-pagination{--el-pagination-hover-color: var(--primary)}.el-input-number__decrease,.el-input-number__increase{background:var(--bg-hover)!important;border-color:var(--border)!important;color:var(--text-secondary)!important}.el-input-number__decrease:hover,.el-input-number__increase:hover{color:var(--primary)!important}.el-input-number .el-input__inner{color:var(--text-primary)!important}.el-input__count,.el-textarea__inner~.el-input__count{background:transparent!important;color:var(--text-tertiary)!important}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--bg-body);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}#app{min-height:100vh}.page-container{max-width:1200px;margin:0 auto;padding:var(--space-lg)}.section-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-lg)}.card-hover{transition:transform var(--dur-normal) var(--ease-out),box-shadow var(--dur-normal) var(--ease-out)}.card-hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#475569}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate3d(-20px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate3d(20px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleInCenter{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseRing{0%{transform:scale(.8);opacity:1}to{transform:scale(1.6);opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes progressBar{0%{width:0}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes flipInX{0%{opacity:0;transform:perspective(400px) rotateX(-10deg)}to{opacity:1;transform:perspective(400px) rotateX(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes glow{0%,to{box-shadow:0 0 5px #dc26264d}50%{box-shadow:0 0 20px #dc262699}}@keyframes ripple{0%{transform:scale(0);opacity:.6}to{transform:scale(4);opacity:0}}@keyframes cardEnter{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideExpand{0%{max-height:0;opacity:0}to{max-height:1000px;opacity:1}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes progressFill{0%{width:0%}to{width:var(--progress-width, 100%)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-fade-in{animation:fadeIn var(--dur-slow) var(--ease-out) both}.animate-fade-in-up{animation:fadeInUp .5s var(--ease-out) both}.animate-fade-in-down{animation:fadeInDown .5s var(--ease-out) both}.animate-fade-in-left{animation:fadeInLeft .5s var(--ease-out) both}.animate-fade-in-right{animation:fadeInRight .5s var(--ease-out) both}.animate-scale-in{animation:scaleIn .4s var(--ease-out) both}.animate-bounce-in{animation:bounceIn .5s var(--ease-spring) both}.animate-slide-up{animation:slideUp .5s var(--ease-out) both}.animate-slide-down{animation:slideDown .5s var(--ease-out) both}.animate-flip-in{animation:flipInX .5s var(--ease-out) both}.animate-shake{animation:shake .5s var(--ease-in-out)}.animate-glow{animation:glow 2s ease-out 1}.animate-card-enter{animation:cardEnter .5s var(--ease-out) both}.animate-slide-expand{animation:slideExpand .4s var(--ease-out) both}.animate-count-up{animation:countUp .6s var(--ease-out) both}.animate-progress-fill{animation:progressFill 1s var(--ease-out) both}.animate-gradient{background-size:200% 200%;animation:gradientShift 3s ease infinite}.hover-lift{transition:transform var(--dur-normal) var(--ease-out),box-shadow var(--dur-normal) var(--ease-out)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.hover-scale{transition:transform var(--dur-normal) var(--ease-out)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow var(--dur-normal) var(--ease-out),border-color var(--dur-normal) var(--ease-out)}.hover-glow:hover{box-shadow:0 0 15px #dc262633,0 0 30px #dc26261a}.hover-glow-primary:hover{box-shadow:0 0 20px #dc262666,0 0 40px #dc262633,inset 0 0 20px #dc26260d}.hover-glow-success:hover{box-shadow:0 0 20px #10b98166,0 0 40px #10b98133}.hover-glow-blue:hover{box-shadow:0 0 20px #3b82f666,0 0 40px #3b82f633}.click-ripple{position:relative;overflow:hidden}.click-ripple:after{content:"";position:absolute;top:50%;left:50%;width:100px;height:100px;background:#ffffff80;border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none}.click-ripple:active:after{animation:ripple .6s ease-out}.btn-ripple{position:relative;overflow:hidden;transform:translateZ(0)}.btn-ripple .ripple-effect{position:absolute;border-radius:50%;background:#fff6;transform:scale(0);animation:btnRipple .6s ease-out;pointer-events:none}@keyframes btnRipple{to{transform:scale(4);opacity:0}}.glow-border{position:relative}.glow-border:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,transparent 30%,rgba(220,38,38,.4) 50%,transparent 70%);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity var(--dur-normal) var(--ease-out);pointer-events:none}.glow-border:hover:before{opacity:1}.press-effect{transition:transform var(--dur-fast) var(--ease-out)}.press-effect:active{transform:scale(.96)}.btn-3d{position:relative;transform-style:preserve-3d;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.btn-3d:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:inherit;transform:translateZ(-4px);filter:brightness(.7)}.btn-3d:hover{transform:translateY(-2px)}.btn-3d:active{transform:translateY(2px)}.shine-effect{position:relative;overflow:hidden}.shine-effect:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);transition:left .6s ease}.shine-effect:hover:before{left:100%}.icon-spin{transition:transform var(--dur-normal) var(--ease-in-out)}.icon-spin:hover{transform:rotate(180deg)}.bounce-effect{transition:transform var(--dur-normal) var(--ease-spring)}.bounce-effect:hover{transform:scale(1.05)}.bounce-effect:active{transform:scale(.95)}.gradient-border-hover{position:relative;z-index:0}.gradient-border-hover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(135deg,rgba(220,38,38,.2),transparent);opacity:0;transition:opacity var(--dur-normal) var(--ease-out);z-index:-1}.gradient-border-hover:hover:after{opacity:1}.delay-75{animation-delay:75ms}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.router-fade-enter-active,.router-fade-leave-active{transition:opacity var(--dur-normal) var(--ease-out)}.router-fade-enter-from,.router-fade-leave-to{opacity:0}.router-fade-up-enter-active{transition:all .4s var(--ease-out)}.router-fade-up-leave-active{transition:all var(--dur-fast) var(--ease-in)}.router-fade-up-enter-from{opacity:0;transform:translateY(15px)}.router-fade-up-leave-to{opacity:0;transform:translateY(-10px)}.fade-enter-active,.fade-leave-active{transition:opacity var(--dur-normal) var(--ease-out)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-fade-enter-active{transition:transform .4s var(--ease-out),opacity .4s var(--ease-out)}.slide-fade-leave-active{transition:transform var(--dur-fast) var(--ease-in),opacity var(--dur-fast) var(--ease-in)}.slide-fade-enter-from{transform:translateY(20px);opacity:0}.slide-fade-leave-to{transform:translateY(-10px);opacity:0}.shimmer{background:#1a2035}.list-item-enter-active{animation:fadeInUp .4s var(--ease-out) both}::selection{background:var(--primary);color:#fff}
