/*
 * The page around the app (plan M11): the theme's ground before Flutter
 * draws its first frame, and wherever the browser shows the page itself,
 * such as under its toolbars. PageColors keeps it in step with the app's own
 * theme afterwards. An external sheet, because the CSP allows no inline
 * styles.
 */
:root {
  color-scheme: light dark;
}

html,
body {
  margin: 0;
  background-color: #f5efe4;
}

@media (prefers-color-scheme: dark) {
  html,
  body {
    background-color: #3b0e1a;
  }
}

/*
 * Flutter's full-page mode makes the body fixed, inset 0, with overflow
 * hidden. Safari samples a fixed element at the top once for its bar colour
 * and never again, so a theme change left the bars in the old colour.
 * Pinned to every edge with overflow hidden, an absolute body lays out the
 * same, and Safari re-samples it.
 */
body {
  position: absolute !important;
}
