@import '~@/utils/utils.less'; .staffInfoContainer { min-height: 100vh; background-color: #f5f6fa; .announcementBar { background: #e6f7ff; border: 1px solid #91d5ff; margin-bottom: 16px; border-radius: 6px; overflow: hidden; .announcement { display: flex; align-items: center; .announcementLabel { background-color: #fef3c7; color: #92400e; border-radius: 4px; padding: 4px 8px; font-size: 12px; font-weight: 500; margin-right: 12px; white-space: nowrap; display: flex; align-items: center; .anticon { margin-right: 4px; } } .scrollContainer { flex: 1; overflow: hidden; white-space: nowrap; } .scrollContent { display: inline-block; animation: scroll 30s linear infinite; color: #666; font-size: 14px; } } } .mainContent { padding: 24px; .contentCard { .ant-card-head { .ant-card-head-title { font-size: 18px; font-weight: 600; color: #333; } } } .treeCard { height: 600px; border: 1px solid #e8e8e8; border-radius: 8px; .treeHeader { display: flex; justify-content: space-between; align-items: center; font-size: 14px; font-weight: 500; } .treeContainer { height: 520px; overflow-y: auto; /* 自定义滚动条样式 */ &::-webkit-scrollbar { width: 6px; } &::-webkit-scrollbar-track { background: transparent; } &::-webkit-scrollbar-thumb { background: #d9d9d9; border-radius: 3px; &:hover { background: #bfbfbf; } } .orgTree { .ant-tree-treenode { padding: 2px 0; .ant-tree-node-content-wrapper { border-radius: 4px; transition: all 0.3s ease; padding: 4px 8px; &:hover { background-color: #f0f9ff; transform: translateX(2px); } &.ant-tree-node-selected { background-color: #e6f7ff !important; box-shadow: 0 2px 8px rgba(24, 144, 255, 0.2); } } .ant-tree-iconEle { margin-right: 8px; } .ant-tree-title { font-size: 14px; } } } } } /* Tree节点标题样式 */ .tree-node-title { display: flex; align-items: center; width: 100%; .node-title { flex: 1; font-size: 14px; margin-left: 8px; color: #333; } .node-count { color: #999; font-size: 12px; margin-left: auto; background: #f0f0f0; padding: 1px 6px; border-radius: 10px; min-width: 20px; text-align: center; } } .searchCard { margin-bottom: 16px; background-color: #f9fbfc; border-radius: 8px; .ant-card-body { padding: 12px; background-color: #f9fbfc; border-radius: 6px; } .ant-form-item-label { font-weight: 500; label { color: #ecf0f1 !important; } } // 深色背景下的表单项样式 .ant-input, .ant-select-selector { background-color: #34495e !important; border-color: #5a6c7d !important; color: #ecf0f1 !important; &:hover { border-color: #7fb3d3 !important; } &:focus { border-color: #2d5cf6 !important; box-shadow: 0 0 0 2px rgba(45, 92, 246, 0.2) !important; } } .ant-select-selection-placeholder, .ant-input::placeholder { color: #95a5a6 !important; } .anticon { color: #95a5a6 !important; } /* 搜索按钮样式 */ .searchButton { background: linear-gradient(135deg, #2d5cf6 0%, #4c7bff 100%); border: none; border-radius: 8px; font-weight: 600; font-size: 14px; box-shadow: 0 4px 12px rgba(45, 92, 246, 0.3); transition: all 0.3s ease; margin-top: -8px; height: 35px; padding: 0 16px; &:hover, &:focus { background: linear-gradient(135deg, #4c7bff 0%, #6b8fff 100%); transform: translateY(-2px); box-shadow: 0 6px 20px rgba(45, 92, 246, 0.4); } &:active { transform: translateY(0); } } /* 重置按钮样式 */ .resetButton { background: linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 100%); border: 1px solid #d9d9d9; color: #666; border-radius: 8px; font-weight: 500; font-size: 14px; transition: all 0.3s ease; margin-top: -8px; height: 35px; padding: 0 16px; &:hover, &:focus { background: linear-gradient(135deg, #e8e8e8 0%, #dcdcdc 100%); border-color: #bfbfbf; color: #333; transform: translateY(-1px); box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1); } .anticon { color: #ff7875; } } } .actionBar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; .totalInfo { color: #666; font-size: 14px; font-weight: 500; } /* 导出按钮样式 */ .exportButton { background: linear-gradient(135deg, #52c41a 0%, #73d13d 100%); border: none; color: white; border-radius: 8px; font-weight: 500; font-size: 14px; box-shadow: 0 4px 12px rgba(82, 196, 26, 0.3); transition: all 0.3s ease; // margin-top: -8px; height: 35px; padding: 0 16px; &:hover, &:focus { background: linear-gradient(135deg, #73d13d 0%, #95de64 100%); transform: translateY(-2px); box-shadow: 0 6px 20px rgba(82, 196, 26, 0.4); color: white; } &:active { transform: translateY(0); } .anticon { color: white; } } /* 新增按钮样式 */ .addButton { background: linear-gradient(135deg, #fa8c16 0%, #ffa940 100%); border: none; border-radius: 8px; font-weight: 600; font-size: 14px; box-shadow: 0 4px 12px rgba(250, 140, 22, 0.3); transition: all 0.3s ease; // margin-top: -8px; height: 35px; padding: 0 16px; &:hover, &:focus { background: linear-gradient(135deg, #ffa940 0%, #ffc069 100%); transform: translateY(-2px); box-shadow: 0 6px 20px rgba(250, 140, 22, 0.4); } &:active { transform: translateY(0); } } } .tableCard { border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06); .ant-table-wrapper { max-height: 600px; overflow-y: auto; /* 自定义滚动条样式 */ &::-webkit-scrollbar { width: 8px; } &::-webkit-scrollbar-track { background: #f5f5f5; border-radius: 4px; } &::-webkit-scrollbar-thumb { background: #d9d9d9; border-radius: 4px; &:hover { background: #bfbfbf; } } .ant-table-thead>tr>th { background-color: #fafafa; font-weight: 600; color: #333; border-bottom: 1px solid #e8e8e8; position: sticky; top: 0; z-index: 1; } .ant-table-tbody>tr { &:hover>td { background-color: #f5f5f5 !important; } >td { border-bottom: 1px solid #f0f0f0; } } } .paginationWrapper { margin-top: 20px; text-align: right; .ant-pagination { .ant-pagination-total-text { color: #666; } .ant-pagination-item { border-radius: 4px; &.ant-pagination-item-active { background-color: #2d5cf6; border-color: #2d5cf6; } } .ant-pagination-prev, .ant-pagination-next { border-radius: 4px; } } } } } } .mainContent { padding: 12px; .contentCard { .ant-card-head { .ant-card-head-title { font-size: 18px; font-weight: 600; color: #333; } } } .treeCard { height: 600px; border: 1px solid #e8e8e8; border-radius: 8px; .treeHeader { display: flex; justify-content: space-between; align-items: center; font-size: 14px; font-weight: 500; } .treeContainer { height: 520px; overflow-y: auto; /* 自定义滚动条样式 */ &::-webkit-scrollbar { width: 6px; } &::-webkit-scrollbar-track { background: transparent; } &::-webkit-scrollbar-thumb { background: #d9d9d9; border-radius: 3px; &:hover { background: #bfbfbf; } } .orgTree { .ant-tree-treenode { padding: 2px 0; .ant-tree-node-content-wrapper { border-radius: 4px; transition: all 0.3s ease; padding: 4px 8px; &:hover { background-color: #f0f9ff; transform: translateX(2px); } &.ant-tree-node-selected { background-color: #e6f7ff !important; box-shadow: 0 2px 8px rgba(24, 144, 255, 0.2); } } .ant-tree-iconEle { margin-right: 8px; } .ant-tree-title { font-size: 14px; } } } } } /* Tree节点标题样式 */ .tree-node-title { display: flex; align-items: center; width: 100%; .node-title { flex: 1; font-size: 14px; margin-left: 8px; color: #333; } .node-count { color: #999; font-size: 12px; margin-left: auto; background: #f0f0f0; padding: 1px 6px; border-radius: 10px; min-width: 20px; text-align: center; } } .searchCard { margin-bottom: 16px; background-color: #f9fbfc; border-radius: 8px; .ant-card-body { padding: 10px; background-color: #f9fbfc; border-radius: 6px; } .ant-form-item-label { font-weight: 500; label { color: #ecf0f1 !important; } } // 深色背景下的表单项样式 .ant-input, .ant-select-selector { background-color: #34495e !important; border-color: #5a6c7d !important; color: #ecf0f1 !important; &:hover { border-color: #7fb3d3 !important; } &:focus { border-color: #2d5cf6 !important; box-shadow: 0 0 0 2px rgba(45, 92, 246, 0.2) !important; } } .ant-select-selection-placeholder, .ant-input::placeholder { color: #95a5a6 !important; } .anticon { color: #95a5a6 !important; } } .actionBar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; .totalInfo { color: #666; font-size: 14px; } } .tableCard { border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06); padding-bottom: 10px; .ant-table-wrapper { max-height: 600px; overflow-y: auto; /* 自定义滚动条样式 */ &::-webkit-scrollbar { width: 8px; } &::-webkit-scrollbar-track { background: #f5f5f5; border-radius: 4px; } &::-webkit-scrollbar-thumb { background: #d9d9d9; border-radius: 4px; &:hover { background: #bfbfbf; } } .ant-table-thead>tr>th { background-color: #fafafa; font-weight: 600; color: #333; border-bottom: 1px solid #e8e8e8; position: sticky; top: 0; z-index: 1; } .ant-table-tbody>tr { &:hover>td { background-color: #f5f5f5 !important; } >td { border-bottom: 1px solid #f0f0f0; } } } .paginationWrapper { margin-top: 20px; text-align: right; .ant-pagination { .ant-pagination-total-text { color: #666; } .ant-pagination-item { border-radius: 4px; &.ant-pagination-item-active { background-color: #2d5cf6; border-color: #2d5cf6; } } .ant-pagination-prev, .ant-pagination-next { border-radius: 4px; } } } } :global { .ant-card-body { padding: 12px 24px 0px 24px; } } } @keyframes scroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } } // 响应式设计 @media (max-width: 1200px) { .staffInfoContainer { .mainContent { .searchCard { .ant-row { .ant-col { margin-bottom: 16px; } } } } } } // 自定义主题色 .ant-btn-primary { background-color: #2d5cf6; border-color: #2d5cf6; &:hover, &:focus { background-color: #4c7bff; border-color: #4c7bff; } } .ant-tree .ant-tree-node-selected { background-color: #e6f7ff !important; } .ant-select-focused .ant-select-selector, .ant-input-affix-wrapper-focused, .ant-input:focus, .ant-input-focused { border-color: #2d5cf6 !important; box-shadow: 0 0 0 2px rgba(45, 92, 246, 0.2) !important; } // 标签样式优化 .ant-tag { border-radius: 4px; font-size: 12px; } // 按钮组间距调整 .ant-space-item { .ant-btn+.ant-btn { margin-left: 8px; } } // 表格链接按钮样式 .ant-btn-link { padding: 0 4px; font-size: 12px; }