/* ═══════════════════════════════════════════════════════════════════════
   SINGLE v4 MODULES — Mission Brief, Evidence Snapshots, Claims Table,
   Action Rail, TOC Drawer
   ═══════════════════════════════════════════════════════════════════════ */

/* ── A) MISSION BRIEF ─────────────────────────────────────────────── */
.mission-brief {
  margin-top: 28px;
  margin-bottom: 32px;
  max-width: 820px;
  background:
    linear-gradient(135deg, rgba(34,197,94,0.04), rgba(0,0,0,0.3) 40%, rgba(34,197,94,0.02)),
    rgba(0,0,0,0.35);
  border: 1px solid rgba(34,197,94,0.15);
  border-radius: 16px;
  overflow: hidden;
  backdrop-filter: blur(8px);
}
.mission-brief__header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 18px;
  background: rgba(0,0,0,0.35);
  border-bottom: 1px solid rgba(34,197,94,0.10);
}
.mission-brief__icon {
  color: var(--bufo-green, #22c55e);
}
.mission-brief__label {
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: var(--bufo-green, #22c55e);
}
.mission-brief__id {
  margin-left: auto;
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.6rem;
  color: var(--bufo-text-4, rgba(245,247,255,0.4));
  letter-spacing: 0.1em;
}
.mission-brief__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: rgba(255,255,255,0.04);
}
.mission-brief__item {
  padding: 16px 18px;
  background: rgba(0,0,0,0.2);
}
.mission-brief__item-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.mission-brief__item--claim .mission-brief__item-head    { color: var(--bufo-text-3, rgba(245,247,255,0.6)); }
.mission-brief__item--evidence .mission-brief__item-head { color: #22c55e; }
.mission-brief__item--contradiction .mission-brief__item-head { color: #fbbf24; }
.mission-brief__item--next .mission-brief__item-head     { color: #22d3ee; }
.mission-brief__item p {
  font-size: 0.82rem;
  line-height: 1.55;
  color: var(--bufo-text-2, rgba(245,247,255,0.8));
  margin: 0;
}
.mission-brief__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 18px;
  background: rgba(0,0,0,0.25);
  border-top: 1px solid rgba(255,255,255,0.04);
}
.mission-brief__verif {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding: 4px 10px;
  border-radius: 4px;
}
.mission-brief__verif--green { background: rgba(34,197,94,0.12); color: #22c55e; border: 1px solid rgba(34,197,94,0.25); }
.mission-brief__verif--cyan  { background: rgba(34,211,238,0.10); color: #22d3ee; border: 1px solid rgba(34,211,238,0.25); }
.mission-brief__verif--amber { background: rgba(251,191,36,0.10); color: #fbbf24; border: 1px solid rgba(251,191,36,0.25); }
.mission-brief__verif--red   { background: rgba(239,68,68,0.10); color: #ef4444; border: 1px solid rgba(239,68,68,0.25); }
.mission-brief__meta {
  display: flex;
  gap: 14px;
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.6rem;
  color: var(--bufo-text-4, rgba(245,247,255,0.4));
  letter-spacing: 0.05em;
}
@media (max-width: 640px) {
  .mission-brief__grid { grid-template-columns: 1fr; }
}

/* ── D) EVIDENCE SNAPSHOTS ────────────────────────────────────────── */
.evidence-snapshots {
  margin: 3rem 0;
  border: 1px solid rgba(34,197,94,0.12);
  border-radius: 14px;
  overflow: hidden;
  background: rgba(0,0,0,0.18);
}
.evidence-snapshots__header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 18px;
  background: rgba(34,197,94,0.04);
  border-bottom: 1px solid rgba(34,197,94,0.10);
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--bufo-green, #22c55e);
}
.evidence-snapshots__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(255,255,255,0.03);
}
.evidence-snap {
  padding: 18px;
  background: rgba(0,0,0,0.15);
}
.evidence-snap__badge {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  margin-bottom: 10px;
}
.evidence-snap__badge--green { background: rgba(34,197,94,0.12); color: #22c55e; }
.evidence-snap__badge--amber { background: rgba(251,191,36,0.12); color: #fbbf24; }
.evidence-snap__badge--cyan  { background: rgba(34,211,238,0.12); color: #22d3ee; }
.evidence-snap__label {
  display: block;
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.58rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bufo-text-4, rgba(245,247,255,0.4));
  margin-bottom: 8px;
}
.evidence-snap__text {
  font-size: 0.82rem;
  line-height: 1.5;
  color: var(--bufo-text-2, rgba(245,247,255,0.8));
  margin: 0;
}
@media (max-width: 768px) {
  .evidence-snapshots__grid { grid-template-columns: 1fr; }
}

/* ── E) CLAIMS TABLE ──────────────────────────────────────────────── */
.claims-table-wrap {
  margin: 2.5rem 0;
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(0,0,0,0.15);
}
.claims-table-wrap__header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 18px;
  background: rgba(0,0,0,0.25);
  border-bottom: 1px solid rgba(255,255,255,0.05);
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--bufo-text-3, rgba(245,247,255,0.6));
}
.claims-table__head {
  display: grid;
  grid-template-columns: 2fr 2fr 1fr;
  gap: 1px;
  padding: 10px 18px;
  background: rgba(0,0,0,0.2);
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bufo-text-4, rgba(245,247,255,0.4));
}
.claims-table__row {
  display: grid;
  grid-template-columns: 2fr 2fr 1fr;
  gap: 1px;
  padding: 14px 18px;
  border-top: 1px solid rgba(255,255,255,0.03);
  transition: background 0.2s ease;
}
.claims-table__row:hover {
  background: rgba(34,197,94,0.03);
}
.claims-table__cell {
  font-size: 0.82rem;
  line-height: 1.45;
  color: var(--bufo-text-2, rgba(245,247,255,0.8));
}
.claims-table__status {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: 4px;
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  white-space: nowrap;
}
.claims-table__status--green  { background: rgba(34,197,94,0.12); color: #22c55e; }
.claims-table__status--cyan   { background: rgba(34,211,238,0.10); color: #22d3ee; }
.claims-table__status--amber  { background: rgba(251,191,36,0.10); color: #fbbf24; }
.claims-table__status--red    { background: rgba(239,68,68,0.10); color: #ef4444; }
@media (max-width: 640px) {
  .claims-table__head,
  .claims-table__row { grid-template-columns: 1fr; gap: 8px; }
  .claims-table__head span:not(:first-child) { display: none; }
  .claims-table__cell::before {
    display: block;
    font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
    font-size: 0.55rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--bufo-text-4, rgba(245,247,255,0.4));
    margin-bottom: 2px;
  }
  .claims-table__cell:nth-child(1)::before { content: 'Afirmacion'; }
  .claims-table__cell:nth-child(2)::before { content: 'Evidencia'; }
  .claims-table__cell:nth-child(3)::before { content: 'Estado'; }
}

/* ── C) ACTION RAIL ───────────────────────────────────────────────── */
.action-rail {
  position: fixed;
  z-index: 100;
  display: flex;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
.action-rail.is-visible {
  opacity: 1;
  pointer-events: auto;
}
/* Desktop: vertical rail on left */
@media (min-width: 1025px) {
  .action-rail {
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    flex-direction: column;
    gap: 6px;
    padding: 8px;
    background: rgba(5,5,8,0.85);
    border: 1px solid rgba(34,197,94,0.12);
    border-radius: 14px;
    backdrop-filter: blur(16px);
  }
  .action-rail__btn--toc-toggle { display: none; }
}
/* Mobile: bottom bar */
@media (max-width: 1024px) {
  .action-rail {
    bottom: 0;
    left: 0;
    right: 0;
    flex-direction: row;
    justify-content: center;
    gap: 4px;
    padding: 8px 12px calc(env(safe-area-inset-bottom, 8px) + 8px);
    background: rgba(5,5,8,0.92);
    border-top: 1px solid rgba(34,197,94,0.12);
    backdrop-filter: blur(16px);
  }
}
.action-rail__btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: transparent;
  border: 1px solid transparent;
  color: var(--bufo-text-3, rgba(245,247,255,0.6));
  cursor: pointer;
  transition: all 0.2s ease;
}
.action-rail__btn:hover,
.action-rail__btn:focus-visible {
  background: rgba(34,197,94,0.08);
  border-color: rgba(34,197,94,0.2);
  color: var(--bufo-green, #22c55e);
}
.action-rail__btn.is-active {
  color: var(--bufo-green, #22c55e);
}
.action-rail__btn.is-active .action-rail__icon-default { display: none; }
.action-rail__btn.is-active .action-rail__icon-active  { display: block; }
.action-rail__tip {
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 8px;
  letter-spacing: 0.05em;
  opacity: 0.7;
}

/* ── TOC DRAWER (mobile) ─────────────────────────────────────────── */
.toc-drawer {
  position: fixed;
  inset: 0;
  z-index: 200;
  pointer-events: none;
}
.toc-drawer[aria-hidden="false"] {
  pointer-events: auto;
}
.toc-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.toc-drawer[aria-hidden="false"] .toc-drawer__backdrop { opacity: 1; }
.toc-drawer__panel {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  max-height: 70vh;
  background: rgba(10,14,20,0.98);
  border-top: 1px solid rgba(34,197,94,0.2);
  border-radius: 20px 20px 0 0;
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.32, 0.72, 0, 1);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.toc-drawer[aria-hidden="false"] .toc-drawer__panel { transform: translateY(0); }
.toc-drawer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: var(--bufo-green, #22c55e);
  text-transform: uppercase;
  position: sticky;
  top: 0;
  background: inherit;
  z-index: 2;
}
.toc-drawer__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  color: var(--bufo-text-3, rgba(245,247,255,0.6));
  cursor: pointer;
  transition: all 0.2s ease;
}
.toc-drawer__close:hover { background: rgba(239,68,68,0.1); border-color: rgba(239,68,68,0.3); color: #ef4444; }
.toc-drawer__nav {
  padding: 16px 20px 32px;
}
.toc-drawer__nav .toc-list { list-style: none; padding: 0; margin: 0; }
.toc-drawer__nav .toc-item { margin-bottom: 2px; }
.toc-drawer__nav .toc-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 8px;
  font-size: 0.85rem;
  color: var(--bufo-text-3, rgba(245,247,255,0.6));
  text-decoration: none;
  transition: all 0.2s ease;
}
.toc-drawer__nav .toc-link:hover { background: rgba(34,197,94,0.06); color: var(--bufo-text, rgba(245,247,255,0.96)); }
.toc-drawer__nav .toc-link--active { background: rgba(34,197,94,0.08); color: var(--bufo-green, #22c55e); }
.toc-drawer__nav .toc-item--sub .toc-link { padding-left: 32px; font-size: 0.8rem; }

/* Hide TOC drawer on desktop */
@media (min-width: 1025px) {
  .toc-drawer { display: none; }
}


/* ═══════════════════════════════════════════════════════════════════════
   SINGLE v4.2 — Breadcrumbs, Resumen Bullets, Hero CTAs, Reading Mode,
   Cronologia, FAQ, Metodologia, Revisions, Typography, Focus, Related
   Added in v3.2.0
   ═══════════════════════════════════════════════════════════════════════ */

/* ── BREADCRUMBS ─────────────────────────────────────────────────── */
.bufo-breadcrumbs { padding: var(--bufo-s-3) 0; }
.bufo-breadcrumbs__list {
  display: flex; align-items: center; flex-wrap: wrap; gap: var(--bufo-s-2);
  list-style: none; margin: 0; padding: 0;
  font-family: var(--bufo-mono); font-size: 0.7rem; letter-spacing: 0.02em;
}
.bufo-breadcrumbs__item {
  display: inline-flex; align-items: center; color: var(--bufo-text-4);
}
.bufo-breadcrumbs__item::after {
  content: '/'; margin-left: var(--bufo-s-2); color: var(--bufo-text-5);
}
.bufo-breadcrumbs__item:last-child::after { display: none; }
.bufo-breadcrumbs__item a {
  color: var(--bufo-green); text-decoration: none;
  transition: color var(--bufo-ease-fast);
}
.bufo-breadcrumbs__item a:hover,
.bufo-breadcrumbs__item a:focus-visible {
  color: var(--bufo-green-bright); text-decoration: underline;
}
.bufo-breadcrumbs__item [aria-current="page"] {
  color: var(--bufo-text-3);
}

/* ── RESUMEN OPERATIVO BULLETS ───────────────────────────────────── */
.resumen-bullets {
  display: grid; gap: var(--bufo-s-3); margin-top: var(--bufo-s-4);
}
.resumen-bullet {
  display: flex; align-items: flex-start; gap: var(--bufo-s-3);
  padding: var(--bufo-s-3) var(--bufo-s-4);
  background: var(--bufo-panel); border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius-xs);
  font-size: 0.85rem; line-height: 1.5; color: var(--bufo-text-2);
}
.resumen-bullet__icon {
  flex-shrink: 0; width: 22px; height: 22px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%; font-size: 0.65rem; font-weight: 700;
  font-family: var(--bufo-mono);
}
.resumen-bullet--afirma .resumen-bullet__icon {
  background: rgba(34,197,94,.15); color: var(--bufo-green);
}
.resumen-bullet--evidencia .resumen-bullet__icon {
  background: rgba(34,211,238,.15); color: var(--bufo-cyan);
}
.resumen-bullet--dudas .resumen-bullet__icon {
  background: rgba(251,191,36,.15); color: var(--bufo-amber);
}
.resumen-bullet__label {
  font-family: var(--bufo-mono); font-size: 0.65rem;
  letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--bufo-text-4); display: block; margin-bottom: 2px;
}

/* ── HERO CTAs (2 streamlined) ───────────────────────────────────── */
.hero-ctas {
  display: flex; gap: var(--bufo-s-3); margin-top: var(--bufo-s-5);
  flex-wrap: wrap;
}
.hero-cta {
  display: inline-flex; align-items: center; gap: var(--bufo-s-2);
  padding: 10px 20px; font-family: var(--bufo-mono);
  font-size: 0.78rem; font-weight: 600; letter-spacing: 0.04em;
  text-transform: uppercase; border-radius: var(--bufo-radius-sm);
  text-decoration: none; transition: all var(--bufo-ease);
  cursor: pointer; border: none; line-height: 1.4;
}
.hero-cta--primary {
  background: var(--bufo-green); color: #050508;
}
.hero-cta--primary:hover,
.hero-cta--primary:focus-visible {
  background: var(--bufo-green-bright);
  box-shadow: 0 0 20px rgba(34,197,94,.3);
}
.hero-cta--secondary {
  background: transparent; color: var(--bufo-green);
  border: 1px solid rgba(34,197,94,.3);
}
.hero-cta--secondary:hover,
.hero-cta--secondary:focus-visible {
  background: rgba(34,197,94,.08); border-color: rgba(34,197,94,.5);
}

/* ── READING MODE TOGGLE ─────────────────────────────────────────── */
.modo-lectura-toggle {
  display: inline-flex; align-items: center; gap: var(--bufo-s-2);
  padding: 6px 12px; background: var(--bufo-panel);
  border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius-xs); color: var(--bufo-text-3);
  font-family: var(--bufo-mono); font-size: 0.7rem;
  letter-spacing: 0.05em; cursor: pointer;
  transition: all var(--bufo-ease);
}
.modo-lectura-toggle:hover,
.modo-lectura-toggle:focus-visible {
  border-color: var(--bufo-line-green); color: var(--bufo-green);
}
.modo-lectura-toggle[aria-pressed="true"] {
  background: rgba(34,197,94,.08);
  border-color: rgba(34,197,94,.3); color: var(--bufo-green);
}

/* Reading mode active state */
body.bufo-reading-mode {
  --bufo-reading-font-size: 1.15rem;
  --bufo-reading-line-height: 1.85;
}
body.bufo-reading-mode .index-hero__bg,
body.bufo-reading-mode .index-hero__noise,
body.bufo-reading-mode .index-hero__grid,
body.bufo-reading-mode .expedition-hero__noise,
body.bufo-reading-mode .expedition-hero__grid {
  opacity: 0.15;
}
body.bufo-reading-mode .prose-content {
  font-size: var(--bufo-reading-font-size);
  line-height: var(--bufo-reading-line-height);
  max-width: 680px;
}
body.bufo-reading-mode .expedition-sidebar {
  opacity: 0.4; transition: opacity var(--bufo-ease);
}
body.bufo-reading-mode .expedition-sidebar:hover,
body.bufo-reading-mode .expedition-sidebar:focus-within {
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  body.bufo-reading-mode .index-hero__bg,
  body.bufo-reading-mode .index-hero__noise,
  body.bufo-reading-mode .index-hero__grid { display: none; }
}

/* ── IMPROVED PROSE TYPOGRAPHY ───────────────────────────────────── */
.prose-content {
  font-size: 1.05rem; line-height: 1.75;
  max-width: 72ch; color: var(--bufo-text-2);
}
.prose-content h2 {
  font-size: 1.75rem; font-weight: 700; color: var(--bufo-text);
  margin-top: 2.5em; margin-bottom: 0.75em;
  padding-bottom: 0.5em; border-bottom: 0px solid var(--bufo-line);
}
.prose-content h3 {
  font-size: 1.2rem; font-weight: 600; color: var(--bufo-text);
  margin-top: 2em; margin-bottom: 0.5em;
}
.prose-content p { margin-bottom: 1.25em; }
.prose-content a {
  color: var(--bufo-green); text-decoration: underline;
  text-decoration-color: rgba(34,197,94,.3);
  text-underline-offset: 2px;
  transition: text-decoration-color var(--bufo-ease-fast);
}
.prose-content a:hover { text-decoration-color: var(--bufo-green); }
.prose-content blockquote {
  border-left: 3px solid var(--bufo-green);
  padding-left: var(--bufo-s-4); margin: 1.5em 0;
  color: var(--bufo-text-3); font-style: italic;
}
.prose-content img {
  border-radius: var(--bufo-radius-sm);
  border: 1px solid var(--bufo-line);
}

/* ── CRONOLOGIA ──────────────────────────────────────────────────── */
.bufo-cronologia {
  margin: var(--bufo-s-6) 0; padding: var(--bufo-s-5);
  background: var(--bufo-panel); border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius-md);
}
.bufo-cronologia__title {
  display: flex; align-items: center; gap: var(--bufo-s-2);
  font-family: var(--bufo-mono); font-size: 0.75rem;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--bufo-green); margin-bottom: var(--bufo-s-4);
}
.bufo-cronologia__list {
  list-style: none; padding: 0; margin: 0;
  border-left: 2px solid var(--bufo-line-green);
}
.bufo-cronologia__item {
  position: relative;
  padding: var(--bufo-s-3) 0 var(--bufo-s-3) var(--bufo-s-5);
}
.bufo-cronologia__item::before {
  content: ''; position: absolute; left: -5px; top: 18px;
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--bufo-green);
  border: 2px solid var(--bufo-surface-1);
}
.bufo-cronologia__date {
  font-family: var(--bufo-mono); font-size: 0.72rem;
  color: var(--bufo-green); letter-spacing: 0.05em;
}
.bufo-cronologia__event {
  font-size: 0.9rem; color: var(--bufo-text-2); margin-top: 2px;
}
.bufo-cronologia__source {
  font-size: 0.75rem; color: var(--bufo-text-4); margin-top: 2px;
}
.bufo-cronologia__source a {
  color: var(--bufo-cyan); text-decoration: none;
}
.bufo-cronologia__source a:hover { text-decoration: underline; }

/* ── FAQ SECTION ─────────────────────────────────────────────────── */
.bufo-faq {
  margin: var(--bufo-s-6) 0; padding: var(--bufo-s-5);
  background: var(--bufo-panel); border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius-md);
}
.bufo-faq__title {
  display: flex; align-items: center; gap: var(--bufo-s-2);
  font-family: var(--bufo-mono); font-size: 0.75rem;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--bufo-green); margin-bottom: var(--bufo-s-4);
}
.bufo-faq__item {
  padding: var(--bufo-s-3) 0;
  border-bottom: 1px solid var(--bufo-line);
}
.bufo-faq__item:last-child { border-bottom: none; }
.bufo-faq__question {
  font-weight: 600; color: var(--bufo-text); font-size: 0.95rem;
  margin-bottom: var(--bufo-s-2);
  display: flex; align-items: flex-start; gap: var(--bufo-s-2);
}
.bufo-faq__question::before {
  content: 'Q'; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  width: 22px; height: 22px;
  background: rgba(34,197,94,.1); color: var(--bufo-green);
  border-radius: 4px; font-family: var(--bufo-mono);
  font-size: 0.7rem; font-weight: 700;
}
.bufo-faq__answer {
  color: var(--bufo-text-3); font-size: 0.9rem;
  line-height: 1.6; padding-left: 30px;
}

/* ── METODOLOGIA LINK ────────────────────────────────────────────── */
.bufo-metodologia {
  display: inline-flex; align-items: center; gap: var(--bufo-s-2);
  padding: var(--bufo-s-2) var(--bufo-s-3);
  font-family: var(--bufo-mono); font-size: 0.68rem;
  letter-spacing: 0.06em; color: var(--bufo-text-4);
  border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius-xs);
  text-decoration: none; transition: all var(--bufo-ease);
}
.bufo-metodologia:hover,
.bufo-metodologia:focus-visible {
  color: var(--bufo-green); border-color: var(--bufo-line-green);
  background: rgba(34,197,94,.04);
}

/* ── CHAIN OF CUSTODY / REVISION HISTORY ─────────────────────────── */
.bufo-chain-of-custody {
  margin: var(--bufo-s-5) 0;
  display: flex; flex-wrap: wrap; align-items: center;
  gap: var(--bufo-s-3);
}
.bufo-revisions { width: 100%; margin-top: var(--bufo-s-2); }
.bufo-revisions__toggle {
  display: inline-flex; align-items: center; gap: var(--bufo-s-2);
  background: none; border: none; color: var(--bufo-text-4);
  font-family: var(--bufo-mono); font-size: 0.7rem;
  letter-spacing: 0.04em; cursor: pointer;
  padding: var(--bufo-s-1) 0;
  transition: color var(--bufo-ease-fast);
}
.bufo-revisions__toggle:hover,
.bufo-revisions__toggle:focus-visible { color: var(--bufo-green); }
.bufo-revisions__toggle svg {
  transition: transform var(--bufo-ease-fast);
}
.bufo-revisions__toggle[aria-expanded="true"] svg {
  transform: rotate(180deg);
}
.bufo-revisions__list {
  list-style: none; padding: 0;
  margin: var(--bufo-s-2) 0 0 0;
}
.bufo-revisions__item {
  display: flex; align-items: center; gap: var(--bufo-s-2);
  padding: var(--bufo-s-2) 0; font-size: 0.78rem;
  color: var(--bufo-text-3);
  border-bottom: 1px solid var(--bufo-line);
}
.bufo-revisions__item:last-child { border-bottom: none; }
.bufo-revisions__avatar {
  width: 24px; height: 24px; border-radius: 50%;
  border: 1px solid var(--bufo-line-green);
}
.bufo-revisions__date {
  font-family: var(--bufo-mono); font-size: 0.68rem;
  color: var(--bufo-text-4); margin-left: auto;
}

/* ── GLOBAL FOCUS VISIBLE (WCAG AA) ──────────────────────────────── */
*:focus-visible {
  outline: 2px solid var(--bufo-green);
  outline-offset: 2px;
}

/* ── RELATED POSTS ───────────────────────────────────────────────── */
.bufo-related { margin: var(--bufo-s-6) 0; }
.bufo-related__title {
  display: flex; align-items: center; gap: var(--bufo-s-2);
  font-family: var(--bufo-mono); font-size: 0.75rem;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--bufo-green); margin-bottom: var(--bufo-s-4);
}
.bufo-related__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--bufo-s-4);
}
.bufo-related__card {
  display: flex; flex-direction: column;
  padding: var(--bufo-s-4);
  background: var(--bufo-panel); border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius-sm);
  text-decoration: none; transition: all var(--bufo-ease);
}
.bufo-related__card:hover {
  border-color: var(--bufo-line-green);
  background: rgba(34,197,94,.03);
}
.bufo-related__card-type {
  font-family: var(--bufo-mono); font-size: 0.6rem;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--bufo-text-5); margin-bottom: var(--bufo-s-1);
}
.bufo-related__card-title {
  font-size: 0.9rem; font-weight: 600;
  color: var(--bufo-text); margin-bottom: var(--bufo-s-2);
}
.bufo-related__card-meta {
  font-size: 0.75rem; color: var(--bufo-text-4); margin-top: auto;
}

