:root{
  --brand:#551638;
  --cens:#8e5ab9;         /* Censorship */
  --ph:#2f7d8b;           /* Public Health */
  --hsec:#8b5a2f;         /* Health Security */
  --cent:#b94a62;         /* Centralization of Power */
  --corr:#9a6e2f;         /* Corruption of Science */
}

/* Base: soften the default callout look */
div.callout.callout-note{
  border:1px solid #eadff3;
  border-left-width:6px;
  border-radius:14px;
  background:#fff;
  box-shadow:0 2px 10px rgba(85,22,56,.05);
  margin:0.6rem 0;
}
.callout-header{
  font-weight:700;
  letter-spacing:.2px;
}

/* Category ribbons (apply custom class on each block) */
.callout.censorship{ border-left-color: var(--cens); }
.callout.public-health{ border-left-color: var(--ph); }
.callout.health-security{ border-left-color: var(--hsec); }
.callout.centralization{ border-left-color: var(--cent); }
.callout.corruption{ border-left-color: var(--corr); }

/* Compact “source strip” at bottom of each callout */
.callout .src-strip{
  display:flex; flex-wrap:wrap; gap:.5rem;
  border-top:1px dashed #ecE6f4; margin-top:.6rem; padding-top:.55rem;
  font-size:.95rem; opacity:1.0;
}
.callout .src-strip a{ text-decoration:none; }

/* Cleaner collapsed state + chevron */
.callout .callout-header .callout-icon::before{ display:none; }
.callout .callout-header .callout-title{
  position:relative; padding-left:1.1rem;
}
.callout .callout-header .callout-title::before{
  content:"▸"; position:absolute; left:0; top:0; transform:translateY(-1px);
  transition:transform .15s ease;
  color:var(--brand); font-weight:900;
}
.callout[data-collapsed="false"] .callout-header .callout-title::before{
  content:"▾"; transform:translateY(-1px);
}

/* Small date badge for headings you already have */
.badge-date{
  background:var(--brand); color:#fff; border-radius:999px; padding:.18rem .55rem;
  font-size:.78rem; margin-right:.5rem;
}
