feat(ti): scaffold portal_ti + modelos + router MVP + seed área
Crea el apartado TI replicando el patrón de portal_juridico:
Backend:
- database_ti.py + Base_ti (comparte la BD portal_financiero).
- models/ti.py con TiProyecto + 6 catálogos (portafolio, fase_estandar, semaforo, estado_actual, tipo_proyecto, tipo_empresa) + historial.
- routers/ti.py con CRUD de proyectos, CRUD de catálogos, dashboard/stats (KPIs + distribuciones + próximos deadlines).
- main.py registra el nuevo router y siembra: área "ti" +
sub-área "ti-proyectos" + semáforo (Verde/Amarillo/Rojo con colores)
- estado_actual (Activo/Pausado/Cancelado/Concluido).
Frontend portal_ti (scaffolding):
- Estructura clonada de portal_juridico + mejoras de juridico-rescate (ThemeProvider, OaeCards, dark mode, login fix, sidebar jerárquico).
- package.json con puerto 3003 (interno) — "portal-ti".
- Dockerfile en 3003.
- Sidebar muestra solo área TI; branding "Portal TI".
- Placeholder en /ti/proyectos (dashboard + captura pendientes).
Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com