Создай React-приложение "Бухгалтерия ЗП" — полная копия Excel-таблицы расчёта зарплаты с полем Formula как в Excel.

## Структура таблицы (как в приложенном файле):

### Заголовок:
- Дата: 3.26 (поле ввода)
- Общ. оф ЗП: 120959.48 (формула =СУММ(К_выдаче))
- Число рабочих дней в месяце: 15 (поле ввода)

### Колонки таблицы:
| № | ФИО | Отр | Карта | Больнич | База | Допы | Плюс | Минус | К выдаче НА РУКИ | 5000 | 1000 | 500 | 100 |

### Формулы для каждой колонки:

1. **Отр (Отработано дней)**:
   =ЕСЛИ(B3>0; $B$1; 0)  // B1 = число рабочих дней

2. **Карта (ЗП на карту)**:
   =ЕСЛИ(Отр>0; Оклад*(Отр/$B$1)*0.87; 0)
   // Оклад берётся из отдельной справочника/поля сотрудника

3. **База**:
   =Карта+Больнич+Допы

4. **К выдаче НА РУКИ**:
   =База+Плюс−Минус

5. **Купюры (каскадный расчёт)**:
   - 5000: =ЦЕЛОЕ(К_выдаче/5000)
   - Остаток1: =К_выдаче−(5000*Кол5000)
   - 1000: =ЦЕЛОЕ(Остаток1/1000)
   - Остаток2: =Остаток1−(1000*Кол1000)
   - 500: =ЦЕЛОЕ(Остаток2/500)
   - Остаток3: =Остаток2−(500*Кол500)
   - 100: =ЦЕЛОЕ(Остаток3/100)

6. **Итого купюр (проверка)**:
   =СУММ(К_выдаче) — должно совпадать с Общ. оф ЗП

### Промежуточные строки:
- Строка "ПРОВЕРКА": =СУММ(К_выдаче)
- Строка "Итого купюр": =СУММ(по каждому номиналу)

## Требования к полю Formula:

### Движки (как в NocoBase):
1. **Formula.js** — Excel-функции:
   - СУММ(), ЕСЛИ(), И(), ИЛИ(), НЕ()
   - ЦЕЛОЕ(), ОКРУГЛ(), МАКС(), МИН()
   - СРЗНАЧ(), СЧЁТ(), СЧЁТЕСЛИ()
   - ВПР(), ГПР() (если есть справочники)
   - СЕГОДНЯ(), ТДАТА()

2. **Math.js** — математические выражения:
   - +, −, *, /, ^, %
   - sqrt(), abs(), round(), floor(), ceil()
   - Переменные как имена полей

3. **Шаблон строки** — для текстовых полей:
   - {{ФИО}} — {{Должность}}

### Синтаксис Formula.js:
- Все функции в ВЕРХНЕМ регистре (как в Excel)
- Аргументы через точку с запятой `;` (русский Excel) или запятую `,` (английский)
- Ссылки на ячейки: A1, B2, $A$1 (абсолютная), A$1 (смешанная)
- Диапазоны: A1:A10, СУММ(B3:B10)
- Именованные переменные: =Оклад*0.87

### Фичи поля Formula:
- Двойной клик — редактирование формулы
- Enter — подтверждение
- Escape — отмена
- Подсветка ячеек при редактировании (цветные рамки как в Excel)
- Автодополнение функций (выпадающий список при вводе =)
- Подсказка синтаксиса функции
- Ошибки: #ЗНАЧ!, #ДЕЛ/0!, #Н/Д, #ИМЯ?, #ССЫЛКА!

## UI таблицы:
- Фиксированная шапка (заголовок + названия колонок)
- Фиксированные колонки (№, ФИО) при горизонтальной прокрутке
- Цветовое оформление:
  - Заголовок: серый фон
  - Формулы: жёлтый фон (или подсветка)
  - Итоги: жирный шрифт
  - Ошибки: красный фон
- Изменение ширины колонок (drag)
- Добавление/удаление строк
- Копирование формул (растягивание как в Excel — drag за уголок)

## Технический стек:
- React 18 + TypeScript
- Formula.js: библиотека formulajs (npm install @formulajs/formulajs)
- Math.js: библиотека mathjs (npm install mathjs)
- Таблица: react-table или ручная реализация на div/grid
- Состояние: Zustand или Redux Toolkit

## Тестовые данные (из файла):
const employees = [
  { id: 1, ФИО: "Сорокина Елена Алексеевна", Оклад: 160000, Больнич: 0, Допы: 0, Плюс: 0, Минус: 0 },
  { id: 2, ФИО: "Сафина Дания Дамировна", Оклад: 68300, Больнич: 0, Допы: 0, Плюс: 0, Минус: 0 },
  { id: 3, ФИО: "Исмаилова Ирина Николаевна", Оклад: 84200, Больнич: 0, Допы: 0, Плюс: 0, Минус: 0 },
  { id: 4, ФИО: "Гайфуллина Ильнара Ревкатовна (по уходу до 3 лет)", Оклад: 0, Больнич: 0, Допы: 0, Плюс: 0, Минус: 0 },
  { id: 5, ФИО: "Кислова Вероника", Оклад: 0, Больнич: 0, Допы: 0, Плюс: 0, Минус: 0 },
  { id: 6, ФИО: "Попова Галина Руслановна (по уходу до 1,5 лет)", Оклад: 7546.16, Больнич: 0, Допы: 0, Плюс: 0, Минус: 0 },
];

// Рабочие дни = 15
// Ожидаемый результат К выдаче: [110000, 32900, 48800, 0, 0, 7600]

## Дополнительно:
- Экспорт в Excel (.xlsx) — библиотека sheetjs
- Импорт из Excel
- Сохранение расчёта в JSON
- Печать таблицы (CSS print)

Сделай полностью рабочее приложение с формулами, пересчётом в реальном времени и UI как в Excel.