/* ==========================================================================
   Victor Trader — صفحه وبلاگ و آرشیو دسته‌ها
   بر اساس طرح بوم. کلاس‌ها با پیشوند vt- تا با قالب تداخل نکنند.
   ========================================================================== */

.vt-blog {
    --vt-green: #00b894;
    --vt-green-dark: #027a62;
    --vt-mint: #eff9f1;
    --vt-mint-soft: #f7fbf9;
    --vt-ink: #162320;
    --vt-body: #4a5a56;
    --vt-muted: #5a6b66;
    --vt-faint: #6b7b77;
    --vt-line: #dceae3;
    --vt-line-soft: #edf3f0;
    --vt-on-green: #ffffff;
    --vt-glow: rgba(0, 184, 148, 0.16);
    --vt-gold: #e8b339;
    --vt-gold-bg: #fff8e8;
    --vt-gold-line: #f2e0b5;
    --vt-gold-text: #8a6a1c;
    --vt-up: #16a34a;
    --vt-up-glow: rgba(22, 163, 74, 0.18);
    --vt-down: #e5484d;
    --vt-down-text: #a03a3d;
    --vt-down-bg: #fdf3f3;
    --vt-down-line: #f4d9d9;
    --vt-ink-soft: #23372f;
    --vt-ink-faint: #8fa79f;
    --vt-text: #212529;
    direction: rtl;
    color: var(--vt-text);
    padding-bottom: 64px;
}

.vt-blog *,
.vt-blog *::before,
.vt-blog *::after { box-sizing: border-box; }

.vt-blog__container {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
    padding-inline: 24px;
}

/* ---------- سربرگ ---------- */
.vt-blog__head {
    background: var(--vt-mint-soft);
    border-bottom: 1px solid var(--vt-line);
    padding: 40px 0 44px;
    margin-bottom: 40px;
}
.vt-blog__crumbs {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 13.5px;
    color: var(--vt-faint);
    margin-bottom: 12px;
}
.vt-blog__crumbs a { color: var(--vt-faint); text-decoration: none; }
.vt-blog__crumbs a:hover { color: var(--vt-green-dark); }
.vt-blog__crumbs .is-current { color: var(--vt-ink); font-weight: 600; }

.vt-blog__title {
    margin: 0 0 12px;
    font-size: 38px;
    font-weight: 900;
    letter-spacing: -0.6px;
    line-height: 1.4;
    color: var(--vt-ink);
}
.vt-blog__desc {
    margin: 0;
    font-size: 16px;
    line-height: 2;
    color: var(--vt-body);
    max-width: 760px;
}

/* ---------- ردیف شاخص ---------- */
.vt-blog__feature {
    display: flex;
    gap: 26px;
    align-items: flex-start;
    margin-bottom: 48px;
}

.vt-blog__feature .vt-feature {
    width: 560px;
    flex: 0 0 560px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.vt-blog__feature .vt-feature__media {
    display: block;
    aspect-ratio: 2 / 1;
    border-radius: 18px;
    overflow: hidden;
    background: var(--vt-mint);
}
.vt-blog__feature .vt-feature__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}
.vt-blog__feature .vt-feature__media:hover img { transform: scale(1.03); }
.vt-blog__feature .vt-feature__meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.vt-chip {
    padding: 5px 11px;
    background: var(--vt-mint);
    color: var(--vt-green-dark);
    border-radius: 7px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}
.vt-chip:hover { background: var(--vt-mint-soft); color: var(--vt-green-dark); }
.vt-date { font-size: 12.5px; color: var(--vt-faint); }
.vt-blog__feature .vt-feature__title {
    margin: 0;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.6;
}
.vt-blog__feature .vt-feature__title a { color: var(--vt-ink); text-decoration: none; }
.vt-blog__feature .vt-feature__title a:hover { color: var(--vt-green-dark); }
.vt-blog__feature .vt-feature__excerpt {
    margin: 0;
    font-size: 15px;
    line-height: 2.1;
    color: var(--vt-body);
}

