1<!doctype html> 2<html lang="en" translate="no"> 3 <head> 4 <meta charset="UTF-8" /> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 6 <!-- PITZ-1226: el traductor del navegador reordena nodos de texto que React 7 sigue creyendo suyos, causando NotFoundError (removeChild/insertBefore) 8 en el commit de React. La app ya tiene su propio i18n (ES/BR). --> 9 <meta name="google" content="notranslate" /> 10 <meta 11 http-equiv="Content-Security-Policy" 12 content=" 13 connect-src 14 'self' 15 blob: 16 https://api.pitz.com.mx 17 https://scooliogueqngepjtyub.supabase.co 18 https://thor-api.pitz.com.mx 19 https://viacep.com.br 20 https://brasilapi.com.br 21 ws://localhost:* 22 ws://127.0.0.1:* 23 https://*.sentry.io 24 https://api.elevenlabs.io 25 https://*.elevenlabs.io 26 wss://*.elevenlabs.io 27 https://api.mercadopago.com 28 https://*.mercadopago.com 29 https://www.googletagmanager.com 30 https://analytics.google.com 31 https://www.google.com 32 https://*.google-analytics.com 33 https://*.analytics.google.com 34 https://maps.googleapis.com 35 https://*.googleapis.com 36 https://*.gstatic.com 37 https://cdn.heapanalytics.com 38 https://*.heap-api.com 39 https://api.hsforms.com 40 https://forms.hscollectedforms.net 41 https://*.hscollectedforms.net 42 https://*.hsappstatic.net 43 https://api.hubapi.com 44 https://*.hubspot.com 45 https://*.hs-scripts.com 46 https://*.facebook.com 47 https://*.i.posthog.com 48 https://viacep.com.br; 49 " 50 > 51 52 <title>Pitz | Software de Gestión para Talleres Mecánicos</title> 53 <meta 54 name="description" 55 content="Software completo de gestión para talleres mecánicos. Optimiza tu taller con nuestra plataforma integral." 56 /> 57 <meta name="author" content="Pitz" /> 58 <meta property="og:image" content="/pitz_logotipo.png" /> 59 <link 60 rel="icon" 61 href="/lovable-uploads/d6fd0828-80e9-4960-96a2-dc247d160251.png" 62 type="image/png" 63 /> 64 65 <!-- Typography: Public Sans (app default / font-sans) y PP Neue Corp 66 Ultrabold (font-title) se sirven self-hosted (ver src/styles/fonts.css). 67 Se precargan aquà porque son las fuentes usadas por texto above-the-fold 68 en casi cualquier pantalla (login, registro, dashboards); sin esto el 69 swap de fuente causa layout shift (CLS) al terminar de cargar â PITZ-1241. --> 70 <link 71 rel="preload" 72 as="font" 73 type="font/woff2" 74 href="/fonts/public-sans/public-sans-normal-latin.woff2" 75 crossorigin 76 /> 77 <link 78 rel="preload" 79 as="font" 80 type="font/otf" 81 href="/fonts/pp-neue-corp/PPNeueCorp-NormalUltrabold.otf" 82 crossorigin 83 /> 84 85 <!-- Google Tag Manager --> 86
86<script> 87 (function () { 88 var gtmId = "GTM-N4LMX6X6"; 89 // PITZ-1419: Vite sustituye TODAS las ocurrencias literales de 90 // "GTM-N4LMX6X6" en este archivo, incluida esta comparación â 91 // comparar contra el propio centinela nunca detecta "sin sustituir". 92 // charAt(0) === "%" sà sobrevive la sustitución. 93 if (!gtmId || gtmId.charAt(0) === "%") { 94 return; 95 } 96 97 (function (w, d, s, l, i) { 98 w[l] = w[l] || []; 99 w[l].push({ 100 "gtm.start": new Date().getTime(), 101 event: "gtm.js", 102 }); 103 var f = d.getElementsByTagName(s)[0], 104 j = d.createElement(s), 105 dl = l != "dataLayer" ? "&l=" + l : ""; 106 j.async = true; 107 j.src = "https://www.googletagmanager.com/gtm.js?id=" + i + dl; 108 f.parentNode.insertBefore(j, f); 109 })(window, document, "script", "dataLayer", gtmId); 110 })(); 111 </script>
111 112 <!-- End Google Tag Manager --> 113 114 <!-- Heap Analytics --> 115
115<script type="text/javascript"> 116 (function () { 117 var heapId = "4064575335"; 118 // PITZ-1419: mismo bug que el guard de GTM arriba â ver ese comentario. 119 if (!heapId || heapId.charAt(0) === "%") { 120 return; 121 } 122 123 window.heap = window.heap || []; 124 var heap = window.heap; 125 126 heap.load = function (e, t) { 127 ((window.heap.appid = e), 128 (window.heap.config = t = t || {})); 129 var r = document.createElement("script"); 130 ((r.type = "text/javascript"), 131 (r.async = !0), 132 (r.src = 133 "https://cdn.heapanalytics.com/js/heap-" + 134 e + 135 ".js")); 136 var a = document.getElementsByTagName("script")[0]; 137 a.parentNode.insertBefore(r, a); 138 for ( 139 var n = function (e) { 140 return function () { 141 heap.push( 142 [e].concat( 143 Array.prototype.slice.call( 144 arguments, 145 0, 146 ), 147 ), 148 ); 149 }; 150 }, 151 p = [ 152 "addEventProperties", 153 "addUserProperties", 154 "clearEventProperties", 155 "identify", 156 "resetIdentity", 157 "removeEventProperty", 158 "setEventProperties", 159 "track", 160 "unsetEventProperty", 161 ], 162 o = 0; 163 o < p.length; 164 o++ 165 ) 166 heap[p[o]] = n(p[o]); 167 }; 168 heap.load(heapId); 169 })(); 170 </script>
170 171 <!-- End Heap Analytics --> 172 <!-- HubSpot Tracking Code --> 173
173<script> 174 var _hsq = window._hsq = window._hsq || []; 175 </script>
175 176
176<script 177 type="text/javascript" 178 id="hs-script-loader" 179 async 180 defer 181 src="//js.hs-scripts.com/50617715.js" 182 ></script>
182 183 <!-- End HubSpot --> 184
184<script type="module" crossorigin src="/assets/index-QtXqTubk.js"></script>
184 185 <link rel="modulepreload" crossorigin href="/assets/vendor-react-B06cxeNF.js"> 186 <link rel="modulepreload" crossorigin href="/assets/vendor-sentry-BATDqTpg.js"> 187 <link rel="modulepreload" crossorigin href="/assets/vendor-supabase-DjYt1Ejk.js"> 188 <link rel="modulepreload" crossorigin href="/assets/vendor-i18n-BAF4TLvC.js"> 189 <link rel="modulepreload" crossorigin href="/assets/vendor-radix-opVlf3u2.js"> 190 <link rel="modulepreload" crossorigin href="/assets/vendor-date-CluMA_qO.js"> 191 <link rel="modulepreload" crossorigin href="/assets/vendor-forms-N1NONvM5.js"> 192 <link rel="stylesheet" crossorigin href="/assets/index-BOjmHujx.css"> 193 </head> 194 195 <body> 196 <!-- Google Tag Manager (noscript) -->
vendor: 105 bytes, lines 196-199
196 197 <noscript 198 ><iframe 199 src="https://www.googletagmanager.com/ns.html?id=
199GTM-N4LMX6X6
vendor: 164 bytes, lines 199-205
199" 200 height="0" 201 width="0" 202 style="display: none; visibility: hidden" 203 ></iframe 204 ></noscript> 205
205<!-- End Google Tag Manager (noscript) --> 206 207 <div id="root"></div> 208 <!-- IMPORTANT: DO NOT REMOVE THIS SCRIPT TAG OR THIS VERY COMMENT! --> 209
209<script 210 src="https://cdn.gpteng.co/gptengineer.js" 211 type="module" 212 ></script>
212 213 </body> 214</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.