runlight 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/assets/build.json +3 -3
- data/assets/dashboard.js +17 -9
- data/assets/locales.json +5 -5
- data/lib/runlight/accounts/accounts.rb +82 -13
- data/lib/runlight/accounts/throttle.rb +123 -38
- data/lib/runlight/accounts/web.rb +50 -14
- data/lib/runlight/assistant.rb +11 -0
- data/lib/runlight/connect.rb +2 -3
- data/lib/runlight/core.rb +23 -0
- data/lib/runlight/db/connect.rb +5 -2
- data/lib/runlight/db/db.rb +79 -7
- data/lib/runlight/http/fetcher.rb +4 -1
- data/lib/runlight/http/request.rb +14 -3
- data/lib/runlight/importers/csv_visits.rb +1 -1
- data/lib/runlight/importers/index.rb +10 -2
- data/lib/runlight/importers/visits.rb +17 -6
- data/lib/runlight/importers/write.rb +21 -6
- data/lib/runlight/links.rb +14 -9
- data/lib/runlight/mail/smtp.rb +2 -0
- data/lib/runlight/mail/smtp_session.rb +22 -1
- data/lib/runlight/mcp.rb +8 -1
- data/lib/runlight/oauth.rb +2 -3
- data/lib/runlight/rack_app.rb +54 -7
- data/lib/runlight/routes.rb +101 -55
- data/lib/runlight/safefetch.rb +35 -0
- data/lib/runlight/version.rb +1 -1
- metadata +2 -2
data/assets/locales.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"en": "{\"app.site\":\"Site\",\"app.confirmDelete\":\"Delete {name}?\",\"app.signedOut\":\"Open this page once with {token} followed by your {env} to sign in.\",\"app.live.title\":\"Visitors in the last five minutes\",\"app.live_one\":\"{n} here now\",\"app.live_other\":\"{n} here now\",\"headline.who_one\":\"{n} person\",\"headline.who_other\":\"{n} people\",\"headline.visited_one\":\"visited\",\"headline.visited_other\":\"visited\",\"headline.matched_one\":\"matched these filters\",\"headline.matched_other\":\"matched these filters\",\"headline.plain\":\"{who} {verb} {when}.\",\"headline.up\":\"{who} {verb} {when}, {change} than {against}.\",\"headline.down\":\"{who} {verb} {when}, {change} than {against}.\",\"headline.same\":\"{who} {verb} {when}, the same as {against}.\",\"headline.more\":\"{pct}% more\",\"headline.fewer\":\"{pct}% fewer\",\"headline.lastYear\":\"the same days last year\",\"when.today\":\"today\",\"when.yesterday\":\"yesterday\",\"when.7d\":\"in the last 7 days\",\"when.30d\":\"in the last 30 days\",\"when.90d\":\"in the last 90 days\",\"when.month\":\"this month\",\"when.last_month\":\"last month\",\"when.year\":\"this year\",\"when.12mo\":\"in the last 12 months\",\"when.all\":\"since tracking began\",\"when.range\":\"from {range}\",\"when.day\":\"on {day}\",\"before.today\":\"yesterday\",\"before.yesterday\":\"the day before\",\"before.7d\":\"the 7 days before\",\"before.30d\":\"the 30 days before\",\"before.90d\":\"the 90 days before\",\"before.month\":\"the same stretch before it\",\"before.last_month\":\"the month before\",\"before.year\":\"the same stretch before it\",\"before.12mo\":\"the 12 months before\",\"before.all\":\"the stretch before\",\"before.range\":\"the same stretch before\",\"period.today\":\"Today\",\"period.yesterday\":\"Yesterday\",\"period.7d\":\"Last 7 days\",\"period.30d\":\"Last 30 days\",\"period.90d\":\"Last 90 days\",\"period.month\":\"This month\",\"period.last_month\":\"Last month\",\"period.year\":\"This year\",\"period.12mo\":\"Last 12 months\",\"period.all\":\"All time\",\"compare.title\":\"Compare to\",\"compare.vs\":\"vs\",\"compare.previous\":\"Previous period\",\"compare.year\":\"Same period last year\",\"compare.custom\":\"Custom range\",\"compare.off\":\"No comparison\",\"compare.apply\":\"Compare\",\"compare.dialog\":\"Compare with\",\"calendar.dialog\":\"Choose dates\",\"calendar.earlier\":\"Earlier months\",\"calendar.later\":\"Later months\",\"calendar.pick\":\"Pick a start and an end day\",\"calendar.range\":\"{from} to {to}\",\"calendar.open\":\"{from} to ...\",\"calendar.apply\":\"Apply\",\"common.cancel\":\"Cancel\",\"common.close\":\"Close\",\"common.clearAll\":\"Clear all\",\"common.loading\":\"Loading\",\"common.search\":\"Search\",\"common.none\":\"(none)\",\"metric.visitors\":\"Visitors\",\"metric.visits\":\"Visits\",\"metric.pageviews\":\"Pageviews\",\"metric.viewsPerVisit\":\"Views per visit\",\"metric.bounceRate\":\"Bounce rate\",\"metric.visitDuration\":\"Visit duration\",\"hint.visitors\":\"Different people, counted once a day\",\"hint.visits\":\"A visit is a session, and it ends after 30 idle minutes\",\"hint.pageviews\":\"Every page loaded, repeats included\",\"hint.viewsPerVisit\":\"Pageviews divided by visits\",\"hint.bounceRate\":\"A visit with one pageview and no event that lasts under ten seconds\",\"hint.visitDuration\":\"Average time per visit while the page was visible and in focus\",\"delta.title\":\"Against the comparison period\",\"delta.none\":\"no change\",\"chart.label\":\"{metrics} over time\",\"chart.scaled\":\"Each line is scaled to its own peak. Hover for values.\",\"chart.pick\":\"Click cards to add them to the chart.\",\"chart.dashed\":\"Dashed: {range}.\",\"chart.then\":\"then: {when}\",\"panel.pages\":\"Pages\",\"panel.sources\":\"Sources\",\"panel.locations\":\"Locations\",\"panel.rhythm\":\"When people visit\",\"panel.ai\":\"AI agents\",\"panel.devices\":\"Devices\",\"panel.events\":\"Events\",\"panel.campaigns\":\"Campaigns\",\"panel.views\":\"{title} views\",\"panel.empty\":\"Nothing in this range\",\"panel.more\":\"Show more\",\"panel.filterBy\":\"Filter by {name}\",\"panel.showMap\":\"Show a map\",\"panel.showList\":\"Show the list\",\"panel.fullMap\":\"Full screen map\",\"tab.top\":\"Top\",\"tab.entry\":\"Entry\",\"tab.exit\":\"Exit\",\"tab.channels\":\"Channels\",\"tab.sources\":\"Sources\",\"tab.referrers\":\"Referrers\",\"tab.countries\":\"Countries\",\"tab.regions\":\"Regions\",\"tab.cities\":\"Cities\",\"tab.agents\":\"Agents\",\"tab.pages\":\"Pages\",\"tab.device\":\"Device\",\"tab.browser\":\"Browser\",\"tab.os\":\"OS\",\"tab.screen\":\"Screen\",\"tab.language\":\"Language\",\"tab.event\":\"Event\",\"tab.campaign\":\"Campaign\",\"tab.source\":\"Source\",\"tab.medium\":\"Medium\",\"tab.content\":\"Content\",\"tab.term\":\"Term\",\"column.visitors\":\"visitors\",\"column.fetches\":\"fetches\",\"column.events\":\"events\",\"column.time\":\"time\",\"column.bounce\":\"bounce\",\"channel.Direct\":\"Direct\",\"channel.Organic Search\":\"Organic Search\",\"channel.Paid Search\":\"Paid Search\",\"channel.Social\":\"Social\",\"channel.Email\":\"Email\",\"channel.AI\":\"AI\",\"channel.Referral\":\"Referral\",\"channel.Campaign\":\"Campaign\",\"device.desktop\":\"Desktop\",\"device.mobile\":\"Mobile\",\"device.tablet\":\"Tablet\",\"ai.live\":\"Live fetches\",\"ai.crawl\":\"Crawls\",\"rhythm.busiest\":\"Busiest: {when}\",\"rhythm.table\":\"Visits by weekday and hour\",\"rhythm.cell_one\":\"{when}: {n} visit\",\"rhythm.cell_other\":\"{when}: {n} visits\",\"scale.fewer\":\"Fewer\",\"scale.more\":\"More\",\"map.failed\":\"Could not load the map\",\"map.label\":\"Visitors by country: {top}\",\"map.visitors_one\":\"{n} visitor\",\"map.visitors_other\":\"{n} visitors\",\"map.none\":\"No visitors\",\"map.title\":\"Around the world\",\"filter.button\":\"Filter\",\"filter.remove\":\"Remove filter\",\"filter.title\":\"Show visits\",\"filter.where\":\"where\",\"filter.and\":\"and\",\"filter.field\":\"Field\",\"filter.match\":\"Match\",\"filter.is\":\"is\",\"filter.not\":\"is not\",\"filter.contains\":\"contains\",\"filter.value\":\"Value\",\"filter.placeholder\":\"Type a value or pick one below\",\"filter.placeholderContains\":\"Any part of the value\",\"filter.removeCondition\":\"Remove this condition\",\"filter.add\":\"+ Add a condition\",\"filter.note\":\"Every condition has to hold. Click any row on the dashboard to add one without opening this.\",\"filter.apply_one\":\"Apply {n} condition\",\"filter.apply_other\":\"Apply {n} conditions\",\"filter.everything\":\"Show everything\",\"group.pages\":\"Pages\",\"group.sources\":\"Sources\",\"group.location\":\"Location\",\"group.device\":\"Device\",\"group.behaviour\":\"Behaviour\",\"field.page\":\"Page\",\"field.entry\":\"Entry page\",\"field.exit\":\"Exit page\",\"field.hostname\":\"Hostname\",\"field.channel\":\"Channel\",\"field.source\":\"Source\",\"field.referrer\":\"Referrer\",\"field.utm_campaign\":\"Campaign\",\"field.utm_source\":\"UTM source\",\"field.utm_medium\":\"UTM medium\",\"field.utm_content\":\"UTM content\",\"field.utm_term\":\"UTM term\",\"field.country\":\"Country\",\"field.region\":\"Region\",\"field.city\":\"City\",\"field.device\":\"Device\",\"field.browser\":\"Browser\",\"field.browser_version\":\"Browser version\",\"field.os\":\"OS\",\"field.os_version\":\"OS version\",\"field.screen\":\"Screen\",\"field.language\":\"Language\",\"field.event\":\"Event\",\"foot.powered\":\"Powered by {name}\",\"foot.language\":\"Language\",\"theme.light\":\"Light theme\",\"theme.dark\":\"Dark theme\",\"column.visits\":\"visits\",\"column.pageviews\":\"pageviews\",\"column.scroll\":\"scroll\",\"column.duration\":\"duration\",\"column.share\":\"share\",\"rhythm.typical\":\"{x}× a typical hour\",\"rhythm.quiet\":\"No visits in this hour\",\"app.home\":\"Back to the overview\",\"settings.open\":\"Settings\",\"settings.title\":\"Settings\",\"settings.general\":\"General\",\"settings.install\":\"Install\",\"settings.siteName\":\"Site name\",\"settings.timezone\":\"Timezone\",\"settings.timezoneHint\":\"Days in your reports start at midnight here.\",\"settings.save\":\"Save\",\"settings.saving\":\"Saving\",\"settings.saved\":\"Saved\",\"settings.language\":\"Language\",\"settings.languageHint\":\"Just for this browser.\",\"settings.theme\":\"Theme\",\"settings.themeSystem\":\"Device setting\",\"settings.themeLight\":\"Light\",\"settings.themeDark\":\"Dark\",\"install.live\":\"Receiving visits. The last one was {when}.\",\"install.none\":\"No visits yet. Add the script below, then open a page on your site.\",\"install.script\":\"Add this to every page, just before {tag}.\",\"install.copy\":\"Copy\",\"install.copied\":\"Copied\",\"install.events\":\"Clicks on anything can be counted with no JavaScript.\",\"install.eventsJs\":\"You can also send events from JavaScript, for things that are not clicks.\",\"install.agents\":\"To see AI agents like ChatGPT and Claude reading your pages, pass each request to Runlight in your middleware with the code below.\",\"install.ignore\":\"Your own visits\",\"install.ignored\":\"Your visits from this browser are not counted.\",\"install.counted\":\"Your visits from this browser are counted.\",\"install.ignoreButton\":\"Ignore this browser\",\"install.trackButton\":\"Count this browser again\",\"install.ignoreElsewhere\":\"Dashboard on a different domain from the site? Open {link} once in each browser you use.\",\"theme.system\":\"Device setting\",\"theme.cycle\":\"Theme: {current}. Click for {next}.\",\"panel.links\":\"Links\",\"links.new\":\"New link\",\"links.manage\":\"Manage\",\"links.clicks\":\"clicks\",\"links.url\":\"Destination URL\",\"links.urlPlaceholder\":\"https://example.com/a/long/address\",\"links.name\":\"Name\",\"links.namePlaceholder\":\"Optional, for your own reference\",\"links.slug\":\"Slug\",\"links.slugPlaceholder\":\"Leave blank for a random one\",\"links.domain\":\"Domain\",\"links.create\":\"Create link\",\"links.save\":\"Save changes\",\"links.created\":\"Your short link is ready.\",\"links.another\":\"Make another\",\"links.edit\":\"Edit link\",\"links.delete\":\"Delete\",\"links.confirmDelete\":\"Delete {name}? Its clicks stay in your stats.\",\"links.copy\":\"Copy\",\"links.copied\":\"Copied\",\"links.search\":\"Search links\",\"links.sortClicks\":\"Most clicked\",\"links.sortNewest\":\"Newest\",\"links.sortName\":\"Name\",\"links.import\":\"Import CSV\",\"links.importDone_one\":\"Imported {n} link.\",\"links.importDone_other\":\"Imported {n} links.\",\"links.importFailed\":\"Row {row}: {reason}\",\"links.importHelp\":\"Use the columns name and url, plus slug and domain when you have them.\",\"links.destination\":\"Goes to\",\"links.clicksOverTime\":\"Clicks over time\",\"links.sources\":\"Sources\",\"links.countries\":\"Countries\",\"links.devices\":\"Devices\",\"links.browsers\":\"Browsers\",\"links.total_one\":\"{n} click\",\"links.total_other\":\"{n} clicks\",\"links.domains\":\"Domains for short links\",\"links.domainsHelp\":\"Use a domain or subdomain you own for short links, like t.example.com. Links on it live at its root, as in t.example.com/sale.\",\"links.addDomain\":\"Add domain\",\"links.domainPlaceholder\":\"t.example.com\",\"links.ownDomain\":\"This site ({prefix})\",\"links.removeDomain\":\"Remove\",\"settings.links\":\"Custom domains\",\"links.confirm\":\"Confirm delete\",\"links.editButton\":\"Edit\",\"links.step1\":\"At your DNS provider, add a CNAME record for the subdomain that points to {host}, where this dashboard runs. For a bare domain with no subdomain, use an A or ALIAS record to the same server instead.\",\"links.step2\":\"Make your host accept the domain and serve HTTPS for it. On Vercel or Netlify, add it to your project's domains, and on your own server, add it to the config and the certificate. If Runlight runs inside your app, pass requests to rl.linkDomainResponse() in your middleware.\",\"links.step3\":\"Add the domain below. Runlight then checks that it reaches this dashboard.\",\"links.checking\":\"Checking\",\"links.working\":\"Working\",\"links.notWorking\":\"Not reaching Runlight yet: {reason}\",\"links.recheck\":\"Check again\",\"links.sortBy\":\"Sort links\",\"links.removeNote\":\"Removing a domain keeps its links and their clicks. They move to {fallback} until you add the domain back, then return to it.\",\"links.removedDomain\":\"{domain}/ (removed)\",\"prompt.copy\":\"Copy prompt\",\"prompt.domainHint\":\"Copy these steps with your addresses filled in, and paste them into it.\",\"prompt.installHint\":\"Copy the setup steps and paste them into it.\",\"links.showing\":\"Showing {shown} of {total}\",\"links.showMore\":\"Show {n} more\",\"links.clicksLabel\":\"Clicks\",\"links.createdOn\":\"Created {date}\",\"settings.import\":\"Import\",\"import.intro\":\"Bring your short links over from another service, with their click history where the service shares it. Your key or password is used for this import only and never saved. Importing again skips links already here.\",\"import.source\":\"Import from\",\"import.csv\":\"Any CSV\",\"import.url\":\"Umami address\",\"import.apiKey\":\"API key\",\"import.username\":\"Username\",\"import.password\":\"Password\",\"import.signIn\":\"Sign in with\",\"import.withKey\":\"API key\",\"import.withPassword\":\"Username and password\",\"import.start\":\"Start import\",\"import.stop\":\"Stop\",\"import.running\":\"Importing {done} of {total} links\",\"import.done\":\"Finished: {links} links and {clicks} clicks imported, {skipped} already here.\",\"import.stopped\":\"Stopped after {done} of {total} links. Start again to carry on; links already imported are skipped.\",\"import.failed\":\"These could not be imported.\",\"import.history.full\":\"This imports every click, with its country, device, browser, and referrer.\",\"import.history.daily\":\"This imports clicks per day, without country or device.\",\"import.history.none\":\"This imports links only, since the service does not share dated clicks.\",\"import.umamiHelp\":\"In Umami, create an API key under Settings, API keys. Stock self-hosted Umami has no API keys, so sign in with your username and password instead. Either one is used for this import only and never saved.\",\"import.csvHelp\":\"Use the columns name and url, plus slug and domain when you have them.\",\"import.chooseFile\":\"Choose a CSV file\",\"import.token\":\"Access token\",\"import.workspace\":\"Workspace id (optional)\",\"import.dubHelp\":\"In Dub, create an API key under Settings, API Keys, with read access to links and analytics. Every click comes across on Business plans, daily counts on Pro, links only on Free.\",\"import.bitlyHelp\":\"In Bitly, go to Settings, API, enter your password, and generate a token. Bitly keeps daily counts only, as far back as your plan allows (none on Free).\",\"import.shortioHelp\":\"In Short.io, open Integrations and API and create a secret API key (a public key cannot read links). Short.io allows 60 statistics requests a minute, so this import paces itself.\",\"import.rebrandlyHelp\":\"In Rebrandly, create an API key under Settings, API keys. Rebrandly shares only total clicks, so links come across without history.\",\"import.soFar_one\":\"Imported {n} link so far\",\"import.soFar_other\":\"Imported {n} links so far\",\"import.moveNote\":\"Links on the service's own domain (bit.ly, dub.sh, rebrand.ly, short.gy) move to {fallback} with the same slug; branded domains are added under Custom domains.\",\"prompt.title\":\"Using a coding assistant?\",\"compare.allTime\":\"There is nothing before all time to compare with.\",\"view.reset\":\"Reset\",\"view.resetHint\":\"Back to the last 30 days, with no filters or comparison\",\"settings.sharing\":\"Sharing\",\"share.intro\":\"A share link shows this site's stats to anyone who has it, with no sign-in. It never shows your short links, your settings, or the site's address.\",\"share.namePlaceholder\":\"Who it is for, like a client or your team\",\"share.create\":\"Create share link\",\"share.empty\":\"Make one below and send it to anyone who should see these stats.\",\"share.unnamed\":\"Untitled\",\"share.open\":\"Open\",\"share.rename\":\"Rename\",\"share.save\":\"Save\",\"share.revokeNote\":\"Deleting a share link stops it working at once. Anyone who had it then sees a page saying so.\",\"share.gone\":\"Whoever shared it has turned it off. Ask them for a new link.\",\"live.title\":\"Right now\",\"live.sub\":\"Refreshes every 10 seconds\",\"live.now_one\":\"{n} person on the site\",\"live.now_other\":\"{n} people on the site\",\"live.nowHint\":\"Anyone who viewed a page or did something in the last 5 minutes.\",\"live.total_one\":\"{n} pageview in the last 30 minutes\",\"live.total_other\":\"{n} pageviews in the last 30 minutes\",\"live.minute_one\":\"{n} pageview at {time}\",\"live.minute_other\":\"{n} pageviews at {time}\",\"live.ago30\":\"30 min ago\",\"live.nowLabel\":\"Now\",\"live.pages\":\"Pages\",\"live.sources\":\"Sources\",\"live.countries\":\"Countries\",\"live.nobody\":\"Visitors show up here as they arrive.\",\"live.feed\":\"Latest activity\",\"live.quiet\":\"Visits from the last 30 minutes show up here.\",\"live.someone\":\"Someone\",\"live.someoneIn\":\"Someone in {place}\",\"live.viewed\":\"{who} viewed {path}\",\"live.viewedVia\":\"{who} viewed {path} from {source}\",\"live.did\":\"{who} did {name} on {path}\",\"live.didVia\":\"{who} did {name} on {path}, from {source}\",\"welcome.title\":\"Add Runlight to {name}\",\"welcome.lead\":\"Waiting for the first visit. This page fills in by itself once it arrives.\",\"settings.goals\":\"Goals\",\"settings.funnels\":\"Funnels\",\"panel.conversions\":\"Conversions\",\"goals.revenueAside\":\"{amount} revenue\",\"goals.add\":\"Add goal\",\"goals.emptyTitle\":\"Your goals will show up here\",\"goals.emptyHint\":\"A goal counts what matters to you, like a signup or a click on a button. An event or page goal you add counts past visits too, and a click goal counts from when you add it.\",\"goals.goal\":\"Goal\",\"goals.rate\":\"Rate\",\"goals.conversions\":\"Conversions\",\"goals.unknown\":\"(none)\",\"goals.converted\":\"People who converted\",\"goals.revenue\":\"Revenue\",\"goals.overTime\":\"Conversions over time\",\"goals.overTimeValued\":\"Conversions and revenue over time, each on its own scale\",\"goals.byChannel\":\"By channel\",\"goals.bySource\":\"By source\",\"goals.byPage\":\"Where it happened\",\"goals.describe.event\":\"Event: {match}\",\"goals.describe.page\":\"Visits to {match}\",\"goals.describe.selector\":\"Clicks on {match}\",\"goals.describe.link\":\"Clicks on links to {match}\",\"goals.value.each\":\"{amount} each\",\"goals.value.fromProp\":\"amount from {prop}, in {currency}\",\"goals.name\":\"Name\",\"goals.namePlaceholder\":\"Signup, Purchase, Booked a call\",\"goals.counts\":\"Counts\",\"goals.kind.event\":\"An event\",\"goals.kind.page\":\"A page visit\",\"goals.kind.click\":\"A click\",\"goals.clickOn\":\"Clicks on\",\"goals.click.selector\":\"An element\",\"goals.click.link\":\"Links to an address\",\"goals.match.event\":\"Event name\",\"goals.match.page\":\"Page\",\"goals.match.link\":\"Link address\",\"goals.match.selector\":\"CSS selector\",\"goals.pick\":\"Pick on my site\",\"goals.picking\":\"Waiting for your pick\",\"goals.hint.event\":\"The name you send with runlight(\\\"Name\\\") or a data-runlight attribute.\",\"goals.hint.page\":\"A path like /thanks. Use * for anything: /blog/* or /thanks*. A full URL works too.\",\"goals.hint.link\":\"Clicks on links whose address matches. Use * for anything, like https://buy.stripe.com/*, or start with / for your own pages.\",\"goals.hint.selector\":\"Enter any CSS selector, or use Pick on my site, which opens your site so you can click the element and then Use this.\",\"goals.valueLabel\":\"Worth\",\"goals.value.none\":\"Nothing\",\"goals.value.fixed\":\"A fixed amount\",\"goals.value.prop\":\"An amount sent with the event\",\"goals.amount\":\"Amount each time\",\"goals.property\":\"Property with the amount\",\"goals.currency\":\"Currency\",\"goals.save\":\"Save goal\",\"goals.create\":\"Add goal\",\"goals.cancel\":\"Cancel\",\"goals.edit\":\"Edit\",\"goals.intro\":\"Goals turn visits into conversions. Each one counts an event, a page visit, or a click, and can carry a money value so you can see revenue by source and page.\",\"goals.none\":\"Add one below to start counting it.\",\"goals.pastNote\":\"Goals are counted from the data you already have, so a new goal shows past conversions too. Click goals start counting within about five minutes of being added.\",\"settings.email\":\"Email reports\",\"settings.mail\":\"Email service\",\"mail.intro\":\"Runlight sends reports and invites through your own email service. Set it up once and every site uses it.\",\"mail.service\":\"Service\",\"mail.optional\":\"(optional)\",\"mail.keepSaved\":\"Saved. Leave blank to keep it.\",\"mail.from\":\"From address\",\"mail.fromName\":\"From name\",\"mail.fromHint\":\"Use an address your service lets you send from, on a domain you have verified with it.\",\"mail.save\":\"Save mail service\",\"mail.change\":\"Change\",\"mail.fromLine\":\"Sends from {from}\",\"mail.fromCode\":\"Set in code. Sends from {from}\",\"mail.testTo\":\"Send a test to\",\"mail.test\":\"Send test\",\"mail.testSent\":\"Test sent to {to}. Check the inbox, and the spam folder.\",\"mail.notEncryptedTitle\":\"Your keys will be stored unencrypted\",\"mail.notEncrypted\":\"This Runlight has no RUNLIGHT_SECRET, so the keys are kept in its database exactly as you type them. Set RUNLIGHT_SECRET or RUNLIGHT_TOKEN on the server to keep them encrypted.\",\"mail.field.region\":\"Region\",\"mail.field.accessKeyId\":\"Access key ID\",\"mail.field.secretAccessKey\":\"Secret access key\",\"mail.field.apiKey\":\"API key\",\"mail.field.serverToken\":\"Server API token\",\"mail.field.stream\":\"Message stream\",\"mail.field.domain\":\"Sending domain\",\"mail.field.secretKey\":\"Secret key\",\"mail.field.host\":\"Host\",\"mail.field.port\":\"Port\",\"mail.field.security\":\"Security\",\"mail.field.username\":\"Username\",\"mail.field.password\":\"Password\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Signing secret\",\"reports.title\":\"Who gets reports\",\"reports.intro\":\"A summary of {site} by email, with visitors, top pages, sources, countries, and conversions against the period before.\",\"reports.none\":\"Add an email address below to start sending them.\",\"reports.weekly\":\"Weekly\",\"reports.monthly\":\"Monthly\",\"reports.frequency\":\"How often\",\"reports.language\":\"Language\",\"reports.lastSent\":\"last sent {when}\",\"reports.never\":\"not yet\",\"reports.sample\":\"Send a sample now\",\"reports.sampleSent\":\"Sample sent to {to}.\",\"reports.emailPlaceholder\":\"name@example.com\",\"reports.add\":\"Add\",\"reports.when\":\"Weekly reports cover Monday to Sunday and go out on Monday from 8am, monthly ones on the 1st, in this site's timezone. They are sent by the hourly check (a cron calling POST /api/check).\",\"reports.needsMail\":\"Reports start going out once an email service is set up. One service sends them for every site.\",\"reports.setUpMail\":\"Set up email service\",\"reports.needsMailTitle\":\"No email service yet\",\"email.subject.week\":\"{site}: {who} last week\",\"email.subject.month\":\"{site}: {who} in {month}\",\"email.when.week\":\"last week\",\"email.before.week\":\"the week before\",\"email.when.month\":\"in {month}\",\"email.range\":\"{from} to {to}\",\"email.pages\":\"Top pages\",\"email.sources\":\"Top sources\",\"email.countries\":\"Top countries\",\"email.conversions\":\"Conversions\",\"email.open\":\"Open the dashboard\",\"email.at\":\"Your dashboard is at {where}\",\"email.footer\":\"You get this {frequency} report for {site} from Runlight.\",\"email.weekly\":\"weekly\",\"email.monthly\":\"monthly\",\"email.unsubscribe\":\"Unsubscribe\",\"email.test.subject\":\"Runlight can send email\",\"email.test.body\":\"This test came through {service}. Reports for your sites will arrive the same way.\",\"email.unsub.title\":\"Stop the {site} reports?\",\"email.unsub.body\":\"{email} will get no more reports for this site.\",\"email.unsub.doneTitle\":\"You are unsubscribed\",\"email.unsub.done\":\"No more reports for {site} will reach {email}.\",\"email.unsub.goneTitle\":\"Nothing to unsubscribe from\",\"email.unsub.gone\":\"This link has been used already, or the report was removed.\",\"settings.api\":\"API and AI\",\"tokens.intro\":\"Ask your AI assistant about your stats. Make a token, then add Runlight to Claude, Cursor, or any app that connects to MCP servers. A read token never changes anything, and a manage token can change one site's settings. The same token works with the HTTP API.\",\"tokens.server\":\"MCP server address\",\"tokens.namePlaceholder\":\"What it is for, like Claude or a script\",\"tokens.scope\":\"Which sites it can read\",\"tokens.allSites\":\"Every site\",\"tokens.siteOnly\":\"{site} only\",\"tokens.create\":\"Create token\",\"tokens.empty\":\"Make one below to connect an AI assistant or a script.\",\"tokens.used\":\"last used {date}\",\"tokens.never\":\"never used\",\"tokens.revokeNote\":\"Deleting a token stops it working at once.\",\"tokens.once\":\"Copy this token now. It is shown only once, and Runlight keeps only a fingerprint of it.\",\"tokens.claudeCode\":\"Claude Code takes the token with this command.\",\"tokens.json\":\"Cursor and other apps that take an mcpServers JSON config use this instead.\",\"tokens.done\":\"Done, I have copied it\",\"sites.domains\":\"Domains\",\"sites.domainsHint\":\"Enter the domain the site runs on, like example.com, and separate several with commas.\",\"sites.name\":\"Name\",\"sites.namePlaceholder\":\"My blog\",\"sites.timezoneHint\":\"Days are counted in {zone}, which you can change later in Settings.\",\"sites.add\":\"Add site\",\"sites.addTitle\":\"Add a site\",\"sites.firstTitle\":\"Add your first site\",\"sites.firstLead\":\"Runlight counts each site you add here. Enter the site's domain, and the next screen shows the script tag to put on its pages.\",\"sites.delete\":\"Delete this site\",\"sites.deleteHint\":\"Deleting a site removes every visit, link, goal, and report recorded for it, and it cannot be undone.\",\"app.signOut\":\"Sign out\",\"install.ignoreServer\":\"To stop counting your own visits, open {link} once in each browser you use.\",\"panel.geoCredit\":\"Locations by {name}\",\"visits.tab\":\"Visits\",\"visits.linksTab\":\"Short links\",\"visits.intro\":\"Bring your visit history over so your charts reach back before Runlight started counting. Only visits from before Runlight's own first one come across, so nothing is counted twice.\",\"visits.onlyUmami\":\"Umami's API hands over every visit with its page, source, place, and device, which is what Runlight keeps. Plausible, Fathom, and Google Analytics only give out totals, and totals cannot be turned back into visits. If you have every pageview in a file, import it as a CSV instead.\",\"visits.csvMoment\":\"More than {max} rows share one moment, more than one batch can hold.\",\"visits.csvStopped\":\"Stopped. Importing the same file again is safe, since rows already brought in are replaced.\",\"visits.csvSkipped\":\"{n} rows were left out because they came after Runlight's own first visit, fell before what this site keeps, or were not a pageview or a named event.\",\"visits.csvRunning\":\"{done} of {total} rows sent, {pageviews} pageviews so far\",\"visits.csvRunlight\":\"{name} is in Runlight's visit format, with {rows} rows.\",\"visits.csvUmami\":\"{name} is an Umami export with {rows} rows.\",\"visits.csvOther\":\"Choose another file\",\"visits.csvChoose\":\"Choose CSV file\",\"visits.csvHelp\":\"Use the CSV from Umami's data export, or a file with a row for each pageview in Runlight's visit format, described in the Dashboard docs.\",\"visits.fromCsv\":\"A CSV file\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Import from\",\"visits.onlyUmamiTitle\":\"Why only Umami\",\"visits.find\":\"Find websites\",\"visits.website\":\"Umami website\",\"visits.noWebsites\":\"This Umami account has no websites.\",\"visits.start\":\"Import visits\",\"visits.running\":\"{done} of {total} days read, {pageviews} pageviews so far\",\"visits.done\":\"Finished. {pageviews} pageviews and {events} events came across in {visits} visits.\",\"visits.stopped\":\"Stopped. Start again to carry on from the last day imported.\",\"props.title\":\"Properties\",\"props.open\":\"Properties of {name}\",\"props.none\":\"They appear once the event is sent with properties.\",\"account.title\":\"Account\",\"account.owner\":\"You are the owner, so you can change everything and manage people. Nobody else can remove you.\",\"account.viewer\":\"You are a viewer, so you can read every site's stats without changing anything.\",\"account.current\":\"Current password\",\"account.next\":\"New password\",\"account.nextHint\":\"Use at least ten characters. Changing it signs out your other browsers.\",\"account.save\":\"Change password\",\"account.saved\":\"Password changed\",\"settings.people\":\"People\",\"people.intro\":\"Everyone here can sign in to this server. Admins can change everything the owner can and manage people, though nobody can remove the owner. Members change the settings of every site, and viewers read every site's stats without changing anything. Invite a coworker and they choose their own password.\",\"people.you\":\"you\",\"people.role\":\"Role\",\"people.owner\":\"Owner\",\"people.viewer\":\"Viewer\",\"people.roles\":\"Members can't manage people, set up the mail service or the assistant, or delete a site. Only the owner can hand ownership to an admin.\",\"people.emailPlaceholder\":\"Their email address\",\"pluginKey.title\":\"Key for CMS plugins\",\"pluginKey.intro\":\"The WordPress, Drupal, and Craft plugins use this key to report AI agents reading this site's pages. It can only report for this site and cannot read anything. Replacing it stops the old key at once.\",\"pluginKey.replace\":\"Replace key\",\"export.csv\":\"Download CSV\",\"export.zip\":\"Export\",\"export.title\":\"Download everything in this view as CSV files\",\"funnels.title\":\"Funnels\",\"funnels.intro\":\"A funnel follows the steps you expect a visit to take, such as the pricing page and then signup, and shows how many visits made it through each step in order.\",\"funnels.none\":\"Add one below to see where people stop along the way.\",\"funnels.add\":\"Add funnel\",\"funnels.name\":\"Name\",\"funnels.namePlaceholder\":\"Signup\",\"funnels.steps\":\"Steps\",\"funnels.stepsHint\":\"A page path can use * to match anything, like /blog/*. Each step has to happen after the one before it, in the same visit.\",\"funnels.kind\":\"What the step is\",\"funnels.page\":\"Page\",\"funnels.event\":\"Event\",\"funnels.removeStep\":\"Remove this step\",\"funnels.addStep\":\"Add a step\",\"funnels.save\":\"Save funnel\",\"funnels.create\":\"Create funnel\",\"funnels.stepPage\":\"Page {match}\",\"funnels.stepEvent\":\"Event {match}\",\"funnels.wentOn\":\"{pct} went on\",\"funnels.tab\":\"Funnels\",\"funnels.goalsTab\":\"Goals\",\"sites.modeHere\":\"Count it here\",\"sites.modeConnect\":\"Connect another Runlight\",\"sites.connectIntro\":\"Connect a site here when it already counts itself with Runlight inside its own app. Its numbers stay there. You sign in to it once and allow this server, and then you can see and change the site from here.\",\"sites.connectUrl\":\"Its Runlight address\",\"sites.connectToken\":\"API token\",\"sites.connectTokenHint\":\"Make a token on that install, in Settings, API and AI. With a read token the numbers show here and the settings stay there.\",\"sites.connect\":\"Connect\",\"sites.all\":\"All sites\",\"sites.remoteNote\":\"This site is counted by its own Runlight at {url}, which lets this server read it. Allow changes to manage its settings from here too.\",\"sites.disconnect\":\"Disconnect this site\",\"sites.disconnectHint\":\"Disconnecting removes the site from this server. Its own Runlight and everything it has counted stay as they are.\",\"sites.disconnectButton\":\"Disconnect site\",\"sites.confirmDisconnect\":\"Confirm disconnect\",\"sites.disconnectName\":\"Disconnect {name}?\",\"settings.data\":\"Data\",\"data.retention\":\"Keep visits for\",\"data.retentionHint\":\"Older visits and events are deleted for good when you save, then every day after. Goals, links, and settings stay.\",\"data.forever\":\"Forever\",\"data.months\":\"{n} months\",\"data.years\":\"{n} years\",\"data.deletesBefore\":\"Visits before {date} will be deleted when you save.\",\"data.unreachable\":\"Could not reach {url} to read this setting. Try again in a minute.\",\"data.export\":\"Export everything\",\"data.exportHint\":\"The ZIP holds every report for this site since its first visit, as CSV files.\",\"data.download\":\"Download ZIP\",\"sites.remoteTitle\":\"Counted by another Runlight\",\"sites.openRemote\":\"Open its dashboard\",\"sites.useToken\":\"Use an API token instead\",\"sites.useSignIn\":\"Sign in to it instead\",\"sites.remoteManaged\":\"This site is counted by its own Runlight at {url}. Changes you make here are saved there.\",\"sites.allowChanges\":\"Allow changes\",\"sites.reconnect\":\"Connect again\",\"sites.reconnectHint\":\"Use this if the install no longer accepts this server, for example after its token was deleted there.\",\"sites.connectError.expired\":\"That connection took too long or was already used. Start again.\",\"sites.connectError.denied\":\"The connection was not allowed.\",\"sites.connectError.refused\":\"The install would not let this server connect. Start again, or connect it with an API token.\",\"sites.connectError.token\":\"The install did not give this server a token. Start again.\",\"sites.connectError.failed\":\"Connecting did not finish. Start again.\",\"mail.fromRemote\":\"Sent by {host} from {from}\",\"mail.noneRemote\":\"{host} has no mail service yet, so it cannot send these reports. Set one up in its own dashboard, under Settings, Email service.\",\"tokens.manages\":\"Can change settings\",\"account.again\":\"New password again\",\"account.mismatch\":\"The two new passwords are not the same.\",\"account.strength0\":\"Too short\",\"account.strength1\":\"Weak\",\"account.strength2\":\"Fair\",\"account.strength3\":\"Good\",\"account.strength4\":\"Strong\",\"mail.introRemote\":\"Reports for this site go out through the email service set up on {host}.\",\"settings.assistant\":\"AI Assistant\",\"assistant.open\":\"Ask about your stats\",\"assistant.title\":\"AI Assistant\",\"assistant.about\":\"It answers from {site}'s numbers, which it reads the moment you ask.\",\"assistant.clear\":\"New chat\",\"assistant.intro\":\"Ask about visitors, sources, pages, goals, or anything else this dashboard shows.\",\"assistant.ask1\":\"How did this period compare with the one before?\",\"assistant.ask2\":\"Where are most visitors coming from?\",\"assistant.ask3\":\"Which pages keep people reading longest?\",\"assistant.ask4\":\"Are AI assistants sending visitors here?\",\"assistant.placeholder\":\"Ask a question\",\"assistant.send\":\"Send\",\"assistant.thinking\":\"Reading your numbers\",\"assistant.empty\":\"The assistant had nothing to say.\",\"assistant.checked_one\":\"Read {n} report\",\"assistant.checked_other\":\"Read {n} reports\",\"assistant.setupOwner\":\"The assistant needs an AI service to answer with. Add a key for Anthropic, OpenAI, or Gemini, or point it at a model on your own machine.\",\"assistant.setupViewer\":\"The assistant is not set up yet. The owner or an admin can add an AI service in Settings, AI Assistant.\",\"assistant.setup\":\"Set up the assistant\",\"assistant.ownersOnly\":\"Only the owner or an admin can set up the assistant.\",\"assistant.settingsIntro\":\"Choose an AI service and paste an API key from it below. The robot button beside Filter then opens an assistant that answers questions about your stats in plain words.\",\"assistant.privacyTitle\":\"What the service sees\",\"assistant.privacy\":\"Each question goes to that service with the numbers the assistant reads to answer it. Runlight keeps nothing about individual visitors, so nothing personal is sent. The assistant only reads, through the same tools as the MCP server, so it can never change anything.\",\"assistant.notEncryptedTitle\":\"Your key will be stored unencrypted\",\"assistant.notEncrypted\":\"This Runlight has no RUNLIGHT_SECRET, so the key is kept in its database exactly as you type it. Set RUNLIGHT_SECRET or RUNLIGHT_TOKEN on the server to keep it encrypted.\",\"assistant.provider\":\"AI service\",\"assistant.address\":\"Address\",\"assistant.addressHint\":\"Where the service's OpenAI-compatible API lives, ending before /chat/completions.\",\"assistant.addressLocal\":\"Where the model runs. The server running Runlight must be able to reach it.\",\"assistant.model\":\"Model\",\"assistant.modelPlaceholder\":\"The model's name, as the service lists it\",\"assistant.modelDefault\":\"Leave it empty to use {model}.\",\"assistant.modelHint\":\"Enter the key above, then load the service's models, or type a model's name. A model that can call tools works best.\",\"assistant.key\":\"API key\",\"assistant.remove\":\"Turn off the assistant\",\"assistant.removeHint\":\"Removes the service and its key. The robot button then asks an owner to set it up again.\",\"journeys.open\":\"Journeys\",\"journeys.title\":\"Journeys\",\"journeys.intro\":\"The paths visits take through the site, a page at a time. Click a page to follow only the visits that passed through it.\",\"journeys.steps\":\"Steps\",\"journeys.stepCount\":\"{n} steps\",\"journeys.start\":\"Starting at\",\"journeys.end\":\"Ending at\",\"journeys.anyPage\":\"Any page\",\"journeys.step\":\"Step {n}\",\"journeys.other\":\"Other pages\",\"journeys.left\":\"{n} went no further\",\"journeys.follow\":\"Follow visits through {page}\",\"journeys.following\":\"Following visits through {page} at step {step}.\",\"journeys.none\":\"Try a wider date range to see more visits.\",\"secret.show\":\"Show\",\"secret.hide\":\"Hide\",\"people.invite\":\"Invite\",\"people.invited\":\"invited\",\"people.invitedMeta\":\"{role}, the link works until {date}\",\"people.resend\":\"Send again\",\"people.emailed\":\"An invite is on its way to {email}. You can also send them this link yourself.\",\"people.noMail\":\"This server has no mail service, so send {email} this link yourself. Set one up in Settings, Email service to send invites by email.\",\"people.mailFailed\":\"The email to {email} did not go out ({error}). Send them this link yourself.\",\"people.linkHint\":\"The link works once, for seven days. Sending again makes a new link and stops this one.\",\"twofa.title\":\"Two-factor sign-in\",\"twofa.off\":\"Off. Turn it on and signing in also asks for a code from an authenticator app on your phone.\",\"twofa.on_one\":\"On. Signing in asks for a code from your authenticator app. You have {n} recovery code left.\",\"twofa.on_other\":\"On. Signing in asks for a code from your authenticator app. You have {n} recovery codes left.\",\"twofa.turnOn\":\"Turn on\",\"twofa.turnOff\":\"Turn off\",\"twofa.newCodes\":\"New recovery codes\",\"twofa.password\":\"Your password\",\"twofa.continue\":\"Continue\",\"twofa.scan\":\"Scan this with an authenticator app, such as 1Password, Google Authenticator, or Authy, then enter the six-digit code it shows.\",\"twofa.qr\":\"QR code for your authenticator app\",\"twofa.manual\":\"Or type this key into the app.\",\"twofa.code\":\"Code from the app\",\"twofa.confirm\":\"Turn on\",\"twofa.codesIntro\":\"Keep these recovery codes somewhere safe. Each one signs you in once if you lose your phone, and they are not shown again.\",\"twofa.download\":\"Download\",\"twofa.copy\":\"Copy\",\"twofa.saved\":\"I saved them\",\"people.twoFactor\":\"two-factor\",\"people.resetTwoFactor\":\"Reset two-factor\",\"people.resetTwoFactorHint\":\"Turns off two-factor sign-in for this person, for when they lost their phone and recovery codes\",\"assistant.loadModels\":\"Load models\",\"assistant.loadingModels\":\"Loading\",\"assistant.pickModel\":\"Choose a model\",\"assistant.typeModel\":\"Type a model's name instead\",\"assistant.chooseFromList\":\"Choose from the list\",\"journeys.sampled\":\"These are the paths of the newest {n} visits in these dates.\",\"error.owner_only\":\"Only an owner can change this.\",\"error.domain_invalid\":\"That is not a domain name.\",\"error.domain_in_use\":\"{domain} is where this dashboard or one of your sites lives. Use a separate domain or subdomain for short links, such as go.{domain}.\",\"error.domain_taken\":\"{domain} already belongs to another site.\",\"error.link_url\":\"The destination must be a full URL, starting with https://\",\"error.link_protocol\":\"The destination must start with http:// or https://\",\"error.link_long\":\"The destination is longer than 2,000 characters.\",\"error.link_domain\":\"Add {domain} as a link domain in Settings first.\",\"error.link_slug\":\"A slug is letters, digits, dashes, and underscores, up to 100.\",\"error.link_taken\":\"/{slug} is already taken.\",\"error.link_no_slug\":\"Could not find a free slug. Try again.\",\"error.test_email\":\"Enter an email address to send the test to.\",\"error.mail_unset\":\"Set up a mail service first.\",\"error.email_invalid\":\"Enter an email address.\",\"error.report_exists\":\"{email} already gets this report.\",\"error.report_limit\":\"A site can send to at most 50 addresses.\",\"error.sample_soon\":\"A sample went out a moment ago. Wait a minute and try again.\",\"error.people_owner\":\"Only the owner or an admin can manage people.\",\"error.role_needed\":\"Pick admin, member, or viewer.\",\"error.account_exists\":\"{email} already has an account.\",\"error.remove_self\":\"You cannot remove yourself.\",\"people.demoted\":\"You are a viewer now, so settings are closed and nothing here can be changed. The owner or an admin can change it back.\",\"links.importNoUrl\":\"Nothing was imported because the file has no url column with addresses in it. Use the columns name and url, plus slug and domain when you have them.\",\"app.sessionEnded\":\"You were signed out, which happens when a session runs out or a password changes. {link} and you come back to this view.\",\"app.signInAgain\":\"Sign in again\",\"links.noneYet\":\"Nobody has made a short link for this site yet.\",\"error.remote_slow\":\"{host} took too long to answer. Try a shorter range.\",\"error.domain_not_public\":\"{domain} is not a public domain name. Use one that browsers anywhere can reach.\",\"error.unreachable\":\"Could not reach {host}.\",\"error.redirected\":\"{host} answered with a redirect.\",\"error.token_refused\":\"{host} refused the token. Connect it again from the site's settings.\",\"error.mail_failed\":\"The email could not be sent ({detail}).\",\"error.mail_unreachable\":\"Could not reach {host}.\",\"error.mail_slow\":\"{host} took too long to answer, so the email was not sent.\",\"error.mail_refused\":\"{host} turned the email down ({detail}).\",\"error.mail_service\":\"Pick a mail service.\",\"error.mail_field\":\"{field} is needed.\",\"error.mail_option\":\"{field} must be one of {options}.\",\"error.mail_https\":\"The webhook URL must use https.\",\"error.mail_region\":\"That is not an AWS region, like us-east-1.\",\"error.mail_in_code\":\"The mail service is set in code, so it cannot be changed here.\",\"error.mail_from\":\"Enter the address reports come from, like reports@example.com.\",\"error.smtp_starttls\":\"The SMTP server does not offer STARTTLS. Pick TLS or none for Security.\",\"error.unknown_account\":\"That account no longer exists.\",\"error.password_short\":\"Use a password of at least {min} characters.\",\"error.invite_gone\":\"This invite has expired or was already used. Ask for a new one.\",\"error.too_many_tries\":\"Too many tries. Wait fifteen minutes and try again.\",\"error.password_current_wrong\":\"Your current password is not right.\",\"error.password_wrong\":\"Your password is not right.\",\"error.code_wrong\":\"That code is not right. Check the time on your phone and try the next one.\",\"error.twofactor_off\":\"Turn on two-factor sign-in first.\",\"error.twofactor_self\":\"Turn off your own two-factor sign-in under Account.\",\"error.unknown_invite\":\"That invite no longer exists.\",\"error.origin_needed\":\"Set this Runlight's own address first (RUNLIGHT_URL on the server, or origin in routes()), so a connected hub can add link domains and email reports.\",\"error.twofactor_restart\":\"Too many wrong codes. Start turning on two-factor sign-in again.\",\"error.pick_origin\":\"Send the dashboard's origin, such as https://stats.example.com\",\"error.pick_hub\":\"This hub's address is not the one it connected from. Connect the site again from here.\",\"assistant.viewerDaily\":\"Questions each viewer can ask a day\",\"assistant.viewerDailyHint\":\"Every question is paid for with your AI key. Viewers are the people you invite under People who can read stats but change nothing, and each of them can ask this many a day. Set 0 to keep the assistant for owners. Share links never get the assistant.\",\"error.assistant_soon\":\"You have asked a lot in a short time. Wait a little and ask again.\",\"error.assistant_daily\":\"Viewers can ask {limit} questions a day. Ask again tomorrow.\",\"error.assistant_limit\":\"Use a whole number from 0 to 1,000.\",\"error.token_unset\":\"Set RUNLIGHT_TOKEN, or pass token or authorize to routes(). Without one, Runlight only runs open when NODE_ENV is development.\",\"error.unauthorized\":\"Sign in or send a token to see this.\",\"error.sign_in\":\"Sign in first.\",\"error.unknown_site\":\"That site is not here.\",\"error.filters_max\":\"Use at most {max} filters at once.\",\"error.filter_bad\":\"The filter \\\"{filter}\\\" is not one Runlight reads.\",\"error.range_bad\":\"Those dates are not a range Runlight can read.\",\"error.compare_bad\":\"\\\"{compare}\\\" is not a comparison Runlight knows.\",\"error.compare_range_bad\":\"Pick both dates to compare with.\",\"error.send_json\":\"Send this as JSON.\",\"error.send_object\":\"Send a JSON object.\",\"error.unknown_domain\":\"That domain is not one of this site's.\",\"error.rows_needed\":\"Send the links as a list of rows.\",\"error.unknown_link\":\"That link no longer exists.\",\"error.not_found\":\"That is not here.\",\"error.unknown_goal\":\"That goal no longer exists.\",\"error.goal_invalid\":\"The goal was not saved ({detail}).\",\"error.funnel_invalid\":\"The funnel was not saved ({detail}).\",\"error.import_failed\":\"The import stopped ({detail}).\",\"error.assistant_failed\":\"The AI service did not answer as expected ({detail}).\",\"error.assistant_invalid\":\"The assistant was not saved ({detail}).\",\"error.site_invalid\":\"The site was not saved ({detail}).\",\"error.connect_failed\":\"Connecting did not start ({detail}).\",\"error.method_not_allowed\":\"That cannot be done here.\",\"error.unknown_report\":\"That report no longer exists.\",\"error.unknown_share\":\"That share link no longer exists.\",\"error.token_name\":\"Name the token.\",\"error.token_site\":\"A token that changes settings is for one site. Pick the site.\",\"error.unknown_token\":\"That token no longer exists.\",\"error.sites_in_code\":\"Sites are set in code here, so they are changed there.\",\"error.connect_url\":\"Enter the install's address, like https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} did not answer like a Runlight install.\",\"error.connect_endpoints\":\"{url} named endpoints on another address.\",\"error.connect_old\":\"{url} runs an older Runlight. Update it, or connect it with an API token from its Settings.\",\"error.connect_register\":\"{url} would not let this server connect. {reason}\",\"error.connect_expired\":\"That connection took too long or was already used. Start again.\",\"error.connect_denied\":\"The connection was not allowed.\",\"error.connect_refused\":\"The install would not let this server connect. Start again, or connect it with an API token.\",\"error.connect_token\":\"The install did not give this server a token. Start again.\",\"error.connect_again\":\"Connect this site again to change it from here.\",\"error.hub_domains\":\"A connected hub cannot change a site's domains.\",\"error.observe_many\":\"Send at most 500 fetches at a time.\",\"error.observe_url\":\"Send the page's address.\",\"error.site_remote\":\"This site is counted by its own Runlight. Connect it again from its settings to change it from here.\",\"error.unknown_funnel\":\"That funnel no longer exists.\",\"error.assistant_dashboard\":\"Only the dashboard can use the assistant.\",\"error.share_not_available\":\"That is not available on a shared dashboard.\",\"error.assistant_unset\":\"The assistant is not set up yet. An owner can set it up in Settings, AI Assistant.\",\"error.question_needed\":\"Ask a question.\",\"error.site_name\":\"A site name is 1 to 80 characters.\",\"error.unknown_timezone\":\"\\\"{timezone}\\\" is not a timezone Runlight knows.\",\"error.retention_bad\":\"Keep visits for {months} months, or forever.\",\"error.share_gone\":\"This share link no longer works.\",\"error.token_read_only\":\"API tokens can only read.\",\"error.icon_none\":\"This site has no icon.\",\"error.event_needed\":\"Name the event.\",\"error.property_bad\":\"That is not a property name Runlight can read.\",\"error.unknown_dimension\":\"\\\"{dimension}\\\" is not a breakdown Runlight knows.\",\"error.internal\":\"Something went wrong on the server. Try again.\",\"filter.max\":\"Up to {max} filters apply at once. Remove one to add another.\",\"error.sample_soon_hub\":\"A connected hub can send one sample every ten minutes. Wait a few minutes and try again.\",\"people.demoteSelf\":\"Only the owner or an admin can change it back.\",\"people.demoteConfirm\":\"Switch to {role}\",\"error.check_not_public\":\"it is not a public domain name\",\"error.check_timeout\":\"it took too long to answer\",\"error.check_https\":\"it could not be reached over HTTPS\",\"error.check_not_runlight\":\"something answered, but not Runlight\",\"error.check_status\":\"it answered {status}\",\"error.assistant_address\":\"Enter the service's address in Settings, AI Assistant.\",\"error.assistant_address_bad\":\"Enter the service's address, starting with https://\",\"error.assistant_cancelled\":\"The question was cancelled.\",\"error.assistant_key\":\"Enter your {provider} key.\",\"error.assistant_model\":\"Enter a model in Settings, AI Assistant.\",\"error.assistant_no_models\":\"{host} listed no models. Type the model's name instead.\",\"error.assistant_provider\":\"Choose an AI service in Settings, AI Assistant.\",\"error.assistant_refused\":\"{host} turned the request down ({detail}).\",\"error.assistant_slow\":\"That question took too long to answer. Try asking something narrower.\",\"error.assistant_status\":\"{host} answered {status}.\",\"error.assistant_steps\":\"The assistant needed too many steps for that question. Try asking something narrower.\",\"error.assistant_timeout\":\"{host} took too long to answer.\",\"error.funnel_exists\":\"There is already a funnel called \\\"{name}\\\".\",\"error.funnel_long\":\"A funnel has at most eight steps.\",\"error.funnel_name\":\"Give the funnel a name.\",\"error.funnel_page_bad\":\"\\\"{match}\\\" is not a path or a URL.\",\"error.funnel_short\":\"A funnel needs at least two steps.\",\"error.goal_amount\":\"Enter an amount, like 49 or 9.99.\",\"error.goal_click_taken\":\"The click goal \\\"{match}\\\" already sends events with that name.\",\"error.goal_currency\":\"Use a three-letter currency code, like USD or EUR.\",\"error.goal_event\":\"Enter the event's name.\",\"error.goal_event_taken\":\"An event goal already counts events called \\\"{name}\\\", so give this click goal another name.\",\"error.goal_exists\":\"There is already a goal called \\\"{name}\\\".\",\"error.goal_kind\":\"Pick what the goal counts, an event, a page visit, or a click.\",\"error.goal_link\":\"Enter the link's address, like https://buy.stripe.com/*\",\"error.goal_name\":\"Give the goal a name.\",\"error.goal_page\":\"Enter a page path, like /thanks or /blog/*\",\"error.goal_page_bad\":\"That page is not a path or a URL.\",\"error.goal_prop_kind\":\"Only an event goal can take its amount from the event. Use a fixed amount instead.\",\"error.goal_prop_name\":\"A property name uses letters, numbers, dots, dashes, and underscores.\",\"error.goal_selector\":\"Enter a CSS selector, like #signup or .buy-button\",\"error.import_day_full\":\"One day has more than {limit} events, more than an import step can read.\",\"error.import_key\":\"Enter your {service} key.\",\"error.import_refused\":\"The key or sign-in was refused.\",\"error.import_slug_bad\":\"/{slug} has characters Runlight slugs cannot use.\",\"error.import_slug_taken\":\"/{slug} is already used by \\\"{name}\\\".\",\"error.import_source\":\"Runlight cannot import from {source}.\",\"error.import_status\":\"{host} answered {status}.\",\"error.import_umami_address\":\"Enter your Umami address, like https://stats.example.com\",\"error.import_umami_login\":\"Enter an API key, or a username and password.\",\"error.import_website\":\"Pick the Umami website to import.\",\"error.import_csv_batch\":\"Send at most {max} rows at a time.\",\"error.import_csv_format\":\"This file is not an Umami export or in Runlight's visit format. Check its header row.\",\"error.install_refused\":\"That install refused the token.\",\"error.install_token\":\"Enter an API token from that install.\",\"error.site_domain_invalid\":\"\\\"{host}\\\" is not a domain name.\",\"error.site_domain_needed\":\"Add the site's domain, like example.com\",\"error.site_domain_taken\":\"{host} already belongs to {site}.\",\"share.goneTitle\":\"This share link no longer works\",\"error.token_manage_only\":\"A manage token changes only its own site's settings.\",\"empty.pages.title\":\"Your top pages will show up here\",\"empty.pages.hint\":\"Every page people open is listed, with how long they stay on it.\",\"empty.sources.title\":\"Your traffic sources will show up here\",\"empty.sources.hint\":\"The searches and sites that send people your way are listed by name.\",\"empty.locations.title\":\"Your visitors’ locations will show up here\",\"empty.locations.hint\":\"See which countries and cities people visit from.\",\"empty.rhythm.title\":\"Your busiest times will show up here\",\"empty.rhythm.hint\":\"Each hour of the week fills in as visits come in.\",\"empty.ai.title\":\"AI agents reading your site will show up here\",\"empty.ai.hint\":\"Assistants such as ChatGPT and Claude are listed when they fetch your pages.\",\"empty.devices.title\":\"Your visitors’ devices will show up here\",\"empty.devices.hint\":\"See which browsers and screens people use.\",\"empty.events.title\":\"Your events will show up here\",\"empty.events.hint\":\"Clicks on outbound links and the events you send are counted as they happen.\",\"empty.campaigns.title\":\"Your campaigns will show up here\",\"empty.campaigns.hint\":\"Visits from links with UTM tags are grouped by campaign, source, and medium.\",\"empty.links.title\":\"Your short links will show up here\",\"empty.links.hint\":\"Make a short link to share, and every click on it is counted.\",\"sites.refused\":\"{host} no longer accepts this server’s connection, so its numbers cannot be read. Connect it again to fix that.\",\"sites.connected\":\"Connected to {host}.\",\"links.totalTip\":\"All clicks on your short links in the dates you picked\",\"links.setup\":\"How to set it up\",\"links.recordType\":\"Type\",\"links.recordName\":\"Name\",\"links.recordValue\":\"Value\",\"links.doDns\":\"Add this record at your DNS provider.\",\"links.doDnsAlias\":\"Add this record at your DNS provider. If it has no ALIAS records, use an A record to your server’s IP address.\",\"links.doHttps\":\"Have your host serve HTTPS for {domain}.\",\"links.doCheck\":\"Check again. A new record can take a few minutes to arrive.\",\"links.localNote\":\"This dashboard runs at {host}, so the record works once it has a public address.\",\"links.guide\":\"Setup guide\",\"funnels.emptyTitle\":\"Your funnels will show up here\",\"share.emptyTitle\":\"Your share links will show up here\",\"tokens.emptyTitle\":\"Your tokens will show up here\",\"reports.emptyTitle\":\"Your email reports will show up here\",\"journeys.emptyTitle\":\"The paths people take will show up here\",\"props.emptyTitle\":\"This event’s details will show up here\",\"empty.mini\":\"This list fills in as visits come in.\",\"empty.search\":\"Nothing here matches “{q}” yet, so try another word.\",\"delta.fromNone\":\"from 0\",\"people.admin\":\"Admin\",\"people.member\":\"Member\",\"people.handOver\":\"Make owner\",\"people.handOverHint\":\"Hands ownership to this admin, and you become an admin\",\"people.handOverConfirm\":\"Hand over\",\"people.demotedMember\":\"You are a member now, so People and the install-wide settings are closed to you. The owner or an admin can change it back.\",\"account.admin\":\"You are an admin, so you can change everything and manage people, apart from the owner.\",\"account.member\":\"You are a member, so you can change the settings of every site. The owner and admins manage people and the install-wide settings.\",\"mail.adminOnly\":\"No mail service is set up yet. The owner or an admin can set one up here.\",\"error.admin_only\":\"Only the owner or an admin can change this.\",\"error.owner_protected\":\"Nobody but the owner can change or remove the owner.\",\"error.owner_hand_over\":\"Only the owner can hand over ownership.\",\"error.owner_needs_admin\":\"Make them an admin first.\",\"embed.goneTitle\":\"This dashboard link does not work\",\"embed.gone\":\"Open the dashboard again from your site's admin pages.\",\"embed.expiredTitle\":\"This view has expired\",\"embed.expired\":\"The dashboard inside your admin pages stays open for an hour at a time. Reload the page to open it again.\",\"embed.reload\":\"Reload the page\",\"embedKey.title\":\"Key for the dashboard in your CMS\",\"embedKey.intro\":\"With this key in their settings, the WordPress, Drupal, and Craft plugins show this site's dashboard inside your admin pages. It opens the read-only view a share link shows and cannot read anything itself. Delete it in Settings, API and AI to stop it at once.\",\"embedKey.make\":\"Make a key\",\"embedKey.another\":\"Make another key\",\"embedKey.name\":\"Dashboard in a CMS\",\"tokens.embeds\":\"Opens the dashboard in a CMS\",\"error.embed_expired\":\"This dashboard has expired. Reload the page to open it again.\",\"error.embed_site\":\"A key for the dashboard in a CMS is for one site. Pick the site.\"}",
|
|
3
|
-
"de": "{\"app.site\":\"Website\",\"app.confirmDelete\":\"{name} löschen?\",\"app.signedOut\":\"Öffne diese Seite einmal mit {token}, gefolgt von deinem {env}, um dich anzumelden.\",\"app.live.title\":\"Besucher in den letzten fünf Minuten\",\"app.live_one\":\"{n} gerade hier\",\"app.live_other\":\"{n} gerade hier\",\"headline.who_one\":\"{n} Person\",\"headline.who_other\":\"{n} Personen\",\"headline.visited_one\":\"hat die Website besucht\",\"headline.visited_other\":\"haben die Website besucht\",\"headline.matched_one\":\"passt zu diesen Filtern\",\"headline.matched_other\":\"passen zu diesen Filtern\",\"headline.plain\":\"{who} {verb} ({when}).\",\"headline.up\":\"{who} {verb} ({when}), {change} als {against}.\",\"headline.down\":\"{who} {verb} ({when}), {change} als {against}.\",\"headline.same\":\"{who} {verb} ({when}), genauso viele wie {against}.\",\"headline.more\":\"{pct} % mehr\",\"headline.fewer\":\"{pct} % weniger\",\"headline.lastYear\":\"an denselben Tagen im Vorjahr\",\"when.today\":\"heute\",\"when.yesterday\":\"gestern\",\"when.7d\":\"in den letzten 7 Tagen\",\"when.30d\":\"in den letzten 30 Tagen\",\"when.90d\":\"in den letzten 90 Tagen\",\"when.month\":\"diesen Monat\",\"when.last_month\":\"letzten Monat\",\"when.year\":\"dieses Jahr\",\"when.12mo\":\"in den letzten 12 Monaten\",\"when.all\":\"seit Beginn der Messung\",\"when.range\":\"{range}\",\"when.day\":\"{day}\",\"before.today\":\"gestern\",\"before.yesterday\":\"am Tag davor\",\"before.7d\":\"in den 7 Tagen davor\",\"before.30d\":\"in den 30 Tagen davor\",\"before.90d\":\"in den 90 Tagen davor\",\"before.month\":\"im gleichen Zeitraum davor\",\"before.last_month\":\"im Monat davor\",\"before.year\":\"im gleichen Zeitraum davor\",\"before.12mo\":\"in den 12 Monaten davor\",\"before.all\":\"im Zeitraum davor\",\"before.range\":\"im gleichen Zeitraum davor\",\"period.today\":\"Heute\",\"period.yesterday\":\"Gestern\",\"period.7d\":\"Letzte 7 Tage\",\"period.30d\":\"Letzte 30 Tage\",\"period.90d\":\"Letzte 90 Tage\",\"period.month\":\"Dieser Monat\",\"period.last_month\":\"Letzter Monat\",\"period.year\":\"Dieses Jahr\",\"period.12mo\":\"Letzte 12 Monate\",\"period.all\":\"Gesamter Zeitraum\",\"compare.title\":\"Vergleichen mit\",\"compare.vs\":\"vs.\",\"compare.previous\":\"Vorheriger Zeitraum\",\"compare.year\":\"Gleicher Zeitraum im Vorjahr\",\"compare.custom\":\"Eigener Zeitraum\",\"compare.off\":\"Kein Vergleich\",\"compare.apply\":\"Vergleichen\",\"compare.dialog\":\"Vergleichen mit\",\"calendar.dialog\":\"Datum wählen\",\"calendar.earlier\":\"Frühere Monate\",\"calendar.later\":\"Spätere Monate\",\"calendar.pick\":\"Wähle einen Start- und einen Endtag\",\"calendar.range\":\"{from} bis {to}\",\"calendar.open\":\"{from} bis ...\",\"calendar.apply\":\"Übernehmen\",\"common.cancel\":\"Abbrechen\",\"common.close\":\"Schließen\",\"common.clearAll\":\"Alle entfernen\",\"common.loading\":\"Wird geladen\",\"common.search\":\"Suchen\",\"common.none\":\"(keine)\",\"metric.visitors\":\"Besucher\",\"metric.visits\":\"Besuche\",\"metric.pageviews\":\"Seitenaufrufe\",\"metric.viewsPerVisit\":\"Seiten pro Besuch\",\"metric.bounceRate\":\"Absprungrate\",\"metric.visitDuration\":\"Besuchsdauer\",\"hint.visitors\":\"Verschiedene Personen, einmal pro Tag gezählt\",\"hint.visits\":\"Sitzungen: Ein Besuch endet nach 30 Minuten ohne Aktivität\",\"hint.pageviews\":\"Jede geladene Seite, Wiederholungen eingeschlossen\",\"hint.viewsPerVisit\":\"Seitenaufrufe geteilt durch Besuche\",\"hint.bounceRate\":\"Ein Besuch mit einem Seitenaufruf ohne Ereignis, der kürzer als zehn Sekunden dauert\",\"hint.visitDuration\":\"Durchschnittliche Zeit pro Besuch, in der die Seite sichtbar und aktiv war\",\"delta.title\":\"Im Vergleich zum Vergleichszeitraum\",\"delta.none\":\"unverändert\",\"chart.label\":\"{metrics} im Zeitverlauf\",\"chart.scaled\":\"Jede Linie hat ihre eigene Skala. Für Werte darüberfahren.\",\"chart.pick\":\"Klicke auf Karten, um sie zum Diagramm hinzuzufügen.\",\"chart.dashed\":\"Gestrichelt: {range}.\",\"chart.then\":\"damals: {when}\",\"panel.pages\":\"Seiten\",\"panel.sources\":\"Quellen\",\"panel.locations\":\"Orte\",\"panel.rhythm\":\"Wann Leute kommen\",\"panel.ai\":\"KI-Agenten\",\"panel.devices\":\"Geräte\",\"panel.events\":\"Ereignisse\",\"panel.campaigns\":\"Kampagnen\",\"panel.views\":\"Ansichten für {title}\",\"panel.empty\":\"Nichts in diesem Zeitraum\",\"panel.more\":\"Alle anzeigen\",\"panel.filterBy\":\"Nach {name} filtern\",\"panel.showMap\":\"Karte anzeigen\",\"panel.showList\":\"Liste anzeigen\",\"panel.fullMap\":\"Karte im Vollbild\",\"tab.top\":\"Top\",\"tab.entry\":\"Einstieg\",\"tab.exit\":\"Ausstieg\",\"tab.channels\":\"Kanäle\",\"tab.sources\":\"Quellen\",\"tab.referrers\":\"Verweise\",\"tab.countries\":\"Länder\",\"tab.regions\":\"Regionen\",\"tab.cities\":\"Städte\",\"tab.agents\":\"Agenten\",\"tab.pages\":\"Seiten\",\"tab.device\":\"Gerät\",\"tab.browser\":\"Browser\",\"tab.os\":\"System\",\"tab.screen\":\"Bildschirm\",\"tab.language\":\"Sprache\",\"tab.event\":\"Ereignis\",\"tab.campaign\":\"Kampagne\",\"tab.source\":\"Quelle\",\"tab.medium\":\"Medium\",\"tab.content\":\"Inhalt\",\"tab.term\":\"Begriff\",\"column.visitors\":\"Besucher\",\"column.fetches\":\"Abrufe\",\"column.events\":\"Ereignisse\",\"column.time\":\"Zeit\",\"column.bounce\":\"Absprung\",\"channel.Direct\":\"Direkt\",\"channel.Organic Search\":\"Organische Suche\",\"channel.Paid Search\":\"Bezahlte Suche\",\"channel.Social\":\"Soziale Medien\",\"channel.Email\":\"E-Mail\",\"channel.AI\":\"KI\",\"channel.Referral\":\"Verweise\",\"channel.Campaign\":\"Kampagne\",\"device.desktop\":\"Desktop\",\"device.mobile\":\"Mobil\",\"device.tablet\":\"Tablet\",\"ai.live\":\"Live-Abrufe\",\"ai.crawl\":\"Crawls\",\"rhythm.busiest\":\"Spitze: {when}\",\"rhythm.table\":\"Besuche nach Wochentag und Uhrzeit\",\"rhythm.cell_one\":\"{when}: {n} Besuch\",\"rhythm.cell_other\":\"{when}: {n} Besuche\",\"scale.fewer\":\"Weniger\",\"scale.more\":\"Mehr\",\"map.failed\":\"Die Karte konnte nicht geladen werden\",\"map.label\":\"Besucher nach Land: {top}\",\"map.visitors_one\":\"{n} Besucher\",\"map.visitors_other\":\"{n} Besucher\",\"map.none\":\"Keine Besucher\",\"map.title\":\"Weltweit\",\"filter.button\":\"Filter\",\"filter.remove\":\"Filter entfernen\",\"filter.title\":\"Besuche anzeigen\",\"filter.where\":\"wenn\",\"filter.and\":\"und\",\"filter.field\":\"Feld\",\"filter.match\":\"Bedingung\",\"filter.is\":\"ist\",\"filter.not\":\"ist nicht\",\"filter.contains\":\"enthält\",\"filter.value\":\"Wert\",\"filter.placeholder\":\"Wert eingeben oder unten auswählen\",\"filter.placeholderContains\":\"Ein Teil des Werts\",\"filter.removeCondition\":\"Diese Bedingung entfernen\",\"filter.add\":\"+ Bedingung hinzufügen\",\"filter.note\":\"Alle Bedingungen müssen zutreffen. Klicke auf eine Zeile im Dashboard, um eine hinzuzufügen, ohne dies zu öffnen.\",\"filter.apply_one\":\"{n} Bedingung anwenden\",\"filter.apply_other\":\"{n} Bedingungen anwenden\",\"filter.everything\":\"Alles anzeigen\",\"group.pages\":\"Seiten\",\"group.sources\":\"Quellen\",\"group.location\":\"Ort\",\"group.device\":\"Gerät\",\"group.behaviour\":\"Verhalten\",\"field.page\":\"Seite\",\"field.entry\":\"Einstiegsseite\",\"field.exit\":\"Ausstiegsseite\",\"field.hostname\":\"Hostname\",\"field.channel\":\"Kanal\",\"field.source\":\"Quelle\",\"field.referrer\":\"Verweis\",\"field.utm_campaign\":\"Kampagne\",\"field.utm_source\":\"UTM-Quelle\",\"field.utm_medium\":\"UTM-Medium\",\"field.utm_content\":\"UTM-Inhalt\",\"field.utm_term\":\"UTM-Begriff\",\"field.country\":\"Land\",\"field.region\":\"Region\",\"field.city\":\"Stadt\",\"field.device\":\"Gerät\",\"field.browser\":\"Browser\",\"field.browser_version\":\"Browserversion\",\"field.os\":\"System\",\"field.os_version\":\"Systemversion\",\"field.screen\":\"Bildschirm\",\"field.language\":\"Sprache\",\"field.event\":\"Ereignis\",\"foot.powered\":\"Betrieben mit {name}\",\"foot.language\":\"Sprache\",\"theme.light\":\"Helles Design\",\"theme.dark\":\"Dunkles Design\",\"column.visits\":\"Besuche\",\"column.pageviews\":\"Aufrufe\",\"column.scroll\":\"Scrolltiefe\",\"column.duration\":\"Dauer\",\"column.share\":\"Anteil\",\"rhythm.typical\":\"{x}× eine typische Stunde\",\"rhythm.quiet\":\"Keine Besuche in dieser Stunde\",\"app.home\":\"Zurück zur Übersicht\",\"settings.open\":\"Einstellungen\",\"settings.title\":\"Einstellungen\",\"settings.general\":\"Allgemein\",\"settings.install\":\"Einbinden\",\"settings.siteName\":\"Name der Website\",\"settings.timezone\":\"Zeitzone\",\"settings.timezoneHint\":\"Die Tage in deinen Berichten beginnen hier um Mitternacht.\",\"settings.save\":\"Speichern\",\"settings.saving\":\"Wird gespeichert\",\"settings.saved\":\"Gespeichert\",\"settings.language\":\"Sprache\",\"settings.languageHint\":\"Nur für diesen Browser.\",\"settings.theme\":\"Design\",\"settings.themeSystem\":\"Geräteeinstellung\",\"settings.themeLight\":\"Hell\",\"settings.themeDark\":\"Dunkel\",\"install.live\":\"Besuche kommen an. Der letzte war {when}.\",\"install.none\":\"Noch keine Besuche. Füge das Skript unten ein und öffne dann eine Seite deiner Website.\",\"install.script\":\"Füge das auf jeder Seite ein, direkt vor {tag}.\",\"install.copy\":\"Kopieren\",\"install.copied\":\"Kopiert\",\"install.events\":\"Klicks auf beliebige Elemente lassen sich ohne JavaScript zählen.\",\"install.eventsJs\":\"Du kannst Ereignisse auch per JavaScript senden, für alles, was kein Klick ist.\",\"install.agents\":\"Um zu sehen, wie KI-Agenten wie ChatGPT und Claude deine Seiten lesen, gib jede Anfrage in deiner Middleware mit dem Code unten an Runlight weiter.\",\"install.ignore\":\"Deine eigenen Besuche\",\"install.ignored\":\"Deine Besuche aus diesem Browser werden nicht gezählt.\",\"install.counted\":\"Deine Besuche aus diesem Browser werden gezählt.\",\"install.ignoreButton\":\"Diesen Browser ignorieren\",\"install.trackButton\":\"Diesen Browser wieder zählen\",\"install.ignoreElsewhere\":\"Dashboard auf einer anderen Domain als die Website? Öffne {link} einmal in jedem Browser, den du nutzt.\",\"theme.system\":\"Geräteeinstellung\",\"theme.cycle\":\"Design: {current}. Klicken für {next}.\",\"panel.links\":\"Links\",\"links.new\":\"Neuer Link\",\"links.manage\":\"Verwalten\",\"links.clicks\":\"Klicks\",\"links.url\":\"Ziel-URL\",\"links.urlPlaceholder\":\"https://beispiel.de/eine/lange/adresse\",\"links.name\":\"Name\",\"links.namePlaceholder\":\"Optional, für dich selbst\",\"links.slug\":\"Kürzel\",\"links.slugPlaceholder\":\"Leer lassen für ein zufälliges\",\"links.domain\":\"Domain\",\"links.create\":\"Link erstellen\",\"links.save\":\"Änderungen speichern\",\"links.created\":\"Dein Kurzlink ist fertig.\",\"links.another\":\"Noch einen erstellen\",\"links.edit\":\"Link bearbeiten\",\"links.delete\":\"Löschen\",\"links.confirmDelete\":\"{name} löschen? Seine Klicks bleiben in deinen Statistiken.\",\"links.copy\":\"Kopieren\",\"links.copied\":\"Kopiert\",\"links.search\":\"Links durchsuchen\",\"links.sortClicks\":\"Meiste Klicks\",\"links.sortNewest\":\"Neueste\",\"links.sortName\":\"Name\",\"links.import\":\"CSV importieren\",\"links.importDone_one\":\"{n} Link importiert.\",\"links.importDone_other\":\"{n} Links importiert.\",\"links.importFailed\":\"Zeile {row}: {reason}\",\"links.importHelp\":\"Nutze die Spalten name und url, dazu slug und domain, wenn du sie hast.\",\"links.destination\":\"Führt zu\",\"links.clicksOverTime\":\"Klicks im Zeitverlauf\",\"links.sources\":\"Quellen\",\"links.countries\":\"Länder\",\"links.devices\":\"Geräte\",\"links.browsers\":\"Browser\",\"links.total_one\":\"{n} Klick\",\"links.total_other\":\"{n} Klicks\",\"links.domains\":\"Domains für Kurzlinks\",\"links.domainsHelp\":\"Nutze eine eigene Domain oder Subdomain für Kurzlinks, etwa t.beispiel.de. Ihre Links liegen im Stammverzeichnis: t.beispiel.de/sale.\",\"links.addDomain\":\"Domain hinzufügen\",\"links.domainPlaceholder\":\"t.beispiel.de\",\"links.ownDomain\":\"Diese Website ({prefix})\",\"links.removeDomain\":\"Entfernen\",\"settings.links\":\"Eigene Domains\",\"links.confirm\":\"Wirklich löschen\",\"links.editButton\":\"Bearbeiten\",\"links.step1\":\"Lege bei deinem DNS-Anbieter einen CNAME-Eintrag für die Subdomain an, der auf {host} zeigt, wo dieses Dashboard läuft. Für eine Domain ohne Subdomain nimm stattdessen einen A- oder ALIAS-Eintrag auf denselben Server.\",\"links.step2\":\"Sorge dafür, dass dein Hosting die Domain mit HTTPS annimmt: füge sie bei Vercel oder Netlify zu den Domains deines Projekts hinzu, oder zur Konfiguration und zum Zertifikat deines Servers. Läuft Runlight in deiner App, gib die Anfragen in deiner Middleware an rl.linkDomainResponse() weiter.\",\"links.step3\":\"Füge die Domain unten hinzu. Runlight prüft dann, ob sie dieses Dashboard erreicht.\",\"links.checking\":\"Wird geprüft\",\"links.working\":\"Funktioniert\",\"links.notWorking\":\"Erreicht Runlight noch nicht: {reason}\",\"links.recheck\":\"Erneut prüfen\",\"links.sortBy\":\"Links sortieren\",\"links.removeNote\":\"Wenn du eine Domain entfernst, bleiben ihre Links, Klicks und Statistiken erhalten: Sie liegen unter {fallback}, bis du die Domain wieder hinzufügst, und kehren dann zurück.\",\"links.removedDomain\":\"{domain}/ (entfernt)\",\"prompt.copy\":\"Prompt kopieren\",\"prompt.domainHint\":\"Kopiere diese Schritte mit deinen Adressen und füge sie dort ein.\",\"prompt.installHint\":\"Kopiere die Einrichtungsschritte und füge sie dort ein.\",\"links.showing\":\"{shown} von {total} angezeigt\",\"links.showMore\":\"{n} weitere anzeigen\",\"links.clicksLabel\":\"Klicks\",\"links.createdOn\":\"Erstellt am {date}\",\"settings.import\":\"Import\",\"import.intro\":\"Hol deine Kurzlinks von einem anderen Dienst, mit Klickverlauf, wo der Dienst ihn teilt. Dein Schlüssel oder Passwort dient nur diesem Import und wird nie gespeichert. Ein erneuter Import überspringt vorhandene Links.\",\"import.source\":\"Importieren von\",\"import.csv\":\"Beliebige CSV\",\"import.url\":\"Umami-Adresse\",\"import.apiKey\":\"API-Schlüssel\",\"import.username\":\"Benutzername\",\"import.password\":\"Passwort\",\"import.signIn\":\"Anmelden mit\",\"import.withKey\":\"API-Schlüssel\",\"import.withPassword\":\"Benutzername und Passwort\",\"import.start\":\"Import starten\",\"import.stop\":\"Stoppen\",\"import.running\":\"Importiere {done} von {total} Links\",\"import.done\":\"Fertig: {links} Links und {clicks} Klicks importiert, {skipped} waren schon da.\",\"import.stopped\":\"Nach {done} von {total} Links gestoppt. Starte erneut, um weiterzumachen; importierte Links werden übersprungen.\",\"import.failed\":\"Diese konnten nicht importiert werden.\",\"import.history.full\":\"Das importiert jeden Klick mit Land, Gerät, Browser und Verweis.\",\"import.history.daily\":\"Das importiert Klicks pro Tag, ohne Land oder Gerät.\",\"import.history.none\":\"Nur Links: Der Dienst teilt keine datierten Klicks.\",\"import.umamiHelp\":\"Erstelle in Umami unter Einstellungen, API-Schlüssel einen Schlüssel. Selbst gehostetes Standard-Umami hat keine API-Schlüssel, melde dich dann mit Benutzername und Passwort an. Beides dient nur diesem Import und wird nie gespeichert.\",\"import.csvHelp\":\"Nutze die Spalten name und url, dazu slug und domain, wenn du sie hast.\",\"import.chooseFile\":\"CSV-Datei wählen\",\"import.token\":\"Zugriffstoken\",\"import.workspace\":\"Workspace-ID (optional)\",\"import.dubHelp\":\"Erstelle in Dub unter Settings, API Keys einen Schlüssel mit Lesezugriff auf Links und Analytics. Jeder Klick kommt mit dem Business-Plan mit, Tageswerte mit Pro, nur Links mit Free.\",\"import.bitlyHelp\":\"Gehe in Bitly zu Settings, API, gib dein Passwort ein und erzeuge ein Token. Bitly speichert nur Tageswerte, so weit zurück, wie dein Plan erlaubt (bei Free keine).\",\"import.shortioHelp\":\"Öffne in Short.io Integrations and API und erstelle einen geheimen Schlüssel (ein öffentlicher kann keine Links lesen). Short.io erlaubt 60 Statistikabfragen pro Minute, daher geht dieser Import in seinem Tempo.\",\"import.rebrandlyHelp\":\"Erstelle in Rebrandly unter Settings, API keys einen Schlüssel. Rebrandly teilt nur die Gesamtklicks, daher kommen Links ohne Verlauf.\",\"import.soFar_one\":\"Bisher {n} Link importiert\",\"import.soFar_other\":\"Bisher {n} Links importiert\",\"import.moveNote\":\"Links auf der Domain des Dienstes (bit.ly, dub.sh, rebrand.ly, short.gy) ziehen mit gleichem Kürzel nach {fallback}; eigene Domains werden unter Eigene Domains hinzugefügt.\",\"prompt.title\":\"Nutzt du einen Coding-Assistenten?\",\"compare.allTime\":\"Vor dem gesamten Zeitraum gibt es nichts zum Vergleichen.\",\"view.reset\":\"Zurücksetzen\",\"view.resetHint\":\"Zurück zu den letzten 30 Tagen, ohne Filter oder Vergleich\",\"settings.sharing\":\"Teilen\",\"share.intro\":\"Ein Freigabelink zeigt die Statistiken dieser Website jedem, der ihn hat, ohne Anmeldung: die Zahlen, Seiten, Quellen und Orte. Er zeigt nie deine Kurzlinks, Einstellungen oder die Adresse der Website.\",\"share.namePlaceholder\":\"Für wen, etwa einen Kunden oder dein Team\",\"share.create\":\"Freigabelink erstellen\",\"share.empty\":\"Erstelle unten einen und schick ihn allen, die diese Zahlen sehen sollen.\",\"share.unnamed\":\"Ohne Titel\",\"share.open\":\"Öffnen\",\"share.rename\":\"Umbenennen\",\"share.save\":\"Speichern\",\"share.revokeNote\":\"Ein gelöschter Freigabelink funktioniert sofort nicht mehr. Wer ihn hatte, sieht dann einen Hinweis darauf.\",\"share.gone\":\"Wer ihn geteilt hat, hat ihn abgeschaltet. Bitte um einen neuen Link.\",\"live.title\":\"Gerade jetzt\",\"live.sub\":\"Aktualisiert sich alle 10 Sekunden\",\"live.now_one\":\"{n} Person auf der Website\",\"live.now_other\":\"{n} Personen auf der Website\",\"live.nowHint\":\"Alle, die in den letzten 5 Minuten eine Seite angesehen oder etwas getan haben.\",\"live.total_one\":\"{n} Seitenaufruf in den letzten 30 Minuten\",\"live.total_other\":\"{n} Seitenaufrufe in den letzten 30 Minuten\",\"live.minute_one\":\"{n} Seitenaufruf um {time}\",\"live.minute_other\":\"{n} Seitenaufrufe um {time}\",\"live.ago30\":\"vor 30 Min.\",\"live.nowLabel\":\"Jetzt\",\"live.pages\":\"Seiten\",\"live.sources\":\"Quellen\",\"live.countries\":\"Länder\",\"live.nobody\":\"Besucher erscheinen hier, sobald sie ankommen.\",\"live.feed\":\"Letzte Aktivität\",\"live.quiet\":\"Besuche der letzten 30 Minuten erscheinen hier.\",\"live.someone\":\"Jemand\",\"live.someoneIn\":\"Jemand in {place}\",\"live.viewed\":\"{who} hat {path} angesehen\",\"live.viewedVia\":\"{who} hat {path} angesehen, über {source}\",\"live.did\":\"{who} hat {name} auf {path} ausgelöst\",\"live.didVia\":\"{who} hat {name} auf {path} ausgelöst, über {source}\",\"welcome.title\":\"Runlight zu {name} hinzufügen\",\"welcome.lead\":\"Warte auf den ersten Besuch. Diese Seite füllt sich dann von selbst.\",\"settings.goals\":\"Ziele\",\"settings.funnels\":\"Funnels\",\"panel.conversions\":\"Conversions\",\"goals.revenueAside\":\"{amount} Umsatz\",\"goals.add\":\"Ziel hinzufügen\",\"goals.emptyTitle\":\"Deine Ziele erscheinen hier\",\"goals.emptyHint\":\"Ein Ziel zählt, was dir wichtig ist, etwa eine Anmeldung oder einen Klick auf einen Button. Ein Ereignis- oder Seitenziel zählt auch vergangene Besuche, und ein Klickziel zählt ab dem Hinzufügen.\",\"goals.goal\":\"Ziel\",\"goals.rate\":\"Rate\",\"goals.conversions\":\"Conversions\",\"goals.unknown\":\"(keine)\",\"goals.converted\":\"Konvertierte Personen\",\"goals.revenue\":\"Umsatz\",\"goals.overTime\":\"Conversions im Zeitverlauf\",\"goals.overTimeValued\":\"Conversions und Umsatz im Zeitverlauf, jeweils eigene Skala\",\"goals.byChannel\":\"Nach Kanal\",\"goals.bySource\":\"Nach Quelle\",\"goals.byPage\":\"Wo es passierte\",\"goals.describe.event\":\"Ereignis: {match}\",\"goals.describe.page\":\"Besuche von {match}\",\"goals.describe.selector\":\"Klicks auf {match}\",\"goals.describe.link\":\"Klicks auf Links zu {match}\",\"goals.value.each\":\"je {amount}\",\"goals.value.fromProp\":\"Betrag aus {prop}, in {currency}\",\"goals.name\":\"Name\",\"goals.namePlaceholder\":\"Anmeldung, Kauf, Termin gebucht\",\"goals.counts\":\"Zählt\",\"goals.kind.event\":\"Ein Ereignis\",\"goals.kind.page\":\"Einen Seitenbesuch\",\"goals.kind.click\":\"Einen Klick\",\"goals.clickOn\":\"Klicks auf\",\"goals.click.selector\":\"Ein Element\",\"goals.click.link\":\"Links zu einer Adresse\",\"goals.match.event\":\"Name des Ereignisses\",\"goals.match.page\":\"Seite\",\"goals.match.link\":\"Linkadresse\",\"goals.match.selector\":\"CSS-Selektor\",\"goals.pick\":\"Auf meiner Website wählen\",\"goals.picking\":\"Warte auf deine Auswahl\",\"goals.hint.event\":\"Der Name, den du mit runlight(\\\"Name\\\") oder einem data-runlight-Attribut sendest.\",\"goals.hint.page\":\"Ein Pfad wie /danke. Nutze * für Beliebiges: /blog/* oder /danke*. Eine volle URL geht auch.\",\"goals.hint.link\":\"Klicks auf Links mit passender Adresse. Nutze * für Beliebiges, etwa https://buy.stripe.com/*, oder beginne mit / für eigene Seiten.\",\"goals.hint.selector\":\"Ein beliebiger CSS-Selektor. Oder nutze Auf meiner Website wählen: Deine Website öffnet sich, du klickst das Element an, dann Verwenden.\",\"goals.valueLabel\":\"Wert\",\"goals.value.none\":\"Keiner\",\"goals.value.fixed\":\"Ein fester Betrag\",\"goals.value.prop\":\"Ein mit dem Ereignis gesendeter Betrag\",\"goals.amount\":\"Betrag pro Mal\",\"goals.property\":\"Eigenschaft mit dem Betrag\",\"goals.currency\":\"Währung\",\"goals.save\":\"Ziel speichern\",\"goals.create\":\"Ziel hinzufügen\",\"goals.cancel\":\"Abbrechen\",\"goals.edit\":\"Bearbeiten\",\"goals.intro\":\"Ziele machen aus Besuchen Conversions. Jedes zählt ein Ereignis, einen Seitenbesuch oder einen Klick und kann einen Geldwert tragen, damit du Umsatz nach Quelle und Seite siehst.\",\"goals.none\":\"Füge unten eins hinzu, damit es gezählt wird.\",\"goals.pastNote\":\"Ziele werden aus den vorhandenen Daten berechnet, ein neues Ziel zeigt also auch vergangene Conversions. Klickziele zählen etwa fünf Minuten nach dem Hinzufügen.\",\"settings.email\":\"E-Mail-Berichte\",\"settings.mail\":\"E-Mail-Dienst\",\"mail.intro\":\"Runlight verschickt Berichte und Einladungen über deinen eigenen E-Mail-Dienst. Richte ihn einmal ein, dann nutzen ihn alle Websites.\",\"mail.service\":\"Dienst\",\"mail.optional\":\"(optional)\",\"mail.keepSaved\":\"Gespeichert. Leer lassen, um ihn zu behalten.\",\"mail.from\":\"Absenderadresse\",\"mail.fromName\":\"Absendername\",\"mail.fromHint\":\"Nutze eine Adresse, die dein Dienst erlaubt, auf einer dort bestätigten Domain.\",\"mail.save\":\"Mail-Dienst speichern\",\"mail.change\":\"Ändern\",\"mail.fromLine\":\"Sendet von {from}\",\"mail.fromCode\":\"Im Code festgelegt. Sendet von {from}\",\"mail.testTo\":\"Test senden an\",\"mail.test\":\"Test senden\",\"mail.testSent\":\"Test an {to} gesendet. Sieh im Posteingang und im Spam nach.\",\"mail.notEncryptedTitle\":\"Deine Schlüssel werden unverschlüsselt gespeichert\",\"mail.notEncrypted\":\"Dieses Runlight hat kein RUNLIGHT_SECRET, daher liegen die Schlüssel genau so in der Datenbank, wie du sie eingibst. Setze RUNLIGHT_SECRET oder RUNLIGHT_TOKEN auf dem Server, damit sie verschlüsselt bleiben.\",\"mail.field.region\":\"Region\",\"mail.field.accessKeyId\":\"Zugriffsschlüssel-ID\",\"mail.field.secretAccessKey\":\"Geheimer Zugriffsschlüssel\",\"mail.field.apiKey\":\"API-Schlüssel\",\"mail.field.serverToken\":\"Server-API-Token\",\"mail.field.stream\":\"Nachrichtenstream\",\"mail.field.domain\":\"Versanddomain\",\"mail.field.secretKey\":\"Geheimer Schlüssel\",\"mail.field.host\":\"Host\",\"mail.field.port\":\"Port\",\"mail.field.security\":\"Sicherheit\",\"mail.field.username\":\"Benutzername\",\"mail.field.password\":\"Passwort\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Signaturgeheimnis\",\"reports.title\":\"Wer Berichte bekommt\",\"reports.intro\":\"Eine Zusammenfassung von {site} per E-Mail: Besucher, Seiten, Quellen, Länder und Conversions, verglichen mit dem Zeitraum davor.\",\"reports.none\":\"Füge unten eine E-Mail-Adresse hinzu, um sie zu verschicken.\",\"reports.weekly\":\"Wöchentlich\",\"reports.monthly\":\"Monatlich\",\"reports.frequency\":\"Wie oft\",\"reports.language\":\"Sprache\",\"reports.lastSent\":\"zuletzt gesendet {when}\",\"reports.never\":\"noch nicht\",\"reports.sample\":\"Jetzt ein Beispiel senden\",\"reports.sampleSent\":\"Beispiel an {to} gesendet.\",\"reports.emailPlaceholder\":\"name@beispiel.de\",\"reports.add\":\"Hinzufügen\",\"reports.when\":\"Wochenberichte decken Montag bis Sonntag ab und gehen montags ab 8 Uhr raus, Monatsberichte am 1., in der Zeitzone der Website. Sie verschickt der stündliche Check (ein Cron, der POST /api/check aufruft).\",\"reports.needsMail\":\"Berichte werden verschickt, sobald ein E-Mail-Dienst eingerichtet ist. Ein Dienst sendet sie für alle Websites.\",\"reports.setUpMail\":\"E-Mail-Dienst einrichten\",\"reports.needsMailTitle\":\"Noch kein E-Mail-Dienst\",\"email.subject.week\":\"{site}: {who} letzte Woche\",\"email.subject.month\":\"{site}: {who} im {month}\",\"email.when.week\":\"letzte Woche\",\"email.before.week\":\"der Woche davor\",\"email.when.month\":\"im {month}\",\"email.range\":\"{from} bis {to}\",\"email.pages\":\"Top-Seiten\",\"email.sources\":\"Top-Quellen\",\"email.countries\":\"Top-Länder\",\"email.conversions\":\"Conversions\",\"email.open\":\"Dashboard öffnen\",\"email.at\":\"Dein Dashboard liegt unter {where}\",\"email.footer\":\"Du bekommst diesen {frequency} Bericht für {site} von Runlight.\",\"email.weekly\":\"wöchentlichen\",\"email.monthly\":\"monatlichen\",\"email.unsubscribe\":\"Abbestellen\",\"email.test.subject\":\"Runlight kann E-Mails senden\",\"email.test.body\":\"Dieser Test kam über {service}. Berichte für deine Websites kommen auf demselben Weg.\",\"email.unsub.title\":\"Berichte für {site} abbestellen?\",\"email.unsub.body\":\"{email} bekommt dann keine Berichte mehr für diese Website.\",\"email.unsub.doneTitle\":\"Abbestellt\",\"email.unsub.done\":\"Keine Berichte für {site} gehen mehr an {email}.\",\"email.unsub.goneTitle\":\"Nichts abzubestellen\",\"email.unsub.gone\":\"Dieser Link wurde schon benutzt, oder der Bericht wurde entfernt.\",\"settings.api\":\"API und KI\",\"tokens.intro\":\"Frag deinen KI-Assistenten nach deinen Zahlen. Erstelle ein Token und füge Runlight dann zu Claude, Cursor oder jeder App hinzu, die sich mit MCP-Servern verbindet. Ein Lese-Token ändert nie etwas, und ein Verwaltungs-Token kann die Einstellungen einer Website ändern. Dasselbe Token funktioniert mit der HTTP-API.\",\"tokens.server\":\"Adresse des MCP-Servers\",\"tokens.namePlaceholder\":\"Wofür es ist, etwa Claude oder ein Skript\",\"tokens.scope\":\"Welche Websites es lesen darf\",\"tokens.allSites\":\"Alle Websites\",\"tokens.siteOnly\":\"Nur {site}\",\"tokens.create\":\"Token erstellen\",\"tokens.empty\":\"Erstelle unten einen, um einen KI-Assistenten oder ein Skript zu verbinden.\",\"tokens.used\":\"zuletzt genutzt am {date}\",\"tokens.never\":\"nie genutzt\",\"tokens.revokeNote\":\"Ein gelöschtes Token funktioniert sofort nicht mehr.\",\"tokens.once\":\"Kopiere dieses Token jetzt. Es wird nur einmal gezeigt, und Runlight speichert nur einen Fingerabdruck davon.\",\"tokens.claudeCode\":\"Claude Code bekommt das Token mit diesem Befehl.\",\"tokens.json\":\"Cursor und andere Apps mit einer mcpServers-JSON-Konfiguration nutzen stattdessen das hier.\",\"tokens.done\":\"Erledigt, ich habe es kopiert\",\"sites.domains\":\"Domains\",\"sites.domainsHint\":\"Gib die Domain der Website ein, etwa example.com, und trenne mehrere mit Kommas.\",\"sites.name\":\"Name\",\"sites.namePlaceholder\":\"Mein Blog\",\"sites.timezoneHint\":\"Tage werden in {zone} gezählt, was du später in den Einstellungen ändern kannst.\",\"sites.add\":\"Website hinzufügen\",\"sites.addTitle\":\"Website hinzufügen\",\"sites.firstTitle\":\"Füge deine erste Website hinzu\",\"sites.firstLead\":\"Runlight zählt jede Website, die du hier hinzufügst. Gib die Domain der Website ein, und der nächste Schritt zeigt das Script-Tag für ihre Seiten.\",\"sites.delete\":\"Diese Website löschen\",\"sites.deleteHint\":\"Beim Löschen einer Website verschwinden alle Besuche, Links, Ziele und Berichte dazu, und das lässt sich nicht rückgängig machen.\",\"app.signOut\":\"Abmelden\",\"install.ignoreServer\":\"Damit deine eigenen Besuche nicht mehr zählen, öffne {link} einmal in jedem Browser, den du nutzt.\",\"panel.geoCredit\":\"Standorte von {name}\",\"visits.tab\":\"Besuche\",\"visits.linksTab\":\"Kurzlinks\",\"visits.intro\":\"Hol deinen Besuchsverlauf herüber, damit deine Diagramme vor den Tag zurückreichen, an dem Runlight zu zählen begann. Nur Besuche vor Runlights eigenem erstem Besuch kommen herüber, daher zählt nichts doppelt.\",\"visits.onlyUmami\":\"Die API von Umami liefert jeden Besuch mit Seite, Quelle, Ort und Gerät, und genau das speichert Runlight. Plausible, Fathom und Google Analytics geben nur Summen heraus, und aus Summen lassen sich keine Besuche zurückgewinnen. Wenn du jeden Seitenaufruf in einer Datei hast, importiere sie stattdessen als CSV.\",\"visits.csvMoment\":\"Mehr als {max} Zeilen teilen sich einen Zeitpunkt, mehr als ein Stapel fassen kann.\",\"visits.csvStopped\":\"Angehalten. Dieselbe Datei erneut zu importieren ist sicher, denn bereits übernommene Zeilen werden ersetzt.\",\"visits.csvSkipped\":\"{n} Zeilen wurden ausgelassen, weil sie nach Runlights eigenem erstem Besuch lagen, vor dem, was diese Website behält, oder weder ein Seitenaufruf noch ein benanntes Ereignis waren.\",\"visits.csvRunning\":\"{done} von {total} Zeilen gesendet, bisher {pageviews} Seitenaufrufe\",\"visits.csvRunlight\":\"{name} ist im Besuchsformat von Runlight, mit {rows} Zeilen.\",\"visits.csvUmami\":\"{name} ist ein Umami-Export mit {rows} Zeilen.\",\"visits.csvOther\":\"Andere Datei wählen\",\"visits.csvChoose\":\"CSV-Datei wählen\",\"visits.csvHelp\":\"Nimm die CSV aus dem Datenexport von Umami oder eine Datei mit einer Zeile pro Seitenaufruf im Besuchsformat von Runlight, das die Dashboard-Doku beschreibt.\",\"visits.fromCsv\":\"Einer CSV-Datei\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Importieren aus\",\"visits.onlyUmamiTitle\":\"Warum nur Umami\",\"visits.find\":\"Websites suchen\",\"visits.website\":\"Umami-Website\",\"visits.noWebsites\":\"Dieses Umami-Konto hat keine Websites.\",\"visits.start\":\"Besuche importieren\",\"visits.running\":\"{done} von {total} Tagen gelesen, bisher {pageviews} Seitenaufrufe\",\"visits.done\":\"Fertig. {pageviews} Seitenaufrufe und {events} Ereignisse sind in {visits} Besuchen angekommen.\",\"visits.stopped\":\"Angehalten. Starte erneut, um beim zuletzt importierten Tag weiterzumachen.\",\"props.title\":\"Eigenschaften\",\"props.open\":\"Eigenschaften von {name}\",\"props.none\":\"Sie erscheinen, sobald das Event mit Eigenschaften gesendet wird.\",\"account.title\":\"Konto\",\"account.owner\":\"Du bist der Eigentümer und kannst daher alles ändern und Personen verwalten. Niemand sonst kann dich entfernen.\",\"account.viewer\":\"Du bist Betrachter und kannst daher die Zahlen jeder Website lesen, ohne etwas zu ändern.\",\"account.current\":\"Aktuelles Passwort\",\"account.next\":\"Neues Passwort\",\"account.nextHint\":\"Verwende mindestens zehn Zeichen. Eine Änderung meldet deine anderen Browser ab.\",\"account.save\":\"Passwort ändern\",\"account.saved\":\"Passwort geändert\",\"settings.people\":\"Personen\",\"people.intro\":\"Alle hier können sich bei diesem Server anmelden. Admins können alles ändern, was der Eigentümer ändern kann, und Personen verwalten, aber niemand kann den Eigentümer entfernen. Mitglieder ändern die Einstellungen jeder Website, und Betrachter lesen die Zahlen jeder Website, ohne etwas zu ändern. Lade eine Kollegin oder einen Kollegen ein, das Passwort wählen sie selbst.\",\"people.you\":\"du\",\"people.role\":\"Rolle\",\"people.owner\":\"Eigentümer\",\"people.viewer\":\"Betrachter\",\"people.roles\":\"Mitglieder können keine Personen verwalten, weder den E-Mail-Dienst noch den Assistenten einrichten und keine Website löschen. Nur der Eigentümer kann das Eigentum an einen Admin übergeben.\",\"people.emailPlaceholder\":\"E-Mail-Adresse der Person\",\"pluginKey.title\":\"Schlüssel für CMS-Plugins\",\"pluginKey.intro\":\"Die Plugins für WordPress, Drupal und Craft melden mit diesem Schlüssel KI-Agenten, die die Seiten dieser Website lesen. Er kann nur für diese Website melden und nichts lesen. Ein neuer Schlüssel macht den alten sofort ungültig.\",\"pluginKey.replace\":\"Schlüssel ersetzen\",\"export.csv\":\"CSV herunterladen\",\"export.zip\":\"Exportieren\",\"export.title\":\"Alles aus dieser Ansicht als CSV-Dateien herunterladen\",\"funnels.title\":\"Trichter\",\"funnels.intro\":\"Ein Trichter folgt den Schritten, die ein Besuch nehmen soll, etwa die Preisseite und dann die Anmeldung, und zeigt, wie viele Besuche jeden Schritt der Reihe nach geschafft haben.\",\"funnels.none\":\"Füge unten einen hinzu, um zu sehen, wo Leute unterwegs aufhören.\",\"funnels.add\":\"Trichter hinzufügen\",\"funnels.name\":\"Name\",\"funnels.namePlaceholder\":\"Anmeldung\",\"funnels.steps\":\"Schritte\",\"funnels.stepsHint\":\"Ein Seitenpfad kann * als Platzhalter nutzen, etwa /blog/*. Jeder Schritt muss nach dem vorherigen kommen, im selben Besuch.\",\"funnels.kind\":\"Art des Schritts\",\"funnels.page\":\"Seite\",\"funnels.event\":\"Ereignis\",\"funnels.removeStep\":\"Diesen Schritt entfernen\",\"funnels.addStep\":\"Schritt hinzufügen\",\"funnels.save\":\"Trichter speichern\",\"funnels.create\":\"Trichter erstellen\",\"funnels.stepPage\":\"Seite {match}\",\"funnels.stepEvent\":\"Ereignis {match}\",\"funnels.wentOn\":\"{pct} gingen weiter\",\"funnels.tab\":\"Trichter\",\"funnels.goalsTab\":\"Ziele\",\"sites.modeHere\":\"Hier zählen\",\"sites.modeConnect\":\"Anderes Runlight verbinden\",\"sites.connectIntro\":\"Verbinde hier eine Website, die sich bereits mit Runlight in ihrer eigenen App zählt. Ihre Zahlen bleiben dort. Du meldest dich dort einmal an und erlaubst diesen Server, danach kannst du die Website von hier aus sehen und ändern.\",\"sites.connectUrl\":\"Ihre Runlight-Adresse\",\"sites.connectToken\":\"API-Token\",\"sites.connectTokenHint\":\"Erstelle auf dieser Installation einen Token unter Einstellungen, API und KI. Mit einem Lese-Token erscheinen die Zahlen hier und die Einstellungen bleiben dort.\",\"sites.connect\":\"Verbinden\",\"sites.all\":\"Alle Websites\",\"sites.remoteNote\":\"Diese Website wird von ihrem eigenen Runlight unter {url} gezählt, das diesem Server das Lesen erlaubt. Erlaube Änderungen, um auch ihre Einstellungen von hier aus zu verwalten.\",\"sites.disconnect\":\"Diese Website trennen\",\"sites.disconnectHint\":\"Beim Trennen verschwindet die Website von diesem Server. Ihr eigenes Runlight und alles, was es gezählt hat, bleiben unverändert.\",\"sites.disconnectButton\":\"Website trennen\",\"sites.confirmDisconnect\":\"Trennen bestätigen\",\"sites.disconnectName\":\"{name} trennen?\",\"settings.data\":\"Daten\",\"data.retention\":\"Besuche behalten für\",\"data.retentionHint\":\"Ältere Besuche und Ereignisse werden beim Speichern endgültig gelöscht, danach jeden Tag. Ziele, Links und Einstellungen bleiben.\",\"data.forever\":\"Immer\",\"data.months\":\"{n} Monate\",\"data.years\":\"{n} Jahre\",\"data.deletesBefore\":\"Besuche vor dem {date} werden beim Speichern gelöscht.\",\"data.unreachable\":\"{url} war nicht erreichbar, um diese Einstellung zu lesen. Versuche es in einer Minute erneut.\",\"data.export\":\"Alles exportieren\",\"data.exportHint\":\"Die ZIP-Datei enthält alle Berichte dieser Website seit dem ersten Besuch als CSV-Dateien.\",\"data.download\":\"ZIP herunterladen\",\"sites.remoteTitle\":\"Von einem anderen Runlight gezählt\",\"sites.openRemote\":\"Sein Dashboard öffnen\",\"sites.useToken\":\"Stattdessen einen API-Token verwenden\",\"sites.useSignIn\":\"Stattdessen dort anmelden\",\"sites.remoteManaged\":\"Diese Website wird von ihrem eigenen Runlight unter {url} gezählt. Änderungen, die du hier machst, werden dort gespeichert.\",\"sites.allowChanges\":\"Änderungen erlauben\",\"sites.reconnect\":\"Erneut verbinden\",\"sites.reconnectHint\":\"Nutze das, wenn die Installation diesen Server nicht mehr annimmt, etwa nachdem sein Token dort gelöscht wurde.\",\"sites.connectError.expired\":\"Die Verbindung hat zu lange gedauert oder wurde schon verwendet. Fang noch einmal an.\",\"sites.connectError.denied\":\"Die Verbindung wurde nicht erlaubt.\",\"sites.connectError.refused\":\"Die Installation hat diesen Server nicht verbinden lassen. Fang noch einmal an oder verbinde sie mit einem API-Token.\",\"sites.connectError.token\":\"Die Installation hat diesem Server kein Token gegeben. Fang noch einmal an.\",\"sites.connectError.failed\":\"Das Verbinden wurde nicht abgeschlossen. Fang noch einmal an.\",\"mail.fromRemote\":\"Gesendet von {host} über {from}\",\"mail.noneRemote\":\"{host} hat noch keinen E-Mail-Dienst und kann diese Berichte daher nicht senden. Richte dort im eigenen Dashboard unter Einstellungen, E-Mail-Dienst einen ein.\",\"tokens.manages\":\"Darf Einstellungen ändern\",\"account.again\":\"Neues Passwort wiederholen\",\"account.mismatch\":\"Die beiden neuen Passwörter sind nicht gleich.\",\"account.strength0\":\"Zu kurz\",\"account.strength1\":\"Schwach\",\"account.strength2\":\"Mittel\",\"account.strength3\":\"Gut\",\"account.strength4\":\"Stark\",\"mail.introRemote\":\"Berichte für diese Website gehen über den E-Mail-Dienst, der auf {host} eingerichtet ist.\",\"settings.assistant\":\"KI-Assistent\",\"assistant.open\":\"Fragen zu deinen Statistiken\",\"assistant.title\":\"KI-Assistent\",\"assistant.about\":\"Er antwortet aus den Zahlen von {site}, die er in dem Moment liest, in dem du fragst.\",\"assistant.clear\":\"Neuer Chat\",\"assistant.intro\":\"Frag nach Besuchern, Quellen, Seiten, Zielen oder allem anderen, was dieses Dashboard zeigt.\",\"assistant.ask1\":\"Wie schneidet dieser Zeitraum im Vergleich zum vorherigen ab?\",\"assistant.ask2\":\"Woher kommen die meisten Besucher?\",\"assistant.ask3\":\"Welche Seiten halten Leute am längsten?\",\"assistant.ask4\":\"Schicken KI-Assistenten Besucher hierher?\",\"assistant.placeholder\":\"Stell eine Frage\",\"assistant.send\":\"Senden\",\"assistant.thinking\":\"Liest deine Zahlen\",\"assistant.empty\":\"Der Assistent hatte keine Antwort.\",\"assistant.checked_one\":\"{n} Bericht gelesen\",\"assistant.checked_other\":\"{n} Berichte gelesen\",\"assistant.setupOwner\":\"Der Assistent braucht einen KI-Dienst zum Antworten. Füge einen Schlüssel für Anthropic, OpenAI oder Gemini hinzu oder verweise auf ein Modell auf deinem eigenen Rechner.\",\"assistant.setupViewer\":\"Der Assistent ist noch nicht eingerichtet. Der Eigentümer oder ein Admin kann unter Einstellungen, KI-Assistent einen KI-Dienst hinzufügen.\",\"assistant.setup\":\"Assistent einrichten\",\"assistant.ownersOnly\":\"Nur der Eigentümer oder ein Admin kann den Assistenten einrichten.\",\"assistant.settingsIntro\":\"Wähle unten einen KI-Dienst und füge einen API-Schlüssel von ihm ein. Danach öffnet der Roboter-Knopf neben Filter einen Assistenten, der Fragen zu deinen Statistiken in einfachen Worten beantwortet.\",\"assistant.privacyTitle\":\"Was der Dienst sieht\",\"assistant.privacy\":\"Jede Frage geht mit den Zahlen, die der Assistent zum Antworten liest, an diesen Dienst. Runlight speichert nichts über einzelne Besucher, also wird nichts Persönliches gesendet. Der Assistent liest nur, mit denselben Werkzeugen wie der MCP-Server, und kann deshalb nie etwas ändern.\",\"assistant.notEncryptedTitle\":\"Dein Schlüssel wird unverschlüsselt gespeichert\",\"assistant.notEncrypted\":\"Dieses Runlight hat kein RUNLIGHT_SECRET, daher liegt der Schlüssel genau so in der Datenbank, wie du ihn eingibst. Setze RUNLIGHT_SECRET oder RUNLIGHT_TOKEN auf dem Server, damit er verschlüsselt bleibt.\",\"assistant.provider\":\"KI-Dienst\",\"assistant.address\":\"Adresse\",\"assistant.addressHint\":\"Wo die OpenAI-kompatible API des Dienstes liegt, ohne /chat/completions am Ende.\",\"assistant.addressLocal\":\"Wo das Modell läuft. Der Server, auf dem Runlight läuft, muss es erreichen können.\",\"assistant.model\":\"Modell\",\"assistant.modelPlaceholder\":\"Der Name des Modells, wie der Dienst ihn nennt\",\"assistant.modelDefault\":\"Leer lassen, um {model} zu verwenden.\",\"assistant.modelHint\":\"Gib oben den Schlüssel ein und lade dann die Modelle des Dienstes, oder tippe einen Modellnamen. Ein Modell, das Werkzeuge aufrufen kann, funktioniert am besten.\",\"assistant.key\":\"API-Schlüssel\",\"assistant.remove\":\"Assistent ausschalten\",\"assistant.removeHint\":\"Entfernt den Dienst und seinen Schlüssel. Der Roboter-Knopf bittet dann einen Eigentümer, ihn neu einzurichten.\",\"journeys.open\":\"Wege\",\"journeys.title\":\"Wege\",\"journeys.intro\":\"Die Wege, die Besuche durch die Website nehmen, Seite für Seite. Klicke auf eine Seite, um nur den Besuchen zu folgen, die dort vorbeikamen.\",\"journeys.steps\":\"Schritte\",\"journeys.stepCount\":\"{n} Schritte\",\"journeys.start\":\"Beginnend bei\",\"journeys.end\":\"Endend bei\",\"journeys.anyPage\":\"Beliebige Seite\",\"journeys.step\":\"Schritt {n}\",\"journeys.other\":\"Andere Seiten\",\"journeys.left\":\"{n} gingen nicht weiter\",\"journeys.follow\":\"Besuchen über {page} folgen\",\"journeys.following\":\"Besuche über {page} bei Schritt {step}.\",\"journeys.none\":\"Wähle einen längeren Zeitraum, um mehr Besuche zu sehen.\",\"secret.show\":\"Anzeigen\",\"secret.hide\":\"Verbergen\",\"people.invite\":\"Einladen\",\"people.invited\":\"eingeladen\",\"people.invitedMeta\":\"{role}, der Link gilt bis {date}\",\"people.resend\":\"Erneut senden\",\"people.emailed\":\"Eine Einladung ist an {email} unterwegs. Du kannst diesen Link auch selbst schicken.\",\"people.noMail\":\"Dieser Server hat keinen E-Mail-Dienst, schick {email} diesen Link also selbst. Richte unter Einstellungen, E-Mail-Dienst einen ein, um Einladungen per E-Mail zu senden.\",\"people.mailFailed\":\"Die E-Mail an {email} ging nicht raus ({error}). Schick diesen Link selbst.\",\"people.linkHint\":\"Der Link funktioniert einmal, sieben Tage lang. Erneut senden erstellt einen neuen Link und macht diesen ungültig.\",\"twofa.title\":\"Zwei-Faktor-Anmeldung\",\"twofa.off\":\"Aus. Schalte sie ein, dann fragt die Anmeldung auch nach einem Code aus einer Authenticator-App auf deinem Handy.\",\"twofa.on_one\":\"An. Die Anmeldung fragt nach einem Code aus deiner Authenticator-App. Du hast noch {n} Wiederherstellungscode.\",\"twofa.on_other\":\"An. Die Anmeldung fragt nach einem Code aus deiner Authenticator-App. Du hast noch {n} Wiederherstellungscodes.\",\"twofa.turnOn\":\"Einschalten\",\"twofa.turnOff\":\"Ausschalten\",\"twofa.newCodes\":\"Neue Wiederherstellungscodes\",\"twofa.password\":\"Dein Passwort\",\"twofa.continue\":\"Weiter\",\"twofa.scan\":\"Scanne dies mit einer Authenticator-App wie 1Password, Google Authenticator oder Authy und gib den sechsstelligen Code ein, den sie anzeigt.\",\"twofa.qr\":\"QR-Code für deine Authenticator-App\",\"twofa.manual\":\"Oder gib diesen Schlüssel in der App ein.\",\"twofa.code\":\"Code aus der App\",\"twofa.confirm\":\"Einschalten\",\"twofa.codesIntro\":\"Bewahre diese Wiederherstellungscodes sicher auf. Jeder meldet dich einmal an, falls du dein Handy verlierst, und sie werden nicht noch einmal angezeigt.\",\"twofa.download\":\"Herunterladen\",\"twofa.copy\":\"Kopieren\",\"twofa.saved\":\"Ich habe sie gespeichert\",\"people.twoFactor\":\"Zwei-Faktor\",\"people.resetTwoFactor\":\"Zwei-Faktor zurücksetzen\",\"people.resetTwoFactorHint\":\"Schaltet die Zwei-Faktor-Anmeldung für diese Person aus, falls Handy und Wiederherstellungscodes verloren sind\",\"assistant.loadModels\":\"Modelle laden\",\"assistant.loadingModels\":\"Lädt\",\"assistant.pickModel\":\"Modell wählen\",\"assistant.typeModel\":\"Stattdessen einen Modellnamen eingeben\",\"assistant.chooseFromList\":\"Aus der Liste wählen\",\"journeys.sampled\":\"Das sind die Wege der neuesten {n} Besuche in diesem Zeitraum.\",\"error.owner_only\":\"Nur ein Eigentümer kann das ändern.\",\"error.domain_invalid\":\"Das ist kein Domainname.\",\"error.domain_in_use\":\"Unter {domain} laufen dieses Dashboard oder eine deiner Websites. Nimm für Kurzlinks eine eigene Domain oder Subdomain, etwa go.{domain}.\",\"error.domain_taken\":\"{domain} gehört bereits zu einer anderen Website.\",\"error.link_url\":\"Das Ziel muss eine vollständige URL sein, die mit https:// beginnt\",\"error.link_protocol\":\"Das Ziel muss mit http:// oder https:// beginnen\",\"error.link_long\":\"Das Ziel ist länger als 2.000 Zeichen.\",\"error.link_domain\":\"Füge {domain} zuerst in den Einstellungen als Link-Domain hinzu.\",\"error.link_slug\":\"Ein Slug besteht aus Buchstaben, Ziffern, Bindestrichen und Unterstrichen, höchstens 100.\",\"error.link_taken\":\"/{slug} ist schon vergeben.\",\"error.link_no_slug\":\"Es wurde kein freier Slug gefunden. Versuch es noch einmal.\",\"error.test_email\":\"Gib eine E-Mail-Adresse ein, an die der Test gehen soll.\",\"error.mail_unset\":\"Richte zuerst einen Mail-Dienst ein.\",\"error.email_invalid\":\"Gib eine E-Mail-Adresse ein.\",\"error.report_exists\":\"{email} bekommt diesen Bericht bereits.\",\"error.report_limit\":\"Eine Website kann an höchstens 50 Adressen senden.\",\"error.sample_soon\":\"Gerade ging schon ein Beispiel raus. Warte eine Minute und versuch es noch einmal.\",\"error.people_owner\":\"Nur der Eigentümer oder ein Admin kann Personen verwalten.\",\"error.role_needed\":\"Wähle Admin, Mitglied oder Betrachter.\",\"error.account_exists\":\"{email} hat bereits ein Konto.\",\"error.remove_self\":\"Du kannst dich nicht selbst entfernen.\",\"people.demoted\":\"Du bist jetzt Betrachter, deshalb sind die Einstellungen geschlossen und hier lässt sich nichts mehr ändern. Der Eigentümer oder ein Admin kann das rückgängig machen.\",\"links.importNoUrl\":\"Nichts wurde importiert, weil die Datei keine Spalte url mit Adressen hat. Nutze die Spalten name und url, dazu slug und domain, wenn du sie hast.\",\"app.sessionEnded\":\"Du wurdest abgemeldet, was passiert, wenn eine Sitzung abläuft oder sich ein Passwort ändert. {link}, dann kommst du zu dieser Ansicht zurück.\",\"app.signInAgain\":\"Melde dich wieder an\",\"links.noneYet\":\"Für diese Website hat noch niemand einen Kurzlink erstellt.\",\"error.remote_slow\":\"{host} hat zu lange gebraucht. Versuch einen kürzeren Zeitraum.\",\"error.domain_not_public\":\"{domain} ist kein öffentlicher Domainname. Nimm einen, den jeder Browser erreichen kann.\",\"error.unreachable\":\"{host} ist nicht erreichbar.\",\"error.redirected\":\"{host} hat mit einer Weiterleitung geantwortet.\",\"error.token_refused\":\"{host} hat das Token abgelehnt. Verbinde es in den Einstellungen der Website neu.\",\"error.mail_failed\":\"Die E-Mail konnte nicht gesendet werden ({detail}).\",\"error.mail_unreachable\":\"{host} ist nicht erreichbar.\",\"error.mail_slow\":\"{host} hat zu lange gebraucht, deshalb wurde die E-Mail nicht gesendet.\",\"error.mail_refused\":\"{host} hat die E-Mail abgelehnt ({detail}).\",\"error.mail_service\":\"Wähle einen Mail-Dienst.\",\"error.mail_field\":\"{field} fehlt noch.\",\"error.mail_option\":\"{field} muss einer dieser Werte sein ({options}).\",\"error.mail_https\":\"Die Webhook-URL muss https verwenden.\",\"error.mail_region\":\"Das ist keine AWS-Region wie us-east-1.\",\"error.mail_in_code\":\"Der Mail-Dienst ist im Code festgelegt und lässt sich hier nicht ändern.\",\"error.mail_from\":\"Gib die Absenderadresse der Berichte ein, zum Beispiel reports@example.com.\",\"error.smtp_starttls\":\"Der SMTP-Server bietet kein STARTTLS an. Wähle bei Sicherheit TLS oder keine.\",\"error.unknown_account\":\"Dieses Konto gibt es nicht mehr.\",\"error.password_short\":\"Nimm ein Passwort mit mindestens {min} Zeichen.\",\"error.invite_gone\":\"Diese Einladung ist abgelaufen oder wurde schon benutzt. Bitte um eine neue.\",\"error.too_many_tries\":\"Zu viele Versuche. Warte fünfzehn Minuten und versuch es noch einmal.\",\"error.password_current_wrong\":\"Dein aktuelles Passwort stimmt nicht.\",\"error.password_wrong\":\"Dein Passwort stimmt nicht.\",\"error.code_wrong\":\"Dieser Code stimmt nicht. Prüf die Uhrzeit auf deinem Handy und versuch den nächsten.\",\"error.twofactor_off\":\"Schalte zuerst die Zwei-Faktor-Anmeldung ein.\",\"error.twofactor_self\":\"Deine eigene Zwei-Faktor-Anmeldung schaltest du unter Konto aus.\",\"error.unknown_invite\":\"Diese Einladung gibt es nicht mehr.\",\"error.origin_needed\":\"Lege zuerst die eigene Adresse dieses Runlight fest (RUNLIGHT_URL auf dem Server oder origin in routes()), damit ein verbundener Hub Link-Domains und E-Mail-Berichte hinzufügen kann.\",\"error.twofactor_restart\":\"Zu viele falsche Codes. Beginne erneut mit dem Einschalten der Zwei-Faktor-Anmeldung.\",\"error.pick_origin\":\"Sende den Ursprung des Dashboards, etwa https://stats.example.com\",\"error.pick_hub\":\"Die Adresse dieses Hubs ist nicht die, von der aus er sich verbunden hat. Verbinde die Website von hier aus erneut.\",\"assistant.viewerDaily\":\"Fragen pro Betrachter und Tag\",\"assistant.viewerDailyHint\":\"Jede Frage wird mit deinem KI-Schlüssel bezahlt. Betrachter sind die Personen, die du unter Personen einlädst und die Statistiken lesen, aber nichts ändern können. Jeder von ihnen kann so viele Fragen am Tag stellen. Setze 0, um den Assistenten den Eigentümern vorzubehalten. Freigabelinks bekommen den Assistenten nie.\",\"error.assistant_soon\":\"Du hast in kurzer Zeit viel gefragt. Warte kurz und frag dann noch einmal.\",\"error.assistant_daily\":\"Betrachter können {limit} Fragen pro Tag stellen. Frag morgen wieder.\",\"error.assistant_limit\":\"Verwende eine ganze Zahl von 0 bis 1.000.\",\"error.token_unset\":\"Setze RUNLIGHT_TOKEN oder übergib token oder authorize an routes(). Ohne das ist Runlight nur offen, wenn NODE_ENV development ist.\",\"error.unauthorized\":\"Melde dich an oder sende ein Token, um das zu sehen.\",\"error.sign_in\":\"Melde dich zuerst an.\",\"error.unknown_site\":\"Diese Website gibt es hier nicht.\",\"error.filters_max\":\"Verwende höchstens {max} Filter gleichzeitig.\",\"error.filter_bad\":\"Runlight kann den Filter „{filter}“ nicht lesen.\",\"error.range_bad\":\"Diese Daten sind kein Zeitraum, den Runlight lesen kann.\",\"error.compare_bad\":\"Runlight kennt den Vergleich „{compare}“ nicht.\",\"error.compare_range_bad\":\"Wähle beide Daten für den Vergleich.\",\"error.send_json\":\"Sende das als JSON.\",\"error.send_object\":\"Sende ein JSON-Objekt.\",\"error.unknown_domain\":\"Diese Domain gehört nicht zu dieser Website.\",\"error.rows_needed\":\"Sende die Links als Liste von Zeilen.\",\"error.unknown_link\":\"Diesen Link gibt es nicht mehr.\",\"error.not_found\":\"Das gibt es hier nicht.\",\"error.unknown_goal\":\"Dieses Ziel gibt es nicht mehr.\",\"error.goal_invalid\":\"Das Ziel wurde nicht gespeichert ({detail}).\",\"error.funnel_invalid\":\"Der Trichter wurde nicht gespeichert ({detail}).\",\"error.import_failed\":\"Der Import wurde angehalten ({detail}).\",\"error.assistant_failed\":\"Der KI-Dienst hat nicht wie erwartet geantwortet ({detail}).\",\"error.assistant_invalid\":\"Der Assistent wurde nicht gespeichert ({detail}).\",\"error.site_invalid\":\"Die Website wurde nicht gespeichert ({detail}).\",\"error.connect_failed\":\"Das Verbinden hat nicht begonnen ({detail}).\",\"error.method_not_allowed\":\"Das geht hier nicht.\",\"error.unknown_report\":\"Diesen Bericht gibt es nicht mehr.\",\"error.unknown_share\":\"Diesen Freigabelink gibt es nicht mehr.\",\"error.token_name\":\"Gib dem Token einen Namen.\",\"error.token_site\":\"Ein Token, das Einstellungen ändert, gilt für eine Website. Wähle die Website.\",\"error.unknown_token\":\"Dieses Token gibt es nicht mehr.\",\"error.sites_in_code\":\"Die Websites sind hier im Code festgelegt und werden dort geändert.\",\"error.connect_url\":\"Gib die Adresse der Installation ein, etwa https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} hat nicht wie eine Runlight-Installation geantwortet.\",\"error.connect_endpoints\":\"{url} hat Endpunkte unter einer anderen Adresse genannt.\",\"error.connect_old\":\"{url} nutzt ein älteres Runlight. Aktualisiere es oder verbinde es mit einem API-Token aus seinen Einstellungen.\",\"error.connect_register\":\"{url} hat diesen Server nicht verbinden lassen. {reason}\",\"error.connect_expired\":\"Die Verbindung hat zu lange gedauert oder wurde schon verwendet. Fang noch einmal an.\",\"error.connect_denied\":\"Die Verbindung wurde nicht erlaubt.\",\"error.connect_refused\":\"Die Installation hat diesen Server nicht verbinden lassen. Fang noch einmal an oder verbinde sie mit einem API-Token.\",\"error.connect_token\":\"Die Installation hat diesem Server kein Token gegeben. Fang noch einmal an.\",\"error.connect_again\":\"Verbinde diese Website erneut, um sie von hier aus zu ändern.\",\"error.hub_domains\":\"Ein verbundener Hub kann die Domains einer Website nicht ändern.\",\"error.observe_many\":\"Sende höchstens 500 Abrufe auf einmal.\",\"error.observe_url\":\"Sende die Adresse der Seite.\",\"error.site_remote\":\"Diese Website wird von ihrem eigenen Runlight gezählt. Verbinde sie in ihren Einstellungen erneut, um sie von hier aus zu ändern.\",\"error.unknown_funnel\":\"Diesen Trichter gibt es nicht mehr.\",\"error.assistant_dashboard\":\"Nur das Dashboard kann den Assistenten nutzen.\",\"error.share_not_available\":\"Das ist auf einem geteilten Dashboard nicht verfügbar.\",\"error.assistant_unset\":\"Der Assistent ist noch nicht eingerichtet. Ein Eigentümer kann das unter Einstellungen, KI-Assistent tun.\",\"error.question_needed\":\"Stell eine Frage.\",\"error.site_name\":\"Ein Website-Name hat 1 bis 80 Zeichen.\",\"error.unknown_timezone\":\"Runlight kennt die Zeitzone „{timezone}“ nicht.\",\"error.retention_bad\":\"Behalte Besuche {months} Monate lang oder für immer.\",\"error.share_gone\":\"Dieser Freigabelink funktioniert nicht mehr.\",\"error.token_read_only\":\"API-Tokens können nur lesen.\",\"error.icon_none\":\"Diese Website hat kein Symbol.\",\"error.event_needed\":\"Nenne das Ereignis.\",\"error.property_bad\":\"Runlight kann diesen Eigenschaftsnamen nicht lesen.\",\"error.unknown_dimension\":\"Runlight kennt die Aufschlüsselung „{dimension}“ nicht.\",\"error.internal\":\"Auf dem Server ist etwas schiefgegangen. Versuch es noch einmal.\",\"filter.max\":\"Es gelten höchstens {max} Filter gleichzeitig. Entferne einen, um einen weiteren hinzuzufügen.\",\"error.sample_soon_hub\":\"Ein verbundener Hub kann alle zehn Minuten ein Beispiel senden. Warte ein paar Minuten und versuch es noch einmal.\",\"people.demoteSelf\":\"Nur der Eigentümer oder ein Admin kann das rückgängig machen.\",\"people.demoteConfirm\":\"Zu {role} wechseln\",\"error.check_not_public\":\"es ist kein öffentlicher Domainname\",\"error.check_timeout\":\"die Antwort hat zu lange gedauert\",\"error.check_https\":\"er ist über HTTPS nicht erreichbar\",\"error.check_not_runlight\":\"etwas hat geantwortet, aber nicht Runlight\",\"error.check_status\":\"er hat mit {status} geantwortet\",\"error.assistant_address\":\"Gib die Adresse des Dienstes unter Einstellungen, KI-Assistent ein.\",\"error.assistant_address_bad\":\"Gib die Adresse des Dienstes ein, beginnend mit https://\",\"error.assistant_cancelled\":\"Die Frage wurde abgebrochen.\",\"error.assistant_key\":\"Gib deinen {provider}-Schlüssel ein.\",\"error.assistant_model\":\"Gib ein Modell unter Einstellungen, KI-Assistent ein.\",\"error.assistant_no_models\":\"{host} hat keine Modelle aufgeführt. Gib stattdessen den Namen des Modells ein.\",\"error.assistant_provider\":\"Wähle einen KI-Dienst unter Einstellungen, KI-Assistent.\",\"error.assistant_refused\":\"{host} hat die Anfrage abgelehnt ({detail}).\",\"error.assistant_slow\":\"Die Antwort auf diese Frage hat zu lange gedauert. Frag etwas Engeres.\",\"error.assistant_status\":\"{host} hat mit {status} geantwortet.\",\"error.assistant_steps\":\"Der Assistent brauchte für diese Frage zu viele Schritte. Frag etwas Engeres.\",\"error.assistant_timeout\":\"{host} hat zu lange für die Antwort gebraucht.\",\"error.funnel_exists\":\"Es gibt schon einen Trichter namens „{name}“.\",\"error.funnel_long\":\"Ein Trichter hat höchstens acht Schritte.\",\"error.funnel_name\":\"Gib dem Trichter einen Namen.\",\"error.funnel_page_bad\":\"„{match}“ ist weder ein Pfad noch eine URL.\",\"error.funnel_short\":\"Ein Trichter braucht mindestens zwei Schritte.\",\"error.goal_amount\":\"Gib einen Betrag ein, etwa 49 oder 9,99.\",\"error.goal_click_taken\":\"Das Klickziel „{match}“ sendet schon Ereignisse mit diesem Namen.\",\"error.goal_currency\":\"Verwende einen dreibuchstabigen Währungscode wie USD oder EUR.\",\"error.goal_event\":\"Gib den Namen des Ereignisses ein.\",\"error.goal_event_taken\":\"Ein Ereignisziel zählt schon Ereignisse namens „{name}“, gib diesem Klickziel also einen anderen Namen.\",\"error.goal_exists\":\"Es gibt schon ein Ziel namens „{name}“.\",\"error.goal_kind\":\"Wähle, was das Ziel zählt, ein Ereignis, einen Seitenbesuch oder einen Klick.\",\"error.goal_link\":\"Gib die Adresse des Links ein, etwa https://buy.stripe.com/*\",\"error.goal_name\":\"Gib dem Ziel einen Namen.\",\"error.goal_page\":\"Gib einen Seitenpfad ein, etwa /danke oder /blog/*\",\"error.goal_page_bad\":\"Diese Seite ist weder ein Pfad noch eine URL.\",\"error.goal_prop_kind\":\"Nur ein Ereignisziel kann seinen Betrag aus dem Ereignis nehmen. Verwende stattdessen einen festen Betrag.\",\"error.goal_prop_name\":\"Ein Eigenschaftsname besteht aus Buchstaben, Ziffern, Punkten, Bindestrichen und Unterstrichen.\",\"error.goal_selector\":\"Gib einen CSS-Selektor ein, etwa #signup oder .buy-button\",\"error.import_day_full\":\"Ein Tag hat mehr als {limit} Ereignisse, mehr als ein Importschritt lesen kann.\",\"error.import_key\":\"Gib deinen {service}-Schlüssel ein.\",\"error.import_refused\":\"Der Schlüssel oder die Anmeldung wurde abgelehnt.\",\"error.import_slug_bad\":\"/{slug} enthält Zeichen, die ein Runlight-Slug nicht verwenden kann.\",\"error.import_slug_taken\":\"/{slug} wird schon von „{name}“ verwendet.\",\"error.import_source\":\"Runlight kann nicht aus {source} importieren.\",\"error.import_status\":\"{host} hat mit {status} geantwortet.\",\"error.import_umami_address\":\"Gib die Adresse deines Umami ein, etwa https://stats.example.com\",\"error.import_umami_login\":\"Gib einen API-Schlüssel oder einen Benutzernamen und ein Passwort ein.\",\"error.import_website\":\"Wähle die Umami-Website, die importiert werden soll.\",\"error.import_csv_batch\":\"Sende höchstens {max} Zeilen auf einmal.\",\"error.import_csv_format\":\"Diese Datei ist weder ein Umami-Export noch im Besuchsformat von Runlight. Prüfe ihre Kopfzeile.\",\"error.install_refused\":\"Diese Installation hat das Token abgelehnt.\",\"error.install_token\":\"Gib ein API-Token dieser Installation ein.\",\"error.site_domain_invalid\":\"„{host}“ ist kein Domainname.\",\"error.site_domain_needed\":\"Füge die Domain der Website hinzu, etwa example.com\",\"error.site_domain_taken\":\"{host} gehört schon zu {site}.\",\"share.goneTitle\":\"Dieser Freigabelink funktioniert nicht mehr\",\"error.token_manage_only\":\"Ein Verwaltungs-Token ändert nur die Einstellungen seiner eigenen Website.\",\"empty.pages.title\":\"Deine meistbesuchten Seiten erscheinen hier\",\"empty.pages.hint\":\"Jede geöffnete Seite wird aufgeführt, mit der Zeit, die Besucher dort verbringen.\",\"empty.sources.title\":\"Deine Besucherquellen erscheinen hier\",\"empty.sources.hint\":\"Die Suchen und Websites, die dir Besucher schicken, werden mit Namen aufgeführt.\",\"empty.locations.title\":\"Die Orte deiner Besucher erscheinen hier\",\"empty.locations.hint\":\"Sieh, aus welchen Ländern und Städten deine Besucher kommen.\",\"empty.rhythm.title\":\"Deine stärksten Zeiten erscheinen hier\",\"empty.rhythm.hint\":\"Jede Stunde der Woche füllt sich, sobald Besuche kommen.\",\"empty.ai.title\":\"KI-Agenten, die deine Website lesen, erscheinen hier\",\"empty.ai.hint\":\"Assistenten wie ChatGPT und Claude werden aufgeführt, wenn sie deine Seiten abrufen.\",\"empty.devices.title\":\"Die Geräte deiner Besucher erscheinen hier\",\"empty.devices.hint\":\"Sieh, welche Browser und Bildschirme deine Besucher nutzen.\",\"empty.events.title\":\"Deine Ereignisse erscheinen hier\",\"empty.events.hint\":\"Klicks auf ausgehende Links und die Ereignisse, die du sendest, werden sofort gezählt.\",\"empty.campaigns.title\":\"Deine Kampagnen erscheinen hier\",\"empty.campaigns.hint\":\"Besuche über Links mit UTM-Tags werden nach Kampagne, Quelle und Medium gruppiert.\",\"empty.links.title\":\"Deine Kurzlinks erscheinen hier\",\"empty.links.hint\":\"Erstelle einen Kurzlink zum Teilen, und jeder Klick darauf wird gezählt.\",\"sites.refused\":\"{host} akzeptiert die Verbindung dieses Servers nicht mehr, daher lassen sich die Zahlen nicht lesen. Verbinde es erneut, um das zu beheben.\",\"sites.connected\":\"Mit {host} verbunden.\",\"links.totalTip\":\"Alle Klicks auf deine Kurzlinks im gewählten Zeitraum\",\"links.setup\":\"So richtest du sie ein\",\"links.recordType\":\"Typ\",\"links.recordName\":\"Name\",\"links.recordValue\":\"Wert\",\"links.doDns\":\"Lege diesen Eintrag bei deinem DNS-Anbieter an.\",\"links.doDnsAlias\":\"Lege diesen Eintrag bei deinem DNS-Anbieter an. Gibt es dort kein ALIAS, nimm einen A-Eintrag auf die IP-Adresse deines Servers.\",\"links.doHttps\":\"Lass deinen Host {domain} per HTTPS ausliefern.\",\"links.doCheck\":\"Prüfe erneut. Ein neuer Eintrag kann ein paar Minuten brauchen.\",\"links.localNote\":\"Dieses Dashboard läuft unter {host}, daher funktioniert der Eintrag erst mit einer öffentlichen Adresse.\",\"links.guide\":\"Anleitung\",\"funnels.emptyTitle\":\"Deine Funnels erscheinen hier\",\"share.emptyTitle\":\"Deine Freigabelinks erscheinen hier\",\"tokens.emptyTitle\":\"Deine Tokens erscheinen hier\",\"reports.emptyTitle\":\"Deine E-Mail-Berichte erscheinen hier\",\"journeys.emptyTitle\":\"Die Wege der Besucher erscheinen hier\",\"props.emptyTitle\":\"Die Details dieses Events erscheinen hier\",\"empty.mini\":\"Diese Liste füllt sich mit jedem Besuch.\",\"empty.search\":\"Hier passt noch nichts zu „{q}“, versuch ein anderes Wort.\",\"delta.fromNone\":\"von 0\",\"people.admin\":\"Admin\",\"people.member\":\"Mitglied\",\"people.handOver\":\"Zum Eigentümer machen\",\"people.handOverHint\":\"Übergibt das Eigentum an diesen Admin, und du wirst Admin\",\"people.handOverConfirm\":\"Übergeben\",\"people.demotedMember\":\"Du bist jetzt Mitglied, deshalb sind Personen und die Einstellungen der ganzen Installation für dich geschlossen. Der Eigentümer oder ein Admin kann das rückgängig machen.\",\"account.admin\":\"Du bist Admin und kannst daher alles ändern und Personen verwalten, außer den Eigentümer.\",\"account.member\":\"Du bist Mitglied und kannst daher die Einstellungen jeder Website ändern. Der Eigentümer und die Admins verwalten Personen und die Einstellungen der ganzen Installation.\",\"mail.adminOnly\":\"Es ist noch kein E-Mail-Dienst eingerichtet. Der Eigentümer oder ein Admin kann hier einen einrichten.\",\"error.admin_only\":\"Nur der Eigentümer oder ein Admin kann das ändern.\",\"error.owner_protected\":\"Niemand außer dem Eigentümer kann den Eigentümer ändern oder entfernen.\",\"error.owner_hand_over\":\"Nur der Eigentümer kann das Eigentum übergeben.\",\"error.owner_needs_admin\":\"Mach die Person zuerst zum Admin.\",\"embed.goneTitle\":\"Dieser Dashboard-Link funktioniert nicht\",\"embed.gone\":\"Öffne das Dashboard erneut aus dem Adminbereich deiner Website.\",\"embed.expiredTitle\":\"Diese Ansicht ist abgelaufen\",\"embed.expired\":\"Das Dashboard in deinem Adminbereich bleibt jeweils eine Stunde lang offen. Lade die Seite neu, um es wieder zu öffnen.\",\"embed.reload\":\"Seite neu laden\",\"embedKey.title\":\"Schlüssel für das Dashboard in deinem CMS\",\"embedKey.intro\":\"Mit diesem Schlüssel in ihren Einstellungen zeigen die Plugins für WordPress, Drupal und Craft das Dashboard dieser Website in deinem Adminbereich. Er öffnet die schreibgeschützte Ansicht, die auch ein geteilter Link zeigt, und kann selbst nichts lesen. Lösche ihn unter Einstellungen, API und KI, um ihn sofort zu stoppen.\",\"embedKey.make\":\"Schlüssel erstellen\",\"embedKey.another\":\"Weiteren Schlüssel erstellen\",\"embedKey.name\":\"Dashboard in einem CMS\",\"tokens.embeds\":\"Öffnet das Dashboard in einem CMS\",\"error.embed_expired\":\"Dieses Dashboard ist abgelaufen. Lade die Seite neu, um es wieder zu öffnen.\",\"error.embed_site\":\"Ein Schlüssel für das Dashboard in einem CMS gilt für eine Website. Wähle die Website aus.\"}",
|
|
4
|
-
"es": "{\"app.site\":\"Sitio\",\"app.confirmDelete\":\"¿Eliminar {name}?\",\"app.signedOut\":\"Abre esta página una vez con {token} seguido de tu {env} para iniciar sesión.\",\"app.live.title\":\"Visitantes en los últimos cinco minutos\",\"app.live_one\":\"{n} ahora mismo\",\"app.live_other\":\"{n} ahora mismo\",\"headline.who_one\":\"{n} persona\",\"headline.who_other\":\"{n} personas\",\"headline.visited_one\":\"visitó el sitio\",\"headline.visited_other\":\"visitaron el sitio\",\"headline.matched_one\":\"coincide con estos filtros\",\"headline.matched_other\":\"coinciden con estos filtros\",\"headline.plain\":\"{who} {verb} {when}.\",\"headline.up\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.down\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.same\":\"{who} {verb} {when}, igual que {against}.\",\"headline.more\":\"un {pct} % más\",\"headline.fewer\":\"un {pct} % menos\",\"headline.lastYear\":\"los mismos días del año pasado\",\"when.today\":\"hoy\",\"when.yesterday\":\"ayer\",\"when.7d\":\"en los últimos 7 días\",\"when.30d\":\"en los últimos 30 días\",\"when.90d\":\"en los últimos 90 días\",\"when.month\":\"este mes\",\"when.last_month\":\"el mes pasado\",\"when.year\":\"este año\",\"when.12mo\":\"en los últimos 12 meses\",\"when.all\":\"desde que empezó el seguimiento\",\"when.range\":\"del {range}\",\"when.day\":\"el {day}\",\"before.today\":\"ayer\",\"before.yesterday\":\"el día anterior\",\"before.7d\":\"los 7 días anteriores\",\"before.30d\":\"los 30 días anteriores\",\"before.90d\":\"los 90 días anteriores\",\"before.month\":\"el mismo tramo anterior\",\"before.last_month\":\"el mes anterior\",\"before.year\":\"el mismo tramo anterior\",\"before.12mo\":\"los 12 meses anteriores\",\"before.all\":\"el tramo anterior\",\"before.range\":\"el mismo tramo anterior\",\"period.today\":\"Hoy\",\"period.yesterday\":\"Ayer\",\"period.7d\":\"Últimos 7 días\",\"period.30d\":\"Últimos 30 días\",\"period.90d\":\"Últimos 90 días\",\"period.month\":\"Este mes\",\"period.last_month\":\"El mes pasado\",\"period.year\":\"Este año\",\"period.12mo\":\"Últimos 12 meses\",\"period.all\":\"Todo el tiempo\",\"compare.title\":\"Comparar con\",\"compare.vs\":\"vs\",\"compare.previous\":\"Periodo anterior\",\"compare.year\":\"Mismo periodo del año pasado\",\"compare.custom\":\"Rango personalizado\",\"compare.off\":\"Sin comparación\",\"compare.apply\":\"Comparar\",\"compare.dialog\":\"Comparar con\",\"calendar.dialog\":\"Elegir fechas\",\"calendar.earlier\":\"Meses anteriores\",\"calendar.later\":\"Meses siguientes\",\"calendar.pick\":\"Elige un día de inicio y uno de fin\",\"calendar.range\":\"{from} al {to}\",\"calendar.open\":\"{from} al ...\",\"calendar.apply\":\"Aplicar\",\"common.cancel\":\"Cancelar\",\"common.close\":\"Cerrar\",\"common.clearAll\":\"Borrar todo\",\"common.loading\":\"Cargando\",\"common.search\":\"Buscar\",\"common.none\":\"(ninguno)\",\"metric.visitors\":\"Visitantes\",\"metric.visits\":\"Visitas\",\"metric.pageviews\":\"Páginas vistas\",\"metric.viewsPerVisit\":\"Páginas por visita\",\"metric.bounceRate\":\"Tasa de rebote\",\"metric.visitDuration\":\"Duración de la visita\",\"hint.visitors\":\"Personas distintas, contadas una vez al día\",\"hint.visits\":\"Sesiones: una visita termina tras 30 minutos sin actividad\",\"hint.pageviews\":\"Cada página cargada, incluidas las repeticiones\",\"hint.viewsPerVisit\":\"Páginas vistas divididas entre visitas\",\"hint.bounceRate\":\"Una visita de una sola página vista, sin eventos, que dura menos de diez segundos\",\"hint.visitDuration\":\"Tiempo medio por visita con la página visible y activa\",\"delta.title\":\"Frente al periodo de comparación\",\"delta.none\":\"sin cambios\",\"chart.label\":\"{metrics} a lo largo del tiempo\",\"chart.scaled\":\"Cada línea usa su propia escala. Pasa el cursor para ver los valores.\",\"chart.pick\":\"Haz clic en las tarjetas para añadirlas al gráfico.\",\"chart.dashed\":\"Discontinua: {range}.\",\"chart.then\":\"antes: {when}\",\"panel.pages\":\"Páginas\",\"panel.sources\":\"Fuentes\",\"panel.locations\":\"Ubicaciones\",\"panel.rhythm\":\"Cuándo visita la gente\",\"panel.ai\":\"Agentes de IA\",\"panel.devices\":\"Dispositivos\",\"panel.events\":\"Eventos\",\"panel.campaigns\":\"Campañas\",\"panel.views\":\"Vistas de {title}\",\"panel.empty\":\"Nada en este periodo\",\"panel.more\":\"Ver todo\",\"panel.filterBy\":\"Filtrar por {name}\",\"panel.showMap\":\"Ver un mapa\",\"panel.showList\":\"Ver la lista\",\"panel.fullMap\":\"Mapa a pantalla completa\",\"tab.top\":\"Más vistas\",\"tab.entry\":\"Entrada\",\"tab.exit\":\"Salida\",\"tab.channels\":\"Canales\",\"tab.sources\":\"Fuentes\",\"tab.referrers\":\"Referentes\",\"tab.countries\":\"Países\",\"tab.regions\":\"Regiones\",\"tab.cities\":\"Ciudades\",\"tab.agents\":\"Agentes\",\"tab.pages\":\"Páginas\",\"tab.device\":\"Dispositivo\",\"tab.browser\":\"Navegador\",\"tab.os\":\"Sistema\",\"tab.screen\":\"Pantalla\",\"tab.language\":\"Idioma\",\"tab.event\":\"Evento\",\"tab.campaign\":\"Campaña\",\"tab.source\":\"Fuente\",\"tab.medium\":\"Medio\",\"tab.content\":\"Contenido\",\"tab.term\":\"Término\",\"column.visitors\":\"visitantes\",\"column.fetches\":\"accesos\",\"column.events\":\"eventos\",\"column.time\":\"tiempo\",\"column.bounce\":\"rebote\",\"channel.Direct\":\"Directo\",\"channel.Organic Search\":\"Búsqueda orgánica\",\"channel.Paid Search\":\"Búsqueda de pago\",\"channel.Social\":\"Redes sociales\",\"channel.Email\":\"Correo\",\"channel.AI\":\"IA\",\"channel.Referral\":\"Referencias\",\"channel.Campaign\":\"Campaña\",\"device.desktop\":\"Escritorio\",\"device.mobile\":\"Móvil\",\"device.tablet\":\"Tableta\",\"ai.live\":\"Lecturas en directo\",\"ai.crawl\":\"Rastreos\",\"rhythm.busiest\":\"Pico: {when}\",\"rhythm.table\":\"Visitas por día de la semana y hora\",\"rhythm.cell_one\":\"{when}: {n} visita\",\"rhythm.cell_other\":\"{when}: {n} visitas\",\"scale.fewer\":\"Menos\",\"scale.more\":\"Más\",\"map.failed\":\"No se pudo cargar el mapa\",\"map.label\":\"Visitantes por país: {top}\",\"map.visitors_one\":\"{n} visitante\",\"map.visitors_other\":\"{n} visitantes\",\"map.none\":\"Sin visitantes\",\"map.title\":\"En todo el mundo\",\"filter.button\":\"Filtrar\",\"filter.remove\":\"Quitar filtro\",\"filter.title\":\"Mostrar visitas\",\"filter.where\":\"donde\",\"filter.and\":\"y\",\"filter.field\":\"Campo\",\"filter.match\":\"Condición\",\"filter.is\":\"es\",\"filter.not\":\"no es\",\"filter.contains\":\"contiene\",\"filter.value\":\"Valor\",\"filter.placeholder\":\"Escribe un valor o elige uno abajo\",\"filter.placeholderContains\":\"Cualquier parte del valor\",\"filter.removeCondition\":\"Quitar esta condición\",\"filter.add\":\"+ Añadir una condición\",\"filter.note\":\"Se tienen que cumplir todas las condiciones. Haz clic en cualquier fila del panel para añadir una sin abrir esto.\",\"filter.apply_one\":\"Aplicar {n} condición\",\"filter.apply_other\":\"Aplicar {n} condiciones\",\"filter.everything\":\"Mostrar todo\",\"group.pages\":\"Páginas\",\"group.sources\":\"Fuentes\",\"group.location\":\"Ubicación\",\"group.device\":\"Dispositivo\",\"group.behaviour\":\"Comportamiento\",\"field.page\":\"Página\",\"field.entry\":\"Página de entrada\",\"field.exit\":\"Página de salida\",\"field.hostname\":\"Nombre de host\",\"field.channel\":\"Canal\",\"field.source\":\"Fuente\",\"field.referrer\":\"Referente\",\"field.utm_campaign\":\"Campaña\",\"field.utm_source\":\"Fuente UTM\",\"field.utm_medium\":\"Medio UTM\",\"field.utm_content\":\"Contenido UTM\",\"field.utm_term\":\"Término UTM\",\"field.country\":\"País\",\"field.region\":\"Región\",\"field.city\":\"Ciudad\",\"field.device\":\"Dispositivo\",\"field.browser\":\"Navegador\",\"field.browser_version\":\"Versión del navegador\",\"field.os\":\"Sistema\",\"field.os_version\":\"Versión del sistema\",\"field.screen\":\"Pantalla\",\"field.language\":\"Idioma\",\"field.event\":\"Evento\",\"foot.powered\":\"Funciona con {name}\",\"foot.language\":\"Idioma\",\"theme.light\":\"Tema claro\",\"theme.dark\":\"Tema oscuro\",\"column.visits\":\"visitas\",\"column.pageviews\":\"páginas vistas\",\"column.scroll\":\"desplazamiento\",\"column.duration\":\"duración\",\"column.share\":\"cuota\",\"rhythm.typical\":\"{x}× una hora típica\",\"rhythm.quiet\":\"Sin visitas en esta hora\",\"app.home\":\"Volver al resumen\",\"settings.open\":\"Ajustes\",\"settings.title\":\"Ajustes\",\"settings.general\":\"General\",\"settings.install\":\"Instalación\",\"settings.siteName\":\"Nombre del sitio\",\"settings.timezone\":\"Zona horaria\",\"settings.timezoneHint\":\"Los días de tus informes empiezan a medianoche aquí.\",\"settings.save\":\"Guardar\",\"settings.saving\":\"Guardando\",\"settings.saved\":\"Guardado\",\"settings.language\":\"Idioma\",\"settings.languageHint\":\"Solo para este navegador.\",\"settings.theme\":\"Tema\",\"settings.themeSystem\":\"Ajuste del dispositivo\",\"settings.themeLight\":\"Claro\",\"settings.themeDark\":\"Oscuro\",\"install.live\":\"Están llegando visitas. La última fue {when}.\",\"install.none\":\"Aún no hay visitas. Añade el script de abajo y abre una página de tu sitio.\",\"install.script\":\"Añade esto a cada página, justo antes de {tag}.\",\"install.copy\":\"Copiar\",\"install.copied\":\"Copiado\",\"install.events\":\"Los clics en cualquier elemento se cuentan sin JavaScript.\",\"install.eventsJs\":\"También puedes enviar eventos desde JavaScript, para lo que no son clics.\",\"install.agents\":\"Para ver agentes de IA como ChatGPT y Claude leyendo tus páginas, pasa cada petición a Runlight en tu middleware con el código de abajo.\",\"install.ignore\":\"Tus propias visitas\",\"install.ignored\":\"Tus visitas desde este navegador no se cuentan.\",\"install.counted\":\"Tus visitas desde este navegador se cuentan.\",\"install.ignoreButton\":\"Ignorar este navegador\",\"install.trackButton\":\"Volver a contar este navegador\",\"install.ignoreElsewhere\":\"¿El panel está en otro dominio que el sitio? Abre {link} una vez en cada navegador que uses.\",\"theme.system\":\"Ajuste del dispositivo\",\"theme.cycle\":\"Tema: {current}. Haz clic para {next}.\",\"panel.links\":\"Enlaces\",\"links.new\":\"Nuevo enlace\",\"links.manage\":\"Gestionar\",\"links.clicks\":\"clics\",\"links.url\":\"URL de destino\",\"links.urlPlaceholder\":\"https://ejemplo.com/una/direccion/larga\",\"links.name\":\"Nombre\",\"links.namePlaceholder\":\"Opcional, para ti\",\"links.slug\":\"Identificador\",\"links.slugPlaceholder\":\"Déjalo vacío para uno al azar\",\"links.domain\":\"Dominio\",\"links.create\":\"Crear enlace\",\"links.save\":\"Guardar cambios\",\"links.created\":\"Tu enlace corto está listo.\",\"links.another\":\"Crear otro\",\"links.edit\":\"Editar enlace\",\"links.delete\":\"Eliminar\",\"links.confirmDelete\":\"¿Eliminar {name}? Sus clics se quedan en tus estadísticas.\",\"links.copy\":\"Copiar\",\"links.copied\":\"Copiado\",\"links.search\":\"Buscar enlaces\",\"links.sortClicks\":\"Más clics\",\"links.sortNewest\":\"Más recientes\",\"links.sortName\":\"Nombre\",\"links.import\":\"Importar CSV\",\"links.importDone_one\":\"{n} enlace importado.\",\"links.importDone_other\":\"{n} enlaces importados.\",\"links.importFailed\":\"Fila {row}: {reason}\",\"links.importHelp\":\"Usa las columnas name y url, y también slug y domain si las tienes.\",\"links.destination\":\"Lleva a\",\"links.clicksOverTime\":\"Clics a lo largo del tiempo\",\"links.sources\":\"Fuentes\",\"links.countries\":\"Países\",\"links.devices\":\"Dispositivos\",\"links.browsers\":\"Navegadores\",\"links.total_one\":\"{n} clic\",\"links.total_other\":\"{n} clics\",\"links.domains\":\"Dominios para enlaces cortos\",\"links.domainsHelp\":\"Usa un dominio o subdominio tuyo para los enlaces cortos, como t.ejemplo.com. Sus enlaces viven en la raíz: t.ejemplo.com/rebajas.\",\"links.addDomain\":\"Añadir dominio\",\"links.domainPlaceholder\":\"t.ejemplo.com\",\"links.ownDomain\":\"Este sitio ({prefix})\",\"links.removeDomain\":\"Quitar\",\"settings.links\":\"Dominios personalizados\",\"links.confirm\":\"Confirmar\",\"links.editButton\":\"Editar\",\"links.step1\":\"En tu proveedor de DNS, añade un registro CNAME para el subdominio que apunte a {host}, donde funciona este panel. Para un dominio sin subdominio, usa un registro A o ALIAS al mismo servidor.\",\"links.step2\":\"Haz que tu hosting acepte el dominio con HTTPS: añádelo a los dominios de tu proyecto en Vercel o Netlify, o a la configuración y el certificado de tu servidor. Si Runlight funciona dentro de tu aplicación, pasa las peticiones a rl.linkDomainResponse() en tu middleware.\",\"links.step3\":\"Añade el dominio abajo. Runlight comprueba después que llega a este panel.\",\"links.checking\":\"Comprobando\",\"links.working\":\"Funciona\",\"links.notWorking\":\"Aún no llega a Runlight: {reason}\",\"links.recheck\":\"Comprobar de nuevo\",\"links.sortBy\":\"Ordenar enlaces\",\"links.removeNote\":\"Quitar un dominio conserva sus enlaces, clics y estadísticas: pasan a {fallback} hasta que vuelvas a añadir el dominio, y entonces regresan a él.\",\"links.removedDomain\":\"{domain}/ (quitado)\",\"prompt.copy\":\"Copiar prompt\",\"prompt.domainHint\":\"Copia estos pasos, con tus direcciones ya puestas, y pégaselos.\",\"prompt.installHint\":\"Copia los pasos de instalación y pégaselos.\",\"links.showing\":\"Mostrando {shown} de {total}\",\"links.showMore\":\"Mostrar {n} más\",\"links.clicksLabel\":\"Clics\",\"links.createdOn\":\"Creado el {date}\",\"settings.import\":\"Importar\",\"import.intro\":\"Trae tus enlaces cortos desde otro servicio, con su historial de clics cuando el servicio lo comparte. Tu clave o contraseña solo se usa para esta importación y nunca se guarda. Importar de nuevo omite los enlaces que ya están.\",\"import.source\":\"Importar desde\",\"import.csv\":\"Cualquier CSV\",\"import.url\":\"Dirección de Umami\",\"import.apiKey\":\"Clave de API\",\"import.username\":\"Usuario\",\"import.password\":\"Contraseña\",\"import.signIn\":\"Entrar con\",\"import.withKey\":\"Clave de API\",\"import.withPassword\":\"Usuario y contraseña\",\"import.start\":\"Empezar a importar\",\"import.stop\":\"Detener\",\"import.running\":\"Importando {done} de {total} enlaces\",\"import.done\":\"Listo: {links} enlaces y {clicks} clics importados, {skipped} ya estaban.\",\"import.stopped\":\"Detenido tras {done} de {total} enlaces. Vuelve a empezar para continuar; los enlaces ya importados se omiten.\",\"import.failed\":\"Estos no se pudieron importar.\",\"import.history.full\":\"Esto importa cada clic, con su país, dispositivo, navegador y referente.\",\"import.history.daily\":\"Esto importa los clics por día, sin país ni dispositivo.\",\"import.history.none\":\"Solo enlaces: el servicio no comparte clics con fecha.\",\"import.umamiHelp\":\"En Umami, crea una clave de API en Ajustes, Claves de API. Umami autoalojado estándar no tiene claves de API, así que entra con tu usuario y contraseña. Cualquiera de los dos se usa solo para esta importación y nunca se guarda.\",\"import.csvHelp\":\"Usa las columnas name y url, y también slug y domain si las tienes.\",\"import.chooseFile\":\"Elegir un archivo CSV\",\"import.token\":\"Token de acceso\",\"import.workspace\":\"Id del espacio de trabajo (opcional)\",\"import.dubHelp\":\"En Dub, crea una clave de API en Settings, API Keys, con lectura de enlaces y analíticas. Cada clic se importa con el plan Business, los totales diarios con Pro, solo enlaces con Free.\",\"import.bitlyHelp\":\"En Bitly, ve a Settings, API, escribe tu contraseña y genera un token. Bitly solo guarda totales diarios, tan atrás como permita tu plan (nada en Free).\",\"import.shortioHelp\":\"En Short.io, abre Integrations and API y crea una clave secreta (una clave pública no puede leer enlaces). Short.io permite 60 peticiones de estadísticas por minuto, así que esta importación va a su ritmo.\",\"import.rebrandlyHelp\":\"En Rebrandly, crea una clave de API en Settings, API keys. Rebrandly solo comparte el total de clics, así que los enlaces llegan sin historial.\",\"import.soFar_one\":\"{n} enlace importado hasta ahora\",\"import.soFar_other\":\"{n} enlaces importados hasta ahora\",\"import.moveNote\":\"Los enlaces en el dominio del servicio (bit.ly, dub.sh, rebrand.ly, short.gy) pasan a {fallback} con el mismo identificador; los dominios propios se añaden en Dominios personalizados.\",\"prompt.title\":\"¿Usas un asistente de código?\",\"compare.allTime\":\"No hay nada antes de todo el tiempo con qué comparar.\",\"view.reset\":\"Restablecer\",\"view.resetHint\":\"Volver a los últimos 30 días, sin filtros ni comparación\",\"settings.sharing\":\"Compartir\",\"share.intro\":\"Un enlace para compartir muestra las estadísticas de este sitio a quien lo tenga, sin iniciar sesión: las cifras, las páginas, las fuentes y los lugares. Nunca muestra tus enlaces cortos, tus ajustes ni la dirección del sitio.\",\"share.namePlaceholder\":\"Para quién es, como un cliente o tu equipo\",\"share.create\":\"Crear enlace para compartir\",\"share.empty\":\"Crea uno abajo y envíalo a quien deba ver estas estadísticas.\",\"share.unnamed\":\"Sin título\",\"share.open\":\"Abrir\",\"share.rename\":\"Renombrar\",\"share.save\":\"Guardar\",\"share.revokeNote\":\"Borrar un enlace para compartir lo desactiva al instante. Quien lo tenía verá una página que lo indica.\",\"share.gone\":\"Quien lo compartió lo ha desactivado. Pídele un enlace nuevo.\",\"live.title\":\"Ahora mismo\",\"live.sub\":\"Se actualiza cada 10 segundos\",\"live.now_one\":\"{n} persona en el sitio\",\"live.now_other\":\"{n} personas en el sitio\",\"live.nowHint\":\"Quien vio una página o hizo algo en los últimos 5 minutos.\",\"live.total_one\":\"{n} página vista en los últimos 30 minutos\",\"live.total_other\":\"{n} páginas vistas en los últimos 30 minutos\",\"live.minute_one\":\"{n} página vista a las {time}\",\"live.minute_other\":\"{n} páginas vistas a las {time}\",\"live.ago30\":\"hace 30 min\",\"live.nowLabel\":\"Ahora\",\"live.pages\":\"Páginas\",\"live.sources\":\"Fuentes\",\"live.countries\":\"Países\",\"live.nobody\":\"Los visitantes aparecen aquí al llegar.\",\"live.feed\":\"Actividad reciente\",\"live.quiet\":\"Las visitas de los últimos 30 minutos aparecen aquí.\",\"live.someone\":\"Alguien\",\"live.someoneIn\":\"Alguien en {place}\",\"live.viewed\":\"{who} vio {path}\",\"live.viewedVia\":\"{who} vio {path} desde {source}\",\"live.did\":\"{who} hizo {name} en {path}\",\"live.didVia\":\"{who} hizo {name} en {path}, desde {source}\",\"welcome.title\":\"Añade Runlight a {name}\",\"welcome.lead\":\"Esperando la primera visita. Esta página se llenará sola cuando llegue.\",\"settings.goals\":\"Objetivos\",\"settings.funnels\":\"Embudos\",\"panel.conversions\":\"Conversiones\",\"goals.revenueAside\":\"{amount} de ingresos\",\"goals.add\":\"Añadir objetivo\",\"goals.emptyTitle\":\"Tus objetivos aparecerán aquí\",\"goals.emptyHint\":\"Un objetivo cuenta lo que te importa, como un registro o un clic en un botón. Un objetivo de evento o de página también cuenta las visitas pasadas, y uno de clic cuenta desde que lo añades.\",\"goals.goal\":\"Objetivo\",\"goals.rate\":\"Tasa\",\"goals.conversions\":\"Conversiones\",\"goals.unknown\":\"(ninguno)\",\"goals.converted\":\"Personas que convirtieron\",\"goals.revenue\":\"Ingresos\",\"goals.overTime\":\"Conversiones en el tiempo\",\"goals.overTimeValued\":\"Conversiones e ingresos en el tiempo, cada uno en su escala\",\"goals.byChannel\":\"Por canal\",\"goals.bySource\":\"Por fuente\",\"goals.byPage\":\"Dónde ocurrió\",\"goals.describe.event\":\"Evento: {match}\",\"goals.describe.page\":\"Visitas a {match}\",\"goals.describe.selector\":\"Clics en {match}\",\"goals.describe.link\":\"Clics en enlaces a {match}\",\"goals.value.each\":\"{amount} cada uno\",\"goals.value.fromProp\":\"importe en {prop}, en {currency}\",\"goals.name\":\"Nombre\",\"goals.namePlaceholder\":\"Registro, Compra, Llamada reservada\",\"goals.counts\":\"Cuenta\",\"goals.kind.event\":\"Un evento\",\"goals.kind.page\":\"Una página visitada\",\"goals.kind.click\":\"Un clic\",\"goals.clickOn\":\"Clics en\",\"goals.click.selector\":\"Un elemento\",\"goals.click.link\":\"Enlaces a una dirección\",\"goals.match.event\":\"Nombre del evento\",\"goals.match.page\":\"Página\",\"goals.match.link\":\"Dirección del enlace\",\"goals.match.selector\":\"Selector CSS\",\"goals.pick\":\"Elegir en mi sitio\",\"goals.picking\":\"Esperando tu elección\",\"goals.hint.event\":\"El nombre que envías con runlight(\\\"Nombre\\\") o un atributo data-runlight.\",\"goals.hint.page\":\"Una ruta como /gracias. Usa * para cualquier cosa: /blog/* o /gracias*. Una URL completa también sirve.\",\"goals.hint.link\":\"Clics en enlaces cuya dirección coincide. Usa * para cualquier cosa, como https://buy.stripe.com/*, o empieza con / para tus propias páginas.\",\"goals.hint.selector\":\"Cualquier selector CSS. O usa Elegir en mi sitio: se abre tu sitio, haz clic en el elemento y luego en Usar esto.\",\"goals.valueLabel\":\"Valor\",\"goals.value.none\":\"Ninguno\",\"goals.value.fixed\":\"Un importe fijo\",\"goals.value.prop\":\"Un importe enviado con el evento\",\"goals.amount\":\"Importe cada vez\",\"goals.property\":\"Propiedad con el importe\",\"goals.currency\":\"Moneda\",\"goals.save\":\"Guardar objetivo\",\"goals.create\":\"Añadir objetivo\",\"goals.cancel\":\"Cancelar\",\"goals.edit\":\"Editar\",\"goals.intro\":\"Los objetivos convierten visitas en conversiones. Cada uno cuenta un evento, una página visitada o un clic, y puede llevar un valor para ver ingresos por fuente y página.\",\"goals.none\":\"Añade uno abajo para empezar a contarlo.\",\"goals.pastNote\":\"Los objetivos se calculan con los datos que ya tienes, así que uno nuevo muestra también conversiones pasadas. Los objetivos de clic empiezan a contar unos cinco minutos después de añadirlos.\",\"settings.email\":\"Informes por email\",\"settings.mail\":\"Servicio de correo\",\"mail.intro\":\"Runlight envía los informes y las invitaciones con tu propio servicio de correo. Configúralo una vez y todos los sitios lo usan.\",\"mail.service\":\"Servicio\",\"mail.optional\":\"(opcional)\",\"mail.keepSaved\":\"Guardado. Déjalo vacío para mantenerlo.\",\"mail.from\":\"Dirección de envío\",\"mail.fromName\":\"Nombre del remitente\",\"mail.fromHint\":\"Usa una dirección que tu servicio te deje usar, en un dominio verificado con él.\",\"mail.save\":\"Guardar servicio\",\"mail.change\":\"Cambiar\",\"mail.fromLine\":\"Envía desde {from}\",\"mail.fromCode\":\"Definido en el código. Envía desde {from}\",\"mail.testTo\":\"Enviar una prueba a\",\"mail.test\":\"Enviar prueba\",\"mail.testSent\":\"Prueba enviada a {to}. Revisa la bandeja de entrada y el spam.\",\"mail.notEncryptedTitle\":\"Tus claves se guardarán sin cifrar\",\"mail.notEncrypted\":\"Este Runlight no tiene RUNLIGHT_SECRET, así que las claves se guardan en su base de datos tal como las escribes. Define RUNLIGHT_SECRET o RUNLIGHT_TOKEN en el servidor para guardarlas cifradas.\",\"mail.field.region\":\"Región\",\"mail.field.accessKeyId\":\"ID de clave de acceso\",\"mail.field.secretAccessKey\":\"Clave de acceso secreta\",\"mail.field.apiKey\":\"Clave de API\",\"mail.field.serverToken\":\"Token de API del servidor\",\"mail.field.stream\":\"Flujo de mensajes\",\"mail.field.domain\":\"Dominio de envío\",\"mail.field.secretKey\":\"Clave secreta\",\"mail.field.host\":\"Host\",\"mail.field.port\":\"Puerto\",\"mail.field.security\":\"Seguridad\",\"mail.field.username\":\"Usuario\",\"mail.field.password\":\"Contraseña\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Secreto de firma\",\"reports.title\":\"Quién recibe informes\",\"reports.intro\":\"Un resumen de {site} por email: visitantes, páginas, fuentes, países y conversiones, frente al periodo anterior.\",\"reports.none\":\"Añade una dirección de correo abajo para empezar a enviarlos.\",\"reports.weekly\":\"Semanal\",\"reports.monthly\":\"Mensual\",\"reports.frequency\":\"Frecuencia\",\"reports.language\":\"Idioma\",\"reports.lastSent\":\"último envío {when}\",\"reports.never\":\"aún no\",\"reports.sample\":\"Enviar un ejemplo\",\"reports.sampleSent\":\"Ejemplo enviado a {to}.\",\"reports.emailPlaceholder\":\"nombre@ejemplo.com\",\"reports.add\":\"Añadir\",\"reports.when\":\"Los informes semanales cubren de lunes a domingo y salen el lunes desde las 8, los mensuales el día 1, en la zona horaria del sitio. Los envía la comprobación horaria (un cron que llama a POST /api/check).\",\"reports.needsMail\":\"Los informes empiezan a salir cuando haya un servicio de correo configurado. Un solo servicio los envía para todos los sitios.\",\"reports.setUpMail\":\"Configurar servicio de correo\",\"reports.needsMailTitle\":\"Aún no hay servicio de correo\",\"email.subject.week\":\"{site}: {who} la semana pasada\",\"email.subject.month\":\"{site}: {who} en {month}\",\"email.when.week\":\"la semana pasada\",\"email.before.week\":\"la semana anterior\",\"email.when.month\":\"en {month}\",\"email.range\":\"del {from} al {to}\",\"email.pages\":\"Páginas principales\",\"email.sources\":\"Fuentes principales\",\"email.countries\":\"Países principales\",\"email.conversions\":\"Conversiones\",\"email.open\":\"Abrir el panel\",\"email.at\":\"Tu panel está en {where}\",\"email.footer\":\"Recibes este informe {frequency} de {site} desde Runlight.\",\"email.weekly\":\"semanal\",\"email.monthly\":\"mensual\",\"email.unsubscribe\":\"Darse de baja\",\"email.test.subject\":\"Runlight puede enviar emails\",\"email.test.body\":\"Esta prueba llegó a través de {service}. Los informes de tus sitios llegarán igual.\",\"email.unsub.title\":\"¿Dejar de recibir los informes de {site}?\",\"email.unsub.body\":\"{email} no recibirá más informes de este sitio.\",\"email.unsub.doneTitle\":\"Te has dado de baja\",\"email.unsub.done\":\"No llegarán más informes de {site} a {email}.\",\"email.unsub.goneTitle\":\"Nada de lo que darse de baja\",\"email.unsub.gone\":\"Este enlace ya se usó, o el informe se eliminó.\",\"settings.api\":\"API e IA\",\"tokens.intro\":\"Pregunta a tu asistente de IA por tus estadísticas. Crea un token y añade Runlight a Claude, Cursor o cualquier aplicación que se conecte a servidores MCP. Un token de lectura nunca cambia nada, y un token de gestión puede cambiar los ajustes de un sitio. El mismo token sirve para la API HTTP.\",\"tokens.server\":\"Dirección del servidor MCP\",\"tokens.namePlaceholder\":\"Para qué es, como Claude o un script\",\"tokens.scope\":\"Qué sitios puede leer\",\"tokens.allSites\":\"Todos los sitios\",\"tokens.siteOnly\":\"Solo {site}\",\"tokens.create\":\"Crear token\",\"tokens.empty\":\"Crea uno abajo para conectar un asistente de IA o un script.\",\"tokens.used\":\"usado el {date}\",\"tokens.never\":\"nunca usado\",\"tokens.revokeNote\":\"Al borrar un token deja de funcionar al instante.\",\"tokens.once\":\"Copia este token ahora. Solo se muestra una vez, y Runlight guarda solo una huella de él.\",\"tokens.claudeCode\":\"Claude Code recibe el token con este comando.\",\"tokens.json\":\"Cursor y otras aplicaciones que usan una configuración JSON mcpServers usan esto en su lugar.\",\"tokens.done\":\"Listo, ya lo copié\",\"sites.domains\":\"Dominios\",\"sites.domainsHint\":\"Escribe el dominio del sitio, como example.com, y separa varios con comas.\",\"sites.name\":\"Nombre\",\"sites.namePlaceholder\":\"Mi blog\",\"sites.timezoneHint\":\"Los días se cuentan en {zone}, y puedes cambiarlo luego en Ajustes.\",\"sites.add\":\"Añadir sitio\",\"sites.addTitle\":\"Añadir un sitio\",\"sites.firstTitle\":\"Añade tu primer sitio\",\"sites.firstLead\":\"Runlight cuenta cada sitio que añadas aquí. Escribe el dominio del sitio y la siguiente pantalla te mostrará la etiqueta de script para sus páginas.\",\"sites.delete\":\"Eliminar este sitio\",\"sites.deleteHint\":\"Eliminar un sitio borra todas sus visitas, enlaces, objetivos e informes, y no se puede deshacer.\",\"app.signOut\":\"Cerrar sesión\",\"install.ignoreServer\":\"Para dejar de contar tus propias visitas, abre {link} una vez en cada navegador que uses.\",\"panel.geoCredit\":\"Ubicaciones de {name}\",\"visits.tab\":\"Visitas\",\"visits.linksTab\":\"Enlaces cortos\",\"visits.intro\":\"Trae tu historial de visitas para que tus gráficos lleguen a antes de que Runlight empezara a contar. Solo llegan las visitas anteriores a la primera de Runlight, así que nada se cuenta dos veces.\",\"visits.onlyUmami\":\"La API de Umami entrega cada visita con su página, origen, lugar y dispositivo, que es lo que guarda Runlight. Plausible, Fathom y Google Analytics solo dan totales, y los totales no se pueden convertir de nuevo en visitas. Si tienes cada página vista en un archivo, impórtalo como CSV.\",\"visits.csvMoment\":\"Más de {max} filas comparten un mismo momento, más de lo que cabe en un lote.\",\"visits.csvStopped\":\"Detenido. Volver a importar el mismo archivo es seguro, porque las filas ya traídas se reemplazan.\",\"visits.csvSkipped\":\"Se dejaron fuera {n} filas porque eran posteriores a la primera visita propia de Runlight, anteriores a lo que guarda este sitio, o no eran una página vista ni un evento con nombre.\",\"visits.csvRunning\":\"{done} de {total} filas enviadas, {pageviews} páginas vistas hasta ahora\",\"visits.csvRunlight\":\"{name} está en el formato de visitas de Runlight, con {rows} filas.\",\"visits.csvUmami\":\"{name} es una exportación de Umami con {rows} filas.\",\"visits.csvOther\":\"Elegir otro archivo\",\"visits.csvChoose\":\"Elegir archivo CSV\",\"visits.csvHelp\":\"Usa el CSV de la exportación de datos de Umami, o un archivo con una fila por página vista en el formato de visitas de Runlight, descrito en la documentación del panel.\",\"visits.fromCsv\":\"Un archivo CSV\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Importar desde\",\"visits.onlyUmamiTitle\":\"Por qué solo Umami\",\"visits.find\":\"Buscar sitios\",\"visits.website\":\"Sitio de Umami\",\"visits.noWebsites\":\"Esta cuenta de Umami no tiene sitios.\",\"visits.start\":\"Importar visitas\",\"visits.running\":\"{done} de {total} días leídos, {pageviews} páginas vistas hasta ahora\",\"visits.done\":\"Listo. Llegaron {pageviews} páginas vistas y {events} eventos en {visits} visitas.\",\"visits.stopped\":\"Detenido. Vuelve a empezar para seguir desde el último día importado.\",\"props.title\":\"Propiedades\",\"props.open\":\"Propiedades de {name}\",\"props.none\":\"Aparecen cuando el evento se envía con propiedades.\",\"account.title\":\"Cuenta\",\"account.owner\":\"Eres el propietario, así que puedes cambiarlo todo y gestionar personas. Nadie más puede quitarte.\",\"account.viewer\":\"Eres lector, así que puedes ver las estadísticas de cada sitio sin cambiar nada.\",\"account.current\":\"Contraseña actual\",\"account.next\":\"Contraseña nueva\",\"account.nextHint\":\"Usa al menos diez caracteres. Al cambiarla se cierra la sesión en tus otros navegadores.\",\"account.save\":\"Cambiar contraseña\",\"account.saved\":\"Contraseña cambiada\",\"settings.people\":\"Personas\",\"people.intro\":\"Todos aquí pueden iniciar sesión en este servidor. Los administradores pueden cambiar todo lo que cambia el propietario y gestionar personas, aunque nadie puede quitar al propietario. Los miembros cambian la configuración de cada sitio, y los lectores leen las estadísticas de cada sitio sin cambiar nada. Invita a un compañero y elegirá su propia contraseña.\",\"people.you\":\"tú\",\"people.role\":\"Rol\",\"people.owner\":\"Propietario\",\"people.viewer\":\"Lector\",\"people.roles\":\"Los miembros no pueden gestionar personas, configurar el servicio de correo o el asistente, ni eliminar un sitio. Solo el propietario puede pasar la propiedad a un administrador.\",\"people.emailPlaceholder\":\"Correo electrónico de la persona\",\"pluginKey.title\":\"Clave para plugins de CMS\",\"pluginKey.intro\":\"Los plugins de WordPress, Drupal y Craft usan esta clave para informar de los agentes de IA que leen las páginas de este sitio. Solo puede informar para este sitio y no puede leer nada. Al reemplazarla, la anterior deja de funcionar al instante.\",\"pluginKey.replace\":\"Reemplazar clave\",\"export.csv\":\"Descargar CSV\",\"export.zip\":\"Exportar\",\"export.title\":\"Descargar todo lo de esta vista en archivos CSV\",\"funnels.title\":\"Embudos\",\"funnels.intro\":\"Un embudo sigue los pasos que esperas que dé una visita, como la página de precios y luego el registro, y muestra cuántas visitas pasaron por cada paso en orden.\",\"funnels.none\":\"Añade uno abajo para ver dónde se detiene la gente por el camino.\",\"funnels.add\":\"Añadir embudo\",\"funnels.name\":\"Nombre\",\"funnels.namePlaceholder\":\"Registro\",\"funnels.steps\":\"Pasos\",\"funnels.stepsHint\":\"Una ruta de página puede usar * para cualquier cosa, como /blog/*. Cada paso tiene que ocurrir después del anterior, en la misma visita.\",\"funnels.kind\":\"Tipo de paso\",\"funnels.page\":\"Página\",\"funnels.event\":\"Evento\",\"funnels.removeStep\":\"Quitar este paso\",\"funnels.addStep\":\"Añadir un paso\",\"funnels.save\":\"Guardar embudo\",\"funnels.create\":\"Crear embudo\",\"funnels.stepPage\":\"Página {match}\",\"funnels.stepEvent\":\"Evento {match}\",\"funnels.wentOn\":\"{pct} siguió\",\"funnels.tab\":\"Embudos\",\"funnels.goalsTab\":\"Objetivos\",\"sites.modeHere\":\"Contarlo aquí\",\"sites.modeConnect\":\"Conectar otro Runlight\",\"sites.connectIntro\":\"Conecta aquí un sitio que ya se cuenta con Runlight dentro de su propia aplicación. Sus cifras se quedan allí. Inicias sesión una vez y autorizas este servidor, y luego puedes ver y cambiar el sitio desde aquí.\",\"sites.connectUrl\":\"Su dirección de Runlight\",\"sites.connectToken\":\"Token de API\",\"sites.connectTokenHint\":\"Crea un token en esa instalación, en Ajustes, API e IA. Con un token de lectura las cifras se ven aquí y los ajustes se quedan allí.\",\"sites.connect\":\"Conectar\",\"sites.all\":\"Todos los sitios\",\"sites.remoteNote\":\"Este sitio lo cuenta su propio Runlight en {url}, que deja a este servidor leerlo. Permite cambios para gestionar también sus ajustes desde aquí.\",\"sites.disconnect\":\"Desconectar este sitio\",\"sites.disconnectHint\":\"Al desconectarlo se quita el sitio de este servidor. Su propio Runlight y todo lo que ha contado se quedan como están.\",\"sites.disconnectButton\":\"Desconectar sitio\",\"sites.confirmDisconnect\":\"Confirmar desconexión\",\"sites.disconnectName\":\"¿Desconectar {name}?\",\"settings.data\":\"Datos\",\"data.retention\":\"Conservar visitas durante\",\"data.retentionHint\":\"Las visitas y eventos más antiguos se borran para siempre al guardar y después cada día. Los objetivos, enlaces y ajustes se mantienen.\",\"data.forever\":\"Siempre\",\"data.months\":\"{n} meses\",\"data.years\":\"{n} años\",\"data.deletesBefore\":\"Las visitas anteriores al {date} se borrarán al guardar.\",\"data.unreachable\":\"No se pudo contactar con {url} para leer este ajuste. Inténtalo de nuevo en un minuto.\",\"data.export\":\"Exportar todo\",\"data.exportHint\":\"El ZIP contiene todos los informes de este sitio desde su primera visita, como archivos CSV.\",\"data.download\":\"Descargar ZIP\",\"sites.remoteTitle\":\"Lo cuenta otro Runlight\",\"sites.openRemote\":\"Abrir su panel\",\"sites.useToken\":\"Usar un token de API\",\"sites.useSignIn\":\"Iniciar sesión en él\",\"sites.remoteManaged\":\"Este sitio lo cuenta su propio Runlight en {url}. Los cambios que hagas aquí se guardan allí.\",\"sites.allowChanges\":\"Permitir cambios\",\"sites.reconnect\":\"Conectar de nuevo\",\"sites.reconnectHint\":\"Úsalo si la instalación ya no acepta este servidor, por ejemplo tras borrar allí su token.\",\"sites.connectError.expired\":\"La conexión tardó demasiado o ya se usó. Empieza de nuevo.\",\"sites.connectError.denied\":\"No se permitió la conexión.\",\"sites.connectError.refused\":\"La instalación no dejó conectarse a este servidor. Empieza de nuevo o conéctala con un token de API.\",\"sites.connectError.token\":\"La instalación no le dio un token a este servidor. Empieza de nuevo.\",\"sites.connectError.failed\":\"La conexión no terminó. Empieza de nuevo.\",\"mail.fromRemote\":\"Enviado por {host} desde {from}\",\"mail.noneRemote\":\"{host} aún no tiene servicio de correo, así que no puede enviar estos informes. Configura uno en su propio panel, en Ajustes, Servicio de correo.\",\"tokens.manages\":\"Puede cambiar ajustes\",\"account.again\":\"Repite la nueva contraseña\",\"account.mismatch\":\"Las dos contraseñas nuevas no coinciden.\",\"account.strength0\":\"Demasiado corta\",\"account.strength1\":\"Débil\",\"account.strength2\":\"Aceptable\",\"account.strength3\":\"Buena\",\"account.strength4\":\"Fuerte\",\"mail.introRemote\":\"Los informes de este sitio salen por el servicio de correo configurado en {host}.\",\"settings.assistant\":\"Asistente de IA\",\"assistant.open\":\"Preguntar por tus estadísticas\",\"assistant.title\":\"Asistente de IA\",\"assistant.about\":\"Responde a partir de las cifras de {site}, que lee en el momento en que preguntas.\",\"assistant.clear\":\"Nueva conversación\",\"assistant.intro\":\"Pregunta por visitantes, fuentes, páginas, objetivos o cualquier cosa que muestre este panel.\",\"assistant.ask1\":\"¿Cómo se compara este periodo con el anterior?\",\"assistant.ask2\":\"¿De dónde vienen la mayoría de los visitantes?\",\"assistant.ask3\":\"¿Qué páginas retienen más tiempo a la gente?\",\"assistant.ask4\":\"¿Los asistentes de IA envían visitantes aquí?\",\"assistant.placeholder\":\"Haz una pregunta\",\"assistant.send\":\"Enviar\",\"assistant.thinking\":\"Leyendo tus cifras\",\"assistant.empty\":\"El asistente no respondió nada.\",\"assistant.checked_one\":\"Leyó {n} informe\",\"assistant.checked_other\":\"Leyó {n} informes\",\"assistant.setupOwner\":\"El asistente necesita un servicio de IA para responder. Añade una clave de Anthropic, OpenAI o Gemini, o apúntalo a un modelo en tu propia máquina.\",\"assistant.setupViewer\":\"El asistente aún no está configurado. El propietario o un administrador puede añadir un servicio de IA en Configuración, Asistente de IA.\",\"assistant.setup\":\"Configurar el asistente\",\"assistant.ownersOnly\":\"Solo el propietario o un administrador puede configurar el asistente.\",\"assistant.settingsIntro\":\"Elige un servicio de IA y pega abajo una clave de API suya. Después, el botón del robot junto a Filtrar abre un asistente que responde preguntas sobre tus estadísticas con palabras sencillas.\",\"assistant.privacyTitle\":\"Qué ve el servicio\",\"assistant.privacy\":\"Cada pregunta va a ese servicio con las cifras que el asistente lee para responder. Runlight no guarda nada sobre visitantes individuales, así que no se envía nada personal. El asistente solo lee, con las mismas herramientas que el servidor MCP, así que nunca puede cambiar nada.\",\"assistant.notEncryptedTitle\":\"Tu clave se guardará sin cifrar\",\"assistant.notEncrypted\":\"Este Runlight no tiene RUNLIGHT_SECRET, así que la clave se guarda en su base de datos tal como la escribes. Define RUNLIGHT_SECRET o RUNLIGHT_TOKEN en el servidor para guardarla cifrada.\",\"assistant.provider\":\"Servicio de IA\",\"assistant.address\":\"Dirección\",\"assistant.addressHint\":\"Dónde está la API compatible con OpenAI del servicio, sin /chat/completions al final.\",\"assistant.addressLocal\":\"Dónde se ejecuta el modelo. El servidor de Runlight debe poder alcanzarlo.\",\"assistant.model\":\"Modelo\",\"assistant.modelPlaceholder\":\"El nombre del modelo, como lo indica el servicio\",\"assistant.modelDefault\":\"Déjalo vacío para usar {model}.\",\"assistant.modelHint\":\"Escribe la clave arriba y carga los modelos del servicio, o escribe el nombre de un modelo. Funciona mejor un modelo que sepa usar herramientas.\",\"assistant.key\":\"Clave de API\",\"assistant.remove\":\"Desactivar el asistente\",\"assistant.removeHint\":\"Quita el servicio y su clave. El botón del robot pedirá entonces a un propietario que lo configure de nuevo.\",\"journeys.open\":\"Recorridos\",\"journeys.title\":\"Recorridos\",\"journeys.intro\":\"Los caminos que siguen las visitas por el sitio, página a página. Haz clic en una página para seguir solo las visitas que pasaron por ella.\",\"journeys.steps\":\"Pasos\",\"journeys.stepCount\":\"{n} pasos\",\"journeys.start\":\"Empezando en\",\"journeys.end\":\"Terminando en\",\"journeys.anyPage\":\"Cualquier página\",\"journeys.step\":\"Paso {n}\",\"journeys.other\":\"Otras páginas\",\"journeys.left\":\"{n} no siguieron\",\"journeys.follow\":\"Seguir las visitas que pasaron por {page}\",\"journeys.following\":\"Visitas que pasaron por {page} en el paso {step}.\",\"journeys.none\":\"Prueba un rango de fechas más amplio para ver más visitas.\",\"secret.show\":\"Mostrar\",\"secret.hide\":\"Ocultar\",\"people.invite\":\"Invitar\",\"people.invited\":\"invitado\",\"people.invitedMeta\":\"{role}, el enlace funciona hasta el {date}\",\"people.resend\":\"Enviar de nuevo\",\"people.emailed\":\"Hay una invitación en camino a {email}. También puedes enviarle este enlace tú mismo.\",\"people.noMail\":\"Este servidor no tiene servicio de correo, así que envía este enlace a {email} tú mismo. Configura uno en Ajustes, Servicio de correo para enviar invitaciones por correo.\",\"people.mailFailed\":\"El correo a {email} no salió ({error}). Envíale este enlace tú mismo.\",\"people.linkHint\":\"El enlace funciona una vez, durante siete días. Enviar de nuevo crea un enlace nuevo y anula este.\",\"twofa.title\":\"Inicio de sesión en dos pasos\",\"twofa.off\":\"Desactivado. Actívalo y el inicio de sesión también pedirá un código de una app de autenticación en tu teléfono.\",\"twofa.on_one\":\"Activado. Al iniciar sesión se pide un código de tu app de autenticación. Te queda {n} código de recuperación.\",\"twofa.on_other\":\"Activado. Al iniciar sesión se pide un código de tu app de autenticación. Te quedan {n} códigos de recuperación.\",\"twofa.turnOn\":\"Activar\",\"twofa.turnOff\":\"Desactivar\",\"twofa.newCodes\":\"Nuevos códigos de recuperación\",\"twofa.password\":\"Tu contraseña\",\"twofa.continue\":\"Continuar\",\"twofa.scan\":\"Escanea esto con una app de autenticación, como 1Password, Google Authenticator o Authy, y escribe el código de seis dígitos que muestra.\",\"twofa.qr\":\"Código QR para tu app de autenticación\",\"twofa.manual\":\"O escribe esta clave en la app.\",\"twofa.code\":\"Código de la app\",\"twofa.confirm\":\"Activar\",\"twofa.codesIntro\":\"Guarda estos códigos de recuperación en un lugar seguro. Cada uno te permite entrar una vez si pierdes el teléfono, y no se volverán a mostrar.\",\"twofa.download\":\"Descargar\",\"twofa.copy\":\"Copiar\",\"twofa.saved\":\"Ya los guardé\",\"people.twoFactor\":\"dos pasos\",\"people.resetTwoFactor\":\"Restablecer dos pasos\",\"people.resetTwoFactorHint\":\"Desactiva el inicio de sesión en dos pasos de esta persona, por si perdió el teléfono y los códigos de recuperación\",\"assistant.loadModels\":\"Cargar modelos\",\"assistant.loadingModels\":\"Cargando\",\"assistant.pickModel\":\"Elige un modelo\",\"assistant.typeModel\":\"Escribir el nombre de un modelo\",\"assistant.chooseFromList\":\"Elegir de la lista\",\"journeys.sampled\":\"Son los caminos de las {n} visitas más recientes en estas fechas.\",\"error.owner_only\":\"Solo un propietario puede cambiar esto.\",\"error.domain_invalid\":\"Eso no es un nombre de dominio.\",\"error.domain_in_use\":\"{domain} aloja este panel o uno de tus sitios. Usa un dominio o subdominio aparte para los enlaces cortos, como go.{domain}.\",\"error.domain_taken\":\"{domain} ya pertenece a otro sitio.\",\"error.link_url\":\"El destino debe ser una URL completa, que empiece por https://\",\"error.link_protocol\":\"El destino debe empezar por http:// o https://\",\"error.link_long\":\"El destino tiene más de 2.000 caracteres.\",\"error.link_domain\":\"Primero añade {domain} como dominio de enlaces en Ajustes.\",\"error.link_slug\":\"Un slug lleva letras, dígitos, guiones y guiones bajos, hasta 100.\",\"error.link_taken\":\"/{slug} ya está en uso.\",\"error.link_no_slug\":\"No se encontró un slug libre. Inténtalo de nuevo.\",\"error.test_email\":\"Escribe un correo electrónico al que enviar la prueba.\",\"error.mail_unset\":\"Primero configura un servicio de correo.\",\"error.email_invalid\":\"Escribe un correo electrónico.\",\"error.report_exists\":\"{email} ya recibe este informe.\",\"error.report_limit\":\"Un sitio puede enviar a 50 direcciones como máximo.\",\"error.sample_soon\":\"Se acaba de enviar una muestra. Espera un minuto y vuelve a intentarlo.\",\"error.people_owner\":\"Solo el propietario o un administrador puede gestionar personas.\",\"error.role_needed\":\"Elige administrador, miembro o lector.\",\"error.account_exists\":\"{email} ya tiene una cuenta.\",\"error.remove_self\":\"No puedes quitarte a ti mismo.\",\"people.demoted\":\"Ahora eres lector, así que la configuración está cerrada y aquí no se puede cambiar nada. El propietario o un administrador puede revertirlo.\",\"links.importNoUrl\":\"No se importó nada porque el archivo no tiene una columna url con direcciones. Usa las columnas name y url, y también slug y domain si las tienes.\",\"app.sessionEnded\":\"Se cerró tu sesión, algo que pasa cuando una sesión caduca o cambia una contraseña. {link} y volverás a esta vista.\",\"app.signInAgain\":\"Vuelve a iniciar sesión\",\"links.noneYet\":\"Nadie ha creado todavía un enlace corto para este sitio.\",\"error.remote_slow\":\"{host} tardó demasiado en responder. Prueba con un periodo más corto.\",\"error.domain_not_public\":\"{domain} no es un dominio público. Usa uno al que cualquier navegador pueda llegar.\",\"error.unreachable\":\"No se pudo contactar con {host}.\",\"error.redirected\":\"{host} respondió con una redirección.\",\"error.token_refused\":\"{host} rechazó el token. Vuelve a conectarlo desde los ajustes del sitio.\",\"error.mail_failed\":\"No se pudo enviar el correo ({detail}).\",\"error.mail_unreachable\":\"No se pudo contactar con {host}.\",\"error.mail_slow\":\"{host} tardó demasiado en responder, así que el correo no se envió.\",\"error.mail_refused\":\"{host} rechazó el correo ({detail}).\",\"error.mail_service\":\"Elige un servicio de correo.\",\"error.mail_field\":\"Falta el campo {field}.\",\"error.mail_option\":\"{field} debe ser uno de estos valores ({options}).\",\"error.mail_https\":\"La URL del webhook debe usar https.\",\"error.mail_region\":\"Eso no es una región de AWS, como us-east-1.\",\"error.mail_in_code\":\"El servicio de correo está definido en el código, así que no se puede cambiar aquí.\",\"error.mail_from\":\"Escribe la dirección desde la que salen los informes, como reports@example.com.\",\"error.smtp_starttls\":\"El servidor SMTP no ofrece STARTTLS. Elige TLS o ninguna en Seguridad.\",\"error.unknown_account\":\"Esa cuenta ya no existe.\",\"error.password_short\":\"Usa una contraseña de al menos {min} caracteres.\",\"error.invite_gone\":\"Esta invitación caducó o ya se usó. Pide una nueva.\",\"error.too_many_tries\":\"Demasiados intentos. Espera quince minutos y vuelve a intentarlo.\",\"error.password_current_wrong\":\"Tu contraseña actual no es correcta.\",\"error.password_wrong\":\"Tu contraseña no es correcta.\",\"error.code_wrong\":\"Ese código no es correcto. Revisa la hora de tu teléfono y prueba con el siguiente.\",\"error.twofactor_off\":\"Activa primero el inicio de sesión en dos pasos.\",\"error.twofactor_self\":\"Desactiva tu propio inicio de sesión en dos pasos en Cuenta.\",\"error.unknown_invite\":\"Esa invitación ya no existe.\",\"error.origin_needed\":\"Indica primero la dirección de este Runlight (RUNLIGHT_URL en el servidor, u origin en routes()) para que un hub conectado pueda añadir dominios de enlaces e informes por correo.\",\"error.twofactor_restart\":\"Demasiados códigos incorrectos. Vuelve a empezar a activar el inicio de sesión en dos pasos.\",\"error.pick_origin\":\"Envía el origen del panel, como https://stats.example.com\",\"error.pick_hub\":\"La dirección de este hub no es desde la que se conectó. Vuelve a conectar el sitio desde aquí.\",\"assistant.viewerDaily\":\"Preguntas por lector al día\",\"assistant.viewerDailyHint\":\"Cada pregunta se paga con tu clave de IA. Los lectores son las personas que invitas en Personas, que pueden leer las estadísticas sin cambiar nada, y cada uno puede hacer este número de preguntas al día. Pon 0 para dejar el asistente solo a los propietarios. Los enlaces compartidos nunca tienen el asistente.\",\"error.assistant_soon\":\"Has preguntado mucho en poco tiempo. Espera un poco y vuelve a preguntar.\",\"error.assistant_daily\":\"Los lectores pueden hacer {limit} preguntas al día. Vuelve a preguntar mañana.\",\"error.assistant_limit\":\"Usa un número entero de 0 a 1.000.\",\"error.token_unset\":\"Define RUNLIGHT_TOKEN, o pasa token o authorize a routes(). Sin eso, Runlight solo queda abierto cuando NODE_ENV es development.\",\"error.unauthorized\":\"Inicia sesión o envía un token para ver esto.\",\"error.sign_in\":\"Inicia sesión primero.\",\"error.unknown_site\":\"Ese sitio no está aquí.\",\"error.filters_max\":\"Usa como mucho {max} filtros a la vez.\",\"error.filter_bad\":\"Runlight no entiende el filtro \\\"{filter}\\\".\",\"error.range_bad\":\"Esas fechas no son un intervalo que Runlight entienda.\",\"error.compare_bad\":\"Runlight no conoce la comparación \\\"{compare}\\\".\",\"error.compare_range_bad\":\"Elige las dos fechas con las que comparar.\",\"error.send_json\":\"Envía esto como JSON.\",\"error.send_object\":\"Envía un objeto JSON.\",\"error.unknown_domain\":\"Ese dominio no es de este sitio.\",\"error.rows_needed\":\"Envía los enlaces como una lista de filas.\",\"error.unknown_link\":\"Ese enlace ya no existe.\",\"error.not_found\":\"Eso no está aquí.\",\"error.unknown_goal\":\"Ese objetivo ya no existe.\",\"error.goal_invalid\":\"El objetivo no se guardó ({detail}).\",\"error.funnel_invalid\":\"El embudo no se guardó ({detail}).\",\"error.import_failed\":\"La importación se detuvo ({detail}).\",\"error.assistant_failed\":\"El servicio de IA no respondió como se esperaba ({detail}).\",\"error.assistant_invalid\":\"El asistente no se guardó ({detail}).\",\"error.site_invalid\":\"El sitio no se guardó ({detail}).\",\"error.connect_failed\":\"La conexión no empezó ({detail}).\",\"error.method_not_allowed\":\"Eso no se puede hacer aquí.\",\"error.unknown_report\":\"Ese informe ya no existe.\",\"error.unknown_share\":\"Ese enlace para compartir ya no existe.\",\"error.token_name\":\"Ponle un nombre al token.\",\"error.token_site\":\"Un token que cambia ajustes es para un solo sitio. Elige el sitio.\",\"error.unknown_token\":\"Ese token ya no existe.\",\"error.sites_in_code\":\"Aquí los sitios se definen en el código, así que se cambian allí.\",\"error.connect_url\":\"Escribe la dirección de la instalación, como https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} no respondió como una instalación de Runlight.\",\"error.connect_endpoints\":\"{url} indicó endpoints en otra dirección.\",\"error.connect_old\":\"{url} usa una versión antigua de Runlight. Actualízala o conéctala con un token de API de sus ajustes.\",\"error.connect_register\":\"{url} no dejó que este servidor se conectara. {reason}\",\"error.connect_expired\":\"La conexión tardó demasiado o ya se usó. Empieza de nuevo.\",\"error.connect_denied\":\"No se permitió la conexión.\",\"error.connect_refused\":\"La instalación no dejó conectarse a este servidor. Empieza de nuevo o conéctala con un token de API.\",\"error.connect_token\":\"La instalación no le dio un token a este servidor. Empieza de nuevo.\",\"error.connect_again\":\"Vuelve a conectar este sitio para cambiarlo desde aquí.\",\"error.hub_domains\":\"Un hub conectado no puede cambiar los dominios de un sitio.\",\"error.observe_many\":\"Envía como mucho 500 solicitudes a la vez.\",\"error.observe_url\":\"Envía la dirección de la página.\",\"error.site_remote\":\"Este sitio lo cuenta su propio Runlight. Vuelve a conectarlo desde sus ajustes para cambiarlo desde aquí.\",\"error.unknown_funnel\":\"Ese embudo ya no existe.\",\"error.assistant_dashboard\":\"Solo el panel puede usar el asistente.\",\"error.share_not_available\":\"Eso no está disponible en un panel compartido.\",\"error.assistant_unset\":\"El asistente aún no está configurado. Un propietario puede hacerlo en Ajustes, Asistente de IA.\",\"error.question_needed\":\"Haz una pregunta.\",\"error.site_name\":\"Un nombre de sitio tiene de 1 a 80 caracteres.\",\"error.unknown_timezone\":\"Runlight no conoce la zona horaria \\\"{timezone}\\\".\",\"error.retention_bad\":\"Guarda las visitas {months} meses, o para siempre.\",\"error.share_gone\":\"Este enlace para compartir ya no funciona.\",\"error.token_read_only\":\"Los tokens de API solo pueden leer.\",\"error.icon_none\":\"Este sitio no tiene icono.\",\"error.event_needed\":\"Indica el evento.\",\"error.property_bad\":\"Runlight no puede leer ese nombre de propiedad.\",\"error.unknown_dimension\":\"Runlight no conoce el desglose \\\"{dimension}\\\".\",\"error.internal\":\"Algo falló en el servidor. Inténtalo de nuevo.\",\"filter.max\":\"Se aplican hasta {max} filtros a la vez. Quita uno para añadir otro.\",\"error.sample_soon_hub\":\"Un hub conectado puede enviar una muestra cada diez minutos. Espera unos minutos y vuelve a intentarlo.\",\"people.demoteSelf\":\"Solo el propietario o un administrador podrá revertirlo.\",\"people.demoteConfirm\":\"Cambiar a {role}\",\"error.check_not_public\":\"no es un nombre de dominio público\",\"error.check_timeout\":\"tardó demasiado en responder\",\"error.check_https\":\"no se pudo conectar por HTTPS\",\"error.check_not_runlight\":\"algo respondió, pero no Runlight\",\"error.check_status\":\"respondió {status}\",\"error.assistant_address\":\"Escribe la dirección del servicio en Ajustes, Asistente de IA.\",\"error.assistant_address_bad\":\"Escribe la dirección del servicio, empezando por https://\",\"error.assistant_cancelled\":\"La pregunta se canceló.\",\"error.assistant_key\":\"Escribe tu clave de {provider}.\",\"error.assistant_model\":\"Escribe un modelo en Ajustes, Asistente de IA.\",\"error.assistant_no_models\":\"{host} no mostró ningún modelo. Escribe el nombre del modelo.\",\"error.assistant_provider\":\"Elige un servicio de IA en Ajustes, Asistente de IA.\",\"error.assistant_refused\":\"{host} rechazó la solicitud ({detail}).\",\"error.assistant_slow\":\"Esa pregunta tardó demasiado en responderse. Prueba con algo más concreto.\",\"error.assistant_status\":\"{host} respondió {status}.\",\"error.assistant_steps\":\"El asistente necesitó demasiados pasos para esa pregunta. Prueba con algo más concreto.\",\"error.assistant_timeout\":\"{host} tardó demasiado en responder.\",\"error.funnel_exists\":\"Ya hay un embudo llamado \\\"{name}\\\".\",\"error.funnel_long\":\"Un embudo tiene como mucho ocho pasos.\",\"error.funnel_name\":\"Ponle un nombre al embudo.\",\"error.funnel_page_bad\":\"\\\"{match}\\\" no es una ruta ni una URL.\",\"error.funnel_short\":\"Un embudo necesita al menos dos pasos.\",\"error.goal_amount\":\"Escribe un importe, como 49 o 9,99.\",\"error.goal_click_taken\":\"El objetivo de clic \\\"{match}\\\" ya envía eventos con ese nombre.\",\"error.goal_currency\":\"Usa un código de moneda de tres letras, como USD o EUR.\",\"error.goal_event\":\"Escribe el nombre del evento.\",\"error.goal_event_taken\":\"Un objetivo de evento ya cuenta los eventos \\\"{name}\\\", así que ponle otro nombre a este objetivo de clic.\",\"error.goal_exists\":\"Ya hay un objetivo llamado \\\"{name}\\\".\",\"error.goal_kind\":\"Elige qué cuenta el objetivo, un evento, una visita a una página o un clic.\",\"error.goal_link\":\"Escribe la dirección del enlace, como https://buy.stripe.com/*\",\"error.goal_name\":\"Ponle un nombre al objetivo.\",\"error.goal_page\":\"Escribe la ruta de una página, como /gracias o /blog/*\",\"error.goal_page_bad\":\"Esa página no es una ruta ni una URL.\",\"error.goal_prop_kind\":\"Solo un objetivo de evento puede tomar el importe del evento. Usa un importe fijo.\",\"error.goal_prop_name\":\"Un nombre de propiedad usa letras, números, puntos, guiones y guiones bajos.\",\"error.goal_selector\":\"Escribe un selector CSS, como #signup o .buy-button\",\"error.import_day_full\":\"Un día tiene más de {limit} eventos, más de los que puede leer un paso de importación.\",\"error.import_key\":\"Escribe tu clave de {service}.\",\"error.import_refused\":\"Se rechazó la clave o el inicio de sesión.\",\"error.import_slug_bad\":\"/{slug} tiene caracteres que un slug de Runlight no puede usar.\",\"error.import_slug_taken\":\"/{slug} ya lo usa \\\"{name}\\\".\",\"error.import_source\":\"Runlight no puede importar desde {source}.\",\"error.import_status\":\"{host} respondió {status}.\",\"error.import_umami_address\":\"Escribe la dirección de tu Umami, como https://stats.example.com\",\"error.import_umami_login\":\"Escribe una clave de API, o un usuario y una contraseña.\",\"error.import_website\":\"Elige el sitio de Umami que quieres importar.\",\"error.import_csv_batch\":\"Envía como mucho {max} filas a la vez.\",\"error.import_csv_format\":\"Este archivo no es una exportación de Umami ni está en el formato de visitas de Runlight. Revisa su fila de encabezado.\",\"error.install_refused\":\"Esa instalación rechazó el token.\",\"error.install_token\":\"Escribe un token de API de esa instalación.\",\"error.site_domain_invalid\":\"\\\"{host}\\\" no es un nombre de dominio.\",\"error.site_domain_needed\":\"Añade el dominio del sitio, como example.com\",\"error.site_domain_taken\":\"{host} ya pertenece a {site}.\",\"share.goneTitle\":\"Este enlace para compartir ya no funciona\",\"error.token_manage_only\":\"Un token de gestión solo cambia los ajustes de su propio sitio.\",\"empty.pages.title\":\"Tus páginas principales aparecerán aquí\",\"empty.pages.hint\":\"Cada página que la gente abre aparece en la lista, con el tiempo que pasa en ella.\",\"empty.sources.title\":\"Tus fuentes de tráfico aparecerán aquí\",\"empty.sources.hint\":\"Las búsquedas y los sitios que te envían visitas se listan por nombre.\",\"empty.locations.title\":\"Las ubicaciones de tus visitas aparecerán aquí\",\"empty.locations.hint\":\"Mira desde qué países y ciudades te visitan.\",\"empty.rhythm.title\":\"Tus horas de más actividad aparecerán aquí\",\"empty.rhythm.hint\":\"Cada hora de la semana se va llenando con las visitas.\",\"empty.ai.title\":\"Los agentes de IA que lean tu sitio aparecerán aquí\",\"empty.ai.hint\":\"Los asistentes como ChatGPT y Claude se listan cuando leen tus páginas.\",\"empty.devices.title\":\"Los dispositivos de tus visitas aparecerán aquí\",\"empty.devices.hint\":\"Mira qué navegadores y pantallas usa la gente.\",\"empty.events.title\":\"Tus eventos aparecerán aquí\",\"empty.events.hint\":\"Los clics en enlaces externos y los eventos que envías se cuentan en cuanto ocurren.\",\"empty.campaigns.title\":\"Tus campañas aparecerán aquí\",\"empty.campaigns.hint\":\"Las visitas desde enlaces con etiquetas UTM se agrupan por campaña, fuente y medio.\",\"empty.links.title\":\"Tus enlaces cortos aparecerán aquí\",\"empty.links.hint\":\"Crea un enlace corto para compartir, y cada clic se contará.\",\"sites.refused\":\"{host} ya no acepta la conexión de este servidor, así que no se pueden leer sus cifras. Vuelve a conectarlo para arreglarlo.\",\"sites.connected\":\"Conectado a {host}.\",\"links.totalTip\":\"Todos los clics en tus enlaces cortos en las fechas elegidas\",\"links.setup\":\"Cómo configurarlo\",\"links.recordType\":\"Tipo\",\"links.recordName\":\"Nombre\",\"links.recordValue\":\"Valor\",\"links.doDns\":\"Añade este registro en tu proveedor de DNS.\",\"links.doDnsAlias\":\"Añade este registro en tu proveedor de DNS. Si no ofrece ALIAS, usa un registro A a la dirección IP de tu servidor.\",\"links.doHttps\":\"Haz que tu hosting sirva {domain} con HTTPS.\",\"links.doCheck\":\"Vuelve a comprobar. Un registro nuevo puede tardar unos minutos en llegar.\",\"links.localNote\":\"Este panel funciona en {host}, así que el registro funcionará cuando tenga una dirección pública.\",\"links.guide\":\"Guía de configuración\",\"funnels.emptyTitle\":\"Tus embudos aparecerán aquí\",\"share.emptyTitle\":\"Tus enlaces para compartir aparecerán aquí\",\"tokens.emptyTitle\":\"Tus tokens aparecerán aquí\",\"reports.emptyTitle\":\"Tus informes por correo aparecerán aquí\",\"journeys.emptyTitle\":\"Los recorridos de la gente aparecerán aquí\",\"props.emptyTitle\":\"Los detalles de este evento aparecerán aquí\",\"empty.mini\":\"Esta lista se llena a medida que llegan visitas.\",\"empty.search\":\"Nada aquí coincide aún con «{q}», prueba otra palabra.\",\"delta.fromNone\":\"desde 0\",\"people.admin\":\"Administrador\",\"people.member\":\"Miembro\",\"people.handOver\":\"Hacer propietario\",\"people.handOverHint\":\"Pasa la propiedad a este administrador, y tú pasas a ser administrador\",\"people.handOverConfirm\":\"Pasar\",\"people.demotedMember\":\"Ahora eres miembro, así que Personas y la configuración de toda la instalación están cerradas para ti. El propietario o un administrador puede revertirlo.\",\"account.admin\":\"Eres administrador, así que puedes cambiarlo todo y gestionar personas, salvo al propietario.\",\"account.member\":\"Eres miembro, así que puedes cambiar la configuración de cada sitio. El propietario y los administradores gestionan las personas y la configuración de toda la instalación.\",\"mail.adminOnly\":\"Todavía no hay un servicio de correo configurado. El propietario o un administrador puede configurar uno aquí.\",\"error.admin_only\":\"Solo el propietario o un administrador puede cambiar esto.\",\"error.owner_protected\":\"Nadie más que el propietario puede cambiar o quitar al propietario.\",\"error.owner_hand_over\":\"Solo el propietario puede pasar la propiedad.\",\"error.owner_needs_admin\":\"Hazlo administrador primero.\",\"embed.goneTitle\":\"Este enlace al panel no funciona\",\"embed.gone\":\"Vuelve a abrir el panel desde la administración de tu sitio.\",\"embed.expiredTitle\":\"Esta vista ha caducado\",\"embed.expired\":\"El panel dentro de tu administración se mantiene abierto una hora cada vez. Recarga la página para abrirlo de nuevo.\",\"embed.reload\":\"Recargar la página\",\"embedKey.title\":\"Clave para el panel en tu CMS\",\"embedKey.intro\":\"Con esta clave en sus ajustes, los plugins de WordPress, Drupal y Craft muestran el panel de este sitio dentro de tu administración. Abre la vista de solo lectura que muestra un enlace compartido y no puede leer nada por sí misma. Elimínala en Ajustes, API e IA para detenerla al instante.\",\"embedKey.make\":\"Crear una clave\",\"embedKey.another\":\"Crear otra clave\",\"embedKey.name\":\"Panel en un CMS\",\"tokens.embeds\":\"Abre el panel en un CMS\",\"error.embed_expired\":\"Este panel ha caducado. Recarga la página para abrirlo de nuevo.\",\"error.embed_site\":\"Una clave para el panel en un CMS es para un solo sitio. Elige el sitio.\"}",
|
|
5
|
-
"fr": "{\"app.site\":\"Site\",\"app.confirmDelete\":\"Supprimer {name} ?\",\"app.signedOut\":\"Ouvrez cette page une fois avec {token} suivi de votre {env} pour vous connecter.\",\"app.live.title\":\"Visiteurs des cinq dernières minutes\",\"app.live_one\":\"{n} en ce moment\",\"app.live_other\":\"{n} en ce moment\",\"headline.who_one\":\"{n} personne\",\"headline.who_other\":\"{n} personnes\",\"headline.visited_one\":\"a visité le site\",\"headline.visited_other\":\"ont visité le site\",\"headline.matched_one\":\"correspond à ces filtres\",\"headline.matched_other\":\"correspondent à ces filtres\",\"headline.plain\":\"{who} {verb} {when}.\",\"headline.up\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.down\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.same\":\"{who} {verb} {when}, autant que {against}.\",\"headline.more\":\"{pct} % de plus\",\"headline.fewer\":\"{pct} % de moins\",\"headline.lastYear\":\"les mêmes jours l’an dernier\",\"when.today\":\"aujourd’hui\",\"when.yesterday\":\"hier\",\"when.7d\":\"ces 7 derniers jours\",\"when.30d\":\"ces 30 derniers jours\",\"when.90d\":\"ces 90 derniers jours\",\"when.month\":\"ce mois-ci\",\"when.last_month\":\"le mois dernier\",\"when.year\":\"cette année\",\"when.12mo\":\"ces 12 derniers mois\",\"when.all\":\"depuis le début du suivi\",\"when.range\":\"du {range}\",\"when.day\":\"le {day}\",\"before.today\":\"hier\",\"before.yesterday\":\"la veille\",\"before.7d\":\"les 7 jours précédents\",\"before.30d\":\"les 30 jours précédents\",\"before.90d\":\"les 90 jours précédents\",\"before.month\":\"la même période juste avant\",\"before.last_month\":\"le mois précédent\",\"before.year\":\"la même période juste avant\",\"before.12mo\":\"les 12 mois précédents\",\"before.all\":\"la période précédente\",\"before.range\":\"la même période juste avant\",\"period.today\":\"Aujourd’hui\",\"period.yesterday\":\"Hier\",\"period.7d\":\"7 derniers jours\",\"period.30d\":\"30 derniers jours\",\"period.90d\":\"90 derniers jours\",\"period.month\":\"Ce mois-ci\",\"period.last_month\":\"Le mois dernier\",\"period.year\":\"Cette année\",\"period.12mo\":\"12 derniers mois\",\"period.all\":\"Depuis le début\",\"compare.title\":\"Comparer à\",\"compare.vs\":\"vs\",\"compare.previous\":\"Période précédente\",\"compare.year\":\"Même période l’an dernier\",\"compare.custom\":\"Période personnalisée\",\"compare.off\":\"Aucune comparaison\",\"compare.apply\":\"Comparer\",\"compare.dialog\":\"Comparer avec\",\"calendar.dialog\":\"Choisir les dates\",\"calendar.earlier\":\"Mois précédents\",\"calendar.later\":\"Mois suivants\",\"calendar.pick\":\"Choisissez un jour de début et un jour de fin\",\"calendar.range\":\"{from} au {to}\",\"calendar.open\":\"{from} au ...\",\"calendar.apply\":\"Appliquer\",\"common.cancel\":\"Annuler\",\"common.close\":\"Fermer\",\"common.clearAll\":\"Tout effacer\",\"common.loading\":\"Chargement\",\"common.search\":\"Rechercher\",\"common.none\":\"(aucun)\",\"metric.visitors\":\"Visiteurs\",\"metric.visits\":\"Visites\",\"metric.pageviews\":\"Pages vues\",\"metric.viewsPerVisit\":\"Pages par visite\",\"metric.bounceRate\":\"Taux de rebond\",\"metric.visitDuration\":\"Durée de visite\",\"hint.visitors\":\"Des personnes différentes, comptées une fois par jour\",\"hint.visits\":\"Sessions : une visite se termine après 30 minutes d’inactivité\",\"hint.pageviews\":\"Chaque page chargée, répétitions comprises\",\"hint.viewsPerVisit\":\"Pages vues divisées par les visites\",\"hint.bounceRate\":\"Une visite d’une seule page vue, sans événement, qui dure moins de dix secondes\",\"hint.visitDuration\":\"Temps moyen par visite pendant lequel la page était visible et active\",\"delta.title\":\"Par rapport à la période de comparaison\",\"delta.none\":\"stable\",\"chart.label\":\"{metrics} au fil du temps\",\"chart.scaled\":\"Chaque courbe suit sa propre échelle. Survolez pour voir les valeurs.\",\"chart.pick\":\"Cliquez sur les cartes pour les ajouter au graphique.\",\"chart.dashed\":\"En pointillés : {range}.\",\"chart.then\":\"avant : {when}\",\"panel.pages\":\"Pages\",\"panel.sources\":\"Sources\",\"panel.locations\":\"Lieux\",\"panel.rhythm\":\"Quand les gens viennent\",\"panel.ai\":\"Agents IA\",\"panel.devices\":\"Appareils\",\"panel.events\":\"Événements\",\"panel.campaigns\":\"Campagnes\",\"panel.views\":\"Vues de {title}\",\"panel.empty\":\"Rien sur cette période\",\"panel.more\":\"Tout afficher\",\"panel.filterBy\":\"Filtrer par {name}\",\"panel.showMap\":\"Afficher une carte\",\"panel.showList\":\"Afficher la liste\",\"panel.fullMap\":\"Carte en plein écran\",\"tab.top\":\"Top\",\"tab.entry\":\"Entrée\",\"tab.exit\":\"Sortie\",\"tab.channels\":\"Canaux\",\"tab.sources\":\"Sources\",\"tab.referrers\":\"Référents\",\"tab.countries\":\"Pays\",\"tab.regions\":\"Régions\",\"tab.cities\":\"Villes\",\"tab.agents\":\"Agents\",\"tab.pages\":\"Pages\",\"tab.device\":\"Appareil\",\"tab.browser\":\"Navigateur\",\"tab.os\":\"Système\",\"tab.screen\":\"Écran\",\"tab.language\":\"Langue\",\"tab.event\":\"Événement\",\"tab.campaign\":\"Campagne\",\"tab.source\":\"Source\",\"tab.medium\":\"Support\",\"tab.content\":\"Contenu\",\"tab.term\":\"Terme\",\"column.visitors\":\"visiteurs\",\"column.fetches\":\"requêtes\",\"column.events\":\"événements\",\"column.time\":\"durée\",\"column.bounce\":\"rebond\",\"channel.Direct\":\"Direct\",\"channel.Organic Search\":\"Recherche naturelle\",\"channel.Paid Search\":\"Recherche payante\",\"channel.Social\":\"Réseaux sociaux\",\"channel.Email\":\"E-mail\",\"channel.AI\":\"IA\",\"channel.Referral\":\"Sites référents\",\"channel.Campaign\":\"Campagne\",\"device.desktop\":\"Ordinateur\",\"device.mobile\":\"Mobile\",\"device.tablet\":\"Tablette\",\"ai.live\":\"Lectures en direct\",\"ai.crawl\":\"Explorations\",\"rhythm.busiest\":\"Pic : {when}\",\"rhythm.table\":\"Visites par jour de la semaine et par heure\",\"rhythm.cell_one\":\"{when} : {n} visite\",\"rhythm.cell_other\":\"{when} : {n} visites\",\"scale.fewer\":\"Moins\",\"scale.more\":\"Plus\",\"map.failed\":\"Impossible de charger la carte\",\"map.label\":\"Visiteurs par pays : {top}\",\"map.visitors_one\":\"{n} visiteur\",\"map.visitors_other\":\"{n} visiteurs\",\"map.none\":\"Aucun visiteur\",\"map.title\":\"Dans le monde\",\"filter.button\":\"Filtrer\",\"filter.remove\":\"Retirer le filtre\",\"filter.title\":\"Afficher les visites\",\"filter.where\":\"où\",\"filter.and\":\"et\",\"filter.field\":\"Champ\",\"filter.match\":\"Condition\",\"filter.is\":\"est\",\"filter.not\":\"n’est pas\",\"filter.contains\":\"contient\",\"filter.value\":\"Valeur\",\"filter.placeholder\":\"Saisissez une valeur ou choisissez-en une ci-dessous\",\"filter.placeholderContains\":\"Une partie de la valeur\",\"filter.removeCondition\":\"Retirer cette condition\",\"filter.add\":\"+ Ajouter une condition\",\"filter.note\":\"Toutes les conditions doivent être remplies. Cliquez sur une ligne du tableau de bord pour en ajouter une sans ouvrir ce panneau.\",\"filter.apply_one\":\"Appliquer {n} condition\",\"filter.apply_other\":\"Appliquer {n} conditions\",\"filter.everything\":\"Tout afficher\",\"group.pages\":\"Pages\",\"group.sources\":\"Sources\",\"group.location\":\"Lieu\",\"group.device\":\"Appareil\",\"group.behaviour\":\"Comportement\",\"field.page\":\"Page\",\"field.entry\":\"Page d’entrée\",\"field.exit\":\"Page de sortie\",\"field.hostname\":\"Nom d’hôte\",\"field.channel\":\"Canal\",\"field.source\":\"Source\",\"field.referrer\":\"Référent\",\"field.utm_campaign\":\"Campagne\",\"field.utm_source\":\"Source UTM\",\"field.utm_medium\":\"Support UTM\",\"field.utm_content\":\"Contenu UTM\",\"field.utm_term\":\"Terme UTM\",\"field.country\":\"Pays\",\"field.region\":\"Région\",\"field.city\":\"Ville\",\"field.device\":\"Appareil\",\"field.browser\":\"Navigateur\",\"field.browser_version\":\"Version du navigateur\",\"field.os\":\"Système\",\"field.os_version\":\"Version du système\",\"field.screen\":\"Écran\",\"field.language\":\"Langue\",\"field.event\":\"Événement\",\"foot.powered\":\"Propulsé par {name}\",\"foot.language\":\"Langue\",\"theme.light\":\"Thème clair\",\"theme.dark\":\"Thème sombre\",\"column.visits\":\"visites\",\"column.pageviews\":\"pages vues\",\"column.scroll\":\"défilement\",\"column.duration\":\"durée\",\"column.share\":\"part\",\"rhythm.typical\":\"{x}× une heure habituelle\",\"rhythm.quiet\":\"Aucune visite à cette heure\",\"app.home\":\"Retour à la vue d’ensemble\",\"settings.open\":\"Réglages\",\"settings.title\":\"Réglages\",\"settings.general\":\"Général\",\"settings.install\":\"Installation\",\"settings.siteName\":\"Nom du site\",\"settings.timezone\":\"Fuseau horaire\",\"settings.timezoneHint\":\"Les jours de vos rapports commencent à minuit dans ce fuseau.\",\"settings.save\":\"Enregistrer\",\"settings.saving\":\"Enregistrement\",\"settings.saved\":\"Enregistré\",\"settings.language\":\"Langue\",\"settings.languageHint\":\"Seulement pour ce navigateur.\",\"settings.theme\":\"Thème\",\"settings.themeSystem\":\"Réglage de l’appareil\",\"settings.themeLight\":\"Clair\",\"settings.themeDark\":\"Sombre\",\"install.live\":\"Les visites arrivent. La dernière date de {when}.\",\"install.none\":\"Aucune visite pour l’instant. Ajoutez le script ci-dessous, puis ouvrez une page de votre site.\",\"install.script\":\"Ajoutez ceci à chaque page, juste avant {tag}.\",\"install.copy\":\"Copier\",\"install.copied\":\"Copié\",\"install.events\":\"Les clics sur n’importe quel élément se comptent sans JavaScript.\",\"install.eventsJs\":\"Vous pouvez aussi envoyer des événements en JavaScript, pour ce qui n’est pas un clic.\",\"install.agents\":\"Pour voir les agents IA comme ChatGPT et Claude lire vos pages, transmettez chaque requête à Runlight dans votre middleware avec le code ci-dessous.\",\"install.ignore\":\"Vos propres visites\",\"install.ignored\":\"Vos visites depuis ce navigateur ne sont pas comptées.\",\"install.counted\":\"Vos visites depuis ce navigateur sont comptées.\",\"install.ignoreButton\":\"Ignorer ce navigateur\",\"install.trackButton\":\"Compter à nouveau ce navigateur\",\"install.ignoreElsewhere\":\"Tableau de bord sur un autre domaine que le site ? Ouvrez {link} une fois dans chaque navigateur que vous utilisez.\",\"theme.system\":\"Réglage de l’appareil\",\"theme.cycle\":\"Thème : {current}. Cliquez pour {next}.\",\"panel.links\":\"Liens\",\"links.new\":\"Nouveau lien\",\"links.manage\":\"Gérer\",\"links.clicks\":\"clics\",\"links.url\":\"URL de destination\",\"links.urlPlaceholder\":\"https://exemple.com/une/longue/adresse\",\"links.name\":\"Nom\",\"links.namePlaceholder\":\"Facultatif, pour vous y retrouver\",\"links.slug\":\"Identifiant\",\"links.slugPlaceholder\":\"Laissez vide pour un identifiant au hasard\",\"links.domain\":\"Domaine\",\"links.create\":\"Créer le lien\",\"links.save\":\"Enregistrer\",\"links.created\":\"Votre lien court est prêt.\",\"links.another\":\"En créer un autre\",\"links.edit\":\"Modifier le lien\",\"links.delete\":\"Supprimer\",\"links.confirmDelete\":\"Supprimer {name} ? Ses clics restent dans vos statistiques.\",\"links.copy\":\"Copier\",\"links.copied\":\"Copié\",\"links.search\":\"Rechercher des liens\",\"links.sortClicks\":\"Les plus cliqués\",\"links.sortNewest\":\"Les plus récents\",\"links.sortName\":\"Nom\",\"links.import\":\"Importer un CSV\",\"links.importDone_one\":\"{n} lien importé.\",\"links.importDone_other\":\"{n} liens importés.\",\"links.importFailed\":\"Ligne {row} : {reason}\",\"links.importHelp\":\"Utilisez les colonnes name et url, plus slug et domain si vous les avez.\",\"links.destination\":\"Mène à\",\"links.clicksOverTime\":\"Clics au fil du temps\",\"links.sources\":\"Sources\",\"links.countries\":\"Pays\",\"links.devices\":\"Appareils\",\"links.browsers\":\"Navigateurs\",\"links.total_one\":\"{n} clic\",\"links.total_other\":\"{n} clics\",\"links.domains\":\"Domaines pour les liens courts\",\"links.domainsHelp\":\"Utilisez un domaine ou sous-domaine qui vous appartient pour les liens courts, comme t.exemple.com. Ses liens vivent à sa racine : t.exemple.com/soldes.\",\"links.addDomain\":\"Ajouter le domaine\",\"links.domainPlaceholder\":\"t.exemple.com\",\"links.ownDomain\":\"Ce site ({prefix})\",\"links.removeDomain\":\"Retirer\",\"settings.links\":\"Domaines personnalisés\",\"links.confirm\":\"Confirmer\",\"links.editButton\":\"Modifier\",\"links.step1\":\"Chez votre fournisseur DNS, ajoutez un enregistrement CNAME pour le sous-domaine, pointant vers {host}, là où tourne ce tableau de bord. Pour un domaine nu sans sous-domaine, utilisez plutôt un enregistrement A ou ALIAS vers le même serveur.\",\"links.step2\":\"Faites accepter le domaine par votre hébergeur, avec HTTPS : ajoutez-le aux domaines de votre projet sur Vercel ou Netlify, ou à la configuration et au certificat de votre serveur. Si Runlight tourne dans votre application, transmettez les requêtes à rl.linkDomainResponse() dans votre middleware.\",\"links.step3\":\"Ajoutez le domaine ci-dessous. Runlight vérifie ensuite qu’il atteint ce tableau de bord.\",\"links.checking\":\"Vérification\",\"links.working\":\"Fonctionne\",\"links.notWorking\":\"N’atteint pas encore Runlight : {reason}\",\"links.recheck\":\"Vérifier à nouveau\",\"links.sortBy\":\"Trier les liens\",\"links.removeNote\":\"Retirer un domaine garde ses liens, clics et statistiques : ils passent sur {fallback} jusqu’à ce que vous rajoutiez le domaine, puis y retournent.\",\"links.removedDomain\":\"{domain}/ (retiré)\",\"prompt.copy\":\"Copier le prompt\",\"prompt.domainHint\":\"Copiez ces étapes, avec vos adresses déjà remplies, et collez-les-lui.\",\"prompt.installHint\":\"Copiez les étapes d’installation et collez-les-lui.\",\"links.showing\":\"{shown} affichés sur {total}\",\"links.showMore\":\"Afficher {n} de plus\",\"links.clicksLabel\":\"Clics\",\"links.createdOn\":\"Créé le {date}\",\"settings.import\":\"Importer\",\"import.intro\":\"Récupérez vos liens courts depuis un autre service, avec l’historique des clics quand le service le partage. Votre clé ou mot de passe ne sert qu’à cet import et n’est jamais enregistré. Un nouvel import ignore les liens déjà présents.\",\"import.source\":\"Importer depuis\",\"import.csv\":\"N’importe quel CSV\",\"import.url\":\"Adresse d’Umami\",\"import.apiKey\":\"Clé d’API\",\"import.username\":\"Nom d’utilisateur\",\"import.password\":\"Mot de passe\",\"import.signIn\":\"Se connecter avec\",\"import.withKey\":\"Clé d’API\",\"import.withPassword\":\"Identifiant et mot de passe\",\"import.start\":\"Lancer l’import\",\"import.stop\":\"Arrêter\",\"import.running\":\"Import de {done} liens sur {total}\",\"import.done\":\"Terminé : {links} liens et {clicks} clics importés, {skipped} déjà présents.\",\"import.stopped\":\"Arrêté après {done} liens sur {total}. Relancez pour continuer ; les liens déjà importés sont ignorés.\",\"import.failed\":\"Ceux-ci n’ont pas pu être importés.\",\"import.history.full\":\"Cela importe chaque clic, avec son pays, son appareil, son navigateur et son référent.\",\"import.history.daily\":\"Cela importe les clics par jour, sans pays ni appareil.\",\"import.history.none\":\"Liens seulement : le service ne partage pas les clics datés.\",\"import.umamiHelp\":\"Dans Umami, créez une clé d’API dans Réglages, Clés d’API. Umami auto-hébergé standard n’a pas de clés d’API, connectez-vous alors avec votre identifiant et votre mot de passe. L’un comme l’autre ne sert qu’à cet import et n’est jamais enregistré.\",\"import.csvHelp\":\"Utilisez les colonnes name et url, plus slug et domain si vous les avez.\",\"import.chooseFile\":\"Choisir un fichier CSV\",\"import.token\":\"Jeton d’accès\",\"import.workspace\":\"Identifiant d’espace (facultatif)\",\"import.dubHelp\":\"Dans Dub, créez une clé d’API dans Settings, API Keys, avec lecture des liens et des statistiques. Chaque clic est importé avec l’offre Business, les totaux par jour avec Pro, les liens seuls avec Free.\",\"import.bitlyHelp\":\"Dans Bitly, allez dans Settings, API, saisissez votre mot de passe et générez un jeton. Bitly ne garde que des totaux par jour, aussi loin que votre offre le permet (aucun en Free).\",\"import.shortioHelp\":\"Dans Short.io, ouvrez Integrations and API et créez une clé secrète (une clé publique ne peut pas lire les liens). Short.io autorise 60 requêtes de statistiques par minute, donc cet import va à son rythme.\",\"import.rebrandlyHelp\":\"Dans Rebrandly, créez une clé d’API dans Settings, API keys. Rebrandly ne partage que le total des clics : les liens arrivent sans historique.\",\"import.soFar_one\":\"{n} lien importé pour l’instant\",\"import.soFar_other\":\"{n} liens importés pour l’instant\",\"import.moveNote\":\"Les liens sur le domaine du service (bit.ly, dub.sh, rebrand.ly, short.gy) passent sur {fallback} avec le même identifiant ; les domaines personnalisés sont ajoutés dans Domaines personnalisés.\",\"prompt.title\":\"Vous utilisez un assistant de code ?\",\"compare.allTime\":\"Rien ne précède le début : il n’y a rien à comparer.\",\"view.reset\":\"Réinitialiser\",\"view.resetHint\":\"Revenir aux 30 derniers jours, sans filtre ni comparaison\",\"settings.sharing\":\"Partage\",\"share.intro\":\"Un lien de partage montre les statistiques de ce site à quiconque l’a, sans connexion : les chiffres, les pages, les sources et les lieux. Il ne montre jamais vos liens courts, vos réglages ni l’adresse du site.\",\"share.namePlaceholder\":\"Pour qui, comme un client ou votre équipe\",\"share.create\":\"Créer un lien de partage\",\"share.empty\":\"Créez-en un ci-dessous et envoyez-le à qui doit voir ces statistiques.\",\"share.unnamed\":\"Sans titre\",\"share.open\":\"Ouvrir\",\"share.rename\":\"Renommer\",\"share.save\":\"Enregistrer\",\"share.revokeNote\":\"Supprimer un lien de partage le désactive aussitôt. Ceux qui l’avaient voient alors une page qui l’indique.\",\"share.gone\":\"La personne qui l’a partagé l’a désactivé. Demandez-lui un nouveau lien.\",\"live.title\":\"En ce moment\",\"live.sub\":\"Mis à jour toutes les 10 secondes\",\"live.now_one\":\"{n} personne sur le site\",\"live.now_other\":\"{n} personnes sur le site\",\"live.nowHint\":\"Toute personne ayant vu une page ou fait une action ces 5 dernières minutes.\",\"live.total_one\":\"{n} page vue ces 30 dernières minutes\",\"live.total_other\":\"{n} pages vues ces 30 dernières minutes\",\"live.minute_one\":\"{n} page vue à {time}\",\"live.minute_other\":\"{n} pages vues à {time}\",\"live.ago30\":\"il y a 30 min\",\"live.nowLabel\":\"Maintenant\",\"live.pages\":\"Pages\",\"live.sources\":\"Sources\",\"live.countries\":\"Pays\",\"live.nobody\":\"Les visiteurs s’affichent ici dès leur arrivée.\",\"live.feed\":\"Activité récente\",\"live.quiet\":\"Les visites des 30 dernières minutes s’affichent ici.\",\"live.someone\":\"Quelqu’un\",\"live.someoneIn\":\"Quelqu’un à {place}\",\"live.viewed\":\"{who} a vu {path}\",\"live.viewedVia\":\"{who} a vu {path} depuis {source}\",\"live.did\":\"{who} a fait {name} sur {path}\",\"live.didVia\":\"{who} a fait {name} sur {path}, depuis {source}\",\"welcome.title\":\"Ajoutez Runlight à {name}\",\"welcome.lead\":\"En attente de la première visite. Cette page se remplira toute seule.\",\"settings.goals\":\"Objectifs\",\"settings.funnels\":\"Entonnoirs\",\"panel.conversions\":\"Conversions\",\"goals.revenueAside\":\"{amount} de revenus\",\"goals.add\":\"Ajouter un objectif\",\"goals.emptyTitle\":\"Vos objectifs apparaîtront ici\",\"goals.emptyHint\":\"Un objectif compte ce qui vous importe, comme une inscription ou un clic sur un bouton. Un objectif d’événement ou de page compte aussi les visites passées, et un objectif de clic compte à partir de son ajout.\",\"goals.goal\":\"Objectif\",\"goals.rate\":\"Taux\",\"goals.conversions\":\"Conversions\",\"goals.unknown\":\"(aucun)\",\"goals.converted\":\"Personnes converties\",\"goals.revenue\":\"Revenus\",\"goals.overTime\":\"Conversions dans le temps\",\"goals.overTimeValued\":\"Conversions et revenus dans le temps, chacun à sa propre échelle\",\"goals.byChannel\":\"Par canal\",\"goals.bySource\":\"Par source\",\"goals.byPage\":\"Où c’est arrivé\",\"goals.describe.event\":\"Événement : {match}\",\"goals.describe.page\":\"Visites de {match}\",\"goals.describe.selector\":\"Clics sur {match}\",\"goals.describe.link\":\"Clics sur les liens vers {match}\",\"goals.value.each\":\"{amount} chacun\",\"goals.value.fromProp\":\"montant dans {prop}, en {currency}\",\"goals.name\":\"Nom\",\"goals.namePlaceholder\":\"Inscription, Achat, Appel réservé\",\"goals.counts\":\"Compte\",\"goals.kind.event\":\"Un événement\",\"goals.kind.page\":\"Une page visitée\",\"goals.kind.click\":\"Un clic\",\"goals.clickOn\":\"Clics sur\",\"goals.click.selector\":\"Un élément\",\"goals.click.link\":\"Des liens vers une adresse\",\"goals.match.event\":\"Nom de l’événement\",\"goals.match.page\":\"Page\",\"goals.match.link\":\"Adresse du lien\",\"goals.match.selector\":\"Sélecteur CSS\",\"goals.pick\":\"Choisir sur mon site\",\"goals.picking\":\"En attente de votre choix\",\"goals.hint.event\":\"Le nom envoyé avec runlight(\\\"Nom\\\") ou un attribut data-runlight.\",\"goals.hint.page\":\"Un chemin comme /merci. Utilisez * pour n’importe quoi : /blog/* ou /merci*. Une URL complète marche aussi.\",\"goals.hint.link\":\"Clics sur les liens dont l’adresse correspond. Utilisez * pour n’importe quoi, comme https://buy.stripe.com/*, ou commencez par / pour vos propres pages.\",\"goals.hint.selector\":\"N’importe quel sélecteur CSS. Ou utilisez Choisir sur mon site : votre site s’ouvre, cliquez sur l’élément, puis sur Utiliser.\",\"goals.valueLabel\":\"Valeur\",\"goals.value.none\":\"Aucune\",\"goals.value.fixed\":\"Un montant fixe\",\"goals.value.prop\":\"Un montant envoyé avec l’événement\",\"goals.amount\":\"Montant à chaque fois\",\"goals.property\":\"Propriété contenant le montant\",\"goals.currency\":\"Devise\",\"goals.save\":\"Enregistrer\",\"goals.create\":\"Ajouter l’objectif\",\"goals.cancel\":\"Annuler\",\"goals.edit\":\"Modifier\",\"goals.intro\":\"Les objectifs transforment les visites en conversions. Chacun compte un événement, une page visitée ou un clic, et peut porter une valeur pour voir les revenus par source et par page.\",\"goals.none\":\"Ajoutez-en un ci-dessous pour commencer à le compter.\",\"goals.pastNote\":\"Les objectifs se calculent sur les données déjà là, donc un nouvel objectif montre aussi les conversions passées. Les objectifs de clic commencent à compter environ cinq minutes après leur ajout.\",\"settings.email\":\"Rapports par e-mail\",\"settings.mail\":\"Service d’e-mail\",\"mail.intro\":\"Runlight envoie les rapports et les invitations par votre propre service d’e-mail. Configurez-le une fois et tous les sites l’utilisent.\",\"mail.service\":\"Service\",\"mail.optional\":\"(facultatif)\",\"mail.keepSaved\":\"Enregistré. Laissez vide pour le garder.\",\"mail.from\":\"Adresse d’expédition\",\"mail.fromName\":\"Nom d’expéditeur\",\"mail.fromHint\":\"Utilisez une adresse autorisée par votre service, sur un domaine vérifié chez lui.\",\"mail.save\":\"Enregistrer le service\",\"mail.change\":\"Modifier\",\"mail.fromLine\":\"Envoie depuis {from}\",\"mail.fromCode\":\"Défini dans le code. Envoie depuis {from}\",\"mail.testTo\":\"Envoyer un test à\",\"mail.test\":\"Envoyer un test\",\"mail.testSent\":\"Test envoyé à {to}. Vérifiez la boîte de réception et les indésirables.\",\"mail.notEncryptedTitle\":\"Vos clés seront stockées en clair\",\"mail.notEncrypted\":\"Ce Runlight n’a pas de RUNLIGHT_SECRET, donc les clés sont gardées dans sa base telles que vous les tapez. Définissez RUNLIGHT_SECRET ou RUNLIGHT_TOKEN sur le serveur pour les garder chiffrées.\",\"mail.field.region\":\"Région\",\"mail.field.accessKeyId\":\"ID de clé d’accès\",\"mail.field.secretAccessKey\":\"Clé d’accès secrète\",\"mail.field.apiKey\":\"Clé d’API\",\"mail.field.serverToken\":\"Jeton d’API du serveur\",\"mail.field.stream\":\"Flux de messages\",\"mail.field.domain\":\"Domaine d’envoi\",\"mail.field.secretKey\":\"Clé secrète\",\"mail.field.host\":\"Hôte\",\"mail.field.port\":\"Port\",\"mail.field.security\":\"Sécurité\",\"mail.field.username\":\"Identifiant\",\"mail.field.password\":\"Mot de passe\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Secret de signature\",\"reports.title\":\"Qui reçoit les rapports\",\"reports.intro\":\"Un résumé de {site} par e-mail : visiteurs, pages, sources, pays et conversions, comparés à la période précédente.\",\"reports.none\":\"Ajoutez une adresse e-mail ci-dessous pour commencer à les envoyer.\",\"reports.weekly\":\"Hebdomadaire\",\"reports.monthly\":\"Mensuel\",\"reports.frequency\":\"Fréquence\",\"reports.language\":\"Langue\",\"reports.lastSent\":\"dernier envoi {when}\",\"reports.never\":\"pas encore\",\"reports.sample\":\"Envoyer un exemple\",\"reports.sampleSent\":\"Exemple envoyé à {to}.\",\"reports.emailPlaceholder\":\"nom@exemple.com\",\"reports.add\":\"Ajouter\",\"reports.when\":\"Les rapports hebdomadaires couvrent du lundi au dimanche et partent le lundi dès 8 h, les mensuels le 1er, dans le fuseau du site. Ils sont envoyés par la vérification horaire (un cron qui appelle POST /api/check).\",\"reports.needsMail\":\"Les rapports partent dès qu’un service d’e-mail est configuré. Un seul service les envoie pour tous les sites.\",\"reports.setUpMail\":\"Configurer le service d’e-mail\",\"reports.needsMailTitle\":\"Pas encore de service d’e-mail\",\"email.subject.week\":\"{site} : {who} la semaine dernière\",\"email.subject.month\":\"{site} : {who} en {month}\",\"email.when.week\":\"la semaine dernière\",\"email.before.week\":\"la semaine précédente\",\"email.when.month\":\"en {month}\",\"email.range\":\"du {from} au {to}\",\"email.pages\":\"Pages principales\",\"email.sources\":\"Sources principales\",\"email.countries\":\"Pays principaux\",\"email.conversions\":\"Conversions\",\"email.open\":\"Ouvrir le tableau de bord\",\"email.at\":\"Votre tableau de bord se trouve sur {where}\",\"email.footer\":\"Vous recevez ce rapport {frequency} pour {site} de la part de Runlight.\",\"email.weekly\":\"hebdomadaire\",\"email.monthly\":\"mensuel\",\"email.unsubscribe\":\"Se désabonner\",\"email.test.subject\":\"Runlight peut envoyer des e-mails\",\"email.test.body\":\"Ce test est passé par {service}. Les rapports de vos sites arriveront de la même façon.\",\"email.unsub.title\":\"Arrêter les rapports pour {site} ?\",\"email.unsub.body\":\"{email} ne recevra plus de rapports pour ce site.\",\"email.unsub.doneTitle\":\"Vous êtes désabonné\",\"email.unsub.done\":\"Plus aucun rapport pour {site} n’arrivera à {email}.\",\"email.unsub.goneTitle\":\"Rien à désabonner\",\"email.unsub.gone\":\"Ce lien a déjà servi, ou le rapport a été supprimé.\",\"settings.api\":\"API et IA\",\"tokens.intro\":\"Interrogez votre assistant IA sur vos statistiques. Créez un jeton, puis ajoutez Runlight à Claude, Cursor ou toute application qui se connecte aux serveurs MCP. Un jeton de lecture ne modifie jamais rien, et un jeton de gestion peut changer les réglages d’un site. Le même jeton fonctionne avec l’API HTTP.\",\"tokens.server\":\"Adresse du serveur MCP\",\"tokens.namePlaceholder\":\"À quoi il sert, par exemple Claude ou un script\",\"tokens.scope\":\"Les sites qu’il peut lire\",\"tokens.allSites\":\"Tous les sites\",\"tokens.siteOnly\":\"{site} seulement\",\"tokens.create\":\"Créer un jeton\",\"tokens.empty\":\"Créez-en un ci-dessous pour connecter un assistant IA ou un script.\",\"tokens.used\":\"utilisé le {date}\",\"tokens.never\":\"jamais utilisé\",\"tokens.revokeNote\":\"Supprimer un jeton l’arrête aussitôt.\",\"tokens.once\":\"Copiez ce jeton maintenant. Il n’est affiché qu’une fois, et Runlight n’en garde qu’une empreinte.\",\"tokens.claudeCode\":\"Claude Code reçoit le jeton avec cette commande.\",\"tokens.json\":\"Cursor et les autres applications qui prennent une configuration JSON mcpServers utilisent plutôt ceci.\",\"tokens.done\":\"C’est fait, je l’ai copié\",\"sites.domains\":\"Domaines\",\"sites.domainsHint\":\"Saisissez le domaine du site, par exemple example.com, et séparez-en plusieurs par des virgules.\",\"sites.name\":\"Nom\",\"sites.namePlaceholder\":\"Mon blog\",\"sites.timezoneHint\":\"Les jours sont comptés selon {zone}, que vous pourrez changer plus tard dans les réglages.\",\"sites.add\":\"Ajouter le site\",\"sites.addTitle\":\"Ajouter un site\",\"sites.firstTitle\":\"Ajoutez votre premier site\",\"sites.firstLead\":\"Runlight compte chaque site que vous ajoutez ici. Saisissez le domaine du site, et l’écran suivant affiche la balise de script à placer sur ses pages.\",\"sites.delete\":\"Supprimer ce site\",\"sites.deleteHint\":\"Supprimer un site efface chaque visite, lien, objectif et rapport enregistré pour lui, sans retour possible.\",\"app.signOut\":\"Se déconnecter\",\"install.ignoreServer\":\"Pour ne plus compter vos propres visites, ouvrez {link} une fois dans chaque navigateur que vous utilisez.\",\"panel.geoCredit\":\"Lieux par {name}\",\"visits.tab\":\"Visites\",\"visits.linksTab\":\"Liens courts\",\"visits.intro\":\"Récupérez votre historique de visites pour que vos graphiques remontent avant le jour où Runlight a commencé à compter. Seules les visites antérieures à la première de Runlight sont importées, donc rien n’est compté deux fois.\",\"visits.onlyUmami\":\"L’API d’Umami fournit chaque visite avec sa page, sa source, son lieu et son appareil, ce que Runlight conserve. Plausible, Fathom et Google Analytics ne donnent que des totaux, et des totaux ne redeviennent pas des visites. Si vous avez chaque page vue dans un fichier, importez-le plutôt en CSV.\",\"visits.csvMoment\":\"Plus de {max} lignes partagent le même instant, plus qu’un lot ne peut en contenir.\",\"visits.csvStopped\":\"Arrêté. Réimporter le même fichier est sans risque, car les lignes déjà importées sont remplacées.\",\"visits.csvSkipped\":\"{n} lignes ont été laissées de côté, car elles venaient après la première visite propre de Runlight, avant ce que ce site conserve, ou n’étaient ni une page vue ni un événement nommé.\",\"visits.csvRunning\":\"{done} lignes envoyées sur {total}, {pageviews} pages vues jusqu’ici\",\"visits.csvRunlight\":\"{name} est au format de visites de Runlight, avec {rows} lignes.\",\"visits.csvUmami\":\"{name} est un export Umami de {rows} lignes.\",\"visits.csvOther\":\"Choisir un autre fichier\",\"visits.csvChoose\":\"Choisir un fichier CSV\",\"visits.csvHelp\":\"Utilisez le CSV de l’export de données d’Umami, ou un fichier avec une ligne par page vue au format de visites de Runlight, décrit dans la documentation du tableau de bord.\",\"visits.fromCsv\":\"Un fichier CSV\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Importer depuis\",\"visits.onlyUmamiTitle\":\"Pourquoi seulement Umami\",\"visits.find\":\"Trouver les sites\",\"visits.website\":\"Site Umami\",\"visits.noWebsites\":\"Ce compte Umami n’a aucun site.\",\"visits.start\":\"Importer les visites\",\"visits.running\":\"{done} jours lus sur {total}, {pageviews} pages vues pour l’instant\",\"visits.done\":\"Terminé. {pageviews} pages vues et {events} événements sont arrivés, en {visits} visites.\",\"visits.stopped\":\"Arrêté. Relancez pour reprendre au dernier jour importé.\",\"props.title\":\"Propriétés\",\"props.open\":\"Propriétés de {name}\",\"props.none\":\"Ils apparaissent quand l’événement est envoyé avec des propriétés.\",\"account.title\":\"Compte\",\"account.owner\":\"Vous êtes le propriétaire, vous pouvez donc tout modifier et gérer les personnes. Personne d’autre ne peut vous retirer.\",\"account.viewer\":\"Vous êtes lecteur, vous pouvez donc consulter les statistiques de chaque site sans rien modifier.\",\"account.current\":\"Mot de passe actuel\",\"account.next\":\"Nouveau mot de passe\",\"account.nextHint\":\"Utilisez au moins dix caractères. Le changer déconnecte vos autres navigateurs.\",\"account.save\":\"Changer le mot de passe\",\"account.saved\":\"Mot de passe changé\",\"settings.people\":\"Personnes\",\"people.intro\":\"Tout le monde ici peut se connecter à ce serveur. Les administrateurs peuvent tout modifier comme le propriétaire et gérer les personnes, mais personne ne peut retirer le propriétaire. Les membres modifient les réglages de chaque site, et les lecteurs lisent les statistiques de chaque site sans rien changer. Invitez un collègue et il choisit son propre mot de passe.\",\"people.you\":\"vous\",\"people.role\":\"Rôle\",\"people.owner\":\"Propriétaire\",\"people.viewer\":\"Lecteur\",\"people.roles\":\"Les membres ne peuvent pas gérer les personnes, configurer le service d’e-mail ou l’assistant, ni supprimer un site. Seul le propriétaire peut transmettre la propriété à un administrateur.\",\"people.emailPlaceholder\":\"Son adresse e-mail\",\"pluginKey.title\":\"Clé pour les extensions CMS\",\"pluginKey.intro\":\"Les extensions WordPress, Drupal et Craft utilisent cette clé pour signaler les agents IA qui lisent les pages de ce site. Elle ne peut signaler que pour ce site et ne peut rien lire. La remplacer arrête aussitôt l’ancienne.\",\"pluginKey.replace\":\"Remplacer la clé\",\"export.csv\":\"Télécharger le CSV\",\"export.zip\":\"Exporter\",\"export.title\":\"Télécharger tout ce que montre cette vue en fichiers CSV\",\"funnels.title\":\"Entonnoirs\",\"funnels.intro\":\"Un entonnoir suit les étapes qu’une visite devrait franchir, par exemple la page des tarifs puis l’inscription, et montre combien de visites ont franchi chaque étape, dans l’ordre.\",\"funnels.none\":\"Ajoutez-en un ci-dessous pour voir où les gens s’arrêtent en chemin.\",\"funnels.add\":\"Ajouter un entonnoir\",\"funnels.name\":\"Nom\",\"funnels.namePlaceholder\":\"Inscription\",\"funnels.steps\":\"Étapes\",\"funnels.stepsHint\":\"Un chemin de page peut utiliser * pour tout accepter, comme /blog/*. Chaque étape doit suivre la précédente, dans la même visite.\",\"funnels.kind\":\"Type d’étape\",\"funnels.page\":\"Page\",\"funnels.event\":\"Événement\",\"funnels.removeStep\":\"Retirer cette étape\",\"funnels.addStep\":\"Ajouter une étape\",\"funnels.save\":\"Enregistrer l’entonnoir\",\"funnels.create\":\"Créer l’entonnoir\",\"funnels.stepPage\":\"Page {match}\",\"funnels.stepEvent\":\"Événement {match}\",\"funnels.wentOn\":\"{pct} ont continué\",\"funnels.tab\":\"Entonnoirs\",\"funnels.goalsTab\":\"Objectifs\",\"sites.modeHere\":\"Le compter ici\",\"sites.modeConnect\":\"Connecter un autre Runlight\",\"sites.connectIntro\":\"Connectez ici un site qui se compte déjà avec Runlight dans sa propre application. Ses chiffres restent là-bas. Vous vous y connectez une fois et autorisez ce serveur, puis vous pouvez voir et modifier le site d’ici.\",\"sites.connectUrl\":\"Son adresse Runlight\",\"sites.connectToken\":\"Jeton d’API\",\"sites.connectTokenHint\":\"Créez un jeton sur cette installation, dans Réglages, API et IA. Avec un jeton de lecture, les chiffres s’affichent ici et les réglages restent là-bas.\",\"sites.connect\":\"Connecter\",\"sites.all\":\"Tous les sites\",\"sites.remoteNote\":\"Ce site est compté par son propre Runlight à {url}, qui autorise ce serveur à le lire. Autorisez les modifications pour gérer aussi ses réglages d’ici.\",\"sites.disconnect\":\"Déconnecter ce site\",\"sites.disconnectHint\":\"La déconnexion retire le site de ce serveur. Son propre Runlight et tout ce qu’il a compté restent tels quels.\",\"sites.disconnectButton\":\"Déconnecter le site\",\"sites.confirmDisconnect\":\"Confirmer la déconnexion\",\"sites.disconnectName\":\"Déconnecter {name} ?\",\"settings.data\":\"Données\",\"data.retention\":\"Conserver les visites\",\"data.retentionHint\":\"Les visites et événements plus anciens sont supprimés définitivement à l’enregistrement, puis chaque jour. Les objectifs, liens et réglages restent.\",\"data.forever\":\"Toujours\",\"data.months\":\"{n} mois\",\"data.years\":\"{n} ans\",\"data.deletesBefore\":\"Les visites antérieures au {date} seront supprimées à l’enregistrement.\",\"data.unreachable\":\"Impossible de joindre {url} pour lire ce réglage. Réessayez dans une minute.\",\"data.export\":\"Tout exporter\",\"data.exportHint\":\"Le ZIP contient tous les rapports de ce site depuis sa première visite, en fichiers CSV.\",\"data.download\":\"Télécharger le ZIP\",\"sites.remoteTitle\":\"Compté par un autre Runlight\",\"sites.openRemote\":\"Ouvrir son tableau de bord\",\"sites.useToken\":\"Utiliser plutôt un jeton d’API\",\"sites.useSignIn\":\"Se connecter plutôt à cette installation\",\"sites.remoteManaged\":\"Ce site est compté par son propre Runlight à {url}. Les modifications faites ici y sont enregistrées.\",\"sites.allowChanges\":\"Autoriser les modifications\",\"sites.reconnect\":\"Reconnecter\",\"sites.reconnectHint\":\"Utile si l’installation n’accepte plus ce serveur, par exemple après la suppression de son jeton.\",\"sites.connectError.expired\":\"Cette connexion a pris trop de temps ou a déjà servi. Recommencez.\",\"sites.connectError.denied\":\"La connexion n’a pas été autorisée.\",\"sites.connectError.refused\":\"L’installation n’a pas laissé ce serveur se connecter. Recommencez, ou connectez-la avec un jeton d’API.\",\"sites.connectError.token\":\"L’installation n’a pas donné de jeton à ce serveur. Recommencez.\",\"sites.connectError.failed\":\"La connexion n’a pas abouti. Recommencez.\",\"mail.fromRemote\":\"Envoyé par {host} depuis {from}\",\"mail.noneRemote\":\"{host} n’a pas encore de service d’e-mail, il ne peut donc pas envoyer ces rapports. Configurez-en un dans son propre tableau de bord, sous Réglages, Service d’e-mail.\",\"tokens.manages\":\"Peut modifier les réglages\",\"account.again\":\"Nouveau mot de passe, encore une fois\",\"account.mismatch\":\"Les deux nouveaux mots de passe ne sont pas identiques.\",\"account.strength0\":\"Trop court\",\"account.strength1\":\"Faible\",\"account.strength2\":\"Moyen\",\"account.strength3\":\"Bon\",\"account.strength4\":\"Fort\",\"mail.introRemote\":\"Les rapports de ce site partent par le service d’e-mail configuré sur {host}.\",\"settings.assistant\":\"Assistant IA\",\"assistant.open\":\"Interroger vos statistiques\",\"assistant.title\":\"Assistant IA\",\"assistant.about\":\"Il répond à partir des chiffres de {site}, qu’il lit au moment où vous demandez.\",\"assistant.clear\":\"Nouvelle discussion\",\"assistant.intro\":\"Posez une question sur les visiteurs, les sources, les pages, les objectifs, ou tout ce que montre ce tableau de bord.\",\"assistant.ask1\":\"Comment cette période se compare-t-elle à la précédente ?\",\"assistant.ask2\":\"D’où viennent la plupart des visiteurs ?\",\"assistant.ask3\":\"Quelles pages retiennent le plus longtemps ?\",\"assistant.ask4\":\"Les assistants IA envoient-ils des visiteurs ici ?\",\"assistant.placeholder\":\"Posez une question\",\"assistant.send\":\"Envoyer\",\"assistant.thinking\":\"Lecture de vos chiffres\",\"assistant.empty\":\"L’assistant n’a rien répondu.\",\"assistant.checked_one\":\"{n} rapport lu\",\"assistant.checked_other\":\"{n} rapports lus\",\"assistant.setupOwner\":\"L’assistant a besoin d’un service d’IA pour répondre. Ajoutez une clé Anthropic, OpenAI ou Gemini, ou indiquez un modèle sur votre propre machine.\",\"assistant.setupViewer\":\"L’assistant n’est pas encore configuré. Le propriétaire ou un administrateur peut ajouter un service d’IA dans Réglages, Assistant IA.\",\"assistant.setup\":\"Configurer l’assistant\",\"assistant.ownersOnly\":\"Seul le propriétaire ou un administrateur peut configurer l’assistant.\",\"assistant.settingsIntro\":\"Choisissez un service d’IA et collez ci-dessous une clé d’API de ce service. Le bouton robot à côté de Filtrer ouvre alors un assistant qui répond simplement aux questions sur vos statistiques.\",\"assistant.privacyTitle\":\"Ce que voit le service\",\"assistant.privacy\":\"Chaque question part vers ce service avec les chiffres que l’assistant lit pour répondre. Runlight ne garde rien sur les visiteurs individuels, donc rien de personnel n’est envoyé. L’assistant ne fait que lire, avec les mêmes outils que le serveur MCP, il ne peut donc rien modifier.\",\"assistant.notEncryptedTitle\":\"Votre clé sera stockée en clair\",\"assistant.notEncrypted\":\"Ce Runlight n’a pas de RUNLIGHT_SECRET, donc la clé est gardée dans sa base telle que vous la tapez. Définissez RUNLIGHT_SECRET ou RUNLIGHT_TOKEN sur le serveur pour la garder chiffrée.\",\"assistant.provider\":\"Service d’IA\",\"assistant.address\":\"Adresse\",\"assistant.addressHint\":\"L’adresse de l’API compatible OpenAI du service, qui s’arrête avant /chat/completions.\",\"assistant.addressLocal\":\"Là où tourne le modèle. Le serveur qui fait tourner Runlight doit pouvoir l’atteindre.\",\"assistant.model\":\"Modèle\",\"assistant.modelPlaceholder\":\"Le nom du modèle, tel que le service l’indique\",\"assistant.modelDefault\":\"Laissez vide pour utiliser {model}.\",\"assistant.modelHint\":\"Saisissez la clé ci-dessus, puis chargez les modèles du service, ou tapez le nom d’un modèle. Un modèle qui sait appeler des outils fonctionne le mieux.\",\"assistant.key\":\"Clé d’API\",\"assistant.remove\":\"Désactiver l’assistant\",\"assistant.removeHint\":\"Supprime le service et sa clé. Le bouton robot demande alors à un propriétaire de le reconfigurer.\",\"journeys.open\":\"Parcours\",\"journeys.title\":\"Parcours\",\"journeys.intro\":\"Les chemins que prennent les visites sur le site, page par page. Cliquez sur une page pour ne suivre que les visites qui y sont passées.\",\"journeys.steps\":\"Étapes\",\"journeys.stepCount\":\"{n} étapes\",\"journeys.start\":\"En partant de\",\"journeys.end\":\"En finissant sur\",\"journeys.anyPage\":\"N’importe quelle page\",\"journeys.step\":\"Étape {n}\",\"journeys.other\":\"Autres pages\",\"journeys.left\":\"{n} se sont arrêtées là\",\"journeys.follow\":\"Suivre les visites passées par {page}\",\"journeys.following\":\"Visites passées par {page} à l’étape {step}.\",\"journeys.none\":\"Essayez une période plus large pour voir plus de visites.\",\"secret.show\":\"Afficher\",\"secret.hide\":\"Masquer\",\"people.invite\":\"Inviter\",\"people.invited\":\"invité\",\"people.invitedMeta\":\"{role}, le lien fonctionne jusqu’au {date}\",\"people.resend\":\"Renvoyer\",\"people.emailed\":\"Une invitation part vers {email}. Vous pouvez aussi lui envoyer ce lien vous-même.\",\"people.noMail\":\"Ce serveur n’a pas de service d’e-mail, envoyez donc ce lien à {email} vous-même. Configurez-en un dans Réglages, Service d’e-mail pour envoyer les invitations par e-mail.\",\"people.mailFailed\":\"L’e-mail à {email} n’est pas parti ({error}). Envoyez-lui ce lien vous-même.\",\"people.linkHint\":\"Le lien fonctionne une fois, pendant sept jours. Renvoyer crée un nouveau lien et désactive celui-ci.\",\"twofa.title\":\"Connexion à deux facteurs\",\"twofa.off\":\"Désactivée. Activez-la et la connexion demande aussi un code d’une application d’authentification sur votre téléphone.\",\"twofa.on_one\":\"Activée. La connexion demande un code de votre application d’authentification. Il vous reste {n} code de secours.\",\"twofa.on_other\":\"Activée. La connexion demande un code de votre application d’authentification. Il vous reste {n} codes de secours.\",\"twofa.turnOn\":\"Activer\",\"twofa.turnOff\":\"Désactiver\",\"twofa.newCodes\":\"Nouveaux codes de secours\",\"twofa.password\":\"Votre mot de passe\",\"twofa.continue\":\"Continuer\",\"twofa.scan\":\"Scannez ceci avec une application d’authentification, comme 1Password, Google Authenticator ou Authy, puis saisissez le code à six chiffres qu’elle affiche.\",\"twofa.qr\":\"Code QR pour votre application d’authentification\",\"twofa.manual\":\"Ou saisissez cette clé dans l’application.\",\"twofa.code\":\"Code de l’application\",\"twofa.confirm\":\"Activer\",\"twofa.codesIntro\":\"Gardez ces codes de secours en lieu sûr. Chacun vous connecte une fois si vous perdez votre téléphone, et ils ne seront plus affichés.\",\"twofa.download\":\"Télécharger\",\"twofa.copy\":\"Copier\",\"twofa.saved\":\"Je les ai enregistrés\",\"people.twoFactor\":\"deux facteurs\",\"people.resetTwoFactor\":\"Réinitialiser les deux facteurs\",\"people.resetTwoFactorHint\":\"Désactive la connexion à deux facteurs pour cette personne, si elle a perdu son téléphone et ses codes de secours\",\"assistant.loadModels\":\"Charger les modèles\",\"assistant.loadingModels\":\"Chargement\",\"assistant.pickModel\":\"Choisissez un modèle\",\"assistant.typeModel\":\"Saisir plutôt le nom d’un modèle\",\"assistant.chooseFromList\":\"Choisir dans la liste\",\"journeys.sampled\":\"Ce sont les chemins des {n} visites les plus récentes sur ces dates.\",\"error.owner_only\":\"Seul un propriétaire peut modifier ceci.\",\"error.domain_invalid\":\"Ce n’est pas un nom de domaine.\",\"error.domain_in_use\":\"{domain} héberge ce tableau de bord ou l’un de vos sites. Utilisez un domaine ou un sous-domaine à part pour les liens courts, comme go.{domain}.\",\"error.domain_taken\":\"{domain} appartient déjà à un autre site.\",\"error.link_url\":\"La destination doit être une URL complète, commençant par https://\",\"error.link_protocol\":\"La destination doit commencer par http:// ou https://\",\"error.link_long\":\"La destination dépasse 2 000 caractères.\",\"error.link_domain\":\"Ajoutez d’abord {domain} comme domaine de liens dans les réglages.\",\"error.link_slug\":\"Un slug se compose de lettres, de chiffres, de tirets et de tirets bas, 100 au plus.\",\"error.link_taken\":\"/{slug} est déjà pris.\",\"error.link_no_slug\":\"Aucun slug libre n’a été trouvé. Réessayez.\",\"error.test_email\":\"Saisissez l’adresse e-mail à laquelle envoyer le test.\",\"error.mail_unset\":\"Configurez d’abord un service d’e-mail.\",\"error.email_invalid\":\"Saisissez une adresse e-mail.\",\"error.report_exists\":\"{email} reçoit déjà ce rapport.\",\"error.report_limit\":\"Un site peut envoyer à 50 adresses au plus.\",\"error.sample_soon\":\"Un exemple vient de partir. Patientez une minute et réessayez.\",\"error.people_owner\":\"Seul le propriétaire ou un administrateur peut gérer les personnes.\",\"error.role_needed\":\"Choisissez administrateur, membre ou lecteur.\",\"error.account_exists\":\"{email} a déjà un compte.\",\"error.remove_self\":\"Vous ne pouvez pas vous retirer vous-même.\",\"people.demoted\":\"Vous êtes désormais lecteur, donc les réglages sont fermés et rien ici ne peut être modifié. Le propriétaire ou un administrateur peut le rétablir.\",\"links.importNoUrl\":\"Rien n’a été importé, car le fichier n’a pas de colonne url remplie d’adresses. Utilisez les colonnes name et url, plus slug et domain si vous les avez.\",\"app.sessionEnded\":\"Vous avez été déconnecté, ce qui arrive quand une session expire ou qu’un mot de passe change. {link} et vous reviendrez à cette vue.\",\"app.signInAgain\":\"Reconnectez-vous\",\"links.noneYet\":\"Personne n’a encore créé de lien court pour ce site.\",\"error.remote_slow\":\"{host} a mis trop de temps à répondre. Essayez une période plus courte.\",\"error.domain_not_public\":\"{domain} n’est pas un nom de domaine public. Utilisez un domaine accessible depuis n’importe quel navigateur.\",\"error.unreachable\":\"Impossible de joindre {host}.\",\"error.redirected\":\"{host} a répondu par une redirection.\",\"error.token_refused\":\"{host} a refusé le jeton. Connectez-le de nouveau depuis les réglages du site.\",\"error.mail_failed\":\"L’e-mail n’a pas pu être envoyé ({detail}).\",\"error.mail_unreachable\":\"Impossible de joindre {host}.\",\"error.mail_slow\":\"{host} a mis trop de temps à répondre, l’e-mail n’a donc pas été envoyé.\",\"error.mail_refused\":\"{host} a refusé l’e-mail ({detail}).\",\"error.mail_service\":\"Choisissez un service d’e-mail.\",\"error.mail_field\":\"Le champ {field} est requis.\",\"error.mail_option\":\"{field} doit être l’une de ces valeurs ({options}).\",\"error.mail_https\":\"L’URL du webhook doit utiliser https.\",\"error.mail_region\":\"Ce n’est pas une région AWS, comme us-east-1.\",\"error.mail_in_code\":\"Le service d’e-mail est défini dans le code, il ne peut donc pas être modifié ici.\",\"error.mail_from\":\"Saisissez l’adresse d’expédition des rapports, comme reports@example.com.\",\"error.smtp_starttls\":\"Le serveur SMTP ne propose pas STARTTLS. Choisissez TLS ou aucune pour la sécurité.\",\"error.unknown_account\":\"Ce compte n’existe plus.\",\"error.password_short\":\"Utilisez un mot de passe d’au moins {min} caractères.\",\"error.invite_gone\":\"Cette invitation a expiré ou a déjà servi. Demandez-en une nouvelle.\",\"error.too_many_tries\":\"Trop de tentatives. Patientez quinze minutes et réessayez.\",\"error.password_current_wrong\":\"Votre mot de passe actuel n’est pas correct.\",\"error.password_wrong\":\"Votre mot de passe n’est pas correct.\",\"error.code_wrong\":\"Ce code n’est pas correct. Vérifiez l’heure de votre téléphone et essayez le suivant.\",\"error.twofactor_off\":\"Activez d’abord la connexion à deux facteurs.\",\"error.twofactor_self\":\"Désactivez votre propre connexion à deux facteurs dans Compte.\",\"error.unknown_invite\":\"Cette invitation n’existe plus.\",\"error.origin_needed\":\"Indiquez d’abord l’adresse de ce Runlight (RUNLIGHT_URL sur le serveur, ou origin dans routes()) pour qu’un hub connecté puisse ajouter des domaines de liens et des rapports par e-mail.\",\"error.twofactor_restart\":\"Trop de codes erronés. Recommencez l’activation de la connexion à deux facteurs.\",\"error.pick_origin\":\"Envoyez l’origine du tableau de bord, par exemple https://stats.example.com\",\"error.pick_hub\":\"L’adresse de ce hub n’est pas celle depuis laquelle il s’est connecté. Connectez à nouveau le site depuis ici.\",\"assistant.viewerDaily\":\"Questions par lecteur et par jour\",\"assistant.viewerDailyHint\":\"Chaque question est payée avec votre clé d’IA. Les lecteurs sont les personnes que vous invitez dans Personnes, qui peuvent lire les statistiques sans rien modifier, et chacun peut poser ce nombre de questions par jour. Mettez 0 pour réserver l’assistant aux propriétaires. Les liens de partage n’ont jamais accès à l’assistant.\",\"error.assistant_soon\":\"Vous avez posé beaucoup de questions en peu de temps. Patientez un peu, puis réessayez.\",\"error.assistant_daily\":\"Les lecteurs peuvent poser {limit} questions par jour. Réessayez demain.\",\"error.assistant_limit\":\"Utilisez un nombre entier de 0 à 1 000.\",\"error.token_unset\":\"Définissez RUNLIGHT_TOKEN, ou passez token ou authorize à routes(). Sans cela, Runlight n’est ouvert que lorsque NODE_ENV vaut development.\",\"error.unauthorized\":\"Connectez-vous ou envoyez un jeton pour voir ceci.\",\"error.sign_in\":\"Connectez-vous d’abord.\",\"error.unknown_site\":\"Ce site n’est pas ici.\",\"error.filters_max\":\"Utilisez au plus {max} filtres à la fois.\",\"error.filter_bad\":\"Runlight ne sait pas lire le filtre « {filter} ».\",\"error.range_bad\":\"Ces dates ne forment pas une période que Runlight sait lire.\",\"error.compare_bad\":\"Runlight ne connaît pas la comparaison « {compare} ».\",\"error.compare_range_bad\":\"Choisissez les deux dates de comparaison.\",\"error.send_json\":\"Envoyez ceci en JSON.\",\"error.send_object\":\"Envoyez un objet JSON.\",\"error.unknown_domain\":\"Ce domaine n’appartient pas à ce site.\",\"error.rows_needed\":\"Envoyez les liens sous forme de liste de lignes.\",\"error.unknown_link\":\"Ce lien n’existe plus.\",\"error.not_found\":\"Ce n’est pas ici.\",\"error.unknown_goal\":\"Cet objectif n’existe plus.\",\"error.goal_invalid\":\"L’objectif n’a pas été enregistré ({detail}).\",\"error.funnel_invalid\":\"L’entonnoir n’a pas été enregistré ({detail}).\",\"error.import_failed\":\"L’import s’est arrêté ({detail}).\",\"error.assistant_failed\":\"Le service d’IA n’a pas répondu comme prévu ({detail}).\",\"error.assistant_invalid\":\"L’assistant n’a pas été enregistré ({detail}).\",\"error.site_invalid\":\"Le site n’a pas été enregistré ({detail}).\",\"error.connect_failed\":\"La connexion n’a pas commencé ({detail}).\",\"error.method_not_allowed\":\"Ce n’est pas possible ici.\",\"error.unknown_report\":\"Ce rapport n’existe plus.\",\"error.unknown_share\":\"Ce lien de partage n’existe plus.\",\"error.token_name\":\"Nommez le jeton.\",\"error.token_site\":\"Un jeton qui modifie les réglages est pour un seul site. Choisissez le site.\",\"error.unknown_token\":\"Ce jeton n’existe plus.\",\"error.sites_in_code\":\"Les sites sont définis dans le code ici, alors ils se modifient là.\",\"error.connect_url\":\"Saisissez l’adresse de l’installation, par exemple https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} n’a pas répondu comme une installation Runlight.\",\"error.connect_endpoints\":\"{url} a indiqué des points d’accès sur une autre adresse.\",\"error.connect_old\":\"{url} utilise une ancienne version de Runlight. Mettez-la à jour, ou connectez-la avec un jeton d’API de ses réglages.\",\"error.connect_register\":\"{url} n’a pas laissé ce serveur se connecter. {reason}\",\"error.connect_expired\":\"Cette connexion a pris trop de temps ou a déjà servi. Recommencez.\",\"error.connect_denied\":\"La connexion n’a pas été autorisée.\",\"error.connect_refused\":\"L’installation n’a pas laissé ce serveur se connecter. Recommencez, ou connectez-la avec un jeton d’API.\",\"error.connect_token\":\"L’installation n’a pas donné de jeton à ce serveur. Recommencez.\",\"error.connect_again\":\"Connectez à nouveau ce site pour le modifier d’ici.\",\"error.hub_domains\":\"Un hub connecté ne peut pas changer les domaines d’un site.\",\"error.observe_many\":\"Envoyez au plus 500 requêtes à la fois.\",\"error.observe_url\":\"Envoyez l’adresse de la page.\",\"error.site_remote\":\"Ce site est compté par son propre Runlight. Connectez-le à nouveau depuis ses réglages pour le modifier d’ici.\",\"error.unknown_funnel\":\"Cet entonnoir n’existe plus.\",\"error.assistant_dashboard\":\"Seul le tableau de bord peut utiliser l’assistant.\",\"error.share_not_available\":\"Ce n’est pas disponible sur un tableau de bord partagé.\",\"error.assistant_unset\":\"L’assistant n’est pas encore configuré. Un propriétaire peut le faire dans Réglages, Assistant IA.\",\"error.question_needed\":\"Posez une question.\",\"error.site_name\":\"Un nom de site fait de 1 à 80 caractères.\",\"error.unknown_timezone\":\"Runlight ne connaît pas le fuseau horaire « {timezone} ».\",\"error.retention_bad\":\"Conservez les visites {months} mois, ou pour toujours.\",\"error.share_gone\":\"Ce lien de partage ne fonctionne plus.\",\"error.token_read_only\":\"Les jetons d’API ne peuvent que lire.\",\"error.icon_none\":\"Ce site n’a pas d’icône.\",\"error.event_needed\":\"Nommez l’événement.\",\"error.property_bad\":\"Runlight ne sait pas lire ce nom de propriété.\",\"error.unknown_dimension\":\"Runlight ne connaît pas la répartition « {dimension} ».\",\"error.internal\":\"Une erreur s’est produite sur le serveur. Réessayez.\",\"filter.max\":\"Jusqu’à {max} filtres s’appliquent à la fois. Retirez-en un pour en ajouter un autre.\",\"error.sample_soon_hub\":\"Un hub connecté peut envoyer un exemple toutes les dix minutes. Patientez quelques minutes et réessayez.\",\"people.demoteSelf\":\"Seul le propriétaire ou un administrateur pourra le rétablir.\",\"people.demoteConfirm\":\"Passer en {role}\",\"error.check_not_public\":\"ce n’est pas un nom de domaine public\",\"error.check_timeout\":\"il a mis trop de temps à répondre\",\"error.check_https\":\"il est injoignable en HTTPS\",\"error.check_not_runlight\":\"quelque chose a répondu, mais pas Runlight\",\"error.check_status\":\"il a répondu {status}\",\"error.assistant_address\":\"Saisissez l’adresse du service dans Réglages, Assistant IA.\",\"error.assistant_address_bad\":\"Saisissez l’adresse du service, en commençant par https://\",\"error.assistant_cancelled\":\"La question a été annulée.\",\"error.assistant_key\":\"Saisissez votre clé {provider}.\",\"error.assistant_model\":\"Saisissez un modèle dans Réglages, Assistant IA.\",\"error.assistant_no_models\":\"{host} n’a listé aucun modèle. Saisissez plutôt le nom du modèle.\",\"error.assistant_provider\":\"Choisissez un service d’IA dans Réglages, Assistant IA.\",\"error.assistant_refused\":\"{host} a refusé la demande ({detail}).\",\"error.assistant_slow\":\"Cette question a pris trop de temps. Essayez une question plus précise.\",\"error.assistant_status\":\"{host} a répondu {status}.\",\"error.assistant_steps\":\"L’assistant a eu besoin de trop d’étapes pour cette question. Essayez une question plus précise.\",\"error.assistant_timeout\":\"{host} a mis trop de temps à répondre.\",\"error.funnel_exists\":\"Il existe déjà un entonnoir nommé « {name} ».\",\"error.funnel_long\":\"Un entonnoir a au plus huit étapes.\",\"error.funnel_name\":\"Donnez un nom à l’entonnoir.\",\"error.funnel_page_bad\":\"« {match} » n’est ni un chemin ni une URL.\",\"error.funnel_short\":\"Un entonnoir a besoin d’au moins deux étapes.\",\"error.goal_amount\":\"Saisissez un montant, par exemple 49 ou 9,99.\",\"error.goal_click_taken\":\"L’objectif de clic « {match} » envoie déjà des événements portant ce nom.\",\"error.goal_currency\":\"Utilisez un code de devise à trois lettres, comme USD ou EUR.\",\"error.goal_event\":\"Saisissez le nom de l’événement.\",\"error.goal_event_taken\":\"Un objectif d’événement compte déjà les événements « {name} », alors donnez un autre nom à cet objectif de clic.\",\"error.goal_exists\":\"Il existe déjà un objectif nommé « {name} ».\",\"error.goal_kind\":\"Choisissez ce que compte l’objectif, un événement, une visite de page ou un clic.\",\"error.goal_link\":\"Saisissez l’adresse du lien, par exemple https://buy.stripe.com/*\",\"error.goal_name\":\"Donnez un nom à l’objectif.\",\"error.goal_page\":\"Saisissez un chemin de page, par exemple /merci ou /blog/*\",\"error.goal_page_bad\":\"Cette page n’est ni un chemin ni une URL.\",\"error.goal_prop_kind\":\"Seul un objectif d’événement peut prendre son montant dans l’événement. Utilisez plutôt un montant fixe.\",\"error.goal_prop_name\":\"Un nom de propriété utilise des lettres, des chiffres, des points, des tirets et des tirets bas.\",\"error.goal_selector\":\"Saisissez un sélecteur CSS, par exemple #signup ou .buy-button\",\"error.import_day_full\":\"Un jour compte plus de {limit} événements, plus qu’une étape d’import ne peut en lire.\",\"error.import_key\":\"Saisissez votre clé {service}.\",\"error.import_refused\":\"La clé ou la connexion a été refusée.\",\"error.import_slug_bad\":\"/{slug} contient des caractères qu’un slug Runlight ne peut pas utiliser.\",\"error.import_slug_taken\":\"/{slug} est déjà utilisé par « {name} ».\",\"error.import_source\":\"Runlight ne peut pas importer depuis {source}.\",\"error.import_status\":\"{host} a répondu {status}.\",\"error.import_umami_address\":\"Saisissez l’adresse de votre Umami, par exemple https://stats.example.com\",\"error.import_umami_login\":\"Saisissez une clé d’API, ou un nom d’utilisateur et un mot de passe.\",\"error.import_website\":\"Choisissez le site Umami à importer.\",\"error.import_csv_batch\":\"Envoyez au plus {max} lignes à la fois.\",\"error.import_csv_format\":\"Ce fichier n’est ni un export Umami ni au format de visites de Runlight. Vérifiez sa ligne d’en-tête.\",\"error.install_refused\":\"Cette installation a refusé le jeton.\",\"error.install_token\":\"Saisissez un jeton d’API de cette installation.\",\"error.site_domain_invalid\":\"« {host} » n’est pas un nom de domaine.\",\"error.site_domain_needed\":\"Ajoutez le domaine du site, par exemple example.com\",\"error.site_domain_taken\":\"{host} appartient déjà à {site}.\",\"share.goneTitle\":\"Ce lien de partage ne fonctionne plus\",\"error.token_manage_only\":\"Un jeton de gestion ne modifie que les réglages de son propre site.\",\"empty.pages.title\":\"Vos pages principales apparaîtront ici\",\"empty.pages.hint\":\"Chaque page ouverte y figure, avec le temps que les visiteurs y passent.\",\"empty.sources.title\":\"Vos sources de trafic apparaîtront ici\",\"empty.sources.hint\":\"Les recherches et les sites qui vous envoient des visiteurs y sont nommés.\",\"empty.locations.title\":\"Les lieux de vos visiteurs apparaîtront ici\",\"empty.locations.hint\":\"Voyez de quels pays et de quelles villes viennent les visiteurs.\",\"empty.rhythm.title\":\"Vos heures les plus actives apparaîtront ici\",\"empty.rhythm.hint\":\"Chaque heure de la semaine se remplit au fil des visites.\",\"empty.ai.title\":\"Les agents IA qui lisent votre site apparaîtront ici\",\"empty.ai.hint\":\"Les assistants comme ChatGPT et Claude y figurent quand ils lisent vos pages.\",\"empty.devices.title\":\"Les appareils de vos visiteurs apparaîtront ici\",\"empty.devices.hint\":\"Voyez quels navigateurs et quels écrans utilisent les visiteurs.\",\"empty.events.title\":\"Vos événements apparaîtront ici\",\"empty.events.hint\":\"Les clics sur les liens sortants et les événements que vous envoyez sont comptés au fur et à mesure.\",\"empty.campaigns.title\":\"Vos campagnes apparaîtront ici\",\"empty.campaigns.hint\":\"Les visites venues de liens avec des balises UTM sont classées par campagne, source et support.\",\"empty.links.title\":\"Vos liens courts apparaîtront ici\",\"empty.links.hint\":\"Créez un lien court à partager, et chaque clic sera compté.\",\"sites.refused\":\"{host} n’accepte plus la connexion de ce serveur, donc ses chiffres ne peuvent pas être lus. Reconnectez-le pour corriger cela.\",\"sites.connected\":\"Connecté à {host}.\",\"links.totalTip\":\"Tous les clics sur vos liens courts aux dates choisies\",\"links.setup\":\"Comment le configurer\",\"links.recordType\":\"Type\",\"links.recordName\":\"Nom\",\"links.recordValue\":\"Valeur\",\"links.doDns\":\"Ajoutez cet enregistrement chez votre fournisseur DNS.\",\"links.doDnsAlias\":\"Ajoutez cet enregistrement chez votre fournisseur DNS. S’il ne propose pas d’ALIAS, utilisez un enregistrement A vers l’adresse IP de votre serveur.\",\"links.doHttps\":\"Faites servir {domain} en HTTPS par votre hébergeur.\",\"links.doCheck\":\"Vérifiez de nouveau. Un nouvel enregistrement peut mettre quelques minutes à arriver.\",\"links.localNote\":\"Ce tableau de bord tourne sur {host}, donc l’enregistrement fonctionnera une fois qu’il aura une adresse publique.\",\"links.guide\":\"Guide de configuration\",\"funnels.emptyTitle\":\"Vos entonnoirs s’afficheront ici\",\"share.emptyTitle\":\"Vos liens de partage s’afficheront ici\",\"tokens.emptyTitle\":\"Vos jetons s’afficheront ici\",\"reports.emptyTitle\":\"Vos rapports par e-mail s’afficheront ici\",\"journeys.emptyTitle\":\"Les parcours des visiteurs s’afficheront ici\",\"props.emptyTitle\":\"Les détails de cet événement s’afficheront ici\",\"empty.mini\":\"Cette liste se remplit au fil des visites.\",\"empty.search\":\"Rien ici ne correspond encore à « {q} », essayez un autre mot.\",\"delta.fromNone\":\"depuis 0\",\"people.admin\":\"Administrateur\",\"people.member\":\"Membre\",\"people.handOver\":\"Rendre propriétaire\",\"people.handOverHint\":\"Transmet la propriété à cet administrateur, et vous devenez administrateur\",\"people.handOverConfirm\":\"Transmettre\",\"people.demotedMember\":\"Vous êtes désormais membre, donc Personnes et les réglages de toute l’installation vous sont fermés. Le propriétaire ou un administrateur peut le rétablir.\",\"account.admin\":\"Vous êtes administrateur, vous pouvez donc tout modifier et gérer les personnes, sauf le propriétaire.\",\"account.member\":\"Vous êtes membre, vous pouvez donc modifier les réglages de chaque site. Le propriétaire et les administrateurs gèrent les personnes et les réglages de toute l’installation.\",\"mail.adminOnly\":\"Aucun service d’e-mail n’est encore configuré. Le propriétaire ou un administrateur peut en configurer un ici.\",\"error.admin_only\":\"Seul le propriétaire ou un administrateur peut modifier ceci.\",\"error.owner_protected\":\"Personne d’autre que le propriétaire ne peut modifier ou retirer le propriétaire.\",\"error.owner_hand_over\":\"Seul le propriétaire peut transmettre la propriété.\",\"error.owner_needs_admin\":\"Rendez-le d’abord administrateur.\",\"embed.goneTitle\":\"Ce lien vers le tableau de bord ne fonctionne pas\",\"embed.gone\":\"Rouvrez le tableau de bord depuis l'administration de votre site.\",\"embed.expiredTitle\":\"Cette vue a expiré\",\"embed.expired\":\"Le tableau de bord dans votre administration reste ouvert une heure à la fois. Rechargez la page pour l'ouvrir à nouveau.\",\"embed.reload\":\"Recharger la page\",\"embedKey.title\":\"Clé pour le tableau de bord dans votre CMS\",\"embedKey.intro\":\"Avec cette clé dans leurs réglages, les extensions WordPress, Drupal et Craft affichent le tableau de bord de ce site dans votre administration. Elle ouvre la vue en lecture seule qu'affiche un lien de partage et ne peut rien lire elle-même. Supprimez-la dans Réglages, API et IA pour l'arrêter aussitôt.\",\"embedKey.make\":\"Créer une clé\",\"embedKey.another\":\"Créer une autre clé\",\"embedKey.name\":\"Tableau de bord dans un CMS\",\"tokens.embeds\":\"Ouvre le tableau de bord dans un CMS\",\"error.embed_expired\":\"Ce tableau de bord a expiré. Rechargez la page pour l'ouvrir à nouveau.\",\"error.embed_site\":\"Une clé pour le tableau de bord dans un CMS vaut pour un seul site. Choisissez le site.\"}",
|
|
6
|
-
"pt": "{\"app.site\":\"Site\",\"app.confirmDelete\":\"Excluir {name}?\",\"app.signedOut\":\"Abra esta página uma vez com {token} seguido do seu {env} para entrar.\",\"app.live.title\":\"Visitantes nos últimos cinco minutos\",\"app.live_one\":\"{n} agora\",\"app.live_other\":\"{n} agora\",\"headline.who_one\":\"{n} pessoa\",\"headline.who_other\":\"{n} pessoas\",\"headline.visited_one\":\"visitou o site\",\"headline.visited_other\":\"visitaram o site\",\"headline.matched_one\":\"corresponde a estes filtros\",\"headline.matched_other\":\"correspondem a estes filtros\",\"headline.plain\":\"{who} {verb} {when}.\",\"headline.up\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.down\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.same\":\"{who} {verb} {when}, o mesmo que {against}.\",\"headline.more\":\"{pct}% a mais\",\"headline.fewer\":\"{pct}% a menos\",\"headline.lastYear\":\"os mesmos dias do ano passado\",\"when.today\":\"hoje\",\"when.yesterday\":\"ontem\",\"when.7d\":\"nos últimos 7 dias\",\"when.30d\":\"nos últimos 30 dias\",\"when.90d\":\"nos últimos 90 dias\",\"when.month\":\"este mês\",\"when.last_month\":\"no mês passado\",\"when.year\":\"este ano\",\"when.12mo\":\"nos últimos 12 meses\",\"when.all\":\"desde o início das medições\",\"when.range\":\"de {range}\",\"when.day\":\"em {day}\",\"before.today\":\"ontem\",\"before.yesterday\":\"o dia anterior\",\"before.7d\":\"os 7 dias anteriores\",\"before.30d\":\"os 30 dias anteriores\",\"before.90d\":\"os 90 dias anteriores\",\"before.month\":\"o mesmo período anterior\",\"before.last_month\":\"o mês anterior\",\"before.year\":\"o mesmo período anterior\",\"before.12mo\":\"os 12 meses anteriores\",\"before.all\":\"o período anterior\",\"before.range\":\"o mesmo período anterior\",\"period.today\":\"Hoje\",\"period.yesterday\":\"Ontem\",\"period.7d\":\"Últimos 7 dias\",\"period.30d\":\"Últimos 30 dias\",\"period.90d\":\"Últimos 90 dias\",\"period.month\":\"Este mês\",\"period.last_month\":\"Mês passado\",\"period.year\":\"Este ano\",\"period.12mo\":\"Últimos 12 meses\",\"period.all\":\"Todo o período\",\"compare.title\":\"Comparar com\",\"compare.vs\":\"vs\",\"compare.previous\":\"Período anterior\",\"compare.year\":\"Mesmo período do ano passado\",\"compare.custom\":\"Período personalizado\",\"compare.off\":\"Sem comparação\",\"compare.apply\":\"Comparar\",\"compare.dialog\":\"Comparar com\",\"calendar.dialog\":\"Escolher datas\",\"calendar.earlier\":\"Meses anteriores\",\"calendar.later\":\"Meses seguintes\",\"calendar.pick\":\"Escolha um dia de início e um de fim\",\"calendar.range\":\"{from} a {to}\",\"calendar.open\":\"{from} a ...\",\"calendar.apply\":\"Aplicar\",\"common.cancel\":\"Cancelar\",\"common.close\":\"Fechar\",\"common.clearAll\":\"Limpar tudo\",\"common.loading\":\"Carregando\",\"common.search\":\"Buscar\",\"common.none\":\"(nenhum)\",\"metric.visitors\":\"Visitantes\",\"metric.visits\":\"Visitas\",\"metric.pageviews\":\"Visualizações\",\"metric.viewsPerVisit\":\"Páginas por visita\",\"metric.bounceRate\":\"Taxa de rejeição\",\"metric.visitDuration\":\"Duração da visita\",\"hint.visitors\":\"Pessoas diferentes, contadas uma vez por dia\",\"hint.visits\":\"Sessões: uma visita termina após 30 minutos sem atividade\",\"hint.pageviews\":\"Cada página carregada, incluindo repetições\",\"hint.viewsPerVisit\":\"Visualizações divididas por visitas\",\"hint.bounceRate\":\"Uma visita com uma só visualização de página, sem eventos, que dura menos de dez segundos\",\"hint.visitDuration\":\"Tempo médio por visita com a página visível e em foco\",\"delta.title\":\"Em relação ao período de comparação\",\"delta.none\":\"sem mudança\",\"chart.label\":\"{metrics} ao longo do tempo\",\"chart.scaled\":\"Cada linha usa sua própria escala. Passe o cursor para ver os valores.\",\"chart.pick\":\"Clique nos cartões para adicioná-los ao gráfico.\",\"chart.dashed\":\"Tracejado: {range}.\",\"chart.then\":\"antes: {when}\",\"panel.pages\":\"Páginas\",\"panel.sources\":\"Origens\",\"panel.locations\":\"Localizações\",\"panel.rhythm\":\"Quando as pessoas visitam\",\"panel.ai\":\"Agentes de IA\",\"panel.devices\":\"Dispositivos\",\"panel.events\":\"Eventos\",\"panel.campaigns\":\"Campanhas\",\"panel.views\":\"Visões de {title}\",\"panel.empty\":\"Nada neste período\",\"panel.more\":\"Ver tudo\",\"panel.filterBy\":\"Filtrar por {name}\",\"panel.showMap\":\"Ver um mapa\",\"panel.showList\":\"Ver a lista\",\"panel.fullMap\":\"Mapa em tela cheia\",\"tab.top\":\"Mais vistas\",\"tab.entry\":\"Entrada\",\"tab.exit\":\"Saída\",\"tab.channels\":\"Canais\",\"tab.sources\":\"Origens\",\"tab.referrers\":\"Referências\",\"tab.countries\":\"Países\",\"tab.regions\":\"Regiões\",\"tab.cities\":\"Cidades\",\"tab.agents\":\"Agentes\",\"tab.pages\":\"Páginas\",\"tab.device\":\"Dispositivo\",\"tab.browser\":\"Navegador\",\"tab.os\":\"Sistema\",\"tab.screen\":\"Tela\",\"tab.language\":\"Idioma\",\"tab.event\":\"Evento\",\"tab.campaign\":\"Campanha\",\"tab.source\":\"Origem\",\"tab.medium\":\"Mídia\",\"tab.content\":\"Conteúdo\",\"tab.term\":\"Termo\",\"column.visitors\":\"visitantes\",\"column.fetches\":\"acessos\",\"column.events\":\"eventos\",\"column.time\":\"tempo\",\"column.bounce\":\"rejeição\",\"channel.Direct\":\"Direto\",\"channel.Organic Search\":\"Busca orgânica\",\"channel.Paid Search\":\"Busca paga\",\"channel.Social\":\"Redes sociais\",\"channel.Email\":\"E-mail\",\"channel.AI\":\"IA\",\"channel.Referral\":\"Referências\",\"channel.Campaign\":\"Campanha\",\"device.desktop\":\"Computador\",\"device.mobile\":\"Celular\",\"device.tablet\":\"Tablet\",\"ai.live\":\"Leituras ao vivo\",\"ai.crawl\":\"Rastreamentos\",\"rhythm.busiest\":\"Pico: {when}\",\"rhythm.table\":\"Visitas por dia da semana e hora\",\"rhythm.cell_one\":\"{when}: {n} visita\",\"rhythm.cell_other\":\"{when}: {n} visitas\",\"scale.fewer\":\"Menos\",\"scale.more\":\"Mais\",\"map.failed\":\"Não foi possível carregar o mapa\",\"map.label\":\"Visitantes por país: {top}\",\"map.visitors_one\":\"{n} visitante\",\"map.visitors_other\":\"{n} visitantes\",\"map.none\":\"Nenhum visitante\",\"map.title\":\"Pelo mundo\",\"filter.button\":\"Filtrar\",\"filter.remove\":\"Remover filtro\",\"filter.title\":\"Mostrar visitas\",\"filter.where\":\"onde\",\"filter.and\":\"e\",\"filter.field\":\"Campo\",\"filter.match\":\"Condição\",\"filter.is\":\"é\",\"filter.not\":\"não é\",\"filter.contains\":\"contém\",\"filter.value\":\"Valor\",\"filter.placeholder\":\"Digite um valor ou escolha um abaixo\",\"filter.placeholderContains\":\"Qualquer parte do valor\",\"filter.removeCondition\":\"Remover esta condição\",\"filter.add\":\"+ Adicionar uma condição\",\"filter.note\":\"Todas as condições precisam valer. Clique em qualquer linha do painel para adicionar uma sem abrir isto.\",\"filter.apply_one\":\"Aplicar {n} condição\",\"filter.apply_other\":\"Aplicar {n} condições\",\"filter.everything\":\"Mostrar tudo\",\"group.pages\":\"Páginas\",\"group.sources\":\"Origens\",\"group.location\":\"Localização\",\"group.device\":\"Dispositivo\",\"group.behaviour\":\"Comportamento\",\"field.page\":\"Página\",\"field.entry\":\"Página de entrada\",\"field.exit\":\"Página de saída\",\"field.hostname\":\"Nome do host\",\"field.channel\":\"Canal\",\"field.source\":\"Origem\",\"field.referrer\":\"Referência\",\"field.utm_campaign\":\"Campanha\",\"field.utm_source\":\"Origem UTM\",\"field.utm_medium\":\"Mídia UTM\",\"field.utm_content\":\"Conteúdo UTM\",\"field.utm_term\":\"Termo UTM\",\"field.country\":\"País\",\"field.region\":\"Região\",\"field.city\":\"Cidade\",\"field.device\":\"Dispositivo\",\"field.browser\":\"Navegador\",\"field.browser_version\":\"Versão do navegador\",\"field.os\":\"Sistema\",\"field.os_version\":\"Versão do sistema\",\"field.screen\":\"Tela\",\"field.language\":\"Idioma\",\"field.event\":\"Evento\",\"foot.powered\":\"Feito com {name}\",\"foot.language\":\"Idioma\",\"theme.light\":\"Tema claro\",\"theme.dark\":\"Tema escuro\",\"column.visits\":\"visitas\",\"column.pageviews\":\"visualizações\",\"column.scroll\":\"rolagem\",\"column.duration\":\"duração\",\"column.share\":\"parcela\",\"rhythm.typical\":\"{x}× uma hora típica\",\"rhythm.quiet\":\"Nenhuma visita nesta hora\",\"app.home\":\"Voltar à visão geral\",\"settings.open\":\"Configurações\",\"settings.title\":\"Configurações\",\"settings.general\":\"Geral\",\"settings.install\":\"Instalação\",\"settings.siteName\":\"Nome do site\",\"settings.timezone\":\"Fuso horário\",\"settings.timezoneHint\":\"Os dias dos seus relatórios começam à meia-noite neste fuso.\",\"settings.save\":\"Salvar\",\"settings.saving\":\"Salvando\",\"settings.saved\":\"Salvo\",\"settings.language\":\"Idioma\",\"settings.languageHint\":\"Só para este navegador.\",\"settings.theme\":\"Tema\",\"settings.themeSystem\":\"Configuração do dispositivo\",\"settings.themeLight\":\"Claro\",\"settings.themeDark\":\"Escuro\",\"install.live\":\"Recebendo visitas. A última foi {when}.\",\"install.none\":\"Nenhuma visita ainda. Adicione o script abaixo e abra uma página do seu site.\",\"install.script\":\"Adicione isto a todas as páginas, logo antes de {tag}.\",\"install.copy\":\"Copiar\",\"install.copied\":\"Copiado\",\"install.events\":\"Cliques em qualquer elemento são contados sem JavaScript.\",\"install.eventsJs\":\"Você também pode enviar eventos por JavaScript, para o que não é clique.\",\"install.agents\":\"Para ver agentes de IA como ChatGPT e Claude lendo suas páginas, passe cada requisição ao Runlight no seu middleware com o código abaixo.\",\"install.ignore\":\"Suas próprias visitas\",\"install.ignored\":\"Suas visitas deste navegador não são contadas.\",\"install.counted\":\"Suas visitas deste navegador são contadas.\",\"install.ignoreButton\":\"Ignorar este navegador\",\"install.trackButton\":\"Voltar a contar este navegador\",\"install.ignoreElsewhere\":\"O painel está em outro domínio que o site? Abra {link} uma vez em cada navegador que você usa.\",\"theme.system\":\"Configuração do dispositivo\",\"theme.cycle\":\"Tema: {current}. Clique para {next}.\",\"panel.links\":\"Links\",\"links.new\":\"Novo link\",\"links.manage\":\"Gerenciar\",\"links.clicks\":\"cliques\",\"links.url\":\"URL de destino\",\"links.urlPlaceholder\":\"https://exemplo.com/um/endereco/longo\",\"links.name\":\"Nome\",\"links.namePlaceholder\":\"Opcional, para você\",\"links.slug\":\"Identificador\",\"links.slugPlaceholder\":\"Deixe vazio para um aleatório\",\"links.domain\":\"Domínio\",\"links.create\":\"Criar link\",\"links.save\":\"Salvar alterações\",\"links.created\":\"Seu link curto está pronto.\",\"links.another\":\"Criar outro\",\"links.edit\":\"Editar link\",\"links.delete\":\"Excluir\",\"links.confirmDelete\":\"Excluir {name}? Os cliques continuam nas suas estatísticas.\",\"links.copy\":\"Copiar\",\"links.copied\":\"Copiado\",\"links.search\":\"Buscar links\",\"links.sortClicks\":\"Mais clicados\",\"links.sortNewest\":\"Mais recentes\",\"links.sortName\":\"Nome\",\"links.import\":\"Importar CSV\",\"links.importDone_one\":\"{n} link importado.\",\"links.importDone_other\":\"{n} links importados.\",\"links.importFailed\":\"Linha {row}: {reason}\",\"links.importHelp\":\"Use as colunas name e url, e também slug e domain se as tiver.\",\"links.destination\":\"Leva a\",\"links.clicksOverTime\":\"Cliques ao longo do tempo\",\"links.sources\":\"Origens\",\"links.countries\":\"Países\",\"links.devices\":\"Dispositivos\",\"links.browsers\":\"Navegadores\",\"links.total_one\":\"{n} clique\",\"links.total_other\":\"{n} cliques\",\"links.domains\":\"Domínios para links curtos\",\"links.domainsHelp\":\"Use um domínio ou subdomínio seu para os links curtos, como t.exemplo.com. Os links ficam na raiz: t.exemplo.com/promo.\",\"links.addDomain\":\"Adicionar domínio\",\"links.domainPlaceholder\":\"t.exemplo.com\",\"links.ownDomain\":\"Este site ({prefix})\",\"links.removeDomain\":\"Remover\",\"settings.links\":\"Domínios personalizados\",\"links.confirm\":\"Confirmar\",\"links.editButton\":\"Editar\",\"links.step1\":\"No seu provedor de DNS, adicione um registro CNAME para o subdomínio apontando para {host}, onde este painel roda. Para um domínio sem subdomínio, use um registro A ou ALIAS para o mesmo servidor.\",\"links.step2\":\"Faça seu provedor de hospedagem aceitar o domínio com HTTPS: adicione-o aos domínios do seu projeto na Vercel ou Netlify, ou à configuração e ao certificado do seu servidor. Se o Runlight roda dentro do seu app, passe as requisições para rl.linkDomainResponse() no seu middleware.\",\"links.step3\":\"Adicione o domínio abaixo. O Runlight então verifica se ele chega a este painel.\",\"links.checking\":\"Verificando\",\"links.working\":\"Funcionando\",\"links.notWorking\":\"Ainda não chega ao Runlight: {reason}\",\"links.recheck\":\"Verificar de novo\",\"links.sortBy\":\"Ordenar links\",\"links.removeNote\":\"Remover um domínio mantém os links, cliques e estatísticas: eles passam para {fallback} até você adicionar o domínio de novo, e então voltam para ele.\",\"links.removedDomain\":\"{domain}/ (removido)\",\"prompt.copy\":\"Copiar prompt\",\"prompt.domainHint\":\"Copie estes passos, já com seus endereços, e cole nele.\",\"prompt.installHint\":\"Copie os passos de instalação e cole nele.\",\"links.showing\":\"Mostrando {shown} de {total}\",\"links.showMore\":\"Mostrar mais {n}\",\"links.clicksLabel\":\"Cliques\",\"links.createdOn\":\"Criado em {date}\",\"settings.import\":\"Importar\",\"import.intro\":\"Traga seus links curtos de outro serviço, com o histórico de cliques quando o serviço o compartilha. Sua chave ou senha só é usada nesta importação e nunca é salva. Importar de novo pula os links que já estão aqui.\",\"import.source\":\"Importar de\",\"import.csv\":\"Qualquer CSV\",\"import.url\":\"Endereço do Umami\",\"import.apiKey\":\"Chave de API\",\"import.username\":\"Usuário\",\"import.password\":\"Senha\",\"import.signIn\":\"Entrar com\",\"import.withKey\":\"Chave de API\",\"import.withPassword\":\"Usuário e senha\",\"import.start\":\"Começar importação\",\"import.stop\":\"Parar\",\"import.running\":\"Importando {done} de {total} links\",\"import.done\":\"Pronto: {links} links e {clicks} cliques importados, {skipped} já estavam aqui.\",\"import.stopped\":\"Parado após {done} de {total} links. Comece de novo para continuar; links já importados são pulados.\",\"import.failed\":\"Estes não puderam ser importados.\",\"import.history.full\":\"Isto importa cada clique, com país, dispositivo, navegador e referência.\",\"import.history.daily\":\"Isto importa os cliques por dia, sem país nem dispositivo.\",\"import.history.none\":\"Só links: o serviço não compartilha cliques com data.\",\"import.umamiHelp\":\"No Umami, crie uma chave de API em Configurações, Chaves de API. O Umami auto-hospedado padrão não tem chaves de API, então entre com seu usuário e senha. Qualquer um deles é usado só nesta importação e nunca é salvo.\",\"import.csvHelp\":\"Use as colunas name e url, e também slug e domain se as tiver.\",\"import.chooseFile\":\"Escolher um arquivo CSV\",\"import.token\":\"Token de acesso\",\"import.workspace\":\"Id do workspace (opcional)\",\"import.dubHelp\":\"No Dub, crie uma chave de API em Settings, API Keys, com leitura de links e análises. Cada clique vem no plano Business, totais diários no Pro, só links no Free.\",\"import.bitlyHelp\":\"No Bitly, vá em Settings, API, digite sua senha e gere um token. O Bitly guarda só totais diários, até onde seu plano permite (nada no Free).\",\"import.shortioHelp\":\"No Short.io, abra Integrations and API e crie uma chave secreta (uma chave pública não lê links). O Short.io permite 60 requisições de estatísticas por minuto, então esta importação vai no ritmo dele.\",\"import.rebrandlyHelp\":\"No Rebrandly, crie uma chave de API em Settings, API keys. O Rebrandly só compartilha o total de cliques, então os links chegam sem histórico.\",\"import.soFar_one\":\"{n} link importado até agora\",\"import.soFar_other\":\"{n} links importados até agora\",\"import.moveNote\":\"Links no domínio do serviço (bit.ly, dub.sh, rebrand.ly, short.gy) passam para {fallback} com o mesmo identificador; domínios próprios são adicionados em Domínios personalizados.\",\"prompt.title\":\"Usa um assistente de código?\",\"compare.allTime\":\"Não há nada antes de todo o período para comparar.\",\"view.reset\":\"Redefinir\",\"view.resetHint\":\"Voltar aos últimos 30 dias, sem filtros nem comparação\",\"settings.sharing\":\"Compartilhar\",\"share.intro\":\"Um link de compartilhamento mostra as estatísticas deste site a quem o tiver, sem login: os números, as páginas, as fontes e os locais. Nunca mostra seus links curtos, suas configurações nem o endereço do site.\",\"share.namePlaceholder\":\"Para quem é, como um cliente ou sua equipe\",\"share.create\":\"Criar link de compartilhamento\",\"share.empty\":\"Crie um abaixo e envie para quem deve ver estas estatísticas.\",\"share.unnamed\":\"Sem título\",\"share.open\":\"Abrir\",\"share.rename\":\"Renomear\",\"share.save\":\"Salvar\",\"share.revokeNote\":\"Apagar um link de compartilhamento o desativa na hora. Quem o tinha passa a ver uma página avisando.\",\"share.gone\":\"Quem o compartilhou o desativou. Peça um link novo.\",\"live.title\":\"Agora mesmo\",\"live.sub\":\"Atualiza a cada 10 segundos\",\"live.now_one\":\"{n} pessoa no site\",\"live.now_other\":\"{n} pessoas no site\",\"live.nowHint\":\"Quem viu uma página ou fez algo nos últimos 5 minutos.\",\"live.total_one\":\"{n} visualização nos últimos 30 minutos\",\"live.total_other\":\"{n} visualizações nos últimos 30 minutos\",\"live.minute_one\":\"{n} visualização às {time}\",\"live.minute_other\":\"{n} visualizações às {time}\",\"live.ago30\":\"há 30 min\",\"live.nowLabel\":\"Agora\",\"live.pages\":\"Páginas\",\"live.sources\":\"Fontes\",\"live.countries\":\"Países\",\"live.nobody\":\"Os visitantes aparecem aqui assim que chegam.\",\"live.feed\":\"Atividade recente\",\"live.quiet\":\"As visitas dos últimos 30 minutos aparecem aqui.\",\"live.someone\":\"Alguém\",\"live.someoneIn\":\"Alguém em {place}\",\"live.viewed\":\"{who} viu {path}\",\"live.viewedVia\":\"{who} viu {path} vindo de {source}\",\"live.did\":\"{who} fez {name} em {path}\",\"live.didVia\":\"{who} fez {name} em {path}, vindo de {source}\",\"welcome.title\":\"Adicione o Runlight a {name}\",\"welcome.lead\":\"Aguardando a primeira visita. Esta página se preenche sozinha quando ela chegar.\",\"settings.goals\":\"Metas\",\"settings.funnels\":\"Funis\",\"panel.conversions\":\"Conversões\",\"goals.revenueAside\":\"{amount} de receita\",\"goals.add\":\"Adicionar meta\",\"goals.emptyTitle\":\"Suas metas vão aparecer aqui\",\"goals.emptyHint\":\"Uma meta conta o que importa para você, como um cadastro ou um clique em um botão. Uma meta de evento ou de página conta também as visitas passadas, e uma meta de clique conta a partir de quando é adicionada.\",\"goals.goal\":\"Meta\",\"goals.rate\":\"Taxa\",\"goals.conversions\":\"Conversões\",\"goals.unknown\":\"(nenhum)\",\"goals.converted\":\"Pessoas que converteram\",\"goals.revenue\":\"Receita\",\"goals.overTime\":\"Conversões ao longo do tempo\",\"goals.overTimeValued\":\"Conversões e receita ao longo do tempo, cada uma na sua escala\",\"goals.byChannel\":\"Por canal\",\"goals.bySource\":\"Por fonte\",\"goals.byPage\":\"Onde aconteceu\",\"goals.describe.event\":\"Evento: {match}\",\"goals.describe.page\":\"Visitas a {match}\",\"goals.describe.selector\":\"Cliques em {match}\",\"goals.describe.link\":\"Cliques em links para {match}\",\"goals.value.each\":\"{amount} cada\",\"goals.value.fromProp\":\"valor em {prop}, em {currency}\",\"goals.name\":\"Nome\",\"goals.namePlaceholder\":\"Cadastro, Compra, Ligação agendada\",\"goals.counts\":\"Conta\",\"goals.kind.event\":\"Um evento\",\"goals.kind.page\":\"Uma página visitada\",\"goals.kind.click\":\"Um clique\",\"goals.clickOn\":\"Cliques em\",\"goals.click.selector\":\"Um elemento\",\"goals.click.link\":\"Links para um endereço\",\"goals.match.event\":\"Nome do evento\",\"goals.match.page\":\"Página\",\"goals.match.link\":\"Endereço do link\",\"goals.match.selector\":\"Seletor CSS\",\"goals.pick\":\"Escolher no meu site\",\"goals.picking\":\"Aguardando sua escolha\",\"goals.hint.event\":\"O nome enviado com runlight(\\\"Nome\\\") ou um atributo data-runlight.\",\"goals.hint.page\":\"Um caminho como /obrigado. Use * para qualquer coisa: /blog/* ou /obrigado*. Uma URL completa também serve.\",\"goals.hint.link\":\"Cliques em links cujo endereço corresponde. Use * para qualquer coisa, como https://buy.stripe.com/*, ou comece com / para suas próprias páginas.\",\"goals.hint.selector\":\"Qualquer seletor CSS. Ou use Escolher no meu site: seu site abre, você clica no elemento e depois em Usar.\",\"goals.valueLabel\":\"Valor\",\"goals.value.none\":\"Nenhum\",\"goals.value.fixed\":\"Um valor fixo\",\"goals.value.prop\":\"Um valor enviado com o evento\",\"goals.amount\":\"Valor a cada vez\",\"goals.property\":\"Propriedade com o valor\",\"goals.currency\":\"Moeda\",\"goals.save\":\"Salvar meta\",\"goals.create\":\"Adicionar meta\",\"goals.cancel\":\"Cancelar\",\"goals.edit\":\"Editar\",\"goals.intro\":\"Metas transformam visitas em conversões. Cada uma conta um evento, uma página visitada ou um clique, e pode ter um valor em dinheiro para ver a receita por fonte e página.\",\"goals.none\":\"Adicione um abaixo para começar a contá-lo.\",\"goals.pastNote\":\"As metas são calculadas com os dados que você já tem, então uma meta nova mostra conversões passadas também. Metas de clique começam a contar cerca de cinco minutos depois de adicionadas.\",\"settings.email\":\"Relatórios por email\",\"settings.mail\":\"Serviço de e-mail\",\"mail.intro\":\"O Runlight envia relatórios e convites pelo seu próprio serviço de e-mail. Configure uma vez e todos os sites passam a usá-lo.\",\"mail.service\":\"Serviço\",\"mail.optional\":\"(opcional)\",\"mail.keepSaved\":\"Salvo. Deixe em branco para manter.\",\"mail.from\":\"Endereço de envio\",\"mail.fromName\":\"Nome do remetente\",\"mail.fromHint\":\"Use um endereço que seu serviço permita, em um domínio verificado nele.\",\"mail.save\":\"Salvar serviço\",\"mail.change\":\"Alterar\",\"mail.fromLine\":\"Envia de {from}\",\"mail.fromCode\":\"Definido no código. Envia de {from}\",\"mail.testTo\":\"Enviar um teste para\",\"mail.test\":\"Enviar teste\",\"mail.testSent\":\"Teste enviado para {to}. Veja a caixa de entrada e o spam.\",\"mail.notEncryptedTitle\":\"Suas chaves serão guardadas sem criptografia\",\"mail.notEncrypted\":\"Este Runlight não tem RUNLIGHT_SECRET, então as chaves ficam no banco de dados exatamente como você as digita. Defina RUNLIGHT_SECRET ou RUNLIGHT_TOKEN no servidor para mantê-las criptografadas.\",\"mail.field.region\":\"Região\",\"mail.field.accessKeyId\":\"ID da chave de acesso\",\"mail.field.secretAccessKey\":\"Chave de acesso secreta\",\"mail.field.apiKey\":\"Chave de API\",\"mail.field.serverToken\":\"Token de API do servidor\",\"mail.field.stream\":\"Fluxo de mensagens\",\"mail.field.domain\":\"Domínio de envio\",\"mail.field.secretKey\":\"Chave secreta\",\"mail.field.host\":\"Host\",\"mail.field.port\":\"Porta\",\"mail.field.security\":\"Segurança\",\"mail.field.username\":\"Usuário\",\"mail.field.password\":\"Senha\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Segredo de assinatura\",\"reports.title\":\"Quem recebe relatórios\",\"reports.intro\":\"Um resumo de {site} por email: visitantes, páginas, fontes, países e conversões, comparados ao período anterior.\",\"reports.none\":\"Adicione um endereço de e-mail abaixo para começar a enviá-los.\",\"reports.weekly\":\"Semanal\",\"reports.monthly\":\"Mensal\",\"reports.frequency\":\"Frequência\",\"reports.language\":\"Idioma\",\"reports.lastSent\":\"último envio {when}\",\"reports.never\":\"ainda não\",\"reports.sample\":\"Enviar um exemplo agora\",\"reports.sampleSent\":\"Exemplo enviado para {to}.\",\"reports.emailPlaceholder\":\"nome@exemplo.com\",\"reports.add\":\"Adicionar\",\"reports.when\":\"Relatórios semanais cobrem de segunda a domingo e saem na segunda a partir das 8h, os mensais no dia 1, no fuso do site. Quem envia é a verificação de hora em hora (um cron que chama POST /api/check).\",\"reports.needsMail\":\"Os relatórios começam a sair quando houver um serviço de e-mail configurado. Um só serviço os envia para todos os sites.\",\"reports.setUpMail\":\"Configurar serviço de e-mail\",\"reports.needsMailTitle\":\"Ainda sem serviço de e-mail\",\"email.subject.week\":\"{site}: {who} na semana passada\",\"email.subject.month\":\"{site}: {who} em {month}\",\"email.when.week\":\"na semana passada\",\"email.before.week\":\"a semana anterior\",\"email.when.month\":\"em {month}\",\"email.range\":\"de {from} a {to}\",\"email.pages\":\"Páginas principais\",\"email.sources\":\"Fontes principais\",\"email.countries\":\"Países principais\",\"email.conversions\":\"Conversões\",\"email.open\":\"Abrir o painel\",\"email.at\":\"Seu painel fica em {where}\",\"email.footer\":\"Você recebe este relatório {frequency} de {site} pelo Runlight.\",\"email.weekly\":\"semanal\",\"email.monthly\":\"mensal\",\"email.unsubscribe\":\"Cancelar inscrição\",\"email.test.subject\":\"O Runlight consegue enviar email\",\"email.test.body\":\"Este teste veio por {service}. Os relatórios dos seus sites chegarão do mesmo jeito.\",\"email.unsub.title\":\"Parar os relatórios de {site}?\",\"email.unsub.body\":\"{email} não receberá mais relatórios deste site.\",\"email.unsub.doneTitle\":\"Inscrição cancelada\",\"email.unsub.done\":\"Nenhum relatório de {site} chegará mais a {email}.\",\"email.unsub.goneTitle\":\"Nada para cancelar\",\"email.unsub.gone\":\"Este link já foi usado, ou o relatório foi removido.\",\"settings.api\":\"API e IA\",\"tokens.intro\":\"Pergunte ao seu assistente de IA sobre suas estatísticas. Crie um token e adicione o Runlight ao Claude, ao Cursor ou a qualquer app que se conecte a servidores MCP. Um token de leitura nunca altera nada, e um token de gestão pode alterar as configurações de um site. O mesmo token funciona com a API HTTP.\",\"tokens.server\":\"Endereço do servidor MCP\",\"tokens.namePlaceholder\":\"Para que serve, como Claude ou um script\",\"tokens.scope\":\"Quais sites ele pode ler\",\"tokens.allSites\":\"Todos os sites\",\"tokens.siteOnly\":\"Só {site}\",\"tokens.create\":\"Criar token\",\"tokens.empty\":\"Crie um abaixo para conectar um assistente de IA ou um script.\",\"tokens.used\":\"usado em {date}\",\"tokens.never\":\"nunca usado\",\"tokens.revokeNote\":\"Apagar um token faz ele parar de funcionar na hora.\",\"tokens.once\":\"Copie este token agora. Ele aparece só uma vez, e o Runlight guarda apenas uma impressão dele.\",\"tokens.claudeCode\":\"O Claude Code recebe o token com este comando.\",\"tokens.json\":\"O Cursor e outros apps que usam uma configuração JSON mcpServers usam isto no lugar.\",\"tokens.done\":\"Pronto, já copiei\",\"sites.domains\":\"Domínios\",\"sites.domainsHint\":\"Informe o domínio do site, como example.com, e separe vários com vírgulas.\",\"sites.name\":\"Nome\",\"sites.namePlaceholder\":\"Meu blog\",\"sites.timezoneHint\":\"Os dias são contados em {zone}, e você pode mudar isso depois nas configurações.\",\"sites.add\":\"Adicionar site\",\"sites.addTitle\":\"Adicionar um site\",\"sites.firstTitle\":\"Adicione seu primeiro site\",\"sites.firstLead\":\"O Runlight conta cada site que você adicionar aqui. Informe o domínio do site, e a próxima tela mostra a tag de script para colocar nas páginas dele.\",\"sites.delete\":\"Excluir este site\",\"sites.deleteHint\":\"Excluir um site apaga todas as visitas, links, metas e relatórios dele, e isso não pode ser desfeito.\",\"app.signOut\":\"Sair\",\"install.ignoreServer\":\"Para parar de contar suas próprias visitas, abra {link} uma vez em cada navegador que você usa.\",\"panel.geoCredit\":\"Localizações por {name}\",\"visits.tab\":\"Visitas\",\"visits.linksTab\":\"Links curtos\",\"visits.intro\":\"Traga seu histórico de visitas para que seus gráficos voltem a antes de o Runlight começar a contar. Só vêm as visitas anteriores à primeira do Runlight, então nada é contado duas vezes.\",\"visits.onlyUmami\":\"A API do Umami entrega cada visita com página, origem, lugar e dispositivo, que é o que o Runlight guarda. Plausible, Fathom e Google Analytics só fornecem totais, e totais não viram visitas de novo. Se você tem cada visualização de página num arquivo, importe-o como CSV.\",\"visits.csvMoment\":\"Mais de {max} linhas compartilham o mesmo momento, mais do que cabe num lote.\",\"visits.csvStopped\":\"Parado. Importar o mesmo arquivo de novo é seguro, porque as linhas já trazidas são substituídas.\",\"visits.csvSkipped\":\"{n} linhas ficaram de fora porque vieram depois da primeira visita própria do Runlight, antes do que este site guarda, ou não eram uma visualização nem um evento com nome.\",\"visits.csvRunning\":\"{done} de {total} linhas enviadas, {pageviews} visualizações até agora\",\"visits.csvRunlight\":\"{name} está no formato de visitas do Runlight, com {rows} linhas.\",\"visits.csvUmami\":\"{name} é uma exportação do Umami com {rows} linhas.\",\"visits.csvOther\":\"Escolher outro arquivo\",\"visits.csvChoose\":\"Escolher arquivo CSV\",\"visits.csvHelp\":\"Use o CSV da exportação de dados do Umami, ou um arquivo com uma linha por visualização de página no formato de visitas do Runlight, descrito na documentação do painel.\",\"visits.fromCsv\":\"Um arquivo CSV\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Importar de\",\"visits.onlyUmamiTitle\":\"Por que só o Umami\",\"visits.find\":\"Buscar sites\",\"visits.website\":\"Site do Umami\",\"visits.noWebsites\":\"Esta conta do Umami não tem sites.\",\"visits.start\":\"Importar visitas\",\"visits.running\":\"{done} de {total} dias lidos, {pageviews} visualizações até agora\",\"visits.done\":\"Pronto. {pageviews} visualizações e {events} eventos chegaram em {visits} visitas.\",\"visits.stopped\":\"Parado. Comece de novo para continuar do último dia importado.\",\"props.title\":\"Propriedades\",\"props.open\":\"Propriedades de {name}\",\"props.none\":\"Eles aparecem quando o evento é enviado com propriedades.\",\"account.title\":\"Conta\",\"account.owner\":\"Você é o proprietário, então pode mudar tudo e gerenciar pessoas. Ninguém mais pode remover você.\",\"account.viewer\":\"Você é leitor, então pode ver as estatísticas de cada site sem mudar nada.\",\"account.current\":\"Senha atual\",\"account.next\":\"Nova senha\",\"account.nextHint\":\"Use pelo menos dez caracteres. Mudar a senha encerra a sessão nos seus outros navegadores.\",\"account.save\":\"Mudar senha\",\"account.saved\":\"Senha alterada\",\"settings.people\":\"Pessoas\",\"people.intro\":\"Todos aqui podem entrar neste servidor. Administradores podem mudar tudo o que o proprietário muda e gerenciar pessoas, mas ninguém pode remover o proprietário. Membros mudam as configurações de cada site, e leitores leem as estatísticas de cada site sem mudar nada. Convide um colega e ele escolhe a própria senha.\",\"people.you\":\"você\",\"people.role\":\"Função\",\"people.owner\":\"Proprietário\",\"people.viewer\":\"Leitor\",\"people.roles\":\"Membros não podem gerenciar pessoas, configurar o serviço de e-mail ou o assistente, nem excluir um site. Só o proprietário pode passar a propriedade a um administrador.\",\"people.emailPlaceholder\":\"O e-mail da pessoa\",\"pluginKey.title\":\"Chave para plugins de CMS\",\"pluginKey.intro\":\"Os plugins de WordPress, Drupal e Craft usam esta chave para informar os agentes de IA que leem as páginas deste site. Ela só informa para este site e não lê nada. Substituí-la faz a antiga parar na hora.\",\"pluginKey.replace\":\"Substituir chave\",\"export.csv\":\"Baixar CSV\",\"export.zip\":\"Exportar\",\"export.title\":\"Baixar tudo desta visão em arquivos CSV\",\"funnels.title\":\"Funis\",\"funnels.intro\":\"Um funil segue os passos que você espera que uma visita dê, como a página de preços e depois o cadastro, e mostra quantas visitas passaram por cada passo, em ordem.\",\"funnels.none\":\"Adicione um abaixo para ver onde as pessoas param no caminho.\",\"funnels.add\":\"Adicionar funil\",\"funnels.name\":\"Nome\",\"funnels.namePlaceholder\":\"Cadastro\",\"funnels.steps\":\"Passos\",\"funnels.stepsHint\":\"Um caminho de página pode usar * para qualquer coisa, como /blog/*. Cada passo precisa acontecer depois do anterior, na mesma visita.\",\"funnels.kind\":\"Tipo de passo\",\"funnels.page\":\"Página\",\"funnels.event\":\"Evento\",\"funnels.removeStep\":\"Remover este passo\",\"funnels.addStep\":\"Adicionar um passo\",\"funnels.save\":\"Salvar funil\",\"funnels.create\":\"Criar funil\",\"funnels.stepPage\":\"Página {match}\",\"funnels.stepEvent\":\"Evento {match}\",\"funnels.wentOn\":\"{pct} seguiram\",\"funnels.tab\":\"Funis\",\"funnels.goalsTab\":\"Metas\",\"sites.modeHere\":\"Contar aqui\",\"sites.modeConnect\":\"Conectar outro Runlight\",\"sites.connectIntro\":\"Conecte aqui um site que já se conta com o Runlight dentro do próprio app. Os números dele ficam lá. Você entra nele uma vez e autoriza este servidor, e depois pode ver e mudar o site daqui.\",\"sites.connectUrl\":\"O endereço do Runlight\",\"sites.connectToken\":\"Token de API\",\"sites.connectTokenHint\":\"Crie um token nessa instalação, em Configurações, API e IA. Com um token de leitura os números aparecem aqui e as configurações ficam lá.\",\"sites.connect\":\"Conectar\",\"sites.all\":\"Todos os sites\",\"sites.remoteNote\":\"Este site é contado pelo próprio Runlight em {url}, que deixa este servidor lê-lo. Permita mudanças para gerenciar também as configurações daqui.\",\"sites.disconnect\":\"Desconectar este site\",\"sites.disconnectHint\":\"Desconectar remove o site deste servidor. O próprio Runlight dele e tudo o que contou continuam como estão.\",\"sites.disconnectButton\":\"Desconectar site\",\"sites.confirmDisconnect\":\"Confirmar desconexão\",\"sites.disconnectName\":\"Desconectar {name}?\",\"settings.data\":\"Dados\",\"data.retention\":\"Manter visitas por\",\"data.retentionHint\":\"Visitas e eventos mais antigos são apagados de vez ao salvar e depois todos os dias. Metas, links e configurações continuam.\",\"data.forever\":\"Sempre\",\"data.months\":\"{n} meses\",\"data.years\":\"{n} anos\",\"data.deletesBefore\":\"As visitas anteriores a {date} serão apagadas ao salvar.\",\"data.unreachable\":\"Não foi possível contactar {url} para ler esta definição. Tente de novo dentro de um minuto.\",\"data.export\":\"Exportar tudo\",\"data.exportHint\":\"O ZIP traz todos os relatórios deste site desde a primeira visita, como arquivos CSV.\",\"data.download\":\"Baixar ZIP\",\"sites.remoteTitle\":\"Contado por outro Runlight\",\"sites.openRemote\":\"Abrir o painel dele\",\"sites.useToken\":\"Usar um token de API\",\"sites.useSignIn\":\"Entrar nele\",\"sites.remoteManaged\":\"Este site é contado pelo próprio Runlight em {url}. As mudanças feitas aqui são salvas lá.\",\"sites.allowChanges\":\"Permitir mudanças\",\"sites.reconnect\":\"Ligar de novo\",\"sites.reconnectHint\":\"Use isto se a instalação já não aceitar este servidor, por exemplo depois de o token ter sido apagado lá.\",\"sites.connectError.expired\":\"Essa conexão demorou demais ou já foi usada. Comece de novo.\",\"sites.connectError.denied\":\"A conexão não foi permitida.\",\"sites.connectError.refused\":\"A instalação não deixou este servidor se conectar. Comece de novo ou conecte-a com um token de API.\",\"sites.connectError.token\":\"A instalação não deu um token a este servidor. Comece de novo.\",\"sites.connectError.failed\":\"A conexão não foi concluída. Comece de novo.\",\"mail.fromRemote\":\"Enviado por {host} a partir de {from}\",\"mail.noneRemote\":\"{host} ainda não tem serviço de e-mail, então não pode enviar estes relatórios. Configure um no próprio painel dele, em Configurações, Serviço de e-mail.\",\"tokens.manages\":\"Pode mudar configurações\",\"account.again\":\"Repita a nova senha\",\"account.mismatch\":\"As duas senhas novas não são iguais.\",\"account.strength0\":\"Curta demais\",\"account.strength1\":\"Fraca\",\"account.strength2\":\"Razoável\",\"account.strength3\":\"Boa\",\"account.strength4\":\"Forte\",\"mail.introRemote\":\"Os relatórios deste site saem pelo serviço de e-mail configurado em {host}.\",\"settings.assistant\":\"Assistente de IA\",\"assistant.open\":\"Perguntar sobre suas estatísticas\",\"assistant.title\":\"Assistente de IA\",\"assistant.about\":\"Ele responde a partir dos números de {site}, que lê no momento em que você pergunta.\",\"assistant.clear\":\"Nova conversa\",\"assistant.intro\":\"Pergunte sobre visitantes, origens, páginas, metas ou qualquer coisa que este painel mostra.\",\"assistant.ask1\":\"Como este período se compara com o anterior?\",\"assistant.ask2\":\"De onde vem a maioria dos visitantes?\",\"assistant.ask3\":\"Quais páginas prendem as pessoas por mais tempo?\",\"assistant.ask4\":\"Assistentes de IA estão mandando visitantes para cá?\",\"assistant.placeholder\":\"Faça uma pergunta\",\"assistant.send\":\"Enviar\",\"assistant.thinking\":\"Lendo seus números\",\"assistant.empty\":\"O assistente não respondeu nada.\",\"assistant.checked_one\":\"Leu {n} relatório\",\"assistant.checked_other\":\"Leu {n} relatórios\",\"assistant.setupOwner\":\"O assistente precisa de um serviço de IA para responder. Adicione uma chave da Anthropic, OpenAI ou Gemini, ou aponte para um modelo na sua própria máquina.\",\"assistant.setupViewer\":\"O assistente ainda não está configurado. O proprietário ou um administrador pode adicionar um serviço de IA em Configurações, Assistente de IA.\",\"assistant.setup\":\"Configurar o assistente\",\"assistant.ownersOnly\":\"Só o proprietário ou um administrador pode configurar o assistente.\",\"assistant.settingsIntro\":\"Escolha um serviço de IA e cole abaixo uma chave de API dele. Depois, o botão do robô ao lado de Filtrar abre um assistente que responde perguntas sobre suas estatísticas em palavras simples.\",\"assistant.privacyTitle\":\"O que o serviço vê\",\"assistant.privacy\":\"Cada pergunta vai para esse serviço com os números que o assistente lê para responder. O Runlight não guarda nada sobre visitantes individuais, então nada pessoal é enviado. O assistente só lê, com as mesmas ferramentas do servidor MCP, então nunca pode mudar nada.\",\"assistant.notEncryptedTitle\":\"Sua chave será guardada sem criptografia\",\"assistant.notEncrypted\":\"Este Runlight não tem RUNLIGHT_SECRET, então a chave fica no banco de dados exatamente como você a digita. Defina RUNLIGHT_SECRET ou RUNLIGHT_TOKEN no servidor para mantê-la criptografada.\",\"assistant.provider\":\"Serviço de IA\",\"assistant.address\":\"Endereço\",\"assistant.addressHint\":\"Onde fica a API compatível com OpenAI do serviço, sem /chat/completions no final.\",\"assistant.addressLocal\":\"Onde o modelo roda. O servidor do Runlight precisa conseguir alcançá-lo.\",\"assistant.model\":\"Modelo\",\"assistant.modelPlaceholder\":\"O nome do modelo, como o serviço o lista\",\"assistant.modelDefault\":\"Deixe vazio para usar {model}.\",\"assistant.modelHint\":\"Digite a chave acima e carregue os modelos do serviço, ou digite o nome de um modelo. Funciona melhor um modelo que sabe usar ferramentas.\",\"assistant.key\":\"Chave de API\",\"assistant.remove\":\"Desligar o assistente\",\"assistant.removeHint\":\"Remove o serviço e a chave. O botão do robô então pede a um proprietário para configurá-lo de novo.\",\"journeys.open\":\"Jornadas\",\"journeys.title\":\"Jornadas\",\"journeys.intro\":\"Os caminhos que as visitas fazem pelo site, página a página. Clique numa página para seguir só as visitas que passaram por ela.\",\"journeys.steps\":\"Passos\",\"journeys.stepCount\":\"{n} passos\",\"journeys.start\":\"Começando em\",\"journeys.end\":\"Terminando em\",\"journeys.anyPage\":\"Qualquer página\",\"journeys.step\":\"Passo {n}\",\"journeys.other\":\"Outras páginas\",\"journeys.left\":\"{n} não seguiram adiante\",\"journeys.follow\":\"Seguir as visitas que passaram por {page}\",\"journeys.following\":\"Visitas que passaram por {page} no passo {step}.\",\"journeys.none\":\"Tente um período maior para ver mais visitas.\",\"secret.show\":\"Mostrar\",\"secret.hide\":\"Ocultar\",\"people.invite\":\"Convidar\",\"people.invited\":\"convidado\",\"people.invitedMeta\":\"{role}, o link vale até {date}\",\"people.resend\":\"Enviar de novo\",\"people.emailed\":\"Um convite está a caminho de {email}. Você também pode enviar este link você mesmo.\",\"people.noMail\":\"Este servidor não tem serviço de e-mail, então envie este link para {email} você mesmo. Configure um em Configurações, Serviço de e-mail para enviar convites por e-mail.\",\"people.mailFailed\":\"O e-mail para {email} não saiu ({error}). Envie este link você mesmo.\",\"people.linkHint\":\"O link funciona uma vez, por sete dias. Enviar de novo cria um link novo e anula este.\",\"twofa.title\":\"Login em duas etapas\",\"twofa.off\":\"Desligado. Ligue e o login também vai pedir um código de um app autenticador no seu celular.\",\"twofa.on_one\":\"Ligado. O login pede um código do seu app autenticador. Resta {n} código de recuperação.\",\"twofa.on_other\":\"Ligado. O login pede um código do seu app autenticador. Restam {n} códigos de recuperação.\",\"twofa.turnOn\":\"Ligar\",\"twofa.turnOff\":\"Desligar\",\"twofa.newCodes\":\"Novos códigos de recuperação\",\"twofa.password\":\"Sua senha\",\"twofa.continue\":\"Continuar\",\"twofa.scan\":\"Escaneie isto com um app autenticador, como 1Password, Google Authenticator ou Authy, e digite o código de seis dígitos que ele mostra.\",\"twofa.qr\":\"Código QR para o seu app autenticador\",\"twofa.manual\":\"Ou digite esta chave no app.\",\"twofa.code\":\"Código do app\",\"twofa.confirm\":\"Ligar\",\"twofa.codesIntro\":\"Guarde estes códigos de recuperação num lugar seguro. Cada um faz login uma vez se você perder o celular, e eles não serão mostrados de novo.\",\"twofa.download\":\"Baixar\",\"twofa.copy\":\"Copiar\",\"twofa.saved\":\"Já salvei\",\"people.twoFactor\":\"duas etapas\",\"people.resetTwoFactor\":\"Redefinir duas etapas\",\"people.resetTwoFactorHint\":\"Desliga o login em duas etapas desta pessoa, caso tenha perdido o celular e os códigos de recuperação\",\"assistant.loadModels\":\"Carregar modelos\",\"assistant.loadingModels\":\"Carregando\",\"assistant.pickModel\":\"Escolha um modelo\",\"assistant.typeModel\":\"Digitar o nome de um modelo\",\"assistant.chooseFromList\":\"Escolher da lista\",\"journeys.sampled\":\"São os caminhos das {n} visitas mais recentes nessas datas.\",\"error.owner_only\":\"Só um proprietário pode alterar isto.\",\"error.domain_invalid\":\"Isso não é um nome de domínio.\",\"error.domain_in_use\":\"{domain} hospeda este painel ou um dos seus sites. Use um domínio ou subdomínio separado para os links curtos, como go.{domain}.\",\"error.domain_taken\":\"{domain} já pertence a outro site.\",\"error.link_url\":\"O destino deve ser uma URL completa, começando com https://\",\"error.link_protocol\":\"O destino deve começar com http:// ou https://\",\"error.link_long\":\"O destino tem mais de 2.000 caracteres.\",\"error.link_domain\":\"Primeiro adicione {domain} como domínio de links nas Configurações.\",\"error.link_slug\":\"Um slug tem letras, dígitos, hifens e sublinhados, até 100.\",\"error.link_taken\":\"/{slug} já está em uso.\",\"error.link_no_slug\":\"Não foi possível achar um slug livre. Tente de novo.\",\"error.test_email\":\"Digite um e-mail para onde enviar o teste.\",\"error.mail_unset\":\"Primeiro configure um serviço de e-mail.\",\"error.email_invalid\":\"Digite um endereço de e-mail.\",\"error.report_exists\":\"{email} já recebe este relatório.\",\"error.report_limit\":\"Um site pode enviar para no máximo 50 endereços.\",\"error.sample_soon\":\"Um exemplo acabou de sair. Espere um minuto e tente de novo.\",\"error.people_owner\":\"Só o proprietário ou um administrador pode gerenciar pessoas.\",\"error.role_needed\":\"Escolha administrador, membro ou leitor.\",\"error.account_exists\":\"{email} já tem uma conta.\",\"error.remove_self\":\"Você não pode remover a si mesmo.\",\"people.demoted\":\"Agora você é leitor, então as configurações estão fechadas e nada aqui pode ser mudado. O proprietário ou um administrador pode desfazer isso.\",\"links.importNoUrl\":\"Nada foi importado porque o arquivo não tem uma coluna url com endereços. Use as colunas name e url, além de slug e domain quando as tiver.\",\"app.sessionEnded\":\"Sua sessão foi encerrada, o que acontece quando uma sessão expira ou uma senha muda. {link} e você volta para esta visão.\",\"app.signInAgain\":\"Entre de novo\",\"links.noneYet\":\"Ninguém criou um link curto para este site ainda.\",\"error.remote_slow\":\"{host} demorou demais para responder. Tente um período mais curto.\",\"error.domain_not_public\":\"{domain} não é um domínio público. Use um que qualquer navegador consiga acessar.\",\"error.unreachable\":\"Não foi possível acessar {host}.\",\"error.redirected\":\"{host} respondeu com um redirecionamento.\",\"error.token_refused\":\"{host} recusou o token. Conecte-o de novo nas configurações do site.\",\"error.mail_failed\":\"Não foi possível enviar o e-mail ({detail}).\",\"error.mail_unreachable\":\"Não foi possível acessar {host}.\",\"error.mail_slow\":\"{host} demorou demais para responder, então o e-mail não foi enviado.\",\"error.mail_refused\":\"{host} recusou o e-mail ({detail}).\",\"error.mail_service\":\"Escolha um serviço de e-mail.\",\"error.mail_field\":\"O campo {field} é obrigatório.\",\"error.mail_option\":\"{field} deve ser um destes valores ({options}).\",\"error.mail_https\":\"A URL do webhook precisa usar https.\",\"error.mail_region\":\"Isso não é uma região da AWS, como us-east-1.\",\"error.mail_in_code\":\"O serviço de e-mail está definido no código, então não pode ser alterado aqui.\",\"error.mail_from\":\"Digite o endereço de onde saem os relatórios, como reports@example.com.\",\"error.smtp_starttls\":\"O servidor SMTP não oferece STARTTLS. Escolha TLS ou nenhuma em Segurança.\",\"error.unknown_account\":\"Essa conta não existe mais.\",\"error.password_short\":\"Use uma senha com pelo menos {min} caracteres.\",\"error.invite_gone\":\"Este convite expirou ou já foi usado. Peça um novo.\",\"error.too_many_tries\":\"Tentativas demais. Espere quinze minutos e tente de novo.\",\"error.password_current_wrong\":\"Sua senha atual não está certa.\",\"error.password_wrong\":\"Sua senha não está certa.\",\"error.code_wrong\":\"Esse código não está certo. Confira a hora do seu celular e tente o próximo.\",\"error.twofactor_off\":\"Ative primeiro o login em duas etapas.\",\"error.twofactor_self\":\"Desative seu próprio login em duas etapas em Conta.\",\"error.unknown_invite\":\"Esse convite não existe mais.\",\"error.origin_needed\":\"Defina primeiro o endereço deste Runlight (RUNLIGHT_URL no servidor, ou origin em routes()) para que um hub conectado possa adicionar domínios de links e relatórios por e-mail.\",\"error.twofactor_restart\":\"Códigos errados demais. Comece de novo a ativar o login em duas etapas.\",\"error.pick_origin\":\"Envie a origem do painel, como https://stats.example.com\",\"error.pick_hub\":\"O endereço deste hub não é aquele de onde ele se conectou. Conecte o site de novo a partir daqui.\",\"assistant.viewerDaily\":\"Perguntas por leitor por dia\",\"assistant.viewerDailyHint\":\"Cada pergunta é paga com a sua chave de IA. Leitores são as pessoas que você convida em Pessoas, que podem ler as estatísticas sem mudar nada, e cada um pode fazer este número de perguntas por dia. Use 0 para deixar o assistente só para os proprietários. Links de compartilhamento nunca têm o assistente.\",\"error.assistant_soon\":\"Você perguntou muito em pouco tempo. Espere um pouco e pergunte de novo.\",\"error.assistant_daily\":\"Leitores podem fazer {limit} perguntas por dia. Pergunte de novo amanhã.\",\"error.assistant_limit\":\"Use um número inteiro de 0 a 1.000.\",\"error.token_unset\":\"Defina RUNLIGHT_TOKEN, ou passe token ou authorize para routes(). Sem isso, o Runlight só fica aberto quando NODE_ENV é development.\",\"error.unauthorized\":\"Faça login ou envie um token para ver isto.\",\"error.sign_in\":\"Faça login primeiro.\",\"error.unknown_site\":\"Esse site não está aqui.\",\"error.filters_max\":\"Use no máximo {max} filtros de uma vez.\",\"error.filter_bad\":\"O Runlight não entende o filtro \\\"{filter}\\\".\",\"error.range_bad\":\"Essas datas não formam um período que o Runlight entenda.\",\"error.compare_bad\":\"O Runlight não conhece a comparação \\\"{compare}\\\".\",\"error.compare_range_bad\":\"Escolha as duas datas para comparar.\",\"error.send_json\":\"Envie isto como JSON.\",\"error.send_object\":\"Envie um objeto JSON.\",\"error.unknown_domain\":\"Esse domínio não é deste site.\",\"error.rows_needed\":\"Envie os links como uma lista de linhas.\",\"error.unknown_link\":\"Esse link não existe mais.\",\"error.not_found\":\"Isso não está aqui.\",\"error.unknown_goal\":\"Essa meta não existe mais.\",\"error.goal_invalid\":\"A meta não foi salva ({detail}).\",\"error.funnel_invalid\":\"O funil não foi salvo ({detail}).\",\"error.import_failed\":\"A importação parou ({detail}).\",\"error.assistant_failed\":\"O serviço de IA não respondeu como esperado ({detail}).\",\"error.assistant_invalid\":\"O assistente não foi salvo ({detail}).\",\"error.site_invalid\":\"O site não foi salvo ({detail}).\",\"error.connect_failed\":\"A conexão não começou ({detail}).\",\"error.method_not_allowed\":\"Isso não pode ser feito aqui.\",\"error.unknown_report\":\"Esse relatório não existe mais.\",\"error.unknown_share\":\"Esse link de compartilhamento não existe mais.\",\"error.token_name\":\"Dê um nome ao token.\",\"error.token_site\":\"Um token que altera configurações é para um só site. Escolha o site.\",\"error.unknown_token\":\"Esse token não existe mais.\",\"error.sites_in_code\":\"Aqui os sites são definidos no código, então são alterados lá.\",\"error.connect_url\":\"Digite o endereço da instalação, como https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} não respondeu como uma instalação do Runlight.\",\"error.connect_endpoints\":\"{url} indicou endpoints em outro endereço.\",\"error.connect_old\":\"{url} usa uma versão antiga do Runlight. Atualize-a ou conecte-a com um token de API das configurações dela.\",\"error.connect_register\":\"{url} não deixou este servidor se conectar. {reason}\",\"error.connect_expired\":\"Essa conexão demorou demais ou já foi usada. Comece de novo.\",\"error.connect_denied\":\"A conexão não foi permitida.\",\"error.connect_refused\":\"A instalação não deixou este servidor se conectar. Comece de novo ou conecte-a com um token de API.\",\"error.connect_token\":\"A instalação não deu um token a este servidor. Comece de novo.\",\"error.connect_again\":\"Conecte este site de novo para alterá-lo daqui.\",\"error.hub_domains\":\"Um hub conectado não pode alterar os domínios de um site.\",\"error.observe_many\":\"Envie no máximo 500 acessos de uma vez.\",\"error.observe_url\":\"Envie o endereço da página.\",\"error.site_remote\":\"Este site é contado pelo próprio Runlight. Conecte-o de novo nas configurações dele para alterá-lo daqui.\",\"error.unknown_funnel\":\"Esse funil não existe mais.\",\"error.assistant_dashboard\":\"Só o painel pode usar o assistente.\",\"error.share_not_available\":\"Isso não está disponível em um painel compartilhado.\",\"error.assistant_unset\":\"O assistente ainda não está configurado. Um proprietário pode configurá-lo em Configurações, Assistente de IA.\",\"error.question_needed\":\"Faça uma pergunta.\",\"error.site_name\":\"Um nome de site tem de 1 a 80 caracteres.\",\"error.unknown_timezone\":\"O Runlight não conhece o fuso horário \\\"{timezone}\\\".\",\"error.retention_bad\":\"Guarde as visitas por {months} meses, ou para sempre.\",\"error.share_gone\":\"Este link de compartilhamento não funciona mais.\",\"error.token_read_only\":\"Tokens de API só podem ler.\",\"error.icon_none\":\"Este site não tem ícone.\",\"error.event_needed\":\"Informe o evento.\",\"error.property_bad\":\"O Runlight não consegue ler esse nome de propriedade.\",\"error.unknown_dimension\":\"O Runlight não conhece o detalhamento \\\"{dimension}\\\".\",\"error.internal\":\"Algo deu errado no servidor. Tente de novo.\",\"filter.max\":\"Até {max} filtros valem ao mesmo tempo. Remova um para adicionar outro.\",\"error.sample_soon_hub\":\"Um hub conectado pode enviar um exemplo a cada dez minutos. Espere alguns minutos e tente de novo.\",\"people.demoteSelf\":\"Só o proprietário ou um administrador pode desfazer isso.\",\"people.demoteConfirm\":\"Mudar para {role}\",\"error.check_not_public\":\"não é um nome de domínio público\",\"error.check_timeout\":\"demorou demais para responder\",\"error.check_https\":\"não foi possível acessá-lo por HTTPS\",\"error.check_not_runlight\":\"algo respondeu, mas não o Runlight\",\"error.check_status\":\"respondeu {status}\",\"error.assistant_address\":\"Digite o endereço do serviço em Configurações, Assistente de IA.\",\"error.assistant_address_bad\":\"Digite o endereço do serviço, começando com https://\",\"error.assistant_cancelled\":\"A pergunta foi cancelada.\",\"error.assistant_key\":\"Digite sua chave do {provider}.\",\"error.assistant_model\":\"Digite um modelo em Configurações, Assistente de IA.\",\"error.assistant_no_models\":\"{host} não listou nenhum modelo. Digite o nome do modelo.\",\"error.assistant_provider\":\"Escolha um serviço de IA em Configurações, Assistente de IA.\",\"error.assistant_refused\":\"{host} recusou o pedido ({detail}).\",\"error.assistant_slow\":\"Essa pergunta demorou demais para ser respondida. Tente algo mais específico.\",\"error.assistant_status\":\"{host} respondeu {status}.\",\"error.assistant_steps\":\"O assistente precisou de passos demais para essa pergunta. Tente algo mais específico.\",\"error.assistant_timeout\":\"{host} demorou demais para responder.\",\"error.funnel_exists\":\"Já existe um funil chamado \\\"{name}\\\".\",\"error.funnel_long\":\"Um funil tem no máximo oito etapas.\",\"error.funnel_name\":\"Dê um nome ao funil.\",\"error.funnel_page_bad\":\"\\\"{match}\\\" não é um caminho nem uma URL.\",\"error.funnel_short\":\"Um funil precisa de pelo menos duas etapas.\",\"error.goal_amount\":\"Digite um valor, como 49 ou 9,99.\",\"error.goal_click_taken\":\"A meta de clique \\\"{match}\\\" já envia eventos com esse nome.\",\"error.goal_currency\":\"Use um código de moeda de três letras, como USD ou EUR.\",\"error.goal_event\":\"Digite o nome do evento.\",\"error.goal_event_taken\":\"Uma meta de evento já conta eventos chamados \\\"{name}\\\", então dê outro nome a esta meta de clique.\",\"error.goal_exists\":\"Já existe uma meta chamada \\\"{name}\\\".\",\"error.goal_kind\":\"Escolha o que a meta conta, um evento, uma visita a uma página ou um clique.\",\"error.goal_link\":\"Digite o endereço do link, como https://buy.stripe.com/*\",\"error.goal_name\":\"Dê um nome à meta.\",\"error.goal_page\":\"Digite o caminho de uma página, como /obrigado ou /blog/*\",\"error.goal_page_bad\":\"Essa página não é um caminho nem uma URL.\",\"error.goal_prop_kind\":\"Só uma meta de evento pode tirar o valor do evento. Use um valor fixo.\",\"error.goal_prop_name\":\"Um nome de propriedade usa letras, números, pontos, hífens e sublinhados.\",\"error.goal_selector\":\"Digite um seletor CSS, como #signup ou .buy-button\",\"error.import_day_full\":\"Um dia tem mais de {limit} eventos, mais do que uma etapa de importação consegue ler.\",\"error.import_key\":\"Digite sua chave do {service}.\",\"error.import_refused\":\"A chave ou o login foi recusado.\",\"error.import_slug_bad\":\"/{slug} tem caracteres que um slug do Runlight não pode usar.\",\"error.import_slug_taken\":\"/{slug} já é usado por \\\"{name}\\\".\",\"error.import_source\":\"O Runlight não consegue importar de {source}.\",\"error.import_status\":\"{host} respondeu {status}.\",\"error.import_umami_address\":\"Digite o endereço do seu Umami, como https://stats.example.com\",\"error.import_umami_login\":\"Digite uma chave de API, ou um usuário e uma senha.\",\"error.import_website\":\"Escolha o site do Umami a importar.\",\"error.import_csv_batch\":\"Envie no máximo {max} linhas por vez.\",\"error.import_csv_format\":\"Este arquivo não é uma exportação do Umami nem está no formato de visitas do Runlight. Confira a linha de cabeçalho.\",\"error.install_refused\":\"Essa instalação recusou o token.\",\"error.install_token\":\"Digite um token de API dessa instalação.\",\"error.site_domain_invalid\":\"\\\"{host}\\\" não é um nome de domínio.\",\"error.site_domain_needed\":\"Adicione o domínio do site, como example.com\",\"error.site_domain_taken\":\"{host} já pertence a {site}.\",\"share.goneTitle\":\"Este link de compartilhamento não funciona mais\",\"error.token_manage_only\":\"Um token de gestão só altera as configurações do próprio site.\",\"empty.pages.title\":\"Suas páginas principais vão aparecer aqui\",\"empty.pages.hint\":\"Cada página que as pessoas abrem entra na lista, com o tempo que passam nela.\",\"empty.sources.title\":\"Suas origens de tráfego vão aparecer aqui\",\"empty.sources.hint\":\"As buscas e os sites que mandam visitas para você são listados pelo nome.\",\"empty.locations.title\":\"Os locais das suas visitas vão aparecer aqui\",\"empty.locations.hint\":\"Veja de quais países e cidades vêm as visitas.\",\"empty.rhythm.title\":\"Seus horários mais movimentados vão aparecer aqui\",\"empty.rhythm.hint\":\"Cada hora da semana vai se preenchendo com as visitas.\",\"empty.ai.title\":\"Os agentes de IA que leem seu site vão aparecer aqui\",\"empty.ai.hint\":\"Assistentes como o ChatGPT e o Claude entram na lista quando leem suas páginas.\",\"empty.devices.title\":\"Os dispositivos das suas visitas vão aparecer aqui\",\"empty.devices.hint\":\"Veja quais navegadores e telas as pessoas usam.\",\"empty.events.title\":\"Seus eventos vão aparecer aqui\",\"empty.events.hint\":\"Os cliques em links externos e os eventos que você envia são contados na hora.\",\"empty.campaigns.title\":\"Suas campanhas vão aparecer aqui\",\"empty.campaigns.hint\":\"As visitas de links com tags UTM são agrupadas por campanha, origem e mídia.\",\"empty.links.title\":\"Seus links curtos vão aparecer aqui\",\"empty.links.hint\":\"Crie um link curto para compartilhar, e cada clique nele será contado.\",\"sites.refused\":\"{host} não aceita mais a conexão deste servidor, então os números não podem ser lidos. Conecte de novo para resolver.\",\"sites.connected\":\"Conectado a {host}.\",\"links.totalTip\":\"Todos os cliques nos seus links curtos nas datas escolhidas\",\"links.setup\":\"Como configurar\",\"links.recordType\":\"Tipo\",\"links.recordName\":\"Nome\",\"links.recordValue\":\"Valor\",\"links.doDns\":\"Adicione este registro no seu provedor de DNS.\",\"links.doDnsAlias\":\"Adicione este registro no seu provedor de DNS. Se ele não tiver ALIAS, use um registro A para o endereço IP do seu servidor.\",\"links.doHttps\":\"Faça sua hospedagem servir {domain} com HTTPS.\",\"links.doCheck\":\"Verifique de novo. Um registro novo pode levar alguns minutos para chegar.\",\"links.localNote\":\"Este painel roda em {host}, então o registro funciona quando ele tiver um endereço público.\",\"links.guide\":\"Guia de configuração\",\"funnels.emptyTitle\":\"Seus funis vão aparecer aqui\",\"share.emptyTitle\":\"Seus links de compartilhamento vão aparecer aqui\",\"tokens.emptyTitle\":\"Seus tokens vão aparecer aqui\",\"reports.emptyTitle\":\"Seus relatórios por e-mail vão aparecer aqui\",\"journeys.emptyTitle\":\"Os caminhos das pessoas vão aparecer aqui\",\"props.emptyTitle\":\"Os detalhes deste evento vão aparecer aqui\",\"empty.mini\":\"Esta lista se preenche conforme chegam visitas.\",\"empty.search\":\"Nada aqui corresponde ainda a “{q}”, tente outra palavra.\",\"delta.fromNone\":\"de 0\",\"people.admin\":\"Administrador\",\"people.member\":\"Membro\",\"people.handOver\":\"Tornar proprietário\",\"people.handOverHint\":\"Passa a propriedade a este administrador, e você vira administrador\",\"people.handOverConfirm\":\"Passar\",\"people.demotedMember\":\"Agora você é membro, então Pessoas e as configurações de toda a instalação estão fechadas para você. O proprietário ou um administrador pode desfazer isso.\",\"account.admin\":\"Você é administrador, então pode mudar tudo e gerenciar pessoas, exceto o proprietário.\",\"account.member\":\"Você é membro, então pode mudar as configurações de cada site. O proprietário e os administradores gerenciam as pessoas e as configurações de toda a instalação.\",\"mail.adminOnly\":\"Ainda não há um serviço de e-mail configurado. O proprietário ou um administrador pode configurar um aqui.\",\"error.admin_only\":\"Só o proprietário ou um administrador pode mudar isso.\",\"error.owner_protected\":\"Ninguém além do proprietário pode mudar ou remover o proprietário.\",\"error.owner_hand_over\":\"Só o proprietário pode passar a propriedade.\",\"error.owner_needs_admin\":\"Torne a pessoa administrador primeiro.\",\"embed.goneTitle\":\"Este link do painel não funciona\",\"embed.gone\":\"Abra o painel novamente a partir da administração do seu site.\",\"embed.expiredTitle\":\"Esta visualização expirou\",\"embed.expired\":\"O painel dentro da sua administração fica aberto por uma hora de cada vez. Recarregue a página para abri-lo de novo.\",\"embed.reload\":\"Recarregar a página\",\"embedKey.title\":\"Chave para o painel no seu CMS\",\"embedKey.intro\":\"Com esta chave nas configurações, os plugins para WordPress, Drupal e Craft mostram o painel deste site dentro da sua administração. Ela abre a visualização somente leitura que um link compartilhado mostra e não consegue ler nada sozinha. Exclua-a em Configurações, API e IA para pará-la na hora.\",\"embedKey.make\":\"Criar uma chave\",\"embedKey.another\":\"Criar outra chave\",\"embedKey.name\":\"Painel em um CMS\",\"tokens.embeds\":\"Abre o painel em um CMS\",\"error.embed_expired\":\"Este painel expirou. Recarregue a página para abri-lo de novo.\",\"error.embed_site\":\"Uma chave para o painel em um CMS é para um só site. Escolha o site.\"}"
|
|
2
|
+
"en": "{\"app.site\":\"Site\",\"app.confirmDelete\":\"Delete {name}?\",\"app.signedOut\":\"Open this page once with {token} followed by your {env} to sign in.\",\"app.live.title\":\"Visitors in the last five minutes\",\"app.live_one\":\"{n} here now\",\"app.live_other\":\"{n} here now\",\"headline.who_one\":\"{n} person\",\"headline.who_other\":\"{n} people\",\"headline.visited_one\":\"visited\",\"headline.visited_other\":\"visited\",\"headline.matched_one\":\"matched these filters\",\"headline.matched_other\":\"matched these filters\",\"headline.plain\":\"{who} {verb} {when}.\",\"headline.up\":\"{who} {verb} {when}, {change} than {against}.\",\"headline.down\":\"{who} {verb} {when}, {change} than {against}.\",\"headline.same\":\"{who} {verb} {when}, the same as {against}.\",\"headline.more\":\"{pct}% more\",\"headline.fewer\":\"{pct}% fewer\",\"headline.lastYear\":\"the same days last year\",\"when.today\":\"today\",\"when.yesterday\":\"yesterday\",\"when.7d\":\"in the last 7 days\",\"when.30d\":\"in the last 30 days\",\"when.90d\":\"in the last 90 days\",\"when.month\":\"this month\",\"when.last_month\":\"last month\",\"when.year\":\"this year\",\"when.12mo\":\"in the last 12 months\",\"when.all\":\"since tracking began\",\"when.range\":\"from {range}\",\"when.day\":\"on {day}\",\"before.today\":\"yesterday\",\"before.yesterday\":\"the day before\",\"before.7d\":\"the 7 days before\",\"before.30d\":\"the 30 days before\",\"before.90d\":\"the 90 days before\",\"before.month\":\"the same stretch before it\",\"before.last_month\":\"the month before\",\"before.year\":\"the same stretch before it\",\"before.12mo\":\"the 12 months before\",\"before.all\":\"the stretch before\",\"before.range\":\"the same stretch before\",\"period.today\":\"Today\",\"period.yesterday\":\"Yesterday\",\"period.7d\":\"Last 7 days\",\"period.30d\":\"Last 30 days\",\"period.90d\":\"Last 90 days\",\"period.month\":\"This month\",\"period.last_month\":\"Last month\",\"period.year\":\"This year\",\"period.12mo\":\"Last 12 months\",\"period.all\":\"All time\",\"compare.title\":\"Compare to\",\"compare.vs\":\"vs\",\"compare.previous\":\"Previous period\",\"compare.year\":\"Same period last year\",\"compare.custom\":\"Custom range\",\"compare.off\":\"No comparison\",\"compare.apply\":\"Compare\",\"compare.dialog\":\"Compare with\",\"calendar.dialog\":\"Choose dates\",\"calendar.earlier\":\"Earlier months\",\"calendar.later\":\"Later months\",\"calendar.pick\":\"Pick a start and an end day\",\"calendar.range\":\"{from} to {to}\",\"calendar.open\":\"{from} to ...\",\"calendar.apply\":\"Apply\",\"common.cancel\":\"Cancel\",\"common.close\":\"Close\",\"common.clearAll\":\"Clear all\",\"common.loading\":\"Loading\",\"common.search\":\"Search\",\"common.none\":\"(none)\",\"metric.visitors\":\"Visitors\",\"metric.visits\":\"Visits\",\"metric.pageviews\":\"Pageviews\",\"metric.viewsPerVisit\":\"Views per visit\",\"metric.bounceRate\":\"Bounce rate\",\"metric.visitDuration\":\"Visit duration\",\"hint.visitors\":\"Different people, counted once a day\",\"hint.visits\":\"A visit is a session, and it ends after 30 idle minutes\",\"hint.pageviews\":\"Every page loaded, repeats included\",\"hint.viewsPerVisit\":\"Pageviews divided by visits\",\"hint.bounceRate\":\"A visit with one pageview and no event that lasts under ten seconds\",\"hint.visitDuration\":\"Average time per visit while the page was visible and in focus\",\"delta.title\":\"Against the comparison period\",\"delta.none\":\"no change\",\"chart.label\":\"{metrics} over time\",\"chart.scaled\":\"Each line is scaled to its own peak. Hover for values.\",\"chart.pick\":\"Click cards to add them to the chart.\",\"chart.dashed\":\"Dashed: {range}.\",\"chart.then\":\"then: {when}\",\"panel.pages\":\"Pages\",\"panel.sources\":\"Sources\",\"panel.locations\":\"Locations\",\"panel.rhythm\":\"When people visit\",\"panel.ai\":\"AI agents\",\"panel.devices\":\"Devices\",\"panel.events\":\"Events\",\"panel.campaigns\":\"Campaigns\",\"panel.views\":\"{title} views\",\"panel.empty\":\"Nothing in this range\",\"panel.more\":\"Show more\",\"panel.filterBy\":\"Filter by {name}\",\"panel.showMap\":\"Show a map\",\"panel.showList\":\"Show the list\",\"panel.fullMap\":\"Full screen map\",\"tab.top\":\"Top\",\"tab.entry\":\"Entry\",\"tab.exit\":\"Exit\",\"tab.channels\":\"Channels\",\"tab.sources\":\"Sources\",\"tab.referrers\":\"Referrers\",\"tab.countries\":\"Countries\",\"tab.regions\":\"Regions\",\"tab.cities\":\"Cities\",\"tab.agents\":\"Agents\",\"tab.pages\":\"Pages\",\"tab.device\":\"Device\",\"tab.browser\":\"Browser\",\"tab.os\":\"OS\",\"tab.screen\":\"Screen\",\"tab.language\":\"Language\",\"tab.event\":\"Event\",\"tab.campaign\":\"Campaign\",\"tab.source\":\"Source\",\"tab.medium\":\"Medium\",\"tab.content\":\"Content\",\"tab.term\":\"Term\",\"column.visitors\":\"visitors\",\"column.fetches\":\"fetches\",\"column.events\":\"events\",\"column.time\":\"time\",\"column.bounce\":\"bounce\",\"channel.Direct\":\"Direct\",\"channel.Organic Search\":\"Organic Search\",\"channel.Paid Search\":\"Paid Search\",\"channel.Social\":\"Social\",\"channel.Email\":\"Email\",\"channel.AI\":\"AI\",\"channel.Referral\":\"Referral\",\"channel.Campaign\":\"Campaign\",\"device.desktop\":\"Desktop\",\"device.mobile\":\"Mobile\",\"device.tablet\":\"Tablet\",\"ai.live\":\"Live fetches\",\"ai.crawl\":\"Crawls\",\"rhythm.busiest\":\"Busiest: {when}\",\"rhythm.table\":\"Visits by weekday and hour\",\"rhythm.cell_one\":\"{when}: {n} visit\",\"rhythm.cell_other\":\"{when}: {n} visits\",\"scale.fewer\":\"Fewer\",\"scale.more\":\"More\",\"map.failed\":\"Could not load the map\",\"map.label\":\"Visitors by country: {top}\",\"map.visitors_one\":\"{n} visitor\",\"map.visitors_other\":\"{n} visitors\",\"map.none\":\"No visitors\",\"map.title\":\"Around the world\",\"filter.button\":\"Filter\",\"filter.remove\":\"Remove filter\",\"filter.title\":\"Show visits\",\"filter.where\":\"where\",\"filter.and\":\"and\",\"filter.field\":\"Field\",\"filter.match\":\"Match\",\"filter.is\":\"is\",\"filter.not\":\"is not\",\"filter.contains\":\"contains\",\"filter.value\":\"Value\",\"filter.placeholder\":\"Type a value or pick one below\",\"filter.placeholderContains\":\"Any part of the value\",\"filter.removeCondition\":\"Remove this condition\",\"filter.add\":\"+ Add a condition\",\"filter.note\":\"Every condition has to hold. Click any row on the dashboard to add one without opening this.\",\"filter.apply_one\":\"Apply {n} condition\",\"filter.apply_other\":\"Apply {n} conditions\",\"filter.everything\":\"Show everything\",\"group.pages\":\"Pages\",\"group.sources\":\"Sources\",\"group.location\":\"Location\",\"group.device\":\"Device\",\"group.behaviour\":\"Behaviour\",\"field.page\":\"Page\",\"field.entry\":\"Entry page\",\"field.exit\":\"Exit page\",\"field.hostname\":\"Hostname\",\"field.channel\":\"Channel\",\"field.source\":\"Source\",\"field.referrer\":\"Referrer\",\"field.utm_campaign\":\"Campaign\",\"field.utm_source\":\"UTM source\",\"field.utm_medium\":\"UTM medium\",\"field.utm_content\":\"UTM content\",\"field.utm_term\":\"UTM term\",\"field.country\":\"Country\",\"field.region\":\"Region\",\"field.city\":\"City\",\"field.device\":\"Device\",\"field.browser\":\"Browser\",\"field.browser_version\":\"Browser version\",\"field.os\":\"OS\",\"field.os_version\":\"OS version\",\"field.screen\":\"Screen\",\"field.language\":\"Language\",\"field.event\":\"Event\",\"foot.powered\":\"Powered by {name}\",\"foot.language\":\"Language\",\"theme.light\":\"Light theme\",\"theme.dark\":\"Dark theme\",\"column.visits\":\"visits\",\"column.pageviews\":\"pageviews\",\"column.scroll\":\"scroll\",\"column.duration\":\"duration\",\"column.share\":\"share\",\"rhythm.typical\":\"{x}× a typical hour\",\"rhythm.quiet\":\"No visits in this hour\",\"app.home\":\"Back to the overview\",\"settings.open\":\"Settings\",\"settings.title\":\"Settings\",\"settings.general\":\"General\",\"settings.install\":\"Install\",\"settings.siteName\":\"Site name\",\"settings.timezone\":\"Timezone\",\"settings.timezoneHint\":\"Days in your reports start at midnight here.\",\"settings.save\":\"Save\",\"settings.saving\":\"Saving\",\"settings.saved\":\"Saved\",\"settings.language\":\"Language\",\"settings.languageHint\":\"Just for this browser.\",\"settings.theme\":\"Theme\",\"settings.themeSystem\":\"Device setting\",\"settings.themeLight\":\"Light\",\"settings.themeDark\":\"Dark\",\"install.live\":\"Receiving visits. The last one was {when}.\",\"install.none\":\"No visits yet. Add the script below, then open a page on your site.\",\"install.script\":\"Add this to every page, just before {tag}.\",\"install.copy\":\"Copy\",\"install.copied\":\"Copied\",\"install.events\":\"Clicks on anything can be counted with no JavaScript.\",\"install.eventsJs\":\"You can also send events from JavaScript, for things that are not clicks.\",\"install.agents\":\"To see AI agents like ChatGPT and Claude reading your pages, pass each request to Runlight in your middleware with the code below.\",\"install.ignore\":\"Your own visits\",\"install.ignored\":\"Your visits from this browser are not counted.\",\"install.counted\":\"Your visits from this browser are counted.\",\"install.ignoreButton\":\"Ignore this browser\",\"install.trackButton\":\"Count this browser again\",\"install.ignoreElsewhere\":\"Dashboard on a different domain from the site? Open {link} once in each browser you use.\",\"theme.system\":\"Device setting\",\"theme.cycle\":\"Theme: {current}. Click for {next}.\",\"panel.links\":\"Links\",\"links.new\":\"New link\",\"links.manage\":\"Manage\",\"links.clicks\":\"clicks\",\"links.url\":\"Destination URL\",\"links.urlPlaceholder\":\"https://example.com/a/long/address\",\"links.name\":\"Name\",\"links.namePlaceholder\":\"Optional, for your own reference\",\"links.slug\":\"Slug\",\"links.slugPlaceholder\":\"Leave blank for a random one\",\"links.domain\":\"Domain\",\"links.create\":\"Create link\",\"links.save\":\"Save changes\",\"links.created\":\"Your short link is ready.\",\"links.another\":\"Make another\",\"links.edit\":\"Edit link\",\"links.delete\":\"Delete\",\"links.confirmDelete\":\"Delete {name}? Its clicks stay in your stats.\",\"links.copy\":\"Copy\",\"links.copied\":\"Copied\",\"links.search\":\"Search links\",\"links.sortClicks\":\"Most clicked\",\"links.sortNewest\":\"Newest\",\"links.sortName\":\"Name\",\"links.import\":\"Import CSV\",\"links.importDone_one\":\"Imported {n} link.\",\"links.importDone_other\":\"Imported {n} links.\",\"links.importFailed\":\"Row {row}: {reason}\",\"links.importHelp\":\"Use the columns name and url, plus slug and domain when you have them.\",\"links.destination\":\"Goes to\",\"links.clicksOverTime\":\"Clicks over time\",\"links.sources\":\"Sources\",\"links.countries\":\"Countries\",\"links.devices\":\"Devices\",\"links.browsers\":\"Browsers\",\"links.total_one\":\"{n} click\",\"links.total_other\":\"{n} clicks\",\"links.domains\":\"Domains for short links\",\"links.domainsHelp\":\"Use a domain or subdomain you own for short links, like t.example.com. Links on it live at its root, as in t.example.com/sale.\",\"links.addDomain\":\"Add domain\",\"links.domainPlaceholder\":\"t.example.com\",\"links.ownDomain\":\"This site ({prefix})\",\"links.removeDomain\":\"Remove\",\"settings.links\":\"Custom domains\",\"links.confirm\":\"Confirm delete\",\"links.editButton\":\"Edit\",\"links.step1\":\"At your DNS provider, add a CNAME record for the subdomain that points to {host}, where this dashboard runs. For a bare domain with no subdomain, use an A or ALIAS record to the same server instead.\",\"links.step2\":\"Make your host accept the domain and serve HTTPS for it. On Vercel or Netlify, add it to your project's domains, and on your own server, add it to the config and the certificate. If Runlight runs inside your app, pass requests to rl.linkDomainResponse() in your middleware.\",\"links.step3\":\"Add the domain below. Runlight then checks that it reaches this dashboard.\",\"links.checking\":\"Checking\",\"links.working\":\"Working\",\"links.notWorking\":\"Not reaching Runlight yet: {reason}\",\"links.recheck\":\"Check again\",\"links.sortBy\":\"Sort links\",\"links.removeNote\":\"Removing a domain keeps its links and their clicks. They move to {fallback} until you add the domain back, then return to it.\",\"links.removedDomain\":\"{domain}/ (removed)\",\"prompt.copy\":\"Copy prompt\",\"prompt.domainHint\":\"Copy these steps with your addresses filled in, and paste them into it.\",\"prompt.installHint\":\"Copy the setup steps and paste them into it.\",\"links.showing\":\"Showing {shown} of {total}\",\"links.showMore\":\"Show {n} more\",\"links.clicksLabel\":\"Clicks\",\"links.createdOn\":\"Created {date}\",\"settings.import\":\"Import\",\"import.intro\":\"Bring your short links over from another service, with their click history where the service shares it. Your key or password is used for this import only and never saved. Importing again skips links already here.\",\"import.source\":\"Import from\",\"import.csv\":\"Any CSV\",\"import.url\":\"Umami address\",\"import.apiKey\":\"API key\",\"import.username\":\"Username\",\"import.password\":\"Password\",\"import.signIn\":\"Sign in with\",\"import.withKey\":\"API key\",\"import.withPassword\":\"Username and password\",\"import.start\":\"Start import\",\"import.stop\":\"Stop\",\"import.running\":\"Importing {done} of {total} links\",\"import.done\":\"Finished: {links} links and {clicks} clicks imported, {skipped} already here.\",\"import.stopped\":\"Stopped after {done} of {total} links. Start again to carry on; links already imported are skipped.\",\"import.failed\":\"These could not be imported.\",\"import.history.full\":\"This imports every click, with its country, device, browser, and referrer.\",\"import.history.daily\":\"This imports clicks per day, without country or device.\",\"import.history.none\":\"This imports links only, since the service does not share dated clicks.\",\"import.umamiHelp\":\"In Umami, create an API key under Settings, API keys. Stock self-hosted Umami has no API keys, so sign in with your username and password instead. Either one is used for this import only and never saved.\",\"import.csvHelp\":\"Use the columns name and url, plus slug and domain when you have them.\",\"import.chooseFile\":\"Choose a CSV file\",\"import.token\":\"Access token\",\"import.workspace\":\"Workspace id (optional)\",\"import.dubHelp\":\"In Dub, create an API key under Settings, API Keys, with read access to links and analytics. Every click comes across on Business plans, daily counts on Pro, links only on Free.\",\"import.bitlyHelp\":\"In Bitly, go to Settings, API, enter your password, and generate a token. Bitly keeps daily counts only, as far back as your plan allows (none on Free).\",\"import.shortioHelp\":\"In Short.io, open Integrations and API and create a secret API key (a public key cannot read links). Short.io allows 60 statistics requests a minute, so this import paces itself.\",\"import.rebrandlyHelp\":\"In Rebrandly, create an API key under Settings, API keys. Rebrandly shares only total clicks, so links come across without history.\",\"import.soFar_one\":\"Imported {n} link so far\",\"import.soFar_other\":\"Imported {n} links so far\",\"import.moveNote\":\"Links on the service's own domain (bit.ly, dub.sh, rebrand.ly, short.gy) move to {fallback} with the same slug; branded domains are added under Custom domains.\",\"prompt.title\":\"Using a coding assistant?\",\"compare.allTime\":\"There is nothing before all time to compare with.\",\"view.reset\":\"Reset\",\"view.resetHint\":\"Back to the last 30 days, with no filters or comparison\",\"settings.sharing\":\"Sharing\",\"share.intro\":\"A share link shows this site's stats to anyone who has it, with no sign-in. It never shows your short links, your settings, or the site's address.\",\"share.namePlaceholder\":\"Who it is for, like a client or your team\",\"share.create\":\"Create share link\",\"share.empty\":\"Make one below and send it to anyone who should see these stats.\",\"share.unnamed\":\"Untitled\",\"share.open\":\"Open\",\"share.rename\":\"Rename\",\"share.save\":\"Save\",\"share.revokeNote\":\"Deleting a share link stops it working at once. Anyone who had it then sees a page saying so.\",\"share.gone\":\"Whoever shared it has turned it off. Ask them for a new link.\",\"live.title\":\"Right now\",\"live.sub\":\"Refreshes every 10 seconds\",\"live.now_one\":\"{n} person on the site\",\"live.now_other\":\"{n} people on the site\",\"live.nowHint\":\"Anyone who viewed a page or did something in the last 5 minutes.\",\"live.total_one\":\"{n} pageview in the last 30 minutes\",\"live.total_other\":\"{n} pageviews in the last 30 minutes\",\"live.minute_one\":\"{n} pageview at {time}\",\"live.minute_other\":\"{n} pageviews at {time}\",\"live.ago30\":\"30 min ago\",\"live.nowLabel\":\"Now\",\"live.pages\":\"Pages\",\"live.sources\":\"Sources\",\"live.countries\":\"Countries\",\"live.nobody\":\"Visitors show up here as they arrive.\",\"live.feed\":\"Latest activity\",\"live.quiet\":\"Visits from the last 30 minutes show up here.\",\"live.someone\":\"Someone\",\"live.someoneIn\":\"Someone in {place}\",\"live.viewed\":\"{who} viewed {path}\",\"live.viewedVia\":\"{who} viewed {path} from {source}\",\"live.did\":\"{who} did {name} on {path}\",\"live.didVia\":\"{who} did {name} on {path}, from {source}\",\"welcome.title\":\"Add Runlight to {name}\",\"welcome.lead\":\"Waiting for the first visit. This page fills in by itself once it arrives.\",\"settings.goals\":\"Goals\",\"settings.funnels\":\"Funnels\",\"panel.conversions\":\"Conversions\",\"goals.revenueAside\":\"{amount} revenue\",\"goals.add\":\"Add goal\",\"goals.emptyTitle\":\"Your goals will show up here\",\"goals.emptyHint\":\"A goal counts what matters to you, like a signup or a click on a button. An event or page goal you add counts past visits too, and a click goal counts from when you add it.\",\"goals.goal\":\"Goal\",\"goals.rate\":\"Rate\",\"goals.conversions\":\"Conversions\",\"goals.unknown\":\"(none)\",\"goals.converted\":\"People who converted\",\"goals.revenue\":\"Revenue\",\"goals.overTime\":\"Conversions over time\",\"goals.overTimeValued\":\"Conversions and revenue over time, each on its own scale\",\"goals.byChannel\":\"By channel\",\"goals.bySource\":\"By source\",\"goals.byPage\":\"Where it happened\",\"goals.describe.event\":\"Event: {match}\",\"goals.describe.page\":\"Visits to {match}\",\"goals.describe.selector\":\"Clicks on {match}\",\"goals.describe.link\":\"Clicks on links to {match}\",\"goals.value.each\":\"{amount} each\",\"goals.value.fromProp\":\"amount from {prop}, in {currency}\",\"goals.name\":\"Name\",\"goals.namePlaceholder\":\"Signup, Purchase, Booked a call\",\"goals.counts\":\"Counts\",\"goals.kind.event\":\"An event\",\"goals.kind.page\":\"A page visit\",\"goals.kind.click\":\"A click\",\"goals.clickOn\":\"Clicks on\",\"goals.click.selector\":\"An element\",\"goals.click.link\":\"Links to an address\",\"goals.match.event\":\"Event name\",\"goals.match.page\":\"Page\",\"goals.match.link\":\"Link address\",\"goals.match.selector\":\"CSS selector\",\"goals.pick\":\"Pick on my site\",\"goals.picking\":\"Waiting for your pick\",\"goals.hint.event\":\"The name you send with runlight(\\\"Name\\\") or a data-runlight attribute.\",\"goals.hint.page\":\"A path like /thanks. Use * for anything: /blog/* or /thanks*. A full URL works too.\",\"goals.hint.link\":\"Clicks on links whose address matches. Use * for anything, like https://buy.stripe.com/*, or start with / for your own pages.\",\"goals.hint.selector\":\"Enter any CSS selector, or use Pick on my site, which opens your site so you can click the element and then Use this.\",\"goals.valueLabel\":\"Worth\",\"goals.value.none\":\"Nothing\",\"goals.value.fixed\":\"A fixed amount\",\"goals.value.prop\":\"An amount sent with the event\",\"goals.amount\":\"Amount each time\",\"goals.property\":\"Property with the amount\",\"goals.currency\":\"Currency\",\"goals.save\":\"Save goal\",\"goals.create\":\"Add goal\",\"goals.cancel\":\"Cancel\",\"goals.edit\":\"Edit\",\"goals.intro\":\"Goals turn visits into conversions. Each one counts an event, a page visit, or a click, and can carry a money value so you can see revenue by source and page.\",\"goals.none\":\"Add one below to start counting it.\",\"goals.pastNote\":\"Goals are counted from the data you already have, so a new goal shows past conversions too. Click goals start counting within about five minutes of being added.\",\"settings.email\":\"Email reports\",\"settings.mail\":\"Email service\",\"mail.intro\":\"Runlight sends reports and invites through your own email service. Set it up once and every site uses it.\",\"mail.service\":\"Service\",\"mail.optional\":\"(optional)\",\"mail.keepSaved\":\"Saved. Leave blank to keep it.\",\"mail.from\":\"From address\",\"mail.fromName\":\"From name\",\"mail.fromHint\":\"Use an address your service lets you send from, on a domain you have verified with it.\",\"mail.save\":\"Save mail service\",\"mail.change\":\"Change\",\"mail.fromLine\":\"Sends from {from}\",\"mail.fromCode\":\"Set in code. Sends from {from}\",\"mail.testTo\":\"Send a test to\",\"mail.test\":\"Send test\",\"mail.testSent\":\"Test sent to {to}. Check the inbox, and the spam folder.\",\"mail.notEncryptedTitle\":\"Your keys will be stored unencrypted\",\"mail.notEncrypted\":\"This Runlight has no RUNLIGHT_SECRET, so the keys are kept in its database exactly as you type them. Set RUNLIGHT_SECRET or RUNLIGHT_TOKEN on the server to keep them encrypted.\",\"mail.field.region\":\"Region\",\"mail.field.accessKeyId\":\"Access key ID\",\"mail.field.secretAccessKey\":\"Secret access key\",\"mail.field.apiKey\":\"API key\",\"mail.field.serverToken\":\"Server API token\",\"mail.field.stream\":\"Message stream\",\"mail.field.domain\":\"Sending domain\",\"mail.field.secretKey\":\"Secret key\",\"mail.field.host\":\"Host\",\"mail.field.port\":\"Port\",\"mail.field.security\":\"Security\",\"mail.field.username\":\"Username\",\"mail.field.password\":\"Password\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Signing secret\",\"reports.title\":\"Who gets reports\",\"reports.intro\":\"A summary of {site} by email, with visitors, top pages, sources, countries, and conversions against the period before.\",\"reports.none\":\"Add an email address below to start sending them.\",\"reports.weekly\":\"Weekly\",\"reports.monthly\":\"Monthly\",\"reports.frequency\":\"How often\",\"reports.language\":\"Language\",\"reports.lastSent\":\"last sent {when}\",\"reports.never\":\"not yet\",\"reports.sample\":\"Send a sample now\",\"reports.sampleSent\":\"Sample sent to {to}.\",\"reports.emailPlaceholder\":\"name@example.com\",\"reports.add\":\"Add\",\"reports.when\":\"Weekly reports cover Monday to Sunday and go out on Monday from 8am, monthly ones on the 1st, in this site's timezone. They are sent by the hourly check (a cron calling POST /api/check).\",\"reports.needsMail\":\"Reports start going out once an email service is set up. One service sends them for every site.\",\"reports.setUpMail\":\"Set up email service\",\"reports.needsMailTitle\":\"No email service yet\",\"email.subject.week\":\"{site}: {who} last week\",\"email.subject.month\":\"{site}: {who} in {month}\",\"email.when.week\":\"last week\",\"email.before.week\":\"the week before\",\"email.when.month\":\"in {month}\",\"email.range\":\"{from} to {to}\",\"email.pages\":\"Top pages\",\"email.sources\":\"Top sources\",\"email.countries\":\"Top countries\",\"email.conversions\":\"Conversions\",\"email.open\":\"Open the dashboard\",\"email.at\":\"Your dashboard is at {where}\",\"email.footer\":\"You get this {frequency} report for {site} from Runlight.\",\"email.weekly\":\"weekly\",\"email.monthly\":\"monthly\",\"email.unsubscribe\":\"Unsubscribe\",\"email.test.subject\":\"Runlight can send email\",\"email.test.body\":\"This test came through {service}. Reports for your sites will arrive the same way.\",\"email.unsub.title\":\"Stop the {site} reports?\",\"email.unsub.body\":\"{email} will get no more reports for this site.\",\"email.unsub.doneTitle\":\"You are unsubscribed\",\"email.unsub.done\":\"No more reports for {site} will reach {email}.\",\"email.unsub.goneTitle\":\"Nothing to unsubscribe from\",\"email.unsub.gone\":\"This link has been used already, or the report was removed.\",\"settings.api\":\"API and AI\",\"tokens.intro\":\"Ask your AI assistant about your stats. Make a token, then add Runlight to Claude, Cursor, or any app that connects to MCP servers. A read token never changes anything, and a manage token can change one site's settings. The same token works with the HTTP API.\",\"tokens.server\":\"MCP server address\",\"tokens.namePlaceholder\":\"What it is for, like Claude or a script\",\"tokens.scope\":\"Which sites it can read\",\"tokens.allSites\":\"Every site\",\"tokens.siteOnly\":\"{site} only\",\"tokens.create\":\"Create token\",\"tokens.empty\":\"Make one below to connect an AI assistant or a script.\",\"tokens.used\":\"last used {date}\",\"tokens.never\":\"never used\",\"tokens.revokeNote\":\"Deleting a token stops it working at once.\",\"tokens.once\":\"Copy this token now. It is shown only once, and Runlight keeps only a fingerprint of it.\",\"tokens.claudeCode\":\"Claude Code takes the token with this command.\",\"tokens.json\":\"Cursor and other apps that take an mcpServers JSON config use this instead.\",\"tokens.done\":\"Done, I have copied it\",\"sites.domains\":\"Domains\",\"sites.domainsHint\":\"Enter the domain the site runs on, like example.com, and separate several with commas.\",\"sites.name\":\"Name\",\"sites.namePlaceholder\":\"My blog\",\"sites.timezoneHint\":\"Days are counted in {zone}, which you can change later in Settings.\",\"sites.add\":\"Add site\",\"sites.addTitle\":\"Add a site\",\"sites.firstTitle\":\"Add your first site\",\"sites.firstLead\":\"Runlight counts each site you add here. Enter the site's domain, and the next screen shows the script tag to put on its pages.\",\"sites.delete\":\"Delete this site\",\"sites.deleteHint\":\"Deleting a site removes every visit, link, goal, and report recorded for it, and it cannot be undone.\",\"app.signOut\":\"Sign out\",\"install.ignoreServer\":\"To stop counting your own visits, open {link} once in each browser you use.\",\"panel.geoCredit\":\"Locations by {name}\",\"visits.tab\":\"Visits\",\"visits.linksTab\":\"Short links\",\"visits.intro\":\"Bring your visit history over so your charts reach back before Runlight started counting. Only visits from before Runlight's own first one come across, so nothing is counted twice.\",\"visits.onlyUmami\":\"Umami's API hands over every visit with its page, source, place, and device, which is what Runlight keeps. Plausible, Fathom, and Google Analytics only give out totals, and totals cannot be turned back into visits. If you have every pageview in a file, import it as a CSV instead.\",\"visits.csvMoment\":\"More than {max} rows share one moment, more than one batch can hold.\",\"visits.csvStopped\":\"Stopped. Importing the same file again is safe, since rows already brought in are replaced.\",\"visits.csvSkipped\":\"{n} rows were left out because they came after Runlight's own first visit, fell before what this site keeps, or were not a pageview or a named event.\",\"visits.csvRunning\":\"{done} of {total} rows sent, {pageviews} pageviews so far\",\"visits.csvRunlight\":\"{name} is in Runlight's visit format, with {rows} rows.\",\"visits.csvUmami\":\"{name} is an Umami export with {rows} rows.\",\"visits.csvOther\":\"Choose another file\",\"visits.csvChoose\":\"Choose CSV file\",\"visits.csvHelp\":\"Use the CSV from Umami's data export, or a file with a row for each pageview in Runlight's visit format, described in the Dashboard docs.\",\"visits.fromCsv\":\"A CSV file\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Import from\",\"visits.onlyUmamiTitle\":\"Why only Umami\",\"visits.find\":\"Find websites\",\"visits.website\":\"Umami website\",\"visits.noWebsites\":\"This Umami account has no websites.\",\"visits.start\":\"Import visits\",\"visits.running\":\"{done} of {total} days read, {pageviews} pageviews so far\",\"visits.done\":\"Finished. {pageviews} pageviews and {events} events came across in {visits} visits.\",\"visits.stopped\":\"Stopped. Start again to carry on from the last day imported.\",\"props.title\":\"Properties\",\"props.open\":\"Properties of {name}\",\"props.none\":\"They appear once the event is sent with properties.\",\"account.title\":\"Account\",\"account.owner\":\"You are the owner, so you can change everything and manage people. Nobody else can remove you.\",\"account.viewer\":\"You are a viewer, so you can read every site's stats without changing anything.\",\"account.current\":\"Current password\",\"account.next\":\"New password\",\"account.nextHint\":\"Use at least ten characters. Changing it signs out your other browsers.\",\"account.save\":\"Change password\",\"account.saved\":\"Password changed\",\"settings.people\":\"People\",\"people.intro\":\"Everyone here can sign in to this server. Admins can change everything the owner can and manage people, though nobody can remove the owner. Members change the settings of every site, and viewers read every site's stats without changing anything. Invite a coworker and they choose their own password.\",\"people.you\":\"you\",\"people.role\":\"Role\",\"people.owner\":\"Owner\",\"people.viewer\":\"Viewer\",\"people.roles\":\"Members can't manage people, set up the mail service or the assistant, or delete a site. Only the owner can hand ownership to an admin.\",\"people.emailPlaceholder\":\"Their email address\",\"pluginKey.title\":\"Key for CMS plugins\",\"pluginKey.intro\":\"The WordPress, Drupal, and Craft plugins use this key to report AI agents reading this site's pages. It can only report for this site and cannot read anything. Replacing it stops the old key at once.\",\"pluginKey.replace\":\"Replace key\",\"export.csv\":\"Download CSV\",\"export.zip\":\"Export\",\"export.title\":\"Download everything in this view as CSV files\",\"funnels.title\":\"Funnels\",\"funnels.intro\":\"A funnel follows the steps you expect a visit to take, such as the pricing page and then signup, and shows how many visits made it through each step in order.\",\"funnels.none\":\"Add one below to see where people stop along the way.\",\"funnels.add\":\"Add funnel\",\"funnels.name\":\"Name\",\"funnels.namePlaceholder\":\"Signup\",\"funnels.steps\":\"Steps\",\"funnels.stepsHint\":\"A page path can use * to match anything, like /blog/*. Each step has to happen after the one before it, in the same visit.\",\"funnels.kind\":\"What the step is\",\"funnels.page\":\"Page\",\"funnels.event\":\"Event\",\"funnels.removeStep\":\"Remove this step\",\"funnels.addStep\":\"Add a step\",\"funnels.save\":\"Save funnel\",\"funnels.create\":\"Create funnel\",\"funnels.stepPage\":\"Page {match}\",\"funnels.stepEvent\":\"Event {match}\",\"funnels.wentOn\":\"{pct} went on\",\"funnels.tab\":\"Funnels\",\"funnels.goalsTab\":\"Goals\",\"sites.modeHere\":\"Count it here\",\"sites.modeConnect\":\"Connect another Runlight\",\"sites.connectIntro\":\"Connect a site here when it already counts itself with Runlight inside its own app. Its numbers stay there. You sign in to it once and allow this server, and then you can see and change the site from here.\",\"sites.connectUrl\":\"Its Runlight address\",\"sites.connectToken\":\"API token\",\"sites.connectTokenHint\":\"Make a token on that install, in Settings, API and AI. With a read token the numbers show here and the settings stay there.\",\"sites.connect\":\"Connect\",\"sites.all\":\"All sites\",\"sites.remoteNote\":\"This site is counted by its own Runlight at {url}, which lets this server read it. Allow changes to manage its settings from here too.\",\"sites.disconnect\":\"Disconnect this site\",\"sites.disconnectHint\":\"Disconnecting removes the site from this server. Its own Runlight and everything it has counted stay as they are.\",\"sites.disconnectButton\":\"Disconnect site\",\"sites.confirmDisconnect\":\"Confirm disconnect\",\"sites.disconnectName\":\"Disconnect {name}?\",\"settings.data\":\"Data\",\"data.retention\":\"Keep visits for\",\"data.retentionHint\":\"Older visits and events are deleted for good when you save, then every day after. Goals, links, and settings stay.\",\"data.forever\":\"Forever\",\"data.months\":\"{n} months\",\"data.years\":\"{n} years\",\"data.deletesBefore\":\"Visits before {date} will be deleted when you save.\",\"data.unreachable\":\"Could not reach {url} to read this setting. Try again in a minute.\",\"data.export\":\"Export everything\",\"data.exportHint\":\"The ZIP holds every report for this site since its first visit, as CSV files.\",\"data.download\":\"Download ZIP\",\"sites.remoteTitle\":\"Counted by another Runlight\",\"sites.openRemote\":\"Open its dashboard\",\"sites.useToken\":\"Use an API token instead\",\"sites.useSignIn\":\"Sign in to it instead\",\"sites.remoteManaged\":\"This site is counted by its own Runlight at {url}. Changes you make here are saved there.\",\"sites.allowChanges\":\"Allow changes\",\"sites.reconnect\":\"Connect again\",\"sites.reconnectHint\":\"Use this if the install no longer accepts this server, for example after its token was deleted there.\",\"sites.connectError.expired\":\"That connection took too long or was already used. Start again.\",\"sites.connectError.denied\":\"The connection was not allowed.\",\"sites.connectError.refused\":\"The install would not let this server connect. Start again, or connect it with an API token.\",\"sites.connectError.token\":\"The install did not give this server a token. Start again.\",\"sites.connectError.failed\":\"Connecting did not finish. Start again.\",\"mail.fromRemote\":\"Sent by {host} from {from}\",\"mail.noneRemote\":\"{host} has no mail service yet, so it cannot send these reports. Set one up in its own dashboard, under Settings, Email service.\",\"tokens.manages\":\"Can change settings\",\"account.again\":\"New password again\",\"account.mismatch\":\"The two new passwords are not the same.\",\"account.strength0\":\"Too short\",\"account.strength1\":\"Weak\",\"account.strength2\":\"Fair\",\"account.strength3\":\"Good\",\"account.strength4\":\"Strong\",\"mail.introRemote\":\"Reports for this site go out through the email service set up on {host}.\",\"settings.assistant\":\"AI Assistant\",\"assistant.open\":\"Ask about your stats\",\"assistant.title\":\"AI Assistant\",\"assistant.about\":\"It answers from {site}'s numbers, which it reads the moment you ask.\",\"assistant.clear\":\"New chat\",\"assistant.intro\":\"Ask about visitors, sources, pages, goals, or anything else this dashboard shows.\",\"assistant.ask1\":\"How did this period compare with the one before?\",\"assistant.ask2\":\"Where are most visitors coming from?\",\"assistant.ask3\":\"Which pages keep people reading longest?\",\"assistant.ask4\":\"Are AI assistants sending visitors here?\",\"assistant.placeholder\":\"Ask a question\",\"assistant.send\":\"Send\",\"assistant.thinking\":\"Reading your numbers\",\"assistant.empty\":\"The assistant had nothing to say.\",\"assistant.checked_one\":\"Read {n} report\",\"assistant.checked_other\":\"Read {n} reports\",\"assistant.setupOwner\":\"The assistant needs an AI service to answer with. Add a key for Anthropic, OpenAI, or Gemini, or point it at a model on your own machine.\",\"assistant.setupViewer\":\"The assistant is not set up yet. The owner or an admin can add an AI service in Settings, AI Assistant.\",\"assistant.setup\":\"Set up the assistant\",\"assistant.ownersOnly\":\"Only the owner or an admin can set up the assistant.\",\"assistant.settingsIntro\":\"Choose an AI service and paste an API key from it below. The robot button beside Filter then opens an assistant that answers questions about your stats in plain words.\",\"assistant.privacyTitle\":\"What the service sees\",\"assistant.privacy\":\"Each question goes to that service with the numbers the assistant reads to answer it. Runlight keeps nothing about individual visitors, so nothing personal is sent. The assistant only reads, through the same tools as the MCP server, so it can never change anything.\",\"assistant.notEncryptedTitle\":\"Your key will be stored unencrypted\",\"assistant.notEncrypted\":\"This Runlight has no RUNLIGHT_SECRET, so the key is kept in its database exactly as you type it. Set RUNLIGHT_SECRET or RUNLIGHT_TOKEN on the server to keep it encrypted.\",\"assistant.provider\":\"AI service\",\"assistant.address\":\"Address\",\"assistant.addressHint\":\"Where the service's OpenAI-compatible API lives, ending before /chat/completions.\",\"assistant.addressLocal\":\"Where the model runs. The server running Runlight must be able to reach it.\",\"assistant.model\":\"Model\",\"assistant.modelPlaceholder\":\"The model's name, as the service lists it\",\"assistant.modelDefault\":\"Leave it empty to use {model}.\",\"assistant.modelHint\":\"Enter the key above, then load the service's models, or type a model's name. A model that can call tools works best.\",\"assistant.key\":\"API key\",\"assistant.remove\":\"Turn off the assistant\",\"assistant.removeHint\":\"Removes the service and its key. The robot button then asks an owner to set it up again.\",\"journeys.open\":\"Journeys\",\"journeys.title\":\"Journeys\",\"journeys.intro\":\"The paths visits take through the site, a page at a time. Click a page to follow only the visits that passed through it.\",\"journeys.steps\":\"Steps\",\"journeys.stepCount\":\"{n} steps\",\"journeys.start\":\"Starting at\",\"journeys.end\":\"Ending at\",\"journeys.anyPage\":\"Any page\",\"journeys.step\":\"Step {n}\",\"journeys.other\":\"Other pages\",\"journeys.left\":\"{n} went no further\",\"journeys.follow\":\"Follow visits through {page}\",\"journeys.following\":\"Following visits through {page} at step {step}.\",\"journeys.none\":\"Try a wider date range to see more visits.\",\"secret.show\":\"Show\",\"secret.hide\":\"Hide\",\"people.invite\":\"Invite\",\"people.invited\":\"invited\",\"people.invitedMeta\":\"{role}, the link works until {date}\",\"people.resend\":\"Send again\",\"people.emailed\":\"An invite is on its way to {email}. You can also send them this link yourself.\",\"people.noMail\":\"This server has no mail service, so send {email} this link yourself. Set one up in Settings, Email service to send invites by email.\",\"people.mailFailed\":\"The email to {email} did not go out ({error}). Send them this link yourself.\",\"people.linkHint\":\"The link works once, for seven days. Sending again makes a new link and stops this one.\",\"twofa.title\":\"Two-factor sign-in\",\"twofa.off\":\"Off. Turn it on and signing in also asks for a code from an authenticator app on your phone.\",\"twofa.on_one\":\"On. Signing in asks for a code from your authenticator app. You have {n} recovery code left.\",\"twofa.on_other\":\"On. Signing in asks for a code from your authenticator app. You have {n} recovery codes left.\",\"twofa.turnOn\":\"Turn on\",\"twofa.turnOff\":\"Turn off\",\"twofa.newCodes\":\"New recovery codes\",\"twofa.password\":\"Your password\",\"twofa.continue\":\"Continue\",\"twofa.scan\":\"Scan this with an authenticator app, such as 1Password, Google Authenticator, or Authy, then enter the six-digit code it shows.\",\"twofa.qr\":\"QR code for your authenticator app\",\"twofa.manual\":\"Or type this key into the app.\",\"twofa.code\":\"Code from the app\",\"twofa.confirm\":\"Turn on\",\"twofa.codesIntro\":\"Keep these recovery codes somewhere safe. Each one signs you in once if you lose your phone, and they are not shown again.\",\"twofa.download\":\"Download\",\"twofa.copy\":\"Copy\",\"twofa.saved\":\"I saved them\",\"people.twoFactor\":\"two-factor\",\"people.resetTwoFactor\":\"Reset two-factor\",\"people.resetTwoFactorHint\":\"Turns off two-factor sign-in for this person, for when they lost their phone and recovery codes\",\"assistant.loadModels\":\"Load models\",\"assistant.loadingModels\":\"Loading\",\"assistant.pickModel\":\"Choose a model\",\"assistant.typeModel\":\"Type a model's name instead\",\"assistant.chooseFromList\":\"Choose from the list\",\"journeys.sampled\":\"These are the paths of the newest {n} visits in these dates.\",\"error.owner_only\":\"Only an owner can change this.\",\"error.domain_invalid\":\"That is not a domain name.\",\"error.domain_in_use\":\"{domain} is where this dashboard or one of your sites lives. Use a separate domain or subdomain for short links, such as go.{domain}.\",\"error.domain_taken\":\"{domain} already belongs to another site.\",\"error.link_url\":\"The destination must be a full URL, starting with https://\",\"error.link_protocol\":\"The destination must start with http:// or https://\",\"error.link_long\":\"The destination is longer than 2,000 characters.\",\"error.link_domain\":\"Add {domain} as a link domain in Settings first.\",\"error.link_slug\":\"A slug is letters, digits, dashes, and underscores, up to 100.\",\"error.link_taken\":\"/{slug} is already taken.\",\"error.link_no_slug\":\"Could not find a free slug. Try again.\",\"error.test_email\":\"Enter an email address to send the test to.\",\"error.mail_unset\":\"Set up a mail service first.\",\"error.email_invalid\":\"Enter an email address.\",\"error.report_exists\":\"{email} already gets this report.\",\"error.report_limit\":\"A site can send to at most 50 addresses.\",\"error.sample_soon\":\"A sample went out a moment ago. Wait a minute and try again.\",\"error.people_owner\":\"Only the owner or an admin can manage people.\",\"error.role_needed\":\"Pick admin, member, or viewer.\",\"error.account_exists\":\"{email} already has an account.\",\"error.remove_self\":\"You cannot remove yourself.\",\"people.demoted\":\"You are a viewer now, so settings are closed and nothing here can be changed. The owner or an admin can change it back.\",\"links.importNoUrl\":\"Nothing was imported because the file has no url column with addresses in it. Use the columns name and url, plus slug and domain when you have them.\",\"app.sessionEnded\":\"You were signed out, which happens when a session runs out or a password changes. {link} and you come back to this view.\",\"app.signInAgain\":\"Sign in again\",\"links.noneYet\":\"Nobody has made a short link for this site yet.\",\"error.remote_slow\":\"{host} took too long to answer. Try a shorter range.\",\"error.domain_not_public\":\"{domain} is not a public domain name. Use one that browsers anywhere can reach.\",\"error.unreachable\":\"Could not reach {host}.\",\"error.redirected\":\"{host} answered with a redirect.\",\"error.token_refused\":\"{host} refused the token. Connect it again from the site's settings.\",\"error.mail_failed\":\"The email could not be sent ({detail}).\",\"error.mail_unreachable\":\"Could not reach {host}.\",\"error.mail_slow\":\"{host} took too long to answer, so the email was not sent.\",\"error.mail_refused\":\"{host} turned the email down ({detail}).\",\"error.mail_service\":\"Pick a mail service.\",\"error.mail_field\":\"{field} is needed.\",\"error.mail_option\":\"{field} must be one of {options}.\",\"error.mail_https\":\"The webhook URL must use https.\",\"error.mail_region\":\"That is not an AWS region, like us-east-1.\",\"error.mail_in_code\":\"The mail service is set in code, so it cannot be changed here.\",\"error.mail_from\":\"Enter the address reports come from, like reports@example.com.\",\"error.smtp_starttls\":\"The SMTP server does not offer STARTTLS. Pick TLS or none for Security.\",\"error.unknown_account\":\"That account no longer exists.\",\"error.password_short\":\"Use a password of at least {min} characters.\",\"error.invite_gone\":\"This invite has expired or was already used. Ask for a new one.\",\"error.too_many_tries\":\"Too many tries. Wait fifteen minutes and try again.\",\"error.password_current_wrong\":\"Your current password is not right.\",\"error.password_wrong\":\"Your password is not right.\",\"error.code_wrong\":\"That code is not right. Check the time on your phone and try the next one.\",\"error.twofactor_off\":\"Turn on two-factor sign-in first.\",\"error.twofactor_self\":\"Turn off your own two-factor sign-in under Account.\",\"error.unknown_invite\":\"That invite no longer exists.\",\"error.origin_needed\":\"Set this Runlight's own address first (RUNLIGHT_URL on the server, or origin in routes()), so a connected hub can add link domains and email reports.\",\"error.twofactor_restart\":\"Too many wrong codes. Start turning on two-factor sign-in again.\",\"error.pick_origin\":\"Send the dashboard's origin, such as https://stats.example.com\",\"error.pick_hub\":\"This hub's address is not the one it connected from. Connect the site again from here.\",\"assistant.viewerDaily\":\"Questions each viewer can ask a day\",\"assistant.viewerDailyHint\":\"Every question is paid for with your AI key. Viewers are the people you invite under People who can read stats but change nothing, and each of them can ask this many a day. Set 0 to keep the assistant for owners. Share links never get the assistant.\",\"error.assistant_soon\":\"You have asked a lot in a short time. Wait a little and ask again.\",\"error.assistant_daily\":\"Viewers can ask {limit} questions a day. Ask again tomorrow.\",\"error.assistant_limit\":\"Use a whole number from 0 to 1,000.\",\"error.token_unset\":\"Set RUNLIGHT_TOKEN, or pass token or authorize to routes(). Without one, Runlight only runs open when NODE_ENV is development.\",\"error.unauthorized\":\"Sign in or send a token to see this.\",\"error.sign_in\":\"Sign in first.\",\"error.unknown_site\":\"That site is not here.\",\"error.filters_max\":\"Use at most {max} filters at once.\",\"error.filter_bad\":\"The filter \\\"{filter}\\\" is not one Runlight reads.\",\"error.range_bad\":\"Those dates are not a range Runlight can read.\",\"error.compare_bad\":\"\\\"{compare}\\\" is not a comparison Runlight knows.\",\"error.compare_range_bad\":\"Pick both dates to compare with.\",\"error.send_json\":\"Send this as JSON.\",\"error.send_object\":\"Send a JSON object.\",\"error.unknown_domain\":\"That domain is not one of this site's.\",\"error.rows_needed\":\"Send the links as a list of rows.\",\"error.unknown_link\":\"That link no longer exists.\",\"error.not_found\":\"That is not here.\",\"error.unknown_goal\":\"That goal no longer exists.\",\"error.goal_invalid\":\"The goal was not saved ({detail}).\",\"error.funnel_invalid\":\"The funnel was not saved ({detail}).\",\"error.import_failed\":\"The import stopped ({detail}).\",\"error.assistant_failed\":\"The AI service did not answer as expected ({detail}).\",\"error.assistant_invalid\":\"The assistant was not saved ({detail}).\",\"error.site_invalid\":\"The site was not saved ({detail}).\",\"error.connect_failed\":\"Connecting did not start ({detail}).\",\"error.method_not_allowed\":\"That cannot be done here.\",\"error.unknown_report\":\"That report no longer exists.\",\"error.unknown_share\":\"That share link no longer exists.\",\"error.token_name\":\"Name the token.\",\"error.token_site\":\"A token that changes settings is for one site. Pick the site.\",\"error.unknown_token\":\"That token no longer exists.\",\"error.sites_in_code\":\"Sites are set in code here, so they are changed there.\",\"error.connect_url\":\"Enter the install's address, like https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} did not answer like a Runlight install.\",\"error.connect_endpoints\":\"{url} named endpoints on another address.\",\"error.connect_old\":\"{url} runs an older Runlight. Update it, or connect it with an API token from its Settings.\",\"error.connect_register\":\"{url} would not let this server connect. {reason}\",\"error.connect_expired\":\"That connection took too long or was already used. Start again.\",\"error.connect_denied\":\"The connection was not allowed.\",\"error.connect_refused\":\"The install would not let this server connect. Start again, or connect it with an API token.\",\"error.connect_token\":\"The install did not give this server a token. Start again.\",\"error.connect_again\":\"Connect this site again to change it from here.\",\"error.hub_domains\":\"A connected hub cannot change a site's domains.\",\"error.observe_many\":\"Send at most 500 fetches at a time.\",\"error.observe_url\":\"Send the page's address.\",\"error.site_remote\":\"This site is counted by its own Runlight. Connect it again from its settings to change it from here.\",\"error.unknown_funnel\":\"That funnel no longer exists.\",\"error.assistant_dashboard\":\"Only the dashboard can use the assistant.\",\"error.share_not_available\":\"That is not available on a shared dashboard.\",\"error.assistant_unset\":\"The assistant is not set up yet. An owner can set it up in Settings, AI Assistant.\",\"error.question_needed\":\"Ask a question.\",\"error.site_name\":\"A site name is 1 to 80 characters.\",\"error.unknown_timezone\":\"\\\"{timezone}\\\" is not a timezone Runlight knows.\",\"error.retention_bad\":\"Keep visits for {months} months, or forever.\",\"error.share_gone\":\"This share link no longer works.\",\"error.token_read_only\":\"API tokens can only read.\",\"error.icon_none\":\"This site has no icon.\",\"error.event_needed\":\"Name the event.\",\"error.property_bad\":\"That is not a property name Runlight can read.\",\"error.unknown_dimension\":\"\\\"{dimension}\\\" is not a breakdown Runlight knows.\",\"error.internal\":\"Something went wrong on the server. Try again.\",\"filter.max\":\"Up to {max} filters apply at once. Remove one to add another.\",\"error.sample_soon_hub\":\"A connected hub can send one sample every ten minutes. Wait a few minutes and try again.\",\"people.demoteSelf\":\"Only the owner or an admin can change it back.\",\"people.demoteConfirm\":\"Switch to {role}\",\"error.check_not_public\":\"it is not a public domain name\",\"error.check_timeout\":\"it took too long to answer\",\"error.check_https\":\"it could not be reached over HTTPS\",\"error.check_not_runlight\":\"something answered, but not Runlight\",\"error.check_status\":\"it answered {status}\",\"error.assistant_address\":\"Enter the service's address in Settings, AI Assistant.\",\"error.address_refused\":\"{host} is a link-local or cloud metadata address, which Runlight never connects to.\",\"error.assistant_address_bad\":\"Enter the service's address, starting with https://\",\"error.assistant_cancelled\":\"The question was cancelled.\",\"error.assistant_key\":\"Enter your {provider} key.\",\"error.assistant_model\":\"Enter a model in Settings, AI Assistant.\",\"error.assistant_no_models\":\"{host} listed no models. Type the model's name instead.\",\"error.assistant_provider\":\"Choose an AI service in Settings, AI Assistant.\",\"error.assistant_refused\":\"{host} turned the request down ({detail}).\",\"error.assistant_slow\":\"That question took too long to answer. Try asking something narrower.\",\"error.assistant_status\":\"{host} answered {status}.\",\"error.assistant_steps\":\"The assistant needed too many steps for that question. Try asking something narrower.\",\"error.assistant_timeout\":\"{host} took too long to answer.\",\"error.funnel_exists\":\"There is already a funnel called \\\"{name}\\\".\",\"error.funnel_long\":\"A funnel has at most eight steps.\",\"error.funnel_name\":\"Give the funnel a name.\",\"error.funnel_page_bad\":\"\\\"{match}\\\" is not a path or a URL.\",\"error.funnel_short\":\"A funnel needs at least two steps.\",\"error.goal_amount\":\"Enter an amount, like 49 or 9.99.\",\"error.goal_click_taken\":\"The click goal \\\"{match}\\\" already sends events with that name.\",\"error.goal_currency\":\"Use a three-letter currency code, like USD or EUR.\",\"error.goal_event\":\"Enter the event's name.\",\"error.goal_event_taken\":\"An event goal already counts events called \\\"{name}\\\", so give this click goal another name.\",\"error.goal_exists\":\"There is already a goal called \\\"{name}\\\".\",\"error.goal_kind\":\"Pick what the goal counts, an event, a page visit, or a click.\",\"error.goal_link\":\"Enter the link's address, like https://buy.stripe.com/*\",\"error.goal_name\":\"Give the goal a name.\",\"error.goal_page\":\"Enter a page path, like /thanks or /blog/*\",\"error.goal_page_bad\":\"That page is not a path or a URL.\",\"error.goal_prop_kind\":\"Only an event goal can take its amount from the event. Use a fixed amount instead.\",\"error.goal_prop_name\":\"A property name uses letters, numbers, dots, dashes, and underscores.\",\"error.goal_selector\":\"Enter a CSS selector, like #signup or .buy-button\",\"error.import_day_full\":\"One day has more than {limit} events, more than an import step can read.\",\"error.import_key\":\"Enter your {service} key.\",\"error.import_refused\":\"The key or sign-in was refused.\",\"error.import_slug_bad\":\"/{slug} has characters Runlight slugs cannot use.\",\"error.import_slug_taken\":\"/{slug} is already used by \\\"{name}\\\".\",\"error.import_source\":\"Runlight cannot import from {source}.\",\"error.import_status\":\"{host} answered {status}.\",\"error.import_umami_address\":\"Enter your Umami address, like https://stats.example.com\",\"error.import_umami_login\":\"Enter an API key, or a username and password.\",\"error.import_website\":\"Pick the Umami website to import.\",\"error.import_csv_batch\":\"Send at most {max} rows at a time.\",\"error.import_csv_format\":\"This file is not an Umami export or in Runlight's visit format. Check its header row.\",\"error.install_refused\":\"That install refused the token.\",\"error.install_token\":\"Enter an API token from that install.\",\"error.site_domain_invalid\":\"\\\"{host}\\\" is not a domain name.\",\"error.site_domain_needed\":\"Add the site's domain, like example.com\",\"error.site_domain_taken\":\"{host} already belongs to {site}.\",\"share.goneTitle\":\"This share link no longer works\",\"error.token_manage_only\":\"A manage token changes only its own site's settings.\",\"empty.pages.title\":\"Your top pages will show up here\",\"empty.pages.hint\":\"Every page people open is listed, with how long they stay on it.\",\"empty.sources.title\":\"Your traffic sources will show up here\",\"empty.sources.hint\":\"The searches and sites that send people your way are listed by name.\",\"empty.locations.title\":\"Your visitors’ locations will show up here\",\"empty.locations.hint\":\"See which countries and cities people visit from.\",\"empty.rhythm.title\":\"Your busiest times will show up here\",\"empty.rhythm.hint\":\"Each hour of the week fills in as visits come in.\",\"empty.ai.title\":\"AI agents reading your site will show up here\",\"empty.ai.hint\":\"Assistants such as ChatGPT and Claude are listed when they fetch your pages.\",\"empty.devices.title\":\"Your visitors’ devices will show up here\",\"empty.devices.hint\":\"See which browsers and screens people use.\",\"empty.events.title\":\"Your events will show up here\",\"empty.events.hint\":\"Clicks on outbound links and the events you send are counted as they happen.\",\"empty.campaigns.title\":\"Your campaigns will show up here\",\"empty.campaigns.hint\":\"Visits from links with UTM tags are grouped by campaign, source, and medium.\",\"empty.links.title\":\"Your short links will show up here\",\"empty.links.hint\":\"Make a short link to share, and every click on it is counted.\",\"sites.refused\":\"{host} no longer accepts this server’s connection, so its numbers cannot be read. Connect it again to fix that.\",\"sites.connected\":\"Connected to {host}.\",\"links.totalTip\":\"All clicks on your short links in the dates you picked\",\"links.setup\":\"How to set it up\",\"links.recordType\":\"Type\",\"links.recordName\":\"Name\",\"links.recordValue\":\"Value\",\"links.doDns\":\"Add this record at your DNS provider.\",\"links.doDnsAlias\":\"Add this record at your DNS provider. If it has no ALIAS records, use an A record to your server’s IP address.\",\"links.doHttps\":\"Have your host serve HTTPS for {domain}.\",\"links.doCheck\":\"Check again. A new record can take a few minutes to arrive.\",\"links.localNote\":\"This dashboard runs at {host}, so the record works once it has a public address.\",\"links.guide\":\"Setup guide\",\"funnels.emptyTitle\":\"Your funnels will show up here\",\"share.emptyTitle\":\"Your share links will show up here\",\"tokens.emptyTitle\":\"Your tokens will show up here\",\"reports.emptyTitle\":\"Your email reports will show up here\",\"journeys.emptyTitle\":\"The paths people take will show up here\",\"props.emptyTitle\":\"This event’s details will show up here\",\"empty.mini\":\"This list fills in as visits come in.\",\"empty.search\":\"Nothing here matches “{q}” yet, so try another word.\",\"delta.fromNone\":\"from 0\",\"people.admin\":\"Admin\",\"people.member\":\"Member\",\"people.handOver\":\"Make owner\",\"people.handOverHint\":\"Hands ownership to this admin, and you become an admin\",\"people.handOverConfirm\":\"Hand over\",\"people.demotedMember\":\"You are a member now, so People and the install-wide settings are closed to you. The owner or an admin can change it back.\",\"account.admin\":\"You are an admin, so you can change everything and manage people, apart from the owner.\",\"account.member\":\"You are a member, so you can change the settings of every site. The owner and admins manage people and the install-wide settings.\",\"mail.adminOnly\":\"No mail service is set up yet. The owner or an admin can set one up here.\",\"error.admin_only\":\"Only the owner or an admin can change this.\",\"error.owner_protected\":\"Nobody but the owner can change or remove the owner.\",\"error.owner_hand_over\":\"Only the owner can hand over ownership.\",\"error.owner_needs_admin\":\"Make them an admin first.\",\"embed.goneTitle\":\"This dashboard link does not work\",\"embed.gone\":\"Open the dashboard again from your site's admin pages.\",\"embed.expiredTitle\":\"This view has expired\",\"embed.expired\":\"The dashboard inside your admin pages stays open for an hour at a time. Reload the page to open it again.\",\"embed.reload\":\"Reload the page\",\"embedKey.title\":\"Key for the dashboard in your CMS\",\"embedKey.intro\":\"With this key in their settings, the WordPress, Drupal, and Craft plugins show this site's dashboard inside your admin pages. It opens the read-only view a share link shows and cannot read anything itself. Delete it in Settings, API and AI to stop it at once.\",\"embedKey.make\":\"Make a key\",\"embedKey.another\":\"Make another key\",\"embedKey.name\":\"Dashboard in a CMS\",\"tokens.embeds\":\"Opens the dashboard in a CMS\",\"error.embed_expired\":\"This dashboard has expired. Reload the page to open it again.\",\"error.embed_site\":\"A key for the dashboard in a CMS is for one site. Pick the site.\"}",
|
|
3
|
+
"de": "{\"app.site\":\"Website\",\"app.confirmDelete\":\"{name} löschen?\",\"app.signedOut\":\"Öffne diese Seite einmal mit {token}, gefolgt von deinem {env}, um dich anzumelden.\",\"app.live.title\":\"Besucher in den letzten fünf Minuten\",\"app.live_one\":\"{n} gerade hier\",\"app.live_other\":\"{n} gerade hier\",\"headline.who_one\":\"{n} Person\",\"headline.who_other\":\"{n} Personen\",\"headline.visited_one\":\"hat die Website besucht\",\"headline.visited_other\":\"haben die Website besucht\",\"headline.matched_one\":\"passt zu diesen Filtern\",\"headline.matched_other\":\"passen zu diesen Filtern\",\"headline.plain\":\"{who} {verb} ({when}).\",\"headline.up\":\"{who} {verb} ({when}), {change} als {against}.\",\"headline.down\":\"{who} {verb} ({when}), {change} als {against}.\",\"headline.same\":\"{who} {verb} ({when}), genauso viele wie {against}.\",\"headline.more\":\"{pct} % mehr\",\"headline.fewer\":\"{pct} % weniger\",\"headline.lastYear\":\"an denselben Tagen im Vorjahr\",\"when.today\":\"heute\",\"when.yesterday\":\"gestern\",\"when.7d\":\"in den letzten 7 Tagen\",\"when.30d\":\"in den letzten 30 Tagen\",\"when.90d\":\"in den letzten 90 Tagen\",\"when.month\":\"diesen Monat\",\"when.last_month\":\"letzten Monat\",\"when.year\":\"dieses Jahr\",\"when.12mo\":\"in den letzten 12 Monaten\",\"when.all\":\"seit Beginn der Messung\",\"when.range\":\"{range}\",\"when.day\":\"{day}\",\"before.today\":\"gestern\",\"before.yesterday\":\"am Tag davor\",\"before.7d\":\"in den 7 Tagen davor\",\"before.30d\":\"in den 30 Tagen davor\",\"before.90d\":\"in den 90 Tagen davor\",\"before.month\":\"im gleichen Zeitraum davor\",\"before.last_month\":\"im Monat davor\",\"before.year\":\"im gleichen Zeitraum davor\",\"before.12mo\":\"in den 12 Monaten davor\",\"before.all\":\"im Zeitraum davor\",\"before.range\":\"im gleichen Zeitraum davor\",\"period.today\":\"Heute\",\"period.yesterday\":\"Gestern\",\"period.7d\":\"Letzte 7 Tage\",\"period.30d\":\"Letzte 30 Tage\",\"period.90d\":\"Letzte 90 Tage\",\"period.month\":\"Dieser Monat\",\"period.last_month\":\"Letzter Monat\",\"period.year\":\"Dieses Jahr\",\"period.12mo\":\"Letzte 12 Monate\",\"period.all\":\"Gesamter Zeitraum\",\"compare.title\":\"Vergleichen mit\",\"compare.vs\":\"vs.\",\"compare.previous\":\"Vorheriger Zeitraum\",\"compare.year\":\"Gleicher Zeitraum im Vorjahr\",\"compare.custom\":\"Eigener Zeitraum\",\"compare.off\":\"Kein Vergleich\",\"compare.apply\":\"Vergleichen\",\"compare.dialog\":\"Vergleichen mit\",\"calendar.dialog\":\"Datum wählen\",\"calendar.earlier\":\"Frühere Monate\",\"calendar.later\":\"Spätere Monate\",\"calendar.pick\":\"Wähle einen Start- und einen Endtag\",\"calendar.range\":\"{from} bis {to}\",\"calendar.open\":\"{from} bis ...\",\"calendar.apply\":\"Übernehmen\",\"common.cancel\":\"Abbrechen\",\"common.close\":\"Schließen\",\"common.clearAll\":\"Alle entfernen\",\"common.loading\":\"Wird geladen\",\"common.search\":\"Suchen\",\"common.none\":\"(keine)\",\"metric.visitors\":\"Besucher\",\"metric.visits\":\"Besuche\",\"metric.pageviews\":\"Seitenaufrufe\",\"metric.viewsPerVisit\":\"Seiten pro Besuch\",\"metric.bounceRate\":\"Absprungrate\",\"metric.visitDuration\":\"Besuchsdauer\",\"hint.visitors\":\"Verschiedene Personen, einmal pro Tag gezählt\",\"hint.visits\":\"Sitzungen: Ein Besuch endet nach 30 Minuten ohne Aktivität\",\"hint.pageviews\":\"Jede geladene Seite, Wiederholungen eingeschlossen\",\"hint.viewsPerVisit\":\"Seitenaufrufe geteilt durch Besuche\",\"hint.bounceRate\":\"Ein Besuch mit einem Seitenaufruf ohne Ereignis, der kürzer als zehn Sekunden dauert\",\"hint.visitDuration\":\"Durchschnittliche Zeit pro Besuch, in der die Seite sichtbar und aktiv war\",\"delta.title\":\"Im Vergleich zum Vergleichszeitraum\",\"delta.none\":\"unverändert\",\"chart.label\":\"{metrics} im Zeitverlauf\",\"chart.scaled\":\"Jede Linie hat ihre eigene Skala. Für Werte darüberfahren.\",\"chart.pick\":\"Klicke auf Karten, um sie zum Diagramm hinzuzufügen.\",\"chart.dashed\":\"Gestrichelt: {range}.\",\"chart.then\":\"damals: {when}\",\"panel.pages\":\"Seiten\",\"panel.sources\":\"Quellen\",\"panel.locations\":\"Orte\",\"panel.rhythm\":\"Wann Leute kommen\",\"panel.ai\":\"KI-Agenten\",\"panel.devices\":\"Geräte\",\"panel.events\":\"Ereignisse\",\"panel.campaigns\":\"Kampagnen\",\"panel.views\":\"Ansichten für {title}\",\"panel.empty\":\"Nichts in diesem Zeitraum\",\"panel.more\":\"Alle anzeigen\",\"panel.filterBy\":\"Nach {name} filtern\",\"panel.showMap\":\"Karte anzeigen\",\"panel.showList\":\"Liste anzeigen\",\"panel.fullMap\":\"Karte im Vollbild\",\"tab.top\":\"Top\",\"tab.entry\":\"Einstieg\",\"tab.exit\":\"Ausstieg\",\"tab.channels\":\"Kanäle\",\"tab.sources\":\"Quellen\",\"tab.referrers\":\"Verweise\",\"tab.countries\":\"Länder\",\"tab.regions\":\"Regionen\",\"tab.cities\":\"Städte\",\"tab.agents\":\"Agenten\",\"tab.pages\":\"Seiten\",\"tab.device\":\"Gerät\",\"tab.browser\":\"Browser\",\"tab.os\":\"System\",\"tab.screen\":\"Bildschirm\",\"tab.language\":\"Sprache\",\"tab.event\":\"Ereignis\",\"tab.campaign\":\"Kampagne\",\"tab.source\":\"Quelle\",\"tab.medium\":\"Medium\",\"tab.content\":\"Inhalt\",\"tab.term\":\"Begriff\",\"column.visitors\":\"Besucher\",\"column.fetches\":\"Abrufe\",\"column.events\":\"Ereignisse\",\"column.time\":\"Zeit\",\"column.bounce\":\"Absprung\",\"channel.Direct\":\"Direkt\",\"channel.Organic Search\":\"Organische Suche\",\"channel.Paid Search\":\"Bezahlte Suche\",\"channel.Social\":\"Soziale Medien\",\"channel.Email\":\"E-Mail\",\"channel.AI\":\"KI\",\"channel.Referral\":\"Verweise\",\"channel.Campaign\":\"Kampagne\",\"device.desktop\":\"Desktop\",\"device.mobile\":\"Mobil\",\"device.tablet\":\"Tablet\",\"ai.live\":\"Live-Abrufe\",\"ai.crawl\":\"Crawls\",\"rhythm.busiest\":\"Spitze: {when}\",\"rhythm.table\":\"Besuche nach Wochentag und Uhrzeit\",\"rhythm.cell_one\":\"{when}: {n} Besuch\",\"rhythm.cell_other\":\"{when}: {n} Besuche\",\"scale.fewer\":\"Weniger\",\"scale.more\":\"Mehr\",\"map.failed\":\"Die Karte konnte nicht geladen werden\",\"map.label\":\"Besucher nach Land: {top}\",\"map.visitors_one\":\"{n} Besucher\",\"map.visitors_other\":\"{n} Besucher\",\"map.none\":\"Keine Besucher\",\"map.title\":\"Weltweit\",\"filter.button\":\"Filter\",\"filter.remove\":\"Filter entfernen\",\"filter.title\":\"Besuche anzeigen\",\"filter.where\":\"wenn\",\"filter.and\":\"und\",\"filter.field\":\"Feld\",\"filter.match\":\"Bedingung\",\"filter.is\":\"ist\",\"filter.not\":\"ist nicht\",\"filter.contains\":\"enthält\",\"filter.value\":\"Wert\",\"filter.placeholder\":\"Wert eingeben oder unten auswählen\",\"filter.placeholderContains\":\"Ein Teil des Werts\",\"filter.removeCondition\":\"Diese Bedingung entfernen\",\"filter.add\":\"+ Bedingung hinzufügen\",\"filter.note\":\"Alle Bedingungen müssen zutreffen. Klicke auf eine Zeile im Dashboard, um eine hinzuzufügen, ohne dies zu öffnen.\",\"filter.apply_one\":\"{n} Bedingung anwenden\",\"filter.apply_other\":\"{n} Bedingungen anwenden\",\"filter.everything\":\"Alles anzeigen\",\"group.pages\":\"Seiten\",\"group.sources\":\"Quellen\",\"group.location\":\"Ort\",\"group.device\":\"Gerät\",\"group.behaviour\":\"Verhalten\",\"field.page\":\"Seite\",\"field.entry\":\"Einstiegsseite\",\"field.exit\":\"Ausstiegsseite\",\"field.hostname\":\"Hostname\",\"field.channel\":\"Kanal\",\"field.source\":\"Quelle\",\"field.referrer\":\"Verweis\",\"field.utm_campaign\":\"Kampagne\",\"field.utm_source\":\"UTM-Quelle\",\"field.utm_medium\":\"UTM-Medium\",\"field.utm_content\":\"UTM-Inhalt\",\"field.utm_term\":\"UTM-Begriff\",\"field.country\":\"Land\",\"field.region\":\"Region\",\"field.city\":\"Stadt\",\"field.device\":\"Gerät\",\"field.browser\":\"Browser\",\"field.browser_version\":\"Browserversion\",\"field.os\":\"System\",\"field.os_version\":\"Systemversion\",\"field.screen\":\"Bildschirm\",\"field.language\":\"Sprache\",\"field.event\":\"Ereignis\",\"foot.powered\":\"Betrieben mit {name}\",\"foot.language\":\"Sprache\",\"theme.light\":\"Helles Design\",\"theme.dark\":\"Dunkles Design\",\"column.visits\":\"Besuche\",\"column.pageviews\":\"Aufrufe\",\"column.scroll\":\"Scrolltiefe\",\"column.duration\":\"Dauer\",\"column.share\":\"Anteil\",\"rhythm.typical\":\"{x}× eine typische Stunde\",\"rhythm.quiet\":\"Keine Besuche in dieser Stunde\",\"app.home\":\"Zurück zur Übersicht\",\"settings.open\":\"Einstellungen\",\"settings.title\":\"Einstellungen\",\"settings.general\":\"Allgemein\",\"settings.install\":\"Einbinden\",\"settings.siteName\":\"Name der Website\",\"settings.timezone\":\"Zeitzone\",\"settings.timezoneHint\":\"Die Tage in deinen Berichten beginnen hier um Mitternacht.\",\"settings.save\":\"Speichern\",\"settings.saving\":\"Wird gespeichert\",\"settings.saved\":\"Gespeichert\",\"settings.language\":\"Sprache\",\"settings.languageHint\":\"Nur für diesen Browser.\",\"settings.theme\":\"Design\",\"settings.themeSystem\":\"Geräteeinstellung\",\"settings.themeLight\":\"Hell\",\"settings.themeDark\":\"Dunkel\",\"install.live\":\"Besuche kommen an. Der letzte war {when}.\",\"install.none\":\"Noch keine Besuche. Füge das Skript unten ein und öffne dann eine Seite deiner Website.\",\"install.script\":\"Füge das auf jeder Seite ein, direkt vor {tag}.\",\"install.copy\":\"Kopieren\",\"install.copied\":\"Kopiert\",\"install.events\":\"Klicks auf beliebige Elemente lassen sich ohne JavaScript zählen.\",\"install.eventsJs\":\"Du kannst Ereignisse auch per JavaScript senden, für alles, was kein Klick ist.\",\"install.agents\":\"Um zu sehen, wie KI-Agenten wie ChatGPT und Claude deine Seiten lesen, gib jede Anfrage in deiner Middleware mit dem Code unten an Runlight weiter.\",\"install.ignore\":\"Deine eigenen Besuche\",\"install.ignored\":\"Deine Besuche aus diesem Browser werden nicht gezählt.\",\"install.counted\":\"Deine Besuche aus diesem Browser werden gezählt.\",\"install.ignoreButton\":\"Diesen Browser ignorieren\",\"install.trackButton\":\"Diesen Browser wieder zählen\",\"install.ignoreElsewhere\":\"Dashboard auf einer anderen Domain als die Website? Öffne {link} einmal in jedem Browser, den du nutzt.\",\"theme.system\":\"Geräteeinstellung\",\"theme.cycle\":\"Design: {current}. Klicken für {next}.\",\"panel.links\":\"Links\",\"links.new\":\"Neuer Link\",\"links.manage\":\"Verwalten\",\"links.clicks\":\"Klicks\",\"links.url\":\"Ziel-URL\",\"links.urlPlaceholder\":\"https://beispiel.de/eine/lange/adresse\",\"links.name\":\"Name\",\"links.namePlaceholder\":\"Optional, für dich selbst\",\"links.slug\":\"Kürzel\",\"links.slugPlaceholder\":\"Leer lassen für ein zufälliges\",\"links.domain\":\"Domain\",\"links.create\":\"Link erstellen\",\"links.save\":\"Änderungen speichern\",\"links.created\":\"Dein Kurzlink ist fertig.\",\"links.another\":\"Noch einen erstellen\",\"links.edit\":\"Link bearbeiten\",\"links.delete\":\"Löschen\",\"links.confirmDelete\":\"{name} löschen? Seine Klicks bleiben in deinen Statistiken.\",\"links.copy\":\"Kopieren\",\"links.copied\":\"Kopiert\",\"links.search\":\"Links durchsuchen\",\"links.sortClicks\":\"Meiste Klicks\",\"links.sortNewest\":\"Neueste\",\"links.sortName\":\"Name\",\"links.import\":\"CSV importieren\",\"links.importDone_one\":\"{n} Link importiert.\",\"links.importDone_other\":\"{n} Links importiert.\",\"links.importFailed\":\"Zeile {row}: {reason}\",\"links.importHelp\":\"Nutze die Spalten name und url, dazu slug und domain, wenn du sie hast.\",\"links.destination\":\"Führt zu\",\"links.clicksOverTime\":\"Klicks im Zeitverlauf\",\"links.sources\":\"Quellen\",\"links.countries\":\"Länder\",\"links.devices\":\"Geräte\",\"links.browsers\":\"Browser\",\"links.total_one\":\"{n} Klick\",\"links.total_other\":\"{n} Klicks\",\"links.domains\":\"Domains für Kurzlinks\",\"links.domainsHelp\":\"Nutze eine eigene Domain oder Subdomain für Kurzlinks, etwa t.beispiel.de. Ihre Links liegen im Stammverzeichnis: t.beispiel.de/sale.\",\"links.addDomain\":\"Domain hinzufügen\",\"links.domainPlaceholder\":\"t.beispiel.de\",\"links.ownDomain\":\"Diese Website ({prefix})\",\"links.removeDomain\":\"Entfernen\",\"settings.links\":\"Eigene Domains\",\"links.confirm\":\"Wirklich löschen\",\"links.editButton\":\"Bearbeiten\",\"links.step1\":\"Lege bei deinem DNS-Anbieter einen CNAME-Eintrag für die Subdomain an, der auf {host} zeigt, wo dieses Dashboard läuft. Für eine Domain ohne Subdomain nimm stattdessen einen A- oder ALIAS-Eintrag auf denselben Server.\",\"links.step2\":\"Sorge dafür, dass dein Hosting die Domain mit HTTPS annimmt: füge sie bei Vercel oder Netlify zu den Domains deines Projekts hinzu, oder zur Konfiguration und zum Zertifikat deines Servers. Läuft Runlight in deiner App, gib die Anfragen in deiner Middleware an rl.linkDomainResponse() weiter.\",\"links.step3\":\"Füge die Domain unten hinzu. Runlight prüft dann, ob sie dieses Dashboard erreicht.\",\"links.checking\":\"Wird geprüft\",\"links.working\":\"Funktioniert\",\"links.notWorking\":\"Erreicht Runlight noch nicht: {reason}\",\"links.recheck\":\"Erneut prüfen\",\"links.sortBy\":\"Links sortieren\",\"links.removeNote\":\"Wenn du eine Domain entfernst, bleiben ihre Links, Klicks und Statistiken erhalten: Sie liegen unter {fallback}, bis du die Domain wieder hinzufügst, und kehren dann zurück.\",\"links.removedDomain\":\"{domain}/ (entfernt)\",\"prompt.copy\":\"Prompt kopieren\",\"prompt.domainHint\":\"Kopiere diese Schritte mit deinen Adressen und füge sie dort ein.\",\"prompt.installHint\":\"Kopiere die Einrichtungsschritte und füge sie dort ein.\",\"links.showing\":\"{shown} von {total} angezeigt\",\"links.showMore\":\"{n} weitere anzeigen\",\"links.clicksLabel\":\"Klicks\",\"links.createdOn\":\"Erstellt am {date}\",\"settings.import\":\"Import\",\"import.intro\":\"Hol deine Kurzlinks von einem anderen Dienst, mit Klickverlauf, wo der Dienst ihn teilt. Dein Schlüssel oder Passwort dient nur diesem Import und wird nie gespeichert. Ein erneuter Import überspringt vorhandene Links.\",\"import.source\":\"Importieren von\",\"import.csv\":\"Beliebige CSV\",\"import.url\":\"Umami-Adresse\",\"import.apiKey\":\"API-Schlüssel\",\"import.username\":\"Benutzername\",\"import.password\":\"Passwort\",\"import.signIn\":\"Anmelden mit\",\"import.withKey\":\"API-Schlüssel\",\"import.withPassword\":\"Benutzername und Passwort\",\"import.start\":\"Import starten\",\"import.stop\":\"Stoppen\",\"import.running\":\"Importiere {done} von {total} Links\",\"import.done\":\"Fertig: {links} Links und {clicks} Klicks importiert, {skipped} waren schon da.\",\"import.stopped\":\"Nach {done} von {total} Links gestoppt. Starte erneut, um weiterzumachen; importierte Links werden übersprungen.\",\"import.failed\":\"Diese konnten nicht importiert werden.\",\"import.history.full\":\"Das importiert jeden Klick mit Land, Gerät, Browser und Verweis.\",\"import.history.daily\":\"Das importiert Klicks pro Tag, ohne Land oder Gerät.\",\"import.history.none\":\"Nur Links: Der Dienst teilt keine datierten Klicks.\",\"import.umamiHelp\":\"Erstelle in Umami unter Einstellungen, API-Schlüssel einen Schlüssel. Selbst gehostetes Standard-Umami hat keine API-Schlüssel, melde dich dann mit Benutzername und Passwort an. Beides dient nur diesem Import und wird nie gespeichert.\",\"import.csvHelp\":\"Nutze die Spalten name und url, dazu slug und domain, wenn du sie hast.\",\"import.chooseFile\":\"CSV-Datei wählen\",\"import.token\":\"Zugriffstoken\",\"import.workspace\":\"Workspace-ID (optional)\",\"import.dubHelp\":\"Erstelle in Dub unter Settings, API Keys einen Schlüssel mit Lesezugriff auf Links und Analytics. Jeder Klick kommt mit dem Business-Plan mit, Tageswerte mit Pro, nur Links mit Free.\",\"import.bitlyHelp\":\"Gehe in Bitly zu Settings, API, gib dein Passwort ein und erzeuge ein Token. Bitly speichert nur Tageswerte, so weit zurück, wie dein Plan erlaubt (bei Free keine).\",\"import.shortioHelp\":\"Öffne in Short.io Integrations and API und erstelle einen geheimen Schlüssel (ein öffentlicher kann keine Links lesen). Short.io erlaubt 60 Statistikabfragen pro Minute, daher geht dieser Import in seinem Tempo.\",\"import.rebrandlyHelp\":\"Erstelle in Rebrandly unter Settings, API keys einen Schlüssel. Rebrandly teilt nur die Gesamtklicks, daher kommen Links ohne Verlauf.\",\"import.soFar_one\":\"Bisher {n} Link importiert\",\"import.soFar_other\":\"Bisher {n} Links importiert\",\"import.moveNote\":\"Links auf der Domain des Dienstes (bit.ly, dub.sh, rebrand.ly, short.gy) ziehen mit gleichem Kürzel nach {fallback}; eigene Domains werden unter Eigene Domains hinzugefügt.\",\"prompt.title\":\"Nutzt du einen Coding-Assistenten?\",\"compare.allTime\":\"Vor dem gesamten Zeitraum gibt es nichts zum Vergleichen.\",\"view.reset\":\"Zurücksetzen\",\"view.resetHint\":\"Zurück zu den letzten 30 Tagen, ohne Filter oder Vergleich\",\"settings.sharing\":\"Teilen\",\"share.intro\":\"Ein Freigabelink zeigt die Statistiken dieser Website jedem, der ihn hat, ohne Anmeldung: die Zahlen, Seiten, Quellen und Orte. Er zeigt nie deine Kurzlinks, Einstellungen oder die Adresse der Website.\",\"share.namePlaceholder\":\"Für wen, etwa einen Kunden oder dein Team\",\"share.create\":\"Freigabelink erstellen\",\"share.empty\":\"Erstelle unten einen und schick ihn allen, die diese Zahlen sehen sollen.\",\"share.unnamed\":\"Ohne Titel\",\"share.open\":\"Öffnen\",\"share.rename\":\"Umbenennen\",\"share.save\":\"Speichern\",\"share.revokeNote\":\"Ein gelöschter Freigabelink funktioniert sofort nicht mehr. Wer ihn hatte, sieht dann einen Hinweis darauf.\",\"share.gone\":\"Wer ihn geteilt hat, hat ihn abgeschaltet. Bitte um einen neuen Link.\",\"live.title\":\"Gerade jetzt\",\"live.sub\":\"Aktualisiert sich alle 10 Sekunden\",\"live.now_one\":\"{n} Person auf der Website\",\"live.now_other\":\"{n} Personen auf der Website\",\"live.nowHint\":\"Alle, die in den letzten 5 Minuten eine Seite angesehen oder etwas getan haben.\",\"live.total_one\":\"{n} Seitenaufruf in den letzten 30 Minuten\",\"live.total_other\":\"{n} Seitenaufrufe in den letzten 30 Minuten\",\"live.minute_one\":\"{n} Seitenaufruf um {time}\",\"live.minute_other\":\"{n} Seitenaufrufe um {time}\",\"live.ago30\":\"vor 30 Min.\",\"live.nowLabel\":\"Jetzt\",\"live.pages\":\"Seiten\",\"live.sources\":\"Quellen\",\"live.countries\":\"Länder\",\"live.nobody\":\"Besucher erscheinen hier, sobald sie ankommen.\",\"live.feed\":\"Letzte Aktivität\",\"live.quiet\":\"Besuche der letzten 30 Minuten erscheinen hier.\",\"live.someone\":\"Jemand\",\"live.someoneIn\":\"Jemand in {place}\",\"live.viewed\":\"{who} hat {path} angesehen\",\"live.viewedVia\":\"{who} hat {path} angesehen, über {source}\",\"live.did\":\"{who} hat {name} auf {path} ausgelöst\",\"live.didVia\":\"{who} hat {name} auf {path} ausgelöst, über {source}\",\"welcome.title\":\"Runlight zu {name} hinzufügen\",\"welcome.lead\":\"Warte auf den ersten Besuch. Diese Seite füllt sich dann von selbst.\",\"settings.goals\":\"Ziele\",\"settings.funnels\":\"Funnels\",\"panel.conversions\":\"Conversions\",\"goals.revenueAside\":\"{amount} Umsatz\",\"goals.add\":\"Ziel hinzufügen\",\"goals.emptyTitle\":\"Deine Ziele erscheinen hier\",\"goals.emptyHint\":\"Ein Ziel zählt, was dir wichtig ist, etwa eine Anmeldung oder einen Klick auf einen Button. Ein Ereignis- oder Seitenziel zählt auch vergangene Besuche, und ein Klickziel zählt ab dem Hinzufügen.\",\"goals.goal\":\"Ziel\",\"goals.rate\":\"Rate\",\"goals.conversions\":\"Conversions\",\"goals.unknown\":\"(keine)\",\"goals.converted\":\"Konvertierte Personen\",\"goals.revenue\":\"Umsatz\",\"goals.overTime\":\"Conversions im Zeitverlauf\",\"goals.overTimeValued\":\"Conversions und Umsatz im Zeitverlauf, jeweils eigene Skala\",\"goals.byChannel\":\"Nach Kanal\",\"goals.bySource\":\"Nach Quelle\",\"goals.byPage\":\"Wo es passierte\",\"goals.describe.event\":\"Ereignis: {match}\",\"goals.describe.page\":\"Besuche von {match}\",\"goals.describe.selector\":\"Klicks auf {match}\",\"goals.describe.link\":\"Klicks auf Links zu {match}\",\"goals.value.each\":\"je {amount}\",\"goals.value.fromProp\":\"Betrag aus {prop}, in {currency}\",\"goals.name\":\"Name\",\"goals.namePlaceholder\":\"Anmeldung, Kauf, Termin gebucht\",\"goals.counts\":\"Zählt\",\"goals.kind.event\":\"Ein Ereignis\",\"goals.kind.page\":\"Einen Seitenbesuch\",\"goals.kind.click\":\"Einen Klick\",\"goals.clickOn\":\"Klicks auf\",\"goals.click.selector\":\"Ein Element\",\"goals.click.link\":\"Links zu einer Adresse\",\"goals.match.event\":\"Name des Ereignisses\",\"goals.match.page\":\"Seite\",\"goals.match.link\":\"Linkadresse\",\"goals.match.selector\":\"CSS-Selektor\",\"goals.pick\":\"Auf meiner Website wählen\",\"goals.picking\":\"Warte auf deine Auswahl\",\"goals.hint.event\":\"Der Name, den du mit runlight(\\\"Name\\\") oder einem data-runlight-Attribut sendest.\",\"goals.hint.page\":\"Ein Pfad wie /danke. Nutze * für Beliebiges: /blog/* oder /danke*. Eine volle URL geht auch.\",\"goals.hint.link\":\"Klicks auf Links mit passender Adresse. Nutze * für Beliebiges, etwa https://buy.stripe.com/*, oder beginne mit / für eigene Seiten.\",\"goals.hint.selector\":\"Ein beliebiger CSS-Selektor. Oder nutze Auf meiner Website wählen: Deine Website öffnet sich, du klickst das Element an, dann Verwenden.\",\"goals.valueLabel\":\"Wert\",\"goals.value.none\":\"Keiner\",\"goals.value.fixed\":\"Ein fester Betrag\",\"goals.value.prop\":\"Ein mit dem Ereignis gesendeter Betrag\",\"goals.amount\":\"Betrag pro Mal\",\"goals.property\":\"Eigenschaft mit dem Betrag\",\"goals.currency\":\"Währung\",\"goals.save\":\"Ziel speichern\",\"goals.create\":\"Ziel hinzufügen\",\"goals.cancel\":\"Abbrechen\",\"goals.edit\":\"Bearbeiten\",\"goals.intro\":\"Ziele machen aus Besuchen Conversions. Jedes zählt ein Ereignis, einen Seitenbesuch oder einen Klick und kann einen Geldwert tragen, damit du Umsatz nach Quelle und Seite siehst.\",\"goals.none\":\"Füge unten eins hinzu, damit es gezählt wird.\",\"goals.pastNote\":\"Ziele werden aus den vorhandenen Daten berechnet, ein neues Ziel zeigt also auch vergangene Conversions. Klickziele zählen etwa fünf Minuten nach dem Hinzufügen.\",\"settings.email\":\"E-Mail-Berichte\",\"settings.mail\":\"E-Mail-Dienst\",\"mail.intro\":\"Runlight verschickt Berichte und Einladungen über deinen eigenen E-Mail-Dienst. Richte ihn einmal ein, dann nutzen ihn alle Websites.\",\"mail.service\":\"Dienst\",\"mail.optional\":\"(optional)\",\"mail.keepSaved\":\"Gespeichert. Leer lassen, um ihn zu behalten.\",\"mail.from\":\"Absenderadresse\",\"mail.fromName\":\"Absendername\",\"mail.fromHint\":\"Nutze eine Adresse, die dein Dienst erlaubt, auf einer dort bestätigten Domain.\",\"mail.save\":\"Mail-Dienst speichern\",\"mail.change\":\"Ändern\",\"mail.fromLine\":\"Sendet von {from}\",\"mail.fromCode\":\"Im Code festgelegt. Sendet von {from}\",\"mail.testTo\":\"Test senden an\",\"mail.test\":\"Test senden\",\"mail.testSent\":\"Test an {to} gesendet. Sieh im Posteingang und im Spam nach.\",\"mail.notEncryptedTitle\":\"Deine Schlüssel werden unverschlüsselt gespeichert\",\"mail.notEncrypted\":\"Dieses Runlight hat kein RUNLIGHT_SECRET, daher liegen die Schlüssel genau so in der Datenbank, wie du sie eingibst. Setze RUNLIGHT_SECRET oder RUNLIGHT_TOKEN auf dem Server, damit sie verschlüsselt bleiben.\",\"mail.field.region\":\"Region\",\"mail.field.accessKeyId\":\"Zugriffsschlüssel-ID\",\"mail.field.secretAccessKey\":\"Geheimer Zugriffsschlüssel\",\"mail.field.apiKey\":\"API-Schlüssel\",\"mail.field.serverToken\":\"Server-API-Token\",\"mail.field.stream\":\"Nachrichtenstream\",\"mail.field.domain\":\"Versanddomain\",\"mail.field.secretKey\":\"Geheimer Schlüssel\",\"mail.field.host\":\"Host\",\"mail.field.port\":\"Port\",\"mail.field.security\":\"Sicherheit\",\"mail.field.username\":\"Benutzername\",\"mail.field.password\":\"Passwort\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Signaturgeheimnis\",\"reports.title\":\"Wer Berichte bekommt\",\"reports.intro\":\"Eine Zusammenfassung von {site} per E-Mail: Besucher, Seiten, Quellen, Länder und Conversions, verglichen mit dem Zeitraum davor.\",\"reports.none\":\"Füge unten eine E-Mail-Adresse hinzu, um sie zu verschicken.\",\"reports.weekly\":\"Wöchentlich\",\"reports.monthly\":\"Monatlich\",\"reports.frequency\":\"Wie oft\",\"reports.language\":\"Sprache\",\"reports.lastSent\":\"zuletzt gesendet {when}\",\"reports.never\":\"noch nicht\",\"reports.sample\":\"Jetzt ein Beispiel senden\",\"reports.sampleSent\":\"Beispiel an {to} gesendet.\",\"reports.emailPlaceholder\":\"name@beispiel.de\",\"reports.add\":\"Hinzufügen\",\"reports.when\":\"Wochenberichte decken Montag bis Sonntag ab und gehen montags ab 8 Uhr raus, Monatsberichte am 1., in der Zeitzone der Website. Sie verschickt der stündliche Check (ein Cron, der POST /api/check aufruft).\",\"reports.needsMail\":\"Berichte werden verschickt, sobald ein E-Mail-Dienst eingerichtet ist. Ein Dienst sendet sie für alle Websites.\",\"reports.setUpMail\":\"E-Mail-Dienst einrichten\",\"reports.needsMailTitle\":\"Noch kein E-Mail-Dienst\",\"email.subject.week\":\"{site}: {who} letzte Woche\",\"email.subject.month\":\"{site}: {who} im {month}\",\"email.when.week\":\"letzte Woche\",\"email.before.week\":\"der Woche davor\",\"email.when.month\":\"im {month}\",\"email.range\":\"{from} bis {to}\",\"email.pages\":\"Top-Seiten\",\"email.sources\":\"Top-Quellen\",\"email.countries\":\"Top-Länder\",\"email.conversions\":\"Conversions\",\"email.open\":\"Dashboard öffnen\",\"email.at\":\"Dein Dashboard liegt unter {where}\",\"email.footer\":\"Du bekommst diesen {frequency} Bericht für {site} von Runlight.\",\"email.weekly\":\"wöchentlichen\",\"email.monthly\":\"monatlichen\",\"email.unsubscribe\":\"Abbestellen\",\"email.test.subject\":\"Runlight kann E-Mails senden\",\"email.test.body\":\"Dieser Test kam über {service}. Berichte für deine Websites kommen auf demselben Weg.\",\"email.unsub.title\":\"Berichte für {site} abbestellen?\",\"email.unsub.body\":\"{email} bekommt dann keine Berichte mehr für diese Website.\",\"email.unsub.doneTitle\":\"Abbestellt\",\"email.unsub.done\":\"Keine Berichte für {site} gehen mehr an {email}.\",\"email.unsub.goneTitle\":\"Nichts abzubestellen\",\"email.unsub.gone\":\"Dieser Link wurde schon benutzt, oder der Bericht wurde entfernt.\",\"settings.api\":\"API und KI\",\"tokens.intro\":\"Frag deinen KI-Assistenten nach deinen Zahlen. Erstelle ein Token und füge Runlight dann zu Claude, Cursor oder jeder App hinzu, die sich mit MCP-Servern verbindet. Ein Lese-Token ändert nie etwas, und ein Verwaltungs-Token kann die Einstellungen einer Website ändern. Dasselbe Token funktioniert mit der HTTP-API.\",\"tokens.server\":\"Adresse des MCP-Servers\",\"tokens.namePlaceholder\":\"Wofür es ist, etwa Claude oder ein Skript\",\"tokens.scope\":\"Welche Websites es lesen darf\",\"tokens.allSites\":\"Alle Websites\",\"tokens.siteOnly\":\"Nur {site}\",\"tokens.create\":\"Token erstellen\",\"tokens.empty\":\"Erstelle unten einen, um einen KI-Assistenten oder ein Skript zu verbinden.\",\"tokens.used\":\"zuletzt genutzt am {date}\",\"tokens.never\":\"nie genutzt\",\"tokens.revokeNote\":\"Ein gelöschtes Token funktioniert sofort nicht mehr.\",\"tokens.once\":\"Kopiere dieses Token jetzt. Es wird nur einmal gezeigt, und Runlight speichert nur einen Fingerabdruck davon.\",\"tokens.claudeCode\":\"Claude Code bekommt das Token mit diesem Befehl.\",\"tokens.json\":\"Cursor und andere Apps mit einer mcpServers-JSON-Konfiguration nutzen stattdessen das hier.\",\"tokens.done\":\"Erledigt, ich habe es kopiert\",\"sites.domains\":\"Domains\",\"sites.domainsHint\":\"Gib die Domain der Website ein, etwa example.com, und trenne mehrere mit Kommas.\",\"sites.name\":\"Name\",\"sites.namePlaceholder\":\"Mein Blog\",\"sites.timezoneHint\":\"Tage werden in {zone} gezählt, was du später in den Einstellungen ändern kannst.\",\"sites.add\":\"Website hinzufügen\",\"sites.addTitle\":\"Website hinzufügen\",\"sites.firstTitle\":\"Füge deine erste Website hinzu\",\"sites.firstLead\":\"Runlight zählt jede Website, die du hier hinzufügst. Gib die Domain der Website ein, und der nächste Schritt zeigt das Script-Tag für ihre Seiten.\",\"sites.delete\":\"Diese Website löschen\",\"sites.deleteHint\":\"Beim Löschen einer Website verschwinden alle Besuche, Links, Ziele und Berichte dazu, und das lässt sich nicht rückgängig machen.\",\"app.signOut\":\"Abmelden\",\"install.ignoreServer\":\"Damit deine eigenen Besuche nicht mehr zählen, öffne {link} einmal in jedem Browser, den du nutzt.\",\"panel.geoCredit\":\"Standorte von {name}\",\"visits.tab\":\"Besuche\",\"visits.linksTab\":\"Kurzlinks\",\"visits.intro\":\"Hol deinen Besuchsverlauf herüber, damit deine Diagramme vor den Tag zurückreichen, an dem Runlight zu zählen begann. Nur Besuche vor Runlights eigenem erstem Besuch kommen herüber, daher zählt nichts doppelt.\",\"visits.onlyUmami\":\"Die API von Umami liefert jeden Besuch mit Seite, Quelle, Ort und Gerät, und genau das speichert Runlight. Plausible, Fathom und Google Analytics geben nur Summen heraus, und aus Summen lassen sich keine Besuche zurückgewinnen. Wenn du jeden Seitenaufruf in einer Datei hast, importiere sie stattdessen als CSV.\",\"visits.csvMoment\":\"Mehr als {max} Zeilen teilen sich einen Zeitpunkt, mehr als ein Stapel fassen kann.\",\"visits.csvStopped\":\"Angehalten. Dieselbe Datei erneut zu importieren ist sicher, denn bereits übernommene Zeilen werden ersetzt.\",\"visits.csvSkipped\":\"{n} Zeilen wurden ausgelassen, weil sie nach Runlights eigenem erstem Besuch lagen, vor dem, was diese Website behält, oder weder ein Seitenaufruf noch ein benanntes Ereignis waren.\",\"visits.csvRunning\":\"{done} von {total} Zeilen gesendet, bisher {pageviews} Seitenaufrufe\",\"visits.csvRunlight\":\"{name} ist im Besuchsformat von Runlight, mit {rows} Zeilen.\",\"visits.csvUmami\":\"{name} ist ein Umami-Export mit {rows} Zeilen.\",\"visits.csvOther\":\"Andere Datei wählen\",\"visits.csvChoose\":\"CSV-Datei wählen\",\"visits.csvHelp\":\"Nimm die CSV aus dem Datenexport von Umami oder eine Datei mit einer Zeile pro Seitenaufruf im Besuchsformat von Runlight, das die Dashboard-Doku beschreibt.\",\"visits.fromCsv\":\"Einer CSV-Datei\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Importieren aus\",\"visits.onlyUmamiTitle\":\"Warum nur Umami\",\"visits.find\":\"Websites suchen\",\"visits.website\":\"Umami-Website\",\"visits.noWebsites\":\"Dieses Umami-Konto hat keine Websites.\",\"visits.start\":\"Besuche importieren\",\"visits.running\":\"{done} von {total} Tagen gelesen, bisher {pageviews} Seitenaufrufe\",\"visits.done\":\"Fertig. {pageviews} Seitenaufrufe und {events} Ereignisse sind in {visits} Besuchen angekommen.\",\"visits.stopped\":\"Angehalten. Starte erneut, um beim zuletzt importierten Tag weiterzumachen.\",\"props.title\":\"Eigenschaften\",\"props.open\":\"Eigenschaften von {name}\",\"props.none\":\"Sie erscheinen, sobald das Event mit Eigenschaften gesendet wird.\",\"account.title\":\"Konto\",\"account.owner\":\"Du bist der Eigentümer und kannst daher alles ändern und Personen verwalten. Niemand sonst kann dich entfernen.\",\"account.viewer\":\"Du bist Betrachter und kannst daher die Zahlen jeder Website lesen, ohne etwas zu ändern.\",\"account.current\":\"Aktuelles Passwort\",\"account.next\":\"Neues Passwort\",\"account.nextHint\":\"Verwende mindestens zehn Zeichen. Eine Änderung meldet deine anderen Browser ab.\",\"account.save\":\"Passwort ändern\",\"account.saved\":\"Passwort geändert\",\"settings.people\":\"Personen\",\"people.intro\":\"Alle hier können sich bei diesem Server anmelden. Admins können alles ändern, was der Eigentümer ändern kann, und Personen verwalten, aber niemand kann den Eigentümer entfernen. Mitglieder ändern die Einstellungen jeder Website, und Betrachter lesen die Zahlen jeder Website, ohne etwas zu ändern. Lade eine Kollegin oder einen Kollegen ein, das Passwort wählen sie selbst.\",\"people.you\":\"du\",\"people.role\":\"Rolle\",\"people.owner\":\"Eigentümer\",\"people.viewer\":\"Betrachter\",\"people.roles\":\"Mitglieder können keine Personen verwalten, weder den E-Mail-Dienst noch den Assistenten einrichten und keine Website löschen. Nur der Eigentümer kann das Eigentum an einen Admin übergeben.\",\"people.emailPlaceholder\":\"E-Mail-Adresse der Person\",\"pluginKey.title\":\"Schlüssel für CMS-Plugins\",\"pluginKey.intro\":\"Die Plugins für WordPress, Drupal und Craft melden mit diesem Schlüssel KI-Agenten, die die Seiten dieser Website lesen. Er kann nur für diese Website melden und nichts lesen. Ein neuer Schlüssel macht den alten sofort ungültig.\",\"pluginKey.replace\":\"Schlüssel ersetzen\",\"export.csv\":\"CSV herunterladen\",\"export.zip\":\"Exportieren\",\"export.title\":\"Alles aus dieser Ansicht als CSV-Dateien herunterladen\",\"funnels.title\":\"Trichter\",\"funnels.intro\":\"Ein Trichter folgt den Schritten, die ein Besuch nehmen soll, etwa die Preisseite und dann die Anmeldung, und zeigt, wie viele Besuche jeden Schritt der Reihe nach geschafft haben.\",\"funnels.none\":\"Füge unten einen hinzu, um zu sehen, wo Leute unterwegs aufhören.\",\"funnels.add\":\"Trichter hinzufügen\",\"funnels.name\":\"Name\",\"funnels.namePlaceholder\":\"Anmeldung\",\"funnels.steps\":\"Schritte\",\"funnels.stepsHint\":\"Ein Seitenpfad kann * als Platzhalter nutzen, etwa /blog/*. Jeder Schritt muss nach dem vorherigen kommen, im selben Besuch.\",\"funnels.kind\":\"Art des Schritts\",\"funnels.page\":\"Seite\",\"funnels.event\":\"Ereignis\",\"funnels.removeStep\":\"Diesen Schritt entfernen\",\"funnels.addStep\":\"Schritt hinzufügen\",\"funnels.save\":\"Trichter speichern\",\"funnels.create\":\"Trichter erstellen\",\"funnels.stepPage\":\"Seite {match}\",\"funnels.stepEvent\":\"Ereignis {match}\",\"funnels.wentOn\":\"{pct} gingen weiter\",\"funnels.tab\":\"Trichter\",\"funnels.goalsTab\":\"Ziele\",\"sites.modeHere\":\"Hier zählen\",\"sites.modeConnect\":\"Anderes Runlight verbinden\",\"sites.connectIntro\":\"Verbinde hier eine Website, die sich bereits mit Runlight in ihrer eigenen App zählt. Ihre Zahlen bleiben dort. Du meldest dich dort einmal an und erlaubst diesen Server, danach kannst du die Website von hier aus sehen und ändern.\",\"sites.connectUrl\":\"Ihre Runlight-Adresse\",\"sites.connectToken\":\"API-Token\",\"sites.connectTokenHint\":\"Erstelle auf dieser Installation einen Token unter Einstellungen, API und KI. Mit einem Lese-Token erscheinen die Zahlen hier und die Einstellungen bleiben dort.\",\"sites.connect\":\"Verbinden\",\"sites.all\":\"Alle Websites\",\"sites.remoteNote\":\"Diese Website wird von ihrem eigenen Runlight unter {url} gezählt, das diesem Server das Lesen erlaubt. Erlaube Änderungen, um auch ihre Einstellungen von hier aus zu verwalten.\",\"sites.disconnect\":\"Diese Website trennen\",\"sites.disconnectHint\":\"Beim Trennen verschwindet die Website von diesem Server. Ihr eigenes Runlight und alles, was es gezählt hat, bleiben unverändert.\",\"sites.disconnectButton\":\"Website trennen\",\"sites.confirmDisconnect\":\"Trennen bestätigen\",\"sites.disconnectName\":\"{name} trennen?\",\"settings.data\":\"Daten\",\"data.retention\":\"Besuche behalten für\",\"data.retentionHint\":\"Ältere Besuche und Ereignisse werden beim Speichern endgültig gelöscht, danach jeden Tag. Ziele, Links und Einstellungen bleiben.\",\"data.forever\":\"Immer\",\"data.months\":\"{n} Monate\",\"data.years\":\"{n} Jahre\",\"data.deletesBefore\":\"Besuche vor dem {date} werden beim Speichern gelöscht.\",\"data.unreachable\":\"{url} war nicht erreichbar, um diese Einstellung zu lesen. Versuche es in einer Minute erneut.\",\"data.export\":\"Alles exportieren\",\"data.exportHint\":\"Die ZIP-Datei enthält alle Berichte dieser Website seit dem ersten Besuch als CSV-Dateien.\",\"data.download\":\"ZIP herunterladen\",\"sites.remoteTitle\":\"Von einem anderen Runlight gezählt\",\"sites.openRemote\":\"Sein Dashboard öffnen\",\"sites.useToken\":\"Stattdessen einen API-Token verwenden\",\"sites.useSignIn\":\"Stattdessen dort anmelden\",\"sites.remoteManaged\":\"Diese Website wird von ihrem eigenen Runlight unter {url} gezählt. Änderungen, die du hier machst, werden dort gespeichert.\",\"sites.allowChanges\":\"Änderungen erlauben\",\"sites.reconnect\":\"Erneut verbinden\",\"sites.reconnectHint\":\"Nutze das, wenn die Installation diesen Server nicht mehr annimmt, etwa nachdem sein Token dort gelöscht wurde.\",\"sites.connectError.expired\":\"Die Verbindung hat zu lange gedauert oder wurde schon verwendet. Fang noch einmal an.\",\"sites.connectError.denied\":\"Die Verbindung wurde nicht erlaubt.\",\"sites.connectError.refused\":\"Die Installation hat diesen Server nicht verbinden lassen. Fang noch einmal an oder verbinde sie mit einem API-Token.\",\"sites.connectError.token\":\"Die Installation hat diesem Server kein Token gegeben. Fang noch einmal an.\",\"sites.connectError.failed\":\"Das Verbinden wurde nicht abgeschlossen. Fang noch einmal an.\",\"mail.fromRemote\":\"Gesendet von {host} über {from}\",\"mail.noneRemote\":\"{host} hat noch keinen E-Mail-Dienst und kann diese Berichte daher nicht senden. Richte dort im eigenen Dashboard unter Einstellungen, E-Mail-Dienst einen ein.\",\"tokens.manages\":\"Darf Einstellungen ändern\",\"account.again\":\"Neues Passwort wiederholen\",\"account.mismatch\":\"Die beiden neuen Passwörter sind nicht gleich.\",\"account.strength0\":\"Zu kurz\",\"account.strength1\":\"Schwach\",\"account.strength2\":\"Mittel\",\"account.strength3\":\"Gut\",\"account.strength4\":\"Stark\",\"mail.introRemote\":\"Berichte für diese Website gehen über den E-Mail-Dienst, der auf {host} eingerichtet ist.\",\"settings.assistant\":\"KI-Assistent\",\"assistant.open\":\"Fragen zu deinen Statistiken\",\"assistant.title\":\"KI-Assistent\",\"assistant.about\":\"Er antwortet aus den Zahlen von {site}, die er in dem Moment liest, in dem du fragst.\",\"assistant.clear\":\"Neuer Chat\",\"assistant.intro\":\"Frag nach Besuchern, Quellen, Seiten, Zielen oder allem anderen, was dieses Dashboard zeigt.\",\"assistant.ask1\":\"Wie schneidet dieser Zeitraum im Vergleich zum vorherigen ab?\",\"assistant.ask2\":\"Woher kommen die meisten Besucher?\",\"assistant.ask3\":\"Welche Seiten halten Leute am längsten?\",\"assistant.ask4\":\"Schicken KI-Assistenten Besucher hierher?\",\"assistant.placeholder\":\"Stell eine Frage\",\"assistant.send\":\"Senden\",\"assistant.thinking\":\"Liest deine Zahlen\",\"assistant.empty\":\"Der Assistent hatte keine Antwort.\",\"assistant.checked_one\":\"{n} Bericht gelesen\",\"assistant.checked_other\":\"{n} Berichte gelesen\",\"assistant.setupOwner\":\"Der Assistent braucht einen KI-Dienst zum Antworten. Füge einen Schlüssel für Anthropic, OpenAI oder Gemini hinzu oder verweise auf ein Modell auf deinem eigenen Rechner.\",\"assistant.setupViewer\":\"Der Assistent ist noch nicht eingerichtet. Der Eigentümer oder ein Admin kann unter Einstellungen, KI-Assistent einen KI-Dienst hinzufügen.\",\"assistant.setup\":\"Assistent einrichten\",\"assistant.ownersOnly\":\"Nur der Eigentümer oder ein Admin kann den Assistenten einrichten.\",\"assistant.settingsIntro\":\"Wähle unten einen KI-Dienst und füge einen API-Schlüssel von ihm ein. Danach öffnet der Roboter-Knopf neben Filter einen Assistenten, der Fragen zu deinen Statistiken in einfachen Worten beantwortet.\",\"assistant.privacyTitle\":\"Was der Dienst sieht\",\"assistant.privacy\":\"Jede Frage geht mit den Zahlen, die der Assistent zum Antworten liest, an diesen Dienst. Runlight speichert nichts über einzelne Besucher, also wird nichts Persönliches gesendet. Der Assistent liest nur, mit denselben Werkzeugen wie der MCP-Server, und kann deshalb nie etwas ändern.\",\"assistant.notEncryptedTitle\":\"Dein Schlüssel wird unverschlüsselt gespeichert\",\"assistant.notEncrypted\":\"Dieses Runlight hat kein RUNLIGHT_SECRET, daher liegt der Schlüssel genau so in der Datenbank, wie du ihn eingibst. Setze RUNLIGHT_SECRET oder RUNLIGHT_TOKEN auf dem Server, damit er verschlüsselt bleibt.\",\"assistant.provider\":\"KI-Dienst\",\"assistant.address\":\"Adresse\",\"assistant.addressHint\":\"Wo die OpenAI-kompatible API des Dienstes liegt, ohne /chat/completions am Ende.\",\"assistant.addressLocal\":\"Wo das Modell läuft. Der Server, auf dem Runlight läuft, muss es erreichen können.\",\"assistant.model\":\"Modell\",\"assistant.modelPlaceholder\":\"Der Name des Modells, wie der Dienst ihn nennt\",\"assistant.modelDefault\":\"Leer lassen, um {model} zu verwenden.\",\"assistant.modelHint\":\"Gib oben den Schlüssel ein und lade dann die Modelle des Dienstes, oder tippe einen Modellnamen. Ein Modell, das Werkzeuge aufrufen kann, funktioniert am besten.\",\"assistant.key\":\"API-Schlüssel\",\"assistant.remove\":\"Assistent ausschalten\",\"assistant.removeHint\":\"Entfernt den Dienst und seinen Schlüssel. Der Roboter-Knopf bittet dann einen Eigentümer, ihn neu einzurichten.\",\"journeys.open\":\"Wege\",\"journeys.title\":\"Wege\",\"journeys.intro\":\"Die Wege, die Besuche durch die Website nehmen, Seite für Seite. Klicke auf eine Seite, um nur den Besuchen zu folgen, die dort vorbeikamen.\",\"journeys.steps\":\"Schritte\",\"journeys.stepCount\":\"{n} Schritte\",\"journeys.start\":\"Beginnend bei\",\"journeys.end\":\"Endend bei\",\"journeys.anyPage\":\"Beliebige Seite\",\"journeys.step\":\"Schritt {n}\",\"journeys.other\":\"Andere Seiten\",\"journeys.left\":\"{n} gingen nicht weiter\",\"journeys.follow\":\"Besuchen über {page} folgen\",\"journeys.following\":\"Besuche über {page} bei Schritt {step}.\",\"journeys.none\":\"Wähle einen längeren Zeitraum, um mehr Besuche zu sehen.\",\"secret.show\":\"Anzeigen\",\"secret.hide\":\"Verbergen\",\"people.invite\":\"Einladen\",\"people.invited\":\"eingeladen\",\"people.invitedMeta\":\"{role}, der Link gilt bis {date}\",\"people.resend\":\"Erneut senden\",\"people.emailed\":\"Eine Einladung ist an {email} unterwegs. Du kannst diesen Link auch selbst schicken.\",\"people.noMail\":\"Dieser Server hat keinen E-Mail-Dienst, schick {email} diesen Link also selbst. Richte unter Einstellungen, E-Mail-Dienst einen ein, um Einladungen per E-Mail zu senden.\",\"people.mailFailed\":\"Die E-Mail an {email} ging nicht raus ({error}). Schick diesen Link selbst.\",\"people.linkHint\":\"Der Link funktioniert einmal, sieben Tage lang. Erneut senden erstellt einen neuen Link und macht diesen ungültig.\",\"twofa.title\":\"Zwei-Faktor-Anmeldung\",\"twofa.off\":\"Aus. Schalte sie ein, dann fragt die Anmeldung auch nach einem Code aus einer Authenticator-App auf deinem Handy.\",\"twofa.on_one\":\"An. Die Anmeldung fragt nach einem Code aus deiner Authenticator-App. Du hast noch {n} Wiederherstellungscode.\",\"twofa.on_other\":\"An. Die Anmeldung fragt nach einem Code aus deiner Authenticator-App. Du hast noch {n} Wiederherstellungscodes.\",\"twofa.turnOn\":\"Einschalten\",\"twofa.turnOff\":\"Ausschalten\",\"twofa.newCodes\":\"Neue Wiederherstellungscodes\",\"twofa.password\":\"Dein Passwort\",\"twofa.continue\":\"Weiter\",\"twofa.scan\":\"Scanne dies mit einer Authenticator-App wie 1Password, Google Authenticator oder Authy und gib den sechsstelligen Code ein, den sie anzeigt.\",\"twofa.qr\":\"QR-Code für deine Authenticator-App\",\"twofa.manual\":\"Oder gib diesen Schlüssel in der App ein.\",\"twofa.code\":\"Code aus der App\",\"twofa.confirm\":\"Einschalten\",\"twofa.codesIntro\":\"Bewahre diese Wiederherstellungscodes sicher auf. Jeder meldet dich einmal an, falls du dein Handy verlierst, und sie werden nicht noch einmal angezeigt.\",\"twofa.download\":\"Herunterladen\",\"twofa.copy\":\"Kopieren\",\"twofa.saved\":\"Ich habe sie gespeichert\",\"people.twoFactor\":\"Zwei-Faktor\",\"people.resetTwoFactor\":\"Zwei-Faktor zurücksetzen\",\"people.resetTwoFactorHint\":\"Schaltet die Zwei-Faktor-Anmeldung für diese Person aus, falls Handy und Wiederherstellungscodes verloren sind\",\"assistant.loadModels\":\"Modelle laden\",\"assistant.loadingModels\":\"Lädt\",\"assistant.pickModel\":\"Modell wählen\",\"assistant.typeModel\":\"Stattdessen einen Modellnamen eingeben\",\"assistant.chooseFromList\":\"Aus der Liste wählen\",\"journeys.sampled\":\"Das sind die Wege der neuesten {n} Besuche in diesem Zeitraum.\",\"error.owner_only\":\"Nur ein Eigentümer kann das ändern.\",\"error.domain_invalid\":\"Das ist kein Domainname.\",\"error.domain_in_use\":\"Unter {domain} laufen dieses Dashboard oder eine deiner Websites. Nimm für Kurzlinks eine eigene Domain oder Subdomain, etwa go.{domain}.\",\"error.domain_taken\":\"{domain} gehört bereits zu einer anderen Website.\",\"error.link_url\":\"Das Ziel muss eine vollständige URL sein, die mit https:// beginnt\",\"error.link_protocol\":\"Das Ziel muss mit http:// oder https:// beginnen\",\"error.link_long\":\"Das Ziel ist länger als 2.000 Zeichen.\",\"error.link_domain\":\"Füge {domain} zuerst in den Einstellungen als Link-Domain hinzu.\",\"error.link_slug\":\"Ein Slug besteht aus Buchstaben, Ziffern, Bindestrichen und Unterstrichen, höchstens 100.\",\"error.link_taken\":\"/{slug} ist schon vergeben.\",\"error.link_no_slug\":\"Es wurde kein freier Slug gefunden. Versuch es noch einmal.\",\"error.test_email\":\"Gib eine E-Mail-Adresse ein, an die der Test gehen soll.\",\"error.mail_unset\":\"Richte zuerst einen Mail-Dienst ein.\",\"error.email_invalid\":\"Gib eine E-Mail-Adresse ein.\",\"error.report_exists\":\"{email} bekommt diesen Bericht bereits.\",\"error.report_limit\":\"Eine Website kann an höchstens 50 Adressen senden.\",\"error.sample_soon\":\"Gerade ging schon ein Beispiel raus. Warte eine Minute und versuch es noch einmal.\",\"error.people_owner\":\"Nur der Eigentümer oder ein Admin kann Personen verwalten.\",\"error.role_needed\":\"Wähle Admin, Mitglied oder Betrachter.\",\"error.account_exists\":\"{email} hat bereits ein Konto.\",\"error.remove_self\":\"Du kannst dich nicht selbst entfernen.\",\"people.demoted\":\"Du bist jetzt Betrachter, deshalb sind die Einstellungen geschlossen und hier lässt sich nichts mehr ändern. Der Eigentümer oder ein Admin kann das rückgängig machen.\",\"links.importNoUrl\":\"Nichts wurde importiert, weil die Datei keine Spalte url mit Adressen hat. Nutze die Spalten name und url, dazu slug und domain, wenn du sie hast.\",\"app.sessionEnded\":\"Du wurdest abgemeldet, was passiert, wenn eine Sitzung abläuft oder sich ein Passwort ändert. {link}, dann kommst du zu dieser Ansicht zurück.\",\"app.signInAgain\":\"Melde dich wieder an\",\"links.noneYet\":\"Für diese Website hat noch niemand einen Kurzlink erstellt.\",\"error.remote_slow\":\"{host} hat zu lange gebraucht. Versuch einen kürzeren Zeitraum.\",\"error.domain_not_public\":\"{domain} ist kein öffentlicher Domainname. Nimm einen, den jeder Browser erreichen kann.\",\"error.unreachable\":\"{host} ist nicht erreichbar.\",\"error.redirected\":\"{host} hat mit einer Weiterleitung geantwortet.\",\"error.token_refused\":\"{host} hat das Token abgelehnt. Verbinde es in den Einstellungen der Website neu.\",\"error.mail_failed\":\"Die E-Mail konnte nicht gesendet werden ({detail}).\",\"error.mail_unreachable\":\"{host} ist nicht erreichbar.\",\"error.mail_slow\":\"{host} hat zu lange gebraucht, deshalb wurde die E-Mail nicht gesendet.\",\"error.mail_refused\":\"{host} hat die E-Mail abgelehnt ({detail}).\",\"error.mail_service\":\"Wähle einen Mail-Dienst.\",\"error.mail_field\":\"{field} fehlt noch.\",\"error.mail_option\":\"{field} muss einer dieser Werte sein ({options}).\",\"error.mail_https\":\"Die Webhook-URL muss https verwenden.\",\"error.mail_region\":\"Das ist keine AWS-Region wie us-east-1.\",\"error.mail_in_code\":\"Der Mail-Dienst ist im Code festgelegt und lässt sich hier nicht ändern.\",\"error.mail_from\":\"Gib die Absenderadresse der Berichte ein, zum Beispiel reports@example.com.\",\"error.smtp_starttls\":\"Der SMTP-Server bietet kein STARTTLS an. Wähle bei Sicherheit TLS oder keine.\",\"error.unknown_account\":\"Dieses Konto gibt es nicht mehr.\",\"error.password_short\":\"Nimm ein Passwort mit mindestens {min} Zeichen.\",\"error.invite_gone\":\"Diese Einladung ist abgelaufen oder wurde schon benutzt. Bitte um eine neue.\",\"error.too_many_tries\":\"Zu viele Versuche. Warte fünfzehn Minuten und versuch es noch einmal.\",\"error.password_current_wrong\":\"Dein aktuelles Passwort stimmt nicht.\",\"error.password_wrong\":\"Dein Passwort stimmt nicht.\",\"error.code_wrong\":\"Dieser Code stimmt nicht. Prüf die Uhrzeit auf deinem Handy und versuch den nächsten.\",\"error.twofactor_off\":\"Schalte zuerst die Zwei-Faktor-Anmeldung ein.\",\"error.twofactor_self\":\"Deine eigene Zwei-Faktor-Anmeldung schaltest du unter Konto aus.\",\"error.unknown_invite\":\"Diese Einladung gibt es nicht mehr.\",\"error.origin_needed\":\"Lege zuerst die eigene Adresse dieses Runlight fest (RUNLIGHT_URL auf dem Server oder origin in routes()), damit ein verbundener Hub Link-Domains und E-Mail-Berichte hinzufügen kann.\",\"error.twofactor_restart\":\"Zu viele falsche Codes. Beginne erneut mit dem Einschalten der Zwei-Faktor-Anmeldung.\",\"error.pick_origin\":\"Sende den Ursprung des Dashboards, etwa https://stats.example.com\",\"error.pick_hub\":\"Die Adresse dieses Hubs ist nicht die, von der aus er sich verbunden hat. Verbinde die Website von hier aus erneut.\",\"assistant.viewerDaily\":\"Fragen pro Betrachter und Tag\",\"assistant.viewerDailyHint\":\"Jede Frage wird mit deinem KI-Schlüssel bezahlt. Betrachter sind die Personen, die du unter Personen einlädst und die Statistiken lesen, aber nichts ändern können. Jeder von ihnen kann so viele Fragen am Tag stellen. Setze 0, um den Assistenten den Eigentümern vorzubehalten. Freigabelinks bekommen den Assistenten nie.\",\"error.assistant_soon\":\"Du hast in kurzer Zeit viel gefragt. Warte kurz und frag dann noch einmal.\",\"error.assistant_daily\":\"Betrachter können {limit} Fragen pro Tag stellen. Frag morgen wieder.\",\"error.assistant_limit\":\"Verwende eine ganze Zahl von 0 bis 1.000.\",\"error.token_unset\":\"Setze RUNLIGHT_TOKEN oder übergib token oder authorize an routes(). Ohne das ist Runlight nur offen, wenn NODE_ENV development ist.\",\"error.unauthorized\":\"Melde dich an oder sende ein Token, um das zu sehen.\",\"error.sign_in\":\"Melde dich zuerst an.\",\"error.unknown_site\":\"Diese Website gibt es hier nicht.\",\"error.filters_max\":\"Verwende höchstens {max} Filter gleichzeitig.\",\"error.filter_bad\":\"Runlight kann den Filter „{filter}“ nicht lesen.\",\"error.range_bad\":\"Diese Daten sind kein Zeitraum, den Runlight lesen kann.\",\"error.compare_bad\":\"Runlight kennt den Vergleich „{compare}“ nicht.\",\"error.compare_range_bad\":\"Wähle beide Daten für den Vergleich.\",\"error.send_json\":\"Sende das als JSON.\",\"error.send_object\":\"Sende ein JSON-Objekt.\",\"error.unknown_domain\":\"Diese Domain gehört nicht zu dieser Website.\",\"error.rows_needed\":\"Sende die Links als Liste von Zeilen.\",\"error.unknown_link\":\"Diesen Link gibt es nicht mehr.\",\"error.not_found\":\"Das gibt es hier nicht.\",\"error.unknown_goal\":\"Dieses Ziel gibt es nicht mehr.\",\"error.goal_invalid\":\"Das Ziel wurde nicht gespeichert ({detail}).\",\"error.funnel_invalid\":\"Der Trichter wurde nicht gespeichert ({detail}).\",\"error.import_failed\":\"Der Import wurde angehalten ({detail}).\",\"error.assistant_failed\":\"Der KI-Dienst hat nicht wie erwartet geantwortet ({detail}).\",\"error.assistant_invalid\":\"Der Assistent wurde nicht gespeichert ({detail}).\",\"error.site_invalid\":\"Die Website wurde nicht gespeichert ({detail}).\",\"error.connect_failed\":\"Das Verbinden hat nicht begonnen ({detail}).\",\"error.method_not_allowed\":\"Das geht hier nicht.\",\"error.unknown_report\":\"Diesen Bericht gibt es nicht mehr.\",\"error.unknown_share\":\"Diesen Freigabelink gibt es nicht mehr.\",\"error.token_name\":\"Gib dem Token einen Namen.\",\"error.token_site\":\"Ein Token, das Einstellungen ändert, gilt für eine Website. Wähle die Website.\",\"error.unknown_token\":\"Dieses Token gibt es nicht mehr.\",\"error.sites_in_code\":\"Die Websites sind hier im Code festgelegt und werden dort geändert.\",\"error.connect_url\":\"Gib die Adresse der Installation ein, etwa https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} hat nicht wie eine Runlight-Installation geantwortet.\",\"error.connect_endpoints\":\"{url} hat Endpunkte unter einer anderen Adresse genannt.\",\"error.connect_old\":\"{url} nutzt ein älteres Runlight. Aktualisiere es oder verbinde es mit einem API-Token aus seinen Einstellungen.\",\"error.connect_register\":\"{url} hat diesen Server nicht verbinden lassen. {reason}\",\"error.connect_expired\":\"Die Verbindung hat zu lange gedauert oder wurde schon verwendet. Fang noch einmal an.\",\"error.connect_denied\":\"Die Verbindung wurde nicht erlaubt.\",\"error.connect_refused\":\"Die Installation hat diesen Server nicht verbinden lassen. Fang noch einmal an oder verbinde sie mit einem API-Token.\",\"error.connect_token\":\"Die Installation hat diesem Server kein Token gegeben. Fang noch einmal an.\",\"error.connect_again\":\"Verbinde diese Website erneut, um sie von hier aus zu ändern.\",\"error.hub_domains\":\"Ein verbundener Hub kann die Domains einer Website nicht ändern.\",\"error.observe_many\":\"Sende höchstens 500 Abrufe auf einmal.\",\"error.observe_url\":\"Sende die Adresse der Seite.\",\"error.site_remote\":\"Diese Website wird von ihrem eigenen Runlight gezählt. Verbinde sie in ihren Einstellungen erneut, um sie von hier aus zu ändern.\",\"error.unknown_funnel\":\"Diesen Trichter gibt es nicht mehr.\",\"error.assistant_dashboard\":\"Nur das Dashboard kann den Assistenten nutzen.\",\"error.share_not_available\":\"Das ist auf einem geteilten Dashboard nicht verfügbar.\",\"error.assistant_unset\":\"Der Assistent ist noch nicht eingerichtet. Ein Eigentümer kann das unter Einstellungen, KI-Assistent tun.\",\"error.question_needed\":\"Stell eine Frage.\",\"error.site_name\":\"Ein Website-Name hat 1 bis 80 Zeichen.\",\"error.unknown_timezone\":\"Runlight kennt die Zeitzone „{timezone}“ nicht.\",\"error.retention_bad\":\"Behalte Besuche {months} Monate lang oder für immer.\",\"error.share_gone\":\"Dieser Freigabelink funktioniert nicht mehr.\",\"error.token_read_only\":\"API-Tokens können nur lesen.\",\"error.icon_none\":\"Diese Website hat kein Symbol.\",\"error.event_needed\":\"Nenne das Ereignis.\",\"error.property_bad\":\"Runlight kann diesen Eigenschaftsnamen nicht lesen.\",\"error.unknown_dimension\":\"Runlight kennt die Aufschlüsselung „{dimension}“ nicht.\",\"error.internal\":\"Auf dem Server ist etwas schiefgegangen. Versuch es noch einmal.\",\"filter.max\":\"Es gelten höchstens {max} Filter gleichzeitig. Entferne einen, um einen weiteren hinzuzufügen.\",\"error.sample_soon_hub\":\"Ein verbundener Hub kann alle zehn Minuten ein Beispiel senden. Warte ein paar Minuten und versuch es noch einmal.\",\"people.demoteSelf\":\"Nur der Eigentümer oder ein Admin kann das rückgängig machen.\",\"people.demoteConfirm\":\"Zu {role} wechseln\",\"error.check_not_public\":\"es ist kein öffentlicher Domainname\",\"error.check_timeout\":\"die Antwort hat zu lange gedauert\",\"error.check_https\":\"er ist über HTTPS nicht erreichbar\",\"error.check_not_runlight\":\"etwas hat geantwortet, aber nicht Runlight\",\"error.check_status\":\"er hat mit {status} geantwortet\",\"error.assistant_address\":\"Gib die Adresse des Dienstes unter Einstellungen, KI-Assistent ein.\",\"error.address_refused\":\"{host} ist eine Link-Local- oder Cloud-Metadaten-Adresse, mit der sich Runlight nie verbindet.\",\"error.assistant_address_bad\":\"Gib die Adresse des Dienstes ein, beginnend mit https://\",\"error.assistant_cancelled\":\"Die Frage wurde abgebrochen.\",\"error.assistant_key\":\"Gib deinen {provider}-Schlüssel ein.\",\"error.assistant_model\":\"Gib ein Modell unter Einstellungen, KI-Assistent ein.\",\"error.assistant_no_models\":\"{host} hat keine Modelle aufgeführt. Gib stattdessen den Namen des Modells ein.\",\"error.assistant_provider\":\"Wähle einen KI-Dienst unter Einstellungen, KI-Assistent.\",\"error.assistant_refused\":\"{host} hat die Anfrage abgelehnt ({detail}).\",\"error.assistant_slow\":\"Die Antwort auf diese Frage hat zu lange gedauert. Frag etwas Engeres.\",\"error.assistant_status\":\"{host} hat mit {status} geantwortet.\",\"error.assistant_steps\":\"Der Assistent brauchte für diese Frage zu viele Schritte. Frag etwas Engeres.\",\"error.assistant_timeout\":\"{host} hat zu lange für die Antwort gebraucht.\",\"error.funnel_exists\":\"Es gibt schon einen Trichter namens „{name}“.\",\"error.funnel_long\":\"Ein Trichter hat höchstens acht Schritte.\",\"error.funnel_name\":\"Gib dem Trichter einen Namen.\",\"error.funnel_page_bad\":\"„{match}“ ist weder ein Pfad noch eine URL.\",\"error.funnel_short\":\"Ein Trichter braucht mindestens zwei Schritte.\",\"error.goal_amount\":\"Gib einen Betrag ein, etwa 49 oder 9,99.\",\"error.goal_click_taken\":\"Das Klickziel „{match}“ sendet schon Ereignisse mit diesem Namen.\",\"error.goal_currency\":\"Verwende einen dreibuchstabigen Währungscode wie USD oder EUR.\",\"error.goal_event\":\"Gib den Namen des Ereignisses ein.\",\"error.goal_event_taken\":\"Ein Ereignisziel zählt schon Ereignisse namens „{name}“, gib diesem Klickziel also einen anderen Namen.\",\"error.goal_exists\":\"Es gibt schon ein Ziel namens „{name}“.\",\"error.goal_kind\":\"Wähle, was das Ziel zählt, ein Ereignis, einen Seitenbesuch oder einen Klick.\",\"error.goal_link\":\"Gib die Adresse des Links ein, etwa https://buy.stripe.com/*\",\"error.goal_name\":\"Gib dem Ziel einen Namen.\",\"error.goal_page\":\"Gib einen Seitenpfad ein, etwa /danke oder /blog/*\",\"error.goal_page_bad\":\"Diese Seite ist weder ein Pfad noch eine URL.\",\"error.goal_prop_kind\":\"Nur ein Ereignisziel kann seinen Betrag aus dem Ereignis nehmen. Verwende stattdessen einen festen Betrag.\",\"error.goal_prop_name\":\"Ein Eigenschaftsname besteht aus Buchstaben, Ziffern, Punkten, Bindestrichen und Unterstrichen.\",\"error.goal_selector\":\"Gib einen CSS-Selektor ein, etwa #signup oder .buy-button\",\"error.import_day_full\":\"Ein Tag hat mehr als {limit} Ereignisse, mehr als ein Importschritt lesen kann.\",\"error.import_key\":\"Gib deinen {service}-Schlüssel ein.\",\"error.import_refused\":\"Der Schlüssel oder die Anmeldung wurde abgelehnt.\",\"error.import_slug_bad\":\"/{slug} enthält Zeichen, die ein Runlight-Slug nicht verwenden kann.\",\"error.import_slug_taken\":\"/{slug} wird schon von „{name}“ verwendet.\",\"error.import_source\":\"Runlight kann nicht aus {source} importieren.\",\"error.import_status\":\"{host} hat mit {status} geantwortet.\",\"error.import_umami_address\":\"Gib die Adresse deines Umami ein, etwa https://stats.example.com\",\"error.import_umami_login\":\"Gib einen API-Schlüssel oder einen Benutzernamen und ein Passwort ein.\",\"error.import_website\":\"Wähle die Umami-Website, die importiert werden soll.\",\"error.import_csv_batch\":\"Sende höchstens {max} Zeilen auf einmal.\",\"error.import_csv_format\":\"Diese Datei ist weder ein Umami-Export noch im Besuchsformat von Runlight. Prüfe ihre Kopfzeile.\",\"error.install_refused\":\"Diese Installation hat das Token abgelehnt.\",\"error.install_token\":\"Gib ein API-Token dieser Installation ein.\",\"error.site_domain_invalid\":\"„{host}“ ist kein Domainname.\",\"error.site_domain_needed\":\"Füge die Domain der Website hinzu, etwa example.com\",\"error.site_domain_taken\":\"{host} gehört schon zu {site}.\",\"share.goneTitle\":\"Dieser Freigabelink funktioniert nicht mehr\",\"error.token_manage_only\":\"Ein Verwaltungs-Token ändert nur die Einstellungen seiner eigenen Website.\",\"empty.pages.title\":\"Deine meistbesuchten Seiten erscheinen hier\",\"empty.pages.hint\":\"Jede geöffnete Seite wird aufgeführt, mit der Zeit, die Besucher dort verbringen.\",\"empty.sources.title\":\"Deine Besucherquellen erscheinen hier\",\"empty.sources.hint\":\"Die Suchen und Websites, die dir Besucher schicken, werden mit Namen aufgeführt.\",\"empty.locations.title\":\"Die Orte deiner Besucher erscheinen hier\",\"empty.locations.hint\":\"Sieh, aus welchen Ländern und Städten deine Besucher kommen.\",\"empty.rhythm.title\":\"Deine stärksten Zeiten erscheinen hier\",\"empty.rhythm.hint\":\"Jede Stunde der Woche füllt sich, sobald Besuche kommen.\",\"empty.ai.title\":\"KI-Agenten, die deine Website lesen, erscheinen hier\",\"empty.ai.hint\":\"Assistenten wie ChatGPT und Claude werden aufgeführt, wenn sie deine Seiten abrufen.\",\"empty.devices.title\":\"Die Geräte deiner Besucher erscheinen hier\",\"empty.devices.hint\":\"Sieh, welche Browser und Bildschirme deine Besucher nutzen.\",\"empty.events.title\":\"Deine Ereignisse erscheinen hier\",\"empty.events.hint\":\"Klicks auf ausgehende Links und die Ereignisse, die du sendest, werden sofort gezählt.\",\"empty.campaigns.title\":\"Deine Kampagnen erscheinen hier\",\"empty.campaigns.hint\":\"Besuche über Links mit UTM-Tags werden nach Kampagne, Quelle und Medium gruppiert.\",\"empty.links.title\":\"Deine Kurzlinks erscheinen hier\",\"empty.links.hint\":\"Erstelle einen Kurzlink zum Teilen, und jeder Klick darauf wird gezählt.\",\"sites.refused\":\"{host} akzeptiert die Verbindung dieses Servers nicht mehr, daher lassen sich die Zahlen nicht lesen. Verbinde es erneut, um das zu beheben.\",\"sites.connected\":\"Mit {host} verbunden.\",\"links.totalTip\":\"Alle Klicks auf deine Kurzlinks im gewählten Zeitraum\",\"links.setup\":\"So richtest du sie ein\",\"links.recordType\":\"Typ\",\"links.recordName\":\"Name\",\"links.recordValue\":\"Wert\",\"links.doDns\":\"Lege diesen Eintrag bei deinem DNS-Anbieter an.\",\"links.doDnsAlias\":\"Lege diesen Eintrag bei deinem DNS-Anbieter an. Gibt es dort kein ALIAS, nimm einen A-Eintrag auf die IP-Adresse deines Servers.\",\"links.doHttps\":\"Lass deinen Host {domain} per HTTPS ausliefern.\",\"links.doCheck\":\"Prüfe erneut. Ein neuer Eintrag kann ein paar Minuten brauchen.\",\"links.localNote\":\"Dieses Dashboard läuft unter {host}, daher funktioniert der Eintrag erst mit einer öffentlichen Adresse.\",\"links.guide\":\"Anleitung\",\"funnels.emptyTitle\":\"Deine Funnels erscheinen hier\",\"share.emptyTitle\":\"Deine Freigabelinks erscheinen hier\",\"tokens.emptyTitle\":\"Deine Tokens erscheinen hier\",\"reports.emptyTitle\":\"Deine E-Mail-Berichte erscheinen hier\",\"journeys.emptyTitle\":\"Die Wege der Besucher erscheinen hier\",\"props.emptyTitle\":\"Die Details dieses Events erscheinen hier\",\"empty.mini\":\"Diese Liste füllt sich mit jedem Besuch.\",\"empty.search\":\"Hier passt noch nichts zu „{q}“, versuch ein anderes Wort.\",\"delta.fromNone\":\"von 0\",\"people.admin\":\"Admin\",\"people.member\":\"Mitglied\",\"people.handOver\":\"Zum Eigentümer machen\",\"people.handOverHint\":\"Übergibt das Eigentum an diesen Admin, und du wirst Admin\",\"people.handOverConfirm\":\"Übergeben\",\"people.demotedMember\":\"Du bist jetzt Mitglied, deshalb sind Personen und die Einstellungen der ganzen Installation für dich geschlossen. Der Eigentümer oder ein Admin kann das rückgängig machen.\",\"account.admin\":\"Du bist Admin und kannst daher alles ändern und Personen verwalten, außer den Eigentümer.\",\"account.member\":\"Du bist Mitglied und kannst daher die Einstellungen jeder Website ändern. Der Eigentümer und die Admins verwalten Personen und die Einstellungen der ganzen Installation.\",\"mail.adminOnly\":\"Es ist noch kein E-Mail-Dienst eingerichtet. Der Eigentümer oder ein Admin kann hier einen einrichten.\",\"error.admin_only\":\"Nur der Eigentümer oder ein Admin kann das ändern.\",\"error.owner_protected\":\"Niemand außer dem Eigentümer kann den Eigentümer ändern oder entfernen.\",\"error.owner_hand_over\":\"Nur der Eigentümer kann das Eigentum übergeben.\",\"error.owner_needs_admin\":\"Mach die Person zuerst zum Admin.\",\"embed.goneTitle\":\"Dieser Dashboard-Link funktioniert nicht\",\"embed.gone\":\"Öffne das Dashboard erneut aus dem Adminbereich deiner Website.\",\"embed.expiredTitle\":\"Diese Ansicht ist abgelaufen\",\"embed.expired\":\"Das Dashboard in deinem Adminbereich bleibt jeweils eine Stunde lang offen. Lade die Seite neu, um es wieder zu öffnen.\",\"embed.reload\":\"Seite neu laden\",\"embedKey.title\":\"Schlüssel für das Dashboard in deinem CMS\",\"embedKey.intro\":\"Mit diesem Schlüssel in ihren Einstellungen zeigen die Plugins für WordPress, Drupal und Craft das Dashboard dieser Website in deinem Adminbereich. Er öffnet die schreibgeschützte Ansicht, die auch ein geteilter Link zeigt, und kann selbst nichts lesen. Lösche ihn unter Einstellungen, API und KI, um ihn sofort zu stoppen.\",\"embedKey.make\":\"Schlüssel erstellen\",\"embedKey.another\":\"Weiteren Schlüssel erstellen\",\"embedKey.name\":\"Dashboard in einem CMS\",\"tokens.embeds\":\"Öffnet das Dashboard in einem CMS\",\"error.embed_expired\":\"Dieses Dashboard ist abgelaufen. Lade die Seite neu, um es wieder zu öffnen.\",\"error.embed_site\":\"Ein Schlüssel für das Dashboard in einem CMS gilt für eine Website. Wähle die Website aus.\"}",
|
|
4
|
+
"es": "{\"app.site\":\"Sitio\",\"app.confirmDelete\":\"¿Eliminar {name}?\",\"app.signedOut\":\"Abre esta página una vez con {token} seguido de tu {env} para iniciar sesión.\",\"app.live.title\":\"Visitantes en los últimos cinco minutos\",\"app.live_one\":\"{n} ahora mismo\",\"app.live_other\":\"{n} ahora mismo\",\"headline.who_one\":\"{n} persona\",\"headline.who_other\":\"{n} personas\",\"headline.visited_one\":\"visitó el sitio\",\"headline.visited_other\":\"visitaron el sitio\",\"headline.matched_one\":\"coincide con estos filtros\",\"headline.matched_other\":\"coinciden con estos filtros\",\"headline.plain\":\"{who} {verb} {when}.\",\"headline.up\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.down\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.same\":\"{who} {verb} {when}, igual que {against}.\",\"headline.more\":\"un {pct} % más\",\"headline.fewer\":\"un {pct} % menos\",\"headline.lastYear\":\"los mismos días del año pasado\",\"when.today\":\"hoy\",\"when.yesterday\":\"ayer\",\"when.7d\":\"en los últimos 7 días\",\"when.30d\":\"en los últimos 30 días\",\"when.90d\":\"en los últimos 90 días\",\"when.month\":\"este mes\",\"when.last_month\":\"el mes pasado\",\"when.year\":\"este año\",\"when.12mo\":\"en los últimos 12 meses\",\"when.all\":\"desde que empezó el seguimiento\",\"when.range\":\"del {range}\",\"when.day\":\"el {day}\",\"before.today\":\"ayer\",\"before.yesterday\":\"el día anterior\",\"before.7d\":\"los 7 días anteriores\",\"before.30d\":\"los 30 días anteriores\",\"before.90d\":\"los 90 días anteriores\",\"before.month\":\"el mismo tramo anterior\",\"before.last_month\":\"el mes anterior\",\"before.year\":\"el mismo tramo anterior\",\"before.12mo\":\"los 12 meses anteriores\",\"before.all\":\"el tramo anterior\",\"before.range\":\"el mismo tramo anterior\",\"period.today\":\"Hoy\",\"period.yesterday\":\"Ayer\",\"period.7d\":\"Últimos 7 días\",\"period.30d\":\"Últimos 30 días\",\"period.90d\":\"Últimos 90 días\",\"period.month\":\"Este mes\",\"period.last_month\":\"El mes pasado\",\"period.year\":\"Este año\",\"period.12mo\":\"Últimos 12 meses\",\"period.all\":\"Todo el tiempo\",\"compare.title\":\"Comparar con\",\"compare.vs\":\"vs\",\"compare.previous\":\"Periodo anterior\",\"compare.year\":\"Mismo periodo del año pasado\",\"compare.custom\":\"Rango personalizado\",\"compare.off\":\"Sin comparación\",\"compare.apply\":\"Comparar\",\"compare.dialog\":\"Comparar con\",\"calendar.dialog\":\"Elegir fechas\",\"calendar.earlier\":\"Meses anteriores\",\"calendar.later\":\"Meses siguientes\",\"calendar.pick\":\"Elige un día de inicio y uno de fin\",\"calendar.range\":\"{from} al {to}\",\"calendar.open\":\"{from} al ...\",\"calendar.apply\":\"Aplicar\",\"common.cancel\":\"Cancelar\",\"common.close\":\"Cerrar\",\"common.clearAll\":\"Borrar todo\",\"common.loading\":\"Cargando\",\"common.search\":\"Buscar\",\"common.none\":\"(ninguno)\",\"metric.visitors\":\"Visitantes\",\"metric.visits\":\"Visitas\",\"metric.pageviews\":\"Páginas vistas\",\"metric.viewsPerVisit\":\"Páginas por visita\",\"metric.bounceRate\":\"Tasa de rebote\",\"metric.visitDuration\":\"Duración de la visita\",\"hint.visitors\":\"Personas distintas, contadas una vez al día\",\"hint.visits\":\"Sesiones: una visita termina tras 30 minutos sin actividad\",\"hint.pageviews\":\"Cada página cargada, incluidas las repeticiones\",\"hint.viewsPerVisit\":\"Páginas vistas divididas entre visitas\",\"hint.bounceRate\":\"Una visita de una sola página vista, sin eventos, que dura menos de diez segundos\",\"hint.visitDuration\":\"Tiempo medio por visita con la página visible y activa\",\"delta.title\":\"Frente al periodo de comparación\",\"delta.none\":\"sin cambios\",\"chart.label\":\"{metrics} a lo largo del tiempo\",\"chart.scaled\":\"Cada línea usa su propia escala. Pasa el cursor para ver los valores.\",\"chart.pick\":\"Haz clic en las tarjetas para añadirlas al gráfico.\",\"chart.dashed\":\"Discontinua: {range}.\",\"chart.then\":\"antes: {when}\",\"panel.pages\":\"Páginas\",\"panel.sources\":\"Fuentes\",\"panel.locations\":\"Ubicaciones\",\"panel.rhythm\":\"Cuándo visita la gente\",\"panel.ai\":\"Agentes de IA\",\"panel.devices\":\"Dispositivos\",\"panel.events\":\"Eventos\",\"panel.campaigns\":\"Campañas\",\"panel.views\":\"Vistas de {title}\",\"panel.empty\":\"Nada en este periodo\",\"panel.more\":\"Ver todo\",\"panel.filterBy\":\"Filtrar por {name}\",\"panel.showMap\":\"Ver un mapa\",\"panel.showList\":\"Ver la lista\",\"panel.fullMap\":\"Mapa a pantalla completa\",\"tab.top\":\"Más vistas\",\"tab.entry\":\"Entrada\",\"tab.exit\":\"Salida\",\"tab.channels\":\"Canales\",\"tab.sources\":\"Fuentes\",\"tab.referrers\":\"Referentes\",\"tab.countries\":\"Países\",\"tab.regions\":\"Regiones\",\"tab.cities\":\"Ciudades\",\"tab.agents\":\"Agentes\",\"tab.pages\":\"Páginas\",\"tab.device\":\"Dispositivo\",\"tab.browser\":\"Navegador\",\"tab.os\":\"Sistema\",\"tab.screen\":\"Pantalla\",\"tab.language\":\"Idioma\",\"tab.event\":\"Evento\",\"tab.campaign\":\"Campaña\",\"tab.source\":\"Fuente\",\"tab.medium\":\"Medio\",\"tab.content\":\"Contenido\",\"tab.term\":\"Término\",\"column.visitors\":\"visitantes\",\"column.fetches\":\"accesos\",\"column.events\":\"eventos\",\"column.time\":\"tiempo\",\"column.bounce\":\"rebote\",\"channel.Direct\":\"Directo\",\"channel.Organic Search\":\"Búsqueda orgánica\",\"channel.Paid Search\":\"Búsqueda de pago\",\"channel.Social\":\"Redes sociales\",\"channel.Email\":\"Correo\",\"channel.AI\":\"IA\",\"channel.Referral\":\"Referencias\",\"channel.Campaign\":\"Campaña\",\"device.desktop\":\"Escritorio\",\"device.mobile\":\"Móvil\",\"device.tablet\":\"Tableta\",\"ai.live\":\"Lecturas en directo\",\"ai.crawl\":\"Rastreos\",\"rhythm.busiest\":\"Pico: {when}\",\"rhythm.table\":\"Visitas por día de la semana y hora\",\"rhythm.cell_one\":\"{when}: {n} visita\",\"rhythm.cell_other\":\"{when}: {n} visitas\",\"scale.fewer\":\"Menos\",\"scale.more\":\"Más\",\"map.failed\":\"No se pudo cargar el mapa\",\"map.label\":\"Visitantes por país: {top}\",\"map.visitors_one\":\"{n} visitante\",\"map.visitors_other\":\"{n} visitantes\",\"map.none\":\"Sin visitantes\",\"map.title\":\"En todo el mundo\",\"filter.button\":\"Filtrar\",\"filter.remove\":\"Quitar filtro\",\"filter.title\":\"Mostrar visitas\",\"filter.where\":\"donde\",\"filter.and\":\"y\",\"filter.field\":\"Campo\",\"filter.match\":\"Condición\",\"filter.is\":\"es\",\"filter.not\":\"no es\",\"filter.contains\":\"contiene\",\"filter.value\":\"Valor\",\"filter.placeholder\":\"Escribe un valor o elige uno abajo\",\"filter.placeholderContains\":\"Cualquier parte del valor\",\"filter.removeCondition\":\"Quitar esta condición\",\"filter.add\":\"+ Añadir una condición\",\"filter.note\":\"Se tienen que cumplir todas las condiciones. Haz clic en cualquier fila del panel para añadir una sin abrir esto.\",\"filter.apply_one\":\"Aplicar {n} condición\",\"filter.apply_other\":\"Aplicar {n} condiciones\",\"filter.everything\":\"Mostrar todo\",\"group.pages\":\"Páginas\",\"group.sources\":\"Fuentes\",\"group.location\":\"Ubicación\",\"group.device\":\"Dispositivo\",\"group.behaviour\":\"Comportamiento\",\"field.page\":\"Página\",\"field.entry\":\"Página de entrada\",\"field.exit\":\"Página de salida\",\"field.hostname\":\"Nombre de host\",\"field.channel\":\"Canal\",\"field.source\":\"Fuente\",\"field.referrer\":\"Referente\",\"field.utm_campaign\":\"Campaña\",\"field.utm_source\":\"Fuente UTM\",\"field.utm_medium\":\"Medio UTM\",\"field.utm_content\":\"Contenido UTM\",\"field.utm_term\":\"Término UTM\",\"field.country\":\"País\",\"field.region\":\"Región\",\"field.city\":\"Ciudad\",\"field.device\":\"Dispositivo\",\"field.browser\":\"Navegador\",\"field.browser_version\":\"Versión del navegador\",\"field.os\":\"Sistema\",\"field.os_version\":\"Versión del sistema\",\"field.screen\":\"Pantalla\",\"field.language\":\"Idioma\",\"field.event\":\"Evento\",\"foot.powered\":\"Funciona con {name}\",\"foot.language\":\"Idioma\",\"theme.light\":\"Tema claro\",\"theme.dark\":\"Tema oscuro\",\"column.visits\":\"visitas\",\"column.pageviews\":\"páginas vistas\",\"column.scroll\":\"desplazamiento\",\"column.duration\":\"duración\",\"column.share\":\"cuota\",\"rhythm.typical\":\"{x}× una hora típica\",\"rhythm.quiet\":\"Sin visitas en esta hora\",\"app.home\":\"Volver al resumen\",\"settings.open\":\"Ajustes\",\"settings.title\":\"Ajustes\",\"settings.general\":\"General\",\"settings.install\":\"Instalación\",\"settings.siteName\":\"Nombre del sitio\",\"settings.timezone\":\"Zona horaria\",\"settings.timezoneHint\":\"Los días de tus informes empiezan a medianoche aquí.\",\"settings.save\":\"Guardar\",\"settings.saving\":\"Guardando\",\"settings.saved\":\"Guardado\",\"settings.language\":\"Idioma\",\"settings.languageHint\":\"Solo para este navegador.\",\"settings.theme\":\"Tema\",\"settings.themeSystem\":\"Ajuste del dispositivo\",\"settings.themeLight\":\"Claro\",\"settings.themeDark\":\"Oscuro\",\"install.live\":\"Están llegando visitas. La última fue {when}.\",\"install.none\":\"Aún no hay visitas. Añade el script de abajo y abre una página de tu sitio.\",\"install.script\":\"Añade esto a cada página, justo antes de {tag}.\",\"install.copy\":\"Copiar\",\"install.copied\":\"Copiado\",\"install.events\":\"Los clics en cualquier elemento se cuentan sin JavaScript.\",\"install.eventsJs\":\"También puedes enviar eventos desde JavaScript, para lo que no son clics.\",\"install.agents\":\"Para ver agentes de IA como ChatGPT y Claude leyendo tus páginas, pasa cada petición a Runlight en tu middleware con el código de abajo.\",\"install.ignore\":\"Tus propias visitas\",\"install.ignored\":\"Tus visitas desde este navegador no se cuentan.\",\"install.counted\":\"Tus visitas desde este navegador se cuentan.\",\"install.ignoreButton\":\"Ignorar este navegador\",\"install.trackButton\":\"Volver a contar este navegador\",\"install.ignoreElsewhere\":\"¿El panel está en otro dominio que el sitio? Abre {link} una vez en cada navegador que uses.\",\"theme.system\":\"Ajuste del dispositivo\",\"theme.cycle\":\"Tema: {current}. Haz clic para {next}.\",\"panel.links\":\"Enlaces\",\"links.new\":\"Nuevo enlace\",\"links.manage\":\"Gestionar\",\"links.clicks\":\"clics\",\"links.url\":\"URL de destino\",\"links.urlPlaceholder\":\"https://ejemplo.com/una/direccion/larga\",\"links.name\":\"Nombre\",\"links.namePlaceholder\":\"Opcional, para ti\",\"links.slug\":\"Identificador\",\"links.slugPlaceholder\":\"Déjalo vacío para uno al azar\",\"links.domain\":\"Dominio\",\"links.create\":\"Crear enlace\",\"links.save\":\"Guardar cambios\",\"links.created\":\"Tu enlace corto está listo.\",\"links.another\":\"Crear otro\",\"links.edit\":\"Editar enlace\",\"links.delete\":\"Eliminar\",\"links.confirmDelete\":\"¿Eliminar {name}? Sus clics se quedan en tus estadísticas.\",\"links.copy\":\"Copiar\",\"links.copied\":\"Copiado\",\"links.search\":\"Buscar enlaces\",\"links.sortClicks\":\"Más clics\",\"links.sortNewest\":\"Más recientes\",\"links.sortName\":\"Nombre\",\"links.import\":\"Importar CSV\",\"links.importDone_one\":\"{n} enlace importado.\",\"links.importDone_other\":\"{n} enlaces importados.\",\"links.importFailed\":\"Fila {row}: {reason}\",\"links.importHelp\":\"Usa las columnas name y url, y también slug y domain si las tienes.\",\"links.destination\":\"Lleva a\",\"links.clicksOverTime\":\"Clics a lo largo del tiempo\",\"links.sources\":\"Fuentes\",\"links.countries\":\"Países\",\"links.devices\":\"Dispositivos\",\"links.browsers\":\"Navegadores\",\"links.total_one\":\"{n} clic\",\"links.total_other\":\"{n} clics\",\"links.domains\":\"Dominios para enlaces cortos\",\"links.domainsHelp\":\"Usa un dominio o subdominio tuyo para los enlaces cortos, como t.ejemplo.com. Sus enlaces viven en la raíz: t.ejemplo.com/rebajas.\",\"links.addDomain\":\"Añadir dominio\",\"links.domainPlaceholder\":\"t.ejemplo.com\",\"links.ownDomain\":\"Este sitio ({prefix})\",\"links.removeDomain\":\"Quitar\",\"settings.links\":\"Dominios personalizados\",\"links.confirm\":\"Confirmar\",\"links.editButton\":\"Editar\",\"links.step1\":\"En tu proveedor de DNS, añade un registro CNAME para el subdominio que apunte a {host}, donde funciona este panel. Para un dominio sin subdominio, usa un registro A o ALIAS al mismo servidor.\",\"links.step2\":\"Haz que tu hosting acepte el dominio con HTTPS: añádelo a los dominios de tu proyecto en Vercel o Netlify, o a la configuración y el certificado de tu servidor. Si Runlight funciona dentro de tu aplicación, pasa las peticiones a rl.linkDomainResponse() en tu middleware.\",\"links.step3\":\"Añade el dominio abajo. Runlight comprueba después que llega a este panel.\",\"links.checking\":\"Comprobando\",\"links.working\":\"Funciona\",\"links.notWorking\":\"Aún no llega a Runlight: {reason}\",\"links.recheck\":\"Comprobar de nuevo\",\"links.sortBy\":\"Ordenar enlaces\",\"links.removeNote\":\"Quitar un dominio conserva sus enlaces, clics y estadísticas: pasan a {fallback} hasta que vuelvas a añadir el dominio, y entonces regresan a él.\",\"links.removedDomain\":\"{domain}/ (quitado)\",\"prompt.copy\":\"Copiar prompt\",\"prompt.domainHint\":\"Copia estos pasos, con tus direcciones ya puestas, y pégaselos.\",\"prompt.installHint\":\"Copia los pasos de instalación y pégaselos.\",\"links.showing\":\"Mostrando {shown} de {total}\",\"links.showMore\":\"Mostrar {n} más\",\"links.clicksLabel\":\"Clics\",\"links.createdOn\":\"Creado el {date}\",\"settings.import\":\"Importar\",\"import.intro\":\"Trae tus enlaces cortos desde otro servicio, con su historial de clics cuando el servicio lo comparte. Tu clave o contraseña solo se usa para esta importación y nunca se guarda. Importar de nuevo omite los enlaces que ya están.\",\"import.source\":\"Importar desde\",\"import.csv\":\"Cualquier CSV\",\"import.url\":\"Dirección de Umami\",\"import.apiKey\":\"Clave de API\",\"import.username\":\"Usuario\",\"import.password\":\"Contraseña\",\"import.signIn\":\"Entrar con\",\"import.withKey\":\"Clave de API\",\"import.withPassword\":\"Usuario y contraseña\",\"import.start\":\"Empezar a importar\",\"import.stop\":\"Detener\",\"import.running\":\"Importando {done} de {total} enlaces\",\"import.done\":\"Listo: {links} enlaces y {clicks} clics importados, {skipped} ya estaban.\",\"import.stopped\":\"Detenido tras {done} de {total} enlaces. Vuelve a empezar para continuar; los enlaces ya importados se omiten.\",\"import.failed\":\"Estos no se pudieron importar.\",\"import.history.full\":\"Esto importa cada clic, con su país, dispositivo, navegador y referente.\",\"import.history.daily\":\"Esto importa los clics por día, sin país ni dispositivo.\",\"import.history.none\":\"Solo enlaces: el servicio no comparte clics con fecha.\",\"import.umamiHelp\":\"En Umami, crea una clave de API en Ajustes, Claves de API. Umami autoalojado estándar no tiene claves de API, así que entra con tu usuario y contraseña. Cualquiera de los dos se usa solo para esta importación y nunca se guarda.\",\"import.csvHelp\":\"Usa las columnas name y url, y también slug y domain si las tienes.\",\"import.chooseFile\":\"Elegir un archivo CSV\",\"import.token\":\"Token de acceso\",\"import.workspace\":\"Id del espacio de trabajo (opcional)\",\"import.dubHelp\":\"En Dub, crea una clave de API en Settings, API Keys, con lectura de enlaces y analíticas. Cada clic se importa con el plan Business, los totales diarios con Pro, solo enlaces con Free.\",\"import.bitlyHelp\":\"En Bitly, ve a Settings, API, escribe tu contraseña y genera un token. Bitly solo guarda totales diarios, tan atrás como permita tu plan (nada en Free).\",\"import.shortioHelp\":\"En Short.io, abre Integrations and API y crea una clave secreta (una clave pública no puede leer enlaces). Short.io permite 60 peticiones de estadísticas por minuto, así que esta importación va a su ritmo.\",\"import.rebrandlyHelp\":\"En Rebrandly, crea una clave de API en Settings, API keys. Rebrandly solo comparte el total de clics, así que los enlaces llegan sin historial.\",\"import.soFar_one\":\"{n} enlace importado hasta ahora\",\"import.soFar_other\":\"{n} enlaces importados hasta ahora\",\"import.moveNote\":\"Los enlaces en el dominio del servicio (bit.ly, dub.sh, rebrand.ly, short.gy) pasan a {fallback} con el mismo identificador; los dominios propios se añaden en Dominios personalizados.\",\"prompt.title\":\"¿Usas un asistente de código?\",\"compare.allTime\":\"No hay nada antes de todo el tiempo con qué comparar.\",\"view.reset\":\"Restablecer\",\"view.resetHint\":\"Volver a los últimos 30 días, sin filtros ni comparación\",\"settings.sharing\":\"Compartir\",\"share.intro\":\"Un enlace para compartir muestra las estadísticas de este sitio a quien lo tenga, sin iniciar sesión: las cifras, las páginas, las fuentes y los lugares. Nunca muestra tus enlaces cortos, tus ajustes ni la dirección del sitio.\",\"share.namePlaceholder\":\"Para quién es, como un cliente o tu equipo\",\"share.create\":\"Crear enlace para compartir\",\"share.empty\":\"Crea uno abajo y envíalo a quien deba ver estas estadísticas.\",\"share.unnamed\":\"Sin título\",\"share.open\":\"Abrir\",\"share.rename\":\"Renombrar\",\"share.save\":\"Guardar\",\"share.revokeNote\":\"Borrar un enlace para compartir lo desactiva al instante. Quien lo tenía verá una página que lo indica.\",\"share.gone\":\"Quien lo compartió lo ha desactivado. Pídele un enlace nuevo.\",\"live.title\":\"Ahora mismo\",\"live.sub\":\"Se actualiza cada 10 segundos\",\"live.now_one\":\"{n} persona en el sitio\",\"live.now_other\":\"{n} personas en el sitio\",\"live.nowHint\":\"Quien vio una página o hizo algo en los últimos 5 minutos.\",\"live.total_one\":\"{n} página vista en los últimos 30 minutos\",\"live.total_other\":\"{n} páginas vistas en los últimos 30 minutos\",\"live.minute_one\":\"{n} página vista a las {time}\",\"live.minute_other\":\"{n} páginas vistas a las {time}\",\"live.ago30\":\"hace 30 min\",\"live.nowLabel\":\"Ahora\",\"live.pages\":\"Páginas\",\"live.sources\":\"Fuentes\",\"live.countries\":\"Países\",\"live.nobody\":\"Los visitantes aparecen aquí al llegar.\",\"live.feed\":\"Actividad reciente\",\"live.quiet\":\"Las visitas de los últimos 30 minutos aparecen aquí.\",\"live.someone\":\"Alguien\",\"live.someoneIn\":\"Alguien en {place}\",\"live.viewed\":\"{who} vio {path}\",\"live.viewedVia\":\"{who} vio {path} desde {source}\",\"live.did\":\"{who} hizo {name} en {path}\",\"live.didVia\":\"{who} hizo {name} en {path}, desde {source}\",\"welcome.title\":\"Añade Runlight a {name}\",\"welcome.lead\":\"Esperando la primera visita. Esta página se llenará sola cuando llegue.\",\"settings.goals\":\"Objetivos\",\"settings.funnels\":\"Embudos\",\"panel.conversions\":\"Conversiones\",\"goals.revenueAside\":\"{amount} de ingresos\",\"goals.add\":\"Añadir objetivo\",\"goals.emptyTitle\":\"Tus objetivos aparecerán aquí\",\"goals.emptyHint\":\"Un objetivo cuenta lo que te importa, como un registro o un clic en un botón. Un objetivo de evento o de página también cuenta las visitas pasadas, y uno de clic cuenta desde que lo añades.\",\"goals.goal\":\"Objetivo\",\"goals.rate\":\"Tasa\",\"goals.conversions\":\"Conversiones\",\"goals.unknown\":\"(ninguno)\",\"goals.converted\":\"Personas que convirtieron\",\"goals.revenue\":\"Ingresos\",\"goals.overTime\":\"Conversiones en el tiempo\",\"goals.overTimeValued\":\"Conversiones e ingresos en el tiempo, cada uno en su escala\",\"goals.byChannel\":\"Por canal\",\"goals.bySource\":\"Por fuente\",\"goals.byPage\":\"Dónde ocurrió\",\"goals.describe.event\":\"Evento: {match}\",\"goals.describe.page\":\"Visitas a {match}\",\"goals.describe.selector\":\"Clics en {match}\",\"goals.describe.link\":\"Clics en enlaces a {match}\",\"goals.value.each\":\"{amount} cada uno\",\"goals.value.fromProp\":\"importe en {prop}, en {currency}\",\"goals.name\":\"Nombre\",\"goals.namePlaceholder\":\"Registro, Compra, Llamada reservada\",\"goals.counts\":\"Cuenta\",\"goals.kind.event\":\"Un evento\",\"goals.kind.page\":\"Una página visitada\",\"goals.kind.click\":\"Un clic\",\"goals.clickOn\":\"Clics en\",\"goals.click.selector\":\"Un elemento\",\"goals.click.link\":\"Enlaces a una dirección\",\"goals.match.event\":\"Nombre del evento\",\"goals.match.page\":\"Página\",\"goals.match.link\":\"Dirección del enlace\",\"goals.match.selector\":\"Selector CSS\",\"goals.pick\":\"Elegir en mi sitio\",\"goals.picking\":\"Esperando tu elección\",\"goals.hint.event\":\"El nombre que envías con runlight(\\\"Nombre\\\") o un atributo data-runlight.\",\"goals.hint.page\":\"Una ruta como /gracias. Usa * para cualquier cosa: /blog/* o /gracias*. Una URL completa también sirve.\",\"goals.hint.link\":\"Clics en enlaces cuya dirección coincide. Usa * para cualquier cosa, como https://buy.stripe.com/*, o empieza con / para tus propias páginas.\",\"goals.hint.selector\":\"Cualquier selector CSS. O usa Elegir en mi sitio: se abre tu sitio, haz clic en el elemento y luego en Usar esto.\",\"goals.valueLabel\":\"Valor\",\"goals.value.none\":\"Ninguno\",\"goals.value.fixed\":\"Un importe fijo\",\"goals.value.prop\":\"Un importe enviado con el evento\",\"goals.amount\":\"Importe cada vez\",\"goals.property\":\"Propiedad con el importe\",\"goals.currency\":\"Moneda\",\"goals.save\":\"Guardar objetivo\",\"goals.create\":\"Añadir objetivo\",\"goals.cancel\":\"Cancelar\",\"goals.edit\":\"Editar\",\"goals.intro\":\"Los objetivos convierten visitas en conversiones. Cada uno cuenta un evento, una página visitada o un clic, y puede llevar un valor para ver ingresos por fuente y página.\",\"goals.none\":\"Añade uno abajo para empezar a contarlo.\",\"goals.pastNote\":\"Los objetivos se calculan con los datos que ya tienes, así que uno nuevo muestra también conversiones pasadas. Los objetivos de clic empiezan a contar unos cinco minutos después de añadirlos.\",\"settings.email\":\"Informes por email\",\"settings.mail\":\"Servicio de correo\",\"mail.intro\":\"Runlight envía los informes y las invitaciones con tu propio servicio de correo. Configúralo una vez y todos los sitios lo usan.\",\"mail.service\":\"Servicio\",\"mail.optional\":\"(opcional)\",\"mail.keepSaved\":\"Guardado. Déjalo vacío para mantenerlo.\",\"mail.from\":\"Dirección de envío\",\"mail.fromName\":\"Nombre del remitente\",\"mail.fromHint\":\"Usa una dirección que tu servicio te deje usar, en un dominio verificado con él.\",\"mail.save\":\"Guardar servicio\",\"mail.change\":\"Cambiar\",\"mail.fromLine\":\"Envía desde {from}\",\"mail.fromCode\":\"Definido en el código. Envía desde {from}\",\"mail.testTo\":\"Enviar una prueba a\",\"mail.test\":\"Enviar prueba\",\"mail.testSent\":\"Prueba enviada a {to}. Revisa la bandeja de entrada y el spam.\",\"mail.notEncryptedTitle\":\"Tus claves se guardarán sin cifrar\",\"mail.notEncrypted\":\"Este Runlight no tiene RUNLIGHT_SECRET, así que las claves se guardan en su base de datos tal como las escribes. Define RUNLIGHT_SECRET o RUNLIGHT_TOKEN en el servidor para guardarlas cifradas.\",\"mail.field.region\":\"Región\",\"mail.field.accessKeyId\":\"ID de clave de acceso\",\"mail.field.secretAccessKey\":\"Clave de acceso secreta\",\"mail.field.apiKey\":\"Clave de API\",\"mail.field.serverToken\":\"Token de API del servidor\",\"mail.field.stream\":\"Flujo de mensajes\",\"mail.field.domain\":\"Dominio de envío\",\"mail.field.secretKey\":\"Clave secreta\",\"mail.field.host\":\"Host\",\"mail.field.port\":\"Puerto\",\"mail.field.security\":\"Seguridad\",\"mail.field.username\":\"Usuario\",\"mail.field.password\":\"Contraseña\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Secreto de firma\",\"reports.title\":\"Quién recibe informes\",\"reports.intro\":\"Un resumen de {site} por email: visitantes, páginas, fuentes, países y conversiones, frente al periodo anterior.\",\"reports.none\":\"Añade una dirección de correo abajo para empezar a enviarlos.\",\"reports.weekly\":\"Semanal\",\"reports.monthly\":\"Mensual\",\"reports.frequency\":\"Frecuencia\",\"reports.language\":\"Idioma\",\"reports.lastSent\":\"último envío {when}\",\"reports.never\":\"aún no\",\"reports.sample\":\"Enviar un ejemplo\",\"reports.sampleSent\":\"Ejemplo enviado a {to}.\",\"reports.emailPlaceholder\":\"nombre@ejemplo.com\",\"reports.add\":\"Añadir\",\"reports.when\":\"Los informes semanales cubren de lunes a domingo y salen el lunes desde las 8, los mensuales el día 1, en la zona horaria del sitio. Los envía la comprobación horaria (un cron que llama a POST /api/check).\",\"reports.needsMail\":\"Los informes empiezan a salir cuando haya un servicio de correo configurado. Un solo servicio los envía para todos los sitios.\",\"reports.setUpMail\":\"Configurar servicio de correo\",\"reports.needsMailTitle\":\"Aún no hay servicio de correo\",\"email.subject.week\":\"{site}: {who} la semana pasada\",\"email.subject.month\":\"{site}: {who} en {month}\",\"email.when.week\":\"la semana pasada\",\"email.before.week\":\"la semana anterior\",\"email.when.month\":\"en {month}\",\"email.range\":\"del {from} al {to}\",\"email.pages\":\"Páginas principales\",\"email.sources\":\"Fuentes principales\",\"email.countries\":\"Países principales\",\"email.conversions\":\"Conversiones\",\"email.open\":\"Abrir el panel\",\"email.at\":\"Tu panel está en {where}\",\"email.footer\":\"Recibes este informe {frequency} de {site} desde Runlight.\",\"email.weekly\":\"semanal\",\"email.monthly\":\"mensual\",\"email.unsubscribe\":\"Darse de baja\",\"email.test.subject\":\"Runlight puede enviar emails\",\"email.test.body\":\"Esta prueba llegó a través de {service}. Los informes de tus sitios llegarán igual.\",\"email.unsub.title\":\"¿Dejar de recibir los informes de {site}?\",\"email.unsub.body\":\"{email} no recibirá más informes de este sitio.\",\"email.unsub.doneTitle\":\"Te has dado de baja\",\"email.unsub.done\":\"No llegarán más informes de {site} a {email}.\",\"email.unsub.goneTitle\":\"Nada de lo que darse de baja\",\"email.unsub.gone\":\"Este enlace ya se usó, o el informe se eliminó.\",\"settings.api\":\"API e IA\",\"tokens.intro\":\"Pregunta a tu asistente de IA por tus estadísticas. Crea un token y añade Runlight a Claude, Cursor o cualquier aplicación que se conecte a servidores MCP. Un token de lectura nunca cambia nada, y un token de gestión puede cambiar los ajustes de un sitio. El mismo token sirve para la API HTTP.\",\"tokens.server\":\"Dirección del servidor MCP\",\"tokens.namePlaceholder\":\"Para qué es, como Claude o un script\",\"tokens.scope\":\"Qué sitios puede leer\",\"tokens.allSites\":\"Todos los sitios\",\"tokens.siteOnly\":\"Solo {site}\",\"tokens.create\":\"Crear token\",\"tokens.empty\":\"Crea uno abajo para conectar un asistente de IA o un script.\",\"tokens.used\":\"usado el {date}\",\"tokens.never\":\"nunca usado\",\"tokens.revokeNote\":\"Al borrar un token deja de funcionar al instante.\",\"tokens.once\":\"Copia este token ahora. Solo se muestra una vez, y Runlight guarda solo una huella de él.\",\"tokens.claudeCode\":\"Claude Code recibe el token con este comando.\",\"tokens.json\":\"Cursor y otras aplicaciones que usan una configuración JSON mcpServers usan esto en su lugar.\",\"tokens.done\":\"Listo, ya lo copié\",\"sites.domains\":\"Dominios\",\"sites.domainsHint\":\"Escribe el dominio del sitio, como example.com, y separa varios con comas.\",\"sites.name\":\"Nombre\",\"sites.namePlaceholder\":\"Mi blog\",\"sites.timezoneHint\":\"Los días se cuentan en {zone}, y puedes cambiarlo luego en Ajustes.\",\"sites.add\":\"Añadir sitio\",\"sites.addTitle\":\"Añadir un sitio\",\"sites.firstTitle\":\"Añade tu primer sitio\",\"sites.firstLead\":\"Runlight cuenta cada sitio que añadas aquí. Escribe el dominio del sitio y la siguiente pantalla te mostrará la etiqueta de script para sus páginas.\",\"sites.delete\":\"Eliminar este sitio\",\"sites.deleteHint\":\"Eliminar un sitio borra todas sus visitas, enlaces, objetivos e informes, y no se puede deshacer.\",\"app.signOut\":\"Cerrar sesión\",\"install.ignoreServer\":\"Para dejar de contar tus propias visitas, abre {link} una vez en cada navegador que uses.\",\"panel.geoCredit\":\"Ubicaciones de {name}\",\"visits.tab\":\"Visitas\",\"visits.linksTab\":\"Enlaces cortos\",\"visits.intro\":\"Trae tu historial de visitas para que tus gráficos lleguen a antes de que Runlight empezara a contar. Solo llegan las visitas anteriores a la primera de Runlight, así que nada se cuenta dos veces.\",\"visits.onlyUmami\":\"La API de Umami entrega cada visita con su página, origen, lugar y dispositivo, que es lo que guarda Runlight. Plausible, Fathom y Google Analytics solo dan totales, y los totales no se pueden convertir de nuevo en visitas. Si tienes cada página vista en un archivo, impórtalo como CSV.\",\"visits.csvMoment\":\"Más de {max} filas comparten un mismo momento, más de lo que cabe en un lote.\",\"visits.csvStopped\":\"Detenido. Volver a importar el mismo archivo es seguro, porque las filas ya traídas se reemplazan.\",\"visits.csvSkipped\":\"Se dejaron fuera {n} filas porque eran posteriores a la primera visita propia de Runlight, anteriores a lo que guarda este sitio, o no eran una página vista ni un evento con nombre.\",\"visits.csvRunning\":\"{done} de {total} filas enviadas, {pageviews} páginas vistas hasta ahora\",\"visits.csvRunlight\":\"{name} está en el formato de visitas de Runlight, con {rows} filas.\",\"visits.csvUmami\":\"{name} es una exportación de Umami con {rows} filas.\",\"visits.csvOther\":\"Elegir otro archivo\",\"visits.csvChoose\":\"Elegir archivo CSV\",\"visits.csvHelp\":\"Usa el CSV de la exportación de datos de Umami, o un archivo con una fila por página vista en el formato de visitas de Runlight, descrito en la documentación del panel.\",\"visits.fromCsv\":\"Un archivo CSV\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Importar desde\",\"visits.onlyUmamiTitle\":\"Por qué solo Umami\",\"visits.find\":\"Buscar sitios\",\"visits.website\":\"Sitio de Umami\",\"visits.noWebsites\":\"Esta cuenta de Umami no tiene sitios.\",\"visits.start\":\"Importar visitas\",\"visits.running\":\"{done} de {total} días leídos, {pageviews} páginas vistas hasta ahora\",\"visits.done\":\"Listo. Llegaron {pageviews} páginas vistas y {events} eventos en {visits} visitas.\",\"visits.stopped\":\"Detenido. Vuelve a empezar para seguir desde el último día importado.\",\"props.title\":\"Propiedades\",\"props.open\":\"Propiedades de {name}\",\"props.none\":\"Aparecen cuando el evento se envía con propiedades.\",\"account.title\":\"Cuenta\",\"account.owner\":\"Eres el propietario, así que puedes cambiarlo todo y gestionar personas. Nadie más puede quitarte.\",\"account.viewer\":\"Eres lector, así que puedes ver las estadísticas de cada sitio sin cambiar nada.\",\"account.current\":\"Contraseña actual\",\"account.next\":\"Contraseña nueva\",\"account.nextHint\":\"Usa al menos diez caracteres. Al cambiarla se cierra la sesión en tus otros navegadores.\",\"account.save\":\"Cambiar contraseña\",\"account.saved\":\"Contraseña cambiada\",\"settings.people\":\"Personas\",\"people.intro\":\"Todos aquí pueden iniciar sesión en este servidor. Los administradores pueden cambiar todo lo que cambia el propietario y gestionar personas, aunque nadie puede quitar al propietario. Los miembros cambian la configuración de cada sitio, y los lectores leen las estadísticas de cada sitio sin cambiar nada. Invita a un compañero y elegirá su propia contraseña.\",\"people.you\":\"tú\",\"people.role\":\"Rol\",\"people.owner\":\"Propietario\",\"people.viewer\":\"Lector\",\"people.roles\":\"Los miembros no pueden gestionar personas, configurar el servicio de correo o el asistente, ni eliminar un sitio. Solo el propietario puede pasar la propiedad a un administrador.\",\"people.emailPlaceholder\":\"Correo electrónico de la persona\",\"pluginKey.title\":\"Clave para plugins de CMS\",\"pluginKey.intro\":\"Los plugins de WordPress, Drupal y Craft usan esta clave para informar de los agentes de IA que leen las páginas de este sitio. Solo puede informar para este sitio y no puede leer nada. Al reemplazarla, la anterior deja de funcionar al instante.\",\"pluginKey.replace\":\"Reemplazar clave\",\"export.csv\":\"Descargar CSV\",\"export.zip\":\"Exportar\",\"export.title\":\"Descargar todo lo de esta vista en archivos CSV\",\"funnels.title\":\"Embudos\",\"funnels.intro\":\"Un embudo sigue los pasos que esperas que dé una visita, como la página de precios y luego el registro, y muestra cuántas visitas pasaron por cada paso en orden.\",\"funnels.none\":\"Añade uno abajo para ver dónde se detiene la gente por el camino.\",\"funnels.add\":\"Añadir embudo\",\"funnels.name\":\"Nombre\",\"funnels.namePlaceholder\":\"Registro\",\"funnels.steps\":\"Pasos\",\"funnels.stepsHint\":\"Una ruta de página puede usar * para cualquier cosa, como /blog/*. Cada paso tiene que ocurrir después del anterior, en la misma visita.\",\"funnels.kind\":\"Tipo de paso\",\"funnels.page\":\"Página\",\"funnels.event\":\"Evento\",\"funnels.removeStep\":\"Quitar este paso\",\"funnels.addStep\":\"Añadir un paso\",\"funnels.save\":\"Guardar embudo\",\"funnels.create\":\"Crear embudo\",\"funnels.stepPage\":\"Página {match}\",\"funnels.stepEvent\":\"Evento {match}\",\"funnels.wentOn\":\"{pct} siguió\",\"funnels.tab\":\"Embudos\",\"funnels.goalsTab\":\"Objetivos\",\"sites.modeHere\":\"Contarlo aquí\",\"sites.modeConnect\":\"Conectar otro Runlight\",\"sites.connectIntro\":\"Conecta aquí un sitio que ya se cuenta con Runlight dentro de su propia aplicación. Sus cifras se quedan allí. Inicias sesión una vez y autorizas este servidor, y luego puedes ver y cambiar el sitio desde aquí.\",\"sites.connectUrl\":\"Su dirección de Runlight\",\"sites.connectToken\":\"Token de API\",\"sites.connectTokenHint\":\"Crea un token en esa instalación, en Ajustes, API e IA. Con un token de lectura las cifras se ven aquí y los ajustes se quedan allí.\",\"sites.connect\":\"Conectar\",\"sites.all\":\"Todos los sitios\",\"sites.remoteNote\":\"Este sitio lo cuenta su propio Runlight en {url}, que deja a este servidor leerlo. Permite cambios para gestionar también sus ajustes desde aquí.\",\"sites.disconnect\":\"Desconectar este sitio\",\"sites.disconnectHint\":\"Al desconectarlo se quita el sitio de este servidor. Su propio Runlight y todo lo que ha contado se quedan como están.\",\"sites.disconnectButton\":\"Desconectar sitio\",\"sites.confirmDisconnect\":\"Confirmar desconexión\",\"sites.disconnectName\":\"¿Desconectar {name}?\",\"settings.data\":\"Datos\",\"data.retention\":\"Conservar visitas durante\",\"data.retentionHint\":\"Las visitas y eventos más antiguos se borran para siempre al guardar y después cada día. Los objetivos, enlaces y ajustes se mantienen.\",\"data.forever\":\"Siempre\",\"data.months\":\"{n} meses\",\"data.years\":\"{n} años\",\"data.deletesBefore\":\"Las visitas anteriores al {date} se borrarán al guardar.\",\"data.unreachable\":\"No se pudo contactar con {url} para leer este ajuste. Inténtalo de nuevo en un minuto.\",\"data.export\":\"Exportar todo\",\"data.exportHint\":\"El ZIP contiene todos los informes de este sitio desde su primera visita, como archivos CSV.\",\"data.download\":\"Descargar ZIP\",\"sites.remoteTitle\":\"Lo cuenta otro Runlight\",\"sites.openRemote\":\"Abrir su panel\",\"sites.useToken\":\"Usar un token de API\",\"sites.useSignIn\":\"Iniciar sesión en él\",\"sites.remoteManaged\":\"Este sitio lo cuenta su propio Runlight en {url}. Los cambios que hagas aquí se guardan allí.\",\"sites.allowChanges\":\"Permitir cambios\",\"sites.reconnect\":\"Conectar de nuevo\",\"sites.reconnectHint\":\"Úsalo si la instalación ya no acepta este servidor, por ejemplo tras borrar allí su token.\",\"sites.connectError.expired\":\"La conexión tardó demasiado o ya se usó. Empieza de nuevo.\",\"sites.connectError.denied\":\"No se permitió la conexión.\",\"sites.connectError.refused\":\"La instalación no dejó conectarse a este servidor. Empieza de nuevo o conéctala con un token de API.\",\"sites.connectError.token\":\"La instalación no le dio un token a este servidor. Empieza de nuevo.\",\"sites.connectError.failed\":\"La conexión no terminó. Empieza de nuevo.\",\"mail.fromRemote\":\"Enviado por {host} desde {from}\",\"mail.noneRemote\":\"{host} aún no tiene servicio de correo, así que no puede enviar estos informes. Configura uno en su propio panel, en Ajustes, Servicio de correo.\",\"tokens.manages\":\"Puede cambiar ajustes\",\"account.again\":\"Repite la nueva contraseña\",\"account.mismatch\":\"Las dos contraseñas nuevas no coinciden.\",\"account.strength0\":\"Demasiado corta\",\"account.strength1\":\"Débil\",\"account.strength2\":\"Aceptable\",\"account.strength3\":\"Buena\",\"account.strength4\":\"Fuerte\",\"mail.introRemote\":\"Los informes de este sitio salen por el servicio de correo configurado en {host}.\",\"settings.assistant\":\"Asistente de IA\",\"assistant.open\":\"Preguntar por tus estadísticas\",\"assistant.title\":\"Asistente de IA\",\"assistant.about\":\"Responde a partir de las cifras de {site}, que lee en el momento en que preguntas.\",\"assistant.clear\":\"Nueva conversación\",\"assistant.intro\":\"Pregunta por visitantes, fuentes, páginas, objetivos o cualquier cosa que muestre este panel.\",\"assistant.ask1\":\"¿Cómo se compara este periodo con el anterior?\",\"assistant.ask2\":\"¿De dónde vienen la mayoría de los visitantes?\",\"assistant.ask3\":\"¿Qué páginas retienen más tiempo a la gente?\",\"assistant.ask4\":\"¿Los asistentes de IA envían visitantes aquí?\",\"assistant.placeholder\":\"Haz una pregunta\",\"assistant.send\":\"Enviar\",\"assistant.thinking\":\"Leyendo tus cifras\",\"assistant.empty\":\"El asistente no respondió nada.\",\"assistant.checked_one\":\"Leyó {n} informe\",\"assistant.checked_other\":\"Leyó {n} informes\",\"assistant.setupOwner\":\"El asistente necesita un servicio de IA para responder. Añade una clave de Anthropic, OpenAI o Gemini, o apúntalo a un modelo en tu propia máquina.\",\"assistant.setupViewer\":\"El asistente aún no está configurado. El propietario o un administrador puede añadir un servicio de IA en Configuración, Asistente de IA.\",\"assistant.setup\":\"Configurar el asistente\",\"assistant.ownersOnly\":\"Solo el propietario o un administrador puede configurar el asistente.\",\"assistant.settingsIntro\":\"Elige un servicio de IA y pega abajo una clave de API suya. Después, el botón del robot junto a Filtrar abre un asistente que responde preguntas sobre tus estadísticas con palabras sencillas.\",\"assistant.privacyTitle\":\"Qué ve el servicio\",\"assistant.privacy\":\"Cada pregunta va a ese servicio con las cifras que el asistente lee para responder. Runlight no guarda nada sobre visitantes individuales, así que no se envía nada personal. El asistente solo lee, con las mismas herramientas que el servidor MCP, así que nunca puede cambiar nada.\",\"assistant.notEncryptedTitle\":\"Tu clave se guardará sin cifrar\",\"assistant.notEncrypted\":\"Este Runlight no tiene RUNLIGHT_SECRET, así que la clave se guarda en su base de datos tal como la escribes. Define RUNLIGHT_SECRET o RUNLIGHT_TOKEN en el servidor para guardarla cifrada.\",\"assistant.provider\":\"Servicio de IA\",\"assistant.address\":\"Dirección\",\"assistant.addressHint\":\"Dónde está la API compatible con OpenAI del servicio, sin /chat/completions al final.\",\"assistant.addressLocal\":\"Dónde se ejecuta el modelo. El servidor de Runlight debe poder alcanzarlo.\",\"assistant.model\":\"Modelo\",\"assistant.modelPlaceholder\":\"El nombre del modelo, como lo indica el servicio\",\"assistant.modelDefault\":\"Déjalo vacío para usar {model}.\",\"assistant.modelHint\":\"Escribe la clave arriba y carga los modelos del servicio, o escribe el nombre de un modelo. Funciona mejor un modelo que sepa usar herramientas.\",\"assistant.key\":\"Clave de API\",\"assistant.remove\":\"Desactivar el asistente\",\"assistant.removeHint\":\"Quita el servicio y su clave. El botón del robot pedirá entonces a un propietario que lo configure de nuevo.\",\"journeys.open\":\"Recorridos\",\"journeys.title\":\"Recorridos\",\"journeys.intro\":\"Los caminos que siguen las visitas por el sitio, página a página. Haz clic en una página para seguir solo las visitas que pasaron por ella.\",\"journeys.steps\":\"Pasos\",\"journeys.stepCount\":\"{n} pasos\",\"journeys.start\":\"Empezando en\",\"journeys.end\":\"Terminando en\",\"journeys.anyPage\":\"Cualquier página\",\"journeys.step\":\"Paso {n}\",\"journeys.other\":\"Otras páginas\",\"journeys.left\":\"{n} no siguieron\",\"journeys.follow\":\"Seguir las visitas que pasaron por {page}\",\"journeys.following\":\"Visitas que pasaron por {page} en el paso {step}.\",\"journeys.none\":\"Prueba un rango de fechas más amplio para ver más visitas.\",\"secret.show\":\"Mostrar\",\"secret.hide\":\"Ocultar\",\"people.invite\":\"Invitar\",\"people.invited\":\"invitado\",\"people.invitedMeta\":\"{role}, el enlace funciona hasta el {date}\",\"people.resend\":\"Enviar de nuevo\",\"people.emailed\":\"Hay una invitación en camino a {email}. También puedes enviarle este enlace tú mismo.\",\"people.noMail\":\"Este servidor no tiene servicio de correo, así que envía este enlace a {email} tú mismo. Configura uno en Ajustes, Servicio de correo para enviar invitaciones por correo.\",\"people.mailFailed\":\"El correo a {email} no salió ({error}). Envíale este enlace tú mismo.\",\"people.linkHint\":\"El enlace funciona una vez, durante siete días. Enviar de nuevo crea un enlace nuevo y anula este.\",\"twofa.title\":\"Inicio de sesión en dos pasos\",\"twofa.off\":\"Desactivado. Actívalo y el inicio de sesión también pedirá un código de una app de autenticación en tu teléfono.\",\"twofa.on_one\":\"Activado. Al iniciar sesión se pide un código de tu app de autenticación. Te queda {n} código de recuperación.\",\"twofa.on_other\":\"Activado. Al iniciar sesión se pide un código de tu app de autenticación. Te quedan {n} códigos de recuperación.\",\"twofa.turnOn\":\"Activar\",\"twofa.turnOff\":\"Desactivar\",\"twofa.newCodes\":\"Nuevos códigos de recuperación\",\"twofa.password\":\"Tu contraseña\",\"twofa.continue\":\"Continuar\",\"twofa.scan\":\"Escanea esto con una app de autenticación, como 1Password, Google Authenticator o Authy, y escribe el código de seis dígitos que muestra.\",\"twofa.qr\":\"Código QR para tu app de autenticación\",\"twofa.manual\":\"O escribe esta clave en la app.\",\"twofa.code\":\"Código de la app\",\"twofa.confirm\":\"Activar\",\"twofa.codesIntro\":\"Guarda estos códigos de recuperación en un lugar seguro. Cada uno te permite entrar una vez si pierdes el teléfono, y no se volverán a mostrar.\",\"twofa.download\":\"Descargar\",\"twofa.copy\":\"Copiar\",\"twofa.saved\":\"Ya los guardé\",\"people.twoFactor\":\"dos pasos\",\"people.resetTwoFactor\":\"Restablecer dos pasos\",\"people.resetTwoFactorHint\":\"Desactiva el inicio de sesión en dos pasos de esta persona, por si perdió el teléfono y los códigos de recuperación\",\"assistant.loadModels\":\"Cargar modelos\",\"assistant.loadingModels\":\"Cargando\",\"assistant.pickModel\":\"Elige un modelo\",\"assistant.typeModel\":\"Escribir el nombre de un modelo\",\"assistant.chooseFromList\":\"Elegir de la lista\",\"journeys.sampled\":\"Son los caminos de las {n} visitas más recientes en estas fechas.\",\"error.owner_only\":\"Solo un propietario puede cambiar esto.\",\"error.domain_invalid\":\"Eso no es un nombre de dominio.\",\"error.domain_in_use\":\"{domain} aloja este panel o uno de tus sitios. Usa un dominio o subdominio aparte para los enlaces cortos, como go.{domain}.\",\"error.domain_taken\":\"{domain} ya pertenece a otro sitio.\",\"error.link_url\":\"El destino debe ser una URL completa, que empiece por https://\",\"error.link_protocol\":\"El destino debe empezar por http:// o https://\",\"error.link_long\":\"El destino tiene más de 2.000 caracteres.\",\"error.link_domain\":\"Primero añade {domain} como dominio de enlaces en Ajustes.\",\"error.link_slug\":\"Un slug lleva letras, dígitos, guiones y guiones bajos, hasta 100.\",\"error.link_taken\":\"/{slug} ya está en uso.\",\"error.link_no_slug\":\"No se encontró un slug libre. Inténtalo de nuevo.\",\"error.test_email\":\"Escribe un correo electrónico al que enviar la prueba.\",\"error.mail_unset\":\"Primero configura un servicio de correo.\",\"error.email_invalid\":\"Escribe un correo electrónico.\",\"error.report_exists\":\"{email} ya recibe este informe.\",\"error.report_limit\":\"Un sitio puede enviar a 50 direcciones como máximo.\",\"error.sample_soon\":\"Se acaba de enviar una muestra. Espera un minuto y vuelve a intentarlo.\",\"error.people_owner\":\"Solo el propietario o un administrador puede gestionar personas.\",\"error.role_needed\":\"Elige administrador, miembro o lector.\",\"error.account_exists\":\"{email} ya tiene una cuenta.\",\"error.remove_self\":\"No puedes quitarte a ti mismo.\",\"people.demoted\":\"Ahora eres lector, así que la configuración está cerrada y aquí no se puede cambiar nada. El propietario o un administrador puede revertirlo.\",\"links.importNoUrl\":\"No se importó nada porque el archivo no tiene una columna url con direcciones. Usa las columnas name y url, y también slug y domain si las tienes.\",\"app.sessionEnded\":\"Se cerró tu sesión, algo que pasa cuando una sesión caduca o cambia una contraseña. {link} y volverás a esta vista.\",\"app.signInAgain\":\"Vuelve a iniciar sesión\",\"links.noneYet\":\"Nadie ha creado todavía un enlace corto para este sitio.\",\"error.remote_slow\":\"{host} tardó demasiado en responder. Prueba con un periodo más corto.\",\"error.domain_not_public\":\"{domain} no es un dominio público. Usa uno al que cualquier navegador pueda llegar.\",\"error.unreachable\":\"No se pudo contactar con {host}.\",\"error.redirected\":\"{host} respondió con una redirección.\",\"error.token_refused\":\"{host} rechazó el token. Vuelve a conectarlo desde los ajustes del sitio.\",\"error.mail_failed\":\"No se pudo enviar el correo ({detail}).\",\"error.mail_unreachable\":\"No se pudo contactar con {host}.\",\"error.mail_slow\":\"{host} tardó demasiado en responder, así que el correo no se envió.\",\"error.mail_refused\":\"{host} rechazó el correo ({detail}).\",\"error.mail_service\":\"Elige un servicio de correo.\",\"error.mail_field\":\"Falta el campo {field}.\",\"error.mail_option\":\"{field} debe ser uno de estos valores ({options}).\",\"error.mail_https\":\"La URL del webhook debe usar https.\",\"error.mail_region\":\"Eso no es una región de AWS, como us-east-1.\",\"error.mail_in_code\":\"El servicio de correo está definido en el código, así que no se puede cambiar aquí.\",\"error.mail_from\":\"Escribe la dirección desde la que salen los informes, como reports@example.com.\",\"error.smtp_starttls\":\"El servidor SMTP no ofrece STARTTLS. Elige TLS o ninguna en Seguridad.\",\"error.unknown_account\":\"Esa cuenta ya no existe.\",\"error.password_short\":\"Usa una contraseña de al menos {min} caracteres.\",\"error.invite_gone\":\"Esta invitación caducó o ya se usó. Pide una nueva.\",\"error.too_many_tries\":\"Demasiados intentos. Espera quince minutos y vuelve a intentarlo.\",\"error.password_current_wrong\":\"Tu contraseña actual no es correcta.\",\"error.password_wrong\":\"Tu contraseña no es correcta.\",\"error.code_wrong\":\"Ese código no es correcto. Revisa la hora de tu teléfono y prueba con el siguiente.\",\"error.twofactor_off\":\"Activa primero el inicio de sesión en dos pasos.\",\"error.twofactor_self\":\"Desactiva tu propio inicio de sesión en dos pasos en Cuenta.\",\"error.unknown_invite\":\"Esa invitación ya no existe.\",\"error.origin_needed\":\"Indica primero la dirección de este Runlight (RUNLIGHT_URL en el servidor, u origin en routes()) para que un hub conectado pueda añadir dominios de enlaces e informes por correo.\",\"error.twofactor_restart\":\"Demasiados códigos incorrectos. Vuelve a empezar a activar el inicio de sesión en dos pasos.\",\"error.pick_origin\":\"Envía el origen del panel, como https://stats.example.com\",\"error.pick_hub\":\"La dirección de este hub no es desde la que se conectó. Vuelve a conectar el sitio desde aquí.\",\"assistant.viewerDaily\":\"Preguntas por lector al día\",\"assistant.viewerDailyHint\":\"Cada pregunta se paga con tu clave de IA. Los lectores son las personas que invitas en Personas, que pueden leer las estadísticas sin cambiar nada, y cada uno puede hacer este número de preguntas al día. Pon 0 para dejar el asistente solo a los propietarios. Los enlaces compartidos nunca tienen el asistente.\",\"error.assistant_soon\":\"Has preguntado mucho en poco tiempo. Espera un poco y vuelve a preguntar.\",\"error.assistant_daily\":\"Los lectores pueden hacer {limit} preguntas al día. Vuelve a preguntar mañana.\",\"error.assistant_limit\":\"Usa un número entero de 0 a 1.000.\",\"error.token_unset\":\"Define RUNLIGHT_TOKEN, o pasa token o authorize a routes(). Sin eso, Runlight solo queda abierto cuando NODE_ENV es development.\",\"error.unauthorized\":\"Inicia sesión o envía un token para ver esto.\",\"error.sign_in\":\"Inicia sesión primero.\",\"error.unknown_site\":\"Ese sitio no está aquí.\",\"error.filters_max\":\"Usa como mucho {max} filtros a la vez.\",\"error.filter_bad\":\"Runlight no entiende el filtro \\\"{filter}\\\".\",\"error.range_bad\":\"Esas fechas no son un intervalo que Runlight entienda.\",\"error.compare_bad\":\"Runlight no conoce la comparación \\\"{compare}\\\".\",\"error.compare_range_bad\":\"Elige las dos fechas con las que comparar.\",\"error.send_json\":\"Envía esto como JSON.\",\"error.send_object\":\"Envía un objeto JSON.\",\"error.unknown_domain\":\"Ese dominio no es de este sitio.\",\"error.rows_needed\":\"Envía los enlaces como una lista de filas.\",\"error.unknown_link\":\"Ese enlace ya no existe.\",\"error.not_found\":\"Eso no está aquí.\",\"error.unknown_goal\":\"Ese objetivo ya no existe.\",\"error.goal_invalid\":\"El objetivo no se guardó ({detail}).\",\"error.funnel_invalid\":\"El embudo no se guardó ({detail}).\",\"error.import_failed\":\"La importación se detuvo ({detail}).\",\"error.assistant_failed\":\"El servicio de IA no respondió como se esperaba ({detail}).\",\"error.assistant_invalid\":\"El asistente no se guardó ({detail}).\",\"error.site_invalid\":\"El sitio no se guardó ({detail}).\",\"error.connect_failed\":\"La conexión no empezó ({detail}).\",\"error.method_not_allowed\":\"Eso no se puede hacer aquí.\",\"error.unknown_report\":\"Ese informe ya no existe.\",\"error.unknown_share\":\"Ese enlace para compartir ya no existe.\",\"error.token_name\":\"Ponle un nombre al token.\",\"error.token_site\":\"Un token que cambia ajustes es para un solo sitio. Elige el sitio.\",\"error.unknown_token\":\"Ese token ya no existe.\",\"error.sites_in_code\":\"Aquí los sitios se definen en el código, así que se cambian allí.\",\"error.connect_url\":\"Escribe la dirección de la instalación, como https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} no respondió como una instalación de Runlight.\",\"error.connect_endpoints\":\"{url} indicó endpoints en otra dirección.\",\"error.connect_old\":\"{url} usa una versión antigua de Runlight. Actualízala o conéctala con un token de API de sus ajustes.\",\"error.connect_register\":\"{url} no dejó que este servidor se conectara. {reason}\",\"error.connect_expired\":\"La conexión tardó demasiado o ya se usó. Empieza de nuevo.\",\"error.connect_denied\":\"No se permitió la conexión.\",\"error.connect_refused\":\"La instalación no dejó conectarse a este servidor. Empieza de nuevo o conéctala con un token de API.\",\"error.connect_token\":\"La instalación no le dio un token a este servidor. Empieza de nuevo.\",\"error.connect_again\":\"Vuelve a conectar este sitio para cambiarlo desde aquí.\",\"error.hub_domains\":\"Un hub conectado no puede cambiar los dominios de un sitio.\",\"error.observe_many\":\"Envía como mucho 500 solicitudes a la vez.\",\"error.observe_url\":\"Envía la dirección de la página.\",\"error.site_remote\":\"Este sitio lo cuenta su propio Runlight. Vuelve a conectarlo desde sus ajustes para cambiarlo desde aquí.\",\"error.unknown_funnel\":\"Ese embudo ya no existe.\",\"error.assistant_dashboard\":\"Solo el panel puede usar el asistente.\",\"error.share_not_available\":\"Eso no está disponible en un panel compartido.\",\"error.assistant_unset\":\"El asistente aún no está configurado. Un propietario puede hacerlo en Ajustes, Asistente de IA.\",\"error.question_needed\":\"Haz una pregunta.\",\"error.site_name\":\"Un nombre de sitio tiene de 1 a 80 caracteres.\",\"error.unknown_timezone\":\"Runlight no conoce la zona horaria \\\"{timezone}\\\".\",\"error.retention_bad\":\"Guarda las visitas {months} meses, o para siempre.\",\"error.share_gone\":\"Este enlace para compartir ya no funciona.\",\"error.token_read_only\":\"Los tokens de API solo pueden leer.\",\"error.icon_none\":\"Este sitio no tiene icono.\",\"error.event_needed\":\"Indica el evento.\",\"error.property_bad\":\"Runlight no puede leer ese nombre de propiedad.\",\"error.unknown_dimension\":\"Runlight no conoce el desglose \\\"{dimension}\\\".\",\"error.internal\":\"Algo falló en el servidor. Inténtalo de nuevo.\",\"filter.max\":\"Se aplican hasta {max} filtros a la vez. Quita uno para añadir otro.\",\"error.sample_soon_hub\":\"Un hub conectado puede enviar una muestra cada diez minutos. Espera unos minutos y vuelve a intentarlo.\",\"people.demoteSelf\":\"Solo el propietario o un administrador podrá revertirlo.\",\"people.demoteConfirm\":\"Cambiar a {role}\",\"error.check_not_public\":\"no es un nombre de dominio público\",\"error.check_timeout\":\"tardó demasiado en responder\",\"error.check_https\":\"no se pudo conectar por HTTPS\",\"error.check_not_runlight\":\"algo respondió, pero no Runlight\",\"error.check_status\":\"respondió {status}\",\"error.assistant_address\":\"Escribe la dirección del servicio en Ajustes, Asistente de IA.\",\"error.address_refused\":\"{host} es una dirección link-local o de metadatos de la nube, a la que Runlight nunca se conecta.\",\"error.assistant_address_bad\":\"Escribe la dirección del servicio, empezando por https://\",\"error.assistant_cancelled\":\"La pregunta se canceló.\",\"error.assistant_key\":\"Escribe tu clave de {provider}.\",\"error.assistant_model\":\"Escribe un modelo en Ajustes, Asistente de IA.\",\"error.assistant_no_models\":\"{host} no mostró ningún modelo. Escribe el nombre del modelo.\",\"error.assistant_provider\":\"Elige un servicio de IA en Ajustes, Asistente de IA.\",\"error.assistant_refused\":\"{host} rechazó la solicitud ({detail}).\",\"error.assistant_slow\":\"Esa pregunta tardó demasiado en responderse. Prueba con algo más concreto.\",\"error.assistant_status\":\"{host} respondió {status}.\",\"error.assistant_steps\":\"El asistente necesitó demasiados pasos para esa pregunta. Prueba con algo más concreto.\",\"error.assistant_timeout\":\"{host} tardó demasiado en responder.\",\"error.funnel_exists\":\"Ya hay un embudo llamado \\\"{name}\\\".\",\"error.funnel_long\":\"Un embudo tiene como mucho ocho pasos.\",\"error.funnel_name\":\"Ponle un nombre al embudo.\",\"error.funnel_page_bad\":\"\\\"{match}\\\" no es una ruta ni una URL.\",\"error.funnel_short\":\"Un embudo necesita al menos dos pasos.\",\"error.goal_amount\":\"Escribe un importe, como 49 o 9,99.\",\"error.goal_click_taken\":\"El objetivo de clic \\\"{match}\\\" ya envía eventos con ese nombre.\",\"error.goal_currency\":\"Usa un código de moneda de tres letras, como USD o EUR.\",\"error.goal_event\":\"Escribe el nombre del evento.\",\"error.goal_event_taken\":\"Un objetivo de evento ya cuenta los eventos \\\"{name}\\\", así que ponle otro nombre a este objetivo de clic.\",\"error.goal_exists\":\"Ya hay un objetivo llamado \\\"{name}\\\".\",\"error.goal_kind\":\"Elige qué cuenta el objetivo, un evento, una visita a una página o un clic.\",\"error.goal_link\":\"Escribe la dirección del enlace, como https://buy.stripe.com/*\",\"error.goal_name\":\"Ponle un nombre al objetivo.\",\"error.goal_page\":\"Escribe la ruta de una página, como /gracias o /blog/*\",\"error.goal_page_bad\":\"Esa página no es una ruta ni una URL.\",\"error.goal_prop_kind\":\"Solo un objetivo de evento puede tomar el importe del evento. Usa un importe fijo.\",\"error.goal_prop_name\":\"Un nombre de propiedad usa letras, números, puntos, guiones y guiones bajos.\",\"error.goal_selector\":\"Escribe un selector CSS, como #signup o .buy-button\",\"error.import_day_full\":\"Un día tiene más de {limit} eventos, más de los que puede leer un paso de importación.\",\"error.import_key\":\"Escribe tu clave de {service}.\",\"error.import_refused\":\"Se rechazó la clave o el inicio de sesión.\",\"error.import_slug_bad\":\"/{slug} tiene caracteres que un slug de Runlight no puede usar.\",\"error.import_slug_taken\":\"/{slug} ya lo usa \\\"{name}\\\".\",\"error.import_source\":\"Runlight no puede importar desde {source}.\",\"error.import_status\":\"{host} respondió {status}.\",\"error.import_umami_address\":\"Escribe la dirección de tu Umami, como https://stats.example.com\",\"error.import_umami_login\":\"Escribe una clave de API, o un usuario y una contraseña.\",\"error.import_website\":\"Elige el sitio de Umami que quieres importar.\",\"error.import_csv_batch\":\"Envía como mucho {max} filas a la vez.\",\"error.import_csv_format\":\"Este archivo no es una exportación de Umami ni está en el formato de visitas de Runlight. Revisa su fila de encabezado.\",\"error.install_refused\":\"Esa instalación rechazó el token.\",\"error.install_token\":\"Escribe un token de API de esa instalación.\",\"error.site_domain_invalid\":\"\\\"{host}\\\" no es un nombre de dominio.\",\"error.site_domain_needed\":\"Añade el dominio del sitio, como example.com\",\"error.site_domain_taken\":\"{host} ya pertenece a {site}.\",\"share.goneTitle\":\"Este enlace para compartir ya no funciona\",\"error.token_manage_only\":\"Un token de gestión solo cambia los ajustes de su propio sitio.\",\"empty.pages.title\":\"Tus páginas principales aparecerán aquí\",\"empty.pages.hint\":\"Cada página que la gente abre aparece en la lista, con el tiempo que pasa en ella.\",\"empty.sources.title\":\"Tus fuentes de tráfico aparecerán aquí\",\"empty.sources.hint\":\"Las búsquedas y los sitios que te envían visitas se listan por nombre.\",\"empty.locations.title\":\"Las ubicaciones de tus visitas aparecerán aquí\",\"empty.locations.hint\":\"Mira desde qué países y ciudades te visitan.\",\"empty.rhythm.title\":\"Tus horas de más actividad aparecerán aquí\",\"empty.rhythm.hint\":\"Cada hora de la semana se va llenando con las visitas.\",\"empty.ai.title\":\"Los agentes de IA que lean tu sitio aparecerán aquí\",\"empty.ai.hint\":\"Los asistentes como ChatGPT y Claude se listan cuando leen tus páginas.\",\"empty.devices.title\":\"Los dispositivos de tus visitas aparecerán aquí\",\"empty.devices.hint\":\"Mira qué navegadores y pantallas usa la gente.\",\"empty.events.title\":\"Tus eventos aparecerán aquí\",\"empty.events.hint\":\"Los clics en enlaces externos y los eventos que envías se cuentan en cuanto ocurren.\",\"empty.campaigns.title\":\"Tus campañas aparecerán aquí\",\"empty.campaigns.hint\":\"Las visitas desde enlaces con etiquetas UTM se agrupan por campaña, fuente y medio.\",\"empty.links.title\":\"Tus enlaces cortos aparecerán aquí\",\"empty.links.hint\":\"Crea un enlace corto para compartir, y cada clic se contará.\",\"sites.refused\":\"{host} ya no acepta la conexión de este servidor, así que no se pueden leer sus cifras. Vuelve a conectarlo para arreglarlo.\",\"sites.connected\":\"Conectado a {host}.\",\"links.totalTip\":\"Todos los clics en tus enlaces cortos en las fechas elegidas\",\"links.setup\":\"Cómo configurarlo\",\"links.recordType\":\"Tipo\",\"links.recordName\":\"Nombre\",\"links.recordValue\":\"Valor\",\"links.doDns\":\"Añade este registro en tu proveedor de DNS.\",\"links.doDnsAlias\":\"Añade este registro en tu proveedor de DNS. Si no ofrece ALIAS, usa un registro A a la dirección IP de tu servidor.\",\"links.doHttps\":\"Haz que tu hosting sirva {domain} con HTTPS.\",\"links.doCheck\":\"Vuelve a comprobar. Un registro nuevo puede tardar unos minutos en llegar.\",\"links.localNote\":\"Este panel funciona en {host}, así que el registro funcionará cuando tenga una dirección pública.\",\"links.guide\":\"Guía de configuración\",\"funnels.emptyTitle\":\"Tus embudos aparecerán aquí\",\"share.emptyTitle\":\"Tus enlaces para compartir aparecerán aquí\",\"tokens.emptyTitle\":\"Tus tokens aparecerán aquí\",\"reports.emptyTitle\":\"Tus informes por correo aparecerán aquí\",\"journeys.emptyTitle\":\"Los recorridos de la gente aparecerán aquí\",\"props.emptyTitle\":\"Los detalles de este evento aparecerán aquí\",\"empty.mini\":\"Esta lista se llena a medida que llegan visitas.\",\"empty.search\":\"Nada aquí coincide aún con «{q}», prueba otra palabra.\",\"delta.fromNone\":\"desde 0\",\"people.admin\":\"Administrador\",\"people.member\":\"Miembro\",\"people.handOver\":\"Hacer propietario\",\"people.handOverHint\":\"Pasa la propiedad a este administrador, y tú pasas a ser administrador\",\"people.handOverConfirm\":\"Pasar\",\"people.demotedMember\":\"Ahora eres miembro, así que Personas y la configuración de toda la instalación están cerradas para ti. El propietario o un administrador puede revertirlo.\",\"account.admin\":\"Eres administrador, así que puedes cambiarlo todo y gestionar personas, salvo al propietario.\",\"account.member\":\"Eres miembro, así que puedes cambiar la configuración de cada sitio. El propietario y los administradores gestionan las personas y la configuración de toda la instalación.\",\"mail.adminOnly\":\"Todavía no hay un servicio de correo configurado. El propietario o un administrador puede configurar uno aquí.\",\"error.admin_only\":\"Solo el propietario o un administrador puede cambiar esto.\",\"error.owner_protected\":\"Nadie más que el propietario puede cambiar o quitar al propietario.\",\"error.owner_hand_over\":\"Solo el propietario puede pasar la propiedad.\",\"error.owner_needs_admin\":\"Hazlo administrador primero.\",\"embed.goneTitle\":\"Este enlace al panel no funciona\",\"embed.gone\":\"Vuelve a abrir el panel desde la administración de tu sitio.\",\"embed.expiredTitle\":\"Esta vista ha caducado\",\"embed.expired\":\"El panel dentro de tu administración se mantiene abierto una hora cada vez. Recarga la página para abrirlo de nuevo.\",\"embed.reload\":\"Recargar la página\",\"embedKey.title\":\"Clave para el panel en tu CMS\",\"embedKey.intro\":\"Con esta clave en sus ajustes, los plugins de WordPress, Drupal y Craft muestran el panel de este sitio dentro de tu administración. Abre la vista de solo lectura que muestra un enlace compartido y no puede leer nada por sí misma. Elimínala en Ajustes, API e IA para detenerla al instante.\",\"embedKey.make\":\"Crear una clave\",\"embedKey.another\":\"Crear otra clave\",\"embedKey.name\":\"Panel en un CMS\",\"tokens.embeds\":\"Abre el panel en un CMS\",\"error.embed_expired\":\"Este panel ha caducado. Recarga la página para abrirlo de nuevo.\",\"error.embed_site\":\"Una clave para el panel en un CMS es para un solo sitio. Elige el sitio.\"}",
|
|
5
|
+
"fr": "{\"app.site\":\"Site\",\"app.confirmDelete\":\"Supprimer {name} ?\",\"app.signedOut\":\"Ouvrez cette page une fois avec {token} suivi de votre {env} pour vous connecter.\",\"app.live.title\":\"Visiteurs des cinq dernières minutes\",\"app.live_one\":\"{n} en ce moment\",\"app.live_other\":\"{n} en ce moment\",\"headline.who_one\":\"{n} personne\",\"headline.who_other\":\"{n} personnes\",\"headline.visited_one\":\"a visité le site\",\"headline.visited_other\":\"ont visité le site\",\"headline.matched_one\":\"correspond à ces filtres\",\"headline.matched_other\":\"correspondent à ces filtres\",\"headline.plain\":\"{who} {verb} {when}.\",\"headline.up\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.down\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.same\":\"{who} {verb} {when}, autant que {against}.\",\"headline.more\":\"{pct} % de plus\",\"headline.fewer\":\"{pct} % de moins\",\"headline.lastYear\":\"les mêmes jours l’an dernier\",\"when.today\":\"aujourd’hui\",\"when.yesterday\":\"hier\",\"when.7d\":\"ces 7 derniers jours\",\"when.30d\":\"ces 30 derniers jours\",\"when.90d\":\"ces 90 derniers jours\",\"when.month\":\"ce mois-ci\",\"when.last_month\":\"le mois dernier\",\"when.year\":\"cette année\",\"when.12mo\":\"ces 12 derniers mois\",\"when.all\":\"depuis le début du suivi\",\"when.range\":\"du {range}\",\"when.day\":\"le {day}\",\"before.today\":\"hier\",\"before.yesterday\":\"la veille\",\"before.7d\":\"les 7 jours précédents\",\"before.30d\":\"les 30 jours précédents\",\"before.90d\":\"les 90 jours précédents\",\"before.month\":\"la même période juste avant\",\"before.last_month\":\"le mois précédent\",\"before.year\":\"la même période juste avant\",\"before.12mo\":\"les 12 mois précédents\",\"before.all\":\"la période précédente\",\"before.range\":\"la même période juste avant\",\"period.today\":\"Aujourd’hui\",\"period.yesterday\":\"Hier\",\"period.7d\":\"7 derniers jours\",\"period.30d\":\"30 derniers jours\",\"period.90d\":\"90 derniers jours\",\"period.month\":\"Ce mois-ci\",\"period.last_month\":\"Le mois dernier\",\"period.year\":\"Cette année\",\"period.12mo\":\"12 derniers mois\",\"period.all\":\"Depuis le début\",\"compare.title\":\"Comparer à\",\"compare.vs\":\"vs\",\"compare.previous\":\"Période précédente\",\"compare.year\":\"Même période l’an dernier\",\"compare.custom\":\"Période personnalisée\",\"compare.off\":\"Aucune comparaison\",\"compare.apply\":\"Comparer\",\"compare.dialog\":\"Comparer avec\",\"calendar.dialog\":\"Choisir les dates\",\"calendar.earlier\":\"Mois précédents\",\"calendar.later\":\"Mois suivants\",\"calendar.pick\":\"Choisissez un jour de début et un jour de fin\",\"calendar.range\":\"{from} au {to}\",\"calendar.open\":\"{from} au ...\",\"calendar.apply\":\"Appliquer\",\"common.cancel\":\"Annuler\",\"common.close\":\"Fermer\",\"common.clearAll\":\"Tout effacer\",\"common.loading\":\"Chargement\",\"common.search\":\"Rechercher\",\"common.none\":\"(aucun)\",\"metric.visitors\":\"Visiteurs\",\"metric.visits\":\"Visites\",\"metric.pageviews\":\"Pages vues\",\"metric.viewsPerVisit\":\"Pages par visite\",\"metric.bounceRate\":\"Taux de rebond\",\"metric.visitDuration\":\"Durée de visite\",\"hint.visitors\":\"Des personnes différentes, comptées une fois par jour\",\"hint.visits\":\"Sessions : une visite se termine après 30 minutes d’inactivité\",\"hint.pageviews\":\"Chaque page chargée, répétitions comprises\",\"hint.viewsPerVisit\":\"Pages vues divisées par les visites\",\"hint.bounceRate\":\"Une visite d’une seule page vue, sans événement, qui dure moins de dix secondes\",\"hint.visitDuration\":\"Temps moyen par visite pendant lequel la page était visible et active\",\"delta.title\":\"Par rapport à la période de comparaison\",\"delta.none\":\"stable\",\"chart.label\":\"{metrics} au fil du temps\",\"chart.scaled\":\"Chaque courbe suit sa propre échelle. Survolez pour voir les valeurs.\",\"chart.pick\":\"Cliquez sur les cartes pour les ajouter au graphique.\",\"chart.dashed\":\"En pointillés : {range}.\",\"chart.then\":\"avant : {when}\",\"panel.pages\":\"Pages\",\"panel.sources\":\"Sources\",\"panel.locations\":\"Lieux\",\"panel.rhythm\":\"Quand les gens viennent\",\"panel.ai\":\"Agents IA\",\"panel.devices\":\"Appareils\",\"panel.events\":\"Événements\",\"panel.campaigns\":\"Campagnes\",\"panel.views\":\"Vues de {title}\",\"panel.empty\":\"Rien sur cette période\",\"panel.more\":\"Tout afficher\",\"panel.filterBy\":\"Filtrer par {name}\",\"panel.showMap\":\"Afficher une carte\",\"panel.showList\":\"Afficher la liste\",\"panel.fullMap\":\"Carte en plein écran\",\"tab.top\":\"Top\",\"tab.entry\":\"Entrée\",\"tab.exit\":\"Sortie\",\"tab.channels\":\"Canaux\",\"tab.sources\":\"Sources\",\"tab.referrers\":\"Référents\",\"tab.countries\":\"Pays\",\"tab.regions\":\"Régions\",\"tab.cities\":\"Villes\",\"tab.agents\":\"Agents\",\"tab.pages\":\"Pages\",\"tab.device\":\"Appareil\",\"tab.browser\":\"Navigateur\",\"tab.os\":\"Système\",\"tab.screen\":\"Écran\",\"tab.language\":\"Langue\",\"tab.event\":\"Événement\",\"tab.campaign\":\"Campagne\",\"tab.source\":\"Source\",\"tab.medium\":\"Support\",\"tab.content\":\"Contenu\",\"tab.term\":\"Terme\",\"column.visitors\":\"visiteurs\",\"column.fetches\":\"requêtes\",\"column.events\":\"événements\",\"column.time\":\"durée\",\"column.bounce\":\"rebond\",\"channel.Direct\":\"Direct\",\"channel.Organic Search\":\"Recherche naturelle\",\"channel.Paid Search\":\"Recherche payante\",\"channel.Social\":\"Réseaux sociaux\",\"channel.Email\":\"E-mail\",\"channel.AI\":\"IA\",\"channel.Referral\":\"Sites référents\",\"channel.Campaign\":\"Campagne\",\"device.desktop\":\"Ordinateur\",\"device.mobile\":\"Mobile\",\"device.tablet\":\"Tablette\",\"ai.live\":\"Lectures en direct\",\"ai.crawl\":\"Explorations\",\"rhythm.busiest\":\"Pic : {when}\",\"rhythm.table\":\"Visites par jour de la semaine et par heure\",\"rhythm.cell_one\":\"{when} : {n} visite\",\"rhythm.cell_other\":\"{when} : {n} visites\",\"scale.fewer\":\"Moins\",\"scale.more\":\"Plus\",\"map.failed\":\"Impossible de charger la carte\",\"map.label\":\"Visiteurs par pays : {top}\",\"map.visitors_one\":\"{n} visiteur\",\"map.visitors_other\":\"{n} visiteurs\",\"map.none\":\"Aucun visiteur\",\"map.title\":\"Dans le monde\",\"filter.button\":\"Filtrer\",\"filter.remove\":\"Retirer le filtre\",\"filter.title\":\"Afficher les visites\",\"filter.where\":\"où\",\"filter.and\":\"et\",\"filter.field\":\"Champ\",\"filter.match\":\"Condition\",\"filter.is\":\"est\",\"filter.not\":\"n’est pas\",\"filter.contains\":\"contient\",\"filter.value\":\"Valeur\",\"filter.placeholder\":\"Saisissez une valeur ou choisissez-en une ci-dessous\",\"filter.placeholderContains\":\"Une partie de la valeur\",\"filter.removeCondition\":\"Retirer cette condition\",\"filter.add\":\"+ Ajouter une condition\",\"filter.note\":\"Toutes les conditions doivent être remplies. Cliquez sur une ligne du tableau de bord pour en ajouter une sans ouvrir ce panneau.\",\"filter.apply_one\":\"Appliquer {n} condition\",\"filter.apply_other\":\"Appliquer {n} conditions\",\"filter.everything\":\"Tout afficher\",\"group.pages\":\"Pages\",\"group.sources\":\"Sources\",\"group.location\":\"Lieu\",\"group.device\":\"Appareil\",\"group.behaviour\":\"Comportement\",\"field.page\":\"Page\",\"field.entry\":\"Page d’entrée\",\"field.exit\":\"Page de sortie\",\"field.hostname\":\"Nom d’hôte\",\"field.channel\":\"Canal\",\"field.source\":\"Source\",\"field.referrer\":\"Référent\",\"field.utm_campaign\":\"Campagne\",\"field.utm_source\":\"Source UTM\",\"field.utm_medium\":\"Support UTM\",\"field.utm_content\":\"Contenu UTM\",\"field.utm_term\":\"Terme UTM\",\"field.country\":\"Pays\",\"field.region\":\"Région\",\"field.city\":\"Ville\",\"field.device\":\"Appareil\",\"field.browser\":\"Navigateur\",\"field.browser_version\":\"Version du navigateur\",\"field.os\":\"Système\",\"field.os_version\":\"Version du système\",\"field.screen\":\"Écran\",\"field.language\":\"Langue\",\"field.event\":\"Événement\",\"foot.powered\":\"Propulsé par {name}\",\"foot.language\":\"Langue\",\"theme.light\":\"Thème clair\",\"theme.dark\":\"Thème sombre\",\"column.visits\":\"visites\",\"column.pageviews\":\"pages vues\",\"column.scroll\":\"défilement\",\"column.duration\":\"durée\",\"column.share\":\"part\",\"rhythm.typical\":\"{x}× une heure habituelle\",\"rhythm.quiet\":\"Aucune visite à cette heure\",\"app.home\":\"Retour à la vue d’ensemble\",\"settings.open\":\"Réglages\",\"settings.title\":\"Réglages\",\"settings.general\":\"Général\",\"settings.install\":\"Installation\",\"settings.siteName\":\"Nom du site\",\"settings.timezone\":\"Fuseau horaire\",\"settings.timezoneHint\":\"Les jours de vos rapports commencent à minuit dans ce fuseau.\",\"settings.save\":\"Enregistrer\",\"settings.saving\":\"Enregistrement\",\"settings.saved\":\"Enregistré\",\"settings.language\":\"Langue\",\"settings.languageHint\":\"Seulement pour ce navigateur.\",\"settings.theme\":\"Thème\",\"settings.themeSystem\":\"Réglage de l’appareil\",\"settings.themeLight\":\"Clair\",\"settings.themeDark\":\"Sombre\",\"install.live\":\"Les visites arrivent. La dernière date de {when}.\",\"install.none\":\"Aucune visite pour l’instant. Ajoutez le script ci-dessous, puis ouvrez une page de votre site.\",\"install.script\":\"Ajoutez ceci à chaque page, juste avant {tag}.\",\"install.copy\":\"Copier\",\"install.copied\":\"Copié\",\"install.events\":\"Les clics sur n’importe quel élément se comptent sans JavaScript.\",\"install.eventsJs\":\"Vous pouvez aussi envoyer des événements en JavaScript, pour ce qui n’est pas un clic.\",\"install.agents\":\"Pour voir les agents IA comme ChatGPT et Claude lire vos pages, transmettez chaque requête à Runlight dans votre middleware avec le code ci-dessous.\",\"install.ignore\":\"Vos propres visites\",\"install.ignored\":\"Vos visites depuis ce navigateur ne sont pas comptées.\",\"install.counted\":\"Vos visites depuis ce navigateur sont comptées.\",\"install.ignoreButton\":\"Ignorer ce navigateur\",\"install.trackButton\":\"Compter à nouveau ce navigateur\",\"install.ignoreElsewhere\":\"Tableau de bord sur un autre domaine que le site ? Ouvrez {link} une fois dans chaque navigateur que vous utilisez.\",\"theme.system\":\"Réglage de l’appareil\",\"theme.cycle\":\"Thème : {current}. Cliquez pour {next}.\",\"panel.links\":\"Liens\",\"links.new\":\"Nouveau lien\",\"links.manage\":\"Gérer\",\"links.clicks\":\"clics\",\"links.url\":\"URL de destination\",\"links.urlPlaceholder\":\"https://exemple.com/une/longue/adresse\",\"links.name\":\"Nom\",\"links.namePlaceholder\":\"Facultatif, pour vous y retrouver\",\"links.slug\":\"Identifiant\",\"links.slugPlaceholder\":\"Laissez vide pour un identifiant au hasard\",\"links.domain\":\"Domaine\",\"links.create\":\"Créer le lien\",\"links.save\":\"Enregistrer\",\"links.created\":\"Votre lien court est prêt.\",\"links.another\":\"En créer un autre\",\"links.edit\":\"Modifier le lien\",\"links.delete\":\"Supprimer\",\"links.confirmDelete\":\"Supprimer {name} ? Ses clics restent dans vos statistiques.\",\"links.copy\":\"Copier\",\"links.copied\":\"Copié\",\"links.search\":\"Rechercher des liens\",\"links.sortClicks\":\"Les plus cliqués\",\"links.sortNewest\":\"Les plus récents\",\"links.sortName\":\"Nom\",\"links.import\":\"Importer un CSV\",\"links.importDone_one\":\"{n} lien importé.\",\"links.importDone_other\":\"{n} liens importés.\",\"links.importFailed\":\"Ligne {row} : {reason}\",\"links.importHelp\":\"Utilisez les colonnes name et url, plus slug et domain si vous les avez.\",\"links.destination\":\"Mène à\",\"links.clicksOverTime\":\"Clics au fil du temps\",\"links.sources\":\"Sources\",\"links.countries\":\"Pays\",\"links.devices\":\"Appareils\",\"links.browsers\":\"Navigateurs\",\"links.total_one\":\"{n} clic\",\"links.total_other\":\"{n} clics\",\"links.domains\":\"Domaines pour les liens courts\",\"links.domainsHelp\":\"Utilisez un domaine ou sous-domaine qui vous appartient pour les liens courts, comme t.exemple.com. Ses liens vivent à sa racine : t.exemple.com/soldes.\",\"links.addDomain\":\"Ajouter le domaine\",\"links.domainPlaceholder\":\"t.exemple.com\",\"links.ownDomain\":\"Ce site ({prefix})\",\"links.removeDomain\":\"Retirer\",\"settings.links\":\"Domaines personnalisés\",\"links.confirm\":\"Confirmer\",\"links.editButton\":\"Modifier\",\"links.step1\":\"Chez votre fournisseur DNS, ajoutez un enregistrement CNAME pour le sous-domaine, pointant vers {host}, là où tourne ce tableau de bord. Pour un domaine nu sans sous-domaine, utilisez plutôt un enregistrement A ou ALIAS vers le même serveur.\",\"links.step2\":\"Faites accepter le domaine par votre hébergeur, avec HTTPS : ajoutez-le aux domaines de votre projet sur Vercel ou Netlify, ou à la configuration et au certificat de votre serveur. Si Runlight tourne dans votre application, transmettez les requêtes à rl.linkDomainResponse() dans votre middleware.\",\"links.step3\":\"Ajoutez le domaine ci-dessous. Runlight vérifie ensuite qu’il atteint ce tableau de bord.\",\"links.checking\":\"Vérification\",\"links.working\":\"Fonctionne\",\"links.notWorking\":\"N’atteint pas encore Runlight : {reason}\",\"links.recheck\":\"Vérifier à nouveau\",\"links.sortBy\":\"Trier les liens\",\"links.removeNote\":\"Retirer un domaine garde ses liens, clics et statistiques : ils passent sur {fallback} jusqu’à ce que vous rajoutiez le domaine, puis y retournent.\",\"links.removedDomain\":\"{domain}/ (retiré)\",\"prompt.copy\":\"Copier le prompt\",\"prompt.domainHint\":\"Copiez ces étapes, avec vos adresses déjà remplies, et collez-les-lui.\",\"prompt.installHint\":\"Copiez les étapes d’installation et collez-les-lui.\",\"links.showing\":\"{shown} affichés sur {total}\",\"links.showMore\":\"Afficher {n} de plus\",\"links.clicksLabel\":\"Clics\",\"links.createdOn\":\"Créé le {date}\",\"settings.import\":\"Importer\",\"import.intro\":\"Récupérez vos liens courts depuis un autre service, avec l’historique des clics quand le service le partage. Votre clé ou mot de passe ne sert qu’à cet import et n’est jamais enregistré. Un nouvel import ignore les liens déjà présents.\",\"import.source\":\"Importer depuis\",\"import.csv\":\"N’importe quel CSV\",\"import.url\":\"Adresse d’Umami\",\"import.apiKey\":\"Clé d’API\",\"import.username\":\"Nom d’utilisateur\",\"import.password\":\"Mot de passe\",\"import.signIn\":\"Se connecter avec\",\"import.withKey\":\"Clé d’API\",\"import.withPassword\":\"Identifiant et mot de passe\",\"import.start\":\"Lancer l’import\",\"import.stop\":\"Arrêter\",\"import.running\":\"Import de {done} liens sur {total}\",\"import.done\":\"Terminé : {links} liens et {clicks} clics importés, {skipped} déjà présents.\",\"import.stopped\":\"Arrêté après {done} liens sur {total}. Relancez pour continuer ; les liens déjà importés sont ignorés.\",\"import.failed\":\"Ceux-ci n’ont pas pu être importés.\",\"import.history.full\":\"Cela importe chaque clic, avec son pays, son appareil, son navigateur et son référent.\",\"import.history.daily\":\"Cela importe les clics par jour, sans pays ni appareil.\",\"import.history.none\":\"Liens seulement : le service ne partage pas les clics datés.\",\"import.umamiHelp\":\"Dans Umami, créez une clé d’API dans Réglages, Clés d’API. Umami auto-hébergé standard n’a pas de clés d’API, connectez-vous alors avec votre identifiant et votre mot de passe. L’un comme l’autre ne sert qu’à cet import et n’est jamais enregistré.\",\"import.csvHelp\":\"Utilisez les colonnes name et url, plus slug et domain si vous les avez.\",\"import.chooseFile\":\"Choisir un fichier CSV\",\"import.token\":\"Jeton d’accès\",\"import.workspace\":\"Identifiant d’espace (facultatif)\",\"import.dubHelp\":\"Dans Dub, créez une clé d’API dans Settings, API Keys, avec lecture des liens et des statistiques. Chaque clic est importé avec l’offre Business, les totaux par jour avec Pro, les liens seuls avec Free.\",\"import.bitlyHelp\":\"Dans Bitly, allez dans Settings, API, saisissez votre mot de passe et générez un jeton. Bitly ne garde que des totaux par jour, aussi loin que votre offre le permet (aucun en Free).\",\"import.shortioHelp\":\"Dans Short.io, ouvrez Integrations and API et créez une clé secrète (une clé publique ne peut pas lire les liens). Short.io autorise 60 requêtes de statistiques par minute, donc cet import va à son rythme.\",\"import.rebrandlyHelp\":\"Dans Rebrandly, créez une clé d’API dans Settings, API keys. Rebrandly ne partage que le total des clics : les liens arrivent sans historique.\",\"import.soFar_one\":\"{n} lien importé pour l’instant\",\"import.soFar_other\":\"{n} liens importés pour l’instant\",\"import.moveNote\":\"Les liens sur le domaine du service (bit.ly, dub.sh, rebrand.ly, short.gy) passent sur {fallback} avec le même identifiant ; les domaines personnalisés sont ajoutés dans Domaines personnalisés.\",\"prompt.title\":\"Vous utilisez un assistant de code ?\",\"compare.allTime\":\"Rien ne précède le début : il n’y a rien à comparer.\",\"view.reset\":\"Réinitialiser\",\"view.resetHint\":\"Revenir aux 30 derniers jours, sans filtre ni comparaison\",\"settings.sharing\":\"Partage\",\"share.intro\":\"Un lien de partage montre les statistiques de ce site à quiconque l’a, sans connexion : les chiffres, les pages, les sources et les lieux. Il ne montre jamais vos liens courts, vos réglages ni l’adresse du site.\",\"share.namePlaceholder\":\"Pour qui, comme un client ou votre équipe\",\"share.create\":\"Créer un lien de partage\",\"share.empty\":\"Créez-en un ci-dessous et envoyez-le à qui doit voir ces statistiques.\",\"share.unnamed\":\"Sans titre\",\"share.open\":\"Ouvrir\",\"share.rename\":\"Renommer\",\"share.save\":\"Enregistrer\",\"share.revokeNote\":\"Supprimer un lien de partage le désactive aussitôt. Ceux qui l’avaient voient alors une page qui l’indique.\",\"share.gone\":\"La personne qui l’a partagé l’a désactivé. Demandez-lui un nouveau lien.\",\"live.title\":\"En ce moment\",\"live.sub\":\"Mis à jour toutes les 10 secondes\",\"live.now_one\":\"{n} personne sur le site\",\"live.now_other\":\"{n} personnes sur le site\",\"live.nowHint\":\"Toute personne ayant vu une page ou fait une action ces 5 dernières minutes.\",\"live.total_one\":\"{n} page vue ces 30 dernières minutes\",\"live.total_other\":\"{n} pages vues ces 30 dernières minutes\",\"live.minute_one\":\"{n} page vue à {time}\",\"live.minute_other\":\"{n} pages vues à {time}\",\"live.ago30\":\"il y a 30 min\",\"live.nowLabel\":\"Maintenant\",\"live.pages\":\"Pages\",\"live.sources\":\"Sources\",\"live.countries\":\"Pays\",\"live.nobody\":\"Les visiteurs s’affichent ici dès leur arrivée.\",\"live.feed\":\"Activité récente\",\"live.quiet\":\"Les visites des 30 dernières minutes s’affichent ici.\",\"live.someone\":\"Quelqu’un\",\"live.someoneIn\":\"Quelqu’un à {place}\",\"live.viewed\":\"{who} a vu {path}\",\"live.viewedVia\":\"{who} a vu {path} depuis {source}\",\"live.did\":\"{who} a fait {name} sur {path}\",\"live.didVia\":\"{who} a fait {name} sur {path}, depuis {source}\",\"welcome.title\":\"Ajoutez Runlight à {name}\",\"welcome.lead\":\"En attente de la première visite. Cette page se remplira toute seule.\",\"settings.goals\":\"Objectifs\",\"settings.funnels\":\"Entonnoirs\",\"panel.conversions\":\"Conversions\",\"goals.revenueAside\":\"{amount} de revenus\",\"goals.add\":\"Ajouter un objectif\",\"goals.emptyTitle\":\"Vos objectifs apparaîtront ici\",\"goals.emptyHint\":\"Un objectif compte ce qui vous importe, comme une inscription ou un clic sur un bouton. Un objectif d’événement ou de page compte aussi les visites passées, et un objectif de clic compte à partir de son ajout.\",\"goals.goal\":\"Objectif\",\"goals.rate\":\"Taux\",\"goals.conversions\":\"Conversions\",\"goals.unknown\":\"(aucun)\",\"goals.converted\":\"Personnes converties\",\"goals.revenue\":\"Revenus\",\"goals.overTime\":\"Conversions dans le temps\",\"goals.overTimeValued\":\"Conversions et revenus dans le temps, chacun à sa propre échelle\",\"goals.byChannel\":\"Par canal\",\"goals.bySource\":\"Par source\",\"goals.byPage\":\"Où c’est arrivé\",\"goals.describe.event\":\"Événement : {match}\",\"goals.describe.page\":\"Visites de {match}\",\"goals.describe.selector\":\"Clics sur {match}\",\"goals.describe.link\":\"Clics sur les liens vers {match}\",\"goals.value.each\":\"{amount} chacun\",\"goals.value.fromProp\":\"montant dans {prop}, en {currency}\",\"goals.name\":\"Nom\",\"goals.namePlaceholder\":\"Inscription, Achat, Appel réservé\",\"goals.counts\":\"Compte\",\"goals.kind.event\":\"Un événement\",\"goals.kind.page\":\"Une page visitée\",\"goals.kind.click\":\"Un clic\",\"goals.clickOn\":\"Clics sur\",\"goals.click.selector\":\"Un élément\",\"goals.click.link\":\"Des liens vers une adresse\",\"goals.match.event\":\"Nom de l’événement\",\"goals.match.page\":\"Page\",\"goals.match.link\":\"Adresse du lien\",\"goals.match.selector\":\"Sélecteur CSS\",\"goals.pick\":\"Choisir sur mon site\",\"goals.picking\":\"En attente de votre choix\",\"goals.hint.event\":\"Le nom envoyé avec runlight(\\\"Nom\\\") ou un attribut data-runlight.\",\"goals.hint.page\":\"Un chemin comme /merci. Utilisez * pour n’importe quoi : /blog/* ou /merci*. Une URL complète marche aussi.\",\"goals.hint.link\":\"Clics sur les liens dont l’adresse correspond. Utilisez * pour n’importe quoi, comme https://buy.stripe.com/*, ou commencez par / pour vos propres pages.\",\"goals.hint.selector\":\"N’importe quel sélecteur CSS. Ou utilisez Choisir sur mon site : votre site s’ouvre, cliquez sur l’élément, puis sur Utiliser.\",\"goals.valueLabel\":\"Valeur\",\"goals.value.none\":\"Aucune\",\"goals.value.fixed\":\"Un montant fixe\",\"goals.value.prop\":\"Un montant envoyé avec l’événement\",\"goals.amount\":\"Montant à chaque fois\",\"goals.property\":\"Propriété contenant le montant\",\"goals.currency\":\"Devise\",\"goals.save\":\"Enregistrer\",\"goals.create\":\"Ajouter l’objectif\",\"goals.cancel\":\"Annuler\",\"goals.edit\":\"Modifier\",\"goals.intro\":\"Les objectifs transforment les visites en conversions. Chacun compte un événement, une page visitée ou un clic, et peut porter une valeur pour voir les revenus par source et par page.\",\"goals.none\":\"Ajoutez-en un ci-dessous pour commencer à le compter.\",\"goals.pastNote\":\"Les objectifs se calculent sur les données déjà là, donc un nouvel objectif montre aussi les conversions passées. Les objectifs de clic commencent à compter environ cinq minutes après leur ajout.\",\"settings.email\":\"Rapports par e-mail\",\"settings.mail\":\"Service d’e-mail\",\"mail.intro\":\"Runlight envoie les rapports et les invitations par votre propre service d’e-mail. Configurez-le une fois et tous les sites l’utilisent.\",\"mail.service\":\"Service\",\"mail.optional\":\"(facultatif)\",\"mail.keepSaved\":\"Enregistré. Laissez vide pour le garder.\",\"mail.from\":\"Adresse d’expédition\",\"mail.fromName\":\"Nom d’expéditeur\",\"mail.fromHint\":\"Utilisez une adresse autorisée par votre service, sur un domaine vérifié chez lui.\",\"mail.save\":\"Enregistrer le service\",\"mail.change\":\"Modifier\",\"mail.fromLine\":\"Envoie depuis {from}\",\"mail.fromCode\":\"Défini dans le code. Envoie depuis {from}\",\"mail.testTo\":\"Envoyer un test à\",\"mail.test\":\"Envoyer un test\",\"mail.testSent\":\"Test envoyé à {to}. Vérifiez la boîte de réception et les indésirables.\",\"mail.notEncryptedTitle\":\"Vos clés seront stockées en clair\",\"mail.notEncrypted\":\"Ce Runlight n’a pas de RUNLIGHT_SECRET, donc les clés sont gardées dans sa base telles que vous les tapez. Définissez RUNLIGHT_SECRET ou RUNLIGHT_TOKEN sur le serveur pour les garder chiffrées.\",\"mail.field.region\":\"Région\",\"mail.field.accessKeyId\":\"ID de clé d’accès\",\"mail.field.secretAccessKey\":\"Clé d’accès secrète\",\"mail.field.apiKey\":\"Clé d’API\",\"mail.field.serverToken\":\"Jeton d’API du serveur\",\"mail.field.stream\":\"Flux de messages\",\"mail.field.domain\":\"Domaine d’envoi\",\"mail.field.secretKey\":\"Clé secrète\",\"mail.field.host\":\"Hôte\",\"mail.field.port\":\"Port\",\"mail.field.security\":\"Sécurité\",\"mail.field.username\":\"Identifiant\",\"mail.field.password\":\"Mot de passe\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Secret de signature\",\"reports.title\":\"Qui reçoit les rapports\",\"reports.intro\":\"Un résumé de {site} par e-mail : visiteurs, pages, sources, pays et conversions, comparés à la période précédente.\",\"reports.none\":\"Ajoutez une adresse e-mail ci-dessous pour commencer à les envoyer.\",\"reports.weekly\":\"Hebdomadaire\",\"reports.monthly\":\"Mensuel\",\"reports.frequency\":\"Fréquence\",\"reports.language\":\"Langue\",\"reports.lastSent\":\"dernier envoi {when}\",\"reports.never\":\"pas encore\",\"reports.sample\":\"Envoyer un exemple\",\"reports.sampleSent\":\"Exemple envoyé à {to}.\",\"reports.emailPlaceholder\":\"nom@exemple.com\",\"reports.add\":\"Ajouter\",\"reports.when\":\"Les rapports hebdomadaires couvrent du lundi au dimanche et partent le lundi dès 8 h, les mensuels le 1er, dans le fuseau du site. Ils sont envoyés par la vérification horaire (un cron qui appelle POST /api/check).\",\"reports.needsMail\":\"Les rapports partent dès qu’un service d’e-mail est configuré. Un seul service les envoie pour tous les sites.\",\"reports.setUpMail\":\"Configurer le service d’e-mail\",\"reports.needsMailTitle\":\"Pas encore de service d’e-mail\",\"email.subject.week\":\"{site} : {who} la semaine dernière\",\"email.subject.month\":\"{site} : {who} en {month}\",\"email.when.week\":\"la semaine dernière\",\"email.before.week\":\"la semaine précédente\",\"email.when.month\":\"en {month}\",\"email.range\":\"du {from} au {to}\",\"email.pages\":\"Pages principales\",\"email.sources\":\"Sources principales\",\"email.countries\":\"Pays principaux\",\"email.conversions\":\"Conversions\",\"email.open\":\"Ouvrir le tableau de bord\",\"email.at\":\"Votre tableau de bord se trouve sur {where}\",\"email.footer\":\"Vous recevez ce rapport {frequency} pour {site} de la part de Runlight.\",\"email.weekly\":\"hebdomadaire\",\"email.monthly\":\"mensuel\",\"email.unsubscribe\":\"Se désabonner\",\"email.test.subject\":\"Runlight peut envoyer des e-mails\",\"email.test.body\":\"Ce test est passé par {service}. Les rapports de vos sites arriveront de la même façon.\",\"email.unsub.title\":\"Arrêter les rapports pour {site} ?\",\"email.unsub.body\":\"{email} ne recevra plus de rapports pour ce site.\",\"email.unsub.doneTitle\":\"Vous êtes désabonné\",\"email.unsub.done\":\"Plus aucun rapport pour {site} n’arrivera à {email}.\",\"email.unsub.goneTitle\":\"Rien à désabonner\",\"email.unsub.gone\":\"Ce lien a déjà servi, ou le rapport a été supprimé.\",\"settings.api\":\"API et IA\",\"tokens.intro\":\"Interrogez votre assistant IA sur vos statistiques. Créez un jeton, puis ajoutez Runlight à Claude, Cursor ou toute application qui se connecte aux serveurs MCP. Un jeton de lecture ne modifie jamais rien, et un jeton de gestion peut changer les réglages d’un site. Le même jeton fonctionne avec l’API HTTP.\",\"tokens.server\":\"Adresse du serveur MCP\",\"tokens.namePlaceholder\":\"À quoi il sert, par exemple Claude ou un script\",\"tokens.scope\":\"Les sites qu’il peut lire\",\"tokens.allSites\":\"Tous les sites\",\"tokens.siteOnly\":\"{site} seulement\",\"tokens.create\":\"Créer un jeton\",\"tokens.empty\":\"Créez-en un ci-dessous pour connecter un assistant IA ou un script.\",\"tokens.used\":\"utilisé le {date}\",\"tokens.never\":\"jamais utilisé\",\"tokens.revokeNote\":\"Supprimer un jeton l’arrête aussitôt.\",\"tokens.once\":\"Copiez ce jeton maintenant. Il n’est affiché qu’une fois, et Runlight n’en garde qu’une empreinte.\",\"tokens.claudeCode\":\"Claude Code reçoit le jeton avec cette commande.\",\"tokens.json\":\"Cursor et les autres applications qui prennent une configuration JSON mcpServers utilisent plutôt ceci.\",\"tokens.done\":\"C’est fait, je l’ai copié\",\"sites.domains\":\"Domaines\",\"sites.domainsHint\":\"Saisissez le domaine du site, par exemple example.com, et séparez-en plusieurs par des virgules.\",\"sites.name\":\"Nom\",\"sites.namePlaceholder\":\"Mon blog\",\"sites.timezoneHint\":\"Les jours sont comptés selon {zone}, que vous pourrez changer plus tard dans les réglages.\",\"sites.add\":\"Ajouter le site\",\"sites.addTitle\":\"Ajouter un site\",\"sites.firstTitle\":\"Ajoutez votre premier site\",\"sites.firstLead\":\"Runlight compte chaque site que vous ajoutez ici. Saisissez le domaine du site, et l’écran suivant affiche la balise de script à placer sur ses pages.\",\"sites.delete\":\"Supprimer ce site\",\"sites.deleteHint\":\"Supprimer un site efface chaque visite, lien, objectif et rapport enregistré pour lui, sans retour possible.\",\"app.signOut\":\"Se déconnecter\",\"install.ignoreServer\":\"Pour ne plus compter vos propres visites, ouvrez {link} une fois dans chaque navigateur que vous utilisez.\",\"panel.geoCredit\":\"Lieux par {name}\",\"visits.tab\":\"Visites\",\"visits.linksTab\":\"Liens courts\",\"visits.intro\":\"Récupérez votre historique de visites pour que vos graphiques remontent avant le jour où Runlight a commencé à compter. Seules les visites antérieures à la première de Runlight sont importées, donc rien n’est compté deux fois.\",\"visits.onlyUmami\":\"L’API d’Umami fournit chaque visite avec sa page, sa source, son lieu et son appareil, ce que Runlight conserve. Plausible, Fathom et Google Analytics ne donnent que des totaux, et des totaux ne redeviennent pas des visites. Si vous avez chaque page vue dans un fichier, importez-le plutôt en CSV.\",\"visits.csvMoment\":\"Plus de {max} lignes partagent le même instant, plus qu’un lot ne peut en contenir.\",\"visits.csvStopped\":\"Arrêté. Réimporter le même fichier est sans risque, car les lignes déjà importées sont remplacées.\",\"visits.csvSkipped\":\"{n} lignes ont été laissées de côté, car elles venaient après la première visite propre de Runlight, avant ce que ce site conserve, ou n’étaient ni une page vue ni un événement nommé.\",\"visits.csvRunning\":\"{done} lignes envoyées sur {total}, {pageviews} pages vues jusqu’ici\",\"visits.csvRunlight\":\"{name} est au format de visites de Runlight, avec {rows} lignes.\",\"visits.csvUmami\":\"{name} est un export Umami de {rows} lignes.\",\"visits.csvOther\":\"Choisir un autre fichier\",\"visits.csvChoose\":\"Choisir un fichier CSV\",\"visits.csvHelp\":\"Utilisez le CSV de l’export de données d’Umami, ou un fichier avec une ligne par page vue au format de visites de Runlight, décrit dans la documentation du tableau de bord.\",\"visits.fromCsv\":\"Un fichier CSV\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Importer depuis\",\"visits.onlyUmamiTitle\":\"Pourquoi seulement Umami\",\"visits.find\":\"Trouver les sites\",\"visits.website\":\"Site Umami\",\"visits.noWebsites\":\"Ce compte Umami n’a aucun site.\",\"visits.start\":\"Importer les visites\",\"visits.running\":\"{done} jours lus sur {total}, {pageviews} pages vues pour l’instant\",\"visits.done\":\"Terminé. {pageviews} pages vues et {events} événements sont arrivés, en {visits} visites.\",\"visits.stopped\":\"Arrêté. Relancez pour reprendre au dernier jour importé.\",\"props.title\":\"Propriétés\",\"props.open\":\"Propriétés de {name}\",\"props.none\":\"Ils apparaissent quand l’événement est envoyé avec des propriétés.\",\"account.title\":\"Compte\",\"account.owner\":\"Vous êtes le propriétaire, vous pouvez donc tout modifier et gérer les personnes. Personne d’autre ne peut vous retirer.\",\"account.viewer\":\"Vous êtes lecteur, vous pouvez donc consulter les statistiques de chaque site sans rien modifier.\",\"account.current\":\"Mot de passe actuel\",\"account.next\":\"Nouveau mot de passe\",\"account.nextHint\":\"Utilisez au moins dix caractères. Le changer déconnecte vos autres navigateurs.\",\"account.save\":\"Changer le mot de passe\",\"account.saved\":\"Mot de passe changé\",\"settings.people\":\"Personnes\",\"people.intro\":\"Tout le monde ici peut se connecter à ce serveur. Les administrateurs peuvent tout modifier comme le propriétaire et gérer les personnes, mais personne ne peut retirer le propriétaire. Les membres modifient les réglages de chaque site, et les lecteurs lisent les statistiques de chaque site sans rien changer. Invitez un collègue et il choisit son propre mot de passe.\",\"people.you\":\"vous\",\"people.role\":\"Rôle\",\"people.owner\":\"Propriétaire\",\"people.viewer\":\"Lecteur\",\"people.roles\":\"Les membres ne peuvent pas gérer les personnes, configurer le service d’e-mail ou l’assistant, ni supprimer un site. Seul le propriétaire peut transmettre la propriété à un administrateur.\",\"people.emailPlaceholder\":\"Son adresse e-mail\",\"pluginKey.title\":\"Clé pour les extensions CMS\",\"pluginKey.intro\":\"Les extensions WordPress, Drupal et Craft utilisent cette clé pour signaler les agents IA qui lisent les pages de ce site. Elle ne peut signaler que pour ce site et ne peut rien lire. La remplacer arrête aussitôt l’ancienne.\",\"pluginKey.replace\":\"Remplacer la clé\",\"export.csv\":\"Télécharger le CSV\",\"export.zip\":\"Exporter\",\"export.title\":\"Télécharger tout ce que montre cette vue en fichiers CSV\",\"funnels.title\":\"Entonnoirs\",\"funnels.intro\":\"Un entonnoir suit les étapes qu’une visite devrait franchir, par exemple la page des tarifs puis l’inscription, et montre combien de visites ont franchi chaque étape, dans l’ordre.\",\"funnels.none\":\"Ajoutez-en un ci-dessous pour voir où les gens s’arrêtent en chemin.\",\"funnels.add\":\"Ajouter un entonnoir\",\"funnels.name\":\"Nom\",\"funnels.namePlaceholder\":\"Inscription\",\"funnels.steps\":\"Étapes\",\"funnels.stepsHint\":\"Un chemin de page peut utiliser * pour tout accepter, comme /blog/*. Chaque étape doit suivre la précédente, dans la même visite.\",\"funnels.kind\":\"Type d’étape\",\"funnels.page\":\"Page\",\"funnels.event\":\"Événement\",\"funnels.removeStep\":\"Retirer cette étape\",\"funnels.addStep\":\"Ajouter une étape\",\"funnels.save\":\"Enregistrer l’entonnoir\",\"funnels.create\":\"Créer l’entonnoir\",\"funnels.stepPage\":\"Page {match}\",\"funnels.stepEvent\":\"Événement {match}\",\"funnels.wentOn\":\"{pct} ont continué\",\"funnels.tab\":\"Entonnoirs\",\"funnels.goalsTab\":\"Objectifs\",\"sites.modeHere\":\"Le compter ici\",\"sites.modeConnect\":\"Connecter un autre Runlight\",\"sites.connectIntro\":\"Connectez ici un site qui se compte déjà avec Runlight dans sa propre application. Ses chiffres restent là-bas. Vous vous y connectez une fois et autorisez ce serveur, puis vous pouvez voir et modifier le site d’ici.\",\"sites.connectUrl\":\"Son adresse Runlight\",\"sites.connectToken\":\"Jeton d’API\",\"sites.connectTokenHint\":\"Créez un jeton sur cette installation, dans Réglages, API et IA. Avec un jeton de lecture, les chiffres s’affichent ici et les réglages restent là-bas.\",\"sites.connect\":\"Connecter\",\"sites.all\":\"Tous les sites\",\"sites.remoteNote\":\"Ce site est compté par son propre Runlight à {url}, qui autorise ce serveur à le lire. Autorisez les modifications pour gérer aussi ses réglages d’ici.\",\"sites.disconnect\":\"Déconnecter ce site\",\"sites.disconnectHint\":\"La déconnexion retire le site de ce serveur. Son propre Runlight et tout ce qu’il a compté restent tels quels.\",\"sites.disconnectButton\":\"Déconnecter le site\",\"sites.confirmDisconnect\":\"Confirmer la déconnexion\",\"sites.disconnectName\":\"Déconnecter {name} ?\",\"settings.data\":\"Données\",\"data.retention\":\"Conserver les visites\",\"data.retentionHint\":\"Les visites et événements plus anciens sont supprimés définitivement à l’enregistrement, puis chaque jour. Les objectifs, liens et réglages restent.\",\"data.forever\":\"Toujours\",\"data.months\":\"{n} mois\",\"data.years\":\"{n} ans\",\"data.deletesBefore\":\"Les visites antérieures au {date} seront supprimées à l’enregistrement.\",\"data.unreachable\":\"Impossible de joindre {url} pour lire ce réglage. Réessayez dans une minute.\",\"data.export\":\"Tout exporter\",\"data.exportHint\":\"Le ZIP contient tous les rapports de ce site depuis sa première visite, en fichiers CSV.\",\"data.download\":\"Télécharger le ZIP\",\"sites.remoteTitle\":\"Compté par un autre Runlight\",\"sites.openRemote\":\"Ouvrir son tableau de bord\",\"sites.useToken\":\"Utiliser plutôt un jeton d’API\",\"sites.useSignIn\":\"Se connecter plutôt à cette installation\",\"sites.remoteManaged\":\"Ce site est compté par son propre Runlight à {url}. Les modifications faites ici y sont enregistrées.\",\"sites.allowChanges\":\"Autoriser les modifications\",\"sites.reconnect\":\"Reconnecter\",\"sites.reconnectHint\":\"Utile si l’installation n’accepte plus ce serveur, par exemple après la suppression de son jeton.\",\"sites.connectError.expired\":\"Cette connexion a pris trop de temps ou a déjà servi. Recommencez.\",\"sites.connectError.denied\":\"La connexion n’a pas été autorisée.\",\"sites.connectError.refused\":\"L’installation n’a pas laissé ce serveur se connecter. Recommencez, ou connectez-la avec un jeton d’API.\",\"sites.connectError.token\":\"L’installation n’a pas donné de jeton à ce serveur. Recommencez.\",\"sites.connectError.failed\":\"La connexion n’a pas abouti. Recommencez.\",\"mail.fromRemote\":\"Envoyé par {host} depuis {from}\",\"mail.noneRemote\":\"{host} n’a pas encore de service d’e-mail, il ne peut donc pas envoyer ces rapports. Configurez-en un dans son propre tableau de bord, sous Réglages, Service d’e-mail.\",\"tokens.manages\":\"Peut modifier les réglages\",\"account.again\":\"Nouveau mot de passe, encore une fois\",\"account.mismatch\":\"Les deux nouveaux mots de passe ne sont pas identiques.\",\"account.strength0\":\"Trop court\",\"account.strength1\":\"Faible\",\"account.strength2\":\"Moyen\",\"account.strength3\":\"Bon\",\"account.strength4\":\"Fort\",\"mail.introRemote\":\"Les rapports de ce site partent par le service d’e-mail configuré sur {host}.\",\"settings.assistant\":\"Assistant IA\",\"assistant.open\":\"Interroger vos statistiques\",\"assistant.title\":\"Assistant IA\",\"assistant.about\":\"Il répond à partir des chiffres de {site}, qu’il lit au moment où vous demandez.\",\"assistant.clear\":\"Nouvelle discussion\",\"assistant.intro\":\"Posez une question sur les visiteurs, les sources, les pages, les objectifs, ou tout ce que montre ce tableau de bord.\",\"assistant.ask1\":\"Comment cette période se compare-t-elle à la précédente ?\",\"assistant.ask2\":\"D’où viennent la plupart des visiteurs ?\",\"assistant.ask3\":\"Quelles pages retiennent le plus longtemps ?\",\"assistant.ask4\":\"Les assistants IA envoient-ils des visiteurs ici ?\",\"assistant.placeholder\":\"Posez une question\",\"assistant.send\":\"Envoyer\",\"assistant.thinking\":\"Lecture de vos chiffres\",\"assistant.empty\":\"L’assistant n’a rien répondu.\",\"assistant.checked_one\":\"{n} rapport lu\",\"assistant.checked_other\":\"{n} rapports lus\",\"assistant.setupOwner\":\"L’assistant a besoin d’un service d’IA pour répondre. Ajoutez une clé Anthropic, OpenAI ou Gemini, ou indiquez un modèle sur votre propre machine.\",\"assistant.setupViewer\":\"L’assistant n’est pas encore configuré. Le propriétaire ou un administrateur peut ajouter un service d’IA dans Réglages, Assistant IA.\",\"assistant.setup\":\"Configurer l’assistant\",\"assistant.ownersOnly\":\"Seul le propriétaire ou un administrateur peut configurer l’assistant.\",\"assistant.settingsIntro\":\"Choisissez un service d’IA et collez ci-dessous une clé d’API de ce service. Le bouton robot à côté de Filtrer ouvre alors un assistant qui répond simplement aux questions sur vos statistiques.\",\"assistant.privacyTitle\":\"Ce que voit le service\",\"assistant.privacy\":\"Chaque question part vers ce service avec les chiffres que l’assistant lit pour répondre. Runlight ne garde rien sur les visiteurs individuels, donc rien de personnel n’est envoyé. L’assistant ne fait que lire, avec les mêmes outils que le serveur MCP, il ne peut donc rien modifier.\",\"assistant.notEncryptedTitle\":\"Votre clé sera stockée en clair\",\"assistant.notEncrypted\":\"Ce Runlight n’a pas de RUNLIGHT_SECRET, donc la clé est gardée dans sa base telle que vous la tapez. Définissez RUNLIGHT_SECRET ou RUNLIGHT_TOKEN sur le serveur pour la garder chiffrée.\",\"assistant.provider\":\"Service d’IA\",\"assistant.address\":\"Adresse\",\"assistant.addressHint\":\"L’adresse de l’API compatible OpenAI du service, qui s’arrête avant /chat/completions.\",\"assistant.addressLocal\":\"Là où tourne le modèle. Le serveur qui fait tourner Runlight doit pouvoir l’atteindre.\",\"assistant.model\":\"Modèle\",\"assistant.modelPlaceholder\":\"Le nom du modèle, tel que le service l’indique\",\"assistant.modelDefault\":\"Laissez vide pour utiliser {model}.\",\"assistant.modelHint\":\"Saisissez la clé ci-dessus, puis chargez les modèles du service, ou tapez le nom d’un modèle. Un modèle qui sait appeler des outils fonctionne le mieux.\",\"assistant.key\":\"Clé d’API\",\"assistant.remove\":\"Désactiver l’assistant\",\"assistant.removeHint\":\"Supprime le service et sa clé. Le bouton robot demande alors à un propriétaire de le reconfigurer.\",\"journeys.open\":\"Parcours\",\"journeys.title\":\"Parcours\",\"journeys.intro\":\"Les chemins que prennent les visites sur le site, page par page. Cliquez sur une page pour ne suivre que les visites qui y sont passées.\",\"journeys.steps\":\"Étapes\",\"journeys.stepCount\":\"{n} étapes\",\"journeys.start\":\"En partant de\",\"journeys.end\":\"En finissant sur\",\"journeys.anyPage\":\"N’importe quelle page\",\"journeys.step\":\"Étape {n}\",\"journeys.other\":\"Autres pages\",\"journeys.left\":\"{n} se sont arrêtées là\",\"journeys.follow\":\"Suivre les visites passées par {page}\",\"journeys.following\":\"Visites passées par {page} à l’étape {step}.\",\"journeys.none\":\"Essayez une période plus large pour voir plus de visites.\",\"secret.show\":\"Afficher\",\"secret.hide\":\"Masquer\",\"people.invite\":\"Inviter\",\"people.invited\":\"invité\",\"people.invitedMeta\":\"{role}, le lien fonctionne jusqu’au {date}\",\"people.resend\":\"Renvoyer\",\"people.emailed\":\"Une invitation part vers {email}. Vous pouvez aussi lui envoyer ce lien vous-même.\",\"people.noMail\":\"Ce serveur n’a pas de service d’e-mail, envoyez donc ce lien à {email} vous-même. Configurez-en un dans Réglages, Service d’e-mail pour envoyer les invitations par e-mail.\",\"people.mailFailed\":\"L’e-mail à {email} n’est pas parti ({error}). Envoyez-lui ce lien vous-même.\",\"people.linkHint\":\"Le lien fonctionne une fois, pendant sept jours. Renvoyer crée un nouveau lien et désactive celui-ci.\",\"twofa.title\":\"Connexion à deux facteurs\",\"twofa.off\":\"Désactivée. Activez-la et la connexion demande aussi un code d’une application d’authentification sur votre téléphone.\",\"twofa.on_one\":\"Activée. La connexion demande un code de votre application d’authentification. Il vous reste {n} code de secours.\",\"twofa.on_other\":\"Activée. La connexion demande un code de votre application d’authentification. Il vous reste {n} codes de secours.\",\"twofa.turnOn\":\"Activer\",\"twofa.turnOff\":\"Désactiver\",\"twofa.newCodes\":\"Nouveaux codes de secours\",\"twofa.password\":\"Votre mot de passe\",\"twofa.continue\":\"Continuer\",\"twofa.scan\":\"Scannez ceci avec une application d’authentification, comme 1Password, Google Authenticator ou Authy, puis saisissez le code à six chiffres qu’elle affiche.\",\"twofa.qr\":\"Code QR pour votre application d’authentification\",\"twofa.manual\":\"Ou saisissez cette clé dans l’application.\",\"twofa.code\":\"Code de l’application\",\"twofa.confirm\":\"Activer\",\"twofa.codesIntro\":\"Gardez ces codes de secours en lieu sûr. Chacun vous connecte une fois si vous perdez votre téléphone, et ils ne seront plus affichés.\",\"twofa.download\":\"Télécharger\",\"twofa.copy\":\"Copier\",\"twofa.saved\":\"Je les ai enregistrés\",\"people.twoFactor\":\"deux facteurs\",\"people.resetTwoFactor\":\"Réinitialiser les deux facteurs\",\"people.resetTwoFactorHint\":\"Désactive la connexion à deux facteurs pour cette personne, si elle a perdu son téléphone et ses codes de secours\",\"assistant.loadModels\":\"Charger les modèles\",\"assistant.loadingModels\":\"Chargement\",\"assistant.pickModel\":\"Choisissez un modèle\",\"assistant.typeModel\":\"Saisir plutôt le nom d’un modèle\",\"assistant.chooseFromList\":\"Choisir dans la liste\",\"journeys.sampled\":\"Ce sont les chemins des {n} visites les plus récentes sur ces dates.\",\"error.owner_only\":\"Seul un propriétaire peut modifier ceci.\",\"error.domain_invalid\":\"Ce n’est pas un nom de domaine.\",\"error.domain_in_use\":\"{domain} héberge ce tableau de bord ou l’un de vos sites. Utilisez un domaine ou un sous-domaine à part pour les liens courts, comme go.{domain}.\",\"error.domain_taken\":\"{domain} appartient déjà à un autre site.\",\"error.link_url\":\"La destination doit être une URL complète, commençant par https://\",\"error.link_protocol\":\"La destination doit commencer par http:// ou https://\",\"error.link_long\":\"La destination dépasse 2 000 caractères.\",\"error.link_domain\":\"Ajoutez d’abord {domain} comme domaine de liens dans les réglages.\",\"error.link_slug\":\"Un slug se compose de lettres, de chiffres, de tirets et de tirets bas, 100 au plus.\",\"error.link_taken\":\"/{slug} est déjà pris.\",\"error.link_no_slug\":\"Aucun slug libre n’a été trouvé. Réessayez.\",\"error.test_email\":\"Saisissez l’adresse e-mail à laquelle envoyer le test.\",\"error.mail_unset\":\"Configurez d’abord un service d’e-mail.\",\"error.email_invalid\":\"Saisissez une adresse e-mail.\",\"error.report_exists\":\"{email} reçoit déjà ce rapport.\",\"error.report_limit\":\"Un site peut envoyer à 50 adresses au plus.\",\"error.sample_soon\":\"Un exemple vient de partir. Patientez une minute et réessayez.\",\"error.people_owner\":\"Seul le propriétaire ou un administrateur peut gérer les personnes.\",\"error.role_needed\":\"Choisissez administrateur, membre ou lecteur.\",\"error.account_exists\":\"{email} a déjà un compte.\",\"error.remove_self\":\"Vous ne pouvez pas vous retirer vous-même.\",\"people.demoted\":\"Vous êtes désormais lecteur, donc les réglages sont fermés et rien ici ne peut être modifié. Le propriétaire ou un administrateur peut le rétablir.\",\"links.importNoUrl\":\"Rien n’a été importé, car le fichier n’a pas de colonne url remplie d’adresses. Utilisez les colonnes name et url, plus slug et domain si vous les avez.\",\"app.sessionEnded\":\"Vous avez été déconnecté, ce qui arrive quand une session expire ou qu’un mot de passe change. {link} et vous reviendrez à cette vue.\",\"app.signInAgain\":\"Reconnectez-vous\",\"links.noneYet\":\"Personne n’a encore créé de lien court pour ce site.\",\"error.remote_slow\":\"{host} a mis trop de temps à répondre. Essayez une période plus courte.\",\"error.domain_not_public\":\"{domain} n’est pas un nom de domaine public. Utilisez un domaine accessible depuis n’importe quel navigateur.\",\"error.unreachable\":\"Impossible de joindre {host}.\",\"error.redirected\":\"{host} a répondu par une redirection.\",\"error.token_refused\":\"{host} a refusé le jeton. Connectez-le de nouveau depuis les réglages du site.\",\"error.mail_failed\":\"L’e-mail n’a pas pu être envoyé ({detail}).\",\"error.mail_unreachable\":\"Impossible de joindre {host}.\",\"error.mail_slow\":\"{host} a mis trop de temps à répondre, l’e-mail n’a donc pas été envoyé.\",\"error.mail_refused\":\"{host} a refusé l’e-mail ({detail}).\",\"error.mail_service\":\"Choisissez un service d’e-mail.\",\"error.mail_field\":\"Le champ {field} est requis.\",\"error.mail_option\":\"{field} doit être l’une de ces valeurs ({options}).\",\"error.mail_https\":\"L’URL du webhook doit utiliser https.\",\"error.mail_region\":\"Ce n’est pas une région AWS, comme us-east-1.\",\"error.mail_in_code\":\"Le service d’e-mail est défini dans le code, il ne peut donc pas être modifié ici.\",\"error.mail_from\":\"Saisissez l’adresse d’expédition des rapports, comme reports@example.com.\",\"error.smtp_starttls\":\"Le serveur SMTP ne propose pas STARTTLS. Choisissez TLS ou aucune pour la sécurité.\",\"error.unknown_account\":\"Ce compte n’existe plus.\",\"error.password_short\":\"Utilisez un mot de passe d’au moins {min} caractères.\",\"error.invite_gone\":\"Cette invitation a expiré ou a déjà servi. Demandez-en une nouvelle.\",\"error.too_many_tries\":\"Trop de tentatives. Patientez quinze minutes et réessayez.\",\"error.password_current_wrong\":\"Votre mot de passe actuel n’est pas correct.\",\"error.password_wrong\":\"Votre mot de passe n’est pas correct.\",\"error.code_wrong\":\"Ce code n’est pas correct. Vérifiez l’heure de votre téléphone et essayez le suivant.\",\"error.twofactor_off\":\"Activez d’abord la connexion à deux facteurs.\",\"error.twofactor_self\":\"Désactivez votre propre connexion à deux facteurs dans Compte.\",\"error.unknown_invite\":\"Cette invitation n’existe plus.\",\"error.origin_needed\":\"Indiquez d’abord l’adresse de ce Runlight (RUNLIGHT_URL sur le serveur, ou origin dans routes()) pour qu’un hub connecté puisse ajouter des domaines de liens et des rapports par e-mail.\",\"error.twofactor_restart\":\"Trop de codes erronés. Recommencez l’activation de la connexion à deux facteurs.\",\"error.pick_origin\":\"Envoyez l’origine du tableau de bord, par exemple https://stats.example.com\",\"error.pick_hub\":\"L’adresse de ce hub n’est pas celle depuis laquelle il s’est connecté. Connectez à nouveau le site depuis ici.\",\"assistant.viewerDaily\":\"Questions par lecteur et par jour\",\"assistant.viewerDailyHint\":\"Chaque question est payée avec votre clé d’IA. Les lecteurs sont les personnes que vous invitez dans Personnes, qui peuvent lire les statistiques sans rien modifier, et chacun peut poser ce nombre de questions par jour. Mettez 0 pour réserver l’assistant aux propriétaires. Les liens de partage n’ont jamais accès à l’assistant.\",\"error.assistant_soon\":\"Vous avez posé beaucoup de questions en peu de temps. Patientez un peu, puis réessayez.\",\"error.assistant_daily\":\"Les lecteurs peuvent poser {limit} questions par jour. Réessayez demain.\",\"error.assistant_limit\":\"Utilisez un nombre entier de 0 à 1 000.\",\"error.token_unset\":\"Définissez RUNLIGHT_TOKEN, ou passez token ou authorize à routes(). Sans cela, Runlight n’est ouvert que lorsque NODE_ENV vaut development.\",\"error.unauthorized\":\"Connectez-vous ou envoyez un jeton pour voir ceci.\",\"error.sign_in\":\"Connectez-vous d’abord.\",\"error.unknown_site\":\"Ce site n’est pas ici.\",\"error.filters_max\":\"Utilisez au plus {max} filtres à la fois.\",\"error.filter_bad\":\"Runlight ne sait pas lire le filtre « {filter} ».\",\"error.range_bad\":\"Ces dates ne forment pas une période que Runlight sait lire.\",\"error.compare_bad\":\"Runlight ne connaît pas la comparaison « {compare} ».\",\"error.compare_range_bad\":\"Choisissez les deux dates de comparaison.\",\"error.send_json\":\"Envoyez ceci en JSON.\",\"error.send_object\":\"Envoyez un objet JSON.\",\"error.unknown_domain\":\"Ce domaine n’appartient pas à ce site.\",\"error.rows_needed\":\"Envoyez les liens sous forme de liste de lignes.\",\"error.unknown_link\":\"Ce lien n’existe plus.\",\"error.not_found\":\"Ce n’est pas ici.\",\"error.unknown_goal\":\"Cet objectif n’existe plus.\",\"error.goal_invalid\":\"L’objectif n’a pas été enregistré ({detail}).\",\"error.funnel_invalid\":\"L’entonnoir n’a pas été enregistré ({detail}).\",\"error.import_failed\":\"L’import s’est arrêté ({detail}).\",\"error.assistant_failed\":\"Le service d’IA n’a pas répondu comme prévu ({detail}).\",\"error.assistant_invalid\":\"L’assistant n’a pas été enregistré ({detail}).\",\"error.site_invalid\":\"Le site n’a pas été enregistré ({detail}).\",\"error.connect_failed\":\"La connexion n’a pas commencé ({detail}).\",\"error.method_not_allowed\":\"Ce n’est pas possible ici.\",\"error.unknown_report\":\"Ce rapport n’existe plus.\",\"error.unknown_share\":\"Ce lien de partage n’existe plus.\",\"error.token_name\":\"Nommez le jeton.\",\"error.token_site\":\"Un jeton qui modifie les réglages est pour un seul site. Choisissez le site.\",\"error.unknown_token\":\"Ce jeton n’existe plus.\",\"error.sites_in_code\":\"Les sites sont définis dans le code ici, alors ils se modifient là.\",\"error.connect_url\":\"Saisissez l’adresse de l’installation, par exemple https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} n’a pas répondu comme une installation Runlight.\",\"error.connect_endpoints\":\"{url} a indiqué des points d’accès sur une autre adresse.\",\"error.connect_old\":\"{url} utilise une ancienne version de Runlight. Mettez-la à jour, ou connectez-la avec un jeton d’API de ses réglages.\",\"error.connect_register\":\"{url} n’a pas laissé ce serveur se connecter. {reason}\",\"error.connect_expired\":\"Cette connexion a pris trop de temps ou a déjà servi. Recommencez.\",\"error.connect_denied\":\"La connexion n’a pas été autorisée.\",\"error.connect_refused\":\"L’installation n’a pas laissé ce serveur se connecter. Recommencez, ou connectez-la avec un jeton d’API.\",\"error.connect_token\":\"L’installation n’a pas donné de jeton à ce serveur. Recommencez.\",\"error.connect_again\":\"Connectez à nouveau ce site pour le modifier d’ici.\",\"error.hub_domains\":\"Un hub connecté ne peut pas changer les domaines d’un site.\",\"error.observe_many\":\"Envoyez au plus 500 requêtes à la fois.\",\"error.observe_url\":\"Envoyez l’adresse de la page.\",\"error.site_remote\":\"Ce site est compté par son propre Runlight. Connectez-le à nouveau depuis ses réglages pour le modifier d’ici.\",\"error.unknown_funnel\":\"Cet entonnoir n’existe plus.\",\"error.assistant_dashboard\":\"Seul le tableau de bord peut utiliser l’assistant.\",\"error.share_not_available\":\"Ce n’est pas disponible sur un tableau de bord partagé.\",\"error.assistant_unset\":\"L’assistant n’est pas encore configuré. Un propriétaire peut le faire dans Réglages, Assistant IA.\",\"error.question_needed\":\"Posez une question.\",\"error.site_name\":\"Un nom de site fait de 1 à 80 caractères.\",\"error.unknown_timezone\":\"Runlight ne connaît pas le fuseau horaire « {timezone} ».\",\"error.retention_bad\":\"Conservez les visites {months} mois, ou pour toujours.\",\"error.share_gone\":\"Ce lien de partage ne fonctionne plus.\",\"error.token_read_only\":\"Les jetons d’API ne peuvent que lire.\",\"error.icon_none\":\"Ce site n’a pas d’icône.\",\"error.event_needed\":\"Nommez l’événement.\",\"error.property_bad\":\"Runlight ne sait pas lire ce nom de propriété.\",\"error.unknown_dimension\":\"Runlight ne connaît pas la répartition « {dimension} ».\",\"error.internal\":\"Une erreur s’est produite sur le serveur. Réessayez.\",\"filter.max\":\"Jusqu’à {max} filtres s’appliquent à la fois. Retirez-en un pour en ajouter un autre.\",\"error.sample_soon_hub\":\"Un hub connecté peut envoyer un exemple toutes les dix minutes. Patientez quelques minutes et réessayez.\",\"people.demoteSelf\":\"Seul le propriétaire ou un administrateur pourra le rétablir.\",\"people.demoteConfirm\":\"Passer en {role}\",\"error.check_not_public\":\"ce n’est pas un nom de domaine public\",\"error.check_timeout\":\"il a mis trop de temps à répondre\",\"error.check_https\":\"il est injoignable en HTTPS\",\"error.check_not_runlight\":\"quelque chose a répondu, mais pas Runlight\",\"error.check_status\":\"il a répondu {status}\",\"error.assistant_address\":\"Saisissez l’adresse du service dans Réglages, Assistant IA.\",\"error.address_refused\":\"{host} est une adresse link-local ou de métadonnées cloud, à laquelle Runlight ne se connecte jamais.\",\"error.assistant_address_bad\":\"Saisissez l’adresse du service, en commençant par https://\",\"error.assistant_cancelled\":\"La question a été annulée.\",\"error.assistant_key\":\"Saisissez votre clé {provider}.\",\"error.assistant_model\":\"Saisissez un modèle dans Réglages, Assistant IA.\",\"error.assistant_no_models\":\"{host} n’a listé aucun modèle. Saisissez plutôt le nom du modèle.\",\"error.assistant_provider\":\"Choisissez un service d’IA dans Réglages, Assistant IA.\",\"error.assistant_refused\":\"{host} a refusé la demande ({detail}).\",\"error.assistant_slow\":\"Cette question a pris trop de temps. Essayez une question plus précise.\",\"error.assistant_status\":\"{host} a répondu {status}.\",\"error.assistant_steps\":\"L’assistant a eu besoin de trop d’étapes pour cette question. Essayez une question plus précise.\",\"error.assistant_timeout\":\"{host} a mis trop de temps à répondre.\",\"error.funnel_exists\":\"Il existe déjà un entonnoir nommé « {name} ».\",\"error.funnel_long\":\"Un entonnoir a au plus huit étapes.\",\"error.funnel_name\":\"Donnez un nom à l’entonnoir.\",\"error.funnel_page_bad\":\"« {match} » n’est ni un chemin ni une URL.\",\"error.funnel_short\":\"Un entonnoir a besoin d’au moins deux étapes.\",\"error.goal_amount\":\"Saisissez un montant, par exemple 49 ou 9,99.\",\"error.goal_click_taken\":\"L’objectif de clic « {match} » envoie déjà des événements portant ce nom.\",\"error.goal_currency\":\"Utilisez un code de devise à trois lettres, comme USD ou EUR.\",\"error.goal_event\":\"Saisissez le nom de l’événement.\",\"error.goal_event_taken\":\"Un objectif d’événement compte déjà les événements « {name} », alors donnez un autre nom à cet objectif de clic.\",\"error.goal_exists\":\"Il existe déjà un objectif nommé « {name} ».\",\"error.goal_kind\":\"Choisissez ce que compte l’objectif, un événement, une visite de page ou un clic.\",\"error.goal_link\":\"Saisissez l’adresse du lien, par exemple https://buy.stripe.com/*\",\"error.goal_name\":\"Donnez un nom à l’objectif.\",\"error.goal_page\":\"Saisissez un chemin de page, par exemple /merci ou /blog/*\",\"error.goal_page_bad\":\"Cette page n’est ni un chemin ni une URL.\",\"error.goal_prop_kind\":\"Seul un objectif d’événement peut prendre son montant dans l’événement. Utilisez plutôt un montant fixe.\",\"error.goal_prop_name\":\"Un nom de propriété utilise des lettres, des chiffres, des points, des tirets et des tirets bas.\",\"error.goal_selector\":\"Saisissez un sélecteur CSS, par exemple #signup ou .buy-button\",\"error.import_day_full\":\"Un jour compte plus de {limit} événements, plus qu’une étape d’import ne peut en lire.\",\"error.import_key\":\"Saisissez votre clé {service}.\",\"error.import_refused\":\"La clé ou la connexion a été refusée.\",\"error.import_slug_bad\":\"/{slug} contient des caractères qu’un slug Runlight ne peut pas utiliser.\",\"error.import_slug_taken\":\"/{slug} est déjà utilisé par « {name} ».\",\"error.import_source\":\"Runlight ne peut pas importer depuis {source}.\",\"error.import_status\":\"{host} a répondu {status}.\",\"error.import_umami_address\":\"Saisissez l’adresse de votre Umami, par exemple https://stats.example.com\",\"error.import_umami_login\":\"Saisissez une clé d’API, ou un nom d’utilisateur et un mot de passe.\",\"error.import_website\":\"Choisissez le site Umami à importer.\",\"error.import_csv_batch\":\"Envoyez au plus {max} lignes à la fois.\",\"error.import_csv_format\":\"Ce fichier n’est ni un export Umami ni au format de visites de Runlight. Vérifiez sa ligne d’en-tête.\",\"error.install_refused\":\"Cette installation a refusé le jeton.\",\"error.install_token\":\"Saisissez un jeton d’API de cette installation.\",\"error.site_domain_invalid\":\"« {host} » n’est pas un nom de domaine.\",\"error.site_domain_needed\":\"Ajoutez le domaine du site, par exemple example.com\",\"error.site_domain_taken\":\"{host} appartient déjà à {site}.\",\"share.goneTitle\":\"Ce lien de partage ne fonctionne plus\",\"error.token_manage_only\":\"Un jeton de gestion ne modifie que les réglages de son propre site.\",\"empty.pages.title\":\"Vos pages principales apparaîtront ici\",\"empty.pages.hint\":\"Chaque page ouverte y figure, avec le temps que les visiteurs y passent.\",\"empty.sources.title\":\"Vos sources de trafic apparaîtront ici\",\"empty.sources.hint\":\"Les recherches et les sites qui vous envoient des visiteurs y sont nommés.\",\"empty.locations.title\":\"Les lieux de vos visiteurs apparaîtront ici\",\"empty.locations.hint\":\"Voyez de quels pays et de quelles villes viennent les visiteurs.\",\"empty.rhythm.title\":\"Vos heures les plus actives apparaîtront ici\",\"empty.rhythm.hint\":\"Chaque heure de la semaine se remplit au fil des visites.\",\"empty.ai.title\":\"Les agents IA qui lisent votre site apparaîtront ici\",\"empty.ai.hint\":\"Les assistants comme ChatGPT et Claude y figurent quand ils lisent vos pages.\",\"empty.devices.title\":\"Les appareils de vos visiteurs apparaîtront ici\",\"empty.devices.hint\":\"Voyez quels navigateurs et quels écrans utilisent les visiteurs.\",\"empty.events.title\":\"Vos événements apparaîtront ici\",\"empty.events.hint\":\"Les clics sur les liens sortants et les événements que vous envoyez sont comptés au fur et à mesure.\",\"empty.campaigns.title\":\"Vos campagnes apparaîtront ici\",\"empty.campaigns.hint\":\"Les visites venues de liens avec des balises UTM sont classées par campagne, source et support.\",\"empty.links.title\":\"Vos liens courts apparaîtront ici\",\"empty.links.hint\":\"Créez un lien court à partager, et chaque clic sera compté.\",\"sites.refused\":\"{host} n’accepte plus la connexion de ce serveur, donc ses chiffres ne peuvent pas être lus. Reconnectez-le pour corriger cela.\",\"sites.connected\":\"Connecté à {host}.\",\"links.totalTip\":\"Tous les clics sur vos liens courts aux dates choisies\",\"links.setup\":\"Comment le configurer\",\"links.recordType\":\"Type\",\"links.recordName\":\"Nom\",\"links.recordValue\":\"Valeur\",\"links.doDns\":\"Ajoutez cet enregistrement chez votre fournisseur DNS.\",\"links.doDnsAlias\":\"Ajoutez cet enregistrement chez votre fournisseur DNS. S’il ne propose pas d’ALIAS, utilisez un enregistrement A vers l’adresse IP de votre serveur.\",\"links.doHttps\":\"Faites servir {domain} en HTTPS par votre hébergeur.\",\"links.doCheck\":\"Vérifiez de nouveau. Un nouvel enregistrement peut mettre quelques minutes à arriver.\",\"links.localNote\":\"Ce tableau de bord tourne sur {host}, donc l’enregistrement fonctionnera une fois qu’il aura une adresse publique.\",\"links.guide\":\"Guide de configuration\",\"funnels.emptyTitle\":\"Vos entonnoirs s’afficheront ici\",\"share.emptyTitle\":\"Vos liens de partage s’afficheront ici\",\"tokens.emptyTitle\":\"Vos jetons s’afficheront ici\",\"reports.emptyTitle\":\"Vos rapports par e-mail s’afficheront ici\",\"journeys.emptyTitle\":\"Les parcours des visiteurs s’afficheront ici\",\"props.emptyTitle\":\"Les détails de cet événement s’afficheront ici\",\"empty.mini\":\"Cette liste se remplit au fil des visites.\",\"empty.search\":\"Rien ici ne correspond encore à « {q} », essayez un autre mot.\",\"delta.fromNone\":\"depuis 0\",\"people.admin\":\"Administrateur\",\"people.member\":\"Membre\",\"people.handOver\":\"Rendre propriétaire\",\"people.handOverHint\":\"Transmet la propriété à cet administrateur, et vous devenez administrateur\",\"people.handOverConfirm\":\"Transmettre\",\"people.demotedMember\":\"Vous êtes désormais membre, donc Personnes et les réglages de toute l’installation vous sont fermés. Le propriétaire ou un administrateur peut le rétablir.\",\"account.admin\":\"Vous êtes administrateur, vous pouvez donc tout modifier et gérer les personnes, sauf le propriétaire.\",\"account.member\":\"Vous êtes membre, vous pouvez donc modifier les réglages de chaque site. Le propriétaire et les administrateurs gèrent les personnes et les réglages de toute l’installation.\",\"mail.adminOnly\":\"Aucun service d’e-mail n’est encore configuré. Le propriétaire ou un administrateur peut en configurer un ici.\",\"error.admin_only\":\"Seul le propriétaire ou un administrateur peut modifier ceci.\",\"error.owner_protected\":\"Personne d’autre que le propriétaire ne peut modifier ou retirer le propriétaire.\",\"error.owner_hand_over\":\"Seul le propriétaire peut transmettre la propriété.\",\"error.owner_needs_admin\":\"Rendez-le d’abord administrateur.\",\"embed.goneTitle\":\"Ce lien vers le tableau de bord ne fonctionne pas\",\"embed.gone\":\"Rouvrez le tableau de bord depuis l'administration de votre site.\",\"embed.expiredTitle\":\"Cette vue a expiré\",\"embed.expired\":\"Le tableau de bord dans votre administration reste ouvert une heure à la fois. Rechargez la page pour l'ouvrir à nouveau.\",\"embed.reload\":\"Recharger la page\",\"embedKey.title\":\"Clé pour le tableau de bord dans votre CMS\",\"embedKey.intro\":\"Avec cette clé dans leurs réglages, les extensions WordPress, Drupal et Craft affichent le tableau de bord de ce site dans votre administration. Elle ouvre la vue en lecture seule qu'affiche un lien de partage et ne peut rien lire elle-même. Supprimez-la dans Réglages, API et IA pour l'arrêter aussitôt.\",\"embedKey.make\":\"Créer une clé\",\"embedKey.another\":\"Créer une autre clé\",\"embedKey.name\":\"Tableau de bord dans un CMS\",\"tokens.embeds\":\"Ouvre le tableau de bord dans un CMS\",\"error.embed_expired\":\"Ce tableau de bord a expiré. Rechargez la page pour l'ouvrir à nouveau.\",\"error.embed_site\":\"Une clé pour le tableau de bord dans un CMS vaut pour un seul site. Choisissez le site.\"}",
|
|
6
|
+
"pt": "{\"app.site\":\"Site\",\"app.confirmDelete\":\"Excluir {name}?\",\"app.signedOut\":\"Abra esta página uma vez com {token} seguido do seu {env} para entrar.\",\"app.live.title\":\"Visitantes nos últimos cinco minutos\",\"app.live_one\":\"{n} agora\",\"app.live_other\":\"{n} agora\",\"headline.who_one\":\"{n} pessoa\",\"headline.who_other\":\"{n} pessoas\",\"headline.visited_one\":\"visitou o site\",\"headline.visited_other\":\"visitaram o site\",\"headline.matched_one\":\"corresponde a estes filtros\",\"headline.matched_other\":\"correspondem a estes filtros\",\"headline.plain\":\"{who} {verb} {when}.\",\"headline.up\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.down\":\"{who} {verb} {when}, {change} que {against}.\",\"headline.same\":\"{who} {verb} {when}, o mesmo que {against}.\",\"headline.more\":\"{pct}% a mais\",\"headline.fewer\":\"{pct}% a menos\",\"headline.lastYear\":\"os mesmos dias do ano passado\",\"when.today\":\"hoje\",\"when.yesterday\":\"ontem\",\"when.7d\":\"nos últimos 7 dias\",\"when.30d\":\"nos últimos 30 dias\",\"when.90d\":\"nos últimos 90 dias\",\"when.month\":\"este mês\",\"when.last_month\":\"no mês passado\",\"when.year\":\"este ano\",\"when.12mo\":\"nos últimos 12 meses\",\"when.all\":\"desde o início das medições\",\"when.range\":\"de {range}\",\"when.day\":\"em {day}\",\"before.today\":\"ontem\",\"before.yesterday\":\"o dia anterior\",\"before.7d\":\"os 7 dias anteriores\",\"before.30d\":\"os 30 dias anteriores\",\"before.90d\":\"os 90 dias anteriores\",\"before.month\":\"o mesmo período anterior\",\"before.last_month\":\"o mês anterior\",\"before.year\":\"o mesmo período anterior\",\"before.12mo\":\"os 12 meses anteriores\",\"before.all\":\"o período anterior\",\"before.range\":\"o mesmo período anterior\",\"period.today\":\"Hoje\",\"period.yesterday\":\"Ontem\",\"period.7d\":\"Últimos 7 dias\",\"period.30d\":\"Últimos 30 dias\",\"period.90d\":\"Últimos 90 dias\",\"period.month\":\"Este mês\",\"period.last_month\":\"Mês passado\",\"period.year\":\"Este ano\",\"period.12mo\":\"Últimos 12 meses\",\"period.all\":\"Todo o período\",\"compare.title\":\"Comparar com\",\"compare.vs\":\"vs\",\"compare.previous\":\"Período anterior\",\"compare.year\":\"Mesmo período do ano passado\",\"compare.custom\":\"Período personalizado\",\"compare.off\":\"Sem comparação\",\"compare.apply\":\"Comparar\",\"compare.dialog\":\"Comparar com\",\"calendar.dialog\":\"Escolher datas\",\"calendar.earlier\":\"Meses anteriores\",\"calendar.later\":\"Meses seguintes\",\"calendar.pick\":\"Escolha um dia de início e um de fim\",\"calendar.range\":\"{from} a {to}\",\"calendar.open\":\"{from} a ...\",\"calendar.apply\":\"Aplicar\",\"common.cancel\":\"Cancelar\",\"common.close\":\"Fechar\",\"common.clearAll\":\"Limpar tudo\",\"common.loading\":\"Carregando\",\"common.search\":\"Buscar\",\"common.none\":\"(nenhum)\",\"metric.visitors\":\"Visitantes\",\"metric.visits\":\"Visitas\",\"metric.pageviews\":\"Visualizações\",\"metric.viewsPerVisit\":\"Páginas por visita\",\"metric.bounceRate\":\"Taxa de rejeição\",\"metric.visitDuration\":\"Duração da visita\",\"hint.visitors\":\"Pessoas diferentes, contadas uma vez por dia\",\"hint.visits\":\"Sessões: uma visita termina após 30 minutos sem atividade\",\"hint.pageviews\":\"Cada página carregada, incluindo repetições\",\"hint.viewsPerVisit\":\"Visualizações divididas por visitas\",\"hint.bounceRate\":\"Uma visita com uma só visualização de página, sem eventos, que dura menos de dez segundos\",\"hint.visitDuration\":\"Tempo médio por visita com a página visível e em foco\",\"delta.title\":\"Em relação ao período de comparação\",\"delta.none\":\"sem mudança\",\"chart.label\":\"{metrics} ao longo do tempo\",\"chart.scaled\":\"Cada linha usa sua própria escala. Passe o cursor para ver os valores.\",\"chart.pick\":\"Clique nos cartões para adicioná-los ao gráfico.\",\"chart.dashed\":\"Tracejado: {range}.\",\"chart.then\":\"antes: {when}\",\"panel.pages\":\"Páginas\",\"panel.sources\":\"Origens\",\"panel.locations\":\"Localizações\",\"panel.rhythm\":\"Quando as pessoas visitam\",\"panel.ai\":\"Agentes de IA\",\"panel.devices\":\"Dispositivos\",\"panel.events\":\"Eventos\",\"panel.campaigns\":\"Campanhas\",\"panel.views\":\"Visões de {title}\",\"panel.empty\":\"Nada neste período\",\"panel.more\":\"Ver tudo\",\"panel.filterBy\":\"Filtrar por {name}\",\"panel.showMap\":\"Ver um mapa\",\"panel.showList\":\"Ver a lista\",\"panel.fullMap\":\"Mapa em tela cheia\",\"tab.top\":\"Mais vistas\",\"tab.entry\":\"Entrada\",\"tab.exit\":\"Saída\",\"tab.channels\":\"Canais\",\"tab.sources\":\"Origens\",\"tab.referrers\":\"Referências\",\"tab.countries\":\"Países\",\"tab.regions\":\"Regiões\",\"tab.cities\":\"Cidades\",\"tab.agents\":\"Agentes\",\"tab.pages\":\"Páginas\",\"tab.device\":\"Dispositivo\",\"tab.browser\":\"Navegador\",\"tab.os\":\"Sistema\",\"tab.screen\":\"Tela\",\"tab.language\":\"Idioma\",\"tab.event\":\"Evento\",\"tab.campaign\":\"Campanha\",\"tab.source\":\"Origem\",\"tab.medium\":\"Mídia\",\"tab.content\":\"Conteúdo\",\"tab.term\":\"Termo\",\"column.visitors\":\"visitantes\",\"column.fetches\":\"acessos\",\"column.events\":\"eventos\",\"column.time\":\"tempo\",\"column.bounce\":\"rejeição\",\"channel.Direct\":\"Direto\",\"channel.Organic Search\":\"Busca orgânica\",\"channel.Paid Search\":\"Busca paga\",\"channel.Social\":\"Redes sociais\",\"channel.Email\":\"E-mail\",\"channel.AI\":\"IA\",\"channel.Referral\":\"Referências\",\"channel.Campaign\":\"Campanha\",\"device.desktop\":\"Computador\",\"device.mobile\":\"Celular\",\"device.tablet\":\"Tablet\",\"ai.live\":\"Leituras ao vivo\",\"ai.crawl\":\"Rastreamentos\",\"rhythm.busiest\":\"Pico: {when}\",\"rhythm.table\":\"Visitas por dia da semana e hora\",\"rhythm.cell_one\":\"{when}: {n} visita\",\"rhythm.cell_other\":\"{when}: {n} visitas\",\"scale.fewer\":\"Menos\",\"scale.more\":\"Mais\",\"map.failed\":\"Não foi possível carregar o mapa\",\"map.label\":\"Visitantes por país: {top}\",\"map.visitors_one\":\"{n} visitante\",\"map.visitors_other\":\"{n} visitantes\",\"map.none\":\"Nenhum visitante\",\"map.title\":\"Pelo mundo\",\"filter.button\":\"Filtrar\",\"filter.remove\":\"Remover filtro\",\"filter.title\":\"Mostrar visitas\",\"filter.where\":\"onde\",\"filter.and\":\"e\",\"filter.field\":\"Campo\",\"filter.match\":\"Condição\",\"filter.is\":\"é\",\"filter.not\":\"não é\",\"filter.contains\":\"contém\",\"filter.value\":\"Valor\",\"filter.placeholder\":\"Digite um valor ou escolha um abaixo\",\"filter.placeholderContains\":\"Qualquer parte do valor\",\"filter.removeCondition\":\"Remover esta condição\",\"filter.add\":\"+ Adicionar uma condição\",\"filter.note\":\"Todas as condições precisam valer. Clique em qualquer linha do painel para adicionar uma sem abrir isto.\",\"filter.apply_one\":\"Aplicar {n} condição\",\"filter.apply_other\":\"Aplicar {n} condições\",\"filter.everything\":\"Mostrar tudo\",\"group.pages\":\"Páginas\",\"group.sources\":\"Origens\",\"group.location\":\"Localização\",\"group.device\":\"Dispositivo\",\"group.behaviour\":\"Comportamento\",\"field.page\":\"Página\",\"field.entry\":\"Página de entrada\",\"field.exit\":\"Página de saída\",\"field.hostname\":\"Nome do host\",\"field.channel\":\"Canal\",\"field.source\":\"Origem\",\"field.referrer\":\"Referência\",\"field.utm_campaign\":\"Campanha\",\"field.utm_source\":\"Origem UTM\",\"field.utm_medium\":\"Mídia UTM\",\"field.utm_content\":\"Conteúdo UTM\",\"field.utm_term\":\"Termo UTM\",\"field.country\":\"País\",\"field.region\":\"Região\",\"field.city\":\"Cidade\",\"field.device\":\"Dispositivo\",\"field.browser\":\"Navegador\",\"field.browser_version\":\"Versão do navegador\",\"field.os\":\"Sistema\",\"field.os_version\":\"Versão do sistema\",\"field.screen\":\"Tela\",\"field.language\":\"Idioma\",\"field.event\":\"Evento\",\"foot.powered\":\"Feito com {name}\",\"foot.language\":\"Idioma\",\"theme.light\":\"Tema claro\",\"theme.dark\":\"Tema escuro\",\"column.visits\":\"visitas\",\"column.pageviews\":\"visualizações\",\"column.scroll\":\"rolagem\",\"column.duration\":\"duração\",\"column.share\":\"parcela\",\"rhythm.typical\":\"{x}× uma hora típica\",\"rhythm.quiet\":\"Nenhuma visita nesta hora\",\"app.home\":\"Voltar à visão geral\",\"settings.open\":\"Configurações\",\"settings.title\":\"Configurações\",\"settings.general\":\"Geral\",\"settings.install\":\"Instalação\",\"settings.siteName\":\"Nome do site\",\"settings.timezone\":\"Fuso horário\",\"settings.timezoneHint\":\"Os dias dos seus relatórios começam à meia-noite neste fuso.\",\"settings.save\":\"Salvar\",\"settings.saving\":\"Salvando\",\"settings.saved\":\"Salvo\",\"settings.language\":\"Idioma\",\"settings.languageHint\":\"Só para este navegador.\",\"settings.theme\":\"Tema\",\"settings.themeSystem\":\"Configuração do dispositivo\",\"settings.themeLight\":\"Claro\",\"settings.themeDark\":\"Escuro\",\"install.live\":\"Recebendo visitas. A última foi {when}.\",\"install.none\":\"Nenhuma visita ainda. Adicione o script abaixo e abra uma página do seu site.\",\"install.script\":\"Adicione isto a todas as páginas, logo antes de {tag}.\",\"install.copy\":\"Copiar\",\"install.copied\":\"Copiado\",\"install.events\":\"Cliques em qualquer elemento são contados sem JavaScript.\",\"install.eventsJs\":\"Você também pode enviar eventos por JavaScript, para o que não é clique.\",\"install.agents\":\"Para ver agentes de IA como ChatGPT e Claude lendo suas páginas, passe cada requisição ao Runlight no seu middleware com o código abaixo.\",\"install.ignore\":\"Suas próprias visitas\",\"install.ignored\":\"Suas visitas deste navegador não são contadas.\",\"install.counted\":\"Suas visitas deste navegador são contadas.\",\"install.ignoreButton\":\"Ignorar este navegador\",\"install.trackButton\":\"Voltar a contar este navegador\",\"install.ignoreElsewhere\":\"O painel está em outro domínio que o site? Abra {link} uma vez em cada navegador que você usa.\",\"theme.system\":\"Configuração do dispositivo\",\"theme.cycle\":\"Tema: {current}. Clique para {next}.\",\"panel.links\":\"Links\",\"links.new\":\"Novo link\",\"links.manage\":\"Gerenciar\",\"links.clicks\":\"cliques\",\"links.url\":\"URL de destino\",\"links.urlPlaceholder\":\"https://exemplo.com/um/endereco/longo\",\"links.name\":\"Nome\",\"links.namePlaceholder\":\"Opcional, para você\",\"links.slug\":\"Identificador\",\"links.slugPlaceholder\":\"Deixe vazio para um aleatório\",\"links.domain\":\"Domínio\",\"links.create\":\"Criar link\",\"links.save\":\"Salvar alterações\",\"links.created\":\"Seu link curto está pronto.\",\"links.another\":\"Criar outro\",\"links.edit\":\"Editar link\",\"links.delete\":\"Excluir\",\"links.confirmDelete\":\"Excluir {name}? Os cliques continuam nas suas estatísticas.\",\"links.copy\":\"Copiar\",\"links.copied\":\"Copiado\",\"links.search\":\"Buscar links\",\"links.sortClicks\":\"Mais clicados\",\"links.sortNewest\":\"Mais recentes\",\"links.sortName\":\"Nome\",\"links.import\":\"Importar CSV\",\"links.importDone_one\":\"{n} link importado.\",\"links.importDone_other\":\"{n} links importados.\",\"links.importFailed\":\"Linha {row}: {reason}\",\"links.importHelp\":\"Use as colunas name e url, e também slug e domain se as tiver.\",\"links.destination\":\"Leva a\",\"links.clicksOverTime\":\"Cliques ao longo do tempo\",\"links.sources\":\"Origens\",\"links.countries\":\"Países\",\"links.devices\":\"Dispositivos\",\"links.browsers\":\"Navegadores\",\"links.total_one\":\"{n} clique\",\"links.total_other\":\"{n} cliques\",\"links.domains\":\"Domínios para links curtos\",\"links.domainsHelp\":\"Use um domínio ou subdomínio seu para os links curtos, como t.exemplo.com. Os links ficam na raiz: t.exemplo.com/promo.\",\"links.addDomain\":\"Adicionar domínio\",\"links.domainPlaceholder\":\"t.exemplo.com\",\"links.ownDomain\":\"Este site ({prefix})\",\"links.removeDomain\":\"Remover\",\"settings.links\":\"Domínios personalizados\",\"links.confirm\":\"Confirmar\",\"links.editButton\":\"Editar\",\"links.step1\":\"No seu provedor de DNS, adicione um registro CNAME para o subdomínio apontando para {host}, onde este painel roda. Para um domínio sem subdomínio, use um registro A ou ALIAS para o mesmo servidor.\",\"links.step2\":\"Faça seu provedor de hospedagem aceitar o domínio com HTTPS: adicione-o aos domínios do seu projeto na Vercel ou Netlify, ou à configuração e ao certificado do seu servidor. Se o Runlight roda dentro do seu app, passe as requisições para rl.linkDomainResponse() no seu middleware.\",\"links.step3\":\"Adicione o domínio abaixo. O Runlight então verifica se ele chega a este painel.\",\"links.checking\":\"Verificando\",\"links.working\":\"Funcionando\",\"links.notWorking\":\"Ainda não chega ao Runlight: {reason}\",\"links.recheck\":\"Verificar de novo\",\"links.sortBy\":\"Ordenar links\",\"links.removeNote\":\"Remover um domínio mantém os links, cliques e estatísticas: eles passam para {fallback} até você adicionar o domínio de novo, e então voltam para ele.\",\"links.removedDomain\":\"{domain}/ (removido)\",\"prompt.copy\":\"Copiar prompt\",\"prompt.domainHint\":\"Copie estes passos, já com seus endereços, e cole nele.\",\"prompt.installHint\":\"Copie os passos de instalação e cole nele.\",\"links.showing\":\"Mostrando {shown} de {total}\",\"links.showMore\":\"Mostrar mais {n}\",\"links.clicksLabel\":\"Cliques\",\"links.createdOn\":\"Criado em {date}\",\"settings.import\":\"Importar\",\"import.intro\":\"Traga seus links curtos de outro serviço, com o histórico de cliques quando o serviço o compartilha. Sua chave ou senha só é usada nesta importação e nunca é salva. Importar de novo pula os links que já estão aqui.\",\"import.source\":\"Importar de\",\"import.csv\":\"Qualquer CSV\",\"import.url\":\"Endereço do Umami\",\"import.apiKey\":\"Chave de API\",\"import.username\":\"Usuário\",\"import.password\":\"Senha\",\"import.signIn\":\"Entrar com\",\"import.withKey\":\"Chave de API\",\"import.withPassword\":\"Usuário e senha\",\"import.start\":\"Começar importação\",\"import.stop\":\"Parar\",\"import.running\":\"Importando {done} de {total} links\",\"import.done\":\"Pronto: {links} links e {clicks} cliques importados, {skipped} já estavam aqui.\",\"import.stopped\":\"Parado após {done} de {total} links. Comece de novo para continuar; links já importados são pulados.\",\"import.failed\":\"Estes não puderam ser importados.\",\"import.history.full\":\"Isto importa cada clique, com país, dispositivo, navegador e referência.\",\"import.history.daily\":\"Isto importa os cliques por dia, sem país nem dispositivo.\",\"import.history.none\":\"Só links: o serviço não compartilha cliques com data.\",\"import.umamiHelp\":\"No Umami, crie uma chave de API em Configurações, Chaves de API. O Umami auto-hospedado padrão não tem chaves de API, então entre com seu usuário e senha. Qualquer um deles é usado só nesta importação e nunca é salvo.\",\"import.csvHelp\":\"Use as colunas name e url, e também slug e domain se as tiver.\",\"import.chooseFile\":\"Escolher um arquivo CSV\",\"import.token\":\"Token de acesso\",\"import.workspace\":\"Id do workspace (opcional)\",\"import.dubHelp\":\"No Dub, crie uma chave de API em Settings, API Keys, com leitura de links e análises. Cada clique vem no plano Business, totais diários no Pro, só links no Free.\",\"import.bitlyHelp\":\"No Bitly, vá em Settings, API, digite sua senha e gere um token. O Bitly guarda só totais diários, até onde seu plano permite (nada no Free).\",\"import.shortioHelp\":\"No Short.io, abra Integrations and API e crie uma chave secreta (uma chave pública não lê links). O Short.io permite 60 requisições de estatísticas por minuto, então esta importação vai no ritmo dele.\",\"import.rebrandlyHelp\":\"No Rebrandly, crie uma chave de API em Settings, API keys. O Rebrandly só compartilha o total de cliques, então os links chegam sem histórico.\",\"import.soFar_one\":\"{n} link importado até agora\",\"import.soFar_other\":\"{n} links importados até agora\",\"import.moveNote\":\"Links no domínio do serviço (bit.ly, dub.sh, rebrand.ly, short.gy) passam para {fallback} com o mesmo identificador; domínios próprios são adicionados em Domínios personalizados.\",\"prompt.title\":\"Usa um assistente de código?\",\"compare.allTime\":\"Não há nada antes de todo o período para comparar.\",\"view.reset\":\"Redefinir\",\"view.resetHint\":\"Voltar aos últimos 30 dias, sem filtros nem comparação\",\"settings.sharing\":\"Compartilhar\",\"share.intro\":\"Um link de compartilhamento mostra as estatísticas deste site a quem o tiver, sem login: os números, as páginas, as fontes e os locais. Nunca mostra seus links curtos, suas configurações nem o endereço do site.\",\"share.namePlaceholder\":\"Para quem é, como um cliente ou sua equipe\",\"share.create\":\"Criar link de compartilhamento\",\"share.empty\":\"Crie um abaixo e envie para quem deve ver estas estatísticas.\",\"share.unnamed\":\"Sem título\",\"share.open\":\"Abrir\",\"share.rename\":\"Renomear\",\"share.save\":\"Salvar\",\"share.revokeNote\":\"Apagar um link de compartilhamento o desativa na hora. Quem o tinha passa a ver uma página avisando.\",\"share.gone\":\"Quem o compartilhou o desativou. Peça um link novo.\",\"live.title\":\"Agora mesmo\",\"live.sub\":\"Atualiza a cada 10 segundos\",\"live.now_one\":\"{n} pessoa no site\",\"live.now_other\":\"{n} pessoas no site\",\"live.nowHint\":\"Quem viu uma página ou fez algo nos últimos 5 minutos.\",\"live.total_one\":\"{n} visualização nos últimos 30 minutos\",\"live.total_other\":\"{n} visualizações nos últimos 30 minutos\",\"live.minute_one\":\"{n} visualização às {time}\",\"live.minute_other\":\"{n} visualizações às {time}\",\"live.ago30\":\"há 30 min\",\"live.nowLabel\":\"Agora\",\"live.pages\":\"Páginas\",\"live.sources\":\"Fontes\",\"live.countries\":\"Países\",\"live.nobody\":\"Os visitantes aparecem aqui assim que chegam.\",\"live.feed\":\"Atividade recente\",\"live.quiet\":\"As visitas dos últimos 30 minutos aparecem aqui.\",\"live.someone\":\"Alguém\",\"live.someoneIn\":\"Alguém em {place}\",\"live.viewed\":\"{who} viu {path}\",\"live.viewedVia\":\"{who} viu {path} vindo de {source}\",\"live.did\":\"{who} fez {name} em {path}\",\"live.didVia\":\"{who} fez {name} em {path}, vindo de {source}\",\"welcome.title\":\"Adicione o Runlight a {name}\",\"welcome.lead\":\"Aguardando a primeira visita. Esta página se preenche sozinha quando ela chegar.\",\"settings.goals\":\"Metas\",\"settings.funnels\":\"Funis\",\"panel.conversions\":\"Conversões\",\"goals.revenueAside\":\"{amount} de receita\",\"goals.add\":\"Adicionar meta\",\"goals.emptyTitle\":\"Suas metas vão aparecer aqui\",\"goals.emptyHint\":\"Uma meta conta o que importa para você, como um cadastro ou um clique em um botão. Uma meta de evento ou de página conta também as visitas passadas, e uma meta de clique conta a partir de quando é adicionada.\",\"goals.goal\":\"Meta\",\"goals.rate\":\"Taxa\",\"goals.conversions\":\"Conversões\",\"goals.unknown\":\"(nenhum)\",\"goals.converted\":\"Pessoas que converteram\",\"goals.revenue\":\"Receita\",\"goals.overTime\":\"Conversões ao longo do tempo\",\"goals.overTimeValued\":\"Conversões e receita ao longo do tempo, cada uma na sua escala\",\"goals.byChannel\":\"Por canal\",\"goals.bySource\":\"Por fonte\",\"goals.byPage\":\"Onde aconteceu\",\"goals.describe.event\":\"Evento: {match}\",\"goals.describe.page\":\"Visitas a {match}\",\"goals.describe.selector\":\"Cliques em {match}\",\"goals.describe.link\":\"Cliques em links para {match}\",\"goals.value.each\":\"{amount} cada\",\"goals.value.fromProp\":\"valor em {prop}, em {currency}\",\"goals.name\":\"Nome\",\"goals.namePlaceholder\":\"Cadastro, Compra, Ligação agendada\",\"goals.counts\":\"Conta\",\"goals.kind.event\":\"Um evento\",\"goals.kind.page\":\"Uma página visitada\",\"goals.kind.click\":\"Um clique\",\"goals.clickOn\":\"Cliques em\",\"goals.click.selector\":\"Um elemento\",\"goals.click.link\":\"Links para um endereço\",\"goals.match.event\":\"Nome do evento\",\"goals.match.page\":\"Página\",\"goals.match.link\":\"Endereço do link\",\"goals.match.selector\":\"Seletor CSS\",\"goals.pick\":\"Escolher no meu site\",\"goals.picking\":\"Aguardando sua escolha\",\"goals.hint.event\":\"O nome enviado com runlight(\\\"Nome\\\") ou um atributo data-runlight.\",\"goals.hint.page\":\"Um caminho como /obrigado. Use * para qualquer coisa: /blog/* ou /obrigado*. Uma URL completa também serve.\",\"goals.hint.link\":\"Cliques em links cujo endereço corresponde. Use * para qualquer coisa, como https://buy.stripe.com/*, ou comece com / para suas próprias páginas.\",\"goals.hint.selector\":\"Qualquer seletor CSS. Ou use Escolher no meu site: seu site abre, você clica no elemento e depois em Usar.\",\"goals.valueLabel\":\"Valor\",\"goals.value.none\":\"Nenhum\",\"goals.value.fixed\":\"Um valor fixo\",\"goals.value.prop\":\"Um valor enviado com o evento\",\"goals.amount\":\"Valor a cada vez\",\"goals.property\":\"Propriedade com o valor\",\"goals.currency\":\"Moeda\",\"goals.save\":\"Salvar meta\",\"goals.create\":\"Adicionar meta\",\"goals.cancel\":\"Cancelar\",\"goals.edit\":\"Editar\",\"goals.intro\":\"Metas transformam visitas em conversões. Cada uma conta um evento, uma página visitada ou um clique, e pode ter um valor em dinheiro para ver a receita por fonte e página.\",\"goals.none\":\"Adicione um abaixo para começar a contá-lo.\",\"goals.pastNote\":\"As metas são calculadas com os dados que você já tem, então uma meta nova mostra conversões passadas também. Metas de clique começam a contar cerca de cinco minutos depois de adicionadas.\",\"settings.email\":\"Relatórios por email\",\"settings.mail\":\"Serviço de e-mail\",\"mail.intro\":\"O Runlight envia relatórios e convites pelo seu próprio serviço de e-mail. Configure uma vez e todos os sites passam a usá-lo.\",\"mail.service\":\"Serviço\",\"mail.optional\":\"(opcional)\",\"mail.keepSaved\":\"Salvo. Deixe em branco para manter.\",\"mail.from\":\"Endereço de envio\",\"mail.fromName\":\"Nome do remetente\",\"mail.fromHint\":\"Use um endereço que seu serviço permita, em um domínio verificado nele.\",\"mail.save\":\"Salvar serviço\",\"mail.change\":\"Alterar\",\"mail.fromLine\":\"Envia de {from}\",\"mail.fromCode\":\"Definido no código. Envia de {from}\",\"mail.testTo\":\"Enviar um teste para\",\"mail.test\":\"Enviar teste\",\"mail.testSent\":\"Teste enviado para {to}. Veja a caixa de entrada e o spam.\",\"mail.notEncryptedTitle\":\"Suas chaves serão guardadas sem criptografia\",\"mail.notEncrypted\":\"Este Runlight não tem RUNLIGHT_SECRET, então as chaves ficam no banco de dados exatamente como você as digita. Defina RUNLIGHT_SECRET ou RUNLIGHT_TOKEN no servidor para mantê-las criptografadas.\",\"mail.field.region\":\"Região\",\"mail.field.accessKeyId\":\"ID da chave de acesso\",\"mail.field.secretAccessKey\":\"Chave de acesso secreta\",\"mail.field.apiKey\":\"Chave de API\",\"mail.field.serverToken\":\"Token de API do servidor\",\"mail.field.stream\":\"Fluxo de mensagens\",\"mail.field.domain\":\"Domínio de envio\",\"mail.field.secretKey\":\"Chave secreta\",\"mail.field.host\":\"Host\",\"mail.field.port\":\"Porta\",\"mail.field.security\":\"Segurança\",\"mail.field.username\":\"Usuário\",\"mail.field.password\":\"Senha\",\"mail.field.url\":\"URL\",\"mail.field.secret\":\"Segredo de assinatura\",\"reports.title\":\"Quem recebe relatórios\",\"reports.intro\":\"Um resumo de {site} por email: visitantes, páginas, fontes, países e conversões, comparados ao período anterior.\",\"reports.none\":\"Adicione um endereço de e-mail abaixo para começar a enviá-los.\",\"reports.weekly\":\"Semanal\",\"reports.monthly\":\"Mensal\",\"reports.frequency\":\"Frequência\",\"reports.language\":\"Idioma\",\"reports.lastSent\":\"último envio {when}\",\"reports.never\":\"ainda não\",\"reports.sample\":\"Enviar um exemplo agora\",\"reports.sampleSent\":\"Exemplo enviado para {to}.\",\"reports.emailPlaceholder\":\"nome@exemplo.com\",\"reports.add\":\"Adicionar\",\"reports.when\":\"Relatórios semanais cobrem de segunda a domingo e saem na segunda a partir das 8h, os mensais no dia 1, no fuso do site. Quem envia é a verificação de hora em hora (um cron que chama POST /api/check).\",\"reports.needsMail\":\"Os relatórios começam a sair quando houver um serviço de e-mail configurado. Um só serviço os envia para todos os sites.\",\"reports.setUpMail\":\"Configurar serviço de e-mail\",\"reports.needsMailTitle\":\"Ainda sem serviço de e-mail\",\"email.subject.week\":\"{site}: {who} na semana passada\",\"email.subject.month\":\"{site}: {who} em {month}\",\"email.when.week\":\"na semana passada\",\"email.before.week\":\"a semana anterior\",\"email.when.month\":\"em {month}\",\"email.range\":\"de {from} a {to}\",\"email.pages\":\"Páginas principais\",\"email.sources\":\"Fontes principais\",\"email.countries\":\"Países principais\",\"email.conversions\":\"Conversões\",\"email.open\":\"Abrir o painel\",\"email.at\":\"Seu painel fica em {where}\",\"email.footer\":\"Você recebe este relatório {frequency} de {site} pelo Runlight.\",\"email.weekly\":\"semanal\",\"email.monthly\":\"mensal\",\"email.unsubscribe\":\"Cancelar inscrição\",\"email.test.subject\":\"O Runlight consegue enviar email\",\"email.test.body\":\"Este teste veio por {service}. Os relatórios dos seus sites chegarão do mesmo jeito.\",\"email.unsub.title\":\"Parar os relatórios de {site}?\",\"email.unsub.body\":\"{email} não receberá mais relatórios deste site.\",\"email.unsub.doneTitle\":\"Inscrição cancelada\",\"email.unsub.done\":\"Nenhum relatório de {site} chegará mais a {email}.\",\"email.unsub.goneTitle\":\"Nada para cancelar\",\"email.unsub.gone\":\"Este link já foi usado, ou o relatório foi removido.\",\"settings.api\":\"API e IA\",\"tokens.intro\":\"Pergunte ao seu assistente de IA sobre suas estatísticas. Crie um token e adicione o Runlight ao Claude, ao Cursor ou a qualquer app que se conecte a servidores MCP. Um token de leitura nunca altera nada, e um token de gestão pode alterar as configurações de um site. O mesmo token funciona com a API HTTP.\",\"tokens.server\":\"Endereço do servidor MCP\",\"tokens.namePlaceholder\":\"Para que serve, como Claude ou um script\",\"tokens.scope\":\"Quais sites ele pode ler\",\"tokens.allSites\":\"Todos os sites\",\"tokens.siteOnly\":\"Só {site}\",\"tokens.create\":\"Criar token\",\"tokens.empty\":\"Crie um abaixo para conectar um assistente de IA ou um script.\",\"tokens.used\":\"usado em {date}\",\"tokens.never\":\"nunca usado\",\"tokens.revokeNote\":\"Apagar um token faz ele parar de funcionar na hora.\",\"tokens.once\":\"Copie este token agora. Ele aparece só uma vez, e o Runlight guarda apenas uma impressão dele.\",\"tokens.claudeCode\":\"O Claude Code recebe o token com este comando.\",\"tokens.json\":\"O Cursor e outros apps que usam uma configuração JSON mcpServers usam isto no lugar.\",\"tokens.done\":\"Pronto, já copiei\",\"sites.domains\":\"Domínios\",\"sites.domainsHint\":\"Informe o domínio do site, como example.com, e separe vários com vírgulas.\",\"sites.name\":\"Nome\",\"sites.namePlaceholder\":\"Meu blog\",\"sites.timezoneHint\":\"Os dias são contados em {zone}, e você pode mudar isso depois nas configurações.\",\"sites.add\":\"Adicionar site\",\"sites.addTitle\":\"Adicionar um site\",\"sites.firstTitle\":\"Adicione seu primeiro site\",\"sites.firstLead\":\"O Runlight conta cada site que você adicionar aqui. Informe o domínio do site, e a próxima tela mostra a tag de script para colocar nas páginas dele.\",\"sites.delete\":\"Excluir este site\",\"sites.deleteHint\":\"Excluir um site apaga todas as visitas, links, metas e relatórios dele, e isso não pode ser desfeito.\",\"app.signOut\":\"Sair\",\"install.ignoreServer\":\"Para parar de contar suas próprias visitas, abra {link} uma vez em cada navegador que você usa.\",\"panel.geoCredit\":\"Localizações por {name}\",\"visits.tab\":\"Visitas\",\"visits.linksTab\":\"Links curtos\",\"visits.intro\":\"Traga seu histórico de visitas para que seus gráficos voltem a antes de o Runlight começar a contar. Só vêm as visitas anteriores à primeira do Runlight, então nada é contado duas vezes.\",\"visits.onlyUmami\":\"A API do Umami entrega cada visita com página, origem, lugar e dispositivo, que é o que o Runlight guarda. Plausible, Fathom e Google Analytics só fornecem totais, e totais não viram visitas de novo. Se você tem cada visualização de página num arquivo, importe-o como CSV.\",\"visits.csvMoment\":\"Mais de {max} linhas compartilham o mesmo momento, mais do que cabe num lote.\",\"visits.csvStopped\":\"Parado. Importar o mesmo arquivo de novo é seguro, porque as linhas já trazidas são substituídas.\",\"visits.csvSkipped\":\"{n} linhas ficaram de fora porque vieram depois da primeira visita própria do Runlight, antes do que este site guarda, ou não eram uma visualização nem um evento com nome.\",\"visits.csvRunning\":\"{done} de {total} linhas enviadas, {pageviews} visualizações até agora\",\"visits.csvRunlight\":\"{name} está no formato de visitas do Runlight, com {rows} linhas.\",\"visits.csvUmami\":\"{name} é uma exportação do Umami com {rows} linhas.\",\"visits.csvOther\":\"Escolher outro arquivo\",\"visits.csvChoose\":\"Escolher arquivo CSV\",\"visits.csvHelp\":\"Use o CSV da exportação de dados do Umami, ou um arquivo com uma linha por visualização de página no formato de visitas do Runlight, descrito na documentação do painel.\",\"visits.fromCsv\":\"Um arquivo CSV\",\"visits.fromUmami\":\"Umami\",\"visits.from\":\"Importar de\",\"visits.onlyUmamiTitle\":\"Por que só o Umami\",\"visits.find\":\"Buscar sites\",\"visits.website\":\"Site do Umami\",\"visits.noWebsites\":\"Esta conta do Umami não tem sites.\",\"visits.start\":\"Importar visitas\",\"visits.running\":\"{done} de {total} dias lidos, {pageviews} visualizações até agora\",\"visits.done\":\"Pronto. {pageviews} visualizações e {events} eventos chegaram em {visits} visitas.\",\"visits.stopped\":\"Parado. Comece de novo para continuar do último dia importado.\",\"props.title\":\"Propriedades\",\"props.open\":\"Propriedades de {name}\",\"props.none\":\"Eles aparecem quando o evento é enviado com propriedades.\",\"account.title\":\"Conta\",\"account.owner\":\"Você é o proprietário, então pode mudar tudo e gerenciar pessoas. Ninguém mais pode remover você.\",\"account.viewer\":\"Você é leitor, então pode ver as estatísticas de cada site sem mudar nada.\",\"account.current\":\"Senha atual\",\"account.next\":\"Nova senha\",\"account.nextHint\":\"Use pelo menos dez caracteres. Mudar a senha encerra a sessão nos seus outros navegadores.\",\"account.save\":\"Mudar senha\",\"account.saved\":\"Senha alterada\",\"settings.people\":\"Pessoas\",\"people.intro\":\"Todos aqui podem entrar neste servidor. Administradores podem mudar tudo o que o proprietário muda e gerenciar pessoas, mas ninguém pode remover o proprietário. Membros mudam as configurações de cada site, e leitores leem as estatísticas de cada site sem mudar nada. Convide um colega e ele escolhe a própria senha.\",\"people.you\":\"você\",\"people.role\":\"Função\",\"people.owner\":\"Proprietário\",\"people.viewer\":\"Leitor\",\"people.roles\":\"Membros não podem gerenciar pessoas, configurar o serviço de e-mail ou o assistente, nem excluir um site. Só o proprietário pode passar a propriedade a um administrador.\",\"people.emailPlaceholder\":\"O e-mail da pessoa\",\"pluginKey.title\":\"Chave para plugins de CMS\",\"pluginKey.intro\":\"Os plugins de WordPress, Drupal e Craft usam esta chave para informar os agentes de IA que leem as páginas deste site. Ela só informa para este site e não lê nada. Substituí-la faz a antiga parar na hora.\",\"pluginKey.replace\":\"Substituir chave\",\"export.csv\":\"Baixar CSV\",\"export.zip\":\"Exportar\",\"export.title\":\"Baixar tudo desta visão em arquivos CSV\",\"funnels.title\":\"Funis\",\"funnels.intro\":\"Um funil segue os passos que você espera que uma visita dê, como a página de preços e depois o cadastro, e mostra quantas visitas passaram por cada passo, em ordem.\",\"funnels.none\":\"Adicione um abaixo para ver onde as pessoas param no caminho.\",\"funnels.add\":\"Adicionar funil\",\"funnels.name\":\"Nome\",\"funnels.namePlaceholder\":\"Cadastro\",\"funnels.steps\":\"Passos\",\"funnels.stepsHint\":\"Um caminho de página pode usar * para qualquer coisa, como /blog/*. Cada passo precisa acontecer depois do anterior, na mesma visita.\",\"funnels.kind\":\"Tipo de passo\",\"funnels.page\":\"Página\",\"funnels.event\":\"Evento\",\"funnels.removeStep\":\"Remover este passo\",\"funnels.addStep\":\"Adicionar um passo\",\"funnels.save\":\"Salvar funil\",\"funnels.create\":\"Criar funil\",\"funnels.stepPage\":\"Página {match}\",\"funnels.stepEvent\":\"Evento {match}\",\"funnels.wentOn\":\"{pct} seguiram\",\"funnels.tab\":\"Funis\",\"funnels.goalsTab\":\"Metas\",\"sites.modeHere\":\"Contar aqui\",\"sites.modeConnect\":\"Conectar outro Runlight\",\"sites.connectIntro\":\"Conecte aqui um site que já se conta com o Runlight dentro do próprio app. Os números dele ficam lá. Você entra nele uma vez e autoriza este servidor, e depois pode ver e mudar o site daqui.\",\"sites.connectUrl\":\"O endereço do Runlight\",\"sites.connectToken\":\"Token de API\",\"sites.connectTokenHint\":\"Crie um token nessa instalação, em Configurações, API e IA. Com um token de leitura os números aparecem aqui e as configurações ficam lá.\",\"sites.connect\":\"Conectar\",\"sites.all\":\"Todos os sites\",\"sites.remoteNote\":\"Este site é contado pelo próprio Runlight em {url}, que deixa este servidor lê-lo. Permita mudanças para gerenciar também as configurações daqui.\",\"sites.disconnect\":\"Desconectar este site\",\"sites.disconnectHint\":\"Desconectar remove o site deste servidor. O próprio Runlight dele e tudo o que contou continuam como estão.\",\"sites.disconnectButton\":\"Desconectar site\",\"sites.confirmDisconnect\":\"Confirmar desconexão\",\"sites.disconnectName\":\"Desconectar {name}?\",\"settings.data\":\"Dados\",\"data.retention\":\"Manter visitas por\",\"data.retentionHint\":\"Visitas e eventos mais antigos são apagados de vez ao salvar e depois todos os dias. Metas, links e configurações continuam.\",\"data.forever\":\"Sempre\",\"data.months\":\"{n} meses\",\"data.years\":\"{n} anos\",\"data.deletesBefore\":\"As visitas anteriores a {date} serão apagadas ao salvar.\",\"data.unreachable\":\"Não foi possível contactar {url} para ler esta definição. Tente de novo dentro de um minuto.\",\"data.export\":\"Exportar tudo\",\"data.exportHint\":\"O ZIP traz todos os relatórios deste site desde a primeira visita, como arquivos CSV.\",\"data.download\":\"Baixar ZIP\",\"sites.remoteTitle\":\"Contado por outro Runlight\",\"sites.openRemote\":\"Abrir o painel dele\",\"sites.useToken\":\"Usar um token de API\",\"sites.useSignIn\":\"Entrar nele\",\"sites.remoteManaged\":\"Este site é contado pelo próprio Runlight em {url}. As mudanças feitas aqui são salvas lá.\",\"sites.allowChanges\":\"Permitir mudanças\",\"sites.reconnect\":\"Ligar de novo\",\"sites.reconnectHint\":\"Use isto se a instalação já não aceitar este servidor, por exemplo depois de o token ter sido apagado lá.\",\"sites.connectError.expired\":\"Essa conexão demorou demais ou já foi usada. Comece de novo.\",\"sites.connectError.denied\":\"A conexão não foi permitida.\",\"sites.connectError.refused\":\"A instalação não deixou este servidor se conectar. Comece de novo ou conecte-a com um token de API.\",\"sites.connectError.token\":\"A instalação não deu um token a este servidor. Comece de novo.\",\"sites.connectError.failed\":\"A conexão não foi concluída. Comece de novo.\",\"mail.fromRemote\":\"Enviado por {host} a partir de {from}\",\"mail.noneRemote\":\"{host} ainda não tem serviço de e-mail, então não pode enviar estes relatórios. Configure um no próprio painel dele, em Configurações, Serviço de e-mail.\",\"tokens.manages\":\"Pode mudar configurações\",\"account.again\":\"Repita a nova senha\",\"account.mismatch\":\"As duas senhas novas não são iguais.\",\"account.strength0\":\"Curta demais\",\"account.strength1\":\"Fraca\",\"account.strength2\":\"Razoável\",\"account.strength3\":\"Boa\",\"account.strength4\":\"Forte\",\"mail.introRemote\":\"Os relatórios deste site saem pelo serviço de e-mail configurado em {host}.\",\"settings.assistant\":\"Assistente de IA\",\"assistant.open\":\"Perguntar sobre suas estatísticas\",\"assistant.title\":\"Assistente de IA\",\"assistant.about\":\"Ele responde a partir dos números de {site}, que lê no momento em que você pergunta.\",\"assistant.clear\":\"Nova conversa\",\"assistant.intro\":\"Pergunte sobre visitantes, origens, páginas, metas ou qualquer coisa que este painel mostra.\",\"assistant.ask1\":\"Como este período se compara com o anterior?\",\"assistant.ask2\":\"De onde vem a maioria dos visitantes?\",\"assistant.ask3\":\"Quais páginas prendem as pessoas por mais tempo?\",\"assistant.ask4\":\"Assistentes de IA estão mandando visitantes para cá?\",\"assistant.placeholder\":\"Faça uma pergunta\",\"assistant.send\":\"Enviar\",\"assistant.thinking\":\"Lendo seus números\",\"assistant.empty\":\"O assistente não respondeu nada.\",\"assistant.checked_one\":\"Leu {n} relatório\",\"assistant.checked_other\":\"Leu {n} relatórios\",\"assistant.setupOwner\":\"O assistente precisa de um serviço de IA para responder. Adicione uma chave da Anthropic, OpenAI ou Gemini, ou aponte para um modelo na sua própria máquina.\",\"assistant.setupViewer\":\"O assistente ainda não está configurado. O proprietário ou um administrador pode adicionar um serviço de IA em Configurações, Assistente de IA.\",\"assistant.setup\":\"Configurar o assistente\",\"assistant.ownersOnly\":\"Só o proprietário ou um administrador pode configurar o assistente.\",\"assistant.settingsIntro\":\"Escolha um serviço de IA e cole abaixo uma chave de API dele. Depois, o botão do robô ao lado de Filtrar abre um assistente que responde perguntas sobre suas estatísticas em palavras simples.\",\"assistant.privacyTitle\":\"O que o serviço vê\",\"assistant.privacy\":\"Cada pergunta vai para esse serviço com os números que o assistente lê para responder. O Runlight não guarda nada sobre visitantes individuais, então nada pessoal é enviado. O assistente só lê, com as mesmas ferramentas do servidor MCP, então nunca pode mudar nada.\",\"assistant.notEncryptedTitle\":\"Sua chave será guardada sem criptografia\",\"assistant.notEncrypted\":\"Este Runlight não tem RUNLIGHT_SECRET, então a chave fica no banco de dados exatamente como você a digita. Defina RUNLIGHT_SECRET ou RUNLIGHT_TOKEN no servidor para mantê-la criptografada.\",\"assistant.provider\":\"Serviço de IA\",\"assistant.address\":\"Endereço\",\"assistant.addressHint\":\"Onde fica a API compatível com OpenAI do serviço, sem /chat/completions no final.\",\"assistant.addressLocal\":\"Onde o modelo roda. O servidor do Runlight precisa conseguir alcançá-lo.\",\"assistant.model\":\"Modelo\",\"assistant.modelPlaceholder\":\"O nome do modelo, como o serviço o lista\",\"assistant.modelDefault\":\"Deixe vazio para usar {model}.\",\"assistant.modelHint\":\"Digite a chave acima e carregue os modelos do serviço, ou digite o nome de um modelo. Funciona melhor um modelo que sabe usar ferramentas.\",\"assistant.key\":\"Chave de API\",\"assistant.remove\":\"Desligar o assistente\",\"assistant.removeHint\":\"Remove o serviço e a chave. O botão do robô então pede a um proprietário para configurá-lo de novo.\",\"journeys.open\":\"Jornadas\",\"journeys.title\":\"Jornadas\",\"journeys.intro\":\"Os caminhos que as visitas fazem pelo site, página a página. Clique numa página para seguir só as visitas que passaram por ela.\",\"journeys.steps\":\"Passos\",\"journeys.stepCount\":\"{n} passos\",\"journeys.start\":\"Começando em\",\"journeys.end\":\"Terminando em\",\"journeys.anyPage\":\"Qualquer página\",\"journeys.step\":\"Passo {n}\",\"journeys.other\":\"Outras páginas\",\"journeys.left\":\"{n} não seguiram adiante\",\"journeys.follow\":\"Seguir as visitas que passaram por {page}\",\"journeys.following\":\"Visitas que passaram por {page} no passo {step}.\",\"journeys.none\":\"Tente um período maior para ver mais visitas.\",\"secret.show\":\"Mostrar\",\"secret.hide\":\"Ocultar\",\"people.invite\":\"Convidar\",\"people.invited\":\"convidado\",\"people.invitedMeta\":\"{role}, o link vale até {date}\",\"people.resend\":\"Enviar de novo\",\"people.emailed\":\"Um convite está a caminho de {email}. Você também pode enviar este link você mesmo.\",\"people.noMail\":\"Este servidor não tem serviço de e-mail, então envie este link para {email} você mesmo. Configure um em Configurações, Serviço de e-mail para enviar convites por e-mail.\",\"people.mailFailed\":\"O e-mail para {email} não saiu ({error}). Envie este link você mesmo.\",\"people.linkHint\":\"O link funciona uma vez, por sete dias. Enviar de novo cria um link novo e anula este.\",\"twofa.title\":\"Login em duas etapas\",\"twofa.off\":\"Desligado. Ligue e o login também vai pedir um código de um app autenticador no seu celular.\",\"twofa.on_one\":\"Ligado. O login pede um código do seu app autenticador. Resta {n} código de recuperação.\",\"twofa.on_other\":\"Ligado. O login pede um código do seu app autenticador. Restam {n} códigos de recuperação.\",\"twofa.turnOn\":\"Ligar\",\"twofa.turnOff\":\"Desligar\",\"twofa.newCodes\":\"Novos códigos de recuperação\",\"twofa.password\":\"Sua senha\",\"twofa.continue\":\"Continuar\",\"twofa.scan\":\"Escaneie isto com um app autenticador, como 1Password, Google Authenticator ou Authy, e digite o código de seis dígitos que ele mostra.\",\"twofa.qr\":\"Código QR para o seu app autenticador\",\"twofa.manual\":\"Ou digite esta chave no app.\",\"twofa.code\":\"Código do app\",\"twofa.confirm\":\"Ligar\",\"twofa.codesIntro\":\"Guarde estes códigos de recuperação num lugar seguro. Cada um faz login uma vez se você perder o celular, e eles não serão mostrados de novo.\",\"twofa.download\":\"Baixar\",\"twofa.copy\":\"Copiar\",\"twofa.saved\":\"Já salvei\",\"people.twoFactor\":\"duas etapas\",\"people.resetTwoFactor\":\"Redefinir duas etapas\",\"people.resetTwoFactorHint\":\"Desliga o login em duas etapas desta pessoa, caso tenha perdido o celular e os códigos de recuperação\",\"assistant.loadModels\":\"Carregar modelos\",\"assistant.loadingModels\":\"Carregando\",\"assistant.pickModel\":\"Escolha um modelo\",\"assistant.typeModel\":\"Digitar o nome de um modelo\",\"assistant.chooseFromList\":\"Escolher da lista\",\"journeys.sampled\":\"São os caminhos das {n} visitas mais recentes nessas datas.\",\"error.owner_only\":\"Só um proprietário pode alterar isto.\",\"error.domain_invalid\":\"Isso não é um nome de domínio.\",\"error.domain_in_use\":\"{domain} hospeda este painel ou um dos seus sites. Use um domínio ou subdomínio separado para os links curtos, como go.{domain}.\",\"error.domain_taken\":\"{domain} já pertence a outro site.\",\"error.link_url\":\"O destino deve ser uma URL completa, começando com https://\",\"error.link_protocol\":\"O destino deve começar com http:// ou https://\",\"error.link_long\":\"O destino tem mais de 2.000 caracteres.\",\"error.link_domain\":\"Primeiro adicione {domain} como domínio de links nas Configurações.\",\"error.link_slug\":\"Um slug tem letras, dígitos, hifens e sublinhados, até 100.\",\"error.link_taken\":\"/{slug} já está em uso.\",\"error.link_no_slug\":\"Não foi possível achar um slug livre. Tente de novo.\",\"error.test_email\":\"Digite um e-mail para onde enviar o teste.\",\"error.mail_unset\":\"Primeiro configure um serviço de e-mail.\",\"error.email_invalid\":\"Digite um endereço de e-mail.\",\"error.report_exists\":\"{email} já recebe este relatório.\",\"error.report_limit\":\"Um site pode enviar para no máximo 50 endereços.\",\"error.sample_soon\":\"Um exemplo acabou de sair. Espere um minuto e tente de novo.\",\"error.people_owner\":\"Só o proprietário ou um administrador pode gerenciar pessoas.\",\"error.role_needed\":\"Escolha administrador, membro ou leitor.\",\"error.account_exists\":\"{email} já tem uma conta.\",\"error.remove_self\":\"Você não pode remover a si mesmo.\",\"people.demoted\":\"Agora você é leitor, então as configurações estão fechadas e nada aqui pode ser mudado. O proprietário ou um administrador pode desfazer isso.\",\"links.importNoUrl\":\"Nada foi importado porque o arquivo não tem uma coluna url com endereços. Use as colunas name e url, além de slug e domain quando as tiver.\",\"app.sessionEnded\":\"Sua sessão foi encerrada, o que acontece quando uma sessão expira ou uma senha muda. {link} e você volta para esta visão.\",\"app.signInAgain\":\"Entre de novo\",\"links.noneYet\":\"Ninguém criou um link curto para este site ainda.\",\"error.remote_slow\":\"{host} demorou demais para responder. Tente um período mais curto.\",\"error.domain_not_public\":\"{domain} não é um domínio público. Use um que qualquer navegador consiga acessar.\",\"error.unreachable\":\"Não foi possível acessar {host}.\",\"error.redirected\":\"{host} respondeu com um redirecionamento.\",\"error.token_refused\":\"{host} recusou o token. Conecte-o de novo nas configurações do site.\",\"error.mail_failed\":\"Não foi possível enviar o e-mail ({detail}).\",\"error.mail_unreachable\":\"Não foi possível acessar {host}.\",\"error.mail_slow\":\"{host} demorou demais para responder, então o e-mail não foi enviado.\",\"error.mail_refused\":\"{host} recusou o e-mail ({detail}).\",\"error.mail_service\":\"Escolha um serviço de e-mail.\",\"error.mail_field\":\"O campo {field} é obrigatório.\",\"error.mail_option\":\"{field} deve ser um destes valores ({options}).\",\"error.mail_https\":\"A URL do webhook precisa usar https.\",\"error.mail_region\":\"Isso não é uma região da AWS, como us-east-1.\",\"error.mail_in_code\":\"O serviço de e-mail está definido no código, então não pode ser alterado aqui.\",\"error.mail_from\":\"Digite o endereço de onde saem os relatórios, como reports@example.com.\",\"error.smtp_starttls\":\"O servidor SMTP não oferece STARTTLS. Escolha TLS ou nenhuma em Segurança.\",\"error.unknown_account\":\"Essa conta não existe mais.\",\"error.password_short\":\"Use uma senha com pelo menos {min} caracteres.\",\"error.invite_gone\":\"Este convite expirou ou já foi usado. Peça um novo.\",\"error.too_many_tries\":\"Tentativas demais. Espere quinze minutos e tente de novo.\",\"error.password_current_wrong\":\"Sua senha atual não está certa.\",\"error.password_wrong\":\"Sua senha não está certa.\",\"error.code_wrong\":\"Esse código não está certo. Confira a hora do seu celular e tente o próximo.\",\"error.twofactor_off\":\"Ative primeiro o login em duas etapas.\",\"error.twofactor_self\":\"Desative seu próprio login em duas etapas em Conta.\",\"error.unknown_invite\":\"Esse convite não existe mais.\",\"error.origin_needed\":\"Defina primeiro o endereço deste Runlight (RUNLIGHT_URL no servidor, ou origin em routes()) para que um hub conectado possa adicionar domínios de links e relatórios por e-mail.\",\"error.twofactor_restart\":\"Códigos errados demais. Comece de novo a ativar o login em duas etapas.\",\"error.pick_origin\":\"Envie a origem do painel, como https://stats.example.com\",\"error.pick_hub\":\"O endereço deste hub não é aquele de onde ele se conectou. Conecte o site de novo a partir daqui.\",\"assistant.viewerDaily\":\"Perguntas por leitor por dia\",\"assistant.viewerDailyHint\":\"Cada pergunta é paga com a sua chave de IA. Leitores são as pessoas que você convida em Pessoas, que podem ler as estatísticas sem mudar nada, e cada um pode fazer este número de perguntas por dia. Use 0 para deixar o assistente só para os proprietários. Links de compartilhamento nunca têm o assistente.\",\"error.assistant_soon\":\"Você perguntou muito em pouco tempo. Espere um pouco e pergunte de novo.\",\"error.assistant_daily\":\"Leitores podem fazer {limit} perguntas por dia. Pergunte de novo amanhã.\",\"error.assistant_limit\":\"Use um número inteiro de 0 a 1.000.\",\"error.token_unset\":\"Defina RUNLIGHT_TOKEN, ou passe token ou authorize para routes(). Sem isso, o Runlight só fica aberto quando NODE_ENV é development.\",\"error.unauthorized\":\"Faça login ou envie um token para ver isto.\",\"error.sign_in\":\"Faça login primeiro.\",\"error.unknown_site\":\"Esse site não está aqui.\",\"error.filters_max\":\"Use no máximo {max} filtros de uma vez.\",\"error.filter_bad\":\"O Runlight não entende o filtro \\\"{filter}\\\".\",\"error.range_bad\":\"Essas datas não formam um período que o Runlight entenda.\",\"error.compare_bad\":\"O Runlight não conhece a comparação \\\"{compare}\\\".\",\"error.compare_range_bad\":\"Escolha as duas datas para comparar.\",\"error.send_json\":\"Envie isto como JSON.\",\"error.send_object\":\"Envie um objeto JSON.\",\"error.unknown_domain\":\"Esse domínio não é deste site.\",\"error.rows_needed\":\"Envie os links como uma lista de linhas.\",\"error.unknown_link\":\"Esse link não existe mais.\",\"error.not_found\":\"Isso não está aqui.\",\"error.unknown_goal\":\"Essa meta não existe mais.\",\"error.goal_invalid\":\"A meta não foi salva ({detail}).\",\"error.funnel_invalid\":\"O funil não foi salvo ({detail}).\",\"error.import_failed\":\"A importação parou ({detail}).\",\"error.assistant_failed\":\"O serviço de IA não respondeu como esperado ({detail}).\",\"error.assistant_invalid\":\"O assistente não foi salvo ({detail}).\",\"error.site_invalid\":\"O site não foi salvo ({detail}).\",\"error.connect_failed\":\"A conexão não começou ({detail}).\",\"error.method_not_allowed\":\"Isso não pode ser feito aqui.\",\"error.unknown_report\":\"Esse relatório não existe mais.\",\"error.unknown_share\":\"Esse link de compartilhamento não existe mais.\",\"error.token_name\":\"Dê um nome ao token.\",\"error.token_site\":\"Um token que altera configurações é para um só site. Escolha o site.\",\"error.unknown_token\":\"Esse token não existe mais.\",\"error.sites_in_code\":\"Aqui os sites são definidos no código, então são alterados lá.\",\"error.connect_url\":\"Digite o endereço da instalação, como https://example.com/runlight\",\"error.connect_not_runlight\":\"{url} não respondeu como uma instalação do Runlight.\",\"error.connect_endpoints\":\"{url} indicou endpoints em outro endereço.\",\"error.connect_old\":\"{url} usa uma versão antiga do Runlight. Atualize-a ou conecte-a com um token de API das configurações dela.\",\"error.connect_register\":\"{url} não deixou este servidor se conectar. {reason}\",\"error.connect_expired\":\"Essa conexão demorou demais ou já foi usada. Comece de novo.\",\"error.connect_denied\":\"A conexão não foi permitida.\",\"error.connect_refused\":\"A instalação não deixou este servidor se conectar. Comece de novo ou conecte-a com um token de API.\",\"error.connect_token\":\"A instalação não deu um token a este servidor. Comece de novo.\",\"error.connect_again\":\"Conecte este site de novo para alterá-lo daqui.\",\"error.hub_domains\":\"Um hub conectado não pode alterar os domínios de um site.\",\"error.observe_many\":\"Envie no máximo 500 acessos de uma vez.\",\"error.observe_url\":\"Envie o endereço da página.\",\"error.site_remote\":\"Este site é contado pelo próprio Runlight. Conecte-o de novo nas configurações dele para alterá-lo daqui.\",\"error.unknown_funnel\":\"Esse funil não existe mais.\",\"error.assistant_dashboard\":\"Só o painel pode usar o assistente.\",\"error.share_not_available\":\"Isso não está disponível em um painel compartilhado.\",\"error.assistant_unset\":\"O assistente ainda não está configurado. Um proprietário pode configurá-lo em Configurações, Assistente de IA.\",\"error.question_needed\":\"Faça uma pergunta.\",\"error.site_name\":\"Um nome de site tem de 1 a 80 caracteres.\",\"error.unknown_timezone\":\"O Runlight não conhece o fuso horário \\\"{timezone}\\\".\",\"error.retention_bad\":\"Guarde as visitas por {months} meses, ou para sempre.\",\"error.share_gone\":\"Este link de compartilhamento não funciona mais.\",\"error.token_read_only\":\"Tokens de API só podem ler.\",\"error.icon_none\":\"Este site não tem ícone.\",\"error.event_needed\":\"Informe o evento.\",\"error.property_bad\":\"O Runlight não consegue ler esse nome de propriedade.\",\"error.unknown_dimension\":\"O Runlight não conhece o detalhamento \\\"{dimension}\\\".\",\"error.internal\":\"Algo deu errado no servidor. Tente de novo.\",\"filter.max\":\"Até {max} filtros valem ao mesmo tempo. Remova um para adicionar outro.\",\"error.sample_soon_hub\":\"Um hub conectado pode enviar um exemplo a cada dez minutos. Espere alguns minutos e tente de novo.\",\"people.demoteSelf\":\"Só o proprietário ou um administrador pode desfazer isso.\",\"people.demoteConfirm\":\"Mudar para {role}\",\"error.check_not_public\":\"não é um nome de domínio público\",\"error.check_timeout\":\"demorou demais para responder\",\"error.check_https\":\"não foi possível acessá-lo por HTTPS\",\"error.check_not_runlight\":\"algo respondeu, mas não o Runlight\",\"error.check_status\":\"respondeu {status}\",\"error.assistant_address\":\"Digite o endereço do serviço em Configurações, Assistente de IA.\",\"error.address_refused\":\"{host} é um endereço link-local ou de metadados da nuvem, ao qual o Runlight nunca se conecta.\",\"error.assistant_address_bad\":\"Digite o endereço do serviço, começando com https://\",\"error.assistant_cancelled\":\"A pergunta foi cancelada.\",\"error.assistant_key\":\"Digite sua chave do {provider}.\",\"error.assistant_model\":\"Digite um modelo em Configurações, Assistente de IA.\",\"error.assistant_no_models\":\"{host} não listou nenhum modelo. Digite o nome do modelo.\",\"error.assistant_provider\":\"Escolha um serviço de IA em Configurações, Assistente de IA.\",\"error.assistant_refused\":\"{host} recusou o pedido ({detail}).\",\"error.assistant_slow\":\"Essa pergunta demorou demais para ser respondida. Tente algo mais específico.\",\"error.assistant_status\":\"{host} respondeu {status}.\",\"error.assistant_steps\":\"O assistente precisou de passos demais para essa pergunta. Tente algo mais específico.\",\"error.assistant_timeout\":\"{host} demorou demais para responder.\",\"error.funnel_exists\":\"Já existe um funil chamado \\\"{name}\\\".\",\"error.funnel_long\":\"Um funil tem no máximo oito etapas.\",\"error.funnel_name\":\"Dê um nome ao funil.\",\"error.funnel_page_bad\":\"\\\"{match}\\\" não é um caminho nem uma URL.\",\"error.funnel_short\":\"Um funil precisa de pelo menos duas etapas.\",\"error.goal_amount\":\"Digite um valor, como 49 ou 9,99.\",\"error.goal_click_taken\":\"A meta de clique \\\"{match}\\\" já envia eventos com esse nome.\",\"error.goal_currency\":\"Use um código de moeda de três letras, como USD ou EUR.\",\"error.goal_event\":\"Digite o nome do evento.\",\"error.goal_event_taken\":\"Uma meta de evento já conta eventos chamados \\\"{name}\\\", então dê outro nome a esta meta de clique.\",\"error.goal_exists\":\"Já existe uma meta chamada \\\"{name}\\\".\",\"error.goal_kind\":\"Escolha o que a meta conta, um evento, uma visita a uma página ou um clique.\",\"error.goal_link\":\"Digite o endereço do link, como https://buy.stripe.com/*\",\"error.goal_name\":\"Dê um nome à meta.\",\"error.goal_page\":\"Digite o caminho de uma página, como /obrigado ou /blog/*\",\"error.goal_page_bad\":\"Essa página não é um caminho nem uma URL.\",\"error.goal_prop_kind\":\"Só uma meta de evento pode tirar o valor do evento. Use um valor fixo.\",\"error.goal_prop_name\":\"Um nome de propriedade usa letras, números, pontos, hífens e sublinhados.\",\"error.goal_selector\":\"Digite um seletor CSS, como #signup ou .buy-button\",\"error.import_day_full\":\"Um dia tem mais de {limit} eventos, mais do que uma etapa de importação consegue ler.\",\"error.import_key\":\"Digite sua chave do {service}.\",\"error.import_refused\":\"A chave ou o login foi recusado.\",\"error.import_slug_bad\":\"/{slug} tem caracteres que um slug do Runlight não pode usar.\",\"error.import_slug_taken\":\"/{slug} já é usado por \\\"{name}\\\".\",\"error.import_source\":\"O Runlight não consegue importar de {source}.\",\"error.import_status\":\"{host} respondeu {status}.\",\"error.import_umami_address\":\"Digite o endereço do seu Umami, como https://stats.example.com\",\"error.import_umami_login\":\"Digite uma chave de API, ou um usuário e uma senha.\",\"error.import_website\":\"Escolha o site do Umami a importar.\",\"error.import_csv_batch\":\"Envie no máximo {max} linhas por vez.\",\"error.import_csv_format\":\"Este arquivo não é uma exportação do Umami nem está no formato de visitas do Runlight. Confira a linha de cabeçalho.\",\"error.install_refused\":\"Essa instalação recusou o token.\",\"error.install_token\":\"Digite um token de API dessa instalação.\",\"error.site_domain_invalid\":\"\\\"{host}\\\" não é um nome de domínio.\",\"error.site_domain_needed\":\"Adicione o domínio do site, como example.com\",\"error.site_domain_taken\":\"{host} já pertence a {site}.\",\"share.goneTitle\":\"Este link de compartilhamento não funciona mais\",\"error.token_manage_only\":\"Um token de gestão só altera as configurações do próprio site.\",\"empty.pages.title\":\"Suas páginas principais vão aparecer aqui\",\"empty.pages.hint\":\"Cada página que as pessoas abrem entra na lista, com o tempo que passam nela.\",\"empty.sources.title\":\"Suas origens de tráfego vão aparecer aqui\",\"empty.sources.hint\":\"As buscas e os sites que mandam visitas para você são listados pelo nome.\",\"empty.locations.title\":\"Os locais das suas visitas vão aparecer aqui\",\"empty.locations.hint\":\"Veja de quais países e cidades vêm as visitas.\",\"empty.rhythm.title\":\"Seus horários mais movimentados vão aparecer aqui\",\"empty.rhythm.hint\":\"Cada hora da semana vai se preenchendo com as visitas.\",\"empty.ai.title\":\"Os agentes de IA que leem seu site vão aparecer aqui\",\"empty.ai.hint\":\"Assistentes como o ChatGPT e o Claude entram na lista quando leem suas páginas.\",\"empty.devices.title\":\"Os dispositivos das suas visitas vão aparecer aqui\",\"empty.devices.hint\":\"Veja quais navegadores e telas as pessoas usam.\",\"empty.events.title\":\"Seus eventos vão aparecer aqui\",\"empty.events.hint\":\"Os cliques em links externos e os eventos que você envia são contados na hora.\",\"empty.campaigns.title\":\"Suas campanhas vão aparecer aqui\",\"empty.campaigns.hint\":\"As visitas de links com tags UTM são agrupadas por campanha, origem e mídia.\",\"empty.links.title\":\"Seus links curtos vão aparecer aqui\",\"empty.links.hint\":\"Crie um link curto para compartilhar, e cada clique nele será contado.\",\"sites.refused\":\"{host} não aceita mais a conexão deste servidor, então os números não podem ser lidos. Conecte de novo para resolver.\",\"sites.connected\":\"Conectado a {host}.\",\"links.totalTip\":\"Todos os cliques nos seus links curtos nas datas escolhidas\",\"links.setup\":\"Como configurar\",\"links.recordType\":\"Tipo\",\"links.recordName\":\"Nome\",\"links.recordValue\":\"Valor\",\"links.doDns\":\"Adicione este registro no seu provedor de DNS.\",\"links.doDnsAlias\":\"Adicione este registro no seu provedor de DNS. Se ele não tiver ALIAS, use um registro A para o endereço IP do seu servidor.\",\"links.doHttps\":\"Faça sua hospedagem servir {domain} com HTTPS.\",\"links.doCheck\":\"Verifique de novo. Um registro novo pode levar alguns minutos para chegar.\",\"links.localNote\":\"Este painel roda em {host}, então o registro funciona quando ele tiver um endereço público.\",\"links.guide\":\"Guia de configuração\",\"funnels.emptyTitle\":\"Seus funis vão aparecer aqui\",\"share.emptyTitle\":\"Seus links de compartilhamento vão aparecer aqui\",\"tokens.emptyTitle\":\"Seus tokens vão aparecer aqui\",\"reports.emptyTitle\":\"Seus relatórios por e-mail vão aparecer aqui\",\"journeys.emptyTitle\":\"Os caminhos das pessoas vão aparecer aqui\",\"props.emptyTitle\":\"Os detalhes deste evento vão aparecer aqui\",\"empty.mini\":\"Esta lista se preenche conforme chegam visitas.\",\"empty.search\":\"Nada aqui corresponde ainda a “{q}”, tente outra palavra.\",\"delta.fromNone\":\"de 0\",\"people.admin\":\"Administrador\",\"people.member\":\"Membro\",\"people.handOver\":\"Tornar proprietário\",\"people.handOverHint\":\"Passa a propriedade a este administrador, e você vira administrador\",\"people.handOverConfirm\":\"Passar\",\"people.demotedMember\":\"Agora você é membro, então Pessoas e as configurações de toda a instalação estão fechadas para você. O proprietário ou um administrador pode desfazer isso.\",\"account.admin\":\"Você é administrador, então pode mudar tudo e gerenciar pessoas, exceto o proprietário.\",\"account.member\":\"Você é membro, então pode mudar as configurações de cada site. O proprietário e os administradores gerenciam as pessoas e as configurações de toda a instalação.\",\"mail.adminOnly\":\"Ainda não há um serviço de e-mail configurado. O proprietário ou um administrador pode configurar um aqui.\",\"error.admin_only\":\"Só o proprietário ou um administrador pode mudar isso.\",\"error.owner_protected\":\"Ninguém além do proprietário pode mudar ou remover o proprietário.\",\"error.owner_hand_over\":\"Só o proprietário pode passar a propriedade.\",\"error.owner_needs_admin\":\"Torne a pessoa administrador primeiro.\",\"embed.goneTitle\":\"Este link do painel não funciona\",\"embed.gone\":\"Abra o painel novamente a partir da administração do seu site.\",\"embed.expiredTitle\":\"Esta visualização expirou\",\"embed.expired\":\"O painel dentro da sua administração fica aberto por uma hora de cada vez. Recarregue a página para abri-lo de novo.\",\"embed.reload\":\"Recarregar a página\",\"embedKey.title\":\"Chave para o painel no seu CMS\",\"embedKey.intro\":\"Com esta chave nas configurações, os plugins para WordPress, Drupal e Craft mostram o painel deste site dentro da sua administração. Ela abre a visualização somente leitura que um link compartilhado mostra e não consegue ler nada sozinha. Exclua-a em Configurações, API e IA para pará-la na hora.\",\"embedKey.make\":\"Criar uma chave\",\"embedKey.another\":\"Criar outra chave\",\"embedKey.name\":\"Painel em um CMS\",\"tokens.embeds\":\"Abre o painel em um CMS\",\"error.embed_expired\":\"Este painel expirou. Recarregue a página para abri-lo de novo.\",\"error.embed_site\":\"Uma chave para o painel em um CMS é para um só site. Escolha o site.\"}"
|
|
7
7
|
}
|