@import './variables.css';
*, *::before, *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
font-family: var(--font-family-base);
font-size: var(--font-size-base);
font-weight: var(--font-weight-regular);
color: var(--color-text-main);
background-color: var(--color-background);
line-height: 1.5;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6 {
font-weight: var(--font-weight-semibold);
line-height: 1.25;
color: var(--color-primary);
margin-bottom: var(--space-4);
}
a {
color: var(--color-accent);
text-decoration: none;
transition: color var(--transition-fast);
}
a:hover {
color: var(--color-accent-hover);
}
/* Utilities */
.flex { display: flex; }
.flex-col { flex-direction: column; }
.items-center { align-items: center; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.gap-2 { gap: var(--space-2); }
.gap-4 { gap: var(--space-4); }
.w-full { width: 100%; }
.h-full { height: 100%; }
.text-sm { font-size: var(--font-size-sm); }
.text-muted { color: var(--color-text-secondary); }
.card {
background-color: var(--color-surface);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-base);
padding: var(--space-6);
}
/* Element Plus Overrides */
:root {
/* Element Plus 主题变量覆盖 */
--el-color-primary: #3b82f6;
--el-color-primary-light-3: #60a5fa;
--el-color-primary-light-5: #93c5fd;
--el-color-primary-light-7: #bfdbfe;
--el-color-primary-light-9: #dbeafe;
--el-color-primary-dark-2: #2563eb;
--el-border-radius-base: 8px;
--el-border-radius-small: 6px;
--el-border-radius-round: 20px;
--el-box-shadow-lighter: 0 2px 8px rgba(0, 0, 0, 0.06);
--el-box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
--el-box-shadow-dark: 0 8px 24px rgba(0, 0, 0, 0.12);
--el-font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
--el-color-success: var(--color-success);
--el-color-warning: var(--color-warning);
--el-color-danger: var(--color-danger);
--el-color-info: var(--color-info);
}