import { fontFamily } from 'tailwindcss/defaultTheme' import type { Config } from 'tailwindcss' import plugin from 'tailwindcss/plugin' const config: Config = { plugins: [ plugin(({ addVariant, matchVariant }) => { addVariant('select', ['&:hover', '&:focus-visible', '&:active']) addVariant('group-select', [':merge(.group):hover &', ':merge(.group):focus-visible &', ':merge(.group):active &']) addVariant('fullscreen', '&:fullscreen') addVariant('group-fullscreen', ':merge(.group):fullscreen &') matchVariant( 'group-fullscreen', (value, { modifier }) => [ ':merge(.group):fullscreen &', `:merge(.group\\/${modifier}):fullscreen &` ], { values: { DEFAULT: undefined } } ) matchVariant( 'group-select', (value, { modifier }) => [ ':merge(.group):hover &', `:merge(.group\\/${modifier}):hover &`, ':merge(.group):focus-visible &', `:merge(.group\\/${modifier}):focus-visible &`, ':merge(.group):active &', `:merge(.group\\/${modifier}):active &` ], { values: { DEFAULT: undefined } } ) addVariant('mobile', '@media (pointer: none), (pointer: coarse)') }) ], darkMode: ['class'], content: ['./src/**/*.{html,js,svelte,ts}'], safelist: ['dark'], theme: { container: { center: true, padding: '2rem', screens: { '2xl': '1400px' } }, extend: { colors: { theme: 'hsl(346.6deg 79.12% 51.18% / )', 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) / )' } }, borderRadius: { lg: 'var(--radius)', md: 'calc(var(--radius) - 2px)', sm: 'calc(var(--radius) - 4px)' }, fontFamily: { sans: [...fontFamily.sans] } } } } export default config