{
  "nav": {
    "templates": "Diseños",
    "create": "Crear mi web",
    "dashboard": "Mi panel",
    "menu": "Menú",
    "invitations": "Invitaciones",
    "skipToContent": "Saltar al contenido"
  },
  "home": {
    "title": "Web de boda con invitación digital y QR",
    "description": "La web de tu boda por 20 € (pago único): invitación digital con código QR y un panel que lo gestiona todo — confirmaciones, mesas, menús, autobús y preboda.",
    "hero": {
      "heading": "La web de tu boda, con toda la gestión incluida",
      "subheading": "Una web de boda completa —portada, historia, mapa, galería y confirmaciones en tiempo real— que es también tu invitación digital con código QR. Y detrás, un panel privado para gestionarlo todo: invitados, mesas, menús, autobuses y preboda.",
      "cta": "Crea tu web de boda",
      "ctaSecondary": "Ver los diseños",
      "badgeFree": "Diséñala sin pagar",
      "badgeNoSignup": "Empieza sin registrarte",
      "badgeNoCard": "Pago único, sin suscripciones",
      "scanMe": "Escanéame",
      "ctaPricing": "Ver precios",
      "micro": "Invitación digital con QR · Confirmaciones en tiempo real · Panel de gestión",
      "scrollCue": "Desliza para verla entera",
      "qrCta": "Pulsa aquí y mira la web de ejemplo"
    },
    "examples": {
      "heading": "Así quedan las webs de boda",
      "sub": "No son capturas: son las plantillas reales funcionando. Elige una y hazla tuya.",
      "use": "Usar esta plantilla"
    },
    "includes": {
      "eyebrow": "Todo incluido",
      "heading": "Todo lo que vuestra boda necesita, en una sola web",
      "sub": "Sin extras, sin módulos de pago y sin límites: cada apartado se enciende o se apaga desde el editor.",
      "cover": {
        "title": "Portada con vuestra foto",
        "body": "La foto que elijáis, encuadrada a vuestro gusto, con los nombres y la cuenta atrás del gran día."
      },
      "story": {
        "title": "Vuestra historia",
        "body": "Cómo os conocisteis, contado a vuestra manera. Es lo primero que lee quien recibe la invitación."
      },
      "schedule": {
        "title": "Cronograma y lugares",
        "body": "Ceremonia, banquete y fiesta con su hora, su dirección y su mapa. Nadie vuelve a preguntar dónde es."
      },
      "rsvp": {
        "title": "Confirmaciones en tiempo real",
        "body": "Quién viene, con qué acompañantes —por su nombre—, qué menú elige y qué alergias tiene."
      },
      "gallery": {
        "title": "Galería y álbum compartido",
        "body": "Hasta nueve fotos vuestras y un enlace para que los invitados suban las suyas después."
      },
      "gifts": {
        "title": "Mesa de regalos",
        "body": "Vuestro IBAN o la lista que ya tengáis, con un mensaje escrito por vosotros. Discreto y opcional."
      },
      "logistics": {
        "title": "Autobuses y preboda",
        "body": "Quién necesita plaza en el bus y quién viene al encuentro de la víspera, preguntado en la misma confirmación."
      },
      "qr": {
        "title": "Enlace propio y código QR",
        "body": "Para WhatsApp y para imprimir en la invitación de papel. El mismo enlace vale para siempre."
      }
    },
    "panel": {
      "eyebrow": "El panel de control",
      "heading": "La clave es el panel: la boda gestionada de principio a fin",
      "sub": "No compras solo una web bonita: compras la herramienta con la que se organiza una boda. Cada confirmación entra sola y hay una sección para cada cosa.",
      "overview": {
        "title": "Resumen",
        "body": "Las cifras del día de un vistazo —cuántos vienen, cuántos comensales— y lo que te queda por hacer, deducido solo."
      },
      "guests": {
        "title": "Invitados",
        "body": "Toda tu lista en un sitio: apunta, filtra por grupo o estado, corrige datos y recuerda por WhatsApp a quien no contesta."
      },
      "seating": {
        "title": "Mesas",
        "body": "Crea las mesas con sus plazas y sienta a los confirmados en dos toques, viendo la ocupación de cada una."
      },
      "catering": {
        "title": "Catering",
        "body": "Comensales, menús, alergias y plazas de bus ya sumados: un resumen listo para mandar al restaurante."
      },
      "share": {
        "title": "Compartir",
        "body": "Tu enlace y tu QR listos para imprimir, mensajes de WhatsApp ya escritos y cuántas visitas tiene la web."
      },
      "foot": "Te ahorra la hoja de cálculo, las llamadas una a una y perseguir confirmaciones por WhatsApp. Todo lo de la boda, gestionado en un solo sitio desde el primer día.",
      "transport": {
        "title": "Autobús",
        "body": "Tus invitados piden plaza al confirmar; tú cuadras buses, horarios y asientos, y la web lo enseña."
      },
      "preWedding": {
        "title": "Preboda",
        "body": "Anúnciala en la web y pregunta quién se apunta al confirmar: sabrás cuántos sois la víspera."
      },
      "card": {
        "seats": "comensales confirmados",
        "replied": "de la lista ha contestado",
        "tables": "mesas montadas",
        "pace": "Ritmo de confirmaciones",
        "cta": "Entra en el panel de {{hosts}}",
        "hint": "La boda entera dentro, tal y como lo verías tú. Se abre en una pestaña nueva."
      }
    },
    "compare": {
      "eyebrow": "Comparativa",
      "heading": "La misma web, sin el presupuesto de una web a medida",
      "sub": "Encargar la web de una boda a un estudio cuesta cientos o miles de euros y semanas de trabajo. Aquí tienes el mismo resultado, listo en minutos.",
      "colUs": "Con QRinvites",
      "colThem": "Una web de boda a medida",
      "r1": {
        "label": "Precio",
        "us": "Un único pago pequeño, con todo incluido para siempre",
        "them": "Cientos o miles de euros de desarrollo"
      },
      "r2": {
        "label": "Tiempo",
        "us": "Lista en minutos, la montas tú mismo",
        "them": "Semanas o meses de idas y venidas"
      },
      "r3": {
        "label": "Conocimientos",
        "us": "Ninguno: rellenas los datos y publicas",
        "them": "Necesitas diseñador y programador"
      },
      "r4": {
        "label": "Cambios",
        "us": "Editas y se actualiza al instante, gratis",
        "them": "Pides el cambio, esperas y a veces pagas"
      },
      "r5": {
        "label": "Dominio y hosting",
        "us": "Incluidos, sin configurar nada",
        "them": "Los contratas y mantienes aparte"
      },
      "r6": {
        "label": "Gestión de invitados",
        "us": "Panel con confirmaciones, mesas, menús, autobús y preboda incluido",
        "them": "No suele traer panel: lo llevas en una hoja"
      },
      "r7": {
        "label": "Mantenimiento",
        "us": "Cero: nos ocupamos nosotros para siempre",
        "them": "Actualizaciones y averías por tu cuenta"
      }
    },
    "steps": {
      "eyebrow": "Paso a paso",
      "heading": "Cómo funciona",
      "sub": "De cero a la web de tu boda publicada en cinco minutos",
      "one": {
        "title": "Elige el diseño de tu web",
        "body": "Diseños profesionales pensados para bodas. Lo que eliges es exactamente la web que verán vuestros invitados."
      },
      "two": {
        "title": "Personalízala entera",
        "body": "Nombres, fecha, lugares con mapa, historia, galería y confirmaciones, con vista previa en vivo. Sin límites y sin registrarte."
      },
      "three": {
        "title": "Publícala con un pago único",
        "body": "Entra con Google —sin contraseñas ni tarjeta guardada—, paga una vez y obtén tu enlace único y tu código QR. Ya es tuya para siempre."
      },
      "four": {
        "title": "Compártela y gestiónala desde el panel",
        "body": "Envía el enlace por WhatsApp o imprime el QR. Las confirmaciones entran solas en tu panel, donde gestionas invitados, mesas, catering, autobuses y preboda."
      },
      "step": "Paso {{n}}"
    },
    "faq": {
      "eyebrow": "FAQ",
      "heading": "Preguntas frecuentes",
      "sub": "Lo que todo el mundo pregunta antes de crear la suya",
      "q1": {
        "q": "¿Cuánto cuesta la web?",
        "a": "Diseñarla no cuesta nada: entras al editor sin registrarte y usas todas las opciones, plantillas, fotos y secciones sin ningún límite. Solo se paga al publicarla: un único pago de 20 € por web, para siempre, sin suscripciones ni renovaciones. Puedes verla terminada antes de decidir."
      },
      "q2": {
        "q": "¿Necesito registrarme o dar mi correo?",
        "a": "Diseñas toda la web sin registrarte. Solo al publicarla te pedimos entrar con tu cuenta de Google (sin contraseñas nuevas ni correos de confirmación) para que tu web y tu panel de invitados sean solo tuyos, desde cualquier dispositivo."
      },
      "q3": {
        "q": "¿Cuándo me piden la tarjeta?",
        "a": "Solo al publicar, nunca antes: diseñas la web completa y decides con el resultado delante. El cobro es un pago único y seguro con Stripe, sin suscripciones. Nosotros no vemos ni guardamos los datos de tu tarjeta."
      },
      "q4": {
        "q": "¿Cómo les llega la invitación a mis invitados?",
        "a": "Por donde tú quieras: les envías el enlace por WhatsApp o correo, o imprimes el código QR en un detalle, un cartel o la mesa para que lo escaneen con la cámara. El enlace abre la invitación al instante, sin instalar nada y sin registrarse."
      },
      "q5": {
        "q": "¿Puedo cambiar la web después de publicarla?",
        "a": "Sí. Cada cambio se aplica al instante para todos tus invitados, con el mismo enlace y el mismo código QR. Cambia la hora, el sitio o el diseño sin reimprimir nada."
      },
      "q6": {
        "q": "¿Cómo funcionan las confirmaciones de asistencia?",
        "a": "Tus invitados confirman asistencia desde la propia web —con acompañantes, menú, alergias, autobús y preboda— y tú lo gestionas todo desde tu panel: invitados, mesas, catering y plazas de bus, con exportación a CSV."
      },
      "q7": {
        "q": "¿Y los invitados mayores o poco tecnológicos?",
        "a": "Abrir la web es pulsar un enlace o escanear el código QR: no hay que instalar nada, ni registrarse, ni recordar contraseñas. Y confirmar la asistencia es un formulario de tres campos. Si alguien prefiere avisaros por teléfono, podéis añadir su confirmación a mano desde el panel."
      },
      "q8": {
        "q": "¿Es difícil crear mi primera web?",
        "a": "¡Empezar es facilísimo! El editor arranca con un ejemplo ya relleno: cambias los nombres, la fecha y el lugar, y en menos de 5 minutos tienes tu web publicada."
      }
    },
    "finalCta": {
      "heading": "Vuestra boda merece una web a la altura",
      "body": "Diseña la web de vuestra boda en minutos —invitación digital y código QR incluidos—, publícala con un único pago y gestionadlo todo desde el panel: invitados, mesas, menús, autobuses y preboda.",
      "cta": "Diseña tu web"
    },
    "studio": {
      "eyebrow": "¿Necesitas más?",
      "heading": "¿Quieres una web aún más a medida?",
      "sub": "Si esta web se os queda corta y buscáis una completamente a medida —con vuestra propia marca, vuestro dominio y todo lo que necesitéis—, contádnoslo y os preparamos un presupuesto sin compromiso.",
      "cta": "Pedir presupuesto"
    }
  },
  "common": {
    "loading": "Cargando…",
    "language": "Idioma",
    "yes": "Sí",
    "no": "No",
    "close": "Cerrar"
  },
  "templates": {
    "classic": {
      "name": "Clásica"
    },
    "midnight": {
      "name": "Medianoche"
    },
    "botanical": {
      "name": "Botánica"
    }
  },
  "editor": {
    "title": "Crea la web de tu boda",
    "subtitle": "No es una tarjeta ni un PDF: estás montando la web completa de vuestra boda, con su enlace propio para compartir.",
    "description": "Editor de webs de boda con vista previa en vivo: portada, historia, mapa, galería y confirmaciones, con invitación digital y código QR incluidos.",
    "preview": "Vista previa",
    "web": {
      "title": "La web de vuestra boda",
      "sub": "Esta es la dirección pública de tu web. Compártela por WhatsApp o con su código QR.",
      "copy": "Copiar enlace",
      "open": "Abrir",
      "liveNote": "Tu web está publicada en esta dirección: cualquiera con el enlace puede abrirla."
    },
    "autosaveHint": "Los cambios se guardan solos.",
    "publish": "Publicar",
    "addVenue": "Añadir momento",
    "removeVenue": "Quitar",
    "section": {
      "basics": "Datos",
      "story": "Historia",
      "rsvp": "Confirmaciones",
      "schedule": "Cronograma y lugares",
      "photos": "Fotos",
      "gifts": "Mesa de regalos",
      "photoShare": "Álbum de fotos compartido",
      "preWedding": "La preboda",
      "family": "Padres y padrinos"
    },
    "field": {
      "date": "Fecha",
      "time": "Hora",
      "greeting": "Frase de cabecera",
      "template": "Plantilla",
      "venueLabel": "Etiqueta (Ceremonia, Banquete…)",
      "venueName": "Nombre del lugar",
      "venueAddress": "Dirección",
      "story": "Nuestra historia",
      "dressCode": "Código de vestimenta",
      "rsvpEnabled": "Activar confirmaciones",
      "askGuests": "Preguntar acompañantes",
      "askMenu": "Preguntar menú",
      "askAllergies": "Preguntar alergias",
      "rsvpDeadline": "Fecha límite",
      "maxGuests": "Máximo de acompañantes por invitado",
      "maxGuestsHint": "Cada invitado podrá traer hasta este número de acompañantes, indicando el nombre y el apellido de cada uno.",
      "allergiesNotice": "Las alergias son datos de salud. Pídelas solo si las necesitas para el catering: se guardan con la invitación, solo las ves tú y se borran cuando la borres.",
      "cover": "Foto de portada",
      "coverCta": "Elegir una foto",
      "coverBusy": "Subiendo la foto…",
      "coverRemove": "Quitar la foto",
      "coverHint": "Se verá en tu invitación y será la imagen que aparezca al compartirla por WhatsApp. JPG, PNG o WebP.",
      "coverError": "No hemos podido subir la foto. Prueba con otra o inténtalo de nuevo.",
      "dressCodeHint": "Déjalo vacío si no quieres indicar vestimenta.",
      "gallery": "Galería de fotos",
      "galleryCta": "Añadir fotos",
      "galleryRemove": "Quitar",
      "galleryHint": "Se muestran en la invitación, debajo de los lugares. Hasta {{max}} fotos.",
      "familyLines": "Personas a destacar",
      "familyHint": "Una línea por familia o pareja: «Hija de Marta y Julián», «Padrinos: Ana y Luis»…",
      "giftsEnabled": "Mostrar mesa de regalos en la invitación",
      "giftsIban": "IBAN o número de cuenta",
      "giftsUrl": "Enlace a la lista de regalos (opcional)",
      "giftsNote": "Mensaje para los invitados",
      "giftsHint": "Aparece al final de la invitación. Puedes poner solo el IBAN, solo el enlace, o ambos.",
      "askTransport": "Preguntar si necesitan plaza de autobús",
      "showStory": "Mostrar la historia",
      "showDressCode": "Mostrar la vestimenta",
      "showSchedule": "Mostrar el cronograma",
      "showVenues": "Mostrar las fichas de lugares con su mapa",
      "showGallery": "Mostrar la galería",
      "showSection": "Mostrar esta sección en la invitación",
      "menuOptions": "Opciones de menú",
      "menuAdd": "Añadir",
      "menuOptionsHint": "Tus invitados elegirán una de estas opciones al confirmar; si no añades ninguna, solo verán «Sin preferencia».",
      "frameHint": "Arrastra para encuadrar",
      "photoShareEnabled": "Invita a los invitados a subir sus fotos a un álbum compartido",
      "photoShareUrl": "Enlace del álbum (Google Drive, Dropbox…)",
      "photoShareNote": "Mensaje para tus invitados",
      "photoShareHint": "Se muestra al final de la invitación como un botón. Los invitados abren el enlace para subir sus fotos de la boda.",
      "zoom": "Zoom",
      "zoomIn": "Acercar",
      "zoomOut": "Alejar",
      "preWeddingEnabled": "Celebramos preboda y queremos anunciarla en la web",
      "preWeddingNote": "Mensaje para los invitados",
      "preWeddingAsk": "Preguntar al confirmar quién se apunta a la preboda",
      "preWeddingHint": "La fecha, el lugar y el mensaje se muestran en la web; las respuestas llegan a la pestaña «Preboda» de tu panel.",
      "askTransportHint": "Las rutas, los horarios y las plazas de los buses se gestionan desde la pestaña «Autobús» de tu panel; los invitados las ven en la web."
    },
    "error": {
      "required": "Este campo es obligatorio."
    },
    "status": {
      "idle": "Sin publicar",
      "saving": "Guardando…",
      "saved": "Guardado",
      "error": "No se pudo guardar"
    },
    "sample": {
      "host1": "Lucía",
      "host2": "Mateo",
      "greeting": "Nos casamos",
      "story": "Nos conocimos un martes cualquiera y desde entonces no hemos parado de celebrar. Ahora queremos celebrarlo contigo.",
      "venueLabel": "Ceremonia",
      "venueName": "Iglesia de San Miguel",
      "venueAddress": "Plaza Mayor 1, Segovia",
      "dressCode": "Etiqueta formal",
      "venueLabel2": "Banquete",
      "venueLabel3": "La fiesta",
      "menu1": "Carne",
      "menu2": "Pescado"
    },
    "signInTitle": "Entra para publicarla",
    "signInBody": "Publicar requiere tu cuenta de Google: así la web queda asociada a tu perfil y puedes gestionarla desde tu panel, desde cualquier dispositivo. Tu diseño ya está guardado en este navegador.",
    "signInLater": "Seguir editando",
    "publishedTitle": "¡Invitación publicada!",
    "publishedBody": "Comparte este enlace con tus invitados.",
    "invitationLabel": "Tu invitación",
    "panelLabel": "Tu panel privado",
    "panelHint": "Entra con Google desde cualquier dispositivo: el panel es privado y solo tuyo.",
    "pay": {
      "redirecting": "Llevándote al pago seguro de Stripe…",
      "error": "No hemos podido iniciar el pago. Inténtalo de nuevo en unos segundos.",
      "eyebrow": "Último paso",
      "title": "Publica la web de vuestra boda",
      "sub": "Un único pago. Sin suscripciones, sin renovaciones y sin letra pequeña.",
      "productName": "La web de vuestra boda",
      "b1": "Enlace propio y código QR para compartirla",
      "b2": "Confirmaciones con acompañantes, menú y alergias",
      "b3": "Panel con invitados, mesas, menús, autobuses y preboda",
      "b4": "Visitas e invitados sin límite, y cambios al instante",
      "b5": "Sin anuncios ni marcas de agua: la web es solo vuestra",
      "cta": "Pagar y publicar",
      "note": "Pago único y seguro con Stripe. Al confirmarse, vuestra web se publica sola y aparece en el panel."
    },
    "cancel": "Volver al editor",
    "close": "Cerrar",
    "scheduleHint": "Cada momento aparece en la línea de tiempo de la invitación y como ficha de lugar con enlace al mapa. El orden de la lista es el orden del día.",
    "momentLabel": "Momento {{number}}",
    "moveUp": "Subir",
    "moveDown": "Bajar",
    "previewLive": "Así se verá la web de vuestra boda",
    "previewSub": "Se actualiza al momento con cada cambio.",
    "viewPreview": "Ver cómo va quedando tu web",
    "host": {
      "1": "Nombre de un miembro de la pareja",
      "2": "Nombre del otro miembro"
    }
  },
  "invitation": {
    "story": "Nuestra historia",
    "venues": "Dónde",
    "dressCode": "Vestimenta",
    "directions": "Cómo llegar",
    "share": "Comparte la invitación",
    "qrCaption": "Escanea o descarga el código QR",
    "notFound": "Invitación no encontrada",
    "notFoundBody": "Puede que el enlace haya cambiado o que la invitación ya no esté publicada.",
    "goHome": "Ir al inicio",
    "ogDescription": "{{hosts}} · {{date}} · {{venue}}. Ábrela para ver todos los detalles y confirmar tu asistencia.",
    "ogDescriptionNoVenue": "{{hosts}} · {{date}}. Ábrela para ver todos los detalles y confirmar tu asistencia.",
    "schedule": "Cronograma",
    "scheduleEyebrow": "El gran día",
    "gallery": "Galería",
    "farewell": "Nos haría muy felices contar contigo.",
    "venuesHeading": "Los lugares",
    "family": "Nuestras familias",
    "gifts": "Mesa de regalos",
    "giftsLink": "Ver lista de regalos",
    "giftsShowIban": "Ver cuenta bancaria",
    "giftsCopy": "Copiar",
    "giftsCopied": "¡Copiado!",
    "photos": "Álbum de fotos",
    "photosShare": "Comparte tus fotos",
    "photosOpen": "Abrir el álbum",
    "photosDemo": "Este enlace es de demostración, así que no lleva a ningún sitio. En tu invitación real, este botón abre la carpeta de fotos de tus invitados.",
    "errorTitle": "No hemos podido cargar la invitación",
    "errorBody": "Puede ser un problema temporal de conexión. Vuelve a intentarlo.",
    "retry": "Reintentar",
    "preWedding": "La preboda",
    "transport": "Autobús para invitados",
    "transportDeparture": "Salida",
    "transportReturn": "Vuelta"
  },
  "rsvp": {
    "title": "Confirma tu asistencia",
    "name": "Tu nombre",
    "nameRequired": "Escribe tu nombre.",
    "attending": "¿Podrás venir?",
    "yes": "Sí, allí estaré",
    "no": "No podré",
    "guests": "¿Cuántos acompañantes traes?",
    "companion": "Acompañante {{n}}",
    "firstName": "Nombre",
    "lastName": "Apellido",
    "companionsRequired": "Escribe el nombre y el apellido de cada acompañante.",
    "menu": "Menú",
    "menuDefault": "Sin preferencia",
    "allergies": "Alergias o intolerancias",
    "notes": "¿Algo que debamos saber?",
    "send": "Enviar confirmación",
    "sending": "Enviando…",
    "deadline": "Confirma antes del",
    "thanksYes": "¡Gracias! Nos vemos allí.",
    "thanksNo": "Gracias por avisarnos. Te echaremos de menos.",
    "error": "No hemos podido guardar tu confirmación. Inténtalo de nuevo.",
    "allergiesHint": "Opcional. Solo se usa para organizar el menú de la boda y solo lo ve quien te invita.",
    "guestsHint": "Hasta {{max}} acompañantes.",
    "fixFields": "Revisa los campos marcados: falta algo por corregir antes de enviar.",
    "transport": "¿Necesitas plaza en el autobús?",
    "transportYes": "Sí, iré en autobús",
    "transportNo": "No, voy por mi cuenta",
    "preWedding": "¿Te apuntas también a la preboda?",
    "preWeddingYes": "Sí, me apunto",
    "preWeddingNo": "No podré"
  },
  "dashboard": {
    "title": "Tu panel",
    "subtitle": "Todo lo de tu boda, en un solo sitio.",
    "newEvent": "Nueva invitación",
    "events": "Tus invitaciones",
    "untitled": "Sin título",
    "viewInvitation": "Ver invitación pública",
    "copyLink": "Copiar enlace",
    "copied": "¡Copiado!",
    "signOut": "Cerrar sesión",
    "signInTitle": "Entra en tu panel",
    "signInBody": "Entra con la misma cuenta de Google con la que publicaste. Es privado y solo tuyo.",
    "add": {
      "name": "Nombre del invitado…",
      "cta": "Añadir"
    },
    "emptyTitle": "Aún no tienes invitaciones",
    "emptyBody": "Diseña la primera en un par de minutos.",
    "noRsvps": "Todavía no ha confirmado nadie. Comparte el enlace o el QR para empezar.",
    "deleteRsvp": "Eliminar confirmación de",
    "deleteConfirm": "¿Eliminar la confirmación de {{name}}? Esta acción no se puede deshacer.",
    "editEvent": "Seguir editando",
    "deleteEvent": "Borrar",
    "deleteEventError": "No se pudo borrar la invitación. Recarga la página e inténtalo de nuevo.",
    "publishNow": "Publicar",
    "publishError": "No se pudo publicar la invitación. Inténtalo de nuevo en unos segundos.",
    "account": {
      "title": "Tu cuenta",
      "body": "Puedes borrar tu cuenta cuando quieras. Se eliminarán tus datos personales, tus invitaciones y las confirmaciones de tus invitados, conforme al RGPD.",
      "delete": "Borrar mi cuenta",
      "modalTitle": "Borrar tu cuenta",
      "modalBody": "Esta acción es definitiva: se borran tu cuenta, todas tus invitaciones (incluidas las que hayas pagado, sin reembolso) y todas las confirmaciones de tus invitados. No se puede deshacer.",
      "ack": "Entiendo que se borrará todo de forma definitiva, incluidas las invitaciones que pagué.",
      "confirm": "Borrar mi cuenta definitivamente",
      "error": "No se pudo borrar la cuenta. Vuelve a intentarlo en unos minutos."
    },
    "delete": {
      "title": "Borrar invitación",
      "body": "Vas a borrar «{{name}}». La invitación, su enlace y todas sus confirmaciones se eliminarán de forma inmediata y definitiva.",
      "cancel": "Cancelar",
      "confirm": "Borrar definitivamente",
      "paidWarning": "Esta invitación está pagada. Si la borras, renuncias para siempre a lo que pagaste por ella. No hay reembolso y no se puede recuperar.",
      "paidAck": "Entiendo que al borrar esta invitación pierdo definitivamente lo que pagué por ella.",
      "draftNote": "Es un borrador sin publicar: se borra sin más y no has pagado nada por él."
    },
    "status": {
      "draft": "Borrador",
      "published": "Publicada",
      "attending": "Confirmado",
      "declined": "No viene",
      "pending": "Sin respuesta"
    },
    "stat": {
      "seats": "Comensales"
    },
    "chart": {
      "perDay": "Respuestas por día"
    },
    "col": {
      "name": "Nombre",
      "attending": "Asiste",
      "guests": "Acompañantes",
      "menu": "Menú",
      "allergies": "Alergias",
      "notes": "Notas",
      "date": "Fecha",
      "transport": "Autobús",
      "group": "Grupo",
      "table": "Mesa",
      "guestOf": "Acompañante de",
      "preEvent": "Preboda"
    },
    "pay": {
      "checking": "Confirmando tu pago…",
      "success": "¡Pago confirmado! Tu invitación ya está publicada y es tuya para siempre.",
      "thanks": "¡Mil gracias por el café! Apoyos así mantienen vivo el proyecto.",
      "error": "No hemos podido confirmar el pago. Recuerda que la pasarela está en modo de pruebas y no realiza cobros reales: no se te ha cargado nada. Puedes volver a intentarlo cuando quieras."
    },
    "support": {
      "title": "¿Te está siendo útil?",
      "body": "Este proyecto lo mantiene una sola persona. Si te apetece, invítame a un café.",
      "amount": "Importe en euros (mínimo 5)",
      "cta": "Invitar"
    },
    "sections": "Secciones del panel",
    "tab": {
      "overview": "Resumen",
      "guests": "Invitados",
      "seating": "Mesas",
      "catering": "Catering",
      "share": "Compartir",
      "transport": "Autobús",
      "preWedding": "Preboda"
    },
    "draftNote": "Esta invitación es un borrador: sólo la ves tú. Publícala para poder compartirla y empezar a recibir confirmaciones.",
    "count": {
      "all": "En la lista",
      "attending": "Confirmados",
      "declined": "No vienen",
      "pending": "Sin respuesta"
    },
    "overview": {
      "eyebrow": "Vuestro gran día",
      "ringLabel": "Reparto de respuestas",
      "numbers": "Cifras de la boda",
      "responded": "Han contestado",
      "stepsTitle": "Qué te queda por hacer",
      "stepsHint": "Se marca solo según avanzas: no hay nada que apuntar a mano.",
      "stepGo": "Ir",
      "activityTitle": "Últimas respuestas",
      "activityEmpty": "Aquí aparecerán las confirmaciones en cuanto empiecen a llegar.",
      "step": {
        "publish": "Publica tu invitación",
        "cover": "Añade vuestra foto de portada",
        "share": "Comparte el enlace con tus invitados",
        "guests": "Apunta a quién has invitado",
        "chase": "Recuerda a quien no ha contestado",
        "seating": "Reparte a los confirmados por mesas",
        "catering": "Prepara la hoja del catering"
      }
    },
    "guests": {
      "addTitle": "Añadir invitados",
      "bulkOpen": "Pegar una lista",
      "bulkLabel": "Un nombre por línea",
      "bulkPlaceholder": "Ana García\nCarlos Ruiz\nTía Marisa",
      "bulkCancel": "Cancelar",
      "bulkCta": "Añadir a la lista",
      "searchPlaceholder": "Buscar por nombre, grupo, mesa o nota",
      "allGroups": "Todos los grupos",
      "noMatches": "Ningún invitado coincide con la búsqueda.",
      "seatsTag": "{{n}} plazas",
      "edit": "Editar",
      "close": "Cerrar",
      "cancel": "Cancelar",
      "save": "Guardar",
      "saveError": "No hemos podido guardar el cambio. Inténtalo de nuevo.",
      "groupPlaceholder": "Familia, amigos, trabajo…",
      "needsTransport": "Necesita plaza de autobús",
      "companionOf": "con {{name}}",
      "attendsPreWedding": "Viene a la preboda"
    },
    "seating": {
      "seated": "Sentados",
      "unseated": "Sin mesa",
      "capacity": "Plazas creadas",
      "tableName": "Nombre de la mesa",
      "tablePlaceholder": "Mesa 1, Presidencial, Amigos…",
      "tableSeats": "Plazas",
      "addTable": "Crear mesa",
      "noTables": "Todavía no has creado ninguna mesa. Empieza por la primera.",
      "ofSeats": "{{taken}} de {{seats}} plazas",
      "takenOnly": "{{taken}} sentados",
      "removeTable": "Quitar la mesa",
      "removeConfirm": "Vas a quitar esta mesa y {{n}} invitados se quedarán sin sitio asignado. ¿Seguimos?",
      "duplicateTable": "Ya tienes una mesa con ese nombre.",
      "emptyTable": "Mesa vacía.",
      "unseat": "Levantar de la mesa a",
      "poolTitle": "Todavía sin mesa",
      "poolHint": "Elige una mesa para cada uno; puedes cambiarlos cuando quieras.",
      "poolDone": "Todos los confirmados tienen mesa.",
      "poolNoGuests": "Cuando tengas confirmaciones aparecerán aquí para sentarlas.",
      "assignTo": "Asignar mesa a",
      "choose": "Elegir mesa"
    },
    "catering": {
      "title": "Hoja del catering",
      "hint": "Lo que necesita saber el restaurante, el catering o el autobús. Cópialo y mándalo tal cual.",
      "copy": "Copiar resumen",
      "seats": "Comensales",
      "responses": "Confirmaciones",
      "allergyCount": "Con alergias",
      "busSeats": "Plazas de autobús",
      "pendingNote": "Faltan {{n}} por contestar, así que estas cifras aún pueden subir.",
      "menus": "Menús",
      "noMenus": "Nadie ha elegido menú todavía.",
      "noMenuChosen": "{{n}} sin menú elegido",
      "allergies": "Alergias e intolerancias",
      "noAllergies": "Nadie ha declarado alergias.",
      "healthNote": "Son datos de salud: úsalos sólo para organizar la comida y no los compartas más allá de quien la prepara.",
      "bus": "Autobús"
    },
    "share": {
      "linkTitle": "Tu enlace",
      "linkHint": "El mismo para todos y para siempre: si editas la invitación, se actualiza sola.",
      "whatsapp": "Enviar por WhatsApp",
      "remind": "Recordar a los {{n}} que faltan",
      "qrTitle": "Código QR",
      "qrHint": "Descárgalo para imprimirlo en un detalle, un cartel o la mesa.",
      "inviteMessage": "¡Nos casamos! {{hosts}} · {{date}}. Aquí tienes nuestra invitación, con todos los detalles y para confirmar tu asistencia: {{url}}",
      "reminderMessage": "¡Hola! Nos falta tu confirmación para la boda de {{hosts}}. Es un momento desde aquí: {{url}} ¡Gracias!"
    },
    "loadErrorTitle": "No hemos podido cargar tus invitaciones",
    "loadErrorBody": "Puede ser un problema temporal de conexión.",
    "guestsLoadError": "No hemos podido cargar la lista de invitados. Vuelve a intentarlo.",
    "actionError": "No se pudo completar la acción. Vuelve a intentarlo.",
    "transport": {
      "title": "Autobuses",
      "hint": "Cuadra las plazas que piden tus invitados al confirmar con los buses que pongas. Lo que definas aquí se muestra en tu web.",
      "copy": "Copiar resumen",
      "notAsked": "Aún no preguntas por el autobús al confirmar: actívalo en la sección de confirmaciones del editor para que tus invitados pidan plaza.",
      "requested": "Plazas pedidas",
      "capacity": "Plazas en buses",
      "free": "Plazas libres",
      "over": "Faltan {{n}} plazas: añade un bus o amplía los que tienes.",
      "busName": "Nombre o ruta",
      "busPlaceholder": "Bus 1 · Centro",
      "departurePlace": "Lugar de salida",
      "departureTime": "Salida",
      "returnTime": "Vuelta",
      "busSeats": "Plazas",
      "addBus": "Añadir bus",
      "noBuses": "Todavía no hay ningún bus. Añade el primero y tus invitados verán la ruta y los horarios en la web.",
      "removeBus": "Quitar bus",
      "seatsOf": "{{seats}} plazas",
      "noSeatLimit": "Sin límite de plazas",
      "note": "Nota para los invitados",
      "noteHint": "Se muestra en la web junto a los buses («Reserva tu plaza al confirmar asistencia»).",
      "saveNote": "Guardar nota",
      "whoNeeds": "Quién pide plaza",
      "noNeeds": "Nadie ha pedido plaza todavía.",
      "fleet": "Buses",
      "departureShort": "Salida",
      "returnShort": "Vuelta",
      "late": "Sale a la misma hora o casi que la ceremonia de las {{time}}: adelanta la salida o los invitados llegarán tarde."
    },
    "preWedding": {
      "title": "La preboda",
      "hint": "Quién se apunta a la preboda, con las mismas confirmaciones de tu web.",
      "copy": "Copiar resumen",
      "notEnabled": "La preboda no está activada: enciéndela en el editor para anunciarla en tu web y preguntar quién viene.",
      "notAsked": "Anuncias la preboda pero no preguntas la asistencia al confirmar: activa la pregunta en el editor para llenar esta pestaña.",
      "details": "El plan",
      "coming": "Vienen",
      "notComing": "No vienen",
      "unanswered": "Sin respuesta",
      "who": "Quién viene",
      "noAnswers": "Todavía nadie se ha apuntado a la preboda."
    },
    "pager": {
      "label": "Páginas de la lista",
      "prev": "Anterior",
      "next": "Siguiente",
      "range": "{{from}}–{{to}} de {{total}}"
    },
    "summary": {
      "button": "Descargar resumen (PDF)",
      "blocked": "El navegador ha bloqueado la ventana del resumen. Permite las ventanas emergentes e inténtalo de nuevo.",
      "title": "Resumen de la boda",
      "generated": "Generado el {{date}} con QRinvites · qrinvites.com",
      "seats": "Comensales",
      "attending": "Confirmados",
      "pending": "Sin responder",
      "declined": "No vienen",
      "menus": "Menús para el catering",
      "allergies": "Alergias e intolerancias",
      "bus": "Autobús · {{seats}} plazas pedidas",
      "preWedding": "Preboda · {{seats}} apuntados",
      "tables": "Mesas del banquete",
      "tableSeats": "{{taken}} de {{seats}}",
      "unseated": "Sin mesa asignada",
      "guests": "Lista completa · {{total}} entradas"
    }
  },
  "auth": {
    "google": "Continuar con Google",
    "connecting": "Conectando…",
    "googleHint": "Sin contraseñas ni correos: entras al instante con tu cuenta de Google."
  },
  "admin": {
    "eyebrow": "Administración",
    "title": "Panel de administración",
    "signInTitle": "Entra para ver la analítica",
    "range": "Periodo",
    "days": "{{n}} días",
    "funnel": "Embudo de conversión",
    "perDay": "Visitas por día",
    "noData": "Aún no hay datos.",
    "step": {
      "visits": "Visitas",
      "editor": "Abren el editor",
      "published": "Publican",
      "paid": "Pagan"
    },
    "deniedTitle": "Sin acceso",
    "deniedBody": "Esta analítica es sólo para el dueño del sitio.",
    "tabs": {
      "overview": "Resumen",
      "users": "Usuarios",
      "events": "Invitaciones",
      "payments": "Pagos",
      "audit": "Auditoría",
      "database": "Base de datos"
    },
    "metric": {
      "registeredUsers": "Usuarios registrados",
      "visitors30d": "Visitantes únicos (30 d)",
      "publishedActive": "Invitaciones publicadas",
      "rsvps": "Confirmaciones totales",
      "checkouts": "Checkouts iniciados",
      "paymentsConfirmed": "Pagos confirmados",
      "revenue": "Ingresos",
      "convCheckout": "Pagos / checkouts",
      "convUsers": "Pagos / usuarios",
      "activeUnpaid": "Borradores",
      "paidInvitations": "Invitaciones pagadas",
      "avgPayment": "Ticket medio"
    },
    "users": {
      "search": "Buscar por correo…",
      "colEmail": "Correo",
      "colCreated": "Alta",
      "colEvents": "Invitaciones",
      "colPayments": "Pagos",
      "colRevenue": "Importe",
      "colState": "Estado",
      "view": "Ver como usuario",
      "suspend": "Suspender",
      "unsuspend": "Reactivar",
      "delete": "Borrar",
      "deleteConfirm": "¿Borrar la cuenta {{email}} y todo lo suyo (invitaciones, confirmaciones)? Esta acción es definitiva.",
      "suspendConfirm": "¿Suspender la cuenta {{email}}? Sus invitaciones dejarán de ser visibles y no podrá publicar.",
      "badgeAdmin": "admin",
      "badgeSuspended": "suspendida",
      "badgeActive": "activa",
      "empty": "Sin usuarios que coincidan."
    },
    "userDetail": {
      "title": "Vista como usuario",
      "back": "Volver a la lista",
      "events": "Sus invitaciones",
      "payments": "Sus pagos",
      "rsvps": "{{n}} confirmaciones",
      "none": "Nada que mostrar.",
      "open": "Abrir invitación"
    },
    "events": {
      "search": "Buscar por slug o correo…",
      "colSlug": "Slug",
      "colOwner": "Dueño",
      "colStatus": "Estado",
      "colRsvps": "Confirmaciones",
      "colCreated": "Creada",
      "unpublish": "Despublicar",
      "unpublishConfirm": "¿Despublicar «{{slug}}»? Volverá a borrador y su enlace dejará de funcionar.",
      "delete": "Borrar",
      "deleteConfirm": "¿Borrar «{{slug}}»? Borrado lógico con purga a 30 días.",
      "badgeDeleted": "borrada",
      "badgePaid": "pagada",
      "empty": "Sin invitaciones que coincidan."
    },
    "payments": {
      "colWhen": "Fecha",
      "colUser": "Usuario",
      "colKind": "Tipo",
      "colAmount": "Importe",
      "colStatus": "Estado",
      "colSession": "Sesión",
      "empty": "Todavía no hay pagos.",
      "kind": {
        "support": "Apoyo",
        "invitation": "Invitación"
      },
      "status": {
        "pending": "Pendiente",
        "paid": "Pagado",
        "expired": "Caducado"
      }
    },
    "audit": {
      "colWhen": "Fecha",
      "colAdmin": "Admin",
      "colAction": "Acción",
      "colTarget": "Objetivo",
      "empty": "Sin acciones registradas."
    },
    "refresh": "Actualizar",
    "actionError": "La acción ha fallado. Vuelve a intentarlo.",
    "perDayBusiness": "Publicaciones y pagos por día",
    "db": {
      "tables": "Tablas",
      "empty": "Sin filas.",
      "delete": "Borrar",
      "deleteConfirm": "¿Borrar esta fila de «{{table}}»? ({{id}}) No hay papelera: es definitivo.",
      "prev": "Anteriores",
      "next": "Siguientes",
      "legend": "¿Qué es cada campo?"
    },
    "dbfield": {
      "action": "Acción de administración registrada",
      "admin_id": "Administrador que hizo la acción",
      "allergies": "Alergias indicadas (dato de salud)",
      "amount_cents": "Importe en céntimos de euro",
      "analytics_exempt": "Excluida de las métricas (cuentas del dueño)",
      "attending": "Confirma asistencia (sí/no)",
      "base_locale": "Idioma en que se creó la invitación",
      "bucket": "Contador de límite: qué acción limita",
      "bucket_id": "Carpeta de almacenamiento (event-images)",
      "confirmed_at": "Fecha de confirmación del pago",
      "count": "Acciones acumuladas en la ventana",
      "created_at": "Fecha de creación de la fila",
      "currency": "Moneda del pago",
      "data": "Contenido de la invitación (nombres, fecha, lugares, textos)",
      "deleted_at": "Fecha de borrado por el usuario (vacío = viva)",
      "detail": "Detalle adicional de la acción",
      "email": "Correo de la cuenta",
      "event_id": "Invitación a la que pertenece",
      "external_id": "Id de la sesión de pago en Stripe",
      "guests": "Número de acompañantes",
      "id": "Identificador único de la fila",
      "is_admin": "Es administrador del sitio",
      "kind": "Tipo de pago (invitation = web de boda, support = apoyo)",
      "locale": "Idioma de la visita",
      "menu": "Menú elegido",
      "name": "Nombre (del invitado, o del fichero en storage)",
      "notes": "Nota libre del invitado",
      "owner_id": "Usuario dueño de la invitación",
      "paid_at": "Fecha del pago (vacío = borrador sin publicar)",
      "path": "Página visitada",
      "provider": "Pasarela de pago (stripe)",
      "published_at": "Fecha de publicación",
      "referrer": "Web de procedencia de la visita",
      "session_id": "Sesión anónima del navegador (analítica)",
      "size_bytes": "Tamaño del fichero en bytes",
      "slug": "Parte final del enlace público (/i/…)",
      "status": "Estado (borrador / publicada; en pagos: pendiente / pagado / caducado)",
      "stripe_session_id": "Sesión de pago de Stripe asociada",
      "subject": "Contador de límite: a qué usuario",
      "suspended_at": "Fecha de suspensión de la cuenta (vacío = activa)",
      "target_event": "Invitación afectada por la acción",
      "target_user": "Usuario afectado por la acción",
      "template": "Plantilla elegida (clásica, medianoche, botánica)",
      "transport": "Necesita autobús (vacío = no se preguntó)",
      "type": "Tipo (de evento, o de suceso en analítica)",
      "updated_at": "Última modificación",
      "user_id": "Usuario asociado (si estaba identificado)",
      "window_start": "Inicio de la ventana del límite"
    },
    "revenuePerDay": "Ingresos por día",
    "revenueByProduct": "Ingresos por producto",
    "kind": {
      "invitation": "Invitación",
      "support": "Apoyo"
    },
    "recentActivity": "Actividad reciente",
    "activity": {
      "created": "Nueva invitación",
      "published": "Publicada",
      "paid": "Pago"
    }
  },
  "gallery": {
    "title": "Diseños de web de boda",
    "description": "Tres diseños de web de boda —clásico, medianoche y botánico—, con la invitación y el QR incluidos. Pruébalos con vista previa en vivo.",
    "heading": "Plantillas",
    "headline": "Elige el diseño de vuestra web de boda",
    "intro": "Cada diseño es la web de boda real, no una captura: elige uno y personalízalo con vista previa en vivo.",
    "use": "Usar esta plantilla",
    "switch": {
      "heading": "¿No te decides? Cámbiala cuando quieras",
      "body": "Puedes cambiar de plantilla después de publicar: el enlace y el código QR siguen siendo los mismos.",
      "cta": "Diseña tu web de boda"
    }
  },
  "footer": {
    "tagline": "Invitaciones digitales con código QR",
    "pricing": "Precios",
    "legalNotice": "Aviso legal",
    "privacy": "Privacidad",
    "cookies": "Cookies",
    "terms": "Términos",
    "blurb": "La web de tu boda con invitación digital, código QR y un panel para gestionarlo todo. Diséñala sin registrarte y paga solo al publicar.",
    "product": "Producto",
    "legal": "Legal",
    "demo": "Proyecto de prácticas · sin actividad económica"
  },
  "pricing": {
    "heading": "Precios sencillos y sin letra pequeña",
    "sub": "Un pago único, sin suscripciones. Diseñar la web entera es gratis y sin registro: solo pagas cuando decides publicarla.",
    "perEvent": "por web de boda",
    "title": "Precios",
    "description": "Precios de QRinvites: 20 € por web de boda publicada. Pago único, sin suscripciones ni costes ocultos.",
    "faqTitle": "Dudas frecuentes sobre el precio",
    "q1": {
      "q": "¿Hay suscripciones o costes ocultos?",
      "a": "No. Es un pago único de 20 € por web de boda publicada. No hay renovaciones, ni cargos recurrentes, ni precio por invitado."
    },
    "q2": {
      "q": "¿Puedo verla antes de pagar?",
      "a": "Sí, y entera. El editor te deja montar la web completa —con todos los diseños, tus fotos y todas las secciones— y verla exactamente como la verán vuestros invitados. Solo se paga al pulsar Publicar."
    },
    "q3": {
      "q": "¿Qué pierdo si borro una web pagada?",
      "a": "El pago va ligado a esa web. Borrarla elimina la web y sus confirmaciones de forma definitiva y supone renunciar a lo pagado; por eso pedimos una confirmación expresa antes."
    },
    "studio": {
      "name": "Estudio a medida",
      "price": "Hablemos",
      "f1": "Página web completa",
      "f2": "Logo e identidad visual",
      "f3": "Redes sociales: gestión y contenido",
      "f4": "Publicidad y campañas digitales",
      "f5": "Posicionamiento en Google (SEO)",
      "f6": "Email marketing y newsletters",
      "f7": "Dominio y correo profesional",
      "note": "Cuéntanos tu proyecto y recibirás una propuesta clara, con precio cerrado y sin compromiso.",
      "cta": "Pedir presupuesto"
    },
    "invitation": {
      "name": "La web de vuestra boda",
      "cta": "Diseña la web de tu boda",
      "f1": "Enlace propio y código QR, para compartirla por donde quieras",
      "f2": "Todos los diseños y todas las secciones de la web",
      "f3": "Confirmaciones con acompañantes, menú, alergias y autobús",
      "f4": "Panel para gestionar invitados, mesas, menús, autobuses y preboda",
      "f5": "Tu foto de portada y galería de hasta 9 fotos",
      "f6": "Visitas e invitados ilimitados, y cambios al instante",
      "f7": "Sin anuncios ni marcas de agua, para siempre",
      "note": "El pago va ligado a esa invitación mientras exista. Si la borras, renuncias a lo pagado (se pide confirmación expresa)."
    }
  },
  "demo": {
    "eyebrow": "Aviso importante",
    "legalLink": "Leer el aviso legal",
    "entry": {
      "title": "Esto es un proyecto de prácticas",
      "p1": "QRinvites es un ejercicio personal de desarrollo web, creado únicamente con fines de aprendizaje y de demostración de habilidades técnicas.",
      "p2": "El negocio no está activo: no se presta ningún servicio, no existe actividad económica ni profesional detrás de este sitio y su autor no opera como autónomo ni como empresa.",
      "p3": "Los precios, planes y textos que verás son ficticios e ilustrativos, y la pasarela de pago está en modo de pruebas: no se cobra nada. Gracias por tu comprensión.",
      "cta": "Entendido, continuar"
    },
    "payment": {
      "title": "El pago está en modo de pruebas",
      "p1": "Este sitio es un proyecto de prácticas sin actividad económica: no se vende nada ni se emite ninguna factura.",
      "p2": "La pasarela de Stripe que vas a ver está en modo de pruebas y no acepta pagos reales: no introduzcas los datos de una tarjeta real, porque no se procesará ningún cobro.",
      "p3": "Puedes continuar solo para ver cómo funciona el proceso, o cancelar y seguir navegando.",
      "cta": "Continuar a la pasarela de pruebas",
      "cancel": "Cancelar"
    },
    "contact": {
      "title": "El negocio no está activo",
      "p1": "QRinvites es un proyecto personal de prácticas de desarrollo web, sin actividad económica ni profesional.",
      "p2": "No se presta ningún servicio ni es posible contratarlo, así que no hay ningún canal de contacto ni presupuesto disponible.",
      "p3": "Puedes seguir navegando y probar el editor libremente: todo lo que ves es una demostración técnica.",
      "cta": "Entendido"
    },
    "legalBanner": {
      "title": "Proyecto de prácticas sin actividad económica",
      "b1": "Este sitio es un ejercicio personal de desarrollo web. El negocio no está activo, no se presta ningún servicio y no existe actividad económica ni profesional detrás: los precios y planes son ficticios y la pasarela de pago está en modo de pruebas.",
      "b2": "Este documento se publica únicamente como parte de ese ejercicio y no crea ninguna relación comercial. No se publican datos de contacto porque no hay negocio en funcionamiento."
    }
  },
  "legal": {
    "updated": "Última actualización: 27 de julio de 2026",
    "notice": {
      "title": "Aviso legal",
      "s1t": "Titular del sitio",
      "s1b": "QRinvites (qrinvites.com) es un proyecto personal de prácticas de desarrollo web. No es un negocio en funcionamiento: no se presta ningún servicio, no existe actividad económica ni profesional detrás del sitio y su autor no opera como autónomo ni como empresa. Por eso no se publican datos de contacto comerciales.",
      "s2t": "Objeto",
      "s2b": "El sitio permite crear, publicar y compartir la web de una boda —invitación digital con código QR y confirmación de asistencia— con un panel privado de gestión para los novios. Es un producto de pago único. Hoy funciona solo como demostración: la pasarela de pago está en modo de pruebas y no se realiza ningún cobro.",
      "s3t": "Propiedad intelectual",
      "s3b": "El diseño, el código y los contenidos del sitio pertenecen a su titular. El contenido de cada invitación (textos, nombres, fechas) pertenece al usuario que la crea, que es responsable del mismo.",
      "s4t": "Responsabilidad",
      "s4b": "El titular trabaja para que el servicio esté disponible y sea seguro, pero no puede garantizar la ausencia total de interrupciones. El usuario es responsable del contenido que publica y de contar con el permiso de las personas cuyos datos incluye en su invitación.",
      "s5t": "Legislación aplicable",
      "s5b": "Este sitio se rige por la legislación española y europea. Para cualquier controversia serán competentes los juzgados que correspondan conforme a la ley.",
      "description": "Aviso legal de QRinvites: titular del sitio, objeto, propiedad intelectual y responsabilidad. Proyecto de prácticas sin actividad económica."
    },
    "privacy": {
      "title": "Política de privacidad",
      "s1t": "Responsable",
      "s1b": "El sitio es un proyecto personal de prácticas sin actividad económica, y no se publica ningún dato de contacto. Aun así, al probar la aplicación se tratan algunos datos: esta política explica cuáles, para qué y con qué base legal, conforme al RGPD. Puedes borrar tu cuenta y todo su contenido tú mismo, desde tu panel y en cualquier momento.",
      "s2t": "Qué datos tratamos",
      "s2b": "Cuenta: tu correo de Google al iniciar sesión. Invitaciones: los textos que escribes (nombres, fechas, lugares, historia). Confirmaciones de invitados: nombre, asistencia, acompañantes, menú, notas y, solo si el anfitrión lo activa, alergias o intolerancias. Pagos: los gestiona Stripe; nosotros guardamos el importe, el estado y un identificador, nunca tu tarjeta. Analítica propia: eventos de uso con un identificador aleatorio local, sin cookies de terceros y sin rastreo entre sitios.",
      "s3t": "Alergias: datos de salud",
      "s3b": "Las alergias e intolerancias son datos de salud (categoría especial del RGPD). Solo se recogen si el anfitrión activa esa pregunta y el invitado decide responderla (consentimiento explícito), se usan exclusivamente para organizar el evento, solo las ve el anfitrión y se eliminan con la invitación.",
      "s4t": "Base legal y finalidades",
      "s4b": "Ejecución del servicio (crear y mostrar invitaciones, gestionar confirmaciones y pagos), consentimiento explícito (alergias) e interés legítimo (analítica propia sin identificar personas y seguridad del servicio).",
      "s5t": "Encargados y destinatarios",
      "s5b": "Usamos proveedores que actúan como encargados del tratamiento: Supabase (base de datos y autenticación, región UE-Irlanda), Cloudflare (alojamiento y entrega web), Stripe (pagos) y Google (inicio de sesión). No vendemos datos ni los cedemos a terceros con fines publicitarios.",
      "s6t": "Conservación",
      "s6b": "Borrar una invitación elimina de inmediato y de forma definitiva la invitación y todas sus confirmaciones. Borrar la cuenta (opción visible en tu panel) elimina tu cuenta, tus invitaciones y sus confirmaciones; el registro contable de pagos se conserva anonimizado.",
      "s7t": "Tus derechos",
      "s7b": "Puedes ejercer los derechos de acceso, rectificación, supresión, oposición, limitación y portabilidad por la vía más directa: desde tu panel puedes consultar y corregir tus datos, y borrar la cuenta elimina de inmediato y de forma definitiva todo tu contenido. Al no haber actividad económica no se publica ningún correo de contacto. También puedes reclamar ante la Agencia Española de Protección de Datos (aepd.es).",
      "s8t": "Transferencias internacionales",
      "s8b": "Algunos encargados (Cloudflare, Stripe y Google) pueden tratar datos fuera del Espacio Económico Europeo. En esos casos, la transferencia se ampara en decisiones de adecuación o en las cláusulas contractuales tipo de la Comisión Europea, que garantizan un nivel de protección equivalente.",
      "description": "Qué datos trata QRinvites, para qué y con qué base legal, conforme al RGPD. Borras tu cuenta y todo su contenido desde tu propio panel."
    },
    "cookies": {
      "title": "Política de cookies",
      "s1t": "Lo que usamos",
      "s1b": "No usamos cookies publicitarias ni de terceros. Lo único que se guarda en tu navegador es almacenamiento local técnico imprescindible: tu sesión, el borrador de tu invitación y un identificador aleatorio de nuestra analítica propia, que no permite identificarte ni te sigue por otros sitios.",
      "s2t": "Cuándo sí verás un aviso",
      "s2b": "No hay cookies prescindibles que consentir: ni publicidad, ni píxeles de seguimiento, ni compartimos tu navegación con terceros. Por eso no verás banners de cookies interrumpiéndote.",
      "s3t": "Si esto cambia",
      "s3b": "El sitio no muestra publicidad de terceros en ninguna de sus páginas. Si eso cambiara, actualizaríamos esta página y pediríamos tu consentimiento antes de cargar nada.",
      "description": "QRinvites no usa cookies publicitarias ni de terceros: sólo almacenamiento local técnico imprescindible. Por eso no verás banners de consentimiento."
    },
    "terms": {
      "title": "Términos del servicio",
      "s1t": "El servicio",
      "s1b": "QRinvites permite crear y publicar la web de una boda con enlace único y código QR, con confirmación de asistencia y panel de invitados. Publicar requiere iniciar sesión con Google. Hoy todo ello funciona únicamente como demostración: no hay actividad económica y los pagos están en modo de pruebas, sin cobros reales.",
      "s2t": "Invitaciones",
      "s2b": "Crear y editar la web de tu boda es gratuito y no requiere cuenta, con todas las funciones disponibles. Publicarla requiere iniciar sesión con Google —para que quede asociada a tu perfil y puedas gestionarla— y un pago único de 20 €. Una vez publicada, la web y su panel de invitados quedan activos mientras exista, sin límite de tiempo, de visitas ni de invitados.",
      "s3t": "Borrado y renuncia",
      "s3b": "Borrar una invitación es inmediato y definitivo: se eliminan la invitación y sus confirmaciones. Si estaba pagada, borrarla supone renunciar expresamente a lo abonado, sin derecho a reembolso; la aplicación exige marcar esa renuncia antes de borrar.",
      "s4t": "Contenido del usuario",
      "s4b": "Eres responsable del contenido de tus invitaciones y de contar con el permiso de las personas cuyos datos incluyes. No se permite contenido ilegal, ofensivo o que suplante a terceros; podemos retirar invitaciones o suspender cuentas que incumplan estas normas.",
      "s5t": "Cambios",
      "s5b": "Podemos actualizar estos términos; los cambios relevantes se anunciarán en el sitio. El uso del servicio tras un cambio implica su aceptación.",
      "description": "Términos del servicio de QRinvites: qué incluye la web de boda, el pago único, el borrado definitivo y las normas de contenido."
    }
  },
  "demoPanel": {
    "title": "Panel de ejemplo de una boda real",
    "description": "Entra en el panel de QRinvites con una boda de 200 invitados dentro: confirmaciones, mesas, menús, autobuses y preboda. El panel real, con datos de ejemplo."
  }
}
