Add wildcard suffix to search terms and enable expand option in elasticlunr
to support prefix matching. This allows partial term matches (e.g., "switc"
will match "switch").
Refactor search container to use :focus-within for expanded state and
view-transition-name to freeze the search box during page navigation.
This prevents layout shifts caused by input shrinking when focus is lost
during the view transition. Update search.js to only clear suggestions
on modifier-click (new tab/window) to avoid jarring shrink during normal
navigation.