← back to Wine Finder Next

tailwind.config.ts

126 lines

import type { Config } from 'tailwindcss'

const config: Config = {
  content: [
    './pages/**/*.{js,ts,jsx,tsx,mdx}',
    './components/**/*.{js,ts,jsx,tsx,mdx}',
    './app/**/*.{js,ts,jsx,tsx,mdx}',
  ],
  theme: {
    extend: {
      colors: {
        // Wine-inspired color palette
        wine: {
          50: '#fef2f4',
          100: '#fde6e9',
          200: '#fccdd6',
          300: '#f9a8b7',
          400: '#f47792',
          500: '#ea4c6d',
          600: '#d6315a',
          700: '#b3204a',
          800: '#961d43',
          900: '#7f1c3e',
          950: '#460a1e',
        },
        burgundy: {
          50: '#fef2f3',
          100: '#fde6e7',
          200: '#fad0d4',
          300: '#f6aab3',
          400: '#f0788a',
          500: '#e44d67',
          600: '#d0294e',
          700: '#af1d40',
          800: '#921b3c',
          900: '#7c1a37',
          950: '#450a1a',
        },
        gold: {
          50: '#fefbec',
          100: '#fbf3ca',
          200: '#f8e690',
          300: '#f4d556',
          400: '#f0c32e',
          500: '#d4af37',
          600: '#c18b1a',
          700: '#9c6617',
          800: '#814f18',
          900: '#6e4119',
          950: '#40220a',
        },
      },
      fontFamily: {
        sans: [
          '-apple-system',
          'BlinkMacSystemFont',
          'Segoe UI',
          'Roboto',
          'Helvetica Neue',
          'Arial',
          'sans-serif',
        ],
        display: [
          'Georgia',
          'Cambria',
          'Times New Roman',
          'serif',
        ],
      },
      spacing: {
        '18': '4.5rem',
        '88': '22rem',
        '128': '32rem',
      },
      borderRadius: {
        '4xl': '2rem',
      },
      boxShadow: {
        'wine': '0 10px 25px -5px rgba(139, 0, 54, 0.1), 0 8px 10px -6px rgba(139, 0, 54, 0.1)',
        'wine-lg': '0 20px 40px -10px rgba(139, 0, 54, 0.15), 0 12px 20px -8px rgba(139, 0, 54, 0.1)',
        'gold': '0 10px 25px -5px rgba(212, 175, 55, 0.2), 0 8px 10px -6px rgba(212, 175, 55, 0.15)',
      },
      animation: {
        'fade-in': 'fadeIn 0.5s ease-in-out',
        'slide-up': 'slideUp 0.4s ease-out',
        'slide-down': 'slideDown 0.4s ease-out',
        'scale-in': 'scaleIn 0.3s ease-out',
        'bounce-subtle': 'bounceSubtle 2s infinite',
        'shimmer': 'shimmer 2s linear infinite',
      },
      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' },
        },
        scaleIn: {
          '0%': { transform: 'scale(0.9)', opacity: '0' },
          '100%': { transform: 'scale(1)', opacity: '1' },
        },
        bounceSubtle: {
          '0%, 100%': { transform: 'translateY(0)' },
          '50%': { transform: 'translateY(-5px)' },
        },
        shimmer: {
          '0%': { backgroundPosition: '-1000px 0' },
          '100%': { backgroundPosition: '1000px 0' },
        },
      },
      backdropBlur: {
        xs: '2px',
      },
    },
  },
  plugins: [],
}

export default config