{
  "probation-period-end-date-calculator": {
    "heading": "Fin del periodo de prueba en Francia: fecha, renovación y preaviso",
    "subheading": "Duraciones máximas del Código de Trabajo de Francia (arts. L1221-19, L1221-21 y L1242-10), cómputo en días naturales y prórroga por ausencias.",
    "contract_title": "Contrato",
    "contract_label": "Tipo de contrato",
    "contract_cdi": "CDI (contrato indefinido)",
    "contract_cdd": "CDD (contrato temporal)",
    "start_label": "Primer día de trabajo",
    "start_hint": "El periodo de prueba empieza el primer día de trabajo y termina a medianoche del último día, aunque sea domingo o festivo.",
    "category_label": "Categoría",
    "category_employee": "Obreros y empleados (2 meses, 4 renovado)",
    "category_supervisor": "Mandos intermedios y técnicos (3 meses, 6 renovado)",
    "category_executive": "Directivos, cadres (4 meses, 8 renovado)",
    "initial_label": "Duración inicial en el contrato (meses)",
    "initial_hint": "Máximo legal: {{initial}} (L1221-19), {{total}} con la renovación (L1221-21). El contrato o un convenio colectivo puede fijar menos.",
    "renewal_label": "Renovación prevista: convenio de rama extendido, cláusula en el contrato y acuerdo escrito del trabajador durante el periodo inicial",
    "renewal_months_label": "Duración de la renovación (meses)",
    "cdd_end_label": "Fin del CDD (o de su duración mínima)",
    "cdd_days_label": "Periodo de prueba del contrato (días)",
    "cdd_hint": "Máximo legal: {{max}} (1 día por semana completa de contrato, con un tope de 2 semanas hasta 6 meses y de 1 mes por encima, L1242-10). Sin renovación en CDD.",
    "absences_title": "Ausencias durante la prueba",
    "absences_hint": "Enfermedad, vacaciones, días de RTT: la prueba se prolonga tantos días naturales como dure la ausencia, fines de semana incluidos (Cour de cassation, 11 de septiembre de 2019, n.º 17-21.976). Un festivo por sí solo no la prolonga.",
    "absence_from": "Ausencia {{n}}: desde",
    "absence_to": "Ausencia {{n}}: hasta (incluido)",
    "remove_absence": "Eliminar la ausencia {{n}}",
    "add_absence": "Añadir una ausencia",
    "result_title": "Fin del periodo de prueba",
    "copy_label": "Copiar",
    "answer_initial": "Prueba de {{duration}}: termina el {{end}} a medianoche.",
    "answer_renewed": "Renovada ({{duration}} en total): termina el {{end}}.",
    "period_initial": "Periodo inicial ({{duration}})",
    "period_renewed": "Tras la renovación ({{duration}} en total)",
    "absence_ext": "Prolongada {{days}} por ausencia (sin ausencias: {{base}}).",
    "employer_deadline": "Ruptura por la empresa: notificar a más tardar el {{date}} (preaviso de {{notice}}).",
    "employer_deadline_none": "Ruptura por la empresa: posible hasta el {{date}} incluido, sin preaviso legal (prueba de menos de una semana).",
    "employer_impossible": "Ruptura por la empresa: el preaviso ya no puede cumplirse entero. La prueba no se prolonga; el trabajador tiene derecho a una indemnización compensatoria.",
    "employee_deadline": "Ruptura por el trabajador: avisar a más tardar el {{date}} (preaviso de {{notice}}).",
    "employee_impossible": "Ruptura por el trabajador: el preaviso ya no puede cumplirse entero.",
    "notice_h24": "24 horas",
    "notice_h48": "48 horas",
    "notice_w2": "2 semanas",
    "notice_m1": "1 mes",
    "invalid_start": "Introduzca una fecha de inicio válida.",
    "no_trial": "Sin periodo de prueba: el CDD es demasiado corto o la duración es cero.",
    "warn_initial": "Duración inicial superior al máximo legal de {{max}} (L1221-19).",
    "warn_total": "Duración total superior al máximo legal de {{max}} con la renovación (L1221-21).",
    "warn_cdd": "Duración superior al máximo legal de {{max}} para este CDD (L1242-10).",
    "months_one": "{{count}} mes",
    "months_other": "{{count}} meses",
    "days_one": "{{count}} día",
    "days_other": "{{count}} días",
    "rules_title": "Reglas aplicadas",
    "rule_count": "Cómputo en días naturales (Cour de cassation, 29 de junio de 2005, n.º 02-45.701), de fecha a fecha si la duración es en meses; una prueba que termina en sábado, domingo o festivo no se prorroga (Cour de cassation, 10 de junio de 1992, n.º 88-45.755). Inicio un día 29, 30 o 31 sin fecha equivalente: termina el último día del mes.",
    "rule_notice": "Preaviso (L1221-25 empresa, L1221-26 trabajador) según la presencia en la empresa el día de la notificación, ese día incluido; corre desde el día siguiente. No prolonga la prueba: si no se respeta, da derecho a una indemnización compensatoria, salvo falta grave.",
    "rule_renewal": "Renovación: una sola vez, solo en CDI, si un convenio de rama extendido lo prevé, el contrato lo estipula y el trabajador lo acepta expresamente antes del fin del periodo inicial (L1221-21, L1221-23).",
    "rule_convention": "Desde el 9 de septiembre de 2023, solo se puede apartarse de los máximos legales con duraciones más cortas: convenio colectivo posterior a la ley de 25 de junio de 2008 o contrato de trabajo (L1221-22). Consulte su convenio colectivo."
  },
  "mexico-ptu-profit-sharing-calculator": {
    "heading": "Calculadora de PTU en México",
    "subheading": "10 % de la renta gravable, mitad por días trabajados, mitad por salarios, tope del art. 127 LFT e ISR.",
    "mode_worker": "Mi PTU (totales de la empresa)",
    "mode_team": "Reparto completo (1 a 10 trabajadores)",
    "company_title": "Empresa",
    "renta": "Renta gravable del ejercicio (pesos)",
    "percent": "Porcentaje (%)",
    "fund": "Utilidad repartible",
    "total_days": "Total de días trabajados (todos los trabajadores)",
    "total_salaries": "Total de salarios del año (todos los trabajadores)",
    "totals_hint": "Totales de la empresa, usted incluido, sin las personas excluidas (dirección, eventuales con menos de 60 días) y con el salario de los trabajadores de confianza ya topado al 120 %. La empresa los entrega a la comisión mixta de PTU.",
    "worker_title": "Trabajador",
    "days": "Días trabajados en el año",
    "daily": "Salario diario (pesos)",
    "type": "Tipo de puesto",
    "type_planta": "De planta",
    "type_confianza": "De confianza",
    "type_eventual": "Eventual",
    "type_direccion": "Director, administrador, gerente general",
    "avg3": "PTU promedio de los últimos 3 años (opcional)",
    "ref_daily": "Salario diario del sindicalizado de más alto salario (a falta de éste, del trabajador de planta)",
    "daily_hint": "Cuota diaria en efectivo, sin tiempo extra ni gratificaciones (art. 124 LFT). Salarios del año = salario diario × días trabajados.",
    "isr_title": "ISR y UMA",
    "with_isr": "Estimar el ISR retenido (15 UMA exentas)",
    "uma": "UMA diaria (pesos)",
    "params_note": "UMA 2026: 117.31 pesos (INEGI, DOF del 09/01/2026, vigente desde el 01/02/2026). Porcentaje de 10 % mantenido por la Sexta Comisión Nacional (DOF del 18/09/2020). ISR conforme al art. 96 LISR, tarifa mensual del Anexo 8 de la RMF 2026. Valores consultados el 23/10/2026.",
    "invalid_input": "Capture números positivos; los totales de la empresa deben ser mayores que cero.",
    "excluded_direccion": "Sin PTU: directores, administradores y gerentes generales no participan (art. 127 fr. I LFT).",
    "excluded_eventual": "Sin PTU: un trabajador eventual debe haber trabajado al menos 60 días en el año (art. 127 fr. VII LFT).",
    "result_label": "PTU bruta a recibir",
    "net_result": "Neto estimado: {{net}} tras {{tax}} de ISR.",
    "detail_title": "Detalle del cálculo",
    "by_days_line": "Mitad por días: {{fund}} × {{days}} ÷ {{total}} días",
    "by_salary_line": "Mitad por salarios: {{fund}} × {{salary}} ÷ {{total}}",
    "gross_line": "PTU antes del tope",
    "cap_line_90": "Tope: 3 meses de salario, es decir 90 × {{daily}} (art. 127 fr. VIII LFT)",
    "cap_line_avg3": "Tope: promedio de los últimos 3 años, más favorable que 3 meses de salario (art. 127 fr. VIII LFT)",
    "excess_line": "Excedente no pagado (tope)",
    "payable_line": "PTU a pagar",
    "exempt_line": "Parte exenta (15 UMA = {{cap}})",
    "isr_line": "ISR de la parte gravada, sumada al sueldo mensual de {{monthly}} (art. 96 LISR)",
    "net_line": "PTU neta estimada",
    "team_title": "Trabajadores",
    "col_days": "Días",
    "col_daily": "Salario diario",
    "col_type": "Puesto",
    "col_avg3": "Promedio 3 años",
    "row_label": "Trabajador {{n}}: {{field}}",
    "remove_row": "Quitar al trabajador {{n}}",
    "add_row": "Agregar un trabajador",
    "team_hint": "Deje vacío el salario de referencia para tomar el salario de planta más alto de la lista. El salario de un trabajador de confianza se topa al 120 % de ese salario en la mitad por salarios (art. 127 fr. II LFT).",
    "team_summary": "Utilidad repartible {{fund}}; {{days}} días y {{salaries}} de salarios considerados; tope de salario de confianza {{ref}} diarios. Total pagado: {{paid}}.",
    "col_by_days": "Por días",
    "col_by_salary": "Por salarios",
    "col_cap": "Tope",
    "col_payable": "PTU bruta",
    "col_net": "Neto estimado",
    "capped": "topada, {{excess}} no pagados",
    "deadline_note": "Se paga dentro de los 60 días siguientes a la fecha límite de la declaración anual (art. 122 LFT): a más tardar el 30 de mayo para personas morales y el 29 de junio para personas físicas. La PTU no cobrada se suma a la utilidad repartible del año siguiente."
  },
  "morocco-seniority-bonus-calculator": {
    "title": "Prima de antigüedad en Marruecos (artículo 350)",
    "subtitle": "Porcentaje legal según los años de servicio, prima mensual y anual, fecha del próximo tramo.",
    "inputs": "Su situación",
    "start": "Fecha de ingreso en la empresa",
    "at": "Fecha de cálculo",
    "salary": "Salario base mensual bruto (MAD)",
    "extras": "Complementos que se incluyen (MAD al mes)",
    "extras_hint": "Artículo 353: complementos del salario y recargos por horas extra. Excluidos: prestaciones familiares, propinas, gratificaciones, participación en beneficios, reembolsos de gastos, pluses de responsabilidad o de trabajos penosos, sustituciones temporales.",
    "scale": "Baremo utilizado (editable)",
    "scale_years": "Tras (años de servicio)",
    "scale_rate": "Porcentaje (%)",
    "scale_years_aria": "Tramo {{n}}: años de servicio",
    "scale_rate_aria": "Tramo {{n}}: porcentaje",
    "reset": "Volver al baremo legal",
    "source": "Baremo por defecto: artículo 350 del Código del Trabajo de Marruecos (Ley n.º 65-99, Boletín Oficial n.º 5210 del 6 de mayo de 2004), texto consolidado del Ministerio de Justicia, comprobado el 23 de octubre de 2026.",
    "result": "Resultado",
    "copy": "Copiar",
    "per_month": "{{amount}} / mes",
    "answer": "Prima de antigüedad en Marruecos: {{rate}} % de {{base}}, es decir {{monthly}} al mes y {{annual}} al año.",
    "answer_none": "Todavía no hay prima de antigüedad: se debe tras {{years}} años de servicio (artículo 350).",
    "rate": "Porcentaje aplicable",
    "annual": "Prima anual (12 meses)",
    "base": "Base mensual",
    "seniority": "Antigüedad en la fecha de cálculo",
    "seniority_value": "{{y}}, {{m}} y {{d}}",
    "years_one": "{{count}} año",
    "years_other": "{{count}} años",
    "months_one": "{{count}} mes",
    "months_other": "{{count}} meses",
    "days_one": "{{count}} día",
    "days_other": "{{count}} días",
    "next": "Próximo tramo: {{rate}} % a partir del {{date}} ({{years}} años de servicio), es decir {{monthly}} al mes con el mismo salario.",
    "max": "Porcentaje máximo del baremo alcanzado: {{rate}} %.",
    "invalid": "Revise las fechas (la de cálculo debe ser posterior a la de ingreso) y el salario.",
    "note_exception": "Artículo 350: la prima no se suma si el salario ya se basa en la antigüedad por contrato, reglamento interno o convenio colectivo, que también pueden mejorarla.",
    "note_services": "Artículos 351 y 352: cuentan los servicios, continuos o no, con el mismo empleador; vacaciones y suspensiones del contrato (enfermedad, maternidad…) no se descuentan. Un periodo ya pagado con una indemnización por despido deja de contar.",
    "note_commission": "Artículo 354: si se cobra a comisión, por rendimiento o a destajo, la base es la media de la remuneración neta de los tres meses anteriores."
  },
  "morocco-severance-pay-calculator": {
    "title": "Indemnización por despido en Marruecos",
    "subtitle": "Indemnización legal (artículos 52 a 58 del Código del Trabajo) y daños y perjuicios por despido abusivo (artículo 41).",
    "inputs": "Su situación",
    "reason": "Motivo del despido (contrato indefinido)",
    "reason_valid": "Despido por una causa válida",
    "reason_abusive": "Despido abusivo (declarado por el tribunal)",
    "reason_gross": "Despido por falta grave (artículo 61)",
    "start": "Fecha de ingreso",
    "end": "Fecha de extinción del contrato",
    "salary": "Salario mensual medio bruto (MAD)",
    "salary_hint": "Media de las 52 semanas anteriores a la extinción (artículo 55): salario, primas ligadas al trabajo, ventajas en especie, comisiones y propinas (artículo 57). No puede ser inferior al salario mínimo legal (artículo 56).",
    "fraction": "Fracción de año (meses más allá de los años completos)",
    "fraction_prorata": "A prorrata de los meses cumplidos",
    "fraction_full": "Todo año empezado cuenta entero",
    "delegate": "Delegado de personal o representante sindical despedido durante su mandato (artículo 58: +100 %)",
    "scale": "Baremo y parámetros (editables)",
    "scale_band": "{{band}}: horas por año",
    "band_1": "Años 1 a 5",
    "band_2": "Años 6 a 10",
    "band_3": "Años 11 a 15",
    "band_4": "Más de 15 años",
    "hours_per_month": "Horas al mes (salario por hora)",
    "damages_per_year": "Daños y perjuicios: meses por año",
    "damages_cap": "Tope de daños y perjuicios (meses)",
    "hours_hint": "Salario por hora = salario mensual ÷ 191 h (2.288 h al año, artículo 184; 191 h equivalen a un mes, artículo 238). En la agricultura, 208 h (2.496 h al año).",
    "reset": "Volver a los valores legales",
    "source": "Valores por defecto: artículos 41, 53, 184 y 238 del Código del Trabajo de Marruecos (Ley n.º 65-99, Boletín Oficial n.º 5210 del 6 de mayo de 2004), texto consolidado del Ministerio de Justicia, comprobado el 23 de octubre de 2026.",
    "legal_title": "Indemnización legal por despido",
    "copy": "Copiar",
    "answer": "Indemnización por despido en Marruecos: {{amount}}, es decir {{hours}} horas de salario para un sueldo mensual de {{salary}}.",
    "answer_gross": "Falta grave: no se debe ninguna indemnización por despido (artículo 61).",
    "answer_short": "Sin indemnización legal: se exigen al menos 6 meses en la misma empresa (artículo 52).",
    "seniority": "Antigüedad",
    "seniority_value": "{{y}} y {{m}}",
    "years_one": "{{count}} año",
    "years_other": "{{count}} años",
    "months_one": "{{count}} mes",
    "months_other": "{{count}} meses",
    "counted_years": "Años computados",
    "hourly": "Salario por hora",
    "col_band": "Tramo de antigüedad",
    "col_years": "Años",
    "col_hours": "Horas de salario",
    "total": "Total",
    "delegate_note": "Importe duplicado: recargo del 100 % del artículo 58.",
    "damages_title": "Daños y perjuicios por despido abusivo (artículo 41)",
    "damages_line": "{{months}} meses de salario: {{per}} meses por año computado × {{years}}, con un tope de {{cap}} meses.",
    "damages_capped": "Tope alcanzado.",
    "damages_note": "Baremo que aplica el tribunal cuando declara el despido abusivo sin ordenar la readmisión (artículo 41). En la conciliación previa, el importe se negocia. Se suma a la indemnización legal, debida en todo caso salvo falta grave (artículos 52 y 53), y al preaviso (artículo 59).",
    "grand_total": "Indemnización legal + daños y perjuicios",
    "gross_note": "La falta grave también elimina el preaviso y los daños y perjuicios (artículo 61). Si el juez descarta la falta grave, el despido puede declararse abusivo: elija entonces ese motivo.",
    "invalid": "Revise las fechas (la extinción debe ser posterior al ingreso), el salario y las horas al mes.",
    "note_notice": "No incluidos: el preaviso (artículo 51, duración fijada por decreto según antigüedad y categoría), las vacaciones pendientes y la prestación por pérdida de empleo de la CNSS.",
    "note_fraction": "Los artículos 41 y 53 cuentan «cada año o fracción de año» sin precisar cómo: por defecto, la fracción se cuenta a prorrata de los meses cumplidos."
  },
  "argentina-cuit-cuil-validator": {
    "title": "Validador de CUIT / CUIL (Argentina)",
    "subtitle": "Valide un CUIT o CUIL de Argentina y calcule el CUIL a partir del DNI (módulo 11).",
    "validate_title": "Validar CUIT o CUIL",
    "input_label": "CUIT o CUIL (11 dígitos)",
    "input_hint": "Con o sin guiones: 20-12345678-6 o 20123456786.",
    "empty": "Escriba un CUIT o CUIL para validarlo.",
    "valid": "Número válido: el dígito verificador coincide",
    "formatted": "Formato estándar:",
    "type_label": "Prefijo: {{type}}",
    "prefix_unknown": "Prefijo {{prefix}} poco habitual: el dígito verificador es correcto, pero el prefijo no está entre los usuales (20, 23, 24, 27, 30, 33, 34).",
    "invalid": "Número inválido",
    "reason_chars": "Carácter no permitido: solo se admiten dígitos, guiones, puntos y espacios.",
    "reason_length": "Largo incorrecto: se ingresaron {{n}} dígito(s); un CUIT o CUIL tiene 11.",
    "reason_dv": "Dígito verificador esperado: {{expected}}; ingresado: {{entered}}.",
    "reason_dv10": "Con el prefijo {{prefix}} y este número el cálculo da 10: esa combinación no se emite. En ese caso se usa el prefijo 23 (persona) o 33 (empresa).",
    "correct_form": "Con el dígito verificador correcto:",
    "compute_title": "Calcular el CUIL a partir del DNI",
    "dni_label": "Número de DNI (7 u 8 dígitos)",
    "company_number_label": "Número de 8 dígitos",
    "kind_label": "Titular",
    "kind_m": "Masculino (prefijo 20)",
    "kind_f": "Femenino (prefijo 27)",
    "kind_company": "Persona jurídica (prefijo 30)",
    "result_person": "CUIL según el cálculo",
    "result_company": "Dígito verificador para este número",
    "steps": "Suma ponderada = {{sum}}; {{sum}} mód. 11 = {{rest}}; 11 − {{rest}} = {{raw}}.",
    "switched": "Con el prefijo {{from}} el cálculo daba 10: el prefijo pasa a {{to}} y el dígito verificador a {{dv}}.",
    "person_hint": "Es el resultado del cálculo: ante coincidencias, ANSES o ARCA pueden asignar otro prefijo (23 o 24). Solo la constancia de CUIL es válida como prueba.",
    "company_hint": "ARCA asigna los CUIT de las personas jurídicas en forma correlativa: no se deducen de ningún otro número. Este cálculo solo da el dígito verificador coherente con los 8 dígitos ingresados.",
    "dni_invalid": "Ingrese 7 u 8 dígitos (se aceptan puntos).",
    "rule_title": "Regla de cálculo y prefijos",
    "rule": "Los 10 primeros dígitos se multiplican por 5, 4, 3, 2, 7, 6, 5, 4, 3, 2; el dígito verificador es 11 − (suma mód. 11), y 11 da 0. Un resultado de 10 no se emite: el prefijo pasa a 23 (dígito 9 para hombre, 4 para mujer) o a 33 para una persona jurídica (dígito 9).",
    "prefix_20": "persona humana, masculino",
    "prefix_23": "persona humana, prefijo alternativo (resultado 10 o coincidencia)",
    "prefix_24": "persona humana, número duplicado",
    "prefix_27": "persona humana, femenino",
    "prefix_30": "persona jurídica",
    "prefix_33": "persona jurídica, prefijo alternativo (resultado 10)",
    "prefix_34": "persona jurídica, número duplicado",
    "note": "La validación solo comprueba la coherencia aritmética: un número válido no está necesariamente asignado. La inscripción se verifica con la constancia de inscripción de ARCA. Ningún número se envía: el cálculo se hace en su navegador."
  },
  "brazil-13th-salary-calculator": {
    "title": "Aguinaldo en Brasil (décimo terceiro salário 2026)",
    "subtitle": "Normas de Brasil: 1/12 del salario por mes trabajado, en dos pagos, con INSS e IRRF sobre el 13º completo.",
    "inputs": "Sus datos",
    "salary": "Salario bruto mensual (R$)",
    "variable": "Promedio mensual de la parte variable (R$)",
    "variable_hint": "Horas extra, comisiones, plus nocturno: promedio de los meses del año.",
    "months": "Meses trabajados en el año (avos)",
    "months_hint": "Un mes cuenta a partir de 15 días trabajados en él.",
    "dependents": "Dependientes declarados (dependentes)",
    "dependents_hint": "Cada dependiente resta {{amount}} de la base del IRRF.",
    "first": "1.ª cuota",
    "first_when": "Sin descuentos, entre el 1 de febrero y el 30 de noviembre.",
    "second": "2.ª cuota neta",
    "second_when": "A más tardar el 20 de diciembre, tras INSS e IRRF.",
    "breakdown": "Detalle del cálculo",
    "full": "13º bruto ({{months}}/12)",
    "inss": "INSS sobre el 13º",
    "ir_table": "IRRF según la tabla progresiva",
    "ir_reduction": "Reducción Lei 15.270/2025",
    "irrf": "IRRF retenido (tributación exclusiva)",
    "net_total": "Total neto cobrado (dos cuotas)",
    "method_simplified": "El descuento simplificado ({{amount}}) da un impuesto menor que las deducciones legales, así que se aplica (el eSocial lo admite para el 13º).",
    "method_legal": "Las deducciones legales (INSS del 13º, dependientes) dan un impuesto menor que el descuento simplificado ({{amount}}), así que se aplican.",
    "rules_title": "Reglas aplicadas",
    "rule_months": "13º = (salario + promedio variable) × meses trabajados ÷ 12 (Lei 4.090/1962).",
    "rule_taxes": "INSS e IRRF se calculan sobre el 13º completo, aparte del salario de diciembre, con la reducción 2026 hasta R$ 7.350.",
    "rule_first": "Aquí la 1.ª cuota es la mitad del 13º calculado; en la práctica, el empleador paga la mitad del salario del mes anterior.",
    "invalid": "Introduzca un salario positivo, de 1 a 12 meses y de 0 a 20 dependientes.",
    "note": "Estimación para un trabajador CLT con un solo empleo. No sustituye una nómina (holerite) ni un asesoramiento jurídico."
  },
  "brazil-clt-net-salary-calculator": {
    "title": "Salario neto CLT en Brasil (salário líquido 2026)",
    "subtitle": "Normas de Brasil: INSS progresivo y luego IRRF 2026 con la reducción de la Lei 15.270/2025.",
    "inputs": "Su nómina",
    "gross": "Salario bruto mensual (salário bruto, R$)",
    "dependents": "Dependientes declarados (dependentes)",
    "dependents_hint": "Cada dependiente resta {{amount}} de la base del IRRF.",
    "alimony": "Pensión alimenticia judicial (R$/mes)",
    "alimony_hint": "Deducible de la base del IRRF cuando la fija una resolución judicial o un acuerdo homologado.",
    "other": "Otros descuentos (plano de saúde, vale-transporte…)",
    "other_hint": "Solo se restan del neto: no reducen la retención mensual del IRRF.",
    "net": "Salario neto (salário líquido)",
    "net_share": "Es decir, el {{pct}} del bruto.",
    "breakdown": "Detalle del cálculo",
    "inss": "INSS (cotización del trabajador)",
    "ir_base": "Base de cálculo del IRRF",
    "ir_table": "Impuesto según la tabla progresiva",
    "ir_reduction": "Reducción Lei 15.270/2025",
    "irrf": "IRRF retenido",
    "method_simplified": "El descuento simplificado ({{amount}}) es más favorable que las deducciones legales ({{legal}}), así que se aplica.",
    "method_legal": "Las deducciones legales ({{legal}}: INSS, dependientes, pensión) superan el descuento simplificado ({{amount}}), así que se aplican.",
    "inss_capped": "Salario por encima del tope de {{ceiling}}: el INSS queda limitado a {{amount}}.",
    "effective": "Tipos efectivos: INSS {{inss}}, IRRF {{irrf}} del bruto.",
    "rules_title": "Reglas 2026 aplicadas",
    "rule_inss": "INSS por tramos del 7,5 %, 9 %, 12 % y 14 % hasta el tope de {{ceiling}} (salário mínimo {{min}}, enero de 2026).",
    "rule_irrf": "IRRF: tabla mensual del 0 al 27,5 % sobre el bruto menos las deducciones legales o el descuento simplificado, el más favorable.",
    "rule_reduction": "Reducción: impuesto anulado hasta R$ 5.000 de salario bruto y luego 978,62 − 0,133145 × bruto hasta R$ 7.350.",
    "invalid": "Introduzca un salario bruto positivo y entre 0 y 20 dependientes.",
    "note": "Estimación para un trabajador CLT con un solo empleo, sin horas extra ni beneficios gravables. No sustituye una nómina (holerite) ni un asesoramiento jurídico."
  },
  "brazil-clt-termination-calculator": {
    "title": "Liquidación CLT en Brasil (rescisão)",
    "subtitle": "Normas de Brasil: importes según el tipo de despido, preaviso proporcional, 13º, vacaciones y multa del FGTS.",
    "inputs": "El contrato",
    "kind": "Tipo de extinción",
    "kind_no_cause": "Despido sin justa causa (dispensa sem justa causa)",
    "kind_resignation": "Dimisión (pedido de demissão)",
    "kind_just_cause": "Despido con justa causa (justa causa)",
    "kind_agreement": "Mutuo acuerdo (acordo, art. 484-A)",
    "kind_fixed_term": "Fin de un contrato temporal en su plazo",
    "salary": "Último salario bruto mensual (R$)",
    "admission": "Fecha de alta",
    "end": "Último día trabajado",
    "notice_paid": "Preaviso indemnizado (aviso prévio indenizado, no trabajado)",
    "overdue": "Periodos de vacaciones vencidos no disfrutados (férias vencidas)",
    "overdue_hint": "Un periodo = 12 meses de trabajo, es decir, un mes de salario + 1/3. No se calcula el pago doble de un periodo vencido fuera de plazo.",
    "fgts_estimate": "Estimar el saldo del FGTS (8 % del salario por mes de contrato)",
    "fgts_balance": "Saldo del FGTS de este contrato (R$)",
    "fgts_hint": "El saldo real figura en la aplicación del FGTS; la estimación no incluye la remuneración de la cuenta ni los depósitos sobre 13º y vacaciones.",
    "dependents": "Dependientes (IRRF)",
    "advance13": "Anticipo del 13º ya cobrado (R$)",
    "net": "Neto estimado de la rescisão",
    "net_detail": "Importes brutos {{gross}}, descuentos {{deductions}}. La multa del FGTS se paga aparte.",
    "lines": "Importes debidos (verbas rescisórias)",
    "col_item": "Concepto",
    "col_basis": "Base",
    "col_amount": "Importe",
    "line_balance": "Saldo de salario (saldo de salário)",
    "line_notice": "Preaviso indemnizado (aviso prévio)",
    "line_13": "13º proporcional",
    "line_overdue": "Vacaciones vencidas (férias vencidas)",
    "line_vacation": "Vacaciones proporcionales (férias proporcionais)",
    "line_third": "Tercio constitucional de vacaciones (1/3)",
    "taxed": "Sujeto a INSS e IRRF",
    "exempt": "Indemnización, sin INSS ni IRRF",
    "not_due": "No se debe en este tipo de extinción",
    "days_n": "{{n}} días",
    "notice_half": "mitad de {{n}} días",
    "avos_n": "{{n}}/12",
    "inss_balance": "INSS sobre el saldo de salario",
    "irrf_balance": "IRRF sobre el saldo de salario",
    "inss_13": "INSS sobre el 13º",
    "irrf_13": "IRRF sobre el 13º (tributación exclusiva)",
    "notice_rule": "{{years}} año(s) completo(s) de antigüedad: 30 días + 3 días por año, es decir, {{days}} días (90 como máximo). El preaviso prolonga el contrato para el cálculo del 13º y de las vacaciones.",
    "fgts_title": "FGTS",
    "fgts_estimated": "Saldo estimado del FGTS",
    "fine": "Multa del FGTS ({{pct}} %)",
    "access_no_cause": "Retiro de todo el FGTS, multa del 40 % ingresada en la cuenta y posible acceso al seguro-desemprego.",
    "access_resignation": "Sin multa, sin retiro del FGTS y sin seguro-desemprego. El trabajador debe 30 días de preaviso; si no los cumple, el empleador puede descontarlos (no se descuentan aquí).",
    "access_just_cause": "Sin multa, sin retiro del FGTS y sin seguro-desemprego: solo se deben el saldo de salario y las vacaciones vencidas + 1/3.",
    "access_agreement": "Multa del 20 %, retiro limitado al 80 % del FGTS y sin seguro-desemprego (art. 484-A CLT).",
    "access_fixed_term": "Termina en la fecha pactada: sin preaviso ni multa, pero se puede retirar el FGTS.",
    "invalid": "Revise el salario, las fechas (salida posterior al alta), los dependientes (0 a 20) y el saldo del FGTS.",
    "note": "Estimación: INSS e IRRF solo sobre el saldo de salario y el 13º (preaviso, vacaciones indemnizadas y multa se tratan como exentos; el INSS sobre la parte del 13º que genera el preaviso es discutido). Sin horas extra, convenio colectivo ni estabilidad laboral. No sustituye el TRCT ni un asesoramiento jurídico."
  },
  "brazil-cnpj-validator-generator": {
    "title": "Validar y generar CNPJ de Brasil, numérico o alfanumérico",
    "subtitle": "Dígitos verificadores módulo 11 del CNPJ, identificador de empresas en Brasil, incluido el formato alfanumérico vigente desde julio de 2026.",
    "validate_title": "Validar un CNPJ",
    "input_label": "CNPJ (14 caracteres)",
    "input_hint": "Con o sin puntuación: 11.222.333/0001-81, 11222333000181 o 12.ABC.345/01DE-35.",
    "empty": "Introduzca un CNPJ para validarlo.",
    "valid": "CNPJ válido (dígitos verificadores correctos)",
    "invalid": "CNPJ no válido",
    "formatted": "Formato:",
    "correct_form": "Con los dígitos verificadores correctos:",
    "kind_numeric": "CNPJ numérico",
    "kind_alpha": "CNPJ alfanumérico (formato de 2026)",
    "head_office": "matriz (orden 0001)",
    "branch": "establecimiento n.º {{order}}",
    "reason_chars": "Carácter «{{ch}}» no permitido en la posición {{pos}}: solo se admiten dígitos y letras de la A a la Z.",
    "reason_dvchars": "Los dos últimos caracteres son los dígitos verificadores: siempre son numéricos, incluso en un CNPJ alfanumérico.",
    "reason_length": "Longitud incorrecta: {{n}} caracteres introducidos, se esperan 14.",
    "reason_repeated": "Todos los dígitos son iguales (como 00.000.000/0000-00): este número no se emite.",
    "reason_dv": "Dígitos verificadores erróneos: se esperan {{expected}}, se han introducido {{entered}}.",
    "rule": "Regla: cada carácter vale su código ASCII − 48 (dígitos sin cambio, A = 17, B = 18…); pesos 5,4,3,2,9…2 y luego 6,5,4,3,2,9…2; resto mód 11 menor que 2 → 0, si no 11 − resto.",
    "generate_title": "Generar CNPJ de prueba",
    "alpha_label": "Formato alfanumérico (letras en las 12 primeras posiciones)",
    "head_office_label": "Matriz (orden 0001)",
    "punct_label": "Con puntuación",
    "count_label": "Cantidad",
    "generate_btn": "Generar",
    "generator_warning": "Números ficticios para probar un formulario o un sistema: un número válido no tiene por qué estar asignado a una empresa.",
    "note": "El cálculo solo comprueba la coherencia del número. La existencia y la situación de una empresa se consultan en el comprovante de inscrição de la Receita Federal de Brasil. Los CNPJ numéricos ya emitidos siguen siendo válidos."
  },
  "brazil-cpf-validator-generator": {
    "title": "Validar y generar CPF de Brasil",
    "subtitle": "Dígitos verificadores módulo 11 y región fiscal del CPF, número fiscal de las personas en Brasil.",
    "validate_title": "Validar un CPF",
    "input_label": "CPF (11 dígitos)",
    "input_hint": "Con o sin puntos y guion: 529.982.247-25 o 52998224725.",
    "empty": "Introduzca un CPF para validarlo.",
    "valid": "CPF válido (dígitos verificadores correctos)",
    "invalid": "CPF no válido",
    "formatted": "Formato:",
    "correct_form": "Con los dígitos verificadores correctos:",
    "region_label": "Región fiscal de inscripción (9.º dígito):",
    "region_value": "{{n}}.ª región: {{states}}",
    "reason_chars": "El CPF solo contiene dígitos (se aceptan puntos y guion): quite letras y otros símbolos.",
    "reason_length": "Longitud incorrecta: {{n}} dígitos introducidos, se esperan 11.",
    "reason_repeated": "Todos los dígitos son iguales (como 111.111.111-11): los verificadores cuadran, pero la Receita Federal no emite estos números.",
    "reason_dv": "Dígitos verificadores erróneos: se esperan {{expected}}, se han introducido {{entered}}.",
    "rule": "Regla: 1.er verificador = dígitos 1 a 9 × 10…2; 2.º = dígitos 1 a 10 × 11…2; resto mód 11 menor que 2 → 0, si no 11 − resto.",
    "generate_title": "Generar CPF de prueba",
    "region_select": "Región fiscal",
    "region_any": "Al azar",
    "count_label": "Cantidad",
    "punct_label": "Con puntos y guion",
    "generate_btn": "Generar",
    "generator_warning": "Números ficticios para probar un formulario: un número válido no tiene por qué estar asignado, y usarlo para hacerse pasar por otra persona es ilegal.",
    "note": "El cálculo solo comprueba la coherencia del número. La situación de un CPF (regular, suspendido, cancelado) se consulta en el sitio de la Receita Federal de Brasil."
  },
  "chile-finiquito-calculator": {
    "title": "Calculadora de finiquito Chile",
    "subtitle": "Indemnización por años de servicio, sustitutiva del aviso previo, recargo del art. 168 y feriado proporcional según el Código del Trabajo de Chile",
    "inputs": "Contrato",
    "start": "Fecha de ingreso",
    "end": "Fecha de término",
    "pay": "Última remuneración mensual (CLP)",
    "pay_hint": "Art. 172: todo lo que percibe el trabajador, incluidas sus cotizaciones, sin horas extra, asignación familiar ni gratificaciones o aguinaldos.",
    "uf": "Valor de la UF (CLP)",
    "uf_hint": "Valor indicativo, a verificar: {{value}} al {{date}} (SII). La ley usa la UF del último día del mes anterior al pago.",
    "cause": "Causal de término",
    "cause_needs": "Necesidades de la empresa (art. 161 inc. 1)",
    "cause_desahucio": "Desahucio del empleador (art. 161 inc. 2)",
    "cause_resign": "Renuncia voluntaria (art. 159 n° 2)",
    "cause_mutual": "Mutuo acuerdo (art. 159 n° 1)",
    "cause_term": "Vencimiento del plazo (art. 159 n° 4)",
    "cause_misconduct": "Causal de conducta (art. 160)",
    "notice_given": "El empleador dio aviso escrito con 30 días de anticipación",
    "unjustified": "El juez declaró el despido injustificado, indebido o improcedente (art. 168)",
    "no_plausible": "Causal del art. 160 n° 1, 5 o 6 declarada carente de motivo plausible (recargo 100 %)",
    "annual_leave": "Feriado anual",
    "leave_15": "15 días hábiles",
    "leave_20": "20 días (Magallanes, Aysén, Palena)",
    "pending_leave": "Días hábiles pendientes de años anteriores",
    "invalid_input": "Revise las fechas, la remuneración y el valor de la UF.",
    "total": "Total estimado del finiquito",
    "service": "Antigüedad: {{y}} años, {{m}} meses y {{d}} días",
    "capped": "Remuneración limitada a 90 UF ({{cap}}) para la indemnización y el aviso.",
    "breakdown": "Detalle",
    "severance": "Indemnización por años de servicio",
    "severance_detail": "{{years}} año(s) considerado(s) × 30 días de {{base}}",
    "severance_under_year": "Menos de un año de contrato: sin indemnización",
    "severance_none": "No procede con esta causal",
    "notice": "Indemnización sustitutiva del aviso previo",
    "notice_detail": "Una última remuneración mensual (tope 90 UF)",
    "notice_none": "No procede",
    "surcharge": "Recargo del art. 168",
    "surcharge_detail": "{{pct}} % de la indemnización por años de servicio",
    "leave": "Feriado proporcional",
    "leave_detail": "{{prop}} días hábiles desde la última anualidad, {{working}} en total, es decir {{calendar}} días corridos × remuneración ÷ 30",
    "note": "Reglas chilenas al 15/10/2026. No se modelan feriados legales, feriado progresivo, indemnizaciones pactadas, contratos por obra o faena ni el reajuste por IPC; los sábados y domingos del período se suman a los días de feriado. Estimación: no reemplaza un finiquito firmado ni una asesoría jurídica."
  },
  "chile-rut-validator": {
    "title": "Validador de RUT de Chile",
    "subtitle": "Valide un RUT o RUN de Chile y calcule su dígito verificador (módulo 11).",
    "validate_title": "Validar un RUT",
    "input_label": "RUT o RUN completo (con dígito verificador)",
    "input_hint": "Con o sin puntos y guion: 12.345.678-5, 12345678-5 o 123456785; se acepta la k minúscula.",
    "empty": "Escriba un RUT para validarlo.",
    "valid": "RUT válido: el dígito verificador coincide",
    "formatted": "Formato estándar:",
    "invalid": "RUT inválido",
    "reason_chars": "Carácter no permitido: solo se admiten dígitos, y la letra K únicamente en la última posición (dígito verificador).",
    "reason_length": "Largo incorrecto: el número antes del dígito verificador tiene {{n}} dígito(s); debe tener entre 1 y 8.",
    "reason_dv": "Dígito verificador esperado: {{expected}}; ingresado: {{entered}}.",
    "correct_form": "Con el dígito verificador correcto:",
    "compute_title": "Calcular el dígito verificador",
    "body_label": "Número sin el dígito verificador (1 a 8 dígitos)",
    "dv_result": "Dígito verificador",
    "steps": "Suma ponderada = {{sum}}; {{sum}} mód. 11 = {{rest}}; 11 − {{rest}} = {{raw}}.",
    "body_invalid": "Ingrese de 1 a 8 dígitos (se aceptan puntos).",
    "rule": "Regla: dígitos de derecha a izquierda multiplicados por 2, 3, 4, 5, 6, 7 y de nuevo 2, 3…; si el resultado es 11, el dígito es 0; si es 10, es K.",
    "note": "La validación solo comprueba la coherencia aritmética: un RUT válido no está necesariamente asignado. La existencia de un contribuyente se consulta en el SII. Ningún número se envía: el cálculo se hace en su navegador."
  },
  "colombia-liquidacion-laboral-calculator": {
    "title": "Calculadora de liquidación laboral Colombia",
    "subtitle": "Cesantías, intereses, prima de servicios, vacaciones pendientes e indemnización del art. 64 CST con las reglas de Colombia 2026",
    "inputs": "Contrato",
    "start": "Fecha de ingreso",
    "end": "Fecha de retiro",
    "salary": "Salario básico mensual (COP)",
    "smmlv_hint": "SMMLV 2026: {{smmlv}}. Hasta 2 SMMLV, el auxilio de transporte ({{auxilio}}) se suma a la base de cesantías y prima.",
    "integral": "Salario integral",
    "integral_note": "Salario integral: el salario ya incluye las prestaciones, así que no hay cesantías, intereses ni prima. Quedan las vacaciones y la posible indemnización.",
    "vac_taken": "Días de vacaciones ya disfrutados desde el ingreso (hábiles)",
    "cause": "Motivo de terminación",
    "cause_resign": "Renuncia, justa causa o terminación normal (sin indemnización)",
    "cause_indefinite": "Despido sin justa causa, contrato a término indefinido",
    "cause_fixed": "Despido sin justa causa, contrato a término fijo",
    "cause_work": "Despido sin justa causa, contrato por obra o labor",
    "agreed_end": "Fecha de terminación pactada",
    "work_days": "Días restantes estimados de la obra (mínimo 15)",
    "invalid_input": "Revise las fechas (retiro posterior al ingreso) y el salario.",
    "total": "Total estimado de la liquidación",
    "total_sub": "{{days}} días laborados (base 360), base de prestaciones {{base}}",
    "breakdown": "Detalle",
    "cesantias": "Cesantías",
    "cesantias_detail": "(salario + auxilio) × {{days}} días del año en curso ÷ 360",
    "intereses": "Intereses sobre cesantías",
    "intereses_detail": "cesantías × {{days}} días × 12 % ÷ 360",
    "prima": "Prima de servicios",
    "prima_detail": "(salario + auxilio) × {{days}} días del semestre ÷ 360",
    "vacaciones": "Vacaciones pendientes",
    "vacaciones_detail": "{{accrued}} días causados (15 por año), {{pending}} pendientes × salario ÷ 30",
    "indem": "Indemnización art. 64 CST",
    "indem_detail": "{{days}} días de salario (sin auxilio)",
    "note": "Reglas colombianas al 15/10/2026, días contados en meses de 30 días. Se supone que las cesantías de años anteriores ya se consignaron al fondo; no se modelan el régimen de transición de quienes tenían 10 años de servicio en 2002, el salario variable ni las horas extra. Estimación: no reemplaza un desprendible de nómina ni una asesoría jurídica."
  },
  "colombia-net-salary-calculator": {
    "title": "Calculadora de salario neto Colombia 2026",
    "subtitle": "Salud, pensión, Fondo de Solidaridad Pensional, retención en la fuente y auxilio de transporte con las reglas de Colombia 2026",
    "inputs": "Su salario",
    "salary": "Salario mensual (COP)",
    "smmlv_hint": "SMMLV 2026: {{smmlv}}; auxilio de transporte: {{auxilio}} si el salario no supera 2 SMMLV.",
    "integral": "Salario integral (aportes sobre el 70 % del salario, sin auxilio de transporte)",
    "compute_retention": "Calcular la retención en la fuente (procedimiento 1, art. 383)",
    "manual_retention": "Retención estimada ingresada a mano (COP al mes)",
    "invalid_input": "Ingrese un salario positivo.",
    "net_title": "Salario neto estimado del mes",
    "net_sub": "es decir, el {{pct}} % del salario",
    "breakdown": "Detalle",
    "gross": "Salario",
    "ibc": "Ingreso base de cotización (IBC)",
    "health": "Salud (4 %)",
    "pension": "Pensión (4 %)",
    "fsp": "Fondo de Solidaridad Pensional ({{pct}} %)",
    "retention": "Retención en la fuente",
    "retention_manual_row": "Retención estimada (ingresada)",
    "auxilio": "Auxilio de transporte",
    "net": "Neto a recibir",
    "retention_detail": "Cálculo de la retención",
    "exempt": "Renta exenta del 25 % (tope 790 UVT al año)",
    "base": "Base gravable del mes",
    "base_value": "{{cop}} ({{uvt}} UVT)",
    "retention_note": "Base = salario − aportes obligatorios − 25 % exento, luego tabla del art. 383 en UVT (0 % hasta 95 UVT, después del 19 % al 39 %). No se modelan las deducciones por dependientes, medicina prepagada, intereses de vivienda ni aportes AFC, que reducirían la retención.",
    "note": "Reglas colombianas vigentes al 15/10/2026 (SMMLV fijado por decreto, con proceso pendiente ante el Consejo de Estado). Estimación: no reemplaza un desprendible de nómina ni una asesoría jurídica."
  },
  "france-nir-social-security-key-calculator": {
    "title": "Clave del número de la seguridad social de Francia (NIR)",
    "subtitle": "Compruebe un número de la seguridad social de Francia de 15 cifras, calcule su clave y descodifique sexo, fecha y lugar de nacimiento (regla del INSEE).",
    "privacy": "El NIR es un dato personal. No se envía nada: el cálculo se hace por completo en su navegador y no se guarda.",
    "validate_title": "Comprobar un número completo (15 caracteres)",
    "input_label": "Número de la seguridad social con su clave",
    "input_hint": "Con o sin espacios; se aceptan 2A y 2B para Córcega.",
    "empty": "Introduzca un número para comprobarlo.",
    "valid": "Clave correcta",
    "formatted": "Formato normalizado:",
    "invalid": "Número no válido",
    "reason_chars": "Carácter no admitido: solo cifras, más 2A o 2B en las posiciones 6 y 7 (Córcega).",
    "reason_length": "Longitud incorrecta: {{n}} caracteres en lugar de 15 (13 + clave de 2 cifras).",
    "reason_key_range": "Clave {{entered}} imposible: la clave va de 01 a 97.",
    "reason_key": "Clave esperada {{expected}}, clave introducida {{entered}}: probablemente una cifra del número o de la clave es errónea.",
    "d_sex": "Sexo",
    "d_year": "Año de nacimiento",
    "d_month": "Mes de nacimiento",
    "d_place": "Lugar de nacimiento",
    "d_rank": "Número de orden",
    "sex_male": "Hombre (1)",
    "sex_female": "Mujer (2)",
    "non_standard": "Código no estándar ({{value}})",
    "year_value": "19{{yy}} o 20{{yy}} (el siglo no se codifica)",
    "country_code": "país con código INSEE {{code}}",
    "place_abroad": "Nacido/a en el extranjero (99): {{country}} (código de país {{code}})",
    "place_overseas": "Ultramar francés: departamento o colectividad {{dep}}, municipio {{commune}}",
    "place_2a": "Corse-du-Sud, Córcega (2A), municipio {{commune}}",
    "place_2b": "Haute-Corse, Córcega (2B), municipio {{commune}}",
    "place_20": "Córcega (20, numeración anterior a 1976), municipio {{commune}}",
    "place_91_94": "Departamento {{dep}} (Île-de-France desde 1968), municipio {{commune}}; para un nacimiento en Argelia antes de la independencia, este código también puede designar Argelia",
    "place_95": "Val-d'Oise (95) desde 1968, municipio {{commune}}; para un nacimiento en Marruecos antes de la independencia, este código también puede designar Marruecos",
    "place_96": "Túnez, nacimiento antes de la independencia (código 96), municipio {{commune}}",
    "place_metro": "Departamento {{dep}}, municipio {{commune}} (código municipal INSEE {{dep}}{{commune}})",
    "compute_title": "Calcular la clave a partir de los 13 primeros caracteres",
    "base_label": "13 primeros caracteres del NIR",
    "key_result": "Clave de control",
    "steps": "{{n}} mod 97 = {{rest}}; clave = 97 − {{rest}} = {{key}}",
    "base_invalid": "Introduzca exactamente 13 caracteres: cifras, con 2A o 2B posible en las posiciones 6 y 7.",
    "rule": "Regla del INSEE: clave = 97 − (número de 13 cifras mod 97). Para Córcega, la letra pasa a 0 y se restan 1 000 000 (2A) o 2 000 000 (2B), lo que equivale a leer 19 y 18."
  },
  "germany-net-salary-calculator": {
    "title": "Sueldo neto en Alemania (Brutto-Netto 2026)",
    "subtitle": "Lohnsteuer según el programa oficial del Ministerio de Hacienda alemán, Soli, impuesto eclesiástico y cotizaciones 2026 en Alemania.",
    "inputs_section": "Sueldo y situación",
    "gross_label": "Sueldo bruto (€)",
    "period_label": "Periodo",
    "period_month": "Al mes",
    "period_year": "Al año",
    "stkl_label": "Clase fiscal (Steuerklasse)",
    "stkl_1": "I: soltero",
    "stkl_2": "II: familia monoparental",
    "stkl_3": "III: casado, ingreso principal",
    "stkl_4": "IV: casado, ingresos similares",
    "stkl_5": "V: casado, cónyuge en clase III",
    "stkl_6": "VI: segundo empleo",
    "zkf_label": "Deducciones por hijos (Kinderfreibeträge)",
    "zkf_hint": "1 por hijo en pareja, 0,5 por progenitor separado. Solo reducen el Soli y el impuesto eclesiástico: la Lohnsteuer no cambia y la prestación por hijo (Kindergeld) se paga aparte.",
    "kids_ignored": "En las clases V y VI no se aplican las deducciones por hijos.",
    "land_label": "Estado federado (Land)",
    "land_BW": "Baden-Wurtemberg",
    "land_BY": "Baviera",
    "land_BE": "Berlín",
    "land_BB": "Brandeburgo",
    "land_HB": "Bremen",
    "land_HH": "Hamburgo",
    "land_HE": "Hesse",
    "land_MV": "Mecklemburgo-Pomerania Occidental",
    "land_NI": "Baja Sajonia",
    "land_NW": "Renania del Norte-Westfalia",
    "land_RP": "Renania-Palatinado",
    "land_SL": "Sarre",
    "land_SN": "Sajonia",
    "land_ST": "Sajonia-Anhalt",
    "land_SH": "Schleswig-Holstein",
    "land_TH": "Turingia",
    "church_label": "Miembro de una iglesia (impuesto eclesiástico del {{rate}} % de la Lohnsteuer en este estado)",
    "insurance_section": "Seguridad social",
    "kvz_label": "Cotización adicional de la caja de salud (Zusatzbeitrag, %)",
    "kvz_hint": "Tipo completo de su caja; el trabajador paga la mitad. Media 2026: {{avg}}.",
    "pvkids_label": "Hijos menores de 25 años (rebaja del seguro de dependencia desde el 2.º)",
    "childless_label": "Sin hijos y con 23 años o más (recargo del 0,6 % en el seguro de dependencia)",
    "result_title": "Sueldo neto estimado",
    "per_month": "Neto al mes, el {{share}} del bruto",
    "per_year": "Neto al año, el {{share}} del bruto",
    "row_lst": "Impuesto sobre el salario (Lohnsteuer)",
    "row_soli": "Recargo de solidaridad (Soli)",
    "row_kist": "Impuesto eclesiástico ({{rate}} %)",
    "row_rv": "Pensiones (RV, {{rate}})",
    "row_av": "Desempleo (AV, {{rate}})",
    "row_kv": "Salud (KV, {{rate}})",
    "row_pv": "Dependencia (PV, {{rate}})",
    "total_tax": "Total de impuestos",
    "total_sv": "Total de cotizaciones",
    "vsp_line": "Deducción por previsión (Vorsorgepauschale) aplicada por la tabla: {{vsp}} al año; base imponible anual de la tabla: {{zve}}.",
    "midijob_warning": "Hasta 2.000 € al mes (Minijob hasta 603 €, Midijob por encima) se aplican cotizaciones reducidas: la herramienta no las calcula y sobrestima las cotizaciones.",
    "invalid": "Introduzca un sueldo bruto positivo y una cotización adicional entre 0 y 10 %.",
    "note": "Normas alemanas 2026, salario corriente de un trabajador en el régimen público. No incluye: procedimiento del factor (clase IV), seguro médico privado, pensiones, deducción por edad, deducciones registradas en ELStAM, pagos únicos, tope y mínimo del impuesto eclesiástico. Es una estimación y no sustituye a una nómina ni a un asesor fiscal."
  },
  "germany-notice-period-calculator": {
    "title": "Plazo de preaviso en Alemania (Kündigungsfrist)",
    "subtitle": "Fecha de fin del contrato en Alemania según el § 622 BGB y último día para entregar la carta.",
    "inputs_section": "Contrato y carta",
    "side_label": "¿Quién despide o dimite?",
    "side_employer": "La empresa (despido)",
    "side_employee": "El trabajador (dimisión)",
    "start_label": "Inicio del contrato",
    "zugang_label": "Recepción de la carta (Zugang)",
    "probation_label": "Periodo de prueba pactado (meses, 0 a 6; 0 = ninguno)",
    "contract_section": "Preaviso del contrato o del convenio",
    "contract_months": "Duración en meses (0 = ninguno)",
    "contract_term": "Vencimiento",
    "term_month": "Fin de mes",
    "term_quarter": "Fin de trimestre",
    "contract_hint": "Solo se aplica si da una fecha posterior a la legal, fuera del periodo de prueba.",
    "result_title": "Fin del contrato",
    "result_hint": "Último día del contrato. Un fin de semana o un festivo no cambian esta fecha.",
    "rule_label": "Preaviso aplicado",
    "rule_probation": "2 semanas, a cualquier día (periodo de prueba)",
    "rule_base": "4 semanas, al día 15 o a fin de mes",
    "rule_month1": "1 mes, a fin de mes natural",
    "rule_months": "{{n}} meses, a fin de mes natural",
    "rule_contract": "Preaviso del contrato o del convenio colectivo",
    "contract_applied": "El preaviso legal habría sido: {{legal}}.",
    "seniority_label": "Antigüedad a la recepción (años)",
    "klage_label": "Plazo para impugnar ante el tribunal laboral (3 semanas, sin festivos)",
    "reverse_section": "Última fecha de recepción para una fecha de fin",
    "target_label": "Fecha de fin deseada",
    "latest_exact": "La carta debe recibirse como muy tarde ese día para terminar el contrato en la fecha elegida.",
    "latest_earlier": "La fecha elegida no es un vencimiento posible: con recepción ese día, el contrato termina el {{end}}.",
    "latest_none": "Ninguna fecha de recepción posterior al inicio del contrato permite esa fecha de fin.",
    "invalid": "Introduzca fechas válidas: la recepción debe ser posterior al inicio del contrato.",
    "age_rule": "Cuenta toda la antigüedad, también antes de los 25 años: la antigua regla contraria del § 622.2, frase 2 BGB, descartada por el TJUE (sentencia Kücükdeveci, 19/01/2010), se suprimió el 01/01/2019.",
    "note": "Norma alemana (§ 622 BGB). El despido debe ser por escrito y firmado (§ 623 BGB). No incluye: despido inmediato (fristlose Kündigung), protecciones especiales (embarazo, discapacidad, representantes de los trabajadores), contratos de formación ni temporales. Es una estimación y no sustituye a un abogado laboralista."
  },
  "iban-validator": {
    "title": "Validar un IBAN",
    "subtitle": "Longitud del país, formato del BBAN y control módulo 97 (ISO 13616), clave RIB de Francia y Mónaco, y cálculo del IBAN desde el CCC español, el RIB francés o el BLZ y número de cuenta alemanes.",
    "validate_title": "IBAN a comprobar",
    "input_label": "IBAN",
    "input_hint": "Con o sin espacios, en mayúsculas o minúsculas.",
    "empty": "Introduzca un IBAN para comprobarlo.",
    "valid": "IBAN válido · {{country}}",
    "invalid": "IBAN no válido",
    "type_n": "un dígito",
    "type_a": "una letra mayúscula",
    "type_c": "un dígito o una letra",
    "reason_chars": "Carácter «{{ch}}» no permitido: un IBAN solo contiene letras y dígitos.",
    "reason_country": "El código de país «{{cc}}» no figura en el registro IBAN: revise las dos primeras letras.",
    "reason_checkchars": "Los caracteres 3 y 4 son los dígitos de control y deben ser dos dígitos.",
    "reason_length": "Longitud incorrecta: {{n}} caracteres introducidos, se esperan {{expected}} para un IBAN de {{country}}.",
    "reason_format": "Formato del BBAN: en la posición {{pos}} hay «{{ch}}» y el registro espera {{type}}.",
    "reason_mod97": "Dígitos de control erróneos: el resto módulo 97 es {{rest}} en lugar de 1. Con este BBAN, el control sería {{expected}} (introducido: {{entered}}); una errata en el BBAN da el mismo mensaje.",
    "rule": "Regla: los 4 primeros caracteres pasan al final, cada letra se convierte en número (A = 10 … Z = 35) y el número resultante dividido entre 97 debe dar resto 1.",
    "parts_title": "Desglose",
    "parts_empty": "El desglose aparece cuando el IBAN es válido.",
    "part_country": "País",
    "part_check": "Dígitos de control",
    "part_bban": "BBAN (cuenta nacional)",
    "part_length": "Longitud",
    "rib_bank": "Código de banco",
    "rib_branch": "Código de oficina",
    "rib_account": "Número de cuenta",
    "rib_key": "Clave RIB",
    "rib_ok": "Clave RIB correcta.",
    "rib_bad": "El control IBAN es correcto pero la clave RIB no: se espera {{expected}}, se ha introducido {{entered}}. Revise el certificado bancario (RIB).",
    "note": "Tabla de {{n}} países según el SWIFT IBAN Registry (release 101). Un IBAN válido no implica una cuenta abierta: solo el banco confirma la cuenta y su titular.",
    "calc_title": "Calcular IBAN desde CCC, RIB o BLZ",
    "calc_country": "País de la cuenta",
    "calc_country_FR": "Francia: RIB",
    "calc_country_ES": "España: CCC",
    "calc_country_DE": "Alemania: BLZ y número de cuenta",
    "f_FR_bank": "Código de banco",
    "f_FR_branch": "Código de oficina",
    "f_FR_account": "Número de cuenta",
    "f_FR_key": "Clave RIB",
    "f_ES_entity": "Entidad",
    "f_ES_office": "Oficina",
    "f_ES_dc": "Dígitos de control (DC)",
    "f_ES_account": "Número de cuenta",
    "f_DE_blz": "Código bancario alemán (BLZ)",
    "f_DE_account": "Número de cuenta (Kontonummer)",
    "hint_digits": "{{n}} dígitos",
    "hint_alnum": "{{n}} dígitos o letras",
    "hint_upto": "de 1 a {{n}} dígitos, completados con ceros a la izquierda",
    "calc_empty": "Introduzca los datos de la cuenta para calcular el IBAN.",
    "calc_ok": "IBAN calculado · dígitos de control {{check}}",
    "calc_error": "IBAN no calculado",
    "calc_format": "Campo «{{field}}» incompleto o incorrecto. Formato esperado: {{hint}}.",
    "calc_key_FR": "Clave RIB errónea: se espera {{expected}} y se ha introducido {{entered}}. Revise el RIB: un IBAN calculado sobre un RIB mal copiado sería erróneo.",
    "calc_key_ES": "Dígitos de control del CCC erróneos: se esperan {{expected}} y se han introducido {{entered}}. Revise el número: un IBAN calculado sobre un CCC mal copiado sería erróneo.",
    "calc_de_warning": "Cálculo según la regla estándar del Bundesbank (regla IBAN 0000 00: BLZ seguido del número de cuenta completado a 10 dígitos). Algunos bancos alemanes aplican reglas IBAN propias que la herramienta no puede identificar: para ellos, el IBAN real es distinto. Antes de una transferencia, copie el IBAN de un extracto o pídalo a su banco. El dígito de control del número de cuenta (Prüfziffer) no se comprueba, porque su método depende del banco.",
    "calc_rule_FR": "En Francia, el BBAN es el RIB completo: IBAN = FR + dígitos de control + los 23 caracteres del RIB. Los dígitos son 98 menos el resto módulo 97 del RIB seguido de FR00, con las letras convertidas (F = 15, R = 27).",
    "calc_rule_ES": "En España, el BBAN es el CCC de 20 dígitos: IBAN = ES + dígitos de control + CCC. Cada dígito de control del CCC se calcula con módulo 11 (pesos 1, 2, 4, 8, 5, 10, 9, 7, 3, 6).",
    "calc_rule_DE": "En Alemania: IBAN = DE + dígitos de control + BLZ (8 dígitos) + número de cuenta (10 dígitos). Los dígitos son 98 menos el resto módulo 97 de esas 18 cifras seguidas de 131400 (D = 13, E = 14)."
  },
  "italy-codice-fiscale-calculator": {
    "title": "Codice fiscale de Italia: cálculo y verificación",
    "subtitle": "Código fiscal de las personas nacidas o registradas en Italia, según el D.M. del 23/12/1976",
    "tab_calc": "Calcular",
    "tab_verify": "Verificar un código",
    "inputs": "Datos personales",
    "surname": "Apellido (cognome)",
    "name": "Nombre (nome)",
    "sex": "Sexo",
    "male": "Hombre",
    "female": "Mujer",
    "birth": "Fecha de nacimiento",
    "belfiore": "Código catastral del municipio de nacimiento (Belfiore)",
    "belfiore_hint": "Una letra y 3 cifras: H501 para Roma, F205 para Milán. La lista de municipios del ISTAT (columna «Codice Catastale») da el de cada uno; nacidos en el extranjero: Z seguida del código del país.",
    "result": "Codice fiscale calculado",
    "part_surname": "Apellido",
    "part_name": "Nombre",
    "part_date": "Año, mes, día y sexo",
    "part_place": "Municipio o país de nacimiento",
    "part_check": "Carácter de control",
    "omo_title": "Variantes en caso de omocodia",
    "omo_hint": "Si otra persona ya tiene este código, la Agenzia delle Entrate sustituye cifras por letras empezando por la derecha. Estas son las tres primeras variantes posibles; solo la Agenzia sabe cuál se le asignó.",
    "err_names": "Introduzca un apellido y un nombre con al menos una letra.",
    "err_date": "Introduzca una fecha de nacimiento.",
    "err_belfiore": "El código catastral debe tener una letra seguida de 3 cifras (ej. H501).",
    "verify_title": "Código a verificar",
    "code_input": "Codice fiscale (16 caracteres)",
    "code_hint": "Se aceptan mayúsculas, minúsculas y espacios.",
    "valid": "Estructura y carácter de control correctos",
    "invalid": "Código no válido",
    "dec_birth": "Fecha de nacimiento",
    "abroad": "nacido en el extranjero",
    "omo_label": "Omocodia",
    "omo_yes": "Sí, {{n}} cifra(s) sustituida(s) por una letra",
    "omo_no": "No, código base",
    "omo_base": "Código base correspondiente, antes de la sustitución: {{code}}",
    "century_note": "El código solo contiene las dos últimas cifras del año: la herramienta toma {{y}}, el año más reciente que no está en el futuro.",
    "date_warn": "Atención: esta fecha no existe en el calendario (ej. 31 de abril), aunque el carácter de control sea correcto.",
    "err_length": "Longitud incorrecta: {{len}} caracteres en lugar de 16.",
    "err_char": "El carácter «{{ch}}» no está permitido en la posición {{pos}} (se espera letra o cifra según la posición).",
    "err_month": "La letra del mes «{{ch}}» no existe (admitidas: A B C D E H L M P R S T).",
    "err_day": "Día «{{day}}» imposible: 01 a 31 para un hombre, 41 a 71 para una mujer.",
    "err_check": "Carácter de control erróneo: se esperaba {{expected}} y se ha introducido {{got}}.",
    "note": "El único codice fiscale válido es el que asigna la Agenzia delle Entrate (figura en la tessera sanitaria). En caso de omocodia puede diferir del código calculado aquí, que no tiene valor oficial."
  },
  "italy-net-salary-irpef-calculator": {
    "title": "Sueldo neto en Italia: del bruto (RAL) al stipendio netto",
    "subtitle": "Asalariado en Italia, escala IRPEF 2026: cotizaciones INPS, deducciones, recorte de la cuña fiscal y recargos locales",
    "inputs": "Su retribución",
    "ral": "Retribución anual bruta, RAL (€)",
    "months": "Número de pagas",
    "months_n": "{{n}} mensilità",
    "inps_rate": "Cotización INPS del trabajador (%)",
    "inps_hint": "9,19 % en el caso general; 9,49 % en la industria con más de 15 trabajadores (0,30 % CIGS). El 1 % adicional por encima de 56.224 € (2026) se suma automáticamente.",
    "ceiling": "Afiliado desde 1996 o después: cotizaciones con tope de 122.295 € (massimale 2026)",
    "regional": "Recargo regional (%)",
    "municipal": "Recargo municipal (%)",
    "addizionali_hint": "Valores orientativos, a comprobar: el tipo varía según la región (1,23 % a 3,33 %) y el municipio (0 a 0,8 %, 0,9 % en Roma), a veces por tramos o con umbral de exención.",
    "result": "Sueldo neto mensual estimado",
    "result_sub": "En {{n}} pagas; neto anual {{year}}, es decir {{rate}} de retenciones sobre el bruto",
    "r_ral": "Bruto anual (RAL)",
    "r_inps": "Cotizaciones INPS del trabajador",
    "r_taxable": "Base imponible",
    "r_gross": "IRPEF bruto (23 / 33 / 43 %)",
    "r_det": "Deducción por trabajo dependiente (art. 13 TUIR)",
    "r_extra": "Deducción adicional (cuña fiscal, 20.000 a 40.000 €)",
    "r_irpef": "IRPEF neto",
    "r_regional": "Recargo regional",
    "r_municipal": "Recargo municipal",
    "r_somma": "Importe exento (cuña fiscal, renta ≤ 20.000 €)",
    "r_integrativo": "Trattamento integrativo",
    "r_net": "Neto anual",
    "invalid": "Introduzca una retribución positiva y tipos válidos.",
    "simplifications": "Simplificaciones: un único salario durante todo el año, sin deducciones por familiares ni gastos deducibles, sin retribuciones en especie ni primas de productividad. El trattamento integrativo solo se calcula hasta 15.000 € (por encima depende de deducciones no modelizadas).",
    "months_note": "El neto mensual es el neto anual dividido entre 13 o 14; en una nómina real, las pagas 13.ª y 14.ª tributan de otra forma y los recargos se retienen al año siguiente.",
    "note": "Estimación según las normas italianas de 2026; no sustituye una nómina (busta paga) ni un asesoramiento fiscal."
  },
  "italy-tfr-severance-calculator": {
    "title": "Cálculo del TFR en Italia (trattamento di fine rapporto)",
    "subtitle": "Indemnización de fin de relación laboral en Italia: cuotas anuales, revalorización ISTAT e impuestos (art. 2120 del Código Civil italiano)",
    "inputs": "Su contrato",
    "start": "Fecha de alta",
    "end": "Fecha de baja",
    "salary": "Retribución anual bruta del último año (€)",
    "salary_hint": "Conceptos pagados de forma no ocasional, con las pagas 13.ª y 14.ª; salvo convenio colectivo distinto, las horas extra ocasionales y los reembolsos de gastos no cuentan.",
    "growth": "Subida salarial media anual (%)",
    "growth_hint": "Sirve para reconstruir los salarios de años anteriores a partir del último; ponga 0 si su salario no ha cambiado.",
    "show_tax": "Estimar el impuesto (tassazione separata) y el TFR neto",
    "result": "TFR bruto acumulado",
    "result_months": "{{months}} meses computados (un mes cuenta si incluye al menos 15 días de trabajo)",
    "quotas": "Cuotas anuales (tras el 0,50 % INPS)",
    "reval_net": "Revalorización neta",
    "sostitutiva": "Imposta sostitutiva ya retenida",
    "tax_title": "Tassazione separata (retención del empleador)",
    "ref_income": "Renta de referencia (TFR sin revalorización ÷ años × 12)",
    "avg_rate": "Tipo medio IRPEF 2026 aplicado",
    "irpef_tfr": "IRPEF sobre el TFR",
    "net": "TFR neto estimado",
    "tax_note": "Retención provisional calculada por el empleador (art. 19 TUIR). Después la Agenzia delle Entrate recalcula el impuesto con su tipo medio de los 5 años anteriores y devuelve o reclama la diferencia; ese importe final no se puede calcular aquí.",
    "err_input": "Revise las fechas (baja posterior al alta), la retribución y la subida anual.",
    "err_start": "La herramienta cubre altas desde el 01/01/2003 (coeficientes de revalorización precargados desde 2003).",
    "table_title": "Detalle por año y coeficientes de revalorización",
    "table_hint": "Coeficientes ISTAT de diciembre (1,5 % + 75 % de la subida del índice FOI), modificables. Para {{year}}, año de la baja, introduzca el coeficiente del mes de cese: el valor de 2026 precargado es el de agosto de 2026 (último publicado), valor orientativo a comprobar.",
    "col_year": "Año",
    "col_months": "Meses",
    "col_quota": "Cuota",
    "col_coeff": "Coeficiente (%)",
    "col_coeff_aria": "Coeficiente de revalorización {{year}} en %",
    "col_reval": "Revalorización neta",
    "col_fund": "TFR a 31/12",
    "note": "Estimación según la norma italiana; no sustituye la liquidación del empleador ni un asesoramiento jurídico. Fuera de alcance: la parte del TFR destinada a un fondo de pensiones complementario, los anticipos (anticipazioni) ya cobrados y las reglas del TFR devengado antes de 2001."
  },
  "mexico-aguinaldo-calculator": {
    "title": "Calculadora de aguinaldo en México",
    "subtitle": "Monto proporcional, parte exenta de 30 UMA e ISR sobre el excedente, con las reglas de México 2026",
    "inputs_title": "Salario y periodo trabajado",
    "salary_type": "Tipo de salario",
    "daily": "Diario",
    "monthly": "Mensual",
    "salary": "Salario (MXN)",
    "days": "Días de aguinaldo (mínimo 15)",
    "year": "Año",
    "start": "Fecha de ingreso",
    "end": "Fecha de baja (opcional)",
    "days_hint": "Sin fecha de baja, se cuenta hasta el 31 de diciembre. El salario mensual se divide entre 30 para obtener el diario.",
    "params_title": "Parámetro 2026 (editable)",
    "uma": "UMA diaria (MXN)",
    "params_note": "UMA de 117.31 vigente desde el 01/02/2026 (INEGI, DOF del 09/01/2026): 30 UMA = 3,519.30 pesos exentos.",
    "gross_result": "Aguinaldo bruto",
    "net_result": "Neto estimado después de ISR: {{net}}",
    "detail_title": "Detalle del cálculo",
    "daily_salary": "Salario diario",
    "worked_days": "Días trabajados en el año: {{worked}} de {{total}}",
    "prop_days": "Días de aguinaldo que corresponden (proporcional)",
    "gross_line": "Aguinaldo bruto",
    "exempt_line": "Parte exenta (30 UMA = {{cap}})",
    "taxable_line": "Parte gravada",
    "isr_line": "ISR del excedente: ISR del mes con aguinaldo ({{withA}}) − ISR del sueldo de {{monthly}} solo ({{without}})",
    "net_line": "Aguinaldo neto estimado",
    "deadline": "Debe pagarse antes del 20 de diciembre (art. 87 LFT). Si la relación termina en el año, la parte proporcional se paga en el finiquito.",
    "invalid_input": "Revise el salario, los días, el año y las fechas.",
    "note": "Estimación con la ley de México; no sustituye el recibo de nómina ni una asesoría fiscal. El ISR usa el método simple del art. 96 LISR (el aguinaldo gravado se suma al sueldo del mes); no se modelan el método opcional del art. 174 del Reglamento, a menudo más favorable, ni el subsidio para el empleo."
  },
  "mexico-curp-validator": {
    "title": "Validar CURP (México)",
    "subtitle": "Estructura, fecha de nacimiento, sexo, entidad y dígito verificador de la Clave Única de Registro de Población de México",
    "input_label": "CURP a validar",
    "input_hint": "18 caracteres, con o sin espacios; da igual mayúsculas o minúsculas.",
    "use_example": "Ejemplo ficticio",
    "clear": "Borrar",
    "structure_title": "Cómo se forma la CURP",
    "structure_1": "Posiciones 1-4: inicial y primera vocal interna del primer apellido, inicial del segundo apellido e inicial del nombre.",
    "structure_2": "Posiciones 5-10: fecha de nacimiento AAMMDD.",
    "structure_3": "Posición 11: sexo (H hombre, M mujer; X reportada para personas no binarias).",
    "structure_4": "Posiciones 12-13: entidad federativa de nacimiento (NE si nació en el extranjero).",
    "structure_5": "Posiciones 14-16: primeras consonantes internas de apellidos y nombre.",
    "structure_6": "Posición 17: dígito si nació hasta 1999, letra desde 2000 (también distingue homonimias).",
    "structure_7": "Posición 18: dígito verificador calculado sobre los 17 primeros caracteres.",
    "empty": "Escriba una CURP para validarla.",
    "valid": "CURP válida (estructura y dígito verificador)",
    "invalid": "CURP no válida",
    "checks_title": "Revisiones",
    "chk_length_ok": "Longitud: 18 caracteres.",
    "chk_length_ko": "Longitud: {{n}} caracteres en lugar de 18.",
    "chk_chars_ok": "Caracteres permitidos (letras y dígitos).",
    "chk_chars_ko": "Carácter no permitido: solo se admiten letras y dígitos.",
    "chk_names_ok": "Posiciones 1-4: cuatro letras, la segunda es vocal o X.",
    "chk_names_ko": "Posiciones 1-4: deben ser cuatro letras, con vocal o X en la segunda.",
    "chk_date_ok": "La fecha de nacimiento existe.",
    "chk_date_ko": "Fecha de nacimiento imposible (posiciones 5-10, siglo según la posición 17).",
    "chk_sex_ok": "Sexo reconocido en la posición 11.",
    "chk_sex_ko": "Posición 11: se espera H, M o X.",
    "chk_state_ok": "Código de entidad {{code}} reconocido.",
    "chk_state_ko": "Código de entidad {{code}} desconocido (32 claves de RENAPO o NE).",
    "chk_consonants_ok": "Posiciones 14-16: tres consonantes.",
    "chk_consonants_ko": "Posiciones 14-16: se esperan tres consonantes (X sustituye a la Ñ o a una consonante inexistente).",
    "chk_century_ok": "Posición 17 correcta (dígito o letra).",
    "chk_century_ko": "Posición 17: se espera un dígito o una letra.",
    "chk_digit_ok": "Dígito verificador correcto ({{expected}}).",
    "chk_digit_ko": "Dígito verificador: se esperaba {{expected}}, se escribió {{given}}.",
    "decoded_title": "Datos que contiene la clave",
    "birth_date": "Fecha de nacimiento",
    "sex": "Sexo",
    "sex_H": "Hombre (H)",
    "sex_M": "Mujer (M)",
    "sex_X": "No binario (X)",
    "state": "Entidad de nacimiento",
    "born_abroad": "Nacido en el extranjero",
    "century": "Periodo de nacimiento",
    "c1900": "Hasta el 31/12/1999",
    "c2000": "Desde el 01/01/2000",
    "note": "Revisión sin conexión de la forma de la clave: una CURP válida no está necesariamente asignada. Solo la consulta de RENAPO en gob.mx/curp confirma que existe. No se revisan las palabras inconvenientes (regla 1.8 de RENAPO) porque no hay una lista oficial publicada."
  },
  "mexico-finiquito-liquidacion-calculator": {
    "title": "Calculadora de finiquito y liquidación en México",
    "subtitle": "Salarios pendientes, aguinaldo, vacaciones, prima de antigüedad e indemnización según la Ley Federal del Trabajo de México",
    "job_title": "Terminación de la relación laboral",
    "cause": "Causa",
    "cause_renuncia": "Renuncia voluntaria",
    "cause_fin_contrato": "Terminación de contrato por tiempo determinado",
    "cause_despido_justificado": "Despido justificado (art. 47 LFT)",
    "cause_despido_injustificado": "Despido injustificado (liquidación)",
    "daily_salary": "Salario diario (MXN)",
    "start": "Fecha de ingreso",
    "end": "Último día laborado",
    "pending_days": "Días de salario pendientes",
    "pending_vac": "Vacaciones de años cumplidos no disfrutadas (días)",
    "agui_days": "Días de aguinaldo al año",
    "prima_pct": "Prima vacacional (%)",
    "sm_title": "Salario mínimo 2026 (tope de la prima de antigüedad)",
    "zone": "Zona",
    "zone_general": "Resto del país (zona general)",
    "zone_frontera": "Zona Libre de la Frontera Norte",
    "sm": "Salario mínimo diario (MXN)",
    "sm_note": "315.04 pesos (zona general) y 440.87 pesos (frontera norte), vigentes desde el 01/01/2026 (DOF del 09/12/2025).",
    "total_liquidacion": "Liquidación estimada (sin 20 días por año)",
    "total_finiquito": "Finiquito estimado",
    "total_with_20": "Con 20 días por año: {{total}}",
    "seniority": "Antigüedad: {{years}} años ({{full}} años completos).",
    "finiquito_title": "Finiquito (se paga en cualquier caso)",
    "line_salaries": "Salarios devengados",
    "line_aguinaldo": "Aguinaldo proporcional ({{worked}} de {{total}} días)",
    "line_vacations": "Vacaciones: {{days}} días ({{entitled}} días en el año de servicio {{year}})",
    "line_prima": "Prima vacacional",
    "line_finiquito_total": "Total finiquito",
    "extra_title": "Prima de antigüedad e indemnización",
    "line_antiguedad": "Prima de antigüedad: 12 días × {{base}} × {{years}} años",
    "line_antiguedad_none": "Prima de antigüedad: no procede (separación voluntaria antes de 15 años)",
    "line_3months": "Indemnización constitucional: 90 días × salario integrado {{sdi}}",
    "antiguedad_cap": "Su salario supera 2 salarios mínimos: la prima de antigüedad se calcula con ese tope (arts. 485-486 LFT).",
    "fin_contrato_note": "Terminación de contrato: la herramienta aplica la regla de separación voluntaria (prima de antigüedad desde 15 años). Es una interpretación; la jurisprudencia puede resolver otra cosa.",
    "no_indemnity": "Sin indemnización de 3 meses: solo procede en despido injustificado.",
    "line_20days": "20 días por año: 20 × {{sdi}} × {{years}} años",
    "note_20days": "Los 20 días por año (art. 50 fr. II LFT) solo proceden si el patrón se niega a reinstalar en los casos del art. 49 (o si el trabajador rescinde por causa imputable al patrón, art. 52). Suelen aparecer en las negociaciones, pero no son automáticos. Años incompletos en proporción. Contrato por tiempo determinado: el art. 50 fr. I fija otra regla (la mitad del tiempo laborado si es menos de un año; si no, 6 meses por el primer año y 20 días por cada año siguiente), que no se calcula aquí.",
    "invalid_input": "Revise el salario y las fechas (la fecha final debe ser posterior al ingreso).",
    "note": "Estimación con la ley de México; no sustituye una asesoría jurídica ni el cálculo del patrón o de la PROFEDET. No incluye: ISR, salarios vencidos en juicio ni prestaciones contractuales. Salario integrado mínimo = salario diario × (1 + (días de aguinaldo + días de vacaciones × prima) ÷ 365)."
  },
  "mexico-net-salary-isr-imss-calculator": {
    "title": "Calculadora de sueldo neto en México: ISR, subsidio e IMSS",
    "subtitle": "Del sueldo bruto al neto en México, mensual o quincenal, con las tablas 2026",
    "salary_title": "Sueldo",
    "period": "Periodo de pago",
    "monthly": "Mensual",
    "biweekly": "Quincenal",
    "gross_monthly": "Sueldo bruto mensual (MXN)",
    "gross_biweekly": "Sueldo bruto quincenal (MXN)",
    "zone": "Zona de salario mínimo",
    "zone_general": "Resto del país (zona general)",
    "zone_frontera": "Zona Libre de la Frontera Norte",
    "integrate": "Integrar aguinaldo (15 días) y prima vacacional (25 %) al salario base de cotización",
    "vac_days": "Días de vacaciones al año (12 el primer año)",
    "params_title": "Parámetros 2026 (editables)",
    "uma": "UMA diaria (MXN)",
    "sub_pct": "Subsidio (% de la UMA mensual)",
    "sm_general": "Salario mínimo general (diario)",
    "sm_frontera": "Salario mínimo frontera norte (diario)",
    "sub_limit": "Límite de ingreso mensual para el subsidio (MXN)",
    "params_note": "Valores vigentes al 15/10/2026: UMA 117.31 (desde el 01/02/2026), salarios mínimos 315.04 y 440.87 (01/01/2026), subsidio 15.02 % hasta 11,492.66 al mes (01/01/2026). Las tarifas de ISR son las del Anexo 8 de la RMF 2026.",
    "net_monthly": "Sueldo neto mensual estimado",
    "net_biweekly": "Sueldo neto quincenal estimado",
    "deductions_share": "Retenciones de ISR e IMSS: {{pct}} % del bruto.",
    "min_wage_note": "Salario mínimo: el patrón no retiene ISR (art. 96 LISR) y paga él mismo la cuota obrera del IMSS (art. 36 LSS).",
    "isr_title": "Impuesto sobre la renta (ISR)",
    "gross": "Sueldo bruto",
    "isr_tarifa": "ISR según tarifa: {{fixed}} + {{pct}} % sobre el excedente de {{lower}}",
    "subsidy_applied": "Subsidio para el empleo (hasta {{amount}}, sin exceder el ISR)",
    "subsidy_none": "Sin subsidio: ingreso superior a {{limit}} en el periodo",
    "isr_withheld": "ISR retenido",
    "imss_title": "Cuotas obreras del IMSS",
    "sbc_line": "Salario diario {{sd}} × factor de integración {{factor}} = salario base de cotización {{sbc}}.",
    "sbc_capped": "Topado a 25 UMA.",
    "imss_excedente": "Enfermedad y maternidad, excedente de 3 UMA",
    "imss_dinero": "Prestaciones en dinero",
    "imss_pensionados": "Gastos médicos de pensionados",
    "imss_invalidez": "Invalidez y vida",
    "imss_cesantia": "Cesantía en edad avanzada y vejez",
    "imss_total": "Total cuotas obreras",
    "days_note": "Cálculo sobre {{days}} días por periodo (30.4 días al mes, como la UMA mensual y el decreto del subsidio). En quincena, el límite de ingreso del subsidio se prorratea por días: supuesto de la herramienta.",
    "invalid_input": "Escriba un sueldo y parámetros positivos.",
    "note": "Estimación con las reglas mexicanas 2026; no sustituye su recibo de nómina ni una asesoría fiscal. No incluye: percepciones exentas, horas extra, Infonavit, créditos Fonacot, pensión alimenticia ni el ajuste anual."
  },
  "mexico-rfc-validator": {
    "title": "Validar RFC (México)",
    "subtitle": "Estructura, fecha y dígito verificador del Registro Federal de Contribuyentes de México, personas físicas y morales",
    "input_label": "RFC a validar",
    "input_hint": "13 caracteres (persona física) o 12 (persona moral), con o sin guiones.",
    "use_example": "Ejemplo: RFC del SAT",
    "clear": "Borrar",
    "structure_title": "Cómo se forma el RFC",
    "structure_1": "Persona física: 4 letras de apellidos y nombre; persona moral: 3 letras de la razón social (se admiten Ñ y &).",
    "structure_2": "6 dígitos AAMMDD: fecha de nacimiento o de constitución.",
    "structure_3": "Homoclave de 3 caracteres asignada por el SAT para distinguir homonimias.",
    "structure_4": "El último carácter (dígito o A) es un dígito verificador calculado con los 12 anteriores.",
    "empty": "Escriba un RFC para validarlo.",
    "valid": "RFC válido (estructura y dígito verificador)",
    "invalid": "RFC no válido",
    "generic_national": "RFC genérico de público en general (ventas a clientes sin RFC)",
    "generic_foreign": "RFC genérico de residentes en el extranjero",
    "checks_title": "Revisiones",
    "chk_length_ok": "Longitud: {{n}} caracteres.",
    "chk_length_ko": "Longitud: {{n}} caracteres; se esperan 13 (persona física) o 12 (persona moral).",
    "chk_chars_ok": "Caracteres permitidos.",
    "chk_chars_ko": "Carácter no permitido: solo letras, dígitos, Ñ y &.",
    "chk_name_ok": "Los {{n}} primeros caracteres son letras.",
    "chk_name_ko": "Los {{n}} primeros caracteres deben ser letras (incluidas Ñ y &).",
    "chk_date_ok": "La fecha AAMMDD existe.",
    "chk_date_ko": "Fecha AAMMDD imposible (mes o día fuera de rango).",
    "chk_homoclave_ok": "Homoclave bien formada.",
    "chk_homoclave_ko": "Homoclave mal formada: 2 letras o dígitos y luego un dígito o A.",
    "chk_digit_ok": "Dígito verificador correcto ({{expected}}).",
    "chk_digit_ko": "Dígito verificador: se esperaba {{expected}}, se escribió {{given}}.",
    "decoded_title": "Datos que contiene el RFC",
    "person_type": "Tipo de contribuyente",
    "person_physical": "Persona física",
    "person_moral": "Persona moral",
    "date_birth": "Fecha de nacimiento probable",
    "date_incorporation": "Fecha de constitución probable",
    "homoclave": "Homoclave",
    "century_note": "El RFC solo trae dos dígitos del año: la herramienta toma 20AA si no está en el futuro y, si no, 19AA.",
    "note": "Revisión sin conexión de la forma: un RFC válido no está necesariamente inscrito ni activo. El SAT no publica cómo se calculan los dos primeros caracteres de la homoclave, por eso la herramienta no genera RFC. Para saber si existe, use la validación de RFC del portal del SAT. No se revisan palabras inconvenientes."
  },
  "peru-cts-calculator": {
    "title": "Calculadora de CTS Perú",
    "subtitle": "Compensación por Tiempo de Servicios del régimen general en el Perú (D.S. 001-97-TR)",
    "inputs": "Semestre y remuneración",
    "period": "Periodo de cálculo",
    "period_nov2026": "Mayo a octubre 2026 (depósito en noviembre 2026)",
    "period_may2026": "Noviembre 2025 a abril 2026 (depósito en mayo 2026)",
    "salary": "Remuneración básica mensual (S/)",
    "children": "Hijos a cargo: asignación familiar de {{amount}} (10 % de la RMV de {{rmv}})",
    "other": "Otras remuneraciones regulares (promedio mensual, percibidas al menos 3 meses del semestre)",
    "bonus_nov2026": "Gratificación de julio 2026 (Fiestas Patrias)",
    "bonus_may2026": "Gratificación de diciembre 2025 (Navidad)",
    "bonus_hint": "Un sexto se suma a la remuneración computable. Ingrese solo la gratificación, sin la bonificación extraordinaria del 9 %.",
    "months": "Meses completos laborados (0 a 6)",
    "days": "Días adicionales (0 a 29)",
    "invalid_input": "Revise el salario, los meses (0 a 6) y los días (0 a 29).",
    "result": "CTS estimada del semestre",
    "deposit": "El empleador debe depositarla a más tardar el {{date}}",
    "under_month": "Menos de un mes completo: la CTS se calcula y deposita con la del periodo siguiente.",
    "breakdown": "Detalle",
    "salary_row": "Remuneración básica",
    "family_row": "Asignación familiar",
    "other_row": "Otras remuneraciones regulares",
    "sixth_row": "1/6 de la gratificación",
    "rc_row": "Remuneración computable",
    "months_row": "Remuneración computable ÷ 12 × {{m}} meses",
    "days_row": "Remuneración computable ÷ 360 × {{d}} días",
    "note": "Régimen general de la actividad privada, reglas peruanas al 15/10/2026 (RMV de S/ 1 230 desde el 01/10/2026). No se calculan la microempresa (sin CTS) ni la pequeña empresa (REMYPE); descuente las inasistencias injustificadas. Estimación: no reemplaza una boleta de pago ni una asesoría jurídica."
  },
  "portugal-nif-validator": {
    "title": "Validar NIF de Portugal (número de contribuinte)",
    "subtitle": "Dígito de control módulo 11 y tipo de contribuyente según los primeros dígitos, con la regla de Portugal.",
    "validate_title": "Número a comprobar",
    "input_label": "NIF (9 dígitos)",
    "input_hint": "Con o sin espacios; se acepta el prefijo de IVA «PT».",
    "empty": "Introduzca un NIF para comprobarlo.",
    "valid": "NIF válido (dígito de control correcto)",
    "invalid": "NIF no válido",
    "formatted": "Formato:",
    "type_label": "Prefijo {{prefix}}:",
    "reason_chars": "El NIF solo contiene dígitos: quite letras y símbolos.",
    "reason_length": "Longitud incorrecta: {{n}} dígitos introducidos, se esperan 9.",
    "reason_prefix": "Prefijo no asignado: ningún NIF empieza por «{{first}}» (vea la lista de prefijos).",
    "reason_dv": "Dígito de control erróneo: se espera {{expected}}, se ha introducido {{entered}}.",
    "steps": "Suma ponderada de los 8 primeros dígitos: {{sum}}; resto de dividir entre 11: {{rest}}; dígito de control: {{dv}}.",
    "rule": "Regla: dígitos 1 a 8 multiplicados por 9, 8, 7, 6, 5, 4, 3, 2; control = 11 − (suma mód 11), o 0 si el resto es 0 o 1.",
    "prefixes_title": "Primeros dígitos del NIF",
    "col_prefix": "Empieza por",
    "col_meaning": "Tipo de contribuyente",
    "prefix_1": "Persona física residente",
    "prefix_2": "Persona física residente",
    "prefix_3": "Persona física residente (serie abierta en 2019)",
    "prefix_45": "Persona física no residente con rentas sujetas a retención liberatoria",
    "prefix_5": "Persona jurídica inscrita en el RNPC (sociedades)",
    "prefix_6": "Organismo público (administración central, regional o local)",
    "prefix_70": "Herencia yacente (herança indivisa)",
    "prefix_71": "Persona jurídica no residente, retención liberatoria",
    "prefix_72": "Fondo de inversión",
    "prefix_74": "Herencia yacente (herança indivisa)",
    "prefix_75": "Herencia yacente (herança indivisa)",
    "prefix_77": "Asignación de oficio (entidad no inscrita en el RNPC)",
    "prefix_78": "Asignación de oficio a un no residente (devolución de IVA)",
    "prefix_79": "Régimen excepcional (Expo 98)",
    "prefix_8": "Antiguo prefijo de empresarios individuales, ya no se asigna",
    "prefix_8_warning": "El dígito de control es correcto, pero este prefijo ya no se asigna: el número probablemente es antiguo o erróneo.",
    "prefix_90": "Comunidad de propietarios, sociedad irregular o herencia de un empresario individual",
    "prefix_91": "Comunidad de propietarios, sociedad irregular o herencia de un empresario individual",
    "prefix_98": "No residente sin establecimiento permanente",
    "prefix_99": "Sociedad civil sin personalidad jurídica",
    "note": "El cálculo solo comprueba la coherencia del número: un NIF válido no tiene por qué estar asignado. Solo la Autoridade Tributária (Portal das Finanças) confirma que el contribuyente existe; para un NIF-IVA intracomunitario, use VIES."
  },
  "spain-autonomos-quota-calculator": {
    "title": "Calculadora de cuota de autónomos 2026 en España",
    "subtitle": "En España: tramo según rendimientos netos reales, base de cotización y cuota mensual",
    "inputs": "Tu actividad",
    "income": "Ingresos anuales previstos (€)",
    "expenses": "Gastos deducibles anuales (€)",
    "expenses_hint": "Sin incluir la propia cuota de autónomos: la ley la vuelve a sumar al rendimiento.",
    "kind": "Tipo de autónomo",
    "kind_individual": "Autónomo persona física: gastos genéricos del 7 %",
    "kind_societario": "Autónomo societario (art. 305.2.b y e LGSS): 3 %",
    "societario_note": "El 3 % exige haber estado de alta al menos 90 días en el año. Puede aplicarse una base mínima específica para societarios (art. 308.1.a LGSS): revisa la base elegida.",
    "base": "Base de cotización elegida (€/mes)",
    "base_hint": "Vacío = base mínima. Horquilla del tramo: de {{min}} a {{max}}.",
    "flat": "Tarifa plana (cuota reducida por inicio de actividad)",
    "flat_amount": "Importe mensual de la tarifa plana (€)",
    "flat_hint": "Valor indicativo, a verificar: 80 €/mes de 2023 a 2025; la cuantía de 2026 depende de la Ley de Presupuestos. 12 meses, prorrogables otros 12 si el rendimiento no supera el SMI.",
    "result": "Cuota mensual estimada",
    "per_year": "Es decir, {{amount}} al año.",
    "net_annual": "Rendimiento neto anual",
    "generic": "Gastos genéricos deducidos",
    "net_monthly": "Rendimiento neto mensual computable",
    "tramo": "Tramo",
    "tramo_reduced": "Tabla reducida, tramo {{n}}",
    "tramo_general": "Tabla general, tramo {{n}}",
    "base_used": "Base de cotización aplicada",
    "rate": "Tipo total 2026",
    "cuota_full": "Cuota sin reducción",
    "mei": "De ella, MEI (0,9 %)",
    "table_title": "Tramos 2026 y cuota mínima",
    "col_tramo": "Tramo",
    "col_up": "Rendimiento neto mensual hasta",
    "col_min": "Base mínima",
    "col_cuota": "Cuota mínima",
    "above": "más de {{amount}}",
    "invalid": "Introduce importes positivos.",
    "note": "Normas españolas de 2026 (RETA). La cuota mensual es provisional: la Seguridad Social la regulariza con el rendimiento declarado en el IRPF. Estimación, no sustituye el consejo de un gestor."
  },
  "spain-dni-nie-letter-calculator": {
    "title": "Letra del DNI y del NIE (España)",
    "subtitle": "Calcula o comprueba la letra de control usada en España (módulo 23)",
    "input_label": "Número de DNI o NIE",
    "input_hint": "Con o sin letra; se aceptan espacios, puntos y guiones. NIE: X, Y o Z seguida de 7 cifras.",
    "result": "Letra de control",
    "kind_dni": "Documento reconocido: DNI / NIF de persona física española.",
    "kind_nie": "Documento reconocido: NIE (número de identidad de extranjero).",
    "valid": "La letra {{letter}} es correcta.",
    "invalid_letter": "Letra incorrecta: has escrito {{given}} y la letra correcta es {{expected}}.",
    "computed_only": "No has escrito letra: esta es la letra que corresponde al número.",
    "step_nie": "NIE: la letra inicial {{prefix}} se sustituye por la cifra {{digit}}.",
    "step_mod": "{{number}} ÷ 23: resto {{rest}}",
    "step_letter": "Resto {{rest}} → letra {{letter}} en la tabla oficial",
    "table_title": "Tabla resto → letra",
    "err_empty": "Escribe un número.",
    "err_chars": "Formato no reconocido: el DNI tiene hasta 8 cifras y una letra; el NIE empieza por X, Y o Z.",
    "err_dni_length": "Un DNI tiene como máximo 8 cifras.",
    "err_nie_length": "Un NIE tiene exactamente 7 cifras después de la X, Y o Z.",
    "note": "Solo se comprueba la letra: un número con la letra correcta no tiene por qué estar asignado a nadie. El cálculo se hace en tu navegador y no se envía nada."
  },
  "spain-net-salary-irpf-calculator": {
    "title": "Sueldo neto en España y retención IRPF 2026",
    "subtitle": "Cotizaciones del trabajador en España 2026 y retención según el algoritmo de la Agencia Tributaria",
    "salary_section": "Salario",
    "gross": "Sueldo bruto anual (€)",
    "pagas": "Número de pagas",
    "pagas_12": "12 (pagas prorrateadas)",
    "pagas_14": "14 (2 pagas extra)",
    "birth": "Año de nacimiento",
    "contract": "Tipo de contrato",
    "contract_indefinido": "Indefinido",
    "contract_temporal": "Temporal de un año o más",
    "contract_corto": "Temporal de menos de un año (retención mínima del 2 %)",
    "family_section": "Situación familiar (modelo 145)",
    "situ": "Situación",
    "situ_1": "1: soltero, viudo, divorciado o separado con hijos a cargo exclusivo",
    "situ_2": "2: casado y cónyuge con rentas inferiores a 1.500 €",
    "situ_3": "3: otras situaciones",
    "situ_fixed": "La situación 1 exige al menos un hijo: se calcula como situación 3.",
    "kids": "Hijos menores de 25 años",
    "under3": "de ellos, menores de 3 años",
    "whole": "Hijos computados por entero (solo usted los declara); si no, por mitad",
    "asc65": "Ascendientes de 65 o más años que conviven con usted",
    "asc75": "de ellos, de 75 o más",
    "result": "Sueldo neto mensual estimado",
    "per_month_14": "Por mes ordinario. Cada paga extra (sin cotización, ya prorrateada): {{extra}}.",
    "per_month_12": "Al mes, en 12 pagas.",
    "net_annual": "Neto anual",
    "irpf_rate": "Tipo de retención IRPF",
    "irpf_amount": "Retención IRPF anual",
    "ss_amount": "Cotizaciones a la Seguridad Social",
    "reduction": "Reducción por rendimientos del trabajo (art. 20)",
    "base": "Base para calcular el tipo de retención",
    "minimo": "Mínimo personal y familiar",
    "solidarity": "Incluye {{amount}} al año de cotización adicional de solidaridad (parte del trabajador por encima de la base máxima).",
    "exempt": "Sueldo por debajo del límite del art. 81 RIRPF: sin retención.",
    "invalid": "Revise el sueldo y el año de nacimiento.",
    "note": "Normas del territorio común (no aplica a País Vasco ni Navarra). No incluye discapacidad, movilidad geográfica, regularizaciones, pensiones compensatorias o anualidades, préstamo de vivienda anterior a 2013 ni Ceuta, Melilla o La Palma. Estimación: no sustituye a la nómina ni a un asesor."
  },
  "spain-severance-pay-calculator": {
    "title": "Calculadora de indemnización por despido en España",
    "subtitle": "Estatuto de los Trabajadores de España: 33, 45, 20 o 12 días de salario por año",
    "inputs": "Tus datos",
    "kind": "Tipo de extinción",
    "kind_improcedente": "Despido improcedente: 33 días por año (45 antes del 12/02/2012)",
    "kind_objetivo": "Despido objetivo procedente: 20 días por año",
    "kind_temporal": "Fin de contrato temporal: 12 días por año",
    "start": "Fecha de alta",
    "end": "Fecha de baja",
    "salary": "Salario bruto anual con pagas extra (€)",
    "salary_hint": "Incluye pagas extra y complementos habituales. Salario diario = salario anual ÷ 365.",
    "result": "Indemnización estimada",
    "result_days": "Equivale a {{days}} días de salario.",
    "daily": "Salario diario",
    "seniority": "Antigüedad computada",
    "seniority_value": "{{years}} año(s) y {{months}} mes(es)",
    "pre_line": "Antes del 12/02/2012: {{months}} meses × 45 días por año = {{days}} días",
    "post_line": "Desde el 12/02/2012: {{months}} meses × 33 días por año = {{days}} días",
    "cap_720": "Tope: 720 días de salario (DT 11ª).",
    "cap_pre": "El periodo anterior a 2012 ya supera 720 días: ese importe es el tope, con un máximo de 42 mensualidades (DT 11ª).",
    "capped": "Se alcanza el tope legal: el importe mostrado está limitado.",
    "objetivo_note": "Máximo de 12 mensualidades. Si el juez lo declara improcedente, se aplica la escala de 33 días.",
    "temporal_note": "Parte proporcional a los días trabajados. No se aplica a los contratos formativos ni al de sustitución.",
    "invalid": "Revisa las fechas (la baja debe ser posterior al alta) y el salario.",
    "note": "Derecho español (Estatuto de los Trabajadores). Cada mes empezado cuenta como mes completo, según el criterio habitual de los tribunales. Estimación: no sustituye al cálculo de la empresa (finiquito) ni a un asesoramiento jurídico; el convenio colectivo puede mejorarla."
  },
  "uk-take-home-pay-calculator": {
    "title": "Salario neto en Reino Unido (take-home pay 2026/27)",
    "subtitle": "Salario neto en Reino Unido tras income tax, National Insurance, préstamo de estudios y pensión, para el ejercicio del 6 de abril de 2026 al 5 de abril de 2027.",
    "salary_section": "Salario",
    "gross": "Salario bruto anual (£)",
    "region": "Residencia fiscal",
    "region_ruk": "Inglaterra, Gales o Irlanda del Norte",
    "region_scotland": "Escocia (tipos escoceses)",
    "plan": "Préstamo de estudios",
    "plan_none": "Ninguno",
    "plan_1": "Plan 1 (umbral 26 900 £)",
    "plan_2": "Plan 2 (umbral 29 385 £)",
    "plan_4": "Plan 4, Escocia (umbral 33 795 £)",
    "plan_5": "Plan 5 (umbral 25 000 £)",
    "postgraduate": "Préstamo de posgrado (6 % por encima de 21 000 £)",
    "pension_section": "Pensión de empresa",
    "pension_pct": "Aportación del empleado (% del bruto)",
    "pension_mode": "Forma de descuento",
    "mode_sacrifice": "Salary sacrifice (antes de impuesto y NI)",
    "mode_netpay": "Net pay arrangement (solo antes de impuesto)",
    "mode_ras": "Relief at source (tras impuesto, +20 % aportado por el Estado)",
    "mode_sacrifice_help": "Renuncia a una parte del salario y la empresa la ingresa en la pensión: sin impuesto, National Insurance ni devolución del préstamo de estudios sobre esa parte.",
    "mode_netpay_help": "La aportación se descuenta antes del impuesto sobre la renta, pero la National Insurance y el préstamo se calculan sobre el salario completo.",
    "mode_ras_help": "Usted paga el 80 % de la aportación del salario neto y el fondo reclama el 20 % a HMRC. Quien tributa al 40 % o más recupera el resto en su declaración (Self Assessment), no incluido aquí.",
    "result": "Salario neto",
    "per_month": "al mes, en 12 meses",
    "col_item": "Concepto",
    "col_year": "Año",
    "col_month": "Mes",
    "col_week": "Semana",
    "row_gross": "Salario bruto",
    "row_pension": "Aportación a la pensión (coste para usted)",
    "row_tax": "Impuesto sobre la renta (income tax)",
    "row_ni": "National Insurance",
    "row_sl": "Préstamo de estudios",
    "row_pgl": "Préstamo de posgrado",
    "row_net": "Salario neto",
    "pa_used": "Personal Allowance aplicada",
    "pension_paid_in": "Ingresado en la pensión (parte del empleado, con desgravación)",
    "taper_note": "Por encima de 100 000 £ de renta neta ajustada, la Personal Allowance baja 1 £ por cada 2 £; es nula desde 125 140 £.",
    "invalid": "Introduzca un salario positivo y una aportación entre 0 y 100 %.",
    "assumptions": "Hipótesis: código fiscal 1257L, categoría NI A, salario regular durante el año (NI calculada en anual), aportación en % del bruto total, sin retribuciones en especie, Marriage Allowance ni otros ingresos. Tipos 2026/27 de gov.uk.",
    "disclaimer": "Estimación según el derecho británico: no sustituye una nómina (payslip) ni un asesoramiento fiscal."
  },
  "mon-adresse-ip": {
    "heading": "Mi dirección IP pública",
    "subtitle": "La dirección con la que los sitios web ven su conexión, en IPv4 e IPv6.",
    "ipv4_label": "Dirección IPv4 pública",
    "ipv6_label": "Dirección IPv6",
    "no_ipv4": "No se ha detectado ninguna dirección IPv4: puede que su conexión sea solo IPv6.",
    "no_ipv6": "No se detecta IPv6: su red o su proveedor no lo usa para esta conexión.",
    "what_it_shows": "Es la dirección de salida de su red (router, red de empresa, red móvil o VPN), no la de su dispositivo en la red local. La herramienta no muestra ninguna ubicación ni nombre de operador.",
    "source_name": "ipify",
    "public_vs_private": "IP pública, IP privada y NAT",
    "nat_explain": "En casa, el router asigna a cada dispositivo una dirección privada, invisible desde Internet. Traduce esas direcciones a una única dirección pública (NAT): todos los dispositivos del hogar salen con la misma IP pública. Los rangos siguientes están reservados a redes internas.",
    "range_private": "Privada (RFC 1918)",
    "range_cgnat": "NAT de operador (RFC 6598)",
    "range_ula": "IPv6 local única (RFC 4193)",
    "shared_ip_note": "En una red móvil o de empresa, cientos de usuarios pueden compartir la misma dirección IPv4 pública. La dirección también puede cambiar al reiniciar el router.",
    "subnet_link": "Calcular una subred IPv4 (máscara, CIDR, rango de hosts)"
  },
  "codes-statut-http": {
    "heading": "Códigos de estado HTTP: lista y significado",
    "subtitle": "Los códigos 1xx a 5xx del registro IANA, con su nombre oficial, una explicación y la RFC que los define.",
    "search_label": "Buscar un código",
    "search_placeholder": "Código o palabra clave, p. ej. 404, redirección, caché",
    "filter_label": "Filtrar por clase",
    "all": "Todos",
    "class_1": "Información",
    "class_2": "Éxito",
    "class_3": "Redirección",
    "class_4": "Error del cliente",
    "class_5": "Error del servidor",
    "count": "{{n}} de {{total}} códigos mostrados",
    "none": "Ningún código coincide con esta búsqueda.",
    "c100": "El servidor ha recibido las cabeceras e invita al cliente a enviar el cuerpo de la petición (respuesta a «Expect: 100-continue»).",
    "c101": "El servidor acepta cambiar de protocolo, por ejemplo a WebSocket.",
    "c102": "Procesamiento WebDAV en curso, para evitar que el cliente agote el tiempo de espera. Retirado de WebDAV por la RFC 4918, sigue registrado.",
    "c103": "Respuesta provisional que anuncia cabeceras Link para que el navegador precargue recursos antes de la respuesta final.",
    "c200": "La petición ha tenido éxito; el cuerpo contiene el recurso o el resultado solicitado.",
    "c201": "Se ha creado un recurso, normalmente tras un POST o un PUT; la cabecera Location indica su dirección.",
    "c202": "La petición se ha aceptado pero su procesamiento no ha terminado (tarea asíncrona).",
    "c203": "Éxito, pero un proxy de transformación ha modificado el contenido.",
    "c204": "Éxito sin contenido que devolver, habitual tras un DELETE o un guardado.",
    "c205": "Éxito; el cliente debe restablecer la vista, por ejemplo vaciar un formulario.",
    "c206": "Solo se devuelve una parte del recurso, en respuesta a una cabecera Range (reanudación de descargas, vídeo).",
    "c207": "WebDAV: el cuerpo XML contiene un estado distinto para cada uno de varios recursos.",
    "c208": "WebDAV: miembros ya enumerados antes en la misma respuesta, para no repetirlos.",
    "c226": "El servidor devuelve el resultado de manipulaciones de instancia (delta encoding) aplicadas al recurso.",
    "c300": "Hay varias representaciones posibles y el cliente debe elegir; poco utilizado.",
    "c301": "Redirección definitiva: el recurso ha cambiado de dirección. Los buscadores trasladan la URL antigua a la nueva.",
    "c302": "Redirección temporal; la dirección original sigue siendo válida. Los navegadores suelen convertir un POST en GET.",
    "c303": "Ver otra dirección con un GET, normalmente tras enviar un formulario (patrón POST, redirección, GET).",
    "c304": "El recurso no ha cambiado desde la copia en caché del cliente (ETag o fecha): no se envía cuerpo.",
    "c305": "Obsoleto: pedía pasar por un proxy; abandonado por motivos de seguridad.",
    "c306": "Reservado: se usó en una versión anterior de la especificación y ya no tiene significado.",
    "c307": "Redirección temporal que conserva el método y el cuerpo (un POST sigue siendo POST).",
    "c308": "Redirección definitiva que conserva el método y el cuerpo, equivalente estricto del 301.",
    "c400": "Petición mal formada: sintaxis no válida, parámetro ausente, JSON ilegible.",
    "c401": "Autenticación requerida o no válida; pese a su nombre, significa «no autenticado». La respuesta incluye WWW-Authenticate.",
    "c402": "Reservado para un uso futuro relacionado con pagos; algunas API lo usan para una suscripción caducada.",
    "c403": "El servidor ha entendido la petición pero deniega el acceso, incluso autenticado: permisos insuficientes.",
    "c404": "No hay ningún recurso en esta dirección, o el servidor no quiere revelar que existe.",
    "c405": "El método (GET, POST, DELETE…) no se admite para este recurso; la cabecera Allow enumera los aceptados.",
    "c406": "Ninguna representación coincide con las cabeceras Accept del cliente (formato, idioma).",
    "c407": "Como el 401, pero es el proxy el que exige autenticación.",
    "c408": "El cliente ha tardado demasiado en enviar la petición; el servidor cierra la conexión.",
    "c409": "Conflicto con el estado actual del recurso, por ejemplo dos modificaciones simultáneas.",
    "c410": "El recurso se ha eliminado definitivamente; a diferencia del 404, el servidor lo afirma.",
    "c411": "El servidor exige una cabecera Content-Length.",
    "c412": "No se cumple una condición de la petición (If-Match, If-Unmodified-Since).",
    "c413": "El cuerpo de la petición supera el tamaño que acepta el servidor (nombre anterior: Payload Too Large).",
    "c414": "La dirección solicitada es demasiado larga para el servidor, a menudo por exceso de parámetros.",
    "c415": "El formato enviado (Content-Type) no se admite, por ejemplo XML donde se espera JSON.",
    "c416": "El rango de bytes solicitado (Range) está fuera del recurso.",
    "c417": "El servidor no puede satisfacer la cabecera Expect de la petición.",
    "c418": "Broma del Día de los Inocentes de abril de la RFC 2324 (protocolo de cafetera HTCPCP). La RFC 9110 lo reserva: no debe asignarse a otro uso.",
    "c421": "La petición llegó a un servidor que no puede responder para este dominio (conexión HTTP/2 reutilizada).",
    "c422": "Sintaxis correcta pero contenido no válido, por ejemplo un campo que no supera la validación (nombre anterior: Unprocessable Entity).",
    "c423": "WebDAV: el recurso está bloqueado.",
    "c424": "WebDAV: la acción ha fallado porque falló otra de la que dependía.",
    "c425": "El servidor se niega a procesar una petición enviada como early data de TLS 1.3, por riesgo de repetición.",
    "c426": "El cliente debe cambiar a otro protocolo, indicado en la cabecera Upgrade.",
    "c428": "El servidor exige una petición condicional (If-Match) para no sobrescribir un cambio.",
    "c429": "Demasiadas peticiones en poco tiempo: límite de frecuencia alcanzado. La cabecera Retry-After puede indicar cuándo reintentar.",
    "c431": "Las cabeceras de la petición son demasiado grandes, a menudo por exceso de cookies.",
    "c451": "Recurso bloqueado por motivos legales (orden judicial, censura). El número alude a Fahrenheit 451.",
    "c500": "Error inesperado en el servidor, sin más detalle: fallo, excepción no controlada.",
    "c501": "El servidor no sabe tratar el método solicitado.",
    "c502": "Un proxy o pasarela ha recibido una respuesta no válida del servidor de origen.",
    "c503": "Servicio no disponible temporalmente (mantenimiento, sobrecarga); Retry-After puede indicar el plazo.",
    "c504": "Un proxy o pasarela no ha recibido a tiempo la respuesta del servidor de origen.",
    "c505": "La versión de HTTP utilizada en la petición no es compatible.",
    "c506": "Error de configuración de la negociación de contenido: la variante elegida vuelve a negociar.",
    "c507": "WebDAV: el servidor no tiene espacio para guardar el recurso.",
    "c508": "WebDAV: se ha detectado un bucle infinito al procesar la petición.",
    "c510": "Se requieren extensiones adicionales; la RFC de origen es histórica y la IANA marca el código como obsoleto.",
    "c511": "La red exige autenticación, normalmente el portal cautivo de una wifi pública.",
    "rfc": "RFC {{n}}"
  },
  "hacker-news-tendances": {
    "heading": "Tendencias de Hacker News",
    "subtitle": "Los artículos de la portada de Hacker News o los últimos publicados, con puntos y comentarios.",
    "mode_front": "Portada",
    "mode_recent": "Recientes",
    "min_points": "Puntos mínimos",
    "count": "Artículos mostrados: {{n}}",
    "none": "Ningún artículo alcanza esa cantidad de puntos. Baje el umbral.",
    "points": "{{n}} ptos",
    "comments": "{{n}} comentarios",
    "by": "por {{author}}",
    "source_name": "Hacker News Search (Algolia)"
  },
  "profil-github-stats": {
    "heading": "Estadísticas de un perfil de GitHub",
    "subtitle": "Seguidores, repositorios públicos, estrellas recibidas y lenguajes principales de una cuenta de GitHub.",
    "login_label": "Usuario de GitHub",
    "login_placeholder": "Usuario de GitHub, p. ej. torvalds",
    "analyse": "Analizar el perfil",
    "invalid_login": "Usuario no válido: de 1 a 39 letras, cifras o guiones, sin guion al principio.",
    "quota_note": "GitHub limita las peticiones anónimas a 60 por hora y por dirección IP; cada análisis usa 2 y queda en caché una hora.",
    "empty": "Escriba un usuario y pulse «Analizar el perfil». No se envía nada antes.",
    "quota_reached": "Cuota de GitHub agotada para su dirección IP (60 peticiones por hora sin cuenta). Vuelva a intentarlo en menos de una hora; en una red de empresa, la IP puede estar compartida con sus compañeros.",
    "avatar_alt": "Avatar de GitHub de {{login}}",
    "followers": "Seguidores",
    "following": "Siguiendo",
    "public_repos": "Repositorios públicos",
    "public_gists": "Gists públicos",
    "member_since": "Cuenta creada el {{date}}",
    "total_stars": "Estrellas recibidas",
    "own_repos": "Repositorios propios",
    "forked_repos": "Forks",
    "analysed": "{{n}} repositorios analizados de {{total}} públicos.",
    "analysed_limit": "La API devuelve como máximo 100 repositorios por petición: solo se cuentan los 100 actualizados más recientemente.",
    "languages": "Lenguajes principales",
    "lang_count": "{{n}} repositorio(s) · {{pct}} %",
    "no_language": "No se ha detectado ningún lenguaje en los repositorios propios.",
    "languages_note": "Cada repositorio cuenta una vez, por el lenguaje principal que le asigna GitHub; no es un recuento de líneas de código. Los forks se excluyen de las estrellas y los lenguajes.",
    "top_repos": "Repositorios con más estrellas",
    "source_name": "API REST de GitHub"
  },
  "vulnerabilites-paquet-osv": {
    "heading": "Vulnerabilidades conocidas de un paquete (base OSV)",
    "subheading": "npm, PyPI, Maven, Go, crates.io y otros: identificador, CVE, resumen, gravedad publicada y versión corregida.",
    "ecosystem": "Ecosistema",
    "name": "Nombre del paquete",
    "version": "Versión",
    "version_placeholder": "todas",
    "search": "Analizar",
    "hint_default": "Nombre tal como figura en el registro (p. ej. lodash, requests, serde).",
    "hint_maven": "Maven: groupId:artifactId (p. ej. org.apache.logging.log4j:log4j-core).",
    "hint_go": "Go: ruta completa del módulo (p. ej. golang.org/x/net).",
    "hint_packagist": "Packagist: proveedor/paquete (p. ej. symfony/http-kernel).",
    "hint_actions": "GitHub Actions: propietario/repositorio de la acción (p. ej. tj-actions/changed-files).",
    "hint_swift": "SwiftURL: dirección del repositorio (p. ej. github.com/vapor/vapor).",
    "version_hint": "Versión vacía: todas las vulnerabilidades conocidas, de cualquier versión.",
    "invalid": "Nombre o versión no válidos: sin espacios, 300 caracteres como máximo.",
    "bad_request": "OSV ha rechazado la consulta: compruebe el ecosistema y el formato del nombre.",
    "count": "Vulnerabilidades conocidas: {{n}}",
    "scope_version": "Vulnerabilidades que afectan a esta versión concreta, según los rangos publicados en OSV.",
    "scope_all": "Todas las vulnerabilidades conocidas del paquete, sea cual sea la versión: indique una versión para saber si la suya está afectada.",
    "none_note": "Que no haya entradas en OSV no prueba la ausencia de fallos: compruebe también el nombre exacto del paquete.",
    "partial": "Lista parcial: OSV devolvió más resultados en una página siguiente, no mostrada.",
    "severity_published": "Gravedad publicada: {{level}}",
    "fixed_in": "Corregida en la versión",
    "last_affected": "sin corrección publicada; última versión afectada: {{v}}",
    "no_fix": "Ninguna versión corregida publicada",
    "published": "Publicada el",
    "cvss": "Vector(es) de gravedad publicados",
    "show_all": "Mostrar las {{n}} vulnerabilidades",
    "note": "Identificadores, resúmenes y gravedades se muestran tal como se publican en OSV (GitHub Advisory, PyPA, Go, RustSec…), en inglés. La herramienta no asigna ninguna nota propia.",
    "source_name": "OSV.dev (Open Source Vulnerabilities)"
  },
  "pypi-package-info": {
    "heading": "Paquete PyPI: última versión, Python requerido y dependencias",
    "subheading": "Datos leídos en directo de la API JSON de PyPI, el índice oficial de paquetes de Python.",
    "name_label": "Nombre del paquete en PyPI",
    "name_placeholder": "p. ej. requests, numpy, django",
    "search": "Buscar",
    "invalid_name": "Nombre no válido: solo letras, cifras, guion, punto y guion bajo, sin separador al principio ni al final.",
    "latest_version": "Última versión publicada",
    "requires_python": "Python requerido",
    "not_specified": "No indicado",
    "license": "Licencia declarada",
    "latest_release_date": "Fecha de la última versión",
    "first_release_date": "Primera publicación",
    "release_count": "Versiones publicadas",
    "yanked": "Esta versión ha sido retirada («yanked») por sus mantenedores.",
    "links": "Enlaces del proyecto",
    "pypi_page": "Página del paquete en PyPI",
    "dependencies": "Dependencias obligatorias ({{n}})",
    "no_dependencies": "Ninguna dependencia declarada para esta versión.",
    "optional_dependencies": "Dependencias opcionales, por «extra» ({{n}})",
    "note": "Información declarada por los mantenedores del paquete, mostrada tal como se publica. La descripción larga del proyecto no se reproduce aquí: consulte la página de PyPI.",
    "source_name": "PyPI (Python Package Index)"
  },
  "caniuse-compatibilite-css": {
    "heading": "Compatibilidad CSS y HTML por navegador (datos de caniuse)",
    "subheading": "Proporción de usuarios compatibles y primera versión de Chrome, Edge, Firefox y Safari que admite la función.",
    "search_label": "Función CSS, HTML o JavaScript (en inglés)",
    "search_placeholder": "p. ej. grid, :has, aspect-ratio, dialog",
    "search": "Buscar",
    "try": "Pruebe:",
    "download_note": "La primera búsqueda descarga la base completa de caniuse (unos 450 KB comprimidos, casi 5 MB descomprimidos), una sola vez por visita.",
    "downloading": "Descargando la base de caniuse (unos 450 KB comprimidos, casi 5 MB descomprimidos)… Las búsquedas siguientes serán instantáneas.",
    "no_result": "Ninguna función coincide. Los títulos de caniuse están en inglés: pruebe el nombre de la propiedad CSS o una palabra clave en inglés.",
    "results": "Resultados ({{n}})",
    "spec_status": "Estado de la especificación:",
    "english_note": "título y descripción publicados en inglés por caniuse",
    "usage_full": "Soporte completo",
    "usage_partial": "Soporte parcial",
    "usage_total": "Total",
    "usage_note": "Proporción mundial de usuarios cuyo navegador admite la función, según las estadísticas de uso que utiliza caniuse.",
    "min_versions": "Versión mínima por navegador",
    "col_browser": "Navegador",
    "col_current": "Versión actual",
    "col_since": "Desde la versión",
    "state_yes": "Compatible",
    "state_prefix": "Con prefijo",
    "state_partial": "Parcial",
    "state_no": "No compatible",
    "state_unknown": "Desconocido",
    "since_note": "«Desde»: primera versión a partir de la cual el estado actual se mantiene sin interrupción hasta la última publicada. Las notas y errores conocidos están en la página de caniuse de la función.",
    "source_name": "caniuse.com",
    "license": "CC BY 4.0"
  },
  "jsdelivr-cdn-package": {
    "heading": "Paquete npm en jsDelivr: versiones y etiqueta script para copiar",
    "subheading": "Versiones publicadas y archivo principal leídos en directo de la API de jsDelivr.",
    "name_label": "Nombre del paquete npm",
    "name_placeholder": "p. ej. bootstrap, chart.js, @floating-ui/dom",
    "search": "Buscar",
    "invalid_name": "Nombre npm no válido: minúsculas, cifras y - . _ ~, con un ámbito opcional en la forma @ambito/nombre.",
    "version_label": "Versión",
    "version_count": "{{n}} versiones publicadas; las {{shown}} más recientes en la lista.",
    "tags": "Etiquetas de distribución",
    "snippets_title": "Código para pegar en su página",
    "script_tag": "Etiqueta script (JavaScript)",
    "link_tag": "Etiqueta link (hoja de estilos)",
    "copy_tag": "Copiar etiqueta",
    "copy_url": "Copiar URL",
    "guessed": "Archivo deducido por jsDelivr (el paquete no declara archivo para navegador): compruebe que funciona antes de usarlo.",
    "no_entrypoint": "jsDelivr no propone ningún archivo principal para esta versión.",
    "no_sri": "Esta herramienta no calcula el hash de integridad (atributo integrity, SRI). Para producción, añádalo desde la página del paquete en jsDelivr.",
    "pin_note": "La etiqueta fija una versión exacta: el archivo ya no cambiará. Una URL sin versión sigue la última publicación y puede romper su sitio con una versión mayor.",
    "source_name": "jsDelivr"
  },
  "marches-publics-boamp": {
    "heading": "Licitaciones públicas francesas (BOAMP): búsqueda por palabra clave y departamento",
    "subheading": "Anuncios publicados en el boletín oficial francés de contratación pública, con la fecha límite de respuesta.",
    "filters": "Criterios",
    "keyword": "Palabra clave",
    "keyword_placeholder": "Ej.: nettoyage, toiture, logiciel (en francés)",
    "department": "Departamento (número)",
    "department_placeholder": "Ej.: 69, 2A, 971",
    "department_invalid": "Introduzca un número de departamento: de 1 a 3 cifras, o 2A / 2B.",
    "market_type": "Tipo de contrato",
    "type_all": "Todos",
    "type_travaux": "Obras",
    "type_services": "Servicios",
    "type_fournitures": "Suministros",
    "sort": "Orden",
    "sort_recent": "Publicación más reciente",
    "sort_deadline": "Fecha límite más próxima",
    "open_only": "Solo los anuncios cuya fecha límite de respuesta no ha pasado",
    "search": "Buscar",
    "count": "{{total}} anuncios encontrados, {{shown}} mostrados.",
    "no_result": "Ningún anuncio coincide con estos criterios.",
    "nature_avis": "Anuncio de licitación",
    "nature_resultat": "Anuncio de adjudicación",
    "nature_rectificatif": "Rectificación",
    "nature_annulation": "Anuncio de anulación",
    "nature_modification": "Modificación",
    "open_notice": "Abrir el anuncio oficial en boamp.fr",
    "published": "Publicado el",
    "deadline": "Fecha límite de respuesta",
    "no_deadline": "no indicada",
    "closed": "cerrada",
    "days_left_one": "queda {{count}} día",
    "days_left_other": "quedan {{count}} días",
    "procedure": "Procedimiento",
    "deadline_note": "La fecha límite se muestra tal como se publica, sin la hora: el conjunto de datos mezcla hora local y UTC. Compruebe la hora exacta y los pliegos en el anuncio oficial.",
    "source_name": "BOAMP (DILA), datos abiertos",
    "license": "Licencia Abierta Etalab",
    "days_left": "vence {{when}}"
  },
  "mot-de-passe-pirate-hibp": {
    "heading": "¿Contraseña filtrada? Compruébela en las filtraciones conocidas",
    "subtitle": "Comparación con la base Pwned Passwords de Have I Been Pwned, sin enviar su contraseña.",
    "password_label": "Contraseña que desea comprobar",
    "show": "Mostrar la contraseña",
    "hide": "Ocultar la contraseña",
    "check": "Comprobar",
    "privacy_note": "Su navegador calcula la huella SHA-1 de la contraseña y solo envía sus 5 primeros caracteres. La comparación se hace en su dispositivo y no se guarda nada.",
    "no_crypto": "Su navegador no puede calcular la huella SHA-1 en esta página (conexión no segura o navegador demasiado antiguo).",
    "empty": "Escriba una contraseña y pulse «Comprobar». No se envía nada antes.",
    "found_title": "Esta contraseña aparece en filtraciones de datos",
    "found_count": "Vista {{n}} veces",
    "found_advice": "No la use más: los atacantes prueban primero las contraseñas ya filtradas. Cámbiela en todas las cuentas donde la utilice, empezando por el correo y el banco, y active la verificación en dos pasos.",
    "not_found_title": "No aparece en las filtraciones conocidas",
    "not_found_advice": "Esta contraseña no figura en la base Pwned Passwords. Eso no garantiza que sea robusta: una contraseña corta o previsible puede adivinarse sin haberse filtrado nunca.",
    "prefix_sent": "Único dato enviado al servicio (inicio de la huella SHA-1):",
    "source_name": "Pwned Passwords, Have I Been Pwned (Troy Hunt)",
    "entropy_link": "Medir también la robustez (entropía) de esta contraseña"
  },
  "recherche-entreprise-siret": {
    "title": "Búsqueda de empresas francesas por nombre, SIREN o SIRET",
    "subtitle": "SIREN, SIRET de la sede, código NAF, estado, fecha de creación y directivos publicados por el Annuaire des Entreprises francés.",
    "query_label": "Nombre, SIREN, SIRET o dirección",
    "query_placeholder": "Ej. Airbus, 383 474 814 o 38347481400100",
    "search": "Buscar",
    "too_short": "Escriba al menos 3 caracteres.",
    "no_result": "No se ha encontrado ninguna empresa. Revise la ortografía o el número; las empresas no difundibles no aparecen.",
    "n_results": "{{value}} resultado(s), se muestran los 10 primeros",
    "state_active": "Activa",
    "state_closed": "Cerrada",
    "siren": "SIREN",
    "siret": "SIRET",
    "siret_head_office": "SIRET de la sede",
    "naf": "Código NAF (APE)",
    "naf_note": "Código de actividad principal del INSEE: la API no publica su denominación, que puede consultarse en la nomenclatura NAF del INSEE.",
    "creation_date": "Fecha de creación",
    "closing_date": "Fecha de cese",
    "open_establishments": "Establecimientos abiertos",
    "head_office": "Dirección de la sede",
    "searched_establishment": "Establecimiento que corresponde al SIRET buscado",
    "address": "Dirección",
    "state": "Estado",
    "officers": "Directivos publicados",
    "not_published": "No publicado",
    "full_sheet": "Ficha completa en el Annuaire des Entreprises",
    "source_name": "API Recherche d'entreprises (DINUM, Francia)"
  },
  "wordpress-plugin-check": {
    "heading": "Comprobar un plugin de WordPress antes de instalarlo",
    "subheading": "Versión, instalaciones activas, última actualización, versiones de WordPress y PHP requeridas y valoración, leídas en directo en WordPress.org.",
    "slug_label": "Identificador (slug) o dirección de la página del plugin",
    "slug_placeholder": "p. ej. contact-form-7, woocommerce",
    "slug_hint": "El slug es el final de la dirección wordpress.org/plugins/…/: puede pegar la dirección completa.",
    "search": "Comprobar",
    "invalid_slug": "Slug no válido: solo minúsculas, cifras y guiones.",
    "not_found_hint": "Un plugin no encontrado también puede haber sido cerrado por WordPress.org (fallo de seguridad, abandono, incumplimiento de normas): aquí la API no distingue ambos casos.",
    "by": "por {{author}}",
    "version": "Versión",
    "active_installs": "Instalaciones activas",
    "installs_few": "Menos de 10",
    "rating": "Valoración de usuarios",
    "rating_value": "{{stars}}/5 ({{n}} reseñas)",
    "no_rating": "Sin reseñas",
    "requires_wp": "WordPress mínimo",
    "tested": "Probado hasta WordPress",
    "requires_php": "PHP mínimo",
    "not_specified": "No indicado",
    "stale": "Sin actualizaciones desde hace {{years}} años. Este umbral de 2 años es una referencia de esta herramienta; WordPress.org muestra un aviso en la página del plugin cuando no se ha probado con las 3 últimas versiones mayores de WordPress.",
    "dates": "Actividad",
    "last_updated": "Última actualización (tal como se publica)",
    "added": "Añadido al directorio",
    "support": "Temas de soporte resueltos (últimos 2 meses)",
    "support_value": "{{resolved}} de {{total}}",
    "links": "Enlaces",
    "wp_page": "Página del plugin en WordPress.org",
    "homepage": "Sitio del autor",
    "note": "Valores declarados por el autor y por WordPress.org, mostrados tal como se publican. WordPress.org redondea el número de instalaciones por tramos.",
    "source_name": "WordPress.org Plugin Directory"
  },
  "client-retainer-calculator": {
    "client_retainer_pricing_utilization_calculator": "Calculadora de Precios y Utilización de Retención de Clientes",
    "price_high_ticket_agency_retainers_overage": "Calcula retenciones de agencias de alto valor, multiplicadores de excedentes, recargos de SLA y predice ingresos recurrentes anuales (ARR).",
    "retainer_fee_copied": "¡Tarifa de retención copiada!",
    "monthly_retainer_client": "Retención Mensual / Cliente",
    "mo": "mes",
    "guaranteed_mrr": "MRR Garantizado",
    "mo_2": "mes",
    "across_active_clients_h": "Entre {{v0}} clientes activos ({{v1}}h)",
    "projected_arr_annual": "ARR Proyectado (Anual)",
    "predictable_base_cashflow": "Flujo de caja base predecible",
    "realized_hourly_rate": "Tarifa Horaria Realizada",
    "hr": "hr",
    "base_target_hr": "Objetivo base: {{v0}}/hr",
    "retainer_package_terms": "Términos del Paquete de Retención",
    "retained_hours_per_month": "Horas Retenidas por Mes",
    "hrs_mo": "hrs / mes",
    "base_standard_hourly_rate": "Tarifa Horaria Estándar Base",
    "commitment_discount": "Descuento por Compromiso (%)",
    "sla_priority_markup": "Recargo de SLA / Prioridad (%)",
    "overage_rate_multiplier": "Multiplicador de Tarifa de Excedente",
    "active_retainer_clients": "Clientes de Retención Activos",
    "clients": "clientes",
    "est_monthly_overage_hours_client": "Horas de Excedente Mensual Est. / Cliente",
    "client_proposal_breakdown": "Desglose de Propuesta del Cliente",
    "effective_retainer_hourly_rate": "Tarifa Horaria Efectiva de Retención",
    "out_of_scope_overage_rate": "Tarifa de Excedente Fuera de Alcance",
    "base_monthly_retainer": "Retención Mensual Base",
    "est_overages_h": "+ Excedentes Est. ({{v0}}h)",
    "total_est_value_client": "Valor Total Est. / cliente",
    "contract_tip": "Consejo de Contrato:",
    "include_a_use_it_or_lose": "Incluye una política de \"úsalo o piérdelo\" que expire horas sin usar mensualmente para proteger ancho de banda y evitar acumulación de atrasos repentinos.",
    "unit_currency_per_hour": "{{symbol}}/h",
    "unit_hrs": "h"
  },
  "freelance-salary-calculator": {
    "freelance_1099_hourly_rate_to_salary": "Calculadora de Tarifa Horaria Freelance 1099 a Salario e Impuestos",
    "convert_freelance_contractor_1099_hourly_rates": "Convierte tarifas horarias de contratistas freelance 1099 a salario neto a llevar a casa, considerando utilización facturable, impuesto SECA del 15,3%, salud y equivalencia W-2.",
    "billing_rate_billable_hours": "Tarifa de Facturación y Horas Facturables",
    "hourly_billing_rate_hr": "Tarifa Horaria de Facturación ({{v0}}/h)",
    "billable_hrs_week": "Horas Facturables / Semana",
    "unpaid_weeks_off_yr": "Semanas Libres No Pagadas / Año",
    "health_insurance_mo": "Seguro Médico ({{v0}}/mes)",
    "business_tools_mo": "Herramientas Empresariales ({{v0}}/mes)",
    "est_income_tax_bracket": "Tramo de Impuesto sobre la Renta Estimado (%)",
    "actual_net_take_home_pay": "Pago Neto Real a Llevar a Casa",
    "yr": "año",
    "monthly_net_take_home": "Ingreso Neto Mensual a Llevar a Casa:",
    "gross_annual_billings": "Facturación Bruta Anual",
    "equivalent_w_2_corporate_salary": "Salario Corporativo W-2 Equivalente",
    "tax_expense_breakdown": "Desglose de Impuestos y Gastos",
    "gross_annual_revenue": "Ingresos Brutos Anuales",
    "health_insurance_tools": "Seguro Médico y Herramientas",
    "self_employment_tax_15_3_seca": "Impuesto de Autoempleado (15,3% SECA)",
    "estimated_income_tax": "Impuesto sobre la Renta Estimado",
    "true_net_hourly_take_home": "Verdadera Tarifa Horaria Neta a Llevar a Casa",
    "copied": "¡Copiado!",
    "copy_freelance_compensation_summary": "Copiar Resumen de Compensación Freelance",
    "copy_summary": "Equivalente salarial de autónomo 1099 a W-2:\n- Tarifa por hora facturada: {{hourlyRate}} $/h ({{hoursPerWeek}} h facturables/sem., {{weeks}} sem./año)\n- Ingresos brutos anuales: {{gross}} $\n- Gastos generales y de salud anuales: -{{overhead}} $\n- Impuesto de trabajo autónomo (15,3 % SECA): -{{seTax}} $\n- Impuesto sobre la renta estimado ({{taxRate}} %): -{{incomeTax}} $\n- INGRESO NETO DISPONIBLE: {{netAnnual}} $/año ({{netMonthly}} $/mes)\n- Salario W-2 equivalente en una empresa: {{w2}} $/año"
  },
  "freelance-tjm-salary-calculator": {
    "freelance_daily_rate_tjm_to_net": "Convertidor de tarifa diaria de freelance (TJM) a salario neto mensual",
    "convert_your_freelance_average_daily_rate": "Convierte tu tarifa diaria promedio de freelance en salario mensual real neto después de contribuciones sociales, gastos empresariales e impuestos.",
    "1_daily_rate_billing_days": "1. Tarifa diaria y días facturables",
    "daily_rate_tjm": "Tarifa diaria (TJM)",
    "billable_days_year": "Días facturables / Año",
    "days_yr": "días/año",
    "a_typical_freelance_year_averages_190": "Un año freelance típico promedia 190-210 días facturables después de tiempo libre pagado y días administrativos.",
    "2_legal_structure_tax_profile": "2. Estructura legal y perfil fiscal",
    "business_structure": "Estructura de negocios",
    "micro_business": "Micro-negocio",
    "eurl_sole_prop": "EURL / Sole Prop.",
    "sasu_corp": "SASU Corp.",
    "annual_business_expenses": "Gastos comerciales anuales",
    "marginal_tax_rate_tmi": "Tasa impositiva marginal (TMI)",
    "net_take_home_monthly_salary": "Salario mensual neto a casa",
    "turnover_yr": "Facturación/año",
    "month_net": "/ mes neto",
    "annual_net_take_home": "Ingreso neto anual a casa",
    "equivalent_employee_cdi_salary": "Salario empleado CDI equivalente",
    "income_deductions_breakdown": "Desglose de ingresos y deducciones",
    "annual_gross_turnover": "Facturación bruta anual:",
    "social_security_contributions": "Contribuciones a la seguridad social:",
    "operating_business_expenses": "Gastos operacionales de negocios:",
    "estimated_income_tax": "Impuesto sobre la renta estimado:",
    "currency_per_day": "{{symbol}}/día",
    "approx_per_year": "~{{value}} / año",
    "acre_micro_label": "Beneficiario de la ACRE (primer año, cotizaciones reducidas)",
    "mode_tjm_to_net": "Tarifa diaria → salario neto",
    "mode_net_to_tjm": "Neto deseado → tarifa diaria",
    "target_net_monthly": "Ingreso neto mensual objetivo",
    "currency_per_month": "{{symbol}} / mes",
    "charges_rate": "Cargas sociales est. (%)",
    "required_tjm": "Tarifa recomendada",
    "required_revenue": "Facturación anual requerida",
    "per_day_excl_tax": "sin IVA / día",
    "reverse_note": "Basado en {{days}} días facturados al año: (neto deseado × 12 + gastos anuales) ÷ (1 − tipo de cargas). Ese neto es antes del impuesto sobre la renta, salvo que lo incluya en el tipo.",
    "portage": "Portage salarial",
    "cdi_gross_monthly": "unos {{value}} brutos al mes",
    "mode_de_rate": "Tarifa por hora freelance (Alemania)",
    "de_banner_title": "Tarifa por hora de un Freiberufler en Alemania: del neto deseado al Stundensatz",
    "de_banner_text": "Parta del ingreso neto anual que quiere conservar. La herramienta suma sus gastos profesionales, el seguro de enfermedad y dependencia, la pensión si la elige, el impuesto sobre la renta de 2026 y el Solidaritätszuschlag, y divide entre sus horas facturables.",
    "de_card_income": "1. Neto deseado y tiempo facturable",
    "de_target_net_year": "Neto anual deseado (tras seguros e impuestos)",
    "de_currency_per_year": "{{symbol}} / año",
    "de_business_expenses": "Gastos profesionales (Betriebsausgaben)",
    "de_vacation_days": "Días de vacaciones (Urlaub)",
    "de_public_holidays": "Festivos de lunes a viernes (7 nacionales en 2026)",
    "de_sick_days": "Días de enfermedad previstos",
    "de_hours_per_day": "Horas de trabajo al día",
    "de_non_billable": "Tiempo no facturable (captación, gestión)",
    "de_days": "días",
    "de_billable_summary": "{{days}} días facturables de {{weekdays}} días de lunes a viernes en 2026, es decir, {{hours}} horas facturables al año.",
    "de_card_insurance": "2. Seguros e impuestos en Alemania (2026)",
    "de_zusatzbeitrag": "Cotización adicional de la caja de enfermedad (Zusatzbeitrag, media 2026: 2,9 %)",
    "de_krankengeld": "Con subsidio por enfermedad (Krankengeld): tipo general del 14,6 % en lugar del reducido del 14,0 %",
    "de_childless": "Sin hijos y con 23 años o más: seguro de dependencia del 4,2 % en lugar del 3,6 %",
    "de_rv_label": "Seguro de pensiones legal (Rentenversicherung)",
    "de_rv_none": "Ninguna (no obligatoria para la mayoría de los Freiberufler)",
    "de_rv_regel": "Cuota estándar 2026 (Regelbeitrag): 735,63 € al mes",
    "de_rv_income": "18,6 % del beneficio (entre 112,16 € y 1.571,70 € al mes)",
    "de_rv_hint": "Obligatorio para algunos autónomos (§ 2 SGB VI): profesores y formadores sin empleados, matronas, cuidadores y quienes trabajan para un solo cliente. Los artistas y publicistas afiliados a la KSK pagan solo la mitad, y las profesiones colegiadas (médicos, abogados…) cotizan a su caja profesional: ninguno de los dos casos se simula.",
    "de_hourly_rate": "Tarifa por hora a facturar",
    "de_per_hour": "/ hora sin IVA",
    "de_daily_rate": "Tarifa diaria ({{hours}} h facturadas)",
    "de_revenue": "Facturación anual necesaria",
    "de_breakdown_title": "De la facturación al neto (Kalkulation)",
    "de_profit": "Beneficio (Gewinn)",
    "de_kv": "Seguro de enfermedad (GKV, {{rate}} %)",
    "de_pv": "Seguro de dependencia ({{rate}} %)",
    "de_rv": "Seguro de pensiones",
    "de_income_tax": "Impuesto sobre la renta 2026 (base imponible {{zve}})",
    "de_soli": "Recargo de solidaridad (Soli)",
    "de_net": "Neto anual tras seguros e impuestos",
    "de_net_monthly": "Es decir, {{value}} netos al mes.",
    "de_note": "Estimación para un Freiberufler soltero (tarifa básica) con seguro de enfermedad público, sin impuesto eclesiástico. La tarifa por hora es sin IVA (19 %). Sin Gewerbesteuer: una profesión liberal no es una empresa comercial (§ 15.2 y § 18 EStG)."
  },
  "gdpr-legal-notice-generator": {
    "gdpr_legal_compliance": "RGPD y cumplimiento legal",
    "gdpr_privacy_policy_legal_notice_generator": "Generador de política de privacidad RGPD y aviso legal",
    "generate_complete_compliant_legal_notices_and": "Genera avisos legales completos y conforme a RGPD y políticas de privacidad para sitios web, aplicaciones SaaS y tiendas de comercio electrónico.",
    "publisher_information": "Información del editor",
    "website_url": "URL del sitio web",
    "company_name": "Nombre de la empresa",
    "company_id_siret": "ID de la empresa / SIRET",
    "publication_director": "Director de publicación",
    "contact_email": "Correo electrónico de contacto",
    "registered_address": "Domicilio registrado",
    "hosting_provider": "Proveedor de hospedaje",
    "data_processing_activities": "Actividades de tratamiento de datos",
    "newsletter_marketing": "Boletín y marketing",
    "stripe_payments_online_orders": "Pagos Stripe / pedidos en línea",
    "analytics_performance_cookies": "Cookies de análisis y rendimiento",
    "legal_notice": "Aviso legal",
    "privacy_policy": "Política de privacidad",
    "copied": "¡Copiado!",
    "plain_text": "Texto plano",
    "copied_html": "HTML copiado",
    "host_infomaniak": "Infomaniak (Suiza / Ecológico)",
    "host_vercel": "Vercel Inc. (Cloud / Frontend)",
    "host_ovh": "OVH Cloud (Francia / Europa)",
    "host_aws": "Amazon Web Services (AWS EMEA)",
    "share_capital": "Capital social",
    "rcs_city": "Ciudad del registro (RCS)",
    "vat_number": "N.º de IVA intracomunitario",
    "phone": "Teléfono"
  },
  "ip-subnet-cidr-calculator": {
    "invalid_ipv4_address_format": "Formato de dirección IPv4 inválido",
    "public_internet": "Público (Internet)",
    "ipv4_subnet_cidr_network_calculator": "Calculadora de red y subred IPv4 CIDR",
    "calculate_network_broadcast_addresses_usable_host": "Calcula direcciones de red y transmisión, rangos de hosts útiles, máscaras binarias/decimales punteadas, y clasificaciones RFC 1918 privadas/públicas.",
    "1_ipv4_address_cidr_prefix": "1. Dirección IPv4 y prefijo CIDR",
    "ipv4_address": "Dirección IPv4",
    "cidr_prefix": "Prefijo CIDR:",
    "common_subnet_presets": "Preestablecidos de subred comunes",
    "network_address": "Dirección de red",
    "usable_hosts": "Hosts útiles",
    "total_ips_in_subnet": "IPs totales en subred",
    "subnet_mask": "Máscara de subred:",
    "wildcard_mask": "Máscara comodín:",
    "first_usable_host": "Primer host útil:",
    "last_usable_host": "Último host útil:",
    "broadcast_address": "Dirección de transmisión:",
    "binary_representation_32_bits": "Representación binaria (32 bits)",
    "privee_rfc_10": "Privada (RFC 1918 - 10.0.0.0/8)",
    "privee_rfc_172": "Privada (RFC 1918 - 172.16.0.0/12)",
    "privee_rfc_192": "Privada (RFC 1918 - 192.168.0.0/16)",
    "point_a_point": "/30 (Punto a punto)",
    "class_a": "Clase A",
    "class_b": "Clase B",
    "class_c": "Clase C",
    "class_d": "Clase D (Multicast)",
    "class_e": "Clase E (Experimental)",
    "loopback": "Loopback (127.0.0.0/8)",
    "link_local": "Enlace local APIPA (169.254.0.0/16)",
    "mask_label": "Máscara:",
    "shared_cgnat": "Espacio compartido de operador, CGNAT (RFC 6598)",
    "copy_subnet_details": "Copiar detalles de subred",
    "copy_text": "Análisis de subred / CIDR para {{ip}}/{{prefix}}:\n- Dirección de red: {{network}}\n- Máscara de subred: {{mask}} (Wildcard: {{wildcard}})\n- Rango de hosts utilizables: {{first}} - {{last}}\n- Dirección de broadcast: {{broadcast}}\n- Hosts utilizables: {{usable}} (IP totales: {{total}})\n- Clase IP: {{ipClass}} ({{type}})"
  },
  "real-hourly-wage-audit": {
    "true_effective_wage_time_value": "Salario efectivo real y valor del tiempo",
    "real_effective_hourly_wage_audit_commute": "Auditoría de salario por hora efectivo real (desplazamiento, horas extras no pagadas y costos)",
    "calculate_your_actual_take_home_hourly": "Calcula tu salario por hora real a llevar a casa considerando horas de desplazamiento, trabajo fuera de horario y gastos de trabajo de tu bolsillo.",
    "contract_baseline": "Línea de base del contrato",
    "net_monthly_salary": "Salario mensual neto",
    "contract_weekly_hours": "Horas semanales del contrato",
    "unpaid_dedicated_time": "Tiempo dedicado no pagado",
    "commute_a_r_min_day": "Desplazamiento ida y vuelta (min/día)",
    "office_days_week": "Días de oficina / semana",
    "unpaid_overtime_week": "Horas extras no pagadas / semana",
    "monthly_work_expenses_mo": "Gastos de trabajo mensuales (€ / mes)",
    "commute": "Desplazamiento",
    "lunches": "Almuerzos",
    "outfits_care": "Ropa/Cuidado",
    "nominal_vs_real_hourly_rate": "Tarifa por hora nominal vs. real",
    "nominal_contract_rate": "Tarifa de contrato nominal",
    "based_on_h_wk": "Basado en {{v0}}h/semana",
    "real_effective_net": "Real efectivo neto",
    "real_weekly_committed_time": "Tiempo real comprometido por semana:",
    "annual_commute": "Desplazamiento anual:",
    "deducted_annual_work_expenses": "Gastos anuales de trabajo deducidos:",
    "equivalent_freelance_daily_rate": "Tarifa diaria equivalente de freelancer",
    "for_identical_net_revenue_210_days": "Para ingresos netos idénticos (210 días/año)",
    "hourly_drop_rate": "-{{pct}}% de caída real",
    "x_h_par_semaine": "{{value}} h / semana",
    "x_h_soit_y_jours_complets": "{{hours}} h (es decir, {{days}} días completos de 24 h al año en la carretera/tren)",
    "x_eur_par_an": "{{value}} € / año",
    "x_eur_par_jour": "{{value}} € / día"
  },
  "rupture-conventionnelle-are-simulator": {
    "labor_law_unemployment_simulator": "Simulador de Ley Laboral y Desempleo",
    "mutual_termination_severance_unemployment_are_simulator": "Simulador de Indemnización por Terminación Mutua y Desempleo ARE",
    "calculate_legal_severance_compensation_tax_free": "Calcula la indemnización por terminación legal, límites libres de impuestos, períodos de espera de France Travail y prestación de desempleo mensual estimada.",
    "contract_compensation": "Contrato y Compensación",
    "reference_monthly_gross_salary": "Salario bruto mensual de referencia",
    "seniority_years": "Antigüedad (Años)",
    "extra_months": "Meses Adicionales",
    "negotiated_extra_severance": "Indemnización por terminación adicional negociada",
    "extra_payment_negotiated_above_legal_minimum": "Pago adicional negociado por encima del mínimo legal (activa período de espera específico).",
    "employee_age": "Edad del Empleado",
    "yrs": "años",
    "remaining_leave_days": "Días de Licencia Restantes",
    "severance_package_summary": "Resumen del Paquete de Indemnización",
    "legal_minimum": "Mínimo Legal",
    "total_net_severance": "Indemnización Neta Total",
    "unemployment_allowance_are": "Prestación de Desempleo (ARE)",
    "months_max": "meses máximo",
    "maximum_coverage_duration_of_days_based": "Duración máxima de cobertura de {{v0}} días según edad {{v1}}.",
    "total_waiting_period": "Período de espera total",
    "days_delay": "días de retraso",
    "key_negotiation_insights": "Perspectivas Clave de Negociación",
    "cooling_off_period": "Período de Reflexión",
    "15_calendar_days_right_of_withdrawal": "15 días calendario de derecho de retiro tras la firma del acuerdo.",
    "administrative_approval": "Aprobación Administrativa",
    "labor_administration_has_15_business_days": "La administración laboral tiene 15 días hábiles para homologar el acuerdo.",
    "specific_waiting_cap": "Límite de Espera Específico",
    "waiting_period_due_to_extra_severance": "El período de espera debido a la indemnización adicional está limitado a 150 días (75 días solo en despidos por causas económicas).",
    "legal_rate_desc": "1/4 mes/año (<10 años) + 1/3 resto",
    "paid_leave_amount": "+{{amount}} € (Vacaciones devengadas)",
    "fixed_delay": "Plazo fijo",
    "paid_leave_delay": "Vacaciones devengadas",
    "supra_legal_delay": "Indemnización voluntaria",
    "x_eur_par_mois": "{{value}} € / mes",
    "par_mois_net": "/ mes neto",
    "x_eur_par_jour": "{{value}} € / día",
    "x_j": "{{value}} d",
    "plus_x_j": "+{{value}} d"
  },
  "salary-calculator": {
    "currency": "Moneda",
    "history_entry": "{{gross}} {{currency}} ({{period}}, {{status}}) → Neto: {{net}} {{currency}}/mes",
    "period_yearly_lc": "anual",
    "period_monthly_lc": "mensual",
    "period_yearly_cap": "Anual",
    "period_monthly_cap": "Mensual",
    "base_yearly": "Base anual",
    "base_monthly": "Base mensual",
    "pay_summary_heading": "Resumen de la remuneración",
    "pdf_title": "Ficha resumen - simulación de salario bruto / neto",
    "pdf_calculator_name": "Calculadora de salario bruto / neto",
    "pdf_sec_contract": "Parámetros del contrato",
    "pdf_gross_entered": "Remuneración bruta introducida",
    "pdf_employee_status": "Estatuto del empleado",
    "pdf_status_cadre": "Cadre / directivo (tasa de cotizaciones estimada ~25%)",
    "pdf_status_non_cadre": "No cadre / no directivo (tasa de cotizaciones estimada ~23%)",
    "pdf_total_gross_annual": "Total bruto anual",
    "pdf_sec_net": "Remuneración neta estimada",
    "pdf_net_monthly_pre_tax": "Salario neto mensual (antes de IRPF)",
    "pdf_net_annual_pre_tax": "Salario neto anual (antes de IRPF)",
    "pdf_charges_annual": "Cotizaciones sociales del empleado (anuales)",
    "pdf_charges_monthly": "Cotizaciones sociales del empleado (mensuales)",
    "amount_per_month": "{{value}} {{currency}} / mes",
    "amount_per_year": "{{value}} {{currency}} / año",
    "approx_per_month": "~ {{value}} {{currency}} / mes",
    "pdf_note_estimate": "Estimación indicativa que excluye primas extraordinarias, retribuciones en especie y la retención en origen del impuesto sobre la renta.",
    "pdf_note_rates": "Las tasas reales de cotización pueden variar según los convenios sectoriales y el seguro médico de la empresa.",
    "csv_gross": "Bruto",
    "csv_social_charges": "Cotizaciones sociales",
    "csv_net_pre_tax": "Neto antes de impuestos",
    "csv_title": "Estimación de salario bruto / neto - Kristools",
    "meta_gross_entered": "Salario introducido",
    "meta_professional_status": "Estatuto profesional",
    "meta_status_cadre": "Cadre / directivo (~25% cotizaciones)",
    "meta_status_non_cadre": "No cadre / no directivo (~23% cotizaciones)",
    "meta_net_monthly": "Salario neto mensual",
    "meta_net_annual": "Salario neto anual",
    "meta_charges_per_year": "Total cotizaciones / año",
    "col_pay_item": "Concepto retributivo",
    "col_monthly_amount": "Importe mensual ({{currency}})",
    "col_yearly_amount": "Importe anual ({{currency}})",
    "toast_net_annual": "Neto anual: {{value}} {{currency}} ¡copiado!",
    "toast_charges": "Cotizaciones: {{value}} {{currency}} ¡copiado!",
    "total_gross": "Total bruto"
  },
  "severance-pay-calculator": {
    "severance_pay_mutual_agreement_indemnity_simulator": "Simulador de indemnización por despido y acuerdo mutuo",
    "calculate_statutory_severance_pay_negotiated_supra": "Calcula la indemnización por despido legal, montos negociados por encima de la ley, pago neto después de impuestos sociales y retrasos en la prestación de desempleo (ARE).",
    "1_departure_type_seniority": "1. Tipo de despido y antigüedad",
    "contract_termination_type": "Tipo de terminación de contrato",
    "mutual_agreement": "Acuerdo mutuo",
    "standard_dismissal": "Despido estándar",
    "economic_layoff": "Despido por razones económicas",
    "seniority_years": "Antigüedad (años)",
    "yrs": "años",
    "additional_months": "Meses adicionales",
    "mos": "meses",
    "2_salary_negotiated_amounts": "2. Salario y montos negociados",
    "avg_gross_salary_last_12_mos": "Salario bruto medio (últimos 12 meses)",
    "avg_gross_salary_last_3_mos": "Salario bruto medio (últimos 3 meses)",
    "negotiated_extra_severance_supra_legal": "Indemnización adicional negociada (más allá de lo legal)",
    "estimated_net_severance_payout": "Pago de indemnización neta estimado",
    "yrs_seniority": "años de antigüedad",
    "net_payout": "pago neto",
    "statutory_minimum": "Mínimo legal",
    "reference_base_salary": "Salario base de referencia",
    "indemnity_breakdown_tax_exemptions": "Desglose de indemnización y exenciones fiscales",
    "statutory_minimum_severance": "Indemnización mínima legal:",
    "negotiated_extra_amount": "Monto adicional negociado:",
    "total_gross_severance": "Indemnización bruta total:",
    "csg_crds_levies_on_extra_portion": "Gravámenes CSG / CRDS sobre la porción adicional:",
    "unemployment_benefit_waiting_delay": "Período de espera para prestación de desempleo",
    "due_to_the_extra_severance_a": "Debido a la indemnización adicional de {{v0}}, se aplica un período de espera específico de {{v1}} días antes de recibir prestaciones de desempleo (Retraso total: {{v2}} días)."
  },
  "us-overtime-paycheck-calculator": {
    "flsa_overtime_double_time_paycheck_calculator": "Calculadora de nómina con tiempo extra y doble tiempo de FLSA",
    "flsa_compliant_overtime_calculator_with_blended": "Calculadora de tiempo extra compatible con FLSA con tasa salarial regular combinada, bonificaciones no discrecionales, FICA y retenciones netas de nómina.",
    "gross_pay_copied": "¡Sueldo bruto copiado!",
    "gross_weekly_pay": "Sueldo bruto semanal",
    "for_total_hours_worked": "Por {{v0}} horas totales trabajadas",
    "estimated_net_take_home": "Ingreso neto estimado a domicilio",
    "after_fica_7_65_income_taxes": "Después de FICA (7,65%) e impuestos sobre la renta",
    "overtime_pay_earned": "Sueldo por tiempo extra ganado",
    "blended_effective_hourly_wage": "Salario horario efectivo combinado",
    "hr": "h",
    "base_rate_hr": "Tasa base: {{v0}}/h",
    "hours_worked_compensation": "Horas trabajadas y compensación",
    "base_hourly_wage_rate": "Tasa de salario horario base",
    "regular_hours_standard_40h": "Horas regulares (estándar ≤ 40h)",
    "hrs": "h",
    "overtime_1_5x_hours": "Horas de tiempo extra 1,5x",
    "double_time_2_0x_hours": "Horas de doble tiempo 2,0x",
    "non_discretionary_bonus": "Bonificación no discrecional",
    "estimated_tax_withholdings": "Retenciones fiscales estimadas",
    "federal_income_tax_rate": "Tasa de impuesto federal sobre la renta (%)",
    "state_local_tax_rate": "Tasa de impuesto estatal/local (%)",
    "paycheck_summary_breakdown": "Desglose de resumen de nómina",
    "regular_straight_pay": "Pago recto regular",
    "overtime_1_5x_h": "Tiempo extra 1,5x ({{v0}}h)",
    "double_time_2_0x_h": "Doble tiempo 2,0x ({{v0}}h)",
    "bonus_allocated": "Bonificación asignada",
    "total_gross_pay": "Sueldo bruto total",
    "federal_income_tax": "Impuesto federal sobre la renta",
    "state_income_tax": "Impuesto sobre la renta estatal",
    "net_take_home_pay": "Sueldo neto a domicilio",
    "fica_sec_soc_6_2_medicare": "FICA (Seguridad Social 6,2 % + Medicare 1,45 %):"
  },
  "work-hours-overtime-calculator": {
    "time_card_overtime_pay_calculator_flsa": "Calculadora de tarjeta de tiempo y pago de horas extras (FLSA)",
    "calculate_total_weekly_hours_worked_unpaid": "Calcula el total de horas trabajadas por semana, descansos de comida no pagados, horas extras FLSA 1.5x superiores a 40 horas, tiempo doble y salario bruto.",
    "weekly_timesheet": "Hoja de tiempo semanal",
    "base_wage": "Salario base:",
    "hourly_rate_hr": "Tarifa por hora ($/hora)",
    "overtime_multiplier_40h": "Multiplicador de horas extras (>40h)",
    "double_time_threshold_h": "Umbral de tiempo doble (h)",
    "total_weekly_gross_pay": "Pago bruto semanal total",
    "total_hours_worked": "Total de horas trabajadas:",
    "regular_hours": "Horas regulares",
    "overtime_hours": "Horas extras",
    "timesheet_pay_summary": "Resumen de pago de hoja de tiempo",
    "regular_1_0x": "Regular (1.0x)",
    "overtime_1_5x": "Horas extras (1.5x)",
    "double_time_2_0x": "Tiempo doble (2.0x)",
    "gross_weekly_pay": "Pago bruto semanal",
    "copied": "¡Copiado!",
    "copy_timesheet_summary": "Copiar resumen de hoja de tiempo",
    "copy_summary": "Resumen semanal de horas y horas extra:\n- Salario base por hora: {{wage}}/h\n- Total de horas trabajadas: {{total}} h\n  • Normales (1.0x): {{regularHours}} h ({{regularPay}})\n  • Horas extra (1.5x): {{overtimeHours}} h ({{overtimePay}})\n  • Tarifa doble (2.0x): {{doubleHours}} h ({{doublePay}})\n=> TOTAL BRUTO: {{gross}}",
    "per_hour_short": "/h",
    "hours_short": "h",
    "multiplier_flsa_standard": "1.5x (estándar FLSA de EE. UU.)",
    "multiplier_double_time": "2.0x (tarifa doble)"
  },
  "influencer-collab-roi-brand": {
    "benefice_net_campagne": "Beneficio neto de la campaña",
    "roi_valeur": "ROI: {{value}}%",
    "roas_chiffre_d_affaires": "ROAS (Ingresos)",
    "ca_encaisse_valeur": "{{value}} de ingresos generados",
    "cout_d_acquisition_client_cac": "Coste de adquisición de cliente (CAC)",
    "sur_x_nouveaux_clients": "Sobre {{count}} nuevos clientes",
    "ventes_pour_rentabiliser": "Ventas para rentabilizar",
    "x_commandes": "{{count}} pedidos",
    "point_mort_financier": "Punto de equilibrio financiero",
    "couts_du_partenariat_audience_influenceur": "1. Costes de la colaboración y audiencia del influencer",
    "remuneration_influenceur_ht": "Remuneración del influencer (€ sin IVA)",
    "cout_produit_envoi": "Coste de producto + envío (€)",
    "vues_portee_estimee": "Vistas / alcance estimado",
    "ctr_lien_swipe_up": "CTR del enlace / swipe-up (%)",
    "ventes_marge_code_promo": "2. Ventas, margen y código promocional",
    "panier_moyen_aov": "Valor medio del pedido AOV (€)",
    "taux_conversion_site": "Tasa de conversión del sitio (%)",
    "marge_brute_produit": "Margen bruto del producto (%)",
    "remise_code_promo": "Descuento del código promocional (%)"
  },
  "advanced-excel-formula-generator": {
    "generateur_testeur_formules_excel_sheets": "Generador y Probador de Fórmulas de Excel y Google Sheets",
    "generez_des_formules_complexes_sans_erreurs": "Genere fórmulas complejas (BUSCARX, INDICE/COINCIDIR, SI.CONJUNTO, SUMAR.SI.CONJUNTO) sin errores de sintaxis",
    "type_de_formule": "1. Tipo de fórmula",
    "syntaxe": "Sintaxis:",
    "valeur_cherchee_lookup_value": "Valor buscado (Lookup Value)",
    "tableau_de_recherche_lookup_array": "Matriz de búsqueda (Lookup Array)",
    "tableau_renvoye_return_array": "Matriz devuelta (Return Array)",
    "si_non_trouve_fallback_optionnel": "Si no se encuentra (valor alternativo opcional)",
    "plage_de_donnees_globale_table": "Rango de datos completo (tabla)",
    "valeur_ligne_cherchee": "Valor de fila buscado",
    "colonne_des_lignes": "Columna de las filas",
    "valeur_colonne_cherchee": "Valor de columna buscado",
    "ligne_d_en_tetes": "Fila de encabezados",
    "cellule_testee": "Celda evaluada",
    "seuil_1_superieur_ou_egal": "Umbral 1 (mayor o igual que)",
    "resultat_1": "Resultado 1",
    "seuil_2_superieur_ou_egal": "Umbral 2 (mayor o igual que)",
    "resultat_2": "Resultado 2",
    "seuil_3_superieur_ou_egal": "Umbral 3 (mayor o igual que)",
    "resultat_3": "Resultado 3",
    "plage_a_additionner_sum_range": "Rango a sumar (Sum Range)",
    "plage_critere_1": "Rango de criterio 1",
    "critere_1": "Criterio 1",
    "plage_critere_2": "Rango de criterio 2",
    "critere_2": "Criterio 2",
    "cellule_contenant_le_texte_fractionner": "Celda que contiene el texto a dividir",
    "delimiteur_separateur": "Delimitador / separador",
    "formule_prete_a_coller": "2. Fórmula lista para pegar",
    "formule_copiee": "¡Fórmula copiada!",
    "comment_fonctionne_cette_formule": "Cómo funciona esta fórmula:",
    "astuce_productivite_excel": "Consejo de productividad en Excel",
    "pour_figer_les_plages_lors": "Para fijar los rangos al arrastrar hacia abajo, pulse <0>F4</0> para añadir los signos de dólar <1>$A$1:$A$100</1>.",
    "def_if_not_found": "\"No encontrado\"",
    "def_lookup_array": "Clientes!A:A",
    "def_return_array": "Clientes!C:C",
    "def_target_table": "Datos!A1:H100",
    "def_row_match_array": "Datos!A1:A100",
    "def_col_match_array": "Datos!A1:H1",
    "def_tier1_label": "\"Excelente\"",
    "def_tier2_label": "\"Bueno\"",
    "def_tier3_label": "\"Regular\"",
    "def_default_label": "\"Insuficiente\"",
    "def_sum_range": "Ventas!D:D",
    "def_criteria_range1": "Ventas!B:B",
    "def_criteria_range2": "Ventas!C:C",
    "explication_xlookup": "Busca el valor de {{lookupValue}} en {{lookupArray}} y devuelve el elemento correspondiente de {{returnArray}}. Si no hay coincidencia, devuelve {{ifNotFound}}. No requiere datos ordenados y sustituye con ventaja a BUSCARV.",
    "exemple_xlookup": "Ej.: si {{lookupValue}} = \"REF-998\", la fórmula devuelve el nombre del cliente de la misma fila.",
    "explication_index_match": "Búsqueda matricial bidimensional (fila × columna). Encuentra dinámicamente la celda en la intersección de {{rowMatchValue}} (fila) y {{colMatchValue}} (columna).",
    "exemple_index_match": "Ej.: ideal para extraer el precio de un producto según su talla (columna) y su referencia (fila).",
    "explication_ifs": "Evalúa varias condiciones lógicas sucesivas sin anidar múltiples funciones SI(). La primera condición verdadera determina el resultado mostrado.",
    "exemple_ifs": "Ej.: si {{ifsScoreCell}} vale 82, la fórmula devuelve {{tier2Label}}.",
    "explication_sumifs": "Suma los importes de {{sumRange}} solo para las filas donde {{criteriaRange1}} vale {{criteria1}} Y {{criteriaRange2}} cumple {{criteria2}}.",
    "exemple_sumifs": "Ej.: calcula la facturación acumulada de la ciudad de París durante el año 2026.",
    "explication_textsplit": "Divide el texto de la celda {{textCell}} en varias columnas adyacentes usando el delimitador {{textDelimiter}}.",
    "exemple_textsplit": "Ej.: si {{textCell}} = \"Paris;Lyon;Marseille\", crea automáticamente 3 columnas."
  },
  "einvoicing-peppol-estimator": {
    "titre_simulateur_facturation_electronique": "Simulador de Facturación Electrónica y Norma Peppol / Factur-X (UE 2026)",
    "anticipez_la_transition_legale": "Anticípese a la transición legal obligatoria B2B en Europa (EN 16931), estime sus ahorros de procesamiento y descubra la estructura XML de Factur-X.",
    "volume_de_facturation_de": "Volumen de facturación de la empresa",
    "factures_emises_mois_clients": "Facturas emitidas / mes (clientes)",
    "factures_recues_mois_fournisseurs": "Facturas recibidas / mes (proveedores)",
    "format_reseau_cible": "Formato / red de destino",
    "option_facturx_ppf_france": "Factur-X mediante plataforma autorizada (Francia 2026/2027)",
    "option_zugferd_xrechnung_allemagne": "ZUGFeRD / XRechnung (Alemania 2025/2028)",
    "option_reseau_international_peppol_bis": "Red internacional PEPPOL BIS 3.0",
    "option_sdi_fatturapa_italie": "SDI / FatturaPA (Italia)",
    "cout_unitaire_papier_pdf": "Coste unitario Papel/PDF (€)",
    "cout_unitaire_e_invoicing": "Coste unitario e-Invoicing (€)",
    "calendrier_obligation_legale": "Calendario de obligación legal:",
    "calendrier_septembre_2026": "• <strong>Septiembre de 2026</strong>: Recepción obligatoria para todas las empresas + emisión para grandes empresas y ETI.",
    "calendrier_septembre_2027": "• <strong>Septiembre de 2027</strong>: Emisión obligatoria para todas las pymes y microempresas.",
    "economie_annuelle_nette_estimee": "Ahorro neto anual estimado",
    "economie_annuelle_valeur": "+{{value}} € / año",
    "sur_un_volume_global_de": "Sobre un volumen total de <strong>{{count}} facturas / año</strong>",
    "temps_administratif_economise": "Tiempo administrativo ahorrado:",
    "heures_economisees_par_an": "~{{count}} horas / año",
    "saisie_automatique_sans_ocr": "Introducción automática sin OCR",
    "reduction_des_delais_dso": "Reducción de plazos (DSO):",
    "jours_reduction_dso": "~{{count}} días",
    "paiement_plus_rapide_des": "Pagos de clientes más rápidos",
    "structure_hybride_facturx_en": "Estructura híbrida Factur-X / EN 16931 (extracto XML):",
    "format_en_16931_peppol_conforme": "Formato EN 16931 / Peppol BIS Billing 3.0 conforme"
  },
  "executive-bullet-point-condenser": {
    "verbes_leadership_strategie": "Liderazgo y estrategia",
    "verbes_leadership_strategie_liste": "Liderado, Supervisado, Orquestado, Cohesionado, Impulsado, Estructurado, Negociado, Iniciado",
    "verbes_performance_optimisation": "Rendimiento y optimización",
    "verbes_performance_optimisation_liste": "Acelerado, Racionalizado, Maximizado, Automatizado, Reducido, Mejorado, Estandarizado, Rentabilizado",
    "verbes_innovation_creation": "Innovación y creación",
    "verbes_innovation_creation_liste": "Desarrollado, Diseñado, Implantado, Lanzado, Arquitecturado, Reinventado, Modelizado, Construido",
    "verbes_analyse_finance": "Análisis y finanzas",
    "verbes_analyse_finance_liste": "Auditado, Evaluado, Cuantificado, Diagnosticado, Asegurado, Presupuestado, Negociado, Consolidado",
    "exemple_texte_brut": "Durante el último trimestre, nuestro equipo trabajó en la renovación completa del embudo de compra del comercio electrónico, que estaba obsoleto y provocaba problemas de lentitud. Reescribimos el código con un stack moderno y simplificamos el pago de 5 a 2 clics. Gracias a este esfuerzo sostenido, la tasa de conversión aumentó un 24 % y el abandono del carrito bajó un 18 %, lo que generó más de 85 000 € de facturación adicional.",
    "exemple_star_situation": "Embudo de compra de comercio electrónico obsoleto con una tasa de abandono elevada",
    "exemple_star_tache": "Rediseñar la arquitectura y simplificar el proceso de pago del cliente",
    "exemple_star_action": "Implantación de una interfaz moderna que reduce el flujo de 5 a 2 pasos con pago instantáneo",
    "exemple_star_resultat": "+24 % de tasa de conversión y +85 000 € de facturación adicional desde el primer mes",
    "exemple_aim_verbe": "Orquestado",
    "exemple_aim_action": "la renovación integral del embudo de pago y la simplificación del recorrido UX",
    "exemple_aim_metrique": "+24 % de conversión y +85 k€ de facturación generada",
    "idealement_pour_1_slide": "✅ ideal para 1 diapositiva",
    "trop_long_pour_une_slide": "⚠️ demasiado largo para una diapositiva (recomendado: menos de 40 palabras)",
    "puce_aim": "• **{{verb}}** {{action}} ➔ **{{metric}}**",
    "puce_star": "**Situación:** {{situation}}\n**Tarea:** {{task}}\n**Acción:** {{action}}\n**Resultado clave:** 🎯 {{result}}",
    "puce_bluf": "### 📌 Conclusión / decisión clave (BLUF):\n{{result}}\n\n**1. Contexto y problemática:**\n{{situation}}\n\n**2. Medidas y acciones clave realizadas:**\n{{action}}\n\n**3. Próximos pasos / impacto en el negocio:**\nExtender el nuevo estándar a las filiales internacionales.",
    "condensateur_executif_formateur_de_bullet_points": "Condensador ejecutivo y formateador de viñetas (STAR / AIM)",
    "transformez_des_paragraphes_verbeux_en_puces": "Convierta párrafos densos en viñetas contundentes con verbos de acción y métricas de ROI",
    "1_texte_brut_ou_notes_de_reunion": "1. Texto en bruto o notas de reunión",
    "exemple": "Ejemplo",
    "collez_ici_votre_paragraphe_narratif": "Pegue aquí su párrafo narrativo o su nota de avance...",
    "volume": "Volumen",
    "x_mots_y_car": "{{words}} palabras ({{chars}} car.)",
    "temps_de_lecture": "Tiempo de lectura",
    "environ_x_sec": "~{{secs}} s",
    "presentation_orale": "Presentación oral",
    "thesaurus_de_verbes_d_action_executifs": "Tesauro de verbos de acción ejecutivos",
    "2_formule_cadre_de_synthese": "2. Fórmula y marco de síntesis",
    "formule_aim": "Fórmula AIM",
    "methode_star": "Método STAR",
    "bluf_minto": "BLUF / Minto",
    "formule_aim_verbe_d_impact_perimetre": "Fórmula AIM: [verbo de impacto] + [ámbito / acción] + [métrica de negocio cuantificada]",
    "verbe": "Verbo:",
    "action": "Acción:",
    "impact": "Impacto:",
    "situation_placeholder": "Situación...",
    "action_realisee_placeholder": "Acción realizada...",
    "resultat_chiffre_placeholder": "Resultado cuantificado...",
    "puce_prete_pour_presentation_rapport": "Viñeta lista para presentación o informe:",
    "puce_copiee": "¡Viñeta copiada!"
  },
  "office-air-renewal-co2-calculator": {
    "simulateur_qualite_air_co2_reunion": "Simulador de calidad del aire y concentración de CO2 en reuniones",
    "predisez_accumulation_co2_impact_cognitif": "Prediga la acumulación de CO2 en ppm, su impacto en la lucidez cognitiva y la frecuencia de ventilación necesaria.",
    "norme_inrs_etude_harvard_th": "Norma INRS y estudio de Harvard T.H. Chan",
    "dimensions_occupants": "1. Dimensiones y ocupantes",
    "surface_piece_m2": "Superficie de la sala (m²)",
    "hauteur_sous_plafond_m": "Altura del techo (m)",
    "nombre_de_personnes_presentes": "Número de personas presentes",
    "count_pers": "{{count}} personas",
    "duree_de_la_reunion": "Duración de la reunión",
    "systeme_de_renouvellement_dair": "Sistema de renovación de aire",
    "porte_fenetres_fermees_sans_vmc": "Puerta y ventanas cerradas, sin ventilación mecánica (VMC) — infiltración baja",
    "vmc_bureaux_standard_norme_rt2012": "Ventilación mecánica de oficina estándar (VMC) — Código del Trabajo francés R4222-6",
    "fenetre_entrouverte_oscillo_battant": "Ventana entreabierta / oscilobatiente",
    "centrale_cta_haute_performance_salle": "Unidad de tratamiento de aire de alto rendimiento (CTA) / sala blanca",
    "pic_de_co2_estime_a": "Pico de CO2 estimado al final",
    "norme_ideale_de_travail": "Estándar ideal de trabajo: < 800 ppm",
    "impact_cognitif_vigilance": "Impacto cognitivo y vigilancia",
    "recommandations_pratiques_de_ventilation": "Recomendaciones prácticas de ventilación",
    "protocole_daeration_conseille": "Protocolo de ventilación recomendado:",
    "ouvrez_en_grand_les_fenetres": "Abra las ventanas de par en par durante <0>{{minutes}} minutos</0> cada 45 minutos de reunión para renovar los {{volume}} m³ de aire de la sala.",
    "reperes_sensoriels_de_co2": "Referencias sensoriales de CO2:",
    "air_frais_exterieur_excellent_focus": "Aire fresco exterior / excelente concentración mental.",
    "air_confine_baillements_somnolence_baisse": "Aire viciado / bostezos, somnolencia, menor atención.",
    "seuil_dalerte_maux_de_tete": "Umbral de alerta / dolores de cabeza, caída drástica de la productividad.",
    "air_quality_label_good": "Excelente (productividad óptima)",
    "air_quality_label_medium": "Media (somnolencia y menor concentración)",
    "air_quality_label_critical": "Crítica (pesadez y dolores de cabeza)",
    "air_quality_desc_good": "Aire saludable, concentración y claridad mental óptimas.",
    "air_quality_desc_medium": "Descenso del 15% en la velocidad de procesamiento de información y sensación de fatiga.",
    "air_quality_desc_critical": "Reducción del 50% en la capacidad de toma de decisiones estratégicas (efecto sala de reuniones sofocante).",
    "air_quality_score_good": "100 % de rendimiento cognitivo",
    "air_quality_score_medium": "-15 % de claridad cognitiva (estimación)",
    "air_quality_score_critical": "-50 % de rendimiento cognitivo (estimación)",
    "minutes_value": "{{value}} min"
  },
  "saas-cac-payback-magic-number": {
    "saas_magic_number": "SaaS Magic Number",
    "revenu_arr_genere_par_euro": "Ingresos ARR generados por euro invertido en S&M",
    "cac_payback_period": "CAC Payback Period",
    "x_mois": "{{value}} Meses",
    "temps_pour_rentabiliser_cout_acquisition": "Tiempo para recuperar el coste de adquisición",
    "cac_moyen_par_client": "CAC medio por cliente",
    "sur_x_nouveaux_clients": "Sobre {{count}} nuevos clientes",
    "net_new_arr_trimestriel": "ARR neto nuevo trimestral",
    "croissance_nette_arr_trimestre": "Crecimiento neto de ARR este trimestre",
    "depenses_commerciales_croissance_arr": "1. Gasto comercial y crecimiento del ARR",
    "budget_vente_marketing_trimestre_precedent": "Presupuesto de ventas y marketing del trimestre anterior (€)",
    "arr_fin_trimestre_precedent_qt1": "ARR al cierre del trimestre anterior Q(t-1) (€)",
    "arr_fin_trimestre_actuel_qt": "ARR al cierre del trimestre actual Q(t) (€)",
    "economie_unitaire_par_client": "2. Economía unitaria por cliente (unit economics)",
    "revenu_moyen_mensuel_client_arpu": "Ingreso Medio Mensual / Cliente (ARPU €)",
    "nouveaux_clients_signes_trimestre": "Nuevos clientes firmados este trimestre",
    "marge_brute_logicielle": "Margen Bruto del Software (%)",
    "grille_reference_standards_b2b_saas": "Cuadro de referencia de estándares B2B SaaS (VC Grade)",
    "magic_number_superieur_10x": "Magic Number > 1.0x",
    "excellente_efficacite_chaque_euro": "Eficiencia excelente: cada euro invertido en ventas genera más de 1 € de ingresos recurrentes inmediatos. Acelere las contrataciones comerciales.",
    "cac_payback_inferieur_12_mois": "CAC Payback < 12 Meses",
    "benchmark_ideal_smb_mid_market": "Referencia ideal para SMB / Mid-Market. La adquisición se autofinancia en menos de un año, liberando tesorería para reinvertir.",
    "gross_margin_superieur_80": "Gross Margin > 80%",
    "permet_absorber_couts_serveurs": "Permite absorber los costes de servidores y soporte al cliente manteniendo un margen sólido para financiar I+D.",
    "score_very_good": "Muy bueno ✅ (eficiencia de ventas validada)",
    "score_exceptional": "Excepcional 🚀 (invertir masivamente en Go-to-Market)",
    "score_average": "Medio ⚠️ (optimizar los canales de adquisición)",
    "score_critical": "Crítico ❌ (adquisición no rentable)"
  },
  "social-bio-link-clicks-converter": {
    "clics_en_bio_mensuels": "Clics Mensuales en el Enlace de Bio",
    "x_clics": "{{value}} clics",
    "sur_x_visites_de_profil": "En {{value}} visitas al perfil",
    "revenus_generes_par_le_lien": "Ingresos Generados por el Enlace",
    "par_mois_en_direct_du": "Al mes, directamente desde el enlace de la bio",
    "valeur_par_visiteur_de": "Valor por Visitante del Perfil",
    "gagne_pour_chaque_visiteur_de": "Ganado por cada visitante del perfil",
    "valeur_par_clic_sur_le": "Valor por Clic en el Enlace",
    "epc_earnings_per_click": "EPC (Earnings Per Click)",
    "trafic_profil_taux_de_clic": "1. Tráfico del Perfil y Tasa de Clics en el Enlace",
    "visites_de_profil_mensuelles": "Visitas Mensuales al Perfil (Instagram / TikTok / LinkedIn)",
    "taux_de_clic_sur_le_lien": "Tasa de clics en el enlace de la bio (CTR %)",
    "moyenne_3_a_8_selon": "Media: entre el 3% y el 8% según la claridad del CTA de la bio.",
    "repartition_des_boutons_taux": "2. Distribución de los Botones y Tasas de Conversión",
    "bouton_1_lead_magnet_newsletter": "🎁 Botón 1: Lead Magnet / Newsletter ({{count}} leads/mes)",
    "part_des_clics": "Parte de los clics:",
    "taux_optin": "Tasa de Opt-in (%):",
    "bouton_2_produit_digital_stan": "📚 Botón 2: Producto Digital / Stan Store ({{count}} ventas/mes)",
    "prix_produit": "Precio del Producto (€):",
    "taux_conv_achat": "Tasa Conv. Compra (%):",
    "bouton_3_appel_decouverte_high": "📞 Botón 3: Llamada de Descubrimiento / High-Ticket ({{count}} clientes/mes)",
    "prix_offre": "Precio de la Oferta (€):",
    "taux_closing": "Tasa de Cierre (%):"
  },
  "v-card-business-card-qr-generator": {
    "generateur_de_qr_code_vcard": "Generador de código QR vCard y tarjeta de visita digital",
    "creez_votre_qr_code_contact": "Cree su código QR de contacto universal, compatible con iPhone, Android, Google Contacts y Outlook",
    "identite_coordonnees_professionnelles": "Identidad y datos de contacto profesionales",
    "label_prenom": "Nombre",
    "label_nom": "Apellidos",
    "label_poste_titre": "Cargo / Puesto",
    "label_entreprise_organisation": "Empresa / Organización",
    "label_email_professionnel": "Correo profesional",
    "label_telephone_mobile": "Teléfono móvil",
    "label_telephone_bureau_fixe": "Teléfono de oficina (fijo)",
    "label_site_web_url": "Sitio web (URL)",
    "label_profil_linkedin_url": "Perfil de LinkedIn (URL)",
    "label_adresse": "Dirección",
    "label_code_postal": "Código postal",
    "label_ville": "Ciudad",
    "votre_qr_code_contact_interactif": "Su código QR de contacto interactivo",
    "scannez_avec_lappareil_photo": "Escanee con la cámara de su smartphone para añadir directamente a {{name}} a sus contactos.",
    "telecharger_qr_png": "Descargar QR (PNG)",
    "fichier_vcf": "Archivo .VCF",
    "toast_fichier_contact_telecharge": "¡Archivo de contacto .VCF descargado!",
    "toast_image_qr_code_telechargee": "¡Imagen del código QR en PNG descargada!",
    "demo_job_title": "Director Comercial y de Alianzas",
    "demo_department": "Dirección General",
    "demo_country": "Francia",
    "demo_note": "Experto en transformación digital B2B"
  },
  "podcast-sponsorship-cpm-calculator": {
    "grille_tarifaire_sponsoring_podcast": "🎙️ TARIFARIO DE PATROCINIO DEL PODCAST",
    "audience_moyenne_30_jours": "📊 Audiencia media (30 días): {{value}} escuchas / episodio",
    "frequence_episodes_mois": "📅 Frecuencia: {{count}} episodios / mes",
    "tarifs_unitaires_par_episode": "📍 Tarifas unitarias por episodio:",
    "preroll_line": "  • Pre-Roll (15-30 s, inicio): {{price}} (CPM {{cpm}} €)",
    "midroll_line": "  • Mid-Roll (60 s, leído por el presentador, en medio): {{price}} (CPM {{cpm}} €)",
    "postroll_line": "  • Post-Roll (15-30 s, final del episodio): {{price}} (CPM {{cpm}} €)",
    "pack_sponsor_exclusif": "🏷️ Pack de patrocinador exclusivo ({{count}} episodios/mes con -{{discount}} % de descuento):",
    "total_mensuel_ht": "👉 Total mensual: {{amount}} sin IVA",
    "mention_description_lien_tracke": "👉 Mención en la descripción del episodio + enlace rastreado incluido.",
    "tarif_par_episode_pack": "Tarifa por episodio (pack)",
    "par_episode_sponsorise": "Por episodio patrocinado",
    "revenus_mensuels_sponsoring": "Ingresos mensuales por patrocinio",
    "pour_x_episodes_mois": "Para {{count}} episodios / mes",
    "contrat_annuel_sponsor": "Contrato anual de patrocinio",
    "partenariat_annuel_recurrent": "Asociación anual recurrente",
    "total_ecoutes_mensuelles": "Total de escuchas mensuales",
    "telechargements_mois": "Descargas / mes",
    "audience_frequence_du_podcast": "1. Audiencia y frecuencia del podcast",
    "telechargements_ecoutes_moyennes_par": "Descargas / escuchas medias por episodio (a 30 días)",
    "episodes_mois": "Episodios / mes",
    "remise_pack_sponsor": "Descuento del pack de patrocinio (%)",
    "emplacements_publicitaires_cpm": "2. Espacios publicitarios y CPM",
    "pre_roll_15_30s": "Pre-Roll (15-30 s)",
    "en_debut_demission": "Al inicio del episodio",
    "cpm_label": "CPM:",
    "mid_roll_host_read_60s": "Mid-Roll leído por el presentador (60 s) 🔥",
    "recommandation_incarnee_au_milieu": "Recomendación personal a mitad de episodio",
    "post_roll_15_30s": "Post-Roll (15-30 s)",
    "en_toute_fin_depisode": "Al final del episodio",
    "proposition_commerciale_prete_a": "Propuesta comercial lista para enviar a las marcas",
    "format_textuel_clair_a": "Formato de texto claro para incluir en su media kit o correo de prospección de patrocinadores.",
    "devis_copie": "¡Presupuesto copiado!",
    "copier_la_grille_tarifaire": "Copiar tarifario",
    "audience_tarifs_sponsoring_header": "🎙️ AUDIENCIA Y TARIFAS DE PATROCINIO:",
    "ecoutes_par_episode_30_jours": "• Escuchas por episodio: {{value}} (30 días)",
    "preroll_summary_line": "• Pre-Roll: {{value}}",
    "non_inclus": "No incluido",
    "midroll_summary_line": "• Mid-Roll (leído por el presentador, 60 s): {{value}}",
    "pack_mensuel_episodes_ht": "• Pack mensual ({{count}} episodios): {{amount}} sin IVA"
  },
  "working-capital-wcr-dso-calculator": {
    "calculateur_bfr_dso_dpo_cycle": "Calculadora de BFR/WCR, DSO, DPO y ciclo de conversión de caja",
    "mesurez_besoin_fonds_roulement": "Mida su necesidad de fondo de maniobra, los plazos de cobro/pago con clientes y proveedores, y simule la liquidez liberada.",
    "direction_financiere_daf": "Dirección Financiera y CFO",
    "donnees_comptables_bilan": "1. Datos contables y balance",
    "chiffre_affaires_annuel_ttc": "Cifra de negocio anual con IVA (€)",
    "achats_consommes_annuels_ttc": "Compras consumidas anuales con IVA (€)",
    "creances_clients_ttc": "Cuentas por cobrar con IVA (€)",
    "dettes_fournisseurs_ttc": "Cuentas por pagar a proveedores con IVA (€)",
    "valeur_moyenne_stocks": "Valor medio de las existencias (€)",
    "objectif_reduction_dso_jours": "Objetivo de reducción del DSO (días ganados)",
    "moins_x_jours": "-{{count}} días",
    "besoin_fonds_roulement_bfr": "Necesidad de fondo de maniobra (BFR/WCR)",
    "soit_x_jours_chiffre_affaires": "Equivalente a {{count}} días de facturación",
    "cash_debloque_gain_x_j_dso": "Liquidez Liberada (Ganancia de {{count}} días de DSO)",
    "tresorerie_immediate_injectee_banque": "Liquidez inmediata inyectada en el banco",
    "cycle_conversion_cash_ccc": "Ciclo de Conversión de Caja (CCC: {{count}} días)",
    "dso_clients": "DSO (Clientes)",
    "delai_encaissement": "Plazo de cobro",
    "dio_stocks": "+ DIO (Existencias)",
    "rotation_stocks": "Rotación de existencias",
    "dpo_fournisseurs": "- DPO (Proveedores)",
    "delai_paiement": "Plazo de pago",
    "interpretation_financiere": "Interpretación financiera:",
    "entreprise_met_en_moyenne_jours": "Su empresa tarda de media <b>{{count}} días</b> entre el momento en que paga a sus proveedores y el momento en que cobra a sus clientes. Cuanto más bajo (o negativo) sea este valor, más autofinanciada y resiliente será la empresa."
  },
  "w2-vs1099-calculator": {
    "comparateur_us_statut_w_2": "Comparador EE.UU.: Empleado W-2 vs Contratista 1099",
    "salaire_de_base_an": "Salario Base ($/año)",
    "bonus_annuel": "Bono Anual ($)",
    "assurance_sante_m": "Seguro Médico ($/mes)",
    "match_401_k": "Aportación Empleador 401(k) (%)",
    "conges_payes_j": "Vacaciones pagadas (días)",
    "taux_horaire_h": "Tarifa por Hora ($/h)",
    "h_total": "$/h (Total: $)",
    "facturation_annuelle_totale": "Facturación Anual Total ($)",
    "jours_off_non_payes": "Días Libres no Remunerados",
    "frais_pro_an": "Gastos Deducibles ($/año)",
    "sante_privee_m": "Seguro Médico Privado ($/mes)",
    "impot_federal_estime": "Impuesto Federal Estimado (%)",
    "impot_d_etat_0_tx": "Impuesto Estatal sobre la Renta (%) (0% en TX, FL...)",
    "resultat_net_dans_la_poche": "Ingreso Neto Disponible",
    "net_annuel_w_2": "Neto Anual W-2",
    "package_total": "Paquete total: {{value}}",
    "impots_fica": "Impuestos & FICA: -$",
    "net_annuel_1099": "Ingreso Neto Anual 1099",
    "chiffre_d_affaires": "Facturación bruta: $",
    "se_tax_impots": "Impuesto de Autónomo & IRPF: -$",
    "exactement_autant_en_net": "exactamente el mismo neto disponible",
    "x_votre_taux_horaire_w": "(x su equivalente por hora W-2)",
    "taxe_self_employment_15_3": "Impuesto de Trabajo por Cuenta Propia (15.3% SE Tax):",
    "deduction_fiscale_qbi_20_section": "Deducción fiscal QBI del 20% (Sección 199A):",
    "assurance_sante_privee_deductible": "Primas de seguro médico privado deducibles:",
    "banner_description": "Determine la tarifa por hora 1099 exacta necesaria para igualar o superar su remuneración neta W-2 (FICA, SE Tax, QBI 20 % y beneficios).",
    "w2_employee_position": "Puesto asalariado (W-2 Employee)",
    "contractor_1099": "Contrato independiente (1099 Contractor)",
    "hourly_mode": "Por hora ($/h)",
    "annual_mode": "Anual ($)",
    "hourly_rate_total": "{{rate}}/h (Total: {{total}})",
    "winner_more_advantageous": "{{winner}} es más ventajoso (+{{amount}})",
    "taxes_and_fica": "Impuestos y FICA: {{value}}",
    "revenue_line": "Facturación: {{value}}",
    "se_tax_and_taxes": "SE Tax e impuestos: {{value}}",
    "breakeven_rate_title": "Tarifa 1099 de equivalencia (Breakeven Rate)",
    "breakeven_explanation": "Para ganar <0>exactamente lo mismo en neto</0> que con su salario W-2 de {{salary}} (compensando la pérdida del match del 401k, el seguro y el 15,3 % de SE Tax), debe facturar como mínimo:",
    "breakeven_per_hour": "{{value}} / hora",
    "breakeven_multiple": "({{value}}x su tarifa por hora W-2)",
    "financial_breakdown": "Desglose financiero ($)",
    "chart_w2_employee": "W-2 asalariado",
    "chart_1099_contractor": "1099 independiente",
    "chart_net_in_pocket": "Neto en el bolsillo",
    "chart_taxes_fica": "Impuestos y FICA",
    "chart_taxes_se": "Impuestos y SE Tax",
    "chart_expenses_health": "Gastos / salud",
    "chart_employer_benefits": "Beneficios del empleador"
  },
  "business-nda-agreement-generator": {
    "window_print": "Imprimir documento",
    "juridique_secret_des_affaires": "Jurídico y Secreto Comercial",
    "duree_annees": "Plazo de Confidencialidad (años)",
    "1_an": "1 año",
    "2_ans": "2 años",
    "3_ans_standard": "3 años (Estándar)",
    "5_ans": "5 años",
    "10_ans_haute_techno": "10 años (Alta tecnología)",
    "tribunal_competent": "Tribunales Competentes",
    "objet_motif_de_l_echange": "Objeto / Propósito de las Negociaciones",
    "partie_a_votre_entreprise": "Parte A (Su empresa)",
    "nom_complet_forme_juridique": "Razón Social y Forma Jurídica",
    "adresse_siege_social": "Domicilio Social Registrado",
    "representant_legal_nom_et_titre": "Representante Legal (Nombre y Cargo)",
    "partie_b_partenaire_prospect": "Parte B (Socio / Contraparte)",
    "imprimer_pdf": "Imprimir / Guardar en PDF",
    "contract_text": "ACUERDO DE CONFIDENCIALIDAD Y NO DIVULGACIÓN ({{kind}})\n(Non-Disclosure Agreement - NDA)\n\nENTRE LOS ABAJO FIRMANTES:\n\n1. {{nameA}}, sociedad inscrita en el Registro Mercantil (RCS) con domicilio en: {{addrA}}, debidamente representada por {{repA}},\nen adelante denominada \"{{labelA}}\", por una parte,\n\nY:\n\n2. {{nameB}}, sociedad inscrita en el Registro Mercantil (RCS) con domicilio en: {{addrB}}, debidamente representada por {{repB}},\nen adelante denominada \"{{labelB}}\", por otra parte.\n\n(Conjuntamente denominadas \"las Partes\").{{roles}}\n\nPREVIAMENTE SE HA EXPUESTO LO SIGUIENTE:\nLas Partes desean intercambiar información estratégica y técnica en el marco estricto del siguiente objeto:\n\"{{purpose}}\" (en adelante \"el Proyecto\").\n\nHECHA ESTA EXPOSICIÓN, SE HA CONVENIDO LO SIGUIENTE:\n\nARTÍCULO 1 - DEFINICIÓN DE LA INFORMACIÓN CONFIDENCIAL\nConstituye \"Información Confidencial\" toda información técnica, financiera, comercial o metodológica, código fuente, base de datos, know-how o documento transmitido por escrito, oralmente o por vía electrónica entre las Partes.\n\nARTÍCULO 2 - COMPROMISOS DE NO DIVULGACIÓN Y DE USO\nLa Parte Receptora se compromete formalmente a:\na) No divulgar ninguna Información Confidencial a terceros sin el consentimiento previo por escrito de la Parte Emisora;\nb) Utilizar dicha información únicamente para la realización del Proyecto;\nc) Comunicar dicha información solo a sus empleados o asesores directamente implicados en el Proyecto y sujetos a una obligación de confidencialidad equivalente;\nd) Proteger dicha información con el mismo grado de cautela que sus propios datos más confidenciales.\n\nARTÍCULO 3 - EXCEPCIONES\nNo se consideran confidenciales las informaciones que:\n• Hayan pasado a ser de dominio público sin incumplimiento del presente Acuerdo;\n• Ya fueran conocidas por la Parte Receptora antes de su divulgación;\n• Sean exigidas legalmente por una autoridad judicial o administrativa competente.\n\nARTÍCULO 4 - DURACIÓN DEL ACUERDO\nEl presente acuerdo surte efecto en la fecha de su firma por una duración de {{years}} a partir de la transmisión de la última información confidencial.\n\nARTÍCULO 5 - DEVOLUCIÓN O DESTRUCCIÓN\nEn cualquier momento y a simple solicitud por escrito de la Parte Emisora, la Parte Receptora destruirá o devolverá sin demora la totalidad de los documentos y soportes que contengan Información Confidencial.\n\nARTÍCULO 6 - DERECHO APLICABLE Y ATRIBUCIÓN DE JURISDICCIÓN\nEl presente acuerdo se rige e interpreta de conformidad con el derecho francés.\nCualquier litigio relativo a su validez, interpretación o ejecución se someterá a la competencia exclusiva de los tribunales competentes de la demarcación del Tribunal de Apelación de {{city}}.\n\nHecho en {{city}}, el {{date}}, en dos (2) ejemplares originales.\n\n\nPor {{nameA}}                                   Por {{nameB}}\n{{repA}}                             {{repB}}\n[Firma y sello]                               [Firma y sello]",
    "kind_mutual": "BILATERAL",
    "kind_unilateral": "UNILATERAL",
    "label_party_a": "La Parte A",
    "label_issuer": "La Parte Emisora",
    "label_party_b": "La Parte B",
    "label_receiver": "La Parte Receptora",
    "default_rep_a": "D. Pierre Martin, director general",
    "default_rep_b": "Dña. Sophie Durand, gerente",
    "default_purpose": "la evaluación de una posible colaboración comercial y tecnológica, así como el intercambio de conocimientos técnicos",
    "print_title": "Acuerdo de confidencialidad NDA - {{name}}",
    "titre_generateur": "Generador de acuerdos de confidencialidad (NDA profesional)",
    "sous_titre": "Proteja sus proyectos, ideas, datos y secretos comerciales con un contrato NDA bilateral o unilateral conforme al derecho mercantil.",
    "type_et_duree": "1. Tipo y duración del NDA",
    "bilateral_2_sens": "🤝 Bilateral (ambos sentidos)",
    "unilateral_1_sens": "🔒 Unilateral (un solo sentido)",
    "parties_signataires": "2. Partes firmantes",
    "apercu_accord_nda": "Vista previa del acuerdo NDA",
    "copie": "¡Copiado!",
    "copier_texte": "Copiar texto",
    "duration_years_one": "{{count}} año",
    "duration_years_other": "{{count}} años",
    "mutual_roles": " Cada Parte es la \"Parte Emisora\" cuando comunica Información Confidencial y la \"Parte Receptora\" cuando la recibe."
  },
  "business-travel-carbon-offset-audit": {
    "bilan_carbone_donnees_ademe": "Balance de Carbono y Datos ADEME",
    "moyen_de_transport_principal": "Medio de Transporte Principal",
    "distance_aller_simple_km": "Distancia Solo Ida (km)",
    "trajet_aller_retour_2": "Viaje de Ida y Vuelta (×2)",
    "nuitees_d_hotel": "Noches de Hotel",
    "voyageurs": "Viajeros",
    "total_emissions_co2": "Emisiones Totales de CO2",
    "kg_co2e": "kg CO2e",
    "cout_contribution_carbone": "Coste de Compensación de Carbono",
    "calculateur_empreinte_carbone_deplacements_pro": "Calculadora de huella de carbono de viajes profesionales y compensación RSC",
    "auditez_les_emissions_co2_de_vos": "Audite las emisiones de CO2 de sus viajes profesionales (ADEME), compare tren y avión y calcule el coste de compensación.",
    "1_mode_de_transport_trajet": "1. Modo de transporte y trayecto",
    "avion_court_1000km": "✈️ Avión corto (<1000 km)",
    "avion_long_courrier": "✈️ Avión de largo recorrido",
    "train_tgv": "🚆 Tren / alta velocidad",
    "voiture_thermique": "🚗 Coche de combustión",
    "voiture_electrique": "⚡ Coche eléctrico",
    "soit_tonne_s_de_co2_emises": "Es decir, {{value}} tonelada(s) de CO2 emitidas",
    "equivalent_a_arbres_plantes": "Equivalente a {{value}} árboles plantados",
    "economie_possible_en_prenant_le_train": "Ahorro posible tomando el tren:",
    "prendre_le_train_sur_ce_meme": "Tomar el tren en este mismo itinerario permitiría evitar <0>{{value}} kg de CO2</0>.",
    "prix_tonne_co2": "Precio por tonelada de CO2 (€)"
  },
  "cold-email-deliverability-warmup": {
    "enregistrement_spf_v_spf1": "Registro SPF (v=spf1)",
    "valide_que_votre_serveur_est": "Valida que su servidor está autorizado para enviar correos desde su dominio.",
    "signature_dkim_cle_2048_bit": "Firma DKIM (clave 2048-bit)",
    "garantit_l_integrite_du_contenu": "Garantiza la integridad criptográfica y previene la suplantación.",
    "politique_dmarc_p_none_ou": "Política DMARC (p=none o p=quarantine)",
    "obligatoire_depuis_les_regles_google": "Exigido a los remitentes de más de 5000 correos al día a Gmail (normas de Google y Yahoo de febrero de 2024); recomendado para todos.",
    "custom_tracking_domain_cname_ssl": "Dominio de Seguimiento Personalizado (CNAME SSL)",
    "isole_la_reputation_de_vos": "Aísla la reputación de sus enlaces de clic de plataformas compartidas.",
    "warmup_continu_actif_reseau_de": "Calentamiento Continuo Activo (Warmup)",
    "maintient_un_taux_de_reponse": "Mantiene una tasa de respuesta orgánica y rescata correos del buzón de spam.",
    "periode": "Período",
    "envois_boite": "Envíos / Buzón",
    "total_flotte": "Flota Total",
    "etape": "Fase de Calentamiento",
    "label_inboxes": "Número de bandejas de entrada",
    "label_max_sends": "Envíos máximos por cuenta / día",
    "default_email_text": "Hola:\n\nEspero que se encuentre bien. Me pongo en contacto con usted para presentarle nuestra solución 100% gratuita para impulsar sus ventas de inmediato y multiplicar sus ingresos.\n\n¿Tiene disponibilidad para una llamada urgente esta semana? Haga clic aquí para aprovecharlo.",
    "semaine_1_j1_j7": "Semana 1 (D1 - D7)",
    "semaine_2_j8_j14": "Semana 2 (D8 - D14)",
    "semaine_3_j15_j21": "Semana 3 (D15 - D21)",
    "semaine_4_regime": "Semana 4+ (régimen estable)",
    "chauffe_pure": "Calentamiento puro",
    "premiers_envois_reels": "Primeros envíos reales",
    "montee_en_charge": "Aumento de carga",
    "vitesse_de_croisiere": "Velocidad de crucero",
    "score_de_delivrabilite_boite_de": "Puntuación de entregabilidad en bandeja de entrada",
    "boite_principale_inbox_primary": "🟢 bandeja principal (Inbox Primary)",
    "risque_onglet_promotions_spam": "🟡 Riesgo de pestaña Promociones / Spam",
    "danger_debarquement_spam_direct": "🔴 peligro: va directo a spam",
    "capacite_d_envoi_quotidienne_sure": "Capacidad de envío diaria segura",
    "emails_par_jour": "{{value}} emails / día",
    "boites_x_envois_soit": "{{inboxes}} buzones × {{sends}} envíos (es decir, {{total}} emails / mes laborable)",
    "mots_spam_detectes_dans_l_email": "Palabras de spam detectadas en el email",
    "mots_sensibles": "{{value}} palabras sensibles",
    "copie_propre_sans_signaux_d_alerte": "🟢 Texto limpio sin señales de alerta",
    "nettoyez_les_formules_marketing_racoleuses": "⚠️ elimine las fórmulas de marketing agresivas",
    "1_checklist_dns_authentification_obligatoire": "1. Checklist de DNS y autenticación (obligatoria 2026)",
    "2_parametres_de_flotte_d_adresses": "2. Parámetros de la flota de direcciones de email",
    "recommandation_2026_ne_depassez_jamais": "💡 Recomendación 2026: no supere nunca los 35-40 cold emails por día y por buzón para mantener una puntuación de reputación > 95 %.",
    "3_analyseur_de_contenu_mots_declencheurs": "3. Analizador de contenido y palabras desencadenantes de spam",
    "collez_votre_message_de_prospection": "Pegue su mensaje de prospección:",
    "mots_a_supprimer_immediatement": "Palabras que debe eliminar de inmediato:",
    "evitez_les_mots_en_majuscules_integrales": "Evite las palabras en MAYÚSCULAS completas, que activan los filtros antiphishing.",
    "trop_de_points_d_exclamation": "Demasiados signos de exclamación ({{value}}): limítese a 0 o 1 como máximo.",
    "planning_de_chauffe_warmup_sur_4": "Calendario de calentamiento (warmup) de 4 semanas",
    "valeur_par_jour": "{{value}} / día"
  },
  "community-manager-freelance-rate": {
    "ex_20_min_jour_10h": "ej.: 20 min / día = 10 h / mes",
    "reporting_mensuel_reunion_strategique": "Informe mensual y reunión estratégica",
    "analyse_des_kpis_statistiques_et": "Análisis de KPIs, estadísticas y recomendaciones tácticas",
    "copy_proposal": "📋 PROPUESTA DE SERVICIOS DE COMMUNITY MANAGEMENT\n🎯 Alcance: gestión de {{networks}} redes sociales\n📦 Entregables mensuales:\n  • {{posts}} publicaciones y carruseles (visuales + copywriting + hashtags)\n  • {{reels}} Reels / TikToks editados con subtítulos dinámicos\n  • Moderación diaria de comentarios y mensajes privados (DM)\n  • Informe mensual de análisis de rendimiento y recomendaciones estratégicas\n\n💰 Cuota mensual (retainer): {{amount}} + IVA / mes\n⏱️ Carga de trabajo estimada: ~{{hours}} h / mes",
    "recommended_monthly_retainer": "Cuota mensual recomendada",
    "per_month_per_client": "Por mes / por cliente",
    "estimated_work_time": "Tiempo de trabajo estimado",
    "hours_value": "~{{value}} horas",
    "hours_per_week": "Es decir, {{value}} h / semana",
    "retained_hourly_rate": "Tarifa horaria aplicado",
    "rate_per_hour": "{{value}} € / h",
    "level_value": "Nivel: {{value}}",
    "level_senior": "Sénior / Experto",
    "level_confirmed": "Con experiencia (2-5 años)",
    "level_junior": "Júnior (< 2 años)",
    "deliverables_per_month": "Entregables / mes",
    "posts_value": "{{value}} publicaciones",
    "on_n_networks": "En {{value}} redes sociales",
    "scope_and_frequency": "1. Alcance y frecuencia de publicación",
    "managed_networks": "Número de redes gestionadas",
    "experience_level": "Nivel de experiencia",
    "opt_junior": "Júnior (30 €/h)",
    "opt_confirmed": "Con experiencia (45 €/h)",
    "opt_senior": "Sénior / Experto (65 €/h)",
    "posts_per_week": "Publicaciones / carruseles por semana",
    "reels_per_week": "Reels / TikToks por semana",
    "moderation_and_strategy": "2. Moderación y estrategia mensual",
    "daily_moderation_time": "Tiempo diario de moderación (DM y comentarios, minutos/día)",
    "quote_title": "Presupuesto y propuesta mensual formateable",
    "quote_hint": "Texto claro listo para insertar en su contrato de servicios o propuesta comercial.",
    "quote_copied": "¡Presupuesto copiado!",
    "copy_proposal_button": "Copiar la propuesta",
    "preview_text": "📋 CUOTA MENSUAL DE COMMUNITY MANAGEMENT:\n• Gestión de {{networks}} redes ({{posts}} publicaciones/mes)\n• Moderación activa y respuestas a mensajes privados\n• Informe mensual de rendimiento incluido\n• Honorarios: {{amount}} + IVA / mes"
  },
  "eu-a1-social-security": {
    "simulateur_securite_sociale_transfrontaliere_certificat": "Simulador de Seguridad Social Transfronteriza y Certificado A1 (UE)",
    "france": "Francia",
    "belgique": "Bélgica",
    "allemagne": "Alemania",
    "espagne": "España",
    "italie": "Italia",
    "luxembourg_ccss": "Luxemburgo (CCSS)",
    "suisse_avs_ai": "Suiza (AVS / AI / LPP)",
    "allemagne_sozialversicherung": "Alemania (Sozialversicherung)",
    "belgique_onss": "Bélgica (ONSS)",
    "france_urssaf": "Francia (URSSAF)",
    "legislation_sociale_applicable": "Legislación de Seguridad Social Aplicable",
    "salaire_net_avant_impot_sur": "Salario Neto Estimado (Antes de IRPF):",
    "cout_total_employeur_super_brut": "Coste Total para el Empleador (Superbruto):",
    "espagne_seguridad_social": "España (Seguridad Social)",
    "italie_inps": "Italia (INPS)",
    "ground_framework_under_50": "Acuerdo marco multilateral del 01/07/2023 (teletrabajo < 50 % = se mantiene el régimen de {{name}})",
    "ground_framework_over_50": "Superado el umbral del 50 % -> cambio obligatorio al régimen del país de residencia ({{name}})",
    "ground_standard_25": "Regla estándar art. 13 Regl. 883/2004 (actividad sustancial ≥ 25 % -> régimen de {{name}})",
    "ground_under_25": "Menos del 25 % del tiempo en el país de residencia -> régimen del empleador ({{name}})",
    "badge_regulation": "Reglamento (CE) n.º 883/2004 y Acuerdo de Teletrabajo 2023",
    "banner_description": "Determine la legislación de seguridad social aplicable a los trabajadores transfronterizos y teletrabajadores en Europa, compruebe los umbrales del 25 % y del 50 % y simule el impacto financiero de las cotizaciones del empleador y del trabajador.",
    "residence_and_employer_seat": "País de residencia y sede del empleador",
    "employee_residence_country": "País de residencia del empleado",
    "employer_seat_country": "País de la sede social del empleador",
    "annual_gross_salary": "Salario bruto anual (€)",
    "telework_rhythm_and_agreement": "Ritmo de teletrabajo y acuerdo marco europeo",
    "telework_days_per_week": "Número de días de teletrabajo por semana desde el país de residencia: {{days}} días/semana ({{percent}} %)",
    "framework_agreement_application": "Aplicación del Acuerdo Marco europeo de teletrabajo (umbral elevado a < 50 %):",
    "certificate_a1": "Certificado A1",
    "retained_regime": "Régimen de afiliación aplicable",
    "employer_contributions": "Cotizaciones del empleador ({{rate}} %):",
    "employee_contributions": "Cotizaciones del trabajador ({{rate}} %):",
    "eur_per_year": "{{value}} € / año",
    "form_a1_obligation": "Obligación del formulario A1",
    "a1_notice": "El empleador debe solicitar obligatoriamente un certificado A1 al organismo de seguridad social competente. En caso de inspección en el país de residencia, la ausencia de certificado A1 expone a un riesgo de regularización por trabajo no declarado."
  },
  "eu-ai-act-compliance-auditor": {
    "audit_de_conformite_reglement_europeen": "Auditoría de Conformidad del Reglamento Europeo de IA (AI Act)",
    "haut_risque_annexe_iii": "Alto Riesgo (Anexo III)",
    "rh_recrutement_evaluation_des_salaries": "RRHH, selección y evaluación de personal",
    "evaluation_de_solvabilite_scoring_de": "Evaluación de solvencia y scoring crediticio",
    "identification_biometrique_a_distance_securite": "Identificación biométrica remota (seguridad)",
    "admissions_notation_dans_l_education": "Admisiones y calificación en educación",
    "gestion_d_infrastructures_critiques_eau": "Gestión de infraestructuras críticas (agua, energía)",
    "risque_inacceptable_interdit_art_5": "Riesgo Inaceptable / Prohibido (Art. 5)",
    "notation_sociale_par_les_autorites": "Puntuación social por autoridades públicas",
    "moissonnage_non_cible_d_images": "Rastreo masivo no dirigido de imágenes faciales (Scraping)",
    "risque_limite_standard": "Riesgo Limitado / Mínimo",
    "agent_conversationnel_client_chatbot": "Agente conversacional de atención (Chatbot)",
    "generation_de_texte_images_ou": "Generación de texto, imágenes o código (IA Gen)",
    "analyse_interne_predictive_logistique": "Análisis interno predictivo y logística",
    "qualification_juridique_amendes": "Clasificación jurídica y posibles sanciones",
    "score_de_conformite_aux_exigences": "Puntuación de conformidad regulatoria",
    "6_mois_fev_2025": "6 Meses (Feb 2025)",
    "interdiction_stricte_des_systemes_d": "Prohibición estricta de sistemas de IA de riesgo inaceptable",
    "12_mois_aout_2025": "12 Meses (Ago 2025)",
    "obligations_sur_les_modeles_gpai": "Obligaciones para modelos GPAI (IA de propósito general)",
    "24_mois_aout_2026": "24 Meses (Ago 2026)",
    "conformite_pleine_pour_les_systemes": "Transparencia (art. 50); alto riesgo aplazado al 02/12/2027 (anexo III) y al 02/08/2028 (anexo I)",
    "pratique_ia_interdite": "Práctica de IA prohibida (riesgo inaceptable - art. 5)",
    "systeme_d_ia_a_haut_risque": "Sistema de IA de alto riesgo (High-Risk AI - anexo III)",
    "modele_gpai_a_risque_systemique": "Modelo GPAI de riesgo sistémico (> 10²⁵ FLOPs)",
    "modele_d_ia_a_usage_general": "Modelo de IA de uso general (GPAI estándar)",
    "risque_limite_minimal": "Riesgo limitado / mínimo (obligación de transparencia simple)",
    "reglement_ue_2024_1689": "Reglamento (UE) 2024/1689",
    "auditez_vos_cas_d_usage_de": "Audite sus casos de uso de inteligencia artificial según la clasificación oficial de la Comisión Europea (prácticas prohibidas, alto riesgo del anexo III, modelos GPAI) y calcule sus límites de sanciones legales.",
    "classification_du_cas_d_usage_de": "Clasificación del caso de uso de la IA",
    "domaine_d_application_du_systeme_d": "Ámbito de aplicación del sistema de IA",
    "chiffre_d_affaires_mondial_de_l": "Volumen de negocios mundial de la empresa (€)",
    "developpement_d_un_modele_gpai_llm": "Desarrollo de un modelo GPAI / LLM de fundación:",
    "puissance_de_calcul_cumulee_d_entrainement": "Potencia de cálculo acumulada de entrenamiento > 10²⁵ FLOPs (umbral de riesgo sistémico):",
    "exigences_legales_de_gouvernance_articles_9": "Requisitos legales de gobernanza (artículos 9-15)",
    "supervision_humaine_effective_human_in_the": "Supervisión humana efectiva (human-in-the-loop / desconexión posible):",
    "gouvernance_des_donnees_d_entrainement_journalisation": "Gobernanza de los datos de entrenamiento y registro de logs (auditabilidad):",
    "documentation_technique_complete_enregistrement_dans": "Documentación técnica completa y registro en la base de datos de la UE:",
    "marquage_visible_watermarking_des_contenus": "Marcado visible / marca de agua de los contenidos generados por IA:",
    "ai_office_ue": "Oficina de IA de la UE",
    "categorisation_reglement": "Categorización según el {{regulation}}",
    "plafond_d_amende_legale_maximale": "Límite máximo de multa legal ({{percent}}% del volumen de negocios o {{cap}} M€)",
    "calendrier_d_entree_en_vigueur_obligatoire": "Calendario de entrada en vigor obligatoria"
  },
  "eu-csrd-esg-auditor": {
    "audit_de_conformite_csrd_normes": "Auditoría de Conformidad CSRD y Normas ESRS",
    "maturite_des_piliers_esrs": "Madurez de los Pilares ESRS (E, S, G)",
    "statut_csrd_obligatoire": "Estado CSRD Obligatorio",
    "analyse_de_double_materialite_materialite": "Análisis de Doble Materialidad (Financiera y de Impacto)",
    "collecte_des_donnees_de_gaz": "Recogida y reporte de emisiones de GEI Alcance 1, 2 y 3",
    "audit_avec_assurance_limitee_par": "Auditoría con aseguramiento limitado por tercero independiente",
    "grandes_entreprises_cotees_nfrd": "Grandes empresas cotizadas (NFRD)",
    "exercice_2024_deja_en_vigueur": "Ejercicio 2024 (informe 2025) - YA EN VIGOR",
    "grandes_entreprises_non_cotees": "Grandes empresas no cotizadas",
    "exercice_2025_rapport_2026": "Ejercicio 2025 (Informe 2026)",
    "pme_cotees_sur_un_marche": "PYMES cotizadas en un mercado regulado de la UE",
    "exercice_2026_rapport_2027_opt_out": "Ejercicio 2026 (informe 2027, opt-out hasta 2028)",
    "groupes_hors_ue_avec_filiales": "Grupos de fuera de la UE con filiales/sucursales europeas",
    "exercice_2028_rapport_2029": "Ejercicio 2028 (Informe 2029)",
    "entreprise_non_soumise_directement_au_csrd": "Empresa no sujeta directamente a la CSRD",
    "volontaire_pression_chaine_de_valeur": "Voluntario (presión de la cadena de valor, Scope 3)",
    "verifiez_vos_seuils_d_assujettissement_legaux": "Compruebe sus umbrales legales de sujeción (plantilla, volumen de negocios, total del balance), su calendario de obligaciones y su puntuación de doble materialidad ESG.",
    "taille_profil_de_l_entreprise": "Tamaño y perfil de la empresa",
    "nombre_de_salaries_equivalents_temps_plein": "Número de empleados (equivalentes a tiempo completo)",
    "chiffre_d_affaires_net_m": "Volumen de negocios neto (M€)",
    "total_de_bilan_m": "Total del balance (M€)",
    "entreprise_cotee_sur_un_marche_reglemente": "Empresa cotizada en un mercado regulado europeo (Euronext, etc.)",
    "societe_mere_hors_union_europeenne_avec": "Sociedad matriz fuera de la Unión Europea con filial o sucursal en la UE",
    "environnement_e1_e5_climat_bilan_carbone": "Medio ambiente E1-E5 (Clima y huella de carbono): {{value}}%",
    "social_s1_s4_conditions_travail_parite": "Social S1-S4 (Condiciones de trabajo y paridad): {{value}}%",
    "categorie_x_y_3_criteres": "Categoría: <0>{{category}}</0> ({{met}}/3 criterios de gran empresa cumplidos).",
    "indice_de_preparation_esrs": "Índice de preparación ESRS:",
    "actions_prioritaires_de_conformite": "Acciones prioritarias de cumplimiento:",
    "grandes_entreprises_cotees_500_ou_moins": "Grandes empresas cotizadas (500 empleados o menos)"
  },
  "eu-dsa-cookie-compliance": {
    "risque_faible_conforme": "Riesgo Bajo / Conforme",
    "risque_critique_d": "Riesgo Crítico / Incumplimiento Grave",
    "vulnerabilites_reglementaires_moderees": "Vulnerabilidades regulatorias moderadas",
    "simulateur_conformite_dsa_risque_d": "Simulador de Cumplimiento DSA y Sanciones por Cookies",
    "marketplace_e_commerce_avec_vendeurs": "Marketplace de comercio electrónico con vendedores externos",
    "hebergeur_web_service_cloud_hosting": "Alojamiento web / Servicio de infraestructura en la nube",
    "reseau_social_plateforme_de_partage": "Red social o plataforma de compartición de contenidos",
    "fournisseur_d_acces_caching": "Proveedor de acceso o servicio de caché y CDN",
    "exposition_sanctions_reglementaires": "Exposición a sanciones regulatorias (DSA y RGPD)",
    "astreinte_journaliere_maximale_dsa_5": "Multa coercitiva diaria máxima DSA (5% facturación)",
    "interdiction_des_dark_patterns_art": "Prohibición de Dark Patterns o patrones oscuros (CNIL / ePrivacy)",
    "refuser_les_cookies_doit_etre": "Rechazar cookies debe ser tan fácil como aceptarlas (1 clic)",
    "point_de_contact_legal_unique": "Punto de contacto legal único (Art. 11 y 12 DSA)",
    "obligatoire_dans_l_ue_pour": "Obligatorio en la UE para autoridades y usuarios",
    "rapport_annuel_de_transparence": "Informe anual de transparencia en moderación",
    "publication_obligatoire_du_nombre_de": "Publicación obligatoria de estadísticas de requerimientos",
    "reglement_ue": "Reglamento (UE) 2022/2065",
    "banner_desc": "Evalúe su sujeción a la Ley de Servicios Digitales (DSA), detecte patrones oscuros en banners de cookies y cuantifique la exposición máxima a sanciones de hasta el 6% de la facturación global.",
    "profil_activite_numerique": "Perfil de actividad digital y usuarios de la UE",
    "type_service_en_ligne": "Tipo de servicio en línea",
    "chiffre_affaires_mondial_consolide": "Facturación global consolidada (€)",
    "utilisateurs_actifs_mensuels_ue": "Usuarios activos mensuales en la UE: {{count}}",
    "seuil_vlop_atteint": "Umbral VLOP alcanzado (>45M)",
    "plateforme_standard": "Plataforma Estándar",
    "consentement_cookies_titre": "Consentimiento de cookies y prácticas de interfaz (Patrones oscuros)",
    "conformite_bandeau_cookies": "Nivel de conformidad del banner de cookies (Botón Rechazar = Aceptar): {{score}}%",
    "presence_dark_patterns": "Presencia de patrones oscuros (casillas premarcadas, baja compleja, contadores engañosos):",
    "signalement_contenus_illicites": "Mecanismo de notificación de contenidos ilícitos y reclamación interna (art. 16 DSA):",
    "tracabilite_vendeurs_kyb": "Trazabilidad de comerciantes profesionales KYB / Know Your Business (art. 30 DSA):",
    "indice_global_conformite": "Índice global de conformidad normativa",
    "plafond_amende_maximale_dsa": "Límite máximo de sanción DSA (6% de la facturación global)",
    "plafond_amende_cookies_rgpd": "Límite de sanción Cookies / RGPD (4% facturación o 20 M€)",
    "par_jour": "€ / día",
    "obligations_cles_dsa": "Obligaciones clave de la Ley de Servicios Digitales",
    "badge_dsa_cnil_rgpd": "DSA / CNIL / RGPD",
    "utilisateurs_actifs_mensuels_ue_2": "Usuarios activos mensuales en la UE: {{value}}",
    "seuil_vlop_atteint_45m_ou_plus": "Umbral VLOP alcanzado (≥ 45 M)"
  },
  "eu-vat-oss-calculator": {
    "calculateur_tva_intracommunautaire_guichet_unique": "Calculadora de IVA Intracomunitario y Ventanilla Única (OSS / IOSS)",
    "pays_du_vendeur": "País del vendedor (sede)",
    "pays_de_l_acheteur": "País del comprador (destino)",
    "type_de_client": "Tipo de cliente (B2B o B2C)",
    "type_de_taux": "Tipo impositivo de IVA",
    "regime_guichet_unique_oss_ca": "Régimen de Ventanilla Única OSS (Ventas transfronterizas > 10.000 €)",
    "montant_hors_taxe_ht": "Importe Neto (Base Imponible)",
    "total_facture": "Importe Total con IVA",
    "taux_en_vigueur_dans_l": "Tipo vigente en el Estado miembro de destino",
    "bandeau_description": "Gestione los 27 países de la Unión Europea: inversión del sujeto pasivo B2B, venta B2C de comercio electrónico (One Stop Shop), verificación del número de IVA y menciones legales obligatorias.",
    "parametres_de_la_transaction": "Parámetros de la transacción",
    "ht_vers_ttc": "Sin IVA ➔ Con IVA",
    "ttc_vers_ht": "Con IVA ➔ Sin IVA",
    "montant_hors_taxes_ht_label": "Importe sin IVA (€ base imponible)",
    "montant_ttc_label": "Importe con IVA incluido (€ total)",
    "entreprise_b2b": "Empresa B2B (profesional)",
    "particulier_b2c": "Particular B2C (consumidor)",
    "taux_normal": "Tipo general",
    "taux_reduit": "Tipo reducido",
    "taux_super_reduit": "Tipo superreducido / especial",
    "numero_tva_client": "Número de IVA intracomunitario del cliente ({{code}})",
    "placeholder_exemple": "Ej.: {{example}}",
    "format_conforme": "Formato válido ({{vat}}) para {{country}}",
    "format_non_standard": "Formato no estándar para {{country}} (esperado: {{example}})",
    "montant_total_a_facturer": "Importe total a facturar (IVA incluido)",
    "taux_de_tva_applique": "Tipo de IVA aplicado: <0>{{rate}}%</0>",
    "tva_taux_ligne": "IVA ({{rate}}%):",
    "regime_domestique": "IVA nacional ({{country}})",
    "mention_domestique": "Facturación sujeta al tipo nacional de IVA ({{rate}}%).",
    "regime_autoliquidation": "Inversión del sujeto pasivo B2B (Reverse Charge)",
    "mention_autoliquidation": "Exento de IVA, artículo 138 de la Directiva 2006/112/CE. Inversión del sujeto pasivo (Reverse charge).",
    "regime_oss": "Ventanilla Única UE (OSS / IOSS) - tipo del país de destino ({{country}})",
    "mention_oss": "Se aplica el IVA del país de destino ({{country}}: {{rate}}%), declarado a través de la ventanilla única OSS.",
    "regime_seuil": "Umbral < 10 000 € - IVA del país del vendedor ({{country}})",
    "mention_seuil": "Régimen excepcional de microempresas / umbral < 10 k€: IVA del país de origen ({{rate}}%).",
    "ligne_vendeur": "• Vendedor ({{country}}): General {{standard}}% | Reducido {{reduced}}%",
    "ligne_acheteur": "• Comprador ({{country}}): General {{standard}}% | Reducido {{reduced}}%"
  },
  "eu-whistleblowing-compliance": {
    "audit_conformite_directive_lanceurs_d": "Auditoría de Cumplimiento Directiva Protección de Informantes (UE 2019/1937)",
    "statut_de_conformite_europeenne": "Estado de Conformidad Europea",
    "calendrier_d_obligation": "Calendario de Obligación Legal",
    "delai_d_accuse_de_reception": "Plazo para Acuse de Recibo",
    "7_jours_calendaires": "7 días para acusar recibo (días hábiles en Francia)",
    "delai_de_retour_sur_les": "Plazo para Informar de las Actuaciones",
    "3_mois_maximum": "3 meses máximo para investigar",
    "sanction_penale_pour_entrave_au": "Sanciones Penales por Obstaculizar la Alerta",
    "jusqu_a_3_ans_de": "En Francia: 1 año de prisión y 15 000 € de multa",
    "obligation_legale_immediate_depuis_le_17": "Obligación legal inmediata (desde el 17 de diciembre de 2021 para > 250 empleados)",
    "obligation_legale_pleine_et_entiere_depuis": "Obligación legal plena (desde el 17 de diciembre de 2023 para 50-249 empleados)",
    "obligation_sectorielle_sans_condition_d_effectif": "Obligación sectorial sin umbral de plantilla (banca, seguros, finanzas, PBC/FT)",
    "non_obligatoire_a_ce_stade_50": "No obligatorio en esta fase (< 50 empleados), pero muy recomendado por las normas de RSC/ESG",
    "conformite_optimale": "Cumplimiento óptimo",
    "non_conformite_critique_risque_penal_prud": "Incumplimiento crítico / alto riesgo penal y laboral",
    "conformite_partielle_points_de_vulnerabilite": "Cumplimiento parcial / puntos de vulnerabilidad",
    "loi_waserman_whistleblowing": "Ley Waserman / Whistleblowing",
    "verifiez_la_mise_en_conformite_de": "Compruebe el cumplimiento de su canal interno de denuncias, el respeto de los plazos estrictos (7 días para el acuse de recibo, 3 meses para el seguimiento) y la protección frente a represalias.",
    "structure_de_l_entreprise_seuil_d": "Estructura de la empresa y umbral de aplicación",
    "effectif_total_de_salaries_dans_l": "Plantilla total de empleados en la UE",
    "seuil_d_obligation_legale_generale_en": "Umbral general de obligación legal en Europa: ≥ 50 empleados",
    "activite_dans_les_services_financiers_bancaires": "Actividad en servicios financieros, banca, seguros o PBC/FT (obligación desde 1 empleado):",
    "gouvernance_du_canal_de_signalement_delais": "Gobernanza del canal de denuncias y plazos legales",
    "canal_numerique_securise_garantissant_la_stricte": "Canal digital seguro que garantiza la estricta confidencialidad y el anonimato:",
    "accuse_de_reception_formel_transmis_a": "Acuse de recibo formal enviado al informante en un máximo de 7 días:",
    "retour_d_information_mesures_de_suivi": "Información de retorno y medidas de seguimiento comunicadas en un máximo de 3 meses:",
    "procedure_ecrite_interdisant_toute_forme_de": "Procedimiento escrito que prohíbe cualquier forma de represalia (despido, marginación):",
    "referent_impartial_designe_et_forme_pour": "Responsable imparcial designado y formado para instruir las denuncias:",
    "dispositif_obligatoire": "Dispositivo obligatorio",
    "facultatif": "Opcional",
    "score_d_audit_de_conformite": "Puntuación de auditoría de cumplimiento"
  },
  "freelance-late-payment-interest": {
    "total_actualise_du": "Total Deuda Actualizada Reclamable",
    "interets_de_retard_cumules": "Intereses de Demora Acumulados",
    "indemnite_forfaitaire_legale": "Indemnización Fija por Costes de Cobro",
    "duree_du_retard": "Duración del Retraso en el Pago",
    "rappel_juridique_france_ue": "Aviso Legal (Ley de Morosidad y Directiva UE)",
    "invoice_num": "Número de factura",
    "debtor_client": "Nombre del cliente deudor",
    "email_draft": "Asunto: Reclamación formal y aplicación de penalizaciones por demora - Factura {{invoice}}\n\nEstimados señores:\n\nSalvo error por nuestra parte, constatamos que la factura n.º {{invoice}}, por un importe inicial de {{amount}}, vencida desde hace {{days}} días, sigue sin pagarse a día de hoy.\n\nDe conformidad con el artículo L. 441-10 del Código de Comercio francés y con las condiciones generales de venta aplicables, el retraso en el pago conlleva de pleno derecho y sin requerimiento previo:\n- La aplicación de un interés de demora al tipo legal vigente ({{rate}}% anual), es decir: {{interest}}\n- La indemnización fija legal por gastos de cobro de: {{fee}} €\n\nPor tanto, el importe total actualizado adeudado asciende ahora a {{total}}.\n\nLes rogamos que procedan al pago íntegro en un plazo de 48 horas hábiles mediante transferencia bancaria.\n\nA la espera de su confirmación de transferencia,\nAtentamente,",
    "facture_penalites_indemnite": "Factura + penalizaciones + indemnización de 40 €",
    "soit_par_jour": "Es decir, {{value}} € por día de retraso",
    "article_l441_10": "Artículo L441-10 del Código de Comercio francés (cobro B2B)",
    "jours_value": "{{value}} días",
    "depuis_echeance": "Desde la fecha de vencimiento contractual",
    "infos_facture": "1. Datos de la factura impagada",
    "montant_initial_ttc": "Importe inicial de la factura con IVA (€)",
    "nombre_jours_retard": "Número de días de retraso",
    "ajouter_indemnite": "Añadir la indemnización legal fija de 40 € (obligatoria en B2B)",
    "taux_legal_applicable": "2. Tipo de interés legal aplicable",
    "taux_annuel_penalite": "Tipo de interés anual de penalización (%)",
    "absence_de_clause": "A falta de una cláusula específica en sus condiciones generales de venta, el tipo legal mínimo por defecto corresponde al tipo de refinanciación semestral del BCE más 10 puntos porcentuales (12,15 % en el primer semestre de 2026 y 12,40 % en el segundo).",
    "penalites_exigibles": "Las penalizaciones son exigibles desde el primer día de retraso sin necesidad de requerimiento previo.",
    "email_formel": "Correo formal de cobro listo para enviar",
    "copier_email": "Copiar el correo"
  },
  "freelance-scope-creep-estimator": {
    "ajouter_une_tache_personnalisee": "Añadir tarea fuera de presupuesto",
    "heures": "horas",
    "demande_en_urgence_week_end": "Solicitud urgente / Fin de semana (+30%)",
    "applique_une_majoration_pour_reorganisation": "Aplica un recargo por alteración imprevista de planificación",
    "pages_maquettes_supplementaires_non_prevues": "Páginas / maquetas adicionales no previstas",
    "integration_d_api_tierce_ou": "Integración de API de terceros o pago complejo",
    "rondes_d_allers_retours_revisions_au": "Rondas de idas y vueltas / Revisiones más allá del paquete (x3)",
    "redaction_et_mise_en_forme": "Redacción y maquetación de contenidos / textos",
    "optimisation_seo_balisage_technique_avance": "Optimización SEO y marcado técnico avanzado",
    "formation_equipe_client_documentation_video": "Formación del equipo cliente y documentación en vídeo",
    "email_ligne_tache": "• {{name}}: {{hours}} h ({{cost}} € sin IVA)",
    "email_ligne_urgence": "• Recargo por entrega urgente: +{{amount}} € sin IVA",
    "email_corps": "Buenos días:\n\nGracias por sus comentarios y por estas precisiones sobre la evolución del proyecto.\n\nPara integrar estas nuevas solicitudes, que exceden el alcance inicial acordado en el presupuesto ({{budget}} €), este es el resumen de la adenda (Change Order):\n\n{{items}}{{rush}}\n\n📊 Total de la adenda complementaria: {{total}} € sin IVA\n⏱️ Ajuste del plazo de entrega: +{{days}} día(s) laborable(s)\n\nEn cuanto reciba su conformidad (o la orden firmada), planificaré de inmediato estas adiciones en nuestro calendario de producción.\n\nQuedo a su disposición,\nUn cordial saludo.",
    "montant_de_l_avenant_devis_extra": "Importe de la adenda (presupuesto adicional)",
    "total_revise_du_contrat": "Total revisado del contrato: <0>{{total}}</0> (+{{percent}}%)",
    "temps_additionnel_requis": "Tiempo adicional requerido",
    "x_heures": "+{{value}} horas",
    "soit_environ_x_jours_ouvres": "Es decir, aproximadamente <0>+{{days}} día(s) laborable(s)</0> de retraso",
    "taux_horaire_applique": "Tarifa por hora aplicada",
    "x_eur_par_h": "{{value}} € / h",
    "tjm_equivalent_7h": "Tarifa diaria equivalente (7 h): {{value}} €",
    "option_urgence_express": "Opción de urgencia exprés",
    "standard": "Estándar",
    "surcout_urgence_x": "Sobrecoste por urgencia: +{{value}} €",
    "delai_normal_de_production": "Plazo normal de producción",
    "demandes_hors_perimetre_scope_creep": "Solicitudes fuera de alcance (Scope Creep)",
    "x_elements_coches": "{{value}} elementos marcados",
    "ajouter": "Añadir",
    "parametres_du_contrat_de_base": "Parámetros del contrato base",
    "budget_initial_du_projet_eur_ht": "Presupuesto inicial del proyecto (€ sin IVA)",
    "taux_horaire_eur_heure": "Tarifa por hora (€ / hora)",
    "email_pret_a_l_envoi": "Correo listo para enviar (adenda comercial)",
    "copier_l_email": "Copiar el correo"
  },
  "gdpr-penalty-estimator": {
    "simulateur_de_risque_amendes_rgpd": "Simulador de Riesgo de Sanciones RGPD (AEPD / EDPB)",
    "caractere_de_la_violation": "Gravedad e intencionalidad de la infracción",
    "facteurs_d_attenuation_ou_d": "Factores atenuantes o agravantes",
    "notification_de_la_violation_a": "Notificación de la brecha a la autoridad en 72h",
    "cooperation_totale_et_mise_en": "Cooperación plena y medidas correctoras inmediatas",
    "donnees_sensibles_concernees_sante_biometrie": "Datos de categorías especiales afectados (salud, biométricos, menores)",
    "recidive_ou_antecedents_de_sanctions": "Reincidencia o sanciones administrativas previas",
    "indice_de_severite_estime": "Índice estimado de gravedad de la infracción",
    "amende_probable_estimee": "Multa administrativa probable estimada",
    "recommandations_de_conformite_immediates": "Recomendaciones inmediatas de adecuación",
    "tenir_a_jour_le": "Mantener actualizado el",
    "registre_des_traitements": "Registro de Actividades de Tratamiento (RAT)",
    "art_30": "(Art. 30 RGPD)",
    "realiser_une": "Elaborar una",
    "aipd": "EIPD",
    "analyse_d_impact_pour_les": "Evaluación de Impacto en Protección de Datos para tratamientos de alto riesgo",
    "verifier_la_conformite_des_sous": "Auditar contratos de encargo de tratamiento con encargados (Art. 28 RGPD)",
    "bannir_les_traceurs_cookies_analytics": "Suprimir cookies y rastreadores de analítica sin consentimiento expreso previo",
    "banner_description": "Estime el límite legal (hasta 20 M€ o el 4 % de la facturación mundial) y el riesgo de sanción económica según los criterios del CEPD / autoridades de control.",
    "company_and_severity": "Empresa y gravedad de la infracción",
    "worldwide_annual_turnover": "Facturación anual mundial (€)",
    "infringement_category": "Categoría de la infracción (artículo 83 RGPD)",
    "tier2_label": "Nivel 2 (grave): consentimiento, derechos de los interesados, transferencias fuera de la UE (máx. 20 M€ / 4 %)",
    "tier1_label": "Nivel 1 (estándar): registro, DPO, seguridad técnica, privacidad desde el diseño (máx. 10 M€ / 2 %)",
    "negligence_label": "Negligencia involuntaria / Omisión",
    "deliberate_label": "Deliberado / Conocimiento probado de la infracción",
    "legal_max_fine": "Límite legal máximo de la multa (art. 83)",
    "highest_between": "El más alto entre {{fixed}} M€ y el {{rate}} % de la facturación ({{turnover}} €)",
    "recommendation_ropa": "Mantener actualizado el <0>Registro de Actividades de Tratamiento (RAT)</0> (Art. 30 RGPD)",
    "recommendation_dpia": "Elaborar una <0>EIPD</0>: Evaluación de Impacto en Protección de Datos para tratamientos de alto riesgo"
  },
  "invoice-quote-number-sequence": {
    "conforme_cgi_loi_anti_fraude": "Conforme a la Normativa de Facturación y Veri*factu (Secuencia correlativa sin saltos)",
    "modeles_rapides_recommandes": "Plantillas de numeración recomendadas",
    "prefixe_texte": "Prefijo de texto",
    "ex_fac_inv_2026": "ej.: FAC-, FRA-, PRE-",
    "separateur": "Separador",
    "tiret": "Guion (-)",
    "slash": "Barra inclinada (/)",
    "underscore": "Guion bajo (_)",
    "point": "Punto (.)",
    "aucun_separateur": "Sin separador",
    "integration_annee": "Inclusión del año",
    "4_chiffres_2026": "4 dígitos (2026)",
    "2_chiffres_26": "2 dígitos (26)",
    "integration_mois": "Inclusión del mes (MM)",
    "numero_de_depart": "Número inicial de la serie",
    "zeros_de_remplissage_padding": "Ceros de relleno (Padding)",
    "2_chiffres_01_02": "2 dígitos (01, 02...)",
    "3_chiffres_001_002": "3 dígitos (001, 002...)",
    "4_chiffres_0001_0002": "4 dígitos (0001, 0002...)",
    "5_chiffres_00001_00002": "5 dígitos (00001, 00002...)",
    "6_chiffres_000001": "6 dígitos (000001...)",
    "pret_a_copier_dans_votre": "Listo para copiar en su software de facturación o contabilidad",
    "export_csv": "Exportar serie en formato CSV",
    "exemple_actif": "Formato activo configurado",
    "sequence_chronologique_continue_et_sans": "Secuencia cronológica continua y correlativa obligatoria",
    "copy_number_title": "Copiar este número",
    "csv_entetes": "Numero,Tipo,Fecha_Referencia,Estado",
    "csv_disponible": "Disponible",
    "sequenceur_numeroteur_legal": "Secuenciador y numerador legal de facturas y presupuestos",
    "generez_suites_chronologiques": "Genere series cronológicas continuas que cumplan las obligaciones contables (Código General de Impuestos francés).",
    "type_document_preset": "1. Tipo de documento y preajuste",
    "facture": "Factura",
    "devis": "Presupuesto",
    "avoir": "Abono",
    "bon_cde": "Pedido",
    "standard_f_2026_08_0001": "Estándar (F-2026-08-0001)",
    "mensuel_fac_26_08_001": "Mensual (FAC/26/08/001)",
    "annuel_iso_inv_2026_00101": "Anual ISO (INV-2026-00101)",
    "epure_2026_0001": "Minimalista (2026-0001)",
    "structure_numerotation": "2. Estructura de numeración",
    "oui": "Sí",
    "non": "No",
    "nombre_numeros_generer": "Cantidad de números a generar: {{value}}",
    "apercu_serie": "Vista previa de la serie ({{value}} números)",
    "copie": "¡Copiado!",
    "tout_copier": "Copiar todo",
    "rappel_legal_facturation": "Recordatorio legal de facturación (art. 242 nonies A del CGI francés):",
    "numerotation_sequence_continue": "La numeración debe basarse en una <0>secuencia cronológica continua y sin saltos</0>. Puede crear series distintas (p. ej., por tienda o año), pero está estrictamente prohibido eliminar o intercalar números a posteriori."
  },
  "linkedin-ssi-reach-simulator": {
    "score_ssi_global": "Puntuación SSI Global",
    "les_4_piliers_du_social": "Los 4 Pilares del Social Selling Index (SSI)",
    "format_du_post_regles_algorithmiques": "Formato de publicación y reglas algorítmicas",
    "carrousel_document_pdf_top_dwell": "Carrusel / Documento PDF (Mayor tiempo de lectura)",
    "texte_seul_aere_storytelling": "Texto solo / Narrativa y Storytelling",
    "texte_image_unique": "Texto + Imagen única",
    "sondage_interactif": "Encuesta interactiva",
    "video_native_linkedin": "Vídeo nativo de LinkedIn",
    "lien_externe_dans_le_corps": "Enlace externo en el cuerpo (-40% a -60% de alcance)",
    "portee_organique_estimee": "Alcance orgánico estimado (Impresiones)",
    "placez_toujours_vos_liens_externes": "Coloque siempre los enlaces externos en el",
    "premier_commentaire": "primer comentario",
    "ou_sur_votre_profil_pour": "o en su perfil para no penalizar la distribución algorítmica.",
    "le_format": "El formato",
    "carrousel_pdf_8_a_12": "Carrusel PDF (8 a 12 diapositivas)",
    "genere_2x_a_3x_plus": "genera entre 2x y 3x más alcance gracias al dwell time.",
    "un_score_ssi_gt_70": "Una puntuación SSI > 70 se correlaciona con",
    "45_d_opportunites_commerciales_en": "+45% más de oportunidades comerciales cualificadas.",
    "rank_top_10": "Top 10 % de su sector",
    "rank_bottom_50": "Por debajo de la media (Bottom 50 %)",
    "rank_top_25": "Buen perfil (Top 25 % de su sector)",
    "algorithm_badge": "Algoritmo de LinkedIn y Dwell Time",
    "page_title": "Simulador de LinkedIn SSI y alcance orgánico de las publicaciones",
    "page_description": "Diagnostique su Social Selling Index (sobre 100) y simule el impacto del formato (carrusel PDF frente a enlaces externos) en sus impresiones orgánicas.",
    "pillar_1": "1. Establecer su marca profesional (perfil completo, artículos, recomendaciones)",
    "pillar_2": "2. Encontrar a las personas adecuadas (búsqueda de prospectos, decisores)",
    "pillar_3": "3. Intercambiar información e insights (compartir, likes selectivos, valor)",
    "pillar_4": "4. Construir relaciones sólidas (conexiones fiables, mensajes directos constructivos)",
    "post_format_label": "Formato de la publicación",
    "network_size_label": "Tamaño de su red (contactos)",
    "external_link_in_body": "Enlace externo colocado directamente en el texto de la publicación (penalización inmediata del algoritmo)",
    "reply_first_hour": "Respuesta activa a todos los comentarios en los primeros 60 minutos (+25 % de velocidad)",
    "long_comments": "Comentarios cualificados de más de 5 palabras recibidos (+35 % de señal de valor)",
    "estimated_impressions": "Impresiones estimadas de la publicación",
    "views_approx": "~{{value}} visualizaciones",
    "algorithmic_multiplier": "Multiplicador de impacto algorítmico: <0>x{{value}}</0>",
    "golden_rules": "Reglas de oro de LinkedIn 2026:",
    "rule_external_links": "Coloque siempre los enlaces externos en el <0>primer comentario</0> o en su perfil para no penalizar la distribución algorítmica.",
    "rule_carousel": "El formato <0>Carrusel PDF (8 a 12 diapositivas)</0> genera entre 2x y 3x más alcance gracias al dwell time.",
    "rule_ssi_score": "Una puntuación SSI > 70 se correlaciona con <0>+45% más de oportunidades comerciales cualificadas.</0>"
  },
  "meeting-agenda-minutes-timer": {
    "nouveau_sujet": "Nuevo tema",
    "planificateur_d_ordre_du_jour": "Planificador de Orden del Día y Cronómetro de Reuniones",
    "cadrez_vos_reunions_au_bureau": "Estructure sus reuniones con límites de tiempo estrictos y generación automática de actas.",
    "intervenant_2": "Ponente / Responsable",
    "pause": "Pausar",
    "lancer": "Iniciar",
    "reinitialiser_le_sujet": "Reiniciar cronómetro",
    "ordre_du_jour_detaille": "Orden del día detallado y temporizador",
    "intervenant": "Ponente:",
    "notes_prises_pendant_ce_sujet": "Notas tomadas durante este tema...",
    "plan_d_action_qui_fait": "Plan de acción (Quién hace Qué y Cuándo)",
    "tache": "Tarea / Acuerdo",
    "assigne": "Responsable",
    "notes_globales_decisions": "Acta global y decisiones aprobadas",
    "decisions_cles_budget_valide_date": "Decisiones clave, presupuesto aprobado, fecha de la próxima reunión...",
    "compte_rendu_pret": "Acta de reunión lista para exportar",
    "toast_time_up": "⏰ ¡Tiempo agotado para este tema!",
    "meeting_title": "Título de la reunión",
    "default_topic_1": "Ronda de presentaciones y validación de las prioridades del T3",
    "default_topic_2": "Revisión de las métricas de conversión y del pipeline",
    "default_topic_3": "Presentación de la nueva hoja de ruta del producto",
    "default_topic_4": "Ruegos y preguntas y asignación de acciones",
    "default_speaker_all": "Todos",
    "default_task_1": "Finalizar el pliego de condiciones de UX",
    "default_task_2": "Enviar el presupuesto revisado al cliente",
    "default_due_friday": "Viernes",
    "default_due_monday": "Lunes 14:00",
    "new_speaker": "Moderador",
    "new_task": "Nueva acción por realizar",
    "new_assignee": "Responsable",
    "new_due_date": "Fecha límite",
    "default_meeting_title": "Comité de dirección semanal (COPIL)",
    "default_meeting_goal": "Alinear las prioridades del equipo y validar los presupuestos",
    "default_general_notes": "Los objetivos del mes anterior se alcanzaron al 112 %.",
    "report_heading": "Acta de reunión: {{value}}",
    "report_date_line": "**Fecha:** {{date}} | **Duración total prevista:** {{minutes}} min",
    "report_goal": "**Objetivo:** {{value}}",
    "report_attendees": "**Participantes:** {{value}}",
    "report_agenda_heading": "## 📋 Orden del día y debates",
    "report_item": "{{n}}. {{title}} ({{minutes}} min - {{speaker}})",
    "report_no_notes": "*Sin notas particulares.*",
    "report_notes_heading": "## 📝 Notas generales y decisiones clave",
    "report_no_extra_notes": "*Sin notas adicionales.*",
    "report_action_heading": "## ✅ Plan de acción y próximos pasos",
    "report_table_header": "| Estado | Tarea / Acción | Responsable | Vencimiento |",
    "report_done": "✅ Hecho",
    "report_in_progress": "⏳ En curso",
    "report_footer": "*Generado automáticamente con Kristools Meeting Minutes Generator.*",
    "label_main_goal": "Objetivo principal",
    "label_participants": "Participantes",
    "current_topic": "Tema en curso ({{current}}/{{total}})",
    "allocated": "Asignado: {{value}} min",
    "next_topic": "Siguiente tema →",
    "total_minutes": "Total: {{value}} minutos",
    "add_topic": "Añadir un tema",
    "unit_min": "min",
    "action_button": "Acción",
    "toast_markdown_copied": "¡Acta en Markdown copiada!"
  },
  "meta-ads-roas-cpa-simulator": {
    "marge_brute_par_unite_vendue": "Margen bruto por unidad vendida (€)",
    "cout_par_clic_cpc_estime": "Coste por Clic (CPC) estimado (€)",
    "impressions_pub": "Impresiones publicitarias estimadas",
    "clics_vers_la_boutique": "Clics a la tienda online",
    "commandes_estimees": "Pedidos / Conversiones estimadas",
    "chiffre_d_affaires_brut": "Ingresos brutos generados",
    "roas_point_mort_break_even": "ROAS de punto de equilibrio (break-even)",
    "en_dessous_de_ce_roas_vous": "Por debajo de este ROAS, pierde dinero.",
    "roas_projete_actuel": "ROAS proyectado actual",
    "campagne_rentable": "🟢 Campaña rentable",
    "campagne_deficitaire": "🔴 Campaña deficitaria",
    "cpa_cible_cout_par_vente": "CPA objetivo / coste por venta",
    "max_tolere": "Máx. tolerado: {{value}}",
    "benefice_net_apres_pub_couts": "Beneficio neto tras publicidad y costes",
    "marge_nette": "Margen neto: {{value}} %",
    "1_economie_unitaire_du_produit_service": "1. Economía unitaria del producto / servicio",
    "prix_de_vente_moyen_ttc": "Precio de venta medio con IVA / valor medio del pedido (AOV en €)",
    "cout_de_revient_unitaire_cogs": "Coste unitario de producción (COGS €)",
    "frais_livraison_stripe": "Gastos de envío y Stripe (€)",
    "2_parametres_performance_meta_ads": "2. Parámetros y rendimiento de Meta Ads",
    "budget_publicitaire_mensuel": "Presupuesto publicitario mensual (€)",
    "cpm_moyen": "CPM medio (€)",
    "ctr_lien": "CTR del enlace (%)",
    "taux_conv": "Tasa de conv. (%)",
    "eur_par_clic": "{{value}} € / clic",
    "simulation_complete_de_l_entonnoir_meta": "Simulación completa del embudo de Meta Ads (Facebook e Instagram)",
    "ventes": "{{value}} ventas"
  },
  "nps-csat-customer-satisfaction-calculator": {
    "customer_success_marketing": "Éxito del Cliente y Marketing",
    "5_top": "5 (Excelente)",
    "3_neutre": "3 (Neutro)",
    "1_mauvais": "1 (Malo)",
    "score_nps": "Puntuación NPS (Net Promoter Score)",
    "score_csat": "Puntuación CSAT (Satisfacción del Cliente)",
    "nps_gt_50": "NPS > +50:",
    "excellent_classe_mondiale": "Excelente, nivel de clase mundial (World Class)",
    "nps_20_a_50": "NPS +20 a +50:",
    "tres_bon_niveau_b2b": "Muy buen nivel de fidelización B2B / SaaS",
    "nps_lt_0": "NPS < 0:",
    "alerte_churn_insatisfaction": "Alerta prioritaria por riesgo de cancelación (churn)",
    "title": "Calculadora de puntuaciones NPS y CSAT (satisfacción del cliente)",
    "subtitle": "Mida el Net Promoter Score y la tasa de satisfacción CSAT, y compare sus resultados con los benchmarks SaaS / B2B.",
    "nps_answers_heading": "1. Respuestas NPS (Net Promoter Score)",
    "promoters_label": "Promotores (notas 9 y 10)",
    "passives_label": "Pasivos / Neutros (notas 7 y 8)",
    "detractors_label": "Detractores (notas 0 a 6)",
    "csat_answers_heading": "2. Respuestas CSAT (escala de 1 a 5 estrellas)",
    "benchmarks_heading": "Escala de evaluación y benchmarks",
    "on_respondents_promoters": "Sobre {{total}} encuestados ({{percent}}% promotores)",
    "average_rating": "Media: {{value}} / 5"
  },
  "ocr-document-scan-storage-estimator": {
    "ged_ocr_numerisation": "Gestión Documental, OCR y Digitalización",
    "nombre_de_pages_a_numeriser": "Número total de páginas a digitalizar",
    "mode_couleur": "Modo de color",
    "resolution_dpi_fidelite_ocr": "Resolución DPI y precisión OCR",
    "poids_total_ged_estime": "Espacio de almacenamiento documental estimado",
    "temps_traitement_ocr": "Tiempo de procesamiento OCR por lotes",
    "300_dpi_noir_blanc_ou": "Se recomienda 300 DPI en escala de grises o monocromo",
    "title": "Estimador de almacenamiento de digitalización GED y resolución OCR (DPI / PDF/A)",
    "desc": "Calcule el volumen de almacenamiento (GB/TB), el tiempo de procesamiento OCR y el coste en la nube de sus archivos en papel.",
    "volume_and_scan_params": "1. Volumen y parámetros de escaneo",
    "pages_count": "{{value}} páginas",
    "pages_short": "{{value}}p",
    "mode_bw": "Blanco y negro (texto)",
    "mode_grayscale": "Escala de grises",
    "mode_color": "Color de 24 bits",
    "dpi_150": "150 DPI (vista previa)",
    "dpi_300": "300 DPI (estándar)",
    "dpi_600": "600 DPI (archivo profesional)",
    "size_gb": "{{value}} GB",
    "size_mb": "{{value}} MB",
    "kb_per_page": "Unos ~{{value}} KB / página (con capa de texto OCR)",
    "approx_minutes": "~{{value}} min",
    "cloud_cost": "Coste de almacenamiento en la nube: ~{{value}} $/mes",
    "recommendation_title": "Recomendación estándar de digitalización fiscal y legal",
    "recommendation_text": "Para cumplir con el archivo con valor probatorio (norma NF Z42-013 / eIDAS), el estándar recomendado para facturas y contratos en papel es <0>300 DPI en blanco y negro o escala de grises</0> con compresión sin pérdida. Esto garantiza una precisión OCR del 99,8 % con un peso mínimo."
  },
  "office-data-table-transformer": {
    "convertisseur_formateur_de_tableaux_excel": "Conversor y Formateador de Tablas Excel / CSV / Markdown",
    "collez_vos_cellules_excel_ou": "Pegue sus celdas de Excel o CSV y conviértalas de inmediato en Markdown, JSON, HTML o consultas SQL INSERT.",
    "1_donnees_brutes_coller_depuis": "1. Datos de Origen (Pegar desde Excel / CSV)",
    "collez_ici_des_cellules_copiees": "Pegue aquí celdas copiadas directamente de Excel, Google Sheets o un archivo CSV...",
    "filtrer_les_lignes": "Filtrar filas en tiempo real...",
    "2_format_de_sortie": "2. Formato de Destino y Opciones",
    "nom_de_table_sql": "Nombre de la tabla SQL",
    "header_first_row": "1ª fila = Encabezado",
    "download_button": "Descargar",
    "toast_transposed": "¡Tabla transpuesta (filas ↔ columnas)!",
    "toast_file_downloaded": "¡Archivo descargado!",
    "sample_data": "Nombre\tPuesto\tDepartamento\tSalario (€)\tCiudad\nAlexandre Dubois\tDirector técnico\tEngineering\t72000\tParís\nSarah Martin\tProduct Manager\tProducto\t58000\tLyon\nThomas Leroy\tLead Frontend\tEngineering\t54000\tNantes\nCamille Bernard\tUX/UI Designer\tDiseño\t46000\tBurdeos\nLucas Moreau\tDevOps Engineer\tInfraestructura\t61000\tParís",
    "effacer": "Borrar",
    "exemple": "Ejemplo",
    "transposer_lignes_colonnes": "Transponer filas ↔ columnas",
    "supprimer_doublons": "Eliminar duplicados",
    "x_lignes_y_colonnes": "{{rows}} filas ({{cols}} columnas)"
  },
  "office-print-cost-paper-calculator": {
    "calculateur_de_cout_d_impression": "Calculadora de Coste de Impresión y Gramaje de Papel",
    "estimez_le_cout_reel_a": "Calcule el coste total por página (tóner, papel) y presupueste sus costes de reprografía.",
    "bilan_budgetaire_annuel": "Presupuesto Anual Estimado de Impresión",
    "an": "€ / año",
    "cout_page_noir_blanc": "Coste por página en Blanco y Negro",
    "cout_page_couleur": "Coste por página en Color",
    "dimensions_cm": "Dimensiones (cm)",
    "dimensions_pouces": "Dimensiones (pulgadas)",
    "label_total_pages": "Páginas impresas totales al mes",
    "label_black_toner": "Capacidad tóner negro (páginas ISO 5%)",
    "label_color_toner": "Capacidad tóner color (páginas ISO 5%)",
    "volume_taux_de_couverture": "Volumen y tasa de cobertura",
    "part_couleur": "Proporción de color (% del total)",
    "taux_recto_verso": "Tasa de doble cara (% dúplex)",
    "taux_encrage": "Tasa real de cobertura de tinta por página:",
    "cov_iso5": "5% estándar",
    "cov_iso5_desc": "Texto simple",
    "cov_office15": "15% real",
    "cov_office15_desc": "Ofimática + logotipo",
    "cov_slides40": "40% medio",
    "cov_slides40_desc": "Presentaciones",
    "cov_photo80": "80% denso",
    "cov_photo80_desc": "Carteles / fotos",
    "tarifs_consommables_papier": "Precios de consumibles y papel",
    "prix_toner_noir": "Precio del tóner negro (€)",
    "prix_pack_toners_couleur": "Precio del pack de tóneres de color CMA (€)",
    "prix_ramette": "Precio de la resma de 500 hojas (€)",
    "grammage_papier": "Gramaje del papel (g/m²)",
    "avg_per_page": "~{{value}} € / página",
    "soit_x_par_mois": "es decir, <0>{{monthly}} € / mes</0> para {{pages}} páginas/año",
    "economie_papier_duplex": "🌱 Ahorro de papel con 100% doble cara:",
    "savings_per_year": "+{{value}} € / año",
    "guide_formats_din": "Guía de formatos de papel DIN (A0 - A8) y resolución",
    "poids_feuille": "Peso de la hoja ({{value}}g)",
    "dimensions_pixels": "Dimensiones en píxeles ({{value}} DPI impresión):",
    "posters_geants_plans_d_architecte": "Pósteres gigantes, planos de arquitectura",
    "affiches_evenementielles_cartographie": "Carteles de eventos, cartografía",
    "calendriers_muraux_diagrammes": "Calendarios de pared, diagramas",
    "grands_tableaux_excel_brochures_doubles": "Hojas de Excel grandes, folletos de doble página",
    "standard_bureau_contrats_factures_lettres": "Estándar de oficina, contratos, facturas, cartas",
    "carnets_flyers_livrets_d_accueil": "Cuadernos, folletos, guías de bienvenida",
    "cartes_postales_ordonnances": "Postales, recetas médicas",
    "mini_stickers_badges": "Minipegatinas, insignias",
    "cartes_de_visite_mini_etiquettes": "Minitarjetas de visita, etiquetas"
  },
  "office-list-cleaner-deduplicator": {
    "nettoyeur_dedoublonneur_extracteur_de_listes": "Limpiador, Desduplicador y Extractor de Listas (Texto, Emails, URLs)",
    "supprimez_les_doublons_extrayez_les": "Elimine duplicados, extraiga emails o teléfonos, ordene y dé formato a listas extensas al instante.",
    "1_donnees_d_entree": "1. Datos de Entrada (Pegar texto o lista)",
    "collez_ici_votre_liste_d": "Pegue aquí su lista de elementos (uno por línea o separados por comas)...",
    "tri": "Ordenación",
    "aucun_ordre_initial": "Ninguno (Orden original)",
    "a_z_alphabetique": "A-Z (Alfabético)",
    "z_a_inverse": "Z-A (Inverso)",
    "longueur_de_ligne": "Longitud de línea",
    "casse": "Mayúsculas / Minúsculas",
    "ne_pas_modifier": "No modificar",
    "minuscules": "minúsculas",
    "majuscules": "MAYÚSCULAS",
    "1ere_lettre_majuscule": "Primera Letra en Mayúscula",
    "prefixe": "Prefijo de línea",
    "ex_2": "ej.: - o https://",
    "suffixe": "Sufijo de línea",
    "ex": "ej.: , o ;",
    "lignes_initiales": "Líneas iniciales",
    "doublons_purges": "Duplicados eliminados",
    "elements_uniques": "Elementos únicos",
    "decouper_en_lots_de": "Dividir en lotes de",
    "ex_50": "ej.: 50",
    "items": "elementos",
    "download_button": "Descargar",
    "list_copied": "¡Lista copiada!",
    "batches_generated": "{{count}} lotes generados",
    "toast_no_email": "No se encontraron direcciones de email.",
    "toast_no_url": "No se encontraron URLs en el texto.",
    "toast_downloaded": "¡Archivo de lista descargado!",
    "toast_emails_extracted": "¡{{value}} direcciones de correo extraídas!",
    "toast_urls_extracted": "¡{{value}} URL extraídas!",
    "download_filename": "lista_limpia.txt",
    "effacer": "Borrar",
    "exemple": "Ejemplo",
    "extraire_tous_les_emails": "Extraer todos los correos",
    "extraire_les_urls": "Extraer las URL",
    "options_de_nettoyage_tri": "Opciones de limpieza y ordenación",
    "supprimer_espaces_superflus": "Eliminar espacios sobrantes",
    "ignorer_les_lignes_vides": "Ignorar líneas vacías",
    "1_par_ligne": "1 por línea",
    "virgule": "Coma ,",
    "point_virgule": "Punto y coma ;"
  },
  "out-of-office-email-generator": {
    "outlook_gmail_teams_compatible": "Compatible con Outlook, Gmail y Teams",
    "langue_du_message": "Idioma del mensaje",
    "style_tonalite": "Tono / Estilo",
    "debut_d_absence": "Inicio de la ausencia",
    "date_de_retour": "Fecha de reincorporación",
    "contact_de_secours_nom": "Contacto de respaldo (Nombre / Equipo)",
    "email_du_contact_de_secours": "Email de contacto de respaldo",
    "objet_de_l_e_mail": "Asunto del correo",
    "copier_objet": "Copiar asunto",
    "corps_du_message_repondeur_automatique": "Cuerpo del mensaje (Respuesta automática)",
    "generateur_email_absence": "Generador de correo de ausencia de la oficina (Out of Office / OOO)",
    "redigez_un_repondeur": "Redacte una respuesta automática profesional, cercana o desenfadada en francés, inglés, español y alemán.",
    "tonalite_langue": "1. Tono e idioma",
    "tone_formal": "👔 Corporativo / Formal",
    "tone_startup": "🚀 Start-up y cercano",
    "tone_humorous": "🌴 Cercano / Divertido",
    "tone_sales_lead": "📈 Comercial / Negocios",
    "tone_emergency_only": "⚡ Breve y estricto",
    "dates_contact_secours": "2. Fechas y contacto de respaldo",
    "copier_le_message": "Copiar el mensaje"
  },
  "payment-gateway-fee-calculator": {
    "calculateur_frais_stripe_paypal_seuil": "Calculadora de Comisiones de Pasarelas de Pago (Stripe vs PayPal vs Square)",
    "passerelle_de_paiement_us": "Pasarela de pago (Tarifas estándar)",
    "ventes_brutes_annuelles": "Volumen bruto mensual ($ / €)",
    "nombre_de_transactions": "Número de transacciones mensuales",
    "facture_au_client": "Facturado al cliente (Importe bruto):",
    "montant_transaction_brut": "Ticket medio por transacción:",
    "net_dans_votre_compte": "Neto ingresado en cuenta bancaria:",
    "apres_deduction_des_frais": "Tras deducir las comisiones de procesamiento",
    "taux_effectif_de_commission": "Comisión efectiva global consolidada:",
    "calculez_la_commission_exacte_de": "Calcule la comisión exacta de pago (tarifa estándar + fija) o el importe a cobrar al cliente, y comprueba sus umbrales fiscales del IRS 1099-K.",
    "passerelle_sens_du_calcul": "Pasarela y sentido del cálculo",
    "je_facture_net_percu": "Cobro ➔ neto recibido",
    "je_veux_x_net_facturer": "Quiero $X netos ➔ Cobrar",
    "montant_facture_au_client": "Importe cobrado al cliente ($)",
    "montant_net_souhaite": "Importe neto deseado en su banco ($)",
    "seuil_fiscal_irs_formulaire_1099": "Umbral fiscal del IRS Formulario 1099-K",
    "statut_declaration_irs_1099_k": "Estado de la declaración IRS 1099-K",
    "votre_volume_annuel_depasse_le": "Su volumen anual (${{value}}) supera el umbral federal ($5,000). La pasarela enviará automáticamente un formulario 1099-K al IRS.",
    "en_dessous_du_seuil_federal": "Por debajo del umbral federal ($5,000). Tenga cuidado, sin embargo, si reside en un estado con un umbral estricto de $600 (MA, VT, VA, MD).",
    "frais_totaux_gateway": "Comisiones totales de {{name}}:",
    "percent_du_montant": "{{value}}% del importe",
    "comparatif_meme_transaction": "Comparativa para esta misma transacción (${{value}})",
    "net_value": "${{value}} neto",
    "frais_value": "(Comisión: ${{value}})",
    "ventes_brutes_annee": "Ventas brutas anuales ($)",
    "nombre_transactions_annee": "Número de transacciones al año",
    "depasse_seuil_tpso": "Su volumen anual ({{value}} $, {{transactions}} transacciones) supera el umbral federal de las plataformas de pago (más de 20.000 $ y más de 200 transacciones): la plataforma enviará un formulario 1099-K al IRS.",
    "sous_seuil_tpso": "Por debajo del umbral federal de las plataformas de pago (más de 20.000 $ y más de 200 transacciones al año). Los pagos con tarjeta se declaran, no obstante, sin mínimo, y algunos estados aplican un umbral más bajo."
  },
  "pdf-page-size-dpi-weight-calculator": {
    "pre_presse_pao_professionnelle": "Preimpresión y Maquetación Profesional",
    "format_predefini": "Formato predefinido (Papelería e Imprenta)",
    "largeur_mm": "Anchura (mm)",
    "hauteur_mm": "Altura (mm)",
    "resolution_dpi_points_par_pouce": "Resolución DPI (Puntos por pulgada)",
    "espace_colorimetrique": "Espacio de color",
    "cmjn_cmyk_impression_32_bit": "CMYK (Impresión 32 bits)",
    "rvb_rgb_ecran_24_bit": "RGB (Pantalla 24 bits)",
    "niveaux_de_gris_8_bit": "Escala de grises (8 bits)",
    "noir_blanc_trait_1_bit": "Monocromo de mapa de bits (1 bit)",
    "nombre_de_pages": "Número de páginas",
    "dimensions_pixels_exactes": "Dimensiones exactas en píxeles:",
    "px": "px",
    "mo": "MB",
    "parametre": "Parámetro técnico",
    "valeur_pour_votre_fichier": "Valor de su archivo",
    "norme_standard": "Estándar de artes gráficas",
    "resolution_d_export": "Resolución de exportación",
    "300_dpi_offset_numerique": "300 DPI (Offset y digital)",
    "format_rogne_fini_trim": "Formato final cortado (Trim Box)",
    "format_final_apres_decoupe": "Dimensiones finales tras corte de guillotina",
    "format_total_avec_fond_perdu": "Formato total con sangre (Bleed Box)",
    "2_mm_a_5_mm": "Sangrado de 2 mm a 5 mm obligatorio",
    "espace_couleur_requis": "Espacio de color requerido",
    "cmjn_obligatoire_pour_le_papier": "CMYK obligatorio para imprenta",
    "preset_a4": "A4 (Estándar de oficina)",
    "preset_a3": "A3 (Póster / Plano grande)",
    "preset_a5": "A5 (Folleto / Libreta)",
    "preset_a6": "A6 (Postal / Flyer)",
    "preset_us_letter": "US Letter (Estándar de EE. UU.)",
    "preset_us_legal": "US Legal (Contratos de EE. UU.)",
    "preset_tabloid": "Tabloid / Ledger",
    "preset_business_card": "Tarjeta de visita (85x55)",
    "title": "Calculadora de dimensiones PDF, DPI y peso de archivo",
    "desc": "Convierta sus formatos de papel en píxeles exactos (300 DPI) y calcule el peso estimado y el sangrado de impresión.",
    "section_format": "1. Formato de papel y resolución",
    "dpi_72": "72 DPI (Web)",
    "dpi_150": "150 DPI (Oficina)",
    "dpi_300": "300 DPI (Impresión HD)",
    "dpi_600": "600 DPI (Arte)",
    "bords_perdus": "Añadir sangrado de imprenta (+{{value}} mm por cada lado)",
    "a_dpi_dimensions": "A {{dpi}} DPI ({{width}} × {{height}} mm)",
    "poids_estime_pdf": "Peso estimado del PDF ({{pages}} p.)",
    "transmissible_email": "Se puede enviar por correo electrónico (< 25 MB)",
    "depasse_25_mo": "Supera los 25 MB (usar WeTransfer / Cloud)",
    "specs_pao": "Especificaciones de maquetación y exportación para imprenta"
  },
  "pinterest-traffic-affiliate-estimator": {
    "moyenne_1_a_3": "Media: 1% a 3% de tasa de clics salientes (CTR)",
    "visites_sortantes": "Visitas salientes a su sitio",
    "x_par_mois": "{{value}} / mes",
    "trafic_organique_qualifie": "Tráfico orgánico cualificado",
    "revenus_mensuels_estimes": "Ingresos mensuales estimados",
    "x_genere_par_clic": "{{amount}} generados por clic saliente",
    "valeur_annuelle_recurrente": "Valor anual recurrente",
    "x_par_an": "{{value}} / año",
    "actif_seo_perenne": "Activo SEO duradero y pasivo",
    "ventes_affiliation_produits": "Ventas de afiliación / productos",
    "x_ventes": "{{value}} ventas",
    "par_mois_en_automatique": "Al mes, en automático",
    "portee_clics_sortants": "1. Alcance y clics salientes de Pinterest",
    "impressions_vues_mensuelles": "Impresiones / vistas mensuales de Pinterest",
    "taux_de_clic_sortant": "Tasa de clics salientes (CTR %)",
    "modele_de_monetisation": "Modelo de monetización",
    "opt_mixed": "Mixto (afiliación + red publicitaria + 50 % productos digitales)",
    "opt_affiliate": "100 % afiliación (Amazon, etc.)",
    "opt_ads": "100 % publicidad display (Mediavine / AdSense)",
    "opt_digital": "Productos digitales (e-books / plantillas)",
    "monetisation_site_blog": "2. Monetización en su sitio / blog",
    "taux_conv_affiliation": "Tasa de conv. de afiliación (%)",
    "commission_moyenne": "Comisión media (€)",
    "rpm_pub": "RPM publicitario / 1000 sesiones (€)",
    "prix_produit_digital": "Precio del producto digital (€)",
    "avantage_evergreen": "La ventaja evergreen de Pinterest: la vida útil de un pin es de 4 meses a 2 años",
    "contrairement_a_instagram": "A diferencia de Instagram (24-48 h de vida útil) o TikTok (3-7 días), un pin de Pinterest indexado por el buscador sigue generando clics salientes y comisiones de afiliación durante varios años sin ningún gasto publicitario."
  },
  "project-profitability-burn-rate-calculator": {
    "calculateur_de_rentabilite_de_projet": "Calculadora de Rentabilidad de Proyectos y Tasa de Consumo (Burn Rate)",
    "suivez_les_heures_reelles_vs": "Controle horas reales frente a previstas, costes internos de personal y márgenes brutos por proyecto.",
    "equipe_heures_engagees": "Equipo y dedicación horaria",
    "cout_interne_h": "Coste interno por hora (€/h)",
    "taux_vendu_client_h": "Tarifa facturada al cliente (€/h)",
    "heures_prevues": "Horas presupuestadas",
    "heures_passees": "Horas invertidas",
    "marge_brute_projet": "Margen bruto del proyecto",
    "consommation_du_budget_heures": "Consumo del presupuesto de horas",
    "cout_interne_consomme": "Coste interno acumulado",
    "frais_externes_saas": "Gastos externos (SaaS, subcontratación) (€)",
    "taux_moyen_facture_tjm": "Tarifa efectiva media por hora / día",
    "role_qa": "Ingeniero de QA y pruebas",
    "total_spent_vs_budget": "Total: {{spent}}h dedicadas de {{budgeted}}h previstas",
    "time_and_materials": "Por horas / materiales (T&M)",
    "direct_expenses_label": "Gastos directos y subcontratación (€)",
    "role_project_manager": "Jefe de proyecto / Scrum Master",
    "role_lead_architect": "Arquitecto principal y Fullstack",
    "role_ui_ux_designer": "Diseñador UI/UX sénior",
    "role_qa_engineer": "Ingeniero de QA",
    "new_profile": "Nuevo perfil",
    "add_profile": "Añadir un perfil",
    "blended_rate_line": "{{daily}} € / día ({{hourly}} €/h)",
    "contract_and_billing": "Contrato y facturación",
    "fixed_price_label": "Precio cerrado (fijo)",
    "fixed_budget_label": "Presupuesto total vendido a precio cerrado (€ sin IVA)"
  },
  "project-working-days-gantt-calculator": {
    "gestion_de_projet_gantt": "Gestión de Proyectos y Diagrama de Gantt",
    "date_de_demarrage_du_projet": "Fecha de inicio del proyecto",
    "charge_estimee_jours_homme": "Estimación de esfuerzo (Días-hombre / j.h)",
    "taille_equipe_etp": "Capacidad del equipo (ETC / ETP)",
    "0_5_mi_temps": "0.5 (Media jornada)",
    "1_0_1_personne": "1.0 (1 persona a tiempo completo)",
    "2_0_2_personnes": "2.0 (2 personas)",
    "3_0_3_personnes": "3.0 (3 personas)",
    "marge_tampon_buffer": "Margen de contingencia (Buffer)",
    "0_strict": "0% (Estricto)",
    "10_recommande": "10% (Recommandado)",
    "20_securite": "20% (Seguridad)",
    "date_de_livraison_estimee": "Fecha estimada de entrega",
    "jours_ouvres_travailles": "Días hábiles laborables necesarios",
    "week_ends_jours_feries_exclus": "Excluyendo fines de semana y festivos oficiales",
    "aucun_jour_ferie_en_semaine": "Sin días festivos laborables en este período",
    "holiday_new_year": "Año Nuevo",
    "holiday_easter_monday": "Lunes de Pascua",
    "holiday_labour_day": "Fiesta del Trabajo",
    "holiday_victory_1945": "Victoria de 1945",
    "holiday_ascension": "Ascensión",
    "holiday_whit_monday": "Lunes de Pentecostés",
    "holiday_national_day": "Fiesta nacional",
    "holiday_assumption": "Asunción",
    "holiday_all_saints": "Todos los Santos",
    "holiday_armistice_1918": "Armisticio de 1918",
    "holiday_christmas": "Navidad",
    "page_title": "Calculadora de días laborables, festivos y fecha de entrega del proyecto",
    "page_description": "Planifique sus hitos y sprints excluyendo automáticamente los fines de semana y los festivos del país elegido.",
    "sprint_parameters": "1. Parámetros del sprint",
    "total_calendar_days": "{{value}} días naturales en total",
    "working_days_short": "{{value}} días laborables",
    "holidays_crossed": "Festivos atravesados ({{value}})"
  },
  "resignation-notice-letter-calculator": {
    "code_du_travail_syntec_metallurgie": "Legislación laboral y convenios colectivos",
    "statut_contrat": "Categoría profesional / Contrato",
    "courrier_recommande_lrar": "Burofax / Correo certificado con acuse de recibo",
    "remise_en_main_propre_decharge": "Entrega en mano con copia sellada",
    "duree_preavis_mois": "Duración del preaviso (meses)",
    "jours_additionnels": "Días adicionales de preaviso",
    "date_de_depart_souhaitee_facultatif": "Fecha de salida solicitada (opcional)",
    "votre_nom_prenom": "Nombre y apellidos completos",
    "poste_occupe": "Puesto de trabajo desempeñado",
    "nom_de_l_entreprise": "Razón social de la empresa",
    "dernier_jour_travaille": "Último día oficial de trabajo",
    "fin_de_contrat_au_soir": "Fin formal del contrato al término de la jornada laboral",
    "compte_a_rebours": "Cuenta regresiva del preaviso",
    "temps_avant_liberation_de_contrat": "Días naturales restantes antes de la finalización contractual",
    "imprimer_pdf": "Imprimir / Descargar carta en PDF",
    "2_heures_payees_par_jour": "Horas retribuidas para búsqueda activa de empleo según convenio",
    "calculateur_de_preavis_generateur_de_lettre": "Calculadora de preaviso y generador de carta de dimisión",
    "calculez_votre_date_officielle_de_sortie": "Calcule su fecha oficial de salida y la cuenta atrás, y edite una carta conforme al derecho laboral francés.",
    "1_parametres_du_contrat": "1. Parámetros del contrato",
    "cdi_cadre_3_mois": "CDI directivo (3 meses)",
    "non_cadre_1_2_mois": "No directivo (1-2 meses)",
    "periode_d_essai": "Periodo de prueba",
    "date_de_notification_ar_recu_ou": "Fecha de notificación (acuse de recibo o entrega en mano)",
    "mode_d_envoi": "Modo de envío",
    "demander_une_dispense_de_preavis_a": "Solicitar al empleador una dispensa del preaviso",
    "2_informations_pour_la_lettre": "2. Datos para la carta",
    "x_jours_restants": "{{value}} días restantes",
    "modele_de_lettre_pret_a_imprimer": "Modelo de carta listo para imprimir",
    "copier_texte": "Copiar texto",
    "bon_a_savoir_heures_de_recherche_d": "Conviene saber (horas de búsqueda de empleo):",
    "de_nombreuses_conventions_collectives_accordent": "Numerosos convenios colectivos (Syntec, Metalurgia, banca...) conceden <0>2 horas pagadas al día</0> durante el preaviso de dimisión para acudir a entrevistas de trabajo."
  },
  "saas-mrr-churn-nrr-simulator": {
    "arr_actuel_projete": "ARR Actual / Proyectado",
    "quick_ratio_saas": "SaaS Quick Ratio",
    "ratio_ltv_cac": "Ratio LTV / CAC",
    "panier_moyen_par_client_arpu": "Ingreso medio por cliente (ARPU €/mes)",
    "taux_d_attrition_mensuel_logo": "Tasa mensual de cancelación (Logo Churn %)",
    "b2b_enterprise_lt_1": "B2B Enterprise (<1%)",
    "b2b_mid_market_2_4": "B2B Mid-market (2-4%)",
    "b2c_gt_5": "B2C (>5%)",
    "taux_d_expansion_mensuel_upsell": "Tasa mensual de expansión (Upsell %)",
    "nouveau_mrr_nouveaux_clients": "Nuevo MRR (Nuevas altas)",
    "expansion_mrr_clients_existants": "MRR de expansión (Clientes actuales)",
    "mrr_perdu_churn": "MRR perdido (Bajas / Cancelaciones)",
    "net_new_mrr_mensuel": "Net New MRR mensual",
    "mois": "Mes",
    "clients_actifs": "Clientes activos",
    "mrr_mensuel": "MRR mensual",
    "arr_projete": "ARR proyectado",
    "progression": "Evolución",
    "quick_ratio_hyper": "🟢 Hipercrecimiento (> 4.0)",
    "quick_ratio_mod": "🟡 Crecimiento moderado",
    "quick_ratio_churn": "🔴 Churn demasiado alto (< 2.0)",
    "new_clients_signed": "Nuevos clientes firmados al mes",
    "cac_label": "Coste de Adquisición de Cliente (CAC) (€)",
    "dans_12_mois": "Dentro de 12 meses: <0>{{amount}}</0>",
    "excellent_expansion_churn": "🚀 Excelente (Expansión > Churn)",
    "positif_retention_saine": "🟢 positivo (retención saludable)",
    "danger_erosion_du_mrr_existant": "⚠️ peligro (erosión del MRR existente)",
    "ltv_duree": "LTV: {{amount}} (Duración: {{months}} meses)",
    "donnees_actuelles_de_l_abonnement": "Datos actuales de la suscripción",
    "mrr_actuel": "MRR actual (€)",
    "clients_actifs_2": "Clientes activos",
    "montant_par_mois": "{{amount}} / mes",
    "dynamique_de_churn_expansion": "Dinámica de churn y expansión",
    "pourcent_par_mois": "{{value}}% / mes",
    "trajectoire_de_croissance_sur_12_mois": "Trayectoria de crecimiento a 12 meses",
    "croissance_totale": "Crecimiento total: +{{value}}%",
    "valeur_clients": "{{value}} clientes",
    "net_revenue_retention_nrr": "Net Revenue Retention (NRR)"
  },
  "salary-increase-negotiation-simulator": {
    "entretien_annuel_negociation_rh": "Evaluación anual y negociación salarial",
    "salaire_brut_annuel_actuel": "Salario bruto anual actual (€)",
    "augmentation_demandee": "Incremento salarial solicitado (%)",
    "statut_salarie": "Categoría y retenciones laborales",
    "cadre_25_cotisations": "Mando / Directivo (~25% cotizaciones e impuestos)",
    "non_cadre_22_cotisations": "Empleado general (~22% cotizaciones)",
    "taux_prelevement_source": "Tipo estimado de retención IRPF (%)",
    "gain_net_reel_dans_votre": "Ganancia neta real en nómina",
    "mois": "mes",
    "nouveau_salaire_brut_annuel": "Nuevo salario bruto anual",
    "si_votre_manager_bloque_sur": "Alternativas a negociar ante congelación salarial",
    "vehicule_de_fonction_mobilite": "Vehículo de empresa y paquete de movilidad",
    "economie_de_carburant_assurance_et": "Ahorro sustancial en combustible, mantenimiento y seguro privado",
    "jours_de_teletravail_flexibilite": "Teletrabajo y flexibilidad horaria",
    "passer_de_2_a_3": "Aumentar a 3 o 4 días de trabajo en remoto semanales",
    "primes_d_objectifs_variable": "Bonus por objetivos y retribución variable",
    "definir_des_kpi_mesurables_avec": "Pactar KPI medibles con primas por consecución",
    "budget_formation_certifiante": "Presupuesto para formación especializada",
    "financement_d_un_bootcamp_mba": "Financiación de máster, bootcamp o certificaciones de posgrado",
    "app_title": "Simulador de Negociación de Aumento Salarial",
    "app_subtitle": "Calcule la ganancia neta en su bolsillo tras impuestos, el coste empresa y opciones en especie.",
    "pocket_annual_gain": "+{{amount}} € netos tras impuestos al año",
    "employer_annual_cost": "Coste total para el empleador: +{{amount}} €/año",
    "negotiation_levers_title": "Palancas y alternativas de negociación",
    "current_situation_and_goal": "1. Situación actual y objetivo"
  },
  "social-giveaway-roi-calculator": {
    "cout_follower_retenu": "Coste por seguidor retenido",
    "budget_et_resultats_du_concours": "Presupuesto y resultados del sorteo",
    "bilan_net_d_acquisition": "Balance neto de captación",
    "cout_total_de_l_operation": "Coste global de la campaña",
    "followers_nets_finaux_retenus": "Seguidores netos finales retenidos",
    "perte_estimee_unfollow": "Pérdida estimada tras el sorteo (Unfollow)",
    "cout_par_lead_email_cpl": "Coste por lead cualificado (CPL)",
    "conseil_d_or_concours": "Regla de oro para sorteos eficaces",
    "offrez_vos_propres_produits_ou": "Sortea tus propios productos o servicios en lugar de dinero o móviles genéricos para atraer audiencia cualificada y minimizar cancelaciones.",
    "rentabilite_concours_jeux_reseaux_sociaux": "Rentabilidad de concursos y sorteos en redes sociales",
    "simulateur_roi_jeu_concours_cout_par": "Simulador de ROI de sorteos y coste por seguidor retenido",
    "mesurez_le_cout_reel_d_acquisition": "Mida el coste real de adquisición de sus sorteos teniendo en cuenta la tasa inevitable de bajas (churn) a 30 días y la captación de emails.",
    "contre_brut": "Frente a {{value}} € bruto",
    "valeur_reelle_des_lots": "Valor real de los premios (€)",
    "budget_sponsorisation_ads": "Presupuesto de anuncios patrocinados (€)",
    "frais_partenaire_createur": "Honorarios de socio / creador (€)",
    "abonnes_gagnes_pendant_l_operation": "Seguidores ganados durante la acción",
    "emails_leads_collectes_optionnel": "Emails / leads recopilados (opcional)",
    "taux_de_desabonnement_unfollow_estime_a": "Tasa de bajas (unfollow) estimada a 30 días",
    "en_moyenne_40_a_60_des": "De media, entre el 40 % y el 60 % de los participantes \"cazadores de sorteos\" dejan de seguir la cuenta en cuanto se anuncia al ganador.",
    "pour_minimiser_le_churn_offrez_vos": "Para minimizar el churn, <0>ofrezca sus propios productos o servicios</0> en lugar de un iPhone o dinero en efectivo: así solo atraerá a prospectos realmente interesados en su marca."
  },
  "social-profile-audit-scorecard": {
    "score_de_profil": "Puntuación global del perfil",
    "resultat_de_votre_audit": "Resultado de la auditoría",
    "taux_d_optimisation": "Nivel de optimización global",
    "chk_username": "Nombre de usuario claro y memorable (sin números aleatorios ni guiones bajos excesivos)",
    "tip_username": "Facilita el boca a boca y la búsqueda nativa.",
    "chk_seo_name": "Campo \"Nombre\" enriquecido con 2-3 palabras clave del sector (p. ej. \"Alex | Coach deportivo para perder peso\")",
    "tip_seo_name": "¡Es el único campo indexado en la barra de búsqueda junto con el @usuario!",
    "chk_profile_pic": "Foto de perfil contrastada, primer plano del rostro o logotipo limpio sobre fondo liso",
    "tip_profile_pic": "Debe seguir siendo legible en la pantalla de un smartphone a 40x40 píxeles.",
    "chk_bio_hook": "Línea 1: Promesa clara o público objetivo preciso (\"Ayudo a [X] a conseguir [Y]\")",
    "tip_bio_hook": "En menos de 2 segundos, el visitante debe saber si su cuenta es para él.",
    "chk_bio_proof": "Línea 2: Prueba social o autoridad (\"+500 clientes\", \"Autor de best sellers\", \"Ex-Google\")",
    "tip_bio_proof": "Genera credibilidad y justifica seguir la cuenta.",
    "chk_bio_cta": "Línea 3: Llamada a la acción (CTA) directa hacia el enlace (\"👇 Descarga la guía gratuita\")",
    "tip_bio_cta": "Sin flecha ni instrucción explícita, la tasa de clics en el enlace cae un 40 %.",
    "chk_bio_link": "Enlace de la bio configurado con seguimiento o página optimizada para móvil (Stan Store, Beacons, Lead Magnet)",
    "tip_bio_link": "Evite los enlaces genéricos a una página de inicio compleja.",
    "chk_pinned_posts": "3 publicaciones o reels fijados estratégicos (1. quién soy, 2. mejor contenido viral, 3. oferta/producto)",
    "tip_pinned_posts": "Las publicaciones fijadas convierten a los visitantes en seguidores y compradores.",
    "badge_top": "Perfil perfectamente optimizado (Top 2 %)",
    "badge_good": "Buena base — algunas fugas de conversión",
    "badge_mid": "Regular — fuga masiva de visitantes",
    "badge_low": "Crítico — perfil invisible y sin optimizar",
    "tpl_coaching_role": "Coach y formador",
    "tpl_coaching_line1": "🎯 Ayudo a emprendedores a duplicar su energía y concentración sin burnout",
    "tpl_coaching_line2": "⭐ +350 personas acompañadas | Autor del libro \"Focus 90\"",
    "tpl_coaching_line3": "🎁 Consigue gratis mi protocolo matinal de 15 min 👇",
    "tpl_ecommerce_role": "Marca D2C / E-commerce",
    "tpl_ecommerce_line1": "🌿 Cosméticos 100 % naturales y recargables fabricados en Francia",
    "tpl_ecommerce_line2": "✨ Valorado con 4,9/5 por más de 12 000 clientas satisfechas",
    "tpl_ecommerce_line3": "🚚 Envío gratis desde 40 € + 15 % de descuento con el código BIENVENIDO 👇",
    "tpl_b2b_role": "Experto freelance / consultor B2B",
    "tpl_b2b_line1": "🚀 Captación B2B y copywriting para startups SaaS y agencias",
    "tpl_b2b_line2": "💼 +2 M€ generados para mis clientes | Ex-Head of Growth",
    "tpl_b2b_line3": "📅 Reserva tu auditoría de conversión gratuita (15 min) 👇",
    "tpl_creator_role": "Creador de contenido y estilo de vida",
    "tpl_creator_line1": "📸 Viajes atípicos y consejos para nómadas digitales en solitario",
    "tpl_creator_line2": "📍 42 países explorados con una sola mochila 🎒",
    "tpl_creator_line3": "👇 mi lista de equipo y buenos planes de alojamiento:",
    "titre_auditeur": "Auditor de perfil y scorecard de conversión de la bio",
    "sous_titre": "Transforme a los visitantes curiosos en seguidores fieles y clientes cualificados gracias a los 8 pilares de conversión.",
    "plateforme_cible": "Plataforma objetivo",
    "secteur_thematique": "Sector / temática de la cuenta",
    "niche_coaching": "Coaching, formación y salud",
    "niche_ecommerce": "Marca de e-commerce / D2C",
    "niche_b2b": "Freelance, agencia y consultor B2B",
    "niche_creator": "Creador de contenido, vlogs y estilo de vida",
    "excellent_travail": "¡Excelente trabajo! Su perfil retiene el máximo de tráfico orgánico.",
    "chaque_point_manquant": "Cada punto que falta supone decenas de visitantes que abandonan su perfil sin seguirlo ni hacer clic.",
    "grille_evaluation": "Cuadrícula de evaluación de los 8 pilares de conversión",
    "pts": "+{{points}} pts",
    "modele_bio_recommande": "Plantilla de bio recomendada para su nicho ({{role}})",
    "structure_testee_ab": "Estructura probada con tests A/B para maximizar la tasa de clics hacia su enlace.",
    "copie": "¡Copiado!",
    "copier_la_bio": "Copiar la bio"
  },
  "team-chat-message-formatter": {
    "formateur_de_messages_slack_teams": "Formateador de Mensajes para Slack, Teams y Discord",
    "mettez_en_forme_vos_annonces": "Estructure comunicados, novedades de release y avisos de equipo sin errores de formato Markdown.",
    "1_plateforme_cible": "1. Plataforma de destino",
    "redigez_votre_annonce_ou_message": "Escriba aquí su comunicado o mensaje para el equipo...",
    "expediteur": "Remitente",
    "aujourd_hui_a_14_32": "Hoy a las 14:32",
    "default_message": "🚀 *Lanzamiento de la Release v2.4* previsto para esta tarde a las 16:00 h.\n\n> *Puntos clave a recordar:*\n• Despliegue sin interrupción del servicio\n• Pruebas de regresión validadas al 100%\n• En caso de incidencia: contactar con el equipo @infra\n\nCódigo a ejecutar:\n```bash\nkubectl rollout restart deployment/api-gateway\n```\n\n¡Gracias a todos por vuestra implicación! 👏",
    "texte_mis_en_valeur": "Texto resaltado",
    "gras": "Negrita",
    "italique": "Cursiva",
    "barre": "Tachado",
    "code_inline": "Código en línea",
    "bloc": "Bloque ```",
    "citation": "Cita",
    "liste": "Lista",
    "count_chars_words": "{{chars}} caracteres | {{words}} palabras",
    "syntaxe_copiee": "¡Sintaxis de {{platform}} copiada!",
    "apercu_simulation": "Vista previa de la simulación ({{platform}})"
  },
  "team-lunch-order-split-calculator": {
    "swile_edenred_lydia_ready": "Compatible con cheques gourmet y Bizum",
    "ajouter_une_personne": "Añadir compañero",
    "plat_boisson": "Plato / Bebida (€)",
    "titres_resto": "Ticket Restaurante (€)",
    "partage_frais": "Reparto de gastos",
    "total_addition": "Total de la cuenta",
    "reste_a_collecter_cb_lydia": "Pendiente de cobrar (Bizum / Tarjeta)",
    "collegue_x": "Compañero {{value}}",
    "slack_title": "🍱 *Resumen del almuerzo de equipo / cuenta*",
    "slack_total": "💰 *Total del pedido:* {{value}}",
    "slack_shared": "🍕 *Gastos comunes / propina:* {{value}} (~{{perPerson}}/pers.)",
    "slack_detail": "*Detalle por persona:*",
    "slack_line_voucher": "• *{{name}}*: {{total}} (Da {{vouchers}} ticket(s) restaurante + *{{cash}}* con tarjeta/Lydia)",
    "slack_line_plain": "• *{{name}}*: *{{total}}*",
    "repartition_d_addition_dejeuner_d_equipe": "Reparto de la cuenta y almuerzo de equipo (tickets restaurante)",
    "separez_les_plats_individuels_partagez_les": "Separe los platos individuales, reparta los entrantes y la entrega, incluya los tickets restaurante y genere el resumen para Slack.",
    "frais_communs_du_groupe": "Gastos comunes del grupo",
    "entrees_livraison_x": "Entrantes / Entrega ({{value}})",
    "pourboire_x": "Propina ({{value}})",
    "code_promo_reduction_x": "Código promocional / Descuento ({{value}})",
    "detail_des_collegues_x": "Detalle de los compañeros ({{value}})",
    "valeur_titre_x": "Valor del ticket ({{value}})",
    "message_slack_teams": "Mensaje de Slack / Teams"
  },
  "tiktok-shop-affiliate-earnings": {
    "moyenne_2_5_a_5": "Promedio: 2,5% al 5%",
    "clics_estimes_sur_le_produit": "Clics estimados en el producto (Enlace)",
    "commission_par_unite_vendue": "Comisión por unidad vendida",
    "de_rpm_creator_rewards_avec": "de RPM Creator Rewards con vídeos virales,",
    "tiktok_shop_affiliate": "TikTok Shop Afiliados",
    "la_meme_audience_genere_souvent": "la misma audiencia genera con frecuencia",
    "2_000_a_6_000": "de 2.000 € a 6.000 € en comisiones de venta",
    "commissions_par_video": "Comisiones por vídeo",
    "sur_x_ventes_generees": "De {{value}} ventas generadas",
    "revenus_mensuels_x_videos": "Ingresos mensuales ({{value}} vídeos)",
    "commissions_nettes_createur": "Comisiones brutas del creador",
    "gmv_mensuel_genere": "GMV mensual generado",
    "volume_brut_de_vente_marchandise": "Volumen bruto de mercancía vendida",
    "rpm_shop_equivalent": "RPM equivalente de Shop",
    "gains_pour_1_000_vues_video": "Ganancias por cada 1.000 visualizaciones de vídeo",
    "audience_vues_video_tiktok": "1. Audiencia y visualizaciones de vídeo en TikTok",
    "vues_moyennes_par_video_d_affiliation": "Visualizaciones medias por vídeo de afiliación de TikTok Shop",
    "ctr_panier_jaune": "CTR del carrito amarillo (%)",
    "videos_publiees_par_mois": "Vídeos publicados / mes",
    "x_clics": "{{value}} clics",
    "produit_taux_de_commission_marchand": "2. Producto y tasa de comisión del comerciante",
    "prix_unitaire_du_produit_ttc": "Precio unitario del producto con impuestos (€)",
    "taux_conv_page": "Tasa de conv. de página (%)",
    "commission_vendeur": "Comisión del vendedor (%)",
    "x_eur_par_produit": "{{value}} € / producto",
    "comparatif_tiktok_shop_vs_fonds": "Comparativa: TikTok Shop vs fondo de creadores clásico",
    "comparatif_texte": "En TikTok, 1.000.000 de visualizaciones generan de media <0>400 € - 800 €</0> de RPM de Creator Rewards con vídeos virales, mientras que con <1>TikTok Shop Affiliate</1> la misma audiencia suele generar <2>entre 2.000 € y 6.000 € en afiliación</2> al integrar el producto de forma natural en la narrativa del vídeo."
  },
  "us-qsbs-tax-exemption": {
    "simulateur_d_exoneration_qsbs_section": "Simulador de Exención Fiscal QSBS (Sección 1202)",
    "us_c_corporation_requis_par": "US C-Corporation (Requerido según Sección 1202)",
    "s_corporation_non_eligible_direct": "S-Corporation (No elegible directamente)",
    "llc_partnership_non_eligible": "LLC / Partnership (No elegible)",
    "apres_le_27_septembre_2010": "Tras el 27 de septiembre de 2010 (100% de exención)",
    "18_fev_2009_27_sept": "18 feb. 2009 – 27 sep. 2010 (75% de exención)",
    "avant_le_18_fev_2009": "Antes del 18 feb. 2009 (50% de exención)",
    "californie_refuse_le_qsbs_taxe": "California (No aplica QSBS - Gravado hasta 13.3%)",
    "new_york_refuse_le_qsbs": "Nueva York (No conforme con QSBS)",
    "texas_0_d_impot_d": "Texas (0% de impuesto estatal)",
    "floride_0_d_impot_d": "Florida (0% de impuesto estatal)",
    "washington_taxe_7_sur_les": "Washington (7% sobre ganancias > $250k)",
    "massachusetts_conforme_au_qsbs": "Massachusetts (Conforme con QSBS federal)",
    "autre_etat_conforme": "Otro estado conforme",
    "economie_d_impot_qsbs": "Ahorro fiscal total QSBS",
    "plafond_d_exclusion_applicable_max": "Límite de exclusión aplicable (Mayor de $10M o 10x coste base)",
    "gain_net_totalement_exonere_d": "Ganancia neta 100% exenta a nivel federal",
    "gain_excedant_le_plafond_taxe": "Ganancia gravada por encima del límite legal",
    "impot_federal_du_avec_qsbs": "Impuesto federal adeudado con QSBS",
    "taux_effectif_d_imposition_global": "Tipo impositivo efectivo global",
    "etat_ca": "California (no conforme)",
    "etat_ny": "Nueva York (no conforme)",
    "etat_tx": "Texas (0 % de impuesto estatal)",
    "etat_fl": "Florida (0 % de impuesto estatal)",
    "etat_wa": "Washington (7 % sobre ganancias de capital)",
    "etat_ma": "Massachusetts (conforme)",
    "etat_autre": "Otro estado conforme (~5 %)",
    "badge_100_exoneration_federale": "100 % de exclusión federal",
    "intro_analysez_l_eligibilite": "Analice si sus acciones Qualified Small Business Stock (QSBS) son elegibles para eliminar hasta $10.000.000 (o 10 veces su inversión inicial) de ganancias de capital federales al vender su startup o sus acciones de fundador.",
    "structure_de_la_societe_tests": "Estructura de la sociedad y pruebas legales del IRS",
    "type_d_entite_lors_de": "Tipo de entidad en la emisión",
    "date_d_acquisition_des_actions": "Fecha de adquisición de las acciones",
    "actifs_bruts_gross_assets_test": "Activos brutos de la sociedad ≤ $50M en la emisión de las acciones (Gross Assets Test):",
    "activite_qualifiee": "Actividad cualificada (Tecnología, SaaS, Industria, Biotecnología; excluye finanzas, hostelería, derecho):",
    "prix_d_entree_duree_de": "Precio de entrada, periodo de tenencia y salida",
    "cout_d_acquisition_prix_de": "Coste de adquisición / Precio de suscripción ($)",
    "produit_de_cession_montant_de": "Producto de la venta / Importe de la venta ($)",
    "duree_de_detention_continue": "Periodo de tenencia continuo: {{value}} años (umbral legal: 5 años)",
    "condition_des_5_ans_validee": "Condición de 5 años cumplida",
    "moins_de_5_ans_non_eligible": "Menos de 5 años (no elegible según §1202)",
    "etat_de_residence_fiscale_aux": "Estado de residencia fiscal en EE. UU.",
    "eligible_100_exoneration": "Elegible para 100 % de exclusión",
    "non_eligible": "No elegible",
    "economie_fiscale_nette_realisee": "Ahorro fiscal neto realizado",
    "plus_value_totale_brute": "Plusvalía bruta total: ${{value}}",
    "impot_d_etat_du": "Impuesto estatal adeudado ({{state}}):",
    "alerte_non_conformite_fiscale_d": "Alerta de no conformidad fiscal estatal ({{state}})",
    "alerte_texte_californie_new_york": "California y Nueva York no reconocen la exclusión QSBS §1202. Aunque el impuesto federal se reduzca a $0, sigue adeudando el impuesto estatal sobre la totalidad de la plusvalía."
  },
  "us-rd-tax-credit-calculator": {
    "simulateur_credit_d_impot_r": "Calculadora de Crédito Fiscal por I+D en EE. UU. (IRC § 41 - Método ASC)",
    "total_qres_annee_n": "Total de Gastos Elegibles (QRE) Año Actual",
    "credit_federal_r_d_estime": "Crédito Fiscal Federal Estimado por I+D",
    "base_historique_moyenne_n_1": "Base histórica media (Años N-1 a N-3)",
    "credit_net_avec_election_280c": "Crédito neto con elección § 280C (79%)",
    "periode_de_report_des_credits": "Periodo de traslación de créditos fiscales no utilizados",
    "permitted_purpose": "Permitted Purpose (Propósito válido)",
    "creer_un_nouveau_produit_logiciel": "Crear un nuevo producto, software o proceso con funcionalidad mejorada.",
    "technological_in_nature": "Technological in Nature (Base tecnológica)",
    "reposer_sur_l_ingenierie_l": "Basarse en ingeniería, informática, física o ciencias experimentales.",
    "elimination_of_uncertainty": "Elimination of Uncertainty (Incertidumbre)",
    "incertitude_technique_sur_la_faisabilite": "Incertidumbre técnica sobre la viabilidad, el método o el diseño óptimo.",
    "process_of_experimentation": "Process of Experimentation (Experimentación)",
    "demarche_iterative_prototypage_tests_ou": "Proceso iterativo mediante prototipos, simulación de hipótesis y pruebas.",
    "qre_n_1": "QRE A-1 ($)",
    "qre_n_2": "QRE A-2 ($)",
    "qre_n_3": "QRE A-3 ($)",
    "calculez_votre_credit_d_impot_recherche": "Calcule su crédito fiscal federal estadounidense por investigación (R&D Tax Credit) con el método simplificado ASC y evalúe su elegibilidad al crédito de tesorería sobre las cargas sociales patronales (Payroll Tax Offset de hasta 500 000 $/año).",
    "depenses_eligibles_de_r_d": "Gastos de I+D elegibles (QRE del año)",
    "salaires_w_2_developpeurs_ingenieurs": "Salarios W-2 de desarrolladores / ingenieros ($)",
    "salaires_w_2_superviseurs_r_d": "Salarios W-2 de supervisores de I+D / PM ($)",
    "sous_traitants_1099_us_eligibles_a": "Subcontratistas 1099 de EE. UU. (elegibles al 65 %) ($)",
    "retenu_pour_le_calcul": "Considerado en el cálculo: ${{value}}",
    "serveurs_cloud_r_d_aws_gcp": "Servidores cloud de I+D (AWS / GCP) y suministros ($)",
    "historique_r_d_methode_asc_3": "Historial de I+D y método ASC (3 años anteriores)",
    "statut_startup_payroll_tax_offset_41": "Estado de startup y Payroll Tax Offset (§41(h))",
    "la_societe_a_moins_de_5": "La empresa tiene menos de 5 años de existencia y < 5 M$ de ingresos:",
    "eligible_startup": "Elegible como startup",
    "non_grande_entreprise": "No / Gran empresa",
    "chiffre_d_affaires_brut_annuel": "Ingresos brutos anuales ($)",
    "anciennete_de_la_societe_annees": "Antigüedad de la empresa (años)",
    "credit_federal_brut_gross_asc_credit": "Crédito federal bruto (Gross ASC Credit)",
    "taux_effectif_de_recuperation": "Tasa efectiva de recuperación: {{value}} % del gasto en I+D",
    "credit_imputable_directement_chaque_trimestre": "Crédito aplicable directamente cada trimestre contra sus cargas patronales FICA (Social Security / Medicare) sin esperar a ser rentable.",
    "non_eligible_au_payroll_tax_offset": "No elegible para el Payroll Tax Offset (ingresos > 5 M$ o empresa con más de 5 años). Utilizable como reducción del impuesto de sociedades (Corporate Income Tax).",
    "an_max_500k_sous_l_ira": "/ año (máx. 500 k$ bajo la IRA)",
    "20_ans_en_avant_1_an": "20 años hacia adelante / 1 año hacia atrás",
    "les_4_criteres_d_eligibilite_irs": "Los 4 criterios de elegibilidad del IRS (§41(d))"
  },
  "us-sales-tax-calculator": {
    "calculateur_de_sales_tax_par": "Calculadora de Sales Tax por Estado en EE. UU.",
    "etat_americain_us_state": "Estado de EE. UU.",
    "categorie_de_produit": "Categoría de producto",
    "surtaxe_locale_de_comte_2": "Recargo municipal o de condado (%) (ej. 2.5%)",
    "prix_hors_taxe_subtotal": "Precio antes de impuestos (Subtotal en $)",
    "surtaxe_locale_de_comte": "Recargo municipal o de condado (%)",
    "montant_total_de_la_taxe": "Importe total de Sales Tax",
    "ce_produit_est": "Este producto está",
    "exonere_de_sales_tax_0": "exento de impuesto de ventas (0%)",
    "nomad": "NOMAD",
    "sans_taxe_sur_les_ventes": "sin impuesto sobre las ventas estatal.",
    "base_complete_des_50_etats": "Base completa de los 50 estados de EE. UU.: tasas estatales, recargos locales de condado y reglas de exención (alimentación, ropa).",
    "selection_de_l_etat_produit": "Selección del estado y del producto",
    "ht_ttc": "Sin impuesto ➔ Total",
    "ttc_ht": "Total ➔ Sin impuesto",
    "montant_hors_taxes_subtotal": "Importe sin impuestos ($ Subtotal)",
    "montant_total_ttc_total": "Importe total con impuestos ($ Total)",
    "state_option_base": "{{name}} ({{code}}) - Base: {{rate}}%",
    "marchandise_generale": "Mercancía general",
    "alimentation_groceries": "Alimentación (Groceries)",
    "vetements_apparel": "Ropa (Apparel)",
    "medicaments_sur_ordonnance": "Medicamentos con receta",
    "inclure_la_taxe_locale_moyenne": "Incluir el impuesto local medio de condado/ciudad ({{rate}}%)",
    "total_final_a_payer_ttc": "Total final a pagar (con impuestos)",
    "taux_de_taxe_effectif_applique": "Tasa de impuesto efectiva aplicada: <0>{{rate}}%</0>",
    "taxe_d_etat_state_rate": "Impuesto estatal de {{name}} ({{rate}}%):",
    "ce_produit_est_exonere_dans_etat": "Este producto está <0>exento de sales tax (0%)</0> en el estado de {{name}}.",
    "fait_partie_des_5_etats_nomad": "{{name}} es uno de los 5 estados de EE. UU. llamados <0>NOMAD</0>, sin impuesto sobre las ventas."
  },
  "us-section179-depreciation": {
    "calculateur_section_179_bonus_depreciation": "Calculadora de Sección 179 y Bonus Depreciation en EE. UU.",
    "economie_d_impot_en_cash": "Ahorro fiscal neto en liquidez (Año 1)",
    "deduction_section_179_directe": "Deducción directa Sección 179",
    "amortissement_macrs_standard": "Amortización MACRS remanente",
    "total_deduction_fiscale_annee_1": "Deducción fiscal total en el Año 1",
    "avec_seuil_de_reduction_commencant": "con umbral de reducción que inicia en",
    "intro_calculez_l_amortissement_accelere": "Calcule la depreciación acelerada inmediata al 100 % para sus equipos profesionales, maquinaria, software y vehículos elegibles (SUV de más de 6.000 lbs).",
    "investissement_en_materiel": "Inversión en equipos",
    "prix_d_achat_de_l": "Precio de compra del equipo ($)",
    "categorie_d_actif": "Categoría del activo",
    "materiel_standard_machines_ordinateurs": "Equipos estándar, maquinaria, ordenadores, software",
    "vehicule_lourd_6_000_lbs": "Vehículo pesado > 6.000 lbs (SUV, furgoneta profesional)",
    "voiture_de_tourisme": "Turismo (límite de vehículo ligero)",
    "tranche_d_impot_federal": "Tramo del impuesto federal (%)",
    "taux_d_impot_d_etat": "Tipo del impuesto estatal (%)",
    "taux_de_bonus_depreciation": "Tasa de Bonus Depreciation ({{value}} %):",
    "usage_professionnel": "Uso profesional ({{value}} %):",
    "cout_net_reel_equipement": "Coste neto real de su equipo tras la deducción: <0>${{value}}</0>",
    "decomposition_de_la_deduction_fiscale": "Desglose de la deducción fiscal del año 1:",
    "bonus_depreciation_ligne": "• Bonus Depreciation ({{value}} %):",
    "plafonds_officiels_irs": "Límites oficiales del IRS:",
    "plafond_section_179_texte": "Límite de la Sección 179 de <0>$2.560.000</0>, con umbral de reducción a partir de <1>$4.090.000</1> en compras anuales de equipos."
  },
  "value-based-pricing-calculator": {
    "prix_base_sur_la_valeur": "Precio basado en valor generado",
    "tjm_effectif_reel": "Tarifa diaria efectiva",
    "jour": "día",
    "multiplicateur_de_revenu": "Multiplicador de ingresos",
    "roi_presente_au_client": "Retorno de inversión (ROI) para el cliente",
    "part_de_valeur_capturee_regle": "Cuota de valor capturada (Regla del 10-20%)",
    "exemple": "Ejemplo",
    "montant_si_facture_au_temps": "Facturación equivalente por horas o tarifa diaria",
    "votre_prime_a_la_valeur": "Prima sobre el valor capturado",
    "option_1_essentielle": "Opción 1: Esencial",
    "livrable_c_ur_de_mission": "Entregable central de la misión con alcance acotado sin soporte ampliado.",
    "recommande": "Recomendado",
    "option_2_valeur_garantie": "Opción 2: Valor Garantizado",
    "implementation_complete_optimisations_garantie_de": "Implementación llave en mano, optimizaciones y garantía de resultado.",
    "option_3_vip_acceleration": "Opción 3: Aceleración VIP",
    "deploiement_prioritaire_formation_des_equipes": "Despliegue exprés, formación al equipo y auditoría estratégica posterior.",
    "label_annual_gain": "Aumento de facturación anual o ahorro generado (€ / año)",
    "label_work_days": "Días de trabajo estimados",
    "soit_x_de_la_valeur_generee": "Es decir, el <0>{{value}} %</0> del valor generado",
    "par_jour": "/ día",
    "contre_x_eur_en_facturation": "Frente a {{value}} € facturando por tiempo",
    "gain_de_x_eur": "Ganancia de <0>+{{value}} €</0>",
    "le_client_gagne_x_eur_nets": "El cliente gana {{value}} € netos",
    "valeur_economique_apportee_au_client": "1. Valor económico aportado al cliente",
    "exemple_complet": "<0>Ejemplo:</0> si el rediseño de su landing page permite al cliente firmar 100 k€ más en contratos, facturarle entre 10 k€ y 15 k€ es una evidencia comercial, porque su ROI sigue siendo superior al 500 %.",
    "temps_passe_facturation_au_tjm": "2. Tiempo dedicado y facturación por tarifa diaria clásica",
    "votre_tjm_standard": "Su tarifa diaria estándar (€ / día)",
    "structure_de_devis_recommandee_en_3": "Estructura de presupuesto recomendada en 3 ofertas (Tiering)"
  },
  "workplace-productivity-utilization-calculator": {
    "calculateur_de_productivite_taux_d": "Calculadora de Productividad: Tasa de Ocupación y Horas Facturables",
    "analysez_le_ratio_d_heures": "Analice la proporción de horas facturables frente a tareas administrativas para reducir ineficiencias de equipo.",
    "taux_d_occupation_facturable": "Tasa de ocupación facturable",
    "perte_de_productivite_annuelle_par": "Coste anual de productividad perdida por empleado",
    "label_total_hours": "Horas totales trabajadas por semana (h)",
    "label_admin_meetings": "Admin / reuniones internas",
    "label_interruptions": "Interrupciones al día (Slack, emails, imprevistos)",
    "benchmark_optimal": "Óptimo (75-85%)",
    "benchmark_low": "Bajo (<60%) - Sobrecarga administrativa",
    "benchmark_burnout": "Riesgo de agotamiento (>85%) - falta de margen para respirar",
    "weekly_time_breakdown": "Distribución del tiempo semanal",
    "billable_hours": "Horas facturables al cliente",
    "training_bizdev": "Formación y BizDev",
    "interruptions_context": "Interrupciones y contexto de trabajo",
    "refocus_minutes": "Tiempo de reconcentración (minutos)",
    "avg_gross_salary": "Salario bruto anual medio ({{currency}})",
    "team_size": "Tamaño del equipo (personas)",
    "billable_of_total": "{{billable}} h facturables sobre {{total}} h de presencia semanal.",
    "interruption_cost_title": "Coste financiero de las interrupciones (modelo UC Irvine)",
    "hours_lost_per_year": "{{value}} horas perdidas/año",
    "hours_per_day_refocus": "es decir, <0>{{hours}} h al día</0> dedicadas a reconcentrarse tras cada interrupción.",
    "team_annual_impact": "Impacto anual en el equipo de {{value}} pers.:",
    "per_year_value": "{{value}} / año",
    "deep_work_percent": "~{{value}}% de Deep Work real",
    "benchmark_below_target": "Por debajo del objetivo (60-75%)"
  },
  "work-timesheet-break-calculator": {
    "calculateur_de_temps_de_travail": "Calculadora de Jornada Laboral, Pausas y Horas Extra",
    "suivez_les_heures_journalieres_pauses": "Registre las horas diarias, pausas de almuerzo y recargos por horas extraordinarias para trabajadores o autónomos.",
    "nom_du_salarie": "Nombre del trabajador",
    "matin": "Mañana",
    "apres_midi": "Tarde",
    "non_travaille_repos": "No trabajado (Descanso)",
    "total_semaine": "Total Semanal",
    "heures": "horas",
    "remuneration_brute": "Salario bruto total",
    "day_monday": "Lunes",
    "day_tuesday": "Martes",
    "day_wednesday": "Miércoles",
    "day_thursday": "Jueves",
    "day_friday": "Viernes",
    "day_saturday": "Sábado",
    "day_sunday": "Domingo",
    "format_hhmm": "{{hours}}h{{minutes}}",
    "ligne_jour_copie": "{{day}}: Mañana [{{morningIn}} - {{morningOut}}] | Tarde [{{afternoonIn}} - {{afternoonOut}}] = {{total}} ({{decimal}} h)",
    "texte_copie_feuille_de_temps": "=== HOJA DE HORAS Y HORAS EXTRA ===\nEmpleado: {{name}}\nContrato base: {{weeklyHours}} h / semana | Tarifa horaria: {{wage}} € brutos/h\n\n--- DETALLE DE LOS DÍAS TRABAJADOS ---\n{{details}}\n\n--- RESUMEN SEMANAL DE HORAS Y SALARIO ---\nTotal de horas trabajadas: {{totalHours}} h ({{totalHhMm}})\n• Horas normales: {{regularHours}} h = {{regularPay}} €\n• Horas extra (+{{rate1}}%): {{hours1}} h = {{pay1}} €\n• Horas extra (+{{rate2}}%): {{hours2}} h = {{pay2}} €\n\nTOTAL BRUTO SEMANAL: {{totalPay}} €",
    "releve_des_heures_de_la_semaine": "Registro de horas de la semana",
    "soit_x_travaillees": "es decir, <0>{{value}}</0> trabajadas",
    "heures_normales_x_h": "Horas normales ({{value}} h)",
    "heures_sup_x_y_h": "Horas extra +{{rate}}% ({{hours}} h)",
    "feuille_de_temps_copiee": "¡Hoja de horas copiada!",
    "parametres_contrat_taux": "Parámetros de contrato y tarifas",
    "base_hebdomadaire_contractuelle_h": "Base semanal contractual (h)",
    "taux_horaire_brut_eur_h": "Tarifa horaria bruta (€/h)",
    "majoration_palier_1": "Recargo nivel 1 (%)",
    "majoration_palier_2": "Recargo nivel 2 (%)"
  },
  "world-meeting-time-slot-finder": {
    "planificateur_de_reunions_multi_fuseaux": "Planificador de Reuniones en Diferentes Husos Horarios",
    "trouvez_en_un_coup_d": "Encuentre con facilidad el mejor horario de reunión compatible para equipos distribuidos por todo el mundo.",
    "ajouter_une_ville": "+ Añadir ciudad...",
    "matrice_visuelle_24_heures": "Matriz visual de 24 horas",
    "cliquez_sur_une_colonne_pour": "Haga clic en una hora para fijar la reunión",
    "9h_18h_bureau": "9h-18h (Oficina)",
    "nuit": "Noche",
    "toast_ics_exported": "¡Archivo .ics exportado para Outlook / Google Calendar!",
    "default_meeting_title": "Sincronización del equipo internacional",
    "city_paris": "París",
    "city_london": "Londres",
    "city_newyork": "Nueva York",
    "city_sanfrancisco": "San Francisco",
    "city_tokyo": "Tokio",
    "city_singapore": "Singapur",
    "city_dubai": "Dubái",
    "city_bengaluru": "Bengaluru / Delhi",
    "city_sydney": "Sídney",
    "city_saopaulo": "São Paulo",
    "city_montreal": "Montreal",
    "city_berlin": "Berlín",
    "keep_two_timezones": "¡Conserve al menos 2 zonas horarias!",
    "suit_ideal": "Horario de oficina (ideal)",
    "suit_early_evening": "Temprano / tarde-noche",
    "suit_night": "Noche / Fuera del horario laboral",
    "summary_template": "📅 **{{title}}** (Duración: {{minutes}} min)\n\n{{list}}\n\n*Hora de referencia UTC: {{hour}}:00*",
    "selected_cities": "Ciudades y zonas horarias seleccionadas ({{value}})",
    "best_slots": "Mejores franjas recomendadas:",
    "best_slot_label": "{{utc}}:00 UTC (París {{paris}}:00)",
    "top_badge": "🏆 Top",
    "early_evening_legend": "7h-9h / 18h-21h",
    "invitation_ready": "Invitación lista para enviar",
    "download_ics": "Descargar calendario .ICS",
    "invitation_copied": "¡Invitación copiada!"
  },
  "standing-desk-ergonomics-calculator": {
    "140_cm": "140 cm",
    "15_min": "15 min",
    "175_cm_moyenne": "175 cm (Promedio)",
    "210_cm": "210 cm",
    "45_min": "45 min",
    "5_min": "5 min",
    "amplitude_moteur_bureau": "Rango de elevación del escritorio",
    "baskets_sneakers_classiques_2_cm": "Zapatillas clásicas (2 cm)",
    "chaussons_tapis_ergonomique_1_cm": "Zapatillas de casa / Alfombra ergonómica (1 cm)",
    "chaussures_de_ville_legers_talons": "Zapatos de vestir / Tacones bajos (4 cm)",
    "clavier_et_souris_alignes_au": "Teclado y ratón al mismo nivel sin flexionar las muñecas hacia arriba (reposamuñecas plano).",
    "cm_du_sol": "cm del suelo",
    "coudes_poses_a_90_a": "Codos apoyados a 90° en horizontal",
    "deplacement_vertical_necessaire_entre_vos": "Recorrido vertical necesario entre tus 2 posiciones.",
    "diagonale_de_l_ecran_principal": "Diagonal de la pantalla principal",
    "distance_yeux_ecran": "Distancia Ojos ↔ pantalla",
    "ecran_24_pouces_bureautique_classique": "Monitor de 24\" (Oficina clásica)",
    "ecran_27_pouces_standard_bureautique": "Monitor de 27\" (Estándar de oficina QHD/4K)",
    "ecran_32_pouces_grand_ecran": "Monitor de 32\" (Pantalla grande)",
    "ecran_34_ultrawide_21_9": "Monitor de 34\" Ultrawide 21:9",
    "ecran_49_super_ultrawide_32": "Monitor de 49\" Super Ultrawide 32:9",
    "en_position_assise_les_pieds": "En posición sentada, los pies deben apoyarse planos sobre el suelo (o reposapiés) a 90°-100° de rodilla.",
    "environ_une_longueur_de_bras": "Aproximadamente a la distancia de un brazo extendido.",
    "epaisseur_semelle_talons": "Grosor de suela / tacones",
    "epaules_relachees_avant_bras_horizontaux": "Hombros relajados, antebrazos horizontales",
    "guide_de_validation_de_posture": "Guía de validación postural:",
    "haut_de_l_ecran_yeux": "Parte superior del monitor (Ojos)",
    "hauteur_assise_fauteuil": "Altura del asiento de la silla",
    "hauteur_plateau_de_bureau": "Altura de la superficie del escritorio",
    "le_tiers_superieur_de_votre": "La parte superior de la pantalla debe situarse por debajo del nivel de los ojos para evitar tensiones cervicales.",
    "marche_pause": "Caminar / Pausa",
    "memorisation_m1": "Memoria M1",
    "memorisation_m2": "Memoria M2",
    "normes_bifma_g1_2013_en": "Normas ANSI/BIFMA X10.1-2024 & EN 527",
    "pc_portable_14_15_ordre": "Portátil 14-15\" (Portátil sin soporte)",
    "pieds_genoux": "Pies y Rodillas:",
    "pieds_nus_chaussettes_0_cm": "Descalzo / Calcetines (0 cm)",
    "poignets": "Muñecas:",
    "position_assise": "Posición Sentada",
    "position_debout": "Posición de Pie",
    "regard": "Mirada:",
    "talons_hauts_6_cm": "Tacones altos (6 cm)",
    "votre_taille_sans_chaussures": "Tu estatura (sin calzado)",
    "app_subtitle": "Calcule alturas ideales al milímetro para su escritorio elevable, silla, pantalla y postura saludable.",
    "section_morphology": "1. Su morfología y Equipamiento",
    "recom_rhythm_rule": "Protocolo de alternancia recomendado (regla 45/15):",
    "peripherals_vision": "Ajustes de Periféricos y Visión",
    "calculateur_ergonomique_assis_debout": "Calculadora ergonómica de escritorio sentado-de pie (Standing Desk)",
    "mode_debout": "Modo de pie (Standing)",
    "mode_assis": "Modo sentado (Sitting)"
  },
  "email-signature": {
    "title": "Generador de firmas de correo",
    "subtitle": "30 plantillas profesionales únicas compatibles con Gmail, Outlook y Apple Mail",
    "models_count_badge": "30 Plantillas",
    "demo_profiles": "Perfiles demo:",
    "preset_ceo": "💼 CEO / Directivo",
    "preset_dev": "💻 Tech / Lead Dev",
    "preset_realtor": "🏡 Agente Inmobiliario",
    "preset_designer": "🎨 DA y diseñador UI",
    "preset_doctor": "⚕️ Médico / Profesional sanitario",
    "tab_templates": "Plantillas (30)",
    "tab_profile": "Perfil",
    "tab_contact": "Contacto y redes",
    "tab_design": "Estilo y colores",
    "tab_cta_disclaimer": "CTA y avisos",
    "filter_all": "Todos (30)",
    "filter_popular": "Populares",
    "filter_corporate": "Negocios y corporativo",
    "filter_creative": "Creativo y tech",
    "filter_sales": "Ventas y reuniones",
    "filter_eco_legal": "Eco y legal",
    "preview_client_title": "Vista previa cliente de correo (Gmail / Outlook)",
    "live_html_badge": "Generador HTML en vivo",
    "email_from_label": "De:",
    "email_subject_label": "Asunto:",
    "email_subject_sample": "Propuesta de colaboración • firma de correo",
    "email_body_greeting": "Hola,",
    "email_body_sample": "Aquí tiene la vista previa real de mi nueva firma de correo profesional generada con Kristools.",
    "email_body_signoff": "Atentamente,",
    "click_to_copy_visual_title": "Haga clic para copiar visualmente",
    "btn_copied": "¡Copiado!",
    "btn_copy_visual": "Copiar firma visual (Gmail/Outlook)",
    "btn_copy_html": "Código HTML",
    "btn_download_html": "Archivo .html",
    "template_selected": "Seleccionado",
    "full_name_label": "Nombre completo *",
    "full_name_placeholder": "Ej: Alex Martin",
    "pronouns_label": "Pronombres (opcional)",
    "pronouns_placeholder": "Ej: He/Him, She/Her",
    "job_title_label": "Puesto / Cargo *",
    "job_title_placeholder": "Ej: Director de producto",
    "company_label": "Empresa *",
    "company_placeholder": "Ej: Kristools Inc.",
    "department_label": "Departamento",
    "department_placeholder": "Ej: Departamento de Innovación",
    "credentials_label": "Títulos / Diplomas / Certificaciones",
    "credentials_placeholder": "Ej: PhD, MBA, PMP®",
    "tagline_quote_label": "Cita / Eslogan de la empresa (Opcional)",
    "tagline_quote_placeholder": "Ej: Innovación al servicio de la simplicidad.",
    "badge_text_label": "Insignia de certificación / confianza",
    "badge_text_placeholder": "Ej: ★ 5.0 Top Vendedor, Verified Pro",
    "email_label": "Correo principal",
    "phone_label": "Teléfono fijo",
    "mobile_label": "Teléfono móvil",
    "website_label": "Sitio web",
    "address_label": "Dirección física / Oficina",
    "custom_fields_title": "Campos personalizados adicionales",
    "custom_row1_label": "Etiqueta personalizada 1",
    "custom_row1_label_placeholder": "Ej: WhatsApp / Calendly",
    "custom_row1_value": "Valor 1",
    "custom_row1_value_placeholder": "Ej: Reservar cita",
    "socials_title": "Redes sociales",
    "avatar_url_label": "URL de avatar / logotipo",
    "avatar_shape_label": "Forma de la foto",
    "shape_circle": "Círculo",
    "shape_rounded": "Redondeado",
    "shape_square": "Cuadrado",
    "avatar_size_label": "Tamaño ({{size}}px)",
    "primary_color_label": "Color principal (Botones, títulos, líneas)",
    "text_color_label": "Color del texto de contacto",
    "font_family_label": "Tipografía",
    "social_style_label": "Estilo de iconos sociales",
    "social_style_color_brand": "Logos oficiales en color",
    "social_style_pill_buttons": "Botones tipo píldora de color",
    "social_style_solid_primary": "Texto limpio de color",
    "cta_button_toggle": "Botón de acción CTA (Llamada a la acción)",
    "cta_text_label": "Texto del botón",
    "cta_text_placeholder": "Ej: 📅 reserva una cita en mi agenda",
    "cta_url_label": "URL de destino (Calendly, Doctolib, portfolio)",
    "banner_url_label": "URL de banner promocional (Opcional)",
    "disclaimers_title": "Avisos legales y ecología",
    "eco_disclaimer_label": "Mostrar advertencia ecológica (\"cuide el medio ambiente\")",
    "legal_disclaimer_label": "Mostrar cláusula de confidencialidad legal",
    "custom_disclaimer_placeholder": "Texto legal personalizado...",
    "sig_eco_notice": "🌱 <strong>Cuide el medio ambiente:</strong> No imprima este correo si no es necesario.",
    "sig_legal_notice": "Este mensaje y sus archivos adjuntos son confidenciales y están destinados exclusivamente a sus destinatarios.",
    "sig_legal_box_notice": "CONFIDENCIALIDAD: Este mensaje contiene información confidencial para uso exclusivo del destinatario.",
    "sig_booking_prompt": "📅 Reserve una cita directamente:",
    "sig_booking_btn_fallback": "Reservar cita",
    "sig_eco_planet": "🌱 <strong>Piense en el planeta:</strong> Evite imprimir este correo si no es necesario.",
    "sig_podcast_announcement": "🎧 <strong>Nuevo Podcast:</strong> ¡Escuche el último episodio semanal!",
    "sig_academic_dept_fallback": "Departamento de investigación",
    "sig_academic_company_fallback": "Universidad",
    "sig_academic_pub_label": "Publicaciones y trabajos:",
    "sig_tagline_quote_fallback": "La innovación al servicio de la simplicidad.",
    "sig_phone_office_label": "🏥 Tel Consulta:",
    "sig_phone_direct_label": "Línea directa:",
    "sig_phone_short_label": "Tel:",
    "sig_email_short_label": "Correo:",
    "sig_web_short_label": "Web:",
    "sig_reviews_google": "en Google Reviews",
    "sig_default_cta": "Reservar cita",
    "tpl_modern_name": "1. Modern Line",
    "tpl_modern_tag": "Popular",
    "tpl_modern_desc": "Diseño clásico limpio con borde lateral de color y avatar.",
    "tpl_minimal_name": "2. Minimalist Clean",
    "tpl_minimal_tag": "Limpio",
    "tpl_minimal_desc": "Tipografía ultra cuidada sin adornos ni bordes.",
    "tpl_startup_vibe_name": "3. Startup Flow",
    "tpl_startup_vibe_tag": "Startup",
    "tpl_startup_vibe_desc": "Estilo dinámico con pronombres, insignia y botones píldora.",
    "tpl_compact_one_line_name": "4. Ultra Compact",
    "tpl_compact_one_line_tag": "Compacto",
    "tpl_compact_one_line_desc": "Una sola línea horizontal concisa separada por viñetas.",
    "tpl_badge_horizontal_name": "5. Insignia certificada",
    "tpl_badge_horizontal_tag": "Insignia",
    "tpl_badge_horizontal_desc": "Encabezado con insignia de verificación profesional.",
    "tpl_creative_vertical_name": "6. Centrado vertical",
    "tpl_creative_vertical_tag": "Centrado",
    "tpl_creative_vertical_desc": "Alineación centrada elegante ideal para creativos.",
    "tpl_executive_split_name": "7. Executive Split",
    "tpl_executive_split_tag": "Negocios",
    "tpl_executive_split_desc": "Presentación en dos columnas para directivos y gerentes.",
    "tpl_corporate_navy_name": "8. Corporate Navy",
    "tpl_corporate_navy_tag": "Corporativo",
    "tpl_corporate_navy_desc": "Encabezado azul marino estructurado y muy formal.",
    "tpl_classic_name": "9. Classic Serif",
    "tpl_classic_tag": "Tradición",
    "tpl_classic_desc": "Tipografías serif tradicionales con líneas divisorias.",
    "tpl_elegant_serif_name": "10. Lujo y prestigio",
    "tpl_elegant_serif_tag": "Lujo",
    "tpl_elegant_serif_desc": "Línea dorada/bronce y tipografía de alta gama.",
    "tpl_academic_researcher_name": "11. Universidad e investigación",
    "tpl_academic_researcher_tag": "Académico",
    "tpl_academic_researcher_desc": "Títulos, departamento y publicaciones académicas.",
    "tpl_double_border_name": "12. Marco de doble línea",
    "tpl_double_border_tag": "Marco",
    "tpl_double_border_desc": "Enmarcado superior e inferior con líneas de color.",
    "tpl_tech_developer_name": "13. Tech y Dev Code",
    "tpl_tech_developer_tag": "Tech",
    "tpl_tech_developer_desc": "Estilo monoespaciado con corchetes de código <Name> y GitHub.",
    "tpl_creative_badge_name": "14. Creative Header",
    "tpl_creative_badge_tag": "Diseño",
    "tpl_creative_badge_desc": "Banner superior de color con foto y enlaces.",
    "tpl_freelance_creator_name": "15. Freelance y portfolio",
    "tpl_freelance_creator_tag": "Freelance",
    "tpl_freelance_creator_desc": "Destaca el portfolio y los canales de redes sociales.",
    "tpl_border_box_name": "16. Framed Box",
    "tpl_border_box_tag": "Enmarcado",
    "tpl_border_box_desc": "Marco redondeado estructurado con fondo suave.",
    "tpl_gradient_accent_name": "17. Gradient Pulse",
    "tpl_gradient_accent_tag": "Tendencia",
    "tpl_gradient_accent_desc": "Línea de acento en degradado moderno.",
    "tpl_sleek_dark_name": "18. Sleek Dark Card",
    "tpl_sleek_dark_tag": "Modo oscuro",
    "tpl_sleek_dark_desc": "Elegante contraste oscuro para correos modernos.",
    "tpl_sales_booking_name": "19. Sales & Calendar",
    "tpl_sales_booking_tag": "Conversión",
    "tpl_sales_booking_desc": "Recuadro de llamada a la acción para reservar citas.",
    "tpl_realtor_card_name": "20. Inmobiliaria y pro",
    "tpl_realtor_card_tag": "Inmobiliaria",
    "tpl_realtor_card_desc": "Foto de agente, número de colegiado y botón de tasación.",
    "tpl_podcast_influencer_name": "21. Medios y podcast",
    "tpl_podcast_influencer_tag": "Medios",
    "tpl_podcast_influencer_desc": "Destaca su último episodio o canal de YouTube.",
    "tpl_agency_portfolio_name": "22. Agencia digital 5★",
    "tpl_agency_portfolio_tag": "Agencia",
    "tpl_agency_portfolio_desc": "Valoración de 5 estrellas en Google Reviews y cita de clientes.",
    "tpl_banner_footer_name": "23. Banner promocional",
    "tpl_banner_footer_tag": "Promo",
    "tpl_banner_footer_desc": "Banner promocional integrado debajo de la firma.",
    "tpl_quote_banner_name": "24. Eslogan y lema",
    "tpl_quote_banner_tag": "Eslogan",
    "tpl_quote_banner_desc": "Integra una cita de empresa o eslogan inspirador.",
    "tpl_medical_pro_name": "25. Salud y médico",
    "tpl_medical_pro_tag": "Salud",
    "tpl_medical_pro_desc": "Formato de confianza para médicos, sanitarios y reservas online.",
    "tpl_legal_disclaimer_name": "26. Jurídico y bufete",
    "tpl_legal_disclaimer_tag": "Legal",
    "tpl_legal_disclaimer_desc": "Aviso de confidencialidad y cláusulas legales integradas.",
    "tpl_green_eco_name": "27. Eco-Friendly",
    "tpl_green_eco_tag": "Ecología",
    "tpl_green_eco_desc": "Compromiso ecológico con mensaje de concienciación.",
    "tpl_minimal_table_name": "28. Tabla de 2 columnas",
    "tpl_minimal_table_tag": "Estructurado",
    "tpl_minimal_table_desc": "Separación vertical entre nombre/puesto y datos de contacto.",
    "tpl_side_avatar_pill_name": "29. Avatar píldora y divisor",
    "tpl_side_avatar_pill_tag": "Perfil",
    "tpl_side_avatar_pill_desc": "Gran avatar en forma de píldora con línea divisoria vertical.",
    "tpl_social_first_name": "30. Encabezado de redes primero",
    "tpl_social_first_tag": "Social",
    "tpl_social_first_desc": "Iconos de redes sociales mostrados directamente en el encabezado.",
    "preset_ceo_job": "Fundador y CEO",
    "preset_ceo_cta": "📅 Reservar una llamada (15 min)",
    "preset_realtor_job": "Consultora inmobiliaria de lujo",
    "preset_realtor_cta": "🔑 Valorar mi inmueble gratis",
    "preset_designer_cta": "✨ Ver el portfolio 2026",
    "preset_doctor_job": "Cirujano dentista",
    "preset_doctor_company": "Clínica Dental Saint-Germain",
    "preset_doctor_credentials": "Doctor en Cirugía Dental",
    "preset_doctor_booking": "Pedir cita en línea",
    "preset_doctor_cta": "🏥 Pedir cita en Doctolib",
    "default_address": "París, Francia",
    "default_cta": "📅 reserve una cita en mi agenda",
    "default_tagline": "La innovación al servicio de la simplicidad.",
    "default_badge": "✓ Profesional verificado",
    "sig_mobile_label": "Móvil:",
    "sig_email_label": "Correo:",
    "font_clean_modern": "Moderna y limpia",
    "font_corporate_classic": "Clásica corporativa",
    "font_friendly": "Amigable",
    "font_tech_monospace": "Monoespaciada técnica",
    "font_wide_readable": "Ancha y legible"
  },
  "break-even": {
    "warning_price_higher": "Atención: El precio de venta ({{price}} {{currency}}) debe ser estrictamente superior al coste variable unitario ({{variableCost}} {{currency}}) para alcanzar el punto de equilibrio."
  },
  "json-formatter": {
    "repaired_success": "JSON reparado y formateado",
    "repair_failed": "No se pudo reparar automáticamente este JSON.",
    "enter_valid_json": "Por favor ingrese un JSON válido para ver el árbol.",
    "download_failed": "Error al descargar",
    "fix": "Corregir",
    "code": "Código",
    "tree": "Árbol",
    "valid_json_required": "Se requiere un JSON válido",
    "upload_file": "Subir archivo",
    "back_to_code": "Volver al código",
    "size": "Tamaño:",
    "x_bytes": "{{value}} bytes",
    "length": "Longitud:",
    "x_chars": "{{value}} caracteres",
    "valid_json": "JSON válido",
    "invalid_syntax": "Sintaxis no válida"
  },
  "security-headers-generator": {
    "nginx_comment": "# Cabeceras de seguridad HTTP para Nginx\n",
    "sameorigin_label": "SAMEORIGIN (iFrame solo del mismo dominio)",
    "generated_config_title": "Código de configuración generado",
    "verification_title": "Verificación Mozilla Observatory / SecurityHeaders.com",
    "verification_desc": "Añadir estas 6 cabeceras permite que su aplicación alcance una calificación A+ en escáneres de seguridad automatizados.",
    "express_comment": "// Middleware de Express.js (o utilice Helmet.js)",
    "server_format_label": "Formato de servidor / framework",
    "deny_label": "DENY (prohibir todos los iframes)"
  },
  "cron-generator": {
    "title": "Generador y probador de expresiones Cron",
    "cron_expression": "Expresión Cron",
    "copied": "¡Copiado!",
    "copy_expression": "Copiar expresión",
    "clear_fr_desc": "Descripción en lenguaje claro",
    "quick_presets": "Atajos y frecuencias comunes",
    "builder_title": "Constructor paso a paso (5 campos)",
    "minute": "Minuto (0-59)",
    "minute_hint": "Ej: *, */5, 0,30, 15",
    "hour": "Hora (0-23)",
    "hour_hint": "Ej: *, 9, */2, 9-17",
    "dom": "Día del mes (1-31)",
    "dom_hint": "Ej: *, 1, 15,30",
    "month": "Mes (1-12)",
    "month_hint": "Ej: *, 1, 1,6,12",
    "dow": "Día de la semana (0-6)",
    "dow_hint": "0=Domingo, 1-5=Lun-Vie",
    "next_executions": "Próximas ejecuciones programadas",
    "no_executions": "No se encontraron próximas ejecuciones para esta expresión.",
    "presets": {
      "every_min": "Cada minuto",
      "every_5_min": "Cada 5 minutos",
      "every_15_min": "Cada 15 minutos",
      "every_hour": "Cada hora (en punto)",
      "daily_midnight": "Todos los días a medianoche",
      "daily_8am": "Todos los días a las 8:00",
      "workdays_9am": "De lunes a viernes a las 9:00",
      "weekly_sunday": "Todos los domingos a medianoche",
      "monthly_1st": "El 1º de cada mes"
    },
    "describe_invalid": "Expresión Cron no válida (debe contener exactamente 5 campos separados por espacios).",
    "describe_every_minute": "Cada minuto",
    "describe_every_n_minutes": "Cada {{value}} minutos",
    "describe_at_minute": "En el minuto {{value}}",
    "describe_every_hour": "cada hora",
    "describe_every_n_hours": "cada {{value}} horas",
    "describe_at_hour": "a las {{value}}:00",
    "describe_every_n_days_of_month": "cada {{value}} días del mes",
    "describe_on_day_of_month": "el día {{value}} del mes",
    "describe_in_month": "en {{value}}",
    "describe_in_months_raw": "en meses ({{value}})",
    "describe_dow_0": "domingo",
    "describe_dow_1": "lunes",
    "describe_dow_2": "martes",
    "describe_dow_3": "miércoles",
    "describe_dow_4": "jueves",
    "describe_dow_5": "viernes",
    "describe_dow_6": "sábado",
    "describe_dow_1_5": "de lunes a viernes",
    "describe_dow_0_6": "el fin de semana (sábado y domingo)",
    "describe_dow_other": "el día {{value}} de la semana"
  },
  "diff-checker": {
    "title": "Comparador de texto y visor de diferencias (Diff)",
    "original_text": "Texto original",
    "modified_text": "Texto modificado",
    "ignore_spaces": "Ignorar espacios en blanco",
    "ignore_case": "Ignorar mayúsculas/minúsculas",
    "split_view": "Vista lado a lado",
    "unified_view": "Vista unificada",
    "clear_all": "Borrar todo",
    "reset_sample": "Restablecer ejemplo",
    "lines_added": "líneas añadidas",
    "lines_removed": "líneas eliminadas",
    "lines_identical": "líneas idénticas",
    "no_diff": "¡Ambos textos son completamente idénticos!",
    "placeholder_original": "Pega tu texto original aquí...",
    "placeholder_modified": "Pega tu texto modificado aquí...",
    "sample_description_v1": "Conjunto de herramientas en línea gratuitas",
    "sample_description_v2": "Herramientas y calculadoras gratuitas para desarrolladores y profesionales",
    "swap_texts": "Intercambiar textos"
  },
  "jwt-decoder": {
    "title": "Decodificador de tokens JWT (JSON Web Token)",
    "jwt_token": "Token JWT codificado",
    "placeholder_jwt": "Pega tu token JWT aquí (ej: eyJhbGciOi...)",
    "clear": "Borrar",
    "load_sample": "Ejemplo",
    "token_valid": "Estructura JWT válida (3 segmentos)",
    "token_invalid": "Token inválido",
    "header": "Encabezado (Header)",
    "payload": "Carga útil (Payload / Claims)",
    "signature": "Firma (Verificación)",
    "copy": "Copiar",
    "copied": "¡Copiado!",
    "expiration": "Expiración (exp)",
    "issued_at": "Emitido el (iat)",
    "expired": "Expirado",
    "active": "Válido y Activo",
    "signature_info": "La firma garantiza que el token no ha sido alterado. Se valida del lado del servidor con tu clave secreta o pública.",
    "security_notice": "Procesado 100% localmente en tu navegador. Ningún token ni clave se envía a nuestros servidores.",
    "format_jwt_invalide": "Formato JWT no válido. Un JWT debe contener 3 partes separadas por puntos (Encabezado.Payload.Firma).",
    "invalid_base64": "Codificación base64 no válida",
    "decode_error": "No se puede decodificar el token JWT: {{message}}",
    "structure_corrompue": "Estructura dañada.",
    "unit_days": "{{value}}d",
    "unit_hours": "{{value}}h",
    "unit_minutes": "{{value}}min",
    "algorithme": "Algoritmo",
    "inconnu": "Desconocido"
  },
  "token-counter": {
    "title": "Contador de tokens LLM y estimador de costos de API",
    "target_model": "Modelo de IA objetivo",
    "price_input": "Precio Input (Prompt):",
    "price_output": "Precio Output (Respuesta):",
    "total_tokens": "Tokens estimados",
    "characters": "Caracteres",
    "words": "Palabras",
    "lines": "Líneas",
    "est_prompt_cost": "Costo estimado de entrada",
    "est_output_cost": "Costo estimado de salida",
    "context_usage": "Uso de la ventana de contexto",
    "input_text": "Texto a analizar",
    "placeholder_text": "Pega tu prompt, documento o código aquí...",
    "copy_text": "Copiar texto",
    "copied": "¡Copiado!",
    "depending_on_model": "según el modelo elegido",
    "sample_text": "La inteligencia artificial generativa está transformando rápidamente el desarrollo de software. Los modelos de lenguaje modernos (LLM) como GPT-4o, Gemini 2.0 Flash y Claude 3.5 Sonnet permiten comprender y generar código, redactar resúmenes y automatizar tareas complejas.\n\nfunction calculateTokenCount(text: string): number {\n  // Approximate BPE tokenizer logic for Multilingual text & Code\n  const words = text.trim().split(/\\s+/).length;\n  const chars = text.length;\n  return Math.ceil(chars / 4);\n}",
    "tokens_per_word": "~{{value}} tokens/palabra",
    "spaces_included": "espacios incluidos",
    "tokens_max": "tokens máx.",
    "load_example": "Cargar un ejemplo",
    "clear": "Borrar",
    "output_cost_same_length": "Respuesta de igual longitud: {{value}}"
  },
  "hash-generator": {
    "title": "Generador de hash criptográfico y suma de verificación",
    "input_text": "Texto a codificar en hash (UTF-8)",
    "placeholder_input": "Escribe o pega el texto fuente aquí...",
    "uppercase_hashes": "Mayúsculas Hex",
    "verify_title": "Verificar y comparar un hash existente",
    "verify_placeholder": "Pega un hash para comprobar coincidencias (ej: d41d8cd98f00b204e9800998ecf8427e)...",
    "match_found": "Coincidencia exacta encontrada con el algoritmo",
    "no_match": "No se encontró coincidencia con los hashes calculados arriba.",
    "copy": "Copiar",
    "copied": "¡Copiado!",
    "sha256_recommande_standard": "SHA-256 (recomendado / estándar)",
    "sha512_securite_maximale": "SHA-512 (seguridad máxima)",
    "sha1_legacy": "SHA-1 (Legacy)",
    "md5_checksum_rapide": "MD5 (checksum rápido)",
    "calcul_en_cours": "Calculando..."
  },
  "cpf-training-budget-roi": {
    "title": "Calculadora de presupuesto de formación y rentabilidad (ROI)",
    "subtitle": "Optimice sus opciones de financiación y calcule el retorno de inversión salarial de su mejora de competencias.",
    "section_cost": "1. Coste del programa y duración",
    "input_cost": "Precio de la formación (con o sin IVA)",
    "input_exam_fee": "Tasas de examen / Certificación",
    "input_duration": "Número de horas de formación",
    "input_modality": "Modalidad horaria",
    "opt_work_hours": "En horario laboral (acuerdo con empleador)",
    "opt_off_hours": "Fuera del horario laboral (tardes / fines de semana)",
    "section_funding": "2. Financiación y ayudas disponibles",
    "input_cpf": "Saldo de cuenta de formación",
    "input_employer": "Aportación de la empresa",
    "input_opco": "Ayuda de fondos de formación",
    "input_france_travail": "Ayuda de desempleo / formación pública",
    "section_career": "3. Objetivo profesional y evolución salarial",
    "input_current_salary": "Salario bruto mensual actual",
    "input_raise": "Aumento salarial mensual objetivo",
    "card_coverage": "Balance de cobertura",
    "badge_funded": "{{percent}}% Financiado",
    "label_total_cost": "Coste global formación + examen",
    "label_total_subsidies": "Total de ayudas movilizadas",
    "label_out_of_pocket": "Coste final a cargo del empleado",
    "card_roi": "Rentabilidad de la inversión (ROI)",
    "label_net_raise_monthly": "Ganancia neta / mes",
    "label_payback": "Plazo de amortización",
    "label_immediate": "Inmediato (0€ pagados)",
    "label_months": "{{months}} meses",
    "label_net_3years": "Beneficio neto acumulado en 3 años:",
    "btn_copy_summary": "Copiar resumen financiero",
    "toast_copied": "¡Plan de financiación copiado!",
    "info_title": "Reglas de aportación al fondo de formación CPF",
    "info_rule1": "• Empleado a jornada completa: +500 €/año hasta el tope de 5 000 €.",
    "info_rule2": "• Trabajador sin cualificación: +800 €/año hasta el tope de 8 000 €.",
    "info_rule3": "• Participación fija de 150 € desde el 02/04/2026 (revalorizada cada año), salvo exención, sobre todo si la empresa completa la financiación.",
    "copy_text": "=== PLAN DE FINANCIACIÓN Y RENTABILIDAD DE LA FORMACIÓN ===\n• Coste total formación + certificación: {{totalCost}} € ({{hours}} h)\n• Financiación movilizada (CPF + aportaciones): {{subsidies}} € ({{coverage}}% cubierto)\n• Coste personal restante: {{outOfPocket}} €\n• Aumento salarial previsto: +{{grossRaise}} € brutos/mes (+{{netRaise}} € netos)\n• Plazo de recuperación de la inversión (payback): {{payback}}\n• Ganancia neta acumulada a 3 años: +{{gain3y}} €",
    "copy_payback_immediate": "Inmediato (0 € a cargo)",
    "unit_hours": "horas",
    "unit_eur_per_month": "€/mes",
    "unit_eur_gross_per_month": "€ brutos/mes",
    "unit_eur_per_hour": "€/h",
    "net_value": "+{{value}} € netos"
  },
  "ecommerce-margin-calculator": {
    "title": "Calculadora de margen y punto de equilibrio para E-Commerce",
    "subtitle": "Calcule su margen bruto y neto por unidad tras gastos de envío y publicidad (CAC), y obtenga su punto muerto y ROAS mínimo.",
    "btn_export_pdf": "Exportar PDF",
    "section_price_costs": "1. Precios y costes directos",
    "input_selling_price_ttc": "Precio de venta con IVA (€)",
    "input_vat_rate": "Tipo de IVA (%)",
    "input_purchase_price_ht": "Coste de compra sin IVA (€)",
    "input_shipping_packaging": "Envío y embalaje sin IVA (€)",
    "section_mktg_fees": "2. Pasarela de pago y captación",
    "input_payment_fee_pct": "Comisión de pasarela (%)",
    "input_payment_fee_fixed": "Comisión fija / pedido (€)",
    "input_cac": "Coste de adquisición CAC (€)",
    "section_fixed_costs": "3. Costes fijos mensuales",
    "input_fixed_costs": "Gastos fijos mensuales (€)",
    "hint_fixed_costs": "Shopify, apps SaaS, alquiler, gestoría, salarios",
    "kpi_net_profit": "Beneficio neto / pedido",
    "kpi_net_margin": "Margen neto: {{percent}}%",
    "kpi_break_even": "Punto de equilibrio",
    "kpi_break_even_unreachable": "Inalcanzable",
    "kpi_break_even_sales": "{{units}} Ventas",
    "kpi_break_even_ttc": "es decir {{amount}} € con IVA / mes",
    "kpi_multiplier": "Factor multiplicador",
    "kpi_multiplier_hint": "Precio con IVA / coste de compra",
    "kpi_roas": "ROAS mínimo de equilibrio",
    "kpi_roas_hint": "para no perder dinero en publicidad",
    "section_simulator": "Simulador de ventas mensuales y beneficio",
    "label_simulated_sales": "Volumen mensual simulado:",
    "label_sales_per_month": "{{count}} Ventas / Mes",
    "label_projected_ca": "Facturación mensual estimada",
    "label_projected_profit": "Beneficio neto mensual tras costes fijos",
    "pdf_title": "Informe de margen y punto de equilibrio e-commerce",
    "pdf_calculator_name": "Calculadora de margen e-commerce",
    "pdf_subtitle": "Cálculo de márgenes brutos y netos, coste de adquisición y umbral de rentabilidad",
    "pdf_sec_sales": "Datos de venta y costes unitarios",
    "pdf_selling_price_ttc": "Precio de venta (IVA incluido)",
    "pdf_vat_rate": "Tipo de IVA",
    "pdf_selling_price_ht": "Precio de venta (sin IVA)",
    "pdf_cogs": "Coste de compra del producto (COGS, sin IVA)",
    "pdf_shipping": "Gastos de embalaje y envío (sin IVA)",
    "pdf_tx_fees": "Comisiones de transacción bancaria",
    "pdf_cac": "Coste de adquisición de marketing (CAC)",
    "pdf_sec_unit": "Indicadores de rentabilidad por unidad",
    "pdf_gross_margin_unit": "Margen bruto por unidad (sin IVA)",
    "pdf_gross_margin_rate": "Tasa de margen bruto",
    "pdf_net_profit_unit": "Beneficio neto por unidad (sin IVA)",
    "pdf_net_margin": "Margen neto",
    "pdf_multiplier": "Coeficiente multiplicador (PVP con IVA / compra sin IVA)",
    "pdf_sec_breakeven": "Umbral de rentabilidad (Break-Even)",
    "pdf_fixed_costs": "Costes fijos mensuales",
    "pdf_sales_needed": "Ventas necesarias para el equilibrio",
    "pdf_units_per_month": "{{value}} unidades / mes",
    "pdf_ca_threshold": "Facturación umbral (IVA incluido)",
    "pdf_roas_min": "ROAS mínimo de marketing",
    "pdf_sec_simulation": "Simulación mensual ({{sales}} ventas)",
    "pdf_ca_monthly": "Facturación mensual (IVA incluido)",
    "pdf_net_monthly": "Beneficio neto mensual tras gastos",
    "pdf_note_1": "Cálculo realizado según la estructura de precios sin/con IVA y las comisiones de pago indicadas.",
    "pdf_note_2": "El ROAS mínimo es el retorno de la inversión publicitaria necesario para alcanzar el punto de equilibrio.",
    "na": "N/D",
    "ca_ttc_suffix": "{{amount}} € IVA incl.",
    "input_shipping_charged": "Envío cobrado al cliente (€)",
    "input_return_rate": "Tasa de devoluciones (%)",
    "multiplier_tier_ideal": "Ideal en e-commerce (4 o más)",
    "multiplier_tier_ok": "Correcto (de 3 a 4)",
    "multiplier_tier_low": "Bajo para absorber la publicidad (menos de 3)",
    "pdf_shipping_charged": "Envío cobrado al cliente",
    "pdf_return_cost": "Provisión por devoluciones por venta"
  },
  "expense-report-vat-deductible-generator": {
    "title": "Generador de notas de gastos e IVA deducible",
    "subtitle": "Elabore notas de gastos, calcule dietas por kilometraje y contabilice el IVA deducible de la empresa.",
    "label_employee": "Empleado",
    "label_department": "Departamento",
    "label_mission": "Motivo / Desplazamiento",
    "label_period": "Mes de referencia",
    "section_expenses": "Líneas de gasto ({{count}})",
    "btn_add_line": "Añadir gasto",
    "col_date": "Fecha",
    "col_category": "Tipo de gasto",
    "col_description": "Descripción / Concepto",
    "col_amount_ttc": "Importe con IVA (€)",
    "col_vat_rate": "IVA %",
    "col_vat_deductible": "IVA Deducible",
    "col_action": "Acción",
    "cat_meal_client": "Comida con clientes (deducible)",
    "cat_meal_solo": "Dieta comida individual",
    "cat_hotel": "Hotel / Alojamiento",
    "cat_train_flight": "Tren / Vuelo",
    "cat_taxi_uber": "Taxi / VTC",
    "cat_fuel": "Combustible",
    "cat_mileage": "Kilometraje",
    "cat_supplies": "Material / Varios",
    "badge_deductible": "✓ deducible",
    "badge_not_deductible": "No deducible",
    "total_to_reimburse": "Total a liquidar",
    "total_to_reimburse_hint": "Importe adeudado al trabajador",
    "total_deductible_vat": "IVA deducible empresa",
    "total_deductible_vat_hint": "Crédito fiscal de IVA deducible",
    "total_non_deductible_vat": "IVA no deducible",
    "total_non_deductible_vat_hint": "Exclusiones legales normativas",
    "btn_copy_expense_report": "Copiar nota de gastos y desglose de IVA",
    "toast_copied": "¡Nota de gastos y desglose copiados!",
    "default_department": "Dirección Comercial",
    "default_mission": "Feria Tecnológica de París y visitas a clientes",
    "default_period": "Marzo de 2026",
    "sample_train": "Billete de TGV Lyon - París ida y vuelta",
    "sample_lunch": "Almuerzo con cliente de la empresa ABC (2 pers.)",
    "sample_hotel": "Noche de hotel Novotel París",
    "sample_cables": "Cables HDMI y adaptador para la demo",
    "sample_mileage": "Desplazamiento a clientes en las afueras (vehículo personal 5 CV)",
    "new_expense": "Nuevo gasto",
    "export_title": "=== NOTA DE GASTOS E IVA RECUPERABLE ===",
    "export_employee": "Empleado: {{name}} ({{department}})",
    "export_mission": "Misión / Motivo: {{value}}",
    "export_period": "Período: {{value}}",
    "export_lines_heading": "DETALLE DE LAS LÍNEAS:",
    "export_line": "{{n}}. [{{date}}] {{description}} ({{category}}): {{amount}} € IVA incl. | IVA {{rate}}% (Deducible: {{deductible}})",
    "yes_upper": "SÍ",
    "no_upper": "NO",
    "export_total_reimburse": "TOTAL NETO A REEMBOLSAR AL EMPLEADO: {{value}} € IVA incl.",
    "export_total_deductible": "IVA DEDUCIBLE RECUPERABLE POR LA EMPRESA: {{value}} €",
    "export_total_non_deductible": "IVA NO RECUPERABLE (transporte/hoteles): {{value}} €",
    "unit_km": "km",
    "delete_line": "Eliminar"
  },
  "freelance-rate-calculator": {
    "title": "Calculadora de tarifa freelance y precio por valor",
    "subtitle": "Calcule su tarifa diaria mínima (TJM) y compare la facturación por horas frente a la facturación por valor.",
    "section_income_expenses": "1. Objetivos de ingresos y gastos",
    "label_net_income": "Ingresos netos anuales deseados ({{symbol}})",
    "label_taxes": "Impuestos y cargas sociales (%)",
    "label_expenses": "Gastos profesionales anuales ({{symbol}})",
    "section_time": "2. Tiempo facturable y vacaciones",
    "label_vacation": "Semanas de vacaciones / año",
    "label_billable_days": "Días facturables / semana (sin prospección)",
    "kpi_tjm": "Tarifa diaria objetivo",
    "kpi_tjm_hint": "para alcanzar sus ingresos netos deseados",
    "kpi_hourly": "Tarifa horaria mín.",
    "kpi_hourly_hint": "en base a 7h/día",
    "kpi_gross_ca": "Facturación anual requerida",
    "kpi_gross_ca_hint": "antes de costes e impuestos",
    "kpi_billable_days": "Días facturables / año",
    "kpi_billable_days_hint": "capacidad productiva anual",
    "section_value_pricing": "Simulador: Facturación por valor (Value-Based Pricing)",
    "label_client_value": "Valor / ROI generado para el cliente ({{symbol}})",
    "label_value_share": "% de valor retenido ({{percent}}%)",
    "label_value_flat_price": "Precio cerrado basado en valor:",
    "desc_value_prefix": "En un proyecto de 10 días, este importe equivale a una tarifa diaria de ",
    "desc_value_suffix": " en comparación con su tarifa mínima).",
    "value_pricing_card_title": "Simulador: Precios basados en valor (Value-Based)",
    "flat_rate_label": "Tarifa plana por valor:",
    "amount_per_day": "{{amount}} {{symbol}} / día",
    "amount_per_hour": "{{amount}} {{symbol}} / h",
    "toast_tjm_copied": "Tarifa diaria: {{amount}} {{symbol}} / día copiada.",
    "toast_hourly_copied": "Tarifa por hora: {{amount}} {{symbol}} / h copiada.",
    "toast_gross_copied": "Facturación bruta: {{amount}} {{symbol}} copiada.",
    "valeur_jours": "{{value}} días",
    "toast_days_copied": "{{value}} días facturables copiados.",
    "value_pricing_effective_tjm": "En un proyecto de 10 días, esta tarifa plana equivale a una tarifa diaria efectiva de <0>{{tjm}} {{symbol}}/día</0> (es decir, una ganancia neta de +{{gain}} {{symbol}} respecto a la tarifa diaria mínima)."
  },
  "forfait-jours-rtt-cadre-calculator": {
    "title": "Calculadora de contrato por días y días de descanso compensatorio (RTT)",
    "subtitle": "Determine los días exactos de descanso del año y valore la compensación económica de días no disfrutados.",
    "section_calendar": "1. Parámetros del calendario anual",
    "label_year": "Año de referencia",
    "opt_year": "Año {{year}}",
    "opt_year_leap": "Año {{year}} (bisiesto)",
    "label_target_days": "Días del forfait anual (218 o forfait jours reducido)",
    "label_paid_leave": "Vacaciones anuales pagadas",
    "label_public_holidays": "Festivos que caen entre semana",
    "label_seniority_leave": "Días por antigüedad o convenio",
    "label_bridge_days": "Puentes de cortesía concedidos",
    "section_buyback": "2. Simulación de liquidación / compra de días",
    "label_annual_salary": "Salario bruto anual",
    "label_rtt_to_sell": "Número de días a liquidar",
    "label_buyback_bonus": "Recargo / bonificación por compensación (%)",
    "hint_buyback_bonus": "Mínimo legal del 10% (frecuentemente 25% por convenio).",
    "card_quota": "Cuota anual de días de descanso",
    "badge_year": "Año {{year}}",
    "label_rtt_awarded": "Días asignados",
    "label_rtt_days": "días",
    "hint_rtt_formula": "Fórmula: {{total}}d - {{weekend}}d (fines de semana) - {{off}}d (vacaciones/festivos) - {{target}}d = {{rtt}}d",
    "label_ref_daily_salary": "Salario diario de referencia:",
    "label_rtt_buyback_val": "Valor de 1 día liquidado (+{{bonus}}%):",
    "label_buyback_gain": "Ganancia neta por compensación ({{days}} días)",
    "hint_tax_exempt": "Exento de IRPF dentro del límite legal aplicable",
    "btn_copy_sheet": "Copiar informe de días",
    "toast_copied": "¡Informe copiado!",
    "info_title": "Régimen de jornada por días",
    "info_text": "• El empleado con contrato por días no está sujeto a horario estricto, debiendo respetar el descanso mínimo obligatorio diario de 11 horas continuadas.",
    "copy_summary": "=== CÓMPUTO DE DÍAS ANUALES (FORFAIT JOURS) Y RTT PARA CUADROS ===\n• Año: {{year}} ({{calendar}} días naturales)\n• Días de descanso obligatorios: {{weekend}} fines de semana + {{cp}} vacaciones + {{anc}} antigüedad + {{holidays}} festivos laborables + {{bridges}} puentes\n• Días laborables potenciales sin RTT: {{working}} días\n• Objetivo contractual: {{target}} días trabajados\n• DÍAS DE RTT CONCEDIDOS: {{rtt}} días\n• Valor de 1 día de RTT recomprado (+{{bonus}} % de recargo): {{gross}} € brutos (~{{net}} € netos, exentos de impuestos)\n• Ganancia neta por la recompra de {{days}} RTT: +{{gain}} €",
    "unit_par_an": "€/año",
    "x_brut_par_jour": "{{amount}} € brutos / día",
    "x_brut": "{{amount}} € brutos",
    "plus_x_net": "+{{amount}} € netos",
    "label_partial_year": "Año incompleto en el forfait jours francés (alta o baja durante el año)",
    "label_period_start": "Fecha de alta (o 1 de enero)",
    "label_period_end": "Fecha de baja (o 31 de diciembre)",
    "label_leave_taken": "Días libres disfrutados en el periodo (vacaciones, antigüedad, puentes)",
    "hint_leave_taken": "En Francia, quien acaba de incorporarse no suele tener aún vacaciones generadas: deje 0. Para una baja, indique los días disfrutados desde el 1 de enero.",
    "label_partial_due": "Días de trabajo debidos en el periodo",
    "label_partial_rest": "Días de descanso (JNT) en el periodo",
    "hint_partial_formula": "Días debidos: {{workable}} días laborables ({{days}} d − {{weekend}} d de fin de semana − {{holidays}} festivos) − {{leave}} d de vacaciones − {{rest}} JNT = {{due}} días",
    "hint_partial_rest": "JNT del periodo: {{jnt}} JNT anuales × {{days}} ÷ {{total}} días = {{raw}}, redondeado a {{rest}}",
    "partial_method_title": "Método aplicado e hipótesis",
    "partial_method_text": "No existe una fórmula legal: en Francia, el Código de Trabajo (art. L3121-64) deja al convenio colectivo el tratamiento de las altas y bajas durante el periodo. La herramienta aplica un método habitual descrito por Legisocial (2015, actualizado en 2017): los JNT del año completo se prorratean según el tiempo de presencia en días naturales y se redondean al entero más próximo. Los festivos franceses que caen entre semana en el periodo se cuentan según el calendario, lunes de Pentecostés incluido.",
    "partial_alt_method": "Otro método publicado (convenio colectivo francés de operadores de viajes, art. 26.8, pensado para las altas): forfait × días de presencia ÷ 365 = {{target}} × {{days}} ÷ 365 = {{value}} días. Supone vacaciones generadas a prorrata, por lo que da menos días que esta herramienta para quien aún no tiene vacaciones.",
    "label_full_year_rtt": "JNT del año completo (para comparar)",
    "label_reduced": "Forfait jours reducido:",
    "hint_reduced": "{{target}} días trabajados, es decir, el {{pct}} % de un forfait de 218 días. Días de descanso (JNT): {{rtt}}, de los cuales {{extra}} se deben a la reducción del forfait."
  },
  "pto-accrual-paid-leave-calculator": {
    "title": "Calculadora de Vacaciones Pagadas & Días de Descanso",
    "subtitle": "Devengo, saldo restante e indemnización compensatoria de fin de contrato",
    "section_method": "Método de devengo y antigüedad",
    "opt_french_business": "Días laborables (Francia)",
    "opt_french_business_desc": "2,08 d / mes (25 d/año)",
    "opt_french_working": "Días hábiles (Francia)",
    "opt_french_working_desc": "2,50 d / mes (30 d/año)",
    "opt_custom_annual": "Plan anual personalizado",
    "opt_custom_annual_desc": "X días / año proporcional",
    "opt_us_hours": "Por horas PTO (EE.UU./Intl)",
    "opt_us_hours_desc": "Devengo por hora trabajada",
    "label_custom_annual_days": "Derecho anual total contractual (días)",
    "label_hours_worked": "Horas trabajadas en el período",
    "label_accrual_rate": "Tasa PTO por hora (ej: 0.0577)",
    "label_months_worked": "Meses trabajados en el período (1-12)",
    "label_days_taken": "Días ya disfrutados",
    "label_seniority_bonus": "Días extras por antigüedad",
    "label_rollover": "Días arrastrados de N-1",
    "section_rtt_salary": "Descanso compensatorio & salario bruto",
    "label_rtt_active": "Acuerdo de descanso activo (> 35h/sem)",
    "label_rtt_active_sub": "Generación automática de días de descanso",
    "label_weekly_hours": "Jornada semanal real (ej: 37.5h)",
    "label_rtt_taken": "Días de descanso ya disfrutados",
    "label_monthly_gross_salary": "Salario mensual bruto (€)",
    "label_annual_gross_bonus": "Primas y variables anuales (€)",
    "hero_available_balance": "Saldo Disponible",
    "card_vacation_remaining": "Vacaciones pendientes",
    "unit_days": "d",
    "unit_days_full": "días",
    "card_vacation_taken_meta": "De {{total}} d devengados ({{taken}} d disfrutados)",
    "card_rtt_remaining": "Saldo descanso restante",
    "card_rtt_meta": "Total anual estimado: ~{{annual}} d/año",
    "banner_total_pool": "TOTAL DÍAS DISPONIBLES (VACACIONES + DESCANSO)",
    "banner_working_days": "{{days}} días laborables",
    "btn_copy_summary": "Copiar Resumen",
    "toast_copied": "¡Resumen copiado al portapapeles!",
    "section_indemnity": "Indemnización compensatoria (Liquidación final)",
    "badge_legal": "Legal Francia / UE",
    "desc_indemnity": "En caso de finalización de contrato o renuncia, el empleador debe aplicar obligatoriamente el método más favorable para el trabajador.",
    "rule_maintenance_title": "1. Regla de mantenimiento de sueldo",
    "rule_maintenance_desc": "~{{daily}} € bruto por día de vacaciones",
    "rule_tenth_title": "2. Regla del 1/10 total bruto",
    "rule_tenth_desc": "10% de los salarios brutos + primas devengadas",
    "rule_best_title": "Importe legal a abonar ({{favorable}})",
    "gross_suffix": "bruto",
    "rule_tenth_name": "Regla del 1/10",
    "rule_maintenance_name": "Mantenimiento de sueldo",
    "copy_severance_snippet": "{{amount}} € bruto por {{days}} días de vacaciones pendientes",
    "hero_rate_business": "2,08 días laborables / mes",
    "hero_rate_working": "2,50 días hábiles / mes",
    "hero_rate_custom": "{{rate}} días / mes",
    "hero_rate_hours": "{{rate}}h por hora trabajada",
    "export_summary": "=== SIMULACIÓN DE VACACIONES PAGADAS Y RTT (KRISTOOLS) ===\nFecha: {{date}}\nModo: {{mode}}\nSalario bruto mensual: {{salary}} €\nMeses trabajados: {{months}} meses\n\n--- SALDO DE VACACIONES ---\nVacaciones devengadas: {{accrued}} d\nDías por antigüedad: {{seniority}} d\nSaldo trasladado: {{rollover}} d\nDías ya disfrutados: {{taken}} d\nSALDO RESTANTE ACTUAL: {{remaining}} días\n\n--- RTT (35h-39h) ---\nRTT acumulados: {{rttAccrued}} d (Disfrutados: {{rttTaken}} d)\nSaldo de RTT restante: {{rttRemaining}} días\n\n--- INDEMNIZACIÓN COMPENSATORIA (FINIQUITO) ---\nValor por mantenimiento del salario: {{maintenance}} €\nValor por la regla de 1/10: {{tenth}} €\nImporte legal más favorable: {{best}} € ({{favorable}})"
  },
  "remote-work-allowance-expenses-calculator": {
    "title": "Calculadora de Gastos de Teletrabajo & Dietas",
    "subtitle": "Calcule sus indemnizaciones a tanto alzado, gastos reales en el hogar y ahorros de transporte.",
    "section_schedule": "1. Ritmo de teletrabajo e indemnización de empresa",
    "label_telework_days": "Días teletrabajados / semana",
    "opt_day_1": "1 día / semana",
    "opt_day_2": "2 días / semana",
    "opt_day_3": "3 días / semana",
    "opt_day_4": "4 días / semana",
    "opt_day_5": "100% Remoto total (5d)",
    "label_weeks_worked": "Semanas trabajadas / año",
    "unit_weeks": "semanas",
    "label_allowance_type": "Tipo de compensación de la empresa",
    "opt_urssaf_standard": "Baremo estándar (2,70€/d)",
    "opt_custom_rate": "Convenio / Tarifa fija",
    "opt_no_allowance": "Sin indemnización",
    "label_custom_allowance": "Compensación mensual de la empresa",
    "unit_per_month": "€/mes",
    "unit_per_year": "€/año",
    "unit_per_day": "€/día",
    "section_real_expenses": "2. Gastos reales en casa (superficie y energía)",
    "label_total_home_area": "Superficie total de la vivienda",
    "unit_m2": "m²",
    "label_office_area": "Superficie espacio de trabajo",
    "label_rent_interest": "Alquiler o intereses hipotecarios / mes",
    "label_energy_heating": "Electricidad / gas / calefacción",
    "label_internet_phone": "Fibra internet / Telefonía",
    "label_equipment_amortized": "Material amortizado / año (silla, pantalla...)",
    "section_savings": "3. Ahorro en desplazamientos y comidas",
    "label_commute_saved": "Gasto de transporte evitado / día teletrabajado",
    "label_lunch_saved": "Ahorro comida casera vs restaurante / día",
    "hero_net_balance": "Balance Financiero Anual",
    "hero_badge_days": "{{days}} días de teletrabajo / año",
    "label_annual_allowance_received": "Compensación empresarial recibida",
    "meta_allowance_exempt": "es decir, {{monthly}} € / mes (exento de impuestos)",
    "label_home_overhead_cost": "Sobrecoste real del hogar (proporcional)",
    "meta_home_overhead": "es decir, ~{{monthly}} € / mes",
    "label_savings_commute_lunch": "Ahorro en traslados y comidas fuera",
    "label_net_gain_in_pocket": "Ganancia neta en su bolsillo",
    "label_per_month": "Por mes",
    "btn_copy_summary": "Copiar Resumen",
    "toast_copied": "¡Resumen de teletrabajo copiado al portapapeles!",
    "section_breakdown_title": "Detalle de Gastos Reales en el Hogar ({{surface}}% superficie)",
    "label_rent_insurance_share": "Parte proporcional Alquiler / Seguro",
    "label_energy_share": "Electricidad / Calefacción",
    "label_internet_share": "Internet / Telefonía profesional (50%)",
    "label_equipment_share": "Amortización de equipos informáticos",
    "label_total_real_annual": "Total gastos reales deducibles",
    "badge_tax_advice": "Recomendación Fiscal",
    "rec_real_advantageous": "La deducción de gastos reales es más ventajosa que la tarifa fija",
    "rec_standard_sufficient": "La opción de compensación estándar es suficiente",
    "tax_explanation": "Si sus gastos reales de teletrabajo superan la deducción estándar o la compensación fija, le conviene optar por la deducción de gastos reales en su declaración de la renta.",
    "copy_summary_text": "=== RESUMEN DE GASTOS E INDEMNIZACIONES DE TELETRABAJO ===\n• Ritmo: {{daysWeek}} días/semana ({{daysYear}} días/año)\n• Indemnización anual de la empresa (URSSAF): {{allowanceYear}} € ({{allowanceMonth}} €/mes)\n• Gastos reales estimados en el domicilio (calefacción, electricidad, alquiler, internet): {{expensesYear}} €/año ({{expensesMonth}} €/mes)\n• Ahorro en desplazamientos y comidas: +{{savings}} €/año\n• Balance neto para el empleado: +{{net}} €/año"
  },
  "work-accident-sick-leave-salary-simulator": {
    "title": "Simulador de baja médica y accidente de trabajo en Francia: IJSS y complemento salarial",
    "subtitle": "Calcule sus indemnizaciones diarias de la Seguridad Social francesa (IJSS) y el complemento del empleador, legal o según su convenio.",
    "section_absence": "1. Motivo y duración de la baja",
    "label_absence_reason": "Causa médica de la baja",
    "opt_maladie_ordinaire": "Enfermedad común (3 días de carencia)",
    "opt_accident_travail": "Accidente de trabajo (sin carencia)",
    "opt_accident_trajet": "Accidente in itinere (sin carencia CPAM)",
    "opt_maladie_professionnelle": "Enfermedad profesional reconocida (sin carencia)",
    "label_monthly_gross_salary": "Salario mensual bruto habitual",
    "unit_per_month": "€/mes",
    "label_stop_duration": "Duración total de la baja",
    "unit_days": "días",
    "section_seniority_rule": "2. Antigüedad y Convenio Colectivo",
    "label_seniority_years": "Antigüedad en la empresa",
    "unit_years": "años",
    "label_maintenance_rule": "Régimen de complemento de la empresa",
    "opt_code_travail": "Código laboral francés (90 % y luego dos tercios)",
    "opt_syntec": "Convenio Syntec (art. 9.2: desde el 1.er día, 90 días máx.)",
    "label_syntec_category": "Categoría Syntec",
    "opt_syntec_etam": "ETAM (empleados, técnicos, mandos intermedios)",
    "opt_syntec_ic": "Ingenieros y directivos (IC)",
    "note_syntec": "Artículo 9.2: mantenimiento desde el primer día de ausencia, 90 días como máximo en 12 meses, sin superar el salario neto habitual; si el complemento legal es mayor, se aplica este. El texto verificado no lo precisa, así que la herramienta supone: un año de antigüedad exigido en accidente in itinere, y el primer tramo con menos de un año en accidente de trabajo o enfermedad profesional.",
    "opt_custom_100": "Mantenimiento 100% íntegro (mutua/seguro)",
    "warn_no_seniority": "Menos de 1 año de antigüedad: sin complemento salarial patronal obligatorio legal (únicamente prestaciones de la seguridad social, salvo convenio más favorable).",
    "hero_retention_rate": "Tasa de mantenimiento",
    "hero_retention_badge": "{{rate}}% de los ingresos",
    "label_total_net_received": "Total neto percibido durante la baja",
    "meta_normal_net": "(Salario neto normal en el período: {{amount}} €)",
    "label_ijss_net": "Prestación Seguridad Social (neto):",
    "label_employer_complement_net": "Complemento de la empresa (neto est.):",
    "label_net_salary_loss": "Pérdida neta de salario:",
    "label_no_loss": "0 €",
    "btn_copy": "Copiar simulación de baja",
    "toast_copied": "¡Simulación de baja médica copiada!",
    "section_carence_title": "Reglas de carencia y pago delegado",
    "desc_carence_cpam": "Carencia: 3 días en enfermedad común, 0 días en caso de accidente laboral o enfermedad profesional.",
    "desc_subrogation": "Pago delegado: si su empresa aplica pago delegado, percibe directamente la prestación pública y le abona su nómina complementada sin cortes.",
    "copy_summary": "=== SIMULACIÓN DE BAJA POR ENFERMEDAD E INDEMNIZACIONES ===\n• Motivo: {{reason}} ({{days}} días de baja)\n• Salario bruto mensual: {{monthly}} € ({{daily}} €/día)\n• Días de carencia CPAM: {{waitingDays}} d | Días indemnizados CPAM: {{paidDays}} d\n• Subsidio de la Seguridad Social (IJSS, bruto): {{ijssGross}} € (neto: {{ijssNet}} €)\n• Mantenimiento de salario por el empleador: {{employer}} €\n• Total neto percibido durante la baja: {{totalNet}} € (mantenimiento del {{retention}}%)\n• Pérdida neta estimada: {{loss}}",
    "copy_no_loss": "0 € (mantenimiento íntegro)",
    "label_at_date": "Fecha del accidente o de la enfermedad profesional",
    "opt_at_before_nov2026": "Antes del 1 de noviembre de 2026 (salario diario con tope de 400,82 €)",
    "opt_at_from_nov2026": "Desde el 1 de noviembre de 2026 (salario diario con tope de 108,62 €)",
    "hint_at_date": "Por defecto, la herramienta supone un accidente ocurrido desde el 1 de noviembre de 2026 (decreto 2026-909). Para un accidente anterior, elija «antes»: el salario diario tiene entonces un tope de 400,82 € en lugar de 108,62 €, lo que solo cambia el resultado con salarios altos.",
    "notice_salary_clamped": "Salario negativo: el cálculo toma 0 €.",
    "notice_days_clamped": "El cálculo toma {{days}} días: la duración se redondea al día entero, entre 0 y 365.",
    "label_daily_allowance": "Indemnización diaria bruta (Seguridad Social):",
    "value_daily_allowance": "{{amount}} €/día",
    "value_daily_allowance_atmp": "{{first}} €/día, luego {{later}} € desde el día 29",
    "label_past_days": "Días ya pagados por el empleador en los últimos 12 meses",
    "hint_past_days": "Acortan el complemento legal (artículo D1226-4 del Código de Trabajo francés) y los 90 días de Syntec. La herramienta los descuenta primero del periodo mejor pagado.",
    "label_contribution_rate": "Cotizaciones salariales (% del bruto)",
    "hint_contribution_rate": "22 % por defecto, una aproximación para un trabajador no directivo. Un directivo (cadre) suele tener un tipo más alto: tome el de su nómina (total de cotizaciones salariales ÷ salario bruto).",
    "days_summary": "Detalle día a día",
    "col_day": "Día",
    "col_ij": "IJ bruta",
    "col_employer": "Complemento bruto",
    "col_net": "Neto del día",
    "mark_ss_start": "Seguridad Social: fin de la carencia, indemnización pagada",
    "mark_ij_80": "Seguridad Social: día 29, paso al 80 %",
    "mark_legal_90": "Código de Trabajo: fin de la carencia, complemento al 90 %",
    "mark_legal_23": "Código de Trabajo: complemento a dos tercios",
    "mark_legal_end": "Código de Trabajo: fin del complemento",
    "mark_conv_100": "Mantenimiento al 100 %: inicio",
    "mark_conv_80": "Syntec: mantenimiento al 80 %",
    "mark_conv_end": "Syntec: fin de los 90 días por 12 meses"
  },
  "job-interview-scorecard-matrix": {
    "title": "Matriz de Evaluación de Entrevista de Selección",
    "subtitle": "Scorecard objetiva con criterios ponderados, notas cualitativas, control de presupuesto y resumen para ATS.",
    "label_candidate": "Candidato(a)",
    "label_job_title": "Puesto / Cargo",
    "label_interview_stage": "Fase de entrevista",
    "section_criteria": "Evaluación de criterios (escala 1 a 5)",
    "badge_coeff": "Peso x{{weight}}",
    "placeholder_notes": "Observaciones / ejemplos del candidato...",
    "section_flags": "Puntos clave y señales",
    "label_green_flags": "Green Flags (Puntos fuertes clave)",
    "label_red_flags": "Red Flags / Dudas a clarificar",
    "hero_title": "Scorecard Ejecutiva",
    "label_overall_score": "Nota global ponderada",
    "label_candidate_salary": "Expectativas salariales candidato",
    "label_budget_max": "Presupuesto previsto del puesto",
    "unit_k_euro_year": "k€ / año",
    "label_budget_status": "Estado presupuestario:",
    "budget_in": "✓ En presupuesto (+{{delta}}k€ margen)",
    "budget_out": "⚠️ Supera el presupuesto en {{delta}}k€",
    "btn_copy_ats": "Copiar resumen para el ATS",
    "toast_copied": "¡Matriz de evaluación copiada!",
    "rec_strong_hire": "CONTRATACIÓN MUY RECOMENDADA (Strong Hire)",
    "rec_hire": "OPINIÓN FAVORABLE (Hire)",
    "rec_lean_hire": "CON RESERVAS / POR CONFIRMAR (Lean Hire)",
    "rec_no_hire": "DESFAVORABLE (No Hire)",
    "crit_c1_category": "Competencias técnicas",
    "crit_c1_label": "Experiencia técnica y conocimiento del área",
    "crit_c2_category": "Competencias técnicas",
    "crit_c2_label": "Resolución de problemas y pensamiento crítico",
    "crit_c3_category": "Soft Skills",
    "crit_c3_label": "Comunicación, escucha activa y claridad sintética",
    "crit_c4_category": "Cultura y Valores",
    "crit_c4_label": "Alineamiento con el equipo y colaboración",
    "crit_c5_category": "Motivación",
    "crit_c5_label": "Motivación por el puesto y visión de la empresa",
    "demo_job_title": "Senior Product Manager",
    "demo_interview_stage": "Entrevista técnica y de encaje cultural",
    "demo_green_flags": "Excelente claridad de comunicación, experiencia práctica en product discovery y orientación a métricas.",
    "demo_red_flags": "Poca experiencia con nuestro stack analítico específico (Mixpanel).",
    "demo_c1_notes": "Buen dominio metodológico y una visión de producto estructurada.",
    "demo_c2_notes": "Excelente capacidad de descomposición durante el caso práctico.",
    "demo_c3_notes": "Muy didáctico, capaz de explicar con sencillez asuntos complejos.",
    "demo_c4_notes": "Fuerte espíritu de equipo, humildad y orientación al feedback.",
    "demo_c5_notes": "Probó nuestro producto antes de la entrevista y planteó 3 sugerencias pertinentes.",
    "copy_summary": "=== BALANCE DE LA ENTREVISTA DE SELECCIÓN ===\nCandidato/a: {{candidate}}\nPuesto: {{job}} ({{stage}})\nPuntuación global ponderada: {{score}}/5 ({{score100}}/100)\nDECISIÓN / RECOMENDACIÓN: {{recommendation}}\nExpectativas salariales: {{salary}}k€ (Presupuesto máx.: {{budget}}k€ -> {{budgetStatus}})\n\nPUNTOS FUERTES (GREEN FLAGS):\n- {{green}}\n\nPUNTOS DE ATENCIÓN (RED FLAGS):\n- {{red}}\n\nDETALLE DE LOS CRITERIOS EVALUADOS:",
    "copy_budget_ok": "dentro del presupuesto",
    "copy_budget_over": "FUERA DE PRESUPUESTO",
    "copy_criterion": "• {{label}} (Peso x{{weight}}): {{score}}/5 - \"{{notes}}\""
  },
  "meeting-minutes-raci-action-generator": {
    "title": "Generador de Actas de Reunión y Plan de Acción RACI",
    "desc": "Estructure sus decisiones y asigne responsabilidades claramente (RACI: Realiza, Aprueba, Consultado, Informado).",
    "toast_copied": "¡Acta y plan RACI copiados en Markdown!",
    "label_meeting_title": "Título de la reunión",
    "label_attendees": "Asistentes presentes",
    "label_agenda": "Puntos tratados (orden del día)",
    "label_decisions": "Decisiones acordadas y arbitrajes",
    "raci_legend": "R: Realiza | A: Aprueba | C: Consultado | I: Informado",
    "col_priority": "Prioridad",
    "col_task": "Tarea a realizar",
    "col_r": "R (Realiza)",
    "col_c": "C (Consultado)",
    "col_i": "I (Informado)",
    "col_deadline": "Fecha límite",
    "default_meeting_title": "Comité de dirección (COPIL) rediseño del e-commerce",
    "default_attendees": "Claire (Directora de Proyectos), Maxime (Lead Dev), Antoine (PO), Sarah (UX)",
    "default_agenda": "1. Balance del avance del sprint 2\n2. Elección de la pasarela de pago (Stripe vs Adyen)\n3. Validación del calendario de puesta en producción",
    "default_decisions": "• Stripe elegido para la fase 1 (integración nativa más rápida).\n• Fecha de puesta en producción fijada el 18 de mayo de 2026, sujeta a la prueba de carga.",
    "action1_task": "Finalizar la maqueta del checkout y el flujo 3D Secure",
    "action2_task": "Crear la cuenta de prueba sandbox de Stripe y configurar los webhooks",
    "action3_task": "Redactar el protocolo de pruebas de aceptación de usuario (UAT)",
    "person_claire": "Claire (Directora)",
    "team_tech": "Equipo técnico",
    "team_support": "Atención al cliente",
    "team_direction": "Dirección",
    "new_task": "Nueva tarea de acción",
    "new_responsible": "Responsable",
    "new_accountable": "Aprobador",
    "new_consulted": "Consultado",
    "new_informed": "Informado",
    "md_title": "# Acta de reunión: {{value}}",
    "md_date": "**Fecha:** {{value}}",
    "md_attendees": "**Participantes:** {{value}}",
    "md_agenda": "## 🎯 Orden del día",
    "md_decisions": "## 💡 Decisiones clave adoptadas",
    "md_plan": "## 📋 Plan de acción y matriz RACI",
    "md_table_header": "| Prioridad | Tarea | R (Responsable) | A (Aprueba) | C (Consultado) | I (Informado) | Fecha límite |",
    "date": "Fecha",
    "matrice_d_action_raci": "Matriz de acción RACI ({{value}} tareas)",
    "ajouter_une_action": "Añadir una acción",
    "col_a": "A (Aprueba)",
    "col_action": "Acción",
    "copier_le_compte_rendu_complet": "Copiar el acta completa (formato Markdown / Notion / correo)"
  },
  "project-cost-variance-eac-calculator": {
    "title": "Calculadora de Desviación Presupuestaria y Costes (EAC / CPI)",
    "desc": "Método Earned Value Management (EVM) para anticipar el coste final total.",
    "label_bac": "Presupuesto total asignado (BAC)",
    "label_ac": "Gastos reales incurridos (AC)",
    "label_pv": "Avance planificado teórico",
    "label_ev": "Avance real entregado",
    "badge_projection": "Proyección de coste final",
    "label_eac": "Coste estimado al término (EAC)",
    "variance_label": "Desviación presupuestaria proyectada:",
    "etc_label": "Resto necesario para terminar (ETC):",
    "spi_label": "Índice de plazos (SPI):",
    "card_info_title": "Interpretación de los Índices EVM",
    "spi_explanation": "El ritmo de entrega es inferior al cronograma teórico.",
    "nom_projet_defaut": "Rediseño del CRM y migración a la nube",
    "copy_title": "=== ANÁLISIS EVM Y DESVIACIÓN PRESUPUESTARIA DEL PROYECTO ===",
    "copy_project": "Proyecto: {{name}}",
    "copy_bac": "• Presupuesto total inicial (BAC): {{amount}}",
    "copy_ac": "• Gasto real a la fecha (AC): {{amount}}",
    "copy_ev": "• Valor ganado / entregado (EV): {{amount}} ({{actual}} % real vs {{planned}} % previsto)",
    "copy_cpi": "• Índice de rendimiento de coste (CPI): {{cpi}} ({{status}})",
    "cpi_over": "Sobrecoste respecto al entregable",
    "cpi_ok": "Conforme",
    "copy_spi": "• Índice de rendimiento de plazos (SPI): {{spi}} ({{status}})",
    "spi_late": "Retraso en el calendario",
    "spi_ok": "En plazo",
    "copy_eac": "• ESTIMACIÓN DEL COSTE FINAL A LA ENTREGA (EAC): {{amount}}",
    "copy_vac": "• SOBRECOSTE PRESUPUESTARIO PROYECTADO (VAC): {{result}}",
    "vac_over": "-{{amount}} de sobrecoste",
    "vac_saving": "+{{amount}} de ahorro",
    "copy_etc": "• Presupuesto restante necesario (ETC): {{amount}}",
    "toast_copie": "¡Informe de análisis presupuestario EVM copiado!",
    "donnees_projet_depenses": "1. Datos del proyecto y gastos",
    "nom_du_projet": "Nombre del proyecto",
    "unit_depenses": "€ gastados",
    "cpi_x": "CPI: {{value}}",
    "budget_initial_prevu": "Presupuesto inicial previsto: {{amount}}",
    "spi_x_statut": "{{spi}} ({{status}})",
    "spi_status_late": "Con retraso",
    "copier_fiche_evm": "Copiar la ficha de análisis EVM",
    "cpi_lt_1_explication": ": por cada euro gastado, solo produce {{cents}} céntimos de valor real."
  },
  "team-capacity-sprint-velocity-planner": {
    "toast_copied": "¡Plan de capacidad del sprint copiado!",
    "title": "Calculadora de Capacidad de Equipo y Velocidad de Sprint",
    "desc": "Dimensione con precisión el compromiso de su backlog.",
    "label_sprint_name": "Nombre del sprint",
    "label_sprint_duration": "Duración del sprint",
    "unit_weeks": "semanas",
    "label_focus_factor": "Factor de foco real",
    "th_member_role": "Miembro / rol",
    "th_working_days": "Días laborables",
    "th_pto_days": "Vacaciones (d)",
    "th_daily_hours": "Horas/día",
    "th_meetings_day": "Reuniones/día",
    "th_focus_hours": "Horas de foco",
    "th_action": "Acción",
    "badge_recommended_capacity": "Capacidad recomendada",
    "label_target_velocity": "Velocidad objetivo estimada",
    "sp_suffix": "Story Points",
    "label_planned_points": "Puntos previstos en backlog",
    "new_developer": "Nuevo desarrollador",
    "status_overcommitted": "⚠️ SOBRECOMPROMISO ARRIESGADO",
    "status_undercapacity": "ℹ️ Capacidad infrautilizada",
    "status_healthy": "✓ COMPROMISO SANO Y REALISTA",
    "copy_note": "=== CAPACIDAD DEL EQUIPO Y VELOCIDAD DEL SPRINT ===\nSprint: {{sprint}} ({{weeks}} semanas - {{members}} miembros)\nHoras brutas: {{gross}} h | Reuniones y ceremonias: {{meetings}} h\nHoras netas de producción (Focus {{focus}}%): {{productive}} h\nCAPACIDAD REAL EN STORY POINTS: {{capacity}} SP (Ratio 1 SP = {{ratio}} h)\nCompromisos previstos en el sprint backlog: {{planned}} SP ({{percent}}% de la capacidad)\nEstado: {{status}}",
    "label_historical_ratio": "Ratio histórico (h / SP)",
    "team_members": "Miembros del equipo ({{value}})",
    "add_member": "Añadir un miembro",
    "hours_short": "{{value}} h",
    "focus_hours_total": "{{value}} h de foco",
    "commitment_load": "Carga de compromiso:",
    "msg_overcommitted": "⚠️ atención: supera la capacidad del equipo. Riesgo de deuda técnica o de fracaso del release.",
    "msg_realistic": "✓ compromiso realista: la carga prevista se ajusta al tiempo de desarrollo efectivo.",
    "copy_capacity_note": "Copiar la nota de capacidad"
  },
  "saas-metrics-churn-ltv-cac-payback": {
    "toast_copied": "¡Métricas SaaS y unit economics copiadas!",
    "title": "Calculadora de Métricas SaaS (LTV, CAC, Churn, Payback)",
    "desc": "Evalúe la viabilidad de su modelo SaaS o suscripción.",
    "mrr_label": "MRR (Ingresos Recurrentes Mensuales)",
    "sales_marketing_label": "Gastos de Ventas y Marketing / mes",
    "badge_health": "Salud de Unit Economics",
    "arr_label": "Ingresos Recurrentes Anuales (ARR)",
    "cac_label": "Coste de Adquisición (CAC):",
    "payback_label": "Plazo de Payback CAC:",
    "rule_ltv_cac": "Regla de oro de rentabilidad de una empresa SaaS.",
    "rule_payback": "Permite reinvertir el flujo de caja rápidamente en el crecimiento.",
    "copy_summary": "=== PANEL DE MÉTRICAS SAAS Y UNIT ECONOMICS ===\n• MRR: {{mrr}} € | ARR: {{arr}} €\n• ARPU (ingreso medio / cliente / mes): {{arpu}} €\n• Churn mensual: {{churn}}% (vida media del cliente: {{lifetime}} meses)\n• LTV (Customer Lifetime Value): {{ltv}} €\n• CAC (Coste de Adquisición de Cliente): {{cac}} €\n• RATIO LTV / CAC: {{ratio}}x ({{ratioStatus}})\n• CAC PAYBACK: {{payback}} meses ({{paybackStatus}})\n• QUICK RATIO SAAS: {{quick}}x ({{quickStatus}})",
    "copy_ratio_good": "✓ Excelente, >3x",
    "copy_ratio_bad": "⚠️ Bajo, <3x",
    "copy_payback_good": "✓ recuperado en menos de 1 año",
    "copy_payback_bad": "⚠️ rentabilidad lenta",
    "copy_quick_good": "✓ Hipercrecimiento saludable",
    "copy_quick_avg": "Medio",
    "s1_revenus_clients_actuels": "1. Ingresos y clientes actuales",
    "nombre_de_clients_actifs": "Número de clientes activos",
    "taux_d_attrition_churn_mensuel": "Tasa de abandono / Churn mensual",
    "marge_brute_gross_margin": "Margen bruto (Gross Margin)",
    "s2_acquisition_expansion": "2. Adquisición y expansión",
    "nouveaux_clients_acquis_mois": "Nuevos clientes adquiridos / mes",
    "expansion_mrr_mensuelle": "MRR de expansión mensual",
    "contraction_mrr_mensuelle": "MRR de contracción mensual",
    "unit_eur_per_month": "€/mes",
    "unit_customers": "clientes",
    "ratio_value": "Ratio: {{value}}x",
    "arr_per_year": "{{value}} € / año",
    "arpu_moyen_per_month": "ARPU medio: {{value}} € / mes",
    "valeur_vie_client_ltv": "Valor del tiempo de vida del cliente (LTV):",
    "months_value": "{{value}} meses",
    "quick_ratio_saas": "Quick Ratio SaaS:",
    "copier_les_metriques_saas": "Copiar las métricas SaaS",
    "standards_vc_b2b_saas": "Estándares VC y SaaS B2B",
    "payback_12_mois": "Payback ≤ 12 meses",
    "customer_lifetime_label": "Vida media de un cliente",
    "ratio_diagnosis": "Diagnóstico de la ratio LTV/CAC: {{label}}",
    "tier_exceptional": "excepcional (4 o más)",
    "tier_optimal": "óptima (de 3 a 4)",
    "tier_average": "media (de 1,5 a 3)",
    "tier_danger": "peligrosa (menos de 1,5)",
    "advice_exceptional": "Su modelo es muy rentable. Probablemente puede acelerar sus inversiones de marketing para ganar cuota de mercado.",
    "advice_optimal": "Ratio ideal para un SaaS: su adquisición de clientes es eficaz y financieramente sostenible.",
    "advice_average": "Rendimiento aceptable pero mejorable. Intente reducir su CAC o mejorar la retención (menos churn).",
    "advice_danger": "Gasta demasiado en captar cada cliente en relación con el valor que genera: riesgo financiero importante."
  },
  "cold-email-deliverability-roi-calculator": {
    "toast_copied": "¡Simulación de prospección cold email copiada!",
    "desc": "Modele su embudo de prospección saliente (entregabilidad, respuestas, reuniones, cierres).",
    "deliverability_rate": "Tasa de entregabilidad estimada",
    "reply_rate": "Tasa media de respuesta",
    "meeting_conversion_rate": "Conversión de reuniones / respuesta",
    "showup_rate": "Tasa de asistencia a la llamada (Show-up)",
    "tools_budget": "Presupuesto mensual de herramientas",
    "roi_badge": "Rentabilidad Saliente",
    "revenue_signed": "Facturación Cerrada / mes",
    "demos_held": "Demostraciones cualificadas realizadas:",
    "cac_per_demo": "Coste de adquisición por reunión:",
    "net_profit_tools": "Beneficio neto tras herramientas:",
    "deliverability_best_practices": "Buenas prácticas de entregabilidad",
    "deliverability_rule_inbox": "• No supere de 30 a 40 emails por cuenta al día para proteger la reputación del dominio.",
    "copy_summary": "=== EMBUDO DE PROSPECCIÓN POR COLD EMAIL Y ROI ===\n• Volumen enviado / mes: {{volume}} emails (Entregabilidad: {{deliverability}}%)\n• Tasa de apertura: {{openRate}}% ({{opened}} abiertos)\n• Tasa de respuesta: {{replyRate}}% ({{replies}} respuestas generadas)\n• Reuniones cualificadas realizadas: {{demos}} demos / mes\n• Nuevos contratos firmados: {{deals}} clientes / mes\n• INGRESOS GENERADOS: {{revenue}} € / mes (Valor medio: {{dealValue}} €)\n• Coste mensual de las herramientas: {{toolCost}} €\n• RETORNO DE LA INVERSIÓN (ROI): {{roi}}x (+{{margin}} € de margen neto)\n• Coste de adquisición / contrato (CAC de herramientas): {{cac}} €",
    "simulateur_de_prospection_cold_email_pipeline": "Simulador de prospección por cold email y pipeline B2B",
    "1_envoi_engagement_email": "1. Envío y engagement del email",
    "volume_d_emails_envoyes_mois": "Volumen de emails enviados / mes",
    "unite_emails": "emails",
    "taux_d_ouverture_moyen": "Tasa de apertura media",
    "2_conversion_commerciale_panier": "2. Conversión comercial y valor medio",
    "taux_de_signature_closing": "Tasa de cierre (closing)",
    "valeur_moyenne_d_un_contrat_acv": "Valor medio de un contrato (ACV)",
    "unite_eur_par_mois": "€/mes",
    "roi_x": "ROI: {{value}}x",
    "x_eur_par_mois": "{{value}} € / mes",
    "soit_x_client_s_signe_s": "Es decir, {{value}} cliente(s) firmado(s) cada mes",
    "x_rdv_par_mois": "{{value}} reuniones / mes",
    "x_eur_par_rdv": "{{value}} € / reunión",
    "plus_x_eur_par_mois": "+{{value}} € / mes",
    "copier_la_simulation_d_acquisition": "Copiar la simulación de adquisición",
    "configurez_obligatoirement_vos_enregistrements_spf": "• Configure obligatoriamente sus registros SPF, DKIM, DMARC y Custom Tracking Domain."
  },
  "meeting-airtime-equity-monitor": {
    "toast_copied": "¡Auditoría de tiempo de palabra copiada!",
    "title": "Calculadora de Reparto del Tiempo de Habla (Reuniones)",
    "desc": "Cronometre intervenciones en vivo y audite la equidad de participación.",
    "badge_audit": "Auditoría de Inclusión",
    "meeting_status": "Estado de la reunión:",
    "tip_1": "• Si un participante supera el 40% del tiempo, invite a los miembros silenciosos con preguntas abiertas.",
    "tip_2": "• Utilice rondas estructuradas de 1-2 minutos por persona para retrospectivas.",
    "speaker_1_name": "Guillaume (Manager)",
    "speaker_2_name": "Laura (Líder técnica)",
    "speaker_3_name": "Nicolas (Producto)",
    "speaker_4_name": "Emma (Diseño)",
    "speaker_5_name": "Yassine (Desarrollador junior)",
    "role_management": "Dirección",
    "role_engineering": "Ingeniería",
    "role_product": "Producto",
    "role_design": "Diseño",
    "copy_title": "=== AUDITORÍA DEL TIEMPO DE PALABRA EN LA REUNIÓN (AIRTIME) ===",
    "copy_total_time": "Tiempo total de palabra: {{value}}",
    "copy_score": "Puntuación de equidad e inclusividad: {{score}}/100 (Reparto ideal: ~{{share}} % / persona)",
    "copy_breakdown_title": "REPARTO POR PARTICIPANTE:",
    "copy_tag_dominant": "[DOMINANTE]",
    "copy_tag_quiet": "[INTERVINO POCO]",
    "intervenants_cliquez_pour_activer_le": "Participantes (haga clic para activar el micrófono)",
    "reinitialiser_les_chronos": "Restablecer los cronómetros",
    "score_sur_100": "Puntuación: {{value}}/100",
    "temps_total_de_parole": "Tiempo total de palabra",
    "part_ideale_par_personne": "Reparto ideal por persona: ~{{value}} %",
    "plus_forte_prise_de_parole": "Mayor intervención:",
    "discussion_equilibree": "✓ Discusión equilibrada",
    "monopolisation_du_temps": "⚠️ Monopolización del tiempo",
    "copier_le_rapport_de_reunion": "Copiar el informe de la reunión",
    "conseils_de_facilitation_agile": "Consejos de facilitación ágil"
  },
  "home-office-commute-cost-calculator": {
    "label_lunch_office": "Coste almuerzo en oficina (€)",
    "label_lunch_home": "Coste almuerzo en casa (€)",
    "label_extra_energy": "Sobrecoste luz/calefacción (€/día)",
    "label_employer_stipend": "Compensación teletrabajo empresa (€/día)",
    "badge_net_savings": "Ahorro neto estimado",
    "stat_daily_savings": "Ahorro por día remoto",
    "stat_lunch_gain": "Ahorro en comida",
    "comparateur_financier_teletravail_vs": "Comparador financiero: teletrabajo frente a los desplazamientos diarios",
    "estimez_vos_economies_reelles_de": "Estime tus ahorros reales con el teletrabajo: combustible, comidas, tiempo y huella de carbono.",
    "organisation_trajets": "Organización y desplazamientos",
    "jours_de_teletravail_par_semaine": "Días de teletrabajo por semana",
    "x_j_sem": "{{value}} d/sem",
    "voiture_moto": "Coche / Moto",
    "transports_en_commun": "Transporte público",
    "distance_aller_simple_km": "Distancia de ida (km)",
    "temps_aller_simple_minutes": "Tiempo de ida (minutos)",
    "carburant_usure_100km": "Combustible + desgaste (€/100 km)",
    "peages_parking_mensuels": "Peajes y aparcamiento mensuales (€)",
    "prix_abonnement_transports_mensuel": "Precio del abono mensual de transporte (€)",
    "prise_en_charge_employeur": "Aportación de la empresa (%)",
    "repas_charges_maison": "Comidas y gastos del hogar",
    "par_an": "/ año",
    "soit_x_net_par_mois": "es decir, <0>+{{amount}} € netos / mes</0> de poder adquisitivo con {{days}} días de teletrabajo semanales.",
    "par_jour": "/ día",
    "par_repas": "/ comida",
    "temps_de_vie_recupere_empreinte": "Tiempo recuperado y huella ecológica",
    "temps_evite_dans_les_bouchons": "Tiempo ahorrado en atascos",
    "x_heures": "{{value}} horas",
    "l_equivalent_de_x_jours": "El equivalente a <0>{{value}} días completos de vida (24 h)</0> ahorrados.",
    "emissions_co2_evitees": "Emisiones de CO₂ evitadas",
    "grace_aux_trajets_domicile_travail": "Gracias a los trayectos casa-trabajo que no se realizan."
  },
  "runway-calculator": {
    "tab_cash_revenue": "1. Tesorería e ingresos mensuales",
    "tab_expenses": "2. Gastos mensuales (Gross burn)",
    "badge_estimated_runway": "Runway Estimado",
    "net_burn_title": "Gasto neto tras ingresos",
    "covered_percent_suffix": "del total de costes cubierto",
    "remaining_cash": "Tesorería Restante",
    "projected_mrr": "MRR Proyectado",
    "badge_profitable": "Rentable (flujo de caja positivo)",
    "badge_healthy": "Sano (> 18 meses)",
    "badge_moderate": "Moderado (10 - 18 meses)",
    "badge_critical": "Crítico (< 10 meses)",
    "pdf_title": "Informe de runway y burn rate financiero",
    "pdf_calculator_name": "Calculadora de runway para startups / SaaS",
    "pdf_subtitle": "Análisis de autonomía financiera, tesorería y fecha de agotamiento",
    "pdf_section_cash": "Tesorería e ingresos",
    "pdf_cash_available": "Tesorería disponible",
    "pdf_mrr": "MRR / ingreso mensual recurrente",
    "pdf_mrr_growth": "Crecimiento mensual del MRR",
    "pdf_section_expenses": "Gastos mensuales",
    "pdf_payroll": "Masa salarial y cargas sociales",
    "pdf_hosting": "Servidores, hosting y herramientas SaaS",
    "pdf_marketing": "Presupuesto de marketing y publicidad",
    "pdf_other": "Otros gastos operativos",
    "pdf_gross_burn_total": "Gross burn total (gastos brutos)",
    "pdf_section_results": "Resultados y diagnóstico de runway",
    "pdf_net_burn_monthly": "Net burn mensual (gastos - ingresos)",
    "pdf_runway": "Autonomía financiera (runway)",
    "pdf_infinite": "Infinita (rentable)",
    "pdf_zero_date": "Fecha estimada de agotamiento (zero cash date)",
    "pdf_na_profit": "N/D (flujo de caja positivo)",
    "pdf_health_level": "Nivel de salud financiera",
    "pdf_note_1": "Simulación basada en la hipótesis de gastos constantes y crecimiento constante del MRR.",
    "pdf_note_2": "Las proyecciones mensuales reflejan la variación del net burn a medida que crece el MRR.",
    "card_title": "Calculadora de runway y burn rate (SaaS / startup)",
    "intro": "Evalúe la autonomía financiera de su empresa, su burn rate neto y proyecte su fecha de agotamiento de tesorería (Zero Cash Date).",
    "label_cash": "Tesorería actual ($ / €)",
    "label_mrr": "MRR actual ($ / mes)",
    "label_growth": "Crecimiento del MRR (% / mes)",
    "label_salaries": "Salarios y cargas ($)",
    "label_servers": "Servidores y nube ($)",
    "label_marketing": "Marketing y ventas ($)",
    "label_other": "Otros gastos ($)",
    "infinite_profit": "∞ Beneficio",
    "months_value": "{{value}} meses",
    "copied_runway": "Runway: {{value}} copiado.",
    "end_of_cash": "Fin de la caja: {{date}}",
    "net_burn_rate": "Net burn rate",
    "copied_net_burn": "Net burn: {{value}} copiado.",
    "gross_burn_total": "Gross burn (total)",
    "copied_gross_burn": "Gross burn: {{value}} copiado.",
    "gross_burn_hint": "Total de gastos mensuales",
    "mrr_coverage": "Cobertura por el MRR",
    "copied_mrr_coverage": "Cobertura del MRR: {{value}} copiado.",
    "sim_title": "Simulación de optimización de costes",
    "sim_reduction": "Reducción simulada de gastos: <0>{{percent}}%</0>",
    "sim_saving": "Una reducción del {{percent}}% ahorra <0>${{amount}} / mes</0>.",
    "table_title": "Proyecciones mes a mes (trayectoria de caja)",
    "col_month": "Mes",
    "col_net_burn": "Net burn",
    "month_n": "Mes {{value}}"
  },
  "readability-analyzer": {
    "title": "Analizador de Legibilidad de Texto y Score Flesch-Kincaid",
    "editor_section": "1. Editor de texto",
    "editor_placeholder": "Escriba o pegue el texto a analizar...",
    "score_label": "Puntuación de legibilidad",
    "ideal_target": "Objetivo ideal: 12 - 18 palabras",
    "recommendations_title": "Recomendaciones de legibilidad web",
    "sample_text": "La optimización para motores de búsqueda (SEO) y la redacción clara de contenidos son dos pilares fundamentales de la visibilidad en la web. Para cautivar a sus lectores, es esencial priorizar frases cortas, un vocabulario accesible y una estructura aireada. Los usuarios rara vez leen un texto palabra por palabra; se informan echando un vistazo rápido a los títulos y a los párrafos estructurados.",
    "level_very_easy": "Muy fácil (público general / niños)",
    "desc_very_easy": "Texto muy simple y directo, perfectamente legible para todos.",
    "level_easy": "Fácil / Estándar (web y artículos)",
    "desc_easy": "Excelente legibilidad para artículos de blog, correos electrónicos y sitios web.",
    "level_moderate": "Moderado (nivel de bachillerato / profesional)",
    "desc_moderate": "Texto algo denso con frases largas o vocabulario técnico.",
    "level_complex": "Complejo (nivel académico / jurídico)",
    "desc_complex": "Texto muy difícil de leer. Piense en dividir las frases y simplificar el vocabulario.",
    "intro": "Evalúe la claridad y la fluidez de sus escritos (correos, artículos SEO, documentación) y detecte las frases demasiado largas.",
    "sample_button": "Texto de ejemplo",
    "copy_text": "Copiar el texto",
    "words_per_sentence": "Palabras / Frase",
    "total_words": "Palabras totales",
    "sentence_count": "{{value}} frase(s)",
    "complex_words": "Palabras complejas (≥3 síl.)",
    "percent_of_text": "{{value}}% del texto",
    "seo_tip": "Consejo SEO: Los usuarios leen principalmente en el móvil. Mantenga sus frases por debajo de las 20 palabras y airee sus párrafos cada 3 o 4 frases."
  },
  "timezone-planner": {
    "title": "Planificador de Reuniones y Conversor de Zonas Horarias",
    "step_1": "1. Selección de husos horarios y hora principal",
    "summary_title": "Resumen listo para compartir (Email / Slack)",
    "city_paris": "París / Berlín",
    "city_london": "Londres / Dublín",
    "city_ny": "Nueva York / Toronto",
    "city_sf": "San Francisco / LA",
    "city_tokyo": "Tokio / Seúl",
    "city_sydney": "Sídney / Melbourne",
    "slot_office": "Horario de oficina (9h-17h)",
    "slot_flexible": "Flexible (7h-9h / 17h-21h)",
    "slot_night": "Noche (21h-7h)",
    "reunion_planifiee": "Reunión programada:",
    "trouvez_le_creneau_ideal": "Encuentre fácilmente el horario de reunión ideal entre sus equipos repartidos por todo el mundo (Europa, América, Asia, Australia).",
    "heure_de_reference": "Hora de referencia en {{city}} ({{zone}}):",
    "villes_actives": "Ciudades activas:",
    "copier_le_recapitulatif": "Copiar el resumen"
  },
  "us-section-179-depreciation": {
    "eligible": "Elegible Sección 179",
    "ineligible": "No elegible (< 50%)"
  },
  "ddos-cost-estimator": {
    "total_requests": "Número total de peticiones",
    "bandwidth_cost_share": "Parte del coste de ancho de banda",
    "hebergeur_cloud_serverless": "Proveedor cloud / serverless",
    "aws_api_gateway_cloudfront": "AWS (API Gateway + CloudFront)",
    "cloudflare_protection_ddos": "Cloudflare (protección DDoS)",
    "req_s": "req/s",
    "heures": "hora(s)",
    "ko": "KB",
    "facture_surconsommation_estimee": "Factura estimada por sobreconsumo",
    "volume_donnees_genere": "Volumen de datos generado: <0>{{gb}} GB</0> ({{tb}} TB)",
    "millions_req": "{{value}} M solic.",
    "bonne_pratique_securite": "Buena práctica de seguridad",
    "configurez_reverse_proxy": "Configure un reverse proxy gratuito como Cloudflare delante de su infraestructura y defina límites de presupuesto (Spend Caps / Rate Limiting) para detener las solicitudes abusivas antes de que lleguen al servidor."
  },
  "encryption-key-strength": {
    "algo_selected": "Algoritmo seleccionado",
    "post_quantum_res": "Resistencia Post-Cuántica",
    "conforme_jusqu_en_2030": "Conforme (hasta 2030)",
    "securise_standard_web": "Seguro, estándar (estándar web)",
    "securite_renforcee": "Seguridad reforzada",
    "securite_maximale_militaire": "Seguridad máxima (normativa militar / poscuántica, resistente a Grover)",
    "obsolete_deconseille": "OBSOLETO / DESACONSEJADO (vulnerable)",
    "standard_actuel_retrait": "Estándar actual (se aconseja su retirada progresiva)",
    "recommande_anssi_nist": "Recomendado por ANSSI / NIST (horizonte 2030+)",
    "haute_securite_long_terme": "Alta seguridad a largo plazo",
    "niveau_basique": "Nivel básico",
    "recommande_standard_ed25519": "Estándar recomendado (Ed25519 / ECDSA p-256)",
    "haute_securite_gouvernementale": "Alta seguridad gubernamental",
    "famille_algorithme_crypto": "Familia de algoritmo criptográfico",
    "rsa_asymetrique": "RSA (asimétrico)",
    "ecc_ed25519_courbe_elliptique": "ECC / Ed25519 (curva elíptica)",
    "aes_symetrique": "AES (simétrico)",
    "taille_de_la_cle": "Tamaño de la clave ({{algorithm}})",
    "bits_valeur": "{{value}} bits",
    "bits": "bits",
    "statut_de_conformite": "Estado de conformidad: <0>{{status}}</0>",
    "oui_aes_256": "Sí (AES-256)",
    "non_requiert_kyber": "No (requiere Kyber/Dilithium)",
    "note_normes_anssi_nist": "Nota sobre las normas ANSSI / NIST",
    "non_requiert_mlkem": "No (requiere ML-KEM / ML-DSA)"
  },
  "invoice-generator": {
    "phone_label": "Tel:",
    "bank_details_title": "Datos bancarios",
    "default_item_description": "Servicio de desarrollo web",
    "default_penalty_rate": "3 veces el tipo legal",
    "tab_editor": "Editor",
    "tab_preview": "Vista previa e impresión",
    "legal_form_placeholder": "Forma jurídica (p. ej. S.L.)",
    "share_capital": "Capital social",
    "zip_code": "Código postal",
    "city": "Ciudad",
    "vat_number_fr": "N.º de IVA (FRXX...)",
    "siret_if_pro": "SIRET (si es empresa)",
    "vat_number_if_pro": "N.º de IVA (si es empresa)",
    "ref_invoice_placeholder": "p. ej. FAC-2024-001",
    "bank_name": "Nombre del banco",
    "view_preview": "Ver vista previa",
    "document_preview": "Vista previa del documento",
    "edit": "Modificar",
    "capital_short": "Cap. {{value}}",
    "vat_colon": "IVA:",
    "email_colon": "Email:",
    "number_prefix": "N.º {{value}}",
    "ref_label": "Ref.: {{value}}",
    "vat_rate_line": "IVA {{rate}}%",
    "total_plain": "Total",
    "bank_colon": "Banco:",
    "forty_euros": "40 euros",
    "capital_footer": "con un capital de {{value}}",
    "vat_not_applicable": "IVA no aplicable"
  },
  "svg-generator": {
    "random_seed": "Semilla aleatoria",
    "complexity_points": "Complejidad (puntos)",
    "organism_randomness": "Organismo y varianza",
    "style_spiky": "Estilo estrellado / puntiagudo",
    "frequency_segments": "Frecuencia / Segmentos",
    "stroke_width": "Grosor del trazo",
    "pattern_opacity": "Opacidad del patrón",
    "light_points": "Puntos de luz",
    "roughness_relief": "Rugosidad y relieve",
    "curve_thickness": "Grosor de curva",
    "color_mode": "Modo colorimétrico",
    "gradient_angle": "Ángulo del degradado",
    "harmonized_palettes": "Paletas armonizadas",
    "grain_intensity": "Intensidad del grano",
    "realistic_shadow": "Sombra paralela realista",
    "embedded_css_anim": "Animación CSS integrada",
    "choose_stylized_preset": "Elija una composición prediseñada:",
    "fullscreen": "Pantalla completa",
    "vector_preview_hd": "Vista previa vectorial de alta definición",
    "tab_geometry": "Forma y trazo",
    "tab_color": "Colores y degradado",
    "tab_effects": "Efectos y filtros",
    "tab_presets": "Presets Pro",
    "concentric_layers": "Capas concéntricas",
    "wave_smooth": "Fluida",
    "wave_sharp": "Picos",
    "wave_stepped": "Escalonada",
    "wave_organic": "Orgánica",
    "orient_bottom": "Abajo",
    "orient_top": "Arriba",
    "orient_left": "Izquierda",
    "orient_right": "Derecha",
    "wave_count": "Número de olas",
    "amplitude_height": "Amplitud / Altura",
    "grid_spacing": "Espaciado de la cuadrícula",
    "element_size": "Tamaño del elemento",
    "rotation_angle": "Ángulo de rotación",
    "gaussian_blur": "Desenfoque gaussiano (difuso)",
    "contour_count": "Número de curvas de nivel",
    "badge_starburst": "Sello",
    "badge_shield": "Escudo",
    "badge_gear": "Rueda dentada",
    "badge_polygon": "Polígono",
    "badge_stamp": "Sello postal",
    "ray_count": "Número de rayos / vértices",
    "gradient_linear": "Degradado lineal",
    "gradient_radial": "Degradado radial",
    "solid_color": "Color sólido",
    "shadow_blur": "Desenfoque de la sombra",
    "animation_speed": "Velocidad de animación",
    "mirror_horizontal": "Espejo horizontal",
    "mirror_vertical": "Espejo vertical",
    "rotate_90": "Rotar 90°",
    "bg_transparent": "Fondo transparente",
    "bg_dark": "Fondo oscuro",
    "bg_light": "Fondo claro",
    "code_raw_svg": "SVG sin procesar",
    "code_react_tsx": "Componente React TSX",
    "code_css_background": "Fondo CSS",
    "outline_only_mode": "Modo solo contorno (Stroke)",
    "wave_style": "Estilo de onda",
    "orientation": "Orientación",
    "pattern_type": "Tipo de patrón",
    "badge_shape": "Forma de insignia",
    "inner_concentric_circle": "Círculo concéntrico interno",
    "primary_color": "Color primario",
    "secondary_color": "Color secundario",
    "tertiary_accent": "Acento terciario",
    "grain_noise": "Grano / ruido orgánico (SVG Noise)",
    "grain_noise_desc": "Textura analógica y grano feTurbulence",
    "drop_shadow_desc": "Profundidad vectorial feDropShadow",
    "animation_desc": "Keyframes nativos autónomos dentro del archivo SVG",
    "download_svg": "Descargar .SVG",
    "reroll": "Repetir",
    "randomize": "Aleatorio",
    "copy_code": "Copiar código",
    "pattern_dots": "Puntos",
    "pattern_grid": "Cuadrícula",
    "pattern_crosses": "Cruces",
    "pattern_isometric": "Isométrico",
    "pattern_hexagons": "Hexágonos",
    "pattern_stripes": "Rayas",
    "pattern_chevron": "Chevrones",
    "pattern_circles": "Círculos",
    "pattern_memphis": "Memphis",
    "pattern_circuit": "Circuito",
    "preset_category_badge": "Insignia",
    "preset_category_blob": "Blob",
    "preset_category_mesh": "Malla",
    "preset_category_patterns": "Patrones",
    "preset_category_topography": "Topografía",
    "preset_category_waves": "Olas",
    "preset_tag_aesthetic": "Estético",
    "preset_tag_background": "Fondo",
    "preset_tag_branding": "Branding",
    "preset_tag_clean": "Limpio",
    "preset_tag_header": "Encabezado",
    "preset_tag_hero": "Hero",
    "preset_tag_minimal": "Minimal",
    "preset_tag_popular": "Popular",
    "preset_tag_trending": "Tendencia",
    "preset_tag_ui_icon": "Icono de interfaz",
    "preset_meta": "{{category}} • Preset vectorial",
    "seed_label": "Semilla: #{{value}}",
    "light_n": "Luz #{{value}}",
    "exporting": "Exportando..."
  },
  "fake-data-generator": {
    "id_auto_increment": "ID (autoincremental)",
    "email": "Correo electrónico",
    "date": "Fecha",
    "boolean": "Booleano",
    "format": "Formato",
    "united_states": "Estados Unidos",
    "france": "Francia",
    "germany": "Alemania",
    "spain": "España",
    "columns_count": "{{value}} columnas",
    "column_name": "Nombre de columna",
    "bytes_value": "{{value}} bytes",
    "export": "Exportar"
  },
  "lorem-ipsum-generator": {
    "texte": "Texto"
  },
  "roi-calculator": {
    "roi_copie": "ROI: {{value}}% copiado.",
    "gain_net_copie": "Ganancia neta: {{value}} copiado.",
    "rapport_de_rentabilite_analyse_roi": "Informe de rentabilidad - análisis del ROI",
    "calculateur_de_retour_sur_investissement": "Calculadora de retorno de la inversión (ROI)",
    "donnees_de_l_operation": "Datos de la operación",
    "montant_investi_initial": "Importe invertido inicial",
    "gain_total_recettes_generees": "Ganancia total / ingresos generados",
    "indicateurs_de_rentabilite_kpi": "Indicadores de rentabilidad (KPI)",
    "retour_sur_investissement_roi": "Retorno de la inversión (ROI)",
    "gain_net_benefice_net": "Ganancia neta (beneficio neto)",
    "multiple_d_investissement_moic": "Múltiplo de la inversión (MOIC)",
    "note_formule": "Fórmula: ROI = ((importe recuperado - importe invertido) / importe invertido) * 100.",
    "note_brut": "Este cálculo es bruto, sin impuestos, inflación ni costes de oportunidad.",
    "exporter_pdf": "Exportar PDF",
    "montant_investi": "Importe invertido",
    "montant_recupere": "Importe recuperado",
    "benefice_net": "Beneficio neto",
    "analyse_roi_kristools": "Análisis del ROI - Kristools",
    "gain_net": "Ganancia neta",
    "indicateur": "Indicador",
    "valeur": "Valor"
  },
  "optimized-income-simulator": {
    "rules_2025": "Normas 2025",
    "is_ir_scales": "Baremos IS/IR"
  },
  "xml-diff-calculator": {
    "swap_contents": "Intercambiar contenidos",
    "toggle_word_wrap": "Activar/desactivar el ajuste de línea",
    "toggle_minimap": "Mostrar/ocultar el minimapa",
    "upload_xml": "Cargar XML",
    "format": "Formatear",
    "plus_n_more": "+{{value}} más",
    "status_added": "añadido",
    "status_removed": "eliminado",
    "status_modified": "modificado"
  },
  "gdpr-retention-planner": {
    "prospects_name": "Prospectos B2C / B2B (ficheros comerciales)",
    "prospects_recommended_duration": "3 años como máximo",
    "prospects_legal_basis": "Interés legítimo / consentimiento",
    "prospects_action_required": "Supresión o nueva solicitud explícita tras 3 años sin contacto activo.",
    "prospects_details": "El plazo corre desde el último contacto del prospecto (p. ej., clic en un correo, solicitud de presupuesto, inicio de sesión).",
    "invoices_name": "Documentos contables y facturas de clientes",
    "invoices_recommended_duration": "10 años",
    "invoices_legal_basis": "Obligación legal (Código de Comercio francés, art. L123-22)",
    "invoices_action_required": "Archivo intermedio seguro con acceso restringido.",
    "invoices_details": "Conservación obligatoria durante 10 años desde el cierre del ejercicio contable.",
    "hr_employees_name": "Expedientes de personal y nóminas",
    "hr_employees_recommended_duration": "De 5 a 50 años",
    "hr_employees_legal_basis": "Código de Trabajo / derechos de jubilación",
    "hr_employees_action_required": "Supresión 5 años después de la salida del empleado (salvo nóminas digitalizadas: 50 años).",
    "hr_employees_details": "Las nóminas en formato electrónico se conservan durante 50 años o hasta que el empleado alcance la edad prevista en el artículo L1237-5 del Código de Trabajo francés más 6 años.",
    "cookies_logs_name": "Cookies, identificadores y registros de conexión web",
    "cookies_logs_recommended_duration": "De 6 a 13 meses como máximo",
    "cookies_logs_legal_basis": "Directiva ePrivacy / Recomendaciones de la CNIL",
    "cookies_logs_action_required": "Anonimización o purga automática de los datos de tráfico.",
    "cookies_logs_details": "Las elecciones sobre cookies (consentimiento) deben conservarse 6 meses. Los identificadores de sesión y los registros de red: 12 meses como máximo.",
    "recruitments_name": "CV y candidaturas no seleccionadas",
    "recruitments_recommended_duration": "2 años como máximo",
    "recruitments_legal_basis": "Interés legítimo / selección de personal",
    "recruitments_action_required": "Solicitar el consentimiento del candidato para conservar su CV en la bolsa de talento más allá de 2 años.",
    "recruitments_details": "Sin consentimiento explícito para una conservación futura, la ficha del candidato debe eliminarse por completo del sistema ATS.",
    "select_data_type": "Seleccione el tipo de datos",
    "legal_basis_label": "Base jurídica:",
    "purge_action_label": "Acción de anonimización / purga",
    "minimization_principle": "Principio de minimización",
    "opt_prospects": "Prospectos / Leads",
    "opt_invoices": "Facturas y contabilidad",
    "opt_cookies_logs": "Cookies y registros web",
    "opt_recruitments": "CV y selección",
    "opt_hr_employees": "RR. HH. y empleados"
  },
  "kdp-helper": {
    "pages_count": "{{value}} páginas",
    "note_label": "Nota:"
  },
  "vinted-leboncoin-fees-calculator": {
    "title": "Simulador de comisiones de Vinted y Leboncoin",
    "subtitle": "Calcula lo que paga el comprador, lo que cobras y tu beneficio neto.",
    "platform": "Plataforma",
    "platform_custom": "Otra (comisiones personalizadas)",
    "item_price": "Precio publicado del artículo",
    "shipping_cost": "Gastos de envío",
    "shipping_payer": "¿Quién paga el envío?",
    "payer_buyer": "El comprador",
    "payer_seller": "El vendedor",
    "purchase_price": "Precio de compra del artículo (opcional)",
    "settings": "Comisiones de la plataforma (editables)",
    "fee_fixed": "Protección del comprador: parte fija",
    "fee_percent": "Protección del comprador: % del precio",
    "seller_commission": "Comisión del vendedor (% del precio)",
    "indicative_note": "Valores orientativos, compruébalos en la plataforma: las comisiones cambian con frecuencia.",
    "buyer_pays": "El comprador paga",
    "item_price_line": "Precio del artículo",
    "protection_fee": "Gastos de protección del comprador",
    "shipping_line": "Envío pagado por el comprador",
    "seller_receives": "El vendedor cobra",
    "commission_line": "Comisión del vendedor",
    "shipping_deducted": "Envío a tu cargo",
    "net_profit": "Beneficio neto (cobrado menos precio de compra)",
    "profit_margin": "Margen sobre el precio de compra",
    "vinted_note": "En Vinted, el vendedor particular no paga comisión: la protección del comprador la paga el comprador.",
    "leboncoin_note": "En Leboncoin, un anuncio entre particulares es gratuito; la comisión de protección solo se aplica si el comprador usa el envío o el pago seguro. Comprueba las tarifas vigentes.",
    "custom_note": "Introduce arriba las comisiones de la plataforma que uses.",
    "source_vinted": "Tarifa de la lista de precios de Vinted actualizada el 5 de octubre de 2026: gastos del comprador del 5 % del precio + 0,70 €, IVA incluido; la venta es gratuita para el vendedor particular. Vinted indica que este porcentaje se aplica «generalmente»: el importe exacto aparece al pagar. Verificado el 14/10/2026.",
    "source_leboncoin": "Tarifa del centro de ayuda de Leboncoin (transacción segura, artículo modificado el 27 de julio de 2026): 0,70 € + 5 % del precio para una compra con envío, gratuita para el vendedor particular. En una entrega en mano entre particulares, los gastos tienen un tope de 1,99 €: ese caso no se simula aquí. Verificado el 14/10/2026."
  },
  "volumetric-weight-calculator": {
    "title": "Calculadora de peso volumétrico",
    "subtitle": "Compara el peso volumétrico y el real: el mayor es el peso facturable.",
    "carrier_type": "Tipo de transporte (divisor)",
    "preset_express": "Exprés / mensajería (DHL, UPS, FedEx): 5000",
    "preset_air": "Carga aérea (IATA): 6000",
    "preset_road": "Transporte por carretera: 4000",
    "preset_custom": "Divisor personalizado",
    "divisor": "Divisor (cm³/kg)",
    "divisor_note": "Divisores orientativos y editables: cada transportista aplica el suyo, compruébalo en sus condiciones.",
    "use_imperial": "Introducir en pulgadas y libras (in / lb)",
    "parcel_n": "Bulto {{value}}",
    "remove_parcel": "Eliminar este bulto",
    "add_parcel": "Añadir un bulto",
    "length": "Largo",
    "width": "Ancho",
    "height": "Alto",
    "real_weight": "Peso real",
    "quantity": "Cantidad",
    "total_billable": "Peso facturable total",
    "total_real": "Peso real total: {{value}}",
    "volumetric_weight": "Peso volumétrico",
    "billable_weight": "Peso facturable",
    "volume_wins": "Gana el volumen: pagas por aire.",
    "real_wins": "El peso real supera al volumen.",
    "divisor_source": "Divisores verificados el 14/10/2026 en las páginas de los transportistas: 5000 cm³/kg en DHL Express, UPS y FedEx. Verificados el 22/10/2026: UPS Estados Unidos, 139 in³/lb (Daily Rates) y 166 in³/lb (Retail Rates); FedEx, 139 in³/lb para medidas en pulgadas; DPD Express, 5000 cm³/kg. Carga aérea: 6000 (167 kg/m³), relación habitual de la IATA, valor orientativo no verificado en el texto de la IATA. Mensajería por carretera: varía según el transportista, de 4000 (250 kg/m³) a 3000 (333 kg/m³); 4000 es un valor orientativo.",
    "carriers_group": "Por transportista",
    "divisor_name": "Divisor",
    "preset_dhl_express": "DHL Express: 5000 cm³/kg",
    "preset_ups_cm": "UPS, medidas en cm: 5000 cm³/kg",
    "preset_ups_us_daily": "UPS Estados Unidos, Daily Rates: 139 in³/lb",
    "preset_ups_us_retail": "UPS Estados Unidos, Retail Rates: 166 in³/lb",
    "preset_fedex_cm": "FedEx, medidas en cm: 5000 cm³/kg",
    "preset_fedex_in": "FedEx, medidas en pulgadas: 139 in³/lb",
    "preset_dpd_express": "DPD Express (transporte aéreo): 5000 cm³/kg"
  },
  "amazon-fba-profit-calculator": {
    "title": "Simulador de comisiones y margen de Amazon FBA",
    "subtitle": "Margen neto por unidad, ROI y punto de equilibrio publicitario a partir de tus costes.",
    "selling_price": "Precio de venta",
    "price_type": "Tipo de precio",
    "price_incl_vat": "IVA incluido",
    "price_excl_vat": "Precio sin IVA",
    "vat_rate": "Tipo de IVA",
    "category": "Categoría (comisión de venta)",
    "cat_home": "Hogar y cocina",
    "cat_beauty": "Belleza",
    "cat_toys": "Juguetes",
    "cat_clothing": "Ropa",
    "cat_electronics": "Electrónica de consumo",
    "cat_custom": "Otra (tasa libre)",
    "referral_fee": "Comisión de venta (%)",
    "size_tier": "Tramo de tamaño / peso FBA",
    "tier_small_envelope": "Sobre pequeño",
    "tier_standard_envelope": "Sobre estándar",
    "tier_small_parcel": "Paquete estándar pequeño",
    "tier_medium_parcel": "Paquete estándar mediano",
    "tier_large_parcel": "Paquete grande",
    "fba_table": "Tarifa de envío FBA por tramo (editable)",
    "indicative_note": "Tarifas orientativas: Amazon revisa sus tarifas, comprueba los importes en tu cuenta de vendedor.",
    "product_cost": "Coste unitario del producto (sin IVA)",
    "inbound_transport": "Transporte al almacén, por unidad",
    "storage_fee": "Almacenamiento mensual por unidad (opcional)",
    "storage_months": "Meses de almacenamiento medios",
    "ad_budget": "Presupuesto publicitario total",
    "planned_units": "Unidades vendidas previstas",
    "net_margin_unit": "Margen neto por unidad",
    "margin_pct": "Margen neto (% del precio sin IVA)",
    "line_referral": "Comisión de venta",
    "line_fba": "Tarifa de envío FBA",
    "line_storage": "Gastos de almacenamiento",
    "line_landed": "Coste del producto + transporte",
    "break_even": "Punto de equilibrio publicitario",
    "break_even_units": "{{value}} unidades a vender",
    "no_break_even": "Margen negativo: sin punto de equilibrio",
    "profit_after_ads": "Beneficio total tras publicidad",
    "tier_heavy_parcel": "Paquete estándar pesado",
    "fba_source_note": "Tarifa FBA de Amazon.fr (FBA local, columna Francia) vigente desde el 1 de febrero de 2026, paquetes desde el 15 de diciembre de 2025, recogida en la tarifa del 1 de julio de 2026: importe al peso máximo de cada tramo, sin el recargo de combustible y logística del 1,5 % aplicado desde el 17 de abril de 2026. Las dimensiones del producto pueden cambiar el tramo. Verificado el 14/10/2026.",
    "referral_source_note": "Comisiones de amazon.fr verificadas el 14/10/2026: 7 % en electrónica de consumo; 15 % en hogar (por encima de 20 €), belleza (por encima de 10 €), juguetes y ropa (por encima de 20 €); mínimo de 0,30 € por artículo. Los porcentajes reducidos por debajo de esos precios no se simulan.",
    "storage_source_note": "Almacenamiento de Amazon (Francia, Alemania, Italia, España, tamaño estándar salvo ropa): 27,54 € por m³ y mes de enero a septiembre, 52,20 € de octubre a diciembre. El valor por defecto de 0,05 € corresponde a un producto de unos 1,8 litros fuera de temporada alta. Verificado el 14/10/2026."
  },
  "ean13-upc-barcode-generator": {
    "title": "Generador de códigos de barras EAN-13 y UPC-A",
    "subtitle": "Calcula el dígito de control, valida un código y descarga el código de barras en SVG o PNG.",
    "format": "Formato",
    "digits_label": "Introduce {{short}} dígitos (se calcula el control) o {{full}} dígitos (código a validar)",
    "key_computed": "Dígito de control calculado: {{key}}.",
    "code_valid": "Código válido: el dígito de control es correcto.",
    "code_invalid": "Código no válido: el dígito de control esperado es {{key}}.",
    "wrong_length": "Introduce exactamente {{short}} o {{full}} dígitos.",
    "formula_note": "Dígito = (10 − (suma ponderada mod 10)) mod 10, con pesos 3 y 1 alternos empezando por la derecha del cuerpo del código.",
    "full_code": "Código completo",
    "barcode_alt": "Código de barras {{value}}",
    "no_barcode": "Introduce un código válido para mostrar el código de barras.",
    "download_svg": "Descargar SVG",
    "download_png": "Descargar PNG",
    "standard_source": "Método del dígito de control y estructura EAN-13 / UPC-A: GS1 General Specifications, versión 26.0 publicada en enero de 2026 (verificado el 14/10/2026).",
    "format_gtin14": "DUN-14 / GTIN-14 / ITF-14 a partir de un EAN-13",
    "gtin14_digits_label": "EAN-13 (13 dígitos) o UPC-A (12 dígitos) de la unidad contenida, o un DUN-14 (14 dígitos) para verificar",
    "indicator_label": "Dígito indicador (nivel de embalaje, 1 a 8)",
    "indicator_note": "Los indicadores 1 a 8 identifican hasta ocho agrupaciones del mismo artículo; GS1 no les asigna un significado fijo (el 1 se usa a menudo para la caja). El 9 está reservado a los artículos de medida variable: ese DUN-14 no se deriva del EAN-13 de la unidad, se asigna con tu prefijo de empresa GS1. Introdúcelo con 14 dígitos para comprobar su dígito verificador.",
    "gtin14_computed": "DUN-14 calculado con el indicador {{ind}}: nuevo dígito verificador {{key}} (se quita el dígito de control del EAN-13).",
    "gtin14_source_invalid": "El dígito de control del código introducido es incorrecto: se esperaba {{key}}. Corrige el EAN-13 o UPC-A de la unidad antes de calcular el DUN-14.",
    "gtin14_wrong_length": "Introduce 13 dígitos (EAN-13), 12 dígitos (UPC-A) o 14 dígitos (DUN-14 a verificar).",
    "gtin14_lead0": "Un código de 14 dígitos que empieza por 0 es el EAN-13 (o UPC-A) de la unidad escrito con 14 dígitos, no el DUN-14 de una caja.",
    "gtin14_lead9": "Indicador 9: artículo de medida variable. El peso o la cantidad deben figurar además, por ejemplo en un código GS1-128.",
    "full_code_gtin14": "DUN-14 / GTIN-14 (código de caja)",
    "itf14_note": "Código de barras ITF-14 al 100 %: X = 1,016 mm, relación ancho/estrecho 2,5:1, zonas de silencio de 10X y barra portadora de 4,83 mm alrededor del símbolo, es decir 152,4 × 41,4 mm sin los dígitos. El SVG está a tamaño real: imprímelo sin escalar.",
    "steps_title": "Cálculo del dígito verificador (módulo 10), paso a paso",
    "steps_digit": "Dígito",
    "steps_weight": "Peso",
    "steps_product": "Producto",
    "steps_sum": "Suma S = {{sum}}; S mod 10 = {{mod}}; dígito verificador = (10 − {{mod}}) mod 10 = {{key}}."
  },
  "json-to-typescript-converter": {
    "json_to_typescript_interfaces": "Conversor de JSON a interfaces TypeScript",
    "paste_json_hint": "Pegue un JSON: las interfaces se generan al instante, en su navegador.",
    "json_input": "JSON a convertir",
    "root_name": "Nombre de la interfaz raíz",
    "use_type_alias": "type en lugar de interface",
    "add_export": "Añadir export",
    "readonly_properties": "Propiedades readonly",
    "copy_code": "Copiar",
    "invalid_json": "JSON no válido: revise las comas, comillas y llaves.",
    "invalid_json_at": "JSON no válido en la línea {{line}}, columna {{column}}.",
    "empty_input": "Pegue un JSON en el cuadro de la izquierda para generar los tipos."
  },
  "pdf-watermark-remover": {
    "overlay_preview": "Vista previa de la imagen de reemplazo",
    "zoom_out": "Alejar",
    "zoom_in": "Acercar",
    "pdf_preview": "Vista previa del PDF",
    "replacement": "Imagen de reemplazo"
  },
  "sql-formatter": {
    "dialecte": "Dialecto",
    "standard_sql": "SQL estándar",
    "2_espaces": "2 espacios",
    "4_espaces": "4 espacios",
    "tabulations": "Tabulaciones",
    "majuscules": "MAYÚSCULAS",
    "minuscules": "minúsculas",
    "original": "Original",
    "echec_formatage": "Error al formatear. Compruebe la sintaxis de su SQL."
  },
  "org-chart-span-of-control-builder": {
    "title": "Generador de organigrama y ratio de supervisión (Span of Control)",
    "desc": "Cartografíe la jerarquía del equipo, calcule el ratio de supervisión (span of control) y detecte los cuellos de botella directivos.",
    "label_name": "Nombre y apellidos",
    "label_role": "Puesto",
    "label_manager": "Dependencia jerárquica (responsable N+1)",
    "norm_notice": "Norma recomendada en la empresa: de 4 a 8 subordinados directos.",
    "detail_manager": "Detalle por responsable:",
    "toast_copied": "¡Organigrama y estructura jerárquica copiados!",
    "ceo_directeur_general": "CEO / director general",
    "toast_root_undeletable": "No se puede eliminar al directivo raíz.",
    "copy_header": "=== ORGANIGRAMA Y RATIO DE SUPERVISIÓN ===",
    "copy_company": "Empresa: {{value}}",
    "copy_headcount": "Plantilla total: {{total}} empleados ({{managers}} responsables, {{ics}} colaboradores individuales)",
    "copy_span": "Span of control medio: {{value}} subordinados / responsable (norma recomendada: 4 a 8)",
    "copy_hierarchy": "JERARQUÍA DETALLADA:",
    "add_position": "Añadir un puesto / colaborador",
    "placeholder_name": "Ej.: Camille Robert",
    "placeholder_role": "Ej.: Product Designer",
    "add_to_chart": "Añadir al esquema",
    "tree_title": "Árbol jerárquico ({{value}} miembros)",
    "direct_reports": "{{value}} subordinados directos",
    "attached_to": "Depende de: {{value}}",
    "delete": "Eliminar",
    "audit_title": "Auditoría organizativa",
    "employees_badge": "{{value}} empleados",
    "avg_span_label": "Span of control medio",
    "n1_per_manager": "subordinados / responsable",
    "managers_count": "Número de responsables:",
    "individual_contributors": "Colaboradores individuales (IC):",
    "n1_count": "{{value}} subordinados",
    "copy_structured": "Copiar el organigrama estructurado"
  },
  "base64-converter": {
    "error_invalid_input": "Error: entrada no válida",
    "text_label": "Texto",
    "switch_label": "Cambiar"
  },
  "password-crack-time": {
    "time_million_years": "{{count}} millones de años",
    "time_million_years_one": "{{count}} millón de años",
    "duree_milliards_siecles": "miles de millones de siglos",
    "duree_instantane": "Instantáneo (< 1 segundo)",
    "duree_secondes": "{{count}} segundos",
    "duree_minutes": "{{count}} minutos",
    "duree_heures": "{{count}} horas",
    "duree_jours": "{{count}} días",
    "duree_ans": "{{count}} años",
    "duree_milliers_annees": "{{count}} miles de años",
    "duree_millions_annees": "{{count}} millones de años",
    "resistance_gpu_rtx_4090": "Resistencia a fuerza bruta GPU RTX 4090 (100 GH/s)",
    "cluster_hacker_8x_gpu": "Clúster atacante 8x GPU (Hashcat)",
    "pool_de_caracteres": "Diversidad del juego de caracteres",
    "symboles_count": "{{count}} Símbolos",
    "longueur_label": "Longitud: {{count}} caracteres",
    "masquer": "Ocultar",
    "afficher": "Mostrar",
    "generer_passphrase_diceware": "Generar una frase de paso pronunciable (≈ 86 bits, azar criptográfico)",
    "vitesse_100_milliards": "Tiempo medio a 100 000 millones de hashes/s (MD5, NTLM)",
    "vitesse_800_milliards": "Tiempo medio a 800 000 millones de hashes/s (MD5, NTLM)"
  },
  "typing-speed-test": {
    "heading": "Test de velocidad de escritura",
    "subtitle": "Copie el texto mostrado: palabras por minuto, precisión y errores en directo.",
    "duration_label": "Duración de la prueba",
    "restart": "Reiniciar",
    "new_text": "Otro texto",
    "time_left": "Tiempo restante",
    "wpm": "Palabras por minuto",
    "wpm_unit": "PPM",
    "accuracy": "Precisión",
    "errors": "Errores",
    "uncorrected": "Sin corregir",
    "raw_wpm": "Velocidad bruta",
    "cpm": "es decir, {{value}} caracteres correctos por minuto",
    "text_label": "Texto que debe copiar",
    "input_label": "Su escritura",
    "input_placeholder": "Escriba aquí: el cronómetro arranca con la primera tecla",
    "result_title": "Resultado",
    "chars_summary": "{{ok}} caracteres correctos de {{total}} escritos en {{seconds}} s.",
    "finished_text": "Texto terminado antes de tiempo: la velocidad se calcula sobre la duración real.",
    "best": "Mejor marca en {{seconds}} s en este navegador: {{wpm}} {{unit}}",
    "method_note": "1 palabra = 5 caracteres, espacios incluidos. Velocidad neta = caracteres correctos ÷ 5 ÷ minutos; precisión = pulsaciones correctas ÷ pulsaciones. Los textos se escribieron para esta herramienta.",
    "text": {
      "p1": "Cada mañana, la pequeña panadería de la esquina abre sus puertas a las siete. El olor a pan caliente llega hasta el final de la calle y los primeros clientes esperan en la fila mientras hablan del tiempo. Algunos se llevan una barra, otros prefieren un cruasán todavía tibio para el camino.",
      "p2": "Aprender a escribir sin mirar el teclado requiere algo de paciencia. Se apoyan los índices en las teclas F y J, que suelen tener un pequeño relieve, y cada dedo alcanza las teclas vecinas. Al principio la velocidad baja, pero la precisión mejora pronto y los errores son cada vez menos.",
      "p3": "En el huerto, los tomates maduran bajo el sol de finales de verano. Hay que regarlos temprano, antes del calor, y quitar las hojas dañadas. El vecino plantó calabacines que crecen tan rápido que los regala a todo el mundo, y cada uno busca una receta nueva para cocinarlos.",
      "p4": "El tren regional atraviesa colinas cubiertas de viñedos y bosques. Desde la ventana se ve un pueblo en lo alto, un río tranquilo y algunas vacas que ni siquiera levantan la cabeza. El revisor pasa por el pasillo, comprueba los billetes y desea a todos un buen viaje.",
      "p5": "Una buena reunión empieza con un orden del día claro y termina a la hora prevista. Cada participante sabe qué se espera de él, y las decisiones se anotan y se comparten el mismo día. Exige algo de disciplina, aunque unas pocas reglas sencillas ahorran mucho tiempo al equipo."
    }
  }
}