/* ── SIDEBAR PANEL GROUP HEADERS ─────────────────────────────────── */
.sidebar-panel-group { margin-bottom: var(--bufo-s-4); }
.sidebar-panel-group__title {
  font-family: var(--bufo-mono); font-size: 0.6rem;
  letter-spacing: 0.15em; text-transform: uppercase;
  color: var(--bufo-text-5);
  padding-bottom: var(--bufo-s-2); margin-bottom: var(--bufo-s-3);
  border-bottom: 1px solid var(--bufo-line);
}

/* ── LAZY ANIMATION ENTRANCE (progressive enhancement) ────────────
   .bufo-will-animate is added by JS only when IntersectionObserver
   is available AND prefers-reduced-motion is off.
   Without JS, all panels remain fully visible. ─────────────────── */
.bufo-will-animate {
  opacity: 0; transform: translateY(12px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}
.bufo-will-animate.bufo-animate-in {
  opacity: 1; transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
  .bufo-will-animate {
    opacity: 1; transform: none; transition: none;
  }
}
.prose-content ul:not(.wp-block-list),
.prose-content ol:not(.wp-block-list) {
  margin-bottom: 1.75rem;
  padding-left: 0;
  list-style: none;
}
.prose-content ol:not(.wp-block-list) {
  counter-reset: bufo-ol;
}
.prose-content :not(.wp-block-list) > li {
  position: relative;
  margin-bottom: 0.5rem;
  padding: 10px 14px 10px 42px;
  border-radius: 10px;
  border: 1px solid rgba(0,255,65,.04);
  background: linear-gradient(135deg, rgba(0,255,65,.015) 0%, rgba(0,0,0,.18) 100%);
  font-size: 15px;
  line-height: 1.65;
  transition: border-color .25s, background .25s, transform .25s;
}
.prose-content :not(.wp-block-list) > li:hover {
  border-color: rgba(0,255,65,.12);
  background: linear-gradient(135deg, rgba(0,255,65,.03) 0%, rgba(0,0,0,.22) 100%);
  transform: translateX(3px);
}
.prose-content :not(.wp-block-list) > li::after {
  content: "";
  position: absolute;
  left: 0; top: 6px; bottom: 6px;
  width: 2px;
  border-radius: 1px;
  background: rgba(0,255,65,.5);
  opacity: 0;
  transition: opacity .25s;
}
.prose-content :not(.wp-block-list) > li:hover::after { opacity: 1; }
.prose-content ul:not(.wp-block-list) > li::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 16px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(0,255,65,.45);
  box-shadow: 0 0 6px rgba(0,255,65,.2);
  transition: background .25s, box-shadow .25s;
}
.prose-content ul:not(.wp-block-list) > li:hover::before {
  background: rgba(0,255,65,.75);
  box-shadow: 0 0 10px rgba(0,255,65,.35), 0 0 4px rgba(0,255,65,.2);
}
.prose-content ol:not(.wp-block-list) > li {
  counter-increment: bufo-ol;
}
.prose-content ol:not(.wp-block-list) > li::before {
  content: counter(bufo-ol, decimal-leading-zero);
  position: absolute;
  left: 10px;
  top: 10px;
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .04em;
  color: rgba(0,255,65,.4);
  line-height: 1;
}
.prose-content ol:not(.wp-block-list) > li:hover::before {
  color: rgba(0,255,65,.7);
}
.prose-content :not(.wp-block-list) > li ul,
.prose-content :not(.wp-block-list) > li ol {
  margin-top: 8px;
  margin-bottom: 0;
}
.prose-content :not(.wp-block-list) > li li {
  padding: 6px 10px 6px 34px;
  margin-bottom: 3px;
  border: 1px solid transparent;
  background: rgba(0,0,0,.1);
  font-size: 14px;
}
.prose-content :not(.wp-block-list) > li li::before {
  left: 12px;
  top: 12px;
  width: 5px;
  height: 5px;
}
.prose-content :not(.wp-block-list) > li li::after { display: none; }
/* ═══ PROSE TABLE — Intelligence Data Grid ═══ */
.prose-content table,
.prose-content .wp-block-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: 2rem 0;
  border-radius: 14px;
  border: 1px solid rgba(0,255,65,.08);
  background: rgba(0,0,0,.25);
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,.3);
}

