.ppv-pdf-archive,
.ppv-pdf-archive * {
	font-family: 'IBM Plex Sans Arabic', Tahoma, sans-serif;
	box-sizing: border-box;
}

/* حل ترقيعي خاص بهذا الموقع: هيدر الثيم مضبوط بـ position:absolute بلا
   تعويض مساحته في تدفق الصفحة، فيتراكب فوق أي محتوى يليه في كل صفحات
   الموقع. .ppv-pdf-archive نفسها full-bleed (حيلة vw) لتمتد بعرض الشاشة
   الكاملة بخلفية فاتحة، والهيرو بداخلها بخلفية خضراء بارتفاع يعوّض مساحة
   هيدر الثيم + يعرض العنوان بدل ترك فراغ بلا فائدة. */
.ppv-pdf-archive {
	/* margin-inline-start: calc(-50vw + 50%) أوثق من حيلة left+margin-left
	   القديمة المعتمدة على position:relative — تلك كانت تحسب left% نسبةً
	   لعرض حاوية الثيم (وسلوكها يختلف أصلاً في سياق RTL)، فأنتجت انزياحاً
	   عن حافة الشاشة بدل الالتصاق بها. margin على عنصر عادي (بلا position)
	   له قواعد حساب موحدة عبر المتصفحات بغض النظر عن الاتجاه. */
	width: 100vw;
	margin-inline-start: calc( -50vw + 50% );
	background: #f6f8f7;
	padding-bottom: 40px;
}

.ppv-archive-hero {
	background: linear-gradient( 135deg, #002d16 0%, #014a24 100% );
	padding: 150px 16px 56px;
	text-align: center;
}

@media ( max-width: 640px ) {
	.ppv-archive-hero {
		padding: 95px 16px 48px;
	}
}

.ppv-archive-title {
	margin: 0 0 8px;
	color: #fff;
	font-size: 30px;
	font-weight: 700;
}

.ppv-archive-subtitle {
	margin: 0;
	color: #9fc7ab;
	font-size: 14px;
}

.ppv-archive-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 1px 16px 0;
}

.ppv-archive-search {
	position: relative;
	z-index: 2;
	display: flex;
	gap: 6px;
	max-width: 560px;
	margin: -28px auto 32px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 16px rgba( 0, 45, 22, 0.18 );
	padding: 6px;
}

.ppv-archive-search-input {
	flex: 1 1 auto;
	min-width: 0;
	height: 44px;
	padding: 0 14px;
	border: none;
	border-radius: 8px;
	font-size: 14px;
	background: transparent;
}

.ppv-archive-search-input:focus {
	outline: 2px solid #0a6c34;
	outline-offset: -2px;
}

.ppv-archive-search-button {
	height: 44px;
	padding: 0 24px;
	border: none;
	border-radius: 8px;
	background: #0a6c34;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
	transition: background 0.15s ease;
}

.ppv-archive-search-button:hover {
	background: #085a2b;
}

/* شبكة تتكيف تلقائياً مع عرض الشاشة (عمود واحد على جوال ضيق جداً، أعمدة
   متعددة كلما اتسعت الشاشة) بدون فواصل (breakpoints) يدوية ثابتة. */
.ppv-archive-grid {
	display: grid;
	grid-template-columns: repeat( auto-fill, minmax( 220px, 1fr ) );
	gap: 20px;
}

.ppv-archive-card {
	--ppv-card-accent: #0a6c34;
	--ppv-card-accent-light: #e3f2e8;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 10px;
	padding: 26px 16px 20px;
	border: 1px solid #e5e9e7;
	border-radius: 14px;
	background: #fff;
	text-decoration: none;
	color: inherit;
	box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.04 );
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.ppv-archive-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	border-radius: 14px 14px 0 0;
	background: var( --ppv-card-accent );
}

.ppv-archive-card:hover,
.ppv-archive-card:focus-visible {
	transform: translateY( -3px );
	box-shadow: 0 8px 24px rgba( 0, 45, 22, 0.1 );
	border-color: var( --ppv-card-accent );
}

.ppv-archive-card:hover .ppv-archive-card-title {
	color: var( --ppv-card-accent );
}

.ppv-archive-card-badge {
	position: absolute;
	top: 12px;
	inset-inline-end: 12px;
	font-size: 10px;
	font-weight: 700;
	background: #fdecea;
	color: #c0392b;
	padding: 2px 8px;
	border-radius: 6px;
	letter-spacing: 0.5px;
}

.ppv-archive-card-icon-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var( --ppv-card-accent-light );
	color: var( --ppv-card-accent );
}

.ppv-archive-card-title {
	font-size: 15px;
	font-weight: 600;
	color: #1a1f1c;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 3em;
	transition: color 0.18s ease;
}

.ppv-archive-card-meta {
	font-size: 12.5px;
	color: #7a847e;
}

.ppv-archive-card-pending {
	color: #b26b00;
}

.ppv-archive-pagination {
	margin-top: 40px;
	display: flex;
	justify-content: center;
}

.ppv-archive-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	margin: 0 3px;
	padding: 0 12px;
	border-radius: 10px;
	text-decoration: none;
	color: #444;
	font-size: 14px;
	transition: background 0.15s ease;
}

.ppv-archive-pagination .page-numbers:hover {
	background: #e8f3ec;
}

.ppv-archive-pagination .page-numbers.current {
	background: #0a6c34;
	color: #fff;
}

.ppv-archive-empty {
	text-align: center;
	color: #6b7075;
	padding: 60px 16px;
}

.ppv-archive-empty-title {
	margin: 0 0 16px;
	font-size: 15px;
}

.ppv-archive-empty-action {
	display: inline-block;
	padding: 10px 22px;
	border-radius: 8px;
	background: #0a6c34;
	color: #fff;
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
}

.ppv-archive-empty-action:hover {
	background: #085a2b;
}

@media ( max-width: 640px ) {
	.ppv-archive-search {
		margin: -22px 16px 28px;
		max-width: none;
	}
}
