/* lbfs6-interactions.css — animation presets + interaction utility classes (Chunk 12). */

.lbfs6-anim {
	--lbfs6-anim-duration: 600ms;
	--lbfs6-anim-delay: 0ms;
	opacity: 0;
	transition:
		opacity var(--lbfs6-anim-duration) ease-out var(--lbfs6-anim-delay),
		transform var(--lbfs6-anim-duration) ease-out var(--lbfs6-anim-delay),
		filter var(--lbfs6-anim-duration) ease-out var(--lbfs6-anim-delay);
	will-change: opacity, transform, filter;
}

.lbfs6-anim.is-visible {
	opacity: 1;
	transform: none;
	filter: none;
}

.lbfs6-anim--fade-in       { /* default — only opacity transitions */ }
.lbfs6-anim--slide-up      { transform: translateY(24px); }
.lbfs6-anim--slide-down    { transform: translateY(-24px); }
.lbfs6-anim--slide-left    { transform: translateX(24px); }
.lbfs6-anim--slide-right   { transform: translateX(-24px); }
.lbfs6-anim--scale-in      { transform: scale(0.92); }
.lbfs6-anim--blur-in       { filter: blur(12px); }

/* Hidden state for show/hide/toggle interaction targets. */
.lbfs6-int-hidden {
	display: none !important;
}

/* Reduced motion — respect user preference. */
@media (prefers-reduced-motion: reduce) {
	.lbfs6-anim {
		transition: none;
		opacity: 1;
		transform: none;
		filter: none;
	}
}
