/**
 * @file
 * Styling "Tarte au Citron" with DSFR.
 */

/* stylelint-disable selector-id-pattern, no-descending-specificity */

:root {
  --tac-focus: #0a76f6;
  --tac-overlay: hsl(0deg 0% 9% / .64);
}

/* Buttons */
button#tarteaucitronPrivacyUrl {
  position: absolute;
  font-size: .625rem;
  background: transparent;
  bottom: .5rem;
  left: 2.5rem;
}

/* Overlay */
#tarteaucitronBack {
  background-color: var(--tac-overlay);
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  opacity: 1 !important; /* stylelint-disable-line declaration-no-important */
  z-index: calc(var(--ground) + 1750);
}

/* Manager - Open button positions */
.tarteaucitronIconBottomLeft,
.tarteaucitronIconBottomRight,
.tarteaucitronIconTopLeft,
.tarteaucitronIconTopRight {
  position: fixed;
  z-index: calc(var(--ground) + 4000);
}

.tarteaucitronIconBottomLeft,
.tarteaucitronIconBottomRight {
  bottom: 0;
}

.tarteaucitronIconTopLeft,
.tarteaucitronIconTopRight {
  top: 0;
}

.tarteaucitronIconBottomLeft,
.tarteaucitronIconTopLeft {
  left: 0;
}

.tarteaucitronIconBottomRight,
.tarteaucitronIconTopRight {
  right: 0;
}

/* Displaying the "Tarte au citron" icon as a design system button */
#tarteaucitronIcon #tarteaucitronManager > img {
  display: none;
}

#tarteaucitronIcon #tarteaucitronManager {
  background: var(--background-action-high-blue-france);
  color: var(--text-inverted-blue-france);
  padding: 0.5rem 1.5rem;
  line-height: 1.5rem;
  min-height: 2.5rem;
  font-size: inherit;
}

#tarteaucitronIcon #tarteaucitronManager::before {
  /* Need to set text manually. */
  /* @todo: Manage multilingualism */
  content: "Cookies";
}

/* --------------------------------------------- */

/**
 * Banner styles (#tarteaucitronAlertBig) and banner elements
 */

/* Banner */
.tarteaucitronBeforeVisible #tarteaucitronAlertBig {
  display: flex !important; /* stylelint-disable-line declaration-no-important */
}

#tarteaucitronAlertBig {
  --idle: transparent;
  --hover: var(--background-alt-overlap-grey-hover);
  --active: var(--background-alt-overlap-grey-active);
  --text-spacing: 0 0 1rem;
  --title-spacing: 0 0 1rem;

  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  max-height: calc(100% - 8rem);
  padding: 1rem;
  overflow: auto;
  z-index: calc(var(--ground) + 1500);
  background-color: var(--background-alt-overlap-grey);
  filter: drop-shadow(var(--overlap-shadow));
  box-shadow: inset 0 0 0 1px var(--border-default-grey);
  flex-wrap: wrap;
  justify-content: flex-end;
}

@media (width >= 48em) {
  /*! media md */
  #tarteaucitronAlertBig {
    padding: 2rem;
    bottom: 2.5rem;
    left: 2.5rem;
    max-width: 40rem;
    max-height: calc(100% - 5rem);
  }
}

/* Banner text */
#tarteaucitronDisclaimerAlert {
  margin-bottom: 2rem;

  /* text size sm */
  font-size: .875rem !important; /* stylelint-disable-line declaration-no-important */
}

/* Overriding of the design system's margin bottom too large */
#tarteaucitronDisclaimerAlert > p {
  margin-bottom: 1rem;
}

#tarteaucitronDisclaimerAlert > p:last-child {
  margin-bottom: 0;
}

/* Banner action buttons */
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCTAButton,
#tarteaucitronSaveButton {
  --hover-tint: var(--hover);
  --hover: var(--background-action-high-blue-france-hover);
  --active: var(--background-action-high-blue-france-active);

  font-size: 1rem;
  font-weight: 500;
  background-color: var(--background-action-high-blue-france);
  color: var(--text-inverted-blue-france);
  padding: 0.5rem 1rem;
  line-height: 1.5rem;
  min-height: 2.5rem;
  margin: .5rem 0;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert:hover,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize:hover,
#tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCTAButton:hover,
#tarteaucitronSaveButton:hover {
  background-color: var(--hover-tint);
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
  --hover: inherit;
  --active: inherit;

  background-color: transparent;
  color: var(--text-action-high-blue-france);
  box-shadow: inset 0 0 0 1px var(--border-action-high-blue-france);
  order: 5;
  margin-bottom: 0;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied2 {
  order: 4;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
  order: 3;
  margin-right: 0;
}

@media screen and (width >= 36em) {
  #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert,
  #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize,
  #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCTAButton {
    width: auto;
    margin: 0 .5rem !important; /* stylelint-disable-line declaration-no-important */
    display: flex !important; /* stylelint-disable-line declaration-no-important */
  }

  #tarteaucitronRoot #tarteaucitronAlertBig .tarteaucitronCTAButton:not(.tarteaucitronAllow, .tarteaucitronDeny) {
    margin: 0 0 0 auto !important; /* stylelint-disable-line declaration-no-important */
  }

  #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
    order: 3;
  }

  #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize,
  #tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
    order: 5;
  }
}

/* --------------------------------------------- */

/**
 * Cookie manager styles (#tarteaucitron) and manager elements
 */

#tarteaucitron {
  display: none;
  height: 90%;
  padding: 3rem 0 0;
  margin: 0;
  left: 0;
  top: auto !important; /* stylelint-disable-line declaration-no-important */
  bottom: 0 !important; /* stylelint-disable-line declaration-no-important */
  position: fixed;
  width: 100%;
  z-index: calc(var(--ground) + 2000);
}

#tarteaucitron::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: var(--background-lifted-grey);
  height: calc(3rem + 1px);
  width: 100%;
}

@media screen and (width >= 48em) {
  #tarteaucitron {
    width: 50rem;
    height: initial;
    max-height: 80%;
    left: 50%;
    top: 0 !important; /* stylelint-disable-line declaration-no-important */
    margin: auto auto auto -25rem;
  }
}

#tarteaucitronRoot ul,
#tarteaucitronRoot ol {
  --ul-type: none;
}

/* Button to close the manager */
#tarteaucitronRoot .purgeBtn,
#tarteaucitronRoot #tarteaucitronCloseCross,
#tarteaucitronRoot #tarteaucitronClosePanel,
#tarteaucitronAlertSmall #tarteaucitronClosePanelCookie {
  padding: .25rem .75rem;
  line-height: 1.5rem;
  min-height: 2rem;
  max-height: none;
  max-width: 100%;
  display: flex;
  flex-direction: row;
  font-weight: 500;
  align-items: center;
  font-size: .875rem;
  outline-offset: 0;
  overflow: initial;
}

#tarteaucitronRoot #tarteaucitronCloseCross,
#tarteaucitronRoot #tarteaucitronClosePanel,
#tarteaucitronAlertSmall #tarteaucitronClosePanelCookie {
  --hover-tint: var(--hover);

  background-color: transparent;
  color: var(--text-action-high-blue-france);
  position: absolute;
  right: 1rem;
  top: 1rem;

}

#tarteaucitronRoot .purgeBtn:hover,
#tarteaucitronRoot #tarteaucitronCloseCross:hover,
#tarteaucitronRoot #tarteaucitronClosePanel:hover,
#tarteaucitronAlertSmall #tarteaucitronClosePanelCookie:hover {
  background-color: var(--hover-tint);
}

#tarteaucitronRoot .purgeBtn::after,
#tarteaucitronRoot #tarteaucitronCloseCross::after,
#tarteaucitronRoot #tarteaucitronClosePanel::after,
#tarteaucitronAlertSmall #tarteaucitronClosePanelCookie::after {
  --icon-size: 1rem;

  background-color: currentcolor;
  content: "";
  display: inline-block;
  flex: 0 0 auto;
  height: var(--icon-size);
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PHBhdGggZD0ibTEyIDEwLjYgNC45NS00Ljk2IDEuNCAxLjRMMTMuNDIgMTJsNC45NiA0Ljk1LTEuNCAxLjRMMTIgMTMuNDJsLTQuOTUgNC45Ni0xLjQtMS40TDEwLjU4IDEyIDUuNjMgNy4wNWwxLjQtMS40eiIvPjwvc3ZnPg==");
  mask-size: 100% 100%;
  vertical-align: calc(.375em - .5rem);
  width: var(--icon-size);
}

