/**
 * Single-post prose — ported from Sansa haam-article, remapped to paper tokens.
 * Scope: .paper-article__body
 *
 * Defaults:
 *   mark / text-highlight → parchment wipe
 *   internal links → slate-green + wipe on hover
 *   external links → same + dashed + ↗
 *   ul bullets / ol pills → ink
 */

.paper-article__body {
	/* ——— Color system (edit here) ——— */
	--nazemi-mark: #e4dcc0;
	--nazemi-mark-hover: #d9ceb0;
	--nazemi-link: #a51c2a;
	--nazemi-link-on-wipe: #1a1a1a;
	--nazemi-wipe: #edd98a;
	--nazemi-bullet: #1a1a1a;
	--nazemi-ol-bg: #1a1a1a;
	--nazemi-ol-fg: #f7f4ec;

	--nazemi-prose-ink: var(--paper-ink);
	--nazemi-prose-body: var(--paper-muted);
	--nazemi-prose-muted: var(--paper-faint);
	--nazemi-prose-accent: var(--nazemi-mark);
	--nazemi-prose-accent-soft: var(--nazemi-mark);
	--nazemi-prose-link: var(--nazemi-link);
	--nazemi-prose-link-hover: var(--nazemi-link-on-wipe);
	--nazemi-prose-surface: rgba(26, 26, 26, 0.04);
	--nazemi-prose-line: var(--paper-rule);
	--nazemi-prose-quote-bg: rgba(255, 255, 255, 0.45);
	--nazemi-prose-quote-border: rgba(26, 26, 26, 0.12);
	line-height: 32px;
	color: var(--nazemi-prose-body);
	font-size: 18.5px;
	font-weight: 300;
	unicode-bidi: isolate;
	text-align: justify;
	text-justify: inter-word;
	text-align-last: right;
	hyphens: none;
	-webkit-hyphens: none;
	text-rendering: optimizeLegibility;
}

.paper-article__body > *:first-child {
	margin-top: 0 !important;
}

/* Headings */
.paper-article__body h1,
.paper-article__body h2,
.paper-article__body h3,
.paper-article__body h4,
.paper-article__body h5 {
	color: var(--nazemi-prose-ink);
	line-height: 1.45;
	text-align: right;
	font-weight: 800;
	margin-inline-start: 0 !important;
	margin-inline-end: auto !important;
	text-align: start;
}

.paper-article__body h2 {
	font-size: clamp(1.35rem, 2.2vw, 1.6rem);
	margin: 2.2em 0 0.75em;
	padding-bottom: 0;
	border-bottom: none;
	width: auto;
	max-width: 100%;
}

.paper-article__body h3 {
	font-size: clamp(1.15rem, 1.8vw, 1.28rem);
	margin: 1.7em 0 0.55em;
}

.paper-article__body h4 {
	font-size: 1.05rem;
	margin: 1.4em 0 0.45em;
}

.paper-article__body h5 {
	font-size: 1rem;
	margin: 1.25em 0 0.4em;
}

/* Paragraphs + emphasis */
.paper-article__body p {
	margin: 0 0 17px;
	font-size: 18.5px;
	font-weight: 300;
	line-height: 32px;
	color: var(--nazemi-prose-body);
	text-align: justify;
	text-justify: inter-word;
	text-align-last: right;
	unicode-bidi: isolate;
	width: 100%;
	box-sizing: border-box;
}

.paper-article__body p:last-child {
	margin-bottom: 0;
}

.paper-article__body li {
	font-weight: 300;
	line-height: 32px;
	color: var(--nazemi-prose-body);
	text-align: justify;
	text-justify: inter-word;
	text-align-last: right;
	unicode-bidi: isolate;
}

@media (max-width: 720px) {
	.paper-article__body,
	.paper-article__body p,
	.paper-article__body li {
		text-align: start;
		text-justify: auto;
		text-align-last: auto;
	}
}

.paper-article__body strong,
.paper-article__body b {
	font-weight: 800;
	color: var(--nazemi-prose-ink);
}

