/* =========================================================
   بازارچه دانشجو — Main Stylesheet
   ========================================================= */

:root {
	--bd-primary: #0eae8b;
	--bd-primary-dark: #0b8a6e;
	--bd-primary-light: #e4f8f3;
	--bd-accent: #ff7a45;
	--bd-text: #1f2430;
	--bd-text-muted: #6b7280;
	--bd-border: #e6e8ec;
	--bd-bg: #f6f7f9;
	--bd-surface: #ffffff;
	--bd-radius: 14px;
	--bd-radius-sm: 8px;
	--bd-shadow: 0 2px 10px rgba(20, 20, 30, 0.06);
	--bd-shadow-md: 0 8px 24px rgba(20, 20, 30, 0.10);
	--bd-container: 1220px;
	font-size: 16px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
	margin: 0;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
	background: var(--bd-bg);
	color: var(--bd-text);
	line-height: 1.8;
}

a { color: inherit; text-decoration: none; }
ul { margin: 0; padding: 0; list-style: none; }
img { max-width: 100%; display: block; }
button { font-family: inherit; cursor: pointer; }

.bd-container {
	max-width: var(--bd-container);
	margin: 0 auto;
	padding: 0 20px;
}

/* ---------- Buttons ---------- */
.bd-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 18px;
	border-radius: var(--bd-radius-sm);
	font-weight: 600;
	font-size: 0.92rem;
	border: 1px solid transparent;
	transition: all .15s ease;
}
.bd-btn--primary { background: var(--bd-primary); color: #fff; }
.bd-btn--primary:hover { background: var(--bd-primary-dark); }
.bd-btn--ghost { background: transparent; border-color: var(--bd-border); color: var(--bd-text); }
.bd-btn--ghost:hover { border-color: var(--bd-primary); color: var(--bd-primary); }
.bd-btn__icon svg, .bd-icon { width: 18px; height: 18px; }

.bd-link { color: var(--bd-primary); font-weight: 600; font-size: .92rem; }

/* ---------- Header ---------- */
.bd-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: var(--bd-surface);
	border-bottom: 1px solid var(--bd-border);
}
.bd-header__inner {
	display: flex;
	align-items: center;
	gap: 20px;
	height: 68px;
}
.bd-header__right { display: flex; align-items: center; gap: 14px; }
.bd-logo { display: flex; align-items: center; gap: 8px; font-weight: 800; font-size: 1.15rem; color: var(--bd-primary); }
.bd-logo__icon { width: 26px; height: 26px; }
.bd-logo--footer { color: var(--bd-text); margin-bottom: 10px; }

.bd-hamburger { display: none; flex-direction: column; gap: 4px; background: none; border: 0; padding: 6px; }
.bd-hamburger span { width: 22px; height: 2px; background: var(--bd-text); border-radius: 2px; }

.bd-search {
	flex: 1;
	display: flex;
	align-items: center;
	background: var(--bd-bg);
	border: 1px solid var(--bd-border);
	border-radius: 999px;
	padding: 6px 6px 6px 6px;
	max-width: 640px;
}
.bd-search__icon { padding: 0 10px; display: flex; color: var(--bd-text-muted); }
.bd-search__icon svg { width: 18px; height: 18px; }
.bd-search input[type="text"] {
	flex: 1;
	border: 0;
	background: transparent;
	padding: 8px 4px;
	font-family: inherit;
	font-size: .92rem;
	outline: none;
}
.bd-search__btn {
	background: var(--bd-primary);
	color: #fff;
	border: 0;
	border-radius: 999px;
	padding: 8px 20px;
	font-weight: 700;
	font-size: .88rem;
}

