UserDetail.module.css 2.62 KB
/* REQ-USR-001 / REQ-USR-002: 用户单据页 scoped 样式。
   语义色只用 var(--color-*);工具栏深色底为页面局部装饰(非语义 token,D10,与 FE-02/FE-03 一致)。 */

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

/* === 工具栏:深色底为页面局部装饰(D10) === */
.toolbar {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  background: #2c2f36;
}

.toolbarSpacer {
  flex: 1 1 auto;
}

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

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

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

/* === 表单网格:3 列白底 === */
.formGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 16px;
  padding: 16px 12px;
  background: var(--color-form-bg-edit);
  border-bottom: 1px solid var(--color-border);
  color: var(--color-form-fg);
}

.readonlyField {
  display: flex;
  align-items: center;
  min-height: 32px;
  padding: 0 11px;
  background: var(--color-form-bg-readonly);
  border: 1px solid var(--color-border);
  border-radius: 6px;
  color: var(--color-form-fg);
}

.formGrid :global(.ant-form-item-label > label) {
  color: var(--color-text);
}

/* === 权限页签条 === */
.permTabs {
  background: var(--color-form-bg-edit);
  border-bottom: 1px solid var(--color-border);
}

.permTabs :global(.ant-tabs-tab) {
  color: var(--color-text);
}

.permTabs :global(.ant-tabs-tab-disabled) {
  color: var(--color-text-secondary);
}

.permTabs :global(.ant-tabs-ink-bar) {
  background: var(--color-primary);
}

/* === 权限分类勾选列表 === */
.permList {
  flex: 1 1 auto;
  overflow: auto;
  background: var(--color-form-bg-edit);
}

.permHead {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: var(--color-table-header-bg);
  color: var(--color-table-header-fg);
  border-bottom: 1px solid var(--color-border);
}

.permHeadSort {
  margin-left: auto;
  color: var(--color-text-secondary);
}

.permRow {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  color: var(--color-text);
  border-bottom: 1px solid var(--color-border);
}

.permRow:hover {
  background: var(--color-table-row-bg-hover);
}

.permEmpty {
  padding: 24px 12px;
  color: var(--color-text-secondary);
  text-align: center;
}

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

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