6abe9fade0
Use IntersectionObserver on the ComposeBox wrapper in Feed.tsx to track its visibility. When visible, hide the FAB to avoid redundancy. When the user scrolls past the compose area, the FAB smoothly fades in with an upward slide animation. Extends LayoutStore with fabHidden state that is part of the snapshot so useSyncExternalStore triggers re-renders.