[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"footer-root-categories-fr-FR":3,"tool-content-estimateur-carburant-vacances-fr":83,"footer-cities-fr":123},[4,14,22,30,38,45,53,60,67,75],{"seo_content":5,"id":8,"name":9,"slug":10,"parentId":7,"lang":11,"_count":12},[6],{"page_slug":7},null,"cmkzhl7xm00dbulbc93h4qog5","Juridique","avocats","fr-FR",{"experts":13},8,{"seo_content":15,"id":17,"name":18,"slug":19,"parentId":7,"lang":11,"_count":20},[16],{"page_slug":7},"cmkzhl84700djulbcbv6pzu9e","Informatique","informaticiens",{"experts":21},3,{"seo_content":23,"id":25,"name":26,"slug":27,"parentId":7,"lang":11,"_count":28},[24],{"page_slug":7},"cmkzhlaos00gnulbc07i9jrco","Amélioration de la Maison","artisans",{"experts":29},4,{"seo_content":31,"id":33,"name":34,"slug":35,"parentId":7,"lang":11,"_count":36},[32],{"page_slug":7},"cmkzhlaqg00gpulbcx38bwoc2","Général","divers-generalistes",{"experts":37},0,{"seo_content":39,"id":41,"name":42,"slug":43,"parentId":7,"lang":11,"_count":44},[40],{"page_slug":7},"cmkzhlbvq00i3ulbcutdbcz50","Électronique Grand Public","techniciens-electronique",{"experts":21},{"seo_content":46,"id":48,"name":49,"slug":50,"parentId":7,"lang":11,"_count":51},[47],{"page_slug":7},"cmkzhlcaw00ilulbc38pxoogr","Santé","medecins",{"experts":52},5,{"seo_content":54,"id":56,"name":57,"slug":58,"parentId":7,"lang":11,"_count":59},[55],{"page_slug":7},"cmkzhlcmi00izulbcxva1m47f","Gestion de Patrimoine","conseillers-patrimoniaux",{"experts":21},{"seo_content":61,"id":63,"name":64,"slug":65,"parentId":7,"lang":11,"_count":66},[62],{"page_slug":7},"cmkzhldcv00jvulbcmcd5a7mk","Animaux et Vétérinaires","veterinaires",{"experts":21},{"seo_content":68,"id":70,"name":71,"slug":72,"parentId":7,"lang":11,"_count":73},[69],{"page_slug":7},"cmkzhldrr00kdulbchxfo67eg","Mécanique et Réparation","mecaniciens",{"experts":74},1,{"seo_content":76,"id":78,"name":79,"slug":80,"parentId":7,"lang":11,"_count":81},[77],{"page_slug":7},"cmkzhl9l300fbulbcv3i8q8p3","Aide aux Devoirs","professeurs-particuliers",{"experts":82},6,{"slug":84,"title":85,"page_title":86,"description":87,"content_md":88,"local_slug":7,"json_ld":89,"faq":102,"tool_html":118,"source":119,"category":7,"audience":120,"publish_mode":121,"hero_image":122,"hero_image_alt":85},"estimateur-carburant-vacances","Estimateur coût carburant — Vacances 2026","Estimateur coût carburant vacances 2026 — Expert Zoom","Calculez le budget carburant de vos vacances d'été en France : aller simple, aller-retour et comparaison SP95, SP98, Diesel avec les prix mai 2026.","Avant de prendre la route, estimez précisément ce que vous coûtera le carburant. Cet outil calcule le coût en essence ou diesel pour votre trajet de vacances à partir de la distance, de votre consommation réelle et des prix moyens constatés en France en mai 2026. Idéal pour comparer les carburants ou préparer son budget aller-retour.",[90],{"name":91,"@type":92,"offers":93,"@context":97,"inLanguage":98,"description":99,"operatingSystem":100,"applicationCategory":101},"Estimateur coût carburant vacances 2026","WebApplication",{"@type":94,"price":95,"priceCurrency":96},"Offer","0","EUR","https:\u002F\u002Fschema.org","fr","Calculez le budget essence ou diesel pour votre trajet de vacances en France. Aller simple, aller-retour et comparaison des carburants (SP95-E10, SP95, SP98, Diesel) avec les prix moyens mai 2026.","Web","UtilitiesApplication",[103,106,109,112,115],{"a":104,"q":105},"Multipliez la distance par votre consommation aux 100 km, puis par le prix au litre. Exemple : 600 km × 7 L\u002F100 km × 2,03 €\u002FL = 85,26 €. L'outil fait ce calcul automatiquement.","Comment calculer le coût en carburant pour mes vacances ?",{"a":107,"q":108},"En mai 2026, le SP95-E10 coûte en moyenne 2,03 €\u002FL, le SP95 2,06 €\u002FL, le SP98 2,13 €\u002FL et le Diesel 2,19 €\u002FL selon prix-carburant.eu. Ces tarifs varient chaque semaine.","Quel est le prix moyen de l'essence en France en 2026 ?",{"a":110,"q":111},"Les stations-service d'hypermarché (E.Leclerc, Intermarché…) proposent généralement des tarifs inférieurs de 5 à 10 centimes au litre par rapport aux stations autoroutières. Faites le plein avant l'autoroute.","Le plein sera-t-il moins cher sur l'autoroute ou en grande surface ?",{"a":113,"q":114},"Gonflage correct des pneus (+0,2 bar en charge), vitesse stabilisée à 110–120 km\u002Fh, climatisation modérée et anticipation du freinage peuvent réduire la consommation de 10 à 15 %.","Comment réduire sa consommation de carburant sur un long trajet ?",{"a":116,"q":117},"Non, cet outil estime uniquement le coût du carburant. Pour les péages sur les grands axes (A7, A9…), consultez le site viamichelin.fr ou l'application de votre GPS.","Le calculateur prend-il en compte les péages ?","\u003C!DOCTYPE html>\n\u003Chtml lang=\"fr\">\n\u003Chead>\n  \u003Cmeta charset=\"utf-8\">\n  \u003Cmeta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n  \u003Ctitle>Estimateur coût carburant vacances 2026\u003C\u002Ftitle>\n  \u003Cscript src=\"https:\u002F\u002Funpkg.com\u002Flucide@latest\u002Fdist\u002Fumd\u002Flucide.min.js\">\u003C\u002Fscript>\n  \u003Cstyle>\n    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\n    :root {\n      --stone-50: #fafaf9; --stone-100: #f5f5f4; --stone-200: #e7e5e4;\n      --stone-400: #a8a29e; --stone-600: #57534e; --stone-700: #44403c; --stone-800: #292524;\n      --blue-50: #eff6ff; --blue-100: #dbeafe; --blue-600: #2563eb;\n      --green-50: #f0fdf4; --green-200: #bbf7d0; --green-600: #16a34a;\n      --amber-50: #fffbeb; --amber-600: #d97706;\n    }\n    body { font-family: system-ui,-apple-system,sans-serif; background: var(--stone-50); color: var(--stone-800); font-size: 15px; line-height: 1.5; }\n    .tool-root { max-width: 560px; margin: 0 auto; padding: 20px 16px 24px; }\n    .tool-header { margin-bottom: 20px; }\n    .tool-title { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 700; color: var(--stone-800); margin-bottom: 4px; }\n    .tool-title [data-lucide] { color: var(--blue-600); flex-shrink: 0; }\n    .tool-subtitle { color: var(--stone-600); font-size: 13.5px; }\n    .tabs { display: flex; border-bottom: 2px solid var(--stone-200); margin-bottom: 20px; }\n    .tab-btn { background: none; border: none; padding: 9px 14px; font-size: 13.5px; font-weight: 500; color: var(--stone-600); cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -2px; transition: color .15s, border-color .15s; white-space: nowrap; }\n    .tab-btn:hover { color: var(--stone-800); }\n    .tab-btn.active { color: var(--blue-600); border-bottom-color: var(--blue-600); font-weight: 600; }\n    .tab-panel { display: none; }\n    .tab-panel.active { display: block; }\n    .callout { background: var(--blue-50); border: 1px solid var(--blue-100); border-radius: 10px; padding: 11px 13px; font-size: 13px; color: var(--stone-700); display: flex; gap: 8px; align-items: flex-start; margin-bottom: 18px; }\n    .callout [data-lucide] { color: var(--blue-600); flex-shrink: 0; margin-top: 2px; }\n    .form-group { margin-bottom: 16px; }\n    .form-label { display: flex; justify-content: space-between; align-items: center; font-size: 13.5px; font-weight: 600; color: var(--stone-700); margin-bottom: 7px; }\n    .form-value { font-size: 13px; font-weight: 700; color: var(--blue-600); font-variant-numeric: tabular-nums; }\n    input[type=range] { width: 100%; height: 6px; -webkit-appearance: none; background: var(--stone-200); border-radius: 3px; outline: none; cursor: pointer; }\n    input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 18px; height: 18px; border-radius: 50%; background: var(--blue-600); cursor: pointer; box-shadow: 0 1px 3px rgba(0,0,0,.2); }\n    select { width: 100%; padding: 9px 12px; border: 1.5px solid var(--stone-200); border-radius: 8px; background: white; font-size: 14px; color: var(--stone-800); cursor: pointer; outline: none; -webkit-appearance: none; }\n    select:focus { border-color: var(--blue-600); }\n    .result-card { background: white; border: 2px solid var(--blue-100); border-radius: 12px; padding: 18px 20px; margin-top: 20px; }\n    .result-main { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }\n    .result-main [data-lucide] { color: var(--green-600); }\n    .result-amount { font-size: 30px; font-weight: 800; color: var(--stone-800); font-variant-numeric: tabular-nums; }\n    .result-label { font-size: 12.5px; color: var(--stone-600); margin-top: 1px; }\n    .result-breakdown { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding-top: 12px; border-top: 1px solid var(--stone-100); }\n    .breakdown-item { font-size: 12.5px; color: var(--stone-600); }\n    .breakdown-value { display: block; font-weight: 700; color: var(--stone-800); font-variant-numeric: tabular-nums; margin-top: 2px; }\n    .comparison-grid { display: flex; flex-direction: column; gap: 9px; margin-top: 4px; }\n    .comparison-item { display: flex; align-items: center; justify-content: space-between; background: white; border: 1.5px solid var(--stone-200); border-radius: 10px; padding: 11px 14px; }\n    .comparison-item.cheapest { border-color: var(--green-600); background: var(--green-50); }\n    .comparison-fuel { font-size: 14px; font-weight: 600; color: var(--stone-800); }\n    .comparison-price-sub { font-size: 12px; color: var(--stone-400); margin-top: 1px; }\n    .comparison-right { display: flex; align-items: center; gap: 8px; }\n    .comparison-total { font-size: 16px; font-weight: 700; color: var(--stone-800); font-variant-numeric: tabular-nums; }\n    .badge-eco { font-size: 11px; font-weight: 600; background: var(--green-600); color: white; padding: 2px 8px; border-radius: 20px; }\n    .source { margin-top: 18px; font-size: 11.5px; color: var(--stone-400); display: flex; align-items: center; gap: 5px; flex-wrap: wrap; }\n    .source a { color: var(--stone-400); }\n    .source [data-lucide] { flex-shrink: 0; }\n  \u003C\u002Fstyle>\n\u003C\u002Fhead>\n\u003Cbody>\n\u003Cmain class=\"tool-root\">\n  \u003Cdiv class=\"tool-header\">\n    \u003Cdiv class=\"tool-title\">\n      \u003Ci data-lucide=\"fuel\" style=\"width:22px;height:22px\">\u003C\u002Fi>\n      Estimateur coût carburant\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"tool-subtitle\">Calculez le budget essence ou diesel pour votre trajet de vacances 2026\u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003Cdiv class=\"tabs\">\n    \u003Cbutton class=\"tab-btn active\" data-tab=\"simple\">Aller simple\u003C\u002Fbutton>\n    \u003Cbutton class=\"tab-btn\" data-tab=\"allerretour\">Aller-retour\u003C\u002Fbutton>\n    \u003Cbutton class=\"tab-btn\" data-tab=\"comparaison\">Comparaison\u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\n  \u003C!-- Aller simple -->\n  \u003Cdiv class=\"tab-panel active\" id=\"tab-simple\">\n    \u003Cdiv class=\"callout\">\n      \u003Ci data-lucide=\"info\" style=\"width:15px;height:15px\">\u003C\u002Fi>\n      \u003Cspan>Coût = distance ÷ 100 × consommation × prix au litre (tarifs moyens mai 2026)\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"form-group\">\n      \u003Cdiv class=\"form-label\">\n        \u003Cspan>Distance\u003C\u002Fspan>\n        \u003Cspan class=\"form-value\" id=\"v-dist-s\">500 km\u003C\u002Fspan>\n      \u003C\u002Fdiv>\n      \u003Cinput type=\"range\" id=\"r-dist-s\" min=\"50\" max=\"3000\" step=\"50\" value=\"500\"\n        oninput=\"state.dist_s=+this.value;render()\">\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"form-group\">\n      \u003Cdiv class=\"form-label\">\u003Cspan>Type de carburant\u003C\u002Fspan>\u003C\u002Fdiv>\n      \u003Cselect id=\"s-fuel-s\" onchange=\"state.fuel_s=this.value;render()\">\n        \u003Coption value=\"e10\">SP95-E10 — 2,03 €\u002FL\u003C\u002Foption>\n        \u003Coption value=\"sp95\">SP95 — 2,06 €\u002FL\u003C\u002Foption>\n        \u003Coption value=\"sp98\">SP98 — 2,13 €\u002FL\u003C\u002Foption>\n        \u003Coption value=\"diesel\">Diesel — 2,19 €\u002FL\u003C\u002Foption>\n      \u003C\u002Fselect>\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"form-group\">\n      \u003Cdiv class=\"form-label\">\n        \u003Cspan>Consommation moyenne\u003C\u002Fspan>\n        \u003Cspan class=\"form-value\" id=\"v-cons-s\">7,0 L\u002F100 km\u003C\u002Fspan>\n      \u003C\u002Fdiv>\n      \u003Cinput type=\"range\" id=\"r-cons-s\" min=\"4\" max=\"15\" step=\"0.5\" value=\"7\"\n        oninput=\"state.cons_s=+this.value;render()\">\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"result-card\">\n      \u003Cdiv class=\"result-main\">\n        \u003Ci data-lucide=\"euro\" style=\"width:24px;height:24px\">\u003C\u002Fi>\n        \u003Cdiv>\n          \u003Cdiv class=\"result-amount\" id=\"res-simple-cost\">—\u003C\u002Fdiv>\n          \u003Cdiv class=\"result-label\">coût estimé pour votre trajet\u003C\u002Fdiv>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"result-breakdown\">\n        \u003Cdiv class=\"breakdown-item\">Litres consommés\u003Cspan class=\"breakdown-value\" id=\"res-simple-liters\">—\u003C\u002Fspan>\u003C\u002Fdiv>\n        \u003Cdiv class=\"breakdown-item\">Coût par 100 km\u003Cspan class=\"breakdown-value\" id=\"res-simple-per100\">—\u003C\u002Fspan>\u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003C!-- Aller-retour -->\n  \u003Cdiv class=\"tab-panel\" id=\"tab-allerretour\">\n    \u003Cdiv class=\"callout\">\n      \u003Ci data-lucide=\"info\" style=\"width:15px;height:15px\">\u003C\u002Fi>\n      \u003Cspan>Total aller-retour = coût aller × 2 (même consommation dans les deux sens)\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"form-group\">\n      \u003Cdiv class=\"form-label\">\n        \u003Cspan>Distance aller\u003C\u002Fspan>\n        \u003Cspan class=\"form-value\" id=\"v-dist-ar\">500 km\u003C\u002Fspan>\n      \u003C\u002Fdiv>\n      \u003Cinput type=\"range\" id=\"r-dist-ar\" min=\"50\" max=\"3000\" step=\"50\" value=\"500\"\n        oninput=\"state.dist_ar=+this.value;render()\">\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"form-group\">\n      \u003Cdiv class=\"form-label\">\u003Cspan>Type de carburant\u003C\u002Fspan>\u003C\u002Fdiv>\n      \u003Cselect id=\"s-fuel-ar\" onchange=\"state.fuel_ar=this.value;render()\">\n        \u003Coption value=\"e10\">SP95-E10 — 2,03 €\u002FL\u003C\u002Foption>\n        \u003Coption value=\"sp95\">SP95 — 2,06 €\u002FL\u003C\u002Foption>\n        \u003Coption value=\"sp98\">SP98 — 2,13 €\u002FL\u003C\u002Foption>\n        \u003Coption value=\"diesel\">Diesel — 2,19 €\u002FL\u003C\u002Foption>\n      \u003C\u002Fselect>\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"form-group\">\n      \u003Cdiv class=\"form-label\">\n        \u003Cspan>Consommation moyenne\u003C\u002Fspan>\n        \u003Cspan class=\"form-value\" id=\"v-cons-ar\">7,0 L\u002F100 km\u003C\u002Fspan>\n      \u003C\u002Fdiv>\n      \u003Cinput type=\"range\" id=\"r-cons-ar\" min=\"4\" max=\"15\" step=\"0.5\" value=\"7\"\n        oninput=\"state.cons_ar=+this.value;render()\">\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"result-card\">\n      \u003Cdiv class=\"result-main\">\n        \u003Ci data-lucide=\"euro\" style=\"width:24px;height:24px\">\u003C\u002Fi>\n        \u003Cdiv>\n          \u003Cdiv class=\"result-amount\" id=\"res-ar-total\">—\u003C\u002Fdiv>\n          \u003Cdiv class=\"result-label\">coût total aller-retour\u003C\u002Fdiv>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"result-breakdown\">\n        \u003Cdiv class=\"breakdown-item\">Aller seul\u003Cspan class=\"breakdown-value\" id=\"res-ar-one\">—\u003C\u002Fspan>\u003C\u002Fdiv>\n        \u003Cdiv class=\"breakdown-item\">Litres totaux\u003Cspan class=\"breakdown-value\" id=\"res-ar-liters\">—\u003C\u002Fspan>\u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003C!-- Comparaison -->\n  \u003Cdiv class=\"tab-panel\" id=\"tab-comparaison\">\n    \u003Cdiv class=\"callout\">\n      \u003Ci data-lucide=\"info\" style=\"width:15px;height:15px\">\u003C\u002Fi>\n      \u003Cspan>Comparez le coût de 4 carburants pour le même trajet (aller simple)\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"form-group\">\n      \u003Cdiv class=\"form-label\">\n        \u003Cspan>Distance\u003C\u002Fspan>\n        \u003Cspan class=\"form-value\" id=\"v-dist-cmp\">500 km\u003C\u002Fspan>\n      \u003C\u002Fdiv>\n      \u003Cinput type=\"range\" id=\"r-dist-cmp\" min=\"50\" max=\"3000\" step=\"50\" value=\"500\"\n        oninput=\"state.dist_cmp=+this.value;render()\">\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"form-group\">\n      \u003Cdiv class=\"form-label\">\n        \u003Cspan>Consommation moyenne\u003C\u002Fspan>\n        \u003Cspan class=\"form-value\" id=\"v-cons-cmp\">7,0 L\u002F100 km\u003C\u002Fspan>\n      \u003C\u002Fdiv>\n      \u003Cinput type=\"range\" id=\"r-cons-cmp\" min=\"4\" max=\"15\" step=\"0.5\" value=\"7\"\n        oninput=\"state.cons_cmp=+this.value;render()\">\n    \u003C\u002Fdiv>\n    \u003Cdiv class=\"comparison-grid\" id=\"cmp-grid\">\u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\n  \u003Cdiv class=\"source\">\n    \u003Ci data-lucide=\"link\" style=\"width:11px;height:11px\">\u003C\u002Fi>\n    Source : \u003Ca href=\"https:\u002F\u002Fprix-carburant.eu\u002Farticle\u002Fprix-carburants-2026-05-09\" target=\"_blank\" rel=\"noopener\">prix-carburant.eu\u003C\u002Fa> — Prix moyens France, mai 2026 &bull; Estimation indicative, prix variables selon les stations\n  \u003C\u002Fdiv>\n\u003C\u002Fmain>\n\n\u003Cscript>\nconst fmtEur = new Intl.NumberFormat('fr-FR', { style: 'currency', currency: 'EUR', minimumFractionDigits: 2, maximumFractionDigits: 2 });\nconst fmtNum = new Intl.NumberFormat('fr-FR', { maximumFractionDigits: 1 });\n\nconst PRICES = { e10: 2.03, sp95: 2.06, sp98: 2.13, diesel: 2.19 };\nconst LABELS = { e10: 'SP95-E10', sp95: 'SP95', sp98: 'SP98', diesel: 'Diesel' };\n\nconst state = {\n  dist_s: 500, fuel_s: 'e10', cons_s: 7,\n  dist_ar: 500, fuel_ar: 'e10', cons_ar: 7,\n  dist_cmp: 500, cons_cmp: 7\n};\n\nfunction cost(dist, fuel, cons) {\n  return (dist \u002F 100) * cons * PRICES[fuel];\n}\n\nfunction render() {\n  \u002F\u002F Aller simple\n  const cs = cost(state.dist_s, state.fuel_s, state.cons_s);\n  const ls = (state.dist_s \u002F 100) * state.cons_s;\n  document.getElementById('v-dist-s').textContent = state.dist_s + ' km';\n  document.getElementById('v-cons-s').textContent = fmtNum.format(state.cons_s) + ' L\u002F100 km';\n  document.getElementById('res-simple-cost').textContent = fmtEur.format(cs);\n  document.getElementById('res-simple-liters').textContent = fmtNum.format(ls) + ' L';\n  document.getElementById('res-simple-per100').textContent = fmtEur.format(cost(100, state.fuel_s, state.cons_s));\n\n  \u002F\u002F Aller-retour\n  const car = cost(state.dist_ar * 2, state.fuel_ar, state.cons_ar);\n  const car1 = cost(state.dist_ar, state.fuel_ar, state.cons_ar);\n  document.getElementById('v-dist-ar').textContent = state.dist_ar + ' km';\n  document.getElementById('v-cons-ar').textContent = fmtNum.format(state.cons_ar) + ' L\u002F100 km';\n  document.getElementById('res-ar-total').textContent = fmtEur.format(car);\n  document.getElementById('res-ar-one').textContent = fmtEur.format(car1);\n  document.getElementById('res-ar-liters').textContent = fmtNum.format((state.dist_ar * 2 \u002F 100) * state.cons_ar) + ' L';\n\n  \u002F\u002F Comparaison\n  document.getElementById('v-dist-cmp').textContent = state.dist_cmp + ' km';\n  document.getElementById('v-cons-cmp').textContent = fmtNum.format(state.cons_cmp) + ' L\u002F100 km';\n  const fuels = ['e10', 'sp95', 'sp98', 'diesel'];\n  const costs = fuels.map(f => ({ f, c: cost(state.dist_cmp, f, state.cons_cmp) }));\n  const minC = Math.min(...costs.map(x => x.c));\n  document.getElementById('cmp-grid').innerHTML = costs.map(({ f, c }) => `\n    \u003Cdiv class=\"comparison-item${c === minC ? ' cheapest' : ''}\">\n      \u003Cdiv>\n        \u003Cdiv class=\"comparison-fuel\">${LABELS[f]}\u003C\u002Fdiv>\n        \u003Cdiv class=\"comparison-price-sub\">${PRICES[f].toFixed(2).replace('.', ',')} €\u002FL\u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n      \u003Cdiv class=\"comparison-right\">\n        ${c === minC ? '\u003Cspan class=\"badge-eco\">+ économique\u003C\u002Fspan>' : ''}\n        \u003Cdiv class=\"comparison-total\">${fmtEur.format(c)}\u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>`).join('');\n}\n\ndocument.querySelectorAll('.tab-btn').forEach(btn => {\n  btn.addEventListener('click', () => {\n    document.querySelectorAll('.tab-btn').forEach(b => b.classList.remove('active'));\n    document.querySelectorAll('.tab-panel').forEach(p => p.classList.remove('active'));\n    btn.classList.add('active');\n    document.getElementById('tab-' + btn.dataset.tab).classList.add('active');\n    const h = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);\n    parent.postMessage({ type: 'resize', height: h }, '*');\n  });\n});\n\ndocument.addEventListener('DOMContentLoaded', () => {\n  lucide.createIcons();\n  render();\n  const ro = new ResizeObserver(() => {\n    const h = Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);\n    parent.postMessage({ type: 'resize', height: h }, '*');\n  });\n  ro.observe(document.documentElement);\n});\n\u003C\u002Fscript>\n\u003C\u002Fbody>\n\u003C\u002Fhtml>\n","generated","consumer","both","https:\u002F\u002Fpub-bdebbd2dad294475a2da0eb657815b6b.r2.dev\u002Ftools\u002Festimateur-carburant-vacances-fc37b2f6b1.webp",[]]