/* =====================================================================
   Sunnah and Seerah: one stylesheet for the whole site (v1.0)
   Minimal, sunnah.com style: green header band, warm light page, white
   cards with a thin border, one accent green, a little gold for Urdu.
   Every page (home, hadith, lists, search, Seerah, Sahaba, plain pages)
   uses the same tokens, fonts, card, spacing and headings.
   ===================================================================== */

/* ---------- 1. Tokens ---------- */
:root {
	--noor-scale: 1;
	--noor-page: #f7f5f0;
	--noor-bg: #f7f5f0;
	--noor-card: #ffffff;
	--noor-soft: #f1eee6;
	--noor-fg: #1e2723;
	--noor-muted: #636e68;
	--noor-line: #e6e1d5;
	--noor-accent: #17624a;
	--noor-accent-hover: #0f4d3a;
	--noor-accent-soft: #e5f0ea;
	--noor-gold: #a37a2a;
	--noor-gold-ui: #a37a2a;
	--noor-header: #0f3d33;
	--noor-header-fg: #f4f1e8;
	--noor-header-muted: #c9d6cf;
	--noor-header-gold: #e0c27a;
	--noor-good: #17624a; --noor-good-bg: #e5f0ea;
	--noor-warn: #8a5a00; --noor-warn-bg: #fbf0d9;
	--noor-bad: #a32d22;  --noor-bad-bg: #f9e3e0;
	--noor-radius: 10px;
	--noor-radius-lg: 12px;
	--noor-gap: 16px;
	--noor-max: 1000px;
	--noor-gutter: 16px;
	--noor-ui-font: "Figtree", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--noor-ur-font: "Noto Nastaliq Urdu", "Jameel Noori Nastaleeq", "Noto Naskh Arabic", serif;
	--noor-ar-font: "Amiri", "Noto Naskh Arabic", "Traditional Arabic", serif;
	color-scheme: light;
}
html.noor-dark {
	--noor-page: #121614; --noor-bg: #121614; --noor-card: #1a201d; --noor-soft: #212825;
	--noor-fg: #e7ece9; --noor-muted: #9da9a3; --noor-line: #2b3430;
	--noor-accent: #6cc4a0; --noor-accent-hover: #8fd6b8; --noor-accent-soft: #1d3a2f;
	--noor-gold: #d8b262; --noor-gold-ui: #d8b262;
	--noor-header: #0b1311; --noor-header-fg: #eef2ef; --noor-header-muted: #a8b6af; --noor-header-gold: #d8b262;
	--noor-good: #6cc4a0; --noor-good-bg: #1d3a2f; --noor-warn: #e8b74f; --noor-warn-bg: #3a2f17; --noor-bad: #f08a7e; --noor-bad-bg: #3d1f1c;
	--global-palette3: #eef2ef; --global-palette4: #dfe6e2; --global-palette5: #c3cdc8; --global-palette6: #9da9a3;
	--global-palette7: #212825; --global-palette8: #1a201d; --global-palette9: #121614;
	color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
	html:not(.noor-light) {
		--noor-page: #121614; --noor-bg: #121614; --noor-card: #1a201d; --noor-soft: #212825;
		--noor-fg: #e7ece9; --noor-muted: #9da9a3; --noor-line: #2b3430;
		--noor-accent: #6cc4a0; --noor-accent-hover: #8fd6b8; --noor-accent-soft: #1d3a2f;
		--noor-gold: #d8b262; --noor-gold-ui: #d8b262;
		--noor-header: #0b1311; --noor-header-fg: #eef2ef; --noor-header-muted: #a8b6af; --noor-header-gold: #d8b262;
		--noor-good: #6cc4a0; --noor-good-bg: #1d3a2f; --noor-warn: #e8b74f; --noor-warn-bg: #3a2f17; --noor-bad: #f08a7e; --noor-bad-bg: #3d1f1c;
		--global-palette3: #eef2ef; --global-palette4: #dfe6e2; --global-palette5: #c3cdc8; --global-palette6: #9da9a3;
		--global-palette7: #212825; --global-palette8: #1a201d; --global-palette9: #121614;
		color-scheme: dark;
	}
}
html.noor-naskh { --noor-ur-font: "Noto Naskh Arabic", "Amiri", serif; }
@media (min-width: 641px) { :root { --noor-gutter: 24px; } }

/* ---------- 2. Base: fonts and page ---------- */
html, body.noor-site { overflow-x: clip; }
body.noor-site { background: var(--noor-page) !important; color: var(--noor-fg); font-family: var(--noor-ui-font); }
body.noor-site button, body.noor-site input, body.noor-site select, body.noor-site textarea,
body.noor-site h1, body.noor-site h2, body.noor-site h3, body.noor-site h4,
body.noor-site .site-title, body.noor-site .header-navigation a, body.noor-site .mobile-navigation a { font-family: var(--noor-ui-font); }
body.noor-site h1, body.noor-site h2, body.noor-site h3, body.noor-site h4, body.noor-site .entry-title { color: var(--noor-fg); letter-spacing: 0; }
body.noor-site [lang="ur"], .noor-ur, .noor-ur-inline, .noor-ur-line { font-family: var(--noor-ur-font); }
body.noor-site [lang="ar"], .noor-ar { font-family: var(--noor-ar-font); }
body.noor-site a { color: var(--noor-accent); }
body.noor-site a:hover { color: var(--noor-accent-hover); }
body.noor-site .site, body.noor-site .site-container, body.noor-site .content-bg,
body.noor-site .entry.single-entry, body.noor-site .entry.loop-entry,
body.noor-site .site-main .entry-content-wrap { background: transparent !important; box-shadow: none !important; }
body.noor-site .entry.content-bg { margin-left: 0 !important; margin-right: 0 !important; }
body.noor-site .content-container.site-container { max-width: var(--noor-max); padding-left: max(var(--noor-gutter), env(safe-area-inset-left, 0px)) !important; padding-right: max(var(--noor-gutter), env(safe-area-inset-right, 0px)) !important; }
body.noor-site .content-area { margin-top: 24px; margin-bottom: 40px; }
body.noor-site .entry-content-wrap { padding: 0 !important; }
body.noor-site input[type="search"], body.noor-site input[type="text"], body.noor-site select { color: var(--noor-fg); }

/* ﷺ: one tiny bundled font (Noto Naskh Arabic, only this glyph, OFL), never the tall Nastaliq form */
@font-face { font-family: "Noor SAW"; src: url("fonts/noor-saw.woff2") format("woff2"); font-display: block; unicode-range: U+FDFA; }
.noor-saw {
	font-family: "Noor SAW", "Noto Naskh Arabic", "Amiri", serif !important;
	font-size: 1.5em; line-height: 0; font-weight: 400; font-style: normal;
	display: inline-block; vertical-align: -.18em; margin: 0 .1em;
	unicode-bidi: isolate; letter-spacing: 0; text-transform: none; color: inherit;
}
[lang="ur"] .noor-saw, [lang="ar"] .noor-saw, .noor-ur .noor-saw, [dir="rtl"] .noor-saw { font-size: 1.2em; vertical-align: -.1em; }
.noor-ar .noor-saw { font-size: 1.05em; }
h1 .noor-saw, h2 .noor-saw, .entry-title .noor-saw { font-size: 1.3em; vertical-align: -.2em; }

