- getProfessionals() now accepts optional search param sent to ?search= - updateCity only triggers the initial load (city no longer used as filter) - Search field debounces 450ms before firing API call - TextEditingController added so clear button also resets the field - Client-side filtering removed (API now handles it and returns top 7) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>