POLITICA
Qué es la Reforma Laboral de Javier Milei que aprobó Diputados y cuáles son los principales puntos

El gobierno de Javier Milei consiguió aprobar en la Cámara de Diputados el proyecto de reforma laboral que ya tenía media sanción del Senado. Al haberse eliminado el artículo 44, que imponía descuentos a los trabajadores que faltaran por enfermedades o lesiones, el texto volverá a la Cámara alta para su sanción definitiva. Con poco más de 200 artículos, la reforma está agrupada en en cinco ejes temáticos: modificaciones diversas a la actual modalidad laboral; incentivos a la formalización de trabajadores y creación de empleo; una nueva dinámica en la justicia laboral para desalentar la llamada “industria del juicio”; una reforma tributaria acotada y beneficios fiscales destinadas a medianas inversiones.
A continuación se presenta un detalle de los aspectos principales del proyecto, incluidas las modificaciones ya incorporadas.
El proyecto incorpora cambios profundos en las relaciones de trabajo, flexibiliza las condiciones de contratación y modifica sustancialmente el esquema de indemnizaciones.
¿Habrá cambios en las remuneraciones?
Los salarios deben ser pagados en dinero, sea en moneda nacional o extranjera, especie, habitación o alimentos. Se incorpora el concepto de “salario dinámico”, que puede ser acordado en los convenios colectivos, regionales o por empresa e incluso por decisión del empleador, como pagos al “mérito personal” del trabajador o productividad. Los únicos habilitados para el pago de salarios serán las entidades bancarias (se eliminó la posibilidad de incorporar a las billeteras virtuales).
En caso de despido, ¿cómo se calcularán las indemnizaciones?
Se propone una reducción de la base de cálculo: ya no se considerarán conceptos como vacaciones, el aguinaldo, propinas o premios. Se impone un tope salarial como base remuneratoria, que no puede exceder 3 veces el salario promedio mensual según el convenio colectivo aplicable a la categoría del trabajador. Para desalentar discrecionalidades en litigios judiciales, las indemnizaciones se actualizarán por inflación más un plus del 3% anual. En estos casos, las sentencias podrán ser canceladas en un plazo de 6 cuotas mensuales consecutivas si se trata de grandes empresas. El plazo se estira a 12 cuotas para las pymes.
¿Quién pagará las indemnizaciones por despido?
Se crean los Fondos de Asistencia Laboral (FAL), que serán cuentas específicas e inembargables que conformarán los empleadores con el aporte obligatorio y mensual de un porcentaje de las contribuciones patronales. Será del 1% para las grandes empresas y del 2,5% para las pymes. La administración de los recursos recaerá en la Comisión Nacional de Valores. Los críticos de este esquema advierten que con esta reducción de las contribuciones patronales se desfinanciará el actual sistema previsional para abaratar los despidos.
¿Qué pasará con las vacaciones?
El empleador deberá conceder el goce de vacaciones durante el período entre el 1º de octubre y el 30 de abril del año siguiente. Las partes pueden acordar disponerlas fuera de dicho período. También de mutuo acuerdo el empleador y el trabajador podrán convenir el fraccionamiento de las vacaciones siempre que cada uno de los tramos no sea inferior a 7 días.
¿Se reducirán o se extenderán las jornadas laborales?
Se establece la posibilidad de ampliar la jornada laboral diaria de 8 a 12 horas siempre que se respete el descanso de 12 horas entre días de trabajo. Respecto de las horas extra, el empleador y el trabajador podrán acordar de manera voluntaria un régimen de compensación a partir de un banco de horas o bien francos compensatorios. Se incorporan los contratos a tiempo parcial por un período de tiempo inferior a la jornada legal.
Enfermedades y accidentes de trabajo
Este era el polémico artículo 44 de la iniciativa, incorporado por el Senado, que fue eliminado del proyecto que se discutirá en Diputados. Establecía que si un trabajador sufre un accidente o enfermedad ajenos a sus tareas laborales, recibirá el 50% de su salario básico durante 3 meses si no tiene personas a cargo o 6 meses si las tiene, siempre que el hecho derive de una actividad voluntaria y consciente. Si la incapacidad no resulta de una acción voluntaria y riesgosa, el trabajador recibirá el 75% de su salario en los mismos plazos. Se regula el trámite de aviso de enfermedad y los controles médicos, incluyendo la facultad del empleador de designar médico y el uso de juntas médicas ante discrepancias. Al desaparecer este artículo, las licencias se seguirán pagando como en la actualidad.
Antigüedad del trabajador
Se la computará desde el inicio de la relación laboral, incluyendo los sucesivos contratos a plazo que las partes hubieran celebrado. Asimismo, se computará como antigüedad el tiempo de servicio anterior en los casos en que el trabajador hubiese cesado por cualquier causa y reingrese bajo las órdenes del mismo empleador, salvo si hubiese transcurrido un plazo de tres años entre la desvinculación y su reingreso. En ese caso la antigüedad del tiempo de servicio anterior no será computada.
¿Qué pasará con las cajas sindicales?
Este punto recibió importantes modificaciones a favor de los gremios. Se mantendrá en el 6% la alícuota de aportes patronales que deberán hacer los empleadores a las obras sociales. Permanece vigente la llamada “cuota sindical” compulsiva que pagan los trabajadores (estén o no afiliados) a los gremios, aunque con un tope del 2% del salario mensual y por dos años. El tope baja al 0,5% en los aportes a las cámaras empresarias. Los empleadores seguirán siendo agentes de retención de las cuotas de afiliación a los gremios. El Gobierno mantiene firme la prioridad de los acuerdos de empresa o regionales por sobre los convenios sectoriales (los sindicatos no lograron revertir el artículo que limita la ultraactividad de los convenios colectivos).
Negociación de los convenios colectivos
El Gobierno mantiene firme la prioridad de los acuerdos de empresa o regionales por sobre los convenios sectoriales. En el caso de los convenios que estuviesen vencidos, el Ministerio de Capital Humano convocará a las partes para renegociar dichos convenios. En los convenios vigentes por ultraactividad, por petición de cualquiera de las partes legitimadas, el PEN podrá decretar la suspensión de los efectos del acto de homologación cuando se alegare que su aplicación genera distorsiones económicas graves.
¿Se prevé un régimen para los trabajadores de plataformas digitales?
El proyecto define una nueva categoría laboral para el sector de las aplicaciones. Crea la figura de repartidor independiente y habilita la libertad de formas de contrato. La iniciativa establece que este vínculo no constituye una relación laboral, sino un contrato de servicio independiente.
¿Se limita el derecho de huelga?
La reforma fija porcentajes mínimos de funcionamiento durante las huelgas, según el tipo de actividad. Los servicios “esenciales” deberán asegurar una cobertura del 75%, mientras que los servicios “trascendentales”, al menos el 50%. El proyecto amplía el número de actividades alcanzadas: se incluyen, entre otros, los servicios educativos en sus tres niveles. Las fuerzas de seguridad deberán prestar cobertura en un 100%. Las asambleas de trabajadores tendrán que contar con autorización previa del empleador.
¿Qué estatutos se derogan?
Se derogarán cuatro estatutos profesionales (viajante de comercio, peluquero, choferes particulares y operadores de radio/telegrafía) transcurridos seis meses de la sanción de la ley. El estatuto del periodista profesional se derogará a partir del 1° de enero de 2027.
La reforma contiene una serie de incentivos impositivos para la contratación de nuevos trabajadores y para la registración de aquellos que están en la informalidad. El objetivo es alentar la creación de empleo registrado, aunque los críticos señalan que estos beneficios tributarios a los empleadores contribuirán a desfinanciar el sistema previsional.
¿Qué beneficios impositivos se proponen para formalizar a los trabajadores no registrados?
El proyecto propone un programa de Promoción del Empleo Registrado (PER) destinado a regularizar relaciones laborales no registradas o deficientes, extinguiendo sanciones, deudas y acciones penales. La reglamentación correrá por cuenta del PEN una vez aprobada la ley.
¿Se prevé un nuevo blanqueo laboral?
En los hechos, sí, sostiene la oposición. El programa incluye la condonación de hasta el 70% de deudas por capital e intereses cuando esta tenga origen en la falta de pago de aportes y contribuciones a la seguridad social, la baja del Registro de Empleadores con Sanciones Laborales (Repsal) y la extinción de la acción penal prevista en el artículo 16 del Régimen Penal Tributario.
¿Qué incentivos se proponen para contratar nuevos trabajadores?
El proyecto crea el Régimen de Incentivo a la Formalización Laboral (RIFL), programa que tendrá un año de duración. Por cada nuevo trabajador, el empleador pagará menores contribuciones patronales (solo un 8%, incluido el 3% destinado al Fondo de Indemnizaciones). Las nuevas incorporaciones deberán cumplir con alguna de estas condiciones: no haber tenido una relación laboral registrada al 10 de diciembre de 2025, haber estado inscripto en el monotributo o haber sido empleado público.
La reforma introduce modificaciones en la ley de Organización y Procedimiento de la Justicia Nacional del Trabajo con el propósito de acelerar el traspaso del fuero laboral nacional -adverso a las políticas del Gobierno- a la órbita de la ciudad de Buenos Aires.
¿Qué plantea la iniciativa para reducir la litigiosidad?
Se establece que los acuerdos entre trabajadores y empleadores que se firmen ante la Justicia o una autoridad laboral y sean homologados tendrán el mismo valor que una sentencia firme; es decir, no podrán reabrirse luego en los tribunales, lo que busca reducir la litigiosidad. Asimismo, se imponen topes en los honorarios de los abogados y peritos. En los juicios laborales, el pago de las costas procesales, incluidos los honorarios profesionales, no excederán del 25% del monto de la sentencia.
¿Qué pasará con la Justicia Nacional del Trabajo?
Se incorpora como anexo el convenio firmado entre la Nación y el gobierno porteño que establece el progresivo traspaso de la Justicia Nacional de Trabajo y la transferencia de las competencias y funciones en materia laboral ordinarias a la justicia porteña por un lado, y la derivación de competencias en materia laboral de carácter federal a los juzgados en lo contencioso administrativo federal. La Nación se compromete a transferir al gobierno porteño los recursos correspondientes.
Fue uno de los capítulos más conflictivos de la reforma hasta que el Gobierno accedió, por presión de los gobernadores, a eliminar del texto la reducción del Impuesto a las Ganancias para las sociedades.
¿Habrá reducción de impuestos?
IVA: se propone su exención a la energía eléctrica utilizada en sistemas de riego para el sector agroindustrial
Internos: se elimina el gravamen a productos electrónicos; objetos suntuarios; automotores, motos, aeronaves y embarcaciones; celulares; seguros, y servicios de comunicación audiovisual.
¿Qué pasará con el financiamiento del INCAA?
En 2028 se dará de baja el fondo que financia la actividad cinematográfica, que se nutre de un impuesto del 10% sobre las entradas de cine, un 10% sobre la venta o alquiler de videogramas y un 25% de la recaudación del Enacom. El texto original preveía su eliminación inmediata.
Se crea Régimen de Incentivo para Medianas Inversiones (RIMI) para incentivar medianas inversiones nacionales y extranjeras. Entre los beneficios se destaca la amortización acelerada y devolución anticipada de IVA a inversiones. Regirá por dos años.
¿Qué sectores podrán acogerse a este régimen? ¿A partir de qué monto?
Está destinado a pequeñas y medianas empresas interesadas en invertir en la la adquisición, elaboración, fabricación y/o importación de bienes muebles nuevos -excepto automóviles-, amortizables en el Impuesto a las Ganancias, así como a la realización de obras destinadas a actividades productivas en el país. El monto de las inversiones varía según la envergadura de la empresa, de U$S 150.000 a U$S 9 millones.
¿Qué beneficios impositivos contempla?
Posibilita la amortización acelerada en el Impuesto a las Ganancias, es decir, permite a los beneficiarios depreciar sus inversiones productivas en plazos más cortos. Facilita, además, la devolución de saldos a favor de IVA generados por las inversiones, sujeta a un cupo presupuestario anual y a un plazo de tres períodos fiscales.
reforma laboral,artículo 44,Laura Serra,Reforma laboral,Javier Milei,Conforme a,Reforma laboral,,Sesión caliente. Del himno peronista de Kelly Olmos al exabrupto de Agustina Propato: las perlitas del debate por la reforma laboral,,“El cambio avanza”. Las primeras reacciones del arco político a la aprobación de la reforma laboral en Diputados,,“El fin de la industria del juicio”. El comunicado de la Oficina del Presidente tras la aprobación de la reforma laboral en Diputados
POLITICA
El Gobierno prepara la hoja de ruta de las reformas para el 2026 y podría anunciar algunas en la Apertura de Sesiones del Congreso

