Spaces:
Running
Running
| 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))' | |
| }, | |
| profit: 'hsl(var(--profit))', | |
| loss: 'hsl(var(--loss))', | |
| warning: 'hsl(var(--warning))', | |
| info: 'hsl(var(--info))' | |
| }, | |
| backgroundImage: { | |
| 'gradient-primary': 'var(--gradient-primary)', | |
| 'gradient-card': 'var(--gradient-card)', | |
| 'gradient-accent': 'var(--gradient-accent)' | |
| }, | |
| 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' | |
| } | |
| }, | |
| 'fade-in': { | |
| '0%': { opacity: '0', transform: 'translateY(10px)' }, | |
| '100%': { opacity: '1', transform: 'translateY(0)' } | |
| }, | |
| 'slide-in': { | |
| '0%': { transform: 'translateX(-100%)' }, | |
| '100%': { transform: 'translateX(0)' } | |
| }, | |
| 'pulse-glow': { | |
| '0%, 100%': { boxShadow: '0 0 20px hsl(var(--primary) / 0.3)' }, | |
| '50%': { boxShadow: '0 0 30px hsl(var(--primary) / 0.5)' } | |
| }, | |
| 'profit-flash': { | |
| '0%, 100%': { backgroundColor: 'hsl(var(--card))' }, | |
| '50%': { backgroundColor: 'hsl(var(--profit) / 0.1)' } | |
| }, | |
| 'loss-flash': { | |
| '0%, 100%': { backgroundColor: 'hsl(var(--card))' }, | |
| '50%': { backgroundColor: 'hsl(var(--loss) / 0.1)' } | |
| } | |
| }, | |
| 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', | |
| 'slide-in': 'slide-in 0.3s ease-out', | |
| 'pulse-glow': 'pulse-glow 2s ease-in-out infinite', | |
| 'profit-flash': 'profit-flash 0.5s ease-in-out', | |
| 'loss-flash': 'loss-flash 0.5s ease-in-out' | |
| } | |
| } | |
| }, | |
| plugins: [require("tailwindcss-animate")], | |
| } satisfies Config; | |