/* پوسته‌ی ویسا: فقط چیزهایی که theme.json نمی‌تواند. */

:where(a, button, input, select, textarea, summary, .wp-element-button):focus-visible {
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: 3px;
}

.wp-element-button,
.wp-block-button__link {
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

/* سربرگ چسبان. sticky روی گروه داخل template-part کار نمی‌کند، پس روی خود قطعه. */
header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 50;
	background-color: var(--wp--preset--color--base);
	border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--border) 70%, transparent);
}
.admin-bar header.wp-block-template-part {
	top: var(--wp-admin--admin-bar--height, 0px);
}

/* عنوان کوچک بالای تیترها و متن مقدمه. رنگ در بخش‌های تیره و رنگی ارث می‌رسد. */
.weesa-eyebrow {
	color: var(--wp--preset--color--accent);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	letter-spacing: 0;
	margin-bottom: 0;
}
.weesa-lead {
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.8;
}
:is(.is-style-section-dark, .is-style-section-primary, .wp-block-cover) :is(.weesa-eyebrow, .weesa-lead) {
	color: inherit;
	opacity: 0.85;
}

/* ردیف منو / فهرست قیمت: نام ... قیمت */
.weesa-price-row {
	align-items: baseline;
}
.weesa-price-row > .weesa-price-name {
	flex: 0 1 auto;
}
.weesa-price-row::after {
	content: "";
	flex: 1 1 2rem;
	order: 1;
	border-bottom: 1px dotted color-mix(in srgb, currentColor 35%, transparent);
	transform: translateY(-0.35em);
}
.weesa-price-row > .weesa-price {
	order: 2;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}
.weesa-price-desc {
	color: var(--wp--preset--color--muted);
	margin-top: 0.25rem !important;
}

/* جدول ساعت کاری */
.weesa-hours .wp-block-table table {
	border-collapse: collapse;
}
.weesa-hours .wp-block-table td {
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--border);
	padding: 0.65rem 0;
}
.weesa-hours .wp-block-table td:last-child {
	text-align: left;
	font-variant-numeric: tabular-nums;
}

/* تصویرهای داخل کارت تا لبه‌ی کارت */
.is-style-card > .wp-block-image:first-child {
	margin-top: calc(-1 * var(--wp--preset--spacing--40));
	margin-inline: calc(-1 * var(--wp--preset--spacing--40));
}
.is-style-card > .wp-block-image:first-child img {
	border-radius: var(--wp--custom--radius--md) var(--wp--custom--radius--md) 0 0;
}

/* سوالات متداول */
.wp-block-details summary {
	cursor: pointer;
	font-weight: 600;
	list-style-position: inside;
}
.wp-block-details[open] summary {
	margin-bottom: 0.5rem;
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* آمار، ستاره‌ها، نقل‌قول، یادداشت */
.weesa-stat-value {
	color: var(--wp--preset--color--primary);
	font-weight: 800;
	line-height: 1.2;
	font-variant-numeric: tabular-nums;
}
.weesa-stat-label,
.weesa-note {
	color: var(--wp--preset--color--muted);
}
:is(.is-style-section-dark, .is-style-section-primary) :is(.weesa-stat-value, .weesa-stat-label, .weesa-note) {
	color: inherit;
}
.weesa-stars {
	color: var(--wp--preset--color--accent);
	letter-spacing: 0.15em;
	line-height: 1;
}
.weesa-quote {
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.85;
}
.weesa-more a {
	font-weight: 600;
	text-decoration: none;
}
.weesa-more a::after {
	content: " ←";
}
.weesa-menu-title {
	padding-bottom: 0.5rem;
	border-bottom: 2px solid var(--wp--preset--color--primary);
}

/* سربرگ، محتوا و پابرگ بدون فاصله: بخش‌های تمام‌عرض خودشان فاصله‌ی داخلی دارند. */
body .wp-site-blocks > * + * {
	margin-block-start: 0;
}

/* شماره‌ی خدمت و مرحله */
.weesa-num {
	color: var(--wp--preset--color--primary);
	font-weight: 800;
	font-size: var(--wp--preset--font-size--large);
	line-height: 1;
	font-variant-numeric: tabular-nums;
}
.weesa-step-num {
	display: inline-grid;
	place-items: center;
	inline-size: 3rem;
	block-size: 3rem;
	border-radius: 50%;
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--on-primary);
	font-weight: 800;
	line-height: 1;
}

/* فهرست تیک‌دار */
ul.weesa-checks {
	list-style: none;
	padding-inline-start: 0;
}
ul.weesa-checks li {
	position: relative;
	padding-inline-start: 1.9rem;
	margin-block: 0.55rem;
}
ul.weesa-checks li::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 0.45em;
	inline-size: 1.15rem;
	block-size: 1.15rem;
	border-radius: 50%;
	background: var(--wp--preset--color--primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 70% no-repeat;
}

/* نشان‌ها (گواهی، عضویت، ضمانت) */
.weesa-badges > p {
	margin: 0;
	padding: 0.45rem 1.1rem;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--button);
	background: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 600;
	color: var(--wp--preset--color--muted);
}
