/* ==========================================================================
   Magazine single post – Pardis Store
   Fonts: ../font/YekanBakhFaNum-*.woff2
   Icons: ../font/material-symbols-v39-latin-regular.woff2
   ========================================================================== */

@font-face {
	font-family: "YekanBakhFaNum";
	src: url("../font/YekanBakhFaNum-Regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "YekanBakhFaNum";
	src: url("../font/YekanBakhFaNum-SemiBold.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "YekanBakhFaNum";
	src: url("../font/YekanBakhFaNum-Bold.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Material Symbols Outlined";
	font-style: normal;
	font-weight: 100 700;
	src: url("../font/material-symbols-v39-latin-regular.woff2") format("woff2");
	font-display: swap;
}

:root {
	--mag-primary: #13369d;
	--mag-primary-hover: #0f2a7a;
	--mag-primary-soft: #eff6ff;
	--mag-primary-border: #dbeafe;
	--mag-on-surface: #1e293b;
	--mag-on-surface-muted: #64748b;
	--mag-border: #e2e8f0;
	--mag-border-strong: #cbd5e1;
	--mag-surface: #ffffff;
	--mag-surface-muted: #f8fafc;
	--mag-radius-sm: 0.375rem;
	--mag-radius-md: 0.5rem;
	--mag-radius-lg: 0.75rem;
	--mag-radius-xl: 1rem;
	--mag-radius-full: 9999px;
	--mag-shadow-sm: 0 1px 2px rgb(15 23 42 / 0.04);
	--mag-shadow-md: 0 4px 6px -1px rgb(15 23 42 / 0.06), 0 2px 4px -2px rgb(15 23 42 / 0.05);
	--mag-font: "YekanBakhFaNum", Tahoma, sans-serif;
	--mag-max-width: 1450px;
}

body.magazine-page,
body.blog-archive-page {
	margin: 0;
	font-family: var(--mag-font);
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--mag-on-surface);
	background: var(--mag-surface-muted);
	-webkit-font-smoothing: antialiased;
}

body.magazine-page img,
body.blog-archive-page img {
	max-width: 100%;
	height: auto;
}

body.magazine-page .woocommerce-breadcrumb {
	display: none !important;
}

/* --- Icons --- */
.mag-icon {
	font-family: "Material Symbols Outlined";
	font-weight: normal;
	font-style: normal;
	font-size: 1.35rem;
	line-height: 1;
	display: inline-block;
	white-space: nowrap;
	direction: ltr;
	vertical-align: middle;
	font-feature-settings: "liga";
}

.mag-icon--sm {
	font-size: 1.125rem;
}

.mag-icon--primary {
	color: var(--mag-primary);
}

.mag-icon--filled {
	font-variation-settings: "FILL" 1;
}

/* --- Layout --- */
.mag-main {
	padding: 1.25rem 0 3rem;
}

.mag-container {
	width: min(100% - 2rem, var(--mag-max-width));
	margin-inline: auto;
}

.mag-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.5rem;
	margin-bottom: 1.25rem;
	font-size: 0.82rem;
	color: var(--mag-on-surface-muted);
}

.mag-breadcrumb__link {
	color: var(--mag-on-surface-muted);
	text-decoration: none;
	transition: color 0.2s ease;
}

.mag-breadcrumb__link:hover {
	color: var(--mag-primary);
}

.mag-breadcrumb__current {
	color: var(--mag-on-surface);
	font-weight: 500;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.mag-breadcrumb__sep {
	font-size: 1rem;
	color: var(--mag-border-strong);
}

.mag-layout {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

@media (min-width: 1024px) {
	.mag-layout {
		flex-direction: row;
		align-items: flex-start;
		gap: 1.5rem;
	}

	.mag-layout__main {
		flex: 1 1 66%;
		min-width: 0;
	}

	.mag-layout__aside {
		flex: 0 0 33%;
		width: 33%;
		min-width: 0;
		position: sticky;
		top: 5.5rem;
	}
}

/* --- Card --- */
.mag-card {
	background: var(--mag-surface);
	border: 1px solid var(--mag-border);
	border-radius: var(--mag-radius-xl);
	box-shadow: var(--mag-shadow-sm);
	padding: 1.15rem 1.25rem;
}

.mag-card + .mag-card {
	margin-top: 1rem;
}

.mag-card__title {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0 0 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid var(--mag-border);
	font-size: 1rem;
	font-weight: 600;
	color: var(--mag-on-surface);
}

.mag-card__title--sm {
	font-size: 0.95rem;
	margin-bottom: 0.85rem;
}

.mag-card__title .mag-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	font-size: 1.2rem;
	border-radius: var(--mag-radius-lg);
	background: var(--mag-primary-soft);
}

/* --- Article --- */
.mag-article {
	background: var(--mag-surface);
	border: 1px solid var(--mag-border);
	border-radius: var(--mag-radius-xl);
	box-shadow: var(--mag-shadow-sm);
	overflow: hidden;
}

.mag-article__header {
	padding: 1.35rem 1.35rem 1rem;
}

.mag-article__category {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	padding: 0.25rem 0.65rem;
	font-size: 0.78rem;
	font-weight: 600;
	color: var(--mag-primary);
	text-decoration: none;
	background: var(--mag-primary-soft);
	border: 1px solid var(--mag-primary-border);
	border-radius: var(--mag-radius-full);
	transition: background-color 0.2s ease, color 0.2s ease;
}

.mag-article__category:hover {
	background: var(--mag-primary);
	color: #fff;
}

.mag-article__title {
	margin: 0 0 1rem;
	font-size: clamp(1.35rem, 2.5vw, 1.85rem);
	font-weight: 700;
	line-height: 1.45;
	color: var(--mag-on-surface);
}

.mag-article__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem 1.1rem;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.82rem;
	color: var(--mag-on-surface-muted);
}

.mag-article__meta li {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.mag-article__hero {
	margin: 0;
	padding: 0;
	line-height: 0;
	background: var(--mag-surface-muted);
	border-bottom: 1px solid var(--mag-border);
}

.mag-article__hero-img,
.mag-article__hero .wp-post-image {
	display: block;
	width: 100% !important;
	height: auto !important;
	max-width: 100%;
	max-height: none !important;
	object-fit: unset;
	object-position: center top;
}

/* --- Table of contents --- */
.mag-toc {
	padding: 1.15rem 1.35rem;
	background: var(--mag-primary-soft);
	border-bottom: 1px solid var(--mag-primary-border);
}

.mag-toc__head {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0.85rem;
}

.mag-toc__title {
	margin: 0;
	font-size: 1rem;
	font-weight: 700;
	color: var(--mag-on-surface);
}

.mag-toc__list {
	margin: 0;
	padding: 0;
	padding-right: 1.1rem;
	list-style: decimal;
	display: grid;
	gap: 0.45rem;
}

.mag-toc__item {
	margin: 0;
	padding: 0;
	font-size: 0.92rem;
	line-height: 1.55;
	color: var(--mag-on-surface-muted);
}

.mag-toc__link {
	color: var(--mag-primary);
	text-decoration: none;
	transition: color 0.2s ease;
}

.mag-toc__link:hover {
	color: var(--mag-primary-hover);
	text-decoration: underline;
}

.mag-article__content {
	padding: 1.35rem;
}

/* --- Prose --- */
.mag-prose {
	font-size: 1rem;
	line-height: 1.9;
	color: var(--mag-on-surface);
}

.mag-prose > *:first-child {
	margin-top: 0;
}

.mag-prose > *:last-child {
	margin-bottom: 0;
}

.mag-prose p {
	margin: 0 0 1.1rem;
}

.mag-prose h2,
.mag-prose h3,
.mag-prose h4 {
	margin: 1.75rem 0 0.75rem;
	line-height: 1.4;
	font-weight: 700;
	color: var(--mag-on-surface);
}

.mag-prose h2 {
	font-size: 1.35rem;
	padding-bottom: 0.45rem;
	border-bottom: 1px solid var(--mag-border);
	scroll-margin-top: 6rem;
}

.mag-prose h3 {
	font-size: 1.15rem;
}

.mag-prose h4 {
	font-size: 1.02rem;
}

.mag-prose a {
	color: var(--mag-primary);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.mag-prose a:hover {
	color: var(--mag-primary-hover);
}

.mag-prose ul,
.mag-prose ol {
	margin: 0 0 1.1rem;
	padding-inline: 1.25rem 0;
}

.mag-prose li {
	margin-bottom: 0.45rem;
}

.mag-prose blockquote {
	margin: 1.25rem 0;
	padding: 0.85rem 1rem;
	border-inline-start: 4px solid var(--mag-primary);
	border-radius: var(--mag-radius-md);
	background: var(--mag-primary-soft);
	color: var(--mag-on-surface);
}

.mag-prose img,
.mag-prose figure {
	margin: 1.25rem 0;
	border-radius: var(--mag-radius-lg);
	overflow: hidden;
}

.mag-prose figcaption {
	margin-top: 0.5rem;
	font-size: 0.82rem;
	color: var(--mag-on-surface-muted);
	text-align: center;
}

.mag-prose table {
	width: 100%;
	margin: 1.25rem 0;
	border-collapse: collapse;
	font-size: 0.9rem;
}

.mag-prose th,
.mag-prose td {
	padding: 0.55rem 0.75rem;
	border: 1px solid var(--mag-border);
	text-align: right;
}

.mag-prose th {
	background: var(--mag-surface-muted);
	font-weight: 600;
}

.mag-prose pre,
.mag-prose code {
	font-family: ui-monospace, Consolas, monospace;
	font-size: 0.88em;
}

.mag-prose pre {
	overflow-x: auto;
	padding: 0.85rem 1rem;
	border-radius: var(--mag-radius-md);
	background: #0f172a;
	color: #e2e8f0;
}

.mag-prose :not(pre) > code {
	padding: 0.12rem 0.35rem;
	border-radius: var(--mag-radius-sm);
	background: var(--mag-surface-muted);
}

.mag-page-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	margin-top: 1.5rem;
	padding-top: 1rem;
	border-top: 1px solid var(--mag-border);
	font-size: 0.88rem;
}

.mag-page-links__label {
	font-weight: 600;
	color: var(--mag-on-surface-muted);
}

.mag-page-links a,
.mag-page-links > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	min-height: 2rem;
	padding: 0 0.5rem;
	border-radius: var(--mag-radius-md);
	text-decoration: none;
}

.mag-page-links a {
	color: var(--mag-primary);
	border: 1px solid var(--mag-primary-border);
	background: var(--mag-primary-soft);
}

/* --- Tags --- */
.mag-article__tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	padding: 0 1.35rem 1.15rem;
}