.bd-header__left { display: flex; align-items: center; gap: 10px; }
.bd-header__account { display: flex; align-items: center; gap: 8px; }
.bd-header__account img { border-radius: 50%; }
.bd-header__myads { white-space: nowrap; }
.bd-header__register { border-color: var(--bd-primary); color: var(--bd-primary); }
.bd-header__logout {
	display: flex; align-items: center; justify-content: center;
	width: 36px; height: 36px; border-radius: 50%;
	color: var(--bd-text-muted); border: 1px solid var(--bd-border);
}
.bd-header__logout:hover { color: #c92a2a; border-color: #f3c5c5; background: #fde8e8; }
.bd-header__logout svg { width: 17px; height: 17px; }

.bd-mobile-menu { display: none; }

.bd-catbar { background: var(--bd-surface); border-top: 1px solid var(--bd-border); }
.bd-catbar__inner {
	display: flex;
	gap: 6px;
	overflow-x: auto;
	padding: 10px 20px;
	scrollbar-width: none;
}
.bd-catbar__inner::-webkit-scrollbar { display: none; }
.bd-catbar__item {
	display: flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
	padding: 7px 14px;
	border-radius: 999px;
	font-size: .85rem;
	color: var(--bd-text-muted);
	background: var(--bd-bg);
}
.bd-catbar__item svg { width: 16px; height: 16px; }
.bd-catbar__item:hover { background: var(--bd-primary-light); color: var(--bd-primary-dark); }

/* ---------- Hero ---------- */
.bd-hero {
	background: linear-gradient(160deg, var(--bd-primary) 0%, #0a7d64 100%);
	color: #fff;
	padding: 56px 0 44px;
	text-align: center;
}
.bd-hero__title { font-size: clamp(1.5rem, 3vw, 2.3rem); margin: 0 0 12px; font-weight: 800; }
.bd-hero__subtitle { max-width: 640px; margin: 0 auto 26px; opacity: .92; font-size: 1rem; }
.bd-hero__chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.bd-chip {
	display: flex; align-items: center; gap: 6px;
	background: rgba(255,255,255,.16);
	border: 1px solid rgba(255,255,255,.3);
	padding: 8px 16px; border-radius: 999px; font-size: .88rem;
}
.bd-chip svg { width: 16px; height: 16px; }
.bd-chip:hover { background: rgba(255,255,255,.28); }

/* ---------- Sections ---------- */
.bd-section { padding: 44px 0; }
.bd-section--muted { background: var(--bd-surface); }
.bd-section__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px; flex-wrap: wrap; gap: 10px; }
.bd-section__head h1, .bd-section__head h2 { font-size: 1.3rem; margin: 0; display: flex; align-items: center; gap: 8px; }
.bd-section__desc { color: var(--bd-text-muted); margin-top: 6px; }

/* ---------- Category grid ---------- */
.bd-cat-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 14px;
}
.bd-cat-card {
	background: var(--bd-surface);
	border: 1px solid var(--bd-border);
	border-radius: var(--bd-radius);
	padding: 20px 14px;
	text-align: center;
	display: flex; flex-direction: column; align-items: center; gap: 8px;
	transition: box-shadow .15s ease, transform .15s ease;
}
.bd-cat-card:hover { box-shadow: var(--bd-shadow-md); transform: translateY(-2px); }
.bd-cat-card__icon { width: 44px; height: 44px; border-radius: 50%; background: var(--bd-primary-light); color: var(--bd-primary-dark); display: flex; align-items: center; justify-content: center; }
.bd-cat-card__icon svg { width: 22px; height: 22px; }
.bd-cat-card__name { font-weight: 700; font-size: .92rem; }
.bd-cat-card__count { font-size: .78rem; color: var(--bd-text-muted); }

/* ---------- Card grid (listings) ---------- */
.bd-card-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}
.bd-card {
	background: var(--bd-surface);
	border: 1px solid var(--bd-border);
	border-radius: var(--bd-radius);
	overflow: hidden;
	display: block;
	transition: box-shadow .15s ease, transform .15s ease;
}
.bd-card:hover { box-shadow: var(--bd-shadow-md); transform: translateY(-2px); }
.bd-card__img { aspect-ratio: 4/3; background: var(--bd-bg); overflow: hidden; }
.bd-card__img img { width: 100%; height: 100%; object-fit: cover; }
.bd-card__img-placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: var(--bd-text-muted); }
.bd-card__body { padding: 14px; }
.bd-card__title { font-size: .95rem; margin: 0 0 8px; font-weight: 700; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.bd-card__price { color: var(--bd-primary-dark); font-weight: 800; margin-bottom: 8px; }
.bd-card__meta { display: flex; align-items: center; gap: 6px; font-size: .78rem; color: var(--bd-text-muted); }
.bd-card__dot { opacity: .6; }

.bd-empty-note { color: var(--bd-text-muted); background: var(--bd-surface); border: 1px dashed var(--bd-border); border-radius: var(--bd-radius); padding: 20px; text-align: center; }

/* ---------- How it works ---------- */
.bd-howto { padding: 50px 0; }
.bd-howto__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; text-align: center; }
.bd-howto__num { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--bd-accent); color: #fff; font-weight: 800; margin-bottom: 10px; }
.bd-howto__item h3 { margin: 0 0 6px; font-size: 1.05rem; }
.bd-howto__item p { color: var(--bd-text-muted); margin: 0; }

/* ---------- Single Ad page ---------- */
.bd-single { padding: 36px 0 60px; }
.bd-single__grid { display: grid; grid-template-columns: 2fr 1fr; gap: 30px; align-items: start; }
.bd-breadcrumb { display: flex; gap: 8px; color: var(--bd-text-muted); font-size: .85rem; margin-bottom: 14px; }
.bd-single__title { font-size: 1.5rem; margin: 0 0 10px; }
.bd-single__meta { display: flex; gap: 8px; color: var(--bd-text-muted); font-size: .85rem; margin-bottom: 14px; }
.bd-single__price { font-size: 1.4rem; font-weight: 800; color: var(--bd-primary-dark); margin-bottom: 20px; }
.bd-single__content { background: var(--bd-surface); border: 1px solid var(--bd-border); border-radius: var(--bd-radius); padding: 20px; }

