/* ---------- all-levels-complete popup (asset-driven, fully opaque, shown after the final level) ---------- */
#allLevelsCompleteScreen{
  position:fixed;inset:0;z-index:1500;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:transparent;
  overflow:hidden;
  transition:opacity .35s ease,transform .35s ease;
}
#allLevelsCompleteScreen::after{
  content:"";position:absolute;inset:0;
  background:rgba(0,0,0,.5);backdrop-filter:blur(3px);
}
#allLevelsCompleteScreen.hidden{opacity:0;transform:scale(.96);pointer-events:none;}

#alcConfetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1;}
#alcConfetti .alc-confetti-piece{position:absolute;top:-5%;border-radius:2px;animation:alcConfettiFall linear forwards;}
@keyframes alcConfettiFall{to{transform:translateY(115vh) rotate(560deg);opacity:.25;}}

.alc-board{
  position:relative;width:84%;max-width:340px;z-index:2;
  display:flex;flex-direction:column;align-items:center;
  opacity:0;animation:alcBoardIn .5s cubic-bezier(.34,1.56,.64,1) .05s forwards;
}
.alc-board-container{position:relative;width:100%;}
.alc-board-img{width:100%;display:block;}
@keyframes alcBoardIn{from{opacity:0;transform:translateY(24px) scale(.9);}to{opacity:1;transform:translateY(0) scale(1);}}

/* crown overlaps the board's top leafy/wood edge, like the level-complete stars */
.alc-crown{
  position:relative;z-index:3;width:30%;margin-bottom:-16%;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.55));
  opacity:0;transform:scale(0);
  animation:alcCrownPop .5s cubic-bezier(.34,1.56,.64,1) .15s forwards,
            alcCrownPulse 2.2s ease-in-out 1s infinite;
}
@keyframes alcCrownPop{from{opacity:0;transform:scale(0) rotate(-20deg);}to{opacity:1;transform:scale(1) rotate(0);}}
@keyframes alcCrownPulse{0%,100%{transform:scale(1) rotate(0);}50%{transform:scale(1.08) rotate(-3deg);}}

.alc-board-content{
  position:absolute;inset:0;
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;
  z-index:2;padding:23% 10% 8%;
}

.alc-title{width:93%;margin-bottom:6px;}
.alc-title img{width:100%;height:auto;display:block;}

.alc-msg{
  font-family:"Baloo 2",sans-serif;
  font-size:26px;line-height:31px;font-weight:700;color:#fff;
  text-shadow:0px 4px 0 #000;
  text-align:center;margin-bottom:26px;
}

.alc-home-btn{
  width:46%;border:none;background:none;padding:0;cursor:pointer;
  opacity:0;transform:scale(0);
  animation:alcBtnPop .45s cubic-bezier(.34,1.56,.64,1) .5s forwards;
}
.alc-home-btn img{width:100%;display:block;}
@keyframes alcBtnPop{from{opacity:0;transform:scale(0);}to{opacity:1;transform:scale(1);}}
.alc-home-btn:active img{filter:brightness(.9);}
