{
  "ai": {
    "api_key": "API-Schlüssel",
    "api_url": "API-URL",
    "automaticPlasmidTags": "Plasmid-Tags automatisch generieren",
    "automaticPlasmidTagsDescription": "Wenn aktiviert, werden bei jedem Öffnen eines Plasmids die Datenbank-Tags im Hintergrund mit der aktuellen KI-Konfiguration aktualisiert.",
    "clearAll": "Alle Unterhaltungen löschen",
    "configNamePlaceholder": "z. B.: DeepSeek-v4-flash",
    "confirmClearAll": "Möchten Sie wirklich alle Unterhaltungen löschen? Diese Aktion kann nicht rückgängig gemacht werden.",
    "copied": "Kopiert",
    "copy": "Kopieren",
    "createConfig": "Neue Konfiguration",
    "delete": "Eintrag entfernen",
    "emptyConfigBanner": "Es wurde noch keine KI-Konfiguration gespeichert. Bitte erstellen und speichern Sie zuerst eine Konfiguration (mit API-Schlüssel), damit der KI-Assistent und die Plasmid-Tag-Generierung genutzt werden können.",
    "emptyHint": "Geben Sie ein, was Sie tun möchten! Der KI-Assistent kann Ihnen derzeit bei der Datenbanksuche, der Organisation von Plasmid-Einträgen und der Programmeinrichtung helfen; Funktionen wie molekulares Klonieren und Primer-Design sind noch nicht ausgereift.",
    "errorTag": "(Fehler)",
    "exportDebug": "Debug-Informationen exportieren",
    "exportDebugTooltip": "Exportiert die vollständige Anfrage (messages/tools/Denkfelder), die bei einem Fehler an die KI gesendet wurde, als JSON zur Fehlersuche",
    "getKey": "Abrufen",
    "getKeyFailed": "Webseite kann nicht geöffnet werden, bitte Link manuell kopieren",
    "getKeyTooltip": "Anbieterseite öffnen, um API-Schlüssel abzurufen",
    "inputPlaceholder": "Nachricht eingeben, Enter zum Senden, Shift+Enter für Zeilenumbruch",
    "mcpBootFailed": "MCP-Start fehlgeschlagen",
    "mcpConnected": "MCP verbunden",
    "mcpDisconnected": "MCP nicht verbunden",
    "model": "Modell",
    "name": "Konfigurationsname",
    "new": "Neu",
    "newChat": "Neue Unterhaltung",
    "newSession": "Neue Sitzung",
    "noSessions": "Keine Sitzungen",
    "openAsWindow": "Als neues Fenster öffnen",
    "parameters": "Parameter",
    "provider": "Anbieter",
    "reasoning": "Reasoning-Modell",
    "result": "Ergebnis",
    "save": "Speichern",
    "saveCurrent": "Aktuelle Konfiguration speichern",
    "savedConfigs": "Gespeicherte Konfigurationen",
    "selectOrCreate": "Wählen Sie eine Sitzung aus oder erstellen Sie eine neue",
    "send": "Senden",
    "sessions": "Sitzungen",
    "setAsCurrent": "Als aktuell festlegen",
    "settings": "Einstellungen",
    "settingsTitle": "KI-Einstellungen",
    "stopGenerate": "Generierung stoppen",
    "tagPrompt": "Plasmid-Tag-Prompt",
    "tagPromptDefault": "Klassifizieren Sie Plasmide mit prägnanten biologischen Tags. Wenn ein vorhandenes Tag dieselbe Bedeutung ausdrücken kann, verwenden Sie dessen exakte Schreibweise wieder; erstellen Sie nur dann ein neues Tag, wenn ein wirklich eigenständiges Konzept vorliegt – **geben Sie niemals zwei semantisch nahezu identische Tags an** (z. B. entweder „shRNA“ oder „RNAi“, entweder „lentiviral“ oder „lenti“, entweder „fluorescent“ oder „fluorescence“, nicht beide behalten).\nDateipfade und Dateinamen enthalten oft biologisch bedeutsame Informationen – diese sollten ebenso wie Features als primäres Referenzsignal behandelt werden. Häufige verwertbare Signale sind: Vektorfamilie/-typ (z. B. lenti/retro/AAV/adenoviral/pLVX/pCDH), Rückgrat, Gen oder Insert, Resistenz, Promotor, Affinitäts-Tag, fluoreszierender Reporter, Expressionssystem, Wirtsorganismus, Projektname und Anbieter. Wenn ein Signal zu einem vorhandenen Tag passt, verwenden Sie dessen exakte Schreibweise wieder; fügen Sie nur dann ein neues Tag hinzu, wenn das Signal tatsächlich informativ ist und nicht von vorhandenen Tags abgedeckt wird. Wandeln Sie nicht mechanisch jedes Verzeichnis- oder Dateinamensfragment in ein Tag um (überspringen Sie generische Wörter wie plasmid, vector, final, v2 sowie reines Datums-/Versionsrauschen).\nWählen Sie mit Bedacht – Qualität vor Quantität (lieber weniger als zu viel). Behalten Sie nur die wichtigsten Tags und **höchstens 20**. **Jedes Tag soll kurz sein – in der Regel ein oder zwei Wörter** (z. B. „lentiviral“, „GFP“, „shRNA“, „kanamycin“); vermeiden Sie Phrasen, vollständige Sätze oder langatmige beschreibende Texte. Ordnen Sie nach Wichtigkeit: **Gene/Inserts und Verwendungszweck des Plasmids (z. B. lentivirale Expression, Gateway, shRNA-Knockdown) haben Vorrang**; fügen Sie Resistenz, Reporter, Spezies oder Vektorfamilie nur dann hinzu, wenn sie tatsächlich die Suche erleichtern. **Behandeln Sie kleine/generische Elemente wie Promotoren und NLS als Signale niedriger Priorität** – kennzeichnen Sie einen Promotor nur, wenn er das charakteristische Element des Plasmids ist (falls mehrere Promotoren vorhanden sind, höchstens denjenigen, der das Zielgen/Insert treibt). **Kennzeichnen Sie keine generischen/häufigen Elemente, die fast jedes Plasmid trägt** – z. B. Replikationsursprung (ori), Kernlokalisierungssignal (NLS), kleine Epitop-/Affinitäts-Tags (FLAG, HA, Myc, His), generische/Sequenzierungs-Primerbindungsstellen (wie M13-, T7-, T3-, SP6-Primer), Linker oder MCS, T7-Promotor-Terminator, polyA usw. – sie erzeugen nur Rauschen und helfen nicht bei der Suche. Verwerfen Sie alle redundanten, durch andere Tags implizierten oder wenig informativen Tags; wenn zwei Kandidaten-Tags im Wesentlichen dieselbe Bedeutung haben, behalten Sie nur das spezifischere. Wenn Sie unsicher sind, ob ein Tag es wert ist, behalten Sie es nicht.",
    "tagPromptDescription": "Der Prompt (nur der Anweisungsteil), der bei der Generierung von Plasmid-Tags verwendet wird. Die konkreten Daten jedes Plasmids (Name, Pfad, Merkmale, vorhandene Tags) werden automatisch am Ende angehängt und müssen hier nicht eingegeben werden. Unverändert lassen, um den integrierten Standard-Prompt zu verwenden.",
    "tagPromptReset": "Standard wiederherstellen",
    "tagPromptSummary": "Anpassen, wie die KI Plasmide mit Tags versieht",
    "tagThinking": "Denken bei Tag-Generierung aktivieren",
    "tagThinkingDescription": "Wenn aktiviert, denkt die KI bei der Generierung von Plasmid-Tags zuerst nach und gibt dann aus (genauer, aber langsamer; standardmäßig deaktiviert).",
    "test": "Verbindung testen",
    "testOk": "Verbindung erfolgreich",
    "thinking": "Denken",
    "thinkingContent": "Denkinhalt",
    "thinkingInProgress": "Denkt nach...",
    "thinkingTooltip": "Wenn aktiviert, denkt das Modell zuerst nach und antwortet dann (standardmäßig aktiviert)",
    "toggleSidebar": "Sitzungsliste ein-/ausklappen",
    "toolCalls": "Tool-Aufrufe ({{count}})",
    "toolCallsWithErrors": "Tool-Aufrufe ({{count}}, {{errors}} Fehler)",
    "usageAvgSpeed": "Durchschnittsgeschwindigkeit",
    "usageCacheHit": "Cache-Treffer",
    "usageCached": "davon Cache-Treffer {{n}} Tokens (rabattiert abgerechnet)",
    "usageCompletion": "Ausgabe {{n}} Tokens",
    "usageDaily": "Letzte Nutzung",
    "usageInput": "Eingabe (inkl. Treffer)",
    "usageLoading": "Statistiken werden geladen...",
    "usageNoDaily": "Keine aktuellen Einträge",
    "usageOutput": "Ausgabe",
    "usagePrompt": "Eingabe {{n}} Tokens (inkl. Cache-Treffer)",
    "usageRequests": "Anzahl Anfragen",
    "usageSession": "Aktuelle Unterhaltung",
    "usageSpeed": "Generierungsgeschwindigkeit: {{n}} Tokens/Sekunde",
    "usageStats": "Nutzungsstatistik",
    "usageToday": "Heute",
    "usageTotal": "Gesamt der letzten 7 Tage",
    "usedTool": "Tool verwendet",
    "vision": "Vision-Modell"
  },
  "alignment": {
    "addFiles": "Dateien hinzufügen",
    "algorithm": "Algorithmus",
    "calculating": "Berechnung läuft...",
    "chromatogramHeight": "Chromatogrammhöhe {{multiplier}}×, zum Zurücksetzen doppelklicken",
    "chromatogramHeightLabel": "Chromatogrammhöhe",
    "collapseDetails": "Details einklappen",
    "ctxCopied": "{{count}} bp Sequenz kopiert",
    "ctxCopyFailed": "Kopieren fehlgeschlagen",
    "ctxCopySequence": "Vollständige Sequenz kopieren ({{count}} bp)",
    "ctxExportAb1": "AB1 exportieren (mit Chromatogramm)",
    "ctxExportFailed": "Export fehlgeschlagen",
    "ctxExportFasta": "FASTA exportieren",
    "dropToAdd": "Dateien ablegen, um Sequenzen hinzuzufügen",
    "emptyState": "Sequenzen hinzufügen, um sie mit der Referenzsequenz auszurichten",
    "expandDetails": "Details erweitern",
    "files": "Dateien",
    "fromClipboard": "Aus Zwischenablage",
    "fromOpenWindows": "Aus geöffneten Fenstern",
    "hide": "Ausblenden",
    "hideChromatograms": "Chromatogramme ausblenden",
    "namePlaceholder": "Name (optional)",
    "originalSequence": "Originalsequenz",
    "paste": "Einfügen",
    "remove": "Entfernen",
    "seqsCount": "{{count}} Sequenzen",
    "sequencePlaceholder": "Sequenz einfügen oder eingeben...",
    "show": "Anzeigen",
    "showChromatograms": "Chromatogramme anzeigen",
    "title": "Sequenzausrichtung",
    "typeSequence": "Sequenz eingeben",
    "wheelHorizontal": "Mausradrichtung: horizontal scrollen (klicken für vertikal)",
    "wheelVertical": "Mausradrichtung: vertikal scrollen (klicken für horizontal)"
  },
  "app": {
    "circularPlasmid": "Zirkuläres Plasmid",
    "createNewSequence": "Neue Sequenz erstellen",
    "createSequence": "Sequenz erstellen",
    "dnaSequence": "DNA-Sequenz",
    "dnaSequencePlaceholder": "DNA-Sequenz eingeben (A, T, C, G)...",
    "dragDropHint": "Sie können auch eine oder mehrere Sequenzdateien direkt in dieses Fenster ziehen, um sie zu öffnen",
    "dragDropRelease": "Loslassen, um Datei zu öffnen",
    "emptyView": "Karte oder Sequenz auswählen, um Inhalte anzuzeigen",
    "fileError": "Dateifehler",
    "multiRecordMessage": "„{{name}}“ enthält {{count}} Sequenzen. Wie sollen sie geöffnet werden?",
    "multiRecordOpenAll": "Einzeln öffnen ({{count}} Dokumente)",
    "multiRecordOpenFirst": "Nur die erste Sequenz öffnen",
    "multiRecordTitle": "Mehrere Sequenzen erkannt",
    "newSequence": "Neue Sequenz",
    "newSequenceDefaultName": "Unbenannte Sequenz",
    "newSequenceDesc": "Von Grund auf neu erstellen",
    "newSequenceHandoffFailed": "Öffnen fehlgeschlagen: Sequenznutzlast zu groß, um sie an ein neues Fenster zu übergeben",
    "newTab": "Neuer Tab",
    "newWindowFailed": "Neues Bearbeitungsfenster konnte nicht geöffnet werden.",
    "openFile": "Sequenzdatei öffnen",
    "openFileDesc": ".gen-, .dna-, .prot-, .rna-, .gb-, .gbk-, .gjson-, .fasta-, .ab1-Dateien",
    "parseWarning": "Teilweise Inhalt konnte nicht analysiert werden",
    "parseWarningDesc": "Die Sequenz wurde erfolgreich geladen, aber einige Inhalte wurden aufgrund von Fehlern übersprungen. Bitte kopieren Sie die Details unten und melden Sie sie dem Entwickler.",
    "sequenceName": "Sequenzname",
    "sequenceNamePlaceholder": "Sequenznamen eingeben...",
    "settings": "Einstellungen",
    "settingsTooltip": "Anwendungseinstellungen konfigurieren",
    "subtitle": "Leistungsstarkes Werkzeug zum Anzeigen und Bearbeiten von DNA-Sequenzen",
    "title": "GenePad"
  },
  "cdsExtension": {
    "cancel": "Abbrechen",
    "confirm": "Erweitern",
    "message": "Den Bereich dieser CDS-Annotation auf den vollständigen Leserahmen erweitern (bis zum Stoppcodon)?",
    "title": "CDS auf vollständigen Leserahmen erweitern"
  },
  "cloning": {
    "addFragment": "Fragment hinzufügen",
    "addFragmentBlockedCircular": "Ein vorhandenes Fragment hat sich selbst zu einem Ring geschlossen und kann nicht mit anderen Fragmenten assembliert werden",
    "addStep": "Verarbeitungsschritt hinzufügen",
    "addStepDisabledHint": "Der vorherige Verarbeitungsschritt muss zuerst abgeschlossen werden",
    "autoAssemblyHint": "Nach Fertigstellung aller Fragmentprodukte automatisch assemblieren und lineare oder zirkuläre Topologie bestimmen",
    "bluntEnd": "Stumpfes Ende",
    "circularInAssemblyError": "Es gibt ein selbstligiertes zirkuläres Fragment, das nicht mit anderen Fragmenten assembliert werden kann; bitte entfernen Sie dessen Selbstligierungsschritt oder reduzieren Sie die Fragmente.",
    "circularTopology": "Zirkuläres Plasmid",
    "clickMapToFill": "Klicken Sie auf eine Nummer, um das Eingabefeld auszuwählen, und dann auf die Schnittstelle in der Karte",
    "clickSequenceToFillPrimer": "Klicken Sie auf einen Primer in der Karte oder markieren Sie Basen in der Sequenzansicht, um den nächsten leeren Primer-Slot zu füllen (zuerst Vorwärts-, dann Rückwärtsprimer); halten Sie Strg gedrückt und klicken Sie nacheinander auf zwei Primer, um beide in Reihenfolge zu füllen.",
    "currentVector": "Vektor entfernen",
    "cutEnzymes": "Restriktionsenzyme",
    "defaultProductName": "Klonierungsprodukt",
    "digest": "Restriktionsverdau",
    "digestAllOccurrencesHint": "Nach Auswahl der Restriktionsenzyme erfolgt der Verdau automatisch: Es wird an allen Erkennungsstellen jedes ausgewählten Enzyms in der aktuellen Sequenz geschnitten, und die Produktbereiche werden sofort in der Originalsequenz hervorgehoben; halten Sie Strg gedrückt und klicken Sie nacheinander auf mehrere Schnittstellen in der Karte, um mehrere Enzyme auf einmal hinzuzufügen; nach der Auswahl wird automatisch erneut verdaut.",
    "directProduct": "Produkt des letzten Schritts direkt übernehmen",
    "emptyTemplate": "Bitte zuerst eine DNA-Vorlage laden",
    "enzymeSearchSummary": "{{shown}} / {{total}} Restriktionsenzyme werden angezeigt; durch Eingabe kann der Bereich eingeschränkt werden.",
    "finalFragmentProduct": "Endprodukt des Fragments",
    "finalProduct": "Endprodukt",
    "fivePrimeOverhang": "5′-Überhang",
    "forwardPrimer": "Vorwärtsprimer-Sequenz",
    "forwardPrimerNoAnneal": "Am 3′-Ende des Vorwärtsprimers wurde auf der aktuellen Vorlage keine zusammenhängende Übereinstimmung von mindestens 6 bp gefunden.",
    "fragment": "DNA-Fragment {{number}}",
    "fragmentNotReadySteps": "Es sind noch unvollständige Verarbeitungsschritte vorhanden",
    "fusion": "Fusionsassemblierung",
    "fusionHint": "Alle fertig verarbeiteten Fragmente in Reihenfolge assemblieren.",
    "fusionMethod": "Fusionsmethode",
    "importFromWindow": "Aus Fenster importieren",
    "importFromWindowEmpty": "Derzeit sind keine Fenster mit geöffneten Dokumenten vorhanden.",
    "leftEnd": "Linker Schnitt",
    "ligation": "Restriktionsligation",
    "linearTopology": "Lineare DNA",
    "loadTemplateHint": "Sequenzdatei öffnen oder DNA einfügen",
    "loading": "Wird geladen…",
    "minimumOverlap": "Minimale Überlappungslänge (bp)",
    "newForwardPrimer": "PCR-Vorwärtsprimer",
    "newReversePrimer": "PCR-Rückwärtsprimer",
    "noEnzymes": "Keine Restriktionsenzyme ausgewählt",
    "noExistingPrimers": "Die aktuelle Vorlage enthält keine eigenen Primer.",
    "noMatchingSites": "Keine passenden Schnittstellen",
    "noStepsHint": "Es sind noch keine Verarbeitungsschritte vorhanden; fügen Sie einen hinzu, um mit der Fragmentverarbeitung zu beginnen.",
    "notReady": "Noch nicht bereit",
    "openAsNewFile": "Als neue Datei öffnen",
    "openAsNewFileHint": "Das Produkt wird direkt als neues Dokument geöffnet (Annotationen werden mitgeführt); ob und in welchem Format Sie speichern, wählen Sie im geöffneten Dokument.",
    "openFile": "Öffnen",
    "openedAsNewFile": "Das Produkt wurde als neue Datei geöffnet.",
    "originalSequence": "Originalsequenz",
    "overhangSequence": "Überhangsequenz",
    "overlapFound": "Überlappung {{count}} bp",
    "overlapPcr": "Überlappungs-PCR",
    "paste": "DNA einfügen",
    "pastePlaceholder": "DNA-Sequenz hier einfügen; Leerzeichen, Zeilenumbrüche und Positionsnummern werden ignoriert.",
    "pastedFragment": "Eingefügtes Fragment {{number}}",
    "pcr": "PCR",
    "prepareBoth": "Bitte schließen Sie zuerst die Verarbeitung für jedes Fragment ab.",
    "previewMap": "Karte",
    "previewSequence": "Sequenz",
    "primersRequired": "Bitte zuerst die Vorwärts- und Rückwärtsprimersequenzen eingeben.",
    "process": "Verarbeiten",
    "processSuccess": "Das Produkt dieses Schritts wurde erzeugt",
    "processingSteps": "Verarbeitungsschritte",
    "product": "Produkt",
    "productName": "Produktname",
    "productOption": "Produkt {{number}} · {{length}} bp",
    "readyToClone": "Klonierungsbereit · Produkt {{length}} bp",
    "removeFragment": "Fragment {{number}} entfernen",
    "removeStep": "Schritt {{number}} und alle nachfolgenden Schritte entfernen",
    "reverseComplement": "Reverses Komplement",
    "reversePrimer": "Rückwärtsprimer-Sequenz",
    "reversePrimerNoAnneal": "Am 3′-Ende des Rückwärtsprimers wurde auf der aktuellen Vorlage keine zusammenhängende Übereinstimmung von mindestens 6 bp gefunden.",
    "rightEnd": "Rechter Schnitt",
    "rotateFragmentDirection": "Sequenzrichtung umkehren",
    "schemeDiagram": "Schematische Darstellung der molekularen Klonierung",
    "seamless": "Nahtlose Klonierung",
    "searchEnzymeSite": "Restriktionsenzym oder Position suchen…",
    "selectExistingPrimer": "Vorhandene Primer",
    "selfLigate": "Selbstligation des Vektors",
    "selfLigateCircularError": "Das Fragment ist bereits zirkulär; eine Selbstligation ist nicht erforderlich.",
    "selfLigateHint": "Die beiden Enden eines linearen Fragments wieder zu einem Ring verbinden. Die Enden müssen zueinander passen: kohäsive Enden, die vom selben Restriktionsenzym (oder Isoschizomeren) erzeugt wurden, oder stumpfe Enden.",
    "selfLigateIncompatible": "Die Enden sind nicht kompatibel, eine Selbstligation ist nicht möglich (erfordert kompatible kohäsive Enden desselben Enzyms oder stumpfe Enden).",
    "sequenceFiles": "DNA-Sequenzdateien",
    "setAsVector": "Als Vektor anzeigen",
    "singleFragmentHint": "Bei nur einem Fragment ist das Produkt das Ergebnis des letzten Verarbeitungsschritts dieses Fragments und kann ein lineares oder zirkuläres Plasmid sein.",
    "siteOccurrences": "{{number}} Schnittstellen",
    "sitesNotFound": "Die ausgewählten Restriktionsenzyme haben keine Schnittstellen in dieser Sequenz.",
    "sitesRequired": "Bitte wählen Sie mindestens ein Restriktionsenzym aus.",
    "step": "Schritt {{number}}",
    "threePrimeOverhang": "3′-Überhang",
    "topologyPending": "Nach Abschluss der Verarbeitung wird automatisch zwischen zirkulär und linear unterschieden",
    "twoOverlapsFound": "Fragment-Überlappung {{first}} bp · Zirkularisierungs-Überlappung {{closing}} bp",
    "unsupportedFile": "Dieser Dateityp kann nicht als Klonierungsvorlage verwendet werden.",
    "useSequence": "Diese Sequenz verwenden",
    "variantCount": "{{count}} mögliche Produkte",
    "variantCurrent": "Aktuelle Orientierung",
    "variantHint": "Wenn die kohäsiven Enden oder Homologiearme an beiden Enden des Fragments identisch sind, kann die Ligation in beiden Richtungen erfolgen. Für diese Assemblierung gibt es mehrere mögliche Produkte. Bitte wählen Sie die Orientierung für Vorschau und Export aus:",
    "variantReversed": "Umgekehrt",
    "vector": "Vektor",
    "vectorRoleHint": "„Als Vektor anzeigen“ ändert nur den Stil der schematischen Darstellung (offener Ring). Höchstens ein Fragment kann markiert werden; das Assemblierungsergebnis wird nicht beeinflusst.",
    "waitingForFragments": "Warte auf alle Fragmente"
  },
  "codonOptimization": {
    "algorithm": "Optimierungsalgorithmus",
    "algorithms": {
      "unified": "Einheitlicher gewichteter Algorithmus (empfohlen)"
    },
    "cancel": "Abbrechen",
    "changedCodons": "{{count}} Codons ersetzt",
    "confirmAndReplace": "Optimieren und ersetzen",
    "copied": "Kopiert",
    "copy": "Sequenz kopieren",
    "dialogDescription": "Die ausgewählten {{count}} Codons optimieren und die ursprüngliche kodierende Sequenz ersetzen.",
    "dialogTitle": "Codon-Optimierung",
    "errors": {
      "emptyInput": "Bitte zuerst eine Sequenz eingeben.",
      "hostLoadFailed": "Spezies-Voreinstellungen konnten nicht vom Rust-Backend geladen werden.",
      "incompleteCodon": "Die DNA-Sequenzlänge muss ein ganzzahliges Vielfaches von 3 sein.",
      "invalidDna": "Die DNA-Eingabe darf nur A, C, G, T oder U enthalten.",
      "invalidInput": "Die eingegebene Sequenz kann nicht optimiert werden.",
      "invalidProtein": "Die Aminosäure-Eingabe darf nur die 20 standardmäßigen Ein-Buchstaben-Codes verwenden, Stoppcodons werden mit * angegeben.",
      "tissueLoadFailed": "Gewebepräferenzen konnten nicht vom Rust-Backend geladen werden.",
      "unknownHost": "Die ausgewählte Spezies-Voreinstellung ist nicht verfügbar.",
      "unknownPreferenceType": "Die ausgewählte Präferenzquelle ist nicht verfügbar.",
      "unknownTissue": "Die ausgewählte Gewebepräferenz ist nicht verfügbar."
    },
    "gcChange": "GC {{before}}% → {{after}}%",
    "hosts": {
      "bacillus": "Bacillus subtilis 168",
      "cho": "CHO-Zellen",
      "ecoli": "Escherichia coli K-12",
      "human": "Mensch",
      "mouse": "Maus",
      "yeast": "Saccharomyces cerevisiae"
    },
    "inputHint": "Leerzeichen und Positionsnummern werden automatisch ignoriert; DNA-Sequenzen können T oder U verwenden.",
    "inputTitle": "Sequenz eingeben",
    "loadingHosts": "Spezies-Voreinstellungen werden vom Rust-Backend geladen…",
    "methodNote": "Der einheitliche gewichtete Rust-Algorithmus berücksichtigt gleichzeitig die Ziel-Codonpräferenz (38 %), die Diversität häufig verwendeter Codons (18 %), die Nähe zum Ziel-GC-Gehalt (20 %), die Vermeidung seltener Codons (12 %) und die Bestrafung von Wiederholungen/Homopolymeren (12 %) und fügt eine zufällige Störung von höchstens 8 % hinzu. Gewebepräferenzen verwenden die Häufigkeitsdaten des GenePad Codon Atlas; der in der Oberfläche angezeigte Gewebepräferenz-Score ist das CAI-Gewicht des Atlas multipliziert mit 100. Bei aufeinanderfolgenden Optimierungen wird versucht, die ursprüngliche Eingabe und das vorherige Ergebnis zu vermeiden, während die Proteinübersetzung unverändert bleibt; wenn die Sequenz nur Reste wie Met, Trp usw. ohne synonyme Codons enthält, kann keine erzwungene Änderung vorgenommen werden. RNA-Struktur, Restriktionsstellen, Codon-Paare und CpG/UpA werden derzeit nicht berücksichtigt.",
    "notesTitle": "Algorithmus- und Datenhinweise",
    "optimize": "Sequenz optimieren",
    "optimizing": "Optimierung läuft…",
    "outputPlaceholder": "Die optimierte Sequenz wird hier angezeigt.",
    "outputTitle": "Optimierte DNA-Sequenz",
    "placeholders": {
      "dna": "Kodierende DNA-Sequenz einfügen, z. B.: ATGGCTCTGTGG...",
      "protein": "Ein-Buchstaben-Aminosäuresequenz einfügen, z. B.: MALW..."
    },
    "preferenceType": "Präferenzquelle",
    "protein": "Aminosäure",
    "resultSummary": "{{codons}} Codons · GC {{gc}}%",
    "selectedSpecies": "Spezies-Konfiguration: {{species}}",
    "selectedTissue": "Humangewebe-Konfiguration: {{tissue}}",
    "speciesPreference": "Spezies-Präferenz",
    "speciesSource": "Spezies-Rankings stammen aus genomweiten Codon-Nutzungszusammenfassungen (Kazusa Codon Usage Database; Codon Statistics Database, 2022).",
    "targetHost": "Ziel-Expressionsspezies",
    "targetTissue": "Ziel-Humangewebe",
    "tissuePreference": "Gewebepräferenz",
    "tissueSource": "Gewebedatenquelle: GenePad Codon Atlas, unabhängig berechnet auf Basis uneingeschränkter GTEx v8 Gen-Median-TPM-Zusammenfassungsdaten und repräsentativer kodierender Transkripte aus GENCODE Release 50 (Zugriffsdatum 14.07.2026). Die TissueCoCoPUTs-Tabellen sind keine numerische Eingabe; ihre öffentlich zugängliche gewebewichtete Methode dient lediglich als wissenschaftliche Referenz. Diese GTEx-Datenversion ist möglicherweise nicht die aktuellste und stellt keine Billigung durch die betreffenden Institutionen dar. Quelle:",
    "tissues": {
      "adipose-subcutaneous": "Subkutanes Fettgewebe",
      "adipose-visceral-omentum": "Viszerales Fettgewebe (Omentum)",
      "adrenal-gland": "Nebenniere",
      "artery-aorta": "Aorta",
      "artery-coronary": "Koronararterie",
      "artery-tibial": "Tibialarterie",
      "bladder": "Harnblase",
      "brain-amygdala": "Gehirn – Amygdala",
      "brain-anterior-cingulate-cortex-ba24": "Gehirn – anteriorer cingulärer Cortex (BA24)",
      "brain-caudate-basal-ganglia": "Gehirn – Nucleus caudatus (Basalganglien)",
      "brain-cerebellar-hemisphere": "Gehirn – Kleinhirnhemisphäre",
      "brain-cerebellum": "Gehirn – Kleinhirn",
      "brain-cortex": "Gehirn – Großhirnrinde",
      "brain-frontal-cortex-ba9": "Gehirn – frontaler Cortex (BA9)",
      "brain-hippocampus": "Gehirn – Hippocampus",
      "brain-hypothalamus": "Gehirn – Hypothalamus",
      "brain-nucleus-accumbens-basal-ganglia": "Gehirn – Nucleus accumbens (Basalganglien)",
      "brain-putamen-basal-ganglia": "Gehirn – Putamen (Basalganglien)",
      "brain-spinal-cord-cervical-c-1": "Gehirn – zervikales Rückenmark (C1)",
      "brain-substantia-nigra": "Gehirn – Substantia nigra",
      "breast-mammary-tissue": "Brustdrüsengewebe",
      "cells-cultured-fibroblasts": "Kultivierte Fibroblasten",
      "cells-ebv-transformed-lymphocytes": "EBV-transformierte Lymphozyten",
      "cervix-ectocervix": "Zervix – Ektocervix",
      "cervix-endocervix": "Zervix – Endocervix",
      "colon-sigmoid": "Kolon – Sigmoid",
      "colon-transverse": "Kolon – Transversum",
      "esophagus-gastroesophageal-junction": "Ösophagus – gastroösophagealer Übergang",
      "esophagus-mucosa": "Ösophagus – Mukosa",
      "esophagus-muscularis": "Ösophagus – Muscularis",
      "fallopian-tube": "Eileiter",
      "heart-atrial-appendage": "Herz – Vorhofohr",
      "heart-left-ventricle": "Herz – linke Herzkammer",
      "kidney-cortex": "Niere – Rinde",
      "kidney-medulla": "Niere – Mark",
      "liver": "Leber",
      "lung": "Lunge",
      "minor-salivary-gland": "kleine Speicheldrüse",
      "muscle-skeletal": "Skelettmuskel",
      "nerve-tibial": "Tibialnerv",
      "ovary": "Eierstock",
      "pancreas": "Bauchspeicheldrüse",
      "pituitary": "Hypophyse",
      "prostate": "Prostata",
      "skin-not-sun-exposed-suprapubic": "Haut – nicht sonnenexponiert (suprapubisch)",
      "skin-sun-exposed-lower-leg": "Haut – sonnenexponiert (Unterschenkel)",
      "small-intestine-terminal-ileum": "Dünndarm – terminales Ileum",
      "spleen": "Milz",
      "stomach": "Magen",
      "testis": "Hoden",
      "thyroid": "Schilddrüse",
      "uterus": "Gebärmutter",
      "vagina": "Vagina",
      "whole-blood": "Vollblut"
    }
  },
  "codonTable": {
    "codes": {
      "invertebrateMitochondrial": "Invertebraten-Mitochondrium",
      "standard": "Standard-Codon",
      "vertebrateMitochondrial": "Vertebraten-Mitochondrium"
    },
    "detailHint": "Klicken oder über ein Codon fahren, um Aminosäuredetails anzuzeigen",
    "expressionScore": "Expressionswert",
    "firstBase": "Erste Position",
    "fullName": "Vollständiger Name",
    "oneLetter": "Einbuchstabencode",
    "scoreLoadFailed": "Wert nicht verfügbar",
    "scoreLoading": "Wird geladen…",
    "scoreTooltip": "Präferenzwert {{score}} · Rang {{rank}} von {{count}} unter synonymen Codons",
    "scoreType": "Quelle des Expressionswerts",
    "scoreValue": "Wert {{score}}",
    "secondBase": "Zweite Position {{base}}",
    "skeletalFormula": "Skelettformel",
    "speciesPreferenceScore": "Spezies-Präferenzwert",
    "start": "Start",
    "startCodon": "Startcodon",
    "stop": "Stopp",
    "stopCodon": "Stoppcodon",
    "targetSpecies": "Zielorganismus",
    "targetTissue": "Zielgewebe",
    "threeLetter": "Dreibuchstabencode",
    "tissuePreferenceScore": "Gewebe-Präferenzwert",
    "tissueScoreNote": "Der Gewebewert verwendet die CAI-Gewichtung des GenePad Codon Atlas × 100 (GTEx v8 + GENCODE Release 50)."
  },
  "common": {
    "add": "Hinzufügen",
    "cancel": "Abbrechen",
    "close": "Schließen",
    "current": "Aktuell",
    "delete": "Löschen",
    "edit": "Bearbeiten",
    "export": "Exportieren",
    "hide": "Ausblenden",
    "import": "Importieren",
    "listSeparator": ", ",
    "loading": "Wird geladen...",
    "maximize": "Maximieren",
    "minimize": "Minimieren",
    "no": "Nein",
    "none": "Keine",
    "ok": "OK",
    "or": "oder",
    "refresh": "Aktualisieren",
    "restore": "Wiederherstellen",
    "save": "Speichern",
    "search": "Suchen...",
    "show": "Anzeigen",
    "yes": "Ja"
  },
  "commonFeatures": {
    "addAnnotations": "Annotationen hinzufügen ({{count}})",
    "annotatedAs": "Bereits als {{name}} annotiert",
    "annotatedAsHint": "An dieser Position existiert bereits eine Annotation mit abweichendem Namen ({{name}}); falls es sich um dasselbe Element handelt, kann dieser Eintrag übersprungen werden",
    "cancelled": "Suche abgebrochen.",
    "circular": "Zirkuläre Sequenz",
    "colCoverage": "Abdeckung",
    "colIdentity": "Ähnlichkeit",
    "colLocation": "Position",
    "colMethod": "Quelle",
    "colName": "Name",
    "colStrand": "Strang",
    "colType": "Typ",
    "description": "Häufige Plasmidelemente in der aktuellen Sequenz ({{length}} bp) suchen, mit Fehlertoleranz und Proteinvergleich.",
    "descriptionSelection": "Nur den ausgewählten Bereich {{range}} ({{length}} bp) durchsuchen, mit Fehlertoleranz und Proteinvergleich.",
    "detect": "Suche starten",
    "elapsedTime": "Gesamtdauer der Suche: {{seconds}} Sekunden.",
    "existing": "Vorhanden",
    "existingHint": "An dieser Position existiert bereits eine Annotation mit gleichem oder ähnlichem Namen",
    "largeSequenceHint": "Suchbereich {{length}} bp; bei Sequenzen über 30 kb kann die Suche länger dauern. Bitte warten (kann jederzeit gestoppt werden).",
    "methodDna": "Nukleinsäure",
    "methodPeptide": "Peptid",
    "methodProtein": "Protein",
    "noResults": "Keine passenden allgemeinen Elemente gefunden. Versuchen Sie, die Strenge zu lockern.",
    "progressPercent": "Suche läuft… {{percent}} %",
    "proteinHint": "CDS-Elemente werden in Proteine übersetzt und verglichen; kurze Peptid-Tags (FLAG/NLS/His usw.) werden exakt auf Peptidebene abgeglichen, sodass auch codon-optimierte Sequenzen erkannt werden.",
    "proteinOff": "Aus",
    "proteinOn": "Ein",
    "proteinSearch": "Proteinvergleich",
    "redetect": "Erneut suchen",
    "results": "{{count}} Treffer gefunden",
    "selectAll": "Alle auswählen",
    "selectedCount": "{{count}} ausgewählt",
    "stop": "Stoppen",
    "strandForward": "Vorwärts",
    "strandReverse": "Rückwärts",
    "title": "Allgemeine Elemente erkennen",
    "tolerance": "Übereinstimmungsstrenge",
    "toleranceHint": "Nukleinsäureähnlichkeit ≥ {{identity}}, Proteinähnlichkeit ≥ {{protein}}, Abdeckung ≥ {{coverage}}",
    "toleranceLoose": "Locker",
    "toleranceStandard": "Standard",
    "toleranceStrict": "Streng"
  },
  "contextMenu": {
    "addEnzymeSite": "Hinzufügen",
    "addEnzymeSiteRevComp": "Revers-komplementäre Sequenz hinzufügen",
    "aminoAcidProperties": "Aminosäure-Eigenschaften",
    "aminoKeptHint": "Nur die 20 Standard-Aminosäuren im Ein-Buchstaben-Code und * (Stop) werden beibehalten",
    "blast": "BLAST",
    "blastCncb": "CNCB BLAST",
    "blastCncbCopied": "Sequenz kopiert. Bitte im CNCB-Abfragefeld einfügen (Strg+V)",
    "blastNcbi": "NCBI BLAST",
    "blastOpenFailed": "Öffnen der BLAST-Webseite fehlgeschlagen",
    "bothStrands": "Beide Stränge",
    "bottomStrand": "Unterer Strang",
    "clearBaseColor": "Farbe entfernen",
    "codonOptimization": "Codon-Optimierung",
    "colorBases": "DNA einfärben",
    "copyAminoAcidSequence": "Aminosäuresequenz kopieren",
    "copyPrimerNameAndSeq": "Primername und -sequenz kopieren",
    "copyPrimerSeq": "Primersequenz kopieren",
    "copyProteinSequence": "Proteinsequenz kopieren",
    "copyReversedPrimerSeq": "Revers-Primersequenz kopieren",
    "deleteDNAAndFeature": "DNA und Annotation löschen",
    "deleteFeature": "Annotation löschen",
    "deletePrimer": "Primer löschen",
    "deletePrimers": "Primer löschen ({{count}})",
    "dnaKeptHint": "Nur Basenzeichen (A, T, C, G und IUPAC-Degenerationscodes) werden beibehalten",
    "editFeature": "Annotation bearbeiten",
    "editPrimer": "Primer bearbeiten",
    "electrophoresis": "Elektrophorese-Simulation",
    "enzymeSearchPlaceholder": "Restriktionsenzyme suchen (Name oder Erkennungssequenz)...",
    "exportPrimerData": "Primerdaten exportieren",
    "exportPrimerNameSeq": "Primername + Sequenz exportieren",
    "filtered": "Gefiltert: {{count}} bp",
    "filteredAmino": "Gefiltert: {{count}} aa",
    "insert": "Einfügen",
    "insertAtInfo": "Einfügeposition {{pos}}",
    "insertTitle": "Sequenz einfügen",
    "optimizeAndInsert": "Optimieren und einfügen",
    "optimizeAndReplace": "Optimieren und ersetzen",
    "pasteInputMode": "Eingabetyp",
    "pastePlaceholder": "DNA-Sequenz einfügen...",
    "pastePlaceholderAmino": "Aminosäuresequenz einfügen...",
    "proteinProperties": "Protein-Eigenschaften",
    "replace": "Ersetzen",
    "replaceRangeInfo": "{{start}}..{{end}} ersetzen",
    "replaceTitle": "Auswahl ersetzen",
    "selectAll": "Alles auswählen",
    "topStrand": "Oberer Strang",
    "transferredHintBoth": "Beim Einfügen werden {{features}} Elementannotationen und {{primers}} Primer übernommen",
    "transferredHintFeatures": "Beim Einfügen werden {{features}} Elementannotationen übernommen",
    "transferredHintPrimers": "Beim Einfügen werden {{primers}} Primer übernommen"
  },
  "crispr": {
    "addToMap": "Zur Karte hinzufügen",
    "annotateOne": "Dieses Ziel annotieren",
    "bindingNum": "Anzahl der Bindungsstellen",
    "calculate": "Berechnen",
    "calculating": "sgRNA-Kandidaten werden berechnet",
    "clickSequenceHint": "Klicken Sie auf die Sequenz, um an die entsprechende Position in der Originalkarte zu springen.",
    "crisprType": "CRISPR-Typ",
    "custom": "Benutzerdefiniert",
    "description": "sgRNA-Kandidaten basierend auf der aktuell ausgewählten Sequenz von {{count}} bp entwerfen.",
    "designFailed": "CRISPR-Design fehlgeschlagen: {{error}}",
    "designSgrna": "CRISPR-sgRNA entwerfen",
    "direction": "Richtung",
    "exportCsv": "Alle Sequenzen exportieren",
    "exportCsvDone": "CSV-Export erfolgreich",
    "exportCsvFailed": "CSV-Export fehlgeschlagen",
    "filtering": "Filtern",
    "forward": "Vorwärts",
    "maxBindingNum": "Maximale Anzahl der Bindungsstellen",
    "maxBindingUnlimited": "Unbegrenzt",
    "minBindingNum": "Minimale Anzahl der Bindungsstellen",
    "mismatchOutsideSeed": "Fehlpaarungen außerhalb des Seeds zulassen",
    "name": "Name",
    "noContext": "Kein sgRNA-Design-Kontext empfangen.",
    "noSgrnaPassed": "Keine sgRNA hat den Filter bestanden. Anzahl der Kandidaten: {{count}}",
    "nuclease": "Nuklease",
    "pam": "PAM",
    "recalculate": "Neu berechnen",
    "recognitionLayout": "Erkennungslayout",
    "resultSummary": "{{accepted}} von {{total}} Kandidaten ausgewählt",
    "results": "Ergebnisse",
    "reverse": "Rückwärts",
    "seedLength": "Seed-Sequenzlänge",
    "selectAll": "Alle auswählen",
    "selectedCount": "{{count}} ausgewählt",
    "sequence": "Sequenz",
    "sgLength": "sgRNA-Länge",
    "targetNotFound": "Ziel in Datei {{fileName}} nicht gefunden",
    "targetSequence": "Zielsequenz",
    "title": "CRISPR sgRNA",
    "unselectAll": "Auswahl aufheben",
    "validationBindingRange": "Die minimale Anzahl der Bindungsstellen darf nicht größer als die maximale Anzahl sein.",
    "validationCutSite": "Die Schnittstelle muss eine ganze Zahl sein.",
    "validationMaxBinding": "Die maximale Anzahl der Bindungsstellen muss mindestens 1 betragen.",
    "validationMinBinding": "Die minimale Anzahl der Bindungsstellen muss mindestens 1 betragen.",
    "validationPamRequired": "Die PAM-Sequenz darf nicht leer sein.",
    "validationPamUnsupported": "Die PAM-Sequenz enthält nicht unterstützte Basen.",
    "validationSeedLength": "Die Seed-Sequenzlänge muss zwischen 1 und der sgRNA-Länge liegen.",
    "validationSgLength": "Die sgRNA-Länge muss mindestens 1 betragen."
  },
  "cutConfirm": {
    "copy": "Kopieren",
    "dontShowAgain": "In dieser Sitzung nicht mehr anzeigen",
    "message": "Möchten Sie wirklich ausschneiden?",
    "ok": "Bestätigen",
    "title": "Ausschneiden bestätigen"
  },
  "deleteConfirm": {
    "dontShowAgain": "In dieser Sitzung nicht mehr anzeigen",
    "message": "Möchten Sie die ausgewählte Sequenz ({{count}} bp) wirklich löschen? Dadurch wird der ausgewählte Bereich aus der Sequenz entfernt.",
    "ok": "Löschen",
    "title": "Löschen bestätigen"
  },
  "electrophoresis": {
    "add": "Gelspur hinzufügen",
    "addPrepared": "Präpariertes Fragment hinzufügen",
    "addSample": "Probe vorbereiten",
    "agarose": "Agarosekonzentration (%)",
    "bands": "Banden",
    "catalogNumber": "Katalognummer",
    "chooseCutSite": "Schnittstelle wählen",
    "chooseLadder": "Größenstandard wählen",
    "clear": "Leeren",
    "clearCutSite": "Gewählte Schnittstelle entfernen",
    "custom": "Benutzerdefiniert",
    "customBandsHint": "Eine Bande pro Zeile: zuerst die Größe in {{unit}} angeben, optional nach einem Komma die relative Intensität (0–3).",
    "customBandsPlaceholder": "8000, 1\n5000, 1\n1000, 2",
    "customDeleted": "Benutzerdefinierter Ladder gelöscht.",
    "customLadder": "Benutzerdefinierter Ladder",
    "customLadderName": "Ladder-Name",
    "customLadderSource": "Quell-URL (optional)",
    "customNameRequired": "Bitte einen Namen für den benutzerdefinierten Ladder eingeben.",
    "customSaved": "Benutzerdefinierter Ladder wurde auf diesem Gerät gespeichert.",
    "cutSites": "Restriktionsschnittstellen",
    "deleteCustom": "Ausgewählten benutzerdefinierten Ladder löschen",
    "digest": "Restriktionsverdau",
    "dna": "DNA-Elektrophorese",
    "dnaInputHint": "Sequenzdatei öffnen, Bereich auswählen, verdauen, PCR durchführen oder DNA direkt einfügen.",
    "emptyLanes": "Probe hinzufügen, um eine Spur zu erstellen",
    "end": "Ende",
    "forwardPrimer": "Vorwärtsprimer (5′→3′)",
    "full": "Vollständige Sequenz",
    "fullSequence": "Vollständige Sequenz",
    "ladder": "Größenstandard",
    "ladderSource": "Quelle der Ladder-Spezifikation anzeigen",
    "ladderType": "Typ",
    "lanes": "Gelspuren",
    "noMatchingCutSites": "Keine passenden Restriktionsschnittstellen",
    "noMatchingLadders": "Keine passenden Marker",
    "noTemplate": "Noch keine DNA-Vorlage geladen",
    "openFile": "Öffnen",
    "pasted": "Sequenz einfügen",
    "pcr": "PCR",
    "polyacrylamide": "Gelkonzentration (%)",
    "protein": "Proteinelektrophorese",
    "proteinInputHint": "Aminosäuresequenz einfügen oder über das Kontextmenü aus CDS/Translationsbereich hinzufügen.",
    "range": "Bereich auswählen",
    "reversePrimer": "Rückwärtsprimer (5′→3′)",
    "sample": "Probe",
    "sampleName": "Probenname",
    "saveCustom": "Benutzerdefinierten Ladder speichern",
    "searchCutSite": "Restriktionsenzym, Erkennungssequenz oder Position suchen…",
    "searchLadder": "Anbieter, Marker-Name oder Bandengröße suchen…",
    "searchSummary": "Alle {{matches}} Treffer anzeigen (von insgesamt {{total}}).",
    "selectedRange": "Ausgewählter Bereich",
    "sequenceFiles": "DNA-Sequenzdateien",
    "simulationNotice": "Migrationsdarstellung nach {{minutes}} Minuten Elektrophorese; der Schieberegler-Mittelpunkt bei 30 Minuten ist auf das Referenzmuster Trans2K® Plus II kalibriert.",
    "start": "Start",
    "subtitle": "DNA-Fragmente in Agarosegelen vergleichen oder Proteine mittels SDS-PAGE.",
    "title": "Elektrophorese-Simulation",
    "unsupportedFile": "Dieser Dateityp kann nicht für die Elektrophorese-Simulation verwendet werden.",
    "voltage": "Spannung (V)"
  },
  "enzyme": {
    "cutCount": "Schnittstellen",
    "enzyme": "Enzym",
    "noRestrictionSites": "Keine Restriktionsschnittstellen gefunden",
    "position": "Position",
    "recognitionSequence": "Erkennungssequenz",
    "search": "Enzym suchen...",
    "showingCount": "{{count}} Enzyme angezeigt (insgesamt {{total}} Stellen)",
    "sites": "Schnittstellen",
    "sitesTotal": "Stellen"
  },
  "enzymeFilters": {
    "__custom__": "Benutzerdefiniert",
    "all": "Alle Enzyme",
    "allCommercial": "Alle kommerziellen Enzyme",
    "allEnzymes": "Alle Enzyme",
    "bluntEnd": "Stumpfende-Enzyme",
    "double": "Enzyme mit zwei Schnittstellen",
    "fivePrime": "5'-Überhang-Enzyme",
    "goldenGate": "Golden-Gate-Enzyme",
    "lowPrice": "Preis pro Reaktion ≤ ¥20",
    "neb": "NEB-Enzyme",
    "nebThermo": "NEB & Thermo",
    "stickyEnd": "Kohäsive-End-Enzyme",
    "thermoFisher": "Thermo-Enzyme",
    "threePrime": "3'-Überhang-Enzyme",
    "typeIIS": "Typ-IIS-Enzyme",
    "unique": "Enzyme mit einer Schnittstelle",
    "uniqueOrDouble": "Enzyme mit zwei/einer Schnittstelle"
  },
  "enzymeInfo": {
    "bluntEnd": "Stumpfes Ende",
    "bufferActivity": "Aktivität in verschiedenen Puffern",
    "catalogNumber": "Katalognummer",
    "catalogPrice": "Katalogpreis",
    "commerciallyAvailable": "Kommerziell erhältlich",
    "compatibleEnds": "Kompatible Enden",
    "compatibleEndsTip": "Enzyme, die unterschiedliche Erkennungssequenzen haben, aber nach dem Schneiden identische kohäsive Enden erzeugen.",
    "currentRange": "Aktueller Bereich",
    "cutFrequency": "Schnitthäufigkeit",
    "cutSiteNotConfigured": "Schnittstelle nicht konfiguriert",
    "databaseIds": "Datenbank-IDs",
    "endType": "Endtyp",
    "equischizomers": "Isoschizomere mit gleicher Schnittposition",
    "equischizomersTip": "Isoschizomere, die auch an derselben Position schneiden.",
    "fivePrimeOverhang": "5'-Überhang",
    "heatInactivation": "Hitzeinaktivierungstemperatur",
    "inactTemp": "Inaktivierungstemperatur",
    "isoschizomers": "Isoschizomere",
    "isoschizomersTip": "Restriktionsenzyme, die dieselbe DNA-Sequenz erkennen. Isoschizomere sind ein Oberbegriff, der Equischizomere und Neoschizomere umfasst.",
    "methylable": "Methylierbar",
    "methylationInfo": "Methylierungsinformationen",
    "neoschizomers": "Neoschizomere",
    "neoschizomersTip": "Isoschizomere, die dieselbe Erkennungssequenz haben, aber an unterschiedlichen Positionen schneiden.",
    "noVendorInfo": "Für dieses Enzym sind keine Herstellerproduktdaten verfügbar",
    "notConfigured": "Nicht konfiguriert",
    "optTemp": "Optimale Temperatur",
    "packagePrices": "Größen und Preise",
    "pricePerReaction": "Preis pro Reaktion",
    "properties": "Enzymatische Eigenschaften",
    "reactionTemperature": "Reaktionstemperatur",
    "reactionTime": "Reaktionszeit",
    "recognitionAndCutSite": "Erkennungs-/Schnittstelle",
    "relationships": "Taxonomische Beziehungen",
    "selectEnzyme": "Bitte wählen Sie ein Restriktionsenzym aus",
    "spec": "Größe",
    "suppliers": "Anbieter ({{count}})",
    "threePrimeOverhang": "3'-Überhang",
    "title": "Restriktionsenzym-Informationen",
    "type": "Typ",
    "unknown": "Unbekannt",
    "vendorEnzymology": "Hersteller-Enzymologie",
    "vendorLink": "Hersteller-Webseite",
    "vendorOther": "Sonstiges"
  },
  "enzymeLibrary": {
    "enzymeCount": "{{count}} Enzyme",
    "searchHintAa": "Aminosäuresuche: Die assemblierte Sequenz wird in allen 6 Leserastern (einschließlich des reversen Komplements) translatiert und durchsucht. Es werden nur die übereinstimmenden Leserasterzeilen angezeigt, und die entsprechenden Basen werden gemäß der Leserasterrichtung hervorgehoben.",
    "searchHintDna": "DNA-Suche: In der assemblierten Sequenz der aktuellen Zelle und in den drei Zeilen R1/R2 gleichzeitig nach Basenfragmenten suchen (die Anfrage und ihr reverses Komplement werden beide durchsucht).",
    "searchPlaceholder": "Enzymname oder Erkennungssequenz suchen...",
    "searchPlaceholderAa": "Aminosäuren (z. B. MGH…) oder mit *"
  },
  "enzymePanel": {
    "activeEnzymes": "Aktive Enzyme ({{count}})",
    "activeNonCutters": "Enzyme ohne Schnittstellen ({{count}})",
    "addSearchPlaceholder": "Enzym zur Liste hinzufügen (Enzymname eingeben)...",
    "addSelectedToPool": "Auswahl zum Enzympool hinzufügen",
    "count": "{{count}} Stück",
    "currentPool": "Aktueller Enzympool",
    "customPool": "Benutzerdefinierter Enzympool ({{count}})",
    "cutSites": "{{count}} Schnittstellen",
    "deselectAll": "Auswahl aufheben",
    "editPool": "Enzympool bearbeiten",
    "enzymeInfo": "Enzyminformationen",
    "filterScheme": "Filterschema",
    "locate": "Lokalisieren",
    "matches": "→ {{count}} Treffer",
    "migratedSelection": "Migrierte Enzymauswahl",
    "noEnzymesAdded": "Noch keine Enzyme hinzugefügt",
    "noMatchingEnzymes": "Keine passenden Enzyme",
    "price": "Preis",
    "pricePerReaction": "Preis pro Reaktion",
    "properties": "Enzymatische Eigenschaften",
    "removeAll": "Alle entfernen",
    "removeFromList": "Aus aktueller Liste entfernen",
    "removeSelected": "Auswahl entfernen",
    "restoreDefault": "Standard wiederherstellen",
    "saveAsPreset": "Als Vorlage speichern...",
    "schemeNamePrompt": "Schemaname:",
    "selectAll": "Alle auswählen",
    "selectedInPool": "In Enzympool ausgewählt ({{count}})",
    "suppliers": "Anbieter",
    "toggleCutSitesView": "Ansicht für Enzyme mit/ohne Schnittstellen umschalten",
    "userCustom": "Benutzerdefiniert",
    "withCutSites": "Mit Schnittstellen",
    "withoutCutSites": "Ohne Schnittstellen"
  },
  "errorBoundary": {
    "details": "Technische Details",
    "fallbackMessage": "Ein unerwarteter Fehler ist aufgetreten",
    "reload": "Neu laden",
    "title": "Ein Problem ist aufgetreten"
  },
  "fastq": {
    "addAnnot": "Temporäre Annotation hinzufügen",
    "analyzeAnchorsHint": "Mit Anker = Schneidefenster unverändert; ohne Anker = Ankersequenzen an beiden Enden des Fensters entfernen, dann zählen.",
    "analyzeAnchorsLabel": "Anker-Modus",
    "analyzeAnchorsWith": "Mit Schneideanker (Anker an beiden Fensterenden behalten)",
    "analyzeAnchorsWithout": "Ohne Schneideanker (Anker an beiden Fensterenden entfernen)",
    "analyzeBack": "Erneut analysieren",
    "analyzeButton": "Sequenzanalyse",
    "analyzeCancel": "Analyse abbrechen",
    "analyzeCancelled": "Analyse abgebrochen",
    "analyzeCancelling": "Wird abgebrochen…",
    "analyzeConfirm": "Analyse starten",
    "analyzeCsvCount": "Häufigkeit",
    "analyzeCsvFrame": "+1-Rahmen-Aminosäuren",
    "analyzeCsvFrequency": "Frequenz (%)",
    "analyzeCsvLength": "Länge (bp)",
    "analyzeCsvRank": "Rang",
    "analyzeCsvSequence": "Sequenz",
    "analyzeDesc": "Ausgewählten Bereich neu scannen: Sequenzierqualität (Rohreads im Bereich) statistisch erfassen und durch Schneiden/Filtern erhaltene Sequenzen zusammenfassen – deduplizierte Sequenzen nach Schneidefenster (mit oder ohne Anker) zählen, Anzahl, Frequenz und +1-Rahmen-Aminosäuren ermitteln.",
    "analyzeDescNoTrim": "Kein Schneideanker gesetzt: nur Sequenzierqualität statistisch erfassen und HTML-Bericht erstellen, keine Deduplizierung und Sequenzzusammenfassung.",
    "analyzeExportCsvHtml": "CSV-Tabelle und HTML-Bericht exportieren",
    "analyzeExportFailed": "Export des Analyseberichts fehlgeschlagen",
    "analyzeExportHtml": "HTML-Bericht exportieren",
    "analyzeFailed": "Sequenzanalyse fehlgeschlagen",
    "analyzeHint": "Sequenzanalyse: Sequenzierqualität des ausgewählten Bereichs statistisch erfassen und durch Schneiden/Filtern erhaltene deduplizierte Sequenzen zusammenfassen (Anzahl/Frequenz/+1-Rahmen-Aminosäuren), CSV-Tabelle und HTML-Qualitätsbericht exportieren (ohne Schneiden nur Qualitätsbericht)",
    "analyzeHtmlAnchorEmpty": "Nicht gesetzt",
    "analyzeHtmlAnchorLeft": "Linker Anker (5′)",
    "analyzeHtmlAnchorMarkNote": "Farbige Abschnitte sind Schneideanker: Orange = linker Anker, Cyan = rechter Anker; bei +1-Rahmen-Aminosäuren werden Aminosäuren, deren Codon Ankerbasen enthält, ebenfalls markiert.",
    "analyzeHtmlAnchorRight": "Rechter Anker (3′)",
    "analyzeHtmlAnchorsLabel": "Schneideanker",
    "analyzeHtmlAnchorsNone": "Nicht geschnitten",
    "analyzeHtmlAppName": "GenePad",
    "analyzeHtmlBases": "Basen gesamt",
    "analyzeHtmlCount": "Häufigkeit",
    "analyzeHtmlCsvLink": "Vollständige Zusammenfassung siehe CSV-Tabelle",
    "analyzeHtmlCsvLinkNote": "(im selben Verzeichnis wie dieser Bericht, direkt mit Excel öffnbar)",
    "analyzeHtmlFailAnchor": "Anker nicht gefunden",
    "analyzeHtmlFailComplexity": "Geringe Komplexität",
    "analyzeHtmlFailLong": "Zu lang",
    "analyzeHtmlFailNBase": "Zu viele N-Basen",
    "analyzeHtmlFailNoOverlap": "Keine Überlappung (nicht assembliert)",
    "analyzeHtmlFailOverlapMismatch": "Zu viele Fehlpaarungen im Überlappungsbereich",
    "analyzeHtmlFailQuality": "Qualität nicht ausreichend",
    "analyzeHtmlFailShort": "Zu kurz",
    "analyzeHtmlFailed": "Filter nicht bestanden",
    "analyzeHtmlFilesTitle": "Sequenzierdateien",
    "analyzeHtmlFiltersLabel": "Read-Filter",
    "analyzeHtmlFiltersNone": "Nicht gesetzt",
    "analyzeHtmlFrame1": "+1-Rahmen-Aminosäuren",
    "analyzeHtmlFrequency": "Frequenz",
    "analyzeHtmlGc": "GC-Gehalt",
    "analyzeHtmlGenerated": "Erstellungszeit",
    "analyzeHtmlGeneratedBy": "Dieser Bericht wurde von {{app}} erstellt",
    "analyzeHtmlGroupR1": "R1",
    "analyzeHtmlGroupR2": "R2",
    "analyzeHtmlGroupTotal": "Gesamt",
    "analyzeHtmlLength": "Länge (bp)",
    "analyzeHtmlLoadedOf": "Diesmal teilweise geladen: {{loaded}} Reads geladen, vollständige Datei sollte {{total}} Reads enthalten",
    "analyzeHtmlLowQ": "Q<20",
    "analyzeHtmlMeanLength": "Mittlere Read-Länge",
    "analyzeHtmlMeanQ": "Mittlere Qualität",
    "analyzeHtmlN": "N-Gehalt",
    "analyzeHtmlPassed": "Filter bestanden",
    "analyzeHtmlPathLabel": "Quellpfad",
    "analyzeHtmlProcessed": "Gescannte Reads",
    "analyzeHtmlQ20to29": "Q20–29",
    "analyzeHtmlQ30": "Q≥30",
    "analyzeHtmlQualityDist": "Qualitätsverteilung (Q-Wert-Histogramm)",
    "analyzeHtmlQualityTitle": "Sequenzierqualitätsstatistik (Rohreads im Bereich)",
    "analyzeHtmlRank": "Rang",
    "analyzeHtmlReadLength": "Read-Länge",
    "analyzeHtmlReads": "Read-Anzahl",
    "analyzeHtmlResultTitle": "Analyseergebnis",
    "analyzeHtmlScopeFile": "Gesamte Datei",
    "analyzeHtmlScopeLabel": "Analysebereich",
    "analyzeHtmlScopeLoaded": "Nur aktuell geladene",
    "analyzeHtmlSequence": "Sequenz",
    "analyzeHtmlSkipped": "Ungültige Datensätze",
    "analyzeHtmlTitle": "Sequenzanalysebericht",
    "analyzeHtmlTopChartTitle": "Histogramm der Top-20-Häufigkeitssequenzen (nach Häufigkeit)",
    "analyzeHtmlTopHint": "Reads, die den Filter bestanden haben, werden bei vollständiger Sequenzübereinstimmung zu eindeutigen Sequenzen zusammengefasst, insgesamt {{total}} ({{sci}}), absteigend nach Häufigkeit sortiert, in der Tabelle die ersten {{top}}; Frequenz = Häufigkeit / Gesamtzahl der Reads, die den Filter bestanden haben.",
    "analyzeHtmlTopTitle": "Häufige Sequenzen Top {{top}}",
    "analyzeHtmlTotalUnknown": "Diesmal teilweise geladen: {{loaded}} Einträge geladen (Gesamtzahl der Dateien unbekannt)",
    "analyzeHtmlUnique": "Eindeutige Sequenzen (unique sequences)",
    "analyzeHtmlVersionLabel": "Version",
    "analyzeOpenFolder": "Ordner öffnen",
    "analyzeOpenFolderAskDesc": "Der Analysebericht wurde gespeichert unter:",
    "analyzeOpenFolderAskTitle": "Exportordner öffnen?",
    "analyzeProgressScan": "{{done}} / {{total}} gescannt",
    "analyzeProgressScanNoTotal": "{{done}} gescannt",
    "analyzeResultCounted": "Filter bestanden",
    "analyzeResultCountedHint": "Anzahl der Reads, die Richtungsnormalisierung, Trimmfenster und alle Read-Filter bestanden haben und in die Statistik der eindeutigen Sequenzen einfließen",
    "analyzeResultFailedPrefix": "Nicht bestanden:",
    "analyzeResultProcessed": "Gescannte Reads",
    "analyzeResultProcessedHint": "Anzahl der tatsächlich gescannten Reads im Analysebereich (bei Paired-End-Dateien zählt ein Paar als 1)",
    "analyzeResultProcessedPaired": "Gescannte Read-Paare",
    "analyzeResultUnique": "Eindeutige Sequenzen (unique sequences)",
    "analyzeResultUniqueHint": "Synonym zu unique sequences in der NGS-Analyse: Reads, die den Filter bestanden haben, werden bei vollständiger Sequenzübereinstimmung zusammengefasst; gleich lange Sequenzen mit identischer Base an jeder Position zählen als eine unique Sequenz. Diese Zahl ist die Gesamtzahl der unique Sequenzen; die Häufigkeit jeder einzelnen entspricht der Frequenz in der Berichtstabelle",
    "analyzeScopeFile": "Gesamte Datei (alle Reads)",
    "analyzeScopeLabel": "Analysebereich",
    "analyzeScopeLoaded": "Nur aktuell geladen ({{count}} Einträge)",
    "analyzeTitle": "Sequenzanalyse",
    "anchorLeftFeature": "Linker Anker",
    "anchorRightFeature": "Rechter Anker",
    "annotAaTip": "{{aa}} · {{codon}} · Spalte {{start}}–{{end}}",
    "annotCdsAa": "{{count}} aa",
    "annotCdsExt": "Leseraster-Erweiterungsbereich (zum Auswählen klicken)",
    "annotCdsNoStop": "Kein Stoppcodon gefunden, gestrichelte Linie bis zum Ende",
    "annotCdsStop": "Stoppcodon {{codon}} @ Spalte {{col}}",
    "annotHint": "Fügt der zusammengesetzten Sequenz der ausgewählten Zelle eine temporäre Feature-Annotation hinzu (wird nur in dieser Zelle angezeigt, nicht in die Datei geschrieben). Nach Auswahl einer Sequenz Rechtsklick „Temporäre lokale Annotation hinzufügen“ oder diesen Button klicken.",
    "annotRange": "Spalte {{start}}–{{end}}",
    "askModeDesc": "Mit welchem Sequenzierungstyp soll {{name}} geöffnet werden?",
    "askModeTitle": "Sequenzierungstyp",
    "consensus": "Assembly",
    "countMismatch": "R1/R2-Anzahl stimmt nicht überein, Paarung nach dem kürzeren Ende",
    "countingTotal": "Gesamtzahl wird gezählt…",
    "crossCursor": "Durchgehender Cursor",
    "crossCursorHint": "Wenn aktiviert, erstreckt sich der Cursor bei der Sequenzauswahl über das gesamte Fenster: Derselbe Spaltenbereich wird in mehreren Zellen gleichzeitig hervorgehoben (praktisch zum Vergleichen mehrerer Sequenzabschnitte), und beim vertikalen Scrollen bleibt der Cursor durchgehend sichtbar. Klicken auf leere Fläche löscht die Auswahl; Rechtsklick reduziert auf eine einzelne Zelle (nur bei einzelner Zelle gibt es ein Kontextmenü).",
    "ctxAddAnnot": "Temporäre lokale Annotation hinzufügen…",
    "ctxCopyConsensus": "Assembly-Sequenz kopieren",
    "ctxCopyR1": "R1-Sequenz kopieren",
    "ctxCopyR2": "R2-Sequenz kopieren",
    "ctxCopyRaw": "FASTQ-Originaltext kopieren",
    "ctxCopySelection": "Ausgewählte Sequenz kopieren ({{count}} bp)",
    "ctxDeleteAnnot": "Annotation löschen",
    "ctxEditAnnot": "Annotation bearbeiten…",
    "detectedMate": "Paarige Datei erkannt: {{name}} (bereits im Dateiauswahlfeld vorausgewählt)",
    "expandFull": "Vollständig anzeigen 100%",
    "expandMore10": "Weitere 10% anzeigen",
    "exportCancel": "Export abbrechen",
    "exportCancelled": "Export abgebrochen",
    "exportConfirm": "Exportieren",
    "exportContentLabel": "Exportinhalt",
    "exportContentMerged": "Assembly-Sequenz (einzelnes Ende, eine Datei)",
    "exportContentMergedHint": "Jedes Read-Paar wird durch Überlappungs-Assembly zu einer Sequenz zusammengeführt und exportiert (gleiche Logik wie die Assembly-Referenzzeile in der Ansicht, Überlappungsbereich von R1). Die Ausgabedatei heißt {Dateiname}_merged.fastq.gz. Paare ohne Überlappung werden durch Aneinanderhängen von R1 und revers-komplementärem R2 verbunden.",
    "exportContentPaired": "Paired-End (zwei Dateien R1 / R2)",
    "exportDesc": "Die aktuell geladenen {{count}} Reads (bei gesetzten Filtern nur die gefilterten Datensätze) werden als gzip-komprimierte FASTQ exportiert ({{files}}). Bitte Dateinamen eingeben und anschließend das Speicherverzeichnis wählen.",
    "exportDescFile": "Die gesamte Datei wird erneut gescannt, die aktuellen Trimm-/Filterbedingungen auf alle Reads angewendet (ohne Einstellungen werden alle Reads exportiert) und als gzip-komprimierte FASTQ exportiert ({{files}}). Bitte Dateinamen eingeben und anschließend das Speicherverzeichnis wählen.",
    "exportDone": "{{count}} Reads ({{files}}) nach {{dir}} exportiert",
    "exportFailed": "Export der getrimmten Daten fehlgeschlagen",
    "exportFilesMerged": "Assembly, einzelnes Ende",
    "exportHint": "Reads als gzip-komprimierte FASTQ-Dateien exportieren (Paired-End: zwei .fastq.gz für R1 und R2; Single-End: nur R1; bei Paired-End kann auch die assemblierte Single-End-Sequenz exportiert werden). Bei gesetzten Trimm-/Filterbedingungen werden nur die bestandenen Reads exportiert, andernfalls alle. Standardmäßig wird die gesamte Datei exportiert; es können auch nur die aktuell geladenen Reads exportiert werden.",
    "exportPh": "Dateiname (ohne Erweiterung)",
    "exportProgressCompress": "Komprimierung…",
    "exportProgressScan": "{{done}} / {{total}} verarbeitet",
    "exportProgressScanNoTotal": "{{done}} verarbeitet",
    "exportScopeFile": "Gesamte Datei (alle Reads)",
    "exportScopeFileReady": "Jetzt verfügbar",
    "exportScopeLabel": "Exportbereich",
    "exportScopeLoaded": "Nur aktuell geladen ({{count}} Einträge)",
    "exportScopeLoadedWaiting": "Filterung läuft, nach Abschluss verfügbar",
    "exportTitle": "Daten exportieren",
    "exportTrim": "Verarbeitete Sequenzen exportieren",
    "filterApply": "Filter anwenden",
    "filterAvgQual": "Durchschnittliche Qualität (0=Aus)",
    "filterComplexity": "Komplexitätsfilter",
    "filterComplexityShort": "Komplexität≥{{th}}",
    "filterComplexityTh": "Schwellenwert (0–1)",
    "filterHint": "Read-Filter im fastp-Stil, wird auf die getrimmten Reads angewendet und wirkt synchron auf Ansichtsfilter und Export: Bei Paired-End müssen beide Enden bestehen. Qualitätsfilter: Aussortieren, wenn der Anteil minderwertiger Basen (unter Schwellenwert) das Maximum überschreitet, die durchschnittliche Qualität zu niedrig ist oder zu viele N-Basen vorhanden sind. Längenfilter: nach dem Trimmen zu kurz/zu lang aussortieren. Komplexitätsfilter: aussortieren, wenn der Anteil benachbarter Basenunterschiede unter dem Schwellenwert liegt (geringe Komplexität).",
    "filterLabel": "Filter",
    "filterLength": "Längenfilter",
    "filterLengthMinShort": "Länge ≥ {{min}}",
    "filterLengthShort": "Länge {{min}}–{{max}}",
    "filterMaxLen": "Maximal (0=Aus)",
    "filterMinLen": "Minimal (bp)",
    "filterNBaseLimit": "N-Basen-Obergrenze",
    "filterNote": "Zuerst Trimmen, dann filtern; bei Paired-End müssen beide bestehen",
    "filterOverlap": "Overlap-Filter (Paired-End)",
    "filterOverlapMismatch": "Max. Fehlpaarungsrate im Overlap",
    "filterOverlapMismatchHint": "Paare, deren Fehlpaarungsrate im optimal platzierten Overlap diesen Wert überschreitet, werden komplett verworfen (Overlap muss hochgradig übereinstimmen); Standard 25% = Obergrenze der Assembly-Suche, d.h. keine zusätzliche Filterung",
    "filterOverlapMismatchShort": "Overlap-Fehlpaarung ≤ {{pct}}%",
    "filterPolyG": "polyG-Ende trimmen",
    "filterPolyGShort": "polyG ≥ {{n}}",
    "filterPolyMinLen": "Mindestlänge",
    "filterPolyX": "polyX-Ende trimmen",
    "filterPolyXShort": "polyX ≥ {{n}}",
    "filterQCutShort": "Gleitfenster ≥ Q{{q}}{{mode}}",
    "filterQualifiedQual": "Qualitätsschwelle (Q)",
    "filterQuality": "Qualitätsfilterung",
    "filterQualityCut": "Gleitfenster-Qualitätstrimmung",
    "filterQualityCutFront": "5′-Ende",
    "filterQualityCutMeanQ": "Mittlere Q ≥",
    "filterQualityCutRight": "Aggressiver Modus",
    "filterQualityCutRightHint": "Stoppt beim ersten Fenster mit niedriger Qualität und behält die hochwertigen Basen im Fenster; ersetzt bei Aktivierung das 3′-Ende-Trimmen (fastp -2/--cut_right)",
    "filterQualityCutTail": "3′-Ende",
    "filterQualityCutWindow": "Fenster (bp)",
    "filterQualityShort": "Qualität ≥ {{q}}",
    "filterRequireOverlap": "Nur erfolgreich assemblierte Paare behalten",
    "filterRequireOverlapHint": "Paare, bei denen kein Overlap gefunden wird und die direkt Ende-zu-Ende verbunden werden, komplett verwerfen (entspricht dem Standardverhalten von fastp --merge, das nur erfolgreich assemblierte Reads ausgibt)",
    "filterRequireOverlapShort": "Nur assemblierte Paare behalten",
    "filterReset": "Zurücksetzen",
    "filterTitle": "Read-Filter",
    "filterTrim": "Festes Längen-Trimmen",
    "filterTrimFront1": "R1-Anfang",
    "filterTrimFront2": "R2-Anfang",
    "filterTrimFrontAbbr": "Anf.",
    "filterTrimMaxLen": "Kürzungslänge (0=Aus)",
    "filterTrimMaxLen1": "R1-Kürzung (0=Aus)",
    "filterTrimMaxLen2": "R2-Kürzung (0=Aus)",
    "filterTrimMaxLenHint": "Nach allen anderen Trimmvorgängen die Reads auf diese Länge kürzen (fastp --max_len; 0=keine Kürzung)",
    "filterTrimShort": "{{v}}",
    "filterTrimTail1": "R1-Ende",
    "filterTrimTail2": "R2-Ende",
    "filterTrimTailAbbr": "Ende",
    "filterUnqualifiedPct": "Obergrenze unqualifiziert (%)",
    "footerLoadedOf": "{{loaded}} / {{total}} geladen",
    "footerReads": "{{count}} Reads",
    "globalSearchCapped": "Anzeigegrenze erreicht, nur die ersten {{count}} Treffer werden aufgelistet",
    "globalSearchHint": "Globale Suche (geladene Reads): DNA = Suchstring und dessen reverses Komplement werden in der assemblierten Sequenz und den R1/R2-Zeilen jedes Reads gesucht; AA = assemblierte Sequenz wird in 6 Leserastern translatiert und abgeglichen. Enter startet die Suche, ←/→ oder Schaltflächen springen zum nächsten Treffer; der aktuelle Treffer wird zur Auswahl und kann direkt per Rechtsklick kopiert oder als Trim-Anker gesetzt werden.",
    "globalSearchPlaceholderAa": "Aminosäure-6-Raster-Suche in geladenen Reads (Enter)…",
    "globalSearchPlaceholderDna": "Geladene Reads durchsuchen (Enter)…",
    "globalSearchSearching": "Suche läuft…",
    "hideQual": "Sequenzierqualität ausblenden",
    "lastMate": "Letzte Paarungsdatei: {{name}} (wird bei Paired-End direkt wiederverwendet)",
    "loadAll": "Alle laden",
    "loadMore10": "Weitere 10% laden",
    "loadMoreHint": "Fügt jedes Mal 10% der Gesamtanzahl der Datei hinzu (mindestens 1 Read); wiederholt anklickbar, bis alles geladen ist. Für die Sequenzanalyse müssen nicht alle Reads geladen sein – die „Sequenzanalyse“ durchsucht standardmäßig die gesamte Datei.",
    "loading": "Analysiere · {{count}} Reads geladen",
    "mateEmptyError": "Paarungsprüfung fehlgeschlagen: Aus der Datei konnten keine gültigen Reads extrahiert werden ({{reason}}). Bitte erneut auswählen.",
    "mateMismatchError": "Paarungsprüfung fehlgeschlagen: Die erste Read-ID der beiden Dateien stimmt nicht überein ({{r1}} vs {{r2}}). Sie gehören nicht zum selben Paired-End-Datensatz. Bitte das andere Ende erneut auswählen.",
    "modePaired": "Paired-End-Sequenzierung",
    "modePairedPickHint": "R2 manuell auswählen",
    "modePairedReuseHint": "Letzte Paarung direkt verwenden",
    "modeSingle": "Nanopore/Single-End-Sequenzierung",
    "multiAutoPair": "Automatisch zuordnen",
    "multiAutoPairDone": "{{count}} Paare automatisch anhand der ersten Read-ID zugeordnet, Rest bleibt Single-End",
    "multiAutoPairFailed": "Automatische Zuordnung fehlgeschlagen, bitte manuell paaren",
    "multiAutoPairNone": "Keine automatisch zuordenbaren Kombinationen gefunden, bitte manuell paaren",
    "multiAutoPairing": "Zuordnung läuft…",
    "multiPairCount": "Paar {{index}}",
    "multiPairDesc": "Die folgenden NGS-Dateien werden standardmäßig alle als Single-End geöffnet; ziehen Sie die zu paarenden Enden nacheinander auf die rechte Seite, um ein Paar zu bilden (zuerst gezogene Datei ist R1). Bei Abbruch werden diese Dateien nicht geöffnet.",
    "multiPairDropR1": "R1-Datei hierher ziehen…",
    "multiPairEmptyHint": "Dateien hierher ziehen, zwei Dateien bilden ein Paar",
    "multiPairIncomplete": "Unvollständige Paarung vorhanden: Bitte die andere Enddatei hineinziehen oder die bereits hineingezogene Datei zurück nach links ziehen",
    "multiPairNew": "Neues Paar: Datei als R1 hineinziehen",
    "multiPairTitle": "NGS-Sequenzdateien paaren",
    "multiPairWaiting": "Andere Enddatei hineinziehen…",
    "multiPairedTitle": "Paired-End-Paarung",
    "multiPrefillAndAutoNote": "{{prefill}} Paare aus der letzten Verwendung vorausgefüllt, zusätzlich {{count}} Paare automatisch zugeordnet",
    "multiPrefillNote": "{{count}} Paare aus der letzten Verwendung vorausgefüllt",
    "multiSingleEmptyHint": "Alle Dateien sind bereits gepaart",
    "multiSingleTitle": "Einzelsträngig öffnen",
    "multiValidating": "Paarung wird überprüft…",
    "noOverlap": "Keine Überlappung gefunden, Ende-zu-Ende",
    "overlap": "Überlappung {{len}} bp · Übereinstimmung {{pct}}%",
    "paired": "Paired-End-Sequenzierung",
    "plainFileHint": "Diese FASTQ-Datei ist unkomprimierter Klartext. GenePad kann .fastq.gz/.fq.gz komprimierte Dateien direkt öffnen, nächstes Mal ist keine manuelle Dekomprimierung nötig.",
    "plainFileHintTitle": "Keine Dekomprimierung nötig",
    "qualDesc": "FASTQ-Sequenzqualitätsbalken (Farbcodierung nach Q-Wert: ≥30 grün / 20–29 bernstein / <20 rot); nach dem Ausblenden werden die Qualitätszeilen in jeder Zelle eingeklappt",
    "rawToggle": "Rohdaten",
    "readLength": "Leselänge",
    "reads": "Anzahl Reads",
    "reverseReads": "Sequenz umkehren",
    "reverseReadsHint": "Die sichtbare einzeilige Sequenz (Einzelstrang-Read oder aktuelle Zeile bei ausgeblendetem Paar-Read) vollständig als reverse Komplementärsequenz anzeigen: Basen komplementär in umgekehrter Reihenfolge, Qualität umgekehrt. Nach Aktivierung der Schnittrichtungs-Erkennung werden bereits normalisierte Reads auf Basis ihres aktuellen Zustands erneut umgekehrt; Auswahl/temporäre Markierungen/Suche werden gemäß neuer Richtung neu berechnet (temporäre Markierungen und Suche werden gelöscht); Export/Zusammenfassung bleiben unberührt.",
    "rfAaTip": "{{aa}} · {{codon}} · Spalte {{col}} · Rahmen {{frame}}",
    "rfHideButton": "Leseraster ausblenden",
    "rfHint": "Für jede Zelle die konsensierte Sequenz (Paired-End-Konsensus / Einzelstrang R1) gemäß dem gewählten Leseraster als Sechs-Rahmen-Translation anzeigen: Vorwärtsrahmen direkt translatiert, Rückwärtsrahmen als reverse Komplementärsequenz translatiert; Aminosäurebuchstaben sind auf die mittlere Base des Codons ausgerichtet, Startcodons grün, Stoppcodons rot (gleiche Darstellung wie im Leseraster der Plasmid-Sequenzansicht).",
    "rfShowButton": "Leseraster anzeigen",
    "rfStartSuffix": "Startcodon",
    "rfStopSuffix": "Stoppcodon",
    "sameFileError": "Die ausgewählte Datei für das andere Ende ist identisch mit der Hauptdatei. Bitte erneut auswählen.",
    "searchClose": "Suche schließen",
    "searchCount": "{{idx}} / {{count}}",
    "searchHintAa": "Aminosäuresuche: Die konsensierte Sequenz wird in allen 6 Leserastern (einschließlich reverser Komplementärrahmen) translatiert und durchsucht; es werden nur die Rahmenzeilen mit Treffern angezeigt, und die entsprechenden Basen werden gemäß Rahmenrichtung hervorgehoben.",
    "searchHintDna": "DNA-Suche: In der konsensierten Sequenz der aktuellen Zelle sowie in den Zeilen R1/R2 gleichzeitig nach Basensequenzen suchen (sowohl die Anfrage als auch ihr reverses Komplement werden gesucht).",
    "searchNext": "Nächster Treffer",
    "searchNoMatch": "Kein Treffer",
    "searchPlaceholder": "Basensequenz…",
    "searchPlaceholderAa": "Aminosäuren (z. B. MGH…) oder mit *",
    "searchPrev": "Vorheriger Treffer",
    "setAsTrim": "Als Schnittanker setzen…",
    "showMate": "Paar-Read anzeigen (R2)",
    "showQual": "Sequenzqualität anzeigen",
    "single": "Einzelstrang-Sequenzierung",
    "skipped": "{{count}} unvollständige Datensätze übersprungen",
    "swapReads": "R1/R2 tauschen",
    "swapReadsHint": "Paired-End-Anzeige tauschen: R2 wird als Referenzstrang für die erneute Überlappungsassemblierung verwendet, die konsensierte Sequenz wechselt in die Richtung des Antisense-Strangs; obere Zeile zeigt die R2-Originalsequenz (5′→3′), untere Zeile zeigt R1 in umgekehrter Reihenfolge, die Bezeichnungen werden getauscht. Nach Aktivierung der Schnittrichtungs-Erkennung können die normalisierten Richtungen der einzelnen Reads voneinander abweichen (R1/R2 und R2/R1 gemischt); dieser Schalter tauscht Zelle für Zelle auf Basis des jeweiligen aktuellen Zustands; Auswahl/temporäre Markierungen/Suche werden gemäß neuer Richtung neu berechnet (temporäre Markierungen und Suche werden gelöscht); Export/Zusammenfassung bleiben unberührt.",
    "trimApply": "Schneiden",
    "trimClear": "Diesen Anker löschen",
    "trimDone": "Bestanden {{pass}} / {{total}}",
    "trimHint": "Linken/rechten Schnittanker auf der konsensierten Sequenz positionieren; die Sequenz zwischen linkem Ankerstart und rechtem Ankerende (einschließlich Anker) wird beibehalten. Automatische Erkennung der Sequenzrichtung: Reads, die zum Anker gegenläufig sind, werden bei Paired-End durch R1/R2-Tausch, bei Einzelstrang durch reverse Komplementierung ausgerichtet und dann geschnitten (die Sequenzrichtung von Ligase-Adapter-Bibliotheken ist unbestimmt; bei einem einzelnen Anker wird die Richtung anhand des „Anker-Treffers in Originalausrichtung“ bestimmt). An beiden Enden des Fensters werden Markierungsleisten für „linker/rechter Anker“ hinzugefügt. Wenn ein Anker mehrere Positionen hat, wird für den linken Anker die am weitesten 5′ gelegene und für den rechten Anker die am weitesten 3′ gelegene Position gewählt; Reads, bei denen ein gesetzter Anker nicht gefunden wird, werden vollständig herausgefiltert; das Eigenschaftenfenster zeigt die Anzahl der bestandenen Reads.",
    "trimLabel": "Schnittanker",
    "trimLeftPh": "Linkes Ende (5′)",
    "trimMirrored": "Spiegelanzeige aktiv",
    "trimMirroredHint": "Der Schalter „R1/R2 tauschen“ oder „Sequenz umkehren“ ist aktiviert; die aktuelle Anzeige ist die Spiegelung der normalisierten Richtung. Erneutes Anwenden/Löschen von Schnitt oder Filterung setzt diesen Schalter zurück.",
    "trimProgress": "Filterung läuft · Bestanden {{pass}} / Bewertet {{done}}",
    "trimRightPh": "Rechtes Ende (3′)",
    "trimSideDesc": "Das ausgewählte Fragment von {{count}} bp als Schnittanker für welches Ende festlegen?",
    "trimSideLeft": "Linkes Ende (5′)",
    "trimSideReverse": "Reverse Komplement",
    "trimSideReverseHint": "Das Fragment an Ort und Stelle reverse komplementieren und dann als Anker setzen (Ankerrichtung wird gemäß Eingaberichtung bestimmt; Antisense-Strang-Fragmente bitte zuerst umkehren)",
    "trimSideRight": "Rechtes Ende (3′)",
    "trimSideTitle": "Position des Schnittankers",
    "truncated": "Datei zu groß, nur die ersten {{count}} Reads geladen",
    "truncatedAnalyzeNote": "Für die Sequenzanalyse muss nicht die gesamte Datei geladen werden; „Sequenzanalyse“ analysiert standardmäßig die gesamte Datei",
    "truncatedTotal": "Datei zu groß, die ersten {{count}} von insgesamt {{total}} Reads geladen",
    "vizToggle": "Grafische Ansicht"
  },
  "fastqProperties": {
    "bases": "Basen gesamt",
    "computing": "Statistik wird berechnet…",
    "encoding": "Qualitätskodierung",
    "fileR1": "Datei (R1)",
    "fileR2": "Paarige Datei (R2)",
    "filterFail_anchor": "Anker nicht gefunden {{count}}",
    "filterFail_complexity": "Komplexität zu gering {{count}}",
    "filterFail_lengthLong": "Länge zu groß {{count}}",
    "filterFail_lengthShort": "Länge zu kurz {{count}}",
    "filterFail_nBase": "Zu viele N-Basen {{count}}",
    "filterFail_noOverlap": "Keine Überlappung {{count}}",
    "filterFail_overlapMismatch": "Überlappungsfehlpaarung zu hoch {{count}}",
    "filterFail_quality": "Qualität unzureichend {{count}}",
    "gcContent": "GC-Gehalt",
    "group": "Statistikgruppe",
    "groupTotal": "Gesamt",
    "meanQuality": "Durchschnittliche Qualität",
    "meanQualityTip": "Phred-Qualitätswert (Phred+33-Dekodierung): Je höher der Q-Wert, desto zuverlässiger die Base. Fehlerrate = 10^(-Q/10) – Q20 = 1 %, Q30 = 0,1 %, Q40 = 0,01 %. Bei Illumina-Daten liegt der durchschnittliche Q-Wert üblicherweise bei 30–37, und die Qualität nimmt zum Read-Ende hin natürlich ab. Ein durchschnittlicher Q-Wert ≥ 30 bedeutet eine hochwertige Sequenzierung; einzelne Basen mit niedrigem Q-Wert oder eine Abnahme am Ende sind normal und kein Zeichen für ein Sequenzierungsversagen.",
    "meanReadLength": "Durchschnittliche Read-Länge",
    "mode": "Sequenzierungstyp",
    "nContent": "N-Gehalt",
    "qualityDist": "Qualitätsverteilung",
    "readLength": "Read-Länge",
    "title": "FASTQ-Eigenschaften",
    "trimFilter": "Trimmen/Filtern",
    "trimFilterDone": "Bestanden {{pass}} / {{total}}",
    "trimFilterEval": "Bestanden {{pass}} (bewertet {{done}}/{{total}})"
  },
  "feature": {
    "actions": "Aktionen",
    "add": "Hinzufügen",
    "addFeature": "Annotation hinzufügen",
    "addSegment": "+ Segment hinzufügen",
    "cancel": "Abbrechen",
    "color": "Farbe",
    "colorPlaceholder": "#RRGGBB",
    "customKeyPlaceholder": "Qualifier-Name",
    "customQualifier": "Benutzerdefiniert…",
    "derivedRange": "Automatisch aus Segmenten berechnet",
    "direction": "Richtung",
    "editFeature": "Annotation bearbeiten",
    "end": "Ende",
    "featureName": "Annotationsname",
    "forward": "→ Vorwärts",
    "hide": "Ausblenden",
    "hideInMap": "In Karte und Sequenz ausblenden",
    "hideQualifiers": "Qualifier einklappen",
    "length": "Länge",
    "name": "Name",
    "noFeatures": "Keine Annotation gefunden",
    "noQualifiers": "Keine Qualifier",
    "none": "— Keine",
    "note": "Notiz",
    "notePlaceholder": "Zusätzliche Notiz...",
    "position": "Position",
    "qualifierCount": "Qualifier ({{count}} Einträge)",
    "qualifierHint": "Auswählen, bearbeiten, speichern",
    "qualifierValuePlaceholder": "Wert für {{key}}",
    "qualifiers": "Qualifier",
    "range": "Bereich",
    "removeSegment": "Segment entfernen",
    "reverse": "← Rückwärts",
    "save": "Speichern",
    "search": "Annotation suchen...",
    "segmentColor": "Farbe",
    "segmentName": "Name",
    "segmentNavNext": "Zum nächsten Segment springen",
    "segmentNavPrev": "Zum vorherigen Segment springen",
    "segments": "Segmente",
    "selectQualifierFirst": "Bitte zuerst einen Qualifier auswählen",
    "show": "Anzeigen",
    "showAminoAcids": "Aminosäuren anzeigen",
    "showInMap": "In Karte und Sequenz anzeigen",
    "showInSequence": "Annotation in Sequenzansicht anzeigen",
    "showQualifiers": "Qualifier ausklappen",
    "showingCount": "{{count}} / {{total}} Annotationen angezeigt",
    "start": "Start",
    "strand": "Strang",
    "type": "Typ"
  },
  "featureDeleteChoice": {
    "message": "Der ausgewählte Bereich ({{count}} bp) stimmt vollständig mit der Annotation „{{name}}“ überein. Möchten Sie nur den Annotationseintrag löschen oder diese Sequenz samt Annotation löschen?",
    "messageMultiple": "Der ausgewählte Bereich ({{count}} bp) stimmt vollständig mit {{featureCount}} Annotationen ({{names}}) überein. Möchten Sie nur die Annotationseinträge löschen oder diese Sequenz samt Annotationen löschen?",
    "selectedFeatureOnly": "Nur „{{name}}“ löschen",
    "selectedHint": "Sie haben „{{name}}“ ausgewählt.",
    "sequenceAndFeature": "Sequenz und Annotation löschen",
    "title": "Annotation löschen"
  },
  "footer": {
    "bp": "bp",
    "circular": "Zirkulär",
    "gc": "GC:",
    "linear": "Linear",
    "plasmidTagsFailed": "Tag-Aktualisierung fehlgeschlagen",
    "plasmidTagsSkipped": "Automatische Tags deaktiviert",
    "plasmidTagsUpdated": "Plasmid-Tags aktualisiert",
    "selected": "Ausgewählt:",
    "updatingPlasmidInfo": "Plasmid-Informationen werden aktualisiert"
  },
  "historyPanel": {
    "autoCollapsed": "Tiefe Historie automatisch eingeklappt",
    "cancel": "Abbrechen",
    "circular": "Zirkulär",
    "classicLayout": "Klassisches Layout",
    "classicTopLeft": "Klassisches Layout (aktuell oben links)",
    "clear": "Verlauf löschen",
    "clearConfirm": "Gesamten Verlauf wirklich löschen?",
    "close": "Verlaufsbereich schließen",
    "collapseBranchHint": "Zum Einklappen klicken",
    "confirm": "Bestätigen",
    "current": "Aktueller Zustand",
    "empty": "Noch kein Verlauf vorhanden",
    "emptyDesc": "Sequenzbearbeitungen werden hier automatisch aufgezeichnet; nach dem Speichern als .gen- oder .dna-Datei können Sie hier den Verlauf der gespeicherten Versionen einsehen.",
    "expandBranchHint": "Klicken, um +{{count}} Verlaufseinträge zu erweitern",
    "expandHint": "Knoten anklicken, um weiteren Verlauf zu erweitern",
    "exportFailed": "Export des Verlaufsbilds fehlgeschlagen",
    "exportImage": "Verlaufsbild exportieren",
    "linear": "Linear",
    "loadFailed": "Bearbeitungsverlauf konnte nicht gelesen werden; auf die Bearbeitungen dieser Sitzung zurückgestuft.",
    "loading": "Bearbeitungsverlauf wird gelesen…",
    "newestAtBottom": "Neueste unten",
    "nodeCount": "{{count}} Knoten",
    "op": {
      "amplifyFragment": "PCR-Amplifikation",
      "changeMethylation": "Methylierung ändern",
      "changePhosphorylation": "Phosphorylierung ändern",
      "changeStrandedness": "Strängigkeit ändern",
      "changeTopology": "Topologie ändern",
      "digest": "Restriktionsverdau",
      "flip": "Reverse Komplementierung",
      "gatewayBPCloning": "Gateway BP",
      "gatewayLRCloning": "Gateway LR",
      "gibsonAssembly": "Gibson-Assembly",
      "goldenGateAssembly": "Golden-Gate-Assembly",
      "inFusionCloning": "In-Fusion-Klonierung",
      "insert": "Einfügen",
      "insertFragment": "Fragment einfügen",
      "insertFragments": "Mehrfragment-Insertion",
      "invalid": "Ursprungsdatei",
      "ligateFragments": "Fragmentligation",
      "makeDna": "DNA neu erstellen",
      "makeProtein": "Protein neu erstellen",
      "makeRna": "RNA neu erstellen",
      "newFileFromSelection": "Auswahl als neue Datei speichern",
      "primerDirectedMutagenesis": "Gerichtete Mutagenese",
      "remove": "Löschen",
      "replace": "Ersetzen",
      "restrictionCloning": "Restriktionsklonierung",
      "taCloning": "TA-Klonierung",
      "topoCloning": "TOPO-Klonierung",
      "unknown": "Aktion"
    },
    "openSnapshot": "Diesen Schnappschuss in neuem Tab/Fenster öffnen",
    "openSnapshotShort": "Schnappschuss öffnen",
    "primers": "Primer",
    "prune": "Diesen Zweig abschneiden",
    "pruneAdvice": "Der Verlauf umfasst mehr als 50 Einträge; ein Abschneiden wird empfohlen",
    "pruneConfirm": "„{{name}}“ und den gesamten Verlauf der Eingaben auf derselben Ebene abschneiden?",
    "snapshotCount": "{{count}} Schnappschüsse",
    "snapshotHint": "Auf das Schnappschussbild klicken, um ein neues Dokument zu öffnen",
    "snapshotRestoreFailed": "Schnappschuss konnte nicht in eine temporäre Datei geschrieben werden; es wurde kein Dokument geöffnet.",
    "title": "Verlauf"
  },
  "map": {
    "allFeatures": "Alle",
    "circularMap": "Zur ringförmigen Ansicht wechseln",
    "cuts": "Schnittstellen",
    "cutsDisabled": "Zu viele Schnittstellen ({{count}}), Anzeige deaktiviert, um Leistungseinbußen der Karte zu vermeiden. Bitte Enzympool verkleinern oder Filter anpassen.",
    "editDisplayName": "Anzeigenamen bearbeiten",
    "ellipseWidthAxis": "Ziehen Sie die Griffe an beiden Seiten, um die Breite des Beschriftungsrings anzupassen; die Standardgrenze kann überschritten werden.",
    "enzymes": "Restriktionsenzyme",
    "features": "Annotationstabelle",
    "gene": "Karte",
    "hideCuts": "Schnittstellen ausblenden ({{count}})",
    "hideEnzymeFilterRow": "Enzympool-/Filterzeile einklappen",
    "hideLabels": "Beschriftungen ausblenden ({{count}})",
    "hidePrimers": "Primer ausblenden ({{count}})",
    "labels": "Beschriftungen",
    "linearMap": "Zur linearen Ansicht wechseln",
    "orfHide": "Ausblenden",
    "orfPredict": "Vorhersagen",
    "primers": "Primertabelle",
    "resetView": "Ansicht zurücksetzen",
    "rfHide": "Leseraster ausblenden",
    "rfShow": "Leseraster anzeigen",
    "showAllFeatures": "Alle Annotationen anzeigen",
    "showCuts": "Schnittstellen anzeigen ({{count}})",
    "showEnzymeFilterRow": "Enzympool-/Filterzeile ausklappen",
    "showLabels": "Beschriftungen anzeigen ({{count}})",
    "showPrimers": "Primer anzeigen ({{count}})",
    "showTwoRings": "Nur zwei Ringe anzeigen"
  },
  "orf": {
    "add": "Hinzufügen",
    "cancel": "Abbrechen",
    "customCodon": "Benutzerdefiniertes Codon",
    "description": "Einstellungen für die Vorhersage offener Leseraster konfigurieren.",
    "forward": "Vorwärts (+)",
    "hideReadingFrames": "Leseraster ausblenden",
    "minORFLength": "Minimale ORF-Länge (Aminosäuren)",
    "noCodon": "Bitte mindestens ein Startcodon auswählen",
    "reverse": "Rückwärts (-)",
    "show": "Anzeigen",
    "showReadingFrames": "Leseraster anzeigen",
    "startCodonMode": "Startcodon",
    "startCodons": "Startcodons",
    "strandDirection": "Strangrichtung",
    "title": "ORF-Vorhersage"
  },
  "plasmidLibrary": {
    "about": "Die Gen-Dateibibliothek zeichnet automatisch alle Plasmiddateien auf, die du in diesem Programm geöffnet hast. Du kannst auch über die Schaltfläche „Datei hinzufügen“ manuell Dateien hinzufügen. Die Einträge in der Bibliothek sind reine Indexinformationen; deine Originaldateien werden weder kopiert noch verändert.",
    "addFile": "Datei hinzufügen",
    "addTagPlaceholder": "Tag eingeben, Enter zum Hinzufügen",
    "addToProject": "Zu Projekt hinzufügen",
    "addToProjectEmpty": "Keine Projekte vorhanden. Bitte zuerst links unter „Dateiverwaltung“ ein neues erstellen.",
    "aiSetupConfigure": "KI konfigurieren",
    "aiSetupDismiss": "Nicht mehr anzeigen",
    "aiSetupHint": "KI noch nicht konfiguriert. Nach der Konfiguration kannst du den KI-Assistenten nutzen und beim Scannen automatisch Datei-Tags generieren lassen.",
    "batchCopy": "In Ordner kopieren",
    "batchDelete": "Einträge entfernen",
    "batchDeleteConfirm": "Möchtest du die ausgewählten {{count}} Einträge wirklich aus der Bibliothek entfernen? (Die Originaldateien werden nicht gelöscht.)",
    "batchRefresh": "KI-Stapelaktualisierung",
    "batchRefreshAll": "Alle neu generieren",
    "batchRefreshMissing": "Nur Einträge ohne Tags aktualisieren",
    "batchRefreshSubmitted": "{{count}} Plasmide zur Hintergrundgenerierung übermittelt. Nach Abschluss wird automatisch aktualisiert.",
    "batchRefreshing": "Stapelgenerierung läuft …",
    "belongingProjects": "Zugehörige Projekte",
    "cleanupMissing": "Fehlende Einträge bereinigen",
    "cleanupMissingConfirm": "Möchtest du die {{count}} Einträge, deren Dateien fehlen, wirklich aus der Bibliothek entfernen? (Die Originaldateien werden nicht gelöscht.)",
    "clearTags": "Filter zurücksetzen ({{count}})",
    "columns": {
      "lastOpened": "Zuletzt geöffnet",
      "name": "Dateiname",
      "path": "Pfad",
      "tags": "Tags"
    },
    "contextOpen": "Öffnen",
    "contextOpenFolder": "Übergeordneten Ordner öffnen",
    "contextOpenWith": "Mit anderer Anwendung öffnen",
    "contextOpenWithNone": "Keine geeignete Anwendung gefunden",
    "contextRemove": "Aus Dateibibliothek entfernen",
    "copyPath": "Pfad kopieren",
    "createTag": "Tag „{{tag}}“ erstellen",
    "deselectAll": "Auswahl aufheben",
    "detailMissing": "Die Datei, auf die dieser Eintrag verweist, existiert nicht auf dem Datenträger. Der Pfad wurde möglicherweise verschoben oder gelöscht; der Eintrag bleibt in der Bibliothek erhalten.",
    "empty": "Keine passenden Plasmide",
    "emptyHint": "Die Bibliothek ist leer. Klicke auf „Ordner scannen“, wähle ein Verzeichnis aus, und das Programm durchsucht es rekursiv nach Plasmiddateien und nimmt sie in die Bibliothek auf.",
    "fileManager": {
      "addedToProject": "{{count}} Dateien zu „{{name}}“ hinzugefügt",
      "collapse": "Dateiverwaltung einklappen",
      "createConfirm": "Erstellen",
      "createdProject": "Projekt „{{name}}“ erstellt",
      "deleteConfirm": "„{{name}}“ sowie alle Unterordner und darin enthaltenen Dateieinträge löschen? Bibliothekseinträge und Quelldateien werden nicht gelöscht.",
      "deleteFolder": "Projektordner löschen",
      "deletedProject": "Projekt „{{name}}“ gelöscht",
      "dragHint": "Klicke auf einen Projektordner, um die Liste zu filtern; ziehe Dateien von rechts (Mehrfachauswahl per Kontrollkästchen möglich) auf einen Projektordner, um sie zuzuordnen, oder wähle mehrere aus und klicke auf „Zu Projekt hinzufügen“.",
      "emptyPaths": "Keine Dateien in der Bibliothek. Nach dem Scannen eines Ordners oder dem Öffnen von Dateien werden sie hier nach ihrem ursprünglichen Pfad angezeigt.",
      "emptyProjects": "Noch keine Projekte vorhanden. Klicke oben auf „Neues Projekt“, um eines zu erstellen.",
      "expand": "Dateiverwaltung ausklappen",
      "fileCount": "{{count}} Dateien",
      "nameHint": "Projektordner dienen dazu, Dateien nach Projekten zu ordnen. Eine Datei kann zu mehreren Projekten gehören.",
      "namePlaceholder": "Ordnernamen eingeben …",
      "nameRequired": "Name darf nicht leer sein",
      "newProject": "Neues Projekt",
      "newSubfolder": "Neues Unterprojekt",
      "parentHint": "Erstellt ein Unterprojekt unter „{{path}}“.",
      "removedFromProject": "{{count}} Dateien aus „{{name}}“ entfernt",
      "renameConfirm": "Umbenennen",
      "renameFolder": "Umbenennen",
      "renamedProject": "Umbenannt in „{{name}}“",
      "rootAll": "Alle Dateien",
      "rootProjects": "Alle Projekte",
      "tabPaths": "Ursprünglicher Pfad",
      "tabProjects": "Nach Projekt",
      "teamShared": "Teamfreigabe",
      "teamSharedHint": "Teamfreigabe: Dateien im öffentlichen Ordner des Teamservers. Klicke, um sie zu durchsuchen und in die Bibliothek herunterzuladen.",
      "title": "Dateiverwaltung",
      "unassigned": "Nicht zugeordnet",
      "unassignedHint": "Nicht zugeordnet: Dateien, die automatisch keinem Projekt zugewiesen sind."
    },
    "fileMissing": "Datei fehlt",
    "fileMissingDisabled": "Datei existiert nicht und kann nicht geöffnet werden",
    "fileName": "Dateiname",
    "filePath": "Pfad",
    "folderFilterDir": "Ordner: {{name}}",
    "folderFilterProject": "Projekt: {{name}}",
    "infoPanel": {
      "collapse": "Detailbereich einklappen",
      "expand": "Detailbereich ausklappen",
      "title": "Details und Tags"
    },
    "matchAll": "Alle Bedingungen erfüllen",
    "missingCount": "{{count}} Dateien fehlen",
    "noSelection": "Wähle links ein Plasmid aus, um Details anzuzeigen",
    "notInAnyProject": "Gehört zu keinem Projekt",
    "openInFolder": "Im Ordner anzeigen",
    "openInProgram": "In diesem Programm öffnen",
    "plasmidCount": "{{count}} von {{total}}",
    "regenerateTags": "Tags mit KI generieren",
    "removeRecord": "Eintrag entfernen (Quelldatei wird nicht gelöscht)",
    "removeTag": "Tag entfernen",
    "scanDirectory": "Ordner scannen",
    "scanResult": "{{scanned}} Dateien gescannt, {{added}} hinzugefügt, {{unchanged}} unverändert übersprungen, {{pending}} werden im Hintergrund analysiert und mit Tags versehen.",
    "scanning": "Wird gescannt...",
    "searchPlaceholder": "Nach Dateiname oder Tag suchen...",
    "selectAll": "Alle auswählen",
    "selectItem": "{{name}} auswählen",
    "selectedCount": "{{count}} ausgewählt",
    "tagCloud": "Alle Tags",
    "tagCloudEmpty": "Noch keine Tags vorhanden. Nach dem Scannen eines Ordners oder der KI-Generierung erscheinen sie hier.",
    "tagCloudHint": "{{tag}}: in {{count}} Plasmiden vorhanden (zum Filtern klicken)",
    "teamBackToMembers": "Zurück zur Mitgliederliste",
    "teamBrowseFile": "Datei durchsuchen",
    "teamCancelRequest": "Zurückziehen",
    "teamCenterButton": "Team",
    "teamCenterDescription": "Eingegangene Dateianfragen bearbeiten, gesendete Anfragen verfolgen, von Mitgliedern bereitgestellte Dateien herunterladen.",
    "teamCenterTitle": "Team-Anfragenzentrum",
    "teamConflictCount": "{{count}} Dateien stehen im Konflikt mit der Serverversion. Bitte wählen Sie für jede Datei aus, welche Version behalten werden soll.",
    "teamConflictKeepBoth": "Beide behalten",
    "teamConflictKeepBothHint": "Serverversion als lokale Kopie „xxx (server)“ speichern und dann die Serverversion mit der lokalen Version überschreiben",
    "teamConflictKeepMine": "Meine Version überschreiben",
    "teamConflictKeepMineHint": "Serverversion mit der lokalen Version überschreiben",
    "teamConflictResolved": "Konflikt behoben: {{name}}",
    "teamConflictTakeServer": "Serverversion übernehmen",
    "teamConflictTakeServerHint": "Lokale Datei mit der Serverversion überschreiben",
    "teamDecline": "Ablehnen",
    "teamDownload": "Herunterladen",
    "teamDownloadAgain": "Erneut herunterladen",
    "teamDownloadFailed": "Download von {{name}} fehlgeschlagen: {{error}}",
    "teamDownloadTitle": "Auf dieses Gerät herunterladen und zur Gen-Dateibibliothek hinzufügen",
    "teamDownloaded": "{{name}} nach {{path}} heruntergeladen",
    "teamDownloads": "{{count}} Downloads",
    "teamEmpty": "Im Teamordner sind noch keine Dateien vorhanden oder es gibt keine Übereinstimmungen.",
    "teamFileCount": "{{count}} / {{total}} Dateien",
    "teamFrom": "Von",
    "teamFulfill": "{{count}} Dateien bereitstellen",
    "teamFulfillDirectHint": "Lokale Dateien wurden automatisch anhand der Bibliothekseinträge zugeordnet. Zum direkten Bereitstellen klicken.",
    "teamFulfillDone": "{{count}} Dateien bereitgestellt",
    "teamFulfillMissing": "{{count}} Dateien wurden auf dem Datenträger nicht gefunden. Bitte manuell auswählen.",
    "teamFulfillNoFiles": "Bitte wählen Sie zuerst für mindestens eine Datei einen lokalen Pfad aus.",
    "teamFulfillReselect": "Dateien neu auswählen",
    "teamFulfillStart": "Dateien bereitstellen…",
    "teamHiddenList": "Dieses Mitglied hat die Bibliotheksliste ausgeblendet",
    "teamInboxEmpty": "Posteingang ist leer.",
    "teamLibraryCount": "{{count}} Dateien",
    "teamMe": "Ich",
    "teamMemberCount": "{{count}} Mitglieder · {{online}} online",
    "teamMembersEmpty": "Keine weiteren Mitglieder vorhanden.",
    "teamMembersHint": "Mitgliederbibliotheken: Durchsuchen Sie die von Teammitgliedern freigegebenen Dateilisten und senden Sie Anfragen mit einem Klick.",
    "teamNoConflicts": "Keine ausstehenden Konflikte.",
    "teamNoOutgoing": "Keine gesendeten Anfragen.",
    "teamNoRequests": "Keine eingegangenen Anfragen.",
    "teamNotifyAnnounce": "Teammitteilung erhalten",
    "teamNotifyApprovalPending": "Eine Anfrage wartet auf Ihre Genehmigung (kann im Web unter „Gruppengenehmigung“ bearbeitet werden)",
    "teamNotifyApproved": "Ihre Anfrage wurde genehmigt. Warten auf Bereitstellung durch die andere Person.",
    "teamNotifyCancelled": "{{who}} hat die Anfrage zurückgezogen",
    "teamNotifyDeclined": "{{who}} hat Ihre Anfrage abgelehnt",
    "teamNotifyFulfilled": "{{who}} hat Dateien für Sie bereitgestellt",
    "teamNotifyOpen": "Anzeigen",
    "teamNotifyRejected": "Ihre Anfrage wurde abgelehnt",
    "teamNotifyRequestNew": "{{who}} fordert Dateien von Ihnen an",
    "teamNotifyTransferNew": "{{who}} hat Dateien für Sie bereitgestellt",
    "teamOwner": "Von",
    "teamPickFilePlaceholder": "Lokalen Dateipfad auswählen…",
    "teamPublicHint": "Öffentliche Bibliothek: Dateien, die Teammitglieder im Teamordner veröffentlicht haben, können direkt heruntergeladen und zur Bibliothek hinzugefügt werden.",
    "teamRequestAll": "{{count}} Elemente mit einem Klick anfordern",
    "teamRequestFailed": "Anfrage konnte nicht gesendet werden: {{error}}",
    "teamRequestOne": "Anfordern",
    "teamRequestSent": "{{count}} Anfragen an {{name}} gesendet",
    "teamRequestSentApproval": "Anfrage wurde eingereicht. Sie wird nach der Genehmigung an die andere Person übermittelt.",
    "teamSearchAcrossPlaceholder": "Öffentliche Bibliothek und freigegebene Mitgliederlisten durchsuchen (Name/Tag/Kategorie)",
    "teamSearchNoHit": "Keine passenden Dateien in der öffentlichen Bibliothek.",
    "teamSearchNoHitMembers": "Keine passenden Dateien in den freigegebenen Mitgliederlisten.",
    "teamSearchPlaceholder": "Teamfreigaben durchsuchen (Name/Tag)",
    "teamSearchResultCount": "Öffentliche Bibliothek: {{pub}} Treffer · {{members}} Mitglieder mit Treffern",
    "teamSearchResultsMembers": "Mitgliederliste",
    "teamSearchResultsPublic": "Öffentliche Bibliothek",
    "teamShareCopyErrors": "Fehlerinformationen kopieren",
    "teamShareDone": "{{count}} Dateien in die öffentliche Bibliothek übertragen",
    "teamShareErrorsCopied": "Fehlerinformationen kopiert",
    "teamShareErrorsCopyFailed": "Kopieren fehlgeschlagen, bitte Text manuell auswählen und kopieren",
    "teamShareFailedDescription": "Die folgenden {{count}} Dateien konnten nicht in die öffentliche Bibliothek übertragen werden:",
    "teamShareFailedTitle": "Übertragung einiger Dateien fehlgeschlagen",
    "teamShareProgress": "Übertrage {{done}}/{{total}} {{name}}",
    "teamSharedHint": "Dateien im Team-Freigabeordner werden von Teammitgliedern veröffentlicht; nach dem Herunterladen werden sie automatisch zur lokalen Gen-Dateibibliothek hinzugefügt.",
    "teamStatusCancelled": "Zurückgezogen",
    "teamStatusDeclined": "Abgelehnt",
    "teamStatusFulfilled": "Übertragen",
    "teamStatusPending": "Ausstehend",
    "teamStatusPendingApproval": "Genehmigung ausstehend",
    "teamStatusRejected": "Abgewiesen",
    "teamSyncButton": "Mit persönlichem Team-Speicher synchronisieren",
    "teamSyncPrivateNote": "Auf den persönlichen Team-Speicher kann nur das aktuell angemeldete Konto zugreifen.",
    "teamSyncResultTitle": "Ergebnis der Synchronisierung des persönlichen Speichers",
    "teamSyncing": "Synchronisierung…",
    "teamTabInbox": "Posteingang",
    "teamTabIncoming": "Eingegangene Anfragen",
    "teamTabMembers": "Mitgliederbibliothek",
    "teamTabOutgoing": "Gesendete Anfragen",
    "teamTabPublic": "Öffentliche Bibliothek",
    "teamTransferDownloaded": "Heruntergeladen",
    "teamViewLibrary": "Liste anzeigen",
    "title": "Gen-Dateibibliothek",
    "updatingTags": "Wird generiert…",
    "watchFolders": "Ordner überwachen",
    "watchFoldersAdd": "Ordner hinzufügen",
    "watchFoldersEmpty": "Es werden noch keine Ordner überwacht. Fügen Sie einen Ordner hinzu, um beim Start automatisch zu synchronisieren.",
    "watchFoldersHint": "Überwachte Ordner werden bei jedem Öffnen der Gen-Dateibibliothek automatisch gescannt, um die Einträge mit den Dateien synchron zu halten (neue Einträge hinzufügen, verschwundene Einträge automatisch entfernen).",
    "watchFoldersLastScanned": "Letzter Scan: {{time}}",
    "watchFoldersNeverScanned": "Nicht gescannt",
    "watchFoldersRefresh": "Alle aktualisieren",
    "watchFoldersRefreshSummary": "{{scanned}} Dateien in {{folders}} Ordnern gescannt – {{added}} hinzugefügt, {{removed}} entfernt, {{unchanged}} unverändert.",
    "watchFoldersRefreshing": "Aktualisierung…",
    "watchFoldersRemove": "Aus Überwachungsliste entfernen",
    "watchFoldersTitle": "Überwachte Ordner",
    "watchTypesAdd": "Typ hinzufügen",
    "watchTypesEmpty": "Noch keine Typkonfiguration",
    "watchTypesHint": "Ausgewählte Dateiendungen werden zusammen mit den überwachten Ordnern gescannt und importiert. Standardmäßig werden die vom Programm unterstützten Sequenzformate überwacht; FASTQ-Sequenzdateien sind standardmäßig nicht ausgewählt. Nach dem Aktivieren wird automatisch einmal aktualisiert; Sie können weitere Typen hinzufügen.",
    "watchTypesInvalid": "Dateiendungen dürfen nur Buchstaben, Ziffern, Punkte und Bindestriche enthalten (z. B. .abc oder .tar.gz)",
    "watchTypesPlaceholder": "Dateiendung eingeben, z. B. abc oder fastq.gz",
    "watchTypesRemove": "Diesen Typ entfernen",
    "watchTypesTitle": "Überwachte Dateitypen"
  },
  "primer": {
    "addPrimer": "Primer hinzufügen",
    "alignmentLegend": "| = Übereinstimmung   x = Fehlpaarung   - = Lücke/Überhang",
    "alignmentPrimerForward": "Primer 5→3",
    "alignmentPrimerReverse": "Primer 3←5",
    "anchorSection": "3′-Verankerung",
    "anchorSectionHint": "Anzahl der Basen am 3′-Ende des Primers, die exakt mit der Matrize übereinstimmen müssen; zugleich die Mindestlänge jedes Paarungsblocks (kürzere zusammenhängende Paarungen bilden keinen Bindungsblock).",
    "antisenseStrand": "Antisense-Strang",
    "bases": "Basen",
    "bindingSites": "Bindungsstellen",
    "bindingSitesFiltered": "{{count}} Kandidaten-Bindungsstellen gefunden, aber alle wurden durch die aktuellen Übereinstimmungsbedingungen herausgefiltert (z. B. 3′-Ende-Übereinstimmung, minimale Annealing-Länge oder Alignment-Qualität).",
    "bindingSitesTmTooLow": "{{count}} Kandidaten-Bindungsstellen gefunden, aber die höchste Tm beträgt {{tm}} °C und liegt unter dem Mindestschwellenwert von {{minimum}} °C, daher werden sie nicht als gültige Bindungsstellen angezeigt.",
    "cancel": "Abbrechen",
    "degenerateGapExtend": "Strafe für degenerierte Lückenverlängerung",
    "degenerateMatchScore": "Punktzahl für degenerierte Paarung",
    "del": "Deletion:",
    "deletionScore": "Strafe für Matrizen-Deletion",
    "descPlaceholder": "Optionale Beschreibung...",
    "description": "Beschreibung",
    "editPrimer": "Primer bearbeiten",
    "filterSection": "Stellenfilterung",
    "forward": "Vorwärts (Sense)",
    "gapOpen": "Strafe für Lückenöffnung",
    "gapPower": "Lücken-Potenzexponent",
    "gc": "GC = {{percent}} %",
    "identity": "Identität:",
    "ins": "Insertion:",
    "match": "Übereinstimmung",
    "matchScore": "Punktzahl für Übereinstimmung",
    "maxSites": "Max. Stellen pro Strang",
    "minIdentity": "Min. Identität (%)",
    "minMatches": "Min. Übereinstimmungen",
    "mismatchScore": "Strafe für Fehlpaarung",
    "mismatches": "Fehlpaarungen:",
    "name": "Name",
    "namePlaceholder": "Primer-Name",
    "noBindingSites": "Für diesen Primer wurden auf der aktuellen Matrize keine Kandidaten-Bindungsstellen gefunden.",
    "paramsButton": "Bindungsparameter",
    "paramsSummary": "Bindungsparameter",
    "resetDefaults": "Standard wiederherstellen",
    "revComp": "Revers komplementär",
    "revCompTooltip": "Revers komplementär",
    "reverse": "Rückwärts (Antisense)",
    "save": "Primer hinzufügen",
    "score": "Punktzahl:",
    "scoringSection": "Alignment-Bewertung",
    "scoringSectionHint": "Die Bewertung bestimmt, wo zusammenhängende Paarungssegmente in Fehlpaarungen/Lücken unterbrochen werden (Bindungssegment vs. Nicht-Bindungssegment).",
    "seedLength": "3′-Seed-Länge",
    "sequence": "Sequenz",
    "sequencePlaceholder": "Primersequenz eingeben (A, T, C, G...)",
    "site": "Stelle {{index}}",
    "targetContext": "Zielkontext:",
    "template": "Matrize",
    "tm": "Tm = {{temp}} °C",
    "tooShort": "Der Primer muss mindestens 9 bp lang sein, um nach Bindungsstellen zu suchen",
    "unpaired": "Ungepaart",
    "unpairedBases": "Ungepaarte Basen",
    "unpairedBoundary": "Ungepaarte Grenze",
    "visibleInSequence": "In Sequenzansicht sichtbar"
  },
  "primerList": {
    "bindingSites": "Bindungsstellen",
    "description": "Beschreibung",
    "direction": "Richtung",
    "export": "Exportieren",
    "name": "Name",
    "noPrimers": "Keine Primer gefunden",
    "search": "Primer suchen...",
    "sequence": "Sequenz",
    "showingCount": "{{count}} / {{total}} Primer werden angezeigt",
    "tm": "Tm (°C)"
  },
  "protein": {
    "abs01": "0,1 % Absorbanz (1 mg/mL)",
    "algoDesc": {
      "Bjellqvist": "Bjellqvist et al. (1993, 1994). Berücksichtigt den Einfluss benachbarter Reste auf die terminalen pKa-Werte. Wird für ExPASy Compute pI/Mw verwendet.",
      "DTASelect": "Tabb et al. DTASelect-Standardwerte.",
      "Dawson": "Dawson et al. Daten aus der biochemischen Forschung. NH2/COOH-Werte von Sillero.",
      "EMBOSS": "Standardwerte für EMBOSS iep / ExPASy Compute pI/Mw.",
      "Grimsley": "Grimsley et al. (Pace & Grimsley, 2009). Experimentell gemessene pKa-Werte.",
      "IPC2_peptide": "Kozlowski (2021). Basierend auf 119.092 Peptiden mittels differenzieller Evolution ML-optimiert. Höchste Genauigkeit für Peptide.",
      "IPC2_protein": "Kozlowski (2021). Basierend auf 2.324 Proteinen mittels differenzieller Evolution ML-optimiert. Höchste Genauigkeit für Proteine, empfohlene Standardeinstellung.",
      "IPC_peptide": "Kozlowski (2016). Basierend auf Peptiddatensätzen mittels Basin-Hopping-Algorithmus optimiert. IPC 1.0 Peptid-Skala.",
      "IPC_protein": "Kozlowski (2016). Basierend auf Proteindatensätzen mittels Basin-Hopping-Algorithmus optimiert. IPC 1.0 Protein-Skala.",
      "Lehninger": "Werte aus dem Lehrbuch Lehninger Biochemie.",
      "Nozaki": "Nozaki & Tanford (1971). Klassische Referenzwerte.",
      "Patrickios": "Patrickios et al. Vereinfachtes Modell: Nur K/R/D/E tragen zur Ladung bei (C, Y, H ausgeschlossen).",
      "ProMoST": "ProMoST. Positionsabhängiges pKa-Modell: Geladene Reste verwenden unterschiedliche pKa-Werte an N-terminaler, mittlerer und C-terminaler Position.",
      "Rodwell": "Rodwell (1982). Hinweis: K und R teilen denselben pKa-Wert (11,5).",
      "Sillero": "Sillero et al. (1990). Klassische biochemische Referenz.",
      "Solomon": "Solomon et al. Werte aus dem Lehrbuch der organischen Chemie.",
      "Thurlkill": "Thurlkill et al. (2006). Experimentell gemessene pKa-Werte.",
      "Toseland": "Toseland et al. (2010). Optimiert für intrazellulären pH-Wert und physiologische Ionenstärke.",
      "Wikipedia": "Wikipedia-Standardwerte für Aminosäure-pKa."
    },
    "algorithm": "Algorithmus",
    "aliphaticIndex": "Aliphatischer Index",
    "aminoAcidComposition": "Aminosäurezusammensetzung",
    "aromatic": "Aromatisch (F+W+Y)",
    "atomicComposition": "Atomare Zusammensetzung",
    "avgResidueWeight": "Durchschnittliches Restgewicht",
    "basicProperties": "Grundlegende Eigenschaften",
    "carbon": "Kohlenstoff (C)",
    "extCoeff": "Extinktionskoeffizient (M⁻¹cm⁻¹)",
    "extinctionCoefficient": "Extinktionskoeffizient und Absorbanz (280 nm)",
    "formula": "Summenformel",
    "fullyOxidized": "Vollständig oxidiert",
    "fullyReduced": "Vollständig reduziert",
    "gravy": "GRAVY",
    "hideAlgorithms": "Alle Algorithmen ausblenden",
    "hydrogen": "Wasserstoff (H)",
    "hydrophobic": "Hydrophob (A+V+I+L+M+F+W+P)",
    "instabilityIndex": "Instabilitätsindex",
    "molecularWeight": "Molekulargewicht",
    "negCharged": "Negativ geladene Reste (D+E)",
    "netCharge": "Nettoladung bei verschiedenen pH-Werten ({{algo}})",
    "nitrogen": "Stickstoff (N)",
    "oxygen": "Sauerstoff (O)",
    "polarUncharged": "Polar ungeladen (S+T+N+Q)",
    "posCharged": "Positiv geladene Reste (K+R+H)",
    "proteinLength": "Proteinlänge",
    "residueSummary": "Restübersicht",
    "showAlgorithms": "Alle Algorithmen anzeigen",
    "sulfur": "Schwefel (S)",
    "sulfurContaining": "Schwefelhaltige Reste (C+M)",
    "theoreticalPI": "Theoretischer isoelektrischer Punkt (pI)",
    "title": "Proteineigenschaften — {{name}}",
    "totalAtoms": "Gesamtatomzahl"
  },
  "readingFrame": {
    "description": "Wählen Sie Leseraster und Startcodon für die 6-Raster-Translation.",
    "frames": "Leseraster",
    "inReadingFrameOf": "Leseraster-Erweiterung von {{name}}",
    "startCodonMode": "Startcodon-Hervorhebung",
    "title": "Leserasteranzeige"
  },
  "recovery": {
    "unsavedSession": "Eine nicht gespeicherte Sitzung vom letzten unerwarteten Beenden wurde erkannt ({{file}}). Wiederherstellen?"
  },
  "remoteControl": {
    "aiAssistantNotReady": "KI-Assistent (MCP muss zuerst aktiviert werden)",
    "aiAssistantReady": "MCP gestartet, klicken Sie auf die Schaltfläche oben, um den KI-Assistenten zu öffnen",
    "aiAssistantWillStart": "Durch Klicken auf die Schaltfläche oben wird MCP automatisch gestartet und der KI-Assistent geöffnet",
    "aiPrompt": "KI-Anbindungs-Prompt",
    "aiPromptHint": "Fügen Sie den folgenden Inhalt in die MCP-Konfiguration von Cursor / Claude Desktop ein:",
    "apply": "Übernehmen",
    "cancel": "Abbrechen",
    "endpoint": "Endpunkt",
    "openAiAssistant": "KI-Assistent öffnen",
    "password": "Fernsteuerungspasswort",
    "port": "Port",
    "runningHint": "Läuft: KI-Clients können sich mit dem untenstehenden Endpunkt verbinden",
    "statusError": "Fehler",
    "statusRunning": "Gestartet",
    "statusStopped": "Gestoppt",
    "title": "Fernsteuerung",
    "toggle": "Fernsteuerung"
  },
  "saveNotification": {
    "cancel": "Abbrechen",
    "closeUnsavedMessage": "Die aktuelle Sequenz enthält ungespeicherte Änderungen. Vor dem Schließen speichern?",
    "closeUnsavedTitle": "Ungespeicherte Änderungen",
    "closeWithoutSaving": "Ohne Speichern schließen",
    "copied": "Kopiert",
    "copy": "Kopieren",
    "copyFailed": "Kopieren fehlgeschlagen",
    "fileLockedHint": "Die Datei wird von einem anderen Programm verwendet und kann nicht geschrieben werden:\n{{path}}\nSie können das blockierende Programm schließen und es erneut versuchen oder die Datei unter einem neuen Namen speichern.",
    "fileLockedTitle": "Datei ist gesperrt",
    "notification": "Hinweis",
    "ok": "OK",
    "openFile": "Neue Datei öffnen",
    "openWithConfirmMessage": "Beim Öffnen mit einem anderen Programm wird die aktuelle Datei geschlossen. Möchten Sie fortfahren?",
    "openWithConfirmTitle": "Die aktuelle Datei wird geschlossen",
    "openWithDirtyMessage": "Die aktuelle Datei enthält ungespeicherte Änderungen. Bitte speichern Sie sie zuerst, bevor Sie sie mit einem anderen Programm öffnen.",
    "openWithDirtyTitle": "Datei wurde geändert",
    "openWithResultCloseWindow": "Dieses Fenster schließen",
    "openWithResultFail": "Beim Öffnen der Datei mit {{app}} ist ein Fehler aufgetreten.",
    "openWithResultFailTitle": "Öffnen fehlgeschlagen",
    "openWithResultSuccess": "Die Datei wurde erfolgreich mit {{app}} geöffnet.",
    "openWithResultSuccessTitle": "Mit anderem Programm geöffnet",
    "ownerSelf": "Ein anderes GenePad-Fenster",
    "ownerUnknown": "Blockierendes Programm konnte nicht identifiziert werden (möglicherweise wurde die Datei gerade freigegeben)",
    "retry": "Erneut versuchen",
    "saveAs": "Speichern unter…",
    "saveFailed": "Speichern fehlgeschlagen",
    "saveSuccess": "Erfolgreich gespeichert",
    "savedTo": "Datei gespeichert unter:",
    "savingTitle": "Wird gespeichert…"
  },
  "search": {
    "dna": "DNA",
    "matchReverse": "Gegenstrang abgleichen",
    "matchWrap": "Über den Startpunkt hinaus abgleichen",
    "prot": "Protein",
    "rna": "RNA",
    "searchDna": "DNA-Sequenz suchen...",
    "searchProtein": "Proteinsequenz suchen...",
    "searchRna": "RNA-Sequenz suchen..."
  },
  "sequenceProperties": {
    "accession": "Accession",
    "addReference": "+ Literatur hinzufügen",
    "cancel": "Abbrechen",
    "circular": "Zirkulär",
    "comments": "Anmerkungen",
    "commentsPlaceholder": "Zusätzliche Anmerkungen...",
    "confirm": "Bestätigen",
    "createTag": "„{{tag}}“ hinzufügen",
    "date": "Datum",
    "description": "Beschreibung",
    "division": "Division",
    "doubleStranded": "Doppelsträngig",
    "keywords": "Schlagwörter",
    "length": "Länge",
    "linear": "Linear",
    "moleculeType": "Molekültyp",
    "name": "Name",
    "noReferences": "Keine Literaturangaben",
    "organism": "Organismus",
    "plasmidTags": "Plasmid-Tags",
    "refAuthors": "Autoren",
    "refJournal": "Zeitschrift",
    "refPubmed": "PubMed-ID",
    "refTitle": "Titel",
    "references": "Literaturangaben",
    "removeTag": "Tag entfernen",
    "singleStranded": "Einzelsträngig",
    "source": "Quelle",
    "strandType": "Strangtyp",
    "tabBasic": "Grundinformationen",
    "tabComment": "Anmerkungen",
    "tabSource": "Quelle und Zitate",
    "tagsPlaceholder": "Tag eingeben und Enter drücken oder vorhandenes Tag aus der Liste auswählen",
    "tagsRequireFile": "Bitte zuerst eine Datei öffnen oder speichern, um Plasmid-Tags zu verwenden",
    "title": "Sequenzeigenschaften",
    "topology": "Topologie",
    "updateTagsWithAi": "KI-Aktualisierung",
    "updatingTags": "Wird aktualisiert...",
    "version": "Version"
  },
  "sequenceTooltip": {
    "range": "Bereich",
    "segment": "Segment",
    "segmentAt": "Position",
    "segmentN": "Segment {{n}}",
    "segments": "Segmente",
    "strand": "Strang",
    "strandForward": "Vorwärts",
    "strandNone": "Keiner",
    "strandReverse": "Rückwärts",
    "type": "Typ"
  },
  "settings": {
    "about": "Über dieses Programm",
    "aboutIntro": "GenePad ist ein Werkzeug zum Anzeigen und Bearbeiten von DNA-Sequenzen für die molekularbiologische Forschung.",
    "aboutPrivacy": "Datenschutzrichtlinie",
    "aboutPrivacyBody": "Diese Software erfasst standardmäßig anonyme Nutzungsstatistiken: eine beim ersten Start zufällig generierte Installationskennung (ohne Bezug zu Hardware, Konto oder personenbezogenen Daten), die kumulierte Nutzungsdauer, die Programmversion sowie den Plattform-/Betriebssystemtyp.\n\nDie Statistikdaten werden alle 7 Tage per HTTPS an den offiziellen GenePad-Server (genepad.pages.dev) übermittelt und dienen ausschließlich der Erfassung von Nutzerzahlen und Nutzungsdauer zur Produktverbesserung.\n\nWir erfassen, speichern oder übertragen weder Ihre Sequenzdaten noch Dateiinhalte oder sonstige personenbezogene Informationen; die Statistikdaten können nicht zur Identifizierung oder Zuordnung zu einem bestimmten Nutzer verwendet werden.\n\nSie können die anonyme Statistik jederzeit über den Schalter am unteren Ende dieser Seite deaktivieren; nach dem Deaktivieren werden Erfassung und Übermittlung sofort eingestellt.",
    "aboutStats": "Statistik",
    "aboutTerms": "Nutzungsbedingungen",
    "aboutTermsBody": "Diese Software (GenePad) wird „wie besehen“ bereitgestellt und dient ausschließlich der molekularbiologischen Forschung und Lehre; sie stellt keine medizinische, klinische Diagnose- oder Behandlungsempfehlung dar. Alle auf dieser Software basierenden Analyseergebnisse (einschließlich, aber nicht beschränkt auf Sequenzanalyse, Restriktionsenzymanalyse, Primer- und CRISPR-Design, FASTQ-Verarbeitung usw.) sind vor dem Experiment unabhängig zu überprüfen.\n\nDiese Software unterliegt der „GenePad Non-Commercial Use License“ (beiliegend): Für nichtkommerzielle Zwecke wie persönliches Studium, Lehre und Forschungseinrichtungen ist die Nutzung kostenlos; für kommerzielle Zwecke ist eine vorherige gesonderte kommerzielle Lizenz erforderlich. Bei der Weitergabe sind die ursprüngliche Urheberangabe, Änderungshinweise und eine Kopie der Lizenz beizufügen.\n\nIm größtmöglichen gesetzlich zulässigen Umfang wird diese Software ohne jegliche ausdrückliche oder stillschweigende Gewährleistung bereitgestellt, einschließlich, aber nicht beschränkt auf Marktgängigkeit, Eignung für einen bestimmten Zweck, Genauigkeit und Nichtverletzung von Rechten; die Autoren und Mitwirkenden haften nicht für direkte, indirekte, zufällige oder Folgeschäden, die durch die Nutzung oder Nichtnutzbarkeit dieser Software entstehen.\n\nSie sind verpflichtet, diese Software im Einklang mit den Gesetzen und Vorschriften Ihres Landes/Ihrer Region sowie den Regelungen Ihrer Einrichtung (einschließlich Biosicherheitsanforderungen) zu nutzen; für die Inhalte der von Ihnen verarbeiteten Daten und deren Rechtmäßigkeit sind Sie selbst verantwortlich. Die Rechte an Inhalten Dritter wie Sequenzdaten und Restriktionsenzymdaten liegen bei deren jeweiligen Inhabern.",
    "aiApi": "KI-Einstellungen",
    "aiTranslate": "KI-Übersetzung",
    "aiTranslateCancel": "Abbrechen",
    "aiTranslateChunkRetry": "Abschnitt {{index}} nicht bestanden, automatischer Wiederholungsversuch ({{attempt}}. Versuch): {{reason}}",
    "aiTranslateChunkSeparator": "Abschnitt {{index}}/{{total}}",
    "aiTranslateCodeConflict": "Dieser Sprachcode existiert bereits oder steht im Konflikt mit den integrierten Sprachen (en/zh).",
    "aiTranslateConfirm": "Übersetzung starten",
    "aiTranslateDescription": "Verwendet die konfigurierte KI, um die integrierte chinesische Sprachdatei in die Zielsprache zu übersetzen; nach Abschluss wird sie automatisch importiert und angewendet. Bei langen Texten erfolgt eine automatische Segmentierung, fehlgeschlagene Abschnitte werden automatisch wiederholt, ohne dass alles neu begonnen werden muss.",
    "aiTranslateGarbledDetected": "Einige Abschnitte enthalten auch nach automatischen Wiederholungsversuchen noch fehlerhafte Zeichen; die aktuellen Ergebnisse wurden übernommen. Es wird empfohlen, die Sprachdatei zu exportieren und manuell zu korrigieren.",
    "aiTranslateInvalidJson": "Die KI hat kein gültiges JSON zurückgegeben. Bitte erneut versuchen oder das Modell wechseln.",
    "aiTranslateLangCode": "Sprachcode",
    "aiTranslateLangCodeHint": "Dient als Dateikennung (z. B. ja, ko, fr) und darf nicht mit den vorhandenen en/zh übereinstimmen.",
    "aiTranslateLangCodePlaceholder": "z. B. ja",
    "aiTranslateLangName": "Sprachname",
    "aiTranslateLangNamePlaceholder": "z. B. Japanisch / Japanese",
    "aiTranslateMissingFields": "Bitte sowohl Sprachname als auch Sprachcode ausfüllen.",
    "aiTranslateNotConfigured": "Kein KI-Modell konfiguriert. Bitte zuerst im Tab „KI-Einstellungen“ einrichten.",
    "aiTranslateOutputLabel": "Ausgabe",
    "aiTranslatePartialKept": "Die bereits abgeschlossenen Abschnitte wurden beibehalten. Klicken Sie auf „Erneut übersetzen“, um ab der Fehlerstelle fortzufahren.",
    "aiTranslateProgressLabel": "{{done}}/{{total}} Abschnitte abgeschlossen",
    "aiTranslateRetry": "Erneut übersetzen",
    "aiTranslateStop": "Übersetzung stoppen",
    "aiTranslateStopped": "Die Übersetzung wurde gestoppt. Klicken Sie auf „Erneut übersetzen“, um es erneut zu versuchen.",
    "aiTranslateThinking": "Denkprozess aktivieren (langsamer, möglicherweise bessere Qualität)",
    "aiTranslateThinkingLabel": "Denkprozess",
    "aiTranslateTitle": "Sprachdatei per KI übersetzen",
    "aiTranslateTranslating": "Übersetzung läuft, bitte warten …",
    "allAssociated": "Alle Dateitypen sind als Standard-Öffnungsweise festgelegt. Doppelklicken Sie, um sie mit GenePad zu öffnen.",
    "appearance": "Darstellung",
    "checkingStatus": "Zuordnungsstatus wird überprüft …",
    "colorScheme": "Farbschema",
    "colorSchemeBeige": "Braun",
    "colorSchemeBlue": "Blau",
    "colorSchemeDescription": "Wählen Sie Ihr bevorzugtes Farbschema",
    "colorSchemePink": "Rosa",
    "colorSchemeSlate": "Dunkelgrau",
    "currentMode": "Aktueller Modus",
    "default": "Standard",
    "description": "Anwendungseinstellungen konfigurieren",
    "exportLanguage": "Sprachdatei exportieren",
    "fileAssociations": "Dateizuordnungen",
    "fileType": "Dateityp",
    "fileTypeAutoRegistered": "Automatisch registriert: Bei unterstützten Dateitypen steht im Kontextmenü „Mit GenePad öffnen“ zur Verfügung. Um GenePad als Standard-Öffnungsweise per Doppelklick festzulegen, ändern Sie dies in den Systemeinstellungen.",
    "fileTypeDescription": "Wählen Sie aus, welche Dateitypen standardmäßig mit GenePad geöffnet werden sollen (das Kontextmenü „Mit GenePad öffnen“ wird bei jedem Start automatisch registriert)",
    "fileTypeRegistration": "Dateitypregistrierung",
    "importBuiltInConflict": "„en“ und „zh“ sind integrierte Sprachen und können nicht überschrieben werden. Bitte benennen Sie die Datei um (z. B. „zh-CN.json“) und importieren Sie sie erneut.",
    "importError": "Ungültiges Format der Sprachdatei",
    "importLanguage": "Sprachdatei importieren",
    "language": "Sprache",
    "languageAuto": "Automatisch (Systemeinstellung folgen)",
    "languageDescription": "Wählen Sie die Anwendungssprache. Sie können auch benutzerdefinierte Sprachpakete importieren.",
    "languageExportHint": "Nach dem Export der aktuellen Sprachkonfiguration können Sie die aktuelle Übersetzungsdatei selbst korrigieren, um eine präzisere Sprachanpassung zu erreichen.",
    "multiWindow": "Mehrere Fenster",
    "nextLaunchMode": "Modus beim nächsten Start",
    "nextLaunchTab": "Nächster Start: Tab-Modus",
    "nextLaunchWindow": "Nächster Start: Mehrfenstermodus",
    "noCustomLanguages": "Keine benutzerdefinierten Sprachen importiert",
    "noneAssociated": "Keine Dateitypen zugeordnet. Bitte unten auswählen und registrieren.",
    "notAvailable": "Diese Funktion ist nur in der Desktop-Anwendung verfügbar",
    "of": "/",
    "onboardingTourComplete": "Alle angezeigt",
    "onboardingTourDescription": "Funktionshinweise, die beim ersten Öffnen einer Sequenzdatei einmalig angezeigt werden, nach Ansicht in Abschnitte unterteilt. Nach dem Zurücksetzen werden sie beim nächsten Öffnen einer Sequenzdatei erneut angezeigt.",
    "onboardingTourPartAlignmentSplit": "Schaltfläche zum Scrollen im Alignment-Split",
    "onboardingTourPartAlways": "Allgemeine Oberfläche",
    "onboardingTourPartCds": "CDS-Annotationsleiste",
    "onboardingTourPartLibrary": "Gen-Dateibibliothek",
    "onboardingTourPartLibraryRow": "Kontextmenü für Bibliotheksdateien",
    "onboardingTourPartMap": "Kartenansicht",
    "onboardingTourPartProperties": "Eigenschaftenbereich",
    "onboardingTourPartSequence": "Sequenzansicht",
    "onboardingTourPending": "Ausstehend",
    "onboardingTourProgress": "{{shown}}/{{total}} Abschnitte angezeigt",
    "onboardingTourReset": "Einführung zurücksetzen",
    "onboardingTourResetDone": "Zurückgesetzt",
    "onboardingTourTitle": "Einführungstour",
    "quickTools": "Schnellwerkzeuge",
    "quickToolsAdd": "Zur oberen Leiste hinzufügen",
    "quickToolsApply": "Anwenden",
    "quickToolsDescription": "Werkzeuge für die obere Leiste zusammenstellen, die mit einem Klick geöffnet werden. Die Werkzeugkasten wird immer angezeigt und muss hier nicht konfiguriert werden.",
    "quickToolsEmpty": "Keine Werkzeuge angezeigt",
    "quickToolsHidden": "Nicht angezeigt",
    "quickToolsHiddenHint": "Nur in der Werkzeugkasten verfügbar.",
    "quickToolsMoveDown": "Nach unten",
    "quickToolsMoveUp": "Nach oben",
    "quickToolsRemove": "Aus oberer Leiste entfernen",
    "quickToolsReset": "Zurücksetzen",
    "quickToolsShown": "Angezeigt",
    "quickToolsShownHint": "Wird in der oberen Leiste angezeigt und öffnet sich per Klick.",
    "register": "Registrieren",
    "registering": "Registrierung läuft...",
    "removeLanguage": "Löschen",
    "reregister": "Neu registrieren",
    "selectLanguage": "Sprache auswählen",
    "selected": "Ausgewählt",
    "shortcutActionAddFeature": "Annotation hinzufügen",
    "shortcutActionAddPrimer": "Primer hinzufügen",
    "shortcutActionCopy": "Kopieren",
    "shortcutActionCut": "Ausschneiden",
    "shortcutActionDeleteSelection": "Ausgewählte Sequenz löschen",
    "shortcutActionFind": "Suchen",
    "shortcutActionPaste": "Einfügen",
    "shortcutActionSelectAll": "Alles auswählen",
    "shortcutConflict": "{{combo}} wird bereits von „{{action}}“ verwendet",
    "shortcutRecording": "Neue Tastenkombination drücken…",
    "shortcutResetAction": "Standard wiederherstellen",
    "shortcuts": "Tastenkürzel",
    "shortcutsDescription": "Tastenkürzel für die Sequenzansicht anpassen. Auf die Kombination klicken und eine neue Tastenkombination drücken; mit Esc wird die Aufnahme abgebrochen. Tastenkürzel wirken, sobald eine Sequenz ausgewählt ist.",
    "shortcutsResetAll": "Alle auf Standard zurücksetzen",
    "tabMode": "Tabs",
    "teamCertMismatchDescription": "Verbindung abgebrochen: Das vom Server vorgelegte Zertifikat stimmt nicht mit dem bei der ersten Verbindung gespeicherten Fingerabdruck überein. Dies kann an einer Neuinstallation oder einem Zertifikatswechsel auf dem Server liegen, aber auch an einem Man-in-the-Middle-Angriff im Netzwerk.",
    "teamCertMismatchHint": "Wenn du persönlich (oder über einen vertrauenswürdigen Kanal) bestätigen kannst, dass der Server tatsächlich neu installiert wurde bzw. das Zertifikat gewechselt hat, und die beiden untenstehenden Fingerabdrücke mit denen der Serververwaltung übereinstimmen, kannst du dem neuen Fingerabdruck vertrauen. Andernfalls nicht vertrauen und den Serveradministrator kontaktieren.",
    "teamCertMismatchTitle": "Server-Zertifikatsfingerabdruck hat sich geändert",
    "teamCertObserved": "Aktuell beobachteter Fingerabdruck",
    "teamCertRecorded": "Gespeicherter Fingerabdruck",
    "teamCertTrust": "Neuem Fingerabdruck vertrauen und neu verbinden",
    "teamCertTrusted": "Neuem Zertifikatsfingerabdruck vertraut und neu verbunden",
    "teamServer": "Teamserver",
    "teamServerAccount": "Konto",
    "teamServerAccountHint": "Das Konto wird vom Teamadministrator serverseitig erstellt; dasselbe Konto kann gleichzeitig auf mehreren Geräten online sein.",
    "teamServerAuthExpired": "Team-Anmeldung abgelaufen, bitte erneut anmelden.",
    "teamServerAutoSync": "Automatisch mit persönlichem Bereich synchronisieren",
    "teamServerAutoSyncDescription": "Wenn aktiviert, wird die persönliche Gen-Dateibibliothek im Hintergrund automatisch mit dem Teamserver synchronisiert (etwa alle 5 Minuten). Bei Fehlern oder Konflikten erscheint ein „Team-Nachrichten“-Fenster; ein manueller Sync ist nicht nötig.",
    "teamServerAutoSyncNoticeOff": "Automatische Synchronisierung deaktiviert. Manuelle Synchronisierung ist weiterhin im Gen-Dateibibliothek-Verwaltungswerkzeug möglich.",
    "teamServerAutoSyncNoticeOn": "Automatische Synchronisierung aktiviert: Der persönliche Bereich wird im Hintergrund still synchronisiert (etwa alle 5 Minuten). Bei Fehlern oder Konflikten erscheint ein „Team-Nachrichten“-Fenster.",
    "teamServerCurrentTeam": "Aktuell",
    "teamServerDownloadDirChange": "Ändern",
    "teamServerDownloadDirDescription": "Vom Team heruntergeladene/synchronisierte Dateien (die lokal nicht vorhanden sind) werden hier gespeichert.",
    "teamServerDownloadDirReset": "Standard wiederherstellen",
    "teamServerDownloadDirTitle": "Speicherort für Teamdateien",
    "teamServerEnable": "Teamfunktionen aktivieren",
    "teamServerEnableDescription": "Standardmäßig nicht aktiv. Nach dem Aktivieren kannst du einem lokalen Teamserver beitreten und gemeinsame Teamordner, Dateianfragen zwischen Mitgliedern sowie die Synchronisierung des persönlichen Bereichs nutzen.",
    "teamServerJoin": "Beitreten",
    "teamServerJoinTitle": "Team erkennen und beitreten",
    "teamServerLoginAction": "Anmelden",
    "teamServerLoginConfirm": "Anmelden",
    "teamServerLoginFirst": "Bei diesem Team hat man sich auf diesem Gerät noch nicht angemeldet",
    "teamServerLoginTo": "Bei {{name}} ({{addr}}) anmelden",
    "teamServerLogout": "Abmelden",
    "teamServerManualPlaceholder": "Adresse manuell eingeben (z. B. 192.168.1.5 oder http://lab.local:4514)",
    "teamServerNeedRelogin": "Für dieses Team ist eine erneute Anmeldung erforderlich, bevor gewechselt werden kann",
    "teamServerNoCredentials": "Anmeldung erforderlich",
    "teamServerOffline": "Offline",
    "teamServerOnline": "Online",
    "teamServerOpenWeb": "Weboberfläche öffnen",
    "teamServerOpenWebDescription": "Die Weboberfläche des Servers im Systembrowser öffnen (persönliche Inhalte, Gruppenfreigaben und Verwaltungsfunktionen)",
    "teamServerPassword": "Passwort",
    "teamServerSavedTeams": "Gespeicherte Teams (zum Wechseln klicken)",
    "teamServerScan": "Teamserver suchen",
    "teamServerScanEmpty": "Kein Teamserver gefunden. Adresse manuell eingeben und erneut versuchen oder den Administrator bitten, zu prüfen, ob der Server läuft.",
    "teamServerShareLibrary": "Meine Gen-Dateibibliothek mit dem Team teilen",
    "teamServerShareLibraryDescription": "Standardmäßig nicht geteilt. Wenn aktiviert, können Teammitglieder deine Dateinamen und Tag-Listen durchsuchen; Dateiinhalte werden nicht heruntergeladen, sondern bei Bedarf über den Anforderungsprozess angefordert.",
    "teamServerSharingNotice": "Teilen aktiviert. Die Dateiliste wird im Hintergrund inkrementell auf den Teamserver hochgeladen.",
    "teamServerSourceDiscovered": "Automatisch erkannt",
    "teamServerSourceProbed": "Adresserkennung",
    "teamServerSwitch": "Team wechseln",
    "teamServerSwitchAction": "Wechseln",
    "teamServerSwitchHint": "Mit gemerktem Konto direkt wechseln",
    "teamServerSwitched": "Zu {{name}} gewechselt",
    "teamServerSyncConflictHint": "Es liegen Konflikte vor. Bitte im Dialog „Synchronisierungsergebnisse“ der Gen-Dateibibliothek einzeln auswählen.",
    "teamServerSyncNow": "Jetzt synchronisieren",
    "teamServerSyncPrivate": "Auf den persönlichen Bereich kann nur das aktuell angemeldete Konto zugreifen; andere Mitglieder sehen ihn nicht.",
    "teamServerSyncSummary": "Neu {{created}} · Aktualisiert {{updated}} · Heruntergeladen {{downloaded}} · Konflikte {{conflicts}}",
    "teamServerSyncTitle": "Synchronisierung des persönlichen Team-Bereichs",
    "teamServerSyncing": "Synchronisierung…",
    "teamServerUnsharedNotice": "Freigabe beendet. Die Dateiliste auf dem Server wird im Hintergrund entfernt.",
    "teamServerUsername": "Benutzername",
    "telemetryDescription": "Alle 7 Tage werden an den GenePad-Server eine anonyme Installationskennung, die kumulierte Nutzungsdauer sowie Programmversion und Betriebssystemtyp übermittelt: Die Installationskennung zeigt den Entwicklern, dass ein neuer Nutzer das Programm verwendet; die kumulierte Nutzungsdauer zeigt, ob die Nutzung vorübergehend oder langfristig ist. Die Statistik erfasst keinesfalls IP-Adressen, Sequenzdaten oder sonstige sensible Informationen wie Dateien. Jederzeit deaktivierbar.",
    "telemetryTitle": "Anonyme Nutzungsstatistik",
    "theme": "Design",
    "themeDescription": "Helles, dunkles oder systemabhängiges Design wählen",
    "title": "Einstellungen",
    "unregister": "Registrierung aufheben",
    "unregistering": "Wird aufgehoben…",
    "updateCheckFrequency": "Prüfintervall",
    "updateCheckFrequencyDescription": "Steuert das Intervall der automatischen Update-Prüfung im Hintergrund.",
    "updateDescription": "Auf neue GenePad-Versionen prüfen.",
    "updateFrequencyDay": "Täglich",
    "updateFrequencyHalfYear": "Halbjährlich",
    "updateFrequencyMonth": "Monatlich",
    "updateFrequencyWeek": "Wöchentlich",
    "updateFrequencyYear": "Jährlich",
    "updates": "Updates",
    "windowMode": "Fenstermodus",
    "windowModeDescription": "Mehrfenster- oder Tab-Modus wählen; wirksam nach Neustart"
  },
  "sidebar": {
    "addEnzymeToList": "Enzym zur Liste hinzufügen",
    "alignmentDesc": "Sequenz mit Referenzsequenz ausrichten",
    "enzymeSettings": "Restriktionsschnittstellen-Einstellungen",
    "enzymesDesc": "Enzympool/Screening-Schema, Enzyme zu Liste und Karte hinzufügen, Anzeige der Restriktionsschnittstellen in der Sequenz",
    "hideAlignment": "Ausrichtung ausblenden",
    "hideAllEnzymes": "Alle ausblenden",
    "hideHistory": "Verlauf ausblenden",
    "hideMap": "Karte ausblenden",
    "hideProperties": "Eigenschaften ausblenden",
    "hideSequence": "Sequenz ausblenden",
    "historyDesc": "Früher gespeicherte Konstruktversionen anzeigen",
    "mapDesc": "Ringförmige Plasmidkarte umschalten oder ausblenden",
    "mapEnzymeSites": "Restriktionsschnittstellen in der Karte",
    "mapEnzymesStateHidden": "Kartenbereich: derzeit nicht angezeigt",
    "mapEnzymesStateShown": "Kartenbereich: derzeit angezeigt",
    "mapSeqExclusive": "Karte und Sequenz schließen sich aus",
    "mapSeqExclusiveDesc": "Es wird nur eine Ansicht gleichzeitig angezeigt; Klick wechselt zur gleichzeitigen Anzeige und öffnet automatisch die andere Ansicht",
    "mapSeqLinked": "Karte und Sequenz gleichzeitig",
    "mapSeqLinkedDesc": "Beide Ansichten werden gleichzeitig angezeigt; Klick wechselt zum Ausschlussmodus (Karte bleibt, Sequenz wird geschlossen)",
    "orfDesc": "Offene Leseraster in der Sequenz vorhersagen",
    "orfPrediction": "ORF-Vorhersage",
    "propertiesDesc": "Sequenzmetadaten anzeigen und bearbeiten",
    "readingFrame": "Leseraster",
    "readingFrameDesc": "6-Rahmen-Translation der Sequenz anzeigen",
    "sequenceAlignment": "Sequenzausrichtung",
    "sequenceDesc": "Lineare Sequenzansicht umschalten oder ausblenden",
    "sequenceEnzymeSites": "Restriktionsschnittstellen in der Sequenz",
    "sequenceEnzymesStateHidden": "Sequenzbereich: derzeit nicht angezeigt",
    "sequenceEnzymesStateShown": "Sequenzbereich: derzeit angezeigt",
    "settingsDesc": "Anwendungseinstellungen konfigurieren",
    "showAllEnzymes": "Alle anzeigen",
    "showHistory": "Verlauf anzeigen",
    "showMap": "Karte anzeigen",
    "showProperties": "Eigenschaften anzeigen",
    "showSequence": "Sequenz anzeigen"
  },
  "strandDialog": {
    "bottomStrand": "Unteren Strang verwenden (5'→3')",
    "cancel": "Abbrechen",
    "description": "Welcher Strang soll als Primersequenz verwendet werden?",
    "title": "Strang wählen",
    "topStrand": "Oberen Strang verwenden (5'→3')"
  },
  "teamDeliver": {
    "confirm": "{{count}} Dateien übermitteln",
    "done": "An {{name}} übermittelt",
    "hint": "Ein Mitglied auswählen, um die {{count}} gespeicherten Dateien in dessen Posteingang zu übermitteln.",
    "noMembers": "Keine Mitglieder zum Übermitteln verfügbar",
    "searchPlaceholder": "Mitglieder suchen",
    "title": "An bestimmtes Mitglied übermitteln"
  },
  "teamInbox": {
    "authExpiredDescription": "Der Server hat eine Anmeldegültigkeitsdauer festgelegt, das aktuelle Token ist abgelaufen. Bitte melden Sie sich unten erneut an, um die Teamfunktionen wiederherzustellen.",
    "authExpiredTitle": "Anmeldetoken ungültig",
    "clearAll": "Leeren",
    "downloadedHint": "Die Datei wurde heruntergeladen und der Gen-Dateibibliothek unter „Nicht zugeordnet“ hinzugefügt. Sie können sie im Gen-Dateibibliothek-Verwaltungstool abrufen.",
    "downloadedTitle": "Heruntergeladen · Abruf ausstehend",
    "loginDescription": "Geben Sie Benutzername und Passwort ein, um sich beim Teamserver anzumelden (das Konto wird vom Administrator serverseitig erstellt).",
    "loginTitle": "Team anmelden",
    "markAllRead": "Alle als gelesen markieren",
    "noNotifications": "Keine Benachrichtigungen.",
    "notConnected": "Nicht mit Teamserver verbunden",
    "notificationsTitle": "Benachrichtigungen",
    "notifyAnnounce": "Teamanweisung",
    "notifyCancelled": "Anfrage zurückgezogen",
    "notifyDeclined": "Anfrage abgelehnt",
    "notifyFulfilled": "Dateilieferung erhalten",
    "notifyRequestNew": "Dateianfrage erhalten",
    "notifyTransferNew": "Mitgliederlieferung erhalten",
    "pendingRequests": "Erhaltene Anfragen",
    "relogin": "Erneut anmelden",
    "reloginDone": "Erneut beim Team angemeldet",
    "requireLogin": "Nach Verbindung mit dem Team verfügbar.",
    "revealInDir": "Speicherort",
    "syncIssueTitle": "Problem mit automatischer Synchronisierung",
    "title": "Teammeldungen"
  },
  "teamSync": {
    "keepBoth": "Beide behalten",
    "keepMine": "Meine Version verwenden",
    "takeServer": "Serverversion verwenden"
  },
  "themetoggle": {
    "dark": "Nachtmodus",
    "light": "Tagmodus",
    "system": "Systemeinstellung folgen"
  },
  "toolbar": {
    "addFeature": "Annotation hinzufügen",
    "addFeatureAutoSelection": "Ausgewählte Sequenz automatisch annotieren",
    "addFeatureAutoWhole": "Gesamte Sequenz automatisch annotieren",
    "addFeatureManual": "Annotation hinzufügen",
    "addPrimer": "Primer hinzufügen",
    "antisense35": "Antisense-Strang 3'→5'",
    "antisense53": "Antisense-Strang 5'→3'",
    "checkUpdate": "Nach Updates suchen",
    "copy": "Kopieren",
    "copyAntisense": "Antisense-Strang kopieren",
    "copySense": "Sense-Strang kopieren",
    "copySequence": "Sequenz kopieren",
    "cut": "Ausschneiden",
    "delete": "Löschen",
    "deliverToMember": "An bestimmtes Mitglied übermitteln",
    "deliverToPublic": "In öffentliche Bibliothek übermitteln",
    "fileAssociation": "Dateizuordnung",
    "groupOther": "Sonstiges",
    "groupRecommended": "Empfohlen",
    "new": "Neu",
    "noRecentFiles": "Keine zuletzt verwendeten Dateien",
    "open": "Öffnen",
    "openOtherFile": "Andere Datei öffnen...",
    "openWith": "Öffnen mit",
    "openWithBrowse": "Andere Anwendung auswählen…",
    "openWithDefault": "Im Ordner öffnen",
    "openWithLoading": "Wird geladen…",
    "openWithNoFile": "Bitte speichern Sie die Datei zuerst, bevor Sie sie öffnen",
    "openWithOther": "Andere Öffnungsmethode",
    "paste": "Einfügen",
    "properties": "Eigenschaften",
    "recentlyOpened": "Zuletzt geöffnet",
    "redo": "Wiederholen",
    "save": "Speichern",
    "saveAs": "Speichern unter",
    "saveAsDnaConvert": "SnapGene DNA (.dna, U→T-Konvertierung)",
    "saveAsFasta": "FASTA-Datei (.fasta)",
    "saveAsGen": "GenePad-Datei (.gen)",
    "saveAsGenbank": "GenBank-Datei (.gb)",
    "saveAsGjson": "GJSON-Datei (.gjson)",
    "saveAsRnaConvert": "SnapGene RNA (.rna, T→U-Konvertierung)",
    "saveAsSnapgene": "SnapGene-Datei (.dna)",
    "saveAsSnapgeneProt": "SnapGene-Protein-Datei (.prot)",
    "saveAsSnapgeneRna": "SnapGene-RNA-Datei (.rna)",
    "sectionAnnotate": "Annotation",
    "sectionEdit": "Bearbeiten",
    "sectionFile": "Datei",
    "selectAll": "Alles auswählen",
    "sense35": "Sense-Strang 3'→5'",
    "sense53": "Sense-Strang 5'→3'",
    "shareDirtyMessage": "Beim Teilen wird die auf dem Datenträger gespeicherte Version verwendet (ohne ungespeicherte Änderungen). Um die neuesten Inhalte zu teilen, brechen Sie bitte ab, speichern Sie die Datei und teilen Sie sie erneut.",
    "shareDirtyTitle": "Datei enthält ungespeicherte Änderungen",
    "shareFailed": "Teilen fehlgeschlagen: {{message}}",
    "shareSavedVersion": "Gespeicherte Version teilen",
    "shareToApps": "Über andere Programme teilen",
    "shareUnsavedMessage": "Diese Datei wurde noch nicht auf dem Datenträger gespeichert. Bitte speichern Sie die Datei zuerst, bevor Sie sie teilen.",
    "shareUnsavedTitle": "Datei nicht gespeichert",
    "teamDeliverFailed": "{{count}} Dateien konnten nicht übermittelt werden",
    "teamDeliverPublicDone": "{{count}} Dateien in die öffentliche Bibliothek übermittelt",
    "teamMenuHint": "An Team-Server übermitteln",
    "tooltipAddFeature": "Annotation zum ausgewählten Bereich hinzufügen",
    "tooltipAddPrimer": "Primer hinzufügen",
    "tooltipCut": "Ausschneiden",
    "tooltipDelete": "Löschen",
    "tooltipFileAssoc": "Dateiformatzuordnung",
    "tooltipOpenWith": "Öffnungsmethode auswählen",
    "tooltipPaste": "Einfügen",
    "tooltipProperties": "Sequenzeigenschaften anzeigen und bearbeiten",
    "tooltipSelectAll": "Alles auswählen (Strg+A)",
    "tooltipShare": "Datei teilen",
    "tooltipTutorial": "NGS-Tutorial im Browser öffnen (genepad.cn/ngs)",
    "tutorial": "Tutorial",
    "undo": "Rückgängig",
    "updateAvailable": "Neue Version verfügbar"
  },
  "tools": {
    "aiAssistant": "KI-Assistent",
    "aminoAcidTable": "Aminosäure-Tabelle",
    "categories": {
      "experiment": "Experimente und Analyse",
      "sequence": "Sequenzen und Translation",
      "smart": "Intelligente Werkzeuge"
    },
    "codonOptimization": "Codon-Optimierung",
    "codonTable": "Codon-Tabelle",
    "electrophoresis": "Elektrophorese-Simulation",
    "enzymeLibrary": "Restriktionsenzym-Bibliothek",
    "molecularCloning": "Molekulare Klonierung",
    "plasmidLibrary": "Gen-Dateibibliothek",
    "toolbox": "Werkzeugkasten"
  },
  "tour": {
    "addFeatureBody": "Hier kannst du Annotationen zur Sequenz hinzufügen: Markiere zuerst einen Basenbereich in der Sequenzansicht und wähle dann „Annotation hinzufügen“; oder verwende „Häufige Elemente automatisch erkennen“, um Vektorrückgrat, Promotoren, Resistenzgene und andere gängige Elemente automatisch zu identifizieren.",
    "addFeatureTitle": "Annotation hinzufügen",
    "aiAssistantBody": "Der KI-Assistent kann dir derzeit bei der Datenbanksuche, der Organisation von Plasmidaufzeichnungen und der Programmeinrichtung helfen; Funktionen wie molekulares Klonen und Primerdesign sind noch nicht ausgereift. Richte zuerst unter Einstellungen → KI-Assistent den API-Schlüssel ein und wähle ein Modell aus, dann kann er verwendet werden.",
    "aiAssistantTitle": "KI-Assistent",
    "alignmentBody": "Klicke hier, um das Sequenzalignement-Panel rechts zu öffnen und andere Sequenzen mit der aktuellen Sequenz zu vergleichen, Unterschiede und übereinstimmende Bereiche zu sehen; erneutes Klicken blendet es wieder aus.",
    "alignmentTitle": "Sequenzalignement",
    "cdsBody": "Dies ist eine CDS-kodierende Annotation. Ein Rechtsklick auf den Annotationsbalken in der Sequenzansicht ermöglicht Bearbeiten, Löschen, Anzeigen von Proteineigenschaften, Codon-Optimierung und mehr; ein Doppelklick öffnet direkt das Bearbeitungsfenster.",
    "cdsTitle": "Kontextmenü für Annotationen",
    "dividerBody": "Ziehe diesen Trenner zwischen Karte und Sequenzansicht, um das Anzeigeverhältnis der beiden frei anzupassen; ziehst du den Trenner ganz an den Rand, wird die entsprechende Ansicht eingeklappt und kann bei Bedarf über die linke Symbolleiste wieder geöffnet werden.",
    "dividerTitle": "Ansichtsverhältnis anpassen",
    "done": "Loslegen",
    "enzymeSettingsBody": "Hier werden die Restriktionsschnittstellen zentral verwaltet: Die beiden Dropdowns „Aktueller Enzympool/Filterprofil“ bestimmen die angezeigten Enzyme (gekoppelt an die Symbolleiste am unteren Rand der Karte), die Schaltflächen darunter schalten die Schnittstellen in Karte/Sequenzansicht ein bzw. aus, und von hier aus kann auch die Enzymbibliothek geöffnet werden.",
    "enzymeSettingsTitle": "Einstellungen für Restriktionsschnittstellen",
    "enzymesBody": "Klicke auf die Scheren-Schaltfläche, um Restriktionsschnittstellen auf der Karte anzuzeigen. Über die Dropdowns „Aktueller Enzympool/Filterprofil“ kann die verwendete Enzymsammlung nach Funktionsgruppen gefiltert werden; die Liste der Restriktionsenzyme lässt sich nach Preis pro Reaktion sortieren, um günstige Enzyme zu finden.",
    "enzymesTitle": "Restriktionsenzyme und Enzympools",
    "later": "Später lernen",
    "libAiRefreshBody": "Diese Schaltfläche neben der Kopfzeile der Liste „Tags“ kann per KI Tags für alle Dateien in der Bibliothek generieren: Wähle entweder „Nur ohne Tags aktualisieren“ oder „Alle neu generieren“; die Aufgabe läuft im Hintergrund und die Liste wird nach Abschluss automatisch aktualisiert. Konfiguriere vor der Verwendung das Modell unter „KI-Einstellungen“.",
    "libAiRefreshTitle": "KI-Massenaktualisierung von Tags",
    "libInfoBody": "Das rechte Panel fasst Name, Pfad, Tags und zugehöriges Projekt der ausgewählten Datei zusammen: Tags können direkt hinzugefügt oder entfernt werden, oder klicke auf „Tags mit KI generieren“, um die Tags der aktuellen Datei neu zu schreiben.",
    "libInfoTitle": "Dateidetails",
    "libListBody": "Die mittlere Liste enthält jede von dir geöffnete Gendatei; Dateien, die in überwachten Ordnern gefunden werden, werden ebenfalls automatisch aufgenommen. Doppelklicke auf eine Zeile, um die Datei zu öffnen; markiere das Kontrollkästchen am Zeilenanfang für Stapeloperationen.",
    "libListTitle": "Liste der Gendateien",
    "libPathsBody": "Wechsle zum Tab „Ursprünglicher Pfad“, um Dateien nach ihrer tatsächlichen Verzeichnisstruktur auf der Festplatte anzuzeigen: Klicke auf einen Ordner, um nur die Dateien in diesem Verzeichnis in der mittleren Liste anzuzeigen; klicke auf den Wurzelknoten „Alle Dateien“, um wieder alle anzuzeigen.",
    "libPathsTitle": "Nach ursprünglichem Pfad gruppieren",
    "libProjectsBody": "Die linke „Dateiverwaltung“ gruppiert standardmäßig nach Projekten: Klicke auf „Neues Projekt“, um ein eigenes Projekt zu erstellen, und ziehe Dateien aus der mittleren Liste auf den Projektordner, um sie zuzuordnen; „Nicht zugeordnet“ sammelt Dateien, die noch keinem Projekt zugeordnet sind. Klicke auf ein Projekt, um in der mittleren Liste nur dessen Dateien anzuzeigen.",
    "libProjectsTitle": "Nach Projekten gruppieren",
    "libRowBody": "Die erste Datei in der Liste wurde für dich ausgewählt. Ein Rechtsklick auf eine Dateizeile ermöglicht Öffnen, Öffnen mit einem anderen Programm, Öffnen des Speicherorts, Teilen über andere Programme, nach dem Beitritt zum Team das Einreichen in die öffentliche Bibliothek oder an bestimmte Mitglieder, Entfernen aus der Dateibibliothek; ein Doppelklick auf die Zeile öffnet die Datei direkt.",
    "libRowTitle": "Kontextmenü für Dateien",
    "libScanBody": "Klicke auf „Verzeichnis scannen“ und wähle einen Ordner aus, um alle darin enthaltenen Gendateien (einschließlich Unterverzeichnisse) auf einmal in die Bibliothek aufzunehmen; dies ist der einfachste Weg, um bereits auf der Festplatte vorhandene Dateien erstmals in die Dateibibliothek zu importieren.",
    "libScanTitle": "Verzeichnis scannen",
    "libSearchBody": "Gib im Suchfeld Namen, Pfad oder Tag-Schlüsselwörter ein (mehrere Wörter können durch Leerzeichen getrennt werden), um die Liste sofort zu filtern; leere das Suchfeld, um wieder alle anzuzeigen, oder kombiniere mit der Tag-Cloud rechts, um weiter einzugrenzen.",
    "libSearchTitle": "Suche",
    "libTagsBody": "Die Tag-Cloud fasst alle Tags im aktuellen Bereich zusammen, wobei die Schriftgröße mit der Häufigkeit zunimmt; klicke auf ein Tag, um Dateien zu filtern, und erneut, um den Filter aufzuheben. Bei Auswahl mehrerer Tags kann „Alle erfüllen“ aktiviert werden, um Dateien zu verlangen, die alle Tags besitzen.",
    "libTagsTitle": "Tag-Cloud",
    "libTeamBody": "Nach dem Beitritt zum Teamserver kannst du hier das Team-Center öffnen: Bearbeite eingehende Anfragen, sieh dir Einreichungen und Ankündigungen an; die danebenliegende Option „Mit persönlichem Team-Speicher synchronisieren“ sichert Dateien aus der Bibliothek in deinem persönlichen Team-Speicher, und in der linken Dateiverwaltung erscheint die Kategorie „Teamfreigaben“.",
    "libTeamTitle": "Team",
    "libWatchBody": "Nachdem du häufig verwendete Verzeichnisse zur Überwachung hinzugefügt hast, wird die Dateibibliothek bei jedem Öffnen automatisch synchronisiert: Neue Dateien werden automatisch aufgenommen, verschwundene Dateien automatisch entfernt; welche Dateiendungen überwacht werden, kannst du selbst festlegen.",
    "libWatchTitle": "Ordner überwachen",
    "libraryBody": "Öffne die Gen-Dateibibliothek, um Gendateien auf der Festplatte zentral zu verwalten: Überwachte Ordner werden automatisch gescannt, Plasmide können nach Tags durchsucht werden; Dateien in der Bibliothek können mit einem Klick geöffnet, geteilt oder an Teammitglieder gesendet werden.",
    "libraryTitle": "Gen-Dateibibliothek",
    "mapLabelsBody": "Die Karte zeigt standardmäßig nur Elementfarbblöcke. Klicke auf diese Tag-Schaltfläche, um Annotationsnamen auf der Karte anzuzeigen; erneutes Klicken blendet sie aus.",
    "mapLabelsTitle": "Annotationsnamen in der Karte",
    "mapSeqLinkBody": "Schalte die Anzeige von Karte und Sequenz auf den Modus „Entweder-oder“ um oder wechsle vom Entweder-oder-Modus zurück zum Modus, in dem beide beliebig angezeigt werden können.",
    "mapSeqLinkTitle": "Karte/Sequenz gleichzeitig anzeigen",
    "next": "Weiter",
    "openWithBody": "Möchtest du die aktuelle Datei mit anderer Software wie SnapGene anzeigen? Klicke hier, um die Öffnungsmethode auszuwählen; bei ungespeicherten Änderungen wirst du zuerst zur Behandlung aufgefordert.",
    "openWithTitle": "Mit anderer Anwendung öffnen",
    "prev": "Zurück",
    "pro": "Alle Tutorial-Hinweise überspringen",
    "proConfirmBody": "Die verbleibenden Einführungsschritte werden nicht mehr angezeigt. Um sie erneut zu sehen, kannst du sie unter Einstellungen → Darstellung → Anfänger-Tutorial zurücksetzen; sie erscheinen dann beim nächsten Öffnen wieder.",
    "proConfirmLeave": "Tutorial überspringen",
    "proConfirmStay": "Tutorial fortsetzen",
    "proConfirmTitle": "Anfänger-Tutorial überspringen?",
    "propertiesOpenBody": "Metadaten wie Name, Länge, Topologie, Annotationen und Primer der Sequenz sind im Eigenschaften-Panel zusammengefasst (standardmäßig ausgeblendet). Klicke auf diese „Eigenschaften“-Schaltfläche in der Seitenleiste, um es zu öffnen; danach stellt das Tutorial das Panel selbst vor.",
    "propertiesOpenTitle": "Eigenschaften-Panel öffnen",
    "railBody": "Diese Spalte von Schaltflächen auf der linken Seite dient zum Ein-/Ausblenden der einzelnen Ansichten: Karte, Sequenz, Restriktionsschnittstellen, Alignment und Eigenschaften-Panel werden hier umgeschaltet.",
    "railTitle": "Seitliche Symbolleiste",
    "selectionBody": "Die ersten 20 Basen der Sequenz wurden für dich ausgewählt. Ein Rechtsklick auf die ausgewählte Sequenz ermöglicht vieles: Kopieren, Ersetzen, Löschen, Hinzufügen von Annotationen oder Primern, Design von sgRNAs, BLAST ausführen, Elektrophorese-Simulation und mehr.",
    "selectionTitle": "Kontextmenü für Sequenzen",
    "sequenceToggleBody": "Diese Schaltfläche auf der linken Seite dient zum Einklappen und Wiederherstellen der Sequenzansicht: Wenn die Sequenz angezeigt wird, lautet die Schaltfläche „Sequenz ausblenden“; ein Klick klappt sie ein und schafft Platz für die Karte; nach dem Einklappen wird sie zu „Sequenz anzeigen“, und ein weiterer Klick stellt sie wieder her. Die Karten-Schaltfläche darüber funktioniert analog; mindestens eine der beiden Ansichten bleibt erhalten.",
    "sequenceToggleTitle": "Sequenzansicht ausblenden / anzeigen",
    "settingsBody": "Diese Schaltfläche unten links öffnet die Einstellungen: Erscheinungsbild/Thema, Anordnung der Schnellwerkzeuge, KI-Assistent-Konfiguration, Teamserver und mehr; auch KI-Schalter wie „Plasmid-Tags automatisch generieren“ befinden sich hier, und das Anfänger-Tutorial kann hier ebenfalls zurückgesetzt werden.",
    "settingsTitle": "Einstellungen",
    "shareBody": "Sende das aktuelle Gendokument über WeChat, E-Mail oder andere Anwendungen an andere Personen.",
    "shareTitle": "Teilen",
    "stepOf": "{{current}}/{{total}}",
    "tagsBody": "Tags dienen zum Durchsuchen und Kategorisieren von Plasmiden in der Gen-Dateibibliothek: Klicke auf „+“, um ein Tag selbst einzugeben, oder auf „Tags mit KI aktualisieren“ rechts, um es von der KI generieren zu lassen; wenn du unter Einstellungen → KI-Assistent „Plasmid-Tags automatisch generieren“ aktivierst, werden die Tags bei jedem Öffnen eines Plasmids im Hintergrund automatisch aktualisiert.",
    "tagsTitle": "Plasmid-Tags",
    "toolboxBody": "Diese Aktentaschen-Schaltfläche oben ist die Toolbox und enthält alle integrierten Werkzeuge: Restriktionsenzymbibliothek, Codon-Optimierung, Elektrophorese-Simulation, molekulare Klonierungssimulation usw., nach Kategorien gruppiert; häufig verwendete Werkzeuge können zur danebenliegenden Schnellzugriffsleiste hinzugefügt und mit einem Klick geöffnet werden.",
    "toolboxTitle": "Toolbox",
    "wheelToggleBody": "Diese Schaltfläche bestimmt, in welche Richtung sich die Ansicht bewegt, wenn du im Sequenzbereich das Mausrad scrollst: Pfeile nach links/rechts = das Rad scrollt horizontal; ein Klick wechselt zu Pfeilen nach oben/unten = das Rad scrollt vertikal. Das Alignment-Panel unten links hat dieselbe Schaltfläche; beide Panels merken sich ihre eigene Auswahl, und auch später geöffnete Dateien übernehmen sie.",
    "wheelToggleTitle": "Scrollrichtung umschalten"
  },
  "update": {
    "aiTranslateFailed": "Übersetzung fehlgeschlagen: {{error}}",
    "aiTranslateNotConfigured": "Um das Änderungsprotokoll in die aktuelle Sprache zu übersetzen, konfigurieren Sie bitte zuerst den KI-Assistenten in den Einstellungen.",
    "aiTranslateRetry": "Erneut übersetzen",
    "aiTranslateRunning": "Übersetzung läuft...",
    "aiTranslateSection": "KI-Übersetzung",
    "aiTranslateStart": "Übersetzen",
    "aiTranslateStop": "Stoppen",
    "aiTranslateStopped": "Übersetzung gestoppt.",
    "changelogLoadError": "Änderungsprotokoll konnte nicht abgerufen werden",
    "changelogTitle": "Änderungsprotokoll",
    "checkingForUpdates": "Suche nach Updates...",
    "currentVersion": "Aktuelle Version",
    "description": "Aktuelle Version {{current}}, neueste Version {{latest}}",
    "download": "Jetzt herunterladen",
    "downloadError": "Updateprüfung fehlgeschlagen",
    "downloadingUpdate": "Download läuft: {{percent}} %",
    "downloadingUpdateNoSize": "Download läuft...",
    "installConfirming": "Warte auf Bestätigung...",
    "installFailed": "Update fehlgeschlagen: {{error}}",
    "installFailedHint": "Sie können das Update auch manuell von der offiziellen Website herunterladen und installieren.",
    "installNow": "Jetzt aktualisieren",
    "installWithoutSaving": "Ohne Speichern aktualisieren",
    "installingUpdate": "Installation läuft, die Anwendung wird beendet oder neu gestartet...",
    "loadingNotes": "Änderungsprotokoll wird geladen...",
    "noContext": "Keine Update-Informationen erhalten.",
    "originalNotes": "Original",
    "platform": "Aktuelle Plattform",
    "releaseNotes": "Neuerungen",
    "retryInstall": "Update wiederholen",
    "saveAndInstall": "Speichern und aktualisieren",
    "skipVersion": "Diese Version überspringen",
    "title": "Neue Version verfügbar",
    "unknownPlatform": "Unbekannte Plattform",
    "unsavedBeforeUpdateMessage": "Möchten Sie ungespeicherte Dokumente vor dem Update speichern?",
    "unsavedBeforeUpdateTitle": "Ungespeicherte Dokumente vorhanden",
    "upToDate": "Sie verwenden bereits die neueste Version",
    "updateAvailable": "Neue Version verfügbar",
    "viewChangelog": "Letzte Änderungen anzeigen",
    "visitWebsite": "Website besuchen"
  }
}