/* ══════════════════════════════════════════════ AirLabs Project · 飞书风格全局主题 ══════════════════════════════════════════════ */ :root { /* 主色 */ --primary: #3370FF; --primary-light: #E8F0FE; --primary-hover: #2860E1; /* 功能色 */ --success: #34C759; --warning: #FF9500; --danger: #FF3B30; --info: #8E8E93; /* 文字 */ --text-primary: #1F2329; --text-regular: #3B3F46; --text-secondary: #8F959E; --text-placeholder: #BFC3C9; /* 背景 */ --bg-page: #F5F6F7; --bg-card: #FFFFFF; --bg-sidebar: #FFFFFF; --bg-hover: #F0F1F2; --bg-active: #E8F0FE; /* 边框 */ --border-color: #E5E6EB; --border-light: #F0F1F2; /* 阴影 */ --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04); --shadow-md: 0 2px 8px rgba(0, 0, 0, 0.06); --shadow-lg: 0 4px 16px rgba(0, 0, 0, 0.08); /* 圆角 */ --radius-sm: 6px; --radius-md: 8px; --radius-lg: 12px; /* 字体 */ --font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', sans-serif; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: var(--font-family); font-size: 14px; color: var(--text-primary); background: var(--bg-page); -webkit-font-smoothing: antialiased; } /* ── Element Plus 主题覆盖 ── */ /* 按钮 */ .el-button--primary { --el-button-bg-color: var(--primary) !important; --el-button-border-color: var(--primary) !important; --el-button-hover-bg-color: var(--primary-hover) !important; --el-button-hover-border-color: var(--primary-hover) !important; border-radius: var(--radius-sm) !important; } .el-button { border-radius: var(--radius-sm) !important; font-weight: 500 !important; } /* 卡片 */ .el-card { border: 1px solid var(--border-color) !important; border-radius: var(--radius-md) !important; box-shadow: var(--shadow-sm) !important; } .el-card__header { border-bottom: 1px solid var(--border-light) !important; padding: 16px 20px !important; font-size: 14px !important; } .el-card__body { padding: 20px !important; } /* 表格 */ .el-table { --el-table-border-color: var(--border-light) !important; --el-table-header-bg-color: #FAFBFC !important; --el-table-row-hover-bg-color: #F7F8FA !important; border-radius: var(--radius-md) !important; overflow: hidden; font-size: 13px !important; } .el-table th.el-table__cell { font-weight: 600 !important; color: var(--text-secondary) !important; font-size: 12px !important; text-transform: uppercase; letter-spacing: 0.5px; } /* 标签 */ .el-tag { border-radius: 4px !important; font-size: 12px !important; border: none !important; } .el-tag--success { background: #E8F8EE !important; color: #1A9E3F !important; } .el-tag--warning { background: #FFF3E0 !important; color: #D47E00 !important; } .el-tag--danger { background: #FFE8E7 !important; color: #D4380D !important; } .el-tag--info { background: #F0F1F2 !important; color: #646A73 !important; } .el-tag--primary, .el-tag:not([class*="--"]) { background: var(--primary-light) !important; color: var(--primary) !important; } /* 输入框 */ .el-input__wrapper { border-radius: var(--radius-sm) !important; box-shadow: 0 0 0 1px var(--border-color) inset !important; } .el-input__wrapper:hover { box-shadow: 0 0 0 1px #C0C4CC inset !important; } .el-input__wrapper.is-focus { box-shadow: 0 0 0 1px var(--primary) inset !important; } /* 对话框 */ .el-dialog { border-radius: var(--radius-lg) !important; } .el-dialog__header { border-bottom: 1px solid var(--border-light); margin-right: 0 !important; padding: 16px 24px !important; } .el-dialog__body { padding: 24px !important; } .el-dialog__footer { border-top: 1px solid var(--border-light); padding: 12px 24px !important; } /* 进度条 */ .el-progress-bar__outer { border-radius: 4px !important; background: #F0F1F2 !important; } .el-progress-bar__inner { border-radius: 4px !important; } /* 选项卡 */ .el-tabs__item { font-weight: 500 !important; } .el-tabs__item.is-active { color: var(--primary) !important; } .el-tabs__active-bar { background-color: var(--primary) !important; } /* 描述列表 */ .el-descriptions__label { color: var(--text-secondary) !important; font-weight: 500 !important; }