/*
Theme Name: غزاله غضنفری
Theme URI: https://ghazalehghazanfari.com
Author: Ghazaleh Studio
Description: قالب بلوکی (Full Site Editing) فارسی و راست‌چین برای وب‌سایت غزاله غضنفری. تمام صفحات با «الگوهای بلوک» ساخته شده‌اند تا صاحب سایت بتواند بدون دانش فنی، صفحه‌ها را با چند کلیک بسازد و ویرایش کند. فونت وزیرمتن داخل قالب جاسازی شده است.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ghazaleh
Tags: full-site-editing, block-patterns, rtl, one-column, blog, custom-colors, custom-menu
*/

/*
  بیشتر استایل‌ها از طریق theme.json مدیریت می‌شوند.
  این فایل فقط چند چاشنی بصری ظریف اضافه می‌کند که در theme.json قابل بیان نیستند.
*/

body {
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/* حذف فاصله‌ی پیش‌فرضِ بالای صفحه (بین لبه‌ی بالا و سربرگ، و بین سربرگ و محتوا)
   که وردپرس به‌صورت پیش‌فرض روی بلوک‌های سطح‌بالا می‌گذارد.
   سلکتور بدون :where تا اولویتش از استایل هسته بیشتر باشد. */
.wp-site-blocks > * {
	margin-block-start: 0;
}

/* ---- فهرست کلاسیک وردپرس (نمایش → فهرست‌ها) ---- */
.gh-menu-wrap {
	display: flex;
}
.gh-menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.6rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.gh-menu li {
	margin: 0;
	position: relative;
}
.gh-menu a {
	color: inherit;
	text-decoration: none;
	font-weight: 600;
	font-size: 1.05rem;
	opacity: 0.92;
	transition: opacity 0.2s ease;
	display: inline-block;
}
.gh-menu a:hover {
	opacity: 1;
	text-decoration: underline;
}
.gh-menu .current-menu-item > a {
	opacity: 1;
	border-bottom: 2px solid var(--wp--preset--color--clay);
}

/* زیرمنو (در صورت استفاده) */
.gh-menu .sub-menu {
	list-style: none;
	margin: 0;
	padding: 0.5rem 0;
	position: absolute;
	top: 100%;
	right: 0;
	min-width: 12rem;
	background: var(--wp--preset--color--paper);
	border: 1px solid var(--wp--preset--color--sage);
	border-radius: 8px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
	display: none;
	z-index: 50;
}
.gh-menu li:hover > .sub-menu {
	display: block;
}
.gh-menu .sub-menu a {
	color: var(--wp--preset--color--ink);
	padding: 0.4rem 1.1rem;
	display: block;
	width: 100%;
}

/* دکمه‌ی روشن (شیشه‌ای) روی هیروهای تیره */
.is-style-light-button .wp-block-button__link,
.wp-block-button.is-style-light-button .wp-block-button__link {
	background: rgba(255, 255, 255, 0.16) !important;
	color: #fff !important;
	border: 1px solid rgba(255, 255, 255, 0.55);
	backdrop-filter: blur(10px);
}
.is-style-light-button .wp-block-button__link:hover {
	background: rgba(255, 255, 255, 0.28) !important;
}

/* دکمه‌ی خطی (outline) */
.is-style-outline > .wp-block-button__link {
	background: transparent;
	border: 1px solid currentColor;
}

/* ---- کارت‌ها (همه‌ی ظاهر در CSS تا بلوک‌ها سبک و معتبر بمانند) ---- */
.gh-card {
	background: rgba(255, 255, 255, 0.66);
	border: 1px solid rgba(24, 33, 29, 0.16);
	border-radius: 10px;
	padding: 1.6rem;
	height: 100%;
}
/* فاصله‌ی نرم میان عناصر داخل کارت */
.gh-card > * {
	margin-block: 0;
}
.gh-card > * + * {
	margin-top: 0.7rem;
}
.gh-card-pad {
	padding: 2.5rem 2rem;
}

/* کارت تیره (سبز) */
.gh-card-dark {
	background: var(--wp--preset--color--green);
	border: 0;
	color: #fff;
}
.gh-card-dark h1,
.gh-card-dark h2,
.gh-card-dark h3 {
	color: #fff;
}
.gh-card-dark p {
	color: rgba(255, 255, 255, 0.82);
}

/* لینکِ پایین کارت */
.card-link a {
	color: var(--wp--preset--color--clay);
	font-weight: 700;
	text-decoration: none;
}
.card-link a:hover {
	text-decoration: underline;
}
.gh-card-dark .card-link a {
	color: #fff;
}

/* عدد مرحله‌ها (دایره‌ی خاک‌رسی) */
.step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.2rem;
	height: 2.2rem;
	border-radius: 50%;
	background: var(--wp--preset--color--clay);
	color: #fff;
	font-weight: 700;
}