La reforma laboral es el primero de varios peldaños legislativos que el Gobierno quiere subir en su aspiración de hacer del 2026 un año propositivo en el Congreso. En el entorno del presidente Javier Milei marcan que la coordinación de la mesa política ha proporcionado un mejor diálogo con los aliados circunstanciales, que a su vez están más definidos. “Se forjó un ida y vuelta de mayor confianza con ellos y eso ayuda a conseguir los votos cuando precisamos”,
En la Casa Rosada consideran que el proyecto de Modernización Laboral era de los más controvertidos que se podían tratar a lo largo de todo el año.
Su temprano tratamiento tuvo que ver con las prioridades estructurales del Gobierno -Milei cree que el mercado laboral debe reorganizarse para que luego posibilite otros proyectos transformadores-, pero buscó seguir aprovechando la colaboración que están dispuestos a dar ciertos aliados circunstanciales: es probable que a fin de año algunos de ellos no estén más, ya que La Libertad Avanza apuntará a quitarle la gobernación a algunos de ellos.
El Poder Ejecutivo envió diferentes iniciativas al Congreso a lo largo de las sesiones extraordinarias. Es muy probable que priorice terminar de tratarlas todas antes de impulsar otras agendas. Pero en el entorno de operadores políticos del Presidente ya están pensando en una hoja de ruta para establecer nuevos proyectos en los próximos meses.
Una altísima fuente oficial comentó a Infobae que están esperando a que Javier Milei vuelva de Washington este viernes para poder empezar a dialogar sobre esa cuestión.

