diff --git a/banquise-website/app/globals.css b/banquise-website/app/globals.css index 19331e7..5b69cd9 100644 --- a/banquise-website/app/globals.css +++ b/banquise-website/app/globals.css @@ -1,6 +1,23 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; +@import "tailwindcss"; + +/* Configuration Tailwind v4 via CSS custom properties */ +@layer base { + :root { + --font-heading: 'Dela Gothic One', sans-serif; + --font-body: 'Roboto', sans-serif; + + /* Couleurs personnalisées La Banquise */ + --color-banquise-blue: 64, 180, 255; /* RGB for reuse in rgba() */ + --color-banquise-blue-hex: #40B4FF; + --color-banquise-blue-dark: 31, 93, 137; + --color-banquise-blue-dark-hex: #1F5D89; + --color-banquise-blue-light: 105, 183, 226; + --color-banquise-blue-light-hex: #69B7E2; + --color-banquise-blue-lightest: 165, 240, 255; + --color-banquise-blue-lightest-hex: #A5F0FF; + --color-banquise-gray: #F6F6F6; + } +} /* Variables CSS pour les polices et couleurs personnalisées */ :root { diff --git a/banquise-website/app/layout.tsx b/banquise-website/app/layout.tsx index 8e5a27a..6f123f9 100644 --- a/banquise-website/app/layout.tsx +++ b/banquise-website/app/layout.tsx @@ -1,4 +1,4 @@ -import './globals-test.css' +import './globals.css' import type { ReactNode } from 'react' export const metadata = { diff --git a/banquise-website/app/test-tailwind/page.tsx b/banquise-website/app/test-tailwind/page.tsx new file mode 100644 index 0000000..3eefa31 --- /dev/null +++ b/banquise-website/app/test-tailwind/page.tsx @@ -0,0 +1,55 @@ +"use client" + +export default function TestTailwind() { + return ( +
+
+

Test Tailwind CSS v4

+ +
+ {/* Test des couleurs de base */} +
+

Couleurs de base

+
+
Red
+
Blue
+
Green
+
Yellow
+
+
+ + {/* Test des espacements */} +
+

Espacements

+
+
p-2
+
p-4
+
p-6
+
+
+ + {/* Test des couleurs personnalisées */} +
+

Couleurs personnalisées Banquise

+
+
Texte banquise-blue
+
Background banquise-blue
+
Texte banquise-blue-dark
+
Background banquise-blue-dark
+
+
+ + {/* Test des animations */} +
+

Animations

+
+
Pulse animation
+
Bounce animation
+
Custom gentle float
+
+
+
+
+
+ ); +} \ No newline at end of file diff --git a/banquise-website/postcss.config.js b/banquise-website/postcss.config.js index 297ae46..fb8e0e3 100644 --- a/banquise-website/postcss.config.js +++ b/banquise-website/postcss.config.js @@ -1,17 +1,7 @@ -module.exports = {module.exports = {module.exports = { - +export default { plugins: { - - tailwindcss: {}, plugins: [ plugins: { - + '@tailwindcss/postcss': {}, autoprefixer: {}, - - }, 'tailwindcss', '@tailwindcss/postcss': {}, - + }, } - 'autoprefixer', autoprefixer: {}, - - ], }, - -}}; diff --git a/banquise-website/tailwind.config.js b/banquise-website/tailwind.config.js deleted file mode 100644 index acf17cd..0000000 --- a/banquise-website/tailwind.config.js +++ /dev/null @@ -1,134 +0,0 @@ -export default {/** @type {import('tailwindcss').Config} *//** @type {import('tailwindcss').Config} *//** @type {import('tailwindcss').Config} */ - - content: [ - - './app/**/*.{js,ts,jsx,tsx}',module.exports = { - - './components/**/*.{js,ts,jsx,tsx}', - - './lib/**/*.{js,ts,jsx,tsx}', content: [module.exports = {export default { - - ], - -} './app/**/*.{js,ts,jsx,tsx,mdx}', - - './pages/**/*.{js,ts,jsx,tsx,mdx}', content: [ content: [ - - './components/**/*.{js,ts,jsx,tsx,mdx}', - - './lib/**/*.{js,ts,jsx,tsx,mdx}', './app/**/*.{js,ts,jsx,tsx,mdx}', './app/**/*.{ts,tsx,js,jsx}', - - ], - - theme: { './pages/**/*.{js,ts,jsx,tsx,mdx}', './components/**/*.{ts,tsx,js,jsx}', - - extend: { - - fontFamily: { './components/**/*.{js,ts,jsx,tsx,mdx}', './lib/**/*.{ts,tsx,js,jsx}', - - heading: ['var(--font-heading)'], - - body: ['var(--font-body)'], './pages/**/*.{ts,tsx,js,jsx}', - - }, - - colors: { // Or if using `src` directory: './src/**/*.{ts,tsx,js,jsx}', - - banquise: { - - blue: '#40B4FF', './src/**/*.{js,ts,jsx,tsx,mdx}', './public/index.html', - - 'blue-dark': '#1F5D89', - - 'blue-light': '#69B7E2', ], ], - - 'blue-lightest': '#A5F0FF', - - gray: '#F6F6F6', theme: { theme: { - - }, - - }, extend: {}, extend: { - - keyframes: { - - float: { }, fontFamily: { - - '0%, 100%': { transform: 'translateY(0)' }, - - '50%': { transform: 'translateY(-10px)' }, plugins: [], heading: ['var(--font-heading)'], - - }, - - 'bubble-float-1': {} body: ['var(--font-body)'], - - '0%, 100%': { transform: 'translateY(0) translateX(0)' }, }, - - '33%': { transform: 'translateY(-15px) translateX(5px)' }, colors: { - - '66%': { transform: 'translateY(-8px) translateX(-3px)' }, banquise: { - - }, blue: '#40B4FF', - - 'ocean-shimmer': { 'blue-dark': '#1F5D89', - - '0%, 100%': { opacity: '0.3', transform: 'scale(1)' }, 'blue-light': '#69B7E2', - - '50%': { opacity: '0.6', transform: 'scale(1.05)' }, 'blue-lightest': '#A5F0FF', - - }, gray: '#F6F6F6', - - 'gentle-float': { }, - - '0%, 100%': { transform: 'translateY(0) rotate(0deg)' }, }, - - '50%': { transform: 'translateY(-15px) rotate(1deg)' }, keyframes: { - - }, float: { - - slideUp: { '0%, 100%': { transform: 'translateY(0)' }, - - '0%': { opacity: '0', transform: 'translateY(10px)' }, '50%': { transform: 'translateY(-10px)' }, - - '100%': { opacity: '1', transform: 'translateY(0)' }, }, - - }, 'bubble-float-1': { - - }, '0%, 100%': { transform: 'translateY(0) translateX(0)' }, - - animation: { '33%': { transform: 'translateY(-15px) translateX(5px)' }, - - float: 'float 3s ease-in-out infinite', '66%': { transform: 'translateY(-8px) translateX(-3px)' }, - - 'bubble-1': 'bubble-float-1 4s ease-in-out infinite', }, - - 'ocean-shimmer': 'ocean-shimmer 2s ease-in-out infinite', 'ocean-shimmer': { - - 'gentle-float': 'gentle-float 6s ease-in-out infinite', '0%, 100%': { opacity: '0.3', transform: 'scale(1)' }, - - slideUp: 'slideUp 0.3s ease-out', '50%': { opacity: '0.6', transform: 'scale(1.05)' }, - - }, }, - - }, 'gentle-float': { - - }, '0%, 100%': { transform: 'translateY(0) rotate(0deg)' }, - - plugins: [], '50%': { transform: 'translateY(-15px) rotate(1deg)' }, - -} }, - slideUp: { - '0%': { opacity: '0', transform: 'translateY(10px)' }, - '100%': { opacity: '1', transform: 'translateY(0)' }, - }, - }, - animation: { - float: 'float 3s ease-in-out infinite', - 'bubble-1': 'bubble-float-1 4s ease-in-out infinite', - 'ocean-shimmer': 'ocean-shimmer 2s ease-in-out infinite', - 'gentle-float': 'gentle-float 6s ease-in-out infinite', - slideUp: 'slideUp 0.3s ease-out', - }, - }, - }, -};