/* ---------- 3. Header and footer (Kadence) ---------- */
body.noor-site #masthead .site-header-row-container-inner,
body.noor-site #mobile-header .site-header-row-container-inner {
	background: var(--noor-header) !important;
	border-bottom: 2px solid var(--noor-header-gold);
}
body.noor-site #masthead .site-title, body.noor-site #masthead .site-title a,
body.noor-site #mobile-header .site-title, body.noor-site #mobile-header .site-title a { color: var(--noor-header-fg) !important; font-weight: 700; letter-spacing: .01em; }
body.noor-site #masthead .site-description { color: var(--noor-header-muted) !important; }
body.noor-site .header-navigation .header-menu-container > ul > li > a { color: var(--noor-header-fg) !important; font-weight: 500; padding-top: .6em; padding-bottom: .6em; }
body.noor-site .header-navigation .header-menu-container > ul > li > a:hover,
body.noor-site .header-navigation .header-menu-container > ul > li.current-menu-item > a { color: var(--noor-header-gold) !important; }
body.noor-site .header-navigation .header-menu-container > ul > li.current-menu-item > a { box-shadow: inset 0 -2px 0 var(--noor-header-gold); }
body.noor-site .header-navigation .sub-menu { background: var(--noor-card) !important; border: 1px solid var(--noor-line); }
body.noor-site .header-navigation .sub-menu a { color: var(--noor-fg) !important; }
body.noor-site .menu-toggle-open, body.noor-site .menu-toggle-open .menu-toggle-icon { color: var(--noor-header-fg) !important; }
body.noor-site #mobile-drawer .drawer-inner { background: var(--noor-header) !important; }
body.noor-site #mobile-drawer .mobile-navigation a { color: var(--noor-header-fg) !important; }
body.noor-site .header-navigation .noor-saw, body.noor-site .mobile-navigation .noor-saw { font-size: 1.55em; }
body.noor-site #colophon .site-footer-row-container-inner { background: var(--noor-header) !important; }
body.noor-site #colophon, body.noor-site #colophon * { color: var(--noor-header-muted); }
body.noor-site #colophon a { color: var(--noor-header-gold) !important; }

/* Theme titles: our pages print their own H1 */
body.single-noor_hadith .entry-header, body.single-noor_sahabi .entry-header,
body.single-noor_event .entry-header, body.single-noor_check .entry-header, body.single-noor_hisn .entry-header { display: none; }
body.single-noor_hadith .post-navigation, body.single-noor_hadith .entry-related, body.single-noor_hadith .comments-area,
body.single-noor_sahabi .post-navigation, body.single-noor_event .post-navigation, body.single-noor_check .post-navigation { display: none !important; }

/* ---------- 4. Shared building blocks ---------- */
.noor-reader { color: var(--noor-fg); font-family: var(--noor-ui-font); font-size: calc(1rem * var(--noor-scale)); line-height: 1.65; -webkit-text-size-adjust: 100%; overflow-wrap: anywhere; }
.noor-reader *, .noor-reader *::before, .noor-reader *::after { box-sizing: border-box; }
.noor-reader a { color: var(--noor-accent); text-decoration: none; }
.noor-reader a:hover { text-decoration: underline; text-underline-offset: 3px; }
.noor-reader ul, .noor-reader ol { margin-left: 0; margin-right: 0; }

/* The one card used everywhere */
.noor-card, .noor-infocard, .noor-verse, .noor-ref-card, .noor-fold, .noor-section, .noor-daily,
.noor-soon, .noor-search, .noor-archive, .noor-colls-card, .noor-claim, .noor-head,
.noor-timeline .noor-tl-item, .noor-grid .noor-card, .noor-step, .noor-pager a {
	background: var(--noor-card);
	border: 1px solid var(--noor-line);
	border-radius: var(--noor-radius-lg);
	box-shadow: none;
}

/* Page wrappers carry no box of their own */
.noor-hadith, .noor-sahabi, .noor-event, .noor-check, .noor-home, .noor-saved-page {
	background: transparent !important; border: 0 !important; padding: 0 !important; box-shadow: none !important; border-radius: 0;
}

/* Titles */
.noor-h1 { font-family: var(--noor-ui-font); font-size: clamp(1.45rem, 3vw, 1.85rem); font-weight: 700; line-height: 1.35; color: var(--noor-fg); margin: 0 0 6px; }
.noor-h1[lang="ur"] { font-family: var(--noor-ur-font); font-weight: 600; line-height: 2.05; font-size: clamp(1.25rem, 2.6vw, 1.55rem); unicode-bidi: plaintext; text-align: start; }
.noor-h1-sub, .noor-muted { color: var(--noor-muted); }
.noor-muted { font-size: .9em; }
.noor-title-ur, .noor-page-ur, .noor-archive-ur, .noor-name-ur {
	font-family: var(--noor-ur-font); font-size: 1.25rem; line-height: 2.1; color: var(--noor-gold-ui); text-align: right; margin: 0 0 6px;
}
.noor-name-ar { font-family: var(--noor-ar-font); font-size: 1.6rem; line-height: 1.8; text-align: right; margin: 0; color: var(--noor-fg); }
.noor-ra { font-family: var(--noor-ur-font); color: var(--noor-gold-ui); font-size: .8em; margin-inline-start: 6px; }

/* Section heading: English left, Urdu right, same on every page */
.noor-sec-head, .noor-h, .noor-section > h2, .noor-ref-title, .noor-fold summary {
	display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap;
	font-family: var(--noor-ui-font); font-size: 1.08rem !important; font-weight: 700; color: var(--noor-fg) !important;
	text-transform: none !important; letter-spacing: 0 !important; margin: 0 0 12px; padding: 0; border: 0;
}
.noor-sec-head h2 { font-size: 1.08rem !important; font-weight: 700; margin: 0; color: var(--noor-fg) !important; text-transform: none; letter-spacing: 0; }
.noor-sec-head > span, .noor-h .noor-ur-inline, .noor-section h2 span[lang="ur"], .noor-ref-title span[lang="ur"], .noor-fold summary span[lang="ur"] {
	font-family: var(--noor-ur-font); font-weight: 400; font-size: 1.12rem; line-height: 2; color: var(--noor-gold-ui) !important;
}

/* Lists */
.noor-list, .noor-grid, .noor-books, .noor-timeline, .noor-colls, .noor-results, .noor-sources { list-style: none; margin: 0; padding: 0; }
.noor-list { display: grid; gap: 10px; }
.noor-list > .noor-card { padding: 14px 16px; }
.noor-hcard { display: grid; gap: 4px; }
.noor-hcard-title { font-family: var(--noor-ur-font); font-size: 1.1rem; line-height: 2; font-weight: 600; color: var(--noor-fg) !important; unicode-bidi: plaintext; }
.noor-hcard p { margin: 0; color: var(--noor-muted); line-height: 1.6; }
.noor-hcard-src { font-size: .85rem; color: var(--noor-muted); }
.noor-list > .noor-card:hover, .noor-colls a:hover, .noor-grid .noor-card:hover { border-color: var(--noor-accent); }
.noor-type { display: inline-block; width: fit-content; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; background: var(--noor-accent-soft); color: var(--noor-accent); padding: 1px 8px; border-radius: 999px; }