En el Gobierno están diseñando un esquema distintos para definir qué secuencilidad de reformas presentar este año. “En el pasado lo que sucedía es que cada uno de los ministerios definía su hoja de ruta y después se comunicaba automáticamente”, marca un funcionario a este medio. La idea que piensan ahora es centralizar aún más las tareas políticas: “Ahora son las carteras las que tienen que decir qué hitos quieren realizar este año y es a través de la Jefatura de Gabinete que se diseña el esquema de cómo se hará”.
Es muy posible que en la próxima semana pueda darse una reunión que sirva para determinar algunos ejes que contribuyan al discurso de Milei en la Apertura de Sesiones Ordinarias del Congreso, el cual se dará el 1 de marzo a la noche.
Allegados al Presidente lo han escuchado decir que cada uno de los ministerios nacionales tiene más de 10 paquete de proyectos de ley. “Es claramente menos, pero quiso decir que hay una intención fuerte de pegarle fuerte y al medio con los proyectos. Es ahora o nunca”, marcan en su entorno.
El oficialismo reconoce internamente que el margen de maniobra para aprobar iniciativas relevantes se irá reduciendo en los próximos meses, a medida que se aproxime el ciclo electoral y disminuyan las posibilidades de acuerdos con sectores dialoguistas de la oposición.
Para la sesión de ayer en la Cámara de Diputados, el bloque de La Libertad Avanza reconoció que consiguió apoyos de gobernadores como Raúl Jalil (Catamarca), Hugo Passalacqua (Misiones), Gustavo Sáenz (Salta), Osvaldo Jaldo (Tucumán), Rolando Figueroa (Neuquén) y Claudio Vidal (Santa Cruz). “Vamos a tener que competir con algunos de los que hoy nos acompañan. Por eso lo más relevante hay que hacerlo lo antes posible”, apuntan desde el oficialismo. Un motivo más para la urgencia de las reformas.
Se espera que a lo largo de 2026 lleguen al Congreso diversas iniciativas. Hay algunas de importante peso como la reforma del Código Penal, la impositiva y electoral que tienen altísima prioridad y que serán enviadas con la mayor proximidad posible.
En Balcarce 50 buscan ampliar las condiciones para la llegada de inversiones y proyectos en el país. También para liberalizar el esquema comercial. Es en ese plano que buscarán terminar de sancionar el Acuerdo Mercosur-Unión Europea, así como enviar los aspectos nodales del Tratado Comercial con Estados Unidos que precisan ratificación parlamentaria.

