import defaultTheme from 'tailwindcss/defaultTheme';

/** @type {import('tailwindcss').Config} */
export default {
  content: ['./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}'],
  darkMode: 'class',
  theme: {
    extend: {
      colors: {
        // Primary — albastru profund
        primary: {
          50:  '#EFF6FF',
          100: '#DBEAFE',
          200: '#BFDBFE',
          300: '#93C5FD',
          400: '#60A5FA',
          500: '#3B82F6',
          600: '#2563EB',  // main interactive color
          700: '#1D4ED8',
          800: '#1E40AF',
          900: '#1E3A5F',  // hero, deep backgrounds
          950: '#172554',
        },
        // Secondary — amber cald
        secondary: {
          50:  '#FFFBEB',
          100: '#FEF3C7',
          200: '#FDE68A',
          300: '#FCD34D',
          400: '#FBBF24',
          500: '#F59E0B',  // main accent
          600: '#D97706',
          700: '#B45309',
          800: '#92400E',
          900: '#78350F',
          950: '#451A03',
        },
        // Neutral — slate cu warmth
        neutral: {
          50:  '#F8FAFC',
          100: '#F1F5F9',
          200: '#E2E8F0',
          300: '#CBD5E1',
          400: '#94A3B8',
          500: '#64748B',
          600: '#475569',
          700: '#334155',
          800: '#1E293B',
          900: '#0F172A',
          950: '#020617',
        },
        // Semantic
        success:  '#10B981',
        warning:  '#F59E0B',
        error:    '#EF4444',
        info:     '#3B82F6',
        // Page background
        page:     '#FAFBFC',
      },
      fontFamily: {
        heading: ['"Plus Jakarta Sans"', ...defaultTheme.fontFamily.sans],
        body:    ['Inter', ...defaultTheme.fontFamily.sans],
        mono:    ['"JetBrains Mono"', ...defaultTheme.fontFamily.mono],
      },
      fontSize: {
        'display': ['clamp(2.25rem, 5vw, 3.75rem)', { lineHeight: '1.1', letterSpacing: '-0.025em', fontWeight: '800' }],
        'h1':      ['clamp(1.875rem, 4vw, 3rem)',    { lineHeight: '1.15', letterSpacing: '-0.02em', fontWeight: '700' }],
        'h2':      ['clamp(1.5rem, 3vw, 2.25rem)',   { lineHeight: '1.2', letterSpacing: '-0.015em', fontWeight: '700' }],
        'h3':      ['clamp(1.25rem, 2.5vw, 1.5rem)', { lineHeight: '1.3', fontWeight: '600' }],
        'body-lg': ['clamp(1.125rem, 1.5vw, 1.25rem)', { lineHeight: '1.7', fontWeight: '400' }],
      },
      spacing: {
        '18': '4.5rem',
        '88': '22rem',
        '128': '32rem',
      },
      maxWidth: {
        'content': '72rem',
        'narrow':  '42rem',
      },
      borderRadius: {
        '4xl': '2rem',
      },
      boxShadow: {
        'card':        '0 1px 3px 0 rgba(15, 23, 42, 0.04), 0 1px 2px -1px rgba(15, 23, 42, 0.04)',
        'card-hover':  '0 12px 24px -8px rgba(15, 23, 42, 0.12)',
        'card-active': '0 0 0 2px rgba(37, 99, 235, 0.3)',
        'hero':        '0 24px 48px -12px rgba(30, 58, 95, 0.25)',
      },
      backgroundImage: {
        'gradient-hero':   'linear-gradient(135deg, #1E3A5F 0%, #2563EB 50%, #3B82F6 100%)',
        'gradient-warm':   'linear-gradient(135deg, #F59E0B 0%, #F97316 100%)',
        'gradient-dark':   'linear-gradient(180deg, #0F172A 0%, #1E293B 100%)',
        'gradient-subtle': 'linear-gradient(180deg, #F8FAFC 0%, #FFFFFF 100%)',
      },
      animation: {
        'fade-in-up': 'fadeInUp 0.5s ease-out forwards',
        'fade-in':    'fadeIn 0.5s ease-out forwards',
      },
      keyframes: {
        fadeInUp: {
          '0%':   { opacity: '0', transform: 'translateY(20px)' },
          '100%': { opacity: '1', transform: 'translateY(0)' },
        },
        fadeIn: {
          '0%':   { opacity: '0' },
          '100%': { opacity: '1' },
        },
      },
    },
  },
  plugins: [
    require('@tailwindcss/typography'),
  ],
};
