import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:google_fonts/google_fonts.dart'; import 'dart:ui'; class MobileScaffold extends ConsumerWidget { final Widget child; final int currentIndex; final Function(int) onIndexChanged; const MobileScaffold({ super.key, required this.child, required this.currentIndex, required this.onIndexChanged, }); @override Widget build(BuildContext context, WidgetRef ref) { return Scaffold( extendBody: true, backgroundColor: Colors.black, // Base color body: Stack( fit: StackFit.expand, children: [ // Global Background Container( decoration: const BoxDecoration( gradient: RadialGradient( center: Alignment.center, radius: 1.5, colors: [ Color(0xFF1C1C1E), Color(0xFF000000), ], ), ), ), // Content child, ], ), bottomNavigationBar: ClipRRect( child: BackdropFilter( filter: ImageFilter.blur(sigmaX: 20, sigmaY: 20), child: Container( decoration: BoxDecoration( color: const Color(0xFF1C1C1E).withOpacity(0.85), border: Border( top: BorderSide( color: Colors.white.withOpacity(0.1), width: 0.5, ), ), ), child: BottomNavigationBar( currentIndex: currentIndex, onTap: onIndexChanged, backgroundColor: Colors.transparent, type: BottomNavigationBarType.fixed, elevation: 0, selectedItemColor: Colors.white, unselectedItemColor: Colors.white38, selectedLabelStyle: GoogleFonts.inter(fontWeight: FontWeight.w600, fontSize: 11), unselectedLabelStyle: GoogleFonts.inter(fontWeight: FontWeight.w500, fontSize: 11), items: const [ BottomNavigationBarItem( icon: Icon(Icons.live_tv_rounded), label: 'Live', ), BottomNavigationBarItem( icon: Icon(Icons.movie_outlined), activeIcon: Icon(Icons.movie_rounded), label: 'Movies', ), BottomNavigationBarItem( icon: Icon(Icons.video_library_outlined), activeIcon: Icon(Icons.video_library_rounded), label: 'Series', ), BottomNavigationBarItem( icon: Icon(Icons.settings_outlined), activeIcon: Icon(Icons.settings_rounded), label: 'Settings', ), ], ), ), ), ), ); } }