La reducción de impuestos y el alivio sobre empresas y personas son objetivos centrales de la administración libertaria. Se discuten alternativas como la reducción en el impuesto a las Ganancias y estímulos para mercados, junto a la eventual implementación de un “IVA dividido”, una idea dada a conocer por el ministro Caputo. La discusión gira en torno a cómo equilibrar esos incentivos con la preservación de la estabilidad fiscal.
Uno de los temas pendientes es la extensión del régimen de promoción para energías renovables, que propone prorrogar por veinte años la estabilidad tributaria del sector. Este proyecto, inicialmente previsto en el Capítulo XI del presupuesto, quedó en suspenso tras quedar fuera de la reforma laboral, y ahora su incorporación podría darse de manera individual o como parte de una reforma energética más abarcativa. También está en debate una reforma sobre el régimen de zona fría, aunque por ahora permaneció fuera del temario principal.
Aún sin precisiones técnicas, los funcionarios avanzan en el diseño de un proyecto legislativo que reúna casi todos los asuntos originalmente incorporados en el capítulo XI, con excepción de la Ley de Financiamiento Universitario, para cuyo tratamiento el Gobierno ya propuso un enfoque alternativo, aunque sin la adhesión del Consejo Interuniversitario Nacional (CIN), que el lunes publicó un comunicado rechazando tajantemente la alternativa oficial y pidiendo la apertura urgente de paritarias.
Dado que un sector de los equipos técnicos de la Presidencia consideran que es asimilable a un tratado internacional, la adhesión de Argentina al Consejo de Paz que lidera Donald Trump también tendrá será presentado en el Congreso este año. Queda como cuenta pendiente que el Senado tramite el placet de Fernando Iglesias como embajador en la Unión Europea y Bélgica.
Este último podría tratarse el 26 de febrero en el Senado junto con la Ley de Glaciares, el convenio Mercosur-UE y la baja de la edad de imputabilidad en menores hacia los 14 años.
horizontal,politics
POLITICA
Cristina Kirchner saludó a militantes con motivo de su cumpleaños

