/**
 * eDarul Hikmah Portal — shared base styles.
 *
 * Kept minimal and RTL-first since every salik-facing screen so far is
 * Urdu. Later phases (mamulat tracker, manzil reader, tazkiya sheets) add
 * their own component-specific CSS blocks to this same file, so the whole
 * portal's visual language stays in one place instead of scattering across
 * per-feature stylesheets.
 */

.edh-portal {
	max-width: 560px;
	margin: 0 auto;
	font-size: 16px;
	line-height: 1.8;
}

.edh-form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.edh-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex: 1;
}

.edh-field-row {
	display: flex;
	gap: 16px;
}

.edh-field label {
	font-weight: 600;
}

.edh-field input,
.edh-field select {
	padding: 10px 12px;
	border: 1px solid #cccccc;
	border-radius: 6px;
	font-size: 16px;
	font-family: inherit;
}

.edh-button {
	padding: 12px 20px;
	border-radius: 6px;
	border: none;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
}

.edh-button--primary {
	background-color: #1f4e5f;
	color: #ffffff;
}

.edh-button--primary:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.edh-notice {
	padding: 12px 16px;
	border-radius: 6px;
	margin-bottom: 16px;
}

.edh-notice--info {
	background-color: #eaf3f7;
	color: #1f4e5f;
}

.edh-notice--success {
	background-color: #e6f4ea;
	color: #1e4620;
}

.edh-notice--error {
	background-color: #fbe7e7;
	color: #7a1f1f;
}

/* ---------------------------------------------------------------------
 * Daily Ma'mulat Tracker (Phase 2)
 * ------------------------------------------------------------------ */

.edh-portal--wide {
	max-width: 720px;
}

.edh-mamulat-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
}

.edh-mamulat-date {
	margin: 0;
	font-size: 18px;
	color: #1f4e5f;
}

.edh-streak-badge {
	display: flex;
	align-items: center;
	gap: 8px;
	background-color: #fff4e0;
	border-radius: 999px;
	padding: 8px 16px;
}

.edh-streak-count {
	font-size: 20px;
	font-weight: 700;
	color: #b8860b;
}

.edh-streak-label {
	font-size: 13px;
	color: #7a5c00;
}

.edh-pledge-box {
	background-color: #eaf3f7;
	border-radius: 8px;
	padding: 16px;
	margin-bottom: 20px;
	border: 1px solid #d4e6ee;
}

.edh-pledge-bismillah {
	text-align: center;
	font-size: 20px;
	color: #1f4e5f;
	font-weight: 600;
	margin-bottom: 12px;
	padding-bottom: 12px;
	border-bottom: 1px solid #cfe0e6;
	line-height: 2;
}

.edh-pledge-label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	cursor: pointer;
	font-size: 15px;
	line-height: 2;
}

.edh-pledge-label input {
	margin-top: 6px;
	flex-shrink: 0;
}

.edh-mamulat-list {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.edh-time-slot-heading {
	font-weight: 700;
	color: #2e75b6;
	margin: 16px 0 4px;
	font-size: 15px;
}

.edh-time-slot-heading:first-child {
	margin-top: 0;
}

.edh-mamulat-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 12px;
	border-radius: 8px;
	background-color: #fafafa;
	flex-wrap: wrap;
}

.edh-mamulat-item.is-done {
	background-color: #e6f4ea;
}

.edh-mamulat-item-label {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1;
	cursor: pointer;
}

.edh-mamulat-item-label input {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.edh-guide-link {
	font-size: 13px;
	color: #2e75b6;
	text-decoration: underline;
	white-space: nowrap;
}

/* The Fajr "open Manzil" link is a navigation anchor, not a method modal —
   give it a small pill style so it reads as a call to action. */
.edh-manzil-link {
	text-decoration: none;
	background: #1f7a4d;
	color: #fff !important;
	padding: 4px 12px;
	border-radius: 14px;
	font-weight: 600;
}

.edh-manzil-link:hover {
	background: #18603c;
}

.edh-counter-control {
	display: flex;
	align-items: center;
	gap: 6px;
}

.edh-counter-label {
	font-size: 13px;
	color: #595959;
	white-space: nowrap;
}

.edh-counter-input {
	width: 64px;
	padding: 6px 8px;
	border: 1px solid #cccccc;
	border-radius: 6px;
	font-size: 14px;
	text-align: center;
}

.edh-mamulat-note {
	font-size: 13px;
	color: #595959;
	margin-top: 16px;
	text-align: center;
}

.edh-salik-guidance {
	margin-top: 18px;
	padding: 18px 20px;
	background: #f7faf8;
	border: 1px solid #dbe8e0;
	border-right: 4px solid #1f7a4d;
	border-radius: 10px;
	line-height: 2;
	color: #344;
}

.edh-salik-guidance-title {
	font-size: 16px;
	font-weight: 700;
	color: #1f4e5f;
	margin-bottom: 10px;
}

.edh-salik-guidance p {
	margin: 0 0 10px;
	font-size: 14.5px;
}

.edh-salik-guidance ul {
	margin: 10px 0;
	padding-right: 22px;
	list-style: disc;
}

.edh-salik-guidance li {
	margin-bottom: 10px;
	font-size: 14.5px;
}

.edh-salik-guidance-foot {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px dashed #cdded4;
	color: #1f4e5f;
	font-size: 14px;
}

.edh-divider {
	border: none;
	border-top: 1px solid #e0e0e0;
	margin: 28px 0 16px;
}

.edh-section-title {
	font-size: 16px;
	color: #1f4e5f;
	margin-bottom: 12px;
}

.edh-calendar-grid {
	display: grid;
	grid-template-columns: repeat(10, 1fr);
	gap: 6px;
}

.edh-calendar-cell {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1;
	border-radius: 6px;
	background-color: #f0f0f0;
	font-size: 12px;
	color: #595959;
	cursor: pointer;
	transition: transform 0.08s ease;
}

.edh-calendar-cell:hover {
	transform: scale(1.08);
}

.edh-calendar-cell.is-selected {
	outline: 2px solid #1f4e5f;
	outline-offset: 1px;
}

.edh-calendar-cell.is-complete {
	background-color: #4caf50;
	color: #ffffff;
	font-weight: 600;
}

.edh-calendar-cell.is-partial {
	background-color: #ffd54f;
	color: #5c4400;
}

/* ---------------------------------------------------------------------
 * Date navigator (Phase 2) — lets the salik open/edit any past day
 * ------------------------------------------------------------------ */

.edh-date-nav {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
	flex-wrap: wrap;
}

.edh-date-nav-btn,
.edh-date-today {
	padding: 8px 12px;
	border: 1px solid #cccccc;
	background-color: #ffffff;
	border-radius: 6px;
	font-size: 16px;
	font-family: inherit;
	cursor: pointer;
}

.edh-date-nav-btn:disabled,
.edh-date-today:disabled {
	opacity: 0.4;
	cursor: not-allowed;
}

.edh-date-today {
	background-color: #1f4e5f;
	color: #ffffff;
	border-color: #1f4e5f;
	font-weight: 600;
}

.edh-date-picker {
	padding: 8px 10px;
	border: 1px solid #cccccc;
	border-radius: 6px;
	font-size: 16px;
	font-family: inherit;
	flex: 1;
	min-width: 140px;
}

/* ---------------------------------------------------------------------
 * History header + view toggle (calendar <-> list)
 * ------------------------------------------------------------------ */

.edh-history-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.edh-view-toggle {
	display: inline-flex;
	border: 1px solid #cccccc;
	border-radius: 6px;
	overflow: hidden;
}

.edh-view-toggle-btn {
	padding: 6px 14px;
	border: none;
	background-color: #ffffff;
	font-size: 14px;
	font-family: inherit;
	cursor: pointer;
}

.edh-view-toggle-btn.is-active {
	background-color: #1f4e5f;
	color: #ffffff;
}

/* ---------------------------------------------------------------------
 * History list view
 * ------------------------------------------------------------------ */

.edh-history-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.edh-history-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 14px;
	border-radius: 6px;
	background-color: #f6f6f6;
	cursor: pointer;
	border-right: 4px solid #cccccc;
}