.paper-article__body em,
.paper-article__body i {
	font-style: italic;
}

.paper-article__body mark {
	background: var(--nazemi-mark);
	color: var(--nazemi-prose-ink);
	padding: 0.05em 0.2em;
	border-radius: 2px;
}

/* Inline text highlight (span.nazemi-text-highlight / .haam-text-highlight) */
.paper-article__body .nazemi-text-highlight,
.paper-article__body .haam-text-highlight {
	position: relative;
	display: inline;
	padding: 0 0.25em;
	z-index: 0;
	color: inherit;
	font-weight: inherit;
}

.paper-article__body .nazemi-text-highlight::before,
.paper-article__body .haam-text-highlight::before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	inset: 0 auto auto 0;
	width: 100%;
	height: 100%;
	background: var(--nazemi-mark);
	border-radius: 2px;
	transform-origin: 100% 1.35em;
	transition: transform 100ms ease-out 50ms, background-color 100ms ease-out 50ms;
}

.paper-article__body .nazemi-text-highlight:hover::before,
.paper-article__body .haam-text-highlight:hover::before {
	transition: transform 100ms ease-out, background-color 100ms ease-out;
	transform: scaleY(0.18);
	background: var(--nazemi-mark-hover);
}

@media (prefers-reduced-motion: reduce) {
	.paper-article__body .nazemi-text-highlight::before,
	.paper-article__body .haam-text-highlight::before {
		transition: none;
	}

	.paper-article__body .nazemi-text-highlight:hover::before,
	.paper-article__body .haam-text-highlight:hover::before {
		transform: none;
	}
}

/* Bare links (fallback before JS enhance) */
.paper-article__body a:not(.wp-block-button__link):not([class*="__btn"]):not(.nazemi-link-highlight):not(.haam-link-highlight) {
	color: var(--nazemi-link);
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
	transition: color 0.2s ease, text-decoration-thickness 0.2s ease;
}

.paper-article__body a:not(.wp-block-button__link):not([class*="__btn"]):not(.nazemi-link-highlight):not(.haam-link-highlight):hover,
.paper-article__body a:not(.wp-block-button__link):not([class*="__btn"]):not(.nazemi-link-highlight):not(.haam-link-highlight):focus-visible {
	color: var(--nazemi-link-on-wipe);
	text-decoration-thickness: 2px;
	outline: none;
}

/* Default prose links — wipe highlight (internal) / dashed+↗ (external) */
.paper-article__body a.nazemi-link-highlight,
.paper-article__body a.haam-link-highlight {
	color: var(--nazemi-link) !important;
	position: relative;
	text-decoration: none !important;
	font-weight: 700;
	-webkit-tap-highlight-color: transparent;
	isolation: isolate;
	transition: color 0.2s ease;
}

.paper-article__body a.nazemi-link-highlight::before,
.paper-article__body a.haam-link-highlight::before {
	background: var(--nazemi-wipe);
	content: "";
	inset: 0;
	position: absolute;
	transform: scaleX(1);
	transform-origin: right;
	transition: transform 0.5s ease-in-out;
	z-index: -1;
}

/* External: arrow + dashed (no wipe fill) */
.paper-article__body a.nazemi-link-highlight.nazemi-link-external::after,
.paper-article__body a.nazemi-link-highlight.haam-link-external::after,
.paper-article__body a.haam-link-highlight.nazemi-link-external::after,
.paper-article__body a.haam-link-highlight.haam-link-external::after {
	content: "↗";
	display: inline;
	margin-inline-start: 0.15em;
	font-weight: 700;
	font-size: 0.85em;
	line-height: 1;
	opacity: 0.85;
	text-decoration: none !important;
}

