import 'package:flutter/material.dart'; import '../theme/app_colors.dart'; class RiotzScaffold extends StatelessWidget { const RiotzScaffold({ required this.body, this.appBar, this.bottomNavigationBar, this.floatingActionButton, this.useSafeArea = true, super.key, }); final Widget body; final PreferredSizeWidget? appBar; final Widget? bottomNavigationBar; final Widget? floatingActionButton; final bool useSafeArea; @override Widget build(BuildContext context) { return Scaffold( appBar: appBar, body: Stack( children: [ // Base Layer: Deep Black Container(color: AppColors.black), // Aesthetic Layer: Subtle Brutalist Gradient Positioned.fill( child: Container( decoration: BoxDecoration( gradient: LinearGradient( begin: Alignment.topCenter, end: Alignment.bottomCenter, colors: [ AppColors.black, AppColors.deepRed.withValues(alpha: 0.05), AppColors.black, ], ), ), ), ), // Texture Layer: Grunge Overlay // Note: Add 'assets/textures/noise.png' to pubspec and uncomment below /* Positioned.fill( child: Opacity( opacity: 0.03, child: Image.asset( 'assets/textures/noise.png', repeat: ImageRepeat.repeat, ), ), ), */ // Content Layer useSafeArea ? SafeArea(child: body) : body, ], ), bottomNavigationBar: bottomNavigationBar, floatingActionButton: floatingActionButton, ); } }