import 'package:flutter/material.dart'; class AppTheme { static const Color primaryColor = Color(0xFFFF6B35); static const Color secondaryColor = Color(0xFF2C3E50); static const Color backgroundColor = Color(0xFFF8F9FA); static const Color cardColor = Colors.white; static const Color textPrimary = Color(0xFF2C3E50); static const Color textSecondary = Color(0xFF7F8C8D); static const Color accentColor = Color(0xFFFFA726); static ThemeData get lightTheme { return ThemeData( useMaterial3: true, colorScheme: ColorScheme.fromSeed( seedColor: primaryColor, brightness: Brightness.light, ), scaffoldBackgroundColor: backgroundColor, appBarTheme: const AppBarTheme( backgroundColor: Colors.transparent, elevation: 0, iconTheme: IconThemeData(color: textPrimary), titleTextStyle: TextStyle( color: textPrimary, fontSize: 20, fontWeight: FontWeight.bold, ), ), textTheme: const TextTheme( headlineLarge: TextStyle( fontSize: 32, fontWeight: FontWeight.bold, color: Colors.white, height: 1.1, ), headlineMedium: TextStyle( fontSize: 24, fontWeight: FontWeight.bold, color: textPrimary, ), titleLarge: TextStyle( fontSize: 20, fontWeight: FontWeight.bold, color: textPrimary, ), titleMedium: TextStyle( fontSize: 16, fontWeight: FontWeight.w600, color: textPrimary, ), bodyLarge: TextStyle( fontSize: 16, fontWeight: FontWeight.w400, color: textPrimary, ), bodyMedium: TextStyle( fontSize: 14, fontWeight: FontWeight.w400, color: textSecondary, ), bodySmall: TextStyle( fontSize: 12, fontWeight: FontWeight.w400, color: textSecondary, ), ), elevatedButtonTheme: ElevatedButtonThemeData( style: ElevatedButton.styleFrom( backgroundColor: primaryColor, foregroundColor: Colors.white, elevation: 4, shadowColor: primaryColor.withOpacity(0.3), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(16), ), padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 16), ), ), cardTheme: CardThemeData( color: cardColor, elevation: 8, shadowColor: Colors.black.withOpacity(0.1), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(16), ), ), ); } // Gradients personnalisés static const LinearGradient volcanoGradient = LinearGradient( begin: Alignment.topLeft, end: Alignment.bottomRight, colors: [ Color(0xFF1A1A1A), // Ciel sombre Color(0xFF2D1B1B), // Rouge sombre Color(0xFF8B0000), // Rouge foncé (lave) Color(0xFFFF4500), // Rouge-orange (lave chaude) Color(0xFFFF6347), // Orange (lave) Color(0xFF4169E1), // Bleu ciel Color(0xFF87CEEB), // Bleu clair ], stops: [0.0, 0.2, 0.4, 0.5, 0.6, 0.8, 1.0], ); static const LinearGradient profileGradient = LinearGradient( colors: [Color(0xFFFFB74D), Color(0xFFFF6B35)], begin: Alignment.topLeft, end: Alignment.bottomRight, ); static const LinearGradient cardGradient = LinearGradient( begin: Alignment.topLeft, end: Alignment.bottomRight, colors: [ Color(0xFF1A1A2E), Color(0xFF16213E), Color(0xFF0F3460), ], ); }