/* [project]/src/app/subcaddy.css [app-client] (css) */
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes fadeSlideIn {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fillBar {
  from {
    width: 0%;
  }

  to {
    width: 100%;
  }
}

@keyframes countUp {
  from {
    opacity: 0;
    transform: scale(.8);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateX(-12px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes popIn {
  from {
    opacity: 0;
    transform: scale(.9)translateY(10px);
  }

  to {
    opacity: 1;
    transform: scale(1)translateY(0);
  }
}

.sc-spinner {
  animation: 1s linear infinite spin;
}

.sc-progress-fill {
  width: 0%;
  animation: 3.5s .3s forwards fillBar;
}

.sc-step-1 {
  opacity: 0;
  animation: .5s .6s forwards fadeSlideIn;
}

.sc-step-2 {
  opacity: 0;
  animation: .5s 1.4s forwards fadeSlideIn;
}

.sc-step-3 {
  opacity: 0;
  animation: .5s 2.2s forwards fadeSlideIn;
}

.sc-step-4 {
  opacity: 0;
  animation: .5s 3s forwards fadeSlideIn;
}

.sc-score-anim {
  opacity: 0;
  animation: .6s cubic-bezier(.34, 1.56, .64, 1) .3s forwards countUp;
}

.sc-stat-1 {
  opacity: 0;
  animation: .4s .7s forwards slideIn;
}

.sc-stat-2 {
  opacity: 0;
  animation: .4s .9s forwards slideIn;
}

.sc-stat-3 {
  opacity: 0;
  animation: .4s 1.1s forwards slideIn;
}

.sc-pop-in {
  animation: .5s cubic-bezier(.34, 1.56, .64, 1) forwards popIn;
}

@keyframes sc-bubble-rise {
  0% {
    opacity: 0;
    bottom: -90px;
    transform: translateX(-50%)scale(.3);
  }

  7% {
    opacity: 1;
    transform: translateX(-50%)scale(1.07);
  }

  12% {
    transform: translateX(-50%)scale(.96);
  }

  16% {
    transform: translateX(-50%)scale(1);
  }

  28% {
    transform: translateX(calc(12px - 50%))scale(1);
  }

  50% {
    transform: translateX(calc(-50% - 12px))scale(1);
  }

  72% {
    transform: translateX(calc(9px - 50%))scale(1);
  }

  88% {
    opacity: .85;
    transform: translateX(calc(-50% - 6px))scale(1);
  }

  100% {
    opacity: 0;
    bottom: calc(100% + 30px);
    transform: translateX(-50%)scale(.6);
  }
}

.sc-bubble-float {
  animation: linear forwards sc-bubble-rise;
}

@keyframes sc-bubble-pop {
  0% {
    opacity: 1;
    transform: translateX(-50%)scale(1);
  }

  35% {
    opacity: .9;
    transform: translateX(-50%)scale(1.45);
  }

  65% {
    opacity: .4;
    transform: translateX(-50%)scale(1.7);
  }

  100% {
    opacity: 0;
    transform: translateX(-50%)scale(.05);
  }
}

.sc-bubble-pop {
  animation: .28s cubic-bezier(.17, .67, .35, 1.2) forwards sc-bubble-pop;
}

@keyframes sc-ind-float {
  0% {
    opacity: 1;
    transform: translate(-50%)scale(.85);
  }

  20% {
    opacity: 1;
    transform: translate(-50%, -10px)scale(1.1);
  }

  100% {
    opacity: 0;
    transform: translate(-50%, -52px)scale(.9);
  }
}

.sc-ind-float {
  white-space: nowrap;
  pointer-events: none;
  z-index: 30;
  animation: .75s ease-out forwards sc-ind-float;
  position: absolute;
}

@keyframes sc-score-bump {
  0% {
    transform: scale(1);
  }

  40% {
    transform: scale(1.25);
  }

  100% {
    transform: scale(1);
  }
}

.sc-score-bump {
  animation: .3s cubic-bezier(.34, 1.56, .64, 1) sc-score-bump;
}

@keyframes sc-particle {
  0% {
    opacity: 1;
    transform: translate(0)scale(1);
  }

  100% {
    opacity: 0;
    transform: translate(var(--px), var(--py)) scale(0);
  }
}

.sc-particle {
  pointer-events: none;
  border-radius: 50%;
  animation: .4s ease-out forwards sc-particle;
  position: absolute;
}

/*# sourceMappingURL=src_app_subcaddy_24ca7eb5.css.map*/