import animate from "tailwindcss-animate"; /** * Tailwind config for the agent-team dashboard. * * Colors are driven by HSL CSS variables defined in src/index.css (shadcn/ui * convention) so the dark theme stays in one place. On top of the standard * shadcn tokens we add pipeline `status.*` colors (active/waiting/parked/done/ * failed) that the Board, MapNode, and badges share. */ /** @type {import('tailwindcss').Config} */ export default { darkMode: ["class"], content: ["./index.html", "./src/**/*.{ts,tsx}"], 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))", }, muted: { DEFAULT: "hsl(var(--muted))", foreground: "hsl(var(--muted-foreground))", }, accent: { DEFAULT: "hsl(var(--accent))", foreground: "hsl(var(--accent-foreground))", }, destructive: { DEFAULT: "hsl(var(--destructive))", foreground: "hsl(var(--destructive-foreground))", }, card: { DEFAULT: "hsl(var(--card))", foreground: "hsl(var(--card-foreground))", }, popover: { DEFAULT: "hsl(var(--popover))", foreground: "hsl(var(--popover-foreground))", }, // Pipeline status palette — each has a tinted surface (`bg`) and a // bright foreground (`fg`), mirroring the original theme.css mapping. status: { active: "hsl(var(--status-active))", "active-bg": "hsl(var(--status-active-bg))", waiting: "hsl(var(--status-waiting))", "waiting-bg": "hsl(var(--status-waiting-bg))", parked: "hsl(var(--status-parked))", "parked-bg": "hsl(var(--status-parked-bg))", done: "hsl(var(--status-done))", "done-bg": "hsl(var(--status-done-bg))", failed: "hsl(var(--status-failed))", "failed-bg": "hsl(var(--status-failed-bg))", }, }, borderRadius: { lg: "var(--radius)", md: "calc(var(--radius) - 2px)", sm: "calc(var(--radius) - 4px)", }, fontFamily: { sans: [ "-apple-system", "BlinkMacSystemFont", "Segoe UI", "Roboto", "Helvetica", "Arial", "sans-serif", ], mono: ["ui-monospace", "SFMono-Regular", "Menlo", "monospace"], }, 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" }, }, }, animation: { "accordion-down": "accordion-down 0.2s ease-out", "accordion-up": "accordion-up 0.2s ease-out", }, }, }, plugins: [animate], };