@charset "UTF-8";
@font-face {
  font-family: "galada";
  src: url("../fonts/Galada-Regular-4801ef44fbbdebf3ace372d18fbbf3f6.ttf");
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-Black-8a49f7b868554939f160c2218424827e.ttf");
  font-weight: 900;
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-ExtraBold-6263cc17366276fdb82949751022d027.ttf");
  font-weight: 800;
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-Bold-23d9fa50d921b5e1935cb43e1b1f71c4.ttf");
  font-weight: 700;
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-SemiBold-37c731041e5217d9318781dcfab6947e.ttf");
  font-weight: 600;
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-Medium-520021200d39b89c4be2e5bb48abe2d9.ttf");
  font-weight: 500;
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-Regular-22cada5b8316be1436f53f1e5c4ab150.ttf");
  font-weight: 400;
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-Light-20d57854cc59a9eab44aee180179b2d9.ttf");
  font-weight: 300;
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-ExtraLight-bb136d22fc94f2c2b7c30164a35c1777.ttf");
  font-weight: 200;
}
@font-face {
  font-family: "montserrat";
  src: url("../fonts/Montserrat-Thin-bb65899740a4c2e5d20b6aeb8618f335.ttf");
  font-weight: 100;
}
@font-face {
  font-family: "roboto";
  src: url("../fonts/Roboto-Black-e8c495a41d4f2f9067f6ed1bbe41af2a.ttf");
  font-weight: 900;
}
@font-face {
  font-family: "roboto";
  src: url("../fonts/Roboto-Bold-55237eb11bddf8eb9a4e2e5afdb9b54a.ttf");
  font-weight: 700;
}
@font-face {
  font-family: "roboto";
  src: url("../fonts/Roboto-Medium-7fa9445716430a7cadf5103291322885.ttf");
  font-weight: 500;
}
@font-face {
  font-family: "roboto";
  src: url("../fonts/Roboto-Regular-b5a9f10b5a77405283d8c0ceca197847.ttf");
  font-weight: 400;
}
@font-face {
  font-family: "roboto";
  src: url("../fonts/Roboto-Light-787112fe94579f8ba2f78c3d1695f332.ttf");
  font-weight: 300;
}
@font-face {
  font-family: "roboto";
  src: url("../fonts/Roboto-Thin-3fe6e97b3f6c6397e4e68928b913caf8.ttf");
  font-weight: 100;
}
@font-face {
  font-family: "francois";
  src: url("../fonts/Ageer-2e2e482b48da92f0b2ce91767267fa0e.otf");
  font-weight: 500;
}
.text-small {
  font-size: 0.75rem;
}

/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

/* Remove default margin in favour of better control in authored CSS */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin-block-end: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core body defaults */
body {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100vh;
  font-family: roboto, Helvetica, sans-serif;
  font-weight: 500;
  line-height: 1.5rem;
  color: #202124;
  text-rendering: optimizeSpeed;
  overflow-x: hidden;
  -webkit-user-select: none;
  user-select: none;
}

/* Set shorter line heights on headings and interactive elements */
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

/* Balance text wrapping on headings */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  font-family: montserrat, Helvetica, sans-serif;
  font-weight: 800;
  text-wrap: balance;
}

/* A elements that don't have a class get default styles */
a,
a:not([class]) {
  text-decoration-skip-ink: auto;
  color: currentColor;
}

a {
  color: #163690;
  transition: color 0.3s ease-in-out;
}

a:hover {
  color: #081e5b;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
}

.form-control:focus,
.form-select:focus,
input:focus,
textarea:focus,
select:focus,
button:focus {
  outline: none;
  box-shadow: none;
  border-color: rgba(141, 145, 155, 0.5764705882);
}

/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 2em;
}

/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 5ex;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0ms !important;
    animation-delay: 0ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0ms !important;
    scroll-behavior: auto !important;
  }
}
.text-balance {
  text-wrap: balance;
}

.text-pretty {
  text-wrap: pretty;
}

.fl-sm {
  line-height: 1.1;
}

.alert {
  margin: 1em auto;
  max-width: 890px;
  opacity: 0;
  width: 100%;
}

.alert:not(.alert-impersonation) {
  transform: translateY(-3rem);
  animation: slideDownAlert 0.3s ease-out forwards;
}

.alert.alert-impersonation {
  opacity: 1;
  transform: translateY(0);
}

@keyframes slideDownAlert {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.section-list-campaigns-page .badge {
  height: 0.9rem;
  width: 0.9rem;
  border-radius: 50%;
}
.section-list-campaigns-page .badge-success {
  background-color: #6caf00;
}
.section-list-campaigns-page .badge-danger {
  background-color: #d7090f;
}
.section-list-campaigns-page .badge-warning {
  background-color: #e5991b;
}
.section-list-campaigns-page .badge-secondary {
  background-color: #45474b;
}

.btn {
  box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3), 0 2px 6px 2px rgba(60, 64, 67, 0.15);
  transition: all 0.3s ease-in-out;
  height: 2.35rem;
}

.btn-primary {
  background-color: #163690;
}

.btn-secondary {
  background-color: #45474b;
}

.btn-success {
  background-color: #6caf00;
}

.btn-warning {
  background-color: #e5991b;
}

.btn-danger {
  background-color: #d7090f;
}

