/* ============================================
   BHARAT DECODE NEWS — Professional News Theme
   NDTV / India Today / Zee News Style
   Paste in: WP Admin → Appearance → Customize → Additional CSS
   ============================================ */

/* === GOOGLE FONTS === */
@import url('https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Source+Sans+3:wght@400;500;600;700&display=swap');

/* === ROOT VARIABLES === */
:root {
  --bd-red: #C0021B;
  --bd-red-dark: #8B0013;
  --bd-red-soft: #FFF0F2;
  --bd-navy: #0A2647;
  --bd-gold: #E8A020;
  --bd-gray-light: #F5F5F5;
  --bd-gray-mid: #E8E8E8;
  --bd-gray-text: #666666;
  --bd-black: #111111;
  --bd-white: #FFFFFF;
  --bd-font-head: 'Merriweather', Georgia, serif;
  --bd-font-body: 'Source Sans 3', Arial, sans-serif;
}

/* === GLOBAL RESET === */
* { box-sizing: border-box; }
body {
  font-family: var(--bd-font-body) !important;
  background: #F2F2F2 !important;
  color: var(--bd-black) !important;
}

/* ============================================
   TOP BREAKING NEWS TICKER
   ============================================ */
body::before {
  content: '🔴 LIVE  |  Bharat Decode News — Decode the News. Discover the Truth.';
  display: block;
  background: var(--bd-red);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  font-family: var(--bd-font-body);
  padding: 6px 20px;
  text-align: center;
  letter-spacing: 0.3px;
  position: sticky;
  top: 0;
  z-index: 9999;
  width: 100%;
}

/* ============================================
   HEADER / SITE LOGO AREA
   ============================================ */
.site-header,
header.site-header,
.wp-block-template-part {
  background: var(--bd-white) !important;
  border-bottom: 3px solid var(--bd-red) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}

.site-title,
h1.site-title {
  font-family: var(--bd-font-head) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--bd-navy) !important;
  letter-spacing: -0.5px !important;
}

.site-description {
  font-size: 11px !important;
  color: var(--bd-red) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}

/* ============================================
   NAVIGATION — NEWS STYLE
   ============================================ */
.wp-block-navigation,
nav.wp-block-navigation {
  background: var(--bd-navy) !important;
  padding: 0 !important;
}

.wp-block-navigation a,
.wp-block-navigation__container a {
  font-family: var(--bd-font-body) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #fff !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 12px 16px !important;
  display: inline-block !important;
  text-decoration: none !important;
  transition: background 0.15s, color 0.15s !important;
  border-right: 1px solid rgba(255,255,255,0.1) !important;
}

.wp-block-navigation a:hover,
.wp-block-navigation__container a:hover {
  background: var(--bd-red) !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* Active/current nav item */
.wp-block-navigation .current-menu-item > a,
.wp-block-navigation a:first-child {
  color: var(--bd-gold) !important;
}

/* ============================================
   MAIN CONTENT AREA
   ============================================ */
.site-main,
main,
#main,
.wp-site-blocks main {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 16px !important;
  background: transparent !important;
}

/* ============================================
   POST / ARTICLE CARDS — NEWS STYLE
   ============================================ */
article.type-post,
.wp-block-post,
.post,
.entry {
  background: var(--bd-white) !important;
  border: 1px solid var(--bd-gray-mid) !important;
  border-radius: 4px !important;
  margin-bottom: 16px !important;
  overflow: hidden !important;
  transition: box-shadow 0.2s !important;
}

article.type-post:hover,
.wp-block-post:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.12) !important;
}

/* Featured image in cards */
.wp-post-image,
.entry-thumbnail img,
.wp-block-post-featured-image img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.3s !important;
}

article:hover .wp-post-image,
article:hover .wp-block-post-featured-image img {
  transform: scale(1.02) !important;
}

/* Category label on card */
.cat-links a,
.wp-block-post-terms a,
.entry-categories a {
  display: inline-block !important;
  background: var(--bd-red) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 2px 8px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  border-radius: 2px !important;
  text-decoration: none !important;
  margin-bottom: 6px !important;
}

/* Post title */
.entry-title,
.wp-block-post-title,
h2.entry-title {
  font-family: var(--bd-font-head) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  color: var(--bd-black) !important;
  margin: 8px 0 !important;
}

.entry-title a,
.wp-block-post-title a {
  color: var(--bd-black) !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
}

.entry-title a:hover,
.wp-block-post-title a:hover {
  color: var(--bd-red) !important;
}

/* Post meta (date, author) */
.entry-meta,
.wp-block-post-date,
.posted-on,
.byline {
  font-size: 12px !important;
  color: var(--bd-gray-text) !important;
  font-family: var(--bd-font-body) !important;
  margin-bottom: 8px !important;
}

