/* estilo.css — Catálogo de capacidades (#884). Só tokens do design system. */
.cap.ds-molde { width: 100%; min-width: 0; }
.cap-sussurro { color: var(--muted); font-size: var(--ds-fs-xs); }
.cap-pergunta { color: var(--ink); }
.cap-aviso { color: var(--muted); font-size: var(--ds-fs-sm); padding: var(--ds-s3); border: 1px solid var(--line); border-radius: var(--ds-r); margin-bottom: var(--ds-s3); }
.cap-filtros { display: flex; gap: var(--ds-s2); flex-wrap: wrap; align-items: center; }
.cap-link { display: inline-block; max-width: 32ch; min-height: 32px; padding: 0; border: 0; background: none; color: var(--ink);
  font: inherit; font-weight: 600; text-align: left; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cap-link:hover, .cap-link.ativo { color: var(--ink-accent); }
.cap-link:focus-visible { outline: 2px solid var(--ds-accent); outline-offset: 2px; }
.cap-col-prox .trunc { display: inline-block; max-width: 40ch; color: var(--muted); }
.cap-painel h4 { margin: var(--ds-s4) 0 var(--ds-s1); font-size: var(--ds-fs-xs); color: var(--muted); text-transform: uppercase; letter-spacing: .04em; }
.cap-painel p { margin: var(--ds-s1) 0; font-size: var(--ds-fs-sm); }
.cap-linha-meta { color: var(--muted); }
.cap-missoes { margin: 0; padding-left: 18px; font-size: 13px; }
.cap-missoes li { margin: 2px 0; }
.cap-fluxo { width: 100%; height: auto; max-width: 100%; }
.cap-fluxo-no { fill: transparent; stroke: var(--line); stroke-width: 1.5; }
.cap-fluxo-cdp { stroke: var(--ink-accent); }
.cap-fluxo-tipo { fill: var(--muted); font-size: 10px; text-transform: uppercase; }
.cap-fluxo-rotulo { font-size: 12px; line-height: 1.25; color: inherit; display: flex; align-items: center; height: 100%; }
.cap-fluxo-linha { stroke: var(--muted); stroke-width: 1.5; }
.cap-fluxo-seta { fill: var(--muted); }
@media (max-width: 640px) {
  .cap-link { white-space: normal; max-width: none; }
  .cap-col-prox .trunc { white-space: normal; max-width: none; }
}