.btn[disabled],
.btn:focus-visible,
.btn-check:checked + .btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check) + .btn:active,
.btn-primary:hover {
  background-color: #081e5b;
  box-shadow: none;
}

.btn-dark:hover.btn[disabled], .btn-dark:hover.btn:focus-visible, .btn-dark:hover.btn-check:checked + .btn, .btn-dark:hover.btn.active, .btn-dark:hover.btn.show, .btn-dark:hover.btn:first-child:active, .btn-dark:hover:not(.btn-check) + .btn:active {
  background-color: #202124;
}

.stat-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 8.75rem;
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
  background-color: #f8f9fa;
  border-bottom: 6px solid #163690;
  box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3), 0 2px 6px 2px rgba(60, 64, 67, 0.15);
  padding: 1rem;
}
.stat-card__label {
  line-height: 1.25;
  color: #45474b;
}
.stat-card__value {
  text-align: center;
  font-size: 1.75rem;
  font-weight: 700;
  padding-top: 0.8rem;
  padding-bottom: 0.7rem;
  margin-top: auto;
}

.stat-google-review-card {
  display: flex;
  flex-direction: column;
  height: 8.75rem;
  height: auto;
  max-width: 420px;
  padding: 1rem 1rem;
  background-color: #f8f9fa;
  border-bottom: 6px solid #163690;
  box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3), 0 2px 6px 2px rgba(60, 64, 67, 0.15);
}
@media screen and (max-width: 918px) {
  .stat-google-review-card {
    max-width: 520px;
  }
}
.stat-google-review-card__header {
  display: flex;
  flex-direction: column;
  height: 50%;
  padding: 0.75rem 2rem;
  color: #45474b;
}
.stat-google-review-card__header-info,
.stat-google-review-card p {
  display: flex;
  align-items: flex-end;
  gap: 1.25rem;
  color: #45474b;
}
.stat-google-review-card__header-info .note {
  font-size: 1.5rem;
}
.stat-google-review-card__header-info .stars-wrapper {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.stat-google-review-card__header-info .badge.bg-red {
  background-color: rgba(255, 0, 0, 0.65);
  border: 1px solid rgb(255, 0, 0);
}
.stat-google-review-card__header-info .badge.bg-green {
  background-color: rgba(75, 192, 192, 0.83);
  border: 1px solid rgb(75, 192, 192);
}
.stat-google-review-card__header-info use:nth-child(2) {
  transform: translate(20px);
}
.stat-google-review-card__header-info use:nth-child(3) {
  transform: translate(40px);
}
.stat-google-review-card__header-info use:nth-child(4) {
  transform: translate(60px);
}
.stat-google-review-card__header-info use:nth-child(5) {
  transform: translate(80px);
}
.stat-google-review-card__header-info .rating {
  display: block;
  height: 20px;
  margin: 0 auto;
  width: 100px;
}
.stat-google-review-card__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 2rem;
  height: 70%;
}
.stat-google-review-card__content .doughnut-chart-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}
.stat-google-review-card__content .doughnut-chart-wrapper #doughnutChartContainer,
.stat-google-review-card__content .doughnut-chart-wrapper #positiveDoughnutChartContainer,
.stat-google-review-card__content .doughnut-chart-wrapper #neutralDoughnutChartContainer,
.stat-google-review-card__content .doughnut-chart-wrapper #negativeDoughnutChartContainer {
  height: 5rem;
  width: 5rem;
}
.stat-google-review-card__content .doughnut-chart-wrapper #positive-daily-doughnut-chart,
.stat-google-review-card__content .doughnut-chart-wrapper #neutral-daily-doughnut-chart,
.stat-google-review-card__content .doughnut-chart-wrapper #negative-daily-doughnut-chart {
  height: 100%;
  width: 100%;
}
.stat-google-review-card__content .doughnut-chart-wrapper .doughnutChartValue {
  position: absolute;
  font-weight: 900;
  font-family: montserrat, Helvetica, sans-serif;
}

img.delete-icon,
img.review-icon,
img.edit-icon,
img.eye-icon {
  filter: drop-shadow(0 2px 2px #081e5b);
  transition: filter 0.3s ease-out;
}

img.delete-icon:hover,
img.review-icon:hover,
img.edit-icon:hover,
img.eye-icon:hover {
  filter: drop-shadow(0 0px 0px #081e5b);
}

.section-game-page .modal {
  color: #202124;
}
.section-game-page .modal .btn-modal-action {
  font-weight: 800;
  height: auto;
  padding: 0.72rem 1rem;
  text-shadow: 0 3px 3px #000;
  border-radius: 0.6rem;
  box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.75);
  transition: box-shadow 0.35s ease-in-out;
}
.section-game-page .modal .btn-modal-action:hover {
  box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0);
}
.section-game-page .modal .btn-modal-action:active {
  background-color: #4d5154;
}

#socialLinksContainer img {
  height: 3.1rem;
  width: auto;
  filter: drop-shadow(0 3px 3px rgba(52, 52, 52, 0.6));
  transition: all 0.35s ease-in-out;
}
#socialLinksContainer img:hover {
  height: 3.1rem;
  width: auto;
  filter: drop-shadow(0 4px 4px rgba(52, 52, 52, 0));
}

