134 lines
4.0 KiB
TypeScript
134 lines
4.0 KiB
TypeScript
import type { Config } from 'tailwindcss'
|
|
|
|
const config: Config = {
|
|
darkMode: 'class',
|
|
content: [
|
|
'./src/pages/**/*.{js,ts,jsx,tsx,mdx}',
|
|
'./src/components/**/*.{js,ts,jsx,tsx,mdx}',
|
|
'./src/app/**/*.{js,ts,jsx,tsx,mdx}',
|
|
],
|
|
theme: {
|
|
container: {
|
|
center: true,
|
|
padding: '2rem',
|
|
screens: {
|
|
'2xl': '1400px',
|
|
},
|
|
},
|
|
extend: {
|
|
fontFamily: {
|
|
sans: ['Montserrat', 'system-ui', 'sans-serif'],
|
|
mono: ['JetBrains Mono', 'monospace'],
|
|
},
|
|
colors: {
|
|
// MOPC Brand Colors
|
|
brand: {
|
|
red: {
|
|
DEFAULT: '#de0f1e',
|
|
hover: '#c00d1a',
|
|
light: '#fee2e2',
|
|
},
|
|
blue: {
|
|
DEFAULT: '#053d57',
|
|
light: '#0a5a7c',
|
|
},
|
|
teal: {
|
|
DEFAULT: '#557f8c',
|
|
light: '#6a9aa8',
|
|
},
|
|
},
|
|
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))',
|
|
},
|
|
success: 'hsl(var(--success))',
|
|
warning: 'hsl(var(--warning))',
|
|
},
|
|
borderRadius: {
|
|
lg: 'var(--radius)',
|
|
md: 'calc(var(--radius) - 2px)',
|
|
sm: 'calc(var(--radius) - 4px)',
|
|
},
|
|
fontSize: {
|
|
'display-lg': ['3rem', { lineHeight: '1.1', fontWeight: '700' }],
|
|
display: ['2.25rem', { lineHeight: '1.2', fontWeight: '700' }],
|
|
heading: ['1.5rem', { lineHeight: '1.3', fontWeight: '600' }],
|
|
subheading: ['1.125rem', { lineHeight: '1.4', fontWeight: '600' }],
|
|
body: ['1rem', { lineHeight: '1.5', fontWeight: '400' }],
|
|
small: ['0.875rem', { lineHeight: '1.5', fontWeight: '400' }],
|
|
tiny: ['0.75rem', { lineHeight: '1.5', fontWeight: '400' }],
|
|
},
|
|
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': {
|
|
from: { opacity: '0' },
|
|
to: { opacity: '1' },
|
|
},
|
|
'fade-out': {
|
|
from: { opacity: '1' },
|
|
to: { opacity: '0' },
|
|
},
|
|
'slide-in-from-top': {
|
|
from: { transform: 'translateY(-10px)', opacity: '0' },
|
|
to: { transform: 'translateY(0)', opacity: '1' },
|
|
},
|
|
'slide-in-from-bottom': {
|
|
from: { transform: 'translateY(10px)', opacity: '0' },
|
|
to: { transform: 'translateY(0)', opacity: '1' },
|
|
},
|
|
},
|
|
animation: {
|
|
'accordion-down': 'accordion-down 0.2s ease-out',
|
|
'accordion-up': 'accordion-up 0.2s ease-out',
|
|
'fade-in': 'fade-in 0.2s ease-out',
|
|
'fade-out': 'fade-out 0.2s ease-out',
|
|
'slide-in-from-top': 'slide-in-from-top 0.3s ease-out',
|
|
'slide-in-from-bottom': 'slide-in-from-bottom 0.3s ease-out',
|
|
},
|
|
spacing: {
|
|
18: '4.5rem',
|
|
22: '5.5rem',
|
|
},
|
|
},
|
|
},
|
|
plugins: [require('tailwindcss-animate')],
|
|
}
|
|
|
|
export default config
|