*{box-sizing:border-box;margin:0;padding:0}.app-boot-loading{z-index:9999;background:#f0f2f5;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.boot-spinner{border:3px solid #e4e7ed;border-top-color:#667eea;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite boot-spin}@keyframes boot-spin{to{transform:rotate(360deg)}}.boot-text{color:#909399;margin-top:16px;font-size:14px}:root{--primary-color:#667eea;--primary-gradient:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--success-color:#67c23a;--warning-color:#e6a23c;--danger-color:#f56c6c;--info-color:#909399;--text-primary:#303133;--text-regular:#606266;--text-secondary:#909399;--border-color:#ebeef5;--bg-color:#f0f2f5;--card-radius:12px;--transition-base:all .3s cubic-bezier(.4, 0, .2, 1)}html,body,#app{width:100%;height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-color);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif}.el-card{transition:var(--transition-base);border-radius:var(--card-radius)!important;border:none!important}.el-card:hover{box-shadow:0 4px 20px #00000014!important}.el-button{transition:var(--transition-base);font-weight:500;border-radius:8px!important}.el-button--primary{background:var(--primary-gradient)!important;border:none!important}.el-button--primary:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.el-input__wrapper{transition:var(--transition-base);border-radius:8px!important}.el-select .el-input__wrapper{border-radius:8px!important}.el-table{overflow:hidden;border-radius:var(--card-radius)!important}.el-table th.el-table__cell{color:var(--text-primary)!important;background:#fafafa!important;font-weight:600!important}.el-table tr{transition:background-color .2s}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:#f5f7ff!important}.clickable-table .el-table__body tr{cursor:pointer}.el-tag{font-weight:500;border-radius:6px!important}.el-dialog{overflow:hidden;border-radius:16px!important}.el-dialog__header{border-bottom:1px solid var(--border-color);margin:0!important;padding:20px 24px!important}.el-dialog__body{padding:24px!important}.el-dialog__footer{border-top:1px solid var(--border-color);padding:16px 24px!important}.el-message-box{border-radius:12px!important}.el-pagination{justify-content:flex-end;margin-top:20px}.el-empty{padding:40px 0}.el-page-header{margin-bottom:16px;padding:0!important}.search-bar{border-radius:var(--card-radius);background:#fff;margin-bottom:16px;padding:20px;box-shadow:0 1px 4px #0000000a}.search-form{margin:0!important}.action-bar{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#dcdfe6;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#c0c4cc}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-enter-active{animation:.3s fadeIn}a{color:var(--primary-color);text-decoration:none;transition:color .2s}a:hover{color:#764ba2}.text-primary{color:var(--primary-color)!important}.text-success{color:var(--success-color)!important}.text-warning{color:var(--warning-color)!important}.text-danger{color:var(--danger-color)!important}.text-muted{color:var(--text-secondary)!important}.mt-16{margin-top:16px}.mb-16{margin-bottom:16px}.mt-20{margin-top:20px}.mb-20{margin-bottom:20px}.page-container{padding:24px}@media (width<=768px){.page-container{padding:16px}.search-bar{padding:12px}.el-dialog{max-height:100vh;border-radius:0!important;width:100%!important;margin:0!important}.el-dialog__body{padding:16px!important}.el-table{overflow-x:auto}.el-pagination{justify-content:center}.action-bar{flex-direction:column;align-items:stretch}.action-bar .el-button+.el-button{margin-left:0}.el-form-item__label{white-space:nowrap}.el-card{border-radius:8px!important}.el-button{padding:8px 12px!important}}@media (width<=480px){.page-container{padding:10px}.search-bar{margin-bottom:12px;padding:10px}.el-button{font-size:13px;padding:6px 10px!important}.el-dialog__header{padding:14px 16px!important}.el-dialog__body{padding:12px!important}.el-dialog__footer{padding:12px 16px!important}.el-pagination{margin-top:12px}.el-pagination .el-pagination__jump{display:none}}