#tarteaucitronRoot #tarteaucitronCloseCross::after,
#tarteaucitronRoot #tarteaucitronClosePanel::after,
#tarteaucitronAlertSmall #tarteaucitronClosePanelCookie::after {
  margin-left: .5rem;
  margin-right: -.125rem;
}

/* Optional banner close button (closePopup) */
#tarteaucitronRoot #tarteaucitronCloseCross {
  position: relative;
  top: -1rem;
  right: -1rem;
  color: transparent;
}

#tarteaucitronRoot span#tarteaucitronCloseCross {
  cursor: pointer;
}

#tarteaucitronRoot #tarteaucitronCloseCross::before {
  /* Need to set text manually. */
  /* @todo: Manage multilingualism */
  content: "Fermer";
  color: var(--text-action-high-blue-france);
}

#tarteaucitronRoot #tarteaucitronCloseCross::after {
  background-color: var(--text-action-high-blue-france);
  margin-left: -.5rem;
}

/* Button to delete cookies in the list */
#tarteaucitronRoot .purgeBtn {
  --hover-tint: var(--hover);
  --hover: var(--background-action-high-blue-france-hover);
  --active: var(--background-action-high-blue-france-active);

  width: 2rem;
  height: 2rem;
  padding: .25rem .5rem;
  background-color: var(--blue-france-sun-113-625);
  color: var(--text-inverted-blue-france);
  margin-right: .25rem;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesList .purgeBtn strong {
  display: none;
}

/* --------------------------------------------- */

/* Link to the "Tarte au citron" website */
.tarteaucitronSelfLink > img {
  display: none;
}

.tarteaucitronSelfLink::before {
  /* Need to set text manually. */
  /* @todo: Manage multilingualism */
  content: "Site officiel de Tarte au citron"
}

/* Overriding design system list styles */
#tarteaucitronServices ul > li::before {
  content: none;
}

#tarteaucitronServices ul > li > ul {
  padding-left: 0;
}

/* Global section to manage all services */
#tarteaucitronRoot .tarteaucitronMainLine {
  margin-bottom: 2.5rem !important; /* stylelint-disable-line declaration-no-important */
}

#tarteaucitronRoot .tarteaucitronBorder > ul {
  margin-top: 1rem;
}

#tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronH1 {
  display: block;
  font-size: 1.375rem;
  line-height: 1.75rem;
  color: var(--text-title-grey);
  margin: 0 0 1rem;
  font-weight: 700;
}

@media screen and (width >= 48em) {
  #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronH1 {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}

#tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk {
  flex-direction: column;
  align-items: flex-start;
}

#tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk::before {
  content: none;
}

#tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk .tarteaucitronDeny {
  margin-left: 0;
  margin-top: 1.5rem;
}

@media screen and (width >= 48em) {
  #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk {
    flex-direction: row;
    align-items: center;
  }

  #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk::before {
    content: "";
  }

  #tarteaucitronRoot .tarteaucitronMainLine .tarteaucitronAsk .tarteaucitronDeny {
    margin-left: 1.5rem;
    margin-top: 0;
  }
}

/* Services wrapper */
#tarteaucitronServices {
  background-color: var(--background-lifted-grey);
  padding: 1rem 1rem 2rem;
}

@media screen and (width >= 48em) {
  #tarteaucitronServices {
    padding: 1rem 2rem 2rem;
  }
}

/* Mandatory cookies container title and buttons  */
#tarteaucitronServicesTitle_mandatory .tarteaucitronH3 {
  font-size: 1rem;
  margin-bottom: .5rem;
  max-width: initial;
}

#tarteaucitronServicesTitle_mandatory .tarteaucitronTitle {
  margin-bottom: 1rem;
}

#tarteaucitronServicesTitle_mandatory .tarteaucitronAsk {
  position: relative;
  top: auto;
  right: auto;
}

/* Service texts wrapper (title and description) */
@media screen and (width >= 48em) {
  .tarteaucitronName {
    max-width: 60%;
  }
}

/* Accept/Reject button wrapper */
.tarteaucitronAsk {
  display: flex;
  margin-top: 2rem;
}

@media screen and (width >= 48em) {
  .tarteaucitronAsk {
    justify-content: flex-end;
    align-items: center;
    margin-top: 0 !important; /* stylelint-disable-line declaration-no-important */
  }

  .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk {
    position: absolute;
    top: 0;
    right: 0;
  }
}