.mag-article__tags-label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.82rem;
	font-weight: 600;
	color: var(--mag-on-surface-muted);
}

.mag-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.mag-tag {
	display: inline-flex;
	align-items: center;
	padding: 0.28rem 0.65rem;
	font-size: 0.78rem;
	font-weight: 500;
	color: var(--mag-on-surface-muted);
	text-decoration: none;
	background: var(--mag-surface-muted);
	border: 1px solid var(--mag-border);
	border-radius: var(--mag-radius-full);
	transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

.mag-tag:hover {
	color: var(--mag-primary);
	border-color: var(--mag-primary-border);
	background: var(--mag-primary-soft);
}

/* --- Share --- */
.mag-article__share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin: 0 1.35rem 1.35rem;
	padding: 0.85rem 1rem;
	border: 1px solid var(--mag-border);
	border-radius: var(--mag-radius-lg);
	background: var(--mag-surface-muted);
}

.mag-article__share-label {
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--mag-on-surface);
}

.mag-share {
	display: flex;
	align-items: center;
	gap: 0.45rem;
}

.mag-share__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.35rem;
	height: 2.35rem;
	padding: 0;
	color: var(--mag-on-surface-muted);
	background: var(--mag-surface);
	border: 1px solid var(--mag-border);
	border-radius: var(--mag-radius-md);
	cursor: pointer;
	transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.mag-share__btn:hover,
