:root{--color-primary:#1e80f8;--color-primary-bg:#e8f4ff;--color-bg:#f5f7fa;--color-surface:#fff;--color-text-strong:#1a1a2e;--color-text:#4a5568;--color-text-muted:#718096;--color-border:#e5e7eb;--color-success:#16a34a;--color-warning:#d97706;--color-danger:#e11d48;--color-success-bg:#f6ffed;--color-success-border:#b7eb8f;--color-warning-bg:#fff7e6;--color-warning-border:#ffe58f;--color-danger-bg:#fff2f0;--color-danger-border:#ffccc7;--color-accent:#722ed1;--el-color-primary:var(--color-primary);--el-color-primary-light-3:#5b9cf8;--el-color-primary-light-5:#8bb8f8;--el-color-primary-light-7:#b8d4fa;--el-color-primary-light-8:#d4e6fc;--el-color-primary-light-9:#e8f4ff;--el-color-primary-dark-2:#1666d8;--el-color-success:var(--color-success);--el-color-warning:var(--color-warning);--el-color-danger:var(--color-danger);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--radius-sm:8px;--radius-md:10px;--radius-lg:12px;--control-h-inline:28px;--control-h-sm:32px;--control-h-md:36px;--icon-nav:16px;--dialog-width-sm:420px;--dialog-width-md:560px;--dialog-width-lg:720px;--dialog-width-xl:900px;--dialog-border-radius:var(--radius-lg);--dialog-header-padding:20px 24px;--dialog-body-padding:24px;--dialog-footer-padding:16px 24px;--dialog-border-color:#f0f0f0;--dialog-title-size:16px;--dialog-title-weight:600;--dialog-title-color:#1a1a1a;--dialog-footer-gap:12px;--drawer-width-md:420px;--drawer-width-lg:720px;--drawer-width-xl:960px;--drawer-header-padding:18px 22px;--drawer-body-padding:22px;--drawer-footer-padding:12px 22px;--drawer-border-color:var(--dialog-border-color);--drawer-title-size:16px}.el-message{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-border-color-lighter);--el-message-padding:11px 15px;--el-message-close-size:16px;--el-message-close-icon-color:var(--el-text-color-placeholder);--el-message-close-hover-color:var(--el-text-color-secondary);box-sizing:border-box;border-radius:var(--el-border-radius-base);border-width:var(--el-border-width);border-style:var(--el-border-style);border-color:var(--el-message-border-color);background-color:var(--el-message-bg-color);width:max-content;max-width:calc(100% - 32px);transition:opacity var(--el-transition-duration), transform .4s, top .4s, bottom .4s;padding:var(--el-message-padding);align-items:center;gap:8px;display:flex;position:fixed}.el-message.is-left{left:16px}.el-message.is-right{right:16px}.el-message.is-center{left:50%;transform:translate(-50%)}.el-message.is-plain{background-color:var(--el-bg-color-overlay);border-color:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-message p{margin:0}.el-message--primary{--el-message-bg-color:var(--el-color-primary-light-9);--el-message-border-color:var(--el-color-primary-light-8);--el-message-text-color:var(--el-color-primary)}.el-message--primary .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--primary{color:var(--el-message-text-color)}.el-message--success{--el-message-bg-color:var(--el-color-success-light-9);--el-message-border-color:var(--el-color-success-light-8);--el-message-text-color:var(--el-color-success)}.el-message--success .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--success{color:var(--el-message-text-color)}.el-message--info{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-color-info-light-8);--el-message-text-color:var(--el-color-info)}.el-message--info .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--info{color:var(--el-message-text-color)}.el-message--warning{--el-message-bg-color:var(--el-color-warning-light-9);--el-message-border-color:var(--el-color-warning-light-8);--el-message-text-color:var(--el-color-warning)}.el-message--warning .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--warning{color:var(--el-message-text-color)}.el-message--error{--el-message-bg-color:var(--el-color-error-light-9);--el-message-border-color:var(--el-color-error-light-8);--el-message-text-color:var(--el-color-error)}.el-message--error .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--error{color:var(--el-message-text-color)}.el-message .el-message__badge{position:absolute;top:-8px;right:-8px}.el-message__content{padding:0;font-size:14px;line-height:1}.el-message__content:focus{outline-width:0}.el-message .el-message__closeBtn{cursor:pointer;color:var(--el-message-close-icon-color);font-size:var(--el-message-close-size)}.el-message .el-message__closeBtn:focus{outline-width:0}.el-message-fade-enter-from,.el-message-fade-leave-to{opacity:0}.el-message-fade-enter-from.is-left,.el-message-fade-enter-from.is-right,.el-message-fade-leave-to.is-left,.el-message-fade-leave-to.is-right{transform:translateY(-100%)}.el-message-fade-enter-from.is-left.is-bottom,.el-message-fade-enter-from.is-right.is-bottom,.el-message-fade-leave-to.is-left.is-bottom,.el-message-fade-leave-to.is-right.is-bottom{transform:translateY(100%)}.el-message-fade-enter-from.is-center,.el-message-fade-leave-to.is-center{transform:translate(-50%,-100%)}.el-message-fade-enter-from.is-center.is-bottom,.el-message-fade-leave-to.is-center.is-bottom{transform:translate(-50%,100%)}:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{width:100%;height:100%;opacity:var(--el-popup-modal-opacity);background:var(--el-popup-modal-bg-color);position:fixed;top:0;left:0}.el-popup-parent--hidden{overflow:hidden}.el-message-box{--el-messagebox-title-color:var(--el-text-color-primary);--el-messagebox-width:420px;--el-messagebox-border-radius:4px;--el-messagebox-box-shadow:var(--el-box-shadow);--el-messagebox-font-size:var(--el-font-size-large);--el-messagebox-content-font-size:var(--el-font-size-base);--el-messagebox-content-color:var(--el-text-color-regular);--el-messagebox-error-font-size:12px;--el-messagebox-padding-primary:12px;--el-messagebox-font-line-height:var(--el-font-line-height-primary);max-width:var(--el-messagebox-width);width:100%;padding:var(--el-messagebox-padding-primary);vertical-align:middle;background-color:var(--el-bg-color);border-radius:var(--el-messagebox-border-radius);font-size:var(--el-messagebox-font-size);box-shadow:var(--el-messagebox-box-shadow);text-align:left;backface-visibility:hidden;box-sizing:border-box;overflow-wrap:break-word;display:inline-block;position:relative;overflow:hidden}.el-message-box:focus{outline:none!important}.is-message-box .el-overlay-message-box{text-align:center;padding:16px;position:fixed;inset:0;overflow:auto}.is-message-box .el-overlay-message-box:after{content:"";vertical-align:middle;width:0;height:100%;display:inline-block}.el-message-box.is-draggable .el-message-box__header{cursor:move;-webkit-user-select:none;user-select:none}.el-message-box__header{padding-bottom:var(--el-messagebox-padding-primary)}.el-message-box__header.show-close{padding-right:calc(var(--el-messagebox-padding-primary) + var(--el-message-close-size,16px))}.el-message-box__title{font-size:var(--el-messagebox-font-size);line-height:var(--el-messagebox-font-line-height);color:var(--el-messagebox-title-color)}.el-message-box__headerbtn{width:40px;height:40px;font-size:var(--el-message-close-size,16px);cursor:pointer;background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-message-box__headerbtn .el-message-box__close{color:var(--el-color-info);font-size:inherit}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:var(--el-color-primary)}.el-message-box__content{color:var(--el-messagebox-content-color);font-size:var(--el-messagebox-content-font-size)}.el-message-box__container{align-items:center;gap:12px;display:flex}.el-message-box__input{padding-top:12px}.el-message-box__input div.invalid>input,.el-message-box__input div.invalid>input:focus{border-color:var(--el-color-error)}.el-message-box__status{font-size:24px}.el-message-box__status.el-message-box-icon--primary{--el-messagebox-color:var(--el-color-primary);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--success{--el-messagebox-color:var(--el-color-success);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--info{--el-messagebox-color:var(--el-color-info);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--warning{--el-messagebox-color:var(--el-color-warning);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--error{--el-messagebox-color:var(--el-color-error);color:var(--el-messagebox-color)}.el-message-box__message{min-width:0;margin:0}.el-message-box__message p{line-height:var(--el-messagebox-font-line-height);margin:0}.el-message-box__errormsg{color:var(--el-color-error);font-size:var(--el-messagebox-error-font-size);line-height:var(--el-messagebox-font-line-height)}.el-message-box__btns{padding-top:var(--el-messagebox-padding-primary);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.el-message-box--center .el-message-box__title{justify-content:center;align-items:center;gap:6px;display:flex}.el-message-box--center .el-message-box__status{font-size:inherit}.el-message-box--center .el-message-box__btns,.el-message-box--center .el-message-box__container{justify-content:center}.el-message-box-parent--hidden{overflow:hidden}.fade-in-linear-enter-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration)}.fade-in-linear-leave-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration) reverse}@keyframes msgbox-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{color:#333;background-color:#f5f7fa;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.6}button:focus-visible,.el-button:focus-visible,[role=button]:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-primary,#1e80f8);outline-offset:2px;border-radius:4px}button:disabled:focus-visible,.el-button.is-disabled:focus-visible,.el-button.is-disabled:focus-visible{outline:none}.el-button+.el-button{margin-left:0!important}.page-layout{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;padding:0;overflow-y:auto}.card{background:#fff;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 2px 8px #0000000f}.card:hover{box-shadow:0 8px 24px #1e80f826}.stat-card{cursor:pointer;background:#fff;border:1px solid #f0f0f0;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 2px 8px #0000000f}.stat-card:hover{border-color:#1e80f8;transform:translateY(-4px);box-shadow:0 8px 24px #1e80f826}.stat-card-header{width:100%;height:3px}.stat-card.working .stat-card-header{background:linear-gradient(90deg,#10b981,#059669)}.stat-card.idle .stat-card-header{background:linear-gradient(90deg,#f59e0b,#d97706)}.stat-card.total .stat-card-header{background:linear-gradient(90deg,#6366f1,#4f46e5)}.stat-card.completed .stat-card-header{background:linear-gradient(90deg,#81c784,#66bb6a)}.stat-card.in-progress .stat-card-header{background:linear-gradient(90deg,#ffb74d,#ffa726)}.stat-card-body{flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:20px;display:flex}.stat-icon-wrapper{border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 2px 6px #0000001a}.stat-card.working .stat-icon-wrapper{background:linear-gradient(135deg,#10b981,#059669)}.stat-card.idle .stat-icon-wrapper{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-card.total .stat-icon-wrapper{background:linear-gradient(135deg,#6366f1,#4f46e5)}.stat-card.completed .stat-icon-wrapper{background:linear-gradient(135deg,#81c784,#66bb6a)}.stat-card.in-progress .stat-icon-wrapper{background:linear-gradient(135deg,#ffb74d,#ffa726)}.stat-icon-wrapper .el-icon{color:#fff;font-size:22px}.stat-label{color:#909399;font-size:13px;font-weight:500}.stat-value{color:#333;font-size:28px;font-weight:700;transition:all .3s}.task-card{cursor:pointer;background:#fff;border:1px solid #f0f0f0;border-radius:12px;padding:16px;transition:all .3s;position:relative;overflow:hidden}.task-card:hover{border-color:#1e80f8;transform:translateY(-4px);box-shadow:0 8px 24px #1e80f826}.login-page{background:linear-gradient(135deg,#f0f7ff 0%,#e8f4ff 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-container{background:#fff;border-radius:16px;width:90%;max-width:420px;padding:48px;box-shadow:0 8px 24px #1e80f826}.login-header{text-align:center;margin-bottom:32px}.login-logo{background:linear-gradient(135deg,#1e80f8 0%,#5b9cf8 100%);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;display:flex}.login-title{color:#333;margin-bottom:8px;font-size:24px;font-weight:600}.login-subtitle{color:#666;font-size:14px}.wizard-step{align-items:center;gap:8px;display:flex}.wizard-step-dot{background:#dcdfe6;border-radius:50%;width:12px;height:12px;transition:all .3s}.wizard-step.active .wizard-step-dot{background:#1e80f8}.wizard-step.completed .wizard-step-dot{background:#67c23a}@media (width<=768px){.main-content{padding:12px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}::-webkit-scrollbar-thumb{background:#c0c4cc;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#909399}.el-dialog{flex-direction:column;max-height:90vh;display:flex;overflow:hidden;--el-dialog-padding-primary:0px!important;border-radius:var(--dialog-border-radius)!important;margin:5vh auto!important}.el-dialog__header{border-bottom:1px solid var(--dialog-border-color);flex:none;padding:var(--dialog-header-padding)!important;margin-right:0!important}.el-dialog__title{font-size:var(--dialog-title-size)!important;font-weight:var(--dialog-title-weight)!important;color:var(--dialog-title-color)!important}.el-dialog__headerbtn{border-radius:6px;transition:all .25s;color:#909399!important;width:28px!important;height:28px!important;font-size:18px!important;top:14px!important;right:16px!important}.el-dialog__headerbtn:hover{background:#f5f5f5;color:#303133!important}.el-dialog__body{flex:1;min-height:0;overflow-y:auto;padding:var(--dialog-body-padding)!important}.el-dialog .el-form-item{flex-direction:column!important;align-items:flex-start!important;display:block!important}.el-dialog .el-form-item__label{text-align:left!important;flex:none!important;width:auto!important;padding:0 0 8px!important;line-height:1.4!important;display:block!important}.el-dialog .el-form-item__content{flex:none!important;width:100%!important;margin-left:0!important;display:block!important}.el-dialog .el-form--inline .el-form-item{margin-right:12px;display:inline-block!important}.el-dialog .el-form--inline .el-form-item__label{padding:0 8px 0 0!important;display:inline-block!important}.el-dialog .el-form--inline .el-form-item__content{width:auto!important;display:inline-block!important}.el-dialog__footer{border-top:1px solid var(--dialog-border-color);flex:none;padding:var(--dialog-footer-padding)!important}.dialog-footer{justify-content:flex-end;gap:var(--dialog-footer-gap);display:flex}.dialog-sm{width:var(--dialog-width-sm)!important}.dialog-md{width:var(--dialog-width-md)!important}.dialog-lg{width:var(--dialog-width-lg)!important}.dialog-xl{width:var(--dialog-width-xl)!important}.dialog-detail .el-dialog__body{padding:0!important}.dialog-confirm .el-dialog__header{display:none}.dialog-confirm .el-dialog__body{text-align:center;padding:32px 24px!important}.el-drawer__header{border-bottom:1px solid var(--drawer-border-color);flex:none;padding:var(--drawer-header-padding)!important;margin-bottom:0!important}.el-drawer__title{color:var(--el-text-color-primary);font-weight:600;font-size:var(--drawer-title-size)!important}.el-drawer__close-btn{color:var(--el-text-color-secondary)}.el-drawer__body{flex:1;min-height:0;overflow-y:auto;padding:var(--drawer-body-padding)!important}.el-drawer__footer{border-top:1px solid var(--drawer-border-color);flex:none;padding:var(--drawer-footer-padding)!important}@media (width<=600px){.el-drawer__header{padding:16px 20px!important}.el-drawer__body{padding:20px!important}.el-drawer__footer{padding:12px 20px!important}}.drawer-scrollable .el-drawer__body{overflow-y:auto}body .el-table{--el-table-border-color:#e3e8ef;--el-table-header-bg-color:#fafafa;--el-table-row-hover-bg-color:#f8fbff;--el-table-current-row-bg-color:#f8fbff;color:#344054;width:100%;font-size:13px}.el-table__inner-wrapper:before{display:none}body .el-table th.el-table__cell{color:#667085;background:#fafafa;height:44px;padding:0 16px;font-size:12px;font-weight:600}body .el-table td.el-table__cell{color:#344054;background:#fff;border-bottom-color:#f0f2f5;height:64px;padding:10px 16px}.el-table .cell{line-height:1.5}.el-table__body tr:hover>td.el-table__cell{background-color:#f8fbff!important}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:#fff}.el-table--striped .el-table__body tr.el-table__row--striped:hover>td.el-table__cell{background:#f8fbff!important}.el-table__fixed,.el-table__fixed-right{box-shadow:none;background:#fff}.el-table__fixed:before,.el-table__fixed-right:before{display:none}.el-table__fixed-right{border-left:1px solid #e3e8ef}.el-table__fixed-right-patch,.el-table__fixed-header-wrapper th.el-table__cell,.el-table__fixed-body-wrapper td.el-table__cell{background:#fff}.el-table__fixed-header-wrapper th.el-table__cell{background:#fafafa}.el-table__fixed-body-wrapper tr:hover>td.el-table__cell{background:#f8fbff!important}.table-actions{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.table-actions .el-button{flex:none;margin-left:0!important}.el-table__body-wrapper::-webkit-scrollbar{height:8px}.el-table__header-wrapper::-webkit-scrollbar{height:8px}.el-table--border .el-table__cell{border-right-color:#0000!important}.el-table--border:after,.el-table--border .el-table__inner-wrapper:before{background-color:#0000!important}.el-table--border th.el-table__cell{border-bottom-color:#e3e8ef}.el-table__column-resize-proxy{background-color:var(--el-color-primary,#1e80f8)!important;width:2px!important}.el-table--border th.el-table__cell.is-sortable,.el-table--border th.el-table__cell{position:relative}.el-table--border th.el-table__cell:after{content:"";cursor:col-resize;pointer-events:none;border-right:2px solid #0000;width:8px;height:30px;transition:all .15s;position:absolute;top:7px;right:0}.el-table--border th.el-table__cell:hover:after{border-right-color:var(--el-color-primary,#1e80f8);background:#1e80f814}.el-table--border th.el-table__cell:hover:before{content:"";background:var(--el-color-primary,#1e80f8);opacity:.9;pointer-events:none;z-index:1;border-radius:2px;width:2px;height:20px;position:absolute;top:12px;right:3px}.el-table th.el-table__cell.is-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.el-table th.el-table__cell.is-sortable:hover{color:var(--el-color-primary)}.el-table th.el-table__cell.is-sortable .caret-wrapper{display:none}.el-table th.el-table__cell.is-sortable .cell:after{content:"⇅";color:#9ca3af;margin-left:4px;font-size:12px;transition:color .2s}.el-table th.el-table__cell.is-sortable.ascending .cell:after,.el-table th.el-table__cell.is-sortable.descending .cell:after{color:var(--el-color-primary)}.el-table .m-col-select{text-align:center!important;width:42px!important;min-width:42px!important;padding:0!important}.el-table .m-col-select .cell{width:100%;height:100%;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;display:flex!important}.el-table .m-col-select .el-checkbox{height:auto;margin:0;padding:0}.el-table .m-col-select .el-checkbox__label{display:none}.el-table .el-checkbox{height:auto!important}.el-table .el-checkbox__input{justify-content:center!important;align-items:center!important;display:flex!important}.el-table .el-checkbox__inner{background-color:#fff!important;border:1px solid #d0d5dd!important;border-radius:3px!important;width:15px!important;height:15px!important}.el-table .el-checkbox__input:hover .el-checkbox__inner{border-color:var(--el-color-primary,#1e80f8)!important}.el-table .el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-color-primary,#1e80f8)!important;border-color:var(--el-color-primary,#1e80f8)!important}.el-table .el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-color-primary,#1e80f8)!important}.el-table .el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-color-primary,#1e80f8)!important;border-color:var(--el-color-primary,#1e80f8)!important}.el-table .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:""!important;background-color:#fff!important;width:auto!important;height:2px!important;display:block!important;position:absolute!important;top:6px!important;left:3px!important;right:3px!important;transform:none!important}.el-table .el-checkbox__label{display:none!important}.mbatch-bar{color:#475467;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:10px 16px;font-size:13px;display:flex}.mbatch-bar strong{color:var(--el-color-primary,#1e80f8);font-weight:600}.mbatch-spacer{flex:1}.mbatch-bar .el-button{height:var(--control-h-sm,32px);margin-left:0!important}.mbatch-bar+.table-wrap,.mbatch-bar+.image-table,.mbatch-bar+.table-container{border-top-left-radius:0;border-top-right-radius:0}@media (width<=768px){.el-table{min-width:720px}}.btn-sm{height:var(--control-h-inline,28px);border:1px solid var(--color-border,#e5e7eb);background:var(--color-surface,#fff);color:var(--color-text,#4a5568);cursor:pointer;white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:4px;padding:4px 10px;font-size:12px;transition:all .2s;display:inline-flex}.btn-sm:hover{border-color:var(--color-primary,#1e80f8);color:var(--color-primary,#1e80f8);background:var(--color-primary-bg,#e8f4ff)}.btn-sm:active{transform:scale(.98)}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.btn-sm.danger{color:var(--color-danger,#e11d48);border-color:#fecaca}.btn-sm.danger:hover{border-color:var(--color-danger,#e11d48);background:#fef2f2}.btn-sm.primary{color:var(--color-primary,#1e80f8);background:#f5faff;border-color:#b8d8fa}.btn-sm.primary:hover{background:var(--color-primary-bg,#e8f4ff)}.btn-danger{height:var(--control-h-md,36px);border:1px solid var(--color-danger,#e11d48);background:var(--color-surface,#fff);color:var(--color-danger,#e11d48);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;transition:all .2s;display:inline-flex}.btn-danger:hover{background:#fff1f0}.btn-danger:active{transform:scale(.98)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.filter-tab{color:var(--color-text-muted,#718096);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 14px;font-size:13px;transition:all .2s}.filter-tab:hover{color:var(--color-text-strong,#1a1a2e);background:var(--color-bg,#f5f7fa)}.filter-tab.on,.filter-tab.active{background:var(--color-surface,#fff);color:var(--color-text-strong,#1a1a2e);font-weight:600;box-shadow:0 1px 3px #0000000a}.content-tab{color:var(--color-text,#4a5568);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:12px 20px;font-size:14px;transition:all .2s}.content-tab:hover{color:var(--color-primary,#1e80f8)}.content-tab.active{color:var(--color-primary,#1e80f8);border-bottom-color:var(--color-primary,#1e80f8);font-weight:500}.view-button{width:var(--control-h-sm,32px);height:var(--control-h-sm,32px);border:1px solid var(--color-border,#e5e7eb);border-radius:var(--radius-sm,8px);background:var(--color-surface,#fff);color:var(--color-text,#4a5568);cursor:pointer;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.view-button:hover{border-color:var(--color-primary,#1e80f8);color:var(--color-primary,#1e80f8)}.view-button.active{border-color:var(--color-primary,#1e80f8);color:var(--color-surface,#fff);background:var(--color-primary,#1e80f8)}.icon-btn{width:var(--control-h-sm,32px);height:var(--control-h-sm,32px);border:1px solid var(--color-border,#e5e7eb);border-radius:var(--radius-sm,8px);background:var(--color-surface,#fff);color:var(--color-text,#4a5568);cursor:pointer;justify-content:center;align-items:center;transition:all .2s;display:flex}.icon-btn:hover{border-color:var(--color-primary,#1e80f8);color:var(--color-primary,#1e80f8);background:var(--color-primary-bg,#e8f4ff)}.table-actions .el-button,.actions .el-button,.card-actions .el-button{height:var(--control-h-inline,28px);border:1px solid var(--color-border,#e5e7eb);background:var(--color-surface,#fff);color:var(--color-text,#4a5568);border-radius:6px;padding:5px 9px;font-size:12px;margin-left:0!important}.table-actions .el-button:hover,.actions .el-button:hover,.card-actions .el-button:hover{border-color:var(--color-primary,#1e80f8);color:var(--color-primary,#1e80f8);background:#f5faff}.table-actions .danger-btn,.actions .danger-btn,.card-actions .danger-btn{color:var(--color-danger,#e11d48);border-color:#fecaca}.table-actions .danger-btn:hover,.actions .danger-btn:hover,.card-actions .danger-btn:hover{border-color:var(--color-danger,#e11d48);background:#fef2f2}.dialog-footer .el-button,.el-dialog__footer .el-button{min-width:82px}.panel-title-actions .el-button{height:var(--control-h-md,36px);font-size:13px}.el-message{border-radius:var(--radius-sm,8px)!important;border-style:solid!important;border-width:1px!important;align-items:center!important;padding:12px 16px!important;left:auto!important;right:24px!important;transform:translate(0)!important;box-shadow:0 4px 12px #00000026!important}.el-message .el-message__content{color:var(--color-text,#4a5568)!important;margin-left:8px!important;font-size:13px!important;line-height:1.5!important}.el-message .el-message__icon{font-size:16px!important}.el-message .el-message__closeBtn{color:var(--color-text-muted,#718096)!important}.el-message .el-message__closeBtn:hover{color:var(--color-text-strong,#1a1a2e)!important}.el-message--success{background-color:var(--color-surface,#fff)!important;border-color:var(--color-success,#16a34a)!important}.el-message--success .el-message__icon{color:var(--color-success,#16a34a)!important}.el-message--error{background-color:var(--color-surface,#fff)!important;border-color:var(--color-danger,#e11d48)!important}.el-message--error .el-message__icon{color:var(--color-danger,#e11d48)!important}.el-message--warning{background-color:var(--color-surface,#fff)!important;border-color:var(--color-warning,#d97706)!important}.el-message--warning .el-message__icon{color:var(--color-warning,#d97706)!important}.el-message--info{background-color:var(--color-surface,#fff)!important;border-color:var(--color-primary,#1e80f8)!important}.el-message--info .el-message__icon{color:var(--color-primary,#1e80f8)!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.notification-popover.el-popover.el-popper,.notification-popover.el-popper{box-shadow:none!important;background:0 0!important;border:none!important;border-radius:12px!important;padding:0!important}.notification-popover .el-popper__arrow{display:none!important}.notification-popover>.notification-panel{border-radius:12px;overflow:hidden;box-shadow:0 12px 32px #10182829,0 2px 8px #10182814}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--bg-page:#f5f7fa;--bg-card:#fff;--bg-hover:#f0f5ff;--bg-input:#fff;--bg-code:#f8f9fa;--bg-active:#e8f4ff;--bg-empty:#fafafa;--border-light:#e4e7ed;--border-lighter:#f0f0f0;--border-dark:#dcdfe6;--border-active:#1e80f8;--text-primary:#303133;--text-secondary:#606266;--text-tertiary:#909399;--text-quaternary:#c0c4cc;--text-hint:#c0c4cc;--text-white:#fff;--text-code:#e83e8c;--text-link:#1e80f8;--color-primary:#1e80f8;--color-success:#16a34a;--color-warning:#d97706;--color-danger:#e11d48;--color-info:#909399;--primary:#1e80f8;--primary-light:#e8f4ff;--primary-dark:#1666d8;--radius-xs:4px;--radius-sm:8px;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001f;--transition-fast:.15s ease;--transition-normal:.25s ease;--code-bg:#f8f9fa;--code-border:#e4e7ed;--code-gutter-bg:#f5f7fa;--code-gutter-text:#909399;--code-active-line:#e8f4ff;--tree-hover:#f0f5ff;--tree-active:#e8f4ff;--tag-blue-bg:#ecf5ff;--tag-blue-border:#d9ecff;--tag-blue-text:#409eff;--tag-green-bg:#f0f9eb;--tag-green-border:#e1f3d8;--tag-green-text:#67c23a;--tag-orange-bg:#fdf6ec;--tag-orange-border:#faecd8;--tag-orange-text:#e6a23c;--tag-red-bg:#fef0f0;--tag-red-border:#fde2e2;--tag-red-text:#f56c6c;--tag-gray-bg:#f4f4f5;--tag-gray-border:#e9e9eb;--tag-gray-text:#909399;--tag-purple-bg:#f2f0ff;--tag-purple-border:#e4e1f5;--tag-purple-text:#6d5de6}.vue-flow{z-index:0;direction:ltr;width:100%;height:100%;position:relative;overflow:hidden}.vue-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1px;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.vue-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{pointer-events:none;min-width:5px;min-height:5px;position:absolute}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{bottom:0;left:50%;transform:translate(-50%,50%)}.vue-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{z-index:5;margin:15px;position:absolute}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10px}}:root{--vf-node-bg:#fff;--vf-node-text:#222;--vf-connection-path:#b1b1b7;--vf-handle:#555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{text-align:center;width:150px;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-style:solid;border-width:1px;border-color:var(--vf-node-color);border-radius:3px;padding:10px;font-size:12px}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid #555;outline:none}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color:var(--vf-node-color,#0041d0);--vf-handle:var(--vf-node-color,#0041d0);--vf-box-shadow:var(--vf-node-color,#0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color,#0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{border:1px solid var(--vf-node-color,#0041d0);outline:none}.vue-flow__node-default{--vf-handle:var(--vf-node-color,#1a192b);--vf-box-shadow:var(--vf-node-color,#1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color,#1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{border:1px solid var(--vf-node-color,#1a192b);outline:none}.vue-flow__node-output{--vf-handle:var(--vf-node-color,#ff0072);--vf-box-shadow:var(--vf-node-color,#ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color,#ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid var(--vf-node-color,#ff0072);outline:none}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{background:var(--vf-handle);border:1px solid #fff;border-radius:100%;width:6px;height:6px}.vue-flow__controls{box-shadow:0 0 2px 1px #00000014}.vue-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.vue-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.vue-flow__controls-button:hover{background:#f4f4f4}.vue-flow__controls-button:disabled{pointer-events:none}.vue-flow__controls-button:disabled svg{fill-opacity:.4}.vue-flow__minimap{background-color:#fff}.vue-flow__minimap.pannable{cursor:grab}.vue-flow__minimap.dragging{cursor:grabbing}.vue-flow__minimap-mask.pannable{cursor:grab}.global-loading-overlay{z-index:9999;background:#ffffffe6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.global-loading-spinner{color:#1e80f8;flex-direction:column;align-items:center;gap:12px;display:flex}.global-loading-spinner span{color:#666;font-size:14px}