.prose-content .wp-block-table {
  overflow-x: auto;
  margin: 2rem 0;
}
.prose-content .wp-block-table table { margin: 0; }

/* Header */
.prose-content thead th,
.prose-content .wp-block-table thead th {
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(0,255,65,.5);
  padding: 12px 16px;
  text-align: left;
  background:
    linear-gradient(180deg, rgba(0,255,65,.06) 0%, rgba(0,255,65,.02) 100%),
    rgba(0,0,0,.4);
  border-bottom: 1px solid rgba(0,255,65,.1);
  position: relative;
  white-space: nowrap;
}

/* Header cell dividers */
.prose-content thead th + th,
.prose-content .wp-block-table thead th + th {
  border-left: 1px solid rgba(0,255,65,.06);
}

/* Body cells */
.prose-content tbody td,
.prose-content .wp-block-table tbody td {
  padding: 11px 16px;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(230,236,246,.88);
  border-bottom: 1px solid rgba(255,255,255,.03);
  transition: background .2s, color .2s;
  position: relative;
}

.prose-content tbody td + td,
.prose-content .wp-block-table tbody td + td {
  border-left: 1px solid rgba(255,255,255,.025);
}

/* Row hover */
.prose-content tbody tr,
.prose-content .wp-block-table tbody tr {
  transition: background .2s;
}
.prose-content tbody tr:hover,
.prose-content .wp-block-table tbody tr:hover {
  background: rgba(0,255,65,.025);
}
.prose-content tbody tr:hover td,
.prose-content .wp-block-table tbody tr:hover td {
  color: rgba(230,236,246,.95);
}