#googleReviewModal .modal-title {
  font-weight: 800;
  line-height: 1.25;
}
#googleReviewModal .modal-body p.subtitle {
  max-width: 35ch;
  line-height: 1.25;
  text-wrap: balance;
}
#googleReviewModal .modal-body ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}
#googleReviewModal .modal-body ul li {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
#googleReviewModal .modal-body ul li .item-label {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 2.1rem;
  width: 2.1rem;
  min-width: 2.1rem;
  border-radius: 50%;
  box-shadow: rgba(0, 0, 0, 0.17) 0px -23px 25px 0px inset, rgba(0, 0, 0, 0.15) 0px -36px 30px 0px inset, rgba(0, 0, 0, 0.1) 0px -79px 40px 0px inset, rgba(0, 0, 0, 0.06) 0px 2px 1px, rgba(0, 0, 0, 0.09) 0px 4px 2px, rgba(0, 0, 0, 0.09) 0px 8px 4px, rgba(0, 0, 0, 0.09) 0px 16px 8px, rgba(0, 0, 0, 0.09) 0px 32px 16px, rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset;
  background: rgb(2, 0, 36) !important;
  background: radial-gradient(circle, rgb(2, 0, 36) 0%, rgb(205, 205, 205) 0%, rgb(84, 84, 84) 64%, rgb(0, 0, 0) 100%) !important;
  text-shadow: 0 3px 3px #000;
  color: white;
}
#googleReviewModal .modal-body ul li .item-content {
  line-height: 1.25;
}

#loaderModal .modal-title {
  font-weight: 800;
  line-height: 1.25;
}
#loaderModal .loader-wrapper {
  transform: translate(2rem, 2rem);
}
#loaderModal .loader-wrapper .loader {
  width: 4rem;
  height: 4rem;
  transform: translate();
  border: 1rem solid rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  border-left-color: rgb(19, 19, 19);
  animation: spin 1s ease infinite;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

#loseModal .modal-title {
  font-weight: 800;
  line-height: 1.25;
}
#loseModal .subtitle {
  text-wrap: balance;
}
#loseModal .wrapper {
  background-color: #f2f2f2;
}

#userFormModal {
  color: #555;
}
#userFormModal .subtitle {
  text-wrap: balance;
}
#userFormModal .form-floating label {
  color: rgba(33, 37, 41, 0.51);
}
#userFormModal .form-check-input-dark {
  background-color: #fff; /* couleur sombre */
  border-color: #b1b1b1;
}
#userFormModal .form-check-input-dark:checked {
  background-color: #252525; /* Couleur verte (success) quand c'est coché */
  border-color: #101010;
}
#userFormModal .form-check-input-dark:focus {
  border-color: #b1b1b1; /* bordure claire */
}
#userFormModal .player-form-error {
  font-size: 0.875em;
  color: rgb(220, 53, 69);
}
#userFormModal button.btn#btnSubmit {
  height: 3rem;
}
#userFormModal button.btn#btnSubmit:hover, #userFormModal button.btn#btnSubmit[disabled] {
  background-color: rgb(33, 37, 41);
}

#confirmationSendingEmailModal .subtitle {
  text-wrap: balance;
}
#confirmationSendingEmailModal .wrapper {
  background-color: #f2f2f2;
}

#alreadyPlayedModal .subtitle {
  text-wrap: balance;
}
#alreadyPlayedModal #remainingTime {
  font-family: roboto, Helvetica, sans-serif;
  font-weight: 900;
  font-size: 2rem;
  color: #bb8439;
  text-shadow: rgba(0, 0, 0, 0.15) 0px 15px 25px, rgba(0, 0, 0, 0.05) 0px 5px 10px;
}
#alreadyPlayedModal .wrapper {
  background-color: #f2f2f2;
}

.page-item.active > .page-link {
  background-color: #163690;
}

.page-link {
  color: #202124;
}

.page-item:not(.active) > .page-link:hover {
  color: #163690;
}

.page-link:focus {
  color: inherit;
  box-shadow: none;
}

body {
  display: flex;
  flex-direction: column;
}

.container-fluid {
  max-width: 1400px;
}

.content-wrapper {
  margin: 1em auto;
  max-width: 890px;
  width: 95%;
}

