import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:google_fonts/google_fonts.dart'; import '../theme/app_theme.dart'; import '../providers/user_provider.dart'; import '../screens/log/pad_tracker_screen.dart'; class PadTrackerCard extends ConsumerWidget { const PadTrackerCard({super.key}); @override Widget build(BuildContext context, WidgetRef ref) { final user = ref.watch(userProfileProvider); if (user == null || !user.isPadTrackingEnabled) return const SizedBox.shrink(); return GestureDetector( onTap: () { Navigator.push( context, MaterialPageRoute(builder: (context) => const PadTrackerScreen()), ); }, child: Container( padding: const EdgeInsets.all(16), decoration: BoxDecoration( color: AppColors.menstrualPhase.withOpacity(0.1), borderRadius: BorderRadius.circular(16), border: Border.all(color: AppColors.menstrualPhase.withOpacity(0.3)), boxShadow: [ BoxShadow( color: AppColors.menstrualPhase.withOpacity(0.05), blurRadius: 8, offset: const Offset(0, 4), ), ], ), child: Row( children: [ Container( padding: const EdgeInsets.all(10), decoration: BoxDecoration( color: AppColors.menstrualPhase.withOpacity(0.2), shape: BoxShape.circle, ), child: const Icon(Icons.timer_outlined, color: AppColors.menstrualPhase, size: 24), ), const SizedBox(width: 16), Expanded( child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( 'Pad Tracker', style: GoogleFonts.outfit( fontSize: 16, fontWeight: FontWeight.w600, color: AppColors.charcoal, ), ), const SizedBox(height: 4), if (user.lastPadChangeTime != null) Text( 'Tap to update', style: GoogleFonts.outfit(fontSize: 12, color: AppColors.warmGray), ) else Text( 'Track your change', style: GoogleFonts.outfit(fontSize: 12, color: AppColors.warmGray), ), ], ), ), const Icon(Icons.chevron_right, color: AppColors.menstrualPhase), ], ), ), ); } }