/* First cell accent on hover */
.prose-content tbody tr:hover td:first-child::before,
.prose-content .wp-block-table tbody tr:hover td:first-child::before {
  content: "";
  position: absolute;
  left: 0; top: 4px; bottom: 4px;
  width: 2px;
  border-radius: 1px;
  background: rgba(0,255,65,.5);
}

/* Alternating rows */
.prose-content tbody tr:nth-child(even),
.prose-content .wp-block-table tbody tr:nth-child(even) {
  background: rgba(255,255,255,.012);
}
.prose-content tbody tr:nth-child(even):hover,
.prose-content .wp-block-table tbody tr:nth-child(even):hover {
  background: rgba(0,255,65,.03);
}

/* Last row no border */
.prose-content tbody tr:last-child td,
.prose-content .wp-block-table tbody tr:last-child td {
  border-bottom: none;
}

/* Footer */
.prose-content tfoot td,
.prose-content .wp-block-table tfoot td {
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 11px;
  letter-spacing: .06em;
  color: rgba(167,177,194,.6);
  padding: 10px 16px;
  border-top: 1px solid rgba(0,255,65,.08);
  background: rgba(0,0,0,.3);
}

/* Caption */
.prose-content table caption,
.prose-content .wp-block-table figcaption {
  font-family: var(--bufo-mono, 'JetBrains Mono', monospace);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(0,255,65,.35);
  margin-bottom: 8px;
  text-align: left;
}

