<article class="luminous noanimated" role="img" aria-label="Cartoon of lighted candle"></article>
body {
  background: #212;
}

.luminous {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 10vmin;
  height: 40vmin;
  box-shadow:
    0 -10vmin 0 -4.66vmin #000;
}

.luminous::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: inset 0 1vmin 1vmin -1vmin #fffc;
  background:
    linear-gradient(#0000,#0004),
    radial-gradient(100% 500% at 100% 0, #0000 47%, #000 47.5% 53%, #0000 53.5%) 50% 0 / 100% 7%,
    
    radial-gradient(100% 100% at 50% 0, #d8bb9900, #b89b79cc),
    linear-gradient(#0000, #4316),
    linear-gradient(#2120 30%, #212d),
    linear-gradient(90deg, #db98, #0000 30% 75%, #d8bb99cc),
    radial-gradient(farthest-side at 60% 30%, #0000, #da6c 99.99%, #edb) 40% 0 / 90% 7%,
    
    linear-gradient(#edb, #cb9);
  background-repeat: no-repeat;
  border-radius: 100% / 10% 20% 0 0;
  filter: blur(0.07vmin) contrast(1.6);
  mix-blend-mode: color-dodge;
}

@keyframes flame {
  0%, 100% {
    transform: translate(-50%, -106%) scale(1) rotate(1deg);
  }
  30% {
    transform: translate(-50%, -105%) scale(1.02) rotate(0);
  }
  60% {
    transform: translate(-50%, -105.5%) scale(0.99) rotate(-0.5deg);
  }
}

.luminous::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -110%);
  transform-origin: 50% 100%;
  width: 70%;
  height: 35%;
  background: 
    radial-gradient(circle at 50% 90%, #212c, #fa0c, #2120 50%),
    #ffd;
  background-repeat: no-repeat;
  border-radius: 100% / 125% 125% 60% 60%;
  box-shadow:
    inset 0 1vmin 2vmin -0.75vmin #f80c,
    inset 0 -1vmin 1.25vmin -0.75vmin #00f8,
    0 -1vmin 1vmin #ec04,
    0 0 20vmax #ff0c,
    0 0 30vmax 3vmin #fff8,
    0 0 30vmax 15vmin #c802;
  filter: blur(0.15vmin) contrast(1.5)
}

.luminous.animated::after {
  animation: flame 3s infinite alternate;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.