diff --git a/4/ecolyo.c5391e9a8b4de18cce66.js b/4/ecolyo.f22d2e8508212a56cb53.js
similarity index 96%
rename from 4/ecolyo.c5391e9a8b4de18cce66.js
rename to 4/ecolyo.f22d2e8508212a56cb53.js
index 441df88c4c87fc2acaefff98434c98c0054e2ec9..debf88d5c257f40c5cd7d0f1add0dad7430712ac 100644
--- a/4/ecolyo.c5391e9a8b4de18cce66.js
+++ b/4/ecolyo.f22d2e8508212a56cb53.js
@@ -16,7 +16,7 @@ exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE
 
 exports = module.exports = __webpack_require__("JPst")(false);
 // Module
-exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\ndiv.expansion-panel-root,\ndiv.expansion-panel-root.Mui-expanded:last-child {\n  margin: 0.2rem 0;\n}\n\n.export-option-root {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  margin-top: 0.5rem;\n  padding: 0 1.5rem;\n}\n\n.export-option-content {\n  width: 45.75rem;\n}\n@media only screen and (max-width : 768px) {\n  .export-option-content {\n    width: 100%;\n  }\n}\n.export-option-content .MuiAccordionSummary-content {\n  margin: 0;\n}\n.export-option-content .MuiIconButton-edgeEnd {\n  margin: 0;\n}\n.export-option-content .accordion-title {\n  padding-left: 1rem;\n  color: #ffffff;\n}\n.export-option-content .expansion-panel-details {\n  flex-direction: column;\n}\n.export-option-content .expansion-panel-details .content {\n  padding-bottom: 16px;\n}\n.export-option-content .expansion-panel-details .intro {\n  color: #a0a0a0;\n}\n.export-option-content .expansion-panel-details .btn-secondary-negative {\n  border-color: #e0e0e0 !important;\n  height: 40px;\n}\n.export-option-content .expansion-panel-details .checkbox {\n  margin: 0;\n}\n.export-option-content .expansion-panel-details .checkbox input {\n  margin: 0.5rem;\n  border: 1px solid #a0a0a0;\n  border-radius: 2px;\n}\n.export-option-content .expansion-panel-details .answer-checked input:before,\n.export-option-content .expansion-panel-details .answer-checked input:after {\n  background: black;\n}\n.export-option-content .expansion-panel-details .answer-checked input {\n  background: #e3b82a;\n  border: 2px solid #e3b82a;\n}\n.export-option-content .expansion-panel-details .answer-checked input:before {\n  height: 13px;\n  left: 11px;\n  top: 3px;\n}\n.export-option-content .expansion-panel-details .answer-checked input:after {\n  height: 9px;\n  left: 4px;\n}\n.export-option-content div.expansion-panel-summary {\n  padding: 0 0.25rem 0 1rem;\n}", ""]);
+exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\ndiv.expansion-panel-root,\ndiv.expansion-panel-root.Mui-expanded:last-child {\n  margin: 0.2rem 0;\n}\n\n.export-option-root {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  margin-top: 0.5rem;\n  padding: 0 1.5rem;\n}\n\n.export-option-content {\n  width: 45.75rem;\n}\n@media only screen and (max-width : 768px) {\n  .export-option-content {\n    width: 100%;\n  }\n}\n.export-option-content .MuiAccordionSummary-content {\n  margin: 0;\n}\n.export-option-content .MuiIconButton-edgeEnd {\n  margin: 0;\n}\n.export-option-content .accordion-title {\n  color: #ffffff;\n}\n.export-option-content .expansion-panel-details {\n  flex-direction: column;\n}\n.export-option-content .expansion-panel-details .content {\n  padding-bottom: 16px;\n}\n.export-option-content .expansion-panel-details .intro {\n  color: #a0a0a0;\n}\n.export-option-content .expansion-panel-details .btn-secondary-negative {\n  border-color: #e0e0e0 !important;\n  height: 40px;\n}\n.export-option-content .expansion-panel-details .checkbox {\n  margin: 0;\n}\n.export-option-content .expansion-panel-details .checkbox input {\n  margin: 0.5rem;\n  border: 1px solid #a0a0a0;\n  border-radius: 2px;\n}\n.export-option-content .expansion-panel-details .answer-checked input:before,\n.export-option-content .expansion-panel-details .answer-checked input:after {\n  background: black;\n}\n.export-option-content .expansion-panel-details .answer-checked input {\n  background: #e3b82a;\n  border: 2px solid #e3b82a;\n}\n.export-option-content .expansion-panel-details .answer-checked input:before {\n  height: 13px;\n  left: 11px;\n  top: 3px;\n}\n.export-option-content .expansion-panel-details .answer-checked input:after {\n  height: 9px;\n  left: 4px;\n}\n.export-option-content div.expansion-panel-summary {\n  padding: 0 0.25rem 0 1rem;\n}\n.export-option-content div.expansion-panel-summary .expansion-panel-content {\n  gap: 1rem;\n}", ""]);
 
 
 
@@ -2179,6 +2179,8 @@ Object.defineProperty(exports, "__esModule", {
 });
 exports.default = void 0;
 
+var _extends2 = _interopRequireDefault(__webpack_require__("pVnL"));
+
 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__("QILm"));
 
 var _CardActionArea = _interopRequireDefault(__webpack_require__("9pVe"));
@@ -2187,70 +2189,38 @@ var _CardContent = _interopRequireDefault(__webpack_require__("7/eH"));
 
 var _styles = __webpack_require__("DfQ9");
 
-var _fluid = __webpack_require__("5Wkc");
-
 var _react = _interopRequireDefault(__webpack_require__("q1tI"));
 
-var _excluded = ["fluidType"];
+var _utils = __webpack_require__("c+yx");
+
+var _excluded = ["fluidType", "children", "className"];
 var CardBase = (0, _styles.withStyles)({
   root: {
     background: 'var(--greyLinearGradientBackground)',
     boxSizing: 'border-box',
     boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.75)',
-    borderRadius: '4px',
-    margin: '10px 0px 10px 0px'
+    borderRadius: '4px'
   }
 })(_CardActionArea.default);
-var CardElec = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var(--elecColor40)'
-  }
-})(CardBase);
-var CardWater = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var(--waterColor40)'
-  }
-})(CardBase);
-var CardGas = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var(--gasColor40)'
-  }
-})(CardBase);
-var CardMulti = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var( --greyDark)'
-  }
-})(CardBase);
 var CardContentBase = (0, _styles.withStyles)({
   root: {
-    color: 'white'
+    color: 'white',
+    display: 'flex',
+    alignItems: 'center',
+    gap: '1rem',
+    boxSizing: 'border-box'
   }
 })(_CardContent.default);
 