/* Striped variant (WP adds this class) */
.prose-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background: rgba(0,255,65,.015);
}
.prose-content .wp-block-table.is-style-stripes tbody tr:nth-child(even) {
  background: rgba(0,0,0,.15);
}

/* ═══════════════════════════════════════════════════════════
   INTEL TAGS — Marcadores de Inteligencia
   ═══════════════════════════════════════════════════════════ */
.bufo-intel-tags {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(34, 197, 94, 0.08);
}

.bufo-intel-tags__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}

.bufo-intel-tags__label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-mono, monospace);
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.5);
}
.bufo-intel-tags__label svg { color: rgba(34, 197, 94, 0.4); }

.bufo-intel-tags__count {
  font-family: var(--font-mono, monospace);
  font-size: 0.58rem;
  font-weight: 800;
  color: rgba(34, 197, 94, 0.5);
  background: rgba(34, 197, 94, 0.06);
  border: 1px solid rgba(34, 197, 94, 0.1);
  padding: 2px 8px;
  border-radius: 4px;
}

.bufo-intel-tags__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.bufo-intel-tag {
  display: inline-flex;
  align-items: center;
  padding: 6px 14px;
  border-radius: 8px;
  background: rgba(34, 197, 94, 0.04);
  border: 1px solid rgba(34, 197, 94, 0.08);
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  letter-spacing: 0.02em;
  transition: all 0.25s ease;
}
.bufo-intel-tag:hover {
  background: rgba(34, 197, 94, 0.12);
  border-color: rgba(34, 197, 94, 0.3);
  color: #22c55e;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px -4px rgba(34, 197, 94, 0.12);
}

