The second question is about the div with the white background (called "main") ... How do I get the white background to extend all the way to the footer, even if it is not filled with content? Also, how can I get the footer to "push" down if there is more content? It seems that the sidebar is controlling the positioning of the footer, rather than the main text area. On other pages, I will have a lot more content and need the footer to be pushed down accordingly.
I think you have a lot of unnecessary positioning. When you put #line outside of #container in the markup and the position #main over it... it's just a lot of extra work for something those elements would do on their own without any positioning at all.
To fix your menu though, try changing the z-index on #line to a higher number.