.mag-share__btn.is-copied {
	color: var(--mag-primary);
	border-color: var(--mag-primary-border);
	background: var(--mag-primary-soft);
}

/* --- Post nav --- */
.mag-post-nav {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
	padding: 0 1.35rem 1.35rem;
}

@media (min-width: 640px) {
	.mag-post-nav {
		grid-template-columns: 1fr 1fr;
	}
}

.mag-post-nav__link {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 0.85rem 1rem;
	text-decoration: none;
	border: 1px solid var(--mag-border);
	border-radius: var(--mag-radius-lg);
	background: var(--mag-surface-muted);
	transition: border-color 0.2s ease, background-color 0.2s ease;
}

.mag-post-nav__link:hover {
	border-color: var(--mag-primary-border);
	background: var(--mag-primary-soft);
}

.mag-post-nav__link--next {
	text-align: left;
}

.mag-post-nav__kicker {
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--mag-primary);
}

.mag-post-nav__title {
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.45;
	color: var(--mag-on-surface);
}

/* --- Author --- */
.mag-author {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
}

.mag-author__avatar {
	flex-shrink: 0;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: var(--mag-radius-full);
	border: 2px solid var(--mag-primary-border);
	object-fit: cover;
}

.mag-author__name {
	margin: 0 0 0.35rem;
	font-size: 0.95rem;
	font-weight: 700;
	color: var(--mag-on-surface);
}

.mag-author__bio {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.6;
	color: var(--mag-on-surface-muted);
}

/* --- Related --- */
.mag-related-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.mag-related-item__link {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.55rem;
	text-decoration: none;
	border-radius: var(--mag-radius-lg);
	transition: background-color 0.2s ease;
}

