/* Atlas animacijos — žaidybinis atvaizdavimas vaikams */

/* Personažas (emoji) — švelnus judėjimas */
@keyframes mascot-idle {
  0%, 100% { transform: translateY(0) rotate(-2deg); }
  50%      { transform: translateY(-8px) rotate(2deg); }
}
@keyframes mascot-jump {
  0%   { transform: translateY(0) scale(1); }
  30%  { transform: translateY(-60px) scale(1.2); }
  50%  { transform: translateY(-30px) scale(1.1) rotate(15deg); }
  70%  { transform: translateY(-60px) scale(1.2) rotate(-15deg); }
  100% { transform: translateY(0) scale(1); }
}
@keyframes mascot-sad {
  0%, 100% { transform: translateY(0) rotate(0); }
  25%      { transform: translateY(4px) rotate(-5deg); }
  75%      { transform: translateY(4px) rotate(5deg); }
}
@keyframes mascot-walk {
  0%   { transform: translateX(-20vw) rotate(-3deg); }
  50%  { transform: translateX(50vw) rotate(3deg); }
  100% { transform: translateX(120vw) rotate(-3deg); }
}

.atlas-mascot {
  display: inline-block;
  font-size: 4rem;
  line-height: 1;
  animation: mascot-idle 2.5s ease-in-out infinite;
  filter: drop-shadow(0 4px 6px rgba(0,0,0,.2));
  user-select: none;
}
.atlas-mascot.jump    { animation: mascot-jump 1s cubic-bezier(.2,.8,.3,1) 1; }
.atlas-mascot.sad     { animation: mascot-sad 1s ease-in-out 2; filter: grayscale(0.5); }
.atlas-mascot.walking { animation: mascot-walk 6s linear infinite; position: fixed; bottom: 10px; left: 0; z-index: 900; pointer-events: none; }

/* Krintantys žvaigždės / taškai */
@keyframes star-fall {
  0%   { transform: translateY(-20vh) rotate(0); opacity: 1; }
  100% { transform: translateY(120vh) rotate(720deg); opacity: 0; }
}
.atlas-stars {
  position: fixed; inset: 0; pointer-events: none; z-index: 1500; overflow: hidden;
}
.atlas-stars span {
  position: absolute; top: 0; font-size: 2rem;
  animation: star-fall 3s linear forwards;
}

/* Judantis gradientas (žaismingas fonas) */
@keyframes kid-gradient {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
.kid-bg {
  background: linear-gradient(90deg, #ffd1dc, #c3ebff, #d4f7c5, #fff4c3, #ffd1dc);
  background-size: 400% 400%;
  animation: kid-gradient 15s ease infinite;
}

/* Taškų skaitiklis — spiruoklinis padidinimas */
@keyframes points-pop {
  0%   { transform: scale(1); }
  40%  { transform: scale(1.6); color: #ffc107; }
  100% { transform: scale(1); }
}
.points-pop { animation: points-pop 0.6s ease-out; display: inline-block; }

/* Progress bar — traukianti juostelė */
@keyframes progress-shine {
  0%   { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}
.kid-progress {
  height: 28px; border-radius: 14px; background: #e9ecef; overflow: hidden; position: relative;
}
.kid-progress > .fill {
  height: 100%; border-radius: 14px;
  background: linear-gradient(90deg, #28a745, #ffd700, #ff6b6b, #a855f7, #28a745);
  background-size: 200% 100%;
  animation: progress-shine 3s linear infinite;
  transition: width 0.8s cubic-bezier(.2,.8,.3,1);
  display: flex; align-items: center; justify-content: flex-end; padding-right: 8px;
  color: white; font-weight: bold; font-size: 0.9rem;
}

/* Šokantis tekstas */
@keyframes wobble {
  0%,100% { transform: rotate(-2deg); }
  50%     { transform: rotate(2deg); }
}
.wobble { animation: wobble 1.5s ease-in-out infinite; display: inline-block; }

/* Konfeti fono sluoksnis (lengvas, nebrangus) */
@keyframes confetti-float {
  0%   { transform: translateY(0) rotate(0); }
  100% { transform: translateY(105vh) rotate(540deg); }
}
.confetti-piece {
  position: fixed; top: -20px; width: 10px; height: 14px;
  pointer-events: none; z-index: 1400;
  animation: confetti-float 4s ease-in forwards;
}
