import type { Config } from "tailwindcss"; import tailwindcssAnimate from "tailwindcss-animate"; const config: Config = { darkMode: ["class"], content: ["./src/**/*.{js,ts,jsx,tsx,mdx}", "./index.html"], theme: { 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))", }, "accent-cyan": "hsl(var(--accent-cyan))", }, fontFamily: { sans: ["Geist", "sans-serif"], mono: ["Geist Mono", "monospace"], }, backgroundImage: { "grid-pattern": "url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='32' height='32' fill='none' stroke='rgb(255 255 255 / 0.05)'%3e%3cpath d='M0 .5H31.5V32'/%3e%3c/svg%3e\")", "hex-pattern": "url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='28' height='49' viewBox='0 0 28 49'%3e%3chexagon stroke='rgb(255 255 255 / 0.05)'/%3e%3c/svg%3e\")", }, 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", }, }, scanline: { "0%": { transform: "translateY(0)" }, "100%": { transform: "translateY(100%)" }, }, "text-glitch": { "0%": { transform: "translate(0)" }, "20%": { transform: "translate(-2px, 2px)" }, "40%": { transform: "translate(-2px, -2px)" }, "60%": { transform: "translate(2px, 2px)" }, "80%": { transform: "translate(2px, -2px)" }, "100%": { transform: "translate(0)" }, }, }, animation: { "pulse-slow": "pulse 4s cubic-bezier(0.4, 0, 0.6, 1) infinite", "accordion-down": "accordion-down 0.2s ease-out", "accordion-up": "accordion-up 0.2s ease-out", scanline: "scanline 10s linear infinite", "text-glitch": "text-glitch 0.3s linear infinite alternate-reverse", }, }, }, plugins: [tailwindcssAnimate], }; export default config;