Files
HealthLog/messages/pl.json
T
Marc-André Bombeck 83c06051fe fix(garmin): read weigh-ins in both shapes, keep refused resources out of the way
Weigh-ins: Garmin's document has no samplePk and gives kilograms, the live
service sends a samplePk and grams. A weigh-in now takes its id from
samplePk or else its own GMT instant, reads each mass by magnitude (above
1000 is grams), and is written whole or not at all: a missing weight, a
missing instant or one implausible value drops every row of it, counted
on the wide event by reason.

Refused resources: a lasting 4xx on one resource (a cycle summary for an
account that tracks no cycle) is noted once on the progress column,
counts as done for the backfill, is skipped by the hourly sync and is
listed in the card's details. It no longer holds the backfill open or
turns the connection red. The cycle leg never parks the connection,
whatever it is refused with.

Backfill: weigh-ins walk back to the start of Garmin Connect on their
own, so history before the first watch day and a scale-only account
arrive. Progress and the completion stamp are written only while the
connection the slice started on is still the stored one.

Key: connect sends the key to the one service the person picks (Garmin
Connect or Garmin Connect China), never to both. A parked key is asked
about again once a day with a single token exchange and reconnected when
Garmin accepts it. The key's end is read from the token's own iat and
exp, an estimate the key outlived is cleared after an accepted exchange,
and the validity can be corrected from the card's menu (PATCH
/api/garmin/key-expiry, with the day the key was created) without
pasting it again.

Sync: an incremental run reaches back to the last successful sync, up to
a year, so an outage longer than the 30-day window leaves no gap; a night
Garmin no longer reports (deleted, or turned into a nap) is retired.

Card: connect errors are translated from meta.errorCode in every locale.

Types: BODY_BATTERY, STRESS_LEVEL, TRAINING_READINESS and
ACUTE_TRAINING_LOAD get source ladders of their own (the device or the
bridge first, then the hand-entered sources in their usual order), join
the ranked types and the provenance picker, and the recovery-empty
description names them.
2026-11-04 10:56:52 +01:00

14202 lines
770 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"common": {
"listCapped": "Widać tylko ostatnie {count}; starsze wpisy nie są tu wymienione.",
"save": "Zapisz",
"conflictReloaded": "Odświeżono z serwera. Wprowadź zmianę jeszcze raz.",
"cancel": "Anuluj",
"delete": "Usuń",
"undo": "Cofnij",
"edit": "Edytuj",
"moreOptions": "Więcej opcji",
"create": "Utwórz",
"close": "Zamknij",
"loading": "Ładowanie…...",
"loadFailed": "Nie udało się załadować",
"error": "Błąd",
"saved": "Zapisano",
"pullToRefresh": "Odświeżanie…",
"no": "Nie",
"noData": "Brak danych",
"optional": "Opcjonalne",
"active": "Aktywne",
"inactive": "Nieaktywne",
"disabled": "Wyłączone",
"networkError": "Błąd sieci",
"openDatePicker": "Otwórz wybór daty",
"openTimePicker": "Otwórz wybór godziny",
"hours": "Godziny",
"minutes": "Minuty",
"feet": "ft",
"inches": "in",
"heightFeet": "Wzrost w stopach",
"heightInches": "Wzrost w calach",
"period": "AM/PM",
"am": "AM",
"pm": "PM",
"unknownError": "Nieznany błąd",
"copied": "Skopiowano!",
"or": "lub",
"unknown": "Nieznane",
"add": "Dodaj",
"import": "Importuj",
"test": "Testuj",
"reset": "Resetuj",
"copy": "Kopiuj",
"copyDetails": "Kopiuj szczegóły",
"retry": "Spróbuj ponownie",
"showPassword": "Pokaż hasło",
"hidePassword": "Ukryj hasło",
"learnMore": "Dowiedz się więcej",
"dismiss": "Odrzuć",
"moreInfo": "Więcej informacji",
"durationHoursMinutes": "{hours} godz. {minutes} min",
"durationMinutes": "{minutes} min",
"durationClockMinutes": "{time} min",
"durationClockHours": "{time} godz.",
"errorIdLabel": "ID błędu",
"errorIdCopy": "Kopiuj ID błędu",
"errorIdCopied": "Skopiowano ID błędu",
"readThrottled": "W tej chwili jest zbyt wiele zapytań, więc spróbuj ponownie później.",
"sessionEnded": "Twoja sesja wygasła, więc zaloguj się ponownie, aby kontynuować.",
"signIn": "Zaloguj się"
},
"apiErrors": {
"measurement": {
"create": {
"invalid": "Sprawdź dane pomiaru i spróbuj ponownie."
},
"duplicate_timestamp": "Pomiar dla tego czasu już istnieje."
},
"mood": {
"list": {
"invalid": "Filtry listy nastroju są nieprawidłowe."
},
"create": {
"invalid": "Sprawdź wpis nastroju i spróbuj ponownie."
},
"update": {
"invalid": "Sprawdź wpis nastroju i spróbuj ponownie."
},
"duplicate_timestamp": "Wpis nastroju dla tego czasu już istnieje.",
"not_found": "Ten wpis nastroju nie jest już dostępny.",
"ratedFactor": {
"out_of_range": "Ocena czynnika jest poza dozwolonym zakresem."
}
},
"labs": {
"create": {
"invalid": "Sprawdź wynik badania i spróbuj ponownie."
},
"result": {
"notFound": "Ten wynik badania nie jest już dostępny."
},
"biomarker": {
"notFound": "Ten biomarker nie jest już dostępny.",
"duplicate": "Biomarker o tej nazwie już istnieje.",
"create": {
"invalid": "Sprawdź dane biomarkera i spróbuj ponownie."
},
"update": {
"invalid": "Sprawdź dane biomarkera i spróbuj ponownie.",
"referenceRangeInvalid": "Dolna wartość referencyjna nie może przekraczać górnej."
}
},
"update": {
"invalid": "Sprawdź wynik badania i spróbuj ponownie.",
"linkedFieldsImmutable": "Edytuj biomarker, aby zmienić nazwę, jednostkę, panel lub zakres referencyjny.",
"qualitativeExpected": "Wprowadź wynik tekstowy dla tego odczytu jakościowego.",
"numericExpected": "Wprowadź liczbę dla tego odczytu ilościowego.",
"referenceRangeInvalid": "Dolna wartość referencyjna nie może przekraczać górnej."
}
},
"onboarding": {
"disclaimer": {
"invalid": "Potwierdź ponownie informację medyczną."
},
"tour": {
"invalid": "Nie udało się zapisać postępu prezentacji."
},
"complete": {
"invalid": "Sprawdź dane profilu i spróbuj ponownie."
},
"user": {
"notFound": "Nie znaleziono Twojego konta."
},
"step": {
"rateLimited": "Zbyt wiele prób. Zaczekaj i spróbuj ponownie.",
"invalid": "Nie udało się zapisać tego kroku wprowadzenia.",
"completed": "Wprowadzenie zostało już ukończone.",
"outOfOrder": "Twój postęp się zmienił. Odśwież stronę i kontynuuj.",
"concurrent": "Twój postęp się zmienił. Odśwież stronę i kontynuuj."
}
},
"profile": {
"update": {
"nothingSaved": "Nic nie zostało zapisane. Sprawdź oznaczone pole i spróbuj ponownie.",
"invalidBody": "Nie udało się odczytać aktualizacji profilu.",
"emailInUse": "Ten adres e-mail jest już używany.",
"emailRateLimited": "Zbyt wiele zmian adresu e-mail. Spróbuj ponownie później.",
"emailSecondFactorRequired": "Potwierdź drugim składnikiem lub kluczem dostępu, aby zmienić adres e-mail."
}
},
"auth": {
"reproof": {
"required": "Potwierdź obecne hasło, aby to zmienić.",
"failed": "Weryfikacja nie powiodła się. Nic nie zostało zmienione."
}
},
"biomarkers": {
"unit": {
"locked": "Ten marker ma już wyniki, więc nie możesz zmienić jego jednostki. Zapisane wartości byłyby pokazywane w nowej jednostce bez przeliczenia."
}
},
"symptoms": {
"definition": {
"limitReached": "Masz 8 objawów. Ukryj jeden, aby dodać kolejny.",
"notFound": "Ten objaw już nie istnieje."
},
"episode": {
"notOpen": "Ta choroba nie jest już otwarta. Wybierz inną lub żadną."
},
"event": {
"notFound": "Ten wpis już nie istnieje."
}
},
"medications": {
"notFound": "Ten lek nie jest już dostępny.",
"ingredients": {
"invalid": "Sprawdź skład i spróbuj ponownie.",
"unitMismatch": "Ta jednostka nie jest dostępna dla tego składnika.",
"extract": {
"fileType": "Prześlij plik JPEG, PNG, WebP lub PDF.",
"fileTooLarge": "Plik jest większy niż 10 MB.",
"rateLimited": "Za dużo odczytów etykiet. Spróbuj ponownie za godzinę.",
"budgetExceeded": "Dzisiejszy budżet AI został wykorzystany.",
"failed": "Nie udało się odczytać etykiety. Spróbuj ostrzejszego zdjęcia."
}
}
},
"aiRuns": {
"readerBusy": "Czytnik dokumentów jest zajęty innymi zadaniami. Spróbuj ponownie za minutę."
}
},
"doctorReport": {
"title": "Raport zdrowotny",
"anamnesisTitle": "Profil zdrowotny",
"anamnesisNotRecorded": "Brak danych",
"anamnesisUnreadable": "Nie udało się odczytać zapisanej wartości",
"anamnesisConditions": "Choroby przewlekłe",
"anamnesisSmoking": "Palenie tytoniu",
"anamnesisAlcohol": "Wzorzec spożycia alkoholu",
"anamnesisShiftSchedule": "Harmonogram pracy",
"anamnesisColFact": "Pozycja profilu",
"anamnesisColValue": "Zapisana wartość",
"subtitle": "HealthLog: osobisty raport zdrowotny",
"patient": "Pacjent",
"dateOfBirth": "Data urodzenia",
"gender": "Płeć",
"genderMale": "Mężczyzna",
"genderFemale": "Kobieta",
"genderOther": "Niebinarna",
"height": "Wzrost",
"period": "Okres raportu",
"createdOn": "Utworzono",
"vitalsTitle": "Parametry życiowe: podsumowanie",
"colParameter": "Parametr",
"colCurrent": "Aktualny",
"colAvgPeriod": "Śr. okresu",
"colMin": "Min",
"colMax": "Maks",
"colN": "n",
"bpClassificationTitle": "Ciśnienie tętnicze: klasyfikacja ESH (2023)",
"avgBp": "Średnie ciśnienie tętnicze",
"classification": "Klasyfikacja",
"bmiTitle": "Wskaźnik masy ciała (BMI)",
"bmiRow": "BMI:{bmi} kg/m², Classification: {class} (WHO)",
"complianceTitle": "Przestrzeganie leków",
"glp1Title": "Terapia GLP-1",
"glp1WeightSummary": "Waga w okresie raportu: {start} kg → {end} kg ({delta} kg)",
"glp1CurrentDose": "Aktualna dawka:{value} {unit} (since {since})",
"glp1Compliance": "Przestrzeganie zaleceń:{taken} / {total} ({rate}%)",
"glp1SideEffectsTitle": "Zarejestrowane działania niepożądane",
"colGlp1Date": "Data",
"colGlp1Dose": "Dawka",
"colGlp1Note": "Notatka",
"colGlp1SideEffect": "Skutek uboczny",
"colMedication": "Lek",
"colTaken": "Przyjęte",
"colSkipped": "Pominięte",
"colMissed": "Pominięte",
"colExpected": "Oczekiwane",
"colComplianceRate": "Wskaźnik przestrzegania",
"moodTitle": "Przebieg nastroju",
"moodSummary": "Średnia {avg} / 5.0, liczba wpisów {count}, zakres {min}–{max}",
"colMood": "Nastrój",
"colCount": "Liczba",
"colShare": "Udział",
"footerDisclaimer1": "Ten raport został wygenerowany automatycznie z danych samodzielnie rejestrowanych i ma na celu wspierać",
"footerDisclaimer2": "rozmowę lekarza z pacjentem. Nie zastępuje diagnozy medycznej. Korelacje nie oznaczają związku przyczynowego.",
"footerSource": "Źródło: HealthLog | Strefa czasowa: {timezone} | Utworzono: {timestamp}",
"unitSteps": "Kroki",
"bmiUnderweight": "Niedowaga",
"bmiNormal": "Waga prawidłowa",
"bmiOverweight": "Nadwaga (preobesyty)",
"bmiObeseGrade1": "Otyłość I stopnia",
"bmiObeseGrade2": "Otyłość II stopnia",
"bmiObeseGrade3": "Otyłość III stopnia",
"bpOptimal": "Optymalne",
"bpNormal": "Prawidłowe",
"bpHighNormal": "Wysokie prawidłowe",
"bpHypertensionGrade1": "Nadciśnienie 1 stopnia",
"bpHypertensionGrade2": "Nadciśnienie 2 stopnia",
"bpHypertensionGrade3": "Nadciśnienie 3 stopnia",
"moodAwful": "Bardzo zły",
"moodBad": "Źle",
"moodNeutral": "Neutralny",
"moodGood": "Dobrze",
"moodGreat": "Bardzo dobry",
"typeGlucoseFasting": "Glukoza (na czczo)",
"typeGlucosePostprandial": "Glukoza (po posiłku)",
"typeGlucoseRandom": "Glukoza (dowolna)",
"typeGlucoseBedtime": "Glukoza (przed snem)",
"typeGlucoseUnspecified": "Glukoza (bez oznaczenia)",
"glucoseClassificationTitle": "Glikemia: zakresy referencyjne (ADA 2024 / DDG)",
"glucoseRow": "{label}: śr. {avg} {unit} (cel {rangeMin}–{rangeMax}), {class}",
"glucoseInTarget": "w celu",
"glucoseBelowTarget": "poniżej celu",
"glucoseAboveTarget": "powyżej celu",
"practiceLabel": "Gabinet",
"insurer": "Ubezpieczyciel zdrowotny",
"insuranceNumber": "Nr ubezpieczonego",
"summaryTitle": "Podsumowanie kliniczne",
"summaryReadings": "Zarejestrowano w ciągu {days} dni: {count} pomiarów w {params} parametrach.",
"summaryTrend": "{label}: ostatnio {latest} {arrow}",
"summaryAdherence": "Przestrzeganie zaleceń lekowych: {rate}% (średnia ważona).",
"chartsTitle": "Wykresy trendów",
"packageReadme": "Dokumentacja zdrowotna HealthLog\n\nTen pakiet zawiera:\n- report.pdf: raport zdrowotny dla lekarza.\n- bundle.json: te same dane jako dokument HL7 FHIR R4 (Bundle), zgodny z ePA.\n\nWygenerowano w HealthLog.",
"wellnessTitle": "Podsumowanie dobrostanu",
"wellnessDisclaimer": "To opisowe wyniki dobrostanu obliczone na podstawie śledzonych sygnałów (0–100). Nie są to oceny kliniczne ani diagnozy.",
"wellnessRecovery": "Regeneracja",
"wellnessStress": "Stres",
"wellnessStrain": "Obciążenie",
"cycleTitle": "Cykl menstruacyjny",
"cycleLmp": "Ostatnia miesiączka",
"cycleAvgLength": "Średnia długość cyklu",
"cycleAvgPeriod": "Średnia długość miesiączki",
"cyclePhase": "Bieżąca faza",
"cycleDays": "dni",
"cycleColStart": "Początek miesiączki",
"cycleColLength": "Długość cyklu (dni)",
"cycleColPeriod": "Długość miesiączki (dni)",
"cyclePhases": {
"MENSTRUAL": "Menstruacyjna",
"FOLLICULAR": "Folikularna",
"OVULATORY": "Owulacyjna",
"LUTEAL": "Lutealna"
},
"labsTitle": "Wyniki badań",
"labsColAnalyte": "Biomarker",
"labsColValue": "Wartość",
"labsColReference": "Norma",
"labsColStatus": "Status",
"labsColDate": "Data",
"glucoseClinical": {
"title": "Przegląd glukozy (kliniczny)",
"colMetric": "Wskaźnik",
"colValue": "Wartość",
"tirInRange": "Czas w zakresie ({low}–{high} {unit})",
"tirLow": "Niski (< {low} {unit})",
"tirVeryLow": "Bardzo niski (< {veryLow} {unit})",
"tirHigh": "Wysoki (> {high} {unit})",
"tirVeryHigh": "Bardzo wysoki (> {veryHigh} {unit})",
"mean": "Średnia glukoza",
"gmi": "Wskaźnik zarządzania glukozą (GMI)",
"eA1c": "Szacowane HbA1c",
"cv": "Zmienność (CV%)",
"spotCaveat": "To szacunki z pojedynczych pomiarów, nie profil z monitora ciągłego. Czytaj je jako kierunek zmian, a nie kliniczny werdykt."
},
"illnessTitle": "Schorzenia i choroby",
"illnessOngoing": "Trwająca",
"illnessColCondition": "Schorzenie",
"illnessColBodySite": "Miejsce na ciele",
"illnessColType": "Typ",
"illnessColLifecycle": "Przebieg",
"illnessColOnset": "Początek",
"illnessColResolved": "Ustąpiła",
"allergiesTitle": "Alergie i nietolerancje",
"reactionUnreadable": "Reakcja zapisana, ale nie można jej odszyfrować",
"allergiesColSubstance": "Substancja",
"allergiesColCategory": "Kategoria",
"allergiesColKind": "Rodzaj",
"allergiesColSeverity": "Nasilenie",
"allergiesColReaction": "Reakcja",
"allergiesColStatus": "Status",
"familyHistoryTitle": "Wywiad rodzinny",
"familyHistoryColRelationship": "Pokrewieństwo",
"familyHistoryColCondition": "Schorzenie",
"familyHistoryColAgeAtOnset": "Wiek zachorowania",
"labsSourceRangeNote": "* Zakres referencyjny pochodzi z samego wyniku i różni się od zapisanego zakresu:",
"labsCatalogRangeLabel": "zapisany zakres",
"visitsTitle": "Wizyty lekarskie",
"visitsColDate": "Data",
"visitsColPractice": "Gabinet",
"visitsColKind": "Rodzaj",
"visitsColReason": "Powód",
"visitsColOutcome": "Wynik",
"visitsColConditions": "Choroby",
"surgicalHistoryTitle": "Historia operacji",
"surgicalHistoryColDate": "Data",
"surgicalHistoryColProcedure": "Zabieg",
"surgicalHistoryColBodySite": "Miejsce na ciele",
"surgicalHistoryColOutcome": "Wynik",
"immunizationsTitle": "Szczepienia",
"immunizationsColDate": "Data",
"immunizationsColVaccine": "Szczepionka",
"immunizationsColDose": "Dawka",
"immunizationsColLot": "Seria",
"emergency": {
"title": "Informacje na wypadek nagły",
"subtitle": "Do użycia w sytuacji nagłej. Dane deklarowane; potwierdź, jeśli to możliwe.",
"none": "Nie podano",
"unreadable": "Nie udało się odczytać zapisanej wartości",
"bloodType": "Grupa krwi",
"bloodTypeUnknown": "Nieznana",
"bloodTypeValues": {
"A_POS": "A dodatnia",
"A_NEG": "A ujemna",
"B_POS": "B dodatnia",
"B_NEG": "B ujemna",
"AB_POS": "AB dodatnia",
"AB_NEG": "AB ujemna",
"O_POS": "0 dodatnia",
"O_NEG": "0 ujemna"
},
"severeAllergies": "Ciężkie alergie",
"activeMedications": "Aktualne leki",
"chronicConditions": "Choroby przewlekłe",
"implants": "Implanty i urządzenia",
"advanceDirective": "Oświadczenie woli pacjenta",
"advanceDirectiveValues": {
"EXISTS": "Istnieje",
"NONE": "Brak",
"UNKNOWN": "Nie podano"
},
"organDonor": "Dawca narządów",
"organDonorValues": {
"YES": "Tak",
"NO": "Nie",
"UNKNOWN": "Nie podano"
},
"contacts": "Kontakty w nagłych wypadkach",
"notes": "Dodatkowe uwagi"
},
"courseRange": "Kuracja od {start} do {end}",
"courseSince": "Kuracja od {start}",
"lifePackYears": "Paczkolata",
"lifeAuditC": "AUDIT-C (badanie przesiewowe)",
"lifeAuditCScore": "{score} z 12 dnia {date}.",
"lifeAuditCAbove": "Na lub powyżej progu {cutoff} ({source}).",
"lifeAuditCBelow": "Poniżej progu {cutoff} ({source}).",
"lifeAuditCNoCutoff": "Bez progu zależnego od płci.",
"lifeActivity": "Aktywność fizyczna",
"lifeActivityValue": "{minutes} minut w tygodniu, według deklaracji",
"lifeSitting": "Siedzenie w dzień roboczy",
"lifeSittingValue": "{hours} godz., według deklaracji",
"lifeWork": "Praca",
"lifeNightWork": "praca w nocy",
"lifeExposures": "narażenia: {list}",
"workouts": {
"title": "Treningi",
"summary": "{sessions} treningów, łącznie {hours} h; średnio {perWeek} treningu i {minutesPerWeek} minut tygodniowo.",
"colSport": "Dyscyplina",
"colSessions": "Treningi",
"colTime": "Czas",
"colDistance": "Dystans",
"colEnergy": "Energia",
"colHeartRate": "Średnie tętno",
"moreSports": "Kolejne dyscypliny ({count}) są wliczone do sum, ale nie wymienione."
},
"medicationEffect": {
"title": "Zmiana wokół rozpoczęcia leków",
"colMedication": "Lek / pomiar",
"colStart": "Początek",
"colLevel": "Zmiana poziomu (95% CI)",
"colSlope": "Zmiana trendu (95% CI)",
"colDays": "Dni przed / po",
"to": "do",
"week": "tydzień",
"reasonNoStart": "Brak zapisanej daty rozpoczęcia",
"reasonBefore": "Za mało pomiarów przed rozpoczęciem",
"reasonAfter": "Za mało pomiarów od rozpoczęcia",
"reasonFit": "Nie można obliczyć",
"excludedAdherence": "Pominięto {count} dni po rozpoczęciu (przyjęto mniej niż {floor}% dawek)",
"excludedNotTaking": "Pominięto {count} dni (lek wstrzymany lub przerwa między kuracjami)",
"notTracked": "przyjmowanie nie jest rejestrowane, więc nie pominięto dni z powodu opuszczonych dawek",
"endDoseChange": "okres kończy się {date}, przed pierwszą zmianą dawki",
"days": "{before} dni przed, {after} dni po rozpoczęciu, pominięto {excluded} dni",
"method": "Regresja segmentowa na wartościach dziennych od 90 dni przed do najwyżej 180 dni po rozpoczęciu, przedziały Neweya-Westa. Pominięto dni po rozpoczęciu, w których w ciągu poprzednich 14 dni przyjęto mniej niż 80% dawek. Opisuje związek w czasie, a nie udowodnione działanie leku.",
"autocorrelation": "silna zależność od poprzedniego dnia, więc zakresy mogą nadal być zbyt wąskie",
"window": "analizowano od {from} do {to}, może to wykraczać poza okres raportu",
"windowLine": "Analizowano od {from} do {to}. Ten okres może wykraczać poza okres raportu."
},
"screenerUnvalidated": "{label}: {count} z {total} wyników uzyskano w tłumaczeniu niezwalidowanym naukowo; należy traktować je orientacyjnie."
},
"errorBoundary": {
"title": "Coś poszło nie tak",
"description": "Wystąpił nieoczekiwany błąd. Możesz spróbować ponownie, skopiować szczegóły techniczne lub otworzyć zgłoszenie błędu."
},
"notFound": {
"title": "Ta strona nie istnieje.",
"backToDashboard": "Powrót do panelu"
},
"offlineBanner": {
"message": "Brak połączenia: zmian nie można zapisać, dopóki nie wrócisz online.",
"saveFailed": "Nie udało się zapisać, jesteś offline. Spróbuj ponownie, gdy wrócisz online.",
"showingCached": "Wyświetlane są ostatnio zsynchronizowane dane."
},
"demoBanner": {
"message": "Tryb demo: zmiany nie są zapisywane."
},
"nav": {
"dashboard": "Panel",
"measurements": "Pomiary",
"medications": "Leki",
"insights": "Insights",
"achievements": "Osiągnięcia",
"settings": "Ustawienia",
"admin": "Konsola administratora",
"logout": "Wyloguj",
"login": "Zaloguj",
"notifications": "Powiadomienia",
"theme": "Motyw",
"themeSystem": "Systemowy",
"themeDark": "Ciemny",
"themeLight": "Jasny",
"collapseSidebar": "Zwiń",
"expandSidebar": "Rozwiń",
"collapseSidebarLabel": "Zwiń pasek boczny",
"expandSidebarLabel": "Rozwiń pasek boczny",
"userMenu": "Menu użytkownika",
"accountSettings": "Ustawienia konta",
"mood": "Nastrój",
"coach": "Coach",
"skipToContent": "Przejdź do treści",
"breadcrumb": "Jesteś tutaj",
"sidebar": "Pasek boczny",
"mainNavigation": "Nawigacja główna",
"mobileNavigation": "Nawigacja mobilna",
"loadingScreen": "Ładowanie…",
"more": "Więcej",
"moreSheetTitle": "Więcej",
"moreSheetDescription": "Przejdź do reszty HealthLog.",
"capture": {
"title": "Zapisz",
"description": "Co chcesz zapisać?",
"measurement": "Pomiar",
"measurementDescription": "Waga, ciśnienie, tętno i więcej",
"medication": "Lek",
"medicationDescription": "Oznacz dawkę jako przyjętą",
"mood": "Nastrój",
"moodDescription": "Zapisz nastrój i tagi",
"workout": "Trening",
"workoutDescription": "Sesja, której nie zapisały twoje urządzenia",
"symptom": "Objaw",
"symptomDescription": "Jeden z twoich objawów, z nasileniem",
"lifeEventDescription": "Przeprowadzka, narodziny, nowa praca",
"lifeEvent": "Wydarzenie życiowe"
},
"cycle": "Cykl",
"labs": "Wyniki badań",
"profile": "Profil",
"vorsorge": "Badania",
"illness": "Choroba",
"documents": "Dokumenty",
"vaccinations": "Szczepienia",
"mentalWellbeing": "Dobrostan psychiczny",
"timeline": "Oś czasu"
},
"auth": {
"login": "Zaloguj się",
"register": "Zarejestruj się",
"username": "Nazwa użytkownika",
"password": "Hasło",
"email": "Adres e-mail",
"emailPlaceholder": "imie@przyklad.pl",
"emailOrUsername": "Adres e-mail lub nazwa użytkownika",
"emailOrUsernamePlaceholder": "imie@przyklad.pl lub nazwauzytkownika",
"loginWithPasskey": "Zaloguj się za pomocą passkey",
"loginWithPassword": "Zaloguj się hasłem",
"noAccount": "Nie masz jeszcze konta?",
"hasAccount": "Masz już konto?",
"loginFailed": "Logowanie nie powiodło się",
"registerFailed": "Rejestracja nie powiodła się",
"invitedBanner": "Otrzymano zaproszenie. Utwórz konto, nawet jeśli rejestracja jest zamknięta.",
"alreadySignedIn": {
"title": "Masz już zalogowaną sesję",
"body": "Masz zalogowaną sesję jako {username}. Zaproszenie tworzy nowe konto. Wyloguj się, aby je przyjąć.",
"signOut": "Wyloguj się i przyjmij zaproszenie"
},
"createAccount": "Utwórz konto",
"backToPasskey": "Wróć do passkey",
"passkeySetupLater": "Passkey możesz skonfigurować później w ustawieniach.",
"passwordMinLength": "Min. 12 znaków",
"passwordTooShort": "Hasło musi mieć co najmniej {minLength} znaków.",
"privacyPolicy": "Polityka prywatności",
"passwordBreached": "To hasło pojawia się w znanych wyciekach danych. Wybierz inne.",
"oidc": {
"signInDefault": "Zaloguj się przez SSO",
"errorDenied": "Logowanie zostało anulowane.",
"errorNoEmail": "Twój dostawca tożsamości nie przekazał zweryfikowanego adresu e-mail.",
"errorEmailUnverified": "Twój dostawca tożsamości nie oznaczył Twojego adresu e-mail jako zweryfikowanego.",
"errorIdentityConflict": "Ten adres e-mail należy do konta powiązanego już z inną tożsamością SSO.",
"errorRegistrationDisabled": "Żadne konto nie pasuje do tej tożsamości, a nowe rejestracje są obecnie zamknięte.",
"errorFailed": "Logowanie jednokrotne nie powiodło się. Spróbuj ponownie.",
"errorLinkRequired": "Konto z tym adresem e-mail już tu istnieje. Zaloguj się do niego raz hasłem lub kluczem dostępu, aby połączyć je z logowaniem jednokrotnym."
},
"native": {
"signingInToApp": "Logowanie do aplikacji HealthLog"
},
"mfa": {
"title": "Uwierzytelnianie dwuskładnikowe",
"totpHint": "Wprowadź 6-cyfrowy kod z aplikacji uwierzytelniającej.",
"recoveryHint": "Wprowadź jeden z zapisanych kodów odzyskiwania.",
"securityKeyHint": "Użyj zarejestrowanego klucza bezpieczeństwa, aby kontynuować.",
"codeLabel": "Kod uwierzytelniający",
"recoveryLabel": "Kod odzyskiwania",
"verify": "Zweryfikuj",
"verifyFailed": "Weryfikacja nie powiodła się. Spróbuj ponownie.",
"useSecurityKey": "Użyj klucza bezpieczeństwa",
"useRecoveryCode": "Użyj kodu odzyskiwania",
"useAuthenticator": "Użyj aplikacji uwierzytelniającej",
"backToLogin": "Powrót do logowania",
"rememberDevice": "Zaufaj temu urządzeniu na 30 dni"
},
"enrollMfa": {
"title": "Skonfiguruj drugi składnik",
"body": "Administrator wymaga drugiego składnika na tym koncie. Dodaj aplikację uwierzytelniającą lub klucz bezpieczeństwa, aby kontynuować.",
"signOut": "Wyloguj się"
},
"confirmAccess": {
"title": "Potwierdź, że to Ty",
"body": "Asystent chce połączyć się z Twoimi danymi w HealthLog. Potwierdź, że to Ty, a potem zdecydujesz, czy na to pozwolić.",
"action": "Potwierdź",
"failed": "Nie udało się. Spróbuj ponownie.",
"nothingToConfirm": "Nie ma tu nic do potwierdzenia. Rozpocznij połączenie ponownie w swoim asystencie."
},
"insecureTransport": {
"title": "Na tej stronie nie da się dokończyć logowania",
"body": "Ten serwer ustawia ciasteczko logowania tylko przez https://, a ta strona została otwarta przez http://. Przeglądarka odrzuciłaby ciasteczko, więc logowanie jest tu wyłączone.",
"fixLan": "Serwer w sieci domowej bez TLS: ustaw SESSION_COOKIE_SECURE=false w jego ustawieniach i uruchom go ponownie.",
"fixHttps": "Serwer za proxy HTTPS: otwórz zamiast tego adres https:// i upewnij się, że proxy przekazuje X-Forwarded-Proto: https.",
"localhostNote": "Ta strona działa na http://localhost, a serwer ustawia ciasteczko logowania tylko dla https://. Większość przeglądarek akceptuje to na localhost; jeśli po zalogowaniu wracasz tutaj, ustaw SESSION_COOKIE_SECURE=false."
},
"claim": {
"title": "Przejmij swoją kartę zdrowia",
"titleNamed": "Witaj, {name}",
"description": "Do tej pory ktoś prowadził Twoją kartę zdrowia za Ciebie. Wybierz sposób logowania, a stanie się ona Twoim własnym kontem. Nic nie jest kopiowane ani przenoszone.",
"loading": "Sprawdzanie linku…",
"invalid": "Ten link już nie działa",
"invalidHint": "Jest nieznany, wygasł, został wycofany albo już użyty. Poproś osobę, która go wysłała, o nowy.",
"oidcOnly": "Ten serwer pozwala tylko na logowanie jednokrotne (SSO). Kontynuuj u swojego dostawcy tożsamości.",
"signedInTitle": "Najpierw się wyloguj",
"signedInBody": "Masz zalogowaną sesję jako {username}. Ten link tworzy logowanie dla kogoś innego, więc wyloguj się, zanim go użyjesz.",
"signOut": "Wyloguj i kontynuuj",
"guardiansTitle": "Kto na razie zachowuje dostęp",
"guardiansHint": "Zaproponowane przez osoby, które prowadziły Twoją kartę. Zdecydujesz zaraz po zalogowaniu.",
"guardianUnnamed": "Opiekun",
"usernameHint": "Od 3 do 30 liter, cyfr, _ lub -.",
"usernameReserved": "Nazwy użytkownika zaczynające się od managed- są zarezerwowane.",
"emailHint": "Wymagany, żebyś mógł wrócić, jeśli zapomnisz hasła.",
"consentNote": "Zastrzeżenie i każde użycie AI potwierdzasz sam. Do tego czasu nic z Twojej karty nie trafia do dostawcy AI.",
"expires": "Ten link jest ważny do {date}.",
"submit": "Przejmij",
"submitting": "Przejmowanie…",
"errorTaken": "Ta nazwa użytkownika lub adres e-mail jest już zajęty.",
"errorRateLimit": "Zbyt wiele prób. Odczekaj kilka minut i spróbuj ponownie.",
"errorFailed": "Nie udało się. Spróbuj ponownie za chwilę.",
"errorOffline": "Nie udało się połączyć z serwerem. Sprawdź połączenie i spróbuj ponownie.",
"ssoContinue": "Kontynuuj przez {provider}",
"ssoStarting": "Przekierowywanie…",
"ssoHint": "Od tej pory logujesz się tutaj swoim kontem {provider}.",
"ssoDivider": "lub",
"ssoFallbackName": "logowanie jednokrotne (SSO)",
"errorTitle": "Przejęcie się nie udało",
"errorSubjectBound": "To logowanie należy już do innego konta na tym serwerze. Otwórz link ponownie i użyj innego konta u swojego dostawcy tożsamości.",
"errorEmailTaken": "Twój dostawca tożsamości przekazał adres e-mail, którego używa już inne konto na tym serwerze. Otwórz link ponownie i użyj innego konta albo zapytaj osobę, która administruje serwerem.",
"errorUsernameTaken": "W międzyczasie ktoś zajął tę nazwę użytkownika. Otwórz link ponownie i wybierz inną.",
"errorSignedIn": "Po powrocie byłeś zalogowany. Wyloguj się i otwórz link ponownie.",
"errorSso": "Logowanie u dostawcy tożsamości się nie powiodło. Otwórz link ponownie, aby spróbować jeszcze raz.",
"signInInstead": "Zaloguj się na to konto"
},
"inviteInvalid": {
"title": "Nieprawidłowe zaproszenie",
"description": "Ten link z zaproszeniem jest niekompletny lub został źle skopiowany. Poproś osobę, która cię zaprosiła, o nowy link.",
"toLogin": "Przejdź do logowania"
},
"deletionPending": "To konto zostanie usunięte {date} i do tego czasu jest zablokowane. Administrator tego serwera może cofnąć usunięcie przed tą datą.",
"deletionPendingNoDate": "To konto czeka na usunięcie i jest zablokowane. Administrator tego serwera może cofnąć usunięcie, dopóki się nie zakończy."
},
"dashboard": {
"title": "Pulpit",
"greeting": {
"morning": "Dzień dobry",
"day": "Cześć",
"evening": "Dobry wieczór"
},
"welcomeBack": "{greeting}, witaj ponownie.",
"welcomeBackWithName": "{greeting}, {name}, witaj ponownie.",
"greetingSalutation": "Cześć, {name}",
"streakLabel": "dni z rzędu",
"weight": "Waga",
"bloodPressure": "Ciśnienie krwi",
"pulse": "Tętno",
"bodyFat": "Tkanka tłuszczowa",
"sleep": "Sen",
"steps": "Kroki",
"vo2Max": "VO₂ max",
"vo2MaxUnit": "mL/(kg·min)",
"bpInTarget": "RR w zakresie docelowym",
"weightShort": "Waga",
"bloodPressureSysShort": "RR (Sk)",
"bloodPressureDiaShort": "RR (Rk)",
"pulseShort": "Tętno",
"bodyFatShort": "TT",
"moodShort": "Nastrój",
"sleepShort": "Sen",
"stepsShort": "Kroki",
"vo2MaxShort": "VO₂ max",
"bpInTargetWindow90": "RR-cel (90 d)",
"bpInTargetWindowDynamic": "RR-cel ({days} d)",
"bpInTargetCollecting": "zbieranie danych",
"medications": "Leki",
"quickAddMeasurement": "Zarejestruj pomiar",
"quickAddMood": "Zarejestruj nastrój",
"quickAddMedicationIntake": "Zarejestruj przyjęcie",
"quickAddWorkout": "Zarejestruj trening",
"quickAddLifeEvent": "Zapisz wydarzenie życiowe",
"customizeDashboard": "Dostosuj pulpit",
"medicationIntakeQuickAdd": {
"sheetDescription": "Zapisz dawkę, godzinę i lek w kilku stuknięciach.",
"medicationLabel": "Lek",
"medicationPlaceholder": "Wybierz lek",
"doseLabel": "Dawka",
"dosePlaceholder": "np. 5 mg",
"doseHint": "Wstępnie wypełnione standardową dawką. Zmień ją, aby zapisać inną dawkę tylko dla tego przyjęcia.",
"timeLabel": "Godzina przyjęcia",
"saveError": "Nie udało się zapisać przyjęcia.",
"emptyTitle": "Brak leków",
"emptyDescription": "Najpierw dodaj lek z harmonogramem, a potem wróć tutaj, aby zarejestrować jego przyjęcie.",
"emptyCta": "Dodaj lek",
"noneActionableTitle": "Dziś nic do przyjęcia",
"noneActionableDescription": "Twoje leki są wstrzymane, zapisane tylko jako wpis albo ich kuracja jeszcze się nie zaczęła lub już się skończyła. Przeszłą dawkę nadal możesz dodać w historii leku.",
"noneActionableCta": "Otwórz leki"
},
"quickEntryDiscard": {
"title": "Odrzucić ten wpis?",
"description": "Masz niezapisane dane. Zamknąć formularz i utracić to, co wpisano?",
"confirm": "Odrzuć",
"cancel": "Kontynuuj edycję"
},
"compliance7d": "Przestrzeganie (7 dni)",
"mood": "Nastrój",
"customizeTitle": "Układ panelu",
"heroItemsTitle": "Dzisiejsze wyróżnienia",
"heroItemsDescription": "Wybierz typy elementów, które mogą pojawiać się w dzisiejszych wyróżnieniach.",
"heroItemsNotificationNote": "Ustawieniami powiadomień zarządzasz osobno.",
"heroContentTitle": "Górna karta pokazuje",
"heroContentScore": "Wynik zdrowia i podsumowanie dnia",
"heroContentReminders": "Dzisiejsze wyróżnienia",
"heroItems": {
"coach_checkin": "Podsumowania z Coachem",
"dose_window": "Dawki leków",
"preventive_care": "Profilaktyka",
"sync_issue": "Problemy z synchronizacją",
"milestone": "Kamienie milowe",
"ecg_new_recording": "Nowe zapisy EKG",
"tension_window": "Okresy napięcia",
"same_time_baseline": "Aktywność o tej samej porze",
"upcoming_visit": "Wizyty"
},
"layoutReset": "Przywróć wartości domyślne",
"layoutResetTitle": "Zresetować układ pulpitu?",
"layoutResetBody": "Układ kafelków i wybory dotyczące dzisiejszych wyróżnień wracają do ustawień domyślnych.",
"layoutResetConfirm": "Zresetuj układ",
"layoutSaveSuccess": "Układ panelu zapisany",
"layoutSaveError": "Nie udało się zapisać układu",
"layoutConflictReloaded": "Układ został ponownie wczytany z serwera. Wprowadź zmianę jeszcze raz.",
"layoutResetSuccess": "Przywrócono układ domyślny",
"layoutUsingDefaults": "Aktywny układ domyślny",
"layoutCustomized": "Aktywny układ niestandardowy",
"moveUp": "W górę",
"moveDown": "W dół",
"layoutTileColumn": "Kafelek",
"layoutChartColumn": "Wykres",
"layoutNativeOnlyTitle": "Widoczne w aplikacji mobilnej",
"layoutNativeOnlyHint": "Te widżety rysuje aplikacja mobilna, nie ta strona. Są zapisane w tym samym układzie, więc to tutaj ustawia się ich widoczność.",
"dragHandle": "Przeciągnij, aby zmienić kolejność",
"dragHandleHint": "Strzałki Góra/Dół, lub Spacja plus strzałki na zaznaczonym uchwycie.",
"emptyTitle": "Twój panel jest pusty",
"emptyDescription": "Zarejestruj pierwszy pomiar lub nastrój. Kafelki i wykresy pojawią się automatycznie, gdy będą dane.",
"emptyAddMeasurement": "Zarejestruj pierwszy pomiar",
"staleHint": "Ostatni odczyt {count} d temu",
"staleHintWeeksOne": "Ostatni odczyt 1 tydzień temu",
"staleHintWeeksOther": "Ostatni odczyt {count} tygodni temu",
"staleHintWeeksFew": "Ostatni odczyt {count} tygodnie temu",
"staleHintMonthsOne": "Ostatni odczyt 1 miesiąc temu",
"staleHintMonthsOther": "Ostatni odczyt {count} miesięcy temu",
"staleHintMonthsFew": "Ostatni odczyt {count} miesiące temu",
"recentWorkouts": {
"title": "Ostatnie treningi",
"viewAll": "Zobacz wszystkie",
"empty": {
"title": "Brak treningów",
"cta": "Połącz źródło danych w ustawieniach, aby zobaczyć tu treningi."
}
},
"metric": {
"title": {
"weight": "Waga",
"bloodPressure": "Ciśnienie krwi",
"pulse": "Tętno",
"bodyFat": "Tkanka tłuszczowa",
"glucose": "Glikemia",
"sleep": "Sen",
"steps": "Kroki",
"totalBodyWater": "Całkowita woda w organizmie",
"boneMass": "Masa kostna",
"oxygenSaturation": "Saturacja tlenem",
"mood": "Nastrój",
"bmi": "BMI"
},
"unit": {
"weight": "kg",
"bloodPressure": "mmHg",
"pulse": "bpm",
"bodyFat": "%",
"glucose": "mg/dL",
"sleep": "h",
"steps": "kroki",
"totalBodyWater": "kg",
"boneMass": "kg",
"oxygenSaturation": "%",
"mood": "/5",
"bmi": "kg/m²"
}
},
"quickAddSymptom": "Zapisz objaw",
"todayCardVisible": "Pokaż górną kartę",
"recoveryKitBanner": {
"title": "Zapisz zestaw odzyskiwania",
"body": "Bez kopii kluczy, których używa ten serwer, jego danych nie da się odzyskać po ponownej instalacji. To zajmie kilka minut.",
"action": "Otwórz zestaw"
},
"greetingOnly": "{greeting}.",
"welcomeNew": "Witaj.",
"welcomeNewWithName": "Witaj, {name}."
},
"measurements": {
"title": "Pomiary",
"subtitle": "Zapisuj pomiary i przeglądaj pełną historię.",
"addMeasurement": "Dodaj",
"editMeasurement": "Edytuj pomiar",
"type": "Typ",
"value": "Wartość",
"date": "Data",
"source": "Źródło",
"notes": "Notatki",
"typeWeight": "Waga",
"typeBloodPressure": "Ciśnienie krwi",
"typeBpSys": "Skur",
"typeBpDia": "Rozk",
"typePulse": "Tętno",
"typeBodyFat": "Tkanka tłuszczowa",
"typeSleep": "Sen",
"typeSteps": "Kroki",
"typeBloodGlucose": "Glikemia",
"typeTotalBodyWater": "Całkowita woda w organizmie",
"typeBoneMass": "Masa kostna",
"typeOxygenSaturation": "Saturacja tlenem",
"typeHeartRateVariability": "Zmienność rytmu serca",
"typeRestingHeartRate": "Tętno spoczynkowe",
"typeActiveEnergyBurned": "Aktywna energia",
"typeFlightsClimbed": "Pokonane piętra",
"typeWalkingRunningDistance": "Dystans marszu i biegu",
"typeVo2Max": "VO₂ max",
"typeBodyTemperature": "Temperatura ciała",
"typeFatFreeMass": "Masa beztłuszczowa",
"typeFatMass": "Masa tłuszczu",
"typeMuscleMass": "Masa mięśniowa",
"typeSkinTemperature": "Temperatura skóry",
"typePulseWaveVelocity": "Prędkość fali tętna",
"typeVascularAge": "Wiek naczyniowy",
"typeVisceralFat": "Tłuszcz trzewny",
"typeAudioExposureEnv": "Ekspozycja na hałas (otoczenie)",
"typeAudioExposureHeadphone": "Ekspozycja na hałas (słuchawki)",
"typeTimeInDaylight": "Czas w świetle dziennym",
"typeWalkingSteadiness": "Stabilność chodu",
"typeAudioExposureEvent": "Zdarzenie głośnego słuchania",
"typeRespiratoryRate": "Częstość oddechów",
"typeBodyMassIndex": "Wskaźnik masy ciała",
"typeLeanBodyMass": "Szczupła masa ciała",
"typeWalkingHeartRateAverage": "Tętno przy chodzeniu (śr.)",
"typeWalkingAsymmetry": "Asymetria chodu",
"typeWalkingDoubleSupport": "Podwójna podpora chodu",
"typeWalkingStepLength": "Długość kroku",
"typeWalkingSpeed": "Prędkość chodu",
"glucoseContext": "Kontekst",
"glucoseContextFasting": "Na czczo (≥8 godz. bez jedzenia)",
"glucoseContextPostprandial": "Po posiłku (2 godz. po jedzeniu)",
"glucoseContextRandom": "Dowolny / bez kontekstu",
"glucoseContextBedtime": "Przed snem",
"unitHours": "Godziny",
"unitSteps": "Kroki",
"sourceManual": "Ręcznie",
"sourceWithings": "Withings",
"sourceImport": "Importuj",
"sourceAppleHealth": "Apple Health",
"systolicLabel": "Skurczowe (mmHg)",
"diastolicLabel": "Rozkurczowe (mmHg)",
"pulseLabel": "Tętno (uderz./min)",
"valueWithUnit": "Wartość ({unit})",
"timestamp": "Czas",
"timestampBackdateHint": "Dostosuj datę i godzinę, aby zapisać odczyt z przeszłości.",
"notesPlaceholder": "np. po jedzeniu",
"formReset": "Resetuj formularz",
"saveError": "Błąd zapisu",
"duplicateTimestamp": "Pomiar tego typu już istnieje dla wybranej daty.",
"serverOwnedSource": "Wartości z połączonego źródła nie można edytować. Znacznik czasu i notatka pozostają edytowalne.",
"deleteError": "Błąd usuwania",
"deletedToast": "Pomiar usunięty",
"restoredToast": "Pomiar przywrócony",
"restoreError": "Przywracanie nie powiodło się",
"invalidValue": "Wprowadź poprawną wartość.",
"invalidTimestamp": "Wybierz poprawną datę i godzinę.",
"loginRequired": "Zaloguj się, aby zobaczyć pomiary.",
"allTypes": "Wszystkie typy",
"measurementCount": "{count} pomiarów",
"emptyTitle": "Brak pomiarów",
"emptyDescription": "Zarejestruj wagę, ciśnienie, tętno lub inne wartości, aby zauważyć trendy.",
"emptyFilteredTitle": "Żaden pomiar nie pasuje do filtra",
"emptyFilteredDescription": "Wybierz inny typ lub usuń filtr, aby zobaczyć wszystkie pomiary.",
"emptyAddFirst": "Zarejestruj pierwszy pomiar",
"emptyResetFilter": "Pokaż wszystkie typy",
"comment": "Komentarz",
"actions": "Akcje",
"deleteConfirmTitle": "Usunąć pomiar?",
"deleteConfirmDescription": "Ten pomiar zostanie usunięty. Zaraz po usunięciu możesz to przez chwilę cofnąć.",
"pageInfo": "Strona {page} z {total}",
"previousPage": "Poprzednia strona",
"nextPage": "Następna strona",
"dailyTotalCaption": "({count} pomiarów)",
"openMetricInsights": "Otwórz analizę {type}",
"sleepNapCaption": "w tym {count} drzemka/i",
"sleepAwakeningsCaption": "{count} przebudzenia",
"expandDay": "Pokaż pomiary z tego dnia",
"collapseDay": "Ukryj pomiary z tego dnia",
"loadError": "Nie udało się załadować pomiarów.",
"typeCardioRecovery": "Regeneracja serca",
"typeWristTemperature": "Temperatura nadgarstka",
"typeFallCount": "Upadki",
"typeSixMinuteWalkDistance": "Dystans marszu 6-minutowego",
"typeStairAscentSpeed": "Prędkość wchodzenia po schodach",
"typeStairDescentSpeed": "Prędkość schodzenia po schodach",
"typeBreathingDisturbances": "Zaburzenia oddychania we śnie",
"typeIrregularRhythmNotification": "Powiadomienie o nieregularnym rytmie",
"typeHighHeartRateEvent": "Powiadomienie o wysokim tętnie",
"typeLowHeartRateEvent": "Powiadomienie o niskim tętnie",
"typeWalkingSteadinessEvent": "Alert stabilności chodu",
"typeBreathingDisturbanceEvent": "Zaburzenie oddychania",
"typeRecoveryScore": "Wynik regeneracji",
"typeStressScore": "Wynik stresu",
"typeStrainScore": "Wynik obciążenia",
"typeHrvRmssd": "HRV (RMSSD)",
"typeDayStrain": "Obciążenie dzienne",
"typeWorkoutStrain": "Obciążenie treningowe",
"typeSleepPerformance": "Wydajność snu",
"typeSleepEfficiency": "Efektywność snu",
"typeSleepConsistency": "Regularność snu",
"typeSleepNeed": "Zapotrzebowanie na sen",
"typeEnergyExpenditureKj": "Wydatek energetyczny",
"typeAverageHeartRate": "Średnie tętno",
"typeMaxHeartRate": "Maksymalne tętno",
"typeSleepDisturbanceCount": "Zakłócenia snu",
"typeAnsCharge": "Ładunek ANS",
"typeCardioLoad": "Obciążenie kardio",
"typeSleepScore": "Wynik snu",
"typeBodyTemperatureDeviation": "Odchylenie temperatury ciała",
"typeResilience": "Odporność",
"sourceComputed": "Obliczone",
"sourceWhoop": "WHOOP",
"sourceFitbit": "Fitbit",
"sourceNightscout": "Nightscout",
"sourcePolar": "Polar",
"sourceOura": "Oura",
"sourceTelegram": "Telegram",
"sourceMcp": "MCP",
"sourceGoogleHealth": "Google Health",
"sourceStrava": "Strava",
"sourceExternal": "Urządzenie zewnętrzne",
"bulkDeleteSuccess": "Usunięto pomiary: {count}",
"bulkDeleteSuccessOne": "Usunięto pomiar",
"bulkDeleteError": "Błąd podczas usuwania wybranych pomiarów",
"bulkDeleteConfirmTitle": "Usunąć pomiary ({count})?",
"bulkDeleteConfirmTitleOne": "Usunąć ten pomiar?",
"bulkDeleteConfirmBody": "Wybrane pomiary ({count}) zostaną usunięte. Zaraz po usunięciu możesz to przez chwilę cofnąć.",
"bulkDeleteConfirmBodyOne": "Wybrany pomiar zostanie usunięty. Zaraz po usunięciu możesz to przez chwilę cofnąć.",
"typePhq9Score": "Wynik PHQ-9",
"typeGad7Score": "Wynik GAD-7",
"typeGripStrength": "Siła chwytu",
"typePainNrs": "Ból (0–10)",
"typeWaistCircumference": "Obwód talii",
"typeWaistToHeight": "Stosunek talii do wzrostu",
"unitScore": "pkt",
"unitRatio": "stosunek",
"unitRating": "poziom",
"typeWho5Score": "Wynik WHO-5",
"typeSciScore": "Wynik SCI",
"typeExerciseMinutes": "Minuty ćwiczeń",
"typeStandMinutes": "Minuty stania",
"typeStandHours": "Godziny stania",
"typeMindfulMinutes": "Minuty uważności",
"typeStateOfMindValence": "Stan umysłu",
"typeAfibBurden": "Obciążenie AF",
"typeIndoorCo2": "CO₂ w pomieszczeniu",
"typeIndoorTemperature": "Temperatura w pomieszczeniu",
"typeIndoorHumidity": "Wilgotność w pomieszczeniu",
"durationReadAs": "Odczytano jako {duration}",
"durationHoursMinutes": "{hours} godz. {minutes} min",
"durationHoursOnly": "{hours} godz.",
"durationMinutesOnly": "{minutes} min",
"durationInvalid": "Wpisz czas trwania, np. 7,5, 7:30 lub 7h 30m.",
"durationTooLong": "Jeden wpis nie może przekraczać 24 godzin.",
"sourceHealthConnect": "Health Connect",
"typeBodyBattery": "Body Battery",
"typeStressLevel": "Poziom stresu",
"typeTrainingReadiness": "Gotowość do treningu",
"typeAcuteTrainingLoad": "Ostre obciążenie treningowe",
"sourceGarmin": "Garmin"
},
"metricCatalog": {
"title": "Co HealthLog potrafi śledzić",
"description": "Wszystkie obszary metryk obsługiwane przez HealthLog (również te, dla których nie masz jeszcze danych) oraz co je dostarcza.",
"statusPresent": "Śledzone",
"statusAbsent": "Jeszcze nieśledzone",
"statusModuleOff": "Wyłączone",
"loadError": "Nie udało się załadować statusu śledzenia.",
"connectCta": "Połącz źródło",
"viewCta": "Zobacz",
"ecg": {
"source": "Jednoodprowadzeniowe zapisy EKG z kompatybilnego zegarka (obecnie Withings ScanWatch), synchronizowane automatycznie."
},
"watchdog": {
"title": "Automatyczny nadzór",
"description": "HealthLog dyskretnie obserwuje też dane w tle (powiadomienia o nieregularnym rytmie i zaburzeniach oddychania z podłączonego zegarka, alerty o odchyleniu od Twojej wartości bazowej oraz zauważalne zmiany między dwoma ostatnimi panelami badań laboratoryjnych) i pokazuje kartę tylko wtedy, gdy coś zwraca uwagę. Jeśli podłączone jest co najmniej jedno z tych źródeł, brak karty to dobry znak, a nie brakująca funkcja; jeśli żadne nie jest jeszcze podłączone, po prostu nic nie jest jeszcze monitorowane."
}
},
"mood": {
"title": "Nastrój",
"subtitle": "Trend i wpisy nastroju",
"mentalWellbeingLink": "Wykonaj sprawdzian dobrostanu psychicznego",
"addEntry": "Dodaj",
"editEntry": "Edytuj wpis",
"moodLevel": "Nastrój",
"heroQuestion": "Jak się masz?",
"factorYes": "Tak",
"factorNo": "Nie",
"factorRatingOption": "{label}: {value} z {max}",
"tags": "Tagi",
"tagsPlaceholder": "np. sport, praca, rodzina",
"tagsHelp": "Oddziel przecinkami",
"timestamp": "Czas",
"date": "Data",
"source": "Źródło",
"levelSuperGut": "Świetnie",
"levelGut": "Dobrze",
"levelOkay": "OK",
"levelSchlecht": "Źle",
"levelLausig": "Fatalnie",
"sourceMoodlog": "moodLog",
"allMoods": "Wszystkie nastroje",
"entryCount": "{count} wpisów",
"emptyTitle": "Brak wpisów nastroju",
"emptyDescription": "Zapisz, jak się dziś czujesz, aby z czasem dostrzec wzorce.",
"emptyFilteredTitle": "Żaden wpis nie pasuje do filtra",
"emptyFilteredDescription": "Wybierz inny poziom lub usuń filtr, aby zobaczyć wszystkie wpisy.",
"emptyAddFirst": "Zapisz pierwszy nastrój",
"emptyResetFilter": "Pokaż wszystkie nastroje",
"actions": "Akcje",
"formReset": "Resetuj formularz",
"noteCharCount": "{count}/{max}",
"formResetConfirmTitle": "Zresetować ten formularz?",
"formResetConfirmBody": "Spowoduje to usunięcie wprowadzonego nastroju, tagów i notatki. Tej operacji nie można cofnąć.",
"formResetConfirmAction": "Resetuj",
"saveError": "Błąd zapisu",
"tagsNotSaved": "Zapisano. Pominięto tagi, które nie są już dostępne.",
"deleteError": "Błąd usuwania",
"deletedToast": "Wpis usunięty",
"restoredToast": "Wpis przywrócony",
"restoreError": "Przywracanie nie powiodło się",
"invalidTimestamp": "Wybierz poprawną datę i godzinę.",
"deleteConfirmTitle": "Usunąć wpis?",
"deleteConfirmDescription": "Ten wpis nastroju zostanie usunięty. Zaraz po usunięciu możesz to przez chwilę cofnąć.",
"pageInfo": "Strona {page} z {total}",
"previousPage": "Poprzednia strona",
"nextPage": "Następna strona",
"loginRequired": "Zaloguj się, aby zobaczyć wpisy nastroju.",
"note": "Notatka",
"noteCollapse": "Zwiń notatkę",
"noteExpand": "Pokaż całą notatkę",
"notePlaceholder": "Dodaj notatkę o swoim samopoczuciu…",
"tagPicker": "Tagi",
"tagCategory": {
"feelings": "Uczucia",
"sleep": "Sen",
"health": "Zdrowie",
"social": "Społeczne",
"work": "Praca",
"hobbies": "Hobby",
"factors": "Czynniki",
"custom": "Własne"
},
"tag": {
"happy": "szczęśliwy",
"excited": "podekscytowany",
"grateful": "wdzięczny",
"relaxed": "zrelaksowany",
"content": "zadowolony",
"tired": "zmęczony",
"unsure": "niepewny",
"bored": "znudzony",
"tense": "spięty",
"angry": "zły",
"stressed": "zestresowany",
"sad": "smutny",
"sleptWell": "dobrze spałem",
"sleptOk": "sen średni",
"sleptPoorly": "źle spałem",
"earlyNight": "wcześnie spać",
"workedOut": "trening",
"ateWell": "zdrowo zjadłem",
"hydrated": "piłem wodę",
"walked": "spacer",
"alcohol": "alkohol",
"caffeine": "kofeina",
"nicotine": "nikotyna",
"family": "rodzina",
"friends": "znajomi",
"party": "impreza",
"alone": "sam",
"productive": "produktywny",
"overtime": "nadgodziny",
"dayOff": "dzień wolny",
"travel": "podróż",
"sickDay": "dzień chorobowy",
"movies": "filmy",
"reading": "czytanie",
"gaming": "gry",
"music": "muzyka",
"outdoors": "na dworze",
"fastFood": "fast food",
"noSweets": "bez słodyczy",
"bigMeal": "obfity posiłek",
"factorWork": "praca",
"factorSocial": "życie towarzyskie",
"factorSleepQuality": "jakość snu",
"factorStress": "stres",
"factorConflict": "konflikt",
"factorFamily": "rodzina",
"factorSadness": "smutek",
"praise": "pochwała"
},
"sourceManual": "Ręcznie",
"sourceWeb": "Web",
"sourceTelegram": "Telegram",
"sourceDaylio": "Daylio",
"bulkDeleteSuccess": "Usunięto wpisy: {count}",
"bulkDeleteSuccessOne": "Usunięto wpis",
"bulkDeleteError": "Błąd podczas usuwania wybranych wpisów",
"bulkDeleteConfirmTitle": "Usunąć wpisy ({count})?",
"bulkDeleteConfirmTitleOne": "Usunąć ten wpis?",
"bulkDeleteConfirmBody": "Wybrane wpisy nastroju ({count}) zostaną usunięte. Zaraz po usunięciu możesz to przez chwilę cofnąć.",
"bulkDeleteConfirmBodyOne": "Wybrany wpis nastroju zostanie usunięty. Zaraz po usunięciu możesz to przez chwilę cofnąć.",
"customize": "Dostosuj tagi nastroju",
"addTagInline": "Dodaj tag",
"manage": {
"groupsTitle": "Grupy",
"groupsDescription": "Twórz własne grupy i ustal ich kolejność w wyborze.",
"newGroup": "Nowa grupa",
"groupLabel": "Nazwa grupy",
"groupIcon": "Ikona",
"groupCreated": "Grupa utworzona",
"groupRenamed": "Grupa zapisana",
"groupDeleteTitle": "Usunąć grupę?",
"groupDeleteBody": "Tagi z tej grupy wracają do swojej pierwotnej grupy. Żadne wpisy nie zostaną usunięte.",
"groupDeleted": "Grupa usunięta",
"groupEmpty": "Brak własnych grup.",
"groupLimitReached": "Osiągnięto limit grup",
"tagsTitle": "Tagi",
"tagsDescription": "Ukrywaj, porządkuj, przenoś lub edytuj tagi widoczne w wyborze.",
"newTag": "Nowy tag",
"tagLabel": "Nazwa tagu",
"tagIcon": "Ikona",
"tagGroup": "Grupa",
"usageCount": "{count} wpisów",
"hideTag": "Ukryj tag",
"showTag": "Pokaż tag",
"moveToGroup": "Przenieś do grupy",
"archive": "Archiwizuj",
"restore": "Przywróć",
"archivedTitle": "Zarchiwizowane tagi",
"archivedDescription": "Zarchiwizowane tagi pozostają w Twoich wcześniejszych wpisach, znikają tylko z wyboru.",
"archivedEmpty": "Nic nie zarchiwizowano.",
"purgeTitle": "Usunąć tag na zawsze?",
"purgeBody": "Tag zostanie usunięty z {count} wcześniejszych wpisów. Tej operacji nie można cofnąć.",
"purgeAction": "Usuń na zawsze",
"purged": "Tag usunięty",
"tagLimitReached": "Osiągnięto limit tagów",
"iconPickerTitle": "Wybierz ikonę",
"iconSearchPlaceholder": "Szukaj ikon…",
"iconSearchEmpty": "Brak pasującej ikony.",
"iconSearchClear": "Wyczyść wyszukiwanie",
"orderSave": "Zapisz kolejność",
"orderSaved": "Kolejność zapisana",
"moveUp": "W górę",
"moveDown": "W dół",
"iconGroupEmotions": "Emocje",
"iconGroupActivities": "Aktywności",
"iconGroupHealth": "Zdrowie",
"iconGroupFood": "Jedzenie i napoje",
"iconGroupWeather": "Pogoda",
"iconGroupPlaces": "Miejsca",
"iconGroupMisc": "Inne"
},
"sectionMoreTags": "Więcej tagów",
"sectionNoteDetails": "Notatka i szczegóły",
"quickTagsHelp": "Twoje częste tagi: jedno dotknięcie",
"quickTagsExpand": "Więcej",
"loadError": "Nie udało się załadować wpisów nastroju.",
"sectionLevelA": "Samopoczucie",
"sectionLevelAHelp": "Opcjonalne. To, czego nie ruszysz, zostaje puste.",
"dimensionNotAnswered": "nie podano",
"dimensionClear": "wyczyść",
"dimensionValueText": "{value} z {max}: od {low} do {high}",
"dimension": {
"a1": {
"label": "Nastrój",
"low": "bardzo nieprzyjemnie",
"high": "bardzo przyjemnie"
},
"a2": {
"label": "Stres",
"low": "całkowicie odprężony",
"high": "skrajnie obciążony"
},
"a3": {
"label": "Energia",
"low": "wyczerpany",
"high": "pełen energii"
},
"a4": {
"label": "Więź",
"low": "odizolowany",
"high": "rozumiany i wspierany"
},
"a5": {
"label": "Stabilność",
"low": "całkowicie przytłoczony",
"high": "w pełni zdolny do działania"
}
},
"context": {
"section": {
"work": "Praca",
"contacts": "Kontakty",
"leisure": "Czas wolny",
"events": "Wydarzenie"
},
"field": {
"workStatus": "Dzień pracy",
"workMinutes": "Czas pracy",
"overtimeMinutes": "Nadgodziny",
"workLoad": "Obciążenie pracą",
"workSatisfaction": "Zadowolenie z pracy",
"contactCircles": "Z kim był kontakt",
"contactForm": "Forma kontaktu",
"contactExtent": "Czas trwania",
"contactQuality": "Jakość kontaktu",
"contactSupport": "Odczuwane wsparcie",
"leisureCategories": "Na co poszedł czas wolny",
"leisureMinutes": "Czas dla siebie",
"leisureJoy": "Radość",
"leisureRecovery": "Regeneracja",
"eventType": "Co się wydarzyło",
"eventValence": "Jak zostało odebrane",
"eventAt": "Kiedy",
"notes": "Notatka"
},
"workStatus": {
"off": "Bez pracy",
"partial": "Część dnia",
"regular": "Zwykły dzień",
"overtime": "Dłużej niż zwykle"
},
"contactCircles": {
"partner": "Partner",
"child": "Dziecko",
"family": "Rodzina",
"friends": "Przyjaciele",
"colleagues": "Współpracownicy",
"acquaintances": "Znajomi",
"professional": "Wsparcie profesjonalne",
"other": "Inne osoby"
},
"contactForm": {
"inPerson": "Osobiście",
"phone": "Telefon",
"video": "Rozmowa wideo",
"written": "Pisemnie"
},
"contactExtent": {
"brief": "Krótki",
"medium": "Średni",
"extended": "Długi"
},
"leisureCategories": {
"film": "Film lub serial",
"reading": "Czytanie",
"gaming": "Gry",
"music": "Muzyka",
"creative": "Coś twórczego",
"outing": "Wyjście",
"garden": "Ogród",
"cooking": "Gotowanie",
"timeWithChild": "Czas z dzieckiem",
"relaxation": "Odpoczynek",
"other": "Coś innego"
},
"eventType": {
"goodNews": "Dobra wiadomość",
"badNews": "Zła wiadomość",
"success": "Coś się udało",
"disappointment": "Rozczarowanie",
"conflict": "Konflikt",
"appointment": "Termin",
"familyEvent": "Wydarzenie rodzinne",
"change": "Zmiana",
"unexpected": "Coś nieoczekiwanego"
},
"rating": {
"workLoad": {
"low": "bez presji",
"high": "pod dużą presją"
},
"workSatisfaction": {
"low": "wcale niezadowolony",
"high": "bardzo zadowolony"
},
"contactQuality": {
"low": "nie zrobił mi dobrze",
"high": "zrobił mi bardzo dobrze"
},
"contactSupport": {
"low": "bez wsparcia",
"high": "dobrze wspierany"
},
"leisureJoy": {
"low": "bez radości",
"high": "dużo radości"
},
"leisureRecovery": {
"low": "wcale nieregenerujący",
"high": "bardzo regenerujący"
},
"eventValence": {
"low": "wyraźnie zły",
"high": "wyraźnie dobry"
}
}
},
"dayContext": {
"minutesPlaceholder": "Minuty",
"contactsHelp": "Liczba osób nic nie mówi o dniu. Liczy się to, jak kontakt został odebrany.",
"notePlaceholder": "Co jeszcze należy do tego dnia",
"notRecorded": "nie zapisano",
"linkedTitle": "Z pozostałych modułów",
"linkedHelp": "Odczytane stamtąd, gdzie jest przechowywane. Zmień to tam, a zmieni się tutaj.",
"linkedSleep": "Sen",
"linkedInBed": "W łóżku",
"linkedSteps": "Kroki",
"linkedActiveEnergy": "Energia aktywna",
"linkedRestingHeartRate": "Tętno spoczynkowe",
"linkedHrv": "Zmienność rytmu serca",
"bodyLogged": "Zapisano w dzienniku choroby: {count} objawów",
"bodyNotLogged": "Na ten dzień nic nie zapisano w dzienniku choroby",
"openIllness": "Otwórz"
},
"sourceNotification": "Powiadomienie",
"tagCatalogLoadError": "Nie udało się załadować tagów."
},
"medications": {
"title": "Leki",
"subtitle": "Leki, harmonogramy i przyjęcia",
"loginRequired": "Zaloguj się, aby zarządzać lekami.",
"addMedication": "Dodaj",
"firstMedication": "Dodaj pierwszy lek",
"addChoice": {
"logIntake": "Zarejestruj przyjęcie",
"newMedication": "Nowy lek"
},
"takeAllDue": {
"button": "Przyjmij wszystkie zaległe",
"dialogTitle": "Przyjmij zaległe leki",
"dialogDescription": "Te leki są teraz do przyjęcia. Potwierdź, aby zarejestrować je wszystkie jako przyjęte.",
"confirm": "Przyjmij wszystkie ({count})",
"successToast": "Zarejestrowano przyjęcia: {count}",
"partialToast": "Zarejestrowano: {taken}, nieudane: {failed}. Spróbuj ponownie",
"failedToast": "Nie zarejestrowano żadnego przyjęcia. Spróbuj ponownie"
},
"logIntake": {
"dialogTitle": "Zarejestruj przyjęcie",
"dialogDescription": "Zarejestruj dawkę istniejącego leku. Możesz wstawić ją wstecznie na przeszłą datę i godzinę.",
"medicationLabel": "Lek",
"slotLabel": "Przedział harmonogramu",
"slotNone": "Bez konkretnego przedziału",
"doseLabel": "Dawka",
"doseHint": "Wstępnie wypełnione dawką leku lub przedziału. Zmień ją, aby zapisać inną dawkę tylko dla tego przyjęcia.",
"takenAtLabel": "Data i godzina",
"takenAtHint": "Domyślnie teraz; wybierz wcześniejszą datę i godzinę, aby zarejestrować przeszłą dawkę.",
"skippedLabel": "Zarejestruj jako pominięte",
"noMedications": "Najpierw dodaj lek, a potem będziesz mógł rejestrować jego przyjęcia.",
"cancel": "Anuluj",
"submit": "Zarejestruj przyjęcie",
"slotError": "Nie udało się przypisać godziny do wybranego slotu. Wybierz inny slot lub „Brak konkretnego slotu”."
},
"emptyTitle": "Brak leków",
"emptyDescription": "Utwórz leki, dawki i okna czasowe, aby śledzić przestrzeganie.",
"loadFailed": "Nie udało się załadować leków",
"retryLoad": "Spróbuj ponownie",
"inactive": "Wstrzymany",
"intakeHistory": "Historia przyjęć",
"openDetailPage": "Otwórz stronę szczegółów leku",
"compliance": "Przestrzeganie zaleceń",
"importIntakes": "Importuj przyjęcia",
"importDescription": "Wklej tablicę JSON z danymi przyjęć. Oczekiwany format:",
"importUploadFile": "Prześlij plik JSON",
"importPaste": "Wklej tutaj JSON...",
"importSelected": "Wybrano: {name}",
"importFileLoaded": "Plik „{name}” wczytany",
"importInvalidJson": "Plik nie zawiera prawidłowego JSON",
"importNoArray": "Nie znaleziono tablicy",
"importFailed": "Import nie powiódł się",
"importInvalidFormat": "Nieprawidłowy format JSON",
"requestExample": "Przykład żądania",
"categoryBloodPressure": "Ciśnienie krwi",
"categoryVitamin": "Witaminy",
"categoryThyroid": "Tarczyca",
"categoryHormone": "Hormony",
"categorySupplement": "Suplement",
"categoryPainRelief": "Przeciwbólowy",
"categoryAllergy": "Alergia",
"categoryDigestive": "Trawienne",
"categorySkin": "Pielęgnacja skóry",
"categorySleepAid": "Na sen",
"categoryDiabetes": "Diabetes",
"categoryAntibiotic": "Antybiotyk",
"categoryMentalHealth": "Zdrowie psychiczne",
"categoryOther": "Inne",
"daysSun": "Nd",
"daysMon": "Pn",
"daysTue": "Wt",
"daysWed": "Śr",
"daysThu": "Czw",
"daysFri": "Pt",
"daysSat": "Sob",
"back": "Wstecz",
"today": "Dzisiaj",
"yesterday": "Wczoraj",
"tomorrow": "Jutro",
"asNeededMarker": "W razie potrzeby",
"recordOnlyBadge": "Tylko zapis",
"courseEndedBadge": "Zakończony",
"trackIntake": {
"title": "Rejestrowanie przyjęć",
"label": "Rejestruj przyjęcia",
"helperOn": "Dawki przypadają według tego harmonogramu, z przypomnieniami i przestrzeganiem.",
"helperOff": "Tylko zapis: nic nie przypada, bez przypomnień i bez przestrzegania.",
"enabledToast": "Rejestrowanie przyjęć włączone",
"disabledToast": "Rejestrowanie przyjęć wyłączone",
"toggleFailed": "Nie udało się zmienić rejestrowania przyjęć."
},
"autoMarkTaken": {
"label": "Zapisuj przyjęcia automatycznie",
"helper": "HealthLog zapisuje każdą zaplanowaną dawkę jako przyjętą o jej porze. Nadal możesz ręcznie zmienić lub pominąć dawkę. Przypomnienia nie są wysyłane.",
"cardHint": "Zapisywane automatycznie",
"enabledToast": "Przyjęcia są teraz zapisywane automatycznie",
"disabledToast": "Przyjęcia nie są już zapisywane automatycznie",
"toggleFailed": "Nie udało się zmienić automatycznego zapisu."
},
"withoutNotification": "Bez powiadomienia",
"pausedSince": "Wstrzymane od",
"takeNow": "Przyjmij teraz",
"lastDoseYesterday": "Ostatnia dawka wczoraj",
"lastDoseDaysAgo": "Ostatnia dawka {count} dni temu",
"overdue": "Po terminie",
"veryOverdue": "Mocno po terminie",
"complianceWindow": "Przestrzeganie {days} dni",
"complianceUnavailable": "Nie udało się wczytać danych o przestrzeganiu",
"complianceNotApplicable": "Przestrzeganie zaleceń nie ma zastosowania",
"complianceNotApplicableReason": "W HealthLog nie zapisano lokalnego harmonogramu.",
"complianceInfo": "Udział zarejestrowanych dawek względem oczekiwanych. Plany tygodniowe liczone są tydzień po tygodniu.",
"complianceInfoLabel": "Co oznacza przestrzeganie zaleceń?",
"lastIntake": "Ostatnie przyjęcie:",
"nextIntake": "Następne przyjęcie:",
"nextIntakeOverdue": "Zaległa od {time}, wciąż można przyjąć",
"dayStreak": "dni serii",
"dayStreakOne": "dzień serii",
"cycleDueToday": "Termin dzisiaj",
"cycleNoClosedCycles": "Brak zakończonych cykli dawkowania",
"taken": "Przyjęte",
"skipped": "Pominięte",
"intakeToastTaken": "{name} oznaczone jako przyjęte",
"intakeToastSkipped": "{name} pominięte",
"intakeToastFailed": "Nie udało się zapisać {name}. Spróbuj ponownie",
"intakeUndo": "Cofnij",
"intakeUndone": "Wpis cofnięty",
"intakeUndoFailed": "Nie udało się cofnąć. Popraw w historii",
"glp1LastInjection": "{label}",
"glp1NextInjectionDays": "{label} (za {days} dni)",
"glp1NextInjectionToday": "dziś",
"glp1NextInjectionTomorrow": "jutro",
"glp1RotationSuggested": "Sugerowane: {site}",
"glp1LogSideEffect": "Zapisz działanie niepożądane",
"sideEffects": {
"section": "Skutki uboczne",
"addCta": "Dodaj",
"sheetTitle": "Zarejestruj skutek uboczny",
"categoryLabel": "Kategoria",
"entryLabel": "Objaw",
"severityLabel": "Nasilenie",
"severity": {
"mild": "Łagodne",
"moderate": "Umiarkowane",
"significant": "Wyraźne",
"severe": "Silne",
"verySevere": "Bardzo silne"
},
"notesLabel": "Notatka (opcjonalnie)",
"notesPlaceholder": "Cokolwiek warto zapamiętać, maks. 280 znaków",
"submitCta": "Zapisz",
"cancelCta": "Anuluj",
"emptyState": "Nie zarejestrowano jeszcze skutków ubocznych. Śledzenie może pomóc lekarzowi i ujawnić wzorce w czasie.",
"recentTitle": "Ostatnie 30 dni",
"loading": "Ładowanie…",
"loadMore": "Załaduj więcej",
"deleteCta": "Usuń",
"deleteError": "Nie udało się usunąć wpisu",
"errorSeverity": "Nasilenie musi mieścić się w zakresie 1–5",
"errorEntry": "Wybierz objaw",
"categories": {
"gi": "Żołądkowo-jelitowe",
"metabolic": "Metaboliczne",
"injectionSite": "Miejsce wstrzyknięcia",
"cognitive": "Poznawcze",
"glp1Specific": "Specyficzne dla GLP-1"
},
"entries": {
"nausea": "Nudności",
"vomiting": "Wymioty",
"diarrhea": "Biegunka",
"constipation": "Zaparcia",
"abdominalPain": "Ból brzucha",
"hypoglycemiaSymptoms": "Objawy hipoglikemii",
"dehydration": "Odwodnienie",
"anorexia": "Utrata apetytu",
"electrolyteFatigue": "Zmęczenie elektrolitowe",
"injectionRedness": "Zaczerwienienie miejsca wstrzyknięcia",
"injectionSwelling": "Obrzęk miejsca wstrzyknięcia",
"injectionBruising": "Siniak w miejscu wstrzyknięcia",
"injectionInduration": "Stwardnienie miejsca wstrzyknięcia",
"brainFog": "Mgła umysłowa",
"dizziness": "Zawroty głowy",
"lowMood": "Obniżony nastrój",
"lowEnergy": "Brak energii",
"earlySatiety": "Wczesne uczucie sytości",
"gastroparesisLike": "Spowolnione opróżnianie żołądka",
"dysgeusia": "Zmiana smaku",
"gallbladderDiscomfort": "Dolegliwości pęcherzyka żółciowego"
},
"deleteConfirmTitle": "Usunąć ten wpis?",
"deleteConfirmBody": "Ten wpis o skutku ubocznym zostanie trwale usunięty."
},
"scheduling": {
"naturalLanguage": {
"title": "Opisz lek",
"description": "Opisz lek własnymi słowami, a my wstępnie wypełnimy formularz za Ciebie.",
"placeholder": "np. Mounjaro 5 mg co tydzień w środę rano od najbliższego poniedziałku",
"submit": "Wyodrębnij",
"submitBusy": "Wyodrębnianie…",
"cancel": "Anuluj",
"examples": {
"label": "Wypróbuj jeden z tych przykładów",
"weekly": "Mounjaro 5 mg co tydzień w środę rano",
"daily": "Ibuprofen 200 mg codziennie, 3 razy dziennie",
"rolling": "Metotreksat 7,5 mg co 7 dni od ostatniego wstrzyknięcia"
},
"error": {
"empty": "Najpierw wpisz opis.",
"tooLong": "Utrzymuj opis poniżej 2000 znaków.",
"rateLimit": "Zbyt wiele żądań. Poczekaj chwilę i spróbuj ponownie.",
"noProvider": "Brak skonfigurowanego dostawcy AI. Skonfiguruj go w Ustawieniach.",
"budget": "Osiągnięto dzienny limit AI. Spróbuj jutro.",
"network": "Nie udało się połączyć z dostawcą AI. Spróbuj ponownie.",
"consent": "Odczyt Twojego opisu przez AI wymaga najpierw Twojej zgody.",
"unavailable": "Odczyt opisów przez AI jest tu teraz niedostępny."
}
},
"cadence": {
"section": "Częstotliwość",
"label": "Jak często",
"kind": {
"daily": "Codziennie",
"weekdays": "W określone dni tygodnia",
"everyNWeeks": "Co N tygodni w określone dni",
"monthly": "Co miesiąc w określonym dniu",
"everyNMonths": "Co N miesięcy w określonym dniu",
"yearly": "Raz w roku",
"rolling": "Co N dni od ostatniego przyjęcia (elastycznie)",
"rollingExplainer": "Liczy od ostatniego zarejestrowanego przyjęcia i wstrzymuje się, jeśli pominiesz dawkę.",
"oneShot": "Dawka jednorazowa"
},
"weekdays": {
"label": "Dni tygodnia",
"short": {
"mo": "Pon",
"tu": "Wto",
"we": "Śro",
"th": "Czw",
"fr": "Pią",
"sa": "Sob",
"su": "Nie"
},
"long": {
"mo": "Poniedziałek",
"tu": "Wtorek",
"we": "Środa",
"th": "Czwartek",
"fr": "Piątek",
"sa": "Sobota",
"su": "Niedziela"
}
},
"intervalWeeks": {
"suffix": "tygodni"
},
"dayOfMonth": {
"label": "Dzień"
},
"intervalMonths": {
"suffix": "miesięcy",
"dayOnLabel": "w dniu"
},
"yearly": {
"date": {
"label": "Data"
}
},
"rollingDays": {
"suffix": "dni"
}
},
"timesOfDay": {
"section": "Pory dnia",
"label": "Pory dnia",
"empty": {
"cta": "Dodaj pierwszą godzinę."
},
"add": "Dodaj godzinę",
"remove": "Usuń",
"presets": {
"morning": "Rano",
"noon": "Południe",
"evening": "Wieczór",
"night": "Noc"
},
"max": {
"reached": "Osiągnięto maksimum. Usuń jedną godzinę przed dodaniem kolejnej."
}
},
"courseWindow": {
"section": "Okres leczenia",
"startsOn": {
"label": "Rozpoczyna się"
},
"endsOn": {
"label": "Kończy się"
},
"noEndDate": "Brak daty zakończenia",
"oneShotCaption": "(dawka jednorazowa)",
"invalidRange": "Data zakończenia musi być taka sama jak data rozpoczęcia lub późniejsza."
}
},
"wizard": {
"header": {
"stepOf": "Krok {current} z {total}",
"createTitle": "Nowy lek",
"editTitle": "Edytuj {name}"
},
"nav": {
"back": "Wstecz",
"next": "Dalej",
"save": "Zapisz",
"saveEdit": "Zapisz zmiany",
"nextHint": "Dalej: {step}",
"reviewHint": "Dalej: Zapisz",
"jumpFirst": "Przejdź do pierwszego kroku",
"jumpLast": "Przejdź do podsumowania i zapisu"
},
"nl": {
"button": "Opisz"
},
"steps": {
"step1": {
"title": "Jak nazywa się lek?",
"subline": "Dokładnie tak, jak na opakowaniu.",
"label": "Name",
"placeholder": "np. Ramipryl",
"short": "Nazwa"
},
"step2": {
"title": "Jaki to rodzaj leku?",
"subline": "Wykorzystujemy to do odpowiednich szablonów i analiz.",
"short": "Rodzaj"
},
"step3": {
"title": "Jaka jest dawka?",
"subline": "Tabletka, wziew, kropla: w zależności od formy.",
"amountLabel": "Ilość",
"amountPlaceholder": "np. 5",
"unitLabel": "Jednostka",
"unit": {
"mg": "mg",
"ml": "ml",
"iu": "j.m.",
"mcg": "µg",
"g": "g",
"tablets": "tabletka/i",
"capsules": "kapsułka/i",
"drops": "krople",
"puffs": "wziew",
"sprays": "rozpylenie",
"pieces": "sztuki",
"other": "inne"
},
"deliveryFormLabel": "Droga podania",
"deliveryForm": {
"ORAL": "Doustnie",
"INJECTION": "Iniekcja",
"OTHER": "Inna"
},
"dosesPerUnitLabel": "Dawki na jednostkę",
"dosesPerUnitPlaceholder": "np. 4",
"dosesPerUnitHint": "Dawki na wstrzykiwacz / fiolkę. Zostaw puste, aby nie śledzić zapasów.",
"short": "Dawka",
"unitsPerDoseLabel": "Jednostki na dawkę",
"unitsPerDoseHint": "np. 2 tabletki po 2 mg na dawkę 4 mg lub ½ tabletki przy dzielonej dawce"
},
"step4": {
"title": "Przez jaki okres go przyjmujesz?",
"subline": "Na dziś wystarczy data rozpoczęcia. Datę zakończenia możesz dodać później.",
"short": "Kiedy"
},
"step5": {
"title": "Jak często go przyjmujesz?",
"subline": "Wybierz częstotliwość, szczegóły w następnym kroku.",
"short": "Częstotliwość"
},
"step6": {
"title": "Jak to wygląda szczegółowo?",
"subline": "Ustaw dni tygodnia, interwały lub dzień miesiąca.",
"intervalWeeks": {
"label": "Co",
"suffix": "tygodni"
},
"dayOfMonth": {
"label": "W dniu",
"suffix": "dzień miesiąca"
},
"rollingDays": {
"label": "Co",
"suffix": "dni od ostatniego przyjęcia"
},
"short": "Szczegóły"
},
"step7": {
"title": "Kiedy go przyjmujesz?",
"subline": "Jedna lub więcej pór dnia. Przypomnienia opierają się na tej liście.",
"presetsLabel": "Ustawienia wstępne pory dnia",
"presets": {
"morning": "Rano",
"noon": "Południe",
"evening": "Wieczór",
"night": "Noc"
},
"overrideHint": "Opcjonalnie: ustaw inną dawkę lub liczbę jednostek tylko dla tej pory. Pozostaw puste, aby użyć wartości domyślnej leku.",
"doseOverrideLabel": "Dawka dla tej pory (opcjonalnie)",
"doseOverridePlaceholder": "np. pół tabletki",
"unitsOverrideLabel": "Jednostki zużyte o tej porze",
"unitsOverrideInherit": "Domyślnie",
"short": "Godziny"
},
"step8": {
"title": "Gotowe. Czy HealthLog ma Ci przypominać?",
"subline": "Sprawdź wszystko poniżej przed zapisaniem.",
"remindersLabel": "Przypomnienia włączone",
"remindersDescription": "Push, Telegram lub ntfy, w zależności od ustawień.",
"noChannelHint": "Przypomnienia wymagają kanału powiadomień, a obecnie żaden nie jest aktywny.",
"noChannelHintLink": "Skonfiguruj powiadomienia",
"short": "Gotowe"
}
},
"classRow": {
"bloodPressure": "Ciśnienie krwi",
"diabetes": "Diabetes",
"hormone": "Hormony",
"glp1": "Iniekcja GLP-1",
"painRelief": "Ból",
"allergy": "Alergia",
"vitamin": "Witaminy",
"supplement": "Suplement",
"antibiotic": "Antybiotyk",
"mentalHealth": "Zdrowie psychiczne",
"thyroid": "Tarczyca",
"digestive": "Trawienne",
"skin": "Pielęgnacja skóry",
"sleepAid": "Na sen",
"other": "Inne"
},
"cadence": {
"daily": {
"label": "Codziennie",
"description": "Codziennie o tej samej porze."
},
"weekdays": {
"label": "Określone dni tygodnia",
"description": "Np. poniedziałek, środa, piątek."
},
"everyNWeeks": {
"label": "Co kilka tygodni",
"description": "Np. co 2 tygodnie w czwartki (GLP-1, leki biologiczne)."
},
"monthly": {
"label": "Co miesiąc",
"description": "W stały dzień każdego miesiąca (np. zawsze 1.)."
},
"rolling": {
"label": "Elastycznie od ostatniej dawki",
"description": "Pozostaw kolejną dawkę otwartą. Po naciśnięciu „przyjęto” licznik startuje od nowa od tego momentu."
},
"oneShot": {
"label": "Jednorazowo",
"description": "Jednorazowe podanie, np. szczepionka lub kuracja antybiotykowa."
},
"asNeeded": {
"label": "W razie potrzeby",
"description": "Bez stałego planu: zapisz przyjęcie, gdy go potrzebujesz (np. lek przeciwbólowy)."
}
},
"summary": {
"title": "Podsumowanie",
"cadence": {
"daily": "Codziennie",
"weekdays": "W wybrane dni tygodnia",
"biweekly": "Co dwa tygodnie",
"monthly": "Co miesiąc",
"quarterly": "Co trzy miesiące",
"yearly": "Raz w roku",
"rolling": "Co {n} dni od ostatniego przyjęcia",
"oneShot": "Pojedyncza dawka",
"asNeeded": "W razie potrzeby",
"everyNWeeks": "Co {n} tygodni",
"everyNMonths": "Co {n} miesięcy"
},
"weekdaysDetail": ", w {days}",
"dayOfMonthDetail": ", dnia {day}.",
"times": "o {times}",
"startsOn": "Początek: {date}",
"endsOn": "Koniec: {date}",
"noEndDate": "Brak daty zakończenia"
},
"compose": {
"scheduleIndex": "Harmonogram {n} z {total}",
"list": {
"add": "Dodaj kolejny harmonogram",
"edit": "Edytuj",
"remove": "Usuń",
"removeDisabled": "Wymagany jest co najmniej jeden harmonogram."
}
},
"errors": {
"submitFailed": "Nie udało się zapisać leku. Spróbuj ponownie."
}
},
"doseStrength": {
"title": "Dawka w czasie",
"axisLabel": "Zapisana dawka ({unit})",
"tooltipLabel": "Dawka",
"currentDose": "Aktualna dawka: {dose} {unit}",
"noCurrentDose": "Nie zapisano jeszcze żadnej dawki.",
"empty": "Brak historii titracji. Zapisz zmianę dawki, aby zobaczyć krzywą dawki."
},
"titration": {
"title": "Plan titracji",
"empty": "Nie zarejestrowano jeszcze kroków zwiększania dawki. Dodaj datowane zmiany dawki, aby nakreślić plan.",
"youAreHere": "Jesteś tutaj",
"doseStep": "{dose} {unit}",
"plannedFor": "Zaplanowano na {date}"
},
"injectionSiteBodyOutlineAriaLabel": "Sylwetka ciała",
"injectionSitePickerAriaLabel": "Wybór miejsca iniekcji",
"injectionSiteRecommendedAriaLabel": "{site}, zalecane następne miejsce",
"injectionSiteLegendAriaLabel": "Legenda oznaczeń",
"injectionSiteLegendRecommended": "Zalecane następne miejsce",
"injectionSiteLegendLastUsed": "Ostatnio użyte miejsce",
"siteAbdomenLeft": "Brzuch, dolny lewy",
"siteAbdomenRight": "Brzuch, dolny prawy",
"siteAbdomenUpperLeft": "Brzuch, górny lewy",
"siteAbdomenUpperRight": "Brzuch, górny prawy",
"siteThighLeft": "Lewe udo",
"siteThighRight": "Prawe udo",
"siteUpperArmLeft": "Lewe ramię",
"siteUpperArmRight": "Prawe ramię",
"sideEffectTagsHelp": "Stuknij chip, aby dodać go do tagów nastroju.",
"sideEffectTagNausea": "Nudności",
"sideEffectTagConstipation": "Zaparcia",
"sideEffectTagDiarrhea": "Biegunka",
"sideEffectTagFatigue": "Zmęczenie",
"sideEffectTagAppetiteLoss": "Utrata apetytu",
"sideEffectTagHeartburn": "Zgaga",
"sideEffectTagHeadache": "Ból głowy",
"phaseConfig": "Fazy przypomnień",
"phaseConfigDescription": "Skonfiguruj momenty przypomnień.",
"phaseGreen": "Zielony",
"phaseYellow": "Żółty",
"phaseOrange": "Pomarańczowy",
"phaseRed": "Czerwony",
"phaseMinutes": "Min",
"phasePercent": "%",
"phaseResetDefaults": "Przywróć wartości domyślne",
"phaseSaved": "Fazy przypomnień zapisane",
"sourceWeb": "Web",
"sourceApi": "Aplikacja iOS",
"sourceReminder": "Przypomnienie",
"sourceImport": "Import",
"sourceAppleHealth": "Apple Health",
"intakeSourceVia": "przez {origin}",
"intakeRecordedAutomatically": "Zapisano automatycznie",
"intakeHistoryEmptyTitle": "Brak przyjęć",
"intakeHistoryEmptyDescription": "Gdy tylko zarejestrujesz przyjęcie, pojawi się tu wraz z godziną i źródłem.",
"intakeHistoryEmptyAction": "Zarejestruj przyjęcie",
"intakeHistoryColTaken": "Przyjęty",
"intakeHistoryColScheduled": "Zaplanowany",
"intakeHistoryColStatus": "Status",
"intakeHistoryColSource": "Źródło",
"intakeHistoryInjectionSite": "Miejsce wstrzyknięcia: {site}",
"intakeHistoryStatusTaken": "Przyjęty",
"intakeHistoryStatusSkipped": "Pominięty",
"intakeHistorySortByTaken": "Sortuj wg czasu przyjęcia",
"intakeHistorySortByScheduled": "Sortuj wg czasu zaplanowanego",
"intakeHistoryPageInfo": "Strona {page} z {total}, {count} wpisów",
"intakeHistoryPrev": "Poprzednia",
"intakeHistoryNext": "Następna",
"glp1": {
"drug": {
"tirzepatide": {
"name": "Tyrzepatyd"
},
"semaglutide": {
"name": "Semaglutyd"
},
"liraglutide": {
"name": "Liraglutyd"
},
"dulaglutide": {
"name": "Dulaglutyd"
},
"exenatide": {
"name": "Eksenatyd"
}
}
},
"researchMode": {
"chart": {
"title": "Szacowany poziom leku",
"axisLabel": "Szacowany poziom (względny)",
"emptyState": "Brak zarejestrowanych przyjęć.",
"emptyStateCta": "Zarejestruj dawkę, aby zobaczyć kształtującą się krzywą szacunkową.",
"estimateNote": "Edukacyjne oszacowanie z opublikowanej przez EMA farmakokinetyki populacyjnej. To nie jest pomiar.",
"unknownDrug": "{name} nie znajduje się w katalogu GLP-1 zatwierdzonym przez EMA, więc HealthLog nie może wyrysować krzywej farmakokinetyki populacyjnej."
}
},
"detail": {
"status": {
"active": "Aktywny",
"paused": "Wstrzymany",
"ended": "Zakończony"
},
"cadence": {
"oneShotOn": "Dawka jednorazowa w dniu {date}.",
"oneShotPending": "Dawka jednorazowa oczekuje.",
"asNeeded": "W razie potrzeby, bez stałego planu."
},
"intake": {
"title": "Historia przyjęć",
"importButton": "Importuj",
"rowActions": {
"openMenu": "Otwórz akcje wiersza",
"edit": "Edytuj",
"delete": "Usuń"
},
"selection": {
"rowToggleLabel": "Zaznacz wiersz"
},
"bulkDelete": {
"selectionCount": "{count} wpisów zaznaczono",
"deleteButton": "Usuń zaznaczone",
"cancelButton": "Anuluj",
"confirmTitle": "Usunąć zaznaczone wpisy?",
"confirmBody": "{count} wpisów zostanie trwale usuniętych. Sam lek pozostaje.",
"confirmAction": "Usuń",
"toast": "Zaznaczone usunięto",
"failed": "Nie udało się usunąć zaznaczonych."
},
"edit": {
"dialogTitle": "Edytuj przyjęcie",
"takenAtLabel": "Przyjęto o",
"scheduledForHint": "Zaplanowano: {dateTime}",
"farFromScheduledWarning": "Znacznie odbiega od zaplanowanego terminu. Sprawdź datę.",
"skippedLabel": "Pominięto",
"save": "Zapisz",
"cancel": "Anuluj",
"savedToast": "Przyjęcie zaktualizowane",
"failed": "Nie udało się zaktualizować przyjęcia."
},
"deleteRow": {
"confirmTitle": "Usunąć to przyjęcie?",
"confirmBody": "Wpis zostanie trwale usunięty.",
"confirmAction": "Usuń",
"toast": "Przyjęcie usunięte",
"failed": "Nie udało się usunąć przyjęcia."
},
"viewRecent90": "Ostatnie 90 dni",
"viewAll": "Pełna historia",
"viewToggleLabel": "Zakres historii"
},
"verlauf": {
"loading": "Wczytywanie historii …",
"loadError": "Nie udało się wczytać historii.",
"empty": "Brak przyjęć w tym okresie.",
"summaryEmpty": "Brak dawek do oceny.",
"adherenceLabel": "Przestrzeganie",
"adherenceBarLabel": "{onTime} na czas, {late} z opóźnieniem, {missed} pominięte",
"add": "Wpis",
"markTaken": "Przyjęte",
"markSkipped": "Pominięte",
"rowActionsLabel": "Akcje dla {time}",
"markAsTaken": "Oznacz jako przyjętą",
"markAsSkipped": "Oznacz jako pominiętą",
"adHocTag": "poza planem",
"takenDetail": "planowo {planned}, przyjęto {taken}",
"doseTaken": "Dawka: {dose}",
"status": {
"taken_on_time": "na czas",
"taken_late": "z opóźnieniem",
"skipped": "pominięte",
"missed": "nieprzyjęte",
"upcoming": "oczekujące",
"ad_hoc": "poza planem"
},
"addDialog": {
"title": "Dodaj przyjęcie",
"description": "Zarejestruj dawkę, także wstecznie lub poza planem.",
"takenAtLabel": "Przyjęto o",
"skippedLabel": "Pominięte",
"nudgeHint": "Blisko slotu {slot}. Przy zapisie zapytamy, czy przypisać.",
"cancel": "Anuluj",
"submit": "Zapisz"
},
"nudge": {
"title": "Przypisać do tego slotu?",
"body": "To przyjęcie wypada tuż poza oknem {slot}. Przypisać je do tego slotu czy zachować jako wpis poza planem?",
"keepAdHoc": "Poza planem",
"pin": "Przypisz"
},
"pin": {
"action": "Przypisz do slotu {time}",
"release": "Usuń przypisanie",
"pinnedTag": "przypisana",
"pinnedToast": "Dawka przypisana do slotu",
"unpinnedToast": "Przypisanie usunięte",
"dueContext": "termin: {time} ({delta})",
"confirmTitle": "Przypisać do slotu {time}?",
"confirmBody": "Dawka zostanie policzona dla tego slotu tak, jakby została w nim zapisana: jako przyjęta na czas lub z opóźnieniem, zależnie od tego, kiedy ją przyjęto, więc wskaźnik nie jest zawyżany. Przypisanie można w każdej chwili usunąć.",
"confirmCancel": "Anuluj",
"confirmAction": "Przypisz"
}
},
"notifications": {
"title": "Przypomnienia",
"switchLabel": "Wyślij przypomnienie, gdy nadejdzie czas tej dawki",
"helperOn": "Przypomnienia są włączone.",
"helperOff": "Przypomnienia są wyłączone.",
"enabledToast": "Przypomnienia włączone",
"disabledToast": "Przypomnienia wyłączone",
"toggleFailed": "Nie udało się zmienić ustawienia przypomnień.",
"clientManagedChip": "Zarządzane przez iPhone’a",
"clientManagedHint": "Twój iPhone zarządza przypomnieniami dla tego leku."
},
"settings": {
"title": "Ustawienia",
"phases": {
"openButton": "Skonfiguruj fazy",
"requiresCourseWindow": "Fazy są dostępne po ustawieniu okresu leczenia."
},
"grace": {
"label": "Okno przypomnienia",
"appliesToAllNote": "Dotyczy wszystkich harmonogramów tego leku.",
"unit": "minut",
"saved": "Okno przypomnienia zapisane",
"failed": "Nie udało się zapisać okna przypomnienia."
},
"codes": {
"label": "Kody kliniczne (ATC / RxNorm)",
"note": "Opcjonalne. Używane w eksporcie FHIR dokumentacji zdrowotnej. Kody są zapisywane dokładnie tak, jak wprowadzone, i nigdy nie są zgadywane.",
"atcLabel": "ATC",
"rxNormLabel": "RxNorm",
"saved": "Kody kliniczne zapisane",
"failed": "Nie udało się zapisać kodów klinicznych."
}
},
"zone": {
"title": "Zarządzanie i strefa zagrożenia",
"pause": {
"title": "Wstrzymaj",
"helper": "Wstrzymaj przypomnienia, aż włączysz je ponownie. Historia pozostaje nienaruszona.",
"pausedToast": "Przypomnienia wstrzymane",
"resumedToast": "Przypomnienia wznowione",
"failed": "Nie udało się zmienić stanu wstrzymania."
},
"end": {
"title": "Zakończ lek",
"helper": "Zatrzymuje przypomnienia i oznacza lek jako zakończony. Historia pozostaje widoczna.",
"button": "Zakończ",
"dialogTitle": "Zakończ {name}: zatrzymuje przypomnienia, historia pozostaje widoczna",
"dialogBody": "Brak kolejnych przypomnień. Stare wpisy pozostają na osi czasu.",
"toast": "Lek zakończony",
"failed": "Nie udało się zakończyć leku."
},
"purge": {
"title": "Usuń historię",
"helper": "Dla tego leku zapisano {count} przyjęć.",
"button": "Usuń historię",
"dialogTitle": "Na pewno usunąć historię?",
"dialogBody": "{count} przyjęć zostanie trwale usuniętych. Sam lek pozostaje.",
"toast": "Historia usunięta",
"failed": "Nie udało się usunąć historii."
},
"delete": {
"title": "Usuń lek",
"helper": "Usuwa lek i wszystkie powiązane rekordy.",
"button": "Usuń",
"dialogTitle": "Usunąć {name}?",
"dialogBody": "Lek, jego harmonogramy, historia przyjęć, tokeny API, konfiguracja faz i przypomnienia zostaną trwale usunięte.",
"toast": "Lek usunięty",
"failed": "Nie udało się usunąć leku."
}
},
"phases": {
"modeLabel": "Tryb {phase}",
"saveFailed": "Nie udało się zapisać faz przypomnień."
},
"api": {
"caption": "Punkt końcowy dla „{name}”",
"copyUrl": "Kopiuj URL",
"urlCopied": "Skopiowano URL",
"mintToken": "Wygeneruj token",
"mintAnotherToken": "Wygeneruj kolejny token",
"mintFailed": "Nie udało się wygenerować tokena.",
"copyFailed": "Nie udało się skopiować.",
"tokenCopied": "Token skopiowany",
"copyToken": "Kopiuj token",
"mintedHint": "Skopiuj ten token teraz. Jest pokazywany tylko raz."
},
"advanced": {
"dataPortability": {
"import": {
"title": "Importuj przyjęcia",
"helper": "Wczytaj wcześniejsze przyjęcia z pliku JSON lub wklejonego JSON.",
"button": "Importuj JSON"
},
"export": {
"title": "Eksportuj lek",
"helper": "Pobierz ten lek jako plik CSV.",
"includeIntake": "Dołącz historię przyjęć",
"button": "Eksportuj CSV"
}
}
},
"header": {
"historyLabel": "Zobacz historię przyjęć"
},
"history": {
"plannedSuffix": "zaplanowane"
},
"tabs": {
"uebersicht": "Przegląd",
"zeitplan": "Harmonogram",
"bestand": "Zapas",
"verlauf": "Historia",
"injektion": "Iniekcja",
"erweitert": "Zaawansowane",
"wirkung": "Działanie"
},
"shell": {
"loadFailed": "Nie udało się załadować tego leku.",
"tablistLabel": "Sekcje szczegółów leku"
},
"uebersicht": {
"statusTitle": "Status",
"nextDoseLabel": "Następna dawka",
"nextDoseNone": "Brak nadchodzącej dawki.",
"nextDoseAsNeeded": "W razie potrzeby, brak zaplanowanej dawki.",
"nextDoseNotTracked": "Przyjęcia nie są rejestrowane, tylko zapis.",
"pausedHint": "Wstrzymano, brak przypomnień.",
"reminderLabel": "Przypomnienie",
"reminderOn": "Włączone",
"reminderOff": "Wyłączone",
"supplyLabel": "Zapas",
"supplyRunway": "Wystarczy na około {days} dni",
"jumpToZeitplan": "Otwórz harmonogram",
"jumpToVerlauf": "Otwórz historię",
"jumpToBestand": "Otwórz zapas",
"complianceTitle": "Przestrzeganie",
"complianceEmpty": "Brak danych o przestrzeganiu."
},
"bestand": {
"title": "Zapas",
"summary": "Pozostało {remaining} z {total} dawek",
"itemsTitle": "Opakowania i pojemniki",
"doses": "{remaining} / {total} dawek",
"unknown": "Nieznane",
"state": {
"ACTIVE": "Nieotwarte",
"IN_USE": "W użyciu",
"EXPIRED": "Przeterminowane",
"USED_UP": "Zużyte"
},
"empty": "Nie zarejestrowano zapasu.",
"emptyHelper": "Zarejestruj opakowanie lub pojemnik, aby śledzić pozostały zapas i jego wystarczalność.",
"emptyCta": "Zarejestruj opakowanie",
"addButton": "Zarejestruj",
"lowStockLinkOn": "Powiadomienie o niskim zapasie: poniżej {days} dni",
"lowStockLinkOff": "Powiadomienie o niskim zapasie: wyłączone",
"addTitle": "Zarejestruj opakowanie lub pojemnik",
"addDescription": "Zapisz nowy zapas z liczbą jednostek; data ważności jest opcjonalna.",
"addQuantityLabel": "Ilość (jednostki)",
"addQuantityHelper": "1–1000 jednostek na opakowanie lub pojemnik.",
"addExpiryLabel": "Data ważności (opcjonalnie)",
"addSubmit": "Zarejestruj",
"addSuccess": "Zapas zarejestrowany",
"addFailed": "Nie udało się zarejestrować zapasu.",
"adjustButton": "Skoryguj",
"adjustTitle": "Popraw opakowanie",
"adjustDescription": "Ustaw pozostałe jednostki i popraw daty tego opakowania. 0 jednostek oznacza je jako zużyte.",
"adjustQuantityLabel": "Pozostałe jednostki",
"adjustHelper": "Pojemność: {total} jednostek.",
"adjustSubmit": "Zapisz",
"adjustSuccess": "Zapas zaktualizowany",
"adjustFailed": "Nie udało się zaktualizować zapasu.",
"deleteTitle": "Usunąć opakowanie?",
"deleteDescription": "Trwale usuwa to opakowanie lub pojemnik z zapasu. Zarejestrowane dawki pozostają bez zmian.",
"deleteSuccess": "Zapas usunięty",
"deleteFailed": "Nie udało się usunąć zapasu.",
"containerTypeLabel": "Rodzaj pojemnika",
"containerType": {
"PEN": "Wstrzykiwacz",
"AMPOULE": "Ampułka",
"BLISTER": "Opakowanie tabletek",
"INHALER": "Inhalator",
"BOTTLE": "Butelka",
"OTHER": "Inne"
},
"unitsDetail": "{remaining} / {total} jednostek",
"quantityModeDoses": "Dawki",
"quantityModeUnits": "Jednostki",
"quantityInUnits": "= {units} jednostek",
"quantityInDoses": "Dawki: ≈ {doses}",
"quantityUnderOneDose": "< 1 dawka",
"expiredSuffix": "+ przeterminowane jednostki: {units}",
"packagingTitle": "Opakowanie i dawka",
"packagingUnitsPerDose": "1 dawka = {units} jedn.",
"packagingDefaultPack": "Domyślny rozmiar opakowania: {units} jedn.",
"packagingNoDefaultPack": "Brak domyślnego rozmiaru opakowania",
"packagingEdit": "Edytuj",
"packagingDescription": "Określ, ile jednostek zużywa jedna dawka i jaki jest typowy rozmiar nowego opakowania, np. po zmianie producenta z innym blistrem.",
"packagingUnitsPerDoseLabel": "Jednostki na dawkę",
"packagingUnitsPerDoseHelper": "Np. dwie tabletki 2 mg na dawkę 4 mg lub 1,5 dla półtorej (powyżej 0, do 100). Zarejestrowane dawki pozostają bez zmian.",
"packagingDefaultPackLabel": "Domyślny rozmiar opakowania (jednostki)",
"packagingDefaultPackHelper": "Wstępnie wypełnia ilość przy dodawaniu nowych opakowań (1–1000). Zostaw puste, jeśli nie dotyczy.",
"packagingSuccess": "Zapisano dane opakowania",
"packagingFailed": "Zapis nie powiódł się",
"addManufacturerLabel": "Producent",
"addDoseStrengthLabel": "Moc",
"addDoseStrengthHint": "Zgodnie z nadrukiem na opakowaniu, np. 5 mg/0,5 ml.",
"openedOn": "Otwarto {date}",
"expiresOn": "Ważne do {date}",
"summaryAllExpired": "Brak zapasu do użycia: {units} jednostek oznaczono jako przeterminowane",
"editExpiryLabel": "Data ważności z opakowania",
"editExpiryHelper": "Data nadrukowana na opakowaniu. Zostaw puste, jeśli nie została zapisana.",
"editOpenedLabel": "Data otwarcia",
"editOpenedHelper": "Zostaw puste, jeśli opakowanie jest jeszcze zamknięte.",
"editOpenedHelperClock": "Pen lub ampułka traci ważność 30 dni po otwarciu. Zostaw puste, jeśli jest jeszcze zamknięta."
},
"erweitert": {
"group": {
"lifecycle": "Cykl życia",
"externalApi": "Zewnętrzne API",
"data": "Dane",
"danger": "Strefa zagrożenia"
},
"editor": {
"title": "Edytuj lek w edytorze",
"helper": "Zmień nazwę, klasę leczenia, częstotliwość i harmonogramy w edytorze krok po kroku.",
"button": "Otwórz edytor"
}
},
"zeitplan": {
"title": "Harmonogram",
"timesTitle": "Godziny przyjęcia",
"timesNote": "Dostosuj godzinę i okno punktualności każdej dawki. Częstotliwość (codziennie, co tydzień…) zmieniasz w edytorze w sekcji Zaawansowane.",
"scheduleLabel": "Harmonogram {index}",
"fullEditNote": "Częstotliwość, klasę leczenia i okno kuracji edytujesz w edytorze w sekcji Zaawansowane → Cykl życia.",
"graceEcho": "Okno przypomnienia: {minutes} minut",
"reminderTitle": "Przypomnienie",
"manageChannels": "Zarządzaj kanałami powiadomień",
"history": {
"title": "Historia planu",
"currentSince": "Aktualny plan od {date}",
"noTimes": "Brak stałych godzin",
"manualChip": "Dodano ręcznie",
"showErasOne": "Pokaż 1 wcześniejszy okres",
"showErasOther": "Pokaż wcześniejsze okresy ({count})",
"hideEras": "Ukryj wcześniejsze okresy",
"addEra": "Dodaj wcześniejszy okres",
"addEraTitle": "Dodaj wcześniejszy okres",
"addEraDescription": "Zapisz, o których godzinach ten lek był wcześniej przyjmowany, np. zanim zmieniono go tutaj.",
"editAria": "Edytuj okres",
"editEraTitle": "Edytuj okres",
"editEraDescription": "Dostosuj godziny przyjmowania i zakres dat tego okresu.",
"archivedEditHint": "Ten okres został zapisany automatycznie. Twoja zmiana koryguje zarejestrowaną historię; oryginał pozostaje wewnętrznie jako zapis.",
"updatedToast": "Okres zaktualizowany",
"updateError": "Nie udało się zaktualizować okresu. Nie może nakładać się na inne okresy i musi kończyć się przed aktualnym planem.",
"timesLabel": "Godziny przyjmowania",
"fromLabel": "Od",
"untilLabel": "Do",
"untilHint": "„Do\" to dzień, od którego obowiązywał kolejny plan (wyłącznie).",
"validationTimes": "Podaj co najmniej jedną godzinę.",
"validationRangeMissing": "Podaj daty od i do.",
"validationRangeOrder": "Data od musi być wcześniejsza niż data do.",
"cancel": "Anuluj",
"submit": "Zapisz okres",
"createdToast": "Wcześniejszy okres zapisany",
"createError": "Nie udało się zapisać okresu. Nie może nakładać się na istniejące okresy i musi kończyć się przed aktualnym planem.",
"deletedToast": "Okres usunięty",
"deleteError": "Nie udało się usunąć okresu",
"deleteAria": "Usuń okres",
"deleteConfirmTitle": "Usunąć okres?",
"deleteConfirmBody": "Historia i przestrzeganie zaleceń w tym zakresie zostaną ponownie obliczone według aktualnego planu.",
"deleteConfirmAction": "Usuń",
"loadError": "Nie udało się wczytać historii planu"
},
"save": "Zapisz harmonogram",
"saved": "Zapisano harmonogram",
"failed": "Nie udało się zapisać harmonogramu",
"window": {
"intro": "Dla każdej dawki ustal, kiedy przyjęcie jest jeszcze punktualne: dokładna godzina (±1 h) lub własne okno, np. 07:00–09:00.",
"explicitToggle": "Własne okno",
"startLabel": "Początek okna",
"endLabel": "Koniec okna",
"onTimeBand": "Punktualnie: {start}–{end}",
"lateUntil": "z opóźnieniem do {time}",
"lateDays": "z opóźnieniem do {days} dni później",
"orderError": "Początek musi być przed końcem.",
"noTimes": "Nie ustawiono jeszcze godzin przyjęcia."
}
}
},
"logInjectionSiteTitle": "Zarejestruj miejsce iniekcji",
"logInjectionSiteDescription": "Gdzie wstrzyknięto {name}? Opcjonalnie, możesz to pominąć.",
"logInjectionSiteSkip": "Pomiń",
"logInjectionSiteConfirm": "Zapisz miejsce",
"logInjectionSiteNoneAvailable": "Brak dostępnego miejsca iniekcji: wszystkie miejsca są wykluczone w Twoich ustawieniach.",
"logInjectionSiteSaveFailed": "Nie udało się zapisać miejsca iniekcji. Spróbuj ponownie.",
"perSlotUnits": "{units} na dawkę",
"trackInjectionSitesToggle": "Rejestruj miejsca iniekcji",
"trackInjectionSitesHint": "Po przyjęciu dawki zapytaj, którego miejsca użyto, i zaproponuj kolejną rotację.",
"allowedSitesLabel": "Dozwolone miejsca",
"allowedSitesHint": "Pozostaw wszystkie zaznaczone, aby nie stosować ograniczeń. Miejsca wykluczone globalnie nigdy nie są proponowane.",
"viewToggleLabel": "Widok",
"viewToggleHint": "Wybierz, czy leki mają być wyświetlane jako karty, czy jako tabela.",
"viewCards": "Widok kart",
"viewTable": "Widok tabeli",
"viewSaveFailed": "Nie udało się zapisać widoku",
"tableCaption": "Leki w formie tabeli ze statusem, następną dawką, przestrzeganiem zaleceń i zapasem",
"tableColName": "Nazwa",
"tableColStatus": "Status",
"tableColNextDose": "Następna dawka",
"tableColCompliance": "Przestrzeganie",
"tableColStock": "Zapas",
"tableColActions": "Akcje",
"tableSortBy": "Sortuj według {column}",
"tableComplianceDays": "{days} dni",
"tableStockDoseOne": "1 dawka",
"tableStockDoses": "Dawki: {count}",
"tableStockRunway": "≈ {days} dni zapasu",
"cardLowStockRunway": "Zapas: ≈ {days} dni",
"takeActionFor": "Przyjmij: {name}",
"skipActionFor": "Pomiń: {name}",
"reorderDescription": "Ustal kolejność swoich leków w widoku kart i w tabeli.",
"reorderSaved": "Kolejność zapisana",
"reorderSaveFailed": "Nie udało się zapisać kolejności",
"customize": "Dostosuj leki",
"efficacy": {
"title": "Działanie",
"intro": "Jak zmieniały się pomiary, na które ma wpływać ten lek, w okolicach rozpoczęcia jego przyjmowania. Pokazuje to, co zbiega się w czasie (powiązanie, nie przyczynę), i nigdy porady dotyczącej leczenia ani dawki.",
"notEligible": "Brak pomiaru, który można powiązać z tym lekiem.",
"startFallback": "Nie ustawiono daty rozpoczęcia, więc porównanie używa pierwszego zapisanego pomiaru jako punktu odniesienia.",
"noStart": "Ustaw datę rozpoczęcia, aby porównać pomiary sprzed i po rozpoczęciu.",
"disclaimer": "Tylko powiązanie: te liczby pokazują, co zmieniło się w tym samym okresie, a nie że lek spowodował tę zmianę. Wszelkie decyzje dotyczące leczenia omów z lekarzem.",
"primaryBadge": "Główny cel",
"noSeries": "Brak zapisanych pomiarów dla tego celu.",
"startMarker": "Początek",
"adherenceLane": "Regularność",
"typicalRange": "Typowy zakres",
"levelShift": "Wykryto zmianę poziomu w okolicach {date}.",
"plateau": {
"title": "Plateau masy ciała przy obecnej dawce",
"evidence": "Zmiana masy ciała o {delta} {unit} w ciągu ostatnich {window} dni ({readings} pomiarów), {days} dni na dawce {dose}."
},
"retarget": {
"label": "To nie ten pomiar?",
"placeholder": "Śledź według…",
"apply": "Zastosuj",
"reset": "Przywróć domyślne",
"error": "Nie udało się zapisać tej zmiany. Spróbuj ponownie."
},
"beforeAfter": {
"summary": "Ø {before} przedtem → Ø {after} od tego czasu, zmiana o {delta}.",
"counts": "Na podstawie {beforeCount} pomiarów przedtem i {afterCount} od tego czasu.",
"needBefore": "Za mało pomiarów przed rozpoczęciem. Do porównania potrzeba około {weeks} tygodni przed i po.",
"needAfter": "Za mało pomiarów od rozpoczęcia. Do porównania potrzeba około {weeks} tygodni przed i po.",
"needStart": "Ustaw datę rozpoczęcia, aby porównać pomiary sprzed i po rozpoczęciu.",
"needData": "Za mało pomiarów. Do porównania potrzeba około {weeks} tygodni przed i po rozpoczęciu."
},
"insights": {
"title": "Działanie leków",
"subtitle": "Co zbiega się w czasie z pomiarami, na które celują Twoje leki: tylko powiązanie, nigdy werdykt.",
"link": "Otwórz widok działania",
"empty": "Za mało danych, aby powiązać Twoje leki z docelowymi pomiarami."
},
"scaleAbsolute": "Bezwzględne",
"scalePercentSinceStart": "% od początku",
"scaleToggleLabel": "Skala wykresu",
"segmented": {
"title": "Zmiana na początku",
"level": "Zaraz na początku poziom przesunął się o {value} {unit} (zakres 95%: od {low} do {high}).",
"slope": "Po rozpoczęciu trend tygodniowy zmienił się o {value} {unit} na tydzień (zakres 95%: od {low} do {high}).",
"preSlope": "Przed rozpoczęciem trend wynosił {value} {unit} na tydzień.",
"includesZero": "Gdy zakres obejmuje zero, te pomiary są zgodne także z brakiem zmiany.",
"basis": "Na podstawie {before} dni przed i {after} dni po rozpoczęciu (od {from} do {to}).",
"excludedAdherence": "Pominięto {count} dni po rozpoczęciu, bo w ciągu {lookback} dni przed nimi przyjęto mniej niż {floor}% dawek.",
"excludedNotTaking": "Pominięto {count} dni, bo lek był wstrzymany albo przypadały między kuracjami.",
"notTracked": "Przyjmowanie tego leku nie jest rejestrowane, więc nie pominięto żadnych dni z powodu opuszczonych dawek.",
"endDoseChange": "Okres kończy się przed pierwszą zmianą dawki, więc opisuje dawkę początkową.",
"confoundersTitle": "Inne zmiany leków w tym okresie, których ten widok nie potrafi oddzielić od tego leku:",
"confounderStarted": "{name} rozpoczęty {date}",
"confounderStopped": "{name} zakończony {date}",
"confounderDoseChange": "{name}: zmiana dawki {date}",
"confounderPaused": "{name} wstrzymany {date}",
"confounderResumed": "{name} wznowiony {date}",
"method": "Jak to jest liczone: przez dzienne wartości sprzed rozpoczęcia prowadzi się jedną prostą, a przez te późniejsze drugą. Skok między nimi w dniu rozpoczęcia to zmiana poziomu, różnica ich nachyleń to zmiana trendu. Zakresy uwzględniają, że wartości z jednego dnia przenoszą się na następny.",
"needStart": "Ustaw datę rozpoczęcia, aby zobaczyć zmianę na początku.",
"needBefore": "Do zmiany na początku potrzeba pomiarów z co najmniej {days} dni rozłożonych na {span} dni przed rozpoczęciem.",
"needAfter": "Do zmiany na początku potrzeba pomiarów z co najmniej {days} dni rozłożonych na {span} dni od rozpoczęcia, w dni z przyjętymi dawkami.",
"fitFailed": "Nie udało się dopasować tych pomiarów, więc zmiana na początku nie jest pokazana.",
"autocorrelation": "Wartości dzienne silnie zależą od poprzedniego dnia, więc nawet te zakresy mogą być zbyt wąskie."
}
},
"import": {
"resultSuccess": "Zaimportowano przyjęcia: {imported}",
"resultPartial": "Zaimportowano {imported}, pominięto {skipped}.",
"resultNothing": "Nic nie zaimportowano: pominięto wszystkie wpisy ({skipped}).",
"resultAlreadyRecorded": "Przyjęcia już zapisane: {recorded}. Nie dodano niczego nowego.",
"resultEmpty": "Ten plik nie zawierał żadnych przyjęć.",
"showSkipDetails": "Pokaż pominięte wiersze ({count})",
"skipDetailLine": "Wiersz {line}: {reason}",
"skipDetailsOmitted": "Nie pokazano kolejnych pominiętych wierszy: {count}.",
"skipGroupOne": "Pominięto {count} wpis: {reason}",
"skipGroupFew": "Pominięto {count} wpisy: {reason}",
"skipGroupOther": "Pominięto {count} wpisów: {reason}",
"reasonDuplicateInFile": "inny wpis w tym samym pliku ma tę samą datę i godzinę",
"reasonAlreadyRecorded": "przyjęcie o tej dacie i godzinie jest już zapisane",
"reasonUnknown": "powód nieodnotowany",
"reasonMedicationNotFound": "żaden zapisany lek nie odpowiada nazwie z pliku",
"reasonMedicationAmbiguous": "nazwa z pliku odpowiada więcej niż jednemu lekowi",
"reasonMedicationIsMirrored": "lek jest kopią tylko do odczytu z innej aplikacji",
"reasonStatusUnknown": "status w pliku nie należy do tych, które definiuje format",
"reasonMissingTimestamp": "wiersz nie podaje godziny",
"reasonMissingOffset": "godzina nie ma przesunięcia UTC, więc moment jest nieznany",
"reasonUnreadableTimestamp": "godzina nie ma formatu opisanego w dokumentacji eksportu",
"reasonImplausibleTimestamp": "godzina nie wskazuje rzeczywistego momentu albo leży w przyszłości",
"reasonMissingMedication": "wiersz nie nazywa żadnego leku",
"reasonUnreadableDosage": "dawka nie jest liczbą",
"reasonUnreadableRow": "wiersz ma mniej kolumn niż nagłówek",
"reasonStatusNoDoseInformation": "plik nie zapisuje nic o tej dawce: nikt nie odpowiedział i nic nie zostało zanotowane",
"reasonStatusReminderEvent": "wiersz dotyczy odłożonego przypomnienia, co nic nie mówi o dawce",
"reasonStatusNotificationNotSent": "wiersz zapisuje, że nie wysłano powiadomienia, co dotyczy aplikacji, a nie dawki"
},
"unitsPerDoseField": {
"other": "Inna…",
"inputLabel": "Jednostki na dawkę, inna wartość",
"placeholder": "np. 1,5 lub 1 1/2",
"invalid": "Wpisz liczbę większą od 0 i nie większą niż 100, na przykład 1,5 lub 1 1/2.",
"preview": "Liczy się jako {value} na dawkę"
},
"category": {
"custom": {
"add": "Nowa kategoria",
"label": "Nazwa kategorii",
"labelPlaceholder": "np. Apteczka podróżna",
"create": "Dodaj",
"limitReached": "Osiągnięto limit 20 własnych kategorii.",
"saveFailed": "Nie udało się zapisać. Spróbuj ponownie.",
"bpGateNote": "Analiza ciśnienia uwzględnia tylko leki z wbudowanej kategorii Ciśnienie krwi.",
"manage": "Zarządzaj kategoriami",
"manageDescription": "Twoje własne kategorie, obok wbudowanych.",
"hidden": "Ukryta",
"count": "Leki: {count}",
"rename": "Zmień nazwę",
"hide": "Ukryj w wyborze",
"show": "Pokaż w wyborze",
"delete": "Usuń",
"deleteTitle": "Usunąć tę kategorię?",
"deleteBody": "Leki w tej kategorii ({count}) przejdą do kategorii Inne. Same leki zostaną.",
"movedToOther": "Kategoria usunięta. Leki przeniesione do kategorii Inne: {count}."
},
"filter": {
"label": "Kategoria",
"all": "Wszystkie kategorie"
}
},
"course": {
"endedOn": "Ostatnia kuracja zakończyła się {date}",
"nth": "Kuracja {n}",
"startNew": "Rozpocznij nową kurację",
"editTitle": "Edytuj kurację",
"startsOn": "Pierwszy dzień",
"endsOn": "Ostatni dzień (opcjonalnie)",
"note": "Notatka (opcjonalnie)",
"notePlaceholder": "np. grypa w marcu",
"title": "Kuracje",
"helper": "Kiedy go przyjmowano. Dawki są oczekiwane tylko w trakcie kuracji.",
"none": "Przyjmowany stale, bez osobnych kuracji.",
"range": "Od {start} do {end}",
"since": "Od {start}",
"meta": "Kuracja {n}, {status}, przyjęte dawki: {taken}",
"status": {
"current": "trwa",
"upcoming": "zaplanowana",
"ended": "zakończona"
},
"delete": "Usuń kurację",
"deleteTitle": "Usunąć tę kurację?",
"deleteBody": "Daty zostaną usunięte; zapisane dawki zostaną w historii.",
"deleteLastConfirm": "To jedyna kuracja. Bez niej lek liczy się jako przyjmowany stale od dodania. Zapisane dawki zostaną.",
"error": {
"overlap": "Ta kuracja pokrywa się z inną.",
"currentOpen": "Zakończ trwającą kurację, zanim dodasz kolejną po niej.",
"oneShot": "Lek jednorazowy ma tylko jedną kurację.",
"invalidRange": "Ostatni dzień nie może być przed pierwszym.",
"generic": "Nie udało się zapisać. Spróbuj ponownie."
}
},
"composition": {
"title": "Skład",
"empty": "Dodaj, co zawiera jedna tabletka lub kapsułka, aby każda przyjęta dawka liczyła się do twoich mikroskładników.",
"perUnitNote": "Na tabletkę lub kapsułkę; każda przyjęta dawka dolicza się do mikroskładników dnia.",
"add": "Dodaj",
"edit": "Edytuj",
"rowHelper": "Co zawiera jedna tabletka lub kapsułka, dla mikroskładników.",
"sheetTitle": "Co zawiera jedna jednostka",
"sheetDescription": "Wpisz ilości na tabletkę lub kapsułkę tak, jak podano na etykiecie.",
"nutrientLabel": "Składnik",
"amountLabel": "Ilość",
"unitLabel": "Jednostka",
"choose": "Wybierz składnik",
"addRow": "Dodaj składnik",
"removeRow": "Usuń {name}",
"editorEmpty": "Brak składników. Dodaj jeden na każdą linię etykiety.",
"labelPhoto": "Odczytaj ze zdjęcia etykiety",
"labelReading": "Odczytywanie etykiety…",
"labelWaiting": "Usługa w tle jeszcze nie zajęła się etykietą.",
"labelReviewNote": "Sprawdź każdą linię z etykietą przed zapisaniem.",
"lowConfidence": "Ta linia była trudna do odczytania; sprawdź ją z etykietą.",
"unmatchedTitle": "Linie bez pasującego składnika, w razie potrzeby wpisz je ręcznie:",
"servingNote": "Na etykiecie: {note}. Ilości podano na jedną jednostkę.",
"labelError": "Nie udało się odczytać etykiety",
"saveError": "Nie udało się zapisać składu",
"catalogError": "Nie udało się wczytać listy składników",
"invalidRow": "W każdej linii wybierz składnik i wpisz ilość większą od zera."
}
},
"charts": {
"loadingLabel": "Ładowanie wykresu…",
"loadingSlowHint": "Obliczanie analiz, to może chwilę potrwać.",
"weight": "Waga",
"bloodPressure": "Ciśnienie tętnicze",
"pulse": "Tętno",
"bodyFat": "Tkanka tłuszczowa",
"sleep": "Sen",
"steps": "Kroki",
"hrv": "HRV",
"restingHeartRate": "Tętno spoczynkowe",
"activeEnergy": "Energia czynna",
"flights": "Pokonane piętra",
"distance": "Dystans marsz + bieg",
"vo2Max": "VO₂ max",
"bodyTemperature": "Temperatura ciała",
"noData": "Brak danych w wybranym okresie",
"bucketWeekly": "Średnia tygodniowa",
"bucketMonthly": "Średnia miesięczna",
"bucketWeeklyDaily": "Średnia dzienna w tygodniu",
"bucketMonthlyDaily": "Średnia dzienna w miesiącu",
"days7Label": "7 dni",
"days7Title": "Ostatnie 7 dni",
"days30Label": "30 dni",
"daysNLabel": "{days} dni",
"days30Title": "Ostatnie 30 dni",
"days90Label": "90 dni",
"days90Title": "Ostatnie 90 dni",
"daysAllLabel": "Wszystkie",
"daysAllTitle": "Cały okres",
"systolic": "Skurczowe",
"diastolic": "Rozkurczowe",
"bodyWater": "Woda w organizmie",
"boneMass": "Masa kostna",
"spo2": "SpO₂",
"movingAverage7d": "Trend 7-dniowy",
"avg7dShort": "7D",
"avg30dShort": "30D",
"trend7dShort": "Trend 7-dniowy",
"trend": "Trend",
"perWeek": "/tydzień",
"totalDelta": "Łącznie",
"colorGreen": "Zielony:",
"colorOrange": "Pomarańczowy:",
"colorRed": "Czerwony:",
"mood": "Nastrój",
"moodScore": "Wynik nastroju",
"weekdays": {
"mon": "Pon",
"wed": "Śr",
"fri": "Pt",
"sun": "Nd"
},
"months": {
"jan": "Sty",
"feb": "Lut",
"mar": "Mar",
"apr": "Kwi",
"may": "Maj",
"jun": "Cze",
"jul": "Lip",
"aug": "Sie",
"sep": "Wrz",
"oct": "Paź",
"nov": "Lis",
"dec": "Gru"
},
"heatmapOnTime": "na czas",
"heatmapLate": "spóźniona",
"heatmapVeryLate": "mocno spóźniona",
"legendOnTime": "Na czas",
"legendLate": "Spóźniona",
"legendVeryLate": "Mocno spóźniona",
"legendMissed": "Pominięta",
"emptyStateTitle": "Zarejestruj więcej pomiarów, aby zobaczyć trendy",
"emptyStateDescription": "Zarejestruj co najmniej 3 wpisy, aby odblokować linię trendu.",
"needMoreDistinctDaysTitle": "Potrzeba więcej różnych dni",
"needMoreDistinctDaysDescription": "Rejestruj w więcej dni, aby odblokować linię trendu.",
"noDataInRangeTitle": "Brak danych w tym zakresie",
"noDataInRangeDescription": "Żadne pomiary nie mieszczą się w wybranym zakresie. Zmień zakres lub dodaj nowy pomiar.",
"errorTitle": "Nie udało się załadować danych",
"loadErrorTitle": "Nie udało się załadować wykresu",
"loadErrorReload": "Załaduj ponownie",
"sparseDataCaption": "Więcej dni dopełni trend.",
"tooltipHourlyMean": "{metric} (średnia z godzin)",
"dataTable": {
"toggle": "Punkty danych ({count})",
"columnDate": "Data",
"noValue": "Brak wartości",
"captionDay": "Jeden wiersz na dzień dla {metric}: dokładnie te punkty, które rysuje wykres.",
"captionWeek": "Jeden wiersz na tydzień dla {metric}, średnia z dni tego tygodnia: dokładnie te punkty, które rysuje wykres.",
"captionMonth": "Jeden wiersz na miesiąc dla {metric}, średnia z dni tego miesiąca: dokładnie te punkty, które rysuje wykres.",
"hourlyMeanNote": "{metric} to średnia z każdego dnia, w której każda godzina liczy się raz, dzięki czemu trening nie przeważa nad resztą dnia."
},
"personalBaseline": "Twoja średnia",
"deltaVsBaseline": "{delta} vs. twoja średnia",
"deltaUnchanged": "odpowiada twojej średniej",
"deltaVsTarget": "{delta} vs. cel",
"weekdaysFull": {
"mon": "Poniedziałek",
"tue": "Wtorek",
"wed": "Środa",
"thu": "Czwartek",
"fri": "Piątek",
"sat": "Sobota",
"sun": "Niedziela"
},
"rangeBand": "Zakres",
"a11y": {
"summary": "Wykres {metric}. Zakres od {min} do {max}, ostatnio {latest}, trend {trend}.",
"noData": "Wykres {metric}. Brak dostępnych danych.",
"trendUp": "rosnący",
"trendDown": "malejący",
"trendFlat": "stały",
"scatterSummary": "Wykres korelacji, {count} punktów porównujących {xLabel} z {yLabel}.",
"scatterNoData": "Wykres korelacji {xLabel} i {yLabel}. Brak dostępnych danych.",
"moodHeatmap": "Mapa cieplna nastroju od {start} do {end}, zarejestrowano {days} dni.",
"moodHeatmapEmpty": "Mapa cieplna nastroju, brak zarejestrowanych dni.",
"complianceHeatmap": "Mapa cieplna przyjmowania leków od {start} do {end}, {days} aktywnych dni.",
"complianceHeatmapEmpty": "Mapa cieplna przyjmowania leków, brak aktywnych dni."
},
"medicationsEmptyAction": "Dodaj lek",
"rangeLabel": "Zakres czasu"
},
"chart": {
"overlay": {
"controls": {
"title": "Warstwy wykresu",
"trendIndicator": "Trend 7-dniowy",
"trendArrow": "Strzałka trendu",
"targetRange": "Zakres docelowy",
"comparisonBaseline": "Porównanie",
"comparisonUnavailable": "Brak dostępnego poprzedniego okresu",
"tooltip": {
"openSettings": "Ustawienia warstw wykresu"
}
}
}
},
"comparison": {
"baseline": {
"none": "Wyłączone",
"lastMonth": "Poprzedni miesiąc",
"lastYear": "Poprzedni rok"
},
"captionLastMonth": "vs. poprzedni miesiąc",
"captionLastYear": "vs. poprzedni rok",
"deltaVs": {
"lastMonth": "{delta} vs. poprzedni miesiąc",
"lastYear": "{delta} vs. poprzedni rok"
},
"tooltipPrior": "Poprzedni okres",
"unavailable": {
"lastMonth": "Porównanie niedostępne: brak danych z poprzedniego miesiąca",
"lastYear": "Porównanie niedostępne: brak danych z poprzedniego roku"
},
"notAvailableForCompliance": "Porównanie niedostępne dla przestrzegania"
},
"insights": {
"pattern": {
"dismiss": "Odrzuć",
"dismissed": "Ten wzorzec pozostanie odrzucony, dopóki nie zmienią się dowody.",
"restore": "Pokaż ponownie",
"dismissError": "Nie udało się odrzucić tego wzorca.",
"restoreError": "Nie udało się przywrócić tego wzorca.",
"loadError": "Nie udało się wczytać wzorców.",
"empty": "Żaden aktualny wzorzec nie przekroczył progu dowodów.",
"seasonalNote": "Od wersji 1.42 HealthLog usuwa porę roku i długoterminowy trend, zanim porówna wartości. Zobaczysz mniej zależności, ale te, które zostały, są pewniejsze. Wiele wcześniejszych wzorców wynikało po prostu z kalendarza.",
"seasonalNoteDismiss": "Zamknij uwagę"
},
"correlation": {
"direction": {
"higher": "wzrostu",
"lower": "spadku"
},
"weekdayDirection": {
"above": "powyżej",
"below": "poniżej"
},
"channelFactor": "ocena czynnika {factor}",
"channel": {
"WEIGHT": "waga",
"BLOOD_GLUCOSE": "poziom cukru we krwi",
"BLOOD_PRESSURE_SYS": "ciśnienie skurczowe",
"BLOOD_PRESSURE_DIA": "ciśnienie rozkurczowe",
"ACTIVITY_STEPS": "dzienna liczba kroków",
"SLEEP_DURATION": "długość snu",
"HEART_RATE_VARIABILITY": "zmienność rytmu serca",
"RESTING_HEART_RATE": "spoczynkowe tętno",
"TIME_IN_DAYLIGHT": "czas w świetle dziennym",
"MOOD": "nastrój",
"PULSE": "tętno spoczynkowe",
"MEDICATION_COMPLIANCE": "przyjmowanie leków",
"SYMPTOM_SEVERITY": "nasilenie objawów",
"ENV_TEMP_MEAN": "temperatura dobowa",
"ENV_TEMP_MIN": "nocna temperatura minimalna",
"ENV_SUNSHINE": "nasłonecznienie",
"ENV_DAYLIGHT": "światło dzienne",
"ENV_PRECIP": "opady",
"ENV_PRESSURE_MEAN": "ciśnienie atmosferyczne",
"ENV_PRESSURE_DELTA": "dobowa zmiana ciśnienia",
"ENV_PM25": "pył drobny (PM2,5)",
"ENV_OZONE_8H": "ozon",
"ENV_POLLEN_MAX": "pyłki",
"HRV_RMSSD": "zmienność rytmu serca (RMSSD)",
"HYDRATION": "spożycie wody",
"CAFFEINE": "spożycie kofeiny",
"ALCOHOL": "spożycie alkoholu",
"WORKOUT_MINUTES": "minuty treningu",
"TRAINING_LOAD": "obciążenie treningowe",
"EXERCISE_MINUTES": "minuty ćwiczeń",
"STAND_MINUTES": "minuty na stojąco",
"MINDFUL_MINUTES": "minuty uważności",
"STATE_OF_MIND_VALENCE": "zapisany stan ducha",
"INDOOR_CO2": "CO2 w pomieszczeniu",
"INDOOR_TEMPERATURE": "temperatura w pomieszczeniu",
"INDOOR_HUMIDITY": "wilgotność w pomieszczeniu"
},
"daily": {
"high": "Gdy {behaviour} rośnie, {outcome} następnego dnia zwykle wykazuje tendencję do {direction} w Twoich danych. To wzorzec wart obserwacji, nie przyczyna.",
"moderate": "Gdy {behaviour} rośnie, {outcome} następnego dnia wydaje się wykazywać tendencję do {direction}, na podstawie dostępnych danych. To wzorzec wart obserwacji, nie przyczyna.",
"faint": "Gdy {behaviour} rośnie, w Twoich danych pojawia się co najwyżej słaba wskazówka, że {outcome} następnego dnia wykazuje tendencję do {direction}. To zbyt mało, by na tym polegać, i nigdy nie jest to przyczyna."
},
"lab": {
"default": "Wyższe wartości {lab} idą w parze z tym, że {outcome} wykazuje tendencję do {direction} w tych samych okresach w Twoich danych, zależność, którą warto obserwować z lekarzem, nigdy przyczyna.",
"faint": "Wyższe wartości {lab} co najwyżej słabo sugerują, że {outcome} wykazuje tendencję do {direction} w tych samych okresach w Twoich danych. To zbyt mało, by na tym polegać, i nigdy nie jest to przyczyna, ale warto omówić to z lekarzem."
},
"hypothesis": {
"bpCompliance": {
"support": "Lepsze przyjmowanie leków idzie w parze z niższymi wartościami skurczowymi, wzorzec wart obserwacji.",
"surprising": "Przyjmowanie leków i ciśnienie skurczowe zmieniają się razem w Twoich danych, co jest zaskakujące. Skonsultuj się z lekarzem, zanim coś zmienisz.",
"none": "Przyjmowanie leków i ciśnienie skurczowe nie zmieniają się wyraźnie razem w tym okresie."
},
"moodPulse": {
"support": "Dni z gorszym nastrojem idą w parze z wyższym tętnem spoczynkowym, wzorzec wart obserwacji.",
"surprising": "Dni z lepszym nastrojem idą w parze z wyższym tętnem spoczynkowym w Twoich danych, co jest zaskakujące.",
"none": "Nastrój i tętno spoczynkowe nie zmieniają się wyraźnie razem w tym okresie."
},
"weightWeekday": "Waga w {weekday} jest {delta} kg {direction} Twojej średniej z pozostałych dni, wzorzec wart obserwacji."
},
"dailySameDay": {
"high": "Więcej {behaviour} tego samego dnia i dzień wcześniej idzie w twoich danych zwykle w parze z {direction} {outcome}. To wzorzec wart obserwacji, nie przyczyna.",
"moderate": "Więcej {behaviour} tego samego dnia i dzień wcześniej wydaje się, na podstawie dotychczasowych danych, iść w parze z {direction} {outcome}. To wzorzec wart obserwacji, nie przyczyna.",
"faint": "Więcej {behaviour} tego samego dnia i dzień wcześniej pokazuje w twoich danych co najwyżej słaby ślad {direction} {outcome}. To za mało, by na tym polegać, i nigdy nie jest to przyczyna."
},
"channelNutrient": "spożycie: {nutrient}",
"dailyOvernight": {
"high": "Więcej {behaviour} w nocy idzie w twoich danych zwykle w parze z {direction} {outcome} tej samej nocy. To wzorzec wart obserwacji, nie przyczyna.",
"moderate": "Więcej {behaviour} w nocy wydaje się, na podstawie dotychczasowych danych, iść w parze z {direction} {outcome} tej samej nocy. To wzorzec wart obserwacji, nie przyczyna.",
"faint": "Więcej {behaviour} w nocy pokazuje w twoich danych co najwyżej słaby ślad {direction} {outcome} tej samej nocy. To za mało, by na tym polegać, i nigdy nie jest to przyczyna."
}
},
"noAnalysisYet": "Brak oceny.",
"assessmentPreparing": "Przygotowywanie oceny…",
"emptyTitle": "Jeszcze za mało danych",
"emptyDescription": "Insights pojawią się, gdy zarejestrujesz kilka pomiarów. Zacznij od wagi lub ciśnienia.",
"emptyAddMeasurement": "Zarejestruj pomiar",
"editMode": {
"done": "Gotowe",
"reset": "Przywróć",
"resetTitle": "Zresetować przegląd?",
"resetBody": "Kolejność sekcji i ukryte sekcje wracają do ustawień domyślnych. Twój układ nie jest nigdzie indziej zapisany.",
"resetConfirm": "Zresetuj przegląd",
"title": "Dostosuj przegląd",
"description": "Przeciągnij, aby zmienić kolejność, dotknij oka, aby pokazać lub ukryć.",
"dragHandle": "Przeciągnij, aby zmienić kolejność",
"show": "Pokaż",
"hide": "Ukryj",
"manageInSettings": "Zarządzaj chipami i stronami szczegółów w ustawieniach",
"groupSleep": "Sen",
"groupMood": "Nastrój",
"groupEvents": "Zdarzenia",
"gatedHint": "Pojawi się, gdy dane lub funkcja będą dostępne",
"allHiddenHint": "Wszystkie sekcje są ukryte. Pokaż co najmniej jedną, aby zobaczyć przegląd.",
"saveSuccess": "Przegląd zapisany",
"saveError": "Nie udało się zapisać przeglądu",
"resetSuccess": "Przegląd przywrócony do ustawień domyślnych",
"emptyTitle": "Wszystkie karty są ukryte",
"emptyDescription": "Ukryto wszystkie sekcje. Otwórz Dostosuj, aby je ponownie pokazać."
},
"bmiEmptyTitle": "Dodaj wzrost, aby obliczyć BMI",
"bmiEmptyDescription": "BMI wymaga twojego wzrostu. Zapisz go w Ustawieniach → Konto.",
"bmiEmptyAction": "Otwórz ustawienia konta",
"personalRecord": {
"badge": "PR",
"tooltip": "Rekord osobisty: {value} {unit} dnia {date}",
"benchmark": "Typowo w tym wieku: od {low} do {high} {unit} ({source})"
},
"loadError": "Nie udało się załadować analiz",
"heroPersonalBaseline": "Na podstawie ostatnich 90 dni",
"heroRegenerating": "Generowanie",
"regenerateAnalysis": "Uruchom ocenę ponownie",
"regenerateSuccess": "Ocena wygenerowana ponownie",
"narrativeTitle": "Przegląd",
"narrativeWeek": "Ten tydzień",
"narrativeMonth": "Ten miesiąc",
"narrativeUpdating": "Aktualizowanie…",
"heroFallbackSubtitle": "Codzienne spojrzenie na twoje trendy, prosto z liczb, które rejestrujesz.",
"heroGreetingMorning": "Dzień dobry",
"heroGreetingAfternoon": "Dzień dobry",
"heroGreetingEvening": "Dobry wieczór",
"heroActionAskCoach": "Zapytaj coacha",
"healthScore": {
"label": "Wynik zdrowia",
"band": {
"green": "W zakresie referencyjnym",
"yellow": "Niektóre filary wymagają uwagi",
"red": "Co najmniej jeden filar jest poza zakresem referencyjnym"
},
"insufficient": "Nic nie ma jeszcze wystarczająco świeżych danych, żeby to ocenić. Na początek wystarczy jeden obszar zdrowia, a wynik sam powie, na których obszarach się opiera.",
"basis": "Opiera się na {count} z {recommended} obszarów zdrowia.",
"compositionNotice": {
"item": "{pillar} ({reason})",
"left": "Nie liczy się już do wyniku: {pillars}.",
"joined": "Teraz liczy się do wyniku: {pillars}."
},
"anatomyToggle": "Jak powstaje ten wynik",
"notScored": "Jeszcze bez oceny ({count})",
"method": "Wynik to średnia o równych wagach z filarów, które się do niego liczą, w skali od 0 do 100. Każdy filar jest porównywany z opublikowanym zakresem referencyjnym, a najsłabszy filar może wyznaczyć ogólny zakres. Filar bez wystarczających aktualnych danych jest pomijany, a nie liczony jako zero. Zakresy referencyjne pochodzą z opublikowanych źródeł; to ty decydujesz, które filary się liczą, więc łączna liczba sama w sobie nie jest standardem klinicznym.",
"bandSetter": "Ogólny zakres wyznacza {pillar}",
"versionAndNoise": "Wersja metody {version}. Próg porównania tygodniowego: {noise} pkt.",
"methodVersion": "Wersja metody {version}.",
"configured": "Wybrane przez Ciebie filary decydują o tym wyniku.",
"none": "brak",
"delta": "{delta} względem poprzedniego porównywalnego okresu",
"deltaReason": {
"algorithm_changed": "Brak porównania, ponieważ zmieniła się metoda obliczeń.",
"config_changed": "Brak porównania, ponieważ zmieniono, co wlicza się do wyniku.",
"composition_changed": "Brak porównania, ponieważ zmieniły się uwzględnione filary.",
"first_eligibility_window": "Brak porównania, ponieważ to pierwszy kwalifikujący się okres.",
"below_noise_floor": "Zmiana mieści się w łącznej zmienności pomiarów.",
"no_previous_window": "Brak wcześniejszego porównywalnego okresu.",
"no_current_score": "Brak porównania, ponieważ bieżący okres nie spełnia warunków."
},
"restMode": "Tryb odpoczynku aktywny od {since}. Wynik służy jako kontekst i nie jest obniżany.",
"pillar": {
"bloodPressure": "Ciśnienie krwi",
"glycaemia": "Glikemia",
"activity": "Aktywność",
"sleep": "Sen",
"adiposity": "Otłuszczenie",
"wellbeing": "Samopoczucie",
"lipids": "Lipidy"
},
"observed": "Zaobserwowano: {value}",
"reference": "Zakres referencyjny: {value}",
"fastingObserved": "Glukoza na czczo: {value} {unit}",
"fastingReference": "Od {low} do {high} {unit} na czczo",
"personalReference": "Twój cel: {value}",
"bpBasisAbove": "Decyduje: {axis}, około {offset} mmHg powyżej swojej granicy {boundary} mmHg.",
"bpBasisBelowFloor": "Decyduje: {axis}, około {offset} mmHg poniżej granicy niskiego ciśnienia {boundary} mmHg.",
"bpBasisInBand": "Obie wartości są na poziomie swoich granic referencyjnych lub poniżej.",
"bpScale": "Przy granicy wynik to 85; 100 oznacza około 12 mmHg poniżej.",
"bpRepresentative": "Opiera się na średniej z ostatnich {days} dni, która mocniej waży nowsze pomiary, więc może nie odpowiadać żadnemu pojedynczemu pomiarowi.",
"source": "Źródło: {source}, stan na {date}",
"observedActivity": "{value} kroków dziennie",
"observedSleep": "{value} minut na noc",
"observedAdiposity": "Stosunek obwodu talii do wzrostu {value}",
"referenceActivity": "Korzyść stabilizuje się przy {high} krokach dziennie",
"referenceSleep": "Co najmniej {low} minut na noc; dłuższy sen nie obniża wyniku",
"referenceAdiposity": "Stosunek obwodu talii do wzrostu poniżej {high}",
"referenceHba1c": "HbA1c od {low} do {high}%",
"referenceDetail": "{label}: od {low} do {high} ({kind}, {source})",
"openBound": "otwarty",
"laboratoryReferenceSource": "Zakresy referencyjne laboratorium",
"personalTargetSource": "Osobisty cel",
"referenceKind": {
"clinical": "Próg kliniczny",
"population": "Percentyl populacji",
"guideline": "Zakres wytycznych"
},
"reason": {
"readFailed": "Nie udało się wczytać danych",
"notTracked": "Brak pomiarów",
"missingProfile": "Brakuje wieku lub profilu referencyjnego",
"missingHeight": "Brakuje wzrostu",
"incompletePanel": "Potrzebny jest aktualny pełny panel z zakresami referencyjnymi",
"crisis": "Zamiast wyniku wyświetlane są wskazówki bezpieczeństwa",
"insufficientHistory": "Za mało aktualnych danych spełniających kryteria",
"unavailable": "Ten filar obecnie nie spełnia kryteriów"
},
"tension": "Sygnały gotowości są rozbieżne. Sprzyjające: {positive}. Obciążone: {negative}.",
"returnToBand": "{metric} od {days} dni ponownie mieści się w typowym zakresie.",
"weightGoal": {
"title": "Osobisty cel wagowy",
"value": "Obecnie {current} {unit}. Cel od {min} do {max} {unit}. Odległość od celu: {distance} {unit}.",
"delta": "Odległość od celu zmieniła się o {delta} {unit} od poprzedniego pomiaru.",
"noDelta": "Brak wcześniejszego pomiaru masy ciała do porównania.",
"no_personal_goal": "Ustaw osobisty cel wagowy, aby zobaczyć tutaj postęp.",
"weight_not_tracked": "Zapisz pomiar masy ciała, aby zobaczyć postęp w kierunku celu.",
"read_failed": "Nie udało się wczytać danych masy ciała. Spróbuj ponownie.",
"notScored": "Postęp celu wagowego jest osobistym kontekstem i nie wpływa na wynik zdrowia."
},
"configureLink": "Wybierz, co liczy się do Twojego wyniku",
"coverage": {
"recommendedMet": "Pokrywa trzy obszary zalecane przez wynik",
"areas": "{present} z {required} obszarów zdrowia"
},
"historyLink": "Przebieg"
},
"dailyBriefing": {
"title": "Briefing dnia",
"keyFindingsTitle": "Kluczowe wnioski",
"signalsTitle": "Sygnały dnia",
"emptyTitle": "Jeszcze brak briefingu",
"emptyDescription": "Wygeneruj dzisiejszy briefing, aby zobaczyć podsumowanie trendów.",
"emptyAction": "Wygeneruj briefing",
"loadingLabel": "Przygotowanie briefingu",
"refreshFailedHint": "Nie udało się odświeżyć briefingu, pokazujemy poprzedni.",
"retryAction": "Spróbuj ponownie",
"failedTitle": "Nie udało się wygenerować briefingu",
"failedDescription": "Dostawca AI przekroczył limit czasu lub zwrócił błąd. Spróbuj ponownie albo zwiększ limit czasu odpowiedzi w ustawieniach AI dla wolnego modelu lokalnego.",
"failedDescriptionTimeout": "Żądanie AI przekroczyło limit czasu, zanim briefing był gotowy. W przypadku wolnego modelu lokalnego zwiększ limit czasu odpowiedzi w Ustawieniach i spróbuj ponownie.",
"failedDescriptionProvider": "Dostawca AI odrzucił żądanie. Sprawdź dostawcę i klucz API w ustawieniach AI, a następnie spróbuj ponownie.",
"failedDescriptionRateLimit": "Dostawca AI ogranicza teraz liczbę żądań. Spróbuj ponownie za chwilę.",
"omittedTitle": "Briefing wstrzymany",
"omittedUngroundedDescription": "Wygenerowany briefing zawierał liczbę, której nie udało się zweryfikować na podstawie Twoich danych, więc nie został wyświetlony. Spróbuj ponownie."
},
"trendsRow": {
"title": "Trendy",
"subtitle": "Ostatnie 30 dni w skrócie",
"caption": {
"bp": "Wartości skurczowe i rozkurczowe z ostatnich 30 dni.",
"weight": "Trend masy ciała z ostatnich 30 dni.",
"pulse": "Tętno spoczynkowe z ostatnich 30 dni.",
"mood": "Dzienna ocena nastroju z ostatnich 30 dni.",
"sleep": "Długość snu nocnego z ostatnich 30 dni.",
"steps": "Dzienna liczba kroków z ostatnich 30 dni.",
"hrv": "Zmienność rytmu serca z ostatnich 30 dni.",
"resting_hr": "Spoczynkowe tętno z ostatnich 30 dni.",
"active_energy": "Aktywnie spalona energia z ostatnich 30 dni.",
"flights": "Pokonane piętra z ostatnich 30 dni.",
"distance": "Dystans marszu i biegu z ostatnich 30 dni.",
"vo2_max": "VO₂ max z ostatnich 30 dni.",
"body_temp": "Temperatura ciała z ostatnich 30 dni."
},
"viewDetail": "Zobacz szczegóły: {metric}"
},
"vo2Max": {
"cardioLinkTitle": "Wydolność krążeniowa (VO₂ max)",
"cardioLinkBody": "VO₂ max to główna miara wydolności tlenowej. Pełny wykres i ocenę znajdziesz na osobnej stronie.",
"cardioLinkCta": "Otwórz wydolność krążeniową"
},
"trendAnnotation": {
"emptyBp": "Potrzeba więcej danych, aby skomentować ten trend.",
"emptyWeight": "Potrzeba więcej danych, aby skomentować ten trend.",
"emptyMood": "Potrzeba więcej danych, aby skomentować ten trend.",
"confidenceHigh": "Wysoka pewność",
"confidenceModerate": "Średnia pewność",
"confidenceLow": "Niska pewność",
"pendingLabel": "Komentarz trendu jest generowany"
},
"correlationRow": {
"title": "Korelacje",
"experimentCta": "Uruchom 7-dniowy eksperyment",
"experimentTooltip": "Wkrótce",
"emptyTitle": "Potrzeba więcej danych, aby pokazać tę korelację",
"sourceChip": "na podstawie {n} sparowanych pomiarów ({window})",
"sourceWindowLast30": "Ostatnie 30 dni",
"confidenceHigh": "Wysoka pewność",
"confidenceModerate": "Średnia pewność",
"confidenceLow": "Niska pewność",
"card": {
"bpComplianceTitle": "RR × przestrzeganie leków",
"bpComplianceSubtitle": "Dzienne skurczowe wobec % przestrzegania",
"moodPulseTitle": "Nastrój × tętno spoczynkowe",
"moodPulseSubtitle": "Nastrój i tętno spoczynkowe w tym samym dniu",
"weightWeekdayTitle": "Waga × dzień tygodnia",
"weightWeekdaySubtitle": "Waga pogrupowana wg dnia tygodnia"
}
},
"coach": {
"refusalOutOfScope": "Mogę pomóc tylko w sprawach danych zdrowotnych z twojego logu: pomiarów, leków, nastroju, trendów. Pytań spoza tego zakresu nie podejmuję.",
"refusalInjection": "Twoja wiadomość zawiera instrukcje, które próbują nadpisać moje wytyczne. Jestem coachem HealthLog i podsumowuję wyłącznie twoje własne dane zdrowotne. Przeformułuj pytanie w tych ramach.",
"errorBudget": "Osiągnięto dzienny limit coacha. Limit resetuje się o północy w Twojej strefie czasowej.",
"errorProvider": "Coach nie mógł teraz skontaktować się z dostawcą analizy. Spróbuj za chwilę.",
"errorReasoningOnly": "Model tylko rozumował i nie napisał odpowiedzi. Spróbuj ponownie albo wybierz inny model w ustawieniach AI.",
"errorDemo": "W wersji demo Coach nie odpowiada.",
"errorNoProvider": "Coach czyta Twoje zapisane dane zdrowotne i odpowiada na pytania o nie (to nie porada medyczna). HealthLog potrzebuje do tego dostawcy AI: połącz własny klucz lub model lokalny.",
"errorNoProviderAction": "Połącz dostawcę AI",
"errorNetwork": "Brak połączenia z Internetem. Spróbuj ponownie, gdy wrócisz online.",
"prefsSaveError": "Nie udało się zapisać ustawień Coacha. Spróbuj ponownie.",
"errorCredentialExpired": "Połączenie z dostawcą AI wygasło. Połącz je ponownie w Ustawieniach, aby Coach działał dalej.",
"tagline": "Osobisty coach zdrowia, oparty na twoich danych.",
"newChat": "Nowa rozmowa",
"docScope": {
"badge": "Dokument",
"chattingAbout": "Rozmowa o: {title}",
"chattingAboutMore": "Rozmowa o: {titles} i {count} więcej",
"notIndexedHint": "Najpierw wczytaj ten dokument z pomocą AI w archiwum, aby Coach mógł na jego temat odpowiadać."
},
"actionsMenu": "Działania",
"maximizeAriaLabel": "Otwórz na pełnej stronie",
"minimizeAriaLabel": "Powrót do panelu",
"send": "Wyślij",
"stop": "Zatrzymaj",
"thinking": "Myślę…",
"unverifiedFiguresNotice": "Niektórych liczb nie udało się zweryfikować z Twoimi danymi, więc je pominięto.",
"composerPlaceholder": "Zapytaj mnie …",
"nudgeBubbleLabel": "Nowa wiadomość od trenera: otwórz czat",
"fabLabel": "Otwórz trenera",
"readAloud": "Czytaj na głos",
"readAloudStop": "Zatrzymaj czytanie",
"messageTimeLabel": "Wiadomość wysłana {time}",
"copyMessage": "Kopiuj",
"copyMessageError": "Nie udało się skopiować",
"regenerate": "Spróbuj ponownie",
"selfContextAdopt": {
"offer": "Dodać tę odpowiedź do Twoich informacji o sobie?",
"confirm": "Dodaj",
"dismiss": "Odrzuć",
"done": "Dodano do informacji o sobie",
"duplicate": "Już znajduje się w informacjach o sobie",
"failed": "Nie udało się dodać. Spróbuj ponownie."
},
"rememberMessage": {
"action": "Zapamiętaj",
"failed": "Nie udało się zapisać. Spróbuj ponownie.",
"alreadyKept": "Coach już to pamięta."
},
"guided": {
"offerTitle": "Coach ma {count} pytania do Ciebie",
"offerTitleOne": "Coach ma pytanie do Ciebie",
"offerBody": "Krótkie odpowiedzi doprecyzują Twoje informacje o sobie: jedno pytanie po drugim, tutaj na czacie.",
"offerStart": "Odpowiedz teraz",
"offerLater": "Później",
"offerDismiss": "Nie pytaj więcej",
"dismissError": "Nie udało się odrzucić pytań. Spróbuj ponownie.",
"progress": "Pytanie {current} z {total}",
"skip": "Pomiń",
"later": "Później",
"dismissRemaining": "Nie pytaj więcej",
"answerPlaceholder": "Twoja odpowiedź…",
"summaryTitle": "Gotowe, dzięki za odpowiedzi!",
"summaryAnswered": "odpowiedziano na {answered} z {total}",
"summaryAdopted": "{adopted} dodano do informacji o sobie",
"summaryAdoptedNone": "nie dodano nic nowego do informacji o sobie",
"summaryLink": "Zobacz informacje o sobie"
},
"threadEmpty": "Zapytaj o swoje trendy, leki lub pomiary, aby zacząć.",
"historyTitle": "Rozmowy",
"historySearchPlaceholder": "Szukaj w rozmowach…",
"historyEmpty": "Twoje rozmowy pojawią się tutaj. Zadaj pytanie, aby zacząć.",
"historyDeleteAria": "Usuń rozmowę",
"historyDeleted": "Rozmowa usunięta",
"historyDeleteFailed": "Nie udało się usunąć rozmowy.",
"rename": {
"action": "Zmień nazwę rozmowy",
"input": "Tytuł rozmowy",
"save": "Zapisz tytuł",
"cancel": "Anuluj zmianę nazwy",
"error": "Nie udało się zapisać tytułu rozmowy."
},
"historySearchEmpty": "Żadna rozmowa nie pasuje do wyszukiwania.",
"historyLoadingMore": "Wczytywanie…",
"sourcesTitle": "Do czego mam dostęp",
"sourcesFresh": "Aktualne",
"sourcesStale": "Nieaktualne",
"sourcesFooter": "Coach czyta tylko dane, które podłączyłeś.",
"metric": {
"bp": "Ciśnienie krwi",
"weight": "Waga",
"pulse": "Tętno",
"mood": "Nastrój",
"compliance": "Przestrzeganie zaleceń",
"general": "Ogólne",
"hrv": "HRV",
"sleep": "Sen",
"resting_hr": "Tętno spoczynkowe",
"steps": "Kroki",
"active_energy": "Aktywna energia",
"flights": "Piętra",
"distance": "Dystans",
"vo2_max": "VO₂ max",
"body_temp": "Temperatura ciała",
"medications": "Leki",
"anthropometrics": "Profil (wzrost, wiek, płeć)",
"walking_hr": "Tętno podczas chodzenia",
"respiratory_rate": "Częstość oddechów",
"spo2": "Saturacja krwi",
"pulse_wave_velocity": "Prędkość fali tętna",
"vascular_age": "Wiek naczyniowy",
"body_fat": "Tkanka tłuszczowa",
"fat_mass": "Masa tłuszczowa",
"fat_free_mass": "Masa beztłuszczowa",
"muscle_mass": "Masa mięśniowa",
"lean_body_mass": "Beztłuszczowa masa ciała",
"bone_mass": "Masa kostna",
"total_body_water": "Woda w organizmie",
"bmi": "BMI",
"visceral_fat": "Tłuszcz trzewny",
"glucose": "Glukoza",
"walking_steadiness": "Stabilność chodu",
"walking_asymmetry": "Asymetria chodu",
"walking_double_support": "Czas podwójnego podparcia",
"walking_step_length": "Długość kroku",
"walking_speed": "Prędkość chodu",
"audio_env": "Dźwięk otoczenia",
"audio_headphone": "Dźwięk słuchawek",
"audio_event": "Zdarzenia głośnego dźwięku",
"daylight": "Czas w świetle dziennym",
"skin_temp": "Temperatura skóry",
"workouts": "Treningi"
},
"settingsAriaLabel": "Ustawienia coacha",
"settingsTitle": "Ustawienia coacha",
"settingsDescription": "Ustaw, jak coach do ciebie mówi.",
"settingsToneLabel": "Ton",
"settingsToneWarm": "Ciepły",
"settingsToneNeutral": "Neutralny",
"settingsToneConcise": "Zwięzły",
"settingsVerbosityLabel": "Długość odpowiedzi",
"settingsVerbosityBrief": "Krótka",
"settingsVerbosityDefault": "Standardowa",
"settingsVerbosityDetailed": "Szczegółowa",
"settingsVerbosityConciseHint": "Zwięzły ton i tak skraca odpowiedzi, więc szczegółowość pozostaje ustawiona na „Krótko”, dopóki jest aktywny.",
"settingsSourcesSummary": "Coach widzi {count} z {total} obszarów danych i patrzy {window} wstecz.",
"settingsSourcesSummaryAll": "Coach widzi {count} z {total} obszarów danych i całą historię.",
"settingsSourcesPointerLink": "Otwórz ustawienia coacha",
"settingsExcludeLabel": "Wyklucz metryki",
"settingsExcludeHint": "Coach nie zobaczy danych wybranych metryk.",
"settingsContextLabel": "Wysyłaj kontekst",
"settingsContextHint": "Opcjonalne bloki, na których coach może się opierać. Wyłączenie pominie blok w każdej odpowiedzi.",
"settingsEvidenceLabel": "Pokazuj dowody domyślnie",
"settingsEvidenceHint": "Automatycznie otwiera pole dowodów pod każdą odpowiedzią.",
"settingsDefaultWindowLabel": "Domyślny okres analizy",
"settingsDefaultWindowHint": "Coach czyta ten okres na rozmowę, chyba że wybierzesz inny w nagłówku panelu.",
"settingsSave": "Zapisz",
"settingsSaved": "Zapisano",
"settingsCancel": "Anuluj",
"dailyLimitTitle": "Osiągnięto dzienny limit",
"dailyLimitBody": "Osiągnięto dzienny limit. Limit resetuje się o północy w Twojej strefie czasowej.",
"providerRateLimitTitle": "Dostawca z ograniczeniem",
"providerRateLimitBody": "Dostawca jest tymczasowo przeciążony; reset za ~5 min.",
"cluster": {
"cardio": {
"label": "Sercowo-naczyniowe",
"hint": "Ciśnienie, tętno, HRV, tętno spoczynkowe i marszowe"
},
"body": {
"label": "Skład ciała",
"hint": "Waga, tłuszcz, mięśnie i BMI"
},
"activity": {
"label": "Aktywność",
"hint": "Kroki, energia, dystans i VO₂ max"
},
"workouts": {
"label": "Treningi",
"hint": "Biegi, przejażdżki i sesje"
},
"sleep": {
"label": "Sen",
"hint": "Czas trwania i fazy"
},
"mood": {
"label": "Nastrój",
"hint": "Codzienne wpisy nastroju"
},
"glucose": {
"label": "Glukoza",
"hint": "Pomiary na czczo i poposiłkowe"
},
"medication": {
"label": "Leki",
"hint": "Przestrzeganie i kontekst GLP-1"
},
"mobility": {
"label": "Mobilność i chód",
"hint": "Stabilność, asymetria i chód"
},
"environment": {
"label": "Środowisko",
"hint": "Hałas, światło dzienne i temperatura skóry"
}
},
"settingsClustersLabel": "Dane widziane przez Coacha",
"settingsClustersHint": "Wybierz, które grupy danych Coach może czytać. Więcej danych to bogatsze odpowiedzi i większy prompt.",
"settingsClusterNoData": "Brak danych",
"sourcesMemberCountOne": "1 wskaźnik",
"sourcesMemberCountFew": "{count} wskaźniki",
"sourcesMemberCountOther": "{count} wskaźników",
"lookback": {
"label": "Jak daleko wstecz może patrzeć Coach",
"option": {
"last7days": "{days} dni",
"last30days": "{days} dni",
"last90days": "{days} dni",
"lastYear": "{months} miesięcy",
"allTime": "{months} miesięcy szczegółowo, wyniki badań dłużej"
},
"detailDays": "Coach nie czyta niczego starszego niż {days} dni, w żadnej odpowiedzi.",
"detailMonths": "Coach nie czyta niczego starszego niż {months} miesięcy, w żadnej odpowiedzi.",
"detailAll": "Bez limitu Coach czyta {dailyMonths} miesięcy pomiarów z dokładnością do dnia, a starsze pomiary jako wartości miesięczne do {years} lat wstecz. Z wyników badań czyta ostatnią wartość ostatnio mierzonych markerów, a dla markera, o który pytasz, także {labRecent} poprzednich wyników; starsze są podsumowane rocznie do {labYears} lat wstecz, a wcześniejsze lata tylko zliczane.",
"note": "Twój profil, obecne leki, trwająca choroba i nadchodzące wizyty pozostają widoczne; podsumowania wymagające dłuższej historii są skracane lub pomijane. Odpowiedzi, których Coach udzielił wcześniej w starszych rozmowach, mogą nadal przytaczać starsze wartości."
},
"showConversations": "Pokaż rozmowy",
"hideConversations": "Ukryj rozmowy",
"heroGreeting": "Zapytaj mnie o cokolwiek na temat twoich danych",
"heroSubline": "Zapytaj o swoje trendy, leki lub pomiary.",
"thinkingDuration": "Myślał przez {seconds}s",
"thinkingExpandAria": "Pokaż, co Coach wziął pod uwagę",
"thinkingDetail": "Odpowiedź na podstawie Twojego podsumowania zdrowia.",
"tokensUsed": "{count} tokenów",
"askAboutThis": "Zapytaj trenera o to",
"readStrip": {
"label": "Typowy zakres",
"baselineWithin": "Twój zwykły zakres to {low}–{high} {unit}; dzisiejsza wartość {value} mieści się w nim.",
"baselineAbove": "Twój zwykły zakres to {low}–{high} {unit}; dzisiejsza wartość {value} jest powyżej niego.",
"baselineBelow": "Twój zwykły zakres to {low}–{high} {unit}; dzisiejsza wartość {value} jest poniżej niego.",
"sameHoursWithin": "Do tej pory dnia zwykle masz {low}–{high} {unit}; dziś jak dotąd {value}, czyli w zakresie.",
"sameHoursAbove": "Do tej pory dnia zwykle masz {low}–{high} {unit}; dziś jak dotąd {value}, czyli powyżej.",
"sameHoursBelow": "Do tej pory dnia zwykle masz {low}–{high} {unit}; dziś jak dotąd {value}, czyli poniżej.",
"steadyWithin": "Twoje pomiary zwykle wynoszą {low} {unit}; dzisiejsza wartość {value} jest taka sama.",
"steadyAbove": "Twoje pomiary zwykle wynoszą {low} {unit}; dzisiejsza wartość {value} jest wyższa.",
"steadyBelow": "Twoje pomiary zwykle wynoszą {low} {unit}; dzisiejsza wartość {value} jest niższa.",
"latestWithin": "Twój zwykły zakres to {low}–{high} {unit}; ostatni pomiar, z {date}, wyniósł {value} i mieścił się w nim.",
"latestAbove": "Twój zwykły zakres to {low}–{high} {unit}; ostatni pomiar, z {date}, wyniósł {value} i był powyżej niego.",
"latestBelow": "Twój zwykły zakres to {low}–{high} {unit}; ostatni pomiar, z {date}, wyniósł {value} i był poniżej niego.",
"steadyLatestWithin": "Twoje pomiary zwykle wynoszą {low} {unit}; ostatni pomiar, z {date}, wyniósł {value} i był taki sam.",
"steadyLatestAbove": "Twoje pomiary zwykle wynoszą {low} {unit}; ostatni pomiar, z {date}, wyniósł {value} i był wyższy.",
"steadyLatestBelow": "Twoje pomiary zwykle wynoszą {low} {unit}; ostatni pomiar, z {date}, wyniósł {value} i był niższy.",
"insufficient": "Wciąż poznaję twój zwykły zakres. Rejestruj jeszcze przez kilka dni.",
"driver": "{note}",
"loadError": "Nie udało się załadować twojego typowego zakresu."
},
"scope": {
"prefix": "Coach jest już przy {metric}"
},
"settings": "Ustawienia",
"history": {
"groupToday": "Dziś",
"groupYesterday": "Wczoraj",
"groupThisWeek": "W tym tygodniu",
"groupEarlier": "Wcześniej"
},
"seed": {
"bloodPressure": "Przejdź ze mną przez trend mojego ciśnienia krwi z ostatnich 30 dni. Czy jest coś, na co powinienem zwrócić uwagę?",
"weight": "Jak zmieniała się ostatnio moja waga i czy ten kierunek wymaga reakcji?",
"bmi": "Co mówi mi mój trend BMI i jak powinienem go odczytywać?",
"pulse": "Przejdź ze mną przez moje odczyty tętna. Czy coś odbiega od normy?",
"restingHr": "Jak zmieniało się moje tętno spoczynkowe i co mówi o mojej kondycji?",
"hrv": "Co moja zmienność rytmu serca mówi mi o regeneracji i stresie w ostatnim czasie?",
"sleep": "Przejdź ze mną przez mój ostatni sen: długość, regularność i wszystko, co warto zmienić.",
"mood": "Jakie wzorce widzisz w moim nastroju w ciągu ostatnich kilku tygodni?",
"medications": "Jak wygląda moje przestrzeganie zaleceń lekowych i czy pokrywa się z tym, jak się czułem?",
"steps": "Jak aktywny byłem ostatnio na podstawie moich kroków i jak wypada to na tle zdrowego punktu odniesienia?",
"activeEnergy": "Co mój trend aktywnej energii mówi o moim poziomie aktywności w ostatnim czasie?",
"cardioFitness": "Co oznacza trend mojej wydolności krążeniowo-oddechowej (VO₂ max) i jak skierować go we właściwą stronę?",
"bloodGlucose": "Przejdź ze mną przez moje ostatnie odczyty glukozy. Czy mieszczą się w zdrowym zakresie?",
"oxygenSaturation": "Co mówi mi mój trend saturacji krwi tlenem (SpO₂)?",
"respiratoryRate": "Co mój trend częstości oddechów mówi o moim zdrowiu?",
"workouts": "Przejdź ze mną przez moje ostatnie treningi: obciążenie, częstotliwość i jak regeneruję się między nimi.",
"recoveryPage": "Dlaczego moja regeneracja jest teraz na takim poziomie i co na nią wpływa?",
"briefing": "Przejdź ze mną przez dzisiejszy briefing. Na czym powinienem się skupić i czy jest coś, co warto podjąć?",
"healthScore": "Dlaczego mój wynik zdrowia wynosi {score} na 100 i co poprawiłoby go najbardziej?",
"periodWeek": "Przejdź ze mną przez to, jak minął mój ostatni tydzień w moich wskaźnikach zdrowia. Co się wyróżnia?",
"periodMonth": "Przejdź ze mną przez to, jak minął mój ostatni miesiąc w moich wskaźnikach zdrowia. Co się wyróżnia?",
"correlationBpCompliance": "Jak moje przestrzeganie zaleceń lekowych wiąże się z moim ciśnieniem krwi? Wyjaśnij mi, co ta korelacja oznacza dla mnie.",
"correlationMoodPulse": "Czy istnieje rzeczywisty związek między moim nastrojem a tętnem? Pomóż mi odczytać tę korelację.",
"correlationWeightWeekday": "Czy moja waga podlega cotygodniowemu wzorcowi? Co mówi mi ta korelacja według dnia tygodnia?",
"recommendation": "Powiedz mi więcej o tej rekomendacji: \"{text}\". Dlaczego mnie dotyczy i co powinienem z nią zrobić?"
},
"assessmentPrompt": "Wyjaśnij mi moją ocenę {metric}: co oznacza i co powinienem z tym zrobić?",
"attach": {
"menuChooseFromDocuments": "Wybierz z dokumentów",
"menuUploadNew": "Prześlij nowy dokument",
"trigger": "Załącz dokumenty",
"pickerTitle": "Załącz dokumenty",
"pickerDescription": "Coach czyta tylko załączone dokumenty, a nie Twoje dane zdrowotne.",
"pickerSearchPlaceholder": "Szukaj dokumentów…",
"pickerEmpty": "Nie masz jeszcze dokumentów w archiwum.",
"pickerNotIndexed": "Jeszcze nie zindeksowano",
"pickerCap": "Możesz załączyć jeszcze do {max}.",
"pickerConfirm": "Załącz ({count})",
"pillRemove": "Usuń {title}",
"indexing": "Indeksowanie…",
"indexingHint": "Dokument jest jeszcze indeksowany. Wyślesz, gdy będzie gotowy.",
"fencedHint": "Ta rozmowa działa bez dostępu do Twoich danych zdrowotnych: coach czyta tylko załączone dokumenty.",
"documentsAttachedOne": "1 załączony dokument",
"documentsAttachedOther": "Załączone dokumenty: {count}",
"railBadge": "Odizolowany czat dokumentu",
"uploadError": "Przesyłanie nie powiodło się. Spróbuj ponownie.",
"notFoundError": "Ten link do dokumentu jest już nieprawidłowy, więc zamiast tego rozpoczynamy zwykły czat."
},
"interrupted": {
"note": "Ta odpowiedź została przerwana przed ukończeniem.",
"retry": "Zapytaj ponownie"
},
"historyReadOnlyNote": "Coach jest teraz niedostępny, ale nadal możesz czytać i usuwać swoje rozmowy.",
"transcriptYou": "Ty",
"transcriptCoach": "Coach",
"errorConsent": "Coach potrzebuje Twojej zgody na AI, zanim odpowie. Możesz ją wyrazić w Ustawieniach, AI.",
"errorNotPermitted": "Coach nie jest dostępny w kartotece, którą ktoś Ci udostępnił.",
"errorUnavailable": "Coach nie mógł teraz sprawdzić swoich ustawień. Spróbuj ponownie za chwilę.",
"errorOperatorOff": "AI jest wyłączone na tym serwerze, więc Coach nie może odpowiedzieć.",
"errorCoachOff": "Coach jest wyłączony. Możesz go ponownie włączyć w Ustawieniach, Moduły.",
"frame": {
"showPanel": "Pokaż rozmowy",
"hidePanel": "Ukryj rozmowy",
"panelDescription": "Twoje rozmowy z coachem, od najnowszej.",
"rowActions": "Działania dla {title}",
"rename": "Zmień nazwę",
"delete": "Usuń",
"modelSection": "Model",
"provider": "Odpowiada przez",
"modelManaged": "Model tego dostawcy ustawisz w ustawieniach AI.",
"noProvider": "Brak dostępnego dostawcy",
"allSettings": "Wszystkie ustawienia AI",
"operatorCodex": "ChatGPT (udostępniony przez operatora)",
"changeModel": "Zmień w Ustawieniach > AI",
"saving": "Zapisywanie…",
"saveFailed": "Nie udało się zapisać zmiany.",
"providerNotActive": "{provider} nie mógł przejąć odpowiedzi: brak działającego logowania lub klucza. Skonfiguruj go w ustawieniach AI.",
"operatorManaged": "Tym połączeniem zarządza operator Twojego serwera. Gdy skonfigurujesz własnego dostawcę, to on odpowie jako pierwszy."
},
"answer": {
"scrollToBottom": "Przejdź do najnowszej wiadomości",
"rememberDone": "Zapamiętano",
"timeYesterday": "wczoraj {time}",
"timeEarlier": "{date}, {time}",
"info": "Szczegóły odpowiedzi",
"infoModel": "Model: {model}"
},
"activity": {
"thinking": "Myśli…",
"fetching": "Pobiera {domain}, {window}…",
"digestOne": "Podsumowuje {count} pomiar…",
"digestFew": "Podsumowuje {count} pomiary…",
"digestOther": "Podsumowuje {count} pomiarów…",
"digestDoneOne": "{count} pomiar z: {areas}",
"digestDoneFew": "{count} pomiary z: {areas}",
"digestDoneOther": "{count} pomiarów z: {areas}",
"areasOne": "{count} obszar",
"areasFew": "{count} obszary",
"areasOther": "{count} obszarów",
"memoryOne": "Pamięta {count} rzecz, którą mu powiedziałeś",
"memoryFew": "Pamięta {count} rzeczy, które mu powiedziałeś",
"memoryOther": "Pamięta {count} rzeczy, które mu powiedziałeś",
"remember": "Zapamiętuje coś…",
"plan": "Przygotowuje plan…",
"asking": "Dopytuje…",
"answer": "Pisze odpowiedź…",
"stop": {
"budget": "Budżet wyczerpany, odpowiada na podstawie tego, co ma",
"time": "Limit czasu osiągnięty, odpowiada na podstawie tego, co ma",
"cap": "Wiele kroków, teraz podsumowuje",
"noProgress": "Brak nowych danych, podsumowuje"
},
"thoughtProcessOne": "Tok myślenia ({count} krok)",
"thoughtProcessFew": "Tok myślenia ({count} kroki)",
"thoughtProcessOther": "Tok myślenia ({count} kroków)",
"awaitingAnswer": "Potrzebna odpowiedź"
},
"memory": {
"saved": "Zapamiętane: {fact}",
"undo": "Cofnij",
"accept": "Tak, zapamiętaj",
"decline": "Nie",
"confirmed": "Jasne, zapamiętam.",
"declined": "Dobrze, nie zapiszę tego."
},
"plan": {
"accept": "Przyjmij ten plan",
"decline": "Nie teraz",
"confirmed": "Zanotowane. Wrócimy do tego razem za {days} dni.",
"declined": "Dobrze, nie teraz."
},
"assumption": {
"line": "Założenie: {value}",
"change": "Zmień"
},
"suggestedReplies": {
"groupLabel": "Proponowane odpowiedzi"
},
"chart": {
"compare": {
"periods": "{a} wobec {b}"
}
},
"reasoning": {
"label": "Głębokość namysłu",
"hint": "Głębszy namysł oznacza dokładniejsze odpowiedzi i trochę dłuższe czekanie.",
"off": "Wyłączone",
"minimal": "Minimalna",
"low": "Niska",
"medium": "Średnia",
"high": "Wysoka",
"capped": "(ograniczone przez administratora)",
"disabled": "Administrator wyłączył głębszy namysł."
},
"memoryLink": "Pamięć ({count})",
"newConversation": "Nowa rozmowa"
},
"relativeJustNow": "przed chwilą",
"relativeMinutesAgoOne": "{count} minutę temu",
"relativeMinutesAgoOther": "{count} minut temu",
"relativeMinutesAgoFew": "{count} minuty temu",
"relativeHoursAgoOne": "{count} godzinę temu",
"relativeHoursAgoOther": "{count} godzin temu",
"relativeHoursAgoFew": "{count} godziny temu",
"relativeDaysAgoOne": "{count} dzień temu",
"relativeDaysAgoOther": "{count} dni temu",
"relativeDaysAgoFew": "{count} dni temu",
"navOverview": "Przegląd",
"navCatalog": "Wszystkie metryki",
"navBloodPressure": "Ciśnienie krwi",
"navWeight": "Waga",
"navPulse": "Tętno",
"navMood": "Nastrój",
"navMedication": "Lek",
"navNutrients": "Składniki odżywcze",
"navBmi": "BMI",
"navSleep": "Sen",
"navHrv": "HRV",
"navRestingHr": "Tętno spoczynkowe",
"navOxygenSaturation": "Tlen",
"navBodyTemperature": "Temperatura",
"navSteps": "Kroki",
"navActiveEnergy": "Energia czynna",
"navAriaLabel": "Przejdź do sekcji",
"pillScrollLeft": "Przewiń karty w lewo",
"pillScrollRight": "Przewiń karty w prawo",
"tabStrip": {
"vitalsParent": {
"label": "Witalne",
"header": "Parametry witalne"
},
"bodyParent": {
"label": "Ciało",
"header": "Skład ciała"
},
"activityParent": {
"label": "Aktywność",
"header": "Aktywność i mobilność"
},
"heartParent": {
"label": "Serce",
"header": "Zdrowie serca"
},
"hearingParent": {
"label": "Słuch",
"header": "Słuch i ekspozycja na dźwięk"
},
"environmentParent": {
"label": "Środowisko",
"header": "Środowisko"
},
"metabolicParent": {
"label": "Metaboliczne",
"header": "Metaboliczne"
}
},
"hrv": {
"title": "HRV",
"description": "Zmienność rytmu serca w czasie: sygnał regeneracji układu nerwowego, rejestrowany nocą przez Apple Watch i inne zgodne wearable.",
"chartTitle": "Zmienność rytmu serca",
"emptyState": {
"title": "Brak wartości HRV",
"description": "Wartości HRV pojawią się tutaj, gdy Apple Watch (lub zgodne urządzenie Withings) zsynchronizuje pomiary nocne."
}
},
"restingHr": {
"title": "Tętno spoczynkowe",
"description": "Dzienna linia bazowa rytmu serca, różna od tętna punktowego na stronie Pulse. Apple Zdrowie podaje jedną wartość na dobę.",
"chartTitle": "Tętno spoczynkowe",
"emptyState": {
"title": "Brak tętna spoczynkowego",
"description": "Tętno spoczynkowe pojawi się, gdy Apple Watch lub zgodne urządzenie Withings spędzi spokojny dzień na nadgarstku."
},
"coachPrefill": "Nie zarejestrowałem jeszcze tętna spoczynkowego. Dlaczego dzienna wartość spoczynkowa różni się od pojedynczego pomiaru tętna i jak ją poprawić?"
},
"oxygenSaturation": {
"title": "Saturacja tlenu",
"description": "Tlen we krwi (SpO₂): kliniczny zakres normy 95–100 %, ze strefami docelowymi zacienionymi na wykresie.",
"chartTitle": "Saturacja tlenu",
"emptyState": {
"title": "Brak próbek SpO₂",
"description": "Próbki SpO₂ trafią tutaj, gdy zgodne wearable (Apple Watch, Withings ScanWatch) wykona pomiar."
}
},
"bodyTemperature": {
"title": "Temperatura ciała",
"description": "Trend temperatury rdzenia ciała w stopniach Celsjusza. Temperatura skóry z Withings działa na osobnej metryce.",
"chartTitle": "Temperatura ciała",
"emptyState": {
"title": "Brak temperatury ciała",
"description": "Zarejestruj pomiar lub pozwól wearable zsynchronizować jeden, a trend pojawi się tutaj.",
"cta": "Zarejestruj temperaturę ciała"
}
},
"steps": {
"title": "Kroki",
"description": "Dzienna liczba kroków: jeden wiersz na dobę, z Apple Zdrowie lub podłączonego urządzenia aktywności.",
"chartTitle": "Kroki dziennie",
"emptyState": {
"title": "Brak danych o krokach",
"description": "Dzienne sumy kroków pojawią się tutaj, gdy Apple Zdrowie lub urządzenie aktywności zsynchronizuje pełny dzień."
}
},
"activeEnergy": {
"title": "Energia czynna",
"description": "Dzienna suma energii czynnej w kilokaloriach: jeden wiersz na dobę, z Apple Zdrowie lub aktywności Withings.",
"chartTitle": "Energia czynna",
"emptyState": {
"title": "Brak danych o energii czynnej",
"description": "Sumy energii czynnej pojawią się tutaj, gdy Apple Zdrowie lub urządzenie Withings zsynchronizuje pełny dzień."
}
},
"subPage": {
"loadError": "Nie udało się teraz wczytać tej metryki.",
"blutdruckDescription": "Twój przebieg skurczowego/rozkurczowego z zakresami docelowymi dopasowanymi do wieku i oceną tekstową.",
"gewichtDescription": "Przebieg wagi na tle zdrowego pasma wyliczonego z twojego wzrostu, z oceną.",
"pulsDescription": "Tętno spoczynkowe na tle zakresu referencyjnego według wieku i płci, opartego na percentylach populacyjnych CDC/NCHS, wraz z oceną opisową.",
"stimmungDescription": "Dzienne wartości nastroju w czasie wraz z oceną tekstową.",
"medikamenteDescription": "Kalendarz przyjęć dla każdego leku plus ocena tekstowa.",
"bmiDescription": "BMI obliczone z twojej wagi i wzrostu, z oceną.",
"target": {
"adjustLink": "Dostosuj zakres docelowy"
},
"explainer": {
"bloodPressureBody": "Ciśnienie krwi to siła, z jaką krew napiera na ściany tętnic, zapisywana jako skurczowe do rozkurczowego (szczyt podczas uderzenia serca do wartości spoczynkowej między uderzeniami). Stale wysokie wartości z czasem obciążają serce i naczynia.",
"pulseBody": "Tętno to liczba uderzeń serca na minutę. Pojedynczy pomiar odzwierciedla to, co robiłeś w danej chwili. W spoczynku wynosi zwykle 60–100 uderzeń na minutę i naturalnie rośnie przy ruchu, stresie lub kofeinie.",
"weightBody": "Masa ciała to jeden z najprostszych sygnałów długoterminowego bilansu energetycznego i ogólnego zdrowia. Trend na przestrzeni tygodni liczy się znacznie bardziej niż pojedynczy odczyt, który zmienia się wraz z nawodnieniem, jedzeniem i porą dnia.",
"bmiBody": "BMI to waga podzielona przez wzrost do kwadratu: jedna liczba przypisująca Cię do szerokiej kategorii wagowej. To badanie przesiewowe dla populacji, a nie diagnoza, i nie odróżnia mięśni od tłuszczu.",
"sleepBody": "Długość snu to czas, który faktycznie przespałeś w nocy, podzielony na fazy lekką, głęboką i REM. Większość dorosłych potrzebuje około siedmiu do dziewięciu godzin; stała ilość i jakość wspierają regenerację, nastrój i metabolizm.",
"moodBody": "Śledzenie nastroju rejestruje Twoje samopoczucie w czasie na prostej skali. Regularne zapisywanie ujawnia wzorce (jak sen, aktywność czy leki łączą się z samopoczuciem), których pojedynczy dzień nigdy nie pokaże.",
"medicationsBody": "Przestrzeganie zaleceń to rzetelność przyjmowania leków zgodnie z zaleceniami, pokazana tu jako odsetek oczekiwanych dawek, które zarejestrowałeś. Regularne przyjmowanie często decyduje o tym, czy terapia działa zgodnie z zamierzeniem.",
"restingHrBody": "Tętno spoczynkowe to częstość uderzeń serca w pełnym spoczynku, zwykle mierzona w nocy. Niższe tętno zwykle wskazuje na lepszą wydolność krążeniową, a rosnący trend może być wczesnym sygnałem stresu lub choroby.",
"hrvBody": "HRV to drobna zmienność czasu między kolejnymi uderzeniami serca. Wyższa zmienność zwykle odzwierciedla dobrze zregenerowany, elastyczny układ nerwowy, a utrzymujący się spadek może sygnalizować zmęczenie, stres lub niewystarczającą regenerację.",
"oxygenSaturationBody": "SpO₂ to odsetek czerwonych krwinek przenoszących tlen. Wartości 95–100% są normalne w spoczynku; wartości utrzymujące się poniżej 90% wymagają uwagi, choć krótkie nocne spadki są częste.",
"bodyTemperatureBody": "Temperatura ciała odzwierciedla stan cieplny rdzenia, zwykle około 37 °C z niewielkimi dobowymi wahaniami. Utrzymujący się wzrost może wskazywać na infekcję, podczas gdy nocne pomiary na nadgarstku śledzą głównie zmiany względne, a nie wartość kliniczną.",
"activeEnergyBody": "Energia aktywna to kalorie spalane przez ruch, ponad podstawowy wydatek w spoczynku. To bezpośrednia miara tego, jak aktywny fizycznie był Twój dzień.",
"workoutsBody": "Treningi to ustrukturyzowane sesje ćwiczeń rejestrowane przez Twoje urządzenia, wraz z typem, czasem trwania i energią. Ich śledzenie pokazuje, jak regularny trening kumuluje się przez tygodnie i jak wiąże się z innymi sygnałami zdrowotnymi.",
"respiratoryRateBody": "Częstość oddechów to liczba wdechów na minutę. W spoczynku większość dorosłych oddycha około dwunastu do dwudziestu razy na minutę; utrzymujący się wzrost może towarzyszyć chorobie, wysiłkowi lub stresowi.",
"bodyWaterBody": "Całkowita woda w organizmie to udział płynów w masie ciała, wewnątrz i wokół komórek. Zmienia się wraz z nawodnieniem, posiłkami i aktywnością, więc trend w ciągu tygodni mówi więcej niż pojedynczy pomiar.",
"boneMassBody": "Masa kostna to szacowana waga minerałów w szkielecie. Pomiary z wagi są przybliżone, ale stabilny lub rosnący trend sprzyja długotrwałej wytrzymałości kości.",
"fatFreeMassBody": "Masa beztłuszczowa to wszystko w ciele, co nie jest tłuszczem: mięśnie, kości, narządy i woda. Utrzymanie lub jej budowanie przy spadku wagi zwykle wskazuje na zdrowszy skład ciała.",
"fatMassBody": "Masa tłuszczowa to łączna waga tłuszczu w ciele. Pewna ilość tłuszczu jest niezbędna dla hormonów i magazynowania energii, ale jego nadmiar (zwłaszcza w okolicy brzucha) zwiększa długoterminowe ryzyko zdrowotne (WHO 2024).",
"bodyFatBody": "Procent tkanki tłuszczowej to część masy ciała, którą stanowi tłuszcz. Zdrowe zakresy zależą od płci i wieku, a wagi szacują go metodą bioimpedancji, dlatego trend z kilku tygodni mówi więcej niż pojedynczy pomiar.",
"muscleMassBody": "Masa mięśniowa to szacowana waga mięśni w ciele. Więcej mięśni wspiera siłę, metabolizm i sprawność, a ich utrzymanie z wiekiem zwykle wymaga aktywnego wysiłku.",
"visceralFatBody": "Tłuszcz trzewny to tłuszcz gromadzony głęboko w jamie brzusznej wokół narządów. W odróżnieniu od tłuszczu podskórnego jego wysoki poziom jest ściśle powiązany z chorobami serca i cukrzycą typu 2, więc im niżej, tym lepiej.",
"leanBodyMassBody": "Beztłuszczowa masa ciała to całkowita waga pomniejszona o tłuszcz: mięśnie, kości, narządy i woda razem. Śledzenie jej obok wagi pokazuje, czy zmiany wynikają z mięśni, czy z tłuszczu.",
"flightsClimbedBody": "Pokonane piętra liczą kondygnacje, które pokonujesz w górę każdego dnia, gdzie jedno piętro to około trzech metrów wzniesienia. To prosty wskaźnik codziennej aktywności i wysiłku nóg.",
"walkingDistanceBody": "Dystans marszu i biegu to droga, jaką pokonujesz pieszo każdego dnia. Uzupełnia liczbę kroków, pokazując, jak daleko się poruszałeś, a nie tylko jak często stawiałeś kroki.",
"walkingSteadinessBody": "Stabilność chodu szacuje, jak stabilny i zrównoważony jest twój sposób chodzenia, w skali od dobrej do niskiej. Niski poziom wskazuje na większe ryzyko upadku i warto omówić go z lekarzem.",
"walkingHeartRateBody": "Tętno podczas chodzenia to średni puls w trakcie równego marszu. Niższa wartość w czasie często odzwierciedla poprawę wydolności krążeniowej przy tym samym wysiłku.",
"walkingAsymmetryBody": "Asymetria chodu to odsetek czasu, w którym kroki są nierówne między lewą a prawą nogą. Wyższy procent może wskazywać na ból, kontuzję lub problem z chodem wart sprawdzenia.",
"doubleSupportTimeBody": "Czas podwójnego podparcia to udział każdego cyklu chodu, w którym obie stopy dotykają ziemi jednocześnie. Wyższy procent zwykle oznacza ostrożniejszy, mniej stabilny chód.",
"stepLengthBody": "Długość kroku to średnia odległość od jednego postawienia stopy do następnego. Krótszy krok w czasie może odzwierciedlać zmęczenie, ostrożność lub zmianę sprawności ruchowej.",
"walkingSpeedBody": "Prędkość chodu to tempo poruszania się po płaskim terenie. To dobrze zbadany wskaźnik ogólnego zdrowia i sprawności, a stałe lub rosnące tempo to dobry znak.",
"pulseWaveVelocityBody": "Prędkość fali tętna mierzy, jak szybko fala ciśnienia z każdego uderzenia serca przemieszcza się przez tętnice. Szybsza fala wskazuje na sztywniejsze tętnice, co wiąże się z wyższym ryzykiem sercowo-naczyniowym.",
"vascularAgeBody": "Wiek naczyniowy szacuje, jak stare zachowują się twoje tętnice w porównaniu z rzeczywistym wiekiem, na podstawie sztywności tętnic. Wiek naczyniowy niższy od rzeczywistego sugeruje zdrowsze naczynia krwionośne.",
"environmentalAudioBody": "Poziom dźwięku otoczenia śledzi głośność otoczenia w decybelach. Długotrwała ekspozycja powyżej około 70 dB może z czasem uszkodzić słuch, więc niższe średnie dzienne są bezpieczniejsze.",
"headphoneAudioBody": "Poziom dźwięku w słuchawkach śledzi w decybelach, jak głośno słuchasz przez słuchawki. Ściszanie głośności i robienie przerw chroni słuch w dłuższej perspektywie.",
"audioEventsBody": "Zdarzenia głośnego dźwięku oznaczają momenty, gdy hałas wokół ciebie osiągnął poziom mogący przy wystarczającej ekspozycji uszkodzić słuch. Częste zdarzenia to sygnał, by poszukać cichszego otoczenia lub ochrony słuchu.",
"daylightBody": "Czas w świetle dziennym to ilość czasu spędzanego w świetle na zewnątrz każdego dnia. Regularne światło dzienne wspiera zdrowy rytm snu i czuwania oraz nastrój (CDC 2024), a czas na świeżym powietrzu wiąże się ze zdrowiem oczu.",
"bloodGlucoseBody": "Poziom glukozy we krwi to ilość cukru we krwi, głównego źródła energii organizmu. Rośnie po jedzeniu i ustala się między posiłkami. Jako ogólna wskazówka dla dorosłych bez cukrzycy: wynik na czczo poniżej {prediabetesFrom} {unit} jest prawidłowy, {prediabetesFrom}–{prediabetesTo} oznacza stan przedcukrzycowy, a {diabetesFrom} lub więcej mieści się w zakresie cukrzycy (ADA 2024). Pojedynczy wysoki wynik nie jest diagnozą; lekarz potwierdza ją powtórnym badaniem, a osoby leczące cukrzycę mają inne cele, ustalone przez lekarza.",
"skinTemperatureBody": "Temperatura skóry to tutaj niewielka nocna zmiana temperatury nadgarstka względem twojej własnej wartości bazowej, a nie bezwzględny pomiar gorączki. Zmiany mogą odzwierciedlać sen, otoczenie, chorobę lub fazę cyklu menstruacyjnego.",
"cardioFitnessBody": "VO₂ max to ilość tlenu, jaką organizm potrafi wykorzystać przy maksymalnym wysiłku. To najlepszy laboratoryjny wskaźnik wydolności tlenowej, który urządzenia noszone szacują pośrednio. Wyższy lub rosnący trend to mocny sygnał dobrego zdrowia układu krążenia.",
"cardioRecoveryBody": "Regeneracja serca to liczba uderzeń na minutę, o jaką spada tętno w pierwszej minucie po zakończeniu intensywnego wysiłku. Większy spadek oznacza, że serce szybciej się uspokaja, co świadczy o dobrej kondycji.",
"wristTemperatureBody": "Temperatura nadgarstka jest mierzona podczas snu i podawana jako różnica względem Twojej wartości bazowej, a nie jako wartość bezwzględna. Stabilny odczyt jest normalny, a utrzymujący się wzrost może wskazywać na chorobę, intensywny trening lub zmianę cyklu.",
"fallsBody": "Tutaj liczone są poważne upadki wykryte przez urządzenie noszone. Celem jest zero; rosnąca liczba to sygnał ryzyka związanego z mobilnością, który warto omówić z lekarzem, zwłaszcza u osób starszych (CDC STEADI 2024).",
"sixMinuteWalkBody": "To szacunek, jak daleko mógłbyś przejść w sześć minut, czyli klasyczny test kliniczny mobilności i wydolności krążeniowo-oddechowej. Wartość z urządzenia noszonego to przybliżenie, a nie nadzorowany test kliniczny; liczy się stały lub rosnący trend.",
"stairAscentSpeedBody": "To prędkość, z jaką pokonujesz bieg schodów. To czuły wskaźnik siły nóg i mobilności: stałe lub rosnące tempo to dobry znak, a spadające warto obserwować.",
"stairDescentSpeedBody": "To prędkość, z jaką schodzisz bieg schodów. Razem z prędkością wchodzenia odzwierciedla kontrolę nóg i równowagę: stałe tempo to dobry znak, a spadające warto obserwować.",
"breathingDisturbancesBody": "Urządzenie noszone potrafi oszacować, jak często Twój oddech był przerywany podczas snu. Niższy wskaźnik jest lepszy; poziom oznaczony jako podwyższony, zwłaszcza przez wiele nocy, warto omówić z lekarzem. To przybliżenie przesiewowe, a nie diagnoza bezdechu sennego.",
"stepsBody": "Liczba kroków to łączna liczba kroków wykonanych każdego dnia, najprostsza miara codziennego ruchu. Stały nawyk liczy się bardziej niż pojedynczy intensywny dzień, a okrągły cel 10 000 kroków to hasło reklamowe, a nie wynik badań.",
"readinessBody": "Gotowość to pojedynczy dzienny odczyt tego, jak przygotowane jest Twoje ciało, by zmierzyć się z dniem. Łączy tętno spoczynkowe, zmienność rytmu serca i sen. To przybliżenie z urządzenia względem Twojej własnej bazy, nie pomiar kliniczny: wyższy wynik oznacza wypoczęcie, niższy to delikatna wskazówka, by zwolnić tempo.",
"sleepScoreBody": "Twój wynik snu streszcza całą noc w jednej liczbie: długość, efektywność, regularność pór oraz proporcje snu lekkiego, głębokiego i REM. Obserwuj wzorzec w ujęciu tygodni, zamiast gonić za idealnym wynikiem jednej nocy.",
"recoveryBody": "Regeneracja odzwierciedla, jak dobrze Twoje ciało się odbudowało. Opiera się na nocnych sygnałach, takich jak zmienność rytmu serca i tętno spoczynkowe. Wysoki wynik to zielone światło, by przyspieszyć; niższy sugeruje, że organizm wciąż się regeneruje.",
"strainBody": "Obciążenie ujmuje, ile wysiłku sercowo-naczyniowego i fizycznego nałożyłeś na swoje ciało, od treningów po aktywny dzień na nogach. Gdy zbierze się wystarczająco danych, jest oceniane względem Twojego własnego typowego wysiłku, a nie cudzej miary.",
"stressBody": "Stres jest tu szacunkiem fizjologicznego obciążenia Twojego układu nerwowego, odczytywanym głównie ze wzorców zmienności rytmu serca, a nie z tego, jak się świadomie czujesz. Niższy wynik wskazuje na spokojny, dobrze regulowany stan; wyższy to zachęta, by wpleść regenerację.",
"recoveryPageBody": "Regeneracja łączy nocne sygnały rejestrowane przez Twoje urządzenie (recharge, obciążenie, load oraz dzienne sumy tętna i energii), aby pokazać, jak dobrze Twój organizm się zregenerował. Patrz na wzorzec w ciągu kilku dni, a nie na pojedynczą liczbę; niższy wynik to zaproszenie do zwolnienia tempa, a nie alarm.",
"pulsePressureBody": "Ciśnienie tętna to różnica między wartością skurczową a rozkurczową (skurczowe minus rozkurczowe). Jako ogólna wskazówka, około 40 mmHg jest typowe w spoczynku; szeroka różnica powyżej około 60 mmHg w średnim wieku może odzwierciedlać usztywnienie tętnic, a wąska różnica poniżej około 25 mmHg może towarzyszyć niskiej objętości wyrzutowej (StatPearls/NIH 2023). To powód do rozmowy, nie diagnoza.",
"meanArterialPressureBody": "Średnie ciśnienie tętnicze to przeciętne ciśnienie, jakie widzą Twoje narządy w trakcie uderzenia serca, w przybliżeniu rozkurczowe plus jedna trzecia różnicy do skurczowego. Jako ogólna wskazówka, wartość spoczynkowa mieści się w okolicy 70–100 mmHg (StatPearls/NIH 2023). Często przywoływany próg ~60 mmHg to pojęcie z medycyny ostrej, nie alarm do samodzielnego pomiaru.",
"cycleEducationBody": "Twój cykl przebiega przez cztery fazy sterowane hormonami, a jego długość i regularność to dostępne okno na ogólny stan zdrowia. Jako ogólna wskazówka, u osób dorosłych cykle trwają zwykle 21–35 dni (źródła kliniczne podają 24–38), z krwawieniem około pięciu dni (ACOG 2015). Faza lutealna jest stałą kotwicą, dlatego owulację najlepiej szacować, licząc wstecz od następnej spodziewanej miesiączki, nigdy według stałego „14. dnia”. Przewidziane okno płodne to oszacowanie, które wymaga kilku zarejestrowanych cykli i pozostaje przybliżone, a podstawowa temperatura ciała potwierdza owulację po fakcie, a nie ją przewiduje. To nie jest metoda antykoncepcji.",
"sleepHygieneBody": "Kilka opartych na dowodach nawyków wspiera sen: stałe pory kładzenia się i wstawania także w weekendy, jasne światło rano i przyciemnione wieczory, chłodna, ciemna i cicha sypialnia oraz unikanie kofeiny po południu, alkoholu późnym wieczorem i obfitych posiłków przed snem (CDC 2024). Regularność przewiduje zdrowie co najmniej tak silnie jak długość snu, a całkowity czas snu z urządzenia jest znacznie bardziej wiarygodny niż jego podział na sen głęboki, lekki i REM."
},
"bpDerived": {
"pulsePressure": "Ciśnienie tętna (różnica między Twoimi wartościami) wynosi około {value} mmHg; około 40 jest typowe w spoczynku.",
"meanArterialPressure": "Średnie ciśnienie tętnicze (średnia, jaką widzą Twoje narządy) wynosi około {value} mmHg, zwykle w okolicy 70–100.",
"caveat": "Te wartości są wyliczone z ostatniego pomiaru jako ogólna wskazówka, nie jako diagnoza."
},
"stats": {
"label": "Statystyki podsumowujące",
"min": "Min",
"max": "Maks",
"median": "Mediana",
"mean": "Średnia"
},
"showAllValues": "Pokaż wszystkie pomiary",
"valuesPageTitle": "{metric}: wszystkie pomiary",
"valuesPageDescription": "Każdy pomiar stojący za tą metryką. Edytuj lub usuń wpis bezpośrednio.",
"diversity": {
"trigger": "Wskazówka pomiarowa",
"weekday": "Większość Twoich pomiarów {metric} przypada na jeden dzień tygodnia. Pomiary w inne dni dają pełniejszy obraz.",
"timeOfDay": "Większość Twoich pomiarów {metric} przypada o podobnej porze dnia. Różne pory dają pełniejszy obraz."
},
"valuesBack": "Powrót do Insights",
"valuesBackToMetric": "Powrót do {metric}",
"scoresBack": "Powrót do Insights",
"ecgDescription": "Zapisy EKG jednoodprowadzeniowe z Twojego urządzenia, każdy z wynikiem samego urządzenia."
},
"units": {
"steps": "kroki",
"flights": "piętra",
"falls": "upadki",
"years": "lata",
"breathingEvents": "zdarzenia",
"standHours": "godz.",
"respiratoryRate": "oddechów/min"
},
"sleep": {
"title": "Sen",
"description": "Podział na fazy i nocna długość snu, dane z Apple Health.",
"mainSleep": "Sen główny",
"totalSleep": "Sen łączny",
"compositionTitle": "Rozkład faz",
"compositionSubtitle": "Ostatnie {nights} nocy",
"compositionAriaLabel": "Rozkład faz snu w {nights} nocach",
"sourceDiscrepancy": {
"tooltipTitle": "Źródła się różnią"
},
"stages": {
"deep": "Głęboki",
"rem": "REM",
"core": "Lekki",
"asleep": "Śpi",
"awake": "Czuwa",
"inBed": "W łóżku",
"nap": "Drzemka",
"napCount": "{count} drzemki/ek",
"unavailable": "Brak danych o fazach. Fazy snu pojawią się tutaj, gdy tylko dostarczy je połączone źródło."
},
"empty": {
"title": "Brak danych o śnie",
"description": "Połącz źródło takie jak Apple Health lub urządzenie noszone albo zapisuj sen ręcznie, a ten widok wypełni się automatycznie.",
"action": "Zarządzaj urządzeniami"
},
"debt": {
"title": "Dług snu",
"value": "{hours} godz. {minutes} min niedoboru",
"caption": "Pozostały bilans z ostatnich {nights} nocy",
"clearValue": "Na bieżąco",
"clearCaption": "Nic do nadrobienia w ostatnich {nights} nocach",
"learning": "Wciąż analizujemy Twój sen: {counted} nocy do tej pory, jeszcze {remaining}, aby uzyskać wiarygodny bilans.",
"computedInfo": "To własne oszacowanie HealthLog: ruchomy bilans potrzeby snu minus sen z ostatnich nocy, który sen nadrabiający zmniejsza. Może różnić się od natywnego wskaźnika długu snu z urządzenia, które korzysta z własnego modelu zapotrzebowania."
},
"average": {
"title": "Średnia na noc",
"value": "{hours} godz. {minutes} min",
"caption": "Średni sen w ciągu ostatnich {nights} nocy",
"learning": "Wciąż analizujemy Twój sen: {counted} nocy do tej pory, jeszcze {remaining}, aby uzyskać wiarygodną średnią."
},
"chronotype": {
"title": "Chronotyp",
"learning": "Wciąż poznajemy Twój rytm: {counted} z {total} wolnych nocy. Chronotyp wymaga kilku poranków bez budzika, aby coś znaczył.",
"advancedToggle": "Zaawansowane",
"socialJetlagValue": "{hours} godz. {minutes} min jet lagu społecznego",
"socialJetlagCaption": "Różnica między porą snu w dni robocze i wolne, jak niewielka cotygodniowa zmiana strefy czasowej.",
"msfScValue": "Skorygowany środek snu {clock}",
"msfScCaption": "Skorygowany o sen nadrabiany w weekend (MSFsc).",
"dayTypeNote": "Dni wolne przyjmuje się jako weekendy, dopóki nie zostanie dodane śledzenie typu dnia.",
"band": {
"extreme_early": "Wyraźny typ poranny",
"early": "Typ poranny",
"intermediate": "Typ pośredni",
"late": "Typ wieczorny",
"extreme_late": "Wyraźny typ wieczorny"
},
"midpointHeadline": "Naturalny środek Twojego snu przypada około {clock}."
},
"rhythm": {
"loadError": "Nie udało się teraz wczytać Twojego rytmu snu. Pojawi się ponownie, gdy połączenie się ustabilizuje."
}
},
"medicationCompliance": "Przestrzeganie leków",
"dayStreak": "{count} dni serii",
"dayStreakOne": "{count} dzień serii",
"compliance7d": "Przestrzeganie 7 dni",
"compliance30d": "Przestrzeganie 30 dni",
"taken": "Przyjęte",
"skipped": "Pominięte",
"missed": "Pominięte",
"assessmentTitle": "Ocena",
"restMode": {
"title": "Tryb odpoczynku",
"body": "Trwa epizod choroby lub dolegliwości, więc odzwierciedla to okres rekonwalescencji. Twój wynik nie jest za to obniżany.",
"bodySince": "Od {since} trwa epizod choroby lub dolegliwości, więc odzwierciedla to okres rekonwalescencji. Twój wynik nie jest za to obniżany."
},
"bloodPressureSectionTitle": "Ciśnienie krwi",
"weightSectionTitle": "Waga",
"pulseSectionTitle": "Tętno",
"bmiSectionTitle": "BMI",
"complianceNoData": "Brak danych o przestrzeganiu",
"generate": "Wygeneruj nową analizę",
"moodSectionTitle": "Nastrój",
"emptyState": {
"bloodPressure": {
"title": "Brak pomiarów ciśnienia krwi",
"description": "Zarejestruj pomiar ciśnienia, a pojawi się tu trend, udział w zakresie docelowym i klasyfikacja WHO.",
"cta": "Zarejestruj ciśnienie"
},
"weight": {
"title": "Brak pomiarów wagi",
"description": "Zarejestruj wagę, a trend, średnia krocząca i zakres docelowy pojawią się automatycznie.",
"cta": "Zarejestruj wagę"
},
"pulse": {
"title": "Brak pomiarów tętna",
"description": "Zarejestruj tętno, a w tym widoku pojawi się tętno spoczynkowe, HRV i VO₂ max.",
"cta": "Zarejestruj tętno"
},
"bmi": {
"title": "BMI jeszcze nie obliczone",
"description": "Po wpisaniu wzrostu i co najmniej jednej wagi pojawi się tu trend BMI z zakresami WHO.",
"cta": "Zarejestruj wagę"
},
"mood": {
"title": "Brak wpisów nastroju",
"description": "Zarejestruj nastrój, a pojawi się trend, pasmo stabilności i korelacje.",
"cta": "Zarejestruj nastrój"
},
"medication": {
"title": "Brak skonfigurowanych leków",
"description": "Skonfiguruj lek, a pojawi się adherencja, poziom we krwi i schemat titracji.",
"cta": "Dodaj lek"
},
"sleep": {
"title": "Brak danych o śnie",
"description": "Gdy pojawią się dane o śnie (ręcznie lub przez Withings / Apple Health), wyświetli się tu rozkład faz na noc.",
"cta": "Połącz źródło"
}
},
"navWorkouts": "Treningi",
"navRecovery": "Regeneracja",
"workouts": {
"title": "Treningi",
"description": "Ostatnie biegi, jazdy, marsze i treningi siłowe, zdeduplikowane między Apple Watch a Withings.",
"emptyState": {
"title": "Brak treningów",
"description": "Treningi trafiają tu z Apple Zdrowie na iPhonie i z Withings. Możesz też wpisać trening ręcznie."
},
"detail": {
"backToList": "Powrót do treningów",
"statsTitle": "Statystyki",
"statsDuration": "Czas trwania",
"statsDistance": "Dystans",
"statsActiveEnergy": "Energia czynna",
"statsAvgHr": "Średnie tętno",
"statsMaxHr": "Maks. tętno",
"statsMinHr": "Min. tętno",
"statsStepCount": "Kroki",
"statsElevation": "Przewyższenie",
"statsPace": "Tempo",
"routeTitle": "Trasa",
"hrChartTitle": "Tętno",
"notFound": "Nie znaleziono treningu.",
"hrFromPulse": "Na podstawie Twoich danych tętna z okolic tej sesji",
"hrAxisMinutes": "min",
"hrAvgMarker": "Śr. {bpm}",
"hrMaxMarker": "Maks. {bpm}",
"hrRangeValue": "{low} do {high} bpm",
"hrRangeLabel": "Zakres",
"hrNoProfile": "Brak pojedynczych pomiarów tętna dla tej sesji.",
"sportAverageLabel": "Twoja ostatnia średnia:",
"zonesTitle": "Strefy wysiłku",
"zonesCaption": "Jak Twój wysiłek rozłożył się na strefy tętna.",
"zonesCaptionDevice": "Czas w strefach według Twojego urządzenia.",
"exportGpx": "Eksportuj GPX",
"elevationTitle": "Wznios",
"splitsTitle": "Międzyczasy",
"splitsKm": "km",
"splitsTime": "Czas",
"splitsPace": "Tempo",
"thatDayTitle": "Tego dnia",
"daySleepTitle": "Noc wcześniej",
"daySleepNone": "Brak zapisanego snu tej nocy",
"daySleepAwakeningsOne": "{count} przebudzenie",
"daySleepAwakeningsMany": "{count} przebudzeń",
"dayMoodTitle": "Nastrój tego dnia",
"dayMoodNone": "Brak zapisanego nastroju tego dnia",
"sleepTrendsLink": "Trendy snu",
"moodHistoryLink": "Historia nastroju",
"previousSessionLink": "Poprzedni trening",
"insightTitle": "Analiza aktywności"
},
"sport": {
"walking": "Marsz",
"running": "Bieg",
"cycling": "Rower",
"hiking": "Górska wędrówka",
"swimming": "Pływanie",
"rowing": "Wioślarstwo",
"elliptical": "Orbitrek",
"stairClimber": "Stepper",
"yoga": "Joga",
"mindAndBody": "Umysł i ciało",
"strength": "Siła",
"hiit": "HIIT",
"dance": "Taniec",
"golf": "Golf",
"badminton": "Badminton",
"tennis": "Tenis",
"basketball": "Koszykówka",
"soccer": "Piłka nożna",
"crossTraining": "Cross-trening",
"mixedCardio": "Cardio mieszane",
"other": "Inne"
},
"loadError": "Nie udało się wczytać treningów",
"loadMore": "Wczytaj więcej treningów",
"loadingMore": "Wczytywanie kolejnych treningów",
"loadMoreError": "Nie udało się wczytać kolejnych treningów",
"countOne": "{count} trening",
"countOther": "{count} treningów",
"countFew": "{count} treningi",
"filterLabel": "Filtruj według sportu",
"filterAll": "Wszystkie sporty",
"filterEmpty": "Brak treningów tego sportu w Twojej historii.",
"manual": {
"logWorkout": "Zarejestruj trening",
"sheetTitle": "Zarejestruj trening",
"sheetDescription": "Wpisz sesję ręcznie: rodzaj aktywności, początek i czas trwania.",
"sportLabel": "Aktywność",
"sportPlaceholder": "Wybierz aktywność",
"startLabel": "Początek",
"startHint": "Zostaw puste, jeśli właśnie skończyłeś: czas trwania liczy się wstecz od teraz.",
"durationLabel": "Czas trwania",
"distanceLabel": "Dystans ({unit})",
"energyLabel": "Energia czynna (kcal)",
"alreadySaved": "Ten trening jest już zapisany",
"saveError": "Nie udało się zapisać treningu",
"deleteLabel": "Usuń trening",
"deleteConfirmTitle": "Usunąć ten trening?",
"deleteConfirmDescription": "Ten ręcznie wpisany trening zostanie trwale usunięty.",
"deleted": "Trening usunięty",
"deleteError": "Nie udało się usunąć treningu",
"errors": {
"sportRequired": "Wybierz aktywność.",
"startRequired": "Podaj datę i godzinę.",
"startInFuture": "Początek nie może być w przyszłości.",
"durationRequired": "Podaj, jak długo trwał trening.",
"durationInvalid": "Podaj pełne godziny i minuty od 0 do 59.",
"durationTooLong": "Trening może trwać najwyżej 24 godziny.",
"endInFuture": "Trening kończyłby się w przyszłości. Ustaw początek na godzinę, o której się zaczął.",
"distanceInvalid": "Podaj dystans jako liczbę w realistycznym zakresie.",
"energyInvalid": "Podaj energię czynną jako liczbę do 20 000 kcal."
},
"editTitle": "Edytuj trening",
"editAction": "Edytuj",
"updated": "Trening zaktualizowany"
},
"load": {
"title": "Obciążenie treningowe",
"fitness": "Wydolność",
"fatigue": "Zmęczenie",
"form": "Forma",
"explainer": "Wydolność to twój bodziec treningowy z tętna uśredniony z około sześciu tygodni, zmęczenie z około tygodnia, a forma to różnica. Liczby porównuje się z twoją własną przeszłością, nie z innymi osobami ani aplikacjami.",
"warmingUp": "Na podstawie dotychczasowych {days} dni: dopóki nie minie sześć tygodni, wydolność wychodzi niższa, niż jest.",
"coverage": "Udało się ocenić {rated} z ostatnich {days} dni. Dzień bez danych o aktywności lub z treningiem, którego nie dało się ocenić, jest pomijany, a nie liczony jako odpoczynek.",
"asOf": "Stan na {date}, ostatni dzień, który dało się ocenić."
}
},
"bloodGlucose": {
"title": "Poziom glukozy",
"description": "Twoje odczyty glukozy w czasie, w {unit}.",
"chartTitle": "Poziom glukozy",
"medianLabel": "Mediana glukozy",
"emptyState": {
"title": "Brak danych o glukozie",
"description": "Odczyty glukozy pojawią się tutaj po zapisaniu jednego lub synchronizacji urządzenia."
},
"clinical": {
"title": "Przegląd glukozy",
"subtitle": "Spojrzenie na ostatnie {days} dni, na podstawie {count} pomiarów.",
"spotCaveat": "To szacunki z pojedynczych pomiarów punktowych, a nie profil z czujnika ciągłego. Traktuj je jako kierunek, nie jako diagnozę.",
"labsLink": "Wyniki laboratoryjne? HbA1c lub glukozę na czczo z pobrania krwi zapisz w sekcji Laboratorium.",
"learningTitle": "Wciąż poznajemy Twoją glukozę",
"learningBody": "Na razie to {count} w ciągu {days}. Przy nieco dłuższej historii obraz się wyostrza, więc rejestruj dalej lub pozwól uzupełnić to podłączonemu urządzeniu.",
"learningBodyEmpty": "Gdy pojawi się kilka pomiarów (wpisanych przez Ciebie lub zsynchronizowanych z urządzenia), czas w zakresie, średnia i zmienność nabiorą tu kształtu.",
"readingsCount": "{count} pomiarów",
"readingsCountOne": "1 pomiar",
"daysCount": "{days} dni",
"daysCountOne": "1 dzień",
"tir": {
"title": "Czas w zakresie",
"caption": "Udział pomiarów w każdym przedziale ({low}–{high} {unit} to cel).",
"veryLow": "Bardzo niski",
"low": "Niski",
"inRange": "W zakresie",
"high": "Wysoki",
"veryHigh": "Bardzo wysoki",
"ariaLabel": "Czas w zakresie: {tir}% w celu, {below}% poniżej, {above}% powyżej.",
"empty": "Brak pomiarów do wykresu."
},
"gmi": {
"label": "Wskaźnik zarządzania glukozą",
"help": "Szacunek zbliżony do HbA1c na podstawie średniej glukozy."
},
"eA1c": {
"label": "Szacowane HbA1c",
"help": "Szacunek HbA1c na podstawie średniej glukozy (ADAG)."
},
"mean": {
"label": "Średnia glukoza"
},
"cv": {
"label": "Zmienność",
"steady": "Stabilna",
"unstable": "Niestabilna",
"help": "Współczynnik zmienności. Od 36 % glukozę uznaje się za niestabilną; niżej znaczy stabilniej."
},
"advanced": {
"toggle": "Wskaźniki zaawansowane",
"intro": "Złożone miary o poziomie badawczym dla bliższego spojrzenia. Każda sprowadza Twoje pomiary do jednej liczby ważonej ryzykiem.",
"jIndex": {
"label": "Indeks J",
"help": "Pojedynczy wynik łączący średnią i jej rozrzut. Niższy oznacza ściślejszą kontrolę."
},
"lbgi": {
"label": "Ryzyko niedocukrzeń (LBGI)",
"help": "Indeks Kovatcheva ważący, jak często i jak głęboko odczyty spadają."
},
"hbgi": {
"label": "Ryzyko przecukrzeń (HBGI)",
"help": "Indeks Kovatcheva ważący, jak często i jak wysoko odczyty rosną."
},
"byContext": {
"title": "Wg kontekstu",
"fasting": "Na czczo",
"postprandial": "Po posiłku",
"random": "Losowy",
"bedtime": "Przed snem",
"unspecified": "Bez oznaczenia",
"readingsShort": "{count} pomiarów",
"readingsShortOne": "1 pomiar"
}
}
}
},
"navBloodGlucose": "Glukoza",
"totalBodyWater": {
"title": "Całkowita woda w organizmie",
"description": "Twoja całkowita woda w organizmie w czasie, w kilogramach.",
"chartTitle": "Całkowita woda w organizmie",
"emptyState": {
"title": "Brak danych o wodzie",
"description": "Odczyty wody pojawią się tutaj po synchronizacji wagi analitycznej."
}
},
"navTotalBodyWater": "Woda w organizmie",
"boneMass": {
"title": "Masa kostna",
"description": "Twoja masa kostna w czasie, w kilogramach.",
"chartTitle": "Masa kostna",
"emptyState": {
"title": "Brak danych o masie kostnej",
"description": "Odczyty masy kostnej pojawią się tutaj po synchronizacji wagi analitycznej."
}
},
"navBoneMass": "Masa kostna",
"flightsClimbed": {
"title": "Pokonane piętra",
"description": "Kondygnacje schodów pokonane każdego dnia.",
"chartTitle": "Pokonane piętra dziennie",
"emptyState": {
"title": "Brak danych o piętrach",
"description": "Sumy pięter pojawią się tutaj po synchronizacji dnia przez Apple Health."
}
},
"navFlightsClimbed": "Piętra",
"walkingRunningDistance": {
"title": "Dystans marsz + bieg",
"description": "Dystans marszu i biegu pokonany każdego dnia, w kilometrach.",
"chartTitle": "Dystans dziennie",
"emptyState": {
"title": "Brak danych o dystansie",
"description": "Dzienny dystans pojawi się tutaj po synchronizacji dnia przez Apple Health."
}
},
"navWalkingRunningDistance": "Dystans",
"fatFreeMass": {
"title": "Masa beztłuszczowa",
"description": "Twoja masa beztłuszczowa w czasie, w kilogramach.",
"chartTitle": "Masa beztłuszczowa",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji wagi analitycznej."
}
},
"navFatFreeMass": "Masa beztłuszczowa",
"fatMass": {
"title": "Masa tłuszczowa",
"description": "Twoja masa tłuszczowa w czasie, w kilogramach.",
"chartTitle": "Masa tłuszczowa",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji wagi analitycznej."
}
},
"bodyFat": {
"title": "Tkanka tłuszczowa",
"description": "Twój procent tkanki tłuszczowej w czasie.",
"chartTitle": "Tkanka tłuszczowa",
"emptyState": {
"title": "Brak danych o tkance tłuszczowej",
"description": "Odczyty pojawią się tutaj po synchronizacji wagi analitycznej lub po ręcznym zapisaniu wartości.",
"cta": "Zapisz tkankę tłuszczową"
}
},
"navFatMass": "Masa tłuszczowa",
"navBodyFat": "Tkanka tłuszczowa",
"muscleMass": {
"title": "Masa mięśniowa",
"description": "Twoja masa mięśniowa w czasie, w kilogramach.",
"chartTitle": "Masa mięśniowa",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji wagi analitycznej."
}
},
"navMuscleMass": "Masa mięśniowa",
"skinTemperature": {
"title": "Temperatura skóry",
"description": "Temperatura skóry nadgarstka w czasie, w stopniach Celsjusza.",
"chartTitle": "Temperatura skóry",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji nocnej temperatury przez urządzenie."
}
},
"navSkinTemperature": "Temp. skóry",
"pulseWaveVelocity": {
"title": "Prędkość fali tętna",
"description": "Prędkość fali tętna tętniczego w czasie, w m/s. Wyższe wartości sugerują sztywniejsze tętnice.",
"chartTitle": "Prędkość fali tętna",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji zgodnego urządzenia Withings."
}
},
"navPulseWaveVelocity": "Prędkość fali tętna",
"vascularAge": {
"title": "Wiek naczyniowy",
"description": "Twój szacowany wiek naczyniowy w czasie, w latach.",
"chartTitle": "Wiek naczyniowy",
"emptyState": {
"title": "Brak danych",
"description": "Szacunki pojawią się tutaj po synchronizacji zgodnego urządzenia Withings."
}
},
"navVascularAge": "Wiek naczyniowy",
"visceralFat": {
"title": "Tłuszcz trzewny",
"description": "Twój wskaźnik tłuszczu trzewnego w czasie.",
"chartTitle": "Tłuszcz trzewny",
"emptyState": {
"title": "Brak danych",
"description": "Wskaźniki pojawią się tutaj po synchronizacji zgodnej wagi analitycznej."
}
},
"navVisceralFat": "Tłuszcz trzewny",
"audioExposureEnv": {
"title": "Hałas otoczenia",
"description": "Twoja średnia dzienna ekspozycja na dźwięk otoczenia, w dBA.",
"chartTitle": "Ekspozycja na dźwięk otoczenia",
"emptyState": {
"title": "Brak danych",
"description": "Poziomy dźwięku pojawią się tutaj po synchronizacji Apple Health."
}
},
"navAudioExposureEnv": "Hałas otoczenia",
"audioExposureHeadphone": {
"title": "Dźwięk słuchawek",
"description": "Twoja średnia dzienna ekspozycja na dźwięk słuchawek, w dBA.",
"chartTitle": "Ekspozycja słuchawek",
"emptyState": {
"title": "Brak danych",
"description": "Poziomy pojawią się tutaj po synchronizacji Apple Health."
}
},
"navAudioExposureHeadphone": "Dźwięk słuchawek",
"timeInDaylight": {
"title": "Czas w świetle dziennym",
"description": "Minuty spędzone w świetle dziennym każdego dnia.",
"chartTitle": "Światło dzienne dziennie",
"emptyState": {
"title": "Brak danych",
"description": "Sumy pojawią się tutaj po synchronizacji dnia przez Apple Health."
}
},
"navTimeInDaylight": "Światło dzienne",
"walkingSteadiness": {
"title": "Stabilność chodu",
"description": "Twoja stabilność chodu w czasie, w procentach.",
"chartTitle": "Stabilność chodu",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji Apple Health."
}
},
"navWalkingSteadiness": "Stabilność chodu",
"audioExposureEvent": {
"title": "Głośne zdarzenia dźwiękowe",
"description": "Dni ze zdarzeniem ekspozycji na głośny hałas.",
"chartTitle": "Zdarzenia hałasu dziennie",
"emptyState": {
"title": "Brak danych",
"description": "Zdarzenia pojawią się tutaj po synchronizacji Apple Health."
}
},
"navAudioExposureEvent": "Zdarzenia hałasu",
"respiratoryRate": {
"title": "Częstość oddechów",
"description": "Twoja częstość oddechów w czasie, w oddechach na minutę.",
"chartTitle": "Częstość oddechów",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji oddechu snu lub treningu przez Apple Health."
}
},
"navRespiratoryRate": "Częstość oddechów",
"leanBodyMass": {
"title": "Beztłuszczowa masa ciała",
"description": "Twoja beztłuszczowa masa ciała w czasie, w kilogramach.",
"chartTitle": "Beztłuszczowa masa ciała",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji wagi analitycznej."
}
},
"navLeanBodyMass": "Beztłuszczowa masa ciała",
"walkingHeartRateAverage": {
"title": "Tętno podczas chodu",
"description": "Twoje średnie tętno podczas chodzenia, w ud./min.",
"chartTitle": "Średnie tętno podczas chodu",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji Apple Health."
}
},
"navWalkingHeartRateAverage": "Tętno podczas chodu",
"walkingAsymmetry": {
"title": "Asymetria chodu",
"description": "Twoja asymetria chodu w czasie, w procentach.",
"chartTitle": "Asymetria chodu",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji Apple Health."
}
},
"navWalkingAsymmetry": "Asymetria chodu",
"walkingDoubleSupport": {
"title": "Czas podwójnego podparcia",
"description": "Odsetek każdego kroku z obiema stopami na ziemi.",
"chartTitle": "Czas podwójnego podparcia",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji Apple Health."
}
},
"navWalkingDoubleSupport": "Podwójne podparcie",
"walkingStepLength": {
"title": "Długość kroku",
"description": "Twoja średnia długość kroku w czasie, w metrach.",
"chartTitle": "Długość kroku",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji Apple Health."
}
},
"navWalkingStepLength": "Długość kroku",
"walkingSpeed": {
"title": "Prędkość chodu",
"description": "Twoja średnia prędkość chodu w czasie, w km/h.",
"chartTitle": "Prędkość chodu",
"emptyState": {
"title": "Brak danych",
"description": "Odczyty pojawią się tutaj po synchronizacji Apple Health."
}
},
"navWalkingSpeed": "Prędkość chodu",
"mood": {
"logLink": "Zapisz nastrój",
"heatmapTitle": "Kalendarz nastroju",
"heatmapNoEntry": "Brak wpisu",
"legendGreat": "Świetnie",
"legendGood": "Dobrze",
"legendOkay": "W porządku",
"legendLow": "Nisko",
"distributionTitle": "Rozkład nastroju",
"distributionDaysUnit": "dni",
"weekdayTitle": "Średnia wg dnia tygodnia",
"weekdayNoData": "Brak danych",
"weekdayBestWorst": "Najlepszy dzień: {best}, najtrudniejszy dzień: {worst}",
"tagsTitle": "Tagi i wyzwalacze",
"tagAvgMood": "Średni nastrój z tym tagiem",
"correlationsTitle": "Nastrój a inne wskaźniki",
"correlationsDescription": "Jak Twój nastrój zmienia się wraz ze snem, aktywnością i tętnem tego samego dnia.",
"correlation": {
"sleepTitle": "Nastrój a sen",
"stepsTitle": "Nastrój a aktywność",
"pulseTitle": "Nastrój a tętno",
"sleepAxis": "Sen (min)",
"stepsAxis": "Kroki",
"pulseAxis": "Tętno (bpm)",
"strengthStrong": "Silna",
"strengthModerate": "Umiarkowana",
"strengthWeak": "Słaba",
"strengthNone": "Brak",
"source": "{n} sparowanych dni, r = {r}",
"emptyTitle": "Za mało sparowanych danych",
"emptyDescription": "Rejestruj nastrój i ten wskaźnik w te same dni, aby zobaczyć korelację.",
"pendingDescription": "{n} z {needed} sparowanych dni. Korelacja pojawi się, gdy dni wystarczy, aby odróżnić wzorzec od przypadku.",
"noLinkTitle": "Brak wyraźnego związku",
"noLinkDescription": "{n} sparowanych dni i nic nie wykracza poza to, co dałby przypadek.",
"weightTitle": "Nastrój vs. waga",
"bloodPressureTitle": "Nastrój vs. ciśnienie krwi",
"weightAxis": "Waga",
"bloodPressureAxis": "Skurczowe (mmHg)",
"sourceLabel": "Jak to obliczono"
},
"structuredTagsTitle": "Podział tagów",
"inTargetValue": "{pct}%",
"inTargetCaption": "ostatnich dni w zakresie dobrego nastroju",
"narrative": {
"title": "Co się wyróżnia",
"weekdayDip": "Twój nastrój najbardziej spada w {weekday}: {delta} poniżej twojego tygodnia.",
"weekdayPeak": "{weekday} to zawsze twój najlepszy dzień, średnio {value}.",
"trendUp": "Twój nastrój rośnie w ciągu ostatnich {days} dni (+{delta} względem poprzedniego okresu).",
"trendDown": "Twój nastrój spada w ciągu ostatnich {days} dni (-{delta} względem poprzedniego okresu).",
"weekendUp": "W weekendy czujesz się lepiej (+{delta} względem dni roboczych).",
"weekendDown": "Twój nastrój jest niższy w weekendy (-{delta} względem dni roboczych).",
"tagLift": "Dni z tagiem „{tag}” są średnio o {delta} powyżej twojego ogólnego nastroju.",
"tagDrop": "Dni z tagiem „{tag}” są o {delta} poniżej twojej średniej.",
"inTarget": "Przez {pct}% ostatnich 30 dni byłeś w zakresie dobrego nastroju.",
"streak": "Rejestrujesz nastrój od {days} dni z rzędu. Tak trzymaj.",
"timeOfDay": "Najlepiej czujesz się {bucket}, średnio {value}."
},
"timeOfDay": {
"title": "Nastrój według pory dnia",
"morning": "Rano",
"afternoon": "Popołudnie",
"evening": "Wieczór",
"night": "Noc",
"bestCaption": "Zwykle najlepiej czujesz się {bucket}."
},
"stability": {
"value": "{score}/100",
"bandVerySteady": "Twój nastrój był bardzo stabilny",
"bandSteady": "Twój nastrój był dość stabilny",
"bandVariable": "Twój nastrój był zauważalnie zmienny",
"bandVeryVariable": "Twój nastrój ostatnio mocno się wahał",
"title": "Stabilność"
},
"influence": {
"title": "Wpływ na nastrój",
"detail": "Średnia {withAvg} w {withDays} dniach z tym tagiem wobec {withoutAvg} bez niego.",
"confidenceLow": "Niska pewność",
"confidenceMedium": "Średnia pewność",
"confidenceHigh": "Wysoka pewność"
},
"betterDays": {
"title": "Co towarzyszy Twoim lepszym dniom",
"description": "Tagi i wskaźniki, które pokrywają się z dniami lepszego i gorszego nastroju, uszeregowane według siły powiązania."
},
"crosstab": {
"title": "Tagi a Twoje wskaźniki zdrowia",
"description": "Jak wskaźnik zdrowia różni się w dniach z danym tagiem w porównaniu z dniami bez niego.",
"pairLabel": "{metric} w dni z: {tag}",
"metricActiveEnergy": "Aktywna energia",
"metricSleepDuration": "Sen",
"metricNextDayRecovery": "Regeneracja następnego dnia",
"metricNextDayRestingHr": "Tętno spoczynkowe następnego dnia",
"metricNextDayHrv": "Zmienność rytmu serca następnego dnia",
"detailSameDay": "Średnio {withAvg} w {withDays} dniach z tym tagiem wobec {withoutAvg} bez niego.",
"detailNextDay": "Średnio {withAvg} dzień po {withDays} dniach z tym tagiem wobec {withoutAvg} w pozostałe dni."
},
"factorCrosstab": {
"title": "Twoje ocenione czynniki i parametry życiowe",
"description": "Jak parametr życiowy różni się w dniach, w których oceniłeś dany czynnik nisko, w porównaniu z dniami, w których oceniłeś go wysoko.",
"pairLabel": "{metric} w dni z: {factor}",
"metricSleepDuration": "Sen",
"metricSteps": "Kroki",
"metricRestingHeartRate": "Tętno spoczynkowe",
"metricHrv": "Zmienność rytmu serca",
"metricWeight": "Waga",
"metricBloodPressureSys": "Skurczowe",
"detail": "Średnio {lowAvg} w {lowDays} dniach z niską oceną {factor} wobec {highAvg} w dniach z wysoką oceną.",
"detailInverse": "Średnio {lowAvg} w Twoich {lowDays} gorszych dniach {factor} wobec {highAvg} w lepszych."
},
"discovery": {
"title": "Co się wyróżnia",
"subheading": "Wykryte relacje",
"footer": "Wyłonione z {tested} par dzień po dniu testowanych na wszystkich Twoich wskaźnikach, po korekcie fałszywych odkryć.",
"disclaimer": "Przefiltrowane statystycznie, ale wciąż obserwacyjne: wzorzec warty uwagi, nie przyczyna.",
"moodUp": "Wyższy {factor} zwykle wiąże się z lepszym nastrojem następnego dnia w Twoich danych.",
"moodDown": "Wyższy {factor} zwykle wiąże się z gorszym nastrojem następnego dnia w Twoich danych.",
"outcomeUp": "Lepszy nastrój zwykle wiąże się z wyższym {factor} następnego dnia w Twoich danych.",
"outcomeDown": "Lepszy nastrój zwykle wiąże się z niższym {factor} następnego dnia w Twoich danych.",
"stat": "{n} sparowanych dni, r = {r}, q = {q}",
"statLabel": "Jak to obliczono",
"explainerLabel": "Jak to obliczono",
"channel": {
"ALCOHOL": "spożycie alkoholu",
"WORKOUT_MINUTES": "minuty treningu",
"TRAINING_LOAD": "obciążenie treningowe"
}
},
"inTargetTitle": "W Twoim zakresie",
"dimensions": {
"title": "Samopoczucie",
"none": "Nie zapisano jeszcze żadnych danych o samopoczuciu.",
"window": "{days} dni",
"noneInWindow": "brak w tym okresie",
"higherIsMore": "wyżej = {anchor}",
"notRecorded": "Nie zapisano: {list}."
},
"contextComparison": {
"title": "Kontekst dnia a nastrój",
"description": "Jak wypadał nastrój w dotychczas zapisanych dniach z tym wpisem, w porównaniu z pozostałymi.",
"lower": "niższy",
"higher": "wyższy",
"statement": "W dniach z „{label}” nastrój był średnio {direction}: {withAvg} wobec {withoutAvg}.",
"counts": "{withDays} dni z, {withoutDays} dni bez",
"caveat": "To pokazuje związek, nie przyczynę."
},
"prognosis": {
"title": "Twoja samoocena",
"selfLabel": "Twoja ocena",
"expectedLabel": "Oczekiwane na podstawie twoich wzorców",
"band": "Zakres od {low} do {high}",
"statement": "Na podstawie twoich dotychczasowych wzorców dla {date} należałoby oczekiwać wartości około {value}. Wyliczone z {n} porównywalnych dni.",
"provisional": "Jeszcze wstępne: wzorzec opiera się na krótkim odcinku dni.",
"notToday": "To opisuje {date}, nie dzisiaj.",
"deviationWithin": "Twoja własna ocena mieści się w tym zakresie.",
"deviationAbove": "Twoja własna ocena leży {amount} punktów powyżej tego zakresu.",
"deviationBelow": "Twoja własna ocena leży {amount} punktów poniżej tego zakresu.",
"weightedTitle": "Co najbardziej zaważyło w porównaniu tego dnia",
"weightedUp": "{label}: liczyło się w stronę wyższej oczekiwanej wartości",
"weightedDown": "{label}: liczyło się w stronę niższej oczekiwanej wartości",
"caveat": "To porównanie z twoimi wcześniejszymi dniami, nie stwierdzenie, jak doszło do takiego przebiegu dnia.",
"learning": "Faza uczenia: zapisano {entries} z {threshold} dni. Porównanie pojawi się, gdy będzie ich dość.",
"noPattern": "W zapisanych dotąd {entries} dniach nic nie jest na tyle regularne, by porównać z nimi dzień. Gdy zapisujesz też kontekst dnia, więcej da się porównać.",
"featureValue": "{field}: {value}",
"loadError": "Nie udało się załadować wartości oczekiwanej na podstawie twoich wzorców."
},
"patterns": {
"title": "Wzorce w twoim nastroju",
"basedOn": "Na podstawie {subject} i {comparison} dni. Wzorzec, nie przyczyna.",
"previousDayHigher": "Po dniu poniżej twojej normy następny dzień jest zwykle lepszy ({subject} wobec {comparison} po dniu powyżej normy).",
"previousDayLower": "Dzień poniżej twojej normy zwykle przenosi się na następny ({subject} wobec {comparison} po dniu powyżej normy).",
"weekendHigher": "W weekendy twój nastrój jest zwykle lepszy ({subject} wobec {comparison} w dni robocze).",
"weekendLower": "W weekendy twój nastrój jest zwykle gorszy ({subject} wobec {comparison} w dni robocze).",
"bestWeekday": "{weekday} to zwykle twój najlepszy dzień ({subject} wobec {comparison} w pozostałe dni).",
"notesHigher": "W dni z notatką twój nastrój jest zwykle lepszy ({subject} wobec {comparison} bez notatki).",
"notesLower": "W dni z notatką twój nastrój jest zwykle gorszy ({subject} wobec {comparison} bez notatki).",
"delayedTagHigher": "Dzień po „{tag}” twój nastrój jest zwykle lepszy ({subject} wobec {comparison} w pozostałe dni).",
"delayedTagLower": "Dzień po „{tag}” twój nastrój jest zwykle gorszy ({subject} wobec {comparison} w pozostałe dni).",
"multipleEntriesHigher": "W dni z kilkoma wpisami twój nastrój jest zwykle lepszy ({subject} wobec {comparison} przy jednym wpisie).",
"multipleEntriesLower": "W dni z kilkoma wpisami twój nastrój jest zwykle gorszy ({subject} wobec {comparison} przy jednym wpisie)."
}
},
"derived": {
"coverage": {
"summary": "{present} z {required} danych ({percent}%)",
"ratioLabel": "{present}/{required}",
"historyDays": "Na podstawie {count} dni historii",
"missing": "Zapisuj te dane, aby uściślić wartość: {list}",
"summaryLabelled": "{label} ({percent}%)"
},
"scoreRing": {
"aria": "Wynik {score} na 100, {band}",
"ariaProvisional": "Wynik jeszcze niedostępny, za mało danych",
"provisionalCaption": "Wciąż za mało danych",
"band": {
"green": "dobry",
"yellow": "średni",
"red": "niski"
}
},
"provenance": {
"title": "Jak to jest obliczane",
"trigger": "Jak to jest obliczane",
"inputsLabel": "Dane wejściowe",
"noInputs": "Żadne dane nie potwierdzają jeszcze tej wartości.",
"methodLabel": "Metoda",
"window": "Z ostatnich {days} dni danych {source}",
"asOf": "na dzień {date}",
"standardLink": "Standard: {name}"
},
"vitals": {
"sectionTitle": "Twoje parametry życiowe",
"sectionSubtitle": "Spoczynkowe sygnały sercowo-naczyniowe i oddechowe na tle Twojej własnej linii bazowej",
"loadingLabel": "Wczytywanie parametrów życiowych",
"loadError": "Nie udało się teraz wczytać Twoich parametrów życiowych.",
"infoLabel": "Jak to jest obliczane?",
"building": "Budowanie Twojego typowego zakresu: {count} z {target} dni",
"typicalRange": "Typowe dla Ciebie: {low}–{high}",
"fitnessYounger": "Kondycja jak u osoby ~{years} lat młodszej",
"fitnessOlder": "Kondycja ~{years} lat powyżej Twojego wieku",
"fitnessTypical": "Kondycja typowa dla Twojego wieku",
"fitnessNoNorm": "Dodaj wiek i płeć, aby to ująć w kontekście",
"vascularBelow": "{years} lat poniżej Twojego wieku",
"vascularAbove": "{years} lat powyżej Twojego wieku",
"vascularMatch": "Zgodnie z Twoim wiekiem",
"vascularNoAge": "Dodaj datę urodzenia, aby to ująć w kontekście",
"hrvBand": {
"balanced": "Zrównoważone dla Ciebie",
"unbalanced": "Powyżej Twojego zwykłego zakresu",
"low": "Poniżej Twojego zwykłego zakresu"
},
"bmiCategory": {
"underweight": "Niedowaga (WHO)",
"normal": "Zakres prawidłowy (WHO)",
"overweight": "Nadwaga (WHO)",
"obese": "Otyłość (WHO)"
},
"sixMinuteBand": {
"green": "{percent}% wartości przewidywanej dla Twojego profilu",
"yellow": "{percent}% wartości przewidywanej dla Twojego profilu",
"red": "{percent}% wartości przewidywanej dla Twojego profilu"
},
"sixMinuteNoBand": "Dodaj wiek, wzrost, wagę i płeć, aby to ująć w kontekście",
"mobilitySectionTitle": "Mobilność i ciało"
},
"anatomy": {
"outOf": "/100",
"contributorsLabel": "Czynniki",
"contributorValue": "{value}, waga {weight}%",
"contributorMissing": "brak danych",
"insufficient": "Za mało danych, by to ocenić. Rejestruj dalej, a wynik pojawi się tutaj."
},
"composite": {
"SLEEP_SCORE": {
"title": "Wynik snu",
"description": "Przejrzysty wynik jakości snu z każdym podwynikiem.",
"method": "Mieszanka 0–100 z wystarczalności (sen vs zapotrzebowanie według wieku), wydajności (sen ÷ czas w łóżku), regularności (jak stabilny jest środek twojego snu), pory (vs twój zwykły środek snu) i struktury (udział REM + snu głębokiego). Podwyniki są ważone na nowo wokół tych, których dane nie wspierają; nic nie jest zmyślane.",
"sub": {
"sufficiency": "Wystarczalność",
"efficiency": "Wydajność",
"consistency": "Regularność",
"timing": "Pora",
"composition": "Struktura"
},
"gap": {
"fewNights": "za mało nocy ({count} z {needed})",
"noMainSleep": "ostatni dzień tylko z drzemką"
}
},
"READINESS": {
"title": "Gotowość",
"description": "Codzienny wskaźnik samopoczucia oparty na tym, jak twoje sygnały wypadają względem twojej własnej bazy.",
"method": "Mieszanka 0–100 z odchylenia tętna spoczynkowego, odchylenia HRV (SDNN), jakości snu, stabilności częstości oddechu i stabilności nastroju, każde mierzone względem twojej osobistej bazy. Wagi są renormalizowane na komponentach wspieranych przez twoje dane. Wskaźnik samopoczucia, nie wynik regeneracji ani kliniczny.",
"component": {
"rhr": "Tętno spoczynkowe",
"hrv": "HRV (SDNN)",
"sleep": "Sen",
"respiratory": "Częstość oddechu",
"mood": "Stabilność nastroju"
}
},
"VITALS_BASELINE": {
"method": "Twój osobisty typowy zakres to mediana Twoich dziennych wartości w danym okresie ± odporne rozproszenie (skalowane medianowe odchylenie bezwzględne). Śledzi TWOJE odczyty, a nie normę populacyjną, więc wartość w obrębie pasma jest typowa dla Ciebie."
},
"HRV_BALANCE": {
"method": "Twoja niedawna średnia HRV (SDNN) na tle Twojej własnej ruchomej linii bazowej (mediana ± odporne rozproszenie). Zrównoważone oznacza, że mieści się w Twoim osobistym zakresie; pasmo budowane jest z Twoich danych, nigdy z progu populacyjnego."
},
"BMI": {
"method": "Masa ÷ wzrost², sklasyfikowane według kategorii WHO dla dorosłych (niedowaga / norma / nadwaga / otyłość). To tylko wskaźnik przesiewowy, który nie odróżnia mięśni od tłuszczu."
},
"FITNESS_AGE": {
"method": "Twoje VO₂max odniesione do percentyli wydolności krążeniowo-oddechowej według wieku i płci, wyrażone jako różnica wieku sprawnościowego. VO₂max to szacunek Twojego urządzenia, tutaj nigdy nie jest przeliczany ponownie."
},
"VASCULAR_AGE_DELTA": {
"method": "Szacunek wieku naczyniowego / prędkości fali tętna z Twojego urządzenia porównany z Twoim wiekiem metrykalnym, wyrażony jako różnica w latach. Szacunek pochodzi z urządzenia; HealthLog jedynie go przedstawia.",
"caveat": "Własny szacunek Twojego urządzenia, jedynie przedstawiony: opisowy, nie kliniczna ocena naczyniowa.",
"description": "Jak szacunek wieku naczyniowego Twojego urządzenia wypada na tle Twojego wieku metrykalnego."
},
"COINCIDENT_DEVIATION": {
"method": "Sygnał pojawiający się, gdy co najmniej dwa Twoje parametry życiowe wykraczają tego samego dnia poza swój osobisty typowy zakres. Każde pasmo to odporna mediana ± k·MAD Twojej historii, więc dostosowuje się do Ciebie, a nie do progu populacyjnego.",
"caveat": "Sygnał z Twoich własnych linii bazowych: opisowy, nie diagnoza ani alarm kliniczny."
},
"RECOVERY_SCORE": {
"method": "Nocny wskaźnik regeneracji 0–100 łączący Twoje HRV, tętno spoczynkowe i sen względem Twojej linii bazowej. Wyższy oznacza lepszą regenerację. Liczony raz na noc i tu tylko odczytywany, nigdy nieprzeliczany na bieżąco.",
"description": "Nocny wskaźnik regeneracji z Twojego HRV, tętna spoczynkowego i snu."
},
"STRESS_SCORE": {
"method": "Nocny wskaźnik stresu 0–100 na podstawie kształtu Twojego HRV w ciągu dnia względem linii bazowej. Wyższy oznacza większe obciążenie fizjologiczne.",
"description": "Nocny wskaźnik stresu na podstawie kształtu Twojego HRV w ciągu dnia."
},
"STRAIN_SCORE": {
"method": "Nocny wskaźnik obciążenia 0–100 na podstawie Twojego obciążenia aktywnością ważonego tętnem (model impulsu treningowego typu TRIMP). Wyższy oznacza cięższy dzień.",
"anchorPersonal": "Zakotwiczony w Twoim własnym niedawnym obciążeniu z dni treningowych. Oceniany względem Twojego typowego wysiłku, więc naprawdę ciężki dzień dla Ciebie wypada wysoko.",
"anchorPopulation": "Oceniany względem ogólnego punktu odniesienia, gdy dopiero budujesz historię treningów; gdy zbierzesz jej wystarczająco, przełącza się na Twój własny typowy wysiłek.",
"description": "Nocny wskaźnik obciążenia aktywnością z Twojego wysiłku ważonego tętnem, względem Twojego typowego wysiłku.",
"deviceCaption": "Dzienne obciążenie z Twojego urządzenia: {value} z {max}",
"deviceSource": "Dopóki HealthLog nie obliczy w nocy własnej wartości, karta pokazuje dzienne obciążenie z Twojego urządzenia, przeliczone na 0–100."
},
"WRIST_TEMPERATURE_BASELINE": {
"method": "Twoja typowa nocna temperatura nadgarstka to mediana Twoich nocnych odczytów w danym okresie, ± solidny rozrzut (przeskalowane medianowe odchylenie bezwzględne). Śledzi TWOJE odczyty: ostatnia noc jest pokazana jako odchylenie od Twojej własnej bazy, a nie od normy populacyjnej.",
"caveat": "Tylko osobiste pasmo odchylenia: opisowe, nie sygnał choroby, gorączki ani fazy cyklu. Interpretujesz je samodzielnie."
},
"STAIR_ASCENT_SPEED_BASELINE": {
"method": "Twoje typowe tempo wchodzenia po schodach to mediana Twoich dziennych wartości w danym okresie, ± solidny rozrzut (przeskalowane medianowe odchylenie bezwzględne). Pasmo jest budowane z Twoich danych. Nie ma populacyjnego progu prędkości na schodach, bo tempo zależy od geometrii schodów i długości nóg.",
"caveat": "Osobiste pasmo trendu mobilności: opisowe, nie ocena kruchości ani ryzyka upadku."
},
"STAIR_DESCENT_SPEED_BASELINE": {
"method": "Twoje typowe tempo schodzenia po schodach to mediana Twoich dziennych wartości w danym okresie, ± solidny rozrzut (przeskalowane medianowe odchylenie bezwzględne). Pasmo jest budowane z Twoich danych. Nie ma populacyjnego progu prędkości na schodach, bo tempo zależy od geometrii schodów i długości nóg.",
"caveat": "Osobiste pasmo trendu mobilności: opisowe, nie ocena kruchości ani ryzyka upadku."
},
"SIX_MINUTE_WALK_BAND": {
"method": "SZACOWANY przez Twoje urządzenie dystans sześciominutowego marszu odniesiony do wzorca Enrighta i Sherrilla dla Twojego wieku, wzrostu, wagi i płci, jako procent wartości przewidywanej. Dystans to szacunek urządzenia i nigdy nie jest tu przeliczany. Bez Twojego wieku, wzrostu, wagi i płci procent jest ukryty i pokazywane są tylko dystans i trend.",
"caveat": "Szacunek odniesiony do opublikowanego wzorca: sygnał wydolności funkcjonalnej, nie kliniczny test sześciominutowego marszu ani diagnoza. Wzorzec opracowano dla wieku 40–80 lat; poza tym zakresem wartość przewidywana jest ekstrapolacją."
},
"TRAJECTORY": {
"method": "Prosta dopasowana metodą najmniejszych kwadratów do Twoich ostatnich wartości dziennych i rzutowana w przód na krótki horyzont, z klasycznym przedziałem predykcji, który poszerza się tym bardziej, im dalej sięga. Obliczana tylko wtedy, gdy ostatni trend jest dość wyraźny, a Twoja historia wystarczająco długa i aktualna; w przeciwnym razie linia nie jest rysowana.",
"caveat": "Rzut Twojego własnego ostatniego trendu, nie prognoza, cel ani kliniczne przewidywanie. Sprawdza się tylko, jeśli ostatni wzorzec się utrzyma; zacieniony pas pokazuje, jak szybko ta pewność maleje."
},
"SAME_TIME_BASELINE": {
"method": "Twoja dzisiejsza suma narastająca zestawiona z medianą tej samej godziny lokalnej z ostatnich czterech tygodni, z odpornym pasmem mediana ± MAD wokół niej. Liczą się tylko dni z wystarczającą liczbą zapisów, a porównanie nie pojawia się, dopóki nie ma ich co najmniej czternastu.",
"caveat": "Porównanie z twoją własną niedawną historią, a nie cel. Mówi, gdzie dziś jesteś względem swojego zwykłego wzorca o tej godzinie, i nic o tym, czy ten wzorzec jest dla ciebie właściwy."
}
},
"scores": {
"sectionTitle": "Twoje wskaźniki zdrowia",
"sectionSubtitle": "Złożone wartości regeneracji, stresu i obciążenia odczytane z Twoich połączonych urządzeń",
"loadError": "Nie udało się teraz wczytać Twoich wyników dobrostanu.",
"loadingLabel": "Wczytywanie Twoich wskaźników zdrowia",
"recovery": "Wynik regeneracji",
"recoveryCrossLink": "Zobacz dane regeneracji i obciążenia z Twojego urządzenia",
"stress": "Stres",
"strain": "Obciążenie",
"historyTitle": "Przebieg",
"historyWindow": "Ostatnie {days} dni"
},
"coincident": {
"label": "Kilka parametrów poza bazą",
"summary": "Dziś {count} Twoich parametrów życiowych znalazło się poza osobistym zakresem.",
"vitals": "Poza zakresem: {list}",
"cardTitle": "Sygnały dnia",
"allClear": "Dziś wszystkie Twoje parametry życiowe mieszczą się w osobistym zakresie.",
"allClearMeta": "Sprawdzono {count} Twoich parametrów względem Twojego typowego zakresu.",
"watch": "Dziś jeden parametr jest poza swoim zwykłym zakresem.",
"watchVital": "Poza zakresem: {vital}. Często to jednorazowy odczyt, warto obserwować przez kilka dni.",
"firedHeadline": "Dziś {count} Twoich parametrów życiowych jest poza osobistym zakresem.",
"factors": "Możliwe czynniki (nigdy przyczyna): intensywny trening, słaby sen, alkohol, wysokość, stres lub choroba. To wskazówka z Twoich własnych baz, nie diagnoza.",
"building": "Budujemy Twoje osobiste bazy. Zarejestruj jeszcze kilka dni, a to się pojawi.",
"illnessExplained": "Te odchylenia prawdopodobnie wynikają z zapisanego schorzenia."
},
"trajectory": {
"cardTitle": "Krótkoterminowy rzut",
"headline": "Jeśli ten wzorzec się utrzyma: następne {days} dni",
"range": "Rzutowane na około {low}–{high} {unit} za {days} dni.",
"caveat": "Rzut Twojego własnego ostatniego trendu, nie prognoza. Zacieniony pas poszerza się, pokazując, jak szybko rośnie niepewność.",
"insufficient": "Jeszcze brak wystarczająco wyraźnego trendu do rzutowania. Rejestruj dalej, a rzut pojawi się, gdy ostatni wzorzec będzie dość wyraźny.",
"daysNeeded": "Potrzeba jeszcze około {count} dni rejestrowania, zanim pojawi się rzut."
},
"sameTime": {
"sectionTitle": "Dziś do tej pory",
"sectionSubtitle": "Twoje sumy narastające względem tego, co o tej godzinie jest u ciebie zwykłe",
"learning": "Uczę się twojego zwykłego dnia: {count} z {target} dni",
"framing": "Zwykle do {time}: {typical} {unit}",
"comparisonLabel": "Twój zwykły dzień"
}
},
"cardioFitness": {
"title": "Wydolność",
"description": "Twoje VO₂ max w czasie, główna miara wydolności tlenowej.",
"chartTitle": "VO₂ max (mL/(kg·min))",
"emptyState": {
"title": "Brak danych o wydolności",
"description": "Wartości VO₂ max pojawią się tutaj, gdy Apple Health zsynchronizuje je z Twoich treningów."
}
},
"navCardioFitness": "Wydolność",
"cardioRecovery": {
"title": "Regeneracja serca",
"description": "O ile spada tętno minutę po szczytowym wysiłku.",
"chartTitle": "Regeneracja serca (bpm)",
"emptyState": {
"title": "Brak danych o regeneracji serca",
"description": "Wartości regeneracji serca pojawią się tutaj, gdy Apple Health zsynchronizuje je z treningu."
}
},
"navCardioRecovery": "Regeneracja serca",
"wristTemperature": {
"title": "Temperatura nadgarstka",
"description": "Nocna temperatura nadgarstka, odniesiona do Twojej wartości bazowej.",
"chartTitle": "Temperatura nadgarstka",
"emptyState": {
"title": "Brak danych o temperaturze nadgarstka",
"description": "Wartości pojawią się tutaj, gdy Apple Health zsynchronizuje nocne noszenie."
}
},
"navWristTemperature": "Temp. nadgarstka",
"falls": {
"title": "Upadki",
"description": "Poważne upadki wykryte przez Apple Watch, liczone na dzień.",
"chartTitle": "Upadki na dzień",
"emptyState": {
"title": "Brak danych o upadkach",
"description": "Wykryte upadki pojawią się tutaj, gdy Apple Health się zsynchronizuje. Celem jest brak upadków."
}
},
"navFalls": "Upadki",
"sixMinuteWalk": {
"title": "Marsz 6-minutowy",
"description": "Szacunek Apple, jak daleko możesz przejść w sześć minut.",
"chartTitle": "Dystans w 6 minut (m)",
"emptyState": {
"title": "Brak danych o marszu 6-minutowym",
"description": "Szacunki pojawią się tutaj, gdy Apple Health się zsynchronizuje."
}
},
"navSixMinuteWalk": "Marsz 6 min",
"stairAscentSpeed": {
"title": "Prędkość wchodzenia po schodach",
"description": "Jak szybko wchodzisz po schodach, mierzone przez iPhone'a lub Watch.",
"chartTitle": "Prędkość wchodzenia (m/s)",
"emptyState": {
"title": "Brak danych o wchodzeniu po schodach",
"description": "Wartości pojawią się tutaj, gdy Apple Health się zsynchronizuje."
}
},
"navStairAscentSpeed": "Wchodzenie",
"stairDescentSpeed": {
"title": "Prędkość schodzenia po schodach",
"description": "Jak szybko schodzisz po schodach, mierzone przez iPhone'a lub Watch.",
"chartTitle": "Prędkość schodzenia (m/s)",
"emptyState": {
"title": "Brak danych o schodzeniu po schodach",
"description": "Wartości pojawią się tutaj, gdy Apple Health się zsynchronizuje."
}
},
"navStairDescentSpeed": "Schodzenie",
"breathingDisturbances": {
"title": "Zaburzenia oddychania",
"description": "Jak często Twój oddech był zakłócany podczas snu.",
"chartTitle": "Zaburzenia oddychania we śnie",
"emptyState": {
"title": "Brak danych o zaburzeniach oddychania",
"description": "Wartości pojawią się tutaj, gdy Apple Health zsynchronizuje je z obsługiwanego Apple Watch."
}
},
"navBreathingDisturbances": "Oddychanie",
"rhythmEvents": {
"sectionTitle": "Powiadomienia zdrowotne urządzenia",
"sectionIntro": "Powiadomienia, które zegarek wysłał samodzielnie. HealthLog jedynie je wyświetla: nie wykrywa ich, nie potwierdza ani nie interpretuje.",
"loadError": "Nie udało się wczytać powiadomień urządzenia.",
"disclaimer": "To alerty wygenerowane przez Twoje urządzenie za pomocą jego wbudowanego wykrywania. Są tu pokazywane wyłącznie dla Twojej informacji. To nie jest ocena medyczna wykonana przez HealthLog, a HealthLog nie diagnozuje żadnych schorzeń. Jeśli powiadomienie Cię niepokoi, skontaktuj się z lekarzem.",
"event": {
"irregularRhythm": "Powiadomienie o nieregularnym rytmie",
"highHeartRate": "Powiadomienie o wysokim tętnie",
"lowHeartRate": "Powiadomienie o niskim tętnie",
"walkingSteadiness": "Alert o stabilności chodu",
"breathingDisturbance": "Zaburzenie oddychania podczas snu"
},
"verdict": {
"irregular": "Twoje urządzenie wykryło możliwy nieregularny rytm.",
"notDetected": "Twoje urządzenie nie wykryło nieregularnego rytmu.",
"inconclusive": "Twoje urządzenie nie mogło wykonać pomiaru.",
"low": "Twoje urządzenie wykryło niską stabilność chodu.",
"veryLow": "Twoje urządzenie wykryło bardzo niską stabilność chodu.",
"fired": "Twoje urządzenie zgłosiło to zdarzenie."
}
},
"trendDescriptor": {
"rising": "Rośnie w ciągu 30 dni ({delta}{unit}).",
"falling": "Spada w ciągu 30 dni ({delta}{unit}).",
"stable": "Stabilnie przez ostatnie 30 dni.",
"moodImproved": "Nastrój nieco się poprawił w ciągu 30 dni.",
"moodDeclined": "Nastrój nieco się pogorszył w ciągu 30 dni.",
"moodStable": "Nastrój pozostał stabilny przez ostatnie 30 dni."
},
"target": {
"heading": "Cel"
},
"settings": {
"overviewTitle": "Uporządkuj przegląd",
"overviewDescription": "Pokaż lub ukryj sekcje i ustaw ich kolejność w przeglądzie Analiz."
},
"pillOrder": {
"title": "Sortuj chipy nawigacyjne",
"description": "Przeciągnij chipy w wybranej kolejności i pokaż lub ukryj je ikoną oka.",
"dragHandle": "Zmień kolejność",
"saveSuccess": "Zapisano kolejność chipów",
"saveError": "Zapisanie kolejności chipów nie powiodło się.",
"save": "Zapisz",
"empty": "Brak dostępnych chipów nawigacyjnych.",
"detail": "Ukryte strony szczegółów znikają również z górnej nawigacji."
},
"customize": "Dostosuj Analizy",
"regenerateRateLimited": "Osiągnięto limit odświeżeń. Spróbuj ponownie później.",
"regenerateUnavailable": "Nie otrzymano nowej analizy. Spróbuj ponownie później.",
"regenerateError": "Trwa odświeżanie. Spróbuj ponownie za chwilę.",
"regenerateSettling": "Ocena jest wciąż przygotowywana",
"regenerateSettleFailed": "Nie udało się ukończyć odświeżania. Spróbuj ponownie później.",
"deviceScore": {
"learning": "Wciąż poznajemy Twoją linię bazową. Kilka kolejnych nocy uzupełni trend.",
"average": "Średnia z 30 dni {value}",
"unitScore": "pkt",
"unitMinutes": "min",
"unitBpm": "ud./min",
"unitKj": "kJ",
"unitLoad": "obciążenie"
},
"sleepQuality": {
"title": "Jakość snu",
"subtitle": "Nocne wyniki z Twojego urządzenia"
},
"recovery": {
"title": "Regeneracja",
"description": "Jak dobrze Twój organizm się zregenerował: sygnały regeneracji, obciążenia i load, które Twoje urządzenie rejestruje w nocy.",
"scoreCrossLink": "Zobacz łączny wynik regeneracji",
"emptyTitle": "Brak danych o regeneracji",
"empty": "Ta strona wypełnia się wartościami regeneracji, obciążenia i obciążenia treningowego z WHOOP lub Polar oraz poziomem odporności z Oura.",
"emptyOuraPermission": "Poziom odporności Oura wymaga uprawnienia do danych o stresie, więc połącz Oura ponownie raz w Integracjach i zezwól na nie.",
"emptyOuraNoResilience": "Oura jest połączona, a jej poziom odporności pojawi się tutaj, gdy tylko Oura go dostarczy.",
"emptyAction": "Otwórz integracje",
"block": {
"ansChargeExplainer": "Jak naładowany jest Twój autonomiczny układ nerwowy na dany dzień: odczyt regeneracji oparty na nocnych sygnałach serca i oddechu.",
"dayStrainExplainer": "Dzienne obciążenie sercowo-naczyniowe na skali wysiłku Twojego urządzenia. Odczytuj je w odniesieniu do regeneracji, nie jako cel sam w sobie.",
"workoutStrainExplainer": "Jak wymagający był pojedynczy trening na tej samej skali wysiłku, czyli koszt sercowo-naczyniowy tej sesji.",
"cardioLoadExplainer": "Przybliżenie obciążenia treningowego, które śledzi nagromadzone obciążenie sercowo-naczyniowe. Porównuj je z własnymi ostatnimi dniami.",
"averageHeartRateExplainer": "Twoje średnie tętno w ciągu całego dnia lub cyklu, zgodnie z odczytem Twojego urządzenia.",
"maxHeartRateExplainer": "Twoje maksymalne tętno w ciągu całego dnia lub cyklu, zgodnie z odczytem Twojego urządzenia.",
"energyExpenditureKjExplainer": "Energia, którą Twój organizm wydatkował w ciągu dnia, w kilodżulach, zgodnie z natywnym odczytem urządzenia.",
"bodyBatteryExplainer": "Twoja rezerwa energii w skali Garmina od 0 do 100, najwyższy poziom dnia. Odpoczynek i sen ją uzupełniają, stres i aktywność ją zużywają.",
"trainingReadinessExplainer": "Jak bardzo Twoje ciało jest gotowe na ciężki trening, w skali Garmina od 0 do 100. Wartość przychodzi przez skonfigurowany przez Ciebie most, bo Garmin nie udostępnia jej bezpośrednio.",
"stressLevelExplainer": "Średni całodzienny poziom stresu według Garmina w skali od 0 do 100, wyliczany ze zmienności rytmu serca. Niżej znaczy spokojniej.",
"acuteTrainingLoadExplainer": "Ostre obciążenie treningowe Garmina: ważone obciążenie z Twoich aktywności z ostatnich siedmiu dni. Wartość przychodzi przez skonfigurowany przez Ciebie most. Porównuj je ze swoimi ostatnimi tygodniami."
},
"loadError": "Nie udało się załadować Twoich wartości regeneracji."
},
"bodyTempDeviation": {
"title": "Odchylenie temperatury ciała",
"subtitle": "Nocne odchylenie od Twojej linii bazowej"
},
"resilience": {
"explainer": "Jak dobrze Twój organizm równoważy codzienne obciążenie z regeneracją, odczytane z nocnych sygnałów z ostatnich dni.",
"learning": "Wciąż poznajemy Twoją odporność. Kilka kolejnych dni ustali poziom.",
"band": {
"limited": "Ograniczona",
"adequate": "Wystarczająca",
"solid": "Solidna",
"strong": "Silna",
"exceptional": "Wyjątkowa"
},
"trend": {
"above": "Powyżej Twojej ostatniej średniej.",
"steady": "Zgodnie z Twoją ostatnią średnią.",
"below": "Poniżej Twojej ostatniej średniej."
}
},
"briefing": {
"memory": {
"forwardWatch": "Warto mieć na oku {metric}.",
"forwardHolding": "Na razie wszystko jest stabilne."
}
},
"updatedTodayAt": "Zaktualizowano dzisiaj, {time}",
"updatedYesterday": "Zaktualizowano wczoraj",
"updatedOn": "Zaktualizowano {date}",
"healthStatus": {
"sectionTitle": "Co się zmieniło",
"subtitle": "Sygnały odbiegające od Twojego zwykłego zakresu.",
"deviationAbove": "{vital} jest powyżej Twojego zwykłego zakresu.",
"deviationBelow": "{vital} jest poniżej Twojego zwykłego zakresu.",
"shiftUp": "{vital} przesunął się w górę względem Twojej ostatniej normy.",
"shiftDown": "{vital} przesunął się w dół względem Twojej ostatniej normy.",
"rangeContext": "Teraz {value}, zwykle {low}–{high}.",
"rangeContextTimeOfDay": "Teraz {value}, zwykle {low}–{high} o tej porze dnia.",
"shiftContext": "Około {before} wcześniej, {after} od tego czasu.",
"shiftDays": "Na podstawie {before} dni wcześniej i {after} od tego czasu."
},
"breathingScreening": {
"sectionTitle": "Oddychanie podczas snu",
"subtitle": "Sygnał przesiewowy z Twoich danych o śnie.",
"classificationElevated": "Twoje urządzenie wykryło podwyższone zaburzenia oddychania.",
"classificationNotElevated": "Klasyfikacja Twojego urządzenia nie jest podwyższona.",
"trendUp": "Wzrost względem wcześniejszych nocy.",
"trendDown": "Spadek względem wcześniejszych nocy.",
"trendStable": "Stabilnie względem wcześniejszych nocy.",
"nights": "Śledzono {count} nocy",
"indexLine": "ostatni średni indeks {value}",
"eventsFlagged": "{count} zdarzeń oznaczonych przez urządzenie",
"disclaimer": "To sygnał przesiewowy, a nie diagnoza. Skonsultuj się z lekarzem."
},
"labsChanges": {
"sectionTitle": "Od ostatnich badań",
"subtitle": "Jak najnowsze wyniki wypadają na tle poprzednich badań.",
"statusInRange": "w normie",
"statusBelow": "poniżej zakresu",
"statusAbove": "powyżej zakresu",
"directionFlat": "bez zmian"
},
"navGripStrength": "Siła chwytu",
"navPainNrs": "Ból",
"navWaistCircumference": "Talia",
"navWaistToHeight": "Talia/wzrost",
"gripStrength": {
"title": "Siła chwytu",
"description": "Maksymalna siła chwytu dłoni, solidny wskaźnik ogólnej siły ciała. Poniżej progu zależnego od płci (mężczyźni 27 kg, kobiety 16 kg) sygnalizuje prawdopodobną sarkopenię; odczyt prowadzi Twój własny trend.",
"chartTitle": "Siła chwytu",
"emptyState": {
"title": "Brak pomiarów siły chwytu",
"description": "Zapisz pomiar z dynamometru ręcznego (zanotuj najlepszy z kilku ściśnięć), a trend pojawi się tutaj.",
"cta": "Zapisz siłę chwytu"
},
"coachPrefill": "Nie zapisałem jeszcze siły chwytu. Co mówi o zdrowiu moich mięśni i jak ją zmierzyć oraz poprawić?"
},
"pain": {
"title": "Ból (0–10)",
"description": "Zgłaszana przez pacjenta intensywność bólu w skali numerycznej 0–10, gdzie 0 to brak bólu, a 10 najgorszy wyobrażalny. Utrzymująca się zmiana o 2 punkty to sygnał do obserwacji.",
"chartTitle": "Ból (0–10)",
"emptyState": {
"title": "Brak ocen bólu",
"description": "Zapisz, jak odczuwasz ból teraz, w skali 0–10, a trend pojawi się tutaj.",
"cta": "Zapisz ocenę bólu"
},
"coachPrefill": "Nie zapisałem jeszcze ocen bólu. Jak śledzić ból w skali 0–10 i co liczy się jako istotna zmiana?"
},
"waist": {
"title": "Obwód talii",
"description": "Obwód talii w centymetrach, wskaźnik tłuszczu brzusznego. Próg zwiększonego ryzyka WHO zależy od płci (mężczyźni 94 cm, kobiety 80 cm); odczyt prowadzi Twój własny trend.",
"chartTitle": "Obwód talii",
"emptyState": {
"title": "Brak pomiarów talii",
"description": "Zmierz talię w połowie odległości między najniższym żebrem a kością biodrową, na końcu normalnego wydechu, i zapisz tutaj.",
"cta": "Zapisz obwód talii"
},
"coachPrefill": "Nie zapisałem jeszcze pomiarów talii. Jak prawidłowo zmierzyć talię i co oznacza ta liczba dla mojego zdrowia?"
},
"waistToHeight": {
"title": "Stosunek talii do wzrostu",
"description": "Twoja talia podzielona przez wzrost: najbardziej uniwersalna pojedyncza liczba. Utrzymanie go poniżej 0,5 (talia mniejsza niż połowa wzrostu) to prosty cel.",
"chartTitle": "Stosunek talii do wzrostu",
"emptyState": {
"title": "Brak stosunku talii do wzrostu",
"description": "Zapisz stosunek talii do wzrostu, a trend pojawi się tutaj. Zasada: utrzymuj talię poniżej połowy wzrostu.",
"cta": "Zapisz stosunek talii do wzrostu"
},
"coachPrefill": "Nie zapisałem jeszcze stosunku talii do wzrostu. Dlaczego to przydatna liczba i jak utrzymać ją poniżej 0,5?"
},
"ecg": {
"sectionTitle": "Zapisy EKG",
"loadError": "Nie udało się wczytać Twoich zapisów EKG.",
"backToList": "Powrót do zapisów",
"clinicianNote": "Jeśli ten wynik Cię niepokoi, omów ten zapis z lekarzem.",
"resultAttribution": "Zarejestrowany wynik: {result}, zgodnie z informacją z urządzenia rejestrującego.",
"result": {
"irregular": "Wykryto migotanie przedsionków",
"notDetected": "Brak oznak migotania przedsionków",
"inconclusive": "Zapis niejednoznaczny",
"none": "Nie zgłoszono wyniku"
},
"meta": {
"recorded": "Zarejestrowano",
"duration": "Czas trwania",
"lead": "Odprowadzenie",
"averageHeartRate": "Średnie tętno",
"samplingRate": "Częstotliwość próbkowania",
"leadSingle": "Jedno odprowadzenie (odprowadzenie I)",
"durationValue": "{seconds} s",
"bpmValue": "{bpm} bpm",
"hzValue": "{hz} Hz",
"unknown": "—"
},
"waveform": {
"ariaLabel": "Zapis EKG zarejestrowany {date}, czas trwania {duration}, średnie tętno {heartRate}, zarejestrowany wynik: {result}."
},
"crossLink": {
"title": "Zapisy EKG",
"recordingsOne": "1 zapis w kartotece.",
"recordingsMany": "Zapisy w kartotece: {count}.",
"latestResult": "Ostatni wynik urządzenia: {result}.",
"cta": "Zobacz zapisy"
},
"emptyTitle": "Brak zapisów EKG",
"emptyDescription": "Zapisy EKG synchronizują się z kompatybilnego urządzenia jednoodprowadzeniowego. Gdy urządzenie prześle zapis, pojawi się tutaj.",
"emptyCta": "Połącz urządzenie"
},
"intradayPulse": {
"title": "Tętno w ciągu dnia",
"caption": "Uśrednione w krokach co 10 minut.",
"hourlyNote": "Pokazano średnią godzinową dla tego dnia. Ostatnie dni pokazują pełny, 10-minutowy szczegół.",
"empty": "Za mało pomiarów z tego dnia, aby pokazać jego przebieg.",
"coverageOne": "Na podstawie 1 pomiaru w ciągu {hours}h.",
"coverageMany": "Na podstawie {count} pomiarów w ciągu {hours}h.",
"baseline": "Spoczynek",
"today": "Dziś",
"previousDay": "Poprzedni dzień",
"nextDay": "Następny dzień",
"tension": {
"morning": "Utrzymujący się podwyższony spoczynek rano: możliwe napięcie.",
"afternoon": "Utrzymujący się podwyższony spoczynek po południu: możliwe napięcie.",
"evening": "Utrzymujący się podwyższony spoczynek wieczorem: możliwe napięcie.",
"night": "Utrzymujący się podwyższony spoczynek w nocy: możliwe napięcie."
}
},
"navEcg": "EKG",
"sectionLoadError": "Nie udało się wczytać tej sekcji.",
"aiSetupHint": {
"title": "AI jest opcjonalne",
"body": "Wszystko tutaj działa bez AI. Jeśli chcesz codzienne podsumowanie, krótkie notatki o pomiarach i Coacha, możesz podłączyć dostawcę AI.",
"settingsBody": "HealthLog działa w pełni bez AI. Podłącz dostawcę poniżej, jeśli chcesz codzienne podsumowanie, krótkie notatki o pomiarach i Coacha.",
"action": "Skonfiguruj AI",
"dismiss": "Nie teraz"
},
"bmiHeight": {
"coachPrefill": "Nie podałem jeszcze wzrostu. Dlaczego BMI ma znaczenie i co powinienem wiedzieć, zanim go ustawię?"
},
"medicationsEmpty": {
"coachPrefill": "Nie dodałem jeszcze żadnych leków. Co powinienem wiedzieć, zanim zacznę tu śledzić przestrzeganie zaleceń?"
},
"scoreHistory": {
"healthTitle": "Przebieg wyniku zdrowia",
"healthDescription": "Twój wynik zdrowia dzień po dniu, taki jak był pokazywany każdego dnia.",
"emptyDescription": "W tym okresie nie zapisano jeszcze żadnego wyniku.",
"usualRange": "Zacieniowane: twój zwykły zakres, od {lo} do {hi}.",
"seam": "Linia przerywa się tam, gdzie zmieniło się to, co liczy się do wyniku."
},
"bpTimeOfDay": {
"title": "Według pory dnia",
"description": "Twoje średnie ciśnienie w każdej porze dnia, w zakresie wykresu.",
"part": {
"morning": "Rano",
"midday": "W południe",
"evening": "Wieczorem"
},
"filterAll": "Cały dzień",
"filterLabel": "Pokaż na wykresie",
"readingsOne": "{count} pomiar",
"readingsFew": "{count} pomiary",
"readingsOther": "{count} pomiarów",
"notEnough": "Za mało pomiarów",
"pulse": "Tętno {value} bpm",
"difference": "Rano minus wieczór: {systolic}/{diastolic} mmHg.",
"differencePending": "Rano i wieczór zostaną porównane, gdy każda z tych pór będzie mieć co najmniej {min} pomiary.",
"hours": "Rano {morning}, w południe {midday}, wieczorem {evening}, w Twojej strefie czasowej.",
"hourRange": "{start}–{end}",
"emptyTitle": "Brak pełnych pomiarów w tym zakresie",
"emptyDescription": "Tutaj pojawią się pomiary z wartością skurczową i rozkurczową.",
"error": "Nie udało się wczytać średnich według pory dnia.",
"chartTitle": {
"morning": "Ciśnienie tętnicze rano",
"midday": "Ciśnienie tętnicze w południe",
"evening": "Ciśnienie tętnicze wieczorem"
},
"statsLabel": "{series}, {part}",
"statsPart": {
"morning": "rano",
"midday": "w południe",
"evening": "wieczorem"
}
}
},
"thresholds": {
"defaultLabel": "Domyślne",
"overrideToggleLabel": "Własne wartości",
"resetAction": "Przywróć wartość domyślną",
"resetAllAction": "Przywróć wszystkie wartości domyślne",
"resetAllTitle": "Zresetować wszystkie własne zakresy?",
"resetAllBody": "Każda metryka wraca do zakresu domyślnego. Ustawione wartości nie są nigdzie indziej zapisane i nie da się ich odzyskać.",
"resetAllConfirm": "Zresetuj wszystkie",
"resetTitle": "Zresetować ten zakres?",
"resetBody": "Metryka wraca do zakresu domyślnego. Ustawione wartości nie są nigdzie indziej zapisane i nie da się ich odzyskać.",
"resetConfirm": "Zresetuj zakres",
"minLabel": "Min",
"maxLabel": "Maks",
"unitSuffix": "({unit})",
"outOfBoundsHint": "Dozwolony zakres: {min}–{max} {unit}",
"overrideWarning": "Wartości poza wytycznymi mogą prowadzić do niezdrowych celów. Personalizuj tylko po konsultacji z lekarzem.",
"saveSuccess": "Cele zaktualizowane",
"saveError": "Nie udało się zapisać celów",
"resetSuccess": "Przywrócono wartość domyślną",
"sourceOverride": "Własna wartość",
"metricWeight": "Waga",
"metricBpSys": "Ciśnienie tętnicze (skurczowe)",
"metricBpDia": "Ciśnienie tętnicze (rozkurczowe)",
"metricPulse": "Tętno spoczynkowe",
"metricBodyFat": "Tkanka tłuszczowa",
"metricSleep": "Czas snu",
"metricSteps": "Kroki/dzień",
"metricGlucoseFasting": "Glikemia: na czczo",
"metricGlucosePostprandial": "Glikemia: po posiłku",
"metricGlucoseRandom": "Glikemia: dowolna",
"metricGlucoseBedtime": "Glikemia: przed snem",
"metricBodyWater": "Woda w organizmie",
"metricBoneMass": "Masa kostna",
"metricOxygenSaturation": "Saturacja tlenem (SpO₂)",
"unsetExplanation": "Brak własnej wartości, aktywna jest wartość domyślna.",
"cardTitle": "Zakresy według metryki"
},
"onboarding": {
"errorGeneric": "Coś poszło nie tak podczas kończenia konfiguracji. Spróbuj ponownie.",
"tour": {
"stepOf": "Krok {current} z {total}",
"next": "Dalej",
"back": "Wstecz",
"skip": "Pomiń tour",
"done": "Rozumiem",
"steps": {
"dashboardOverview": {
"title": "Twój pulpit",
"body": "Pulpit zbiera wszystkie moduły na jednym ekranie. Przytrzymaj kafelek, aby go przestawić lub ukryć (Ustawienia → Układ pulpitu). Kafelek jest wart tyle, ile dane za nim, a kolejne moduły je wypełniają."
},
"quickAdd": {
"title": "Zapisane w kilka sekund",
"body": "Przez „+ Dodaj” zapiszesz każdy pomiar w sekundy: wagę, ciśnienie, tętno, glukozę. Ukryta moc: datowanie wstecz zapomnianych wartości. Wszystko, co tu wpiszesz, zasila trendy, wynik zdrowia i analizy AI."
},
"measurements": {
"title": "Pomiary i zakresy docelowe",
"body": "Pomiary pokazują historię i zakres docelowy każdej metryki. Ukryta perełka: ustaw zakres na wartość, aby odchylenia rzucały się w oczy kolorem. Te serie są podstawą korelacji Coacha i raportu dla lekarza."
},
"medications": {
"title": "Leki i przyjęcia",
"body": "Leki zarządzają harmonogramami, przyjęciami, zapasem i titracją. Ukryte: plany cykliczne (RRULE/przesuwne) i ostrzeżenia o niskim zapasie. Twój wskaźnik przyjęć zasila filar stosowania na pulpicie oraz kontekst AI."
},
"labs": {
"title": "Wyniki laboratoryjne",
"body": "Laboratorium gromadzi biomarkery z zakresami referencyjnymi: morfologia, cholesterol, HbA1c. Atut: import i eksport FHIR. Wartości poza zakresem wracają jako dowody w analizach i w raporcie dla lekarza."
},
"illness": {
"title": "Dziennik chorób",
"body": "Dziennik chorób zapisuje ostre epizody i przewlekłe diagnozy wraz z zaostrzeniami. Ukryte: korelacja epizodu z pomiarami oraz Tryb odpoczynku wstrzymujący przypomnienia. Dzięki temu Coach rozumie, czemu wartości przez chwilę odbiegają."
},
"vorsorge": {
"title": "Badania",
"body": "Badania przypominają o przeglądach i szczepieniach z własnym interwałem. Wskazówka: „Wykonane” może od razu utworzyć pomiar lub wynik laboratoryjny. Terminy pojawiają się jako przypomnienia i w raporcie dla lekarza."
},
"cycle": {
"title": "Cykl",
"body": "Śledzenie cyklu zapisuje fazy i objawy. Ukryte: zestawienie objawów z nastrojem i snem. Cykl daje kontekst wahaniom, które inaczej wyglądałyby na niewyjaśnione."
},
"mood": {
"title": "Nastrój",
"body": "Nastrój zapisuje samopoczucie i tagi w dwie sekundy. Atut: własne tagi. Trendy nastroju korelują ze snem, lekami i cyklem, a Coach dostrzega wzorce."
},
"insights": {
"title": "Analizy",
"body": "Analizy to serce aplikacji: dynamiczna analiza oparta na dowodach zamiast ogólnych porad, a każde stwierdzenie wskazuje na Twoje realne dane. Ukryte: układ można dostosować. Analizy łączą wszystko, co dostarczają moduły powyżej."
},
"coach": {
"title": "Coach",
"body": "Coach odpowiada na pytania o Twoje dane w dialogu, korzystając z wywiadu, leków i wyników jako kontekstu. Dostawcę AI wybierasz sam (własny klucz lub lokalnie). Niczego nie przelicza, czyta te same liczby co pulpit."
},
"integrations": {
"title": "Integracje",
"body": "Integracje synchronizują Withings, WHOOP, Polar, Oura i Apple Health automatycznie. Waga, sen i regeneracja uzupełniają się bez wpisywania, a z kolei zasilają analizy i Coacha."
},
"export": {
"title": "Raport dla lekarza",
"body": "Raport dla lekarza łączy pomiary, leki, wyniki laboratoryjne i badania w PDF lub FHIR na wizytę. Tu zbiegają się wszystkie moduły, więc pełny raport powstaje tylko z zadbanych danych."
},
"achievements": {
"title": "Osiągnięcia",
"body": "Osiągnięcia nagradzają konsekwencję: passy i kamienie milowe. Mała pętla motywacji, dzięki której łatwiej wytrwać."
},
"wrapUp": {
"title": "To koniec przewodnika",
"body": "Ten przewodnik pokazuje się tylko raz i nie otworzy się ponownie sam. Wszystko, co pokazał, zostaje na miejscu, a funkcje możesz włączać i wyłączać w dowolnym momencie w Ustawienia → Moduły."
}
}
},
"shell": {
"back": "Wstecz",
"skip": "Pomiń",
"next": "Dalej",
"stepOf": "Krok {current} z {total}",
"stepsLabel": "Kroki konfiguracji"
},
"baseline": {
"title": "Kilka słów o Tobie",
"body": "Cztery opcjonalne pola doprecyzują wartości docelowe, BMI i przypomnienia. Wszystko możesz później zmienić w ustawieniach.",
"displayNameLabel": "Nazwa wyświetlana",
"displayNamePlaceholder": "Jak HealthLog ma się do Ciebie zwracać?",
"displayNameHint": "Pojawia się w powitaniu na pulpicie i w raportach.",
"heightLabel": "Wzrost (cm)",
"heightLabelFtIn": "Wzrost (ft, in)",
"genderLabel": "Płeć",
"genderNone": "Wolę nie podawać",
"genderMale": "Mężczyzna",
"genderFemale": "Kobieta",
"genderOther": "Inna",
"dateOfBirthLabel": "Data urodzenia",
"dateOfBirthHint": "Używana wyłącznie do analiz zależnych od wieku."
},
"done": {
"title": "Wszystko gotowe",
"body": "Witaj na pokładzie. Pulpit czeka na Ciebie.",
"returnCta": "Otwórz pulpit",
"learning": "Niektóre wnioski (glukoza, rytm snu, trendy ciśnienia, cykl) wyostrzają się w ciągu pierwszego tygodnia lub dwóch, w miarę gromadzenia danych. Puste kafelki oznaczają teraz tylko, że wciąż poznajemy Twój punkt odniesienia.",
"connectCta": "Połącz urządzenie",
"logCta": "Zapisz pierwszy pomiar",
"importCta": "Importuj istniejącą historię",
"modulesCta": "Wybierz swoje moduły"
},
"welcomeBack": {
"title": "Witaj ponownie",
"cta": "Otwórz pulpit"
},
"disclaimer": {
"acknowledge": "Rozumiem: HealthLog to prywatne narzędzie do śledzenia, a nie ocena kliniczna ani diagnoza. Gdy się niepokoję, rozmawiam z lekarzem, a nie z tą aplikacją.",
"learnMore": "Dowiedz się więcej"
},
"anamnesis": {
"title": "O Twoim zdrowiu (opcjonalnie)",
"subtitle": "Trochę kontekstu, aby HealthLog rzetelniej odczytywał Twoje wyniki.",
"intro": "Podziel się tym, czym chcesz. Każde pole jest opcjonalne i możesz je zmienić w dowolnej chwili w Ustawieniach.",
"conditionsLabel": "Aktualne schorzenia",
"conditionsPlaceholder": "np. nadciśnienie, cukrzyca typu 2",
"conditionsHint": "Pomaga HealthLog ujmować Twoje pomiary w kontekście, zamiast oznaczać to, czego należy się spodziewać.",
"allergiesLabel": "Alergie lub nietolerancje",
"allergiesPlaceholder": "np. penicylina, laktoza",
"privacyNote": "Przechowywane w postaci zaszyfrowanej i używane tylko po to, by dać Ci lepszy kontekst. Nie pytamy tu o leki, dodasz je w dowolnej chwili na stronie Leki."
},
"ai": {
"panelTitle": "Zobacz, jak wyglądają insighty",
"panelIntro": "Coach, codzienny briefing i oceny dla poszczególnych metryk zamieniają Twoje własne liczby w prosty język. Oto jak to wygląda, zanim cokolwiek podłączysz.",
"showSample": "Zobacz przykładowy briefing",
"sampleTitle": "Codzienny briefing",
"sampleTag": "Przykład",
"sampleAriaLabel": "Przykładowy codzienny briefing",
"sampleBody": "Waga niższa o 1,2 kg w ciągu dwóch tygodni. Tętno spoczynkowe stabilne na 58 bpm. Ciśnienie w normie przez 6 z 7 dni; jedyny wysoki odczyt nastąpił po późnej, słonej kolacji.",
"sampleCaption": "Tylko przykład, to nie są Twoje dane. Tak czyta się briefing, gdy insighty są włączone.",
"ladderTitle": "Trzy sposoby, by to włączyć",
"ladderLocalTitle": "Model lokalny: zapytania do AI zostają w Twojej sieci",
"ladderLocalBody": "Skieruj HealthLog na Ollama lub LM Studio na własnej maszynie. Za darmo i w pełni prywatnie: spokojny wybór domyślny.",
"ladderByokTitle": "Użyj własnego klucza",
"ladderByokBody": "Użyj własnego klucza OpenAI lub Anthropic. Działa na Twoim koncie i rozliczeniu, a poziom API domyślnie wyklucza Twoje dane z treningu.",
"ladderOauthTitle": "Zaloguj się przez subskrypcję",
"ladderOauthBody": "Podłącz konto ChatGPT. Bez kosztu za token, ale warunki poziomu konsumenckiego mogą wykorzystywać treści do treningu, więc to świadomy wybór, nigdy domyślny dla danych o zdrowiu.",
"keylessLine": "HealthLog jest w pełni użyteczny bez AI. Twoje kafelki, wykresy, trendy i eksporty działają; AI dokłada tylko odczyt prostym językiem.",
"setupCta": "Skonfiguruj (około minuty)",
"sharedKeyNote": "Ta instancja udostępnia już wspólnego dostawcę AI, więc insighty działają dla Ciebie od razu, bez konfiguracji.",
"offer": {
"title": "Ta instancja potrafi już napisać twoje podsumowanie zwykłym językiem.",
"body": "Operator udostępnia dostawcę, który działał po raz ostatni w ciągu ostatnich 24 godzin. Jedno dotknięcie włącza zwykły język; twoje dane trafią wtedy do tego jednego dostawcy i do nikogo więcej.",
"cta": "Włącz zwykły język",
"granted": "Włączone. Pierwsze podsumowanie pojawi się na pulpicie.",
"error": "Włączenie się nie powiodło. Spróbuj ponownie za chwilę."
},
"unavailable": {
"title": "Dostawca tej instancji w tej chwili nie odpowiada.",
"body": "HealthLog jest w pełni użyteczny bez zwykłego języka. Później możesz dodać w ustawieniach własnego dostawcę."
}
},
"steps": {
"who": "Dla kogo jest ta kartoteka",
"areas": "Co chcesz obserwować",
"medication": "Leki",
"sources": "Skąd pochodzą pomiary",
"visit": "Wizyta u lekarza",
"units": "Jednostki",
"confirm": "Potwierdzenie",
"first-result": "Pierwszy wynik",
"done": "Gotowe"
},
"flow": {
"welcome": {
"title": "Witaj w HealthLog",
"body": "Pięć krótkich pytań decyduje o tym, co HealthLog pokaże Ci najpierw. Zajmuje to około dwóch minut.",
"changeLater": "Nic nie jest ostateczne: każdy wybór można później zmienić w Ustawieniach.",
"setUp": "Skonfiguruj",
"skip": "Pomiń na razie",
"againBody": "Konfiguracja jest zakończona. Odpowiedz na pytania ponownie, aby zmienić, co HealthLog pokazuje najpierw, albo przejdź do panelu.",
"setUpAgain": "Skonfiguruj ponownie"
},
"who": {
"title": "Dla kogo jest ta kartoteka?",
"body": "Kolejne odpowiedzi dotyczą tej kartoteki.",
"options": {
"me": "Dla mnie",
"someone-else": "Dla osoby, którą się opiekuję",
"both": "Dla obojga"
},
"hints": {
"someone-else": "Na przykład dziecko lub rodzic. Profil tej osoby powstaje na końcu.",
"both": "Skonfiguruj teraz własną kartotekę; profil drugiej osoby zostanie zaproponowany na końcu."
}
},
"areas": {
"title": "Co chcesz obserwować?",
"body": "Wybierz dowolną liczbę. Decydują o tym, które moduły są włączone i co panel pokazuje najpierw.",
"options": {
"blood-pressure": "Ciśnienie krwi",
"weight-body": "Waga i ciało",
"glucose": "Glukoza we krwi",
"sleep": "Sen i regeneracja",
"mood": "Nastrój i dobrostan psychiczny",
"cycle": "Cykl",
"activity": "Aktywność i treningi",
"labs": "Wyniki badań",
"illness": "Choroby i objawy"
}
},
"medication": {
"title": "Czy bierzesz leki według stałego harmonogramu?",
"body": "Harmonogram włącza moduł leków i przypomnienia.",
"options": {
"yes": "Tak",
"no": "Nie",
"sometimes": "Czasami"
}
},
"sources": {
"title": "Skąd dziś pochodzą Twoje pomiary?",
"body": "Wybierz dowolną liczbę. Na końcu zostanie zaproponowane jedno połączenie; żadne nie jest wymagane.",
"options": {
"manual": "Wpisuję je ręcznie",
"apple-health": "Apple Health na moim iPhonie",
"withings": "Withings",
"oura": "Oura",
"whoop": "WHOOP",
"polar": "Polar",
"fitbit": "Fitbit",
"strava": "Strava",
"nightscout": "Nightscout",
"file": "Plik, który już mam"
},
"hints": {
"apple-health": "Synchronizowane przez aplikację iOS lub importowane z eksportu.",
"file": "Import w Ustawieniach, gdy skończysz tutaj."
}
},
"visit": {
"title": "Czy zbliża się wizyta u lekarza?",
"body": "Wizyta włącza raport dla lekarza i dodaje przygotowanie do Twojej listy startowej.",
"options": {
"within-a-month": "Tak, w ciągu miesiąca",
"later": "Później",
"no": "Nie"
}
},
"units": {
"title": "Jakich jednostek używasz?",
"body": "Pomiary są zapisywane raz i wyświetlane w wybranej jednostce. Możesz ją później zmienić w Ustawieniach.",
"glucoseLegend": "Glukoza we krwi",
"weightLegend": "Waga i wzrost",
"options": {
"metric": "kg i cm",
"imperial": "lb i ft/in"
}
},
"confirm": {
"title": "Oto co włączają Twoje odpowiedzi",
"body": "Jedno spojrzenie i HealthLog jest skonfigurowany. Nic tutaj nie jest ostateczne.",
"modulesTitle": "Moduły",
"switchedOn": "Włączone: {modules}.",
"nothingExtra": "Twoje odpowiedzi nie włączają żadnego dodatkowego modułu; podstawowe pomiary są zawsze dostępne.",
"alwaysOn": "Zawsze włączone: {modules} oraz podstawowe pomiary (waga, ciśnienie, tętno).",
"everythingElse": "Cała reszta jest o jedno kliknięcie w",
"modulesLink": "Ustawienia, Moduły",
"switchesOff": "Znika z nawigacji: {modules}. W każdej chwili możesz je włączyć w Ustawienia, Moduły.",
"glucoseUnit": "Glukoza we krwi",
"unitPreference": "Jednostki",
"language": "Język",
"timezone": "Strefa czasowa",
"changeInSettings": "Zmień w Ustawieniach, Konto",
"cta": "Potwierdź i kontynuuj",
"managedTitle": "Osoba, którą się opiekujesz",
"managedBody": "Jej kartoteka nie ma własnego logowania; zarządzasz nią ze swojego konta. Do jej utworzenia potrzebny jest drugi składnik albo klucz dostępu na Twoim koncie.",
"managedCreate": "Utwórz profil i zakończ",
"managedLater": "Możesz też utworzyć go później w Ustawieniach, Dostęp współdzielony.",
"finishWithoutProfile": "Zakończ bez profilu"
},
"first-result": {
"connect-source": {
"title": "Połącz {target}",
"body": "Jedno połączenie, wybrane na podstawie Twoich odpowiedzi. Potem pomiary przychodzą same.",
"howTo": "Połączenie z {target} nawiązuje się na stronie integracji. Wróć tutaj później; ten ekran zauważy, kiedy będzie gotowe.",
"cta": "Połącz {target}",
"checking": "Sprawdzanie połączenia.",
"waiting": "Jeszcze nie połączono.",
"openSettings": "Otwórz Ustawienia → Integracje",
"noDate": "nieznany",
"needsCredentials": {
"title": "Ta instancja nie ma jeszcze zapisanej aplikacji {target}.",
"detail": "Wpisz własne dane dostępowe w Ustawieniach → Integracje, wtedy połączenie będzie mogło ruszyć."
},
"state": {
"pending_first_sync": {
"title": "{target} jest połączony.",
"detail": "Trwa pierwsza synchronizacja. Wartości pojawią się na pulpicie, gdy tylko dotrą."
},
"fresh": {
"title": "{target} jest już połączony.",
"detail": "Ostatnia wartość {when}. Tutaj nie ma już nic do zrobienia."
},
"stale": {
"title": "{target} jest połączony, ale w tej chwili nic nie przychodzi.",
"detail": "Ostatnia wartość {when}. Samo połączenie jest w porządku."
},
"stalled": {
"title": "{target} jest połączony, ale synchronizacja się zatrzymała.",
"detail": "Ostatnia próba {when}. Sprawdź połączenie w Ustawieniach → Integracje."
},
"failing": {
"title": "{target} jest połączony, ale synchronizacja się nie udaje.",
"detail": "Od {when} nic nie dotarło. Sprawdź połączenie w Ustawieniach → Integracje."
},
"reauth_required": {
"title": "Połączenie z {target} wymaga odnowienia.",
"detail": "Zaloguj się jeszcze raz, a wartości popłyną dalej."
},
"parked": {
"title": "Połączenie z {target} jest wstrzymane.",
"detail": "Sprawdź połączenie w Ustawieniach → Integracje."
}
}
},
"add-medication": {
"title": "Dodaj swój pierwszy lek",
"body": "Nazwa, dawka i harmonogram; przypomnienie podąża za ustawionym harmonogramem.",
"howTo": "Lek dodaje się w kilku krótkich krokach. Kolejne możesz dodać później na stronie leków.",
"cta": "Dodaj lek",
"done": "{name} został dodany.",
"doneUnnamed": "Twój pierwszy lek został dodany.",
"nextDose": "Następna dawka: {when}.",
"reminders": "Przypomnienia podążają za ustawionym harmonogramem.",
"recordOnly": "Tylko zapis: bez przypomnień, nic nie przypada.",
"asNeeded": "W razie potrzeby: bez przypomnień, zapisz dawkę, gdy ją przyjmiesz."
},
"log-reading": {
"title": "Wpisz jeden pomiar: {target}",
"body": "Jeden pomiar umieszcza pierwszą wartość na Twoim panelu. Trend rysuje się sam od piątego.",
"done": "Twój pierwszy pomiar jest na swoim kafelku.",
"doneElsewhere": "Twój pierwszy wpis dla {target} jest zapisany.",
"elsewhere": "{target} ma własną stronę. Otwórz ją, zrób pierwszy wpis, a potem wróć tutaj i oznacz go jako wykonany.",
"open": "Otwórz {target}",
"markDone": "Wpis zrobiony"
}
},
"done": {
"tourCta": "Zrób krótką wycieczkę",
"openRecord": "Otwórz kartotekę: {name}",
"createProfile": "Utwórz profil osoby, którą się opiekujesz"
}
}
},
"gettingStarted": {
"title": "Pierwsze kroki",
"subtitle": "Szybkie zwycięstwa, aby wycisnąć z HealthLog maksimum.",
"progress": "{done} z {total} wykonanych",
"dismissAll": "Ukryj listę",
"dismissTooltip": "Ukryj ten punkt",
"items": {
"profileTitle": "Skonfiguruj profil",
"profileDescription": "Wzrost, data urodzenia i płeć odblokowują spersonalizowane cele.",
"profileCta": "Otwórz profil",
"measurementTitle": "Zarejestruj pierwszy pomiar",
"measurementDescription": "Jeden pomiar aktywuje kafelek, a trend rysuje się od 5. pomiaru.",
"measurementCta": "Dodaj pomiar",
"medicationTitle": "Dodaj lek",
"medicationDescription": "Śledź przestrzeganie i otrzymuj przypomnienia dokładnie wtedy, kiedy ich potrzebujesz.",
"medicationCta": "Dodaj lek",
"dataSourceTitle": "Połącz źródło danych (opcjonalnie)",
"dataSourceDescription": "Automatycznie synchronizuj wagę, ciśnienie, sen i więcej z Withings, WHOOP, Oura, Polar, Nightscout, Fitbit lub Apple Health.",
"dataSourceCta": "Połącz",
"notificationsTitle": "Skonfiguruj powiadomienia",
"notificationsDescription": "Wybierz, jak HealthLog ma ci przypominać: Telegram, ntfy lub Web Push.",
"notificationsCta": "Otwórz powiadomienia",
"insightsTitle": "Włącz insighty (opcjonalnie)",
"insightsDescription": "Dodaj model lokalny lub własny klucz AI, aby odblokować codzienny briefing i Coach.",
"insightsCta": "Włącz insighty",
"visitTitle": "Przygotuj się do wizyty",
"visitDescription": "Wpisz termin do kalendarza; raport dla lekarza zbiera to, co warto zabrać.",
"visitCta": "Otwórz wizyty",
"dataSourceNamedTitle": "Połącz {source}",
"managedProfileTitle": "Utwórz profil osoby, którą się opiekujesz",
"managedProfileDescription": "Twoje odpowiedzi dotyczyły kartoteki innej osoby; tworzy się ją w Dostępie współdzielonym.",
"managedProfileCta": "Utwórz profil"
}
},
"trendHints": {
"title": "Pierwszy trend po 5 pomiarach",
"remainingOne": "Jeszcze 1 pomiar do trendu.",
"remainingMany": "Jeszcze {count} pomiarów do trendu."
},
"settings": {
"oauthCallbackPreflightItem": "{provider}: adres zwrotny {configuredOrigin} różni się od adresu tej aplikacji {currentOrigin}.",
"shell": {
"sectionsNav": "Sekcje ustawień",
"groups": {
"account": "Konto",
"yourData": "Twoje dane",
"healthProfile": "Profil zdrowotny",
"ai": "AI",
"connectivity": "Łączność",
"system": "System",
"tracking": "Śledzenie",
"arrangement": "Układ",
"notifications": "Powiadomienia",
"connections": "Połączenia",
"data": "Dane"
},
"allSections": "Wszystkie sekcje"
},
"sharedRecord": {
"managedSettings": {
"saveError": "Nie udało się zapisać. Spróbuj ponownie.",
"validationError": "Sprawdź wprowadzone dane.",
"profile": {
"title": "Profil",
"displayName": "Wyświetlana nazwa",
"height": "Wzrost (cm)",
"dateOfBirth": "Data urodzenia",
"gender": "Płeć",
"notSpecified": "Nie podano",
"male": "Mężczyzna",
"female": "Kobieta",
"other": "Inna",
"locale": "Język",
"systemDefault": "Ustawienie systemowe",
"timezone": "Strefa czasowa",
"units": "Jednostki",
"metric": "Metryczne",
"imperial": "Imperialne",
"timeFormat": "Format czasu",
"automatic": "Automatyczny",
"hour12": "12-godzinny",
"hour24": "24-godzinny",
"dateFormat": "Format daty",
"dateDmy": "Dzień / miesiąc / rok",
"dateMdy": "Miesiąc / dzień / rok",
"dateYmd": "Rok / miesiąc / dzień"
},
"modules": {
"title": "Moduły"
},
"notifications": {
"title": "Powiadomienia",
"moodReminder": "Włącz przypomnienie nastroju",
"reminderHour": "Godzina przypomnienia nastroju",
"lowStockRunwayDays": "Dni do niskiego stanu zapasów",
"reorderLeadDays": "Wyprzedzenie ponownego zamówienia"
},
"thresholds": {
"title": "Cele",
"metric": "Metryka",
"minimum": "Minimum",
"maximum": "Maksimum"
},
"coach": {
"title": "Trener",
"disable": "Wyłącz trenera",
"tone": "Ton",
"warm": "Ciepły",
"neutral": "Neutralny",
"concise": "Zwięzły",
"verbosity": "Szczegółowość",
"brief": "Krótka",
"default": "Domyślna",
"detailed": "Szczegółowa",
"excludedMetrics": "Wykluczone metryki",
"dataClusters": "Grupy danych",
"customClusters": "Użyj własnego wyboru grup",
"metrics": {
"bp": "Ciśnienie krwi",
"weight": "Masa ciała",
"pulse": "Tętno",
"mood": "Nastrój",
"compliance": "Przestrzeganie przyjmowania leków",
"hrv": "Zmienność rytmu serca",
"sleep": "Sen",
"restingHr": "Tętno spoczynkowe",
"steps": "Kroki",
"medications": "Leki",
"anthropometrics": "Wymiary ciała"
},
"clusters": {
"cardio": "Zdrowie sercowo-naczyniowe",
"body": "Skład ciała",
"activity": "Aktywność",
"workouts": "Treningi",
"sleep": "Sen",
"mood": "Nastrój",
"glucose": "Glukoza",
"medication": "Leki",
"mobility": "Mobilność",
"environment": "Środowisko"
}
},
"insights": {
"title": "Wnioski",
"sections": "Sekcje przeglądu",
"tiles": "Kafelki nawigacji",
"order": "Kolejność",
"unknownItem": "Niedostępna analiza",
"sectionLabels": {
"wellnessScores": "Wyniki dobrostanu",
"dailyBriefing": "Codzienny przegląd",
"vitals": "Parametry życiowe",
"trends": "Trendy",
"periodReview": "Przegląd okresu",
"cycleSummary": "Podsumowanie cyklu",
"signals": "Sygnały",
"rhythmEvents": "Zdarzenia rytmu",
"healthStatus": "Stan zdrowia",
"breathing": "Oddychanie",
"labsChanges": "Zmiany wyników laboratoryjnych",
"ecg": "EKG"
}
}
},
"unavailableTitle": "Niedostępne w tym udostępnionym rekordzie",
"unavailableDescription": "Ten obszar Ustawień jest celowo niedostępny podczas przeglądania rekordu innej osoby.",
"integrationStatusDescription": "Stan połączenia dla tego zarządzanego rekordu.",
"integrationStatusDetail": "Usługi połączone tutaj wysyłają dane do profilu {name}, a nie do Twojego. Jeśli profil nie ma własnej aplikacji u dostawcy, używa Twojej.",
"integrationStatusDocs": "Jak działa udostępnianie",
"integrationConnectsFor": "Łączy dla: {name}",
"integrationConnectFor": "Połącz dla: {name}",
"integrationDisconnect": "Rozłącz",
"integrationDisconnectTitle": "Rozłączyć {provider} od profilu {name}?",
"integrationDisconnectBody": "Nowe dane przestaną napływać. Wszystko, co już zaimportowano, zostaje w profilu {name}.",
"integrationNoClientApp": "Ani {name}, ani Twoje konto nie ma jeszcze aplikacji {provider}. Najpierw skonfiguruj ją we własnych integracjach.",
"integrationConnectFailed": "Nie udało się rozpocząć łączenia z {provider}."
},
"sections": {
"account": {
"title": "Konto",
"subtitle": "Twój profil, tożsamość i dane logowania."
},
"integrations": {
"title": "Integracje",
"subtitle": "Połącz i zarządzaj źródłami danych oraz urządzeniami.",
"connectionsHeading": "Połączenia",
"channelsHeading": "Kanały dostarczania",
"channelsDescription": "Gdzie dostarczane są przypomnienia i powiadomienia.",
"matrixLink": "Powiadomienia wg kanału"
},
"notifications": {
"title": "Powiadomienia",
"subtitle": "Wybierz, które przypomnienia otrzymujesz i gdzie są dostarczane.",
"remindersHeading": "Przypomnienia",
"matrixLink": "Powiadomienia wg kanału",
"channelsLink": "Kanały dostarczania",
"displayHeading": "Na telefonie",
"elsewhere": {
"title": "Ustawiane tam, gdzie należą",
"description": "Te przypomnienia ustawiasz obok tego, czego dotyczą.",
"doses": {
"title": "Dawki leków",
"description": "Godziny przyjmowania i przypomnienia ustawiasz przy każdym leku.",
"link": "Otwórz leki"
},
"cycle": {
"title": "Cykl",
"description": "Przypomnienia o miesiączce i dniach płodnych włączasz dla każdego kanału w tabeli powiadomień.",
"link": "Otwórz tabelę powiadomień"
}
}
},
"layout": {
"title": "Układ",
"backToHub": "Wróć do Układu",
"dashboard": {
"title": "Pulpit",
"description": "Układ i kolejność kafelków."
},
"insights": {
"title": "Analizy",
"description": "Kolejność przeglądu i pigułek nawigacyjnych."
},
"subtitle": "Wybierz kolejność i widok pulpitu, analiz i list śledzenia.",
"medications": {
"title": "Leki",
"description": "Widok listy i ręczna kolejność."
},
"labs": {
"title": "Laboratorium",
"description": "Widok, sortowanie i ręczna kolejność."
},
"illness": {
"title": "Dziennik chorób",
"description": "Widok listy i kolejność epizodów."
},
"vorsorge": {
"title": "Badania kontrolne",
"description": "Widok listy i kolejność przypomnień."
},
"documents": {
"title": "Dokumenty",
"description": "Widok i układ miesięcy."
}
},
"dashboard": {
"subtitle": "Rozmieść kafelki na pulpicie."
},
"thresholds": {
"title": "Cele",
"subtitle": "Ustaw osobiste zakresy docelowe dla każdej metryki."
},
"sources": {
"title": "Priorytet źródeł",
"integrationsHint": "Źródła danych podłączysz lub odłączysz na stronie integracji.",
"integrationsHintLink": "Otwórz integracje",
"cardTitle": "Kolejność według metryki",
"help": "Gdy kilka źródeł dostarcza tę samą wartość tego samego dnia, źródło na górze liczy się jako kanoniczne.",
"resetDefaults": "Przywróć wartości domyślne",
"resetDefaultsTitle": "Zresetować kolejność źródeł?",
"resetDefaultsBody": "Każda ustawiona przez ciebie kolejność wraca do domyślnej, dla wszystkich metryk i typów urządzeń naraz. Zapis następuje natychmiast i nie da się go cofnąć.",
"resetDefaultsConfirm": "Zresetuj kolejność",
"moveUp": "W górę",
"moveDown": "W dół",
"saveSuccess": "Zapisano priorytet źródeł",
"saveError": "Zapisanie priorytetu źródeł nie powiodło się.",
"resetSuccess": "Przywrócono domyślny priorytet źródeł",
"perMetricToggle": "Ustawienia dla poszczególnych metryk ({count})",
"perMetricHelp": "Metryki dostosowane względem domyślnej kolejności. Użyj tej listy, aby przywrócić pojedynczą metrykę do wartości domyślnej, nie zmieniając pozostałych.",
"perMetricEmpty": "Brak indywidualnych ustawień. Każda metryka korzysta z globalnej kolejności powyżej.",
"resetMetric": "Resetuj",
"deviceTypeToggle": "Priorytet według typu urządzenia ({count})",
"deviceTypeHelp": "W obrębie źródła decyduje, które urządzenie wygrywa. Gdy Apple Watch i iPhone rejestrują kroki, wyżej sklasyfikowany typ urządzenia liczy się jako odczyt kanoniczny.",
"deviceTypeDefault": "Domyślna kolejność typów urządzeń",
"resetDeviceTypes": "Resetuj typy urządzeń",
"metrics": {
"steps": "Kroki",
"activeEnergy": "Aktywna energia",
"walkingRunningDistance": "Dystans marszu + biegu",
"flightsClimbed": "Pokonane piętra",
"sleep": "Sen",
"weight": "Waga",
"bloodPressure": "Ciśnienie krwi",
"pulse": "Tętno",
"bodyFat": "Tkanka tłuszczowa",
"bodyTemperature": "Temperatura ciała",
"spo2": "Saturacja tlenem",
"hrv": "Zmienność rytmu serca",
"restingHeartRate": "Tętno spoczynkowe",
"vo2Max": "VO2 max",
"skinTemperature": "Temperatura skóry",
"respiratoryRate": "Częstość oddechów",
"recovery": "Regeneracja",
"stress": "Stres",
"sleepDebt": "Dług snu",
"hrvRmssd": "HRV (RMSSD)",
"bodyBattery": "Body Battery",
"stressLevel": "Poziom stresu",
"trainingReadiness": "Gotowość do treningu",
"acuteTrainingLoad": "Ostre obciążenie treningowe"
},
"sourceLabels": {
"WITHINGS": "Withings",
"APPLE_HEALTH": "Apple Health",
"MANUAL": "Wpis ręczny",
"IMPORT": "Importuj",
"WHOOP": "WHOOP",
"FITBIT": "Fitbit",
"COMPUTED": "Obliczone",
"NIGHTSCOUT": "Nightscout",
"POLAR": "Polar",
"OURA": "Oura",
"TELEGRAM": "Telegram",
"MCP": "MCP",
"GOOGLE_HEALTH": "Google Health",
"STRAVA": "Strava",
"EXTERNAL": "Urządzenie zewnętrzne",
"HEALTH_CONNECT": "Health Connect",
"GARMIN": "Garmin"
},
"deviceLabels": {
"watch": "Zegarek",
"band": "Opaska",
"ring": "Pierścień",
"phone": "Telefon",
"scale": "Waga",
"other": "Inne",
"unknown": "Nieznane"
},
"subtitle": "Zdecyduj, które źródło wygrywa, gdy dwa podają tę samą metrykę.",
"nutrients": {
"title": "Zsynchronizowane spożycie składników",
"description": "Dzienne sumy z ostatnich {days} dni: dane zsynchronizowane z Apple Health oraz przyjęte suplementy.",
"empty": "Nie zsynchronizowano jeszcze danych o składnikach odżywczych.",
"latest": "{amount} {unit} dnia {date}",
"daysWithData": "{count} z {days} dni",
"moduleHint": "Synchronizacją steruje moduł spożycia składników odżywczych.",
"moduleHintLink": "Zarządzaj modułami",
"detail": "Tylko do odczytu: wartości należą do aplikacji źródłowej."
},
"helpDetail": "Pozostałe pozostają zapisane na potrzeby audytu. Widać tylko źródła, które połączono lub z których są dane.",
"noneInUse": "Nie ma jeszcze źródeł do uszeregowania. Połącz jedno w Integracjach albo wpisz wartość."
},
"ai": {
"title": "Dostawca AI",
"subtitle": "Wybierz dostawcę AI i użyj własnego klucza."
},
"api": {
"title": "API i tokeny",
"subtitle": "Zarządzaj punktami końcowymi API i tokenami dostępu."
},
"advanced": {
"title": "Zaawansowane",
"subtitle": "Reset danych i usunięcie konta."
},
"export": {
"title": "Eksport i import",
"otherOptionsHeading": "Inne opcje eksportu",
"downloadFailed": "Nie udało się pobrać eksportu. Spróbuj ponownie.",
"actions": {
"download": "Pobierz"
},
"filters": {
"since": "Od",
"until": "Do"
},
"cards": {
"measurementsCsv": {
"title": "Pomiary",
"description": "Waga, ciśnienie, tętno, glukoza i wszystkie inne pomiary jako wartości rozdzielone przecinkami."
},
"medicationsCsv": {
"title": "Leki",
"description": "Lista leków z dawkowaniem, harmonogramem i (opcjonalnie) pełną historią przyjęć.",
"includeIntake": "Dołącz historię przyjęć"
},
"moodCsv": {
"title": "Nastrój",
"description": "Codzienne wpisy nastroju z oceną, tagami i znacznikami czasu."
},
"fullBackup": {
"title": "Pełna kopia zapasowa",
"description": "Cała dokumentacja w jednym pliku JSON.",
"scopeNote": "Metadane dokumentów oraz podsumowanie AI, jeśli istnieje, są uwzględnione jako czysty tekst; oryginalne pliki dokumentów oraz dane tras GPS/próbek treningów nie są uwzględnione. Pobierz je osobno z archiwum dokumentów lub eksportu treningów.",
"encryptToggle": "Zaszyfruj hasłem-frazą",
"passphrasePlaceholder": "Hasło-fraza (min. 12 znaków)",
"passphraseHelp": "Wyprowadza klucz archiwum za pomocą Argon2id i pieczętuje je AES-256-GCM. Zapisz plik z rozszerzeniem .hlx.",
"noRecoveryWarning": "Nie ma odzyskiwania: jeśli zgubisz tę frazę, archiwum nie da się otworzyć. Przechowuj ją bezpiecznie.",
"detail": "Przenośna kopia twojej dokumentacji do przechowywania i czytania: wartości w zwykłym JSON, dokumenty tylko jako metadane. To nie jest cotygodniowa kopia konta, którą ten serwer trzyma do przywracania konta, i nie odtworzy konta na innym serwerze. Niektóre rodzaje danych nie są jeszcze uwzględnione; manifest pliku wymienia, co zawiera.",
"contents": "Twoje pomiary, leki, nastrój, cykl, wyniki badań, epizody chorobowe, alergie, wywiad rodzinny, składniki odżywcze, treningi, Twój profil zdrowia i własne wskaźniki w jednym pliku JSON."
}
},
"import": {
"heading": "Import",
"description": "Zaimportuj dane do HealthLog z eksportu Apple Health lub pliku JSON. Import pomija wiersze, które już istnieją, więc ponowne uruchomienie jest bezpieczne.",
"charCount": "{used} / {max} znaków",
"appleHealth": {
"title": "Apple Health",
"description": "Prześlij plik export.zip z aplikacji Zdrowie na iPhonie (Profil → Eksportuj wszystkie dane zdrowotne).",
"dropLabel": "Upuść tutaj export.zip",
"dropHint": "lub kliknij, aby wybrać plik",
"fileInputLabel": "Wybierz plik export.zip z Apple Health",
"choose": "Wybierz plik",
"idempotencyNote": "Ponowne przesłanie tego samego archiwum scala dane i nie tworzy duplikatów. Duże archiwa są przetwarzane w tle.",
"uploading": "Przesyłanie…",
"uploadFailed": "Przesyłanie nie powiodło się. Spróbuj ponownie.",
"rateLimited": "Zbyt wiele przesłań. Poczekaj chwilę i spróbuj ponownie.",
"tooLarge": "Ten plik jest za duży (limit 1,5 GB).",
"failed": "Import nie powiódł się.",
"failureInterrupted": "Import został przerwany przed zakończeniem, zwykle przez restart serwera lub brak pamięci. Dane są bezpieczne; prześlij archiwum ponownie, aby spróbować jeszcze raz.",
"failureInsufficientMemory": "Limit pamięci serwera jest zbyt niski dla archiwum tej wielkości. Poproś osobę administrującą serwerem o zwiększenie limitu pamięci Node.js (NODE_OPTIONS=--max-old-space-size), a następnie prześlij archiwum ponownie.",
"rowsImported": "Zaimportowano dotąd {count} wierszy",
"doneSummary": "Gotowe: zaimportowano {imported} z {read} rekordów, pominięto {skipped} rekordów klinicznych.",
"doneNothing": "Z tego archiwum nic nie zaimportowano: dotarło 0 z {read} rekordów.",
"writtenByHealthLogOne": "Pominięto {count} wpis, który HealthLog sam zapisał w Apple Health, ponieważ jest już w Twoich danych.",
"writtenByHealthLogOther": "Pominięto {count} wpisów, które HealthLog sam zapisał w Apple Health, ponieważ są już w Twoich danych.",
"writtenByHealthLogFew": "Pominięto {count} wpisy, które HealthLog sam zapisał w Apple Health, ponieważ są już w Twoich danych.",
"ecgResult": "EKG: wykryto {discovered}, zaimportowano {imported}, zaktualizowano {updated}, pominięto {skipped}, nie powiodło się {failed}. Błędy EKG nie usuwają obsługiwanych rekordów zaimportowanych z pliku export.xml.",
"estimateWarning": "Łączne wartości dla {count} dni oszacowano na podstawie największego źródła w eksporcie. Natywne statystyki Apple Health pozostają nadrzędne.",
"phase": {
"queued": "W kolejce…",
"unpacking": "Rozpakowywanie archiwum…",
"parsing": "Odczytywanie eksportu…",
"upserting": "Importowanie rekordów…"
},
"skipUnsupported": "Pominięto {count} próbek: typy danych, których HealthLog nie importuje.",
"skipRefused": "{count} próbek nie udało się zapisać (nieczytelne, poza zakresem lub zapis się nie powiódł).",
"skipBreakdown": "Pokaż zestawienie ({count} typów)",
"skipBreakdownMore": "+ {count} kolejnych typów",
"cycleSummary": "{samples} próbek cyklu połączono w {days} dzienników dziennych.",
"cycleModuleOff": "Pominięto {count} próbek cyklu, bo śledzenie cyklu jest wyłączone dla tego konta.",
"cycleDaysFailed": "{count} dni cyklu nie udało się zapisać: {reason}"
},
"json": {
"title": "Pomiary i nastrój (JSON)",
"description": "Wklej JSON lub prześlij plik .json z pomiarami i wpisami nastroju.",
"pasteLabel": "Wklej JSON",
"fileInputLabel": "Wybierz plik JSON do zaimportowania",
"schemaHint": "Dwie tablice: measurements i moodEntries.",
"docsLink": "Zobacz schemat i przykład.",
"uploadFile": "Prześlij plik",
"downloadExample": "Pobierz przykład",
"import": "Importuj",
"invalidJson": "To nie jest prawidłowy JSON. Sprawdź składnię i spróbuj ponownie.",
"invalidPayload": "Dane nie pasują do schematu importu.",
"rateLimited": "Zbyt wiele importów w tej godzinie (limit 5). Spróbuj później.",
"failed": "Import nie powiódł się. Spróbuj ponownie.",
"readFailed": "Nie można odczytać tego pliku.",
"resultSummary": "Zaimportowano {measurements} pomiarów i {moods} wpisów nastroju, pominięto {skipped}.",
"resultSuccess": "Zaimportowano {measurements} pomiarów i {moods} wpisów nastroju",
"droppedLinks": "Zaimportowano bez tych tagów, bo to konto nie ma żadnego o tej nazwie: {keys}",
"keptLabels": "To konto ma już tagi lub grupy z tymi kluczami pod własną nazwą, więc zostały zachowane: {keys}",
"resultNothing": "Nic nie zaimportowano. Pominięto wszystkie {skipped} wpisów.",
"resultEmpty": "Ten plik nie zawierał pomiarów ani wpisów nastroju.",
"limitsHint": "Do {mb} MB i do {rows} wpisów na listę. Dodaje wpisy do twojej dokumentacji; nie przywraca pełnej kopii zapasowej."
},
"csv": {
"title": "Plik CSV",
"description": "Importuj pomiary z arkusza lub eksportu z urządzenia.",
"pasteLabel": "Wklej CSV",
"fileInputLabel": "Wybierz plik CSV do zaimportowania",
"schemaHint": "Kolumny: type, value, unit, measuredAt (z przesunięciem strefy czasowej) oraz opcjonalnie glucoseContext, notes, externalId.",
"docsLink": "Zobacz schemat kolumn i przykład.",
"uploadFile": "Prześlij plik",
"downloadExample": "Pobierz przykład",
"preview": "Podgląd",
"import": "Importuj",
"empty": "Dodaj co najmniej jeden wiersz CSV przed importem.",
"rateLimited": "Zbyt wiele importów w tej godzinie (limit 5). Spróbuj ponownie później.",
"tooLarge": "Ten plik jest za duży (limit 16 MB).",
"invalidPayload": "Nie udało się przetworzyć pliku CSV. Sprawdź wiersz nagłówka i spróbuj ponownie.",
"failed": "Import nie powiódł się. Spróbuj ponownie.",
"readFailed": "Nie udało się odczytać tego pliku.",
"previewSummary": "Podgląd: {inserted} zostanie zaimportowanych, pominięto {skipped}.",
"resultSummary": "Zaimportowano {inserted} nowych i zaktualizowano {updated}, pominięto {skipped}.",
"rowError": "Wiersz {line}: {reason}",
"resultSuccess": "Zaimportowano {inserted} nowych i zaktualizowano {updated}",
"resultNothing": "Nic nie zaimportowano. Pominięto wszystkie {skipped} wierszy.",
"resultEmpty": "Ten plik ma nagłówek, ale nie zawiera wierszy danych.",
"previewSuccess": "Podgląd: {inserted} zostanie zaimportowanych",
"previewNothing": "Podgląd: nic nie zostanie zaimportowane. Pominięte zostaną wszystkie {skipped} wierszy.",
"skipGroupOne": "Pominięto {count} wiersz: {reason}",
"skipGroupFew": "Pominięto {count} wiersze: {reason}",
"skipGroupOther": "Pominięto {count} wierszy: {reason}",
"skipDetails": "Pokaż wszystkie pominięte wiersze",
"reasonUnknownType": "nieznany typ pomiaru",
"reasonInvalidValue": "wartość nie jest liczbą",
"reasonValueOutOfRange": "wartość poza wiarygodnym zakresem",
"reasonUnknownUnit": "jednostka nierozpoznana dla tego typu",
"reasonMissingTimezoneOffset": "znacznik czasu bez przesunięcia strefy czasowej",
"reasonInvalidTimestamp": "nie udało się odczytać znacznika czasu",
"reasonImplausibleTimestamp": "znacznik czasu w przyszłości lub sprzed 1900 roku",
"reasonUnexpectedGlucoseContext": "kontekst glukozy w wierszu, który nie jest pomiarem glukozy",
"reasonInvalidGlucoseContext": "kontekst glukozy nie jest dozwoloną wartością",
"reasonNotesTooLong": "notatka jest zbyt długa",
"reasonExternalIdTooLong": "identyfikator zewnętrzny jest zbyt długi",
"reasonUnstableExternalId": "identyfikator zewnętrzny nie jest stabilny między eksportami",
"reasonDuplicate": "już zaimportowano",
"reasonUnknown": "pominięto",
"detail": "Jeden wiersz na odczyt."
},
"doseHistory": {
"title": "Historia dawek",
"description": "Historia dawek wyeksportowana z innej aplikacji, czytana wprost.",
"pasteLabel": "Wklej eksport",
"fileInputLabel": "Wybierz plik z historią dawek",
"uploadFile": "Wybierz plik",
"preview": "Podgląd",
"import": "Importuj",
"empty": "Najpierw wklej eksport albo wybierz plik.",
"readFailed": "Nie udało się odczytać tego pliku.",
"rateLimited": "Maksymalnie 5 importów na godzinę. Spróbuj później.",
"tooLarge": "Ten plik przekracza limit 16 MB.",
"inProgress": "Import historii dawek już trwa. Poczekaj, aż się zakończy.",
"workerUnavailable": "Proces w tle jest niedostępny, więc nic nie zostało zaimportowane.",
"failed": "Import nie udał się. Nic nie zostało zapisane.",
"columnsHeading": "Co się dzieje z każdą kolumną",
"jsonOnly": "tylko JSON",
"previewLine": "Odczytane wiersze: {rows}, do zaimportowania: {queued}, odrzucone: {refused}",
"submittedLine": "Odczytane wiersze: {rows}, w kolejce do importu: {queued}",
"unmatched": "Żaden zapisany lek nie odpowiada: {names}",
"ambiguous": "Odpowiada więcej niż jednemu lekowi: {names}",
"mirrored": "Skopiowany z innej aplikacji, więc nie można dodać dawki: {names}",
"unknownColumns": "Kolumny bez reguły w importerze, nieodczytane: {names}",
"codingsNotRead": "Wiersze z nieodczytaną wartością Codings: {count}",
"archivedRowsPresent": "Wiersze oznaczone jako należące do zarchiwizowanych leków: {count}. To oznaczenie nie pomija ich ani nie reaktywuje leków; wynik końcowy pokazuje, co dodano.",
"verdict": {
"honoured": "użyta",
"reported": "zgłoszona",
"ignored": "nieodczytana"
},
"column": {
"date": "Godzina rzeczywistego przyjęcia dawki. Jej przesunięcie UTC czytane jest dokładnie tak, jak zapisane.",
"scheduledDate": "Okno, do którego należała dawka, trzymane osobno od godziny przyjęcia. Puste znaczy, że dawka nie należała do żadnego okna.",
"medication": "Dopasowane do leku, który już jest w Twojej kartotece. Z pliku nic nie jest tworzone.",
"nickname": "Próbowane jako druga nazwa, gdy pierwsza do niczego nie pasuje.",
"dosage": "Zapisywane przy dawce tylko wtedy, gdy różni się od zaplanowanej ilości.",
"scheduledDosage": "Porównywane z rzeczywistą ilością, by rozstrzygnąć, czy dawka odbiegła od planu. Nigdy nie zapisywane samo.",
"unit": "Zapisywana razem z ilością, dokładnie tak, jak w pliku. „count” oznacza wielokrotności skonfigurowanej dawki.",
"status": "„Taken” staje się dawką, a „Skipped” świadomym pominięciem. Każda inna wartość nie zapisuje żadnej decyzji i wiersz zostaje odrzucony.",
"archived": "Liczone i zgłaszane. Dawka, która się odbyła, nie znika przez późniejsze zarchiwizowanie leku.",
"codings": "CSV nie dokumentuje dla tej kolumny żadnego kodowania, więc zostaje nietknięta zamiast zgadywana. Wypełnione komórki są liczone.",
"form": "Opisuje lek, nie dawkę.",
"start": "Data rozpoczęcia leku, nie godzina tej dawki.",
"end": "Data zakończenia leku, nie godzina tej dawki."
},
"fatal": {
"emptyFile": "Ten plik nie zawiera wierszy.",
"missingColumns": "W tym pliku brakuje kolumny, której potrzebuje importer: Date, Medication albo Status.",
"unreadableJson": "Ten plik nie jest poprawnym JSON-em.",
"jsonNotAnArray": "Ten JSON nie zawiera listy dawek.",
"jsonNoIntakeTime": "Eksport JSON zapisuje, kiedy dawka była zaplanowana, a nie kiedy została przyjęta, i zaplanowana godzina nie zostanie zapisana jako godzina przyjęcia. Wyeksportuj CSV, który zawiera obie.",
"tooManyRows": "Ten plik ma więcej wierszy, niż może przyjąć jeden import. Podziel go i zaimportuj części."
},
"detail": "Jeden plik obejmuje wszystkie leki, które zawiera."
},
"healthConnect": {
"title": "Eksport z Health Connect",
"description": "Zaimportuj plik ZIP, który aplikacja Health Connect na Androidzie tworzy przy eksporcie danych.",
"choose": "Wybierz plik ZIP",
"uploading": "Przesyłanie…",
"uploadFailed": "Przesyłanie nie powiodło się. Spróbuj ponownie.",
"tooLarge": "Plik jest większy, niż przyjmuje ten serwer.",
"doneSummary": "Zaimportowano wartości: {count}.",
"failed": "Import nie powiódł się: {reason}",
"phase": {
"queued": "Czeka na start",
"unpacking": "Rozpakowywanie pliku",
"parsing": "Odczytywanie wpisów",
"upserting": "Zapisywanie wartości",
"done": "Gotowe",
"failed": "Niepowodzenie"
},
"steps": {
"export": "Na telefonie z Androidem otwórz Health Connect, przejdź do Zarządzaj danymi, potem Eksport i import, i rozpocznij eksport.",
"cloud": "Health Connect zapisuje eksport tylko w aplikacji chmurowej, takiej jak Google Drive, Dropbox czy Nextcloud, nigdy w samym telefonie. Wybierz tam jedną z nich.",
"upload": "Pobierz plik ZIP z tej chmury na to urządzenie i prześlij go tutaj."
},
"dropLabel": "Upuść tutaj plik ZIP z Health Connect",
"dropHint": "lub kliknij, aby go wybrać. Do 1 GB.",
"fileInputLabel": "Plik ZIP eksportu Health Connect",
"privacyNote": "Plik jest usuwany z serwera zaraz po zakończeniu importu. Dane z aplikacji, które łączysz już bezpośrednio, np. Withings lub Fitbit, są pomijane, żeby nic nie trafiło podwójnie. Ponowne przesłanie tego samego pliku niczego nie zmienia.",
"rateLimited": "Za dużo przesyłań w krótkim czasie. Odczekaj minutę i spróbuj ponownie.",
"busy": "Dla Twojego konta trwa już import. Poczekaj, aż się zakończy.",
"rowsSoFar": "Zapisane wartości do tej pory: {count}",
"doneNothing": "Import się zakończył, ale nie było nic nowego do dodania.",
"workouts": "Treningi",
"leftOutConnected": "Pominięte wpisy z aplikacji, które łączysz już bezpośrednio: {count}.",
"nutrientsModuleOff": "Sumy wody i składników odżywczych nie zostały zaimportowane, bo moduł Składniki odżywcze jest wyłączony.",
"cycleModuleOff": "Dane o miesiączce nie zostały zaimportowane, bo śledzenie cyklu jest wyłączone.",
"failure": {
"unsupportedVersion": "Ten eksport Health Connect jest zbyt stary, aby go odczytać. Zaktualizuj Health Connect na telefonie i wyeksportuj ponownie.",
"notHealthConnect": "Ten plik nie jest eksportem Health Connect. Wybierz plik ZIP zapisany przez Health Connect.",
"unsafeSchema": "Ten plik nie ma struktury eksportu Health Connect i nie został odczytany.",
"tooLarge": "Eksport jest większy, niż ten serwer przyjmuje.",
"stagingMissing": "Przesłanego pliku nie było już na serwerze. Prześlij go ponownie.",
"interrupted": "Import został przerwany przez ponowne uruchomienie serwera. Prześlij plik ponownie."
}
}
},
"subtitle": "Eksportuj swoje dane albo importuj pomiary i wpisy z innych aplikacji i plików."
},
"about": {
"title": "O tej aplikacji",
"subtitle": "Wersja, licencja i linki do projektu."
},
"sharing": {
"title": "Udostępnianie",
"subtitle": "Udostępnij dostęp tylko do odczytu do swoich danych."
},
"insights": {
"subtitle": "Rozmieść sekcje przeglądu i kolejność chipów."
},
"medications": {
"subtitle": "Zarządzaj widokiem i kolejnością listy leków."
},
"mood": {
"subtitle": "Uporządkuj tagi nastroju, grupy i kolejność wyboru."
},
"labs": {
"subtitle": "Zarządzaj widokiem, sortowaniem i biomarkerami."
},
"illness": {
"subtitle": "Zarządzaj widokiem i kolejnością epizodów."
},
"vorsorge": {
"subtitle": "Zarządzaj widokiem, kolejnością i poszczególnymi przypomnieniami."
},
"modules": {
"title": "Moduły",
"saved": "Zapisano",
"error": "Nie udało się zapisać. Spróbuj ponownie.",
"toggleable": {
"title": "Co śledzisz",
"description": "Wyłączone moduły znikają z nawigacji, kafelków i analiz, a Twoje dane pozostają nienaruszone."
},
"manageIn": "Zarządzaj w {section}",
"operatorDisabled": "Wyłączone na całym serwerze",
"subtitle": "Wybierz, które obszary śledzenia pokazuje HealthLog w aplikacji.",
"backToHub": "Wróć do Modułów",
"openModuleSettings": "Ustawienia modułu",
"pages": {
"medications": {
"title": "Leki",
"description": "Miejsca wstrzyknięć pomijane w rotacji."
},
"mood": {
"title": "Tagi nastroju",
"description": "Grupy, własne tagi i tagi zarchiwizowane."
},
"labs": {
"title": "Badania",
"description": "Biomarkery i rozpoznawanie tekstu na urządzeniu dla wyników badań."
},
"arrangementTitle": "Kolejność i widok",
"arrangementDescription": "Sortowanie i widok tej listy ustawiasz w Układzie.",
"openArrangement": "Otwórz w Układzie",
"moduleSettingsTitle": "Ustawienia modułu",
"moduleSettingsDescription": "Wszystko poza kolejnością i widokiem jest na stronie modułu w Modułach."
}
},
"gesundheitsakte": {
"title": "Dokumentacja zdrowotna",
"subtitle": "Eksportuj kompletną dokumentację zdrowotną gotową dla lekarza."
},
"coach": {
"title": "Coach",
"subtitle": "Dostosuj Coacha, jego proaktywne podpowiedzi i pamięć."
},
"security": {
"title": "Bezpieczeństwo",
"subtitle": "Uwierzytelnianie dwuskładnikowe, kody odzyskiwania i klucze dostępu."
},
"privacy": {
"title": "Dane i prywatność",
"subtitle": "Twoje dane, retencja, szyfrowanie i bezpieczeństwo konta w jednym miejscu."
},
"mcp": {
"title": "Łącznik MCP",
"subtitle": "Połącz zewnętrznego asystenta z własnymi danymi zdrowotnymi."
},
"anamnesis": {
"title": "Wywiad medyczny",
"subtitle": "Twoja historia zdrowia, styl życia, dane alarmowe i to, co może czytać AI."
},
"environment": {
"title": "Lokalizacja i pogoda",
"subtitle": "Kontekst pogody, światła dziennego i lokalizacji.",
"disabledHint": "Włącz moduł Środowisko, aby ustawić lokalizację domową i pobierać dzienną pogodę oraz długość dnia.",
"searchPlaceholder": "Szukaj miasta",
"search": "Szukaj",
"searchError": "Nie udało się wyszukać tego miejsca.",
"use": "Użyj",
"select": "Wybierz",
"saveError": "Nie udało się zapisać zmiany.",
"homeSaved": "Zapisano lokalizację domową",
"travelAdded": "Dodano okres lokalizacji.",
"travelRemoved": "Usunięto okres lokalizacji.",
"backfillQueued": "Zaplanowano uzupełnianie.",
"backfillError": "Nie udało się rozpocząć uzupełniania.",
"startDate": "Data początkowa",
"endDate": "Data końcowa",
"storedDays": "Zapisano dni pogody: {count}.",
"home": {
"title": "Lokalizacja domowa",
"description": "Przybliżona lokalizacja na poziomie miasta, nigdy dokładny ślad. Pogoda i światło dzienne są pobierane dla tego miejsca w dni bez okresu lokalizacji, od dnia jego ustawienia.",
"current": "Obecnie: {label}",
"none": "Nie ustawiono jeszcze lokalizacji domowej.",
"since": "Pogoda zapisywana od {date}. Wcześniejsze dni pozostają puste, dopóki nie dodasz okresu lokalizacji."
},
"travel": {
"title": "Okresy lokalizacji",
"description": "Dodaj miejsce i zakres dat: podróż lub fragment wcześniejszej historii. Okres zastępuje Twój dom w dniach, które obejmuje, aby pogoda odpowiadała miejscu, w którym naprawdę byłeś. W ten sposób korygujesz przeszłość.",
"none": "Brak okresów lokalizacji.",
"add": "Dodaj {label}",
"remove": "Usuń okres lokalizacji",
"removeConfirmTitle": "Usunąć tę podróż?",
"removeConfirmBody": "Pomiary z tego okresu pozostają w historii; znika tylko wpis podróży.",
"range": "Od {start} do {end}",
"suggestionsIntro": "Dawarich znalazł dni za granicą, których nie obejmuje jeszcze żaden okres.",
"suggestionUse": "Użyj",
"suggestionDismiss": "Odrzuć sugestię"
},
"backfill": {
"title": "Uzupełnij minione dni",
"description": "Pobierz i zapisz pogodę dla minionego zakresu dat, aby starsze dni weszły do korelacji. Początek domyślnie przyjmuje datę obowiązywania Twojego domu; aby sięgnąć dalej wstecz, najpierw dodaj okres lokalizacji dla tego zakresu.",
"run": "Uzupełnij"
},
"noResults": "Nie znaleziono pasujących miejsc.",
"fetchFailedOne": "Ostatnia aktualizacja pogody w tle nie powiodła się ({when}).",
"fetchFailedFew": "Ostatnie {count} aktualizacje pogody w tle nie powiodły się, najnowsza {when}.",
"fetchFailedOther": "Ostatnich {count} aktualizacji pogody w tle nie powiodło się, najnowsza {when}.",
"airQuality": {
"title": "Jakość powietrza i pyłki",
"description": "Codzienna jakość powietrza, pyłki i UV dla twojej lokalizacji, z modelu CAMS przez Open-Meteo.",
"toggle": "Uwzględniaj jakość powietrza i pyłki",
"operatorDisabled": "Jakość powietrza jest wyłączona na tym serwerze.",
"coverage": "Dni z danymi o jakości powietrza: {count}",
"pollenEuropeOnly": "Dane o pyłkach obejmują tylko Europę.",
"historyProgress": "Uzupełnianie jakości powietrza: {done} z {total} dni",
"historyComplete": "Jakość powietrza uzupełniono dla wszystkich wcześniejszych dni z wpisami, które obejmuje źródło ({total} dni). Starsze dni pozostają puste.",
"attribution": "Źródła danych i licencje",
"saveError": "Nie udało się zapisać ustawienia.",
"latest": "Najnowszy dzień ({date})",
"modelNote": "Modelowane wartości zewnętrzne dla twojej okolicy, nie twoja osobista ekspozycja."
}
},
"score": {
"title": "Wynik zdrowia",
"subtitle": "Wybierz, które filary liczą się do Twojego wyniku.",
"card": {
"title": "Co liczy się do Twojego wyniku",
"description": "Każdy filar, który zapisujesz, liczy się, dopóki nie powiesz tutaj inaczej."
},
"threeAxes": "Zapisywanie, pokazywanie i liczenie to trzy różne rzeczy. Ta strona zmienia tylko ostatnią. Filar wyłączony tutaj nadal jest zapisywany i nadal widoczny w całym HealthLogu, przestaje jedynie ruszać liczbą.",
"recommendation": "Trzy obszary zdrowia to zalecenie, nie wymóg: zapisze się każdy wybór z co najmniej jednym filarem. Węższy wynik liczony jest tak samo i podaje na karcie, na ilu obszarach się opiera.",
"axis": {
"countsFor": "Licz {pillar} do wyniku"
},
"state": {
"counting": "Liczy się do Twojego wyniku",
"waiting": "Wybrany, czeka na dane",
"crisis": "Zamiast wyniku pokazywana jest wskazówka bezpieczeństwa. Z Twoim wyborem wszystko w porządku.",
"readFailed": "Tego filaru nie udało się odczytać przy ostatnim liczeniu."
},
"presets": {
"label": "Punkt wyjścia",
"all": "Wszystkie filary",
"current": "Twój zapisany wybór"
},
"save": "Zapisz",
"saved": "Zapisano",
"error": "Nie udało się zapisać. Spróbuj ponownie.",
"loadFailed": "Nie udało się wczytać Twojego wyboru.",
"eligibilityFailed": "Nie udało się sprawdzić, które filary mają teraz dane. Przełączniki poniżej i tak działają.",
"omitted": "{count} filarów nie ma na liście, bo ich śledzenie jest wyłączone. Włącz moduł z powrotem, a jego filar wróci.",
"omittedLink": "Otwórz moduły",
"refusal": {
"empty": "Wynik zdrowia potrzebuje co najmniej jednego obszaru zdrowia do oceny. Zostaw wybrany przynajmniej jeden, a wynik sam powie, na których obszarach się opiera."
},
"notice": {
"upgrade": {
"title": "Teraz to Ty decydujesz, co się liczy",
"body": "To, które filary liczyły się do Twojego Health Score, szło wcześniej za modułami, które miałeś włączone. Teraz jest to osobna decyzja i podejmujesz ją tutaj. Twoja liczba się przy tym nie ruszyła: nadal liczy dokładnie to, co liczyła wcześniej."
},
"changed": {
"title": "Zmieniłeś to, co się liczy",
"body": "Od {date} Twój wynik liczony jest z innego zestawu filarów. Dni wcześniejsze pochodzą ze starego zestawu, więc obu nie porównujemy, a zmiana tygodniowa pozostaje wstrzymana, dopóki okno porównania nie minie tej zmiany. Historia każdego filaru z osobna biegnie przez nią bez przerwy.",
"bodyUndated": "Twój wynik liczony jest z innego zestawu filarów niż wcześniej. Dni sprzed zmiany pochodzą ze starego zestawu, więc obu nie porównujemy, a zmiana tygodniowa pozostaje wstrzymana, dopóki okno porównania nie minie tej zmiany. Historia każdego filaru z osobna biegnie przez nią bez przerwy."
},
"composition": {
"title": "To, co się liczy, zmieniło się samo",
"left": "Nie liczy się już do Twojego wyniku: {pillars}. Liczba zmieniła się z tego powodu, a nie dlatego, że zmieniło się Twoje zdrowie.",
"joined": "Teraz liczy się do Twojego wyniku: {pillars}."
},
"dismiss": "Rozumiem",
"dismissError": "Nie udało się zapisać. Spróbuj ponownie."
}
},
"access": {
"title": "Udostępniony dostęp",
"subtitle": "Kto może otworzyć twoją kartę zdrowia i czyją kartę możesz otworzyć ty."
}
},
"profile": "Profil",
"language": "Język",
"languageDescription": "Wybierz język wyświetlania aplikacji.",
"timeFormat": {
"title": "Format godziny",
"description": "Określa, czy godziny są wyświetlane w formacie 24-godzinnym czy 12-godzinnym (AM/PM).",
"auto": "Automatycznie (język)",
"h24": "24-godzinny",
"h12": "12-godzinny (AM/PM)",
"saved": "Zapisano format godziny",
"saveError": "Nie udało się zapisać formatu godziny."
},
"dateFormat": {
"title": "Format daty",
"description": "Określa kolejność dnia, miesiąca i roku przy wyświetlaniu dat.",
"auto": "Automatycznie (język)",
"dmy": "DD.MM.RRRR",
"mdy": "MM/DD/RRRR",
"ymd": "RRRR-MM-DD",
"saved": "Zapisano format daty",
"saveError": "Nie udało się zapisać formatu daty."
},
"username": "Nazwa użytkownika",
"height": "Wzrost (cm)",
"heightFtIn": "Wzrost (ft, in)",
"dateOfBirth": "Data urodzenia",
"dateOfBirthHint": "Używane do automatycznego obliczania docelowych wartości ciśnienia.",
"gender": "Płeć",
"genderNone": "Nie podano",
"genderMale": "Mężczyzna",
"genderFemale": "Kobieta",
"genderHint": "Używane do wartości docelowych zależnych od płci.",
"timezone": "Strefa czasowa",
"timezoneHint": "Używane do etykiet osi wykresów, godzin przypomnień, znaczników czasu eksportu i kontekstu Coacha. Zapisane dane pozostają niezmienione.",
"timezoneInvalid": "To nie jest prawidłowa strefa czasowa IANA.",
"profileSaved": "Profil zapisany",
"profilePartiallySaved": "Profil zapisany, ale nie udało się zaktualizować pola {field}.",
"profileNothingSaved": "Nic nie zostało zapisane. Popraw {field} i spróbuj ponownie.",
"profileRejection": {
"tooBig": "Wartość jest powyżej zakresu, który przyjmuje to pole.",
"tooSmall": "Wartość jest poniżej zakresu, który przyjmuje to pole.",
"invalidValue": "To nie jest jedna z odpowiedzi, które przyjmuje to pole.",
"invalidFormat": "To nie jest zapisane w formacie, który to pole może odczytać.",
"invalidType": "Wartość nie dotarła w formacie, który to pole może zapisać.",
"rateLimited": "Zmieniane zbyt często. Odczekaj chwilę i spróbuj ponownie.",
"other": "Ta wartość nie została przyjęta. Sprawdź ją i spróbuj ponownie.",
"reproofRequired": "Wpisz obecne hasło, aby zmienić adres e-mail.",
"reproofFailed": "Hasło jest nieprawidłowe, więc adres e-mail nie został zmieniony.",
"secondFactorRequired": "Potwierdź drugim składnikiem lub kluczem dostępu, aby zmienić adres e-mail."
},
"avatar": {
"title": "Zdjęcie profilowe",
"description": "Prześlij zdjęcie przechowywane na własnym serwerze. Pojawia się w całej aplikacji zamiast zewnętrznej usługi awatarów.",
"upload": "Prześlij zdjęcie",
"replace": "Zmień zdjęcie",
"remove": "Usuń",
"removeTitle": "Usunąć zdjęcie profilowe?",
"removeBody": "Obraz zostanie usunięty z twojego serwera, a jego miejsce zajmą inicjały. Do ponownego wgrania potrzebny będzie oryginalny plik.",
"removeConfirm": "Usuń zdjęcie",
"hint": "JPEG, PNG lub WebP. Do 2 MB i 2048×2048 pikseli.",
"uploaded": "Zaktualizowano zdjęcie profilowe",
"removed": "Usunięto zdjęcie profilowe",
"invalidType": "Nieobsługiwany typ obrazu. Użyj JPEG, PNG lub WebP.",
"tooLarge": "Obraz przekracza limit 2 MB.",
"error": "Nie udało się zaktualizować zdjęcia profilowego. Spróbuj ponownie."
},
"changePassword": "Zmień hasło",
"changePasswordDescription": "Zastąp obecne hasło nowym.",
"currentPassword": "Obecne hasło",
"newPassword": "Nowe hasło",
"confirmNewPassword": "Potwierdź nowe hasło",
"passwordMismatch": "Nowe hasła nie są zgodne",
"passwordUpdated": "Hasło zaktualizowane pomyślnie",
"passkeys": "Passkeys",
"passkeysDescription": "Klucze dostępu umożliwiają bezpieczne logowanie bez hasła.",
"passkeyReauth": {
"title": "Potwierdź swoją tożsamość",
"description": "Przed dodaniem nowego klucza dostępu zweryfikuj jedną z istniejących metod logowania.",
"methodLabel": "Metoda weryfikacji",
"methods": {
"password": "Hasło",
"totp": "Kod z aplikacji uwierzytelniającej",
"passkey": "Klucz dostępu",
"webauthn": "Klucz bezpieczeństwa",
"oidc": "Dostawca tożsamości"
},
"currentPassword": "Aktualne hasło",
"authenticatorCode": "Kod z aplikacji uwierzytelniającej",
"authenticatorPlaceholder": "6-cyfrowy kod z aplikacji uwierzytelniającej",
"verifyAndAdd": "Zweryfikuj i dodaj",
"factorDescription": "Potwierdź istniejącą metodę logowania, zanim dodasz drugi składnik.",
"verifyAndContinue": "Potwierdź i kontynuuj",
"oidcHint": "Zalogujesz się jeszcze raz u swojego dostawcy tożsamości i wrócisz od razu na tę stronę. Potem powtórz to, co chcesz zrobić.",
"continueToProvider": "Przejdź do logowania"
},
"passkeyName": "Nazwa",
"noPasskeys": "Brak zarejestrowanych kluczy dostępu.",
"addPasskey": "Dodaj klucz dostępu",
"passkeyRegistrationFailed": "Rejestracja klucza dostępu nie powiodła się",
"passkeyRegistrationCancelled": "Rejestracja klucza dostępu anulowana",
"passkeyNotSupported": "Twoja przeglądarka lub urządzenie nie obsługuje jeszcze kluczy dostępu. Wypróbuj inną przeglądarkę lub urządzenie.",
"passkeyAlreadyRegistered": "To urządzenie jest już zarejestrowane jako klucz dostępu Twojego konta.",
"passkeySecurityBlocked": "Twoja przeglądarka zablokowała żądanie klucza dostępu ze względów bezpieczeństwa. Upewnij się, że jesteś w zaufanym źródle HTTPS i spróbuj ponownie.",
"passkeyTimeout": "Żądanie klucza dostępu wygasło. Spróbuj ponownie.",
"passkeyUnknownError": "Rejestracja klucza dostępu nie powiodła się: {message}",
"deletePasskey": "Usunąć klucz dostępu?",
"deletePasskeyDescription": "Klucz dostępu zostanie trwale usunięty.",
"singleDevice": "Pojedyncze urządzenie",
"multiDevice": "Wiele urządzeń",
"backedUp": "z kopią zapasową",
"telegram": "Telegram Notifications",
"telegramDescription": "Get reminders for missed medication intake via Telegram.",
"botToken": "Token bota",
"chatId": "ID czatu",
"enableNotifications": "Włącz powiadomienia",
"telegramStep1": "Utwórz bota przez @BotFather w Telegramie i skopiuj token.",
"telegramStep2": "Wyślij /start do swojego bota, aby aktywować czat.",
"telegramStep3": "Znajdź swoje ID czatu przez @userinfobot lub API bota.",
"ntfy": "ntfy",
"ntfyDescription": "Powiadomienia przez ntfy (własny serwer lub ntfy.sh).",
"ntfyEnable": "Włącz ntfy",
"ntfyServer": "Adres URL serwera",
"ntfyTopic": "Topic",
"ntfyAuthToken": "Token uwierzytelniania (opcjonalny)",
"ntfyAuthTokenHint": "Wymagany tylko dla prywatnych tematów z kontrolą dostępu.",
"webhook": "Webhook",
"webhookDescription": "Powiadomienia metodą POST na dowolny URL: Discord, Slack, Gotify, Home Assistant, n8n lub przekaźnik przyjmujący JSON.",
"webhookEnable": "Włącz webhook",
"webhookUrl": "Adres URL webhooka",
"webhookUrlHint": "Pełny adres URL dla żądania POST. Adres w sieci prywatnej musi zatwierdzić administrator serwera.",
"webhookHeaderName": "Nazwa nagłówka (opcjonalnie)",
"webhookHeaderValue": "Wartość nagłówka (opcjonalnie)",
"webhookFormat": "Format wiadomości",
"webhookFormatGeneric": "Ogólny JSON",
"webhookFormatGenericHint": "Wklej adres webhooka Discorda lub Slacka bez zmian. Home Assistant i n8n odczytują pola title, message, eventType i priority.",
"webhookFormatGotify": "Gotify",
"webhookFormatGotifyHint": "Użyj adresu URL kończącego się na /message, a token aplikacji wpisz w nagłówku X-Gotify-Key.",
"email": "E-mail",
"emailDescription": "Otrzymuj alerty i przypomnienia e-mailem.",
"emailEnable": "Włącz e-mail",
"emailRecipient": "Adres odbiorcy",
"webPush": "Push przeglądarki",
"webPushDescription": "Otrzymuj powiadomienia bezpośrednio w przeglądarce, nawet gdy HealthLog nie jest otwarty.",
"webPushNotSupported": "Twoja przeglądarka nie obsługuje powiadomień push.",
"webPushDenied": "Powiadomienia push są zablokowane. Zezwól na nie w ustawieniach przeglądarki.",
"webPushNotConfigured": "Web Push nie jest skonfigurowany na serwerze.",
"webPushSubscribe": "Włącz push",
"webPushUnsubscribe": "Wyłącz push",
"webPushSubscribed": "Powiadomienia push włączone!",
"webPushUnsubscribed": "Powiadomienia push wyłączone.",
"webPushSubscribeFailed": "Aktywacja nie powiodła się",
"codexConnected": "ChatGPT połączony pomyślnie! Insights jest teraz aktywny.",
"codexDisconnected": "Połączenie z ChatGPT usunięte.",
"codexConnectionFailed": "Połączenie z ChatGPT nie powiodło się. Spróbuj ponownie.",
"rawData": "Wysyłaj szczegółową historię",
"rawDataOnDescription": "Oprócz podsumowań dostawca otrzymuje średnie z Twoich pomiarów: dzienne z ostatnich 90 dni, tygodniowe z roku wcześniej i miesięczne do 5 lat wstecz, każdą z datą i liczbą pomiarów. Pojedyncze pomiary, Twoje imię i adres e-mail nie są wysyłane.",
"rawDataOffDescription": "Wysyłane są tylko podsumowania: ostatnia wartość, średnie, trendy, minimum i maksimum w stałych okresach. Bez serii pomiarów.",
"rawDataWarning": "Szczegółowa historia jest włączona: każda analiza wysyła dodatkowo średnie dzienne z ostatnich 90 dni, średnie tygodniowe z roku wcześniej i średnie miesięczne do 5 lat wstecz.",
"regenerateInsights": "Wygeneruj raporty ponownie",
"regenerateSuccess": "Raporty wygenerowane ponownie",
"regenerateRateLimit": "Poczekaj, osiągnięto godzinny limit analiz.",
"lastGeneratedAt": "Ostatnio wygenerowano",
"ai": {
"chatgptConnectedBadge": "ChatGPT połączony",
"adminAiActiveBadge": "Aktywny dostawca administratora",
"connectionExpiredBadge": "Połączenie wygasło",
"connectedSince": "Połączono od {when}.",
"deviceCodeHeading": "Dokończ łączenie na chatgpt.com",
"deviceCodeStep1": "Otwórz ten link na dowolnym urządzeniu:",
"deviceCodeStep2": "Wprowadź ten jednorazowy kod:",
"deviceCodeStep3": "Zatwierdź połączenie. Ta strona zaktualizuje się automatycznie.",
"deviceCodeCopy": "Kopiuj",
"deviceCodeWaiting": "Oczekiwanie na zatwierdzenie…",
"deviceCodeCancel": "Anuluj",
"oauthNotConfigured": "OAuth ChatGPT nie jest skonfigurowany w tej instancji. Użyj zamiast tego własnego klucza API poniżej.",
"modelLabel": "Model",
"modelOptionDefault": "— Domyślny —",
"modelOptionCustom": "Niestandardowy…",
"customModelLabel": "Nazwa niestandardowego modelu",
"anthropicKeyLabel": "Klucz API Anthropic",
"baseUrlLabel": "Base URL",
"localKeyLabel": "Klucz API (opcjonalny)",
"localDescription": "Działa tu każdy punkt końcowy zgodny z OpenAI: model lokalny (Ollama, LM Studio) albo brama taka jak LiteLLM, OpenRouter czy vLLM. Adres bazowy kończy się na /v1; klucz API jest opcjonalny.",
"savedPreview": "(zapisano {preview})",
"savedShort": "(zapisano)",
"saveCta": "Zapisz",
"saved": "Zapisano",
"errorGeneric": "Błąd",
"providerChain": {
"types": {
"codex": "ChatGPT (Codex)",
"openai": "OpenAI (Twój klucz)",
"anthropic": "Anthropic (Claude)",
"local": "Model lokalny",
"openai-compatible": "Brama zgodna z OpenAI",
"admin-openai": "OpenAI administratora"
},
"title": "Łańcuch zapasowy",
"description": "Gdy aktywny dostawca zawiedzie, HealthLog próbuje kolejnego włączonego w tej kolejności.",
"moveUp": "Przesuń w górę",
"moveDown": "Przesuń w dół",
"removeFromChain": "Usuń z łańcucha",
"addProvider": "Dodaj dostawcę",
"addNoneAvailable": "Wszyscy dostawcy są już w łańcuchu",
"saveOrder": "Zapisz kolejność łańcucha",
"saved": "Łańcuch zapisany",
"saveFailed": "Zapis łańcucha nie powiódł się",
"resetDefaults": "Przywróć domyślne",
"resetConfirmTitle": "Przywrócić domyślny łańcuch?",
"resetConfirmBody": "Łańcuch wraca do Codex → OpenAI → Anthropic → Lokalny → OpenAI administratora. Zapisane dane logowania pozostają nienaruszone."
},
"activeProviderHeading": "Aktywny dostawca",
"activeProviderLabel": "Skonfiguruj dostawcę",
"providerSelect": {
"codex": "Konto ChatGPT (Codex)",
"openai": "OpenAI (Twój klucz API)",
"anthropic": "Anthropic (Claude)",
"local": "Model lokalny (zgodny z OpenAI)",
"openai-compatible": "Brama zgodna z OpenAI",
"admin-openai": "OpenAI udostępniony przez administratora"
},
"compat": {
"description": "Pełnoprawny dostawca dla każdego punktu końcowego mówiącego API /v1/chat/completions OpenAI: LiteLLM, OpenRouter, vLLM lub inna brama. Adres bazowy kończy się na /v1, klucz API jest opcjonalny, a model to ten, który kieruje twoja brama. Twój klucz OpenAI nigdy nie trafia do tego punktu końcowego, bo ten dostawca ma własny.",
"keyLabel": "Klucz API (opcjonalny)",
"modelHint": "Nazwa modelu, której oczekuje twoja brama. Pozostawione puste, użyty zostanie model zapisany dla pozostałych dostawców; gdy nie ustawiono żadnego, ten dostawca jest pomijany."
},
"openai": {
"modelSelect": "Model",
"modelOptionCustom": "Niestandardowy slug…",
"modelCustomLabel": "Slug niestandardowego modelu",
"modelCustomPlaceholder": "gpt-5",
"baseUrlLabel": "Adres URL bazowy (zaawansowane)",
"baseUrlPlaceholder": "https://api.openai.com/v1",
"baseUrlHelp": "Nadpisuj tylko przy korzystaniu z bramy zgodnej z OpenAI. Pozostaw puste dla samego OpenAI.",
"showAdvanced": "Pokaż zaawansowane",
"hideAdvanced": "Ukryj zaawansowane",
"apiKey": "Klucz API",
"apiKeyPlaceholder": "sk-…"
},
"codex": {
"statusConnected": "Połączono",
"statusDisconnected": "Niepołączono",
"statusExpired": "Połączenie wygasło",
"connectButton": "Połącz z ChatGPT",
"disconnectButton": "Rozłącz",
"disconnectTitle": "Odłączyć ChatGPT?",
"disconnectBody": "Zapisane logowanie zostanie usunięte razem z zapisanym tekstem analiz. Ponowne połączenie wymaga przejścia przez kod urządzenia jeszcze raz.",
"disconnectConfirm": "Odłącz",
"modelSlugLabel": "Slug modelu",
"modelSlugBody": "Codex używa modelu, do którego kieruje Twoja subskrypcja ChatGPT. Zmienna środowiskowa CODEX_MODEL pozwala operatorowi nadpisać to w instancji.",
"lastInsight": "Ostatnia analiza: {when}"
},
"adminOpenai": {
"title": "OpenAI administratora",
"body": "Klucz OpenAI udostępniony przez operatora, używany jako ostateczność bez osobistego dostawcy. Nie ma tu nic do skonfigurowania.",
"notConfigured": "Operator nie skonfigurował współdzielonego klucza OpenAI w tej instancji."
},
"testProvider": "Przetestuj aktywnego dostawcę",
"testSuccess": "OK: {provider} ({model})",
"testFailedShort": "Test nie powiódł się: {message}",
"testUnexpectedResponse": "Połączenie z dostawcą AI nie powiodło się: nieoczekiwana odpowiedź serwera.",
"testReasonCredentials": "Dostawca odrzucił dane logowania. Uwierzytelnij się ponownie w ustawieniach AI.",
"testReasonRateLimited": "Dostawca ograniczył żądanie. Spróbuj ponownie za chwilę.",
"testReasonServerError": "Dostawca AI zwrócił błąd serwera.",
"testReasonBadRequest": "Dostawca odrzucił żądanie (HTTP {status}). Punkt końcowy odpowiedział, więc problem dotyczy formatu żądania lub nazwy modelu, a nie łączności.",
"testReasonUnreachable": "Nie udało się połączyć z dostawcą AI.",
"coachMemory": {
"title": "Co Coach pamięta",
"description": "Trwałe informacje, które przekazałeś Coachowi.",
"empty": "Coach nie zapisał jeszcze żadnych informacji. Podczas rozmowy zapamiętuje trwałe szczegóły, którymi się dzielisz (Twoje cele, dolegliwości, preferencje), i możesz je tutaj w każdej chwili usunąć.",
"learnedPrefix": "zapamiętano {when}",
"categoryPreference": "Preferencje",
"categoryCondition": "Dolegliwości",
"categoryGoal": "Cele",
"categoryConstraint": "Ograniczenia",
"categoryContext": "Kontekst",
"forgetAria": "Zapomnij tę informację",
"forgetTitle": "Zapomnieć tę informację?",
"forgetBody": "Coach przestanie z niej korzystać od następnej wiadomości. Zapomnianej informacji nie da się odzyskać.",
"forgetConfirm": "Zapomnij",
"forgetAll": "Zapomnij wszystko",
"forgetAllConfirmTitle": "Zapomnieć wszystko, co Coach pamięta?",
"forgetAllConfirmBody": "Spowoduje to usunięcie wszystkich zapisanych informacji. Coach zacznie od nowa przy następnej rozmowie. Tej operacji nie można cofnąć.",
"forgetAllConfirmAction": "Zapomnij wszystko",
"cancel": "Anuluj",
"summaryNote": "Coach może też przechowywać krótkie, bieżące podsumowanie każdej rozmowy. Nie ma dla niego osobnej kontrolki: usunięcie rozmowy usuwa jej podsumowanie.",
"loadError": "Nie udało się wczytać tego, co Coach pamięta.",
"forgotToast": "Informacja zapomniana.",
"forgotError": "Nie udało się zapomnieć tej informacji. Spróbuj ponownie.",
"clearedToast": "Zapomniano {count} zapisanych informacji.",
"clearError": "Nie udało się usunąć zapisanych informacji. Spróbuj ponownie.",
"detail": "Wykorzystuje je, aby jego odpowiedzi pozostawały trafne. Usuń wszystko, o czym wolisz, by zapomniał.",
"categoryMedication": "Leki"
},
"coachReminders": {
"title": "Twoje przypomnienia",
"description": "Rzeczy, o których przypomnienie poprosiłeś Coacha.",
"empty": "Brak przypomnień. Poproś Coacha, aby przypomniał Ci o czymś, a pojawi się tutaj.",
"loadError": "Nie udało się wczytać Twoich przypomnień.",
"dueHeading": "Termin teraz",
"allHeading": "Zapisane",
"duePrefix": "termin {when}",
"confirm": "Zachowaj",
"markDone": "Gotowe",
"dismiss": "Odrzuć",
"deleteAria": "Usuń to przypomnienie",
"note": "Przypomnienia są przechowywane w postaci zaszyfrowanej. Usuń je w dowolnej chwili, a znikną z tego, co widzi Coach.",
"status": {
"proposed": "Sugerowane",
"active": "Zapisane",
"due": "Termin",
"surfaced": "Wyświetlone",
"done": "Gotowe",
"dismissed": "Odrzucone"
},
"deleteConfirmTitle": "Usunąć to przypomnienie?",
"deleteConfirmBody": "Przestanie się pojawiać. Zapisane wcześniej dane pozostają bez zmian.",
"deleteConfirmAction": "Usuń",
"detail": "Te, których termin nadszedł, pojawiają się tutaj i w Coachu.",
"readOnlyNote": "Coach jest teraz niedostępny, ale nadal możesz czytać i usuwać swoje przypomnienia."
},
"aboutMe": {
"title": "O mnie",
"description": "Osobisty kontekst, który Coach i codzienny briefing czytają obok Twoich danych.",
"placeholder": "Np. praca zmianowa, dieta wegetariańska, kontuzja kolana, trening do półmaratonu…",
"charCount": "{used} / {max} znaków",
"clear": "Wyczyść",
"clearTitle": "Wyczyścić notatkę „O mnie”?",
"clearBody": "Usuwa tylko tekst notatki. Alergie i nietolerancje pozostają bez zmian.",
"clearConfirm": "Wyczyść notatkę",
"save": "Zapisz",
"savedToast": "Notatka „O mnie” zapisana",
"clearedToast": "Notatka „O mnie” usunięta.",
"saveError": "Nie udało się zapisać. Spróbuj ponownie.",
"loadError": "Nie udało się wczytać notatki.",
"hint": "Przekazywane Coachowi i codziennemu briefingowi jako dodatkowy kontekst. Zostaw puste, aby nic nie wysyłać.",
"profileHint": "Wiek i płeć pochodzą z Twojego profilu i są dołączane automatycznie.",
"freeTextLabel": "O mnie (tekst dowolny)",
"conditionsPlaceholder": "Np. nadciśnienie, cukrzyca typu 2…",
"allergiesPlaceholder": "Np. nietolerancja laktozy, alergia na penicylinę…",
"focusPlaceholder": "Np. pilnuj mojego ciśnienia, motywuj mnie do ruchu…",
"questionsTitle": "Coach ma pytania",
"questionsOpenCoach": "Odpowiedz w Coachu"
},
"responseTimeoutHeading": "Limit czasu odpowiedzi",
"responseTimeoutBody": "Jak długo czekać na odpowiedź AI, zanim nastąpi przerwanie. Zwiększ wartość dla lokalnego lub samodzielnie hostowanego modelu, który potrzebuje czasu na załadowanie przy pierwszym żądaniu. Bez wartości odpowiedź może trwać {seconds} s, a dzienne podsumowanie do {briefingSeconds} s.",
"responseTimeoutLabel": "Limit czasu odpowiedzi (sekundy)",
"responseTimeoutPlaceholder": "Domyślnie ({seconds} s)",
"responseTimeoutInvalid": "Podaj liczbę od 10 do 600 sekund.",
"autoRead": {
"title": "Automatyczne czytanie dokumentów przez AI",
"subLabel": "Dokumenty są czytane i indeksowane przez skonfigurowanego dostawcę AI bez potwierdzania każdego dokumentu.",
"honesty": "Po włączeniu każdy przesłany dokument jest wysyłany do skonfigurowanego dostawcy AI, aby go odczytać, opisać i zaindeksować do wyszukiwania, bez potwierdzania każdego dokumentu. Włączenie działa też wstecz: dokumenty już przesłane, które nie mają jeszcze streszczenia, również zostaną wysłane (do 200 przy każdym włączeniu). Dzieje się to na serwerze, a treść dokumentu opuszcza to urządzenie i trafia do tego dostawcy. Jeśli skonfigurowany dostawca to połączenie subskrypcyjne (zalogowane konto AI zamiast klucza API), obowiązują jego własne ustawienia danych: dostawcy subskrypcyjni mogą wykorzystywać treść do ulepszania swoich modeli i nie obejmuje tego żadna umowa powierzenia przetwarzania danych. Dokumenty odczytywane przez samodzielnie hostowany model lokalny nigdy nie opuszczają Twojego serwera. Domyślnie wyłączone; włącz je tylko wtedy, gdy akceptujesz ten kompromis dla swoich dokumentów.",
"confirm": "Rozumiem, włącz",
"cancel": "Anuluj",
"restingFrugal": "Wstrzymane na oszczędnym poziomie AI: dokumenty są czytane tylko na żądanie."
},
"centralCodex": {
"title": "Użyj wspólnego dostępu AI serwera",
"subLabel": "Zapytania AI idą przez wspólne połączenie serwera, a Twoi dostawcy służą jako zapas.",
"honesty": "Wspólny dostęp to jedno zalogowane konto AI, które operator podłączył dla wszystkich na tym serwerze, a nie Twój własny klucz. Zapytania, które przez nie wysyłasz, są domyślnie wykorzystywane do trenowania modeli dostawcy i nie obejmuje ich żadna umowa powierzenia przetwarzania danych, godzinowe i tygodniowe limity konta dzielisz z wszystkimi innymi, którzy się zgodzili, a Twoi właśni dostawcy są próbowani jako pierwsi. Włącz to tylko, jeśli akceptujesz ten kompromis.",
"confirm": "Rozumiem, użyj połączenia",
"cancel": "Anuluj"
},
"consent": {
"title": "Zgoda na AI",
"activeSince": "Udzielona {date}: Twoje dane zdrowotne mogą trafiać do skonfigurowanego dostawcy na potrzeby funkcji AI.",
"withdraw": "Wycofaj zgodę",
"confirmBody": "Jeśli żadna inna Twoja zgoda ich nie obejmuje, od razu przestają działać: Coach i Insights tam, gdzie korzystają z dostępu AI zapewnianego przez ten serwer, oraz czytanie dokumentów przez model online. Na własnym kluczu lub lokalnym modelu Coach i Insights działają dalej. Jeśli żadna inna zgoda nie obejmuje już Insights, notatki napisane dla Ciebie przez model zostają usunięte: notatki o stanie, codzienne podsumowanie, podsumowania okresu napisane przez model, linie po nowym pomiarze i notatki o treningach. Twoje rozmowy z Coachem, to, co zapamiętał Coach, Twoje plany i podsumowania dokumentów zostają, a Ty możesz je sam przeczytać lub usunąć.",
"confirmWithdraw": "Wycofaj",
"grantError": "Nie udało się zapisać zgody. Spróbuj ponownie.",
"error": "Nie udało się zapisać wycofania. Spróbuj ponownie.",
"documentReading": {
"title": "Zgoda na odczyt dokumentów",
"activeSince": "Udzielona {date}: dokumenty, skany badań i opisy leków mogą trafiać do Twojej usługi AI do odczytu.",
"confirmBody": "Dokumenty, zeskanowane wyniki badań i opisy leków nie są już wysyłane do odczytu. Nic, co już masz, nie zostaje usunięte."
},
"activeSinceNamed": "Udzielona {date}: Twoje dane zdrowotne mogą trafiać do {providers} na potrzeby funkcji AI.",
"activeUndated": "Udzielona: Twoje dane zdrowotne mogą trafiać do skonfigurowanego dostawcy na potrzeby funkcji AI.",
"request": {
"title": "Twoja zgoda, zanim AI zacznie działać",
"body": "AI na tym serwerze korzysta z usługi zapewnianej przez operatora: {providers}. Dopóki się nie zgodzisz, nic z Twoich danych tam nie trafia.",
"data": "Gdy się zgodzisz, HealthLog wysyła tej usłudze to, czego potrzebują funkcje AI: pomiary takie jak waga, ciśnienie, tętno, sen i aktywność, Twoje leki, nastrój, wyniki badań i wpisy cyklu, jeśli je prowadzisz, to, co piszesz w profilu i do Coacha, oraz dokumenty, które zdecydujesz się dać do odczytu. Usługa pisze z tego Twoje dzienne podsumowanie, uwagi do pomiarów i odpowiedzi Coacha.",
"withdrawHint": "Zgodę możesz wycofać w każdej chwili w Ustawieniach, AI. Od tej chwili nic więcej nie jest wysyłane.",
"agree": "Zgadzam się",
"dismiss": "Nie teraz"
}
},
"operatorOff": {
"allTitle": "AI jest wyłączone na tym serwerze",
"allBody": "Osoba prowadząca ten serwer wyłączyła AI. HealthLog nadal działa ze wszystkimi Twoimi danymi; funkcje wymagające AI po prostu się nie wyświetlają.",
"someTitle": "Niektóre funkcje AI są wyłączone na tym serwerze",
"someBody": "Osoba prowadząca ten serwer wyłączyła: {switches}. Wszystko inne, w tym wszystkie Twoje dane, działa jak zwykle.",
"testRefused": "AI jest wyłączone na tym serwerze, więc nie ma czego testować.",
"autoRead": "Odczyt dokumentów przez AI jest wyłączony na tym serwerze."
},
"coachConversations": {
"title": "Rozmowy z Coachem",
"description": "Otwórz rozmowę, aby ją przeczytać, albo ją usuń.",
"more": "Pokaż więcej",
"openAll": "Otwórz wszystkie rozmowy"
},
"coachPlans": {
"title": "Plany z Coachem",
"description": "Plany uzgodnione z Coachem, do przeczytania lub usunięcia.",
"open": "Otwórz plany"
},
"reasoning": {
"label": "Rozumowanie",
"hint": "Modele rozumujące, takie jak Gemma czy Qwen, myślą przed odpowiedzią. Po wyłączeniu cały budżet odpowiedzi idzie na samą odpowiedź.",
"options": {
"default": "Domyślnie",
"none": "Wyłączone",
"low": "Niskie",
"medium": "Średnie",
"high": "Wysokie"
},
"coachNote": "W Coachu obowiązuje głębokość myślenia z ustawień Coacha.",
"backgroundNote": "Praca w tle, taka jak codzienne podsumowanie, nie korzysta z tego ustawienia: myśli najwyżej na poziomie Średnie, niżej, gdy operator ustawi niższy limit, a na poziomie Oszczędny wcale."
},
"providerCardDescription": "Skonfiguruj klucz i model każdego dostawcy; kolejność poniżej decyduje, którego HealthLog pyta najpierw.",
"runtimeTitle": "Sprawdź i odśwież",
"usage": {
"title": "Użycie AI",
"description": "Ile pracy AI wykonuje się dla Ciebie w tle, przy czym Coach działa tak samo na każdym poziomie.",
"levels": {
"frugal": {
"label": "Oszczędny",
"hint": "Karty odświeżają się po synchronizacji najwyżej raz dziennie, krótkie podsumowanie dnia, dokumenty są czytane tylko na żądanie."
},
"standard": {
"label": "Standardowy",
"hint": "Karty odświeżają się po synchronizacji co kilka godzin, pełne podsumowanie dnia."
},
"full": {
"label": "Pełny",
"hint": "Karty odświeżają się po nowych danych nawet co godzinę, jak przed wprowadzeniem tego ustawienia."
}
},
"limited": "Ograniczone przez administratora serwera.",
"estimate": "około {tokens} tokenów dziennie, szacunkowo",
"measured": "Zmierzono: {tokens} tokenów dziennie w ostatnich {days} dniach, łącznie z Coachem. Wartości dla poziomów są szacunkami.",
"noEstimate": "Szacunek dla każdego poziomu pojawi się po trzech dniach korzystania z AI.",
"capped": "Wybrano poziom {choice}, na który serwer obecnie nie pozwala, więc obowiązuje {level}. Twój wybór zostaje zapisany.",
"followsDefault": "Korzystasz z ustawienia domyślnego serwera ({level}).",
"useDefault": "Użyj ustawienia domyślnego serwera ({level})",
"saveError": "Nie udało się zapisać poziomu. Spróbuj ponownie."
},
"removeKey": {
"label": "Usuń klucz API",
"title": "Usunąć zapisany klucz API?",
"body": "HealthLog usuwa zapisany klucz i nie może go odzyskać. Wpisz go ponownie, aby dalej z niego korzystać.",
"confirm": "Usuń klucz API",
"done": "Usunięto klucz API.",
"failed": "Nie udało się usunąć klucza API."
}
},
"dashboard": {
"units": {
"title": "Jednostki",
"description": "Wybierz sposób wyświetlania odległości i prędkości na wykresach i kafelkach.",
"metric": "Metryczne",
"imperial": "Imperialne",
"saved": "Zapisano preferencję jednostek",
"saveError": "Nie udało się zapisać preferencji jednostek."
},
"glucoseUnit": {
"title": "Glukoza we krwi",
"description": "Jednostka, w której pokazywane są pomiary glukozy. Zapis pozostaje taki sam w obu przypadkach.",
"saved": "Zapisano jednostkę glukozy",
"saveError": "Nie udało się zapisać jednostki glukozy."
}
},
"withings": "Withings",
"withingsDescription": "Połącz wagę i ciśnieniomierz Withings, aby automatycznie synchronizować wagę, skład ciała i ciśnienie krwi.",
"withingsCredentials": "Dane logowania API",
"withingsClientId": "ID klienta",
"withingsClientSecret": "Sekret klienta",
"withingsCredentialsSaved": "Dane logowania zapisane",
"withingsCredentialsSavedPlaceholder": "Zapisano. Wprowadź nowy, aby zastąpić",
"withingsCredentialsSavedPlaceholderSecret": "Zapisano. Wprowadź nowy, aby zastąpić",
"withingsSaveCredentials": "Zapisz",
"configured": "Skonfigurowano",
"withingsSync": "Synchronizuj teraz",
"withingsFullSync": "Synchronizuj wszystkie dane",
"withingsFullSyncTitle": "Pełna synchronizacja?",
"withingsFullSyncDescription": "Wszystkie dostępne dane Withings zostaną w pełni zsynchronizowane. Może to chwilę potrwać w zależności od historii.",
"withingsSyncResult": "{count} pomiarów zsynchronizowano",
"syncOutcome": {
"empty": "Nie ma nic nowego do zaimportowania. Wszystko jest aktualne.",
"failed": "Nic nie zostało zapisane. Następne uruchomienie spróbuje ponownie.",
"partial": "Zsynchronizowano {count} pomiarów. Części danych nie udało się zapisać; następne uruchomienie spróbuje ponownie."
},
"withingsFullSyncResult": "{count} pomiarów w pełni zsynchronizowano",
"withingsSyncFailed": "Synchronizacja nie powiodła się",
"withingsOauthConnected": "Withings połączony. Pierwsza synchronizacja rozpocznie się w tle.",
"withingsOauthFailed": "Połączenie z Withings nie powiodło się",
"withingsOauthError": {
"csrf1": "Kontrola bezpieczeństwa nie powiodła się, ponieważ brakowało pliku cookie przeglądarki. Rozpocznij połączenie ponownie w tej samej przeglądarce.",
"replay": "Ten link potwierdzający został już użyty. Rozpocznij połączenie ponownie.",
"state": "Odpowiedź Withings nie pasuje do żadnego otwartego żądania połączenia. Rozpocznij połączenie ponownie.",
"expired": "Żądanie połączenia wygasło. Rozpocznij połączenie ponownie i dokończ autoryzację w ciągu kilku minut.",
"cross_user": "Odpowiedź należy do żądania innego konta. Rozpocznij połączenie ponownie z własnego konta.",
"nocode": "Withings nie zwrócił kodu autoryzacji. Spróbuj ponownie i zezwól na dostęp w oknie Withings.",
"nocreds": "Brak zapisanych danych dostępowych API Withings. Najpierw zapisz Client ID i Client Secret, potem połącz ponownie.",
"token": "Wymiana tokenów z Withings nie powiodła się. Sprawdź Client ID i Client Secret i spróbuj ponownie.",
"generic": "Nieznany błąd podczas łączenia. Rozpocznij połączenie ponownie.",
"already_linked": "To konto Withings jest już połączone z innym profilem HealthLog. Zaloguj się do Withings kontem należącym do tego profilu albo najpierw odłącz je od tamtego profilu."
},
"withingsSynchronize": "Synchronizuj",
"withingsDisconnect": "Rozłącz",
"withingsDisconnectTitle": "Rozłączyć Withings?",
"withingsDisconnectDescription": "Połączenie z Withings zostanie rozłączone. Wcześniej zsynchronizowane dane zostaną zachowane.",
"withingsConnect": "Połącz z Withings",
"withingsNoCredentials": "Najpierw wprowadź powyżej dane logowania API, aby połączyć Withings.",
"whoop": "WHOOP",
"whoopDescription": "Połącz opaskę WHOOP, aby synchronizować regenerację, sen, obciążenie i treningi prosto do HealthLog.",
"whoopCredentials": "Dane API",
"whoopClientId": "Client ID",
"whoopClientSecret": "Client Secret",
"whoopCredentialsSaved": "Dane zapisane",
"whoopCredentialsSavedPlaceholder": "Zapisano. Wpisz nowe, aby zastąpić",
"whoopCredentialsSavedPlaceholderSecret": "Zapisano. Wpisz nowe, aby zastąpić",
"whoopSaveCredentials": "Zapisz",
"whoopSync": "Synchronizuj teraz",
"whoopFullSync": "Synchronizuj wszystkie dane",
"whoopFullSyncTitle": "Pełna synchronizacja?",
"whoopFullSyncDescription": "Cała dostępna historia WHOOP zostanie w pełni zsynchronizowana. Może to chwilę potrwać w zależności od historii.",
"whoopSyncResult": "Zsynchronizowano {count} pomiarów",
"whoopSyncFailed": "Synchronizacja nie powiodła się",
"whoopSynchronize": "Synchronizuj",
"whoopDisconnect": "Odłącz",
"whoopDisconnectTitle": "Odłączyć WHOOP?",
"whoopDisconnectDescription": "Połączenie z WHOOP zostanie zakończone. Wcześniej zsynchronizowane dane zostaną zachowane.",
"whoopConnect": "Połącz z WHOOP",
"whoopNoCredentials": "Wprowadź powyżej swoje dane API, aby połączyć WHOOP.",
"whoopOauthConnected": "WHOOP połączony. Pierwsza synchronizacja startuje w tle.",
"whoopOauthFailed": "Połączenie z WHOOP nie powiodło się",
"whoopOauthError": {
"csrf1": "Kontrola bezpieczeństwa nie powiodła się, ponieważ brakowało pliku cookie przeglądarki. Rozpocznij połączenie ponownie w tej samej przeglądarce.",
"state": "Odpowiedź z WHOOP nie pasowała do żadnego otwartego żądania połączenia. Rozpocznij połączenie ponownie.",
"expired": "Żądanie połączenia wygasło przed zakończeniem. Rozpocznij połączenie ponownie.",
"cross_user": "Odpowiedź należy do żądania z innego konta. Rozpocznij połączenie ponownie z własnego konta.",
"nocode": "WHOOP nie zwrócił kodu autoryzacji. Spróbuj ponownie i zezwól na dostęp w oknie WHOOP.",
"nocreds": "WHOOP nie jest skonfigurowany. Dodaj powyżej swoje dane OAuth WHOOP i spróbuj ponownie.",
"token": "Wymiana tokena z WHOOP nie powiodła się. Rozpocznij połączenie ponownie.",
"generic": "Nieznany błąd podczas łączenia. Rozpocznij połączenie ponownie.",
"already_linked": "To konto WHOOP jest już połączone z innym profilem HealthLog. Zaloguj się do WHOOP kontem należącym do tego profilu albo najpierw odłącz je od tamtego profilu."
},
"fitbit": "Fitbit",
"fitbitTag": "Fitbit i Pixel",
"fitbitDescription": "Połącz Fitbit, aby synchronizować dane z Fitbit i Pixel Watch: wagę, tętno i więcej.",
"fitbitExperimentalBadge": "Eksperymentalne",
"fitbitCredentials": "Dane uwierzytelniające API",
"fitbitClientId": "Client ID",
"fitbitClientSecret": "Client Secret",
"fitbitCredentialsSaved": "Dane uwierzytelniające zapisane",
"fitbitCredentialsSavedPlaceholder": "Zapisano. Wpisz nowe, aby zastąpić",
"fitbitCredentialsSavedPlaceholderSecret": "Zapisano. Wpisz nowe, aby zastąpić",
"fitbitSaveCredentials": "Zapisz",
"fitbitSync": "Synchronizuj teraz",
"fitbitFullSync": "Synchronizuj wszystkie dane",
"fitbitFullSyncTitle": "Pełna synchronizacja?",
"fitbitFullSyncDescription": "Cała dostępna historia Fitbit zostanie w pełni zsynchronizowana. W zależności od historii może to chwilę potrwać.",
"fitbitSyncResult": "Zsynchronizowano {count} pomiarów",
"fitbitSyncFailed": "Synchronizacja nie powiodła się",
"fitbitSynchronize": "Synchronizuj",
"fitbitDisconnect": "Rozłącz",
"fitbitDisconnectTitle": "Rozłączyć Fitbit?",
"fitbitDisconnectDescription": "Połączenie z Fitbit zostanie rozłączone. Wcześniej zsynchronizowane dane zostaną zachowane.",
"fitbitConnect": "Połącz z Fitbit",
"fitbitNoCredentials": "Wprowadź powyżej swoje dane uwierzytelniające API, aby połączyć Fitbit.",
"fitbitOauthConnected": "Fitbit połączony. Pierwsza synchronizacja startuje w tle.",
"fitbitOauthFailed": "Połączenie z Fitbit nie powiodło się",
"googleHealth": "Google Health",
"googleHealthTag": "Fitbit i Pixel",
"googleHealthBetaBadge": "Beta",
"googleHealthDescription": "Połącz Fitbit, Pixel Watch i Fitbit Air przez konto Google: waga, tętno, sen i aktywność. Zastępuje to klasyczne połączenie Fitbit, które Google wyłącza we wrześniu 2026.",
"googleHealthCredentials": "Dane API",
"googleHealthClientId": "Identyfikator klienta",
"googleHealthClientSecret": "Sekret klienta",
"googleHealthCredentialsSaved": "Dane logowania zapisane",
"googleHealthCredentialsSavedPlaceholder": "Zapisane. Wpisz nowe, aby zastąpić",
"googleHealthCredentialsSavedPlaceholderSecret": "Zapisane. Wpisz nowe, aby zastąpić",
"googleHealthSaveCredentials": "Zapisz",
"googleHealthSync": "Synchronizuj teraz",
"googleHealthSyncCheckStatus": "Odśwież stan",
"googleHealthFullSync": "Synchronizuj wszystkie dane",
"googleHealthFullSyncTitle": "Pełna synchronizacja?",
"googleHealthFullSyncDescription": "Cała dostępna historia Google Health zostanie w pełni zsynchronizowana. Może to chwilę potrwać w zależności od historii.",
"googleHealthSyncResult": "Zsynchronizowano pomiary: {count}",
"googleHealthSyncFailed": "Synchronizacja nie powiodła się",
"googleHealthSyncInProgress": "Synchronizacja trwa: zapisano {count} pomiarów, przetworzono {completed} z {total} obszarów.",
"googleHealthResourceFailuresTitle": "Te obszary nadal wymagają uwagi:",
"googleHealthResource": {
"workout": "Treningi",
"sleep": "Sen",
"boundedMetrics": "Pomiary zdrowotne",
"activity": "Aktywność",
"heartRate": "Tętno",
"other": "Inne dane"
},
"googleHealthReason": {
"collectionFailed": "Google nie mogło udostępnić tych danych. Spróbuj zsynchronizować je później.",
"tokenFailed": "Połączenie wygasło. Połącz Google Health ponownie.",
"upsertFailed": "Nie udało się zapisać danych. Spróbuj zsynchronizować je ponownie.",
"rollupFailed": "Dane zostały odebrane, ale ich podsumowanie nie jest jeszcze zaktualizowane. Spróbuj później.",
"pageLimit": "Przetworzono tylko część dostępnej historii. Kolejna synchronizacja będzie ją kontynuować.",
"generic": "Ten obszar nie został w pełni zsynchronizowany. Spróbuj ponownie."
},
"googleHealthSynchronize": "Synchronizuj",
"googleHealthDisconnect": "Rozłącz",
"googleHealthDisconnectTitle": "Rozłączyć Google Health?",
"googleHealthDisconnectDescription": "Połączenie z Google Health zostanie rozłączone. Wcześniej zsynchronizowane dane zostaną zachowane.",
"googleHealthConnect": "Połącz z Google",
"googleHealthNoCredentials": "Wprowadź powyżej swoje dane API, aby połączyć Google Health.",
"googleHealthOauthConnected": "Google Health połączony. Pierwsza synchronizacja startuje w tle.",
"googleHealthOauthFailed": "Połączenie z Google Health nie powiodło się",
"googleHealthOauthError": {
"csrf1": "Kontrola bezpieczeństwa nie powiodła się, ponieważ brakowało pliku cookie przeglądarki. Rozpocznij połączenie ponownie w tej samej przeglądarce.",
"state": "Odpowiedź od Google nie pasowała do żadnego otwartego żądania połączenia. Rozpocznij połączenie ponownie.",
"expired": "Żądanie połączenia wygasło przed zakończeniem. Rozpocznij połączenie ponownie.",
"cross_user": "Odpowiedź należy do żądania z innego konta. Rozpocznij połączenie ponownie z własnego konta.",
"nocode": "Google nie zwrócił kodu autoryzacji. Spróbuj ponownie i zezwól na dostęp w oknie Google.",
"nocreds": "Google Health nie jest skonfigurowany. Dodaj powyżej swoje dane OAuth Google i spróbuj ponownie.",
"token": "Wymiana tokenu z Google nie powiodła się. Rozpocznij połączenie ponownie.",
"generic": "Nieznany błąd podczas łączenia. Rozpocznij połączenie ponownie.",
"already_linked": "To konto Google jest już połączone z innym profilem HealthLog. Zaloguj się do Google kontem należącym do tego profilu albo najpierw odłącz je od tamtego profilu."
},
"fitbitOauthError": {
"csrf1": "Kontrola bezpieczeństwa nie powiodła się, ponieważ brakowało pliku cookie przeglądarki. Rozpocznij połączenie ponownie w tej samej przeglądarce.",
"state": "Odpowiedź z Fitbit nie pasowała do żadnego otwartego żądania połączenia. Rozpocznij połączenie ponownie.",
"expired": "Żądanie połączenia wygasło przed zakończeniem. Rozpocznij połączenie ponownie.",
"cross_user": "Odpowiedź należy do żądania z innego konta. Rozpocznij połączenie ponownie z własnego konta.",
"nocode": "Fitbit nie zwrócił kodu autoryzacji. Spróbuj ponownie i zezwól na dostęp w oknie Fitbit.",
"nocreds": "Fitbit nie jest skonfigurowany. Dodaj powyżej swoje dane OAuth Fitbit i spróbuj ponownie.",
"token": "Wymiana tokena z Fitbit nie powiodła się. Rozpocznij połączenie ponownie.",
"generic": "Nieznany błąd podczas łączenia. Rozpocznij połączenie ponownie.",
"retired": "Google wyłączył Fitbit Web API, więc nie można już utworzyć nowego połączenia Fitbit. Połącz zamiast tego Google Health, które odczytuje dane z tych samych urządzeń.",
"already_linked": "To konto Fitbit jest już połączone z innym profilem HealthLog. Zaloguj się do Fitbit kontem należącym do tego profilu albo najpierw odłącz je od tamtego profilu."
},
"integrations": {
"withings": {
"plan": {
"link": "Więcej o planach API Withings",
"items": {
"spo2": "SpO2",
"vascularAge": "wiek naczyniowy",
"pulseWaveVelocity": "prędkość fali tętna",
"vo2Max": "VO2 max",
"visceralFat": "tłuszcz trzewny",
"skinTemperature": "temperatura skóry",
"ecg": "EKG i migotanie przedsionków",
"sleepScore": "wynik snu",
"sleepHrv": "nocne HRV",
"sleepHeartRate": "nocne tętno",
"sleepRespiratoryRate": "nocna częstość oddechów",
"sleepSpo2": "nocne SpO2",
"bodyTemperature": "temperatura ciała",
"bodyFat": "tkanka tłuszczowa",
"fatMass": "masa tłuszczowa",
"fatFreeMass": "beztłuszczowa masa ciała",
"muscleMass": "masa mięśniowa",
"bodyWater": "woda w organizmie",
"boneMass": "masa kostna",
"heartRate": "tętno",
"bloodPressure": "ciśnienie krwi",
"weight": "waga"
}
}
},
"oura": {
"scope": {
"items": {
"vo2max": "VO2 max",
"cardio_age": "wiek sercowo-naczyniowy",
"resilience": "odporność",
"workout": "treningi",
"heartrate": "tętno"
}
}
}
},
"integrationPill": {
"justNow": "przed chwilą",
"minutesAgo": "{count} min temu",
"hoursAgo": "{count} godz. temu",
"daysAgo": "{count} dni temu",
"resumeSuccess": "Integracja wznowiona",
"resumeError": "Ponowne połączenie nieudane"
},
"integrationFreshness": {
"title": "Odebrane dane",
"summary": "{count} typów danych, najnowsze {relative}",
"quiet": "{count} bez danych",
"workouts": "Treningi",
"medicationDoses": "Dawki leków"
},
"integrationFallback": {
"description": "Skonfigurowane na tym koncie, ale bez własnej karty ustawień."
},
"withingsViewData": "Zobacz swoje pomiary",
"whoopViewData": "Zobacz swoją regenerację",
"fitbitViewData": "Zobacz swój sen",
"googleHealthViewData": "Zobacz swoje kroki",
"apiTokens": "Tokeny API",
"apiTokensDescription": "Przeglądaj i unieważniaj tokeny do pomiarów, treningów, dokumentów i przyjęć leków.",
"measurementsToken": {
"title": "Tokeny pomiarów",
"description": "Utwórz token, aby waga, zegarek lub automatyka domowa mogły dodawać pomiary.",
"detail": "Token pokazujemy tylko raz.",
"scopeNote": "Może wyłącznie dodawać nowe pomiary do Twojej dokumentacji: nie odczyta danych, niczego nie zmieni ani nie usunie i nie utworzy kolejnego tokenu. Pomiary są oznaczane jako pochodzące z urządzenia zewnętrznego, dzięki czemu później je rozpoznasz, i nadal możesz je poprawić.",
"createFailed": "Nie udało się utworzyć tokenu. Spróbuj ponownie.",
"namePlaceholder": "Nazwa, np. Home Assistant",
"appleHealth": {
"label": "Zapisuj pomiary w Apple Health",
"createHint": "Aplikacja HealthLog na Twoim iPhonie doda wtedy pomiary z tego tokenu do Apple Health. Możesz to później zmienić na liście tokenów poniżej.",
"toggleAria": "Zapisuj pomiary z {name} w Apple Health",
"updateFailed": "Nie udało się zmienić ustawienia Apple Health. Spróbuj ponownie.",
"unattributed": "Pomiarów wysłanych, zanim pojawiło się to ustawienie, nie da się przypisać do żadnego tokenu, więc nie trafiają do Apple Health."
}
},
"workoutsToken": {
"title": "Tokeny treningów",
"description": "Utwórz token, aby mostek zegarka lub skrypt synchronizacji mogły dodawać Twoje treningi.",
"detail": "Token pokazujemy tylko raz.",
"scopeNote": "Może wyłącznie dodawać nowe treningi do Twojej dokumentacji. Nie odczyta danych, niczego nie zmieni ani nie usunie i nie utworzy kolejnego tokenu. Dodane przez niego treningi są oznaczane jako pochodzące z urządzenia zewnętrznego, a jeśli telefon zapisał tę samą sesję, widzisz zapis z telefonu.",
"createFailed": "Nie udało się utworzyć tokenu. Spróbuj ponownie.",
"namePlaceholder": "Nazwa, np. Garmin"
},
"documentsToken": {
"title": "Tokeny dokumentów",
"description": "Utwórz token, aby Paperless-ngx, Papra lub skrypt importu mogły dodawać dokumenty do Twojego archiwum.",
"detail": "Token pokazujemy tylko raz.",
"scopeNote": "Może wyłącznie dodawać nowe dokumenty do Twojego archiwum. Niczego nie wyświetli, nie otworzy, nie pobierze, nie zmieni ani nie usunie i nie utworzy kolejnego tokenu. Dowiaduje się tylko, czy plik został zapisany, a nie to, jak został opisany.",
"createFailed": "Nie udało się utworzyć tokenu. Spróbuj ponownie.",
"namePlaceholder": "Nazwa, np. Paperless-ngx"
},
"tokenMintMovedDescription": "Tokeny wydajemy tam, gdzie działają: powyżej dla pomiarów, treningów i dokumentów albo w punkcie końcowym API danego leku dla tego jednego leku.",
"tokenCreated": "Token utworzony. Skopiuj go teraz! Nie zostanie pokazany ponownie.",
"tokenCopy": "Kopiuj token",
"tokenCopied": "Token skopiowany do schowka",
"tokenCopyFailed": "Nie udało się skopiować tokenu",
"tokenRevokeFailed": "Nie udało się unieważnić tokenu. Spróbuj ponownie.",
"tokenRevoke": "Cofnąć token?",
"tokenRevokeAction": "Unieważnij token",
"tokenRevokeDescription": "Token zostanie trwale dezaktywowany. Aplikacje, które go używają, stracą dostęp.",
"tokenRevoked": "Cofnięto",
"tokenExpired": "Wygasł",
"tokenActive": "Aktywne",
"activeTokensTitle": "Aktywne tokeny",
"revokedTokensTitle": "Cofnięte tokeny ({count})",
"tokenTableName": "Nazwa",
"tokenTablePermissions": "Uprawnienia",
"tokenTableStatus": "Status",
"tokenTableCreated": "Utworzono",
"tokenTableLastUsed": "Ostatnio użyto",
"tokenTableActions": "Akcje",
"noActiveTokens": "Brak aktywnych tokenów.",
"tokenNeverUsed": "Nigdy",
"apiEndpointsTitle": "Punkty końcowe API",
"apiEndpointsDescription": "Przegląd dostępnych obecnie zewnętrznych punktów końcowych do wprowadzania danych za pomocą tokenów.",
"apiEndpointMethod": "Metoda",
"apiEndpointPath": "Ścieżka",
"apiEndpointAuth": "Uwierzytelnianie",
"apiEndpointExample": "Przykład treści",
"dangerZone": "Usuń wszystkie dane",
"dangerZoneDescription": "Kasuje całą Twoją dokumentację zdrowotną i wszystkie połączenia integracji.",
"dangerZoneConfirm": "Usunąć wszystkie dane?",
"dangerZoneConfirmDescription": "Ta czynność trwale usuwa wszystko z Twojej dokumentacji: pomiary, leki, wpisy nastroju, wyniki badań, wpisy cyklu, dokumenty, rozmowy z SI oraz wszystkie połączenia integracji, a wraz z nimi wszystko, co z nich wyliczono, i wszystko, co usunięto wcześniej. Linki udostępnione poradni natychmiast przestają działać. Konto zostaje, razem z danymi logowania i ustawieniami wyświetlania, takimi jak język, strefa czasowa i jednostki. Nie można tego cofnąć.",
"dangerZoneSuccess": "Twoja dokumentacja zdrowotna została usunięta. Konto i logowanie pozostają bez zmian.",
"dangerZoneDeleteFailed": "Usuwanie nie powiodło się",
"finalDelete": "Usuń trwale",
"deleteAccountCardTitle": "Usuń całe konto",
"deleteAccountCardDescription": "Usuwa Twoje konto wraz z kluczami dostępu, dziennikiem audytu i sesjami.",
"deleteAccountCta": "Usuń konto",
"deleteAccountConfirmTitle": "Trwale usunąć konto?",
"deleteAccountConfirmTitleGrace": "Usunąć konto?",
"deleteAccountConfirmDescription": "Twoje konto, wszystkie dane zdrowotne, klucze dostępu, sesje i wpisy audytu zostaną trwale usunięte. Zostaniesz wylogowany natychmiast po tym. Kopie w kopiach zapasowych tego serwera wygasają po upływie okresu przechowywania.",
"deleteAccountSuccess": "Konto usunięte, trwa wylogowywanie.",
"deleteAccountFailed": "Nie udało się usunąć konta",
"deleteAccountFinal": "Usuń trwale",
"deleteAccountFinalGrace": "Usuń konto",
"saved": "Zapisano",
"savingError": "Błąd podczas zapisywania",
"about": {
"version": "Wersja aplikacji",
"gitSha": "Build",
"builtAtLabel": "Skompilowano",
"license": "Licencja",
"repository": "Kod źródłowy",
"changelog": "Changelog",
"docs": "Dokumentacja",
"credits": "Autorzy i źródła danych",
"linksHeading": "Źródła i dokumentacja",
"newerAvailable": "Nowa wersja: {tag}",
"support": {
"title": "Pomoc",
"description": "Podsumowanie do zgłoszenia błędu, bez imienia, adresu e-mail i wartości zdrowotnych.",
"copy": "Kopiuj informacje dla pomocy",
"copied": "Skopiowano",
"copyFailed": "Nie udało się zebrać informacji dla pomocy."
}
},
"testConnection": {
"test": "Testuj połączenie",
"saveFirst": "Najpierw zapisz zmiany. Test używa zapisanych ustawień.",
"testing": "Testowanie…",
"ok": "Połączono (opóźnienie {latency} ms)",
"errors": {
"credentials_rejected": "Dane logowania odrzucone, sprawdź token",
"rate_limited": "Ograniczone przez usługę nadrzędną",
"timeout": "Przekroczono limit czasu żądania",
"upstream_error": "Usługa nadrzędna zwróciła błąd",
"upstream_rejected": "Usługa docelowa odrzuciła wiadomość",
"connection_failed": "Połączenie nie powiodło się",
"not_configured": "Nieskonfigurowano",
"url_not_public": "Adres URL nie jest publicznym punktem końcowym",
"private_origin_not_approved": "Cel w sieci prywatnej. Operator musi dodać to źródło do NOTIFICATION_PRIVATE_ORIGINS",
"private_origin_not_grantable": "Ten adres to link-local, adres metadanych lub nieokreślony; żadna zgoda operatora nie może go otworzyć. Użyj adresu, na którym nasłuchuje przekaźnik",
"url_invalid": "Adres URL jest nieprawidłowy",
"redirected": "Punkt końcowy przekierowuje, sprawdź adres URL",
"endpoint_not_found": "Nie znaleziono punktu końcowego pod adresem URL",
"credentials_unreadable": "Nie można odszyfrować danych logowania",
"upstream_invalid_json": "Usługa nadrzędna wysłała nieprawidłowy JSON",
"vapid_not_configured": "Web Push nieskonfigurowany (brak kluczy VAPID)",
"rate_limited_self": "Zbyt wiele żądań testowych",
"generic": "Test nie powiódł się"
}
},
"notificationStatus": {
"title": "Niezawodność kanałów",
"description": "Stan każdego kanału; „Automatycznie wyłączone” oznacza zatrzymanie po trwałych błędach.",
"emptyDescription": "Dodaj kanał w Ustawienia › Integracje › Kanały dostarczania.",
"stateActive": "Aktywne",
"stateAutoDisabled": "Automatycznie wyłączone",
"stateSendingPaused": "Wysyłanie wstrzymane",
"stateManuallyDisabled": "Wyłączone",
"lastSuccess": "Ostatnia udana wysyłka",
"lastFailure": "Ostatni błąd",
"consecutiveFailures": "Kolejne błędy",
"disabledReason": "Powód",
"nextRetry": "Następna próba",
"reEnable": "Włącz ponownie",
"sendTest": "Wyślij test",
"emptyTitle": "Nie skonfigurowano jeszcze kanałów"
},
"identity": {
"description": "Opcjonalne dane do eksportu dokumentacji zdrowotnej (okładka PDF + eksport FHIR). Wszystkie pola są opcjonalne.",
"fullName": "Imię i nazwisko",
"fullNamePlaceholder": "np. Anna Kowalska",
"insurer": "Ubezpieczyciel zdrowotny",
"insurerPlaceholder": "np. AOK Bayern",
"insuranceNumber": "Numer ubezpieczonego (KVNR)",
"insuranceNumberHint": "10 znaków: jedna litera + dziewięć cyfr (np. A123456780)."
},
"healthRecord": {
"title": "Eksportuj dokumentację zdrowotną",
"description": "Pełna dokumentacja dla lekarza: jako PDF, jako FHIR lub oba.",
"format": "Format",
"format_pdf": "PDF",
"format_fhir": "Ustrukturyzowany (FHIR)",
"format_package": "Pakiet: PDF + FHIR",
"range": "Okres",
"range90": "Ostatnie 90 dni",
"range180": "Ostatnie 6 miesięcy",
"range365": "Ostatnie 12 miesięcy",
"practiceName": "Gabinet (opcjonalnie)",
"practiceNamePlaceholder": "np. dr Kowalski",
"includedData": "Uwzględnione dane",
"includeCharts": "Osadź wykresy trendów (tylko PDF)",
"fhirNote": "Dane ustrukturyzowane są zgodne ze standardem FHIR R4 (kompatybilne z ePA).",
"generate": "Generuj",
"documentsLink": "Dokumenty z tego okresu",
"range30": "Ostatnie 30 dni",
"rangeCustom": "Własny okres",
"rangeCustomStart": "Od",
"rangeCustomEnd": "Do",
"errorGeneric": "Nie udało się wygenerować eksportu. Spróbuj ponownie.",
"errorRateLimit": "Osiągnięto limit eksportów w tej godzinie.",
"errorModuleDisabled": "Eksport dokumentacji jest wyłączony dla tego konta.",
"visitOffer": "{when} zaplanowano wizytę: {what}.",
"visitOfferApplyWindow": "Użyj tego okresu"
},
"globalExcludedInjectionSitesLabel": "Globalnie wykluczone miejsca iniekcji",
"globalExcludedInjectionSitesHint": "Nigdy nieproponowane i odrzucane przy rejestracji, nawet jeśli lek je preferuje.",
"sharing": {
"createTitle": "Nowy link udostępniania",
"createDescription": "Link jest tylko do odczytu i ograniczony czasowo.",
"label": "Etykieta",
"labelPlaceholder": "np. dr Kowalski, kontrola roczna",
"range": "Dni historii",
"rangeHint": "Jak daleko wstecz sięga udostępnione okno.",
"expiry": "Wygasa za (dni)",
"expiryHint": "Najwyżej {max} dni.",
"expiryInvalid": "Wygaśnięcie musi mieścić się między 1 a {max} dniami.",
"create": "Utwórz link",
"tokenCreated": "Link udostępniania utworzony",
"copied": "Skopiowano do schowka",
"activeTitle": "Aktywne linki",
"noActive": "Brak aktywnych linków udostępniania.",
"created": "Utworzono",
"expires": "Wygasa",
"accessCount": "Wyświetlenia",
"revoke": "Unieważnij",
"revokeDescription": "Unieważnij ten link natychmiast. Każdy, kto go ma, traci dostęp od razu. Tej operacji nie można cofnąć.",
"statusActive": "Aktywny",
"statusRevoked": "Unieważniony",
"statusExpired": "Wygasły",
"inactiveTitle": "Unieważnione i wygasłe ({count})",
"shownOnce": "Wyświetlane tylko raz. Zapisz teraz kod QR i hasło, bo nie można ich później odzyskać.",
"qrAlt": "Kod QR zawierający link do udostępniania i hasło",
"linkLabel": "Link",
"passphraseLabel": "Hasło",
"passphraseHint": "Odbiorca potrzebuje linku i tego hasła. Kod QR zawiera oba.",
"copyLink": "Kopiuj link",
"copyPassphrase": "Kopiuj hasło",
"protected": "Hasło",
"attachTitle": "Dołącz dokumenty",
"attachButton": "Wybierz dokumenty",
"attachCount": "Wybrano {count} z {max}",
"attachFrozen": "Zestaw dokumentów jest ustalany przy tworzeniu linku. Później nie można dodawać ani usuwać dokumentów.",
"attachRemove": "Usuń {title}",
"exifNote": "Metadane aparatu (EXIF/GPS) są usuwane z obrazów JPEG, PNG i WebP podczas udostępniania. Pliki PDF, TIFF, HEIC i Office są przekazywane bez zmian.",
"documentCount": "Dołączone dokumenty: {count}",
"qrScanTitle": "Zeskanuj, aby otworzyć na innym urządzeniu",
"qrScanHint": "Skieruj aparat telefonu na kod, aby otworzyć udostępnioną dokumentację. Hasło jest już dołączone.",
"pickerTitle": "Dołącz dokumenty",
"pickerDescription": "Przeszukaj swój sejf i wybierz dokumenty do udostępnienia. Maksymalnie {max}.",
"pickerSearch": "Szukaj dokumentów",
"pickerEmpty": "Nie znaleziono dokumentów.",
"pickerDone": "Gotowe",
"pickerSelectedCount": "Wybrano {count} z {max}",
"pickerMaxReached": "Osiągnięto maksymalną liczbę {max} dokumentów.",
"scopeTitle": "Co zawiera ten link",
"scopeInsuranceExcluded": "Dane ubezpieczenia nigdy nie są udostępniane przez link.",
"statusNeedsReselect": "Wybierz zawartość ponownie",
"reselectReason": "Ten link udostępniał zakres, którego nikt nie wybrał, więc został zamknięty. Utwórz nowy i wybierz jego zawartość.",
"reselectAction": "Utwórz zamiennik",
"createDetail": "Token jest pokazywany tylko raz przy tworzeniu. Zapisz go wtedy; nie można go odzyskać.",
"activeDescription": "Udostępnione linki, termin ich wygaśnięcia i liczba otwarć.",
"revokedToast": "Unieważniono link.",
"revokeFailed": "Nie udało się unieważnić linku."
},
"genderOther": "Inna",
"nightscout": "Nightscout",
"nightscoutTag": "CGM",
"nightscoutDescription": "Połącz własną stronę Nightscout, aby synchronizować ciągłe odczyty glukozy w panelu glukozy.",
"nightscoutViewData": "Zobacz swoją glukozę",
"nightscoutUrl": "Adres URL Nightscout",
"nightscoutUrlSavedPlaceholder": "Zapisano. Wpisz nowy adres URL, aby go zastąpić",
"nightscoutToken": "Token API",
"nightscoutTokenOptional": "Opcjonalny dla witryny publicznej",
"nightscoutTokenSavedPlaceholder": "Zapisano. Wpisz nowy token, aby go zastąpić",
"nightscoutTokenHelp": "Wklej token dostępu z narzędzi administracyjnych Nightscout. Pozostaw puste, jeśli witryna jest publicznie czytelna.",
"nightscoutPrivateOperatorTitle": "Dostęp do prywatnego serwera Nightscout wymaga zgody administratora serwera.",
"nightscoutPrivateOperatorDescription": "Poproś administratora serwera o zatwierdzenie dokładnie tego pochodzenia Nightscout.",
"nightscoutConnect": "Połącz",
"nightscoutUpdate": "Zapisz zmiany",
"nightscoutConnected": "Nightscout połączony.",
"nightscoutConnectFailed": "Nie można połączyć z Nightscout.",
"nightscoutSync": "Synchronizuj teraz",
"nightscoutSyncResult": "Zsynchronizowano {count} pomiarów",
"nightscoutSyncFailed": "Synchronizacja nie powiodła się",
"nightscoutDisconnect": "Rozłącz",
"nightscoutDisconnectTitle": "Rozłączyć Nightscout?",
"nightscoutDisconnectDescription": "Przyszłe synchronizacje zostaną zatrzymane. Już zaimportowane odczyty glukozy pozostaną w historii.",
"polar": "Polar",
"polarDescription": "Połącz konto Polar, aby synchronizować regenerację Nightly Recharge, fazy snu, dzienną aktywność i treningi.",
"polarViewData": "Zobacz sen i regenerację",
"polarCredentials": "Dane API",
"polarClientId": "Client ID",
"polarClientSecret": "Client Secret",
"polarCredentialsSaved": "Dane zapisane",
"polarCredentialsSavedPlaceholder": "Zapisano. Wpisz nowe, aby zastąpić",
"polarSaveCredentials": "Zapisz",
"polarUnavailable": "Polar nie jest skonfigurowany na tym serwerze. Dodaj powyżej własne dane OAuth Polar lub poproś administratora o skonfigurowanie współdzielonej aplikacji.",
"polarConnect": "Połącz Polar",
"polarSync": "Synchronizuj teraz",
"polarSyncResult": "Zsynchronizowano {count} pomiarów",
"polarSyncFailed": "Synchronizacja nie powiodła się",
"polarDisconnect": "Rozłącz",
"polarDisconnectTitle": "Rozłączyć Polar?",
"polarDisconnectDescription": "Przyszłe synchronizacje zostaną zatrzymane. Już zaimportowane odczyty pozostaną w historii.",
"polarOauthConnected": "Polar połączony. Pierwsza synchronizacja startuje w tle.",
"polarOauthFailed": "Połączenie z Polar nie powiodło się",
"polarOauthError": {
"csrf1": "Kontrola bezpieczeństwa nie powiodła się, ponieważ brakowało pliku cookie przeglądarki. Rozpocznij połączenie ponownie w tej samej przeglądarce.",
"state": "Odpowiedź z Polar nie pasowała do żadnego otwartego żądania połączenia. Rozpocznij połączenie ponownie.",
"cross_user": "Odpowiedź należy do żądania z innego konta. Rozpocznij połączenie ponownie z własnego konta.",
"nocode": "Polar nie zwrócił kodu autoryzacji. Spróbuj ponownie i zezwól na dostęp w oknie Polar.",
"nocreds": "Polar nie jest skonfigurowany na tym serwerze. Poproś administratora o dodanie danych OAuth Polar.",
"token": "Wymiana tokena z Polar nie powiodła się. Rozpocznij połączenie ponownie.",
"rate_limited": "Zbyt wiele prób połączenia. Poczekaj chwilę i spróbuj ponownie.",
"generic": "Nieznany błąd podczas łączenia. Rozpocznij połączenie ponownie.",
"already_linked": "To konto Polar jest już połączone z innym profilem HealthLog. Zaloguj się do Polar kontem należącym do tego profilu albo najpierw odłącz je od tamtego profilu."
},
"oura": "Oura",
"ouraDescription": "Połącz konto Oura, aby synchronizować gotowość, fazy snu, zmienność rytmu serca i dzienną aktywność.",
"ouraViewData": "Zobacz sen i regenerację",
"ouraCredentials": "Dane API",
"ouraClientId": "Client ID",
"ouraClientSecret": "Client Secret",
"ouraCredentialsSaved": "Dane zapisane",
"ouraCredentialsSavedPlaceholder": "Zapisano. Wpisz nowe, aby zastąpić",
"ouraSaveCredentials": "Zapisz",
"ouraUnavailable": "Oura nie jest skonfigurowana na tym serwerze. Dodaj powyżej własne dane OAuth Oura lub poproś administratora o skonfigurowanie współdzielonej aplikacji.",
"ouraConnect": "Połącz Oura",
"ouraSync": "Synchronizuj teraz",
"ouraSyncResult": "Zsynchronizowano {count} pomiarów",
"ouraSyncFailed": "Synchronizacja nie powiodła się",
"ouraDisconnect": "Rozłącz",
"ouraDisconnectTitle": "Rozłączyć Oura?",
"ouraDisconnectDescription": "Przyszłe synchronizacje zostaną zatrzymane. Już zaimportowane odczyty pozostaną w historii.",
"ouraOauthConnected": "Oura połączona. Pierwsza synchronizacja startuje w tle.",
"ouraOauthFailed": "Połączenie z Oura nie powiodło się",
"ouraOauthError": {
"csrf1": "Kontrola bezpieczeństwa nie powiodła się, ponieważ brakowało pliku cookie przeglądarki. Rozpocznij połączenie ponownie w tej samej przeglądarce.",
"state": "Odpowiedź z Oura nie pasowała do żadnego otwartego żądania połączenia. Rozpocznij połączenie ponownie.",
"cross_user": "Odpowiedź należy do żądania z innego konta. Rozpocznij połączenie ponownie z własnego konta.",
"nocode": "Oura nie zwróciła kodu autoryzacji. Spróbuj ponownie i zezwól na dostęp w oknie Oura.",
"nocreds": "Oura nie jest skonfigurowana na tym serwerze. Poproś administratora o dodanie danych OAuth Oura.",
"token": "Wymiana tokena z Oura nie powiodła się. Rozpocznij połączenie ponownie.",
"rate_limited": "Zbyt wiele prób połączenia. Poczekaj chwilę i spróbuj ponownie.",
"issuer": "Odpowiedź logowania nie pochodziła z serwera autoryzacji Oura, więc połączenie zostało przerwane dla Twojego bezpieczeństwa. Rozpocznij połączenie ponownie. Jeśli to się powtarza, powiadom administratora.",
"generic": "Nieznany błąd podczas łączenia. Rozpocznij połączenie ponownie.",
"already_linked": "To konto Oura jest już połączone z innym profilem HealthLog. Zaloguj się do Oura kontem należącym do tego profilu albo najpierw odłącz je od tamtego profilu."
},
"integrationSetupGuide": "Przewodnik konfiguracji",
"coach": {
"memory": {
"edit": "Edytuj",
"source": {
"user": "od ciebie",
"coach": "od Coacha"
}
},
"state": {
"title": "Coach",
"description": "Czy przycisk i panel Coacha są widoczne. Przełącznik jest w Modułach."
},
"nudgesMoved": "Ustawiasz je razem z innymi przypomnieniami w Powiadomieniach.",
"openNudges": "Otwórz w Powiadomieniach"
},
"integrationRedirectGuide": {
"intro": "To połączenie działa przez Twoją własną aplikację deweloperską {provider}, około 5 minut konfiguracji:",
"step1": "Utwórz aplikację w portalu deweloperskim {provider}.",
"step2": "Ustaw jej URL przekierowania/callback na:",
"step3": "Wklej powyżej otrzymany identyfikator klienta i sekret klienta."
},
"security": {
"sessionsTitle": "Aktywne sesje",
"sessionsDescription": "Urządzenia i przeglądarki obecnie zalogowane na Twoje konto.",
"sessionsLoadError": "Nie udało się załadować aktywnych sesji.",
"sessionsEmpty": "Brak aktywnych sesji.",
"currentSession": "To urządzenie",
"lastActive": "Ostatnia aktywność {time}",
"unknownLocation": "Nieznana lokalizacja",
"revokeSession": "Wyloguj",
"revokeError": "Nie udało się zrealizować żądania. Spróbuj ponownie.",
"signOutEverywhere": "Wyloguj na pozostałych urządzeniach",
"signOutEverywhereDone": "Wylogowano {count} inną/e sesję/e",
"activityTitle": "Aktywność zabezpieczeń",
"activityDescription": "Ostatnie logowania, zmiany zabezpieczeń i eksporty danych Twojego konta.",
"activityEmpty": "Brak aktywności zabezpieczeń.",
"activityLoadError": "Nie udało się załadować aktywności zabezpieczeń.",
"action": {
"newDevice": "Logowanie z nowego urządzenia",
"loginFailed": "Nieudane logowanie",
"login": "Logowanie",
"passwordChange": "Zmieniono hasło",
"mfa": "Zmiana uwierzytelniania dwuskładnikowego",
"sessionRevoke": "Wylogowano sesję",
"token": "Zmiana tokenu API",
"accountDelete": "Konto usunięte",
"dataClear": "Zresetowano dane",
"export": "Eksport danych",
"other": "Zdarzenie zabezpieczeń"
},
"active": "Aktywne",
"inactive": "Nieaktywne",
"stepUpRequired": "Ze względów bezpieczeństwa zaloguj się ponownie, aby zmienić drugi składnik.",
"useRecoveryCode": "Użyj zamiast tego kodu odzyskiwania",
"useAuthenticator": "Użyj zamiast tego aplikacji uwierzytelniającej",
"totp": {
"title": "Aplikacja uwierzytelniająca",
"description": "Użyj kodu czasowego z aplikacji uwierzytelniającej jako drugiego składnika.",
"setUp": "Skonfiguruj",
"step1": "Zeskanuj kod QR aplikacją uwierzytelniającą lub wprowadź sekret ręcznie.",
"step2": "Wprowadź 6-cyfrowy kod wyświetlany przez aplikację, aby potwierdzić.",
"qrAlt": "Kod QR do konfiguracji aplikacji uwierzytelniającej",
"qrUnavailable": "Kod QR niedostępny",
"manualEntry": "Lub wprowadź ten sekret ręcznie",
"enterCode": "Wprowadź 6-cyfrowy kod",
"verify": "Zweryfikuj",
"setupFailed": "Nie udało się rozpocząć konfiguracji. Spróbuj ponownie.",
"invalidCode": "Ten kod jest nieprawidłowy. Spróbuj ponownie.",
"disable": "Wyłącz",
"disableTitle": "Wyłącz uwierzytelnianie dwuskładnikowe",
"disableConfirm": "Wprowadź bieżący kod, aby wyłączyć drugi składnik. Spowoduje to również usunięcie kodów odzyskiwania.",
"currentCode": "Bieżący kod",
"disableFailed": "Nie udało się wyłączyć drugiego składnika."
},
"recovery": {
"saveNow": "Zapisz teraz te kody odzyskiwania",
"saveNowHint": "Każdy kod działa raz. Są wyświetlane tylko teraz, więc przechowuj je w bezpiecznym miejscu. Jeśli stracisz aplikację uwierzytelniającą, kod odzyskiwania będzie jedyną drogą powrotu.",
"download": "Pobierz",
"remainingOne": "Pozostał {count} kod odzyskiwania.",
"remainingOther": "Pozostało {count} kodów odzyskiwania.",
"regenerate": "Wygeneruj kody ponownie",
"regenFailed": "Nie udało się ponownie wygenerować kodów odzyskiwania.",
"savedIt": "Zapisałem je",
"regenerateTitle": "Wygenerować nowe kody odzyskiwania?",
"regenerateConfirm": "Spowoduje to zastąpienie obecnych kodów odzyskiwania. Dotychczasowe kody natychmiast przestaną działać, a nowy zestaw zostanie pokazany tylko raz."
},
"keys": {
"title": "Klucze bezpieczeństwa",
"description": "Zarejestruj sprzętowy lub systemowy klucz bezpieczeństwa jako drugi składnik.",
"empty": "Nie zarejestrowano jeszcze żadnych kluczy bezpieczeństwa.",
"add": "Dodaj klucz bezpieczeństwa",
"addFailed": "Nie udało się zarejestrować klucza bezpieczeństwa.",
"rename": "Zmień nazwę",
"renameFailed": "Nie udało się zmienić nazwy klucza bezpieczeństwa.",
"remove": "Usuń klucz bezpieczeństwa",
"removeFailed": "Nie udało się usunąć klucza bezpieczeństwa.",
"removeConfirm": "Ten klucz bezpieczeństwa nie będzie już działać jako drugi składnik.",
"lastUsed": "Ostatnio użyty {date}",
"neverUsed": "Nigdy nieużywany",
"added": "dodany {date}",
"nameLabel": "Nazwa klucza bezpieczeństwa",
"addedToast": "Dodano klucz bezpieczeństwa.",
"removedToast": "Usunięto klucz bezpieczeństwa."
},
"passkeyNudge": {
"title": "Dodaj klucz dostępu, aby logować się szybciej",
"body": "Klucze dostępu pozwalają logować się odciskiem palca, twarzą lub kodem PIN urządzenia, bez hasła do zapamiętania."
},
"trustedDevices": {
"title": "Zaufane urządzenia",
"description": "Przeglądarki, którym zaufałeś, pomijają drugi składnik przez 30 dni. Hasło jest nadal wymagane. Cofnij zaufanie tym, których nie rozpoznajesz.",
"loadError": "Nie udało się załadować zaufanych urządzeń.",
"revokeError": "Nie udało się cofnąć urządzenia. Spróbuj ponownie.",
"revoke": "Cofnij",
"revokeAll": "Zapomnij wszystkie urządzenia",
"revokeAllDone": "Zapomniano {count} zaufane urządzenie/a",
"unnamed": "Nieznane urządzenie",
"current": "To urządzenie",
"expires": "Zaufane do {date}",
"revokeConfirmTitle": "Przestać ufać temu urządzeniu?",
"revokeConfirmBody": "Przy następnym logowaniu z tego urządzenia ponownie poprosi o drugi składnik.",
"revokeAllConfirmTitle": "Przestać ufać wszystkim urządzeniom?",
"revokeAllConfirmBody": "Każde urządzenie przy następnym logowaniu ponownie poprosi o drugi składnik, łącznie z tym."
},
"revokeSessionConfirmTitle": "Wylogować to urządzenie?",
"revokeSessionConfirmBody": "{device} będzie musiało zalogować się ponownie. Zapisane na nim dane pozostają bez zmian.",
"signOutEverywhereConfirmTitle": "Wylogować wszystkie pozostałe urządzenia?",
"signOutEverywhereConfirmBody": "Wszystkie inne urządzenia, każdy połączony asystent AI i każdy token API będą musiały zalogować się ponownie lub zostać skonfigurowane od nowa. To urządzenie pozostaje zalogowane. Zapisane dane pozostają bez zmian.",
"signOutEverywhereShareLinks": "Zakończ także linki udostępniania dla lekarzy",
"signOutEverywhereInvites": "Zaproszenia do Twojej karty, których nikt jeszcze nie przyjął, zostaną wycofane. Osoby, które już je przyjęły, zachowują dostęp; możesz go zakończyć zaraz potem.",
"signOutEverywhereInvitesDone": "Wycofano nieprzyjęte zaproszenia: {count}.",
"grantsKeptTitle": "Te osoby nadal widzą Twoją kartę",
"grantsKeptBody": "Wylogowanie nie kończy dostępu, który komuś dałeś. Zakończ go tutaj, jeśli go nie dawałeś albo już nie chcesz, żeby go miał."
},
"privacy": {
"encryption": {
"title": "Szyfrowane w spoczynku",
"summary": "Twoje wrażliwe dane są szyfrowane w spoczynku algorytmem {algorithm} w {columns} polach w {models} typach rekordów.",
"statement": "Twoje wrażliwe dane są szyfrowane w spoczynku algorytmem AES-256-GCM."
},
"stored": {
"title": "Co jest przechowywane",
"measurements": "Pomiary: waga, ciśnienie, tętno i każda inna wartość zapisana przez ciebie lub urządzenie",
"integrations": "Tokeny integracji (szyfrowane)",
"security": "Aktywność konta i zabezpieczeń (sesje, dziennik logowań)",
"profile": "Twój profil, wywiad medyczny i dane dokumentacji zdrowotnej",
"modules": "Wpisy poszczególnych modułów: {list}"
},
"workoutRoutes": {
"title": "Trasy treningów",
"description": "Zapisuj ślad GPS nowych treningów z aplikacji na iPhone’a i z eksportu Apple Zdrowie.",
"detail": "Wyłączone dla nowych kont. Trasa pokazuje, gdzie mieszkasz, pracujesz i trenujesz, więc zapisujemy ją dopiero po włączeniu. Treningi są zapisywane zawsze, a żadna funkcja AI nigdy nie odczytuje trasy. Wyłączenie zatrzymuje nowe trasy; już zapisane zostają do usunięcia treningu.",
"loadError": "Nie udało się wczytać ustawienia tras."
},
"retention": {
"title": "Retencja",
"description": "Jak długo rekordy ograniczone czasowo są przechowywane przed automatycznym czyszczeniem.",
"coach": "Rozmowy z asystentem: {days} dni",
"audit": "Dziennik zabezpieczeń: {days} dni",
"delivery": "Dziennik wysyłki powiadomień: {days} dni",
"unavailable": "Szczegóły przechowywania są obecnie niedostępne.",
"accountDeletion": "Usunięcie konta, profilu zarządzanego lub wszystkich danych: kończy się po {days} dniach",
"accountDeletionImmediate": "Usunięcie konta, profilu zarządzanego lub wszystkich danych: kończy się od razu"
},
"delete": {
"title": "Usuń lub zresetuj",
"description": "Usuń całe konto albo wyczyść dane zdrowotne, zachowując konto.",
"openAdvanced": "Usuń lub zresetuj",
"immediateNotice": "Usunięcie natychmiast usuwa Twoje dane. Jeśli ten serwer przechowuje zaszyfrowane kopie zapasowe poza serwerem, kopie Twoich danych są usuwane z tego magazynu zaraz potem, a jeśli jest niedostępny, przy następnym nocnym przebiegu. Kopie w kopiach zapasowych tego serwera wygasają po upływie okresu przechowywania.",
"graceNotice": "Gdy usuwasz konto, zostaje ono od razu zablokowane i usunięte po {days} dniach, razem z każdą kopią, którą przechowuje ten serwer, także zaszyfrowanymi kopiami poza serwerem. Do tego czasu administrator tego serwera może cofnąć usunięcie. Usunięcie wszystkich danych działa tak samo: kopia dokumentacji jest przechowywana przez {days} dni, więc administrator może ją przywrócić. Kopie w kopiach zapasowych tego serwera wygasają po upływie okresu przechowywania."
},
"posture": {
"title": "Ustawienia prywatności",
"description": "Kontroluj, ile Twoich danych jest udostępnianych funkcjom AI.",
"openAi": "Tryb prywatności AI"
},
"sessions": {
"title": "Sesje i urządzenia",
"description": "Gdzie jesteś zalogowany, które urządzenia pomijają drugi składnik i aktywność zabezpieczeń twojego konta.",
"open": "Otwórz zabezpieczenia"
}
},
"mcp": {
"enableTitle": "Zdalny punkt końcowy MCP",
"enableDescription": "Zezwól asystentowi obsługującemu MCP (Claude.ai, ChatGPT) na odczyt danych zdrowotnych za pomocą ograniczonego tokenu.",
"endpointLabel": "Adres URL łącznika",
"connectDescription": "Wklej ten adres URL w konfiguracji własnego łącznika asystenta, a następnie autoryzuj za pomocą poniższego tokenu lub zaloguj się po wyświetleniu monitu.",
"tokensTitle": "Tokeny łącznika",
"tokensDescription": "Wygeneruj token dla asystenta: tylko odczyt, chyba że pozwolisz poniżej na zapis.",
"scopeNote": "Nowe tokeny mogą tylko odczytywać Twoje dane. Dostęp do zapisu (health:write) przyznajesz dla każdego tokena przełącznikiem poniżej. Token nigdy nie może uzyskać dostępu do funkcji administracyjnych.",
"writeScopeToggleLabel": "Zezwól na zapis (health:write)",
"writeScopeNote": "Dodaje zakres health:write, aby asystent mógł zapisywać nowe pomiary i wpisy nastroju na Twoim koncie. Każdy zapis jest najpierw potwierdzany. Token nadal nie może usuwać ani edytować istniejących wpisów, zmieniać leków ani uzyskiwać dostępu do funkcji REST lub administracyjnych. Pozostaw wyłączone, aby uzyskać dostęp tylko do odczytu.",
"connectionsTitle": "Połączeni asystenci",
"connectionsDescription": "Asystenci autoryzowani podczas logowania.",
"noConnections": "Brak połączonych asystentów.",
"connectionConnected": "Połączono",
"connectionLastUsed": "Ostatnio użyto",
"connectionNeverUsed": "Nigdy nie użyto",
"connectionRevoke": "Rozłącz",
"connectionRevokeDescription": "To natychmiast kończy dostęp asystenta i uniemożliwia odnawianie. Ponowne połączenie będzie wymagać nowej autoryzacji.",
"connectionRevokeFailed": "Nie udało się rozłączyć asystenta.",
"tokensDetail": "Token jest wyświetlany tylko raz.",
"connectionsDetail": "Cofnięcie połączenia natychmiast kończy dostęp, w tym możliwość odnawiania.",
"tokenNamePlaceholder": "Nazwa, np. Claude Desktop",
"offKeepsTokens": "Wyłączenie wstrzymuje punkt końcowy. Tokeny i połączenia zostają i działają ponownie po włączeniu."
},
"strava": "Strava",
"stravaDescription": "Połącz konto Strava, aby synchronizować aktywności z historią treningów.",
"stravaViewData": "Zobacz treningi",
"stravaCredentials": "Dane API",
"stravaClientId": "Identyfikator klienta",
"stravaClientSecret": "Sekret klienta",
"stravaCredentialsSaved": "Dane zapisane",
"stravaCredentialsSavedPlaceholder": "Zapisane. Wpisz nowe, aby zastąpić",
"stravaSaveCredentials": "Zapisz",
"stravaUnavailable": "Strava nie jest skonfigurowana na tym serwerze. Dodaj powyżej własne dane API Strava lub poproś administratora o skonfigurowanie wspólnej aplikacji.",
"stravaConnect": "Połącz Strava",
"stravaSync": "Synchronizuj teraz",
"stravaSyncResult": "Zsynchronizowano {count} pomiarów",
"stravaSyncFailed": "Synchronizacja nie powiodła się",
"stravaDisconnect": "Rozłącz",
"stravaDisconnectTitle": "Rozłączyć Strava?",
"stravaDisconnectDescription": "Przyszłe synchronizacje zostaną zatrzymane. Już zaimportowane aktywności pozostaną w historii.",
"stravaOauthConnected": "Strava połączona. Pierwsza synchronizacja rusza w tle.",
"stravaOauthFailed": "Połączenie ze Strava nie powiodło się",
"stravaOauthError": {
"csrf1": "Kontrola bezpieczeństwa nie powiodła się, ponieważ brakowało pliku cookie przeglądarki. Rozpocznij połączenie ponownie w tej samej przeglądarce.",
"state": "Odpowiedź ze Strava nie pasowała do żadnego otwartego żądania połączenia. Rozpocznij połączenie ponownie.",
"cross_user": "Odpowiedź należy do żądania z innego konta. Rozpocznij połączenie ponownie z własnego konta.",
"nocode": "Strava nie zwróciła kodu autoryzacji. Spróbuj ponownie i zezwól na dostęp w oknie Strava.",
"nocreds": "Strava nie jest skonfigurowana na tym serwerze. Poproś administratora o dodanie danych API Strava.",
"token": "Wymiana tokenu ze Strava nie powiodła się. Rozpocznij połączenie ponownie.",
"rate_limited": "Zbyt wiele prób połączenia. Poczekaj chwilę i spróbuj ponownie.",
"generic": "Nieznany błąd podczas łączenia. Rozpocznij połączenie ponownie.",
"already_linked": "To konto Strava jest już połączone z innym profilem HealthLog. Zaloguj się do Strava kontem należącym do tego profilu albo najpierw odłącz je od tamtego profilu."
},
"appleHealth": {
"title": "Apple Health",
"description": "Synchronizacja na żywo odbywa się przez aplikację HealthLog na iOS, a nie przez połączenie internetowe ani OAuth.",
"status": {
"unavailable": "Stan Apple Health jest niedostępny"
},
"setupTitle": "Włącz synchronizację na żywo",
"permissionStep": "W aplikacji HealthLog na iOS otwórz Ustawienia → Apple Health i zezwól na udostępnianie wybranych kategorii zdrowotnych.",
"backgroundStep": "Pozostaw włączone odświeżanie aplikacji w tle. Aplikacja synchronizuje nowe dane automatycznie na pierwszym planie oraz gdy iOS przydzieli jej czas w tle.",
"importNote": "Potrzebujesz starszej historii lub nie możesz użyć aplikacji iOS? Przesłanie pliku XML/ZIP z Apple Health jest jednorazową alternatywą i nie włącza synchronizacji na żywo.",
"importAction": "Otwórz jednorazowy import",
"progress": {
"title": "Postęp synchronizacji",
"receivedLabel": "Odebrane rekordy",
"oldestLabel": "Najstarszy osiągnięty pomiar",
"flowing": "W ciągu ostatniej godziny dotarły dane. Aplikacja na iPhonie nadal je przesyła.",
"waiting": "Oczekiwanie na kolejne dane z aplikacji na iPhonie. Przesyłanie trwa dalej, gdy aplikacja jest otwarta lub gdy iOS przydzieli jej czas w tle. Cisza podczas pierwszego dużego uzupełniania historii jest normalna, to nie błąd."
},
"delivery": {
"title": "Dostarczanie",
"lastTriggerLabel": "Ostatnia synchronizacja dotarła",
"lastBackgroundLabel": "Ostatnia synchronizacja w tle",
"backgroundNever": "Nigdy: jak dotąd każda synchronizacja dotarła przy otwartej aplikacji",
"noSyncYet": "Żadna synchronizacja jeszcze nie dotarła, więc nie ma tu nic do zgłoszenia.",
"trigger": {
"foreground": "przy otwartej aplikacji",
"background": "w tle",
"push": "z wybudzenia push",
"unknown": "aplikacja nie zgłosiła wyzwalacza",
"manual": "przez „Synchronizuj wszystko”"
}
},
"freshness": {
"title": "Według typu danych",
"lastReceived": "Ostatnio odebrano {relative}",
"lastNewValue": "Ostatnia nowa wartość {relative}",
"lastBackground": "Ostatnio w tle {relative}",
"lastDuplicate": "Ostatnio wysłano ponownie bez nowych wartości {relative}",
"never": "Jeszcze nie odebrano",
"lastBackfill": "Historia uzupełniona {relative}",
"lastEnteredHere": "Ostatni wpis tutaj {relative}"
}
},
"glucoseReference": {
"title": "Zakres referencyjny glukozy",
"description": "Do jakiego zakresu porównywane są twoje wyniki glukozy we krwi.",
"enable": "Użyj zakresu docelowego dla cukrzycy",
"explainer": "Wyłączone: wyniki są oceniane względem ogólnego zakresu referencyjnego dla osób bez cukrzycy. Włączone: są oceniane względem węższego zakresu docelowego glikemii z ADA Standards of Care, a Coach opiera na nim swoje uwagi o glukozie. Twoje własne wartości docelowe poniżej nadal mają pierwszeństwo.",
"disclaimer": "To wybiera zakres referencyjny. Nie jest to diagnoza, nigdy nie jest wywnioskowane z pomiaru, a aplikacja nie podejmuje na tej podstawie działań klinicznych. O to, jakie cele dotyczą ciebie, zapytaj swojego lekarza.",
"error": "Nie udało się zapisać ustawienia."
},
"dangerZoneDetail": "Konto i dane logowania zostają zachowane.",
"deleteAccountCardDetail": "Tej operacji nie można cofnąć.",
"passkeyStepUpRequired": "Ze względów bezpieczeństwa zaloguj się ponownie przed usunięciem klucza dostępu.",
"setup": {
"title": "Konfiguracja",
"description": "Pytania, które decydują o tym, co HealthLog pokazuje najpierw, oraz lista startowa na panelu.",
"setUpAgain": "Skonfiguruj ponownie",
"showChecklist": "Pokaż listę ponownie",
"checklistShown": "Lista wróciła na panel.",
"checklistNothingHidden": "Lista nie była ukryta; otwiera się na panelu."
},
"documentSources": {
"title": "Archiwa dokumentów",
"description": "Przeszukuj Paperless-ngx lub Papra z poziomu HealthLog i importuj wybrane dokumenty.",
"explainer": "Przycisk importu pojawia się wszędzie tam, gdzie wiążesz dokumenty: przy wizytach, szczepieniach i schorzeniach oraz w Dokumentach. HealthLog przechowuje własną zaszyfrowaną kopię każdego zaimportowanego dokumentu i pyta archiwum tylko wtedy, gdy szukasz lub importujesz.",
"systemLabel": "Archiwum",
"statusConnected": "Połączono",
"statusNotConnected": "Nie połączono",
"connectedSince": "Połączono, ostatnio sprawdzono {date}",
"originRemoved": "Tego adresu nie ma już na liście dozwolonych archiwów serwera. Zapytaj administrację albo zapisz inny adres.",
"baseUrl": "Adres",
"allowedOrigins": "Dozwolone na tym serwerze: {origins}",
"organizationId": "Identyfikator organizacji",
"organizationHelp": "Część po /organizations/ w pasku adresu Papra. Identyfikatory organizacji Papra mają postać org_ i 24 litery oraz cyfry.",
"token": "Token API",
"tokenSaved": "Zapisano dla tego adresu. Zostaw puste, aby go zachować.",
"tokenHelpPaperless": "W Paperless-ngx: Mój profil, token API.",
"tokenHelpPapra": "W Papra: klucz API z uprawnieniami documents:read i tags:read.",
"save": "Zapisz i sprawdź",
"saving": "Sprawdzanie…",
"saved": "Połączono. Archiwum odpowiedziało.",
"test": "Sprawdź",
"testOk": "Archiwum odpowiedziało w {latency} ms.",
"disconnect": "Rozłącz",
"disconnectTitle": "Rozłączyć {name}?",
"disconnectDescription": "HealthLog zapomina adres i token. Zaimportowane już dokumenty zostają w HealthLog.",
"unavailableExplainer": "Ten serwer nie pozwala już na archiwa dokumentów, więc poniższego połączenia nie da się użyć. Nadal możesz je usunąć.",
"moduleOffExplainer": "Dokumenty są wyłączone, więc poniższe połączenie nie jest używane. Nadal możesz je usunąć.",
"tokenNewAddress": "Nowy adres wymaga ponownego podania tokenu API."
},
"emailChangePassword": "Obecne hasło (potrzebne do zmiany adresu e-mail)",
"reproof": {
"description": "Ta czynność udostępnia lub eksportuje Twoje dane zdrowotne. Potwierdź, że to Ty, aby kontynuować.",
"descriptionChange": "To zmienia coś, co tylko Ty powinieneś móc zmienić. Potwierdź, że to Ty, aby kontynuować.",
"signInAgain": "Zaloguj się ponownie, a potem spróbuj jeszcze raz. Twoje konto nie ma hasła ani klucza dostępu do potwierdzenia tutaj.",
"failed": "To się nie udało. Sprawdź wprowadzone dane i spróbuj ponownie.",
"oidcDone": "Potwierdzono. Przez następne pięć minut możesz kontynuować bez ponownego pytania.",
"oidcFailed": "Twój dostawca tożsamości nie mógł potwierdzić, że to Ty. Spróbuj ponownie."
},
"passwordTitle": "Hasło",
"tokenNameLabel": "Nazwa tokena",
"displayCard": {
"title": "Wyświetlanie",
"description": "Język, jednostki i formaty zapisywane od razu po zmianie."
},
"integrationCard": {
"state": {
"ok": "Działa",
"limited": "Ograniczone",
"degraded": "Opóźnione",
"actionRequired": "Wymaga działania"
},
"reason": {
"dataArriving": "Dane napływają.",
"dataArrivingHistory": "Dane napływają. Starsza historia wczytuje się w tle.",
"firstSyncPending": "Połączono. Pierwsza synchronizacja ruszy za chwilę.",
"planLimited": "Dane napływają. Twój plan {provider} nie obejmuje tych danych: {list}.",
"permissionLimited": "Dane napływają. Brakuje uprawnień do tych danych: {list}.",
"providerErrors": "{provider} od {since} nie odpowiada niezawodnie. HealthLog próbuje dalej, nie musisz nic robić.",
"providerErrorsNoSince": "{provider} nie odpowiada teraz niezawodnie. HealthLog próbuje dalej, nie musisz nic robić.",
"syncStalled": "HealthLog nie synchronizuje od {since}. To problem po stronie serwera, nie twojego urządzenia.",
"syncStalledNoSince": "HealthLog teraz nie synchronizuje. To problem po stronie serwera, nie twojego urządzenia.",
"noNewData": "Od {since} nie napłynęły nowe dane.",
"noNewDataNoSince": "Od dłuższego czasu nie napłynęły nowe dane.",
"noNewDataApple": "Od {since} nie napłynęły nowe dane. Otwórz raz HealthLog na iPhonie.",
"noNewDataAppleNoSince": "Od dłuższego czasu nie napłynęły nowe dane. Otwórz raz HealthLog na iPhonie.",
"unexpectedSilence": "Od {since} nic nie napływa, chociaż {provider} zwykle dostarcza dane codziennie.",
"unexpectedSilenceNoSince": "Nic nie napływa, chociaż {provider} zwykle dostarcza dane codziennie.",
"reauthRequired": "Połączenie z {provider} wygasło. Połącz ponownie, aby dane znów napływały.",
"pausedAfterErrors": "{provider} jest wstrzymany, bo od {since} występowały same błędy.",
"pausedAfterErrorsNoSince": "{provider} jest wstrzymany, bo ostatnio występowały same błędy."
},
"when": {
"today": "dziś, {time}",
"yesterday": "wczoraj, {time}",
"date": "{date}, {time}"
},
"items": {
"activity": "aktywność",
"sleep": "sen"
},
"moreValuesOne": "{count} inna wartość",
"moreValuesFew": "{count} inne wartości",
"moreValuesOther": "{count} innych wartości",
"notConnected": "Nie połączono.",
"lastData": "Ostatnie dane: {when}",
"lastDataNone": "Ostatnie dane: jeszcze brak",
"reconnect": "Połącz ponownie",
"resume": "Wznów",
"menuLabel": "Więcej działań dla {provider}",
"menu": {
"credentials": "Zmień dane dostępowe",
"address": "Zmień adres i token"
},
"syncing": "Trwa synchronizacja…",
"details": {
"title": "Szczegóły do zgłoszenia błędu",
"none": "brak",
"state": "Stan",
"since": "od",
"lastSync": "Ostatnia synchronizacja",
"lastData": "Ostatnie dane",
"failingParts": "części z błędami",
"recentCalls": "Ostatnie wywołania",
"unavailable": "Niedostępne",
"unavailableList": "Niedostępne: {list}",
"causePlan": "plan",
"causePermission": "uprawnienie",
"failureStreak": "Seria błędów: {count} z {threshold}",
"copyFailed": "Nie udało się skopiować. Zaznacz tekst i skopiuj go ręcznie."
},
"historyEnds": {
"horizon": "{type}: zaimportowano wstecz do {date}. Starsze odczyty wykraczają poza limit importu.",
"noProgress": "{type}: zaimportowano wstecz do {date}. Google przestał zwracać starsze odczyty, więc import kończy się w tym miejscu."
}
},
"dawarich": "Dawarich",
"dawarichTag": "Ruch",
"dawarichDescription": "Połącz swoją instancję Dawarich, aby pobierać dzienny dystans, czas poza domem i dni podróży.",
"dawarichUrl": "Adres Dawarich",
"dawarichApiKey": "Klucz API",
"dawarichApiKeyHelp": "Znajdziesz go w Dawarich w sekcji Konto. HealthLog odczytuje nim tylko wartości dzienne, nigdy współrzędne ani nazwy miejsc.",
"dawarichConnect": "Połącz",
"dawarichUpdate": "Zapisz zmiany",
"dawarichConnected": "Dawarich połączony. Trwa wczytywanie ostatnich 30 dni.",
"dawarichSync": "Pobierz teraz",
"dawarichSyncQueued": "Ostatnie siedem dni zostanie zaraz pobrane.",
"dawarichSyncAlreadyQueued": "Pobieranie już trwa.",
"dawarichDisconnect": "Rozłącz",
"dawarichDisconnectTitle": "Rozłączyć Dawarich?",
"dawarichDisconnectDescription": "Kolejne pobierania zostaną zatrzymane. Zapisane dni pozostaną.",
"dawarichDisconnectDelete": "Rozłącz i usuń dni",
"dawarichDisconnectDeleteTitle": "Rozłączyć i usunąć wszystkie dni?",
"dawarichDisconnectDeleteDescription": "Połączenie i wszystkie zapisane dni ruchu zostaną usunięte. Tego nie można cofnąć.",
"dawarichHomePlaceSet": "Dom jest ustawiony.",
"dawarichHomePlaceMissing": "Ustaw dom, aby można było mierzyć czas poza domem.",
"dawarichHomeCountryIs": "Kraj zamieszkania: {country}.",
"dawarichHomeCountryMissing": "Brak kraju zamieszkania, więc brak dni podróży.",
"dawarichDaysStored": "Zapisane dni: {count}",
"dawarichHomePlace": "Dom",
"dawarichHomePlaceChoose": "Wybierz miejsce z Dawarich",
"dawarichHomePlaceChange": "Wybierz dom",
"dawarichHomeCountry": "Kraj zamieszkania",
"dawarichHomeCountryHelp": "Dwuliterowy kod kraju, na przykład DE. Jeśli zostawisz puste, liczy się kraj, w którym spędziłeś najwięcej dni w ostatnim roku.",
"dawarichHomeSave": "Zapisz",
"dawarichHomeSaved": "Zapisano.",
"dawarichErrors": {
"invalid": "Ten adres nie działa. Użyj adresu instancji bez danych logowania.",
"privateOrigin": "Ta instancja jest w sieci prywatnej. Poproś operatora serwera o jej dopuszczenie.",
"credentials": "Dawarich nie zaakceptował klucza API.",
"unreachable": "Dawarich jest nieosiągalny. Sprawdź adres i czy instancja działa.",
"rateLimited": "Zbyt wiele prób. Odczekaj chwilę i spróbuj ponownie.",
"homePlaceUnknown": "Instancja Dawarich nie zna już tego miejsca.",
"notConnected": "Dawarich nie jest połączony.",
"generic": "Nie udało się. Spróbuj ponownie."
},
"fitbitRetirement": {
"ending": "Google wyłączy Fitbit Web API dnia {date}. Od tego dnia to połączenie przestanie się synchronizować.",
"ended": "Google wyłączył Fitbit Web API dnia {date}. To połączenie już się nie synchronizuje.",
"move": "Google Health odczytuje dane z tych samych urządzeń Fitbit i Pixel. Połącz je poniżej, aby dane nadal napływały. Google poprosi o zgodę jeszcze raz, ponieważ połączenia Fitbit nie da się przenieść. Wszystko, co już zaimportowano, zostaje.",
"toCard": "Przejdź do Google Health",
"guide": "Jak połączyć Google Health",
"badgeEnding": "Wkrótce wyłączone",
"badgeEnded": "Wyłączone"
},
"passkeyAddedToast": "Dodano passkey.",
"passkeyRemovedToast": "Usunięto passkey.",
"integrationDisconnected": "Rozłączono {provider}.",
"integrationDisconnectFailed": "Nie udało się rozłączyć {provider}.",
"timezoneSaved": "Strefa czasowa zapisana.",
"moduleState": {
"on": "Włączone",
"off": "Wyłączone",
"change": "Zmień w Modułach"
},
"timezoneUseDevice": "Użyj strefy czasowej tego urządzenia ({zone})",
"dangerZoneConfirmDescriptionGrace": "Ta czynność usuwa wszystko z Twojej dokumentacji: pomiary, leki, wpisy nastroju, wyniki badań, wpisy cyklu, dokumenty, rozmowy z SI oraz wszystkie połączenia integracji, a wraz z nimi wszystko, co z nich wyliczono, i wszystko, co usunięto wcześniej. Linki udostępnione poradni natychmiast przestają działać. Konto zostaje, razem z danymi logowania i ustawieniami wyświetlania, takimi jak język, strefa czasowa i jednostki. Kopia twojej dokumentacji jest przechowywana przez {days} dni, więc do tego czasu administrator tego serwera może ją przywrócić. Potem usunięcie jest ostateczne.",
"deleteAccountCardDetailGrace": "Twoje konto zostaje od razu zablokowane i usunięte po {days} dniach. Do tego czasu administrator tego serwera może cofnąć usunięcie.",
"deleteAccountConfirmDescriptionGrace": "Zostaniesz wylogowany, a twoje konto od razu zablokowane. Po {days} dniach zostanie trwale usunięte, razem ze wszystkimi danymi zdrowotnymi, kluczami dostępu, sesjami i wpisami audytu. Do tego czasu administrator tego serwera może cofnąć usunięcie. Kopie w kopiach zapasowych tego serwera wygasają po upływie okresu przechowywania.",
"deleteAccountScheduled": "Twoje konto jest zablokowane i zostanie usunięte {date}. Trwa wylogowywanie.",
"dangerZoneSuccessGrace": "Twoja dokumentacja zdrowotna została usunięta. Administrator tego serwera może ją przywrócić do {date}.",
"dangerZoneRestoreLimits": "Kończy się też dostęp: to, co udostępniasz innym, to, co inni udostępniają tobie, i każda rola osoby opiekującej się. Przywrócenie odtwarza dokumentację taką, jaka jest teraz. To, co dojdzie po usunięciu, zostaje zastąpione, a połączenia integracji, udostępnienia, role opiekunów i linki udostępniania nie wracają; trzeba je skonfigurować od nowa.",
"garmin": "Garmin",
"garminTag": "Personal API",
"garminDescription": "Wklej klucz Garmin Personal API, aby synchronizować sen, HRV, Body Battery, stres, kroki, wagę i aktywności z Garmin Connect.",
"garminSync": "Synchronizuj teraz",
"garminSyncResult": "Zsynchronizowano wpisy: {count}",
"garminSyncFailed": "Synchronizacja nie powiodła się",
"garminViewData": "Zobacz regenerację",
"garminReplaceKey": "Zastąp klucz",
"garminDisconnect": "Odłącz",
"garminDisconnectTitle": "Odłączyć Garmin?",
"garminDisconnectDescription": "Przyszłe synchronizacje zostaną zatrzymane, a klucz usunięty z tego serwera. Zaimportowane dane zostają w Twojej historii. Klucz działa w Garminie, dopóki go tam nie unieważnisz.",
"garminKeyValidUntil": "Klucz ważny do {date}",
"garminKeyExpired": "Twój klucz Garmin wygasł {date}. Utwórz nowy klucz w Garmin Connect i wklej go tutaj, aby wznowić synchronizację.",
"garminKeyExpiresToday": "Twój klucz Garmin wygasa dzisiaj. Utwórz nowy klucz w Garmin Connect i wklej go tutaj, aby synchronizacja się nie zatrzymała.",
"garminKeyExpiring": "Twój klucz Garmin wygasa {date}. Przed tym dniem utwórz nowy klucz w Garmin Connect i wklej go tutaj.",
"garminKeyExpiryUnknown": "Garmin nie podaje, kiedy ten klucz wygaśnie. Zastąp klucz i wybierz ważność ustawioną w Garmin Connect, a ta karta ostrzeże Cię tydzień wcześniej.",
"garminConnected": "Połączono z Garmin. Pierwsza synchronizacja jest w drodze.",
"garminKeyHowTo": "W Garmin Connect otwórz Ustawienia, następnie Personal API, i utwórz klucz. Garmin pokazuje go tylko raz, więc od razu go skopiuj.",
"garminKeySettingsLink": "Otwórz Garmin Connect",
"garminApiKey": "Klucz Personal API",
"garminApiKeyPlaceholder": "Wklej klucz",
"garminApiKeySavedPlaceholder": "Zapisano. Wklej nowy klucz, aby go zastąpić",
"garminKeyValidity": "Wybrana ważność",
"garminKeyValidityUnknown": "Nie wiem",
"garminKeyValidityDays": "{count} dni",
"garminKeyValidityHelp": "Garmin nie informuje, kiedy klucz wygasa. Dzięki ważności ta karta ostrzeże Cię tydzień przed tym, jak klucz przestanie działać.",
"garminConnect": "Połącz",
"garminUpdate": "Zapisz zmiany",
"garminRegion": "Usługa Garmin",
"garminRegionGlobal": "Garmin Connect (globalny)",
"garminRegionChina": "Garmin Connect Chiny",
"garminErrors": {
"keyRefused": "Garmin nie przyjął tego klucza. Sprawdź, czy został skopiowany w całości, należy do wybranej usługi i nie wygasł ani nie został unieważniony.",
"rateLimited": "Garmin ogranicza teraz liczbę zapytań. Spróbuj ponownie za kilka minut.",
"unreachable": "Nie można połączyć się z Garmin. Spróbuj ponownie za kilka minut.",
"invalid": "Ten klucz wygląda nieprawidłowo. Wklej go ponownie, bez spacji.",
"generic": "Nie udało się. Spróbuj ponownie."
},
"garminKeyValidityMenu": "Ważność klucza",
"garminValiditySaved": "Zapisano ważność.",
"garminKeyCreatedOn": "Utworzono",
"garminKeyCreatedOnHelp": "Dzień, w którym utworzono klucz w Garmin Connect. Jeśli zostawisz puste, ważność liczy się od dnia połączenia go tutaj.",
"garminUnavailable": "Garmin nie udostępnia tych danych dla Twojego konta: {list}.",
"garminResource": {
"daily": "podsumowania dzienne",
"activities": "aktywności",
"sleep": "sen",
"hrv": "HRV",
"weight": "pomiary wagi",
"cycle": "cykl menstruacyjny"
}
},
"admin": {
"title": "Administracja",
"subtitle": "Stan systemu, użytkownicy i ustawienia",
"settingsSaveError": "Nie udało się zapisać ustawień",
"systemStatus": "Stan systemu",
"systemStatusDescription": "Stan działania tej instancji: baza danych, worker i liczniki rekordów.",
"database": "Baza danych",
"databaseConnected": "Połączona",
"databaseError": "Błąd",
"startedAt": "Uruchomiono",
"users": "Użytkownicy",
"measurementsCount": "Pomiary",
"activeTokens": "Aktywne tokeny API",
"activeSessions": "Aktywne sesje",
"loadingStatus": "Ładowanie stanu...",
"systemStatusLoadError": "Nie udało się załadować stanu systemu.",
"systemStatusRetry": "Spróbuj ponownie",
"adminSettingsLoadError": "Nie udało się załadować ustawień administracyjnych. Przełączniki poniżej mogą nie odzwierciedlać bieżącego stanu, odśwież stronę.",
"hostMetrics": {
"title": "Obciążenie hosta",
"load1": "Obciążenie (1m)",
"memUsedPercent": "Pamięć",
"diskBusyPercent": "Disk I/O",
"last2hours": "Ostatnie 2 godziny",
"empty": "Rozpoczęto próbkowanie. Dane pojawią się w ciągu 1–2 minut.",
"loadError": "Nie udało się załadować metryk hosta. Spróbuj odświeżyć stronę."
},
"aiServerKey": {
"title": "Serwerowy klucz AI",
"description": "Klucz operatora dla kont, które nie mają własnego.",
"byokHint": "Własny klucz użytkownika (BYOK, logowanie ChatGPT lub dostawca lokalny) zawsze ma pierwszeństwo; klucz serwera jest ostatnim ogniwem łańcucha dostawców.",
"consentHint": "Żądania przez klucz serwera wymagają aktywnej zgody użytkownika na AI; bez potwierdzenia zgody nic nie jest wysyłane.",
"baseUrlHint": "Adres bazowy decyduje o API: adres Anthropic taki jak https://api.anthropic.com/v1 jest rozpoznawany, każdy inny host jest wywoływany przez API zgodne z OpenAI.",
"statusConfigured": "Skonfigurowany",
"statusNotConfigured": "Nieskonfigurowany",
"keyLabel": "Klucz API",
"keyPlaceholder": "sk-...",
"keyPlaceholderSet": "Zapisany ({preview}). Wpisz nowy klucz, aby go zastąpić",
"modelLabel": "Model",
"baseUrlLabel": "Adres bazowy URL",
"save": "Zapisz",
"remove": "Usuń klucz",
"removeTitle": "Usunąć klucz serwera?",
"removeBody": "Konta bez własnego klucza natychmiast tracą funkcje AI. Po zapisaniu klucz nie jest nigdzie pokazywany, więc do przywrócenia potrzebny będzie oryginał.",
"removeConfirm": "Usuń klucz",
"saved": "Zapisano ustawienia serwerowego klucza AI",
"error": "Nie udało się zapisać serwerowego klucza AI",
"legacyGrantTitle": "ALLOW_LOCAL_AI_PRIVATE_HOSTS=true jest przestarzałe",
"legacyGrantBody": "Nadal pozwala kluczowi serwera powyżej i ustawieniom AI zapisanym na koncie administratora sięgać do Twojej sieci i zostanie usunięte w jednej z kolejnych wersji. Pozostałe konta już teraz potrzebują swojego punktu końcowego AI w AI_PRIVATE_ORIGINS. Ustaw AI_PRIVATE_ORIGINS w środowisku serwera, uruchom go ponownie, a potem usuń ALLOW_LOCAL_AI_PRIVATE_HOSTS.",
"legacyGrantOrigins": "Adresy AI zapisane na tej instancji, które wskazują na Twoją sieć:",
"legacyGrantNoOrigins": "Żaden adres AI zapisany na tej instancji nie wskazuje na Twoją sieć, więc możesz już usunąć ALLOW_LOCAL_AI_PRIVATE_HOSTS."
},
"providerHealth": {
"title": "Stan dostawców AI",
"description": "Stan dostarczania każdego dostawcy AI, zebrany z rejestru ponowień na użytkownika.",
"loading": "Ładowanie stanu dostawców…",
"loadError": "Nie udało się załadować stanu dostawców.",
"empty": "Nie zarejestrowano jeszcze żadnych wywołań AI.",
"trackedUsers": "Śledzeni użytkownicy: {count}",
"lastOk": "ostatni sukces {at}",
"lastFailure": "ostatnia awaria {at}",
"lastFailureStatus": "HTTP {status}",
"statusHealthy": "Sprawny",
"statusFailing": "{failing} z {tracked} zawodzi, {run} z rzędu",
"typeAdminOpenai": "Klucz serwera (operator)",
"typeAdminCodex": "Centralny ChatGPT (operator)",
"typeOpenai": "Klucz OpenAI (osobisty)",
"typeAnthropic": "Klucz Anthropic (osobisty)",
"typeCodex": "Logowanie ChatGPT (osobiste)",
"typeLocal": "Model lokalny (osobisty)",
"typeGateway": "Brama zgodna z OpenAI (osobista)",
"spendToday": "Dzisiaj, według dnia kalendarzowego każdego konta: {total} tokenów, w tym {operator} na kluczu operatora (konta ze zużyciem: {accounts}).",
"statusPaused": "Wstrzymany",
"pausedHint": "Wstrzymany po powtarzających się błędach dla {count} użytkowników do {at}. Potem zostanie automatycznie ponowiony.",
"modelNotServed": "Punkt końcowy nie oferuje już modelu {model}. Wybierz w ustawieniach AI model, który oferuje.",
"usageLevels": "Konta według poziomu użycia AI: oszczędny {frugal}, standardowy {standard}, pełny {full}."
},
"aiQuality": {
"title": "Jakość analiz",
"loading": "Ładowanie podsumowania opinii...",
"loadError": "Nie udało się załadować podsumowania jakości analiz. Spróbuj odświeżyć stronę.",
"empty": "Brak opinii. Agregator uruchamia się codziennie o 04:00. Gdy użytkownicy zaczną oceniać rekomendacje, tutaj pojawią się wskaźniki przydatności.",
"windowLabel": "Ostatnie {days} dni",
"generatedAtLabel": "Wygenerowano",
"colSeverity": "Ważność",
"colMetric": "Metryka",
"colProvider": "Dostawca",
"colPromptVersion": "Prompt",
"colHelpful": "Pomocne",
"colNotHelpful": "Niepomocne",
"colHelpfulRate": "Wskaźnik przydatności"
},
"coachFeedback": {
"title": "Opinie o Coachu",
"loading": "Ładowanie podsumowania opinii o Coachu...",
"loadError": "Nie udało się załadować podsumowania opinii o Coachu. Spróbuj odświeżyć stronę.",
"empty": "Brak opinii o Coachu. Agregator uruchamia się codziennie o 04:00. Gdy użytkownicy ocenią odpowiedzi Coacha, tutaj pojawią się wskaźniki przydatności.",
"windowLabel": "Ostatnie {days} dni",
"generatedAtLabel": "Wygenerowano",
"colPromptVersion": "Wersja promptu",
"colTone": "Ton",
"colVerbosity": "Szczegółowość",
"colHelpful": "Pomocne",
"colNotHelpful": "Niepomocne",
"colN": "n",
"colHelpfulRate": "Wskaźnik przydatności"
},
"workerStatus": "Worker zadań",
"workerRunning": "Działa",
"workerStopped": "Zatrzymano",
"lastReminderCheck": "Ostatnie sprawdzenie przypomnień",
"appSettings": "Ustawienia aplikacji",
"appSettingsDescription": "Globalne ustawienia domyślne rejestracji, języka i strefy czasowej nowych kont.",
"registrationEnabled": "Zezwól na rejestrację",
"registrationEnabledDescription": "Gdy wyłączone, nowi użytkownicy nie mogą się zarejestrować.",
"registrationOpenHint": "Rejestracja jest otwarta: każdy, kto ma dostęp do tej instancji, może założyć konto. Zamknij ją tutaj, gdy wszyscy będą mieć konto.",
"defaultLanguage": "Domyślny język",
"defaultLanguageDescription": "Używany dla nowych użytkowników i jako rozwiązanie zapasowe.",
"defaultUserTimezone": "Domyślna strefa czasowa dla nowych kont",
"defaultUserTimezoneDescription": "Używana dla nowych kont bez strefy wykrytej przez przeglądarkę; istniejące konta zachowują swoją.",
"defaultUserTimezoneFallback": "Europe/Berlin (domyślna)",
"servicesGlobal": "Kanały i API",
"servicesGlobalDescription": "Wyłączone usługi nie są dostępne dla żadnego użytkownika.",
"telegramGlobal": "Zezwól na powiadomienia Telegram.",
"ntfyGlobal": "Zezwól na powiadomienia ntfy.",
"webPushGlobal": "Zezwól na powiadomienia push przeglądarki.",
"integrationWebPush": "Web Push",
"offlineGeoLabel": "Dane geograficzne",
"offlineGeoEnabled": "Offline (GeoLite2)",
"offlineGeoFallback": "Online ({host}): podłącz bazy GeoLite2 i ustaw GEOLITE2_DIR",
"heapLimitLabel": "Limit sterty",
"heapLimitValue": "{mb} MB",
"heapLimitLow": "{mb} MB, za mało: ustaw APP_MEMORY_LIMIT=1536m w .env",
"memoryBelowFloor": "Kontener {mb} MB, poniżej obsługiwanego minimum {floor} MB: ustaw APP_MEMORY_LIMIT={floor}m w .env",
"offlineGeoOff": "Wyłączone",
"offlineGeoChosen": "Online ({host})",
"apiGlobal": "Zezwól na punkty końcowe API i tokeny API.",
"umamiTitle": "Umami",
"umamiDescription": "Analityka internetowa z Umami.",
"glitchtipTitle": "GlitchTip",
"glitchtipDescription": "Śledzenie błędów z GlitchTip.",
"webPushVapidTitle": "Web Push VAPID",
"umamiEnabled": "Włącz śledzenie Umami",
"umamiScriptUrl": "Adres URL skryptu Umami",
"umamiScriptUrlPlaceholder": "https://analytics.example.com/script.js",
"umamiWebsiteId": "Identyfikator witryny Umami",
"umamiWebsiteIdPlaceholder": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"glitchtipEnabled": "Włącz śledzenie błędów GlitchTip",
"glitchtipDsn": "GlitchTip DSN",
"glitchtipDsnPlaceholder": "https://<public-key>@glitchtip.example.com/<project-id>",
"glitchtipEnvironment": "Środowisko GlitchTip",
"glitchtipEnvironmentPlaceholder": "production",
"glitchtipTargetOn": "Zgłoszenia błędów trafiają do {host}.",
"glitchtipTargetOff": "Zgłoszenia błędów zostają na tym hoście. Nic nie jest wysyłane.",
"glitchtipTargetNoTarget": "Śledzenie błędów jest włączone, ale nie ustawiono celu, więc nic nie jest wysyłane.",
"glitchtipUnproven": "Niepotwierdzone",
"glitchtipDeliveryUnproven": "Cel jest ustawiony, ale żaden raport nie opuścił jeszcze tego hosta. Naciśnij Testuj, aby sprawdzić, czy zostanie przyjęty.",
"glitchtipDeliveryStale": "Przez ostatnie {hours} h żaden raport nie opuścił tego hosta. Naciśnij Testuj, aby sprawdzić, czy cel nadal je przyjmuje.",
"glitchtipDeliveryFailed": "Ostatni raport nie dotarł ({reason}).",
"webPushVapidDescription": "Skonfiguruj tutaj klucze VAPID i subject, aby push przeglądarki działał bez zmiennych środowiskowych.",
"webPushVapidPublicKey": "Klucz publiczny VAPID",
"webPushVapidPublicKeyPlaceholder": "BElx... (Base64URL)",
"webPushVapidPrivateKey": "Klucz prywatny VAPID",
"webPushVapidPrivateKeyPlaceholder": "Opcjonalnie: wprowadź nowy klucz prywatny",
"webPushVapidSubject": "Subject VAPID",
"webPushVapidSubjectPlaceholder": "mailto:you@example.com",
"webPushVapidGenerate": "Wygeneruj klucze",
"webPushVapidGenerating": "Generowanie…",
"webPushVapidGenerated": "Klucze VAPID wygenerowane. Zapisz temat, aby zakończyć.",
"webPushVapidGenerateFailed": "Nie udało się wygenerować kluczy VAPID.",
"webPushVapidGenerateConfirm": "Klucze VAPID są już skonfigurowane. Wygenerowanie nowej pary unieważnia wszystkie subskrypcje push w przeglądarce, więc każde urządzenie musi zasubskrybować ponownie. Kontynuować?",
"webPushVapidGenerateConfirmTitle": "Wygenerować nowe klucze VAPID?",
"webPushVapidRegenerate": "Wygeneruj ponownie",
"configured": "Skonfigurowano",
"monitoringTestSuccess": "Wysłano zdarzenie testowe",
"monitoringTestFailed": "Test monitorowania nie powiódł się",
"assistant": {
"title": "Asystent",
"description": "Każdy przełącznik zatrzymuje pracę AI, którą obejmuje, i ukrywa jej tekst, a dane i wyniki nadal się wczytują.",
"master": {
"title": "Asystent włączony",
"description": "Główny przełącznik wszystkich funkcji AI. Gdy jest wyłączony, nic nie trafia do modelu, a wszystkie przełączniki poniżej są wyłączone."
},
"coach": {
"title": "Coach",
"description": "Czat, utrzymanie pamięci Coacha i podpowiedzi AI. Zapisane rozmowy nadal można czytać i usuwać."
},
"briefing": {
"title": "Codzienny briefing",
"description": "Codzienny briefing, jego pierwsze zdania w innych miejscach aplikacji i podsumowania okresów pisane przez model."
},
"insightStatus": {
"title": "Notatki o stanie",
"description": "Krótkie notatki, które model pisze do pomiarów i wskaźników, notatki o treningach i linie reakcji. Największa część zużycia tokenów."
},
"documentAi": {
"title": "Czytanie dokumentów",
"description": "Czytanie zapisanych dokumentów przez AI, skanowanie wyników badań laboratoryjnych i odczytywanie leków z tekstu. Największa część danych opuszczających serwer."
},
"reasoning": {
"enabled": "Zezwalaj na głębszy namysł",
"max": "Największa głębokość namysłu",
"description": "Modele myślą przed odpowiedzią: Coach, codzienne podsumowanie i podsumowania okresów. Dokładniej, ale więcej tokenów."
}
},
"modules": {
"title": "Dostępność modułów",
"description": "Wyłącz moduł dla całego serwera.",
"saveError": "Nie udało się zaktualizować dostępności modułów.",
"detail": "Waga, ciśnienie i tętno to podstawowe pomiary i zawsze pozostają włączone.",
"coachFollowsSwitch": "Podlega przełącznikowi Coach w sekcji Coach."
},
"invites": {
"title": "Linki z zaproszeniem",
"description": "Każdy link pozwala na rejestrację nawet przy zamkniętej rejestracji.",
"create": "Utwórz zaproszenie",
"createTitle": "Utwórz zaproszenie",
"createDescription": "Link umożliwia rejestrację nawet przy zamkniętej rejestracji.",
"ttlLegend": "Ważne przez",
"createDays": "{days} dni",
"maxUsesLabel": "Maksymalna liczba użyć",
"maxUsesHint": "Ile rejestracji dopuszcza ten link (1–50).",
"createConfirm": "Utwórz zaproszenie",
"createdToast": "Zaproszenie utworzone",
"createError": "Nie udało się utworzyć zaproszenia.",
"tokenTitle": "Link z zaproszeniem",
"tokenOnceHint": "Do skopiowania tylko teraz: skopiuj link lub udostępnij kod QR do zeskanowania.",
"hashExplainer": "Zapisywany jest tylko hash linku, więc nie można go później ponownie wyświetlić. W razie utraty unieważnij zaproszenie i utwórz nowe.",
"copyLink": "Kopiuj link",
"copiedToast": "Link skopiowany",
"copyError": "Kopiowanie nie powiodło się.",
"qrAlt": "Kod QR linku z zaproszeniem",
"loadError": "Nie udało się wczytać zaproszeń.",
"emptyTitle": "Brak zaproszeń",
"emptyDescription": "Utwórz link z zaproszeniem, aby przyjąć kogoś mimo zamkniętej rejestracji.",
"colStatus": "Status",
"colCreated": "Utworzono",
"colExpires": "Wygasa",
"colUses": "Użycia",
"colRedeemedBy": "Wykorzystane przez",
"colActions": "Akcje",
"byCreator": "przez {by}",
"expiresInDaysOne": "za 1 dzień",
"expiresInDaysOther": "za {count} dni",
"statusActive": "Aktywne",
"statusExpired": "Wygasłe",
"statusExhausted": "Wyczerpane",
"statusRevoked": "Unieważnione",
"redeemerDeleted": "usunięte konto",
"redeemedByMore": "{username} + {count} więcej",
"redemptionsTitle": "Wykorzystania: {count}",
"revoke": "Unieważnij",
"revokeAria": "Unieważnij zaproszenie",
"revokeConfirmTitle": "Unieważnić to zaproszenie?",
"revokeConfirmBody": "Link z zaproszeniem natychmiast straci ważność. Konta już zarejestrowane przez ten link pozostaną, a historia wykorzystań będzie nadal widoczna.",
"revokeConfirmAction": "Unieważnij",
"cancel": "Anuluj",
"revokedToast": "Zaproszenie unieważnione.",
"revokeError": "Nie udało się unieważnić zaproszenia."
},
"userManagement": "Konta",
"userManagementDescription": "Role, resety haseł i wymuszone wylogowania dla każdego konta.",
"userName": "Nazwa",
"userEmail": "E-mail",
"userRole": "Rola",
"userPasskeys": "Passkeys",
"userCreated": "Utworzono",
"userActions": "Akcje",
"editUser": "Edytuj użytkownika",
"editUserTitle": "Edytuj użytkownika: {name}",
"demoteToUser": "Obniż do użytkownika",
"promoteToAdmin": "Awansuj na administratora",
"toUser": "Ustaw jako użytkownika",
"toAdmin": "Ustaw jako administratora",
"ownRoleUnchangeable": "Nie można zmienić własnej roli",
"resetPassword": "Zresetuj hasło",
"resetPasswordTitle": "Zresetuj hasło: {name}",
"newPassword": "Nowe hasło",
"newPasswordPlaceholder": "Co najmniej 12 znaków",
"passwordReset": "Hasło zostało zresetowane",
"reset": "Resetuj",
"loadingUsers": "Ładowanie użytkowników...",
"apiTokens": "Tokeny API",
"apiTokensDescription": "Wszystkie aktywne i unieważnione tokeny API ze wszystkich kont.",
"tokenUser": "Użytkownik",
"tokenName": "Nazwa",
"tokenPermissions": "Uprawnienia",
"tokenPermissionAll": "Wszystko",
"tokenPermissionAllTooltip": "Uprawnienie wieloznaczne: ten token może wywołać każdą trasę API.",
"tokenStatus": "Stan",
"tokenLastUsed": "Ostatnio użyto",
"tokenCreated": "Utworzono",
"tokenNeverUsed": "Nigdy",
"tokensEmptyTitle": "Brak tokenów API",
"tokensEmptyDescription": "Tokeny są wydawane, gdy klient natywny się loguje, lub przez Ustawienia → Konto.",
"loginOverviewDescription": "Zdarzenia logowania i uwierzytelniania wszystkich kont, z filtrowaniem i eksportem CSV.",
"loginOverviewFilterLabel": "Filtruj zdarzenia",
"allAuthEvents": "Wszystkie zdarzenia uwierzytelniania",
"failedOnly": "Tylko nieudane",
"loginEmptyDescription": "Tutaj pojawią się logowania, wylogowania i zmiany kluczy passkey.",
"loginEmptyFailedTitle": "Brak nieudanych prób logowania",
"loginEmptyFailedDescription": "To bezpieczny stan. Przełącz na wszystkie zdarzenia, aby zobaczyć udane logowania.",
"loginEmptyResetFilter": "Pokaż wszystkie zdarzenia",
"showingEntries": "Wyświetlanie {count} z {total} wpisów uwierzytelniania",
"status": "Stan",
"action": "Akcja",
"ip": "IP",
"location": "Lokalizacja",
"timestamp": "Czas",
"provider": "Dostawca",
"providerPassword": "Hasło",
"providerPasskey": "Passkey",
"providerApiToken": "Token API",
"providerWithings": "Withings",
"providerUnknown": "Nieznane",
"outcome": "Wynik",
"outcomeSuccess": "Sukces",
"outcomeFailed": "Nieudane",
"auditDetails": "Szczegóły",
"deleteAllData": "Usuń wszystkie dane globalnie",
"deleteAllDescription": "Usuwa wszystkie rekordy wszystkich kont; konta i dane logowania zostają zachowane.",
"deleteAllConfirm": "Na pewno usunąć wszystkie dane?",
"deleteAllConfirmDescription": "Ta operacja trwale usuwa wszystkie rekordy wszystkich kont w całej bazie danych, a nie wybrane tabele. Zachowane zostają: konta użytkowników i ich dane logowania, konfiguracja instancji oraz uprawnienia, dzięki którym profile zarządzane pozostają dostępne. Po zakończeniu do dziennika audytu trafia potwierdzenie tego usunięcia; wcześniejsza historia znika razem z resztą.",
"deleteButton": "Usuń wszystkie dane",
"deleteAllPromptLabel": "Wpisz {token}, aby kontynuować",
"finalDelete": "Usuń trwale",
"deletedResult": "Usunięto {rows} wierszy w {tables} tabelach. Konta użytkowników i dane logowania zostały zachowane.",
"authRegister": "Rejestracja",
"authClaim": "Profil przejęty",
"authLogin": "Zaloguj",
"authLoginPasskey": "Logowanie kluczem passkey",
"authLoginPassword": "Logowanie hasłem",
"authLoginFailed": "Nieudane",
"authLogout": "Wyloguj",
"authPasskeyRegister": "Dodano klucz passkey",
"authPasskeyDelete": "Usunięto klucz passkey",
"authTokenAutoissueNative": "Wydano token klienta natywnego",
"authTokenRefresh": "Token odświeżony",
"authTokenRevoke": "Token unieważniony",
"medicationReminders": "Przypomnienia o lekach",
"medicationRemindersDescription": "Progi zmian koloru oznaczeń przypomnień na kartach leków.",
"notificationHealth": {
"title": "Stan dostarczania",
"description": "Wyniki dostarczania wszystkich użytkowników z ostatnich 24 godzin.",
"empty": "W tym okresie nie wysłano żadnych powiadomień.",
"ok": "OK",
"error": "Nieudane",
"skipped": "Pominięte",
"autoDisabled": "Automatycznie wyłączone kanały"
},
"reminderLateMinutes": "Próg opóźnienia (minuty)",
"reminderLateMinutesDescription": "Minuty po końcu okna, zanim oznaczenie zmieni kolor z żółtego na pomarańczowy.",
"reminderMissedMinutes": "Próg pominięcia (minuty)",
"reminderMissedMinutesDescription": "Minuty po końcu okna, zanim przyjęcie zostanie uznane za pominięte.",
"notificationTestSend": "Wyślij test",
"notificationTestSuccess": "Wysłano powiadomienie testowe",
"notificationTestFailed": "Nie udało się wysłać powiadomienia testowego",
"reminderCheckRun": "Uruchom sprawdzenie przypomnień",
"reminderCheckSuccess": "Zakończono sprawdzanie przypomnień",
"reminderCheckFailed": "Nie udało się uruchomić sprawdzenia przypomnień",
"reminderCheckResults": "Wyniki",
"reminderCheckNotifOn": "Powiadomienia włączone",
"reminderCheckNotifOff": "Powiadomienia wyłączone",
"reminderCheckEventsToday": "Zdarzenia dzisiaj",
"reminderCheckNotifSent": "Wysłane",
"shell": {
"overview": "Przegląd",
"sectionsNav": "Sekcje administracyjne"
},
"overview": {
"snapshotTitle": "Migawka systemu",
"snapshotDatabase": "Baza danych",
"snapshotWorker": "Worker",
"snapshotStarted": "Uruchomiono",
"snapshotOfflineGeo": "Dane geograficzne",
"snapshotOfflineGeoOn": "Offline (GeoLite2)",
"snapshotOfflineGeoOff": "Online ({host})",
"versionTileTitle": "Wersja",
"versionTileVersion": "Uruchomiona wersja",
"versionTileBuildSha": "SHA kompilacji",
"versionTileBuiltAt": "Skompilowano",
"versionTileUpdateAvailable": "Dostępna aktualizacja: {tag}",
"versionTileUpToDate": "Aktualne",
"versionTileCheckOff": "Sprawdzanie aktualizacji wyłączone",
"snapshotLoadError": "Nie udało się załadować migawki systemu.",
"snapshotLoading": "Ładowanie migawki...",
"auditTitle": "Ostatnia aktywność",
"auditEmpty": "Brak ostatnich wpisów audytu.",
"auditLoadError": "Nie udało się załadować ostatniej aktywności.",
"auditLoading": "Ładowanie aktywności...",
"auditViewAll": "Pokaż wszystko"
},
"section": {
"system-status": {
"title": "Stan systemu",
"subtitle": "Stan workera, bazy danych i integracji w jednym miejscu."
},
"general": {
"title": "Ogólne",
"subtitle": "Rejestracja, domyślny język i inne przełączniki obejmujące całą aplikację."
},
"services": {
"title": "Usługi",
"subtitle": "Włącz lub wyłącz kanały powiadomień i API dla całego serwera."
},
"integrations": {
"title": "Integracje",
"subtitle": "Skonfiguruj Umami, GlitchTip, Web Push i zgłoszenia błędów."
},
"coach": {
"title": "Coach",
"subtitle": "Powierzchnie asystenta, klucz serwera i jakość opinii."
},
"reminders": {
"title": "Przypomnienia",
"subtitle": "Dostrój progi przypomnień o lekach i uruchom ręczne sprawdzenie."
},
"users": {
"title": "Użytkownicy",
"subtitle": "Zarządzaj kontami użytkowników, rolami i aktywnymi sesjami.",
"filter": {
"all": "Wszystko",
"admin": "Administratorzy",
"user": "Użytkownicy"
},
"filterLabel": "Filtruj użytkowników",
"forceLogout": "Wymuś wylogowanie",
"forceLogoutConfirmTitle": "Wymusić wylogowanie {name}?",
"forceLogoutConfirmBody": "Wszystkie aktywne sesje tego użytkownika zostaną unieważnione. Będzie musiał zalogować się ponownie na każdym urządzeniu.",
"forceLogoutSuccess": "Wylogowano {name} z {count} sesji",
"forceLogoutFailed": "Nie udało się wymusić wylogowania",
"cannotLogoutSelf": "Nie można wymusić wylogowania samego siebie",
"emptyTitle": "Brak użytkowników w tym widoku",
"emptyDescription": "Brak użytkowników pasujących do bieżącego filtra.",
"emptyResetFilter": "Pokaż wszystkich użytkowników",
"deletionPending": "Usunięcie {date}",
"deletionPendingNoDate": "Usunięcie zaplanowane",
"undoDeletion": "Cofnij usunięcie",
"undoDeletionTitle": "Cofnąć usunięcie {name}?",
"undoDeletionBody": "{name} poprosił o usunięcie tego konta; zostanie ono usunięte po upływie okresu karencji. Cofnięcie zachowuje konto i całą jego zawartość bez zmian. {name} może znów się zalogować, ale tokeny API, linki udostępniania i zaufane urządzenia pozostają unieważnione i trzeba je skonfigurować od nowa.",
"undoDeletionBodyGuardian": "Osoba opiekująca się profilem usunęła profil zarządzany {name}; zostanie on usunięty po upływie okresu karencji. Cofnięcie zachowuje profil i całą jego zawartość bez zmian, a osoby opiekujące się nim znów mają do niego dostęp. Jego linki udostępniania i tokeny pozostają unieważnione i trzeba je skonfigurować od nowa.",
"undoDeletionDone": "Cofnięto usunięcie {name}",
"undoDeletionFailed": "Nie udało się cofnąć usunięcia",
"undoDeletionBodyAdmin": "Administrator usunął konto {name}; zostanie ono usunięte po upływie okresu karencji. Cofnięcie zachowuje konto i całą jego zawartość bez zmian. {name} może znów się zalogować, ale tokeny API, linki udostępniania i zaufane urządzenia pozostają unieważnione i trzeba je skonfigurować od nowa.",
"deleteUser": "Usuń konto",
"deleteUserTitle": "Usunąć konto {name}?",
"deleteUserBodyGrace": "{name} zostanie od razu wszędzie wylogowany i nie będzie mógł się już zalogować. Konto i cała jego zawartość zostaną usunięte {date}. Do tego czasu możesz tutaj cofnąć usunięcie.",
"deleteUserBodyNow": "{name} i cała zawartość konta zostaną usunięte od razu. Ten serwer nie ma okresu karencji, więc usunięcia nie da się cofnąć.",
"deleteUserConfirm": "Usuń konto",
"deleteUserScheduled": "Konto {name} jest zablokowane i zostanie usunięte {date}",
"deleteUserDone": "Konto {name} zostało usunięte",
"deleteUserFailed": "Nie udało się usunąć konta"
},
"invites": {
"title": "Zaproszenia",
"subtitle": "Tworzenie, śledzenie i unieważnianie linków z zaproszeniem."
},
"api-tokens": {
"title": "Tokeny API",
"subtitle": "Aktywne tokeny bearer wydane klientom natywnym i integracjom."
},
"login-overview": {
"title": "Przegląd logowań",
"subtitle": "Ślad audytu zdarzeń uwierzytelniania i administracyjnych."
},
"auditLog": {
"filterActor": "Podmiot (ID użytkownika lub nazwa użytkownika)",
"filterAction": "Akcja",
"filterActionAll": "Wszystkie akcje",
"filterTarget": "Cel (ID lub ścieżka)",
"filterDate": "Zakres dat",
"range24h": "Ostatnie 24 godziny",
"range7d": "Ostatnie 7 dni",
"range30d": "Ostatnie 30 dni",
"rangeAll": "Cały okres",
"perPage": "Na stronę",
"prev": "Poprzednia",
"next": "Dalej",
"pageOf": "Strona {page} z {total}",
"export": "Eksportuj CSV",
"empty": "Żaden wpis audytu nie pasuje do bieżących filtrów."
},
"app-logs": {
"title": "Logi aplikacji",
"subtitle": "Wyświetl najnowsze ustrukturyzowane wide-events emitowane przez ten proces.",
"processNote": "Wyświetlane są tylko logi procesu aplikacji; logi procesu workera trafiają do Loki, gdy ta integracja jest skonfigurowana.",
"filterTraceId": "Identyfikator śladu",
"filterAction": "Akcja zawiera…",
"filterLevel": "Poziom",
"levelAll": "Wszystkie poziomy",
"filterRange": "Okno czasowe",
"range15m": "Ostatnie 15 minut",
"range1h": "Ostatnia godzina",
"range6h": "Ostatnie 6 godzin",
"rangeAll": "Cały bufor",
"colLevel": "Poziom",
"colTimestamp": "Znacznik czasu",
"colAction": "Akcja",
"colDuration": "Czas trwania",
"colTraceId": "Trace",
"viewDetails": "Zobacz szczegóły dla {action} o {timestamp}",
"showing": "Wyświetlono {count} z maksymalnie {bufferMax} buforowanych zdarzeń",
"empty": "Bufor jest pusty",
"emptyDescription": "Żadne zdarzenie nie pasuje jeszcze do bieżących filtrów. Kliknij Odśwież po wygenerowaniu ruchu.",
"refresh": "Odśwież",
"eventDetails": "Szczegóły zdarzenia",
"closeDetails": "Zamknij szczegóły",
"processDetail": "Bufor jest ulotny i ograniczony do 500 wpisów.",
"cardTitle": "Ostatnie zdarzenia",
"filterErrorId": "ID błędu"
},
"backups": {
"title": "Kopie zapasowe",
"subtitle": "Kopie kont w bazie danych tego serwera, do przywrócenia jednego konta na tym serwerze.",
"description": "Każde konto ma jedną cotygodniową kopię, zastępowaną w każdą niedzielę, a do tego kopie przesłane tutaj i kopię wykonaną przed „Usuń wszystkie dane”. Kopia przywraca istniejące konto na tym serwerze. Nie odtworzy utraconego serwera: do tego potrzebny jest zrzut bazy danych i klucze szyfrowania. Rozmiary dotyczą zaszyfrowanej kopii. Pobieranie odszyfrowuje ją dla administratora, który o nią prosi; szyfrogram zostaje w bazie danych.",
"runNow": "Utwórz kopię teraz",
"runEnqueued": "Zadanie kopii zapasowej dodano do kolejki",
"runFailed": "Nie udało się dodać kopii do kolejki",
"loading": "Ładowanie kopii zapasowych...",
"loadError": "Nie udało się załadować kopii zapasowych.",
"emptyTitle": "Brak kopii zapasowych",
"emptyDescription": "Kopie zapasowe wykonują się automatycznie w każdą niedzielę o 03:00. Możesz też uruchomić jedną teraz, aby utworzyć pierwszą migawkę.",
"colUser": "Użytkownik",
"colType": "Typ",
"typeWeeklyAuto": "Cotygodniowa kopia konta",
"typeManual": "Ręcznie",
"colSize": "Rozmiar",
"colCreatedAt": "Ostatnia migawka",
"colActions": "Akcje",
"scheduleStaleTitle": "Cotygodniowa kopia zapasowa przestała powstawać",
"scheduleStaleDescription": "Najnowsza zaplanowana kopia ma {days} dni. Działające cotygodniowe uruchomienie nigdy nie zostawia kopii starszej niż {threshold} dni.",
"scheduleFailedTitle": "Ostatnie zaplanowane uruchomienie kopii zapasowej nie powiodło się",
"scheduleFailedDescription": "{when}: {reason}",
"scheduleFailedNoReason": "nie zapisano przyczyny",
"scheduleRemedy": "Uruchom kopię teraz i sprawdź, czy pojawi się nowy wiersz. Jeśli znowu się nie powiedzie, log workera wskaże konto, na którym się zatrzymał.",
"activity": {
"running": "Trwa od {when}.",
"interruptedTitle": "Przebieg przerwał się w połowie i nie wrócił",
"interruptedAccount": "{username}: rozpoczęto {when}, nigdy nie zakończono",
"interruptedRemedy": "Najpewniej aplikacja uruchomiła się ponownie albo zabrakło jej pamięci podczas zapisu tej kopii. Następny przebieg weźmie te konta na końcu, aby wszystkie pozostałe dostały kopię wcześniej. Jeśli to się powtórzy, przydziel kontenerowi więcej pamięci."
},
"download": "Pobierz",
"downloadAria": "Pobierz kopię zapasową dla {username}",
"downloadFailed": "Pobieranie nie powiodło się",
"downloadStarted": "Rozpoczęto pobieranie",
"uploadTitle": "Prześlij kopię zapasową",
"uploadDescription": "Sprawdza kopię konta i zapisuje ją obok kopii tego serwera. Kopia, której konta nie ma już na tym serwerze, może trafić do innego konta. Przywracanie to osobny krok.",
"uploadButton": "Prześlij plik",
"uploadHelp": "Kopia zapasowa HealthLog w formacie .json lub .json.gz. Plik jest kompresowany przed wysłaniem; po kompresji może mieć do 512 MB.",
"uploadSuccess": "Przesłano kopię zapasową ({count} rekordów)",
"uploadFailed": "Przesyłanie nie powiodło się",
"restore": "Przywróć",
"restoreAria": "Przywróć z kopii zapasowej dla {username}",
"restoreTitle": "Przywróć z kopii zapasowej",
"restoreDescription": "Spowoduje to zastąpienie WSZYSTKICH bieżących danych {username} migawką z {when}. Istniejące pomiary, leki, zdarzenia przyjęcia, wpisy nastroju, kanały powiadomień, subskrypcje push i zakolejkowane usunięcia Telegram zostaną usunięte.",
"restoreInstanceSettingsLabel": "Przywróć też ustawienia instancji",
"restoreInstanceSettingsHint": "Rejestracja, wymóg MFA, domyślny język, dostępność modułów, konfiguracja powiadomień i AI: brane z migawki i stosowane do wszystkich w tej instalacji. Zostaw niezaznaczone, aby przywrócić tylko to konto.",
"restorePromptLabel": "Wpisz RESTORE, aby kontynuować",
"previewTitle": "Zawartość kopii",
"previewLoading": "Odczytywanie zawartości…",
"previewUnavailable": "Nie udało się odczytać zawartości, ale przywracanie jest nadal możliwe.",
"previewStillReading": "Ta kopia powstała we wcześniejszej wersji, więc jej zawartość jest odczytywana w całości, co przy dużych danych chwilę trwa. Otwórz to okno ponownie za kilka minut, aby ją zobaczyć. Przywracanie od tego nie zależy.",
"previewEmpty": "Plik nie zawiera rekordów.",
"previewOther": "Inne rekordy",
"previewMeasurements": "Pomiary",
"previewMedications": "Leki i dawki",
"previewMood": "Wpisy nastroju",
"previewLabs": "Wyniki badań",
"previewDocuments": "Dokumenty",
"previewWorkouts": "Treningi",
"previewCycles": "Dane cyklu",
"previewVisits": "Wizyty lekarskie",
"previewVaccinations": "Szczepienia",
"previewReminders": "Przypomnienia profilaktyczne",
"previewCustomMetrics": "Własne metryki",
"previewHealthScores": "Historia wyniku",
"restoreConfirm": "Przywróć teraz",
"restoreInProgress": "Przywracanie...",
"restoreSuccess": "Przywracanie zakończone",
"restoreFailed": "Przywracanie nie powiodło się",
"restoreSkippedToast": "Przywracanie zakończone, {links} powiązań objawów nie udało się odtworzyć",
"restoreSkippedTitle": "{links} powiązań nie zostało przywróconych",
"restoreSkippedDescription": "Plik odwołuje się do wpisów, których ta instalacja nie zna. Wszystko pozostałe zostało przywrócone. Ta sama lista znajduje się w dzienniku audytu.",
"restoreSkippedLinks": "{count} powiązań",
"restoreSkippedCycleSymptom": "Objaw cyklu",
"restoreSkippedIllnessSymptom": "Objaw choroby",
"restoreSkippedMoodFactor": "Czynnik nastroju",
"restoreSkippedMoodTag": "Tag nastroju",
"restoreSkippedVisitReference": "Odwołanie wizyty",
"restoreSkippedVaccinationReference": "Odwołanie szczepienia",
"restoreSkippedCheckupClosure": "Zamknięcie badania",
"restoreSkippedReminderReference": "Odwołanie do przypomnienia",
"restoreSkippedCoachAttachment": "Powiązanie dokumentu z Coachem",
"restoreSkippedCoachReference": "Odwołanie Coacha",
"restoreSkippedDocumentConditionLink": "Przypisanie dokumentu",
"restoreSkippedRelationLink": "Powiązanie między wpisami",
"restoreSkippedExtractedFact": "Fakt z dokumentu",
"restoreSkippedFactCommitment": "Zapis faktu",
"docsLink": "Dokumentacja",
"restoreSkippedPersonalRecordReference": "Pochodzenie rekordu osobistego",
"restoreSkippedEcgReference": "Pochodzenie zapisu EKG",
"restoreSkippedMedicationTarget": "Analit docelowy leku",
"restoreSkippedScheduleRevisionLink": "Następstwo okresów schematu",
"restoreSkippedAccountSetting": "Ustawienie konta",
"restoreMissingTitle": "Przywracanie odrzucone: plik jest niekompletny",
"restoreMissingDescription": "Manifest pliku mówi, że zawiera on poniższą sekcję, a jej nie zawiera. Nic nie zostało zmienione: przywracanie zastępuje całą klasę rekordów, więc brakująca sekcja by ją opróżniła.",
"restoreMissingRemedy": "Użyj jednej z kopii konta z tego serwera lub kopii spoza serwera albo wyeksportuj konto ponownie i prześlij nowy plik. Sekcja, którą manifest deklaruje jako pominiętą, to co innego i przywraca się normalnie.",
"restoreMissingDocuments": "Dokumenty",
"restoreMissingWorkouts": "Treningi",
"restoreMissingMentalHealth": "Kwestionariusze zdrowia psychicznego",
"restoreMissingConsent": "Potwierdzenia zgody",
"offhost": {
"title": "Kopie poza hostem",
"description": "Kiedy ten host ostatnio umieścił zaszyfrowaną kopię każdego konta w Twoim buckecie.",
"loadError": "Nie udało się wczytać stanu poza hostem.",
"notConfiguredTitle": "Kopia poza hostem nie jest skonfigurowana",
"notConfiguredDescription": "Nie ustawiono ani bucketu, ani klucza, więc żadna kopia zapasowa nie opuszcza tego hosta. Ustaw BACKUP_S3_ENDPOINT, BACKUP_S3_BUCKET, BACKUP_S3_ACCESS_KEY, BACKUP_S3_SECRET_KEY i BACKUP_ENCRYPTION_KEY, aby włączyć nocne wysyłanie.",
"stateFresh": "Świeża",
"stateDue": "Zaległa",
"stateStale": "Przeterminowana",
"stateNever": "Nigdy",
"stateUnknown": "Brak wpisu",
"neverDetail": "Dla tego konta nic nie dotarło. Ostatnie sprawdzenie {when}.",
"unknownDetail": "Żaden nocny przebieg nie zarejestrował jeszcze tego konta.",
"age": "{hours} h temu",
"scheduleNote": "Wysyłka działa co {hours} h. Świeża znaczy w obrębie jednego przebiegu, zaległa że jeden nic nie dał, przeterminowana że dwa.",
"lifecycleConfigured": "Bucket usuwa kopie po {days} dniach zgodnie z własną regułą cyklu życia.",
"lifecycleMissing": "Bucket nie ma reguły cyklu życia, więc każda nocna kopia zostaje na zawsze. Dodaj regułę, która usuwa obiekty po BACKUP_RETENTION_DAYS.",
"lifecycleUnknown": "Nie udało się odczytać, czy bucket usuwa stare kopie: poświadczenia nie mogą odczytać jego reguły cyklu życia. Sprawdź, czy reguła usuwa obiekty po BACKUP_RETENTION_DAYS.",
"pendingDeletions": "Kopie {count} usuniętych lub wyczyszczonych kont są jeszcze w buckecie i są usuwane.",
"pendingDeletionsFailing": "Kopie {count} usuniętych lub wyczyszczonych kont są jeszcze w buckecie, bo odmówił ich usunięcia ({error}). Nadaj poświadczeniom uprawnienie DeleteObject; usuwanie jest ponawiane co noc."
},
"restoreStarted": "Przywracanie rozpoczęte. Postęp widać nad listą.",
"restoreActive": "Dla tego konta trwa już przywracanie. Poczekaj, aż się skończy.",
"restoreJobQueuedTitle": "Przywracanie {username} czeka na start",
"restoreJobQueuedNote": "Zacznie się, gdy tylko proces w tle je przejmie.",
"restoreJobWaitingBackupNote": "Czeka na kopię zapasową, która właśnie działa na serwerze. Przywracanie nigdy nie działa równolegle z kopią i zaczyna się mniej więcej minutę po jej zakończeniu.",
"restoreJobWaitingBusyNote": "Czeka na zakończenie dużego zadania na serwerze, na przykład importu albo nocnego przebiegu. Zacznie się mniej więcej minutę później.",
"restoreJobQueuedSince": "W kolejce od {when}.",
"restoreJobRunningTitle": "Przywracanie {username}",
"restoreJobRunningNote": "Konto pokazuje dotychczasowe dane, dopóki przywracanie się nie zakończy. Możesz opuścić tę stronę; przywracanie trwa dalej na serwerze.",
"restoreJobResumed": "Uruchomione ponownie po restarcie serwera.",
"restoreJobPhaseValidating": "Sprawdzanie pliku kopii: sprawdzono {checked} pomiarów",
"restoreJobPhaseClearing": "Usuwanie bieżących danych konta",
"restoreJobPhaseMeasurements": "Zapisywanie pomiarów: {done} z {total}",
"restoreJobPhaseSections": "Zapisywanie pozostałych wpisów: {done} z {total} sekcji",
"restoreJobPhaseRebuilding": "Przeliczanie wykresów i podsumowań",
"restoreJobSucceededTitle": "Przywracanie {username} zakończone",
"restoreJobSucceededDescription": "Przywrócono {count} wpisów. Zakończono {when}.",
"restoreJobFailedTitle": "Przywracanie {username} nie zostało ukończone",
"restoreJobFailedKept": "Nic nie zostało zmienione. Kopia zostaje, więc możesz ponownie uruchomić przywracanie z jej wiersza bez ponownego wgrywania.",
"restoreFailureNotFound": "Kopia została usunięta, zanim przywracanie zdążyło ją odczytać.",
"restoreFailureChanged": "Kopia została zastąpiona nowszą, gdy przywracanie czekało. Sprawdź nową kopię, a potem uruchom przywracanie ponownie.",
"restoreFailureUndecryptable": "Nie udało się odszyfrować kopii. Klucz, którym ją zapisano, nie jest już skonfigurowany albo zapisana kopia została zmieniona.",
"restoreFailureSchema": "Plik nie jest prawidłową kopią HealthLog.",
"restoreFailureVersion": "Kopię zapisała nowsza wersja HealthLog. Najpierw zaktualizuj ten serwer.",
"restoreFailureOwnerMismatch": "Plik w kopii należy do innego konta niż wiersz kopii.",
"restoreFailureOwnerMissing": "Konto, do którego należy ta kopia, już nie istnieje.",
"restoreFailureSectionMissing": "Plik jest niekompletny: jego manifest wymienia sekcję, której nie zawiera.",
"restoreFailureDocument": "Plik zawiera dokumenty bez ich treści, jak przenośny eksport. Użyj zamiast tego jednej z kopii konta z tego serwera lub kopii spoza serwera.",
"restoreFailureTimeBudget": "Ta kopia jest za duża, by przywrócić ją w limicie czasu procesu w tle.",
"restoreFailureTransaction": "Baza danych odrzuciła przywracanie w trakcie, więc wszystko wycofano. Dziennik serwera podaje błąd.",
"restoreFailureCauseTimeout": "Przywracanie trwało dłużej, niż pozwala baza danych, więc wszystko wycofano. Jeśli serwer bazy był obciążony, uruchom je ponownie, gdy będzie spokojniej. Dziennik serwera podaje krok.",
"restoreFailureCauseLock": "Przywracanie czekało na rekordy, które zmieniał inny proces, więc wszystko wycofano. Uruchom przywracanie ponownie.",
"restoreFailureCauseConstraint": "Baza danych odrzuciła rekord z kopii zapasowej, więc wszystko wycofano. Dziennik serwera podaje tabelę i regułę.",
"restoreFailureCauseStorage": "W trakcie przywracania bazie danych zabrakło miejsca na dysku lub pamięci, więc wszystko wycofano. Zwolnij miejsce na serwerze bazy, a potem uruchom przywracanie ponownie.",
"restoreFailureCauseConnection": "W trakcie przywracania zerwało się połączenie z bazą danych, więc wszystko wycofano. Sprawdź, czy baza działa, a potem uruchom przywracanie ponownie.",
"restoreFailureInterrupted": "Przywracanie zatrzymało się przy restarcie serwera i zostało wycofane. Jeśli zatrzyma się znowu, serwerowi prawdopodobnie brakuje pamięci.",
"restoreFailureNotStarted": "Proces w tle nie przejął przywracania. Sprawdź, czy działa.",
"restoreFailureEnqueue": "Nie udało się przekazać przywracania do procesu w tle. Sprawdź, czy działa.",
"restoreFailureAfterCommit": "Dane zostały przywrócone, ale krok po nich się nie powiódł. Wykresy mogą nadrobić to dopiero przy następnym nocnym przebiegu.",
"restoreFailureUnexpected": "Przywracanie zatrzymało się na nieoczekiwanym błędzie i zostało wycofane. Dziennik serwera podaje błąd.",
"restoreFailureKeyMissing": "Kopia wymaga klucza szyfrowania {keys}, którym ten serwer nie może jej otworzyć. Dodaj klucz z powrotem do ENCRYPTION_KEYS, uruchom ponownie i rozpocznij przywracanie jeszcze raz.",
"restoreFailureForeignReference": "Plik wskazuje na wpisy należące do innego konta. Nic nie zostało zapisane.",
"restoreFailureRowsElsewhere": "Rekordy z tego pliku są już na innym koncie na tym serwerze: ten sam plik został tam wcześniej przywrócony. Plik można przywrócić tylko na jedno konto. Nic nie zostało zapisane.",
"previewKeyMissing": "Tej kopii nie da się przywrócić na tym serwerze: wymaga klucza szyfrowania {keys}. Najpierw dodaj klucz z powrotem do ENCRYPTION_KEYS i uruchom ponownie.",
"restoreSkippedSymptomEpisodeReference": "Wpis objawu powiązany z chorobą, której nie ma w pliku (zachowany bez powiązania)",
"restoreSkippedCycleCiphertext": "Notatka lub etykieta cyklu zaszyfrowana kluczem, którego ten serwer nie ma (dzień lub objaw zachowany bez niej)",
"restoreSkippedMoodLabelCiphertext": "Nazwa tagu lub grupy nastroju zaszyfrowana kluczem, którego ten serwer nie ma (zachowana bez nazwy)",
"restoreSkippedVisitCiphertext": "Tekst wizyty lub lekarza zaszyfrowany kluczem, którego ten serwer nie ma (zachowany bez niego)",
"restoreSkippedVaccinationCiphertext": "Notatka szczepienia zaszyfrowana kluczem, którego ten serwer nie ma (dawka zachowana bez niej)",
"restoreSkippedEnvironmentLocationCiphertext": "Lokalizacja okresu lub dnia środowiskowego zaszyfrowana kluczem, którego ten serwer nie ma (zachowana w postaci zaszyfrowanej, te dni nie są odświeżane)",
"typePreWipe": "Przed usunięciem wszystkich danych",
"retentionNote": "Cotygodniowa kopia jest zastępowana w każdą niedzielę. Kopia wykonana przed „Usuń wszystkie dane” jest usuwana po {days} dniach. Przesłane kopie zostają, dopóki ich konto nie zostanie usunięte.",
"retentionNoteNoGrace": "Cotygodniowa kopia jest zastępowana w każdą niedzielę. Przesłane kopie zostają, dopóki ich konto nie zostanie usunięte.",
"database": {
"title": "Zrzut bazy danych",
"lastGood": "Ostatni poprawny zrzut {when}, {size}, {where}.",
"whereBoth": "przechowywany na tym serwerze i poza nim",
"whereLocal": "przechowywany na tym serwerze",
"whereOffhost": "tylko poza serwerem",
"none": "Nie ma jeszcze zrzutu bazy danych. Pierwszy powstanie tej nocy.",
"failedTitle": "Ostatni zrzut bazy danych się nie powiódł",
"failedDescription": "{when}: {reason}",
"disabled": "Zrzuty bazy danych są wyłączone (DB_BACKUP_ENABLED=false). Zrób kopię bazy danych w inny sposób.",
"noDirectoryOffhost": "Ten serwer nie może zapisywać w {dir}, więc zrzuty trafiają tylko poza serwer i żaden nie zostaje tutaj. Podłącz wolumin kopii.",
"noDirectory": "Ten serwer nie może zapisywać w {dir} i nie ustawiono magazynu zewnętrznego, więc nie da się wykonać zrzutu bazy. Podłącz wolumin kopii.",
"retentionLocal": "Usunięte konta pozostają w zrzutach, dopóki te nie wygasną: na tym serwerze zostaje {nights} najnowszych zrzutów nocnych, a zrzut sprzed ostatniej aktualizacji zostaje do następnej.",
"retentionOffhost": "Reguła cyklu życia bucketu usuwa kopie zewnętrzne po {days} dniach.",
"retentionOffhostMissing": "Żadna reguła cyklu życia bucketu nie obejmuje database/, więc zrzuty tam, wraz z usuniętymi kontami w nich, nigdy nie są usuwane. Dodaj regułę dla tego prefiksu.",
"notPersistentOffhost": "{dir} nie leży na trwałym nośniku (jest wewnątrz kontenera zamiast na podłączonym woluminie albo w pamięci), więc zapisany tam zrzut przepadnie przy następnej aktualizacji. Zrzuty trafiają tylko poza serwer: żaden nie zostaje tutaj i żaden nie powstaje przed migracją. Podłącz wolumin kopii.",
"notPersistent": "{dir} nie leży na trwałym nośniku (jest wewnątrz kontenera zamiast na podłączonym woluminie albo w pamięci), a zewnętrzny bucket nie jest ustawiony, więc żaden zrzut bazy nie jest nigdzie przechowywany. Podłącz wolumin kopii.",
"offhostFailedTitle": "Najnowszy zrzut bazy danych nie trafił do zewnętrznego bucketu",
"offhostLastUpload": "Najnowszy zrzut w buckecie pochodzi z {when}.",
"offhostNeverUploaded": "Do bucketu nie trafił jeszcze żaden zrzut bazy danych."
},
"restorePreWipeLimits": "Tę kopię wykonano przed usunięciem danych konta, a jej przywrócenie cofa to usunięcie na tyle, na ile pozwala kopia: to, co konto dodało od tego czasu, zostaje zastąpione, a połączenia integracji, udostępnienia, dostęp opiekunów i linki udostępniania nie wracają.",
"target": {
"title": "Przywróć do innego konta",
"description": "{file} należy do konta, którego nie ma już na tym serwerze. Wybierz konto, do którego trafią jego rekordy. Przywracanie zastępuje rekordy konta, więc przyjąć je może tylko konto bez rekordów. Plik zostanie przesłany jeszcze raz.",
"choiceLabel": "Dokąd trafią rekordy",
"newAccount": "Nowe konto",
"existingAccount": "Istniejące konto",
"usernameLabel": "Nazwa użytkownika nowego konta",
"usernameInvalid": "Od 3 do 30 liter, cyfr, _ lub -, bez „managed-” na początku.",
"newAccountHint": "Konto zostanie utworzone bez hasła i bez adresu e-mail. Zanim je przekażesz, ustaw jego pierwsze hasło przyciskiem Zresetuj hasło w sekcji Użytkownicy.",
"accountLabel": "Konto",
"accountPlaceholder": "Wybierz konto",
"checking": "Sprawdzanie konta…",
"eligible": "To konto nie ma jeszcze rekordów i może przyjąć kopię.",
"confirmLabel": "Wpisz {username}, aby potwierdzić",
"submit": "Prześlij do tego konta",
"submitting": "Przesyłanie…",
"success": "Kopia zapisana dla {username} ({count} rekordów). Przywróć ją z jej wiersza.",
"failureHoldsRecords": "To konto ma już rekordy. Przywracanie zastępuje rekordy zamiast je uzupełniać, więc wybierz konto bez rekordów albo utwórz nowe.",
"failureManagedProfile": "To konto jest profilem zarządzanym. Prowadzą je osoby opiekujące się nim, więc kopia nie może do niego trafić.",
"failurePendingDeletion": "To konto czeka na usunięcie. Najpierw cofnij usunięcie albo wybierz inne konto.",
"failureAdminAccount": "To jest konto administratora. Nie można w nim umieścić rekordów innej osoby, więc wybierz zwykłe konto albo utwórz nowe.",
"failureNotFound": "To konto już nie istnieje.",
"failureUnconfirmed": "Wpisz dokładnie nazwę użytkownika konta, aby potwierdzić.",
"failureUsernameTaken": "Ta nazwa użytkownika jest już zajęta.",
"failureOwnerExists": "Konto, do którego należy ten plik, jest na tym serwerze, a plik przywraca się do tego konta. Prześlij go ponownie bez wybierania konta."
}
},
"danger-zone": {
"title": "Strefa zagrożenia",
"subtitle": "Destrukcyjne operacje obejmujące cały system."
},
"about": {
"title": "O programie",
"subtitle": "Wersja, licencja i stan aktualizacji."
},
"module-availability": {
"title": "Moduły",
"subtitle": "Włącz lub wyłącz moduły dla wszystkich kont na tym serwerze."
},
"encryption": {
"title": "Szyfrowanie",
"subtitle": "Pokrycie szyfrowaniem i status rotacji kluczy dla danych w spoczynku.",
"loadError": "Nie udało się wczytać statusu szyfrowania.",
"coverageTitle": "Pokrycie",
"coverageDescription": "Ile zaszyfrowanych wierszy przypada na każdy identyfikator klucza.",
"activeKeyId": "Identyfikator aktywnego klucza",
"configuredKeys": "Skonfigurowane klucze",
"totalRows": "Zaszyfrowane wiersze",
"staleRows": "Wiersze poza aktywnym kluczem",
"safeToDropLegacy": "Można bezpiecznie usunąć stary klucz",
"rotationIncomplete": "Pozostało {count} wierszy do rotacji",
"rotationTitle": "Rotacja kluczy",
"rotationDescription": "Ponownie szyfruje każdą zaszyfrowaną kolumnę aktywnym kluczem.",
"rotationState": "Status",
"lastRun": "Ostatni przebieg: sprawdzono {scanned}, zrotowano {rotated}, błędy {errors}.",
"rotateNow": "Rotuj teraz",
"rotateConfirmTitle": "Ponownie zaszyfrować cały rekord?",
"rotateConfirmDescription": "Ponownie szyfruje każdą zaszyfrowaną kolumnę aktywnym kluczem. Nigdy nie dodaje ani nie usuwa klucza i można go bezpiecznie uruchomić ponownie. Na dużych kontach może to chwilę potrwać.",
"cancel": "Anuluj",
"rotateConfirm": "Rozpocznij rotację",
"rotateEnqueued": "Rotacja rozpoczęta.",
"rotateFailed": "Nie udało się rozpocząć rotacji.",
"stepUpNeeded": "Wymagany jest świeży drugi składnik. Potwierdź drugi składnik lub użyj narzędzia wiersza poleceń, jeśli nie masz skonfigurowanego żadnego.",
"cliNote": "Do tego przycisku wymagany jest drugi składnik. Bez niego uruchom scripts/rotate-encryption-key.ts z kopii kodu źródłowego tej wersji; kroki opisuje docs/ops/encryption-key-rotation.md.",
"columnsTitle": "Pokrycie wg kolumn",
"columnsDescription": "Każda zaszyfrowana kolumna z liczbą wierszy na aktywnym kluczu względem starszych kluczy.",
"colColumn": "Kolumna",
"colTotal": "Razem",
"colActive": "Na aktywnym kluczu",
"colStale": "Przestarzałe",
"state": {
"idle": "Bezczynny",
"running": "W toku",
"completed": "Zakończono",
"failed": "Niepowodzenie"
},
"coverageDetail": "Pokazywane są tylko identyfikatory kluczy i liczby, nigdy materiał klucza.",
"backupsTitle": "Klucze, których kopie nadal potrzebują",
"backupsDescription": "Wycofany klucz jest potrzebny, dopóki którakolwiek kopia poniżej go wymienia.",
"backupsStoredLine": "Klucz {key}: {count} zapisanych kopii, najstarsza z {when}",
"backupsUnrecordedLine": "{count} zapisanych kopii powstało, zanim kopie zaczęły zapisywać swoje klucze (najstarsza {when}). Mogą potrzebować każdego klucza, który wtedy istniał: zachowaj wszystkie stare klucze, dopóki nie zostaną zastąpione lub usunięte.",
"backupsOffhostLine": "Klucz {key}: ostatnia kopia zewnętrzna, która go potrzebuje, trafiła do bucketu {when}; potrzebny tam do {until}",
"backupsOffhostLineUnknown": "Klucz {key}: ostatnia kopia zewnętrzna, która go potrzebuje, trafiła do bucketu {when}. Nie wiadomo, jak długo bucket przechowuje kopie, więc zachowaj klucz, dopóki nie masz pewności, że tej kopii już nie ma.",
"backupsNone": "Żadna kopia nie zapisała jeszcze kluczy, których potrzebuje.",
"backupsStillNeed": "Wszystkie wiersze są zrotowane, ale kopie nadal potrzebują {keys}",
"backupsUnrecordedBadge": "Wszystkie wiersze są zrotowane, ale starsze kopie mogą nadal potrzebować wycofanego klucza",
"backupsDetail": "Rotacja ponownie szyfruje każdy wiersz, ale kopia zachowuje klucz, którym zapisano jej zawartość, a jej przywrócenie wymaga tego klucza. Trzymaj wycofany klucz w ENCRYPTION_KEYS, dopóki widnieje poniżej.",
"columnsShow": "Pokaż tabelę (z wierszami: {count})",
"columnsHide": "Ukryj tabelę",
"columnsShowAll": "Pokaż wszystkie kolumny ({count})",
"columnsShowWithRows": "Tylko kolumny z wierszami",
"columnsNoneWithRows": "Żadna zaszyfrowana kolumna nie zawiera jeszcze wierszy.",
"backupsDumpLocalLine": "Klucz {key}: {count} zrzutów bazy danych na tym serwerze zapisano pod nim; jest potrzebny, dopóki retencja ich nie usunie.",
"backupsDumpOffhostLine": "Klucz {key}: najnowszy zrzut bazy danych zapisany pod nim trafił do bucketu {when}; potrzebny tam do {until}",
"backupsDumpOffhostLineUnknown": "Klucz {key}: najnowszy zrzut bazy danych zapisany pod nim trafił do bucketu {when}. Nie wiadomo, jak długo bucket przechowuje database/, więc zachowaj klucz, dopóki nie masz pewności, że tego zrzutu już nie ma."
},
"maintenance": {
"title": "Konserwacja tabeli pomiarów",
"description": "Zwalnia miejsce zajmowane przez stare pozostałości synchronizacji, gdy czyszczenie już się zakończy.",
"body": "Wykonuje vacuum tabeli pomiarów, a potem odbudowuje jej indeksy, jeden po drugim. Odczyt i zapis działają w tym czasie dalej. Wybierz spokojną godzinę i zapewnij wolne miejsce na dysku na jeszcze jedną kopię największego indeksu.",
"tableSize": "Tabela z indeksami",
"indexSize": "Indeksy",
"loading": "Sprawdzanie stanu konserwacji…",
"loadError": "Nie udało się odczytać stanu konserwacji.",
"unavailable": "Nie jest podłączony żaden proces w tle, więc konserwacja nie może tu działać.",
"purgePending": "Czyszczenie starych pozostałości synchronizacji wciąż trwa. Konserwacja może się rozpocząć, gdy się zakończy.",
"state": {
"idle": "Jeszcze nie uruchomiona.",
"queued": "Czeka na proces w tle.",
"running": "Trwa od {since}. Na dużej instancji może to chwilę potrwać.",
"completed": "Zakończona {at}.",
"refusedPurge": "Nie rozpoczęła się, bo czyszczenie wciąż trwało. Uruchom ją ponownie, gdy czyszczenie się zakończy.",
"alreadyRunning": "Nie rozpoczęła się, bo inny przebieg już działał.",
"failed": "Zatrzymana {at}. Dziennik aplikacji podaje krok, a runbook wyjaśnia, co sprawdzić."
},
"start": "Uruchom konserwację",
"confirmTitle": "Uruchomić konserwację teraz?",
"confirmBody": "Działa w tle, krok po kroku, i może chwilę potrwać. Jeśli dziś nie zrobiono jeszcze kopii zapasowej, najpierw ją zrób.",
"confirm": "Uruchom",
"cancel": "Anuluj",
"started": "Konserwacja uruchomiona.",
"alreadyQueued": "Konserwacja jest już w kolejce lub trwa.",
"startFailed": "Nie udało się uruchomić konserwacji."
},
"pulseDayMean": {
"title": "Dzienna średnia tętna",
"description": "Jak godziny z niewieloma pomiarami liczą się do tętna danego dnia.",
"body": "Dotąd każda godzina z pomiarem liczy się tak samo, więc jeden przypadkowy pomiar może przesunąć cały dzień. Metoda ważona sprawia, że godzina liczy się w pełni od trzech pomiarów, a pojedynczy pomiar w jednej trzeciej. Najpierw uruchom próbę, aby zobaczyć, ile dni by się zmieniło. Zastosowanie przelicza zapisane dni tętna w tle.",
"method": {
"hourly": "Każda godzina tak samo",
"weighted": "Rzadkie godziny ważone"
},
"loading": "Sprawdzanie dziennej średniej tętna…",
"loadError": "Nie udało się odczytać stanu dziennej średniej tętna.",
"state": {
"idle": "Jeszcze nie było próby.",
"queued": "Próba czeka na proces w tle.",
"running": "Próba trwa.",
"done": "Próba zakończona {at}.",
"failed": "Próba została przerwana. Dziennik aplikacji podaje przyczynę; uruchom ją ponownie."
},
"result": {
"days": "Porównane dni",
"changed": "Dni ze zmianą powyżej 1 bpm",
"max": "Największa zmiana",
"maxValue": "{value} bpm",
"bucket": "{range} bpm",
"account": "Konto {account}",
"accountDays": "Zmienia się {changed} z {days} dni"
},
"appliedAt": "Metoda ważona zastosowana {at}.",
"dryRun": "Próba",
"apply": "Zastosuj",
"confirmTitle": "Zastosować ważoną dzienną średnią tętna?",
"confirmBody": "Od tej chwili dni tętna wszystkich kont są liczone z ważonymi rzadkimi godzinami. Zapisane dni tętna są przeliczane w tle, co na dużej instancji może chwilę potrwać.",
"confirm": "Zastosuj",
"cancel": "Anuluj",
"dryRunStarted": "Próba uruchomiona.",
"applied": "Metoda ważona zastosowana. Dni tętna są przeliczane.",
"appliedNoRebuild": "Metoda ważona zastosowana. Inny przebieg wciąż trwa; zastosuj ponownie, gdy się zakończy, aby przeliczyć dni tętna.",
"error": {
"busy": "Próba lub przeliczanie wciąż trwa. Spróbuj ponownie, gdy się zakończy.",
"dryRunRequired": "Najpierw uruchom próbę. Do zastosowania potrzebna jest próba zakończona w ciągu ostatnich siedmiu dni.",
"generic": "Żądanie nie zostało zrealizowane."
},
"rebuild": {
"queued": "Ponowne przeliczenie czeka na proces w tle.",
"running": "Dni pulsu są przeliczane.",
"done": "Dni pulsu przeliczone {at} dla kont: {accounts}.",
"failed": "Przeliczanie zostało przerwane. Przyczynę podaje log aplikacji; uruchom je ponownie."
},
"rebuildAgain": "Przelicz ponownie",
"rebuildStarted": "Przeliczanie rozpoczęte."
}
},
"carrier": "Operator",
"mfaRequired": "Wymagaj drugiego składnika",
"mfaRequiredDescription": "Konta bez drugiego składnika są po logowaniu w przeglądarce kierowane do jego konfiguracji; dostęp przez API i natywny (Bearer) pozostaje otwarty.",
"mfaEnforcedOn": "MFA wł.",
"mfaEnforcedOff": "MFA wył.",
"mfaEnforcedOnHint": "Ten użytkownik musi używać drugiego składnika. Kliknij, aby przestać go wymagać.",
"mfaEnforcedOffHint": "Wymagaj drugiego składnika dla tego użytkownika.",
"copyIp": "Kopiuj adres IP",
"ipCopied": "Skopiowano adres IP",
"copyFailed": "Nie udało się skopiować.",
"documentMaxFile": "Limit przesyłania dokumentów",
"documentMaxFileDescription": "Maksymalny rozmiar pliku w archiwum dokumentów (1–100 MB).",
"documentQuota": "Limit miejsca na dokumenty",
"documentQuotaDescription": "Domyślne miejsce na dokumenty na konto (0,1–1024 GB).",
"userDocumentQuota": "Indywidualny limit dokumentów",
"userDocumentQuotaDefault": "Domyślny",
"userDocumentQuotaHint": "Pozostaw puste, aby użyć domyślnego limitu instancji.",
"centralCodex": {
"title": "Wspólne połączenie AI",
"description": "Podłącz jedno zalogowane konto ChatGPT, które każdy użytkownik tego serwera może włączyć dla funkcji AI.",
"honesty": "To jedno wspólne, zalogowane konto AI, a nie klucz API. Każdy, kto je włączy, wysyła przez nie zapytania, więc godzinowe i tygodniowe limity konta są dzielone między nimi, a te same limity zasilają już Coacha. Dostawcy subskrypcyjni mogą wykorzystywać treść do ulepszania swoich modeli i nie obejmuje tego żadna umowa powierzenia przetwarzania danych, dlatego nigdy nie jest to opcja domyślna i pozostaje poniżej dostawców bez trenowania przy odczycie dokumentów. Podłącz tylko konto, które chcesz udostępniać w ten sposób.",
"statusConnected": "Połączono",
"statusDisconnected": "Nie połączono",
"statusExpired": "Wygasło",
"connectButton": "Podłącz konto ChatGPT",
"disconnectButton": "Rozłącz",
"disconnectTitle": "Odłączyć wspólne konto AI?",
"disconnectBody": "Wszyscy użytkownicy tego serwera korzystający ze wspólnego połączenia stracą funkcje AI, dopóki ktoś nie podłączy konta ponownie. Zapisanego logowania nie da się odzyskać.",
"disconnectConfirm": "Odłącz",
"connectedSince": "Połączono od {when}",
"connected": "Wspólne połączenie AI podłączone",
"disconnected": "Wspólne połączenie AI usunięte",
"error": "Coś poszło nie tak. Spróbuj ponownie"
},
"failingJobs": {
"title": "Zadania w tle",
"description": "Kolejki, których zadania poddały się po wyczerpaniu ponowień.",
"none": "W ciągu ostatnich {hours} godzin żadne zadanie nie zawiodło.",
"unavailable": "Brak kolejki zadań do odczytu: to wdrożenie działa bez workera w tle.",
"countOne": "{count} niepowodzenie",
"countFew": "{count} niepowodzenia",
"countOther": "{count} niepowodzeń",
"lastFailed": "Ostatnie niepowodzenie {when}"
},
"deleteAllDetail": "Konta użytkowników zostaną zachowane.",
"cardError": {
"title": "Nie udało się wyświetlić tej części strony",
"description": "Reszta strony działa; spróbuj ponownie lub odśwież, jeśli błąd się powtarza."
},
"keyMismatch": {
"title": "HealthLog nie może otworzyć swoich danych",
"body": "Klucz szyfrowania, z którym uruchomiono ten serwer, nie jest kluczem, którym zapisano jego bazę danych. Aby chronić Twoje dane, HealthLog niczego nie udostępnia, dopóki to nie zostanie naprawione.",
"fixTitle": "Jak to naprawić",
"fixRestore": "Przywróć oryginalny ENCRYPTION_KEY (lub wpis w ENCRYPTION_KEYS) w ustawieniach serwera.",
"fixDatabase": "Albo ustaw DATABASE_URL na bazę danych, która należy do tego klucza.",
"fixFresh": "Albo zacznij od nowa z pustą bazą. Stare dane i ich kopie można odczytać tylko starym kluczem.",
"restartNote": "Po zmianie uruchom HealthLog ponownie.",
"lastResort": "Ostateczność, tylko jeśli masz pewność, że klucz jest właściwy, a żadna z trzech dróg nie pasuje: ustaw {setting} i uruchom ponownie. HealthLog będzie wtedy działać mimo to i tylko zapisze wynik w logu. To wyłącza kontrolę bezpieczeństwa: przy złym kluczu każda zaszyfrowana wartość zawiedzie, a nowe dane zostaną zapisane tym kluczem.",
"codes": "Dla administratora: żądania API odpowiadają 503 z kodem błędu {code}, a /api/health podaje powód {reason}."
},
"loginOverviewCardTitle": "Zdarzenia logowania",
"userColumn": "Użytkownik",
"supportReport": {
"title": "Raport dla pomocy",
"description": "Podsumowanie tej instancji do zgłoszenia błędu, bez adresów e-mail, identyfikatorów i wartości.",
"body": "Konta pojawiają się jako „Account 1”, „Account 2” itd. Przeczytaj raport, zanim go udostępnisz.",
"copy": "Kopiuj",
"copied": "Skopiowano",
"download": "Pobierz",
"loadError": "Nie udało się utworzyć raportu dla pomocy."
},
"aiUsage": {
"title": "Poziomy użycia AI",
"description": "Najwyższy poziom, jaki mogą wybrać konta, i poziom, od którego zaczynają.",
"maxLabel": "Najwyższy poziom",
"defaultLabel": "Poziom domyślny",
"defaultAboveCeiling": "Poziom domyślny nie może być wyższy niż najwyższy poziom.",
"gapLabel": "Godziny między odświeżeniami kart po synchronizacji (Standardowy)",
"gapHint": "Pełne godziny od 1 do 48. Zostaw puste, aby użyć AI_SYNC_REGEN_GAP_HOURS, w przeciwnym razie 6. Obecnie obowiązuje: {hours} h."
},
"recoveryKit": {
"title": "Zestaw odzyskiwania",
"description": "Każdy klucz potrzebny do przywrócenia tego serwera, z ID i odciskiem.",
"intro": "Przechowuj kopię każdego z poniższych kluczy poza tym serwerem, na przykład w menedżerze haseł. Bez nich nie da się ponownie odczytać ani zrzutu bazy danych, ani kopii zapasowej, a HealthLog nie uruchomi się, jeśli brakuje potrzebnego mu klucza.",
"loading": "Wczytywanie zestawu odzyskiwania…",
"loadError": "Nie udało się wczytać zestawu odzyskiwania.",
"badgeDue": "Do zrobienia",
"badgeDone": "Zapisany",
"keyId": "ID",
"fingerprint": "Odcisk",
"noFingerprint": "Brak na tym serwerze",
"kind": {
"application": "Klucz aplikacji {id}",
"backup": "Klucz kopii poza hostem",
"backupPrevious": "Poprzedni klucz kopii poza hostem",
"token": "Klucz tokenów"
},
"need": {
"active": "Szyfruje nowe dane.",
"configured": "Znajduje się na tym serwerze.",
"storedCopies": "Potrzebny zapisanym kopiom: {count}.",
"offhostUntil": "Potrzebny kopiom poza hostem do {date}.",
"offhostUnknown": "Potrzebny kopiom poza hostem, dopóki bucket je przechowuje.",
"backupActive": "Pieczętuje każdą nową kopię poza hostem.",
"backupPrevious": "Otwiera kopie poza hostem zapisane przed ostatnią zmianą klucza.",
"token": "Podpisuje sesje, tokeny i linki udostępniania. Bez niego wszyscy zostaną wylogowani, ale żadne dane nie przepadną.",
"localDumps": "Potrzebny zrzutom bazy danych na tym serwerze: {count}.",
"offhostDumpsUntil": "Potrzebny zrzutom bazy danych poza hostem do {date}.",
"offhostDumpsUnknown": "Potrzebny zrzutom bazy danych poza hostem, dopóki bucket je przechowuje."
},
"source": "Ustawiony w {variable}.",
"status": {
"confirmed": "Zapisany",
"new": "Jeszcze niezapisany",
"notConfigured": "Brak na tym serwerze",
"unreadable": "Nieprawidłowy klucz"
},
"notConfiguredHint": "Kopia zapasowa nadal potrzebuje tego klucza, a ten serwer go nie ma. Te kopie zapasowe może odczytać tylko kopia klucza, którą przechowujesz gdzie indziej. Potwierdź zestaw, gdy będziesz mieć tę kopię.",
"unreadableHint": "Zmienna jest ustawiona, ale nie zawiera prawidłowego klucza. Popraw ją, zanim zaczniesz polegać na kopiach poza hostem.",
"fingerprintHint": "Odcisk to pierwsze 12 znaków skrótu SHA-256 klucza. Rozpoznaje klucz, nie ujawniając go, więc możesz porównać go ze swoją kopią.",
"whereTitle": "Gdzie ustawione są klucze",
"platform": {
"composeLabel": "Compose",
"composeWhere": "Klucze znajdują się w pliku .env obok docker-compose.yml: ENCRYPTION_KEY lub ENCRYPTION_KEYS, API_TOKEN_HMAC_KEY oraz, przy kopiach poza hostem, BACKUP_ENCRYPTION_KEY.",
"truenasLabel": "TrueNAS",
"truenasWhere": "Otwórz Apps, wybierz HealthLog i kliknij Edit. Klucze są w sekcji HealthLog Configuration; w aplikacji zainstalowanej przez YAML to ENCRYPTION_KEY, API_TOKEN_HMAC_KEY i BACKUP_ENCRYPTION_KEY w ustawieniach środowiska.",
"coolifyLabel": "Coolify",
"coolifyWhere": "Otwórz aplikację w Coolify i skopiuj ENCRYPTION_KEY, API_TOKEN_HMAC_KEY i BACKUP_ENCRYPTION_KEY z jej Environment Variables.",
"unraidLabel": "Unraid",
"unraidWhere": "Na karcie Docker edytuj kontener HealthLog i skopiuj ENCRYPTION_KEY, API_TOKEN_HMAC_KEY i BACKUP_ENCRYPTION_KEY z szablonu albo z pliku .env stosu Compose Manager.",
"portainerLabel": "Portainer",
"portainerWhere": "Otwórz stos HealthLog w Portainerze i skopiuj ENCRYPTION_KEY, API_TOKEN_HMAC_KEY i BACKUP_ENCRYPTION_KEY z jego zmiennych środowiskowych."
},
"restoreTitle": "Przywracanie tego serwera",
"restoreBody": "Zainstaluj HealthLog z tymi samymi kluczami, przywróć najnowszy zrzut bazy danych do pustej bazy, a potem uruchom aplikację. Przewodnik prowadzi przez każdy krok.",
"restoreLink": "Przewodnik odzyskiwania po awarii",
"checkLabel": "Sprawdź moją kopię",
"checkKeyLabel": "Klucz do sprawdzenia",
"checkValueLabel": "Twoja kopia klucza",
"checkButton": "Sprawdź",
"checkNote": "Wklejony klucz jest porównywany z kluczem na tym serwerze, a potem odrzucany. Nigdy nie jest zapisywany ani logowany.",
"checkInsecureNote": "Ta strona nie jest serwowana przez https://, więc wklejony klucz przechodzi przez sieć bez szyfrowania, tak jak Twoje hasło. Jest porównywany i odrzucany, nigdy nie jest zapisywany ani logowany.",
"checkMatches": "Twoja kopia pasuje do tego klucza.",
"checkNoMatch": "Twoja kopia nie pasuje do tego klucza. Sprawdź, czy skopiowano całą wartość.",
"checkFailed": "Sprawdzenie nie powiodło się.",
"confirmButton": "Mam kopię każdego klucza",
"confirmed": "Zestaw odzyskiwania potwierdzony.",
"confirmFailed": "Nie udało się zapisać potwierdzenia.",
"stale": "Zestaw zmienił się od wczytania tej strony. Sprawdź klucze, które teraz wymienia, a potem potwierdź ponownie.",
"confirmedAt": "Potwierdzono {date}.",
"confirmedAtBy": "Potwierdzono {date}, potwierdził(a): {who}.",
"dueAgain": "Zestaw potwierdzono {date}. Zawiera teraz także {keys}, czego to potwierdzenie nie obejmowało. Zapisz kopię każdego i potwierdź ponownie."
},
"recoveryReadiness": {
"title": "Gotowość do odzyskiwania",
"description": "Czy ten serwer dałoby się odtworzyć po utracie, oceniane na podstawie każdej kopii zapasowej, którą tworzy.",
"loading": "Sprawdzanie kopii zapasowych…",
"loadError": "Nie udało się wczytać gotowości do odzyskiwania.",
"state": {
"ok": "Gotowe",
"attention": "Wymaga uwagi",
"failing": "Zagrożone"
},
"signal": {
"database_dump": "Zrzut bazy danych",
"weekly_copy": "Cotygodniowe kopie kont",
"offhost_copies": "Kopie poza hostem",
"restore_drill": "Próba przywracania",
"offhost_setup": "Kopia poza hostem",
"recovery_kit": "Zestaw odzyskiwania",
"dump_retention": "Zrzuty w buckecie"
},
"at": {
"database_dump": "Najnowszy zrzut: {date}",
"weekly_copy": "Najstarsza kopia konta: {date}",
"offhost_copies": "Najstarsza kopia poza hostem: {date}",
"restore_drill": "Ostatnia próba: {date}",
"recovery_kit": "Potwierdzono: {date}"
},
"dueBy": "Termin: {date}",
"fix": {
"database_dump": "Otwórz kopie zapasowe",
"weekly_copy": "Otwórz kopie zapasowe",
"offhost_copies": "Otwórz kopie zapasowe",
"restore_drill": "Otwórz kopie zapasowe",
"offhost_setup": "Otwórz kopie zapasowe",
"recovery_kit": "Otwórz zestaw",
"dump_retention": "Otwórz kopie zapasowe"
},
"reason": {
"database_dump": {
"not_available": "Ta wersja nie planuje zrzutu bazy danych.",
"disabled": "Zaplanowany zrzut bazy danych jest wyłączony, więc żadna kopia nie odtworzy tego serwera. Aby go włączyć, usuń DB_BACKUP_ENABLED lub ustaw na true i uruchom HealthLog ponownie.",
"unreadable": "Nie udało się odczytać stanu zrzutu bazy danych.",
"never_succeeded": "Żaden zrzut bazy danych jeszcze się nie udał, a ostatnia próba zakończyła się błędem.",
"never_ran": "Od włączenia zrzutów minęło {hours} h, a nie zapisano żadnego zrzutu bazy danych.",
"first_pending": "Pierwszy zrzut bazy danych jeszcze się nie odbył.",
"stale": "Najnowszy zrzut bazy danych ma {hours} h.",
"last_failed": "Ostatni zrzut bazy danych nie powiódł się. Poprzedni jest jeszcze aktualny.",
"fresh": "Najnowszy zrzut bazy danych jest aktualny.",
"nowhere_to_write": "Katalog zrzutów {directory} nie jest zapisywalny i nie skonfigurowano zewnętrznego bucketu, więc żaden zrzut nie może zostać zachowany.",
"not_persistent": "Katalog zrzutów {directory} nie leży na trwałym nośniku, a zewnętrzny bucket nie jest ustawiony, więc każdy zrzut przepadnie przy następnej aktualizacji. Podłącz wolumin kopii.",
"fresh_offhost_only": "Najnowszy zrzut bazy jest aktualny i leży w zewnętrznym buckecie. Na tym serwerze żaden nie zostaje, bo {directory} nie leży na trwałym nośniku, i żaden nie powstaje przed migracją.",
"offhost_failed": "Najnowszy zrzut bazy danych jest przechowywany na tym serwerze, ale jego przesłanie do zewnętrznego bucketu się nie powiodło.",
"offhost_stale": "Od {hours} godzin do zewnętrznego bucketu nie trafił żaden zrzut bazy danych: przesyłanie wciąż się nie udaje. Jeśli ten serwer przepadnie, nie ma aktualnego zrzutu, z którego można go odbudować.",
"offhost_never": "Żaden zrzut bazy danych nigdy nie trafił do zewnętrznego bucketu: przesyłanie się nie udaje. Jeśli ten serwer przepadnie, nie ma zrzutu, z którego można go odbudować."
},
"weekly_copy": {
"no_accounts": "Nie ma jeszcze kont do skopiowania.",
"stale": "Najstarsza cotygodniowa kopia ma {days} dni. Zaległe konta: {accounts}.",
"never": "Jedno z kont od {days} dni nie ma cotygodniowej kopii. Zaległe konta: {accounts}.",
"first_pending": "Pierwsza cotygodniowa kopia powstaje wcześnie rano w niedzielę.",
"fresh": "Każde konto ma kopię z ostatniego tygodnia."
},
"offhost_copies": {
"not_configured": "Nie skonfigurowano bucketu poza hostem.",
"stale": "Kopie poza hostem są opóźnione o ponad dwie noce. Zaległe konta: {accounts}.",
"first_pending": "Nocny przebieg kopii poza hostem nie objął jeszcze żadnego konta.",
"fresh": "Każde konto ma aktualną kopię w buckecie poza hostem."
},
"restore_drill": {
"not_configured": "Próba odczytuje bucket poza hostem, który nie jest skonfigurowany.",
"not_run_yet": "Comiesięczna próba przywracania jeszcze się nie odbyła.",
"failed": "Ostatnia próba przywracania nie powiodła się: nie udało się odczytać {failed} z {checked} kopii.",
"failed_run": "Ostatnia próba przywracania nie dobiegła końca.",
"passed": "Ostatnia próba przywracania odczytała kopie: {checked}.",
"nothing_checked": "Ostatnia próba przywracania zatrzymała się na limicie czasu, zanim odczytała choć jedną kopię, więc niczego nie potwierdziła."
},
"offhost_setup": {
"configured": "Kopie opuszczają ten serwer każdej nocy.",
"no_admin": "Nie ma jeszcze konta administratora.",
"not_configured": "Nie skonfigurowano bucketu poza hostem, więc każda kopia jest tylko na tym serwerze.",
"not_configured_grace": "Nie skonfigurowano jeszcze bucketu poza hostem, więc każda kopia jest tylko na tym serwerze."
},
"recovery_kit": {
"confirmed": "Istnieje kopia każdego klucza potrzebnego do przywrócenia.",
"out_of_date": "Zestaw odzyskiwania zawiera teraz także {keys}, czego ostatnie potwierdzenie nie obejmowało. Nic się nie zepsuło: zapisz kopię i potwierdź zestaw ponownie.",
"no_admin": "Nie ma jeszcze konta administratora.",
"not_confirmed": "Nikt nie potwierdził kopii kluczy potrzebnych do przywrócenia: {keys}.",
"not_confirmed_grace": "Zapisz kopię kluczy potrzebnych do przywrócenia: {keys}."
},
"dump_retention": {
"not_configured": "Zewnętrzny bucket nie jest ustawiony.",
"no_offhost_dumps": "Żaden zrzut bazy nie trafia do bucketu.",
"missing": "Żadna reguła cyklu życia bucketu nie obejmuje database/, więc zrzuty tam, wraz z usuniętymi kontami w nich, nigdy nie są usuwane. Dodaj regułę dla tego prefiksu.",
"configured": "Bucket usuwa zrzuty po {days} dniach.",
"unknown": "Bucket nie podaje, czy jakaś reguła usuwa stare zrzuty. Sprawdź, czy reguła cyklu życia obejmuje database/."
}
},
"recovered": {
"database_dump": "Zrzut bazy danych znów jest aktualny.",
"weekly_copy": "Każde konto znów ma aktualną cotygodniową kopię.",
"offhost_copies": "Każde konto znów ma aktualną kopię poza hostem.",
"restore_drill": "Próba przywracania znów się powiodła.",
"offhost_setup": "Kopie poza hostem są już skonfigurowane.",
"recovery_kit": "Zestaw odzyskiwania jest znów potwierdzony.",
"dump_retention": "Reguła cyklu życia w buckecie obejmuje teraz zrzuty bazy."
}
}
},
"achievements": {
"title": "Osiągnięcia",
"subtitle": "Zdobywaj osiągnięcia, śledząc swoje zdrowie i przyjmując leki na czas.",
"loginRequired": "Zaloguj się, aby zobaczyć osiągnięcia.",
"points": "Punkty",
"unlocked": "Odblokowano",
"nextGoal": "Następny cel",
"allCompleted": "Wszystkie osiągnięcia odblokowane!",
"completed": "Ukończono",
"goalReached": "Cel osiągnięty",
"remainingUnlocks": "Jeszcze {count} do odblokowania",
"noneUnlockedYet": "Nie odblokowano jeszcze żadnego osiągnięcia.",
"pointsValue": "{points} punktów",
"metricCount": "{count}",
"metricDaysOne": "{count} dzień",
"metricDaysFew": "{count} dni",
"metricDaysOther": "{count} dni",
"metricPercent": "{count}%",
"badges": {
"intakeTotal1": {
"title": "Pierwsze przyjęcie",
"description": "Zarejestruj swoje pierwsze przyjęcie leku."
},
"intakeTotal10": {
"title": "Początkujący w przyjęciach",
"description": "Zarejestruj 10 przyjęć leków."
},
"intakeTotal50": {
"title": "Rutyna przyjęć",
"description": "Zarejestruj 50 przyjęć leków."
},
"intakeTotal150": {
"title": "Ekspert przyjęć",
"description": "Zarejestruj 150 przyjęć leków."
},
"intakeTotal300": {
"title": "Legenda przyjęć",
"description": "Zarejestruj 300 przyjęć leków."
},
"passkeyCreated1": {
"title": "Klucz dostępu ustawiony",
"description": "Utwórz swój pierwszy klucz dostępu."
},
"passkeyLogin1": {
"title": "Logowanie kluczem dostępu",
"description": "Zaloguj się co najmniej raz kluczem dostępu."
},
"passwordLogin1": {
"title": "Stara szkoła",
"description": "Zaloguj się co najmniej raz nazwą użytkownika i hasłem."
},
"loginStreak7": {
"title": "Seria logowań 7d",
"description": "Zaloguj się przez 7 kolejnych dni."
},
"loginStreak30": {
"title": "Seria logowań 30d",
"description": "Zaloguj się przez 30 kolejnych dni."
},
"onTimePerfect1": {
"title": "Na czas 1d",
"description": "Przyjmij wszystkie leki na czas przez 1 dzień."
},
"compliance801": {
"title": "Przestrzeganie 80% przez 1 dzień",
"description": "Osiągnij co najmniej 80% przestrzegania w 30 dni przez 1 dzień."
},
"bmiGreen1": {
"title": "BMI na zielono przez 1 dzień",
"description": "Utrzymaj BMI w normie przez 1 dzień."
},
"bpGreen1": {
"title": "Ciśnienie na zielono przez 1 dzień",
"description": "Utrzymaj ciśnienie w normie przez 1 dzień."
},
"pulseGreen1": {
"title": "Tętno na zielono przez 1 dzień",
"description": "Utrzymaj tętno spoczynkowe w normie przez 1 dzień."
},
"onTimePerfect7": {
"title": "Na czas 7d",
"description": "Przyjmij wszystkie leki na czas przez 7 kolejnych dni."
},
"compliance807": {
"title": "Przestrzeganie 80% przez 7 dni",
"description": "Osiągnij co najmniej 80% przestrzegania w 30 dni przez 7 kolejnych dni."
},
"bmiGreen7": {
"title": "BMI na zielono przez 7 dni",
"description": "Utrzymaj BMI w normie przez 7 kolejnych dni."
},
"bpGreen7": {
"title": "Ciśnienie na zielono przez 7 dni",
"description": "Utrzymaj ciśnienie w normie przez 7 kolejnych dni."
},
"pulseGreen7": {
"title": "Tętno na zielono przez 7 dni",
"description": "Utrzymaj tętno spoczynkowe w normie przez 7 kolejnych dni."
},
"onTimePerfect30": {
"title": "Na czas 30d",
"description": "Przyjmij wszystkie leki na czas przez 30 kolejnych dni."
},
"compliance8030": {
"title": "Przestrzeganie 80% przez 30 dni",
"description": "Osiągnij co najmniej 80% przestrzegania w 30 dni przez 30 kolejnych dni."
},
"bmiGreen30": {
"title": "BMI na zielono przez 30 dni",
"description": "Utrzymaj BMI w normie przez 30 kolejnych dni."
},
"bpGreen30": {
"title": "Ciśnienie na zielono przez 30 dni",
"description": "Utrzymaj ciśnienie w normie przez 30 kolejnych dni."
},
"pulseGreen30": {
"title": "Tętno na zielono przez 30 dni",
"description": "Utrzymaj tętno spoczynkowe w normie przez 30 kolejnych dni."
},
"onTimePerfect180": {
"title": "Na czas 180d",
"description": "Przyjmij wszystkie leki na czas przez 180 kolejnych dni."
},
"compliance80180": {
"title": "Przestrzeganie 80% przez 180 dni",
"description": "Osiągnij co najmniej 80% przestrzegania w 30 dni przez 180 kolejnych dni."
},
"bmiGreen180": {
"title": "BMI na zielono przez 180 dni",
"description": "Utrzymaj BMI w normie przez 180 kolejnych dni."
},
"bpGreen180": {
"title": "Ciśnienie na zielono przez 180 dni",
"description": "Utrzymaj ciśnienie w normie przez 180 kolejnych dni."
},
"pulseGreen180": {
"title": "Tętno na zielono przez 180 dni",
"description": "Utrzymaj tętno spoczynkowe w normie przez 180 kolejnych dni."
},
"onTimePerfect360": {
"title": "Na czas 360d",
"description": "Przyjmij wszystkie leki na czas przez 360 kolejnych dni."
},
"compliance80360": {
"title": "Przestrzeganie 80% przez 360 dni",
"description": "Osiągnij co najmniej 80% przestrzegania w 30 dni przez 360 kolejnych dni."
},
"bmiGreen360": {
"title": "BMI na zielono przez 360 dni",
"description": "Utrzymaj BMI w normie przez 360 kolejnych dni."
},
"bpGreen360": {
"title": "Ciśnienie na zielono przez 360 dni",
"description": "Utrzymaj ciśnienie w normie przez 360 kolejnych dni."
},
"pulseGreen360": {
"title": "Tętno na zielono przez 360 dni",
"description": "Utrzymaj tętno spoczynkowe w normie przez 360 kolejnych dni."
},
"moodFirst": {
"title": "Pierwszy nastrój",
"description": "Zapisz swój pierwszy wpis nastroju."
},
"moodStreak7": {
"title": "Dziennik nastroju 7d",
"description": "Zapisuj nastrój przez 7 kolejnych dni."
},
"moodStreak30": {
"title": "Dziennik nastroju 30d",
"description": "Zapisuj nastrój przez 30 kolejnych dni."
},
"moodUp7": {
"title": "Pogodniejszy tydzień",
"description": "Twoja 7-dniowa średnia nastroju poprawiła się o co najmniej 1,0 punkt względem poprzedniego tygodnia."
},
"weightFirst": {
"title": "Pierwsze ważenie",
"description": "Zapisz swój pierwszy pomiar wagi."
},
"weight50": {
"title": "Pięćdziesiąt ważeń",
"description": "Zapisz 50 pomiarów wagi."
},
"weight200": {
"title": "200 ważeń",
"description": "Zapisz 200 pomiarów wagi."
},
"bpFirst": {
"title": "Pierwszy pomiar",
"description": "Zapisz swój pierwszy pomiar ciśnienia."
},
"bp50": {
"title": "Pięćdziesiąt pomiarów ciśnienia",
"description": "Zapisz 50 pomiarów ciśnienia."
},
"bp200": {
"title": "200 pomiarów ciśnienia",
"description": "Zapisz 200 pomiarów ciśnienia."
},
"pulseFirst": {
"title": "Pierwsze tętno",
"description": "Zapisz swój pierwszy pomiar tętna."
},
"consistentMonth": {
"title": "Konsekwentny miesiąc",
"description": "Zapisz wpisy w co najmniej 25 różnych dniach w jednym miesiącu kalendarzowym."
},
"entryStreak7": {
"title": "Seria wpisów 7d",
"description": "Zapisuj co najmniej jeden wpis przez 7 kolejnych dni."
},
"entryStreak30": {
"title": "Seria wpisów 30d",
"description": "Zapisuj co najmniej jeden wpis przez 30 kolejnych dni."
},
"weekendWarrior": {
"title": "Weekendowy rejestrator",
"description": "Zapisuj wpisy w 4 kolejnych weekendach (sobota + niedziela)."
},
"hiddenNightOwl": {
"title": "Nocny marek",
"description": "Zapisałeś wpis między 02:00 a 04:00 nad ranem."
},
"hiddenEarlyBird": {
"title": "Ranny ptaszek",
"description": "Zapisałeś wpis między 04:00 a 06:00 rano."
},
"hiddenLeapDay": {
"title": "Legenda dnia przestępnego",
"description": "Zapisałeś wpis 29 lutego."
},
"hiddenDoctorPdf": {
"title": "Wizyta domowa",
"description": "Wyeksportowałeś swój pierwszy raport dla lekarza w PDF."
},
"hiddenLocaleFlip": {
"title": "Poliglota",
"description": "Zmieniłeś język aplikacji co najmniej raz."
},
"missFree7": {
"title": "Bez pominiętej dawki przez 7 dni",
"description": "7 kolejnych dni bez pominiętej dawki."
},
"missFree30": {
"title": "Bez pominiętej dawki przez 30 dni",
"description": "30 kolejnych dni bez pominiętej dawki."
},
"missFree90": {
"title": "Bez pominiętej dawki przez 90 dni",
"description": "90 kolejnych dni bez pominiętej dawki."
},
"measurementWeeks4": {
"title": "Rutyna pomiarów",
"description": "4 kolejne tygodnie z pomiarami przez co najmniej 5 dni w każdym."
},
"selfContextComplete": {
"title": "Wywiad uzupełniony",
"description": "Wszystkie cztery pola wywiadu wypełnione. Coach zna Twój kontekst."
},
"sleepLog7": {
"title": "Dziennik snu przez 7 dni",
"description": "Dane o śnie zapisane przez 7 kolejnych dni."
}
},
"nextProgressLabel": "Postęp do odblokowania",
"completedOn": "Ukończono {date}",
"locked": "Zablokowane",
"criterionHint": "{current} / {target}",
"progressPercent": "{percent}%",
"categories": {
"medication": "Lek",
"vitals": "Parametry życiowe",
"mood": "Nastrój",
"security": "Konto i bezpieczeństwo",
"engagement": "Engagement",
"hidden": "Ukryte"
},
"hiddenCard": {
"title": "Ukryte osiągnięcie",
"description": "Śledź dalej, może na nie natrafisz.",
"ariaLabel": "Ukryte zablokowane osiągnięcie"
},
"hiddenUnlockToast": {
"title": "Odblokowałeś ukryte osiągnięcie!"
},
"dashboardCard": {
"title": "Ostatnio odblokowane",
"viewAll": "Zobacz wszystkie",
"empty": "Brak osiągnięć. Zapisuj dalej, aby odblokować pierwsze."
}
},
"notifications": {
"title": "Powiadomienia",
"eventColumn": "Zdarzenie",
"subtitle": "Wybierz, które powiadomienia chcesz otrzymywać i którym kanałem.",
"loadError": "Nie udało się załadować ustawień powiadomień.",
"noChannels": "Najpierw skonfiguruj kanał powiadomień w Ustawienia → Integracje.",
"goToSettings": "Przejdź do ustawień kanału",
"channelDisabled": "Wyłączone",
"admin": {
"deployFailedTitle": "Wdrożenie nie powiodło się: {application}",
"deployFailedBody": "Wystąpił błąd podczas wdrażania {application} (#{deployment}): {error}. Zobacz logi: {logsUrl}",
"testNotificationTitle": "HealthLog powiadomienie testowe",
"testNotificationBody": "To powiadomienie testowe zostało wywołane z panelu administracyjnego. Jeśli je widzisz, kanał działa.",
"reminderCheckMissedTitle": "Pominięte przypomnienie: {medication}",
"reminderCheckMissedBody": "{medication} ({dose}) nie zostało zarejestrowane w przedziale {window}.",
"reminderCheckOverdueTitle": "Dawka opóźniona: {medication}",
"reminderCheckOverdueBody": "{medication} ({dose}) w przedziale {window} jest opóźnione o {minutes} minut.",
"offlineGeoUnavailableTitle": "Bazy geolokalizacji offline nie zostały załadowane",
"offlineGeoUnavailableBody": "HealthLog rozwiązuje lokalizacje logowania przez zapytanie online do {host}, więc każdy adres IP logowania opuszcza ten serwer. Aby rozwiązywać je lokalnie, pobierz bazy GeoLite2-City i GeoLite2-ASN na bezpłatnym koncie MaxMind, podłącz katalog do kontenera i ustaw na niego GEOLITE2_DIR. Kroki: {docsUrl}",
"tlsPinChangedTitle": "Zmieniono certyfikat liścia TLS: {host}",
"tlsPinChangedBody": "Liść TLS serwowany przez {host} ma teraz pin SPKI {servedPin}, którego nie ma w znanym zestawie pinów. Klienci z przypiętym pinem (aplikacja natywna) nie połączą się po usunięciu starego pinu. Ponownie wyodrębnij nowy pin liścia, dodaj go do TLS_LEAF_SPKI_PINS oraz do zestawu pinów klienta natywnego i opublikuj kompilację, zanim ten certyfikat wygaśnie {validTo}. Zobacz docs/ops/tls-cert-pin.md.",
"accountErasureRefusedTitle": "Nie udało się usunąć konta: {username}",
"accountErasureRefusedBody": "Okres usuwania konta {username} minął, ale to konto jest ostatnią aktywną osobą opiekującą się profilem zarządzanym, więc nie zostało usunięte. Pozostaje zablokowane. Dodaj do profilu kolejną osobę opiekującą się, usuń profil albo cofnij usunięcie w Administracja, Użytkownicy.",
"accountErasureFailedBody": "Okres usuwania konta {username} minął, ale usunięcie konta się nie powiodło. Konto pozostaje zablokowane, a próba jest ponawiana co godzinę, po innych kontach do usunięcia. Błąd widać na karcie nieudanych zadań w Administracja."
},
"user": {
"telegramTestBody": "HealthLog: połączenie udane. Powiadomienia Telegram są aktywne."
},
"moodReminder": {
"title": "Codzienne przypomnienie o nastroju",
"description": "Delikatne przypomnienie o wybranej przez Ciebie godzinie, jeśli dziś jeszcze nie zapisano nastroju.",
"toggleAria": "Włącz lub wyłącz codzienne przypomnienie o nastroju",
"statusOn": "Aktywne o wybranej godzinie",
"statusOff": "Wyłączone",
"enabledToast": "Przypomnienie o nastroju włączone.",
"disabledToast": "Przypomnienie o nastroju wyłączone.",
"saveError": "Zapis nieudany. Spróbuj ponownie.",
"hourLabel": "Godzina przypomnienia",
"hourAria": "Godzina przypomnienia o nastroju",
"hourSavedToast": "Godzina przypomnienia zaktualizowana",
"detail": "Wysyłane tylko skonfigurowanymi już kanałami (Telegram, ntfy, Web Push, Apple Push) i milknie, gdy dziś zapisano nastrój."
},
"coachNudge": {
"title": "Proaktywny Coach",
"description": "Odzywa się, gdy Twoje dane sugerują zajrzenie do Coacha.",
"toggleAria": "Przełącz proaktywne podpowiedzi Coacha",
"statusOn": "Aktywne",
"groupsLabel": "Tematy",
"groupMedication": "Leki",
"groupMedicationDesc": "Nieregularne przyjmowanie leków w ostatnim tygodniu.",
"groupVitals": "Parametry życiowe",
"groupVitalsDesc": "Ciśnienie, regeneracja, trend wagi, sen.",
"groupRoutine": "Rutyna",
"groupRoutineDesc": "Nagłe przerwy w pomiarach i przegląd opisu o sobie.",
"frequencyLabel": "Częstotliwość",
"frequencyWeekly": "Najwyżej raz w tygodniu",
"frequencyBiweekly": "Najwyżej co dwa tygodnie",
"frequencyAria": "Wybierz częstotliwość podpowiedzi",
"statusOff": "Wyłączone",
"enabledToast": "Proaktywne podpowiedzi Coacha włączone.",
"disabledToast": "Proaktywne podpowiedzi Coacha wyłączone.",
"saveError": "Nie udało się zapisać. Spróbuj ponownie później.",
"aiComposedLabel": "Pozwól Coachowi sformułować przypomnienie",
"aiComposedDesc": "Gdy dostawca jest dostępny, proaktywne przypomnienie tworzy model zamiast stałego szablonu. Domyślnie wyłączone.",
"aiComposedAria": "Przełącz proaktywne przypomnienie tworzone przez SI"
},
"lowStock": {
"title": "Alert niskiego zapasu",
"description": "Codziennie zgłasza zapas wystarczający na mniej dni niż ten próg.",
"toggleAria": "Przełącz alerty niskiego zapasu",
"statusOn": "Aktywne",
"statusOff": "Wyłączone",
"daysLabel": "Powiadom poniżej (dni)",
"daysAria": "Wybierz próg zapasu w dniach",
"leadLabel": "Czas na ponowne zamówienie (dni)",
"leadAria": "Czas na ponowne zamówienie w dniach",
"leadHelp": "Alert pojawia się o tyle dni plus jeden interwał dawki wcześniej, aby nowy zapas dotarł przed Twoją ostatnią dawką. Pojedynczy lek może nadpisać tę wartość na swojej karcie zapasu.",
"leadSavedToast": "Czas na ponowne zamówienie zapisany",
"savedToast": "Próg zapasu zapisany",
"enabledToast": "Alerty niskiego zapasu włączone.",
"disabledToast": "Alerty niskiego zapasu wyłączone.",
"saveError": "Zapis nieudany. Spróbuj ponownie.",
"medicationsLink": "Przejdź do swoich leków",
"detail": "Jedno powiadomienie na niedobór; po uzupełnieniu uzbraja się ponownie."
},
"eventMedicationReminder": "Przypomnienie o leku",
"eventMedicationReminderDesc": "Wysyłane o każdej zaplanowanej godzinie dawki.",
"eventMeasurementAnomaly": "Nietypowy pomiar",
"eventMeasurementAnomalyDesc": "Wysyłane, gdy odczyt znacznie odbiega od Twojego zwykłego zakresu.",
"eventComplianceLow": "Niska zgodność",
"eventComplianceLowDesc": "Wysyłane, gdy odsetek przyjętych dawek z ostatnich dni spadnie poniżej 80 %.",
"eventWithingsSyncFailed": "Synchronizacja Withings nie powiodła się",
"eventWithingsSyncFailedDesc": "Wysyłane, gdy synchronizacja Withings nie powiedzie się kilka razy z rzędu.",
"eventSystemAlert": "Powiadomienie systemowe",
"eventSystemAlertDesc": "Ogólne komunikaty z serwera HealthLog, na przykład okna serwisowe lub uwagi do konta.",
"eventPersonalRecord": "Rekord osobisty",
"eventPersonalRecordDesc": "Wysyłane, gdy odczyt pobije Twój dotychczasowy rekord.",
"eventMoodReminder": "Przypomnienie o nastroju",
"eventMoodReminderDesc": "Codzienne przypomnienie, aby zapisać swój aktualny nastrój.",
"eventCyclePeriodSoon": "Zbliża się okres",
"eventCyclePeriodSoonDesc": "Wysyłane kilka dni przed przewidywanym okresem.",
"eventCyclePeriodConfirm": "Czy okres się zaczął?",
"eventCyclePeriodConfirmDesc": "Delikatne przypomnienie w dniu przewidywanego początku lub później, gdy nie zarejestrowano okresu.",
"eventCycleFertileSoon": "Zbliża się okno płodności",
"eventCycleFertileSoonDesc": "Wysyłane kilka dni przed szacowanym oknem płodności, gdy Twoim celem jest poczęcie.",
"eventMedicationLowStock": "Niski zapas leku",
"eventMedicationLowStockDesc": "Gdy śledzony zapas leku wystarcza na mniej dni niż twój próg zapasu",
"eventCoachNudge": "Wskazówka Coacha",
"eventCoachNudgeDesc": "Okazjonalna wskazówka od Coacha, gdy twoje ostatnie trendy wymagają sprawdzenia.",
"eventMeasurementReminder": "Przypomnienie o pomiarze",
"eventMeasurementReminderDesc": "Wysyłane, gdy śledzony pomiar jest wymagany.",
"eventMedicationIntakeSync": "Synchronizacja przyjęć leku",
"eventMedicationIntakeSyncDesc": "Aktualizacja między urządzeniami, gdy dawka zostanie zapisana, przyjęta lub pominięta.",
"eventDailyBriefing": "Codzienne podsumowanie",
"eventDailyBriefingDesc": "Spokojne poranne podsumowanie Twojego dnia. Wyłączone, dopóki go nie włączysz.",
"eventSecurityAlert": "Nowe logowanie",
"eventSecurityAlertDesc": "Wysyłane, gdy Twoje konto zostanie użyte na nieznanym urządzeniu lub z nieznanego miejsca.",
"eventSharedRecordIntake": "Ktoś z dostępem oznacza dawkę",
"eventSharedRecordIntakeDesc": "Wysyłane tylko wtedy, gdy robi to inna osoba, nigdy przy Twoich własnych wpisach.",
"security": {
"newDeviceTitle": "Nowe logowanie do Twojego konta",
"newDeviceBody": "Nowe logowanie z {device} ({location}). Jeśli to nie Ty, natychmiast zmień hasło.",
"unknownLocation": "nieznana lokalizacja"
},
"sharedRecordIntake": {
"title": "{name} oznaczył(a) dawkę",
"bodyTaken": "{medication}: oznaczona jako przyjęta przez {name}.",
"bodySkipped": "{medication}: oznaczona jako pominięta przez {name}."
},
"loginRequired": "Zaloguj się, aby zarządzać powiadomieniami.",
"someChannelsGloballyDisabled": "Co najmniej jeden kanał jest wyłączony w ustawieniach i nie będzie otrzymywać powiadomień.",
"reminderSettingsLink": "Ustawienia przypomnień",
"channelsLink": "Kanały",
"handover": {
"claimedTitle": "{name} ma teraz własne konto",
"claimedEnd": "{name} przejmuje swoją kartę zdrowia. Twój dostęp się zakończył.",
"claimedRead": "{name} przejmuje swoją kartę zdrowia. Nadal możesz ją oglądać, ale już nie zmieniać.",
"claimedManage": "{name} przejmuje swoją kartę zdrowia. Nadal możesz nią zarządzać, dopóki nie zapadnie inna decyzja.",
"changedTitle": "{name} zmienia Twój dostęp",
"changedEnd": "Twój dostęp do karty zdrowia osoby {name} się zakończył.",
"changedRead": "Możesz teraz oglądać kartę zdrowia osoby {name}, ale nie zmieniać jej.",
"changedManage": "Możesz zarządzać kartą zdrowia osoby {name}.",
"unnamed": {
"claimedTitle": "Osoba pod Twoją opieką ma teraz własne konto",
"claimedEnd": "Osoba pod Twoją opieką przejęła swoją dokumentację zdrowotną. Twój dostęp wygasł.",
"claimedRead": "Osoba pod Twoją opieką przejęła swoją dokumentację zdrowotną. Nadal możesz ją przeglądać, ale nie możesz już jej zmieniać.",
"claimedManage": "Osoba pod Twoją opieką przejęła swoją dokumentację zdrowotną. Nadal możesz nią zarządzać, dopóki nie zdecyduje inaczej.",
"changedTitle": "Twój dostęp do dokumentacji zdrowotnej się zmienił",
"changedEnd": "Twój dostęp do dokumentacji zdrowotnej osoby pod Twoją opieką wygasł.",
"changedRead": "Możesz teraz przeglądać dokumentację zdrowotną osoby pod Twoją opieką, ale nie możesz jej zmieniać.",
"changedManage": "Możesz zarządzać dokumentacją zdrowotną osoby pod Twoją opieką."
}
},
"links": {
"open": "Otwórz w HealthLog"
},
"quickActions": {
"moodGood": "Dobrze",
"moodOkay": "W porządku",
"moodBad": "Źle"
},
"content": {
"title": "Wartości zdrowotne w powiadomieniach",
"description": "Czy powiadomienie może pokazywać wartości, takie jak poranny wynik.",
"detail": "Wyłączone: powiadomienie mówi tylko, czego dotyczy, więc ekran blokady nie pokazuje wartości zdrowotnych. Włączone: dodaje wartości, na przykład poranny wynik w podsumowaniu. Dotknięcie powiadomienia w obu przypadkach otwiera właściwe miejsce w aplikacji.",
"toggleAria": "Pokazuj wartości zdrowotne w powiadomieniach",
"statusDetailed": "Z wartościami",
"statusGeneric": "Bez wartości",
"detailedToast": "Powiadomienia zawierają teraz wartości zdrowotne.",
"genericToast": "Powiadomienia nie zawierają już wartości zdrowotnych.",
"saveError": "Nie udało się zapisać. Spróbuj ponownie później."
},
"checkupReminders": {
"title": "Przypomnienia o badaniach kontrolnych",
"description": "Włączaj lub wyłączaj pojedyncze przypomnienia o badaniach."
},
"eventBackupHealth": "Stan kopii zapasowych",
"eventBackupHealthDesc": "Gdy kopia zapasowa przestaje powstawać, zostaje w tyle lub wraca do normy. Wysyłane tylko do administratorów.",
"recoveryReadiness": {
"titleAttention": "Kopie zapasowe wymagają uwagi",
"titleFailing": "Kopie zapasowe są zagrożone",
"titleReminder": "Kopie zapasowe są nadal zagrożone",
"titleRecovered": "Kopie zapasowe znów działają normalnie"
},
"systemJobAlert": {
"titleFailing": "Zadanie w tle kończy się błędem: {queue}",
"titleReminder": "Zadanie w tle nadal kończy się błędem: {queue}",
"titleRecovered": "Zadanie w tle znów działa: {queue}",
"bodyFailing": "Zadanie w tle {queue} zakończyło się błędem {failures} razy z rzędu i jest widoczne na stronie stanu w panelu administratora. Ostatni błąd: {error}",
"bodyRecovered": "Zadanie w tle {queue} znów wykonało się poprawnie."
}
},
"i18n": {
"maintainershipBanner": {
"notice": "Ta wersja językowa jest tłumaczona maszynowo, w tym instrukcje krytyczne dla bezpieczeństwa Coacha. Automatyczna kontrola dryftu działa w CI; proszę zgłaszać wszelkie regresje Coacha na GitHubie.",
"cta": "Zgłoś na GitHubie",
"dismiss": "Zamknij"
}
},
"targets": {
"bmi": "BMI",
"average30d": "Średnia 30-dniowa:",
"consistency": {
"ariaLabel": "Ostatnie 7 dni, status w/poza zakresem na dzień",
"daysInRange": "{count} z {total} w zakresie",
"daysLogged": "{count} z {total} zarejestrowanych",
"dotInRange": "w zakresie",
"dotNearRange": "blisko zakresu",
"dotOutOfRange": "poza zakresem",
"dotNotLogged": "nie zarejestrowano",
"relativeDay": {
"today": "Dzisiaj",
"yesterday": "Wczoraj",
"twoDaysAgo": "2 dni temu",
"threeDaysAgo": "3 dni temu",
"fourDaysAgo": "4 dni temu",
"fiveDaysAgo": "5 dni temu",
"sixDaysAgo": "6 dni temu"
}
},
"edit": {
"title": "Edytuj zakres docelowy: {metric}",
"description": "Dostosuj zakres docelowy używany w wykresach, insights i raporcie medycznym. Wartości w {unit}.",
"derivedHint": "Ta karta jest wyprowadzona z innych metryk. Edytuj cele bazowe (np. ciśnienie lub waga).",
"minLabel": "Min",
"maxLabel": "Maks",
"systolicMin": "Skurczowe min",
"systolicMax": "Skurczowe maks",
"diastolicMin": "Rozkurczowe min",
"diastolicMax": "Rozkurczowe maks",
"boundsHint": "Dozwolony zakres: {min}–{max} {unit}",
"resetToDefault": "Przywróć wartość domyślną",
"resetTitle": "Zresetować ten cel?",
"resetBody": "Zakres wraca do wartości domyślnej. Ustawione wartości nie są nigdzie indziej zapisane i nie da się ich odzyskać.",
"resetBodyBp": "Zarówno zakres skurczowy, jak i rozkurczowy wracają do wartości domyślnej. Ustawione wartości nie są nigdzie indziej zapisane i nie da się ich odzyskać.",
"resetConfirm": "Zresetuj cel",
"saveSuccess": "Zakres docelowy zaktualizowany",
"saveError": "Nie udało się zapisać zakresu docelowego",
"resetSuccess": "Zakres docelowy przywrócono do domyślnego",
"validationOrder": "Wartość minimalna musi być niższa niż maksymalna.",
"validationBounds": "Wprowadź wartości w dozwolonym zakresie podanym poniżej."
},
"currentValue": "Aktualnie: {value} {unit}",
"targetRangeValue": "Zakres docelowy: {min}–{max} {unit}",
"sourceLabel": "Źródło: {source}",
"sourceNames": {
"moodEntries": "Wpisy nastroju",
"sevenDays": "7 dni"
},
"inTarget": "W zakresie docelowym",
"aboveTarget": "{delta} {unit} powyżej zakresu",
"belowTarget": "{delta} {unit} poniżej zakresu",
"systolic": "Skurczowe",
"diastolic": "Rozkurczowe",
"glucoseFasting": "Glikemia: na czczo",
"glucosePostprandial": "Glikemia: po posiłku",
"glucoseRandom": "Glikemia: dowolna",
"glucoseBedtime": "Glikemia: przed snem",
"glucoseUnspecified": "Glikemia: bez oznaczenia",
"status": {
"underweight": "Niedowaga",
"normal": "Normal",
"overweight": "Nadwaga",
"obesityGrade1": "Otyłość I stopnia",
"obesityGrade2": "Otyłość II stopnia",
"obesityGrade3": "Otyłość III stopnia",
"optimal": "Optymalne",
"highNormal": "Wysokie prawidłowe",
"hypertensionGrade1": "Nadciśnienie 1 stopnia",
"hypertensionGrade2": "Nadciśnienie 2 stopnia",
"hypertensionGrade3": "Nadciśnienie 3 stopnia",
"belowTypicalRange": "Poniżej typowego zakresu",
"elevated": "Podwyższone",
"aboveTypicalRange": "Powyżej typowego zakresu",
"significantlyLow": "Znacząco niskie",
"slightlyLow": "Lekko niskie",
"onTarget": "W zakresie docelowym",
"slightlyElevated": "Lekko podwyższone",
"significantlyElevated": "Znacząco podwyższone",
"farTooShort": "Zdecydowanie zbyt krótki",
"tooShort": "Zbyt krótki",
"slightlyLong": "Lekko zbyt długi",
"farTooLong": "Zdecydowanie zbyt długi",
"belowEssential": "Poniżej niezbędnego",
"essential": "Niezbędny",
"athletic": "Atletyczny",
"fitness": "Fitness",
"acceptable": "Akceptowalny",
"obese": "Otyły",
"veryLow": "Bardzo niski",
"lowActive": "Mało aktywny",
"moderatelyActive": "Umiarkowanie aktywny",
"active": "Aktywny",
"veryActive": "Bardzo aktywny",
"good": "Dobre",
"moderate": "Umiarkowane",
"low": "Niskie",
"high": "Wysokie",
"veryGood": "Bardzo dobre",
"veryStable": "Bardzo stabilny",
"stable": "Stabilny",
"fluctuating": "Zmienny"
}
},
"passwordStrength": {
"veryWeak": "Bardzo słabe",
"weak": "Słabe",
"acceptable": "Akceptowalne",
"strong": "Silne",
"veryStrong": "Bardzo silne",
"tooShort": "Za krótkie",
"characters": "znaków",
"minLength": "Wymagane co najmniej {count} znaków."
},
"telegram": {
"errorInvalidAction": "Nieprawidłowa akcja.",
"errorMedicationNotFound": "Nie znaleziono leku.",
"errorMedicationInactive": "Nie znaleziono leku lub jest nieaktywny.",
"errorUnknownAction": "Nieznana akcja.",
"snoozeOneHour": "1 godzina",
"snoozeThreeHours": "3 godziny",
"snoozedFor": "{name} odłożone o {duration}.",
"skipped": "{name} pominięte.",
"alreadyRecorded": "{name} było już zarejestrowane.",
"recordedAsTaken": "{name} zarejestrowane jako przyjęte.",
"confirmed": "{name} potwierdzone.",
"genericConfirmed": "Potwierdzone.",
"cancelled": "Anulowane.",
"moodLogged": "Zapisano: {score}/5",
"moodNotePrompt": "Dodaj krótką notatkę (opcjonalnie).",
"moodNoteSaved": "Notatka zapisana.",
"moodNoteExpired": "Ta prośba wygasła.",
"remindLater": "Przypomnienie przełożone o {duration}.",
"measurementDone": "Oznaczono jako wykonane.",
"measurementNotFound": "Nie znaleziono przypomnienia.",
"buttonMoodNote": "Notatka…",
"buttonLater": "Później",
"buttonDone": "Gotowe",
"noActiveMedications": "Nie znaleziono aktywnych leków.",
"whichMedication": "<b>Który lek został przyjęty?</b>",
"cancelButton": "Anuluj",
"askMedicationName": "Podaj lek, np. <b>przyjęty Ramipril</b>.",
"medicationNotFoundExact": "Nie znaleziono leku. Wyślij nazwę dokładnie tak, jak w HealthLog.",
"helpHeader": "<b>Dostępne polecenia:</b>",
"helpBody": "/help: pokaż tę pomoc\n/add: zapisz przyjęcie\n/start: uruchom bota\n\n<b>Polecenia tekstowe:</b>\ntaken &lt;nazwa&gt;: potwierdź przyjęcie\n\n<b>Przyciski w przypomnieniach:</b>\n• Przyjęto: potwierdź przyjęcie\n• 🕐 1h / 🕐 3h: odłóż przypomnienie\n• ⏭ Pomiń: pomiń przyjęcie\n• ✓ Potwierdź: potwierdź pominięte przyjęcie",
"measureValuePrompt": "Odpowiedz wartością, aby ją zapisać (opcjonalnie).",
"buttonMeasureValue": "Wartość…",
"measureValueSaved": "Pomiar zapisany.",
"measureValueInvalid": "Odpowiedz liczbą, aby zapisać pomiar.",
"measureValueOutOfRange": "Ta wartość jest poza wiarygodnym zakresem.",
"measureValueExpired": "Ten monit wygasł."
},
"medicationReminders": {
"phaseGreenTitle": "🟢 Przypomnienie: {medName}",
"phaseGreenMessage": "🟢 Reminder:\n<b>{medName}</b> ({doseInfo}, {timeWindow})\nWindow closes in {minutes} Min.",
"phaseYellowTitle": "🟡 Wkrótce: {medName}",
"phaseYellowMessage": "🟡 Wkrótce:\n<b>{medName}</b> ({doseInfo}, {timeWindow})\nPozostało {minutes} min.",
"phaseOrangeTitle": "🟠 Zaległe: {medName}",
"phaseOrangeMessage": "🟠 Overdue:\n<b>{medName}</b> ({doseInfo}, {timeWindow})\nOverdue by {minutes} Min.",
"phaseRedTitle": "🔴 Pominięte: {medName}",
"phaseRedMessage": "🔴 Pominięte:\n<b>{medName}</b> ({doseInfo}, {timeWindow})\nOznaczone jako pominięte.",
"buttonTaken": "Przyjęty",
"buttonConfirm": "✓ Potwierdź",
"buttonSnoozeOneHour": "🕐 1h",
"buttonSnoozeThreeHours": "🕐 3h",
"buttonSkip": "⏭ Pomiń"
},
"lowStockReminders": {
"title": "Niski zapas: {medName}",
"bodyToday": "{medName}: pozostało {units} jednostek, czyli mniej niż jeden dzień zapasu.",
"bodyReorder": "{medName}: pozostało {units} jednostek. Zapas skończy się około {runsOutOn}. Zamów ponownie do {reorderBy}.",
"bodyLastDose": "{medName}: pozostało {units} jednostek, to mniej więcej Twoja ostatnia dawka. Zapas skończy się około {runsOutOn}.",
"bodyExpired": "{medName}: brak zapasu do użycia. {units} jednostek oznaczono jako przeterminowane.",
"bodyAsNeeded": "{medName}: zostało tylko {units} jednostek. Zamów ponownie, zanim będziesz potrzebować kolejnej dawki."
},
"moodReminders": {
"dailyTitle": "Zapisz nastrój",
"dailyBody": "Jak się dzisiaj czujesz?"
},
"coachNudges": {
"greetingMorning": "Dzień dobry",
"greetingMorningNamed": "Dzień dobry, {name}",
"greetingHey": "Cześć",
"greetingHeyNamed": "Cześć, {name}",
"complianceBody": "W tym tygodniu Twoje przyjmowanie dawek trochę się rozjechało. Jeśli chcesz, zobaczmy razem, co by Ci to ułatwiło.",
"bpBody": "Twoje ciśnienie było w tym tygodniu nieco powyżej zwykłego zakresu. Kiedy zechcesz, chętnie przyjrzę się temu z Tobą.",
"scoreBody": "Twoja regeneracja od kilku dni nieco słabnie. Jeśli jesteś ciekaw przyczyny, jestem tu, żeby o tym porozmawiać.",
"selfContextBody": "Dawno nie aktualizowano Twojego opisu o sobie. Gdy znajdziesz chwilę, odświeżenie go pomaga mi lepiej Cię zrozumieć.",
"weightBody": "Twoja waga ostatnio nieco oddaliła się od zakresu docelowego. Jeśli chcesz, spokojnie podsumujemy to razem.",
"sleepDebtBody": "Kilka Twoich nocy było w tym tygodniu krótkich. Jeśli masz ochotę, poszukajmy razem wzorca.",
"measurementGapBody": "Twój dziennik milczy od około tygodnia. Kiedy Ci pasuje, krótka rozmowa pomoże wrócić do rutyny.",
"focusNote": "Wiąże się to też z tym, na co chciałeś/chciałaś zwracać uwagę.",
"reminderSurfacedTitle": "Twoje przypomnienie",
"reminderSurfacedLeadOne": "Prosiłeś, żeby przypomnieć ci o tym dzisiaj:",
"reminderSurfacedLeadMany": "Prosiłeś, żeby przypomnieć ci dzisiaj o {count} sprawach:",
"questionConditions": "Czy masz choroby przewlekłe, o których Coach powinien wiedzieć?",
"questionFocus": "Czy jest coś konkretnego, na co Coach powinien zwracać uwagę?",
"questionAllergies": "Czy masz alergie lub nietolerancje?",
"questionAboutMe": "Chcesz opowiedzieć Coachowi coś o sobie: codzienność, cele, kontekst?"
},
"clinicianView": {
"title": "Udostępniona dokumentacja zdrowotna",
"period": "Okres raportu: {start}–{end}",
"expires": "Ten link wygasa dnia {date}.",
"provenance": "To jest tylko do odczytu podsumowanie udostępnione przez osobę, do której należy, wyeksportowane z jej samodzielnie rejestrowanych danych HealthLog. Wartości są zgłaszane samodzielnie i mogą obejmować odczyty zsynchronizowane z urządzeń; należy je traktować jako zgłoszone przez pacjenta, a nie jako badanie kliniczne.",
"labs": "Wyniki laboratoryjne",
"medications": "Leki i przestrzeganie zaleceń",
"bmi": "Wskaźnik masy ciała (BMI)",
"statSummary": "ostatnio {latest} (śr. {avg}, zakres {min}–{max})",
"statSummaryWithUnit": "ostatnio {latest} {unit} (śr. {avg} {unit}, zakres {min}–{max} {unit})",
"adherence": "{rate} przestrzegania",
"noAdherence": "—",
"glucose": {
"FASTING": "Glukoza (na czczo)",
"POSTPRANDIAL": "Glukoza (poposiłkowa)",
"RANDOM": "Glukoza (losowa)",
"BEDTIME": "Glukoza (przed snem)"
},
"wellness": {
"title": "Wyniki dobrostanu",
"disclaimer": "Opisowe wyniki (0–100) obliczone na podstawie śledzonych sygnałów. Nie są one oceną kliniczną ani diagnozą.",
"recovery": "Wynik regeneracji",
"stress": "Wynik stresu",
"strain": "Wynik obciążenia",
"score": "Wynik dobrostanu"
},
"footer": "Udostępnione z HealthLog, samodzielnie hostowanego trackera zdrowia.",
"unlock": {
"title": "Wprowadź hasło",
"description": "Ta udostępniona dokumentacja zdrowotna jest chroniona. Wprowadź otrzymane hasło, aby ją wyświetlić.",
"label": "Hasło",
"error": "To hasło jest nieprawidłowe.",
"submit": "Odblokuj"
},
"loadError": {
"title": "Nie udało się załadować udostępnionego widoku",
"description": "Podczas otwierania udostępnionej dokumentacji zdrowotnej wystąpił błąd. Link mógł wygasnąć lub wystąpił chwilowy problem. Spróbuj ponownie albo poproś osobę, która go udostępniła, o nowy link.",
"retry": "Spróbuj ponownie"
},
"documents": {
"title": "Dokumenty",
"untitled": "Dokument bez tytułu",
"download": "Pobierz",
"attachmentHint": "Ten plik zostanie pobrany na Twoje urządzenie (bez podglądu na stronie).",
"exifNote": "Metadane aparatu (EXIF/GPS) zostały usunięte z udostępnionych obrazów JPEG, PNG i WebP."
},
"downloadPdf": "Pobierz jako PDF",
"downloadFhir": "Pobierz jako FHIR",
"bmiSection": "Wskaźnik masy ciała",
"sectionEmpty": "Objęte tym linkiem, ale nic tu nie zapisano.",
"sectionUnavailable": "Objęte tym linkiem, ale ta część dokumentacji jest wyłączona na koncie źródłowym, więc nie zawiera danych.",
"lastInjection": "Ostatnie wstrzyknięcie",
"identity": {
"name": "Imię i nazwisko"
},
"doses": {
"title": "Zarejestrowane dawki",
"showing": "Pokazano {shown} najnowszych z {total} zarejestrowanych dawek."
},
"course": "Kuracja {n}",
"courseRange": "od {start} do {end}",
"courseSince": "od {start}",
"unavailable": {
"title": "Link wygasł lub jest nieprawidłowy",
"description": "Ten link udostępniania wygasł, został cofnięty lub jest niekompletny. Poproś osobę, która go udostępniła, o nowy link."
}
},
"cycle": {
"symptomCategory": {
"physical": "Fizyczne",
"emotional": "Emocjonalne",
"digestive": "Trawienne",
"custom": "Własne"
},
"symptom": {
"cramps": "Skurcze",
"headache": "Ból głowy",
"bloating": "Wzdęcia",
"acne": "Trądzik",
"breastTenderness": "Tkliwość piersi",
"fatigue": "Zmęczenie",
"backPain": "Ból pleców",
"insomnia": "Bezsenność",
"libidoHigh": "Wysokie libido",
"libidoLow": "Niskie libido",
"moodSwings": "Wahania nastroju",
"foodCravings": "Zachcianki",
"nausea": "Nudności",
"diarrhea": "Biegunka",
"constipation": "Zaparcia",
"custom": {
"add": "Dodaj objaw",
"label": "Nazwa",
"labelPlaceholder": "np. Zawroty głowy",
"icon": "Ikona",
"limitReached": "Osiągnięto limit własnych objawów.",
"remove": "Usuń {label}",
"removeTitle": "Usunąć ten objaw?",
"removeBody": "„{label}” zniknie z listy objawów. Dni już nim oznaczone zachowają go, ale nie wybierzesz go ponownie.",
"removeConfirm": "Usuń",
"fallbackLabel": "Objaw własny"
}
},
"prediction": {
"disclaimer": "Prognozy to szacunki na podstawie zapisanych danych, a nie porada medyczna ani metoda antykoncepcji. Dokładność rośnie wraz z liczbą zapisanych cykli."
},
"insights": {
"headline": {
"title": "Twój cykl i Twoje ciało",
"restingHeartRate": "Twoje tętno spoczynkowe jest o około {delta} {dir} w fazie lutealnej niż w fazie folikularnej.",
"heartRateVariability": "Twoja zmienność rytmu serca jest o około {delta} {dir} w fazie lutealnej niż w fazie folikularnej.",
"generic": "Twoje {metric} jest o około {delta} {dir} w fazie lutealnej niż w fazie folikularnej.",
"dirHigher": "wyższe",
"dirLower": "niższe",
"empty": "Za mało cykli i pomiarów, aby pokazać wzorzec fazy. Rejestruj dalej, a uzupełni się to wraz z historią."
},
"crosstab": {
"description": "Jak każdy pomiar wypada między fazą lutealną a folikularną, na Twoich danych.",
"pairLabel": "{metric}: faza lutealna vs folikularna",
"detail": "Lutealna {lutealAvg} ({lutealDays} dni) vs folikularna {follicularAvg} ({follicularDays} dni).",
"metricRestingHeartRate": "Tętno spoczynkowe",
"metricHrv": "Zmienność rytmu serca",
"metricSleepDuration": "Czas snu",
"metricSteps": "Kroki",
"metricWeight": "Waga",
"metricBasalBodyTemp": "Temperatura podstawowa",
"metricWristTemperature": "Nocna temperatura nadgarstka",
"metricSkinTemperature": "Temperatura skóry",
"metricBloodGlucose": "Glukoza we krwi",
"metricMood": "Nastrój"
},
"title": "Analizy cyklu",
"symptomPatternsTitle": "Wzorce objawów wg fazy",
"symptomPatternsEmpty": "Zapisuj objawy przez cały cykl, aby zobaczyć, w której fazie się grupują.",
"symptomMostlyIn": "Głównie w fazie {phase} ({count}/{total} dni)"
},
"phaseEducation": {
"title": "Co się teraz dzieje",
"whatsHappening": {
"MENSTRUAL": "Miesiączka to początek nowego cyklu, gdy złuszcza się błona śluzowa macicy. W tych pierwszych dniach energia i nastrój często są niższe.",
"FOLLICULAR": "Po miesiączce poziom estrogenu stopniowo rośnie, gdy organizm przygotowuje komórkę jajową. Wiele osób odczuwa w tej fazie bardziej stabilną energię.",
"OVULATORY": "W połowie cyklu uwalniana jest komórka jajowa, a płodność osiąga szczyt przez krótkie okno czasu. Ta faza jest najkrótsza z czterech.",
"LUTEAL": "Po owulacji rośnie poziom progesteronu i organizm się wycisza. W dniach przed kolejną miesiączką niektóre osoby zauważają zmiany przedmiesiączkowe."
},
"context": {
"MENSTRUAL": "Poziom hormonów jest teraz najniższy, dlatego te dni mogą sprawiać wrażenie spokojnego resetu. Niektóre osoby zauważają skurcze, lżejszy sen albo chęć zwolnienia tempa; inne przechodzą przez nie niemal bez zmian. To wszystko mieści się w normie, a odczucia potrafią zmieniać się z cyklu na cykl.",
"FOLLICULAR": "Wraz z rosnącym estrogenem wiele osób opisuje te dni jako jasne i pełne otwartości: sen często przychodzi łatwiej, a umysł wydaje się bardziej klarowny. Podstawowa temperatura ciała zwykle utrzymuje się w niższym zakresie aż do chwili tuż przed owulacją. Długość tej fazy różni się najbardziej, od osoby do osoby i od cyklu do cyklu.",
"OVULATORY": "Estrogen osiąga szczyt tuż przed uwolnieniem komórki jajowej, często z krótkim wzrostem nastroju i niewielkim podniesieniem podstawowej temperatury ciała w ciągu kolejnego dnia lub dwóch. Śluz szyjkowy w tym oknie zwykle staje się bardziej przejrzysty i ciągliwy. Krótkie ukłucie po jednej stronie niektóre osoby zauważają; wiele nie czuje nic, a oba warianty są zupełnie normalne.",
"LUTEAL": "Progesteron prowadzi przez drugą połowę cyklu, a podstawowa temperatura ciała zwykle ustala się nieco wyżej niż wcześniej. Niektóre osoby zauważają z dnia na dzień zmiany w śnie, apetycie, nastroju czy energii, podczas gdy inne czują się stabilnie przez cały czas. Ten wzorzec jest indywidualny i często wygląda inaczej z miesiąca na miesiąc."
},
"commonHere": "To często zauważasz tutaj",
"stillLearning": "Wciąż poznajemy Twój cykl. Zapisuj dalej, a to wypełni się wzorcami z Twoich własnych dni."
},
"insightsSummary": {
"title": "Twój cykl",
"currentDay": "Dzień {day} Twojego cyklu",
"noActiveCycle": "Brak aktywnego cyklu",
"viewDetails": "Zobacz analizy cyklu"
},
"wellnessRing": {
"label": "Cykl",
"loadError": "Nie udało się załadować twojego cyklu."
},
"disclaimer": "Te prognozy to opisowe szacunki na podstawie zapisanych danych, a nie metoda antykoncepcji ani porada medyczna. Nigdy nie oznaczają, że współżycie bez zabezpieczenia jest bezpieczne. W sprawach antykoncepcji lub decyzji medycznych skonsultuj się z pracownikiem ochrony zdrowia.",
"title": "Twój cykl",
"subtitle": "Zapisuj miesiączkę i objawy oraz sprawdzaj, co dalej.",
"tabs": {
"calendar": "Kalendarz",
"predictions": "Prognozy",
"insights": "Analizy",
"settings": "Ustawienia"
},
"logToday": "Zapisz dziś",
"startedPeriod": "Miesiączka zaczęła się dzisiaj",
"endedPeriod": "Miesiączka skończyła się dzisiaj",
"phase": {
"MENSTRUAL": "Miesiączkowa",
"FOLLICULAR": "Folikularna",
"OVULATORY": "Owulacyjna",
"LUTEAL": "Lutealna",
"none": "Brak fazy",
"label": "Faza"
},
"flow": {
"NONE": "Brak",
"SPOTTING": "Plamienie",
"LIGHT": "Słaby",
"MEDIUM": "Średni",
"HEAVY": "Obfity",
"label": "Krwawienie"
},
"ovulationTest": {
"NEGATIVE": "Negatywny",
"POSITIVE_LH_SURGE": "Skok LH",
"ESTROGEN_SURGE": "Skok estrogenu",
"INDETERMINATE": "Nieokreślony",
"label": "Test owulacyjny"
},
"mucus": {
"DRY": "Suchy",
"STICKY": "Lepki",
"CREAMY": "Kremowy",
"WATERY": "Wodnisty",
"EGG_WHITE": "Jak białko jaja",
"label": "Śluz szyjkowy"
},
"cervixPosition": {
"LOW": "Nisko",
"HIGH": "Wysoko"
},
"cervixFirmness": {
"FIRM": "Twarda",
"SOFT": "Miękka"
},
"cervixOpening": {
"CLOSED": "Zamknięta",
"OPEN": "Otwarta"
},
"goal": {
"GENERAL_HEALTH": "Ogólne zdrowie",
"AVOID_PREGNANCY": "Unikanie ciąży",
"TRYING_TO_CONCEIVE": "Staranie o dziecko",
"PERIMENOPAUSE": "Perimenopauza",
"OFF": "Śledzenie wyłączone",
"label": "W jakim celu śledzisz?",
"description": "To dostosowuje język i widoczne prognozy. Wskazówki dotyczące okna płodnego pojawiają się tylko przy staraniu o dziecko."
},
"ring": {
"dayOfCycle": "Dzień {day}",
"dayUnknown": "—",
"ariaPhase": "Dzień {day} cyklu, faza {phase}",
"ariaUnknown": "Brak aktywnego cyklu",
"caption": "twojego cyklu",
"firstPeriodCta": "Zapisz pierwszą miesiączkę",
"periodOverdue": "Okres jest późniejszy niż zwykle. Licznik dni jest wstrzymany, dopóki nie zapiszesz następnego okresu.",
"periodOverdueDays": "Okres jest {days} dni późniejszy niż zwykle. Licznik dni jest wstrzymany, dopóki nie zapiszesz następnego okresu.",
"logPeriodCta": "Zapisz okres"
},
"calendar": {
"legendPeriod": "Zapisana miesiączka",
"legendPredicted": "Prognozowana miesiączka",
"legendFertile": "Okno płodne",
"legendOvulation": "Owulacja",
"legendSymptoms": "Zapisane objawy",
"prevMonth": "Poprzedni miesiąc",
"nextMonth": "Następny miesiąc",
"loading": "Ładowanie kalendarza…",
"learning": "Uczymy się Twojego cyklu. Zapisz co najmniej trzy pełne cykle, a okno płodne, owulacja i fazy się uzupełnią. Do tego czasu kalendarz pokazuje tylko to, co zapisałaś.",
"legendSymptom": "Objawy",
"legendOvulationConfirmed": "Potwierdzona owulacja",
"flowSpotting": "plamienie",
"flowLight": "lekkie",
"flowMedium": "średnie",
"flowHeavy": "obfite",
"legendIntercourse": "Współżycie",
"legendOtherEntries": "Inne wpisy"
},
"predictions": {
"title": "Co dalej",
"nextPeriod": "Następna miesiączka",
"nextPeriodWindow": "{low}–{high}",
"fertileWindow": "Okno płodne",
"ovulation": "Szacowana owulacja",
"confidenceHigh": "Wysoka",
"confidenceMedium": "Średnia",
"confidenceLow": "Niska",
"stillLearning": "Wciąż się uczę",
"stillLearningBody": "Zapisz co najmniej trzy pełne cykle, a prognozy się wyostrzą. Do tego czasu to zgrubne oszacowanie.",
"rawMode": "Prognoza wyłączona",
"rawModeBody": "Wyłączyłaś prognozy: pokazywane są tylko zapisane dane, bez przewidywań.",
"none": "Brak prognozy. Zapisz miesiączkę, aby zacząć.",
"ovulationConfirmed": "Owulacja (potwierdzona)"
},
"history": {
"title": "Twoje cykle",
"avgLength": "Średnia długość",
"variability": "Zmienność",
"avgPeriodLength": "Średnia miesiączka",
"regularity": "Regularność",
"regularityREGULAR": "Regularny",
"regularityIRREGULAR": "Nieregularny",
"regularityLEARNING": "Uczenie",
"days": "{count} dni",
"daysPlusMinus": "± {count} dni",
"none": "Brak zapisanych cykli.",
"recentCycles": "Ostatnie cykle",
"ongoing": "w toku",
"periodDays": "okres {count} d",
"ovulationChip": "Owulacja",
"chartTitle": "Długość cyklu w czasie",
"chartCaption": "Każdy słupek to jeden cykl: różowa podstawa to miesiączka, reszta to długość cyklu.",
"chartAria": "Wykres długości {count} ostatnich cykli, średnio {avg} dni, sklasyfikowany jako {regularity}.",
"legendPeriodSegment": "Dni miesiączki",
"legendRestSegment": "Pozostała część cyklu"
},
"sheet": {
"title": "Zapisz swój dzień",
"description": "Krwawienie, objawy i notatki z tego dnia.",
"flow": "Krwawienie",
"symptoms": "Objawy",
"temperature": "Podstawowa temperatura ciała",
"temperatureDisturbed": "Oznacz pomiar jako zakłócony",
"temperatureDisturbedHint": "Gorączka, choroba, alkohol lub spóźniony pomiar: wykluczony z oceny temperatury.",
"ovulationTest": "Test owulacyjny",
"mucus": "Śluz szyjkowy",
"cervix": "Szyjka macicy",
"cervixPosition": "Położenie",
"cervixFirmness": "Twardość",
"cervixOpening": "Rozwarcie",
"intercourse": "Współżycie",
"protected": "Zabezpieczone",
"note": "Notatka",
"notePlaceholder": "Cokolwiek chcesz zapamiętać z dzisiaj…",
"save": "Zapisz",
"saving": "Zapisywanie…",
"cancel": "Anuluj",
"saveError": "Nie udało się zapisać. Spróbuj ponownie.",
"emptyHint": "Wybierz krwawienie lub objaw, aby zapisać ten dzień, albo użyj przycisku początku miesiączki powyżej.",
"intermenstrualBleeding": "Plamienie między okresami",
"pregnancyTest": "Test ciążowy",
"progesteroneTest": "Test progesteronu",
"contraceptive": "Antykoncepcja",
"severity": "Nasilenie",
"severityLevel": "Nasilenie {level} z 4",
"delete": "Usuń",
"deleteTitle": "Usunąć ten dzień?",
"deleteBody": "Zniknie wszystko, co zapisano tego dnia: krwawienie, temperatura, objawy i twoja notatka. Nie da się tego przywrócić.",
"deleteConfirm": "Usuń dzień",
"temperatureSection": "Temperatura i owulacja",
"intimacySection": "Intymność i antykoncepcja",
"testsSection": "Testy",
"phaseDayHeader": "Dzień {day}, {phase}",
"bbtHint": "Zmierz ją rano zaraz po przebudzeniu, przed wstaniem.",
"titleForDate": "Wpis z {date}",
"descriptionToday": "Dzisiaj. Krwawienie, objawy i notatki.",
"deleteBodyCycleStart": "Ten dzień otwiera cykl. Usunięcie go kasuje razem z nim początek miesiączki, więc poprzedni cykl biegnie dalej jak wcześniej. Znika też wszystko, co tu zapisano: krwawienie, temperatura, objawy i twoja notatka. Nie da się tego cofnąć."
},
"settings": {
"title": "Ustawienia cyklu",
"typicalCycleLength": "Typowa długość cyklu (dni)",
"typicalPeriodLength": "Typowa długość miesiączki (dni)",
"lutealPhaseLength": "Długość fazy lutealnej (dni)",
"priorsDescription": "Te wartości pomagają prognozom, zanim zapiszesz wiele cykli. Zostaw puste, aby użyć wartości domyślnych.",
"rawChartMode": "Tryb surowego wykresu",
"rawChartModeDescription": "Pokazuj tylko zapisane dane, bez prognoz i interpretacji.",
"secondarySymptomLabel": "Drugi objaw płodności",
"secondarySymptomDescription": "Drugi objaw łączony z temperaturą w podwójnej kontroli objawowo-termicznej. Większość obserwuje śluz szyjkowy; przełącz na obserwację szyjki macicy, jeśli wolisz.",
"secondarySymptomCitation": "Więcej o metodzie (badanie)",
"secondarySymptom": {
"MUCUS": "Śluz szyjkowy",
"CERVIX": "Szyjka macicy"
},
"prediction": "Prognozy",
"predictionDescription": "Prognozuj następną miesiączkę oraz, gdy to istotne, okno płodne.",
"encryption": "Szyfruj wrażliwe wpisy",
"encryptionDescription": "Szyfruj w spoczynku pola ujawniające intencje (testy ciążowe, antykoncepcja, współżycie), obok zawsze szyfrowanych notatek.",
"discreet": "Dyskretne powiadomienia",
"discreetDescription": "Ukryj szczegóły cyklu w treści powiadomień na ekranie blokady.",
"saved": "Ustawienia zapisane",
"saveError": "Nie udało się zapisać. Spróbuj ponownie.",
"save": "Zapisz",
"reminders": "Przypomnienia",
"remindersDescription": "Włącz przypomnienia o okresie dla każdego kanału w ustawieniach powiadomień.",
"remindersLink": "Ustawienia powiadomień",
"fertileReminder": "Przypomnienie o oknie płodności",
"fertileReminderDescription": "Otrzymaj powiadomienie kilka dni przed szacowanym oknem płodności. Domyślnie wyłączone; włącz je dla każdego kanału w ustawieniach powiadomień."
},
"testResult": {
"POSITIVE": "Pozytywny",
"NEGATIVE": "Negatywny",
"INDETERMINATE": "Niejasny"
},
"contraceptive": {
"NONE": "Brak",
"UNSPECIFIED": "Inne",
"IMPLANT": "Implant",
"INJECTION": "Zastrzyk",
"IUD": "Wkładka",
"INTRAVAGINAL_RING": "Krążek",
"ORAL": "Tabletka",
"PATCH": "Plaster",
"EMERGENCY": "Awaryjna"
},
"loadError": "Nie udało się wczytać danych cyklu.",
"saveError": "Nie udało się zapisać wpisu cyklu.",
"deleteError": "Nie udało się usunąć wpisu.",
"bbt": {
"title": "Podstawowa temperatura ciała",
"caption": "Twoja poranna temperatura w tym cyklu. Trwały wzrost o około 0,2 °C następuje po owulacji.",
"empty": "Brak pomiarów temperatury",
"emptyHint": "Zapisuj podstawową temperaturę ciała każdego ranka, aby zobaczyć przesunięcie temperatury w cyklu.",
"ovulationEstimate": "Szac. owulacja",
"tooltipTemp": "{temp} {unit}",
"ovulationConfirmed": "Potwierdzona owulacja"
},
"fieldInfo": {
"bbt": "Twoja temperatura spoczynkowa, mierzona rano zaraz po przebudzeniu, przed wstaniem. Po owulacji nieznacznie rośnie (o około 0,2–0,3 °C).",
"bbtLabel": "Czym jest temperatura podstawowa?",
"mucus": "Wydzielina z pochwy zmienia się w cyklu: od suchej lub lepkiej do kremowej, a następnie wodnistej i przypominającej białko jaja w najbardziej płodnych dniach.",
"mucusLabel": "Czym jest śluz szyjkowy?",
"ovulationTest": "Domowy test moczu wykrywający skok LH, czyli wyrzut hormonu około 24–36 h przed owulacją. Wynik dodatni wskazuje najbardziej płodne okno.",
"ovulationTestLabel": "Czym jest test owulacyjny?",
"spotting": "Lekkie krwawienie poza okresem.",
"spottingLabel": "Czym jest plamienie między okresami?",
"pregnancyTest": "Wynik domowego testu ciążowego (hCG).",
"pregnancyTestLabel": "Czym jest test ciążowy?",
"progesteroneTest": "Test potwierdzający, że doszło do owulacji: progesteron rośnie po niej.",
"progesteroneTestLabel": "Czym jest test progesteronu?",
"intercourse": "Czy tego dnia doszło do stosunku.",
"intercourseLabel": "Co śledzi stosunek?",
"protected": "Czy podczas stosunku zastosowano antykoncepcję.",
"protectedLabel": "Co oznacza zabezpieczony?"
},
"saveSuccess": "Wpis zapisany",
"deleteSuccess": "Wpis usunięty",
"periodStartSaved": "Początek miesiączki zapisany",
"periodEndSaved": "Koniec miesiączki zapisany",
"startedPeriodOnDate": "Miesiączka zaczęła się tego dnia",
"endedPeriodOnDate": "Miesiączka skończyła się tego dnia",
"startAbsorbed": "Początek miesiączki zapisany. Twój początek z {absorbed} został połączony z {date}.",
"startRestored": "Zapisano. Początek z {dates} jest z powrotem."
},
"cycleReminders": {
"periodSoonTitle": "Miesiączka prawdopodobnie wkrótce",
"periodSoonBody": "Twoja następna miesiączka jest przewidywana za około dwa dni.",
"periodConfirmTitle": "Czy miesiączka się zaczęła?",
"periodConfirmBody": "Twoja miesiączka była przewidywana mniej więcej teraz. Zapisz ją, aby prognozy pozostały dokładne.",
"fertileSoonTitle": "Zbliża się okno płodności",
"fertileSoonBody": "Szacowane okno płodności rozpocznie się prawdopodobnie za około dwa dni. To szacunek, a nie gwarancja medyczna ani antykoncepcyjna.",
"discreetTitle": "Przypomnienie HealthLog",
"discreetBody": "Masz przypomnienie w HealthLog."
},
"dataList": {
"allSources": "Wszystkie źródła",
"dateFrom": "Od",
"dateTo": "Do",
"dateRange": "Zakres dat",
"valueRange": "Wartość",
"valueMin": "Min.",
"valueMax": "Maks.",
"typeLabel": "Typ",
"sourceLabel": "Źródło",
"resetFilters": "Resetuj",
"clearFilter": "Usuń filtr: {label}",
"selectAll": "Zaznacz wszystko na tej stronie",
"selectRow": "Zaznacz wiersz",
"selected": "Zaznaczono: {count}",
"deleteN": "Usuń ({count})",
"clearSelection": "Wyczyść zaznaczenie",
"selectionBarLabel": "Akcje zaznaczenia"
},
"measurementReminders": {
"sectionTitle": "Badania",
"sectionDescription": "Przypomnienia, co, kiedy i gdzie zmierzyć lub sprawdzić.",
"markDone": "Gotowe",
"delete": "Usuń",
"deleteConfirmTitle": "Usunąć przypomnienie?",
"deleteConfirmDescription": "To przypomnienie o badaniu zostanie trwale usunięte.",
"postpone": {
"menuItem": "Przełóż…",
"title": "Przełóż termin",
"description": "Przesuwa tylko bieżący termin, a regularny rytm pozostaje bez zmian.",
"chip": "+{days} dni",
"dateLabel": "Nowa data",
"confirm": "Przełóż"
},
"skip": {
"heading": "Pomiń ten termin",
"explainer": "Zapisane uczciwie jako pominięte, nie jako wykonane. Odstęp zaczyna się od nowa od dzisiaj.",
"action": "Pomiń",
"confirmTitle": "Pominąć ten termin?"
},
"snoozedUntil": "Przełożono do {date}",
"skippedOn": "Pominięto {date}",
"skipCount": "pominięto {count} razy",
"disabledBadge": "Wył.",
"nextDue": {
"none": "Niezaplanowane",
"today": "Termin dzisiaj",
"tomorrow": "Termin jutro",
"inDays": "Za {days} dni"
},
"overdueByDays": "Zaległe od {days} dni",
"overdueSinceYesterday": "Zaległe od wczoraj",
"cadence": {
"everyNDays": "Co {days} dni",
"custom": "Własny harmonogram",
"customInterval": "Niestandardowe (co N dni)",
"rruleOption": "Własna reguła (RRULE)"
},
"location": {
"prefix": "U: {location}"
},
"types": {
"WEIGHT": "Waga",
"BLOOD_PRESSURE_SYS": "Ciśnienie krwi",
"PULSE": "Tętno",
"BLOOD_GLUCOSE": "Glukoza we krwi",
"OXYGEN_SATURATION": "Saturacja tlenem",
"BODY_FAT": "Tkanka tłuszczowa",
"BODY_TEMPERATURE": "Temperatura ciała",
"FAT_MASS": "Masa tłuszczowa",
"FAT_FREE_MASS": "Masa beztłuszczowa",
"MUSCLE_MASS": "Masa mięśniowa",
"LEAN_BODY_MASS": "Masa szczupła",
"BONE_MASS": "Masa kostna",
"TOTAL_BODY_WATER": "Woda w organizmie",
"VISCERAL_FAT": "Tłuszcz trzewny",
"BODY_MASS_INDEX": "Wskaźnik masy ciała (BMI)",
"WAIST_CIRCUMFERENCE": "Obwód talii",
"PHQ9_SCORE": "PHQ-9 (nastrój)",
"GAD7_SCORE": "GAD-7 (lęk)",
"WHO5_SCORE": "WHO-5 (dobrostan)",
"SCI_SCORE": "SCI (sen)"
},
"typeGroups": {
"vitals": "Parametry życiowe",
"bodyComposition": "Skład ciała",
"mentalWellbeing": "Dobrostan psychiczny"
},
"empty": {
"title": "Brak przypomnień",
"description": "Dodaj przypomnienie, aby regularnie mierzyć ciśnienie krwi lub zaplanować coroczne badanie krwi."
},
"form": {
"label": "Etykieta",
"labelPlaceholder": "np. Zmierz ciśnienie krwi",
"kind": "Typ",
"kindType": "Powiązane z pomiarem",
"kindFreeText": "Sprawdzenie tekstowe",
"measurementType": "Pomiar",
"cadence": "Powtarzaj",
"notifyHour": "Przypomnij o",
"location": "Gdzie (opcjonalnie)",
"locationPlaceholder": "np. Lekarz, Laboratorium",
"save": "Zapisz",
"createTitle": "Nowe przypomnienie",
"editTitle": "Edytuj przypomnienie",
"customInterval": "Powtarzaj co (dni)",
"rrule": "Reguła powtarzania (RRULE)",
"rruleHint": "RFC-5545, np. FREQ=YEARLY dla corocznego badania.",
"firstDue": "Pierwszy termin (opcjonalnie)"
},
"pushTitle": "Przypomnienie o badaniu",
"pushBody": "Czas na: {label}",
"pushLocation": "(u {location})",
"edit": "Edytuj",
"originCoach": "Coach",
"until": "Do {date}",
"selfPlanned": "Zaplanowane samodzielnie",
"captureValue": "Zapisz wartość",
"measureNow": "Zmierz teraz",
"startCheckIn": "Rozpocznij check-in",
"nextDueLabel": "Następny termin:",
"lastDoneLabel": "Ostatnio wykonano:",
"customize": "Dostosuj badania",
"adherence": {
"label": "W interwale",
"onTrack": "Zgodnie z planem",
"due": "Termin teraz"
},
"capture": {
"title": "Zapisz pomiar",
"description": "Wpisz wartość; przypomnienie zostanie oznaczone jako wykonane."
},
"manage": {
"empty": "Brak przypomnień do dostosowania."
},
"dashboard": {
"empty": "Brak nadchodzących przypomnień o badaniach.",
"openLink": "Otwórz badania"
},
"showMeasurements": "Pokaż pomiary",
"loadError": "Nie udało się załadować przypomnień.",
"fileVisit": "Zapisz wizytę"
},
"moduleList": {
"viewToggleLabel": "Widok",
"viewCards": "Widok kart",
"viewList": "Widok listy",
"viewHeading": "Widok",
"viewDescription": "Wybierz, czy pozycje mają być pokazywane jako karty czy jako zwarta lista.",
"reorder": {
"heading": "Kolejność",
"description": "Przeciągnij pozycje, aby ustawić kolejność ich wyświetlania.",
"empty": "Brak pozycji do uporządkowania."
}
},
"labs": {
"title": "Wyniki badań",
"subtitle": "Badania krwi i biomarkery",
"addResult": "Dodaj wynik",
"addDescription": "Zapisz biomarker z wyniku laboratoryjnego.",
"addFirst": "Dodaj pierwszy wynik",
"emptyTitle": "Brak wyników badań",
"emptyDescription": "Zapisuj badania takie jak HbA1c, LDL czy ferrytyna, aby śledzić je w czasie i udostępniać lekarzowi.",
"referenceLabel": "Norma",
"readingsCount": "{count} pomiarów",
"deleteConfirmTitle": "Usunąć wynik laboratoryjny?",
"deleteConfirmDescription": "Ten wynik laboratoryjny zostanie usunięty. Zaraz po usunięciu możesz to przez chwilę cofnąć.",
"deletedToast": "Wynik usunięty",
"deleteError": "Nie udało się usunąć wyniku",
"loadError": "Nie udało się wczytać wyników",
"customize": "Dostosuj wyniki badań",
"localOcr": {
"heading": "Odczytuj skany na tym urządzeniu",
"description": "Odczytuje zdjęcie na Twoim urządzeniu i wysyła do dostawcy tylko rozpoznany tekst.",
"detail": "Przydatne, gdy dostawca AI nie odczytuje obrazów. Mniej dokładne, więc sprawdź każdą wartość przed zapisem."
},
"sort": {
"heading": "Sortowanie",
"label": "Kolejność wartości",
"recentDesc": "Najnowszy pomiar najpierw",
"recentAsc": "Najstarszy pomiar najpierw",
"alphaAsc": "Nazwa (A–Z)",
"alphaDesc": "Nazwa (Z–A)",
"manual": "Sortuj ręcznie",
"hint": "Przy sortowaniu ręcznym możesz przeciągnąć biomarkery poniżej we własnej kolejności."
},
"range": {
"inRange": "W normie",
"below": "Poniżej normy",
"above": "Powyżej normy"
},
"form": {
"value": "Wartość",
"takenAt": "Data pobrania",
"note": "Notatka",
"notePlaceholder": "Opcjonalny kontekst tego wyniku",
"requiredError": "Podaj wartość.",
"save": "Zapisz",
"saveAndAddAnother": "Zapisz i dodaj kolejny",
"savedToast": "Wynik zapisany",
"saveError": "Nie udało się zapisać wyniku",
"biomarker": "Biomarker",
"biomarkerPlaceholder": "Wybierz biomarker",
"defineNew": "+ Zdefiniuj nowy biomarker",
"noBiomarkersHint": "Najpierw zdefiniuj biomarker, aby zapisać wartość.",
"pickBiomarkerError": "Najpierw wybierz biomarker.",
"resultType": "Typ wyniku",
"numeric": "Liczbowy",
"qualitative": "Jakościowy",
"qualitativeResult": "Wynik",
"qualitativePlaceholder": "np. ujemny",
"qualNegative": "ujemny",
"qualPositive": "dodatni",
"qualBorderline": "graniczny",
"sourceRange": "Zakres wydrukowany na wyniku",
"sourceRangePlaceholder": "np. 3,5 - 5,0 lub < 5",
"sourceRangeAdd": "+ Dodaj zakres z wyniku",
"sourceRangeHint": "Opcjonalne. Dotyczy tylko tego pomiaru; zapisany zakres pozostaje bez zmian.",
"sourceRangeUnparsed": "Zapisane bez zmian, nie odczytano z tego zakresu liczbowego."
},
"backToLabs": "Wróć do wyników",
"hasNote": "Notatka",
"editTitle": "Edytuj pomiar",
"editDescription": "Popraw wartość, datę lub notatkę tego pomiaru.",
"editedToast": "Pomiar zaktualizowany",
"editError": "Nie udało się zaktualizować pomiaru",
"editTimestampError": "Podaj prawidłową datę.",
"editReading": "Edytuj pomiar",
"deleteReading": "Usuń pomiar",
"restoredToast": "Pomiar przywrócony",
"restoreError": "Nie udało się przywrócić pomiaru",
"detail": {
"emptyTitle": "Brak pomiarów",
"emptyDescription": "Dodaj wartość, aby śledzić ten biomarker w czasie.",
"title": "Biomarker",
"genericDescription": "Biomarker laboratoryjny, który śledzisz. Dodaj pomiary, aby obserwować jego trend względem zakresu referencyjnego.",
"valuesTitle": "{marker}: wszystkie odczyty",
"valuesDescription": "Każdy odczyt tego biomarkera. Edytuj lub usuń wpis bezpośrednio.",
"backToMarker": "Powrót do {marker}",
"latestResult": "Ostatni wynik"
},
"chart": {
"empty": "Brak pomiarów w tym okresie.",
"valueLabel": "Wartość",
"range": {
"30": "30 d",
"90": "90 d",
"365": "1 r",
"all": "Wszystko"
},
"sourceRangeLabel": "Zakres z wyniku",
"sourceBandLegend": "Drugie pasmo: zakres wydrukowany na wyniku z {date}.",
"sourceBandMixed": "Drugie pasmo: zakres z najnowszego wyniku. Wcześniejsze wyniki w tym okresie podają inne zakresy."
},
"biomarker": {
"manageTitle": "Biomarkery",
"managerDescription": "Zdefiniuj marker raz, a jednostka i zakres będą używane dla każdego pomiaru.",
"define": "Zdefiniuj",
"defineFirst": "Zdefiniuj pierwszy biomarker",
"defineTitle": "Zdefiniuj biomarker",
"defineDescription": "Ustaw nazwę, jednostkę i zakres raz. Marker wybierasz przy dodawaniu wartości.",
"editTitle": "Edytuj biomarker",
"edit": "Edytuj",
"delete": "Usuń",
"deletedToast": "Biomarker usunięty",
"deleteError": "Nie udało się usunąć biomarkera",
"deleteConfirmTitle": "Usunąć biomarker?",
"deleteConfirmDescription": "Biomarker i wszystkie jego zapisane wartości zostaną trwale usunięte. Tej operacji nie można cofnąć.",
"emptyTitle": "Brak biomarkerów",
"emptyDescription": "Zdefiniuj markery, takie jak LDL lub HbA1c, aby zapisywać wartości.",
"loadError": "Nie udało się wczytać biomarkerów",
"noRange": "Brak zakresu referencyjnego",
"form": {
"seedLabel": "Zacznij od popularnego markera",
"seedPlaceholder": "Wybierz marker (opcjonalnie)",
"seedHint": "Wybór wypełnia pola poniżej. Dopasuj zakres do swojego laboratorium.",
"name": "Nazwa",
"namePlaceholder": "np. Cholesterol LDL",
"unit": "Jednostka",
"unitPlaceholder": "np. mg/dl",
"unitLockedHint": "Gdy ten marker ma już wyniki, jego jednostka pozostaje bez zmian. W przeciwnym razie zapisane wartości byłyby pokazywane w nowej jednostce bez przeliczenia.",
"panel": "Panel",
"panelPlaceholder": "np. Lipidy",
"lowerBound": "Dolna granica",
"upperBound": "Górna granica",
"lowerPlaceholder": "Dolna granica",
"upperPlaceholder": "Górna granica",
"context": "Kontekst",
"contextPlaceholder": "Opcjonalna notatka o tym markerze",
"rangeHint": "Obie granice są opcjonalne. Zostaw jedną pustą dla zakresu otwartego (np. LDL < 116).",
"requiredError": "Nazwa i jednostka są wymagane.",
"rangeOrderError": "Dolna granica nie może przekraczać górnej.",
"save": "Zapisz biomarker",
"savedToast": "Biomarker zapisany",
"updatedToast": "Biomarker zaktualizowany",
"saveError": "Nie udało się zapisać biomarkera"
},
"hide": "Ukryj",
"unhide": "Przywróć",
"hiddenToast": "Biomarker ukryty",
"unhiddenToast": "Biomarker przywrócony",
"hideError": "Nie udało się zaktualizować biomarkera",
"allHidden": "Wszystkie biomarkery są ukryte.",
"hiddenSection": "Ukryte"
},
"catalog": {
"total-cholesterol": "Cholesterol całkowity",
"ldl": "Cholesterol LDL",
"hdl": "Cholesterol HDL",
"triglycerides": "Trójglicerydy",
"fasting-glucose": "Glukoza na czczo",
"hba1c": "HbA1c",
"tsh": "TSH",
"ft3": "Wolne T3",
"ft4": "Wolne T4",
"ferritin": "Ferrytyna",
"transferrin-saturation": "Wysycenie transferyny",
"vitamin-d": "Witamina D (25-OH)",
"vitamin-b12": "Witamina B12",
"folate": "Kwas foliowy",
"hs-crp": "hs-CRP",
"creatinine": "Kreatynina",
"egfr": "eGFR",
"alt": "ALT",
"ast": "AST",
"ggt": "GGTP",
"sodium": "Sód",
"potassium": "Potas",
"hemoglobin": "Hemoglobina",
"hematocrit": "Hematokryt",
"wbc": "Leukocyty",
"platelets": "Płytki krwi",
"panel": {
"lipids": "Lipidy",
"glucose": "Metabolizm glukozy",
"thyroid": "Tarczyca",
"iron": "Żelazo",
"vitamins": "Witaminy",
"inflammation": "Stan zapalny",
"renal": "Nerki",
"liver": "Wątroba",
"electrolytes": "Elektrolity",
"bloodCount": "Morfologia krwi"
},
"desc": {
"total-cholesterol": "Cholesterol całkowity to suma cholesterolu przenoszonego przez wszystkie cząstki lipoprotein we krwi, w tym frakcje LDL, HDL i pozostałości. Sam cholesterol jest niezbędnym budulcem błon komórkowych, hormonów i kwasów żółciowych. Jako pojedyncza liczba pozostaje miarą zgrubną, ponieważ zarówno wysoki udział HDL, jak i wysoki udział LDL podnoszą sumę, dlatego zwykle odczytuje się go wraz z poszczególnymi frakcjami. Oznacza się go przede wszystkim w ramach długoterminowej oceny ryzyka sercowo-naczyniowego.",
"ldl": "Cholesterol LDL to cholesterol przenoszony przez cząstki lipoprotein o małej gęstości, czyli frakcja, która dostarcza cholesterol do tkanek, ale może też odkładać go w ścianach tętnic. Przez lata odkładanie to przyczynia się do blaszki miażdżycowej, dlatego LDL jest jednym z najbaczniej obserwowanych markerów lipidowych. Mniejsza ekspozycja w długim okresie zwykle wiąże się z niższym ryzykiem sercowo-naczyniowym. Interpretuje się go według kategorii ryzyka, a nie wobec jednej stałej wartości prawidłowej.",
"hdl": "Cholesterol HDL to cholesterol przenoszony przez cząstki lipoprotein o dużej gęstości, które zbierają nadmiar cholesterolu z tkanek i odprowadzają go do wątroby w celu ponownego wykorzystania lub usunięcia. Z powodu tej funkcji transportowej często nazywa się go frakcją ochronną. Bardzo niskie wartości zwykle towarzyszą wyższemu ryzyku sercowo-naczyniowemu, jednak sztuczne jego podnoszenie nie obniżało ryzyka w sposób wiarygodny, dlatego odczytuje się go jako marker, a nie cel. Zwykle interpretuje się go razem z LDL i trójglicerydami.",
"triglycerides": "Trójglicerydy to główna postać tłuszczu krążącego we krwi, dostarczana zarówno z dietą, jak i wytwarzana przez wątrobę, i stanowią kluczowy zapas energii. Wartości rosną po posiłkach, dlatego próbkę pobiera się zwykle na czczo, aby była porównywalna. Utrzymujące się wysokie trójglicerydy wiążą się z ryzykiem metabolicznym i sercowo-naczyniowym i często towarzyszą insulinooporności oraz niskiemu HDL. Odczytuje się je jako jeden ze składników całościowego obrazu lipidowego.",
"fasting-glucose": "Glukoza na czczo to stężenie cukru we krwi mierzone po nocnym poście, odzwierciedlające, jak organizm utrzymuje swój podstawowy poziom cukru bez niedawnego posiłku. Glukoza jest głównym natychmiastowym paliwem organizmu, a insulina utrzymuje ją zwykle w wąskim zakresie. Pomiar na czczo eliminuje wpływ niedawnych posiłków, co czyni go standardowym badaniem przesiewowym działania regulacji glukozy. To jeden z markerów, którymi ocenia się zdrowie metaboliczne w czasie.",
"hba1c": "HbA1c to odsetek hemoglobiny w czerwonych krwinkach, który związał się z glukozą i gromadzi się proporcjonalnie do średniej ekspozycji na cukier we krwi. Ponieważ czerwone krwinki żyją około trzech miesięcy, odzwierciedla średnie stężenie glukozy z poprzednich dwóch–trzech miesięcy, a nie pojedynczej chwili. Czyni to z niego stabilny, niezależny od posiłków obraz kontroli glikemii. Jego wiarygodność mogą zaburzać stany zmieniające czas życia czerwonych krwinek.",
"tsh": "TSH (hormon tyreotropowy) jest uwalniany przez przysadkę, aby sygnalizować tarczycy wytwarzanie jej hormonów, i dostosowuje się w górę lub w dół, by utrzymać je w równowadze. Dzięki tej pętli sprzężenia zwrotnego TSH jest najczulszym badaniem przesiewowym pierwszego rzutu funkcji tarczycy: zwykle zmienia się, zanim same hormony tarczycy odbiegną od normy. Podwyższona lub obniżona wartość wskazuje na niedoczynną lub nadczynną tarczycę i zwykle prowadzi do bezpośredniego oznaczenia hormonów tarczycy. Ciąża i wiek przesuwają oczekiwany zakres.",
"ft3": "Wolne T3 (trójjodotyronina) to niezwiązana, biologicznie czynna postać silniejszego hormonu tarczycy, czyli frakcja dostępna do działania na tkanki. Większość krążącego T3 jest związana z białkami nośnikowymi i nieaktywna, dlatego wolna część odzwierciedla rzeczywistą dostępność hormonu. Oznacza się je, aby scharakteryzować funkcję tarczycy, zwłaszcza wraz z TSH i wolnym T4, gdy wyniki są niejasne. Wartości silnie zależą od metody oznaczenia i odczytuje się je w kontekście klinicznym.",
"ft4": "Wolne T4 (tyroksyna) to niezwiązana postać głównego hormonu, który tarczyca uwalnia do krwi; służy jako rezerwa, którą tkanki w razie potrzeby przekształcają w bardziej aktywne T3. Wolna frakcja odzwierciedla to, co jest faktycznie dostępne dla organizmu, niezależnie od poziomu białek nośnikowych. Zwykle oznacza się je wraz z TSH, aby odróżnić problemy samej tarczycy od zaburzeń sygnalizacji przysadkowej. Ciąża i niektóre leki mogą je przesuwać.",
"ferritin": "Ferrytyna to główne białko magazynujące żelazo w organizmie, a jej poziom we krwi z grubsza odzwierciedla całkowite zapasy żelaza. Niska wartość wskazuje na wyczerpane zapasy, a wysoka może odzwierciedlać przeładowanie żelazem lub po prostu stan zapalny, ponieważ ferrytyna rośnie także jako białko ostrej fazy. Z tego powodu często interpretuje się ją wraz z innymi markerami żelaza i oznakami zapalenia. To jedna z podstawowych miar oceny gospodarki żelazem.",
"transferrin-saturation": "Wysycenie transferyny to odsetek transferyny (białka przenoszącego żelazo we krwi), który jest aktualnie obładowany żelazem. Łączy ono ilość żelaza w transporcie ze zdolnością organizmu do jego przenoszenia, dając migawkę dostępności żelaza, która uzupełnia obraz zapasów dawany przez ferrytynę. Niskie wysycenie sugeruje niedobór żelaza, a wysoka wartość może wskazywać na przeładowanie. Odczytuje się je wraz z ferrytyną i pełnym profilem żelaza.",
"vitamin-d": "Witaminę D oznacza się jako 25-hydroksywitaminę D, krążącą postać magazynową i standardowy marker ogólnego stanu witaminy D. Organizm wytwarza ją w skórze wystawionej na światło słoneczne i część przyswaja z pożywienia; wspiera ona gospodarkę wapniową, zdrowie kości i funkcję odpornościową. Wartości zmieniają się wraz z porą roku, szerokością geograficzną, odcieniem skóry i suplementacją. Oznacza się ją, aby z czasem ocenić, czy zapasy są wystarczające.",
"vitamin-b12": "Witamina B12 (kobalamina) to niezbędna witamina pozyskiwana głównie z produktów pochodzenia zwierzęcego i magazynowana w dużej mierze w wątrobie. Jest potrzebna do tworzenia czerwonych krwinek, syntezy DNA i zdrowia układu nerwowego. Długotrwały niedobór (z powodu małego spożycia lub upośledzonego wchłaniania) może prowadzić do niedokrwistości i objawów neurologicznych. Oznacza się ją, aby ocenić stan odżywienia, zwłaszcza tam, gdzie spożycie lub wchłanianie mogą być ograniczone.",
"folate": "Foliany (witamina B9) to witamina z grupy B obecna w zielonych warzywach liściastych, roślinach strączkowych i żywności wzbogacanej, kluczowa dla tworzenia czerwonych krwinek i syntezy DNA. Działa w ścisłym powiązaniu z witaminą B12, a niedobór któregokolwiek z nich może wywołać podobny rodzaj niedokrwistości. Odpowiednia ilość folianów jest szczególnie ważna na początku ciąży dla zdrowego rozwoju płodu. Oznacza się je, aby ocenić stan odżywienia i przyczynę niektórych niedokrwistości.",
"hs-crp": "Wysokoczułe CRP mierzy białko C-reaktywne, marker uwalniany przez wątrobę w odpowiedzi na stan zapalny, metodą dostrojoną do wykrywania niskich stężeń istotnych dla ryzyka sercowo-naczyniowego. W odróżnieniu od standardowego CRP stosowanego przy ostrych infekcjach wersja wysokoczuła wychwytuje subtelny, przewlekły stan zapalny powiązany z chorobą naczyń. Ponieważ każda niedawna infekcja lub uraz może je podnieść, interpretuje się je z dala od ostrej choroby i często potwierdza powtórną próbką. Odczytuje się je jako jeden z czynników całościowego ryzyka sercowo-naczyniowego.",
"creatinine": "Kreatynina to produkt przemiany materii prawidłowego metabolizmu mięśni, który nerki filtrują z krwi w dość stałym tempie. Ponieważ jej wytwarzanie jest stosunkowo stałe, jej poziom we krwi służy jako praktyczna miara tego, jak dobrze nerki usuwają produkty przemiany materii. Na wartości wpływają też masa mięśniowa, nawodnienie i dieta, dlatego zwykle interpretuje się je wraz z szacowanym współczynnikiem filtracji. To podstawowy marker funkcji nerek.",
"egfr": "eGFR (szacowany współczynnik filtracji kłębuszkowej) szacuje, ile krwi nerki filtrują w ciągu minuty, na podstawie kreatyniny oraz wieku i płci. Przekłada surową wartość kreatyniny na bardziej bezpośrednio zrozumiałą miarę funkcji nerek. Spadek eGFR w czasie to główny sposób klasyfikowania i śledzenia przewlekłych zmian w nerkach. Jako wartość szacunkowa odczytuje się go jako trend, a nie pojedynczą dokładną liczbę.",
"alt": "ALT (aminotransferaza alaninowa) to enzym skupiony w komórkach wątroby, uwalniany do krwi, gdy komórki te są obciążone lub uszkodzone. Ponieważ jest stosunkowo swoisty dla wątroby, należy do głównych markerów wykrywania uszkodzenia lub zapalenia wątroby. Wartości mogą rosnąć przy stłuszczeniu wątroby, wirusowym zapaleniu wątroby, alkoholu lub niektórych lekach. Zwykle odczytuje się go wraz z AST i pozostałymi markerami profilu wątrobowego.",
"ast": "AST (aminotransferaza asparaginianowa) to enzym obecny w wątrobie, ale także w mięśniach, sercu i czerwonych krwinkach, uwalniany przy uszkodzeniu którejkolwiek z tych tkanek. Ponieważ jest mniej swoisty dla wątroby niż ALT, oba interpretuje się razem, a ich stosunek może wskazywać na źródło i charakter problemu. Intensywny wysiłek lub uraz mięśni mogą go podnieść niezależnie od wątroby. To jeden ze standardowych enzymów profilu wątrobowego.",
"ggt": "GGT (gamma-glutamylotransferaza) to enzym wątroby i dróg żółciowych, który rośnie zwłaszcza przy utrudnionym odpływie żółci lub w wyniku ekspozycji na alkohol. Często służy do wyjaśnienia, dlaczego inny marker wątrobowy jest podwyższony, na przykład, aby odróżnić źródło wątrobowe od żółciowego. Jest czuły, ale mało swoisty, dlatego odczytuje się go w kontekście reszty profilu wątrobowego. To jeden z kilku markerów używanych do oceny zdrowia wątroby i dróg żółciowych.",
"sodium": "Sód to główny elektrolit płynu poza komórkami organizmu i podstawowy regulator gospodarki płynami oraz objętości krwi. Organizm reguluje go ściśle poprzez pragnienie, hormony i nerki, dlatego jego poziom we krwi odzwierciedla raczej równowagę między wodą a solą niż samo spożycie. Nieprawidłowe wartości zwykle sygnalizują zaburzenie gospodarki wodnej, a nie samego sodu. To podstawowy element panelu metabolicznego i elektrolitowego.",
"potassium": "Potas to główny elektrolit wewnątrz komórek organizmu i jest niezbędny do przewodzenia nerwowego oraz równego rytmu mięśnia sercowego. Jego poziom we krwi utrzymywany jest w wąskim zakresie przez nerki i sygnały hormonalne, ponieważ zarówno wysokie, jak i niskie wartości mogą zaburzać aktywność elektryczną serca. Na wartości mogą wpływać funkcja nerek, nawodnienie i kilka powszechnych leków. To podstawowa miara panelu elektrolitowego.",
"hemoglobin": "Hemoglobina to zawierające żelazo białko czerwonych krwinek, które wiąże tlen w płucach i przenosi go do tkanek. Jej stężenie jest główną miarą zdolności krwi do przenoszenia tlenu i centralnym markerem wykrywania niedokrwistości. Niskie wartości mogą odzwierciedlać utratę krwi, niedobór żelaza lub witamin albo zmniejszone wytwarzanie, a wysokie mogą następować po odwodnieniu lub w warunkach niedoboru tlenu. To filar pełnej morfologii krwi.",
"hematocrit": "Hematokryt to udział czerwonych krwinek w objętości krwi, wyrażony w procentach. Zmienia się ściśle wraz z hemoglobiną i daje uzupełniający obraz masy czerwonych krwinek oraz zdolności krwi do przenoszenia tlenu. Wpływa na niego nawodnienie, ponieważ zmiany objętości osocza przesuwają ten udział nawet wtedy, gdy liczba czerwonych krwinek pozostaje stała. Odczytuje się go wraz z hemoglobiną i resztą morfologii.",
"wbc": "Liczba białych krwinek to całkowita liczba komórek odpornościowych krążących we krwi, ruchomej obrony organizmu przed infekcjami. Rośnie w odpowiedzi na infekcję, stan zapalny lub stres i może spadać, gdy szpik kostny jest osłabiony lub w niektórych chorobach odpornościowych. Ponieważ sumuje kilka odrębnych typów komórek, wyraźną zmianę często uzupełnia się rozmazem, który rozbija ją na składowe. To podstawowy element pełnej morfologii krwi.",
"platelets": "Płytki krwi to drobne fragmenty komórek we krwi, które zlepiają się i tworzą początkowy czop zatrzymujący krwawienie z uszkodzonego naczynia. Ich liczba odzwierciedla równowagę między wytwarzaniem w szpiku kostnym a zużyciem lub rozpadem. Niska liczba może zwiększać skłonność do krwawień, a wysoka może następować po stanie zapalnym lub innych bodźcach. Stanowią część pełnej morfologii krwi i są podstawową miarą zdolności krzepnięcia.",
"apob": "Apolipoproteina B to białko strukturalne obecne na każdej z aterogennych cząstek lipoprotein, więc jej pomiar zlicza te cząstki bezpośrednio, a nie cholesterol, który przenoszą. Ponieważ na każdej cząstce LDL, VLDL i pokrewnej znajduje się jedna cząsteczka ApoB, może ona wychwycić ryzyko sercowo-naczyniowe, które umyka wartości cholesterolu LDL, zwłaszcza gdy liczba cząstek i ich zawartość cholesterolu się rozchodzą. Z tego powodu coraz częściej używa się jej do uściślenia oceny ryzyka opartej na lipidach. Interpretuje się ją wraz ze zwykłym profilem lipidowym.",
"lp-a": "Lipoproteina(a) to cząstka podobna do LDL z dodatkowo przyłączonym białkiem, której poziom jest w dużej mierze uwarunkowany genetycznie i pozostaje dość stabilny przez całe życie. Podwyższona Lp(a) jest niezależnym, dziedzicznym czynnikiem ryzyka chorób sercowo-naczyniowych i zwężenia zastawki aortalnej. Ponieważ niewiele się zmienia, zwykle oznacza się ją raz, aby ustalić ryzyko danej osoby na całe życie, a nie śledzić wielokrotnie. Podaje się ją w jednostkach molowych i odczytuje w ramach całościowego ryzyka sercowo-naczyniowego.",
"fasting-insulin": "Insulina na czczo to poziom insuliny (hormonu, który przenosi glukozę z krwi do komórek) mierzony po nocnym poście. W połączeniu z glukozą na czczo pomaga oszacować insulinooporność, czyli stan, w którym organizm potrzebuje więcej insuliny, aby utrzymać glukozę w zakresie. Wysoka insulina na czczo przy prawidłowej glukozie może być wczesnym znakiem, że ta kompensacja jest w toku. Odczytuje się ją w ramach obrazu zdrowia metabolicznego, a nie w oderwaniu.",
"omega-3-index": "Indeks omega-3 to udział EPA i DHA (dwóch długołańcuchowych morskich kwasów tłuszczowych omega-3) wśród kwasów tłuszczowych błon czerwonych krwinek. Ponieważ czerwone krwinki odnawiają się powoli, odzwierciedla on długoterminowe spożycie omega-3, a nie niedawny posiłek. Wyższy indeks wiązano w badaniach obserwacyjnych z niższym ryzykiem sercowo-naczyniowym. Śledzi się go jako stabilny marker stanu omega-3, który reaguje na dietę w ciągu miesięcy.",
"alkaline-phosphatase": "Fosfataza alkaliczna (ALP) to enzym występujący głównie w wątrobie, drogach żółciowych i kościach. Rośnie przy utrudnionym odpływie żółci oraz w okresach aktywnej przebudowy kości, na przykład podczas wzrostu u dzieci i młodzieży albo gojenia złamania. Ponieważ uwalniają ją oba narządy, podwyższony wynik czyta się zwykle razem z GGTP i pozostałymi próbami wątrobowymi, aby odróżnić przyczynę wątrobową od kostnej. Należy do standardowych prób wątrobowych.",
"bilirubin-total": "Bilirubina całkowita to żółty produkt rozpadu hemoglobiny ze zużytych czerwonych krwinek, mierzony jako suma jej postaci niesprzężonej i sprzężonej. Wątroba ją wychwytuje, sprzęga i wydala z żółcią, więc jej poziom pokazuje, jak działa ta droga. Może rosnąć przy chorobach wątroby, zablokowanych drogach żółciowych lub nasilonym rozpadzie czerwonych krwinek, a nieszkodliwie w zespole Gilberta. Odczytuje się ją razem z pozostałymi próbami wątrobowymi."
},
"apob": "Apolipoproteina B (ApoB)",
"lp-a": "Lipoproteina(a)",
"fasting-insulin": "Insulina na czczo",
"omega-3-index": "Indeks omega-3",
"alkaline-phosphatase": "Fosfataza alkaliczna (ALP)",
"bilirubin-total": "Bilirubina całkowita"
},
"noteLoadFailed": "Nie udało się wczytać notatki; pozostanie niezmieniona po zapisaniu.",
"showingLatestOf": "Wyświetlanie najnowszych {shown} z {total} wyników",
"convertedFrom": "przeliczono z {value} {unit}",
"ocr": {
"scanButton": "Zeskanuj wynik",
"addScan": "Zeskanuj dokument",
"addManual": "Dodaj wartość ręcznie",
"uploadHint": "Prześlij zdjęcie lub PDF wyniku laboratoryjnego",
"acceptWithPdf": "JPEG, PNG, WebP lub PDF",
"acceptImageOnly": "JPEG, PNG lub WebP",
"extracting": "Odczytywanie wyniku…",
"readingOnDevice": "Odczytywanie na Twoim urządzeniu…",
"localModeHint": "Odczytywane na Twoim urządzeniu i wysyłane jako tekst. Mniej dokładne, więc sprawdź każdą wartość.",
"rangeFromScan": "Zakres referencyjny pobrany ze skanu",
"rangeVerify": "Zweryfikuj zakres referencyjny",
"reviewTitle": "Sprawdź przed zapisaniem",
"reviewHint": "Sprawdź każdy wynik, a następnie zapisz te, które chcesz zachować.",
"foundCount": "Znaleziono {count} wyników",
"pagesCapped": "Odczytano tylko pierwsze {read} z {total} stron. Wartości z dalszych stron nie ma na tej liście.",
"stoppedBudget": "Dzisiejszy budżet AI wyczerpał się w trakcie odczytu wyniku, więc pozostałe strony nie zostały odczytane.",
"stoppedUnavailable": "AI zostało wyłączone podczas odczytu wyniku, więc pozostałe strony nie zostały odczytane.",
"stoppedError": "Skan nie mógł być kontynuowany z powodu błędu serwera, więc pozostałe strony nie zostały odczytane. Spróbuj ponownie później.",
"tooLarge": "Ten tekst jest za długi na jeden skan. Zeskanuj wynik strona po stronie.",
"truncated": "Dostawca AI osiągnął limit odpowiedzi przed końcem wyniku. Wartości po tym miejscu mogą być pominięte, więc porównaj listę z wynikiem.",
"truncatedPages": "Dostawca AI osiągnął limit odpowiedzi na tych stronach: {pages}. Wartości niżej na tych stronach mogą być pominięte, więc porównaj je z wynikiem.",
"unreadPages": "Tych stron nie udało się odczytać, a ich wartości nie ma na tej liście: {pages}.",
"unreadParts": "Części wyniku nie udało się odczytać, a jej wartości nie ma na tej liście.",
"rowsCapped": "Wynik zawiera {found} wartości. Jeden skan obejmuje {kept}, więc widać tylko pierwsze {kept}.",
"outputLimit": "Dostawca AI osiągnął limit odpowiedzi, zanim zwrócił choć jedną wartość. Spróbuj zdjęcia jednej strony albo modelu, który pozwala na dłuższe odpowiedzi.",
"errorTooLong": "Skróć do {max} znaków.",
"confirmRow": "Uwzględnij ten wynik",
"analyteLabel": "Nazwa badania",
"resultLabel": "Wynik",
"valueLabel": "Wartość",
"unitLabel": "Jednostka",
"dateLabel": "Data",
"refLowLabel": "Dolna granica",
"refHighLabel": "Górna granica",
"newBiomarker": "Nowy biomarker, zostanie utworzony",
"linksExisting": "Łączy z istniejącym {name}",
"duplicateWarning": "Pasujący wynik już istnieje",
"lowConfidence": "Sprawdź tę wartość",
"lowConfidenceBadge": "Niska pewność",
"valueUnreadable": "Wartość nieczytelna, wprowadź ją ręcznie",
"saveSelected": "Zapisz {count} wybranych",
"discardAll": "Odrzuć wszystko",
"savedToast": "Zapisano {count} wyników laboratoryjnych",
"savedPartialToast": "Zapisano {count} wyników laboratoryjnych, {skipped} pominięto jako duplikaty",
"savedNothingToast": "Nic nie zapisano: {skipped} wyników było już zarejestrowanych",
"savedEmptyToast": "Nie ma nic do zapisania",
"noRows": "W tym wyniku nie znaleziono żadnych wartości.",
"nothingToSave": "Wybierz co najmniej jeden wynik do zapisania.",
"validationSummary": "Wyniki wymagające uwagi: {count}. Uzupełnij oznaczone pola lub odznacz te wyniki.",
"errorDate": "Podaj datę pobrania próbki.",
"errorAnalyte": "Podaj nazwę biomarkera.",
"errorValue": "Podaj wartość.",
"errorResult": "Podaj wynik.",
"errorUnit": "Podaj jednostkę.",
"errorUnitMismatch": "Ten wskaźnik jest prowadzony w {markerUnit}. Zmień jednostkę, jeśli wynik został źle odczytany, albo odznacz tę wartość.",
"unitDiffersBadge": "Prowadzony w {markerUnit}; ten wynik podaje {unit}",
"unitConvertedBadge": "Zostanie zapisane jako {value} {markerUnit}, przeliczone z {statedValue} {unit}",
"savedPartialUnitToast": "Zapisano {count} wyników. Nie zapisano, bo jednostka różni się od jednostki wskaźnika: {analytes}",
"savedNothingUnitToast": "Nic nie zapisano: jednostka różni się od jednostki wskaźnika dla {analytes}",
"saveFailed": "Nie udało się zapisać wyników. Spróbuj ponownie.",
"providerUnsupported": "Twój dostawca AI nie może odczytywać obrazów. Skonfiguruj model z obsługą obrazu.",
"consentRequired": "Do zeskanowania wyniku wymagana jest zgoda na przetwarzanie przez AI.",
"rateLimited": "Zbyt wiele skanów. Spróbuj ponownie później.",
"budgetExceeded": "Osiągnięto dzienny limit użycia AI.",
"fileTooLarge": "Plik jest za duży (maks. 12 MB).",
"fileType": "Prześlij plik JPEG, PNG, WebP lub PDF.",
"extractFailed": "Nie udało się odczytać wyniku. Spróbuj wyraźniejszego zdjęcia.",
"pdfRendererUnavailable": "Procesor tego serwera nie potrafi renderować stron PDF, więc zeskanowany wynik odczyta tu tylko dostawca AI, który przyjmuje pliki PDF bezpośrednio. Prześlij zamiast tego zdjęcie.",
"refTextLabel": "Zakres tak jak wydrukowano",
"refTextPlaceholder": "np. 3,5 - 5,0",
"aiUnavailable": "Skanowanie wyniku przez AI jest tu teraz niedostępne.",
"errorUnitMismatchNoUnit": "Ten wskaźnik jest prowadzony bez jednostki. Zaznacz Bez jednostki, jeśli wynik został źle odczytany, albo odznacz tę wartość.",
"unitDiffersBadgeNoUnit": "Prowadzony bez jednostki; ten wynik podaje {unit}"
},
"loadMoreReadings": "Wczytaj więcej pomiarów",
"documentsLink": "Dokumenty wyników badań",
"notLinkedYet": "Jeszcze niepowiązane z biomarkerem",
"sourceRange": {
"fromReport": "Zakres z wyniku {range}",
"catalogDiffers": "twój zakres {range}",
"printed": "wydrukowano w {unit}: {range}"
},
"match": {
"viaAlias": "według nazwy, którą wybrałeś wcześniej",
"viaCatalog": "rozpoznano jako popularny skrót",
"chooseLabel": "Należy do",
"suggestionOption": "{name} ({unit})",
"newMarkerOption": "Nowy biomarker",
"rememberHint": "Ta nazwa zostanie zapamiętana na następny wynik.",
"chooseHint": "Wybierz biomarker, jeśli już go śledzisz."
},
"aliases": {
"title": "Zapisywany też jako",
"taken": "{alias} należy już do innego biomarkera.",
"saveError": "Nie udało się zapisać nazw. Spróbuj ponownie.",
"remove": "Usuń {alias}",
"empty": "Dodaj nazwy, które inne laboratoria drukują dla {name}, aby ich wyniki trafiały tutaj.",
"placeholder": "np. ALP",
"addLabel": "Inna nazwa tego biomarkera",
"add": "Dodaj",
"alsoWritten": "Zapisywany też jako {aliases}"
},
"merge": {
"open": "Scal",
"title": "Scal biomarkery",
"description": "Połącz biomarkery, które są tym samym badaniem zapisanym inaczej.",
"pickHint": "Zaznacz co najmniej dwa biomarkery.",
"keepLabel": "Zachowaj",
"keepHint": "Pozostałe zostaną włączone do tego, a ich nazwy staną się jego innymi nazwami.",
"showPreview": "Pokaż podgląd",
"back": "Wstecz",
"confirm": "Scal teraz",
"previewSummaryOne": "{count} pomiar przechodzi do {name} ({unit}).",
"previewSummaryFew": "{count} pomiary przechodzą do {name} ({unit}).",
"previewSummaryOther": "{count} pomiarów przechodzi do {name} ({unit}).",
"movesOne": "{count} pomiar, już w tej samej jednostce",
"movesFew": "{count} pomiary, już w tej samej jednostce",
"movesOther": "{count} pomiarów, już w tej samej jednostce",
"convertedOne": "{count} pomiar, przeliczony z {unit} na {targetUnit}",
"convertedFew": "{count} pomiary, przeliczone z {unit} na {targetUnit}",
"convertedOther": "{count} pomiarów, przeliczonych z {unit} na {targetUnit}",
"refused": "Nie można przeliczyć {unit} na {targetUnit}.",
"aliasesAdded": "Te nazwy będą prowadzić do zachowanego biomarkera:",
"blocked": "Nic nie zostanie scalone, dopóki jednej jednostki nie da się przeliczyć. Pomiń ten biomarker albo zachowaj inny.",
"noUndo": "Scalenia nie można cofnąć.",
"doneToastOne": "Scalono w {name}, przeniesiono {count} pomiar",
"doneToastFew": "Scalono w {name}, przeniesiono {count} pomiary",
"doneToastOther": "Scalono w {name}, przeniesiono {count} pomiarów",
"error": "Nie udało się scalić biomarkerów. Spróbuj ponownie."
},
"trend": {
"title": "Trend",
"slope": {
"rising": "Rośnie o około {amount} {unit} rocznie na podstawie {n} wyników od {since}.",
"falling": "Spada o około {amount} {unit} rocznie na podstawie {n} wyników od {since}.",
"flat": "Brak zmian na podstawie {n} wyników od {since}."
},
"projection": {
"exits": {
"high": "Gdyby ta prosta biegła dalej, osiągnęłaby górną granicę twojego zakresu referencyjnego około {date}. To ekstrapolacja, nie prognoza.",
"low": "Gdyby ta prosta biegła dalej, osiągnęłaby dolną granicę twojego zakresu referencyjnego około {date}. To ekstrapolacja, nie prognoza."
},
"beyond_horizon": "W tym tempie prosta pozostaje w twoim zakresie referencyjnym dłużej niż {years} lat, czyli okres objęty twoimi wynikami.",
"beyond_horizon_capped": "W tym tempie prosta pozostaje w twoim zakresie referencyjnym dłużej niż {years} lat, czyli tak daleko, jak sięga ekstrapolacja.",
"no_exit": "Prosta oddala się od granic twojego zakresu referencyjnego.",
"already_outside": "Prosta jest już poza twoim zakresem referencyjnym.",
"no_clear_trend": "Na podstawie tych wyników zmiana nie różni się wyraźnie od braku zmiany, więc nie jest wyznaczana ekstrapolacja.",
"stale": "Najnowszy wynik pochodzi z {date}, sprzed ponad roku. Prosta jest pokazana na ten dzień, bez projekcji."
},
"interval": "95% przedział rocznej zmiany: od {lo} do {hi} {unit}."
},
"unit": {
"none": "Bez jednostki",
"noneHint": "Dla ilorazu lub wskaźnika, np. INR albo cholesterol/HDL."
}
},
"modules": {
"cycle": {
"label": "Cykl",
"description": "Śledź miesiączkę, fazy i prognozy."
},
"mood": {
"label": "Nastrój",
"description": "Zapisuj codzienny nastrój i tagi."
},
"sleep": {
"label": "Sen",
"description": "Długość, fazy i oś czasu snu."
},
"glucose": {
"label": "Glukoza",
"description": "Odczyty glukozy i trendy."
},
"workouts": {
"label": "Treningi",
"description": "Sesje treningowe i aktywność."
},
"recovery": {
"label": "Regeneracja",
"description": "Wskaźniki regeneracji i obciążenia z Twoich urządzeń."
},
"labs": {
"label": "Wyniki badań",
"description": "Zapisuj wyniki badań laboratoryjnych i ich historię."
},
"achievements": {
"label": "Osiągnięcia",
"description": "Odznaki i serie dla Twojej rutyny."
},
"coach": {
"label": "Coach",
"description": "Czat AI oparty na Twoich danych."
},
"insights": {
"label": "Analiza AI",
"description": "Briefing, notatki o stanie i notatki o treningach pisane przez model, nigdy Twoje dane ani wyniki."
},
"doctorReport": {
"label": "Raport dla lekarza",
"description": "Eksport PDF i FHIR dla Twojej przychodni."
},
"medications": {
"label": "Leki",
"description": "Schematy, przyjęcia i zgodność."
},
"illness": {
"label": "Dziennik chorób",
"description": "Zapisuj epizody chorób i dolegliwości z dziennym przebiegiem objawów."
},
"mcp": {
"label": "Dostęp asystenta zewnętrznego (MCP)",
"description": "Dostęp do odczytu dla asystenta obsługującego MCP, przez token o ograniczonym zakresie."
},
"environment": {
"label": "Środowisko",
"description": "Dzienna pogoda i długość dnia dla Twojej lokalizacji, obok nastroju, snu i parametrów życiowych."
},
"inboundDocuments": {
"label": "Dokumenty",
"description": "Pisma lekarskie, wyniki i skany w jednym zaszyfrowanym, przeszukiwalnym miejscu."
},
"mentalHealth": {
"label": "Dobrostan psychiczny",
"description": "Cztery dobrowolne testy obok dziennika nastroju."
},
"nutrients": {
"label": "Spożycie składników odżywczych",
"description": "Dzienne sumy mikroskładników synchronizowane z Apple Health."
},
"vaccinations": {
"label": "Szczepienia",
"description": "Książeczka szczepień uporządkowana: dawka, seria, następne przypomnienie."
},
"timeline": {
"label": "Oś czasu",
"description": "Lata w jednym widoku: choroby, leki i wizyty obok Twoich wartości, a do tego Twoje własne wydarzenia życiowe."
}
},
"moduleOff": {
"disabled": {
"description": "{module} jest wyłączone dla tego zapisu, więc jego strony pozostają ukryte. Włącz moduł ponownie, aby je odzyskać.",
"title": "{module} jest wyłączone"
},
"notGranted": {
"description": "{module} jest poza sekcjami udostępnionymi tobie. O tym, co obejmuje udostępniony zapis, decyduje osoba, do której należy.",
"title": "Nie należy do udostępnionego dostępu"
},
"unavailable": {
"description": "Operator wyłączył {module} dla wszystkich kont na tym serwerze. Żadne twoje ustawienie tego nie przywróci.",
"title": "Niedostępne na tym serwerze"
},
"openModules": "Otwórz Ustawienia, Moduły"
},
"vaccinations": {
"title": "Szczepienia",
"subtitle": "Twoja karta szczepień, dawka po dawce.",
"listLoadError": "Nie udało się załadować szczepień.",
"series": {
"booster": "Dawka przypominająca",
"ofTotal": "Dawka {position} z {total}",
"doseN": "Dawka {position}"
},
"row": {
"lot": "Seria {lot}"
},
"form": {
"date": "Data",
"catalogLabel": "Szczepionka",
"identityHint": "Wybierz szczepionkę z listy lub wpisz ją poniżej. Wystarczy jedno.",
"catalogNone": "Wybierz szczepionkę",
"catalogSearch": "Szukaj szczepionek",
"catalogNoMatch": "Nie znaleziono wpisu w katalogu",
"catalogClear": "Wyczyść wybór",
"freeTextLabel": "Tekst dowolny",
"freeTextPlaceholder": "jak podano w karcie szczepień",
"seriesToggle": "Dodaj szczegóły serii",
"doseNumber": "Nr dawki",
"seriesDoses": "Dawki w serii",
"lot": "Numer serii",
"site": "Miejsce podania",
"siteNone": "Nie podano",
"practitioner": "Gabinet lub lekarz",
"note": "Notatka",
"linkDocuments": "Powiąż dokument",
"linkNothingToOffer": "Brak dokumentów."
},
"site": {
"LEFT_ARM": "Lewe ramię",
"RIGHT_ARM": "Prawe ramię",
"LEFT_THIGH": "Lewe udo",
"RIGHT_THIGH": "Prawe udo",
"ORAL": "Doustnie",
"NASAL": "Donosowo",
"OTHER": "Inne"
},
"createTitle": "Zarejestruj szczepienie",
"editTitle": "Edytuj szczepienie",
"formDescription": "Wystarczą data i szczepionka; cała reszta jest opcjonalna.",
"created": "Szczepienie zapisane",
"updated": "Szczepienie zaktualizowane",
"saveFailed": "Nie udało się zapisać szczepienia.",
"deleteTitle": "Usunąć to szczepienie?",
"deleteDescription": "Wpis zostanie usunięty z Twojej karty. Zaplanowane przypomnienie o dawce przypominającej pozostaje.",
"deleteFailed": "Nie udało się usunąć szczepienia.",
"info": {
"primarySeriesOne": "Seria podstawowa: {count} dawka",
"primarySeriesFew": "Seria podstawowa: {count} dawki",
"primarySeriesOther": "Seria podstawowa: {count} dawek",
"yearly": "Szczepienie coroczne",
"boosterYearsOne": "Dawka przypominająca zwykle co {count} rok",
"boosterYearsFew": "Dawka przypominająca zwykle co {count} lata",
"boosterYearsOther": "Dawka przypominająca zwykle co {count} lat",
"boosterMonthsOne": "Dawka przypominająca zwykle co {count} miesiąc",
"boosterMonthsFew": "Dawka przypominająca zwykle co {count} miesiące",
"boosterMonthsOther": "Dawka przypominająca zwykle co {count} miesięcy",
"standard60": "Szczepienie standardowe od 60. roku życia",
"sourceLabel": "Źródło: {source}",
"affordanceLabel": "Informacje o schemacie"
},
"booster": {
"title": "Zaplanować dawkę przypominającą?",
"body": "Z tego szczepienia możesz utworzyć przypomnienie o następnej dawce przypominającej. Zmień odstęp lub etykietę albo odrzuć.",
"interval": "Odstęp",
"label": "Etykieta",
"labelSuffix": "przypomnienie",
"decline": "Nie teraz",
"confirm": "Utwórz przypomnienie",
"planned": "Zaplanowano dawkę przypominającą",
"failed": "Nie udało się utworzyć przypomnienia.",
"everyYearsOne": "co {count} rok",
"everyYearsFew": "co {count} lata",
"everyYearsOther": "co {count} lat",
"everyMonthsOne": "co {count} miesiąc",
"everyMonthsFew": "co {count} miesiące",
"everyMonthsOther": "co {count} miesięcy"
},
"suggestion": {
"single": "Powiązać z tym szczepieniem?",
"choose": "Do którego szczepienia należy ten skan?",
"linked": "Powiązano ze szczepieniem",
"failed": "Powiązanie nie powiodło się.",
"unnamed": "Szczepienie"
},
"empty": {
"title": "Nie zarejestrowano jeszcze żadnego szczepienia",
"description": "Przepisz swoją kartę szczepień wiersz po wierszu. Wystarczą data i szczepionka."
},
"catalog": {
"tetanus": "Tężec",
"diphtheria": "Błonica",
"pertussis": "Krztusiec",
"polio": "Polio (choroba Heinego-Medina)",
"measles": "Odra",
"mumps": "Świnka",
"rubella": "Różyczka",
"varicella": "Ospa wietrzna",
"hib": "Hib (Haemophilus influenzae b)",
"hepatitis-a": "WZW typu A",
"hepatitis-b": "WZW typu B",
"influenza": "Grypa",
"pneumococcal": "Pneumokoki",
"herpes-zoster": "Półpasiec (herpes zoster)",
"rsv": "RSV",
"covid-19": "COVID-19",
"fsme": "KZM (kleszczowe zapalenie mózgu)",
"hpv": "HPV (wirus brodawczaka ludzkiego)",
"meningococcal-acwy": "Meningokoki ACWY",
"meningococcal-b": "Meningokoki B",
"rotavirus": "Rotawirusy",
"typhoid": "Dur brzuszny",
"rabies": "Wścieklizna",
"yellow-fever": "Żółta gorączka",
"japanese-encephalitis": "Japońskie zapalenie mózgu",
"cholera": "Cholera",
"dengue": "Denga",
"tuberculosis": "Gruźlica",
"td": "Td (tężec, błonica)",
"tdap": "Tdap (tężec, błonica, krztusiec)",
"tdap-ipv": "Tdap-IPV (poczwórna)",
"dtap-ipv": "DTaP-IPV (poczwórna dziecięca)",
"hexavalent": "Sześciowalentna (DTaP-IPV-Hib-WZWB)",
"mmr": "MMR (odra, świnka, różyczka)",
"mmrv": "MMRV (odra, świnka, różyczka, ospa wietrzna)",
"hepa-hepb": "WZW typu A i B",
"hepa-typhoid": "WZW typu A i dur brzuszny"
},
"renewal": {
"overdue": "Dawka przypominająca zaległa od {date}",
"dueSoon": "Dawka przypominająca {date}",
"current": "Następna dawka przypominająca {date}"
},
"custom": {
"title": "Własne szczepionki",
"add": "Dodaj własną szczepionkę",
"name": "Nazwa",
"components": "Chroni przed",
"seriesDoses": "Dawki w szczepieniu podstawowym",
"boosterMonths": "Dawka przypominająca co (miesiące)",
"saved": "Szczepionka zapisana",
"deleted": "Szczepionka usunięta",
"deleteConfirm": "Usunąć tę szczepionkę? Zapisane już dawki zachowają swoją nazwę.",
"saveFailed": "Nie udało się zapisać szczepionki.",
"nameTaken": "Masz już szczepionkę o tej nazwie.",
"editTitle": "Edytuj własną szczepionkę",
"description": "Szczepionka spoza katalogu, liczona jak każdy wpis z katalogu.",
"componentsHint": "Wybierz wszystkie choroby, przed którymi chroni.",
"boosterHint": "Zostaw puste, jeśli nie ma dawki przypominającej.",
"protectsAgainst": "Chroni przed: {list}.",
"deleteTitle": "Usunąć własną szczepionkę?",
"sectionDescription": "Szczepionki dodane przez Ciebie, bo nie ma ich w katalogu.",
"catalogGroup": "Katalog"
}
},
"illness": {
"title": "Choroba",
"subtitle": "Retrospektywny zapis Twoich epizodów chorób i dolegliwości.",
"settings": {
"viewDescription": "Wybierz, czy epizody mają być wyświetlane jako karty czy zwarta lista.",
"orderDescription": "Przeciągnij epizody w kolejność, w jakiej chcesz je widzieć."
},
"customize": "Dostosuj dziennik chorób",
"newEpisode": "Nowy epizod",
"logDay": "Zapisz dzień",
"markRecovered": "Oznacz jako wyleczone",
"deletedToast": "Wpis usunięty",
"restoreError": "Nie udało się przywrócić wpisu",
"onsetOn": "Początek {date}",
"recoveredOn": "wyleczono {date}",
"status": {
"active": "Aktywny",
"ongoing": "Trwający",
"recovered": "Wyleczony"
},
"empty": {
"title": "Brak epizodów",
"body": "Rozpocznij epizod, aby prowadzić dzienny przebieg objawów i prześledzić, jak się rozwijał."
},
"type": {
"INFECTION": "Infekcja",
"ALLERGY": "Alergia",
"INJURY": "Uraz",
"MENTAL_HEALTH": "Zdrowie psychiczne",
"AUTOIMMUNE": "Autoimmunologiczna",
"CHRONIC": "Przewlekła",
"OTHER": "Inne"
},
"lifecycle": {
"ACUTE": "Ostra",
"CHRONIC_ONGOING": "Przewlekła / trwająca",
"RECURRING": "Nawracająca",
"FLARE": "Zaostrzenie"
},
"new": {
"title": "Nowy epizod",
"description": "Zapisz chorobę lub dolegliwość. Codzienne objawy możesz notować później.",
"label": "Nazwa",
"labelPlaceholder": "np. Przeziębienie",
"type": "Typ",
"lifecycle": "Przebieg",
"onset": "Początek",
"note": "Notatka",
"notePlaceholder": "Cokolwiek wartego zapamiętania (zaszyfrowane).",
"saveError": "Nie udało się zapisać epizodu. Spróbuj ponownie.",
"parent": "Część",
"parentNone": "Niepowiązane",
"resolved": "Zakończono",
"resolvedHelp": "Pozostaw puste, dopóki epizod nadal trwa.",
"markOngoing": "Nadal trwa",
"bodySiteHint": "Na przykład kolano lub dolna część pleców."
},
"sheet": {
"title": "Zapisz {date}",
"description": "Zanotuj dzisiejsze objawy, swoją sprawność i ewentualną gorączkę.",
"symptoms": "Objawy",
"functionalImpact": "Sprawność",
"fever": "Temperatura",
"note": "Notatka",
"noteSet": "Ustawiona",
"notePlaceholder": "Jak minął dzień (zaszyfrowane).",
"severityFor": "Nasilenie: {symptom}",
"saveError": "Nie udało się zapisać dnia. Spróbuj ponownie.",
"day": "Day"
},
"impact": {
"0": "Pełna sprawność",
"1": "Lekko ograniczona",
"2": "Głównie odpoczynek",
"3": "W łóżku"
},
"symptom": {
"runnyNose": "Katar",
"stuffyNose": "Zatkany nos",
"sneezing": "Kichanie",
"soreThroat": "Ból gardła",
"cough": "Kaszel",
"headache": "Ból głowy",
"bodyAches": "Bóle ciała",
"fatigue": "Zmęczenie"
},
"correlation": {
"title": "Jak przebiegało",
"learning": "Wciąż się uczę. Zapisz jeszcze kilka dni, aby zobaczyć tu wzorce.",
"preOnsetTitle": "Jak się zapowiadało",
"preOnsetBody": "Sygnały, które odbiegły od Twojej bazy przed oznaczonym początkiem.",
"nadirTitle": "Co się zmieniło",
"nadirBody": "Jak daleko każdy śledzony sygnał odbiegł od Twojego typowego zakresu.",
"recoveryGapTitle": "Luka rekonwalescencji",
"recoveryGapLag": "Twoje wartości ustabilizowały się {days} dni po tym, jak poczułeś się lepiej.",
"recoveryGapLead": "Twoje wartości ustabilizowały się {days} dni przed oznaczeniem wyzdrowienia.",
"recoveryGapLagSymptom": "Poczułeś się lepiej {days} dni przed ustąpieniem zapisanych objawów.",
"recoveryGapLeadSymptom": "Twoje zapisane objawy ustąpiły {days} dni przed oznaczeniem wyzdrowienia.",
"recoveryGapSame": "Twoje wartości ustabilizowały się tego samego dnia, gdy poczułeś się lepiej.",
"sleepContextMore": "Podczas tego epizodu spałeś zauważalnie więcej niż zwykle (około {hours} godz./noc).",
"sleepContextLess": "Podczas tego epizodu spałeś zauważalnie mniej niż zwykle (około {hours} godz./noc).",
"redFlagTitle": "Warto przyjrzeć się bliżej",
"redFlagSpo2": "Twoje wysycenie tlenem pozostawało niskie przez kilka dni. Jeśli się powtórzy, zasięgnij pomocy medycznej.",
"redFlagFever": "Miałeś utrzymującą się gorączkę. Jeśli się powtórzy, zasięgnij pomocy medycznej.",
"direction": {
"above": "powyżej Twojej normy",
"below": "poniżej Twojej normy"
},
"settled": "Podczas tego epizodu nic istotnego nie odbiegało od twojego zwykłego zakresu."
},
"insights": {
"title": "Twoja historia chorób",
"countOne": "W tym okresie zapisałeś 1 epizod.",
"countOther": "W tym okresie zapisałeś {count} epizodów.",
"typicalGap": "Typowa luka rekonwalescencji: {days} dni między poprawą a ustabilizowaniem wartości.",
"typicalGapWithDriver": "Typowa luka rekonwalescencji: {days} dni. Zwykle czujesz się lepiej, zanim {vital} się ustabilizuje.",
"typicalGapLearning": "Jeszcze kilka zakończonych epizodów i pojawi się tu typowa luka rekonwalescencji.",
"none": "Brak epizodów zapisanych w tym okresie.",
"analyze": "Przeanalizuj lukę rekonwalescencji"
},
"section": {
"active": "Aktywne",
"resolved": "Zakończone"
},
"flares": {
"countOne": "1 zaostrzenie",
"countOther": "Zaostrzenia: {count}"
},
"timeline": {
"title": "Oś dnia",
"error": "Nie udało się wczytać osi.",
"severity": "Nasilenie {severity}",
"noSymptoms": "Nie zapisano objawów.",
"impact": "Jak funkcjonowałeś: {impact}",
"fever": "Temperatura: {value} {unit}",
"empty": "Nie zapisano jeszcze żadnych dni."
},
"loadError": "Nie udało się wczytać tego epizodu.",
"backToList": "Powrót do dziennika",
"detail": {
"note": "Notatka"
},
"edit": {
"title": "Edytuj epizod",
"description": "Zaktualizuj szczegóły tego epizodu."
},
"menu": {
"label": "Działania epizodu"
},
"deleteConfirm": {
"title": "Usunąć ten epizod?",
"body": "„{label}” oraz wszystkie powiązane wpisy dzienne zostaną usunięte. Zaraz po usunięciu możesz to przez chwilę cofnąć."
},
"vital": {
"RESTING_HEART_RATE": "Spoczynkowe tętno",
"HEART_RATE_VARIABILITY": "Zmienność rytmu serca",
"HRV_RMSSD": "HRV (RMSSD)",
"RECOVERY_SCORE": "Recovery",
"OXYGEN_SATURATION": "Saturacja tlenem",
"BODY_TEMPERATURE": "Temperatura ciała",
"RESPIRATORY_RATE": "Częstość oddechów",
"BLOOD_PRESSURE_SYS": "Ciśnienie skurczowe",
"BLOOD_PRESSURE_DIA": "Ciśnienie rozkurczowe",
"PULSE": "Pulse",
"WEIGHT": "Weight",
"FUNCTIONAL_IMPACT": "Wpływ na funkcjonowanie"
},
"listLoadError": "Nie udało się załadować epizodów."
},
"coach": {
"reminderSuggestion": {
"title": "Ustawić przypomnienie?",
"accept": "Ustaw przypomnienie",
"dismiss": "Nie teraz",
"stop": "Mierzę wystarczająco",
"accepted": "Przypomnienie ustawione",
"dismissed": "Dobrze, nie zaproponuję tego ponownie",
"stopped": "Rozumiem, przestanę proponować przypomnienia",
"failed": "Nie udało się ustawić, spróbuj ponownie",
"cadence": {
"weightDaily": "Waż się codziennie, mniej więcej o tej samej porze",
"bp722": "Mierz ciśnienie dwa razy dziennie przez tydzień",
"glucoseStructured": "Mierz glukozę według ustrukturyzowanego planu dziennego"
}
},
"suggestedAction": {
"apply": "Dodaj",
"dismiss": "Nie teraz",
"applied": "Dodano",
"dismissed": "Odrzucono",
"failed": "Nie udało się dodać. Spróbuj ponownie",
"checkup": {
"title": "Dodać przypomnienie o badaniu?"
},
"note": {
"title": "Zapisać przypomnienie?"
},
"interval": {
"yearly": "Co roku",
"halfYearly": "Co sześć miesięcy",
"quarterly": "Co trzy miesiące",
"monthly": "Co miesiąc"
}
},
"settings": {
"reminderSuggestionsLabel": "Sugestie częstotliwości",
"reminderSuggestionsDescription": "Pozwól Coachowi od czasu do czasu zaproponować oparte na dowodach przypomnienie, aby mierzyć daną wartość bardziej regularnie."
},
"plans": {
"title": "Plany",
"pageDescription": "Plany typu „jeśli… to” uzgodnione w rozmowach z Coachem. Potwierdź propozycję, aby Coach ją zapamiętał.",
"readOnlyNote": "Coach jest teraz niedostępny, ale nadal możesz czytać i usuwać swoje plany.",
"proposalTitle": "Propozycja planu",
"ifThen": "Jeśli {cue}, to {action}.",
"targetPrefix": "Cel: {target}",
"reviewPrefix": "Przegląd: {when}",
"accept": "Przyjmij plan",
"decline": "Odrzuć",
"accepted": "Plan przyjęty. Coach będzie o nim pamiętał.",
"declined": "Propozycja odrzucona.",
"failed": "Nie udało się. Spróbuj ponownie.",
"markMet": "Cel osiągnięty",
"abandon": "Zakończ plan",
"remove": "Usuń",
"removeTitle": "Usunąć ten plan?",
"removeBody": "Plan i jego przebieg znikną z historii. Nie da się go przywrócić.",
"removeConfirm": "Usuń plan",
"empty": "Nie ma jeszcze planów. Gdy w rozmowie zobowiążesz się do konkretnej intencji „jeśli… to”, Coach zaproponuje ją tutaj do potwierdzenia.",
"groupProposed": "Propozycje",
"groupActive": "Aktywne",
"groupPast": "Zakończone",
"status": {
"proposed": "Zaproponowany",
"active": "Aktywny",
"met": "Osiągnięty",
"abandoned": "Zakończony",
"review_due": "Przegląd do zrobienia",
"reviewed": "Oceniony"
}
},
"refusal": {
"outOfScope": "Mogę pomóc wyłącznie z danymi zdrowotnymi z Twojego dziennika: pomiarami, lekami, nastrojem, trendami. Na pytania spoza tego zakresu nie odpowiadam.",
"promptInjection": "Zauważyłem polecenia, które próbują obejść moje wytyczne. Jestem Coachem HealthLog i podsumowuję wyłącznie Twoje własne dane zdrowotne. Sformułuj pytanie w tych ramach.",
"conversationPoisoned": "Wcześniejsza wiadomość w tej rozmowie zawiera polecenia, które próbują obejść moje wytyczne. Rozpocznij nową rozmowę."
},
"noRecordedData": "Nie masz zapisanych żadnych pomiarów dla tego, o co pytasz, więc nie mogę podać Ci żadnej liczby. Gdy coś zapiszesz, zapytaj ponownie, a wtedy oprę się na Twoich własnych wartościach.",
"step": {
"read": "Czytam: {domain}",
"readWindow": "Czytam: {domain}, {window}",
"snapshot": "Czytam podsumowanie Twoich danych",
"showResult": "Otwieram wcześniejszą tabelę",
"reuse": "Korzystam z tabeli z poprzedniej odpowiedzi",
"headerActive": "{label}…",
"listLabel": "Co sprawdził Coach",
"toggleShow": "Pokaż, co sprawdził Coach",
"toggleHide": "Ukryj, co sprawdził Coach",
"announceDone": "Gotowe: {label}",
"readingsOne": "1 pomiar",
"readingsFew": "{count} pomiary",
"readingsOther": "{count} pomiarów",
"rowsOne": "1 wiersz",
"rowsFew": "{count} wiersze",
"rowsOther": "{count} wierszy",
"metricsOne": "1 wskaźnik",
"metricsFew": "{count} wskaźniki",
"metricsOther": "{count} wskaźników",
"reason": {
"noData": "brak pomiarów",
"outsideWindow": "brak pomiarów w tym okresie",
"moduleDisabled": "wyłączone",
"retrievalFailed": "nie udało się odczytać",
"invalidArguments": "nie zrozumiano zapytania"
},
"domain": {
"labs": "Wyniki badań",
"illness": "Choroba i powrót do zdrowia",
"cycle": "Cykl",
"correlations": "Związki między wskaźnikami",
"snapshot": "Podsumowanie danych",
"environment": "Pogoda i powietrze",
"day": "Jeden dzień"
},
"window": {
"last7days": "ostatnie 7 dni",
"last30days": "ostatnie 30 dni",
"last90days": "ostatnie 90 dni",
"lastYear": "ostatnie 12 miesięcy",
"allTime": "cały okres"
},
"period": {
"current": "ten okres",
"previous": "poprzedni okres",
"yearAgo": "rok wcześniej"
},
"granularity": {
"day": "według dni",
"week": "według tygodni",
"month": "według miesięcy"
}
},
"result": {
"title": {
"byDay": "{metric} według dni",
"byWeek": "{metric} według tygodni",
"byMonth": "{metric} według miesięcy",
"previousPeriod": "{metric}, poprzedni okres",
"yearAgo": "{metric}, rok wcześniej",
"workoutsBySport": "Treningi według dyscypliny",
"labsLatest": "Najnowsze wyniki badań",
"sleepByNight": "Sen według nocy",
"complianceByDay": "Przyjmowanie leków według dni",
"distribution": "{metric}: jak często występował każdy zakres"
},
"column": {
"day": "Dzień",
"week": "Tydzień",
"month": "Miesiąc",
"night": "Noc",
"sport": "Dyscyplina",
"sessions": "Sesje",
"analyte": "Badanie",
"value": "Wartość",
"unit": "Jednostka",
"date": "Data",
"referenceRange": "Zakres referencyjny",
"systolic": "Skurczowe",
"diastolic": "Rozkurczowe",
"mean": "Średnia",
"total": "Suma",
"min": "Najniższa",
"max": "Najwyższa",
"readings": "Pomiary",
"rate": "Regularność",
"duration": "Czas trwania",
"range": "Zakres",
"count": "Liczba razy"
},
"other": "Inne",
"noReading": "brak pomiaru",
"showAll": "Pokaż wszystko ({count})",
"showFewer": "Pokaż mniej",
"copyMenu": "Kopiuj tabelę",
"copyForSpreadsheet": "Kopiuj do arkusza kalkulacyjnego",
"copyAsText": "Kopiuj jako tekst",
"copied": "Skopiowano",
"copyFailed": "Nie udało się skopiować tabeli",
"viewLabel": "Widok",
"viewChart": "Wykres",
"viewTable": "Tabela",
"chartSummary": "{title} w formie wykresu. Widok tabeli pokazuje każdą wartość.",
"dataUsed": "Użyte dane ({count})",
"truncated": "Ostatnie {shown} z {total} wierszy",
"withheld": {
"moduleDisabled": "Ta tabela jest ukryta, bo jej moduł jest wyłączony.",
"unavailable": "Nie udało się wczytać tej tabeli."
},
"loading": "Wczytywanie tabeli…",
"loadFailed": "Nie udało się wczytać tabel.",
"reusedFrom": "Z wcześniejszej odpowiedzi ({date})",
"reusedFromUndated": "Z wcześniejszej odpowiedzi",
"histogramBin": "{from}–{to} {unit}"
},
"method": {
"label": "Jak to ustalono",
"entry": "{domain}, {window}: {detail}",
"entryNoWindow": "{domain}: {detail}",
"reused": "z wcześniejszej odpowiedzi",
"readingsOne": "1 pomiar",
"readingsFew": "{count} pomiary",
"readingsOther": "{count} pomiarów",
"aggregation": {
"mean": "średnia",
"median": "mediana",
"latest": "ostatni pomiar",
"sum": "suma",
"count": "liczba",
"rate": "odsetek"
},
"averages": {
"day": "średnie dzienne",
"week": "średnie tygodniowe",
"month": "średnie miesięczne"
},
"totals": {
"day": "sumy dzienne",
"week": "sumy tygodniowe",
"month": "sumy miesięczne"
},
"absent": {
"noData": "brak pomiarów",
"outsideWindow": "brak pomiarów w tym okresie",
"moduleDisabled": "wyłączone"
}
},
"followUp": {
"groupLabel": "Proponowane pytania",
"widenWindow": "Sięgnij dalej wstecz",
"previousPeriod": "Porównaj z poprzednim okresem",
"yearAgo": "Porównaj z tym samym okresem rok wcześniej",
"asChart": "Pokaż jako wykres",
"asTable": "Pokaż jako tabelę",
"relatedMetric": "Sprawdź też: {metric}",
"continue": "Szukaj dalej",
"settingLabel": "Proponuj kolejne pytania",
"settingHint": "Pokazuje do trzech propozycji pod ostatnią odpowiedzią Coacha.",
"changeAssumption": "Zamiast tego: {value}"
},
"clarify": {
"cardLabel": "Coach ma pytanie",
"choicesLabel": "Możliwe odpowiedzi",
"freeTextHint": "Możesz też wpisać własną odpowiedź.",
"contextHint": "Wpisz odpowiedź poniżej.",
"window": {
"last7days": "Ostatnie 7 dni",
"last30days": "Ostatnie 30 dni",
"last90days": "Ostatnie 90 dni",
"lastYear": "Ostatnie 12 miesięcy",
"allTime": "Cały okres"
},
"comparison": {
"baseline90d": "Porównaj z moimi zwykłymi 90 dniami"
},
"anchor": {
"illness": "Od choroby z {date}"
}
},
"reuse": {
"caption": "Oto te same wartości z mojej poprzedniej odpowiedzi, bez zmian."
}
},
"safety": {
"floor": {
"bpHighTitle": "Bardzo wysokie ciśnienie",
"bpHighDoctor": "Dwa ostatnie pomiary wyniosły {systolic}/{diastolic} mmHg lub więcej. Odpocznij, zmierz ponownie za kilka minut i jak najszybciej skontaktuj się z lekarzem, jeśli pozostaje tak wysokie.",
"bpHighEmergency": "Dwa ostatnie pomiary wyniosły {systolic}/{diastolic} mmHg lub więcej i zgłosiłeś objawy. W razie bólu w klatce piersiowej, duszności, osłabienia lub zaburzeń widzenia czy mowy natychmiast zadzwoń po pomoc.",
"bpLowTitle": "Niskie ciśnienie",
"bpLowDoctor": "Dwa ostatnie pomiary miały ciśnienie skurczowe poniżej {systolic} mmHg. Jeśli kręci ci się w głowie lub czujesz osłabienie, usiądź lub połóż się i skontaktuj się z lekarzem, jeśli to się utrzymuje.",
"bpLowEmergency": "Dwa ostatnie pomiary miały ciśnienie skurczowe poniżej {systolic} mmHg i zgłosiłeś objawy. Jeśli czujesz, że możesz zemdleć, jesteś zdezorientowany lub masz zimną, lepką skórę, natychmiast zadzwoń po pomoc.",
"glucoseLowTitle": "Niski poziom cukru",
"glucoseLowDoctor": "Dwa ostatnie pomiary były poniżej {threshold} {unit} ({value} {unit}). Przyjmij szybko działające węglowodany, zmierz ponownie za 15 minut i skontaktuj się z lekarzem, jeśli spadki się utrzymują.",
"glucoseLowEmergency": "Dwa ostatnie pomiary były poniżej {threshold} {unit} ({value} {unit}) i zgłosiłeś objawy. Lecz to teraz szybkim cukrem; jeśli nie możesz lub czujesz się bardzo źle, zadzwoń po pomoc.",
"glucoseLowSevereTitle": "Bardzo niski poziom cukru",
"glucoseLowSevereDoctor": "Dwa ostatnie pomiary były poniżej {threshold} {unit} ({value} {unit}). Lecz natychmiast szybko działającymi węglowodanami, zmierz ponownie za 15 minut i skontaktuj się z lekarzem.",
"glucoseLowSevereEmergency": "Dwa ostatnie pomiary były poniżej {threshold} {unit} ({value} {unit}) i zgłosiłeś objawy. Lecz to teraz; jeśli nie utrzymujesz pokarmu lub czujesz się bardzo źle, zadzwoń po pomoc.",
"glucoseHighTitle": "Bardzo wysoki poziom cukru",
"glucoseHighDoctor": "Dwa ostatnie pomiary wyniosły {value} {unit} lub więcej. Zmierz ponownie, nawodnij się i jak najszybciej skontaktuj się z lekarzem, jeśli pozostaje tak wysoki.",
"glucoseHighEmergency": "Dwa ostatnie pomiary wyniosły {value} {unit} lub więcej i zgłosiłeś objawy. W razie wymiotów, przyspieszonego oddechu lub dezorientacji natychmiast zadzwoń po pomoc."
}
},
"version": {
"updateAvailable": {
"title": "Dostępna jest nowa wersja",
"reload": "Załaduj ponownie",
"dismiss": "Odrzuć"
}
},
"mentalHealth": {
"pageTitle": "Dobrostan psychiczny",
"pageDescription": "Cztery zwalidowane, dobrowolne testy: liczy się przebieg w czasie, nie pojedynczy wynik.",
"attributionLabel": "Źródło",
"attributionShow": "Źródło i licencja: {instrument}",
"choosePrompt": "Wybierz sprawdzenie",
"start": "Rozpocznij",
"back": "Wstecz",
"submit": "Zobacz mój wynik",
"submitting": "Zapisywanie…",
"saved": "Zapisano",
"error": "Coś poszło nie tak. Spróbuj ponownie.",
"instrument": {
"phq9": "PHQ-9 (nastrój)",
"gad7": "GAD-7 (lęk)",
"who5": "WHO-5 (samopoczucie)",
"sci": "SCI (sen)"
},
"instrumentSub": {
"phq9": "Przesiew depresji, 9 pytań",
"gad7": "Przesiew lęku, 7 pytań",
"who5": "Test samopoczucia, 5 pytań",
"sci": "Test snu, 8 pytań"
},
"functionalOptionalHint": "Opcjonalne: możesz wysłać bez odpowiedzi na to pytanie.",
"result": {
"title": "Twój wynik",
"totalLabel": "Wynik łączny",
"bandLabel": "Zakres dla tego przesiewu",
"takeAnother": "Wykonaj kolejne sprawdzenie",
"scoreOf": "z {max}",
"firstCheckIn": "To Twój pierwszy wynik w tym kwestionariuszu. Od następnego zobaczysz tu zmianę.",
"nextStep": "Możesz powtórzyć ten kwestionariusz za dwa tygodnie lub później, aby śledzić zmianę. Jeśli coś Cię niepokoi, porozmawiaj w każdej chwili z profesjonalistą."
},
"band": {
"PHQ9": {
"minimal": "Brak / minimalny",
"mild": "Łagodny",
"moderate": "Umiarkowany",
"modSevere": "Umiarkowanie ciężki",
"severe": "Ciężki"
},
"GAD7": {
"minimal": "Brak / minimalny",
"mild": "Łagodny",
"moderate": "Umiarkowany",
"severe": "Ciężki"
},
"WHO5": {
"low": "Niższe samopoczucie",
"good": "Dobre samopoczucie"
},
"SCI": {
"belowThreshold": "Zakres możliwej bezsenności",
"aboveThreshold": "Brak wskazań na bezsenność"
}
},
"history": {
"title": "Twoja historia",
"empty": "Brak sprawdzeń. Twój trend pojawi się tutaj po ukończeniu pierwszego.",
"flaggedBadge": "Pokazano wsparcie",
"chartTitle": "Przebieg wyniku",
"totalLabel": "Wynik",
"bandLabel": "Kategoria",
"answersToggle": "Odpowiedzi",
"answersUnavailable": "Nie można odszyfrować zapisanych odpowiedzi tego sprawdzenia."
},
"crisis": {
"title": "Nie musisz mierzyć się z tym sam(a)",
"intro": "Wskazałeś(-aś) myśli, że lepiej byłoby nie żyć lub zrobić sobie krzywdę. Wsparcie jest dostępne już teraz, a sięgnięcie po pomoc to oznaka siły.",
"ifDanger": "Jeśli grozi Ci bezpośrednie niebezpieczeństwo, zadzwoń teraz pod {emergency}.",
"resourcesTitle": "Osoby, które mogą pomóc"
},
"crisisResource": {
"telefonSeelsorge": {
"name": "TelefonSeelsorge (całodobowo, bezpłatnie i poufnie)"
},
"nummerGegenKummer": {
"name": "Nummer gegen Kummer (dla młodych ludzi)"
},
"telefonSeelsorgeAt": {
"name": "Telefonseelsorge Österreich (całodobowo, bezpłatnie i poufnie)"
},
"dargeboteneHand": {
"name": "Die Dargebotene Hand (całodobowo, bezpłatnie i poufnie)"
},
"krisenchat": {
"name": "krisenchat (czat całodobowy, dla młodych ludzi)"
},
"findahelpline": {
"name": "Find a Helpline (światowy katalog)"
},
"euEmotionalSupport": {
"name": "Telefon wsparcia emocjonalnego"
},
"lifeline988": {
"name": "988 Suicide & Crisis Lifeline"
},
"crisisTextLine": {
"name": "Crisis Text Line"
},
"cvv": {
"name": "CVV, Centro de Valorização da Vida (Brazylia, całodobowo, bezpłatnie i poufnie)"
},
"samu": {
"name": "SAMU, pogotowie ratunkowe (Brazylia)"
},
"sns24": {
"name": "SNS 24, wsparcie psychologiczne (Portugalia, całodobowo, opcja 4)"
},
"sosVozAmiga": {
"name": "SOS Voz Amiga (Portugalia, codziennie od 15:30 do 0:30)"
},
"zelfmoordpreventie113": {
"name": "113 Zelfmoordpreventie (Holandia, całą dobę, bezpłatnie, anonimowo, także przez czat)"
},
"zelfmoordlijn1813": {
"name": "Zelfmoordlijn 1813 (Belgia, całą dobę, bezpłatnie, anonimowo)"
}
},
"instrumentDescription": {
"phq9": "Przesiew w kierunku depresji, 9 pytań. Odpowiadaj, myśląc o ostatnich dwóch tygodniach.",
"gad7": "Przesiew w kierunku lęku, 7 pytań. Odpowiadaj, myśląc o ostatnich dwóch tygodniach.",
"who5": "Test samopoczucia, 5 pytań. Odpowiadaj, myśląc o ostatnich dwóch tygodniach; wyższe cyfry oznaczają lepsze samopoczucie.",
"sci": "Test snu, 8 pytań. Większość pytań dotyczy ostatniego miesiąca; wyższe wyniki oznaczają lepszy sen."
},
"next": "Dalej",
"lastResult": "Ostatni test",
"lastScore": "Ostatni wynik",
"noResultYet": "Brak check-inów",
"backToList": "Przegląd",
"followUpHint": {
"phq9": "Twój wynik mieści się w zakresie, w którym rozmowa ze specjalistą może pomóc. To życzliwa sugestia, a nie diagnoza.",
"gad7": "Twój wynik mieści się w zakresie, w którym rozmowa ze specjalistą może pomóc. To życzliwa sugestia, a nie diagnoza.",
"who5": "Wynik samopoczucia 50 lub niższy może być wart bliższego spojrzenia. Jeśli chcesz, PHQ-9 na tej stronie przygląda się nastrojowi dokładniej. To życzliwa sugestia, a nie diagnoza.",
"sci": "W badaniu tego kwestionariusza wyniki 16 lub niższe wiązały się z prawdopodobną bezsennością. Jeśli zły sen nadal Ci doskwiera, rozmowa ze specjalistą może pomóc. To nie jest diagnoza."
},
"openDetail": "Pokaż szczegóły",
"historyLoadError": "Nie udało się wczytać historii testów",
"historyLoadErrorHint": "To nie znaczy, że nie masz wyników; nie udało się pobrać listy. Spróbuj ponownie.",
"privacyNote": "Twoje odpowiedzi są przechowywane w postaci zaszyfrowanej i nigdy nie trafiają do Coacha AI.",
"trend": {
"sincePrevious": "Od poprzedniego sprawdzenia {date}: {change} pkt.",
"sinceFirst": "Od pierwszego sprawdzenia {date}: {change} pkt.",
"verdict": {
"improved": "To osiąga zmianę o {threshold} pkt, którą badania uznają za istotną, w lepszym kierunku.",
"worsened": "To osiąga zmianę o {threshold} pkt, którą badania uznają za istotną, w mniej korzystnym kierunku.",
"within_threshold": "To mniej niż zmiana o {threshold} pkt, którą badania uznają za istotną."
}
},
"wizard": {
"progressLabel": "Pytanie {current} z {total}",
"followUpLabel": "Pytanie dodatkowe (nieobowiązkowe)",
"keyboardHint": "Klawisze od 1 do {count} wybierają odpowiedź.",
"allAnswered": "Odpowiedziano na wszystkie pytania ({total})"
},
"review": {
"title": "Sprawdź odpowiedzi",
"description": "Nic nie zostanie zapisane przed wysłaniem, a każdą odpowiedź można jeszcze zmienić.",
"change": "Zmień",
"changeLabel": "Zmień odpowiedź na pytanie {number}",
"notAnswered": "Bez odpowiedzi",
"open": "Sprawdź odpowiedzi"
},
"bandMeaning": {
"PHQ9": {
"minimal": "Twoje odpowiedzi wskazują na brak lub niewiele objawów depresji w ostatnich dwóch tygodniach.",
"mild": "Twoje odpowiedzi wskazują na łagodne objawy depresji w ostatnich dwóch tygodniach.",
"moderate": "Twoje odpowiedzi wskazują na umiarkowane objawy depresji w ostatnich dwóch tygodniach.",
"modSevere": "Twoje odpowiedzi wskazują na umiarkowanie ciężkie objawy depresji w ostatnich dwóch tygodniach.",
"severe": "Twoje odpowiedzi wskazują na ciężkie objawy depresji w ostatnich dwóch tygodniach."
},
"GAD7": {
"minimal": "Twoje odpowiedzi wskazują na brak lub niewiele objawów lęku w ostatnich dwóch tygodniach.",
"mild": "Twoje odpowiedzi wskazują na łagodne objawy lęku w ostatnich dwóch tygodniach.",
"moderate": "Twoje odpowiedzi wskazują na umiarkowane objawy lęku w ostatnich dwóch tygodniach.",
"severe": "Twoje odpowiedzi wskazują na ciężkie objawy lęku w ostatnich dwóch tygodniach."
},
"WHO5": {
"low": "Twoje samopoczucie w ostatnich dwóch tygodniach było poniżej zakresu, który WHO-5 uznaje za dobry.",
"good": "Twoje samopoczucie w ostatnich dwóch tygodniach mieściło się w zakresie, który WHO-5 uznaje za dobry."
},
"SCI": {
"belowThreshold": "Twój sen w ostatnim miesiącu mieścił się w zakresie, w którym badanie stojące za tym kwestionariuszem uznało bezsenność za prawdopodobną.",
"aboveThreshold": "Twój sen w ostatnim miesiącu był poza zakresem, który to badanie wiąże z bezsennością."
}
},
"wording": {
"unvalidatedNote": "To tłumaczenie nie zostało zwalidowane naukowo; traktuj wynik jako orientacyjny.",
"showOriginal": "Pokaż oryginalny tekst angielski",
"showTranslation": "Pokaż tłumaczenie",
"resultUnvalidated": "Odpowiedzi udzielone w tłumaczeniu, które nie zostało zwalidowane naukowo; traktuj wynik jako orientacyjny.",
"historyUnvalidated": "Odpowiedzi w tłumaczeniu niezwalidowanym naukowo"
}
},
"records": {
"aiInclusion": {
"cardTitle": "Dostęp AI do profilu",
"cardDescription": "Wybierz części profilu zdrowotnego, z których mogą korzystać Coach i pełne podsumowania.",
"sectionAboutMe": "O mnie",
"sectionConditions": "Choroby przewlekłe",
"sectionAllergies": "Alergie i nietolerancje",
"sectionCoachFocus": "Priorytet Coacha",
"sectionFamilyHistory": "Historia rodzinna",
"sectionSmoking": "Palenie tytoniu",
"sectionAlcohol": "Wzorzec spożycia alkoholu",
"sectionShiftSchedule": "Harmonogram pracy",
"save": "Zapisz dostęp",
"savedToast": "Zapisano dostęp AI do profilu",
"saveError": "Nie udało się zapisać dostępu AI do profilu",
"loadError": "Nie udało się wczytać dostępu AI do profilu"
},
"profileFacts": {
"cardTitle": "Kontekst stylu życia",
"smokingLabel": "Palenie tytoniu",
"alcoholLabel": "Wzorzec spożycia alkoholu",
"shiftLabel": "Harmonogram pracy",
"notRecorded": "Brak danych",
"remove": "Usuń: {kind}",
"values": {
"SMOKING_STATUS": {
"NEVER": "Nigdy nie pali",
"FORMER": "Były palacz",
"CURRENT": "Obecnie pali"
},
"ALCOHOL_PATTERN": {
"NONE": "Nie spożywa",
"OCCASIONAL": "Okazjonalnie",
"WEEKLY": "Co tydzień",
"MOST_DAYS": "Przez większość dni"
},
"SHIFT_SCHEDULE": {
"NONE": "Bez pracy zmianowej",
"FIXED_SHIFT": "Stała zmiana",
"ROTATING": "Zmiany rotacyjne"
}
}
},
"disclaimer": "To Twoje własne wpisy, a nie diagnoza lekarska. HealthLog nie diagnozuje, nie leczy i ich nie interpretuje.",
"allergies": {
"cardTitle": "Alergie i nietolerancje",
"cardDescription": "Substancje, na które reagujesz, wraz z reakcją i jej nasileniem.",
"description": "Zapisz alergię lub nietolerancję.",
"add": "Dodaj alergię",
"addFirst": "Dodaj swoją pierwszą alergię",
"addTitle": "Dodaj alergię",
"editTitle": "Edytuj alergię",
"formDescription": "Substancja jest przechowywana jako tekst; reakcja i notatka są szyfrowane.",
"emptyTitle": "Brak zapisanych alergii",
"emptyDescription": "Dodaj substancje, na które reagujesz, i ich reakcje.",
"loadError": "Nie udało się wczytać Twoich alergii.",
"deletedToast": "Alergia usunięta",
"deleteError": "Nie udało się usunąć alergii.",
"deleteConfirmTitle": "Usunąć tę alergię?",
"deleteConfirmDescription": "To usuwa wpis. Nie można tego cofnąć.",
"category": {
"FOOD": "Pokarm",
"MEDICATION": "Lek",
"ENVIRONMENT": "Środowisko",
"BIOLOGIC": "Biologiczny",
"OTHER": "Inne"
},
"type": {
"ALLERGY": "Alergia",
"INTOLERANCE": "Nietolerancja"
},
"severity": {
"NONE": "Nieoceniona",
"MILD": "Łagodna",
"MODERATE": "Umiarkowana",
"SEVERE": "Ciężka"
},
"status": {
"ACTIVE": "Aktywna",
"INACTIVE": "Nieaktywna",
"RESOLVED": "Ustąpiła"
},
"form": {
"substance": "Substancja",
"substancePlaceholder": "np. Penicylina, Orzeszki ziemne",
"category": "Kategoria",
"type": "Typ",
"severity": "Nasilenie",
"status": "Status",
"onset": "Pierwszy raz zauważono",
"reaction": "Reakcja",
"reactionPlaceholder": "np. pokrzywka, obrzęk, anafilaksja",
"note": "Notatka",
"notePlaceholder": "Cokolwiek innego, co warto zapamiętać",
"requiredError": "Podaj substancję.",
"savedToast": "Alergia zapisana",
"updatedToast": "Alergia zaktualizowana",
"saveError": "Nie udało się zapisać alergii."
},
"freeText": {
"label": "Notatka tekstowa (alergie i nietolerancje)",
"hint": "Tekstowe uzupełnienie ustrukturyzowanej listy powyżej, na kontekst, którego pojedynczy wpis nie odda.",
"savedToast": "Notatka o alergiach zapisana",
"saveError": "Nie udało się zapisać. Spróbuj ponownie."
}
},
"family": {
"cardTitle": "Wywiad rodzinny",
"cardDescription": "Choroby u Twoich krewnych, jeden wpis na chorobę.",
"description": "Zapisz chorobę u krewnego.",
"add": "Dodaj wpis",
"addFirst": "Dodaj swój pierwszy wpis",
"addTitle": "Dodaj wywiad rodzinny",
"editTitle": "Edytuj wywiad rodzinny",
"formDescription": "Pokrewieństwo i choroba są przechowywane jako tekst; notatka jest szyfrowana.",
"emptyTitle": "Brak wywiadu rodzinnego",
"emptyDescription": "Dodaj choroby występujące w Twojej rodzinie.",
"loadError": "Nie udało się wczytać Twojego wywiadu rodzinnego.",
"deletedToast": "Wpis usunięty",
"deleteError": "Nie udało się usunąć wpisu.",
"deleteConfirmTitle": "Usunąć ten wpis?",
"deleteConfirmDescription": "To usuwa wpis. Nie można tego cofnąć.",
"ageAtOnsetShort": "Wiek {age}",
"relationship": {
"MOTHER": "Matka",
"FATHER": "Ojciec",
"SISTER": "Siostra",
"BROTHER": "Brat",
"DAUGHTER": "Córka",
"SON": "Syn",
"GRANDMOTHER_MATERNAL": "Babcia (ze strony matki)",
"GRANDFATHER_MATERNAL": "Dziadek (ze strony matki)",
"GRANDMOTHER_PATERNAL": "Babcia (ze strony ojca)",
"GRANDFATHER_PATERNAL": "Dziadek (ze strony ojca)",
"AUNT": "Ciotka",
"UNCLE": "Wujek",
"COUSIN": "Kuzyn/kuzynka",
"HALF_SIBLING": "Przyrodnie rodzeństwo",
"OTHER": "Inny krewny"
},
"form": {
"relationship": "Krewny",
"condition": "Choroba",
"conditionPlaceholder": "np. Cukrzyca typu 2, Rak piersi",
"ageAtOnset": "Wiek zachorowania",
"ageAtOnsetPlaceholder": "np. 55",
"note": "Notatka",
"notePlaceholder": "Cokolwiek innego, co warto zapamiętać",
"requiredError": "Podaj chorobę.",
"ageError": "Podaj wiek od 0 do 120.",
"savedToast": "Wpis zapisany",
"updatedToast": "Wpis zaktualizowany",
"saveError": "Nie udało się zapisać wpisu."
}
},
"conditions": {
"cardTitle": "Choroby przewlekłe",
"cardDescription": "Choroby przewlekłe i to, na co Coach ma zwracać uwagę.",
"conditionsLabel": "Choroby przewlekłe",
"focusLabel": "Na co zwraca uwagę Coach",
"loadError": "Nie udało się wczytać Twoich chorób.",
"savedToast": "Choroby zapisane",
"saveError": "Nie udało się zapisać. Spróbuj ponownie."
},
"emergency": {
"cardTitle": "Informacje na wypadek nagły",
"cardDescription": "To, czego ratownik potrzebuje najpierw: grupa krwi, kontakty, oświadczenia.",
"bloodType": "Grupa krwi",
"organDonor": "Dawca narządów",
"advanceDirective": "Oświadczenie woli pacjenta",
"contacts": "Kontakty w nagłych wypadkach",
"implants": "Implanty i urządzenia",
"note": "Dodatkowe uwagi",
"notRecorded": "Nie podano",
"bloodTypeValues": {
"A_POS": "A dodatnia",
"A_NEG": "A ujemna",
"B_POS": "B dodatnia",
"B_NEG": "B ujemna",
"AB_POS": "AB dodatnia",
"AB_NEG": "AB ujemna",
"O_POS": "0 dodatnia",
"O_NEG": "0 ujemna",
"UNKNOWN": "Nieznana"
},
"organDonorValues": {
"YES": "Tak",
"NO": "Nie",
"UNKNOWN": "Nie podano"
},
"advanceDirectiveValues": {
"EXISTS": "Istnieje",
"NONE": "Brak",
"UNKNOWN": "Nie podano"
},
"contactsPlaceholder": "Imię i numer telefonu osoby do kontaktu",
"implantsPlaceholder": "np. rozrusznik serca, pompa insulinowa, implant metalowy",
"notePlaceholder": "Wszystko, co lekarz powinien wiedzieć w nagłym wypadku",
"reportHint": "Pojawia się na pierwszej stronie raportu dla lekarza.",
"save": "Zapisz",
"savedToast": "Informacje na wypadek nagły zapisane",
"saveError": "Nie udało się zapisać informacji na wypadek nagły.",
"loadError": "Nie udało się wczytać informacji na wypadek nagły."
},
"life": {
"cardTitle": "Warunki życia",
"cardDescription": "Palenie, alkohol, aktywność, praca, nawyki i cele, z datą i zawsze dobrowolnie.",
"loadError": "Nie udało się wczytać warunków życia.",
"noAnswer": "Brak odpowiedzi",
"yes": "Tak",
"no": "Nie",
"validSince": "Obowiązuje od",
"month": "Miesiąc",
"year": "Rok",
"lastConfirmed": "Ostatnio potwierdzono {date}",
"notAnswered": "Jeszcze bez odpowiedzi",
"unreadable": "Tej odpowiedzi nie da się odczytać na tym serwerze.",
"save": "Zapisz sekcję",
"savedToast": "Sekcja zapisana",
"saveError": "Nie udało się zapisać sekcji.",
"review": {
"question": "Czy to nadal aktualne? Twoja ostatnia odpowiedź ma ponad rok.",
"confirm": "Nadal aktualne",
"confirmedToast": "Dziękujemy, oznaczono jako aktualne",
"confirmError": "Nie udało się zapisać potwierdzenia."
},
"ai": {
"label": "Udostępnij tę sekcję AI",
"shiftLabel": "Udostępnij pracę zmianową AI",
"hint": "Po wyłączeniu Coach i podsumowania nigdy nie widzą tych odpowiedzi.",
"savedToast": "Udostępnianie AI zaktualizowane",
"saveError": "Nie udało się zapisać ustawienia AI."
},
"sections": {
"tobacco": {
"title": "Palenie i nikotyna"
},
"alcohol": {
"title": "Alkohol"
},
"activity": {
"title": "Aktywność i siedzenie"
},
"work": {
"title": "Praca i rytm dnia"
},
"habits": {
"title": "Sen, odżywianie i kofeina"
},
"goals": {
"title": "Cele"
}
},
"fields": {
"smokingStatus": "Palenie tytoniu",
"products": "Używane produkty",
"cigarettesPerDay": "Papierosy dziennie",
"startYear": "Rok rozpoczęcia",
"quitMonth": "Kiedy rzucono",
"secondhandSmoke": "Regularne bierne palenie",
"moderateDaysPerWeek": "Dni w tygodniu z umiarkowaną lub intensywną aktywnością, np. szybkim marszem",
"moderateMinutesPerDay": "Minuty w te dni, średnio",
"sittingHoursWorkday": "Godziny siedzenia w dzień roboczy",
"shiftSchedule": "Praca zmianowa",
"situation": "Sytuacja zawodowa",
"physicalNature": "Rodzaj pracy",
"nightWork": "Praca w nocy",
"exposures": "Narażenia w pracy",
"freeWeekdays": "Wolne dni tygodnia",
"napRegularly": "Regularna drzemka",
"snoringReported": "Inni mówią, że chrapiesz",
"dietPattern": "Sposób odżywiania",
"dietSpecifics": "Szczegóły",
"lateMealsPerWeek": "Posiłki po 21:00 w tygodniu",
"fruitVegPortionsPerDay": "Porcje owoców i warzyw dziennie",
"caffeineDrinksPerDay": "Napoje z kofeiną dziennie",
"latestCaffeine": "Najpóźniejsza kofeina w ciągu dnia",
"goals": "Nad czym chcesz pracować",
"goalsHint": "Najwyżej trzy."
},
"values": {
"products": {
"cigarettes": "Papierosy",
"cigars_pipe": "Cygara lub fajka",
"e_cigarette": "E-papieros",
"heated_tobacco": "Podgrzewany tytoń",
"snus_pouches": "Snus lub saszetki nikotynowe"
},
"situation": {
"none": "Bez pracy zarobkowej",
"indoor": "Głównie w pomieszczeniach",
"outdoor": "Głównie na zewnątrz",
"mixed": "W środku i na zewnątrz"
},
"physicalNature": {
"mostly_sitting": "Głównie siedząca",
"standing_walking": "Stojąca lub w ruchu",
"heavy_physical": "Ciężka praca fizyczna"
},
"exposures": {
"heat": "Upał",
"cold": "Zimno",
"dust": "Pył",
"fumes_solvents": "Opary lub rozpuszczalniki",
"noise": "Hałas"
},
"dietPattern": {
"mixed": "Dieta mieszana",
"vegetarian": "Wegetariańska",
"vegan": "Wegańska",
"pescetarian": "Peskatariańska",
"other": "Inna"
},
"dietSpecifics": {
"intermittent_fasting": "Post przerywany",
"low_carb": "Niskowęglowodanowa",
"prescribed_diet": "Dieta zalecona przez lekarza"
},
"latestCaffeine": {
"before_12": "Przed 12:00",
"12_15": "12:00 do 15:00",
"15_18": "15:00 do 18:00",
"after_18": "Po 18:00"
},
"goals": {
"weight": "Waga",
"blood_pressure": "Ciśnienie krwi",
"blood_sugar": "Cukier we krwi",
"sleep": "Sen",
"fitness": "Kondycja",
"stress_recovery": "Stres i regeneracja",
"medication_routine": "Regularne przyjmowanie leków",
"quit_smoking": "Rzucenie palenia",
"less_alcohol": "Mniej alkoholu"
},
"weekdays": {
"1": "pon.",
"2": "wt.",
"3": "śr.",
"4": "czw.",
"5": "pt.",
"6": "sob.",
"7": "niedz."
}
},
"derived": {
"packYears": "{value} paczkolat",
"packYearsMissing": "Do paczkolat brakuje liczby papierosów dziennie albo roku rozpoczęcia.",
"activityMinutes": "{value} minut w tygodniu.",
"meetsWho": "To spełnia zalecenie WHO 150 minut tygodniowo.",
"belowWho": "To poniżej zalecenia WHO 150 minut tygodniowo.",
"measuredSteps": "Zmierzone kroki mają pierwszeństwo, ta odpowiedź dodaje kontekst.",
"freeDaysDefault": "Bez odpowiedzi sobota i niedziela liczą się jako dni wolne."
},
"auditC": {
"intro": "Trzy pytania o alkohol z testu AUDIT WHO. Badanie przesiewowe, nie diagnoza.",
"start": "Odpowiedz na pytania",
"again": "Odpowiedz ponownie",
"offerDue": "Wystarczy zajrzeć raz w roku.",
"submit": "Zapisz odpowiedzi",
"notValidated": "Dla Twojego języka nie ma jeszcze zwalidowanego tłumaczenia, dlatego pytania są po angielsku.",
"savedToast": "Odpowiedzi zapisane",
"saveError": "Nie udało się zapisać odpowiedzi.",
"result": "{score} z 12 punktów",
"above": "Na lub powyżej progu przesiewowego {cutoff}.",
"below": "Poniżej progu przesiewowego {cutoff}.",
"noCutoff": "Bez płci w profilu pokazujemy tylko sumę.",
"source": "Źródło: {source}",
"history": "Wcześniejsze wpisy",
"remove": "Usuń wpis",
"removeConfirmTitle": "Usunąć ten wpis?",
"removeConfirmBody": "Wpis zniknie z historii. Tutaj nie da się tego cofnąć.",
"removedToast": "Wpis usunięty",
"removeError": "Nie udało się usunąć wpisu.",
"historyEntry": "{date}: {score} z 12",
"legacyLabel": "Wcześniejsza odpowiedź: {value}",
"legacyHint": "Z krótkiego pytania o alkohol sprzed tego kwestionariusza. Gdy jest wynik kwestionariusza, Coach przestaje ją czytać.",
"legacyRemove": "Usuń wcześniejszą odpowiedź",
"legacyRemoveConfirmTitle": "Usunąć wcześniejszą odpowiedź?",
"legacyRemoveConfirmBody": "Wcześniejsza odpowiedź zniknie z Twoich danych. Wyniki kwestionariusza zostają.",
"legacyRemovedToast": "Wcześniejsza odpowiedź usunięta",
"legacyRemoveError": "Nie udało się usunąć wcześniejszej odpowiedzi."
},
"takeOver": {
"conditionsButton": "Przenieś do dziennika stanów",
"allergiesButton": "Przenieś do alergii",
"conditionsTitle": "Dodaj chorobę przewlekłą",
"allergiesTitle": "Dodaj alergię",
"description": "Twój tekst pozostaje bez zmian, dopóki sam go nie wyczyścisz.",
"freeTextLabel": "Twój tekst",
"conditionLabel": "Choroba",
"onset": "Od",
"save": "Dodaj",
"savedToast": "Wpis dodany",
"saveError": "Nie udało się dodać wpisu.",
"clearQuestion": "Wpis zapisany. Wyczyścić teraz tekst?",
"clear": "Wyczyść tekst",
"keep": "Zostaw",
"clearedToast": "Tekst wyczyszczony",
"clearError": "Nie udało się wyczyścić tekstu."
},
"screening": {
"cardTitle": "Wskazówki dotyczące badań przesiewowych",
"cardDescription": "Na podstawie warunków życia, z regułą i krajem, z którego pochodzi.",
"noReminder": "To tylko wskazówka; przypomnienie ustaw sam, jeśli chcesz.",
"source": "Źródło: {source}",
"titles": {
"lung_ldct": "Niskodawkowa TK w kierunku raka płuca",
"aaa_ultrasound": "USG aorty brzusznej"
},
"status": {
"suggested": "Może Cię dotyczyć",
"not_eligible": "Nie dotyczy Cię",
"unknown": "Za mało informacji"
},
"reasons": {
"never_smoked": "Nigdy nie paliłeś.",
"missing_birth_date": "Brakuje daty urodzenia.",
"age_out_of_range": "Wiek poza zakresem.",
"missing_smoking_status": "Brakuje informacji o paleniu.",
"no_cigarettes": "Reguła liczy tylko papierosy.",
"missing_smoking_history": "Brakuje liczby papierosów dziennie lub roku rozpoczęcia.",
"pack_years_below_15": "Mniej niż 15 paczkolat.",
"pack_years_below_20": "Mniej niż 20 paczkolat.",
"smoked_years_below_25": "Mniej niż 25 lat palenia.",
"missing_quit_date": "Brakuje daty rzucenia.",
"quit_over_10_years": "Rzucenie ponad 10 lat temu.",
"quit_over_15_years": "Rzucenie ponad 15 lat temu.",
"missing_sex": "W profilu brakuje płci.",
"sex_not_male": "Reguła dotyczy mężczyzn."
}
}
}
},
"environment": {
"fields": {
"tempMean": "Temperatura dzienna",
"tempMin": "Minimum nocne",
"sunshine": "Nasłonecznienie",
"daylight": "Światło dzienne",
"precip": "Opady",
"pressureMean": "Ciśnienie atmosferyczne",
"pressureDelta": "Wahanie ciśnienia",
"pm25": "Pył drobny (PM2,5)",
"pm10": "Pył (PM10)",
"no2": "Dwutlenek azotu",
"ozone8h": "Ozon (maksimum 8-godzinne)",
"europeanAqi": "Europejski indeks jakości powietrza",
"uvIndexMax": "Indeks UV (maksimum)",
"dustMax": "Pył saharyjski",
"pollenMax": "Pyłki (najwyższa wartość)"
},
"chip": {
"day": "Pogoda {date}",
"pollenHigh": "Dużo pyłków: {kinds}",
"hotNight": "Ciepła noc",
"veryPoorAir": "Bardzo złe powietrze"
},
"pollen": {
"alder": "olcha",
"birch": "brzoza",
"grass": "trawy",
"mugwort": "bylica",
"olive": "oliwka",
"ragweed": "ambrozja"
},
"movement": {
"awayFromHome": "Czas poza domem",
"distance": "Przebyty dystans"
}
},
"documents": {
"title": "Dokumenty",
"subtitle": "Każde pismo, wynik i skan w jednym przeszukiwalnym miejscu, zaszyfrowane w spoczynku.",
"pageUpload": "Prześlij",
"ownerOnlyUpload": "Dokumenty może dodawać tylko właściciel kartoteki.",
"kind": {
"DOCTOR_REPORT": "Raport lekarski",
"DISCHARGE_LETTER": "Wypis ze szpitala",
"OTHER": "Inne",
"LAB_RESULT": "Wynik laboratoryjny",
"IMAGING": "Obrazowanie",
"PRESCRIPTION": "Recepta",
"REFERRAL": "Skierowanie",
"INSURANCE": "Ubezpieczenie",
"VACCINATION": "Szczepienie",
"SICK_NOTE": "Zwolnienie lekarskie"
},
"filter": {
"searchLabel": "Szukaj dokumentów",
"searchPlaceholder": "Szukaj tytułu lub nazwy pliku…",
"typeGroup": "Typ dokumentu",
"conditionGroup": "Schorzenie",
"procedureGroup": "Zabiegi i operacje",
"yearGroup": "Rok",
"clear": "Wyczyść filtry",
"typeAll": "Wszystkie typy",
"typeCount": "{count} typy",
"conditionAll": "Wszystkie schorzenia",
"procedureAll": "Wszystkie zabiegi",
"yearAll": "Wszystkie lata"
},
"card": {
"untitled": "Dokument bez tytułu",
"selectLabel": "Zaznacz {title}",
"openLabel": "Otwórz {title}",
"attachmentBadge": "Tylko do pobrania",
"uploading": "Przesyłanie…",
"dismissFailed": "Odrzuć nieudane przesyłanie",
"processing": "Przetwarzanie…",
"ready": "Gotowe",
"deleteKey": "Del"
},
"error": {
"fileTooLarge": "Ten plik przekracza limit {maxSize}.",
"quotaExceeded": "Miejsce jest pełne: użyto {used} z {quota}.",
"unsupportedType": "Ten typ pliku nie jest obsługiwany.",
"purged": "Ten dokument został trwale usunięty i nie można go przywrócić.",
"duplicateExists": "Identyczny dokument jest już zapisany.",
"rateLimited": "Zbyt wiele przesyłań. Spróbuj ponownie za kilka minut.",
"generic": "Przesyłanie nie powiodło się. Spróbuj ponownie."
},
"toast": {
"duplicate": "Już zapisano. Istniejący dokument został wyróżniony.",
"deleted": "Dokument usunięty",
"restoreFailed": "Nie udało się przywrócić dokumentu.",
"deletedHint": "Usunięte dokumenty zostają w sekcji Ostatnio usunięte przez {days} dni."
},
"timeline": {
"loadingMore": "Wczytywanie…",
"listLabel": "Oś czasu dokumentów"
},
"upload": {
"browse": "Wybierz pliki",
"quotaAlmostFull": "Miejsce prawie pełne",
"quotaUsed": "Użyto {used} z {quota}",
"queuedAnnouncement": "Dodano pliki do kolejki przesyłania: {count}"
},
"selection": {
"count": "Zaznaczono: {count}",
"clear": "Wyczyść zaznaczenie"
},
"list": {
"loadError": "Nie udało się wczytać Twoich dokumentów."
},
"empty": {
"title": "Twój sejf dokumentów jest pusty",
"description": "Przechowuj pisma lekarskie, wyniki laboratoryjne, obrazowanie, recepty i zaświadczenia o szczepieniach. Są zaszyfrowane i można je przeszukiwać według typu, schorzenia i roku.",
"action": "Prześlij pierwszy dokument",
"noMatchesTitle": "Brak pasujących dokumentów",
"noMatchesDescription": "Nic nie pasuje do bieżącego wyszukiwania i filtrów."
},
"detail": {
"title": "Szczegóły dokumentu",
"summary": {
"title": "Podsumowanie",
"pending": "Podsumowanie jest przygotowywane.",
"none": "Dla tego dokumentu nie wygenerowano jeszcze podsumowania.",
"withheld": "Podsumowanie zostało wygenerowane, ale nie przeszło kontroli bezpieczeństwa, więc nie jest wyświetlane. Możesz spróbować ponownie lub przeczytać sam dokument.",
"unavailable": "Nie udało się wygenerować podsumowania dla tego dokumentu.",
"generate": "Wygeneruj podsumowanie",
"generating": "Generowanie…"
},
"index": {
"outcome": {
"local-empty": "Nie znaleziono czytelnego tekstu. To wygląda na skan; dostawca wizji AI może go odczytać.",
"local-unsupported": "Tego typu pliku nie można odczytać na potrzeby wyszukiwania.",
"decrypt-error": "Nie udało się otworzyć zapisanego pliku do odczytu.",
"raster-failed": "Nie udało się przetworzyć stron PDF do odczytu. Znaną przyczyną są skany w faksowych formatach kompresji.",
"provider-error": "Dostawca AI nie zdołał odczytać tego dokumentu przy ostatniej próbie.",
"pdf-needs-anthropic": "Procesor tego serwera nie potrafi renderować stron PDF, a ten PDF nie ma warstwy tekstowej. Odczyta go dostawca AI, który przyjmuje pliki PDF bezpośrednio, albo prześlij zdjęcia stron.",
"empty-transcription": "Dostawca AI nie zwrócił tekstu dla tego dokumentu.",
"resource-limit": "Ten PDF jest zbyt duży lub zbyt złożony, żeby odczytać go tutaj. Sam plik jest w porządku i nadal się otwiera."
}
},
"loadError": "Nie udało się wczytać tego dokumentu.",
"saveError": "Nie udało się zapisać zmiany.",
"deleteError": "Nie udało się usunąć dokumentu.",
"download": "Pobierz",
"openInNewTab": "Otwórz w nowej karcie",
"delete": "Usuń",
"titleLabel": "Tytuł",
"titlePlaceholder": "Dodaj tytuł",
"kindLabel": "Typ",
"dateLabel": "Data dokumentu",
"conditionsLabel": "Powiązane schorzenia",
"linkCondition": "Powiąż",
"noConditions": "Niepowiązany ze schorzeniem",
"previewUnavailable": "Brak podglądu dla tego typu pliku",
"uploadedMeta": "Dodano {date}, {size}",
"importedFrom": "Zaimportowano z: {system}",
"importedFromWithId": "Zaimportowano z: {system}, ID {id}",
"sourceOther": "inny system",
"share": "Udostępnij",
"labValuesLink": "Zobacz {count} wyników laboratoryjnych",
"visitsLabel": "Należy do wizyty",
"vaccinationsLabel": "Szczepienia",
"noVisitsToLink": "Nie zapisano jeszcze żadnych wizyt.",
"noVaccinationsToLink": "Nie zapisano jeszcze żadnych szczepień."
},
"dropOverlay": {
"title": "Upuść pliki, aby je przesłać",
"hint": "Są zapisywane w Twoich dokumentach w postaci zaszyfrowanej"
},
"bulk": {
"barLabel": "Akcje dla zaznaczonych dokumentów",
"setKind": "Zmień typ",
"linkCondition": "Powiąż ze schorzeniem",
"delete": "Usuń",
"updated": "Zaktualizowano dokumenty: {count}",
"deleted": "Usunięto dokumenty: {count}",
"restored": "Przywrócono dokumenty: {count}",
"partialFailure": "Nie udało się zaktualizować {failed} z {total}",
"failed": "Nie udało się wykonać akcji",
"share": "Udostępnij",
"shareTooMany": "Link do udostępniania obejmuje maksymalnie {max} dokumentów. Odznacz kilka i spróbuj ponownie.",
"linkVisit": "Przypisz do wizyty"
},
"episodeCard": {
"title": "Dokumenty",
"link": "Powiąż",
"upload": "Prześlij",
"viewAll": "Pokaż wszystkie",
"emptyLine": "Brak dokumentów powiązanych z tym schorzeniem.",
"loadError": "Nie udało się wczytać połączonych dokumentów"
},
"linkPicker": {
"title": "Powiąż dokumenty",
"description": "Wybierz dokumenty z archiwum, które dotyczą tego schorzenia.",
"searchPlaceholder": "Szukaj po tytule lub nazwie pliku",
"empty": "Nie znaleziono dokumentów."
},
"assist": {
"suggest": "Zaproponuj szczegóły",
"suggesting": "Odczytywanie…",
"suggestedTitle": "Sugerowany tytuł",
"suggestedKind": "Sugerowany typ",
"suggestedDate": "Sugerowana data",
"apply": "Zastosuj",
"useTitle": "Użyj tytułu",
"applied": "Zastosowano",
"dismiss": "Odrzuć",
"empty": "Nie udało się nic odczytać z tego dokumentu.",
"unavailableBody": "Skonfiguruj dostawcę AI, aby zaproponować tytuł, typ i datę.",
"unavailableLocalOcr": "Włącz „Odczytuj skany na tym urządzeniu” w Ustawienia → Moduły → Badania, aby odczytywać obrazy na tym urządzeniu.",
"unavailableAction": "Otwórz ustawienia AI",
"errorGeneric": "Nie udało się odczytać dokumentu. Spróbuj ponownie.",
"errorOcr": "Nie udało się odczytać tekstu z tego obrazu.",
"errorRateLimited": "Godzinowy limit odczytów AI został osiągnięty. Spróbuj ponownie później.",
"errorRateLimitedWaitOne": "Godzinowy limit odczytów AI został osiągnięty. Spróbuj ponownie za około minutę.",
"errorRateLimitedWaitFew": "Godzinowy limit odczytów AI został osiągnięty. Spróbuj ponownie za około {count} minuty.",
"errorRateLimitedWaitOther": "Godzinowy limit odczytów AI został osiągnięty. Spróbuj ponownie za około {count} minut.",
"errorBudget": "Twój dzisiejszy budżet AI został wyczerpany.",
"errorPdfRendererUnavailable": "Procesor tego serwera nie potrafi renderować stron PDF, więc zeskanowany PDF odczyta tu tylko dostawca AI, który przyjmuje pliki PDF bezpośrednio, albo prześlij zdjęcia stron.",
"errorFileType": "Tego typu pliku nie można odczytać.",
"errorNotIndexed": "Najpierw odczytaj dokument, potem wyodrębnij.",
"errorOutputLimit": "Dostawca AI osiągnął limit odpowiedzi, zanim zwrócił choć jedną wartość. Spróbuj modelu, który pozwala na dłuższe odpowiedzi.",
"errorLocalOcrDisabled": "Najpierw włącz „Odczytuj skany na tym urządzeniu” w Ustawienia → Moduły → Badania.",
"errorProvider": "Nie skonfigurowano dostawcy AI do tego celu.",
"errorTextImageOnly": "Lokalne OCR odczytuje tylko obrazy, nie ten plik.",
"errorConsent": "Odczyt dokumentów przez AI wymaga najpierw Twojej zgody.",
"errorUnavailable": "Odczyt dokumentów przez AI jest tu teraz niedostępny.",
"unavailableLocalOcrAction": "Otwórz ustawienia badań"
},
"summary": {
"summarise": "Podsumuj",
"showText": "Pokaż wyodrębniony tekst",
"summaryTitle": "Podsumowanie",
"textTitle": "Wyodrębniony tekst",
"close": "Ukryj"
},
"ai": {
"readDone": "AI odczytało Twój dokument.",
"readStagedOne": "AI odczytało Twój dokument. 1 wynik laboratoryjny czeka na Twoją weryfikację.",
"readStagedFew": "AI odczytało Twój dokument. {count} wyniki laboratoryjne czekają na Twoją weryfikację.",
"readStagedOther": "AI odczytało Twój dokument. {count} wyników laboratoryjnych czeka na Twoją weryfikację.",
"read": "Odczytaj z AI",
"reread": "Odczytaj ponownie",
"reading": "Odczytywanie…",
"notReadYet": "Ten dokument nie został jeszcze odczytany."
},
"review": {
"title": "Przejrzyj odczytane wartości",
"hint": "Zatwierdź to, co zgadza się z dokumentem. Niezaznaczone wartości zostaną odrzucone; nic nie zapisuje się bez Twojego potwierdzenia.",
"openOne": "Przejrzyj odczytaną wartość",
"openFew": "Przejrzyj odczytane wartości ({count})",
"openOther": "Przejrzyj odczytane wartości ({count})",
"includeAria": "Uwzględnij {value}",
"type": {
"OBSERVATION": "Wynik laboratoryjny",
"CONDITION": "Schorzenie",
"MEDICATION_STATEMENT": "Lek"
},
"statedRange": "Podany zakres {range}",
"needsCheck": "Sprawdź tę wartość z dokumentem, a potem ją zapisz.",
"verify": "Sprawdź",
"verifySave": "Zapisz wartość",
"verifyInvalid": "Podaj nazwę oraz wartość liczbową albo wynik tekstowy, nie oba naraz.",
"verifyFailed": "Nie udało się zapisać poprawki. Spróbuj ponownie.",
"fieldName": "Nazwa",
"fieldDate": "Data",
"fieldValue": "Wartość",
"fieldValueText": "Wynik (tekst)",
"fieldUnit": "Jednostka",
"fieldDose": "Dawka",
"unverifiedNoteOne": "1 wartość wymaga jeszcze sprawdzenia i pozostaje w oczekiwaniu.",
"unverifiedNoteFew": "{count} wartości wymagają jeszcze sprawdzenia i pozostają w oczekiwaniu.",
"unverifiedNoteOther": "{count} wartości wymaga jeszcze sprawdzenia i pozostaje w oczekiwaniu.",
"finish": "Zakończ przegląd",
"confirmFailed": "Nie udało się zapisać przeglądu. Spróbuj ponownie.",
"savedToastOne": "Zapisano 1 wartość",
"savedToastFew": "Zapisano {count} wartości",
"savedToastOther": "Zapisano {count} wartości",
"nothingSavedToast": "Przegląd zapisany. Nie dodano żadnych wartości.",
"extract": "Odczytaj wyniki laboratoryjne",
"extracting": "Odczytywanie…",
"extractHint": "Korzysta z tekstu już odczytanego z tego dokumentu. Odczytane wartości czekają na Twoją weryfikację; nic nie zapisuje się automatycznie.",
"extractEmpty": "Z tego dokumentu nie udało się odczytać żadnych wartości.",
"extractIncomplete": "Części dokumentu nie udało się odczytać w całości, więc może brakować niektórych wartości. Porównaj listę z dokumentem.",
"failUnitRequired": "Wartość liczbowa potrzebuje jednostki, zanim będzie można ją zapisać.",
"failUnitMismatch": "Podana jednostka nie zgadza się z zapisaną jednostką tego wskaźnika. Popraw ją i zakończ przegląd ponownie.",
"failGeneric": "Nie udało się zapisać tej wartości.",
"failUnknownBiomarker": "Wybrany biomarker już nie istnieje. Wybierz inny."
},
"contentIndex": {
"indexPrompt": "Udostępnij treść dokumentów do wyszukiwania.",
"indexAll": "Zindeksuj wszystko do wyszukiwania",
"indexAllPending": "Uruchamianie…",
"indexAllQueued": "Indeksowanie {count} dokumentu/ów w tle.",
"indexAllNothing": "Wszystko jest już zindeksowane.",
"indexAllError": "Nie udało się uruchomić indeksowania."
},
"share": {
"title": "Udostępnij ten dokument",
"multiTitle": "Udostępnij te dokumenty",
"multiLabel": "{count} dokumentów",
"description": "Utwórz link tylko do odczytu dla lekarza z dołączonym tym dokumentem. Link i hasło pojawią się tylko raz."
},
"chat": {
"title": "Porozmawiaj o tym dokumencie",
"openButton": "Zapytaj Coacha"
},
"readingConsent": {
"body": "Odczyt przez AI wysyła to do Twojej usługi AI poza tym serwerem. Czy HealthLog może wysyłać dokumenty, wyniki badań i opisy leków do odczytu?",
"grant": "Zezwól na odczyt",
"error": "Nie udało się zapisać zgody. Spróbuj ponownie."
},
"sourcePicker": {
"open": "Importuj z archiwum",
"openNamed": "Importuj z {name}",
"title": "Import z {name}",
"description": "Szukaj po nazwie, a potem zaznacz dokumenty, które HealthLog ma skopiować.",
"sourceLabel": "Archiwum",
"searchLabel": "Nazwa dokumentu",
"searchPlaceholder": "Szukaj po nazwie",
"tagLabel": "Tag",
"tagAny": "Dowolny tag",
"fromLabel": "Od",
"toLabel": "Do",
"clearFilters": "Wyczyść tag i daty",
"rangeInvalid": "Data końcowa jest wcześniejsza niż początkowa.",
"empty": "{name} nie ma dokumentów do pokazania.",
"noMatch": "Brak pasujących dokumentów.",
"loadMore": "Wczytaj więcej",
"stateImported": "W HealthLog",
"stateDeleted": "Usunięty w HealthLog",
"stateInTrash": "W sekcji Ostatnio usunięte",
"selectedCount": "Wybrano {count} z maksymalnie {max}",
"importAction": "Importuj ({count})",
"importing": "Importowanie, dokument po dokumencie…",
"done": "Gotowe",
"summary": "Zaimportowane: {imported}. Już były: {present}. Niezaimportowane: {failed}.",
"stopped": "Zatrzymano: {reason}",
"result": {
"waiting": "Czeka",
"working": "Importowanie…",
"imported": "Zaimportowano",
"importedLinked": "Zaimportowano i powiązano",
"duplicate": "Już jest w HealthLog",
"duplicateLinked": "Już jest w HealthLog, teraz powiązany",
"deleted": "Usunięty w HealthLog, pozostaje usunięty",
"restored": "Przywrócono z sekcji Ostatnio usunięte",
"restoredLinked": "Przywrócono z sekcji Ostatnio usunięte i powiązano"
},
"errors": {
"unavailable": "Archiwa dokumentów nie są włączone na tym serwerze.",
"notConnected": "To archiwum nie jest połączone. Połącz je w Ustawieniach, Integracje.",
"originNotAllowed": "Tego adresu nie ma na liście dozwolonych archiwów serwera. Poproś administrację o jego dodanie.",
"unreachable": "Nie udało się połączyć z archiwum. Sprawdź, czy działa i czy adres jest poprawny.",
"redirected": "Archiwum przekierowało żądanie. Wpisz adres, na który przekierowuje.",
"authRefused": "Archiwum odrzuciło token. Sprawdź token i jego uprawnienia.",
"versionTooOld": "Archiwum jest za stare. Potrzebny jest Paperless-ngx 2.16 lub nowszy.",
"badResponse": "Nie udało się odczytać odpowiedzi archiwum. Sprawdź, czy adres wskazuje na samo archiwum.",
"notFound": "Archiwum nie ma takiego dokumentu albo identyfikator organizacji jest błędny lub nie należy do ciebie.",
"linkTargetNotFound": "Wpis, z którym miało nastąpić powiązanie, już nie istnieje.",
"rateLimited": "Za dużo żądań. Odczekaj minutę i spróbuj ponownie.",
"browserOnly": "Z archiwów dokumentów można korzystać tylko w przeglądarce.",
"invalidAddress": "Wpisz pełny adres, zaczynający się od https:// lub http://.",
"organizationRequired": "Wpisz identyfikator organizacji Papra.",
"tokenRequired": "Wpisz token API. Nowy adres wymaga go ponownie.",
"fileTooLarge": "Plik jest większy, niż przyjmuje HealthLog.",
"quotaExceeded": "Miejsce na dokumenty jest pełne.",
"fileType": "HealthLog nie przyjmuje tego typu pliku.",
"uploadLimit": "Osiągnięto godzinny limit przesyłania. Spróbuj później.",
"uploadBusy": "Trwają jeszcze inne przesyłania. Spróbuj za chwilę.",
"moduleDisabled": "Dokumenty są wyłączone w ustawieniach.",
"generic": "Coś poszło nie tak. Spróbuj ponownie.",
"permissionMissing": "Klucz Papra nie może odczytać tagów. Nadaj mu uprawnienie tags:read."
},
"pickMore": "Wybierz więcej",
"finishedHint": "Wyszukaj ponownie lub zmień filtr, aby wybrać więcej dokumentów.",
"maxReached": "Możesz zaimportować naraz najwyżej {max} dokumentów.",
"noMatchHint": "Spróbuj części nazwy albo wyczyść tag i daty."
},
"customize": "Dostosuj widok",
"layout": {
"viewDescription": "Karty z miniaturą albo zwarta lista.",
"arrangementHeading": "Układ",
"arrangementDescription": "Każdy miesiąc osobno albo wszystko po kolei na całą szerokość.",
"stacked": "Miesiące jeden pod drugim",
"flow": "Ciągły",
"saveFailed": "Nie udało się zapisać widoku."
},
"deleteConfirm": {
"titleOne": "Usunąć ten dokument?",
"titleMany": "Usunąć dokumenty ({count})?",
"body": "Usunięte dokumenty zostają w sekcji Ostatnio usunięte przez {days} dni, a potem są usuwane na stałe.",
"action": "Usuń"
},
"trash": {
"title": "Ostatnio usunięte",
"subtitle": "Usunięte dokumenty zostają tu przez {days} dni, a potem są usuwane na stałe.",
"back": "Dokumenty",
"entryLabel": "Ostatnio usunięte ({count})",
"loadError": "Nie udało się wczytać sekcji Ostatnio usunięte.",
"emptyTitle": "Brak elementów w sekcji Ostatnio usunięte",
"emptyDescription": "To, co usuniesz, czeka tu {days} dni, zanim zostanie usunięte na stałe.",
"count": "Usunięte dokumenty ({count})",
"restoreAll": "Przywróć wszystkie",
"restore": "Przywróć",
"purge": "Usuń teraz",
"deletedOn": "Usunięto {date}.",
"removesIn": "Zostanie usunięty na stałe za {days} dni.",
"removesSoon": "Zostanie usunięty na stałe w ciągu doby.",
"restored": "Przywrócono dokument",
"openRestored": "Otwórz",
"restoreDuplicate": "Identyczny dokument jest już zapisany, więc tej kopii nie można przywrócić.",
"restorePartial": "Nie udało się przywrócić {failed} z {total}",
"purged": "Dokument usunięty na stałe",
"purgeFailed": "Nie udało się usunąć dokumentu.",
"purgeConfirmTitle": "Usunąć ten dokument na stałe?",
"purgeConfirmBody": "Zostanie usunięty teraz zamiast po okresie oczekiwania i nie będzie można go przywrócić."
}
},
"selfDescription": {
"dataPosture": "HealthLog jest hostowany samodzielnie: Twoje dane zdrowotne znajdują się w bazie danych Twojej instancji. Notatki i inne teksty swobodne, dokumenty, odpowiedzi w kwestionariuszach, teksty napisane przez AI i tokeny dostępu są zaszyfrowane w spoczynku; wartości pomiarów, wyniki badań laboratoryjnych, nazwy leków i oceny nastroju są przechowywane bez szyfrowania i zależą od bezpieczeństwa Twojego serwera. Funkcje AI wysyłają dane tylko do dostawcy AI skonfigurowanego dla Twojego konta i nie ma analityki firm trzecich na Twoich danych zdrowotnych."
},
"customMetrics": {
"sectionTitle": "Metryki własne",
"sectionSubtitle": "Pomiary, które sam definiujesz i śledzisz.",
"add": "Dodaj metrykę własną",
"addValue": "Dodaj wartość",
"defineTitle": "Zdefiniuj metrykę własną",
"defineDescription": "Nazwij pomiar, ustaw jego jednostkę i opcjonalnie zakres docelowy.",
"editTitle": "Edytuj metrykę własną",
"edit": "Edytuj",
"delete": "Usuń",
"deleteConfirmTitle": "Usunąć tę metrykę własną?",
"deleteConfirmDescription": "Metryka zostanie usunięta z listy. Zapisane wartości pozostaną.",
"deletedToast": "Usunięto metrykę własną",
"deleteError": "Nie udało się usunąć metryki własnej",
"showAllValues": "Pokaż wszystkie wartości",
"emptyDescription": "Zdefiniuj własne pomiary, aby je śledzić i przedstawiać na wykresie.",
"noValuesYet": "Brak wartości",
"loadError": "Nie udało się wczytać metryk własnych",
"loadMore": "Wczytaj więcej wartości",
"showingLatestOf": "Wyświetlono najnowsze {shown} z {total}",
"backToMeasurements": "Powrót do pomiarów",
"form": {
"name": "Nazwa",
"namePlaceholder": "np. Siła chwytu rano",
"unit": "Jednostka",
"unitPlaceholder": "np. kg",
"decimals": "Miejsca dziesiętne",
"decimalsPlaceholder": "np. 1",
"targetLow": "Cel dolny",
"targetLowPlaceholder": "Dolna granica",
"targetHigh": "Cel górny",
"targetHighPlaceholder": "Górna granica",
"description": "Opis",
"descriptionPlaceholder": "Co to mierzy (opcjonalnie)",
"targetHint": "Zakres docelowy jest opcjonalny i jest rysowany jako pasmo na wykresie.",
"correlationEnabled": "Używaj w analizie korelacji",
"correlationEnabledHint": "Dodaje tę metrykę jako ograniczony dzienny kanał zachowania. Domyślnie jest wyłączona.",
"requiredError": "Nazwa i jednostka są wymagane",
"rangeOrderError": "Cel dolny nie może przekraczać celu górnego",
"save": "Zapisz",
"savedToast": "Zapisano metrykę własną",
"updatedToast": "Zaktualizowano metrykę własną",
"saveError": "Nie udało się zapisać metryki własnej"
},
"entry": {
"value": "Wartość",
"measuredAt": "Data",
"note": "Notatka",
"addDescription": "Zapisz wartość dla tej metryki.",
"edit": "Edytuj wartość",
"editTitle": "Edytuj wartość",
"editDescription": "Zaktualizuj wartość, datę lub notatkę.",
"delete": "Usuń wartość",
"deleteConfirmTitle": "Usunąć tę wartość?",
"deleteConfirmDescription": "Ta wartość zostanie trwale usunięta.",
"valueError": "Podaj wartość liczbową",
"timestampError": "Podaj prawidłową datę",
"savedToast": "Zapisano wartość",
"saveError": "Nie udało się zapisać wartości",
"editedToast": "Zaktualizowano wartość",
"editError": "Nie udało się zaktualizować wartości",
"deletedToast": "Usunięto wartość",
"restoredToast": "Przywrócono wartość",
"restoreError": "Nie udało się przywrócić",
"deleteError": "Nie udało się usunąć wartości"
},
"chart": {
"empty": "Brak wartości w tym zakresie",
"valueLabel": "Wartość",
"range": {
"30": "30d",
"90": "90d",
"365": "1r",
"all": "Wszystko"
}
},
"detail": {
"title": "Metryka własna",
"genericDescription": "Pomiar, który śledzisz. Dodawaj wartości, aby obserwować go w czasie.",
"emptyTitle": "Brak wartości",
"emptyDescription": "Dodaj pierwszą wartość, aby zacząć przedstawiać tę metrykę na wykresie.",
"valuesTitle": "{metric}: wszystkie wartości",
"valuesDescription": "Wszystkie zapisane wartości tej metryki.",
"backToMetric": "Powrót do {metric}"
}
},
"nutrients": {
"names": {
"vitamin_a": "Witamina A",
"thiamin": "Tiamina (B1)",
"riboflavin": "Ryboflawina (B2)",
"niacin": "Niacyna (B3)",
"pantothenic_acid": "Kwas pantotenowy (B5)",
"vitamin_b6": "Witamina B6",
"biotin": "Biotyna (B7)",
"folate": "Foliany (B9)",
"vitamin_b12": "Witamina B12",
"vitamin_c": "Witamina C",
"vitamin_d": "Witamina D",
"vitamin_e": "Witamina E",
"vitamin_k": "Witamina K",
"calcium": "Wapń",
"iron": "Żelazo",
"magnesium": "Magnez",
"phosphorus": "Fosfor",
"zinc": "Cynk",
"copper": "Miedź",
"manganese": "Mangan",
"selenium": "Selen",
"chromium": "Chrom",
"molybdenum": "Molibden",
"iodine": "Jod",
"water": "Woda",
"caffeine": "Kofeina",
"dha": "DHA (kwas omega-3)",
"epa": "EPA (kwas omega-3)"
},
"page": {
"title": "Spożycie składników odżywczych",
"description": "Nawodnienie oraz spożycie witamin/minerałów zsynchronizowane z aplikacji zdrowia telefonu, plus ręczne wpisy wody.",
"moduleOffDescription": "Włącz moduł składników odżywczych, aby zobaczyć tu nawodnienie i spożycie witamin/minerałów. Zsynchronizowane dane staną się częścią zapisu, który może odczytać Coach.",
"moduleOffCta": "Włącz składniki odżywcze",
"emptyTitle": "Brak jeszcze danych o składnikach odżywczych",
"emptyDescription": "Dane pochodzą z synchronizacji aplikacji zdrowia telefonu lub z ręcznego wpisu wody.",
"loadError": "Nie udało się wczytać danych o składnikach odżywczych",
"lastAttemptTitle": "Synchronizacja dotarła, ale nic nie udało się zapisać",
"lastAttemptAt": "Ostatnia próba: {date}",
"lastAttemptReason": {
"unitMismatch": "Otrzymane wartości nie pasowały do jednostek, których ta aplikacja oczekuje dla tych składników odżywczych, więc nie udało się ich zapisać.",
"valueOutOfRange": "Otrzymane ilości były wyższe, niż ta aplikacja może wiarygodnie zapisać, więc nie udało się ich zapisać.",
"dayInvalid": "Wpisy zawierały datę, której serwer nie mógł zaakceptować. Może się to zdarzyć, gdy zegar lub strefa czasowa po stronie wysyłającej są nieprawidłowe, więc warto to sprawdzić.",
"upsertFailed": "Te wpisy dotarły do serwera, ale problem po naszej stronie uniemożliwił ich zapisanie. Nie musisz nic robić.",
"unknown": "Te wpisy dotarły, ale nie udało się ich zapisać."
}
},
"hydration": {
"referenceMeta": "Zalecane spożycie {value} {unit}/dzień (EFSA)",
"loadError": "Nie udało się załadować wody."
},
"caffeine": {
"ceilingMeta": "Bezpieczny limit {value} {unit}/dzień (EFSA)",
"loadError": "Nie udało się załadować kofeiny."
},
"micronutrients": {
"title": "Witaminy i minerały",
"rowMeta": "{days} z {window} dni, zalecane {value} {unit} (EFSA)",
"rowMetaNoRef": "{days} z {window} dni",
"footer": "{tracked} z {total} śledzonych mikroskładników ma dane w tym okresie.",
"emptyTitle": "Brak jeszcze zsynchronizowanych danych o mikroskładnikach",
"loadError": "Nie udało się wczytać danych o składnikach odżywczych",
"sourcePart": "{source} {value} {unit}",
"aboveUpperLimit": "Powyżej tolerowanego górnego poziomu spożycia dla dorosłych {value} {unit} dziennie ({source}).",
"aboveUpperLimitSupplemental": "Część z suplementów przekracza tolerowany górny poziom dla dorosłych {value} {unit} dziennie dla suplementów ({source}).",
"upperLimitForm": {
"retinol": "Poziom dotyczy tylko gotowej witaminy A (retinolu): jeśli ilość pochodzi z beta-karotenu, nie ma zastosowania.",
"folic_acid": "Poziom dotyczy kwasu foliowego z suplementów i żywności wzbogacanej, nie folianów ze zwykłego jedzenia.",
"magnesium_salts": "Poziom dotyczy łatwo dysocjujących soli magnezu w suplementach, nie magnezu z jedzenia.",
"alpha_tocopherol": "Poziom ustalono dla alfa-tokoferolu."
}
},
"sparseNote": "Niska wartość zwykle oznacza tu rzadkie zapisywanie, a nie niedobór. Dzienne sumy z Apple Health odzwierciedlają to, co zapisały twoje aplikacje, a nie całkowite spożycie w diecie.",
"units": {
"IU": "j.m."
},
"sources": {
"APPLE_HEALTH": "Zsynchronizowane",
"MANUAL": "Wpisane",
"SUPPLEMENT": "Suplementy"
}
},
"daily": {
"line": {
"allClear": "Dziś nic nie wymaga Twojej uwagi.",
"scoreReady": "Twój dzisiejszy wynik zdrowia jest gotowy."
},
"push": {
"title": "Twoje poranne podsumowanie",
"bodyProvisional": "{line}\nBrakuje jeszcze snu z zeszłej nocy.",
"titleScore": "Poranny wynik {score}",
"band": {
"green": "Dziś wszystko wygląda stabilnie.",
"yellow": "Dziś warto przyjrzeć się kilku rzeczom.",
"red": "Dziś niektóre obszary wymagają uwagi."
}
},
"item": {
"doseWindow": {
"title": "Lek do przyjęcia",
"body": "Dawka wkrótce do przyjęcia.",
"bodyNamed": "{name} wkrótce do przyjęcia.",
"overdueTitle": "Lek zaległy",
"overdueBody": "Dawka jest zaległa.",
"overdueBodyNamed": "{name} jest zaległy."
},
"preventiveCare": {
"title": "Badanie do wykonania",
"body": "{label} jest do wykonania.",
"bodyManyNamed": "Do wykonania: {labels}"
},
"syncIssue": {
"title": "Synchronizacja wymaga uwagi",
"body": "{integration} się nie synchronizuje. Połącz ponownie, aby dane były aktualne."
},
"coachCheckin": {
"title": "Czas przyjrzeć się planowi",
"body": "Minął mniej więcej tydzień, odkąd ustaliłeś ten plan. Zachowaj go, dostosuj lub odpuść. Bez presji.",
"bodyPlan": "Około tygodnia temu postanowiłeś: „{plan}”. Zachowaj to, dostosuj lub odpuść, bez presji.",
"adjustPrompt": "Chciałbym dostosować mój plan kontrolny.",
"adjustPromptPlan": "Chciałbym dostosować ten plan: „{plan}”"
},
"tensionWindow": {
"title": "Może chwila napięcia dzisiaj",
"body": {
"morning": "Twoje tętno przez dłuższą chwilę rano utrzymywało się powyżej wartości spoczynkowej, gdy byłeś w bezruchu. Możliwe napięcie.",
"afternoon": "Twoje tętno przez dłuższą chwilę po południu utrzymywało się powyżej wartości spoczynkowej, gdy byłeś w bezruchu. Możliwe napięcie.",
"evening": "Twoje tętno przez dłuższą chwilę wieczorem utrzymywało się powyżej wartości spoczynkowej, gdy byłeś w bezruchu. Możliwe napięcie.",
"night": "Twoje tętno przez dłuższą chwilę w nocy utrzymywało się powyżej wartości spoczynkowej, gdy byłeś w bezruchu. Możliwe napięcie."
}
},
"ecgNewRecording": {
"title": "Nowy zapis EKG",
"body": "Twoje urządzenie zarejestrowało nowe EKG, gotowe do podglądu.",
"bodyVerdict": "Twoje urządzenie zarejestrowało nowe EKG i zgłosiło: {verdict}.",
"verdict": {
"irregular": "możliwy nieregularny rytm",
"notDetected": "brak nieregularnego rytmu",
"inconclusive": "wynik niejednoznaczny"
}
},
"sameTimeBaseline": {
"title": {
"below": "Poniżej swojego zwykłego tempa",
"above": "Powyżej swojego zwykłego tempa"
},
"body": {
"below": "Do {time} masz {today} kroków. W zwykły dzień o tej porze jesteś w okolicach {typical}.",
"above": "Do {time} masz {today} kroków, powyżej zwykłych {typical} o tej porze."
}
},
"upcomingVisit": {
"title": "Zbliża się wizyta",
"bodyToday": "{what}, dzisiaj",
"bodyTomorrow": "{what}, jutro",
"bodyDayAfterTomorrow": "{what}, pojutrze"
}
},
"action": {
"logDose": "Zapisz dawkę",
"reconnect": "Połącz ponownie",
"viewCheckups": "Zobacz badania",
"viewAppointment": "Zobacz wizytę",
"viewAppointments": "Zobacz wizyty",
"checkinKeep": "Zachowaj",
"checkinAdjust": "Dostosuj",
"checkinLetGo": "Odpuść",
"viewMilestone": "Zobacz",
"viewPulse": "Zobacz tętno",
"viewEcg": "Zobacz zapis",
"viewSteps": "Zobacz kroki"
},
"today": {
"scoreLabel": "Wynik zdrowia",
"deltaVsBaseline": "{delta} wzgl. Twojej wartości bazowej",
"deltaFlat": "Zgodnie z Twoją wartością bazową",
"sleepPending": "Sen z ostatniej nocy jeszcze nie dotarł, więc dzisiejszy odczyt jest wstępny.",
"worthALook": "Warto sprawdzić",
"allClear": "Dziś nic nie wymaga Twojej uwagi.",
"ringLink": "Otwórz szczegóły: {metric}",
"heading": "Dziś",
"steadyWeeksOne": "Stabilnie od {count} tygodnia",
"steadyWeeksFew": "Stabilnie od {count} tygodni",
"steadyWeeksOther": "Stabilnie od {count} tygodni",
"valueWithUnit": "{value} {unit}",
"rangeWithUnit": "{low} do {high} {unit}",
"rangeAtThisTime": "{range} o tej porze dnia",
"vital": {
"RESTING_HEART_RATE": "Tętno spoczynkowe",
"HEART_RATE_VARIABILITY": "Zmienność rytmu serca",
"RESPIRATORY_RATE": "Częstość oddechów",
"OXYGEN_SATURATION": "Saturacja",
"BODY_TEMPERATURE": "Temperatura ciała",
"SKIN_TEMPERATURE": "Temperatura skóry",
"BLOOD_PRESSURE_SYS": "Ciśnienie skurczowe",
"BLOOD_PRESSURE_DIA": "Ciśnienie rozkurczowe",
"BLOOD_GLUCOSE": "Glukoza we krwi",
"PULSE": "Tętno",
"WEIGHT": "Waga",
"generic": "Parametr życiowy"
},
"steadyAtLeastWeeksOne": "Stabilnie od co najmniej {count} tygodnia",
"steadyAtLeastWeeksFew": "Stabilnie od co najmniej {count} tygodni",
"steadyAtLeastWeeksOther": "Stabilnie od co najmniej {count} tygodni"
},
"milestone": {
"metric": {
"restingHeartRate": "tętno spoczynkowe",
"heartRateVariability": "zmienność rytmu serca",
"respiratoryRate": "częstość oddechów",
"weight": "waga",
"generic": "ta wartość"
},
"record": {
"title": "Nowy rekord: {metric}",
"body": "Dziś osiągnięto Twój najlepszy wynik dla {metric}. Spokojnie odnotowane, nic nie musisz robić."
},
"returnToBaseline": {
"title": "Znów w Twoim zakresie: {metric}",
"body": "Twoja {metric} wróciła do zwykłego zakresu. Cokolwiek to było, minęło."
},
"sustainedInRange": {
"week1": {
"title": "Tydzień w zakresie",
"body": "Twoja {metric} od tygodnia mieści się w zwykłym zakresie. Ładnie i spokojnie."
},
"week2": {
"title": "Dwa tygodnie w zakresie",
"body": "Twoja {metric} od dwóch tygodni mieści się w zwykłym zakresie. Spokojnie i stabilnie."
},
"week3": {
"title": "Trzy tygodnie w zakresie",
"body": "Trzy tygodnie z {metric} w zwykłym zakresie. Naprawdę spokojny odcinek."
},
"week4": {
"title": "Miesiąc w zakresie",
"body": "Cały miesiąc z {metric} w zwykłym zakresie. Wspaniale stabilnie."
}
}
},
"lead": {
"vitalOutside": {
"above": "{metric}: {value}, powyżej Twojego zwykłego zakresu {range}.",
"below": "{metric}: {value}, poniżej Twojego zwykłego zakresu {range}."
},
"vitalsOutside": {
"aboveOne": "{metric}: {value}, powyżej Twojego zwykłego zakresu {range}. Poza zakresem jest też {count} inny parametr.",
"aboveFew": "{metric}: {value}, powyżej Twojego zwykłego zakresu {range}. Poza zakresem są też {count} inne parametry.",
"aboveOther": "{metric}: {value}, powyżej Twojego zwykłego zakresu {range}. Poza zakresem jest też {count} innych parametrów.",
"belowOne": "{metric}: {value}, poniżej Twojego zwykłego zakresu {range}. Poza zakresem jest też {count} inny parametr.",
"belowFew": "{metric}: {value}, poniżej Twojego zwykłego zakresu {range}. Poza zakresem są też {count} inne parametry.",
"belowOther": "{metric}: {value}, poniżej Twojego zwykłego zakresu {range}. Poza zakresem jest też {count} innych parametrów."
},
"sleep": {
"more": "Ostatnia noc: {duration} snu, o {diff} dłużej niż zwykle.",
"less": "Ostatnia noc: {duration} snu, o {diff} krócej niż zwykle.",
"usual": "Ostatnia noc: {duration} snu, mniej więcej tyle co zwykle.",
"plain": "Ostatnia noc: {duration} snu."
},
"vitalsInRangeOne": "Twój ostatni parametr życiowy mieści się w zwykłym zakresie.",
"vitalsInRangeFew": "Wszystkie {count} ostatnie parametry życiowe mieszczą się w zwykłym zakresie.",
"vitalsInRangeOther": "Wszystkie {count} ostatnich parametrów życiowych mieści się w zwykłym zakresie.",
"vitalInRange": "{metric}: {value}, w Twoim zwykłym zakresie {range}."
},
"todayFact": {
"restMode": {
"label": "Tryb odpoczynku",
"value": "Dzień {day}"
},
"medications": {
"label": "Leki",
"value": "Przyjęto {taken} z {scheduled}"
},
"appointment": {
"label": "Wizyta",
"today": "Dziś {time}, {what}",
"tomorrow": "Jutro {time}, {what}"
},
"sleep": {
"label": "Ostatnia noc",
"plain": "{duration}",
"usual": "{duration}, jak zwykle",
"more": "{duration}, o {diff} dłużej niż zwykle",
"less": "{duration}, o {diff} krócej niż zwykle"
},
"vitals": {
"label": "Parametry życiowe",
"allInOne": "Sprawdzono {count}, w zakresie",
"allInFew": "Sprawdzono {count}, wszystkie w zakresie",
"allInOther": "Sprawdzono {count}, wszystkie w zakresie",
"oneOut": {
"above": "{metric} powyżej zakresu",
"below": "{metric} poniżej zakresu"
},
"someOut": "{count} z {total} poza zakresem"
},
"cycle": {
"label": "Cykl",
"value": "{phase}, dzień {day}",
"dayOnly": "Dzień {day}"
}
}
},
"reportSelection": {
"leafAnamnesis": "Profil zdrowotny",
"groupIdentity": "Dane osobowe",
"groupVitals": "Parametry życiowe",
"groupCardio": "Serce i krążenie",
"groupBody": "Wymiary ciała",
"groupSleepRecovery": "Sen i regeneracja",
"groupActivity": "Aktywność",
"groupMobility": "Mobilność i chód",
"groupEnvironment": "Otoczenie",
"groupGlucose": "Poziom glukozy",
"groupLabs": "Wyniki badań",
"groupMedications": "Leki",
"groupHistory": "Choroby i alergie",
"groupSensitive": "Dane wrażliwe",
"leafPatientIdentity": "Imię, data urodzenia, płeć, wzrost",
"leafInsurance": "Ubezpieczyciel i numer ubezpieczenia",
"leafGlucosePanel": "Panel glukozy (czas w zakresie, GMI, zmienność)",
"leafLabResults": "Wyniki badań",
"leafMedicationList": "Lista leków",
"leafMedicationAdministrations": "Każda zarejestrowana dawka",
"leafMedicationCompliance": "Przestrzeganie zaleceń",
"leafGlp1Therapy": "Terapia GLP-1 (historia dawek, działania niepożądane)",
"leafAllergies": "Alergie i nietolerancje",
"leafIllnessEpisodes": "Epizody chorobowe",
"leafFamilyHistory": "Wywiad rodzinny",
"leafMood": "Nastrój",
"leafCycle": "Cykl menstruacyjny",
"templateStandard": "Standardowy raport lekarski",
"applyStandard": "Zastosuj {template}",
"standardHint": "Jedno kliknięcie wypełnia to, czego zwykle wymaga wizyta u lekarza rodzinnego. Każdą pozycję można potem zmienić.",
"groupCount": "{on}/{total}",
"groupDisclosure": "Pokaż pozycje w {group}",
"sensitiveHint": "Nic tu nie jest wstępnie wybrane. Wybierz każdą pozycję samodzielnie.",
"scopeNone": "Nic jeszcze nie wybrano. Wybierz, co ma się znaleźć w dokumencie, albo zastosuj raport standardowy.",
"scopeCount": "{count} pozycji z {groups} obszarów",
"scopeSensitive": "w tym {names}",
"leafVisits": "Wizyty lekarskie",
"leafSurgicalHistory": "Historia operacji",
"leafImmunizations": "Szczepienia",
"leafEmergency": "Informacje na wypadek nagły (grupa krwi, kontakty, oświadczenia)",
"leafMedicationEffect": "Zmiana wokół rozpoczęcia każdego leku (wymaga listy leków)",
"leafWorkouts": "Treningi (podsumowanie według dyscypliny)",
"leafHrvSdnn": "HRV (SDNN)"
},
"recordSharing": {
"banner": {
"viewing": "Jesteś w karcie użytkownika {name}",
"readOnly": "Możesz ją czytać, nie zmieniać.",
"canAdd": "Możesz coś dodać, ale nie zmieniać ani usuwać tego, co już jest.",
"leave": "Wróć do mojej karty"
},
"switcher": {
"label": "Otwórz kartę",
"ownRecord": "Moja własna karta"
},
"switch": {
"failed": "Nie udało się otworzyć tej karty. Spróbuj ponownie.",
"noLongerAvailable": "Ta karta nie jest już dla ciebie udostępniona."
},
"unavailable": {
"title": "Nie należy do udostępnionego dostępu",
"description": "Udostępniana jest sama karta zdrowia, w tym wywiad zdrowotny w sekcji Anamneza. Ustawienia konta, połączone usługi, powiadomienia i funkcje SI pozostają przy osobie, do której należy konto.",
"leave": "Wróć do mojej karty"
},
"state": {
"active": "Aktywny",
"pending": "Czeka na akceptację",
"expired": "Wygasł",
"revoked": "Zakończony"
},
"row": {
"readOnly": "Może czytać kartę",
"canWrite": "Może czytać i dodawać wpisy",
"canManage": "Może czytać kartotekę, dodawać wpisy oraz zmieniać i usuwać to, co w niej jest",
"entireRecord": "Obejmuje całą kartotekę",
"sections": "Obejmuje: {sections}",
"noSections": "Nie obejmuje niczego: ten dostęp nie otwiera żadnej części kartoteki",
"invited": "Zaproszono",
"accepted": "Zaakceptowano",
"expires": "Wygasa",
"lastUsed": "Ostatnio otwarto",
"neverUsed": "nigdy",
"endedByYou": "Zakończone przez ciebie",
"endedByOwner": "Wycofane",
"handedBack": "Zwrócone",
"ended": "Zakończone"
},
"invite": {
"title": "Zaproś kogoś",
"description": "Nic nie jest udostępniane, dopóki ta osoba nie zaakceptuje.",
"needsAccount": "Ta osoba potrzebuje własnego konta HealthLog na tej instancji i znajdzie zaproszenie w Ustawienia → Udostępniony dostęp.",
"identifierLabel": "Nazwa użytkownika lub e-mail",
"identifierPlaceholder": "Nazwa, którą się loguje",
"identifierHint": "Ta osoba potrzebuje konta na tej instancji. Nie można wysłać zaproszenia na niezarejestrowany adres.",
"accessLegend": "Co ta osoba może robić",
"accessReadLabel": "Może przeglądać",
"accessReadCapability": "Może czytać wszystko, co ta karta udostępnia. Nie może niczego dodać ani zmienić.",
"accessWriteLabel": "Może przeglądać i dodawać",
"accessWriteCapability": "Może dodawać do kartoteki, ale nie może niczego edytować ani usuwać, nawet tego, co sama dodała.",
"accessWriteDetail": "Może dodawać pomiary, wyniki badań, nowy analit do śledzenia, wpis o chorobie, działanie niepożądane leku i nowy lek oraz oznaczyć dawkę jako przyjętą lub pominiętą. Nie może niczego edytować ani usuwać, nawet tego, co sama dodała, ani odłożyć żadnego z Twoich przypomnień. Tylko Ty możesz.",
"accessManageLabel": "Może zarządzać",
"accessManageCapability": "Może dodawać, zmieniać i usuwać wpisy, także te, które wprowadziłeś samodzielnie.",
"accessManageDetail": "Może też czytać analizy wygenerowane na podstawie Twojej kartoteki. Nie może zmienić Twojego logowania, ustawień bezpieczeństwa, połączonych usług ani tego, kto jeszcze ma dostęp. Możesz to zakończyć w dowolnym momencie.",
"manageStepUpNote": "Można to zrobić tylko w przeglądarce, a jeśli masz drugi składnik logowania, poprosimy o niego.",
"scopeLegend": "Co ta osoba może otworzyć",
"scopeAllLabel": "Cała kartoteka",
"scopeAllCapability": "Każda jej część, tak jak udostępnianie działało do tej pory.",
"scopeSomeLabel": "Tylko wybrane przez Ciebie sekcje",
"scopeSomeCapability": "Wszystko, czego nie wybierzesz, pozostaje dla niej zamknięte.",
"scopeManageNote": "Dostęp zarządzający zawsze obejmuje całą kartotekę.",
"scopeLeakNote": "Sekcja może wspominać o reszcie Twojego zdrowia w notatkach i nazwach. Udostępnienie sekcji oznacza udostępnienie wszystkiego, co w niej zapisano.",
"scopeAggregateNote": "Przegląd na pulpicie, wynik zdrowia i dzienne podsumowanie pojawiają się tylko wtedy, gdy udostępniona jest cała kartoteka.",
"scopeDocumentsNote": "Dokument może zawierać wszystko. Udostępnij tę sekcję tylko wtedy, gdy ta osoba może przeczytać całość.",
"scopeEmptyHint": "Wybierz co najmniej jedną sekcję albo wróć do udostępniania całej kartoteki.",
"scopeChooseHint": "Wybierz, czy udostępnić całą kartotekę, czy tylko wybrane sekcje.",
"expiresLabel": "Dostęp kończy się (opcjonalnie)",
"expiresHint": "Zostaw puste, aby dostęp trwał, dopóki ktoś go nie zakończy. Data jest sprawdzana przy każdym żądaniu, więc dostęp kończy się sam z końcem tego dnia.",
"submit": "Wyślij zaproszenie",
"submitting": "Wysyłanie…",
"sent": "Zaproszenie wysłane do {name}.",
"errorNoAccount": "Na tej instancji nie ma konta o takiej nazwie.",
"errorDuplicate": "To konto ma już dostęp do twojej karty.",
"errorSelf": "To twoje własne konto.",
"errorInvalid": "Podaj nazwę użytkownika lub adres e-mail.",
"errorRateLimited": "Zbyt wiele zaproszeń. Spróbuj później.",
"errorFailed": "Nie udało się wysłać zaproszenia. Spróbuj ponownie.",
"errorScope": "Tych sekcji nie da się udostępnić w ten sposób. Wybierz co najmniej jedną sekcję albo udostępnij całą kartotekę.",
"errorManageBrowserOnly": "Dostęp zarządzający można przyznać tylko w przeglądarce.",
"errorStepUp": "Potwierdź drugi składnik logowania albo klucz dostępu i spróbuj ponownie.",
"errorOffline": "To nie dotarło do serwera. Twoje zaproszenie nadal tu jest. Sprawdź połączenie i spróbuj ponownie."
},
"given": {
"title": "Kto może otworzyć moją kartę",
"description": "Zakończony dostęp zostaje na liście, żebyś zawsze widział, kto go miał i kiedy.",
"emptyTitle": "Nikt inny nie może otworzyć twojej karty",
"emptyDescription": "Zaproś kogoś powyżej, jeśli chcesz, żeby mógł ją czytać.",
"loadError": "Nie udało się wczytać listy.",
"revoke": "Zakończ dostęp",
"withdrawInvite": "Wycofaj",
"revokeTitle": "Zakończyć dostęp dla {name}?",
"revokeBody": "Dostęp kończy się natychmiast, także w każdej przeglądarce, w której twoja karta jest otwarta. Tego, co już zostało zobaczone, nie da się cofnąć. Możesz zaprosić ponownie w dowolnej chwili.",
"revokeEntriesStay": "To, co ta osoba wpisała, zostaje w twojej karcie i możesz to samodzielnie usunąć.",
"revokeAttribution": "Kto co wpisał, pozostaje widoczne w widoku aktywności przez {days} dni.",
"revokeConfirm": "Zakończ dostęp"
},
"received": {
"title": "Karty, które mogę otworzyć",
"description": "Zaproszenie nic ci nie daje, dopóki go nie zaakceptujesz.",
"emptyTitle": "Nikt nie udostępnił ci karty",
"emptyDescription": "Kiedy ktoś cię zaprosi, zaproszenie pojawi się tutaj.",
"loadError": "Nie udało się wczytać listy.",
"accept": "Akceptuj",
"accepting": "Akceptowanie…",
"writeConsent": "Jeśli zaakceptujesz, to, co dodasz, stanie się częścią karty użytkownika {name}. Później nie będziesz mieć możliwości zmiany ani usunięcia wpisów; może to zrobić tylko {name}.",
"manageConsent": "Jeśli zaakceptujesz, będziesz mieć możliwość uzupełniania kartoteki użytkownika {name}, a także zmieniania i usuwania tego, co już w niej jest, łącznie z wpisami samego {name}. Wszystko, co zrobisz, zostanie zapisane pod Twoim imieniem w widoku aktywności, a {name} może zakończyć Twój dostęp w dowolnej chwili.",
"open": "Otwórz",
"renounce": "Zwróć",
"renounceTitle": "Zwrócić kartę użytkownika {name}?",
"renounceBody": "Tracisz dostęp natychmiast. Ta osoba może zaprosić cię ponownie w dowolnej chwili.",
"renounceConfirm": "Zwróć",
"detail": "Dostęp możesz zwrócić w dowolnej chwili."
},
"activity": {
"title": "Kiedy otwierano moją kartę",
"description": "Za każdym razem, gdy ktoś inny otworzył twoją kartę.",
"retention": "Obejmuje ostatnie {days} dni. Starsze wpisy są usuwane.",
"emptyTitle": "Nikt nie otworzył twojej karty",
"emptyDescription": "Otwarcia przez inne osoby pojawiają się tutaj, jedna linia na osobę i dzień.",
"loadError": "Nie udało się wczytać aktywności.",
"opened": "{name} otworzył twoją kartę {count}×",
"acted": "{name} wprowadził zmianę w twojej karcie",
"deletedAccount": "Usunięte konto"
},
"delegate": {
"addOnlyNote": "Możesz dodawać wpisy do tej karty. Zmieniać je i usuwać może tylko {name}."
},
"lookingAfter": {
"kindShared": "Udostępniona karta",
"kindManaged": "Zarządzany profil"
},
"managed": {
"title": "Profile, którymi się opiekujesz",
"description": "Karty zdrowia bez własnego logowania.",
"explainer": "Zarządzany profil to karta zdrowia osoby, która sama się nie loguje, na przykład dziecka albo kogoś, kim się opiekujesz. Nie ma logowania ani adresu e-mail, a Ty stajesz się pierwszą osobą opiekującą się profilem. Później możesz dodać kolejne, a każda z was może wejść do karty i ją uzupełniać.",
"nameLabel": "Nazwa",
"namePlaceholder": "Nazwa, po której rozpoznasz tę kartę",
"nameHint": "Do 80 znaków. Wyświetla się wszędzie tam, gdzie pojawia się ta karta.",
"nameRequired": "Nadaj karcie nazwę.",
"nameTooLong": "Ta nazwa ma więcej niż 80 znaków.",
"dobLabel": "Data urodzenia (opcjonalnie)",
"dobHint": "Zostaw puste, jeśli wolisz jej nie zapisywać. Z samego rocznika nic nie jest wyliczane.",
"localeLabel": "Język tej karty",
"localeHint": "Język tekstów zapisywanych w tej karcie. Twoje własne widoki pozostają w Twoim języku.",
"genderLabel": "Płeć (opcjonalnie)",
"genderHint": "Decyduje, czy śledzenie cyklu jest na start włączone dla tego profilu. Możesz to zmienić w każdej chwili.",
"genderNone": "Nie podano",
"genderMale": "Mężczyzna",
"genderFemale": "Kobieta",
"genderOther": "Inna",
"timezoneHint": "Strefa, w której liczone są dni tej karty.",
"timezoneInvalid": "Ta przeglądarka nie zna takiej strefy czasowej.",
"create": "Utwórz profil",
"creating": "Tworzenie…",
"created": "{name} jest gotowy. Do tej karty przejdziesz z menu konta.",
"errorStepUp": "Potwierdź drugi składnik logowania albo klucz dostępu i spróbuj ponownie.",
"errorOffline": "To nie dotarło do serwera. Nic się nie zmieniło. Sprawdź połączenie i spróbuj ponownie.",
"errorInvalid": "Serwer odrzucił te dane. Sprawdź nazwę, datę i strefę czasową.",
"errorFailed": "Nie udało się utworzyć profilu.",
"edit": "Edytuj",
"editSave": "Zapisz zmiany",
"editSaving": "Zapisywanie…",
"editLoadError": "Nie udało się wczytać tych danych.",
"editErrorGone": "Tego profilu już nie ma albo już się nim nie opiekujesz.",
"editErrorFailed": "Nie udało się zapisać zmian.",
"delete": "Usuń profil",
"deleteTitle": "Usunąć {name}?",
"deleteBody": "Wszystko, co zapisano dla {name}, znika razem z profilem: pomiary, leki, dokumenty i notatki. Tego nie da się cofnąć.",
"deleteGuardiansOne": "{count} osoba opiekuje się dziś tą kartą i ją straci.",
"deleteGuardiansFew": "{count} osoby opiekują się dziś tą kartą i ją stracą.",
"deleteGuardiansOther": "{count} osób opiekuje się dziś tą kartą i ją straci.",
"deleteFloorNote": "To także wyjście, gdy jesteś ostatnią osobą opiekującą się profilem: możesz zamknąć kartę, ale nie zostawić jej bez opieki.",
"deleteConfirm": "Usuń profil",
"guardiansTitle": "Kto opiekuje się kartą {name}",
"guardianYou": "(Ty)",
"guardianSince": "Opiekuje się tą kartą od {date}",
"guardianPending": "Zaproszenie z {date}, jeszcze nieprzyjęte",
"guardianRemove": "Zakończ dostęp",
"guardianRemoveTitle": "Zakończyć dostęp osoby {name}?",
"guardianRemoveBody": "{name} nie będzie już mogła otworzyć karty {profile}. To, co zapisała, zostaje w karcie.",
"guardianWithdrawBody": "Zaproszenie dla osoby {name} zostaje wycofane. Nigdy nie otworzyła karty {profile}, więc w karcie nic się nie zmienia.",
"guardianRemoveConfirm": "Zakończ dostęp",
"soleGuardian": "Jesteś jedyną osobą, która opiekuje się kartą {name}, więc nie ma tu dostępu, który mógłbyś zakończyć. Zaproś kogoś i poczekaj na przyjęcie, oddaj własny dostęp w sekcji „Karty, które mogę otworzyć” albo usuń profil.",
"guardianInviteLabel": "Zaproś kolejną osobę opiekującą się profilem",
"guardianInvite": "Wyślij zaproszenie",
"guardianInviting": "Wysyłanie…",
"guardianInvited": "Zaproszenie wysłane do osoby {name}.",
"guardianExpiresHint": "Opcjonalnie. Dostęp kończy się z końcem tego dnia w Twojej strefie czasowej.",
"guardianPendingNote": "Zaproszona osoba liczy się dopiero po przyjęciu zaproszenia. Do tego czasu wciąż jesteś ostatnia, a oddanie własnego dostępu nadal będzie odrzucane.",
"guardianErrorDuplicate": "To konto ma już dostęp do tej karty.",
"guardianErrorManagedInvitee": "Zarządzany profil nie może opiekować się inną kartą. Zaproś konto, które samo się loguje.",
"guardianErrorNoAccount": "W tej instancji nie ma konta o takiej nazwie ani takim adresie e-mail.",
"guardianErrorRateLimit": "Zbyt wiele zaproszeń w ostatniej godzinie. Odczekaj chwilę i spróbuj ponownie.",
"guardianErrorFailed": "Nie udało się wysłać zaproszenia.",
"errorMfaRequired": "To wymaga drugiego składnika logowania albo klucza dostępu, a Twoje konto nie ma jeszcze żadnego z nich. Skonfiguruj jeden w Ustawieniach → Bezpieczeństwo i spróbuj ponownie.",
"rosterLoadError": "Nie udało się wczytać, kto opiekuje się tą kartą.",
"errorRateLimit": "Zbyt wiele profili utworzonych w ostatniej godzinie. Odczekaj chwilę i spróbuj ponownie.",
"handover": {
"action": "Przekaż",
"title": "Przekaż osobie {name}",
"description": "Daj osobie {name} własne logowanie. Nic nie jest kopiowane ani przenoszone: karta staje się jej kontem.",
"guardiansLabel": "Dostęp po przekazaniu",
"guardiansHint": "Twoja propozycja. {name} zobaczy ją i zdecyduje po zalogowaniu.",
"access": {
"end": "Brak dostępu",
"read": "Tylko podgląd",
"manage": "Zarządzanie"
},
"expiryLabel": "Link ważny przez",
"expiry1": "1 dzień",
"expiry7": "7 dni",
"expiry14": "14 dni",
"minorHint": "{name} ma mniej niż 16 lat. Warto zachować dostęp do podglądu i omówić ten krok wspólnie.",
"irreversible": "Gdy {name} użyje linku, przekazania nie da się cofnąć. Karta będzie należeć do tej osoby i to ona zdecyduje, kto zachowa dostęp.",
"afterwards": "{name} osobiście potwierdzi zastrzeżenie i każdą zgodę na AI. Przypomnienia dotyczące tej karty przestaną do Ciebie trafiać.",
"replaceNote": "Utworzenie nowego linku wycofuje otwarty.",
"create": "Utwórz link",
"creating": "Tworzenie…",
"linkOnce": "Ten link jest widoczny tylko teraz. Przekaż go osobie {name} osobiście lub zaufanym kanałem albo pozwól zeskanować kod.",
"qrAlt": "Kod QR linku przekazania dla {name}",
"urlLabel": "Link przekazania",
"copy": "Kopiuj",
"copied": "Link skopiowany",
"copyError": "Nie udało się skopiować linku. Zaznacz go i skopiuj ręcznie.",
"linkExpires": "Ważny do {date}.",
"done": "Gotowe",
"pending": "Link przekazania jest otwarty do {date}.",
"replace": "Nowy link",
"revoke": "Wycofaj link",
"revoked": "Link wycofany",
"revokeFailed": "Nie udało się wycofać linku. Spróbuj ponownie.",
"errorFailed": "Nie udało się utworzyć linku przekazania.",
"errorRosterChanged": "W międzyczasie zmieniło się, kto opiekuje się kartą. Zamknij to i otwórz ponownie.",
"oidcOnly": "Przekazanie profilu nie jest możliwe na tym serwerze.",
"loadError": "Nie udało się wczytać stanu przekazania.",
"entryHint": "Gdy {name} chce samodzielnie prowadzić tę kartę.",
"methodSso": "{name} loguje się przez logowanie jednokrotne (SSO), gdy użyje linku.",
"methodBoth": "{name} może ustawić hasło albo zalogować się przez logowanie jednokrotne (SSO)."
},
"deleteBodyGrace": "Wszystko, co zapisano dla {name}, znika razem z profilem: pomiary, leki, dokumenty i notatki. Profil zostaje od razu zablokowany i usunięty po {days} dniach. Do tego czasu administrator tego serwera może cofnąć usunięcie."
},
"toast": {
"savedTo": "Zapisano w karcie użytkownika {name}"
},
"activityVerb": {
"measurementCreate": "{name} dodał pomiar",
"labResultCreate": "{name} dodał wynik badania",
"allergyCreate": "{name} dodał alergię",
"familyHistoryCreate": "{name} dodał wpis w wywiadzie rodzinnym",
"illnessEpisodeCreate": "{name} dodał chorobę",
"biomarkerCreate": "{name} dodał biomarker",
"customMetricEntryCreate": "{name} zapisał własny pomiar",
"medicationSideEffectCreate": "{name} zanotował działanie niepożądane",
"medicationCreate": "{name} dodał lek",
"medicationIntake": "{name} zapisał przyjęcie dawki",
"medicationIntakeRefused": "{name} próbował(a) zmienić dawkę lub odłożyć przypomnienie i został(a) odrzucony(-a)",
"measurementUpdate": "{name} zmienił pomiar",
"measurementDelete": "{name} usunął pomiar",
"measurementDeleteBulk": "{name} usunął kilka pomiarów naraz",
"measurementRestore": "{name} przywrócił pomiar",
"measurementReminderCreate": "{name} dodał przypomnienie o pomiarze",
"measurementReminderUpdate": "{name} zmienił przypomnienie o pomiarze",
"measurementReminderDelete": "{name} usunął przypomnienie o pomiarze",
"measurementReminderComplete": "{name} zrealizował przypomnienie o pomiarze",
"measurementReminderSatisfy": "{name} zamknął przypomnienie o pomiarze",
"measurementReminderSkip": "{name} pominął(-ęła) przypomnienie o pomiarze",
"measurementReminderSnooze": "{name} przełożył(-yła) przypomnienie o pomiarze",
"labResultUpdate": "{name} zmienił wynik badania",
"labResultDelete": "{name} usunął wynik badania",
"labResultRestore": "{name} przywrócił wynik badania",
"biomarkerUpdate": "{name} zmienił biomarker",
"biomarkerDelete": "{name} usunął biomarker",
"allergyUpdate": "{name} zmienił alergię",
"allergyDelete": "{name} usunął alergię",
"familyHistoryUpdate": "{name} zmienił wpis w wywiadzie rodzinnym",
"familyHistoryDelete": "{name} usunął wpis w wywiadzie rodzinnym",
"illnessEpisodeUpdate": "{name} zmienił wpis o chorobie",
"illnessEpisodeDelete": "{name} usunął wpis o chorobie",
"illnessEpisodeResolve": "{name} oznaczył chorobę jako zakończoną",
"illnessEpisodeRestore": "{name} przywrócił wpis o chorobie",
"encounterVisitCreate": "{name} dodał wizytę lekarską",
"encounterVisitUpdate": "{name} zmienił wizytę lekarską",
"encounterVisitDelete": "{name} usunął wizytę lekarską",
"encounterVisitRestore": "{name} przywrócił wizytę lekarską",
"vaccinationRecordCreate": "{name} dodał szczepienie",
"vaccinationRecordUpdate": "{name} zmienił szczepienie",
"vaccinationRecordDelete": "{name} usunął szczepienie",
"vaccinationRecordRestore": "{name} przywrócił szczepienie",
"practitionerContactCreate": "{name} dodał gabinet do książki adresowej",
"practitionerContactUpdate": "{name} zmienił wpis w książce adresowej",
"practitionerContactDelete": "{name} usunął wpis w książce adresowej",
"practitionerContactRestore": "{name} przywrócił wpis w książce adresowej",
"illnessDayLogUpsert": "{name} zapisał dzień choroby",
"medicationUpdate": "{name} zmienił lek",
"medicationCourseEnd": "{name} zakończył kurację",
"medicationDelete": "{name} usunął lek",
"medicationGlp1Update": "{name} zmienił terapię GLP-1",
"medicationScheduleCreate": "{name} dodał schemat dawkowania",
"medicationScheduleUpdate": "{name} zmienił schemat dawkowania",
"medicationScheduleDelete": "{name} usunął schemat dawkowania",
"medicationInventoryCreate": "{name} dodał opakowanie leku",
"medicationInventoryUpdate": "{name} zmienił opakowanie leku",
"medicationInventoryDelete": "{name} usunął opakowanie leku",
"medicationSideEffectDelete": "{name} usunął działanie niepożądane",
"medicationIntakeUpdate": "{name} zmienił przyjęcie dawki",
"medicationIntakeDelete": "{name} usunął przyjęcie dawki",
"medicationIntakeBulkDelete": "{name} usunął kilka przyjęć dawek naraz",
"medicationIntakePurge": "{name} skasował całą historię przyjmowania leku",
"medicationIntakeImport": "{name} rozpoczął import przyjęć dla jednego leku",
"medicationIntakeHistoryImport": "{name} rozpoczął import historii przyjmowania",
"moodEntryCreate": "{name} dodał wpis nastroju",
"moodEntryUpdate": "{name} zmienił wpis nastroju",
"moodEntryDelete": "{name} usunął wpis nastroju",
"moodDeleteBulk": "{name} usunął kilka wpisów nastroju naraz",
"moodRestore": "{name} przywrócił wpis nastroju",
"mentalHealthCreate": "{name} zapisał wynik kwestionariusza",
"cycleDelete": "{name} usunął cykl",
"cycleDayLogUpsert": "{name} zapisał dzień cyklu",
"cycleDayLogUpdate": "{name} zmienił dzień cyklu",
"cycleDayLogDelete": "{name} usunął dzień cyklu",
"cyclePeriodBoundary": "{name} zmienił początek lub koniec miesiączki",
"cycleSymptomCreate": "{name} dodał objaw cyklu",
"nutrientWaterWrite": "{name} zapisał ilość wypitej wody",
"healthRecordExport": "{name} wyeksportował kartę",
"rejectedMeasurementQuery": "{name} wysłał zapytanie o pomiary, którego ta karta nie mogła odczytać",
"rejectedDoseQuery": "{name} wysłał zapytanie o dawki, którego ta karta nie mogła odczytać",
"rejectedMoodQuery": "{name} wysłał zapytanie o nastrój, którego ta karta nie mogła odczytać",
"rejectedMeasurementCreate": "{name} próbował dodać pomiar i został odrzucony",
"rejectedMeasurementBatch": "{name} próbował dodać kilka pomiarów i został odrzucony",
"rejectedMeasurementUpdate": "{name} próbował zmienić pomiar i został odrzucony",
"rejectedLabCreate": "{name} próbował dodać wynik badania i został odrzucony",
"rejectedLabUpdate": "{name} próbował zmienić wynik badania i został odrzucony",
"rejectedBiomarkerCreate": "{name} próbował dodać biomarker i został odrzucony",
"rejectedBiomarkerUpdate": "{name} próbował zmienić biomarker i został odrzucony",
"rejectedReminderCreate": "{name} próbował dodać przypomnienie o pomiarze i został odrzucony",
"rejectedReminderUpdate": "{name} próbował zmienić przypomnienie o pomiarze i został odrzucony",
"rejectedMoodCreate": "{name} próbował dodać wpis nastroju i został odrzucony",
"rejectedMoodUpdate": "{name} próbował zmienić wpis nastroju i został odrzucony",
"rejectedDoseCreate": "{name} próbował zapisać przyjęcie dawki i został odrzucony",
"rejectedDoseUpdate": "{name} próbował zmienić przyjęcie dawki i został odrzucony",
"rejectedDoseImport": "{name} próbował zaimportować przyjęcia dawek i został odrzucony",
"rejectedTrackedValue": "{name} próbował zapisać własny pomiar i został odrzucony",
"rejectedTrackedValueTypeCreate": "{name} próbował dodać własny typ pomiaru i został odrzucony",
"rejectedTrackedValueTypeUpdate": "{name} próbował zmienić własny typ pomiaru i został odrzucony",
"rejectedMedicationLayout": "{name} próbował zmienić kolejność listy leków i został odrzucony",
"deniedDoseImport": "Import przyjęć rozpoczęty przez {name} nie mógł zostać zakolejkowany",
"anamnesisFactCreate": "{name} dodał fakt z wywiadu zdrowotnego",
"customMetricCreate": "{name} dodał własny typ pomiaru",
"customMetricUpdate": "{name} zmienił własny typ pomiaru",
"customMetricDelete": "{name} usunął własny typ pomiaru",
"documentStore": "{name} dodał dokument",
"documentUpdate": "{name} zmienił dokument",
"documentDiscard": "{name} odrzucił dokument",
"medicationIntakeImportFinished": "Import przyjęć rozpoczęty przez {name} zakończył się",
"medicationOneShotReconciled": "Lek jednorazowy został otwarty lub zamknięty po dawce zapisanej przez {name}",
"vaccinationBoosterPlanned": "{name} zaplanował dawkę przypominającą",
"medicationCategoryCreate": "{name} dodał kategorię leków",
"symptomEventCreate": "{name} zapisał(a) objaw",
"symptomEventUpdate": "{name} edytował(a) wpis objawu",
"symptomEventDelete": "{name} usunął(-ęła) wpis objawu",
"symptomDefinitionCreate": "{name} dodał(a) objaw",
"symptomDefinitionUpdate": "{name} zmienił(a) objaw",
"symptomDefinitionDelete": "{name} usunął(-ęła) objaw",
"customVaccineCreate": "{name} dodał własną szczepionkę",
"customVaccineUpdate": "{name} zmienił własną szczepionkę",
"customVaccineDelete": "{name} usunął własną szczepionkę",
"lifeEventCreate": "{name} dodał wydarzenie życiowe",
"lifeEventUpdate": "{name} zmienił wydarzenie życiowe",
"lifeEventDelete": "{name} usunął wydarzenie życiowe",
"biomarkerMerge": "{name} scalił biomarkery",
"medicationIngredientsUpdate": "{name} zmienił skład suplementu",
"auditCCreate": "{name} wypełnił kwestionariusz AUDIT-C",
"auditCDelete": "{name} usunął wpis AUDIT-C"
},
"section": {
"measurements": {
"label": "Pomiary",
"detail": "Waga, ciśnienie, tętno, glukoza, sen, treningi i śledzone przez Ciebie wartości."
},
"medications": {
"label": "Leki",
"detail": "Lista leków, harmonogramy, przyjęte dawki, działania niepożądane i stan zapasów."
},
"labs": {
"label": "Wyniki badań",
"detail": "Wyniki laboratoryjne i lista analitów, które za nimi stoją."
},
"profile": {
"label": "Historia zdrowia",
"detail": "Alergie, wywiad rodzinny, dane z Twojego profilu zdrowotnego, wizyty lekarskie i gabinety oraz Twoja historia szczepień."
},
"illness": {
"label": "Choroby",
"detail": "Epizody chorobowe i prowadzone przy nich wpisy dzienne."
},
"mind": {
"label": "Nastrój i zdrowie psychiczne",
"detail": "Wpisy o nastroju i historia kwestionariuszy zdrowia psychicznego. Wypełniony kwestionariusz zapisuje też swój wynik łączny jako pomiar."
},
"cycle": {
"label": "Cykl",
"detail": "Śledzenie cyklu."
},
"documents": {
"label": "Dokumenty",
"detail": "Wszystko, co jest przechowywane w sejfie dokumentów."
}
},
"actionError": {
"retry": "Spróbuj ponownie",
"offline": "To nie dotarło do serwera. Nic się nie zmieniło. Sprawdź połączenie i spróbuj ponownie.",
"rateLimited": "Zbyt wiele prób pod rząd. Odczekaj minutę i spróbuj ponownie.",
"acceptExpired": "To zaproszenie wygasło. Poproś o nowe.",
"acceptWithdrawn": "To zaproszenie zostało wycofane.",
"acceptNotPending": "To zaproszenie zostało już przyjęte.",
"acceptNotFound": "Tego zaproszenia już nie ma.",
"acceptFailed": "Nie udało się przyjąć zaproszenia.",
"lastGuardian": "Ta osoba jako jedyna opiekuje się tym profilem, więc ten dostęp nie może się jeszcze zakończyć. Dodaj najpierw kolejną osobę opiekującą się profilem albo usuń profil.",
"alreadyEnded": "Ten dostęp już się zakończył.",
"notFound": "Tego dostępu już nie ma.",
"revokeFailed": "Nie udało się zakończyć dostępu.",
"renounceFailed": "Nie udało się zwrócić dostępu.",
"profileNotFound": "Tego profilu już nie ma. Mógł zostać usunięty albo Twój dostęp do niego się zakończył.",
"deleteProfileFailed": "Nie udało się usunąć profilu.",
"removeGuardianFailed": "Nie udało się zakończyć tego dostępu."
},
"anamnesis": {
"relativeNote": "Wpis w wywiadzie rodzinnym opisuje bliskich tej osoby. Dodaj go tylko wtedy, gdy chciałaby, żeby został tu zapisany."
},
"handoverDecision": {
"title": "Kto zachowuje dostęp do Twojej karty",
"description": "Zdecyduj, co od teraz mogą osoby, które prowadziły Twoją kartę.",
"proposed": "Proponowane: {access}",
"settled": "Już zmienione w Udostępnionym dostępie",
"empty": "Nikt inny nie miał dostępu do Twojej karty.",
"later": "Możesz to zmienić w każdej chwili w Ustawieniach, Udostępniony dostęp.",
"save": "Potwierdź",
"saving": "Zapisywanie…",
"decideLater": "Później",
"errorFailed": "Nie udało się zapisać decyzji. Spróbuj ponownie.",
"loadError": "Nie udało się wczytać osób, które prowadziły Twoją kartę.",
"notificationsTitle": "Ustaw własne przypomnienia",
"notificationsBody": "Do tej pory przypomnienia dla tej karty trafiały do osób, które ją prowadziły. Od teraz trafiają do Ciebie, gdy tylko dodasz kanał powiadomień.",
"notificationsAction": "Otwórz powiadomienia"
}
},
"encounters": {
"kind": {
"routine": "Wizyta kontrolna",
"acute": "Wizyta pilna",
"specialist": "Wizyta u specjalisty",
"preventive": "Badanie profilaktyczne",
"emergency": "Nagły przypadek",
"hospital": "Szpital",
"therapy": "Sesja terapeutyczna",
"other": "Wizyta lekarska",
"procedure": "Zabieg lub operacja"
},
"laterality": {
"left": "Lewa strona",
"right": "Prawa strona",
"both": "Obie strony",
"none": "Nie podano"
},
"bodySiteWithSide": "{site} ({side})",
"sectionTitle": "Wizyty",
"sectionDescription": "Wizyty u lekarza i umówione terminy w jednym miejscu.",
"add": "Wizyta",
"loadError": "Nie udało się wczytać wizyt.",
"emptyTitle": "Brak zapisanych wizyt",
"emptyDescription": "Wystarczy data. Reszta jest opcjonalna.",
"upcomingHeading": "Nadchodzące",
"pastHeading": "Minione",
"createTitle": "Zapisz wizytę",
"editTitle": "Edytuj wizytę",
"formDescription": "Wymagana jest tylko data.",
"created": "Wizyta zapisana",
"updated": "Wizyta zaktualizowana",
"saveFailed": "Nie udało się zapisać wizyty.",
"checkupNotClosed": "Wizyta zapisana. Badanie pozostaje otwarte, bo twój dostęp tego nie obejmuje.",
"status": {
"planned": "Zaplanowana",
"done": "Odbyta",
"cancelled": "Odwołana",
"noShow": "Niewykorzystana"
},
"card": {
"documentCount": "powiązane dokumenty",
"labCount": "powiązane wyniki badań",
"conditionCount": "powiązane choroby"
},
"form": {
"date": "Data i godzina",
"dateDerivesStatusHint": "Data w przyszłości oznacza umówiony termin.",
"status": "Status",
"practitioner": "Gabinet lub lekarz",
"practitionerHint": "Opcjonalne: nazwę możesz dodać później.",
"practitionerNone": "Nie podano",
"practitionerSearch": "Szukaj nazwiska lub gabinetu",
"practitionerNoMatch": "Nie znaleziono wpisu.",
"practitionerAdd": "Dodaj nowy",
"practitionerClear": "Usuń wybór",
"kind": "Rodzaj",
"reason": "Powód",
"outcome": "Wynik",
"outcomeReveal": "Dodaj wynik",
"bodySite": "Miejsce na ciele",
"bodySiteHint": "Na przykład kolano lub pęcherzyk żółciowy.",
"laterality": "Strona",
"linkDocuments": "Dokumenty",
"linkLabResults": "Wyniki badań",
"linkConditions": "Choroby",
"linkNothingToOffer": "Na razie nie ma nic do powiązania."
},
"deleteTitle": "Usunąć tę wizytę?",
"deleteDescription": "Wpis zostanie usunięty. Jeśli wizyta jest umówiona, przypomnienie o niej też zniknie.",
"deleteFailed": "Nie udało się usunąć wizyty.",
"suggestion": {
"single": "Czy to należy do tej wizyty?",
"choose": "Do której wizyty to należy?"
},
"episodeCard": {
"title": "Powiązane wizyty",
"emptyLine": "Do tej choroby nie przypisano jeszcze żadnej wizyty.",
"add": "Dodaj wizytę"
},
"dashboard": {
"nextVisit": "Najbliższa wizyta: {what}, {when}"
},
"procedures": {
"title": "Zabiegi i operacje",
"description": "Wszystkie zabiegi i operacje, które przeszedłeś, od najnowszych.",
"add": "Zabieg",
"searchLabel": "Filtruj według miejsca na ciele",
"searchPlaceholder": "Na przykład kolano",
"sitesLabel": "Miejsca na ciele",
"allSites": "Wszystkie",
"count": "{shown} z {total}",
"emptyTitle": "Nie zapisano jeszcze żadnego zabiegu",
"emptyDescription": "Zapisz wizytę rodzaju Zabieg lub operacja albo zmień rodzaj istniejącej wizyty.",
"noMatchTitle": "Nic nie pasuje do tego filtra",
"clearFilter": "Wyczyść filtr",
"loadError": "Nie udało się wczytać zabiegów."
},
"preparation": {
"practitioner": "Od ostatniej wizyty ({name}) {date}",
"specialty": "Od ostatniej wizyty ({specialty}) {date}",
"kind": "Od ostatniej wizyty tego samego rodzaju ({kind}) {date}",
"default": "Ostatnie {days} dni",
"defaultReason": "Brak wcześniejszej wizyty w tym samym gabinecie, tej samej specjalizacji lub tego samego rodzaju."
}
},
"checkups": {
"viewSwitchLabel": "Pokaż badania profilaktyczne, wizyty, zabiegi lub miejsca na ciele",
"tabVorsorge": "Profilaktyka",
"tabVisits": "Wizyty",
"tabProcedures": "Zabiegi",
"tabBodySites": "Miejsca na ciele"
},
"practitioners": {
"title": "Gabinety i lekarze",
"description": "Twoja własna książka adresowa: wpisz gabinet raz, wybieraj go wszędzie.",
"linkLabel": "Książka adresowa",
"searchPlaceholder": "Szukaj nazwiska, gabinetu lub specjalizacji",
"loadError": "Nie udało się wczytać książki adresowej.",
"emptyTitle": "Brak wpisów",
"emptyDescription": "Dodaj gabinet, aby móc go wybrać przy zapisywaniu wizyty.",
"noMatchTitle": "Brak wyników",
"noMatchDescription": "Żaden wpis nie pasuje do tego wyszukiwania.",
"createTitle": "Dodaj wpis",
"editTitle": "Edytuj wpis",
"formDescription": "Wymagana jest tylko nazwa.",
"name": "Nazwa",
"specialty": "Specjalizacja",
"practice": "Gabinet",
"location": "Adres",
"phone": "Telefon",
"note": "Notatka",
"noteHint": "Zapisywana w postaci zaszyfrowanej.",
"saveFailed": "Nie udało się zapisać wpisu.",
"deleteTitle": "Usunąć ten wpis?",
"deleteDescription": "Twoje dotychczasowe wizyty pozostają i zachowują tę nazwę.",
"deleteFailed": "Nie udało się usunąć wpisu.",
"noSpecialtyGroup": "Bez specjalizacji"
},
"links": {
"picker": {
"add": "Dodaj",
"done": "Gotowe",
"selectAll": "Zaznacz wszystko",
"searchPlaceholder": "Szukaj",
"searchNoMatch": "Brak wyników",
"suggested": "Wokół tej daty",
"loadError": "Nie udało się wczytać listy.",
"removeNamed": "Usuń {name}",
"removed": "Odłączono: {name}",
"linked": "Połączone",
"loadNewer": "Wczytaj nowsze",
"loadOlder": "Wczytaj starsze",
"period": {
"showing": "Okres: {period}"
}
},
"related": {
"title": "Powiązane",
"kind": {
"labResult": "Wynik badania",
"encounter": "Wizyta",
"document": "Dokument",
"conditionEpisode": "Choroba",
"medication": "Lek",
"vaccination": "Szczepienie"
},
"via": {
"encounter": "przez wizytę",
"efficacyTarget": "przez cel skuteczności"
},
"pick": {
"conditionEpisode": "Choroby",
"document": "Dokumenty",
"encounter": "Wizyty",
"medication": "Leki",
"vaccination": "Szczepienia"
},
"nothingToOffer": "Na razie nie ma czego powiązać.",
"saveError": "Nie udało się zapisać powiązania."
}
},
"bodySites": {
"title": "Miejsca na ciele",
"description": "Zabiegi i choroby według miejsca na ciele.",
"loadError": "Nie udało się wczytać miejsc na ciele.",
"emptyTitle": "Nie zapisano jeszcze żadnego miejsca na ciele",
"emptyDescription": "Dodaj miejsce na ciele do zabiegu lub choroby, a pojawi się tutaj.",
"sitesLabel": "Miejsca na ciele",
"sidesLabel": "Strona",
"allSides": "Wszystkie strony",
"pickPrompt": "Wybierz miejsce, aby zobaczyć, co jest do niego zapisane.",
"noMatchTitle": "Po tej stronie nic nie zapisano",
"visitsTitle": "Zabiegi i wizyty",
"conditionsTitle": "Choroby",
"hiddenDocument": "Dokument, który nie jest Ci udostępniony",
"hiddenLabResult": "Wynik badania, który nie jest Ci udostępniony",
"hiddenCondition": "Choroba, która nie jest Ci udostępniona",
"hiddenVisit": "Wizyta, która nie jest Ci udostępniona",
"linkedLabel": "Powiązane wpisy",
"conditionSince": "Od {onset}",
"conditionDates": "Od {onset} do {resolved}"
},
"aiRuns": {
"backgroundDocument": "Odczyt w tle. Możesz opuścić tę stronę; wynik zostanie zapisany przy dokumencie.",
"backgroundScan": "Odczyt w tle. Przy wolnym modelu może to potrwać kilka minut.",
"waitingForWorker": "Oczekiwanie na proces w tle. Jeśli nic się nie zmienia, worker na serwerze może nie działać.",
"errorWorkerUnavailable": "Proces w tle jest teraz niedostępny. Spróbuj ponownie za chwilę albo poproś administratora serwera o sprawdzenie go.",
"errorTimedOut": "Odczyt trwał dłużej, niż pozwala ustawiony czas odpowiedzi AI. Spróbuj ponownie albo wydłuż czas odpowiedzi w ustawieniach AI.",
"errorReaderBusy": "Czytnik dokumentów jest zajęty innymi zadaniami. Spróbuj ponownie za minutę."
},
"symptoms": {
"add": "Nowy objaw",
"nameLabel": "Nazwa",
"namePlaceholder": "np. Aura",
"iconLabel": "Ikona",
"icons": {
"Tag": "Etykieta",
"Activity": "Aktywność",
"Heart": "Serce",
"HeartPulse": "Bicie serca",
"Brain": "Mózg",
"Zap": "Błyskawica",
"Flame": "Płomień",
"Snowflake": "Płatek śniegu",
"Droplet": "Kropla",
"CircleDot": "Kropka",
"BatteryLow": "Słaba bateria",
"MoonStar": "Księżyc i gwiazda",
"PersonStanding": "Osoba",
"Drama": "Maski",
"Frown": "Smutna twarz",
"Cookie": "Ciastko",
"Soup": "Zupa",
"Pill": "Tabletka",
"Thermometer": "Termometr",
"Stethoscope": "Stetoskop"
},
"limitReached": "Masz 8 objawów. Ukryj jeden, aby dodać kolejny.",
"saveError": "Nie udało się zapisać objawu. Spróbuj ponownie.",
"nameRequired": "Nadaj objawowi nazwę.",
"unreadableLabel": "Nieczytelny objaw",
"intensityPill": "{value}/10",
"entry": {
"sheetDescription": "Jeden z twoich objawów, jak silny i kiedy.",
"symptom": "Objaw",
"symptomRequired": "Wybierz objaw.",
"intensity": "Nasilenie",
"intensityRequired": "Określ, jak silny był.",
"intensityUnset": "Nie ustawiono",
"anchorLow": "Brak",
"anchorHigh": "Najgorszy wyobrażalny",
"intensityValueText": "{value} z {max} ({low} do {high})",
"when": "Kiedy",
"during": "W trakcie choroby",
"duringNone": "Bez powiązania",
"note": "Notatka",
"notePlaceholder": "Co jeszcze się działo?",
"reset": "Wyczyść formularz",
"emptyHint": "Dodaj swój pierwszy objaw, na przykład aurę lub ból głowy.",
"emptyHintNoManage": "Dla tego profilu nie ma jeszcze objawów.",
"limitHint": "Do {limit} objawów. Ukryj jeden na stronie chorób, aby dodać kolejny."
},
"section": {
"title": "Twoje objawy",
"log": "Zapisz",
"loadError": "Nie udało się wczytać twoich objawów.",
"summaryOne": "Raz w ciągu 30 dni, {max}/10, ostatnio {date}",
"summaryFew": "{count} razy w ciągu 30 dni, do {max}/10, ostatnio {date}",
"summaryOther": "{count} razy w ciągu 30 dni, do {max}/10, ostatnio {date}",
"summaryNoneRecent": "Nie w ostatnich 30 dniach, ostatnio {date}",
"summaryNever": "Jeszcze nie zapisano",
"menuLabel": "Opcje dla {symptom}",
"eventMenuLabel": "Opcje tego wpisu: {symptom}",
"hide": "Ukryj",
"show": "Pokaż ponownie",
"deleteTitle": "Usunąć objaw?",
"deleteBody": "„{symptom}” i wszystkie jego wpisy zostaną usunięte. Aby zachować historię, ukryj go.",
"deleteEventTitle": "Usunąć wpis?",
"deleteEventBody": "Ten wpis zostanie usunięty.",
"hiddenOne": "Ukryte (1)",
"hiddenFew": "Ukryte ({count})",
"hiddenOther": "Ukryte ({count})",
"recent": "Ostatnie 30 dni",
"recentEmpty": "Nic nie zapisano w ostatnich 30 dniach.",
"editEventTitle": "Edytuj: {symptom}",
"editSymptomTitle": "Edytuj objaw"
},
"episode": {
"title": "Zapisane objawy",
"during": "podczas: {illness}"
}
},
"day": {
"scoreOfMax": "z {max}",
"cycleDay": "Dzień cyklu {n}",
"cyclePhaseLine": {
"MENSTRUAL": "Dzień cyklu {n}, faza menstruacyjna",
"FOLLICULAR": "Dzień cyklu {n}, faza folikularna",
"OVULATORY": "Dzień cyklu {n}, faza owulacyjna",
"LUTEAL": "Dzień cyklu {n}, faza lutealna"
},
"previousDay": "Poprzedni dzień",
"nextDay": "Następny dzień",
"close": "Zamknij dzień",
"hidePanel": "Ukryj dzień",
"showPanel": "Pokaż {date}",
"openDay": "Otwórz dzień",
"viewWholeDay": "Zobacz cały dzień",
"captureForDay": "Dodaj dla tego dnia",
"empty": "Brak wpisów dla tego dnia.",
"notShared": "Niektóre obszary nie są Ci udostępnione.",
"inTimeline": "Na osi czasu",
"askCoach": "Zapytaj Coacha o ten dzień",
"loadFailed": "Nie udało się wczytać tego dnia.",
"dayOf": "Dzień {n} z {m}",
"dayN": "Dzień {n}",
"usualRange": "Zwykle od {lo} do {hi}",
"groups": {
"scores": "Wyniki",
"running": "W toku tego dnia",
"values": "Wartości",
"happened": "Co się działo",
"movement": "W drodze"
},
"notable": {
"extremeHigh": "Najwyższa wartość dzienna od {since}",
"extremeLow": "Najniższa wartość dzienna od {since}",
"firstValue": "Pierwszy pomiar tego rodzaju",
"gap": "{days} dni bez pomiaru"
},
"previousDayShortcut": "Poprzedni dzień (Alt + strzałka w lewo)",
"nextDayShortcut": "Następny dzień (Alt + strzałka w prawo)",
"captureShort": "Zapisz",
"inTimelineShort": "Oś czasu",
"askCoachPrompt": "Co się działo {date}?",
"coachChips": "Dni w tej odpowiedzi",
"description": "Wszystko, co Twoje wpisy zawierają dla tego dnia.",
"openDocument": "Otwórz dokument",
"previousReading": "Wcześniej, {date}",
"sheetExpand": "Rozwiń na pełną wysokość",
"sheetShrink": "Zmniejsz",
"valuesLegend": "Punkt to ten dzień, pasek to 30 dni wcześniej",
"valuesAllOne": "Wszystkie wartości",
"valuesAllFew": "Wszystkie {count} wartości",
"valuesAllOther": "Wszystkie {count} wartości",
"valuesFewer": "Mniej wartości",
"countEntriesOne": "1 wpis",
"countEntriesFew": "{count} wpisy",
"countEntriesOther": "{count} wpisów",
"meanOfReadingsOne": "Średnia z 1 pomiaru",
"meanOfReadingsFew": "Średnia z {count} pomiarów",
"meanOfReadingsOther": "Średnia z {count} pomiarów",
"sinceLastVisit": {
"countOne": "1 wpis",
"countFew": "{count} wpisy",
"countOther": "{count} wpisów",
"allOne": "Pokaż wszystko",
"allFew": "Pokaż wszystkie {count}",
"allOther": "Pokaż wszystkie {count}",
"fewer": "Pokaż mniej",
"note": "Zestawione z Twoich wpisów, bez oceny. Każda data otwiera cały dzień.",
"report": "Raport lekarski od {date} do dziś",
"loadError": "Nie udało się załadować tego, co wydarzyło się od ostatniej wizyty."
},
"travel": "W podróży",
"event": {
"started": "Początek: {label}",
"ended": "Koniec: {label}",
"paused": "Wstrzymano: {label}",
"resumed": "Wznowiono: {label}",
"illnessBegan": "Początek: {label}",
"illnessResolved": "Wyzdrowienie: {label}"
},
"pickDate": "Wybierz datę",
"pickerTitle": "Przejdź do dnia",
"today": "Dzisiaj",
"hasEntries": "z wpisami",
"dayNSince": "Dzień {n}, od {date}",
"sinceDate": "Od {date}",
"movement": {
"total": "Dystans",
"driving": "Samochodem",
"train": "Pociągiem",
"places": "Odwiedzone miejsca",
"away": "Poza domem",
"travel": "Dzień podróży",
"travelYes": "Tak",
"kilometres": "{value} km",
"miles": "{value} mi"
}
},
"timeline": {
"title": "Oś czasu",
"subtitle": "Co i kiedy się działo, obok Twoich wartości.",
"standing": "Stałe",
"startUnknown": "początek nieznany",
"zoom": {
"all": "Wszystko",
"year": "12 miesięcy",
"quarter": "3 miesiące",
"range": "Zakres"
},
"lanes": {
"life": "Życie",
"illness": "Choroby",
"allergies": "Alergie",
"medications": "Leki",
"vaccinations": "Szczepienia",
"visits": "Lekarz i zabiegi",
"labs": "Badania",
"documents": "Dokumenty",
"cycle": "Cykl"
},
"readiness": {
"title": "Co już zawiera Twoja oś czasu",
"subtitle": "Uczciwy przegląd, zanim ją otworzysz.",
"menuEntry": "Stan danych",
"hint": "Puste ścieżki pozostają ukryte, dopóki coś się nie pojawi. Wyłączone moduły nigdy się nie pojawiają. Ten przegląd znajdziesz później w sekcji Stan danych na osi czasu.",
"later": "Później",
"open": "Otwórz oś czasu",
"verdict": {
"carries": "Już ma treść.",
"thin": "Jeszcze skromna. Na razie oś czasu pokazuje głównie Twoje wartości."
},
"status": {
"carries": "wypełniona",
"thin": "skromna",
"empty": "pusta"
},
"lanes": {
"values": "Wartości",
"mood": "Nastrój",
"environment": "Otoczenie",
"life": "Wydarzenia życiowe"
},
"meter": "{carrying} z {total} ścieżek ma treść",
"carriesDetail": "{carrying} z {total} ścieżek daje przegląd od {since}.",
"loadFailed": "Nie udało się wczytać przeglądu.",
"card": {
"title": "Co już zawiera oś czasu",
"summary": "Sięga do {since}; {carrying} z {total} ścieżek ma już treść.",
"dismiss": "Ukryj"
},
"detail": {
"valuesOne": "{count} pomiar od {since}",
"valuesFew": "{count} pomiary od {since}",
"valuesOther": "{count} pomiarów od {since}",
"illnessOne": "{count} epizod; przewlekłe: {chronic}",
"illnessFew": "{count} epizody; przewlekłe: {chronic}",
"illnessOther": "{count} epizodów; przewlekłe: {chronic}",
"allergiesOne": "{count} alergia",
"allergiesFew": "{count} alergie",
"allergiesOther": "{count} alergii",
"medicationsOne": "{count} lek; bez daty rozpoczęcia: {missingStart}",
"medicationsFew": "{count} leki; bez daty rozpoczęcia: {missingStart}",
"medicationsOther": "{count} leków; bez daty rozpoczęcia: {missingStart}",
"medicationsDatedOne": "{count} lek z datą rozpoczęcia",
"medicationsDatedFew": "{count} leki z datą rozpoczęcia",
"medicationsDatedOther": "{count} leków z datą rozpoczęcia",
"vaccinationsOne": "{count} szczepienie",
"vaccinationsFew": "{count} szczepienia",
"vaccinationsOther": "{count} szczepień",
"visitsOne": "{count} wizyta, z zabiegiem: {procedures}",
"visitsFew": "{count} wizyty, z zabiegiem: {procedures}",
"visitsOther": "{count} wizyt, z zabiegiem: {procedures}",
"visitsPlannedOne": "{count} wizyta, tylko zaplanowana",
"visitsPlannedFew": "{count} wizyty, tylko zaplanowane",
"visitsPlannedOther": "{count} wizyt, tylko zaplanowane",
"labsOne": "{count} dzień z wynikami",
"labsFew": "{count} dni z wynikami",
"labsOther": "{count} dni z wynikami",
"documentsOne": "{count} dokument z datą",
"documentsFew": "{count} dokumenty z datą",
"documentsOther": "{count} dokumentów z datą",
"lifeOne": "{count} wydarzenie życiowe",
"lifeFew": "{count} wydarzenia życiowe",
"lifeOther": "{count} wydarzeń życiowych",
"cycleOne": "{count} cykl",
"cycleFew": "{count} cykle",
"cycleOther": "{count} cykli",
"moodOne": "{count} wpis od {since}",
"moodFew": "{count} wpisy od {since}",
"moodOther": "{count} wpisów od {since}",
"environmentOne": "{count} dzień z danymi o środowisku",
"environmentFew": "{count} dni z danymi o środowisku",
"environmentOther": "{count} dni z danymi o środowisku",
"empty": "Jeszcze brak"
},
"gap": {
"valuesEmpty": "Połącz źródła",
"illnessEmpty": "Dodaj epizod",
"medicationsWithoutStart": "Uzupełnij",
"visitsEmpty": "Dodaj wizytę",
"documentsUndated": "Przejrzyj",
"labsEmpty": "Dodaj wynik",
"vaccinationsEmpty": "Dodaj szczepienia",
"lifeEventsEmpty": "Dodaj"
},
"gapLine": {
"medicationsWithoutStartOne": "{count} lek bez daty rozpoczęcia",
"medicationsWithoutStartFew": "{count} leki bez daty rozpoczęcia",
"medicationsWithoutStartOther": "{count} leków bez daty rozpoczęcia",
"documentsUndatedOne": "{count} dokument bez daty",
"documentsUndatedFew": "{count} dokumenty bez daty",
"documentsUndatedOther": "{count} dokumentów bez daty",
"valuesEmpty": "Jeszcze brak wartości z dłuższego okresu",
"illnessEmpty": "Jeszcze brak chorób z datą początku",
"visitsEmpty": "Jeszcze brak odbytych wizyt",
"labsEmpty": "Jeszcze brak wyników badań",
"vaccinationsEmpty": "Jeszcze brak szczepień",
"lifeEventsEmpty": "Brak wydarzeń życiowych"
}
},
"legendSpan": "Okres",
"legendEvent": "Zdarzenie",
"legendMeanQuarter": "Średnia kwartalna",
"legendMeanMonth": "Średnia miesięczna",
"legendMeanWeek": "Średnia tygodniowa",
"legendThin": "Mniej niż 3 pomiary",
"legendGap": "Krótka przerwa bez pomiarów",
"today": "Dziś",
"noDataYet": "Jeszcze brak danych",
"layers": "Warstwy",
"layersLanes": "Ścieżki",
"zoomLabel": "Zakres widoku",
"chartLabel": "Oś czasu od {from} do {to}",
"keyboardHint": "Strzałki przesuwają wybór, Home i End przeskakują na krańce, Enter otwiera dzień.",
"loadFailed": "Nie udało się wczytać osi czasu.",
"empty": {
"title": "Na osi czasu jeszcze nic nie ma",
"description": "Wpisy z datą pojawią się tutaj, gdy tylko jakieś będą."
},
"values": {
"menuTitle": "Wartości pod ścieżkami",
"trigger": "Wartości ({count})",
"noneInWindow": "Brak wartości w tym okresie",
"series": {
"BLOOD_PRESSURE_SYS": "Ciśnienie skurczowe",
"BLOOD_PRESSURE_DIA": "Ciśnienie rozkurczowe"
},
"noValue": "brak wartości",
"bloodPressure": "Ciśnienie krwi",
"readingsOne": "1 pomiar",
"readingsFew": "średnia z {count} pomiarów",
"readingsOther": "średnia z {count} pomiarów"
},
"table": {
"caption": "Wpisy na osi czasu",
"lane": "Ścieżka",
"entry": "Wpis",
"start": "Początek",
"end": "Koniec",
"seriesCaption": "Średnie według okresu",
"period": "Okres",
"labsCaption": "Wyniki badań według dni",
"marker": "Parametr",
"date": "Data",
"value": "Wartość"
},
"selection": {
"empty": "Brak wpisów w tym okresie",
"since": "od {date}",
"range": "od {from} do {to}",
"mean": "Ø {values}",
"week": "Tydzień od {date}",
"hintClick": "Kliknij punkt w czasie, aby zobaczyć go tutaj",
"hintTap": "Dotknij punktu w czasie, aby zobaczyć go tutaj"
},
"chronicle": {
"months": "Miesiące",
"years": "Lata",
"groupingLabel": "Grupowanie",
"empty": "Brak wpisów od {from} do {to}",
"emptySingle": "Brak wpisów: {period}",
"ended": "Koniec: {label}",
"afterDaysOne": "po 1 dniu",
"afterDaysFew": "po {count} dniach",
"afterDaysOther": "po {count} dniach",
"notable": {
"extremeHigh": "Najwyższa wartość od dawna",
"extremeLow": "Najniższa wartość od dawna",
"firstValue": "Pierwsza wartość pomiaru",
"gap": "Dłuższa przerwa w wartościach"
},
"notableMeta": "Otwórz dzień, aby zobaczyć szczegóły"
},
"standingAllergiesOne": "{count} alergia",
"standingAllergiesFew": "{count} alergie",
"standingAllergiesOther": "{count} alergii",
"legendMeanDay": "Średnia dzienna",
"range": {
"from": "Od",
"to": "Do",
"label": "Wybrany zakres",
"open": "Wybierz zakres",
"clear": "Pokaż wszystko",
"apply": "Zastosuj"
},
"item": {
"labValuesOne": "1 wynik badania",
"labValuesFew": "{count} wyniki badań",
"labValuesOther": "{count} wyników badań"
},
"labs": {
"menuTitle": "Wyniki badań",
"otherPanel": "Inne",
"full": "Naraz można pokazać do {max} wyników badań. Usuń jeden, aby dodać inny.",
"above": "powyżej zakresu",
"below": "poniżej zakresu",
"reference": "zakres {range}",
"report": "Dokument: {title}",
"reportUntitled": "Otwórz dokument",
"excludedOne": "{name}: {count} wartość w innej jednostce nie jest pokazana",
"excludedFew": "{name}: {count} wartości w innej jednostce nie są pokazane",
"excludedOther": "{name}: {count} wartości w innej jednostce nie jest pokazanych"
},
"legendLabValue": "Wynik badania, tak jak zmierzono",
"legendLabOutside": "Poza zakresem referencyjnym",
"legendLabRange": "Zakres referencyjny"
},
"lifeEvents": {
"title": "Wydarzenie życiowe",
"add": "Wydarzenie życiowe",
"privacy": "Tytuł i notatka są zapisywane w postaci zaszyfrowanej. Nie trafiają do żadnej AI.",
"emptyHint": "Przeprowadzka, narodziny dziecka czy nowa praca dają latom punkt odniesienia.",
"save": "Zapisz",
"cancel": "Anuluj",
"delete": "Usuń wydarzenie życiowe",
"saved": "Zapisano wydarzenie życiowe",
"deleted": "Usunięto wydarzenie życiowe",
"fields": {
"title": "Co się wydarzyło?",
"category": "Rodzaj",
"when": "Kiedy",
"precision": "Dokładność",
"addEnd": "Data zakończenia, jeśli był to okres",
"endDate": "Do",
"note": "Notatka",
"optionalTag": "opcjonalnie",
"notePlaceholder": "Coś, co zechcesz wiedzieć później",
"removeEnd": "Usuń datę zakończenia"
},
"category": {
"FAMILY": "Rodzina",
"HOME": "Mieszkanie",
"WORK": "Praca",
"LOSS": "Strata",
"OTHER": "Inne"
},
"precision": {
"DAY": "Dzień",
"MONTH": "Miesiąc",
"YEAR": "Rok"
},
"edit": "Edytuj wydarzenie życiowe",
"errors": {
"titleRequired": "Nadaj wydarzeniu nazwę.",
"titleTooLong": "Najwyżej 120 znaków.",
"categoryRequired": "Wybierz rodzaj.",
"dateRequired": "Podaj prawidłową datę.",
"endBeforeStart": "Koniec jest przed początkiem.",
"noteTooLong": "Najwyżej 2000 znaków."
},
"saveFailed": "Nie udało się zapisać.",
"deleteFailed": "Nie udało się usunąć.",
"deleteConfirm": {
"title": "Usunąć to wydarzenie życiowe?",
"body": "Tytuł i notatka znikną."
}
},
"palette": {
"title": "Szukaj",
"description": "Znajdź stronę, ustawienie, moduł, akcję lub wpis w swoich danych.",
"placeholder": "Szukaj stron, ustawień, swoich wpisów…",
"results": "Wyniki",
"noResults": "Brak wyników dla „{query}”.",
"moduleOn": "Wł.",
"moduleOff": "Wył.",
"hintMove": "Wybierz",
"hintOpen": "Otwórz",
"hintClose": "Zamknij",
"groups": {
"recent": "Ostatnie",
"pages": "Strony",
"insights": "Insights",
"settings": "Ustawienia",
"modules": "Moduły",
"actions": "Akcje",
"records": "W twoich wpisach"
},
"actions": {
"capture": "Nowy wpis",
"coach": "Zapytaj Coacha",
"backup": "Utwórz kopię zapasową",
"today": "Otwórz dzisiaj",
"shortcuts": "Pokaż skróty klawiszowe"
},
"records": {
"loading": "Przeszukiwanie twoich wpisów…",
"empty": "Brak wyników w twoich wpisach dla „{query}”.",
"error": "Nie udało się przeszukać twoich wpisów. Spróbuj ponownie za chwilę.",
"truncated": "Przeszukano tylko najnowsze wpisy.",
"kind": {
"visit": "Wizyta",
"condition": "Choroba",
"document": "Dokument",
"vaccination": "Szczepienie",
"lab": "Wynik badania",
"medication": "Lek",
"symptom": "Objaw",
"workout": "Trening",
"note": "Notatka"
},
"source": {
"mood": "Notatka o nastroju",
"measurement": "Notatka do pomiaru",
"illness": "Dziennik choroby"
}
}
},
"shortcuts": {
"title": "Skróty klawiszowe",
"description": "Klawisze działające w całej aplikacji, z wyjątkiem pisania w polu.",
"menuEntry": "Skróty klawiszowe",
"then": "potem",
"search": "Szukaj",
"help": "Pokaż tę listę",
"close": "Zamknij okno lub panel",
"previousDay": "Poprzedni dzień",
"nextDay": "Następny dzień",
"toggleDay": "Otwórz lub zamknij dzień",
"dayHint": "Poprzedni i następny dzień działają, gdy dzień jest otwarty.",
"groups": {
"navigation": "Nawigacja",
"actions": "Akcje",
"day": "Dzień"
}
},
"aboutPage": {
"eyebrow": "Informacje",
"title": "O HealthLog",
"lastUpdated": "Ostatnia aktualizacja: {date}",
"project": "Projekt",
"credits": "Podziękowania"
},
"series": {
"reference": {
"targetUpper": "Twój cel, górna granica",
"targetLower": "Twój cel, dolna granica",
"clinicalUpper": "Kliniczna górna granica",
"clinicalLower": "Kliniczna dolna granica"
}
},
"activityCalendar": {
"title": "Kalendarz aktywności",
"periodLabel": "Zakres kalendarza",
"period": {
"week": "Tydzień",
"month": "Miesiąc"
},
"weekRange": "od {start} do {end}",
"previous": "Poprzedni okres",
"next": "Następny okres",
"metricLabel": "Koloruj dni według",
"metric": {
"steps": "Kroki",
"activeMinutes": "Aktywne minuty",
"load": "Obciążenie treningowe"
},
"empty": "W tym okresie nie ma jeszcze kroków, aktywnych minut ani treningów.",
"loadError": "Nie udało się wczytać kalendarza aktywności.",
"weekGoalsColumn": "Cele tygodniowe",
"weekGoalsMet": "Wszystkie cele tygodniowe osiągnięte",
"weekGoalsNotMet": "Nie wszystkie cele tygodniowe osiągnięte",
"cell": {
"steps": "Kroki: {value}",
"activeMinutes": "Aktywne minuty: {value}",
"workouts": "Treningi: {value} ({sports})"
},
"level": {
"none": "Brak danych",
"unrated": "Za mało historii",
"low": "Znacznie poniżej twojej normy",
"below": "Poniżej twojej normy",
"usual": "Mniej więcej jak zwykle",
"above": "Powyżej twojej normy",
"high": "Znacznie powyżej twojej normy",
"in_progress": "Dziś, jeszcze trwa"
},
"legend": "W porównaniu z twoimi 12 wcześniejszymi tygodniami:",
"noBaseline": "Twój zwykły zakres pojawi się po 14 dniach z danymi.",
"summary": {
"steps": "Kroki: {value}",
"activeMinutes": "Aktywne minuty: {value}",
"workouts": "Treningi: {value}",
"load": "Średnie obciążenie treningowe {value}",
"usual": "Twoja norma do tego momentu: {value}",
"noUsual": "Za mało wcześniejszych tygodni lub miesięcy do porównania.",
"usualThroughYesterday": "Do wczoraj {value}, twoja zwykła wartość do tego dnia {usual}",
"firstDay": "Porównanie ze zwykłą wartością pojawi się po zakończeniu pierwszego dnia."
},
"sportCount": "{sport}: {count}",
"goal": {
"workoutsPerWeek": "Treningi w tygodniu",
"activeMinutesPerWeek": "Aktywne minuty w tygodniu",
"stepsPerWeek": "Kroki w tygodniu",
"stepsPerMonth": "Kroki w miesiącu"
},
"goalOf": "{value} z {target}",
"setGoals": "Ustaw cele",
"editGoals": "Zmień cele",
"goalsSheet": {
"title": "Cele aktywności",
"description": "Zostaw pole puste, jeśli nie chcesz celu.",
"none": "Brak celu",
"invalid": "Liczba całkowita od {min} do {max}.",
"saveError": "Nie udało się zapisać celów."
},
"crossLink": {
"title": "Kalendarz aktywności",
"body": "Twoje kroki w tygodniu lub miesiącu na tle twojej normy.",
"cta": "Otwórz kalendarz"
}
},
"sourceProvenance": {
"title": "Skąd pochodzą wartości",
"description": "Które źródło dostarczyło wartość każdego dnia i którego używa twój priorytet źródeł.",
"metric": "Pomiar",
"day": "Dzień",
"dayTitle": "Źródła tego dnia",
"loadError": "Nie udało się wczytać źródeł.",
"dayEmpty": "Brak wartości tego pomiaru w tym dniu.",
"reason": {
"only_source": "{source} to jedyne źródło tego dnia.",
"highest_on_ladder": "Używane jest {source}: spośród źródeł tego dnia stoi najwyżej w twoim priorytecie źródeł.",
"name_tiebreak": "Używane jest {source}: żadnego ze źródeł tego dnia nie ma w twoim priorytecie, więc zdecydowała nazwa.",
"not_ranked": "Ten pomiar nie ma priorytetu źródeł: liczą się wartości ze wszystkich źródeł."
},
"pass": {
"lower_on_ladder": "Niżej w twoim priorytecie źródeł.",
"not_on_ladder": "Nie ma go w twoim priorytecie źródeł dla tego pomiaru.",
"name_tiebreak": "Ta sama pozycja co użyte źródło; zdecydowała nazwa."
},
"used": "Używane",
"readings": "Pomiary: {count}, urządzenia: {devices}",
"ladder": "Twoja kolejność dla tego pomiaru: {ladder}",
"utcNote": "Źródło jest wybierane na dzień, od północy do północy UTC, tak samo jak na wykresach.",
"openSettings": "Zmień kolejność w priorytecie źródeł",
"compareTitle": "Porównaj dwa źródła",
"range": "Okres",
"rangeDays": "{days} dni",
"compareNeedsTwo": "W tym okresie tylko jedno źródło ma wartości tego pomiaru.",
"side": {
"a": "Pierwsze źródło",
"b": "Drugie źródło"
},
"daysBoth": "Dni z oboma",
"meanOf": "Średnia z {source}",
"meanAbsDiff": "Średnia różnica",
"pickedDays": "Użyte dni (pierwsze / drugie)",
"pickedSplit": "{a} / {b}",
"compareNote": "Średnie liczą tylko dni, w których oba źródła mają wartości, aby porównywać podobne dni. Pogrubiona jest wartość używana na wykresach.",
"settingsHint": "Aby zobaczyć, co ta kolejność rozstrzyga dzień po dniu:",
"settingsHintLink": "Skąd pochodzą wartości",
"metricLink": "Skąd pochodzą te wartości"
},
"recordImport": {
"title": "Wyniki badań i leki z arkusza kalkulacyjnego",
"description": "Zaimportuj wyniki badań z wielu lat lub listę leków z pliku CSV.",
"detail": "Ty wybierasz, która kolumna zawiera co; HealthLog najpierw sprawdza każdy wiersz i niczego nie importuje bez twojego potwierdzenia. Wiersze, które już są, zostaną pominięte.",
"kind": {
"labs": "Wyniki badań",
"medications": "Leki"
},
"sheetTitle": {
"labs": "Importuj wyniki badań",
"medications": "Importuj leki"
},
"sheetDescription": {
"labs": "Markery są przypisywane do twoich, jednostki przeliczane, gdy przeliczenie jest znane.",
"medications": "Nazwa, dawka, codzienne godziny, w razie potrzeby, początek i koniec. Inne rytmy ustawisz potem w aplikacji."
},
"file": "Plik CSV",
"template": "Pobierz szablon",
"mapping": "Która kolumna zawiera co",
"required": "(wymagane)",
"notInFile": "Brak w pliku",
"column": "Kolumna {n}",
"delimiter": "Separator",
"delimiterOption": {
"comma": "Przecinek",
"semicolon": "Średnik",
"tab": "Tabulator"
},
"decimal": "Separator dziesiętny",
"decimalOption": {
"dot": "Kropka (5.4)",
"comma": "Przecinek (5,4)"
},
"dateOrder": "Format daty",
"dateOrderOption": {
"iso": "2025-03-01",
"dmy": "01.03.2025 (najpierw dzień)",
"mdy": "03/01/2025 (najpierw miesiąc)"
},
"header": "Pierwszy wiersz zawiera nazwy kolumn",
"reminders": "Włącz przypomnienia dla zaimportowanych leków",
"timezoneNote": "Godziny bez strefy czasowej są czytane w strefie twojego konta. Data bez godziny pozostaje tym dniem kalendarza.",
"missing": "Do wyboru: {fields}",
"check": "Sprawdź plik",
"runIdle": "Importuj",
"run": "Importuj wiersze: {count}",
"close": "Zamknij",
"summaryCheck": "Odczytane wiersze: {rows}. Do zaimportowania: {inserted}, już są: {duplicates}, z problemem: {failed}.",
"summaryDone": "Zaimportowane wiersze: {inserted}. Pominięte: {duplicates}, które już były, i {failed} z problemem.",
"markersMatched": "Przypisane do twoich markerów:",
"markersCreated": "Nowe markery:",
"line": "Wiersz {line}",
"errorsTruncated": "Wymieniono tylko pierwsze 500 problemów.",
"error": {
"tooLarge": "Plik jest większy niż 16 MB.",
"rateLimited": "Za dużo importów w ostatniej godzinie. Spróbuj później.",
"invalid": "Nie udało się odczytać pliku lub wyboru kolumn.",
"failed": "Import się nie powiódł. Spróbuj ponownie."
},
"reason": {
"missing_value": "Wymagana komórka jest pusta",
"invalid_number": "To nie jest liczba",
"ambiguous_number": "Liczbę można odczytać na dwa sposoby; sprawdź separator dziesiętny",
"missing_unit": "Liczba wymaga jednostki",
"invalid_date": "To nie jest data w wybranym formacie",
"invalid_time": "To nie jest godzina",
"ambiguous_date": "Datę można odczytać na dwa sposoby; użyj czterocyfrowego roku i wybranego formatu",
"future_date": "Data jest w przyszłości",
"text_too_long": "Tekst jest za długi",
"unit_mismatch": "Tej jednostki nie da się przeliczyć na jednostkę markera",
"invalid_reference_range": "Nie można odczytać zakresu referencyjnego",
"invalid_times": "Nie można odczytać godzin (np. 08:00 20:00)",
"missing_times": "Dodaj godziny przyjmowania albo oznacz lek jako w razie potrzeby",
"invalid_yes_no": "Użyj tak lub nie",
"as_needed_with_times": "Lek w razie potrzeby nie ma stałych godzin",
"end_before_start": "Koniec jest przed początkiem",
"invalid_medication": "Nie można tak zapisać leku",
"oversized_row": "Wiersz jest za długi lub za szeroki",
"row_limit": "Ponad limit wierszy dla jednego importu",
"duplicate": "Już jest, pominięto"
},
"field": {
"analyte": "Marker",
"value": "Wynik",
"unit": "Jednostka",
"date": "Data",
"time": "Godzina",
"referenceRange": "Zakres referencyjny",
"referenceLow": "Dolna granica",
"referenceHigh": "Górna granica",
"panel": "Grupa",
"note": "Notatka",
"name": "Nazwa",
"dose": "Dawka",
"times": "Godziny",
"asNeeded": "W razie potrzeby",
"startsOn": "Początek",
"endsOn": "Koniec"
},
"unitlessHint": "Iloraz lub wskaźnik bez jednostki (INR, cholesterol/HDL): wpisz 1 w kolumnie jednostki. Pusta jednostka nadal jest błędem."
}
}