diff --git a/pitch/day1/index.html b/pitch/day1/index.html
index 9b1b7b5..a5d75cb 100644
--- a/pitch/day1/index.html
+++ b/pitch/day1/index.html
@@ -22,6 +22,8 @@
font-size:.4em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.35rem .8rem;border-radius:999px;margin-bottom:.6rem}
.reveal p.lead{color:var(--muted);font-size:.85em;line-height:1.5}
.reveal ul{margin-left:1em}.reveal li{margin:.28em 0;line-height:1.35;font-size:.92em}
+ .reveal section.compact li{font-size:.72em;line-height:1.3;margin:.22em 0}
+ .reveal section.compact h2{font-size:1.35em}
.reveal table{font-size:.5em;border-collapse:collapse;width:100%;margin-top:.3em}
.reveal th{background:var(--lg);color:var(--tg);text-align:left;padding:.45em .7em;font-weight:600;border-bottom:2px solid var(--border)}
.reveal td{padding:.4em .7em;border-bottom:1px solid var(--border)}
@@ -93,14 +95,14 @@
-
+
Ключевые инженерные решения
- - PDF без линий таблиц → реконструкция таблицы по координатам слов (стандартный парсер таблиц на этих прайсах не находит).
- - Эмбеддинги через Gemini API, а не локальный torch → контейнер лёгкий, билд быстрый, на маленьком VPS не упирается в RAM.
- - Битый текстовый слой / скан → Gemini Vision по отрисованной странице. Нативные парсеры берут чистое, Vision добирает трудное.
- - Порог косинуса 0,70 + очередь
unmatched: многие услуги клиник реально отсутствуют в справочнике — отправляем их на ручную разметку, как и предполагает ТЗ.
- - SQLite для MVP (разворачивается без Docker), боевая схема Postgres+pgvector — наготове.
+ - PDF без линий таблиц → реконструкция по координатам слов (обычный парсер таблиц их не находит).
+ - Эмбеддинги через Gemini API, не локальный torch → лёгкий контейнер, не упирается в RAM на VPS.
+ - Битый слой / скан → Gemini Vision по картинке. Чистое берут парсеры, трудное добирает Vision.
+ - Порог 0,70 + очередь
unmatched: услуг нет в справочнике → на ручную разметку (ТЗ §4.3).
+ - SQLite для MVP (без Docker), боевая схема Postgres + pgvector — наготове.