diff --git a/client/src/pages/TaskDetail.tsx b/client/src/pages/TaskDetail.tsx index f1f4838..4b7d33c 100644 --- a/client/src/pages/TaskDetail.tsx +++ b/client/src/pages/TaskDetail.tsx @@ -1306,7 +1306,14 @@ function FieldValueRow({ const isContractNumberField = field.type === 'contract-number'; const isDateWithProlongation = (field.type === 'date' || field.type === 'datetime') && field.autoProlongation; const needsWideOverlay = isContractNumberField || isDateWithProlongation; - return canShowInlineEditor ? ( + // Блочные редакторы (geo ~90px, contact ~300px) не помещаются в строгий + // inset-0 оверлей поверх однострочного read-view: контент переполняет + // рамку и наезжает на соседние поля. Рендерим их в потоке — строка + // растёт до высоты редактора вместо наложения. + const isBlockEditor = field.type === 'geo' || field.type === 'contact'; + if (!canShowInlineEditor) return readViewNode; + if (isBlockEditor) return editorNode; + return ( - ) : readViewNode; + ); })()} {isFieldPending && !isGlobalEditMode && (