footer {
  margin-top: auto;
  background-color: #f8f9fa;
  min-height: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

footer p {
  text-align: center;
  font-size: 0.75rem;
  color: #45474b;
  line-height: 1.36;
  padding-block: 1rem;
}

footer a {
  transition: color 0.3s ease-out;
}
footer a:hover {
  color: #163690;
}

header {
  margin-top: 4rem;
}

nav.navbar {
  transition: 0s background-color ease-in-out, 0s color ease-in-out;
  font-size: 1rem;
  background-color: #f8f9fa;
  box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3), 0 2px 6px 2px rgba(60, 64, 67, 0.15);
  color: inherit;
}
nav.navbar .logo img {
  height: 2.8rem;
  width: 2.8rem;
}
nav.navbar .navbar-brand {
  font-family: montserrat, Helvetica, sans-serif;
  font-weight: 800;
  transition: 0s color ease-in-out;
  color: inherit;
}
nav.navbar .nav-item .nav-link {
  position: relative;
  transition: 0s background-color ease-in-out, 0s color ease-in-out;
  background-color: inherit;
  color: inherit;
}
nav.navbar .nav-item-dropdown.active,
nav.navbar .nav-item-dropdown.active:active {
  background-color: #f8f9fa;
}
nav.navbar .nav-item-dropdown.active > a,
nav.navbar .nav-item.active:active .nav-link,
nav.navbar .nav-item.active .nav-link {
  color: #202124;
}
nav.navbar .nav-link:focus-visible {
  box-shadow: none;
}
nav.navbar .dropdown-menu.mega-menu ul {
  list-style: none;
  padding: 0;
}
nav.navbar .dropdown-menu.mega-menu .dropdown-item-label {
  display: inline-block;
  background-color: rgba(157, 159, 165, 0.139);
  color: #202124;
  cursor: default;
}
@media screen and (min-width: 992px) {
  nav.navbar .nav-item.active .nav-link::before {
    content: "";
    position: absolute;
    bottom: -0.75rem;
    left: 0;
    width: 100%;
    height: 0.35rem;
    background-color: #163690;
    border-top-right-radius: 0.25rem;
    border-top-left-radius: 0.25rem;
  }
  nav.navbar .dropdown-menu {
    box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3), 0 2px 6px 2px rgba(60, 64, 67, 0.15);
    border: none;
  }
  nav.navbar .dropdown-item {
    font-weight: inherit;
    color: rgba(0, 0, 0, 0.6509803922);
  }
  nav.navbar .dropdown-item.active,
  nav.navbar .dropdown-item:active {
    background-color: #f8f9fa;
  }
}

header form[name=filters_form] label {
  text-align: left;
}
header form[name=filters_form] .search-btn-wrapper {
  height: 3.93rem;
}

.form-error .invalid-feedback {
  text-align: left;
  line-height: 1.15;
  opacity: 0;
  transform: translateY(-1rem);
  animation: slideDownError 0.3s ease-out forwards;
}

@keyframes slideDownError {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
header form[name=establishments_form] label {
  text-align: left;
}

.section-api-google-reviews-page #modal-api-google-reviews .btn-close:focus {
  box-shadow: none;
}
.section-api-google-reviews-page .content-wrapper .establishment-img {
  object-fit: cover;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
}
.section-api-google-reviews-page .content-wrapper table tr,
.section-api-google-reviews-page .content-wrapper table td {
  min-height: 8rem;
}
.section-api-google-reviews-page .content-wrapper table thead th,
.section-api-google-reviews-page .content-wrapper table tr td {
  color: #202124;
  vertical-align: middle;
}
.section-api-google-reviews-page .content-wrapper table tbody tr td:nth-child(1) {
  min-width: 2rem;
}
.section-api-google-reviews-page .content-wrapper table tbody tr td:nth-child(2) {
  min-width: 7rem;
}
.section-api-google-reviews-page .content-wrapper table tbody tr td:nth-child(3) {
  min-width: 16rem;
}
.section-api-google-reviews-page .content-wrapper table tbody tr td:nth-child(6) {
  min-width: 6rem;
  height: auto;
}
.section-api-google-reviews-page .content-wrapper .table-actions-wrapper {
  vertical-align: middle;
}
.section-api-google-reviews-page .content-wrapper .table-actions-wrapper button.btn {
  display: flex;
  justify-content: center;
  align-self: center;
  height: 2.35rem;
}
.section-api-google-reviews-page .content-wrapper .table-actions-wrapper button.btn img {
  padding-bottom: 0.1rem;
}

.section-conditions-of-sale-page header p {
  margin: auto;
}

.section-change-password .content-wrapper {
  max-width: 30rem;
  margin: auto;
  background: #f8f9fa;
  padding: 3rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.section-change-password .form-control {
  max-width: 100%;
  padding: 0.75rem 1.25rem;
}

.section-change-password button.btn {
  width: 100%;
}

.section-dashboard-page header p {
  max-width: 38ch;
  margin: auto;
}
.section-dashboard-page header form {
  margin: 1em auto;
  max-width: 890px;
  width: 95%;
}
.section-dashboard-page header form .btn {
  margin-top: auto;
  height: 2.35rem;
}
.section-dashboard-page .content-wrapper ul {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.section-error-page .error-illustration {
  max-width: 100%;
  height: auto;
}

body.game-page {
  position: relative;
  width: 100%;
  background-color: var(--background-color);
  color: var(--text-color);
  min-height: 100vh;
}

.container-game-page {
  position: relative;
  height: 100%;
  width: 100%;
  font-family: "Raleway", sans-serif;
  font-weight: 900;
  min-height: 100vh;
}
.container-game-page:has(> #main-loader-wrapper:not(.hidden)) {
  background-color: #c3c5c5;
}
.container-game-page #main-loader-wrapper:not(.hidden) #main-loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
  border: 1rem solid rgba(0, 0, 0, 0.1);
  width: clamp(4rem, 5vw + 1px, 6rem);
  height: clamp(4rem, 5vw + 1px, 6rem);
  border-radius: 50%;
  border-left-color: rgb(19, 19, 19);
  animation: spin 1s ease infinite;
}
.container-game-page #main-loader-wrapper:not(.hidden) p {
  position: absolute;
  top: calc(50% + clamp(4rem, 5vw + 1px, 6rem) - 1.2rem);
  left: 50%;
  transform: translate(-50%, -50%);
  color: rgb(19, 19, 19);
}
@keyframes spin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

