{
  "app_name": "BMI Calculator",
  "pages": [
    {
      "page_id": "bmi_calculator",
      "page_title": "BMI Calculator",
      "route_path": "/",
      "route_params": [],
      "image_indices": [],
      "description": "Single-page BMI Calculator application. Contains the following sections: (1) Measurement Unit Selection — a toggle/radio group to switch between Metric and Imperial systems, defaulting to Metric. (2) Height Input — numeric input field with unit label (cm for metric, separate feet and inches fields for imperial), placeholder text with example values, real-time validation. (3) Weight Input — numeric input field with unit label (kg for metric, lbs for imperial), placeholder text, real-time validation. (4) Calculate BMI Button — prominent primary button, disabled until valid inputs are provided, supports Enter key shortcut. (5) BMI Result Display — shows calculated BMI value rounded to 1 decimal place, category name (Underweight, Normal weight, Overweight, Obese Class I/II/III), color-coded indicator (blue for underweight, green for normal, orange for overweight, red for obese), a visual gauge/colored bar, category description and health information, animated appearance. (6) Calculation History section — displays a list of up to 10 most recent calculations in reverse chronological order, each entry showing timestamp, height, weight, BMI value, and category with color coding. Includes a 'Clear History' button that triggers a confirmation dialog before clearing all history. Shows an empty state message when no history exists. (7) BMI Information panel — collapsible section or accessible via info icon, showing BMI category ranges table, formula explanation (BMI = weight(kg) / height(m)²), health guidelines, disclaimers about BMI limitations. Validation errors display inline beneath inputs for non-numeric, negative, zero, or out-of-range values (height: 50-300cm, weight: 10-500kg). All calculations performed client-side, history persisted in localStorage.",
      "navigates_to": []
    }
  ],
  "shared_state": [
    {
      "key": "measurementSystem",
      "type": "'metric' | 'imperial'",
      "initial_value": "'metric'",
      "description": "Selected measurement unit system, persisted in localStorage across page refreshes"
    },
    {
      "key": "calculationHistory",
      "type": "Array<{ id: string; height: number; weight: number; heightUnit: string; weightUnit: string; bmiValue: number; category: string; timestamp: string }>",
      "initial_value": "[]",
      "description": "Session-based calculation history persisted in localStorage, loaded on page init and updated after each calculation"
    }
  ],
  "default_route": "bmi_calculator",
  "design_system": {
    "theme_mode": "light",
    "density": "comfortable",
    "color_primary": "#1677ff",
    "color_success": "#52c41a",
    "color_warning": "#faad14",
    "color_error": "#ff4d4f",
    "color_bg_container": "#ffffff",
    "color_bg_layout": "#f5f5f5",
    "color_text": "#000000e0",
    "color_border": "#d9d9d9",
    "font_family": "Inter, -apple-system, sans-serif",
    "font_size_base": 14,
    "border_radius": 8,
    "component_overrides": {}
  }
}
