* fix: build inline script using Rollup
This reduces code duplication and allows the theme engine to work the
same without modifying the code in two places. It does extra extra deps,
but I tried to keep them to a minimum.
* change code comment
* remove unnecessary constant
* WIP: detect private browsing and safari blocked cookies
* just check for indexeddb
* just check for indexeddb
* change warning text
* change text
* change text again
* change text again
fixes#444
The point of this PR is to make it easier to implement scrollbars (#683).
With this PR, the themes move from a body tag-based system (e.g. `body.theme-scarlet`) to a system where they simply declare global CSS and we use CSS specificity order to give us the right theme.