@media (hover: none), (pointer: coarse) {
	.paper-article__body a.nazemi-link-highlight:not(.nazemi-link-external):not(.haam-link-external),
	.paper-article__body a.haam-link-highlight:not(.nazemi-link-external):not(.haam-link-external) {
		color: var(--nazemi-link) !important;
	}

	.paper-article__body a.nazemi-link-highlight:not(.nazemi-link-external):not(.haam-link-external)::before,
	.paper-article__body a.haam-link-highlight:not(.nazemi-link-external):not(.haam-link-external)::before {
		transform: scaleX(0);
	}

	.paper-article__body a.nazemi-link-highlight:not(.nazemi-link-external):not(.haam-link-external):active,
	.paper-article__body a.haam-link-highlight:not(.nazemi-link-external):not(.haam-link-external):active {
		color: var(--nazemi-link-on-wipe) !important;
	}

	.paper-article__body a.nazemi-link-highlight:not(.nazemi-link-external):not(.haam-link-external):active::before,
	.paper-article__body a.haam-link-highlight:not(.nazemi-link-external):not(.haam-link-external):active::before {
		transform: scaleX(1);
		transform-origin: right;
	}

	.paper-article__body a.nazemi-link-highlight.nazemi-link-external,
	.paper-article__body a.nazemi-link-highlight.haam-link-external,
	.paper-article__body a.haam-link-highlight.nazemi-link-external,
	.paper-article__body a.haam-link-highlight.haam-link-external {
		color: var(--nazemi-link) !important;
		text-decoration: underline !important;
		text-decoration-style: dashed !important;
		text-underline-offset: 0.22em;
		text-decoration-thickness: 1.5px;
	}

	.paper-article__body a.nazemi-link-highlight.nazemi-link-external::before,
	.paper-article__body a.nazemi-link-highlight.haam-link-external::before,
	.paper-article__body a.haam-link-highlight.nazemi-link-external::before,
	.paper-article__body a.haam-link-highlight.haam-link-external::before {
		transform: scaleX(0);
	}
}