.bufo-intel-tag__hash {
  color: rgba(34, 197, 94, 0.4);
  margin-right: 2px;
  transition: color 0.2s ease;
}
.bufo-intel-tag:hover .bufo-intel-tag__hash { color: #22c55e; }

/* ═══════════════════════════════════════════════════════════
   SHARE BAR — Difusión del Expediente
   ═══════════════════════════════════════════════════════════ */
.bufo-share {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 2rem;
  padding: 18px 22px;
  border-radius: 14px;
  border: 1px solid rgba(34, 197, 94, 0.1);
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.03) 0%, rgba(0, 0, 0, 0.2) 100%);
  position: relative;
  overflow: hidden;
}

.bufo-share__left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.bufo-share__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: rgba(34, 197, 94, 0.08);
  border: 1px solid rgba(34, 197, 94, 0.12);
  color: rgba(34, 197, 94, 0.6);
  flex-shrink: 0;
}

.bufo-share__copy { display: flex; flex-direction: column; gap: 1px; }
.bufo-share__title {
  font-family: var(--font-mono, monospace);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.7);
}
.bufo-share__sub {
  font-size: 0.65rem;
  color: rgba(255, 255, 255, 0.25);
}

.bufo-share__buttons {
  display: flex;
  gap: 8px;
}

