html,body,#app{margin:0;padding:0;height:100%}:root{--primary-color: #409eff;--success-color: #67c23a;--warning-color: #e6a23c;--danger-color: #f56c6c;--info-color: #909399;--text-primary: #303133;--text-regular: #606266;--text-secondary: #909399;--border-color: #dcdfe6;--bg-color: #f5f7fa;--sidebar-width: 220px;--header-height: 60px}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;color:var(--text-primary);background-color:var(--bg-color)}#app{height:100%}.main-layout>.el-container{overflow:hidden}.main-layout .main-content{min-height:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background-color:#c1c1c1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background-color:#a8a8a8}::-webkit-scrollbar-track{background-color:#f1f1f1}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2{font-size:20px;font-weight:600;color:var(--text-primary)}.page-content{background:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 12px #0000001a}.search-form{margin-bottom:20px}.search-form .el-form-item{margin-bottom:0}.table-actions{display:flex;gap:8px}.status-tag.active{background-color:#e1f3d8;color:#67c23a}.status-tag.disabled{background-color:#fde2e2;color:#f56c6c}.status-tag.pending{background-color:#fdf6ec;color:#e6a23c}.dialog-form{padding:20px 40px 0}.dialog-form .el-form-item__label{font-weight:500}.stat-card{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 12px #0000001a}.stat-card .stat-title{font-size:14px;color:var(--text-secondary);margin-bottom:8px}.stat-card .stat-value{font-size:28px;font-weight:600;color:var(--text-primary)}.stat-card .stat-icon{font-size:48px;opacity:.1}.department-tree .el-tree-node__content{height:40px}.department-tree .custom-tree-node{flex:1;display:flex;align-items:center;justify-content:space-between;padding-right:10px}.department-tree .custom-tree-node .node-label{display:flex;align-items:center;gap:8px}.department-tree .custom-tree-node .node-actions{display:none}.department-tree .custom-tree-node:hover .node-actions{display:flex;gap:4px}@media(max-width:768px){:root{--sidebar-width: 64px}.page-header{flex-direction:column;align-items:flex-start;gap:12px}}
