<!doctype html>
<html lang="en">
  <head>
    <!-- Capture native console before any automation (e.g. Puppeteer) can replace it.
         Restored in main.jsx so app does not crash when tools inject a console that reads .logs -->
    <script>
      (function(){
        try {
          var c = window.console;
          if (c && c.log && c.error) {
            window.__originalConsole = {
              log: c.log.bind(c),
              error: c.error.bind(c),
              warn: c.warn ? c.warn.bind(c) : c.log.bind(c),
              debug: c.debug ? c.debug.bind(c) : c.log.bind(c)
            };
          }
        } catch (e) {}
      })();
    </script>
    <meta charset="UTF-8" />

    <!-- Primary Meta Tags -->
    <title>LiaiZen - AI-Powered Co-Parenting Communication | Reduce Conflict, Protect Your Kids</title>
    <meta name="title" content="LiaiZen - AI-Powered Co-Parenting Communication | Reduce Conflict, Protect Your Kids" />
    <meta name="description" content="Transform high-conflict co-parenting into peaceful communication. LiaiZen's AI mediation rewrites tense messages before they're sent, helping divorced and separated parents communicate better for their children. Join the waitlist for free beta access." />
    <meta name="keywords" content="co-parenting app, divorce communication, co-parent messaging, AI mediation, parallel parenting, custody communication, co-parenting tool, reduce conflict divorce, child custody app, separated parents" />
    <meta name="author" content="LiaiZen" />
    <meta name="robots" content="index, follow" />

    <!-- Viewport and Mobile -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes, viewport-fit=cover" />
    <meta name="theme-color" content="#00908B" />
    <meta name="mobile-web-app-capable" content="yes" />
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
    <meta name="apple-mobile-web-app-title" content="LiaiZen" />
    <meta name="format-detection" content="telephone=no" />

    <!-- Open Graph / Facebook -->
    <meta property="og:type" content="website" />
    <meta property="og:url" content="https://coparentliaizen.com/" />
    <meta property="og:title" content="LiaiZen - AI-Powered Co-Parenting Communication" />
    <meta property="og:description" content="Transform high-conflict co-parenting into peaceful communication. AI mediation that rewrites tense messages before they escalate. Free beta access now." />
    <meta property="og:image" content="https://coparentliaizen.com/og-image.png" />
    <meta property="og:image:width" content="1200" />
    <meta property="og:image:height" content="630" />
    <meta property="og:site_name" content="LiaiZen" />
    <meta property="og:locale" content="en_US" />

    <!-- Twitter -->
    <meta name="twitter:card" content="summary_large_image" />
    <meta name="twitter:url" content="https://coparentliaizen.com/" />
    <meta name="twitter:title" content="LiaiZen - AI-Powered Co-Parenting Communication" />
    <meta name="twitter:description" content="Transform high-conflict co-parenting into peaceful communication. AI mediation that rewrites tense messages before they escalate." />
    <meta name="twitter:image" content="https://coparentliaizen.com/og-image.png" />

    <!-- Canonical URL -->
    <link rel="canonical" href="https://coparentliaizen.com/" />

    <!-- Favicon -->
    <link rel="icon" type="image/svg+xml" href="/assets/Logo.svg" />
    <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32-teal.png" />
    <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16-teal.png" />
    <link rel="shortcut icon" href="/favicon.ico?v=2" />
    <link rel="mask-icon" href="/assets/Logo.svg" color="#007470" />
    <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />

    <!-- PWA Manifest - Generated automatically by vite-plugin-pwa -->

    <!-- Preconnect for Performance -->
    <link rel="preconnect" href="https://fonts.googleapis.com" />
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@400;600;700&display=swap" rel="stylesheet" />

    <!-- Structured Data - Organization -->
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "SoftwareApplication",
      "name": "LiaiZen",
      "applicationCategory": "CommunicationApplication",
      "operatingSystem": "Web, iOS, Android",
      "description": "AI-powered co-parenting communication platform that helps divorced and separated parents communicate peacefully for their children's wellbeing.",
      "url": "https://coparentliaizen.com",
      "offers": {
        "@type": "Offer",
        "price": "0",
        "priceCurrency": "USD",
        "description": "Free beta access"
      },
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "4.9",
        "ratingCount": "47",
        "bestRating": "5"
      },
      "featureList": [
        "AI-powered message mediation",
        "Real-time conflict prevention",
        "Secure encrypted messaging",
        "Task and calendar management",
        "Document sharing"
      ]
    }
    </script>

    <!-- Structured Data - FAQ -->
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "FAQPage",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "Is my information private and secure?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Absolutely. All communications are end-to-end encrypted, and we follow privacy-first design principles. Your data is never sold or shared with third parties."
          }
        },
        {
          "@type": "Question",
          "name": "What if my co-parent doesn't want to use it?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "LiaiZen works best when both parents participate, but you can still use features like task management, calendar organization, and contact management on your own."
          }
        },
        {
          "@type": "Question",
          "name": "How does the AI mediation work?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Our AI analyzes tone and suggests alternative phrasing for messages that might escalate conflict. It provides neutral perspectives and keeps conversations productive and solution-focused."
          }
        },
        {
          "@type": "Question",
          "name": "Is this really free during beta?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes! Beta access is completely free with no credit card required. We're looking for families to help us test and improve LiaiZen."
          }
        }
      ]
    }
    </script>

    <!-- Push notifications are handled by custom web-push implementation (usePWA.js) -->
    <!-- No third-party push service needed - fully branded as LiaiZen -->

    <!-- Socket.io loaded via npm (socket.io-client) - no CDN needed -->
    <script type="module" crossorigin src="/assets/main-6hmTv_li.js"></script>
    <link rel="modulepreload" crossorigin href="/assets/apiClient-Wg77pRnU.js">
    <link rel="modulepreload" crossorigin href="/assets/vendor-BqpSIVCw.js">
    <link rel="modulepreload" crossorigin href="/assets/pwaObservability-DrdxUtzm.js">
    <link rel="stylesheet" crossorigin href="/assets/main-Cp2peWB9.css">
  <link rel="manifest" href="/manifest.webmanifest"></head>
  <body>
    <div id="root"></div>
    <!-- Restore native console before app loads (avoids crash when Puppeteer/etc. inject a console that reads .logs) -->
    <script>
      (function(){
        try {
          if (window.__originalConsole) {
            window.console.log = window.__originalConsole.log;
            window.console.error = window.__originalConsole.error;
            window.console.warn = window.__originalConsole.warn;
            window.console.debug = window.__originalConsole.debug;
          }
        } catch (e) {}
      })();
    </script>
    <!-- Clear service workers in development -->
    <script>
      (function () {
        var host = window.location.hostname;
        var isLocalHost = host === 'localhost' || host === '127.0.0.1' || host === '[::1]';
        if ('serviceWorker' in navigator && isLocalHost) {
          navigator.serviceWorker.getRegistrations().then(function(registrations) {
            for (var i = 0; i < registrations.length; i++) {
              var registration = registrations[i];
              console.log('[index.html] Unregistering service worker:', registration.scope);
              registration.unregister();
            }
          });
        }
        if ('caches' in window && isLocalHost) {
          caches.keys().then(function(cacheNames) {
            for (var i = 0; i < cacheNames.length; i++) {
              var cacheName = cacheNames[i];
              console.log('[index.html] Deleting cache:', cacheName);
              caches.delete(cacheName);
            }
          });
        }
      })();
    </script>
  </body>
</html>