.bd-seller-card, .bd-safety-card {
	background: var(--bd-surface);
	border: 1px solid var(--bd-border);
	border-radius: var(--bd-radius);
	padding: 20px;
	text-align: center;
	margin-bottom: 16px;
}
.bd-seller-card__avatar img { border-radius: 50%; margin: 0 auto 10px; }
.bd-seller-card__name { font-weight: 800; }
.bd-seller-card__since { font-size: .8rem; color: var(--bd-text-muted); margin-bottom: 10px; }
.bd-seller-card__tip { font-size: .8rem; color: var(--bd-text-muted); }
.bd-safety-card { text-align: right; }
.bd-safety-card h4 { margin: 0 0 10px; font-size: .95rem; }
.bd-safety-card li { font-size: .82rem; color: var(--bd-text-muted); padding: 4px 0; position: relative; padding-right: 16px; }
.bd-safety-card li::before { content: "✓"; position: absolute; right: 0; color: var(--bd-primary); }

/* ---------- Dashboard / Post Ad (صفحات عمومی سایت) ---------- */
.bd-page__narrow { max-width: 860px; }
.bd-page__title { font-size: 1.4rem; margin-bottom: 20px; }
.bd-notice { background: var(--bd-primary-light); border: 1px solid var(--bd-primary); border-radius: var(--bd-radius); padding: 18px; text-align: center; }
.bd-dashboard__grid { display: grid; grid-template-columns: 3fr 1fr; gap: 26px; }
.bd-dashboard__actions { margin-bottom: 16px; }

/* ---------- HivePress (آگهی‌ها) ----------
   طبق مستندات رسمی HivePress، ساده‌ترین و توصیه‌شده‌ترین روش شخصی‌سازی
   ظاهر افزونه همین است: تمام کلاس‌های آن با پیشوند hp- و نام‌گذاری BEM
   هستند (مثلاً .hp-listing، .hp-listing__title،
   .hp-listing__attribute--price)؛ اینجا همان کلاس‌های استاندارد را با
   رنگ و فونت و گردی گوشه‌ی همین تم هماهنگ می‌کنیم، بدون نیاز به override
   کردن تمپلیت‌های PHP داخلی افزونه. */
.hp-page, .hp-listing, .hp-vendor, .hp-user {
	font-family: 'Vazirmatn', Tahoma, sans-serif;
	direction: rtl;
}

.hp-listing__title { font-weight: 800; }

.hp-form input[type="text"],
.hp-form input[type="email"],
.hp-form input[type="password"],
.hp-form input[type="number"],
.hp-form input[type="tel"],
.hp-form select,
.hp-form textarea,
.hp-block input[type="text"],
.hp-block input[type="email"],
.hp-block select,
.hp-block textarea {
	border: 1px solid var(--bd-border) !important;
	border-radius: var(--bd-radius-sm) !important;
	font-family: inherit !important;
	text-align: right;
	direction: rtl;
}
.hp-form input:focus, .hp-form select:focus, .hp-form textarea:focus {
	border-color: var(--bd-primary) !important;
	box-shadow: 0 0 0 3px var(--bd-primary-light) !important;
	outline: none !important;
}

.hp-form__button, .hp-block button, button.hp-block__button,
a.hp-block__button, .hp-listing__actions .button,
.wp-block-button__link {
	background: var(--bd-primary) !important;
	border-color: var(--bd-primary) !important;
	color: #fff !important;
	border-radius: var(--bd-radius-sm) !important;
	font-weight: 700 !important;
}
.hp-form__button:hover, .wp-block-button__link:hover { background: var(--bd-primary-dark) !important; }

.hp-listing__attribute--price, .hp-listing__price {
	color: var(--bd-primary-dark) !important;
	font-weight: 800 !important;
}

/* گرید دسته‌بندی‌ها و لیست آگهی‌های خود HivePress هم با کارت‌های همین تم هماهنگ شود */
.hp-listings, .hp-listing-categories {
	display: grid !important;
	gap: 18px;
}
.hp-listing--view-block, .hp-listing-category--view-block {
	border: 1px solid var(--bd-border) !important;
	border-radius: var(--bd-radius) !important;
	overflow: hidden;
	background: var(--bd-surface);
}

/* اگر بعداً خواستید بخش‌های عمیق‌تری از HivePress (مثلاً ترتیب فیلدهای
   فرم ثبت آگهی) را دقیقاً مثل بخش add.php افزونه‌های قبلی بازنویسی کنید،
   طبق مستندات رسمی باید فایل‌های template part را از
   wp-content/plugins/hivepress/templates/ کپی کرده و با همان مسیر داخل
   پوشه‌ی hivepress/ این قالب قرار دهید (توضیح کامل در README، بخش
   «هماهنگی با HivePress»). */

