import type { Config } from "tailwindcss"; /** * All colors resolve to CSS variables defined in globals.css. * That is what lets the whole theme (surfaces, accent, radius) be swapped * at runtime from env flags / the live theming panel — light AND dark. */ const config: Config = { darkMode: "class", content: [ "./app/**/*.{ts,tsx}", "./components/**/*.{ts,tsx}", "./lib/**/*.{ts,tsx}", "../../packages/messaging-inbox-sdk/src/**/*.{ts,tsx}", ], theme: { extend: { colors: { bg: "var(--c-bg)", surface: "var(--c-surface)", panel: "var(--c-panel)", elevated: "var(--c-elevated)", hover: "var(--c-hover)", border: "var(--c-border)", "border-strong": "var(--c-border-strong)", ink: "var(--c-ink)", muted: "var(--c-muted)", dim: "var(--c-dim)", accent: "var(--c-accent)", "accent-fg": "var(--c-accent-fg)", "accent-soft": "var(--c-accent-soft)", success: "var(--c-success)", warning: "var(--c-warning)", danger: "var(--c-danger)", info: "var(--c-info)", }, borderRadius: { card: "var(--r-card)", control: "var(--r-control)", pill: "var(--r-pill)", }, fontFamily: { sans: ["var(--font-sans)", "Inter", "system-ui", "sans-serif"], mono: ["var(--font-mono)", "ui-monospace", "monospace"], }, boxShadow: { soft: "0 1px 2px rgba(0,0,0,.24), 0 8px 24px rgba(0,0,0,.18)", pop: "0 12px 40px rgba(0,0,0,.38)", }, keyframes: { "fade-in": { from: { opacity: "0" }, to: { opacity: "1" } }, "slide-up": { from: { opacity: "0", transform: "translateY(6px)" }, to: { opacity: "1", transform: "translateY(0)" }, }, blink: { "0%,100%": { opacity: "1" }, "50%": { opacity: "0.35" } }, }, animation: { "fade-in": "fade-in .18s ease", "slide-up": "slide-up .2s ease", blink: "blink 1.2s ease-in-out infinite", }, }, }, plugins: [], }; export default config;