La expresidenta Cristina Fernández de Kirchner saludó desde el balcón de su domicilio en el barrio porteño de Constitución a militantes que se reunieron en el lugar con motivo de su cumpleaños.
Se trató de una aparición breve y la primera luego de su internación.
En la misma jornada, la organización La Cámpora puso en marcha un operativo de pintadas callejeras para saludar a la expresidenta por su cumpleaños número 73 y pedir por su libertad.
En paralelo, utilizó la misma metodología para dejar mensajes contra el proyecto de reforma laboral, que se vota este jueves en la Cámara de Diputados.
“Queremos a Cristina” y “No a la reforma laboral” fueron los mensajes que la agrupación que lidera Máximo Kirchner dejó asentados en paredones de distintos puntos del país. En sus cuentas en redes sociales, La Cámpora mostró las pintadas.

La expresidenta cumple prisión domiciliaria en un departamento de la calle San José 111, en el barrio porteño de Constitución. La Justicia limitó los tiempos para que reciba visitas y sus abogados intentan flexibilizar ese régimen, objetivo en el que no tuvieron éxito hasta el momento.

El de este 19 de febrero es el primer cumpleaños que Cristina Kirchner pasa en prisión domiciliaria. Su condena en la causa Vialidad, a seis años de prisión por corrupción, quedó confirmada en junio de 2025.