-var GenerateContentCard = function GenerateContentCard(fluidType, children) {
-  return /*#__PURE__*/_react.default.createElement(CardContentBase, null, children);
-};
-
 var StyledCard = function StyledCard(_ref) {
   var fluidType = _ref.fluidType,
+      children = _ref.children,
+      className = _ref.className,
       props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
-
-  switch (fluidType) {
-    case _fluid.FluidType.ELECTRICITY:
-      return /*#__PURE__*/_react.default.createElement(CardElec, props, GenerateContentCard(fluidType, props.children));
-
-    case _fluid.FluidType.WATER:
-      return /*#__PURE__*/_react.default.createElement(CardWater, props, GenerateContentCard(fluidType, props.children));
-
-    case _fluid.FluidType.GAS:
-      return /*#__PURE__*/_react.default.createElement(CardGas, props, GenerateContentCard(fluidType, props.children));
-
-    case _fluid.FluidType.MULTIFLUID:
-      return /*#__PURE__*/_react.default.createElement(CardMulti, props, GenerateContentCard(fluidType, props.children));
-
-    default:
-      return /*#__PURE__*/_react.default.createElement(CardBase, props, /*#__PURE__*/_react.default.createElement(CardContentBase, null, props.children));
-  }
+  var cardClass = className + (fluidType !== undefined ? " ".concat((0, _utils.getFluidName)(fluidType)) : '');
+  return /*#__PURE__*/_react.default.createElement(CardBase, (0, _extends2.default)({}, props, {
+    className: cardClass
+  }), /*#__PURE__*/_react.default.createElement(CardContentBase, null, children));
 };
 
 var _default = StyledCard;
@@ -2328,7 +2298,7 @@ exports.default = _default;
 
 exports = module.exports = __webpack_require__("JPst")(false);
 // Module
-exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\n.profile-type-root {\n  margin-top: 1.5rem;\n  padding: 0 1.5rem;\n}\n.profile-type-root .profile-type-content {\n  margin: 0 auto;\n  width: 100%;\n}\n@media (min-width: 768px) {\n  .profile-type-root .profile-type-content {\n    width: 45.75rem;\n  }\n}\n.profile-type-root .profile-type-content .MuiButtonBase-root {\n  height: 40px;\n  margin: 0;\n}\n.profile-type-root .profile-type-content .btn-secondary-negative {\n  border-color: #e0e0e0;\n  height: 40px;\n}\n.profile-type-root .value {\n  color: #ffffff;\n  padding: 0 0 0.5rem 0;\n}\n.profile-type-root ul {\n  display: flex;\n  flex-wrap: wrap;\n  padding: 0;\n  margin-top: 0;\n}\n.profile-type-root ul li {\n  list-style-type: none;\n  margin-right: 0.5rem;\n}\n.profile-type-root .head {\n  color: #e0e0e0;\n  margin-bottom: 1rem;\n}\n.profile-type-root .label {\n  color: #a0a0a0;\n  padding-bottom: 0.5rem;\n}\n.profile-type-root .profile-container {\n  display: flex;\n  flex-direction: column;\n  flex-wrap: wrap;\n  width: 100%;\n  margin: 0 1.3rem 1rem;\n}\n@media only screen and (max-width : 768px) {\n  .profile-type-root .profile-container {\n    margin: 0 0 0.25rem;\n  }\n}\n.profile-type-root .fields {\n  align-items: flex-start;\n  padding: 8px 0px;\n  width: 100%;\n}\n.profile-type-root .profile-title {\n  padding-left: 1rem;\n}\n.profile-type-root button.profile-link {\n  color: #e0e0e0;\n  text-decoration: none;\n  min-height: 4rem;\n}\n.profile-type-root button.profile-link .profile-icon {\n  vertical-align: middle;\n}\n.profile-type-root button.profile-link .link-label {\n  margin-left: 1rem;\n}\n.profile-type-root button.profile-link > button {\n  margin-bottom: 0;\n}\n.profile-type-root button.profile-link > button > div {\n  padding: 0.3rem 1rem;\n}\n.profile-type-root div.expansion-panel-summary {\n  padding: 0 0.25rem 0 1rem;\n}\n.profile-type-root .MuiCardContent-root {\n  padding: 0 1rem !important;\n}", ""]);
+exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\n.profile-type-root {\n  margin-top: 1.5rem;\n  padding: 0 1.5rem;\n}\n.profile-type-root .profile-type-content {\n  margin: 0 auto;\n  width: 100%;\n}\n@media (min-width: 768px) {\n  .profile-type-root .profile-type-content {\n    width: 45.75rem;\n  }\n}\n.profile-type-root .profile-type-content .MuiButtonBase-root {\n  height: 40px;\n  margin: 0;\n}\n.profile-type-root .profile-type-content .btn-secondary-negative {\n  border-color: #e0e0e0;\n  height: 40px;\n}\n.profile-type-root .value {\n  color: #ffffff;\n  padding: 0 0 0.5rem 0;\n}\n.profile-type-root ul {\n  display: flex;\n  flex-wrap: wrap;\n  padding: 0;\n  margin-top: 0;\n}\n.profile-type-root ul li {\n  list-style-type: none;\n  margin-right: 0.5rem;\n}\n.profile-type-root .head {\n  color: #e0e0e0;\n  margin-bottom: 1rem;\n}\n.profile-type-root .label {\n  color: #a0a0a0;\n  padding-bottom: 0.5rem;\n}\n.profile-type-root .profile-container {\n  display: flex;\n  flex-direction: column;\n  flex-wrap: wrap;\n  width: 100%;\n  margin: 0 1.3rem 1rem;\n}\n@media only screen and (max-width : 768px) {\n  .profile-type-root .profile-container {\n    margin: 0 0 0.25rem;\n  }\n}\n.profile-type-root .fields {\n  align-items: flex-start;\n  padding: 8px 0px;\n  width: 100%;\n}\n.profile-type-root .profile-title {\n  padding-left: 1rem;\n}\n.profile-type-root button.profile-link {\n  height: 64px !important;\n}\n.profile-type-root button.profile-link .profile-icon {\n  vertical-align: middle;\n}\n.profile-type-root button.profile-link > button {\n  margin-bottom: 0;\n}\n.profile-type-root button.profile-link > button > div {\n  padding: 0.3rem 1rem;\n}\n.profile-type-root div.expansion-panel-summary {\n  padding: 0 0.25rem 0 1rem;\n}\n.profile-type-root .MuiCardContent-root {\n  padding: 0 1rem !important;\n}", ""]);
 
 
 
diff --git a/5/ecolyo.342b80dc40a66b9042b7.js b/5/ecolyo.e032256c323f91a65e66.js
similarity index 99%
rename from 5/ecolyo.342b80dc40a66b9042b7.js
rename to 5/ecolyo.e032256c323f91a65e66.js
index b4142b15239c5c6034299a1be0bb296a43cff2bb..1d058495f8cdd8752715ce9c6e913e820ea5a06b 100644
--- a/5/ecolyo.342b80dc40a66b9042b7.js
+++ b/5/ecolyo.e032256c323f91a65e66.js
@@ -2791,7 +2791,7 @@ if(false) {}
 
 exports = module.exports = __webpack_require__("JPst")(false);
 // Module
-exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\n.consumptionview-loading {\n  background-color: #121212;\n  height: 80vh;\n  width: 100%;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n}\n\n.consumptionview-content {\n  background-color: #121212;\n}\n.consumptionview-content.--hidden {\n  display: none;\n}\n\n.konnector-section {\n  background-color: #121212;\n  margin: 0 auto;\n  width: 45.75rem;\n  box-sizing: border-box;\n}\n@media only screen and (max-width : 768px) {\n  .konnector-section {\n    width: 100%;\n    padding: 0rem 1rem 3rem 1rem;\n  }\n}", ""]);
+exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\n.consumptionview-loading {\n  background-color: #121212;\n  height: 80vh;\n  width: 100%;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n}\n\n.consumptionview-content {\n  background-color: #121212;\n}\n.consumptionview-content.--hidden {\n  display: none;\n}\n\n.konnector-section {\n  background-color: #121212;\n  margin: 0 auto;\n  width: 45.75rem;\n  box-sizing: border-box;\n  padding-bottom: 1rem;\n}\n@media only screen and (max-width : 768px) {\n  .konnector-section {\n    width: 100%;\n    padding-left: 1rem;\n    padding-right: 1rem;\n  }\n}", ""]);
 
 
 
@@ -4114,6 +4114,8 @@ var _reactRouterDom = __webpack_require__("SOjZ");
 
 var _picto = __webpack_require__("6DBe");
 
+var _utils = __webpack_require__("c+yx");
+
 __webpack_require__("kpuL");
 
 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -4131,7 +4133,7 @@ var KonnectorViewerList = function KonnectorViewerList() {
 
   var navigate = (0, _reactRouterDom.useNavigate)();
   var goToFluid = (0, _react.useCallback)(function (fluidType) {
-    navigate("/consumption/".concat(_fluid.FluidType[fluidType].toLowerCase()));
+    navigate("/consumption/".concat((0, _utils.getFluidName)(fluidType)));
   }, [navigate]);
   return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, fluidStatus.map(function (fluidStatusItem, key) {
     return /*#__PURE__*/_react.default.createElement(_StyledCard.default, {
@@ -4139,7 +4141,8 @@ var KonnectorViewerList = function KonnectorViewerList() {
       className: "connection-card",
       onClick: function onClick() {
         return goToFluid(fluidStatusItem.fluidType);
-      }
+      },
+      fluidType: fluidStatusItem.fluidType
     }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
       icon: (0, _picto.getAddPicto)(fluidStatusItem.fluidType),
       size: 36
@@ -4641,7 +4644,7 @@ if(false) {}
 
 exports = module.exports = __webpack_require__("JPst")(false);
 // Module
-exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\nbutton.connection-card div {\n  display: flex;\n  align-items: center;\n  justify-content: start;\n  height: 80px;\n  font-weight: normal;\n  box-sizing: border-box;\n}\nbutton.connection-card div svg {\n  margin-right: 1.5rem;\n}", ""]);
+exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\nbutton.connection-card {\n  height: 80px;\n  margin-bottom: 1rem;\n}\nbutton.connection-card.electricity {\n  border: 1px solid var(--elecColor40);\n}\nbutton.connection-card.gas {\n  border: 1px solid var(--gasColor40);\n}\nbutton.connection-card.water {\n  border: 1px solid var(--waterColor40);\n}", ""]);
 
 
 
@@ -5409,7 +5412,7 @@ var FluidChart = function FluidChart(_ref) {
 
   var lowercaseTimeStep = _timeStep.TimeStep[currentTimeStep].toLowerCase();
 
-  var lowercaseFluidType = _fluid.FluidType[fluidType].toLowerCase();
+  var lowercaseFluidType = (0, _utils.getFluidName)(fluidType);
 
   var handleChangeSwitch = /*#__PURE__*/function () {
     var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
@@ -5426,7 +5429,7 @@ var FluidChart = function FluidChart(_ref) {
               return _usageEvent2.default.addEvent(client, {
                 type: _usageEvent.UsageEventType.CONSUMPTION_COMPARE_EVENT,
                 target: _timeStep.TimeStep[currentTimeStep].toLowerCase(),
-                context: _fluid.FluidType[fluidType].toLowerCase()
+                context: lowercaseFluidType
               });
 
             case 3:
@@ -5732,11 +5735,11 @@ var FluidButton = function FluidButton(_ref) {
             _context.next = 2;
             return _usageEvent2.default.addEvent(client, {
               type: _usageEvent.UsageEventType.NAVIGATION_EVENT,
-              target: _fluid.FluidType[fluidType].toLowerCase()
+              target: (0, _utils.getFluidName)(fluidType)
             });
 
           case 2:
-            navigate(fluidType === _fluid.FluidType.MULTIFLUID ? '/consumption' : "/consumption/".concat(_fluid.FluidType[fluidType].toLowerCase()));
+            navigate(fluidType === _fluid.FluidType.MULTIFLUID ? '/consumption' : "/consumption/".concat((0, _utils.getFluidName)(fluidType)));
 
           case 3:
           case "end":
@@ -5753,7 +5756,7 @@ var FluidButton = function FluidButton(_ref) {
   };
 
   (0, _react.useEffect)(function () {
-    // Show errors only on konnected konnectors that are in error, outdated, with no data (specific case), and not in multifluid
+    // Show errors only on connected konnectors that are in error, outdated, with no data (specific case), and not in multifluid
     if (fluidType !== _fluid.FluidType.MULTIFLUID && isConnected() && isErrored() || fluidType !== _fluid.FluidType.MULTIFLUID && isConnected() && isOutdated()) {
       setShowError(true);
     }
@@ -5774,7 +5777,7 @@ var FluidButton = function FluidButton(_ref) {
     size: 22,
     className: "notif-error"
   }), /*#__PURE__*/_react.default.createElement("div", {
-    className: "fluid-title ".concat(_fluid.FluidType[fluidType].toLowerCase(), " ").concat(isActive && 'active', " text-14-normal")
+    className: "fluid-title ".concat((0, _utils.getFluidName)(fluidType), " ").concat(isActive && 'active', " text-14-normal")
   }, t('FLUID.' + _fluid.FluidType[fluidType] + '.LABEL')));
 };
 
@@ -6494,6 +6497,8 @@ var _reactRouterDom = __webpack_require__("SOjZ");
 
 var _global = __webpack_require__("c4IZ");
 
+var _utils = __webpack_require__("c+yx");
+
 __webpack_require__("B3W9");
 
 function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -6566,7 +6571,7 @@ var ExpiredConsentModal = function ExpiredConsentModal(_ref) {
     icon: fluidType === _fluid.FluidType.ELECTRICITY ? _consentOutdatedEnedis.default : _consentOutdatedGrdf.default,
     size: 135
   })), /*#__PURE__*/_react.default.createElement("div", {
-    className: "text-20-bold title ".concat(_fluid.FluidType[fluidType].toLowerCase())
+    className: "text-20-bold title ".concat((0, _utils.getFluidName)(fluidType))
   }, t("consent_outdated.title.".concat(fluidType))), /*#__PURE__*/_react.default.createElement("div", {
     className: "text-16-normal text1"
   }, t("consent_outdated.text1.".concat(fluidType))), /*#__PURE__*/_react.default.createElement("div", {
@@ -6740,6 +6745,8 @@ Object.defineProperty(exports, "__esModule", {
 });
 exports.default = void 0;
 
+var _extends2 = _interopRequireDefault(__webpack_require__("pVnL"));
+
 var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__("QILm"));
 
 var _CardActionArea = _interopRequireDefault(__webpack_require__("9pVe"));
@@ -6748,70 +6755,38 @@ var _CardContent = _interopRequireDefault(__webpack_require__("7/eH"));
 
 var _styles = __webpack_require__("DfQ9");
 
-var _fluid = __webpack_require__("5Wkc");
-
 var _react = _interopRequireDefault(__webpack_require__("q1tI"));
 
-var _excluded = ["fluidType"];
+var _utils = __webpack_require__("c+yx");
+
+var _excluded = ["fluidType", "children", "className"];
 var CardBase = (0, _styles.withStyles)({
   root: {
     background: 'var(--greyLinearGradientBackground)',
     boxSizing: 'border-box',
     boxShadow: '0px 4px 8px rgba(0, 0, 0, 0.75)',
-    borderRadius: '4px',
-    margin: '10px 0px 10px 0px'
+    borderRadius: '4px'
   }
 })(_CardActionArea.default);
-var CardElec = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var(--elecColor40)'
-  }
-})(CardBase);
-var CardWater = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var(--waterColor40)'
-  }
-})(CardBase);
-var CardGas = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var(--gasColor40)'
-  }
-})(CardBase);
-var CardMulti = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var( --greyDark)'
-  }
-})(CardBase);
 var CardContentBase = (0, _styles.withStyles)({
   root: {
-    color: 'white'
+    color: 'white',
+    display: 'flex',
+    alignItems: 'center',
+    gap: '1rem',
+    boxSizing: 'border-box'
   }
 })(_CardContent.default);
 