/* Accept/Reject buttons as radio buttons design system */
#tarteaucitronRoot .tarteaucitronAsk .tarteaucitronAllow {
  order: 1;
  margin-right: 1.5rem;
  font-size: 1rem;
}

#tarteaucitronRoot .tarteaucitronAsk .tarteaucitronDeny {
  margin-left: 1.5rem;
  order: 3;
  font-size: 1rem;
}

#tarteaucitronRoot .tarteaucitronAsk::before {
  content: "";
  width: 1px;
  height: 1.5rem;
  order: 2;
  background: var(--border-default-grey);
}

#tarteaucitronRoot .tarteaucitronAllow:not(.tarteaucitronCTAButton, #tarteaucitronSaveButton),
#tarteaucitronRoot .tarteaucitronDeny:not(.tarteaucitronCTAButton, #tarteaucitronSaveButton) {
  background: transparent;
  color: var(--text-label-grey);
  display: inline-flex;
  align-items: center;
  position: relative;
  padding: 0;
}

#tarteaucitronRoot .tarteaucitronAllow:disabled:not(.tarteaucitronCTAButton),
#tarteaucitronRoot .tarteaucitronDeny:disabled:not(.tarteaucitronCTAButton) {
  color: var(--text-disabled-grey) !important; /* stylelint-disable-line declaration-no-important */
}

#tarteaucitronRoot .tarteaucitronAllow:disabled:not(.tarteaucitronCTAButton)::before,
#tarteaucitronRoot .tarteaucitronDeny:disabled:not(.tarteaucitronCTAButton)::before {
  border-color: var(--background-disabled-grey);
}

#tarteaucitronRoot .tarteaucitronAllow:disabled:not(.tarteaucitronCTAButton)::after,
#tarteaucitronRoot .tarteaucitronDeny:disabled:not(.tarteaucitronCTAButton)::after {
  content: none;
}


#tarteaucitronRoot .tarteaucitronAllow.tarteaucitronIsSelected::after,
#tarteaucitronRoot .tarteaucitronDeny.tarteaucitronIsSelected::after {
  opacity: 1;
}

#tarteaucitronRoot .tarteaucitronAllow.tarteaucitronIsSelected::before,
#tarteaucitronRoot .tarteaucitronDeny.tarteaucitronIsSelected::before {
  border: 1px solid var(--blue-france-sun-113-625);
}

#tarteaucitronRoot .tarteaucitronAllow:not(.tarteaucitronCTAButton)::before,
#tarteaucitronRoot .tarteaucitronDeny:not(.tarteaucitronCTAButton)::before {
  content: "";
  display: block;
  flex-shrink: 0;
  border: 1px solid var(--blue-france-sun-113-625);
  border-radius: 50%;
  width: 1.5rem;
  height: 1.5rem;
  margin-right: .5rem;
}

#tarteaucitronRoot .tarteaucitronAllow:not(.tarteaucitronCTAButton)::after,
#tarteaucitronRoot .tarteaucitronDeny:not(.tarteaucitronCTAButton)::after {
  content: "";
  display: block;
  background: var(--blue-france-sun-113-625);
  border-radius: 50%;
  width: .75rem;
  height: .75rem;
  position: absolute;
  left: .375rem;
  opacity: 0;
}

#tarteaucitronRoot .tarteaucitronIsAllowed .tarteaucitronAllow::after,
#tarteaucitronRoot .tarteaucitronIsDenied .tarteaucitronDeny::after,
#tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronAllow::after {
  opacity: 1;
}

#tarteaucitronRoot #tarteaucitronServices_mandatory .tarteaucitronAsk::before {
  content: none;
}


#tarteaucitronRoot [id^="tarteaucitronServices_"] {
  margin-top: 1.5rem;
}

@media screen and (width >= 48em) {
  #tarteaucitronRoot [id^="tarteaucitronServices_"] {
    margin-top: 0;
  }
}

/* Adding borders to the list of services */
.tarteaucitronBorder > ul > li {
  padding: 1.5rem 0;
  box-shadow: inset 0 1px 0 0 var(--border-default-grey);
}

/* Service titles with or without associated tooltip */
#tarteaucitronRoot .tarteaucitronTitle > button,
#tarteaucitronRoot .tarteaucitronTitle > .catToggleBtn {
  background: 0;
  color: var(--text-title-grey);
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 700;
  padding: 0;
  text-align: left;
}