.bufo-share__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(34, 197, 94, 0.08);
  color: rgba(255, 255, 255, 0.4);
  cursor: pointer;
  transition: all 0.25s ease;
}
.bufo-share__btn svg { width: 18px; height: 18px; }

.bufo-share__btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px -6px rgba(0, 0, 0, 0.4);
}

.bufo-share__btn--x:hover {
  background: rgba(0, 0, 0, 0.5);
  border-color: rgba(255, 255, 255, 0.15);
  color: #fff;
}
.bufo-share__btn--telegram:hover {
  background: rgba(0, 136, 204, 0.15);
  border-color: rgba(0, 136, 204, 0.3);
  color: #0088cc;
}
.bufo-share__btn--whatsapp:hover {
  background: rgba(37, 211, 102, 0.15);
  border-color: rgba(37, 211, 102, 0.3);
  color: #25d366;
}
.bufo-share__btn--copy:hover {
  background: rgba(34, 197, 94, 0.1);
  border-color: rgba(34, 197, 94, 0.3);
  color: #22c55e;
}

.bufo-share__btn--copy .bufo-share__btn-ok { display: none; }
.bufo-share__btn--copy.copied .bufo-share__btn-default { display: none; }
.bufo-share__btn--copy.copied .bufo-share__btn-ok { display: block; }
.bufo-share__btn--copy.copied {
  background: rgba(34, 197, 94, 0.15);
  border-color: rgba(34, 197, 94, 0.4);
  color: #22c55e;
}

@media (max-width: 480px) {
  .bufo-share { flex-direction: column; align-items: flex-start; }
  .bufo-share__buttons { align-self: flex-end; }
}

