{
  "version": 3,
  "sources": ["/cdn/shop/t/22/assets/cx-garage.js?x=1794164012385"],
  "sourcesContent": ["(function () {\n  if (window.CxGarageApp) return;\n  var cfgEl = document.getElementById('CxGarCfg'); if (!cfgEl) return;\n  var CFG = {}; try { CFG = JSON.parse(cfgEl.textContent); } catch (e) { return; }\n  var KEY = 'cx_garage', MAX = 5;\n  var CAR_SVG = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M3 16v-1.6c0-.8.5-1.4 1.3-1.6l3.4-.9 2.8-2.5c.5-.4 1.1-.6 1.7-.6h3.6c.8 0 1.5.4 2 1l2 2.3 1.9.4c.8.2 1.3.9 1.3 1.7V16\"/><path d=\"M3 16h2M9 16h6M19 16h2M8.6 12.3h9.6\"/><circle cx=\"7\" cy=\"16\" r=\"2\"/><circle cx=\"17\" cy=\"16\" r=\"2\"/></svg>';\n  var OK_SVG = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m5 12 5 5 9-10\"/></svg>';\n  var WARN_SVG = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M12 3 2 20h20L12 3z\"/><path d=\"M12 10v4M12 17.5v.01\"/></svg>';\n  function esc(s) { return String(s == null ? '' : s).replace(/[&<>\"]/g, function (c) { return { '&': '&amp;', '<': '&lt;', '>': '&gt;', '\"': '&quot;' }[c]; }); }\n  function load() { try { var d = JSON.parse(localStorage.getItem(KEY) || 'null'); if (d && d.cars) return d; } catch (e) {} return { cars: [], a: 0 }; }\n  function save(d) { try { localStorage.setItem(KEY, JSON.stringify(d)); } catch (e) {} }\n  function low(a) { return (a || []).map(function (x) { return String(x).toLowerCase(); }); }\n  function pageFor(c) {\n    var ps = CFG.pages || [];\n    for (var i = 0; i < ps.length; i++) {\n      var p = ps[i];\n      if (p.b && p.b !== c.b) continue;\n      if (p.m && p.m !== c.m) continue;\n      if (p.g && (!c.g || p.g.indexOf(c.g) < 0)) continue;\n      if (!p.b && !p.m && !p.g) continue;\n      return p.h;\n    }\n    return null;\n  }\n  function carName(c) { return [c.b, c.m, c.g].filter(Boolean).join(' '); }\n  function shortName(c) { return c.g ? (c.m && c.g.indexOf(c.m) < 0 && c.m.length < 10 ? c.m + ' ' + c.g : c.g) : c.m; }\n  function carUrl(c) { var h = pageFor(c); if (h) return '/collections/' + h; return '/search?type=product&q=' + encodeURIComponent(carName(c)); }\n  function active() { var d = load(); return d.cars[d.a] || d.cars[0] || null; }\n  function fit(prod, c) {\n    if (!prod || !c) return null;\n    if (prod.u) return 'uni';\n    var b = low(prod.b), m = low(prod.m), g = low(prod.g);\n    if (b.length && b.indexOf(c.b.toLowerCase()) < 0) return 'no';\n    if (!b.length && !m.length && !g.length) return 'unknown';\n    if (c.g && g.length) return g.indexOf(c.g.toLowerCase()) >= 0 ? 'yes' : 'no';\n    if (c.m && m.length) {\n      if (m.indexOf(c.m.toLowerCase()) < 0) return 'no';\n      return c.g ? 'maybe' : 'yes';\n    }\n    if (c.g && !g.length && !m.length) return 'maybe';\n    return b.length ? 'maybe' : 'unknown';\n  }\n\n  /* ---------- Garaje (escena) ---------- */\n  var root = document.getElementById('CxGarage');\n  if (root && root.parentNode !== document.body) document.body.appendChild(root);\n  var $ = function (q) { return root.querySelector(q); };\n  var shEl = $('[data-cxg-sh]'), dotsEl = $('[data-cxg-dots]'), cntEl = $('[data-cxg-cnt]'), carEl = $('[data-cxg-car]'), infoEl = $('[data-cxg-info]');\n  var sideL = $('[data-cxg-l]'), sideR = $('[data-cxg-r]'), prevB = $('[data-cxg-prev]'), nextB = $('[data-cxg-next]');\n  var form = $('[data-cxg-form]'), sb = $('[data-cxg-b]'), sm = $('[data-cxg-m]'), sg = $('[data-cxg-g]'), sv = $('[data-cxg-save]');\n  var VEH = null, lastFocus = null, view = 0;\n  var GHOST = '<span class=\"cxg__ghost\">' + CAR_SVG + '</span>';\n  var IMGL = false;\n  function loadImgs() { if (IMGL) return; IMGL = true; fetch(CFG.gimg).then(function (r) { return r.json(); }).then(function (j) { CFG.imgs = j.imgs || {}; CFG.gimgs = j.gimgs || []; if (!root.hidden) render(); }).catch(function () { CFG.imgs = {}; CFG.gimgs = []; }); }\n  function imgOf(c) {\n    if (!CFG.imgs && CFG.gimg) { loadImgs(); return ''; }\n    var h = pageFor(c); if (h && CFG.imgs && CFG.imgs[h]) return CFG.imgs[h];\n    var G = (CFG.gimgs || []).filter(function (r) { return r && r[0] === c.b && r[1] === c.m; });\n    if (!G.length) return '';\n    var x = (c.g && G.filter(function (r) { return r[2] === c.g; })[0]) || G.filter(function (r) { return !r[2]; })[0];\n    if (!x && !c.g && G.every(function (r) { return r[3] === G[0][3]; })) x = G[0];\n    return x ? x[3] : '';\n  }\n  function carHTML(c) { var im = imgOf(c); return im ? '<img src=\"' + esc(im) + '\" alt=\"' + esc(carName(c)) + '\">' : GHOST; }\n  function pad(n) { return (n < 10 ? '0' : '') + n; }\n  function loadVeh(cb) {\n    if (VEH) return cb();\n    fetch(CFG.vehicles).then(function (r) { return r.json(); }).then(function (j) { VEH = j; cb(); }).catch(function () { VEH = {}; cb(); });\n  }\n  function opt(sel, items, first) { sel.innerHTML = '<option value=\"\">' + first + '</option>' + items.map(function (x) { return '<option value=\"' + esc(x) + '\">' + esc(x) + '</option>'; }).join(''); }\n  function fillBrands() { opt(sb, Object.keys(VEH).sort(function (a, b) { return a.localeCompare(b, 'es'); }), 'Elige marca'); opt(sm, [], 'Elige modelo'); opt(sg, [], 'Todas'); sm.disabled = true; sg.disabled = true; sv.disabled = true; }\n  sb.addEventListener('change', function () {\n    var ms = VEH[sb.value] ? Object.keys(VEH[sb.value]).sort(function (a, b) { return a.localeCompare(b, 'es', { numeric: true }); }) : [];\n    opt(sm, ms, 'Elige modelo'); sm.disabled = !ms.length; opt(sg, [], 'Todas'); sg.disabled = true; sv.disabled = true;\n  });\n  sm.addEventListener('change', function () {\n    var gs = (VEH[sb.value] && VEH[sb.value][sm.value]) || [];\n    opt(sg, gs, gs.length ? 'Todas las generaciones' : 'Todas'); sg.disabled = !gs.length; sv.disabled = !sm.value;\n  });\n  function showForm() { if (load().cars.length >= MAX) return; form.hidden = false; loadVeh(fillBrands); setTimeout(function () { sb.focus(); }, 50); }\n  function hideForm() { form.hidden = true; }\n  $('[data-cxg-cancel]').addEventListener('click', hideForm);\n  form.addEventListener('submit', function () {\n    if (!sb.value || !sm.value) return;\n    var c = { b: sb.value, m: sm.value, g: sg.value || '' };\n    hideForm(); add(c, true);\n  });\n  function add(c, fromScene) {\n    var d = load();\n    var k = carName(c).toLowerCase();\n    var ix = -1; d.cars.forEach(function (x, i) { if (carName(x).toLowerCase() === k) ix = i; });\n    if (ix < 0) { if (d.cars.length >= MAX) d.cars.pop(); d.cars.push(c); ix = d.cars.length - 1; }\n    d.a = ix; save(d); view = ix;\n    if (fromScene && !root.hidden) { render('is-park'); setTimeout(function () { refresh(true); }, 1300); } else refresh(true);\n  }\n  function render(anim) {\n    var d = load(), cars = d.cars, n = cars.length;\n    if (view >= n) view = Math.max(0, d.a);\n    var sh = '';\n    for (var i = 0; i < MAX; i++) {\n      var cl = i < n ? '' : ' is-closed';\n      if (i === view && n) cl += ' is-on';\n      sh += '<div class=\"cxg__shut' + cl + '\"' + (i < n ? '' : ' data-cxg-addopen role=\"button\" tabindex=\"0\" aria-label=\"Aparcar un coche\"') + '><i>' + pad(i + 1) + '</i>' + (i < n ? '' : '<span>+ Aparcar</span>') + '</div>';\n    }\n    shEl.innerHTML = sh;\n    dotsEl.innerHTML = Array.apply(null, Array(MAX)).map(function (x, i) { return '<i class=\"' + (i === view && n ? 'is-on' : i < n ? 'is-f' : '') + '\"></i>'; }).join('');\n    cntEl.textContent = n + ' / ' + MAX;\n    if (!n) {\n      carEl.className = 'cxg__car'; carEl.innerHTML = GHOST;\n      infoEl.innerHTML = '<small>Plaza 01 \u00B7 Libre</small><strong>Tu garaje est\u00E1 vac\u00EDo</strong><div class=\"cxg__btns\"><button type=\"button\" class=\"is-main\" data-cxg-addopen>+ Aparcar mi coche</button></div>';\n      sideL.hidden = sideR.hidden = prevB.hidden = nextB.hidden = true;\n      return;\n    }\n    var c = cars[view];\n    carEl.className = 'cxg__car'; carEl.innerHTML = carHTML(c);\n    if (anim) { void carEl.offsetWidth; carEl.classList.add(anim); }\n    var isA = view === d.a;\n    infoEl.innerHTML = '<small>' + esc(c.b) + ' \u00B7 Plaza ' + pad(view + 1) + (isA ? ' \u00B7 Coche activo' : '') + '</small><strong>' + esc([c.m, c.g].filter(Boolean).join(' ')) + '</strong>' +\n      '<div class=\"cxg__btns\">' + (isA ? '<a class=\"is-main\" href=\"' + esc(carUrl(c)) + '\">Ver piezas para mi ' + esc(shortName(c)) + ' \u2192</a>' + (n < MAX ? '<button type=\"button\" data-cxg-addopen>+ Aparcar otro coche</button>' : '')\n        : '<button type=\"button\" class=\"is-main\" data-cxg-use>Usar este coche</button><a href=\"' + esc(carUrl(c)) + '\">Ver sus piezas \u2192</a>') + '</div>' +\n      '<button type=\"button\" class=\"cxg__del\" data-cxg-del>Sacar del garaje</button>';\n    var L = n > 1 ? cars[(view - 1 + n) % n] : null, R = n > 2 ? cars[(view + 1) % n] : (n === 2 ? null : null);\n    if (n === 2) { R = cars[(view + 1) % n]; L = null; }\n    sideL.hidden = !L; sideR.hidden = !R;\n    if (L) sideL.innerHTML = carHTML(L) + '<b>' + esc(carName(L)) + '</b><small>Plaza ' + pad(((view - 1 + n) % n) + 1) + '</small>';\n    if (R) sideR.innerHTML = carHTML(R) + '<b>' + esc(carName(R)) + '</b><small>Plaza ' + pad(((view + 1) % n) + 1) + '</small>';\n    prevB.hidden = nextB.hidden = n < 2;\n  }\n  function go(dir) { var n = load().cars.length; if (n < 2) return; view = (view + dir + n) % n; render(dir > 0 ? 'is-in-r' : 'is-in-l'); }\n  prevB.addEventListener('click', function () { go(-1); });\n  nextB.addEventListener('click', function () { go(1); });\n  sideL.addEventListener('click', function () { go(-1); });\n  sideR.addEventListener('click', function () { go(1); });\n  var tx = null;\n  root.addEventListener('touchstart', function (e) { if (!form.hidden) return; tx = e.touches[0].clientX; }, { passive: true });\n  root.addEventListener('touchend', function (e) { if (tx == null) return; var dx = e.changedTouches[0].clientX - tx; tx = null; if (Math.abs(dx) > 45) go(dx < 0 ? 1 : -1); }, { passive: true });\n  root.addEventListener('click', function (e) {\n    if (e.target.closest('[data-cxg-close]')) return close();\n    if (e.target.closest('[data-cxg-addopen]')) return showForm();\n    if (e.target.closest('[data-cxg-use]')) { var d = load(); d.a = view; save(d); render(); refresh(true); return; }\n    if (e.target.closest('[data-cxg-del]')) { var d2 = load(); d2.cars.splice(view, 1); if (d2.a >= d2.cars.length || d2.a === view) d2.a = 0; else if (view < d2.a) d2.a--; save(d2); view = d2.a; render('is-in-l'); refresh(true); }\n  });\n  root.addEventListener('keydown', function (e) { if (e.key === 'ArrowLeft' && form.hidden) go(-1); if (e.key === 'ArrowRight' && form.hidden) go(1); if ((e.key === 'Enter' || e.key === ' ') && e.target.matches('[data-cxg-addopen]')) { e.preventDefault(); showForm(); } });\n  function open() { lastFocus = document.activeElement; view = load().a || 0; root.hidden = false; document.documentElement.style.overflow = 'hidden'; render('is-park'); if (!load().cars.length) showForm(); else hideForm(); var x = $('.cxg__x'); if (x) x.focus(); }\n  function close() { root.hidden = true; hideForm(); document.documentElement.style.overflow = ''; if (lastFocus && lastFocus.focus) lastFocus.focus(); }\n  document.addEventListener('keydown', function (e) { if (e.key === 'Escape' && !root.hidden) { if (!form.hidden) hideForm(); else close(); } });\n  document.addEventListener('click', function (e) { var t = e.target.closest('[data-cxg-open]'); if (t && !root.contains(t)) { e.preventDefault(); open(); } });\n\n  /* ---------- Cabecera y men\u00FA ---------- */\n  function header() {\n    var a = active();\n    document.querySelectorAll('.cx-mco-icon').forEach(function (ic) {\n      ic.setAttribute('data-cxg-open', '');\n      var dot = ic.querySelector('.cx-mco-dot');\n      if (a && !dot) { dot = document.createElement('span'); dot.className = 'cx-mco-dot'; ic.appendChild(dot); }\n      if (!a && dot) dot.remove();\n      ic.setAttribute('aria-label', a ? 'Mi garaje: ' + carName(a) : 'Mi garaje: guarda tu coche');\n    });\n    var w = document.querySelector('[data-mco-last]'), la = document.querySelector('[data-mco-last-a]');\n    if (w && la) {\n      if (a) { w.hidden = false; w.firstElementChild.textContent = 'Tu coche:'; la.href = carUrl(a); la.textContent = carName(a); }\n      var btn = w.querySelector('[data-cxg-open]');\n      if (!btn) { btn = document.createElement('button'); btn.type = 'button'; btn.setAttribute('data-cxg-open', ''); btn.style.cssText = 'margin-left:auto;border:0;background:none;font:700 13px var(--cx-font-body);color:#1d6a0c;text-decoration:underline;cursor:pointer'; w.appendChild(btn); }\n      btn.textContent = a ? 'Mi garaje' : 'Guardar mi coche';\n      if (!a) { w.hidden = false; w.firstElementChild.textContent = 'Guarda tu coche y te ense\u00F1amos solo lo que le vale.'; la.textContent = ''; }\n    }\n  }\n\n  /* ---------- Ficha de producto ---------- */\n  function product() {\n    var box = document.querySelector('.cx-gfit'); if (box) box.remove();\n    if (CFG.page !== 'product' || !CFG.product) return;\n    var a = active(), host = document.querySelector('.cx-pdp__compat') || document.querySelector('.cx-pdp__price');\n    if (!host) return;\n    var el = document.createElement('div');\n    if (!a) {\n      el.className = 'cx-gfit cx-gfit--maybe'; el.style.background = '#f6f6f4'; el.style.borderColor = '#e6e6e3'; el.style.color = '#3a3a37';\n      el.innerHTML = CAR_SVG + '<span>\u00BFVale para tu coche? <b>Gu\u00E1rdalo en Mi garaje</b> y te lo decimos al momento.</span><button type=\"button\" data-cxg-open>Guardar</button>';\n    } else {\n      var f = fit(CFG.product, a), nm = esc(carName(a));\n      if (f === 'yes' || f === 'uni') { el.className = 'cx-gfit cx-gfit--ok'; el.innerHTML = OK_SVG + '<span>' + (f === 'uni' ? 'Pieza universal: <b>vale para tu ' + nm + '</b>' : '<b>Vale para tu ' + nm + '</b>') + '</span><button type=\"button\" data-cxg-open>Cambiar</button>'; }\n      else if (f === 'maybe' || f === 'unknown') { el.className = 'cx-gfit cx-gfit--maybe'; el.innerHTML = WARN_SVG + '<span>Puede valer para tu <b>' + nm + '</b>, pero conf\u00EDrmanos la versi\u00F3n por WhatsApp antes de comprar.</span><button type=\"button\" data-cxg-open>Cambiar</button>'; }\n      else { el.className = 'cx-gfit cx-gfit--no'; el.innerHTML = WARN_SVG + '<span><b>No consta que valga para tu ' + nm + '.</b> <a href=\"' + esc(carUrl(a)) + '\">Ver piezas para tu ' + esc(shortName(a)) + '</a></span><button type=\"button\" data-cxg-open>Cambiar</button>'; }\n    }\n    if (host.classList.contains('cx-pdp__compat')) host.insertBefore(el, host.firstChild); else host.parentNode.insertBefore(el, host.nextSibling);\n  }\n\n  /* ---------- Tarjetas ---------- */\n  function cards(scope) {\n    var a = active(); if (!a) { document.querySelectorAll('.cx-badge--fit').forEach(function (b) { b.remove(); }); return; }\n    (scope || document).querySelectorAll('.cx-card[data-cx-fit]').forEach(function (card) {\n      var old = card.querySelector('.cx-badge--fit'); if (old) old.remove();\n      var p; try { p = JSON.parse(card.getAttribute('data-cx-fit')); } catch (e) { return; }\n      var f = fit(p, a);\n      if (f === 'yes' || f === 'uni') {\n        var bx = card.querySelector('.cx-card__badges'); if (!bx) return;\n        var s = document.createElement('span'); s.className = 'cx-badge cx-badge--fit'; s.textContent = '\u2713 Para tu ' + (a.g || a.m); s.title = 'Vale para tu ' + carName(a);\n        bx.insertBefore(s, bx.firstChild);\n      }\n    });\n  }\n\n  /* ---------- Listados ---------- */\n  function filterParams(c, f) {\n    var pb = 'filter.p.m.compatibilidad.marca', pm = 'filter.p.m.compatibilidad.modelo', pg = 'filter.p.m.compatibilidad.generacion';\n    if (!f[pb] || f[pb].indexOf(c.b) < 0) return null;\n    var q = [[pb, c.b]];\n    if (c.g && f[pg] && f[pg].indexOf(c.g) >= 0) q.push([pg, c.g]);\n    else if (c.m && f[pm] && f[pm].indexOf(c.m) >= 0) q.push([pm, c.m]);\n    else if (c.g || c.m) return null;\n    return q;\n  }\n  function listing() {\n    var bar = document.querySelector('.cx-gbar'); if (bar) bar.remove();\n    var co = CFG.coll; if (!co) return;\n    var a = active(); if (!a) return;\n    var host = document.querySelector('.cx-cg__bar');\n    if (!host) {\n      var sec = document.querySelector('#MainContent > .shopify-section'); if (!sec) return;\n      var wrap = document.querySelector('.cx-gbar-wrap');\n      if (!wrap) { wrap = document.createElement('div'); wrap.className = 'cx-wrap cx-gbar-wrap'; wrap.style.paddingTop = '16px'; var anc = document.querySelector('.cx-col__hero') || sec; anc.parentNode.insertBefore(wrap, anc.nextSibling); wrap.appendChild(document.createElement('span')); }\n      host = wrap.lastChild;\n    }\n    var url = new URL(location.href), offKey = 'cx_gar_off_' + co.h, nm = esc(shortName(a));\n    var hasF = Object.keys(co.f).length > 1;\n    var mine = hasF ? filterParams(a, co.f) : null;\n    var isMine = mine && mine.every(function (kv) { return url.searchParams.getAll(kv[0]).indexOf(kv[1]) >= 0; });\n    var off = false; try { off = sessionStorage.getItem(offKey) === '1'; } catch (e) {}\n    /* Ya no se filtra solo al entrar: se muestran todos los productos y el bot\u00F3n \u00ABFiltrar por mi coche\u00BB aplica el filtro. */\n    var el = document.createElement('div'); el.className = 'cx-gbar';\n    var ic = '<span class=\"cx-gbar__ic\">' + CAR_SVG + '</span>';\n    if (isMine) {\n      var all = new URL(location.href); mine.forEach(function (kv) { var vs = all.searchParams.getAll(kv[0]).filter(function (v) { return v !== kv[1]; }); all.searchParams.delete(kv[0]); vs.forEach(function (v) { all.searchParams.append(kv[0], v); }); });\n      el.innerHTML = ic + '<span class=\"cx-gbar__t\">Mostrando solo piezas para tu <b>' + esc(carName(a)) + '</b></span><a href=\"' + esc(all.toString()) + '\" data-cxg-all>Ver todo</a><button type=\"button\" data-cxg-open>Cambiar coche</button>';\n      el.querySelector('[data-cxg-all]').addEventListener('click', function () { try { sessionStorage.setItem(offKey, '1'); } catch (e) {} });\n    } else if (hasF && !mine) {\n      el.innerHTML = ic + '<span class=\"cx-gbar__t\">En esta secci\u00F3n no tenemos piezas registradas para tu <b>' + esc(carName(a)) + '</b>.</span><a class=\"is-main\" href=\"' + esc(carUrl(a)) + '\">Ver piezas para tu ' + nm + '</a>';\n    } else if (mine) {\n      var u2 = new URL(location.href); mine.forEach(function (kv) { u2.searchParams.append(kv[0], kv[1]); });\n      el.innerHTML = ic + '<span class=\"cx-gbar__t\">\u00BFVer solo lo que vale para tu <b>' + esc(carName(a)) + '</b>?</span><a class=\"is-main\" href=\"' + esc(u2.toString()) + '\" data-cxg-on>Filtrar por mi coche</a>';\n      el.querySelector('[data-cxg-on]').addEventListener('click', function () { try { sessionStorage.removeItem(offKey); } catch (e) {} });\n    } else {\n      el.innerHTML = ic + '<span class=\"cx-gbar__t\">Tu coche: <b>' + esc(carName(a)) + '</b></span><a class=\"is-main\" href=\"' + esc(carUrl(a)) + '\">Ver todas las piezas para tu ' + nm + '</a>';\n    }\n    host.parentNode.insertBefore(el, host);\n  }\n\n  /* ---------- P\u00E1ginas de coche: sugerir guardarlo ---------- */\n  function carPage() {\n    var s = document.querySelector('.cx-gsug'); if (s) s.remove();\n    if (!CFG.carPage) return;\n    var map = { 'piezas-nissan-s13': { b: 'Nissan', m: 'Silvia', g: 'S13' }, 'piezas-nissan-s14': { b: 'Nissan', m: 'Silvia', g: 'S14' }, 'piezas-nissan-s15': { b: 'Nissan', m: 'Silvia', g: 'S15' }, 'piezas-nissan-350z': { b: 'Nissan', m: '350Z', g: '' }, 'piezas-nissan-skyline': { b: 'Nissan', m: 'Skyline', g: '' }, 'piezas-bmw-e30': { b: 'BMW', m: 'Serie 3', g: 'E30' }, 'piezas-bmw-e36': { b: 'BMW', m: 'Serie 3', g: 'E36' }, 'piezas-bmw-e46': { b: 'BMW', m: 'Serie 3', g: 'E46' }, 'piezas-bmw-m3-e92': { b: 'BMW', m: 'M3', g: 'E92' }, 'piezas-bmw-serie-1-e82-e87': { b: 'BMW', m: 'Serie 1', g: 'E87' }, 'piezas-toyota-gt86-subaru-brz': { b: 'Toyota', m: 'GT86', g: '' }, 'piezas-toyota-supra': { b: 'Toyota', m: 'Supra', g: '' }, 'piezas-mazda-mx5': { b: 'Mazda', m: 'MX-5', g: '' }, 'piezas-volkswagen-golf': { b: 'Volkswagen', m: 'Golf', g: '' }, 'piezas-honda-civic': { b: 'Honda', m: 'Civic', g: '' } };\n    var c = map[CFG.carPage], host = document.querySelector('.cx-car__cta'); if (!c || !host) return;\n    var d = load(), has = d.cars.some(function (x) { return pageFor(x) === CFG.carPage; });\n    var el = document.createElement('div'); el.className = 'cx-gsug';\n    if (has) { el.innerHTML = OK_SVG.replace('<svg', '<svg width=\"18\" height=\"18\" style=\"color:#5be33a\"') + '<span>Este coche est\u00E1 en tu garaje.</span><button type=\"button\" data-cxg-open>Mi garaje</button>'; }\n    else { el.innerHTML = '<span>\u00BFEs tu coche?</span><button type=\"button\" data-cxg-addcar>Guardarlo en Mi garaje</button>'; el.querySelector('[data-cxg-addcar]').addEventListener('click', function () { add(c); }); }\n    host.parentNode.insertBefore(el, host.nextSibling);\n  }\n\n  function refresh(changed) {\n    if (!root.hidden) render();\n    header(); product(); cards(); carPage();\n    if (changed && CFG.coll) {\n      try { sessionStorage.removeItem('cx_gar_off_' + CFG.coll.h); } catch (e) {}\n      var u = new URL(location.href), had = false;\n      ['marca', 'modelo', 'generacion'].forEach(function (k) { var pn = 'filter.p.m.compatibilidad.' + k; if (u.searchParams.has(pn)) { had = true; u.searchParams.delete(pn); } });\n      if (had) location.replace(u.toString()); else location.reload();\n      return;\n    }\n    listing();\n    try { var a2 = active(); if (a2) localStorage.setItem('cx_car', JSON.stringify({ n: carName(a2), u: carUrl(a2) })); } catch (e) {}\n  }\n  window.CxGarageApp = { open: open, add: add, active: active, refresh: refresh };\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', function () { refresh(false); }); else refresh(false);\n  new MutationObserver(function (ms) { ms.forEach(function (m) { m.addedNodes.forEach(function (n) { if (n.nodeType === 1 && (n.matches('.cx-card[data-cx-fit]') || n.querySelector && n.querySelector('.cx-card[data-cx-fit]'))) cards(n.parentNode || n); }); }); }).observe(document.documentElement, { childList: true, subtree: true });\n  window.addEventListener('storage', function (e) { if (e.key === KEY) refresh(false); });\n})();\n"],
  "mappings": "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",
  "names": ["i"]
}
