No problem Bubble will only drop a group inside of a parent group if the entire group fits into the parent group. In that header, space is really little tight and those groups are almost the exact same size, so I don’t think the parent group red border is really visible in that scenario (the red border becomes visible to alert you that a group is being placed within a parent group). For almost everything else (aside from tight groups like that) - you will always know something is going to be placed within a parent group because the borders of the parent group will turn red. Tricky with the header, but for basically everything else it makes things easier, especially when you need to drag a lot of content into a group for responsive purposes, for example.
Showing and hiding works (it doesn’t cost you any workflows since nothing is being changed in the database), but I do think it’s better to use conditional statements for elements that are visible based on whether a User is logged in or out. Custom states are also especially useful to implement in order to show/hide different content based on the value of a custom state. They’re a little tricky for me to explain, but custom states can be set on the page, or on any element itself, and they also don’t cost any workflows because you’re not making changes to the database there as well.
An example of custom states and visibility conditions would be if you had a homepage, with tabs that were supposed to show different content based on the tab a User clicks on. Instead of setting up show/hide workflows for each tab (Ex: Home, Newsfeed, Store), you can create a custom state on the page itself. In the workflow this would be:
“When Home is clicked”
Element Actions → Set State → Element: index (the page itself, or any element of your choice), Custom State: create a new custom state… “Current View” Type: Text, List: No.
And the value is the label what we will then use in conditional formatting. So when ‘home’ is clicked, we set the Current View custom state to “Home” (by manually typing it in the value input):
Then the next step is to tell Bubble what to do (or show) when the state is Home. I just created a quick example on the index page of your app. In the conditional formatting of the ‘Home Group’ there is this conditional statement:
This same process is used for the other buttons and groups, which are shown/hidden based on the most recently clicked button (which set the current value of the Current View custom state). This process is useful especially if you are planning on building a mobile app because all content must be on one page for native mobile apps, shown and hidden using groups and custom states like this.