/**
 * استایل شکل‌های سفارشی لیست (List Shapes) – نسخه سبک
 */

/* پایه برای همه لیست‌های شکل‌دار */
ul.cet-styled-list {
	list-style: none !important;
	padding-right: 0;
	padding-left: 0;
	margin: 0.8em 0;
}

ul.cet-styled-list > li {
	position: relative;
	padding-right: 36px;
	padding-left: 0;
	margin-bottom: 0.55em;
	line-height: 1.5;
	list-style: none !important;
}

/* مارکر CSS پیش‌فرض (برای شکل‌های غیر انیمیشنی و فالبک) */
ul.cet-styled-list > li::before {
	content: '';
	position: absolute;
	right: 0;
	top: 0.15em;
	width: 15px;
	height: 15px;
	background-color: #121331;
}

/* دایره */
ul.cet-list-circle > li::before {
	border-radius: 50%;
}

/* مثلث */
ul.cet-list-triangle > li::before {
	width: 0;
	height: 0;
	background: transparent !important;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	border-bottom: 20px solid #121331;
	top: 0.25em;
}

/* مربع */
ul.cet-list-square > li::before {
	border-radius: 2px;
}

/* پنج‌ضلعی */
ul.cet-list-pentagon > li::before {
	clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
	width: 22px;
	height: 22px;
	top: 0.2em;
}

/* هشت‌ضلعی */
ul.cet-list-octagon > li::before {
	clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
	width: 22px;
	height: 22px;
	top: 0.2em;
}

/* ========== مارکر SVG ========== */
ul.cet-styled-list > li > .cet-svg-marker {
	position: absolute;
	right: 0;
	top: 0.1em;
	width: 24px;
	height: 24px;
	display: block;
	pointer-events: none;
}

/* وقتی مارکر SVG وجود دارد، ::before را مخفی کن */
ul.cet-styled-list > li.has-svg-marker::before {
	display: none !important;
}

/* ---------- انیمیشن‌ها ---------- */
.cet-svg-marker svg {
	overflow: visible;
}

/* حالت توقف */
.cet-svg-marker svg.cet-anim-paused .cet-shape-bg,
.cet-svg-marker svg.cet-anim-paused .cet-shape-check,
.cet-svg-marker svg.cet-anim-paused .cet-shape-exclaim {
	animation: none !important;
	opacity: 0.25;
}

/* --- دایره (تیک) – نسخه شبیه Lottie --- */
.cet-svg-marker svg .cet-shape-bg {
	transform-origin: 12px 12px;
	transform: scale(0);
	opacity: 0;
}

.cet-svg-marker svg .cet-shape-check {
	transform-origin: 12px 13px;
	transform: scale(0);
	opacity: 0;
}

.cet-svg-marker svg.cet-anim-play .cet-shape-bg,
.cet-svg-marker svg.cet-anim-loop .cet-shape-bg {
	animation: cet-circle-pop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.cet-svg-marker svg.cet-anim-play .cet-shape-check,
.cet-svg-marker svg.cet-anim-loop .cet-shape-check {
	animation: cet-check-pop 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) 0.2s forwards;
}

.cet-svg-marker svg.cet-anim-loop .cet-shape-bg {
	animation: cet-circle-pop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) infinite;
}

.cet-svg-marker svg.cet-anim-loop .cet-shape-check {
	animation: cet-check-pop 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) 0.2s infinite;
}

@keyframes cet-circle-pop {
	0%   { transform: scale(0); opacity: 0; }
	70%  { transform: scale(1.12); opacity: 1; }
	100% { transform: scale(1); opacity: 1; }
}

@keyframes cet-check-pop {
	0%   { transform: scale(0); opacity: 0; }
	70%  { transform: scale(1.15); opacity: 1; }
	100% { transform: scale(1); opacity: 1; }
}
/* --- مثلث (هشدار) --- */
.cet-svg-marker svg .cet-shape-bg {
	transform-origin: 12px 14px;
}

.cet-svg-marker svg.cet-anim-paused .cet-shape-bg {
	transform: scale(0.3);
	opacity: 0.25;
}

.cet-svg-marker svg.cet-anim-play .cet-shape-bg,
.cet-svg-marker svg.cet-anim-loop .cet-shape-bg {
	animation: cet-triangle-pop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.cet-svg-marker svg.cet-anim-play .cet-shape-exclaim,
.cet-svg-marker svg.cet-anim-loop .cet-shape-exclaim {
	animation: cet-exclaim-in 0.3s ease 0.25s forwards;
}

.cet-svg-marker svg.cet-anim-loop .cet-shape-bg {
	animation: cet-triangle-pop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) infinite;
}

.cet-svg-marker svg.cet-anim-loop .cet-shape-exclaim {
	animation: cet-exclaim-in 0.3s ease 0.25s infinite;
}

@keyframes cet-triangle-pop {
	0%   { transform: scale(0); opacity: 0; }
	70%  { transform: scale(1.1); opacity: 1; }
	100% { transform: scale(1); opacity: 1; }
}

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