diff --git a/app/ecolyo.8cb9ec4e308a03da79bb.js b/app/ecolyo.587856e2820ae10bac6d.js
similarity index 99%
rename from app/ecolyo.8cb9ec4e308a03da79bb.js
rename to app/ecolyo.587856e2820ae10bac6d.js
index 001e2af84c85d7f726e0afdd4ae9970fca5e9fe3..07bb87df5bc526460478e62e387552226b331f68 100644
--- a/app/ecolyo.8cb9ec4e308a03da79bb.js
+++ b/app/ecolyo.587856e2820ae10bac6d.js
@@ -1961,14 +1961,14 @@ var SplashRoot = function SplashRoot(_ref) {
                 challengeHash = _yield$Promise$all2[2];
                 explorationHash = _yield$Promise$all2[3];
                 analysisResult = _yield$Promise$all2[4];
-                updatedProfile = _objectSpread(_objectSpread({}, profile), {}, {
+                updatedProfile = {
                   duelHash: duelHash,
                   quizHash: quizHash,
                   challengeHash: challengeHash,
                   explorationHash: explorationHash,
                   monthlyAnalysisDate: analysisResult.monthlyAnalysisDate,
                   haveSeenLastAnalysis: analysisResult.haveSeenLastAnalysis
-                });
+                };
                 dispatch((0, _profile.updateProfile)(updatedProfile));
 
                 if (profileType) {
@@ -13823,6 +13823,8 @@ var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__("yXPU"));
 
 var _slicedToArray2 = _interopRequireDefault(__webpack_require__("J4zp"));
 
+var _core = __webpack_require__("TTf+");
+
 var _CHALLENGE = _interopRequireDefault(__webpack_require__("agKi"));
 
 var _circleChecked = _interopRequireDefault(__webpack_require__("Tp9B"));
@@ -13833,6 +13835,8 @@ var _circleStar = _interopRequireDefault(__webpack_require__("rN4g"));
 
 var _default2 = _interopRequireDefault(__webpack_require__("sbny"));
 
+var _locked = _interopRequireDefault(__webpack_require__("EG+L"));
+
 var _classnames = _interopRequireDefault(__webpack_require__("TSYQ"));
 
 var _StyledIcon = _interopRequireDefault(__webpack_require__("I07j"));
@@ -14137,7 +14141,7 @@ var ChallengeCardOnGoing = function ChallengeCardOnGoing(_ref) {
   }, [client, currentDataload, userChallenge, dispatch]);
 
   var quizButton = function quizButton() {
-    return /*#__PURE__*/_react.default.createElement("button", {
+    return /*#__PURE__*/_react.default.createElement(_core.Button, {
       title: t('challenge.card.ongoing.quiz'),
       tabIndex: userChallenge.progress.quizProgress === 5 ? -1 : 0,
       className: (0, _classnames.default)('smallCard', (0, _defineProperty2.default)({}, 'finished', userChallenge.progress.quizProgress === 5)),
@@ -14154,7 +14158,7 @@ var ChallengeCardOnGoing = function ChallengeCardOnGoing(_ref) {
   };
 
   var explorationButton = function explorationButton() {
-    return /*#__PURE__*/_react.default.createElement("button", {
+    return /*#__PURE__*/_react.default.createElement(_core.Button, {
       title: t('challenge.card.ongoing.exploration'),
       tabIndex: userChallenge.progress.explorationProgress === 5 ? -1 : 0,
       className: (0, _classnames.default)('smallCard explorationCard', (0, _defineProperty2.default)({}, 'finished', userChallenge.progress.explorationProgress === 5)),
@@ -14173,7 +14177,7 @@ var ChallengeCardOnGoing = function ChallengeCardOnGoing(_ref) {
   };
 
   var actionButton = function actionButton() {
-    return /*#__PURE__*/_react.default.createElement("button", {
+    return /*#__PURE__*/_react.default.createElement(_core.Button, {
       title: t('challenge.card.ongoing.action'),
       tabIndex: userChallenge.progress.actionProgress === 5 ? -1 : 0,
       className: (0, _classnames.default)('smallCard actionCard', (0, _defineProperty2.default)({}, 'finished', userChallenge.progress.actionProgress === 5)),
@@ -14191,7 +14195,7 @@ var ChallengeCardOnGoing = function ChallengeCardOnGoing(_ref) {
     })));
   };
 
-  var duelButton = /*#__PURE__*/_react.default.createElement("button", {
+  var duelButton = /*#__PURE__*/_react.default.createElement(_core.Button, {
     className: "smallCard goDuel",
     onClick: goDuel
   }, isLoading ? /*#__PURE__*/_react.default.createElement("div", {
@@ -14206,7 +14210,7 @@ var ChallengeCardOnGoing = function ChallengeCardOnGoing(_ref) {
 
   var duelCard = function duelCard(content) {
     var extraClassName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
-    return /*#__PURE__*/_react.default.createElement("div", {
+    return /*#__PURE__*/_react.default.createElement(_core.Button, {
       className: "smallCard duelCard ".concat(extraClassName),
       onClick: goDuel
     }, content, /*#__PURE__*/_react.default.createElement(_StyledIcon.default, {
@@ -14234,14 +14238,21 @@ var ChallengeCardOnGoing = function ChallengeCardOnGoing(_ref) {
         className: "notifChallenge"
       }, "1")), 'active');
     } else {
-      return duelCard( /*#__PURE__*/_react.default.createElement("p", {
+      return /*#__PURE__*/_react.default.createElement(_core.Button, {
+        className: "smallCard duelCard duelLocked",
+        disabled: true
+      }, /*#__PURE__*/_react.default.createElement("div", {
         className: "starCount"
       }, /*#__PURE__*/_react.default.createElement(_StyledIcon.default, {
         icon: _circleStar.default,
         size: 30
       }), /*#__PURE__*/_react.default.createElement("span", {
         className: "blueNumber"
-      }, quizProgress + explorationProgress + actionProgress), /*#__PURE__*/_react.default.createElement("span", null, " / ".concat(target))));
+      }, quizProgress + explorationProgress + actionProgress), /*#__PURE__*/_react.default.createElement("span", null, " / ".concat(target))), /*#__PURE__*/_react.default.createElement(_StyledIcon.default, {
+        className: "circleStar",
+        icon: _locked.default,
+        size: 60
+      }));
     }
   };
 
@@ -14734,7 +14745,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.cardContent {\n  background: transparent;\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  gap: 1rem;\n}\n.cardContent.onGoing {\n  border: 1px solid #e0e0e0;\n  background: inherit !important;\n}\n.cardContent.onGoing .challengeTitle {\n  margin-top: 0;\n}\n\n.titleBlock {\n  position: absolute;\n  left: 0;\n  right: 0;\n  margin: auto;\n  top: -1.5rem;\n  background: #121212;\n  width: fit-content;\n  padding: 0 1rem;\n  max-width: 235px;\n}\n\n.smallCard {\n  display: flex;\n  align-items: center;\n  border: none;\n  width: 100%;\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n  height: 24%;\n  max-height: 90px;\n  padding: 1rem;\n  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.55);\n  border-radius: 4px;\n  color: #e0e0e0;\n  box-sizing: border-box;\n  font-family: Lato, sans-serif;\n  transition: all 300ms ease;\n}\n@media all and (max-height: 800px) {\n  .smallCard {\n    max-height: 85px;\n    padding: 6%;\n  }\n}\n@media all and (max-height: 730px) {\n  .smallCard {\n    max-height: 70px;\n    padding: 3%;\n  }\n}\n.smallCard.finished {\n  border: 1px solid #7b7b7b;\n  background: #1b1c22;\n}\n.smallCard.finished > * {\n  color: #7b7b7b;\n}\n.smallCard:hover {\n  cursor: pointer;\n}\n.smallCard .content {\n  display: flex;\n  flex-direction: column;\n  align-self: center;\n  justify-content: space-between;\n  align-items: flex-start;\n}\n.smallCard .content span {\n  margin-bottom: 0.3em;\n}\n.smallCard .spinner-container {\n  height: 3.75rem;\n  width: 3.75rem;\n  margin: auto;\n}\n.smallCard .cardIcon {\n  margin-right: 1rem;\n}\n.smallCard span {\n  font-size: 1.1rem;\n  font-weight: 700;\n  display: block;\n  margin-bottom: 0.6rem;\n}\n@media all and (max-height: 700px) {\n  .smallCard span {\n    margin-bottom: 0.1rem;\n    font-size: 1rem;\n  }\n}\n.smallCard .challengeminIcon {\n  filter: drop-shadow(0px 2px 2px rgba(0, 0, 0, 0.55));\n}\n.smallCard .duelLocked {\n  margin-left: auto;\n}\n.smallCard .starCount {\n  display: flex;\n  align-items: center;\n  margin: 0;\n}\n.smallCard .starCount span {\n  margin: 0;\n}\n.smallCard .starCount .blueNumber {\n  font-weight: 900;\n  color: #61f0f2;\n  margin: 0 0.3rem 0 0.7rem;\n}\n.smallCard .finalDuel {\n  display: flex;\n  flex-direction: column;\n}\n.smallCard .finalDuel .starCount span {\n  font-size: 1rem;\n  font-weight: 500;\n}\n.smallCard .finalDuel .starCount .blueNumber {\n  margin-left: 0;\n}\n.smallCard .finalDuel.result span {\n  margin-bottom: 0.2rem;\n  font-weight: 600;\n  font-size: 1rem;\n}\n\n.duelCard {\n  background: #181819;\n  border: solid 1px rgba(97, 240, 242, 0.5);\n  align-items: center;\n  justify-content: space-between;\n  position: relative;\n}\n.duelCard.active {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n}\n\n.explorationCard,\n.actionCard {\n  position: relative;\n}\n\n.goDuel {\n  align-items: center;\n  justify-content: space-between;\n  height: auto;\n  background: linear-gradient(180deg, #61f0f2 0%, #48c2c4 100%);\n  color: #121212;\n  font-weight: 700;\n  font-family: Lato, sans-serif;\n}\n\n.notifChallenge {\n  position: absolute;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  right: 4px;\n  top: 4px;\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}", ""]);
+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.cardContent {\n  background: transparent;\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  gap: 1rem;\n}\n.cardContent.onGoing {\n  border: 1px solid #e0e0e0;\n  background: inherit !important;\n}\n.cardContent.onGoing .challengeTitle {\n  margin-top: 0;\n}\n\n.titleBlock {\n  position: absolute;\n  left: 0;\n  right: 0;\n  margin: auto;\n  top: -1.5rem;\n  background: #121212;\n  width: fit-content;\n  padding: 0 1rem;\n  max-width: 235px;\n}\n\n.notifChallenge {\n  position: absolute;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  right: 4px;\n  top: 4px;\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\n.smallCard {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n  max-height: 90px;\n}\n@media all and (max-height: 800px) {\n  .smallCard {\n    max-height: 85px;\n  }\n}\n@media all and (max-height: 730px) {\n  .smallCard {\n    max-height: 70px;\n  }\n}\n.smallCard.finished {\n  border: 1px solid #7b7b7b;\n  background: #121212;\n}\n.smallCard.finished > * {\n  color: #7b7b7b !important;\n}\n.smallCard.duelCard {\n  background: #181819;\n  border: solid 1px rgba(97, 240, 242, 0.5);\n}\n.smallCard.duelCard.active {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n}\n.smallCard.duelCard span {\n  justify-content: space-between !important;\n}\n.smallCard.goDuel {\n  background: linear-gradient(180deg, #61f0f2 0%, #48c2c4 100%);\n}\n.smallCard.goDuel span {\n  color: #121212 !important;\n  justify-content: space-between !important;\n  font-weight: 700;\n}\n.smallCard span.MuiButton-label {\n  display: flex;\n  justify-content: flex-start;\n  padding: 1rem 0.5rem;\n  color: #e0e0e0;\n  transition: all 300ms ease;\n  text-transform: capitalize;\n}\n.smallCard span.MuiButton-label .content {\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  text-transform: capitalize;\n}\n.smallCard span.MuiButton-label .content .stars {\n  display: flex;\n  gap: 2px;\n}\n.smallCard span.MuiButton-label .spinner-container {\n  height: 3.75rem;\n  width: 3.75rem;\n  margin: auto;\n}\n.smallCard span.MuiButton-label .cardIcon {\n  margin-right: 1rem;\n}\n.smallCard span.MuiButton-label span {\n  font-size: 1.1rem;\n  font-weight: 700;\n}\n@media all and (max-height: 700px) {\n  .smallCard span.MuiButton-label span {\n    font-size: 1rem;\n  }\n}\n.smallCard span.MuiButton-label .challengeminIcon {\n  filter: drop-shadow(0px 2px 2px rgba(0, 0, 0, 0.55));\n}\n.smallCard span.MuiButton-label .starCount {\n  display: flex;\n  align-items: center;\n  margin: 0;\n}\n.smallCard span.MuiButton-label .starCount span {\n  margin: 0;\n}\n.smallCard span.MuiButton-label .starCount .blueNumber {\n  font-weight: 900;\n  color: #61f0f2;\n  margin: 0 0.3rem 0 0.7rem;\n}\n.smallCard span.MuiButton-label .finalDuel {\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n}\n.smallCard span.MuiButton-label .finalDuel .starCount span {\n  font-size: 1rem;\n  font-weight: 500;\n}\n.smallCard span.MuiButton-label .finalDuel .starCount .blueNumber {\n  margin-left: 0;\n}\n.smallCard span.MuiButton-label .finalDuel.result span {\n  margin-bottom: 0.2rem;\n  font-weight: 600;\n  font-size: 1rem;\n}", ""]);
 
 
 
@@ -16071,6 +16082,8 @@ exports.default = void 0;
 
 var _slicedToArray2 = _interopRequireDefault(__webpack_require__("J4zp"));
 
+var _core = __webpack_require__("TTf+");
+
 var _FormNavigation = _interopRequireDefault(__webpack_require__("Pnfk"));
 
 var _FormProgress = _interopRequireDefault(__webpack_require__("Q/++"));
@@ -16150,7 +16163,7 @@ var ProfileTypeFormNumberSelection = function ProfileTypeFormNumberSelection(_re
     className: 'profile-question-label'
   }, t("profile_type.".concat(_profileType2.ProfileTypeStepForm[step].toLowerCase(), ".question"))), answer !== null ? /*#__PURE__*/_react.default.createElement("div", {
     className: 'number-container'
-  }, /*#__PURE__*/_react.default.createElement("button", {
+  }, /*#__PURE__*/_react.default.createElement(_core.Button, {
     className: 'btn-profile-number',
     onClick: function onClick() {
       return decrement();
@@ -16163,7 +16176,7 @@ var ProfileTypeFormNumberSelection = function ProfileTypeFormNumberSelection(_re
     value: answer,
     name: answerType.attribute,
     disabled: true
-  })), /*#__PURE__*/_react.default.createElement("button", {
+  })), /*#__PURE__*/_react.default.createElement(_core.Button, {
     className: 'btn-profile-number',
     onClick: function onClick() {
       return increment();
@@ -16500,7 +16513,7 @@ var result = _node_modules_svg_sprite_loader_runtime_browser_sprite_build_js__WE
 
 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-form-container {\n  color: #ffffff;\n  margin: 1rem 1rem 3.5rem;\n  max-width: 53rem;\n}\n.profile-form-container .text,\n.profile-form-container .number {\n  font-size: 1.25rem;\n}\n.profile-form-container .text input,\n.profile-form-container .number input {\n  margin: 0.5rem;\n  background: #121212;\n  color: #ffffff;\n  border: 1px solid #e3b82a;\n  max-width: 5rem;\n  height: 2.5rem;\n  text-align: center;\n}\n.profile-form-container .text input:focus,\n.profile-form-container .number input:focus {\n  outline: #e3b82a 1px;\n}\n.profile-form-container .text input:disabled,\n.profile-form-container .number input:disabled {\n  -webkit-text-fill-color: #ffffff;\n  opacity: 1;\n}\n.profile-form-container .profile-question-label {\n  font-weight: bold;\n  font-size: 1.375rem;\n  line-height: 150%;\n  padding: 1rem 0;\n}\n.profile-form-container .profile-question-hint {\n  font-size: 1rem;\n  color: #e0e0e0;\n  display: block;\n  margin-bottom: 1rem;\n  font-style: italic;\n}\n.profile-form-container .profile-question-answers {\n  display: flex;\n}\n.profile-form-container .profile-question-answers-radio-long {\n  flex-wrap: wrap;\n}\n.profile-form-container .profile-question-answers-other {\n  flex-direction: column;\n}\n.profile-form-container .radio_short,\n.profile-form-container .radio_long,\n.profile-form-container .checkbox {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.55);\n  margin: 0.5rem 0;\n  display: flex;\n  align-items: center;\n  font-weight: bold;\n}\n.profile-form-container .radio_short input,\n.profile-form-container .radio_long input,\n.profile-form-container .checkbox input {\n  margin: 0.5rem 1rem 0.5rem 0.5rem;\n  appearance: none;\n  -moz-appearance: none;\n  -webkit-appearance: none;\n  width: 1.2rem;\n  height: 1.2rem;\n  border-radius: 50%;\n  background: radial-gradient(60.65% 30.62% at 50% 3.13%, #2a2b30 0%, #1b1c22 100%);\n  position: relative;\n}\n.profile-form-container .checkbox input {\n  border-radius: 1px;\n}\n.profile-form-container .radio_short,\n.profile-form-container .checkbox {\n  padding: 1.2rem;\n  border-radius: 4px;\n}\n.profile-form-container .radio_long {\n  padding: 0.5rem 1rem;\n  border-radius: 4px;\n  text-align: center;\n}\n.profile-form-container .answer-checked {\n  background: radial-gradient(105.25% 64.58% at 49.68% 70.83%, rgba(226, 137, 4, 0.5) 0%, rgba(255, 255, 255, 0) 100%), #f1c017;\n  color: #121212;\n}\n.profile-form-container .answer-checked input:before, .profile-form-container .answer-checked input:after {\n  content: \"\";\n  position: absolute;\n  display: inline-block;\n  background: #e3b82a;\n  border-radius: 0.5rem;\n}\n.profile-form-container .answer-checked input:before {\n  width: 3px;\n  height: 12px;\n  left: 10px;\n  top: 4px;\n  transform: rotate(41deg);\n}\n.profile-form-container .answer-checked input:after {\n  width: 3px;\n  height: 6px;\n  left: 5px;\n  top: 8px;\n  transform: rotate(133deg);\n}\n.profile-form-container .number-container {\n  display: flex;\n  justify-content: left;\n  align-items: center;\n}\n.profile-form-container .btn-profile-number {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n  background-color: transparent;\n  border: none;\n  border-radius: 2px;\n  width: 2.5rem;\n  height: 2.5rem;\n  font-size: 2rem;\n  color: #ffffff;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin: 0.5rem;\n}\n.profile-form-container button:disabled {\n  opacity: 0.5;\n}\n.profile-form-container .date-select {\n  margin: 0.5em;\n  border: 1px solid #e3b82a;\n  background: #121212;\n  font-weight: bold;\n}\n.profile-form-container .date-select .MuiInput-underline:after {\n  display: none;\n}\n.profile-form-container .date-select .year {\n  text-align: center;\n  display: inline-flex;\n  align-content: center;\n  font-size: 1.25rem;\n  font-family: Lato, sans-serif;\n  color: #ffffff;\n  width: 93px;\n}\n.profile-form-container .date-select .year svg {\n  top: 0;\n  background-color: #e3b82a;\n  height: 100%;\n}\n.profile-form-container .date-select .month {\n  color: #ffffff;\n  font-size: 1.25rem;\n  text-align: center;\n  display: inline-flex;\n  align-content: center;\n  font-family: Lato, sans-serif;\n  min-width: 130px;\n  max-width: 150px;\n}\n.profile-form-container .date-select .month svg {\n  top: 0;\n  right: 0;\n  background-color: #e3b82a;\n  height: 100%;\n}\n.profile-form-container .select-container {\n  display: flex;\n}\n.profile-form-container .date-option {\n  color: #ffffff;\n}\n.profile-form-container ul {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n  color: #ffffff;\n  font-weight: normal;\n}\n.profile-form-container ul .MuiMenuItem-root {\n  font-family: Lato, sans-serif;\n  text-align: center;\n  font-size: 1.25rem;\n  display: flex;\n  justify-content: space-evenly;\n}\n.profile-form-container ul .MuiMenuItem-root :hover {\n  background-color: #e3b82a;\n}\n.profile-form-container ul .MuiListItem-root.Mui-selected,\n.profile-form-container ul .MuiListItem-root.Mui-selected:hover {\n  background-color: #e3b82a;\n  color: #1b1c22;\n  font-weight: bold;\n  display: flex;\n  justify-content: space-evenly;\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-form-container {\n  color: #ffffff;\n  margin: 1rem 1rem 3.5rem;\n  max-width: 53rem;\n}\n.profile-form-container .text,\n.profile-form-container .number {\n  font-size: 1.25rem;\n}\n.profile-form-container .text input,\n.profile-form-container .number input {\n  margin: 0.5rem;\n  background: #121212;\n  color: #ffffff;\n  border: 1px solid #e3b82a;\n  max-width: 5rem;\n  height: 2.5rem;\n  text-align: center;\n}\n.profile-form-container .text input:focus,\n.profile-form-container .number input:focus {\n  outline: #e3b82a 1px;\n}\n.profile-form-container .text input:disabled,\n.profile-form-container .number input:disabled {\n  -webkit-text-fill-color: #ffffff;\n  opacity: 1;\n}\n.profile-form-container .profile-question-label {\n  font-weight: bold;\n  font-size: 1.375rem;\n  line-height: 150%;\n  padding: 1rem 0;\n}\n.profile-form-container .profile-question-hint {\n  font-size: 1rem;\n  color: #e0e0e0;\n  display: block;\n  margin-bottom: 1rem;\n  font-style: italic;\n}\n.profile-form-container .profile-question-answers {\n  display: flex;\n}\n.profile-form-container .profile-question-answers-radio-long {\n  flex-wrap: wrap;\n}\n.profile-form-container .profile-question-answers-other {\n  flex-direction: column;\n}\n.profile-form-container .radio_short,\n.profile-form-container .radio_long,\n.profile-form-container .checkbox {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.55);\n  margin: 0.5rem 0;\n  display: flex;\n  align-items: center;\n  font-weight: bold;\n}\n.profile-form-container .radio_short input,\n.profile-form-container .radio_long input,\n.profile-form-container .checkbox input {\n  margin: 0.5rem 1rem 0.5rem 0.5rem;\n  appearance: none;\n  -moz-appearance: none;\n  -webkit-appearance: none;\n  width: 1.2rem;\n  height: 1.2rem;\n  border-radius: 50%;\n  background: radial-gradient(60.65% 30.62% at 50% 3.13%, #2a2b30 0%, #1b1c22 100%);\n  position: relative;\n}\n.profile-form-container .checkbox input {\n  border-radius: 1px;\n}\n.profile-form-container .radio_short,\n.profile-form-container .checkbox {\n  padding: 1.2rem;\n  border-radius: 4px;\n}\n.profile-form-container .radio_long {\n  padding: 0.5rem 1rem;\n  border-radius: 4px;\n  text-align: center;\n}\n.profile-form-container .answer-checked {\n  background: radial-gradient(105.25% 64.58% at 49.68% 70.83%, rgba(226, 137, 4, 0.5) 0%, rgba(255, 255, 255, 0) 100%), #f1c017;\n  color: #121212;\n}\n.profile-form-container .answer-checked input:before, .profile-form-container .answer-checked input:after {\n  content: \"\";\n  position: absolute;\n  display: inline-block;\n  background: #e3b82a;\n  border-radius: 0.5rem;\n}\n.profile-form-container .answer-checked input:before {\n  width: 3px;\n  height: 12px;\n  left: 10px;\n  top: 4px;\n  transform: rotate(41deg);\n}\n.profile-form-container .answer-checked input:after {\n  width: 3px;\n  height: 6px;\n  left: 5px;\n  top: 8px;\n  transform: rotate(133deg);\n}\n.profile-form-container .number-container {\n  display: flex;\n  justify-content: left;\n  align-items: center;\n}\n.profile-form-container .btn-profile-number {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n  background-color: transparent;\n  border: none;\n  border-radius: 2px;\n  width: 2.5rem;\n  height: 2.5rem;\n  font-size: 2rem;\n  color: #ffffff;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  margin: 0.5rem;\n}\n.profile-form-container .btn-profile-number:disabled {\n  color: rgba(255, 255, 255, 0.5);\n}\n.profile-form-container .date-select {\n  margin: 0.5em;\n  border: 1px solid #e3b82a;\n  background: #121212;\n  font-weight: bold;\n}\n.profile-form-container .date-select .MuiInput-underline:after {\n  display: none;\n}\n.profile-form-container .date-select .year {\n  text-align: center;\n  display: inline-flex;\n  align-content: center;\n  font-size: 1.25rem;\n  font-family: Lato, sans-serif;\n  color: #ffffff;\n  width: 93px;\n}\n.profile-form-container .date-select .year svg {\n  top: 0;\n  background-color: #e3b82a;\n  height: 100%;\n}\n.profile-form-container .date-select .month {\n  color: #ffffff;\n  font-size: 1.25rem;\n  text-align: center;\n  display: inline-flex;\n  align-content: center;\n  font-family: Lato, sans-serif;\n  min-width: 130px;\n  max-width: 150px;\n}\n.profile-form-container .date-select .month svg {\n  top: 0;\n  right: 0;\n  background-color: #e3b82a;\n  height: 100%;\n}\n.profile-form-container .select-container {\n  display: flex;\n}\n.profile-form-container .date-option {\n  color: #ffffff;\n}\n.profile-form-container ul {\n  background: linear-gradient(180deg, #323339 0%, #25262b 100%);\n  color: #ffffff;\n  font-weight: normal;\n}\n.profile-form-container ul .MuiMenuItem-root {\n  font-family: Lato, sans-serif;\n  text-align: center;\n  font-size: 1.25rem;\n  display: flex;\n  justify-content: space-evenly;\n}\n.profile-form-container ul .MuiMenuItem-root :hover {\n  background-color: #e3b82a;\n}\n.profile-form-container ul .MuiListItem-root.Mui-selected,\n.profile-form-container ul .MuiListItem-root.Mui-selected:hover {\n  background-color: #e3b82a;\n  color: #1b1c22;\n  font-weight: bold;\n  display: flex;\n  justify-content: space-evenly;\n}", ""]);
 
 
 
@@ -39831,98 +39844,102 @@ var InitializationService = /*#__PURE__*/function () {
     key: "initConsent",
     value: function () {
       var _initConsent = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
-        var termsStatus, startTime, termService, isUpToDate, lastTerm, isLastConsentValidated, versionType, errorMessage;
+        var startTime, termService, isUpToDate, lastTerm, isLastConsentValidated, versionType, errorMessage;
         return _regenerator.default.wrap(function _callee14$(_context14) {
           while (1) {
             switch (_context14.prev = _context14.next) {
               case 0:
-                termsStatus = {
-                  accepted: false,
-                  versionType: 'init'
-                };
                 startTime = performance.now();
-                _context14.prev = 2;
+                _context14.prev = 1;
 
                 this._setInitStep(_initialisationSteps.InitSteps.CONSENT);
 
                 termService = new _terms.default(this._client);
-                _context14.next = 7;
+                _context14.next = 6;
                 return termService.isConsentVersionUpToDate();
 
-              case 7:
+              case 6:
                 isUpToDate = _context14.sent;
-                _context14.next = 10;
+                _context14.next = 9;
                 return termService.getLastTerm();
 
-              case 10:
+              case 9:
                 lastTerm = _context14.sent;
 
-                if (!lastTerm) {
-                  _context14.next = 25;
+                if (lastTerm) {
+                  _context14.next = 13;
                   break;
                 }
 
+                _logger.default.info('[Initialization] Init first terms');
+
+                return _context14.abrupt("return", {
+                  accepted: false,
+                  versionType: 'init'
+                });
+
+              case 13:
                 if (!isUpToDate) {
-                  _context14.next = 19;
+                  _context14.next = 22;
                   break;
                 }
 
-                _context14.next = 15;
+                _context14.next = 16;
                 return termService.isLastTermValidated();
 
-              case 15:
+              case 16:
                 isLastConsentValidated = _context14.sent;
 
-                if (isLastConsentValidated) {
-                  termsStatus.accepted = true;
-                  termsStatus.versionType = 'init';
+                if (!isLastConsentValidated) {
+                  _context14.next = 20;
+                  break;
+                }
 
-                  _logger.default.info('[Initialization] Last Consent successfully loaded and valid');
-                } else {
-                  termsStatus.versionType = 'init';
-                  termsStatus.accepted = false;
+                _logger.default.info('[Initialization] Last Consent successfully loaded and valid');
 
-                  _logger.default.info('[Initialization] Consent not up-to-date');
-                }
+                return _context14.abrupt("return", {
+                  accepted: true,
+                  versionType: 'init'
+                });
 
-                _context14.next = 23;
-                break;
+              case 20:
+                _logger.default.info('[Initialization] Consent not up-to-date');
 
-              case 19:
-                _context14.next = 21;
+                return _context14.abrupt("return", {
+                  accepted: false,
+                  versionType: 'init'
+                });
+
+              case 22:
+                _context14.next = 24;
                 return termService.getTermsVersionType();
 
-              case 21:
+              case 24:
                 versionType = _context14.sent;
 
-                if (versionType === 'minor') {
-                  termsStatus.accepted = false;
-                  termsStatus.versionType = 'minor';
-
-                  _logger.default.info('[Initialization] Minor Terms update detected');
-                } else {
-                  termsStatus.accepted = false;
-                  termsStatus.versionType = 'major';
-
-                  _logger.default.info('[Initialization] Major Terms update detected');
+                if (!(versionType === 'minor')) {
+                  _context14.next = 28;
+                  break;
                 }
 
-              case 23:
-                _context14.next = 28;
-                break;
-
-              case 25:
-                termsStatus.accepted = false;
-                termsStatus.versionType = 'init';
+                _logger.default.info('[Initialization] Minor Terms update detected');
 
-                _logger.default.info('[Initialization] Init first terms');
+                return _context14.abrupt("return", {
+                  accepted: false,
+                  versionType: 'minor'
+                });
 
               case 28:
-                return _context14.abrupt("return", termsStatus);
+                _logger.default.info('[Initialization] Major Terms update detected');
 
-              case 31:
-                _context14.prev = 31;
-                _context14.t0 = _context14["catch"](2);
+                return _context14.abrupt("return", {
+                  accepted: false,
+                  versionType: 'major'
+                });
+
+              case 32:
+                _context14.prev = 32;
+                _context14.t0 = _context14["catch"](1);
 
                 this._setInitStepError(_initialisationSteps.InitStepsErrors.CONSENT_ERROR);
 
@@ -39934,17 +39951,17 @@ var InitializationService = /*#__PURE__*/function () {
                 Sentry.captureException(errorMessage);
                 throw _context14.t0;
 
-              case 39:
-                _context14.prev = 39;
+              case 40:
+                _context14.prev = 40;
                 (0, _duration.logDuration)('[Initialization] initConsent finished', startTime);
-                return _context14.finish(39);
+                return _context14.finish(40);
 
-              case 42:
+              case 43:
               case "end":
                 return _context14.stop();
             }
           }
-        }, _callee14, this, [[2, 31, 39, 42]]);
+        }, _callee14, this, [[1, 32, 40, 43]]);
       }));
 
       function initConsent() {
diff --git a/index.html b/index.html
index 81baea4fff080086b24a1a2c16d389d02942370c..52101fc19ad3c77df2093cf2777d5d12bb8fcf49 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.18c101a0fa585f93c419.js"></script><script src="app/ecolyo.8cb9ec4e308a03da79bb.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.18c101a0fa585f93c419.js"></script><script src="app/ecolyo.587856e2820ae10bac6d.js"></script></div></body></html>
\ No newline at end of file