/* by.coach shared base styles */
:root {
	--ease-out: cubic-bezier(0.05, 0.7, 0.1, 1);
	--ease-standard: cubic-bezier(0.2, 0, 0, 1);
}

body {
	font-size: 14px;
	line-height: 1.5;
	color: #0a0a0a;
	background: #ffffff;
}

.dark body {
	color: #fafafa;
	background: #0f0f0f;
}

/* Smooth transitions */
* {
	transition-property: background-color, border-color, color, fill, stroke;
	transition-duration: 150ms;
	transition-timing-function: var(--ease-standard);
}

/* Animations */
@keyframes slide-up {
	from {
		opacity: 0;
		transform: translateY(12px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes fade-in {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
.animate-slide-up {
	animation: slide-up 0.5s var(--ease-out) both;
}
.animate-fade-in {
	animation: fade-in 0.4s var(--ease-out) both;
}
.delay-100 {
	animation-delay: 100ms;
}
.delay-200 {
	animation-delay: 200ms;
}
.delay-300 {
	animation-delay: 300ms;
}
