This commit is contained in:
Tomas Dvorak
2026-05-05 09:48:07 +02:00
parent d854614a87
commit 48c3e15a38
295 changed files with 178381 additions and 1039 deletions
+86 -9
View File
@@ -1,23 +1,100 @@
/** @type {import('tailwindcss').Config} */
module.exports = {
darkMode: "class",
content: ["./index.html", "./src/**/*.{ts,tsx}"],
theme: {
extend: {
colors: {
canvas: "#f6f4ee",
ink: "#171614",
mist: "#ded7cb",
ember: "#9d5c3d",
pine: "#26413c",
slate: "#42515b",
// Semantic color tokens
canvas: {
DEFAULT: "hsl(var(--canvas))",
subtle: "hsl(var(--canvas-subtle))",
muted: "hsl(var(--canvas-muted))",
},
ink: {
DEFAULT: "hsl(var(--ink))",
muted: "hsl(var(--ink-muted))",
subtle: "hsl(var(--ink-subtle))",
},
accent: {
DEFAULT: "hsl(var(--accent))",
hover: "hsl(var(--accent-hover))",
subtle: "hsl(var(--accent-subtle))",
},
border: {
DEFAULT: "hsl(var(--border))",
subtle: "hsl(var(--border-subtle))",
},
// Legacy compatibility
mist: "hsl(var(--canvas-muted))",
ember: "hsl(var(--accent))",
pine: "hsl(var(--accent-hover))",
slate: "hsl(var(--ink-muted))",
},
boxShadow: {
card: "0 20px 60px rgba(23, 22, 20, 0.08)",
card: "0 1px 3px 0 rgb(0 0 0 / 0.05), 0 10px 40px -10px rgb(0 0 0 / 0.1)",
"card-hover": "0 1px 3px 0 rgb(0 0 0 / 0.05), 0 20px 60px -15px rgb(0 0 0 / 0.15)",
subtle: "0 1px 2px 0 rgb(0 0 0 / 0.03)",
},
borderRadius: {
panel: "1.5rem",
panel: "1.25rem",
card: "1rem",
button: "0.75rem",
},
fontFamily: {
sans: ["'IBM Plex Sans'", "ui-sans-serif", "system-ui", "sans-serif"],
sans: ["'Newsreader'", "Georgia", "ui-serif", "serif"],
display: ["'Space Grotesk'", "ui-sans-serif", "system-ui", "sans-serif"],
dashboard: ["'DM Sans'", "ui-sans-serif", "system-ui", "sans-serif"],
mono: ["'JetBrains Mono'", "ui-monospace", "monospace"],
},
fontSize: {
"display-xl": ["clamp(2.75rem, 6vw + 1rem, 5rem)", { lineHeight: "1.05", letterSpacing: "-0.04em", fontFamily: "'Space Grotesk', sans-serif" }],
"display-lg": ["clamp(2.25rem, 4.5vw + 0.5rem, 3.75rem)", { lineHeight: "1.1", letterSpacing: "-0.03em", fontFamily: "'Space Grotesk', sans-serif" }],
"display-md": ["clamp(1.75rem, 3.5vw + 0.5rem, 2.75rem)", { lineHeight: "1.15", letterSpacing: "-0.02em", fontFamily: "'Space Grotesk', sans-serif" }],
"display-sm": ["clamp(1.5rem, 2.5vw + 0.5rem, 2rem)", { lineHeight: "1.2", letterSpacing: "-0.01em", fontFamily: "'Space Grotesk', sans-serif" }],
},
spacing: {
"18": "4.5rem",
"22": "5.5rem",
"26": "6.5rem",
"30": "7.5rem",
"34": "8.5rem",
"38": "9.5rem",
"128": "32rem",
},
animation: {
"fade-in": "fade-in 0.5s cubic-bezier(0.4, 0, 0.2, 1)",
"slide-up": "slide-up 0.6s cubic-bezier(0.16, 1, 0.3, 1)",
"slide-down": "slide-down 0.4s cubic-bezier(0.16, 1, 0.3, 1)",
"scale-in": "scale-in 0.3s cubic-bezier(0.16, 1, 0.3, 1)",
"float": "float 6s ease-in-out infinite",
"pulse-soft": "pulse-soft 2s cubic-bezier(0.4, 0, 0.6, 1) infinite",
},
keyframes: {
"fade-in": {
"0%": { opacity: "0" },
"100%": { opacity: "1" },
},
"slide-up": {
"0%": { opacity: "0", transform: "translateY(24px)" },
"100%": { opacity: "1", transform: "translateY(0)" },
},
"slide-down": {
"0%": { opacity: "0", transform: "translateY(-12px)" },
"100%": { opacity: "1", transform: "translateY(0)" },
},
"scale-in": {
"0%": { opacity: "0", transform: "scale(0.95)" },
"100%": { opacity: "1", transform: "scale(1)" },
},
float: {
"0%, 100%": { transform: "translateY(0)" },
"50%": { transform: "translateY(-8px)" },
},
"pulse-soft": {
"0%, 100%": { opacity: "1" },
"50%": { opacity: "0.7" },
},
},
},
},