{
  "id": "P06-C04",
  "title": "Шлейка: подбор по двум меркам",
  "kind": "board",
  "brand": "РЯДОМ / ЗООТОВАРЫ",
  "role": "Дизайн предметной инструкции для зоотовара",
  "objective": "Дать понятную проверку диапазонов груди и шеи без подбора по весу.",
  "problem": "Масса собаки ничего не говорит о соотношении груди и шеи. Один подходящий диапазон может скрыть второй неподходящий.",
  "choice": "В авторской модели диапазон груди 45–60 см, шеи 35–45 см. Допуск проверяется совместно: оба условия должны выполняться. Показала два заполненных примера, включая отказ.",
  "result": "Сделан лист подбора с примерами: 52/39 см проходят оба диапазона, 62/39 см не проходят по груди. Решение объясняет конкретную причину.",
  "limit": "Размерная проверка не заменяет примерку и инструкцию производителя. Количество застёжек на иллюстрации не используется как гарантия удержания.",
  "panels": [
    {
      "mode": "photo",
      "title": "Предмет и сценарий использования",
      "items": [
        "Измерить грудь",
        "Измерить шею",
        "Проверить оба диапазона"
      ],
      "caption": "Иллюстрация не заменяет размерную или эксплуатационную проверку."
    },
    {
      "mode": "table",
      "title": "Размеры и состав",
      "headers": [
        "Пример",
        "Мерки",
        "Решение"
      ],
      "rows": [
        [
          "Пример А",
          "Грудь 52 / шея 39",
          "Оба в диапазоне"
        ],
        [
          "Пример Б",
          "Грудь 62 / шея 39",
          "Грудь выше 60"
        ],
        [
          "Правило",
          "45≤грудь≤60 и 35≤шея≤45",
          "Оба условия"
        ]
      ],
      "caption": "Все заданные условия остаются видимыми рядом с результатом."
    },
    {
      "mode": "flow",
      "title": "Подбор требует двух условий",
      "items": [
        "Измерить грудь",
        "Измерить шею",
        "Проверить оба диапазона"
      ],
      "caption": "Калькулятор ниже проверяет оба диапазона и объясняет причину отказа."
    }
  ],
  "table": {
    "headers": [
      "Пример",
      "Мерки",
      "Решение"
    ],
    "rows": [
      [
        "Пример А",
        "Грудь 52 / шея 39",
        "Оба в диапазоне"
      ],
      [
        "Пример Б",
        "Грудь 62 / шея 39",
        "Грудь выше 60"
      ],
      [
        "Правило",
        "45≤грудь≤60 и 35≤шея≤45",
        "Оба условия"
      ]
    ]
  },
  "extraFiles": [
    {
      "file": "calculator.js",
      "label": "Исходник расчёта",
      "mimeType": "text/javascript",
      "content": "function calculate(chest,neck){if([chest,neck].some(v=>!Number.isFinite(v)||v<=0))return \"Введите положительные числа.\";const errors=[];if(chest<45||chest>60)errors.push('Грудь вне диапазона 45–60 см');if(neck<35||neck>45)errors.push('Шея вне диапазона 35–45 см');return errors.length?errors.join('; '):'Оба диапазона авторской модели соблюдены. Следующий шаг — примерка по инструкции.';}\nif(typeof module!==\"undefined\")module.exports={calculate};"
    }
  ],
  "interactiveHTML": "<section class=\"box\"><h2>Проверка двух мерок авторской модели</h2><label>Обхват груди, см <input type=\"number\" min=\"0.01\" step=\"0.1\" id=\"chest\" value=\"52\"></label> <label>Обхват шеи, см <input type=\"number\" min=\"0.01\" step=\"0.1\" id=\"neck\" value=\"39\"></label> <p><button id=\"calc\">Рассчитать</button></p><output id=\"answer\" aria-live=\"polite\"></output><script src=\"calculator.js\"></script><script>document.getElementById(\"calc\").onclick=()=>document.getElementById(\"answer\").textContent=calculate(Number(document.getElementById(\"chest\").value),Number(document.getElementById(\"neck\").value));document.getElementById(\"calc\").click();</script></section>"
}
