/* Night sky background */
.sky{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  background:
    radial-gradient(80% 50% at 50% 110%, rgba(255,120,40,.15), transparent 60%),
    radial-gradient(60% 50% at 85% 10%, rgba(120,80,255,.08), transparent 60%),
    radial-gradient(50% 40% at 10% 20%, rgba(255,80,40,.06), transparent 60%),
    linear-gradient(180deg, #05060a 0%, #07050e 40%, #0d0712 100%);}
.stars{position:fixed;inset:0;z-index:1;pointer-events:none}
.stars::before,.stars::after{content:"";position:absolute;inset:0;
  background-image:
    radial-gradient(1px 1px at 8% 12%, rgba(240,230,220,.9), transparent 60%),
    radial-gradient(1px 1px at 22% 34%, rgba(200,220,255,.7), transparent 60%),
    radial-gradient(1px 1px at 47% 8%, rgba(255,240,220,.8), transparent 60%),
    radial-gradient(1px 1px at 65% 44%, rgba(220,210,255,.7), transparent 60%),
    radial-gradient(1px 1px at 81% 28%, rgba(255,230,210,.8), transparent 60%),
    radial-gradient(2px 2px at 13% 62%, rgba(240,230,220,.8), transparent 60%),
    radial-gradient(1px 1px at 38% 78%, rgba(210,225,255,.7), transparent 60%),
    radial-gradient(1px 1px at 56% 91%, rgba(255,230,210,.7), transparent 60%),
    radial-gradient(1px 1px at 74% 71%, rgba(220,220,255,.8), transparent 60%),
    radial-gradient(2px 2px at 92% 82%, rgba(255,240,220,.9), transparent 60%),
    radial-gradient(1px 1px at 28% 50%, rgba(200,220,255,.6), transparent 60%),
    radial-gradient(1px 1px at 89% 54%, rgba(255,230,210,.7), transparent 60%);
  opacity:.9;animation:twinkle 4s ease-in-out infinite alternate}
.stars::after{background-position:18% 6%;opacity:.4;animation-delay:2s}
@keyframes twinkle{from{opacity:.5}to{opacity:1}}
.milky{position:fixed;inset:-10%;z-index:1;pointer-events:none;opacity:.5;
  background:radial-gradient(60% 30% at 50% 40%, rgba(255,200,160,.06), transparent 70%),
    radial-gradient(70% 40% at 30% 70%, rgba(180,140,255,.05), transparent 70%);
  filter:blur(30px)}
.embers{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.ember{position:absolute;width:3px;height:3px;border-radius:50%;
  background:radial-gradient(circle, #ffd39a 0%, #ff8a2a 60%, transparent 75%);
  box-shadow:0 0 8px 1px rgba(255,140,40,.8);opacity:0;animation:rise 14s linear infinite}
@keyframes rise{
  0%{transform:translate(0,0) scale(.8);opacity:0}
  8%{opacity:.9}80%{opacity:.6}
  100%{transform:translate(var(--dx,0px),-110vh) scale(.2);opacity:0}}
