The order of mounted callback invocation with nested components

Does anyone have an idea of why would LiveView change mounted callback order with nested LiveComponent levels or better yet, what it is exactly that influences its logic in determining which component level to mount first?

In my app I have two completely separated LiveView pages. In the first one I have two levels of LiveComponents (a list of LiveComponents and within each of those another list of LiveComponents). On the other LiveView page I also have two levels although a totally different use-case, but this structural part is similar. Different level components are of different modules.

In the first case, when mounting LiveView follows the rendering order of the components (top-down, e.g the top container Hook in LiveView template, Level1-Component-1, Level2-Component-1, Level2-Component2, Level1-Component-2, …) which is logical.

However in the second case, it first mounts all of the components in the second level, then the top container hook and then the components in the first level.