@media (hover: hover) and (pointer: fine) {
	.paper-article__body a.nazemi-link-highlight::before,
	.paper-article__body a.haam-link-highlight::before {
		transform: scaleX(0);
		transform-origin: left;
	}

	.paper-article__body a.nazemi-link-highlight:not(.nazemi-link-external):not(.haam-link-external):hover,
	.paper-article__body a.nazemi-link-highlight:not(.nazemi-link-external):not(.haam-link-external):focus-visible,
	.paper-article__body a.haam-link-highlight:not(.nazemi-link-external):not(.haam-link-external):hover,
	.paper-article__body a.haam-link-highlight:not(.nazemi-link-external):not(.haam-link-external):focus-visible {
		color: var(--nazemi-link-on-wipe) !important;
	}

	.paper-article__body a.nazemi-link-highlight:not(.nazemi-link-external):not(.haam-link-external):hover::before,
	.paper-article__body a.nazemi-link-highlight:not(.nazemi-link-external):not(.haam-link-external):focus-visible::before,
	.paper-article__body a.haam-link-highlight:not(.nazemi-link-external):not(.haam-link-external):hover::before,
	.paper-article__body a.haam-link-highlight:not(.nazemi-link-external):not(.haam-link-external):focus-visible::before {
		transform: scaleX(1);
		transform-origin: right;
	}

	/* External desktop: dashed underline, no wipe */
	.paper-article__body a.nazemi-link-highlight.nazemi-link-external,
	.paper-article__body a.nazemi-link-highlight.haam-link-external,
	.paper-article__body a.haam-link-highlight.nazemi-link-external,
	.paper-article__body a.haam-link-highlight.haam-link-external {
		text-decoration: underline !important;
		text-decoration-style: dashed !important;
		text-underline-offset: 0.22em;
		text-decoration-thickness: 1.5px;
	}

	.paper-article__body a.nazemi-link-highlight.nazemi-link-external::before,
	.paper-article__body a.nazemi-link-highlight.haam-link-external::before,
	.paper-article__body a.haam-link-highlight.nazemi-link-external::before,
	.paper-article__body a.haam-link-highlight.haam-link-external::before {
		transform: scaleX(0) !important;
	}

	.paper-article__body a.nazemi-link-highlight.nazemi-link-external:hover,
	.paper-article__body a.nazemi-link-highlight.haam-link-external:hover,
	.paper-article__body a.haam-link-highlight.nazemi-link-external:hover,
	.paper-article__body a.haam-link-highlight.haam-link-external:hover {
		color: var(--nazemi-link-on-wipe) !important;
		text-decoration-thickness: 2px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.paper-article__body a.nazemi-link-highlight::before,
	.paper-article__body a.haam-link-highlight::before {
		transition: none;
	}
}

/* Lists */
.paper-article__body ul,
.paper-article__body ol,
.paper-article__body .wp-block-list {
	margin: 1em 0 1.4em;
	padding: 0 1.35em 0 0;
}

.paper-article__body ul {
	list-style: none;
}

.paper-article__body ul > li {
	position: relative;
	padding-right: 0.15em;
	margin-bottom: 0.65em;
	line-height: 2;
}

.paper-article__body ul > li::before {
	content: "";
	position: absolute;
	right: -1.05em;
	top: 0.85em;
	width: 0.42em;
	height: 0.42em;
	border-radius: 50%;
	background: var(--nazemi-bullet);
	opacity: 0.7;
}

.paper-article__body ol {
	list-style: none;
	counter-reset: nazemi-ol;
}

.paper-article__body ol > li {
	position: relative;
	counter-increment: nazemi-ol;
	padding-right: 2.6rem;
	margin-bottom: 0.65em;
	line-height: 2;
}

.paper-article__body ol > li::before {
	content: counter(nazemi-ol);
	position: absolute;
	inset-inline-end: 0;
	top: 0.5em;
	width: 24px;
	height: 24px;
	border-radius: 0;
	background: var(--nazemi-ol-bg);
	color: var(--nazemi-ol-fg);
	font-family: system-ui, -apple-system, "Segoe UI", Tahoma, sans-serif;
	font-size: 12px;
	font-weight: 700;
	font-style: normal;
	font-variant-numeric: lining-nums tabular-nums;
	/* line-height:0 + flex = true glyph center (no font ascender bias) */
	line-height: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 0 !important;
	margin: 0 !important;
	border: 0;
	box-sizing: border-box;
	direction: ltr;
	unicode-bidi: isolate;
	transform: none;
	letter-spacing: 0;
	word-spacing: 0;
	text-indent: 0;
	overflow: hidden;
}

.paper-article__body li > ul,
.paper-article__body li > ol {
	margin-top: 0.45em;
	margin-bottom: 0.35em;
}

/* Blockquote / pullquote */
.paper-article__body blockquote,
.paper-article__body .wp-block-quote,
.paper-article__body .wp-block-pullquote {
	position: relative;
	margin: 1.75em 0;
	padding: 1.2em 1.35em 1.15em;
	background: var(--nazemi-prose-quote-bg);
	border: 1px solid var(--nazemi-prose-quote-border);
	border-radius: 8px;
	box-shadow: none;
	color: var(--nazemi-prose-ink);
	font-style: normal;
	font-size: 1.06em;
	line-height: 1.9;
}

.paper-article__body blockquote::before,
.paper-article__body .wp-block-quote::before {
	content: "«";
	display: block;
	margin-bottom: 0.15em;
	font-size: 1.65em;
	line-height: 1;
	color: var(--nazemi-prose-muted);
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 700;
	pointer-events: none;
}

.paper-article__body blockquote::after,
.paper-article__body .wp-block-quote::after {
	content: none;
	display: none;
}

.paper-article__body blockquote p,
.paper-article__body .wp-block-quote p {
	margin: 0 0 0.55em;
	font-weight: 500;
	text-align: start;
	text-align-last: auto;
	width: auto;
}

.paper-article__body blockquote p::before,
.paper-article__body .wp-block-quote p::before,
.paper-article__body blockquote p::after,
.paper-article__body .wp-block-quote p::after {
	content: none;
	display: none;
}

.paper-article__body blockquote p::first-letter,
.paper-article__body .wp-block-quote p::first-letter {
	all: unset;
}

.paper-article__body blockquote p:last-child,
.paper-article__body .wp-block-quote p:last-child {
	margin-bottom: 0;
}

.paper-article__body blockquote cite,
.paper-article__body .wp-block-quote cite {
	display: block;
	position: static;
	margin-top: 0.85em;
	padding-top: 0.75em;
	border-top: 1px solid var(--nazemi-prose-quote-border);
	background: transparent;
	color: var(--nazemi-prose-muted);
	font-size: 0.88em;
	font-style: normal;
	font-weight: 600;
}

.paper-article__body blockquote cite::before,
.paper-article__body .wp-block-quote cite::before {
	content: none;
}

.paper-article__body .wp-block-pullquote blockquote {
	border: 0;
	box-shadow: none;
	background: transparent;
	padding: 0;
	margin: 0;
}

.paper-article__body .wp-block-pullquote blockquote::before {
	display: none;
}

/* Tables */
.paper-article__body .wp-block-table,
.paper-article__body .ai-styled-table-wrap {
	margin: 1.5em 0;
	overflow-x: auto;
}

.paper-article__body .wp-block-table table,
.paper-article__body table.ai-styled-table,
.paper-article__body .ai-styled-table,
.paper-article__body table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	direction: rtl;
	font-size: 0.95em;
	overflow: hidden;
	margin: 0;
	border: 1px solid var(--nazemi-prose-line);
}

