/*
 * components.css — نظام الأزرار، روابط السهم، النماذج، البطاقات، الأيقونات
 * قاعدة الحالات: لا نعتمد على اللون وحده — كل حالة لها تغيير شكلي إضافي
 * (خط سفلي، حد، وزن خط، شفافية...).
 */

/* ---------- نظام الأزرار ---------- */

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: var(--btn-h);
	padding: 0.5rem 1.5rem;
	border: var(--border-thick) solid transparent;
	border-radius: var(--radius-m);
	font: inherit;
	font-size: 1.0625rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition:
		background-color var(--transition),
		color var(--transition),
		border-color var(--transition);
}

.btn:focus-visible {
	outline: 3px solid var(--c-navy);
	outline-offset: 2px;
}

.btn:active {
	translate: 0 1px;
}

/* أساسي: ذهبي + نص كحلي (تباين 6.7:1) */
.btn--primary {
	background-color: var(--c-gold);
	border-color: var(--c-gold);
	color: var(--c-navy);
}

.btn--primary:hover {
	background-color: var(--c-navy);
	border-color: var(--c-navy);
	color: var(--c-ivory);
}

/* ثانوي: إطار كحلي */
.btn--secondary {
	background-color: transparent;
	border-color: var(--c-navy);
	color: var(--c-navy);
}

.btn--secondary:hover {
	background-color: var(--c-navy);
	color: var(--c-white);
}

/*
 * واتساب: مخصص حصريًا لإجراءات واتساب.
 * حجم الخط 1.1875rem عريض = "نص كبير" وفق WCAG،
 * فيكفي تباين الأبيض على #128C7E (‏4.1:1 > 3:1).
 */
.btn--whatsapp {
	background-color: var(--c-whatsapp);
	border-color: var(--c-whatsapp);
	color: var(--c-white);
	font-size: 1.1875rem;
}

.btn--whatsapp:hover {
	background-color: color-mix(in srgb, var(--c-whatsapp) 80%, black);
	border-color: color-mix(in srgb, var(--c-whatsapp) 80%, black);
	text-decoration: underline;
	text-decoration-thickness: 2px;
}

/* دعوة كبيرة للجوال */
.btn--lg {
	min-height: var(--btn-h-lg);
	padding-inline: 2rem;
	font-size: 1.1875rem;
}

.btn--block {
	display: flex;
	width: 100%;
}

/* معطّل: شفافية + مؤشر + إزالة الظلال — والسمة disabled تبلغ قارئ الشاشة */
.btn:disabled,
.btn[aria-disabled="true"] {
	opacity: 0.55;
	cursor: not-allowed;
	filter: grayscale(0.35);
}

.btn:disabled:hover,
.btn[aria-disabled="true"]:hover {
	background-color: var(--c-gold);
	border-color: var(--c-gold);
	color: var(--c-navy);
}

/* ---------- رابط نصي بسهم ---------- */

.link-arrow {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	min-height: 44px;
	color: var(--c-navy);
	font-weight: 700;
	text-decoration: none;
}

.link-arrow::after {
	content: "";
	inline-size: 1em;
	block-size: 1em;
	background-color: var(--c-gold);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 6l-6 6 6 6' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 6l-6 6 6 6' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: translate var(--transition);
}

/* في اتجاه LTR المستقبلي ينقلب السهم تلقائيًا */
[dir="ltr"] .link-arrow::after {
	transform: scaleX(-1);
}

.link-arrow:hover {
	text-decoration: underline;
	text-decoration-color: var(--c-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 0.25em;
}

.link-arrow:hover::after {
	translate: -3px 0;
}

[dir="ltr"] .link-arrow:hover::after {
	translate: 3px 0;
}

/* ---------- أزرار مكوّن Gutenberg (تطابق النظام أعلاه) ---------- */

.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: var(--btn-h);
	padding: 0.5rem 1.5rem;
	font-weight: 700;
	text-decoration: none;
}

.is-style-outline > .wp-block-button__link:not(.has-background):not(.has-text-color) {
	background-color: transparent;
	border: var(--border-thick) solid var(--c-navy);
	color: var(--c-navy);
}

.is-style-outline > .wp-block-button__link:not(.has-background):not(.has-text-color):hover {
	background-color: var(--c-navy);
	color: var(--c-white);
}

.is-style-whatsapp > .wp-block-button__link {
	background-color: var(--c-whatsapp);
	border-color: var(--c-whatsapp);
	color: var(--c-white);
	font-size: 1.1875rem;
}

.is-style-whatsapp > .wp-block-button__link:hover {
	background-color: color-mix(in srgb, var(--c-whatsapp) 80%, black);
	color: var(--c-white);
	text-decoration: underline;
}

/* ---------- الأيقونات ---------- */

.icon {
	inline-size: 1.25em;
	block-size: 1.25em;
	flex: none;
}

/* ---------- نموذج البحث ---------- */

.search-form {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.search-form__field {
	flex: 1 1 12rem;
	min-height: var(--btn-h);
	padding: 0.5rem 1rem;
	border: var(--border-thin) solid var(--c-border);
	border-radius: var(--radius-s);
	background-color: var(--c-white);
	color: var(--c-ink);
	font: inherit;
}

.search-form__field::placeholder {
	color: var(--c-muted);
	opacity: 1;
}

.search-form__field:focus-visible {
	outline: 3px solid var(--c-navy);
	outline-offset: 1px;
	border-color: var(--c-navy);
}

/* ---------- بطاقة المقال ---------- */

.post-card {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	padding: var(--card-pad);
	background-color: var(--c-white);
	border: var(--border-thin) solid var(--c-border);
	border-radius: var(--radius-m);
}

.post-card__media {
	display: block;
	margin-block-end: 0.375rem;
}

.post-card__media img {
	width: 100%;
	height: auto;
	border-radius: var(--radius-s);
}

.post-card__title {
	margin: 0;
	font-size: var(--wp--preset--font-size--large);
}

.post-card__title a {
	color: var(--c-navy);
	text-decoration: none;
}

.post-card__title a:hover {
	text-decoration: underline;
	text-decoration-color: var(--c-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 0.25em;
}

.post-card__meta {
	margin: 0;
	color: var(--c-muted);
	font-size: var(--wp--preset--font-size--small);
}

.post-card__excerpt {
	color: var(--c-ink);
}

.post-card__excerpt p {
	margin: 0;
}

/* ---------- روابط صفحات المقال المجزأ ---------- */

.page-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.375rem;
	margin-block: var(--gap-m) 0;
}

.page-links__label {
	color: var(--c-muted);
}

.page-links a,
.page-links > span:not(.page-links__label) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	min-height: 40px;
	padding: 0.25rem 0.625rem;
	border: var(--border-thin) solid var(--c-border);
	border-radius: var(--radius-s);
	text-decoration: none;
}

.page-links > span:not(.page-links__label) {
	background-color: var(--c-navy);
	border-color: var(--c-navy);
	color: var(--c-white);
	font-weight: 800;
}