.edh-history-row:hover {
	background-color: #eef3f5;
}

.edh-history-row.is-complete {
	border-right-color: #4caf50;
}

.edh-history-row.is-partial {
	border-right-color: #ffd54f;
}

.edh-history-count {
	font-weight: 600;
	color: #1f4e5f;
}

.edh-loading,
.edh-empty {
	text-align: center;
	color: #888888;
	padding: 20px;
}

@media (max-width: 480px) {
	.edh-calendar-grid {
		grid-template-columns: repeat(7, 1fr);
	}
}

/* ---------------------------------------------------------------------
 * Guide modal (Muraqaba method / Zikr method)
 * ------------------------------------------------------------------ */

.edh-modal-overlay {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 9999;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.edh-modal-overlay.is-open {
	display: flex;
}

.edh-modal {
	background-color: #ffffff;
	border-radius: 10px;
	max-width: 600px;
	max-height: 80vh;
	overflow-y: auto;
	padding: 28px;
	position: relative;
}

.edh-modal-close {
	position: absolute;
	top: 12px;
	left: 12px;
	background: none;
	border: none;
	font-size: 24px;
	cursor: pointer;
	color: #888888;
	line-height: 1;
}

.edh-modal-title {
	margin: 0 0 16px;
	color: #1f4e5f;
	padding-left: 32px;
}

.edh-modal-body p,
.edh-modal-body li {
	font-size: 15px;
	line-height: 1.9;
	margin-bottom: 12px;
}

.edh-modal-body ol {
	padding-right: 24px;
}

.edh-modal-body h4 {
	font-size: 16px;
	font-weight: 700;
	color: #1f4e5f;
	margin: 16px 0 8px;
}

.edh-modal-body img {
	max-width: 100%;
	height: auto;
	border-radius: 8px;
}

.edh-modal-body figure {
	margin: 14px 0;
	text-align: center;
}

.edh-modal-body figcaption {
	font-size: 13px;
	color: #666;
	margin-top: 6px;
}

/* ---------------------------------------------------------------------
 * Ahwal o Kaifiyat (Phase 3) — salik's note to their shaykh
 * ------------------------------------------------------------------ */

.edh-section-subtitle {
	font-size: 18px;
	font-weight: 600;
	margin: 16px 0 12px;
	color: #1f4e5f;
}

.edh-shaykh-banner {
	padding: 12px 16px;
	border-radius: 6px;
	margin-bottom: 16px;
	background-color: #eaf3f7;
	color: #1f4e5f;
	font-weight: 600;
}

.edh-shaykh-banner--none {
	background-color: #fff6e5;
	color: #7a5b00;
	font-weight: 400;
}

.edh-field textarea {
	padding: 10px 12px;
	border: 1px solid #cccccc;
	border-radius: 6px;
	font-size: 16px;
	font-family: inherit;
	line-height: 1.8;
	resize: vertical;
}

.edh-checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 15px;
	cursor: pointer;
}

.edh-checkbox-label input {
	margin-top: 4px;
}

.edh-ahwal-history {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.edh-ahwal-card {
	padding: 14px 16px;
	border-radius: 8px;
	background-color: #f6f6f6;
	border-right: 4px solid #1f4e5f;
}

.edh-ahwal-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
	margin-bottom: 8px;
	font-size: 13px;
	color: #666666;
}

.edh-ahwal-mood-tag,
.edh-ahwal-private-tag,
.edh-ahwal-read-tag {
	padding: 2px 10px;
	border-radius: 12px;
	font-size: 12px;
	font-weight: 600;
}

.edh-ahwal-mood-tag {
	background-color: #e3eef2;
	color: #1f4e5f;
}

.edh-ahwal-private-tag {
	background-color: #fbe7e7;
	color: #7a1f1f;
}

.edh-ahwal-read-tag {
	background-color: #e6f4ea;
	color: #1e4620;
}

.edh-ahwal-body-text {
	margin: 0;
	line-height: 1.9;
	white-space: pre-wrap;
}

.edh-ahwal-question-text {
	margin: 8px 0 0;
	padding-top: 8px;
	border-top: 1px dashed #cccccc;
	color: #444444;
	font-style: italic;
}

/* ---------------------------------------------------------------------
 * Auth (login/register tabs) + portal header strip + logout
 * ------------------------------------------------------------------ */

.edh-portal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 14px;
	margin-bottom: 16px;
	background-color: #f3f6f7;
	border-radius: 8px;
}

