modal: make block (closes #798)

- [x] main idea
- [x] bh templates + tmpl-specs
- [x] specs
- [x] gemini tests
@Coltspb I still don't understand this comment:

>  Apply the animation only at first opening, otherwise the animation will be played when page loaded.

What's wrong with applying CSS animation (`animation-name` property) for `modal_js_inited` selector. See #1028 for code