Replace inline circular-button markup and duplicated Badge classes with
first-class design-system components so every affordance is globally
controllable:
- IconButton (float / accent / cream-wash / brand-wash × sm / md / lg)
with optional count overlay; raised variants get the hover-lift
animation, flat variants keep transition-colors. No visual change.
- Badge gains an `as` prop so the search 'Clear' affordance renders as
a button with the exact same typography/pill.
- Navbar mobile search/menu + overlay close, and the search overlay's
mobile floating close, now use IconButton.
Cart icon buttons left inline for now — they combine size-specific
shadow with the count overlay and deserve a follow-up consolidation
once we add a shadow prop to IconButton.