/*
 * ══════════════════════════════════════════════════════════════════
 *  RAGE X INTELLIGENCE — Pro Enhancements  v27.7.0
 *  File: ragex-enhancements.css
 *  Load order: LAST — enqueued at priority 20 after ragex-ultra
 *
 *  Purpose: Visual polish, editorial professionalism, and any remaining
 *  bug fixes that sit above the ultra layer. Governs by role:
 *    Red     → Breaking alerts, active UI states, brand anchor
 *    Blue    → Intel, analysis, information, interactive elements
 *    Yellow  → Priority warnings, exclusive tags, highlights
 *    Dark BG → #0e0e0e canvas / #141414 cards / #1a1a1a surfaces
 *
 *  Decode. Dominate. Deliver.
 * ══════════════════════════════════════════════════════════════════
 */


/* ══════════════════════════════════════════════════════════════════
   01  ROOT — ENHANCEMENT TOKENS
   Additional tokens used only by this layer. Do NOT redefine base
   brand tokens here; reference them via var(--rage-red) etc.
   ══════════════════════════════════════════════════════════════════ */
:root {
  /* Section header accent line */
  --enh-section-line-h:   2px;
  --enh-section-label-fs: 10px;

  /* Card thumbnail aspect ratio — 16:9 for wide hero, 3:2 for cards */
  --enh-card-ratio:        3 / 2;
  --enh-hero-ratio:        16 / 9;

  /* Article typography */
  --enh-article-fs:        17px;
  --enh-article-lh:        1.78;
  --enh-article-col:       740px;   /* comfortable reading measure */

  /* Transition — slightly snappier than base */
  --enh-t:                 0.14s ease;

  /* Glow intensities (lower = more subtle = more professional) */
  --enh-red-glow:          rgba(154, 0, 0, 0.20);
  --enh-blue-glow:         rgba(74, 144, 226, 0.18);
  --enh-gold-glow:         rgba(204, 170, 0, 0.18);
}


/* ══════════════════════════════════════════════════════════════════
   02  BREAKING TICKER — PRECISION REFINEMENT
   ══════════════════════════════════════════════════════════════════ */

/* Tighter, cleaner ticker */
.rx-ticker {
  background: #000 !important;
  border-bottom: 1px solid rgba(154, 0, 0, 0.5) !important;
  box-shadow: 0 1px 0 rgba(154, 0, 0, 0.12), 0 2px 8px rgba(0,0,0,0.5) !important;
}

.rx-ticker__badge {
  background: var(--rage-red) !important;
  padding: 0 12px !important;
  font-size: 9px !important;
  font-family: var(--font-mono) !important;
  letter-spacing: 0.18em !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  border-right: 1px solid rgba(255,255,255,0.08);
  flex-shrink: 0;
}

.rx-ticker__pulse {
  width: 5px;
  height: 5px;
  background: #fff;
  border-radius: 50%;
  animation: enh-pulse 1.4s ease-in-out infinite;
  margin-right: 6px;
  flex-shrink: 0;
}

@keyframes enh-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.4; transform: scale(0.7); }
}

.rx-ticker__item,
.breaking-ticker__item {
  font-family: var(--font-display) !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.055em !important;
  color: rgba(255,255,255,0.88) !important;
  text-transform: uppercase;
  padding: 0 18px !important;
  line-height: var(--ticker-h) !important;
}

.rx-ticker__item a,
.breaking-ticker__item a {
  color: inherit !important;
  text-decoration: none;
  transition: color var(--enh-t);
}

.rx-ticker__item a:hover,
.breaking-ticker__item a:hover {
  color: var(--tac-yellow) !important;
  text-shadow: none !important;
}

.rx-ticker__sep,
.breaking-ticker__sep {
  color: rgba(154, 0, 0, 0.8) !important;
  padding: 0 6px !important;
  font-size: 7px !important;
  opacity: 1 !important;
}

