|
6 | 6 | /* Tailwind plugin for animations */ |
7 | 7 | @plugin 'tailwindcss-animate'; |
8 | 8 |
|
| 9 | +/* Define theme colors for Tailwind 4 */ |
| 10 | +@theme { |
| 11 | + /* Border radius tokens */ |
| 12 | + --radius-lg: var(--radius); |
| 13 | + --radius-md: calc(var(--radius) - 2px); |
| 14 | + --radius-sm: calc(var(--radius) - 4px); |
| 15 | + |
| 16 | + /* Color tokens mapped to CSS variables */ |
| 17 | + --color-border: hsl(var(--border)); |
| 18 | + --color-input: hsl(var(--input)); |
| 19 | + --color-ring: hsl(var(--ring)); |
| 20 | + --color-background: hsl(var(--background)); |
| 21 | + --color-foreground: hsl(var(--foreground)); |
| 22 | + --color-primary: hsl(var(--primary)); |
| 23 | + --color-primary-foreground: hsl(var(--primary-foreground)); |
| 24 | + --color-secondary: hsl(var(--secondary)); |
| 25 | + --color-secondary-foreground: hsl(var(--secondary-foreground)); |
| 26 | + --color-destructive: hsl(var(--destructive)); |
| 27 | + --color-destructive-foreground: hsl(var(--destructive-foreground)); |
| 28 | + --color-muted: hsl(var(--muted)); |
| 29 | + --color-muted-foreground: hsl(var(--muted-foreground)); |
| 30 | + --color-accent: hsl(var(--accent)); |
| 31 | + --color-accent-foreground: hsl(var(--accent-foreground)); |
| 32 | + --color-popover: hsl(var(--popover)); |
| 33 | + --color-popover-foreground: hsl(var(--popover-foreground)); |
| 34 | + --color-card: hsl(var(--card)); |
| 35 | + --color-card-foreground: hsl(var(--card-foreground)); |
| 36 | +} |
| 37 | + |
9 | 38 | /* CSS custom properties for theme */ |
10 | | -@layer base { |
11 | | - :root { |
12 | | - --background: 0 0% 100%; |
13 | | - --foreground: 222.2 84% 4.9%; |
| 39 | +:root { |
| 40 | + --background: 0 0% 100%; |
| 41 | + --foreground: 222.2 84% 4.9%; |
14 | 42 |
|
15 | | - --card: 0 0% 100%; |
16 | | - --card-foreground: 222.2 84% 4.9%; |
| 43 | + --card: 0 0% 100%; |
| 44 | + --card-foreground: 222.2 84% 4.9%; |
17 | 45 |
|
18 | | - --popover: 0 0% 100%; |
19 | | - --popover-foreground: 222.2 84% 4.9%; |
| 46 | + --popover: 0 0% 100%; |
| 47 | + --popover-foreground: 222.2 84% 4.9%; |
20 | 48 |
|
21 | | - --primary: 222.2 47.4% 11.2%; |
22 | | - --primary-foreground: 210 40% 98%; |
| 49 | + --primary: 222.2 47.4% 11.2%; |
| 50 | + --primary-foreground: 210 40% 98%; |
23 | 51 |
|
24 | | - --secondary: 210 40% 96.1%; |
25 | | - --secondary-foreground: 222.2 47.4% 11.2%; |
| 52 | + --secondary: 210 40% 96.1%; |
| 53 | + --secondary-foreground: 222.2 47.4% 11.2%; |
26 | 54 |
|
27 | | - --muted: 210 40% 96.1%; |
28 | | - --muted-foreground: 215.4 16.3% 46.9%; |
| 55 | + --muted: 210 40% 96.1%; |
| 56 | + --muted-foreground: 215.4 16.3% 46.9%; |
29 | 57 |
|
30 | | - --accent: 210 40% 96.1%; |
31 | | - --accent-foreground: 222.2 47.4% 11.2%; |
| 58 | + --accent: 210 40% 96.1%; |
| 59 | + --accent-foreground: 222.2 47.4% 11.2%; |
32 | 60 |
|
33 | | - --destructive: 0 84.2% 60.2%; |
34 | | - --destructive-foreground: 210 40% 98%; |
| 61 | + --destructive: 0 84.2% 60.2%; |
| 62 | + --destructive-foreground: 210 40% 98%; |
35 | 63 |
|
36 | | - --border: 214.3 31.8% 91.4%; |
37 | | - --input: 214.3 31.8% 91.4%; |
38 | | - --ring: 222.2 84% 4.9%; |
| 64 | + --border: 214.3 31.8% 91.4%; |
| 65 | + --input: 214.3 31.8% 91.4%; |
| 66 | + --ring: 222.2 84% 4.9%; |
39 | 67 |
|
40 | | - --radius: 0.5rem; |
41 | | - } |
| 68 | + --radius: 0.5rem; |
| 69 | +} |
42 | 70 |
|
43 | | - .dark { |
44 | | - --background: 222.2 84% 4.9%; |
45 | | - --foreground: 210 40% 98%; |
| 71 | +.dark { |
| 72 | + --background: 222.2 84% 4.9%; |
| 73 | + --foreground: 210 40% 98%; |
46 | 74 |
|
47 | | - --card: 222.2 84% 4.9%; |
48 | | - --card-foreground: 210 40% 98%; |
| 75 | + --card: 222.2 84% 4.9%; |
| 76 | + --card-foreground: 210 40% 98%; |
49 | 77 |
|
50 | | - --popover: 222.2 84% 4.9%; |
51 | | - --popover-foreground: 210 40% 98%; |
| 78 | + --popover: 222.2 84% 4.9%; |
| 79 | + --popover-foreground: 210 40% 98%; |
52 | 80 |
|
53 | | - --primary: 210 40% 98%; |
54 | | - --primary-foreground: 222.2 47.4% 11.2%; |
| 81 | + --primary: 210 40% 98%; |
| 82 | + --primary-foreground: 222.2 47.4% 11.2%; |
55 | 83 |
|
56 | | - --secondary: 217.2 32.6% 17.5%; |
57 | | - --secondary-foreground: 210 40% 98%; |
| 84 | + --secondary: 217.2 32.6% 17.5%; |
| 85 | + --secondary-foreground: 210 40% 98%; |
58 | 86 |
|
59 | | - --muted: 217.2 32.6% 17.5%; |
60 | | - --muted-foreground: 215 20.2% 65.1%; |
| 87 | + --muted: 217.2 32.6% 17.5%; |
| 88 | + --muted-foreground: 215 20.2% 65.1%; |
61 | 89 |
|
62 | | - --accent: 217.2 32.6% 17.5%; |
63 | | - --accent-foreground: 210 40% 98%; |
| 90 | + --accent: 217.2 32.6% 17.5%; |
| 91 | + --accent-foreground: 210 40% 98%; |
64 | 92 |
|
65 | | - --destructive: 0 62.8% 30.6%; |
66 | | - --destructive-foreground: 210 40% 98%; |
| 93 | + --destructive: 0 62.8% 30.6%; |
| 94 | + --destructive-foreground: 210 40% 98%; |
| 95 | + |
| 96 | + --border: 217.2 32.6% 17.5%; |
| 97 | + --input: 217.2 32.6% 17.5%; |
| 98 | + --ring: 212.7 26.8% 83.9%; |
| 99 | +} |
67 | 100 |
|
68 | | - --border: 217.2 32.6% 17.5%; |
69 | | - --input: 217.2 32.6% 17.5%; |
70 | | - --ring: 212.7 26.8% 83.9%; |
71 | | - } |
| 101 | +* { |
| 102 | + border-color: hsl(var(--border)); |
72 | 103 | } |
73 | 104 |
|
74 | | -@layer base { |
75 | | - * { |
76 | | - @apply border-border; |
77 | | - } |
78 | | - body { |
79 | | - @apply bg-background text-foreground; |
80 | | - } |
| 105 | +body { |
| 106 | + background-color: hsl(var(--background)); |
| 107 | + color: hsl(var(--foreground)); |
81 | 108 | } |
0 commit comments