reforma laboral,pic.twitter.com/RbuOm7v3ES,February 19, 2026,Cristina Kirchner,La Cámpora,Mayra Mendoza,Conforme a,,Reforma laboral. El artículo clave que el ministro Luis Caputo pide que no se toque y la oposición buscará voltear,,»Extorsión a la gente». El Gobierno buscó minimizar el impacto del paro y criticó a la CGT y a la izquierda,,Apuro oficialista. Avanzó en el Senado la ratificación del acuerdo entre el Mercosur y la Unión Europea,Cristina Kirchner,,Las mentiras de Cristina Kirchner y de su abogado,,Ejecución demorada. Convocan a una audiencia para definir el decomiso de los bienes de Cristina Kirchner,,Pintadas y mensajes. La Cámpora activó un operativo para saludar a Cristina por su cumpleaños y rechazar la reforma laboral
POLITICA
Uno por uno, qué diputados votaron a favor de la reforma laboral y cuáles en contra

${status}
`;
}
function createCard(item, borderColor) {
const card = document.createElement(«div»);
card.className = «vd2__card»;
const fotoWrap = document.createElement(«div»);
fotoWrap.className = «vd2__foto»;
if (borderColor) {
fotoWrap.style.borderColor = borderColor;
} else {
fotoWrap.style.opacity = «0.3»;
fotoWrap.style.border = «none»;
}
const img = document.createElement(«img»);
img.loading = «lazy»;
img.decoding = «async»;
img.alt = «foto-diputado»;
img.src = photoBase + (item.url_foto || «»);
img.addEventListener(«error», () => {
img.style.opacity = «0.35»;
}, {
once: true
});
fotoWrap.appendChild(img);
const nombre = document.createElement(«p»);
nombre.className = «vd2__nombre»;
nombre.textContent = String(item.nombres || «»).toLowerCase();
const apellido = document.createElement(«p»);
apellido.className = «vd2__apellido»;
apellido.textContent = String(item.apellido || «»).toLowerCase();
const bloque = document.createElement(«span»);
bloque.className = «vd2__bloque»;
bloque.textContent = String(item.bloque || «»);
card.appendChild(fotoWrap);
card.appendChild(nombre);
card.appendChild(apellido);
card.appendChild(bloque);
return card;
}
function seatClass(kind) {
if (kind === «AFIRMATIVO») return «vd2__seat–afirmativo»;
if (kind === «NEGATIVO») return «vd2__seat–negativo»;
if (kind === «ABSTENCIÓN») return «vd2__seat–abstencion»;
if (kind === «AUSENTE») return «vd2__seat–ausente»;
return «vd2__seat–empty»;
}
function hemicicloParams(which) {
// Basado en la distribución original para Diputados (257)
const seatsPerRow = [38, 36, 33, 30, 27, 24, 21, 19, 16, 13]; // suma 257
if (which === «big») {
return {
centerX: 300,
baseY: 450,
rows: 10,
seatsPerRow,
verticalOffset: 2,
radiusStart: 300,
radiusStep: 30
};
}
return {
centerX: 300,
baseY: 450,
rows: 10,
seatsPerRow,
verticalOffset: 2,
radiusStart: 170,
radiusStep: 16
};
}
function computeRowSeatCounts(seatsPerRow, totals) {
const totalSeats = seatsPerRow.reduce((a, b) => a + b, 0);
return seatsPerRow.map(seatsInRow => {
const exact = {
AFIRMATIVO: (totals.AFIRMATIVO / totalSeats) * seatsInRow,
NEGATIVO: (totals.NEGATIVO / totalSeats) * seatsInRow,
«ABSTENCIÓN»: (totals[«ABSTENCIÓN»] / totalSeats) * seatsInRow,
AUSENTE: (totals.AUSENTE / totalSeats) * seatsInRow
};
const floor = {
AFIRMATIVO: Math.floor(exact.AFIRMATIVO),
NEGATIVO: Math.floor(exact.NEGATIVO),
«ABSTENCIÓN»: Math.floor(exact[«ABSTENCIÓN»]),
AUSENTE: Math.floor(exact.AUSENTE)
};
let assigned = floor.AFIRMATIVO + floor.NEGATIVO + floor[«ABSTENCIÓN»] + floor.AUSENTE;
let diff = seatsInRow – assigned;
const rems = [{
k: «AFIRMATIVO»,
r: exact.AFIRMATIVO – floor.AFIRMATIVO
},
{
k: «NEGATIVO»,
r: exact.NEGATIVO – floor.NEGATIVO
},
{
k: «ABSTENCIÓN»,
r: exact[«ABSTENCIÓN»] – floor[«ABSTENCIÓN»]
},
{
k: «AUSENTE»,
r: exact.AUSENTE – floor.AUSENTE
},
].sort((a, b) => b.r – a.r);
while (diff > 0) {
for (const it of rems) {
if (diff <= 0) break;
floor[it.k] += 1;
diff–;
}
}
return floor;
});
}
function renderHemiciclo(which, totals) {
const el = byRole(which === «big» ? «hemiciclo-big» : «hemiciclo-small»);
if (!el) return;
el.innerHTML = «»;
const p = hemicicloParams(which);
let rowSeatCounts = computeRowSeatCounts(p.seatsPerRow, totals);
const maxSeatsInRow = p.seatsPerRow[0];
for (let col = 0; col < maxSeatsInRow; col++) {
for (let row = 0; row < p.rows; row++) {
if (col >= p.seatsPerRow[row]) continue;
const seatsInThisRow = p.seatsPerRow[row];
const radius = p.radiusStart – row * (p.radiusStep – p.verticalOffset);
const angleRange = Math.PI;
const angleStep = (seatsInThisRow > 1) ? angleRange / (seatsInThisRow – 1) : 0;
const angle = (Math.PI – angleRange) / 2 + col * angleStep;
const x = p.centerX + radius * Math.cos(angle);
const y = p.baseY – radius * Math.sin(angle);
let kind = «EMPTY»;
if (rowSeatCounts[row].AFIRMATIVO > 0) {
kind = «AFIRMATIVO»;
rowSeatCounts[row].AFIRMATIVO–;
} else if (rowSeatCounts[row].NEGATIVO > 0) {
kind = «NEGATIVO»;
rowSeatCounts[row].NEGATIVO–;
} else if (rowSeatCounts[row][«ABSTENCIÓN»] > 0) {
kind = «ABSTENCIÓN»;
rowSeatCounts[row][«ABSTENCIÓN»]–;
} else if (rowSeatCounts[row].AUSENTE > 0) {
kind = «AUSENTE»;
rowSeatCounts[row].AUSENTE–;
}
const seat = document.createElement(«div»);
seat.className = «vd2__seat » + seatClass(kind);
seat.style.left = x + «px»;
seat.style.top = y + «px»;
el.appendChild(seat);
}
}
}
function populateFilters(data) {
const selProv = byRole(«select-provincia»);
const selBloq = byRole(«select-bloque»);
if (!selProv || !selBloq) return;
const provSet = new Set();
const bloqSet = new Map(); // bloque -> full
data.forEach(r => {
if (r.provincia) provSet.add(r.provincia);
if (r.bloque) bloqSet.set(r.bloque, r.bloque_full || r.bloque);
});
Array.from(provSet).sort().forEach(p => {
const opt = document.createElement(«option»);
opt.value = p;
opt.textContent = p;
selProv.appendChild(opt);
});
Array.from(bloqSet.entries())
.sort((a, b) => String(a[0]).localeCompare(String(b[0])))
.forEach(([code, full]) => {
const opt = document.createElement(«option»);
opt.value = code;
opt.textContent = `${full} (${code})`;
selBloq.appendChild(opt);
});
}
function renderFiltered(data, field, value, targetEl) {
targetEl.innerHTML = «»;
const rows = data.filter(r => value === «all» || r[field] === value);
const order = [«AFIRMATIVO», «NEGATIVO», «ABSTENCIÓN», «AUSENTE»];
const colorBy = {
AFIRMATIVO: «#00A377»,
NEGATIVO: «#c90808»,
«ABSTENCIÓN»: «#444″,
AUSENTE: null
};
order.forEach(voto => {
rows.filter(r => normalizeVoto(r.voto) === voto).forEach(r => {
targetEl.appendChild(createCard(r, colorBy[voto]));
});
});
}
function wireUI(data) {
// toggles
$$(‘[data-role=»section»], [data-role=»filter-provincia»], [data-role=»filter-bloque»]’).forEach(sec => {
const btn = sec.querySelector(‘[data-role=»toggle»]’);
if (!btn) return;
btn.addEventListener(«click», () => {
const open = sec.getAttribute(«data-open») !== «true»;
openPanel(sec, open);
});
});
// abrir por defecto secciones principales, y dejar filtros cerrados
$$(‘[data-role=»section»]’).forEach(sec => openPanel(sec, true));
$$(‘[data-role=»filter-provincia»], [data-role=»filter-bloque»]’).forEach(sec => openPanel(sec, false));
// go top
const goTop = byRole(«go-top»);
if (goTop) {
goTop.addEventListener(«click», () => root.scrollIntoView({
behavior: «smooth»
}));
const obs = new IntersectionObserver((entries) => {
entries.forEach(e => {
goTop.style.display = e.isIntersecting ? «block» : «none»;
});
}, {
threshold: 0.1
});
obs.observe(root);
}
// filtros
const selProv = byRole(«select-provincia»);
const selBloq = byRole(«select-bloque»);
const provOut = byRole(«provincia-results»);
const bloqOut = byRole(«bloque-results»);
if (selProv && provOut) {
selProv.addEventListener(«change», (e) => {
renderFiltered(data, «provincia», e.target.value, provOut);
const sec = byRole(«filter-provincia»);
if (sec) openPanel(sec, true);
});
}
if (selBloq && bloqOut) {
selBloq.addEventListener(«change», (e) => {
renderFiltered(data, «bloque», e.target.value, bloqOut);
const sec = byRole(«filter-bloque»);
if (sec) openPanel(sec, true);
});
}
}
async function init() {
setLoaded(false);
const csvUrl = root.dataset.csvUrl;
if (!csvUrl) {
const summary = byRole(«summary»);
if (summary) summary.innerHTML = `
Error: falta data-csv-url
`;
return;
}
try {
const Papa = await ensurePapa();
Papa.parse(csvUrl, {
download: true,
header: true,
skipEmptyLines: true,
complete: function(res) {
const data = (res && res.data) ? res.data : [];
// panels por voto
const panelByVote = {};
$$(‘[data-role=»section»]’).forEach(sec => {
const voto = sec.getAttribute(«data-voto»);
const panel = sec.querySelector(‘[data-role=»panel»]’);
if (voto && panel) panelByVote[voto] = panel;
});
const counts = {
AFIRMATIVO: 0,
NEGATIVO: 0,
«ABSTENCIÓN»: 0,
AUSENTE: 0
};
const colorBy = {
AFIRMATIVO: «#00A377»,
NEGATIVO: «#c90808»,
«ABSTENCIÓN»: «#444″,
AUSENTE: null
};
data.forEach(row => {
const voto = normalizeVoto(row.voto);
if (!counts.hasOwnProperty(voto)) return;
counts[voto]++;
const panel = panelByVote[voto];
if (panel) {
panel.appendChild(createCard(row, colorBy[voto]));
}
});
// counts en UI
$$(‘[data-role=»count»]’).forEach(el => {
const k = el.getAttribute(«data-kind»);
if (k && counts.hasOwnProperty(k)) el.textContent = String(counts[k]);
});
// hemiciclo + summary
renderHemiciclo(«big», counts);
renderHemiciclo(«small», counts);
renderSummary(counts);
// filtros + ui
populateFilters(data);
wireUI(data);
setLoaded(true);
// recalcular heights en secciones abiertas
$$(‘[data-role=»section»]’).forEach(sec => openPanel(sec, true));
}
});
} catch (err) {
console.error(err);
const summary = byRole(«summary»);
if (summary) {
summary.innerHTML = `
Error: ${escapeHtml(err.message || err)}
`;
}
}
}
init();
})();
POLITICA2 días agoReforma laboral bomba: menos indemnización, más horas y despidos más fáciles — el cambio que puede sacudir el empleo en Argentina
POLITICA2 días agoEl Gobierno endurece las medidas de seguridad y control en la marcha prevista contra la reforma laboral en el Congreso
INTERNACIONAL3 días agoHouse Dem’s graphic chicken decapitation ‘horrified’ her college roommates: ‘Blood went everywhere’
