/* Fade mask on right edge */
.rx-ticker__fade-r {
  background: linear-gradient(to right, transparent, #000 85%) !important;
  width: 60px;
}

[data-theme="light"] .rx-ticker {
  background: #fff !important;
  border-bottom: 1px solid rgba(154,0,0,0.3) !important;
}
[data-theme="light"] .rx-ticker__item a,
[data-theme="light"] .breaking-ticker__item a { color: rgba(0,0,0,0.75) !important; }
[data-theme="light"] .rx-ticker__fade-r { background: linear-gradient(to right, transparent, #fff 85%) !important; }


/* ══════════════════════════════════════════════════════════════════
   03  SITE HEADER — EDITORIAL AUTHORITY
   ══════════════════════════════════════════════════════════════════ */

.site-header {
  background: var(--header-bg) !important;
  border-bottom: none !important;
  /* Subtle bottom separator: red left, fading right */
  box-shadow: 0 1px 0 rgba(154,0,0,0.35), 0 2px 16px rgba(0,0,0,0.5) !important;
}

.site-header.is-scrolled {
  background: rgba(0,0,0,0.96) !important;
  backdrop-filter: blur(16px) saturate(1.5);
  -webkit-backdrop-filter: blur(16px) saturate(1.5);
  box-shadow: 0 1px 0 rgba(154,0,0,0.4), 0 4px 24px rgba(0,0,0,0.7) !important;
}

/* Logo wordmark */
.site-logo__name {
  font-family: var(--font-display) !important;
  font-size: 26px !important;
  font-weight: 900 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--text-p) !important;
  line-height: 1;
}

.site-logo__name em {
  color: var(--rage-red) !important;
  font-style: normal;
}

.site-logo__tagline {
  font-family: var(--font-mono) !important;
  font-size: 8px !important;
  letter-spacing: 0.24em !important;
  color: var(--text-m) !important;
  text-transform: uppercase;
  margin-top: 4px;
}

/* Custom logo image — clean rendering */
.site-logo__img {
  height: 42px !important;
  width: auto !important;
  max-height: 42px !important;
  object-fit: contain;
  filter: none !important;
}

/* LIVE badge — cleaner, Intel Blue */
.header-live {
  background: rgba(74,144,226,0.08) !important;
  border: 1px solid rgba(74,144,226,0.25) !important;
  border-radius: 2px !important;
  color: #4A90E2 !important;
  font-family: var(--font-mono) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  padding: 4px 9px !important;
  text-transform: uppercase;
  display: flex !important;
  align-items: center;
  gap: 5px;
}

.header-live__dot {
  width: 5px !important;
  height: 5px !important;
  background: #4A90E2 !important;
  border-radius: 50%;
  animation: enh-pulse 1.6s ease-in-out infinite;
  box-shadow: 0 0 5px rgba(74,144,226,0.7) !important;
  flex-shrink: 0;
}

/* Desktop search input */
.header-search__input {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 2px !important;
  color: var(--text-p) !important;
  font-family: var(--font-display) !important;
  font-size: 12px !important;
  height: 32px !important;
  width: 175px !important;
  padding: 0 12px 0 32px !important;
  transition: width 0.25s ease, border-color 0.15s, background 0.15s;
}

.header-search__input:focus {
  background: rgba(255,255,255,0.07) !important;
  border-color: rgba(74,144,226,0.5) !important;
  box-shadow: 0 0 0 2px rgba(74,144,226,0.12) !important;
  width: 240px !important;
  outline: none !important;
}

[data-theme="light"] .header-search__input {
  background: rgba(0,0,0,0.04) !important;
  border-color: rgba(0,0,0,0.15) !important;
  color: #111 !important;
}

/* Theme toggle */
.theme-toggle {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 2px !important;
  padding: 2px !important;
}

.theme-toggle__btn {
  border-radius: 1px !important;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  width: 26px !important;
  height: 26px !important;
  transition: background var(--enh-t), color var(--enh-t);
}

.theme-toggle__btn.is-active {
  background: var(--rage-red) !important;
  color: #fff !important;
}


/* ══════════════════════════════════════════════════════════════════
   04  PRIMARY NAVIGATION — CLEAN EDITORIAL BAR
   ══════════════════════════════════════════════════════════════════ */

.nav-primary {
  background: var(--nav-bg) !important;
  border-top: 1px solid rgba(255,255,255,0.05) !important;
  border-bottom: 2px solid var(--rage-red) !important;
  height: var(--nav-h) !important;
  min-height: var(--nav-h) !important;
  overflow: visible !important;
}

.nav-primary__menu > li > a {
  font-family: var(--font-display) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase;
  color: #aaa !important;
  padding: 0 14px !important;
  height: var(--nav-h) !important;
  display: flex !important;
  align-items: center;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
  transition: color var(--enh-t), border-color var(--enh-t);
}

.nav-primary__menu > li > a:hover {
  color: #fff !important;
  border-bottom-color: rgba(204,170,0,0.7) !important; /* yellow = hover */
}

.nav-primary__menu > li.current-menu-item > a,
.nav-primary__menu > li.current-menu-ancestor > a,
.nav-primary__menu > li.current-category-ancestor > a,
.nav-primary__menu > li.current_page_item > a,
.nav-primary__menu > li.current-post-ancestor > a,
.nav-primary__menu > li.active > a {
  color: #fff !important;
  border-bottom-color: var(--rage-red) !important; /* red = active */
}

/* Sub-menu — sharper, cleaner */
.nav-primary__menu .sub-menu {
  background: #0e0e0e !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-top: 2px solid var(--rage-red) !important;
  border-radius: 0 0 4px 4px !important;
  box-shadow: 0 12px 40px rgba(0,0,0,0.8) !important;
  padding: 4px 0 !important;
  min-width: 200px;
}

.nav-primary__menu .sub-menu li a {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  color: #999 !important;
  padding: 9px 16px !important;
  border-left: 2px solid transparent !important;
  transition: all var(--enh-t);
}

.nav-primary__menu .sub-menu li a:hover {
  color: #fff !important;
  background: rgba(255,255,255,0.04) !important;
  border-left-color: var(--rage-red) !important;
  padding-left: 20px !important;
}

[data-theme="light"] .nav-primary {
  background: #fafafa !important;
  border-top: 1px solid rgba(0,0,0,0.08) !important;
  border-bottom: 2px solid var(--rage-red) !important;
}
[data-theme="light"] .nav-primary__menu > li > a { color: #555 !important; }
[data-theme="light"] .nav-primary__menu > li > a:hover { color: #111 !important; }
[data-theme="light"] .nav-primary__menu > li.current-menu-item > a { color: #111 !important; }
[data-theme="light"] .nav-primary__menu .sub-menu {
  background: #fff !important;
  border-color: rgba(0,0,0,0.1) !important;
}
[data-theme="light"] .nav-primary__menu .sub-menu li a { color: #555 !important; }
[data-theme="light"] .nav-primary__menu .sub-menu li a:hover { color: #111 !important; }


/* ══════════════════════════════════════════════════════════════════
   05  SECTION HEADERS — RAGE X EDITORIAL LABEL SYSTEM
   Structure: [LABEL ███ ────────────────────────]
   ══════════════════════════════════════════════════════════════════ */

.section-header,
.live-wire__header,
.nd-shell-head,
.homepage-cat-section > .section-header,
.war-tracker > .container > .section-header {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  margin-bottom: 20px !important;
}

.section-header__label,
.section-title,
.live-wire__title,
.nd-shell-head__label {
  font-family: var(--font-mono) !important;
  font-size: var(--enh-section-label-fs) !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--text-p) !important;
  white-space: nowrap;
  flex-shrink: 0;
}

/* Red pulse dot left of section label */
.section-header__dot,
.live-wire__pulse {
  width: 7px;
  height: 7px;
  background: var(--rage-red);
  border-radius: 50%;
  flex-shrink: 0;
  animation: enh-pulse 1.6s ease-in-out infinite;
}

/* Ruled line stretching right */
.section-header::after,
.live-wire__header::after {
  content: '' !important;
  flex: 1 !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(154,0,0,0.4), transparent) !important;
}

/* Date / clock displayed right */
.section-header__time,
.live-wire__meta {
  font-family: var(--font-mono) !important;
  font-size: 10px !important;
  color: var(--text-m) !important;
  letter-spacing: 0.06em !important;
  white-space: nowrap;
  flex-shrink: 0;
}

[data-theme="light"] .section-header,
[data-theme="light"] .live-wire__header {
  border-bottom-color: rgba(0,0,0,0.1) !important;
}
[data-theme="light"] .section-header::after,
[data-theme="light"] .live-wire__header::after {
  background: linear-gradient(90deg, rgba(154,0,0,0.3), transparent) !important;
}


/* ══════════════════════════════════════════════════════════════════
   06  LIVE WIRE — INTELLIGENCE FEED
   ══════════════════════════════════════════════════════════════════ */

.live-wire {
  background: var(--bg-s1) !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
}

.live-wire__feed {
  display: flex !important;
  flex-direction: column !important;
}

.live-wire__item {
  display: grid !important;
  grid-template-columns: 46px 84px 1fr auto !important;
  align-items: center !important;
  gap: 0 12px !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.045) !important;
  transition: background var(--enh-t);
  border-radius: 0;
}

.live-wire__item:last-child { border-bottom: none !important; }

.live-wire__item:hover {
  background: rgba(255,255,255,0.018) !important;
  padding-left: 6px !important;
  padding-right: 6px !important;
  border-radius: 2px !important;
  margin: 0 -6px !important;
}

.live-wire__time {
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  color: var(--text-m) !important;
  letter-spacing: 0.06em !important;
  white-space: nowrap;
  text-align: right;
}

/* Category badge column — fixed width, centered */
.live-wire__item .cat-badge {
  font-size: 8.5px !important;
  padding: 2px 6px !important;
  letter-spacing: 0.12em !important;
  font-weight: 800 !important;
  white-space: nowrap;
  text-align: center;
  justify-self: start;
}

.live-wire__headline {
  font-family: var(--font-display) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  text-transform: uppercase !important;
  color: var(--text-p) !important;
  line-height: 1.3 !important;
  text-decoration: none;
  transition: color var(--enh-t);
}

.live-wire__headline:hover { color: var(--tac-yellow) !important; }

.live-wire__ago {
  font-family: var(--font-mono) !important;
  font-size: 10px !important;
  color: var(--text-m) !important;
  letter-spacing: 0.04em !important;
  white-space: nowrap;
  text-align: right;
}

/* BREAKING tag inside wire */
.live-wire__breaking {
  font-family: var(--font-display) !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  background: var(--rage-red) !important;
  color: #fff !important;
  padding: 2px 6px !important;
  border-radius: 1px !important;
  text-transform: uppercase !important;
  white-space: nowrap;
}

[data-theme="light"] .live-wire { background: #fff !important; }
[data-theme="light"] .live-wire__item { border-bottom-color: rgba(0,0,0,0.07) !important; }
[data-theme="light"] .live-wire__item:hover { background: rgba(0,0,0,0.025) !important; }


/* ══════════════════════════════════════════════════════════════════
   07  CATEGORY BADGES — CORRECT TOKEN ENFORCEMENT
   ragex-ultra overrides cat-badge colors with a generic tricolor
   system. This layer restores the 9-color token system from the
   Master Palette and ensures proper differentiation.
   ══════════════════════════════════════════════════════════════════ */

/* Base badge reset — use tokens, not inline values */
.cat-badge {
  font-family: var(--font-mono) !important;
  font-size: 8.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  padding: 2px 7px !important;
  border-radius: 1px !important;
  line-height: 1.5 !important;
  white-space: nowrap !important;
  display: inline-block !important;
  flex-shrink: 0 !important;
}

/* Restore correct category colors from Master Palette v4 tokens */
.cat-badge--alerts,
.cat-badge--breaking {
  background: var(--cat-alerts)   !important;
  color: #fff                     !important;
  border: none                    !important;
  box-shadow: 0 0 6px rgba(204,0,0,0.4) !important;
}

.cat-badge--global {
  background: var(--cat-global-bg)     !important;
  color: var(--cat-global)             !important;
  border: 1px solid rgba(27,107,138,0.4) !important;
  box-shadow: none !important;
}

.cat-badge--war {
  background: var(--cat-war-bg)       !important;
  color: var(--cat-war)               !important;
  border: 1px solid rgba(184,92,0,0.4)  !important;
  box-shadow: none !important;
  animation: none !important;  /* stop the generic red badge pulse */
}

.cat-badge--defense {
  background: var(--cat-defense-bg)   !important;
  color: var(--cat-defense)           !important;
  border: 1px solid rgba(0,105,148,0.4) !important;
  box-shadow: none !important;
}

.cat-badge--military {
  background: var(--cat-military-bg)       !important;
  color: var(--cat-military)               !important;
  border: 1px solid rgba(74,122,58,0.4)    !important;
  box-shadow: none !important;
}

.cat-badge--intelligence {
  background: var(--cat-intelligence-bg)   !important;
  color: var(--cat-intelligence)           !important;
  border: 1px solid rgba(154,0,0,0.35)     !important;
  box-shadow: none !important;
  animation: none !important;
}

.cat-badge--nuclear {
  background: var(--cat-nuclear-bg)        !important;
  color: var(--cat-nuclear)                !important;
  border: 1px solid rgba(184,168,0,0.4)    !important;
  box-shadow: none !important;
  animation: none !important;
}

.cat-badge--reports {
  background: var(--cat-reports-bg)        !important;
  color: var(--cat-reports)                !important;
  border: 1px solid rgba(122,184,0,0.4)    !important;
  box-shadow: none !important;
  animation: none !important;
}

.cat-badge--technology {
  background: var(--cat-technology-bg)     !important;
  color: var(--cat-technology)             !important;
  border: 1px solid rgba(0,122,122,0.4)    !important;
  box-shadow: none !important;
}

/* RAGE X Analysis label — stays Intel Blue */
.cat-badge--analysis {
  background: rgba(27,54,93,0.18)     !important;
  color: var(--intel-blue-light)      !important;
  border: 1px solid rgba(27,54,93,0.4) !important;
  box-shadow: none !important;
}

/* Exclusive tag — Tactical Yellow */
.cat-badge--exclusive {
  background: rgba(204,170,0,0.1)     !important;
  color: var(--tac-yellow)            !important;
  border: 1px solid rgba(204,170,0,0.35) !important;
  animation: none !important;
}


/* ══════════════════════════════════════════════════════════════════
   08  ARTICLE CARDS — EDITORIAL MAGAZINE QUALITY
   ══════════════════════════════════════════════════════════════════ */

.article-card {
  background: var(--card-bg) !important;
  border: 1px solid var(--card-border) !important;
  border-radius: 0 !important;  /* flat — military aesthetic, no rounding */
  overflow: clip !important;
  transition: border-color var(--enh-t), box-shadow var(--enh-t), transform var(--enh-t) !important;
  box-shadow: none !important;
}

.article-card:hover {
  border-color: rgba(154,0,0,0.45) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.5) !important;
  transform: translateY(-2px) !important;
}

/* Thumbnail */
.article-card__thumb {
  aspect-ratio: var(--enh-card-ratio) !important;
  overflow: hidden !important;
}

.article-card__thumb img,
.article-card .wp-post-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

.article-card:hover .article-card__thumb img,
.article-card:hover .wp-post-image {
  transform: scale(1.04) !important;
}

/* Card body */
.article-card__body {
  padding: 14px 14px 12px !important;
  gap: 6px !important;
  display: grid !important;
  grid-template-rows: min-content auto 1fr min-content !important;
}

/* Card meta row — category + time */
.article-card__meta {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
  min-height: 20px !important;
}

/* Article card title */
.article-card__title {
  font-family: var(--font-display) !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  line-height: 1.28 !important;
  letter-spacing: 0.015em !important;
  text-transform: uppercase !important;
  color: var(--text-p) !important;
  margin: 0 !important;
}

.article-card__title a {
  color: inherit !important;
  text-decoration: none;
  transition: color var(--enh-t);
}

.article-card__title a:hover { color: rgba(255,255,255,0.7) !important; }

/* Card excerpt */
.article-card__excerpt {
  font-size: 12px !important;
  line-height: 1.55 !important;
  color: var(--text-s) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* Card footer — time, readtime */
.article-card__footer {
  font-family: var(--font-mono) !important;
  font-size: 10px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--text-m) !important;
  padding-top: 8px !important;
  border-top: 1px solid rgba(255,255,255,0.06) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

/* Time in footer */
.article-card__time {
  color: var(--text-m) !important;
  font-family: var(--font-mono) !important;
  font-size: 10px !important;
  letter-spacing: 0.05em !important;
  white-space: nowrap;
}

[data-theme="light"] .article-card { background: #fff !important; border-color: rgba(0,0,0,0.09) !important; }
[data-theme="light"] .article-card:hover { border-color: rgba(154,0,0,0.3) !important; }
[data-theme="light"] .article-card__footer { border-top-color: rgba(0,0,0,0.08) !important; }


/* ══════════════════════════════════════════════════════════════════
   09  ARTICLE PAGE — READING EXPERIENCE
   ══════════════════════════════════════════════════════════════════ */

/* Article title */
.rx-article__title,
.article-header__title,
.entry-title {
  font-family: var(--font-display) !important;
  font-weight: 900 !important;
  line-height: 1.07 !important;
  letter-spacing: 0.01em !important;
  text-transform: uppercase !important;
  color: var(--text-p) !important;
  font-size: clamp(26px, 4vw, 48px) !important;
}

/* Article deck/subtitle */
.rx-article__deck,
.article-header__subtitle {
  font-family: var(--font-serif) !important;
  font-style: italic !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  color: var(--text-s) !important;
  border-left: 3px solid rgba(74,144,226,0.6) !important;
  padding-left: 18px !important;
  background: transparent !important;
  margin-top: 16px !important;
}

/* Byline row */
.rx-byline,
.article-header__byline,
.post-meta {
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--text-m) !important;
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

/* Article body */
.article-body,
.rx-article .article-body,
.entry-content {
  font-size: var(--enh-article-fs) !important;
  line-height: var(--enh-article-lh) !important;
  color: var(--text-p) !important;
  max-width: var(--enh-article-col) !important;
}

.article-body > p,
.rx-article .article-body > p,
.entry-content > p {
  margin-bottom: 1.35em !important;
}

/* Article body H2 — section divider */
.article-body h2,
.rx-article .article-body h2 {
  font-size: 20px !important;
  font-weight: 800 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  padding-left: 14px !important;
  border-left: 3px solid var(--rage-red) !important;
  margin: 2.2em 0 0.9em !important;
}

.article-body h3,
.rx-article .article-body h3 {
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  color: var(--text-p) !important;
  margin: 1.8em 0 0.7em !important;
}

/* Article links */
.article-body a,
.rx-article .article-body a,
.entry-content a {
  color: #4a90e2 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-color: rgba(74,144,226,0.35) !important;
  transition: color var(--enh-t), text-decoration-color var(--enh-t);
}

.article-body a:hover,
.rx-article .article-body a:hover,
.entry-content a:hover {
  color: #6aaae8 !important;
  text-decoration-color: rgba(74,144,226,0.7) !important;
}

/* Blockquote */
.article-body blockquote,
.rx-article .article-body blockquote {
  border-left: 3px solid rgba(74,144,226,0.6) !important;
  padding: 16px 20px !important;
  margin: 1.8em 0 !important;
  background: rgba(74,144,226,0.04) !important;
  border-radius: 0 !important;
}

.article-body blockquote p {
  font-family: var(--font-serif) !important;
  font-style: italic !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: var(--text-s) !important;
  margin: 0 !important;
}

/* Reading progress bar — clean Intel Blue → Gold */
.reading-progress {
  height: 2px !important;
  background: linear-gradient(90deg, var(--intel-blue) 0%, #4A90E2 50%, var(--tac-yellow) 100%) !important;
  box-shadow: none !important;
  top: 0 !important;
  position: fixed !important;
  left: 0 !important;
  z-index: 999999 !important;
  pointer-events: none;
}

[data-theme="light"] .article-body h2,
[data-theme="light"] .rx-article .article-body h2 { color: #111 !important; }
[data-theme="light"] .article-body h3,
[data-theme="light"] .rx-article .article-body h3 { color: #333 !important; }
[data-theme="light"] .rx-article__title { color: #111 !important; }
[data-theme="light"] .article-body a,
[data-theme="light"] .entry-content a { color: var(--intel-blue) !important; }


/* ══════════════════════════════════════════════════════════════════
   10  HERO SECTION — CINEMATIC HOMEPAGE
   ══════════════════════════════════════════════════════════════════ */

/* Hero main image container */
.hero-main {
  width: 100% !important;
  overflow: hidden !important;
  position: relative !important;
}

.hero-main__img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
}

/* Gradient overlay — stronger at bottom for legibility */
.hero-main__overlay {
  background: linear-gradient(
    to top,
    rgba(0,0,0,0.95)  0%,
    rgba(0,0,0,0.65)  30%,
    rgba(0,0,0,0.15)  65%,
    transparent       100%
  ) !important;
}

/* Hero body — text positioned at bottom */
.hero-main__body {
  padding: 32px 32px 28px !important;
}

/* Hero title */
.hero-main__title {
  font-family: var(--font-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  line-height: 1.07 !important;
  letter-spacing: 0.01em !important;
  color: #fff !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.7) !important;
  font-size: clamp(20px, 2.8vw, 38px) !important;
  margin-bottom: 10px !important;
}

.hero-main__title a { color: #fff !important; text-decoration: none; }
.hero-main__title a:hover { color: rgba(255,255,255,0.85) !important; }

/* Hero meta — badge + time in one row */
.hero-main__meta {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 10px !important;
}

/* Side panel items */
.hero-side__item {
  overflow: hidden !important;
  position: relative !important;
  width: 100% !important;
  transition: transform var(--enh-t);
}
.hero-side__item:hover { transform: none !important; }

.hero-side__overlay {
  background: linear-gradient(to top, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.2) 60%, transparent 100%) !important;
}

.hero-side__title {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  color: #fff !important;
  font-size: clamp(13px, 1.4vw, 16px) !important;
  letter-spacing: 0.01em !important;
}

.hero-side__title a { color: #fff !important; text-decoration: none; }
.hero-side__title a:hover { color: rgba(255,255,255,0.82) !important; }


/* ══════════════════════════════════════════════════════════════════
   11  SIDEBAR & WIDGETS — CLEAN INFORMATION PANELS
   ══════════════════════════════════════════════════════════════════ */

.widget {
  background: var(--widget-bg) !important;
  border: 1px solid var(--card-border) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

.widget .widget-title {
  font-family: var(--font-mono) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--text-s) !important;
  padding: 12px 16px !important;
  background: var(--widget-title-bg) !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  margin: 0 !important;
}

/* Alert panel — keep red accent */
.alert-panel {
  border-left: 3px solid var(--rage-red) !important;
  border-radius: 0 !important;
}

/* Newsletter widget — Intel Blue accent */
.widget-newsletter {
  border-top: 2px solid rgba(74,144,226,0.5) !important;
}

/* Trending items */
.trending-item {
  padding: 9px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
  transition: background var(--enh-t), padding-left var(--enh-t) !important;
  border-radius: 0 !important;
}
.trending-item:last-child { border-bottom: none !important; }
.trending-item:hover { background: rgba(255,255,255,0.025) !important; padding-left: 20px !important; }

.trending-item__num {
  font-family: var(--font-display) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  color: rgba(154,0,0,0.3) !important;
  line-height: 1 !important;
  min-width: 28px !important;
  transition: color var(--enh-t) !important;
}
.trending-item:hover .trending-item__num { color: var(--rage-red) !important; }

[data-theme="light"] .widget { background: #fff !important; border-color: rgba(0,0,0,0.09) !important; }
[data-theme="light"] .widget .widget-title { background: #f8f8f8 !important; border-bottom-color: rgba(0,0,0,0.08) !important; color: #555 !important; }
[data-theme="light"] .trending-item { border-bottom-color: rgba(0,0,0,0.06) !important; }
[data-theme="light"] .trending-item:hover { background: rgba(0,0,0,0.025) !important; }


/* ══════════════════════════════════════════════════════════════════
   12  FOOTER — INTELLIGENCE PLATFORM IDENTITY
   ══════════════════════════════════════════════════════════════════ */

.site-footer {
  background: #000 !important;
  border-top: none !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Top border: red only — clean brand anchor */
.site-footer::before {
  content: '' !important;
  position: absolute !important;
  top: 0; left: 0; right: 0;
  height: 2px !important;
  background: var(--rage-red) !important;
  opacity: 0.8 !important;
}

/* Footer grid */
.footer-grid {
  padding-top: 40px !important;
  padding-bottom: 32px !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}

/* Brand column */
.footer-brand {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.footer-brand .site-logo__name {
  font-size: 24px !important;
  letter-spacing: 0.06em !important;
}

.footer-brand__desc {
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  color: #555 !important;
  max-width: 260px;
}

.footer-brand__tagline {
  font-family: var(--font-mono) !important;
  font-size: 9px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--tac-yellow) !important;
  opacity: 0.7 !important;
}

/* Footer column headings */
.footer-col__title {
  font-family: var(--font-mono) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #555 !important;
  margin-bottom: 16px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}

/* Footer links */
.footer-col__link,
.footer-col a {
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  color: #555 !important;
  text-decoration: none !important;
  display: block !important;
  padding: 4px 0 !important;
  transition: color var(--enh-t) !important;
}

.footer-col__link:hover,
.footer-col a:hover { color: #bbb !important; }

/* Social icons row */
.footer-social {
  display: flex !important;
  gap: 10px !important;
  margin-top: 8px !important;
}

.footer-social__link {
  width: 32px !important;
  height: 32px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 2px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #555 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: background var(--enh-t), color var(--enh-t), border-color var(--enh-t) !important;
}

.footer-social__link:hover {
  background: rgba(154,0,0,0.15) !important;
  border-color: rgba(154,0,0,0.4) !important;
  color: #ddd !important;
}

/* Footer bottom bar */
.footer-bottom {
  padding: 14px 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

.footer-copy,
.footer-bottom p {
  font-family: var(--font-mono) !important;
  font-size: 10px !important;
  color: #333 !important;
  letter-spacing: 0.06em !important;
  margin: 0 !important;
}

.footer-legal a {
  font-family: var(--font-mono) !important;
  font-size: 10px !important;
  color: #333 !important;
  text-decoration: none !important;
  letter-spacing: 0.04em !important;
  transition: color var(--enh-t) !important;
}
.footer-legal a:hover { color: #888 !important; }


/* ══════════════════════════════════════════════════════════════════
   13  PAGINATION — MILITARY PRECISION
   ══════════════════════════════════════════════════════════════════ */

.page-numbers {
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  width: 36px !important;
  height: 36px !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 1px !important;
  color: var(--text-s) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  transition: background var(--enh-t), border-color var(--enh-t), color var(--enh-t) !important;
}

.page-numbers:hover {
  background: rgba(154,0,0,0.12) !important;
  border-color: rgba(154,0,0,0.4) !important;
  color: #fff !important;
}

.page-numbers.current {
  background: var(--rage-red) !important;
  border-color: var(--rage-red) !important;
  color: #fff !important;
}

[data-theme="light"] .page-numbers { border-color: rgba(0,0,0,0.15) !important; color: #555 !important; }
[data-theme="light"] .page-numbers:hover { background: rgba(154,0,0,0.08) !important; }


/* ══════════════════════════════════════════════════════════════════
   14  AUTHOR BOX & POST NAV — CREDIBILITY SIGNALS
   ══════════════════════════════════════════════════════════════════ */

.author-box {
  border-top: 2px solid rgba(74,144,226,0.5) !important;
  border-left: none !important;
  border-radius: 0 !important;
  background: var(--bg-s1) !important;
  padding: 24px !important;
}

.author-box__name {
  font-family: var(--font-display) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
}

.author-box__bio {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: var(--text-s) !important;
}

.author-box__label {
  font-family: var(--font-mono) !important;
  font-size: 9px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(74,144,226,0.8) !important;
}

/* Post nav */
.post-nav__item {
  border-radius: 0 !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  transition: border-color var(--enh-t), background var(--enh-t) !important;
}

.post-nav__item:hover {
  border-color: rgba(154,0,0,0.35) !important;
  background: rgba(255,255,255,0.02) !important;
  transform: none !important;
  box-shadow: none !important;
}

.post-nav__label {
  font-family: var(--font-mono) !important;
  font-size: 9px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--text-m) !important;
}

.post-nav__title {
  font-family: var(--font-display) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.01em !important;
}


/* ══════════════════════════════════════════════════════════════════
   15  ARCHIVE / CATEGORY PAGE — COMMAND HEADER
   ══════════════════════════════════════════════════════════════════ */

.archive-header {
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  padding-bottom: 20px !important;
  margin-bottom: 28px !important;
}

.archive-header__label {
  font-family: var(--font-mono) !important;
  font-size: 9px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--text-m) !important;
  margin-bottom: 6px !important;
}

.archive-header__title {
  font-family: var(--font-display) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.02em !important;
  line-height: 1.1 !important;
  font-size: clamp(24px, 3.5vw, 40px) !important;
}

/* Category accent bar — left border using category color */
.archive-header[data-category="alerts"]      { border-left: 4px solid var(--cat-alerts); padding-left: 16px; }
.archive-header[data-category="global"]      { border-left: 4px solid var(--cat-global); padding-left: 16px; }
.archive-header[data-category="war"]         { border-left: 4px solid var(--cat-war); padding-left: 16px; }
.archive-header[data-category="defense"]     { border-left: 4px solid var(--cat-defense); padding-left: 16px; }
.archive-header[data-category="military"]    { border-left: 4px solid var(--cat-military); padding-left: 16px; }
.archive-header[data-category="intelligence"]{ border-left: 4px solid var(--cat-intelligence); padding-left: 16px; }
.archive-header[data-category="nuclear"]     { border-left: 4px solid var(--cat-nuclear); padding-left: 16px; }
.archive-header[data-category="reports"]     { border-left: 4px solid var(--cat-reports); padding-left: 16px; }
.archive-header[data-category="technology"]  { border-left: 4px solid var(--cat-technology); padding-left: 16px; }

[data-theme="light"] .archive-header { border-bottom-color: rgba(0,0,0,0.1) !important; }


/* ══════════════════════════════════════════════════════════════════
   16  MOBILE RESPONSIVE — All enhancements adapt
   ══════════════════════════════════════════════════════════════════ */

@media (max-width: 900px) {
  .live-wire__item {
    grid-template-columns: 44px 80px 1fr !important;  /* drop ago on mobile */
    gap: 0 8px !important;
  }
  .live-wire__ago { display: none !important; }

  .hero-main__body { padding: 20px 16px 18px !important; }
  .hero-main__title { font-size: clamp(18px, 5vw, 28px) !important; }

  .article-card__body { padding: 10px 12px 10px !important; }
  .article-card__title { font-size: 12.5px !important; }
}

@media (max-width: 600px) {
  .live-wire__item {
    grid-template-columns: 36px 1fr !important;  /* badge + headline only */
    gap: 0 8px !important;
  }
  .live-wire__time { display: none !important; }

  .rx-article__title,
  .article-header__title { font-size: clamp(22px, 7vw, 32px) !important; }

  .article-body, .entry-content {
    font-size: 16px !important;
    line-height: 1.72 !important;
  }

  .author-box { padding: 16px !important; }
}


/* ══════════════════════════════════════════════════════════════════
   17  ACCESSIBILITY & REDUCED MOTION
   ══════════════════════════════════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
  .rx-ticker__track,
  .breaking-ticker__track,
  .enh-pulse,
  .rx-ticker__pulse,
  .live-wire__pulse,
  .cat-badge--alerts,
  .cat-badge--breaking {
    animation: none !important;
    transition: none !important;
  }

  .article-card:hover,
  .article-card:hover .article-card__thumb img,
  .hero-side__item:hover .hero-side__img {
    transform: none !important;
  }
}

:focus-visible {
  outline: 2px solid var(--rage-red) !important;
  outline-offset: 2px !important;
}


/* ══════════════════════════════════════════════════════════════════
   18  PRINT
   ══════════════════════════════════════════════════════════════════ */

@media print {
  .rx-ticker,
  .site-header,
  .nav-primary,
  .reading-progress,
  .share-bar,
  .post-nav,
  .sidebar__sticky,
  .site-footer,
  .author-box { display: none !important; }

  .article-body,
  .entry-content {
    font-size: 12pt !important;
    line-height: 1.6 !important;
    color: #000 !important;
    max-width: 100% !important;
  }

  a[href]::after {
    content: ' (' attr(href) ')';
    font-size: 10pt;
    color: #555;
  }
}