/* ---------- لیست کناری ---------- */
.vt-blog__side {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.vt-mini {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}
.vt-mini__media {
    width: 130px;
    height: 96px;
    flex: 0 0 130px;
    border-radius: 13px;
    overflow: hidden;
    background: var(--vt-mint);
    display: block;
}
.vt-mini__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.vt-mini__body { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.vt-mini__title {
    margin: 0;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.7;
}
.vt-mini__title a { color: var(--vt-ink); text-decoration: none; }
.vt-mini__title a:hover { color: var(--vt-green-dark); }

/* ---------- گرید بقیه مقالات ---------- */
.vt-blog__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px 22px;
}
/* تعداد ستون از تنظیمات قالب */
.vt-blog--cols-2 .vt-blog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.vt-blog--cols-4 .vt-blog__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1100px) {
    .vt-blog--cols-4 .vt-blog__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.vt-post { display: flex; flex-direction: column; gap: 14px; }
.vt-post__media {
    display: block;
    aspect-ratio: 16 / 10;
    border-radius: 16px;
    overflow: hidden;
    background: var(--vt-mint);
}
.vt-post__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}
.vt-post__media:hover img { transform: scale(1.03); }
.vt-post__meta { font-size: 12.5px; color: var(--vt-faint); }
.vt-post__title {
    margin: 0;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.7;
}
.vt-post__title a { color: var(--vt-ink); text-decoration: none; }
.vt-post__title a:hover { color: var(--vt-green-dark); }
.vt-post__excerpt {
    margin: 0;
    font-size: 14px;
    line-height: 2;
    color: var(--vt-muted);
}

.vt-blog__section-title {
    margin: 0 0 24px;
    font-size: 26px;
    font-weight: 800;
    color: var(--vt-ink);
}

/* ---------- صفحه‌بندی ---------- */
.vt-blog__pagination { margin-top: 44px; }
.vt-blog__pagination .page-numbers {
    min-width: 44px;
    height: 44px;
    padding: 0 14px;
    border-radius: 11px;
    border: 1px solid var(--vt-line);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14.5px;
    color: var(--vt-ink);
    text-decoration: none;
    margin-inline-start: 8px;
}
.vt-blog__pagination .page-numbers:hover {
    border-color: var(--vt-green);
    color: var(--vt-green-dark);
}
.vt-blog__pagination .page-numbers.current {
    background: var(--vt-green);
    border-color: var(--vt-green);
    color: var(--vt-on-green);
    font-weight: 700;
}
.vt-blog__pagination .page-numbers.dots { border: 0; }

/* ---------- حالت خالی ---------- */
.vt-blog__empty {
    padding: 56px 36px;
    text-align: center;
    border: 1px dashed var(--vt-line);
    border-radius: 18px;
    color: var(--vt-faint);
    font-size: 15px;
    line-height: 2;
}

