Challenge: Adaptive sub-component structure for item inspection in menu

I am attempting to create a menu with 3d items, where each item can be inspected further. This inspection means you can keep zooming in to sub-components.
In order to explain the concept in more detail, I made an example project with trees.

With this project I can mouseover modular trees, and select one, which will make it zoom in to said tree. For this example I made the items consist of three different levels: Trees, Branches, Fruit.

Mousing over a tree will make it highlight. If I mouseover parts of a tree, like branches or fruit, the whole tree will highlight.

I start on the inspection level of trees. Selecting one will then zoom in and will then bring me to an inspection level of branches.

-When a tree is selected, I can highlight and select branches.
-If I mouseover a branch or its fruit, the branch and fruit get highlighted.
-If an unselected tree is visible in the background, or next to it, its branches should not be selectable.
-A mouseover to the trunk will not do anything.
-Clicking on a branch or its fruit will zoom in on it.

-When a branch is selected, I should be able to highlight and select a fruit.
-Neighbouring fruit of an unselected branch should not be selectable.
-A mouseover on a trunk or branch does nothing.
-Clicking on a fruit will zoom in, but do nothing after this.

In order to make it easy for a future designer to compose new items, I used inheritance and a scene component where you can attach actors:
ActorSetup

These fruit-trees are just for the example, but what if I needed other items, like a car with all its sub-components? Or a country selectable down to a neighbourhood?

The structure behind these examples is all the same. A simple tree-structure branching into many different components. But then there are a few cases which would add complexity to the structure:

I tried many things to make this work, but I just cant figure out a way to make a solid and adaptive structure. It always ends up a complicated mess, although I suspect there should be a very simple solution.

So how would you create an easy to use yet versatile structure?
Would you use inheritance? Actor components? Interfaces?

P.S. I am currently using UE 5.1 and blueprints. I know how to make a highlight and mouseover. I just need to know how to structure this.