/* =============== News Page Layout =============== */
.news-wrap{max-width:1200px;margin:0 auto;padding:24px 16px;}
.news-grid{display:grid;grid-template-columns:1fr;gap:24px;}
@media(min-width:992px){.news-grid{grid-template-columns:2fr 1fr;}}

/* Hero row */
.hero-grid{display:grid;grid-template-columns:1fr;gap:16px;}
@media(min-width:992px){.hero-grid{grid-template-columns:2fr 1fr;gap:20px;}}
.hero-main,.hero-sm{background:#fff;border:1px solid #eef0f3;border-radius:12px;overflow:hidden;}
.hero-sm-grid{display:grid;grid-template-columns:1fr;gap:12px;}
.hero-img{display:block;aspect-ratio:16/10;object-fit:cover;width:100%;}
.hero-content{padding:14px 16px;}
.badge{display:inline-block;background:#111827;color:#fff;font-size:11px;padding:4px 8px;border-radius:999px}

/* Main list */
.post-card{display:grid;grid-template-columns:150px 1fr;gap:16px;background:#fff;border:1px solid #eef0f3;border-radius:12px;overflow:hidden;}
.post-thumb{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10;}
.post-meta{font-size:12px;color:#6b7280}
.post-title{font-weight:800;font-size:18px;line-height:1.25;margin:6px 0}
.post-ex{color:#4b5563}
@media(max-width:640px){.post-card{grid-template-columns:1fr;}}

/* Sidebar cards/lists */
.side-box{background:#fff;border:1px solid #eef0f3;border-radius:12px;padding:16px}
.side-title{font-weight:800;margin-bottom:10px}
.side-item{display:grid;grid-template-columns:90px 1fr;gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed #eef0f3}
.side-item:last-child{border-bottom:none}
.side-item img{width:100%;height:70px;object-fit:cover;border-radius:8px}
.rank{font-weight:800;color:#111827;margin-right:6px}

/* Pagination */
.news-pagination{display:flex;gap:8px;justify-content:center;margin-top:20px}
.news-pagination a,.news-pagination span{border:1px solid #e5e7eb;padding:6px 10px;border-radius:8px}
.news-pagination .current{background:#111827;color:#fff;border-color:#111827}

/* Utilities */
.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.ad-banner {
  margin-top: 20px;
  text-align: center;
}
.ad-banner img {
  max-width: 100%;
  border-radius: 12px;
  border: 1px solid #e5e7eb;
}
