@tailwind base; @tailwind components; @tailwind utilities; :root { --color-bg: #ffffff; --color-bg-secondary: #f9fafb; --color-text: #111827; --color-text-secondary: #6b7280; --color-border: #e5e7eb; } .dark { --color-bg: #111827; --color-bg-secondary: #1f2937; --color-text: #f9fafb; --color-text-secondary: #9ca3af; --color-border: #374151; } * { box-sizing: border-box; } body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background-color: var(--color-bg); color: var(--color-text); } /* 自定义滚动条 */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: var(--color-bg-secondary); } ::-webkit-scrollbar-thumb { background: var(--color-border); border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: var(--color-text-secondary); } /* 过渡动画 */ .page-transition-enter { opacity: 0; transform: translateY(10px); } .page-transition-enter-active { opacity: 1; transform: translateY(0); transition: opacity 200ms ease-out, transform 200ms ease-out; } .page-transition-exit { opacity: 1; } .page-transition-exit-active { opacity: 0; transition: opacity 150ms ease-in; }