97 lines
2.9 KiB
TypeScript
97 lines
2.9 KiB
TypeScript
import type { Config } from 'tailwindcss';
|
|
|
|
const config: Config = {
|
|
content: [
|
|
'./src/pages/**/*.{js,ts,jsx,tsx,mdx}',
|
|
'./src/components/**/*.{js,ts,jsx,tsx,mdx}',
|
|
'./src/app/**/*.{js,ts,jsx,tsx,mdx}',
|
|
],
|
|
theme: {
|
|
extend: {
|
|
colors: {
|
|
// 深色系主题 - 灵感来自 Nord/Tokyo Night
|
|
background: {
|
|
DEFAULT: '#0f0f14',
|
|
secondary: '#16161e',
|
|
tertiary: '#1e1e28',
|
|
elevated: '#24242e',
|
|
},
|
|
foreground: {
|
|
DEFAULT: '#e8e8ed',
|
|
muted: '#9898a6',
|
|
subtle: '#6b6b7a',
|
|
},
|
|
primary: {
|
|
DEFAULT: '#7aa2f7',
|
|
hover: '#89b4fa',
|
|
muted: '#3d5a9e',
|
|
},
|
|
accent: {
|
|
DEFAULT: '#bb9af7',
|
|
green: '#9ece6a',
|
|
yellow: '#e0af68',
|
|
red: '#f7768e',
|
|
cyan: '#7dcfff',
|
|
},
|
|
border: {
|
|
DEFAULT: '#2a2a36',
|
|
hover: '#3a3a4a',
|
|
},
|
|
},
|
|
fontFamily: {
|
|
sans: ['Geist', 'system-ui', 'sans-serif'],
|
|
mono: ['JetBrains Mono', 'Fira Code', 'monospace'],
|
|
},
|
|
animation: {
|
|
'fade-in': 'fadeIn 0.5s ease-out',
|
|
'slide-up': 'slideUp 0.5s ease-out',
|
|
'slide-down': 'slideDown 0.3s ease-out',
|
|
'scale-in': 'scaleIn 0.2s ease-out',
|
|
'pulse-slow': 'pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite',
|
|
'shimmer': 'shimmer 2s linear infinite',
|
|
},
|
|
keyframes: {
|
|
fadeIn: {
|
|
'0%': { opacity: '0' },
|
|
'100%': { opacity: '1' },
|
|
},
|
|
slideUp: {
|
|
'0%': { opacity: '0', transform: 'translateY(20px)' },
|
|
'100%': { opacity: '1', transform: 'translateY(0)' },
|
|
},
|
|
slideDown: {
|
|
'0%': { opacity: '0', transform: 'translateY(-10px)' },
|
|
'100%': { opacity: '1', transform: 'translateY(0)' },
|
|
},
|
|
scaleIn: {
|
|
'0%': { opacity: '0', transform: 'scale(0.95)' },
|
|
'100%': { opacity: '1', transform: 'scale(1)' },
|
|
},
|
|
shimmer: {
|
|
'0%': { backgroundPosition: '-200% 0' },
|
|
'100%': { backgroundPosition: '200% 0' },
|
|
},
|
|
},
|
|
backgroundImage: {
|
|
'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
|
|
'gradient-mesh': `
|
|
radial-gradient(at 40% 20%, hsla(228,97%,71%,0.15) 0px, transparent 50%),
|
|
radial-gradient(at 80% 0%, hsla(189,94%,63%,0.1) 0px, transparent 50%),
|
|
radial-gradient(at 0% 50%, hsla(274,87%,73%,0.1) 0px, transparent 50%),
|
|
radial-gradient(at 80% 50%, hsla(185,93%,73%,0.08) 0px, transparent 50%),
|
|
radial-gradient(at 0% 100%, hsla(22,93%,63%,0.08) 0px, transparent 50%)
|
|
`,
|
|
},
|
|
boxShadow: {
|
|
'glow': '0 0 20px rgba(122, 162, 247, 0.3)',
|
|
'glow-lg': '0 0 40px rgba(122, 162, 247, 0.4)',
|
|
'inner-glow': 'inset 0 0 20px rgba(122, 162, 247, 0.1)',
|
|
},
|
|
},
|
|
},
|
|
plugins: [],
|
|
};
|
|
|
|
export default config;
|
|
|