.entry-meta a {
  color: var(--bd-gray-text) !important;
  text-decoration: none !important;
}

/* Post excerpt */
.entry-summary,
.wp-block-post-excerpt,
.entry-content p:first-child {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #444 !important;
  font-family: var(--bd-font-body) !important;
}

/* ============================================
   SINGLE POST PAGE
   ============================================ */
.single .entry-header,
.single-post .entry-header {
  border-bottom: 2px solid var(--bd-gray-mid) !important;
  margin-bottom: 20px !important;
  padding-bottom: 16px !important;
}

.single .entry-title,
.single-post .entry-title,
.single h1.entry-title {
  font-family: var(--bd-font-head) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: var(--bd-black) !important;
  margin-bottom: 12px !important;
}

/* Article body content */
.single .entry-content,
.single-post .entry-content {
  font-family: var(--bd-font-body) !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: #222 !important;
  max-width: 780px !important;
}

.single .entry-content h2 {
  font-family: var(--bd-font-head) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--bd-navy) !important;
  margin: 28px 0 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid var(--bd-red) !important;
}

.single .entry-content h3 {
  font-family: var(--bd-font-head) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--bd-navy) !important;
  margin: 20px 0 10px !important;
}

.single .entry-content p {
  margin-bottom: 18px !important;
}

.single .entry-content ul,
.single .entry-content ol {
  margin: 12px 0 18px 24px !important;
}

.single .entry-content li {
  margin-bottom: 8px !important;
  line-height: 1.7 !important;
}

/* Blockquote — news style */
.single .entry-content blockquote {
  border-left: 4px solid var(--bd-red) !important;
  background: var(--bd-red-soft) !important;
  padding: 14px 18px !important;
  margin: 20px 0 !important;
  font-style: italic !important;
  font-size: 16px !important;
  color: #333 !important;
  border-radius: 0 4px 4px 0 !important;
}

/* ============================================
   CATEGORY / ARCHIVE PAGE HEADER
   ============================================ */
.archive-header,
.page-header,
.category .page-header {
  background: var(--bd-navy) !important;
  color: #fff !important;
  padding: 20px 24px !important;
  border-radius: 4px !important;
  margin-bottom: 20px !important;
  border-left: 6px solid var(--bd-red) !important;
}

.archive-title,
.page-title,
h1.page-title {
  font-family: var(--bd-font-head) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 !important;
}

.archive-description,
.taxonomy-description {
  font-size: 14px !important;
  color: rgba(255,255,255,0.75) !important;
  margin-top: 6px !important;
  line-height: 1.5 !important;
}

/* ============================================
   SIDEBAR
   ============================================ */
.widget,
aside .widget {
  background: var(--bd-white) !important;
  border: 1px solid var(--bd-gray-mid) !important;
  border-radius: 4px !important;
  padding: 16px !important;
  margin-bottom: 20px !important;
}

.widget-title,
.widgettitle {
  font-family: var(--bd-font-head) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--bd-white) !important;
  background: var(--bd-navy) !important;
  margin: -16px -16px 16px !important;
  padding: 10px 16px !important;
  border-left: 4px solid var(--bd-red) !important;
  letter-spacing: 0.3px !important;
}

/* ============================================
   BREAKING NEWS LABEL
   ============================================ */
.breaking-tag,
.is-breaking .cat-links a,
.breaking .cat-links a {
  background: var(--bd-red) !important;
  color: #fff !important;
  animation: blink-red 1.5s infinite !important;
}

@keyframes blink-red {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.7; }
}

/* ============================================
   READ MORE BUTTON
   ============================================ */
.read-more,
.more-link,
a.more-link {
  display: inline-block !important;
  background: var(--bd-red) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 6px 14px !important;
  border-radius: 3px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  transition: background 0.15s !important;
}

.read-more:hover,
.more-link:hover {
  background: var(--bd-red-dark) !important;
  color: #fff !important;
}

/* ============================================
   FOOTER
   ============================================ */
.site-footer,
footer.site-footer {
  background: var(--bd-navy) !important;
  color: rgba(255,255,255,0.8) !important;
  padding: 32px 20px 16px !important;
  margin-top: 32px !important;
  border-top: 4px solid var(--bd-red) !important;
}

.site-footer a {
  color: rgba(255,255,255,0.7) !important;
  text-decoration: none !important;
}

.site-footer a:hover {
  color: var(--bd-gold) !important;
}