-var GenerateContentCard = function GenerateContentCard(fluidType, children) {
-  return /*#__PURE__*/_react.default.createElement(CardContentBase, null, children);
-};
-
 var StyledCard = function StyledCard(_ref) {
   var fluidType = _ref.fluidType,
+      children = _ref.children,
+      className = _ref.className,
       props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
-
-  switch (fluidType) {
-    case _fluid.FluidType.ELECTRICITY:
-      return /*#__PURE__*/_react.default.createElement(CardElec, props, GenerateContentCard(fluidType, props.children));
-
-    case _fluid.FluidType.WATER:
-      return /*#__PURE__*/_react.default.createElement(CardWater, props, GenerateContentCard(fluidType, props.children));
-
-    case _fluid.FluidType.GAS:
-      return /*#__PURE__*/_react.default.createElement(CardGas, props, GenerateContentCard(fluidType, props.children));
-
-    case _fluid.FluidType.MULTIFLUID:
-      return /*#__PURE__*/_react.default.createElement(CardMulti, props, GenerateContentCard(fluidType, props.children));
-
-    default:
-      return /*#__PURE__*/_react.default.createElement(CardBase, props, /*#__PURE__*/_react.default.createElement(CardContentBase, null, props.children));
-  }
+  var cardClass = className + (fluidType !== undefined ? " ".concat((0, _utils.getFluidName)(fluidType)) : '');
+  return /*#__PURE__*/_react.default.createElement(CardBase, (0, _extends2.default)({}, props, {
+    className: cardClass
+  }), /*#__PURE__*/_react.default.createElement(CardContentBase, null, children));
 };
 
 var _default = StyledCard;
@@ -7681,6 +7656,8 @@ var _usageEvent2 = _interopRequireDefault(__webpack_require__("dECN"));
 
 var _chart = __webpack_require__("idK9");
 
