/* src/styles/global.css */ @import './variables.css'; *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; } html { height: 100%; width: 100%; } body { height: 100%; width: 100%; margin: 0; padding: 0; overflow: hidden; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; background: var(--bg-primary); color: var(--text-primary); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #app { height: 100%; width: 100%; } ::-webkit-scrollbar { width: 6px; height: 6px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 3px; } /* Element Plus Dark Mode Fixes */ .el-textarea__inner, .el-input__wrapper { background: var(--bg-primary) !important; border-color: var(--border-color) !important; color: var(--text-primary) !important; box-shadow: none !important; } .el-textarea__inner:focus, .el-input__wrapper.is-focus { border-color: var(--accent) !important; } .el-textarea.is-disabled .el-textarea__inner { background: var(--bg-secondary) !important; color: var(--text-secondary) !important; } /* Buttons */ .el-button { --el-button-bg-color: var(--bg-secondary) !important; --el-button-border-color: var(--border-color) !important; --el-button-text-color: var(--text-primary) !important; --el-button-hover-bg-color: var(--bg-hover) !important; --el-button-hover-border-color: var(--accent) !important; --el-button-hover-text-color: var(--accent-light) !important; --el-button-active-bg-color: var(--bg-hover) !important; --el-button-disabled-bg-color: var(--bg-tertiary) !important; --el-button-disabled-text-color: var(--text-muted) !important; } .el-button--primary { --el-button-bg-color: var(--accent) !important; --el-button-border-color: var(--accent) !important; --el-button-text-color: #fff !important; --el-button-hover-bg-color: var(--accent-light) !important; --el-button-hover-border-color: var(--accent-light) !important; } .el-button--success { --el-button-bg-color: #67c23a !important; --el-button-border-color: #67c23a !important; --el-button-text-color: #fff !important; } .el-button--danger { --el-button-bg-color: #f56c6c !important; --el-button-border-color: #f56c6c !important; --el-button-text-color: #fff !important; } /* Select / Dropdown */ .el-select-dropdown { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; } .el-select-dropdown__item { color: var(--text-primary) !important; } .el-select-dropdown__item.hover, .el-select-dropdown__item:hover { background: var(--bg-hover) !important; } .el-select-dropdown__item.selected { color: var(--accent-light) !important; font-weight: 600; } .el-popper.is-light { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; } .el-popper.is-light .el-popper__arrow::before { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; } .el-select__wrapper { background: var(--bg-primary) !important; border-color: var(--border-color) !important; box-shadow: none !important; } .el-select__wrapper:hover { border-color: var(--accent) !important; } .el-select__placeholder { color: var(--text-secondary) !important; } .el-select__selected-item span { color: var(--text-primary) !important; } .el-select__caret { color: var(--text-muted) !important; } /* Table */ .el-table { --el-table-bg-color: var(--bg-primary); --el-table-tr-bg-color: var(--bg-primary); --el-table-header-bg-color: var(--bg-secondary); --el-table-row-hover-bg-color: var(--bg-hover); --el-table-text-color: var(--text-primary); --el-table-header-text-color: var(--text-secondary); --el-table-border-color: var(--border-color); } /* Dialog */ .el-dialog { --el-dialog-bg-color: var(--bg-secondary); --el-dialog-title-font-size: 16px; } .el-dialog__title { color: var(--text-primary) !important; } /* Form */ .el-form-item__label { color: var(--text-secondary) !important; } /* Drawer */ .el-drawer { background: var(--bg-secondary) !important; } .el-drawer__header { color: var(--text-primary) !important; border-bottom: 1px solid var(--border-color); margin-bottom: 0; padding: 16px 20px; } .el-drawer__body { padding: 0; } /* Tabs */ .el-tabs__item { color: var(--text-secondary) !important; } .el-tabs__item.is-active { color: var(--accent-light) !important; } .el-tabs__active-bar { background-color: var(--accent) !important; } /* Tooltip */ .el-tooltip__popper { background: var(--bg-tertiary) !important; color: var(--text-primary) !important; } /* Message */ .el-message { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; } .el-message__content { color: var(--text-primary) !important; } /* Notification */ .el-notification { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; } /* Popover */ .el-popover.el-popper { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; } /* Radio / Checkbox */ .el-radio__input.is-checked .el-radio__inner { background-color: var(--accent) !important; border-color: var(--accent) !important; } .el-checkbox__input.is-checked .el-checkbox__inner { background-color: var(--accent) !important; border-color: var(--accent) !important; } /* Radio Button Group */ .el-radio-group { --el-radio-button-checked-bg-color: var(--accent) !important; --el-radio-button-checked-border-color: var(--accent) !important; --el-radio-button-checked-text-color: #fff !important; } .el-radio-button__inner { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; color: var(--text-primary) !important; } .el-radio-button__original-radio:checked + .el-radio-button__inner { background: var(--accent) !important; border-color: var(--accent) !important; color: #fff !important; box-shadow: -1px 0 0 0 var(--accent) !important; } /* Input Number */ .el-input-number { --el-input-number-bg-color: var(--bg-primary) !important; } .el-input-number .el-input__wrapper { background: var(--bg-primary) !important; border-color: var(--border-color) !important; box-shadow: none !important; } .el-input-number .el-input-number__decrease, .el-input-number .el-input-number__increase { background: var(--bg-secondary) !important; border-color: var(--border-color) !important; color: var(--text-primary) !important; } .el-input-number .el-input-number__decrease:hover, .el-input-number .el-input-number__increase:hover { color: var(--accent-light) !important; } /* Tag */ .el-tag { border-color: var(--border-color) !important; } /* Divider */ .el-divider { border-color: var(--border-color) !important; } /* Card */ .el-card { background: var(--bg-card) !important; border-color: var(--border-color) !important; color: var(--text-primary) !important; }