## Description Refactor hooks and components to improve structure, readability and reuse. ## Done when - [x] Duplicate logic is reduced. - [x] Hooks have clear and focused responsibilities. - [x] Components are split up where they have become too large. - [x] Shared logic is moved to reusable hooks/components where appropriate. - [x] Existing functionality is preserved. - [x] Relevant tests still pass after the refactor.