/* Chips, pills, buttons */
.noor-chips, .noor-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.noor-filters { margin: 0 0 16px; }
.noor-chip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 14px; border-radius: 999px; background: var(--noor-card); border: 1px solid var(--noor-line); color: var(--noor-fg) !important; font-size: .93rem; line-height: 1.6; text-decoration: none !important; }
.noor-chip span { font-family: var(--noor-ur-font); color: var(--noor-gold-ui); line-height: 1.9; unicode-bidi: isolate; }
.noor-chip small { color: var(--noor-muted); }
.noor-chip:hover { border-color: var(--noor-accent); }
.noor-chip.is-on { background: var(--noor-accent); border-color: var(--noor-accent); color: #fff !important; }
.noor-chip.is-on span { color: inherit; }
html.noor-dark .noor-chip.is-on { color: #10201a !important; }
.noor-pill, .noor-icon-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 38px;
	border-radius: 999px; border: 1px solid var(--noor-line); background: var(--noor-card); color: var(--noor-fg);
	cursor: pointer; font: inherit; font-size: .93rem; text-decoration: none !important; text-transform: none; letter-spacing: 0;
}
.noor-pill { padding: 0 14px; }
.noor-pill small { font-family: var(--noor-ur-font); color: var(--noor-muted); }
.noor-icon-btn { width: 38px; padding: 0; }
.noor-pill:hover, .noor-icon-btn:hover { border-color: var(--noor-accent); color: var(--noor-accent); }
.noor-pill[aria-pressed="true"], .noor-icon-btn.is-done { background: var(--noor-accent); border-color: var(--noor-accent); color: #fff; }
.noor-btn { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 6px 16px; border-radius: 999px; border: 1px solid var(--noor-accent); background: var(--noor-accent); color: #fff !important; font: inherit; font-size: .93rem; text-decoration: none !important; cursor: pointer; }
.noor-btn span { font-family: var(--noor-ur-font); }
.noor-ghost { background: transparent; color: var(--noor-accent) !important; }
.noor-wa { background: #1f8f4e; border-color: #1f8f4e; }
.noor-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; }

/* Badges */
.noor-badge { display: inline-flex; gap: 6px; align-items: center; font-size: .8rem; font-weight: 600; padding: 2px 10px; border-radius: 999px; white-space: nowrap; width: fit-content; }
.noor-badge span { font-family: var(--noor-ur-font); font-weight: 400; line-height: 1.9; }
.noor-tone-good { background: var(--noor-good-bg); color: var(--noor-good); }
.noor-tone-warn { background: var(--noor-warn-bg); color: var(--noor-warn); }
.noor-tone-bad  { background: var(--noor-bad-bg);  color: var(--noor-bad); }

/* Empty states and notes */
.noor-soon { padding: 16px 18px; margin: 0; color: var(--noor-muted); }
.noor-soon span { display: block; font-family: var(--noor-ur-font); line-height: 2.1; text-align: right; margin-top: 4px; color: var(--noor-fg); }
.noor-more { margin: 10px 0 0; text-align: end; font-size: .93rem; font-weight: 600; }
.noor-review { margin: 22px 0 0; font-size: .85rem; color: var(--noor-muted); }

/* Breadcrumbs */
.noor-crumbs { font-size: .85rem; color: var(--noor-muted); margin: 0 0 14px; }
.noor-reader .noor-crumbs a { color: var(--noor-muted); }
.noor-crumbs span[aria-current] { white-space: nowrap; }

/* Section card */
.noor-section { padding: 16px 18px; margin: 0 0 16px; }

/* Search form (archive pages and [noor_search]) */
.noor-search { display: flex; flex-wrap: wrap; gap: 8px; padding: 12px; margin: 0 0 18px; }
.noor-search input[type="search"] { flex: 1 1 220px; min-width: 0; height: 46px; padding: 0 14px; font-size: 16px; border: 1px solid var(--noor-line) !important; border-radius: 10px; background: var(--noor-page) !important; color: var(--noor-fg) !important; box-shadow: none !important; }
.noor-search select { flex: 0 1 auto; height: 46px; padding: 0 12px; border: 1px solid var(--noor-line); border-radius: 10px; background: var(--noor-page); color: var(--noor-fg); font-size: 15px; }
.noor-search button { flex: 0 0 auto; height: 46px; padding: 0 20px; border: 0; border-radius: 10px; background: var(--noor-accent); color: #fff; font-size: 15px; font-weight: 600; cursor: pointer; }
.noor-search button span { font-family: var(--noor-ur-font); font-weight: 400; }
html.noor-dark .noor-search button { color: #10201a; }
.noor-hint { flex-basis: 100%; margin: 2px 2px 0; font-size: .85rem; color: var(--noor-muted); }

/* ---------- 5. Homepage ---------- */
body.noor-site.home .content-container.site-container { max-width: 100%; padding-left: 0 !important; padding-right: 0 !important; }
body.noor-site.home .content-area { margin-top: 0; }
body.noor-site.home .entry-header { display: none; }

.noor-hero {
	background: var(--noor-header); color: var(--noor-header-fg); text-align: center;
	padding: clamp(28px, 6vw, 56px) max(var(--noor-gutter), env(safe-area-inset-left, 0px)) clamp(26px, 5vw, 44px);
}
.noor-hero > * { max-width: 720px; margin-left: auto !important; margin-right: auto !important; }
.noor-hero .noor-hero-ur { font-family: var(--noor-ur-font); font-size: clamp(1.2rem, 3vw, 1.7rem); line-height: 2.1; margin: 0; color: var(--noor-header-gold) !important; }
.noor-hero .noor-hero-en { font-family: var(--noor-ui-font); font-size: clamp(1rem, 2.4vw, 1.25rem) !important; font-weight: 500; line-height: 1.5; color: var(--noor-header-fg) !important; margin: 6px auto 22px !important; text-transform: none; letter-spacing: 0; }

/* Hero search: always fits the screen, button never pushed out */
.noor-hero-search {
	display: flex; align-items: center; width: 100%; max-width: 640px; box-sizing: border-box;
	background: #fff; border-radius: 12px; padding: 5px; gap: 6px; box-shadow: 0 6px 24px rgba(0,0,0,.22);
}
.noor-hero-search input[type="search"] {
	flex: 1 1 auto; min-width: 0; width: 100%; height: 46px; padding: 0 12px;
	border: 0 !important; outline: none; background: transparent !important; box-shadow: none !important;
	color: #1e2723 !important; font-family: var(--noor-ui-font); font-size: 16px !important;
}
.noor-hero-search input[type="search"]::placeholder { color: #7a847f; }
.noor-hero-search button {
	flex: 0 0 auto; height: 46px; min-width: 46px; padding: 0 18px; border: 0; border-radius: 9px; cursor: pointer;
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	background: var(--noor-accent); color: #fff; font-family: var(--noor-ui-font); font-size: 15px; font-weight: 600;
}
html.noor-dark .noor-hero-search button { background: #17624a; color: #fff; }
@media (prefers-color-scheme: dark) { html:not(.noor-light) .noor-hero-search button { background: #17624a; color: #fff; } }
.noor-hero-search button:hover { background: #0f4d3a; }
.noor-hero-search button svg { width: 20px; height: 20px; flex: none; }
.noor-hero-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 16px; }
.noor-hero .noor-hero-chip {
	display: inline-flex; align-items: center; gap: 6px; padding: 4px 13px; border-radius: 999px;
	background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.2); color: var(--noor-header-fg) !important;
	text-decoration: none !important; font-size: .9rem; font-family: var(--noor-ui-font);
}
.noor-hero .noor-hero-chip span { font-family: var(--noor-ur-font); line-height: 1.9; color: var(--noor-header-gold); unicode-bidi: isolate; }
.noor-hero .noor-hero-chip:hover { border-color: var(--noor-header-gold); }
.noor-hero .noor-hero-stats { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 26px; margin-top: 20px; font-size: .9rem; color: var(--noor-header-muted) !important; }
.noor-hero .noor-hero-stats strong { color: var(--noor-header-fg) !important; font-size: 1.15em; margin-right: 4px; }

.noor-home-body { max-width: var(--noor-max); margin: 0 auto; padding: 28px max(var(--noor-gutter), env(safe-area-inset-left, 0px)) 48px; }
.noor-home-sec { margin: 0 0 28px; }
.noor-home-split { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.noor-home-split .noor-home-sec { min-width: 0; }
.noor-continue[hidden] { display: none !important; }

/* Collections: one card with rows, English left, Urdu right (sunnah.com style) */
.noor-colls { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; background: var(--noor-card); border: 1px solid var(--noor-line); border-radius: var(--noor-radius-lg); padding: 4px 18px; }
.noor-colls li { border-bottom: 1px solid var(--noor-line); min-width: 0; }
.noor-colls li:nth-last-child(-n+2):nth-child(odd), .noor-colls li:last-child { border-bottom: 0; }
.noor-colls a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 0; color: var(--noor-fg) !important; text-decoration: none !important; border: 0; background: none; }
.noor-colls a:hover strong { color: var(--noor-accent); }
.noor-colls a.is-empty { opacity: .6; }
.noor-coll-en { display: flex; flex-direction: column; min-width: 0; }
.noor-coll-en strong { font-weight: 600; font-size: 1rem; }
.noor-coll-en small { color: var(--noor-muted); font-size: .8rem; }
.noor-coll-ur { font-family: var(--noor-ur-font); font-size: 1.12rem; line-height: 2; color: var(--noor-gold-ui); text-align: right; flex: 0 1 auto; min-width: 0; }

/* Hadith of the day */
.noor-daily { display: grid; gap: 12px; padding: 18px 20px; }
.noor-daily-label { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px; font-weight: 700; color: var(--noor-fg); }
.noor-daily-label span { font-family: var(--noor-ur-font); font-weight: 400; color: var(--noor-gold-ui); }
.noor-daily .noor-text { background: none; border: 0; padding: 0; margin: 0; }
.noor-daily .noor-ar .noor-text-body { font-size: 1.5rem; line-height: 2.1; }
.noor-daily .noor-ur .noor-text-body { font-size: 1.2rem; line-height: 2.3; }
.noor-daily .noor-en .noor-text-body { font-size: 1.02rem; line-height: 1.65; }
.noor-daily-ref { margin: 0; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding-top: 10px; border-top: 1px solid var(--noor-line); }

/* ---------- 6. Texts (Arabic, Urdu, English) ---------- */
.noor-texts { display: grid; gap: 0; }
.noor-text { padding: 16px 0; border-top: 1px solid var(--noor-line); background: none; border-radius: 0; }
.noor-text:first-child { border-top: 0; padding-top: 6px; }
.noor-text-body { overflow-wrap: anywhere; }
.noor-ar .noor-text-body, .noor-text.noor-ar { font-family: var(--noor-ar-font); font-size: 1.65rem; line-height: 2.15; text-align: right; color: var(--noor-fg); }
.noor-text.noor-ar { font-size: 1rem; }
.noor-ur .noor-text-body { font-family: var(--noor-ur-font); font-size: 1.3rem; line-height: 2.35; text-align: right; }
.noor-text.noor-ur { font-size: 1rem; }
.noor-en .noor-text-body { font-family: var(--noor-ui-font); font-size: 1.1rem; line-height: 1.7; }
.noor-roman .noor-text-body { font-family: var(--noor-ui-font); font-style: italic; font-size: 1.05rem; }
.noor-credit { margin-top: 6px; font-family: var(--noor-ui-font); font-size: .8rem; color: var(--noor-muted); }
.noor-text[dir="rtl"] .noor-credit { text-align: left; direction: ltr; }
html[data-noor-hide~="ar"] .noor-reader [data-lang="ar"], html[data-noor-hide~="ur"] .noor-reader [data-lang="ur"],
html[data-noor-hide~="roman"] .noor-reader [data-lang="roman"], html[data-noor-hide~="en"] .noor-reader [data-lang="en"] { display: none; }

/* ---------- 7. Hadith page ---------- */
/* Sticky sub bar: picker left, tools right, view tabs below */
.noor-bar { position: sticky; top: 0; z-index: 30; display: block; margin: 0 0 16px; padding: 0; background: var(--noor-page); border: 0; }
body.admin-bar .noor-bar { top: 32px; }
@media (max-width: 782px) { body.admin-bar .noor-bar { top: 0; } }
.noor-bar-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 0; }
.noor-bar-label { min-width: 0; font-weight: 600; font-size: 1rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--noor-fg); }
.noor-picker { display: inline-flex; align-items: center; gap: 6px; font-size: 1.1rem; font-weight: 700; color: var(--noor-fg) !important; text-decoration: none !important; }
.noor-picker svg { width: 18px; height: 18px; color: var(--noor-muted); }
.noor-bar-tools { display: flex; gap: 4px; align-items: center; flex: none; }
.noor-bar-tools .noor-icon-btn { border-color: transparent; background: transparent; color: var(--noor-fg); width: 40px; height: 40px; }
.noor-bar-tools .noor-icon-btn:hover { background: var(--noor-soft); }
.noor-bar-tools .noor-icon-btn svg { width: 21px; height: 21px; }
.noor-tabs { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--noor-line); }
.noor-tab { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 6px; margin-bottom: -1px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--noor-muted); font: inherit; font-size: 1rem; font-weight: 600; cursor: pointer; text-transform: none; letter-spacing: 0; }
.noor-tab small { font-family: var(--noor-ur-font); font-weight: 400; font-size: .9em; margin-inline-start: 4px; }
.noor-tab svg { width: 19px; height: 19px; }
.noor-tab[aria-selected="true"] { color: var(--noor-accent); border-bottom-color: var(--noor-accent); }
.noor-toolbar { display: none !important; }

/* Book header card */
.noor-infocard { padding: 18px 20px; margin: 0 0 16px; }
.noor-info-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-direction: row-reverse; }
.noor-info-cal { font-family: var(--noor-ur-font); font-size: 1.45rem; line-height: 2; color: var(--noor-gold-ui); text-align: right; flex: 0 1 auto; max-width: 48%; }
.noor-info-main { min-width: 0; flex: 1; }
.noor-kicker { display: block; margin: 0; }
.noor-kicker span { font-size: 1.1rem; font-weight: 700; color: var(--noor-fg); text-transform: none; letter-spacing: 0; }
.noor-info-main:has(.noor-h1[lang="en"]) .noor-kicker { display: none; }
.noor-infocard .noor-h1 { margin: 6px 0 0; }
.noor-infocard .noor-h1[lang="en"] { font-size: 1.15rem; }
.noor-info-facts { margin: 10px 0 0; color: var(--noor-muted); font-size: .93rem; }
.noor-info-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.noor-info-pills .noor-pill { background: var(--noor-soft); border-color: transparent; font-weight: 600; }
.noor-info-pills .noor-pill svg { width: 17px; height: 17px; flex: none; }
.noor-book { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--noor-line); color: var(--noor-muted); font-size: .93rem; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 12px; }
.noor-book span[lang="ur"] { font-family: var(--noor-ur-font); color: var(--noor-fg); }
.noor-chapter { margin: 10px 0 0; font-size: 1rem; font-weight: 600; display: grid; gap: 2px; }
.noor-chapter .noor-ur-inline { text-align: right; font-weight: 400; font-size: 1.12rem; }
.noor-narrator { margin: 0 0 12px; color: var(--noor-muted); font-size: .95rem; }

/* The hadith itself: one card, number + grade + icons on top, texts divided by thin lines */
.noor-verse { padding: 6px 20px 8px; margin: 0 0 16px; }
.noor-arow { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 0; border-bottom: 1px solid var(--noor-line); margin-bottom: 4px; }
.noor-arow-key { display: flex; align-items: center; gap: 8px; flex: none; white-space: nowrap; }
.noor-key { font-weight: 700; font-size: 1.05rem; color: var(--noor-accent); font-variant-numeric: tabular-nums; }
.noor-arow-tools { display: flex; gap: 2px; margin-inline-start: auto; }
.noor-arow-tools .noor-icon-btn { width: 36px; height: 36px; border-color: transparent; background: transparent; color: var(--noor-muted); }
.noor-arow-tools .noor-icon-btn svg { width: 19px; height: 19px; stroke-width: 1.8; }
.noor-arow-tools .noor-icon-btn:hover { background: var(--noor-accent-soft); color: var(--noor-accent); }
.noor-arow-tools .noor-icon-btn[aria-pressed="true"] { color: var(--noor-gold-ui); }
.noor-arow-tools .noor-icon-btn[aria-pressed="true"] svg { fill: currentColor; }
.noor-no-tr { display: grid; gap: 4px; background: var(--noor-soft) !important; border: 0 !important; margin: 8px 0 12px !important; text-align: start; }
.noor-no-tr span:first-child { text-align: left; line-height: 1.6; font-family: var(--noor-ui-font); color: var(--noor-muted); }

/* Reference card */
.noor-ref-card { padding: 16px 20px; margin: 0 0 16px; scroll-margin-top: 80px; }
.noor-ref-card dl { margin: 0; }
.noor-ref-row { display: grid; grid-template-columns: 200px 1fr; gap: 4px 16px; padding: 10px 0; border-top: 1px solid var(--noor-line); }
.noor-ref-row:first-child { border-top: 0; }
.noor-ref-row dt { font-weight: 600; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.noor-ref-row dt span[lang="ur"] { font-weight: 400; color: var(--noor-muted); }
.noor-ref-n { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--noor-accent-soft); color: var(--noor-accent); font-size: 12px; font-weight: 700; }
.noor-ref-row dd { margin: 0; }
.noor-ref-row dd > div { margin-top: 4px; }
.noor-book-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.noor-book-chip { display: inline-flex; flex-direction: column; padding: 4px 12px; border-radius: 8px; background: var(--noor-accent-soft); color: var(--noor-accent); font-weight: 600; line-height: 1.35; }
.noor-book-chip span[lang="ur"] { font-size: 1.05em; line-height: 1.9; }
.noor-grade-mean, .noor-takhreej { font-size: .92em; color: var(--noor-muted); }
.noor-takhreej span[lang="ar"] { font-size: 1.1em; color: var(--noor-fg); }
.noor-check-link { font-weight: 600; }
.noor-ur-line { line-height: 2; text-align: right; color: var(--noor-fg); }
.noor-ref-note { margin: 10px 0 0; padding: 10px 12px; background: var(--noor-soft); border-radius: 8px; font-size: .9em; color: var(--noor-muted); display: grid; gap: 4px; }
.noor-ref-note span[lang="ur"] { line-height: 2; text-align: right; color: var(--noor-fg); }

/* Explanation */
.noor-fold { margin: 0 0 16px; padding: 0; }
.noor-fold summary { cursor: pointer; padding: 14px 20px; margin: 0; list-style: none; }
.noor-fold summary::-webkit-details-marker { display: none; }
.noor-fold .noor-sharh { padding: 0 20px 16px; line-height: 1.8; }
.noor-fold .noor-sharh h4 { font-size: 1rem; margin: 12px 0 4px; }

/* Previous / next */
.noor-stepnav { display: flex; justify-content: space-between; gap: 10px; margin: 20px 0 6px; }
.noor-step { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; color: var(--noor-fg) !important; text-decoration: none !important; }
.noor-step small { display: block; font-size: 11px; color: var(--noor-muted); text-transform: uppercase; letter-spacing: .06em; }
.noor-step.next { text-align: end; margin-inline-start: auto; }
.noor-step:hover { border-color: var(--noor-accent); }

/* Reading mode */
html.noor-reading .noor-extra, html.noor-reading .noor-crumbs, html.noor-reading .noor-arow-tools,
html.noor-reading .noor-review, html.noor-reading .noor-section, html.noor-reading .noor-infocard, html.noor-reading .noor-narrator { display: none !important; }
html.noor-reading .noor-verse { border-color: transparent; background: transparent; padding-left: 0; padding-right: 0; }
html.noor-reading .noor-hadith .noor-texts { font-size: 1.1em; }
html.noor-reading body.noor-site.single .content-container { max-width: 780px; }

/* ---------- 8. Lists, archives, search ---------- */
.noor-page { max-width: var(--noor-max); margin: 24px auto 40px; padding: 0 max(var(--noor-gutter), env(safe-area-inset-left, 0px)); }
.noor-archive { padding: 0 !important; background: transparent !important; border: 0 !important; }
.noor-archive-head { background: var(--noor-card); border: 1px solid var(--noor-line); border-radius: var(--noor-radius-lg); padding: 18px 20px; margin: 0 0 16px; }
.noor-archive-head .noor-h1 { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 8px; margin: 0; }
.noor-archive-count { margin: 6px 0 0; font-weight: 600; color: var(--noor-accent); }
.noor-archive-count span { font-family: var(--noor-ur-font); font-weight: 400; }
.noor-topic-browse { margin: 0 0 18px; }
.noor-books { display: grid; gap: 8px; margin: 0 0 18px; }
.noor-books li { background: var(--noor-card); border: 1px solid var(--noor-line); border-radius: var(--noor-radius-lg); }
.noor-books a { display: grid; grid-template-columns: 2.6em 1fr auto; grid-template-areas: "no en range" "no ur range"; gap: 0 12px; align-items: center; padding: 10px 16px; color: var(--noor-fg) !important; text-decoration: none !important; }
.noor-book-no { grid-area: no; font-weight: 700; color: var(--noor-accent); }
.noor-book-en { grid-area: en; font-weight: 600; }
.noor-book-ur { grid-area: ur; font-family: var(--noor-ur-font); text-align: right; line-height: 2; color: var(--noor-gold-ui); }
.noor-books .noor-muted { grid-area: range; }
.noor-pagination { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-top: 22px; }
.noor-pagination a, .noor-pagination span { min-width: 40px; height: 40px; padding: 0 10px; display: inline-grid; place-items: center; border: 1px solid var(--noor-line); border-radius: 8px; background: var(--noor-card); color: var(--noor-fg) !important; text-decoration: none !important; }
.noor-pagination .current { background: var(--noor-accent); border-color: var(--noor-accent); color: #fff !important; }

/* ---------- 9. Sahaba, Seerah, Hadith Check ---------- */
.noor-sahabi .noor-head, .noor-event .noor-head, .noor-check .noor-head { padding: 18px 20px; margin: 0 0 16px; }
.noor-head .noor-facts { display: flex; flex-wrap: wrap; gap: 6px 18px; color: var(--noor-muted); font-size: .93rem; margin: 8px 0 0; }
.noor-head .noor-facts strong { color: var(--noor-fg); font-weight: 600; }
.noor-head .noor-chips { margin-top: 10px; }
.noor-head .noor-chip { background: var(--noor-soft); border-color: transparent; }
.noor-body { background: var(--noor-card); border: 1px solid var(--noor-line); border-radius: var(--noor-radius-lg); padding: 18px 20px; margin: 0 0 16px; font-size: 1.05rem; line-height: 1.75; }
.noor-body:empty { display: none; }
.noor-body > :last-child { margin-bottom: 0; }
.noor-body p[lang="ur"], .noor-ur-para { font-family: var(--noor-ur-font); font-size: 1.22rem; line-height: 2.35; text-align: right; margin: 0 0 14px; }
.noor-sources { list-style: decimal; padding-inline-start: 22px; display: grid; gap: 6px; font-size: .93rem; color: var(--noor-muted); }
.noor-sources a { font-weight: 600; }
.noor-pager { display: flex; justify-content: space-between; gap: 10px; margin: 18px 0; border: 0; padding: 0; }
.noor-pager a { flex: 1; padding: 12px 14px; font-weight: 600; color: var(--noor-fg) !important; text-decoration: none !important; }
.noor-pager a:last-child { text-align: end; }
.noor-pager a:hover { border-color: var(--noor-accent); }

/* Sahaba directory */
.noor-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; }
.noor-grid .noor-card { padding: 0; }
.noor-grid .noor-card a { display: grid; gap: 2px; padding: 12px 16px; color: var(--noor-fg) !important; text-decoration: none !important; height: 100%; }
.noor-grid .noor-ur-inline { font-size: 1.15rem; color: var(--noor-gold-ui); text-align: right; line-height: 2; }
.noor-grid strong { font-weight: 600; }

/* Seerah timeline */
.noor-timeline { position: relative; margin-left: 8px !important; padding-left: 22px !important; border-left: 2px solid var(--noor-line); }
.noor-era { list-style: none; margin: 22px 0 10px -32px; padding: 6px 14px; display: flex; justify-content: space-between; gap: 8px; border-radius: 999px; background: var(--noor-accent-soft); color: var(--noor-accent); font-weight: 700; }
.noor-era:first-child { margin-top: 0; }
.noor-era span[lang="ur"] { font-family: var(--noor-ur-font); font-weight: 400; }
.noor-timeline .noor-tl-item { position: relative; display: grid; gap: 2px; padding: 12px 16px; margin: 0 0 10px; list-style: none; }
.noor-tl-item::before { content: ""; position: absolute; left: -30px; top: 18px; width: 12px; height: 12px; border-radius: 50%; background: var(--noor-gold-ui); border: 2px solid var(--noor-page); }
.noor-tl-date { font-size: .82rem; font-weight: 600; color: var(--noor-gold-ui); }
.noor-tl-title { font-weight: 700; font-size: 1.05rem; color: var(--noor-fg) !important; }
.noor-tl-ur { font-family: var(--noor-ur-font); color: var(--noor-gold-ui); text-align: right; line-height: 2; }
.noor-tl-item p { margin: 2px 0 0; color: var(--noor-muted); font-size: .95rem; line-height: 1.6; }

/* Hadith Check */
.noor-claim { margin: 0 0 16px; padding: 14px 18px; border-style: dashed; }
.noor-claim figcaption { font-size: .8rem; text-transform: uppercase; letter-spacing: .05em; color: var(--noor-muted); }
.noor-claim figcaption span { font-family: var(--noor-ur-font); text-transform: none; }
.noor-claim blockquote { margin: 8px 0 0; border: 0; padding: 0; font-style: normal; }
.noor-verdict { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; padding: 14px 18px; border-radius: var(--noor-radius-lg); margin: 0 0 16px; }
.noor-verdict strong { font-size: 1.3em; }
.noor-verdict-label { width: 100%; font-size: .8rem; text-transform: uppercase; letter-spacing: .05em; opacity: .85; }
.noor-verdict-label span { font-family: var(--noor-ur-font); text-transform: none; }

/* ---------- 10. Plain WordPress pages (Hadith Library, Seerah, Sahaba, Sources, About, Saved) ---------- */
body.noor-plain-page .entry-header { margin: 0 0 4px; text-align: start; }
body.noor-plain-page .entry-title { font-family: var(--noor-ui-font); font-size: clamp(1.45rem, 3vw, 1.85rem) !important; font-weight: 700; line-height: 1.35; color: var(--noor-fg) !important; margin: 0; }
body.noor-plain-page .entry-hero-container-inner { background: transparent !important; }
body.noor-plain-page .entry-hero .entry-header { padding: 0; min-height: 0; }
.noor-page-ur { margin: 0 0 18px !important; }
.noor-prose { color: var(--noor-fg); font-family: var(--noor-ui-font); }
.noor-prose > p, .noor-prose > ul, .noor-prose > ol { font-size: 1.05rem; line-height: 1.75; margin: 0 0 1em; }
.noor-prose > h2, .noor-prose > h3 { font-size: 1.15rem; font-weight: 700; margin: 1.6em 0 .5em; line-height: 1.4; }
.noor-prose > h3 { font-size: 1.05rem; }
.noor-prose > p[lang="ur"], .noor-prose > p[dir="rtl"] { font-family: var(--noor-ur-font); font-size: 1.2rem; line-height: 2.3; text-align: right; }
.noor-prose table { width: 100%; border-collapse: collapse; display: block; overflow-x: auto; }
.noor-prose th, .noor-prose td { padding: 10px 12px; border-bottom: 1px solid var(--noor-line); text-align: start; vertical-align: top; }
.noor-prose .noor-reader { margin-bottom: 20px; }

/* ---------- 11. Settings sheet and quick search ---------- */
.noor-sheet { position: fixed; inset: 0; z-index: 100000; }
.noor-sheet[hidden], .noor-qs[hidden] { display: none !important; }
.noor-sheet-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.4); opacity: 0; transition: opacity .2s; }
.noor-sheet-panel { position: absolute; right: 0; top: 0; bottom: 0; width: min(360px, 92vw); background: var(--noor-card); color: var(--noor-fg); padding: 18px; overflow-y: auto; box-shadow: -10px 0 30px rgba(0,0,0,.18); transform: translateX(100%); transition: transform .2s ease; font-family: var(--noor-ui-font); }
.noor-sheet.is-open .noor-sheet-backdrop { opacity: 1; }
.noor-sheet.is-open .noor-sheet-panel { transform: none; }
.noor-sheet-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.noor-sheet-head strong span, .noor-sheet-row > span span { font-family: var(--noor-ur-font); font-weight: 400; color: var(--noor-muted); }
.noor-sheet-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 0; border-top: 1px solid var(--noor-line); }
.noor-sheet-col { flex-direction: column; align-items: stretch; }
.noor-stepper { display: inline-flex; align-items: center; border: 1px solid var(--noor-line); border-radius: 999px; overflow: hidden; }
.noor-stepper button { border: 0; background: transparent; color: var(--noor-fg); width: 40px; height: 36px; cursor: pointer; font: inherit; font-weight: 600; }
.noor-stepper output { min-width: 52px; text-align: center; font-size: 14px; }
.noor-seg { display: inline-flex; border: 1px solid var(--noor-line); border-radius: 10px; overflow: hidden; }
.noor-seg button { border: 0; border-inline-start: 1px solid var(--noor-line); background: transparent; color: var(--noor-fg); padding: 8px 12px; cursor: pointer; font: inherit; font-size: 14px; text-transform: none; letter-spacing: 0; }
.noor-seg button:first-child { border-inline-start: 0; }
.noor-seg button[aria-pressed="true"] { background: var(--noor-accent); color: #fff; }
.noor-seg button[lang="ur"] { font-family: var(--noor-ur-font); font-size: 16px; padding: 4px 14px; }
.noor-naskh-sample { font-family: "Noto Naskh Arabic", "Amiri", serif !important; }
.noor-seg-wrap { display: grid; grid-template-columns: 1fr 1fr; border: 0; gap: 8px; }
.noor-seg-wrap button { border: 1px solid var(--noor-line); border-radius: 10px; }
.noor-seg-wrap button[aria-pressed="false"] { opacity: .55; text-decoration: line-through; }
html.noor-sheet-open { overflow: hidden; }
.noor-qs { position: fixed; inset: 0; z-index: 100001; }
.noor-qs .noor-sheet-backdrop { opacity: 1; }
.noor-qs-panel { position: absolute; left: 50%; top: 12vh; transform: translateX(-50%); width: min(640px, calc(100vw - 24px)); display: flex; align-items: center; gap: 8px; padding: 8px 10px 8px 16px; background: var(--noor-card); color: var(--noor-fg); border-radius: 12px; box-shadow: 0 20px 50px rgba(0,0,0,.3); margin: 0; }
.noor-qs-panel input[type="search"] { flex: 1; min-width: 0; border: 0 !important; background: transparent !important; font-size: 17px; padding: 10px 4px; color: var(--noor-fg) !important; outline: none; box-shadow: none !important; }
.noor-qs-panel > svg { color: var(--noor-muted); flex: none; }

/* ---------- 12. Tablet ---------- */
@media (max-width: 1024px) {
	.noor-home-split { gap: 18px; }
}

/* ---------- 13. Phones ---------- */
@media (max-width: 760px) {
	.noor-colls { grid-template-columns: 1fr; padding: 2px 16px; }
	.noor-colls li:nth-last-child(-n+2):nth-child(odd) { border-bottom: 1px solid var(--noor-line); }
	.noor-colls li:last-child { border-bottom: 0; }
	.noor-home-split { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
	body.noor-site .content-area { margin-top: 14px; }
	.noor-hero .noor-hero-en { margin-bottom: 18px !important; }
	.noor-hero-search { padding: 4px; }
	.noor-hero-search input[type="search"] { height: 44px; padding: 0 10px; }
	.noor-hero-search button { height: 44px; min-width: 44px; padding: 0; width: 44px; }
	.noor-hero-search button .noor-btn-text { display: none; }
	.noor-hero-chips { gap: 6px; }
	.noor-hero .noor-hero-chip { font-size: .85rem; padding: 3px 11px; }
	.noor-hero .noor-hero-stats { gap: 4px 18px; }
	.noor-home-body { padding-top: 20px; }

	.noor-infocard, .noor-verse, .noor-ref-card, .noor-section, .noor-daily, .noor-archive-head, .noor-body,
	.noor-sahabi .noor-head, .noor-event .noor-head, .noor-check .noor-head { padding-left: 16px; padding-right: 16px; }
	.noor-fold summary { padding-left: 16px; padding-right: 16px; }
	.noor-fold .noor-sharh { padding-left: 16px; padding-right: 16px; }
	.noor-info-top { flex-direction: column; align-items: stretch; gap: 2px; }
	.noor-info-cal { max-width: none; font-size: 1.3rem; }
	.noor-info-pills { display: grid; grid-template-columns: 1fr 1fr; }
	.noor-info-pills .noor-pill { justify-content: center; padding: 0 10px; }
	.noor-info-pills .noor-pill small, .noor-info-pills .noor-pill-wide svg:last-child { display: none; }
	.noor-picker { font-size: 1.02rem; }
	.noor-tab { font-size: .95rem; }

	.noor-ar .noor-text-body, .noor-text.noor-ar .noor-text-body { font-size: 1.45rem; line-height: 2.1; }
	.noor-ur .noor-text-body { font-size: 1.16rem; line-height: 2.3; }
	.noor-en .noor-text-body { font-size: 1.04rem; }
	.noor-arow-tools .noor-icon-btn { width: 34px; height: 34px; }
	.noor-arow-tools .noor-wa-i { display: none; }
	.noor-ref-row { grid-template-columns: 1fr; }

	.noor-stepnav { position: sticky; bottom: 0; z-index: 20; margin: 18px calc(-1 * var(--noor-gutter)) 0; padding: 8px var(--noor-gutter) calc(8px + env(safe-area-inset-bottom)); background: var(--noor-page); border-top: 1px solid var(--noor-line); }
	.noor-step { flex: 1; justify-content: center; padding: 8px 12px; }

	.noor-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
	.noor-grid .noor-card a { padding: 10px 12px; }
	.noor-pager { flex-direction: column; }
	.noor-pager a:last-child { text-align: start; }
	.noor-search select, .noor-search button { flex: 1 1 40%; }
	.noor-books a { grid-template-columns: 2em 1fr; grid-template-areas: "no en" "no ur" "no range"; }
	.noor-title-ur, .noor-page-ur, .noor-archive-ur, .noor-name-ur { font-size: 1.12rem; }
	.noor-sheet-panel { left: 0; right: 0; top: auto; width: auto; max-height: 80vh; border-radius: 16px 16px 0 0; transform: translateY(100%); box-shadow: 0 -10px 30px rgba(0,0,0,.2); padding-bottom: calc(18px + env(safe-area-inset-bottom)); }
	.noor-sheet-panel::before { content: ""; display: block; width: 40px; height: 4px; border-radius: 4px; background: var(--noor-line); margin: -6px auto 12px; }
}
@media (max-width: 360px) {
	.noor-grid { grid-template-columns: 1fr; }
}

@media print {
	.noor-bar, .noor-actions, .noor-pager, .noor-search, .noor-stepnav, .noor-arow-tools { display: none !important; }
}
.noor-home-body, .noor-page, .noor-hadith, .noor-sahabi, .noor-event, .noor-check { background-color: var(--noor-page) !important; }
.noor-reader h1, .noor-reader h2, .noor-reader h3, .noor-reader h4, .noor-ref-title, .noor-sec-head, .noor-h { margin-top: 0 !important; }
.noor-reader .noor-h1, .noor-archive-head .noor-h1 { font-size: clamp(1.45rem, 3vw, 1.85rem) !important; line-height: 1.35 !important; margin: 0 0 6px !important; font-family: var(--noor-ui-font) !important; letter-spacing: 0 !important; }
.noor-reader .noor-h1[lang="ur"] { font-family: var(--noor-ur-font) !important; font-size: clamp(1.25rem, 2.6vw, 1.55rem) !important; line-height: 2.05 !important; }
.noor-reader .noor-infocard .noor-h1[lang="en"] { font-size: 1.15rem !important; }
.noor-hcard-title { font-family: var(--noor-ui-font) !important; font-size: 1.05rem; line-height: 1.5; font-weight: 700; }
.noor-hcard-title:dir(rtl) { font-family: var(--noor-ur-font) !important; font-size: 1.1rem; line-height: 2; font-weight: 600; }
body.noor-site .noor-reader button, body.noor-site .noor-search button, body.noor-site .noor-hero-search button { text-transform: none !important; letter-spacing: 0 !important; }
/* Book header: Urdu book name on top (right), English and title below, on every screen size */
.noor-info-top { flex-direction: column; align-items: stretch; gap: 2px; }
.noor-info-cal { max-width: none; }
/* v1.0.1 live fixes (Kadence) */
.noor-reader ul.noor-list, .noor-reader ul.noor-colls, .noor-reader ul.noor-grid, .noor-reader ol.noor-books, .noor-reader ul.noor-results, ul.noor-list { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
body.noor-plain-page .entry-header, body.noor-plain-page .entry-hero .entry-header, body.noor-plain-page .entry-title { text-align: left !important; justify-content: flex-start !important; }
body.noor-plain-page .entry-hero-container-inner .entry-header { padding-top: 8px !important; padding-bottom: 0 !important; }
body.noor-plain-page .content-area { margin-top: 28px; }
body.noor-plain-page .entry-content-wrap > .entry-header { margin-bottom: 4px; }
body.noor-plain-page .entry-hero .entry-header, body.noor-plain-page .entry-header { align-items: flex-start !important; }
body.noor-site .entry-hero .hero-container { max-width: var(--noor-max); padding-left: max(var(--noor-gutter), env(safe-area-inset-left, 0px)) !important; padding-right: max(var(--noor-gutter), env(safe-area-inset-right, 0px)) !important; }
body.noor-site .entry-hero-container-inner { background: transparent !important; }
.noor-reader ul.noor-colls { padding: 4px 18px !important; }
@media (max-width: 760px) { .noor-reader ul.noor-colls { padding: 2px 16px !important; } }

/* ---------- Hisn al-Muslim ---------- */
.noor-coll-ar { font-family: var(--noor-ar-font); font-size: 1.15rem; line-height: 1.9; color: var(--noor-gold-ui); text-align: right; flex: 0 1 auto; min-width: 0; }
.noor-hisn-list { grid-template-columns: 1fr; }
.noor-hisn-list li:nth-last-child(-n+2):nth-child(odd) { border-bottom: 1px solid var(--noor-line); }
.noor-hisn-list li:last-child { border-bottom: 0; }
.noor-hisn-list li[hidden] { display: none; }
.noor-hisn-filter input[type="search"] { flex: 1 1 100%; }
.noor-hisn .noor-info-cal { font-family: var(--noor-ar-font); }
.noor-translit .noor-text-body { color: var(--noor-muted); font-size: 1rem; line-height: 1.7; }
.noor-dua .noor-badge { font-variant-numeric: tabular-nums; }

/* ---------- Credits page ---------- */
.noor-credits-intro { font-size: 1.05rem; line-height: 1.7; margin: 0 0 18px; display: grid; gap: 6px; }
.noor-credits-intro span { font-family: var(--noor-ur-font); text-align: right; line-height: 2.1; color: var(--noor-muted); }
.noor-credit-list { list-style: none; margin: 0; padding: 0 !important; display: grid; }
.noor-credit-item { display: grid; gap: 3px; padding: 12px 0; border-top: 1px solid var(--noor-line); }
.noor-credit-item:first-child { border-top: 0; padding-top: 2px; }
.noor-credit-item strong { font-weight: 600; }
.noor-credit-item span { line-height: 1.6; }
.noor-credit-item small { color: var(--noor-muted); font-size: .85rem; }

/* ---------- Footer links row ---------- */
.noor-footer-links { background: var(--noor-header); border-top: 2px solid var(--noor-header-gold); padding: 18px max(var(--noor-gutter), env(safe-area-inset-left, 0px)); font-family: var(--noor-ui-font); }
.noor-footer-menu { list-style: none; margin: 0 auto !important; padding: 0 !important; max-width: var(--noor-max); display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; }
.noor-footer-menu li { margin: 0; }
.noor-footer-menu a { color: var(--noor-header-fg) !important; text-decoration: none !important; font-size: .95rem; }
.noor-footer-menu a:hover { color: var(--noor-header-gold) !important; }
@media (max-width: 640px) { .noor-footer-menu { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; justify-content: stretch; } }
.noor-alt-num { margin-top: 8px; padding: 8px 10px; background: var(--noor-soft); border-radius: 8px; font-size: .92em; line-height: 1.6; }
.noor-exact-refs { list-style: none; margin: 0; padding: 0 !important; display: grid; gap: 12px; }
.noor-exact-refs li { display: grid; gap: 4px; }
.noor-exact-refs .noor-book-chip { width: fit-content; text-decoration: none !important; }
.noor-ref-state { font-size: .9em; line-height: 1.5; }
.noor-ref-state.noor-ref-good { color: var(--noor-good); }
.noor-ref-state.noor-ref-warn { color: var(--noor-warn); }
.noor-ref-state .noor-ur-line { color: inherit; }