.edh-portal-header-name {
	font-weight: 600;
	color: #1f4e5f;
}

.edh-button--ghost {
	background-color: transparent;
	color: #1f4e5f;
	border: 1px solid #1f4e5f;
}

.edh-button--small {
	padding: 6px 14px;
	font-size: 14px;
}

.edh-auth-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 12px;
}

.edh-auth-tabs {
	display: flex;
	border-bottom: 2px solid #e0e0e0;
	margin-bottom: 20px;
}

.edh-auth-tab {
	flex: 1;
	padding: 12px;
	border: none;
	background: none;
	font-size: 16px;
	font-weight: 600;
	font-family: inherit;
	color: #888888;
	cursor: pointer;
	border-bottom: 3px solid transparent;
	margin-bottom: -2px;
}

.edh-auth-tab.is-active {
	color: #1f4e5f;
	border-bottom-color: #1f4e5f;
}

/* Unified-identity mode: "نیا اکاؤنٹ" renders as a plain link to the
   site's single Account page rather than a local tab button. */
.edh-auth-tab--link {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.edh-auth-switch-hint {
	margin-top: 14px;
	text-align: center;
	font-size: 14px;
	color: #666666;
}

.edh-field-hint {
	color: #888888;
	font-size: 13px;
	margin-top: 4px;
}

/* ---------------------------------------------------------------------
 * 40-Day Manzil reader (Phase 3)
 * ------------------------------------------------------------------ */


/* ---------------------------------------------------------------------
 * 40-Day Manzil reader (Phase 3)
 * ------------------------------------------------------------------ */

.edh-manzil-intro {
	color: #555;
	line-height: 1.9;
	margin-bottom: 16px;
}

.edh-manzil-progress-box {
	background: #f3f6f7;
	border-radius: 10px;
	padding: 14px 16px;
	margin-bottom: 16px;
}

.edh-manzil-progress-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
	font-size: 16px;
	color: #1f4e5f;
}

.edh-manzil-progress-head strong {
	font-size: 20px;
}

.edh-manzil-daygrid {
	display: grid;
	grid-template-columns: repeat(10, 1fr);
	gap: 6px;
}

@media (max-width: 480px) {
	.edh-manzil-daygrid {
		grid-template-columns: repeat(8, 1fr);
	}
}

.edh-daybox {
	aspect-ratio: 1 / 1;
	border: 1px solid #c9d6da;
	background: #fff;
	border-radius: 6px;
	font-size: 14px;
	font-family: inherit;
	color: #1f4e5f;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .15s, color .15s;
	padding: 0;
}

.edh-daybox:hover {
	border-color: #1f4e5f;
}

.edh-daybox.is-done {
	background: #1f7a4d;
	border-color: #1f7a4d;
	color: #fff;
	font-weight: 700;
}

/* Resume cue: the next day to do, so a returning salik can find it at a
   glance instead of scanning all 40 boxes. */
.edh-daybox.is-next {
	border: 2px solid #c9a24a;
	box-shadow: 0 0 0 3px rgba(201,162,74,.18);
	font-weight: 700;
}

.edh-manzil-grid-hint {
	margin: 10px 0 0;
	font-size: 13px;
	color: #777;
}

/* Font-size controls */
.edh-manzil-fontbar {
	display: flex;
	gap: 18px;
	flex-wrap: wrap;
	align-items: center;
	padding: 10px 14px;
	background: #fafafa;
	border: 1px solid #eee;
	border-radius: 8px;
	margin-bottom: 20px;
}

.edh-fontctl {
	display: flex;
	align-items: center;
	gap: 6px;
}

.edh-fontctl-label {
	font-size: 14px;
	color: #555;
	margin-left: 4px;
}

.edh-fontctl-btn {
	min-width: 40px;
	padding: 5px 10px;
	border: 1px solid #1f4e5f;
	background: #fff;
	color: #1f4e5f;
	border-radius: 6px;
	font-size: 15px;
	cursor: pointer;
	font-family: Arial, sans-serif;
}

.edh-fontctl-btn:hover {
	background: #1f4e5f;
	color: #fff;
}

/* Section headers */
.edh-manzil-section-head {
	font-size: 17px;
	font-weight: 700;
	color: #1f4e5f;
	background: #eaf3f7;
	padding: 10px 14px;
	border-radius: 8px;
	margin: 22px 0 14px;
}

/* Fajr entries + ayat */
.edh-manzil-entry {
	margin-bottom: 22px;
}

.edh-manzil-entry-head {
	font-size: 16px;
	font-weight: 700;
	color: #333;
	padding-bottom: 6px;
	margin-bottom: 12px;
	border-bottom: 2px solid #e3eef2;
}

.edh-manzil-ayah {
	padding: 12px 0;
	border-bottom: 1px solid #f0f0f0;
}

/* Arabic: large, readable, generous line spacing. Real Quran font (IndoPak)
   is applied via fonts.css .edh-ayah-arabic; inline font-size from JS lets
   the salik scale it. */
.edh-ayah-arabic {
	line-height: 2.4;
	color: #1a1a1a;
	text-align: right;
	margin-bottom: 8px;
}

.edh-ayah-num {
	color: #1f7a4d;
	font-size: 0.7em;
}

/* Urdu: a touch smaller than Arabic, comfortable to read. */
.edh-ayah-urdu {
	line-height: 2;
	color: #444;
	text-align: right;
}

/* After-prayer references */
.edh-manzil-ref {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 14px;
	background: #f8f8f8;
	border-radius: 6px;
	margin-bottom: 8px;
}

.edh-manzil-ref-slot {
	color: #1f4e5f;
	font-weight: 600;
}

.edh-manzil-ref-name {
	color: #333;
}

/* ---------------------------------------------------------------------
 * Shaykh dashboard + ahwal replies
 * ------------------------------------------------------------------ */

.edh-shaykh-layout {
	display: grid;
	grid-template-columns: 260px 1fr;
	gap: 20px;
	align-items: start;
}

@media (max-width: 640px) {
	.edh-shaykh-layout {
		grid-template-columns: 1fr;
	}
}

.edh-shaykh-saliks {
	background: #f3f6f7;
	border-radius: 10px;
	padding: 12px;
}

