-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtailwind.config.ts
More file actions
99 lines (98 loc) · 3.67 KB
/
Copy pathtailwind.config.ts
File metadata and controls
99 lines (98 loc) · 3.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
import type { Config } from "tailwindcss";
const config: Config = {
darkMode: "class",
content: ["./app/**/*.{ts,tsx}", "./components/**/*.{ts,tsx}"],
theme: {
extend: {
colors: {
// Editorial/brutalist core
bone: "#F4EFE6", // warm cream (light-mode base)
dust: "#D8D3C8", // muted surface
ink: "#0B0B0F", // near-black
charcoal: "#14131A", // dark-mode base
slab: "#1E1D26", // dark-mode surface
// Signature pops
acid: "#D4FF3B", // electric lime (primary accent)
lava: "#FF4D26", // hot orange
violet: "#5B2BFF", // deep electric violet
grape: "#2E1065", // deep purple for contrast blocks
// Semantic
good: "#17A957",
bad: "#E5342A",
warn: "#F59E0B",
// Back-compat aliases so existing usages don't break
paper: "#F4EFE6",
space: "#14131A",
surface: "#1E1D26",
accent: "#5B2BFF",
"neon-purple": "#5B2BFF",
"neon-pink": "#FF4D26",
"neon-green": "#D4FF3B",
"neon-red": "#E5342A",
"neon-orange": "#FF4D26",
"neon-blue": "#5B2BFF",
},
backgroundImage: {
"grad-acid": "linear-gradient(135deg, #D4FF3B 0%, #FF4D26 100%)",
"grad-violet": "linear-gradient(135deg, #5B2BFF 0%, #FF4D26 100%)",
"grad-ink": "linear-gradient(135deg, #0B0B0F 0%, #2E1065 100%)",
// Back-compat
"grad-cyber": "linear-gradient(135deg, #5B2BFF 0%, #D4FF3B 100%)",
"grad-peach": "linear-gradient(135deg, #FF4D26 0%, #D4FF3B 100%)",
"grad-soft": "linear-gradient(135deg, #5B2BFF 0%, #FF4D26 100%)",
"grad-warm": "linear-gradient(135deg, #FF4D26 0%, #F59E0B 100%)",
},
fontFamily: {
// Resolved via next/font CSS variables wired in app/layout.tsx
display: ["var(--font-display)", "ui-serif", "Georgia", "serif"],
sans: ["var(--font-sans)", "ui-sans-serif", "system-ui", "-apple-system", "Helvetica", "Arial"],
mono: ["var(--font-mono)", "ui-monospace", "SFMono-Regular", "Menlo", "monospace"],
},
boxShadow: {
// Brutalist hard-shadow (offset, no blur)
slab: "6px 6px 0 0 #0B0B0F",
slabSm: "3px 3px 0 0 #0B0B0F",
slabInv: "6px 6px 0 0 #F4EFE6",
slabAcid: "6px 6px 0 0 #D4FF3B",
slabLava: "6px 6px 0 0 #FF4D26",
card: "0 1px 2px rgba(11,11,15,0.04), 0 8px 24px rgba(11,11,15,0.06)",
},
keyframes: {
shimmer: {
"0%": { backgroundPosition: "-200% 0" },
"100%": { backgroundPosition: "200% 0" },
},
float: {
"0%,100%": { transform: "translateY(0) rotate(-2deg)" },
"50%": { transform: "translateY(-6px) rotate(2deg)" },
},
wobble: {
"0%,100%": { transform: "rotate(-3deg)" },
"50%": { transform: "rotate(3deg)" },
},
tickerX: {
"0%": { transform: "translateX(0)" },
"100%": { transform: "translateX(-50%)" },
},
fadeUp: {
"0%": { opacity: "0", transform: "translateY(10px)" },
"100%": { opacity: "1", transform: "translateY(0)" },
},
flash: {
"0%,100%": { backgroundColor: "#D4FF3B" },
"50%": { backgroundColor: "#FF4D26" },
},
},
animation: {
shimmer: "shimmer 2.4s linear infinite",
float: "float 4s ease-in-out infinite",
wobble: "wobble 2.2s ease-in-out infinite",
ticker: "tickerX 28s linear infinite",
fadeUp: "fadeUp 420ms ease-out both",
flash: "flash 1.4s ease-in-out infinite",
},
},
},
plugins: [],
};
export default config;