<?xml version="1.0" encoding="UTF-8"?>
<!-- public/sitemap.xml
     ─────────────────────────────────────────────────────────────────────
     FEATURE (SEO item 2 — Sitemap). Vite serves anything in public/ at
     the site root unchanged, so this file is live at /sitemap.xml as-is.

     URLs here are the REAL paths this SPA actually pushes to the address
     bar — confirmed directly from App.jsx's own screenToPath() function,
     not assumed or copied from a different project's URL scheme (this
     app uses /privacy, /terms, /status, /contact directly, not nested
     under /legal/... the way an earlier, separate Next.js prototype did).

     Dashboard/Prompt/Studio/Document deliberately excluded — see
     robots.txt for why (behind the onboarding gate, shouldn't be
     indexed at all). -->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://diagramstudio.in/</loc>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://diagramstudio.in/pricing</loc>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://diagramstudio.in/features</loc>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://diagramstudio.in/collaborate</loc>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://diagramstudio.in/help</loc>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://diagramstudio.in/terms</loc>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://diagramstudio.in/privacy</loc>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://diagramstudio.in/contact</loc>
    <changefreq>yearly</changefreq>
    <priority>0.4</priority>
  </url>
  <!-- /status deliberately excluded — LegalPages/index.jsx's own comment
       says it's a static placeholder ("a status page that always says
       operational is worse than no status page"), not a real live status
       feed yet — not worth indexing until it is. -->
</urlset>