/* ---------- جستجوی دوباره در صفحه‌ی نتیجه ---------- */
.vt-blog__search {
    margin: 18px auto 0;
    max-width: 520px;
    display: flex;
    gap: 10px;
}
.vt-blog .vt-blog__search input[type="search"] {
    flex-grow: 1;
    min-width: 0;
    height: 52px;
    box-sizing: border-box;
    border: 1px solid var(--vt-line);
    border-radius: 14px;
    background: var(--vt-surface, #fff);
    padding: 0 16px;
    font: inherit;
    font-size: 14px;
    color: var(--vt-ink);
}
.vt-blog .vt-blog__search input[type="search"]:focus {
    outline: none;
    border-color: var(--vt-green);
    box-shadow: 0 0 0 3px var(--vt-glow);
}
.vt-blog .vt-blog__search button {
    height: 52px;
    padding: 0 24px;
    border: 0;
    border-radius: 14px;
    background: var(--vt-green);
    color: var(--vt-on-green);
    font: inherit;
    font-size: 14.5px;
    font-weight: 800;
    cursor: pointer;
}

/* ---------- خبرنامه پایین ---------- */
.vt-blog__cta {
    margin-top: 56px;
    background: var(--vt-mint);
    border-radius: 24px;
    padding: 44px 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 36px;
    flex-wrap: wrap;
}
.vt-blog__cta-copy { flex: 1 1 320px; display: flex; flex-direction: column; gap: 10px; }
.vt-blog__cta h2 { margin: 0; font-size: 26px; font-weight: 800; color: var(--vt-ink); }
.vt-blog__cta p { margin: 0; font-size: 15px; line-height: 1.95; color: var(--vt-body); }
.vt-blog__cta form { display: flex; gap: 12px; flex-wrap: wrap; }
.vt-blog__cta input[type="email"] {
    width: 280px;
    max-width: 100%;
    height: 54px;
    padding: 0 18px;
    border: 1px solid var(--vt-line);
    border-radius: 13px;
    background: var(--vt-surface, #fff);
    font-family: inherit;
    font-size: 15px;
    color: var(--vt-ink);
}
.vt-blog__cta input[type="email"]:focus { outline: 2px solid var(--vt-green); outline-offset: 1px; }
.vt-blog__cta button {
    height: 54px;
    padding: 0 28px;
    background: var(--vt-ink);
    color: var(--vt-on-ink, #fff);
    border: 0;
    border-radius: 13px;
    font-family: inherit;
    font-size: 15.5px;
    font-weight: 700;
    cursor: pointer;
}
.vt-blog__cta button:hover { background: #0d1a16; }

.vt-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

/* ==========================================================================
   ریسپانسیو
   ========================================================================== */

@media (max-width: 1024px) {
    .vt-blog__feature { flex-direction: column; gap: 32px; }
    .vt-blog__feature .vt-feature { width: 100%; flex: 1 1 auto; }
    .vt-blog__side { width: 100%; }
    .vt-blog__grid,
    .vt-blog--cols-4 .vt-blog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 782px) {
    .vt-blog__head { padding: 26px 0 30px; margin-bottom: 28px; }
    .vt-blog__title { font-size: 26px; }
    .vt-blog__desc { font-size: 14.5px; }
    .vt-blog__feature { gap: 26px; margin-bottom: 34px; }
    .vt-blog__feature .vt-feature__title { font-size: 20px; }
    .vt-blog__grid,
    .vt-blog--cols-2 .vt-blog__grid,
    .vt-blog--cols-4 .vt-blog__grid { grid-template-columns: minmax(0, 1fr); gap: 26px; }
    .vt-blog__section-title { font-size: 21px; }
    .vt-mini__media { width: 104px; height: 78px; flex-basis: 104px; }
    .vt-mini__title { font-size: 15px; }
    .vt-blog__cta { padding: 26px 22px; gap: 20px; }
    .vt-blog__cta h2 { font-size: 21px; }
    .vt-blog__cta form { width: 100%; flex-direction: column; }
    .vt-blog__cta input[type="email"],
    .vt-blog__cta button { width: 100%; }
}

/* ==========================================================================
   برگه‌ها — همان سربرگ وبلاگ، با بدنه‌ی متنی ساده
   ========================================================================== */

.vt-page .vt-page__body {
    max-width: 860px;
    margin: 0 auto 48px;
    font-size: 16px;
    line-height: 2.1;
    color: var(--vt-body);
}

/* برگه‌ای که با المنتور ساخته شده، چیدمان خودش را دارد و نباید تنگ شود */
.vt-page .vt-page__body:has(.elementor) { max-width: none; }

.vt-page .vt-page__body > *:first-child { margin-top: 0; }
.vt-page .vt-page__body > *:last-child { margin-bottom: 0; }

.vt-page .vt-page__body h2,
.vt-page .vt-page__body h3,
.vt-page .vt-page__body h4 {
    margin: 34px 0 14px;
    font-weight: 800;
    line-height: 1.7;
    color: var(--vt-ink);
}
.vt-page .vt-page__body h2 { font-size: 24px; }
.vt-page .vt-page__body h3 { font-size: 20px; }
.vt-page .vt-page__body h4 { font-size: 17px; }

.vt-page .vt-page__body p { margin: 0 0 20px; }

.vt-page .vt-page__body a { color: var(--vt-green-dark); text-decoration: underline; }
.vt-page .vt-page__body a:hover { color: var(--vt-green); }

.vt-page .vt-page__body ul,
.vt-page .vt-page__body ol { margin: 0 0 20px; padding-inline-start: 22px; }
.vt-page .vt-page__body li { margin-bottom: 9px; }

.vt-page .vt-page__body img { max-width: 100%; height: auto; border-radius: 16px; }

.vt-page .vt-page__body blockquote {
    margin: 26px 0;
    padding: 18px 22px;
    border: 0;
    border-inline-start: 3px solid var(--vt-green);
    border-radius: 14px;
    background: var(--vt-mint-soft);
    font-size: 15.5px;
}

.vt-page .vt-page__body table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 24px;
    font-size: 14.5px;
}
.vt-page .vt-page__body th,
.vt-page .vt-page__body td {
    padding: 12px 14px;
    border: 1px solid var(--vt-line-soft);
    text-align: start;
}
.vt-page .vt-page__body th { background: var(--vt-mint-soft); font-weight: 700; color: var(--vt-ink); }

.vt-page__pages { display: flex; gap: 10px; margin-top: 26px; font-size: 14px; }

@media (max-width: 767px) {
    .vt-page .vt-page__body { font-size: 15px; line-height: 2; margin-bottom: 34px; }
    .vt-page .vt-page__body h2 { font-size: 21px; }
    .vt-page .vt-page__body h3 { font-size: 18px; }
}
