body,html{margin:0;overflow-y:scroll}#app,body,html{overflow-x:hidden}.pattern-select-popper{width:110px!important;min-width:100px!important;overflow:hidden;text-align:center!important}::root{--primary-color:#1890ff;--primary-hover:#096dd9;--secondary-color:#409eff;--accent-color:#ff6a00;--success-color:#52c41a;--warning-color:#faad14;--error-color:#f5222d;--text-primary:#333;--text-secondary:#666;--text-tertiary:#999;--border-color:#e8e8e8;--background-light:#fafafa;--background-gray:#f5f5f5;--background-blue:#ecf5ff;--background-white:#fff;--font-xs:12px;--font-sm:14px;--font-md:16px;--font-lg:18px;--font-xl:20px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 2px 8px rgba(0,0,0,.08);--shadow-lg:0 4px 16px rgba(0,0,0,.1);--transition-fast:0.15s ease;--transition-normal:0.25s ease;--transition-slow:0.4s ease}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c0c4cc;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#909399}.flex{display:flex}.flex-column{display:flex;flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-1{flex:1}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--primary-color)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-tertiary)}.text-success{color:var(--success-color)}.text-warning{color:var(--warning-color)}.text-error{color:var(--error-color)}.text-blue{color:var(--secondary-color)}.text-green{color:var(--success-color)}.text-red{color:var(--error-color)}.bg-light{background-color:var(--background-light)}.bg-gray{background-color:var(--background-gray)}.bg-blue{background-color:var(--background-blue)}.m-0{margin:0}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.el-card{border-radius:var(--radius-md);border:none;box-shadow:var(--shadow-sm)}.el-card:hover{box-shadow:var(--shadow-md)}.el-button,.el-input__inner,.el-select .el-input__inner,.el-table{border-radius:var(--radius-sm)}.el-table th{background-color:var(--background-light);font-weight:600}.el-dialog{border-radius:var(--radius-md)}.el-dialog__header{border-bottom:1px solid var(--border-color)}.el-dialog__body,.el-dialog__header{padding:var(--space-4) var(--space-5)}.el-dialog__footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-color)}.el-tag{border-radius:var(--radius-sm)}.el-pagination{justify-content:center}.el-menu{border-right:none}.el-menu-item{border-radius:var(--radius-sm);margin:var(--space-1) var(--space-2)}.el-menu-item.is-active{background-color:var(--background-blue)}.el-timeline-item__node{background-color:var(--primary-color)}.el-timeline-item__content{padding:var(--space-2);background-color:var(--background-light);border-radius:var(--radius-sm)}.el-timeline-item__content:hover{box-shadow:var(--shadow-md)}.el-form{margin-bottom:var(--space-4)}.el-form-item__label{font-size:var(--font-sm);color:var(--text-secondary);font-weight:500}.el-image-viewer__img{background-color:#fff}.van-back-top{opacity:.9}.error-boundary[data-v-751f6701]{width:100%;min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center}.error-content[data-v-751f6701]{width:100%;max-width:600px;margin:0 auto;padding:20px;text-align:center}.auth-dialog{border-radius:12px!important;box-shadow:0 12px 40px rgba(0,0,0,.15)!important;overflow:hidden}.auth-dialog .el-dialog__header{padding:0!important;border-bottom:none}.auth-dialog .el-dialog__body{padding:0 24px!important}.auth-dialog .el-dialog__headerbtn{margin-top:12px!important;margin-right:12px!important}.auth-dialog .el-dialog__footer{padding:16px 24px!important;border-top:none!important;margin-top:8px!important}.user-login-container[data-v-5249f019]{display:flex;align-items:center}.user-info-trigger[data-v-5249f019]{display:flex;align-items:center;gap:4px;cursor:pointer;color:#303133;font-size:14px;padding:6px 12px;border-radius:6px;transition:background-color .2s}.user-info-trigger[data-v-5249f019]:hover{background-color:#f0f2f5}.user-name[data-v-5249f019]{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-button[data-v-5249f019]{color:#606266;font-size:14px;padding:8px 12px;border-radius:4px;transition:all .3s ease}.login-button[data-v-5249f019]:hover{color:#409eff;background-color:#ecf5ff}.challenge-banner[data-v-5249f019]{display:flex;align-items:center;gap:8px;margin:16px 0 4px;padding:10px 14px;background:#fdf6ec;border:1px solid #faecd8;border-radius:8px;color:#e6a23c;font-size:14px;line-height:1.4}.challenge-banner .banner-icon[data-v-5249f019]{font-size:18px;flex-shrink:0}.challenge-banner .banner-text[data-v-5249f019]{font-weight:500}.auth-tabs[data-v-5249f019]{display:flex;border-bottom:1px solid #ebeef5;margin-bottom:24px}.auth-tab[data-v-5249f019]{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 0;font-size:15px;color:#909399;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.auth-tab[data-v-5249f019]:hover{color:#409eff}.auth-tab.active[data-v-5249f019]{color:#409eff;border-bottom-color:#409eff;font-weight:600}.auth-panel[data-v-5249f019]{min-height:260px}.panel-title[data-v-5249f019]{text-align:center;font-size:18px;font-weight:600;color:#303133;margin-bottom:6px}.panel-subtitle[data-v-5249f019]{text-align:center;font-size:13px;color:#909399;margin-bottom:24px}.panel-mode-tip[data-v-5249f019]{text-align:center;font-size:12px;color:#c0c4cc;margin:-16px 0 16px}.auth-form[data-v-5249f019]{padding:0 8px}.input-with-prefix .prefix-text[data-v-5249f019]{color:#909399;font-size:14px;padding-right:8px;border-right:1px solid #dcdfe6;margin-right:8px}.code-input-row[data-v-5249f019]{display:flex;gap:12px;width:100%}.code-input[data-v-5249f019]{flex:1}.send-code-btn[data-v-5249f019]{width:130px;flex-shrink:0;font-size:13px}.agreement-text[data-v-5249f019]{font-size:12px;color:#909399}.agreement-text a[data-v-5249f019]{color:#409eff}.submit-btn[data-v-5249f019]{width:100%;margin-top:8px;font-size:16px;letter-spacing:2px}.qr-code-container[data-v-5249f019]{text-align:center;padding:10px 0}.loading-container[data-v-5249f019]{display:flex;flex-direction:column;align-items:center;padding:40px 0}.loading-icon[data-v-5249f019]{font-size:36px;color:#409eff;animation:spin-5249f019 1.2s linear infinite}@keyframes spin-5249f019{to{transform:rotate(1turn)}}.loading-text[data-v-5249f019]{margin-top:12px;color:#909399;font-size:14px}.qr-code-wrapper[data-v-5249f019]{display:inline-block;padding:12px;border:1px solid #e4e7ed;border-radius:8px;background:#fff}.qr-code-image[data-v-5249f019]{width:200px;height:200px;display:block}.login-tips[data-v-5249f019]{margin-top:12px}.status-text[data-v-5249f019]{font-size:14px;color:#67c23a}.refresh-link[data-v-5249f019]{display:inline-block;margin-top:8px;font-size:13px;color:#409eff;cursor:pointer}.refresh-link[data-v-5249f019]:hover{text-decoration:underline}.dialog-footer[data-v-5249f019]{display:flex;justify-content:center}.rescan-body[data-v-7c0def20]{text-align:center;padding:4px 0 8px}.rescan-title[data-v-7c0def20]{font-size:16px;font-weight:600;color:#303133;margin:0 0 6px}.rescan-sub[data-v-7c0def20]{font-size:13px;color:#909399;margin:0 0 18px}.qr-wrap[data-v-7c0def20]{display:inline-block}.qr-loading[data-v-7c0def20]{display:flex;flex-direction:column;align-items:center;padding:40px 0}.loading-icon[data-v-7c0def20]{font-size:36px;color:#409eff;animation:rescan-spin-7c0def20 1.2s linear infinite}@keyframes rescan-spin-7c0def20{to{transform:rotate(1turn)}}.loading-text[data-v-7c0def20]{margin-top:12px;color:#909399;font-size:14px}.qr-img[data-v-7c0def20]{width:200px;height:200px;display:block;padding:12px;border:1px solid #e4e7ed;border-radius:8px;background:#fff}.qr-tip[data-v-7c0def20]{margin-top:12px}.status-text[data-v-7c0def20]{font-size:14px;margin:0}.status-success[data-v-7c0def20]{color:#67c23a}.status-error[data-v-7c0def20]{color:#f56c6c}.status-info[data-v-7c0def20]{color:#909399}.qr-error[data-v-7c0def20]{display:flex;flex-direction:column;align-items:center;gap:6px;padding:30px 0;color:#f56c6c}.err-icon[data-v-7c0def20]{font-size:32px}.err-text[data-v-7c0def20]{font-size:13px}.refresh-link[data-v-7c0def20]{display:inline-block;margin-top:4px;font-size:13px;color:#409eff;cursor:pointer}.refresh-link[data-v-7c0def20]:hover{text-decoration:underline}#app,body{font-family:Microsoft YaHei,PingFang SC,Helvetica Neue,Helvetica,Tahoma,Arial,sans-serif;-moz-osx-font-smoothing:grayscale}#app{color:#333;width:100%;min-height:100vh}#app,.page-layout{margin:0;padding:0}.page-layout{display:flex}.main-content{width:100%;margin:0;padding:0}.page-layout:not(.admin){min-height:100vh;width:100%}.page-layout.mobile-fullwidth{overflow-x:auto}.page-layout:not(.admin) .main-content{width:100%;max-width:1200px;margin:0 auto;min-height:100vh;overflow:auto;padding-top:0}.page-layout:not(.admin).mobile-fullwidth .main-content{max-width:100%;overflow-x:hidden}.page-layout:not(.admin).no-header .main-content{margin-top:0}.page-layout.admin{height:100vh;width:100vw;overflow:hidden}.page-layout.admin .main-content{width:100%;height:100%;overflow:auto}:root{--el-color-primary:#1890ff;--el-color-success:#67c23a;--el-color-warning:#e6a23c;--el-color-danger:#f56c6c;--el-color-info:#909399}html .el-input__wrapper,html .el-textarea__inner{border:1px solid var(--el-border-color)!important;box-shadow:none!important;transition:border-color .2s,background-color .2s}html .el-input__wrapper:hover,html .el-textarea__inner:hover{border-color:var(--el-border-color-hover)!important;box-shadow:none!important}html .el-input.is-active .el-input__wrapper,html .el-input__wrapper.is-focus,html .el-input__wrapper:focus-within,html .el-textarea.is-focus .el-textarea__inner,html .el-textarea__inner:focus{border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important;box-shadow:none!important;outline:none!important}html .el-input__inner{border:none!important;box-shadow:none!important}html .el-input-number{min-width:0!important}html .el-input-number .el-input__wrapper{border:1px solid var(--el-border-color)!important;box-shadow:none!important}html .el-input-number .el-input.is-active .el-input__wrapper,html .el-input-number .el-input__wrapper.is-focus,html .el-input-number .el-input__wrapper:focus-within{border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important;box-shadow:none!important}html .el-input-number--small .el-input__wrapper{border:1px solid var(--el-border-color)!important;box-shadow:none!important}html .el-input-number--small .el-input.is-active .el-input__wrapper,html .el-input-number--small .el-input__wrapper.is-focus,html .el-input-number--small .el-input__wrapper:focus-within{border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important;box-shadow:none!important}html .el-input-number__decrease:hover~.el-input:not(.is-disabled) .el-input__wrapper,html .el-input-number__increase:hover~.el-input:not(.is-disabled) .el-input__wrapper{border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important;box-shadow:none!important}html .el-input-number.is-controls-right .el-input__wrapper{border:1px solid var(--el-border-color)!important;box-shadow:none!important}html .el-input-number.is-controls-right .el-input.is-active .el-input__wrapper,html .el-input-number.is-controls-right .el-input__wrapper.is-focus,html .el-input-number.is-controls-right .el-input__wrapper:focus-within{border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important;box-shadow:none!important}html .el-input-number.is-controls-right.el-input-number--small .el-input__wrapper{border:1px solid var(--el-border-color)!important;box-shadow:none!important}html .el-input-number.is-controls-right.el-input-number--small .el-input.is-active .el-input__wrapper,html .el-input-number.is-controls-right.el-input-number--small .el-input__wrapper.is-focus,html .el-input-number.is-controls-right.el-input-number--small .el-input__wrapper:focus-within{border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important;box-shadow:none!important}html .el-date-editor .el-input__wrapper{border:1px solid var(--el-border-color)!important;box-shadow:none!important}html .el-date-editor.is-focus .el-input__wrapper{border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important;box-shadow:none!important}html .el-cascader:not(.is-disabled):hover .el-input__wrapper{box-shadow:none!important;border-color:var(--el-border-color-hover)!important}html .el-cascader .el-input.is-focus .el-input__wrapper{box-shadow:none!important;border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important}html .el-range-editor.el-input__wrapper{box-shadow:none!important;border:1px solid var(--el-border-color)!important}html .el-range-editor.is-active,html .el-range-editor.is-active:hover{box-shadow:none!important;border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important}html .el-pagination .el-input .el-input__wrapper{border:1px solid var(--el-border-color)!important;box-shadow:none!important}html .el-pagination .el-input.is-focus .el-input__wrapper{border-color:var(--el-input-focus-border-color,var(--el-color-primary))!important;box-shadow:none!important}.lazy-tm-img[data-v-276e8a60]{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.lazy-tm-img-el[data-v-276e8a60]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.lazy-tm-img-ph[data-v-276e8a60]{width:100%;height:100%;background:#f5f5f5}