fix: hide sidebars on mobile, default print styles in finish_render
Closes #329: add @media(max-width: 45rem) rule to hide #leftbar and
#rightbar on narrow screens. Content area expands to fill the space
since the table-cell layout reflows automatically.
Closes #308: finish_render() now defaults print_styles to
[structure.css, print.css] so any future route calling it directly
gets sane print output without needing to pass print_styles explicitly.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>