#edh-shaykh-salik-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.edh-salik-item {
	width: 100%;
	text-align: right;
	background: #fff;
	border: 1px solid #dde6e9;
	border-radius: 8px;
	padding: 10px 12px;
	cursor: pointer;
	font-family: inherit;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.edh-salik-item:hover { border-color: #1f4e5f; }
.edh-salik-item.is-active { background: #1f4e5f; color: #fff; border-color: #1f4e5f; }
.edh-salik-item.is-active .edh-salik-item-meta { color: #cfe0e6; }

.edh-salik-item-name { font-weight: 600; }
.edh-salik-item-meta { font-size: 12px; color: #777; }

.edh-salik-unanswered {
	background: #c0392b;
	color: #fff;
	padding: 1px 8px;
	border-radius: 10px;
	font-size: 11px;
}

.edh-shaykh-ahwal-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 10px;
	font-size: 17px;
	font-weight: 700;
	color: #1f4e5f;
	margin-bottom: 12px;
}

.edh-shaykh-ahwal-head-name {
	font-size: 17px;
	font-weight: 700;
	color: #1f4e5f;
}

.edh-academy-advise-btn {
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	padding: 7px 14px;
	border-radius: 999px;
	border: 1px solid #c9a24a;
	background: #fff8e6;
	color: #8a6d1f;
	cursor: pointer;
	white-space: nowrap;
}

.edh-academy-advise-btn:hover {
	background: #fbf1d7;
}

.edh-academy-advise-btn.is-advised {
	background: #eaf7ef;
	border-color: #1f7a4d;
	color: #1f7a4d;
}

.edh-reply-existing {
	margin-top: 10px;
	padding: 10px 12px;
	background: #e6f4ea;
	border-radius: 8px;
	color: #1e4620;
	line-height: 1.9;
}

.edh-reply-input {
	width: 100%;
	margin-top: 10px;
	padding: 10px 12px;
	border: 1px solid #ccc;
	border-radius: 8px;
	font-family: inherit;
	font-size: 15px;
	line-height: 1.9;
	resize: vertical;
}

.edh-button--small {
	padding: 6px 16px;
	font-size: 14px;
	margin-top: 8px;
}

/* Shaykh reply shown to the salik in their own ahwal history */
.edh-ahwal-reply {
	margin-top: 10px;
	padding: 10px 12px;
	background: #eaf3f7;
	border-right: 3px solid #1f4e5f;
	border-radius: 6px;
}

.edh-ahwal-reply-label {
	font-size: 12px;
	font-weight: 700;
	color: #1f4e5f;
	margin-bottom: 4px;
}

.edh-ahwal-reply-body {
	margin: 0;
	line-height: 1.9;
	color: #244;
	white-space: pre-wrap;
}

/* ---------------------------------------------------------------------
 * Progress dashboard (Phase 4)
 * ------------------------------------------------------------------ */

.edh-progress-intro {
	color: #555;
	line-height: 1.9;
	margin-bottom: 18px;
}

/* ---------------------------------------------------------------------
 * Humility note (no-sawab-claim rule): wherever streaks/counts/badges
 * are shown, a quiet reminder that the true reward is with Allah alone
 * and these numbers are private, self-only istiqamat aids — never a
 * leaderboard or a claim of earned reward.
 * ------------------------------------------------------------------ */
.edh-humility-note,
.edh-progress-humility {
	font-size: 12.5px;
	color: #8a9aa0;
	line-height: 1.9;
	margin: 4px 0 16px;
	font-style: italic;
}

/* New-salik welcome state (no data yet) — replaces the empty wall of
   zeros/grey bars with a warm, guidance-first message. */
.edh-progress-welcome {
	background: linear-gradient(135deg, #f0f7f3, #eef4f7);
	border: 1px solid #cfe6da;
	border-radius: 14px;
	padding: 26px 24px;
	text-align: center;
	margin-bottom: 20px;
}

.edh-progress-welcome h4 {
	color: #1f4e5f;
	font-size: 19px;
	margin: 0 0 12px;
}

.edh-progress-welcome p {
	color: #3a4a4a;
	font-size: 14.5px;
	line-height: 2;
	max-width: 520px;
	margin: 0 auto 10px;
}

.edh-progress-welcome-actions {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 16px;
}

.edh-progress-welcome-actions .edh-button {
	text-decoration: none;
	display: inline-block;
}

.edh-stat-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
	margin-bottom: 24px;
}

@media (max-width: 560px) {
	.edh-stat-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

.edh-stat-card {
	background: #f3f6f7;
	border-radius: 10px;
	padding: 16px 12px;
	text-align: center;
}

.edh-stat-value {
	font-size: 30px;
	font-weight: 700;
	color: #1f4e5f;
	line-height: 1.2;
}

.edh-stat-label {
	font-size: 13px;
	color: #666;
	margin-top: 6px;
}

.edh-progress-section {
	margin-bottom: 26px;
}

.edh-progress-chart {
	width: 100%;
	background: #fafafa;
	border: 1px solid #eee;
	border-radius: 8px;
	padding: 8px;
}

.edh-chart-svg {
	width: 100%;
	height: auto;
	display: block;
}

.edh-progress-chart-hint,
.edh-progress-intro {
	font-size: 13px;
}

.edh-progress-chart-hint {
	color: #888;
	margin-top: 8px;
}

/* Manzil progress bar */
.edh-manzil-bar {
	height: 18px;
	background: #e8eef0;
	border-radius: 9px;
	overflow: hidden;
}

.edh-manzil-bar-fill {
	height: 100%;
	background: linear-gradient(90deg, #1f7a4d, #2a9d63);
	transition: width .4s ease;
}

.edh-manzil-bar-label {
	text-align: center;
	margin-top: 8px;
	font-size: 16px;
	font-weight: 600;
	color: #1f4e5f;
}

/* Badges */
.edh-badges {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 12px;
}

.edh-badge {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 10px;
	border: 1px solid #e3e3e3;
}

.edh-badge.is-earned {
	background: #eaf7ef;
	border-color: #1f7a4d;
}

.edh-badge.is-locked {
	background: #f7f7f7;
	opacity: 0.65;
}

.edh-badge-icon {
	font-size: 22px;
	color: #1f7a4d;
}

.edh-badge.is-locked .edh-badge-icon {
	color: #aaa;
}

.edh-badge-label {
	font-size: 14px;
	color: #333;
	line-height: 1.5;
}

/* ---------------------------------------------------------------------
 * Daily reminders (Phase 6)
 * ------------------------------------------------------------------ */

.edh-reminders-intro {
	color: #555;
	line-height: 1.9;
	margin-bottom: 14px;
	font-size: 14px;
}

.edh-reminder-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.edh-reminder-row {
	display: flex;
	align-items: center;
	gap: 12px;
	background: #f7faf8;
	border: 1px solid #e3ede7;
	border-radius: 8px;
	padding: 10px 14px;
}

.edh-reminder-toggle {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	accent-color: #1f7a4d;
}

.edh-reminder-label {
	flex: 1;
	font-size: 15px;
	color: #333;
}

.edh-reminder-time {
	border: 1px solid #ccc;
	border-radius: 6px;
	padding: 5px 8px;
	font-family: inherit;
	font-size: 14px;
	color: #1f4e5f;
}

.edh-reminder-del {
	background: none;
	border: none;
	color: #c0392b;
	font-size: 16px;
	cursor: pointer;
	padding: 2px 6px;
	flex-shrink: 0;
}

.edh-reminder-add {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	margin-top: 12px;
	padding: 12px 14px;
	background: #eef4f7;
	border-radius: 8px;
}

.edh-reminder-add-label {
	flex: 1;
	min-width: 150px;
	border: 1px solid #ccc;
	border-radius: 6px;
	padding: 8px 10px;
	font-family: inherit;
	font-size: 14px;
}

.edh-reminder-add-time {
	border: 1px solid #ccc;
	border-radius: 6px;
	padding: 7px 8px;
	font-family: inherit;
	font-size: 14px;
	color: #1f4e5f;
}

.edh-reminder-note {
	margin-top: 12px;
	font-size: 12.5px;
	color: #777;
	line-height: 1.8;
}

/* In-page reminder nudge (fallback when notifications aren't shown) */
.edh-reminder-nudge {
	position: fixed;
	bottom: 18px;
	inset-inline-start: 18px;
	z-index: 9999;
	background: #1f4e5f;
	color: #fff;
	padding: 14px 18px;
	border-radius: 10px;
	font-size: 15px;
	max-width: 320px;
	box-shadow: 0 4px 16px rgba(0,0,0,0.28);
	direction: rtl;
	animation: edh-nudge-in .25s ease;
}

@keyframes edh-nudge-in {
	from { transform: translateY(20px); opacity: 0; }
	to   { transform: translateY(0); opacity: 1; }
}

/* ---------------------------------------------------------------------
 * Resources library — Kalimat + Rabbana (Phase 7)
 * ------------------------------------------------------------------ */

.edh-resources-intro {
	color: #555;
	line-height: 1.9;
	margin-bottom: 16px;
	font-size: 14px;
}

.edh-tabs {
	display: flex;
	gap: 8px;
	margin-bottom: 14px;
}

.edh-tab {
	flex: 1;
	padding: 10px 14px;
	border: 1px solid #cfe0e6;
	background: #fff;
	color: #1f4e5f;
	border-radius: 8px;
	font-family: inherit;
	font-size: 15px;
	cursor: pointer;
}

.edh-tab.is-active {
	background: #1f4e5f;
	color: #fff;
	border-color: #1f4e5f;
	font-weight: 600;
}

.edh-resources-fontbar {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	background: #fafafa;
	border: 1px solid #eee;
	border-radius: 8px;
	margin-bottom: 18px;
}

.edh-res-card {
	background: #f9fbfb;
	border: 1px solid #e6eef1;
	border-right: 4px solid #1f7a4d;
	border-radius: 10px;
	padding: 16px 18px;
	margin-bottom: 14px;
}

.edh-res-head {
	font-size: 14px;
	font-weight: 700;
	color: #1f4e5f;
	margin-bottom: 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid #e6eef1;
}

/* Arabic uses the IndoPak Quran font (defined in fonts.css via
   .edh-ayah-arabic). Mirror that family here; size is set by JS. */
.edh-res-arabic {
	font-family: "EDH IndoPak", "Al Qalam Quran Majeed", "PDMS Saleem QuranFont",
	             "Noto Naskh Arabic", "Traditional Arabic", "Scheherazade New", serif;
	line-height: 2.4;
	color: #14323d;
	text-align: right;
	margin-bottom: 12px;
}

.edh-res-mafhoom {
	font-size: 15px;
	line-height: 2;
	color: #444;
	text-align: right;
	border-top: 1px dashed #dde7ea;
	padding-top: 10px;
}

/* ---------------------------------------------------------------------
 * Auth links — menu item + [edh_login_menu] shortcode
 * ------------------------------------------------------------------ */

/* Make the login/register menu item stand out a little in the nav. */
.edh-menu-login > a,
.edh-menu-dashboard > a {
	color: #1f7a4d !important;
	font-weight: 600;
}

/* Shortcode links (header HTML block / widget / inline) */
.edh-auth-links {
	display: inline-flex;
	gap: 8px;
	align-items: center;
}

.edh-auth-link {
	display: inline-block;
	padding: 7px 14px;
	border-radius: 8px;
	text-decoration: none;
	font-size: 14px;
}

.edh-auth-link--login,
.edh-auth-link--dashboard {
	background: #1f7a4d;
	color: #fff;
}

.edh-auth-link--logout {
	border: 1px solid #1f4e5f;
	color: #1f4e5f;
}

.edh-auth-link--login:hover,
.edh-auth-link--dashboard:hover {
	background: #18603c;
}

/* ---------------------------------------------------------------------
 * 30-Day Istiqamat (tazkiya) sheets
 * ------------------------------------------------------------------ */

.edh-istq {
	border-radius: 10px;
	overflow: hidden;
	margin-bottom: 18px;
	border: 1px solid #e3e3e3;
}

.edh-istq-head {
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	padding: 12px 14px;
	line-height: 1.7;
}

.edh-istq--blue .edh-istq-head { background: #2f6fb0; }
.edh-istq--pink .edh-istq-head { background: #c0306b; }
.edh-istq--teal .edh-istq-head { background: #2a9d8f; }

.edh-istq-meta {
	display: flex;
	justify-content: space-between;
	gap: 8px;
	font-size: 13px;
	color: #555;
	padding: 8px 14px;
	background: #fafafa;
	border-bottom: 1px solid #eee;
}

.edh-istq-grid {
	display: grid;
	grid-template-columns: repeat(10, 1fr);
	gap: 5px;
	padding: 12px 14px;
}

@media (max-width: 480px) {
	.edh-istq-grid { grid-template-columns: repeat(6, 1fr); }
}

.edh-istq-cell {
	aspect-ratio: 1 / 1;
	border: 1px solid #d6d6d6;
	background: #fff;
	border-radius: 6px;
	font-size: 13px;
	color: #444;
	font-family: inherit;
	cursor: pointer;
	transition: background .12s, color .12s, transform .08s;
}

.edh-istq-cell:hover { transform: translateY(-1px); }

.edh-istq--blue .edh-istq-cell.is-done { background: #2f6fb0; color: #fff; border-color: #2f6fb0; }
.edh-istq--pink .edh-istq-cell.is-done { background: #c0306b; color: #fff; border-color: #c0306b; }
.edh-istq--teal .edh-istq-cell.is-done { background: #2a9d8f; color: #fff; border-color: #2a9d8f; }

.edh-istq-foot {
	padding: 0 14px 12px;
	text-align: left;
}

.edh-istq-reset {
	background: none;
	border: 1px solid #ccc;
	color: #777;
	font-size: 12.5px;
	border-radius: 6px;
	padding: 5px 12px;
	cursor: pointer;
	font-family: inherit;
}

.edh-istq-reset:hover { color: #c0392b; border-color: #c0392b; }

/* ---------------------------------------------------------------------
 * "انسان کا مکمل سفر" — the spiritual journey page
 * ------------------------------------------------------------------ */

.edh-safar-title {
	color: #1f4e5f;
	font-size: 24px;
	font-weight: 700;
	text-align: center;
	line-height: 1.7;
	margin-bottom: 8px;
}

.edh-safar-sub {
	text-align: center;
	color: #666;
	line-height: 1.9;
	margin-bottom: 26px;
	font-size: 15px;
}

/* Stage cards with a connecting line */
.edh-safar-stages {
	position: relative;
	margin-bottom: 28px;
}

.edh-stage {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	background: #f7faf8;
	border: 1px solid #e3ede7;
	border-radius: 12px;
	padding: 16px 18px;
	margin-bottom: 12px;
}

.edh-stage-no {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #1f4e5f;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}

.edh-stage--1 .edh-stage-no { background: #5b6b8c; }
.edh-stage--2 .edh-stage-no { background: #2a9d8f; }
.edh-stage--3 .edh-stage-no { background: #6c757d; }
.edh-stage--4 .edh-stage-no { background: #c97b2a; }
.edh-stage--5 .edh-stage-no { background: #b03a3a; }

.edh-stage-body h3 {
	color: #1f4e5f;
	font-size: 17px;
	margin: 4px 0 8px;
}

.edh-stage-body p {
	line-height: 2;
	color: #3a4a4a;
	font-size: 14.5px;
}

.edh-stage-list {
	margin: 10px 0 0;
	padding-right: 22px;
	list-style: disc;
}

.edh-stage-list li {
	margin-bottom: 6px;
	line-height: 1.9;
	font-size: 14px;
}

.edh-stage-note {
	margin-top: 14px;
	padding: 14px 16px;
	background: #f0f7f3;
	border: 1px solid #cfe6da;
	border-right: 4px solid #1f7a4d;
	border-radius: 8px;
}

.edh-stage-note p {
	line-height: 2;
	color: #2c4a3c;
	font-size: 14.5px;
	margin: 0 0 10px;
}

.edh-stage-note p:last-child {
	margin-bottom: 0;
}

.edh-stage-cta {
	margin: 6px 0 0 !important;
	text-align: center;
}

.edh-stage-cta-link {
	display: inline-block;
	background: #1f7a4d;
	color: #fff !important;
	text-decoration: none;
	padding: 11px 22px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.7;
	box-shadow: 0 6px 16px rgba(31,122,77,.25);
	transition: transform .15s, box-shadow .15s;
}

.edh-stage-cta-link:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 22px rgba(31,122,77,.35);
	color: #fff !important;
}

.edh-stage-cta-link span {
	margin-inline-start: 6px;
}

/* Goal banner */
.edh-safar-goal {
	background: linear-gradient(135deg, #1f4e5f, #2a9d8f);
	color: #fff;
	border-radius: 12px;
	padding: 22px;
	text-align: center;
	margin-bottom: 28px;
}

.edh-safar-goal h3 {
	font-size: 20px;
	margin: 0 0 10px;
}

.edh-safar-goal p {
	line-height: 2;
	font-size: 15px;
	opacity: 0.96;
}

/* Map steps */
.edh-safar-map {
	margin-bottom: 28px;
}

.edh-map-step {
	background: #fff;
	border: 1px solid #e6eef1;
	border-right: 4px solid #2a9d8f;
	border-radius: 10px;
	padding: 14px 16px;
	margin-bottom: 10px;
}

.edh-map-step h4 {
	color: #1f4e5f;
	font-size: 16px;
	margin: 0 0 8px;
}

.edh-map-step p {
	line-height: 2;
	color: #3a4a4a;
	font-size: 14.5px;
}

.edh-map-step--goal {
	border-right-color: #c97b2a;
	background: #fff9f2;
}

/* Seven organs grid */
.edh-organs-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 12px;
	margin-top: 14px;
}

.edh-organ-card {
	background: #f9fbfb;
	border: 1px solid #e6eef1;
	border-radius: 10px;
	padding: 14px 16px;
}

.edh-organ-card h4 {
	color: #1f7a4d;
	font-size: 16px;
	margin: 0 0 8px;
	padding-bottom: 6px;
	border-bottom: 1px solid #e6eef1;
}

.edh-organ-good {
	line-height: 1.9;
	color: #3a4a4a;
	font-size: 14px;
}

.edh-safar-foot {
	margin-top: 24px;
	padding: 18px;
	background: #eef4f7;
	border-radius: 10px;
	text-align: center;
	color: #1f4e5f;
	line-height: 2;
	font-size: 15px;
}

/* ---------------------------------------------------------------------
 * Path to salvation — nafs purification (safar page)
 * ------------------------------------------------------------------ */

.edh-safar-nijaat{margin-top:28px;}

.edh-mind-grid{
	display:grid; grid-template-columns:1fr auto 1fr; gap:14px; align-items:center;
	margin:18px 0 16px;
}
.edh-mind-card{border-radius:14px; padding:20px 22px; color:#fff;}
.edh-mind-card--c{background:linear-gradient(135deg,#1f4e9f,#2f6fb0);}
.edh-mind-card--s{background:linear-gradient(135deg,#a01f6b,#c0306b);}
.edh-mind-card h4{margin:0 0 8px; font-size:17px;}
.edh-mind-card p{margin:0; font-size:14px; line-height:1.9; opacity:.95;}
.edh-mind-arrow{font-size:26px; color:#888; text-align:center;}

.edh-nijaat-bridge{
	background:#eef4f7; border-radius:10px; padding:14px 18px;
	font-size:15px; color:#2c4a5a; line-height:1.95; margin:0 0 22px; text-align:center;
}

.edh-nijaat-block{margin-bottom:22px;}
.edh-nijaat-h4{color:#1f4e5f; font-size:17px; margin:0 0 12px; font-weight:700;}
.edh-nijaat-block p{line-height:2; color:#3a4a4a; font-size:14.5px; margin:0 0 12px;}

.edh-trait-tags{display:flex; flex-wrap:wrap; gap:8px;}
.edh-trait-tags span{
	background:#eaf7ef; border:1px solid #bfe2cd; color:#1f7a4d;
	border-radius:999px; padding:7px 16px; font-size:14px;
}

.edh-nijaat-block--asma{
	background:linear-gradient(135deg,#14323d,#1f4e5f); color:#fff;
	border-radius:14px; padding:24px;
}
.edh-nijaat-block--asma .edh-nijaat-h4{color:#ffe6b0;}
.edh-nijaat-block--asma p{color:rgba(255,255,255,.92);}
.edh-asma-grid{
	display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:14px 0;
}
.edh-asma-item{
	background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16);
	border-radius:10px; padding:12px 14px; text-align:center;
}
.edh-asma-item strong{display:block; color:#ffe6b0; font-size:16px; margin-bottom:4px;}
.edh-asma-item em{font-style:normal; font-size:12.5px; opacity:.82;}
.edh-asma-note{font-size:13px !important; opacity:.8; border-top:1px dashed rgba(255,255,255,.25); padding-top:12px; margin:6px 0 0 !important;}

.edh-nijaat-steps{padding-right:22px; margin:0; list-style:decimal;}
.edh-nijaat-steps li{margin-bottom:10px; line-height:1.95; font-size:14.5px; color:#3a4a4a;}
.edh-nijaat-steps strong{color:#1f4e5f;}

.edh-nijaat-goal{
	background:linear-gradient(135deg,#1f7a4d,#2a9d63); color:#fff;
	border-radius:14px; padding:20px 22px; text-align:center;
	font-size:15.5px; line-height:2; margin-top:6px;
}

@media (max-width:680px){
	.edh-mind-grid{grid-template-columns:1fr;}
	.edh-mind-arrow{transform:rotate(90deg);}
	.edh-asma-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:460px){
	.edh-asma-grid{grid-template-columns:1fr;}
}

/* ---------------------------------------------------------------------
 * Masnoon daily practices reference page
 * ------------------------------------------------------------------ */

.edh-mas-title{color:#1f4e5f; font-size:clamp(24px,4vw,32px); font-weight:800; text-align:center; margin:0 0 10px;}
.edh-mas-sub{text-align:center; color:#555; line-height:2; font-size:15px; max-width:760px; margin:0 auto 24px;}

.edh-mas-usool{background:#f0f7f3; border:1px solid #cfe6da; border-right:4px solid #1f7a4d;
	border-radius:10px; padding:18px 20px; margin-bottom:22px;}
.edh-mas-h3{color:#1f4e5f; font-size:17px; margin:0 0 12px;}
.edh-mas-usool ol{margin:0; padding-right:20px;}
.edh-mas-usool li{margin-bottom:10px; line-height:1.95; font-size:14.5px; color:#33453f;}

.edh-mas-sec{border:1px solid #e3ede7; border-radius:10px; margin-bottom:12px; overflow:hidden; background:#fff;}
.edh-mas-sec summary{
	cursor:pointer; padding:15px 18px; font-size:17px; font-weight:700; color:#1f4e5f;
	background:#f7faf8; list-style:none; display:flex; align-items:center; gap:10px;
}
.edh-mas-sec summary::-webkit-details-marker{display:none;}
.edh-mas-sec summary::after{content:'▾'; margin-inline-start:auto; color:#8aa; transition:transform .2s;}
.edh-mas-sec[open] summary::after{transform:rotate(180deg);}
.edh-mas-ico{font-size:20px;}
.edh-mas-body{padding:8px 18px 16px;}

/* Resume cue (masnoon.js): brief note shown at the top of the section the
   salik resumes into, fading away on its own after a few seconds. */
.edh-mas-resume-note{
	background:#fff8e6; border:1px solid #f0d98c; border-right:4px solid #c9a24a;
	border-radius:8px; padding:9px 14px; margin:0 0 12px;
	font-size:13px; color:#6a5224;
}

.edh-mas-row{display:grid; grid-template-columns:1fr 1.4fr; gap:14px; padding:12px 0; border-bottom:1px solid #eef3f1;}
.edh-mas-row:last-child{border-bottom:none;}
.edh-mas-amal{font-weight:700; color:#1f4e5f; font-size:15px;}
.edh-mas-method{font-size:14px; color:#3a4a4a; line-height:1.9;}
.edh-mas-arabic{font-size:22px; line-height:2.3; color:#14323d; margin-bottom:6px; text-align:right;}
.edh-mas-ref{color:#516; color:#5a6a6a; font-size:13.5px;}

.edh-mas-list{margin:6px 0; padding-right:22px; list-style:disc;}
.edh-mas-list li{margin-bottom:9px; line-height:1.95; font-size:14.5px; color:#3a4a4a;}

.edh-mas-foot{background:#eef4f7; border-radius:10px; padding:20px 22px; margin-top:22px;}
.edh-mas-foot h4{color:#1f4e5f; font-size:17px; margin:0 0 12px;}
.edh-mas-foot ul{margin:0 0 14px; padding-right:22px; list-style:disc;}
.edh-mas-foot li{margin-bottom:9px; line-height:1.95; font-size:14.5px; color:#33453f;}
.edh-mas-dua{text-align:center; color:#1f7a4d; font-size:16px; font-weight:600; margin:0;}

@media (max-width:600px){
	.edh-mas-row{grid-template-columns:1fr; gap:6px;}
	.edh-mas-amal{font-size:15.5px;}
}

/* ---------------------------------------------------------------------
 * Masnoon daily life page ([edh_masnoon])
 * ------------------------------------------------------------------ */

.edh-mas-title{color:#1f4e5f; font-size:clamp(24px,4vw,32px); font-weight:800; text-align:center; margin:0 0 10px;}
.edh-mas-sub{text-align:center; color:#566; line-height:2; max-width:780px; margin:0 auto 24px; font-size:15px;}

.edh-mas-usool{background:#f0f7f3; border:1px solid #cfe6da; border-right:4px solid #1f7a4d;
  border-radius:10px; padding:18px 20px; margin-bottom:24px;}
.edh-mas-h3,.edh-mas-h{color:#1f4e5f; font-size:17px; font-weight:700; margin:0 0 12px;}
.edh-mas-usool ol{margin:0; padding-right:20px;}
.edh-mas-usool li{margin-bottom:10px; line-height:1.95; font-size:14.5px; color:#33453f;}
.edh-mas-usool strong{color:#1f7a4d;}

/* Accordion sections */
.edh-mas-sec{background:#fff; border:1px solid #e3ede7; border-radius:12px; margin-bottom:12px; overflow:hidden;}
.edh-mas-sec > summary{
  list-style:none; cursor:pointer; padding:16px 18px; font-size:17px; font-weight:700;
  color:#1f4e5f; background:#f7faf8; display:flex; align-items:center; gap:10px; user-select:none;
}
.edh-mas-sec > summary::-webkit-details-marker{display:none;}
.edh-mas-sec > summary::after{content:"▾"; margin-inline-start:auto; color:#1f7a4d; transition:transform .2s;}
.edh-mas-sec[open] > summary::after{transform:rotate(180deg);}
.edh-mas-sec > summary:hover{background:#eef4f0;}
.edh-mas-ico{font-size:20px;}
.edh-mas-body{padding:8px 18px 16px;}

/* Practice rows */
.edh-mas-row{display:grid; grid-template-columns:200px 1fr; gap:14px; padding:12px 0; border-bottom:1px solid #eef2f0;}
.edh-mas-row:last-child{border-bottom:none;}
.edh-mas-amal{font-weight:700; color:#1f4e5f; font-size:15px; line-height:1.8;}
.edh-mas-method{font-size:14.5px; color:#3a4a4a; line-height:1.95;}
.edh-mas-arabic{font-size:21px; line-height:2.4; color:#14323d; margin-bottom:6px; text-align:right;}
.edh-mas-ref{color:#456;}

/* plain lists (wudu, speech, cleanliness) */
.edh-mas-list{margin:6px 0; padding-right:22px; list-style:disc;}
.edh-mas-list li{margin-bottom:9px; line-height:1.95; font-size:14.5px; color:#3a4a4a;}
.edh-mas-list--numbered{list-style:decimal;}

.edh-mas-subhead{
  color:#1f4e5f; font-size:16px; font-weight:700; margin:18px 0 8px;
  padding-bottom:6px; border-bottom:1px solid #e0e8e4;
}
.edh-mas-subhead:first-child{margin-top:6px;}

.edh-mas-note-fiqh{
  background:#fff8e6; border:1px solid #f0d98c; border-right:4px solid #c9a24a;
  border-radius:8px; padding:11px 14px; margin-top:14px;
  font-size:13.5px; color:#6a5a2c; line-height:1.95;
}

.edh-mas-dua{background:#f9fbfb; border:1px solid #e6eef1; border-radius:8px; padding:10px 14px; margin-top:8px;}

.edh-mas-foot{margin-top:22px; padding:18px 20px; background:#eef4f7; border-radius:10px;
  text-align:center; color:#1f4e5f; line-height:2; font-size:15px;}

@media (max-width:560px){
  .edh-mas-row{grid-template-columns:1fr; gap:4px;}
  .edh-mas-amal{font-size:15.5px;}
}

/* ---------------------------------------------------------------------
 * Muntakhab duas (third tab in resources)
 * ------------------------------------------------------------------ */
.edh-res-source{
  font-size:12.5px; color:#8a9aa0; text-align:left; direction:ltr;
  margin-top:8px; padding-top:8px; border-top:1px dotted #e6eef1;
}

.edh-res-guidance{
  background:linear-gradient(135deg,#fff8e6,#fbf1d7);
  border:1px solid #f0d98c; border-right:4px solid #c9a24a;
  border-radius:12px; padding:20px 22px; margin-top:18px;
}
.edh-res-guidance h4{
  color:#6a5224; font-size:17px; margin:0 0 12px; font-weight:700;
}
.edh-res-guidance ul{
  margin:0 0 14px; padding-right:22px; list-style:disc;
}
.edh-res-guidance li{
  margin-bottom:8px; line-height:1.95; font-size:14.5px; color:#5a4818;
}
.edh-res-guidance li strong{color:#1f4e5f;}
.edh-res-guidance p{
  margin:0; padding-top:12px; border-top:1px dashed #e0c977;
  font-size:14.5px; line-height:2; color:#5a4818;
}

/* ---------------------------------------------------------------------
 * Reciprocal Academy cross-link (unified-identity RULE B hand-off)
 * ------------------------------------------------------------------ */

.edh-academy-crosslink {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: linear-gradient(135deg, #1f4e5f, #2a9d8f);
	color: #fff;
	text-decoration: none;
	border-radius: 12px;
	padding: 14px 20px;
	margin-bottom: 20px;
	font-size: 15px;
	font-weight: 600;
	transition: transform .15s, box-shadow .15s;
	box-shadow: 0 6px 16px rgba(31,78,95,.2);
}

.edh-academy-crosslink:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 22px rgba(31,78,95,.3);
	color: #fff;
}

.edh-academy-crosslink-arrow {
	flex-shrink: 0;
	font-size: 18px;
}
