/** @type {import('tailwindcss').Config} */ export default { content: [ "./index.html", "./src/**/*.{vue,js,ts,jsx,tsx}", ], darkMode: 'class', theme: { extend: { fontFamily: { sans: ['Inter', 'system-ui', 'sans-serif'], mono: ['JetBrains Mono', 'monospace'], }, // Extended screens for better responsive control screens: { 'xs': '475px', '3xl': '1920px', '4xl': '2560px', }, // Extended max-width for ultrawide support maxWidth: { '8xl': '88rem', '9xl': '96rem', }, // Responsive font sizes fontSize: { 'display': ['clamp(2.5rem, 8vw, 6rem)', { lineHeight: '1.1', letterSpacing: '-0.02em' }], 'display-sm': ['clamp(2rem, 5vw, 3.5rem)', { lineHeight: '1.15', letterSpacing: '-0.02em' }], 'title': ['clamp(1.5rem, 4vw, 2.5rem)', { lineHeight: '1.2', letterSpacing: '-0.01em' }], 'body-lg': ['clamp(1rem, 1.5vw, 1.25rem)', { lineHeight: '1.7' }], 'body': ['clamp(0.875rem, 1.2vw, 1rem)', { lineHeight: '1.6' }], }, animation: { 'fade-in': 'fadeIn 0.6s ease-out forwards', 'fade-in-up': 'fadeInUp 0.6s ease-out forwards', 'fade-in-down': 'fadeInDown 0.6s ease-out forwards', 'scale-in': 'scaleIn 0.5s ease-out forwards', 'slide-in-right': 'slideInRight 0.5s ease-out forwards', 'slide-in-left': 'slideInLeft 0.5s ease-out forwards', 'float': 'float 6s ease-in-out infinite', 'float-delayed': 'float 6s ease-in-out infinite 3s', 'pulse-slow': 'pulseSlow 4s ease-in-out infinite', 'spin-slow': 'spin 8s linear infinite', 'bounce-subtle': 'bounceSubtle 2s ease-in-out infinite', 'gradient-shift': 'gradientShift 8s ease infinite', 'shimmer': 'shimmer 2s infinite', }, keyframes: { fadeIn: { '0%': { opacity: '0' }, '100%': { opacity: '1' }, }, fadeInUp: { '0%': { opacity: '0', transform: 'translateY(30px)' }, '100%': { opacity: '1', transform: 'translateY(0)' }, }, fadeInDown: { '0%': { opacity: '0', transform: 'translateY(-20px)' }, '100%': { opacity: '1', transform: 'translateY(0)' }, }, scaleIn: { '0%': { opacity: '0', transform: 'scale(0.95)' }, '100%': { opacity: '1', transform: 'scale(1)' }, }, slideInRight: { '0%': { opacity: '0', transform: 'translateX(30px)' }, '100%': { opacity: '1', transform: 'translateX(0)' }, }, slideInLeft: { '0%': { opacity: '0', transform: 'translateX(-30px)' }, '100%': { opacity: '1', transform: 'translateX(0)' }, }, float: { '0%, 100%': { transform: 'translateY(0px) rotate(0deg)' }, '33%': { transform: 'translateY(-15px) rotate(1deg)' }, '66%': { transform: 'translateY(-8px) rotate(-1deg)' }, }, pulseSlow: { '0%, 100%': { opacity: '1' }, '50%': { opacity: '0.7' }, }, bounceSubtle: { '0%, 100%': { transform: 'translateY(0)' }, '50%': { transform: 'translateY(-5px)' }, }, gradientShift: { '0%, 100%': { backgroundPosition: '0% 50%' }, '50%': { backgroundPosition: '100% 50%' }, }, shimmer: { '0%': { backgroundPosition: '-200% 0' }, '100%': { backgroundPosition: '200% 0' }, }, }, boxShadow: { 'glow-blue': '0 0 20px rgba(59, 130, 246, 0.3), 0 0 40px rgba(59, 130, 246, 0.1)', 'glow-purple': '0 0 20px rgba(139, 92, 246, 0.3), 0 0 40px rgba(139, 92, 246, 0.1)', 'glow-cyan': '0 0 20px rgba(6, 182, 212, 0.3), 0 0 40px rgba(6, 182, 212, 0.1)', 'modern': '0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 8px 10px -6px rgba(0, 0, 0, 0.05)', 'modern-hover': '0 25px 50px -12px rgba(0, 0, 0, 0.15)', }, transitionTimingFunction: { 'bounce-out': 'cubic-bezier(0.34, 1.56, 0.64, 1)', }, spacing: { '18': '4.5rem', '22': '5.5rem', }, }, }, plugins: [], }