{
  "badge": {
    "artifact_tip": "Виявлено {n} аномалій (наприклад, двері відкриті посеред циклу) – відкрийте, щоб побачити їх на графіку",
    "auto": "(виявлено автоматично)",
    "built_in_tag": "вбудований",
    "declining": "↘ знижується",
    "energy_low": "Енергії менше, ніж зазвичай",
    "energy_spike": "Енергії більше, ніж зазвичай",
    "fair_fit": "прийнятна якість",
    "fair_fit_tip": "Помірна постійність збігів – деякі цикли, призначені цьому профілю, мають нижчі оцінки надійності. Позначте більше циклів або перезапишіть профіль, щоб підвищити точність.",
    "feedback_requested": "Запит на відгук",
    "golden_cycle": "Записаний контрольний цикл",
    "improving": "↗ покращується",
    "manual": "(вибрано вручну)",
    "needs_review": "Потребує перегляду",
    "overrun": "Тривав довше, ніж зазвичай",
    "poor_fit": "погана якість",
    "poor_fit_tip": "Непослідовна історія збігів – розгляньте можливість відновлення цього профілю",
    "restart_gap_tip": "{n} пропуск при перезапуску HA: у графіку потужності є розрив",
    "reviewed": "Переглянуто",
    "steady": "→ стабільно",
    "underrun": "Завершився швидше, ніж зазвичай",
    "using_defaults": "Використовуються стандартні налаштування",
    "using_tuned": "Використовуються налаштовані ваги",
    "overrun_ratio": "({x}× від очікуваного)",
    "underrun_ratio": "({pct}% від очікуваного)",
    "awaiting_tip": "Очікує схвалення спільнотою",
    "awaiting_n": "Очікує схвалення · {n} підтверджено",
    "approved": "Схвалено",
    "awaiting": "Очікує схвалення",
    "imported_tip": "Імпортовано з магазину спільноти. Використовується лише для зіставлення, не враховується у статистиці.",
    "not_importable": "недоступно",
    "exists": "існує"
  },
  "btn": {
    "add_device": "+ Додати пристрій",
    "add_device_tip": "Додати інший пристрій WashData",
    "add_maintenance": "Додати запис обслуговування",
    "add_phase": "+ Додати фазу",
    "add_timer": "+ Додати таймер",
    "apply_all": "Застосувати всі",
    "apply_label": "Застосувати мітку",
    "apply_set_b": "Застосувати набір B",
    "apply_split": "Застосувати поділ",
    "apply_trim": "Застосувати обрізання",
    "auto_detect_split": "Автовизначення",
    "auto_label_cycles": "Автоматично позначити цикли",
    "auto_label_cycles_tip": "Автоматично присвоїти назви профілів непозначеним циклам, чия впевненість збігу перевищує поріг",
    "cancel": "Скасувати",
    "clear_debug": "Очистити дані налагодження",
    "clear_splits": "Очистити",
    "close": "Закрити",
    "compare": "Порівняти",
    "confirm": "Підтвердити",
    "convert_to_automation": "Перетворити на автоматизацію",
    "correct": "Виправити…",
    "create": "Створити",
    "create_from_cluster": "Створити профіль із {count} циклів",
    "create_profile": "+ Створити профіль",
    "delete": "Видалити",
    "delete_group": "Видалити групу",
    "delete_group_tip": "Видалити лише цю групу – профілі учасників збережуться",
    "delete_profile": "Видалити профіль",
    "discard": "Відхилити",
    "discard_tip": "Відхилити запис без збереження",
    "dismiss": "Закрити",
    "done": "Готово",
    "edit": "Редагувати",
    "export": "Експортувати",
    "export_json": "Експортувати до JSON",
    "force_stop": "Примусово зупинити",
    "force_stop_tip": "Негайно завершити поточний цикл і позначити його як примусово зупинений",
    "from_template": "З шаблону ▾",
    "ignore": "Ігнорувати",
    "import_json": "Імпортувати з JSON",
    "import_overwrite": "Імпортувати (перезаписує дані)",
    "inspect": "Перевірити",
    "label": "Позначити",
    "load": "Завантажити",
    "load_more": "Завантажити ще",
    "manage": "Керувати",
    "merge": "Об'єднати",
    "new_automation": "＋ Нова автоматизація",
    "new_group": "+ Нова група",
    "new_group_tip": "Згрупувати майже ідентичні профілі (однаковий тип/тривалість, різна температура або віджимання), щоб система зіставлення надійно вибирала між ними",
    "new_phase": "+ Нова фаза",
    "new_profile": "+ Новий профіль",
    "new_profile_tip": "Створити новий профіль програми з наявного позначеного циклу або запису",
    "on_cycle_finished": "Коли цикл завершено",
    "on_cycle_started": "Коли цикл розпочато",
    "pause_cycle": "Пауза",
    "pause_cycle_tip": "Призупинити поточний цикл – прилад продовжить роботу з того місця, де зупинився",
    "pg_apply_device": "Застосувати до пристрою",
    "pg_autofill": "Автозаповнення",
    "play": "Відтворити",
    "process": "Обробити",
    "process_history": "Обробити зараз",
    "process_recording": "Зберегти запис",
    "process_tip": "Зберегти запис як новий або наявний профіль",
    "rebuild": "Відновити конверти",
    "rebuild_envelope": "Відновити конверт",
    "rebuild_tip": "Перерахувати очікуваний конверт потужності (смуга мін./макс.) для всіх профілів з позначених циклів – запускати після позначення нових або виправлення старих циклів",
    "rec_start_tip": "Розпочати запис потужності приладу – запустіть безпосередньо перед початком циклу",
    "rec_stop": "Зупинити",
    "rec_stop_tip": "Зупинити запис і зберегти захоплені дані для перегляду",
    "record": "Почати запис",
    "refresh": "Оновити",
    "refresh_diag_tip": "Перезавантажити статистику сховища",
    "refresh_logs_tip": "Перезавантажити останні записи журналу",
    "refresh_settings_tip": "Перезавантажити налаштування із сервера",
    "relabel": "Перепозначити ({count})",
    "remove": "Видалити",
    "remove_timer": "Видалити таймер",
    "reset": "Скинути",
    "reset_ml_models_tip": "Відмовтеся від налаштованих моделей і поверніться до вбудованих. WashData може повторно навчити їх пізніше.",
    "reset_to_builtin": "Скинути до вбудованих моделей",
    "reset_to_defaults": "Скинути до стандартних",
    "resume_cycle": "Продовжити цикл",
    "resume_cycle_tip": "Відновити призупинений цикл",
    "revert_settings": "Скасувати зміни",
    "revert_settings_tip": "Відновити налаштування до останнього збереження",
    "revert_settings_tip_none": "Спочатку збережіть, щоб активувати скасування",
    "revert": "Повернути",
    "revert_to_previous": "Відновити попереднє значення цього налаштування",
    "review": "Переглянути",
    "run": "Запустити",
    "run_analysis": "🔍 Запустити аналіз пропозицій",
    "run_analysis_tip": "Проаналізуйте записані цикли зараз і оновіть пропозиції щодо налаштування",
    "run_auto_label": "Запустити автопозначення",
    "run_both": "Запустити A проти B",
    "run_simulation": "Запустити симуляцію",
    "save": "Зберегти",
    "save_access_control": "Зберегти контроль доступу",
    "save_group": "Зберегти групу",
    "save_panel_settings": "Зберегти налаштування панелі",
    "save_phases": "Зберегти фази",
    "save_preferences": "Зберегти налаштування",
    "save_reminders": "Зберегти нагадування",
    "save_review": "Зберегти огляд",
    "save_settings": "Зберегти налаштування",
    "select": "Вибрати",
    "select_all": "Вибрати всі",
    "select_last20": "Останні 20",
    "select_none": "Очистити",
    "show_only": "Показати лише",
    "skip_setup": "Пропустити налаштування",
    "split": "Розділити",
    "stop": "Зупинити",
    "submit_correction": "Надіслати виправлення",
    "train_now": "Навчити зараз",
    "trim": "Обрізати",
    "trim_split": "Обрізати / Розділити",
    "undo": "Скасувати",
    "use": "Використати",
    "wipe_all": "Видалити всі дані",
    "delete_selected": "Видалити вибрані ({n})",
    "group_suggest": "Група {n}: {members}",
    "pg_apply_best": "Застосувати найкраще",
    "pg_apply_to_settings": "Зберегти в налаштування",
    "pg_apply_to_settings_tip": "Скопіювати значення, змінені тут, до активних налаштувань цього пристрою",
    "search": "Пошук",
    "import": "Імпортувати",
    "disconnect": "Від'єднати",
    "connect_github": "Підключити GitHub",
    "save_appliance": "Зберегти пристрій",
    "share_to_store": "Поділитися в магазині",
    "share": "Поділитися",
    "confirm_appliance": "Підтвердити цей пристрій",
    "confirmed": "Підтверджено",
    "browse_community_setups": "Огляд конфігурацій спільноти",
    "download_device": "Завантажити конфігурацію пристрою",
    "share_device": "Поділитися конфігурацією пристрою",
    "share_device_tip": "Поділитися програмами та налаштуваннями цього пристрою зі спільнотою",
    "share_n": "Поділитися: {n} програм{s}",
    "export_selected": "Експорт (вибрати дані)",
    "export_all": "Швидкий експорт усього",
    "import_raw": "Розширено: замінити все з JSON",
    "download_export": "Завантажити експорт",
    "analyze_import": "Проаналізувати файл",
    "import_selected": "Імпортувати вибране",
    "back": "Назад"
  },
  "conflict": {
    "anti_wrinkle_exit": {
      "exit": "Має бути нижчим за Поріг Зупинки ({stop} Вт); інакше потужність виходу з режиму захисту від зминання ігнорується",
      "stop": "Має бути вищим за Поріг Потужності Виходу із Захисту від Зминання ({exit} Вт)"
    },
    "anti_wrinkle_max": {
      "max": "Має бути вищим за Поріг Початку ({start} Вт); інакше обмеження тривалості захисту від зминання обходиться",
      "start": "Має бути нижчим за Макс. Потужність Захисту від Зминання ({max} Вт)"
    },
    "attn_sub": "Виправте конфлікти перед збереженням",
    "attn_title": "{n} конфлікт{s} налаштувань",
    "settings_banner": "{n} конфлікт{s} налаштувань – перевірте виділені розділи й виправте перед збереженням.",
    "settings_banner_btn": "До першого",
    "confidence": {
      "auto": "Має бути не нижчим за Поріг Зіставлення ({match})",
      "learning": "Має бути не вищим за Поріг Зіставлення ({match})",
      "match_for_auto": "Має бути не вищим за Впевненість Автоматичного Маркування ({alc})",
      "match_for_learning": "Має бути не нижчим за Впевненість Навчання ({lc})"
    },
    "duration_ratio": {
      "max": "Має бути більшим за Мін. Коефіцієнт Тривалості ({min})",
      "min": "Має бути меншим за Макс. Коефіцієнт Тривалості ({max})"
    },
    "hysteresis": {
      "start": "Має бути вищим за Поріг Зупинки ({stop} Вт)",
      "stop": "Має бути нижчим за Поріг Початку ({start} Вт)"
    },
    "min_power": {
      "min_power": "Має бути не вищим за Поріг Зупинки ({stop} Вт)",
      "stop": "Має бути не нижчим за Мінімальну Потужність ({min} Вт)"
    },
    "no_update_timeout": {
      "timeout": "Має бути більшим за Інтервал Сторожового Пса ({wi} с)",
      "watchdog": "Має бути меншим за Тайм-аут Без Оновлення ({to} с)"
    },
    "off_delay": {
      "gap": "Мін. Пауза Вимкнення має бути не менше Затримки Вимкнення ({delay} с)",
      "off_delay": "Затримка Вимкнення ({off_delay} с) перевищує Мін. Паузу Вимкнення ({gap} с); послідовні цикли можуть об'єднатися"
    },
    "power_off": {
      "stop": "Має бути вищим за Поріг Вимкнення Живлення ({pot} Вт)",
      "threshold": "Має бути нижчим за Поріг Зупинки ({stop} Вт), щоб мати ефект"
    },
    "pump_stuck": {
      "duration": "Має бути меншим за Тайм-аут Без Оновлення ({to} с), щоб сигнал застрявшого насоса спрацьовував раніше за сторожовий пес",
      "timeout": "Має перевищувати Тривалість Застрявання Насоса ({ps} с), щоб сигнал застрявшого насоса спрацьовував до примусової зупинки циклу"
    },
    "start_dur": {
      "sampling": "Інтервал Вибірки перевищує Тривалість Початку ({sdt} с); одиночні сплески можуть відкрити цикл",
      "threshold": "Має бути щонайменше одним Інтервалом Вибірки ({si} с), щоб запобігти фальстартам від одиночного відліку"
    },
    "unmatch": {
      "match": "Має бути вищим за Поріг Незіставлення ({un})",
      "unmatch": "Має бути нижчим за Поріг Зіставлення ({match}); інакше підтверджений збіг одразу скасовується"
    },
    "cascade_toast": "Для узгодженості також автоматично скориговано ще {n} параметр{s}.",
    "suggestion_resolves": "Активуйте очікувану пропозицію ({val}) нижче, щоб виправити це",
    "use_fix": "Використати {val}",
    "watchdog": {
      "interval": "Має бути щонайменше 2x Інтервалу Вибірки ({si} с)",
      "sampling": "Інтервал Вибірки має бути не більше половини Інтервалу Сторожового Пса ({wi} с)"
    }
  },
  "hdr": {
    "ab_comparison": "Порівняння налаштувань A/B",
    "access_control": "Контроль доступу",
    "add_maintenance": "Додати запис обслуговування",
    "automation_delete": "Видалити цю автоматизацію",
    "automation_needs_review": "Цей цикл потребує перегляду",
    "automation_open": "Відкрити в редакторі автоматизацій",
    "automation_review_this_cycle": "Переглянути цей цикл",
    "automations": "Автоматизації",
    "clear_debug": "Очистити трасування налагодження",
    "cycle_simulator": "Симулятор циклів",
    "diagnostics_pref": "Діагностика",
    "display": "Відображення",
    "dtw_inspector": "Інспектор DTW",
    "export_import": "Експорт / Імпорт",
    "getting_started": "Початок роботи",
    "live_power": "Потужність в реальному часі",
    "logs": "Журнали",
    "logs_diagnostics": "Діагностика",
    "maintenance": "Дії з обслуговування",
    "maintenance_log": "Журнал обслуговування",
    "maintenance_reminders": "Нагадування про обслуговування",
    "manual_recording": "Ручний запис",
    "manual_recording_tip": "Запустіть цикл навмисно, поки WashData записує потужність. Натисніть «Запис» перед запуском приладу, «Стоп» після завершення, потім «Обробити», щоб зберегти як іменований профіль.",
    "ml_learned": "Що WashData дізнався",
    "ml_matching_tuning": "Точне налаштування відповідності програм",
    "ml_settings_card": "Налаштування",
    "ml_smart_learning": "Розумне навчання",
    "my_preferences": "Мої налаштування",
    "no_automations": "Жодна автоматизація ще не посилається на цей пристрій.",
    "panel_settings": "Налаштування панелі",
    "param_sweep": "Перебір параметра",
    "phase_catalog": "Каталог фаз",
    "playground": "Пісочниця",
    "process_history": "Обробка історії",
    "settings_history": "Історія налаштувань",
    "status": "Стан",
    "status_graph": "Графік стану",
    "storage_stats": "Статистика сховища",
    "test_history": "Перевірка на історії",
    "toggle_sidebar": "Перемкнути бічну панель Домашнього помічника",
    "tools_and_data": "Інструменти та дані",
    "wipe_history": "Очистити історію",
    "recommendations": "Рекомендації ({n})",
    "pg_detection_params": "Налаштування виявлення",
    "pg_timeline": "Хронологія подій",
    "pg_outcome": "Результат симуляції",
    "pg_across_cycles": "За всіма вашими циклами",
    "community_store": "Магазин спільноти",
    "online_account": "Магазин спільноти та онлайн-функції"
  },
  "health": {
    "fair": "Прийнятна якість профілю",
    "good": "✓ Хороша якість профілю",
    "poor": "⚠ Погана якість профілю"
  },
  "lbl": {
    "actions": "Дії",
    "activity": "Активність",
    "administrators": "Адміністратори",
    "aria_compare_chart": "Графік порівняння циклів",
    "aria_cycle_chart": "Крива потужності циклу",
    "aria_envelope_chart": "Графік огинаючої потужності профілю",
    "aria_phase_chart": "Графік редактора фаз",
    "aria_playground_chart": "Крива потужності циклу з перетягуваними порогами виявлення",
    "aria_power_chart": "Графік споживання потужності",
    "aria_spaghetti_chart": "Накладені криві потужності циклів",
    "aria_sweep_chart": "Графік результатів перебору параметрів",
    "artifact_anomaly": "Аномалія",
    "artifact_high_power": "Висока потужність",
    "artifact_interruption": "Переривання",
    "artifact_low_power": "Низька потужність",
    "auto_detect": "Автовизначення",
    "auto_fine_tune_off": "автоналаштування вимкнено",
    "auto_fine_tune_on": "авто-точне налаштування увімкнено (близько {hour}:00)",
    "avg_cost": "Сер. вартість",
    "change": "Зміна",
    "clock_time": "Час",
    "cohesion_good": "згуртованість {pct}%",
    "cohesion_low": "⚠ низька згуртованість {pct}%",
    "compare_profiles": "Порівняти з профілями",
    "concurrency": "Паралельність",
    "confidence": "Впевненість",
    "confidence_threshold": "Поріг впевненості",
    "correct_duration": "Правильна тривалість (хв, необов'язково)",
    "correct_profile": "Правильний профіль",
    "correlation": "Кореляція",
    "cost": "Вартість",
    "create_new_profile": "+ Створити новий профіль…",
    "current_phase": "Поточна фаза",
    "curves": "Криві",
    "cycle": "Цикл",
    "cycle_date_display": "Відображення дати циклу",
    "cycle_health": "Стан циклу",
    "cycle_index": "індекс циклу →",
    "cycles": "Цикли",
    "cycles_count": "Цикли",
    "cycles_lc": "циклів",
    "dashed": "пунктир",
    "date": "Дата",
    "debug_traces": "Трасування налагодження",
    "default": "Стандартний",
    "default_access_level": "Стандартний рівень для користувачів, яких немає в списку нижче",
    "default_other": "Стандартний (інші пристрої)",
    "default_tab": "Стандартна вкладка при відкритті панелі",
    "delta": "Δ",
    "description": "Опис",
    "dtw_blend_w": "Вага змішування",
    "dtw_blended": "Змішаний бал",
    "dtw_ddtw": "Бал DDTW",
    "dtw_l1": "Бал L1",
    "dtw_matched_profile": "(зіставлений профіль циклу)",
    "duration": "Тривалість",
    "duration_agreement": "Відповідність тривалості",
    "emphasis": "Акцент",
    "enable_access_control": "Увімкнути контроль доступу для кожного користувача",
    "energy": "Енергія",
    "energy_agreement": "Відповідність енергії",
    "event_timeline": "Хронологія подій",
    "event_type": "Тип події",
    "expected": "Очікуваний",
    "expected_duration": "Очікувана тривалість (хв)",
    "file_kb": "Файл (кБ)",
    "final_score": "Підсумковий бал",
    "from": "Від",
    "gap_s": "Розрив (с)",
    "group_name": "Назва групи",
    "head_trim": "Обрізання початку (с)",
    "health": "Стан",
    "hide_tabs": "Приховати вкладки для не-адміністраторів",
    "in_use": "Використовується",
    "json_data": "Дані JSON",
    "label": "Відповідна програма",
    "last": "Останні",
    "last_checked": "Остання перевірка:",
    "load_from_file": "Завантажити з файлу",
    "mae_score": "Бал MAE",
    "manual_duration": "Ручна тривалість (хв, необов'язково)",
    "match": "Збіг",
    "members": "Учасники",
    "metric": "Метрика",
    "mode_existing_profile": "Додати до наявного профілю",
    "mode_new_profile": "Створити новий профіль",
    "models_fine_tuned": "({count} модель{plural} дотреновано)",
    "n_classic_suggestions": "{n} класичне",
    "n_ml_suggestions": "{n} ML",
    "n_selected": "Вибрано {n}",
    "n_tuning_suggestions": "{n} пропозиція налаштування",
    "na": "н/д",
    "new_profile_name": "Нова назва профілю",
    "notes": "Нотатки",
    "of": "з",
    "outcome": "Результат",
    "panel_default_tab": "Стандартна вкладка",
    "panel_language": "Мова панелі",
    "per_cycle_short": "цикл",
    "pg_autofill_tip": "Автозаповнити діапазон із поточного значення ({lo}–{hi})",
    "pg_best_value": "Знайдено найкраще значення",
    "pg_current_value": "Поточне значення:",
    "pg_drag_hint": "Перетягніть лінію на графіку",
    "pg_dtw": "DTW",
    "pg_ev_ending": "Завершення",
    "pg_ev_running": "Виконується",
    "pg_group_advanced": "Особливі випадки",
    "pg_group_detection": "Тригери виявлення",
    "pg_group_timing": "Правила часу",
    "pg_idle": "Бездіяльність",
    "pg_anti_wrinkle": "Захист від зминання",
    "pg_last_run": "Останній запуск: {date}",
    "pg_match_score": "Оцінка збігу",
    "pg_pct_of": "{p}% з {total}",
    "pg_poor_match": "Поганий збіг",
    "pg_strong_match": "Сильний збіг",
    "pg_tile_ambiguous": "Неоднозначно",
    "pg_tile_ambiguous_tip": "Цикли з майже однаковим збігом двох програм",
    "pg_tile_detected": "Виявлено",
    "pg_tile_detected_tip": "Цикли, у яких потужність перевищувала поріг запуску достатньо довго, щоб зарахуватися як робота",
    "pg_tile_matched": "Зіставлено",
    "pg_tile_matched_tip": "Цикли, правильно віднесені до відомої програми",
    "pg_time_left": "Залишилось часу",
    "pg_weak_match": "Слабкий збіг",
    "phase_name": "Назва",
    "phase_timeline": "Хронологія фаз",
    "power": "Потужність",
    "profile": "Профіль",
    "profile_index": "індекс профілю →",
    "profile_name": "Назва профілю",
    "program": "Програма",
    "program_tip": "Замініть профіль, що зіставляється з поточним циклом. Автоматичне виявлення дозволяє інтеграції автоматично вибрати найкраще співпадіння. Закріпіть конкретну програму, щоб примусово зіставити її, коли автоматичне виявлення неправильне або ви знаєте, що запущено.",
    "progress": "Прогрес",
    "raw_socket": "Необроблений сокет",
    "read_only": "Лише читання",
    "ref_cycle": "Контрольний цикл (необов'язково)",
    "refresh_interval": "Інтервал оновлення (с)",
    "remaining": "Залишилось",
    "reminder_every": "Нагадувати кожні (циклів)",
    "remove_label": "- Видалити мітку -",
    "rename_profile": "Перейменувати профіль",
    "replay_duration": "Відтворення",
    "resulting_profile": "Отриманий профіль",
    "save_mode": "Режим збереження",
    "score": "Бал",
    "score_breakdown": "Розбивка балів",
    "seconds_from_start": "Секунди від початку",
    "select_profile": "Вибрати профіль",
    "setting": "Налаштування",
    "settings_a": "Налаштування A (поточні)",
    "settings_a_short": "A",
    "settings_advanced": "Розширені",
    "settings_b": "Налаштування B (тест)",
    "settings_b_short": "B",
    "settings_basic": "Основні",
    "settings_detail_level": "Рівень деталізації налаштувань",
    "settings_overrides": "Перевизначення налаштувань",
    "show_debug": "Показати картку налагодження збігів на сторінці стану (впевненість, неоднозначність, найкращі кандидати)",
    "show_expected": "Показати накладення очікуваної кривої (відповідний профіль, помаранчевий)",
    "show_raw": "Показати перемикач необроблених даних розетки на графіку потужності в реальному часі",
    "sparkline": "Тренд тривалості останніх циклів",
    "stage2": "Етап 2 – основна подібність",
    "stage3": "Етап 3 – DTW",
    "stage4": "Етап 4 – відповідність",
    "status": "Стан",
    "tail_trim": "Обрізання кінця (с)",
    "timer_auto_pause": "Автопауза",
    "timer_min": "хв",
    "timer_msg_placeholder": "Повідомлення (необов'язково, {device}/{program}/{minutes})",
    "to": "До",
    "ungrouped": "Без групи",
    "unlabelled": "Без мітки",
    "unlabelled_paren": "(без мітки)",
    "warp_path": "Шлях викривлення",
    "input": "Вхід:",
    "start": "Початок",
    "end": "Кінець",
    "unit_s": "(с)",
    "reviewed_on": "переглянуто {date}",
    "unknown": "Невідомо",
    "quality": "Якість",
    "tags": "Теги",
    "at": "о",
    "pct_match_confidence": "{pct}% впевненість збігу",
    "ha_restarted": "HA перезапущено",
    "from_start": "Від початку",
    "to_end": "До кінця",
    "click_to_select": "натисніть, щоб вибрати",
    "envelope": "Конверт",
    "zoom_hint": "прокрутіть для масштабу · подвійний клік для скидання",
    "loading_paren": "(завантаження…)",
    "time_remaining": "~{v} залишилось",
    "no_duration": "немає тривалості",
    "duration_avg": "~{v}хв у сер.",
    "name_placeholder": "(назва)",
    "n_shown": ", показано {n}",
    "cycles_title": "Цикли ({n})",
    "pg_detecting": "Виявлення",
    "pg_best_marker": "Найкраще: {v}",
    "pg_time_left_model": "Залишилось часу (модель)",
    "pg_time_left_model_tip": "Оцінка залишку часу моделлю (оцінювач фаз + ML), а не статичний відлік",
    "phase": "Фаза",
    "pg_mode_simulate": "Симуляція",
    "pg_mode_history": "Перевірка на історії",
    "pg_mode_sweep": "Перебір",
    "pg_ev_detected": "Виявлено",
    "pg_ev_match": "Збіг прийнято",
    "pg_ev_match_changed": "Збіг змінено",
    "pg_ev_ambiguous": "Неоднозначно",
    "pg_ev_unmatched": "Без збігу",
    "pg_ev_notify_start": "Сповіщення про старт",
    "pg_ev_notify_pre": "Сповіщення «майже готово»",
    "pg_ev_notify_finish": "Сповіщення про завершення",
    "pg_ev_notify_milestone": "Сповіщення про віху",
    "pg_ev_notify_held": "Сповіщення відкладено (тихі години)",
    "pg_ev_finished": "Завершено",
    "pg_ended": "Закінчено",
    "pg_proj_energy": "Прогн. енергія",
    "pg_alert_overrun": "Довше звичайного",
    "pg_alert_underrun": "Коротше звичайного",
    "pg_alert_did_not_finish": "Не завершився",
    "pg_alert_false_end": "Розбито на кілька циклів",
    "pg_alert_unmatched": "Без збігу",
    "pg_alert_ambiguous": "Неоднозначний збіг",
    "pg_alert_energy": "Аномалія енергії",
    "pg_newly_correct": "стало правильним",
    "pg_regressed": "погіршилось",
    "pg_end_timing_changed": "час завершення змінився",
    "pg_vs_current": "проти поточного",
    "pg_fixed": "виправлено",
    "pg_broke": "зламалось",
    "pg_sweep_param": "Параметр",
    "pg_objective": "Ціль",
    "pg_steps": "Кроки",
    "pg_sweep_2d": "2D теплова карта",
    "pg_sweep_param_y": "2-й параметр",
    "pg_obj_match": "Точність збігів",
    "pg_obj_endtiming": "Точність завершення",
    "pg_obj_falseend": "Частота хибних завершень",
    "pg_obj_overrun": "Відхилення тривалості",
    "pg_obj_ambiguity": "Частота неоднозначності",
    "pg_best_combo": "найкраща комбінація",
    "pg_mode_optimize": "Оптимізувати",
    "pg_group_matching": "Зіставлення програм",
    "pg_zoom_hint": "подвійний клік скидає масштаб",
    "aria_playground_chart2": "Інтерактивний графік потужності циклу: наведіть, щоб побачити час/потужність, прокрутіть для масштабування, перетягніть для панорамування",
    "pg_alert_timeout_end": "Завершено за тайм-аутом, а не за прогнозом",
    "pg_alert_indefinite": "Працював би нескінченно",
    "pg_alert_stress_cap": "Досягнуто захисний ліміт",
    "pg_alert_stress_ok": "Виявлено режим очікування: цикл зупинено",
    "pg_alert_stress_warn": "Споживання в режимі очікування перевищує поріг зупинки",
    "pg_stress_group": "Тест виявлення режиму очікування",
    "pg_stress_idle_auto": "Auto",
    "pg_stress_idle_w": "Рівень у режимі очікування (Вт)",
    "pg_stress_idle_w_desc": "Замінити автоматично визначений нижній поріг споживання в режимі очікування (залиште порожнім для автоматичного визначення).",
    "pg_stress_toggle": "Тестувати виявлення режиму очікування",
    "pg_stress_toggle_desc": "Імітує роботу пристрою в режимі очікування після завершення запису -- показує, чи і коли WashData зупинить цикл.",
    "task_pg_history": "Тест на історії",
    "task_pg_sweep": "Оптимізація",
    "task_reprocess": "Повторна обробка",
    "task_ml_training": "Навчання",
    "eta_secs": "залишилось ~{n} с",
    "eta_mins": "залишилось ~{n} хв",
    "pg_recent_runs": "Останні запуски",
    "pg_load_run": "Перезавантажити цей запуск",
    "pg_match_confidence": "Достовірність збігу",
    "pg_envelope_fit": "Відповідність обвідній",
    "pg_envelope_fit_tip": "Наскільки точно цикл вписується в збережену обвідну потужності цього профілю, інший погляд, ніж достовірність збігу.",
    "n_imported_note": ", {n} імпортовано",
    "enable_online": "Увімкнути онлайн-функції",
    "store_brand": "Бренд пристрою",
    "store_model": "Модель пристрою",
    "anonymous": "Анонімно",
    "rate_quality": "Оцінити якість",
    "rate_n": "{n} зірок",
    "approved_only": "Лише схвалені",
    "adopt_settings": "Прийняти налаштування",
    "flags": "Мітки",
    "include_phase_map": "Включити карту фаз",
    "include_settings": "Включити налаштування",
    "show_contributor": "Показати автора",
    "task_pg_detail": "Змоделювати цикл",
    "task_split": "Розділення циклу",
    "task_trim": "Обрізання циклу",
    "task_merge": "Об'єднання циклів",
    "task_rebuild": "Перерахунок обвідних",
    "cat_profiles": "Профілі (програми)",
    "cat_real_cycles": "Цикли (історія запусків)",
    "cat_reference_cycles": "Довідкові цикли (імпортовані)",
    "cat_custom_phases": "Користувацькі фази",
    "cat_profile_groups": "Групи профілів",
    "cat_settings": "Налаштування виявлення та розпізнавання",
    "cat_matching_config": "Тонке налаштування розпізнавання",
    "cat_ml_models": "ML-моделі",
    "cat_feedback": "Відгуки та мітки перевірки",
    "cat_suggestions": "Пропозиції",
    "cat_maintenance_log": "Журнал обслуговування",
    "cat_history_logs": "Журнали історії та змін",
    "cat_lifetime_stats": "Загальні підсумки",
    "cycles_short": "циклів",
    "import_mode": "Як об'єднати",
    "mode_merge": "Об'єднати (зберегти мої)",
    "mode_replace": "Замінити вибране",
    "cycle_destination": "Куди помістити імпортовані цикли?",
    "dest_reference": "Довідкові (лише форма)",
    "dest_real_history": "Реальна історія (враховується в статистиці)",
    "conflict_resolution": "Конфлікти імен",
    "conflict_import_copy": "Імпортувати як копію",
    "conflict_keep_mine": "Зберегти мої",
    "conflict_overwrite": "Перезаписати"
  },
  "log": {
    "all_levels": "Усі рівні",
    "all_devices": "Усі пристрої",
    "all_components": "Усі компоненти",
    "search_ph": "Пошук у журналах…"
  },
  "ml": {
    "builtin_models": "● Використовуються вбудовані моделі",
    "fit_fair": "Прийнятно",
    "fit_good": "Добре",
    "fit_slight": "Незначно",
    "fit_strong": "Сильно",
    "fit_weak": "Слабко",
    "fit_word": "відповідність",
    "personalized": "● Персоналізовано для цього пристрою",
    "better_than_baseline": "{pct}% краще за базову оцінку ({metric})",
    "trend_improving_tip": "Відповідність цієї моделі покращилася за останні повторні перевірки.",
    "trend_declining_tip": "Відповідність цієї моделі погіршилася за останні повторні перевірки; перегляд більшої кількості циклів може допомогти їй перенавчитися.",
    "trend_steady_tip": "Відповідність цієї моделі залишалася приблизно стабільною за останні повторні перевірки.",
    "cap_blurb": {
      "end": "Визначення моменту, коли цикл справді завершився",
      "live_match": "Раніше розпізнавання запущеної програми",
      "quality": "Виявлення помилково визначених або пошкоджених циклів",
      "remaining_time": "Прогнозування залишку часу",
      "total_energy": "Прогнозування загальної енергії та вартості"
    },
    "cap_label": {
      "end": "Визначення кінця циклу",
      "live_match": "Розпізнавання програми",
      "quality": "Перевірка якості циклу",
      "remaining_time": "Оцінка залишку часу",
      "total_energy": "Оцінка енергоспоживання"
    },
    "metric_auc": "AUC {auc} на відкладених даних",
    "metric_mae": "похибка {model} проти базової моделі {baseline}"
  },
  "modal": {
    "auto_label": "Автопозначення циклів",
    "correct_feedback": "Виправити відгук",
    "create_profile": "Створити профіль",
    "cycle": "Цикл",
    "edit_group": "Редагувати групу профілів",
    "edit_phase": "Редагувати фазу",
    "import_config": "Імпортувати конфігурацію",
    "label_cycle": "Позначити цикл",
    "merge_cycles": "Об'єднати {n} циклів",
    "new_group": "Нова група профілів",
    "new_phase": "Нова фаза",
    "process_history_msg": "Повторно запустіть зіставлення, оновіть пропозиції, перенавчіть ML (якщо увімкнено) та перерахуйте якість циклів для всіх збережених циклів. Це може зайняти деякий час.",
    "process_history_ok": "Обробити",
    "process_history_title": "Обробка історії",
    "process_recording": "Обробити запис",
    "delete_maintenance_msg": "Видалити цей запис обслуговування? Цю дію не можна скасувати.",
    "delete_maintenance_title": "Видалити запис обслуговування",
    "relabel_cycles": "Перепозначити {count} циклів",
    "delete_automation_title": "Видалити автоматизацію",
    "delete_automation_msg": "Видалити автоматизацію «{name}» з Home Assistant? Цю дію не можна скасувати.",
    "remove_legacy_title": "Видалити застарілі дії",
    "remove_legacy_msg": "Видалити застарілі користувацькі дії? Вони перестануть спрацьовувати на подіях циклу. Це не можна скасувати з панелі.",
    "discard_recording_title": "Відхилити запис",
    "discard_recording_msg": "Відхилити збережений запис? Цю дію не можна скасувати.",
    "dismiss_all_title": "Відхилити всі відгуки",
    "dismiss_all_msg": "Відхилити всі {count} запитів на відгук, що очікують?",
    "dismiss_all_ok": "Відхилити всі",
    "delete_phase_title": "Видалити фазу",
    "delete_phase_msg": "Видалити фазу «{name}»?",
    "clear_debug_title": "Очистити дані налагодження",
    "clear_debug_msg": "Видалити всі збережені трасування налагодження?",
    "wipe_all_title": "Видалити всі дані",
    "wipe_all_msg": "⚠️ Це назавжди видалить УСІ цикли та профілі. Цю дію не можна скасувати.",
    "wipe_all_ok": "Видалити все",
    "force_stop_title": "Примусово зупинити цикл",
    "force_stop_msg": "Примусово зупинити активний цикл зараз? Цикл буде збережено як перерваний.",
    "store_import": "Імпорт еталонного циклу",
    "store_share": "Поділитися в магазині спільноти",
    "store_share_device": "Поділитися конфігурацією пристрою",
    "export_select": "Експорт - вибір даних",
    "import_wizard": "Імпорт - вибір даних"
  },
  "msg": {
    "appliance_monitor": "Монітор приладу",
    "artifact_dip_detail": "Опустився нижче звичайної смуги потужності приблизно на ~{n} с.",
    "artifact_footer": "Виділено на графіку вище. Це тимчасові артефакти (наприклад, двері відчинені посередині циклу), не обов'язково проблеми.",
    "artifact_header": "Протягом цього циклу виявлено {n} аномалій",
    "artifact_pause_detail": "Потужність впала майже до нуля приблизно на ~{n} с, а потім відновилася – імовірно, двері відчинили під час циклу або цикл призупинили.",
    "artifact_spike_detail": "Вийшов за верхню межу звичайної смуги потужності приблизно на ~{n} с.",
    "auto_label_intro": "Призначте профілі непозначеним циклам, чия впевненість збігу перевищує поріг.",
    "automations_intro": "WashData запускає події {start} / {end} та надає об'єкти, тому сповіщення й дії найкраще будувати як звичайні автоматизації Home Assistant. Автоматизації, що використовують цей пристрій, відображаються нижче.",
    "cleanup_intro": "Усі позначені цикли накладено. Позначте аномалії і видаліть їх для очищення профілю.",
    "clear_debug_hint": "Видаліть збережені дані налагодження, щоб звільнити місце.",
    "collecting_data": "Збір даних – потрібно ще {need} цикл{plural} до початку точного налаштування ({current}/{min}).",
    "compare_overlay_profiles": "Накласти профілі (блідо)",
    "compare_profiles_tip": "Накладіть інші конверти профілів на таблицю вище, щоб побачити, який з них найкраще підходить для цього циклу.",
    "compare_selected_cycles": "Вибрані цикли (суцільно) – показати / приховати",
    "consider_new_profile": "Розгляньте можливість створення нового профілю.",
    "coverage_gap": "останні цикли не мають відповідного профілю ({pct}% з останніх 30).",
    "coverage_gap_similar_cycles": "Знайдено {count} схожих непозначених циклів – створіть профіль, щоб почати їх зіставлення.",
    "cycles_deleted": "Видалено циклів: {count}",
    "enough_data": "Достатньо даних для навчання ({current}/{min} циклів).",
    "export_description": "Виберіть, які саме профілі, цикли, налаштування та інше експортувати в JSON, або проаналізуйте файл та імпортуйте лише потрібні частини.",
    "feedback_cycles_pending": "{n} цикл{s} для перегляду",
    "feedback_prompt": "Підтвердьте правильність, виправте програму або проігноруйте.",
    "feedback_relabel_hint": "Повторне маркування цього циклу також вирішує його.",
    "filter_by_profile": "Фільтр за профілем…",
    "group_modal_help": "Групуйте програми однакової форми, які відрізняються температурою/віджиманням (тривалість може відрізнятися). Підбір оцінює групу як одного кандидата, а потім вибирає найкраще підходящого учасника. Виберіть принаймні 2; накладка показує, наскільки вони схожі.",
    "group_not_cohesive": "Ці профілі недостатньо схожі для надійного групування, тому при зіставленні вони обробляються окремо, доки ви не видалите викид або не розділите групу.",
    "group_preview_hint": "Відмітьте 2 або більше учасників, щоб переглянути та порівняти їхні криві потужності.",
    "import_intro": "Завантажте експортований файл або вставте JSON нижче.",
    "legacy_actions_title": "{count} застаріла спеціальна дія ще виконується",
    "live_chart_loading": "Графік потужності в реальному часі з'являється по мірі надходження показань.",
    "loading": "Завантаження…",
    "loading_curve": "Завантаження кривої…",
    "loading_settings": "Завантаження налаштувань…",
    "log_buffer_hint": "Спочатку найновіші · буферизує останні 500 записів ha_washdata з моменту перезапуску · перетягніть нижній край, щоб змінити розмір.",
    "maintenance_advisory": "Збільшення тривалості/енергії може свідчити про необхідність обслуговування приладу (наприклад, видалення накипу, очищення фільтра).",
    "maintenance_due": "Час для обслуговування: {items}",
    "maintenance_intro": "Записуйте обслуговування цього приладу й отримуйте нагадування, коли настане час знову виконати кожне завдання.",
    "maintenance_load_error": "Не вдалося завантажити дані обслуговування: {error}",
    "maintenance_requires_access": "Обслуговування та експорт/імпорт потребують повного доступу.",
    "manual_duration_hint": "Середня/очікувана тривалість циклу профілю, що використовується для оцінки часу, що залишився. Відредагуйте, щоб встановити; якщо залишити без змін, збереже поточне значення.",
    "matching_tuning_intro": "Під час навчання WashData також налаштовує, скільки ваги відповідність програм надає формі, тривалості та енергії.",
    "merge_intro": "Вибрані цикли об'єднуються в один (хронологічний порядок; розриви заповнені 0 Вт). Оберіть отриманий профіль.",
    "ml_intro": "WashData постачається з розумними моделями, які працюють одразу.",
    "ml_learned_intro": "Моделі, налаштовані під цей пристрій.",
    "ml_loading": "завантаження ML…",
    "ml_settings_intro": "Два незалежних перемикачі: один застосовує моделі під час циклу, інший дозволяє WashData з часом налаштовуватися під ваш пристрій.",
    "name_first_program": "У вас достатньо циклів – назвіть першу програму, щоб почати зіставлення.",
    "near_duplicate_cluster": "виявлено майже повторюваний кластер профілів. Групування дає змогу надійно вибирати між подібними програмами (наприклад, однакова програма з різною температурою/віджиманням).",
    "no_cycles_match": "Жоден цикл не відповідає поточному фільтру.",
    "no_cycles_profile": "Немає циклів для цього профілю.",
    "no_cycles_selected": "Спочатку виберіть принаймні один цикл.",
    "no_cycles_yet": "Жодного циклу ще не записано.",
    "no_device_selected": "Пристрій не вибрано.",
    "no_devices": "Жодного пристрою WashData ще не налаштовано.",
    "no_envelope": "Конверта ще немає – відновіть після позначення циклів.",
    "no_envelope_overlay": "Немає доступного конверта для накладання.",
    "no_fine_tuned": "Ще нічого не налаштовано – WashData використовує вбудовані моделі.",
    "no_logs": "Жодних записів журналу ще не буферизовано.",
    "no_maintenance": "Обслуговування ще не записано.",
    "no_match_yet": "Ще немає спроби збігу – це заповнюється під час запущеного циклу.",
    "no_other_users": "Інших користувачів Home Assistant не знайдено.",
    "no_phases": "Фаз не визначено.",
    "no_phases_assigned": "Фаз не призначено.",
    "no_profiles_compare": "Немає профілів для порівняння.",
    "no_profiles_overlay": "Немає профілів для накладання.",
    "no_profiles_yet": "Профілів ще немає. Створіть один з позначеного циклу.",
    "no_profiles_yet_short": "Профілів ще немає.",
    "no_settings_match": "Жодне налаштування не відповідає \"{q}\"",
    "no_split_points": "Точок поділу ще немає.",
    "no_suggestions": "Немає активних пропозицій.",
    "notify_services_hint": "Використовуйте ID сервісів {entity} (через кому для кількох). Змінні шаблону: {vars}.",
    "old_actions_warning": "Налаштовано за допомогою старого редактора дій (тепер вилучено). Вони все ще запускаються на події циклу, але їх більше не можна редагувати тут. Перетворіть їх на звичайну автоматизацію або видаліть.",
    "onboarding_progress": "{n} / 3 циклів спостережено",
    "onboarding_watching": "Користуйтеся приладом як завжди – WashData спостерігає. Після 3 циклів почнеться зіставлення програм.",
    "pending_feedback": "Очікує відгук про виявлення",
    "performance_trend": "Тенденція продуктивності ({n} циклів)",
    "pg_analysis_empty": "Завантажте цикл, щоб побачити аналіз збігу.",
    "pg_apply_confirm": "Застосувати найкраще значення: {label} = {value}?",
    "pg_canvas_empty": "Виберіть цикл вище, потім натисніть «Завантажити», щоб побачити його графік потужності.",
    "pg_chart_caption": "Частка виявлення/збігу за значеннями {param}",
    "pg_match_rate": "{pct}% збігів на {total} циклах",
    "pg_restart_note": "Перезапустіть Home Assistant, щоб увімкнути інструменти симуляції.",
    "pg_sim_progress": "{done} / {total} циклів",
    "pg_starting": "Запуск…",
    "pg_stress_synthetic": "тут починається симуляція режиму очікування",
    "pg_sweep_intro": "Що якби {param} було іншим? Перевірте {steps} значень на ваших останніх {cycles} циклах, щоб знайти налаштування, за якого правильно зіставляється найбільше циклів.",
    "pg_sweep_step": "Крок {done} / {total}",
    "pg_undetected": "{n} цикл{s} не виявлено",
    "pg_verdict_bad": "Потребує уваги: багато циклів залишаються невиявленими.",
    "pg_verdict_good": "Добре налаштовано: більшість циклів правильно визначаються та зіставляються.",
    "pg_verdict_ok": "Прийнятно: деякі цикли пропущено. Спробуйте знизити поріг запуску.",
    "phase_catalog_intro": "Іменовані сегменти циклу (Попереднє прання, Нагрів, Віджимання…). Призначте їх профілю з його панелі керування.",
    "phase_ranges_intro": "Діапазони фаз (хвилини від початку циклу), накладені на середню криву. Редагуйте значення для попереднього перегляду в реальному часі.",
    "playground_intro": "Безпечна пісочниця для відтворення минулих циклів з різними налаштуваннями, порівняння двох конфігурацій поруч і перегляду того, як цикл вирівнюється з профілем. Ніщо тут не змінює ваші активні дані, доки ви явно не застосуєте це.",
    "playground_needs_restart": "Перезапустіть Home Assistant, щоб увімкнути інструменти Пісочниці.",
    "preferences_admin": "Налаштування, панель і контроль доступу",
    "preferences_adv": "Налаштування",
    "prefs_personal": "Застосовується лише до вашого облікового запису Home Assistant.",
    "process_history_hint": "Повторно запустіть зіставлення для всіх збережених циклів, оновіть пропозиції з налаштування, перенавчіть моделі ML (якщо увімкнено) та перерахуйте якість циклів. Запускайте після пакетного перегляду.",
    "profile_deleted": "Профіль видалено",
    "profile_poor_health_detail": "Цикли, призначені цьому профілю, мають суперечливі форми або низьку надійність. Розгляньте можливість перебудови конверта або перегляду позначених циклів.",
    "profiles_intro": "Натисніть на профіль для статистики, фаз та очищення. Групуйте майже ідентичні програми (однакова форма/тривалість, різна температура або віджимання) для надійного вибору.",
    "rbac_hint": "Коли вимкнено, кожен користувач Home Assistant має повний доступ (за замовчуванням). Адміністратори завжди мають повний доступ і можуть керувати всіма.",
    "recent_logs": "Останні записи ha_washdata",
    "recording_in_progress": "Запис триває",
    "reminders_intro": "Показувати нагадування на панелі через стільки циклів після останнього обслуговування. Залиште порожнім або 0, щоб вимкнути нагадування.",
    "restart_gap_footer": "Виділено на графіку. Дані потужності відсутні для цих інтервалів; зіставлення використовувало лише реальні показання.",
    "restart_gap_header": "{n} пропуск при перезапуску HA під час цього циклу",
    "restart_gap_item": "{dur} пропуск",
    "review_confirm_help": "Перевірте, чи правильно було виявлено цей цикл. Ваші відгуки навчають модель на вашому пристрої – що більше циклів ви підтвердите, то кращим буде відповідність та оцінка стану. Достатньо швидкого Добре/Погано.",
    "review_in_settings": "Переглянути в налаштуваннях",
    "review_notes_placeholder": "Примітки (необов'язково)",
    "review_notes_tip": "Довільні текстові нотатки для власної довідки. Не використовується під час підбору чи навчання.",
    "review_profile_tip": "Програма, якою позначено цей цикл. Якщо автоматично визначена програма була неправильною, виправте це тут – маркування навчає відповідності для майбутніх циклів.",
    "review_quality_tip": "Наскільки чистий цей цикл. Добре = хрестоматійний приклад цієї програми; Погано = виявлено, але шумно або нетипово; Непридатний = неправильно виявлений (об'єднаний, усічений або фальшивий). Керує оцінкою стану та циклами, дозволеними для навчання моделі.",
    "review_recorded_tip": "Позначте це як підібраний вручну еталонний цикл для своєї програми – така ж роль, як цикл, записаний вручну. Довідкові цикли завжди зберігаються, заповнюють відповідний шаблон і ніколи не відкидаються під час очищення. (Це «золотий»/записаний прапор; обидва – одне й те саме.)",
    "review_tags_tip": "Необов'язкові прапорці, що описують, що пішло не так у цьому циклі, щоб навчання та очищення могли це врахувати.",
    "review_to_cycles": "Відкрити чергу огляду циклів",
    "saving_triggers_reload": "Збереження запускає перезавантаження інтеграції. Об'єкти HA можуть короткочасно відображатися як недоступні.",
    "search_placeholder": "Пошук налаштувань…",
    "see_recorder": "Дивіться віджет записувача нижче",
    "setting_changed": "Змінено з {old} на {new} {date}",
    "settings_basic_note": "Показано основні налаштування. Перейдіть до Розширених, щоб побачити весь список.",
    "shape_drift_advisory": "⚠ Форма змінюється",
    "shape_drift_detail": "Профіль потужності для цього профілю змінився з часом – можливе зношення приладу або потрібне обслуговування (наприклад, видалення накипу, очищення фільтра).",
    "show_all_settings": "Показати всі налаштування",
    "showing_suggestions": "Показано {count} налаштувань із пропозиціями.",
    "split_intro": "Натисніть на графік, щоб додати або видалити точку поділу, або автовизначення за паузами. Кожен отриманий сегмент може отримати власний профіль.",
    "storage_diagnostics": "Статистика сховища, обслуговування, експорт/імпорт",
    "sug_staged": "Встановлено {key} = {val}. Збережіть для застосування.",
    "toast_auto_detect_enabled": "Автовизначення увімкнено",
    "toast_auto_label_complete": "Автоматичне маркування завершено",
    "toast_auto_label_failed": "Автоматичне маркування не виконано: {error}",
    "toast_automation_failed": "Не вдалося створити автоматизацію: {error}",
    "toast_automation_migrated": "Дії перенесено до автоматизації; відкривається редактор",
    "toast_convert_failed": "Конвертацію не виконано: {error}",
    "toast_create_failed": "Створення не виконано: {error}",
    "toast_delete_failed": "Видалення не виконано: {error}",
    "toast_error": "Помилка: {error}",
    "toast_failed": "Не виконано: {error}",
    "toast_force_stop_failed": "Примусову зупинку не виконано: {error}",
    "toast_name_required": "Потрібна назва",
    "toast_no_automation": "Тут не можна створити автоматизацію",
    "toast_profile_name_required": "Потрібна назва профілю",
    "toast_program_set": "Програму вибрано: {program}",
    "toast_rebuild_failed": "Перебудову не виконано: {error}",
    "toast_resume_failed": "Відновлення не виконано: {error}",
    "toast_revert_failed": "Відкат не виконано: {error}",
    "toast_reverted": "Повернено: {key}",
    "toast_save_failed": "Збереження не виконано: {error}",
    "trend_duration_longer": "Тривалість збільшується ({pct}%/цикл) – останній середній показник {avg}",
    "trend_duration_shorter": "Тривалість скорочується ({pct}%/цикл) – останній середній показник {avg}",
    "trend_energy_down": "Енергія зменшується ({pct}%/цикл)",
    "trend_energy_up": "Енергія зростає ({pct}%/цикл) – останній середній показник {avg}",
    "trim_intro": "Перетягніть червоні маркери або введіть значення. Все за межами вікна видаляється.",
    "tuning_suggestions_available": "Доступна {count} пропозиція налаштування на основі спостережених циклів. Вони з'являються поряд із відповідними полями.",
    "unsure_detected_prefix": "WashData не впевнений, що виявив",
    "updated": "Оновлено",
    "warmup_badge": "Ще навчається ({done}/{needed} циклів)",
    "warmup_detail": "Для початку автоматичного зіставлення цьому профілю потрібно {needed} позначених циклів. Кожен підтверджений цикл допомагає навчанню.",
    "wipe_history_warning": "Назавжди видалити всі цикли та профілі. Не можна скасувати.",
    "compare_overlay_tip": "Накладіть конверти вивчених профілів, щоб побачити, на яку програму схожий кожен цикл.",
    "duration_trend_up_tip": "Тривалість зростає ({pct}%/цикл)",
    "duration_trend_down_tip": "Тривалість зменшується ({pct}%/цикл)",
    "energy_trend_up_tip": "Енергія зростає ({pct}%/цикл)",
    "energy_trend_down_tip": "Енергія зменшується ({pct}%/цикл)",
    "performance_trending": "Тенденція продуктивності",
    "pg_select_cycle_hint": "Виберіть цикл і натисніть ↺ для завантаження",
    "pg_sweep_progress": "Крок {done} / {total}",
    "pg_analysis_hint": "Виберіть цикл і натисніть ↺ для завантаження аналізу.",
    "diagnostics_load_failed": "Не вдалося завантажити діагностику: {error}",
    "manual_duration_ref_hint": "Використовується лише тоді, коли не вибрано контрольний цикл. Контрольний цикл задає тривалість за власною довжиною.",
    "toast_convert_rolled_back": "Конвертацію не виконано, її було скасовано (жодної автоматизації не залишено): {error}",
    "toast_convert_orphan": "Автоматизацію створено, але очистити старі дії не вдалося. Не повторюйте спробу: вилучіть старі дії вручну, щоб уникнути дублювання автоматизації.",
    "advisory_duration_trend_up": "Цикли '{name}' стають дедалі довшими (приблизно +{pct}% за цикл). Якщо поведінка приладу змінилася, перезапишіть або перебудуйте цей профіль.",
    "advisory_energy_trend_up": "'{name}' споживає дедалі більше енергії (приблизно +{pct}% за цикл) - варто перевірити прилад, якщо це несподівано.",
    "advisory_poor_health": "У '{name}' низька оцінка відповідності - його останні цикли сильно різняться або погано розпізнаються. Перегляньте його цикли або перезапишіть профіль, щоб розпізнавання та оцінки часу залишалися точними.",
    "advisory_shape_drift": "'{name}' суттєво відхилився від початкової форми кривої потужності. Можливо, поведінка приладу з часом змінилася (наприклад, накип, знос). Радимо перезаписати цей профіль за останніми циклами.",
    "advisory_shape_drift_corr": "'{name}' суттєво відхилився від початкової форми кривої потужності (кореляція {corr}). Можливо, поведінка приладу з часом змінилася (наприклад, накип, знос). Радимо перезаписати цей профіль за останніми циклами.",
    "pg_no_alerts": "У цьому запуску проблем не виявлено.",
    "pg_override_active": "Використовуються ваші змінені налаштування замість поточних",
    "pg_history_intro": "Повторно прожене останні цикли через реальний детектор і зіставлювач. Спершу змініть налаштування виявлення в режимі «Симуляція», щоб побачити тут порівняння до/після.",
    "pg_history_empty": "Натисніть «Запустити», щоб відтворити цикли.",
    "pg_history_summary": "{detected}/{total} виявлено · {correct} зіставлено правильно",
    "pg_sweep_no_metric": "Недостатньо даних для оцінки цієї цілі.",
    "pg_sweep_intro2": "Знайдіть налаштування, яке найкраще досягає цілі на ваших останніх циклах. Нічого не зміниться, доки ви не застосуєте.",
    "pg_running_history": "Відтворення ваших циклів…",
    "pg_running_sweep": "Перевірка значень за всіма вашими циклами…",
    "pg_row_load_hint": "Завантажити цей цикл на графік вище",
    "pg_history_intro2": "Відтворіть недавні цикли через справжній детектор і модуль зіставлення з наведеними вище налаштуваннями. Натисніть будь-який рядок, щоб завантажити цей цикл на графік; змініть налаштування, щоб побачити порівняння до і після.",
    "pg_simulating": "Моделювання циклу…",
    "pg_canvas_empty2": "Виберіть цикл вище й натисніть «Запустити», щоб змоделювати його. Потім наведіть, щоб побачити значення, прокрутіть для масштабування та перетягніть для панорамування.",
    "pg_apply_settings_confirm": "Зберегти ці налаштування ({n}) на цей пристрій? {list}",
    "pg_stress_terminated_detail": "Стабілізувалося на ~{idle}W у режимі очікування -- цикл завершився {h} год {m} хв пізніше через {reason}.",
    "pg_stress_above_threshold_detail": "Споживання в режимі очікування ~{idle}W дорівнює або перевищує фактичний поріг зупинки ({stop}W) -- цикл так і не був зафіксований як неактивний. Щоб виправити, збільште stop_threshold_w.",
    "pg_stress_hit_cap_detail": "Цикл працював {h} год {m} хв без зупинки -- примусово зупинений захисним лімітом. Споживання в режимі очікування {idle}W порівняно з порогом зупинки {stop}W.",
    "no_logs_match": "Немає записів журналу, що відповідають цим фільтрам.",
    "pg_analysis_hint2": "Виберіть цикл і натисніть Запустити, щоб завантажити аналіз збігу.",
    "pg_analysis_empty2": "Натисніть Запустити, щоб побачити аналіз збігу.",
    "imported_readonly": "Імпортовано з магазину спільноти. Показується для довідки та зіставлення. Не враховується у вашій статистиці й не підлягає редагуванню.",
    "merge_no_imports": "Імпортовані записи не можна об'єднати з реальним циклом. Зніміть їх позначку, щоб об'єднати.",
    "store_enable_hint": "Увімкніть онлайн-функції в налаштуваннях, щоб переглядати та імпортувати еталонні цикли спільноти.",
    "online_intro": "Діліться еталонними циклами з іншими користувачами WashData і завантажуйте їх. Усі онлайн-функції вмикаються за бажанням і типово вимкнені.",
    "store_share_intro": "Завантажте цей еталонний цикл, щоб інші користувачі з таким самим пристроєм могли його використати. Перед публікацією він проходить перевірку.",
    "online_intro_global": "Переглядайте еталонні записи та діліться ними з іншими користувачами WashData, а також підтверджуйте записи про пристрої. Одне підключення діє для всієї вашої інтеграції WashData; бренд і модель пристрою задаються для кожного пристрою в розділі «Основне». Усі онлайн-функції вмикаються за бажанням і типово вимкнені.",
    "online_unavailable": "Онлайн-функції недоступні на цьому сервері.",
    "store_picker_offline": "Увімкніть онлайн-функції в меню налаштувань (шестерня), щоб вибирати з каталогу спільноти.",
    "pick_brand_first": "Спочатку виберіть бренд пристрою.",
    "model_not_found": "Ще немає в каталозі.",
    "connect_to_confirm": "Підключіться в меню налаштувань (шестерня), щоб підтверджувати або оцінювати.",
    "adopt_settings_hint": "Застосувати налаштування виявлення та зіставлення спільного пристрою до цього пристрою",
    "include_settings_hint": "Включити пороги виявлення, ваги зіставлення та інші параметри до спільного пакету",
    "onboard_download": "Завантажити готову конфігурацію з магазину спільноти",
    "share_consent": "Ви ділитеся реальними даними вашого приладу. Не діліться, якщо ваші шаблони використання є приватними.",
    "share_device_none": "Пристрої ще не налаштовані. Спочатку додайте пристрій.",
    "share_guideline_naming": "Використовуйте зрозумілі назви програм (наприклад, 'Cotton 40', 'Eco 60'), щоб інші могли їх ідентифікувати",
    "share_guideline_quality": "Діліться тільки профілями з ⭐ еталонними циклами або щонайменше {n} підтвердженими запусками",
    "share_guideline_review": "Перегляньте профілі перед публікацією -- видаліть ті, що виглядають неправильно",
    "share_guidelines_title": "Перед публікацією",
    "store_download_device_intro": "Завантажити конфігурацію пристрою зі спільноти та застосувати її до нового або наявного пристрою",
    "store_share_device_intro": "Поділитися програмами вашого пристрою (профілі + еталонні цикли) зі спільнотою. Налаштування необов'язкові.",
    "share_profile_no_cycles": "Профіль '{p}' не має ⭐ еталонних циклів -- його буде пропущено, якщо у вас немає {n}+ підтверджених запусків",
    "advisory_phase_inconsistent": "Схоже, що '{name}' поєднує різні програми або температури - його цикли нагріваються протягом дуже різного часу. Розділення на окремі профілі (напр. за температурою) покращить зіставлення та оцінки часу.",
    "advisory_phase_inconsistent_title": "⚠ Можливо, змішані програми",
    "export_select_intro": "Позначте, що саме включити. Вибір профілів без їхніх циклів усе одно експортує розпізнавану програму (її вивчена форма передається разом із нею).",
    "import_analyze_hint": "Завантажте експортований файл (або вставте його JSON). WashData проаналізує його та покаже, що саме можна імпортувати, перш ніж щось зміниться.",
    "analyzing": "Аналіз…",
    "device_type_mismatch_warn": "Цей експорт отримано від приладу іншого типу ({src} замість {local}). Програми та цикли все одно можна імпортувати як довідкові дані, але налаштування, специфічні для пристрою, та імпорт реальної історії вимкнено.",
    "merge_hint": "Імпортовані елементи додаються; нічого локального не втрачається. Конфлікти імен вирішуються нижче.",
    "replace_warn": "Кожна позначена категорія очищується та замінюється даними з файлу. Непозначені категорії залишаються без змін.",
    "dest_reference_hint": "Імпортовані цикли лише покращують розпізнавання програм і ніколи не впливають на статистику використання/енергії.",
    "dest_real_history_hint": "Імпортовані цикли зараховуються як власна історія цього пристрою та враховуються в статистиці енергії/використання. Використовуйте для перенесення одного приладу на нове встановлення."
  },
  "phase_desc": {
    "anti_crease": "Час від часу короткі оберти після завершення для зменшення зморшок.",
    "anti_wrinkle": "Періодичне обертання після циклу для зменшення зморшок.",
    "cool_down": "Обертання без нагріву ближче до кінця циклу.",
    "drain_and_switch": "Перехідний період з режиму прання на режим сушіння.",
    "dry": "Стадія сушіння з використанням нагрівача та/або залишкового тепла.",
    "drying": "Основний період нагрітого барабанного сушіння.",
    "heat_up": "Початковий прогрів нагрівача перед початком повного висихання.",
    "pre_rinse": "Початкове зрошення перед пранням мийним засобом.",
    "pre_wash": "Початкове замочування або попередня обробка перед основним пранням.",
    "rinse": "Стадія промивання чистою водою. Ця фаза може повторюватися кілька разів.",
    "sanitize": "Етап високотемпературного очищення для програм дезінфекції.",
    "sensor_check": "Коротка пауза низької потужності під час вимірювання сухості.",
    "soak": "Період низькоактивного замочування між етапами активного прання.",
    "soak_dw": "Подовжений період замочування для важкого бруду.",
    "spin": "Високошвидкісна екстракція для видалення води із завантаження.",
    "spin_wd": "Високошвидкісна екстракція перед переходом до сушіння.",
    "wash": "Основний цикл прання з рухом барабана та додатковим підігрівом.",
    "wash_dw": "Основне мийне прання з підігрівом."
  },
  "placeholder": {
    "add": "додати…",
    "group_name": "напр. Бавовна 2:47",
    "json_buttons": "[{\"action\":\"ID\",\"title\":\"Label\"}]",
    "notify": "додати сервіс сповіщень…",
    "notify_services_list": "notify.mobile_app_phone, ...",
    "person": "додати користувача…",
    "phase_name": "напр. Попереднє прання",
    "profile_name": "напр. Бавовна 40°C",
    "maintenance_notes": "напр. замінено фільтр, очищено ущільнювач дверцят",
    "store_brand": "напр. Bosch",
    "store_model": "напр. WAT28401"
  },
  "pref": {
    "date_absolute": "Абсолютна (напр. 14:32 2 лип)",
    "date_relative": "Відносна (напр. 2 години тому)",
    "lang_auto": "Системна мова ({lang})",
    "lang_en": "Англійська",
    "use_panel_default": "(за замовчуванням панелі)"
  },
  "quality": {
    "bad": "Погано",
    "good": "Добре",
    "unusable": "Непридатний"
  },
  "section": {
    "anti_wrinkle": {
      "intro": "Режим захисту від зминання виявляє короткі імпульси обертання барабана з малою потужністю після основного циклу та зберігає їх як частину завершеного циклу.",
      "label": "Захист від зминання"
    },
    "basic": {
      "intro": "Базова ідентифікація та найнеобхідніші елементи для більшості налаштувань.",
      "label": "Основні"
    },
    "delay": {
      "intro": "Виявлення відкладеного старту визначає, коли прилад увімкнено, але цикл ще не розпочато.",
      "label": "Відкладений старт"
    },
    "detection": {
      "intro": "Як цикл виявляється як такий, що починається, виконується та завершується.",
      "label": "Виявлення"
    },
    "matching": {
      "intro": "Як завершені цикли зіставляються з вивченими профілями та позначаються мітками.",
      "label": "Зіставлення"
    },
    "ml_training": {
      "intro": "Розклад перенавчання машинного навчання на пристрої та налаштування даних.",
      "label": "ML-навчання"
    },
    "notifications": {
      "intro": "Коли і як ви отримуєте сповіщення про події циклу.",
      "label": "Сповіщення"
    },
    "timing": {
      "intro": "Фоновий ритм, офлайн-сторожовий пес та технічне обслуговування.",
      "label": "Час & Сторожовий пес"
    },
    "triggers": {
      "intro": "Додаткові зовнішні сигнали: тригер завершення, датчик дверей, перемикач паузи та нагадування про вивантаження.",
      "label": "Тригери & Двері"
    },
    "phase_eta": {
      "label": "Залишок часу",
      "intro": "Оцінка залишку часу з урахуванням фаз, для машин, тривалість циклу яких залежить від температури або віджиму."
    }
  },
  "setting": {
    "anti_wrinkle_enabled": {
      "doc": "Розпізнавайте короткі малопотужні імпульси обертання, які видає сушильна машина після основної фази нагрівання, і зберігайте їх прив’язаними до завершеного циклу замість того, щоб зчитувати їх як нові цикли.",
      "label": "Увімкнути виявлення захисту від зминання"
    },
    "anti_wrinkle_exit_power": {
      "doc": "Потужність має бути нижче цього між імпульсами, щоб режим проти зморшок залишався активним.",
      "label": "Поріг потужності виходу"
    },
    "anti_wrinkle_idle_timeout": {
      "label": "Макс. пауза між імпульсами",
      "doc": "Як довго машина може залишатися тихою між двома імпульсами перекидання барабана, перш ніж режим захисту від зминання завершиться. Установіть вище за найдовшу паузу, яку ваша сушильна машина залишає між імпульсами, інакше кожен наступний імпульс буде зчитано як хибний запуск."
    },
    "anti_wrinkle_max_duration": {
      "doc": "Імпульси, довші за цей, розглядаються як справжній цикл, а не як рух проти зморшок.",
      "label": "Максимальна тривалість"
    },
    "anti_wrinkle_max_power": {
      "doc": "Пульс вище цієї потужності розглядається як справжній новий цикл, а не як рух проти зморшок. Встановіть трохи вище потужності перекидання.",
      "label": "Макс. потужність захисту від зминання"
    },
    "auto_label_confidence": {
      "doc": "Якщо результат збігу наприкінці циклу дорівнює або перевищує цей показник, програма автоматично позначається без підтвердження. Підніміть його, щоб вимагати більшої впевненості перед автоматичним маркуванням; знизити його, щоб автоматизувати більше. Працює в поєднанні з Learning Confidence під ним.",
      "label": "Впевненість автоматичного маркування"
    },
    "auto_maintenance": {
      "doc": "Виконуйте нічне прибирання: перебудовуйте конверти профілів, повторно обчислюйте працездатність циклу, видаляйте сліди налагодження та зберігайте найновіші цикли.",
      "label": "Автоматичне обслуговування (нічне очищення)"
    },
    "completion_min_seconds": {
      "doc": "Цикли, коротші за цей, відкидаються як цикли-привиди (тестові запуски, відкриття дверей, щоб додати носок).",
      "label": "Мін. тривалість циклу"
    },
    "delay_confirm_seconds": {
      "doc": "Потужність має залишатися в режимі очікування протягом цього часу, перш ніж пристрій розглядатиметься як очікування запуску, а не як запущений.",
      "label": "Секунди підтвердження"
    },
    "delay_start_detect_enabled": {
      "doc": "Визначайте, коли прилад увімкнено та очікує (відкладений запуск/режим очікування), але ще не розпочав свій цикл, тому режим очікування не сприймається як робочий цикл.",
      "label": "Увімкнути виявлення відкладеного старту"
    },
    "delay_timeout_hours": {
      "doc": "Припиніть очікування в режимі відкладеного запуску через стільки годин і поверніться до режиму очікування, щоб машина, залишена під напругою, але ніколи не запускалася, не чекала вічно.",
      "label": "Години тайм-ауту"
    },
    "device_type": {
      "doc": "Клас приладу. Встановлює розумні параметри виявлення за замовчуванням (порогові значення, затримка вимкнення, обробка завершення), налаштовані для цього типу пристрою; змінюйте його, лише якщо пристрій спочатку було налаштовано як неправильний тип.",
      "label": "Тип пристрою"
    },
    "door_sensor_entity": {
      "doc": "Додатковий бінарний датчик дверей. Використовується для визначення того, коли прилад було відкрито/вивантажено після циклу.",
      "label": "Сутність датчика дверей"
    },
    "duration_tolerance": {
      "doc": "Толерантність до оцінок часу, що залишився (зворотний зв’язок навчання, не збіг). Якщо фактична тривалість знаходиться в межах +/-X% від оцінки, це вважається хорошим збігом.",
      "label": "Допуск оцінки"
    },
    "enable_ml_models": {
      "doc": "Під час виконання циклу дозвольте моделям уточнювати результати в реальному часі: більш стабільну оцінку залишкового часу та енергії/вартості, а також захист від передчасної зупинки при виявленні кінця (він може лише відкладати фініш, ніколи не завершувати його раніше та є обмеженим). Використовує ваші точно налаштовані моделі, якщо вони доступні, інакше – вбудовані. Вимкнено = лише класична логіка на основі живлення (все ще надійна).",
      "label": "Застосовувати розумні моделі під час циклу"
    },
    "end_energy_threshold": {
      "doc": "Під час зворотного відліку затримки вимкнення накопичена енергія (ват х час) порівнюється з цим порогом. У разі перевищення, зворотний відлік скидається, зберігаючи валики проти зминання та хвости сушіння в посудомийній машині, приєднані до циклу, замість того, щоб скорочувати їх. Підніміть його, якщо цикли закінчуються занадто рано під час охолодження; зменште його, якщо виявлення відбувається повільно.",
      "label": "Енергія завершення"
    },
    "end_repeat_count": {
      "doc": "Кількість послідовних вимірювань нижче порогового значення, необхідних до завершення циклу. 1 підходить для більшості розеток. Збільште до 2-3, якщо ваша розумна розетка час від часу повідомляє про хибний нуль у середині циклу, і ваші цикли закінчуються передчасно.",
      "label": "Кількість повторів завершення"
    },
    "energy_price_entity": {
      "doc": "Датчик з поточною ціною електроенергії за кВт/год (наприклад, динамічний тариф). Має перевагу над статичною ціною нижче. Кожен цикл заморожує ціну, що діє після його завершення.",
      "label": "Сутність ціни на енергію"
    },
    "energy_price_static": {
      "doc": "Фіксована ціна за кВт-год, яка використовується для показників витрат, якщо вище не встановлено реальну ціну.",
      "label": "Фіксована ціна на енергію (за kWh)"
    },
    "energy_sensor": {
      "doc": "Необов’язковий накопичувальний лічильник енергії (total_increasing kWh/Wh, наприклад, власний лічильник загального споживання розетки). Якщо задано, енергія, що відображається для кожного циклу, береться з різниці показань цього лічильника між початком і кінцем, що дозволяє уникнути заниження, яке виникає при інтегруванні датчика потужності, що повільно оновлюється. Якщо показання відсутнє, його одиниця невідома або різниця не додатна, використовується інтегроване значення. Залиште порожнім, щоб продовжувати інтегрувати датчик потужності.",
      "label": "Сутність лічильника енергії"
    },
    "expose_debug_entities": {
      "doc": "Опублікуйте додаткові діагностичні об’єкти високої доступності (достовірність відповідності, неоднозначність, внутрішні стани). Якщо вимкнено, список об’єктів залишається чистим для звичайного використання.",
      "label": "Показати відлагоджувальні сутності"
    },
    "external_end_trigger": {
      "doc": "Бінарний датчик, зміна стану якого позначає кінець циклу (наприклад, «завершений» контакт приладу або супутня інтеграція).",
      "label": "Сутність зовнішнього тригера"
    },
    "external_end_trigger_enabled": {
      "doc": "Нехай зовнішній бінарний датчик сигналізує про кінець циклу на додаток до вбудованого детектування на основі потужності.",
      "label": "Увімкнути зовнішній тригер завершення"
    },
    "external_end_trigger_inverted": {
      "doc": "Розглядайте вимкнення тригерного датчика (а не увімкнення) як сигнал кінця циклу.",
      "label": "Інвертувати зовнішній тригер (спрацювання при ВИМКНЕННІ)"
    },
    "learning_confidence": {
      "doc": "Якщо показник збігу знаходиться між цим значенням і впевненістю автоматичної мітки, у сповіщенні відгуку буде запропоновано підтвердити ідентифіковану програму. Нижче цього рахунку матч є надто непевним, щоб вийти на поверхню. Має бути нижче рівня впевненості автоматичної мітки.",
      "label": "Впевненість навчання"
    },
    "linked_device": {
      "doc": "Необов’язково вставте цей пристрій WashData в інший пристрій (наприклад, розумний штекер) у реєстрі пристроїв HA, який відображається як «Підключено через ...».",
      "label": "Згрупувати під пристроєм"
    },
    "min_off_gap": {
      "doc": "Якщо машина вимикається менше, ніж на цей час, послідовність увімкнення/вимкнення/увімкнення розглядається як один безперервний цикл. Запобігає розділенню програм замочування (машина вимикається на кілька хвилин під час прання) на два окремі цикли. Встановіть його меншим, ніж проміжок між вашими послідовними навантаженнями, якщо ви хочете, щоб вони рахувалися як окремі цикли. Стандартні параметри типу пристрою захищають типову паузу всередині циклу для кожного пристрою.",
      "label": "Мін. пауза вимкнення"
    },
    "min_power": {
      "doc": "Абсолютна мінімальна потужність, яка вважається активною. Показання, нижчі за це, розглядаються як 0 Вт (режим очікування), фільтруючи фантомне навантаження розумних розеток і світлодіодів режиму очікування.",
      "label": "Мінімальна потужність"
    },
    "ml_training_enabled": {
      "doc": "Періодично протягом ночі вивчайте переглянуті цикли та налаштовуйте моделі на цю конкретну машину. Зміна зберігається лише тоді, коли вона справді має кращі результати під час затриманих циклів, тому це може лише допомогти або залишитися незмінним – ніколи не регресувати.",
      "label": "Навчатися від цієї машини"
    },
    "ml_training_hour": {
      "doc": "Місцева година доби (0-23) для точного налаштування протягом ночі. Виберіть тиху годину, наприклад 2 (02:00).",
      "label": "Навчатися о годині"
    },
    "ml_training_interval_days": {
      "doc": "Повторно перевіряйте наявність покращень щонайбільше один раз за цю кількість днів.",
      "label": "Перевіряти не частіше ніж кожні"
    },
    "ml_training_min_cycles": {
      "doc": "Зачекайте, доки буде записано принаймні стільки циклів, перш ніж виконувати точне налаштування, щоб було достатньо чого вчитися.",
      "label": "Спочатку потрібні цикли"
    },
    "name": {
      "doc": "Відображуване ім’я, яке відображається в списку інтеграцій HA та реєстрі пристроїв.",
      "label": "Назва пристрою"
    },
    "no_update_active_timeout": {
      "doc": "Якщо протягом такого тривалого часу під час роботи не надходить оновлення живлення, припустіть, що штекер вимкнено, і примусово зупиніть його, щоб уникнути циклу зомбі. За замовчуванням 600 с враховують затримку хмари або сітки.",
      "label": "Тайм-аут без оновлення"
    },
    "notify_before_end_minutes": {
      "doc": "Надіслати сповіщення про майже готове, коли приблизний час, що залишився, стане нижче цього. 0 вимикає його.",
      "label": "Попередження перед завершенням"
    },
    "notify_channel": {
      "doc": "Назва каналу сповіщень Android для початкових/живих повідомлень (керує звуком для кожного каналу та пріоритетом у мобільному додатку). Blank використовує супутню програму за замовчуванням.",
      "label": "Канал Android (початок/пряма трансляція)"
    },
    "notify_cycle_timers": {
      "doc": "Сповіщення в певні хвилини циклу (наприклад, щоб додати пом’якшувач). Повідомлення підтримує {device}, {program}, {minutes}. Увімкніть автоматичну паузу, щоб зробити паузу на цьому місці та отримати інтерактивне сповіщення з кнопкою «Відновити»; відновити за допомогою панелі, служби призупинення/відновлення або дії сповіщення.",
      "label": "Таймери циклу"
    },
    "notify_finish_channel": {
      "doc": "Назва каналу сповіщень Android для повідомлення про завершення. Бланк повторно використовує початковий/прямий канал.",
      "label": "Канал Android (завершення)"
    },
    "notify_finish_message": {
      "doc": "Тіло повідомлення, що надсилається після завершення циклу. Змінні шаблону: {device}, {duration}, {minutes}, {program}, {energy_kwh}, {cost}, {time_finished}, {vs_typical}, {cycle_count}. Тут найкорисніші {time_finished} та {vs_typical}.",
      "label": "Повідомлення про завершення"
    },
    "notify_finish_services": {
      "doc": "notify.* служби викликаються після завершення циклу. Додайте по одному на ціль; залиште порожнім, щоб не сповіщати про закінчення.",
      "label": "Служби завершення"
    },
    "notify_fire_events": {
      "doc": "Також запускайте події ha_washdata_* на початку/закінченні циклу, щоб ви могли створити власну автоматизацію.",
      "label": "Запускати події HA для сповіщень"
    },
    "notify_icon": {
      "doc": "Додаткова піктограма mdi для сповіщення (наприклад, mdi:washing-machine). Залиште порожнім для платформи за замовчуванням.",
      "label": "Іконка сповіщення"
    },
    "notify_live_chronometer": {
      "doc": "Показувати в сповіщенні оновлюваний таймер зворотного відліку (на платформах, які його підтримують) замість статичного прогнозу.",
      "label": "Використовувати живий хронометр"
    },
    "notify_live_interval_seconds": {
      "doc": "Частота оновлення поточних сповіщень під час виконання циклу.",
      "label": "Інтервал прямих оновлень"
    },
    "notify_live_overrun_percent": {
      "doc": "Якщо цикл перевищить оцінку більш ніж на цей відсоток, надішліть сповіщення про перевищення.",
      "label": "% перевищення часу перед сповіщенням"
    },
    "notify_live_services": {
      "doc": "notify.* служби, що викликали поточні оновлення прогресу під час виконання циклу. Залиште поле порожнім, щоб вимкнути сповіщення про хід виконання.",
      "label": "Служби прямого прогресу"
    },
    "notify_only_when_home": {
      "doc": "Надсилайте сповіщення лише тоді, коли принаймні один із пов’язаних людей (вище) перебуває вдома.",
      "label": "Сповіщати лише вдома"
    },
    "notify_people": {
      "doc": "person.*, які використовуються функцією «Повідомляти лише коли вдома», щоб визначити, чи є хтось удома.",
      "label": "Люди (для «лише вдома»)"
    },
    "notify_pre_complete_message": {
      "doc": "Тіло сповіщення перед завершенням / майже готово. Змінні шаблону: {device}, {duration}, {minutes}, {program}, {energy_kwh}, {cost}, {time_finished}, {vs_typical}, {cycle_count}.",
      "label": "Повідомлення перед завершенням"
    },
    "notify_reminder_message": {
      "doc": "Тіло нагадування про вивантаження, що досі очікує. Порожнє поле використовує вбудоване значення за замовчуванням. Змінні шаблону: {device}, {duration}, {minutes}, {program}, {energy_kwh}, {cost}, {time_finished}, {vs_typical}, {cycle_count}.",
      "label": "Повідомлення-нагадування"
    },
    "notify_start_message": {
      "doc": "Тіло повідомлення, що надсилається на початку циклу. Змінні шаблону: {device}, {duration}, {minutes}, {program}, {energy_kwh}, {cost}, {time_finished}, {vs_typical}, {cycle_count}.",
      "label": "Повідомлення про початок"
    },
    "notify_start_services": {
      "doc": "notify.* служби викликаються, коли починається цикл. Додайте по одному на ціль (телефон, інформаційну панель тощо); залиште порожнім, щоб не сповіщати про початок.",
      "label": "Служби початку"
    },
    "notify_timeout_seconds": {
      "doc": "Автоматично відхилити сповіщення через стільки секунд (на платформах, які це підтримують). 0 зберігає його, доки не буде звільнено вручну.",
      "label": "Автоматично закрити через"
    },
    "notify_title": {
      "doc": "Назва сповіщення. Змінні шаблону: {device}, {program}, {duration}, {energy}, {cost}, {date}, {time}, {minutes}.",
      "label": "Заголовок сповіщення"
    },
    "notify_unload_delay_minutes": {
      "doc": "Через кілька хвилин після завершення циклу перед надсиланням нагадування «розвантажити машину», що все ще очікує. Встановіть 0, щоб вимкнути нагадування.",
      "label": "Затримка нагадування про вивантаження"
    },
    "off_delay": {
      "doc": "Час очікування після падіння живлення, перш ніж оголосити цикл завершеним. Якщо живлення відновлюється протягом цього вікна, цикл продовжується безперебійно - це мости призупиняються між етапами прання. Посудомийні машини мають довгі фази сушіння (вимкнення на 20-60 хв), тому затримка вимкнення повинна перевищувати цю, щоб весь цикл миття+сушіння відбувався як один цикл.",
      "label": "Затримка вимкнення"
    },
    "pause_cuts_power": {
      "doc": "Коли цикл призупинено, також вимкніть елемент Switch Entity нижче. Тільки для приладів, вилку яких можна безпечно відрізати в середині циклу.",
      "label": "Пауза також вимикає живлення (через перемикач)"
    },
    "power_off_delay": {
      "doc": "Як довго потужність має залишатися нижче «Поріг вимкнення живлення» після завершення циклу, перш ніж стан повернеться до «Вимкнено». Використовується лише коли «Поріг вимкнення живлення» більше 0. Перевіряється з фоновою періодичністю, тому фактична затримка округлюється вгору до наступного моменту завершення стану.",
      "label": "Затримка вимкнення живлення"
    },
    "power_off_threshold_w": {
      "doc": "Необов'язкове визначення стану «Вимкнено» за потужністю. Якщо значення більше 0, то після завершення циклу, коли потужність залишається нижче цього рівня протягом часу «Затримка вимкнення живлення», машина вважається вимкненою, і стан повертається до «Вимкнено». Залиште 0, щоб вимкнути (типово). Задайте значення вище реального рівня вимкненого приладу, але нижче «Поріг зупинки» та нижче споживання машини в режимі очікування після завершення; якщо значення не нижче «Поріг зупинки», воно ігнорується. Коли параметр увімкнено, він замінює «Затримка скидання прогресу» для повернення до «Вимкнено», тож машина, яка завершила роботу, залишається у стані «Готово»/«Чистий», доки її справді не буде вимкнено.",
      "label": "Поріг вимкнення живлення"
    },
    "power_sensor": {
      "doc": "Об’єкт датчика, який повідомляє поточну потужність у ватах для цього приладу (наприклад, sensor.washer_power). Виявлення всіх циклів базується на цьому сигналі.",
      "label": "Датчик потужності"
    },
    "profile_duration_tolerance": {
      "doc": "Смуга +/- навколо середньої тривалості профілю, яка використовується під час зіставлення. 0,25 означає, що 60-хвилинний профіль відповідає 45-75-хвилинним циклам.",
      "label": "Допуск тривалості профілю"
    },
    "profile_match_interval": {
      "doc": "Як часто намагатися зіставити профіль протягом робочого циклу. За замовчуванням 300 с (5 хвилин) балансує швидкість виявлення та ЦП.",
      "label": "Інтервал зіставлення"
    },
    "profile_match_max_duration_ratio": {
      "doc": "Максимальна довжина циклу відносно профілю. 1.3 означає, що для відповідності цикл має бути менше 130% тривалості профілю.",
      "label": "Макс. коефіцієнт тривалості"
    },
    "profile_match_min_duration_ratio": {
      "doc": "Мінімальна довжина циклу відносно профілю. 0,9 означає, що для відповідності циклу має бути щонайменше 90% тривалості профілю.",
      "label": "Мін. коефіцієнт тривалості"
    },
    "profile_match_threshold": {
      "doc": "Мінімальна оцінка подібності (0-1), необхідна в кінці циклу, щоб прийняти ідентифікацію програми. Підніміть його, щоб зменшити кількість помилкових ідентифікацій; зменште його, якщо програми вашої машини не відповідають. За умовчанням 0,4 є консервативною початковою точкою.",
      "label": "Поріг зіставлення"
    },
    "profile_unmatch_threshold": {
      "doc": "If a live mid-cycle match drops below this score, the tentative identification is cleared. Тримайте його трохи нижче порога відповідності, щоб короткочасне зниження подібності не повернуло дисплей назад до незрівнянного.",
      "label": "Поріг незіставлення"
    },
    "progress_reset_delay": {
      "doc": "Після завершення утримуйте прогрес на рівні 100% протягом цього часу, щоб завершено було видно на інформаційних панелях, перш ніж перейти до режиму очікування.",
      "label": "Затримка скидання прогресу"
    },
    "pump_stuck_duration": {
      "doc": "Через кілька секунд насос може працювати безперервно, перш ніж його буде позначено як можливе зависання (спрацьовує подія stuck-pump).",
      "label": "Тривалість застрявання насоса"
    },
    "running_dead_zone": {
      "doc": "Після початку циклу спади потужності в цьому вікні ігноруються. Пральні машини заповнюють холодною водою (втрачаючи близько 0 Вт перед нагріванням) - без цього захисту ця фаза заповнення виглядає як кінець циклу. Це НЕ пропускає дані: повна потужність записується з T=0. Механізм підказок вимірює фактичний шаблон запуску вашого комп’ютера та автоматично визначає його розмір.",
      "label": "Мертва зона під час роботи"
    },
    "sampling_interval": {
      "doc": "Очікуваний час між показаннями датчика – використовується для визначення розміру вікна згладжування та правильного початку усунення дребезгу. Кожне оновлення датчика реєструється незалежно від цього значення; він лише калібрує наступні обчислення. Механізм підказок вимірює фактичну частоту педалей вашого датчика з минулих циклів і встановлює її автоматично.",
      "label": "Інтервал вибірки"
    },
    "save_debug_traces": {
      "doc": "Зберігайте повне трасування потужності та відповідні дані налагодження для кожного циклу. Корисно для усунення несправностей, але збільшує розмір пам’яті.",
      "label": "Зберегти відлагоджувальні трасування"
    },
    "smoothing_window": {
      "doc": "Наскільки згладжується необроблений сигнал потужності. Низький (2) чуйний, але шумний; високий (5) згладжує стрибки, але додає затримку.",
      "label": "Вікно згладжування"
    },
    "start_duration_threshold": {
      "doc": "Потужність має залишатися вище початкового порогу стільки часу, щоб підтвердити справжній старт, запобігаючи запуску циклу перемикачами увімкнення/вимкнення частки секунди.",
      "label": "Тривалість початку"
    },
    "start_energy_threshold": {
      "doc": "Енергія (потужність х час), яку прилад має спожити перед ЗАПУСКОМ. Короткий сплеск високої потужності має дуже низьку енергію та ігнорується, запобігаючи хибним стартам.",
      "label": "Енергія початку"
    },
    "start_threshold_w": {
      "doc": "Потужність має піднятися вище цього рівня, щоб підтвердити початок циклу. Встановлення занадто низького значення спричиняє помилкові старти від живлення в режимі очікування; занадто високі та повільні програми (холодне заповнення) пропускаються. Механізм підказок встановлює це трохи вище спостережуваної найнижчої активної потужності машини.",
      "label": "Поріг початку"
    },
    "stop_threshold_w": {
      "doc": "Потужність має впасти нижче цього рівня, перш ніж розпочнеться відлік затримки вимкнення. Встановіть його нижче початкового порогу - проміжок між ними є смугою гістерезису, яка запобігає мерехтіння. Якщо встановлено занадто високе значення, фази низької потужності (затримки полоскання, захист від зминання) помилково запускають завершення послідовності.",
      "label": "Поріг зупинки"
    },
    "switch_entity": {
      "doc": "Додатковий перемикач вимикається під час паузи та знову вмикається під час відновлення, використовується разом із «Пауза також вимикає живлення».",
      "label": "Сутність перемикача"
    },
    "watchdog_interval": {
      "doc": "Як часто фоновий сторожовий таймер перевіряє наявність зупинених датчиків і час очікування, що минув. За замовчуванням 30 с.",
      "label": "Інтервал сторожового пса"
    },
    "notify_milestone_message": {
      "doc": "Повідомлення для сповіщення про віху. Змінні шаблону: {device}, {cycle_count}.",
      "label": "Повідомлення про віху"
    },
    "notify_milestones": {
      "doc": "Розділені комами кількості циклів, які під час досягнення запускають одноразове святкове сповіщення (напр. 50, 100, 500, 1000). Порожнє поле вимикає сповіщення про віхи.",
      "label": "Віхи циклів"
    },
    "notify_quiet_end_hour": {
      "doc": "Кінець вікна «не турбувати» (0-23). Відкладені сповіщення надсилаються о цій годині. Залиште порожнім, щоб вимкнути.",
      "label": "Кінець тихих годин"
    },
    "notify_quiet_start_hour": {
      "doc": "Початок вікна «не турбувати» (0-23). Сповіщення про завершення, нагадування та про чисту білизну, які мали б спрацювати під час тихих годин, відкладаються й надсилаються після закінчення вікна. Залиште порожнім, щоб вимкнути. Підтримує вікна, що переходять опівніч (напр. початок 22, кінець 7).",
      "label": "Початок тихих годин"
    },
    "peak_rate_message": {
      "doc": "Необов'язковий власний текст для підказки про пікову ціну, що додається до сповіщення про початок. Змінні шаблону: {device}, {price}. Порожнє поле використовує вбудоване значення за замовчуванням.",
      "label": "Повідомлення про пікову ціну"
    },
    "peak_rate_threshold": {
      "doc": "Коли цикл починається і поточна ціна за кВт·год дорівнює цьому значенню або перевищує його, до сповіщення про початок додається підказка про пікову ціну. 0 або порожнє поле вимикає підказку.",
      "label": "Поріг пікової ціни (за кВт·год)"
    },
    "dtw_bandwidth": {
      "label": "Допуск зіставлення за формою",
      "doc": "Наскільки сильно модуль зіставлення може розтягнути цикл у часі, щоб підігнати його під форму збереженої програми. Чим вище значення, тим більше допускається коливань швидкості; надто високе ризикує зіставити не ту програму."
    },
    "corr_weight": {
      "label": "Вага форми відносно рівня",
      "doc": "Баланс між формою кривої та абсолютним рівнем потужності під час оцінювання зіставлення. Вище значення надає перевагу формі; нижче надає перевагу збігу рівня потужності."
    },
    "duration_weight": {
      "label": "Вага тривалості",
      "doc": "Наскільки сильно перевага надається програмі, типова тривалість якої збігається з цим циклом."
    },
    "energy_weight": {
      "label": "Вага енергії",
      "doc": "Наскільки сильно перевага надається програмі, типове споживання енергії якої збігається з цим циклом."
    },
    "store_brand": {
      "label": "Бренд пристрою",
      "doc": "Необов'язково. Бренд пристрою, вибраний із каталогу спільноти. Використовується для пошуку та публікації відповідних еталонних записів. Залиште порожнім, якщо не користуєтеся онлайн-функціями."
    },
    "store_model": {
      "label": "Модель пристрою",
      "doc": "Необов'язково. Модель пристрою, вибрана з каталогу спільноти після вказання бренду. Якщо вашої моделі немає у списку, ви можете додати її до каталогу."
    },
    "show_contributor": {
      "doc": "Показати ім'я автора на профілях, завантажених з магазину спільноти"
    },
    "enable_phase_matching": {
      "label": "Залишок часу з урахуванням фаз",
      "doc": "Розбиває кожен активний цикл на фази (нагрівання, прання, віджим) і розподіляє залишок часу за фазами, поєднуючи це з класичною оцінкою - спираючись на розподіл за фазами на початку циклу та на класичну оцінку ближче до кінця. Це персоналізує відлік під те, скільки насправді нагрівається та працює ваша машина, що найпомітніше в першій половині циклу. Вимкнено = лише класична оцінка. Впливає лише на відображення залишку часу; зіставлення програм і виявлення циклу залишаються незмінними."
    },
    "keep_min_score": {
      "label": "Мін. оцінка збігу",
      "doc": "Мінімальна оцінка подібності, необхідна кандидату для участі у змаганні зі збігів. Значення за замовчуванням 0,1 є навмисно м'яким - допускає навіть слабких кандидатів і покладається на пізніші етапи для знаходження найкращого збігу. Збільшіть для ранішого відхилення малоймовірних профілів; зменшіть для розширення початкового пулу кандидатів."
    },
    "dtw_blend": {
      "label": "Змішування деформації",
      "doc": "Наскільки оцінка вирівнювання DTW замінює базову оцінку Етапу 2. 0 = використовуй лише оцінку Етапу 2, 1 = використовуй лише оцінку DTW, 0,5 (за замовчуванням) = рівне змішування. Збільшіть для більшого покладання на вирівнювання деформацією, коли програми мають схожі рівні потужності, але різні часові шаблони."
    },
    "dtw_ensemble_w": {
      "label": "Мікс комбінації DTW",
      "doc": "В режимі ансамблю DTW (за замовчуванням), вага масштабованого L1 проти похідного DTW (DDTW). 1,0 = лише масштабований L1, 0 = лише DDTW, 0,7 = за замовчуванням. Масштабований варіант L1 порівнює рівні потужності; похідний варіант реагує на зміни потужності в часі. Ансамбль поєднує обидва."
    },
    "dtw_ddtw_scale": {
      "label": "Масштаб похідної деформації",
      "doc": "Відстань напівнасичення для оцінювання похідним DTW. Оцінка зменшується вдвічі, коли відстань DDTW рівна цьому значенню. Менша = більш чутлива до відмінностей форми. Значення за замовчуванням 30 відкалібровано для типових слідів потужності побутових приладів. Впливає лише на режими ensemble та ddtw DTW."
    },
    "dtw_refine_top_n": {
      "label": "Кількість уточнених кандидатів",
      "doc": "Скільки провідних кандидатів Етапу 2 DTW переоцінює. DTW є дорожчим, тому застосовується лише до N найкращих кандидатів. За замовчуванням 5. Збільшіть (до 7-9), якщо правильний профіль іноді досягає лише 4-го або 5-го місця після Етапу 2 - DTW може його врятувати. Зменшення трохи прискорює зіставлення."
    },
    "duration_scale": {
      "label": "Гострота тривалості",
      "doc": "Гострота штрафу за невідповідність тривалості на Етапі 4. Це лог-відношення, при якому оцінка збігу зменшується вдвічі. Менше = суворіше: невідповідність тривалості більше знижує оцінку. Значення за замовчуванням 0,175 відповідає допуску тривалості близько 18% при половинній вазі. Використовуйте разом із Вагою тривалості."
    },
    "energy_scale": {
      "label": "Гострота енергії",
      "doc": "Гострота штрафу за невідповідність енергії на Етапі 4. Менше = суворіше: невідповідність енергії більше знижує оцінку. Значення за замовчуванням 0,25 є навмисно більш м'яким, ніж Гострота тривалості, оскільки енергія варіюється з навантаженням. Використовуйте разом із Вагою енергії."
    }
  },
  "setting_group": {
    "auto_labeling": {
      "label": "Автоматичне маркування"
    },
    "cycle_end": {
      "label": "Завершення циклу"
    },
    "cycle_start": {
      "label": "Початок циклу"
    },
    "cycle_timers": {
      "label": "Таймери циклу"
    },
    "data_management": {
      "label": "Керування даними"
    },
    "debug": {
      "label": "Налагодження"
    },
    "dishwasher_end": {
      "label": "Завершення посудомийки"
    },
    "door_pause": {
      "label": "Двері & Пауза"
    },
    "dtw_refinement": {
      "label": "Уточнення DTW"
    },
    "duration_gates": {
      "label": "Ворота тривалості"
    },
    "energy": {
      "label": "Енергія"
    },
    "external_end_trigger": {
      "label": "Зовнішній тригер завершення"
    },
    "housekeeping": {
      "label": "Обслуговування"
    },
    "match_scoring": {
      "label": "Оцінка зіставлення"
    },
    "messages": {
      "label": "Повідомлення"
    },
    "power_off": {
      "label": "Вимкнення живлення"
    },
    "predictive_end": {
      "label": "Передбачуване завершення"
    },
    "schedule": {
      "label": "Розклад"
    },
    "services": {
      "label": "Служби"
    },
    "signal_processing": {
      "label": "Обробка сигналу"
    },
    "thresholds_gap": {
      "label": "Пороги & Пауза"
    },
    "timing": {
      "label": "Час"
    },
    "unload_reminder": {
      "label": "Нагадування про вивантаження"
    },
    "watchdog": {
      "label": "Сторожовий пес"
    },
    "quiet_hours_milestones": {
      "label": "Тихі години та віхи"
    },
    "device_info": {
      "label": "Інформація про пристрій"
    },
    "basic_configuration": {
      "label": "Основні налаштування"
    }
  },
  "status": {
    "active": "Активний",
    "all_statuses": "Усі стани",
    "ambiguous": "Неоднозначний",
    "auto_detect": "Автовизначення",
    "clear": "Чисто",
    "completed": "Завершено",
    "fine_tuning": "налаштування…",
    "force_stopped": "Примусово зупинено",
    "idle": "Бездіяльність",
    "interrupted": "Перерваний",
    "ready": "Готовий до обробки",
    "recording": "Запис",
    "training": "Навчання…",
    "saving": "Збереження…",
    "rebuilding": "Відновлення…",
    "analyzing": "Аналіз…",
    "resetting": "Скидання…",
    "reverting": "Відкат…",
    "trimming": "Обрізання…",
    "splitting": "Розділення…",
    "deleting": "Видалення…",
    "imported": "Імпортовано"
  },
  "tab": {
    "advanced": "Розширені",
    "diagnostics": "Діагностика",
    "history": "Цикли",
    "ml": "ML навчання",
    "pp_cleanup": "Очищення",
    "pp_manage": "Керування",
    "pp_overview": "Огляд",
    "pp_phases": "Фази",
    "profiles": "Профілі",
    "settings": "Налаштування",
    "status": "Огляд",
    "subtab_phase_catalog": "Каталог фаз",
    "subtab_profiles": "Профілі",
    "maintenance": "Обслуговування",
    "playground": "Пісочниця",
    "store": "Магазин"
  },
  "tag": {
    "early_end": "Раннє завершення",
    "late_start": "Пізній старт",
    "merged": "Об'єднані цикли",
    "noise": "Шум",
    "sensor_gap": "Розрив датчика",
    "split": "Розділений цикл",
    "wrong_profile": "Неправильний профіль"
  },
  "toast": {
    "access_saved": "Контроль доступу збережено",
    "all_wiped": "Усі дані видалено",
    "analysis_complete_none": "Аналіз завершено: нових пропозицій немає",
    "auto_label_complete": "Автопозначення завершено",
    "automation_deleted": "Автоматизацію видалено",
    "correction_submitted": "Виправлення надіслано",
    "cycle_deleted": "Цикл видалено",
    "cycle_force_stopped": "Цикл примусово зупинено",
    "cycle_labelled": "Цикл позначено",
    "cycle_paused": "Цикл призупинено",
    "cycle_resumed": "Цикл відновлено",
    "cycle_trimmed": "Цикл обрізано",
    "cycles_merged": "Цикли об'єднано",
    "envelope_rebuilt": "Конверт відновлено",
    "envelopes_rebuilt": "Конверти відновлено",
    "export_downloaded": "Експорт завантажено",
    "feedback_all_dismissed": "Усі відгуки відхилено",
    "feedback_confirmed": "Відгук підтверджено",
    "feedback_dismissed": "Відгук відхилено",
    "group_deleted": "Групу видалено",
    "group_name_required": "Назва групи обов'язкова",
    "group_saved": "Групу збережено",
    "import_successful": "Імпорт успішний; інтеграція перезавантажується",
    "json_required": "Дані JSON обов'язкові",
    "legacy_removed": "Застарілі дії видалено",
    "logs_exported": "Журнали експортовано",
    "matching_reverted": "Ваги збігів скинуто до стандартних",
    "min_2_profiles": "Виберіть принаймні 2 профілі для групи",
    "ml_training_no_improvement": "Навчання завершено: базовий рівень збережено (без покращень)",
    "models_reverted": "Моделі пристрою скинуто до базового рівня",
    "name_required": "Назва обов'язкова",
    "no_split_found": "Не знайдено пауз для поділу",
    "panel_settings_saved": "Налаштування панелі збережено",
    "phase_name_required": "Назва фази обов'язкова",
    "phase_updated": "Фазу оновлено",
    "phases_saved": "Фази збережено",
    "preferences_saved": "Налаштування збережено",
    "profile_name_required": "Назва профілю обов'язкова",
    "profile_renamed": "Профіль перейменовано",
    "recording_discarded": "Запис скасовано",
    "recording_saved": "Запис збережено до профілю",
    "recording_started": "Запис розпочато",
    "recording_stopped": "Запис зупинено",
    "review_saved": "Огляд збережено",
    "settings_conflicts": "Виправте виділені конфлікти налаштувань перед збереженням.",
    "settings_reverted": "Налаштування відновлено; інтеграція перезавантажується",
    "settings_saved": "Налаштування збережено; інтеграція перезавантажується",
    "suggestions_applied": "Пропозиції застосовано; інтеграція перезавантажується",
    "suggestions_dismissed": "Пропозиції відхилено",
    "apply_failed": "Не вдалося застосувати: {error}",
    "delete_failed": "Не вдалося видалити: {error}",
    "load_more_failed": "Не вдалося завантажити більше: {error}",
    "maint_add_failed": "Не вдалося додати запис: {error}",
    "maint_added": "Запис обслуговування додано",
    "maint_delete_failed": "Не вдалося видалити запис: {error}",
    "maint_deleted": "Запис обслуговування видалено",
    "relabel_done": "Перепозначено циклів: {count}",
    "relabel_failed": "Не вдалося перепозначити: {error}",
    "reminders_save_failed": "Не вдалося зберегти нагадування: {error}",
    "reminders_saved": "Нагадування про обслуговування збережено",
    "pause_no_cycle": "Немає активного циклу для паузи",
    "resume_no_cycle": "Немає призупиненого циклу для продовження",
    "delete_partial_failed": "Деякі елементи не вдалося видалити, і їх було відновлено",
    "pg_run_gone": "Цей запуск більше недоступний.",
    "task_cancelled": "Скасовано.",
    "processed": "Оброблено {bits}",
    "processed_cycles": "{n} циклів",
    "processed_suggestions": "{n} пропозицій",
    "processed_models": "{n} активованих моделей",
    "store_search_failed": "Не вдалося виконати пошук: {error}",
    "store_connect_failed": "Не вдалося підключитися: {error}",
    "store_connected": "Підключено до магазину спільноти",
    "store_disconnected": "Від'єднано від магазину спільноти",
    "store_error": "Помилка: {error}",
    "store_unavailable": "Магазин спільноти недоступний.",
    "store_pick_profile": "Виберіть профіль для об'єднання",
    "store_name_required": "Введіть назву профілю",
    "store_import_failed": "Не вдалося імпортувати: {error}",
    "store_imported": "Імпортовано в {profile}",
    "store_program_required": "Введіть назву програми",
    "store_no_appliance": "Спочатку вкажіть бренд і модель пристрою в налаштуваннях.",
    "store_share_failed": "Не вдалося поділитися: {error}",
    "store_shared": "Опубліковано в магазині спільноти, очікує перевірки.",
    "appliance_added": "Пристрій додано, очікує схвалення",
    "thanks_confirming": "Дякуємо за підтвердження",
    "device_approved": "Схвалено спільнотою",
    "rating_saved": "Оцінку якості збережено",
    "brand_added": "Бренд додано, очікує схвалення",
    "profile_added": "Профіль додано, очікує схвалення",
    "saved_except_conflicts": "Налаштування збережені -- {n} налаштування{s} пропущено через конфлікти",
    "share_device_none_sel": "Виберіть принаймні одну програму для публікації",
    "store_device_downloaded": "Конфігурацію пристрою завантажено: {created} профіль{c} створено, {dup} вже існувало",
    "store_device_downloaded_phases": "Конфігурацію пристрою завантажено: {created} профіль{c} створено, {dup} вже існувало, карту фаз застосовано",
    "store_device_downloaded_settings": "Конфігурацію пристрою завантажено: {created} профіль{c} створено, {dup} вже існувало, налаштування застосовано",
    "store_device_shared": "Конфігурацію пристрою опубліковано: {n} програм{s} завантажено",
    "store_device_shared_all_dup": "Нема нічого нового для публікації -- всі програми вже є в магазині",
    "store_device_shared_partial": "Часткова публікація: {n} програм{s} завантажено, {failed} пропущено",
    "store_device_shared_some_dup": "Конфігурацію пристрою опубліковано: {n} програм{s} завантажено ({dup} вже існувало)",
    "store_download_failed": "Помилка завантаження: {error}",
    "store_download_nothing": "Нема що завантажувати -- всі профілі вже існують на цьому пристрої",
    "export_selective_done": "Експорт завантажено",
    "import_selective_done": "Імпортовано профілів: {profiles}, циклів: {cycles}"
  },
  "suggestion": {
    "both_agree": "WashData рекомендує",
    "calibrated_label": "Відкалібровано",
    "observed_label": "Спостережуване",
    "impact": {
      "auto_label_confidence": {
        "higher": "Автоматично позначає менше циклів; більше йде на перевірку",
        "lower": "Автоматично позначає більше циклів; деякі можуть бути визначені неправильно"
      },
      "duration_tolerance": {
        "higher": "Приймає ширший діапазон тривалості – гнучкіше зіставлення",
        "lower": "Потребує точнішого збігу тривалості – суворіше, але може відхилити незвичні цикли"
      },
      "end_energy_threshold": {
        "higher": "Закриває лише цикли зі значним споживанням енергії",
        "lower": "Закриває також коротші або маломощні цикли"
      },
      "end_repeat_count": {
        "higher": "Потребує більшої кількості повторень сигналу завершення – надійніше, дещо повільніше",
        "lower": "Завершує після меншої кількості повторень – швидше, більший ризик хибного завершення"
      },
      "learning_confidence": {
        "higher": "Навчається лише на дуже впевнених збігах – повільніше, але надійніше",
        "lower": "Навчається на більшій кількості циклів; модель може бути більш зашумленою"
      },
      "min_off_gap": {
        "higher": "Перед новим циклом потрібен тривалий простій",
        "lower": "Короткий простій запускає новий цикл – послідовні запуски можуть розділитися"
      },
      "min_power": {
        "higher": "Менш чутливий до фонового споживання; може пропустити тихі програми",
        "lower": "Більш чутливий; може реєструвати споживання в режимі очікування як активність"
      },
      "no_update_active_timeout": {
        "higher": "Більше часу до визначення циклу як зависшого",
        "lower": "Швидше примусово зупиняє зависший цикл"
      },
      "off_delay": {
        "higher": "Більше часу для пауз пристрою – обробляє тривале замочування або сушку",
        "lower": "Швидше визначення завершення – добре для пристроїв із чітким вкл./викл."
      },
      "profile_match_threshold": {
        "higher": "Підтверджує лише збіги з високою впевненістю; більше циклів залишаються без мітки",
        "lower": "Зіставляє більше циклів; деякі можуть бути дещо неправильними"
      },
      "running_dead_zone": {
        "higher": "Ігнорує короткочасні стрибки потужності в режимі простою – менш чутливий до шуму",
        "lower": "Реагує на коротші сплески потужності – вловлює швидку перехідну активність"
      },
      "start_threshold_w": {
        "higher": "Запобігає хибним запускам від короткочасних стрибків потужності",
        "lower": "Вловлює маломощні програми; може спрацювати на шум"
      },
      "stop_threshold_w": {
        "higher": "Завершує цикл швидше – може закрити під час паузи",
        "lower": "Довше очікує завершення – менше передчасних завершень"
      },
      "watchdog_interval": {
        "higher": "Дозволяє триваліші тихі фази; менше хибних примусових зупинок",
        "lower": "Більш агресивно виявляє зависші цикли"
      }
    },
    "reason": {
      "auto_label_confidence": "Впевненість на 15-му процентилі для {cycles} автоматичних міток, які користувач жодного разу не виправляв ({p15}).",
      "completion_min_seconds": "Половина тривалості p05 коректного циклу ({minutes} min) за {cycles} циклами; відфільтровує фантомні цикли.{excl}",
      "dead_zone_batch": "Залишено невеликим (медіанне вікно нестабільності на старті за {cycles} циклами = {s}s), щоб реальне завершення визначалося швидко.",
      "dead_zone_from_dip": "На основі ранньої просадки потужності, виявленої на {s}s.",
      "end_energy_default": "Рекомендоване значення за замовчуванням для порога шуму наприкінці циклу.",
      "end_energy_false": "Енергія p95 хибних завершень ({p95}Wh) за {cycles} циклами, з нижньою межею 0.2% від медіанної енергії циклу ({floor}Wh).",
      "end_energy_no_false": "Хибних завершень за {cycles} циклів немає; нижня межа - 0.2% від медіанної енергії циклу ({floor}Wh).",
      "end_repeat_count": "{false}/{total} коректних циклів ({pct}%) мали внутрішню паузу >60s з відновленням; потрібно {val} підтвердження завершення.",
      "learning_confidence": "Впевненість p05 для {cycles} циклів, розмічених користувачем ({p05}); нижче цього значення запитується перевірка.",
      "match_interval": "На основі спостережуваної частоти оновлень (медіана={median}s) * 10.",
      "max_duration_ratio": "На основі тривалостей розмічених циклів (p95={p95}).",
      "min_active": "На основі мінімальної активної потужності ({min}W), зафіксованої в останньому циклі.",
      "min_duration_ratio": "Залишено якомога нижчим, щоб програма розпізнавалася на початку циклу; пороги впевненості та неоднозначності запобігають передчасним підтвердженням.",
      "min_off_gap": "На основі {gaps} спостережуваних проміжків між циклами (p05={p05}s). Мінімум пристрою: {floor}s.",
      "min_power": "40% від найменшої активної потужності p05 ({p05}W) за {cycles} коректними циклами, щоб поріг вимкнення залишався нижчим за реальне споживання.{excl}",
      "ml_auto_label": "Найменша впевненість, за якої модель якості все ще вважала цикл коректним (p10 за {cycles} коректними циклами = {p10}).",
      "ml_end_repeat": "{false}/{total} циклів ({pct}%) мали паузу, яку детектор завершення оцінив вище 50%; потрібно {val} підтвердження завершення.",
      "ml_off_delay": "Паузи, підтверджені детектором завершення: p95 {p95}s + запас 60s, за {pauses} паузами, перевіреними моделлю, за {cycles} циклів (мінімум {floor}s).",
      "no_update_timeout": "На основі спостережуваної частоти оновлень (p95={p95}s) * 20 (мін. 60s).",
      "off_delay_cadence": "На основі спостережуваної частоти оновлень (p95={p95}s) * 5",
      "off_delay_device_floor": "Використано безпечний мінімум для пристрою {device} ({floor}s).",
      "off_delay_generic_floor": "Використано універсальний безпечний мінімум ({floor}s).",
      "off_delay_pauses": "Розраховано так, щоб перекрити реальні паузи: пауза всередині циклу p95 {p95}s + запас 60s, за {pauses} паузами за {cycles} коректних циклів (мінімум {floor}s).",
      "profile_match_threshold": "Впевненість p10 для {cycles} правильних автоматичних міток ({p10}); безпечний поріг підтвердження в реальному часі.",
      "sampling_interval": "Медіанний інтервал оновлення за {cycles} коректними циклами ({si}s).{excl}",
      "smoothing_window": "Розраховано на згладжування ~30s показань за частоти опитування {si}s ({samples} відліків).",
      "start_duration": "Залишено невеликим (~один інтервал опитування {si}s), щоб виявлення починалося якомога раніше, але при цьому ігнорувалися поодинокі сплески.",
      "thr_batch": "Залишено трохи вище найменшої активної потужності p05 за {cycles} циклами ({p05}W), щоб запуск фіксувався якомога раніше, а поріг зупинки залишався нижчим за мінімальну робочу потужність машини.",
      "tol_per_profile": "p75 розкиду тривалості за профілями серед {profiles} профілів ({cycles} циклів); стабільні профілі не штрафуються.",
      "tol_pooled": "На основі об'єднаного розкиду тривалості {cycles} нещодавніх розмічених циклів (відхилення p95={dev}).",
      "watchdog": "Залишено настільки низьким, наскільки це безпечно (3x інтервал оновлення p95, що дорівнює {p95}s, мін. 30s), щоб зависання виявлялися швидко без хибних зупинок."
    },
    "exclusions": {
      "summary": "Виключено {total} помилково виявлених циклів: {parts}.",
      "reason": {
        "force_stopped": "примусово зупинені",
        "interrupted": "перервані",
        "incomplete": "незавершені",
        "noise": "шум",
        "unlabeled": "без мітки",
        "no_trace_short": "надто короткі для аналізу",
        "high_start": "розпочаті за високої потужності",
        "abrupt_end": "різко завершені",
        "mid_restart": "перезапуск усередині циклу",
        "no_power": "без потужності",
        "no_active_power": "без активної потужності"
      }
    }
  },
  "trend": {
    "down": "Низхідна тенденція",
    "up": "Висхідна тенденція"
  },
  "maint": {
    "bearing_service": "Обслуговування підшипників",
    "descale": "Видалення накипу",
    "drum_clean": "Очистити барабан",
    "filter_clean": "Очистити фільтр",
    "other": "Інше"
  },
  "pg_desc": {
    "completion_min_seconds": "Найкоротший запуск, що вважається справжнім циклом",
    "end_repeat_count": "Скільки низьких показань поспіль до завершення",
    "interrupted_min_seconds": "Короткі цикли позначаються як перервані",
    "min_off_gap": "Проміжок для розділення двох циклів",
    "off_delay": "Секунди низької потужності до завершення циклу",
    "start_duration_threshold": "Секунди вище порогу для підтвердження старту",
    "start_threshold_w": "Мінімум ват, щоб вважати запущеним",
    "stop_threshold_w": "Нижче цього машина вважається вимкненою",
    "anti_wrinkle_enabled": "Поглинати імпульси перекидання барабана після основної фази, а не зчитувати їх як нові цикли",
    "anti_wrinkle_exit_power": "Потужність між імпульсами має падати нижче цього, щоб захист від зминання залишався активним",
    "anti_wrinkle_idle_timeout": "Дозволена тиша між двома імпульсами перекидання барабана, перш ніж захист від зминання завершиться",
    "anti_wrinkle_max_duration": "Імпульс, довший за цей, завершує захист від зминання та відкриває новий цикл",
    "anti_wrinkle_max_power": "Імпульс, вищий за цей, завершує захист від зминання та відкриває новий цикл",
    "dtw_bandwidth": "Етап 3: смуга деформації Sakoe-Chiba (0 = DTW вимкнено; за замовчуванням 0,2 = 20% довжини циклу)",
    "corr_weight": "Етап 2: баланс між формою кривої (кореляція) та рівнем потужності (MAE); за замовчуванням 0,45",
    "duration_weight": "Етап 4: наскільки сильно збіг за тривалістю впливає на кінцеву оцінку (за замовчуванням 0,22)",
    "energy_weight": "Етап 4: наскільки сильно збіг за енергією впливає на кінцеву оцінку (за замовчуванням 0,22)",
    "profile_match_min_duration_ratio": "Етап 1: мінімальна довжина циклу як частка тривалості профілю; за замовчуванням 0,1 (10%)",
    "profile_match_max_duration_ratio": "Етап 1: максимальна довжина циклу як частка тривалості профілю; за замовчуванням 1,5 (150%)",
    "keep_min_score": "Етап 2: мінімальна оцінка для участі у змаганні; за замовчуванням 0,1 допускає слабкі збіги, пізніші етапи обирають найкращий",
    "dtw_blend": "Етап 3: 0 = лише базова оцінка, 1 = лише оцінка DTW, 0,5 = рівне змішування (за замовчуванням)",
    "dtw_ensemble_w": "Етап 3 (режим ансамблю): вага масштабованого L1 проти похідного DTW; за замовчуванням 0,7 надає перевагу рівню",
    "dtw_ddtw_scale": "Етап 3: відстань напівнасичення DDTW; менша = більш чутлива до форми (за замовчуванням 30)",
    "dtw_refine_top_n": "Етап 3: кандидати, які DTW переоцінює; збільшіть до 7-9, якщо правильний профіль займає 4-5 місце (за замовчуванням 5)",
    "duration_scale": "Етап 4: лог-відношення, при якому збіг за тривалістю зменшується вдвічі; менше = суворіший штраф (за замовчуванням 0,175)",
    "energy_scale": "Етап 4: лог-відношення, при якому збіг за енергією зменшується вдвічі; менше = суворіший штраф (за замовчуванням 0,25)"
  },
  "col": {
    "profile_tip": "Назва зіставленої програми. «Без мітки» означає, що наприкінці циклу не збігся жоден профіль.",
    "status_tip": "Результат циклу: Завершено (природне завершення), Перервано (різке падіння потужності), Примусово зупинено (вручну) або Потребує перегляду (очікується відгук).",
    "date_tip": "Дата та час початку циклу.",
    "duration_tip": "Загальний час роботи циклу від початку до кінця.",
    "energy_tip": "Загальна спожита енергія (кВт·год). Обчислюється інтегруванням потужності за часом.",
    "cost_tip": "Вартість енергії для цього циклу, зафіксована при завершенні за чинною тоді ціною (енергія × ціна за кВт·год). Укажіть ціну в Налаштуваннях, щоб заповнити це поле.",
    "confidence_tip": "Впевненість збігу профілю (0–100%). Наскільки точно крива потужності циклу збіглася з визначеною програмою.",
    "health_tip": "ML-стан циклу (вище = краще). Натисніть на цикл, щоб перевірити та переглянути його.",
    "flags_tip": "Мітки спільноти та індикатори якості даних"
  },
  "stat": {
    "avg": "сер.",
    "min": "мін {v}",
    "max": "макс {v}",
    "consistency": "стабільність ±{v}",
    "total": "усього {v}",
    "last_run": "останній запуск {v}",
    "score": "оцінка {pct}%",
    "duration_cv": "CV тривалості {pct}%",
    "avg_confidence": "сер. впевненість {pct}%"
  },
  "pg_evd": {
    "detected": "Детектор розпізнав, що цикл почався.",
    "match_commit": "Механізм зіставлення з достатньою впевненістю вибрав програму.",
    "match_changed": "Провідна програма змінилася, коли стало видно більшу частину циклу.",
    "match_ambiguous": "Дві програми отримали близькі оцінки, тому зіставлення було невизначеним.",
    "unmatched": "Жодна збережена програма не підійшла до цього циклу.",
    "notify_start": "Було б надіслано сповіщення про запуск.",
    "notify_pre_complete": "Було б надіслано сповіщення про те, що цикл майже завершено.",
    "notify_finish": "Було б надіслано сповіщення про завершення.",
    "notify_milestone": "Було б надіслано сповіщення про проміжний етап.",
    "notify_held": "Сповіщення було відкладено через тихі години.",
    "finished": "Цикл досяг кінцевого стану й завершився."
  },
  "store": {
    "browse": "Огляд",
    "device": "Пристрій",
    "favorites": "Обране",
    "search_ph": "Пошук за брендом або моделлю…",
    "no_results": "Відповідних пристроїв не знайдено. Спробуйте інший запит.",
    "n_programs": "{n} програм",
    "n_cycles": "{n} циклів",
    "no_programs": "Для цього пристрою поки немає опублікованих програм.",
    "no_cycles": "Для цієї програми поки немає опублікованих еталонних циклів.",
    "anon": "анонім",
    "uploaded_by": "Опубліковано користувачем {name}",
    "connected_as": "Ви ввійшли як {name}",
    "not_connected": "Не підключено. Підключіть обліковий запис GitHub, щоб ділитися власними циклами.",
    "import_new": "Новий профіль",
    "import_merge": "Об'єднати з наявним",
    "merge_target": "Об'єднати з профілем",
    "description": "Опис (необов'язково)",
    "contributed_by": "від {name}",
    "rating_summary": "★ {avg} ({n})",
    "no_ratings": "Оцінок ще немає",
    "website": "Сайт магазину ↗",
    "website_tip": "Відкрити сайт магазину спільноти"
  },
  "settings": {
    "gear": {
      "title": "Налаштування"
    }
  },
  "link": {
    "manual": "Посібник ↗",
    "add_appliance": "Додати ваш пристрій"
  },
  "tip": {
    "add_brand": "Бренду немає у списку? Додайте його до каталогу спільноти",
    "add_appliance": "Моделі немає у списку? Додайте ваш пристрій до каталогу спільноти",
    "add_profile": "Додайте профіль для цього пристрою на сайті спільноти"
  },
  "task": {
    "reprocess": {
      "matching": "Повторна обробка: зіставлення циклів",
      "golden": "Повторна обробка: заповнення контрольних",
      "suggestions": "Повторна обробка: пропозиції",
      "ml_training": "Повторна обробка: ML-навчання",
      "health": "Повторна обробка: стан циклів"
    },
    "pg_sweep": {
      "optimize": "Оптимізація: {param}"
    },
    "pg_detail": {
      "simulate": "Змоделювати цикл"
    },
    "split": {
      "apply": "Розділення циклу"
    },
    "trim": {
      "apply": "Обрізання циклу"
    },
    "merge": {
      "apply": "Об'єднання циклів"
    },
    "rebuild": {
      "envelopes": "Перерахунок обвідних"
    },
    "cancelling": "Скасування..."
  },
  "setup": {
    "hdr": {
      "card": "Налаштування пристрою",
      "healthy_chip": "Налаштування завершено"
    },
    "phase0": {
      "washer": "WashData вже виявляє ваші цикли. Запишіть перший цикл, щоб увімкнути назви програм і оцінки часу.",
      "dishwasher": "WashData спостерігає. Посудомийні машини мають складні цикли – запис першого циклу наполегливо рекомендується. Якщо виявлений цикл триває занадто довго, обріжте його в редакторі циклів перед збереженням як профіль.",
      "generic": "WashData спостерігає. Запишіть або позначте виявлений цикл, щоб почати створювати профілі."
    },
    "phase1a": {
      "labelled": "Гарний початок – ваша перша програма збережена. Для найчистіших даних розгляньте запис наступного циклу за допомогою віджета запису."
    },
    "phase1b": {
      "recorded": "Ваш запис збережено як {profile_name}. Тепер запишіть або позначте інші поширені програми для розширення охоплення."
    },
    "phase1c": {
      "verify": "У вас є {count} програм від спільноти. Запустіть цикл, щоб переконатися, що WashData правильно їх розпізнає – зіставлення покращуватиметься в міру того, як пристрій накопичує власну історію."
    },
    "phase2": {
      "cluster": "WashData виявив {count} циклів, які не відповідають жодній збереженій програмі – вони схожі один на одного. Хочете створити для них новий профіль?",
      "unmatched": "Ваш останній цикл не збігся з жодною збереженою програмою. Це нова програма?"
    },
    "phase3": {
      "suggestions": "WashData має рекомендації щодо налаштувань на основі вашої історії циклів – перегляньте їх для підвищення точності виявлення.",
      "groups": "Деякі ваші профілі схожі на одну й ту саму програму при різних температурах. Об'єднайте їх у групу для покращення зіставлення.",
      "phases": "Додайте фази програми до {profile_name} для точніших оцінок часу, що залишився."
    },
    "phase4": {
      "healthy": "Цей пристрій повністю налаштовано ({profile_count} профілів)."
    },
    "cta": {
      "start_recording": "Почати запис",
      "label_detected_cycle": "У мене вже є виявлений цикл – натомість позначити його",
      "browse_cycles": "Переглянути цикли для позначення наступного",
      "view_profiles": "Переглянути свої профілі",
      "create_from_cluster": "Створити профіль з цих циклів",
      "create_profile": "Створити для нього профіль",
      "review_suggestions": "Переглянути пропозиції",
      "organise_profiles": "Упорядкувати профілі",
      "configure_phases": "Налаштувати фази",
      "skip_step": "Пропустити цей крок",
      "skip_forever": "Більше не показувати",
      "hide_guidance": "Приховати підказки",
      "show_guidance": "Показати підказки"
    }
  }
}
