rework css layout structure to work better with scroll bars

Please note that the `min-height` property of the html tag style needs to be kept up to date with the height of the menu bar + toolbar. There's a comment about this in both the html and the css.