.paper-article__body .wp-block-table thead th,
.paper-article__body .ai-styled-table thead th,
.paper-article__body table thead th {
	background: var(--nazemi-prose-ink);
	color: var(--paper-sheet);
	padding: 14px 18px;
	text-align: right;
	font-weight: 700;
	border-bottom: 1px solid var(--nazemi-prose-ink);
}

.paper-article__body .wp-block-table tbody td,
.paper-article__body .ai-styled-table tbody td,
.paper-article__body table tbody td {
	padding: 12px 18px;
	border-bottom: 1px solid var(--nazemi-prose-line);
	text-align: right;
	background: rgba(255, 255, 255, 0.35);
}

.paper-article__body .wp-block-table tbody tr:nth-child(even) td,
.paper-article__body .ai-styled-table tbody tr:nth-child(even) td,
.paper-article__body table tbody tr:nth-child(even) td {
	background: var(--nazemi-prose-surface);
}

.paper-article__body .wp-block-table tbody tr:hover td,
.paper-article__body .ai-styled-table tbody tr:hover td,
.paper-article__body table tbody tr:hover td {
	background: rgba(26, 26, 26, 0.08);
}

.paper-article__body .ai-styled-table .total-row td,
.paper-article__body table .total-row td {
	background: var(--nazemi-prose-ink) !important;
	color: var(--paper-sheet) !important;
	font-weight: 700;
}

/* Code (core + custom wrapper with copy) */
.paper-article__body .wp-block-code,
.paper-article__body .wp-block-preformatted,
.paper-article__body pre {
	background: #1a1a1a;
	color: #e8e4dc;
	padding: 1em 1.15em;
	border-radius: 0;
	overflow-x: auto;
	direction: ltr;
	text-align: left;
	font-family: Consolas, "Courier New", monospace;
	font-size: 0.9em;
	line-height: 1.7;
	margin: 1.5em 0;
}

.paper-article__body .wp-block-code code {
	background: transparent;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
}

.paper-article__body :not(pre) > code {
	background: var(--nazemi-prose-accent-soft);
	color: var(--nazemi-prose-ink);
	padding: 0.1em 0.35em;
	border-radius: 4px;
	font-size: 0.92em;
	direction: ltr;
	unicode-bidi: isolate;
}

.paper-article__body .code-block-wrapper {
	position: relative;
	margin: 1.5em 0;
	border-radius: 0;
	overflow: hidden;
	border: 1px solid var(--nazemi-prose-ink);
}

.paper-article__body .code-block-header {
	background: #1f2937;
	color: #e5e7eb;
	padding: 10px 16px;
	font-size: 0.82em;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #374151;
	direction: ltr;
}

