import 'package:flutter/material.dart'; import 'page1.dart'; class Accueil extends StatelessWidget { const Accueil({super.key}); @override Widget build(BuildContext context) { return Scaffold( body: Container( decoration: const BoxDecoration( gradient: LinearGradient( begin: Alignment.topCenter, end: Alignment.bottomCenter, colors: [ Color(0xFF4A90E2), // Bleu médical Color(0xFF2E7D82), // Bleu-vert professionnel Color(0xFF1B5E62), // Bleu foncé ], ), ), child: SafeArea( child: SingleChildScrollView( child: Padding( padding: const EdgeInsets.symmetric(horizontal: 24.0), child: Column( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ const SizedBox(height: 40), // Logo et icône médicale Container( height: 120, width: 120, margin: const EdgeInsets.only(bottom: 20), decoration: BoxDecoration( color: Colors.white.withOpacity(0.15), shape: BoxShape.circle, border: Border.all( color: Colors.white.withOpacity(0.3), width: 2, ), ), child: const Icon( Icons.medical_services_outlined, size: 60, color: Colors.white, ), ), // Image principale Container( height: 300, margin: const EdgeInsets.only(bottom: 30), decoration: BoxDecoration( borderRadius: BorderRadius.circular(20), boxShadow: [ BoxShadow( color: Colors.black.withOpacity(0.2), blurRadius: 20, offset: const Offset(0, 10), ), ], ), child: ClipRRect( borderRadius: BorderRadius.circular(20), child: Image.asset( 'assets/image.jpeg', fit: BoxFit.cover, ), ), ), // Titre principal avec effet de glassmorphisme Container( padding: const EdgeInsets.all(24), decoration: BoxDecoration( color: Colors.white.withOpacity(0.15), borderRadius: BorderRadius.circular(20), border: Border.all( color: Colors.white.withOpacity(0.2), width: 1, ), boxShadow: [ BoxShadow( color: Colors.black.withOpacity(0.1), blurRadius: 20, offset: const Offset(0, 8), ), ], ), child: Column( children: [ const Text( 'TuberculoScan', style: TextStyle( fontSize: 32, color: Colors.white, fontWeight: FontWeight.bold, letterSpacing: 1.2, ), textAlign: TextAlign.center, ), const SizedBox(height: 8), Container( height: 3, width: 60, decoration: BoxDecoration( color: const Color(0xFF00E676), // Vert médical borderRadius: BorderRadius.circular(2), ), ), const SizedBox(height: 16), const Text( 'Détection Intelligente de la\nTuberculose Pulmonaire', style: TextStyle( fontSize: 18, color: Colors.white, fontWeight: FontWeight.w300, height: 1.4, ), textAlign: TextAlign.center, ), ], ), ), const SizedBox(height: 40), // Informations sur l'app Container( padding: const EdgeInsets.all(20), decoration: BoxDecoration( color: Colors.white.withOpacity(0.1), borderRadius: BorderRadius.circular(15), border: Border.all( color: Colors.white.withOpacity(0.2), width: 1, ), ), child: Row( children: [ const Icon( Icons.health_and_safety, color: Color(0xFF00E676), size: 24, ), const SizedBox(width: 12), const Expanded( child: Text( 'Diagnostic rapide et précis par IA', style: TextStyle( color: Colors.white, fontSize: 16, fontWeight: FontWeight.w400, ), ), ), ], ), ), const SizedBox(height: 40), // Bouton de connexion avec design moderne Container( height: 60, decoration: BoxDecoration( gradient: const LinearGradient( colors: [ Color(0xFF00E676), // Vert clair Color(0xFF00C853), // Vert foncé ], ), borderRadius: BorderRadius.circular(30), boxShadow: [ BoxShadow( color: const Color(0xFF00E676).withOpacity(0.4), blurRadius: 20, offset: const Offset(0, 8), ), ], ), child: ElevatedButton( onPressed: () { Navigator.pushReplacement( context, MaterialPageRoute( builder: (context) => PageConnexion()), ); }, style: ElevatedButton.styleFrom( backgroundColor: Colors.transparent, shadowColor: Colors.transparent, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(30), ), ), child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ const Icon( Icons.login_rounded, color: Colors.white, size: 24, ), const SizedBox(width: 12), const Text( 'Commencer le diagnostic', style: TextStyle( color: Colors.white, fontSize: 18, fontWeight: FontWeight.w600, letterSpacing: 0.5, ), ), ], ), ), ), const SizedBox(height: 20), // Bouton secondaire Container( height: 55, child: OutlinedButton( onPressed: () { // Action pour en savoir plus }, style: OutlinedButton.styleFrom( side: const BorderSide( color: Colors.white, width: 1.5, ), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(27.5), ), ), child: const Text( 'En savoir plus', style: TextStyle( color: Colors.white, fontSize: 16, fontWeight: FontWeight.w500, ), ), ), ), const SizedBox(height: 40), // Footer avec informations Container( padding: const EdgeInsets.all(16), child: Column( children: [ Row( mainAxisAlignment: MainAxisAlignment.center, children: [ const Icon( Icons.verified_user, color: Colors.white70, size: 16, ), const SizedBox(width: 8), const Text( 'Certifié médical', style: TextStyle( color: Colors.white70, fontSize: 12, ), ), ], ), const SizedBox(height: 8), const Text( 'Application développée en collaboration\navec des professionnels de santé', style: TextStyle( color: Colors.white60, fontSize: 11, height: 1.3, ), textAlign: TextAlign.center, ), ], ), ), const SizedBox(height: 20), ], ), ), ), ), ), ); } }