/* ============================================================
   Element Plus 主题桥接：把 EP 的 CSS 变量映射到设计令牌，
   深浅色自动跟随 tokens.css。不要在这里写具体组件业务样式。
   ============================================================ */
:root {
  --el-color-primary: var(--c-brand);
  --el-color-primary-light-3: color-mix(in srgb, var(--c-brand) 70%, var(--c-surface));
  --el-color-primary-light-5: color-mix(in srgb, var(--c-brand) 50%, var(--c-surface));
  --el-color-primary-light-7: color-mix(in srgb, var(--c-brand) 30%, var(--c-surface));
  --el-color-primary-light-8: color-mix(in srgb, var(--c-brand) 20%, var(--c-surface));
  --el-color-primary-light-9: var(--c-brand-soft);
  --el-color-primary-dark-2: var(--c-brand-hover);

  --el-color-success: var(--c-ok);
  --el-color-success-light-3: color-mix(in srgb, var(--c-ok) 70%, var(--c-surface));
  --el-color-success-light-5: color-mix(in srgb, var(--c-ok) 50%, var(--c-surface));
  --el-color-success-light-7: color-mix(in srgb, var(--c-ok) 30%, var(--c-surface));
  --el-color-success-light-8: color-mix(in srgb, var(--c-ok) 20%, var(--c-surface));
  --el-color-success-light-9: var(--c-ok-soft);
  --el-color-success-dark-2: var(--c-ok-ink);

  --el-color-warning: var(--c-warn);
  --el-color-warning-light-3: color-mix(in srgb, var(--c-warn) 70%, var(--c-surface));
  --el-color-warning-light-5: color-mix(in srgb, var(--c-warn) 50%, var(--c-surface));
  --el-color-warning-light-7: color-mix(in srgb, var(--c-warn) 30%, var(--c-surface));
  --el-color-warning-light-8: color-mix(in srgb, var(--c-warn) 20%, var(--c-surface));
  --el-color-warning-light-9: var(--c-warn-soft);
  --el-color-warning-dark-2: var(--c-warn-ink);

  --el-color-danger: var(--c-danger);
  --el-color-danger-light-3: color-mix(in srgb, var(--c-danger) 70%, var(--c-surface));
  --el-color-danger-light-5: color-mix(in srgb, var(--c-danger) 50%, var(--c-surface));
  --el-color-danger-light-7: color-mix(in srgb, var(--c-danger) 30%, var(--c-surface));
  --el-color-danger-light-8: color-mix(in srgb, var(--c-danger) 20%, var(--c-surface));
  --el-color-danger-light-9: var(--c-danger-soft);
  --el-color-danger-dark-2: var(--c-danger-ink);
  --el-color-error: var(--c-danger);

  --el-color-info: var(--c-text-3);
  --el-color-info-light-3: color-mix(in srgb, var(--c-text-3) 70%, var(--c-surface));
  --el-color-info-light-5: color-mix(in srgb, var(--c-text-3) 50%, var(--c-surface));
  --el-color-info-light-7: color-mix(in srgb, var(--c-text-3) 30%, var(--c-surface));
  --el-color-info-light-8: color-mix(in srgb, var(--c-text-3) 20%, var(--c-surface));
  --el-color-info-light-9: var(--c-muted-soft);

  --el-bg-color: var(--c-surface);
  --el-bg-color-page: var(--c-bg);
  --el-bg-color-overlay: var(--c-surface);
  --el-fill-color-blank: var(--c-surface);
  --el-fill-color: var(--c-surface-3);
  --el-fill-color-light: var(--c-surface-2);
  --el-fill-color-lighter: var(--c-surface-2);
  --el-fill-color-extra-light: var(--c-surface-2);
  --el-fill-color-dark: var(--c-border);
  --el-fill-color-darker: var(--c-border-strong);

  --el-text-color-primary: var(--c-text);
  --el-text-color-regular: var(--c-text-2);
  --el-text-color-secondary: var(--c-text-3);
  --el-text-color-placeholder: var(--c-text-4);
  --el-text-color-disabled: var(--c-text-4);

  --el-border-color: var(--c-border-strong);
  --el-border-color-light: var(--c-border);
  --el-border-color-lighter: var(--c-border);
  --el-border-color-extra-light: var(--c-border);
  --el-border-color-dark: var(--c-border-strong);
  --el-border-color-darker: var(--c-text-4);

  --el-mask-color: rgba(15, 17, 21, .45);
  --el-mask-color-extra-light: rgba(15, 17, 21, .15);
  --el-box-shadow: var(--shadow-pop);
  --el-box-shadow-light: var(--shadow-2);
  --el-box-shadow-lighter: var(--shadow-1);
  --el-box-shadow-dark: var(--shadow-pop);

  --el-border-radius-base: var(--r-md);
  --el-border-radius-small: var(--r-sm);
  --el-border-radius-round: var(--r-pill);
  --el-font-family: var(--font-sans);
  --el-font-size-base: var(--fs-base);
  --el-component-size: 32px;
  --el-component-size-small: 26px;
  --el-component-size-large: 38px;
}

/* 表格：紧凑、表头弱化、悬停高亮 */
.el-table {
  --el-table-border-color: var(--c-border);
  --el-table-header-bg-color: var(--c-surface-2);
  --el-table-header-text-color: var(--c-text-3);
  --el-table-row-hover-bg-color: var(--c-surface-2);
  --el-table-tr-bg-color: var(--c-surface);
  --el-table-bg-color: var(--c-surface);
  --el-table-expanded-cell-bg-color: var(--c-surface-2);
  --el-table-current-row-bg-color: var(--c-brand-soft);
  font-size: var(--fs-md);
}
.el-table th.el-table__cell { font-weight: 500; font-size: var(--fs-sm); }
.el-table .el-table__cell { padding: 9px 0; }
.el-table--small .el-table__cell { padding: 6px 0; }
.el-table .cell { line-height: 1.45; }

/* 按钮：去掉粗重描边，主按钮更扁平 */
.el-button { font-weight: 500; }
.el-button--default { --el-button-border-color: var(--c-border-strong); --el-button-hover-bg-color: var(--c-surface-3); --el-button-hover-text-color: var(--c-text); --el-button-hover-border-color: var(--c-border-strong); }

/* 弹层/抽屉/对话框 */
.el-dialog { --el-dialog-border-radius: var(--r-lg); --el-dialog-padding-primary: 20px; }
.el-dialog__title { font-weight: 600; font-size: var(--fs-lg); }
.el-drawer { --el-drawer-padding-primary: 20px; }
.el-drawer__header { margin-bottom: 0; padding-bottom: 12px; border-bottom: 1px solid var(--c-border); }
.el-drawer__title { font-weight: 600; color: var(--c-text); }

/* 标签 */
.el-tag { --el-tag-border-radius: var(--r-sm); font-weight: 500; }

/* 表单 */
.el-form-item__label { color: var(--c-text-2); font-weight: 500; }
.el-input__wrapper, .el-select__wrapper, .el-textarea__inner { box-shadow: 0 0 0 1px var(--c-border-strong) inset; }

/* 消息框在暗色下的底色 */
.el-message { --el-message-bg-color: var(--c-surface); --el-message-border-color: var(--c-border); }
