Themepo/tailwind.preset.js
2026-05-10 18:05:10 -04:00

59 lines
1.9 KiB
JavaScript

/** @type {import('tailwindcss').Config} */
module.exports = {
theme: {
extend: {
colors: {
obsidian: "var(--obsidian)",
mithral: {
DEFAULT: "var(--mithral)",
dim: "var(--mithral-dim)",
soft: "var(--mithral-soft)",
dark: "var(--mithral-dark)",
glow: "var(--mithral-glow)",
},
arcane: {
blue: "var(--arcane-blue)",
glow: "var(--arcane-glow)",
},
surface: {
card: "var(--surface-card)",
"card-hover": "var(--surface-card-hover)",
glass: "var(--surface-glass)",
"glass-strong": "var(--surface-glass-strong)",
},
border: {
arcane: "var(--border-arcane)",
subtle: "var(--border-subtle)",
}
},
fontFamily: {
rune: ["var(--font-rune)", "serif"],
body: ["var(--font-body)", "sans-serif"],
mono: ["var(--font-mono)", "monospace"],
},
animation: {
"spin-slow": "spin 120s linear infinite",
"spin-reverse-slow": "spin-reverse 80s linear infinite",
"reveal": "reveal 1s ease-out forwards",
"pulse-dot": "pulse-dot 2s infinite",
"pulse-glow": "pulse-glow 2s infinite",
},
keyframes: {
"spin-reverse": {
"100%": { transform: "rotate(-360deg)" },
},
"reveal": {
"to": { opacity: "1", transform: "translateY(0)" },
},
"pulse-dot": {
"0%, 100%": { opacity: "0.5", boxShadow: "0 0 5px var(--arcane-blue)" },
"50%": { opacity: "1", boxShadow: "0 0 15px var(--arcane-blue)" },
},
"pulse-glow": {
"0%, 100%": { transform: "scale(1)", opacity: "1", boxShadow: "0 0 5px var(--pulse-color, var(--success))" },
"50%": { transform: "scale(1.2)", opacity: "0.7", boxShadow: "0 0 15px var(--pulse-color, var(--success))" },
}
}
},
},
};