/* ---------- Ultimate Member (ورود / ثبت‌نام / حساب کاربری) ----------
   کلاس‌های زیر خروجی استاندارد خود افزونه Ultimate Member هستند. این
   بخش فقط ظاهرشان را با تم هماهنگ می‌کند؛ منطق فرم‌ها (نمایش/مخفی‌کردن
   تب‌ها با جاوااسکریپت خود UM) کاملاً دست‌نخورده می‌ماند. */

/* فرم‌های تکی و کوچک UM (ورود، ثبت‌نام، فراموشی رمز) — یک کارت باریک وسط‌چین */
.um-login, .um-register, .um-password-reset, .um-password {
	direction: rtl;
	font-family: 'Vazirmatn', Tahoma, sans-serif !important;
	max-width: 480px;
	margin: 0 auto;
	background: var(--bd-surface);
	border: 1px solid var(--bd-border);
	border-radius: var(--bd-radius);
	padding: 28px 24px !important;
	box-shadow: var(--bd-shadow);
}

/* فرم پروفایل (Account) — عریض و به‌صورت دو کارت جدا (سایدبار + محتوا) */
.um-account { direction: rtl; font-family: 'Vazirmatn', Tahoma, sans-serif !important; max-width: 100%; }
.um-account .um-form > form {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 22px;
}

/* کارت موبایل بالای صفحه (آواتار + نام) — فقط در صفحه‌های خیلی باریک دیده می‌شود */
.um-account .um-form > form > .um-account-meta {
	flex: 1 1 100%;
	order: -1;
	background: var(--bd-surface);
	border: 1px solid var(--bd-border);
	border-radius: var(--bd-radius);
	padding: 18px;
	display: flex;
	align-items: center;
	gap: 14px;
}

/* سایدبار حساب کاربری (آواتار + منوی تب‌ها) */
.um-account-side {
	flex: 0 0 260px;
	background: var(--bd-surface);
	border: 1px solid var(--bd-border);
	border-radius: var(--bd-radius);
	overflow: hidden;
	box-shadow: var(--bd-shadow);
}
.um-account-side .um-account-meta {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 20px 16px;
	border-bottom: 1px solid var(--bd-border);
}
.um-account-side .um-account-name a { font-weight: 800; color: var(--bd-text); font-size: .95rem; }
.um-account-side .um-account-profile-link a {
	display: inline-block; margin-top: 4px;
	font-size: .76rem; font-weight: 600; color: var(--bd-primary);
}

.um-account-side ul { list-style: none; margin: 0; padding: 0; }
.um-account-side ul li { border-bottom: 1px solid var(--bd-border); }
.um-account-side ul li:last-child { border-bottom: none; }
.um-account-side ul li a.um-account-link {
	display: flex; align-items: center; gap: 10px;
	padding: 13px 16px;
	font-size: .88rem; font-weight: 600;
	color: var(--bd-text);
}
.um-account-side ul li a.um-account-link:hover {
	background: var(--bd-primary-light); color: var(--bd-primary-dark);
}
.um-account-side ul li a.um-account-link.current {
	background: var(--bd-primary-light) !important;
	color: var(--bd-primary-dark) !important;
	border-right: 3px solid var(--bd-primary);
	padding-right: 13px;
}
.um-account-side .um-account-icon,
.um-account-side .um-account-icontip { width: 18px; text-align: center; color: inherit; flex: none; }
.um-account-side .um-account-title { flex: 1; }
.um-account-side .um-account-arrow { flex: none; opacity: .55; font-size: .75rem; }

/* آواتارها (همه‌جای UM) */
.um-avatar, .um-profile-photo img, .um-account img.um-avatar {
	border-radius: 50% !important;
	border: 3px solid var(--bd-surface);
	box-shadow: 0 0 0 1px var(--bd-border);
}

/* کارت محتوای اصلی (فرم‌های هر تب) */
.um-account-main {
	flex: 1 1 320px;
	min-width: 0;
	background: var(--bd-surface);
	border: 1px solid var(--bd-border);
	border-radius: var(--bd-radius);
	padding: 24px;
	box-shadow: var(--bd-shadow);
}

/* هدر آکاردئون موبایل (تب‌ها در صفحه‌های خیلی باریک) */
.um-account-nav a {
	display: flex; align-items: center; justify-content: space-between;
	padding: 14px 16px;
	background: var(--bd-surface);
	border: 1px solid var(--bd-border);
	border-radius: var(--bd-radius-sm);
	font-weight: 700; font-size: .88rem; color: var(--bd-text);
	margin-bottom: 8px;
}
.um-account-nav a.current { border-color: var(--bd-primary); background: var(--bd-primary-light); color: var(--bd-primary-dark); }
.um-account-nav .ico { color: var(--bd-primary); }

/* عنوان هر بخش (حساب کاربری، تغییر کلمه عبور و...) */
.um-account-heading {
	display: flex; align-items: center; gap: 8px;
	font-size: 1.05rem; font-weight: 800; color: var(--bd-text);
	padding-bottom: 14px; margin-bottom: 20px;
	border-bottom: 1px solid var(--bd-border);
}
.um-account-heading i { color: var(--bd-primary); }

