{
  "schemaVersion": 1,
  "id": "P53-C01",
  "title": "Обеденная серия: четыре карточки с точным составом",
  "author": {
    "id": "P53",
    "name": "Арсений Данилов"
  },
  "specialty": "Товарные материалы для меню и доставки",
  "projectStatus": "concept",
  "source": {
    "document": "catalogue_60_personas.md",
    "briefId": "P53-C01",
    "title": "Обеденное меню",
    "kind": "editorial_concept",
    "data": "synthetic"
  },
  "context": "У обеденного набора легко потерять гарнир или посчитать соус частью блюда в одном файле и отдельной позицией в другом. Я задал состав по компонентам до верстки.",
  "decision": "Для мясного и рыбного обеда выбрал контейнер с двумя секциями, для овощных вариантов — общий. Название занимает первую строку, состав — вторую, а масса и упаковка образуют нижний служебный блок. Соус входит в массу каждой позиции; отдельный ID связывает лист с полной раскладкой.",
  "constraint": "Позиции и спецификации составлены для авторской серии. Это не меню действующего заведения; фотографическая точность блюда не заявляется.",
  "steps": [
    "Составить четыре полные спецификации с вариантами и массами компонентов.",
    "Собрать типографический лист из той же структуры данных.",
    "Сверить сумму компонентов и проверить отсутствие массы и изменение состава."
  ],
  "inspection": [
    "Четыре позиции имеют проверяемую сумму компонентов и подачу — проверено.",
    "Потерянная масса блокирует только соответствующую позицию — проверено.",
    "Изменение граммовки без согласования заявленной массы обнаруживается — проверено."
  ],
  "sample": {
    "headers": [
      "ID",
      "Название",
      "Вариант",
      "Состав",
      "Масса",
      "Сумма компонентов",
      "Подача",
      "Экспорт"
    ],
    "rows": [
      [
        "L01",
        "Курица и рис",
        "мясной",
        "курица, рис, морковь, соус",
        "360",
        "360",
        "контейнер с двумя секциями",
        "Разрешен"
      ],
      [
        "L02",
        "Рыба и картофель",
        "рыбный",
        "рыба, картофель, огурец, соус",
        "350",
        "350",
        "контейнер с двумя секциями",
        "Разрешен"
      ],
      [
        "L03",
        "Нут и овощи",
        "овощной",
        "нут, кабачок, морковь, томатный соус",
        "320",
        "320",
        "односекционный контейнер",
        "Разрешен"
      ],
      [
        "L04",
        "Гречка с грибами",
        "овощной",
        "гречка, грибы, лук, масло",
        "310",
        "310",
        "односекционный контейнер",
        "Разрешен"
      ]
    ]
  },
  "sampleNote": "Авторский контрольный набор; не клиентские документы и не результаты внешней модели.",
  "caseStudy": {
    "role": "Дизайнер меню и товарных материалов",
    "contribution": "Я составил четыре рецептурные карточки и нарисовал обеды с соответствующими им контейнерами и граммовками.",
    "objective": "Четыре типографические карточки связывают название, состав, массу и упаковку одним ID.",
    "problem": "У обеденного набора легко потерять гарнир или посчитать соус частью блюда в одном файле и отдельной позицией в другом. Я задал состав по компонентам до верстки.",
    "result": "Готовы четыре карточки на 360, 350, 320 и 310 г. На одном листе удобно сравнить состав и тип упаковки, а в раскладке — проверить массу соуса и гарнира. Изменение граммовки обнаруживается до экспорта позиции.",
    "deliverables": [
      "index.html",
      "source.json",
      "source.csv",
      "result.json",
      "result.csv",
      "engine.js",
      "checks.json",
      "style.css",
      "menu.svg",
      "specifications.json"
    ],
    "blocks": [
      {
        "type": "text",
        "title": "Разные обеды требуют разных контейнеров",
        "text": "Курица с рисом и рыба с картофелем показаны в двух секциях, нут и гречка — в одной. Эта деталь влияет на чтение состава: перегородка не должна обещать разделение там, где блюдо собрано вместе. Сетка 2 × 2 позволяет сравнить четыре порции без выравнивания их массы до одной красивой цифры."
      }
    ]
  },
  "deliverable": {
    "type": "image",
    "entry": "/catalogue/deliverables/p53-c01/index.html",
    "label": "Открыть работающий материал",
    "files": [
      {
        "path": "/catalogue/deliverables/p53-c01/index.html",
        "name": "index.html",
        "mimeType": "text/html"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/source.json",
        "name": "source.json",
        "mimeType": "application/json"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/source.csv",
        "name": "source.csv",
        "mimeType": "text/csv"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/result.json",
        "name": "result.json",
        "mimeType": "application/json"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/result.csv",
        "name": "result.csv",
        "mimeType": "text/csv"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/engine.js",
        "name": "engine.js",
        "mimeType": "text/javascript"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/verify.cjs",
        "name": "verify.cjs",
        "mimeType": "text/javascript"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/checks.json",
        "name": "checks.json",
        "mimeType": "application/json"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/style.css",
        "name": "style.css",
        "mimeType": "text/css"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/menu.svg",
        "name": "menu.svg",
        "mimeType": "image/svg+xml"
      },
      {
        "path": "/catalogue/deliverables/p53-c01/specifications.json",
        "name": "specifications.json",
        "mimeType": "application/json"
      }
    ],
    "summary": "Готовы четыре карточки на 360, 350, 320 и 310 г. На одном листе удобно сравнить состав и тип упаковки, а в раскладке — проверить массу соуса и гарнира. Изменение граммовки обнаруживается до экспорта позиции."
  },
  "takeaway": "Готовы четыре карточки на 360, 350, 320 и 310 г. На одном листе удобно сравнить состав и тип упаковки, а в раскладке — проверить массу соуса и гарнира. Изменение граммовки обнаруживается до экспорта позиции.",
  "capabilities": [
    "completed_image"
  ],
  "externalConnections": []
}
