EmailDetailScreen no longer calls the repository directly in initState. A new EmailDetailNotifier (AsyncNotifierProvider.autoDispose.family) owns the load + setFlag(seen) side effect; the screen watches the provider and renders via detail.when(loading/error/data). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>