// /media/hf/data/projects/Dawinder/transport/tailwind.config.ts
import type { Config } from "tailwindcss"

const config = {
	darkMode: ["class"],
	content: [
		'./pages/**/*.{ts,tsx}',
		'./components/**/*.{ts,tsx}',
		'./app/**/*.{ts,tsx}',
		'./src/**/*.{ts,tsx}',
	],
	prefix: "",
	theme: {
		container: {
			center: true,
			padding: '2rem',
			screens: {
				'2xl': '1400px'
			}
		},
		extend: {
			colors: {
				background: 'var(--background)',
				surface: 'var(--surface)',
				border: 'var(--border)',
				primary: {
					DEFAULT: 'var(--primary)'
				},
				text: {
					primary: 'var(--text-primary)',
					muted: 'var(--text-muted)',
					hint: 'var(--text-hint)'
				},
				status: {
					green: 'var(--status-green)',
					blue: 'var(--status-blue)',
					red: 'var(--status-red)',
					purple: 'var(--status-purple)',
					amber: 'var(--status-amber)'
				}
			},
			borderRadius: {
				lg: 'var(--radius)',
				md: 'calc(var(--radius) - 2px)',
				sm: 'calc(var(--radius) - 4px)'
			},
			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'
					}
				},
				esFloat: {
					'0%, 100%': {
						transform: 'translateY(0px)'
					},
					'50%': {
						transform: 'translateY(-8px)'
					}
				},
				esScan: {
					'0%': {
						transform: 'translateY(0)',
						opacity: '0'
					},
					'20%': {
						opacity: '1'
					},
					'80%': {
						opacity: '1'
					},
					'100%': {
						transform: 'translateY(56px)',
						opacity: '0'
					}
				},
				esDot: {
					'0%, 100%': {
						opacity: '0.25'
					},
					'50%': {
						opacity: '1'
					}
				},
				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)" },
				},
				'pulse-glow': {
					'0%, 100%': { opacity: '1', transform: 'scale(1)' },
					'50%': { opacity: '0.8', transform: 'scale(1.05)' },
				},
				'float-slow': {
					'0%, 100%': { transform: 'translateY(0)' },
					'50%': { transform: 'translateY(-10px)' },
				},
				bar: {
					'0%': { height: '20%' },
					'100%': { height: 'var(--target-height, 100%)' },
				},
				marquee: {
					'0%': { transform: 'translateX(0%)' },
					'100%': { transform: 'translateX(-50%)' },
				}
			},
			animation: {
				'accordion-down': 'accordion-down 0.2s ease-out',
				'accordion-up': 'accordion-up 0.2s ease-out',
				'es-float': 'esFloat 3s ease-in-out infinite',
				'es-scan': 'esScan 2.5s ease-in-out infinite',
				'es-dot': 'esDot 2s ease-in-out infinite',
				blob: "blob 7s infinite",
				"pulse-glow": "pulse-glow 2.5s cubic-bezier(0.4, 0, 0.6, 1) infinite",
				"float-slow": "float-slow 3s ease-in-out infinite",
				bar: "bar 1s ease-out forwards",
				marquee: "marquee 30s linear infinite",
			}
		}
	},
	plugins: [require("tailwindcss-animate")],
} satisfies Config

export default config
