.academy-root {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  /* The large viewport: mobile toolbars sliding in and out must not resize and rebuild the scene. */
  height: 100vh;
  height: 100lvh;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  background: #86c3ea;
}
.academy-pixels {
  display: block;
  image-rendering: pixelated;
}
/* Dims the scene while a question is open. An overlay is far cheaper than a CSS filter on a canvas
   that repaints every frame. */
.academy-root::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgb(16 18 30);
  opacity: 0;
  transition: opacity 420ms ease;
}
