Поле «Стоимость участка» (ConceptProgramForm §7 + ConceptParamsForm /concept)
имело step={1_000_000}. Сид из кадастровой стоимости (напр. 74 766.08 ₽, не
кратно шагу) → HTML5 stepMismatch → форма :invalid → браузер МОЛЧА блокирует
submit (submit-событие не выстреливает) → кнопка «Рассчитать концепцию» не
работает на ЛЮБОМ участке с кадастровой стоимостью. Авто-расчёт §7 маскировал
баг — он зовёт движок напрямую, минуя валидацию формы.
Тот же латентный stepMismatch на floor_height (step 0.1) и пятне (step 1) —
clampFloat допускает дробные → step="any" и там.
Подтверждено на проде (DOM-патч step="any" → checkValidity()=true → submit
проходит → GFA 15 876→30 240, FAR 0.24→0.45 под изменённое пятно).