.paper-article__body .code-copy-btn {
	background: var(--nazemi-prose-ink);
	color: var(--paper-sheet);
	border: none;
	padding: 6px 16px;
	border-radius: 0;
	cursor: pointer;
	font-family: inherit;
	font-size: 0.85em;
	font-weight: 700;
	transition: opacity 0.2s ease, background-color 0.2s ease;
}

.paper-article__body .code-copy-btn:hover {
	opacity: 0.88;
}

.paper-article__body .code-copy-btn.copied {
	background: #2f6f4e;
}

.paper-article__body .code-block-body {
	background: #111827;
	color: #e5e7eb;
	padding: 18px 20px;
	overflow-x: auto;
	font-family: Consolas, "Courier New", monospace;
	font-size: 0.9em;
	direction: ltr;
	text-align: left;
	white-space: pre;
	line-height: 1.7;
	margin: 0;
}

/* Soft callout */
.paper-article__body .wp-block-group.is-style-haam-callout,
.paper-article__body .nazemi-callout {
	background: rgba(255, 255, 255, 0.4);
	border: 1px solid var(--nazemi-prose-quote-border);
	padding: 1.05em 1.25em;
	margin: 1.35em 0;
	border-radius: 0;
}

/* Stack item — sharp ink rule (from snippet, paper remap) */
.paper-article__body .ai-stack-item,
.paper-article__body .wp-block-group.is-style-haam-stack {
	background: var(--nazemi-prose-surface);
	border: 0;
	border-right: 4px solid var(--nazemi-prose-ink);
	padding: 12px 18px;
	margin: 0.6em 0;
	border-radius: 0;
	font-size: 0.97em;
}

.paper-article__body .ai-stack-item strong,
.paper-article__body .wp-block-group.is-style-haam-stack strong {
	color: var(--nazemi-prose-ink);
	font-weight: 800;
}

/* Highlight box — sharp, no purple */
.paper-article__body .highlight-box,
.paper-article__body .wp-block-group.is-style-haam-highlight {
	position: relative;
	width: 100%;
	max-width: 100%;
	border: 2px solid var(--nazemi-prose-ink);
	border-radius: 0;
	padding: 1.5em 2em;
	margin: 1.5em 0;
	color: var(--nazemi-prose-ink);
	overflow: hidden;
	background: rgba(255, 255, 255, 0.55);
	box-shadow: none;
	font-size: 1.05em;
	line-height: 2;
}

.paper-article__body .highlight-box h3,
.paper-article__body .wp-block-group.is-style-haam-highlight h3 {
	color: var(--nazemi-prose-ink);
	font-size: 1.15rem;
	font-weight: 800;
	margin: 0 0 12px;
	border-bottom: none;
	padding-bottom: 0;
	width: auto;
}

.paper-article__body .highlight-box p,
.paper-article__body .wp-block-group.is-style-haam-highlight p {
	color: var(--nazemi-prose-body);
	font-size: 0.97rem;
	line-height: 1.9;
	margin: 0;
	font-weight: 400;
}

.paper-article__body .highlight-box strong,
.paper-article__body .wp-block-group.is-style-haam-highlight strong {
	color: var(--nazemi-prose-ink);
	font-weight: 800;
}

/* PDF download box */
.paper-article__body .ai-pdf-download-box {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	column-gap: 1.25em;
	row-gap: 0.75em;
	background: rgba(255, 255, 255, 0.55);
	border: 2px solid var(--nazemi-prose-ink);
	border-right: 6px solid var(--nazemi-prose-ink);
	padding: 1.25em 1.5em;
	margin: 1.5em 0;
	border-radius: 0;
	box-shadow: none;
	height: auto;
	max-width: 100%;
	box-sizing: border-box;
}

.paper-article__body .ai-pdf-download-badge {
	grid-row: 1 / span 2;
	align-self: start;
	flex-shrink: 0;
	background: var(--nazemi-prose-ink);
	color: var(--paper-sheet);
	font-weight: 800;
	font-size: 0.8em;
	letter-spacing: 0.04em;
	padding: 0.55em 0.75em;
	border-radius: 0;
	line-height: 1;
	margin: 0;
	height: fit-content;
}