+var _utils = __webpack_require__("c+yx");
+
 __webpack_require__("Nxpj");
 
 var TimeStepSelector = function TimeStepSelector(_ref) {
@@ -7710,7 +7687,7 @@ var TimeStepSelector = function TimeStepSelector(_ref) {
     _usageEvent2.default.addEvent(client, {
       type: _usageEvent.UsageEventType.CONSUMPTION_CHANGE_TIMESTEP_EVENT,
       target: _timeStep.TimeStep[_timeStep.TimeStep.WEEK].toLowerCase(),
-      context: _fluid.FluidType[fluidType].toLowerCase()
+      context: (0, _utils.getFluidName)(fluidType)
     });
 
     dispatch((0, _chart.setCurrentIndex)(0));
@@ -7724,7 +7701,7 @@ var TimeStepSelector = function TimeStepSelector(_ref) {
     _usageEvent2.default.addEvent(client, {
       type: _usageEvent.UsageEventType.CONSUMPTION_CHANGE_TIMESTEP_EVENT,
       target: _timeStep.TimeStep[currentTimeStep].toLowerCase(),
-      context: _fluid.FluidType[fluidType].toLowerCase()
+      context: (0, _utils.getFluidName)(fluidType)
     });
 
     dispatch((0, _chart.setCurrentTimeStep)(targetTimestep));
diff --git a/6/ecolyo.bbfb6bfe9fecbfa83e16.js b/6/ecolyo.1540774c38e7b6124ec7.js
similarity index 94%
rename from 6/ecolyo.bbfb6bfe9fecbfa83e16.js
rename to 6/ecolyo.1540774c38e7b6124ec7.js
index 75ba95d614e0fad1f27ba1409eef58fb6b5b76d8..baef61fdfcd52bd54e48a205b6b252e5877c21de 100644
--- a/6/ecolyo.bbfb6bfe9fecbfa83e16.js
+++ b/6/ecolyo.1540774c38e7b6124ec7.js
@@ -551,7 +551,7 @@ if(false) {}
 
 exports = module.exports = __webpack_require__("JPst")(false);
 // Module
-exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\n.ec {\n  display: flex;\n  justify-content: center;\n  width: 100%;\n  height: 100%;\n}\n.ec .ecogesture-card-notif {\n  position: absolute;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  right: 8px;\n  top: 8px;\n  width: 1.25rem;\n  height: 1.25rem;\n  color: #25262b;\n  border-radius: 50%;\n  border: 1px solid #25262b;\n  z-index: 1;\n  background: radial-gradient(105.25% 64.58% at 49.68% 70.83%, rgba(1, 153, 163, 0.5) 0%, rgba(255, 255, 255, 0) 100%), #58ffff;\n  font-size: 12px;\n}\n.ec .ec-content {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: space-around;\n}\n.ec .ec-content.ec-content-unlocked {\n  padding: 0.4rem 0;\n}\n.ec .ec-content.ec-content-challenge {\n  padding: 0.5rem 0;\n}\n.ec .ec-content .ec-content-icon {\n  min-height: 50px;\n}\n.ec .ec-content .ec-content-short-name {\n  display: flex;\n  flex: 1;\n  align-items: center;\n  text-align: center;\n  min-height: 38px;\n}\n.ec .ec-content .ec-content-efficiency {\n  margin-top: 0.5rem;\n  color: #a0a0a0;\n}\n\n.cp-eg-1 {\n  height: 8rem;\n  width: 100%;\n  margin-right: 0.25rem;\n  text-align: center;\n}\n\n.cp-eg-2 {\n  height: 8rem;\n  width: 100%;\n  margin-left: 0.25rem;\n  text-align: center;\n}", ""]);
+exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\n.ec-content {\n  height: 100%;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: space-around;\n}\n.ec-content.ec-content-unlocked {\n  padding: 0.4rem 0;\n}\n.ec-content.ec-content-challenge {\n  padding: 0.5rem 0;\n}\n.ec-content .ec-content-short-name {\n  display: flex;\n  flex: 1;\n  align-items: center;\n  text-align: center;\n}\n\n.cp-eg-1 {\n  height: 8rem;\n  width: 100%;\n  margin-right: 0.25rem;\n  text-align: center;\n}\n\n.cp-eg-2 {\n  height: 8rem;\n  width: 100%;\n  margin-left: 0.25rem;\n  text-align: center;\n}", ""]);
 
 
 
@@ -580,11 +580,10 @@ var _styles = __webpack_require__("DfQ9");
 
 var _react = _interopRequireDefault(__webpack_require__("q1tI"));
 
-var _excluded = ["border", "newEcogesture"];
+var _excluded = ["children"];
 var CardBase = (0, _styles.withStyles)({
   root: {
     background: 'var(--greyLinearGradientBackground)',
-    // border: '1px solid',
     boxSizing: 'border-box',
     boxShadow: '0px 4px 16px black',
     borderRadius: '4px',
@@ -592,42 +591,6 @@ var CardBase = (0, _styles.withStyles)({
     minHeight: '72px'
   }
 })(_CardActionArea.default);
-var CardNew = (0, _styles.withStyles)({
-  '@keyframes glowAnimation': {
-    '0%': {
-      boxShadow: '0px 0px 4px var(--blue)'
-    },
-    '50%': {
-      boxShadow: '0px 0px 16px var(--blue)'
-    },
-    '100%': {
-      boxShadow: '0px 0px 4px var(--blue)'
-    }
-  },
-  root: {
-    border: '1px solid var(--blue)',
-    animation: '2s glowAnimation linear infinite',
-    color: 'white',
-    height: '100%',
-    padding: 0
-  }
-})(CardBase);
-var CardBlueBorderContentBase = (0, _styles.withStyles)({
-  root: {
-    border: '1px solid var(--blue)',
-    height: '100%',
-    padding: 0
-  }
-})(CardBase);
-var CardChallengeBase = (0, _styles.withStyles)({
-  root: {
-    height: '100%',
-    padding: 0,
-    display: 'flex',
-    alignItems: 'center',
-    justifyContent: 'center'
-  }
-})(_CardContent.default);
 var CardContentBase = (0, _styles.withStyles)({
   root: {
     color: 'white',
@@ -636,22 +599,10 @@ var CardContentBase = (0, _styles.withStyles)({
   }
 })(_CardContent.default);
 
-var GenerateContentCard = function GenerateContentCard(children) {
-  return /*#__PURE__*/_react.default.createElement(CardChallengeBase, null, children);
-};
-
 var StyledEcogestureCard = function StyledEcogestureCard(_ref) {
-  var border = _ref.border,
-      newEcogesture = _ref.newEcogesture,
+  var children = _ref.children,
       props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
-
-  if (newEcogesture) {
-    return /*#__PURE__*/_react.default.createElement(CardNew, props, GenerateContentCard(props.children));
-  } else if (border) {
-    return /*#__PURE__*/_react.default.createElement(CardBlueBorderContentBase, props, GenerateContentCard(props.children));
-  } else {
-    return /*#__PURE__*/_react.default.createElement(CardBase, props, /*#__PURE__*/_react.default.createElement(CardContentBase, null, props.children));
-  }
+  return /*#__PURE__*/_react.default.createElement(CardBase, props, /*#__PURE__*/_react.default.createElement(CardContentBase, null, children));
 };
 
 var _default = StyledEcogestureCard;
@@ -784,22 +735,16 @@ var EcogestureCard = function EcogestureCard(_ref) {
     component: _reactRouterDom.Link,
     className: "ecogesture-list-item"
   }, /*#__PURE__*/_react.default.createElement(_StyledEcogestureCard.default, null, /*#__PURE__*/_react.default.createElement("div", {
-    className: "ec"
-  }, /*#__PURE__*/_react.default.createElement("div", {
-    className: "ec-content "
-  }, /*#__PURE__*/_react.default.createElement("div", {
-    className: "ec-content-icon"
+    className: "ec-content"
   }, /*#__PURE__*/_react.default.createElement(_StyledIcon.default, {
     className: "Icon",
     icon: ecogestureIcon,
     size: 50
-  })), /*#__PURE__*/_react.default.createElement("div", {
+  }), /*#__PURE__*/_react.default.createElement("div", {
     className: "ec-content-short-name text-15-bold"
-  }, ecogesture.shortName), /*#__PURE__*/_react.default.createElement("div", {
-    className: "ec-content-efficiency"
-  }, /*#__PURE__*/_react.default.createElement(_EfficiencyRating.default, {
+  }, ecogesture.shortName), /*#__PURE__*/_react.default.createElement(_EfficiencyRating.default, {
     result: Math.round(ecogesture.efficiency)
-  }))))));
+  }))));
 };
 
 var _default = EcogestureCard;
diff --git a/7/ecolyo.6c533b265fd43b5164be.js b/7/ecolyo.8129fd19ad98c11c5897.js
similarity index 97%
rename from 7/ecolyo.6c533b265fd43b5164be.js
rename to 7/ecolyo.8129fd19ad98c11c5897.js
index b6abaf046bdcb42e177c00198393c04dd7f0a5d1..ebdbafc5578817b4d0a0dedc4a896bcd760affdf 100644
--- a/7/ecolyo.6c533b265fd43b5164be.js
+++ b/7/ecolyo.8129fd19ad98c11c5897.js
@@ -473,7 +473,7 @@ var DataloadSectionDetail = function DataloadSectionDetail(_ref) {
     var _classNames;
 
     return /*#__PURE__*/_react.default.createElement("div", {
-      className: (0, _classnames.default)('dataloadvisualizer-euro text-16-normal', (_classNames = {}, (0, _defineProperty2.default)(_classNames, "".concat(_fluid.FluidType[fluidType].toLowerCase()), dataloadSectionType !== _dataload.DataloadSectionType.LEFT), (0, _defineProperty2.default)(_classNames, "".concat(_fluid.FluidType[fluidType].toLowerCase(), "-compare"), dataloadSectionType === _dataload.DataloadSectionType.LEFT), _classNames))
+      className: (0, _classnames.default)('dataloadvisualizer-euro text-16-normal', (_classNames = {}, (0, _defineProperty2.default)(_classNames, "".concat((0, _utils.getFluidName)(fluidType)), dataloadSectionType !== _dataload.DataloadSectionType.LEFT), (0, _defineProperty2.default)(_classNames, "".concat((0, _utils.getFluidName)(fluidType), "-compare"), dataloadSectionType === _dataload.DataloadSectionType.LEFT), _classNames))
     }, "".concat((0, _utils.formatNumberValues)(converterService.LoadToEuro(dataload.value, fluidType, dataload.price ? dataload.price : null)), " \u20AC"));
   }
 
@@ -509,10 +509,10 @@ var DataloadSectionDetail = function DataloadSectionDetail(_ref) {
   return /*#__PURE__*/_react.default.createElement("div", {
     className: "dataloadvisualizer-euro text-16-normal"
   }, /*#__PURE__*/_react.default.createElement(_reactRouterDom.NavLink, {
-    to: "/consumption/".concat(_fluid.FluidType[fluidType].toLowerCase()),
+    to: "/consumption/".concat((0, _utils.getFluidName)(fluidType)),
     className: "dataloadvisualizer-euro-link"
   }, /*#__PURE__*/_react.default.createElement("div", {
-    className: "dataloadvisualizer-euro-fluid ".concat(_fluid.FluidType[fluidType].toLowerCase())
+    className: "dataloadvisualizer-euro-fluid ".concat((0, _utils.getFluidName)(fluidType))
   }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
     className: "dataloadvisualizer-euro-fluid-icon",
     icon: (0, _picto.getNavPicto)(fluidType, true, true),
@@ -728,6 +728,8 @@ var _fluid = __webpack_require__("5Wkc");
 
 var _react = _interopRequireDefault(__webpack_require__("q1tI"));
 
+var _utils = __webpack_require__("c+yx");
+
 var _DataloadSectionDetail = _interopRequireDefault(__webpack_require__("Np/d"));
 
 var _DataloadSectionValue = _interopRequireDefault(__webpack_require__("jx3z"));
@@ -756,7 +758,7 @@ var DataloadSection = function DataloadSection(_ref) {
   return /*#__PURE__*/_react.default.createElement("div", {
     className: (0, _classnames.default)('dataloadvisualizer-section', (_classNames = {}, (0, _defineProperty2.default)(_classNames, 'dataloadvisualizer-section-left', dataloadSectionType === _dataload.DataloadSectionType.LEFT), (0, _defineProperty2.default)(_classNames, 'dataloadvisualizer-section-right', dataloadSectionType === _dataload.DataloadSectionType.RIGHT), _classNames))
   }, /*#__PURE__*/_react.default.createElement("div", {
-    className: (0, _classnames.default)('dataloadvisualizer-value', 'text-36-bold', (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, "".concat(_fluid.FluidType[fluidType].toLowerCase(), "-compare"), dataloadSectionType === _dataload.DataloadSectionType.LEFT), (0, _defineProperty2.default)(_classNames2, "".concat(_fluid.FluidType[fluidType].toLowerCase()), dataloadSectionType === _dataload.DataloadSectionType.NO_COMPARE || dataloadSectionType === _dataload.DataloadSectionType.RIGHT), (0, _defineProperty2.default)(_classNames2, 'multifluid-compare-color', dataloadSectionType === _dataload.DataloadSectionType.RIGHT && fluidType === _fluid.FluidType.MULTIFLUID), _classNames2))
+    className: (0, _classnames.default)('dataloadvisualizer-value', 'text-36-bold', (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, "".concat((0, _utils.getFluidName)(fluidType), "-compare"), dataloadSectionType === _dataload.DataloadSectionType.LEFT), (0, _defineProperty2.default)(_classNames2, "".concat((0, _utils.getFluidName)(fluidType)), dataloadSectionType === _dataload.DataloadSectionType.NO_COMPARE || dataloadSectionType === _dataload.DataloadSectionType.RIGHT), (0, _defineProperty2.default)(_classNames2, 'multifluid-compare-color', dataloadSectionType === _dataload.DataloadSectionType.RIGHT && fluidType === _fluid.FluidType.MULTIFLUID), _classNames2))
   }, /*#__PURE__*/_react.default.createElement(_DataloadSectionValue.default, {
     dataload: dataload,
     fluidType: fluidType,
diff --git a/app/ecolyo.87ba11e37aca70492b1f.js b/app/ecolyo.0a3b91f6b431f1403ad4.js
similarity index 99%
rename from app/ecolyo.87ba11e37aca70492b1f.js
rename to app/ecolyo.0a3b91f6b431f1403ad4.js
index 8c51ecb1d07535ae8ec5215279fb47cc0a70c635..27a65a8427c70fbe2e1969806369d100ce671f1c 100644
--- a/app/ecolyo.87ba11e37aca70492b1f.js
+++ b/app/ecolyo.0a3b91f6b431f1403ad4.js
@@ -64,7 +64,7 @@
 /******/
 /******/ 	// script path function
 /******/ 	function jsonpScriptSrc(chunkId) {
-/******/ 		return __webpack_require__.p + "" + ({}[chunkId]||chunkId) + "/ecolyo." + {"1":"c44aefc530d1de68ee3f","3":"5c854707901b5b5504d6","4":"c5391e9a8b4de18cce66","5":"342b80dc40a66b9042b7","6":"bbfb6bfe9fecbfa83e16","7":"6c533b265fd43b5164be","8":"a9363dc7eb1de5bcc528","9":"4facae32c2f3722bac49","10":"e8a00fc8bc16cb5a9dfd"}[chunkId] + ".js"
+/******/ 		return __webpack_require__.p + "" + ({}[chunkId]||chunkId) + "/ecolyo." + {"1":"c44aefc530d1de68ee3f","3":"5c854707901b5b5504d6","4":"f22d2e8508212a56cb53","5":"e032256c323f91a65e66","6":"1540774c38e7b6124ec7","7":"8129fd19ad98c11c5897","8":"a9363dc7eb1de5bcc528","9":"4facae32c2f3722bac49","10":"e8a00fc8bc16cb5a9dfd"}[chunkId] + ".js"
 /******/ 	}
 /******/
 /******/ 	// The require function
@@ -10548,30 +10548,26 @@ var CozyBar = function CozyBar(_ref) {
     dispatch((0, _modal.openFeedbackModal)(true));
   };
 
-  var cozyBarCustom = function cozyBarCustom(screen) {
-    if (screen === _screen.ScreenType.MOBILE) {
-      return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, displayBackArrow && /*#__PURE__*/_react.default.createElement(BarLeft, null, /*#__PURE__*/_react.default.createElement(_StyledIconButton.default, {
-        "aria-label": t('header.accessibility.button_back'),
-        className: "cv-button",
-        icon: _backArrow.default,
-        onClick: handleClickBack
-      })), /*#__PURE__*/_react.default.createElement(BarCenter, null, /*#__PURE__*/_react.default.createElement("div", {
-        className: "cozy-bar"
-      }, /*#__PURE__*/_react.default.createElement("span", {
-        className: "app-title"
-      }, t(titleKey)))), /*#__PURE__*/_react.default.createElement(BarRight, null, /*#__PURE__*/_react.default.createElement(_StyledIconButton.default, {
-        "aria-label": t('header.accessibility.button_open_feedbacks'),
-        className: "cv-button",
-        icon: _feedback.default,
-        sized: 22,
-        onClick: handleClickFeedbacks
-      })));
-    }
-
+  if (screenType === _screen.ScreenType.MOBILE) {
+    return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, displayBackArrow && /*#__PURE__*/_react.default.createElement(BarLeft, null, /*#__PURE__*/_react.default.createElement(_StyledIconButton.default, {
+      "aria-label": t('header.accessibility.button_back'),
+      className: "cv-button",
+      icon: _backArrow.default,
+      onClick: handleClickBack
+    })), /*#__PURE__*/_react.default.createElement(BarCenter, null, /*#__PURE__*/_react.default.createElement("div", {
+      className: "cozy-bar"
+    }, /*#__PURE__*/_react.default.createElement("span", {
+      className: "app-title"
+    }, t(titleKey)))), /*#__PURE__*/_react.default.createElement(BarRight, null, /*#__PURE__*/_react.default.createElement(_StyledIconButton.default, {
+      "aria-label": t('header.accessibility.button_open_feedbacks'),
+      className: "cv-button",
+      icon: _feedback.default,
+      sized: 22,
+      onClick: handleClickFeedbacks
+    })));
+  } else {
     return null;
-  };
-
-  return cozyBarCustom(screenType);
+  }
 };
 
 var _default = CozyBar;
@@ -24562,6 +24558,7 @@ Object.defineProperty(exports, "__esModule", {
 });
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = void 0;
+exports.getFluidName = getFluidName;
 exports.getFluidType = getFluidType;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
@@ -24629,6 +24626,14 @@ function getKonnectorSlug(fluidType) {
       throw new Error('unknown fluidtype');
   }
 }
+/** Return lowercase fluidtype
+ * @example FluidType.ELECTRICITY => 'electricity'
+ */
+
+
+function getFluidName(fluidType) {
+  return _fluid.FluidType[fluidType].toLowerCase();
+}
 
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
diff --git a/index.html b/index.html
index a15320e25dd693a4087bd6b7775d4b1757d8b23b..d620dc91cf8c5d7e2ddd8e637c26e40f51aa1d05 100644
--- a/index.html
+++ b/index.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="{{.Locale}}"><head><meta charset="utf-8"><title>Ecolyo</title><link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32"><link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16"><!-- PWA Manifest --><link rel="manifest" href="/manifest.json" crossorigin="use-credentials"><link rel="mask-icon" href="/safari-pinned-tab.svg" color="#297EF2"><meta name="viewport" content="width=device-width,height=device-height,initial-scale=1,viewport-fit=cover"><!-- PWA Chrome --><link rel="icon" sizes="192x192" href="/android-chrome-192x192.png"><link rel="icon" sizes="512x512" href="/android-chrome-512x512.png"><!-- PWA iOS --><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"><link rel="apple-touch-startup-image" href="/apple-touch-icon.png"><meta name="apple-mobile-web-app-title" content="Ecolyo"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><!-- PWA Colors --><meta name="theme-color" content="#343641"><meta name="background-color" content="#121212">{{.ThemeCSS}} {{.CozyBar}}<script src="//{{.Domain}}/assets/js/piwik.js"></script></head><body><div role="application" class="application" data-cozy="{{.CozyData}}"><script src="vendors/ecolyo.69beab954af56959f24c.js"></script><script src="app/ecolyo.87ba11e37aca70492b1f.js"></script></div></body></html>
\ No newline at end of file
+<!DOCTYPE html><html lang="{{.Locale}}"><head><meta charset="utf-8"><title>Ecolyo</title><link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32"><link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16"><!-- PWA Manifest --><link rel="manifest" href="/manifest.json" crossorigin="use-credentials"><link rel="mask-icon" href="/safari-pinned-tab.svg" color="#297EF2"><meta name="viewport" content="width=device-width,height=device-height,initial-scale=1,viewport-fit=cover"><!-- PWA Chrome --><link rel="icon" sizes="192x192" href="/android-chrome-192x192.png"><link rel="icon" sizes="512x512" href="/android-chrome-512x512.png"><!-- PWA iOS --><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"><link rel="apple-touch-startup-image" href="/apple-touch-icon.png"><meta name="apple-mobile-web-app-title" content="Ecolyo"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><!-- PWA Colors --><meta name="theme-color" content="#343641"><meta name="background-color" content="#121212">{{.ThemeCSS}} {{.CozyBar}}<script src="//{{.Domain}}/assets/js/piwik.js"></script></head><body><div role="application" class="application" data-cozy="{{.CozyData}}"><script src="vendors/ecolyo.69beab954af56959f24c.js"></script><script src="app/ecolyo.0a3b91f6b431f1403ad4.js"></script></div></body></html>
\ No newline at end of file
diff --git a/services/aggregatorUsageEvents/ecolyo.js b/services/aggregatorUsageEvents/ecolyo.js
index 730931371aad75c0149c9683a3dea9c4a2d582ea..0208c1ccea52ce4a099763b4610e9ddcace06d23 100644
--- a/services/aggregatorUsageEvents/ecolyo.js
+++ b/services/aggregatorUsageEvents/ecolyo.js
@@ -97827,6 +97827,7 @@ Object.defineProperty(exports, "__esModule", {
 });
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = void 0;
+exports.getFluidName = getFluidName;
 exports.getFluidType = getFluidType;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
@@ -97882,6 +97883,14 @@ function getKonnectorSlug(fluidType) {
       throw new Error('unknown fluidtype');
   }
 }
+/** Return lowercase fluidtype
+ * @example FluidType.ELECTRICITY => 'electricity'
+ */
+
+
+function getFluidName(fluidType) {
+  return _fluid.FluidType[fluidType].toLowerCase();
+}
 
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
diff --git a/services/consumptionAlert/ecolyo.js b/services/consumptionAlert/ecolyo.js
index 619771952111c6298257dc2ae3247ab3d013cad7..ae4f62b3feb4f96920a91657b3f364039cd2e009 100644
--- a/services/consumptionAlert/ecolyo.js
+++ b/services/consumptionAlert/ecolyo.js
@@ -95518,6 +95518,7 @@ Object.defineProperty(exports, "__esModule", {
 });
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = void 0;
+exports.getFluidName = getFluidName;
 exports.getFluidType = getFluidType;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
@@ -95573,6 +95574,14 @@ function getKonnectorSlug(fluidType) {
       throw new Error('unknown fluidtype');
   }
 }
+/** Return lowercase fluidtype
+ * @example FluidType.ELECTRICITY => 'electricity'
+ */
+
+
+function getFluidName(fluidType) {
+  return _fluid.FluidType[fluidType].toLowerCase();
+}
 
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
diff --git a/services/enedisHalfHourMonthlyAnalysis/ecolyo.js b/services/enedisHalfHourMonthlyAnalysis/ecolyo.js
index 009625520eb87b541033b07a2d6977c1491713b2..d3629c5f63d24ba971241cb0ae227a01e6b26976 100644
--- a/services/enedisHalfHourMonthlyAnalysis/ecolyo.js
+++ b/services/enedisHalfHourMonthlyAnalysis/ecolyo.js
@@ -95518,6 +95518,7 @@ Object.defineProperty(exports, "__esModule", {
 });
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = void 0;
+exports.getFluidName = getFluidName;
 exports.getFluidType = getFluidType;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
@@ -95573,6 +95574,14 @@ function getKonnectorSlug(fluidType) {
       throw new Error('unknown fluidtype');
   }
 }
+/** Return lowercase fluidtype
+ * @example FluidType.ELECTRICITY => 'electricity'
+ */
+
+
+function getFluidName(fluidType) {
+  return _fluid.FluidType[fluidType].toLowerCase();
+}
 
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
diff --git a/services/fluidsPrices/ecolyo.js b/services/fluidsPrices/ecolyo.js
index 04dbd587b088c7343c168a0ae416c7e4ba4271ee..a80b12264a3699e7e926c6300c0b46b59186d1a6 100644
--- a/services/fluidsPrices/ecolyo.js
+++ b/services/fluidsPrices/ecolyo.js
@@ -95518,6 +95518,7 @@ Object.defineProperty(exports, "__esModule", {
 });
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = void 0;
+exports.getFluidName = getFluidName;
 exports.getFluidType = getFluidType;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
@@ -95573,6 +95574,14 @@ function getKonnectorSlug(fluidType) {
       throw new Error('unknown fluidtype');
   }
 }
+/** Return lowercase fluidtype
+ * @example FluidType.ELECTRICITY => 'electricity'
+ */
+
+
+function getFluidName(fluidType) {
+  return _fluid.FluidType[fluidType].toLowerCase();
+}
 
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
diff --git a/services/monthlyReportNotification/ecolyo.js b/services/monthlyReportNotification/ecolyo.js
index bdb4f53b94af452f837c360625629100c9757b07..fdf331d5738a15963b54c2148900a98fc8e26aba 100644
--- a/services/monthlyReportNotification/ecolyo.js
+++ b/services/monthlyReportNotification/ecolyo.js
@@ -95518,6 +95518,7 @@ Object.defineProperty(exports, "__esModule", {
 });
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = void 0;
+exports.getFluidName = getFluidName;
 exports.getFluidType = getFluidType;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
@@ -95573,6 +95574,14 @@ function getKonnectorSlug(fluidType) {
       throw new Error('unknown fluidtype');
   }
 }
+/** Return lowercase fluidtype
+ * @example FluidType.ELECTRICITY => 'electricity'
+ */
+
+
+function getFluidName(fluidType) {
+  return _fluid.FluidType[fluidType].toLowerCase();
+}
 
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {