{
  "name": "香港城市儀表板",
  "short_name": "HK Dashboard",
  "description": "香港全方位實時城市數據：天氣、交通、巴士、泳灘、停車場",
  "start_url": "/index.html",
  "display": "standalone",
  "background_color": "#0d1b2e",
  "theme_color": "#0d1b2e",
  "orientation": "portrait-primary",
  "lang": "zh-HK",
  "icons": [
    {
      "src": "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 192 192'%3E%3Crect width='192' height='192' rx='32' fill='%230d1b2e'/%3E%3Crect x='20' y='140' width='28' height='40' rx='4' fill='%2360a5fa' opacity='.7'/%3E%3Crect x='60' y='108' width='28' height='72' rx='4' fill='%2360a5fa' opacity='.85'/%3E%3Crect x='100' y='76' width='28' height='104' rx='4' fill='%2360a5fa'/%3E%3Crect x='140' y='92' width='28' height='88' rx='4' fill='%2360a5fa' opacity='.85'/%3E%3Crect x='16' y='178' width='160' height='8' rx='3' fill='%2360a5fa' opacity='.4'/%3E%3C/svg%3E",
      "sizes": "192x192",
      "type": "image/svg+xml"
    },
    {
      "src": "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Crect width='512' height='512' rx='80' fill='%230d1b2e'/%3E%3Crect x='50' y='370' width='75' height='110' rx='8' fill='%2360a5fa' opacity='.7'/%3E%3Crect x='160' y='285' width='75' height='195' rx='8' fill='%2360a5fa' opacity='.85'/%3E%3Crect x='270' y='200' width='75' height='280' rx='8' fill='%2360a5fa'/%3E%3Crect x='380' y='245' width='75' height='235' rx='8' fill='%2360a5fa' opacity='.85'/%3E%3Crect x='40' y='476' width='432' height='16' rx='6' fill='%2360a5fa' opacity='.4'/%3E%3C/svg%3E",
      "sizes": "512x512",
      "type": "image/svg+xml",
      "purpose": "any maskable"
    }
  ],
  "categories": ["utilities", "weather", "travel"],
  "shortcuts": [
    { "name": "天氣",   "url": "/index.html#weather",   "description": "查看天氣" },
    { "name": "巴士",   "url": "/index.html#bus",        "description": "巴士到站" },
    { "name": "停車場", "url": "/index.html#parking",    "description": "停車場空位" }
  ]
}