.paper-article__body .ai-pdf-download-body {
	min-width: 0;
	max-width: 100%;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.paper-article__body .ai-pdf-download-body h3 {
	margin: 0 0 0.35em !important;
	font-size: 1.15em !important;
	font-weight: 800 !important;
	color: var(--nazemi-prose-ink) !important;
	border-bottom: none !important;
	padding-bottom: 0 !important;
	width: auto !important;
	line-height: 1.4 !important;
}

.paper-article__body .ai-pdf-download-meta,
.paper-article__body .ai-pdf-download-desc {
	width: auto !important;
	max-width: 100%;
	text-align: start !important;
	text-align-last: auto !important;
	text-justify: auto !important;
}

.paper-article__body .ai-pdf-download-meta {
	margin: 0 0 0.45em;
	font-size: 0.88em;
	color: var(--nazemi-prose-muted);
	font-style: italic;
	line-height: 1.5;
}

.paper-article__body .ai-pdf-download-desc {
	margin: 0 0 0.85em;
	font-size: 0.95em;
	color: var(--nazemi-prose-body);
	line-height: 1.7;
	font-weight: 400;
}

/* Button row — physical left (RTL: flex-end) */
.paper-article__body .ai-pdf-download-body > p:has(> .ai-pdf-download-btn) {
	display: flex;
	justify-content: flex-end;
	margin: 0;
	width: 100% !important;
}

.paper-article__body a.ai-pdf-download-btn,
.paper-article__body a.ai-pdf-download-btn:hover,
.paper-article__body a.ai-pdf-download-btn:focus-visible {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	align-self: flex-end;
	width: fit-content !important;
	max-width: 100%;
	margin: 0 !important;
	margin-inline-start: auto !important;
	margin-inline-end: 0 !important;
	background: var(--nazemi-prose-ink) !important;
	color: var(--paper-sheet) !important;
	-webkit-text-fill-color: var(--paper-sheet) !important;
	font-weight: 700 !important;
	font-size: 0.92em !important;
	padding: 0.55em 1.25em !important;
	border-radius: 0 !important;
	text-decoration: none !important;
	border: 2px solid var(--nazemi-prose-ink) !important;
	line-height: 1.4;
	box-shadow: none !important;
	position: relative;
	isolation: isolate;
}

.paper-article__body a.ai-pdf-download-btn::before,
.paper-article__body a.ai-pdf-download-btn::after {
	content: none !important;
	display: none !important;
}

.paper-article__body a.ai-pdf-download-btn:hover,
.paper-article__body a.ai-pdf-download-btn:focus-visible {
	opacity: 0.9;
}

/* Section number — hidden (not used on Nazemi) */
.paper-article__body .ai-section-number {
	display: none !important;
}

/* Verdict keywords */
.paper-article__body .verdict-buy {
	color: #2f6f4e;
	font-weight: 700;
}

.paper-article__body .verdict-skip {
	color: #a33b3b;
	font-weight: 700;
}

.paper-article__body .verdict-hybrid {
	color: #8a6a2a;
	font-weight: 700;
}

/* Separators / images */
.paper-article__body hr,
.paper-article__body .wp-block-separator {
	border: 0;
	border-top: 1px solid var(--nazemi-prose-line);
	margin: 2em 0;
}

.paper-article__body .wp-block-image,
.paper-article__body figure {
	max-width: 100%;
	margin: 1.25em 0;
}

.paper-article__body .wp-block-image img,
.paper-article__body figure img,
.paper-article__body img.alignleft,
.paper-article__body img.alignright,
.paper-article__body img.aligncenter,
.paper-article__body img.alignnone {
	border-radius: 8px;
	max-width: 100%;
	height: auto;
}

.paper-article__body .wp-block-image:not(.alignleft):not(.alignright):not(.aligncenter) img,
.paper-article__body img.alignnone {
	display: block;
}

.paper-article__body .wp-block-image.aligncenter,
.paper-article__body .aligncenter {
	display: block;
	margin-inline: auto;
	text-align: center;
	float: none;
}

.paper-article__body .wp-block-image.aligncenter img,
.paper-article__body img.aligncenter {
	display: block;
	margin-inline: auto;
}

.paper-article__body .wp-block-image.alignright,
.paper-article__body .alignright {
	float: right;
	margin: 0.35em 0 1em 1.25em;
	text-align: right;
}

.paper-article__body .wp-block-image.alignleft,
.paper-article__body .alignleft {
	float: left;
	margin: 0.35em 1.25em 1em 0;
	text-align: left;
}

.paper-article__body::after {
	content: "";
	display: table;
	clear: both;
}

.paper-article__body figcaption {
	box-sizing: border-box;
	width: fit-content;
	max-width: 100%;
	margin: 0.75em auto 0;
	padding: 10px 16px;
	border: 1px solid var(--nazemi-prose-line);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.45);
	color: var(--nazemi-prose-muted);
	font-size: 0.88em;
	font-weight: 500;
	line-height: 1.65;
	text-align: center;
}

