Bottom Notification Widget (refator pra padrão topbar)
Substituição do InstallAppFloatingWidget por BottomNotification config-driven (app/components/layout/BottomNotification.tsx). O widget flutuante deixa de ser específico só pra "instalar app" e vira uma fila de tipos configuráveis, espelhando a arquitetura do topbar (types, store, handlers, definitions queue). O componente legado (InstallAppFloatingWidget.tsx, ~200 linhas) foi removido.
Seis tipos de notificação suportados:download_app, push_notify, rewards_available, referral, telegram e tournament. Cada brand define quais ficam habilitados e em qual ordem de prioridade — o primeiro que passa no shouldShow renderiza, igual à lógica do topbar.
Separação dados × runtime:app/config/bottom-notifications.config.ts carrega só dados puros (lista de enabled, rotationDelaySeconds, params por tipo) e é overrideable por brand. A lógica runtime (ícones Lucide, ctaHref/onCta, predicados shouldShow, estratégia de storage) fica em app/layouts/bottom-notification/handlers.ts — não overrideable, espelha 1:1 o buildTopbarDefinitions.
rotationDelaySeconds configurável: com 0 (default) o swap pro próximo widget elegível é instantâneo após dismiss, igual ao topbar. Valores maiores dão um "respiro" antes do próximo slide-up.
Revalidação reativa em auth/rewards: quando o usuário loga, desloga ou ganha um reward, a fila reavalia automaticamente (paridade com o topbar) — sem precisar navegar pra atualizar o estado do widget.