/** @type {import('tailwindcss').Config} */ module.exports = { content: [ './src/**/*.{astro,html,js,jsx,md,mdx,ts,tsx}', ], theme: { extend: { colors: { primary: { 50: '#eff6ff', 100: '#dbeafe', 200: '#bfdbfe', 300: '#93c5fd', 400: '#60a5fa', 500: '#3b82f6', 600: '#2563eb', 700: '#1d4ed8', 800: '#1e40af', 900: '#1e3a8a', }, slate: { 850: '#1e293b', 900: '#0f172a', 950: '#020617', } }, fontFamily: { sans: ['Inter', 'system-ui', 'sans-serif'], mono: ['JetBrains Mono', 'monospace'], }, typography: (theme) => ({ DEFAULT: { css: { color: theme('colors.slate.800'), a: { color: theme('colors.primary.600'), '&:hover': { color: theme('colors.primary.700'), }, }, }, }, }), animation: { 'fade-in': 'fadeIn 0.5s ease-in-out', 'slide-up': 'slideUp 0.6s ease-out', 'slide-down': 'slideDown 0.6s ease-out', }, keyframes: { fadeIn: { '0%': { opacity: '0' }, '100%': { opacity: '1' }, }, slideUp: { '0%': { transform: 'translateY(20px)', opacity: '0' }, '100%': { transform: 'translateY(0)', opacity: '1' }, }, slideDown: { '0%': { transform: 'translateY(-20px)', opacity: '0' }, '100%': { transform: 'translateY(0)', opacity: '1' }, }, }, }, }, plugins: [ require('@tailwindcss/typography'), ], }