mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-20 12:31:22 -05:00
108 lines
4.2 KiB
JavaScript
108 lines
4.2 KiB
JavaScript
/** @type {import('tailwindcss').Config} */
|
|
const plugin = require("tailwindcss/plugin");
|
|
|
|
module.exports = {
|
|
darkMode: 'class',
|
|
content: [
|
|
'./templates/**/*.html',
|
|
'./assets/css/src/**/*.css',
|
|
],
|
|
theme: {
|
|
extend: {
|
|
colors: {
|
|
primary: '#4f46e5', // Vibrant indigo
|
|
secondary: '#e11d48', // Vibrant rose
|
|
accent: '#8b5cf6'
|
|
},
|
|
fontFamily: {
|
|
'sans': ['Poppins', 'sans-serif'],
|
|
},
|
|
},
|
|
},
|
|
plugins: [
|
|
require("@tailwindcss/typography"),
|
|
require("@tailwindcss/forms"),
|
|
require("@tailwindcss/aspect-ratio"),
|
|
require("@tailwindcss/container-queries"),
|
|
plugin(function ({ addComponents }) {
|
|
addComponents({
|
|
'.auth-card': {
|
|
'@apply w-full max-w-md p-8 mx-auto border shadow-xl bg-white/90 dark:bg-gray-800/90 rounded-2xl backdrop-blur-sm border-gray-200/50 dark:border-gray-700/50': {},
|
|
},
|
|
'.auth-title': {
|
|
'@apply mb-8 text-2xl font-bold text-center text-transparent bg-gradient-to-r from-primary to-secondary bg-clip-text': {},
|
|
},
|
|
'.auth-divider': {
|
|
'@apply relative my-6 text-center': {},
|
|
'&::before, &::after': {
|
|
'@apply absolute top-1/2 w-1/3 border-t border-gray-200 dark:border-gray-700 content-[\'\']': {},
|
|
},
|
|
'&::before': {
|
|
'@apply left-0': {},
|
|
},
|
|
'&::after': {
|
|
'@apply right-0': {},
|
|
},
|
|
'span': {
|
|
'@apply px-4 text-sm text-gray-500 dark:text-gray-400 bg-white/90 dark:bg-gray-800/90': {},
|
|
},
|
|
},
|
|
'.btn-social': {
|
|
'@apply w-full flex items-center justify-center px-6 py-3 border border-gray-200 dark:border-gray-700 rounded-lg shadow-sm text-sm font-medium text-gray-700 dark:text-gray-200 bg-white dark:bg-gray-800 hover:bg-gray-50 dark:hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary/50 transform hover:scale-[1.02] transition-all mb-3': {},
|
|
},
|
|
'.btn-discord': {
|
|
'@apply bg-[#5865F2] hover:bg-[#4752C4] text-white border-transparent shadow-[#5865F2]/20': {},
|
|
},
|
|
'.btn-google': {
|
|
'@apply text-gray-700 bg-white border-gray-200 hover:bg-gray-50 shadow-gray-200/50 dark:shadow-gray-900/50': {},
|
|
},
|
|
'.password-requirements': {
|
|
'@apply p-4 rounded-lg bg-gray-50/80 dark:bg-gray-800/80 border border-gray-200/50 dark:border-gray-700/50': {},
|
|
'ul': {
|
|
'@apply space-y-2': {},
|
|
},
|
|
'li': {
|
|
'@apply flex items-center space-x-2 text-sm transition-colors duration-200': {},
|
|
'i': {
|
|
'@apply text-xs transition-all duration-200': {},
|
|
},
|
|
'&.invalid': {
|
|
'@apply text-gray-500 dark:text-gray-400': {},
|
|
'i': {
|
|
'@apply text-gray-400 dark:text-gray-500': {},
|
|
},
|
|
},
|
|
'&.valid': {
|
|
'@apply text-green-600 dark:text-green-400': {},
|
|
'i': {
|
|
'@apply text-green-500 dark:text-green-400': {},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
'.form-input': {
|
|
'@apply w-full px-4 py-3 text-gray-900 transition-all border border-gray-200 rounded-lg shadow-sm dark:border-gray-700 bg-white/70 dark:bg-gray-800/70 backdrop-blur-sm dark:text-white focus:ring-2 focus:ring-primary/50 focus:border-primary': {},
|
|
},
|
|
'.form-label': {
|
|
'@apply block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1.5': {},
|
|
},
|
|
'.form-error': {
|
|
'@apply mt-2 text-sm text-red-600 dark:text-red-400': {},
|
|
},
|
|
'.alert': {
|
|
'@apply p-4 mb-4 shadow-lg rounded-xl backdrop-blur-sm': {},
|
|
},
|
|
'.alert-error': {
|
|
'@apply text-red-800 border border-red-200 bg-red-100/90 dark:bg-red-800/30 dark:text-red-100 dark:border-red-700': {},
|
|
},
|
|
});
|
|
}),
|
|
plugin(function ({ addVariant }) {
|
|
addVariant("htmx-settling", ["&.htmx-settling", ".htmx-settling &"]);
|
|
addVariant("htmx-request", ["&.htmx-request", ".htmx-request &"]);
|
|
addVariant("htmx-swapping", ["&.htmx-swapping", ".htmx-swapping &"]);
|
|
addVariant("htmx-added", ["&.htmx-added", ".htmx-added &"]);
|
|
}),
|
|
],
|
|
}
|