/* ===== Body ===== */
body {
  font-family: 'Fredoka One', 'Comic Sans MS';
  overflow: hidden; /* Sembunyikan scroll saat loading */
}

/* ===== Preloader Container ===== */
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: linear-gradient(-45deg, #d47e27, #ffd8a6, #ffffff, #ffe6cc);
  background-size: 400% 400%;
  animation: gradientMove 6s ease infinite;
  z-index: 9999;
  opacity: 1;
  transition: opacity 1s ease;
}

/* Gradien latar bergerak */
@keyframes gradientMove {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* ===== Logo ===== */
.loading {
  width: 120px;
  height: 120px;
  animation: wave 1.5s infinite ease-in-out, zoom 1.5s infinite ease-in-out;
  transform-origin: bottom center;
}

/* Melambaikan tangan */
@keyframes wave {
  0% {
    transform: rotate(0deg) scale(1);
  }
  20% {
    transform: rotate(15deg) scale(1.05);
  }
  40% {
    transform: rotate(-10deg) scale(1);
  }
  60% {
    transform: rotate(15deg) scale(1.05);
  }
  80% {
    transform: rotate(-5deg) scale(1);
  }
  100% {
    transform: rotate(0deg) scale(1);
  }
}

/* Efek zoom kecil */
@keyframes zoom {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}

/* ===== Loading Text ===== */
.loading-text {
  margin-top: 20px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #f2b477ff;
}

/* ===== Partikel ===== */
canvas {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}
