html, body {
  margin: 0;
  padding: 0;
  width: 100vw;
  height: 100vh;
  background: black;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  overscroll-behavior: contain;
}

#container {
  width: 240px;
  height: 320px;
  position: relative;
}

#background > *, #animated > * {
  position: absolute;
  top: 0;
  left: 0;
}

#animated > * {
  z-index: 10;
}

#background > .background-middle {
  top: 108px;
}

#background > .background-middle.lit {
  width: 20px;
  height: 127px;
  left: 10px;
  top: calc(108px + 27px);
  background-position: 0 -27px;
  background-repeat: no-repeat;
  background-image: url(./img/background-candles-2.png);
  z-index: 1;
  opacity: 0;
}

#background > .background-middle.right {
  right: 0px;
  left: auto;
}

#background > .background-middle.right.lit {
  right: 10px;
  top: calc(108px + 27px);
  background-position: -200px -27px;
}

#background-candles {
  width: 220px;
  height: 127px;
  left: 10px;
  background-image: url(./img/background-candles.png);
  background-position: 0px 0px;
  background-repeat: no-repeat;
}

#background-bottom {
  top: 235px;
}

#eyes {
  width: 50px;
  height: 26px;
  position: absolute;
  top: 33px;
  left: 94px;
  transform: scale(1.025);
  background-image: url(./img/eyes.png);
  background-position: 0px 0px;
  background-repeat: no-repeat;
}

.candle {
  width: 47px;
  height: 44px;
  position: absolute;
  background-position: 0px 0px;
  background-repeat: no-repeat;
}

#candle-0 {
  background-image: url(./img/fire-0.png);
  top: 153px;
  left: 32px;
}

#candle-1 {
  background-image: url(./img/fire-1.png);
  top: 133px;
  left: 76px;
}

#candle-2 {
  background-image: url(./img/fire-2.png);
  top: 147px;
  left: 119px;
}

#candle-3 {
  background-image: url(./img/fire-3.png);
  top: 166px;
  left: 162px;
}

.smoke {
  width: 43px;
  height: 90px;
  position: relative;
  bottom: 60px;
  left: 2px;
  background-image: url(./img/smoke.png);
  background-position: 0px 0px;
  background-repeat: no-repeat;
}