web / frontend /tailwind.config.ts
Chandima Prabhath
init
22b1735
import type { Config } from "tailwindcss";
export default {
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: {
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))'
},
sidebar: {
DEFAULT: 'hsl(var(--sidebar-background))',
foreground: 'hsl(var(--sidebar-foreground))',
primary: 'hsl(var(--sidebar-primary))',
'primary-foreground': 'hsl(var(--sidebar-primary-foreground))',
accent: 'hsl(var(--sidebar-accent))',
'accent-foreground': 'hsl(var(--sidebar-accent-foreground))',
border: 'hsl(var(--sidebar-border))',
ring: 'hsl(var(--sidebar-ring))'
},
financial: {
'navy': '#1e2b47',
'blue': '#3a5a80',
'light-blue': '#7aa0c9',
'gray': '#f5f7fa',
'accent': '#7868e6',
'light-accent': '#b8b5ff',
'dark-gray': '#2c3142',
'cool-gray': '#9ca3af'
}
},
borderRadius: {
lg: 'var(--radius)',
md: 'calc(var(--radius) - 2px)',
sm: 'calc(var(--radius) - 4px)'
},
fontFamily: {
sans: ['Inter', 'system-ui', 'sans-serif'],
heading: ['Space Grotesk', 'sans-serif']
},
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'
}
},
'fade-in': {
'0%': {
opacity: '0',
transform: 'translateY(10px)'
},
'100%': {
opacity: '1',
transform: 'translateY(0)'
}
},
'pulse-subtle': {
'0%, 100%': {
opacity: '1'
},
'50%': {
opacity: '0.8'
}
},
'slide-in': {
'0%': {
transform: 'translateY(20px)',
opacity: '0'
},
'100%': {
transform: 'translateY(0)',
opacity: '1'
}
},
'bounce-in': {
'0%': {
transform: 'scale(0.95)',
opacity: '0'
},
'70%': {
transform: 'scale(1.05)'
},
'100%': {
transform: 'scale(1)',
opacity: '1'
}
},
'shimmer': {
'100%': {
transform: 'translateX(100%)'
}
}
},
animation: {
'accordion-down': 'accordion-down 0.2s ease-out',
'accordion-up': 'accordion-up 0.2s ease-out',
'fade-in': 'fade-in 0.5s ease-out forwards',
'pulse-subtle': 'pulse-subtle 2s ease-in-out infinite',
'slide-in': 'slide-in 0.3s ease-out forwards',
'bounce-in': 'bounce-in 0.4s ease-out',
'shimmer': 'shimmer 2s infinite linear'
},
backdropFilter: {
'none': 'none',
'blur': 'blur(20px)'
}
}
},
plugins: [require("tailwindcss-animate")],
} satisfies Config;