<!DOCTYPE html>
<html lang="nl">
  <head>
    <!-- Google tag (gtag.js) with Consent Mode -->
    <script>
      // Set default consent state before gtag loads
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      
      // Default consent state (denied for EEA users)
      gtag('consent', 'default', {
        analytics_storage: 'denied',
        ad_storage: 'denied',
        ad_user_data: 'denied',
        ad_personalization: 'denied',
        wait_for_update: 500
      });
      
      gtag('js', new Date());
      gtag('config', 'G-HE7WYLFFFP');
    </script>
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-HE7WYLFFFP"></script>
    
          <!-- Meta Pixel Code -->
    <script>
    try {
      !function(f,b,e,v,n,t,s)
      {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
      n.callMethod.apply(n,arguments):n.queue.push(arguments)};
      if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
      n.queue=[];t=b.createElement(e);t.async=!0;
      t.src=v;s=b.getElementsByTagName(e)[0];
      
      // Error handling voor geblokkeerde scripts
      t.onerror = function() {
        // Silent fail - script geblokkeerd door ad blocker of privacy settings
        console.info('Facebook Pixel script geblokkeerd door browser/extensie - dit is normaal gedrag voor privacy');
      };
      
      s.parentNode.insertBefore(t,s)}(window, document,'script',
      'https://connect.facebook.net/en_US/fbevents.js');
      
      // Fallback fbq functie als script niet laadt
      if (!window.fbq) {
        window.fbq = function() {
          // No-op functie om errors te voorkomen
        };
      }
      
      fbq('init', '610217278362800');
      // PageView tracking will be handled by cookie consent
    } catch (error) {
      // Silent fail voor Facebook Pixel fouten
      console.info('Facebook Pixel kon niet worden geladen - dit is normaal bij privacy-instellingen');
    }
    </script>
    <!-- End Meta Pixel Code -->
      
    <meta charset="UTF-8" >
    <link rel="icon" type="image/png" href="/favicon_round_sharp32.png" >
    <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" >
    <meta name="description" content="WeekChef - Je persoonlijke AI-chef voor weekmenu's en boodschappenlijsten" >
    <title>WeekChef - Je persoonlijke AI-chef voor weekmenu's</title>
    <script type="module" crossorigin src="/assets/index-BVUmByCP.js"></script>
    <link rel="modulepreload" crossorigin href="/assets/vendor-CiEz7Y2v.js">
    <link rel="modulepreload" crossorigin href="/assets/supabase-CgihASmK.js">
    <link rel="modulepreload" crossorigin href="/assets/ui-JiLr4Fyt.js">
    <link rel="stylesheet" crossorigin href="/assets/index-BRz7iqqy.css">
  <link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script><meta name="description" content="Ontvang elke week een persoonlijk menu met snelle, lekkere recepten en een slimme boodschappenlijst.">
<meta property="og:title" content="WeekChef - Je persoonlijke AI-chef voor weekmenu's">
<meta property="og:description" content="Ontvang elke week een persoonlijk menu met snelle, lekkere recepten en een slimme boodschappenlijst.">
<meta property="og:image" content="https://weekchef.com/share-afbeelding-logo.png">
<meta property="og:url" content="https://weekchef.com/">
<meta property="og:type" content="website">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="WeekChef - Je persoonlijke AI-chef voor weekmenu's">
<meta name="twitter:description" content="Ontvang elke week een persoonlijk menu met snelle, lekkere recepten en een slimme boodschappenlijst.">
<meta name="twitter:image" content="https://weekchef.com/share-afbeelding-logo.png"></head>
  <body>
    <!-- Meta Pixel noscript fallback -->
    <noscript><img height="1" width="1" style="display:none"
    src="https://www.facebook.com/tr?id=610217278362800&ev=PageView&noscript=1"
    /></noscript>
    
    <div id="root"><div id="app">Loading...</div>
      <!-- Fallback loading indicator -->
      <div id="initial-loader" style="
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: white;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 9999;
      ">
        <div style="text-align: center;">
          <div style="
            width: 40px;
            height: 40px;
            border: 3px solid #f3f4f6;
            border-top: 3px solid #059669;
            border-radius: 50%;
            animation: spin 1s linear infinite;
            margin: 0 auto 16px;
          "></div>
          <p style="color: #6b7280; font-family: system-ui, sans-serif;">WeekChef wordt geladen...</p>
        </div>
      </div>
      <style>
        @keyframes spin {
          0% { transform: rotate(0deg); }
          100% { transform: rotate(360deg); }
        }
      </style>
    </div>
    <script>
      // Verberg de loader zodra React is geladen - alleen tonen in PWA modus
      window.addEventListener('DOMContentLoaded', function() {
        // Check of we in PWA modus zijn
        const isStandalone = window.matchMedia('(display-mode: standalone)').matches || 
                            navigator.standalone === true;
        
        const loader = document.getElementById('initial-loader');
        if (loader && !isStandalone) {
          // In browser: verberg loader direct
          loader.style.display = 'none';
        } else if (loader && isStandalone) {
          // In PWA: verberg na korte delay
          setTimeout(function() {
            loader.style.display = 'none';
          }, 100);
        }
      });
    </script>
  </body>
</html>