{
  "projectHistory": {
    "title": "Projektverlauf",
    "description": "Automatisch gespeicherte Snapshots auf diesem Gerät durchsuchen.",
    "empty": "Noch keine automatisch gespeicherten Snapshots.",
    "summary": "Ebenen: {{count}} · Zoom {{zoom}}",
    "restore": "Wiederherstellen",
    "discard": "Verwerfen",
    "restoreError": "Dieser Snapshot konnte nicht wiederhergestellt werden. Er ist möglicherweise beschädigt oder mit dieser GeoLibre-Version nicht kompatibel.",
    "recoveryTitle": "Nicht gespeicherte Arbeit wiederherstellen?",
    "recoveryDescription": "GeoLibre wurde nicht ordnungsgemäß beendet. Eine neuere automatische Speicherung von „{{name}}“ ist verfügbar."
  },
  "browser": {
    "title": "Browser",
    "services": "Dienste",
    "recent": "Zuletzt verwendet",
    "databases": "Datenbanken",
    "newDatabaseConnection": "Neue Datenbankverbindung",
    "searchPlaceholder": "Datenquellen durchsuchen",
    "empty": "Noch keine gespeicherten Dienste oder zuletzt verwendeten Projekte.",
    "emptyGroup": "Leer",
    "noMatches": "Keine Treffer.",
    "addFailed": "Diese Datenquelle konnte nicht hinzugefügt werden.",
    "builtinBadge": "integriert",
    "newConnection": "Neue {{kind}}-Verbindung",
    "loadingTables": "Tabellen werden geladen…",
    "files": "Dateien",
    "addFolder": "Ordner hinzufügen",
    "addFolderFailed": "Dieser Ordner konnte nicht hinzugefügt werden.",
    "addFileFailed": "Diese Datei konnte nicht hinzugefügt werden.",
    "loadFolderFailed": "Dieser Ordner konnte nicht gelesen werden.",
    "unpinFolder": "„{{name}}“ aus der Liste entfernen",
    "loadingFolder": "Wird geladen…",
    "folderTruncated": "Erste {{shown}} von {{total}} werden angezeigt",
    "favorites": "Favoriten",
    "favorite": "„{{name}}“ zu den Favoriten hinzufügen",
    "unfavorite": "„{{name}}“ aus den Favoriten entfernen",
    "favoriteMissing": "Diese Datenquelle existiert nicht mehr — aus den Favoriten entfernt.",
    "myData": "Meine Daten",
    "renameLibraryLayer": "„{{name}}“ umbenennen",
    "deleteLibraryLayer": "„{{name}}“ aus Meine Daten entfernen",
    "desktopOnlyBadge": "Desktop",
    "importLibrary": "Gespeicherte Ebenen importieren",
    "exportLibrary": "Gespeicherte Ebenen exportieren",
    "libraryFilterName": "Ebenenbibliothek-JSON",
    "libraryImportFailed": "Diese Ebenenbibliotheksdatei konnte nicht gelesen werden.",
    "libraryExportFailed": "Die Ebenenbibliothek konnte nicht exportiert werden.",
    "libraryLayerMissing": "Diese gespeicherte Ebene existiert nicht mehr.",
    "libraryLayerNeedsDesktop": "Diese gespeicherte Ebene liest eine Datei von der Festplatte und benötigt daher GeoLibre Desktop. Fügen Sie die Datei erneut hinzu, um einen neuen Eintrag zu speichern.",
    "libraryLayerConfigNotApplied": "Die Datei für „{{name}}“ wurde hinzugefügt, aber die gespeicherte Gestaltung konnte keiner einzelnen Ebene zugeordnet und daher nicht erneut angewendet werden.",
    "libraryLayerJoinsUnresolved_one": "Die Ebene wurde hinzugefügt, aber 1 gespeicherte Verknüpfung konnte nicht erneut angewendet werden: Die Ebene, mit der sie verknüpft ist, befindet sich nicht in diesem Projekt.",
    "libraryLayerJoinsUnresolved_other": "Die Ebene wurde hinzugefügt, aber {{count}} gespeicherte Verknüpfungen konnten nicht erneut angewendet werden: Die Ebenen, mit denen sie verknüpft sind, befinden sich nicht in diesem Projekt."
  },
  "about": {
    "trigger": "Über",
    "title": "Über GeoLibre",
    "description": "GeoLibre ist eine leichtgewichtige, cloud-native GIS-Plattform.",
    "version": "Version",
    "checkForUpdates": "Nach Updates suchen",
    "tryAgain": "Erneut versuchen",
    "checking": "Suche nach Updates",
    "upToDate": "Sie sind auf dem neuesten Stand ({{version}}).",
    "upToDateNoVersion": "Sie sind auf dem neuesten Stand.",
    "generalSectionTitle": "Allgemein",
    "homePage": "Startseite",
    "githubRepository": "GitHub-Repository"
  },
  "updates": {
    "changelogTitle": "Neuerungen",
    "noChangelog": "Versionshinweise sind nicht verfügbar. Details finden Sie auf der Downloads-Seite.",
    "stepsTitle": "So aktualisieren Sie",
    "download": "Update herunterladen",
    "steps": {
      "download": "Laden Sie das Installationsprogramm für Ihre Plattform von der Downloads-Seite herunter.",
      "install": "Führen Sie das Installationsprogramm aus. Ihre lokalen Projekte, Einstellungen und API-Schlüssel bleiben erhalten.",
      "reopen": "Öffnen Sie GeoLibre erneut, um die Aktualisierung abzuschließen."
    },
    "severity": {
      "major": "Hauptversion",
      "minor": "Funktionsupdate",
      "patch": "Patch-Update"
    },
    "available": {
      "title": "{{version}} ist verfügbar",
      "fallback": "Eine neue Version",
      "summary": "Sie verwenden derzeit {{current}}."
    },
    "error": {
      "message": "Es konnte nicht nach Updates gesucht werden.",
      "rateLimit": "GitHub-Ratenlimit überschritten. Bitte versuchen Sie es später erneut.",
      "http": "GitHub hat {{status}} zurückgegeben.",
      "noTag": "Der neueste Release enthält kein Versions-Tag.",
      "network": "GitHub konnte nicht erreicht werden. Überprüfen Sie Ihre Verbindung und versuchen Sie es erneut.",
      "viewDownloads": "Downloads anzeigen",
      "viewDownloadsHint": "Öffnet die GeoLibre-Downloads-Seite in Ihrem Browser, damit Sie die neueste Version manuell prüfen können."
    },
    "startup": {
      "title": "Update verfügbar",
      "currentVersion": "Ihre aktuelle Version",
      "latestVersion": "Neueste verfügbare Version",
      "download": "Updatepaket herunterladen",
      "remindLater": "Später erinnern",
      "skipVersion": "Diese Version überspringen",
      "settingsHint": "Sie können die Update-Prüfung unter Einstellungen → Updates ändern."
    }
  },
  "masBuild": {
    "unavailable": "Diese Funktion ist in der Mac App Store-Version von GeoLibre Desktop nicht verfügbar."
  },
  "bookmark": {
    "captureStateLabel": "Vollständigen Ebenenstatus einschließen (aktiv, inaktiv und Ebenenreihenfolge)",
    "captureStateTooltip": "Gilt nur für das nächste gespeicherte Lesezeichen, nicht als globale Einstellung. Lassen Sie diese Option aktiviert, um später genau diese Ebenenanordnung wiederherzustellen.",
    "export": "Exportieren",
    "exportSelected": "Auswahl exportieren",
    "exportAll": "Alle exportieren",
    "newFolder": "Neuer Ordner",
    "defaultFolderName": "Ordner"
  },
  "managePlugins": {
    "failed": "Fehlgeschlagen",
    "failedToLoad": "Laden fehlgeschlagen: {{message}}",
    "trust": {
      "title": "Plugins aus diesem Projekt laden?",
      "description_one": "Dieses Projekt möchte 1 externes Plugin von einer URL laden, die Sie nicht installiert haben. Plugins führen Code mit vollem Zugriff auf die App aus.",
      "description_other": "Dieses Projekt möchte {{count}} externe Plugins von URLs laden, die Sie nicht installiert haben. Plugins führen Code mit vollem Zugriff auf die App aus.",
      "warning": "Laden Sie Plugins nur aus vertrauenswürdigen Quellen. Geladene Plugins laufen mit denselben Rechten wie GeoLibre selbst.",
      "trustButton": "Vertrauen und laden",
      "dismissButton": "Nicht laden"
    },
    "title": "Plugins verwalten",
    "searchAria": "Plugins suchen",
    "searchPlaceholder": "Plugins suchen",
    "refresh": "Aktualisieren",
    "loadingRegistry": "Registry wird geladen…",
    "registryEmpty": "In der Registry sind keine Plugins aufgeführt.",
    "noPluginsHere": "Keine Plugins hier.",
    "sectionAll": "Alle ({{total}})",
    "sectionInstalled": "Installiert ({{total}})",
    "sectionNotInstalled": "Nicht installiert ({{total}})",
    "sectionUpgradeable": "Aktualisierbar ({{total}})",
    "sectionSettings": "Einstellungen",
    "openHomepageAria": "Homepage von {{name}} öffnen",
    "byAuthor": "von {{author}}",
    "updateAvailable": "Update verfügbar",
    "requiresVersion": "benötigt GeoLibre {{version}}+",
    "install": "Installieren",
    "installAria": "{{name}} installieren",
    "removeConfirm": "Entfernen?",
    "uninstall": "Deinstallieren",
    "uninstallAria": "{{name}} deinstallieren",
    "confirmUninstallAria": "Deinstallation von {{name}} bestätigen",
    "update": "Aktualisieren",
    "updateAria": "{{name}} aktualisieren",
    "loading": "Wird geladen…",
    "installed": "Installiert",
    "settingsIntro": "GeoLibre durchsucht immer sein App-Daten-Plugin-Verzeichnis. Installieren Sie ein paketiertes Plugin (.zip) aus einer Datei oder fügen Sie weitere lokale Verzeichnisse hinzu (nur Desktop). Manifest-URLs (einschließlich Marketplace-Installationen) werden über das Netzwerk geladen; Änderungen hier wirken sofort.",
    "installFromFile": "Aus Datei installieren",
    "chooseZip": ".zip wählen…",
    "installFromFileHintDesktop": "Kopiert ein paketiertes Plugin-Archiv in das Plugin-Verzeichnis von GeoLibre.",
    "installFromFileHintWeb": "Lädt ein paketiertes Plugin-Archiv; es wird in Ihrem Browser gespeichert und beim nächsten Besuch erneut geladen.",
    "localDirectories": "Lokale Verzeichnisse",
    "directoryAria": "Plugin-Verzeichnis",
    "browseDirectoryAria": "Plugin-Verzeichnis durchsuchen",
    "noDirectories": "Keine zusätzlichen Plugin-Verzeichnisse konfiguriert.",
    "manifestUrls": "Manifest-URLs",
    "manifestUrlAria": "Plugin-Manifest-URL",
    "noManifestUrls": "Keine Plugin-Manifest-URLs konfiguriert.",
    "removeAria": "{{name}} entfernen",
    "errorLoadRegistry": "Die Plugin-Registry konnte nicht geladen werden.",
    "errorUpdate": "Plugin konnte nicht aktualisiert werden.",
    "errorDirectoryPicker": "Die Verzeichnisauswahl konnte nicht geöffnet werden.",
    "errorInstall": "Das Plugin konnte nicht installiert werden.",
    "errorUninstall": "Das Plugin konnte nicht deinstalliert werden.",
    "description": "Externe GeoLibre-Plugins durchsuchen, installieren, aktualisieren und entfernen. Plugins sind in der <registryLink>GeoLibre-Plugin-Registry</registryLink> aufgeführt."
  },
  "viewState": {
    "panelTitle": "Info"
  },
  "terrainMeasure": {
    "title": "Gelände (3D)",
    "surfaceDistance": "Oberflächendistanz",
    "surfaceArea": "Oberfläche",
    "elevationGainLoss": "Aufstieg / Abstieg",
    "elevationRange": "Min. / max. Höhe",
    "meanSlope": "Mittlere Neigung",
    "computing": "Gelände wird berechnet…",
    "partialData": "Für einige Messpunkte lagen keine Geländedaten vor"
  },
  "fileNamePrompt": {
    "title": "Datei speichern unter",
    "description": "Geben Sie einen Dateinamen ein. Die Datei wird in den Downloads-Ordner Ihres Browsers heruntergeladen.",
    "label": "Dateiname"
  },
  "newProject": {
    "basemapDescription": "Wählen Sie eine OpenFreeMap- oder Protomaps-Basiskarte, einen leeren Hintergrund oder eine MapLibre-Style-URL.",
    "basemapDescriptionNoProtomaps": "Wählen Sie eine OpenFreeMap-Basiskarte, einen leeren Hintergrund oder eine MapLibre-Style-URL.",
    "sectionOpenFreeMap": "OpenFreeMap",
    "sectionProtomaps": "Protomaps",
    "sectionOther": "Andere",
    "customUrlButton": "Benutzerdefinierte URL",
    "invalidCustomUrl": "Geben Sie eine gültige style.json- oder .pmtiles-URL ein.",
    "savePromptTitle": "Aktuelles Projekt speichern?",
    "savePromptDescription": "Das aktuelle Projekt enthält ungespeicherte Änderungen. Vor dem Erstellen eines neuen Projekts speichern?",
    "doNotSave": "Nicht speichern",
    "saving": "Wird gespeichert...",
    "title": "Neues Projekt",
    "projectName": "Projektname",
    "savedTemplates": "Gespeicherte Vorlagen",
    "deleteTemplate": "Vorlage löschen",
    "basemapLabel": "Hintergrundkarte",
    "create": "Erstellen"
  },
  "basemapPicker": {
    "title": "Basiskarte ändern",
    "applyCustom": "Anwenden",
    "invalidUrl": "Geben Sie eine gültige HTTP- oder HTTPS-Style-URL ein.",
    "sectionMoon": "Der Mond",
    "sectionMars": "Mars",
    "sectionOther": "Andere Himmelskörper"
  },
  "planetSwitcher": {
    "label": "Himmelskörper",
    "earth": "Erde",
    "mercury": "Merkur",
    "venus": "Venus",
    "moon": "Mond",
    "mars": "Mars",
    "io": "Io",
    "europa": "Europa",
    "ganymede": "Ganymed",
    "callisto": "Kallisto",
    "titan": "Titan",
    "pluto": "Pluto",
    "charon": "Charon"
  },
  "common": {
    "pickColorFromScreen": "Farbe vom Bildschirm auswählen",
    "save": "Speichern",
    "cancel": "Abbrechen",
    "close": "Schließen",
    "retry": "Wiederholen",
    "reset": "Zurücksetzen",
    "remove": "Entfernen",
    "add": "Hinzufügen",
    "ok": "OK",
    "done": "Fertig",
    "openWebApp": "GeoLibre-Web-App öffnen"
  },
  "addData": {
    "title": "Daten hinzufügen",
    "kind": {
      "xyz": {
        "label": "XYZ-Ebene hinzufügen",
        "description": "Fügt eine Rasterkachel-Vorlage mit den Platzhaltern x, y und z hinzu."
      },
      "wms": {
        "label": "WMS-Ebene hinzufügen",
        "description": "Fügt einen WMS-GetMap-Dienst als gekachelte Rasterebene hinzu."
      },
      "wfs": {
        "label": "WFS-Ebene hinzufügen",
        "description": "Fügt WFS-Objekte hinzu, indem GeoJSON von einem GetFeature-Dienst angefordert wird."
      },
      "wmts": {
        "label": "WMTS-Ebene hinzufügen",
        "description": "Fügt eine WMTS-Kachel-URL-Vorlage als Rasterebene hinzu."
      },
      "ogcVectorTiles": {
        "label": "OGC-Vektorkacheln hinzufügen",
        "description": "Fügt einen OGC API - Tiles-Dienst (Vektor) aus einer TileJSON-Datei oder Kachel-Vorlage hinzu, optional werden die Quellebenen aus einer Style-URL gelesen."
      },
      "gpx": {
        "label": "GPX-Ebene hinzufügen",
        "description": "Fügt GPX-Wegpunkte, Routen und Tracks als eine oder mehrere Vektorebenen hinzu."
      },
      "georss": {
        "label": "GeoRSS-Ebene hinzufügen",
        "description": "Fügt einen GeoRSS-Feed (RSS, Atom oder RDF) aus einer URL oder Datei als Vektorebene hinzu."
      },
      "delimitedText": {
        "label": "Trennzeichengetrennte Textebene hinzufügen",
        "description": "Fügt eine Datei oder URL mit Trennzeichen als Punktebene anhand von Längen- und Breitengradfeldern hinzu, oder als nicht-räumliche Attributtabelle, wenn keine Koordinaten verfügbar sind."
      },
      "cad": {
        "label": "CAD-Ebene (DXF/DWG) hinzufügen",
        "description": "Fügt eine AutoCAD-DXF- oder -DWG-Zeichnung als Vektorebene hinzu, mit Auswahl der zu ladenden Ebene und des zu projizierenden Koordinatenreferenzsystems."
      },
      "gdb": {
        "label": "File-Geodatabase-Ebene hinzufügen",
        "description": "Fügt eine Ebene aus einer Esri File Geodatabase (.gdb-Ordner) hinzu. Die Ebene wird mit dem lokalen GeoLibre-Server gelesen und nach WGS84 reprojiziert."
      },
      "photos": {
        "label": "Geotagged Fotos hinzufügen",
        "description": "Importiert JPEG-/HEIC-Fotos als Punktebene, wobei jedes Foto anhand seines EXIF-GPS-Standorts platziert wird."
      },
      "mbtiles": {
        "label": "MBTiles-Ebene hinzufügen",
        "description": "Fügt eine lokale MBTiles-Datei als Raster- oder Vektorkachelebene hinzu."
      },
      "arcgis": {
        "label": "ArcGIS-Ebene hinzufügen",
        "description": "Fügt eine ArcGIS-Ebene von einem FeatureServer, VectorTileServer, MapServer oder ImageServer oder ein Portalelement hinzu."
      },
      "postgres": {
        "label": "PostgreSQL-Ebene hinzufügen",
        "description": "Startet Martin lokal, ermittelt PostGIS-Quellen und fügt eine Quelle als Vektorkacheln hinzu."
      },
      "deckglViz": {
        "label": "Deck.gl-Ebene hinzufügen",
        "description": "Wählen Sie einen Deck.gl-Ebenentyp und laden Sie dann die Beispieldaten oder eine CSV-/JSON-/GeoJSON-Datei bzw. URL hoch."
      },
      "video": {
        "label": "Videoebene hinzufügen",
        "description": "Fügt eine georeferenzierte Video-Überlagerung hinzu, indem eine MP4-URL und vier Eckkoordinaten angegeben werden."
      },
      "ogcFeatures": {
        "label": "OGC API - Features-Ebene hinzufügen",
        "description": "Objekte aus einer OGC API - Features-Collection als Vektorebene hinzufügen; dabei wird den Paging-Links des Dienstes gefolgt, bis die angeforderte Objektanzahl geladen ist."
      }
    },
    "shared": {
      "layerName": "Ebenenname",
      "insertBelow": "Darunter einfügen",
      "insertTop": "Oben in der Ebenenliste (Standard)",
      "layersGroup": "Ebenen",
      "basemapLayersGroup": "Basiskartenebenen",
      "showBasemapLayers": "Basiskartenebenen anzeigen (erweitert)",
      "addLayer": "Ebene hinzufügen",
      "adding": "Wird hinzugefügt…",
      "addError": "Ebene konnte nicht hinzugefügt werden.",
      "sampleData": "Beispieldaten",
      "loadSampleData": "Beispieldaten laden…"
    },
    "common": {
      "serviceUrl": "Dienst-URL",
      "tileSize": "Kachelgröße",
      "tileUrlTemplate": "Kachel-URL-Vorlage",
      "sourceType": "Quelltyp",
      "layerType": "Ebenentyp",
      "format": "Format",
      "optional": "Optional",
      "chooseFile": "Datei auswählen",
      "noFileSelected": "Keine Datei ausgewählt",
      "loading": "Wird geladen …",
      "workspaceLayerPlaceholder": "Arbeitsbereich:Ebene",
      "requestFailed": "Anfrage fehlgeschlagen mit Status {{status}}",
      "networkFailure": "Der Dienst konnte nicht erreicht werden. Prüfen Sie, ob der Host erreichbar ist und ob TLS-Zertifikat, Firewall und Proxy-Einstellungen die Anfrage zulassen; im Browser kann sie zudem durch CORS blockiert werden — versuchen Sie in dem Fall die Desktop-App.",
      "requestTimedOut": "Zeitüberschreitung bei der Anfrage. Der Host ist möglicherweise langsam, nicht erreichbar oder durch eine Firewall oder einen Proxy blockiert."
    },
    "serviceLibrary": {
      "title": "Gespeicherte Dienste",
      "saveCurrent": "Aktuellen speichern",
      "importLibrary": "Bibliothek aus JSON importieren",
      "exportLibrary": "Bibliothek nach JSON exportieren",
      "loadAria": "Einen gespeicherten Dienst laden",
      "loadPlaceholder": "Einen gespeicherten Dienst laden…",
      "builtin": "{{name}} (integriert)",
      "deleteAria": "Gespeicherten Dienst löschen",
      "empty": "Noch keine gespeicherten Dienste — füllen Sie das Formular aus und wählen Sie „Aktuellen speichern“.",
      "name": "Name",
      "category": "Kategorie",
      "categoryPlaceholder": "Optional (z. B. Land, Thema)",
      "uncategorized": "Ohne Kategorie",
      "errorName": "Geben Sie einen Namen für den gespeicherten Dienst ein.",
      "saved": "„{{name}}“ in der Dienstbibliothek gespeichert.",
      "removed": "„{{name}}“ entfernt.",
      "errorExport": "Bibliothek konnte nicht exportiert werden.",
      "errorTooLarge": "Die Datei ist für den Import zu groß (max. 5 MB).",
      "errorNoServices": "In dieser Datei wurden keine gültigen Dienste gefunden.",
      "errorRead": "Diese Datei konnte nicht als Dienstbibliothek gelesen werden.",
      "imported_one": "{{count}} Dienst importiert.",
      "imported_other": "{{count}} Dienste importiert.",
      "importedWithDropped_one": "{{count}} Dienst importiert ({{dropped}} übersprungen — Bibliothek voll).",
      "importedWithDropped_other": "{{count}} Dienste importiert ({{dropped}} übersprungen — Bibliothek voll)."
    },
    "xyz": {
      "defaultName": "XYZ-Ebene",
      "sampleLabel": "USGS-Luftbilder",
      "errorUrl": "Geben Sie eine XYZ-Kachel-URL-Vorlage ein.",
      "urlPlaceholder": "https://example.com/{z}/{x}/{y}.png",
      "shortUrlPlaceholder": "https://go.example.com/layer",
      "shortUrl": "Kurz-URL"
    },
    "wms": {
      "defaultName": "WMS-Ebene",
      "sampleLabel": "USGS-NAIP-Luftbilder",
      "sampleLabelGebco": "GEBCO-Ozeanbathymetrie",
      "errorUrl": "Geben Sie eine WMS-Dienst-URL ein.",
      "errorLayers": "Geben Sie einen oder mehrere WMS-Ebenennamen ein.",
      "urlPlaceholder": "https://example.com/geoserver/wms",
      "layers": "Ebenen",
      "styles": "Stile",
      "transparent": "Transparenter Hintergrund",
      "retrieveLayers": "Ebenen abrufen",
      "retrieving": "Wird abgerufen …",
      "retrievedLayers": "Abgerufene Ebenen",
      "selectLayer_one": "Aus {{count}} Ebene auswählen",
      "selectLayer_other": "Aus {{count}} Ebenen auswählen",
      "noLayersFound": "Für diesen Dienst wurden keine Ebenen gefunden.",
      "retrieveError": "Ebenen konnten nicht von diesem Dienst abgerufen werden.",
      "version": "WMS-Version"
    },
    "wfs": {
      "defaultName": "WFS-Ebene",
      "sampleLabel": "US-Bundesstaaten (GeoServer)",
      "errorUrl": "Geben Sie eine WFS-Dienst-URL ein.",
      "errorTypeName": "Geben Sie einen WFS-Feature-Type-Namen ein.",
      "errorOutputFormat": "Geben Sie ein WFS-Ausgabeformat ein.",
      "urlPlaceholder": "https://example.com/geoserver/wfs",
      "featureType": "Feature-Typ",
      "version": "Version",
      "outputFormat": "Ausgabeformat",
      "srsName": "SRS-Name",
      "maxFeatures": "Max. Objekte",
      "errorMaxFeaturesNumeric": "Geben Sie einen numerischen Wert für die maximale Objektanzahl ein.",
      "retrieveTypes": "Typen abrufen",
      "retrieving": "Wird abgerufen …",
      "retrievedTypes": "Abgerufene Feature-Typen",
      "selectType_one": "Aus {{count}} Feature-Typ auswählen",
      "selectType_other": "Aus {{count}} Feature-Typen auswählen",
      "noTypesFound": "Für diesen Dienst wurden keine Feature-Typen gefunden.",
      "retrieveError": "Feature-Typen konnten nicht von diesem Dienst abgerufen werden."
    },
    "wmts": {
      "defaultName": "WMTS-Ebene",
      "sampleLabel": "EOX Weltweite Luftbilder (Sentinel-2)",
      "errorUrl": "Geben Sie eine WMTS-Kachel-URL-Vorlage ein.",
      "urlPlaceholder": "https://example.com/wmts/{z}/{y}/{x}.png"
    },
    "ogcVectorTiles": {
      "defaultName": "OGC-Vektorkachelebene",
      "tilesUrl": "Kachel-URL",
      "tilesUrlPlaceholder": "https://example.com/tiles/WebMercatorQuad?f=tilejson",
      "tilesUrlHint": "Eine TileJSON-Metadaten-URL oder eine {z}/{y}/{x}-MVT-Kachelvorlage.",
      "styleUrl": "Style-URL",
      "styleUrlPlaceholder": "https://example.com/styles/default?f=mapbox",
      "styleUrlHint": "Optionales Mapbox-/MapLibre-Style-JSON. Wird verwendet, um die Quellebenen des Kachelsatzes zu ermitteln, wenn diese in der TileJSON-Datei fehlen.",
      "sourceLayers": "Quellebenen",
      "sourceLayersPlaceholder": "ebene_a, ebene_b",
      "sourceLayersHint": "Optionale, durch Kommas getrennte Liste von Quellebenen-Namen. Überschreibt die in der TileJSON-Datei oder im Stil gefundenen Ebenen.",
      "sampleLabel": "PDOK BGT (Niederlande)",
      "errorUrl": "Geben Sie eine Kachel-URL oder eine Style-URL ein.",
      "errorNoTiles": "Der Vektorkachel-Endpunkt konnte nicht ermittelt werden. Geben Sie eine TileJSON-URL, eine Kachelvorlage oder eine Style-URL ein.",
      "errorNoLayers": "Die Vektorkachel-Quellebenen konnten nicht ermittelt werden. Fügen Sie eine Style-URL hinzu oder geben Sie die Namen der Quellebenen ein."
    },
    "arcgis": {
      "defaultName": "ArcGIS-Ebene",
      "sampleFeatureLabel": "Große US-Städte (Feature)",
      "sampleVectorTileLabel": "Flurstücke Santa Monica (Vektorkacheln)",
      "sampleMapServiceLabel": "US-Grenzen (Kartendienst)",
      "sampleImageServiceLabel": "USGS-3DEP-Schummerung (Bilddienst)",
      "featureLayer": "Feature-Ebene",
      "vectorTileLayer": "Vektorkachelebene",
      "mapServiceLayer": "Kartendienst",
      "imageServiceLayer": "Bilddienst",
      "portalItemId": "Portalelement-ID",
      "featureUrlPlaceholder": "https://services.arcgis.com/.../FeatureServer/0",
      "vectorTileUrlPlaceholder": "https://.../arcgis/rest/services/.../VectorTileServer",
      "mapServiceUrlPlaceholder": "https://.../arcgis/rest/services/.../MapServer",
      "imageServiceUrlPlaceholder": "https://.../arcgis/rest/services/.../ImageServer",
      "sublayers": "Unterebenen",
      "sublayersPlaceholder": "Alle sichtbaren Unterebenen",
      "sublayersHint": "Optionale kommagetrennte IDs der Unterebenen, zum Beispiel 0,2,5. Eine Auswahl zeichnet den Dienst dynamisch statt über seine zwischengespeicherten Kacheln.",
      "renderingRule": "Rendering-Regel",
      "renderingRulePlaceholder": "{\"rasterFunction\":\"Hillshade\"}",
      "renderingRuleHint": "Optionales JSON einer Rasterfunktion, die der Dienst anwendet. Eine Rendering-Regel zeichnet den Dienst dynamisch statt über seine zwischengespeicherten Kacheln.",
      "portalUrl": "Portal-URL",
      "portalUrlPlaceholder": "https://www.arcgis.com/sharing/rest",
      "accessToken": "Zugriffstoken"
    },
    "gpx": {
      "defaultName": "GPX-Ebene",
      "sampleLabel": "Fells-Loop-Wanderweg",
      "errorFileMissing": "GPX-Dateidaten fehlen.",
      "readError": "GPX-Datei konnte nicht gelesen werden.",
      "errorChooseFile": "Wählen Sie eine GPX-Datei aus.",
      "errorUrl": "Geben Sie eine GPX-URL ein.",
      "errorSelectType": "Wählen Sie mindestens einen GPX-Ebenentyp aus.",
      "errorNotFound": "Die ausgewählten GPX-Ebenentypen wurden nicht gefunden.",
      "waypoints": "Wegpunkte",
      "tracks": "Tracks",
      "trackPoints": "Trackpunkte",
      "routes": "Routen",
      "routePoints": "Routenpunkte",
      "url": "GPX-URL",
      "file": "GPX-Datei",
      "urlPlaceholder": "https://example.com/route.gpx",
      "layerTypes": "Ebenentypen"
    },
    "georss": {
      "defaultName": "GeoRSS-Ebene",
      "sampleLabel": "USGS-Erdbeben (letzter Tag)",
      "errorFileMissing": "GeoRSS-Dateidaten fehlen.",
      "readError": "GeoRSS-Datei konnte nicht gelesen werden.",
      "errorChooseFile": "Wählen Sie eine GeoRSS-Datei aus.",
      "errorUrl": "Geben Sie eine GeoRSS-URL ein.",
      "url": "GeoRSS-URL",
      "file": "GeoRSS-Datei",
      "urlPlaceholder": "https://example.com/feed.atom"
    },
    "cad": {
      "defaultName": "CAD-Ebene",
      "fileFilter": "CAD (DXF/DWG)",
      "layer": "CAD-Ebene",
      "layerPlaceholder": "Wählen Sie zuerst eine CAD-Datei aus",
      "readingLayers": "Ebenen werden gelesen …",
      "layerOption": "{{name}} ({{type}}, {{count}} Objekte)",
      "crs": "Quell-KBS",
      "crsPlaceholder": "z. B. EPSG:26915",
      "crsPresetLabel": "Gängige Koordinatensysteme...",
      "crsHelp": "Leer lassen, wenn die Zeichnung bereits in Länge/Breite (WGS84) vorliegt. Andernfalls geben Sie den EPSG-Code des Koordinatensystems der Zeichnung ein, um sie umzuprojizieren.",
      "readError": "Diese CAD-Datei konnte nicht gelesen werden.",
      "errorNoLayers": "In dieser CAD-Datei wurden keine Ebenen gefunden.",
      "errorChooseFile": "Wählen Sie zuerst eine CAD-Datei (DXF/DWG) aus.",
      "errorNoLayer": "Wählen Sie eine CAD-Ebene zum Laden aus.",
      "errorUnsupportedGeometry": "Diese CAD-Ebene enthält gemischte Geometrien oder Geometrie-Sammlungen, die nicht dargestellt werden können. Versuchen Sie eine andere Ebene."
    },
    "gdb": {
      "defaultName": "Geodatabase-Ebene",
      "chooseFolder": ".gdb-Ordner auswählen...",
      "noFolderSelected": "Keine Geodatabase ausgewählt",
      "layer": "Feature-Class",
      "layerPlaceholder": "Wählen Sie zuerst eine Geodatabase",
      "readingLayers": "Ebenen werden gelesen...",
      "layerOption": "{{name}} ({{type}}, {{count}} Objekte)",
      "help": "Reine Attributtabellen werden nicht aufgeführt. Die ausgewählte Feature-Class wird über den lokalen GeoLibre-Server geladen und nach WGS84 reprojiziert.",
      "desktopOnly": "File-Geodatabase-Ebenen sind nur in GeoLibre Desktop verfügbar. Diese Funktion liest einen lokalen .gdb-Ordner über den lokalen GeoLibre-Server, auf den die Web-App nicht zugreifen kann.",
      "readError": "Diese File Geodatabase konnte nicht gelesen werden.",
      "convertError": "Diese Feature-Class konnte nicht geladen werden.",
      "errorNotGdb": "Wählen Sie einen Ordner mit der Endung .gdb (eine Esri File Geodatabase).",
      "errorNoLayers": "In dieser Geodatabase wurden keine Feature-Classes mit Geometrie gefunden.",
      "errorChooseFolder": "Wählen Sie zuerst einen .gdb-Ordner aus.",
      "errorNoLayer": "Wählen Sie eine zu ladende Feature-Class aus.",
      "errorTimeout": "Zeitüberschreitung beim Lesen der Geodatabase.",
      "crs": "Quell-CRS",
      "crsPlaceholder": "z. B. EPSG:26915",
      "crsHelp": "Das Koordinatensystem dieser Feature-Class konnte nicht erkannt werden. Geben Sie den EPSG- (oder ESRI-)Code an, in dem sie gespeichert wurde, damit sie nach WGS84 reprojiziert werden kann.",
      "errorMissingCrs": "Das Koordinatensystem dieser Feature-Class konnte nicht erkannt werden. Geben Sie ihr Quell-CRS ein, um sie hinzuzufügen."
    },
    "delimitedText": {
      "defaultName": "Trennzeichengetrennte Textebene",
      "sampleLabel": "US-Städte",
      "errorChooseFile": "Wählen Sie eine trennzeichengetrennte Textdatei aus.",
      "errorUrl": "Geben Sie eine URL für trennzeichengetrennten Text ein.",
      "errorFileMissing": "Daten der trennzeichengetrennten Textdatei fehlen.",
      "readError": "Trennzeichengetrennte Textdatei konnte nicht gelesen werden.",
      "errorDataMissing": "Trennzeichengetrennte Textdaten fehlen.",
      "retrievedColumns_one": "{{count}} Spalte abgerufen.",
      "retrievedColumns_other": "{{count}} Spalten abgerufen.",
      "retrievedColumnsTable_one": "{{count}} Spalte abgerufen. Es wurden keine Koordinatenspalten erkannt; sie wird als Attributtabelle hinzugefügt.",
      "retrievedColumnsTable_other": "{{count}} Spalten abgerufen. Es wurden keine Koordinatenspalten erkannt; sie wird als Attributtabelle hinzugefügt.",
      "errorRetrieveColumns": "Spaltennamen konnten nicht abgerufen werden.",
      "url": "URL für trennzeichengetrennten Text",
      "file": "Trennzeichengetrennte Textdatei",
      "urlPlaceholder": "https://example.com/data.csv",
      "retrieving": "Wird abgerufen …",
      "retrieveColumns": "Spalten abrufen",
      "delimiter": "Trennzeichen",
      "delimiterComma": "Komma",
      "delimiterTab": "Tabulator",
      "delimiterSemicolon": "Semikolon",
      "delimiterPipe": "Senkrechter Strich",
      "delimiterCustom": "Benutzerdefiniert",
      "customDelimiter": "Benutzerdefiniertes Trennzeichen",
      "longitudeField": "Längengradfeld",
      "latitudeField": "Breitengradfeld",
      "noneField": "Keins (Attributtabelle)",
      "tableHint": "Lassen Sie beide Koordinatenfelder auf „Keins“, um die Datei als nicht-räumliche Attributtabelle hinzuzufügen (zur Verwendung in einer Attributverknüpfung).",
      "crs": "Koordinatensystem",
      "crsPlaceholder": "z. B. EPSG:32643",
      "crsPresetLabel": "Gängige Koordinatensysteme...",
      "crsHelp": "Leer lassen, wenn die Koordinaten bereits Länge/Breite (WGS84) sind. Andernfalls geben Sie den EPSG-Code der Koordinatenspalten ein, damit die Punkte nach WGS84 umprojiziert werden. Bei einem projizierten KBS wählen die Felder für Länge und Breite die Spalten X (Rechtswert) und Y (Hochwert) aus.",
      "importMode": "Importieren als",
      "modeCoordinates": "Koordinaten",
      "modeAddresses": "Adressen (Geokodierung)",
      "addressColumns": "Adressspalten",
      "addressColumnsEmptyHint": "Rufen Sie zuerst die Spalten ab, um Adressspalten auszuwählen.",
      "addressColumnsHint": "Wählen Sie eine oder mehrere Spalten aus, die zu der an den Geocoder gesendeten Adresse zusammengefügt werden (z. B. Straße, Ort, Bundesland).",
      "errorNoAddressColumns": "Wählen Sie mindestens eine Adressspalte aus.",
      "errorNoAddressesFound": "Keine Zeile enthielt einen Wert in den ausgewählten Adressspalten."
    },
    "photos": {
      "defaultName": "Fotos",
      "chooseLabel": "Fotos",
      "choosePhotos": "Fotos auswählen",
      "hint": "Wählen Sie JPEG-, PNG-, TIFF- oder HEIC-Fotos aus. Jedes wird anhand seines EXIF-GPS-Standorts platziert. HEIC-Fotos werden lokalisiert, aber ohne Vorschaubild angezeigt.",
      "readError": "Die ausgewählten Fotos konnten nicht gelesen werden.",
      "errorChooseFiles": "Wählen Sie ein oder mehrere Fotos aus.",
      "selectedCount_one": "{{count}} Foto ausgewählt",
      "selectedCount_other": "{{count}} Fotos ausgewählt",
      "errorNoGps_one": "Im ausgewählten Foto wurde kein GPS-Standort gefunden.",
      "errorNoGps_other": "In den {{count}} ausgewählten Fotos wurde kein GPS-Standort gefunden.",
      "addedSummary_one": "{{count}} geotagged Foto hinzugefügt.",
      "addedSummary_other": "{{count}} geotagged Fotos hinzugefügt.",
      "skippedNote_one": "{{count}} Foto wurde übersprungen (kein GPS-Standort).",
      "skippedNote_other": "{{count}} Fotos wurden übersprungen (kein GPS-Standort).",
      "noThumbnailNote_one": "{{count}} Foto hat kein Vorschaubild (HEIC oder nicht unterstütztes Format).",
      "noThumbnailNote_other": "{{count}} Fotos haben kein Vorschaubild (HEIC oder nicht unterstütztes Format).",
      "manualPromptTitle": "In diesem Foto wurde kein GPS-Standort gefunden.",
      "manualPromptBody": "Platzieren Sie es in der aktuellen Kartenmitte und ziehen Sie es an die gewünschte Position auf der Karte.",
      "manualPromptCenter": "Kartenmitte: {{lng}}, {{lat}}",
      "manualPlace": "An Kartenmitte platzieren",
      "manualHint": "Ziehen Sie diese Nadel, um das Foto zu positionieren, und klicken Sie dann auf Fertig."
    },
    "mbtiles": {
      "defaultName": "MBTiles-Ebene",
      "readError": "MBTiles-Datei konnte nicht gelesen werden.",
      "errorChooseFile": "Wählen Sie eine MBTiles-Datei aus.",
      "errorSourceLayers": "Geben Sie mindestens eine Vektorquellebene ein.",
      "tileType": "Kacheltyp",
      "sourceLayers": "Quellebenen",
      "sourceLayersPlaceholder": "Gebäude, Ort, Wasser"
    },
    "postgres": {
      "defaultName": "PostgreSQL-Ebene",
      "errorDesktopOnly": "PostgreSQL-Ebenen erfordern GeoLibre Desktop.",
      "errorConnectionString": "Geben Sie eine PostgreSQL-Verbindungszeichenfolge ein.",
      "statusCheckingBinary": "Martin-Binärdatei wird geprüft...",
      "statusDownloaded": "Martin heruntergeladen. Lokaler Server wird gestartet...",
      "statusStarting": "Lokaler Martin-Server wird gestartet...",
      "statusReadingCatalog": "Martin-Katalog wird gelesen...",
      "statusFound_one": "{{count}} Quelle gefunden.",
      "statusFound_other": "{{count}} Quellen gefunden.",
      "statusNoSources": "Martin läuft, aber es wurden keine kompatiblen PostGIS-Quellen gefunden.",
      "errorConnect": "Verbindung zu PostgreSQL konnte nicht hergestellt werden.",
      "statusStopped": "Martin gestoppt.",
      "errorStop": "Martin konnte nicht gestoppt werden.",
      "errorConnectFirst": "Stellen Sie zuerst eine Verbindung zu PostgreSQL her.",
      "errorNoVectorLayers": "Die ausgewählte Martin-Quelle hat keine Vektorebenen.",
      "errorSelectSource": "Wählen Sie eine Martin-Quelle zum Hinzufügen aus.",
      "desktopOnlyNotice": "PostgreSQL-Ebenen sind nur in GeoLibre Desktop verfügbar. Diese Funktion startet einen lokalen Martin-Kachelserver, den die Web-App nicht starten kann.",
      "savedConnection": "Gespeicherte Verbindung",
      "selectSavedConnection": "Gespeicherte Verbindung auswählen",
      "connectionString": "PostgreSQL-Verbindungszeichenfolge",
      "connectionStringPlaceholder": "postgres://benutzer:passwort@host:5432/datenbank",
      "defaultSrid": "Standard-SRID",
      "connect": "Verbinden",
      "stop": "Stopp",
      "martinSource": "Martin-Quelle",
      "runningOnPort": "Martin läuft auf Port {{port}}.",
      "loadMode": "Laden als",
      "loadModeTiles": "Vektorkacheln (Martin, schreibgeschützt)",
      "loadModeEditable": "Bearbeitbare Ebene (lädt alle Objekte)",
      "editableNotice": "Lädt die Objekte der Tabelle über den lokalen Verarbeitungsserver, damit sie bearbeitet werden können. Speichern Sie Änderungen über die Aktion „Bearbeitungen in PostGIS-Tabelle speichern“ der Ebene.",
      "statusListingTables": "Räumliche Tabellen werden gelesen...",
      "statusTablesFound_one": "{{count}} räumliche Tabelle gefunden.",
      "statusTablesFound_other": "{{count}} räumliche Tabellen gefunden.",
      "statusNoTables": "In dieser Datenbank wurden keine räumlichen Tabellen gefunden.",
      "editableTable": "Tabelle",
      "tableReadOnly": "{{table}} (schreibgeschützt: kein Primärschlüssel)",
      "errorSelectTable": "Wählen Sie eine zu ladende Tabelle aus.",
      "errorRuntimeMissing": "Der Verarbeitungsserver hat die PostGIS-Laufzeitumgebung (psycopg) nicht installiert. Installieren Sie das Extra „postgis“ von geolibre-server, um bearbeitbare Ebenen zu laden."
    },
    "video": {
      "defaultName": "Videoebene",
      "sampleLabel": "Küstenwellen bei San Francisco",
      "errorUrl": "Geben Sie eine Video-URL ein.",
      "errorHttps": "Video-URLs müssen mit https:// beginnen.",
      "cornerTopLeft": "oben links",
      "cornerTopRight": "oben rechts",
      "cornerBottomRight": "unten rechts",
      "cornerBottomLeft": "unten links",
      "errorCornerFormat": "Geben Sie die Ecke {{corner}} als „Längengrad, Breitengrad“ ein.",
      "errorCornerNumber": "Geben Sie einen numerischen Längen- und Breitengrad für die Ecke {{corner}} ein.",
      "errorCornerLng": "Der Längengrad der Ecke {{corner}} muss zwischen -180 und 180 liegen.",
      "errorCornerLat": "Der Breitengrad der Ecke {{corner}} muss zwischen -90 und 90 liegen.",
      "primaryUrl": "Primäre Video-URL",
      "primaryUrlPlaceholder": "https://example.com/clip.mp4",
      "fallbackUrl": "Ausweich-Video-URL (optional)",
      "fallbackUrlPlaceholder": "https://example.com/clip.webm",
      "topLeft": "Oben links (Länge, Breite)",
      "topRight": "Oben rechts (Länge, Breite)",
      "bottomRight": "Unten rechts (Länge, Breite)",
      "bottomLeft": "Unten links (Länge, Breite)",
      "cornersNote": "Die vier Ecken georeferenzieren das Video auf der Karte. Das Video muss über HTTPS bereitgestellt werden, und der Host muss Cross-Origin-Anfragen (CORS) zulassen, damit die Bilder gerendert werden können."
    },
    "netcdf": {
      "sampleLabel": "Lufttemperatur",
      "title": "NetCDF/HDF hinzufügen",
      "description": "Rendert einen NetCDF- oder HDF5-Datensatz: eine entfernte Cloud-optimierte Datei über eine Kerchunk-Referenz (gelesen über HTTP-Range-Anfragen) oder eine lokale, im Browser gelesene NetCDF- oder HDF5-Datei.",
      "sourceLabel": "Quelle",
      "sourceCloud": "Cloud-optimiert (Kerchunk-URL)",
      "sourceLocal": "Lokale Datei (NetCDF/HDF5)",
      "localFileLabel": "Lokale Datei",
      "chooseDifferentFile": "Andere Datei auswählen",
      "readingFile": "Wird gelesen...",
      "readingRemote": "Die Metadaten der Datei werden über HTTP gelesen...",
      "localFileHelp": "Wählen Sie eine lokale NetCDF- oder HDF5-Datei (.nc, .nc4, .cdf, .h5 oder .hdf5) aus; klassisches NetCDF-3 und NetCDF-4/HDF5 werden beide unterstützt. Sie wird in Ihrem Browser dekodiert; große Dateien benötigen mehr Arbeitsspeicher.",
      "errorNoVariables": "In der Datei wurden keine darstellbaren (2D oder höher) Variablen gefunden.",
      "errorNoFile": "Keine Datei geladen.",
      "kerchunkUrlLabel": "Kerchunk-Referenz-URL",
      "kerchunkUrlHelp": "Wählen Sie oben einen Beispieldatensatz oder fügen Sie Ihre eigene Kerchunk-Referenz-URL ein und klicken Sie dann auf „Variablen laden“.",
      "loading": "Wird geladen...",
      "loadVariables": "Variablen laden",
      "variableLabel": "Variable",
      "dimIndexLabel": "Index {{dim}}",
      "colormapLabel": "Farbtabelle",
      "bandCombinationLabel": "Bandkombination",
      "bandCombinationHelp": "Ein einzelnes Band wird über eine Farbtabelle dargestellt; ein RGB-Komposit zeichnet drei Bänder dieser Variablen als Rot-, Grün- und Blaukanal, jeweils auf den eigenen 2-98-%-Bereich gestreckt.",
      "modeSingleBand": "Einzelnes Band (mit Farbtabelle)",
      "modeRgb": "RGB-Komposit (drei Bänder)",
      "colorMin": "Farbminimum (optional)",
      "colorMax": "Farbmaximum (optional)",
      "adding": "Wird hinzugefügt...",
      "addLayer": "Ebene hinzufügen",
      "channel": {
        "red": "Rotes Band",
        "green": "Grünes Band",
        "blue": "Blaues Band"
      }
    },
    "deckViz": {
      "defaultName": "Deck.gl-Ebene",
      "errorChooseFile": "Wählen Sie eine CSV-, JSON- oder GeoJSON-Datei aus.",
      "errorUrl": "Geben Sie eine Daten-URL ein.",
      "errorUnknownType": "Unbekannter Ebenentyp.",
      "needsGeojson": "{{label}} benötigt eine GeoJSON-Datei.",
      "needsTabular": "{{label}} benötigt tabellarische CSV-/JSON-Daten, kein GeoJSON.",
      "mapRequiredFields_one": "Ordnen Sie das erforderliche Feld zu: {{fields}}.",
      "mapRequiredFields_other": "Ordnen Sie die erforderlichen Felder zu: {{fields}}.",
      "errorExample": "Die Beispieldaten konnten nicht geladen werden.",
      "loadedFeatures_one": "{{count}} Objekt geladen.",
      "loadedFeatures_other": "{{count}} Objekte geladen.",
      "loadedRows_one": "{{count}} Zeile",
      "loadedRows_other": "{{count}} Zeilen",
      "loadedColumns_one": "{{count}} Spalte",
      "loadedColumns_other": "{{count}} Spalten",
      "loadedTabular": "{{rows}} · {{columns}} geladen.",
      "errorLoad": "Die Daten konnten nicht geladen werden.",
      "errorLoadFirst": "Laden Sie zuerst die Beispieldaten oder eine Datei/URL.",
      "useExample": "Beispieldaten verwenden",
      "loadYourOwn": "Oder eigene Daten laden",
      "dataUrl": "Daten-URL",
      "localFile": "Lokale Datei",
      "urlPlaceholder": "https://example.com/data.csv",
      "chooseFileLoad": "Datei auswählen und laden",
      "loadData": "Daten laden",
      "selectRole": "— auswählen —",
      "roleNone": "(keine)",
      "closeAfterAdd": "Dialog nach dem Hinzufügen der Ebene schließen",
      "color": "Farbe",
      "pointSize": "Punktgröße",
      "cellSize": "Zellgröße",
      "lineWidth": "Linienbreite",
      "extrusion": "3D-Extrusion",
      "modelUrlPlaceholder": "https://example.com/model.glb"
    },
    "ogcFeatures": {
      "defaultName": "OGC API - Features-Ebene",
      "sampleLabel": "Seen weltweit (pygeoapi-Demo)",
      "urlPlaceholder": "https://example.com/ogcapi",
      "urlHint": "Die Startseite des Dienstes oder eine beliebige daraus kopierte URL (eine /collections- oder /collections/{id}/items-URL funktioniert ebenfalls).",
      "retrieveCollections": "Collections abrufen",
      "retrieving": "Wird abgerufen …",
      "retrievedCollections": "Abgerufene Collections",
      "selectCollection_one": "Aus {{count}} Collection auswählen",
      "selectCollection_other": "Aus {{count}} Collections auswählen",
      "noCollectionsFound": "Für diesen Dienst wurden keine Feature-Collections gefunden.",
      "retrieveError": "Die Collections dieses Dienstes konnten nicht abgerufen werden.",
      "collection": "Collection",
      "collectionPlaceholder": "collection-id",
      "maxFeatures": "Max. Objekte",
      "bbox": "Begrenzungsrahmen",
      "datetime": "Datum und Uhrzeit",
      "errorCollection": "Geben Sie eine OGC API - Features-Collection-ID ein.",
      "errorMaxFeatures": "Geben Sie für die maximale Objektanzahl einen Wert von 1 oder mehr ein.",
      "errorBbox": "Geben Sie den Begrenzungsrahmen als „West,Süd,Ost,Nord“ an.",
      "errorNoFeatures": "Diese Collection hat keine Objekte zurückgegeben."
    },
    "nonGeographicCoordinates": "Die Koordinaten in {{names}} sind keine geografische Länge/Breite, daher wird nichts auf der Karte gezeichnet. Das CRS ist falsch angegeben — projizieren Sie die Daten um (oder korrigieren Sie die .prj) und laden Sie sie erneut."
  },
  "offline": {
    "title": "Offline-Bereich herunterladen",
    "description": "Speichern Sie die Basiskarten-Kacheln der aktuellen Kartenansicht, damit dieser Bereich ohne Netzwerkverbindung weiter funktioniert.",
    "noServiceWorker": "Offline-Zwischenspeicherung erfordert die installierte Web-App. Hier heruntergeladene Kacheln werden in diesem Build nicht für die Offline-Nutzung gespeichert.",
    "uncacheable": "Die folgenden Basiskarten-Quellen unterstützen keinen Offline-Download und fehlen in Ihrer Offline-Karte: {{hosts}}.",
    "cacheable": "Die folgenden Basiskarten-Quellen werden heruntergeladen und stehen offline zur Verfügung: {{hosts}}.",
    "includeExtra": "Zusätzliche Detailstufen zum Heranzoomen einschließen",
    "currentViewOnly": "Nur aktuelle Ansicht · Zoom {{zoom}}",
    "detailLevels": "Zusätzliche Detailstufen",
    "relativeLevels_one": "+{{count}} Stufe · Zoom {{min}}–{{max}}",
    "relativeLevels_other": "+{{count}} Stufen · Zoom {{min}}–{{max}}",
    "tiles": "Herunterzuladende Ressourcen",
    "tooManyTiles": "Dieser Bereich überschreitet das Limit für den Offline-Cache ({{max}} Ressourcen); die ältesten zwischengespeicherten Kacheln werden möglicherweise entfernt, sobald neuere Ressourcen heruntergeladen werden. Reduzieren Sie die Detailstufen oder wählen Sie einen kleineren Bereich.",
    "acknowledgeEviction": "Trotzdem herunterladen und bei Bedarf ältere Kacheln entfernen",
    "download": "Herunterladen",
    "cancel": "Abbrechen",
    "progress": "{{done}} / {{total}} werden heruntergeladen…",
    "complete_one": "Offline-Bereich gespeichert. {{count}} Ressource für die Offline-Nutzung zwischengespeichert.",
    "complete_other": "Offline-Bereich gespeichert. {{count}} Ressourcen für die Offline-Nutzung zwischengespeichert.",
    "completeWithFailures": "{{done}} von {{total}} Ressourcen gespeichert ({{failed}} fehlgeschlagen).",
    "retryFailed_one": "{{count}} fehlgeschlagene Ressource erneut versuchen",
    "retryFailed_other": "{{count}} fehlgeschlagene Ressourcen erneut versuchen",
    "retryAll": "Alle Ressourcen erneut versuchen",
    "advanced": "Erweiterte Optionen",
    "concurrency": "Gleichzeitige Anfragen",
    "concurrencyHint": "Verringern Sie diesen Wert, um Server zu entlasten, die schnelle Kachel-Anfragen begrenzen (Rate-Limiting).",
    "timeout": "Anfrage-Timeout (Sekunden)",
    "timeoutHint": "Jede Kachel-Anfrage erhält bis zu {{seconds}}s, bevor sie als fehlgeschlagen gilt.",
    "timeoutDisabled": "Kein Timeout — Anfragen verwenden den Browser-Standard. Erhöhen Sie diesen Wert bei langsamen Verbindungen."
  },
  "offlineManager": {
    "title": "Offline-Bereiche verwalten",
    "description": "Überprüfen Sie die für die Offline-Nutzung heruntergeladenen Basiskarten-Bereiche, aktualisieren Sie sie oder löschen Sie sie, um Speicherplatz freizugeben.",
    "noServiceWorker": "Offline-Zwischenspeicherung erfordert die installierte Web-App. Das Aktualisieren von Bereichen speichert in diesem Build keine Kacheln für die Offline-Nutzung.",
    "empty": "Noch keine Offline-Bereiche vorhanden. Verwenden Sie „Offline-Bereich herunterladen“, um die aktuelle Kartenansicht für die Offline-Nutzung zu speichern.",
    "zoomRange": "Zoom {{min}}–{{max}}",
    "tilesCount_one": "{{count}} Kachel",
    "tilesCount_other": "{{count}} Kacheln",
    "savedOn": "Gespeichert am {{date}}",
    "rename": "Diesen Bereich umbenennen",
    "nameLabel": "Bereichsname",
    "update": "Diesen Bereich aktualisieren",
    "delete": "Diesen Bereich löschen",
    "confirmDelete": "Löschen",
    "updateAll": "Alle aktualisieren",
    "updating": "{{done}} / {{total}} werden aktualisiert…",
    "totalFootprint_one": "{{size}} in {{count}} Bereich",
    "totalFootprint_other": "{{size}} in {{count}} Bereichen",
    "deviceUsage": "{{usage}} von {{quota}} belegt"
  },
  "recordTour": {
    "title": "Kartentour aufzeichnen",
    "hint": "Verschieben und zoomen Sie die Karte, und erfassen Sie dann jede Ansicht. Die Karte bleibt interaktiv, solange dieses Panel geöffnet ist.",
    "unsupported": "Dieser Browser kann die Karten-Canvas nicht aufzeichnen. Verwenden Sie eine aktuelle Version von Chrome, Edge oder Firefox.",
    "addView": "Aktuelle Ansicht hinzufügen",
    "pathTitle": "Aus Pfad erzeugen",
    "pathNoLayers": "Fügen Sie eine LineString-Ebene hinzu, um Keyframes aus einem Pfad zu erzeugen.",
    "pathLayer": "Pfadebene",
    "pathLayerOption": "{{name}} ({{count}} Punkte)",
    "pathKeyframes": "Keyframes",
    "pathZoom": "Zoom",
    "pathPitch": "Neigung",
    "pathHold": "Halten",
    "pathTransition": "Bewegung",
    "pathGenerate": "Erzeugen",
    "pathConfirmReplace": "Die aktuellen Keyframes durch aus diesem Pfad erzeugte Keyframes ersetzen?",
    "pathGenerated_one": "{{count}} Keyframe aus dem Pfad erzeugt.",
    "pathGenerated_other": "{{count}} Keyframes aus dem Pfad erzeugt.",
    "pathGenerateError": "Aus diesem Pfad konnten keine Keyframes erzeugt werden.",
    "loadConfig": "Setup laden",
    "saveConfig": "Setup speichern",
    "confirmLoad": "Die aktuellen Keyframes durch das geladene Setup ersetzen?",
    "configFileType": "Tour-Konfiguration",
    "configSaved": "Setup als {{name}} gespeichert",
    "configLoaded_one": "Setup mit {{count}} Keyframe geladen.",
    "configLoaded_other": "Setup mit {{count}} Keyframes geladen.",
    "configSaveError": "Das Tour-Setup konnte nicht gespeichert werden. Bitte versuchen Sie es erneut.",
    "configLoadError": "Das Tour-Setup konnte nicht geladen werden. Die Datei ist möglicherweise ungültig.",
    "keyframeCount_one": "{{count}} Keyframe",
    "keyframeCount_other": "{{count}} Keyframes",
    "empty": "Verschieben und zoomen Sie die Karte zu einer Startansicht und fügen Sie sie als ersten Keyframe hinzu. Fügen Sie mindestens zwei Keyframes hinzu, um eine Tour aufzuzeichnen.",
    "flyToKeyframe": "Zu dieser Ansicht fliegen",
    "hold": "Halten",
    "transition": "Übergang",
    "secondsShort": "Sek.",
    "holdSeconds": "Sekunden, die diese Ansicht gehalten wird",
    "segmentSeconds": "Sekunden bis zur nächsten Ansicht",
    "resizeLeft": "Panel von der unteren linken Ecke aus skalieren",
    "resizeRight": "Panel von der unteren rechten Ecke aus skalieren",
    "recapture": "Auf aktuelle Kartenansicht aktualisieren",
    "moveUp": "Keyframe nach oben verschieben",
    "moveDown": "Keyframe nach unten verschieben",
    "removeKeyframe": "Keyframe entfernen",
    "fps": "Bilder pro Sekunde",
    "estimatedLength": "Etwa {{seconds}}s",
    "record": "Aufzeichnen",
    "videoFileType": "WebM-Video",
    "recordingStatus": "Aufzeichnung… {{percent}}%",
    "savingStatus": "Video wird gespeichert…",
    "stop": "Stopp",
    "recordingReady": "Aufzeichnung bereit. Benennen und speichern Sie sie, oder verwerfen Sie sie, um erneut aufzuzeichnen.",
    "fileNameLabel": "Dateiname",
    "saveVideo": "Video speichern…",
    "discard": "Verwerfen",
    "saved": "{{name}} gespeichert",
    "saveCancelled": "Speichern abgebrochen.",
    "recordError": "Die Tour konnte nicht aufgezeichnet werden. Bitte versuchen Sie es erneut.",
    "saveError": "Das Video konnte nicht gespeichert werden. Bitte versuchen Sie es erneut."
  },
  "recordVideo": {
    "title": "Video aufzeichnen",
    "hint": "Zeichnen Sie die Live-Karte als Video auf. Verschieben und zoomen Sie während der Aufzeichnung — jede Bewegung wird erfasst. Dieses Panel und der Auswahlrahmen sind nicht Teil des Videos.",
    "unsupported": "Dieser Browser kann die Karten-Canvas nicht aufzeichnen. Verwenden Sie eine aktuelle Version von Chrome, Edge oder Firefox.",
    "area": "Aufnahmebereich",
    "wholeMap": "Gesamte Karte",
    "selectArea": "Bereich auswählen…",
    "redrawArea": "Bereich neu zeichnen…",
    "drawHint": "Ziehen Sie ein Rechteck auf der Karte, um den Aufzeichnungsbereich festzulegen, oder drücken Sie Escape zum Abbrechen.",
    "regionChosen": "Aufzeichnungsbereich: {{width}} × {{height}} px. Der Rahmen bleibt fest, während sich die Karte darunter bewegt.",
    "noRegion": "Zeichnen Sie ein Rechteck auf der Karte, um den Aufzeichnungsbereich zu wählen.",
    "needRegion": "Wählen Sie zuerst einen Bereich auf der Karte aus.",
    "fps": "Bilder pro Sekunde",
    "caption": "Beschriftung (ins Video eingebrannt)",
    "captionTitlePlaceholder": "Titel (optional)",
    "captionTextLabel": "Untertitel oder Datenquelle der Beschriftung",
    "captionTextPlaceholder": "Untertitel oder Datenquelle (optional)",
    "captionPosition": "Position der Beschriftung",
    "captionPos": {
      "top-left": "Oben links",
      "top-center": "Oben mittig",
      "top-right": "Oben rechts",
      "bottom-left": "Unten links",
      "bottom-center": "Unten mittig",
      "bottom-right": "Unten rechts"
    },
    "includePanels": "Kartenpanels (Legende, Farbleiste, HTML) ins Video aufnehmen",
    "record": "Aufzeichnen",
    "preparing": "Wird vorbereitet…",
    "stop": "Stopp",
    "savingStatus": "Video wird gespeichert…",
    "recordingReady": "Aufzeichnung bereit. Benennen und speichern Sie sie, oder verwerfen Sie sie, um erneut aufzuzeichnen.",
    "fileNameLabel": "Dateiname",
    "saveVideo": "Video speichern…",
    "discard": "Verwerfen",
    "videoFileType": "Video",
    "saved": "{{name}} gespeichert",
    "saveCancelled": "Speichern abgebrochen.",
    "recordError": "Das Video konnte nicht aufgezeichnet werden. Bitte versuchen Sie es erneut.",
    "saveError": "Das Video konnte nicht gespeichert werden. Bitte versuchen Sie es erneut."
  },
  "fieldCollection": {
    "title": "Felddatenerfassung",
    "description": "Erfassen Sie Punkt-, Linien- oder Polygonbeobachtungen anhand eines benutzerdefinierten Formulars. Platzieren Sie einen Punkt per GPS oder durch Antippen der Karte, und zeichnen Sie Linien und Polygone Stützpunkt für Stützpunkt.",
    "captureDescription": "Erfassen Sie einen Standort per GPS oder auf der Karte, und füllen Sie dann das Formular aus, um ihn zu speichern.",
    "captureReviewDescription": "Überprüfen Sie den erfassten Standort, vervollständigen Sie das Formular und speichern Sie ihn in der Ebene.",
    "reopen": "Felddatenerfassung öffnen",
    "targetLayer": "Erfassungsebene",
    "newLayer": "Neue Erfassungsebene…",
    "layerName": "Ebenenname",
    "layerNamePlaceholder": "Feldbeobachtungen",
    "geometry": "Geometrie",
    "geom": {
      "point": "Punkt",
      "line": "Linie",
      "polygon": "Polygon"
    },
    "fields": "Formularfelder",
    "addField": "Feld hinzufügen",
    "fieldLabel": "Beschriftung",
    "fieldType": "Typ",
    "options": "Optionen (durch Komma getrennt)",
    "required": "Erforderlich",
    "noFields": "Noch keine Felder vorhanden. Fügen Sie Felder hinzu, um Attribute zu erfassen, oder erstellen Sie die Ebene, um nur den Standort zu erfassen.",
    "type": {
      "text": "Text",
      "number": "Zahl",
      "date": "Datum",
      "choice": "Auswahl"
    },
    "createLayer": "Ebene erstellen",
    "captureHint": "Verwenden Sie GPS oder wählen Sie einen Punkt auf der Karte, um eine Erfassung zu starten.",
    "drawHint": "Zeichnen Sie die Form auf der Karte, um eine Erfassung zu starten.",
    "useGps": "GPS verwenden",
    "pickOnMap": "Auf der Karte wählen",
    "reposition": "Punkt neu positionieren",
    "drawOnMap": "Auf der Karte zeichnen",
    "pickBannerTitle": "Platzierungsmodus aktiv",
    "pickBannerHint": "Klicken Sie irgendwo auf die Karte, um einen Punkt auszuwählen, oder drücken Sie Esc, um abzubrechen.",
    "addGpsVertex": "GPS-Stützpunkt hinzufügen",
    "undo": "Rückgängig",
    "finish": "Fertigstellen",
    "vertices_one": "{{count}} Stützpunkt",
    "vertices_other": "{{count}} Stützpunkte",
    "needMore": "Fügen Sie mindestens {{min}} Stützpunkte hinzu",
    "dblClickHint": "Tippen, um Stützpunkte hinzuzufügen; Doppelklick zum Beenden.",
    "locating": "Standort wird ermittelt…",
    "photo": "Foto",
    "photoOptional": "Foto (optional)",
    "choosePhoto": "Foto auswählen…",
    "removePhoto": "Entfernen",
    "save": {
      "point": "Punkt speichern",
      "line": "Linie speichern",
      "polygon": "Polygon speichern"
    },
    "saved": {
      "point_one": "{{count}} Punkt in {{layer}} gespeichert.",
      "point_other": "{{count}} Punkte in {{layer}} gespeichert.",
      "line_one": "{{count}} Linie in {{layer}} gespeichert.",
      "line_other": "{{count}} Linien in {{layer}} gespeichert.",
      "polygon_one": "{{count}} Polygon in {{layer}} gespeichert.",
      "polygon_other": "{{count}} Polygone in {{layer}} gespeichert."
    },
    "layerGone": "Die Erfassungsebene ist nicht mehr verfügbar.",
    "noGeolocation": "Standortbestimmung ist auf diesem Gerät nicht verfügbar.",
    "geolocationDenied": "Ihr Standort konnte nicht ermittelt werden. Überprüfen Sie die Standortberechtigungen und versuchen Sie es erneut.",
    "photoTooLarge": "Dieses Foto ist zu groß (max. {{max}}). Wählen Sie ein kleineres Bild.",
    "photoReadError": "Dieses Bild konnte nicht gelesen werden. Versuchen Sie eine andere Datei.",
    "errorRequired": "Dieses Feld ist erforderlich.",
    "errorNumber": "Geben Sie eine gültige Zahl ein.",
    "errorChoice": "Wählen Sie eine der aufgeführten Optionen."
  },
  "gps": {
    "title": "GPS-Tracking",
    "description": "Übertragen Sie Ihre Geräteposition live auf die Karte, zeichnen Sie ein Track-Log auf und erfassen Sie Punkte an Ihrem aktuellen Standort.",
    "start": "GPS starten",
    "stop": "GPS stoppen",
    "follow": "Karte auf meiner Position zentriert halten",
    "waitingForFix": "Warte auf GPS-Fix…",
    "noGeolocation": "Standortbestimmung ist auf diesem Gerät nicht verfügbar.",
    "permissionDenied": "Die Standortberechtigung wurde verweigert. Aktivieren Sie sie in Ihren Browser- oder Systemeinstellungen und versuchen Sie es erneut.",
    "trackLog": "Track-Log",
    "record": "Track aufzeichnen",
    "pause": "Pausieren",
    "resume": "Fortsetzen",
    "discard": "Verwerfen",
    "saveTrack": "Als Ebene speichern",
    "exportGpx": "GPX exportieren",
    "exportGeojson": "GeoJSON exportieren",
    "points_one": "{{count}} Punkt",
    "points_other": "{{count}} Punkte",
    "trackLayerName": "GPS-Track",
    "trackSaved": "{{name}} als Ebene gespeichert.",
    "trackExported": "Track exportiert.",
    "exportCancelled": "Export abgebrochen.",
    "exportFailed": "Der Track konnte nicht exportiert werden. Bitte versuchen Sie es erneut.",
    "capture": "Digitalisieren",
    "capturePoint": "Punkt erfassen",
    "captureLayerName": "GPS-Punkte",
    "captured_one": "{{count}} Punkt in dieser Sitzung erfasst.",
    "captured_other": "{{count}} Punkte in dieser Sitzung erfasst.",
    "pointCaptured": "Punkt in {{layer}} gespeichert.",
    "captureBlocked": "Die Fix-Genauigkeit beträgt ±{{accuracy}} und ist damit schlechter als der Schwellenwert von {{max}} m. Punkt nicht gespeichert.",
    "satellites": "Satelliten",
    "satellitesShort": "Sat",
    "satellitesValue": "Satelliten: {{value}}",
    "satellitesShortValue": "Sat: {{value}}",
    "notAvailable": "—",
    "settings": "Aufzeichnungsfilter",
    "minDistance": "Min. Abstand (m)",
    "minTime": "Min. Zeit (s)",
    "maxAccuracy": "Max. Genauigkeit (m)",
    "settingsHint": "Track-Fixes, die näher als der Mindestabstand oder die Mindestzeit liegen, werden übersprungen. Fixes, die ungenauer als die Genauigkeitsschwelle sind, werden nicht aufgezeichnet, und die Punkterfassung wird blockiert. 0 deaktiviert einen Filter.",
    "openDialog": "GPS-Tracking öffnen",
    "altitudeValue": "Höhe: {{value}} m",
    "speedValue": "{{value}} km/h",
    "headingValue": "{{value}}°",
    "source": "Positionsquelle",
    "sourceDevice": "Dieses Gerät",
    "sourceNmea": "NMEA-Empfänger (seriell oder Bluetooth)",
    "nmeaBaudRate": "Baudrate",
    "nmeaConnectSerial": "Seriell verbinden",
    "nmeaConnectBluetooth": "Bluetooth verbinden",
    "nmeaConnecting": "Verbindung wird hergestellt…",
    "nmeaConnected": "Mit {{device}} verbunden.",
    "nmeaDisconnect": "Trennen",
    "nmeaNotConnected": "Verbinden Sie oben einen NMEA-Empfänger, um Positionen zu streamen.",
    "nmeaWaiting": "Warten auf Datensätze…",
    "nmeaStats": "Datensätze: {{parsed}} · Fixes: {{fixes}}",
    "nmeaConnectFailed": "Verbindung zum Empfänger nicht möglich.",
    "nmeaDisconnected": "Der Empfänger hat die Verbindung getrennt.",
    "nmeaUnsupportedDevice": "Auf diesem Gerät wurde kein NMEA-Dienst gefunden. Möglicherweise handelt es sich um einen klassischen Bluetooth-Empfänger, der in den Systemeinstellungen gekoppelt und dann hier als serieller Anschluss verbunden werden muss.",
    "nmeaUnsupported": "Das Auslesen eines NMEA-Empfängers erfordert die Web-Serial- oder Web-Bluetooth-API, die dieser Browser nicht bereitstellt. Öffnen Sie GeoLibre in einem Chromium-Browser wie Chrome oder Edge.",
    "nmeaSerialUnsupported": "Web Serial ist hier nicht verfügbar, daher können serielle Empfänger nicht geöffnet werden.",
    "nmeaBluetoothUnsupported": "Web Bluetooth ist hier nicht verfügbar, daher können Bluetooth-Low-Energy-Empfänger nicht geöffnet werden.",
    "nmeaBluetoothHint": "Die meisten Bluetooth-GPS-Empfänger verwenden klassisches Bluetooth: Koppeln Sie einen in den Systemeinstellungen, dann erscheint er hier als serieller Anschluss. Verwenden Sie „Bluetooth verbinden“ nur für Bluetooth-Low-Energy-Empfänger.",
    "fixQuality": {
      "invalid": "Kein Fix",
      "gps": "GPS-Fix",
      "dgps": "Differentielles GPS",
      "pps": "PPS-Fix",
      "rtk-fixed": "RTK fixiert",
      "rtk-float": "RTK Float",
      "estimated": "Koppelnavigation",
      "manual": "Manuelle Eingabe",
      "simulation": "Simuliert"
    }
  },
  "georeferencer": {
    "title": "Bild georeferenzieren",
    "description": "Verankern Sie ein Bild auf der Karte: Laden Sie es, verknüpfen Sie Bildpunkte mit Kartenpositionen und fügen Sie es dann als georeferenziertes Overlay hinzu.",
    "loadImage": "Klicken, um ein Bild zu laden (PNG, JPG, TIFF)",
    "imageTooLarge": "Dieses Bild ist zu groß (max. {{max}}). Wählen Sie ein kleineres Bild.",
    "imageReadError": "Dieses Bild konnte nicht gelesen werden. Versuchen Sie eine andere Datei.",
    "imageNoDimensions": "Die Bildgröße konnte nicht ermittelt werden. Verwenden Sie ein Rasterbild (PNG, JPG, TIFF).",
    "sourceImage": "Quellbild ({{w}} × {{h}} px)",
    "clickImageHint": "Klicken Sie auf einen Punkt im Bild und verknüpfen Sie ihn dann auf der Karte.",
    "pixelPicked": "Bildpunkt: {{x}}, {{y}}",
    "linkOnMap": "Auf der Karte verknüpfen",
    "zoomIn": "Vergrößern",
    "zoomOut": "Verkleinern",
    "zoomReset": "Zoom zurücksetzen",
    "importGcps": "Importieren",
    "exportGcps": "Exportieren",
    "gcpsImported": "{{count}} Passpunkt(e) importiert.",
    "gcpsReadError": "Passpunkte konnten nicht aus dieser Datei gelesen werden.",
    "gcpsOutsideImage": "Einige Passpunkte liegen außerhalb des geladenen Bilds — sie stammen möglicherweise von einem anderen Bild.",
    "transformNeedsMore": "Diese Transformation benötigt mindestens {{min}} Passpunkte.",
    "gcps": "Passpunkte ({{count}})",
    "needGcps": "Fügen Sie mindestens {{min}} Passpunkte hinzu, um zu georeferenzieren.",
    "collinear": "Passpunkte liegen kollinear oder deckungsgleich — verschieben Sie einen Punkt von der Linie weg.",
    "cornersOutOfRange": "Diese Anpassung platziert das Bild außerhalb der gültigen Kartengrenzen. Passen Sie die Passpunkte an.",
    "residual": "Residuum",
    "rms": "RMS {{rms}} m",
    "opacity": "Deckkraft des Overlays",
    "addToMap": "Zur Karte hinzufügen",
    "clear": "Leeren",
    "defaultName": "Georeferenziertes Bild",
    "exportTiff": "GeoTIFF exportieren",
    "exportTiffButton": "Exportieren",
    "exportTiffHint": "Entzerrt das Bild in Ihrem Browser zu einem Cloud-Optimized GeoTIFF (GDAL/WASM). Die Engine wird bei der ersten Nutzung heruntergeladen.",
    "transform": {
      "affine": "Affin (linear)",
      "polynomial": "Polynomial (Grad 2)",
      "tps": "Thin-Plate-Spline"
    },
    "exporting": "GeoTIFF wird exportiert… (GDAL wird bei erster Nutzung geladen)",
    "exported": "GeoTIFF exportiert.",
    "exportFailed": "GeoTIFF-Export fehlgeschlagen. Details siehe Konsole."
  },
  "collaborate": {
    "title": "Live-Zusammenarbeit",
    "description": "Teilen Sie eine Live-Sitzung, damit andere diese Karte in Echtzeit mit Ihnen ansehen und bearbeiten können.",
    "displayName": "Ihr Name",
    "displayNamePlaceholder": "z. B. Alex",
    "color": "Ihre Farbe",
    "startHeading": "Sitzung starten",
    "joinHeading": "Sitzung beitreten",
    "mode": "Wer bearbeiten darf",
    "modeCoEdit": "Jeder kann bearbeiten",
    "modeViewOnly": "Nur Sie können bearbeiten (andere sehen zu)",
    "start": "Sitzung starten",
    "join": "Beitreten",
    "joinSession": "Sitzung beitreten",
    "invitedHeading": "Sie wurden eingeladen",
    "invitedDescription": "Wählen Sie Ihren Namen und Ihre Farbe und treten Sie dann der Live-Sitzung des Hosts bei.",
    "startInstead": "Stattdessen eine neue Sitzung starten",
    "sessionCode": "Sitzungscode",
    "sessionCodePlaceholder": "Code eingeben",
    "shareLink": "Link teilen",
    "scanToJoin": "Zum Beitreten scannen",
    "copyLink": "Link kopieren",
    "copyCode": "Code kopieren",
    "copied": "Kopiert",
    "participants": "Teilnehmer ({{count}})",
    "host": "Host",
    "you": "Sie",
    "guest": "Gast",
    "connectFailed": "Verbindung zum Kollaborationsserver konnte nicht hergestellt werden.",
    "copyFailed": "Kopieren in die Zwischenablage fehlgeschlagen.",
    "connecting": "Verbindung wird hergestellt…",
    "reconnecting": "Verbindung wird wiederhergestellt…",
    "connected": "Live-Sitzung aktiv",
    "followHost": "Ansicht des Hosts folgen",
    "goToMap": "Zur Karte wechseln und zusammenarbeiten",
    "goToMapViewOnly": "Zur Karte wechseln und zusehen",
    "collapseRoster": "Teilnehmerliste einklappen",
    "manageSession": "Sitzung verwalten",
    "sessionStatusTooltip": "Live-Kollaborationssitzung. Klicken, um zu sehen, wer verbunden ist.",
    "announcements": "Sitzungsmeldungen",
    "participantJoined": "{{name}} ist der Sitzung beigetreten",
    "participantLeft": "{{name}} hat die Sitzung verlassen",
    "leave": "Sitzung verlassen",
    "switchToCoEdit": "Allen das Bearbeiten erlauben",
    "switchToViewOnly": "Auf Nur-Ansicht umstellen",
    "nameRequired": "Geben Sie Ihren Namen ein, um fortzufahren.",
    "codeRequired": "Geben Sie einen Sitzungscode ein, um beizutreten.",
    "canEdit": "Kann bearbeiten",
    "viewOnly": "Nur Ansicht",
    "allowEdit": "Dieser Person das Bearbeiten erlauben",
    "setViewOnly": "Diese Person auf Nur-Ansicht setzen",
    "chatLog": "Sitzungs-Chat",
    "chatCompose": "Nachricht eingeben",
    "chatEmpty": "Noch keine Nachrichten.",
    "chatPlaceholder": "Nachricht senden…",
    "chatSend": "Nachricht senden",
    "chatAttachLocation": "Aktuelle Kartenposition anhängen",
    "chatLocationAttached": "Position angehängt (zum Entfernen klicken)",
    "chatGoToLocation": "Zu dieser Position wechseln",
    "sessionStatusUnread_one": "Live-Kollaborationssitzung, {{count}} ungelesene Nachricht. Klicken, um zu sehen, wer verbunden ist, und zu chatten.",
    "sessionStatusUnread_other": "Live-Kollaborationssitzung, {{count}} ungelesene Nachrichten. Klicken, um zu sehen, wer verbunden ist, und zu chatten."
  },
  "share": {
    "title": "Projekt teilen",
    "description": "Laden Sie das aktuelle Projekt auf {{shareHost}} hoch und erhalten Sie einen teilbaren Link.",
    "setupIntro": "Verbinden Sie Ihr {{shareHost}}-Konto, bevor Sie hochladen.",
    "step1Title": "1. API-Token erstellen",
    "step1Description": "Melden Sie sich bei {{shareHost}} an und erstellen Sie dann ein Token unter Einstellungen → API-Token.",
    "getToken": "API-Token abrufen",
    "step2Title": "2. Token zu GeoLibre hinzufügen",
    "step2Description": "Fügen Sie das Token unter Einstellungen → Umgebungsvariablen auf diesem Gerät ein.",
    "configureToken": "Lokales Token konfigurieren",
    "liveAt": "Ihr Projekt ist live unter:",
    "copyLink": "Link kopieren",
    "open": "Öffnen",
    "done": "Fertig",
    "projectTitle": "Projekttitel",
    "titlePlaceholder": "Benennen Sie Ihr Projekt",
    "titleRequired": "Geben Sie einen Projekttitel ein, bevor Sie teilen.",
    "visibility": "Sichtbarkeit",
    "visibilityUnlisted": "Nicht gelistet (jeder mit dem Link)",
    "visibilityPublic": "Öffentlich (in der Galerie gelistet)",
    "visibilityPrivate": "Privat (nur Sie)",
    "shareButton": "Teilen",
    "sharing": "Wird geteilt…",
    "errorFallback": "Das Projekt konnte nicht geteilt werden.",
    "usernameRequired": "Legen Sie einen Benutzernamen für Ihr {{shareHost}}-Konto fest, bevor Sie teilen. Öffnen Sie Ihre Kontoeinstellungen, um einen auszuwählen, und versuchen Sie es erneut.",
    "openAccountSettings": "Kontoeinstellungen öffnen",
    "credentialsRemoved": "{{count}} Anmeldedatenfeld(er) wurden nicht einbezogen. Empfänger müssen eigene Anmeldedaten angeben oder eine vermittelte Referenz verwenden."
  },
  "gallery": {
    "title": "Projektgalerie",
    "description": "Durchsuchen Sie öffentliche Projekte auf {{shareHost}} und öffnen Sie eines in GeoLibre.",
    "searchPlaceholder": "Geladene Projekte nach Titel, Autor oder Tag filtern",
    "loading": "Projekte werden geladen…",
    "loadingMore": "Weitere werden geladen…",
    "loadMore": "Weitere laden",
    "empty": "Noch keine öffentlichen Projekte vorhanden.",
    "noMatches": "Keine geladenen Projekte entsprechen Ihrem Filter.",
    "errorFallback": "Die Projektgalerie konnte nicht geladen werden.",
    "errorTimeout": "Zeitüberschreitung beim Laden der Projektgalerie. Bitte versuchen Sie es erneut.",
    "errorNetwork": "{{shareHost}} konnte nicht erreicht werden. Überprüfen Sie Ihre Internetverbindung.",
    "errorHttp": "Die Galerie konnte nicht geladen werden (HTTP {{status}}).",
    "errorInvalidResponse": "Die Galerie konnte nicht geladen werden (ungültige Serverantwort).",
    "errorUnauthorized": "Ihr {{shareHost}}-API-Token ist ungültig oder abgelaufen. Aktualisieren Sie es in den Einstellungen.",
    "errorUsernameRequired": "Legen Sie einen Benutzernamen für Ihr {{shareHost}}-Konto fest, bevor Sie Ihre Projekte laden.",
    "errorNotConfigured": "In dieser Bereitstellung ist kein Server zum Teilen von Projekten konfiguriert.",
    "retry": "Erneut versuchen",
    "open": "Öffnen",
    "openCopy": "Kopie öffnen",
    "opening": "Wird geöffnet…",
    "openingCopy": "Kopie wird geöffnet…",
    "openOnWeb": "Im Web ansehen",
    "openError": "Dieses Projekt konnte nicht geöffnet werden.",
    "byAuthor": "von {{author}}",
    "views_one": "{{count}} Aufruf",
    "views_other": "{{count}} Aufrufe",
    "untitled": "Unbenanntes Projekt",
    "noThumbnail": "Keine Vorschau",
    "resizeDialog": "Galerie in der Größe ändern",
    "scopeFeatured": "Empfohlen",
    "scopeAll": "Alle Projekte",
    "scopeMine": "Meine Projekte",
    "signedOutHint": "Fügen Sie in den Einstellungen ein {{shareHost}}-API-Token hinzu, um Ihre eigenen nicht gelisteten und privaten Projekte zu sehen.",
    "emptyFeatured": "Noch keine empfohlenen Projekte.",
    "emptyMine": "Sie haben noch keine Projekte geteilt.",
    "visibilityUnlisted": "Nicht gelistet",
    "visibilityPrivate": "Privat"
  },
  "template": {
    "saveTitle": "Als Vorlage speichern",
    "saveDescription": "Dieses Projekt vorkonfiguriert als wiederverwendbare Vorlage in Ihrer persönlichen Bibliothek speichern.",
    "defaultName": "Unbenannte Vorlage",
    "nameLabel": "Vorlagenname",
    "namePlaceholder": "z. B. Standard-Organisationskarte",
    "descriptionLabel": "Beschreibung (optional)",
    "descriptionPlaceholder": "z. B. Vorkonfigurierte Basiskarte, Stile und Dashboard-Layout für Teamkarten",
    "stripDataLayersLabel": "Datenebenen entfernen",
    "stripDataLayersDesc": "Basiskarte, Ebenengruppen, Stile, Legende, Widgets und Layout behalten, aber die Inhalte der Datenebenen entfernen.",
    "saveAction": "In Vorlagenbibliothek speichern"
  },
  "language": {
    "label": "Sprache",
    "description": "Wählen Sie die für die Benutzeroberfläche verwendete Sprache."
  },
  "printLayout": {
    "title": "Drucklayout",
    "description": "Erstellen Sie eine druckfertige Karte mit Titel, Legende, Maßstabsleiste und Nordpfeil und exportieren Sie sie als PNG oder PDF.",
    "preview": "Vorschau",
    "resizeControls": "Bedienfeld in der Größe ändern",
    "resizeDialog": "Dialog in der Größe ändern",
    "recapture": "Karte neu erfassen",
    "copyToClipboard": "In die Zwischenablage kopieren",
    "copied": "Kopiert",
    "exportPng": "PNG exportieren",
    "exportPdf": "PDF exportieren",
    "titleLabel": "Titel",
    "titlePlaceholder": "Kartentitel",
    "subtitleLabel": "Untertitel",
    "subtitlePlaceholder": "Optionaler Untertitel",
    "size": "Größe",
    "sizeGroup": {
      "paper": "Papier",
      "screen": "Bildschirm / digital"
    },
    "sizeCustom": "Benutzerdefiniert…",
    "orientation": "Ausrichtung",
    "portrait": "Hochformat",
    "landscape": "Querformat",
    "width": "Breite",
    "height": "Höhe",
    "unit": "Einheit",
    "titlePlacement": "Titelplatzierung",
    "placement": {
      "outside": "Außerhalb des Rahmens",
      "inside": "Innerhalb des Rahmens"
    },
    "alignment": "Ausrichtung",
    "align": {
      "left": "Links",
      "center": "Zentriert",
      "right": "Rechts"
    },
    "mapElements": "Kartenelemente",
    "element": {
      "title": "Titel",
      "subtitle": "Untertitel",
      "legend": "Legende",
      "scaleBar": "Maßstabsleiste",
      "northArrow": "Nordpfeil",
      "groupNavigation": "Nordpfeil und Maßstabsleiste gruppieren",
      "footer": "Fußzeilentext",
      "date": "Datum",
      "attribution": "GeoLibre-Attribution einschließen",
      "pageBorder": "Seitenrand",
      "infoBlock": "Infoblock (Schriftfeld)",
      "colorbar": "Farbskala",
      "customLegend": "Benutzerdefinierte Legende",
      "dataTable": "Attributtabelle",
      "dataChart": "Diagramm"
    },
    "dataBlocks": {
      "layer": "Ebene",
      "titleLabel": "Überschrift",
      "position": "Position",
      "filterToPage": "Nur Objekte in der Seitenausdehnung",
      "filterToPageHint": "Gilt für Atlas-Seiten und eine gezeichnete Druckausdehnung; andernfalls wird die gesamte Ebene verwendet."
    },
    "dataTable": {
      "columns": "Spalten",
      "columnsHint": "Die ersten {{count}} Felder sind standardmäßig ausgewählt. Aktivieren Sie Spalten, um die Auswahl anzupassen.",
      "maxRows": "Max. Zeilen",
      "moreRows_one": "+{{count}} weitere",
      "moreRows_other": "+{{count}} weitere",
      "noRows": "Mit den aktuellen Einstellungen gibt es keine Zeilen anzuzeigen."
    },
    "dataChart": {
      "type": "Diagrammtyp",
      "typeBar": "Balken",
      "typePie": "Kreis",
      "typeLine": "Linie",
      "categoryField": "Kategoriefeld",
      "aggregation": "Aggregation",
      "aggCount": "Anzahl",
      "aggSum": "Summe",
      "aggMean": "Mittelwert",
      "valueField": "Wertefeld",
      "noNumericFields": "Diese Ebene hat kein numerisches Feld zum Aggregieren.",
      "noData": "Keine Diagrammdaten mit den aktuellen Einstellungen."
    },
    "customLegend": {
      "title": "Legendentitel",
      "color": "Farbe",
      "itemLabel": "Beschriftung",
      "position": "Position",
      "addItem": "Eintrag hinzufügen",
      "removeItem": "Eintrag entfernen",
      "importFromDict": "Aus Wörterbuch importieren",
      "import": "Importieren",
      "importError": "Geben Sie ein gültiges {\"label\": \"color\"}-Wörterbuch ein."
    },
    "colorbar": {
      "colormap": "Farbschema",
      "min": "Minimalwert",
      "max": "Maximalwert",
      "label": "Beschriftung",
      "labelPlaceholder": "z. B. Höhe (m)",
      "orientation": "Ausrichtung",
      "vertical": "Vertikal",
      "horizontal": "Horizontal",
      "position": "Position",
      "length": "Länge"
    },
    "position": {
      "topLeft": "Oben links",
      "topRight": "Oben rechts",
      "bottomLeft": "Unten links",
      "bottomRight": "Unten rechts"
    },
    "footerTextLabel": "Fußzeilentext",
    "footerPlaceholder": "Benutzerdefinierter Fußzeilentext",
    "margin": "Rand",
    "marginOption": {
      "normal": "Normal",
      "narrow": "Schmal",
      "none": "Kein (randlos)"
    },
    "mapBackground": "Kartenhintergrund",
    "scaleLabel": "Maßstab (1:N)",
    "scalePlaceholder": "z. B. 25000",
    "scalePresets": "Voreinstellungen…",
    "scalePresetsAria": "Maßstabsvoreinstellung",
    "extent": {
      "label": "Druckausdehnung",
      "draw": "Ausdehnung auf der Karte zeichnen",
      "redraw": "Ausdehnung auf der Karte neu zeichnen",
      "useViewport": "Aktiven Kartenausschnitt verwenden",
      "useCustom": "Auf benutzerdefinierte Ausdehnung zuschneiden",
      "clear": "Ausdehnung löschen",
      "hint": "Ziehen Sie ein Rechteck auf der Karte, um den genauen Druckbereich festzulegen. Halten Sie Umschalt gedrückt, um die Seitenproportionen einzuhalten."
    },
    "info": {
      "author": "Autor",
      "authorPlaceholder": "Autor oder Organisation",
      "project": "Projektnr.",
      "projectPlaceholder": "Referenznummer",
      "crs": "CRS",
      "crsPlaceholder": "z. B. EPSG:4326",
      "scale": "Maßstab",
      "revision": "Revision",
      "revisionPlaceholder": "z. B. Rev 01"
    },
    "borderColor": "Rahmenfarbe",
    "borderWidth": "Rahmenbreite",
    "mapBorderColor": "Farbe des Kartenrahmens",
    "mapBorderWidth": "Breite des Kartenrahmens",
    "errors": {
      "mapNotReady": "Die Karte ist noch nicht bereit. Versuchen Sie es gleich noch einmal.",
      "captureFailed": "Das Kartenbild konnte nicht erfasst werden.",
      "captureFirst": "Erfassen Sie die Karte, bevor Sie exportieren.",
      "exportFailed": "Export als {{format}} fehlgeschlagen.",
      "clipboardFailed": "Das Layout konnte nicht in die Zwischenablage kopiert werden.",
      "scaleOutOfRange": "Dieser Maßstab liegt außerhalb des Bereichs, den die aktuelle Ansicht erreichen kann; der nächstliegende verfügbare Maßstab wird angezeigt."
    },
    "legend": {
      "section": "Legende",
      "titleLabel": "Legendentitel",
      "defaultTitle": "Legende",
      "groupByLayer": "Klassen nach Ebene gruppieren",
      "empty": "Keine sichtbaren Ebenen zum Einbeziehen in die Legende.",
      "labelPlaceholder": "Beschriftung",
      "moveUp": "Eintrag nach oben verschieben",
      "moveDown": "Eintrag nach unten verschieben",
      "showEntry": "Eintrag anzeigen",
      "hideEntry": "Eintrag ausblenden",
      "moreItems_one": "+{{count}} weitere",
      "moreItems_other": "+{{count}} weitere"
    },
    "atlas": {
      "section": "Atlas (Kartenserie)",
      "enable": "Eine mehrseitige Kartenserie erzeugen",
      "coverageLayer": "Abdeckungsebene",
      "coverage": "Abdeckung",
      "coveragePerFeature": "Eine Seite pro Objekt",
      "coverageAlongLine": "Seiten entlang einer Linie",
      "segmentLength": "Segmentlänge (km)",
      "segmentRequired": "Geben Sie eine Segmentlänge von mindestens 0,1 km ein.",
      "segmentTruncated": "Serie auf {{count}} Seiten begrenzt. Erhöhen Sie die Segmentlänge.",
      "noLineFeatures": "Die Abdeckungsebene enthält keine Linienobjekte.",
      "noLayers": "Keine Vektorebenen mit geladenen Objekten. Fügen Sie zuerst eine GeoJSON- oder andere lokale Vektorebene hinzu.",
      "nameField": "Feld für Seitennamen",
      "nameFieldNone": "Objektnummer",
      "extentMode": "Seitenausdehnung",
      "extentMargin": "Rand um das Objekt",
      "extentScale": "Fester Maßstab",
      "marginLabel": "Rand (%)",
      "scaleLabel": "Maßstab",
      "scaleRequired": "Geben Sie einen Maßstab größer als null ein.",
      "sortField": "Sortieren nach",
      "sortNone": "Ebenenreihenfolge",
      "sortOrder": "Reihenfolge",
      "sortAsc": "Aufsteigend",
      "sortDesc": "Absteigend",
      "filterLabel": "Filter",
      "filterPlaceholder": "z. B. POP2000 > 100000 and ST = \"CA\"",
      "filterError": "Der Filter konnte nicht ausgewertet werden. Verwenden Sie Feld-Operator-Wert-Vergleiche (=, !=, >, >=, <, <=, contains), verknüpft mit „and“.",
      "filenamePattern": "Dateiname der Seite (ZIP-Export)",
      "pages_one": "{{count}} Seite",
      "pages_other": "{{count}} Seiten",
      "noPages": "Keine Objekte entsprechen dem aktuellen Filter.",
      "pageOf": "Seite {{current}} von {{total}}",
      "prevPage": "Vorherige Atlas-Seite",
      "nextPage": "Nächste Atlas-Seite",
      "exportZip": "PNG-ZIP exportieren",
      "exportPdfPages_one": "PDF exportieren ({{count}} Seite)",
      "exportPdfPages_other": "PDF exportieren ({{count}} Seiten)",
      "exporting": "Seite {{current}} von {{total}} wird exportiert...",
      "tokensHint": "Die Platzhalter {atlas.name}, {atlas.pagenumber}, {atlas.total} und {atlas.attr:FIELD} werden pro Seite in Titel, Untertitel, Fußzeile und Seiten-Dateinamen ersetzt.",
      "alongLineHint": "Die Seiten folgen jeder Linie der Reihe nach; km_start, km_end, segment und segments stehen als {atlas.attr:FIELD}-Platzhalter zur Verfügung."
    }
  },
  "kml": {
    "importFailed": "KML/KMZ konnte nicht importiert werden.",
    "timeOverlayGroup": "Animation der Zeitüberlagerung"
  },
  "map": {
    "boundsRestricted": "Grenzen gesperrt",
    "boundsRestrictedTooltip": "Die Kartengrenzen sind eingeschränkt. Sie können dies in den Einstellungen ändern.",
    "directionsMode": {
      "title": "Routenmodus aktiv",
      "hint": "Klicken Sie auf die Karte, um Wegpunkte hinzuzufügen. Ziehen Sie einen Wegpunkt, um ihn zu verschieben, oder klicken Sie darauf, um ihn zu entfernen. Routen werden automatisch aktualisiert.",
      "removeLast": "Letzten entfernen",
      "clear": "Löschen",
      "exit": "Beenden",
      "calculating": "Route wird berechnet...",
      "totalDistance": "Entfernung",
      "estimatedTime": "Geschätzte Zeit",
      "segment": "Abschnitt {{index}}",
      "metricsUnavailable": "Routenmetriken nicht verfügbar",
      "distanceKilometers": "{{value}} km",
      "distanceMeters": "{{value}} m",
      "durationLessThanMinute": "< 1 Min.",
      "durationMinutes": "{{value}} Min.",
      "durationHours": "{{value}} Std.",
      "durationHoursMinutes": "{{hours}} Std. {{minutes}} Min.",
      "waypointCount_zero": "Noch keine Wegpunkte platziert",
      "waypointCount_one": "{{count}} Wegpunkt platziert",
      "waypointCount_other": "{{count}} Wegpunkte platziert"
    },
    "reverseGeocodeMode": {
      "title": "Reverse-Geocoding-Modus aktiv",
      "hint": "Klicken Sie an eine beliebige Stelle auf der Karte, um die Adresse an diesem Punkt nachzuschlagen.",
      "exit": "Beenden"
    },
    "pixelTimeSeriesMode": {
      "start": "Pixel-Zeitreihe"
    }
  },
  "terrainSettings": {
    "title": "Geländeüberhöhung",
    "description": "Passen Sie die vertikale Überhöhung des 3D-Geländes an. Höhere Werte lassen Hügel und Berge steiler erscheinen.",
    "label": "Vertikale Überhöhung",
    "controlLabel": "Gelände umschalten (Doppelklick für Überhöhung)",
    "reset": "Zurücksetzen",
    "done": "Fertig"
  },
  "pixelTimeSeries": {
    "title": "Pixel-Zeitreihe",
    "empty": "Klicken Sie auf ein Pixel auf der Karte, um dessen Wert im Zeitverlauf darzustellen. Fügen Sie weitere Pixel zum Vergleich hinzu.",
    "band": "Band",
    "bandOption": "Band {{index}}",
    "pointLabel": "Punkt {{number}}",
    "pickPoints": "Punkte auswählen",
    "stopPicking": "Auswahl beenden",
    "clearAll": "Alle löschen",
    "removePoint": "{{label}} entfernen",
    "close": "Schließen",
    "erroredExcluded": "Der Export schließt {{n}} fehlgeschlagene(n) Lesevorgang(vorgänge) aus.",
    "querying": "Pixelwerte werden über die Zeitachse gelesen...",
    "progress": "{{done}} von {{total}} werden gelesen...",
    "noValues": "Keine Werte für das ausgewählte Band an diesen Standorten (außerhalb des Rasters oder alle Zeitschritte sind NoData).",
    "truncated": "Zeigt {{kept}} von {{total}} Zeitschritten (heruntergerechnet, um Lesevorgänge zu begrenzen).",
    "chartAria": "Liniendiagramm des Pixelwerts im Zeitverlauf",
    "yAxis": "Y-Achse",
    "yMin": "Min",
    "yMax": "Max",
    "axisAuto": "auto",
    "gapNote": "Gestrichelte Abschnitte überbrücken Termine ohne Messwert (NoData oder außerhalb der Abdeckung).",
    "exportCsv": "CSV exportieren",
    "exportGeoParquet": "GeoParquet exportieren"
  },
  "basemapExtract": {
    "title": "Offline-Basiskarte extrahieren",
    "url": "Basiskarten-URL",
    "urlPlaceholder": "https://data.source.coop/…/planet.pmtiles",
    "useView": "Kartenansicht verwenden",
    "drawBbox": "Auf Karte zeichnen",
    "drawing": "Wird gezeichnet…",
    "drawHint": "Ziehen Sie ein Rechteck auf der Karte, um den Auszugsbereich festzulegen.",
    "clearBbox": "Gezeichneten Bereich löschen",
    "north": "Nord",
    "south": "Süd",
    "west": "West",
    "east": "Ost",
    "bboxHint": "Geben Sie einen gültigen Begrenzungsrahmen ein: West < Ost und Süd < Nord, innerhalb von [-180, 180] und [-90, 90].",
    "minZoom": "Min. Zoom",
    "maxZoom": "Max. Zoom",
    "zoomHint": "Zoomstufen müssen ganze Zahlen mit Min. ≤ Max. sein (0–30). Stufen über dem Maximum des Archivs werden ignoriert.",
    "errorNoSourceLayers": "Dieses Vektorarchiv enthält keine Ebenen-Metadaten und kann daher nicht dargestellt werden. Versuchen Sie ein anderes Archiv.",
    "savedTitle": "Gespeicherte Basiskarten",
    "openFile": "Datei öffnen…",
    "savedEmpty": "Noch keine gespeicherten Basiskarten. Extrahieren Sie oben eine, oder öffnen Sie eine .pmtiles-Datei.",
    "errorNotBasemap": "Diese Datei ist keine Protomaps-Vektor-Basiskarte und kann daher nicht gestylt werden.",
    "apply": "Als Basiskarte verwenden",
    "rename": "Umbenennen",
    "delete": "Löschen",
    "confirmDelete": "Löschen?",
    "style": "Basiskarten-Stil",
    "flavor": {
      "light": "Hell",
      "dark": "Dunkel",
      "white": "Weiß",
      "grayscale": "Graustufen",
      "black": "Schwarz"
    },
    "flavorOverlay": "Keiner (Overlay-Ebene)",
    "styleHintBasemap": "Stellt den Auszug offline als gestylte Protomaps-Basiskarte dar (Straßen, Gewässer, Beschriftungen).",
    "styleHintOverlay": "Fügt den Auszug als einfache Overlay-Ebene statt als gestylte Basiskarte hinzu.",
    "phaseDirectories": "Archivverzeichnisse werden gelesen…",
    "phaseData": "Kacheln werden heruntergeladen…",
    "resize": "Panel skalieren",
    "estimatedSize": "≈ {{size}} · {{tiles}} Kacheln",
    "estimatedSizeLarge": "Großer Download: ≈ {{size}} · {{tiles}} Kacheln",
    "planWarning": "Dieser Auszug umfasst etwa {{size}} über {{tiles}} Kacheln und wird im Arbeitsspeicher zusammengesetzt. Fortfahren?",
    "planContinue": "Weiter",
    "extract": "Extrahieren",
    "extracting": "Wird extrahiert…",
    "successSaved": "In {{path}} gespeichert und zur Karte hinzugefügt.",
    "successAdded": "Zur Karte hinzugefügt (die Datei wurde nicht gespeichert).",
    "successAddedSaveFailed": "Zur Karte hinzugefügt, aber das Speichern auf der Festplatte ist fehlgeschlagen: {{error}}",
    "successBasemapSaved": "In {{path}} gespeichert und als Basiskarte festgelegt.",
    "successBasemapApplied": "Als Basiskarte festgelegt (die Datei wurde nicht gespeichert).",
    "successBasemapSaveFailed": "Als Basiskarte festgelegt, aber das Speichern auf der Festplatte ist fehlgeschlagen: {{error}}"
  },
  "rasterSubset": {
    "title": "Teilausschnitt extrahieren",
    "drawBbox": "Begrenzungsrahmen zeichnen",
    "drawing": "Zeichnen…",
    "drawHint": "Klicken und ziehen Sie auf der Karte, um den Extraktionsbereich zu zeichnen. Drücken Sie Esc zum Abbrechen.",
    "useView": "Ansicht verwenden",
    "north": "Nord",
    "south": "Süd",
    "west": "West",
    "east": "Ost",
    "bboxHint": "Geben Sie einen gültigen Rahmen ein: West/Ost zwischen -180 und 180, Süd/Nord zwischen -90 und 90, mit West < Ost und Süd < Nord.",
    "bboxAntimeridianHint": "West muss kleiner als Ost sein. Rahmen, die den 180°-Meridian überqueren, werden nicht unterstützt; teilen Sie sie in zwei Extraktionen auf.",
    "zoom": "Zoomstufe",
    "zoomHint": "Geben Sie eine ganze Zoomstufe zwischen 0 und 30 ein.",
    "resolution": "Auflösung",
    "resolutionPlaceholder": "Nativ",
    "resolutionHint": "Ausgabepixelgröße in den Einheiten des Ausgabe-CRS. Leer lassen, um die Quellauflösung beizubehalten.",
    "advanced": "Erweiterte Optionen",
    "outputCrs": "Ausgabe-CRS (EPSG)",
    "outputCrsPlaceholder": "Wie Eingabe",
    "nodata": "Nodata-Wert",
    "nodataPlaceholder": "Keiner",
    "additionalArgs": "Zusätzliche Optionen",
    "additionalArgsPlaceholder": "level=2\nwidth=512",
    "additionalArgsHint": "Ein key=value pro Zeile, z. B. level, width, height.",
    "errorResolution": "Die Auflösung muss eine positive Zahl sein.",
    "errorOutputCrs": "Das Ausgabe-CRS muss ein positiver EPSG-Code sein.",
    "errorNodata": "Nodata muss eine Zahl sein.",
    "errorAdditionalArgs": "Zusätzliche Optionen müssen ein key=value pro Zeile sein.",
    "extract": "Extrahieren & speichern",
    "extracting": "Wird extrahiert…",
    "success": "Teilausschnitt gespeichert."
  },
  "mapGrid": {
    "layers": "Ebenen",
    "layersLabel": "Ebenensichtbarkeit für Karte {{number}}",
    "noLayers": "Noch keine Ebenen",
    "labelPlaceholder": "Beschriftung",
    "labelLabel": "Beschriftung für Karte {{number}}",
    "removePane": "Karte {{number}} entfernen",
    "show3d": "Karte {{number}} als 3D-Globus anzeigen",
    "show2d": "Karte {{number}} als 2D-Karte anzeigen",
    "only2d": "Nur 2D"
  },
  "mapContextMenu": {
    "copyCoordinatesHint": "Koordinaten in die Zwischenablage kopieren",
    "quickActions": "Schnellaktionen",
    "whatsHere": "Was ist hier?",
    "copyGeoJson": "Als GeoJSON kopieren",
    "centerHere": "Karte hier zentrieren",
    "zoomInHere": "Hier vergrößern",
    "viewInGoogleMaps": "In Google Maps anzeigen",
    "viewInGoogleEarth": "In Google Earth anzeigen"
  },
  "quickAnalysis": {
    "menu": "Schnellanalyse",
    "bufferHere": "Hier um {{distance}} puffern",
    "bufferFeatures": "Alle Objekte um {{distance}} puffern",
    "driveTimeHere": "Fahrzeit von hier ({{contours}} Min.)",
    "walkTimeHere": "Gehzeit von hier ({{contours}} Min.)",
    "centroids": "Zentroide",
    "convexHull": "Konvexe Hülle",
    "boundingBox": "Begrenzungsrahmen",
    "openInProcessing": "In Verarbeitung öffnen…",
    "bufferLayerName": "Puffer {{distance}}",
    "bufferOfLayerName": "{{name}} Puffer {{distance}}",
    "driveTimeLayerName": "Fahrzeit",
    "walkTimeLayerName": "Gehzeit",
    "centroidsLayerName": "{{name}} Zentroide",
    "convexHullLayerName": "{{name}} konvexe Hülle",
    "boundingBoxLayerName": "{{name}} Begrenzungsrahmen",
    "running": "{{tool}} wird ausgeführt…",
    "failed": "{{tool}} fehlgeschlagen",
    "viewDetails": "Details anzeigen",
    "unit": {
      "meters": "m",
      "kilometers": "km",
      "miles": "mi"
    }
  },
  "knowledgeCard": {
    "title": "Ortsinformationen",
    "loading": "Ort wird nachgeschlagen…",
    "empty": "Keine Wikipedia-Artikel in der Nähe dieses Ortes gefunden.",
    "error": "Ortsinformationen konnten nicht geladen werden. Bitte versuchen Sie es erneut.",
    "readMore": "Mehr auf Wikipedia lesen",
    "nearby": "Orte in der Nähe",
    "attribution": "Inhalte von Wikipedia, lizenziert unter CC BY-SA.",
    "noticeTitle": "Wissenskarten verwenden Wikipedia",
    "noticeDesc": "Beim Öffnen einer Wissenskarte werden die Koordinaten des angeklickten Ortes (und der Titel jedes geöffneten Artikels in der Nähe) an die öffentliche Wikipedia-API gesendet, um eine Zusammenfassung und ein Foto abzurufen — Ihre Koordinaten verlassen für diese Anfragen Ihr Gerät."
  },
  "onboarding": {
    "title": "Willkommen bei GeoLibre",
    "description": "Wählen Sie Ihre Erfahrungsstufe, um die Oberfläche anzupassen. Sie können dies jederzeit unter Einstellungen → Oberfläche ändern.",
    "level": {
      "beginner": {
        "title": "Anfänger",
        "description": "Nur die wichtigsten Datenquellen und Werkzeuge anzeigen."
      },
      "intermediate": {
        "title": "Fortgeschritten",
        "description": "Gängige Datenquellen, Dienste und Plugins anzeigen."
      },
      "advanced": {
        "title": "Experte",
        "description": "Alles anzeigen, was GeoLibre zu bieten hat."
      }
    },
    "showEverything": "Überspringen — alles anzeigen"
  },
  "settings": {
    "title": "Einstellungen",
    "description": "Projekteinstellungen und Laufzeiteinstellungen konfigurieren.",
    "saveButton": "Einstellungen speichern",
    "section": {
      "map": "Karte",
      "layout": "Layout",
      "appearance": "Erscheinungsbild",
      "interface": "Oberfläche",
      "geocoding": "Geokodierung",
      "ai": "KI-Anbieter",
      "environment": "Umgebung",
      "updates": "Updates"
    },
    "menu": {
      "mapPreferences": "Karteneinstellungen",
      "layoutSettings": "Layout-Einstellungen",
      "appearanceSettings": "Erscheinungsbild-Einstellungen",
      "interfaceSettings": "Oberflächeneinstellungen",
      "geocoding": "Geokodierung",
      "ai": "KI-Anbieter",
      "environmentVariables": "Umgebungsvariablen",
      "updates": "Update-Einstellungen",
      "managePlugins": "Plugins verwalten",
      "styleManager": "Stilverwaltung",
      "urlOverrideNote": "URL-Layout-Parameter überschreiben gespeicherte Einstellungen."
    },
    "updates": {
      "title": "Software-Updates",
      "description": "Steuern Sie, wie GeoLibre beim Start der Desktop-App nach neuen Versionen sucht.",
      "checkOnStartup": "Beim Start nach Updates suchen",
      "checkOnStartupHint": "Wenn aktiviert, prüft GeoLibre bei jedem Start der App auf eine neuere Version. Deaktivieren Sie dies für einen vollständig offline-fähigen Arbeitsablauf.",
      "notificationLevel": "Benachrichtigen über",
      "notificationLevelHint": "Wählen Sie, welche Arten von Releases eine Startbenachrichtigung auslösen.",
      "level": {
        "all": "Alle Releases (Haupt-, Neben- und Patch-Versionen)",
        "minor": "Nur Haupt- und Nebenversionen",
        "major": "Nur Hauptversionen"
      }
    },
    "map": {
      "constraintsTitle": "Kartenbeschränkungen",
      "restrictBounds": "Kartengrenzen einschränken",
      "west": "West",
      "south": "Süd",
      "east": "Ost",
      "north": "Nord",
      "useCurrentView": "Aktuelle Ansicht verwenden",
      "useCurrentViewHint": "Erfasst die aktuelle Kartenausdehnung und aktiviert „Kartengrenzen einschränken“.",
      "useCurrentViewGlobeHint": "Wechseln Sie vor der Verwendung zur Mercator-Projektion. In der Globus-Projektion kann die Karte noch leicht über die erfassten Grenzen hinausdriften.",
      "minZoom": "Min. Zoom",
      "maxZoom": "Max. Zoom",
      "maxPitch": "Max. Neigung",
      "renderWorldCopies": "Weltkopien rendern",
      "ellipsoid": "Himmelskörper",
      "ellipsoidHint": "Legt den für Entfernungs-, Flächen- und Maßstabsmessungen verwendeten Radius fest. Wählen Sie unter „Daten hinzufügen“ eine passende planetare Basiskarte.",
      "scaleUnit": "Einheiten der Maßstabsleiste",
      "scaleUnitMetric": "Metrisch (m / km)",
      "scaleUnitImperial": "Imperial (ft / mi)",
      "scaleUnitNautical": "Nautisch (nmi)",
      "scaleUnitHint": "Wählen Sie die Einheiten, die auf der Maßstabsleiste am unteren Kartenrand angezeigt werden.",
      "errorBoundsUnavailable": "Die Kartengrenzen sind noch nicht verfügbar."
    },
    "layout": {
      "title": "Layout",
      "description": "Sichtbarkeit des Arbeitsbereichs und Darstellung der Symbolleiste.",
      "toolbar": "Symbolleiste",
      "panels": "Bedienfelder",
      "showToolbarLabels": "Symbolleisten-Beschriftungen anzeigen",
      "showProjectInfo": "Projektinformationen anzeigen",
      "showProjectInfoToolbar": "Projektinformationen in der Symbolleiste anzeigen",
      "showLayersPanel": "Ebenen-Bedienfeld anzeigen",
      "showStylePanel": "Stil-Bedienfeld anzeigen",
      "showBrowserPanel": "Browser-Bedienfeld anzeigen",
      "showCommentsPanel": "Kommentar-Bedienfeld anzeigen",
      "showAttributePanel": "Attribut-Bedienfeld anzeigen",
      "urlParamsNote": "URL-Layout-Parameter gelten weiterhin, wenn sie in gemeinsam genutzten Viewer-Links vorhanden sind."
    },
    "appearance": {
      "title": "Erscheinungsbild",
      "description": "Wählen Sie einen hellen oder dunklen Modus und eine darauf angewendete Akzentfarbe.",
      "themeMode": "Modus",
      "mode": {
        "light": "Hell",
        "dark": "Dunkel"
      },
      "accentColor": "Akzentfarbe",
      "custom": "Benutzerdefiniert",
      "customColor": "Benutzerdefinierte Farbe",
      "customColorHex": "Hex-Code der benutzerdefinierten Farbe",
      "scheme": {
        "blue": "Blau",
        "violet": "Violett",
        "emerald": "Smaragd",
        "rose": "Rosé",
        "amber": "Bernstein"
      }
    },
    "interface": {
      "title": "Oberflächenprofil",
      "description": "Wählen Sie eine Erfahrungsstufe, um die Oberfläche zu vereinfachen. Es wird nichts entfernt, sodass Sie jederzeit die Stufe wechseln oder Elemente hier wieder aktivieren können.",
      "presets": "Erfahrungsstufe",
      "presetsHint": "Anfänger, Fortgeschritten und Experte wenden sofort ein kuratiertes Layout an. Das Bearbeiten eines Elements unten wechselt zu Benutzerdefiniert, oder klicken Sie auf Benutzerdefiniert, um die aktuelle Einrichtung im benutzerdefinierten Modus beizubehalten.",
      "level": {
        "beginner": "Anfänger",
        "intermediate": "Fortgeschritten",
        "advanced": "Experte",
        "custom": "Benutzerdefiniert"
      },
      "dataSources": "Datenquellen",
      "plugins": "Plugins",
      "menus": "Menüs",
      "lockedNote": "Dieses Oberflächenprofil wird von Ihrem Administrator verwaltet und kann nicht geändert werden."
    },
    "env": {
      "tokenTitle": "Share.GeoLibre-API-Token",
      "tokenDescription": "Projekt > Teilen verwendet dieses Token, um Ihre Karten auf {{shareHost}} hochzuladen. Öffnen Sie <tokenLink>{{shareHost}}/settings</tokenLink>, erstellen Sie ein Token unter Einstellungen > API-Token und fügen Sie es dann in das Feld unten ein.",
      "tokenStorageNote": "Wird lokal auf diesem Gerät gespeichert und nur an {{shareHost}} gesendet, um Uploads zu authentifizieren. Im Web-Build nutzt es denselben Browser-Speicher wie andere Website-Daten. Widerrufen Sie es daher auf {{shareHost}}, falls Ihr Gerät kompromittiert wurde.",
      "tokenUnavailable": "In dieser Bereitstellung ist kein Server zum Teilen von Projekten konfiguriert, daher ist kein API-Token erforderlich.",
      "tokenHostInvalid": "Die Adresse des Servers zum Teilen von Projekten in dieser Bereitstellung ist ungültig, daher kann dieses Token nicht verwendet werden.",
      "tokenPlaceholder": "glb_…",
      "cesiumTokenTitle": "Cesium-Ion-Token",
      "cesiumTokenDescription": "Der 3D-Globus (ein geteiltes Ansichtsfenster) verwendet Cesium-Ion-Weltbilder und -Gelände, wofür ein Zugriffstoken erforderlich ist. Erstellen Sie ein kostenloses Konto unter <tokenLink>ion.cesium.com/tokens</tokenLink>, kopieren Sie Ihr Standard-Zugriffstoken und fügen Sie es unten ein. Ohne Token ist der 3D-Globus-Umschalter ausgeblendet.",
      "cesiumTokenStorageNote": "Wird lokal auf diesem Gerät gespeichert (nicht in der Projektdatei, sodass es nie geteilt wird) und nur an Cesium Ion gesendet. Im Web-Build nutzt es denselben Browser-Speicher wie andere Website-Daten.",
      "cesiumTokenPlaceholder": "eyJhbGciOi…",
      "variablesTitle": "Umgebungsvariablen",
      "variablesCount_one": "{{count}} aktivierte Laufzeitvariable.",
      "variablesCount_other": "{{count}} aktivierte Laufzeitvariablen.",
      "secretsWarning": "Werte werden im Klartext in der Projektdatei gespeichert und können beim Teilen des Projekts offengelegt werden. Vermeiden Sie es, hier Geheimnisse einzutragen, es sei denn, die Projektdatei bleibt privat.",
      "empty": "Keine Umgebungsvariablen konfiguriert.",
      "variableFallback": "Variable",
      "enableAria": "{{name}} aktivieren",
      "nameAria": "Variablenname",
      "namePlaceholder": "VITE_EXAMPLE_KEY",
      "valueAria": "Variablenwert",
      "valuePlaceholder": "Wert",
      "showValueAria": "Wert für {{name}} anzeigen",
      "hideValueAria": "Wert für {{name}} ausblenden",
      "removeAria": "{{name}} entfernen",
      "errorNamePattern": "Namen von Umgebungsvariablen müssen mit einem Buchstaben oder Unterstrich beginnen und dürfen nur Buchstaben, Zahlen und Unterstriche enthalten.",
      "errorDuplicate": "Die Umgebungsvariable „{{name}}“ ist doppelt vorhanden.",
      "stripPromptTitle": "Anmeldedaten entfernen?",
      "stripPromptDesc": "Dieses Projekt enthält {{count}} Feld(er) mit Anmeldedaten, etwa API-Schlüssel, Anfrage-Header oder Plugin-Einstellungen. Aus der gespeicherten Datei entfernen? Der aktuelle Arbeitsbereich behält sie in jedem Fall.",
      "stripButton": "Anmeldedaten entfernen",
      "keepButton": "In Datei behalten"
    },
    "geocoding": {
      "title": "Geokodierung",
      "description": "Wählen Sie das Geokodierungs-Backend, das für „Adressen geokodieren“ und „Reverse Geocode“ verwendet wird. Nominatim ist die Standardeinstellung und benötigt keinen Schlüssel.",
      "provider": "Anbieter",
      "requiresKey": "Dieser Anbieter benötigt einen API-Schlüssel oder ein Zugriffstoken.",
      "optionalKey": "Der gehostete Dienst benötigt einen API-Schlüssel; eine selbst gehostete Instanz nicht.",
      "noKey": "Dieser Anbieter funktioniert ohne API-Schlüssel.",
      "apiKey": "API-Schlüssel",
      "apiKeyPlaceholder": "API-Schlüssel oder Token des Anbieters einfügen",
      "toggleApiKey": "Sichtbarkeit des API-Schlüssels umschalten",
      "forwardEndpoint": "Forward-Endpunkt (optional)",
      "reverseEndpoint": "Reverse-Endpunkt (optional)",
      "email": "Kontakt-E-Mail (optional)",
      "emailPlaceholder": "you@example.org",
      "emailHint": "Wird nur von Nominatim verwendet, das die Angabe empfiehlt, um Ihre Anwendung zu identifizieren — wird nur gesendet, wenn angegeben.",
      "secretsWarning": "Schlüssel werden im Klartext in der Projektdatei gespeichert und können beim Teilen des Projekts offengelegt werden. Sie werden außerdem als Query-Parameter gesendet und erscheinen daher in Geokodierungs-Anfrage-URLs, die in den Browser-DevTools und in Proxy-Protokollen sichtbar sind.",
      "corsNote": "Google erlaubt offiziell keine Browser-Anfragen an seine Geocoding API, sodass Anfragen blockiert werden können, sofern sie nicht über einen Same-Origin-Proxy geleitet werden."
    },
    "ai": {
      "title": "KI-Assistent-Anbieter",
      "description": "Konfigurieren Sie die Anmeldedaten für den KI-Assistenten. Wählen Sie einen Anbieter, füllen Sie die benötigten Felder aus und speichern Sie dann. Es ist nur ein konfigurierter Anbieter erforderlich, um mit dem Chat zu beginnen.",
      "providerLabel": "Anbieter",
      "providerHint": "Wählen Sie einen Anbieter, um die genau benötigten Felder anzuzeigen.",
      "configuredMark": "(konfiguriert)",
      "optionalMark": "(optional)",
      "statusReady": "{{provider}} ist konfiguriert und einsatzbereit.",
      "statusIncomplete": "Füllen Sie die untenstehenden Pflichtfelder aus, um {{provider}} zu aktivieren.",
      "secretsNote": "Zugangsdaten werden lokal auf diesem Gerät gespeichert, nicht in der Projektdatei, die Sie weitergeben; sie bleiben daher über Neustarts hinweg erhalten. Jeder mit Zugriff auf dieses Gerät könnte sie lesen.",
      "getCredentials": "Woher Sie {{provider}}-Anmeldedaten erhalten",
      "showValue": "{{name}} anzeigen",
      "hideValue": "{{name}} ausblenden",
      "osEnvNote": "Die Desktop-App liest passende API-Schlüssel auch aus den Umgebungsvariablen Ihres Systems. Diese werden automatisch verwendet und nie in der Projektdatei gespeichert — lassen Sie ein Feld leer, um weiterhin den Wert aus der Umgebung zu verwenden.",
      "osEnvField": "Wird aus der Systemumgebungsvariable {{name}} gelesen.",
      "osEnvPlaceholder": "In Ihrer Systemumgebung gesetzt",
      "newProfile": "Neues Profil",
      "cancel": "Abbrechen",
      "addProfile": "Profil hinzufügen",
      "profileName": "Profilname",
      "profileNamePlaceholder": "z. B. Gemini (Arbeit), Ollama (lokal)",
      "profileCount_one": "{{count}} Profil",
      "profileCount_other": "{{count}} Profile",
      "noProfiles": "Noch keine Profile. Fügen Sie unten eines hinzu, um den KI-Assistenten zu konfigurieren.",
      "setDefault": "Als Standard festlegen",
      "defaultProfile": "Standard",
      "edit": "Bearbeiten",
      "deleteProfile": "Profil löschen",
      "backToProfiles": "← Zurück zu den Profilen",
      "saveProfile": "Profil speichern",
      "profileEditSaveHint": "Speichern oder verwerfen Sie oben Ihre Profiländerungen und klicken Sie dann auf „Einstellungen speichern“, um alle Änderungen zu übernehmen.",
      "field": {
        "apiKey": "API-Schlüssel",
        "baseUrl": "Basis-URL",
        "model": "Modell",
        "region": "Region",
        "accessKeyId": "Zugriffsschlüssel-ID",
        "secretAccessKey": "Geheimer Zugriffsschlüssel",
        "sessionToken": "Sitzungstoken"
      },
      "placeholder": {
        "geminiKey": "AIza…",
        "anthropicKey": "sk-ant-…",
        "openaiKey": "sk-…",
        "ollamaBaseUrl": "http://localhost:11434",
        "ollamaModel": "llama3.2",
        "awsAccessKey": "AKIA…",
        "awsSecretKey": "wJalrXUtnFEMI…",
        "awsRegion": "us-east-1",
        "awsSessionToken": "FwoGZXIvYXdz… (bei Verwendung temporärer Anmeldedaten)",
        "customBaseUrl": "https://api.example.com/v1",
        "customModel": "model-id",
        "customApiKey": "sk-… (falls erforderlich)"
      }
    }
  },
  "toolbar": {
    "menu": {
      "project": "Projekt",
      "import": "Importieren",
      "edit": "Bearbeiten",
      "view": "Ansicht",
      "addData": "Daten hinzufügen",
      "processing": "Verarbeitung",
      "controls": "Steuerelemente",
      "plugins": "Plugins",
      "help": "Hilfe",
      "settings": "Einstellungen"
    },
    "atmosphere": {
      "haloColor": "Halofarbe",
      "haloExtent": "Haloreichweite",
      "haloExtentHint": "Wie weit der atmosphärische Schein über den Globus hinausreicht. Niedrigere Werte halten die Daten nah an der Oberfläche, höhere Werte erzeugen einen weiten, luftigen Heiligenschein.",
      "haloOpacity": "Halostärke",
      "spaceColor": "Weltraumfarbe",
      "reset": "Auf Standard zurücksetzen",
      "globeOnly": "Atmosphärische Effekte sind nur verfügbar, wenn die Globusansicht aktiviert ist."
    },
    "sun": {
      "title": "Sonne",
      "date": "Datum",
      "time": "Uhrzeit",
      "timeOfDay": "Tageszeit",
      "play": "Abspielen",
      "pause": "Pause",
      "stepBack": "Eine Stunde zurück",
      "stepForward": "Eine Stunde vor",
      "speed": "Animationsgeschwindigkeit",
      "loop": "Animation wiederholen",
      "now": "Jetzt",
      "shade": "Nachtschattierung",
      "close": "Schließen",
      "localTimeNote": "Zeiten werden in der Zeitzone Ihres Computers angezeigt."
    },
    "routeAnimation": {
      "title": "Routenanimation",
      "layer": "Routenebene",
      "selectLayer": "Linienebene auswählen…",
      "noLineLayers": "Keine Linienebenen im Projekt",
      "play": "Abspielen",
      "pause": "Pause",
      "loop": "Animation wiederholen",
      "progress": "Fortschritt",
      "speed": "Geschwindigkeit",
      "followCamera": "Folgen",
      "followPitch": "Kameraneigung",
      "followZoom": "Kamerazoom",
      "followRotate": "In Bewegungsrichtung drehen",
      "color": "Streckenfarbe",
      "marker": "Markierung",
      "markerStyle": {
        "arrow": "Pfeil (Richtung)",
        "point": "Punkt",
        "none": "Keine"
      },
      "trail": "Spur",
      "saveVideoMp4": "Als MP4 speichern",
      "saveVideoWebm": "Als WebM speichern",
      "estimatedLength": "≈ {{seconds}} s",
      "recordingStatus": "Aufnahme läuft… {{percent}}%",
      "savingVideo": "Video wird gespeichert…",
      "stop": "Stopp",
      "videoSaved": "{{name}} gespeichert",
      "videoError": "Die Animation konnte nicht aufgezeichnet werden. Bitte versuchen Sie es erneut.",
      "videoUnsupported": "Videoaufzeichnung wird in diesem Browser nicht unterstützt.",
      "videoFileTypeMp4": "MP4-Video",
      "videoFileTypeWebm": "WebM-Video",
      "collapse": "Einklappen",
      "expand": "Ausklappen",
      "close": "Schließen"
    },
    "flightSim": {
      "title": "Flugsimulator",
      "start": "Flug starten",
      "stop": "Flug beenden",
      "collapse": "Einklappen",
      "expand": "Ausklappen",
      "close": "Schließen",
      "speed": "Geschwindigkeit",
      "altitude": "Höhe",
      "heading": "Kurs",
      "agl": "Über Grund",
      "throttle": "Schub",
      "maxSpeed": "Höchstgeschwindigkeit",
      "minAgl": "Geländeabstand",
      "units": "Einheiten",
      "imperial": "Knoten / Fuß",
      "metric": "km/h / Meter",
      "bankCamera": "Horizont in Kurven neigen",
      "invertPitch": "Nickachse umkehren",
      "knots": "kn",
      "kph": "km/h",
      "feet": "ft",
      "meters": "m",
      "terrainWarning": "Gelände – hochziehen",
      "help": "Pfeiltasten oder A/D steuern · W/S oder Bild auf/ab regeln den Schub · Leertaste richtet die Tragflächen aus · Esc beendet."
    },
    "setView": {
      "title": "Ansicht festlegen",
      "description": "Bewegt die Karte zu einer genauen Kameraposition.",
      "sectionCoordinates": "Koordinaten",
      "smartPaste": "Koordinaten einfügen",
      "smartPasteInputLabel": "Koordinatenzeichenfolge",
      "smartPastePlaceholder": "z. B. 51.5074, -0.1278 oder 51°30'26\"N, 0°07'39\"W",
      "smartPasteInfo": "Geben Sie eine vollständige Koordinatenzeichenfolge im Format DD, DMS oder DDM ein oder fügen Sie sie ein und führen Sie dann „Eingabe verarbeiten“ aus. GeoLibre erkennt das Format und füllt die untenstehenden Felder für Längen- und Breitengrad aus. Passen Sie Zoom, Neigung und Peilung anschließend separat an, bevor Sie losgehen.",
      "smartPasteInfoLabel": "Über das Einfügen von Koordinaten",
      "smartPasteInvalid": "Diese Koordinaten konnten nicht gelesen werden. Geben Sie einen vollständigen Längen- und Breitengrad im Format DD, DMS oder DDM ein, zum Beispiel 51.5074, -0.1278. Eine unvollständige Zeichenfolge kann nicht verarbeitet werden.",
      "processInput": "Eingabe verarbeiten",
      "processed": "Die untenstehenden Felder für Längen- und Breitengrad wurden ausgefüllt.",
      "sectionZoom": "Kamera-Zoom",
      "sectionOrientation": "Kameraausrichtung",
      "orientationHint": "Neigung und Peilung sind standardmäßig 0, wenn sie leer gelassen werden.",
      "format": "Format für manuelle Eingabe",
      "formatInfo": "Diese Schaltflächen bestimmen nur, wie Sie das Zentrum von Hand eingeben. Das Einfügefeld oben akzeptiert bereits jedes Format.\nDD: 51.5074, -0.1278\nDMS: 51°30'26\"N, 0°07'39\"W\nDDM: 51°30.44'N, 0°07.65'W",
      "formatInfoLabel": "Über Koordinatenformate",
      "formatDd": "Dezimalgrad (DD)",
      "formatDms": "Grad, Minuten, Sekunden (DMS)",
      "formatDdm": "Grad und Dezimalminuten (DDM)",
      "formatDdShort": "DD",
      "formatDmsShort": "DMS",
      "formatDdmShort": "DDM",
      "longitude": "Längengrad",
      "latitude": "Breitengrad",
      "degrees": "Grad",
      "minutes": "Minuten",
      "seconds": "Sekunden",
      "hemisphere": "Hemisphäre",
      "zoom": "Zoom",
      "pitch": "Neigung",
      "bearing": "Peilung",
      "go": "Los",
      "invalid": "Geben Sie einen gültigen Längengrad (−180 bis 180), Breitengrad (−90 bis 90) und Zoom ein.",
      "invalidDms": "Geben Sie gültige Grad, Minuten (0 bis 59), Sekunden (0 bis 59) und Zoom ein.",
      "invalidDdm": "Geben Sie gültige Grad, Dezimalminuten (0 bis < 60) und Zoom ein."
    },
    "commandGroup": {
      "project": "Projekt",
      "addData": "Daten hinzufügen",
      "processing": "Verarbeitung",
      "controls": "Steuerelemente",
      "view": "Ansicht",
      "help": "Hilfe",
      "plugins": "Plugins",
      "settings": "Einstellungen"
    },
    "command": {
      "projectNew": "Neues Projekt",
      "projectOpenFile": "Projekt aus Datei öffnen",
      "projectOpenUrl": "Projekt aus URL öffnen",
      "projectSave": "Projekt speichern",
      "projectSaveAs": "Projekt speichern unter…",
      "projectShare": "Projekt teilen…",
      "projectCollaborate": "Zusammenarbeiten…",
      "projectPrint": "Drucken…",
      "addVectorLayer": "Vektorebene hinzufügen",
      "addRasterLayer": "Rasterebene hinzufügen",
      "addOsmPbfLayer": "OSM-PBF-Ebene hinzufügen",
      "addLayer": "{{name}} hinzufügen",
      "addStacLayer": "STAC-Ebene hinzufügen",
      "addGeoparquetLayer": "GeoParquet-Ebene hinzufügen",
      "addFlatgeobufLayer": "FlatGeobuf-Ebene hinzufügen",
      "addPmtilesLayer": "PMTiles-Ebene hinzufügen",
      "addZarrLayer": "Zarr-Ebene hinzufügen",
      "addNetcdfLayer": "NetCDF/HDF-Ebene hinzufügen",
      "addLidarLayer": "LiDAR-Ebene hinzufügen",
      "addSplattingLayer": "Gaussian Splatting hinzufügen",
      "add3dTilesLayer": "3D-Tiles-Ebene hinzufügen",
      "addDuckdbLayer": "DuckDB-Ebene hinzufügen",
      "whiteboxTools": "Whitebox Tools",
      "sqlWorkspace": "SQL-Arbeitsbereich",
      "pythonConsole": "Python-Konsole",
      "notebook": "Jupyter Notebook",
      "dashboard": "Dashboard",
      "assistant": "KI-Assistent",
      "geocode": "Adressen geokodieren",
      "modelBuilder": "Stapel & Modelle",
      "planetaryComputer": "Planetary Computer",
      "earthEngine": "Earth Engine",
      "segmentation": "KI-Segmentierung",
      "objectDetection": "Objekterkennung",
      "segmentEverything": "Alles segmentieren",
      "toggleControl": "{{name}}-Steuerelement umschalten",
      "toggleAtmosphereEffects": "Atmosphärische Effekte umschalten",
      "toggleDirections": "Wegbeschreibung umschalten",
      "toggleSearch": "Suche umschalten",
      "toggleColorbar": "Farbskala umschalten",
      "toggleLegend": "Legende umschalten",
      "toggleHtmlPanel": "HTML-Panel umschalten",
      "toggleMeasure": "Messen umschalten",
      "toggleBookmark": "Lesezeichen umschalten",
      "toggleMinimap": "Übersichtskarte umschalten",
      "toggleViewState": "Ansichtsstatus umschalten",
      "previousView": "Vorherige Ansicht",
      "nextView": "Nächste Ansicht",
      "resetNorth": "Peilung zurücksetzen",
      "resetPitch": "Neigung zurücksetzen",
      "resetPitchBearing": "Neigung & Peilung zurücksetzen",
      "setView": "Ansicht festlegen",
      "viewComments": "Kommentare anzeigen",
      "zoomIn": "Vergrößern",
      "zoomOut": "Verkleinern",
      "switchToLight": "Zum hellen Modus wechseln",
      "switchToDark": "Zum dunklen Modus wechseln",
      "keyboardShortcuts": "Tastenkombinationen",
      "website": "Website",
      "githubRepository": "GitHub-Repository",
      "diagnostics": "Diagnose",
      "giveFeedback": "Feedback geben",
      "checkForUpdates": "Nach Updates suchen",
      "about": "Über",
      "togglePlugin": "{{name}} umschalten",
      "managePlugins": "Plugins verwalten",
      "styleManager": "Stilverwaltung…"
    },
    "layerType": {
      "delimitedText": "Ebene mit Trennzeichen",
      "photos": "Geotagte Fotos",
      "gpx": "GPX-Ebene",
      "mbtiles": "MBTiles-Ebene",
      "xyz": "XYZ-Ebene",
      "wms": "WMS-Ebene",
      "wfs": "WFS-Ebene",
      "wmts": "WMTS-Ebene",
      "ogcFeatures": "OGC API - Features",
      "ogcVectorTiles": "OGC-Vektorkacheln",
      "arcgis": "ArcGIS-Ebene",
      "georss": "GeoRSS-Ebene",
      "video": "Video-Ebene",
      "deckglViz": "Deck.gl-Ebene",
      "gltfModel": "3D-Modell (glTF)",
      "postgres": "PostgreSQL-Ebene"
    },
    "conversion": {
      "vectorToVector": "Vektor zu Vektor",
      "zipInputBrowserError": "Gezippte Shapefiles können nur in der GeoLibre-Desktop-App konvertiert werden. Wählen Sie im Browser die entpackte .shp zusammen mit ihren .dbf-, .shx- und .prj-Dateien aus.",
      "browserOutputUnsupported": "Im Browser kann die Ausgabe GeoJSON, CSV, GeoParquet, GeoPackage oder Shapefile (.zip) sein. Die Ausgabe \".{{extension}}\" erfordert die GeoLibre-Desktop-App.",
      "outputExtensionRequired": "Fügen Sie dem Ausgabenamen eine Dateierweiterung hinzu, um das Format zu wählen.",
      "readingWithDuckDb": "{{name}} wird mit DuckDB-WASM gelesen",
      "readFeatures": "{{features}} Objekte aus {{name}} gelesen",
      "savedFile": "{{name}} gespeichert",
      "saveCanceled": "Konvertierung abgeschlossen; Speichern wurde abgebrochen.",
      "vectorToGeoparquet": "Vektor zu GeoParquet",
      "vectorToFlatgeobuf": "Vektor zu FlatGeobuf",
      "vectorToShapefile": "Vektor zu Shapefile",
      "vectorToGeopackage": "Vektor zu GeoPackage",
      "csvToGeoparquet": "CSV zu GeoParquet",
      "vectorToPmtiles": "Vektor zu PMTiles",
      "rasterToCog": "Raster zu COG",
      "rasterToPmtiles": "Raster zu PMTiles",
      "needsDesktop": "Diese Konvertierung benötigt die GeoLibre-Desktop-App oder einen laufenden Sidecar.",
      "runsInBrowserDuckDb": "Die Konvertierung läuft in Ihrem Browser mit DuckDB-WASM.",
      "runsInBrowserWriters": "Die Konvertierung läuft in Ihrem Browser mit DuckDB-WASM und den mitgelieferten Writern.",
      "runsInBrowserWasm": "Die Konvertierung läuft in Ihrem Browser mit geolibre-wasm. Kein Sidecar erforderlich.",
      "convertingWithWasm": "{{name}} wird mit geolibre-wasm konvertiert",
      "rasterShape": "Raster {{width}}×{{height}} gelesen; Bänder: {{bands}}",
      "wroteCog": "Gekacheltes COG mit Übersichten geschrieben ({{compression}})",
      "notAGeoTiff": "Diese Datei ist kein lesbares GeoTIFF. Im Browser liest „Raster zu COG“ nur GeoTIFF; andere Formate benötigen die Desktop-App.",
      "zoomRangeError": "Zoomstufen müssen 0 ≤ min ≤ max ≤ {{max}} erfüllen.",
      "colormap": "Farbverlauf",
      "resampling": "Neuabtastung",
      "colormapDefault": "Standard (viridis)",
      "zoomNative": "nativ",
      "rasterToPmtilesDesc": "Rendert ein Raster in ein einzelnes PMTiles-Archiv aus Web-Mercator-PNG-Kacheln, bereit für die cloud-native Bereitstellung. Ein Band wird durch einen Farbverlauf gerendert, daher werden mehrbandige Bilddaten nicht in Echtfarben dargestellt. Läuft vollständig in WebAssembly und benötigt daher weder in der Web- noch in der Desktop-App einen Sidecar.",
      "cogBrowserNote": "Im Browser behalten 8-Bit-Raster ihren Typ, und alles andere (Int16-DEMs, Float64, …) wird als Float32 geschrieben. Die Desktop-App bewahrt den ursprünglichen Typ.",
      "noSidecarConversion": "Für {{kind}} ist keine Sidecar-Konvertierung verfügbar.",
      "minZoom": "Min. Zoom",
      "maxZoom": "Max. Zoom",
      "convertFailed": "Diese Datei konnte nicht konvertiert werden.",
      "notAGeoTiffRasterOnly": "Diese Datei ist kein lesbares GeoTIFF. „Raster zu PMTiles“ liest sowohl in der Web- als auch in der Desktop-App ausschließlich GeoTIFF.",
      "band": "Band",
      "bandError": "Das Band muss eine positive ganze Zahl sein.",
      "bandOutOfRange": "Band {{band}} existiert nicht; dieser Raster hat {{bands}} Band/Bänder.",
      "runsInBrowserVectorEngines": "Die Konvertierung läuft in Ihrem Browser mit DuckDB-WASM oder mit geolibre-wasm für die FlatGeobuf-Ausgabe.",
      "vectorToVectorDesc": "Konvertiert zwischen allen Vektorformaten, die DuckDBs Spatial-Erweiterung unterstützt. Ein- und Ausgabeformat werden aus den Dateiendungen erkannt. Die Desktop-App schreibt jedes Format (FlatGeobuf, GeoPackage, Shapefile, KML, GML, …); der Browser schreibt GeoJSON, CSV, GeoParquet, GeoPackage, FlatGeobuf und Shapefile.",
      "vectorToVectorInputLabel": "Vektor-Eingabedatei",
      "vectorToVectorOutputLabel": "Vektor-Ausgabedatei",
      "vectorToGeoparquetDesc": "Konvertiert einen Vektordatensatz in eine Hilbert-sortierte, komprimierte GeoParquet-Datei, optimiert für cloud-native Range-Requests.",
      "vectorToGeoparquetInputLabel": "Vektor-Eingabedatei",
      "vectorToGeoparquetOutputLabel": "GeoParquet-Ausgabedatei",
      "vectorToFlatgeobufDesc": "Konvertiert einen Vektordatensatz in ein Hilbert-sortiertes FlatGeobuf mit gepacktem räumlichem Index für schnellen cloud-nativen Zugriff.",
      "vectorToFlatgeobufInputLabel": "Vektor-Eingabedatei",
      "vectorToFlatgeobufOutputLabel": "FlatGeobuf-Ausgabedatei",
      "vectorToShapefileDesc": "Konvertiert einen Vektordatensatz in ein gezipptes ESRI-Shapefile (.shp/.shx/.dbf/.prj). Feldnamen werden auf 10 Zeichen gekürzt.",
      "vectorToShapefileInputLabel": "Vektor-Eingabedatei",
      "vectorToShapefileOutputLabel": "Gezipptes Shapefile als Ausgabe",
      "vectorToGeopackageDesc": "Konvertiert einen Vektordatensatz in ein GeoPackage (.gpkg) zum Austausch mit QGIS, ArcGIS und anderen GIS-Werkzeugen.",
      "vectorToGeopackageInputLabel": "Vektor-Eingabedatei",
      "vectorToGeopackageOutputLabel": "GeoPackage-Ausgabedatei",
      "csvToGeoparquetDesc": "Erzeugt Punktgeometrien aus Längen-/Breitengradspalten und schreibt ein Hilbert-sortiertes, komprimiertes GeoParquet.",
      "csvToGeoparquetInputLabel": "CSV-Eingabedatei",
      "csvToGeoparquetOutputLabel": "GeoParquet-Ausgabedatei",
      "vectorToPmtilesDesc": "Kachelt einen Vektordatensatz in ein einzelnes PMTiles-Archiv aus Vektorkacheln, bereit für cloud-natives Ausliefern.",
      "vectorToPmtilesInputLabel": "Vektor-Eingabedatei",
      "vectorToPmtilesOutputLabel": "PMTiles-Ausgabedatei",
      "rasterToPmtilesInputLabel": "Raster-Eingabedatei",
      "rasterToPmtilesOutputLabel": "PMTiles-Ausgabedatei",
      "rasterToCogDesc": "Konvertiert einen Rasterdatensatz in ein gültiges, komprimiertes Cloud Optimized GeoTIFF mit interner Kachelung und Übersichten.",
      "rasterToCogInputLabel": "Raster-Eingabedatei",
      "rasterToCogOutputLabel": "COG-Ausgabedatei",
      "outputFileName": "Name der Ausgabedatei",
      "shapefileSidecarHint": "Wählen Sie bei Shapefiles die .shp zusammen mit den zugehörigen .dbf-, .shx- und .prj-Dateien aus.",
      "longitudeColumn": "Längengradspalte",
      "latitudeColumn": "Breitengradspalte",
      "compression": "Komprimierung",
      "rowGroupSize": "Zeilengruppengröße",
      "layerName": "Ebenenname",
      "noOutput": "Noch keine Ausgabe.",
      "fallbackTitle": "Konvertierung"
    },
    "vectorTool": {
      "buffer": "Puffer",
      "centroids": "Zentroide",
      "convexHull": "Konvexe Hülle",
      "dissolve": "Auflösen",
      "boundingBox": "Begrenzungsrahmen",
      "simplify": "Vereinfachen",
      "clip": "Zuschneiden",
      "intersection": "Verschneidung",
      "difference": "Differenz",
      "union": "Vereinigung",
      "spatialJoin": "Räumliche Verknüpfung",
      "attributeJoin": "Attributverknüpfung",
      "selectByValue": "Nach Wert auswählen",
      "selectByLocation": "Nach Lage auswählen",
      "randomExtract": "Zufällige Auswahl",
      "reproject": "Umprojizieren",
      "explode": "Zerlegen",
      "aggregate": "Nach Attribut aggregieren",
      "smooth": "Glätten",
      "grid": "Regelmäßiges Raster",
      "voronoi": "Voronoi / Delaunay",
      "cellSectors": "Mobilfunkzellen-Abdeckung",
      "dggsGenerator": "DGGS-Generator",
      "dggsBinning": "DGGS-Binning",
      "dggsCompact": "DGGS-Kompaktierung",
      "trajectorySpeed": "Trajektoriengeschwindigkeit",
      "detectStops": "Stopps erkennen",
      "spaceTimeProximity": "Raum-Zeit-Nähe",
      "checkValidity": "Gültigkeit prüfen",
      "fixGeometries": "Geometrien reparieren",
      "checkTopologyRules": "Topologieregeln prüfen",
      "fixTopology": "Topologie reparieren"
    },
    "networkTool": {
      "isochrone": "Isochrone / Einzugsgebiet",
      "odMatrix": "Quelle-Ziel-Kostenmatrix",
      "sequentialRoute": "Sequenzielle Route (Wegbeschreibung)"
    },
    "statisticsTool": {
      "globalMoransI": "Globales Moran's I",
      "localMoransI": "Lokales Moran's I (LISA)",
      "getisOrd": "Getis-Ord Gi*-Hotspots",
      "averageNearestNeighbor": "Durchschnittlicher nächster Nachbar",
      "kernelDensity": "Kerndichte (Heatmap)",
      "emergingHotSpot": "Aufkommende Hotspots (Raum-Zeit-Würfel)"
    },
    "rasterTool": {
      "hillshade": "Schummerung",
      "slope": "Hangneigung",
      "aspect": "Exposition",
      "reproject": "Umprojizieren",
      "resample": "Resampling",
      "clipExtent": "Nach Ausdehnung zuschneiden",
      "clipMask": "Nach Maskenebene zuschneiden",
      "polygonize": "Polygonisieren",
      "contour": "Höhenlinien",
      "interpolate": "Interpolation (IDW / Kriging)",
      "zonal": "Zonale Statistik",
      "rasterCalc": "Rasterrechner",
      "spectralIndex": "Spektralindex",
      "invalidSpectralIndex": "Ungültiger Spektralindex.",
      "reclassify": "Neu klassifizieren",
      "mosaic": "Mosaik / Zusammenführen",
      "focal": "Fokalstatistik",
      "inputRaster": "Eingaberaster",
      "inputRasterA": "Eingaberaster A",
      "inputRaster1": "Erstes Raster",
      "inputPoints": "Eingabepunkte (GeoJSON)",
      "engine": "Engine",
      "engineClient": "Client (Browser)",
      "engineSidecar": "Sidecar (rasterio/GDAL)",
      "clientHint": "Berechnet im Browser und fügt das Ergebnis der Karte hinzu. Bei großen Rastern oder Terrain in geografischem Bezugssystem ist der Sidecar vorzuziehen.",
      "switchToClientHint": "Oder wechseln Sie die Engine zu Client, um dieses Werkzeug im Browser auszuführen.",
      "chooseGeoTiff": "GeoTIFF auswählen",
      "downloadGeoTiff": "GeoTIFF herunterladen",
      "chooseInputRaster": "Wählen Sie ein Eingaberaster.",
      "useAddedLayer": "Eine Ebene auf der Karte verwenden",
      "useAddedLayerPlaceholder": "Ebene wählen…",
      "loadingLayer": "Ebene wird geladen…",
      "layerLoadError": "Die ausgewählte Ebene konnte nicht geladen werden.",
      "runningInBrowser": "„{{tool}}“ wird in Ihrem Browser ausgeführt...",
      "loadedRaster": "Raster geladen: {{width}}×{{height}}, {{bands}} Band/Bänder.",
      "computedInBrowser": "„{{tool}}“ im Browser berechnet.",
      "addedToMap": "„{{name}}“ zur Karte hinzugefügt.",
      "largeRasterWarning": "Großes Raster ({{mp}} Mio. Pixel); der Browser reagiert während der Berechnung möglicherweise nicht.",
      "mapAddFailed": "Hinzufügen zur Karte fehlgeschlagen (das Ergebnis kann weiterhin heruntergeladen werden): {{message}}",
      "mapAddError": "Das Ergebnis konnte nicht zur Karte hinzugefügt werden.",
      "runError": "Rasterwerkzeug konnte nicht ausgeführt werden.",
      "saveError": "Das Ergebnis konnte nicht gespeichert werden.",
      "dialogTitle": "Rasterwerkzeuge",
      "dialogDescription": "Führen Sie gängige Rasteroperationen auf dem Python-Sidecar (rasterio/GDAL) aus oder in Ihrem Browser, wenn kein Sidecar verfügbar ist.",
      "outputFile": "Ausgabedatei",
      "noOutput": "Noch keine Ausgabe.",
      "errorConnect": "Verbindung zum Sidecar nicht möglich.",
      "needsDesktopSidecar": "Raster-Werkzeuge benötigen die GeoLibre-Desktop-App mit laufendem Sidecar.",
      "errorPoll": "Auftrag konnte nicht abgefragt werden.",
      "errorStartSidecar": "GeoLibre-Sidecar konnte nicht gestartet werden.",
      "errorStartTool": "Rasterwerkzeug konnte nicht gestartet werden."
    },
    "mapControl": {
      "navigation": "Navigation",
      "fullscreen": "Vollbild",
      "compass": "Kompass",
      "geolocate": "Standort ermitteln",
      "globe": "Globus",
      "terrain": "Gelände",
      "scale": "Maßstab",
      "attribution": "Namensnennung",
      "logos": "Logos",
      "logo": "MapLibre-Logo",
      "maptoolkitLogo": "Maptoolkit-Logo",
      "maptoolkitLogoHint": "Fügen Sie eine Maptoolkit-Basiskarte hinzu, um deren Logo anzuzeigen."
    },
    "position": {
      "topLeft": "Oben links",
      "topRight": "Oben rechts",
      "bottomLeft": "Unten links",
      "bottomRight": "Unten rechts"
    },
    "item": {
      "newEllipsis": "Neu...",
      "openFrom": "Öffnen von",
      "fileEllipsis": "Datei...",
      "urlEllipsis": "URL...",
      "galleryEllipsis": "Galerie...",
      "openRecent": "Zuletzt geöffnet",
      "projectHistoryEllipsis": "Verlauf...",
      "noRecentProjects": "Keine zuletzt verwendeten Projekte",
      "removeFromRecent": "{{name}} aus den zuletzt verwendeten Projekten entfernen",
      "clearRecentProjects": "Zuletzt verwendete Projekte löschen",
      "duplicate": "Projekt duplizieren",
      "saveAsEllipsis": "Speichern unter...",
      "saveAsTemplateEllipsis": "Als Vorlage speichern...",
      "shareEllipsis": "Teilen...",
      "shareHostUnavailable": "Nicht verfügbar: Die Adresse des Freigabeservers dieser Bereitstellung ist ungültig.",
      "exportHtmlEllipsis": "Als HTML exportieren...",
      "htmlFile": "HTML",
      "collaborateEllipsis": "Zusammenarbeiten...",
      "printEllipsis": "Drucken...",
      "printLayoutEllipsis": "Drucklayout...",
      "offlineBasemapEllipsis": "Offline-Basiskarte...",
      "undo": "Rückgängig",
      "redo": "Wiederholen",
      "selectByExpressionEllipsis": "Nach Ausdruck auswählen...",
      "selectByLocationEllipsis": "Nach Position auswählen...",
      "zoomToSelection": "Auf Auswahl zoomen",
      "invertSelection": "Auswahl umkehren",
      "clearSelection": "Auswahl aufheben",
      "exportSelection": "Ausgewählte Objekte als Ebene exportieren",
      "previousView": "Vorherige Ansicht",
      "nextView": "Nächste Ansicht",
      "resetOrientation": "Ausrichtung zurücksetzen",
      "resetPitch": "Neigung zurücksetzen",
      "resetBearing": "Peilung zurücksetzen",
      "resetPitchBearing": "Neigung & Peilung zurücksetzen",
      "setView": "Ansicht festlegen…",
      "splitView": "Geteilte Ansicht",
      "splitViewSingle": "Einzelne Karte",
      "splitViewTwoColumns": "Zwei Spalten",
      "splitViewTwoRows": "Zwei Zeilen",
      "splitViewGrid2x2": "2 × 2-Raster",
      "splitViewGrid2x3": "2 × 3-Raster",
      "splitViewGrid3x3": "3 × 3-Raster",
      "splitViewSync": "Ansichten synchronisieren",
      "viewInGoogleMaps": "In Google Maps ansehen",
      "viewInGoogleEarth": "In Google Earth ansehen",
      "zoomIn": "Vergrößern",
      "zoomOut": "Verkleinern",
      "sectionFiles": "Dateien",
      "sectionWebServices": "Webdienste",
      "sectionCloudFormats": "Cloud-Formate",
      "section3dLayers": "3D-Ebenen",
      "sectionDatabases": "Datenbanken",
      "georeferencing": "Georeferenzierung",
      "vectorLayer": "Vektorebene",
      "cadLayer": "CAD-Ebene (DXF/DWG)",
      "gdbLayer": "File-Geodatabase (GDB)",
      "rasterLayer": "Rasterebene",
      "osmPbfLayer": "OSM-PBF-Ebene",
      "stacLayer": "STAC-Ebene",
      "geoparquetLayer": "GeoParquet-Ebene",
      "flatgeobufLayer": "FlatGeobuf-Ebene",
      "pmtilesLayer": "PMTiles-Ebene",
      "basemapExtract": "Offline-Basiskarte extrahieren",
      "zarrLayer": "Zarr-Ebene",
      "netcdfHdf": "NetCDF / HDF",
      "lidarLayer": "LiDAR-Ebene",
      "splattingLayer": "Gaussian Splatting",
      "threeDTilesLayer": "3D-Tiles-Ebene",
      "duckdbLayer": "DuckDB-Ebene",
      "whitebox": "Whitebox",
      "geocode": "Adressen geokodieren",
      "modelBuilder": "Stapel & Modelle",
      "processingHistory": "Verlauf",
      "conversion": "Konvertierung",
      "vector": "Vektor",
      "network": "Netzwerk",
      "statistics": "Räumliche Statistik",
      "raster": "Raster",
      "hydrology": "Hydrologie",
      "lidar": "LiDAR",
      "terrain": "Gelände",
      "remoteSensing": "Fernerkundung",
      "projection": "Projektion",
      "geolibre": "GeoLibre",
      "subGroupGeometry": "Geometrie",
      "subGroupOverlay": "Überlagerung",
      "subGroupJoin": "Verknüpfung",
      "subGroupSelect": "Auswahl",
      "subGroupDggs": "DGGS",
      "subGroupH3": "H3",
      "subGroupMovement": "Bewegung & Zeit",
      "subGroupDataQuality": "Datenqualität",
      "subGroupTerrain": "Gelände",
      "subGroupReproject": "Umprojizieren",
      "subGroupClip": "Zuschneiden",
      "subGroupRasterToVector": "Raster zu Vektor",
      "subGroupVectorToRaster": "Vektor zu Raster",
      "subGroupAnalysis": "Analyse",
      "mapControls": "Kartensteuerelemente",
      "fieldCollection": "Felderfassung...",
      "gpsTracking": "GPS-Aufzeichnung...",
      "recordTour": "Kartentour aufzeichnen...",
      "recordVideo": "Video aufzeichnen...",
      "atmosphereEffects": "Atmosphärische Effekte",
      "atmosphereEnabled": "Aktiviert",
      "spinGlobe": "Rotierender Globus",
      "graticule": "Gitternetzlinien",
      "weather": "Wetter",
      "weatherTooltip": "Überlagern Sie animierbare Wetterebenen nahezu in Echtzeit.",
      "weatherPlay": "Animation abspielen",
      "weatherPause": "Animation pausieren",
      "clouds": "Wolken",
      "cloudsShow": "Wolken anzeigen",
      "cloudsTooltip": "Überlagert nahezu in Echtzeit NASA-Satellitenwolken, wie bei Google Earth. Fügt eine Ebene hinzu, die Sie Tag für Tag animieren können.",
      "cloudsDate": "Datum",
      "precipitation": "Niederschlag",
      "precipitationShow": "Niederschlag anzeigen",
      "precipitationTooltip": "RainViewer-Wetterradar nahezu in Echtzeit. Animation der letzten ~2 Stunden.",
      "precipitationTime": "Zeit",
      "sun": "Sonne",
      "sunTooltip": "Simuliert die Sonnenposition und den Tag-Nacht-Terminator für ein beliebiges Datum und eine beliebige Uhrzeit.",
      "routeAnimation": "Routenanimation",
      "routeAnimationTooltip": "Animiert eine Markierung entlang einer Linienebene – mit Wiedergabe/Pause, Geschwindigkeit, Spur und Kameraverfolgung.",
      "flightSimulator": "Flugsimulator",
      "flightSimulatorTooltip": "Fliegen Sie mit der Tastatur über das Gelände, wie in einem Flugsimulator.",
      "spinGlobeBoundsTitle": "Grenzen sind gesperrt",
      "spinGlobeBoundsDesc": "Der Globus kann sich nicht drehen, solange die Kartengrenzen gesperrt sind.",
      "spinGlobeBoundsHint": "Durch Entsperren der Grenzen kann sich der Globus frei drehen. Sie können sie jederzeit in den Einstellungen erneut sperren.",
      "spinGlobeBoundsUnlock": "Grenzen entsperren und drehen",
      "directions": "Wegbeschreibung",
      "directionsTooltip": "Das Routing sendet Ihre Wegpunkte an den öffentlichen OSRM-Demoserver (router.project-osrm.org).",
      "search": "Suche",
      "colorbar": "Farbskala",
      "legend": "Legende",
      "html": "HTML",
      "measure": "Messen",
      "bookmark": "Lesezeichen",
      "minimap": "Übersichtskarte",
      "viewState": "Ansichtsstatus",
      "activatePlugin": "Plugin aktivieren",
      "deactivate": "Deaktivieren",
      "activate": "Aktivieren",
      "position": "Position",
      "webServices": "Webdienste",
      "dggs": "DGGS",
      "commandPalette": "Befehlspalette",
      "openProjectFromUrl": "Projekt von URL öffnen",
      "importQgisProjectEllipsis": "QGIS-Projekt importieren…",
      "importArcgisProjectEllipsis": "ArcGIS-Pro-Projekt importieren…",
      "arcgisImportComplete": "ArcGIS-Pro-Projekt importiert",
      "arcgisImportWarnings_one": "Das Projekt wurde importiert, aber {{count}} Ebene konnte nicht geladen werden.",
      "arcgisImportWarnings_other": "Das Projekt wurde importiert, aber {{count}} Ebenen konnten nicht geladen werden.",
      "arcgisUnknownLayerType": "unbekannt",
      "qgisImportComplete": "QGIS-Projekt importiert",
      "qgisImportWarnings_one": "Das Projekt wurde importiert, aber {{count}} Ebene konnte nicht geladen werden.",
      "qgisImportWarnings_other": "Das Projekt wurde importiert, aber {{count}} Ebenen konnten nicht geladen werden.",
      "qgisUnknownProvider": "unbekannt",
      "qgisImportReason": {
        "non-vector": "In dieser ersten Version werden nur dateibasierte Vektorebenen unterstützt.",
        "provider": "Der Datenanbieter {{provider}} wird nicht unterstützt.",
        "missing-source": "Die Ebene hat keine lesbare Datenquelle.",
        "format": "Das Dateiformat der Ebene wird nicht unterstützt.",
        "remote-file": "Entfernte QGIS-Dateiquellen werden noch nicht unterstützt.",
        "network-path": "Netzwerkfreigabepfade werden aus Sicherheitsgründen nicht geladen.",
        "browser-local-file": "Die lokale Datei wird referenziert, aber Browser können QGIS-Datenpfade nicht erneut öffnen. Verwenden Sie GeoLibre Desktop, um sie zu laden.",
        "browser-local-raster": "Das Raster wird über einen lokalen Pfad referenziert. Verwenden Sie GeoLibre Desktop, um es zu laden."
      },
      "openProjectFromUrlDesc": "Lädt ein `.geolibre.json`-Projekt und fügt es den zuletzt verwendeten Projekten hinzu.",
      "projectUrl": "Projekt-URL",
      "opening": "Wird geöffnet...",
      "open": "Öffnen",
      "somethingWentWrong": "Etwas ist schiefgelaufen",
      "dismiss": "Verwerfen",
      "saveProjectAsTitle": "Projekt speichern unter",
      "saveProjectAsDesc": "Geben Sie einen Dateinamen ein. Das Projekt wird beim Klicken auf Speichern in den Downloads-Ordner Ihres Browsers heruntergeladen.",
      "embedVectorTitle": "Lokale Vektordaten einbetten?",
      "embedVectorDesc": "Dieses Projekt enthält {{count}} lokale Vektorebene(n), die von Ihrem Computer geladen wurden. Der Browser kann sie beim erneuten Öffnen des Projekts nicht erneut einlesen, daher müssen ihre Daten in die Projektdatei eingebettet werden, damit sie wiederhergestellt werden können. Das Einbetten fügt der Datei etwa {{size}} hinzu.",
      "embedVectorDescDesktop": "Dieses Projekt enthält {{count}} lokale Vektorebene(n), die von Ihrem Computer geladen wurden. Betten Sie ihre Daten ein, um das Projekt eigenständig zu machen (fügt etwa {{size}} hinzu), oder speichern Sie Dateiverweise, die beim erneuten Öffnen des Projekts von der Festplatte neu geladen werden. Verweise halten die Datei klein, funktionieren aber nicht mehr, wenn eine Quelldatei später verschoben oder gelöscht wird.",
      "embedVectorEmbedButton": "Daten einbetten",
      "embedVectorReferenceButton": "Dateiverweise speichern",
      "embedVectorSkipButton": "Ohne Daten speichern",
      "saveProjectFileName": "Dateiname",
      "saveProjectFileNamePlaceholder": "mein-projekt.geolibre.json",
      "exportHtmlAsTitle": "Als interaktives HTML exportieren",
      "exportHtmlAsDesc": "Geben Sie einen Dateinamen ein. Die HTML-Seite wird beim Klicken auf Speichern in den Downloads-Ordner Ihres Browsers heruntergeladen.",
      "exportHtmlFileName": "Dateiname",
      "exportHtmlFileNamePlaceholder": "meine-karte.html",
      "vectorDataFilter": "Vektordaten",
      "directionsNoticeTitle": "Wegbeschreibung verwendet einen öffentlichen Routing-Server",
      "directionsNoticeDesc": "Das Aktivieren der Wegbeschreibung sendet die von Ihnen platzierten Wegpunkte an den öffentlichen OSRM-Demoserver (router.project-osrm.org) zur Routenberechnung — Ihre Koordinaten verlassen für diese Anfragen Ihr Gerät. Der Demoserver ist ratenbegrenzt und unterstützt nur Autofahrten.",
      "reverseGeocode": "Umgekehrte Geokodierung",
      "reverseGeocodeTooltip": "Klicken Sie auf die Karte, um eine Adresse nachzuschlagen. Die angeklickten Koordinaten werden an den konfigurierten Geokodierungsanbieter gesendet (standardmäßig öffentliches Nominatim; änderbar unter Einstellungen → Geokodierung).",
      "reverseGeocodeNoticeTitle": "Umgekehrte Geokodierung verwendet einen externen Dienst",
      "reverseGeocodeNoticeDesc": "Das Aktivieren der umgekehrten Geokodierung sendet die Koordinaten jedes von Ihnen angeklickten Punkts an den konfigurierten Geokodierungsanbieter (standardmäßig den öffentlichen Nominatim-Dienst), um eine Adresse aufzulösen — Ihre Koordinaten verlassen für diese Anfragen Ihr Gerät. Sie können einen anderen Anbieter unter Einstellungen → Geokodierung wählen.",
      "networkNoticeTitle": "Netzwerkanalyse verwendet einen externen Routing-Server",
      "networkNoticeDesc": "Das Ausführen eines Netzwerk-Analysewerkzeugs sendet die Koordinaten Ihrer Eingabepunkte an einen Routing-Server, um Isochronen, Kostenmatrizen und Routen zu berechnen.",
      "networkNoticePrivacyHeading": "Datenschutz",
      "networkNoticePrivacy": "Ihre Eingabekoordinaten verlassen dieses Gerät und werden an den öffentlichen Valhalla-Server unter valhalla1.openstreetmap.de gesendet. Klicken Sie auf Abbrechen, wenn Ihr Projekt Datenschutz- oder Datensouveränitätsregeln unterliegt.",
      "networkNoticePrivacyCustom": "Ihre Eingabekoordinaten verlassen dieses Gerät und werden an den konfigurierten Routing-Server ({{endpoint}}) gesendet. Klicken Sie auf Abbrechen, wenn Ihr Projekt Datenschutz- oder Datensouveränitätsregeln unterliegt.",
      "networkNoticePerformanceHeading": "Leistung und Limits",
      "networkNoticePerformance": "Der öffentliche Server ist kostenlos, aber ratenbegrenzt, sodass große Punktmengen gedrosselt werden oder fehlschlagen können. Betreiben Sie bei intensiver Nutzung Ihren eigenen Valhalla-Server und geben Sie dessen URL in das Feld „Routing-Server (Valhalla)“ des Werkzeugs ein (oder legen Sie VITE_ROUTING_ENDPOINT unter Einstellungen → Umgebungsvariablen fest, um ihn zum Standard zu machen).",
      "continue": "Weiter",
      "largeOsmPbfTitle": "Große OSM-PBF-Datei",
      "largeOsmPbfDesc": "Diese Datei ist etwa {{sizeMb}} MB groß. Das Parsen wandelt jedes Objekt im Arbeitsspeicher in GeoJSON um, was langsam sein kann und im Browser viel Speicher verbrauchen kann. Fortfahren?",
      "largeVectorDesc": "{{name}} hat etwa {{count}} Objekte. Das Laden wandelt jedes Objekt im Arbeitsspeicher in GeoJSON um und kann die App verlangsamen oder einfrieren lassen. Fortfahren?",
      "addOsmPbfLayerTitle": "OSM-PBF-Ebene hinzufügen",
      "addOsmPbfLayerDesc": "Lädt eine OpenStreetMap-.osm.pbf-Datei. Sie wird in Ihrem Browser geparst und in separate Punkt-, Linien- und Polygonebenen aufgeteilt.",
      "urlLabel": "URL",
      "osmPbfUrlPlaceholder": "https://example.com/region.osm.pbf",
      "osmPbfSampleLabel": "Las Vegas",
      "osmPbfUrlHint": "Remote-URLs werden in der Desktop-App geladen; im Browser muss der Server Cross-Origin-Anfragen (CORS) erlauben.",
      "chooseLocalFile": "Lokale Datei wählen…",
      "loadFromUrl": "Von URL laden",
      "loadingOsmPbf": "OSM-PBF wird geladen…",
      "loadingOsmPbfDesc": "Die Datei wird geparst und die Objekte werden in GeoJSON umgewandelt. Dies läuft im Hintergrund und kann bei großen Auszügen einen Moment dauern.",
      "loadingOsmPbfProgress": "Objekte werden in GeoJSON umgewandelt… {{processed}} von {{total}} OSM-Entitäten verarbeitet.",
      "projectName": "Projektname",
      "storymapEllipsis": "Story Map...",
      "arcgisImportReason": {
        "layer-type": "Der Ebenentyp {{layerType}} wird nicht unterstützt.",
        "missing-source": "Die Ebene hat keine lesbare lokale Datenquelle.",
        "format": "Das Datenformat der Ebene wird nicht unterstützt.",
        "network-path": "Netzwerkfreigabepfade werden aus Sicherheitsgründen nicht geladen.",
        "service": "ArcGIS-Dienstebenen in Projekten werden noch nicht unterstützt.",
        "browser-local-file": "Die lokale Datei wird referenziert, aber Browser können ArcGIS-Pro-Datenpfade nicht erneut öffnen. Verwenden Sie GeoLibre Desktop, um sie zu laden.",
        "map-extent": "Die gespeicherte Kartenausdehnung verwendet ein Koordinatensystem, das GeoLibre nicht umrechnen kann; die Karte wurde daher in einer Standardansicht geöffnet.",
        "nesting": "Die Gruppe ist zu tief verschachtelt, oder das Projekt verweist zurück auf eine Gruppe, die sie bereits enthält."
      }
    },
    "plugin": {
      "maplibre-gl-annotations": "Anmerkungen",
      "maplibre-gl-streetview": "Straßenansicht",
      "maplibre-gl-time-slider": "Zeitschieberegler",
      "geolibre-timelapse": "Zeitraffer",
      "maplibre-gl-esri-wayback": "Historische Bilder",
      "maplibre-gl-openaerialmap": "OpenAerialMap",
      "maplibre-gl-arcgis-hub": "ArcGIS Hub",
      "geolibre-stac-catalogs": "STAC-Kataloge",
      "maplibre-gl-source-coop": "Source Cooperative",
      "maplibre-gl-natural-earth": "Natural Earth",
      "maplibre-gl-swipe": "Ebenen-Wischer",
      "geolibre-elevation-profile": "Höhenprofil",
      "maplibre-gl-basemap-control": "Basiskarten",
      "maplibre-layer-control": "Ebenensteuerung",
      "maplibre-gl-huggingface": "Hugging Face",
      "carto-light": "Carto Light Basiskarte",
      "geolibre-flight-simulator": "Flugsimulator",
      "geolibre-route-animation": "Routenanimation",
      "geolibre-sun": "Sonnensimulation",
      "maplibre-atmosphere-effects": "Atmosphärische Effekte",
      "maplibre-deckgl-viz": "Deck.gl-Ebene",
      "maplibre-gl-clouds": "Wolken",
      "maplibre-gl-components": "Komponenten",
      "maplibre-gl-directions": "Wegbeschreibung",
      "maplibre-gl-earthdata-gis": "Earthdata GIS",
      "maplibre-gl-enviroatlas": "US EPA EnviroAtlas",
      "maplibre-gl-fema-wms": "FEMA NFHL",
      "maplibre-gl-geo-editor": "GeoEditor",
      "maplibre-gl-geoagent": "GeoAgent",
      "maplibre-gl-geolens": "GeoLens",
      "maplibre-gl-graticule": "Gitternetzlinien",
      "maplibre-gl-mapillary": "Mapillary",
      "maplibre-gl-nasa-earthdata": "NASA Earthdata",
      "maplibre-gl-national-map": "USGS National Map",
      "maplibre-gl-overture-maps": "Overture Maps",
      "maplibre-gl-precipitation": "Niederschlag",
      "maplibre-gl-usgs-lidar": "USGS LiDAR",
      "maplibre-h3-grid": "H3-Gitter",
      "maplibre-s2-grid": "S2",
      "maplibre-a5-grid": "A5",
      "maplibre-dggrid": "DGGRID",
      "maplibre-dggal": "DGGAL",
      "maplibre-olc": "OLC",
      "maplibre-geohash": "Geohash",
      "maplibre-tilecode": "Tilecode",
      "maplibre-reverse-geocode": "Umgekehrte Geokodierung",
      "osm-basemap": "OpenStreetMap-Basiskarte"
    },
    "fileDrop": {
      "overlayTitle": "Vektor- oder Rasterdateien hier ablegen, um Ebenen hinzuzufügen",
      "overlaySubtext": "Ihre Daten werden sofort dem Ebenen-Panel hinzugefügt.",
      "addedLayer": "„{{name}}“ zum Ebenen-Panel hinzugefügt.",
      "addedVectorLayers_one": "{{count}} Vektorebene zum Ebenen-Panel hinzugefügt.",
      "addedVectorLayers_other": "{{count}} Vektorebenen zum Ebenen-Panel hinzugefügt.",
      "addedRasterLayers_one": "{{count}} Rasterebene zum Ebenen-Panel hinzugefügt.",
      "addedRasterLayers_other": "{{count}} Rasterebenen zum Ebenen-Panel hinzugefügt.",
      "addedBoth": "{{vector}} und {{raster}} zum Ebenen-Panel hinzugefügt.",
      "bothVectorLayers_one": "{{count}} Vektorebene",
      "bothVectorLayers_other": "{{count}} Vektorebenen",
      "bothRasterLayers_one": "{{count}} Rasterebene",
      "bothRasterLayers_other": "{{count}} Rasterebenen"
    },
    "error": {
      "couldNotOpenProject": "Projekt konnte nicht geöffnet werden.",
      "couldNotImportQgisProject": "QGIS-Projekt konnte nicht importiert werden.",
      "couldNotImportArcgisProject": "ArcGIS-Pro-Projekt konnte nicht importiert werden.",
      "invalidProjectUrl": "Geben Sie eine gültige HTTP- oder HTTPS-Projekt-URL ein.",
      "couldNotOpenProjectUrl": "Projekt-URL konnte nicht geöffnet werden.",
      "couldNotOpenRecentProject": "Das zuletzt verwendete Projekt konnte nicht geöffnet werden.",
      "couldNotLoadRecentProject": "Das zuletzt verwendete Projekt konnte nicht geladen werden.",
      "couldNotSaveProject": "Projekt konnte nicht gespeichert werden.",
      "couldNotExportHtml": "Projekt konnte nicht als HTML exportiert werden.",
      "osmPbfNoFeatures": "In dieser OSM-PBF-Datei wurden keine Punkt-, Linien- oder Polygonobjekte gefunden.",
      "couldNotLoadOsmPbf": "Die OSM-PBF-Datei konnte nicht geladen werden.",
      "osmPbfLoadFailedWithHint": "{{message}} Falls dies eine Mapbox Vector Tile (.pbf) ist, kann sie nicht als OSM-Auszug geladen werden.",
      "osmPbfTooLarge": "Dieser OSM-Auszug ist zu groß zum Laden und hat den Speicher oder die Zeit überschritten. Versuchen Sie eine kleinere Region oder filtern Sie die Datei vorher (zum Beispiel mit osmium-tool oder QGIS), bevor Sie sie laden.",
      "couldNotOpenOsmPbf": "Die OSM-PBF-Datei konnte nicht geöffnet werden.",
      "invalidOsmPbfUrl": "Geben Sie eine gültige http(s)-URL zu einer .osm.pbf-Datei ein.",
      "couldNotDownloadOsmPbf": "Die OSM-PBF-Datei konnte nicht heruntergeladen werden.",
      "scenegraphModelUrlRequired": "Geben Sie eine glTF/GLB-Modell-URL ein.",
      "scenegraphInvalidLngLat": "Geben Sie einen gültigen Längen- und Breitengrad ein.",
      "scenegraphOutOfRange": "Der Längengrad muss zwischen -180 und 180 liegen, der Breitengrad zwischen -90 und 90.",
      "scenegraphNoPointFeatures": "Das GeoJSON enthält keine Punktobjekte, an denen Modelle platziert werden können."
    },
    "scenegraph": {
      "modelUrl": "glTF-/GLB-Modell-URL",
      "placement": "Platzierung",
      "placementSingle": "Einzelner Standort",
      "placementData": "Aus Punktdaten",
      "longitude": "Längengrad",
      "latitude": "Breitengrad",
      "scale": "Maßstab",
      "bearing": "Peilung°",
      "altitude": "Höhe m"
    },
    "sqlWorkspace": {
      "description": {
        "postgis": "Führt PostGIS-SQL gegen geladene Ebenen aus. Die PostGIS-Erweiterung ist geladen, sodass ST_*-Funktionen verfügbar sind. Beim ersten Ausführen wird eine ~19 MB große Datenbank-Engine geladen.",
        "duckdb": "Führt DuckDB-SQL gegen geladene Ebenen, Dateien und URLs aus. Die räumliche Erweiterung ist geladen, sodass ST_*-Funktionen verfügbar sind. Cloud-URLs (s3://, gs://, az://) werden für öffentliche Daten unterstützt.",
        "sedona": "Führt räumliches Apache-Sedona-SQL gegen geladene Ebenen aus. Läuft im Browser über CereusDB (ein WebAssembly-Build von SedonaDB); auf dem Desktop wird der SedonaDB-Sidecar verwendet, wenn die optionale sedona-Erweiterung installiert ist. ST_*-Funktionen sind verfügbar."
      },
      "title": "SQL-Arbeitsbereich",
      "engine": "SQL-Engine",
      "resize": "SQL-Arbeitsbereich anpassen",
      "resizeEditor": "Editor- und Ergebnisbereiche anpassen",
      "collapse": "SQL-Arbeitsbereich einklappen",
      "expand": "SQL-Arbeitsbereich erweitern",
      "close": "SQL-Arbeitsbereich schließen",
      "run": "Ausführen",
      "runHint": "Ausführen (Strg/Cmd+Enter)",
      "clear": "Leeren",
      "completions": "Vervollständigungen",
      "placeholder": "SQL hier · Strg/Cmd+Enter zum Ausführen · Tab oder Strg+Leertaste zum Autovervollständigen",
      "resultsPlaceholder": "Führen Sie eine Abfrage aus, um hier Ergebnisse zu sehen.",
      "queryableHint": "Abfragbare Ebenen: {{names}}",
      "queryableLayers": "Abfragbare Ebenen:",
      "queryLabel": "SQL-Abfrage",
      "engineOption": "Engine: {{name}}",
      "sampleQueries": "Beispielabfragen…",
      "sampleQueriesLabel": "Eine Beispielabfrage einfügen",
      "history": "Verlauf…",
      "historyLabel": "Eine Abfrage aus dem Verlauf wiederverwenden",
      "sampleForLayer": "Beispielabfrage für Ebene…",
      "sampleForLayerLabel": "Eine Beispielabfrage für eine Ebene einfügen",
      "noLayersEngine": "Es sind noch keine Vektorebenen als Tabellen geladen. Laden Sie eine Vektorebene, um sie mit {{engine}} abzufragen.",
      "noLayersReaders": "Es sind noch keine Vektorebenen als Tabellen geladen. Sie können weiterhin Dateien und URLs mit read_parquet(), read_csv_auto() oder ST_Read() lesen.",
      "layerName": "Ebenenname",
      "layerNamePlaceholder": "Ebenenname (optional)",
      "addAsLayer": "Als Ebene hinzufügen",
      "exportCsv": "CSV exportieren",
      "exportGeoParquet": "GeoParquet exportieren",
      "addedAsLayer_one": "{{count}} Objekt als „{{name}}“ zur Karte hinzugefügt.",
      "addedAsLayer_other": "{{count}} Objekte als „{{name}}“ zur Karte hinzugefügt.",
      "addAsQueryLayer": "Als Abfrageebene hinzufügen",
      "addAsQueryLayerHint": "Das Ergebnis als Live-Ebene hinzufügen, die dieses SQL bei einer Aktualisierung erneut ausführt",
      "addedAsQueryLayer_one": "{{count}} Objekt als Abfrageebene „{{name}}“ zur Karte hinzugefügt. Aktualisieren Sie sie im Ebenen-Panel, um das SQL erneut auszuführen.",
      "addedAsQueryLayer_other": "{{count}} Objekte als Abfrageebene „{{name}}“ zur Karte hinzugefügt. Aktualisieren Sie sie im Ebenen-Panel, um das SQL erneut auszuführen.",
      "savedAs": "{{label}} als {{name}} gespeichert.",
      "noRows": "Anweisung ausgeführt. Keine Zeilen zurückgegeben.",
      "showingRows": "Zeigt die ersten {{shown}} von {{total}} Zeilen. Exportieren, um alle zu sehen.",
      "rowsCount_one": "{{count}} Zeile",
      "rowsCount_other": "{{count}} Zeilen",
      "columnsCount_one": "{{count}} Spalte",
      "columnsCount_other": "{{count}} Spalten",
      "samples": {
        "countriesGeom": "Länder mit Geometrie",
        "attributesOnly": "Nur Attribute (keine Geometrie)",
        "populationByContinent": "Bevölkerung nach Kontinent (Aggregation)",
        "mostPopulous": "Bevölkerungsreichste Länder (Geometrie)",
        "countryCentroids": "Länderzentroide (räumlich)",
        "largestByArea": "Größte Länder nach Fläche (räumlich)",
        "postgisVersion": "PostGIS-Version",
        "makePoint": "Einen Punkt erstellen (Geometrie)",
        "firstRows": "Erste Zeilen einer Ebene",
        "featureCount": "Objektanzahl",
        "layerCentroids": "Zentroide einer Ebene (räumlich)",
        "bufferFeatures": "Objekte um 0,01 Grad puffern (räumlich)",
        "boundingBox": "Begrenzungsrahmen einer Ebene (räumlich)",
        "bufferPoint": "Einen Punkt puffern (räumlich)",
        "areaPerFeature": "Fläche pro Objekt (räumlich)"
      }
    }
  },
  "selection": {
    "byExpressionTitle": "Nach Ausdruck auswählen",
    "byExpressionDescription": "Wählen Sie Objekte aus, deren Attribute einem booleschen Ausdruck entsprechen. Die Treffer werden zur aktiven Auswahl und auf der Karte sowie in der Attributtabelle hervorgehoben.",
    "byLocationTitle": "Nach Position auswählen",
    "byLocationDescription": "Wählen Sie Objekte anhand ihrer räumlichen Beziehung zu den Objekten einer anderen Ebene aus.",
    "targetLayer": "Objekte auswählen aus",
    "referenceLayer": "durch Vergleich mit den Objekten von",
    "predicate": "wobei das Objekt",
    "predicateIntersects": "schneidet",
    "predicateWithin": "liegt innerhalb",
    "predicateContains": "enthält",
    "predicateDisjoint": "ist disjunkt (keine Überschneidung)",
    "mode": "Aktuelle Auswahl ändern durch",
    "modeNew": "Neue Auswahl erstellen",
    "modeAdd": "Zur aktuellen Auswahl hinzufügen",
    "modeRemove": "Aus der aktuellen Auswahl entfernen",
    "modeIntersect": "Innerhalb der aktuellen Auswahl auswählen",
    "expression": "Ausdruck",
    "expressionPlaceholder": "[\">=\", [\"get\", \"population\"], 100000]",
    "expressionTarget": "Auswahlfilter",
    "openBuilder": "Ausdruckseditor...",
    "invalidExpression": "Geben Sie einen gültigen booleschen Ausdruck ein.",
    "select": "Objekte auswählen",
    "noLayers": "Fügen Sie eine Vektorebene mit Objekten hinzu, um eine Auswahl zu treffen.",
    "needTwoLayers": "Die Auswahl nach Position erfordert zwei Vektorebenen mit Objekten.",
    "summary": "{{selected}} von {{total}} Objekt(en) ausgewählt ({{matched}} Treffer).",
    "evaluationErrors": "{{count}} Objekt(e) konnten nicht ausgewertet werden und wurden nicht berücksichtigt.",
    "unevaluableDisjoint": "{{count}} Objekt(e) wurden ausgeschlossen, da ihre Geometrie nicht ausgewertet werden konnte.",
    "tooManyPairs": "Dieser Vergleich erfordert {{pairs}} Objektpaar-Tests (Limit {{limit}}). Verwenden Sie stattdessen Verarbeitung → GeoLibre → Vektor → Nach Position auswählen mit der Sidecar-Engine.",
    "exportedLayerName": "{{name}} (Auswahl)"
  },
  "loadEditorFeatures": {
    "menuItem": "Objekte in Editor laden…",
    "title": "Objekte in Editor laden",
    "collapse": "Panel einklappen",
    "expand": "Panel ausklappen",
    "description": "Laden Sie die im aktuellen Kartenausschnitt sichtbaren Vektorobjekte in den GeoEditor, um sie zu bearbeiten, und speichern Sie anschließend alle Objekte oder nur Ihre Änderungen als GeoJSON.",
    "vectorLayer": "Vektorebene",
    "selectPlaceholder": "Ebene auswählen…",
    "refresh": "Ebenenliste aktualisieren",
    "noLayers": "Im aktuellen Kartenausschnitt sind keine Vektorebenen vorhanden. Fügen Sie eine Vektorebene hinzu oder verschieben Sie die Karte zu einem Basiskartenbereich mit Vektorobjekten und aktualisieren Sie dann.",
    "editSessionActive": "Schließen Sie die direkte Geometriebearbeitung ab (Ebenen-Panel → Geometriebearbeitung beenden), bevor Sie hier Objekte laden oder speichern.",
    "editorName": "Bearbeitername",
    "editorNamePlaceholder": "Ihr Name (optional)",
    "loadFeatures": "Objekte laden",
    "loading": "Objekte werden geladen…",
    "selectLayer": "Bitte wählen Sie zuerst eine Ebene aus.",
    "noneInView": "Für diese Ebene wurden im aktuellen Kartenausschnitt keine Objekte gefunden.",
    "editorUnavailable": "Der GeoEditor konnte nicht aktiviert werden. Versuchen Sie es erneut, sobald die Karte vollständig geladen ist.",
    "noEditable": "Für diese Ebene wurden im aktuellen Kartenausschnitt keine bearbeitbaren Objekte gefunden.",
    "loaded": "{{count}} Objekt(e) aus „{{layer}}“ geladen.",
    "appended": "{{count}} Objekt(e) aus „{{layer}}“ angehängt.",
    "loadedWithDropped": "{{message}} ({{dropped}} ungültige übersprungen)",
    "loadFailed": "Objekte konnten nicht in den Editor geladen werden.",
    "confirmExisting": "Der Editor enthält bereits {{count}} Objekt(e). Anhängen oder verwerfen und ersetzen?",
    "tooMany": "Das Laden von {{count}} Objekten kann den Editor verlangsamen. Trotzdem laden?",
    "loadAnyway": "Trotzdem laden",
    "append": "Anhängen",
    "appendHint": "Fügt die neuen Objekte zu den vorhandenen hinzu.",
    "discard": "Verwerfen & ersetzen",
    "discardHint": "Entfernt die vorhandenen Objekte und lädt die neuen.",
    "noChanges": "Es gibt noch keine Änderungen zum Speichern.",
    "nothingToSave": "Keine Objekte zum Speichern.",
    "saved": "{{count}} Objekt(e) gespeichert.",
    "savedChanges": "Änderungen gespeichert: {{added}} hinzugefügt, {{modified}} geändert, {{deleted}} gelöscht.",
    "saveFailed": "Die Objekte konnten nicht gespeichert werden.",
    "saveChanges": "Änderungen speichern",
    "saveChangesHint": "Speichert nur die Objekte, die Sie hinzugefügt, bearbeitet oder gelöscht haben.",
    "saveAll": "Alle speichern"
  },
  "geocode": {
    "title": "Adressen geokodieren",
    "description": "Geokodieren Sie eine CSV-Datei mit Adressen in eine Punktebene. Jede übereinstimmende Zeile wird zu einem Punkt mit den ursprünglichen Spalten sowie den ermittelten Koordinaten und dem Übereinstimmungswert.",
    "chooseFile": "CSV-Datei auswählen",
    "noFile": "Keine CSV-Datei ausgewählt.",
    "fileLoaded": "{{name}} ({{count}} Zeilen)",
    "provider": "Geokodierungsanbieter",
    "providerHint": "API-Schlüssel und Endpunkte werden in den Einstellungen verwaltet.",
    "apiKeyRequired": "{{provider}} benötigt einen API-Schlüssel. Fügen Sie einen in den Einstellungen hinzu, um Ergebnisse zu erhalten.",
    "corsNote": "Google erlaubt offiziell keine Browseranfragen an seine Geocoding API; Anfragen können blockiert werden, sofern sie nicht über einen Same-Origin-Proxy geleitet werden.",
    "addressColumn": "Adressspalte",
    "run": "Geokodierung starten",
    "cancel": "Abbrechen",
    "outputPlaceholder": "Der Fortschritt wird hier angezeigt.",
    "usingEndpoint": "Verwendet {{endpoint}}",
    "usingProvider": "Verwendet {{provider}} ({{endpoint}})",
    "rowCapWarning": "Nur die ersten {{cap}} Zeilen werden geokodiert, um die Nutzungsrichtlinie des öffentlichen Nominatim-Dienstes einzuhalten. Konfigurieren Sie für größere Stapel einen selbst gehosteten Endpunkt.",
    "skippedEmpty": "{{count}} Zeile(n) mit leerer Adresse übersprungen.",
    "progress": "Geokodiere Zeile {{current}} von {{total}}: {{address}}",
    "summary": "{{matched}} von {{total}} Zeile(n) geokodiert; {{failed}} ohne Treffer.",
    "failedRows": "Zeilen ohne Treffer: {{rows}}",
    "noMatches": "Es konnten keine Zeilen geokodiert werden.",
    "cancelledNoRows": "Abgebrochen, bevor Zeilen geokodiert wurden.",
    "cancelled": "Abgebrochen. {{matched}} übereinstimmende Zeile(n) hinzugefügt.",
    "error": "Fehler: {{message}}",
    "reverseLookingUp": "Adresse wird ermittelt…",
    "reverseNoAddress": "Keine Adresse gefunden.",
    "reverseCopyAddress": "Adresse kopieren",
    "reverseFailed": "Die Rückwärtsgeokodierung ist fehlgeschlagen."
  },
  "graticule": {
    "title": "Gitternetzlinien",
    "controlTitle": "Gitternetzlinien-Einstellungen",
    "gridType": "Gittertyp",
    "typeGeographic": "Geografisch (Breite/Länge)",
    "typeUtm": "UTM (Ost-/Nordwert)",
    "spacing": "Abstand",
    "spacingAuto": "Automatisch (nach Zoomstufe)",
    "spacingFixed": "Fester Abstand",
    "interval": "Intervall (°)",
    "intervalMeters": "Intervall (m)",
    "lineColor": "Linienfarbe",
    "lineWidth": "Linienstärke",
    "lineOpacity": "Linien-Deckkraft",
    "dashedLines": "Gestrichelte Linien",
    "showLabels": "Beschriftungen anzeigen",
    "labelFormat": "Beschriftungsformat",
    "formatDecimal": "Dezimalgrad",
    "formatDms": "Grad/Min/Sek",
    "labelEdges": "Beschriftungsränder",
    "edgesLeftBottom": "Links + unten",
    "edgesAll": "Alle Seiten",
    "labelColor": "Beschriftungsfarbe",
    "labelSize": "Beschriftungsgröße"
  },
  "h3Plugin": {
    "title": "H3-Gitter",
    "controlTitle": "H3-Gitter-Einstellungen",
    "autoResolution": "Automatische Auflösung",
    "resolution": "Auflösung",
    "cellCount": "Zellen im Ausschnitt: {{count}}",
    "tooManyCells": "Dieser Ausschnitt überschreitet das Limit von {{limit}} Zellen. Zoomen Sie hinein oder verringern Sie die Auflösung.",
    "fillColor": "Füllfarbe",
    "fillOpacity": "Füllungsdeckkraft",
    "lineColor": "Umrissfarbe",
    "lineWidth": "Umrissbreite",
    "showLabels": "Zellen-IDs anzeigen",
    "identifyHint": "Klicken Sie auf die Karte, um eine H3-Zelle zu bestimmen.",
    "selectedCell": "Ausgewählte Zelle",
    "noSelection": "Keine Zelle ausgewählt",
    "copyId": "ID kopieren",
    "copied": "Kopiert",
    "parent": "Übergeordnete Zelle",
    "children": "Untergeordnete Zellen",
    "neighbors": "Nachbarn",
    "baseCell": "Basiszelle",
    "center": "Mittelpunkt",
    "pentagon": "Fünfeck",
    "yes": "Ja",
    "no": "Nein",
    "zoomToCell": "Auf Zelle zoomen",
    "addAsLayer": "Gitter als Ebene hinzufügen",
    "exportGeoJson": "GeoJSON exportieren",
    "exportCsv": "CSV exportieren",
    "includeNeighbors": "Nachbarn der ausgewählten Zelle einbeziehen",
    "includeParents": "Übergeordnete Zellen der ausgewählten Zelle einbeziehen",
    "showIcosahedron": "Ikosaeder anzeigen"
  },
  "timelapse": {
    "title": "Zeitraffer",
    "provider": "Bildquelle",
    "legend": "Legende",
    "yearSlider": "Zeitraffer-Jahr",
    "play": "Abspielen",
    "pause": "Pause",
    "speed": "Geschwindigkeit",
    "secondsPerYear": "Sekunden pro Jahr",
    "secondsPerYearSuffix": "s/Jahr",
    "loop": "Schleife",
    "record": "Video aufnehmen",
    "stopRecording": "Aufnahme stoppen",
    "recording": "Aufnahme läuft",
    "recordingFailed": "Aufnahme fehlgeschlagen.",
    "recordingUnsupported": "Canvas-Aufnahme wird in diesem Browser nicht unterstützt.",
    "loadingTiles": "Kacheln werden geladen…"
  },
  "mapillary": {
    "title": "Mapillary",
    "hint": "Klicken Sie auf einen Abdeckungspunkt auf der Karte, um Bilder auf Straßenebene anzuzeigen.",
    "noToken": "Zum Laden der Abdeckung und der Bilder ist ein Mapillary-Zugriffstoken erforderlich. Fügen Sie unten eines ein, um zu beginnen.",
    "tokenPlaceholder": "MLY|…",
    "tokenSave": "Token speichern",
    "tokenHelp": "Token abrufen",
    "tokenLabel": "Mapillary-Zugriffstoken",
    "loading": "Bilder werden geladen…",
    "loadError": "Dieses Bild konnte nicht geladen werden.",
    "coverageLines": "Mapillary-Sequenzen",
    "coveragePoints": "Mapillary-Bilder"
  },
  "openAerialMap": {
    "hint": "Durchsuchen Sie OpenAerialMap-Bilder nach Kartenansicht, einem gezeichneten Rechteck oder Koordinaten.",
    "search": "Diese Ansicht durchsuchen",
    "loadMore": "Mehr laden",
    "searching": "Wird gesucht…",
    "loadingMore": "Weitere werden geladen…",
    "noResults": "In diesem Bereich wurden keine Bilder gefunden.",
    "showing": "{{shown}} von {{total}} Bildern werden angezeigt.",
    "searchError": "OpenAerialMap konnte nicht erreicht werden: {{message}}. Bitte versuchen Sie es erneut.",
    "add": "Hinzufügen",
    "remove": "Entfernen",
    "zoom": "Zoom",
    "download": "Herunterladen",
    "metadata": "Metadaten",
    "addTitle": "Dieses Bild zur Karte hinzufügen",
    "removeTitle": "Dieses Bild aus der Karte entfernen",
    "addUnavailableTitle": "Für dieses Bild ist kein Kacheldienst verfügbar",
    "zoomTitle": "Auf dieses Bild zoomen",
    "downloadTitle": "Das Quell-GeoTIFF herunterladen",
    "metadataTitle": "Metadaten dieses Bildes anzeigen",
    "modeView": "Kartenansicht",
    "modeDraw": "Rechteck zeichnen",
    "modeBbox": "Koordinaten",
    "drawHint": "Klicken und ziehen Sie auf der Karte, um ein Suchrechteck zu zeichnen.",
    "drawStart": "Rechteck auf Karte zeichnen",
    "drawCancel": "Zeichnen abbrechen",
    "drawnBox": "Suchrechteck: {{box}}",
    "coordWest": "West",
    "coordSouth": "Süd",
    "coordEast": "Ost",
    "coordNorth": "Nord",
    "coordSearch": "Dieses Rechteck durchsuchen",
    "bboxInvalid": "Geben Sie vier gültige Koordinaten mit West < Ost und Süd < Nord ein.",
    "footprintsLayer": "OpenAerialMap-Umrisse",
    "footprintUnavailable": "Für dieses Bild ist kein Kacheldienst verfügbar.",
    "metadataHeading": "Bildmetadaten",
    "close": "Schließen",
    "metaTitle": "Titel",
    "metaProvider": "Anbieter",
    "metaPlatform": "Plattform",
    "metaResolution": "Auflösung",
    "metaAcquired": "Aufgenommen",
    "metaBounds": "Ausdehnung (W, S, O, N)",
    "metaSource": "Quell-GeoTIFF",
    "metaRaw": "Rohe Metadaten"
  },
  "arcgisHub": {
    "hint": "Öffentliche Datensätze aus ArcGIS Hub durchsuchen. Unterstützte Ebenen zur Karte hinzufügen oder Daten herunterladen.",
    "searchPlaceholder": "ArcGIS-Hub-Datensätze durchsuchen",
    "search": "Suchen",
    "searchCurrentView": "Aktuellen Kartenbereich durchsuchen",
    "enterKeyword": "Geben Sie ein Stichwort ein, um zu beginnen.",
    "loadMore": "Weitere laden",
    "searching": "Wird gesucht…",
    "loadingMore": "Weitere Datensätze werden geladen…",
    "noResults": "Keine öffentlichen Datensätze gefunden.",
    "searchError": "ArcGIS Hub konnte nicht durchsucht werden.",
    "showing": "{{shown}} von {{total}} Datensätzen werden angezeigt.",
    "noDescription": "Keine Beschreibung vorhanden.",
    "add": "Zur Karte hinzufügen",
    "adding": "{{title}} wird hinzugefügt…",
    "added": "{{title}} hinzugefügt.",
    "addError": "Dieser Datensatz konnte nicht hinzugefügt werden.",
    "zoom": "Zoomen",
    "download": "Herunterladen",
    "preparing": "{{title}} wird vorbereitet…",
    "downloading": "{{title}} wird heruntergeladen: {{completed}} von {{total}} Features…",
    "downloadStarted": "Download für {{title}} gestartet.",
    "downloadFirstLayer": "{{title}} hat {{layerCount}} Ebenen; nur die erste wurde heruntergeladen.",
    "downloadError": "Dieser Datensatz konnte nicht heruntergeladen werden.",
    "details": "Details"
  },
  "openDataCatalogs": {
    "socrataHint": "Öffentliche Socrata-Open-Data-Kataloge durchsuchen und GeoJSON-Datensätze hinzufügen.",
    "ckanHint": "Den CKAN-Katalog des Humanitarian Data Exchange durchsuchen und verfügbare GeoJSON-Ressourcen hinzufügen.",
    "searchPlaceholder": "{{name}} durchsuchen",
    "search": "Suchen",
    "enterKeyword": "Geben Sie ein Stichwort ein, um zu beginnen.",
    "loadMore": "Weitere laden",
    "searching": "Wird gesucht…",
    "noResults": "Keine Datensätze gefunden.",
    "showing": "{{shown}} von {{total}} Datensätzen werden angezeigt.",
    "noDescription": "Keine Beschreibung vorhanden.",
    "add": "Zur Karte hinzufügen",
    "details": "Details",
    "adding": "{{title}} wird hinzugefügt…",
    "added": "{{title}} hinzugefügt.",
    "addError": "Datensatz konnte nicht hinzugefügt werden.",
    "searchError": "Suche fehlgeschlagen."
  },
  "earthdataGis": {
    "hint": "Durchsuchen Sie NASA Earthdata GIS nach Bild-, Karten- und Feature-Diensten.",
    "searchPlaceholder": "Earthdata GIS durchsuchen…",
    "search": "Suchen",
    "searching": "Wird gesucht…",
    "loadingMore": "Weitere werden geladen…",
    "loadMore": "Mehr laden",
    "noResults": "Keine Dienste passen zu dieser Suche.",
    "showing": "Angezeigte Dienste: {{shown}} von {{total}}.",
    "searchError": "Earthdata GIS konnte nicht erreicht werden: {{message}}. Bitte versuchen Sie es erneut.",
    "limitToView": "Auf Kartenausschnitt beschränken",
    "limitToViewTitle": "Nur Dienste zurückgeben, die den aktuellen Kartenausschnitt schneiden",
    "filterAll": "Alle",
    "filterImage": "Bilddaten",
    "filterMap": "Karten",
    "filterFeature": "Features",
    "kindImage": "Bilddienst",
    "kindMap": "Kartendienst",
    "kindFeature": "Feature-Dienst",
    "kindWebMap": "Webkarte",
    "filterWebMap": "Webkarten",
    "webMapAdded_one": "{{count}} Ebene aus dieser Webkarte hinzugefügt.",
    "webMapAdded_other": "{{count}} Ebenen aus dieser Webkarte hinzugefügt.",
    "webMapAddedPartial": "Ebenen hinzugefügt: {{added}} von {{total}} aus dieser Webkarte; die übrigen konnten nicht erreicht werden.",
    "webMapEmpty": "diese Webkarte enthält keine Ebenen, die GeoLibre darstellen kann.",
    "add": "Hinzufügen",
    "adding": "Wird hinzugefügt…",
    "remove": "Entfernen",
    "zoom": "Zoom",
    "details": "Details",
    "portal": "Portal",
    "portalTitle": "Dieses Element im Earthdata-GIS-Portal öffnen",
    "cog": "COG",
    "cogTitle": "Diesen Dienst als Cloud Optimized GeoTIFF herunterladen",
    "cogHeading": "Als COG herunterladen",
    "cogAreaView": "Aktueller Ausschnitt",
    "cogAreaExtent": "Volle Ausdehnung",
    "cogSize": "Exportgröße: {{width}} x {{height}} px",
    "cogResolution": "Bodenauflösung: {{metres}} m/px",
    "cogNote": "Der Dienst wird in dieser Größe neu exportiert und als COG neu codiert. Dies ist also eine neu abgetastete Ansicht des Gebiets, nicht das Quellraster in nativer Auflösung.",
    "cogDownload": "Herunterladen",
    "cogDownloading": "Wird exportiert und konvertiert…",
    "cogRetrying": "Der Dienst hat diese Größe abgelehnt; neuer Versuch mit {{width}} x {{height}} px…",
    "cogConverting": "Wird in ein COG konvertiert…",
    "cogDone": "COG mit {{width}} x {{height}} px gespeichert.",
    "cogFailed": "Das COG konnte nicht heruntergeladen werden: {{message}}",
    "cogUnavailable": "Zum Herunterladen wird die Desktop-App oder ein Speichern-Dialog des Browsers benötigt.",
    "cancel": "Abbrechen",
    "addTitle": "Diesen Dienst zur Karte hinzufügen",
    "removeTitle": "Diesen Dienst aus der Karte entfernen",
    "zoomTitle": "Auf diesen Dienst zoomen",
    "zoomUnavailableTitle": "Dieser Dienst veröffentlicht keine Ausdehnung",
    "detailsTitle": "Die Metadaten dieses Dienstes anzeigen",
    "addError": "Der Dienst konnte nicht hinzugefügt werden: {{message}}",
    "addTimeout": "er hat nicht innerhalb einer Minute geantwortet. Die Ebene erscheint dennoch, wenn der Vorgang abschließt.",
    "zoomedToData": "Über die volle Ausdehnung dieser Ebene hinaus gezoomt: Der Dienst rendert nur bei höheren Zoomstufen.",
    "detailsHeading": "Dienstdetails",
    "close": "Schließen",
    "metaTitle": "Titel",
    "metaType": "Typ",
    "metaSummary": "Zusammenfassung",
    "metaDescription": "Beschreibung",
    "metaOwner": "Veröffentlicht von",
    "metaModified": "Zuletzt geändert",
    "metaTags": "Tags",
    "metaExtent": "Ausdehnung (W, S, O, N)",
    "metaCredits": "Danksagungen",
    "metaLicense": "Nutzungsbedingungen",
    "metaService": "Dienst-URL",
    "metaPortalItem": "Portalelement",
    "metaRaw": "Rohe Metadaten"
  },
  "sourceCoop": {
    "hint": "Durchsuchen Sie Source Cooperative nach offenen Geodaten oder geben Sie eine Konto-/Produkt-ID ein.",
    "searchPlaceholder": "Daten oder Konto/Produkt durchsuchen",
    "search": "Suchen",
    "searching": "Wird gesucht…",
    "loading": "Katalog wird geladen…",
    "loadError": "Source Cooperative konnte nicht erreicht werden: {{message}}. Bitte versuchen Sie es erneut.",
    "noResults": "Keine passenden Produkte.",
    "retry": "Erneut versuchen",
    "featured": "Empfohlen",
    "showing": "{{shown}} von {{total}} Produkten werden angezeigt.",
    "browseAccount": "Alle {{account}}-Produkte durchsuchen",
    "back": "Zurück",
    "files": "Dateien",
    "noFiles": "Keine Dateien in diesem Ordner.",
    "loadingFiles": "Dateien werden geladen…",
    "loadMore": "Mehr laden",
    "parent": "Eine Ebene höher",
    "add": "Hinzufügen",
    "adding": "Wird hinzugefügt…",
    "added": "Hinzugefügt",
    "stream": "Streamen",
    "streaming": "Wird gestreamt",
    "remove": "Entfernen",
    "download": "Herunterladen",
    "copyUrl": "URL kopieren",
    "copied": "Kopiert",
    "openProduct": "Auf source.coop öffnen",
    "addTitle": "Diese Datei zur Karte hinzufügen",
    "streamTitle": "Fragen Sie diese Datei an ihrem Speicherort ab und lesen Sie nur die sichtbaren Teile. Die gesamte Datei wird nie in DuckDB kopiert — ideal für große Dateien.",
    "removeTitle": "Diese Datei aus der Karte entfernen",
    "downloadTitle": "Diese Datei herunterladen",
    "copyUrlTitle": "Die URL dieser Datei kopieren",
    "openProductTitle": "Die Seite dieses Produkts auf source.coop öffnen",
    "unsupportedTitle": "GeoLibre kann dieses Format nicht darstellen — laden Sie es stattdessen herunter",
    "addError": "Diese Datei konnte nicht hinzugefügt werden: {{message}}",
    "largeFileWarning": "Diese Datei ist {{size}} groß. Sie wird von der Quelle gestreamt, sodass nur die sichtbaren Teile gelesen werden.",
    "streamHint": "Diese Datei ist {{size}} groß. „Hinzufügen“ kopiert sie in den Arbeitsspeicher; „Streamen“ liest nur die sichtbaren Teile.",
    "tooLargeToOpen": "Diese Datei ist {{size}} groß — zu groß, um sie im Browser zu öffnen (Limit {{limit}}). Laden Sie sie herunter oder verwenden Sie eine partitionierte Version dieses Datensatzes."
  },
  "huggingFace": {
    "browseTab": "Durchsuchen",
    "uploadTab": "Hochladen",
    "settingsTab": "Einstellungen",
    "hint": "Durchsuchen Sie Hugging Face nach Dataset-Repos oder geben Sie einen Kontonamen oder eine owner/dataset-ID ein.",
    "searchPlaceholder": "Datasets, Konto oder owner/dataset suchen",
    "search": "Suchen",
    "searching": "Wird gesucht…",
    "loadError": "Hugging Face konnte nicht erreicht werden: {{message}}. Bitte versuchen Sie es erneut.",
    "noResults": "Keine passenden Datasets.",
    "retry": "Erneut versuchen",
    "suggestions": "Vorgeschlagene Datasets",
    "showing_one": "{{count}} Dataset.",
    "showing_other": "{{count}} Datasets.",
    "browseOwner": "Alle Datasets von {{owner}} durchsuchen",
    "back": "Zurück",
    "private": "Privat",
    "gated": "Zugangsbeschränkt",
    "privateHint": "Dieses Dataset ist privat oder zugangsbeschränkt. Seine Dateien erfordern eine authentifizierte Anfrage, die eine Kartenquelle nicht stellen kann, daher können sie hier weder hinzugefügt noch heruntergeladen werden.",
    "stats": "{{likes}} Likes · {{downloads}} Downloads",
    "noFiles": "Keine Dateien in diesem Ordner.",
    "loadingFiles": "Dateien werden geladen…",
    "loadMore": "Mehr laden",
    "parent": "Eine Ebene höher",
    "add": "Hinzufügen",
    "adding": "Wird hinzugefügt…",
    "stream": "Streamen",
    "streaming": "Wird gestreamt",
    "remove": "Entfernen",
    "download": "Herunterladen",
    "copyUrl": "URL kopieren",
    "copied": "Kopiert",
    "openDataset": "Auf Hugging Face öffnen",
    "addTitle": "Diese Datei zur Karte hinzufügen",
    "streamTitle": "Fragen Sie diese Datei an ihrem Speicherort ab und lesen Sie nur die sichtbaren Teile. Die gesamte Datei wird nie in DuckDB kopiert — ideal für große Dateien.",
    "removeTitle": "Diese Datei aus der Karte entfernen",
    "downloadTitle": "Diese Datei herunterladen",
    "copyUrlTitle": "Die URL dieser Datei kopieren",
    "openDatasetTitle": "Die Seite dieses Datasets auf huggingface.co öffnen",
    "unsupportedTitle": "GeoLibre kann dieses Format nicht darstellen — laden Sie es stattdessen herunter",
    "addError": "Diese Datei konnte nicht hinzugefügt werden: {{message}}",
    "notRasterIndex": "Diese JSON-Datei indiziert keine Raster, es gibt also nichts, was auf die Karte gelegt werden könnte. MosaicJSON und STAC-Collections werden unterstützt.",
    "largeFileWarning": "Diese Datei ist {{size}} groß. Sie wird von der Quelle gestreamt, sodass nur die sichtbaren Teile gelesen werden.",
    "streamHint": "Diese Datei ist {{size}} groß. „Hinzufügen“ kopiert sie in den Arbeitsspeicher; „Streamen“ liest nur die sichtbaren Teile.",
    "tooLargeToOpen": "Diese Datei ist {{size}} groß — zu groß, um sie im Browser zu öffnen (Limit {{limit}}). Laden Sie sie herunter oder verwenden Sie eine partitionierte Version dieses Datensatzes.",
    "tokenLabel": "Zugriffstoken",
    "tokenHint": "Zum Erstellen eines Dataset-Repos und Hochladen von Dateien wird ein Hugging-Face-Zugriffstoken mit Schreibzugriff benötigt. Es wird nur in diesem Browser gespeichert und ausschließlich an huggingface.co gesendet.",
    "tokenPlaceholder": "hf_…",
    "tokenSave": "Token speichern",
    "tokenClear": "Leeren",
    "tokenHelp": "Token abrufen",
    "tokenChecking": "Token wird geprüft…",
    "tokenError": "Dieses Token konnte nicht überprüft werden: {{message}}",
    "signedInAs": "Angemeldet als {{name}}",
    "readOnlyToken": "Dieses Token ist schreibgeschützt. Erstellen Sie zum Hochladen ein Token mit Schreibzugriff.",
    "createHeading": "Ein Dataset-Repo erstellen",
    "ownerLabel": "Eigentümer",
    "datasetNameLabel": "Dataset-Name",
    "datasetNamePlaceholder": "my-geodata",
    "privateLabel": "Privat",
    "create": "Erstellen",
    "creating": "Wird erstellt…",
    "createdRepo": "{{repoId}} erstellt.",
    "createError": "Dieses Dataset konnte nicht erstellt werden: {{message}}",
    "uploadHeading": "Dateien hochladen",
    "targetLabel": "Dataset",
    "targetPlaceholder": "owner/dataset",
    "folderLabel": "Ordner (optional)",
    "folderPlaceholder": "data/",
    "chooseFiles": "Dateien auswählen",
    "chooseLayer": "Ebene auswählen",
    "chooseLayerTitle": "Die Objekte einer Kartenebene als GeoJSON-Datei hochladen",
    "layerPickerHeading": "Eine Ebene als GeoJSON hochladen",
    "layerFeatures_one": "{{count}} Objekt",
    "layerFeatures_other": "{{count}} Objekte",
    "layerOriginalFile": "Originaldatei",
    "layerUnavailable": "{{name}} steht nicht mehr zum Hochladen zur Verfügung.",
    "remoteRasterNote": "Aus einer URL geladene Raster werden nicht aufgeführt: Ihre Daten liegen nicht im Browser, und sie haben bereits einen Link, den Sie teilen können. Nur lokal geöffnete Dateien können hochgeladen werden.",
    "noUploadableLayers": "Keine Ebene auf der Karte enthält Objekte, die hochgeladen werden können. Fügen Sie zuerst eine Vektorebene hinzu.",
    "clearSelection": "Leeren",
    "selectedFiles_one": "{{count}} Datei ausgewählt ({{size}}).",
    "selectedFiles_other": "{{count}} Dateien ausgewählt ({{size}}).",
    "commitMessageLabel": "Commit-Nachricht (optional)",
    "commitMessagePlaceholder": "Mit GeoLibre hochgeladen",
    "upload": "Hochladen",
    "uploadPreparing": "Upload wird vorbereitet…",
    "uploadHashing": "{{name}} wird gehasht ({{index}}/{{total}})…",
    "uploadSending": "{{name}} wird hochgeladen ({{index}}/{{total}})…",
    "uploadCommitting": "Wird committet…",
    "uploadDone_one": "{{count}} Datei hochgeladen.",
    "uploadDone_other": "{{count}} Dateien hochgeladen.",
    "uploadError": "Upload fehlgeschlagen: {{message}}",
    "fileTooLarge": "{{name}} ist größer als das Upload-Limit von {{limit}}.",
    "selectionTooLarge": "Die ausgewählten Dateien ergeben zusammen {{size}} und liegen damit über dem Limit von {{limit}} für einen Upload. Laden Sie sie in kleineren Paketen hoch.",
    "openUploaded": "Das Dataset öffnen",
    "rgbHeading": "Mehrkanalige Bilddaten",
    "rgbHint": "Welche Kanäle zu Rot, Grün und Blau werden, wenn ein Bild drei oder mehr davon hat. Zählung ab 1; das Stil-Panel kann jede Ebene danach weiterhin ändern.",
    "bandR": "Rot",
    "bandG": "Grün",
    "bandB": "Blau",
    "colormapHeading": "Einkanalige Bilddaten",
    "colormapHint": "Das Farbschema, das angewendet wird, wenn ein Bild einen Kanal hat.",
    "colormapLabel": "Farbschema",
    "engineHeading": "Rendering-Engine",
    "engineHint": "Welcher Renderer die Bilddaten dekodiert. Anders als die Einstellungen darüber gilt dies nicht pro Ebene: Es betrifft jedes Raster auf der Karte, auch bereits hinzugefügte.",
    "engineLabel": "Engine",
    "engineAuto": "Unverändert lassen",
    "engineGpu": "GPU (deck.gl)",
    "engineWasm": "WebAssembly-Tiler",
    "engineTitiler": "TiTiler-Server",
    "resetDefaults": "Auf Standard zurücksetzen"
  },
  "basemaps": {
    "confirmStyleReplace_one": "Der Wechsel zu „{{name}}“ ersetzt den gesamten Kartenstil und entfernt die von Ihnen hinzugefügte gestapelte Basiskarte. Fortfahren?",
    "confirmStyleReplace_other": "Der Wechsel zu „{{name}}“ ersetzt den gesamten Kartenstil und entfernt die {{count}} von Ihnen hinzugefügten gestapelten Basiskarten. Fortfahren?"
  },
  "annotations": {
    "toolbar": "Anmerkungswerkzeuge",
    "layerName": "Anmerkungen",
    "elementsPanelTitle": "Elemente",
    "tools": {
      "text": "Text",
      "arrow": "Pfeil",
      "rectangle": "Rechteck-Hervorhebung",
      "ellipse": "Ellipse-Hervorhebung",
      "freehand": "Freihand-Hervorhebung",
      "pin": "Pin-Markierung",
      "sticky_note": "Notizzettel",
      "placed_image": "Platziertes Bild"
    },
    "color": "Anmerkungsfarbe",
    "width": "Linienstärke",
    "widthOptions": {
      "thin": "Dünn",
      "medium": "Mittel",
      "thick": "Dick"
    },
    "deleteLast": "Letzte Anmerkung löschen",
    "clearAll": "Alle Anmerkungen löschen",
    "textPlaceholder": "Beschriftung eingeben, mit Enter platzieren",
    "pinTitlePrompt": "Titel",
    "pinDescPrompt": "Beschreibung",
    "stickyNotePrompt": "Notizinhalt",
    "imageUrlPrompt": "Bild-URL",
    "cancel": "Abbrechen",
    "saveElement": "Element speichern",
    "atPoint": "Am Punkt",
    "pinnedToExtent": "An Ausdehnung geheftet"
  },
  "pythonConsole": {
    "title": "Python-Konsole",
    "resize": "Größe der Python-Konsole ändern",
    "clear": "Ausgabe löschen",
    "collapse": "Python-Konsole einklappen",
    "expand": "Python-Konsole ausklappen",
    "close": "Python-Konsole schließen",
    "run": "Ausführen",
    "runHint": "Ausführen (Strg/Cmd+Enter)",
    "completions": "Vervollständigungen",
    "placeholder": "Python hier eingeben · Strg/Cmd+Enter zum Ausführen · Tab zum Autovervollständigen · ↑/↓ für Verlauf",
    "intro": "Python-Konsole bereit. Verwenden Sie das Objekt `geolibre`, um die Karte zu skripten, z. B. geolibre.get_center(). Tab vervollständigt automatisch, ↑/↓ ruft vorherige Befehle ab, und `await geolibre.load_package(\"numpy\")` fügt Pakete hinzu.",
    "loadFailed": "Die Python-Laufzeitumgebung konnte nicht geladen werden.",
    "showEditor": "Editor anzeigen",
    "hideEditor": "Editor ausblenden",
    "resizeEditor": "Größe des Editors ändern",
    "fileNew": "Neues Skript",
    "fileOpen": "Skript öffnen…",
    "fileSave": "Skript speichern (Strg/Cmd+S)",
    "fileSaveAs": "Skript speichern unter…",
    "clearEditor": "Editor leeren",
    "runScript": "Skript oder Auswahl ausführen (Strg/Cmd+Enter)",
    "untitled": "unbenannt.py",
    "discardChanges": "Nicht gespeicherte Änderungen am aktuellen Skript verwerfen?",
    "editorPlaceholder": "Schreiben Sie hier ein mehrzeiliges Python-Skript. Strg/Cmd+Enter führt es (oder die Auswahl) in der Konsole aus; Tab rückt ein; Strg+Leertaste vervollständigt automatisch."
  },
  "notebook": {
    "title": "Notebook",
    "resize": "Größe des Notebook-Panels ändern",
    "collapse": "Notebook einklappen",
    "expand": "Notebook ausklappen",
    "close": "Notebook schließen",
    "copyServerUrl": "Server-URL für externe Clients kopieren (VS Code…)",
    "serverUrlCopied": "Server-URL kopiert",
    "loading": "Notebook wird geladen…",
    "loadFailed": "Das Notebook konnte nicht geladen werden."
  },
  "dashboard": {
    "title": "Dashboard",
    "resize": "Größe des Dashboard-Panels ändern",
    "collapse": "Dashboard einklappen",
    "expand": "Dashboard ausklappen",
    "close": "Dashboard schließen",
    "columns": "Spalten",
    "addWidget": "Widget hinzufügen",
    "widgetCount_one": "{{count}} Widget",
    "widgetCount_other": "{{count}} Widgets",
    "empty": "Noch keine Widgets. Fügen Sie ein Diagramm hinzu, um eine Ebene zusammenzufassen.",
    "emptyNoLayers": "Keine kompatiblen Ebenen gefunden. Fügen Sie über das Menü „Daten hinzufügen“ oben eine Vektor- oder DuckDB-Abfrageebene zu Ihrem Projekt hinzu und kehren Sie dann hierher zurück, um mit dem Erstellen von Diagrammen zu beginnen.",
    "noLayersHint": "Fügen Sie zuerst eine Vektor- oder DuckDB-Abfrageebene hinzu.",
    "layerMissing": "Ebene nicht verfügbar",
    "noData": "Diese Ebene hat keine für Diagramme geeigneten Attribute.",
    "selectorMatches_one": "{{count}} von {{total}} Feature",
    "selectorMatches_other": "{{count}} von {{total}} Features",
    "selectorClear": "Leeren",
    "moveBack": "Nach hinten verschieben",
    "moveForward": "Nach vorne verschieben",
    "editWidget": "Widget bearbeiten",
    "removeWidget": "Widget entfernen",
    "chartType": {
      "histogram": "Histogramm",
      "scatter": "Streudiagramm",
      "bar": "Balken",
      "line": "Linie",
      "box": "Boxplot",
      "pie": "Kreisdiagramm",
      "indicator": "Kennzahl",
      "selector": "Auswahl",
      "list": "Liste"
    },
    "aggregate": {
      "count": "Anzahl",
      "sum": "Summe",
      "mean": "Durchschnitt"
    },
    "chart": {
      "emptyNumeric": "Keine numerischen Werte zum Darstellen.",
      "emptyScatter": "Keine Zeile hat für beide Felder einen numerischen Wert.",
      "emptyBar": "Keine Zeilen zum Gruppieren.",
      "emptyPie": "Keine positiven Werte zum Darstellen.",
      "pieCaptionCount_one": "Zeilenanzahl · {{count}} Kategorie",
      "pieCaptionCount_other": "Zeilenanzahl · {{count}} Kategorien",
      "pieCaptionSum_one": "Summe · {{count}} Kategorie",
      "pieCaptionSum_other": "Summe · {{count}} Kategorien"
    },
    "editor": {
      "addTitle": "Widget hinzufügen",
      "editTitle": "Widget bearbeiten",
      "description": "Wählen Sie eine Ebene, einen Diagrammtyp und die darzustellenden Felder.",
      "noLayers": "Keine für Diagramme geeigneten Ebenen. Fügen Sie zuerst eine Vektor- oder DuckDB-Abfrageebene hinzu.",
      "noFields": "Diese Ebene hat keine numerischen oder kategorialen Felder für Diagramme.",
      "layer": "Ebene",
      "chartType": "Diagrammtyp",
      "field": "Feld",
      "bins": "Klassen",
      "xAxis": "X-Achse",
      "yAxis": "Y-Achse",
      "category": "Kategorie",
      "aggregate": "Aggregation",
      "value": "Wert",
      "prefix": "Präfix",
      "suffix": "Suffix",
      "multiSelect": "Mehrfachauswahl zulassen",
      "listColumns": "Spalten",
      "sortBy": "Sortieren nach",
      "sortDir": "Richtung",
      "ascending": "Aufsteigend",
      "descending": "Absteigend",
      "limit": "Zeilenlimit",
      "titleLabel": "Titel",
      "titlePlaceholder": "Optionaler Titel",
      "color": "Farbe",
      "colorReset": "Zurücksetzen",
      "colorDefault": "Standard-Diagrammfarben",
      "cancel": "Abbrechen",
      "save": "Speichern"
    },
    "indicatorAggregation": {
      "count": "Anzahl",
      "sum": "Summe",
      "mean": "Durchschnitt",
      "min": "Minimum",
      "max": "Maximum",
      "median": "Median"
    }
  },
  "assistant": {
    "title": "KI-Assistent",
    "resize": "Größe des Assistenten-Panels ändern",
    "clear": "Unterhaltung löschen",
    "close": "Assistenten schließen",
    "send": "Senden",
    "sendHint": "Senden (Strg/Cmd+Enter)",
    "stop": "Stopp",
    "placeholder": "Stellen Sie eine Frage zu Ihren Daten, z. B. „Länder mit über 50 Millionen Einwohnern anzeigen“ · Strg/Cmd+Enter zum Senden",
    "intro": "Chatten Sie mit Ihren Daten. Ich kann räumliches SQL ausführen, Ebenen hinzufügen oder entfernen, sie neu stilisieren und die Karte bewegen — jede Änderung ist rückgängig zu machen. Probieren Sie „Länder nach Bevölkerung mit einer abgestuften roten Farbskala einfärben“.",
    "setupTitle": "KI-Assistent einrichten",
    "setupStatus": "Der Assistent benötigt einen KI-Anbieter für die eigentliche Verarbeitung. Fügen Sie unten Zugangsdaten für einen beliebigen Anbieter hinzu, und das Panel wechselt sofort nach dem Speichern in den Chat-Modus.",
    "setupProviders": "Zugangsdaten für einen beliebigen Anbieter hinzufügen",
    "setupOpenSettings": "Einstellungen → KI-Anbieter öffnen",
    "thinking": "Arbeitet…",
    "toolError": "fehlgeschlagen",
    "provider": "LLM-Anbieter",
    "profile": "KI-Profil",
    "deploymentProxy": "Deployment-Proxy",
    "model": "Modell",
    "codeApprovalTitle": "Assistenten-Code ausführen?",
    "codeApprovalBody": "Der Assistent möchte {{language}}-Code in der App ausführen. Prüfen Sie ihn zuerst — er kann die Karte verändern und auf App-Daten zugreifen.",
    "codeApprovalAlways": "Assistenten-Code für den Rest dieser Sitzung zulassen",
    "codeApprovalRun": "Ausführen",
    "codeApprovalDecline": "Abbrechen"
  },
  "storymap": {
    "title": "Story Map",
    "description": "Erstellen Sie eine scrollgesteuerte Story aus Kartenkapiteln. Jedes Kapitel erfasst eine Kameraansicht und einen Text.",
    "chapters": "Kapitel ({{count}})",
    "addChapter": "Kapitel hinzufügen",
    "empty": "Noch keine Kapitel. Navigieren Sie auf der Karte und fügen Sie dann ein Kapitel hinzu, um die aktuelle Ansicht zu erfassen.",
    "defaultChapterTitle": "Kapitel {{index}}",
    "untitledChapter": "Unbenanntes Kapitel",
    "present": "Präsentieren",
    "exportHtml": "HTML exportieren",
    "exitPresentation": "Beenden",
    "preview": "Zu diesem Kapitel fliegen",
    "captureView": "Auf aktuelle Ansicht setzen",
    "composeOnMap": "Auf der Karte zusammenstellen",
    "resizeDialog": "Dialog Größe ändern",
    "composeMode": {
      "title": "Kapitel wird erstellt",
      "hint": "Verschieben, zoomen und neigen Sie die Karte und speichern Sie dann die Ansicht für dieses Kapitel.",
      "save": "Ansicht speichern und zur Story Map zurückkehren",
      "cancel": "Abbrechen",
      "waiting": "Warten, bis die Karte die Bewegung abgeschlossen hat"
    },
    "moveUp": "Nach oben verschieben",
    "moveDown": "Nach unten verschieben",
    "onEnter": "Beim Betreten",
    "onExit": "Beim Verlassen",
    "addEffect": "Ebeneneffekt hinzufügen",
    "field": {
      "title": "Titel",
      "subtitle": "Untertitel",
      "byline": "Autorenzeile",
      "footer": "Fußzeile",
      "theme": "Panel-Design",
      "showMarkers": "Marker anzeigen",
      "markerColor": "Markerfarbe",
      "inset": "Minikarte einblenden",
      "hideChapterNav": "Kapitelliste ausblenden",
      "startView": "Startansicht aktivieren",
      "closingSlide": "Abschlussfolie aktivieren",
      "chapterTitle": "Kapiteltitel",
      "description": "Beschreibung (HTML erlaubt)",
      "image": "Bild-URL",
      "alignment": "Panel-Ausrichtung",
      "animation": "Kartenanimation",
      "hidden": "Panel ausblenden",
      "rotate": "Kamera drehen",
      "imagePlaceholder": "https://example.com/image.jpg"
    },
    "theme": {
      "dark": "Dunkel",
      "light": "Hell"
    },
    "align": {
      "left": "Links",
      "center": "Mitte",
      "right": "Rechts",
      "full": "Vollständig"
    },
    "inset": {
      "topLeft": "Oben links",
      "topRight": "Oben rechts",
      "bottomLeft": "Unten links",
      "bottomRight": "Unten rechts"
    },
    "slide": {
      "blank": "Leerer Bildschirm",
      "black": "Schwarzer Bildschirm",
      "global": "Globale Ansicht",
      "startAdjacent": "Vorschau des ersten Kapitels",
      "endAdjacent": "Beim letzten Kapitel verweilen"
    },
    "loadSample": "Beispiel-Story laden",
    "htmlFile": "HTML",
    "handout": {
      "button": "Handout (PDF)",
      "title": "PDF-Handout-Generator",
      "description": "Ausgewählte Kapitelansichten als mehrseitiges PDF-Handout exportieren.",
      "screens": "Bildschirme ({{count}}/{{total}})",
      "selectAll": "Alle auswählen",
      "selectNone": "Keine auswählen",
      "paperSize": "Papierformat",
      "orientation": "Ausrichtung",
      "portrait": "Hochformat",
      "landscape": "Querformat",
      "documentTitle": "Dokumenttitel",
      "documentTitlePlaceholder": "Titel, der oben auf jeder Seite angezeigt wird",
      "subtitle": "Untertitel",
      "subtitlePlaceholder": "Untertitel, der unter dem Titel auf jeder Seite angezeigt wird",
      "byline": "Autorenzeile",
      "bylinePlaceholder": "Autor oder Nennung",
      "footerText": "Fußzeilentext",
      "footerPlaceholder": "Fußzeile, die unten auf jeder Seite angezeigt wird",
      "startSlide": "Startfolie",
      "endSlide": "Abschlussfolie",
      "generate": "PDF erstellen",
      "stop": "Stopp",
      "cancelled": "Export abgebrochen.",
      "progress": "Ansicht {{current}} von {{total}} wird erfasst…",
      "pdfFile": "PDF-Dokument",
      "noMap": "Die Karte ist noch nicht bereit. Versuchen Sie es gleich noch einmal.",
      "noneSelected": "Wählen Sie mindestens einen Bildschirm zum Export aus."
    },
    "opacityLabel": "Deckkraft",
    "toggleNav": "Kapitelliste ein-/ausblenden",
    "chapterNav": "Story-Kapitel",
    "durationLabel": "Übergang (ms)",
    "dragHint": "Ziehen zum Verschieben (Doppelklick zum Zurücksetzen)",
    "resizeHint": "Ziehen zum Ändern der Größe",
    "import": "Importieren",
    "importJson": "JSON importieren…",
    "importCsv": "CSV importieren…",
    "exportData": "Exportieren",
    "exportJson": "JSON exportieren",
    "exportCsv": "CSV exportieren",
    "reset": "Zurücksetzen",
    "resetTitle": "Story löschen und neu beginnen",
    "resetConfirm": "Diese Story Map löschen? Alle Kapitel und Einstellungen werden entfernt, damit Sie eine eigene Story beginnen können."
  },
  "network": {
    "title": "Netzwerkanalyse",
    "description": "Isochronen, Einzugsgebiete und Quelle-Ziel-Kostenmatrizen aus Ihren Punktebenen.",
    "heading": "Netzwerk",
    "run": "Ausführen",
    "outputPlaceholder": "Die Ausgabe wird hier angezeigt.",
    "endpointNotice": "Punktkoordinaten werden an den Routing-Server ({{endpoint}}) gesendet. Standardmäßig wird ein gemeinsam genutzter öffentlicher Valhalla-Server (FOSSGIS) verwendet, der ratenbegrenzt ist. Geben Sie bei intensiver Nutzung die URL Ihres eigenen Servers im Feld „Routing-Server (Valhalla)“ oben ein."
  },
  "statistics": {
    "title": "Räumliche Statistik",
    "description": "Räumliche Autokorrelation, Hotspot-Analyse und Dichtemaße. Jedes Werkzeug läuft clientseitig auf Ihren GeoJSON-Ebenen.",
    "heading": "Räumliche Statistik",
    "run": "Ausführen",
    "requiredFieldLegend": "Kennzeichnet ein Pflichtfeld",
    "outputPlaceholder": "Die Ausgabe wird hier angezeigt."
  },
  "processing": {
    "filePicker": {
      "filePath": "Dateipfad",
      "chooseFile": "Datei auswählen",
      "chooseFilePlaceholder": "Datei auswählen",
      "chooseInputFile": "Eingabedatei auswählen",
      "chooseOutputFile": "Ausgabedatei auswählen"
    },
    "searchTools": "Werkzeuge suchen",
    "refreshCatalog": "Katalog aktualisieren",
    "increaseValue": "Wert erhöhen",
    "decreaseValue": "Wert verringern",
    "distance": {
      "unitLabel": "Entfernungseinheit",
      "units": {
        "degrees": "Grad",
        "meters": "Meter",
        "kilometers": "Kilometer",
        "feet": "Fuß",
        "miles": "Meilen"
      },
      "north": "{{latitude}}°N",
      "south": "{{latitude}}°S",
      "equator": "dem Äquator",
      "geographicNote": "Die ausgewählten Ebenen verwenden ein geografisches CRS (WGS84), daher sind Entfernungen in Grad angegeben. Wählen Sie neben einem Entfernungsfeld eine Einheit, um stattdessen Meter einzugeben, oder projizieren Sie in ein projiziertes CRS um, um exakte Ergebnisse zu erhalten.",
      "converted": "Wird als {{degrees}}° an das Werkzeug übergeben, umgerechnet bei {{latitude}}. Ein Grad variiert je nach Breite und Richtung, daher ist dies ein Näherungswert.",
      "convertedEmpty": "Werte werden bei {{latitude}} in Grad umgerechnet. Ein Grad variiert je nach Breite und Richtung, daher ist dies ein Näherungswert.",
      "notANumber": "Keine Zahl, daher wird der Wert unverändert an das Werkzeug übergeben statt umgerechnet. Verwenden Sie eine einfache Dezimalzahl wie 12000 oder 1.5."
    },
    "history": {
      "title": "Verarbeitungsverlauf",
      "description": "Jeder Verarbeitungslauf in diesem Projekt, neueste zuerst. Führen Sie ein Werkzeug erneut aus, öffnen Sie es mit denselben Parametern erneut oder kopieren Sie den Lauf als JSON oder Python.",
      "empty": "Noch keine Verarbeitungsläufe aufgezeichnet. Führen Sie ein Werkzeug aus dem Verarbeitungsmenü aus, und es erscheint hier.",
      "rerun": "Erneut ausführen",
      "editRerun": "Bearbeiten & erneut ausführen",
      "copyJson": "JSON kopieren",
      "copyPython": "Python kopieren",
      "copied": "Kopiert",
      "clear": "Verlauf löschen",
      "count_one": "{{count}} Lauf aufgezeichnet",
      "count_other": "{{count}} Läufe aufgezeichnet",
      "toolUnavailable": "Werkzeug „{{toolId}}“ ist nicht mehr verfügbar"
    },
    "modelBuilder": {
      "moveStepUp": "Schritt nach oben verschieben",
      "moveStepDown": "Schritt nach unten verschieben",
      "removeStep": "Schritt entfernen",
      "title": "Stapel & Modelle",
      "description": "Führen Sie ein Vektorwerkzeug über viele Ebenen aus oder verketten Sie Werkzeuge zu einem wiederverwendbaren, mit Ihrem Projekt gespeicherten Modell.",
      "tabBatch": "Stapel",
      "tabModels": "Modelle",
      "outputPlaceholder": "Die Ausgabe erscheint hier.",
      "tool": "Werkzeug",
      "sharedParameters": "Gemeinsame Parameter",
      "noExtraParameters": "Dieses Werkzeug hat keine zusätzlichen Parameter.",
      "inputLayers": "Eingabeebenen",
      "selectAll": "Alle auswählen",
      "clearSelection": "Leeren",
      "noCompatibleLayers": "Keine kompatiblen GeoJSON-Ebenen.",
      "newModel": "Neues Modell",
      "noSavedModels": "Noch keine gespeicherten Modelle.",
      "untitledModel": "Unbenanntes Modell",
      "modelName": "Modellname",
      "emptyPipelineHint": "Fügen Sie einen Schritt hinzu, um die Pipeline aufzubauen. Der erste Schritt liest eine Eingabeebene; jeder weitere Schritt erhält die Ausgabe des vorherigen Schritts.",
      "addStep": "Schritt hinzufügen",
      "runModel": "Modell ausführen",
      "deleteModel": "Löschen",
      "inputPreviousStep": "Eingabe: ← Ausgabe des vorherigen Schritts",
      "unknownTool": "Unbekanntes Werkzeug „{{id}}“",
      "noParameters": "Keine Parameter."
    },
    "parameterField": {
      "selectLayer": "Ebene auswählen …",
      "selectField": "Feld auswählen …",
      "selectLayerFirst": "Zuerst eine Ebene auswählen"
    },
    "whitebox": {
      "run": "Ausführen",
      "running": "Wird ausgeführt…",
      "runLocal": "Lokal ausführen (WASM)",
      "runLocalHint": "Lokal in WebAssembly ausführen (kein Python-Sidecar)",
      "runningLocally": "Wird lokal mit WebAssembly ausgeführt. Kein Sidecar erforderlich.",
      "copyLink": "Link kopieren",
      "copyLinkCopied": "Kopiert!",
      "copyLinkHint": "Einen teilbaren Link kopieren, der dieses Werkzeug mit den aktuellen Einstellungen öffnet",
      "copyLinkFailed": "Der Link konnte nicht in die Zwischenablage kopiert werden.",
      "catalogSnapshotError": "Der Whitebox-Katalog-Snapshot konnte nicht geladen werden.",
      "localRunnerError": "Der lokale (WASM-)Werkzeug-Runner konnte nicht geladen werden. Aktualisieren Sie die Seite und versuchen Sie es erneut, oder verwenden Sie den Sidecar, falls verfügbar.",
      "output": {
        "geojson": "GeoJSON (zur Karte hinzufügen)",
        "geoparquet": "GeoParquet (herunterladen, CRS bleibt erhalten)",
        "flatgeobuf": "FlatGeobuf (herunterladen, CRS bleibt erhalten)",
        "shapefile": "Shapefile (herunterladen, CRS bleibt erhalten)",
        "projectedHint": "In Ihren Downloads im Ziel-CRS gespeichert. Die Karte zeigt nur EPSG:4326 an, daher wird ein projiziertes Ergebnis nicht als Ebene hinzugefügt."
      },
      "filterBySource": "Nach Quelle filtern",
      "allSources": "Alle Quellen",
      "geolibreTools": "GeoLibre-Werkzeuge",
      "whiteboxTools": "Whitebox-Werkzeuge",
      "toolbox": "Whitebox-Werkzeugkasten",
      "checkingRuntime": "Laufzeitumgebung wird geprüft.",
      "toolsAvailable_one": "{{count}} Werkzeug verfügbar.",
      "toolsAvailable_other": "{{count}} Werkzeuge verfügbar.",
      "runtimeUnavailable": "Die Whitebox-Laufzeitumgebung ist nicht verfügbar.",
      "useMapExtent": "Kartenausdehnung verwenden",
      "fromLayer": "Aus Ebene",
      "drawBbox": "Auf Karte zeichnen",
      "drawingBbox": "Wird gezeichnet…",
      "drawBboxHint": "Ziehen Sie ein Rechteck auf der Karte, um den Begrenzungsrahmen festzulegen. Drücken Sie Esc zum Abbrechen.",
      "mapExtentPlaceholder": "minX,minY,maxX,maxY",
      "mapExtentUnavailable": "Die Kartenansicht ist noch nicht verfügbar. Warten Sie, bis die Karte geladen ist, und versuchen Sie es erneut.",
      "mapExtentInvalid": "Die aktuelle Kartenansicht kann nicht als Begrenzungsrahmen verwendet werden: Sie überschreitet den 180°-Meridian oder reicht über gültige Längen-/Breitengrenzen hinaus. Passen Sie die Ansicht an und versuchen Sie es erneut.",
      "extentLabel": "Untersuchungsgebiet",
      "extentNorth": "Nord",
      "extentSouth": "Süd",
      "extentWest": "West",
      "extentEast": "Ost",
      "extentHint": "Übernehmen Sie das Rechteck aus der aktuellen Kartenansicht oder ziehen Sie eines auf der Karte auf, statt jede Grenze einzutippen. Die Koordinaten werden als WGS84 (EPSG:4326) eingetragen.",
      "noToolSelected": "Kein Werkzeug ausgewählt",
      "optionDefault": "Standard",
      "optionPath": "Pfad",
      "selectedLayer": "Ausgewählte Ebene",
      "filePath": "Dateipfad",
      "auto": "Automatisch",
      "chooseOutputPath": "Ausgabepfad wählen",
      "chooseInputPath": "Eingabepfad wählen",
      "categoryGeneral": "Allgemein",
      "categoryAll": "Alle ({{total}})",
      "errorLoadSnapshot": "Whitebox-Katalog-Snapshot konnte nicht geladen werden.",
      "errorLoadLive": "Live-Katalog konnte nicht geladen werden.",
      "errorConnect": "Verbindung zum Sidecar nicht möglich.",
      "errorPoll": "Auftrag konnte nicht abgefragt werden.",
      "errorStartTool": "Whitebox-Werkzeug konnte nicht gestartet werden.",
      "errorStartSidecar": "GeoLibre-Sidecar konnte nicht gestartet werden.",
      "errorStopSidecar": "GeoLibre-Sidecar konnte nicht gestoppt werden.",
      "noToolsFound": "Keine Werkzeuge gefunden.",
      "noParameters": "Dieses Werkzeug hat keine Parameter.",
      "noOutput": "Noch keine Ausgabe.",
      "enabled": "Aktiviert",
      "requiredSuffix": " | erforderlich",
      "selectField": "Feld auswählen",
      "fieldName": "Feldname",
      "crs": {
        "browse": "Durchsuchen",
        "codePlaceholder": "EPSG-Code",
        "searchLabel": "Koordinatenreferenzsysteme durchsuchen",
        "searchPlaceholder": "Nach Name oder EPSG-Code suchen",
        "geographic": "Geografisch",
        "projected": "Projiziert",
        "noResults": "Kein passendes Koordinatensystem. Jeder EPSG-Code kann dennoch eingegeben werden."
      },
      "vectorUnitsNote": "Vektorebenen werden als WGS84 gelesen, daher sind Entfernungs-, Abstands- und Toleranzwerte in Grad angegeben, nicht in Metern. 1° entspricht etwa 111 km und 0,001° etwa 111 m."
    },
    "sidecar": {
      "unavailableTitle": "Der Verarbeitungsserver ist nicht verfügbar.",
      "showHelp": "Anzeigen, was das bedeutet und wie es behoben werden kann",
      "hideHelp": "Details ausblenden",
      "intro": "Der Verarbeitungsserver ist ein optionaler lokaler Helfer ({{sidecarUrl}}), der ressourcenintensivere, Python-basierte Werkzeuge im Hintergrund ausführt, getrennt von der App. Die meisten Whitebox-Werkzeuge benötigen ihn nicht: Sie können vollständig in Ihrem Browser mit WebAssembly ausgeführt werden.",
      "wasmTipTitle": "Ohne Server ausführen",
      "wasmTip": "Aktivieren Sie „Lokal ausführen (WASM)“, um Whitebox-Werkzeuge in Ihrem Browser auszuführen. Kein Server, keine Installation oder Einrichtung erforderlich.",
      "runLocallyButton": "Lokal ausführen (WASM)",
      "troubleshootingTitle": "Möchten Sie den Server trotzdem verwenden?",
      "stepStartServerDesktop": "Klicken Sie im Werkzeuglisten-Panel auf „Server starten“, um ihn zu starten, und warten Sie dann einige Sekunden, bis er online ist.",
      "stepStartServerBrowser": "Der Server kann nur über die GeoLibre-Desktop-App gestartet werden. Lassen Sie im Browser stattdessen „Lokal ausführen (WASM)“ aktiviert.",
      "stepCheckPort": "Stellen Sie sicher, dass keine Firewall, kein Virenschutz und keine Netzwerkrichtlinie den lokalen Port {{port}} blockiert.",
      "stepRestart": "Wenn der Server unerwartet gestoppt wurde, starten Sie die GeoLibre-Desktop-App neu und öffnen Sie diesen Dialog erneut."
    },
    "vectorTools": {
      "title": "Vektorwerkzeuge",
      "description": "Führen Sie gängige Vektorgeometrie-Operationen auf Ihren GeoJSON-Ebenen aus.",
      "engine": "Engine",
      "engineClient": "Client (Turf.js)",
      "engineSidecar": "Sidecar (GeoPandas)",
      "enginePyodide": "Python (Pyodide)",
      "checkingSidecar": "Sidecar-Verfügbarkeit wird geprüft...",
      "sidecarUnavailableClient": "Das GeoPandas-Sidecar ist nicht verfügbar. Starten Sie das Sidecar mit dem Vector-Extra oder wechseln Sie zur Client-Engine.",
      "sidecarUnavailablePyodide": "Das GeoPandas-Sidecar ist nicht verfügbar. Starten Sie das Sidecar mit dem Vector-Extra oder wechseln Sie zu Python (Pyodide).",
      "pyodideNote": "Führt GeoPandas in Ihrem Browser aus. Beim ersten Lauf wird die Python-Laufzeit heruntergeladen (einmalig, benötigt eine Internetverbindung).",
      "run": "Ausführen",
      "outputPlaceholder": "Die Ausgabe erscheint hier.",
      "resolutionRange": "Auflösung (0-{{max}})"
    }
  },
  "segmentation": {
    "title": "KI-Segmentierung",
    "description": "Verwandeln Sie Bilddaten mit SAM3 (segment-geospatial) in Vektor-Objekte. Wählen Sie ein GeoTIFF, beschreiben Sie, was segmentiert werden soll, und erhalten Sie Polygone als neue Ebene zurück.",
    "startServer": "Server starten",
    "downloadDesktop": "Desktop-App herunterladen",
    "imageLabel": "Bild (GeoTIFF)",
    "imagePlaceholder": "GeoTIFF auswählen…",
    "chooseImage": "Bild auswählen",
    "modeLabel": "Modus",
    "modeText": "Textaufforderung",
    "modeAutomatic": "Automatisch (alles)",
    "promptLabel": "Aufforderung",
    "promptPlaceholder": "z. B. Bäume, Gebäude, Wasser",
    "confidenceLabel": "Konfidenzschwelle",
    "segment": "Segmentieren",
    "status": {
      "checking": "KI-Segmentierungsdienst wird geprüft…",
      "unavailableDesktop": "Der KI-Segmentierungsdienst läuft noch nicht. Starten Sie den GeoLibre-Server mit aktiviertem segment-geospatial, um ihn zu nutzen.",
      "unavailableWeb": "Die KI-Segmentierung ist im Browser nicht verfügbar. Verwenden Sie die GeoLibre-Desktop-App, um sie auszuführen."
    },
    "error": {
      "chooseImage": "Wählen Sie ein Bild (GeoTIFF) zum Segmentieren aus.",
      "enterPrompt": "Geben Sie eine Textaufforderung ein, z. B. „Bäume“ oder „Gebäude“.",
      "startServer": "Der GeoLibre-Sidecar konnte nicht gestartet werden.",
      "failed": "Segmentierung fehlgeschlagen."
    },
    "noObjects": "Keine Objekte gefunden.",
    "added": "{{count}} Objekt(e) als „{{name}}“ hinzugefügt.",
    "layerName": "Segmentierung: {{prompt}}",
    "layerNameDefault": "Segmentierung",
    "sidecar": {
      "title": "Der KI-Segmentierungsserver konnte nicht gestartet werden.",
      "intro": "Die KI-Segmentierung läuft in einem lokalen Helferserver ({{sidecarUrl}}), der das SAM3-Modell von segment-geospatial bereitstellt. Er führt Python im Hintergrund aus, getrennt von der App, und ist nicht Teil des Browser-Builds.",
      "troubleshootingTitle": "So bringen Sie den Server zum Laufen",
      "stepInstall": "Stellen Sie sicher, dass der GeoLibre-Server mit aktiviertem segment-geospatial-Backend installiert ist, damit das Segmentierungsmodell verfügbar ist.",
      "stepStartServerDesktop": "Klicken Sie oben auf „Server starten“, um ihn zu starten, und warten Sie dann einige Sekunden, bis das Modell online ist."
    }
  },
  "objectDetection": {
    "title": "Objekterkennung",
    "description": "Führen Sie ein nach ONNX exportiertes YOLO-Modell über ein GeoTIFF aus, vollständig im Browser. Erkannte Rechtecke werden georeferenziert, und jede Klasse wird als eigene Ebene hinzugefügt.",
    "hint": "Verwenden Sie ein integriertes COCO-Modell (einmalig heruntergeladen und zwischengespeichert) oder bringen Sie Ihr eigenes YOLOv5/v8/v11-ONNX mit. Die Erkennung läuft lokal im Browser. Integrierte Modelle erkennen Alltagsobjekte; für Luftbilder verwenden Sie Ihr eigenes, auf Luftaufnahmen trainiertes Modell.",
    "imageLabel": "Bild (GeoTIFF)",
    "imagePlaceholder": "GeoTIFF auswählen…",
    "chooseImage": "Bild auswählen",
    "modelLabel": "Modell",
    "modelSourceBuiltin": "Integriert (Download)",
    "modelSourceLocal": "Lokale Datei",
    "builtinModelLabel": "Integriertes Modell",
    "modelFileLabel": "Modelldatei (ONNX)",
    "modelPlaceholder": "Ein .onnx-Modell auswählen…",
    "chooseModel": "Modell auswählen",
    "downloadingModel": "Modell wird heruntergeladen…",
    "classNamesLabel": "Klassennamen (kommagetrennt, optional)",
    "classNamesPlaceholder": "z. B. Auto, Baum, Gebäude",
    "confidenceLabel": "Konfidenz",
    "iouLabel": "IoU (NMS)",
    "inputSizeLabel": "Eingabegröße",
    "detect": "Erkennen",
    "noObjects": "Keine Objekte erkannt. Versuchen Sie, den Konfidenzschwellenwert zu senken.",
    "added": "{{count}} Erkennung(en) über {{classes}} Klasse(n) hinzugefügt.",
    "layerName": "Erkennung: {{class}}",
    "error": {
      "chooseImage": "Wählen Sie ein Bild (GeoTIFF) aus, auf dem die Erkennung ausgeführt werden soll.",
      "photoLocation": "Dieses Foto hat keine verwertbaren GPS-Koordinaten. Wählen Sie ein Foto mit Geotag.",
      "chooseModel": "Wählen Sie ein nach ONNX (.onnx) exportiertes YOLO-Modell aus.",
      "downloadModel": "Das Modell konnte nicht heruntergeladen werden. Überprüfen Sie Ihre Verbindung und versuchen Sie es erneut.",
      "failed": "Erkennung fehlgeschlagen."
    }
  },
  "segmentEverything": {
    "title": "Alles segmentieren",
    "description": "Führen Sie SlimSAM automatisch über ein GeoTIFF aus, vollständig im Browser. Jedes erkannte Objekt wird zu einem georeferenzierten Polygon, das als eine Ebene hinzugefügt wird.",
    "hint": "Über das Bild wird ein Punktgitter abgetastet und mit SlimSAM segmentiert (einmalig heruntergeladen und zwischengespeichert). Keine Klicks oder Labels — dichtere Gitter finden mehr Objekte, dauern aber länger.",
    "imageLabel": "Bild (GeoTIFF)",
    "imagePlaceholder": "GeoTIFF auswählen…",
    "chooseImage": "Bild auswählen",
    "gridLabel": "Gitter",
    "qualityLabel": "Qualität",
    "minSizeLabel": "Min. Größe %",
    "run": "Segmentieren",
    "downloadingModel": "Modell wird heruntergeladen…",
    "progress": "Wird segmentiert… {{done}}/{{total}}",
    "noObjects": "Keine Objekte segmentiert. Versuchen Sie ein dichteres Gitter oder einen niedrigeren Qualitätsschwellenwert.",
    "added": "{{count}} Segment(e) hinzugefügt.",
    "layerName": "Segmente",
    "error": {
      "chooseImage": "Wählen Sie ein Bild (GeoTIFF) zum Segmentieren aus.",
      "downloadModel": "Das Modell konnte nicht heruntergeladen werden. Überprüfen Sie Ihre Verbindung und versuchen Sie es erneut.",
      "failed": "Segmentierung fehlgeschlagen."
    }
  },
  "pluginPanel": {
    "expand": "Panel erweitern",
    "collapse": "Panel einklappen",
    "close": "Panel schließen",
    "resize": "Panel-Größe ändern",
    "moveLeft": "Panel nach links verschieben",
    "moveRight": "Panel nach rechts verschieben",
    "mergeIntoStyleRail": "In die Stil-Leiste einbinden",
    "mergeIntoLayersRail": "In die Ebenen-Leiste einbinden",
    "detach": "Als verschiebbares Panel abtrennen",
    "collapsedLabel": "{{title}} (eingeklappt)"
  },
  "sharedRail": {
    "label": "Seitenleiste",
    "layers": "Ebenen",
    "style": "Stil",
    "expand": "{{title}} erweitern",
    "collapse": "{{title}} einklappen"
  },
  "attributeTable": {
    "title": "Attributtabelle",
    "resize": "Größe der Attributtabelle ändern",
    "editValues": "Attributwerte bearbeiten",
    "editTitleFinishGeometry": "Geometriebearbeitung abschließen, um Attribute zu bearbeiten",
    "editTitleReadOnly": "Bearbeitung ist für Ebenen aus „Vektorebene hinzufügen“ nicht verfügbar",
    "editTitleUseSaveCancel": "Verwenden Sie Speichern oder Abbrechen, um die Bearbeitung abzuschließen",
    "exitEditMode": "Bearbeitungsmodus verlassen",
    "editTitleDuckdb": "Angezeigte DuckDB-Abfrageattribute im Speicher bearbeiten",
    "saveEdits": "Attributänderungen speichern",
    "saveTitleInvalid": "Ungültiges JSON vor dem Speichern korrigieren",
    "saveTitleDuckdb": "DuckDB-Attributänderungen im Speicher speichern",
    "addFieldTitle": "Ein neues Feld hinzufügen",
    "addField": "Feld hinzufügen",
    "fieldCalculatorTitle": "Feldwerte aus einem Ausdruck berechnen",
    "fieldCalculator": "Feldrechner",
    "manageFieldsTitle": "Felder ein- oder ausblenden",
    "manageFields": "Felder verwalten",
    "columnExplorerTitle": "Alle Felder auf einen Blick erkunden",
    "columnExplorerTitleDisabled": "Der Spalten-Explorer erfordert eine Vektor- oder DuckDB-Abfrageebene",
    "columnExplorer": "Spalten-Explorer",
    "statisticsTitle": "Übersicht der Feldstatistik",
    "statisticsTitleDisabled": "Statistiken erfordern eine Vektor- oder DuckDB-Abfrageebene",
    "statistics": "Feldstatistik",
    "chartsTitle": "Numerische Felder als Diagramm darstellen",
    "chartsTitleDisabled": "Diagramme erfordern eine Vektor- oder DuckDB-Abfrageebene",
    "charts": "Diagramme",
    "dashboardTitle": "Dashboard öffnen, um Diagramm-Widgets zu erstellen",
    "dashboard": "Dashboard",
    "exportSelectedLayer": "Ausgewählte Ebene exportieren",
    "exportTitleDisabled": "Export erfordert eine GeoJSON-basierte Ebene",
    "cancelEdits": "Attributänderungen verwerfen",
    "searchPlaceholder": "Attribute durchsuchen...",
    "searchAria": "Attribute durchsuchen",
    "clearSelectedFeature": "Ausgewähltes Objekt löschen",
    "statusFeatures_one": "{{count}} Objekt",
    "statusFeatures_other": "{{count}} Objekte",
    "statusShown_one": "{{count}} angezeigt",
    "statusShown_other": "{{count}} angezeigt",
    "statusSelected_one": "{{count}} ausgewählt",
    "statusSelected_other": "{{count}} ausgewählt",
    "featureViewAria": "Objektansicht",
    "showAllFeatures": "Alle Objekte anzeigen",
    "showSelectedFeatures": "Ausgewählte anzeigen ({{count}})",
    "expand": "Attributtabelle erweitern",
    "collapse": "Attributtabelle einklappen",
    "close": "Attributtabelle schließen",
    "newFieldPlaceholder": "z. B. Kategorie",
    "defaultValuePlaceholder": "Für leer freilassen",
    "newFieldNamePlaceholder": "Neuer Feldname",
    "showFields": "Felder anzeigen",
    "noFields": "Keine Felder",
    "showAllFields": "Alle Felder anzeigen",
    "buttons": {
      "edit": "Bearbeiten",
      "calculate": "Berechnen",
      "fields": "Felder",
      "explore": "Erkunden",
      "statistics": "Statistik",
      "export": "Exportieren"
    },
    "chart": {
      "field": "Feld",
      "xAxis": "X-Achse",
      "yAxis": "Y-Achse",
      "category": "Kategorie",
      "value": "Wert",
      "title": "Diagramme",
      "description": "Felder in „{{layer}}“ visualisieren.",
      "noChartableFields": "Diese Ebene hat keine numerischen oder kategorialen Felder zum Darstellen.",
      "chartType": "Diagrammtyp",
      "typeHistogram": "Histogramm",
      "typeScatter": "Streudiagramm",
      "typeBar": "Balken",
      "typeLine": "Linie",
      "typeBox": "Boxplot",
      "typePie": "Kreis",
      "bins": "Klassen",
      "aggregate": "Aggregat",
      "aggCount": "Anzahl",
      "aggSum": "Summe",
      "aggAverage": "Durchschnitt",
      "download": "Herunterladen",
      "downloadPng": "PNG-Bild",
      "downloadSvg": "SVG-Vektor",
      "exportError": "Das Diagramm konnte nicht exportiert werden."
    },
    "selectedLayerName": "- {{name}}",
    "noLayerSelected": "- Ebene mit Attributen auswählen",
    "zoomToSelection": "Auf Auswahl zoomen",
    "loadingAttributes": "Ebenenattribute werden geladen…",
    "requiresVectorLayer": "Die Attributtabelle erfordert eine Vektor- oder DuckDB-Abfrageebene.",
    "invalidJson": "Ungültiges JSON",
    "editCellAria": "{{col}} für Objekt {{featureId}} bearbeiten",
    "resizeColumn": "Größe der Spalte {{name}} ändern",
    "renameFieldAria": "Feld {{name}} umbenennen",
    "manageFieldTitle": "Feld „{{name}}“ verwalten",
    "manageFieldAria": "Feld {{name}} verwalten",
    "renameField": "Feld umbenennen",
    "hideField": "Feld ausblenden",
    "excludeField": "Feld beim Export ausschließen",
    "includeField": "Feld beim Export einbeziehen",
    "moveLeft": "Nach links verschieben",
    "moveRight": "Nach rechts verschieben",
    "deleteField": "Feld löschen",
    "joinedColumnTitle": "Verknüpfte Spalte, abgeleitet aus einer Verknüpfungstabelle. Bearbeiten Sie stattdessen die Tabelle oder die Verknüpfungsdefinition.",
    "virtualColumnTitle": "Virtuelles Feld, berechnet aus einem Ausdruck. Bearbeiten Sie stattdessen seine Definition im Stilbereich des Layers.",
    "deleteFieldConfirm": "Dadurch wird das Feld „{{field}}“ dauerhaft aus jedem Objekt in „{{layer}}“ entfernt. Darauf verweisende Stile oder Beschriftungen werden gelöscht. Dies kann nicht rückgängig gemacht werden.",
    "addFieldDescription": "Fügen Sie jedem Objekt in „{{layer}}“ ein neues Feld hinzu.",
    "fieldName": "Feldname",
    "fieldExists": "Ein Feld mit dem Namen „{{name}}“ existiert bereits.",
    "fieldType": "Typ",
    "typeText": "Text",
    "typeNumber": "Zahl",
    "typeBoolean": "Boolescher Wert",
    "defaultValue": "Standardwert",
    "noDefault": "(kein Standard)",
    "noFeaturesForField": "Diese Ebene hat keine Objekte, denen ein Feld hinzugefügt werden kann.",
    "calcDescription": "Berechnen Sie Werte aus einem JavaScript-Ausdruck und schreiben Sie sie in ein Feld in „{{layer}}“.",
    "targetField": "Zielfeld",
    "updateField": "Feld aktualisieren",
    "createField": "Feld erstellen",
    "outputType": "Ausgabetyp",
    "outputAuto": "Automatisch (berechneten Typ beibehalten)",
    "expression": "Ausdruck",
    "calcExpressionPlaceholder": "z. B. pop / area, oder upper(name), oder pop > 100 ? \"big\" : \"small\"",
    "fieldsLabel": "Felder:",
    "insertField": "{{name}} einfügen",
    "functionsLabel": "Funktionen:",
    "insertFunction": "{{name}}() einfügen",
    "geomMeasureLabel": "Geometrie:",
    "geomMetric": {
      "length": "Länge",
      "perimeter": "Umfang",
      "area": "Fläche"
    },
    "geomInsert": "Einfügen",
    "sampleRowErrored": "Fehler in der Beispielzeile (andere Zeilen können dennoch berechnet werden): {{message}}",
    "preview": "Vorschau:",
    "onlySelectedFeature": "Nur das ausgewählte Objekt aktualisieren",
    "evaluationFailed": "Auswertung fehlgeschlagen.",
    "invalidExpression": "Ungültiger Ausdruck.",
    "calcCouldNotApply": "Die Berechnung konnte nicht auf diese Ebene angewendet werden.",
    "calcAppliedWithErrors": "Angewendet, aber bei {{errors}} von {{evaluated}} Objekt(en) trat ein Fehler auf; sie wurden als null geschrieben.",
    "exportFailed": "Die ausgewählte Ebene konnte nicht exportiert werden.",
    "saveTitleFormErrors": "Beheben Sie Verstöße im Attributformular vor dem Speichern"
  },
  "styleManager": {
    "title": "Stilverwaltung",
    "description": "Speichern, durchsuchen und wenden Sie wiederverwendbare Stile, Symbole, Beschriftungsvorlagen und Farbverläufe über Ebenen und Projekte hinweg an.",
    "searchPlaceholder": "Stile und Tags durchsuchen…",
    "presetsSection": "Integrierte Vorlagen",
    "librarySection": "Meine Bibliothek",
    "projectSection": "Dieses Projekt",
    "empty": "Keine gespeicherten Stile passen. Speichern Sie den Stil einer Ebene oder importieren Sie eine Bibliothek, um zu beginnen.",
    "apply": "Anwenden",
    "delete": "Löschen",
    "saveCurrent": "Aktuellen Stil speichern…",
    "nameLabel": "Name",
    "kindLabel": "Was gespeichert werden soll",
    "kindStyle": "Vollständiger Stil",
    "kindSymbol": "Nur Symbol",
    "kindLabels": "Nur Beschriftungen",
    "kindRamp": "Nur Farbverlauf",
    "tagsLabel": "Tags",
    "tagsPlaceholder": "Grenze, Basiskarte (kommagetrennt)",
    "scopeLabel": "Speichern in",
    "scopeApp": "Meine Bibliothek (alle Projekte)",
    "scopeProject": "Nur dieses Projekt",
    "saveButton": "Stil speichern",
    "cancel": "Abbrechen",
    "import": "Importieren…",
    "export": "Exportieren…",
    "importFilterName": "Stilbibliothek / QML / SLD",
    "exportFilterName": "GeoLibre-Stilbibliothek",
    "applied": "„{{name}}“ auf {{layer}} angewendet.",
    "appliedRampHint": "„{{name}}“ angewendet. Stellen Sie die Ebene auf abgestufte oder kategorisierte Darstellung um, um den Farbverlauf zu sehen.",
    "saved": "„{{name}}“ in der Bibliothek gespeichert.",
    "deleted": "„{{name}}“ gelöscht.",
    "importedCount_one": "{{count}} Stil importiert.",
    "importedCount_other": "{{count}} Stile importiert.",
    "importedEntryName": "Importierter Stil",
    "importInvalid": "Diese Datei ist keine Stilbibliothek, QML oder SLD.",
    "importNoMatch": "Aus diesem Stil konnte keine Symbolisierung gelesen werden.",
    "exportEmpty": "Es sind keine gespeicherten Stile zum Exportieren vorhanden.",
    "exportFailed": "Die Stilbibliothek konnte nicht exportiert werden.",
    "exportSuccess": "Stilbibliothek exportiert.",
    "noLayer": "Wählen Sie eine Vektorebene aus, um Stile zu speichern oder anzuwenden."
  },
  "style": {
    "panelLabel": "Ebenenstil",
    "panelLabelCollapsed": "Ebenenstil (eingeklappt)",
    "heading": "Stil",
    "headingWithLayer": "Stil - {{name}}",
    "resizePanel": "Größe des Stil-Panels ändern",
    "expand": "Stil einblenden",
    "collapse": "Stil ausblenden",
    "openStyleManager": "Gespeicherte Stile…",
    "addClass": "Klasse hinzufügen",
    "removeClass": "Klasse entfernen",
    "beforeIdSavedUnavailable": "Gespeichert (nicht verfügbar)",
    "raster": {
      "greyscale": "Graustufen",
      "greyscaleHint": "Graustufen-Basiskarte umschalten (setzt die Sättigung auf ihr Minimum)",
      "reset": "Zurücksetzen",
      "resetHint": "Anpassungen auf die Standardwerte zurücksetzen",
      "exactValueHint": "Doppelklicken, um einen genauen Wert einzugeben",
      "opacity": "Deckkraft",
      "brightnessMin": "Helligkeit Min.",
      "brightnessMax": "Helligkeit Max.",
      "saturation": "Sättigung",
      "contrast": "Kontrast",
      "hueRotate": "Farbtondrehung",
      "footerDeck": "Änderungen werden sofort auf die Deckkraft der Rasterebene angewendet.",
      "footerMaplibre": "Änderungen werden sofort auf die MapLibre-Raster-Paint-Eigenschaften angewendet.",
      "valueAria": "{{label}}-Wert",
      "editValueAria": "{{label}}-Wert bearbeiten"
    },
    "visibility": {
      "minZoom": "Min. Zoom",
      "maxZoom": "Max. Zoom",
      "minZoomTooltip": "Zoomstufe, ab der diese Ebene erscheint. Höhere Werte bedeuten stärker herangezoomt.",
      "maxZoomTooltip": "Zoomstufe, ab der diese Ebene verschwindet. Höhere Werte bedeuten stärker herangezoomt."
    },
    "joins": {
      "heading": "Verknüpfungen",
      "empty": "Spalten aus einem anderen Layer oder einer Tabelle über übereinstimmende Schlüsselfelder anhängen. Verknüpfte Spalten aktualisieren sich, wenn sich die Tabelle ändert, und werden mit dem Projekt gespeichert.",
      "addJoin": "Verknüpfung hinzufügen",
      "joinLayer": "Verknüpfungslayer",
      "selectLayer": "Layer auswählen…",
      "joinField": "Verknüpfungsfeld",
      "targetField": "Zielfeld",
      "selectField": "Feld auswählen…",
      "fields": "Zu verknüpfende Felder",
      "fieldCount_one": "{{count}} Feld",
      "fieldCount_other": "{{count}} Felder",
      "prefix": "Feldnamen-Präfix",
      "prefixPlaceholder": "z. B. census_",
      "add": "Hinzufügen",
      "cancel": "Abbrechen",
      "remove": "Verknüpfung entfernen",
      "enabledTitle": "Diese Verknüpfung anwenden",
      "missingLayer": "Verknüpfungslayer nicht gefunden",
      "noCandidates": "Kein anderer Layer hat eine Attributtabelle zum Verknüpfen",
      "statsMatched": "{{matched}} von {{total}} Objekten zugeordnet",
      "statsUnmatchedJoin_one": "{{count}} Tabellenzeile ohne Treffer",
      "statsUnmatchedJoin_other": "{{count}} Tabellenzeilen ohne Treffer"
    },
    "virtualFields": {
      "heading": "Virtuelle Felder",
      "empty": "Ausdrucksbasierte Spalten hinzufügen, die bei jeder Datenänderung neu berechnet werden. Virtuelle Felder werden mit dem Projekt gespeichert und erscheinen überall dort, wo Felder erscheinen: in der Attributtabelle, im Stil, in Beschriftungen und in der Auswahl.",
      "addField": "Virtuelles Feld hinzufügen",
      "name": "Feldname",
      "namePlaceholder": "z. B. density",
      "nameTaken": "Eine Spalte mit diesem Namen existiert bereits",
      "nameConflict": "Nicht angewendet: Der Name kollidiert mit einer vorhandenen Spalte",
      "expression": "Ausdruck",
      "expressionPlaceholder": "[\"/\", [\"get\", \"pop\"], [\"get\", \"area_km2\"]]",
      "expressionTarget": "Ausdruck des virtuellen Felds",
      "openBuilder": "Editor öffnen",
      "invalidExpression": "Ungültiger Ausdruck",
      "add": "Hinzufügen",
      "save": "Speichern",
      "cancel": "Abbrechen",
      "edit": "Virtuelles Feld bearbeiten",
      "remove": "Virtuelles Feld entfernen",
      "enabledTitle": "Dieses virtuelle Feld anwenden",
      "evaluationErrors_one": "{{count}} Objekt konnte nicht ausgewertet werden (leere Zelle)",
      "evaluationErrors_other": "{{count}} Objekte konnten nicht ausgewertet werden (leere Zellen)"
    },
    "labels": {
      "heading": "Beschriftungen",
      "show": "Beschriftungen anzeigen",
      "field": "Beschriftungsfeld",
      "noAttributes": "Keine Attribute gefunden",
      "selectField": "Feld auswählen…",
      "placement": "Platzierung",
      "placementPoint": "Zentroid / Punkt",
      "placementLine": "Entlang Linie / Polygonkante",
      "textSize": "Textgröße",
      "haloWidth": "Halobreite",
      "textColor": "Textfarbe",
      "haloColor": "Halofarbe",
      "minZoom": "Min. Zoom",
      "maxZoom": "Max. Zoom",
      "allowOverlap": "Überlappung von Beschriftungen zulassen",
      "anchor": "Ankerpunkt",
      "anchorCenter": "Mitte",
      "anchorLeft": "Links",
      "anchorRight": "Rechts",
      "anchorTop": "Oben",
      "anchorBottom": "Unten",
      "anchorTopLeft": "Oben links",
      "anchorTopRight": "Oben rechts",
      "anchorBottomLeft": "Unten links",
      "anchorBottomRight": "Unten rechts",
      "offsetX": "Versatz X (em)",
      "offsetY": "Versatz Y (em)",
      "rotation": "Rotation (°)",
      "maxWidth": "Umbruchbreite (em)",
      "transform": "Groß-/Kleinschreibung",
      "transformNone": "Wie eingegeben",
      "transformUppercase": "GROSSBUCHSTABEN",
      "transformLowercase": "kleinbuchstaben",
      "dedupe": "Doppelte Beschriftungen",
      "dedupeOff": "Jedes Objekt beschriften",
      "dedupeUnique": "Eine Beschriftung pro Standort",
      "dedupeConcatenate": "Werte an einem Standort zusammenführen",
      "dedupeHint": "Fasst Punkte zusammen, die an derselben Koordinate übereinanderliegen. Verwendet das Beschriftungsfeld bei lokalen Punktebenen.",
      "expression": "Ausdruck (optional)",
      "expressionHint": "Ein MapLibre-Ausdruck (JSON). Überschreibt das Feld, wenn festgelegt.",
      "expressionInvalid": "Kein gültiger MapLibre-Ausdruck (muss ein JSON-Array sein). Dieser Wert wird ignoriert.",
      "dataDefined": {
        "heading": "Datendefinierte Überschreibungen",
        "size": "Größe",
        "color": "Farbe",
        "opacity": "Deckkraft",
        "visibility": "Sichtbarkeit",
        "priority": "Priorität",
        "sizeTarget": "Ausdruck für Beschriftungsgröße",
        "colorTarget": "Ausdruck für Beschriftungsfarbe",
        "opacityTarget": "Ausdruck für Beschriftungsdeckkraft",
        "visibilityTarget": "Ausdruck für Beschriftungssichtbarkeit",
        "priorityTarget": "Ausdruck für Beschriftungspriorität",
        "notSet": "Nicht gesetzt",
        "clear": "Ausdruck löschen",
        "hint": "MapLibre-Ausdrücke pro Feature. Größe, Deckkraft und Priorität ergeben Zahlen (Beschriftungen mit niedrigeren Prioritätswerten werden zuerst platziert), Farbe eine Farbe, Sichtbarkeit wahr/falsch. Wird ignoriert, solange das Zusammenfassen doppelter Beschriftungen aktiv ist. Ein Deckkraft-Ausdruck ersetzt die Ebenendeckkraft für Beschriftungen."
      }
    },
    "elevation3d": {
      "mode": "3D (Z-Werte)",
      "fillColor": "Füllfarbe",
      "outlineColor": "Umrissfarbe",
      "strokeWidth": "Strichstärke",
      "strokeWidthMeters": "Strichstärke (Meter)",
      "fillOpacity": "Füllungsdeckkraft",
      "circleRadius": "Kreisradius",
      "verticalScale": "Vertikale Überhöhung",
      "verticalScaleTooltip": "Multipliziert den Z-Wert jeder Koordinate. 1 zeigt die tatsächlichen Höhen; größere Werte betonen das Relief.",
      "offset": "Höhenversatz (m)",
      "offsetTooltip": "Konstante Höhe in Metern, die zu jedem Objekt addiert wird, z. B. um eine Strecke über 3D-Gebäude oder Gelände anzuheben.",
      "footer": "Wird über deck.gl in 3D anhand der Koordinaten-Z-Werte gerendert. Änderungen werden sofort übernommen. Identifizieren und Objekt-Hervorhebung sind in diesem Modus nicht verfügbar."
    },
    "diagrams": {
      "heading": "Diagramme",
      "chartType": "Diagrammtyp",
      "typeNone": "Keine",
      "typePie": "Kreisdiagramm",
      "typeDonut": "Ringdiagramm",
      "typeBar": "Balkendiagramm",
      "typeStackedBar": "Gestapeltes Balkendiagramm",
      "fields": "Attribute",
      "addField": "Attribut hinzufügen",
      "removeField": "Attribut entfernen",
      "noFields": "Numerische Attribute hinzufügen, die pro Feature dargestellt werden.",
      "fieldAttribute": "Diagrammattribut {{index}}",
      "sizeMode": "Größe",
      "sizeFixed": "Feste Größe",
      "sizeSum": "Skaliert nach Attributsumme",
      "sizeAttribute": "Skaliert nach Attribut",
      "sizeField": "Größenattribut",
      "size": "Größe (px)",
      "minZoom": "Minimaler Zoom",
      "declutter": "Überlappende Diagramme ausblenden",
      "truncated": "Diagramme werden nur für {{count}} Features gezeichnet; die übrigen werden nicht dargestellt.",
      "atlasFull": "{{count}} Diagramme passen bei dieser Größe nicht und werden ausgeblendet. Verringern Sie die Diagrammgröße."
    },
    "symbology": {
      "colormap": "Farbtabelle",
      "modeSingle": "Einheitliche Symbolisierung",
      "modeGraduated": "Abgestuft",
      "modeCategorized": "Kategorisiert",
      "modeRuleBased": "Regelbasiert",
      "modeExpression": "Erweiterter Ausdruck",
      "rules": "Regeln",
      "addRule": "Regel hinzufügen",
      "removeRule": "Regel entfernen",
      "noRulesPrefix": "Noch keine Regeln. Fügen Sie eine Regel hinzu und geben Sie ihr einen MapLibre-Filterausdruck (z. B. ",
      "noRulesSuffix": "). Die erste zutreffende Regel gewinnt; die Sonst-Regel färbt alles Übrige.",
      "ruleColor": "Farbe für Regel {{index}}",
      "ruleColorPick": "Farbe für Regel {{index}} vom Bildschirm auswählen",
      "ruleLabel": "Beschriftung für Regel {{index}}",
      "ruleFilter": "Filter für Regel {{index}}",
      "ruleEnabled": "Regel {{index}} aktivieren",
      "ruleAddChild": "Unterregel hinzufügen",
      "ruleOptions": "Symbol und Sichtbarkeit",
      "ruleMinZoom": "Min. Zoom",
      "ruleMaxZoom": "Max. Zoom",
      "ruleZoomInvalid": "Min. Zoom muss unter Max. Zoom liegen - diese Regel gilt nie, solange der Bereich leer ist.",
      "ruleStrokeWidth": "Strichbreite",
      "ruleFillOpacity": "Deckkraft der Füllung",
      "ruleCircleSize": "Kreisradius",
      "ruleOutlineColor": "Umrissfarbe überschreiben",
      "ruleOutlineColorPick": "Umrissfarbe für Regel {{index}} vom Bildschirm auswählen",
      "ruleInherit": "Geerbt",
      "ruleGroupNote": "Diese Regel hat Unterregeln: Sie schränkt ein, worauf ihre Unterregeln zutreffen, und zeichnet selbst nichts.",
      "labelPlaceholder": "Beschriftung (optional)",
      "filterInvalid": "Ungültiger Filter — muss ein JSON-Array-Ausdruck sein. Diese Regel wird übersprungen, bis sie korrigiert ist.",
      "elseRuleColor": "Farbe der Sonst-Regel",
      "elseRuleColorPick": "Farbe der Sonst-Regel vom Bildschirm auswählen",
      "elseRuleEnabled": "Sonst-Regel aktivieren (deaktiviert werden Objekte ohne passende Regel ausgeblendet)",
      "elseAllOtherFeatures": "Sonst (alle übrigen Objekte)",
      "applyHint": "Klicken Sie auf Anwenden, um die regelbasierte Darstellung zu aktivieren.",
      "rulesApplyLive": "Regeländerungen werden sofort auf die Karte angewendet — ein separater Anwenden-Schritt ist nicht nötig.",
      "proportionalSize": "Proportionale Größe",
      "sizeByValue": "Größe nach Wert",
      "sizeField": "Größenfeld",
      "chooseField": "Feld auswählen…",
      "minValue": "Min. Wert",
      "maxValue": "Max. Wert",
      "minSize": "Min. Größe (px)",
      "maxSize": "Max. Größe (px)",
      "sizeLegend": "Größenlegende",
      "fillPattern": "Füllmuster",
      "patternColor": "Musterfarbe",
      "patternSvg": "Muster-SVG",
      "svgPlaceholder": "<svg xmlns='http://www.w3.org/2000/svg' ...>…</svg> oder eine data/https-URL",
      "marker": "Marker",
      "useMarkerIcon": "Marker-Symbol verwenden",
      "markerShape": "Marker-Form",
      "markerColor": "Marker-Farbe",
      "markerSize": "Marker-Größe (px)",
      "markerSvg": "Marker-SVG",
      "markerShapes": {
        "circle": "Kreis",
        "square": "Quadrat",
        "triangle": "Dreieck",
        "diamond": "Raute",
        "star": "Stern",
        "cross": "Kreuz",
        "pin": "Stecknadel",
        "custom": "Benutzerdefiniertes SVG"
      },
      "fillPatterns": {
        "none": "Keins (Volltonfüllung)",
        "hatch": "Schraffur",
        "crossHatch": "Kreuzschraffur",
        "horizontal": "Horizontale Linien",
        "vertical": "Vertikale Linien",
        "dots": "Punkte",
        "svg": "Benutzerdefiniertes SVG"
      },
      "transparent": "Transparent",
      "transparentSwatch": "Keine Farbe (transparent). Klicken, um eine Farbe zu wählen.",
      "styleType": "Stiltyp",
      "attribute": "Attribut",
      "classes": "Klassen",
      "allClasses": "Alle ({{total}})",
      "scheme": "Schema",
      "stops": "Stopps",
      "categories": "Kategorien",
      "classColor": "Farbe für Klasse {{index}}",
      "classColorPick": "Farbe für Klasse {{index}} vom Bildschirm auswählen",
      "classValue": "Wert für Klasse {{index}}",
      "colorExpression": "Farbausdruck",
      "applyStyleType": "Stiltyp anwenden",
      "pointRenderer": "Punkt-Renderer",
      "pointRendererSingle": "Einzelsymbol",
      "pointRendererHeatmap": "Heatmap",
      "pointRendererClustered": "Geclustert",
      "heatmapRadius": "Heatmap-Radius",
      "heatmapIntensity": "Heatmap-Intensität",
      "clusterRadius": "Cluster-Radius (px)",
      "clusterMaxZoom": "Cluster max. Zoom",
      "strokeWidthUnit": "Einheit der Strichstärke",
      "strokeWidthUnitPixels": "Pixel (konstant am Bildschirm)",
      "strokeWidthUnitMeters": "Meter (skaliert mit der Karte)",
      "textHaloColor": "Texthalo-Farbe",
      "textHaloWidth": "Texthalo-Breite",
      "schemeEqualInterval": "Gleiche Intervalle",
      "schemeQuantile": "Quantil",
      "schemeNaturalBreaks": "Natürliche Unterbrechungen",
      "schemeTopValues": "Am häufigsten",
      "schemeAlphabetical": "Alphabetisch",
      "schemeFirstValues": "Erste Werte",
      "errorChooseAttribute": "Wählen Sie ein Attribut für diesen Stilmodus.",
      "errorAttributesUnavailable": "Die Attributwerte dieser Ebene konnten nicht geladen werden.",
      "errorProportionalSizeField": "Das Größenfeld muss numerisch sein und mehr als einen eindeutigen Wert enthalten.",
      "errorGraduatedStops": "Der abgestufte Stil erfordert mindestens zwei numerische Stopps.",
      "errorCategorizedStops": "Der kategorisierte Stil erfordert mindestens eine Kategorie.",
      "invertedFill": "Invertierte Füllung",
      "invertedFillHint": "Außenbereich füllen"
    },
    "suggestions": {
      "title": "Stilvorschläge",
      "dismiss": "Vorschläge ausblenden",
      "categorize": "Nach {{field}} kategorisieren",
      "graduate": "Nach {{field}} abstufen",
      "heatmap": "Heatmap"
    },
    "selectLayerHint": "Wählen Sie eine Ebene aus, um ihren Stil zu bearbeiten.",
    "layerOrderDefault": "Ebenenreihenfolge (Standard)",
    "increaseValue": "{{label}} erhöhen",
    "decreaseValue": "{{label}} verringern",
    "visualization": "Visualisierung",
    "mode2d": "2D",
    "mode3dExtrusion": "3D-Extrusion",
    "noControls": "Stil-Steuerelemente sind für diesen Ebenentyp noch nicht verfügbar.",
    "selectedLayerType": "Ausgewählter Ebenentyp: {{type}}",
    "footerDeck": "Änderungen werden sofort auf die deck.gl-Ebenengestaltung von DuckDB angewendet.",
    "footerMaplibre": "Änderungen werden sofort auf die MapLibre-Paint-Eigenschaften angewendet.",
    "pluginPaintedFooter": "Diese Ebene wird von ihrem Plugin gezeichnet, das eigene Steuerelemente für die Gestaltung bereitstellt.",
    "extrusion": {
      "color": "Extrusionsfarbe",
      "opacity": "Extrusionsdeckkraft",
      "advanced": "Erweiterter Höhenausdruck",
      "heightExpression": "Höhenausdruck",
      "heightProperty": "Höheneigenschaft",
      "heightScale": "Höhenskalierung",
      "base": "Basishöhe",
      "apply": "3D-Extrusion anwenden",
      "footer": "Die 3D-Extrusionseinstellungen werden beim Speichern übernommen."
    },
    "expressionLabels": {
      "style": "Stilausdruck",
      "color": "Farbausdruck",
      "height": "Höhenausdruck"
    },
    "expressionErrors": {
      "notArray": "{{label}} muss ein JSON-Array-Ausdruck sein.",
      "notOperator": "{{label}} muss mit einem Operator beginnen, z. B. [\"==\", [\"get\", \"field\"], value].",
      "notJson": "{{label}} ist kein gültiges JSON: {{message}}"
    },
    "expressionBuilder": {
      "title": "Ausdruckseditor",
      "openBuilder": "Ausdruckseditor öffnen",
      "openBuilderForRule": "Ausdruckseditor für Regel {{index}} öffnen",
      "expressionLabel": "Ausdruck",
      "clear": "Ausdruck löschen",
      "valid": "Gültiger Ausdruck.",
      "apply": "Anwenden",
      "preview": "Vorschau",
      "previewEmpty": "Geben Sie einen Ausdruck ein, um eine Live-Vorschau zu sehen.",
      "previewNoFeatures": "Keine Objekte für die Vorschau vorhanden.",
      "sampleFeature": "Objekt {{index}} von {{count}}",
      "previousFeature": "Vorheriges Objekt",
      "nextFeature": "Nächstes Objekt",
      "filterMatches": "Passt zu diesem Objekt",
      "filterNoMatch": "Passt nicht zu diesem Objekt",
      "fields": "Felder",
      "noFields": "Diese Ebene hat keine Attributfelder.",
      "insertField": "Feld {{name}} einfügen",
      "functionsHeading": "Funktionen",
      "functionSearch": "Funktionen durchsuchen",
      "noFunctionMatches": "Keine Funktionen entsprechen der Suche.",
      "variables": "Variablen",
      "variablesHint": "Variablen werden bei der Anwendung des Ausdrucks durch ihre aktuellen Werte ersetzt.",
      "categories": {
        "data": "Daten & Nachschlagen",
        "decision": "Bedingungen & Vergleich",
        "math": "Mathematik",
        "string": "Zeichenketten",
        "conversion": "Typkonvertierung",
        "camera": "Zoom & Farbe"
      },
      "functions": {
        "get": "Gibt den Wert des benannten Objektattributs zurück.",
        "has": "Wahr, wenn das Objekt das benannte Attribut besitzt.",
        "id": "Gibt die ID des Objekts zurück.",
        "properties": "Gibt das vollständige Attributobjekt des Objekts zurück.",
        "geometryType": "Gibt den Geometrietyp des Objekts zurück (Point, LineString, Polygon, ...).",
        "at": "Gibt das Array-Element am angegebenen Index zurück.",
        "in": "Wahr, wenn der erste Wert im zweiten enthalten ist (Zeichenkette oder Array).",
        "indexOf": "Gibt die Position des ersten Werts im zweiten zurück, andernfalls -1.",
        "length": "Gibt die Länge einer Zeichenkette oder eines Arrays zurück.",
        "literal": "Bettet ein literales Array oder Objekt in den Ausdruck ein.",
        "typeofOp": "Gibt den Typnamen des Werts zurück.",
        "caseOp": "Gibt die erste Ausgabe zurück, deren Bedingung wahr ist, andernfalls den Ausweichwert.",
        "match": "Vergleicht eine Eingabe mit den aufgeführten Werten und gibt die passende Ausgabe zurück.",
        "coalesce": "Gibt den ersten Wert zurück, der nicht null ist.",
        "eq": "Wahr, wenn beide Werte gleich sind.",
        "neq": "Wahr, wenn sich die Werte unterscheiden.",
        "gt": "Wahr, wenn der erste Wert größer als der zweite ist.",
        "gte": "Wahr, wenn der erste Wert größer oder gleich dem zweiten ist.",
        "lt": "Wahr, wenn der erste Wert kleiner als der zweite ist.",
        "lte": "Wahr, wenn der erste Wert kleiner oder gleich dem zweiten ist.",
        "all": "Wahr, wenn jede Bedingung wahr ist.",
        "any": "Wahr, wenn mindestens eine Bedingung wahr ist.",
        "not": "Negiert einen booleschen Wert.",
        "add": "Addiert Zahlen.",
        "subtract": "Subtrahiert die zweite Zahl von der ersten.",
        "multiply": "Multipliziert Zahlen.",
        "divide": "Dividiert die erste Zahl durch die zweite.",
        "modulo": "Gibt den Rest einer Division zurück.",
        "power": "Erhebt die erste Zahl in die Potenz der zweiten.",
        "abs": "Gibt den Absolutwert zurück.",
        "ceil": "Rundet auf die nächste ganze Zahl auf.",
        "floor": "Rundet auf die nächste ganze Zahl ab.",
        "round": "Rundet auf die nächste ganze Zahl.",
        "sqrt": "Gibt die Quadratwurzel zurück.",
        "ln": "Gibt den natürlichen Logarithmus zurück.",
        "log10": "Gibt den Logarithmus zur Basis 10 zurück.",
        "min": "Gibt den kleinsten der Werte zurück.",
        "max": "Gibt den größten der Werte zurück.",
        "concat": "Verbindet Werte zu einer Zeichenkette.",
        "upcase": "Wandelt eine Zeichenkette in Großbuchstaben um.",
        "downcase": "Wandelt eine Zeichenkette in Kleinbuchstaben um.",
        "slice": "Gibt einen Abschnitt einer Zeichenkette oder eines Arrays zurück.",
        "toNumber": "Wandelt einen Wert in eine Zahl um.",
        "toString": "Wandelt einen Wert in eine Zeichenkette um.",
        "toBoolean": "Wandelt einen Wert in wahr oder falsch um.",
        "toColor": "Wandelt einen Wert in eine Farbe um.",
        "zoom": "Die aktuelle Kartenzoomstufe (live von der Karte ausgewertet).",
        "interpolate": "Blendet weich zwischen den Ausgaben über, während sich die Eingabe ändert.",
        "step": "Gibt gestufte Ausgaben an den angegebenen Eingabeschwellen zurück.",
        "rgb": "Erzeugt eine Farbe aus Rot, Grün und Blau (0-255).",
        "rgba": "Erzeugt eine Farbe aus Rot, Grün, Blau und Alpha."
      }
    },
    "decorations": {
      "heading": "Liniendekoration",
      "typeNone": "Keine",
      "typeArrow": "Pfeile",
      "typeTriangle": "Dreiecke",
      "typeCircle": "Kreise",
      "typeSquare": "Quadrate",
      "color": "Dekorationsfarbe",
      "size": "Symbolgröße (px)",
      "spacing": "Abstand (px)"
    },
    "generator": {
      "heading": "Geometriegenerator",
      "type": "Abgeleitete Geometrie",
      "typeNone": "Keine",
      "typeCentroid": "Zentroide",
      "typeBoundingBox": "Begrenzungsrahmen",
      "typeConvexHull": "Konvexe Hüllen",
      "typeBuffer": "Puffer",
      "bufferDistance": "Pufferdistanz (m)",
      "fillColor": "Füllfarbe",
      "strokeColor": "Umrissfarbe",
      "strokeWidth": "Umrissbreite (px)",
      "opacity": "Fülldeckkraft",
      "circleRadius": "Punktradius (px)"
    },
    "attributeForm": {
      "heading": "Attributformular",
      "empty": "Keine Felder konfiguriert. Weisen Sie einem Feld ein Bearbeitungs-Widget, eine Einschränkung oder eine Sichtbarkeitsregel zu.",
      "configureField": "Feld konfigurieren",
      "field": "Feld",
      "selectField": "Feld auswählen…",
      "widgetLabel": "Bearbeitungs-Widget",
      "widget": {
        "text": "Text",
        "number": "Zahl",
        "range": "Bereich",
        "checkbox": "Kontrollkästchen",
        "date": "Datum",
        "valueMap": "Wertezuordnung"
      },
      "alias": "Alias",
      "required": "Erforderlich",
      "requiredTag": "erforderlich",
      "constraintTag": "Einschränkung",
      "visibilityTag": "Sichtbarkeit",
      "valueMap": "Einträge der Wertezuordnung",
      "valueMapPlaceholder": "residential=Residential\ncommercial=Commercial",
      "valueMapHint": "Ein Eintrag pro Zeile: Wert oder Wert=Beschriftung.",
      "min": "Min",
      "max": "Max",
      "step": "Schritt",
      "constraintExpression": "Einschränkungsausdruck",
      "constraintPlaceholder": "[\">\", [\"get\", \"population\"], 0]",
      "constraintDescription": "Beschreibung der Einschränkung",
      "constraintDescriptionPlaceholder": "Wird angezeigt, wenn die Einschränkung fehlschlägt",
      "visibilityExpression": "Sichtbarkeitsausdruck",
      "visibilityPlaceholder": "[\"==\", [\"get\", \"type\"], \"school\"]",
      "invalidExpression": "Ungültiger Ausdruck",
      "openBuilder": "Ausdruckseditor öffnen",
      "edit": "Feldkonfiguration bearbeiten",
      "remove": "Feldkonfiguration entfernen",
      "cancel": "Abbrechen",
      "save": "Speichern",
      "noFields": "Die Ebene hat keine Attributfelder zum Konfigurieren.",
      "minMaxInvalid": "Min muss kleiner oder gleich Max sein."
    }
  },
  "layers": {
    "panelCollapsedLabel": "Ebenen (eingeklappt)",
    "expand": "Ebenen einblenden",
    "collapse": "Ebenen ausblenden",
    "resizePanel": "Größe des Ebenen-Panels ändern",
    "dragToReorder": "Ziehen zum Neuanordnen",
    "saveGeometryEdits": "Geometrieänderungen speichern",
    "discardGeometryEdits": "Geometrieänderungen verwerfen",
    "moveUp": "Nach oben verschieben",
    "moveDown": "Nach unten verschieben",
    "zoomToLayer": "Auf Ebene zoomen",
    "layerActions": "Ebenenaktionen",
    "metadata": "Metadaten",
    "removeLayer": "Ebene entfernen",
    "identifyFeatures": "Objekte identifizieren",
    "identifyDeactivate": "Identifizieren deaktivieren",
    "identifyInspectPixels": "Pixelwerte untersuchen",
    "identifyStopInspectPixels": "Untersuchung der Pixelwerte beenden",
    "identifyUnavailable": "Identifizieren ist nur für Vektor-, WMS- und COG-Ebenen verfügbar",
    "exportGeoTiff": "GeoTIFF (COG)",
    "extractSubset": "Teilmenge extrahieren…",
    "stylesMenu": "Stile",
    "exportMapboxStyle": "Als Mapbox-GL-Stil exportieren",
    "exportSldStyle": "Als OGC SLD exportieren",
    "exportQmlStyle": "Als QGIS-QML exportieren",
    "exportStyleSuccess": "Stil exportiert.",
    "exportStyleDataNotReady": "Ebenendaten sind noch nicht bereit. Versuchen Sie es gleich noch einmal.",
    "exportStyleNeedsFeatures": "Für den Stilexport ist eine Vektorebene mit Objekten erforderlich.",
    "exportStyleError": "Der Stil dieser Ebene konnte nicht exportiert werden.",
    "importStyle": "Stil importieren (Mapbox GL / SLD / QML)…",
    "openStyleManager": "Gespeicherte Stile (Stilverwaltung)…",
    "importStyleSuccess": "Stil importiert.",
    "importStyleInvalid": "Diese Datei ist kein gültiges JSON, SLD oder QML.",
    "importStyleNoMatch": "Aus diesem Stil konnte keine Symbolisierung gelesen werden.",
    "importStyleError": "Dieser Stil konnte nicht importiert werden.",
    "copyStyle": "Stil kopieren",
    "pasteStyle": "Stil einfügen",
    "pasteStyleFrom": "Stil von „{{name}}“ einfügen",
    "pasteStyleEmpty": "Kopieren Sie zuerst den Stil einer Ebene",
    "pasteStyleMismatch": "Der kopierte Stil gehört zu einem anderen Ebenentyp",
    "styleCopied": "Stil von „{{name}}“ kopiert.",
    "stylePasted": "Stil von „{{name}}“ eingefügt.",
    "saveToLibrary": "In Meine Daten speichern",
    "savedToLibrary": "„{{name}}“ in Meine Daten gespeichert.",
    "saveToLibraryNoSource": "Diese Ebene hat keine erneut hinzufügbare Quelle und kann daher nicht in Meine Daten gespeichert werden.",
    "saveToLibraryTooLarge": "Die Features dieser Ebene sind ihre einzige Kopie und zu groß, um sie in Meine Daten zu speichern.",
    "saveToLibraryConfigTooLarge": "Die gespeicherte Konfiguration dieser Ebene ist zu groß für Meine Daten.",
    "bindToTimeSlider": "An Zeitschieberegler binden…",
    "bindTimeDimensionToTimeSlider": "Zeitdimension an Zeitschieberegler binden",
    "bindNoTimeDimension": "Diese Ebene hat keine lesbare Zeitdimension.",
    "unbindFromTimeSlider": "Von Zeitschieberegler lösen",
    "bindDialogDescription": "Filtert die Objekte dieser Ebene anhand einer Datums- oder Zeitstempel-Eigenschaft, während Sie die Zeitleiste durchlaufen. Die Ebene behält ihre Symbolisierung und Deckkraft.",
    "bindScanning": "Objekte werden nach Datums- und Zeitstempel-Eigenschaften durchsucht…",
    "bindNoProperty": "In dieser Ebene wurde keine Datums- oder Zeitstempel-Eigenschaft gefunden.",
    "bindNoTimestamps": "Die ausgewählte Eigenschaft enthält keine lesbaren Zeitstempel. Wählen Sie eine andere Eigenschaft.",
    "bindTileNoFeatures": "Für diese Ebene sind noch keine Kacheln geladen. Zoomen Sie auf die Ebene und versuchen Sie es erneut.",
    "bindRange": "Zeitraum",
    "bindRangeEnd": "Ende des Zeitraums",
    "bindRangeHint": "Aus den bisher geladenen Kacheln übernommen und daher möglicherweise kleiner als der gesamte Datensatz. Geben Sie ein Jahr (1958) oder ein Datum (1958-03-01) ein.",
    "bindRangeInvalid": "Geben Sie beide Grenzen als Jahr (1958) oder Datum (1958-03-01) ein.",
    "bindProperty": "Zeiteigenschaft",
    "bindWindow": "Objekte anzeigen",
    "bindWindowStep": "Im aktuellen Schritt",
    "bindWindowWide": "Innerhalb eines Schritts davor und danach",
    "bindWindowWider": "Innerhalb von drei Schritten davor und danach",
    "bindWindowCumulative": "Alles bis zum aktuellen Schritt (kumulativ)",
    "bindCancel": "Abbrechen",
    "bindConfirm": "Binden",
    "openRasterStylePanel": "Rasterstil bearbeiten…",
    "exportRasterSuccess": "Raster exportiert.",
    "exportRasterError": "Dieses Raster konnte nicht exportiert werden.",
    "saveEditsToSource": "Änderungen in Quelldatei speichern",
    "saveEditsSuccess": "{{count}} Objekt(e) in der Quelldatei gespeichert.",
    "saveEditsNoFeatures": "Diese Ebene enthält keine zu speichernden Objekte.",
    "saveEditsError": "Änderungen konnten nicht in der Quelldatei gespeichert werden.",
    "saveEditsToPostgis": "Änderungen in PostGIS-Tabelle speichern",
    "saveEditsPostgisSuccess": "In {{table}} gespeichert: {{inserted}} eingefügt, {{updated}} aktualisiert, {{deleted}} gelöscht.",
    "saveEditsPostgisSkippedFields": "Felder ohne passende Tabellenspalte wurden nicht gespeichert: {{fields}}.",
    "saveEditsPostgisRefreshWarning": "Die Änderungen wurden in der Tabelle gespeichert, aber die Aktualisierung der Ebene ist fehlgeschlagen. Laden Sie die Ebene neu, bevor Sie erneut speichern, sonst können neue Objekte doppelt eingefügt werden.",
    "saveEditsPostgisNoConnection": "Für diese Ebene ist keine PostgreSQL-Verbindung verfügbar. Stellen Sie die Verbindung unter Daten hinzufügen > PostgreSQL erneut her und versuchen Sie es dann noch einmal.",
    "typeBasemap": "Basiskarte",
    "searchPlaces": "Orte suchen",
    "searchPlacesPlaceholder": "Orte, Koordinaten oder H3-Zelle suchen...",
    "searchPlacesSearching": "Suche läuft...",
    "searchPlacesNoResults": "Keine Orte gefunden",
    "searchPlacesError": "Suche fehlgeschlagen. Versuchen Sie es erneut.",
    "searchPlacesClear": "Suche löschen",
    "searchPlacesGoToCoordinate": "Zu {{coordinate}} springen",
    "searchPlacesGoToH3Cell": "Zur H3-Zelle {{cell}} springen (Res. {{resolution}})",
    "background": "Hintergrund",
    "backgroundCannotReorder": "Der Hintergrund kann nicht neu angeordnet werden",
    "hideBackground": "Hintergrund ausblenden",
    "showBackground": "Hintergrund anzeigen",
    "opacity": "Deckkraft",
    "opacityExactHint": "Doppelklicken, um einen genauen Wert einzugeben",
    "opacityFor": "Deckkraft für {{name}}",
    "opacityValueInputAria": "{{label}}-Wert",
    "opacityValueEditAria": "{{label}}-Wert bearbeiten",
    "basemapOpacity": "Deckkraft der Basiskarte",
    "newGroup": "Neue Gruppe",
    "basemaps": "Basiskarten",
    "geoEditor": "GeoEditor",
    "collapseGroup": "Gruppe einklappen",
    "expandGroup": "Gruppe ausklappen",
    "hideGroup": "Gruppe ausblenden",
    "showGroup": "Gruppe anzeigen",
    "renameGroup": "Gruppe umbenennen",
    "moveGroupUp": "Gruppe nach oben verschieben",
    "moveGroupDown": "Gruppe nach unten verschieben",
    "ungroupKeepLayers": "Gruppierung aufheben (Ebenen behalten)",
    "deleteGroupAndLayers": "Gruppe und Ebenen löschen",
    "groupActions": "Gruppenaktionen",
    "addDataToGroup": "Daten zur Gruppe hinzufügen",
    "groupOpacity": "Deckkraft",
    "groupOpacityAria": "Deckkraft der Gruppe {{name}}",
    "doubleClickToRename": "Doppelklicken zum Umbenennen",
    "doubleClickToChangeBasemap": "Doppelklicken, um die Basiskarte zu ändern",
    "renameNamed": "{{name}} umbenennen",
    "newGroupFromLayer": "Neue Gruppe aus Ebene",
    "newGroupFromSelectedLayers": "Neue Gruppe aus ausgewählten Ebenen",
    "moveToGroup": "In Gruppe verschieben",
    "moveSelectedToGroup": "Ausgewählte Ebenen in Gruppe verschieben",
    "removeFromGroup": "Aus Gruppe entfernen",
    "hiddenByGroup": "Ausgeblendet, da die zugehörige Gruppe nicht sichtbar ist",
    "empty": "Keine Datenebenen. Fügen Sie Daten über die Symbolleiste hinzu.",
    "emptyBeginner": "Noch keine Ebenen. Fügen Sie Basiskarten über Plugins → Basiskarten hinzu, oder Ihre eigenen Daten über das Menü Daten hinzufügen.",
    "hideAllLayers": "Alle Ebenen ausblenden",
    "showAllLayers": "Alle Ebenen anzeigen",
    "dragNamedToReorder": "{{name}} ziehen, um neu anzuordnen",
    "hideLayer": "Ebene ausblenden",
    "showLayer": "Ebene anzeigen",
    "editingGeometry": "Geometrie wird bearbeitet",
    "rename": "Umbenennen",
    "materializeToEditable": "In bearbeitbare Ebene umwandeln",
    "finishEditingGeometry": "Geometriebearbeitung abschließen",
    "editGeometry": "Geometrie bearbeiten",
    "openAttributeTable": "Attributtabelle öffnen",
    "openRasterAttributeTable": "Raster-Attributtabelle öffnen",
    "export": "Exportieren",
    "refresh": "Aktualisieren",
    "autoRefreshOn": "Automatische Aktualisierung an",
    "lastSynced": "Zuletzt synchronisiert {{time}}",
    "syncErrorStatus": "Synchronisierung fehlgeschlagen: {{message}}",
    "autoRefresh": "Automatische Aktualisierung",
    "refreshWfsGeojsonOnly": "Nur WFS- und GeoJSON-URLs",
    "editSqlQuery": "Abfrage im SQL-Arbeitsbereich bearbeiten",
    "reloadFromDisk": "Von Datenträger neu laden",
    "watchFile": "Datei auf Änderungen überwachen",
    "watchError": "Diese Datei konnte nicht auf Änderungen überwacht werden.",
    "autoRefreshDialogTitle": "Automatische Aktualisierung von {{name}}",
    "layerFallback": "Ebene",
    "autoRefreshDialogDescription": "Diese Ebene in einem festen Intervall neu aus ihrer Quelle laden.",
    "interval": "Intervall",
    "custom": "Benutzerdefiniert",
    "customIntervalSeconds": "Benutzerdefiniertes Intervall (Sekunden)",
    "refreshFailurePolicy": "Wenn die Aktualisierung fehlschlägt",
    "refreshFailureKeepLast": "Die letzten erfolgreichen Daten behalten",
    "refreshFailureClear": "Die Ebene leeren",
    "apply": "Anwenden",
    "enterPositiveSeconds": "Geben Sie eine positive Anzahl von Sekunden ein.",
    "metadataDialogTitle": "Metadaten von {{name}}",
    "metadataDialogDescription": "Ebenenmetadaten und Quelleninformationen",
    "metadataRasterLoading": "Rastermetadaten werden gelesen…",
    "metadataRasterError": "Die Metadaten dieses Rasters konnten nicht gelesen werden.",
    "resizeMetadataDialog": "Metadaten-Dialog skalieren",
    "removeLayerConfirmTitle": "Ebene entfernen?",
    "removeLayerConfirmBody": "Dadurch wird {{name}} aus dem Projekt und der Karte entfernt.",
    "thisLayerFallback": "diese Ebene",
    "refreshingAuto": "Automatische Aktualisierung läuft...",
    "refreshing": "Wird aktualisiert...",
    "refreshVectorControlError": "Diese Ebene konnte nicht aktualisiert werden. Versuchen Sie, das Panel „Vektorebene hinzufügen“ erneut zu öffnen.",
    "refreshed": "Aktualisiert.",
    "refreshedCount": "{{count}} Objekte aktualisiert.",
    "refreshError": "Diese Ebene konnte nicht aktualisiert werden.",
    "exportNeedsFeatures": "Für den Export ist eine Vektorebene mit Objekten erforderlich.",
    "exportedWithWarnings": "Ebene exportiert. {{warnings}}",
    "exported": "Ebene exportiert.",
    "exportLayerError": "Diese Ebene konnte nicht exportiert werden.",
    "refreshIntervals": {
      "off": "Aus",
      "s15": "15 Sekunden",
      "s30": "30 Sekunden",
      "m1": "1 Minute",
      "m5": "5 Minuten",
      "m15": "15 Minuten"
    }
  },
  "timeSliderSymbology": {
    "bands": "Kanäle",
    "bandsPlaceholder": "auto",
    "bandsHint": "Kanalnummern ab 1, durch Kommas getrennt (z. B. 4,3,2). Leer lassen für die Standardauswahl.",
    "bandsInvalid": "Ganze Kanalnummern ab 1 eingeben, durch Kommas getrennt.",
    "colormapNone": "Keine (RGB / mehrkanalig)"
  },
  "rasterSymbology": {
    "gamma": "Gamma",
    "min": "Min",
    "max": "Max",
    "value": "Wert",
    "autoPlaceholder": "auto",
    "colorRampLabel": "Farbverlauf",
    "reverseRamp": "Verlauf umkehren",
    "customRamp": "Benutzerdefiniert…",
    "customColors": "Benutzerdefinierte Farben",
    "customColorsValid": "{{count}} Farben, von niedrig nach hoch. Verwenden Sie Umkehren, um sie zu spiegeln.",
    "customColorsHint": "Geben Sie mindestens zwei Hex-Codes ein, getrennt durch Kommas oder Leerzeichen.",
    "imagePalette": "Bildpalette",
    "createLegend": "Legende aus Palette erstellen",
    "createLegendHint": "Fügt eine Legende mit einem Eintrag pro Pixelwert hinzu, unter Verwendung der Palettenfarben des Rasters. Benennen Sie die Einträge anschließend in Klassennamen um.",
    "createLegendPending": "Palette wird gelesen…",
    "createLegendEmpty": "Für dieses Raster wurden keine Palettenfarben gefunden.",
    "createLegendError": "Die Rasterpalette konnte nicht gelesen werden.",
    "heading": "Rastersymbolisierung",
    "renderMode": "Darstellungsmodus",
    "modeSingle": "Einzelnes Band (Pseudofarben)",
    "modeIndex": "Index (normalisierte Differenz)",
    "modeRgb": "RGB-Komposit",
    "band": "Band",
    "stretch": "Spreizung",
    "stretchLinear": "Linear",
    "stretchLog": "Logarithmisch",
    "stretchSqrt": "Quadratwurzel",
    "index": "Index",
    "classifyToggle": "In diskrete Klassen einteilen",
    "method": "Methode",
    "methodEqualInterval": "Gleiches Intervall",
    "methodQuantile": "Quantil",
    "methodManual": "Manuelle Grenzen",
    "classes": "Klassen",
    "classEdges": "Klassengrenzen",
    "noData": "Keine Daten",
    "nodataAuto": "Automatisch (aus Datei)",
    "nodataOff": "Alle Pixel darstellen",
    "nodataCustom": "Benutzerdefinierter Wert"
  },
  "rasterAttributeTable": {
    "title": "Raster-Attributtabelle",
    "resize": "Größe der Raster-Attributtabelle ändern",
    "noRasterSelected": "Wählen Sie eine Rasterebene, um ihre Attributtabelle anzuzeigen.",
    "computing": "Rasterklassen werden gelesen…",
    "empty": "Noch keine Klassen. Verwenden Sie Neu berechnen, um die Tabelle zu erstellen.",
    "band": "Band",
    "bandOption": "Band {{band}}",
    "close": "Raster-Attributtabelle schließen",
    "noSource": "Dieses Raster hat keine lesbare Quelldatei.",
    "readError": "Die Rasterdaten konnten nicht gelesen werden.",
    "bandMissing": "Band {{band}} wurde in diesem Raster nicht gefunden.",
    "notCategorical": "Dieses Band hat zu viele unterschiedliche Werte, um kategorial zu sein.",
    "tooManyClasses": "Die Symbolisierung unterstützt bis zu {{max}} Klassen.",
    "symbologyApplied": "Symbolisierung aus der Tabelle angewendet.",
    "noPalette": "Dieses Raster hat keine eingebettete Palette.",
    "legendError": "Die Legende konnte nicht geöffnet werden.",
    "csvError": "Die CSV-Datei konnte nicht exportiert werden.",
    "recomputeTitle": "Raster scannen und Klassentabelle neu aufbauen",
    "applyTitle": "Raster nach den Klassen der Tabelle einfärben",
    "paletteTitle": "Farben aus der eingebetteten Palette zurücksetzen",
    "legendTitle": "Kartenlegende mit den Klassen der Tabelle füllen",
    "csvTitle": "Tabelle als CSV exportieren",
    "buttons": {
      "recompute": "Neu berechnen",
      "apply": "Symbolisierung anwenden",
      "palette": "Aus Palette",
      "legend": "In Legende",
      "csv": "CSV"
    },
    "columns": {
      "value": "Wert",
      "count": "Anzahl",
      "percent": "%",
      "area_m2": "Fläche (m²)",
      "area_ha": "Fläche (ha)",
      "area_km2": "Fläche (km²)",
      "color": "Farbe",
      "label": "Beschriftung"
    },
    "rowColor": "Farbe für Wert {{value}}",
    "rowLabel": "Beschriftung für Wert {{value}}"
  },
  "raster": {
    "filePickerLabel": "Raster",
    "cogConvertConfirm": "\"{{name}}\" ist ein einfaches (gestreiftes) GeoTIFF, das nicht direkt angezeigt werden kann. Jetzt in ein Cloud-Optimized GeoTIFF konvertieren und dieses laden?",
    "cogConvertRemoteConfirm": "\"{{name}}\" ist ein einfaches (gestreiftes) GeoTIFF, das nicht direkt angezeigt werden kann. Es anzuzeigen bedeutet, die vollständige Datei herunterzuladen und im Browser in ein Cloud-Optimized GeoTIFF zu konvertieren, was bei großen Dateien langsam und speicherintensiv sein kann. Fortfahren?",
    "cogConvertLargeConfirm": "\"{{name}}\" ist ein großes {{width}}×{{height}}-GeoTIFF, das kein Cloud-Optimized GeoTIFF ist. Die Konvertierung im Browser kann langsam und speicherintensiv sein. Trotzdem konvertieren und laden?",
    "cogConvertFailed": "\"{{name}}\" konnte nicht in ein Cloud-Optimized GeoTIFF konvertiert werden. Versuchen Sie, es mit gdal_translate oder rio cogeo zu konvertieren, und laden Sie dann das Ergebnis.",
    "rasterDownloadFailed": "\"{{name}}\" konnte nicht heruntergeladen werden. Der Server ist möglicherweise langsam, nicht erreichbar oder blockiert Cross-Origin-Anfragen, oder die Datei ist zu groß, um im Speicher gehalten zu werden. Überprüfen Sie die URL und versuchen Sie es erneut.",
    "rasterNotGeotiff": "\"{{name}}\" hat kein GeoTIFF zurückgegeben. Der Server hat möglicherweise stattdessen eine Fehler- oder Anmeldeseite gesendet. Überprüfen Sie die URL und versuchen Sie es erneut."
  },
  "attributeForm": {
    "error": {
      "required": "Ein Wert ist erforderlich",
      "number": "Muss eine Zahl sein",
      "range": "Muss zwischen {{min}} und {{max}} liegen",
      "rangeMin": "Muss mindestens {{min}} sein",
      "rangeMax": "Darf höchstens {{max}} sein",
      "valueMap": "Wert ist nicht in der zulässigen Liste",
      "constraint": "Einschränkung nicht erfüllt"
    }
  },
  "legendPanel": {
    "edit": "Legende bearbeiten",
    "done": "Bearbeitung beenden",
    "close": "Legende schließen",
    "empty": "Keine sichtbaren Ebenen vorhanden.",
    "renameTitle": "Legendentitel",
    "renameEntry": "{{name}} umbenennen",
    "renameItem": "{{name}} umbenennen",
    "moveUp": "Nach oben",
    "moveDown": "Nach unten",
    "hideEntry": "Aus der Legende ausblenden",
    "showEntry": "In der Legende anzeigen",
    "hideItem": "Eintrag ausblenden",
    "showItem": "Eintrag anzeigen",
    "customizeEntry": "Einträge anpassen",
    "resetEntry": "Auf automatisch zurücksetzen",
    "removeSection": "Abschnitt entfernen",
    "addSection": "Eigenen Abschnitt hinzufügen",
    "newSectionTitle": "Neuer Abschnitt",
    "newItemLabel": "Neuer Eintrag",
    "addItem": "Eintrag hinzufügen",
    "removeItem": "Eintrag entfernen",
    "itemColor": "Farbe des Eintrags",
    "position": "Position",
    "positions": {
      "top-left": "Oben links",
      "top-right": "Oben rechts",
      "bottom-left": "Unten links",
      "bottom-right": "Unten rechts"
    },
    "low": "Niedrig",
    "high": "Hoch",
    "addFromDictionary": "Aus Wörterbuch hinzufügen",
    "dictionaryHint": "Ein JSON-Objekt aus {\"Beschriftung\": \"Farbe\"}-Paaren oder je Zeile \"Beschriftung: Farbe\".",
    "dictionaryAdd": "Abschnitt hinzufügen",
    "cancel": "Abbrechen",
    "resize": "Legendengröße ändern",
    "collapseEntry": "Abschnitt einklappen",
    "expandEntry": "Abschnitt ausklappen",
    "collapsePanel": "Legende einklappen",
    "expandPanel": "Legende ausklappen",
    "exportJson": "Als JSON exportieren"
  },
  "errorBoundary": {
    "title": "Etwas ist schiefgelaufen",
    "description": "In GeoLibre ist ein unerwarteter Fehler aufgetreten. Ihre Arbeit ist möglicherweise nicht gespeichert — versuchen Sie eine Wiederherstellung, bevor Sie neu laden.",
    "tryAgain": "Erneut versuchen",
    "reload": "App neu laden",
    "sectionFailed": "{{label}} konnte nicht gerendert werden. Der Rest von GeoLibre ist weiterhin verfügbar."
  },
  "commandPalette": {
    "title": "Befehlspalette",
    "searchAria": "Befehle suchen",
    "searchPlaceholder": "Befehle suchen…",
    "listAria": "Befehle",
    "noMatches": "Keine passenden Befehle"
  },
  "shortcuts": {
    "title": "Tastenkürzel",
    "description": "Drücken Sie {{shortcut}}, um in der Befehlspalette nach jeder Aktion zu suchen.",
    "groupGeneral": "Allgemein",
    "groupMapNavigation": "Kartennavigation",
    "openCommandPalette": "Befehlspalette öffnen",
    "showKeyboardShortcuts": "Tastenkürzel anzeigen",
    "nav": {
      "zoomIn": "Vergrößern",
      "zoomOut": "Verkleinern",
      "pan": "Verschieben",
      "rotate": "Drehen",
      "tilt": "Neigen"
    }
  },
  "diagnostics": {
    "title": "Diagnose",
    "description": "Aktuelle Netzwerkanfragen, MapLibre-Fehler, Konsolenwarnungen und Laufzeitausnahmen.",
    "countTotal_one": "{{count}} gesamt",
    "countTotal_other": "{{count}} gesamt",
    "countErrors_one": "{{count}} Fehler",
    "countErrors_other": "{{count}} Fehler",
    "countWarnings_one": "{{count}} Warnung",
    "countWarnings_other": "{{count}} Warnungen",
    "countNetwork_one": "{{count}} Netzwerk",
    "countNetwork_other": "{{count}} Netzwerk",
    "countNetworkErrors_one": "{{count}} Netzwerkfehler",
    "countNetworkErrors_other": "{{count}} Netzwerkfehler",
    "logAllRequests": "Alle Netzwerkanfragen protokollieren",
    "logAllRequestsHint": "Erfolgreiche und abgebrochene Netzwerkanfragen ab jetzt aufzeichnen; Anfragen, die während deaktivierter Protokollierung erfolgten, werden nicht nachgetragen. Standardmäßig aus, da das Protokollieren jeder Anfrage die App verlangsamt.",
    "copyJson": "JSON kopieren",
    "copied": "Kopiert",
    "clear": "Leeren",
    "emptyAll": "Keine Diagnosedaten erfasst.",
    "emptyError": "Keine Fehler-Diagnosedaten erfasst.",
    "emptyWarning": "Keine Warnungs-Diagnosedaten erfasst.",
    "emptyInfo": "Keine Info-Diagnosedaten erfasst.",
    "emptyNetwork": "Keine Netzwerk-Diagnosedaten erfasst.",
    "emptyNetworkError": "Keine Netzwerkfehler-Diagnosedaten erfasst."
  },
  "shell": {
    "workspaceTitle": "GeoLibre-Kartenarbeitsbereich",
    "section": {
      "toolbar": "Symbolleiste",
      "sharedLeftSidebar": "Gemeinsame linke Seitenleiste",
      "pluginPanelLeftOfLayers": "Plugin-Bereich (links von Ebenen)",
      "layerPanel": "Ebenenbereich",
      "pluginPanelRightOfLayers": "Plugin-Bereich (rechts von Ebenen)",
      "map": "Karte",
      "pluginFloatingPanels": "Schwebende Plugin-Bereiche",
      "selectionPanels": "Auswahlbereiche",
      "sunSimulationPanel": "Sonnensimulationsbereich",
      "routeAnimationPanel": "Routenanimationsbereich",
      "flightSimulatorPanel": "Flugsimulator-Panel",
      "sharedRightSidebar": "Gemeinsame rechte Seitenleiste",
      "pluginPanelLeftOfStyle": "Plugin-Bereich (links von Stil)",
      "stylePanel": "Stilbereich",
      "pluginPanelRightOfStyle": "Plugin-Bereich (rechts von Stil)",
      "notebook": "Notebook",
      "attributeTable": "Attributtabelle",
      "rasterAttributeTable": "Raster-Attributtabelle",
      "dashboard": "Dashboard",
      "pythonConsole": "Python-Konsole",
      "sqlWorkspace": "SQL-Arbeitsbereich",
      "assistant": "Assistent",
      "statusBar": "Statusleiste"
    }
  },
  "attributeStats": {
    "title": "Feldstatistik",
    "description": "Zusammenfassende Statistik für ein Feld in „{{layer}}“.",
    "noFields": "Diese Ebene hat keine Felder zum Zusammenfassen.",
    "field": "Feld",
    "scope": "Bereich",
    "scopeAll": "Alle Objekte ({{total}})",
    "scopeFiltered": "Gefiltert ({{total}})",
    "copiedToClipboard": "In die Zwischenablage kopiert.",
    "copy": "Kopieren",
    "copyHeader": "Feldstatistik — {{field}}",
    "copyHeaderFiltered": "Feldstatistik — {{field}} (gefiltert)",
    "noValues": "Keine Werte zum Zusammenfassen.",
    "mostFrequent": "Häufigste Werte",
    "noPopulated": "Keine belegten Werte.",
    "stat": {
      "count": "Anzahl",
      "nulls": "Nullwerte",
      "nonNumeric": "Nicht numerisch",
      "unique": "Eindeutig",
      "min": "Min",
      "max": "Max",
      "mean": "Mittelwert",
      "median": "Median",
      "std": "Std.-Abw.",
      "sum": "Summe"
    }
  },
  "columnExplorer": {
    "title": "Spaltenexplorer",
    "description": "Typ, Vollständigkeit und Verteilung jedes Felds in „{{layer}}“.",
    "noFields": "Diese Ebene hat keine Felder zum Erkunden.",
    "findField": "Feld suchen",
    "findFieldPlaceholder": "Felder nach Namen filtern...",
    "scope": "Bereich",
    "scopeAll": "Alle Objekte ({{total}})",
    "scopeFiltered": "Gefiltert ({{total}})",
    "fieldsShown": "{{shown}} von {{total}} Feldern",
    "noMatches": "Keine Felder passen zu „{{search}}“.",
    "typeNumeric": "Numerisch",
    "typeText": "Text",
    "completenessTitle": "{{populated}} belegt, {{nulls}} null",
    "populated": "{{total}} belegt",
    "null": "{{total}} null",
    "unique": "{{total}} eindeutig",
    "min": "Min",
    "mean": "Mittelwert",
    "max": "Max",
    "noNumericValues": "Keine numerischen Werte zum Darstellen.",
    "distributionAria": "Verteilung von {{field}}: {{total}} Werte von {{min}} bis {{max}}",
    "noPopulated": "Keine belegten Werte.",
    "moreValues": "+{{total}} weitere Werte"
  },
  "stacPlugin": {
    "title": "STAC-Kataloge",
    "footprintLayerName": "STAC-Suchumrisse",
    "catalogSearch": "Öffentlichen Katalog im STAC Index finden",
    "catalogSearchPlaceholder": "Katalognamen suchen…",
    "indexLoading": "STAC Index wird geladen…",
    "indexUnavailable": "STAC Index nicht verfügbar: URL eingeben",
    "indexLoadFailed": "STAC Index konnte nicht geladen werden",
    "urlLabel": "STAC-Katalog- oder API-URL",
    "connect": "Verbinden",
    "connecting": "Verbindung zu STAC wird hergestellt…",
    "connected": "Verbunden. Filter wählen und suchen.",
    "connectFailed": "Verbindung zu STAC fehlgeschlagen",
    "selectCatalog": "Katalog auswählen…",
    "noMatchingCatalogs": "Keine passenden Kataloge",
    "catalogApiSuffix": " (API)",
    "catalogStaticSuffix": " (statisch)",
    "kindApi": "STAC-API",
    "kindStatic": "statischer Katalog",
    "collectionsHint": "Strg/Cmd halten, um mehrere Collections auszuwählen; zum Vergrößern die untere Kante ziehen",
    "limitToExtent": "Suche auf aktuellen Kartenausschnitt begrenzen",
    "bboxLabel": "Begrenzungsrahmen (West, Süd, Ost, Nord)",
    "bboxPlaceholder": "Optional; überschreibt den Kartenausschnitt",
    "bboxInvalid": "Gültigen Begrenzungsrahmen eingeben: West, Süd, Ost, Nord.",
    "drawBbox": "Rahmen auf Karte zeichnen",
    "cancelDrawing": "Zeichnen abbrechen",
    "clearDrawnBbox": "Gezeichneten Rahmen löschen",
    "drawHint": "Zum Zeichnen des Suchrahmens auf der Karte klicken und ziehen.",
    "drawnBbox": "Gezeichneter Rahmen: {{bbox}}",
    "drawnBboxCleared": "Gezeichneter Rahmen gelöscht.",
    "mapNotReady": "Die Karte ist nicht bereit zum Zeichnen.",
    "startDate": "Startdatum",
    "endDate": "Enddatum",
    "additionalParams": "Zusätzliche Suchparameter (JSON, nur STAC-API)",
    "additionalInvalid": "Zusätzliche Suchparameter müssen ein JSON-Objekt sein.",
    "searchItems": "Objekte suchen",
    "clearResults": "Ergebnisse löschen",
    "resultsCleared": "Suchergebnisse gelöscht.",
    "searching": "STAC-Objekte werden gesucht…",
    "loadingMore": "Weitere Objekte werden geladen…",
    "noResults": "Keine STAC-Objekte entsprechen diesen Filtern.",
    "searchFailed": "STAC-Suche fehlgeschlagen",
    "showing": "{{count}} Objekte werden angezeigt.",
    "showingOfMatched": "{{count}} von {{matched}} Objekten werden angezeigt.",
    "loadMore": "Weitere laden",
    "renderOptions": "Raster-Darstellungsoptionen",
    "bands": "Kanäle",
    "bandsPlaceholder": "z. B. 1 oder 1,2,3 (Standard: automatisch)",
    "colormap": "Farbschema (nur einkanalig)",
    "colormapDefault": "Standard des Renderers",
    "minValue": "Minimalwert",
    "maxValue": "Maximalwert",
    "nodata": "NoData-Wert",
    "nodataPlaceholder": "Überschreibt das NoData-Tag der Datei",
    "renderHint": "Feld leer lassen, damit der Renderer den Wert aus dem GeoTIFF ableitet. Die Optionen gelten für danach hinzugefügte Assets.",
    "initialStatus": "Katalog im STAC Index wählen oder URL eingeben.",
    "catalogInfo": "{{title}} · {{kind}}",
    "zoom": "Zoomen",
    "add": "Hinzufügen",
    "download": "Herunterladen",
    "adding": "{{asset}} wird hinzugefügt…",
    "added": "{{asset}} zur Karte hinzugefügt.",
    "addUnsupported": "Nur GeoTIFF/COG- und GeoJSON-Assets können zur Karte hinzugefügt werden",
    "addFailed": "Asset konnte nicht hinzugefügt werden",
    "cogUnsupported": "Dieser GeoLibre-Host kann entfernte GeoTIFF-Assets nicht darstellen"
  },
  "vectorExport": {
    "invalidKmlCoordinatesByPosition": "Der KML-Export konnte Feature {{position}} nicht schreiben, da es ungültige Koordinaten hat.",
    "invalidKmlCoordinatesById": "Der KML-Export konnte Feature-ID {{id}} nicht schreiben, da sie ungültige Koordinaten hat."
  },
  "comments": {
    "title": "Kommentare",
    "addDialogTitle": "Prüfkommentar hinzufügen",
    "addDialogDescription": "Eine verankerte Notiz zu diesem Projekt für die Teamprüfung oder als Offline-Referenz veröffentlichen.",
    "authorNameLabel": "Ihr Name (wird einmal abgefragt und automatisch gespeichert)",
    "authorNamePlaceholder": "z. B. Alex oder Sarah",
    "commentLabel": "Kommentar / Rückmeldung",
    "commentPlaceholder": "Geben Sie hier Ihre Prüfnotiz oder Rückmeldung ein...",
    "confirmDelete": "Möchten Sie diesen Kommentar-Thread wirklich löschen?",
    "sessionDisconnected": "Sitzung getrennt.",
    "defaultAuthorName": "Autor"
  },
  "s2Plugin": {
    "title": "S2-Gitter",
    "controlTitle": "S2-Gitter-Einstellungen",
    "autoResolution": "Automatische Auflösung",
    "resolution": "Auflösung",
    "cellCount": "Zellen im Ausschnitt: {{count}}",
    "tooManyCells": "Dieser Ausschnitt überschreitet das Limit von {{limit}} Zellen. Zoomen Sie hinein oder verringern Sie die Auflösung.",
    "fillColor": "Füllfarbe",
    "fillOpacity": "Füllungsdeckkraft",
    "lineColor": "Umrissfarbe",
    "lineWidth": "Umrissbreite",
    "showLabels": "Zellen-IDs anzeigen",
    "identifyHint": "Klicken Sie auf die Karte, um eine S2-Zelle zu bestimmen.",
    "selectedCell": "Ausgewählte Zelle",
    "noSelection": "Keine Zelle ausgewählt",
    "copyId": "ID kopieren",
    "parent": "Übergeordnete Zelle",
    "children": "Untergeordnete Zellen",
    "neighbors": "Nachbarn",
    "center": "Mittelpunkt",
    "zoomToCell": "Auf Zelle zoomen",
    "addAsLayer": "Gitter als Ebene hinzufügen",
    "exportGeoJson": "GeoJSON exportieren",
    "exportCsv": "CSV exportieren",
    "includeNeighbors": "Nachbarn der ausgewählten Zelle einbeziehen",
    "includeParents": "Übergeordnete Zellen der ausgewählten Zelle einbeziehen"
  },
  "a5Plugin": {
    "title": "A5-Gitter",
    "controlTitle": "A5-Gitter-Einstellungen",
    "autoResolution": "Automatische Auflösung",
    "resolution": "Auflösung",
    "cellCount": "Zellen im Ausschnitt: {{count}}",
    "tooManyCells": "Dieser Ausschnitt überschreitet das Limit von {{limit}} Zellen. Zoomen Sie hinein oder verringern Sie die Auflösung.",
    "fillColor": "Füllfarbe",
    "fillOpacity": "Füllungsdeckkraft",
    "lineColor": "Umrissfarbe",
    "lineWidth": "Umrissbreite",
    "showLabels": "Zellen-IDs anzeigen",
    "identifyHint": "Klicken Sie auf die Karte, um eine A5-Zelle zu bestimmen.",
    "selectedCell": "Ausgewählte Zelle",
    "noSelection": "Keine Zelle ausgewählt",
    "copyId": "ID kopieren",
    "parent": "Übergeordnete Zelle",
    "children": "Untergeordnete Zellen",
    "neighbors": "Nachbarn",
    "center": "Mittelpunkt",
    "zoomToCell": "Auf Zelle zoomen",
    "addAsLayer": "Gitter als Ebene hinzufügen",
    "exportGeoJson": "GeoJSON exportieren",
    "exportCsv": "CSV exportieren",
    "includeNeighbors": "Nachbarn der ausgewählten Zelle einbeziehen",
    "includeParents": "Übergeordnete Zellen der ausgewählten Zelle einbeziehen"
  },
  "dggridPlugin": {
    "title": "DGGRID",
    "controlTitle": "DGGRID-Einstellungen",
    "cellType": "Zelltyp",
    "topologyHexagon": "Sechseck",
    "topologyDiamond": "Raute",
    "topologyTriangle": "Dreieck",
    "projection": "Projektion",
    "aperture": "Apertur",
    "autoResolution": "Automatische Auflösung",
    "resolution": "Auflösung",
    "cellCount": "Zellen im Ausschnitt: {{count}}",
    "tooManyCells": "Dieser Ausschnitt überschreitet das Limit von {{limit}} Zellen. Zoomen Sie hinein oder verringern Sie die Auflösung.",
    "fillColor": "Füllfarbe",
    "fillOpacity": "Füllungsdeckkraft",
    "lineColor": "Umrissfarbe",
    "lineWidth": "Umrissbreite",
    "showLabels": "Zellen-IDs anzeigen",
    "identifyHint": "Klicken Sie auf die Karte, um eine DGGRID-Zelle zu bestimmen.",
    "selectedCell": "Ausgewählte Zelle",
    "noSelection": "Keine Zelle ausgewählt",
    "copyId": "ID kopieren",
    "parent": "Übergeordnete Zelle",
    "children": "Untergeordnete Zellen",
    "neighbors": "Nachbarn",
    "center": "Mittelpunkt",
    "zoomToCell": "Auf Zelle zoomen",
    "addAsLayer": "Gitter als Ebene hinzufügen",
    "exportGeoJson": "GeoJSON exportieren",
    "exportCsv": "CSV exportieren",
    "includeNeighbors": "Nachbarn der ausgewählten Zelle einbeziehen",
    "includeParents": "Übergeordnete Zellen der ausgewählten Zelle einbeziehen"
  },
  "dggalPlugin": {
    "title": "DGGAL",
    "controlTitle": "DGGAL-Einstellungen",
    "gridType": "DGGS-Typ",
    "autoResolution": "Automatische Auflösung",
    "resolution": "Auflösung",
    "cellCount": "Zellen im Ausschnitt: {{count}}",
    "tooManyCells": "Dieser Ausschnitt überschreitet das Limit von {{limit}} Zellen. Zoomen Sie hinein oder verringern Sie die Auflösung.",
    "fillColor": "Füllfarbe",
    "fillOpacity": "Füllungsdeckkraft",
    "lineColor": "Umrissfarbe",
    "lineWidth": "Umrissbreite",
    "showLabels": "Zellen-IDs anzeigen",
    "identifyHint": "Klicken Sie auf die Karte, um eine DGGAL-Zelle zu bestimmen.",
    "selectedCell": "Ausgewählte Zelle",
    "noSelection": "Keine Zelle ausgewählt",
    "copyId": "ID kopieren",
    "parent": "Übergeordnete Zelle",
    "children": "Untergeordnete Zellen",
    "neighbors": "Nachbarn",
    "center": "Mittelpunkt",
    "zoomToCell": "Auf Zelle zoomen",
    "addAsLayer": "Gitter als Ebene hinzufügen",
    "exportGeoJson": "GeoJSON exportieren",
    "exportCsv": "CSV exportieren",
    "includeNeighbors": "Nachbarn der ausgewählten Zelle einbeziehen",
    "includeParents": "Übergeordnete Zellen der ausgewählten Zelle einbeziehen"
  },
  "olcPlugin": {
    "title": "OLC",
    "controlTitle": "OLC-Einstellungen",
    "autoResolution": "Automatische Auflösung",
    "resolution": "Auflösung",
    "cellCount": "Zellen im Ausschnitt: {{count}}",
    "tooManyCells": "Dieser Ausschnitt überschreitet das Limit von {{limit}} Zellen. Zoomen Sie hinein oder verringern Sie die Auflösung.",
    "fillColor": "Füllfarbe",
    "fillOpacity": "Füllungsdeckkraft",
    "lineColor": "Umrissfarbe",
    "lineWidth": "Umrissbreite",
    "showLabels": "Zellen-IDs anzeigen",
    "identifyHint": "Klicken Sie auf die Karte, um eine OLC-Zelle zu bestimmen.",
    "selectedCell": "Ausgewählte Zelle",
    "noSelection": "Keine Zelle ausgewählt",
    "copyId": "ID kopieren",
    "parent": "Übergeordnete Zelle",
    "children": "Untergeordnete Zellen",
    "neighbors": "Nachbarn",
    "center": "Mittelpunkt",
    "zoomToCell": "Auf Zelle zoomen",
    "addAsLayer": "Gitter als Ebene hinzufügen",
    "exportGeoJson": "GeoJSON exportieren",
    "exportCsv": "CSV exportieren",
    "includeNeighbors": "Nachbarn der ausgewählten Zelle einbeziehen",
    "includeParent": "Übergeordnete Zelle der ausgewählten Zelle einbeziehen"
  },
  "geohashPlugin": {
    "title": "Geohash",
    "controlTitle": "Geohash-Einstellungen",
    "autoResolution": "Automatische Auflösung",
    "resolution": "Auflösung",
    "cellCount": "Zellen im Ausschnitt: {{count}}",
    "tooManyCells": "Dieser Ausschnitt überschreitet das Limit von {{limit}} Zellen. Zoomen Sie hinein oder verringern Sie die Auflösung.",
    "fillColor": "Füllfarbe",
    "fillOpacity": "Füllungsdeckkraft",
    "lineColor": "Umrissfarbe",
    "lineWidth": "Umrissbreite",
    "showLabels": "Zellen-IDs anzeigen",
    "identifyHint": "Klicken Sie auf die Karte, um eine Geohash-Zelle zu bestimmen.",
    "selectedCell": "Ausgewählte Zelle",
    "noSelection": "Keine Zelle ausgewählt",
    "copyId": "ID kopieren",
    "parent": "Übergeordnete Zelle",
    "children": "Untergeordnete Zellen",
    "neighbors": "Nachbarn",
    "center": "Mittelpunkt",
    "zoomToCell": "Auf Zelle zoomen",
    "addAsLayer": "Gitter als Ebene hinzufügen",
    "exportGeoJson": "GeoJSON exportieren",
    "exportCsv": "CSV exportieren",
    "includeNeighbors": "Nachbarn der ausgewählten Zelle einbeziehen",
    "includeParent": "Übergeordnete Zelle der ausgewählten Zelle einbeziehen"
  },
  "tilecodePlugin": {
    "title": "Tilecode",
    "controlTitle": "Tilecode-Einstellungen",
    "autoResolution": "Automatische Auflösung",
    "resolution": "Auflösung",
    "cellCount": "{{count}} Kacheln im Ausschnitt",
    "tooManyCells": "Dieser Ausschnitt überschreitet das Limit von {{limit}} Kacheln. Zoomen Sie hinein oder verringern Sie die Auflösung.",
    "fillColor": "Füllfarbe",
    "fillOpacity": "Füllungsdeckkraft",
    "lineColor": "Umrissfarbe",
    "lineWidth": "Umrissbreite",
    "showLabels": "Kachel-IDs anzeigen",
    "identifyHint": "Klicken Sie auf die Karte, um eine Kachel zu bestimmen.",
    "selectedCell": "Ausgewählte Kachel",
    "noSelection": "Keine Kachel ausgewählt",
    "copyId": "ID kopieren",
    "quadkey": "Quadkey",
    "parent": "Übergeordnete Kachel",
    "children": "Untergeordnete Kacheln",
    "neighbors": "Nachbarn",
    "center": "Mittelpunkt",
    "zoomToCell": "Auf Kachel zoomen",
    "addAsLayer": "Gitter als Ebene hinzufügen",
    "exportGeoJson": "GeoJSON exportieren",
    "exportCsv": "CSV exportieren",
    "includeNeighbors": "Nachbarn der ausgewählten Kachel einbeziehen",
    "includeParent": "Übergeordnete Kachel der ausgewählten Kachel einbeziehen"
  },
  "netcdfSymbology": {
    "heading": "NetCDF-Symbolisierung",
    "colorRampLabel": "Farbtabelle",
    "reverse": "Farbtabelle umkehren",
    "colorMin": "Farbminimum",
    "colorMax": "Farbmaximum",
    "resetRange": "Auf Datenbereich zurücksetzen",
    "openCube": "3D-Würfel"
  },
  "netcdfCube": {
    "heading": "3D-Bildwürfel",
    "close": "Schließen",
    "settings": "Einstellungen",
    "setupTitle": "3D-Bildwürfel",
    "setupDescription": "Legen Sie fest, was gelesen werden soll, bevor der Würfel erstellt wird. Jedes Band ist ein eigener Lesevorgang, daher bestimmen Ausdehnung und Bandanzahl die Dauer.",
    "extent": "Ausdehnung",
    "extentView": "Aktueller Kartenausschnitt",
    "extentDraw": "Auf Karte zeichnen",
    "extentFull": "Gesamte Ebenenausdehnung",
    "viewHint": "Liest das, was die Karte beim Erstellen des Würfels zeigt.",
    "fullHint": "Liest das gesamte Gitter. Bei einem szenengroßen Würfel langsam.",
    "drawBbox": "Auf Karte zeichnen",
    "drawing": "Ziehen Sie ein Rechteck auf der Karte, um die Ausdehnung des Würfels festzulegen",
    "drawHint": "Ziehen Sie ein Rechteck auf der Karte, um die Ausdehnung festzulegen.",
    "drawnExtent": "W {{west}}, S {{south}}, O {{east}}, N {{north}}",
    "detail": "Detailgrad",
    "detailOption": "{{size}} Zellen pro Seite",
    "bands": "Bänder",
    "allBands": "Alle ({{count}})",
    "rgbOverlay": "RGB-Bild obenauf",
    "rgbHint": "Setzt drei Bänder zu einem Farbbild zusammen, das über die Oberseite gelegt wird, damit der Würfel als Ort erkennbar ist.",
    "red": "Rot",
    "green": "Grün",
    "blue": "Blau",
    "planeEstimate": "{{count}} Bandlesevorgänge",
    "create": "Würfel erstellen",
    "colorRampLabel": "Farbtabelle",
    "reverse": "Umkehren",
    "showRgb": "RGB oben",
    "rgbBands": "RGB-Bänder",
    "recomposing": "wird gelesen...",
    "zScale": "Höhe",
    "slice": "Schnitt",
    "sliceAt": "Schnitt bei {{band}} {{units}}",
    "reading": "Band {{done}} von {{total}} wird gelesen...",
    "summary": "{{nx}} x {{ny}} Zellen, {{nz}} Bänder entlang {{axis}}",
    "errorNoCube": "Die Quelldatei dieser Ebene ist nicht mehr geöffnet, daher kann kein Würfel gelesen werden.",
    "error": {
      "shapeMismatch": "Die Bandebenen der Variablen haben nicht dieselbe Form und können daher nicht zu einem Würfel gestapelt werden.",
      "rgbShapeMismatch": "Die gewählten RGB-Bänder passen nicht zur Form des Würfels.",
      "noBands": "Diese Variable hat keine Bänder zum Lesen.",
      "noReadWindow": "Dieser Würfel kann nicht direkt aktualisiert werden. Erstellen Sie ihn über die Einstellungen neu."
    }
  },
  "netcdfProfile": {
    "heading": "Spektralprofil",
    "clear": "Leeren",
    "chartAria": "Abgetastete Pixelwerte entlang der Bandachse",
    "popOut": "Abdocken",
    "dock": "Andocken",
    "poppedOutHint": "Das Diagramm ist in einem Fenster auf der Karte geöffnet.",
    "noValues": "Für diese Pixel gibt es keine darstellbaren Werte.",
    "exportPng": "PNG",
    "exportCsv": "CSV",
    "exportError": "Das Diagramm konnte nicht exportiert werden."
  },
  "netcdfIdentify": {
    "noData": "keine Daten",
    "coordinates": "Lon, Lat",
    "cell": "Zeile, Spalte"
  }
}