.paper-article__body .wp-block-image.alignleft figcaption,
.paper-article__body .alignleft figcaption {
	margin-inline: 0 auto;
	text-align: right;
}

.paper-article__body .wp-block-image.alignright figcaption,
.paper-article__body .alignright figcaption {
	margin-inline: auto 0;
	text-align: right;
}

@media (max-width: 600px) {
	.paper-article__body ul,
	.paper-article__body ol {
		padding-right: 1.15em;
	}

	.paper-article__body ol > li::before {
		right: 0;
	}

	.paper-article__body .ai-pdf-download-box {
		grid-template-columns: 1fr;
		padding: 1.1em 1.2em;
	}

	.paper-article__body .ai-pdf-download-badge {
		grid-row: auto;
		width: fit-content;
	}
}

/* Dark / dim — keep prose readable on tinted sheet */
body[data-nazemi-theme="dark"] .paper-article__body,
body[data-nazemi-theme="dim"] .paper-article__body {
	--nazemi-mark: rgba(240, 226, 138, 0.35);
	--nazemi-mark-hover: rgba(240, 226, 138, 0.5);
	--nazemi-link: #f07178;
	--nazemi-link-on-wipe: #1a1a1a;
	--nazemi-wipe: rgba(237, 217, 138, 0.5);
	--nazemi-bullet: #e8e4dc;
	--nazemi-ol-bg: #e8e4dc;
	--nazemi-ol-fg: #1a1a1a;
	--nazemi-prose-quote-bg: rgba(255, 255, 255, 0.04);
	--nazemi-prose-quote-border: rgba(255, 255, 255, 0.12);
	--nazemi-prose-accent-soft: var(--nazemi-mark);
	--nazemi-prose-surface: rgba(255, 255, 255, 0.05);
}

body[data-nazemi-theme="dark"] .paper-article__body .wp-block-table tbody td,
body[data-nazemi-theme="dark"] .paper-article__body table tbody td,
body[data-nazemi-theme="dim"] .paper-article__body .wp-block-table tbody td,
body[data-nazemi-theme="dim"] .paper-article__body table tbody td,
body[data-nazemi-theme="dark"] .paper-article__body figcaption,
body[data-nazemi-theme="dim"] .paper-article__body figcaption,
body[data-nazemi-theme="dark"] .paper-article__body .highlight-box,
body[data-nazemi-theme="dim"] .paper-article__body .highlight-box,
body[data-nazemi-theme="dark"] .paper-article__body .ai-pdf-download-box,
body[data-nazemi-theme="dim"] .paper-article__body .ai-pdf-download-box,
body[data-nazemi-theme="dark"] .paper-article__body .ai-stack-item,
body[data-nazemi-theme="dim"] .paper-article__body .ai-stack-item {
	background: rgba(255, 255, 255, 0.04);
}
