{
  "$comment": [
    "Every path in here is RELATIVE, and that is not a style choice. Vite rewrites the icon and",
    "script URLs it finds in index.html with the configured base, but it copies this file out of",
    "public/ byte for byte -- so a leading slash here would survive a VITE_BASE_PATH build unchanged",
    "and point at the origin root, which serves the right page and a 404 for every icon in it.",
    "See web/vite.config.ts for what the base is for.",
    "",
    "display is `browser` on purpose. The icons are the point of this file; an installable",
    "standalone window is a separate decision with its own consequences for the MSAL redirect, and",
    "it has not been taken. Flipping this one value is what would take it.",
    "",
    "The icons are drawn by scripts/build-app-icons.py from the same geometry as favicon.svg."
  ],
  "name": "Customer 360",
  "short_name": "C360",
  "description": "One customer, one screen.",
  "start_url": ".",
  "scope": ".",
  "display": "browser",
  "theme_color": "#4EA03E",
  "background_color": "#F5F7F9",
  "icons": [
    { "src": "icon-192.png", "sizes": "192x192", "type": "image/png", "purpose": "any" },
    { "src": "icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "any" },
    { "src": "icon-maskable-512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable" }
  ]
}
