feat(riesgos): KPI danos vigentes con filtros locales y drill-down 3 niveles en su modal
- ModalRiesgosDanosVigentesDetalle: filtros locales propios (Ano, Meses, Portafolios, Empresas, Aseguradora) con default heredado del dashboard general y re-fetch a dashboard-summary al cambiar
- ModalRiesgosDanosVigentesDetalle: drill-down de 3 niveles. Click en empresa abre sub-modal PolizaDetalleModal con polizas vigentes de la empresa filtradas por los mismos filtros activos (dedup por numero de poliza); click en una poliza abre sub-sub-modal RecibosDetalleModal con todos los recibos crudos de la poliza, sin filtros adicionales
- mapeo correcto a la estructura de danos: asegurado_o_corto desde nombre_corto, prima_total desde prima_total_poliza, asegurado del recibo desde nombre_corto, origen Danos
- color de acento amarillo (#f59e0b) en los sub-modales para diferenciar de Autos (verde/azul)
- fetch raw a /api/tableau/polizas-danos al abrir el modal
- useMemo periodMonthsSet colocado antes del return condicional para no romper el orden de hooks de React entre renders
- ExecWidgetBlock pasa defaultFilters y allPortafolios/allEmpresas al ModalRiesgosDanosVigentesDetalle (mismo patron que el modal de Autos Vigentes)
Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com