/* دایره‌ی پخش ویدیو */
.play-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.2rem;
	height: 3.2rem;
	border-radius: 50%;
	background: #fff;
	color: var(--wp--preset--color--green);
	font-weight: 700;
	font-size: 1.1rem;
}

/* تصاویر گالری با گوشه‌ی نرم و افکت ملایم */
.media-tile {
	border-radius: 10px;
	overflow: hidden;
}
.media-tile img {
	transition: transform 0.5s ease;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.media-tile:hover img {
	transform: scale(1.04);
}

/* خط بالای مراحل تایم‌لاین */
.timeline-step {
	border-top: 3px solid var(--wp--preset--color--clay);
	padding-top: 1.2rem;
}

/* برچسب‌ها (تگ‌ها) */
.pill {
	display: inline-block;
	border-radius: 999px;
	padding: 0.3rem 0.8rem;
	font-size: 0.85rem;
	font-weight: 700;
	border: 1px solid rgba(255, 255, 255, 0.35);
}

/* راست‌چین: اطمینان از جهت صحیح لیست‌ها */
ul, ol {
	padding-inline-start: 1.3rem;
	padding-inline-end: 0;
}

/* ============================================================
   فرم ثبت‌نام چندمرحله‌ای
   ============================================================ */
.ghz-form {
	max-width: 760px;
	margin-inline: auto;
	text-align: right;
}

/* honeypot ضداسپم — پنهان از دید */
.ghz-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* نوار پیشرفت */
.ghz-progress {
	position: relative;
	height: 8px;
	background: rgba(24, 33, 29, 0.12);
	border-radius: 999px;
	margin-bottom: 2rem;
}
.ghz-progress-bar {
	position: absolute;
	inset-block: 0;
	inset-inline-start: 0;
	width: 0;
	background: var(--wp--preset--color--clay);
	border-radius: 999px;
	transition: width 0.3s ease;
}
.ghz-progress-text {
	position: absolute;
	inset-inline-end: 0;
	top: 14px;
	font-size: 0.85rem;
	font-weight: 700;
	color: var(--wp--preset--color--muted);
}

/* مرحله‌ها: بدون JS همه دیده می‌شوند؛ با JS فقط مرحله‌ی فعال */
.ghz-step {
	border: 0;
	margin: 0 0 2rem;
	padding: 0;
}
.ghz-js .ghz-step {
	display: none;
}
.ghz-js .ghz-step.is-active {
	display: block;
}
.ghz-step-title {
	font-size: 1.4rem;
	font-weight: 700;
	color: var(--wp--preset--color--green);
	padding: 0 0 1rem;
	margin-bottom: 1.5rem;
	border-bottom: 1px solid var(--wp--preset--color--sage);
	width: 100%;
}

/* فیلدها */
.ghz-field {
	margin-bottom: 1.4rem;
}
.ghz-field > label,
.ghz-field .ghz-q {
	display: block;
	font-weight: 700;
	margin-bottom: 0.5rem;
	line-height: 1.7;
}
.ghz-req {
	color: var(--wp--preset--color--rust);
}
.ghz-note {
	display: block;
	font-size: 0.85rem;
	color: var(--wp--preset--color--muted);
	margin-top: 0.4rem;
}
.ghz-form input[type="text"],
.ghz-form input[type="tel"],
.ghz-form input[type="email"],
.ghz-form input[type="number"],
.ghz-form textarea,
.ghz-form select {
	width: 100%;
	padding: 0.75rem 0.9rem;
	border: 1px solid rgba(24, 33, 29, 0.25);
	border-radius: 8px;
	background: #fff;
	font-family: inherit;
	font-size: 1rem;
	color: var(--wp--preset--color--ink);
}
.ghz-form textarea {
	resize: vertical;
	min-height: 80px;
}
.ghz-form input:focus,
.ghz-form textarea:focus,
.ghz-form select:focus {
	outline: 2px solid var(--wp--preset--color--moss);
	border-color: transparent;
}

/* گزینه‌ها (رادیو/چک‌باکس) */
.ghz-options {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
}
.ghz-options.ghz-checks {
	flex-direction: column;
}
.ghz-opt {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.5rem 0.9rem;
	border: 1px solid rgba(24, 33, 29, 0.2);
	border-radius: 8px;
	cursor: pointer;
	background: #fff;
	font-weight: 400;
	line-height: 1.6;
}
.ghz-opt input {
	accent-color: var(--wp--preset--color--green);
}
.ghz-single-check {
	align-items: flex-start;
}

/* رضایت‌نامه */
.ghz-consent h3 {
	font-size: 1.2rem;
	color: var(--wp--preset--color--green);
	margin-bottom: 0.8rem;
}
.ghz-consent-scroll {
	max-height: 320px;
	overflow-y: auto;
	border: 1px solid var(--wp--preset--color--sage);
	border-radius: 8px;
	padding: 1.2rem 1.4rem;
	background: var(--wp--preset--color--paper);
	margin-bottom: 1.5rem;
}
.ghz-consent-scroll p {
	font-size: 0.95rem;
	line-height: 1.9;
	margin: 0 0 0.8rem;
	color: var(--wp--preset--color--ink);
}

/* دکمه‌های ناوبری */
.ghz-nav {
	display: flex;
	gap: 0.8rem;
	flex-wrap: wrap;
	margin-top: 1.5rem;
}
.ghz-btn {
	border: 0;
	border-radius: 999px;
	padding: 0.85rem 1.8rem;
	font-family: inherit;
	font-size: 1.05rem;
	font-weight: 700;
	cursor: pointer;
	background: var(--wp--preset--color--green);
	color: #fff;
}
.ghz-btn:hover {
	background: var(--wp--preset--color--moss);
}
.ghz-prev {
	background: transparent;
	color: var(--wp--preset--color--green);
	border: 1px solid var(--wp--preset--color--green);
}
.ghz-prev:hover {
	background: rgba(23, 61, 49, 0.08);
}
/* بدون JS دکمه‌های بعد/قبل پنهان، فقط ثبت نهایی */
.ghz-prev, .ghz-next { display: none; }
.ghz-js .ghz-prev, .ghz-js .ghz-next { display: inline-block; }
.ghz-js .ghz-submit { display: none; }

/* خطا و موفقیت */
.ghz-invalid input,
.ghz-invalid textarea,
.ghz-invalid select,
.ghz-invalid .ghz-options {
	border-color: var(--wp--preset--color--rust) !important;
}
.ghz-invalid > label,
.ghz-invalid .ghz-q {
	color: var(--wp--preset--color--rust);
}
.ghz-error-banner {
	background: #fbe6df;
	border: 1px solid var(--wp--preset--color--clay);
	color: var(--wp--preset--color--rust);
	padding: 0.9rem 1.1rem;
	border-radius: 8px;
	margin-bottom: 1.5rem;
	font-weight: 700;
}
.ghz-success {
	background: var(--wp--preset--color--sage);
	border: 1px solid var(--wp--preset--color--moss);
	border-radius: 12px;
	padding: 2rem;
	text-align: center;
	max-width: 760px;
	margin-inline: auto;
}
.ghz-success h3 {
	color: var(--wp--preset--color--green);
	margin-bottom: 0.8rem;
}

/* ---- لینک‌های فوتر (روی پس‌زمینه‌ی تیره، خوانا + hover) ---- */
footer.wp-block-group a,
.has-charcoal-background-color a {
	color: #e3c896;            /* طلاییِ روشن، خوانا روی زمینه‌ی تیره */
	text-decoration: none;
	transition: color 0.2s ease;
}
footer.wp-block-group a:hover,
footer.wp-block-group a:focus-visible,
.has-charcoal-background-color a:hover,
.has-charcoal-background-color a:focus-visible {
	color: #ffffff;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ---- آرشیو روزنامه‌ای وبلاگ (فقط عنوان + تاریخ) ---- */
.gh-archive-list {
	margin: 0;
}
.gh-archive-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.3rem 1.5rem;
	padding: 1.1rem 0;
	border-bottom: 1px solid var(--wp--preset--color--sage);
}
.gh-archive-row:first-child {
	border-top: 1px solid var(--wp--preset--color--sage);
}
.gh-archive-row .wp-block-post-title {
	margin: 0;
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1.6;
}
.gh-archive-row .wp-block-post-title a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
	transition: color 0.2s ease;
}
.gh-archive-row .wp-block-post-title a:hover {
	color: var(--wp--preset--color--clay);
}
.gh-archive-row .wp-block-post-date {
	margin: 0;
	font-size: 0.85rem;
	color: var(--wp--preset--color--muted);
	white-space: nowrap;
}
/* تاریخ زیر عنوان در تک‌نوشته */
.gh-post-meta {
	color: var(--wp--preset--color--muted);
	font-size: 0.9rem;
	margin-top: 0.4rem;
}
