UserList.module.css 1.89 KB
/* REQ-USR-003: 用户列表页 scoped 样式。语义色只用 var(--color-*);工具栏深色底为局部装饰(D10) */

.page {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--color-bg-base);
}

/* === 工具栏:深色底为页面局部装饰(非语义 token,scoped,D10,与 FE-02 顶栏处理一致) === */
.toolbar {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  background: #2c2f36;
}

.toolbarSpacer {
  flex: 1 1 auto;
}

.toolbar :global(.ant-btn) {
  color: #ffffff;
}

.gear {
  color: #ffffff;
  font-size: 16px;
  cursor: default;
  padding: 0 8px;
}

/* === 筛选栏:白底 + 下边线 === */
.filterbar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  padding: 10px 12px;
  background: var(--color-form-bg-edit);
  border-bottom: 1px solid var(--color-border);
}

.moreToggle {
  color: var(--color-text-secondary);
  cursor: pointer;
  user-select: none;
  padding: 0 4px;
}

/* === 表格壳:白底,可横向滚动 === */
.tableShell {
  flex: 1 1 auto;
  overflow: auto;
  padding: 12px;
  background: var(--color-bg-base);
}

.tableShell :global(.ant-table-thead > tr > th) {
  background: var(--color-table-header-bg);
  color: var(--color-table-header-fg);
  border-color: var(--color-border);
}

.tableShell :global(.ant-table-tbody > tr > td) {
  color: var(--color-table-row-fg);
  border-color: var(--color-border);
}

.tableShell :global(.ant-table-tbody > tr:hover > td) {
  background: var(--color-table-row-bg-hover);
}

.tableShell :global(.ant-table-tbody > tr.ant-table-row-selected > td) {
  background: var(--color-table-row-bg-selected);
}

/* === 错误占位 === */
.errorBox {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 48px 0;
  color: var(--color-text-secondary);
}

.errorText {
  color: var(--color-error);
}