/* ردیف‌های فرم */
.um-field { margin-bottom: 18px; }
.um-field-label label { font-weight: 700 !important; font-size: .85rem !important; color: var(--bd-text); margin-bottom: 6px; display: inline-block; }
.um-field-label .um-req { color: #c92a2a; margin-right: 3px; }
.um-tip i, .um-field-label .um-icon-help-circled { color: var(--bd-text-muted); cursor: help; }

.um-field-area input[type="text"],
.um-field-area input[type="password"],
.um-field-area input[type="email"],
.um-field-area input[type="tel"],
.um-field-area input[type="number"] {
	width: 100% !important;
	border: 1px solid var(--bd-border) !important;
	border-radius: var(--bd-radius-sm) !important;
	padding: 11px 14px !important;
	font-family: inherit !important;
	font-size: .9rem;
	color: var(--bd-text);
	background: var(--bd-surface);
	text-align: right;
	direction: rtl;
	transition: border-color .15s, box-shadow .15s;
}
.um-field-area input:focus {
	border-color: var(--bd-primary) !important;
	box-shadow: 0 0 0 3px var(--bd-primary-light) !important;
	outline: none !important;
}
.um-field-area input:disabled {
	background: var(--bd-bg) !important;
	color: var(--bd-text-muted) !important;
	cursor: not-allowed;
}

/* دکمه‌های رادیویی سفارشی (بله/خیر) */
label.um-field-radio {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 9px 16px; margin-inline-end: 8px; margin-bottom: 6px;
	border: 1px solid var(--bd-border); border-radius: 999px;
	font-size: .84rem; font-weight: 600; color: var(--bd-text);
	cursor: pointer;
}
label.um-field-radio.active { border-color: var(--bd-primary); background: var(--bd-primary-light); color: var(--bd-primary-dark); }

/* دکمه‌ی اصلی ارسال فرم */
input.um-button, .um-button, .um button[type="submit"], .um input[type="submit"] {
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--bd-primary) !important;
	border: none !important;
	color: #fff !important;
	border-radius: var(--bd-radius-sm) !important;
	padding: 12px 26px !important;
	font-weight: 700 !important;
	font-size: .9rem !important;
	cursor: pointer;
	transition: background .15s;
}
input.um-button:hover:not(:disabled) { background: var(--bd-primary-dark) !important; }
input.um-button:disabled, .um_account_inactive { opacity: .5 !important; cursor: not-allowed !important; }

