body, html {
  margin: 0;
  height: 100%;
  width: 100%;
  background: #ACDB6B;
  font-family: 'M PLUS Rounded 1c', 'Comic Sans MS', cursive, sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f8e9f0; /* soft pink-white text */
}

.stage {
  text-align: center;
  animation: fadeIn 0.8s ease;
}

.hidden { display: none; }

.title {
  font-size: 2.6rem;
  margin-bottom: 20px;
  text-shadow: 0 0 3px rgba(255,182,193,0.4); /* softer glow */
}

.soft-pink {
  color: #f8cce0; /* pastel pink text */
  text-shadow: 0 0 3px rgba(255,182,193,0.4);
}

.subtitle {
  font-size: 1.4rem;
  margin-top: 10px;
  color: #f8cce0;
}

.sticker {
  width: 350px;
  margin: 20px auto;
  display: block;
  filter: drop-shadow(0 0 6px rgba(255,255,255,0.3));
}

.inline-sticker {
  width: 48px;   /* bigger inline heart gif */
  height: 48px;
  vertical-align: middle;
  margin-left: 8px;
}

.buttons {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 20px;
}

.btn {
  padding: 14px 28px;
  border: none;
  border-radius: 30px;
  background: #fff;
  cursor: pointer;
  font-size: 1.2rem;
  font-family: inherit;
  color: #ff69b4; /* cute pink text */
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
  transition: transform 0.3s ease, background 0.3s ease;
}

.btn:hover {
  transform: scale(1.1);
  background: #f0f0f0;
}

/* Animations */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes wiggle {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(5deg); }
  75% { transform: rotate(-5deg); }
}

.laughing {
  animation: wiggle 1s infinite;
}