
/* Animation: Stroke Drawing */
.path-draw.svelte-44xh8y {
	stroke-dasharray: 60;
	stroke-dashoffset: 60;
	animation: svelte-44xh8y-draw 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

.path-draw-long.svelte-44xh8y {
	stroke-dasharray: 100;
	stroke-dashoffset: 100;
	animation: svelte-44xh8y-draw 0.8s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}

@keyframes svelte-44xh8y-draw {
	to {
		stroke-dashoffset: 0;
	}
}

/* Success Pop Effect */
.animate-success-pop.svelte-44xh8y {
	animation: svelte-44xh8y-success-pop 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

@keyframes svelte-44xh8y-success-pop {
	0% {
		transform: scale(0);
		opacity: 0;
	}
	50% {
		transform: scale(1.1);
		opacity: 1;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}

/* Ring Burst Effect */
.animate-ring-burst.svelte-44xh8y {
	animation: svelte-44xh8y-ring-burst 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

@keyframes svelte-44xh8y-ring-burst {
	0% {
		transform: scale(0.5);
		opacity: 0;
	}
	30% {
		opacity: 0.8;
	}
	100% {
		transform: scale(1.8);
		opacity: 0;
	}
}

/* Enhanced Impact shake for error */
.animate-error-impact.svelte-44xh8y {
	animation: svelte-44xh8y-error-impact 0.6s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}

@keyframes svelte-44xh8y-error-impact {
	0% {
		transform: scale(1);
	}
	10% {
		transform: scale(0.9) translate3d(-2px, 0, 0);
	}
	20% {
		transform: scale(0.9) translate3d(4px, 0, 0);
	}
	30%,
	50%,
	70% {
		transform: scale(1) translate3d(-6px, 0, 0);
	}
	40%,
	60% {
		transform: scale(1) translate3d(6px, 0, 0);
	}
	100% {
		transform: scale(1) translate3d(0, 0, 0);
	}
}

/* Pulse effect for all background rings */
.animate-pulse-soft.svelte-44xh8y {
	animation: svelte-44xh8y-pulse-soft 2.5s ease-in-out infinite;
}

@keyframes svelte-44xh8y-pulse-soft {
	0%,
	100% {
		transform: scale(1);
		opacity: 0.4;
	}
	50% {
		transform: scale(1.04);
		opacity: 0.15;
	}
}

/* Bounce-short for Warning */
.animate-bounce-short.svelte-44xh8y {
	animation: svelte-44xh8y-bounce-short 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;
}

@keyframes svelte-44xh8y-bounce-short {
	0% {
		transform: scale(0.3);
		opacity: 0;
	}
	60% {
		transform: scale(1.1);
		opacity: 1;
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}

/* Info Pop Up */
.animate-info-pop.svelte-44xh8y {
	animation: svelte-44xh8y-info-pop 0.6s cubic-bezier(0.17, 0.67, 0.83, 0.67) both;
}

@keyframes svelte-44xh8y-info-pop {
	0% {
		transform: translateY(10px) scale(0.8);
		opacity: 0;
	}
	100% {
		transform: translateY(0) scale(1);
		opacity: 1;
	}
}

/* Spin Slow for Processing */
.animate-spin-slow.svelte-44xh8y {
	animation: spin 3s linear infinite;
}

/* บังคับพฤติกรรมพื้นฐานของ embla container (Force basic embla container behavior) */
.embla__container.svelte-4w1eta {
	backface-visibility: hidden;
	will-change: transform;
}

@keyframes svelte-698jj1-shimmer {
	0% {
		transform: translateX(-100%);
	}
	100% {
		transform: translateX(100%);
	}
}
.animate-shimmer.svelte-698jj1 {
	animation: svelte-698jj1-shimmer 1.5s infinite;
}

.custom-scrollbar.svelte-ln955g::-webkit-scrollbar {
	width: 4px;
}
.custom-scrollbar.svelte-ln955g::-webkit-scrollbar-track {
	background: transparent;
}
.custom-scrollbar.svelte-ln955g::-webkit-scrollbar-thumb {
	background: rgba(156, 163, 175, 0.5); /* gray-400 equivalent */
	border-radius: 10px;
}
.custom-scrollbar.svelte-ln955g::-webkit-scrollbar-thumb:hover {
	background: rgba(107, 114, 128, 0.8); /* gray-500 equivalent */
}

.custom-scrollbar.svelte-1ydq08h::-webkit-scrollbar {
	width: 4px;
}
.custom-scrollbar.svelte-1ydq08h::-webkit-scrollbar-thumb {
	background: rgba(128, 128, 128, 0.2);
	border-radius: 10px;
}
.custom-scrollbar.svelte-1ydq08h::-webkit-scrollbar-track {
	background: transparent;
}

.rich-text-container .tiptap p.is-editor-empty:first-child::before {
	content: attr(data-placeholder);
	float: left;
	color: #adb5bd;
	pointer-events: none;
	height: 0;
}

.rich-text-container.svelte-19ktia1 {
	max-height: 400px;
	overflow-y: auto;
}

.prose {
	max-width: none;
}

/* จัดการการแสดงผลสำหรับอุปกรณ์จอสัมผัส (Touch Devices) */
@media (hover: none) {
	.group.svelte-apoc16 .opacity-0:where(.svelte-apoc16) {
		opacity: 1;
	}
	.group.svelte-apoc16 .sm\:opacity-0:where(.svelte-apoc16) {
		opacity: 1;
	}
	.group.svelte-apoc16 .sm\:scale-0:where(.svelte-apoc16) {
		transform: scale(1);
	}
}
