mirror of
https://github.com/Cccc-owo/CheckInApp.git
synced 2026-06-17 05:56:29 +00:00
102 lines
3.0 KiB
JavaScript
102 lines
3.0 KiB
JavaScript
/** @type {import('tailwindcss').Config} */
|
|
export default {
|
|
darkMode: 'class', // 启用 class 模式的暗色模式
|
|
content: [
|
|
"./index.html",
|
|
"./src/**/*.{vue,js,ts,jsx,tsx}",
|
|
],
|
|
theme: {
|
|
extend: {
|
|
colors: {
|
|
// Material Design 3 color palette
|
|
primary: {
|
|
50: '#e8f5e9',
|
|
100: '#c8e6c9',
|
|
200: '#a5d6a7',
|
|
300: '#81c784',
|
|
400: '#66bb6a',
|
|
500: '#4caf50',
|
|
600: '#43a047',
|
|
700: '#388e3c',
|
|
800: '#2e7d32',
|
|
900: '#1b5e20',
|
|
},
|
|
secondary: {
|
|
50: '#e3f2fd',
|
|
100: '#bbdefb',
|
|
200: '#90caf9',
|
|
300: '#64b5f6',
|
|
400: '#42a5f5',
|
|
500: '#2196f3',
|
|
600: '#1e88e5',
|
|
700: '#1976d2',
|
|
800: '#1565c0',
|
|
900: '#0d47a1',
|
|
},
|
|
accent: {
|
|
50: '#fff3e0',
|
|
100: '#ffe0b2',
|
|
200: '#ffcc80',
|
|
300: '#ffb74d',
|
|
400: '#ffa726',
|
|
500: '#ff9800',
|
|
600: '#fb8c00',
|
|
700: '#f57c00',
|
|
800: '#ef6c00',
|
|
900: '#e65100',
|
|
},
|
|
surface: {
|
|
50: '#fafafa',
|
|
100: '#f5f5f5',
|
|
200: '#eeeeee',
|
|
300: '#e0e0e0',
|
|
400: '#bdbdbd',
|
|
500: '#9e9e9e',
|
|
600: '#757575',
|
|
700: '#616161',
|
|
800: '#424242',
|
|
900: '#212121',
|
|
},
|
|
},
|
|
borderRadius: {
|
|
// Material Design 3 Shape System
|
|
'md3-xs': '4px', // Extra Small - chips, small tags
|
|
'md3-sm': '8px', // Small - text fields, small components
|
|
'md3': '12px', // Medium - cards, buttons (default)
|
|
'md3-lg': '16px', // Large - large cards, dialogs
|
|
'md3-xl': '28px', // Extra Large - fully rounded buttons
|
|
'md3-full': '9999px', // Full - pill shape
|
|
},
|
|
boxShadow: {
|
|
// Material Design 3 Elevation System (official spec)
|
|
'md3-0': 'none',
|
|
'md3-1': '0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15)',
|
|
'md3-2': '0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 2px 6px 2px rgba(0, 0, 0, 0.15)',
|
|
'md3-3': '0px 1px 3px 0px rgba(0, 0, 0, 0.3), 0px 4px 8px 3px rgba(0, 0, 0, 0.15)',
|
|
'md3-4': '0px 2px 3px 0px rgba(0, 0, 0, 0.3), 0px 6px 10px 4px rgba(0, 0, 0, 0.15)',
|
|
'md3-5': '0px 4px 4px 0px rgba(0, 0, 0, 0.3), 0px 8px 12px 6px rgba(0, 0, 0, 0.15)',
|
|
},
|
|
animation: {
|
|
'fade-in': 'fadeIn 0.3s ease-in-out',
|
|
'slide-up': 'slideUp 0.3s ease-out',
|
|
'slide-down': 'slideDown 0.3s ease-out',
|
|
},
|
|
keyframes: {
|
|
fadeIn: {
|
|
'0%': { opacity: '0' },
|
|
'100%': { opacity: '1' },
|
|
},
|
|
slideUp: {
|
|
'0%': { transform: 'translateY(10px)', opacity: '0' },
|
|
'100%': { transform: 'translateY(0)', opacity: '1' },
|
|
},
|
|
slideDown: {
|
|
'0%': { transform: 'translateY(-10px)', opacity: '0' },
|
|
'100%': { transform: 'translateY(0)', opacity: '1' },
|
|
},
|
|
},
|
|
},
|
|
},
|
|
plugins: [],
|
|
}
|