#tarteaucitron #tarteaucitronInfo,
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails {
  color: var(--text-inverted-grey);
  background: var(--background-action-high-grey);
  display: none;
  font-size: .75rem;
  margin-top: 0;
  max-width: 17rem;
  padding: 1rem;
  position: absolute;
  z-index: 1;
}

/* Basic style of service list items */
#tarteaucitron #tarteaucitronServices .tarteaucitronHidden {
  display: none;
  position: relative;
}

/* Title of sub-services */
.tarteaucitronH3 {
  display: block;
  color: var(--text-title-grey);
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
  max-width: 24rem;
}

.tarteaucitronH3 + span {
  display: block;
}

/* Line of a sub-service */
.tarteaucitronLine {
  position: relative;
  margin-bottom: 1rem !important; /* stylelint-disable-line declaration-no-important */
}

/* Override in the case of grouped sub-services */
ul[style="display: block;"] .tarteaucitronLine {
  margin-bottom: 1.5rem;
}

@media screen and (width >= 48em) {
  .tarteaucitronHidden > ul[style="display: block;"] .tarteaucitronLine:not(:last-child),
  .tarteaucitronHidden > ul:last-child:not([style="display: block;"]) .tarteaucitronLine:not(:last-child) {
    margin-bottom: 0;
  }
}

.tarteaucitronHidden > ul[style="display: block;"] .tarteaucitronLine .tarteaucitronH3,
.tarteaucitronHidden > ul:last-child:not([style="display: block;"]) .tarteaucitronLine .tarteaucitronH3 {
  margin-bottom: .5rem;
  font-size: 1rem;
}

.tarteaucitronHidden > ul:last-child:not([style="display: block;"]) .tarteaucitronLine:first-child {
  margin-top: 1.5rem;
}

@media screen and (width >= 48em) {
  .tarteaucitronHidden > ul[style="display: block;"] .tarteaucitronLine {
    display: flex;
  }

  .tarteaucitronHidden > ul[style="display: block;"] .tarteaucitronAsk {
    margin-top: 0;
    margin-right: 0;
    margin-left: auto;
  }
}

.tarteaucitronHidden > ul[style="display: block;"] .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk,
.tarteaucitronHidden > ul[style="display: none;"] .tarteaucitronLine:not(.tarteaucitronMainLine) .tarteaucitronAsk {
  position: relative;
  top: auto;
  right: auto;
  align-items: flex-start;
}

/* Button to expand sub-services */
#tarteaucitronRoot .tarteaucitron-toggle-group {
  background: none;
  margin: 1.5rem 0 0;
  padding: 0;
  border-bottom: 1px solid currentcolor;
  font-size: inherit;
}

#tarteaucitronRoot .tarteaucitron-toggle-group::after {
  --icon-size: 1.5rem;

  background-color: currentcolor;
  display: inline-block;
  content: "";
  margin-left: .5rem;
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PHBhdGggZD0ibTEyIDEzLjE3MiA0Ljk1LTQuOTUgMS40MTQgMS40MTRMMTIgMTYgNS42MzYgOS42MzYgNy4wNSA4LjIyMmw0Ljk1IDQuOTVaIi8+PC9zdmc+");
  mask-size: 100% 100%;
  width: var(--icon-size);;
  height: var(--icon-size);
  vertical-align: calc((.5em - var(--icon-size)) * .5);
}

#tarteaucitronRoot .tarteaucitron-toggle-group[aria-expanded="true"]::after {
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PHBhdGggZD0ibTEyIDEwLjgyOC00Ljk1IDQuOTUtMS40MTQtMS40MTRMMTIgOGw2LjM2NCA2LjM2NC0xLjQxNCAxLjQxNC00Ljk1LTQuOTVaIi8+PC9zdmc+");
}

/* --------------------------------------------- */

/**
 * Styles of the "AlertSmall" button and the modal with the list of cookies
 */

.tarteaucitronAlertSmallBottom,
#tarteaucitronAlertSmall {
  display: none;
  padding: 0;
  position: fixed;
  right: 0;
  text-align: center;
  width: auto;
  z-index: calc(var(--ground) + 1500);
}

.tarteaucitronAlertSmallTop,
.tarteaucitronAlertSmallBottom {
  bottom: 0;
}

