/* ============================================================
   Civika · Artículo de guía (/guias/{slug}/)
   ============================================================ */

.guide-badge { font-size: 10px; letter-spacing: .04em; }

/* Menos separacion entre la cabecera (imagen/titular/resumen) y el bloque
   de texto de la guia: el "section" que sigue al hero trae por defecto
   4rem de relleno superior (design-system.css), aqui se recorta. */
.guide-content-section { padding-top: var(--space-2); }

.guide-meta-row {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-5);
  margin-top: var(--space-5); padding-top: var(--space-5); border-top: 1px solid var(--slate-100);
  font-size: var(--text-sm); color: var(--slate-500);
}
.guide-meta-row span { display: flex; align-items: center; gap: 6px; }
.guide-meta-row svg { color: var(--slate-400); flex-shrink: 0; }

.guide-layout {
  display: grid; grid-template-columns: 220px 1fr 260px; gap: var(--space-8); align-items: start;
}

.guide-toc {
  display: flex; flex-direction: column; gap: var(--space-1);
  background: var(--white); border: 1px solid var(--slate-200); border-radius: var(--radius-lg);
  padding: var(--space-5);
}
.guide-toc h3 { font-size: var(--text-base); font-weight: 700; color: var(--ink-900); margin-bottom: var(--space-3); }
.guide-toc a {
  display: block; padding: var(--space-2) var(--space-3); border-radius: var(--radius-sm);
  font-size: var(--text-sm); font-weight: 600; color: var(--slate-600); border-left: 2px solid transparent;
}
.guide-toc a:hover { background: var(--slate-100); color: var(--green-700); text-decoration: none; }

.guide-learn-list { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-3); }
.guide-learn-item { display: flex; align-items: flex-start; gap: var(--space-2); font-size: var(--text-sm); color: var(--slate-600); }
.guide-learn-item svg { flex-shrink: 0; margin-top: 2px; color: var(--green-600); }

.guide-callout-tip { background: var(--green-50); border-radius: var(--radius-lg); padding: var(--space-5) var(--space-6); border-bottom: none; }
.guide-callout-tip h2 { color: var(--green-700); }

.guide-callout-warning {
  display: flex; gap: var(--space-3); align-items: flex-start;
  background: #fffbeb; border: 1px solid #fde68a; border-radius: var(--radius-lg);
  padding: var(--space-4) var(--space-5); margin-block: var(--space-6);
  color: #92400e; font-size: var(--text-sm);
}
.guide-callout-warning svg { flex-shrink: 0; margin-top: 2px; }
.guide-callout-warning strong { color: #78350f; }

.guide-related-list { display: flex; flex-direction: column; gap: var(--space-1); margin-top: var(--space-3); }
.guide-related-link {
  display: flex; align-items: center; justify-content: space-between; gap: var(--space-2);
  padding: var(--space-2) 0; font-size: var(--text-sm); font-weight: 600; color: var(--ink-900);
  border-bottom: 1px solid var(--slate-100);
}
.guide-related-link:last-child { border-bottom: none; }
.guide-related-link:hover { color: var(--green-700); text-decoration: none; }
.guide-related-link span { color: var(--slate-300); flex-shrink: 0; }

.guide-back { margin-top: var(--space-6); font-size: var(--text-sm); font-weight: 700; }

@media (max-width: 1100px) {
  .guide-layout { grid-template-columns: 1fr 260px; }
  .guide-toc-col { display: none; }
}
@media (max-width: 780px) {
  .guide-layout { grid-template-columns: 1fr; }
  .guide-aside-col { position: static; }
}
