display:flex
        transition #image-viewer's opacity from 0 to 1 over 300ms
        focus() on first <#image-viewer button />
    end
    def imageviewer.close()
        transition #image-viewer's opacity to 0 over 300ms
        hide #image-viewer
        set <#image-viewer img /> @src to ''
        set <#image-viewer img /> @alt to ''
        set <#image-viewer figcaption />'s textContent to ''
    end
    {# fmt:on #}
</script>
<figure id="image-viewer" _="on click imageviewer.close()">
    <picture>
 