/* ═══════════════════════════════════════════════════════════
   DOSSIER CARD — Author Operative Profile
   ═══════════════════════════════════════════════════════════ */
.bufo-dossier {
  position: relative;
  margin-top: 3rem;
  border: 1px solid rgba(34, 197, 94, 0.12);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(34, 197, 94, 0.03) 0%, rgba(3, 5, 8, 0.6) 10%);
  overflow: hidden;
}

.bufo-dossier__scan {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(0deg, transparent 0, transparent 3px, rgba(255,255,255,0.006) 3px, rgba(255,255,255,0.006) 4px);
  pointer-events: none;
}

/* Corner brackets */
.bufo-dossier__corn {
  position: absolute;
  width: 20px;
  height: 20px;
  border-color: rgba(34, 197, 94, 0.15);
  border-style: solid;
  border-width: 0;
  z-index: 2;
  pointer-events: none;
}
.bufo-dossier__corn--tl { top: 5px; left: 5px; border-top-width: 1px; border-left-width: 1px; }
.bufo-dossier__corn--tr { top: 5px; right: 5px; border-top-width: 1px; border-right-width: 1px; }
.bufo-dossier__corn--bl { bottom: 5px; left: 5px; border-bottom-width: 1px; border-left-width: 1px; }
.bufo-dossier__corn--br { bottom: 5px; right: 5px; border-bottom-width: 1px; border-right-width: 1px; }

/* Strip header */
.bufo-dossier__strip {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 20px;
  border-bottom: 1px solid rgba(34, 197, 94, 0.06);
}

.bufo-dossier__strip-label {
  font-family: var(--font-mono, monospace);
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.45);
}

.bufo-dossier__strip-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-mono, monospace);
  font-size: 0.52rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 3px 10px;
  border-radius: 4px;
  background: rgba(34, 197, 94, 0.08);
  border: 1px solid rgba(34, 197, 94, 0.15);
  color: #22c55e;
}

.bufo-dossier__strip-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 6px rgba(34, 197, 94, 0.5);
  animation: bufo-dot-blink 2s ease-in-out infinite;
}
@keyframes bufo-dot-blink { 0%,100% { opacity: 1; } 50% { opacity: 0.3; } }

/* Body */
.bufo-dossier__body {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 24px;
  padding: 24px;
}
@media (max-width: 640px) {
  .bufo-dossier__body { flex-direction: column; align-items: center; text-align: center; }
}

/* Avatar */
.bufo-dossier__avatar {
  position: relative;
  flex-shrink: 0;
  display: block;
  width: 100px;
  height: 100px;
}
.bufo-dossier__avatar img {
  width: 100%;
  height: 100%;
  border-radius: 14px;
  object-fit: cover;
  border: 2px solid rgba(34, 197, 94, 0.15);
  transition: border-color 0.3s ease;
}
.bufo-dossier__avatar:hover img { border-color: rgba(34, 197, 94, 0.4); }

.bufo-dossier__avatar-ring {
  position: absolute;
  inset: -5px;
  border: 1px solid rgba(34, 197, 94, 0.12);
  border-radius: 18px;
  pointer-events: none;
  transition: border-color 0.3s ease;
}
.bufo-dossier__avatar:hover .bufo-dossier__avatar-ring {
  border-color: rgba(34, 197, 94, 0.25);
}

.bufo-dossier__avatar-badge {
  position: absolute;
  bottom: -4px;
  right: -4px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #22c55e;
  border: 2px solid rgba(5, 5, 8, 1);
  color: #050508;
}

/* Info */
.bufo-dossier__info { flex: 1; min-width: 0; }

.bufo-dossier__role {
  display: block;
  font-family: var(--font-mono, monospace);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.25);
  margin-bottom: 4px;
}

.bufo-dossier__name {
  display: block;
  font-size: 1.3rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
  margin-bottom: 8px;
  transition: color 0.2s ease;
}
.bufo-dossier__name:hover { color: #22c55e; }

.bufo-dossier__bio {
  font-size: 0.85rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.4);
  margin: 0 0 16px;
}

.bufo-dossier__actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.bufo-dossier__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 10px;
  border: 1px solid rgba(34, 197, 94, 0.15);
  background: rgba(34, 197, 94, 0.05);
  font-family: var(--font-mono, monospace);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.7);
  text-decoration: none;
  transition: all 0.25s ease;
}
.bufo-dossier__link:hover {
  background: rgba(34, 197, 94, 0.12);
  border-color: rgba(34, 197, 94, 0.35);
  color: #22c55e;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px -4px rgba(34, 197, 94, 0.12);
}
.bufo-dossier__link svg:last-child {
  transition: transform 0.25s ease;
}
.bufo-dossier__link:hover svg:last-child { transform: translateX(3px); }

/* Performance */
.perf-tier-3 .bufo-dossier__scan { display: none; }
.perf-tier-3 .bufo-dossier__strip-dot { animation: none; }
@media (prefers-reduced-motion: reduce) {
  .bufo-dossier__strip-dot { animation: none; }
}
.prose-content > p:first-of-type::first-letter {
  float: left;
  font-size: 3.6em;
  font-weight: 800;
  line-height: 0.8;
  margin-right: 10px;
  margin-top: 6px;
	color: white;
  text-shadow: 0 0 20px rgba(34, 197, 94, 0.3);
}