{# _canvas_shell.html — Standardized Canvas Layout (DSW-2) ========================================================= Intermediate template for canvases that want the standard 3-pane shell. New canvases EXTEND this instead of base.html directly. Layout (responsive flex): ┌─────────────────────────────────────────────┐ │ [Left Pane — optional, collapsible] │ │ ├──────────────────────────────────────┤ │ │ │ Canvas Header (title + actions) │ │ │ ├──────────────────────────────────────┤ │ │ │ Main Content Area │ │ │ └──────────────────────────────────────┘ │ │ [Right Pane — optional, collapsible] │ └─────────────────────────────────────────────┘ Usage — new canvas extending the shell: {% extends "includes/_canvas_shell.html" %} {% block canvas_has_left %}true{% endblock %} {# opt-in left pane #} {% block canvas_left %}