#tarteaucitronAlertSmall #tarteaucitronManager,
#tarteaucitronAlertSmall #tarteaucitronCookiesNumber {
  --hover-tint: var(--hover);
  --hover: var(--background-action-high-blue-france-hover);
  --active: var(--background-action-high-blue-france-active);

  position: relative;
  font-size: inherit;
  cursor: pointer;
  background: var(--background-action-high-blue-france);
  color: var(--text-inverted-blue-france);
  padding: 0.5rem 1.5rem !important; /* stylelint-disable-line declaration-no-important */
  line-height: 1.5rem;
  min-height: 2.5rem;
}

#tarteaucitronAlertSmall #tarteaucitronManager:hover,
#tarteaucitronAlertSmall #tarteaucitronCookiesNumber:hover {
  background-color: var(--hover-tint);
}


#tarteaucitronAlertSmall #tarteaucitronCookiesNumber {
  margin-left: .25rem;
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot {
  position: absolute;
  background-color: gray;
  border-radius: 5px;
  display: block;
  height: 5px;
  overflow: hidden;
  width: calc(100% - 3rem);
  left: 1.5rem;
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotGreen,
#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotYellow,
#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotRed {
  display: block;
  float: left;
  height: 100%;
  width: 0;
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotGreen {
  background-color: #1b870b;
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotYellow {
  background-color: #fbda26;
}

#tarteaucitronAlertSmall #tarteaucitronManager #tarteaucitronDot #tarteaucitronDotRed {
  background-color: #9c1a1a;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer {
  display: none;
  max-height: 50%;
  max-width: 500px;
  position: fixed;
  right: 0;
  width: 100%;
  background: var(--background-lifted-grey);
  padding-top: 1rem;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList {
  color: #333;
  font-size: .75rem;
  height: auto;
  overflow: auto;
  text-align: left;
  padding: 0 1.5rem;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronTitle {
  color: var(--text-title-grey);
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  margin: .5rem 0;
  text-align: left;
  width: auto;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList strong {
  color: var(--text-label-grey);
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle {
  padding: .5rem 1.5rem;
  text-align: left;
  color: var(--text-title-grey);
  font-size: 1.25rem;
  font-weight: 700;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesTitle strong {
  color: var(--text-inverted-blue-france);
  font-size: 1rem;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain {
  padding: 0 0 .25rem;
  word-wrap: break-word;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain::before {
  content: none;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain a {
  color: var(--text-title-grey);
  text-decoration: none;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListLeft {
  display: inline-flex;
  width: 40%;
  align-items: center;
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListLeft a strong {
  color: var(--red-marianne-main-472);
}

#tarteaucitronAlertSmall #tarteaucitronCookiesListContainer #tarteaucitronCookiesList .tarteaucitronCookiesListMain .tarteaucitronCookiesListRight {
  color: var(--text-title-grey);
  display: inline-block;
  align-items: center;
  font-size: .75rem;
  margin-left: 10%;
  width: 40%;
}

/**
 * Placeholder styles for disabled services (like YouTube)
 */

.tac_activate {
  background: var(--background-default-grey);
  display: flex;
  padding: 6rem 1rem;
  justify-content: center;
  width: 100%;
}

@media (width <= 860px) {
  .tac_activate {
    padding: 4rem 1rem;
  }
}

.tac_activate .tac_float {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.rf-responsive-vid__player .tac_activate {
  padding: 0;
  height: 100%;
}

.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton)::before,
.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton)::after {
  content: none;
}

.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton) {
  appearance: none;
  font-family: inherit;
  border: none;
  font-size: inherit;
  cursor: pointer;
  background: var(--background-action-high-blue-france);
  color: var(--text-inverted-blue-france);
  padding: 0.5rem 1.5rem;
  line-height: 1.5rem;
  min-height: 2.5rem;
}

.tac_activate .tarteaucitronAllow:not(.tarteaucitronCTAButton):focus {
  outline: 2px solid;
  outline-color: var(--tac-focus);
  outline-offset: 2px;
  z-index: calc(var(--ground) + 2000);
}

.tac_visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap; /* added line */
  border: 0;
}

#tarteaucitronRoot div#tarteaucitronSave {
  text-align: right;
}

#tarteaucitronRoot #tarteaucitronSaveButton.tarteaucitronAllow::before,
#tarteaucitronRoot #tarteaucitronSaveButton.tarteaucitronAllow::after {
  display: none;
}
