/* =========================================================
   Bitelo Design System – Animations
   ========================================================= */

@keyframes bit-fade-up {
	from {
		opacity: 0;
		transform: translateY(24px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes bit-fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes bit-scale-in {
	from {
		opacity: 0;
		transform: scale(0.94);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}

@keyframes bit-shimmer {
	0% { transform: translateX(0); }
	100% { transform: translateX(100%); }
}

@keyframes bit-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-6px); }
}

@keyframes bit-pulse {
	0%, 100% { transform: scale(1); opacity: 1; }
	50% { transform: scale(1.05); opacity: 0.85; }
}

@keyframes bit-spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

.bit-animate {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity var(--bit-transition-slow), transform var(--bit-transition-slow);
	will-change: opacity, transform;
}

.bit-animate.bit-visible {
	opacity: 1;
	transform: translateY(0);
}

.bit-fade-in {
	animation: bit-fade-in 0.5s var(--bit-transition) forwards;
}

.bit-fade-up {
	animation: bit-fade-up 0.55s var(--bit-transition) forwards;
}

.bit-scale-in {
	animation: bit-scale-in 0.45s var(--bit-bounce) forwards;
}

.bit-float {
	animation: bit-float 4s ease-in-out infinite;
}

.bit-pulse {
	animation: bit-pulse 2s ease-in-out infinite;
}

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

/* Stagger children */
.bit-animate-group > .bit-animate:nth-child(1) { transition-delay: 0.05s; }
.bit-animate-group > .bit-animate:nth-child(2) { transition-delay: 0.1s; }
.bit-animate-group > .bit-animate:nth-child(3) { transition-delay: 0.15s; }
.bit-animate-group > .bit-animate:nth-child(4) { transition-delay: 0.2s; }
.bit-animate-group > .bit-animate:nth-child(5) { transition-delay: 0.25s; }
.bit-animate-group > .bit-animate:nth-child(6) { transition-delay: 0.3s; }
.bit-animate-group > .bit-animate:nth-child(7) { transition-delay: 0.35s; }
.bit-animate-group > .bit-animate:nth-child(8) { transition-delay: 0.4s; }
