/* NewsHub Blog Widgets - Core Styles */

.nhbw-post-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(3, 1fr);
}
.nhbw-post-grid.nhbw-columns-1 { grid-template-columns: 1fr; }
.nhbw-post-grid.nhbw-columns-2 { grid-template-columns: repeat(2, 1fr); }
.nhbw-post-grid.nhbw-columns-4 { grid-template-columns: repeat(4, 1fr); }

.nhbw-grid-item { background: #fff; border-radius: 10px; overflow: hidden; box-shadow: 0 1px 6px rgba(0,0,0,.08); }
.nhbw-grid-item .nhbw-thumb { position: relative; display: block; }
.nhbw-grid-item .nhbw-thumb img { width: 100%; height: 200px; object-fit: cover; display: block; }
.nhbw-badge { position: absolute; top: 12px; left: 12px; background: #2563eb; color: #fff; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 20px; text-transform: uppercase; }
.nhbw-content { padding: 16px; }
.nhbw-title { font-size: 17px; line-height: 1.35; margin: 0 0 8px; }
.nhbw-title a { color: #1e293b; text-decoration: none; }
.nhbw-meta { font-size: 12px; color: #64748b; }
.nhbw-excerpt { font-size: 13.5px; color: #475569; margin-top: 8px; }

/* Post List */
.nhbw-post-list .nhbw-list-item { display: flex; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px solid #e5e7eb; }
.nhbw-list-item .nhbw-thumb img { width: 80px; height: 80px; object-fit: cover; border-radius: 8px; }
.nhbw-number { font-size: 22px; font-weight: 800; color: #cbd5e1; min-width: 32px; }

/* Carousel */
.nhbw-owl-carousel .nhbw-carousel-item { padding: 0 8px; }
.nhbw-carousel-item .nhbw-thumb img { width: 100%; height: 160px; object-fit: cover; border-radius: 8px; }

/* Categories */
.nhbw-categories-grid { display: grid; gap: 16px; grid-template-columns: repeat(4, 1fr); }
.nhbw-cat-card { display: block; padding: 18px; background: #f1f5f9; border-radius: 10px; text-align: center; text-decoration: none; }
.nhbw-cat-name { display: block; font-weight: 700; color: #1e293b; }
.nhbw-cat-count { display: block; font-size: 12px; color: #64748b; margin-top: 4px; }

/* Trending */
.nhbw-trending-title { margin-bottom: 10px; }
.nhbw-trending-list { list-style: none; margin: 0; padding: 0; }
.nhbw-trending-list li { display: flex; gap: 10px; align-items: baseline; padding: 8px 0; border-bottom: 1px solid #e5e7eb; }
.nhbw-rank { font-weight: 800; color: #ef4444; }

/* Author Box */
.nhbw-author-box { display: flex; gap: 16px; background: #f8fafc; padding: 20px; border-radius: 10px; }
.nhbw-author-avatar img { border-radius: 50%; }
.nhbw-author-social a { margin-right: 10px; font-size: 12px; text-decoration: none; color: #2563eb; }

/* Social Share */
.nhbw-social-share { display: flex; gap: 8px; flex-wrap: wrap; }
.nhbw-share-btn { padding: 8px 14px; border-radius: 6px; background: #1e293b; color: #fff !important; font-size: 13px; text-decoration: none; }
.nhbw-share-style-rounded .nhbw-share-btn { border-radius: 50px; }
.nhbw-share-facebook { background: #1877f2; }
.nhbw-share-twitter { background: #0f1419; }
.nhbw-share-whatsapp { background: #25d366; }
.nhbw-share-linkedin { background: #0a66c2; }
.nhbw-share-pinterest { background: #e60023; }
.nhbw-share-telegram { background: #26a5e4; }

/* Breaking News Ticker */
.nhbw-ticker-wrap { display: flex; align-items: center; background: #0f172a; color: #fff; overflow: hidden; border-radius: 6px; }
.nhbw-ticker-label { background: #ef4444; padding: 10px 16px; font-weight: 800; font-size: 12px; white-space: nowrap; }
.nhbw-ticker-track { display: flex; gap: 40px; white-space: nowrap; animation: nhbw-scroll linear infinite; padding-left: 16px; }
.nhbw-ticker-item { color: #fff; text-decoration: none; font-size: 14px; }
@keyframes nhbw-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

@media (max-width: 768px) {
  .nhbw-post-grid, .nhbw-post-grid.nhbw-columns-4, .nhbw-post-grid.nhbw-columns-3 { grid-template-columns: repeat(2, 1fr); }
  .nhbw-categories-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .nhbw-post-grid, .nhbw-post-grid.nhbw-columns-4, .nhbw-post-grid.nhbw-columns-3, .nhbw-post-grid.nhbw-columns-2 { grid-template-columns: 1fr; }
}
