/* ─── CATEGORY HERO BANNER ─── */
.cat-hero { background: linear-gradient(135deg, var(--maroon) 0%, #6b1212 40%, #3d0a0a 100%); position: relative; overflow: hidden; margin-bottom: 0; }
.cat-hero::before { content: ''; position: absolute; inset: 0; background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }
.cat-hero-inner { max-width: 1200px; margin: 0 auto; padding: 28px 16px 26px; display: flex; align-items: center; gap: 24px; position: relative; z-index: 1; }
.cat-hero-icon { font-size: 56px; flex-shrink: 0; filter: drop-shadow(0 4px 12px rgba(0,0,0,.3)); }
.cat-hero-label { font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,.55); margin-bottom: 5px; }
.cat-hero-title { font-family: 'Noto Serif Devanagari', serif; font-size: 30px; font-weight: 900; color: #fff; line-height: 1.2; margin-bottom: 8px; }
.cat-hero-desc { font-size: 14px; color: rgba(255,255,255,.72); line-height: 1.6; max-width: 520px; }
.cat-hero-stats { display: flex; gap: 20px; margin-top: 12px; }
.cat-stat { text-align: center; }
.cat-stat-num { font-size: 22px; font-weight: 700; color: var(--gold); display: block; line-height: 1; }
.cat-stat-label { font-size: 11px; color: rgba(255,255,255,.55); margin-top: 2px; }

/* Sub-category tabs */
.subcat-bar { background: rgba(0,0,0,.25); border-top: 1px solid rgba(255,255,255,.08); }
.subcat-inner { max-width: 1200px; margin: 0 auto; padding: 0 16px; display: flex; overflow-x: auto; gap: 0; }
.subcat-tab, .subcat-inner a { color: rgba(255,255,255,.7); font-size: 13px; font-weight: 500; padding: 10px 16px; white-space: nowrap; cursor: pointer; border-bottom: 3px solid transparent; transition: all .15s; text-decoration: none; }
.subcat-tab:hover, .subcat-inner a:hover { color: #fff; background: rgba(255,255,255,.07); }
.subcat-tab.active, .subcat-inner a.current-cat { color: var(--gold); border-bottom-color: var(--gold); background: rgba(255,255,255,.05); font-weight: 700; }

/* ─── PAGE WRAP ─── */
.page-wrap { max-width: 1200px; margin: 20px auto 0; padding: 0 16px 40px; display: grid; grid-template-columns: 1fr var(--sidebar-w); gap: 22px; align-items: start; }
.page-wrap.no-sidebar { grid-template-columns: 1fr; }
.archive-main { min-width: 0; } /* Prevents grid blowout */

/* ─── FILTER BAR ─── */
.filter-bar { background: var(--white); border-radius: 6px; box-shadow: 0 1px 4px rgba(0,0,0,.06); padding: 12px 16px; display: flex; align-items: center; gap: 12px; margin-bottom: 18px; flex-wrap: wrap; }
.filter-label { font-size: 12.5px; font-weight: 600; color: var(--text-soft); white-space: nowrap; }
.filter-chips { display: flex; gap: 7px; flex-wrap: wrap; flex: 1; }
.filter-chip { font-size: 12px; padding: 5px 14px; border-radius: 50px; border: 1.5px solid var(--border); background: var(--white); cursor: pointer; transition: all .15s; font-weight: 500; color: var(--text-mid); white-space: nowrap; }
.filter-chip:hover { border-color: var(--saffron); color: var(--saffron-dark); }
.filter-chip.active { background: var(--saffron); border-color: var(--saffron); color: #fff; }
.filter-sep { width: 1px; height: 28px; background: var(--border); flex-shrink: 0; }
.sort-select { font-size: 12.5px; font-family: 'Hind', sans-serif; border: 1.5px solid var(--border); border-radius: 4px; padding: 6px 10px; color: var(--text-mid); outline: none; cursor: pointer; background: var(--white); }
.view-toggle { display: flex; gap: 4px; }
.view-btn { width: 32px; height: 32px; border: 1.5px solid var(--border); border-radius: 4px; background: var(--white); display: flex; align-items: center; justify-content: center; font-size: 14px; cursor: pointer; color: var(--text-soft); transition: all .15s; }
.view-btn.active, .view-btn:hover { background: var(--saffron); border-color: var(--saffron); color: #fff; }

/* ─── FEATURED POST ─── */
.featured-post { background: var(--white); border-radius: 8px; overflow: hidden; box-shadow: 0 1px 6px rgba(0,0,0,.08); margin-bottom: 18px; display: grid; grid-template-columns: 1.2fr 1fr; cursor: pointer; transition: box-shadow .2s; }
.featured-post:hover { box-shadow: 0 6px 20px rgba(0,0,0,.12); }
.fp-thumb { background: linear-gradient(135deg, #fff3e0, #ffe0b2); display: flex; align-items: center; justify-content: center; font-size: 90px; aspect-ratio: 16 / 9; height: auto; min-height: auto; position: relative; overflow: hidden; }
.fp-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; position: absolute; top: 0; left: 0; }
.featured-post:hover .fp-thumb img { transform: scale(1.06); }
.fp-badge { position: absolute; top: 14px; left: 14px; background: var(--saffron); color: #fff; font-size: 10.5px; font-weight: 700; padding: 3px 10px; border-radius: 3px; letter-spacing: .5px; text-transform: uppercase; z-index: 10;}
.fp-body { padding: 24px 22px; display: flex; flex-direction: column; justify-content: center; }
.fp-cat-tag { display: inline-flex; align-items: center; gap: 5px; background: var(--saffron-light); color: var(--saffron-dark); font-size: 11px; font-weight: 700; padding: 3px 10px; border-radius: 3px; border: 1px solid #f0cbb0; margin-bottom: 10px; width: fit-content; }
.fp-title { font-family: 'Noto Serif Devanagari', serif; font-size: 21px; font-weight: 700; color: var(--text-dark); line-height: 1.45; margin-bottom: 10px; text-decoration: none;}
.featured-post:hover .fp-title { color: var(--saffron-dark); }
.fp-excerpt { font-size: 13.5px; color: var(--text-mid); line-height: 1.65; margin-bottom: 14px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.fp-meta { display: flex; align-items: center; gap: 12px; font-size: 12px; color: var(--text-soft); flex-wrap: wrap; }
.fp-read-btn { margin-left: auto; background: var(--saffron); color: #fff; font-size: 12.5px; font-weight: 600; padding: 7px 18px; border-radius: 4px; border: none; cursor: pointer; transition: background .15s; text-decoration: none; }
.fp-read-btn:hover { background: var(--saffron-dark); }

/* ─── POSTS GRID ─── */
.posts-grid { display: grid; gap: 16px; margin-bottom: 18px; }
.posts-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
.posts-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
.posts-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
.post-card { background: var(--white); border-radius: 6px; overflow: hidden; box-shadow: 0 1px 4px rgba(0,0,0,.06); cursor: pointer; transition: box-shadow .2s, transform .2s; display: flex; flex-direction: column; text-decoration: none;}
.post-card:hover { box-shadow: 0 5px 18px rgba(0,0,0,.11); transform: translateY(-2px); }
.pc-thumb { aspect-ratio: 16 / 9; height: auto; background: var(--saffron-light); display: flex; align-items: center; justify-content: center; font-size: 44px; position: relative; overflow: hidden; }
.pc-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; position: absolute; top: 0; left: 0; }
.post-card:hover .pc-thumb img { transform: scale(1.06); }
.pc-cat { position: absolute; top: 10px; left: 10px; background: var(--saffron); color: #fff; font-size: 10px; font-weight: 700; padding: 2px 8px; border-radius: 3px; letter-spacing: .4px; text-transform: uppercase; z-index: 10;}
.pc-body { padding: 12px 14px 14px; flex: 1; display: flex; flex-direction: column; }
.pc-title { font-family: 'Noto Serif Devanagari', serif; font-size: 14.5px; font-weight: 700; color: var(--text-dark); line-height: 1.45; margin-bottom: 7px; flex: 1; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.post-card:hover .pc-title { color: var(--saffron-dark); }
.pc-excerpt { font-size: 12.5px; color: var(--text-soft); line-height: 1.55; margin-bottom: 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pc-footer { display: flex; align-items: center; justify-content: space-between; font-size: 11.5px; border-top: 1px solid var(--border); padding-top: 8px; margin-top: auto; }
.pc-date { color: var(--text-soft); }
.pc-read { color: var(--saffron-dark); font-weight: 600; display: flex; align-items: center; gap: 3px; }
.pc-read:hover { text-decoration: underline; }

/* ─── LIST VIEW ─── */
.posts-list { display: flex; flex-direction: column; gap: 12px; margin-bottom: 18px; }
.list-card { background: var(--white); border-radius: 6px; overflow: hidden; box-shadow: 0 1px 4px rgba(0,0,0,.06); cursor: pointer; transition: box-shadow .2s; display: flex; gap: 0; text-decoration: none;}
.list-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.1); }
.lc-thumb { width: 160px; aspect-ratio: 16 / 9; height: auto; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 40px; overflow: hidden; position: relative; }
.lc-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; position: absolute; }
.list-card:hover .lc-thumb img { transform: scale(1.08); }
.lc-body { padding: 14px 18px; flex: 1; display: flex; flex-direction: column; justify-content: center; }
.lc-tags { display: flex; gap: 6px; margin-bottom: 7px; flex-wrap: wrap; }
.lc-tag { font-size: 10.5px; font-weight: 700; padding: 2px 8px; border-radius: 3px; background: var(--saffron-light); color: var(--saffron-dark); border: 1px solid #f0cbb0; letter-spacing: .3px; text-transform: uppercase; }
.lc-title { font-family: 'Noto Serif Devanagari', serif; font-size: 16px; font-weight: 700; color: var(--text-dark); line-height: 1.4; margin-bottom: 6px; }
.list-card:hover .lc-title { color: var(--saffron-dark); }
.lc-excerpt { font-size: 13px; color: var(--text-mid); line-height: 1.6; margin-bottom: 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.lc-meta { display: flex; align-items: center; gap: 14px; font-size: 11.5px; color: var(--text-soft); }
.lc-read { color: var(--saffron-dark); font-weight: 600; margin-left: auto; }
.lc-read:hover { text-decoration: underline; }

/* ─── AD BANNER ─── */
.archive-ad-banner { margin-bottom: 18px; text-align: center; }

/* ─── RESULTS INFO ─── */
.results-info { font-size: 13px; color: var(--text-soft); margin-bottom: 14px; display: flex; align-items: center; justify-content: space-between; }
.results-info strong { color: var(--text-dark); }

/* ─── PAGINATION ─── */
.pagination { display: flex; align-items: center; justify-content: center; gap: 6px; padding: 10px 0 4px; }
.pagination .page-numbers { width: 38px; height: 38px; border-radius: 6px; border: 1.5px solid var(--border); background: var(--white); display: flex; align-items: center; justify-content: center; font-size: 13.5px; font-weight: 600; cursor: pointer; color: var(--text-mid); transition: all .15s; font-family: 'Hind', sans-serif; text-decoration: none; }
.pagination .page-numbers:hover { border-color: var(--saffron); color: var(--saffron-dark); }
.pagination .page-numbers.current { background: var(--saffron); border-color: var(--saffron); color: #fff; }
.pagination .page-numbers.next, .pagination .page-numbers.prev { width: auto; padding: 0 14px; font-size: 12.5px; gap: 4px; }
.pagination .page-numbers.dots { border: none; background: transparent; width: auto; padding: 0 4px; color: var(--text-soft); cursor: default; }

/* ─── SIDEBAR ─── */
.sidebar-sticky { position: sticky; top: 80px; }
.sidebar-section { background: var(--white); border-radius: 6px; overflow: hidden; box-shadow: 0 1px 4px rgba(0,0,0,.06); margin-bottom: 16px; }
.ss-head { background: var(--maroon); color: #fff; font-family: 'Noto Serif Devanagari', serif; font-size: 14px; font-weight: 700; padding: 10px 14px; display: flex; align-items: center; gap: 7px; }

/* Sidebar search */
.sidebar-search { padding: 12px 14px; display: flex; gap: 0; }
.sidebar-search input { flex: 1; border: 1.5px solid var(--border); border-right: none; border-radius: 4px 0 0 4px; padding: 8px 12px; font-size: 13px; font-family: 'Hind', sans-serif; outline: none; }
.sidebar-search input:focus { border-color: var(--saffron); }
.sidebar-search button { background: var(--saffron); border: none; color: #fff; padding: 8px 14px; border-radius: 0 4px 4px 0; font-size: 15px; cursor: pointer; }
.sidebar-search button:hover { background: var(--saffron-dark); }

/* Sidebar categories */
.cat-list { padding: 6px 0; }
.cat-list-item { display: flex; align-items: center; justify-content: space-between; padding: 9px 14px; border-bottom: 1px solid var(--border); cursor: pointer; transition: background .12s; text-decoration: none; }
.cat-list-item:last-child { border-bottom: none; }
.cat-list-item:hover { background: var(--saffron-light); }
.cat-list-name { font-size: 13.5px; font-weight: 500; color: var(--text-dark); display: flex; align-items: center; gap: 7px; }
.cat-list-item:hover .cat-list-name { color: var(--saffron-dark); }
.cat-count { background: var(--saffron-light); color: var(--saffron-dark); font-size: 11px; font-weight: 700; padding: 1px 8px; border-radius: 50px; border: 1px solid #f0cbb0; }
.cat-list-item.current-cat .cat-list-name { color: var(--saffron-dark); font-weight: 700; }
.cat-list-item.current-cat { background: var(--saffron-light); }
.cat-list-item.current-cat .cat-count { background: var(--saffron); color: #fff; border-color: var(--saffron); }

/* Sidebar tags */
.tags-cloud { padding: 12px 14px; display: flex; flex-wrap: wrap; gap: 7px; }
.tag-pill, .tagcloud a { background: var(--saffron-light); color: var(--saffron-dark); border: 1px solid #f0cbb0; font-size: 12px !important; padding: 4px 11px; border-radius: 50px; cursor: pointer; transition: all .15s; text-decoration: none; }
.tag-pill:hover, .tagcloud a:hover { background: var(--saffron); color: #fff; border-color: var(--saffron); }

/* Sidebar latest */
.slp-item { display: flex; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--border); cursor: pointer; transition: background .12s; text-decoration: none;}
.slp-item:last-child { border-bottom: none; }
.slp-item:hover { background: var(--saffron-light); }
.slp-thumb { width: 85px; aspect-ratio: 16 / 9; height: auto; border-radius: 4px; flex-shrink: 0; background: var(--saffron-light); display: flex; align-items: center; justify-content: center; font-size: 18px; overflow: hidden; position: relative; }
.slp-thumb img { width: 100%; height: 100%; object-fit: cover; position: absolute; }
.slp-title { font-size: 12.5px; font-weight: 600; color: var(--text-dark); line-height: 1.4; }
.slp-item:hover .slp-title { color: var(--saffron-dark); }
.slp-date { font-size: 11px; color: var(--text-soft); margin-top: 3px; }