.hidden {
  display: none;
}

.section-game-page {
  line-height: 1.35;
}
.section-game-page header {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  padding-block: 1.2rem;
  max-height: 23vh;
}
@media screen and (max-width: 370px) {
  .section-game-page header {
    max-height: 21vh;
    gap: 1.2rem;
  }
}
.section-game-page header h1,
.section-game-page header h2,
.section-game-page header h3 {
  font-weight: 800;
  text-align: center;
  margin: 0;
  text-transform: uppercase;
}
.section-game-page header h1 {
  font-size: 2.5rem;
}
.section-game-page header h2 {
  font-size: 2rem;
}
.section-game-page header h3 {
  font-size: 1.5rem;
}
.section-game-page h2 {
  font-family: francois, Helvetica, sans-serif;
  font-weight: 100;
  font-size: 2rem;
}
.section-game-page .btn-play {
  width: 9rem;
  height: 3rem;
  font-family: francois, Helvetica, sans-serif;
  font-weight: 400;
  font-size: 1.8rem;
  padding: 0.5rem 1rem;
  border-radius: 5px;
  border: 1px solid #000000;
  transition: all 0.3s ease;
  cursor: pointer;
  text-transform: uppercase;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.section-game-page .btn-play:active {
  background-color: #4d5154;
}

@media (max-width: 768px) {
  .section-game-page header {
    margin-top: 4rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .section-game-page header h1,
  .section-game-page header h2,
  .section-game-page header h3 {
    font-weight: 600;
  }
  .section-game-page header #logo {
    margin-bottom: 0.5rem;
  }
  .section-game-page header #logo {
    margin-bottom: 5px;
  }
  .section-game-page header {
    margin-top: 4rem;
  }
  .section-game-page header h1 {
    font-size: 2rem;
  }
  .section-game-page header h2 {
    font-size: 1.75rem;
  }
  .section-game-page header h3 {
    font-size: 1.25rem;
  }
  #myCanvas {
    width: 850px;
    height: 850px;
    transform: translateX(-110%);
    left: 95%;
    top: 30%;
    position: absolute;
  }
  .section-game-page .btn-play {
    position: absolute;
    right: 3rem;
    top: 22rem;
  }
}
@media (max-width: 450px) {
  .section-game-page header {
    margin-top: 4rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .section-game-page header #logo {
    margin-bottom: 5px;
  }
  .section-game-page header h1,
  .section-game-page header h2,
  .section-game-page header h3 {
    font-weight: 600;
  }
  .section-game-page header h1 {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 450px) and (max-width: 370px) {
  .section-game-page header h1 {
    font-size: 0.5rem;
  }
}
@media (max-width: 450px) {
  .section-game-page header h3 {
    font-size: 1.25rem;
  }
  #gameContent h2 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 450px) and (max-width: 370px) {
  #gameContent h2 {
    font-size: 1.75rem;
  }
}
@media (max-width: 450px) {
  #gameContent #logo {
    height: 8.5rem !important;
    width: auto !important;
    object-fit: cover;
  }
  #myCanvas {
    width: 650px;
    height: 650px;
    transform: translateX(-110%);
    left: 95%;
    top: 30%;
    position: absolute;
  }
  .section-game-page .btn-play {
    position: absolute;
    right: 3rem;
    top: 49%;
    font-size: 1.8rem;
    text-shadow: 0 3px 6px rgb(0, 0, 0);
    border-radius: 0.6rem;
    box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.75);
  }
}
@media screen and (max-width: 450px) and (max-width: 370px) {
  .section-game-page .btn-play {
    font-size: 1.6rem;
  }
}
#gameContent .modal-dialog {
  max-width: 550px;
  width: calc(100% - 2rem);
  margin: 1.75rem auto;
}
#gameContent .modal-content {
  border-radius: 0.6rem;
  padding: 1.5rem;
  background-color: #f9f9f9;
  font-weight: 700;
  box-shadow: rgba(0, 0, 0, 0.6) 0px 2px 4px, rgba(0, 0, 0, 0.5) 0px 7px 13px -3px;
}
#gameContent .modal-content .wrapper {
  box-shadow: rgba(0, 0, 0, 0.6) 0px 2px 4px, rgba(0, 0, 0, 0.5) 0px 7px 13px -3px, rgba(0, 0, 0, 0.4) 0px -6px 0px inset;
  border-radius: 0.6rem;
}
#gameContent .modal-header {
  border-bottom: none;
}
#gameContent .modal-header .modal-title {
  font-size: 1.8rem;
  color: #333;
  font-family: francois, sans-serif;
  font-weight: 300;
  line-height: 1.02;
  text-wrap: pretty;
}
#gameContent .modal-body .btn-primary {
  background-color: #007bff;
  border: none;
}
#gameContent .modal-body .btn-primary:hover {
  background-color: #0062cc;
}
#gameContent .modal-body .btn-outline-secondary {
  color: #007bff;
  border: 1px solid #007bff;
}
#gameContent .modal-body .btn-outline-secondary:hover {
  background-color: #007bff;
  color: #fff;
}
#gameContent #clockdiv {
  font-size: 1.2rem;
  margin-top: 1rem;
  color: #333;
}

