:root {
  color-scheme: dark;
  background: #000;
  color: #aaa;
  font: 14px system-ui, sans-serif;
}

body {
  margin: 0;
  min-height: 100vh;
  display: grid;
  place-items: center;
}

main {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.frame {
  position: relative;
  /* The stage keeps its 500x575 shape, scaled to fit the window. */
  height: min(calc(100vh - 48px), calc((100vw - 16px) * 575 / 500));
  aspect-ratio: 500 / 575;
}

#stage {
  width: 100%;
  height: 100%;
  display: block;
  /* The game ran at Flash's LOW quality: scale its pixels up rather than blurring them. */
  image-rendering: pixelated;
}

#start {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgb(0 0 0 / 0.6);
  color: #fff;
  font: inherit;
  font-size: 24px;
  cursor: pointer;
}

.keys a {
  color: #ccc;
}
