| | |
| | module.exports = { |
| | darkMode: ["class"], |
| | content: [ |
| | "./pages/**/*.{js,ts,jsx,tsx,mdx}", |
| | "./components/**/*.{js,ts,jsx,tsx,mdx}", |
| | "./app/**/*.{js,ts,jsx,tsx,mdx}", |
| | "./templates/**/*.{js,ts,jsx,tsx,mdx}", |
| | "./lib/**/*.{js,ts,jsx,tsx,mdx}", |
| | ], |
| | theme: { |
| | extend: { |
| | colors: { |
| | border: "hsl(var(--border))", |
| | input: "hsl(var(--input))", |
| | ring: "hsl(var(--ring))", |
| | background: "hsl(var(--background))", |
| | foreground: "hsl(var(--foreground))", |
| | primary: { |
| | DEFAULT: "hsl(var(--primary))", |
| | foreground: "hsl(var(--primary-foreground))", |
| | }, |
| | secondary: { |
| | DEFAULT: "hsl(var(--secondary))", |
| | foreground: "hsl(var(--secondary-foreground))", |
| | }, |
| | destructive: { |
| | DEFAULT: "hsl(var(--destructive))", |
| | foreground: "hsl(var(--destructive-foreground))", |
| | }, |
| | muted: { |
| | DEFAULT: "hsl(var(--muted))", |
| | foreground: "hsl(var(--muted-foreground))", |
| | }, |
| | accent: { |
| | DEFAULT: "hsl(var(--accent))", |
| | foreground: "hsl(var(--accent-foreground))", |
| | }, |
| | popover: { |
| | DEFAULT: "hsl(var(--popover))", |
| | foreground: "hsl(var(--popover-foreground))", |
| | }, |
| | card: { |
| | DEFAULT: "hsl(var(--card))", |
| | foreground: "hsl(var(--card-foreground))", |
| | }, |
| | }, |
| | animation: { |
| | 'accordion-down': 'accordion-down 0.2s ease-out', |
| | 'accordion-up': 'accordion-up 0.2s ease-out', |
| | 'gradient': 'gradient 15s ease infinite', |
| | 'float': 'float 6s ease-in-out infinite', |
| | 'pulse-slow': 'pulse 4s cubic-bezier(0.4, 0, 0.6, 1) infinite', |
| | 'shimmer': 'shimmer 2s linear infinite', |
| | 'glow': 'glow 2s ease-in-out infinite alternate', |
| | 'slide-up': 'slide-up 0.3s ease-out', |
| | 'slide-down': 'slide-down 0.3s ease-out', |
| | 'slide-in-from-top': 'slide-in-from-top 0.3s ease-out', |
| | 'slide-in-from-bottom': 'slide-in-from-bottom 0.3s ease-out', |
| | 'slide-in-from-left': 'slide-in-from-left 0.3s ease-out', |
| | 'slide-in-from-right': 'slide-in-from-right 0.3s ease-out', |
| | 'fade-in': 'fade-in 0.5s ease-out', |
| | 'fade-up': 'fade-up 0.5s ease-out', |
| | 'scale-in': 'scale-in 0.2s ease-out', |
| | 'spin-slow': 'spin 3s linear infinite', |
| | 'bounce-slow': 'bounce 2s infinite', |
| | 'ping-slow': 'ping 2s cubic-bezier(0, 0, 0.2, 1) infinite', |
| | 'wiggle': 'wiggle 1s ease-in-out infinite', |
| | 'blob': 'blob 7s infinite', |
| | }, |
| | keyframes: { |
| | 'accordion-down': { |
| | from: { height: '0' }, |
| | to: { height: 'var(--radix-accordion-content-height)' }, |
| | }, |
| | 'accordion-up': { |
| | from: { height: 'var(--radix-accordion-content-height)' }, |
| | to: { height: '0' }, |
| | }, |
| | gradient: { |
| | '0%, 100%': { |
| | 'background-size': '200% 200%', |
| | 'background-position': 'left center' |
| | }, |
| | '50%': { |
| | 'background-size': '200% 200%', |
| | 'background-position': 'right center' |
| | } |
| | }, |
| | float: { |
| | '0%, 100%': { transform: 'translateY(0)' }, |
| | '50%': { transform: 'translateY(-20px)' }, |
| | }, |
| | shimmer: { |
| | from: { backgroundPosition: '0 0' }, |
| | to: { backgroundPosition: '-200% 0' }, |
| | }, |
| | glow: { |
| | from: { boxShadow: '0 0 10px rgba(59, 130, 246, 0.5)' }, |
| | to: { boxShadow: '0 0 20px rgba(59, 130, 246, 0.8), 0 0 30px rgba(59, 130, 246, 0.6)' }, |
| | }, |
| | 'slide-up': { |
| | from: { transform: 'translateY(10px)', opacity: '0' }, |
| | to: { transform: 'translateY(0)', opacity: '1' }, |
| | }, |
| | 'slide-down': { |
| | from: { transform: 'translateY(-10px)', opacity: '0' }, |
| | to: { transform: 'translateY(0)', opacity: '1' }, |
| | }, |
| | 'fade-in': { |
| | from: { opacity: '0' }, |
| | to: { opacity: '1' }, |
| | }, |
| | 'scale-in': { |
| | from: { transform: 'scale(0.95)', opacity: '0' }, |
| | to: { transform: 'scale(1)', opacity: '1' }, |
| | }, |
| | 'slide-in-from-top': { |
| | from: { transform: 'translateY(-100%)', opacity: '0' }, |
| | to: { transform: 'translateY(0)', opacity: '1' }, |
| | }, |
| | 'slide-in-from-bottom': { |
| | from: { transform: 'translateY(100%)', opacity: '0' }, |
| | to: { transform: 'translateY(0)', opacity: '1' }, |
| | }, |
| | 'slide-in-from-left': { |
| | from: { transform: 'translateX(-100%)', opacity: '0' }, |
| | to: { transform: 'translateX(0)', opacity: '1' }, |
| | }, |
| | 'slide-in-from-right': { |
| | from: { transform: 'translateX(100%)', opacity: '0' }, |
| | to: { transform: 'translateX(0)', opacity: '1' }, |
| | }, |
| | 'fade-up': { |
| | from: { opacity: '0', transform: 'translateY(10px)' }, |
| | to: { opacity: '1', transform: 'translateY(0)' }, |
| | }, |
| | 'wiggle': { |
| | '0%, 100%': { transform: 'rotate(-3deg)' }, |
| | '50%': { transform: 'rotate(3deg)' }, |
| | }, |
| | 'blob': { |
| | '0%': { transform: 'translate(0px, 0px) scale(1)' }, |
| | '33%': { transform: 'translate(30px, -50px) scale(1.1)' }, |
| | '66%': { transform: 'translate(-20px, 20px) scale(0.9)' }, |
| | '100%': { transform: 'translate(0px, 0px) scale(1)' }, |
| | }, |
| | }, |
| | backgroundImage: { |
| | 'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))', |
| | 'gradient-conic': 'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))', |
| | 'grid-pattern': `url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='32' height='32' fill='none' stroke='rgb(203 213 225 / 0.1)'%3e%3cpath d='M0 .5H31.5V32'/%3e%3c/svg%3e")`, |
| | }, |
| | borderRadius: { |
| | lg: 'var(--radius)', |
| | md: 'calc(var(--radius) - 2px)', |
| | sm: 'calc(var(--radius) - 4px)', |
| | }, |
| | fontFamily: { |
| | sans: ['var(--font-sans)', 'system-ui', 'sans-serif'], |
| | mono: ['var(--font-mono)', 'monospace'], |
| | }, |
| | fontSize: { |
| | '2xs': ['0.625rem', { lineHeight: '0.875rem' }], |
| | '3xl': ['1.875rem', { lineHeight: '2.25rem' }], |
| | '4xl': ['2.25rem', { lineHeight: '2.5rem' }], |
| | '5xl': ['3rem', { lineHeight: '1' }], |
| | '6xl': ['3.75rem', { lineHeight: '1' }], |
| | '7xl': ['4.5rem', { lineHeight: '1' }], |
| | '8xl': ['6rem', { lineHeight: '1' }], |
| | '9xl': ['8rem', { lineHeight: '1' }], |
| | }, |
| | screens: { |
| | 'xs': '475px', |
| | '3xl': '1920px', |
| | }, |
| | }, |
| | }, |
| | plugins: [require('tailwindcss-animate')], |
| | } |