#confetti-canvas {
  position: absolute;
  z-index: 1;
  inset: 0;
  height: 100%;
  width: 100%;
  pointer-events: none;
}

.landscape-warning,
.desktop-warning {
  display: none;
}

@media screen and (min-width: 768px) {
  .container-game-page,
  .landscape-warning {
    display: none;
  }
  .desktop-warning {
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.91);
    color: white;
    justify-content: center;
    align-items: center;
    text-align: center;
    z-index: 9999;
  }
  .desktop-warning p {
    padding: 3rem;
    font-size: 1.25rem;
    line-height: 1.35;
    text-wrap: balance;
    max-width: 58ch;
  }
}
/* Masquer le contenu du jeu en mode paysage sur les portables uniquement*/
@media screen and (max-width: 768px) and (max-height: 500px) and (orientation: landscape) {
  .container-game-page,
  .desktop-warning {
    display: none;
  }
  .landscape-warning {
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.91);
    color: white;
    justify-content: center;
    align-items: center;
    text-align: center;
    z-index: 9999;
  }
  .landscape-warning p {
    padding: 3rem;
    font-size: 1.25rem;
    line-height: 1.35;
    text-wrap: balance;
  }
}
.section-gift-details-page header p {
  max-width: 38ch;
  margin: auto;
}
.section-gift-details-page .content-wrapper .input-wrapper label,
.section-gift-details-page .content-wrapper .input-wrapper input,
.section-gift-details-page .content-wrapper .input-wrapper textarea,
.section-gift-details-page .content-wrapper table thead th,
.section-gift-details-page .content-wrapper table tr td {
  color: #202124;
}
.section-gift-details-page .content-wrapper table thead th,
.section-gift-details-page .content-wrapper table tr td {
  vertical-align: middle;
}
.section-gift-details-page .content-wrapper table tr {
  height: 4rem;
}
.section-gift-details-page .content-wrapper .input-wrapper label {
  font-weight: 600;
}
.section-gift-details-page .content-wrapper .input-wrapper input,
.section-gift-details-page .content-wrapper .input-wrapper textarea {
  background-color: #f8f9fa;
}
.section-gift-details-page .content-wrapper .input-wrapper textarea {
  min-height: 2.4rem;
  resize: none;
}
@media screen and (min-width: 768px) {
  .section-gift-details-page .content-wrapper .input-wrapper textarea {
    height: 2.4rem;
  }
}
.section-gift-details-page .content-wrapper table tbody tr td:nth-child(3) {
  min-width: 15rem;
}
.section-gift-details-page .content-wrapper table tbody tr td:nth-child(4) {
  min-width: 9rem;
}
.section-gift-details-page .content-wrapper table tbody tr td:nth-child(5),
.section-gift-details-page .content-wrapper table tbody tr td:nth-child(6) {
  min-width: 8rem;
}

.section-social-links-stat-page header form .btn {
  margin-top: auto;
  height: 2.35rem;
}
.section-social-links-stat-page header form {
  margin: 1em auto;
  max-width: 890px;
  width: 95%;
}
.section-social-links-stat-page .content-wrapper .stat-google-review-card__wrapper {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 918px) {
  .section-social-links-stat-page .content-wrapper .stat-google-review-card__wrapper {
    justify-content: center;
    gap: 2rem;
  }
}
.section-social-links-stat-page .content-wrapper .google-reviews-note-canvas,
.section-social-links-stat-page .content-wrapper .google-reviews-qty-canvas {
  position: relative;
  height: clamp(225px, 45vw + 1px, 445px);
  width: 100%;
  background-color: #f8f9fa;
}
.section-social-links-stat-page .content-wrapper #google-reviews-note-chart,
.section-social-links-stat-page .content-wrapper #google-reviews-qty-chart {
  background-color: #f8f9fa;
  padding: 0.75rem;
}
.section-social-links-stat-page .content-wrapper #google-reviews-qty-chart {
  padding-right: 0.75rem;
}
@media screen and (min-width: 568px) {
  .section-social-links-stat-page .content-wrapper #google-reviews-qty-chart {
    padding-right: 1.75rem;
  }
}
.section-social-links-stat-page .content-wrapper .info-stat {
  color: rgba(141, 145, 155, 0.5764705882);
}

.section-home-page header p {
  max-width: 38ch;
  margin: auto;
}
.section-home-page .content-wrapper p {
  font-weight: 400;
}
.section-home-page .img-home {
  width: 100%;
  height: auto;
}

.section-legal-notice-page header p {
  max-width: 38ch;
  margin: auto;
}

