{ "editor.context_actions": "Действия: {object}", "editor.tool_options": "Параметры инструмента: {tool}", "editor.palette": "Палитра: {tool}", "editor.open_group": "Группа инструментов: {group}", "editor.group_active": "{group} — активно: {item}", "editor.disabled_action": "{action} недоступно: {reason}", "editor.loading": "Загружаем редактор…", "editor.loading_aria": "Редактор плана загружается", "editor.load_failed": "Не удалось загрузить редактор.", "editor.refresh_advice": "Обновите страницу и повторите попытку.", "editor.retry_advice": "Проверьте сеть и нажмите ещё раз.", "color_picker.title": "Выбор цвета", "color_picker.hue": "Оттенок", "color_picker.saturation": "Насыщенность", "color_picker.value": "Яркость", "color_picker.hex": "Цвет HEX", "color_picker.invalid_hex": "Введите цвет HEX из 3 или 6 цифр", "btn.properties": "Свойства", "btn.keep_as_walls": "Оставить стенами", "btn.delete_room_keep_walls": "Удалить комнату, оставить стены", "btn.delete_room_with_walls": "Удалить комнату и стены", "title.markup_select": "Выбор и редактирование стен, колонн и сохранённых контуров", "title.markup_column": "Колонна: кликните точку сетки для квадратной колонны", "markup.partition": "Перегородка", "markup.column": "Колонна", "markup.hint_column": "кликните точку сетки, чтобы поставить квадратную колонну", "history.draft_segment": "Добавление сегмента черновика комнаты", "history.draft_merge": "Соединение незавершённых контуров комнаты", "history.draft_segment_delete": "Удаление сегмента черновика комнаты", "history.partition_add": "Добавление перегородки", "history.column_add": "Добавление колонны", "history.physical_edit": "Изменение физического объекта", "history.physical_delete": "Удаление физического объекта", "history.physical_move": "Перемещение физического объекта", "history.contour_to_partitions": "Преобразование контура в замкнутые стены", "history.wall_chain_finish": "Завершение цепочки стен", "history.wall_face_batch": "Создание комнат из стен", "toast.column_duplicate": "Колонна с тем же центром и внешним размером уже существует", "confirm.delete_draft": "Удалить весь незавершённый контур комнаты?", "confirm.delete_draft_segment": "Удалить этот сегмент черновика? Оставшийся контур может разделиться на два.", "physical.partition_properties": "Свойства перегородки", "physical.column_properties": "Свойства колонны", "physical.draft_properties": "Свойства сегмента черновика", "physical.shape": "Форма", "physical.square": "Квадрат", "physical.circle": "Круг", "physical.diameter": "Диаметр", "physical.side": "Сторона", "physical.rotation": "Угол поворота", "physical.length": "Длина", "physical.allowed_range": "Допустимо: {min}–{max} {unit}", "physical.delete_segment": "Удалить сегмент", "physical.delete_draft": "Удалить весь контур", "physical.column_size_title": "Внешняя сторона квадратной колонны, создаваемой кликом (1–150 см).", "card.title": "План дома", "count.devices": "{n} устр.", "empty.no_spaces": "Пространств пока нет.", "empty.add_first": "Добавьте первое пространство и загрузите план этажа.", "empty.install": "Установите интеграцию House Plan и добавьте запись в «Устройства и службы».", "btn.add_space": "Добавить пространство", "btn.cancel": "Отмена", "btn.save": "Сохранить", "btn.close": "Закрыть", "btn.delete": "Удалить", "btn.edit": "Редактировать", "btn.open_in_ha": "Открыть в HA", "btn.reset": "Сброс", "btn.attach": "Прикрепить…", "btn.upload": "Загрузить…", "btn.replace": "Заменить…", "title.zoom_in": "Приблизить", "title.zoom_out": "Отдалить", "title.zoom_fit": "Вписать всё", "title.markup": "Разметка комнат: сетка, линии, контуры", "title.configure_space": "Настроить пространство", "title.add_space": "Добавить пространство", "title.markup_add": "Стены: рисуйте непрерывную цепочку; Shift фиксирует 45°. Смена инструмента или выход завершает её как независимые стены", "title.markup_merge": "Объединить: клик по одной комнате, затем по соседней с общей стеной", "title.markup_split": "Разделить комнату: клик по комнате, затем две точки на её стенах", "title.markup_delroom": "Удалить комнату: кликните внутри комнаты и подтвердите удаление", "title.need_plan": "Загрузите подложку (план этажа)", "markup.add": "Стены", "markup.merge": "Объединить", "markup.split": "Разделить", "markup.resize": "Размер", "title.markup_resize": "Изменение размера комнат: тяните доступную ручку горизонтальной или вертикальной стены", "markup.hint_resize": "тяните доступную ручку стены · стена упирается в первую небезопасную позицию · Esc — отмена · Ctrl+Z — отмена шага", "resize.disabled.diagonal": "Стена расположена под углом: Resize поддерживает только горизонтальные и вертикальные стены", "resize.disabled.side-angle": "Примыкающая стена расположена под углом: для Resize обе примыкающие стены должны образовывать прямой угол", "resize.disabled.duplicate-physical-wall": "Стену перекрывает отдельная перегородка, незавершённый контур или колонна; удалите или переместите её перед изменением размера", "resize.disabled.partial-shared": "Соседняя комната использует только часть этой стены, поэтому её нельзя безопасно двигать как одну общую стену", "resize.disabled.unequal-shared": "У соседней комнаты другие конечные точки или длина стены, поэтому стены нельзя безопасно двигать вместе", "resize.disabled.multiple-rooms": "Перемещение затронуло бы больше двух комнат", "resize.disabled.thickness-conflict": "Толщину стены нельзя безопасно сохранить", "resize.disabled.opening-conflict": "Проём на этой стене нельзя безопасно переместить", "resize.disabled.invalid-geometry": "Эту стену нельзя переместить без изменения структуры плана", "resize.limit_stopped": "Стена остановлена: дальше нарушается ограничение стыков", "resize.commit_failed": "Изменение размера отменено: итоговый план не прошёл проверку геометрии", "resize.preview_failed": "Стена остановлена в последней безопасной позиции: геометрию плана нельзя сохранить без потерь", "markup.opening": "Проём", "markup.delete_room": "Удалить комнату", "history.undo": "Отменить", "history.redo": "Повторить", "history.undo_named": "Отменить: {name} (Ctrl+Z)", "history.redo_named": "Повторить: {name} (Ctrl+Shift+Z / Ctrl+Y)", "history.undo_empty": "Нет операций для отмены", "history.redo_empty": "Нет операций для повтора", "history.undone": "Отменено: {name}", "history.redone": "Повторено: {name}", "history.add_room": "Создание комнаты", "history.split_room": "Разделение комнаты", "history.merge_rooms": "Объединение комнат", "history.resize_room": "Изменение размера комнаты", "history.wall_thickness": "Изменение толщины стены", "history.add_opening": "Добавление дверного или оконного проёма", "history.edit_opening": "Изменение проёма", "history.move_opening": "Перемещение проёма", "history.delete_opening": "Удаление проёма", "history.delete_room": "Удаление комнаты", "history.delete_room_keep_walls": "Удаление комнаты с сохранением стен", "history.delete_room_with_walls": "Удаление комнаты и её стен", "history.decor_add": "Добавление объекта декора", "history.decor_edit": "Изменение объекта декора", "history.decor_move": "Перемещение объекта декора", "history.decor_transform": "Трансформация объекта декора", "history.decor_delete": "Удаление объекта декора", "history.backdrop_transform": "Трансформация подложки плана", "opening.new": "Новый проём", "opening.edit": "Проём", "opening.door": "Дверь", "opening.window": "Окно", "opening.gate": "Ворота", "opening.passage": "Открытый проём", "opening.passage_binding_warning": "При сохранении датчик открытия и замок будут удалены.", "opening.invalid_passage_fields": "У открытого проёма на плане «{room}» есть недопустимые параметры: {fields}.", "opening.type_label": "Тип", "opening.length_label": "Длина, см", "opening.contact_label": "Датчик открытия", "opening.lock_label": "Замок", "opening.none": "— нет —", "opening.search_ph": "Поиск: имя или entity_id…", "opening.invert": "Инвертировать открыто/закрыто", "opening.flip_h": "Петли с другой стороны", "opening.flip_v": "Открывается в другую сторону", "opening.open": "Открыто", "opening.closed": "Закрыто", "opening.locked": "Заперто", "opening.unlocked": "Не заперто", "opening.state_unknown": "недоступно", "opening.no_entities": "Датчики не привязаны — статичный символ на плане.", "toast.opening_no_wall": "Кликните рядом со стеной комнаты или независимой стеной", "opening.host_partition": "Независимая стена", "opening.partition_orphan": "Независимая стена этого проёма больше не существует", "opening.partition_jamb_margin": "Оставьте от края проёма до торца стены минимум {distance}", "opening.rebind_partition": "Привязать к другой независимой стене", "confirm.delete_partition_openings_title": "Удалить стену и проёмы?", "confirm.delete_partition_openings_body": "В стене есть проёмы: {count}. Они будут удалены вместе со стеной.", "confirm.delete_partition_openings_item": "• {type}, {length}", "markup.delete": "Удалить", "markup.hint_points": "точек: {n} · Shift — шаг 45° · Esc — завершить цепочку · Ctrl+Z — убрать точку · при замыкании будет предложена комната", "markup.hint_start": "кликните точку сетки, чтобы начать цепочку стен", "tip.lqi": "средний сигнал zigbee:", "tip.area": "площадь: {value}", "info.device_header": "Устройство на плане", "info.model": "Модель", "info.state": "Состояние", "info.link": "Ссылка", "info.manuals": "Инструкции", "info.none": "Нет дополнительной информации", "marker.new_device": "Новое устройство", "marker.name_label": "Имя (отображается на плане)", "marker.name_ph": "Название", "marker.binding_label": "Привязка к устройству HA", "marker.binding_disabled": "деактивировано в Home Assistant", "marker.virtual_option": "Виртуальное устройство (без привязки)", "marker.search_ph": "Поиск устройства / группы…", "marker.nothing_found": "ничего не найдено", "marker.room_label": "Комната", "marker.room_override": " (переопределить размещение)", "marker.room_choose": "— выберите комнату —", "marker.room_auto": "— по зоне устройства (авто) —", "marker.icon_label": "Иконка", "marker.icon_ph": "mdi:… (пусто = авто)", "marker.display_label": "Отображение", "display.badge": "Значок + состояние", "display.icon_ripple": "Значок + состояние и активность", "display.static_icon": "Всегда статичный значок", "marker.display_hint": "Значок + состояние меняет подложку при работе, открытии, тревоге и недоступности. Значок + состояние и активность дополнительно показывает короткую пульсацию для событий и постоянную — для работы, движения или присутствия. Значение + состояние заменяет значок одним однозначным значением HA. Статичный значок не реагирует на состояния устройства.", "marker.display_hint_badge": "Значок и динамическая подложка показывают состояние устройства без обычной пульсации активности. Красная тревога сохраняется.", "marker.display_hint_icon": "Значок и динамическая подложка показывают состояние устройства без обычной пульсации активности. Красная тревога сохраняется.", "marker.display_hint_icon_ripple": "Значок, динамическая подложка и пульсация: короткая — для событий, постоянная — для работы, движения или присутствия. Красная тревога имеет отдельный приоритет.", "marker.display_hint_value": "Значок заменяется выбранным или автоматически найденным значением Home Assistant; подложка продолжает показывать состояние. Красная тревога сохраняется.", "marker.display_hint_static_icon": "Подложка в цветах темы и значок всегда остаются одинаковыми. Состояния, активность, недоступность и тревоги не меняют отображение.", "marker.static_alarm_warning": "Это устройство может сообщать о тревогах. Статичный режим скрывает визуальную тревогу маркера.", "marker.preview.title": "Предпросмотр отображения", "marker.preview.actual": "Сейчас", "marker.preview.example": "Пример", "marker.preview.integration": "Интеграция", "marker.preview.source": "Источник отображения", "marker.preview.current_state": "Текущее состояние", "marker.preview.result": "На плане", "marker.preview.details": "Подробнее об источниках", "marker.preview.select_source": "Выберите устройство или сущность Home Assistant, чтобы увидеть фактическое отображение.", "marker.preview.unknown_provider": "Интеграция неизвестна", "marker.preview.virtual_provider": "House Plan · виртуальное устройство", "marker.preview.no_source": "Нет активного источника", "marker.preview.no_state": "Нет текущего состояния", "marker.preview.mixed_states": "Несколько разных состояний", "marker.preview.multiple_sources": "Источников: {n}", "marker.preview.more_sources": "ещё {n}", "marker.preview.scaled": "Предпросмотр уменьшен до {n}%, чтобы поместиться. Сохранённый размер не изменится.", "marker.preview.demo_short": "Показать краткую активность", "marker.preview.demo_continuous": "Показать постоянную активность", "marker.preview.stop_continuous": "Остановить постоянную активность", "marker.preview.demo_short_notice": "Пример краткой активности; фактическое состояние устройства не меняется.", "marker.preview.demo_continuous_notice": "Пример постоянной активности; фактическое состояние устройства не меняется.", "marker.preview.demo_already_visible": "Текущее состояние уже показывает реальную активность или тревогу.", "marker.preview.reduced_motion": "В системе включено уменьшение движения, поэтому обычная активность показана точкой.", "marker.preview.reason.neutral": "Нейтральная тёмная подложка", "marker.preview.reason.working": "Жёлтая подложка: устройство сейчас работает", "marker.preview.reason.working_activity": "Жёлтая подложка и эффект активности: устройство сейчас работает", "marker.preview.reason.open": "Оранжевая подложка: физически открыто или разблокировано", "marker.preview.reason.cover_icon_state": "Нейтральная подложка; состояние и значок определяет сущность шторы или заслонки", "marker.preview.reason.presence": "Эффект активности, пока обнаружено присутствие", "marker.preview.reason.event": "Короткий эффект активности после события", "marker.preview.reason.transition": "Эффект активности во время движения или смены состояния", "marker.preview.reason.media_neutral": "Медиаустройство остаётся на нейтральной тёмной подложке, пока доступно", "marker.preview.reason.unavailable": "Приглушённая нейтральная подложка: отключено или недоступно", "marker.preview.reason.alarm": "Красная тревожная подложка; тревога отображается всегда", "marker.preview.reason.live_states_disabled": "Оформление по живым состояниям отключено в настройках карточки", "marker.preview.reason.value_no_state": "Нет подходящего значения состояния — вместо него показан значок", "marker.preview.reason.value_ambiguous_sources": "Подходит несколько источников значения — вместо него показан значок", "marker.preview.reason.value_non_scalar": "Источник вернул не простое значение — вместо него показан значок", "marker.preview.reason.value_virtual": "У виртуального устройства нет значения HA — вместо него показан значок", "marker.preview.reason.vacuum_live_plan_only": "Живая позиция и след пылесоса доступны только на полном плане", "marker.preview.reason.hidden_design_preview": "Устройство скрыто на плане, но его оформление видно в предпросмотре", "marker.preview.reason.composite_power_source": "Состояние берётся из сущности питания устройства; вспомогательные переключатели не учитываются", "marker.preview.reason.activity_display_disabled": "Выбранный режим отображения не показывает обычные эффекты активности", "marker.preview.reason.ha_disabled": "Привязка отключена в Home Assistant, поэтому устройство будет скрыто на плане", "marker.preview.reason.orphaned": "Сохранённая привязка Home Assistant больше не найдена", "marker.preview.reason.static_icon": "Статичный режим: состояние устройства не меняет значок", "marker.activity_color": "Цвет пульсации активности", "marker.ripple_size": "Размер пульсации активности", "marker.activity_alarm_note": "Цвет и размер относятся только к обычной активности и не влияют на красную тревогу.", "marker.pulse_a11y_alarm": "Тревога", "marker.pulse_a11y_event": "Недавнее событие", "marker.pulse_a11y_presence": "Обнаружено присутствие", "marker.pulse_a11y_transition": "Изменение состояния", "marker.pulse_a11y_running": "Работает", "marker.state_a11y_neutral": "Обычное состояние", "marker.state_a11y_working": "Работает", "marker.state_a11y_open": "Открыто", "marker.state_a11y_locked": "Заблокировано", "marker.state_a11y_unlocked": "Разблокировано", "marker.state_a11y_alarm": "Тревога", "marker.state_a11y_unavailable": "Недоступно", "marker.lqi_a11y_low": "LQI {value}, слабый сигнал", "marker.lqi_a11y_mid": "LQI {value}, средний сигнал", "marker.lqi_a11y_high": "LQI {value}, сильный сигнал", "marker.size_label": "Размер / поворот значка", "marker.angle_label": "Поворот", "marker.model_label": "Модель", "marker.model_ph": "напр. Aqara T&H", "marker.link_label": "Ссылка", "marker.desc_label": "Описание", "marker.desc_ph": "Заметки, характеристики…", "marker.manuals_label": "Инструкции (PDF и т.п.)", "marker.sub_device": "устройство", "marker.sub_z2m_group": " · Z2M-группа", "marker.sub_group": "группа", "marker.sub_helper": "хелпер", "space.new": "Новое пространство", "space.header": "Пространство", "space.title_label": "Название", "space.title_ph": "Например: Гараж", "space.plan_label": "Подложка (план)", "space.no_plan": "нет подложки", "space.plan_alt": "план", "room.new": "Новая комната", "room.name_label": "Отображаемое имя", "room.name_ph": "Например: Терраса", "room.area_label": "Зона Home Assistant (свободные)", "room.no_area_option": "— без зоны —", "room.default_name": "Комната", "device.unnamed": "без имени", "device.light_group": "группа света", "device.fallback": "устройство", "device.virtual": "виртуальное устройство", "confirm.delete_room": "Удалить комнату «{name}»?", "confirm.delete_room_title": "Удалить комнату «{name}»?", "confirm.delete_room_body": "Выберите, нужно ли оставить физические стены, принадлежащие только этой комнате. Общие с другой комнатой стены сохраняются всегда.", "confirm.remove_marker": "Удалить «{name}» с плана? Устройство исчезнет полностью и перестанет участвовать в данных плана. Позже его можно будет добавить заново.", "confirm.erase_decor": "Стереть объект «{kind}»? Действие можно отменить из истории редактора.", "confirm.delete_space": "Удалить пространство «{title}» со всеми комнатами и разметкой?", "space.delete_blocked": "Это пространство всё ещё используется устройствами: {n}. Сначала перенесите их в другое пространство или удалите.", "toast.pos_save_failed": "Не удалось сохранить позицию: {err}", "toast.no_entity": "У устройства нет подходящей сущности", "toast.ha_disabled_action": "Деактивированный объект Home Assistant нельзя использовать на плане.", "toast.ha_disabled_show_device": "Деактивированное в Home Assistant устройство нельзя показать на плане. Сначала активируйте его в Home Assistant.", "toast.ha_disabled_show_entity": "Деактивированную в Home Assistant сущность нельзя показать на плане. Сначала активируйте её в Home Assistant.", "toast.ha_disabled_add": "Деактивированный объект Home Assistant нельзя добавить на план. Сначала активируйте его в Home Assistant.", "toast.ha_binding_unverified": "Статус объекта не удалось подтвердить по реестру Home Assistant. Отображение и действия временно недоступны.", "toast.markup_needs_server": "Разметка доступна после переноса конфига на сервер", "toast.space_order_changed": "Порядок изменён. Если где-то этаж карточки задан номером, проверьте такие панели.", "toast.conflict": "Конфиг изменён в другом окне — данные обновлены, повторите последнее действие", "toast.cfg_save_failed": "Не удалось сохранить конфиг: {err}", "toast.room_overlap": "Контур накладывается на комнату «{name}» — комнаты не должны накладываться", "toast.contour_cannot_close": "Контур нельзя замкнуть: он вырожден или пересекает сам себя", "toast.merge_not_adjacent": "Объединять можно только комнаты с общей стеной", "toast.rooms_merged": "Комнаты объединены в «{name}»", "toast.split_pick_wall": "Начните разрез на стене комнаты", "toast.split_bad_cut": "Разрез — от стены до стены внутри комнаты, без пересечения стен и самого себя", "merge.header": "Объединение комнат", "merge.hint": "У объединённой комнаты одно имя и одна зона. Вторая зона освобождается — её устройства уйдут с плана, пока их не заберёт другая комната.", "merge.keep": "Оставить", "merge.no_area": "без зоны", "toast.room_saved": "Комната сохранена ({n}). Устройств добавлено: {added}. Обведите следующую или выйдите из разметки.", "toast.room_saved_no_area": "Комната сохранена ({n}, без зоны). Обведите следующую или выйдите из разметки.", "toast.marker_needs_server": "Редактирование устройств доступно после переноса конфига на сервер", "toast.virtual_name_required": "Укажите имя виртуального устройства", "toast.marker_saved": "Устройство сохранено", "toast.marker_removed": "Устройство удалено с плана", "toast.integration_missing": "Интеграция House Plan не установлена — управление недоступно", "toast.plan_formats": "Поддерживаются SVG, PNG, JPG, WebP", "toast.plan_required": "Загрузите подложку — план этажа обязателен", "toast.space_added_onboard": "Пространство добавлено. Обведите комнаты: кликайте по точкам сетки и замкните контур.", "toast.space_added": "Пространство добавлено", "toast.space_saved": "Пространство сохранено", "toast.space_deleted": "Пространство удалено", "toast.delete_failed": "Ошибка удаления: {err}", "toast.error": "Ошибка: {err}", "toast.toggle_target_unavailable": "Цель «{name}» недоступна — действие не выполнено", "toast.toggle_targets_unavailable": "Цели недоступны: {names}. Действие не выполнено", "toast.file_failed": "Файл «{name}» не загружен: {err}", "toast.files_attached": "Прикреплено файлов: {n}", "err.unknown": "неизвестная ошибка", "err.code": "код {code}", "err.too_large": "файл больше {mb} МБ", "err.bad_ext": "недопустимый тип (нужен PDF/изображение)", "err.unauthorized": "нужны права администратора", "editor.title": "Заголовок", "editor.default_floor": "Стартовое пространство", "editor.default_floor_missing": "Стартовое пространство «{id}» больше не существует. Выберите другое.", "editor.floor": "Закреплённое пространство", "editor.floor_none": "— не закреплять —", "editor.floor_index": "YAML-индекс {index} (сохранён)", "fixed_floor.loading": "Загружаем закреплённое пространство…", "fixed_floor.invalid_title": "Закреплённое пространство недоступно", "fixed_floor.invalid_body": "Проверьте floor в конфигурации карточки. Настроенное значение: {value}", "editor.icon_size": "Размер иконок, % ширины плана", "editor.show_temperature": "Показывать температуру", "editor.live_states": "Живые состояния (вкл/выкл, открыто…)", "editor.light_pools": "Световые пулы и тени от стен", "editor.show_signal": "Показывать сигнал zigbee (LQI)", "editor.language": "Язык интерфейса", "editor.lang_auto": "Авто (профиль HA)", "title.icon_rules": "Правила иконок: какая MDI-иконка достаётся устройству по имени", "rules.title": "Правила иконок", "rules.hint": "Правила проверяются сверху вниз по строке «имя устройства + модель» (regex без учёта регистра); срабатывает первое совпадение. Если ничего не подошло — решает device class сущности, затем — иконка-заглушка.", "rules.pattern_ph": "regex, напр. розетк|plug", "rules.icon_ph": "mdi:power-socket-de", "rules.add": "Добавить правило", "rules.reset": "Сбросить к умолчаниям", "rules.test_ph": "Проверьте имя устройства…", "rules.invalid": "некорректный regex", "rules.saved": "Правила иконок сохранены", "btn.up": "Вверх", "btn.down": "Вниз", "tap.info": "Карточка устройства", "tap.more_info": "Диалог HA (more-info)", "tap.toggle": "Переключить состояние", "marker.tap_label": "Действие по нажатию для этого устройства", "tap.toggle_note": "Под селектором показано, какое состояние изменится. Защищённые устройства не переключаются с плана.", "import.title": "Создать пространства из этажей HA", "import.hint": "Home Assistant уже знает эти этажи. Отметьте, какие превратить в пространства плана — далее для каждого попросим картинку плана. Комнаты затем обводятся вручную по плану.", "import.start": "Создать: {n}", "import.manual": "Начать с нуля", "import.progress": "Этаж {i} из {n}", "import.done": "Пространства созданы. Обведите комнаты: кликайте по точкам сетки и замкните контур.", "btn.skip": "Пропустить", "space.scale_label": "Масштаб (размер клетки сетки)", "space.scale_unit": "см на клетку", "space.scale_unit_imperial": "дюйм на клетку", "space.display_section": "Отображение", "space.show_borders": "Всегда отображать границы комнат", "space.zero_wall_style": "Стены нулевой толщины", "space.zero_wall_dashed": "Пунктирные", "space.zero_wall_solid": "Сплошные", "space.zero_wall_help": "Пунктирные стены пропускают свет. Сплошные стены блокируют свет, даже при нулевой толщине.", "space.show_names": "Отображать названия комнат (перетаскиваются)", "space.room_color": "Цвет границ и названий", "space.opacity": "Прозрачность", "space.fill_label": "Заливка комнат", "fill.none": "Нет", "fill.lqi": "По силе зигби-сигнала", "fill.light": "По освещению", "fill.custom": "Свой цвет", "space.custom_fill": "Цвет заливки", "space.source_file": "У меня есть картинка плана", "space.source_draw": "Нет подложки — нарисую комнаты вручную", "fill.temp": "По температуре", "tip.temp_avg": "средняя температура:", "tip.hum_avg": "средняя влажность:", "space_card.button": "Перейти к пространству", "space_card.not_found": "Пространство «{id}» не найдено", "space_card.loading": "Загрузка…", "continuity.restore_plan": "Восстанавливаем план…", "continuity.restore_connection": "Восстанавливаем подключение к устройствам…", "continuity.retry": "Повторить", "editor.space": "Пространство", "editor.framing": "Кадрирование", "editor.fit_content": "Всё видимое содержимое", "editor.fit_house": "Плотно по геометрии дома", "editor.show_button": "Показывать кнопку", "editor.button_label": "Текст кнопки", "editor.button_target": "Путь дашборда (куда вести)", "marker.sub_entity": "сущность", "title.general_settings": "Общие настройки", "gs.title": "Общие настройки", "gs.hint": "Цвета заливок действуют на все пространства; у каждого цвета своя прозрачность. Какой режим заливки использует пространство — задаётся в его диалоге.", "gs.light_group": "Заливка: освещение", "gs.light_on": "Свет включён", "gs.light_off": "Весь свет выключен", "gs.temp_group": "Заливка: температура", "gs.temp_cold": "Холодно", "gs.temp_ok": "Комфорт", "gs.temp_hot": "Жарко", "gs.lqi_group": "Заливка: зигби-сигнал", "gs.lqi_low": "Слабый сигнал", "gs.lqi_high": "Сильный сигнал", "gs.reset": "Сбросить к умолчаниям", "gs.saved": "Общие настройки сохранены", "space.show_lqi": "Показывать зигби-сигнал (LQI) у устройств", "space.hide_decor": "Скрыть декоративный слой", "space.hide_decor_tip": "Линии, фигуры, надписи и мебель остаются на месте — их видно в редакторе подложки, но не на плане.", "space.hide_openings": "Скрыть проёмы", "space.hide_openings_tip": "Двери, окна и ворота не рисуются, но продолжают работать: свет проходит, солнце светит в окна, датчики открытия срабатывают. В редакторе плана проёмы видно всегда.", "gs.light_none": "Нет источников света", "mode.plan": "Редактор плана", "mode.devices": "Редактор устройств", "display.value": "Значение + состояние", "marker.subarea": "без зоны, вручную", "device.new": "Новое устройство — откройте его редактор, чтобы снять отметку", "opening.unlock_action": "Открыть замок", "opening.lock_action": "Закрыть замок", "opening.lock_pending": "Выполняется…", "title.close_editor": "Закрыть редактор (вернуться к просмотру)", "title.add_device": "Добавить устройство на план", "devbar.add": "Добавить", "devbar.rules": "Правила иконок", "device_inbox.button": "Устройства", "device_inbox.title": "Устройства на плане", "device_inbox.search": "Поиск по устройствам, сущностям и интеграциям…", "device_inbox.add_virtual": "Добавить виртуальное устройство", "device_inbox.tab_on_plan": "На плане", "device_inbox.tab_available": "Доступны", "device_inbox.tab_hidden": "Скрытые", "device_inbox.tab_readd": "Доступны снова", "device_inbox.only_new": "Только новые", "device_inbox.show_entities": "Показывать сущности", "device_inbox.show_hidden": "Показывать скрытые на плане", "device_inbox.new": "Новое", "device_inbox.find": "Найти на плане", "device_inbox.edit": "Настроить", "device_inbox.hide": "Скрыть", "device_inbox.show": "Показать", "device_inbox.add": "Добавить", "device_inbox.readd": "Добавить заново", "device_inbox.hide_available": "Скрыть из списка", "device_inbox.show_more": "Показать ещё", "device_inbox.more_actions": "Другие действия", "device_inbox.find_hidden_hint": "Сначала включите «Показывать скрытые на плане»", "device_inbox.show_disabled": "Перед показом активируйте эту привязку в Home Assistant", "device_inbox.empty_on_plan": "На плане пока нет подходящих устройств.", "device_inbox.empty_available": "Нет доступных устройств для добавления.", "device_inbox.empty_hidden": "Скрытых устройств нет.", "device_inbox.empty_readd": "Нет удалённых устройств, доступных для повторного добавления.", "device_inbox.reason_visible_auto": "Найдено автоматически", "device_inbox.reason_visible_explicit": "Добавлено явно", "device_inbox.reason_manual_hidden": "Скрыто пользователем", "device_inbox.reason_automatic_hidden": "Скрыто автоматически", "device_inbox.reason_service_entry": "Служебная запись реестра", "device_inbox.reason_excluded_integration": "Интеграция исключена фильтрами устройств", "device_inbox.reason_excluded_domain": "Непространственный тип сущности", "device_inbox.reason_grouped_light": "Представлено группой света комнаты", "device_inbox.reason_represented_by_parent": "Представлено родительским устройством", "device_inbox.reason_removed": "Ранее удалено с плана", "device_inbox.reason_available": "Можно добавить на план", "device_inbox.reason_no_bound_room": "Зона HA не связана с комнатой плана", "device_inbox.status_ha_disabled": "Отключено в Home Assistant", "device_inbox.status_orphaned": "Привязка больше не найдена в Home Assistant", "device_inbox.status_unverified": "Реестр Home Assistant временно недоступен", "device_inbox.saved": "Список устройств обновлён", "space.roomcard_section": "В карточке комнаты:", "space.label_temp": "Температура", "space.label_hum": "Влажность", "space.label_lqi": "Средний Zigbee-сигнал", "space.label_light": "Свет вкл/выкл", "roomcard.light_on": "Вкл", "roomcard.light_off": "Выкл", "roomcard.light_partial": "{on} из {total}", "toast.split_pick_inside": "Промежуточные точки разреза — внутри комнаты", "mode.decor": "Редактор подложки", "decor.select": "Выбрать", "decor.line": "Линия", "decor.rect": "Прямоугольник", "decor.ellipse": "Овал", "decor.text": "Надпись", "decor.erase": "Стереть", "decor.erase_confirm_title": "Стереть объект?", "decor.color": "Цвет", "decor.width": "Толщина линии", "decor.line_style": "Стиль линии", "decor.line_style_solid": "Сплошная", "decor.line_style_dashed": "Пунктирная", "decor.fill": "Заливка", "decor.fill_color": "Цвет заливки", "decor.length": "Длина", "decor.size": "Размер", "decor.angle": "Угол поворота, °", "decor.text_size": "Размер текста", "decor.backdrop_properties": "Свойства картинки-подложки", "decor.text_title": "Надпись", "decor.object_title": "Редактирование: {kind}", "decor.text_label": "Текст", "decor.live_group": "Вставить переменную HA", "decor.live_entity": "Сущность", "decor.live_entity_ph": "выберите сущность", "decor.live_attr": "Значение", "decor.live_attr_ph": "выберите состояние или атрибут", "decor.live_state": "Состояние", "decor.backdrop": "Картинка-подложка", "decor.backdrop_hint": "Тяните картинку — перемещение; угол — размер; верхнюю ручку — поворот. Shift меняет пропорции или снимает шаг угла.", "decor.backdrop_reset": "Вернуть картинку", "decor.backdrop_reset_done": "Картинка вернулась на своё место и в свой размер", "marker.icon_auto": "Авто: {icon} (по правилам иконок; выберите свою, чтобы заменить)", "marker.icon_pin_auto": "Закрепить", "mode.plan_tip": "Редактор плана — геометрия дома: рисование и объединение/разделение комнат, привязка к зонам HA, двери, окна и ворота, карточки комнат, масштаб", "mode.devices_tip": "Редактор устройств — всё про значки: перетаскивание, клик — настройка привязки/иконки/отображения, виртуальные устройства, правила иконок", "mode.decor_tip": "Редактор подложки — чисто визуальный декор под планом: линии, прямоугольники, овалы и надписи, не реагирующие на клики", "space.glow_enabled": "Свечение источников света", "gs.glow_group": "Свечение источников света", "gs.glow_base": "Темнота дома", "gs.glow_light": "Цвет света по умолчанию / интенсивность", "gs.wall_group": "Стены", "gs.wall_fill": "Цвет заливки стен", "gs.glow_radius": "Радиус свечения", "gs.unit_m": "м", "gs.unit_ft": "фут", "marker.controls_label": "Управляет другими источниками света", "marker.controls_hint": "При действии «Переключить» клик разом переключает все добавленные здесь источники. Собственная сущность маркера управляется напрямую и сюда не добавляется; чтобы считать её светом, включите флаг ниже.", "marker.controls_filter": "Поиск ламп и выключателей…", "info.controls": "Управляет", "marker.glow_radius_label": "Радиус свечения", "marker.glow_radius.help": "Задаёт радиус свечения в метрах или футах; пустое значение использует радиус из общих настроек.", "marker.glow_radius.help.aria": "Подсказка: радиус свечения", "markup.wallthick": "Толщина", "markup.select": "Выбрать", "title.markup_wallthick": "Толщина — клик по стене задаёт толщину от 0 до 100 см.", "markup.hint_wallthick": "клик по стене · Esc закрывает без применения", "wallthick.field": "Толщина", "wallthick.unit_cm": "см", "wallthick.unit_in": "дюйм", "wallthick.apply_room": "Применить ко всем стенам комнаты", "markup.draw_wall_title": "Толщина каждого нового сегмента стены (0–100 см). Общие стены сохраняют существующее значение.", "room.queue_progress": "Комната {current} из {total}", "toast.wall_rooms_saved": "Создано комнат: {n}", "toast.wall_chain_saved": "Цепочка стен сохранена", "toast.wallthick_pick": "Кликните по стене", "toast.wallthick_set": "Толщина стены задана", "toast.wallthick_cleared": "Толщина стены убрана", "toast.physical_range": "Введите значение от {min} до {max} {unit}", "toast.zero_wall_opening_conflict": "Сначала удалите проём на этом участке стены.", "toast.zero_wall_ambiguous": "Не удалось однозначно выбрать участок стены. Уточните геометрию узла.", "toast.zero_wall_migration_blocked": "Пространство не преобразовано: {reason}. Данные не изменены.", "toast.physical_angle": "Введите угол поворота от 0° до 90°, не включая 90°", "toast.physical_limit": "В пространстве достигнут лимит объектов этого типа", "toast.geometry_unsafe": "Изменение отменено: геометрию стен нельзя безопасно построить.", "junction.limit_angle": "Слишком острый угол между стенами: {actual}°, минимум {limit}°.", "junction.limit_valence": "Слишком много стен в одном узле: {actual}, максимум {limit}.", "junction.limit_length": "Слишком короткий участок стены: {actual} см, минимум {limit} см.", "junction.limit_distance": "Стены и узлы слишком близко: {actual} см, минимум {limit} см.", "junction.limit_clearance": "Внутри комнаты не остаётся места: {actual} см², минимум {limit} см².", "junction.limit_check_failed": "Проверку стыков выполнить не удалось — изменение не сохранено", "toast.wall_model_migration_blocked": "Не удалось обновить модель стен: {reason}. План не изменён. Запустите «Оптимизировать планы»; если ошибка повторится, исправьте конфликтующую геометрию стен.", "toast.wall_model_client_outdated": "Обновите карточку и перезагрузите страницу перед редактированием плана.", "wall_model.reason.invalid-room": "некорректный контур комнаты", "wall_model.reason.zero-length": "отрезок стены нулевой длины", "wall_model.reason.third-owner": "стена принадлежит более чем двум комнатам", "wall_model.reason.duplicate-id": "конфликт идентификаторов стен", "wall_model.reason.thickness-conflict": "конфликт значений толщины стены", "wall_model.reason.opening-host": "проём нельзя однозначно привязать к стене", "toast.delete_room_pick": "Кликните внутри комнаты, которую нужно удалить", "toast.plan_snap_ambiguous": "Увеличьте масштаб, чтобы выбрать узел стены", "toast.wall_repair_ambiguous": "У контура несколько возможных соединений. Увеличьте масштаб и соедините стены явно.", "toast.wall_repair_too_large": "Разрыв больше 2 см. Соедините стены перед созданием комнаты.", "toast.wall_repair_changed": "Геометрия стен изменилась. Попробуйте создать комнату ещё раз.", "toast.opening_on_zero_wall": "Проёмы на стене нулевой толщины запрещены", "marker.from_ha_option": "Выбрать из списка HA", "marker.show_entities": "Показывать сущности", "marker.show_entities_tip": "Добавляет в список не только устройства, но и все их сущности", "marker.pick_ph": "Выберите устройство…", "room.open_area": "Открыть зону в HA", "view.volumetric": "Объёмный вид", "view.flat": "Плоский вид", "kiosk.title": "Размеры на этом экране", "kiosk.hint": "Хранится только на этом устройстве — у каждого настенного планшета или ТВ свои удобные размеры.", "kiosk.icon_scale": "Размер значков устройств", "kiosk.font_scale": "Размер текста карточек комнат", "editor.kiosk": "Режим настенного устройства (киоск)", "editor.cycle": "Автосмена пространств каждые N секунд (киоск, 0 = выкл)", "room.settings_title": "Настройки комнаты", "room.settings_section": "Настройки комнаты (переопределяют пространство)", "room.fill_label": "Заливка в ЭТОЙ комнате", "fill.inherit": "Как у пространства", "room.custom_fill_space": "Цвет пространства", "room.custom_fill_own": "Цвет комнаты", "room.temp_src_label": "Источник температуры", "room.hum_src_label": "Источник влажности", "room.src_average": "Средняя по датчикам комнаты (по умолчанию)", "room.src_pick": "Конкретное устройство или сущность HA", "room.src_ph": "Выберите источник…", "toast.room_updated": "Комната обновлена", "space.card_font": "Размер шрифта карточек комнат (всё пространство)", "room.sizes_section": "Размеры шрифтов", "room.name_scale": "Размер названия", "room.label_scale": "Размер подписей", "preview.room_name": "Гостиная", "toast.cfg_reload_failed": "Не удалось перечитать план с сервера: {err}", "toast.locale_load_failed": "Не удалось загрузить языковой пакет. До перезагрузки страницы используется английский.", "room.settings_short": "Настройки комнаты", "room.unnamed": "Комната без имени", "marker.use_climate_temp": "Учитывать температуру устройства в комнате", "marker.use_climate_temp_tip": "Добавляет current_temperature кондиционера или термостата в среднюю температуру комнаты. Внешний бейдж со значением настраивается отдельно ниже.", "marker.value_badge_title": "Бейдж со значением", "marker.value_badge.help": "Показывает одно выбранное значение рядом со значком. Не влияет на комнатные показатели, свет, Glow и действие по нажатию.", "marker.value_badge.help.aria": "Подсказка: бейдж со значением устройства", "marker.value_badge_enabled": "Отображать бейдж со значением", "marker.value_badge_source": "Значение", "marker.value_badge_source.help": "Выберите конкретное состояние, поддерживаемый атрибут или производное значение этого устройства.", "marker.value_badge_source.help.aria": "Подсказка: источник значения бейджа", "marker.value_badge_position": "Расположение", "marker.value_badge_position.help": "Выбранная сторона сохраняется постоянно и не переворачивается автоматически у края плана.", "marker.value_badge_position.help.aria": "Подсказка: расположение бейджа", "marker.value_badge_right": "Справа", "marker.value_badge_bottom": "Снизу", "marker.value_badge_left": "Слева", "marker.value_badge_top": "Сверху", "marker.value_badge_empty": "У этого устройства нет доступных значений", "marker.value_badge_static": "Статичный значок не показывает живые значения. Настройка сохранится.", "marker.value_badge_missing": "Источник недоступен", "marker.value_badge_missing_hint": "Сохранённый источник сейчас недоступен. Можно сохранить его, отключить бейдж или выбрать другой.", "marker.value_badge_duplicate": "То же значение уже показано внутри значка.", "marker.value_badge_state": "Состояние · {name}", "marker.value_badge_marker_state": "Состояние источника света · {name}", "marker.value_badge_lqi": "Качество Zigbee-сигнала (среднее)", "marker.value_badge_attr_current_temperature": "Текущая температура · {name}", "marker.value_badge_attr_temperature": "Целевая температура · {name}", "marker.value_badge_attr_current_humidity": "Текущая влажность · {name}", "marker.value_badge_attr_humidity": "Влажность · {name}", "marker.value_badge_attr_current_position": "Положение · {name}", "marker.value_badge_attr_percentage": "Скорость · {name}", "marker.value_badge_attr_brightness": "Яркость · {name}", "marker.value_badge_attr_volume_level": "Громкость · {name}", "marker.value_badge_attr_battery_level": "Заряд батареи · {name}", "marker.value_badge_attr_fan_speed": "Скорость вентилятора · {name}", "marker.value_source": "Источник значения", "marker.value_source.help": "Выберите, что заменит значок. Действие по нажатию не изменится.", "marker.value_source.help.aria": "Подсказка: источник значения внутри значка", "marker.value_source_auto": "Автоматически (как раньше)", "marker.value_source_missing_hint": "Сохранённый источник сейчас недоступен. До его восстановления или выбора другого значения внутри будет показано —.", "marker.light_role_label": "Является источником света", "marker.light_role.help": "Определяет, является ли сам маркер пространственным источником света. Привязанные выше лампы остаются независимыми источниками для комнаты.", "marker.light_role.help.aria": "Подсказка: является ли устройство источником света", "marker.light_role_auto_yes": "Автоматически (источник света)", "marker.light_role_auto_no": "Автоматически (не источник света)", "marker.light_role_always": "Всегда источник света", "marker.light_role_never": "Никогда не источник света", "marker.light_entity_label": "Ведущая сущность света", "marker.light_entity.help": "Для составного устройства выберите сущность, состояние, цвет и яркость которой представляют этот источник на плане. Автоматический вариант сохраняет совместимость со старыми планами.", "marker.light_entity.help.aria": "Подсказка: ведущая сущность света", "marker.light_entity_auto": "Автоматически ({entity})", "marker.light_entity_none": "нет управляемой сущности", "marker.light_entity_missing": "Сохранённая сущность {entity} недоступна. Временно используется {fallback}; выбор восстановится, если сущность вернётся.", "marker.toggle_entity_label": "Переключаемая сущность", "marker.toggle_entity.help": "Для составного устройства выберите собственную лампу или переключатель, которой управляет нажатие. Автоматический вариант сохраняет прежние правила цели и не зависит от ведущей сущности света.", "marker.toggle_entity.help.aria": "Подсказка: переключаемая сущность", "marker.toggle_entity_auto": "Автоматически ({entity})", "marker.toggle_entity_none": "нет собственной управляемой сущности", "marker.toggle_entity_missing": "Сохранённой сущности {entity} больше нет среди выбираемых каналов этого маркера. Временно используется {fallback}; выбор восстановится, если сущность вернётся.", "marker.glow_color_label": "Цвет и яркость свечения", "marker.glow_mode.help": "Используйте данные источника, задайте только цвет или зафиксируйте цвет и яркость. Минимум — 1%; чтобы отключить источник, выберите «Никогда».", "marker.glow_mode.help.aria": "Подсказка: цвет и яркость свечения", "marker.glow_mode_auto": "Из источника", "marker.glow_mode_color": "Задать цвет", "marker.glow_mode_fixed": "Задать цвет и яркость", "marker.glow_color": "Цвет свечения", "marker.glow_brightness": "Яркость", "marker.glow_disabled_never": "Настройки свечения недоступны: маркер явно исключён из источников света.", "marker.glow_disabled_auto": "В автоматическом режиме у этого маркера не найден пространственный источник света.", "marker.glow_disabled_no_entity": "Для пространственного источника нет активной управляемой сущности Home Assistant.", "marker.glow_passive_hint": "У источника нет собственных данных Home Assistant. Задайте цвет и яркость вручную; радиус остаётся доступным.", "marker.control_broken": "Сохранённый источник отсутствует или больше не отмечен как источник света", "marker.control_missing_label": "Отсутствующий источник на плане", "marker.control_passive": "пассивный источник", "toast.marker_control_cycle": "Такая связь создаст циклическую цепочку управления светом.", "toast.marker_binding_required": "Сначала выберите устройство Home Assistant, затем добавьте управляемый источник света.", "confirm.unlock": "Открыть замок «{name}»?", "toast.files_migrate_failed": "Не удалось перенести вложения к новой привязке, ссылки остались на старые файлы: {err}", "space.pick_saved": "Уже загруженные", "space.pick_saved_hint": "Планы, сохранённые на сервере, включая отцеплённые ранее", "space.no_saved": "На сервере пока нет сохранённых планов.", "space.loading": "Загрузка…", "space.used_by": "используется: {list}", "space.in_use": "План используется пространством — сначала отцепите его", "btn.use": "Выбрать", "confirm.delete_plan": "Удалить файл плана «{name}» с сервера? Действие необратимо.", "toast.plans_list_failed": "Не удалось получить список планов: {err}", "toast.plan_delete_failed": "Не удалось удалить план: {err}", "marker.hide": "Скрыть", "marker.hide_tip": "Устройство исчезнет с плана после сохранения, но продолжит участвовать в расчёте сигнала комнаты. Вернуть его можно через каталог «Устройства» в редакторе устройств.", "marker.show": "Показать", "marker.show_tip": "Устройство снова появится на плане после сохранения.", "marker.hidden_ghost": "Устройство скрыто пользователем", "marker.ha_disabled_device": "Устройство деактивировано в Home Assistant и скрыто с плана.", "marker.ha_disabled_entity": "Сущность деактивирована в Home Assistant и скрыта с плана.", "marker.ha_disabled_all_entities": "У устройства нет активных сущностей Home Assistant, поэтому оно скрыто с плана.", "marker.ha_registry_limited": "Полный реестр Home Assistant недоступен этому пользователю. Неподтверждённый объект временно нельзя показывать или использовать.", "marker.delete_tip": "Полностью удалить устройство с плана и из всех расчётов. Позже его можно добавить заново.", "tap.run": "Запустить автоматизацию/скрипт/сцену", "marker.run_target_label": "Что запускать", "marker.run_search_ph": "Поиск: автоматизация, скрипт или сцена…", "marker.run_target_gone": "Цель {id} не найдена — выберите заново", "marker.tap_confirm": "Спрашивать подтверждение", "marker.tap_confirm_tip": "Перед выполнением показать диалог подтверждения — защита от случайных нажатий.", "marker.toggle_hint_single": "Цель: {name} ({id}).", "marker.virtual_light_target": "Виртуальный свет: {name}.", "marker.virtual_light_current": "Ручное состояние: {state} → {effect}.", "marker.virtual_light_state_on": "включён", "marker.virtual_light_state_off": "выключен", "marker.toggle_hint_group": "Переключатся источники ({count}): {names}.", "marker.toggle_hint_current": "Сейчас: {state} → {effect}.", "marker.toggle_hint_group_current": "Сейчас включено {on} из {count} → {effect}.", "marker.toggle_hint_skipped": "Не будут затронуты ({count}): {targets}.", "marker.toggle_effect_turn_on": "включится", "marker.toggle_effect_turn_off": "выключится", "marker.toggle_effect_open": "откроется", "marker.toggle_effect_close": "закроется", "marker.toggle_effect_stop": "остановится", "marker.toggle_effect_toggle": "состояние переключится", "marker.toggle_skip_missing": "не найдено", "marker.toggle_skip_ha_disabled": "деактивировано в HA", "marker.toggle_skip_unavailable": "недоступно", "marker.toggle_skip_unsupported": "переключение не поддерживается", "marker.toggle_skip_secure": "заблокировано из соображений безопасности", "marker.toggle_none_no_binding": "У устройства нет привязки, состояние переключать нечем. По нажатию ничего не произойдёт.", "marker.toggle_none_no_actionable_entity": "У устройства нет состояния, которое можно переключить. По нажатию ничего не произойдёт.", "marker.toggle_none_configured_targets_missing": "Настроенные цели сейчас недоступны. Собственная сущность устройства не будет подставлена вместо них.", "marker.toggle_none_ha_disabled": "Цель деактивирована в Home Assistant и не может использоваться на плане.", "marker.toggle_none_unavailable": "Цель сейчас недоступна. По нажатию ничего не произойдёт.", "marker.toggle_none_unsupported": "Для этой сущности Home Assistant не предоставляет безопасного переключения. По нажатию ничего не произойдёт.", "marker.toggle_none_secure": "Переключение замков, сигнализации и защитных ворот с плана заблокировано из соображений безопасности.", "run.automation": "автоматизация", "run.script": "скрипт", "run.scene": "сцена", "confirm.tap_run": "Запустить «{name}»?", "confirm.tap_toggle": "Переключить «{name}»?", "confirm.current_state": "Текущее состояние: {state}", "confirm.expected_state": "После переключения: {state}", "confirm.group_current": "включено {on} из {total}", "confirm.group_all_on": "все включены", "confirm.group_all_off": "все выключены", "confirm.unavailable_targets": "Недоступно: {count}", "confirm.expected_by_ha": "Состояние определит Home Assistant", "confirm.state_on": "Включено", "confirm.state_off": "Выключено", "confirm.state_open": "Открыто", "confirm.state_closed": "Закрыто", "confirm.state_opening": "Открывается", "confirm.state_closing": "Закрывается", "confirm.state_stopped": "Остановлено", "confirm.state_unknown": "Неизвестно", "toast.run_started": "Запущено: {name}", "toast.run_target_missing": "Цель запуска не найдена — проверьте настройки устройства", "toast.run_target_required": "Выберите автоматизацию, скрипт или сцену", "toast.tap_target_changed": "Цель действия изменилась. Повторите попытку.", "toast.virtual_light_toggle_failed": "Не удалось переключить виртуальный свет: {err}", "toast.value_badge_source_required": "Выберите значение для бейджа", "btn.run": "Выполнить", "vac.section": "Робот-пылесос: живая позиция", "vac.autocal": "Настроить автоматически", "vac.live": "Живая позиция на плане", "vac.trail": "Показывать путь робота", "vac.cal_maps": "Откалиброваны карты: {maps}", "vac.autocal_no_rooms": "Интеграция не отдаёт список комнат — откройте «Подогнать вручную»", "vac.autocal_no_match": "Не совпали имена комнат (нужно ≥3 общих) — откройте «Подогнать вручную»", "vac.autocal_done": "Готово: привязка по {rooms} комнатам. Запустите уборку и проверьте", "vac.cal_need_pos": "Робот сейчас не отдаёт координаты — запустите уборку и поставьте на паузу", "vac.cal_done": "Калибровка сохранена. Запустите уборку и проверьте", "vac.cal_cancelled": "Калибровка отменена", "vac.fit": "Подогнать вручную", "vac.fit_hint": "Перетащите карту робота на место, растяните за уголки", "vac.fit_rotate": "Повернуть 90°", "vac.fit_mirror": "Отразить", "vac.trail_never": "Не показывать никогда", "vac.trail_cleaning": "Во время уборки", "vac.trail_always": "Показывать всегда", "gs.bg_group": "Фон сцены", "gs.bg_color": "Цвет фона вокруг плана", "gs.bg_default": "Как в теме", "gs.bg_theme": "по умолчанию — из темы", "gs.bg_mode": "Фон плана", "gs.bg_static": "Статичный цвет", "gs.bg_daynight": "Следует за Солнцем", "gs.bg_daynight_hint": "Фон проходит рассвет, день, закат и ночь по данным sun.sun, а при их недоступности — по локальным часам. Компас для фона не нужен.", "gs.sun_group": "Солнце", "gs.sun_missing": "Сущность sun.sun не найдена — фон следует локальным часам, а оконные лучи недоступны.", "gs.north": "Север на плане", "gs.north_ph": "не задан", "gs.north_hint": "Север нужен только для оконных лучей (шаг 1°, с Shift 15°); солнечный фон работает без него.", "gs.north_clear": "Сбросить", "gs.north_letter": "С", "gs.sun_rays": "Солнце в окнах", "gs.about_group": "О карточке", "gs.about_version": "Houseplan Card v{v}", "gs.about_github": "GitHub · документация и issues", "gs.about_telegram": "Чат в Telegram", "space.bg_color": "Цвет фона вокруг плана", "space.bg_inherit": "Наследовать общий", "space.bg_inherited": "наследуется из общих настроек", "space.bg_mode": "Фон плана", "space.north": "Север на плане (переопределение)", "space.north_inherited": "наследуется: {v}", "space.sun_rays": "Солнце в окнах", "space.sun_inherit": "Наследовать общий", "space.sun_on": "Вкл", "space.sun_off": "Выкл", "canvas.far_objects": "Объектов далеко от плана: {n}", "canvas.show_far": "Показать", "canvas.home_tip": "План там — нажмите, чтобы вписать", "gs.grid_group": "Обслуживание планов", "gs.grid_hint": "Обновляет модели данных, выравнивает элементы по сетке и объединяет лишние фрагменты стен. Перед записью будет показан точный отчёт.", "gs.align_all": "Оптимизировать планы", "gs.align_title": "Оптимизировать планы", "gs.align_none": "Все планы уже используют актуальную и оптимальную модель данных.", "gs.optimize_no_automatic_changes": "Автоматических изменений нет. Проверьте пункты ниже.", "gs.align_count": "Сдвинется элементов: {n} из {total}, максимум на {cm} см.", "gs.align_where": "Наибольший сдвиг — в пространстве «{s}».", "gs.align_turned": "Проёмов с исправлением угла: {n}.", "gs.align_removed_drafts": "Схлопнувшиеся на сетке некорректные контуры удалены: {n}.", "gs.optimize_redundant_drafts": "Сохранённые цепочки стен, полностью скрытые стенами комнат, удалены: {n}.", "gs.align_preflight_failed": "Не удалось безопасно проверить геометрию следующих пространств: {spaces}{more}.", "gs.align_preflight_hint": "Планы не изменены. Скопируйте диагностику кнопкой ниже и приложите её к отчёту об ошибке вместе с экспортом пространства.", "gs.preflight_reason_prepare-exception": "Не удалось подготовить геометрию пространства (исключение при сборке модели)", "gs.preflight_reason_wall-null": "Тело стен не построилось (объединение вернуло пустоту)", "gs.preflight_reason_wall-degraded-extra": "Тело стен деградировало с лишней геометрией", "gs.preflight_reason_wall-failed-core": "Ядро тела стен не собралось", "gs.preflight_reason_wall-exception": "Построение стен упало с исключением", "gs.preflight_reason_floor-null": "Контур пола не построился", "gs.preflight_reason_floor-exception": "Построение пола упало с исключением", "gs.preflight_copy": "Скопировать диагностику", "gs.preflight_copied": "Диагностика скопирована", "gs.preflight_update_hint": "Версии карточки и интеграции различаются — обновите House Plan и повторите.", "gs.align_preflight_space": "Пространство {n}", "gs.align_preflight_more": " и ещё {n}", "gs.optimize_changes": "Миграций модели: {m}; обновлено пространств: {c}; устранён шум координат: {p}; объединено отрезков реальных стен: {w}; объединено отрезков стен нулевой толщины: {s}; независимых: {i}.", "gs.zero_walls_migrated": "Преобразовано виртуальных участков: {n}.", "gs.wall_segments_migrated": "Стабилизировано сегментов стен: {n}.", "gs.optimize_lattice_summary": "Канонизировано шумовых значений координат: {n}; максимальный сдвиг: {cm} см.", "gs.optimize_lattice_space": "{space}: канонизировано значений координат: {n}; оставлено значений вне сетки: {far}.", "gs.optimize_coincident_partitions": "Скрытые участки независимых стен поглощены стенами комнат: {n}.", "gs.optimize_openings_rehosted": "Проёмы перепривязаны к стенам комнат: {n}.", "gs.optimize_walls_straightened": "Выпрямлено стен: {n}; максимальное перемещение: {cm} см.", "gs.optimize_walls_straightened_where": "Максимальная правка стены: {s}.", "gs.optimize_walls_straighten_skipped": "Оставлено почти осевых стен, которые нельзя безопасно выпрямить: {n}.", "gs.optimize_glow_migration": "Старый Glow: пространств — {spaces} → без заливки данных + независимый Glow; комнат — {rooms} → наследуемая заливка + независимый Glow.", "gs.optimize_references": "Исправлено ссылок: пространства — {spaces}; комнаты — {rooms}; позиции — {positions}; устройств отвязано от отсутствующих пространств — {detached}.", "gs.optimize_reference_more": ", и ещё {n}", "gs.optimize_orphans_removed": "Убрано забытых записей: {total} — подписи комнат: {rooms}; устройства: {devices}; групповые метки: {groups}. Все они принадлежали пространствам, удалённым ранее.", "gs.optimize_live_positions": "Старые позиции в удалённых пространствах принадлежат существующим объектам: {n}{names}. Они будут сохранены.", "gs.optimize_live_positions_remove": "Старые позиции в удалённых пространствах принадлежат существующим объектам: {n}{names}. Они выбраны для удаления.", "gs.optimize_live_names": ": {names}{more}", "gs.optimize_live_remove": "Убрать старые позиции", "gs.optimize_live_keep": "Сохранить старые позиции", "gs.optimize_live_selected": "Старые позиции будут убраны после применения оптимизации.", "gs.optimize_unverified": "Не удалось безопасно проверить позиций: {n}. Они оставлены без изменений.", "gs.optimize_registry_limited": "Для безопасной проверки нужен полный доступ администратора к реестрам Home Assistant.", "gs.optimize_vacuum_warning": "Сопоставления комнат пылесоса требуют проверки: {n}.", "gs.optimize_details": "Подробности", "gs.optimize_details_more": "И ещё записей: {n}.", "gs.optimize_detail_removed": "будет удалено", "gs.optimize_detail_live": "будет сохранено", "gs.optimize_detail_unverified": "не проверено", "gs.optimize_detail_room_label": "подпись комнаты", "gs.optimize_detail_device": "устройство", "gs.optimize_detail_group": "групповая метка", "gs.optimize_detail_unknown": "неизвестный владелец", "gs.optimize_detail_item": "{status}: {kind} {id}; прежнее пространство {space}", "gs.align_warn": "Элементы, намеренно поставленные между узлами, будут сдвинуты. После операции доступна одна отмена — только до следующего изменения плана.", "gs.align_run": "Оптимизировать", "gs.align_done": "Планы оптимизированы: сдвинуто элементов — {n}, обслужено записей — {m}, исправлено ссылок — {r}", "gs.optimize_undo": "Отменить последнюю оптимизацию", "gs.optimize_undone": "Последняя оптимизация отменена", "decor.furniture": "Мебель", "furn.title": "Библиотека мебели", "furn.symbol": "Символ", "furn.group_furniture": "Мебель", "furn.group_appliance": "Техника", "furn.group_sanitary": "Сантехника", "furn.group_other": "Прочее", "furn.width": "Ширина", "furn.depth": "Глубина", "furn.back_to_categories": "Все категории", "furn.pick_hint": "Выберите категорию, затем символ.", "furn.place_hint": "Кликните по плану — предмет встанет к ближайшей стене. Shift — свободно.", "furn.cat_air_conditioner": "Кондиционеры", "furn.cat_armchair": "Кресла", "furn.cat_bathtub": "Ванны", "furn.cat_bed": "Кровати", "furn.cat_bidet": "Биде", "furn.cat_boiler": "Бойлеры", "furn.cat_chair": "Стулья", "furn.cat_coffee_table": "Журнальные столы", "furn.cat_cooktop": "Варочные панели", "furn.cat_dining_table": "Обеденные столы", "furn.cat_dishwasher": "Посудомоечные машины", "furn.cat_dryer": "Сушильные машины", "furn.cat_fireplace": "Камины", "furn.cat_fridge": "Холодильники", "furn.cat_kitchen_cabinet": "Кухонные шкафы", "furn.cat_kitchen_sink": "Кухонные мойки", "furn.cat_nightstand": "Тумбы", "furn.cat_plant": "Растения", "furn.cat_rug": "Ковры", "furn.cat_shelving": "Стеллажи", "furn.cat_shower": "Душевые", "furn.cat_sink": "Раковины", "furn.cat_sofa": "Диваны", "furn.cat_stairs": "Лестницы", "furn.cat_toilet": "Унитазы", "furn.cat_tv": "Телевизоры", "furn.cat_wardrobe": "Шкафы", "furn.cat_washer": "Стиральные машины", "furn.cat_work_table": "Рабочие столы", "furn.sym_sofa": "Диван двухместный", "furn.sym_sofa_three_seat": "Диван трёхместный", "furn.sym_sofa_corner_right": "Угловой диван, правый", "furn.sym_armchair": "Кресло мягкое", "furn.sym_armchair_office": "Кресло офисное", "furn.sym_coffee_table": "Журнальный стол, прямоугольный", "furn.sym_coffee_table_round": "Журнальный стол, круглый", "furn.sym_coffee_table_oval": "Журнальный стол, овальный", "furn.sym_coffee_table_rounded": "Журнальный стол, скруглённый", "furn.sym_table_dining": "Обеденный стол, прямоугольный", "furn.sym_table_round": "Круглый стол", "furn.sym_table_dining_oval": "Обеденный стол, овальный", "furn.sym_table_dining_rounded": "Обеденный стол, скруглённый", "furn.sym_chair": "Стул", "furn.sym_chair_bar": "Барный стул", "furn.sym_desk": "Рабочий стол, прямоугольный", "furn.sym_desk_corner": "Рабочий стол, угловой", "furn.sym_bed_double": "Двуспальная кровать", "furn.sym_bed_single": "Односпальная кровать", "furn.sym_nightstand": "Тумба прикроватная", "furn.sym_cabinet_tv": "Тумба под телевизор", "furn.sym_cabinet_shoe": "Тумба для обуви", "furn.sym_cabinet_sink": "Тумба под раковину", "furn.sym_wardrobe": "Шкаф гардеробный", "furn.sym_bookshelf": "Шкаф книжный", "furn.sym_wall_unit": "Шкаф-стенка", "furn.sym_kitchen_floor": "Кухонный напольный модуль", "furn.sym_kitchen_floor_corner": "Кухонный напольный угловой модуль", "furn.sym_kitchen_wall": "Кухонный навесной модуль", "furn.sym_kitchen_wall_corner": "Кухонный навесной угловой модуль", "furn.sym_shelf_floor": "Стеллаж напольный", "furn.sym_shelf_wall": "Полка настенная", "furn.sym_fridge": "Холодильник", "furn.sym_stove": "Варочная панель, 4 конфорки", "furn.sym_cooktop_two": "Варочная панель, 2 конфорки", "furn.sym_dishwasher": "Посудомоечная машина", "furn.sym_washer": "Стиральная машина", "furn.sym_dryer": "Сушильная машина", "furn.sym_tv": "Телевизор на подставке", "furn.sym_tv_wall": "Телевизор на кронштейне", "furn.sym_ac": "Кондиционер", "furn.sym_water_heater": "Бойлер", "furn.sym_toilet": "Унитаз напольный", "furn.sym_toilet_built_in": "Унитаз встроенный", "furn.sym_bathtub": "Ванна прямоугольная", "furn.sym_bathtub_corner": "Ванна угловая", "furn.sym_shower": "Душ", "furn.sym_sink": "Раковина", "furn.sym_kitchen_sink": "Кухонная мойка одинарная", "furn.sym_kitchen_sink_double": "Кухонная мойка двойная", "furn.sym_bidet": "Биде напольное", "furn.sym_bidet_built_in": "Биде встроенное", "furn.sym_stairs": "Лестница", "furn.sym_fireplace": "Камин", "furn.sym_plant": "Растение", "furn.sym_rug": "Ковёр", "common.yes": "Да", "common.no": "Нет", "vac.diag_source": "Источник", "vac.diag_platform": "Интеграция", "vac.diag_status": "Статус", "vac.diag_position": "Позиция", "vac.diag_rooms": "Комнаты", "vac.diag_rooms_value": "{total} · совпало имён: {matched} · {readiness}", "vac.autocal_ready": "автокалибровка доступна", "vac.autocal_not_ready": "нужно 3 совпавших имени", "vac.diag_path": "Путь интеграции", "vac.diag_map": "ID карты", "vac.source_none": "не выбран", "vac.source_status_ok": "Готов", "vac.source_status_missing": "Не найден", "vac.source_status_disabled": "Деактивирован в Home Assistant", "vac.source_status_unavailable": "Недоступен", "vac.source_status_unverified": "Нельзя проверить с текущими правами", "vac.source_status_unsupported": "Нет данных позиции", "vac.source_status_none": "Нет источника", "vac.source_banner_missing": "Сохранённый источник больше не существует. Он не заменён автоматически: выберите другой или восстановите его в Home Assistant.", "vac.source_banner_disabled": "Сохранённый источник деактивирован в Home Assistant. Активируйте его там или выберите другой.", "vac.source_banner_unverified": "Текущих прав Home Assistant недостаточно для проверки источника. Привязка сохранена и не будет заменена автоматически.", "vac.choose_source": "Выбрать источник", "vac.source_auto": "Автоматически", "vac.source_auto_hint": "Использовать совместимую сущность этого устройства", "vac.all_cameras": "Все камеры", "vac.all_cameras_warn": "Камера может не отдавать данные робота. Выбирайте её только если это карта вашего пылесоса.", "vac.all_cameras_empty": "Других сущностей камеры не найдено.", "vac.platform_unknown": "интеграция неизвестна", "vac.cap_position": "позиция", "vac.cap_rooms_short": "комнаты", "vac.cap_path": "путь", "vac.cap_map": "ID карты", "vac.cap_none": "данные робота не обнаружены", "vac.xcme_hint": "Включите атрибуты Xiaomi Cloud Map Extractor:", "vac.documentation": "Документация", "vac.residual_title": "Проверьте автокалибровку", "vac.residual_message": "Совпавшие комнаты расходятся максимум на {error}. Примените приблизительную калибровку, подгоните её вручную либо отмените без изменения сохранённых настроек.", "vac.apply_proposal": "Применить", "gs.backup_group": "Резервная копия и перенос", "gs.backup_hint": "Скачайте переносимую JSON-копию или проверьте и импортируйте копию, созданную House Plan.", "backup.export_open": "Экспорт", "backup.import_open": "Импорт", "backup.export_title": "Экспорт House Plan", "backup.import_title": "Импорт House Plan", "backup.export_hint": "Выберите, должна ли копия содержать всю конфигурацию House Plan или только текущее пространство.", "backup.full": "Полная копия", "backup.current_space": "Текущее пространство", "backup.current_space_title": "Текущее пространство: {title}", "backup.no_current_space": "Нет текущего пространства", "backup.plan_only": "Только планировка", "backup.plan_only_hint": "Сохранить комнаты, стены, проёмы, декор и позиции подписей комнат без устройств и привязок Home Assistant.", "backup.plan_only_preview": "Файл содержит только планировку", "backup.privacy_warning": "Архив сохраняет названия, идентификаторы Home Assistant и точные координаты. Внутренние планы и вложения указываются ссылками, но не вкладываются; текущие состояния и маршруты пылесосов не включаются.", "backup.download": "Скачать JSON", "backup.export_done": "Резервная копия скачана", "backup.reading": "Проверяем резервную копию…", "backup.revalidated": "После предпросмотра план изменился. Сводка обновлена — проверьте её и подтвердите ещё раз.", "backup.error.unauthorized": "У вас нет прав на экспорт или импорт этого плана.", "backup.error.not_ready": "House Plan ещё не готов. Повторите попытку через несколько секунд.", "backup.error.too_large": "Размер резервной копии превышает 8 МиБ.", "backup.error.invalid_json": "Выбранный файл не является корректным JSON.", "backup.error.invalid_format": "Выбранный файл не является резервной копией House Plan.", "backup.error.unsupported_export_version": "Эта версия формата резервной копии не поддерживается установленной версией.", "backup.error.future_model": "Резервная копия создана в более новой версии модели данных House Plan.", "backup.error.invalid_config": "Резервная копия содержит некорректную конфигурацию House Plan.", "backup.error.wall_model_migration_blocked": "Не удалось безопасно обновить модель стен из резервной копии. Сначала оптимизируйте исходный план и повторите экспорт.", "backup.error.invalid_layout": "Резервная копия содержит некорректные позиции объектов.", "backup.error.invalid_content": "Резервная копия содержит некорректные или несогласованные ссылки на файлы.", "backup.error.space_not_found": "Выбранное пространство больше не существует.", "backup.error.capacity_exceeded": "Добавление этой копии превысит ограничения размера плана.", "backup.error.preview_expired": "Время предпросмотра истекло. Выберите файл резервной копии заново.", "backup.error.preview_owner_mismatch": "Этот предпросмотр принадлежит другому пользователю Home Assistant.", "backup.error.conflict": "После предпросмотра план изменился. Проверьте обновлённую сводку.", "backup.error.content_confirmation_required": "Подтвердите отсоединение недоступных локальных файлов.", "backup.error.commit_failed": "Не удалось безопасно применить копию. Предыдущий план восстановлен или ожидает восстановления.", "backup.error.missing_plan": "После предпросмотра исчез связанный файл плана. Проверьте копию ещё раз.", "backup.error.missing_content": "После предпросмотра исчез связанный локальный файл. Проверьте копию ещё раз.", "backup.error.marker_control_missing": "В резервной копии отсутствует связанный источник света на плане.", "backup.error.marker_control_not_light": "Связанная цель больше не отмечена как источник света.", "backup.error.marker_control_self": "Источник света не может управлять самим собой.", "backup.error.marker_control_cycle": "Резервная копия содержит циклическую цепочку управления светом.", "backup.error.duplicate_marker_control": "Резервная копия содержит повторяющуюся связь с источником света.", "backup.error.no_backup": "Нет снимка импорта или оптимизации, который можно восстановить.", "backup.same_source": "Создано на этом экземпляре Home Assistant", "backup.foreign_source": "Создано на другом экземпляре Home Assistant", "backup.created": "Создано: {value}", "backup.versions": "Карточка {card}; интеграция {integration}; модель данных {model}", "backup.count_spaces": "Пространств: {n}", "backup.count_rooms": "Комнат: {n}", "backup.count_walls": "Стен: {n}", "backup.count_openings": "Проёмов: {n}", "backup.count_decor": "Объектов декора: {n}", "backup.count_markers": "Устройств: {n}", "backup.count_layout": "Позиций: {n}", "backup.bindings": "Привязки — устройства: {device}, сущности: {entity}, виртуальные: {virtual}; позиций без пространства: {legacy}", "backup.binding_status": "Статус на целевом экземпляре — активных: {active}, деактивированных: {disabled}, отсутствующих: {missing}", "backup.missing_areas": "На целевом экземпляре отсутствуют зоны: {areas}", "backup.dropped_marker_links": "Связи с источниками света вне переносимого пространства пропущены: {n}.", "backup.repaired_target_refs": "Существующих ссылок восстановлено этим импортом: {n}.", "backup.preserved_unresolved_refs": "Неоднозначные ссылки сохранены без изменений: {n}.", "backup.preserved_unresolved_hint": "House Plan ничего не угадывал и не удалял. После импорта запустите «Оптимизировать планы», чтобы проверить оставшиеся ссылки.", "backup.import_details": "Подробности восстановления ссылок", "backup.import_detail.incoming_remapped": "Ссылок обновлено внутри импортируемой копии: {n}", "backup.import_detail.target_repaired": "Существующих ссылок восстановлено: {n}", "backup.import_detail.preserved_unresolved": "Неразрешимых ссылок сохранено: {n}", "backup.import_detail.collisions": "Конфликтов назначения безопасно сохранено: {n}", "backup.import_detail.dropped_links": "Входящих связей пропущено по правилам переноса: {n}", "backup.import_detail.bounded_lineages": "Чрезмерно вложенных идентификаторов ограничено: {n}", "backup.replace_warning": "Текущая конфигурация и расположение будут заменены. Загруженные файлы не удаляются. Одну отмену можно выполнить до следующего изменения плана.", "backup.foreign_bookkeeping": "Служебные списки известных и новых устройств другого экземпляра импортированы не будут.", "backup.final_name": "Название нового пространства", "backup.target_settings": "Глобальные настройки целевого экземпляра не изменятся.", "backup.duplicates": "Уже существующих привязок: {n}", "backup.skip": "Пропустить повторяющиеся устройства", "backup.virtual_copy": "Добавить безопасные статичные виртуальные копии", "backup.content": "Связанное содержимое", "backup.content_available": "доступно локально", "backup.content_external": "внешняя ссылка", "backup.content_detach_required": "будет отвязано", "backup.confirm_detach": "Я понимаю, что недоступные внутренние планы и вложения будут отвязаны от импортируемой конфигурации.", "backup.replace": "Заменить", "backup.add": "Добавить пространство", "backup.space_done": "Пространство импортировано: комнат — {rooms}, устройств — {markers}, существующих ссылок восстановлено — {refs}", "backup.full_done": "Копия восстановлена: пространств — {spaces}, комнат — {rooms}, устройств — {markers}", "backup.undo_import": "Отменить последний полный импорт", "backup.import_undone": "Полный импорт отменён", "backdrop.large_title": "Большое изображение", "backdrop.large_body": "Изображение {w}×{h} ({fileMb} МБ), для показа потребуется около {decodedMb} МБ памяти. На планшетах это может привести к падению страницы.", "backdrop.unknown_body": "Не удалось прочитать размеры изображения — файл может быть повреждён. Продолжение может привести к падению страницы на планшете.", "backdrop.use_downscaled": "Загрузить уменьшенную копию", "backdrop.reducing": "Уменьшаем…", "backdrop.keep_original": "Оставить оригинал", "backdrop.too_large_title": "Изображение слишком большое", "backdrop.too_large_body": "Изображение превышает возможности браузера ({w}×{h}, предел {limit} px по стороне). Уменьшите его в редакторе на компьютере и загрузите снова.", "backdrop.downscale_failed": "Не удалось создать уменьшенную копию. Текущий план не изменён." }