:root{
	/* Palette */
	--fx-color-primary:        #0F172A;
	--fx-color-accent:         #B3975B;
	--fx-color-muted:          #F3F4F6;
	--fx-color-bg:             #FFFFFF;
	--fx-color-text:           #111827;
	--fx-color-border:         #F0F0F0;
	--fx-color-shadow:         0,0,0;      /* for rgba shadows */

	/* Typography */
	--fx-font-size-base:       16px;
	--fx-font-size-ui:         0.875rem;   /* small UI text */
	--fx-line-height-headings: 1.25;

	/* Layout / spacing */
	--fx-container-gap:        .75rem;
	--fx-radius-card:          .8rem;
	--fx-radius-widget:        .5rem;
}

/* Base */
html{scroll-behavior:smooth}
body{
	background: var(--fx-color-bg);
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	color: var(--fx-color-text);
}
a{text-decoration:none}

/* Buttons */
.btn-primary{
	--bs-btn-bg: var(--fx-color-primary);
	--bs-btn-border-color: var(--fx-color-primary);
}

/* Branding */
.navbar-brand img{max-height:56px;height:auto}

/* Language dropdown */
.lang-dropdown .dropdown-menu{min-width:220px}
.lang-dropdown .dropdown-item.active{background:var(--fx-color-primary);color:#fff}

/* Cards */
.card{border-radius:var(--fx-radius-card);transition:box-shadow .2s ease}
.card .card-img-top{border-top-left-radius:var(--fx-radius-card);border-top-right-radius:var(--fx-radius-card)}
.card-title a{color:inherit}
.card:hover{box-shadow:0 .25rem .75rem rgba(var(--fx-color-shadow), .06)}

/* Typography */
h1,h2,h3,h4,h5{line-height:var(--fx-line-height-headings)}
.entry-content img{max-width:100%;height:auto}
.entry-meta{font-size:var(--fx-font-size-ui)}

/* Breadcrumb & RTL niceties */
[dir="rtl"] .breadcrumb-item+.breadcrumb-item::before{float:unset}

/* Sidebar baseline visuals */
.widget-area{position:relative;align-self:stretch}
.widget-area::before{content:"";position:absolute;top:0;bottom:0;left:0;width:1px;background:var(--fx-color-border)}
[dir="rtl"] .widget-area::before{left:auto;right:0}

/* Widgets */
.widget{
	--_pad:1rem;
	--_bd:var(--fx-color-border);
	padding:var(--_pad);
	background:#fafafa;
	border:1px solid var(--_bd);
	border-radius:var(--fx-radius-widget);
	margin-bottom:1rem
}
.widget .widget-title{margin-bottom:.75rem}

/* Comments */
.comment-list{margin:0;padding:0}
.comment-list>li{
	list-style:none;
	margin-bottom:1rem;
	padding: 1rem;
	border:1px solid #eee;
	border-radius: var(--fx-radius-widget);
	background: #fff;
}
.comment-list .reply a{ font-size: var(--fx-font-size-ui) }

/* Footer nav */
.footer-nav{
	display: flex;
	gap: var(--fx-container-gap);
	flex-wrap: wrap;
}

/* ==== Sidebar inner (for smooth transform on desktop sticky) ==== */
.sidebar-inner{
	position: relative;
	transform: translateY(0);
	will-change: transform;
	transition: transform .08s linear;
}


		.header-divider{height:4px;background:#111}
		/* سه بخش موبایل را نام‌گذاری می‌کنیم تا در breakpoint خیلی کوچک بتوانیم بچینیم */
		.mobile-bar{ /* پیش‌فرض همان d-flex از کلاس‌هاست */ }
		.mobile-logo{position:absolute;left:50%;transform:translateX(-50%)}
		.mobile-left{}
		.mobile-right{}

		/* فریم واحد دکمه‌ها */
		.hdr-btn{height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem}
		.icon-btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem}
		/* زبان با پدینگ مشابه دیگر دکمه‌ها و بدون فلش */
		.lang-toggle{padding:0 .5rem !important;min-width:auto}
		.lang-toggle::after{display:none !important}

		.navbar-brand img{max-height:40px;width:auto}
		.dropdown-menu{min-width:auto}

		@media (min-width:992px){
			.nav-item.dropdown:hover>.dropdown-menu{display:block}
		}

		/* مودال جستجو: مرکز کامل + بک‌دراپ کم‌رنگ + دکمه بستن */
		.modal-backdrop.show{opacity:.25}
		#searchModal .modal-content{background:rgba(255,255,255,.98);border:0}
		#searchModal .modal-body{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative}
		html[dir="rtl"] #searchClose{right: auto !important; left: 1rem !important;}
		.search-box{width:100%;max-width:720px}
		#searchResults{max-height:50vh;overflow:auto}

		/* هدر چسبان با سایه ملایم */
		header.site-header.sticky-top{box-shadow:0 2px 8px rgba(0,0,0,.06)}

		/* بهبود ناوبری در Offcanvas چپ */
		.offcanvas .nav .nav-item + .nav-item{margin-top:.25rem}
		.offcanvas .nav .nav-link{padding:.625rem .75rem;border-radius:.5rem;font-weight:500}
		.offcanvas .nav .nav-link:hover{background:rgba(0,0,0,.06)}

		/* وقتی عرض خیلی کم است: لوگو بالا و دکمه‌ها پایین در دو سمت */
		@media (max-width: 380px){
			.d-lg-none.mobile-bar{
				display:grid !important;
				grid-template-columns:1fr 1fr;
				grid-template-areas:
					'logo logo'
					'left right';
				row-gap:.5rem;
				align-items:center;
			}
			.mobile-logo{position:static;transform:none;grid-area:logo;justify-self:center}
			.mobile-left{grid-area:left;justify-self:start}
			.mobile-right{grid-area:right;justify-self:end}
		}