nano-vertico takes advantage of vertico buffer mode to display the minibuffer prompt and contents inside the header line while completions are displayed in a regular buffer. Prompt can be changed and displayed in the modeline.
Note: nano-vertico is highly experimental and may not be safe for daily use
(require 'nano-vertico)
(nano-vertico-mode 1)