.mag-related-item__link:hover {
	background: var(--mag-surface-muted);
}

.mag-related-item__thumb {
	flex-shrink: 0;
	width: 4rem;
	height: 4rem;
	border-radius: var(--mag-radius-md);
	overflow: hidden;
	background: var(--mag-surface-muted);
}

.mag-related-item__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mag-related-item__body {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-width: 0;
}

.mag-related-item__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 0.85rem;
	font-weight: 600;
	line-height: 1.45;
	color: var(--mag-on-surface);
}

.mag-related-item__date {
	font-size: 0.75rem;
	color: var(--mag-on-surface-muted);
}

/* --- Sidebar CTA --- */
.mag-sidebar-cta__text {
	margin: 0 0 0.85rem;
	font-size: 0.88rem;
	line-height: 1.6;
	color: var(--mag-on-surface-muted);
}

.mag-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	width: 100%;
	min-height: 2.75rem;
	padding: 0.55rem 1rem;
	font-family: inherit;
	font-size: 0.88rem;
	font-weight: 600;
	text-decoration: none;
	border-radius: var(--mag-radius-md);
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.mag-btn--outline {
	color: var(--mag-primary);
	background: var(--mag-surface);
	border: 1px solid var(--mag-primary-border);
}

.mag-btn--outline:hover {
	background: var(--mag-primary-soft);
}

/* --- Comments --- */
.mag-comments {
	margin-top: 0;
	padding: 0 1.35rem 1.35rem;
	border-top: 1px solid var(--mag-border);
}

.mag-comments__title {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 1.15rem 0 1rem;
	font-size: 1rem;
	font-weight: 600;
	color: var(--mag-on-surface);
}

.mag-comments__title .mag-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	font-size: 1.2rem;
	border-radius: var(--mag-radius-lg);
	background: var(--mag-primary-soft);
}

.mag-comments .comment-list,
.mag-comments .children {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mag-comments .comment {
	margin-bottom: 1rem;
	padding: 0.85rem 1rem;
	border: 1px solid var(--mag-border);
	border-radius: var(--mag-radius-lg);
	background: var(--mag-surface-muted);
}

.mag-comments .comment-author {
	font-weight: 600;
	font-size: 0.88rem;
}

.mag-comments .comment-meta {
	margin-bottom: 0.5rem;
	font-size: 0.75rem;
	color: var(--mag-on-surface-muted);
}

.mag-comments .comment-form label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.82rem;
	font-weight: 500;
	color: var(--mag-on-surface-muted);
}

.mag-comments .comment-form input[type="text"],
.mag-comments .comment-form input[type="email"],
.mag-comments .comment-form input[type="url"],
.mag-comments .comment-form textarea {
	width: 100%;
	padding: 0.6rem 0.85rem;
	font-family: inherit;
	font-size: 0.9rem;
	border: 1px solid var(--mag-border);
	border-radius: var(--mag-radius-md);
	background: var(--mag-surface);
}

.mag-comments .form-submit input[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding: 0.55rem 1.25rem;
	font-family: inherit;
	font-size: 0.88rem;
	font-weight: 600;
	color: #fff;
	background: var(--mag-primary);
	border: none;
	border-radius: var(--mag-radius-md);
	cursor: pointer;
}

.mag-comments .form-submit input[type="submit"]:hover {
	background: var(--mag-primary-hover);
}

@media (max-width: 767px) {
	.mag-main {
		padding-top: 0.85rem;
	}

	.mag-container {
		width: min(100% - 1rem, var(--mag-max-width));
	}

	.mag-article__header,
	.mag-article__content,
	.mag-article__tags,
	.mag-article__share,
	.mag-post-nav,
	.mag-comments {
		padding-inline: 1rem;
	}

	.mag-comments {
		padding-bottom: 1rem;
	}

	.mag-back-top {
		inset-inline-start: 0.75rem;
		inset-inline-end: auto;
		bottom: 1rem;
	}
}

/* --- بازگشت به بالا --- */
.mag-back-top {
	position: fixed;
	z-index: 90;
	inset-inline-end: 1.25rem;
	bottom: 1.5rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	color: #fff;
	background: var(--mag-primary);
	border: none;
	border-radius: var(--mag-radius-full);
	box-shadow: var(--mag-shadow-md);
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transform: translateY(0.5rem);
	transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, background-color 0.2s ease;
}

.mag-back-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.mag-back-top:hover {
	background: var(--mag-primary-hover);
}

.mag-back-top .mag-icon {
	font-size: 1.5rem;
	color: inherit;
}
