// Diccionario en español.
window.I18N_ES = {
  dateJoiner: 'de ',
  weekdaysLong:  ['domingo','lunes','martes','miércoles','jueves','viernes','sábado'],
  weekdaysShort: ['lun','mar','mié','jue','vie','sáb','dom'],
  monthsLong:    ['enero','febrero','marzo','abril','mayo','junio','julio','agosto','septiembre','octubre','noviembre','diciembre'],
  monthsShort:   ['ene','feb','mar','abr','may','jun','jul','ago','sep','oct','nov','dic'],

  relative: {
    daysAgo: 'hace {n} días',
    yesterday: 'ayer',
    today: 'hoy',
    tomorrow: 'mañana',
    inDays: 'en {n} días',
    nextWeek: 'la semana que viene',
    inMonth: 'en ~1 mes',
    inMonths: 'en ~{n} meses',
  },

  cat: { feina: 'Trabajo', estudi: 'Estudios', personal: 'Personal', salut: 'Salud', casa: 'Casa', social: 'Social' },

  header: {
    greetingMorning: 'Buenos días', greetingAfternoon: 'Buen día', greetingEvening: 'Buenas tardes', greetingNight: 'Buenas noches',
    toggleTheme: 'Cambiar tema', add: 'Añadir',
    viewAgenda: 'Agenda', viewCalendar: 'Calendario', viewProjects: 'Proyectos', viewAriaLabel: 'Vista',
    account: 'Cuenta', help: 'Ayuda', logout: 'Cerrar sesión',
  },

  sync: { local: 'local', idle: 'sincronizado', syncing: 'sincronizando', saving: 'guardando', offline: 'sin conexión', auth: 'sesión cerrada', statusLabel: 'Estado de sincronización: {s}' },

  filter: { hidePast: 'Ocultar pasados', hideDone: 'Ocultar hechos' },

  agendaView: {
    today: 'Hoy', tomorrow: 'Mañana', later: 'Más adelante', overdue: 'Vencido',
    emptyToday: 'Nada apuntado para hoy. Buen día libre.', add: 'Añadir',
    itemsThisDay: '{n} cosa(s) este día',
  },

  card: { markDone: 'Marcar como hecho', markPending: 'Marcar como pendiente', delete: 'Eliminar', openMaps: 'Abrir "{name}" en Google Maps' },

  cal: { prevMonth: 'Mes anterior', nextMonth: 'Mes siguiente', today: 'hoy', addHere: 'Añadir aquí', itemsThisDay: '{n} cosa(s) este día', itemsThisWeek: '{n} cosa(s) esta semana', addOnDate: 'Añadir el día {day}' },

  daypanel: { close: 'Cerrar', empty: 'Nada para este día.', add: 'Añadir', addOnDay: 'Añadir en este día' },

  editor: {
    newTitle: 'Nuevo apunte', editTitle: 'Editar',
    titleLabel: 'Título', titlePlaceholder: '¿Qué quieres recordar?',
    dateLabel: 'Fecha', timeLabel: 'Hora', timeEndLabel: 'Hasta', optional: '(opcional)',
    categoryLabel: 'Categoría',
    noteLabel: 'Nota', notePlaceholder: 'Detalles, recordatorios, lo que sea…',
    locationNameLabel: 'Nombre del lugar', locationNamePlaceholder: 'p.ej. Clínica Rotger',
    locationAddressLabel: 'Dirección para Maps', locationAddressHint: '(opcional, si difiere del nombre)', locationAddressPlaceholder: 'p.ej. Calle..., Ciudad',
    attachmentsLabel: 'Adjuntos',
    addLink: 'Enlace', addFile: 'Archivo', uploading: 'Subiendo…',
    linkNamePlaceholder: 'Nombre del enlace (opcional)', linkUrlPlaceholder: 'https://…', confirmAdd: 'Añadir',
    removeAttachment: 'Eliminar adjunto',
    cancel: 'Cancelar', save: 'Guardar', add: 'Añadir', delete: 'Eliminar',
    uploadError: 'Error al subir el archivo', close: 'Cerrar',
  },

  fab: { add: 'Añadir apunte' },

  demo: { welcomeTitle: 'Bienvenido a tu nueva agenda', welcomeNote: 'Pulsa + para añadir tu primer evento, o mira la Ayuda para conectar Claude.' },

  proj: {
    priority: { high: 'Alta', orange: 'Media-alta', yellow: 'Media', cyan: 'Media-baja', violet: 'Baja' },
    defaultName: 'Nuevo proyecto', untitled: 'Sin título', defaultState: 'Sin empezar',
    add: 'Añadir proyecto',
    panel: {
      namePlaceholder: 'Nombre del proyecto', close: 'Cerrar',
      priorityLabel: 'Prioridad', progressLabel: 'Progreso',
      stateLabel: 'Estado', statePlaceholder: 'Escribe el estado…',
      todosLabel: 'Tareas', todoPlaceholder: 'Añadir tarea…', todosEmpty: 'Sin tareas', addTodo: 'Añadir',
      notesLabel: 'Notas', notesPlaceholder: 'Próximo paso, última actualización…',
      delete: 'Eliminar', save: 'Guardar',
    },
  },

  auth: {
    appName: 'jsagenda',
    login: {
      title: 'Iniciar sesión', username: 'Usuario', password: 'Contraseña',
      submit: 'Iniciar sesión', noAccount: '¿No tienes cuenta?', registerLink: 'Crea una',
      forgot: '¿Olvidaste tu contraseña?', error: 'Usuario o contraseña incorrectos.',
    },
    register: {
      title: 'Crea tu cuenta gratuita', username: 'Usuario', usernameHint: '3-32 caracteres, letras/números/_/-, sin necesidad de email',
      password: 'Contraseña', passwordHint: 'Mínimo 8 caracteres', language: 'Idioma',
      submit: 'Crear cuenta', haveAccount: '¿Ya tienes cuenta?', loginLink: 'Inicia sesión',
      usernameTaken: 'Ese usuario ya está en uso.', error: 'No se pudo crear la cuenta, revisa los datos.',
      recoverySaveTitle: 'Guarda tu código de recuperación', recoverySaveBody: 'Es la única forma de recuperar tu cuenta si olvidas la contraseña. No se mostrará de nuevo.',
      recoveryContinue: 'Ya lo he guardado, continuar',
      mcpTitle: 'Tu URL personal de MCP', mcpBody: 'Usa esta URL para conectar tu propio Claude a tu agenda. Podrás encontrarla de nuevo en Ajustes de cuenta → Conectar Claude.',
      finish: 'Ir a mi agenda',
    },
    recover: {
      title: 'Recuperar cuenta', username: 'Usuario', recoveryCode: 'Código de recuperación', newPassword: 'Nueva contraseña',
      submit: 'Restablecer contraseña', backToLogin: 'Volver a iniciar sesión', error: 'Usuario o código de recuperación inválidos.',
      success: 'Contraseña restablecida. Guarda tu nuevo código de recuperación abajo.',
    },
    honeypotLabel: 'Sitio web',
  },

  account: {
    title: 'Ajustes de cuenta', username: 'Usuario',
    changeLanguage: 'Idioma', changeLanguageSaved: 'Idioma actualizado.',
    changePasswordTitle: 'Cambiar contraseña', currentPassword: 'Contraseña actual', newPassword: 'Nueva contraseña', changePasswordSubmit: 'Actualizar contraseña',
    changePasswordSuccess: 'Contraseña actualizada. Se cerró la sesión en otros dispositivos.', changePasswordError: 'La contraseña actual es incorrecta.',
    mcpTitle: 'Conectar Claude (MCP)', mcpBody: 'Esta URL es personal — cualquiera que la tenga puede leer y editar tu agenda. Regenerarla invalida la anterior al instante.',
    mcpRegenerate: 'Regenerar URL', mcpRegenerateConfirm: 'Esto invalidará tu URL de MCP actual en todos los dispositivos donde esté conectada. ¿Continuar?',
    mcpCopy: 'Copiar',
    logout: 'Cerrar sesión',
  },

  help: {
    title: 'Ayuda y conexión con Claude',
    intro: 'Usa esta URL personal para conectar tu propio Claude (Claude Code, Claude Desktop o claude.ai) a tu agenda. Trátala como una contraseña — cualquiera con esta URL puede leer y editar tu agenda.',
    cliTitle: 'Claude Code (CLI)',
    desktopTitle: 'Claude Desktop / claude.ai',
    desktopBody: 'Añade un conector personalizado con esta URL como servidor MCP Streamable HTTP.',
    toolsTitle: '¿Qué puede hacer?',
    toolsBody: 'Listar, añadir, actualizar, eliminar y buscar tus apuntes y proyectos — todo en lenguaje natural.',
    sectionsTitle: 'Agenda, Calendario y Proyectos',
    sectionsAgendaTitle: 'Agenda',
    sectionsAgendaBody: 'Una lista sencilla de tus eventos y tareas, agrupada en Hoy, Mañana, Más adelante y Vencido. La forma más rápida de ver qué toca y añadir nuevos apuntes.',
    sectionsCalendarTitle: 'Calendario',
    sectionsCalendarBody: 'Una vista mensual de los mismos eventos. Haz clic en cualquier día para ver o añadir apuntes en esa fecha, y echa un vistazo rápido a las semanas con más cosas.',
    sectionsProjectsTitle: 'Proyectos',
    sectionsProjectsBody: 'Un seguimiento aparte para proyectos personales más largos: prioridad, progreso, estado y una lista de tareas para cada uno. Independiente de los eventos de tu agenda.',
  },

  landing: {
    title: 'jsagenda — tu agenda pública y gratuita',
    tagline: 'Una agenda sencilla y privada para todos. Cuenta gratuita, tu propio acceso, conecta tu propio Claude.',
    cta: 'Crea tu cuenta gratuita',
    loginCta: '¿Ya tienes cuenta? Inicia sesión',
    feature1Title: 'Privada por defecto', feature1Body: 'Tu cuenta, tus datos. Nadie más puede ver tu agenda ni tus proyectos.',
    feature2Title: 'Conecta Claude', feature2Body: 'Gestiona tu agenda hablando con tu propio Claude vía MCP.',
    feature3Title: 'En tu idioma', feature3Body: 'Disponible en español, inglés, catalán y neerlandés.',
  },
};
