/* ═══════════════════════════════════════════════════════════════════
   FIGURAS — estilos compartidos por los tres motores.

   El SVG hereda el color del texto con currentColor, así que la misma
   figura se lee bien en modo día y en modo noche sin duplicar nada.
   ═══════════════════════════════════════════════════════════════════ */

.fig-caja {
  margin: 0 0 18px;
  padding: 14px;
  border-radius: 14px;
  background: rgba(127, 143, 176, .07);
  border: 1px solid rgba(127, 143, 176, .22);
  color: inherit;
}

.fig-titulo {
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
  opacity: .72;
  margin-bottom: 10px;
  text-align: center;
}

.fig-svg {
  display: block;
  width: 100%;
  height: auto;
  max-width: 420px;
  margin: 0 auto;
  overflow: visible;
}

/* Una figura que entra sola llama la atención al dato, sin distraer. */
.fig-caja { animation: figEntra .4s cubic-bezier(.2, .8, .3, 1) both; }
@keyframes figEntra {
  from { opacity: 0; transform: translate3d(0, 8px, 0); }
  to   { opacity: 1; transform: none; }
}

/* ── Tabla: HTML de verdad, para que se pueda leer y seleccionar ── */
.fig-tabla-scroll { overflow-x: auto; }
.fig-tabla {
  width: 100%;
  border-collapse: collapse;
  font-size: .92rem;
}
.fig-tabla th,
.fig-tabla td {
  padding: 9px 13px;
  border: 1px solid rgba(127, 143, 176, .3);
  text-align: left;
}
.fig-tabla th {
  font-weight: 800;
  font-size: .8rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  background: rgba(127, 143, 176, .12);
}
.fig-tabla td.num {
  text-align: right;
  font-variant-numeric: tabular-nums;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
}
.fig-tabla tbody tr:nth-child(even) { background: rgba(127, 143, 176, .06); }

@media (max-width: 640px) {
  .fig-caja { padding: 10px; }
  .fig-tabla th, .fig-tabla td { padding: 7px 10px; font-size: .86rem; }
}

@media (prefers-reduced-motion: reduce) {
  .fig-caja { animation: figFundido .3s ease both; }
  @keyframes figFundido { from { opacity: 0; } to { opacity: 1; } }
}