.section-list-admin-clients-page header p {
  max-width: 38ch;
  margin: auto;
}
.section-list-admin-clients-page .content-wrapper .input-wrapper label,
.section-list-admin-clients-page .content-wrapper .input-wrapper input,
.section-list-admin-clients-page .content-wrapper table tr,
.section-list-admin-clients-page .content-wrapper table td {
  height: 4rem;
}
.section-list-admin-clients-page .content-wrapper table thead th,
.section-list-admin-clients-page .content-wrapper table tr td {
  color: #202124;
  vertical-align: middle;
}
.section-list-admin-clients-page .content-wrapper .input-wrapper label {
  font-weight: 600;
}
.section-list-admin-clients-page .content-wrapper .input-wrapper input {
  background-color: #f8f9fa;
}
.section-list-admin-clients-page .content-wrapper table tbody tr td:nth-child(1) {
  min-width: 2rem;
}
.section-list-admin-clients-page .content-wrapper table tbody tr td:nth-child(2) {
  min-width: 8rem;
}
.section-list-admin-clients-page .content-wrapper table tbody tr td:nth-child(3) {
  min-width: 8rem;
}
.section-list-admin-clients-page .content-wrapper table tbody tr td:nth-child(4) {
  min-width: 8rem;
}
.section-list-admin-clients-page .content-wrapper table tbody tr td:nth-child(5) {
  min-width: 8rem;
}
.section-list-admin-clients-page .content-wrapper table tbody tr td:nth-child(7) {
  min-width: 5rem;
}
.section-list-admin-clients-page .content-wrapper .table-actions-wrapper {
  vertical-align: middle;
}
.section-list-admin-clients-page .content-wrapper .table-actions-wrapper button.btn {
  display: flex;
  justify-content: center;
  align-self: center;
  height: 2.35rem;
}
.section-list-admin-clients-page .content-wrapper .btn-download-admin-clients {
  height: 2.35rem;
}
.section-list-admin-clients-page .content-wrapper .btn-download-admin-clients span {
  display: none;
}
@media screen and (min-width: 370px) {
  .section-list-admin-clients-page .content-wrapper .btn-download-admin-clients span {
    display: inline;
  }
}

.section-list-campaigns-page .content-wrapper table tr,
.section-list-campaigns-page .content-wrapper table td {
  height: 4rem;
}
.section-list-campaigns-page .content-wrapper table thead th,
.section-list-campaigns-page .content-wrapper table tr td {
  color: #202124;
  vertical-align: middle;
}
.section-list-campaigns-page .content-wrapper table tbody tr td:nth-child(1) {
  min-width: 2rem;
}
.section-list-campaigns-page .content-wrapper table tbody tr td:nth-child(2) {
  min-width: 10rem;
}
.section-list-campaigns-page .content-wrapper table tbody tr td:nth-child(3) {
  min-width: 14rem;
}
.section-list-campaigns-page .content-wrapper table tbody tr td:nth-child(4) {
  min-width: 2rem;
}
.section-list-campaigns-page .content-wrapper table tbody tr td:nth-child(7) {
  min-width: 6rem;
}
.section-list-campaigns-page .content-wrapper .table-actions-wrapper {
  vertical-align: middle;
}
.section-list-campaigns-page .content-wrapper .table-actions-wrapper button.btn {
  display: flex;
  justify-content: center;
  align-self: center;
  height: 2.35rem;
}

.section-list-clients-page header p {
  max-width: 38ch;
  margin: auto;
}
.section-list-clients-page .content-wrapper .input-wrapper label,
.section-list-clients-page .content-wrapper .input-wrapper input,
.section-list-clients-page .content-wrapper table tr {
  height: 4rem;
}
.section-list-clients-page .content-wrapper table thead th,
.section-list-clients-page .content-wrapper table tr td {
  color: #202124;
  vertical-align: middle;
}
.section-list-clients-page .content-wrapper .input-wrapper label {
  font-weight: 600;
}
.section-list-clients-page .content-wrapper .input-wrapper input {
  background-color: #f8f9fa;
}
.section-list-clients-page .content-wrapper table tbody tr td:nth-child(1) {
  min-width: 2rem;
}
.section-list-clients-page .content-wrapper table tbody tr td:nth-child(2) {
  min-width: 12rem;
}
.section-list-clients-page .content-wrapper table tbody tr td:nth-child(3) {
  min-width: 20rem;
}
.section-list-clients-page .content-wrapper table tbody tr td:nth-child(4) {
  min-width: 9rem;
}
.section-list-clients-page .content-wrapper .btn-download-clients {
  height: 2.35rem;
}
.section-list-clients-page .content-wrapper .btn-download-clients span {
  display: none;
}
@media screen and (min-width: 370px) {
  .section-list-clients-page .content-wrapper .btn-download-clients span {
    display: inline;
  }
}

.section-list-of-gifts-page header p {
  max-width: 38ch;
  margin: auto;
}
.section-list-of-gifts-page header form {
  margin: 1em auto;
  max-width: 890px;
  width: 95%;
}
.section-list-of-gifts-page header form .btn {
  margin-top: auto;
  height: 2.35rem;
}
.section-list-of-gifts-page .content-wrapper .input-wrapper label,
.section-list-of-gifts-page .content-wrapper .input-wrapper input,
.section-list-of-gifts-page .content-wrapper table thead th,
.section-list-of-gifts-page .content-wrapper table tr td {
  color: #202124;
}
.section-list-of-gifts-page .content-wrapper table thead th,
.section-list-of-gifts-page .content-wrapper table tr td {
  vertical-align: middle;
}
.section-list-of-gifts-page .content-wrapper .input-wrapper label {
  font-weight: 600;
}
.section-list-of-gifts-page .content-wrapper .input-wrapper input {
  background-color: #f8f9fa;
}
.section-list-of-gifts-page .content-wrapper table tbody tr td:nth-child(2) {
  min-width: 8rem;
}
.section-list-of-gifts-page .content-wrapper table tbody tr td:nth-child(3) {
  min-width: 22rem;
}
.section-list-of-gifts-page .content-wrapper table tbody tr td:nth-child(4),
.section-list-of-gifts-page .content-wrapper table tbody tr td:nth-child(5),
.section-list-of-gifts-page .content-wrapper table tbody tr td:nth-child(6) {
  min-width: 5rem;
}
.section-list-of-gifts-page .content-wrapper table tbody tr td:nth-child(7) {
  min-width: 4rem;
}
.section-list-of-gifts-page .content-wrapper .view-details-action {
  vertical-align: middle;
}
.section-list-of-gifts-page .content-wrapper .view-details-action button.btn {
  display: flex;
  justify-content: center;
  align-self: center;
  height: 2.35rem;
}

