#app{height:100%}.project-switcher .el-select[data-v-6a02bc92]{width:260px}[data-v-7055acf9] .el-form-item__label{white-space:nowrap}.main-layout[data-v-e91fe9cc]{height:100%}.main-header[data-v-e91fe9cc]{display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e6e6e6;padding:0 20px;height:60px!important;box-shadow:0 1px 4px rgba(0,0,0,.08);z-index:100}.main-header .header-left .header-logo[data-v-e91fe9cc]{font-size:18px;font-weight:600;color:#303133;white-space:nowrap}.main-header .header-center[data-v-e91fe9cc]{flex:1;display:flex;justify-content:center}.main-header .header-right .user-info[data-v-e91fe9cc]{cursor:pointer;color:#606266;font-size:14px}.main-header .header-right .user-info i[data-v-e91fe9cc]{margin:0 4px}.main-body[data-v-e91fe9cc]{height:calc(100% - 60px)}.main-sidebar[data-v-e91fe9cc]{background:#304156;transition:width .3s;overflow:hidden;position:relative}.main-sidebar .el-menu[data-v-e91fe9cc]{border-right:none;height:calc(100% - 40px)}.main-sidebar .sidebar-toggle[data-v-e91fe9cc]{position:absolute;bottom:0;width:100%;height:40px;display:flex;align-items:center;justify-content:center;background:#263445;color:#bfcbd9;cursor:pointer;font-size:18px}.main-sidebar .sidebar-toggle[data-v-e91fe9cc]:hover{color:#409eff}.main-content[data-v-e91fe9cc]{background:#f0f2f5;padding:0;overflow-y:auto}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif;font-size:14px;color:#303133;background:#f0f2f5}.page-container{padding:20px;height:100%;overflow-y:auto}.filter-bar{background:#fff;padding:16px 20px;border-radius:4px;margin-bottom:16px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.filter-bar .el-input,.filter-bar .el-select{width:180px}.content-card{background:#fff;padding:20px;border-radius:4px}.stat-cards{grid-template-columns:repeat(4,1fr)}.stat-cards,.two-columns{display:grid;gap:16px;margin-bottom:20px}.two-columns{grid-template-columns:1fr 1fr}.table-actions .el-button{padding:4px 8px;font-size:12px}.status-tag{display:inline-flex;align-items:center;gap:4px;font-size:13px}.status-tag.success{color:#67c23a}.status-tag.warning{color:#e6a23c}.status-tag.danger{color:#f56c6c}.status-tag.info{color:#909399}