/* ============================================================
   Insights / Threat Intel listing & article pages
   ============================================================ */
.filter-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 32px 0 48px;
}
.filter-tab {
  padding: 8px 18px;
  font-family: var(--font-display);
  font-size: 12px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--ink-800);
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  transition: all .2s;
}
.filter-tab:hover { border-color: var(--amber-500); color: var(--amber-500); }
.filter-tab.active {
  background: var(--ink-900);
  border-color: var(--ink-900);
  color: var(--cream);
}

.insight-card-link { display: flex; flex-direction: column; height: 100%; }

.severity-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 10px;
  border-radius: 999px;
  font-family: var(--font-display);
  font-size: 10px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.severity-badge::before { content: "●"; font-size: 8px; }
.sev-info     { background: rgba(122,145,174,0.15); color: var(--sage-600); }
.sev-low      { background: rgba(122,145,174,0.15); color: var(--sage-600); }
.sev-medium   { background: rgba(214,154,60,0.15);  color: #a86a1c; }
.sev-high     { background: rgba(196,90,60,0.15);   color: #c45a3c; }
.sev-critical { background: rgba(196,60,60,0.18);   color: #a12424; }

.empty-state {
  padding: 60px 0;
  text-align: center;
  color: var(--muted);
  font-family: var(--font-serif);
  font-size: 16px;
}

/* Article detail */
.article-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
  font-family: var(--font-display);
  font-size: 12px;
  letter-spacing: 0.1em;
  color: var(--muted);
  margin: 24px 0 8px;
}
.article-body {
  font-family: var(--font-serif);
  font-size: 17px;
  line-height: 1.9;
  color: var(--ink-800);
  max-width: 760px;
}
.article-body p { margin-bottom: 20px; }
.article-body h2, .article-body h3 {
  font-family: var(--font-serif);
  color: var(--ink-900);
  margin: 32px 0 16px;
}
.article-source {
  margin-top: 40px;
  padding: 20px 24px;
  background: var(--paper);
  border-left: 3px solid var(--amber-500);
  font-size: 14px;
  color: var(--ink-800);
}
.article-source a { color: var(--amber-500); border-bottom: 1px solid var(--amber-500); }
.article-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 32px;
  font-family: var(--font-display);
  font-size: 12px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--muted);
}
.article-back:hover { color: var(--amber-500); }