.site-info,
.footer-info {
  font-size: 12px !important;
  color: rgba(255,255,255,0.5) !important;
  text-align: center !important;
  border-top: 1px solid rgba(255,255,255,0.1) !important;
  margin-top: 20px !important;
  padding-top: 16px !important;
}

/* ============================================
   PAGINATION
   ============================================ */
.nav-links a,
.page-numbers a {
  background: var(--bd-white) !important;
  border: 1px solid var(--bd-gray-mid) !important;
  color: var(--bd-navy) !important;
  padding: 8px 14px !important;
  border-radius: 3px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.15s !important;
}

.nav-links a:hover,
.page-numbers a:hover,
.page-numbers.current {
  background: var(--bd-red) !important;
  color: #fff !important;
  border-color: var(--bd-red) !important;
}

/* ============================================
   SEARCH BAR
   ============================================ */
.search-form input[type="search"],
input[type="search"] {
  border: 2px solid var(--bd-gray-mid) !important;
  border-radius: 3px 0 0 3px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-family: var(--bd-font-body) !important;
  outline: none !important;
  transition: border-color 0.15s !important;
}

.search-form input[type="search"]:focus {
  border-color: var(--bd-red) !important;
}

.search-form button,
.search-submit {
  background: var(--bd-red) !important;
  color: #fff !important;
  border: none !important;
  padding: 10px 16px !important;
  border-radius: 0 3px 3px 0 !important;
  cursor: pointer !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  transition: background 0.15s !important;
}

.search-form button:hover {
  background: var(--bd-red-dark) !important;
}

/* ============================================
   MOBILE RESPONSIVE — NEWS STYLE
   ============================================ */
@media (max-width: 768px) {
  body::before {
    font-size: 11px !important;
    padding: 5px 12px !important;
  }

  .site-title { font-size: 20px !important; }

  .wp-block-navigation a {
    font-size: 11px !important;
    padding: 10px 10px !important;
  }

  .single .entry-title { font-size: 22px !important; }
  .single .entry-content { font-size: 15px !important; }
  .entry-title { font-size: 16px !important; }

  .site-main { padding: 10px !important; }

  .wp-post-image,
  .wp-block-post-featured-image img {
    height: 160px !important;
  }

  /* Hide subscribe popup on mobile */
  .jetpack-subscribe-overlay,
  .jetpack-subscribe-overlay__content {
    display: none !important;
  }
}

/* ============================================
   POST META BAR — Views + Date + Author
   ============================================ */
.bdcms-post-meta-bar {
  background: var(--bd-gray-light) !important;
  border: 1px solid var(--bd-gray-mid) !important;
  border-left: 4px solid var(--bd-red) !important;
  border-radius: 3px !important;
  padding: 10px 14px !important;
  margin-bottom: 20px !important;
  display: flex !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
  font-size: 13px !important;
  color: var(--bd-gray-text) !important;
}

/* ============================================
   AUTHOR CARD — Below Posts
   ============================================ */
.bdcms-author-card {
  border-left: 4px solid var(--bd-red) !important;
  border-radius: 0 4px 4px 0 !important;
  background: var(--bd-gray-light) !important;
}

/* ============================================
   TAGS
   ============================================ */
.tags-links a,
.tag-cloud-link {
  display: inline-block !important;
  background: var(--bd-gray-light) !important;
  border: 1px solid var(--bd-gray-mid) !important;
  color: var(--bd-gray-text) !important;
  font-size: 12px !important;
  padding: 3px 10px !important;
  border-radius: 20px !important;
  margin: 3px !important;
  text-decoration: none !important;
  transition: all 0.15s !important;
}

.tags-links a:hover,
.tag-cloud-link:hover {
  background: var(--bd-red) !important;
  color: #fff !important;
  border-color: var(--bd-red) !important;
}

/* ============================================
   FEATURED / HERO POST STYLE
   ============================================ */
.wp-block-post:first-child article,
.sticky {
  border-left: 4px solid var(--bd-red) !important;
}

/* ============================================
   LINKS IN CONTENT
   ============================================ */
.entry-content a {
  color: var(--bd-red) !important;
  text-decoration: underline !important;
}

.entry-content a:hover {
  color: var(--bd-red-dark) !important;
}

/* ============================================
   404 PAGE
   ============================================ */
.error404 .page-title {
  color: var(--bd-red) !important;
  font-size: 80px !important;
  font-family: var(--bd-font-head) !important;
}

/* ============================================
   IMAGES — Aspect ratio fix
   ============================================ */
img {
  max-width: 100% !important;
  height: auto !important;
}

.wp-block-post-featured-image {
  overflow: hidden !important;
}

.wp-block-post-featured-image img {
  aspect-ratio: 16/9 !important;
  object-fit: cover !important;
}
