/* ===== Element Plus Global Overrides ===== Single place for all Element Plus style normalization. Eliminates the need for scattered :deep() overrides in components. */ /* ---- Buttons ---- */ .el-button { border-radius: var(--radius-md); font-weight: 500; } .el-button--primary { --el-button-bg-color: var(--color-primary); --el-button-border-color: var(--color-primary); --el-button-hover-bg-color: var(--color-primary-dark); --el-button-hover-border-color: var(--color-primary-dark); } /* ---- Dialogs ---- */ .el-dialog { border-radius: var(--radius-xl); } .el-message-box { border-radius: var(--radius-xl); } /* ---- Cards ---- */ .el-card { border-radius: var(--radius-lg); border: 1px solid var(--border-default); background: var(--bg-surface); box-shadow: var(--shadow-md); } /* ---- Tables ---- */ .el-table { border-radius: var(--radius-lg); overflow: hidden; } .el-table th.el-table__cell { background: var(--bg-subtle); color: var(--text-secondary); font-size: var(--text-sm); font-weight: 600; } /* ---- Tags ---- */ .el-tag { border-radius: var(--radius-full); font-weight: 600; } /* ---- Menus ---- */ .el-menu { border-right: none; background: transparent; } /* ---- Inputs & Selects ---- */ .el-input .el-input__wrapper, .el-select .el-select__wrapper, .el-date-editor.el-input__wrapper { border-radius: var(--radius-md); box-shadow: none; border: 1px solid var(--border-default); } .el-date-editor.el-input__wrapper { border: 0; box-shadow: 0 0 0 1px var(--border-default) inset; } .el-input .el-input__wrapper:hover, .el-select .el-select__wrapper:hover, .el-date-editor.el-input__wrapper:hover { border-color: var(--border-hover); } .el-date-editor.el-input__wrapper:hover { box-shadow: 0 0 0 1px var(--border-hover) inset; } .el-input.is-focus .el-input__wrapper, .el-select.is-focus .el-select__wrapper, .el-date-editor.el-input__wrapper.is-active { border-color: var(--color-primary); box-shadow: 0 0 0 1px var(--color-primary) inset; } /* ---- Pagination ---- */ .el-pagination { justify-content: center; margin-top: var(--space-4); } /* ---- Tabs ---- */ .el-tabs__header { margin-bottom: var(--space-4); } /* ---- Switch ---- */ .el-switch.is-checked .el-switch__core { background-color: var(--color-primary); border-color: var(--color-primary); } /* ---- Skeleton ---- */ .el-skeleton { --el-skeleton-color: var(--bg-subtle); } /* ---- Empty ---- */ .el-empty__description { color: var(--text-muted); } /* ---- 通用工具类 ---- */ .mt-4 { margin-top: var(--space-4); } .mb-4 { margin-bottom: var(--space-4); } .w-full { width: 100%; } .text-muted-xs { font-size: var(--text-xs); color: var(--text-muted); } .fw-600 { font-weight: 600; } .text-danger { color: var(--color-danger); } .ml-2 { margin-left: var(--space-2); } .pagination-center { margin-top: var(--space-4); display: flex; justify-content: center; } .filter-col-160 { width: 160px; }