/* فهرست مقالات */
.b-list { padding-top: clamp(40px, 5vw, 64px); }

/* نوار جست‌وجو و دسته‌ها */
.b-tools { position: relative; overflow: hidden; display: grid; gap: 1.1rem; padding: 1.3rem clamp(18px, 2.4vw, 28px); border-radius: 24px; background: #fff; border: 1px solid rgba(235, 228, 231, .9); box-shadow: 0 30px 60px -48px rgba(22, 26, 44, .5); }
.b-tools::before { content: ''; position: absolute; top: 0; right: 0; left: 0; height: 3px; background: linear-gradient(90deg, var(--rose), var(--red), var(--red-2)); }
.b-tools::after { content: ''; position: absolute; left: -20px; bottom: -40px; width: 180px; height: 140px; background: var(--dots); -webkit-mask: radial-gradient(circle, #000, transparent 70%); mask: radial-gradient(circle, #000, transparent 70%); pointer-events: none; }
.b-search { position: relative; display: flex; align-items: center; }
.fl .b-search svg { position: absolute; right: 1rem; width: 20px; height: 20px; color: var(--red); pointer-events: none; }
.b-search input { width: 100%; min-height: 52px; padding: 0 3rem 0 1rem; border-radius: 16px; border: 1.5px solid #e2e3ec; background: #fafbfd; color: var(--ink); font: inherit; transition: border-color .2s, box-shadow .2s, background .2s; }
.b-search input:focus { outline: none; border-color: var(--red); background: #fff; box-shadow: 0 0 0 4px rgba(227, 36, 43, .12); }
.b-cats { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: .5rem; }
.b-cat { display: inline-flex; align-items: center; gap: .45rem; min-height: 38px; padding: 0 .55rem 0 1rem; border-radius: 999px; border: 1px solid var(--line); background: #fff; color: var(--ink-2); font-weight: 700; font-size: .88rem; cursor: pointer; transition: background .25s, color .25s, border-color .25s, transform .25s var(--ease); }
.b-cat span { display: grid; place-items: center; min-width: 24px; height: 24px; padding: 0 .35rem; border-radius: 999px; background: #fde8e9; color: var(--red-d); font-size: .75rem; }
.b-cat:hover { border-color: rgba(227, 36, 43, .35); color: var(--red); transform: translateY(-2px); }
.b-cat.is-active { background: var(--badge); border-color: transparent; color: #fff; box-shadow: 0 12px 22px -12px rgba(227, 36, 43, .8); }
.b-cat.is-active span { background: rgba(255, 255, 255, .22); color: #fff; }

/* شبکهٔ کارت‌ها */
.b-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 2.4rem; }
.b-card[hidden] { display: none; }
.f-card__meta { flex-wrap: wrap; }
.b-card .f-card__meta span:not(.f-chip) { display: inline-flex; align-items: center; gap: .25rem; }
.fl .b-card .f-card__meta svg { width: 14px; height: 14px; color: var(--red); }
.b-card .f-card__body p { -webkit-line-clamp: 3; }

/* مقالهٔ شاخص: کارت افقی تمام‌عرض */
.b-grid:not(.is-filtered) .b-card--lead { grid-column: 1 / -1; display: grid; grid-template-columns: 1.15fr 1fr; }
.b-grid:not(.is-filtered) .b-card--lead .f-card__media { aspect-ratio: auto; min-height: 360px; height: 100%; }
.b-grid:not(.is-filtered) .b-card--lead .f-card__body { justify-content: center; padding: clamp(28px, 3.5vw, 48px); background: radial-gradient(rgba(227, 36, 43, .1) 1.2px, transparent 1.6px) 0 0 / 14px 14px; background-color: #fff; background-blend-mode: normal; }
.b-grid:not(.is-filtered) .b-card--lead .f-card__body > * { position: relative; }
.b-grid:not(.is-filtered) .b-card--lead h3 { font-size: clamp(1.35rem, 2.2vw, 1.85rem); font-weight: 800; line-height: 1.55; }
.b-grid:not(.is-filtered) .b-card--lead p { -webkit-line-clamp: 4; font-size: 1rem; margin-top: .8rem; }
.b-grid:not(.is-filtered) .b-card--lead .f-card__more { margin-top: 1.6rem; }
.b-badge { display: none; }
.b-grid:not(.is-filtered) .b-badge { display: inline-flex; align-self: flex-start; align-items: center; gap: .4rem; margin-bottom: .9rem; padding: .3rem .9rem; border-radius: 999px; color: #fff; background: var(--badge); font-size: .82rem; font-weight: 700; box-shadow: 0 10px 20px -10px rgba(227, 36, 43, .8); }
.fl .b-badge svg { width: 15px; height: 15px; }
.b-grid:not(.is-filtered) .b-card--lead .f-card__media--art svg { width: 84px; height: 84px; }

/* بدون نتیجه */
.b-none { display: grid; justify-items: center; gap: .7rem; margin-top: 2.4rem; text-align: center; color: var(--muted); }
.b-none[hidden] { display: none; }
.b-none b { color: var(--ink); font-size: 1.1rem; }
.b-none .f-btn { margin-top: .5rem; }

@media (max-width: 1100px) {
    .b-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
    .b-grid:not(.is-filtered) .b-card--lead { grid-template-columns: 1fr; }
    .b-grid:not(.is-filtered) .b-card--lead .f-card__media { min-height: 0; aspect-ratio: 16 / 9; }
}
@media (max-width: 640px) {
    .b-grid { grid-template-columns: 1fr; gap: 22px; }
    .b-cats { flex-wrap: nowrap; overflow-x: auto; margin-inline: -4px; padding: 2px 4px 6px; scrollbar-width: none; }
    .b-cats::-webkit-scrollbar { display: none; }
    .b-cat { flex: none; }
}