/* دکمه‌های ثانویه (درخواست برون‌بری/پاک‌سازی اطلاعات) */
.um-request-button {
	display: inline-flex; align-items: center;
	padding: 9px 18px; margin-top: 8px;
	border: 1px solid var(--bd-border); border-radius: var(--bd-radius-sm);
	font-size: .84rem; font-weight: 600; color: var(--bd-text);
}
.um-request-button:hover { border-color: var(--bd-primary); color: var(--bd-primary); }
.um-field-error { color: #c92a2a; font-size: .78rem; margin-top: 6px; }

.um-col-alt.um-col-alt-b { border-top: 1px solid var(--bd-border); margin-top: 8px; padding-top: 20px; }

.um a, .um .um-link, .um .um-link-alt a { color: var(--bd-primary); }
.um-half.um-left, .um-half.um-right { float: none !important; width: 100% !important; }

@media (min-width: 560px) {
	.um-half.um-left, .um-half.um-right { width: 48% !important; display: inline-block; }
	.um-half.um-left { float: right !important; }
	.um-half.um-right { float: left !important; }
}

/* فیلد ضدربات مخفی (نباید هیچ‌وقت دیده بشه) */
.um_request_name { position: absolute !important; left: -9999px !important; opacity: 0 !important; }

@media (max-width: 780px) {
	.um-account-side { flex-basis: 100%; }
	.um-account-main { flex-basis: 100%; }
}

/* ---------- HivePress — تکمیلی (پیجینیشن، پیام‌ها، منو، مودال، فرم جست‌وجو) ---------- */

/* عرض و فاصله‌ی کلی صفحات HivePress هماهنگ با bd-container خود قالب */
.hp-page { max-width: var(--bd-container); margin: 0 auto; padding: 28px 20px 60px; }
.hp-page__header { margin-bottom: 20px; }
.hp-page__title { font-size: 1.4rem; font-weight: 800; }

/* بلوک‌ها و کارت‌های عمومی */
.hp-block { background: var(--bd-surface); border: 1px solid var(--bd-border); border-radius: var(--bd-radius); padding: 18px; }

/* پیام‌های سیستمی (موفقیت/خطا/هشدار) */
.hp-notice, .hp-messages .hp-message {
	border-radius: var(--bd-radius-sm) !important;
	padding: 12px 16px !important;
	font-size: .88rem !important;
	border: 1px solid transparent !important;
	margin-bottom: 16px !important;
}
.hp-notice--success, .hp-message--success { background: var(--bd-primary-light) !important; color: var(--bd-primary-dark) !important; border-color: var(--bd-primary) !important; }
.hp-notice--error, .hp-message--error { background: #fde8e8 !important; color: #c92a2a !important; border-color: #f3c5c5 !important; }
.hp-notice--warning, .hp-message--warning { background: #fff6e5 !important; color: #a15c00 !important; border-color: #ffe1a6 !important; }

/* پیجینیشن (لیست آگهی‌ها، صفحه‌بندی) */
.hp-pagination { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-top: 24px; }
.hp-pagination__item, .hp-listings__more, .hp-block__more .button {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 38px; height: 38px; padding: 0 12px;
	border: 1px solid var(--bd-border) !important;
	border-radius: var(--bd-radius-sm) !important;
	color: var(--bd-text) !important;
	background: var(--bd-surface) !important;
	font-weight: 600 !important;
}
.hp-pagination__item:hover, .hp-listings__more:hover { border-color: var(--bd-primary) !important; color: var(--bd-primary) !important; }
.hp-pagination__item--active, .hp-pagination__item.is-active {
	background: var(--bd-primary) !important; border-color: var(--bd-primary) !important; color: #fff !important;
}

/* منوی داخل حساب کاربری/آگهی‌های من (سایدبار تب‌ها) */
.hp-menu, .hp-menu--user-account, .hp-menu--vendor-account { background: var(--bd-surface); border: 1px solid var(--bd-border); border-radius: var(--bd-radius); overflow: hidden; }
.hp-menu__item { display: block; }
.hp-menu__item a {
	display: flex; align-items: center; gap: 8px;
	padding: 12px 16px; font-size: .9rem; font-weight: 600;
	color: var(--bd-text); border-bottom: 1px solid var(--bd-border);
}
.hp-menu__item:last-child a { border-bottom: 0; }
.hp-menu__item a:hover { background: var(--bd-primary-light); color: var(--bd-primary-dark); }
.hp-menu__item--active a, .hp-menu__item.hp-menu__item--active a {
	background: var(--bd-primary-light) !important; color: var(--bd-primary-dark) !important;
	border-right: 3px solid var(--bd-primary);
}

/* مودال‌ها (مثل تأیید حذف آگهی) */
.hp-overlay { background: rgba(15, 20, 25, .55) !important; }
.hp-modal, .hp-modal__content {
	background: var(--bd-surface) !important;
	border-radius: var(--bd-radius) !important;
	box-shadow: var(--bd-shadow-md) !important;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
}
.hp-modal__header { font-weight: 800 !important; border-bottom: 1px solid var(--bd-border) !important; }

/* فرم جست‌وجو/فیلتر آگهی‌ها */
.hp-form--listing-search, .hp-block--search { background: var(--bd-surface); border: 1px solid var(--bd-border); border-radius: var(--bd-radius); padding: 16px; }
.hp-form__field { margin-bottom: 14px; }
.hp-form__label { font-weight: 700 !important; font-size: .85rem !important; margin-bottom: 6px !important; display: block; }

/* select2 (دراپ‌داون دسته‌بندی و فیلترها) */
.select2-container .select2-selection--single,
.select2-container .select2-selection--multiple {
	border: 1px solid var(--bd-border) !important;
	border-radius: var(--bd-radius-sm) !important;
	min-height: 42px !important;
	font-family: inherit !important;
}
.select2-container .select2-selection__rendered { line-height: 40px !important; padding-right: 12px !important; }
.select2-dropdown { border-color: var(--bd-border) !important; border-radius: var(--bd-radius-sm) !important; font-family: inherit; direction: rtl; }
.select2-results__option--highlighted { background: var(--bd-primary) !important; }

/* گالری تصاویر آگهی */
.hp-listing__images, .hp-block--images { border-radius: var(--bd-radius); overflow: hidden; }
.hp-listing__image img { border-radius: var(--bd-radius); }

/* ویژگی‌های آگهی (مشخصات) */
.hp-listing__attributes { display: flex; flex-wrap: wrap; gap: 10px 20px; }
.hp-listing__attribute { font-size: .88rem; color: var(--bd-text-muted); }
.hp-listing__attribute-label { font-weight: 700; color: var(--bd-text); }

/* برچسب‌های وضعیت آگهی (مثلاً «در انتظار تأیید»، «منقضی شده») */
.hp-listing__label, .hp-label {
	display: inline-flex; align-items: center;
	padding: 3px 10px !important; border-radius: 999px !important;
	font-size: .75rem !important; font-weight: 700 !important;
	background: var(--bd-primary-light) !important; color: var(--bd-primary-dark) !important;
}
.hp-label--warning { background: #fff6e5 !important; color: #a15c00 !important; }
.hp-label--danger { background: #fde8e8 !important; color: #c92a2a !important; }

/* نظرات/امتیازها (در صورت فعال بودن افزونه Reviews) */
.hp-review { border-bottom: 1px solid var(--bd-border); padding: 14px 0; }
.hp-review__author { font-weight: 700; }

/* آیکون‌های جهت‌دار (فلش‌ها) در حالت راست‌به‌چپ برعکس شوند */
.hp-page [class*="icon-angle"], .hp-page [class*="icon-chevron"] { transform: scaleX(-1); }

/* ---------- Ultimate Member — تکمیلی (مودال ورود، پیام‌ها، پروفایل عمومی) ---------- */
/* توجه: استایل سایدبار/تب‌های صفحه‌ی Account در بخش اصلی UM بالاتر (کنار
   .um-account-side و .um-account-main) قرار داره، چون دقیقاً بر اساس
   HTML واقعی خروجی‌گرفته‌شده از سایت نوشته شده. */

/* پاپ‌آپ ورود/ثبت‌نام (اگر به‌صورت مودال فعال باشد) */
.um-modal-overlay { background: rgba(15, 20, 25, .55) !important; }
.um-modal, .um-modal-content {
	background: var(--bd-surface) !important;
	border-radius: var(--bd-radius) !important;
	box-shadow: var(--bd-shadow-md) !important;
	font-family: 'Vazirmatn', Tahoma, sans-serif !important;
}
.um-modal-header { border-bottom: 1px solid var(--bd-border) !important; font-weight: 800 !important; }

/* پیام‌های موفقیت/خطای UM */
.um-notice, .um-alert {
	border-radius: var(--bd-radius-sm) !important;
	padding: 12px 16px !important;
	font-size: .88rem !important;
	margin-bottom: 16px !important;
}
.um-notice.success, .um-alert.success { background: var(--bd-primary-light) !important; color: var(--bd-primary-dark) !important; }
.um-notice.error, .um-alert.error, .um-notice.invalid { background: #fde8e8 !important; color: #c92a2a !important; }

/* راهنمای فیلد (tooltip) */
.um-tip { border-radius: var(--bd-radius-sm) !important; font-family: inherit !important; }

/* هدر پروفایل (کاور و آواتار در صفحه‌ی نمایش پروفایل عمومی، در صورت استفاده) */
.um-cover { border-radius: var(--bd-radius) var(--bd-radius) 0 0 !important; }
.um-profile-headericon i { color: var(--bd-primary) !important; }

/* دراپ‌داون منوی حساب کاربری در هدر (اگر از منوی داخلی UM به‌جای هدر قالب استفاده شود) */
.um-dropdown { background: var(--bd-surface) !important; border: 1px solid var(--bd-border) !important; border-radius: var(--bd-radius-sm) !important; box-shadow: var(--bd-shadow-md) !important; font-family: inherit !important; }
.um-dropdown li a { color: var(--bd-text) !important; }
.um-dropdown li a:hover { color: var(--bd-primary) !important; }

/* ---------- Footer ---------- */
.bd-footer { background: #12181b; color: #cbd3d6; padding: 46px 0 0; margin-top: 40px; }
.bd-footer__grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 30px; padding-bottom: 30px; }
.bd-footer h4 { color: #fff; font-size: .95rem; margin-bottom: 12px; }
.bd-footer li { padding: 4px 0; font-size: .85rem; }
.bd-footer a:hover { color: var(--bd-primary); }
.bd-footer p { font-size: .85rem; line-height: 1.9; }
.bd-footer__bottom { border-top: 1px solid rgba(255,255,255,.08); padding: 16px 0; text-align: center; font-size: .8rem; }

/* ---------- FAB (mobile quick post) ---------- */
.bd-fab {
	position: fixed;
	bottom: 20px;
	left: 20px;
	width: 54px; height: 54px;
	border-radius: 50%;
	background: var(--bd-accent);
	color: #fff;
	display: none;
	align-items: center;
	justify-content: center;
	box-shadow: var(--bd-shadow-md);
	z-index: 90;
}
.bd-fab svg { width: 24px; height: 24px; }

/* ---------- 404 ---------- */
.bd-404 { text-align: center; padding: 90px 0; }
.bd-404 h1 { font-size: 4rem; margin: 0; color: var(--bd-primary); }

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 960px) {
	.bd-cat-grid { grid-template-columns: repeat(3, 1fr); }
	.bd-card-grid { grid-template-columns: repeat(3, 1fr); }
	.bd-single__grid { grid-template-columns: 1fr; }
	.bd-dashboard__grid { grid-template-columns: 1fr; }
	.bd-howto__grid { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
	.bd-hamburger { display: flex; }
	.bd-header__inner { flex-wrap: wrap; height: auto; padding: 10px 0; }
	.bd-search { order: 3; max-width: 100%; margin-top: 8px; flex-basis: 100%; }
	.bd-header__account span { display: none; }
	.bd-cat-grid { grid-template-columns: repeat(2, 1fr); }
	.bd-card-grid { grid-template-columns: repeat(2, 1fr); }
	.bd-fab { display: flex; }
	.bd-mobile-menu.is-open { display: block; padding: 10px 20px 16px; }
	.bd-mobile-menu { display: none; border-top: 1px solid var(--bd-border); }
	.bd-mobile-menu__list li a { display: block; padding: 10px 0; }
}

/* ---------- جدول «آگهی‌های من» (/account/listings/) — تبدیل به لیست کارتی ---------- */

.hp-listings.hp-table {
	display: block;
	width: 100%;
	background: transparent !important;
	border: none !important;
	border-collapse: separate !important;
	box-shadow: none !important;
}
.hp-listings.hp-table tbody { display: block; }

.hp-listing.hp-listing--edit-block {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	background: var(--bd-surface) !important;
	border: 1px solid var(--bd-border) !important;
	border-radius: var(--bd-radius) !important;
	padding: 14px 16px !important;
	margin-bottom: 12px;
	box-shadow: var(--bd-shadow);
	transition: box-shadow .15s ease, border-color .15s ease;
}
.hp-listing.hp-listing--edit-block:last-child { margin-bottom: 0; }
.hp-listing.hp-listing--edit-block:hover { box-shadow: var(--bd-shadow-md); border-color: var(--bd-primary) !important; }

.hp-listing.hp-listing--edit-block td { display: block; padding: 0 !important; border: none !important; background: none !important; }

/* تصویر بندانگشتی */
.hp-listing__image { order: 1; flex: 0 0 auto; }
.hp-listing__image-thumb, .hp-listing__image-thumb--placeholder {
	display: flex; align-items: center; justify-content: center;
	width: 64px; height: 64px;
	border-radius: var(--bd-radius-sm);
	object-fit: cover;
	background: var(--bd-primary-light);
	color: var(--bd-primary);
	font-size: 1.4rem;
}

/* عنوان */
.hp-listing__title { order: 2; flex: 1 1 200px; min-width: 140px; font-size: .98rem; font-weight: 700; }
.hp-listing__title a { display: flex; align-items: center; gap: 8px; color: var(--bd-text); }
.hp-listing__title a:hover { color: var(--bd-primary); }
.hp-listing__title .hp-icon { font-size: .8rem; color: var(--bd-primary); }

/* دسته‌بندی */
.hp-listing__categories {
	order: 3; flex: 0 0 auto;
	font-size: .78rem; font-weight: 600;
	color: var(--bd-primary-dark);
	background: var(--bd-primary-light);
	padding: 5px 12px;
	border-radius: 999px;
	white-space: nowrap;
}

/* تاریخ */
.hp-listing__date { order: 4; flex: 0 0 auto; font-size: .78rem; color: var(--bd-text-muted); white-space: nowrap; }

/* وضعیت آگهی — چون HivePress برای وضعیت «منتشرشده» متنی چاپ نمی‌کنه، این‌جا متن بج رو خودمون اضافه می‌کنیم */
.hp-listing__status { order: 5; flex: 0 0 auto; }
.hp-listing__status.hp-status::before {
	display: inline-flex; align-items: center; gap: 5px;
	padding: 4px 11px; border-radius: 999px;
	font-size: .74rem; font-weight: 700; white-space: nowrap;
}
.hp-listing__status.hp-status--publish::before { content: '● منتشر شده'; background: var(--bd-primary-light); color: var(--bd-primary-dark); }
.hp-listing__status.hp-status--pending::before { content: '● در انتظار تأیید'; background: #fff6e5; color: #a15c00; }
.hp-listing__status.hp-status--draft::before { content: '● پیش‌نویس'; background: #eef0f2; color: #5a6472; }
.hp-listing__status.hp-status--expired::before { content: '● منقضی شده'; background: #fde8e8; color: #c92a2a; }

/* دکمه‌های عملیات (نمایش/ویرایش/حذف) */
.hp-listing__actions { order: 6; flex: 0 0 auto; display: flex; gap: 8px; margin-inline-start: auto; }
.hp-listing__action {
	display: flex; align-items: center; justify-content: center;
	width: 34px; height: 34px;
	border-radius: 50%;
	background: var(--bd-primary-light) !important;
	color: var(--bd-primary-dark) !important;
	font-size: .85rem;
}
.hp-listing__action:hover { background: var(--bd-primary) !important; color: #fff !important; }

@media (max-width: 640px) {
	.hp-listing.hp-listing--edit-block { padding: 12px !important; }
	.hp-listing__title { order: 2; flex-basis: 100%; }
	.hp-listing__categories, .hp-listing__date { order: 3; }
	.hp-listing__status { order: 4; }
	.hp-listing__actions { order: 5; margin-inline-start: 0; width: 100%; justify-content: flex-end; }
}