.section-login-page header p {
  max-width: 25ch;
  margin: auto;
}
.section-login-page form {
  margin: auto;
  max-width: 26rem;
  height: auto;
  background: #f8f9fa;
  padding: 3rem;
  box-shadow: 0 1px 2px 0 rgba(60, 64, 67, 0.3), 0 2px 6px 2px rgba(60, 64, 67, 0.15);
  border-radius: 0.5rem;
}
.section-login-page form button.btn {
  width: 100%;
}

.section-prize-state-page header p {
  max-width: 25ch;
  margin: auto;
}
.section-prize-state-page table th {
  width: 50%;
}

.section-general-informations-page header p {
  max-width: 38ch;
  margin: auto;
}
.section-general-informations-page .content-wrapper .social-links-group,
.section-general-informations-page .content-wrapper .input-wrapper {
  display: flex;
  flex-direction: column;
}
.section-general-informations-page .content-wrapper .social-links-group input,
.section-general-informations-page .content-wrapper .social-links-group textarea,
.section-general-informations-page .content-wrapper .input-wrapper input,
.section-general-informations-page .content-wrapper .input-wrapper textarea {
  width: inherit;
  background-color: #f8f9fa;
  border-radius: 0.375rem;
}
.section-general-informations-page .content-wrapper .social-links-group textarea,
.section-general-informations-page .content-wrapper .input-wrapper textarea {
  height: 5.5em;
  resize: none;
}
.section-general-informations-page .content-wrapper .social-links-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: start;
}
.section-general-informations-page .content-wrapper .form-label,
.section-general-informations-page .content-wrapper .social-links-label {
  color: rgba(141, 145, 155, 0.5764705882);
}
.section-general-informations-page .content-wrapper .social-links-label {
  padding-block: 0;
  margin-bottom: 0.5rem;
  line-height: 17.6px;
}
.section-general-informations-page .content-wrapper .social-links-group {
  background-color: #f8f9fa;
  height: 8rem;
  border-radius: 0.375rem;
  border: 1px solid rgb(222, 226, 230);
  overflow: auto;
}
.section-general-informations-page .content-wrapper .social-links-group a {
  text-decoration: none;
  line-height: 140%;
  font-weight: 400;
}

.section-send-email-page header p {
  max-width: 38ch;
  margin: auto;
}
.section-send-email-page .content-wrapper form .form-error .invalid-feedback {
  text-align: left;
  line-height: 1.15;
  opacity: 0;
  transform: translateY(-1rem);
  animation: slideDownError 0.3s ease-out forwards;
}
@keyframes slideDownError {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.section-send-email-page .content-wrapper form textarea {
  min-height: 10rem;
  max-height: 18rem;
}
.section-send-email-page .content-wrapper form #send-email-button {
  display: flex;
  align-items: center;
  justify-content: center;
}
.section-send-email-page .content-wrapper form #send-email-button:disabled {
  cursor: not-allowed;
  opacity: 0.74;
}
.section-send-email-page .content-wrapper form .spinner-border {
  display: none;
  width: 1.2rem;
  height: 1.2rem;
  border-width: 0.16em;
}
.section-send-email-page .content-wrapper form .loading .spinner-border {
  display: inline-block;
}
.section-send-email-page .content-wrapper form .loading .btn-text {
  display: none;
}

.section-show-campaign-page .loader-wrapper {
  position: relative;
  display: block;
  height: 340px;
  width: 320px;
  background-color: rgba(38, 38, 38, 0.8117647059);
  border-radius: 1rem;
}
.section-show-campaign-page .loader-wrapper .loader {
  pointer-events: none;
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  width: 69px;
  height: 69px;
  border: 7px solid #f3f3f3;
  border-radius: 50%;
  border-top: 7px solid #000;
  animation: spin 2s linear infinite;
  user-select: none;
}
.section-show-campaign-page .loader-wrapper .loader-msg {
  text-align: center;
  padding-top: 6rem;
  color: #f3f3f3;
}
.section-show-campaign-page .loader-wrapper .qrcode-img {
  position: absolute;
  top: 0;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.6s ease-in-out;
  z-index: 20;
}
@keyframes spin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

.section-social-links-stat-page .content-wrapper .social-links-canvas {
  position: relative;
  height: clamp(225px, 45vw + 1px, 445px);
  width: 100%;
  background-color: #f8f9fa;
}
.section-social-links-stat-page .content-wrapper #social-links-chart {
  background-color: #f8f9fa;
  padding: 0.75rem;
}
.section-social-links-stat-page .content-wrapper .info-stat {
  color: rgba(141, 145, 155, 0.5764705882);
}

/*# sourceMappingURL=app.output.css.map */
