@charset "UTF-8";
/*
var(--blue-light): #eff2f5;
$border-style: 1px solid #e7edf3;
$blue-selected: #18ace2;
var(--blue-medium): #dbebf1;
$blue-dark: #8294a7;
$red-danger: #ea5e40;
$gray-custom: #798998;
$p-card-shadow: 0 0 0 1px rgba(63,63,68,0.05), 0 1px 3px 0 rgba(63,63,68,0.15);
$tradastra-dark-blue: #85a6bf;


$tradastra-white: #141820;
$tradastra-background: #070a10;
$tradastra-font-color: #e0e2e7;
$tradastra-default-shadow: 0 8px 16px rgba(213, 229, 255, 0.27);*/
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: local("Lato Light"), local("Lato-Light"), url(/Content/Font/Lato-Light.ttf) format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: local("Lato Light"), local("Lato-Light"), url(/Content/Font/Lato-Light.ttf) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215; }
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: local("Lato Regular"), local("Lato-Regular"), url(/Content/Font/Lato-Regular.ttf) format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: local("Lato Regular"), local("Lato-Regular"), url(/Content/Font/Lato-Regular.ttf) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215; }
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: local("Lato Bold"), local("Lato-Bold"), url(/Content/Font/Lato-Bold.ttf) format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; }
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: local("Lato Bold"), local("Lato-Bold"), url(/Content/Font/Lato-Bold.ttf) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215; }
footer {
  position: absolute;
  bottom: 35px; }
  @media (max-width: 767px) {
    footer {
      display: none; } }

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  text-rendering: optimizeLegibility;
  background-color: #fff; }

body {
  text-align: center;
  padding: 0;
  background-color: var(--background-color);
  font-family: var(--text-font-family), sans-serif !important;
  font-weight: normal;
  position: relative;
  padding-top: 0px;
  margin-left: auto;
  font-size: 1.4em;
  color: var(--text-color);
  min-height: 100vh; }

hr {
  border-top: 1px solid var(--blue-dark);
  border-bottom: none;
  display: block;
  width: 100%;
  margin: 25px 0px; }

h1 {
  font-size: 2.1rem;
  font-weight: 300;
  padding-left: 0px;
  font-family: var(--title-font-family), sans-serif;
  color: var(--title-color); }

h2 {
  font-size: 1.8rem;
  font-weight: 300;
  padding-left: 0px;
  font-family: var(--title-font-family), sans-serif;
  color: var(--text-color);
  margin-top: 0px !important;
  margin-bottom: 10px !important; }

.row {
  margin: revert;
  text-align: left;
  padding-right: revert;
  padding-left: revert;
  --bs-gutter-x: revert;
  --bs-gutter-y: revert;
  display: inline-block;
  width: 100%;
  flex-wrap: revert;
  margin-top: revert;
  margin-right: revert;
  margin-left: revert; }

.row > * {
  display: revert;
  width: revert;
  flex-shrink: revert;
  max-width: revert;
  padding-right: revert;
  padding-left: revert;
  margin-top: revert; }

.hidden {
  display: none !important; }

a.isDisabled {
  cursor: default;
  color: #999 !important; }

.disabled {
  color: #999 !important; }

.elementDisabled {
  background-color: #999 !important;
  color: white; }

input[type='time'], input[type='date'] {
  width: 100%;
  margin: 0px;
  padding-top: 18px;
  padding-left: 8px;
  line-height: normal !important; }

input[type=color] {
  -webkit-appearance: none;
  appearance: none;
  border: none;
  /* Supprime la bordure */
  padding: 0;
  /* Supprime le padding */
  width: 60px;
  /* Largeur fixe */
  height: 36px;
  /* Hauteur fixe */
  background: transparent;
  border-radius: 5px;
  overflow: hidden;
  margin: 10px;
  border: 1px solid var(--blue-dim); }

input[type="color"]::-webkit-color-swatch-wrapper {
  padding: 0; }

input[type="color"]::-webkit-color-swatch {
  border: none; }

.link {
  color: var(--blue-selected);
  cursor: pointer; }
  .link:hover {
    opacity: 0.7; }

input[type="date"]::-webkit-inner-spin-button {
  display: none; }

.col-md-6-custom, .col-sm-12-custom, .col-lg-4-custom, .col-lg-6-custom {
  position: relative;
  min-height: 1px;
  padding-left: 10px;
  padding-right: 10px; }

@media (min-width: 992px) {
  .col-md-6-custom {
    width: 50%;
    float: left; } }

@media (min-width: 768) {
  .col-sm-12-custom {
    width: 100%;
    float: left; } }

@media (min-width: 1450px) {
  .col-lg-4-custom {
    width: 33.33333333%;
    float: left; } }

@media (min-width: 1450px) {
  .col-lg-6-custom {
    width: 50%;
    float: left; } }

/*@media ( max-width: $screen-xs-max ) {
    .modal-dialog {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        margin: 0;
        border-radius: 0;
    }

    .modal-content {
        -webkit-border-radius: 0;
        border-radius: 0;
        border: none;
        min-height: 150px;
        min-width: 460px;
    }

    .modal {
        &.fade .modal-dialog {
            transform: scale(0.9);
            opacity: 0;
            transition: all 0.2s ease;
        }

        &.in .modal-dialog {
            transform: scale(1);
            opacity: 1;
            transition: all 0.2s ease;
        }

        transition: all 0.2s ease;
    }
}*/
/*@media ( min-width: $screen-sm-min ) {*/
.modal-dialog {
  position: relative;
  bottom: 0;
  overflow: visible;
  width: auto;
  display: inline-block;
  margin: auto;
  vertical-align: middle;
  padding-bottom: 60px;
  max-width: calc(100vw - 20px); }

.modal-content {
  -webkit-border-radius: 15px;
  border-radius: var(--border-radius-medium);
  border: none;
  min-height: 170px;
  min-width: 460px; }

.modal {
  transition: all 0.2s ease; }
  .modal.fade .modal-dialog {
    transform: scale(0.9);
    opacity: 0;
    transition: all 0.2s ease;
    transform-origin: 50% 50%; }
  .modal.show .modal-dialog {
    transform: scale(1);
    opacity: 1;
    transition: all 0.2s ease;
    transform-origin: 50% 50%; }
  .modal.show {
    display: flex !important; }

.modal-title-text {
  flex: 1; }

/*}*/
input {
  text-align: left; }

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }

input[type=number] {
  -moz-appearance: textfield;
  text-align: left; }

/* Set width on the form input elements since they're 100% wide by default */
input,
select,
textarea {
  width: 100%; }

a {
  text-decoration: none;
  color: var(--link-color);
  cursor: pointer; }

a:hover, a:active, a:focus {
  opacity: 0.7;
  color: var(--link-color);
  text-decoration: none; }

h4 {
  text-transform: uppercase;
  color: #666; }

.returnLink {
  padding-bottom: 3px;
  padding-top: 0px !important; }

.returnLink a {
  font-size: 1.4rem;
  color: var(--link-color);
  font-weight: normal; }

.returnLink-container {
  text-align: left;
  font-size: 2.5rem;
  padding-left: 20px;
  font-weight: bold; }

.notransition {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -o-transition: none !important;
  transition: none !important; }

.select-menu-hor-container, nav-tabs {
  cursor: default;
  position: sticky;
  top: 60px;
  z-index: 30;
  margin: 0px;
  width: 100%;
  display: flex;
  align-items: center;
  max-width: 1480px;
  white-space: nowrap;
  overflow: visible;
  justify-content: flex-start;
  /* Mobile : les onglets débordent → scroll horizontal au lieu d'être coupés */ }
  .select-menu-hor-container a, nav-tabs a {
    color: inherit; }
  .select-menu-hor-container.nav-tabs, nav-tabs.nav-tabs {
    border-bottom: none !important;
    padding: 10px 10px !important; }
  @media (max-width: 767px) {
    .select-menu-hor-container, nav-tabs {
      overflow-x: auto;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none; }
      .select-menu-hor-container::-webkit-scrollbar, nav-tabs::-webkit-scrollbar {
        display: none; } }

.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover {
  isolation: unset;
  border-color: transparent; }

body.capture .select-menu-hor-container {
  overflow: hidden; }

.infos_content .select-menu-hor-container {
  padding: 0px 25px;
  margin-top: -25px;
  margin-left: -25px;
  margin-right: -25px;
  margin-bottom: 25px;
  width: auto;
  background: white;
  border-bottom: 1px solid var(--blue-light);
  border-radius: var(--ct-r-lg) var(--ct-r-lg) 0px 0px; }
  @media (max-width: 767px) {
    .infos_content .select-menu-hor-container {
      top: 60px;
      border-radius: 10px 10px 0px 0px; } }

.navbar .select-menu-hor-container {
  color: var(--menu-text-color);
  font-family: var(--title-font-family), sans-serif;
  background-color: var(--menu-background-color); }

.grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px; }
  @media (max-width: 767px) {
    .grid-4 {
      grid-template-columns: repeat(2, 1fr); } }

.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }
  @media (max-width: 767px) {
    .grid-3 {
      grid-template-columns: repeat(1, 1fr); } }

.grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px; }
  @media (max-width: 767px) {
    .grid-2 {
      grid-template-columns: repeat(1, 1fr); } }

.padding-top-50 {
  padding-top: 50px; }

.padding-top-30 {
  padding-top: 30px; }

.padding-top-25 {
  padding-top: 25px; }

.desk #cover_container {
  /*margin-top: 0px !important;*/ }

.shop-section .select-menu-hor-container {
  margin-top: 0px; }
  @media (min-width: 768px) {
    .shop-section .select-menu-hor-container {
      justify-content: center; } }
  @media (max-width: 767px) {
    .shop-section .select-menu-hor-container {
      padding-left: 15px !important; } }

.arborescence {
  padding: 10px 30px;
  display: inline-block;
  width: 100%;
  max-width: 1510px; }
  .arborescence a {
    color: var(--link-color); }
  .arborescence i {
    color: var(--link-color);
    opacity: 0.6;
    margin: 0px 6px;
    font-size: 1rem; }
  @media (max-width: 991px) {
    .arborescence {
      padding: 10px 15px; } }

.select-menu-hor, .nav > li {
  display: inline-block !important;
  padding: 16px;
  border-radius: 5px;
  background-color: transparent;
  color: inherit;
  position: relative !important;
  float: unset;
  margin-bottom: 0px; }
  .select-menu-hor:hover, .nav > li:hover {
    color: var(--blue-selected);
    cursor: pointer; }

.nav-tabs li > a {
  margin-right: 0px;
  line-height: inherit;
  border: none;
  border-radius: unset; }
  .nav-tabs li > a:hover {
    background-color: none !important;
    background: none !important; }

.nav > li > a {
  position: inherit;
  display: inherit;
  padding: 0px; }
  .nav > li > a:hover {
    background-color: none !important;
    background: none !important; }

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  color: var(--blue-selected);
  cursor: default;
  background-color: inherit;
  border: inherit;
  border-bottom-color: inherit; }

.selected-menu-hor, .select-menu-hor-container .active {
  color: var(--blue-selected); }
  .selected-menu-hor:after, .select-menu-hor-container .active:after {
    content: ' ';
    bottom: 0px;
    height: 3px;
    background-color: var(--blue-selected);
    left: 0px;
    width: 100%;
    position: absolute; }
  .selected-menu-hor:hover, .select-menu-hor-container .active:hover {
    color: var(--blue-selected);
    cursor: default; }

.no-pad-left {
  padding-left: 0; }

.no-pad-right {
  padding-right: 0; }

.daterangepicker {
  margin-top: 10px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  border-radius: 7px;
  border: none; }
  .daterangepicker .ranges li.active {
    background-color: var(--blue-selected); }

.daterangepicker td.active, .daterangepicker td.active:hover {
  background-color: var(--blue-selected); }

.select-page {
  padding-bottom: 0px;
  margin-left: 0px;
  padding-top: 0px;
  background-color: white;
  cursor: pointer; }

.select-page:hover {
  background-color: var(--selected-opacity); }

.main_section {
  position: relative;
  height: 100%;
  padding: 0px;
  display: flex;
  width: 100%; }
  @media (max-width: 767px) {
    .main_section {
      padding-left: 0px;
      padding-right: 0px; } }
  @media (min-width: 1391px) {
    .main_section {
      padding-top: 0px;
      padding-right: 0px; } }
  .main_section.shop-section {
    padding-left: 0px;
    padding-top: 60px; }
    @media (max-width: 767px) {
      .main_section.shop-section .insCont.inshop {
        display: none; } }
  .main_section.social-section {
    padding-left: 0px;
    padding-top: 0px; }
  .main_section form {
    flex: 1; }

#maintenance_notification {
  position: fixed;
  width: 100%;
  color: #eb4d11;
  padding: 4px 2px;
  background-color: rgba(255, 251, 223, 0.8);
  z-index: 10; }

#main-container {
  position: relative;
  min-height: calc(100vh - 60px);
  width: 100%; }

.menu_navbar_param {
  min-width: 250px;
  position: absolute;
  background-color: #1AA2D3;
  padding: 0px;
  right: 30px;
  top: 33px;
  border-left: 1px solid #0d87b4;
  border-right: 1px solid #0d87b4;
  border-bottom: 1px solid #0d87b4; }
  .menu_navbar_param ul {
    padding: 0;
    list-style-type: none;
    margin: 0;
    padding: 0; }
  .menu_navbar_param .menu_navbar_param_icon {
    display: inline-block;
    float: left;
    height: 18px;
    line-height: 18px;
    vertical-align: middle;
    width: 14px;
    text-align: left; }
  .menu_navbar_param .menu_navbar_param_label {
    float: left;
    padding-left: 10px;
    font-size: 1.3rem; }
  .menu_navbar_param .menu_navbar_param_link {
    padding: 8px 15px;
    height: 34px;
    border-top: 1px solid #0d87b4;
    transition: all 0.3s ease; }
    .menu_navbar_param .menu_navbar_param_link:hover {
      color: #1AA2D3;
      background-color: white; }

.sousbloc {
  text-align: left;
  height: 40px;
  color: #666;
  padding-left: 15px;
  padding-right: 15px;
  background-color: #d5d5d5;
  line-height: 40px; }

.sousbloc_content {
  padding: 20px 15px; }

.main_container {
  display: flex;
  justify-self: center;
  flex-direction: column;
  width: 100%;
  position: relative;
  background-color: transparent;
  box-shadow: 0px 0px 0px #888888;
  padding-top: 15px; }

.main_container.groupPurchases .pageTitle {
  color: #1e4563; }
.main_container.groupPurchases .noResults {
  color: #1e4563;
  border-radius: 10px;
  padding: 10px;
  text-align: left; }

@media (max-width: 1199px) {
  .main_container.no_left_col {
    margin: 0px;
    padding: 0px;
    min-height: 100%; } }
@media (min-width: 1200px) {
  .main_container.no_left_col {
    margin: 20px;
    margin-left: auto;
    margin-right: auto; } }

.menu {
  vertical-align: middle;
  padding: 6px 10px; }

.menu-icon {
  width: 32px;
  vertical-align: middle; }

.custom_scroll {
  overflow-y: auto;
  scrollbar-width: thin;
  scroll-margin-right: 5px;
  /* Optional: show position indicator in red */ }
  .custom_scroll::-webkit-scrollbar {
    width: 12px;
    /* Remove scrollbar space */
    overflow: visible;
    height: 10px;
    margin: 10px 0px;
    background-color: transparent;
    /* Optional: just make scrollbar invisible */
    margin-top: 20px;
    top: 10px; }
  .custom_scroll::-webkit-scrollbar-thumb {
    border: 4px solid rgba(0, 0, 0, 0);
    background-clip: padding-box;
    border-radius: 9999px;
    background-color: var(--blue-light);
    right: -14px; }
  .custom_scroll ::-webkit-scrollbar-track-piece {
    min-width: 20px; }
  .custom_scroll:hover::-webkit-scrollbar-thumb:hover {
    background-color: var(--blue-medium); }

.custom_scroll_horizontal {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  scroll-margin-right: 5px;
  /* Optional: show position indicator in red */ }
  .custom_scroll_horizontal::-webkit-scrollbar {
    width: 12px;
    /* Remove scrollbar space */
    overflow: visible;
    height: 10px;
    margin: 10px 0px;
    background-color: transparent;
    /* Optional: just make scrollbar invisible */
    margin-top: 20px;
    top: 10px; }
  .custom_scroll_horizontal::-webkit-scrollbar-thumb {
    border: 4px solid rgba(0, 0, 0, 0);
    background-clip: padding-box;
    border-radius: 9999px;
    background-color: var(--blue-light);
    right: -14px; }
  .custom_scroll_horizontal ::-webkit-scrollbar-track-piece {
    min-width: 20px; }
  .custom_scroll_horizontal:hover::-webkit-scrollbar-thumb:hover {
    background-color: var(--blue-medium); }

.ico-trash {
  cursor: pointer;
  color: grey; }

.ico-trash:hover {
  color: #D90000; }

.fa.faselection, .fas.faselection {
  color: #9ca1a7; }

.selectbox {
  position: absolute;
  color: inherit;
  background-color: white;
  width: auto;
  min-width: 240px;
  max-width: none;
  padding: 0;
  margin-top: 7px;
  top: 50px;
  left: 0px !important;
  z-index: 3001;
  display: none;
  line-height: 1em;
  box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.15);
  border-radius: 10px;
  color: black;
  text-align: left; }
  .selectbox a {
    color: black; }
  .selectbox hr {
    margin: 6px 0px !important; }

.selectbox:before {
  top: -7px;
  left: 9px;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-bottom: 7px solid #fff; }

.selectbox:after {
  top: -6px;
  left: 10px;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-left: 6px solid transparent; }

.selectbox:before, .selectbox:after {
  position: absolute;
  display: inline-block;
  content: ''; }

.selectbox .boxheader {
  padding-left: 15px;
  color: black;
  cursor: default; }
  .selectbox .boxheader .boxheaderaction {
    font-size: 1.3rem;
    color: #9ca1a7;
    padding-bottom: 2px;
    cursor: pointer; }
    .selectbox .boxheader .boxheaderaction i {
      font-size: 0.8em;
      padding-right: 2px; }
  .selectbox .boxheader .boxheadertitle {
    font-size: 1.5rem;
    color: #9ca1a7;
    padding: 5px 0px;
    cursor: pointer !important; }
    .selectbox .boxheader .boxheadertitle:hover {
      background-color: blue-light !important; }

#seetingselect {
  right: 0px;
  left: initial;
  padding: 10px;
  padding-top: 0px;
  padding-bottom: 10px !important;
  text-align: left; }

#seetingselect {
  right: 0px;
  left: initial;
  padding: 0px 10px;
  padding-top: 0px;
  text-align: left; }

#seetingselect .select-comparer-item::before {
  top: 0px; }

#seetingselect:before {
  top: -7px;
  right: 9px;
  left: initial; }

#seetingselect:after {
  top: -6px;
  right: 10px;
  left: initial; }

#comparerselect {
  left: 0px;
  top: 40px;
  color: black; }

#comparerselect:before {
  top: -7px;
  left: 9px; }

#comparerselect:after {
  top: -6px;
  left: 10px; }

.select-comparer-item {
  padding: 15px 30px;
  margin: 3px 8px;
  border-radius: 4px;
  cursor: pointer;
  background-color: var(--blue-medium);
  white-space: nowrap; }

.select-comparer-item:hover {
  background-color: var(--blue-light); }

.selected-comparer-item {
  background-color: var(--blue-selected) !important;
  color: white; }

.select-comparer-item b {
  display: block;
  width: 100%;
  font-size: 1.2rem;
  position: relative;
  margin-top: -15px;
  margin-bottom: 3px; }

.select-comparer-item::before {
  content: "";
  left: -17px;
  top: 9px;
  width: 6px;
  height: 12px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  background-color: transparent;
  position: relative;
  display: inline-block;
  transition: transform ease 0.4s;
  transform-origin: center;
  opacity: 0; }

.selected-comparer-item::before {
  opacity: 1; }

.tarif-type {
  color: #999;
  font-weight: normal;
  background-color: transparent;
  width: 100%;
  height: 100%;
  padding: 10px 15px;
  text-align: center;
  border-radius: 4px 0px 0px 4px;
  cursor: pointer;
  background: #f1f4f7; }

.tarif-type:hover {
  background: linear-gradient(0deg, #f3f6f9, #f3f6f9); }

.tarif-type-selected:hover {
  background: linear-gradient(0deg, #f3f6f9, #ffffff); }

.tarif-type-selected {
  color: var(--blue-selected);
  width: 100%;
  height: 100%;
  cursor: default;
  background: linear-gradient(0deg, #f3f6f9, #ffffff); }

.border-radius-left {
  border-radius: 4px 0px 0px 4px; }

.border-radius-right {
  border-radius: 0px 4px 4px 0px; }

.navbar {
  min-height: 55px !important;
  margin-bottom: 0px;
  border: none; }

.navbar-toggle[type=button] {
  background-color: #1AA2D3 !important;
  color: #FFFFFF !important;
  border: none !important;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 0px;
  height: 40px;
  width: 35px;
  padding: 0; }

.navbar-toggle:hover {
  background-color: #1AA2D3 !important;
  color: #E4E4E4 !important; }

.validation_buttons {
  padding-top: 20px;
  padding-bottom: 20px; }

.annuler_cross {
  cursor: pointer;
  color: #d86161;
  vertical-align: middle; }
  .annuler_cross:hover {
    cursor: pointer;
    color: #9c5a5a; }

.black-link {
  cursor: pointer;
  color: black; }
  .black-link :hover {
    color: var(--blue-primary); }

.edit_icon {
  cursor: pointer;
  color: #168bb6;
  vertical-align: middle; }
  .edit_icon:hover {
    cursor: pointer;
    color: #1AA2D3; }

.btn {
  position: relative;
  z-index: 1;
  padding: 8px 16px;
  border-radius: var(--border-radius-little);
  width: auto;
  cursor: pointer;
  border: 0px solid;
  overflow: hidden;
  font-size: inherit;
  white-space: nowrap;
  border-radius: var(--border-radius-little);
  text-align: center;
  display: inline-block; }
  .btn:focus {
    opacity: 1; }
  .btn:hover, .btn :focus, .btn :active {
    filter: brightness(1.1);
    opacity: 1; }
  .btn.btn-google:hover, .btn.btn-google :focus, .btn.btn-google :active, .btn.btn-apple:hover, .btn.btn-apple :focus, .btn.btn-apple :active, .btn.btn-default:hover, .btn.btn-default :focus, .btn.btn-default :active {
    filter: brightness(0.97); }

input.btn-primary {
  background: var(--blue-selected); }

input.btn-primary:hover, input.btn-primary:focus, input.btn-primary:active {
  background: var(--blue-selected);
  opacity: 0.7; }

.st-Obl {
  color: var(--red-danger); }

.btn-default {
  position: relative;
  z-index: 1;
  color: #111;
  border-color: transparent;
  border: 0px solid;
  background: var(--blue-medium); }

.btn-medium {
  position: relative;
  z-index: 1;
  display: inline-block;
  width: auto;
  padding: 14px 24px;
  color: #333;
  background: var(--blue-light); }

.btn-danger {
  position: relative;
  z-index: 1;
  color: white;
  border-color: transparent;
  background: #eb4d11; }
  .btn-danger a {
    color: #c9302c; }

.btn-primary {
  position: relative;
  z-index: 1;
  color: white !important;
  cursor: pointer;
  border-color: transparent;
  border: 0px solid;
  background: var(--blue-selected); }

.btn-inactive {
  position: relative;
  z-index: 1;
  color: black;
  cursor: default;
  background: var(--blue-medium); }

.btn-new {
  position: relative;
  z-index: 1;
  color: white;
  cursor: pointer;
  border-color: transparent;
  background: #2a679d; }

.btn-white {
  position: relative;
  z-index: 1;
  display: inline-block;
  text-align: center;
  width: auto;
  margin: 3px;
  border-radius: 7px;
  height: auto;
  width: auto;
  padding: 10px 20px;
  background: white; }
  .btn-white:hover {
    color: var(--blue-selected); }

.btn-light {
  position: relative;
  z-index: 1;
  display: inline-block;
  text-align: center;
  width: auto;
  margin-right: 6px;
  height: auto;
  width: auto;
  padding: 8px 10px;
  color: #111;
  overflow: visible;
  background: var(--blue-light); }
  .btn-light.hightlight {
    color: white;
    background: var(--color-primary); }
    .btn-light.hightlight:hover {
      color: #fff !important;
      border-color: transparent; }

.btn-transparent {
  position: relative;
  z-index: 1;
  display: inline-block;
  text-align: center;
  color: black;
  background: transparent; }
  .btn-transparent:hover {
    color: var(--blue-selected); }

.btn-navbar-action {
  position: relative;
  z-index: 1;
  height: 55px;
  border-radius: 0px;
  position: relative;
  line-height: 32px;
  color: white;
  margin-right: 0px; }
  .btn-navbar-action:after {
    background: rgba(255, 255, 255, 0.2); }
  .btn-navbar-action:hover {
    background: rgba(255, 255, 255, 0.1);
    color: white; }
    .btn-navbar-action:hover:after {
      background: rgba(255, 255, 255, 0.1); }

.btn-ghost {
  border: 1px solid var(--blue-medium);
  background: transparent; }
  .btn-ghost:hover {
    background: var(--blue-light) !important; }

.btn-google {
  border-radius: 5px;
  width: 100%;
  margin: 0px;
  margin-bottom: 10px;
  margin-top: 10px; }

.btn-apple {
  border-radius: 5px;
  width: 100%;
  margin: 0px;
  margin-bottom: 10px; }

.d-inline-block {
  display: inline-block !important; }

.validation-summary-errors ul {
  list-style: none;
  padding-left: 0px; }

.form-actions {
  margin-top: 10px; }

#storeselect {
  padding-bottom: 3px; }

.inventaire_icon, .download_icon {
  padding-left: 0px;
  padding-right: 0px; }
  .inventaire_icon span, .download_icon span {
    padding-top: 1px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    color: #524949; }
  .inventaire_icon:hover, .download_icon:hover {
    cursor: pointer; }

.annuler_icon span {
  color: #D41C1C; }
.annuler_icon:hover span {
  color: #FF0000; }

.valider_icon span {
  color: #16AA16; }
.valider_icon:hover span {
  color: #00dd00; }

.creer_art_icon, .nouveau_icon {
  padding-left: 0px;
  padding-right: 0px; }
  .creer_art_icon span, .nouveau_icon span {
    width: 30px;
    height: 30px;
    line-height: 32px;
    color: #524949; }

.creer_art_icon span {
  line-height: 32px; }

.srch_infos {
  background-color: white;
  margin-right: 0px;
  margin-left: 0px;
  border-top: 1px solid #c5c5c5;
  border-bottom: 1px solid #c5c5c5; }
  .srch_infos .form-control {
    padding-left: 10px;
    padding-right: 10px; }

.ligne_option {
  border-bottom: 1px solid #f1f1f1; }

body.modal-open {
  text-align: center;
  font-weight: normal;
  height: 100%;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  overflow-y: hidden; }

.shadow-left {
  left: 20px;
  bottom: 15px;
  transform: rotate(-3deg); }

.shadow-right {
  right: 20px;
  bottom: 15px;
  transform: rotate(3deg); }

.modal-open .navbar-fixed-top, .modal-open .navbar-fixed-bottom {
  margin-right: 0;
  border-width: 0; }

.modal-header {
  padding: 15px 20px;
  font-weight: bold;
  font-size: 1.8rem;
  text-align: left;
  border-bottom: 1px solid var(--blue-light);
  position: sticky;
  top: 0;
  background-color: white;
  border-radius: var(--border-radius-medium) var(--border-radius-medium) 0px 0px;
  z-index: 3; }

.modal-header i {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  float: right;
  padding: 3px 6px;
  margin-top: 1px;
  background: whitesmoke;
  border-radius: calc(var(--border-radius-medium) - 1px);
  margin-right: -5px;
  cursor: pointer; }

#modal-container, #modal_filter_family {
  /*border: 0 none;*/
  position: fixed;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  right: 0;
  top: 0;
  z-index: 20000;
  justify-content: center;
  align-items: center;
  width: 100%; }
  #modal-container .wrapper, #modal_filter_family .wrapper {
    height: 100%;
    padding: 20px 0px;
    width: calc(100vw - 3px);
    /* Centrage horizontal du .modal-dialog (display:inline-block) sans dépendre du text-align hérité
       du body : certaines pages (builder/customize) posent text-align:left sur des conteneurs ancêtres,
       ce qui décalait le modal à gauche. On force le centrage ici. */
    text-align: center; }
  #modal-container .wrapper:before, #modal_filter_family .wrapper:before {
    content: '';
    height: 100%;
    width: 0;
    vertical-align: middle;
    display: inline-block; }

.modal-body {
  padding: 10px 20px 20px;
  position: relative;
  border-radius: 7px; }
  .modal-body #corps {
    min-height: unset; }

.control-label, .happyh_label {
  font-size: 0.95em;
  font-weight: bold;
  color: #666; }

.control-label {
  padding-top: 6px;
  margin-bottom: 3px;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-top: 12px !important;
  text-transform: uppercase;
  text-align: left !important; }

.custom-input {
  border: none;
  border-color: inherit;
  -webkit-box-shadow: none;
  background-color: transparent;
  outline: none;
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  cursor: default;
  text-align: left;
  display: block;
  width: 100%;
  height: 28px;
  padding: 3px 12px;
  font-size: 1.4rem;
  line-height: 1.428571429;
  vertical-align: middle; }

.custom-display {
  border: none;
  border-color: inherit;
  -webkit-box-shadow: none;
  background-color: transparent;
  outline: none;
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  cursor: default;
  width: 100%;
  vertical-align: middle; }

.custom-input input:focus {
  outline: 0; }

.btn-form {
  margin: 5px; }

.form-submit-row {
  padding-top: 30px;
  padding-bottom: 5px; }

.plus_option {
  padding-bottom: 5px;
  position: relative;
  width: 36px;
  left: calc(50% - 18px); }
  .plus_option a {
    color: #c5c5c5; }
    .plus_option a:hover {
      color: lightgray; }

.vcenter {
  display: inline-block;
  vertical-align: middle;
  float: none;
  margin-right: -3px; }
  .vcenter p {
    margin: 0px; }

.body-content {
  padding-left: 15px;
  padding-right: 15px; }

.content {
  width: 100%;
  min-height: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto; }

.entete {
  /*height:80px;*/
  top: 0px;
  position: sticky;
  z-index: 100;
  transform: translate3d(0, 0, 0);
  height: 90px;
  margin-left: 0px;
  background: white;
  color: #111;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.15);
  display: inline-block;
  width: 100%;
  padding: 0px; }
  .entete.fademenu:not(:hover) {
    color: var(--blue-medium);
    background: linear-gradient(-180deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.35) 51%, rgba(0, 0, 0, 0) 100%);
    box-shadow: none; }
  .entete.pro {
    background: #1e4563; }
    .entete.pro .searchbar {
      background: rgba(2, 10, 41, 0.26);
      color: white; }
    .entete.pro .companyname {
      background: rgba(162, 206, 255, 0.13);
      color: white; }

.entete-child {
  text-align: left; }

#logo {
  border-radius: 5px;
  height: 54px; }
  @media (max-width: 767px) {
    #logo {
      height: 40px; } }

.menuactif {
  color: #1aa2d3;
  font-weight: normal;
  cursor: default;
  text-decoration: none; }

#right {
  background-color: white;
  border: 1px solid #e3e3e3;
  padding: 10px;
  overflow: hidden;
  padding-bottom: 30px; }
  @media (max-width: 767px) {
    #right {
      padding-top: 0px;
      padding-left: 0px;
      padding-right: 0px; } }

@media (min-width: 1200px) {
  .pull-right-lg {
    float: right; } }

.titre {
  color: #1aa2d3;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 10px;
  padding-bottom: 20px;
  text-align: left;
  display: none; }

.titre_header {
  padding: 10px;
  padding-bottom: 20px;
  padding-top: 6px; }

.soustitre.premier_st, .soustitre.noleft_col.premier_st {
  border-top: none; }

.stat-result {
  color: black;
  font-size: 2.1rem;
  font-weight: 500;
  display: inline-block;
  padding-top: 3px; }

#RateProfit_ByPeriod {
  margin-left: 6px; }

.ligne_facture, .ligne_client, .ligne_vendeur {
  padding-bottom: 8px;
  padding-top: 8px;
  border-bottom: solid 1px #D5D5D5; }

.primary_info {
  font-weight: bold;
  font-size: 1em; }

.secondary_info {
  font-weight: normal;
  font-size: 1em; }

.tertiary_info {
  font-weight: normal;
  font-size: 1em;
  color: #666; }

.soustitre {
  text-align: left;
  padding-bottom: 6px; }
  .soustitre .st-Opt {
    color: #bfc8d1;
    display: inline-block;
    margin-left: 10px;
    text-transform: none; }
@media (min-width: 1180px) and (max-width: 1345px) {
  .soustitre .st-Opt {
    display: none; } }

  .soustitre .st-Obl {
    color: var(--red-danger);
    font-size: 2rem;
    margin-top: -3px;
    display: inline-block;
    max-height: 12px;
    vertical-align: top;
    overflow: hidden; }

.pad-bottom-0 {
  padding-bottom: 0px !important; }

.pad-bottom-5 {
  padding-bottom: 5px !important; }

.pad-bottom-10 {
  padding-bottom: 10px !important; }

.pad-top-10 {
  padding-top: 10px; }

.margin-right-6 {
  margin-right: 6px; }

.blue-light-border-top {
  border-top: 1px solid var(--blue-light); }

.blue-light-border-bottom {
  border-bottom: 1px solid var(--blue-light); }

.infos_content-add-btn-bottom {
  padding-top: 15px;
  margin-top: 0px;
  padding-bottom: 13px !important; }

.login_logout {
  font-size: 1.2rem;
  font-weight: normal;
  padding-right: 20px;
  color: white;
  height: 26px; }
  .login_logout a {
    color: white; }
    .login_logout a:hover {
      color: #333333; }

.save_div {
  padding-top: 20px;
  padding-bottom: 20px; }
  @media (max-width: 1200px) {
    .save_div {
      padding-bottom: 30px; } }

.save_div_no_leftcol {
  padding-top: 20px;
  padding-bottom: 20px; }
  @media (max-width: 990px) {
    .save_div_no_leftcol {
      background-color: #F1F1F1;
      border-top: 1px solid #C8C8C8; } }

.icon {
  color: #524949;
  height: 30px;
  width: 30px;
  line-height: 30px;
  padding: 0px;
  margin-left: auto;
  margin-right: auto;
  cursor: pointer; }

#login_logout_icon_btn {
  background-color: transparent;
  width: 100%;
  height: 100%;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start; }

.initial_button {
  position: relative; }

.initial_button.clicked {
  cursor: pointer; }

.initial_text {
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background: url("");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  display: flex;
  justify-content: center;
  background-color: var(--blue-selected);
  color: white; }

#search_bar_container {
  background-color: white;
  display: inline-block;
  width: 100%; }
  #search_bar_container input:focus, #search_bar_container input:active {
    border-color: var(--blue-selected) !important; }

.individual_navbar .initial_button {
  position: relative; }

.professional_navbbar .initial_button {
  position: relative; }
  .professional_navbbar .initial_button .initial_text {
    color: #1c4c66;
    background-color: white; }

.tri-box-selectedinstitution {
  text-align: left;
  right: 10px;
  left: unset; }

#selectedinstitution-loading {
  margin-left: 3px;
  margin-top: 0px;
  margin-bottom: 12px; }

.selectedInstitutionThumbnail {
  cursor: pointer; }

.selectedInstitutionThumbnail:hover {
  background-color: #e7edf3; }

.menu_navbar_div {
  height: auto;
  width: 380px;
  min-width: 0px;
  background: white;
  cursor: default;
  padding: 0px 20px 10px;
  padding-right: 8px;
  right: 90px;
  text-align: left;
  transition: all ease 0.5s;
  transform: scaleX(380px);
  display: none;
  box-shadow: -10px 0px 10px -10px rgba(0, 0, 0, 0.2); }
  @media (max-width: 420px) {
    .menu_navbar_div {
      width: 100%; } }
  .menu_navbar_div i {
    margin-right: 2px;
    width: 26px; }

.first-nav #menu_navbar_param_div {
  position: fixed;
  left: 0px;
  top: 0px;
  margin-top: 0px;
  border-radius: 0px;
  height: 100vh;
  margin-top: 0px; }

#menu_navbar_param_div {
  position: fixed;
  left: unset;
  right: 0px;
  top: 0px;
  margin-top: 0px;
  border-radius: 0px;
  height: 100vh;
  margin-top: 0px; }

.modal-backdrop {
  opacity: 0;
  background-color: #eff2f4;
  transition: opacity .2s;
  z-index: 10000; }
  .modal-backdrop.in {
    opacity: .9; }

.menu_navbar_div:before {
  top: -7px;
  right: 20px;
  left: initial; }

.menu_navbar_div:after {
  top: -6px;
  right: 21px;
  left: initial; }

.flag-selected {
  box-shadow: 0px 0px 5px dodgerblue;
  border: 1px solid dodgerblue; }

.language {
  display: inline-block;
  vertical-align: middle; }

.flag-language {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: inline-block;
  width: 30px;
  height: 20px;
  margin: 4px 0px;
  border-radius: 7px; }

.flag-Francais {
  background-image: url("/Content/Images/francais-flag.png"); }

.flag-English {
  background-image: url("/Content/Images/english-flag.png"); }

.navbar-menu {
  text-align: left;
  padding: 10px;
  padding-left: 68px;
  width: 100%;
  position: relative; }
  .navbar-menu i {
    width: 26px; }
  .navbar-menu a {
    color: white; }
    .navbar-menu a:hover {
      color: white;
      opacity: 0.8; }

.link-danger {
  color: #eb4d11; }

.link-danger:hover, .link-danger:active, .link-danger:focus {
  opacity: 0.8;
  color: #eb4d11; }

.link-danger-light {
  color: #ffcdc1; }

.link-danger-light:hover, .link-danger-light:active, .link-danger-light:focus {
  opacity: 0.7;
  color: #ffcdc1; }

#titre_mobile {
  font-size: 1em;
  font-weight: bold; }

.main-content {
  height: 100%; }

.loadingChart, .loadingChartVisits, .loadingChartVisitsDetails {
  position: absolute;
  width: 72px;
  left: 50%;
  margin-left: -36px;
  height: 72px;
  top: 50%;
  margin-top: -26px; }

#FormArticles .loadingChart {
  margin-left: -40px;
  margin-top: -54px; }
  @media (max-width: 767px) {
    #FormArticles .loadingChart {
      margin-left: -30px;
      top: 220px; } }

.infos_content {
  background-color: white;
  padding-top: 15px;
  padding-bottom: 20px;
  border: 0px solid #e3e3e3;
  margin-top: 10px;
  padding-left: 5px;
  padding-right: 5px;
  /*box-shadow: $p-card-shadow;*/
  border-radius: var(--border-radius-medium);
  margin-bottom: 10px; }
  @media (min-width: 768px) {
    .infos_content {
      border: 1px solid var(--blue-light);
      /*box-shadow: $tradastra-default-shadow !important;*/ } }
  .infos_content .ct-kpi-label {
    display: inline-block;
    margin-bottom: 15px; }

.infos_content_btn {
  padding: 10px !important;
  width: auto;
  cursor: pointer;
  color: black;
  border-radius: 10px;
  background: linear-gradient(0deg, #f3f6f9, #ffffff);
  margin-right: 10px;
  margin-top: 0px; }

.infos_content_btn i {
  padding-right: 3px;
  padding-left: 3px; }

.infos_content_btn:hover {
  background: linear-gradient(0deg, #f3f6f9, #f3f6f9); }

@media (min-width: 991px) {
  .infos_content.noleft_col {
    height: 100%;
    border: 1px solid #e3e3e3;
    margin: 8px;
    padding-left: 5px;
    padding-right: 5px; } }

#comparerange {
  float: left;
  margin-left: 6px; }

.doubleleft {
  padding-right: 0px; }

.doubleright {
  padding-left: 0px; }

.item_options_icon {
  cursor: pointer;
  color: #168bb6;
  padding-top: 13px;
  vertical-align: middle; }
  .item_options_icon:hover {
    color: #1AA2D3; }
  @media (max-width: 767px) {
    .item_options_icon {
      padding-top: 12px;
      vertical-align: middle; } }

.infos_content {
  padding: 40px; }
  @media (max-width: 767px) {
    .infos_content {
      padding: 25px 15px; } }
  .infos_content .noMargin {
    display: inline-block;
    margin: 0px -15px;
    width: calc(100% + 30px); }

#SelectedInstitutionForCurrentUserText {
  display: none;
  padding-right: 5px;
  flex-direction: column; }
  @media (min-width: 1391px) {
    #SelectedInstitutionForCurrentUserText {
      display: flex; } }
  @media (max-width: 767px) {
    #SelectedInstitutionForCurrentUserText {
      display: flex; } }

.noMargin {
  margin: 0px; }

.ajout_link {
  padding: 5px 10px;
  font-size: 1.3rem;
  background-color: var(--blue-medium);
  color: black;
  border-radius: 5px;
  font-family: inherit;
  font-weight: normal;
  float: right;
  text-transform: normal;
  margin-right: 10px;
  margin-top: -6px;
  margin-bottom: -9px; }
  .ajout_link i {
    margin-right: 3px !important; }
  .ajout_link a {
    color: black;
    font-size: 1.3rem;
    vertical-align: top; }
    .ajout_link a:hover {
      color: #444; }

@media (max-width: 1205px) {
  .home {
    padding-right: 10px; } }
@media (max-width: 1100px) {
  .home {
    padding: 0px 10px; } }
@media (max-width: 767px) {
  .home {
    padding: 0px 0px; } }

.ajout_variante {
  padding-top: 15px; }

#client_panel {
  padding-bottom: 10px; }

#article_panel, #client_panel {
  border-bottom: 1px solid #e3e3e3;
  background-color: white;
  position: fixed;
  z-index: 10;
  width: calc(70% - 135px);
  display: none; }
  @media (max-width: 1057px) {
    #article_panel, #client_panel {
      width: calc(100% - 450px); } }
  @media (min-width: 1323px) {
    #article_panel, #client_panel {
      width: calc(100% - 530px); } }
  @media (min-width: 1200px) {
    #article_panel, #client_panel {
      padding-top: 10px; } }

#articles_wrapper, #col_wrapper {
  position: relative;
  height: auto;
  display: inline-block;
  width: 100%;
  min-height: calc(100vh - 60px); }
  @media (min-width: 1200px) {
    #articles_wrapper, #col_wrapper {
      padding: 0px; } }

#articles_main_container, #col_main_container, #clients_main_container {
  min-height: calc(100vh - 80px);
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto; }

#img {
  display: block;
  overflow: hidden;
  height: 100px;
  margin-bottom: 15px;
  margin-left: auto; }
  #img img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 80px;
    width: 80px;
    border: 2px solid #E4E4E4;
    border-radius: 40px; }
  @media (max-width: 340px) {
    #img {
      height: 70px; }
      #img img {
        height: 70px;
        width: 70px;
        border-radius: 35px; } }

.horizontal-submenu {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.2;
  color: var(--blue-dark);
  padding-top: 8px;
  position: relative;
  text-align: left; }

.horizontal-submenu span, .horizontal-submenu #actionLink {
  padding-right: 20px;
  display: inline-block;
  position: relative; }
  .horizontal-submenu span:hover, .horizontal-submenu #actionLink:hover {
    color: #4a7497;
    cursor: pointer; }
  @media (max-width: 350px) {
    .horizontal-submenu span, .horizontal-submenu #actionLink {
      padding-right: 0px; } }

.horizontal-submenu span i, .horizontal-submenu #actionLink i {
  margin-right: 6px; }

.horizontal-submenu span .fa-caret-down {
  margin-right: 0px;
  margin-left: 3px; }

.horizontal-submenu span .action-link {
  margin-left: 3px;
  margin-right: 3px; }

.field-validation-error {
  background: color-mix(in srgb, var(--red-danger), white 90%);
  border-left: 3px solid var(--red-danger);
  border-radius: var(--border-radius-little);
  padding: 10px 14px;
  font-size: 1.3rem;
  text-align: left;
  color: var(--red-danger);
  min-height: 44px;
  display: flex;
  align-items: center;
  width: 100%; }
  .field-validation-error::before {
    content: '\f06a';
    /* fa-circle-exclamation */
    font-family: "Font Awesome 6 Pro";
    font-weight: 300;
    /* light */
    margin-right: 10px;
    flex-shrink: 0; }

.input-search-button {
  position: absolute;
  width: 35px;
  height: calc(100% - 2px);
  right: 1px;
  top: 1px;
  display: flex;
  border-left: 1px solid #e7e9ed;
  border-radius: 0px 4px 4px 0px;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--blue-dark);
  cursor: pointer;
  background-color: var(--blue-light); }
  .input-search-button:hover {
    color: var(--blue-selected); }

.title {
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.2; }

@media (min-width: 768px) {
  .link_articles_infos .fa {
    float: none;
    text-align: center; }

  .container {
    /*max-width: 1200px;*/ }

  .separemenu {
    display: block !important; }

  .text-content {
    padding-left: 50px !important; }

  .padRecherche {
    padding-right: 5px !important; }

  .padTarif {
    padding-left: 5px !important; } }
@media (max-width: 767px) {
  .gen_codeb p, .print_codeb p, .tag_codeb p {
    max-width: 280px;
    margin-right: auto !important;
    margin-left: auto !important; }

  #cph_cod {
    /*margin-bottom:10px;*/ }

  .link_articles_infos {
    float: left;
    text-align: left; }

  .link_articles_infos .fa {
    width: 20px;
    height: 20px;
    line-height: 20px;
    display: block;
    float: left;
    position: absolute; }

  .link_articles_infos .visible-xs {
    display: block;
    float: left;
    text-align: left;
    font-size: 1.0rem;
    margin-left: 20px;
    line-height: 20px; }

  .body-content {
    padding-left: 0px !important;
    padding-right: 0px !important; }

  .publication_header {
    padding-left: 15px !important; }

  .menu {
    text-align: left; }

  .navbar-header {
    float: none; }

  .searchbar {
    width: 100% !important; }

  .notificationBox {
    width: calc(100vw - 40px) !important;
    right: 0px !important; }

  .navbar-toggle {
    display: block; }

  #home_timeline {
    padding: 20px 0px !important; }

  #profile_image_container {
    width: 100px !important;
    height: 100px !important; }

  .cover_img {
    width: 100%;
    height: 100%;
    object-fit: cover; }

  #profile_img_div {
    width: 90px !important;
    height: 90px !important; }

  .doubleright, .doubleleft {
    		/*padding-left: 10px;
            padding-right: 10px;*/ }

  .main_container {
    margin-left: 0px; }

  .navbar-nav {
    float: none !important;
    margin: 7.5px -15px; }

  .navbar-nav > li {
    float: none; }

  .navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px; }

  .navbar-text {
    float: none;
    margin: 15px 0; }

  /* since 3.1.0 */
  .navbar-collapse.collapse.in {
    display: block !important; }

  .navbar-collapse.collapse {
    display: none !important; }

  .collapsing {
    overflow: hidden !important; }

  .separemenu {
    display: none; }

  .separemenuxs {
    width: 100%;
    height: 2px;
    float: left;
    font-family: Arial;
    background-color: #E6E6E6;
    background-repeat: no-repeat;
    text-decoration: none;
    padding: 0px;
    margin: 5px 0px; }

  .text-content {
    padding-left: 15px; }

  .padRecherche {
    padding: 0px 10px 0px 0px; }

  .padTarif {
    padding: 0px 10px 0px 0px; }

  #listInstitutions {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical; }

  .infos_content_title {
    padding: 0px 5px !important;
    padding-bottom: 15px !important; }

  .mentions_container.large_screen {
    display: none !important; }
  .mentions_container.little_screen {
    display: inline-block !important; }

  .container-fluid {
    padding-left: 0px;
    padding-right: 0px; }

  .modal-body .container-fluid {
    padding-left: 10px;
    padding-right: 10px; }

  #imgArticle .imgArticle_preview {
    width: 70px !important;
    height: 70px !important; }

  #FormArticles .imgArticle_preview {
    width: 100% !important;
    height: 100% !important; }

  .headerArticle .title {
    font-size: 1.8rem; }

  #unavailableLabel span {
    display: none; } }
#listInstitutions .select-page:last-child .row {
  border-bottom: 0px solid !important; }

.sticky-left {
  position: sticky;
  left: 0px; }

.mentions_container.large_screen {
  display: inline-block; }
.mentions_container.little_screen {
  display: none; }

.infos_content_title {
  padding: 0px 25px;
  padding-bottom: 15px;
  border-bottom: 1px solid #e7edf3;
  box-shadow: none;
  margin-top: 3px;
  text-align: left; }

.srch_titre {
  height: 40px;
  position: fixed;
  background-color: white;
  z-index: 2;
  border-bottom: 1px solid #e3e3e3;
  width: 100%; }
  @media (max-width: 767px) {
    .srch_titre {
      height: 40px;
      margin: 0; } }
  @media (min-width: 768px) {
    .srch_titre {
      position: relative;
      padding-left: 10px;
      padding-right: 10px; } }

.little-canvas-stats {
  height: 280px; }

.medium-canvas-stats {
  height: 200px; }

.large-canvas-stats {
  width: 100%;
  overflow-x: auto;
  min-height: 300px; }

.pageTitle {
  text-align: left;
  font-weight: bold;
  margin: 10px;
  margin-top: 30px;
  margin-bottom: 10px; }
  .pageTitle span {
    font-size: 2.8rem; }

#notificationNumberBag {
  position: relative; }

.mentions_container {
  font-size: 1.5rem;
  color: var(--blue-light);
  text-align: center;
  padding: 20px 0px;
  display: inline-block;
  width: 100%; }
  .mentions_container a {
    color: var(--blue-light); }
    .mentions_container a:hover {
      text-decoration: underline; }

.principal_checkbox {
  vertical-align: middle;
  width: 28px;
  transition: opacity 0.2s ease; }

.onoff-checkbox {
  width: 30px;
  height: 18px; }
  .onoff-checkbox input {
    display: none; }
    .onoff-checkbox input + label {
      height: 100%;
      width: 100%; }
      .onoff-checkbox input + label > .status-switch {
        cursor: pointer;
        width: 100%;
        height: 100%;
        position: relative;
        background-color: var(--blue-medium);
        color: white;
        transition: all 0.5s ease;
        padding: 2px;
        border-radius: 9px;
        display: block; }
        .onoff-checkbox input + label > .status-switch:before, .onoff-checkbox input + label > .status-switch:after {
          border-radius: 8px;
          height: calc(100% - 4px);
          width: 14px;
          display: flex;
          align-items: center;
          position: absolute;
          justify-content: center;
          transition: all 0.3s ease; }
        .onoff-checkbox input + label > .status-switch:before {
          background-color: white;
          color: black;
          box-shadow: 0 0 4px 4px rgba(0, 0, 0, 0.02);
          left: 2px;
          z-index: 10;
          content: ' '; }
        .onoff-checkbox input + label > .status-switch:after {
          right: 0;
          content: ' '; }
    .onoff-checkbox input:checked + label > .status-switch {
      background-color: var(--blue-selected); }
      .onoff-checkbox input:checked + label > .status-switch:after {
        left: 0;
        content: ' '; }
      .onoff-checkbox input:checked + label > .status-switch:before {
        color: var(--blue-selected);
        left: calc(50% - 1px);
        content: ' '; }

.max-line-3 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical; }

.max-line-6 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical; }

.max-line-10 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 10;
  -webkit-box-orient: vertical; }

.max-line-20 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 20;
  -webkit-box-orient: vertical; }

.max-line-2 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; }

.max-line-1 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical; }

.logo-container {
  top: 0;
  left: 0px;
  position: absolute;
  vertical-align: top;
  margin: 0px;
  margin-left: 20px;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  flex: 1;
  overflow: visible;
  justify-self: anchor-center;
  align-self: anchor-center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); }
  @media (max-width: 767px) {
    .logo-container {
      flex: unset; } }
  .logo-container a {
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    align-items: flex-end; }

.logo-trademark {
  border-radius: 5px;
  padding: 0px 5px;
  color: white;
  position: relative;
  float: right;
  width: auto;
  right: 0px;
  margin-right: -5px;
  margin-top: -14px; }
  @media (max-width: 767px) {
    .logo-trademark {
      font-size: 1.3rem;
      margin-top: -12px; } }

.darkHr {
  border-bottom: 1px solid var(--blue-medium) !important; }

@media (max-width: 1100px) {
  .login-page .logo-container {
    margin-left: 8px !important; } }

#search_nav_icon {
  margin-right: 5px; }
  @media (max-width: 768px) {
    #search_nav_icon {
      display: inline-block; } }

#menu-little-screen {
  display: inline-block;
  float: left; }
  @media (max-width: 1100px) {
    #menu-little-screen {
      display: inline-block; } }

.navbar-header-container {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 1530px;
  text-align: left;
  height: 90px;
  padding: 0px 10px; }
  @media (min-width: 768px) {
    .navbar-header-container {
      white-space: nowrap;
      padding: 0px 0px; } }
  @media (max-width: 767px) {
    .navbar-header-container {
      display: flex; }
      .navbar-header-container #SelectedInstitutionForCurrentUserText {
        display: none; } }

#nav_center_content {
  display: inline;
  float: unset;
  text-align: center;
  padding: 0px 10px;
  width: 100%;
  background-color: var(--menu-background-color);
  z-index: 10;
  text-align: center;
  max-width: 300px !important;
  margin-left: 0px !important;
  position: fixed;
  top: 90px;
  left: 0px;
  position: fixed;
  height: calc(100vh - 90px);
  width: 90%;
  overflow: scroll;
  display: none; }
  @media (max-width: 1750px) {
    #nav_center_content {
      width: 100%; } }
  @media (max-width: 1300px) {
    #nav_center_content {
      min-width: 1000px;
      width: 100%; } }
  @media (max-width: 1095px) {
    #nav_center_content {
      min-width: 500px;
      width: 100%; } }

.hide-search-bar {
  display: none !important; }

#menu-left {
  /*col-xs-12 col-sm-2 col-md-2 menuactif text-left pull-left collapse*/
  height: 100%;
  z-index: 4;
  border-right: 0px solid #d6e1ec;
  position: fixed;
  width: 250px;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 20px;
  display: flex;
  flex-direction: column;
  	/*@media(max-width:1100px) {
          padding: 10px;
          max-width: 0px;
          border-top: 1px solid transparent;
          overflow: hidden;
          position: fixed;
          display: none;
          z-index: 20;
          background: var(--blue-light);
          box-shadow: 0px 0px 20px rgba(0,0,0,0.3);
          transition: max-width ease 0.3s;
  
          & .hidden-lg {
              display: none !important;
          }
      }*/ }
  #menu-left #logo-in-menu {
    display: inline-block; }
  #menu-left #logo-in-menu-short {
    display: none;
    width: 40px; }
@media (min-width: 768px) and (max-width: 1390px) {
  #menu-left {
    width: 80px;
    padding-left: 10px;
    padding-right: 10px; }
    #menu-left #logo-in-menu {
      display: none; }
    #menu-left #logo-in-menu-short {
      display: inline-block; }
    #menu-left .menu_label {
      display: none;
      position: absolute;
      left: 56px;
      background-color: var(--color-primary);
      color: white;
      top: -7px;
      padding: 15px;
      border-radius: 5px;
      font-weight: normal;
      z-index: 10;
      white-space: nowrap; }
    #menu-left div[name="parent-menu"] {
      display: block; }
    #menu-left .pastille {
      position: absolute;
      top: 4px;
      right: -11px; }
    #menu-left .fa-chevron-down, #menu-left .fa-chevron-right {
      display: none; }
    #menu-left .chat-button {
      width: 100%; }
      #menu-left .chat-button .fa-light {
        font-size: 2.8rem; }
    #menu-left .helptext {
      display: none; }
    #menu-left div[name="sub-menu"] {
      background-color: unset;
      position: relative; }
    #menu-left #publishStoreButtonMenu {
      display: none; }
    #menu-left .submenus {
      display: none;
      position: absolute;
      left: 50px;
      background-color: var(--color-primary);
      color: white;
      top: -7px;
      padding: 15px 15px 15px;
      border-radius: 5px;
      font-weight: normal;
      z-index: 10;
      width: auto;
      max-height: unset; }
      #menu-left .submenus:before {
        left: -7px;
        top: 18px;
        border-bottom: 7px solid transparent;
        border-top: 7px solid transparent;
        border-right: 7px solid var(--color-primary);
        position: absolute;
        display: inline-block;
        content: ''; }
      #menu-left .submenus:after {
        left: -6px;
        top: 20px;
        border-top: 6px solid transparent;
        border-right: 6px solid var(--color-primary);
        border-bottom: 6px solid transparent;
        position: absolute;
        display: inline-block;
        content: ''; }
    #menu-left .menu:hover div[name="sub-menu"] {
      display: block !important;
      margin-left: 0px; }
    #menu-left .menu:hover .submenus {
      display: block; }
      #menu-left .menu:hover .submenus .first-sub-menu {
        margin-top: 0px !important; }
      #menu-left .menu:hover .submenus .menu_label {
        display: inline-block !important;
        position: relative;
        left: 0px !important;
        margin-left: 0px;
        background-color: var(--color-primary);
        color: white;
        top: 0;
        padding: 0px 15px;
        padding-left: 5px;
        border-radius: 5px;
        font-weight: normal;
        z-index: 10; }
        #menu-left .menu:hover .submenus .menu_label:hover {
          color: var(--blue-medium); }
      #menu-left .menu:hover .submenus .selected .menu_label {
        color: #eb4d11; }
      #menu-left .menu:hover .submenus.hidden-lg {
        display: inline-block !important; }
    #menu-left .menu:hover .menu_label {
      display: block !important; } }

  @media (max-width: 767px) {
    #menu-left {
      width: 260px;
      max-width: 260px !important; } }

.touch_menu_label {
  display: inline-block !important;
  position: relative;
  left: 0 !important;
  margin-left: 0;
  background-color: var(--color-primary);
  color: white;
  top: 0;
  padding: 0 15px 0 5px;
  border-radius: 5px;
  font-weight: normal;
  z-index: 10; }

.searchbar {
  width: calc(100% - 260px);
  max-width: 400px;
  margin: 10px 0px;
  display: inline-block;
  position: relative; }
  .searchbar input {
    background-color: white;
    border-radius: 4px;
    border: 1px solid #6e6e6e;
    height: 40px;
    color: black;
    padding: 0px 20px;
    padding-left: 33px; }
  @media (max-width: 1100px) {
    .searchbar {
      width: 100%; } }
  .searchbar:before {
    content: '\f002';
    font-family: 'Font Awesome 6 Pro';
    position: absolute;
    font-weight: 300;
    left: 10px;
    top: 9px;
    color: #6e6e6e; }

.searchbar::placeholder {
  color: #9ca1a7; }

.searchbar:-ms-input-placeholder {
  color: #9ca1a7; }

.searchbar::-ms-input-placeholder {
  color: #9ca1a7; }

.no_gutter {
  padding-left: 0px;
  padding-right: 0px; }

@media (max-width: 767px) {
  .no_gutter_xs {
    padding-left: 0px;
    padding-right: 0px; } }

.pad10_5_xs {
  padding-top: 10px; }
  @media (max-width: 767px) {
    .pad10_5_xs {
      padding-top: 0px;
      padding-bottom: 0px; } }

.pad3 {
  padding-top: 3px; }

.pad5 {
  padding-top: 5px; }

.pad10 {
  padding-top: 10px; }

.padding-all-10 {
  padding: 10px; }

.pad15 {
  padding-top: 15px; }

.pad20 {
  padding-top: 20px; }

.pad30 {
  padding-top: 30px; }

.pad10r {
  padding-right: 10px; }

/* form-group fix */
.bot15 {
  margin-bottom: 15px;
  height: 35px; }

.h35 {
  height: 35px; }

.control-checkbox {
  vertical-align: top;
  width: auto; }

.control-checkbox[type=checkbox] {
  margin: 4px 5px; }

.ui-autocomplete {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 30000;
  float: left;
  display: none;
  min-width: 160px;
  _width: 160px;
  padding: 4px 0;
  margin: 2px 0 0 0;
  list-style: none;
  background-color: white;
  border-color: #ccc;
  border-color: #e7edf3;
  border-style: solid;
  border-width: 1px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 0px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  *border-right-width: 2px;
  *border-bottom-width: 2px; }

.ui-menu-item > a.ui-corner-all {
  display: block;
  padding: 3px 15px;
  clear: both;
  font-weight: normal;
  line-height: 18px;
  color: #000;
  white-space: nowrap; }

.ui-menu-item i {
  padding-right: 5px; }

.ui-item-add {
  color: #337ab7 !important;
  padding: 10px 12px 8px;
  border-bottom: 1px solid #e7edf3 !important;
  cursor: pointer; }

.ui-item-add:hover {
  border: none !important; }

.ui-state-hover, .ui-state-active {
  color: #ffffff;
  text-decoration: none;
  background-color: #0088cc;
  border-radius: 0px;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  background-image: none; }

select.form-control {
  background: url(data:image/svg+xml;base64,PCEtLSBSZXBsYWNlIHRoZSBjb250ZW50cyBvZiB0aGlzIGVkaXRvciB3aXRoIHlvdXIgU1ZHIGNvZGUgLS0+CjxzdmcgaWQ9IkxheWVyXzEiIGRhdGEtbmFtZT0iTGF5ZXIgMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNC45NSAxMCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNlZmYyZjU7ZmlsbC1vcGFjaXR5OjB9LmNscy0ye2ZpbGw6IzQ0NDt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPmFycm93czwvdGl0bGU+PHJlY3QgY2xhc3M9ImNscy0xIiB3aWR0aD0iNC45NSIgaGVpZ2h0PSIxMCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMiIgcG9pbnRzPSIxLjQxIDQuNjcgMi40OCAzLjE4IDMuNTQgNC42NyAxLjQxIDQuNjciLz48cG9seWdvbiBjbGFzcz0iY2xzLTIiIHBvaW50cz0iMy41NCA1LjMzIDIuNDggNi44MiAxLjQxIDUuMzMgMy41NCA1LjMzIi8+PC9zdmc+) no-repeat calc(100% - 5px) 50%;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: var(--input-background-color);
  padding-right: 30px !important; }
  select.form-control.nocurcor {
    background: none; }

select.nocurcor {
  background: none; }

.listTag {
  height: auto; }

.transparent-input {
  padding: 3px !important;
  width: 100%;
  border-width: 0px;
  height: 46px;
  vertical-align: middle;
  background-color: transparent; }

.transparent-input::placeholder {
  color: #999; }

input.input-validation-error,
textarea.input-validation-error,
select.input-validation-error {
  background: #fff9f9;
  border: 1px solid #CD0A0A; }

.no-item {
  padding: 20px 10px;
  display: none; }

.grid-2 .dynInput, .grid-2 .dynDropDown, .grid-3 .dynInput, .grid-3 .dynDropDown, .grid-4 .dynInput, .grid-4 .dynDropDown, .grid-5 .dynInput, .grid-5 .dynDropDown {
  margin-bottom: 0px; }

.form-control {
  padding: 13.5px 15px;
  min-height: 44px;
  height: auto;
  border-radius: Min(var(--border-radius-little), 10px);
  border: 1px solid var(--blue-medium);
  box-shadow: none;
  color: #111;
  background-color: var(--input-background-color);
  font-size: inherit; }
  .form-control:focus {
    outline: 0;
    box-shadow: none;
    color: black;
    background-color: var(--input-background-color); }

.dynInput, .dynDropDown {
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  display: flex;
  align-items: center; }
  .dynInput.white input, .dynDropDown.white input {
    background: #fff; }
  .dynInput .form-control, .dynDropDown .form-control {
    padding: 22px 8px 5px; }

.dynInput label {
  color: #999;
  transition: all 0.2s ease-out;
  float: left;
  margin-left: 10px;
  font-weight: normal;
  cursor: text;
  margin-bottom: 0px;
  white-space: nowrap;
  line-height: 1.9rem;
  position: absolute; }

.dynInput input {
  transition: border-color 0.2s ease;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none; }

.dynInput input:focus {
  outline: none;
  border-color: var(--blue-selected); }

.dynInput input:focus + label,
.dynInput input:not(:placeholder-shown) + label {
  color: #545454;
  transform: translate(0px, -0.9rem);
  font-size: 1.2rem;
  user-select: none; }

.dynInput input:focus + label {
  color: var(--blue-selected) !important; }

.dynInput select:focus + label,
.dynInput select:not(:placeholder-shown) + label {
  color: #545454;
  transform: translate(0px, -0.9rem);
  font-size: 1.2rem;
  user-select: none; }

@supports not (-ms-ime-align: auto) {
  .dynInput label {
    color: #999;
    transition: all 0.2s ease-out;
    font-weight: normal; }

  .dynInput input:focus + label,
  .dynInput input:not(:placeholder-shown) + label {
    color: #545454;
    transform: translate(0px, -0.9rem);
    user-select: none; } }
/* date/number: placeholder-shown ne fonctionne pas — label toujours élevé */
.dynInput input[type="date"] + label,
.dynInput input[type="number"] + label {
  color: var(--text-color);
  transform: translate(0px, -0.9rem);
  font-size: 1.2rem;
  user-select: none; }

.dynDropDown label {
  color: #545454;
  transform: translate(0px, -0.9rem);
  float: left;
  margin-left: 10px;
  font-size: 1.3rem;
  margin-bottom: 0px;
  font-weight: normal;
  position: absolute; }

.dynDropDown select {
  padding-top: 21px;
  padding-left: 10px;
  background: url(data:image/svg+xml;base64,PCEtLSBSZXBsYWNlIHRoZSBjb250ZW50cyBvZiB0aGlzIGVkaXRvciB3aXRoIHlvdXIgU1ZHIGNvZGUgLS0+CjxzdmcgaWQ9IkxheWVyXzEiIGRhdGEtbmFtZT0iTGF5ZXIgMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNC45NSAxMCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNlZmYyZjU7ZmlsbC1vcGFjaXR5OjB9LmNscy0ye2ZpbGw6IzQ0NDt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPmFycm93czwvdGl0bGU+PHJlY3QgY2xhc3M9ImNscy0xIiB3aWR0aD0iNC45NSIgaGVpZ2h0PSIxMCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMiIgcG9pbnRzPSIxLjQxIDQuNjcgMi40OCAzLjE4IDMuNTQgNC42NyAxLjQxIDQuNjciLz48cG9seWdvbiBjbGFzcz0iY2xzLTIiIHBvaW50cz0iMy41NCA1LjMzIDIuNDggNi44MiAxLjQxIDUuMzMgMy41NCA1LjMzIi8+PC9zdmc+) no-repeat calc(100% - 5px) 50%;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: var(--blue-light);
  color: #111; }
  .dynDropDown select.nocurcor {
    background: none; }

#phone_btn {
  position: relative; }
  #phone_btn p {
    position: absolute;
    right: 0px;
    max-width: 300px;
    max-height: 0px;
    overflow: hidden;
    width: auto;
    transition: all ease 0.4s;
    background-color: white;
    padding: 0px 15px 0px;
    border-radius: 15px;
    line-height: 2.4rem;
    box-shadow: 0px 10px 10px -3px rgba(0, 0, 0, 0.2); }
  #phone_btn.open p {
    padding: 15px 15px 10px;
    max-width: 300px;
    max-height: 300px; }

#cart_btn, #phone_btn {
  margin-right: 5px;
  display: inline-block;
  width: auto; }
  #cart_btn span, #phone_btn span {
    font-size: 1.5rem;
    display: inline-flex; }

.form-control[readonly], .form-control[disabled] {
  color: #bbbbbb;
  background-color: #f3f4f7; }
  .form-control[readonly]:focus, .form-control[disabled]:focus {
    background: white; }

#origine, #designation, #mesure, .input_border.no_top_border, .menulien.no_top_border {
  border-top: none; }

@media (max-width: 990px) {
  .input_border.no_top_border.border_top_xs {
    border-top: 1px solid #D5D5D5; } }

@media (min-width: 991px) {
  .input_border.no_top_border_md {
    border-top: none; } }

@media (min-width: 768px) {
  .input_border.no_top_border_sm {
    border-top: none; } }

@media (min-width: 991px) {
  .input_border.no_top_border_md {
    border-top: none; } }

@media (min-width: 1200px) {
  .input_border.no_top_border_lg {
    border-top: none; } }

.input_border.opt {
  background-color: white;
  border-top: 1px solid #f1f1f1;
  margin: 0; }

.input_border.opt.border_bottom {
  border-bottom: 1px solid #f1f1f1; }

@media (max-width: 767px) {
  #code_b, #cuisson {
    border-top: 1px solid #D5D5D5; } }

.profil-page-menu {
  display: inline-block;
  width: auto;
  margin: 0px 20px;
  font-weight: bold;
  height: 40px;
  line-height: 40px; }

.input_border {
  border-top: 1px solid #D5D5D5; }

.input_border_bottom {
  border-bottom: 1px solid #D5D5D5; }

.input_border.pad_bot {
  padding-bottom: 10px; }

.input_border {
  margin: 5px;
  border: none; }

.notification_bubble {
  background-color: #ef5858;
  padding: 3px;
  font-size: 1.3rem;
  border-radius: 11px;
  color: white;
  position: absolute;
  bottom: -5px;
  right: -5px;
  width: 20px;
  min-width: 22px;
  height: auto;
  line-height: 16px; }
  .notification_bubble:empty {
    display: none; }

#imgcod {
  height: 70px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%; }

.keyword {
  background-color: var(--blue-light);
  width: auto;
  display: inline-block;
  padding: 7px 15px;
  border-radius: 4px;
  margin-bottom: 5px;
  margin-right: 5px;
  margin-top: 6px; }

.valueKeyword span {
  cursor: pointer;
  color: #555;
  vertical-align: middle;
  padding-left: 5px;
  margin-top: -2px; }
  .valueKeyword span:hover {
    color: #9c5a5a; }

.select-button {
  padding: 6px 12px;
  background-color: #8294a7;
  border-radius: 4px;
  color: white;
  margin-bottom: 6px;
  margin-top: 10px;
  display: inline-block;
  margin-left: 20px; }

.select-button i {
  padding-right: 3px; }

.code_barre {
  	/*border: 1px solid #E4E4E4;
      border-radius: 5px;*/
  margin-right: auto;
  margin-left: auto; }

.item_code_barre {
  padding-top: 10px; }

.modal-content {
  margin-left: auto;
  margin-right: auto;
  box-shadow: 0 8px 16px rgba(55, 63, 74, 0.1); }

#imgTd {
  float: left;
  margin-right: 0px;
  margin-left: 0px;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  border: solid 1px #C0C0C0;
  vertical-align: middle;
  -webkit-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }

.tb {
  /*
text-align: center;
border: 0px solid;
border-radius: 2px;
font-size: 1.4rem;*/ }

#enteteArticle {
  background-color: #eee;
  font-family: 'Lato', 'sans-serif';
  font-size: 1.2rem;
  font-weight: bold;
  color: #666;
  padding-bottom: 5px;
  padding-top: 5px;
  border: solid 1px #D5D5D5; }

@media (max-width: 560px) {
  .analytics-filter-btn {
    margin: 5px 0px; } }

.article_tertiary_info, .article_tertiary_info_md {
  font-style: normal; }

.ligneArticle, .ligneClient {
  background-color: white;
  border-top: 1px solid #eef4fa;
  align-items: center;
  padding: 0px 10px; }
  .ligneArticle:hover, .ligneClient:hover {
    background-color: #fcfcfc;
    cursor: default;
    border-radius: 10px;
    cursor: pointer;
    border-top: 1px solid #fcfcfc; }
    .ligneArticle:hover + .ligneArticle, .ligneClient:hover + .ligneArticle {
      border-top: 1px solid #fff; }
  @media (min-width: 768px) {
    .ligneArticle .editorRow, .ligneClient .editorRow {
      display: none !important; } }
  .ligneArticle .main_article_infos, .ligneClient .main_article_infos {
    padding: 8px 0px; }
  .ligneArticle .cb_container, .ligneClient .cb_container {
    vertical-align: middle;
    width: 28px;
    padding-right: 5px; }
  .ligneArticle .img_container, .ligneClient .img_container {
    vertical-align: middle;
    width: 28px;
    padding-top: 9px; }
  .ligneArticle .img_preview, .ligneClient .img_preview {
    width: 40px;
    height: 40px;
    border-radius: 5px; }
    .ligneArticle .img_preview img, .ligneArticle .img_preview span, .ligneClient .img_preview img, .ligneClient .img_preview span {
      height: 40px;
      width: 40px;
      line-height: inherit;
      font-size: inherit;
      display: flex;
      align-items: center;
      justify-content: center; }

#listArticleHeader {
  font-weight: 600;
  display: flex;
  align-items: center;
  background-color: var(--blue-medium);
  padding: 10px;
  border-radius: 3px; }

.article_text {
  display: flex;
  align-items: center;
  flex: 1; }

.noTrackingLabel {
  display: none; }

#filterpanel {
  display: flex;
  align-items: center;
  margin-bottom: 25px;
  margin-top: 0px; }

#stateFilterPanel {
  position: relative;
  margin-bottom: 13px; }

.pos-channel-icon, .pos-channel-icon-2 {
  width: 30px;
  display: flex;
  flex-direction: column;
  column-gap: 17px;
  row-gap: 6px;
  align-items: center;
  padding-left: 10px; }

.pos-channel-icon-2 {
  display: none; }

.colListArticles {
  flex: unset !important;
  width: 390px;
  position: sticky !important;
  top: 0px;
  height: 100vh; }
  .colListArticles #listArticleHeader {
    display: none; }
  .colListArticles #col_1_header {
    display: none; }
  .colListArticles #liste_articles_container {
    padding-top: 0px !important; }
  .colListArticles .select-menu-hor-container {
    padding-left: 20px !important;
    padding-right: 20px !important; }
  .colListArticles #filterpanel {
    flex-direction: column;
    align-items: flex-start;
    padding-top: 15px;
    margin-bottom: 10px;
    top: 0; }
    .colListArticles #filterpanel #search-product-container {
      width: 100% !important;
      margin-bottom: 10px; }
  .colListArticles #loading-articles {
    text-align: center; }
  .colListArticles #no_article_available {
    text-align: center; }
  .colListArticles #listArticles {
    position: sticky;
    height: 100vh;
    overflow-y: auto; }
  .colListArticles .ligneArticle, .colListArticles .ligneClient {
    margin: 0px 8px;
    padding: 2px 0px; }
    .colListArticles .ligneArticle .cb_container, .colListArticles .ligneClient .cb_container {
      padding-right: 5px;
      padding-left: 10px;
      width: 34px !important; }
    .colListArticles .ligneArticle .img_container, .colListArticles .ligneClient .img_container {
      vertical-align: middle;
      width: 28px; }
    .colListArticles .ligneArticle .img_preview, .colListArticles .ligneClient .img_preview {
      width: 50px;
      height: 50px;
      border-radius: 5px; }
      .colListArticles .ligneArticle .img_preview img, .colListArticles .ligneArticle .img_preview span, .colListArticles .ligneClient .img_preview img, .colListArticles .ligneClient .img_preview span {
        height: 50px;
        width: 50px; }
    .colListArticles .ligneArticle .article_main_info, .colListArticles .ligneArticle .article_main_info_md, .colListArticles .ligneClient .article_main_info, .colListArticles .ligneClient .article_main_info_md {
      font-weight: 500; }
    .colListArticles .ligneArticle div[name=Declination].article_main_info, .colListArticles .ligneClient div[name=Declination].article_main_info {
      display: flex;
      flex-direction: row;
      align-items: center;
      width: 100%; }
      .colListArticles .ligneArticle div[name=Declination].article_main_info span, .colListArticles .ligneClient div[name=Declination].article_main_info span {
        flex: 1; }
      .colListArticles .ligneArticle div[name=Declination].article_main_info .pos-channel-icon-2, .colListArticles .ligneClient div[name=Declination].article_main_info .pos-channel-icon-2 {
        flex-direction: row;
        column-gap: 5px;
        justify-content: flex-end;
        padding-right: 10px; }
    .colListArticles .ligneArticle .article_secondary_info, .colListArticles .ligneArticle .article_secondary_info_md, .colListArticles .ligneClient .article_secondary_info, .colListArticles .ligneClient .article_secondary_info_md {
      font-weight: normal;
      color: #666;
      display: flex;
      flex-direction: row;
      align-items: center;
      width: 100%; }
      .colListArticles .ligneArticle .article_secondary_info span, .colListArticles .ligneArticle .article_secondary_info_md span, .colListArticles .ligneClient .article_secondary_info span, .colListArticles .ligneClient .article_secondary_info_md span {
        flex: 1; }
      .colListArticles .ligneArticle .article_secondary_info .pos-channel-icon-2, .colListArticles .ligneArticle .article_secondary_info_md .pos-channel-icon-2, .colListArticles .ligneClient .article_secondary_info .pos-channel-icon-2, .colListArticles .ligneClient .article_secondary_info_md .pos-channel-icon-2 {
        flex-direction: row;
        column-gap: 5px;
        justify-content: flex-end;
        padding-right: 10px; }
    .colListArticles .ligneArticle .article_tertiary_info, .colListArticles .ligneClient .article_tertiary_info {
      color: var(--blue-dark); }
    .colListArticles .ligneArticle .article_details, .colListArticles .ligneClient .article_details {
      font-size: 0.95em;
      color: gray; }
    .colListArticles .ligneArticle .list-article-price, .colListArticles .ligneClient .list-article-price {
      color: #9ca1a7;
      padding-left: 0px;
      padding-right: 10px; }
    .colListArticles .ligneArticle .article_text, .colListArticles .ligneClient .article_text {
      display: flex;
      align-items: flex-start;
      flex: 1;
      flex-direction: column; }
    .colListArticles .ligneArticle .profit_column, .colListArticles .ligneClient .profit_column {
      display: none !important; }
    .colListArticles .ligneArticle .hidden-xs, .colListArticles .ligneClient .hidden-xs {
      display: none !important; }
    .colListArticles .ligneArticle .noTrackingLabel, .colListArticles .ligneClient .noTrackingLabel {
      display: inline; }
    .colListArticles .ligneArticle .inReserveLabel, .colListArticles .ligneClient .inReserveLabel {
      display: none; }
    .colListArticles .ligneArticle .stockLabel, .colListArticles .ligneClient .stockLabel {
      display: inline-block;
      width: 100%;
      text-align: left; }
    .colListArticles .ligneArticle .pos-channel-icon, .colListArticles .ligneClient .pos-channel-icon {
      display: none; }
    .colListArticles .ligneArticle .pos-channel-icon-2, .colListArticles .ligneClient .pos-channel-icon-2 {
      display: flex; }

.ligneArticle.article_selected {
  background-color: var(--selected-opacity);
  border-radius: 5px;
  border-top: 1px solid transparent !important;
  cursor: default;
  opacity: 1; }
  .ligneArticle.article_selected + .ligneArticle {
    border-top: 1px solid #fff; }

.hover_ligneArticle {
  background-color: #f6f6f6 !important; }

.ligneArticle.a_commander .delete {
  position: absolute;
  right: 15px;
  width: 15px;
  height: 18px;
  top: calc(50% - 9px); }
.ligneArticle.a_commander .prixArticleDuplique {
  padding-right: 45px !important; }

.ligneArticle[data-duplicated="true"].a_commander .delete {
  position: absolute;
  right: 15px;
  width: 15px;
  height: 18px;
  top: calc(50% - 9px); }
.ligneArticle[data-duplicated="true"].a_commander .prixArticleDuplique {
  padding-right: 45px !important; }
.ligneArticle[data-duplicated="true"].a_commander .img_art_overlay {
  display: block;
  width: 60px;
  height: 20px;
  position: absolute;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 10px;
  padding: 0px;
  line-height: 18px;
  text-align: center;
  font-size: 1em;
  letter-spacing: 1px;
  color: #404040;
  font-weight: bold;
  border: none; }
.ligneArticle[data-duplicated="true"].a_commander .article_tertiary_info {
  margin-left: 60px; }

.duplicate-items {
  display: none;
  overflow: hidden;
  width: 100%; }

.variante-selected .duplicate-items {
  display: inline-block; }

.variante-selected {
  background-color: #fcfcfc; }

.variante-article {
  background-color: transparent;
  border-radius: 0px; }
  .variante-article.variante-selected + .variante-article {
    border-top: 1px solid #f0f0f2; }
  .variante-article:hover {
    background-color: #f0f0f2;
    border-radius: 0px !important; }
    .variante-article:hover.ligneArticle.article_selected + .ligneArticle {
      border-top: 1px solid #f0f0f2 !important; }
    .variante-article:hover.article_selected {
      /*background-color: #c3eaff;*/ }

.mobile {
  height: 5em; }

.mobile div {
  padding-top: 0em; }

.mobile .mobileImg {
  padding-top: 0.4em; }

#button_List {
  display: inline-block;
  vertical-align: top;
  position: absolute;
  top: 0;
  right: 100%; }

.top-cmd {
  display: flex;
  margin-top: 20px;
  align-items: center;
  justify-content: flex-end; }

@media (max-width: 767px) {
  .ligneEditArticle {
    border-bottom: 1px solid #e6e6e6;
    background-color: #f6f6f6; }

  .ligneEditArticleStock {
    background-color: #f6f6f6; } }
.marginPaddingTableArticles {
  margin: 0px;
  padding: 5px 0px 5px 0px; }

.marginPaddingContentArticles {
  margin: 0px;
  padding: 5px 0px 5px 0px; }

.menulien {
  font-family: Arial;
  text-align: left; }

.menulien:hover {
  cursor: pointer; }

.menulien:hover a {
  cursor: pointer; }

.hidden {
  display: none; }

.delete {
  color: #eb4d11; }
  .delete:hover {
    cursor: pointer;
    color: #D90000; }
  .delete a {
    color: #eb4d11; }
    .delete a :hover {
      color: #D90000; }

.bt {
  background-color: #1aa2d3;
  padding: 16px;
  color: #fff; }

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  overflow-x: scroll;
  overflow-y: scroll;
  border: 0px; }

#noArticle {
  padding-top: 20px;
  color: #91a1b1; }

.loadModal {
  background-image: url("/Content/Images/load.gif");
  background-repeat: no-repeat;
  background-position: center; }

.editorRow_content {
  	/*padding-left: 10px;
      padding-right: 0px;*/ }

.navbar-header {
  width: 100%;
  text-align: center;
  background: var(--menu-background-color);
  color: var(--menu-text-color); }
  .navbar-header a {
    color: inherit; }

#recherche {
  height: 30px;
  background: white;
  padding: 3px 10px;
  width: 100%; }

.fournisseur_selected {
  background-color: #eaeaea; }

.float-left {
  float: left; }

.float-right {
  float: right; }

.no_padding {
  padding: 0px; }

.no_top_border {
  border-top: none !important; }

.no_bottom_border {
  border-bottom: none !important; }

.no_left_border {
  border-left: none !important; }

.no_right_border {
  border-right: none !important; }

.ps-scrollbar-y-rail {
  opacity: 0.6;
  z-index: 3; }

.loading-container {
  position: absolute;
  width: 72px;
  left: 50%;
  margin-left: -36px;
  height: 72px;
  margin-top: -36px;
  top: 50%; }

#visible-scroller {
  height: 16px;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  right: 0;
  z-index: 6;
  position: sticky;
  bottom: 0;
  margin: 0px -10px;
  margin-top: 12px; }

#visible-scroller-scroll-area {
  position: absolute;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch; }

#visible-scroller-scroll-bar {
  height: 16px; }

.compare-at-stat {
  font-size: 1.3rem;
  font-weight: normal; }

.fp-first {
  margin-bottom: 20px;
  display: inline-flex !important;
  flex-direction: row; }
  @media (max-width: 767px) {
    .fp-first {
      flex-direction: row; } }
  .fp-first .fp-first-i {
    display: flex;
    align-items: center;
    line-height: 2.5rem;
    width: 100%; }
    @media (max-width: 767px) {
      .fp-first .fp-first-i {
        flex-direction: column;
        padding-left: 5px; }
        .fp-first .fp-first-i h1 {
          padding-left: 3px; } }
  .fp-first .fp-first-buttons {
    justify-self: end;
    width: inherit;
    text-align: right; }
    @media (max-width: 767px) {
      .fp-first .fp-first-buttons {
        justify-self: start;
        text-align: left;
        padding-top: 10px;
        padding-left: 0px; } }

@media (max-width: 767px) {
  .fp-first-buttons {
    white-space: nowrap;
    overflow-x: auto;
    max-width: calc(100vw - 30px);
    padding-bottom: 10px; } }

.filter-options {
  flex: 1;
  display: flex;
  align-items: center; }
  @media (max-width: 767px) {
    .filter-options {
      flex-direction: column; }
      .filter-options #comparerange, .filter-options #reportrange, .filter-options #ins-selection, .filter-options #ins-selection-modal, .filter-options #search-product-container {
        margin: 0px !important;
        margin-bottom: 10px !important; } }

@media (min-width: 768px) {
  #home-page-link {
    margin-top: 10px; } }

.initial {
  width: auto;
  padding: 5px 10px;
  padding-right: 5px;
  background-color: transparent;
  border-radius: 5px;
  align-items: center;
  color: inherit;
  font-size: 2rem;
  text-align: center;
  vertical-align: middle;
  cursor: pointer; }
  .initial a {
    display: flex;
    flex-direction: row;
    align-items: center;
    font-size: 1.4rem; }
    .initial a div {
      display: flex;
      flex-direction: column; }
    .initial a.selected {
      position: relative; }
      .initial a.selected:after {
        position: absolute;
        content: '';
        bottom: -10px;
        left: 0px;
        width: 100%;
        height: 3px;
        background: var(--blue-selected); }
  .initial:hover a {
    color: var(--blue-selected); }
  @media (max-width: 767px) {
    .initial.visible-xs {
      display: inline-block !important; } }
  .initial .initial_text {
    background-color: var(--blue-selected);
    text-align: center; }

.menu_navbar_div .initial {
  background-color: var(--blue-selected);
  font-size: 1.7rem;
  color: white; }

.companyname {
  height: 50px;
  padding: 0px 5px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  max-width: 300px;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: left;
  color: #fff;
  justify-content: flex-end; }
  @media (max-width: 420px) {
    .companyname {
      max-width: 200px; } }
  .companyname:hover {
    background-color: #ffffff2d; }

#menu-left .companyname {
  width: 100%; }
  #menu-left .companyname #SelectedInstitutionForCurrentUserText span {
    display: none; }

.individual_navbar .companyname:hover {
  background-color: var(--blue-light); }

#username {
  float: right;
  width: auto;
  margin-left: 10px;
  font-size: 1.4rem;
  line-height: 36px;
  height: 36px; }

.history-bloc {
  color: #333;
  padding: 0px 10px;
  display: inline-block;
  width: 100%;
  margin-bottom: 20px; }

.history-container {
  display: inline-block;
  position: relative; }
  .history-container .item {
    width: auto;
    padding: 10px;
    padding-top: 9px;
    display: table;
    margin-bottom: 15px; }
    .history-container .item .item-initial-container {
      display: table-cell;
      vertical-align: middle;
      height: 100%; }
      .history-container .item .item-initial-container .item-initial {
        width: 44px;
        height: 44px;
        border-radius: 22px;
        line-height: 44px;
        vertical-align: middle;
        float: unset; }
    .history-container .item .item-text {
      display: table-cell;
      vertical-align: middle;
      float: unset;
      line-height: 1.3;
      height: auto;
      padding-left: 10px; }
      .history-container .item .item-text span {
        color: #8294a7;
        font-size: 1.2rem; }
        .history-container .item .item-text span b {
          color: black; }

@keyframes placeHolderShimmer {
  0% {
    background-position: -468px 0; }
  100% {
    background-position: 468px 0; } }
.animated-background {
  animation-duration: 2.25s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: placeHolderShimmer;
  animation-timing-function: linear;
  background: #F6F6F6;
  background: linear-gradient(to right, var(--blue-medium) 8%, var(--blue-dark) 18%, var(--blue-medium) 33%);
  background-size: 800px 104px;
  height: 96px;
  position: relative; }
  .animated-background.largegradient {
    background: linear-gradient(to right, var(--blue-medium) 0% 10%, var(--blue-dark) 40% 50%, var(--blue-medium) 90% 100%); }
  .animated-background.shopProductThumbnail:after {
    display: none !important; }
  .animated-background.newProductThumbnail:after {
    display: none !important; }

.history-line {
  position: absolute;
  border-right: 3px solid #c8d3e0;
  height: calc(100% - 60px);
  top: 30px;
  left: 30px;
  z-index: -1; }

.position-relative {
  position: relative; }

.text-loading {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: calc(100% - 40px); }
  .text-loading.relativeloading {
    position: relative;
    left: 0px;
    top: 20px;
    width: 100%;
    height: 100%; }
    .text-loading.relativeloading .wrapper-cell {
      display: flex;
      margin-bottom: 0px; }
  .text-loading .wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column; }
  .text-loading .wrapper-cell {
    display: flex;
    margin-bottom: 30px; }
  .text-loading .text {
    width: 100%; }
  .text-loading .text-line {
    height: 10px;
    width: 120px;
    margin: 4px 0; }
  .text-loading .text-centered {
    margin-top: 15px;
    margin-left: 0px;
    width: 100%; }
  .text-loading .text-line-bold {
    height: 25px;
    width: 100%;
    margin: 4px 0; }
  .text-loading .text-line-large {
    height: 16px;
    width: 85%;
    margin: 4px 0; }

.select-graph .text-loading {
  width: 100%; }

.owl-prev {
  width: 15px;
  height: 100px;
  position: absolute;
  top: 40%;
  margin-left: -20px;
  display: block !important;
  border: 0px solid black; }

.owl-next {
  width: 15px;
  height: 100px;
  position: absolute;
  top: 40%;
  right: -25px;
  display: block !important;
  border: 0px solid black; }

.owl-prev i, .owl-next i {
  transform: scale(1, 6);
  color: #ccc; }

.slick-dots {
  margin-bottom: 0px !important; }

.slick-dotted.slick-slider {
  margin-bottom: 0px !important; }

.btn-edit-mini {
  cursor: pointer;
  width: 28px;
  height: 28px;
  position: absolute;
  right: 5px;
  bottom: 5px;
  padding: 4px;
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 14px;
  color: white;
  line-height: 20px !important;
  text-align: center !important;
  z-index: 0; }
  .btn-edit-mini:hover {
    color: var(--blue-medium); }

.btn-edit {
  cursor: pointer;
  width: 28px;
  height: 28px;
  padding: 4px;
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 14px;
  color: white;
  line-height: 20px !important;
  text-align: center !important;
  z-index: 3; }
  .btn-edit span {
    font-size: 1.5rem;
    font-family: Open sans-serif, Arial, sans-serif; }
  .btn-edit:hover {
    color: var(--blue-medium); }

.btn-edit-mini:before {
  content: "\f304"; }

.action-button-container {
  z-index: 2;
  position: sticky;
  bottom: 0px;
  padding-top: 10px;
  display: table;
  width: 100%;
  white-space: nowrap;
  text-align: right;
  padding-bottom: 20px;
  padding-right: 25px; }
  @media (min-width: 768px) {
    .action-button-container .btn-action-button {
      min-width: 280px;
      min-height: 50px; } }
  .action-button-container.white {
    background: linear-gradient(0deg, white 0%, white 15%, white 60%, rgba(255, 255, 255, 0) 100%); }
  @media (max-width: 767px) {
    .action-button-container {
      padding: 20px 0px;
      text-align: center;
      background: linear-gradient(0deg, #fff 0%, #fff 15%, #fff 60%, rgba(234, 240, 247, 0) 100%); } }

.orderCount {
  position: absolute;
  right: 5px;
  top: 3px;
  height: auto;
  padding: 3px 10px;
  color: white;
  margin-top: 2px;
  width: auto;
  border-radius: 4px;
  background-color: #9ca1a7; }
  .orderCount:empty {
    display: none; }

.opened-little-menu {
  display: flex !important; }

@media (max-width: 1199px) {
  .responsive_menu {
    white-space: nowrap;
    overflow-x: auto; } }

.vertical-menu {
  padding: 10px 20px;
  height: 44px;
  width: auto;
  background-color: white;
  border-radius: 5px;
  display: inline-block;
  margin-bottom: 6px; }
  .vertical-menu:hover {
    cursor: pointer;
    background-color: var(--blue-light); }
  .vertical-menu.selected {
    color: #eb4d11;
    background-color: #f3e7e4; }
  @media (max-width: 1199px) {
    .vertical-menu {
      width: auto;
      margin-right: 6px; } }

.box-information {
  display: inline-block;
  width: 100%;
  padding: 10px;
  margin-bottom: 10px;
  text-align: left;
  border-radius: 4px;
  background-color: #d7edff;
  border: 1px solid #aedaff; }
  .box-information.box-alert {
    background-color: #fff1f1;
    border: 1px solid #e8bcbc; }
  .box-information:empty {
    display: none; }

.validation-summary-errors li {
  display: inline-block;
  width: 100%;
  padding: 10px;
  margin-bottom: 10px;
  text-align: left;
  border-radius: 4px;
  background-color: #fff1f1;
  border: 1px solid #e8bcbc; }
  .validation-summary-errors li:empty {
    display: none; }

.disabledElement {
  pointer-events: none;
  opacity: 0.4; }

#cookies_consent {
  width: auto;
  color: white;
  display: none;
  position: fixed;
  bottom: 0;
  background-color: var(--blue-dim);
  z-index: 100;
  padding: 10px 50px;
  margin: 30px;
  border-radius: var(--border-radius-medium); }
  @media (max-width: 767px) {
    #cookies_consent {
      margin: 15px;
      padding: 10px 20px; } }
  #cookies_consent .btn {
    margin: 0px 0px; }
  #cookies_consent .main_container {
    padding-bottom: 15px;
    width: auto;
    max-width: 480px; }

.chat-button {
  margin-right: 5px;
  position: relative;
  width: auto; }
  @media (max-width: 360px) {
    .chat-button {
      display: none; } }
  .chat-button .openingBox {
    line-height: 2.5;
    right: 60px;
    left: auto;
    min-height: 60px;
    width: 350px;
    padding: 5px 0px;
    cursor: default;
    max-height: calc(100vh - 80px); }

@media (max-width: 767px) {
  .drp-selected {
    display: inline-block;
    width: 100%; }

  .applyBtn.btn.btn-sm.btn-primary {
    float: right;
    display: block;
    margin: 10px; }

  .cancelBtn.btn.btn-sm.btn-default {
    float: left;
    display: block;
    margin: 10px; } }
.emoji {
  width: 18px;
  height: 18px; }

.send-btns {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 15px 25px 17px;
  font-size: 2rem; }
  .send-btns .fa-smile {
    color: #9ca1a7;
    margin-right: 10px;
    cursor: pointer; }
    .send-btns .fa-smile:hover {
      opacity: 0.7; }
  .send-btns .fa-paper-plane {
    color: var(--blue-selected);
    cursor: pointer; }
    .send-btns .fa-paper-plane:hover {
      opacity: 0.7; }
    .send-btns .fa-paper-plane.send-disabled {
      color: var(--blue-medium);
      cursor: default;
      opacity: 1 !important; }

.functionnalityBlockContainer {
  display: flex;
  flex-direction: row;
  padding-top: 10px;
  padding-bottom: 10px; }
  .functionnalityBlockContainer .funcBlock {
    width: 50%; }
    .functionnalityBlockContainer .funcBlock .funcTitle {
      font-size: 1em;
      font-weight: bold;
      padding-bottom: 10px; }
    .functionnalityBlockContainer .funcBlock .funcIcon i.fas {
      font-size: 6em;
      color: #798998; }
    .functionnalityBlockContainer .funcBlock .funcContent {
      padding: 10px 5px;
      color: #798998;
      line-height: 1.2em; }

.form-content-description {
  line-height: 1.2em;
  text-align: left;
  padding: 10px;
  font-size: 0.85em;
  color: #798998; }

.errorContainer {
  color: #eb4d11;
  display: block;
  padding-bottom: 5px; }

.alert_info {
  background-color: #fffbdf;
  text-align: left;
  padding: 15px 20px;
  margin: 0px 0px 10px;
  border-radius: 10px;
  width: 100%; }
  .alert_info button {
    vertical-align: middle;
    margin: 10px 0px; }
  .alert_info .spt-table {
    display: inline-grid; }
  @media (min-width: 768px) {
    .alert_info .spt-table {
      display: table; } }

@media (min-width: 1024px) {
  .productheader_loadingblock {
    margin: 0px 0px;
    height: 150px;
    display: flex; }
    .productheader_loadingblock .productheader_imageloading {
      width: 150px;
      height: 150px;
      border-radius: 10px;
      margin-left: 0px; }
    .productheader_loadingblock .productheader_contentloading {
      padding-left: 15px;
      overflow: hidden; }
      .productheader_loadingblock .productheader_contentloading .productheader_longlabelloading {
        height: 32px;
        width: 400px;
        margin: 5px;
        border-radius: 2px; }
      .productheader_loadingblock .productheader_contentloading .productheader_productstatusloading {
        height: 20px;
        width: 180px;
        margin: 5px;
        border-radius: 2px; }
      .productheader_loadingblock .productheader_contentloading .productheader_productoptionsloading {
        height: 30px;
        width: 270px;
        margin: 5px;
        border-radius: 2px; } }
@media (max-width: 1023px) {
  .productheader_loadingblock {
    margin: 10px 5px;
    height: 100px;
    display: flex; }
    .productheader_loadingblock .productheader_imageloading {
      width: 100px;
      height: 100px;
      border-radius: 10px;
      margin-left: 5px; }
    .productheader_loadingblock .productheader_contentloading {
      padding-left: 15px;
      width: calc(100% - 100px); }
      .productheader_loadingblock .productheader_contentloading .productheader_longlabelloading {
        height: 32px;
        width: 180px;
        margin: 5px;
        border-radius: 2px; }
      .productheader_loadingblock .productheader_contentloading .productheader_productstatusloading {
        height: 20px;
        width: 180px;
        margin: 5px;
        border-radius: 2px; }
      .productheader_loadingblock .productheader_contentloading .productheader_productoptionsloading {
        height: 30px;
        width: 180px;
        margin: 5px;
        border-radius: 2px; } }

.image-highlight {
  filter: brightness(0) invert(1); }

.lds-ring {
  display: inline-block;
  position: relative;
  width: 30px;
  height: 30px;
  padding: 4px; }
  .lds-ring.lds-ring-mini {
    width: 30px;
    height: 30px; }
  .lds-ring.lds-ring-large {
    width: 40px;
    height: 40px; }

.lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 22px;
  height: 22px;
  border: 4px solid var(--color-primary);
  border-radius: 50%;
  animation: lds-ring 0.8s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: var(--color-primary) transparent transparent transparent; }

.lds-ring-mini div {
  width: 22px;
  height: 22px; }

.lds-ring-large div {
  width: 32px;
  height: 32px; }

.lds-ring div:nth-child(1) {
  animation-delay: -0.30s; }

.lds-ring div:nth-child(2) {
  animation-delay: -0.2s; }

.lds-ring div:nth-child(3) {
  animation-delay: -0.10s; }

@keyframes lds-ring {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
/* lds-ring intégré à un bouton : réduit, aligné au texte, et reprend la
   couleur du texte du bouton (blanc sur .btn-primary) au lieu de la couleur
   primaire — sinon il serait invisible sur fond teal. */
.btn .lds-ring {
  width: 18px;
  height: 18px;
  padding: 2px;
  vertical-align: middle;
  margin-right: 4px; }

.btn .lds-ring div {
  width: 14px;
  height: 14px;
  border-width: 2px;
  border-color: currentColor transparent transparent transparent; }

/* Bouton en chargement (Topbar.setLoading) : on masque son icône d'origine —
   le lds-ring inséré en tête la remplace — et le libellé reste inchangé. */
.btn.is-loading > i {
  display: none; }

/* Contenu verrouillé pendant un enregistrement (POST plein page). On bloque
   l'interaction SANS poser 'disabled' sur les champs — ce qui les exclurait du
   POST. L'état est retiré automatiquement au rechargement de la page. */
.is-saving {
  pointer-events: none;
  opacity: 0.55;
  user-select: none;
  transition: opacity .15s ease; }

.color-red-danger {
  color: #eb4d11; }

.color-blue-light {
  color: var(--blue-light); }

.completeRequestErroMessage {
  margin-top: 10px;
  margin-bottom: 10px; }

#featuredProductList_loadingblock, #featuredProductList {
  padding-bottom: 20px;
  white-space: nowrap;
  overflow-x: auto;
  display: inline-block;
  width: 100%; }
  @media (max-width: 767px) {
    #featuredProductList_loadingblock, #featuredProductList {
      padding-bottom: 30px; } }

.pastille {
  background-color: rgba(255, 255, 255, 0.1);
  padding: 3px 8px;
  border-radius: 5px;
  display: inline-block;
  color: white;
  margin-right: 6px; }

.login_individual {
  background-color: white;
  width: 40%;
  max-width: 320px;
  z-index: 2; }
  @media (max-width: 767px) {
    .login_individual {
      width: 100%;
      max-width: unset; } }

.login_individual_container {
  padding: 40px 30px 20px;
  text-align: left;
  position: sticky;
  top: 0px; }
  .login_individual_container h1 {
    font-weight: bold;
    line-height: 4.1rem;
    margin: 3px;
    margin-bottom: 30px; }
  .login_individual_container .btn-medium {
    margin-top: 3px;
    width: 100%; }
  @media (max-width: 767px) {
    .login_individual_container {
      padding: 20px 15px 10px; }
      .login_individual_container h1 {
        margin-bottom: 20px;
        font-size: 2.1rem;
        line-height: 2.8rem; }
      .login_individual_container h2 {
        margin-top: 0px; }
      .login_individual_container .btn-medium {
        margin-top: 3px;
        width: 100%;
        margin: 0px 0px 10px;
        padding: 12px 15px; }
      .login_individual_container .fPmention {
        display: none; } }

.lc-3 {
  padding-top: 20px; }
  @media (max-width: 767px) {
    .lc-3 {
      padding-top: 0px;
      padding-left: 5px; } }

.lc-3-2 {
  margin: 3px; }
  @media (max-width: 767px) {
    .lc-3-2 {
      display: none; } }

@media (max-width: 767px) {
  .lc-2 {
    padding-right: 5px; } }

#ins-selection, #ins-selection-modal,
.box-selection {
  position: relative; }
  @media (max-width: 767px) {
    #ins-selection, #ins-selection-modal,
    .box-selection {
      width: 100%; } }
  #ins-selection:before, #ins-selection-modal:before,
  .box-selection:before {
    content: '\f54e';
    font-family: 'Font Awesome 6 Pro';
    display: inline-block;
    font-weight: 300;
    margin-right: 4px;
    font-size: 1.33333em;
    line-height: .75em;
    vertical-align: -.0667em; }
  #ins-selection .selectbox, #ins-selection-modal .selectbox,
  .box-selection .selectbox {
    text-align: left;
    margin: -5px; }
    #ins-selection .selectbox .selectbox_container, #ins-selection-modal .selectbox .selectbox_container,
    .box-selection .selectbox .selectbox_container {
      display: flex;
      flex-direction: column; }
    #ins-selection .selectbox .action-item, #ins-selection-modal .selectbox .action-item,
    .box-selection .selectbox .action-item {
      padding: 10px 12px;
      display: inline-block;
      position: relative;
      line-height: initial; }

.desk .infos_content {
  background: var(--ct-surface);
  border: 0.5px solid var(--ct-border);
  border-radius: var(--ct-r-lg);
  padding: 25px;
  margin: 0px; }

.search-input-container {
  padding: 10px;
  text-align: center; }
  .search-input-container .infos_content {
    width: 100%;
    max-width: 700px;
    display: inline-flex;
    flex-direction: column;
    padding: 30px 15px;
    align-items: center;
    border-radius: 30px;
    box-shadow: 0px 0px 2px rgba 0, 0, 0, 0.2; }
    .search-input-container .infos_content .search-input {
      display: flex;
      flex: 1;
      width: 100%;
      flex-direction: row;
      max-width: 540px;
      position: relative;
      align-items: center; }
      .search-input-container .infos_content .search-input .form-control {
        border-radius: 30px;
        padding-left: 45px; }
      .search-input-container .infos_content .search-input:before {
        content: '\f002';
        font-family: 'Font Awesome 6 Pro';
        position: absolute;
        font-weight: 300;
        left: 15px;
        font-size: 1.8rem;
        color: #6e6e6e; }
  .search-input-container .register-button {
    height: auto;
    background-color: #3dbfef;
    color: white;
    width: auto;
    border-radius: 7px;
    padding: 10px 20px;
    vertical-align: top;
    right: 5px;
    top: 5px;
    cursor: pointer;
    display: inline-flex;
    line-height: 28px;
    margin-left: 10px; }
  .search-input-container .register-button:hover {
    background-color: #47cdfe; }
  .search-input-container .register-button i {
    font-size: 1.4rem;
    line-height: 28px; }
  .search-input-container .register-button span {
    font-size: 1.4rem; }
  .search-input-container .fpLogo {
    width: 100%;
    max-width: 250px;
    margin-bottom: 15px;
    display: inline-block; }
    @media (max-width: 767px) {
      .search-input-container .fpLogo {
        max-width: 180px; } }

#search-product-container {
  display: flex;
  padding: 0px;
  border-radius: Min(var(--border-radius-little), 10px);
  background: var(--blue-light);
  padding: 5px 5px;
  align-items: center; }
  #search-product-container #search-product-input {
    flex: 1;
    width: 100%;
    flex-direction: row;
    max-width: 540px;
    position: relative;
    align-items: center;
    padding: 8px 10px;
    border: 0px solid;
    background: var(--blue-light); }
    #search-product-container #search-product-input:focus {
      outline: 0;
      box-shadow: none;
      background-color: var(--blue-light);
      color: black; }
  #search-product-container:before {
    content: '\f002';
    font-family: 'Font Awesome 6 Pro';
    display: inline-block;
    font-weight: 300;
    margin-left: 10px;
    font-size: 1.8rem;
    color: #6e6e6e; }
  #search-product-container #search-product-clear {
    padding: 0px 5px;
    cursor: pointer;
    color: #6e6e6e;
    display: none; }
    #search-product-container #search-product-clear:hover {
      opacity: 0.7; }
    #search-product-container #search-product-clear:before {
      content: '\f057';
      font-family: 'Font Awesome 6 Pro';
      display: inline-block;
      font-weight: 300;
      margin-left: 10px;
      font-size: 1.8rem; }

.fp-first-i .btn-light {
  padding: 10px 20px;
  margin: 0px;
  margin-bottom: 10px; }
  @media (max-width: 767px) {
    .fp-first-i .btn-light {
      margin-bottom: 0px;
      padding: 8px 16px; } }
  .fp-first-i .btn-light i {
    margin-right: 12px; }

.fPContainer {
  height: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: row; }
  @media (max-width: 767px) {
    .fPContainer {
      flex-direction: column;
      min-height: unset; } }

.disconnected_wall_panel {
  width: 100%;
  text-align: center;
  padding: 30px 30px; }
  @media (max-width: 767px) {
    .disconnected_wall_panel {
      padding: 30px 0px; } }

.fPmention {
  display: inline-block;
  margin-top: 30px; }
  .fPmention .mentions_container {
    padding: 10px 0px !important; }
    .fPmention .mentions_container .text-center {
      text-align: left !important; }
      .fPmention .mentions_container .text-center span {
        padding: 0px !important; }

.d-flex-col {
  display: flex;
  flex-direction: column;
  width: 100%; }

.d-flex-row {
  display: flex;
  flex-direction: row;
  width: 100%; }

.d-inline-flex-row {
  display: inline-flex;
  width: 100%;
  flex-direction: row; }

.flex-1 {
  flex: 1; }

.max-1100 {
  max-width: 1100px; }

.gray-color {
  color: #666; }

.flex-h-align-center {
  align-items: center;
  justify-content: center; }

.flex-h-align-left {
  align-items: start; }

.codeInput {
  display: inline-block;
  width: auto; }
  .codeInput input {
    width: 45px;
    text-align: center;
    margin: 5px;
    display: inline-block;
    font-size: 1.8rem;
    padding: 20px 10px !important;
    border: 1px solid transparent; }
  .codeInput input:focus {
    border: 1px solid var(--blue-selected); }

#confirmSubscriptionForm .select-menu-hor {
  width: calc(50% - 5px);
  margin-bottom: 20px;
  display: inline-flex;
  align-items: center;
  background-color: var(--blue-light); }
  #confirmSubscriptionForm .select-menu-hor:before {
    display: inline-block;
    padding-right: 10px;
    font-weight: 800;
    font-family: 'Font Awesome 6 Pro';
    content: '\f111';
    color: #e4ecf5; }
  #confirmSubscriptionForm .select-menu-hor.selected-menu-hor {
    background-color: #fff2ef; }
    #confirmSubscriptionForm .select-menu-hor.selected-menu-hor:before {
      content: '\f058';
      color: var(--red-danger); }
    #confirmSubscriptionForm .select-menu-hor.selected-menu-hor .gray-color {
      color: #f7936e; }

.hr30 {
  margin: 30px 0px !important; }

.hr25 {
  margin: 25px 0px !important; }

.hr20 {
  margin: 20px 0px !important; }

.hr15 {
  margin: 15px 0px !important; }

.hr10 {
  margin: 10px 0px !important; }

#productGroupPurchaseForm {
  width: 100%; }

.marketbloc {
  background: white;
  margin: 30px 0px;
  display: inline-block;
  width: 100%;
  border-radius: 5px;
  box-shadow: 0px 0px 2px rgba(99, 112, 129, 0.15);
  padding: 20px; }
  @media (max-width: 767px) {
    .marketbloc {
      padding: 20px 15px; } }
  .marketbloc.large {
    max-width: 1500px; }

.groupPurchaseThumbnailsContainer {
  display: inline-grid;
  width: 100%;
  grid-template-columns: repeat(5, 1fr);
  row-gap: 30px;
  column-gap: 20px;
  width: 100%; }
  @media (max-width: 1199px) {
    .groupPurchaseThumbnailsContainer {
      grid-template-columns: repeat(4, 1fr); } }
  @media (max-width: 991px) {
    .groupPurchaseThumbnailsContainer {
      grid-template-columns: repeat(3, 1fr); } }
  @media (max-width: 767px) {
    .groupPurchaseThumbnailsContainer {
      grid-template-columns: repeat(2, 1fr);
      column-gap: 15px; } }

#shopProductDetailsContainerMP #shopProductDetailsForm .suggestion_container {
  padding: 0px 20px; }
@media (max-width: 767px) {
  #shopProductDetailsContainerMP #shopProductDetailsForm {
    padding: 0px !important; } }

.b2bnavbar {
  background: white;
  position: absolute;
  top: 0px;
  width: 300px;
  height: 100%;
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.15);
  display: none;
  justify-content: center;
  left: -300px;
  overflow: hidden;
  z-index: 21; }
  .b2bnavbar .nav {
    display: flex;
    flex-direction: column;
    width: 100%;
    position: absolute;
    height: 100%; }
    .b2bnavbar .nav .nav-item {
      display: flex;
      align-items: center;
      height: 50px;
      padding: 0px 25px;
      color: #3c4044;
      cursor: pointer; }
      .b2bnavbar .nav .nav-item a {
        color: #3c4044;
        padding: 0px; }
      .b2bnavbar .nav .nav-item:hover {
        background: var(--blue-light); }
      .b2bnavbar .nav .nav-item.entete-menu {
        border-bottom: 1px solid var(--blue-light);
        font-weight: 600; }
        .b2bnavbar .nav .nav-item.entete-menu i {
          color: #666;
          font-size: 1.8rem; }
        .b2bnavbar .nav .nav-item.entete-menu:hover {
          background: white;
          opacity: 0.7; }
      .b2bnavbar .nav .nav-item.has-submenu:after {
        content: '\f054';
        font-family: 'Font Awesome 6 Pro';
        position: absolute;
        font-weight: 300;
        right: 15px;
        font-size: 1.5rem;
        color: var(--blue-dark); }
    .b2bnavbar .nav .categoriesMenu {
      display: flex;
      flex-direction: column;
      width: 300px;
      background: white;
      position: absolute;
      top: 0px;
      left: 300px;
      z-index: 10;
      box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.15);
      display: none;
      height: 100%;
      background: #fff; }
      .b2bnavbar .nav .categoriesMenu .categoriesMenu-item {
        position: fixed;
        top: 60px;
        left: 0px;
        box-shadow: none;
        padding: 0px;
        width: 300px;
        height: 100%; }
        .b2bnavbar .nav .categoriesMenu .categoriesMenu-item .categoriesMenu-item-title {
          font-size: 1.2rem;
          font-weight: 600;
          margin-left: 10px; }

.submenuname {
  font-weight: 600;
  padding: 0px 5px !important;
  margin-top: 15px;
  display: flex;
  align-items: center;
  height: 30px; }

.dashboardSuggestion {
  display: block;
  width: 100%; }
  .dashboardSuggestion .groupPurchaseThumbnailsContainer {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    padding-bottom: 10px; }
    @media (max-width: 767px) {
      .dashboardSuggestion .groupPurchaseThumbnailsContainer {
        grid-template-columns: repeat(2, 1fr); } }

.social-menu-link {
  margin-left: 0px; }
  .social-menu-link.selected {
    color: var(--blue-selected) !important;
    border: 1px solid !important;
    cursor: default;
    background: var(--blue-light);
    opacity: 1; }
  .social-menu-link i {
    color: var(--blue-selected);
    width: 24px; }

.public-profile_container {
  display: flex;
  flex-direction: column; }
  @media (max-width: 767px) {
    .public-profile_container {
      flex-direction: row;
      align-items: center; } }
  @media (max-width: 767px) {
    .public-profile_container .public-profile_infos {
      padding-left: 15px; } }

.toogle-container .toggle {
  cursor: pointer;
  padding: 8px;
  margin-bottom: 0px;
  user-select: none;
  display: flex;
  align-items: center;
  font-weight: 500;
  background: var(--blue-medium); }
  .toogle-container .toggle span {
    flex: 1; }
.toogle-container .toggle label {
  cursor: pointer;
  display: flex; }
.toogle-container .toggle i {
  transition: transform 0.3s ease; }
.toogle-container .content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  padding: 0 8px; }
.toogle-container input[type=checkbox] {
  display: none; }
.toogle-container input:checked + .toggle + .content {
  max-height: 1000px; }
.toogle-container input:checked + .toggle i {
  transform: rotate(90deg); }

.family-container .light-Container {
  background-color: white; }

.carousel-container {
  position: relative;
  overflow: hidden;
  border-radius: 15px;
  overflow: hidden; }
  .carousel-container:before {
    content: ' ';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--blue-light);
    opacity: 1; }

.carousel-slide {
  display: flex;
  width: 100%;
  transition: transform 0.2s ease-in-out; }

.carousel-item {
  min-width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start; }

.carousel-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--blue-medium);
  color: black;
  border: none;
  cursor: pointer;
  width: 30px;
  height: 30px;
  z-index: 100;
  border-radius: 15px; }

.carousel-button.left {
  left: 10px; }

.carousel-button.right {
  right: 10px; }

.tox-tinymce {
  height: 100vh !important; }

.button-rond {
  border-radius: 50%;
  width: 50px;
  height: 50px;
  background: var(--blue-selected);
  border: none;
  outline: none;
  font: 18px Tahoma bold;
  color: #ffffff;
  text-shadow: 1px 1px 1px lighgrey;
  margin: 20px; }

a:not([href]):not([class]), a:not([href]):not([class]):hover {
  color: var(--link-color);
  text-decoration: revert; }

@media (max-width: 575.98px) {
  .hidden-xs {
    display: none !important; } }
@media (min-width: 576px) and (max-width: 767.98px) {
  .hidden-sm {
    display: none !important; } }
@media (min-width: 768px) and (max-width: 991.98px) {
  .hidden-md {
    display: none !important; } }
@media (min-width: 992px) and (max-width: 1199.98px) {
  .hidden-lg {
    display: none !important; } }
@media (min-width: 1200px) {
  .hidden-xl {
    display: none !important; } }
.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-left {
  text-align: left; }

.context-menu {
  position: absolute;
  visibility: hidden;
  min-width: 200px;
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--blue-medium);
  border-radius: 12px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
  padding: 6px;
  z-index: 1000;
  opacity: 0;
  transition: opacity 0.15s ease-out, transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
  pointer-events: none; }

.context-menu.pos-below {
  transition: opacity 0s ease-out, transform 0s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform: translateY(-15px) translateX(-5px) scale(0.9); }

.context-menu.pos-above {
  transition: opacity 0s ease-out, transform 0s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform: translateY(15px) translateX(-5px) scale(0.9); }

.context-menu.visible {
  transition: opacity 0.15s ease-out, transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
  visibility: visible;
  opacity: 1 !important;
  transform: translateY(0) translateX(0) scale(1) !important;
  pointer-events: auto; }

.context-menu ul {
  list-style: none;
  margin: 0;
  padding: 0; }

.context-menu li {
  padding: 8px 12px;
  font-size: 14px;
  font-weight: 500;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: background 0.05s, color 0.05s;
  border: 1px solid transparent; }
  .context-menu li i {
    width: 16px;
    font-size: 13px;
    text-align: center;
    color: var(--blue-selected);
    flex-shrink: 0; }

.context-menu li.danger {
  color: #ff453a; }
  .context-menu li.danger i {
    color: #ff453a; }

.context-menu li:hover {
  background-color: color-mix(in srgb, var(--blue-dark) 20%, transparent 0%);
  border: 1px solid color-mix(in srgb, var(--blue-dark) 5%, transparent 0%); }

.context-menu li.danger:hover {
  background: rgba(255, 69, 58, 0.05);
  color: #ff453a;
  border: 1px solid color-mix(in srgb, #ff453a 5%, transparent 0%); }

.context-menu li.separator {
  padding: 0;
  height: 1px;
  margin: 4px 8px;
  background: var(--blue-medium);
  border: none;
  border-radius: 0;
  cursor: default;
  pointer-events: none; }

.item-collapse {
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden;
  pointer-events: none; }

.label-primary {
  padding: 3px 12px;
  color: white;
  background-color: var(--blue-selected);
  border-radius: 15px; }

/* ==========================================================================
   Skeleton Loader
   Usage : ajouter .sk-layout--[list|card|table|form] sur le conteneur parent
   ========================================================================== */
/* --------------------------------------------------------------------------
   Animation
   -------------------------------------------------------------------------- */
@keyframes sk-shimmer {
  0% {
    background-position: -800px 0; }
  100% {
    background-position: 800px 0; } }
/* --------------------------------------------------------------------------
   Bloc de base
   Toutes les variantes héritent de .sk-block
   -------------------------------------------------------------------------- */
.sk-block {
  display: block;
  height: var(--sk-height, 12px);
  width: var(--sk-width, 100%);
  border-radius: var(--sk-radius, 4px);
  margin: var(--sk-margin, 5px 0);
  animation-name: sk-shimmer;
  animation-duration: var(--sk-duration, 1.8s);
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  background: linear-gradient(to right, var(--sk-color-base) 0%, var(--sk-color-highlight) 40%, var(--sk-color-base) 80%);
  background-size: 800px 100%; }

/* --------------------------------------------------------------------------
   Tokens de couleur — surchargeables par thème ou contexte
   -------------------------------------------------------------------------- */
:root {
  --sk-color-base: var(--blue-medium);
  --sk-color-highlight: Color-mix(var(--blue-medium) 90%, var(--blue-selected) 10%);
  --sk-duration: 1.8s; }

/* Exemple de thème sombre — à activer si besoin */
/*
@media (prefers-color-scheme: dark) {
  :root {
    --sk-color-base:      #1e2a38;
    --sk-color-highlight: #2d4460;
  }
}
*/
/* --------------------------------------------------------------------------
   Éléments structurels
   -------------------------------------------------------------------------- */
/* Ligne de texte générique — hérite tout du contexte */
/* Titre — plus haut, largeur partielle */
.sk-line--title {
  --sk-height: 18px;
  --sk-width: 55%; }

/* Ligne courte (ex. date, tag, prix) */
.sk-line--short {
  --sk-width: 35%; }

/* Avatar / photo de profil */
.sk-avatar {
  --sk-height: var(--sk-avatar-size, 40px);
  --sk-width: var(--sk-avatar-size, 40px);
  --sk-radius: 50%;
  --sk-margin: 0;
  flex-shrink: 0; }

/* Vignette image (ex. thumbnail de carte) */
.sk-thumbnail {
  padding-bottom: 90%;
  --sk-radius: 6px;
  --sk-margin: 0 0 12px 0; }

/* Bouton factice */
.sk-btn {
  --sk-height: 34px;
  --sk-width: 120px;
  --sk-radius: 6px; }

/* Badge / tag */
.sk-badge {
  --sk-height: 22px;
  --sk-width: 64px;
  --sk-radius: 20px; }

/* Icône carrée */
.sk-icon {
  --sk-height: var(--sk-icon-size, 24px);
  --sk-width: var(--sk-icon-size, 24px);
  --sk-radius: 4px;
  --sk-margin: 0;
  flex-shrink: 0; }

/* --------------------------------------------------------------------------
   Helpers de mise en page
   -------------------------------------------------------------------------- */
/* Ligne horizontale (avatar + lignes de texte) */
.sk-row {
  display: flex;
  gap: 12px;
  align-items: flex-start; }

/* Colonne de lignes de texte */
.sk-lines {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
  /* évite le débordement flex */ }
  .sk-lines :first-child {
    width: 90%; }
  .sk-lines :nth-child(2) {
    width: 30%; }
  .sk-lines :nth-child(3) {
    width: 70%; }

/* --------------------------------------------------------------------------
   Contextes — sk-layout--[variant]
   Chaque variant surcharge uniquement les tokens nécessaires
   -------------------------------------------------------------------------- */
/* --- Liste (ex. fil d'actualité, résultats de recherche) --- */
.sk-layout--list {
  --sk-height: 11px;
  --sk-avatar-size: 40px; }

.sk-layout--list .sk-row {
  margin-bottom: 20px; }

.sk-layout--list .sk-row:last-child {
  margin-bottom: 0; }

/* --- Carte (ex. produit, article, profil) --- */
.sk-layout--card {
  --sk-height: 13px;
  --sk-thumbnail-height: 150px; }

/* --- Grille de cartes --- */
.sk-layout--grid {
  --sk-height: 13px;
  --sk-thumbnail-height: 120px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 16px; }

/* --- Tableau (ex. liste de données, historique) --- */
.sk-layout--table {
  --sk-height: 14px;
  --sk-radius: 2px; }

.sk-layout--table .sk-row {
  gap: 8px;
  margin-bottom: 0;
  padding: 10px 0;
  border-bottom: 1px solid #e8edf2; }

.sk-layout--table .sk-row:last-child {
  border-bottom: none; }

/* Colonnes proportionnelles via custom property --sk-col-[n] */
.sk-layout--table .sk-col-1 {
  --sk-width: var(--sk-col-1, 20%); }

.sk-layout--table .sk-col-2 {
  --sk-width: var(--sk-col-2, 35%); }

.sk-layout--table .sk-col-3 {
  --sk-width: var(--sk-col-3, 20%); }

.sk-layout--table .sk-col-4 {
  --sk-width: var(--sk-col-4, 15%); }

/* --- Formulaire (ex. page d'édition, fiche) --- */
.sk-layout--form {
  --sk-height: 12px; }

.sk-layout--form .sk-field {
  margin-bottom: 20px; }

/* Label du champ */
.sk-layout--form .sk-label {
  --sk-height: 10px;
  --sk-width: 30%;
  --sk-margin: 0 0 8px 0; }

/* Input du champ */
.sk-layout--form .sk-input {
  --sk-height: 36px;
  --sk-radius: 4px;
  --sk-margin: 0; }

/* --------------------------------------------------------------------------
   Accessibilité
   -------------------------------------------------------------------------- */
/* Le skeleton est décoratif — caché aux lecteurs d'écran */
.sk-layout--list,
.sk-layout--card,
.sk-layout--grid,
.sk-layout--table,
.sk-layout--form {
  /* Appliquer aria-hidden="true" sur le conteneur côté HTML */ }

/* Réduction des animations si l'utilisateur le préfère */
@media (prefers-reduced-motion: reduce) {
  .sk-block {
    animation: none;
    background: var(--sk-color-base); } }
/* --------------------------------------------------------------------------
   Generic picker field
   -------------------------------------------------------------------------- */
.td-picker {
  position: relative; }

.td-picker-trigger {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 42px;
  padding: 10px 38px 10px 12px;
  border: 1px solid var(--blue-medium);
  border-radius: var(--border-radius-little);
  background: var(--input-background-color);
  color: var(--text-color);
  text-align: left; }

.td-picker-trigger::after {
  content: "\f078";
  font-family: "Font Awesome 6 Pro";
  font-weight: 300;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--blue-dim);
  pointer-events: none; }

.td-picker-trigger.placeholder {
  color: var(--blue-dim); }

.td-picker-trigger.disabled,
.td-picker-trigger:disabled {
  opacity: 0.65;
  cursor: not-allowed; }

.td-picker-trigger.has-preview {
  min-height: 50px;
  padding-left: 8px; }

.td-picker-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  overflow: hidden;
  border-radius: var(--border-radius-little);
  background: var(--blue-light);
  color: var(--text-color);
  font-size: 11px;
  font-weight: 700; }

.td-picker-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover; }

.td-picker-text {
  display: flex;
  flex-direction: column;
  min-width: 0;
  line-height: 1.25; }

.td-picker-label,
.td-picker-meta {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.td-picker-label {
  font-weight: 600; }

.td-picker-meta {
  margin-top: 2px;
  color: var(--blue-dim);
  font-size: 12px;
  font-weight: 400; }

.td-picker-popup {
  background: var(--input-background-color);
  border: 1px solid var(--blue-medium);
  border-radius: var(--border-radius-medium);
  box-shadow: 0 10px 30px color-mix(in srgb, var(--blue-dim) 12%, transparent);
  z-index: 9999;
  overflow: hidden; }

.td-picker-search {
  padding: 10px;
  border-bottom: 1px solid var(--blue-light);
  background: var(--background-color); }

.td-picker-search input {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid var(--blue-medium);
  border-radius: var(--border-radius-little);
  background: var(--input-background-color);
  color: var(--text-color); }

.td-picker-list {
  max-height: 280px;
  overflow-y: auto; }

.td-picker-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  border: 0;
  background: transparent;
  color: var(--text-color);
  text-align: left;
  padding: 10px 12px; }

.td-picker-item:hover,
.td-picker-item:focus {
  background: var(--selected-opacity); }

.td-picker-empty {
  padding: 12px;
  color: var(--blue-dim); }

.ap-popup {
  position: fixed;
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid var(--blue-medium);
  border-radius: 12px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.08);
  padding: 6px;
  max-height: 320px;
  overflow-y: auto;
  z-index: 30000;
  opacity: 0;
  transform: translateY(-8px) scale(0.96);
  transition: opacity 0.14s ease-out, transform 0.18s cubic-bezier(0.34, 1.56, 0.64, 1);
  pointer-events: none;
  text-align: left; }

.ap-popup.ap-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto; }

.ap-popup ul {
  list-style: none;
  margin: 0;
  padding: 0; }

.ap-popup li {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding: 6px 10px;
  border-radius: 8px;
  border: 1px solid transparent;
  cursor: pointer;
  transition: background 0.06s; }

.ap-popup li:hover {
  background: color-mix(in srgb, var(--blue-dark) 18%, transparent);
  border-color: color-mix(in srgb, var(--blue-dark) 6%, transparent); }

.ap-popup .ap-item-img {
  width: 30px;
  height: 30px;
  border-radius: 6px;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--blue-medium); }

.ap-popup .ap-item-text {
  display: flex;
  flex-direction: column;
  gap: 0px;
  overflow: hidden;
  flex: 1; }

.ap-popup .ap-item-label {
  font-size: 1.4rem;
  font-weight: 500;
  color: var(--blue-dim);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.ap-popup .ap-item-meta {
  font-size: 1.2rem;
  color: var(--blue-dark);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.ap-popup .ap-empty {
  padding: 10px 12px;
  font-size: 1.3rem;
  color: var(--blue-dark); }

.ap-popup .ap-loading {
  padding: 14px 16px; }

.article-picker {
  display: flex;
  align-items: center;
  max-width: 640px;
  position: relative; }

/* Fond blanc de l'input ArticlePicker UNIQUEMENT dans les vues inventaire
   (OrderReception / Delivery / Transfer / Production) — ID #inventory-article-picker
   n'existe que dans ces vues, donc la règle n'affecte pas les autres pages
   qui instancient un ArticlePicker (catalogue, services, etc.). */
#inventory-article-picker .form-control {
  background-color: #fff; }

/* Vignette d'article vide à gauche du champ de recherche */
.ap-field-thumb {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  margin-right: 10px;
  border-radius: var(--border-radius-little);
  background-color: var(--blue-medium); }

/* Liste gérée des articles sélectionnés (ArticlePicker, cfg.listEl) */
.ap-list-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  border-top: 1px solid var(--blue-light); }

.ap-list-thumb {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border-radius: var(--border-radius-little);
  object-fit: cover;
  background-color: var(--blue-medium); }

.ap-list-text {
  flex: 1;
  min-width: 0; }

.ap-list-label {
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.ap-list-meta {
  font-size: 1.2rem;
  color: var(--blue-dark);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.ap-list-remove {
  flex-shrink: 0;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px 10px;
  font-size: 1.4rem;
  color: var(--red-danger);
  opacity: 0.55; }

.ap-list-remove:hover {
  opacity: 1; }

#btcloture {
  color: #666; }
  #btcloture:hover {
    color: #1AA2D3; }

.label_duau_etat {
  width: 35px;
  float: left;
  line-height: 44px; }

.duau_etat_input {
  float: right;
  width: calc(100% - 35px); }

.edit_etat_cb.control-checkbox {
  margin-top: 15px !important; }

#srch_cloture_container {
  box-shadow: 0px 3px 3px #e3e3e3;
  border: 1px solid #e3e3e3; }

.srch_input_cloture {
  padding-right: 0px; }

.srch_cloture {
  padding-left: 0px;
  padding-right: 0px;
  height: 44px;
  line-height: 40px; }

.acloturer_header {
  margin-bottom: 5px; }

.cloture_item_container {
  padding: 5px 15px 5px 15px;
  color: black;
  font-family: "Lato","sans-serif";
  font-size: 1.4rem;
  font-weight: bold;
  border-bottom: solid;
  border-color: #e6e6e6;
  border-width: 1px; }
  .cloture_item_container:hover {
    color: #1AA2D3;
    cursor: pointer;
    box-shadow: 0px 2px 2px #e3e3e3; }
    .cloture_item_container:hover .cloture_item_date {
      color: #666; }

.cloture_item_container.no_bottom_border {
  border-bottom: none; }

.cloture_item {
  padding-top: 5px;
  padding-bottom: 5px;
  margin: 0;
  text-align: left;
  border-radius: 5px; }
  .cloture_item:hover {
    background-color: var(--blue-light);
    cursor: pointer; }

.cloture_item_date {
  font-weight: normal;
  color: #aaa; }

.no_item {
  font-size: 1.4rem;
  font-weight: bold; }

p.no_item {
  margin-bottom: 0px; }

.cloture_header {
  color: gray;
  background-color: #e4e4e4;
  text-align: left;
  padding: 6px 6px 8px 6px;
  padding-left: 15px;
  margin-bottom: 20px;
  height: 32px;
  clear: both; }
  .cloture_header span {
    font-weight: bold;
    color: #666; }

#especes_header {
  display: inline;
  float: left; }

.cloture_container {
  margin-left: 5px;
  margin-right: 5px;
  margin-bottom: 30px; }

.cloture_label {
  padding-left: 35px;
  text-align: left;
  font-weight: bolder; }

.cloture_cb_label {
  padding-top: 10px;
  text-align: left;
  padding-bottom: 10px; }

.cloture_cb_content {
  text-align: center; }

.cloture_input.form-control {
  color: black;
  text-align: right;
  padding-left: 5px;
  padding-right: 5px; }

.cloture_label_top {
  text-align: left;
  display: block;
  color: #bbb;
  font-size: 1.1rem;
  line-height: 16px; }

.cloture_label_bot {
  text-align: left;
  display: block;
  color: #999;
  font-weight: bolder; }

.cloture_label_billet {
  padding: 5px 3px 0px 0px; }

.cloture_label_input {
  padding: 0; }

.cloture_value {
  text-align: right;
  vertical-align: middle; }

.cloture_valuelabel {
  text-align: left;
  vertical-align: middle;
  font-weight: bold; }

@media (min-width: 991px) {
  .bottom-align-text-md {
    position: absolute;
    bottom: 0;
    right: 0; } }

.cloture_img {
  line-height: 44px;
  text-align: left; }

.cheque_input {
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 2px 8px; }

#ajout_cheque {
  display: block;
  padding-bottom: 10px; }

.bouton_radio {
  display: inline-block;
  float: right;
  text-align: right;
  font-weight: normal;
  color: dimgray;
  margin: 0;
  padding: 0px 5px 0px 0px; }

.label_bouton_radio {
  float: left;
  margin-right: 10px;
  margin-top: 1px; }

#montant_total_especes {
  display: inline-block;
  white-space: nowrap;
  text-overflow: ellipsis; }

#montant_total_especes_input {
  display: none;
  width: 100px;
  white-space: nowrap;
  text-overflow: ellipsis; }
  #montant_total_especes_input input {
    width: 100px; }

#montant_total_cheques_input {
  display: none;
  width: 100px;
  white-space: nowrap;
  text-overflow: ellipsis; }
  #montant_total_cheques_input input.form-control {
    width: 100px; }

.cloture_header_value {
  display: inline-block;
  white-space: nowrap;
  text-overflow: ellipsis; }

.acommander_header {
  margin-top: 10px; }

.cheque_item {
  vertical-align: middle;
  line-height: 100%; }

.cheque_container hr {
  padding: 0;
  margin: 13px 0px 13px 0px; }

#noArticle {
  background-color: white;
  position: relative;
  overflow: hidden; }
  @media (min-width: 768px) {
    #noArticle {
      height: calc(100vh - 55px); } }
  @media (max-width: 767px) {
    #noArticle {
      padding-top: 50px;
      margin: 0;
      height: 100%; } }

@media (min-width: 768px) {
  .menu_article_mobile {
    display: none; } }
@media (max-width: 767px) {
  .menu_article_mobile {
    display: flex; } }

@media (min-width: 768px) {
  .menu_article {
    display: flex; } }
@media (max-width: 767px) {
  .menu_article {
    display: none; } }

@media (min-width: 451px) {
  .label_add_article {
    margin-left: 6px;
    display: inline-flex; } }
@media (max-width: 450px) {
  .label_add_article {
    display: none; } }

/*.article_selected .duplicate-items {
    display:none;
}*/
#list_artcomp .duplicate-items .ligneArticle {
  padding-right: 8px !important; }

.img_preview img {
  width: 100%;
  height: 100%;
  border-radius: 5px;
  background-position: center center;
  object-fit: cover; }

.img_preview {
  vertical-align: middle;
  position: relative;
  overflow: hidden;
  border-radius: 5px; }
  .img_preview:after {
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #011d5c;
    opacity: .03;
    pointer-events: none;
    padding-bottom: 100%;
    position: absolute; }

.is-family-preview {
  background-image: none !important;
  background-color: #c9d7e6;
  text-align: center;
  font-size: 1.8rem;
  color: white;
  font-weight: bold;
  line-height: 36px; }

#list_artcomp {
  min-height: calc(100vh - 250px);
  display: inline-block;
  width: 100%; }

#list_artcomp .img_preview div {
  width: 36px;
  height: 36px; }

.img_preview-mini div {
  width: 36px;
  height: 36px; }

#list_artcomp div[name=Famille] {
  display: none; }

#list_artcomp .ligneArticle {
  padding: 8px 15px;
  cursor: pointer; }

.modal-body .ligneArticle {
  margin: 0;
  border-radius: 0; }
  .modal-body .ligneArticle .cb_container {
    padding-left: 0px; }
  .modal-body .ligneArticle .list-article-price, .modal-body .ligneArticle .list-article-promo, .modal-body .ligneArticle .unavailable-label {
    padding-right: 5px; }

.stockLabel {
  padding-right: 0px; }

#list_artcomp .article_main_info {
  font-weight: normal !important;
  display: block; }

#list_artcomp .article-picker-meta {
  margin-top: 0px; }

.ligneFamille {
  padding: 3px 5px;
  border-bottom: 1px solid var(--blue-light);
  cursor: pointer; }

.ligneFamille:hover {
  background-color: #fcfcfc; }

.ligneFamille i {
  color: #c6c6c6;
  position: absolute;
  right: 15px;
  height: 14px;
  top: 50%;
  margin-top: -7px; }

.ligneFamille div[name=Nom] {
  padding: 10px 0px; }

.addToList:empty {
  display: none; }

.removeAllToList:empty {
  display: none; }

.modal-title-text i {
  float: initial;
  padding: 0;
  background-color: transparent;
  padding-right: 10px;
  margin-top: -4px;
  font-size: 1.2rem; }

.editImage {
  padding-top: 100%;
  position: relative;
  border-radius: 4px;
  width: 100%;
  background: linear-gradient(#fbfdff, #f3f3f3);
  display: inline-block;
  border: 1px solid #d4dde6;
  background-image: url("/Resources/no-image.jpg");
  background-position: center center;
  background-size: cover; }

#listArticles {
  position: relative;
  margin-left: 0px;
  background-color: white;
  width: 100%;
  display: flex;
  flex-direction: column; }

#listArticleHeader {
  position: sticky;
  top: 0px;
  z-index: 2; }
  @media (max-width: 767px) {
    #listArticleHeader {
      top: 60px;
      background-color: white; } }

.ligneFormule {
  background-color: #e7edf3;
  padding: 6px;
  border-radius: 4px;
  display: inline-block;
  margin-top: 3px;
  margin-right: 3px; }

#col_1, #articles_col1 {
  flex: 1; }
  @media (min-width: 768px) {
    #col_1, #articles_col1 {
      z-index: 3;
      margin-left: 0px;
      margin-top: 0px;
      border-radius: 0px;
      border-right: 1px solid var(--blue-light); } }
  @media (max-width: 767px) {
    #col_1, #articles_col1 {
      padding-left: 0px;
      padding-right: 0px;
      overflow: visible;
      width: 100%; } }

.product_spec_preview {
  display: flex;
  padding: 5px; }

/* Customize the label (the container) */
.styled-checkbox {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
  align-items: center;
  display: block;
  margin-bottom: 0px;
  display: flex;
  align-items: center; }

/* Hide the browser's default checkbox */
.styled-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0; }

.checkbox-text {
  font-size: 1.4rem;
  font-weight: normal;
  padding-left: 3px;
  width: calc(100% - 30px);
  margin-right: 6px;
  padding-top: 1px; }

/* Create a custom checkbox */
.checkmark {
  display: inline-block;
  height: 20px;
  width: 20px;
  min-width: 20px;
  background: white;
  border-radius: 4px;
  margin-left: 0px;
  margin-right: 6px;
  border: 1px solid #d6dbe2; }
  .checkmark.disabled {
    background: white;
    border: 1px solid #dfdfdf;
    cursor: default; }

/* On mouse-over, add a grey background color */
.styled-checkbox:hover input ~ .checkmark {
  border-color: var(--blue-dark); }
  .styled-checkbox:hover input ~ .checkmark.disabled {
    background-color: white; }

/* When the checkbox is checked, add a blue background */
.styled-checkbox input:checked ~ .checkmark {
  border-color: var(--blue-selected);
  background-color: var(--blue-selected); }

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  display: block;
  opacity: 0; }

/* Show the checkmark when checked */
.styled-checkbox input:checked ~ .checkmark:after {
  display: block;
  -webkit-transform: rotate(45deg) scale(1);
  -ms-transform: rotate(45deg) scale(1);
  transform: rotate(45deg) scale(1);
  opacity: 1; }

.styled-checkbox-partial input:checked ~ .checkmark:after {
  display: block;
  -webkit-transform: rotate(0deg) scale(1);
  -ms-transform: rotate(0deg) scale(1);
  transform: rotate(0deg) scale(1);
  opacity: 1; }

/* Style the checkmark/indicator */
.styled-checkbox .checkmark:after {
  left: 6px;
  top: 2px;
  width: 6px;
  height: 11px;
  border: solid white;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg) scale(0);
  -ms-transform: rotate(45deg) scale(0);
  transform: rotate(45deg) scale(0);
  background-color: transparent;
  position: relative;
  transform-origin: center;
  opacity: 1;
  -webkit-transition: all 0.20s;
  -moz-transition: all 0.20s;
  -o-transition: all 0.20s;
  transition: all 0.20s; }

.styled-checkbox-partial .checkmark:after {
  left: 15%;
  top: calc(50% - 1px);
  width: 70%;
  height: 2px;
  border-radius: 0px;
  border-width: 0px;
  background-color: white;
  -webkit-transform: rotate(0deg) scale(0);
  -ms-transform: rotate(0deg) scale(0);
  transform: rotate(0deg) scale(0);
  opacity: 1; }

.checkbox {
  width: 18px;
  height: 18px;
  background: linear-gradient(#fbfdff, #f3f3f3);
  border-radius: 4px;
  margin-left: 6px;
  border: 1px solid #d6dbe2; }

.checkbox ::after {
  background-color: transparent; }

#actionBox {
  top: 38px;
  left: unset !important;
  right: 0px;
  padding: 10px 0px;
  min-width: 250px; }
  #actionBox:before {
    right: 19px;
    left: unset; }
  #actionBox:after {
    right: 20px;
    left: unset; }

#typeArticleBox {
  top: 20px;
  right: 25px;
  left: auto;
  padding: 10px 0px;
  width: 180px;
  min-width: 0px;
  color: #000;
  border: none;
  box-shadow: 0 0 0 1px rgba(63, 63, 68, 0.05), 0 1px 3px 0 rgba(63, 63, 68, 0.15); }

#typeArticleBox:after {
  top: -6px;
  right: 10px;
  left: initial;
  color: #f3f3f3; }

#typeArticleBox:before {
  top: -7px;
  right: 9px;
  left: initial;
  border-bottom: 7px solid #efefef; }

.typeVenteBox, .typeCustomerGroupBox {
  top: 30px;
  right: 25px;
  left: 10px;
  padding: 10px 0px;
  width: 180px;
  min-width: 0px;
  color: #000;
  border: none; }

.typeVenteBox:before, .typeCustomerGroupBox:before {
  border-bottom: 7px solid #efefef; }

.action-item {
  padding: 10px 15px;
  display: block;
  width: 100%;
  cursor: pointer;
  white-space: nowrap; }
  .action-item.canwrap {
    white-space: normal; }

.action-item i {
  padding-right: 5px; }

.action-item:hover {
  background-color: var(--selected-opacity); }

.separate-action {
  border-top: 1px solid var(--blue-medium);
  width: 100%;
  margin: 10px 0px; }

#home_col_1 {
  position: relative; }
  @media (max-width: 767px) {
    #home_col_1 {
      height: 100%; } }

#tableArticles {
  display: inline-block;
  width: 100%; }

.tableArticlesContainer {
  padding-top: 0px; }
  @media (min-width: 768px) {
    .tableArticlesContainer {
      height: calc(100% - 60px); } }
  @media (max-width: 767px) {
    .tableArticlesContainer {
      overflow: visible;
      min-height: calc(100% - 60px); } }

@media (max-width: 767px) {
  #loading-articles {
    margin-top: -100px; } }

#col_2, #articles_col2 {
  display: block;
  min-height: 0;
  height: 0;
  padding: 0;
  padding: 20px 0px 15px;
  height: auto;
  flex: 1; }
  @media (min-width: 1200px) {
    #col_2, #articles_col2 {
      display: block; } }

#articles_col2 {
  padding: 20px 0px 15px; }
  @media (max-width: 767px) {
    #articles_col2 {
      display: none; } }
  @media (min-width: 768px) {
    #articles_col2 {
      display: block; } }

#home_col_2 {
  flex: 1;
  display: flex;
  justify-content: center; }

.no_article {
  display: none;
  color: #666;
  width: 100%;
  padding: 0;
  z-index: 2;
  padding: 10px 0px; }
  @media (max-width: 1199px) {
    .no_article {
      width: 100%; } }

#loadingArticleRevisions {
  display: inline-block;
  margin-top: 0px; }

div[name="infos_articles"] {
  padding-top: 25px; }

@media (min-width: 768px) {
  div[name="stock_articles"] {
    padding-top: 140px; } }

@media (min-width: 768px) {
  div[name="commmande_articles"], div[name="livraison_articles"], div[name="factures_client"] {
    padding-top: 42px; } }

@media (min-width: 768px) {
  div[name="promotion_articles"] {
    padding-top: 62px; } }

.select-image {
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  cursor: pointer;
  left: 6px;
  bottom: 6px;
  position: absolute;
  height: 30px;
  line-height: 30px;
  border-radius: 15px;
  width: 30px;
  font-size: 1.3rem; }

#liste_articles_container {
  height: 100%;
  width: 100%; }

.tarif_wrap, .four_wrap, .formule_wrap, .artcomp_wrap {
  position: relative;
  padding-bottom: 0px;
  width: 100%;
  padding: 10px 0px; }

.tarif-wrap {
  width: 100%; }

.artcomp_wrap, .tarif_wrap, .spec_wrap {
  background-color: var(--blue-light);
  border-radius: Min(var(--border-radius-little), 10px);
  margin: 10px 0px 0px;
  display: flex;
  align-items: center;
  padding: 10px 15px; }
  .artcomp_wrap input[type="text"], .artcomp_wrap input[type="number"], .artcomp_wrap select, .artcomp_wrap .input-search-button, .tarif_wrap input[type="text"], .tarif_wrap input[type="number"], .tarif_wrap select, .tarif_wrap .input-search-button, .spec_wrap input[type="text"], .spec_wrap input[type="number"], .spec_wrap select, .spec_wrap .input-search-button {
    background-color: white; }
  .artcomp_wrap:first-child, .tarif_wrap:first-child, .spec_wrap:first-child {
    margin-top: 10px; }
  .artcomp_wrap:last-child, .tarif_wrap:last-child, .spec_wrap:last-child {
    margin-bottom: 20px; }

.tarif_wrap {
  padding: 20px 20px; }
  .tarif_wrap:first-child {
    margin-top: 0px; }

.spec_wrap:first-child {
  margin-top: 0px; }

.fa-circle-question {
  font-size: 1.6rem;
  color: #9ca1a7;
  cursor: pointer;
  margin-left: 6px; }
  .fa-circle-question:hover {
    color: #eb4d11; }

.help-text {
  margin-bottom: 20px;
  border-radius: 5px;
  border: 1px solid var(--red-danger);
  padding: 10px;
  align-items: center;
  display: none; }
  .help-text::before {
    content: '\f059';
    display: inline;
    font-family: "Font Awesome 6 Pro";
    font-weight: 300;
    font-size: 2rem;
    color: #eb4d11;
    margin-right: 10px; }

.no-min-height {
  min-height: 0px !important; }

.formule_wrap {
  padding-bottom: 5px; }
  .formule_wrap .noChoixFormule {
    color: #ccc;
    margin-top: -5px; }

.disp-table-comp {
  display: table;
  width: 100%; }
  .disp-table-comp .img_preview {
    padding: 0px 10px;
    padding-bottom: 10px;
    width: 50px; }
  .disp-table-comp .row {
    margin-left: 20px;
    width: auto; }

.table-cell {
  display: table-cell; }

.delete_tarif, .delete_fournisseur {
  position: absolute;
  left: calc(50% - 14px); }

.editFormule, .editArtComp {
  margin: 0px 5px 10px; }

.editTarif, .editFour {
  margin: 0px 5px 20px; }

.article-price {
  font-size: 2.2rem;
  font-weight: 600; }

.list-article-channel {
  color: var(--blue-medium);
  padding-left: 0px;
  padding-right: 10px; }

.list-article-promo {
  color: #f6b700;
  max-height: 5px; }

.list-article-oldprice {
  font-size: 1.2rem;
  padding-top: 0px;
  display: block;
  margin-top: -5px;
  margin-bottom: -5px;
  width: 100%;
  color: #9ca1a7; }

.unavailable-label {
  color: #A70000;
  font-size: 1.3rem;
  padding-left: 0px;
  padding-right: 15px; }

.article-view-more {
  text-align: left;
  color: #111;
  font-size: 1.8rem;
  padding-bottom: 3px;
  display: inline-flex;
  width: 100%;
  align-items: center; }

.light-Container {
  background-color: var(--blue-light);
  border-radius: var(--border-radius-little);
  border: 0px solid var(--color-primary);
  padding: 25px; }
  .light-Container .article-view-more {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #e3e8ed; }
    .light-Container .article-view-more i {
      margin-right: 6px;
      color: var(--red-danger);
      vertical-align: middle; }
  .light-Container.canSelect {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center; }
    .light-Container.canSelect:after {
      content: '\f054';
      font-family: 'Font Awesome 6 Pro';
      position: absolute;
      font-weight: 300;
      font-size: 1.9rem;
      right: 20px;
      color: #6e6e6e; }
    .light-Container.canSelect:hover {
      background: var(--blue-medium);
      cursor: pointer; }
  .light-Container.canclick {
    cursor: pointer; }
    .light-Container.canclick:hover {
      background-color: var(--blue-medium); }

.article-price-detail {
  font-size: 1.4rem;
  color: #999; }

.article_text {
  position: relative;
  text-align: left;
  width: 100%;
  line-height: 1.95rem; }

.infos_img_container {
  margin-right: 0px;
  display: flex;
  align-items: start; }

.headerArticle {
  flex: 1;
  vertical-align: middle;
  padding-left: 20px; }

@media (max-width: 767px) {
  .advandecInputContainer {
    padding-top: 10px;
    padding-bottom: 0px !important; } }

@media (max-width: 767px) {
  .image_content {
    padding-right: 0px; } }

.infos_codeb_container select {
  width: 100%; }

.infos_img, .infos_code_barre {
  padding-bottom: 5px; }

.infos_articles_header hr {
  margin-top: 5px;
  margin-bottom: 15px;
  padding: 0; }

.link_articles_infos {
  padding-bottom: 4px;
  padding-left: 0px;
  padding-right: 0px; }
  .link_articles_infos p {
    padding: 0;
    margin: 0; }

.srch_img_art a, .upl_img_art a, .lib_img_art a, .gen_codeb a, .print_codeb a, .tag_codeb a {
  color: #168BB6; }

.srch_img_art a:hover {
  color: #4B4B56; }

.lib_img_art a:hover {
  color: #00B31F; }

.upl_img_art a:hover, .upl_img_art a:hover span {
  color: #FF9B15; }

.gen_codeb a:hover {
  color: #69747D; }

.print_codeb a:hover {
  color: #07121A; }

.tag_codeb a:hover {
  color: #FF2615; }

.modal-container-manage-article .modal-dialog {
  height: auto;
  max-height: 100%; }

#modal_article_manage, #modal_client_manage, #modal_facture_manage {
  border-radius: 0px;
  font-size: 1em;
  font-weight: 100; }

#modal_article_manage_body, #modal_client_manage_body, #modal_facture_manage_body {
  padding: 10px 0px;
  text-align: left; }
  @media (max-width: 767px) {
    #modal_article_manage_body, #modal_client_manage_body, #modal_facture_manage_body {
      padding: 10px 0px; } }

.modal_article_manage_title, .modal_facture_manage_title {
  padding-bottom: 10px; }

.modal_article_manage_title {
  height: 35px; }

#no_image_available {
  display: none; }

#add_new_image {
  border: 0px solid #6e6e6e;
  border-radius: Min(var(--border-radius-little), 10px);
  height: 140px;
  width: 140px;
  vertical-align: top;
  color: #6e6e6e;
  text-align: center;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-color: var(--blue-light); }
  #add_new_image i {
    margin-bottom: 20px;
    margin-top: 15px; }
  #add_new_image span {
    vertical-align: middle;
    display: inline-block;
    padding: 10px;
    align-self: center; }
  #add_new_image:hover {
    color: var(--blue-selected);
    background-color: var(--blue-light);
    border: 1px solid var(--blue-selected);
    cursor: pointer; }

#imagesList {
  position: relative;
  display: inline-block;
  width: 100%;
  text-align: left;
  padding-bottom: 0px; }

#imagesList:empty ~ #no_image_available {
  display: block; }

#no_article_available {
  display: none; }

#tableArticles:empty ~ #no_article_available {
  display: block;
  margin-top: 15px; }

#no_selected_item {
  display: none;
  font-size: 1.4rem;
  color: #91a1b1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%); }

#infos_articles0:empty ~ #no_selected_item {
  display: block; }

.close_modal_icon {
  position: absolute;
  font-size: 2.8rem;
  width: 40px;
  height: 40px;
  line-height: 36px;
  top: -20px;
  right: 10px;
  color: grey;
  padding: 0; }
  .close_modal_icon:hover {
    color: #0d87b4; }

.label_nom_article_manage {
  font-size: 1.2em;
  font-weight: bold;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }

.article_manage_menu_item p {
  margin: 0; }

.promo_manage_menu_item {
  padding-bottom: 0px; }

.livraison_options {
  display: none; }

.options_livraison_div {
  padding: 10px 0px 0px;
  color: #D3D3D3; }
  .options_livraison_div:hover {
    color: #A4A4A4; }

.fournisseur_existant {
  margin-bottom: 0px; }

.options_row label {
  margin-bottom: 0; }
@media (max-width: 767px) {
  .options_row select {
    padding-right: 65px; } }

.edit_option {
  position: absolute;
  width: 55px;
  height: 50px;
  right: -10px;
  top: 0;
  z-index: 10; }
  @media (max-width: 767px) {
    .edit_option {
      right: 40px; } }

.article_create_content {
  position: relative;
  background-color: white;
  border: 1px solid #e3e3e3;
  padding: 10px;
  overflow: hidden;
  padding-bottom: 30px;
  height: 100%;
  overflow: auto; }
  @media (max-width: 767px) {
    .article_create_content {
      padding: 0px;
      border: none; } }

.supprimer_promotion {
  font-size: 1.2em; }

#newAndInventaire {
  padding-left: 0px;
  padding-right: 0px; }
  @media (min-width: 768px) {
    #newAndInventaire {
      display: block !important; } }

.srch_articles {
  background-color: #D5D5D5;
  padding-bottom: 5px;
  overflow: visible; }
  @media (max-width: 767px) {
    .srch_articles {
      margin: 0;
      width: 100%; } }

.select_stores {
  margin-left: -10px;
  margin-right: -10px;
  background-color: white; }

#filterOnPromotion {
  margin-left: 0px;
  margin-bottom: 15px; }

@media (max-width: 767px) {
  #listArticles.en_regularisation {
    padding-top: 74px; } }

@media (max-width: 767px) {
  #listArticles.en_commande {
    padding-top: 114px; } }

@media (max-width: 767px) {
  #listArticles.en_reception {
    padding-top: 114px; } }

@media (max-width: 767px) {
  #listArticles.en_promotion {
    padding-top: 146px; } }

.input_barcode {
  padding-right: 80px; }

.barcodeVariable {
  position: absolute;
  right: 55px;
  z-index: 2;
  bottom: calc(50% - 7px);
  cursor: pointer;
  color: #8294a7;
  font-size: 16px !important; }
  .barcodeVariable:hover {
    cursor: pointer;
    color: var(--blue-selected); }

.barcode {
  position: absolute;
  right: 45px;
  z-index: 2;
  bottom: calc(50% - 7px);
  cursor: pointer;
  color: #8294a7;
  font-size: 16px !important; }
  .barcode:hover {
    cursor: pointer;
    color: var(--blue-selected); }

.refreshBarcode {
  position: absolute;
  right: 25px;
  z-index: 2;
  bottom: calc(50% - 5px);
  cursor: pointer;
  color: #8294a7;
  font-size: 16px !important; }
  .refreshBarcode:hover {
    cursor: pointer;
    color: var(--blue-selected); }

.printLabel {
  cursor: pointer;
  color: #8294a7;
  padding-bottom: 20px; }
  .printLabel:hover {
    cursor: pointer;
    color: var(--blue-selected); }

.rowMessageError {
  color: var(--red-danger);
  position: sticky;
  left: 0;
  top: 70px;
  margin-bottom: 30px;
  bottom: 0;
  width: 100%;
  z-index: 3;
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  z-index: 1000000000000000;
  padding: 0px 5px; }
  .rowMessageError .field-validation-error {
    text-align: left; }
  .rowMessageError #messageError {
    flex: 1;
    text-align: left; }

.closeErrorMessage {
  padding: 0px 6px;
  background-color: white;
  color: var(--red-danger);
  border-radius: 50%;
  cursor: pointer;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 22px;
  width: 22px;
  font-size: 1.3rem;
  right: 15px; }

#noFournisseur {
  margin-top: 20px;
  margin-bottom: 20px; }

#noChoixArticle {
  margin-top: 20px;
  margin-bottom: 20px; }

#noChoixFormule {
  margin-top: 20px;
  margin-bottom: 20px; }

.init_famille {
  float: left;
  margin-right: 0px;
  margin-left: 0px;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  border: solid 1px #C0C0C0;
  vertical-align: middle;
  background-color: white;
  color: #A0A0A0;
  line-height: 58px;
  letter-spacing: 2px;
  padding-left: 2px;
  text-align: center;
  font-size: 2.0rem;
  font-weight: 500; }

.searchImageArticle {
  position: absolute;
  width: 80px;
  height: 80px;
  line-height: 80px !important;
  top: 0;
  left: 0;
  color: #1aa2d3;
  border-radius: 40px;
  border: 2px solid #1aa2d3; }

.conatinerImage_Refresh {
  position: relative; }

#imgArticle {
  height: 150px;
  width: 150px;
  text-align: left;
  margin-right: 0px;
  vertical-align: middle;
  position: relative;
  overflow: hidden;
  border-radius: 10px; }
  #imgArticle .imgArticle_preview {
    display: inline-block;
    height: 100%;
    width: 100%;
    border-radius: 10px;
    object-fit: cover;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-color: white;
    position: relative; }
  #imgArticle:after {
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #011d5c;
    opacity: .03;
    pointer-events: none;
    padding-bottom: 100%;
    position: absolute; }

.montant_remise_div {
  width: 70px;
  float: right;
  white-space: nowrap; }
  .montant_remise_div input {
    float: left; }

.delete-image {
  position: absolute;
  right: -6px;
  top: -6px;
  background: var(--red-danger);
  width: 23px;
  height: 23px;
  border-radius: 12px;
  color: white;
  padding: 0;
  text-align: center;
  line-height: 23px;
  cursor: pointer; }
  .delete-image span {
    padding: 0; }
  .delete-image:hover span {
    opacity: 0.8; }

.vignetteDanger {
  border: 1px solid #A70000 !important; }

.vignetteImage {
  padding-top: 0px;
  padding-bottom: 0px;
  width: 140px;
  height: 140px;
  margin: 10px 20px;
  margin-left: 0px;
  display: inline-block;
  position: relative; }
  .vignetteImage .vignetteImage_content {
    border: 1px solid #e7edf3;
    border-radius: Min(var(--border-radius-little), 10px);
    display: inline-block;
    height: 100%;
    width: 100%;
    object-fit: cover;
    background-repeat: no-repeat;
    background-position: center;
    cursor: move; }

.vignetteImages {
  padding: 0px 0px 15px; }

#imagesList {
  max-width: 436px; }

.link_bibliotheque_img {
  padding: 15px 0px 5px;
  border-top: 1px solid #e3e3e3; }

.selectListMin {
  background: url("/Content/Images/down-arrow.svg") no-repeat calc(100% - 50px) 50% #ffffff !important;
  background-size: 11px 7px !important;
  padding-right: 40px !important; }

.iconListRemove {
  color: #D41C1C;
  width: 25px; }

.iconListEdit {
  width: 25px; }

.prixArticleDuplique {
  color: grey; }

.mobile_comm_content {
  padding: 15px 0px 20px; }

.mobile_comm_title {
  font-weight: bold;
  font-size: 1.2em; }

.mobile_comm_label {
  font-weight: bold;
  text-transform: uppercase;
  color: #666;
  text-align: left; }
  .mobile_comm_label label {
    margin: 0; }

.mobile_comm_qte {
  max-width: 60px;
  float: left; }

.mobile_comm_unite {
  height: 44px;
  line-height: 44px;
  margin-left: 60px;
  text-align: left; }

.optionArticle {
  display: inline-block; }

.infoSuppArticle {
  font-size: 0.85em; }

.articleAndTaille {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  vertical-align: middle; }

.maxWidth50Percent {
  max-width: 50%; }

.modal-content-large {
  width: 768px; }
  @media (max-width: 768px) {
    .modal-content-large {
      width: 100%; } }

.widthAuto {
  width: auto; }

#ListStores_Livraison {
  margin-left: auto;
  margin-right: auto; }

.configMagasin {
  float: left;
  min-width: 200px; }

.configDate {
  float: left;
  min-width: 400px; }

.lienMiseEnVeille {
  text-transform: none;
  text-decoration: underline;
  padding-left: 10px; }

.chkBoxUpdateImport {
  width: 15px;
  margin-top: 8px !important; }

.chart-legend {
  display: inline-block;
  width: 100%;
  margin-top: 0px;
  text-align: left;
  display: none; }

.chart-legend ul {
  padding-left: 10px !important; }

.chart-legend li {
  list-style-type: none;
  margin-top: 10px; }

.chart-legend li span {
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  margin-right: 6px;
  margin-left: 5px;
  margin-top: -4px;
  vertical-align: middle; }

.dynOnOff {
  display: inline-flex;
  width: auto;
  background-color: var(--color-primary);
  border-radius: 4px;
  padding: 3px;
  margin-bottom: 6px; }
  .dynOnOff label {
    width: auto;
    border-radius: 2px;
    padding: 6px 12px;
    margin-bottom: 0px;
    cursor: pointer;
    width: 120px;
    color: white;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: center; }
  .dynOnOff .on-off-selected {
    background-color: white;
    color: var(--color-primary); }

.sale-editor {
  width: 180px;
  display: inline-block;
  margin-top: 6px;
  margin-bottom: 10px; }

.modal-body #FormArticles {
  max-width: 700px; }

.modal-body #FormArticles .infos_content {
  box-shadow: none; }

#infos_articles0 #FormArticles .infos_content {
  margin-bottom: 20px;
  display: inline-block;
  width: 100%; }

.modal-body .infos_content {
  margin: 0px 0px;
  margin-bottom: 0px;
  padding: 0px;
  border: none; }

#FormArticles .soustitre {
  text-transform: uppercase;
  color: #333;
  font-size: 1.5rem;
  padding-bottom: 15px !important; }

.soustitre {
  color: #000;
  font-size: 1.65rem;
  padding-bottom: 15px !important;
  font-weight: 500;
  display: inline-block;
  width: 100%; }

.st-Opt {
  color: var(--blue-dark);
  margin-left: 6px; }

#formFamily {
  padding: 10px; }

.subtitle {
  text-transform: uppercase;
  text-align: left;
  font-family: 'Lato', 'sans-serif';
  color: grey;
  font-size: 1.3rem;
  font-weight: normal; }

.col-lg-12 .dynInput, .col-lg-9 .dynInput, .col-lg-8 .dynInput, .col-lg-6 .dynInput, .col-lg-5 .dynInput, .col-lg-4 .dynInput .col-lg-3 .dynInput, .col-lg-2 .dynInput, .col-xs-12.dynInput, .col-xs-6.dynInput, .col-lg-12 .dynDropDown, .col-lg-9 .dynDropDown, .col-lg-8 .dynDropDown, .col-lg-6 .dynDropDown, .col-lg-5 .dynDropDown, .col-lg-4 .dynDropDown.col-lg-3 .dynDropDown, .col-lg-2 .dynDropDown, .col-xs-6 .dynDropDown, .col-xs-12 .dynDropDown {
  margin-bottom: 15px; }

.margin-bottom-15 {
  margin-bottom: 15px; }

.modal-body .infos_img_container {
  display: none; }

.modal-body .action-button-container {
  margin: 0px;
  width: 100%;
  padding-bottom: 10px; }

#FormArticles #imagesList {
  max-width: none;
  width: 100%; }

.success-message {
  padding: 20px; }
  .success-message i {
    font-size: 3.0rem;
    margin-bottom: 10px; }

#editLink {
  margin-left: 0px;
  margin-right: 6px;
  display: inline-block; }

#editLink + #actionLink .btn-light {
  margin-left: 0px; }

#unavailableLabel {
  color: #eb4d11;
  cursor: default;
  display: none; }

#previewchannel {
  color: var(--blue-dark);
  cursor: default; }
  #previewchannel i {
    color: inherit; }

.article-header-btn {
  border-radius: 4px;
  display: inline-flex;
  transition: width ease 0.2s;
  overflow: hidden;
  width: 42px; }
  .article-header-btn input {
    padding: 0px;
    background-color: transparent;
    border: 0px solid transparent;
    width: 100%;
    font-size: 1.5rem;
    opacity: 0; }
    .article-header-btn input:focus {
      border: 0px solid transparent !important;
      outline: none;
      border-color: inherit;
      -webkit-box-shadow: none;
      box-shadow: none; }
  .article-header-btn i {
    margin: 10px;
    font-size: 2.2rem;
    color: #9ca1a7; }
  .article-header-btn:hover {
    cursor: pointer;
    background-color: var(--blue-light); }

#qty_item_container {
  transition: opacity 0.2s ease; }

#label_item_header i {
  cursor: pointer;
  vertical-align: middle;
  padding-bottom: 1px; }
  #label_item_header i:hover {
    color: maroon; }

.ui-autocomplete li div i {
  display: inline !important;
  color: var(--blue-selected) !important;
  font-weight: bold !important; }

@media (max-width: 767px) {
  .rowDeclination {
    margin-bottom: 6px; } }
.select-contenance-unit {
  text-align: left;
  padding: 10px 0px;
  width: 100%;
  min-width: 100%;
  left: 0px; }
  .select-contenance-unit:before {
    display: none; }
  .select-contenance-unit:after {
    display: none; }

.extraProductContainer {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: flex-start; }
  .extraProductContainer .styled-checkbox {
    margin-bottom: 0px;
    width: auto; }

.productExtrasListHeader {
  text-align: left;
  margin-bottom: 6px; }
  .productExtrasListHeader .productExtraHeaderPrimary {
    font-size: 1em;
    font-weight: bold; }
  .productExtrasListHeader .productExtraHeaderSecondary {
    font-weight: normal;
    font-size: 0.85em;
    color: #798998; }

.extraThumbnailContainer {
  display: flex;
  flex-direction: column;
  background-color: var(--blue-light);
  border-radius: 10px;
  margin: 5px 0px;
  padding: 10px; }

.extraThumbnailHeader {
  display: flex;
  flex-direction: row;
  align-items: center; }
  .extraThumbnailHeader i {
    margin: 0px 10px 3px 3px;
    cursor: move;
    color: #9ca1a7; }
  .extraThumbnailHeader .styled-checkbox {
    margin-bottom: 0px; }

.extraThumbnailBody {
  overflow: hidden;
  transition: all linear 0.3s;
  padding-top: 0px;
  max-height: 0px; }
  .extraThumbnailBody.open {
    padding-top: 10px;
    max-height: 200px; }

#FormExtraConfig {
  padding: 10px; }

.productExtrasSelectionContainer {
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  margin-bottom: 10px; }

.extraPriceContainer {
  font-size: 0.85em;
  color: #9ca1a7;
  white-space: nowrap; }

.extraSelectedAmount {
  color: var(--blue-selected); }

.productHeaderCondensedContainer {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 10px; }
  .productHeaderCondensedContainer.expanded {
    padding-bottom: 0px;
    flex-direction: column;
    align-item: center; }
    .productHeaderCondensedContainer.expanded #miniatureImages {
      width: 500px;
      height: 500px;
      padding: 0px;
      margin: 0px; }
      .productHeaderCondensedContainer.expanded #miniatureImages .miniature_thumbnail {
        margin: 0px;
        width: 500px;
        height: 500px; }
    .productHeaderCondensedContainer.expanded .productHeaderInformations {
      line-height: 1.9rem;
      padding: 10px 0px 0px 0px; }
    .productHeaderCondensedContainer.expanded .productHeaderImageInformations {
      display: flex;
      flex-direction: column; }
  .productHeaderCondensedContainer .productHeaderImageInformations {
    display: flex;
    flex-direction: row; }
  .productHeaderCondensedContainer .productHeaderImgDisplay {
    padding: 0px; }
  .productHeaderCondensedContainer .mediumImageContainer {
    width: 80px;
    height: 80px; }
  .productHeaderCondensedContainer .productHeaderInformations {
    line-height: 1.9rem; }

.groupPurchaseThumbnailContainer {
  position: relative;
  background-color: white;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  line-height: 2rem;
  flex: 1;
  border: 1px solid #e0e4e9;
  overflow: hidden; }
  .groupPurchaseThumbnailContainer:hover {
    cursor: pointer; }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailProductName, .groupPurchaseThumbnailContainer .groupPurchaseThumbnailPriceContainer, .groupPurchaseThumbnailContainer .groupPurchaseThumbnailInstitution, .groupPurchaseThumbnailContainer .groupPurchaseThumbnailQuantity {
    text-align: left; }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailInstitution {
    display: flex;
    width: 100%;
    text-align: left;
    align-items: center;
    color: var(--blue-dark);
    font-size: 1.3rem;
    padding: 0px 0px 10px; }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailPriceContainer {
    font-size: 1.6rem;
    font-weight: 500; }
  .groupPurchaseThumbnailContainer .price-locked {
    padding: 3px 8px;
    border-radius: 5px;
    font-size: 1.3rem;
    max-width: 200px;
    margin-bottom: 6px;
    color: #139ae3; }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailLabels {
    text-align: left;
    margin-top: 10px; }
    .groupPurchaseThumbnailContainer .groupPurchaseThumbnailLabels .moq_border, .groupPurchaseThumbnailContainer .groupPurchaseThumbnailLabels .participant_border {
      border-radius: 5px;
      padding: 3px 8px;
      color: black;
      font-size: 1.3rem;
      display: inline-block;
      margin-bottom: 5px; }
    .groupPurchaseThumbnailContainer .groupPurchaseThumbnailLabels .moq_border {
      background-color: var(--blue-light);
      margin-right: 5px; }
    .groupPurchaseThumbnailContainer .groupPurchaseThumbnailLabels .participant_border {
      background-color: var(--blue-medium); }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailQuantityContainer {
    display: inline-block;
    width: 100%;
    justify-content: space-between; }
    .groupPurchaseThumbnailContainer .groupPurchaseThumbnailQuantityContainer .col-xs-12 {
      padding: 0px;
      text-align: left;
      padding-top: 5px; }
      .groupPurchaseThumbnailContainer .groupPurchaseThumbnailQuantityContainer .col-xs-12 span {
        font-size: 1.3rem;
        display: inline-block;
        color: var(--blue-dark);
        margin-right: 10px; }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailInformations {
    padding: 10px; }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailRemainingTime {
    text-align: right;
    color: #94a6b8; }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailProductName {
    font-weight: 400;
    font-size: 1.5rem;
    text-align: left;
    margin-top: 6px; }
  .groupPurchaseThumbnailContainer .productHeaderImgDisplay {
    position: relative; }
    .groupPurchaseThumbnailContainer .productHeaderImgDisplay img {
      width: 100%;
      display: inline-block;
      object-fit: cover;
      position: absolute;
      top: 0;
      left: 0; }
    .groupPurchaseThumbnailContainer .productHeaderImgDisplay:after {
      content: '';
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #011d5c;
      opacity: .04;
      pointer-events: none;
      padding-bottom: 100%;
      display: inline-block; }
  .groupPurchaseThumbnailContainer .miniature_thumbnail {
    width: 100%;
    height: 100%;
    border-radius: 0px;
    margin: 0px; }
  .groupPurchaseThumbnailContainer .groupPurchaseThumbnailInitiator {
    width: 14px;
    height: 14px;
    background-color: steelblue;
    border-radius: 10px;
    margin-right: 5px;
    padding: 7px; }

.tablePreviewStock {
  width: 100%; }

.tablePreviewStock td, .tablePreviewStock th {
  padding: 5px 10px;
  padding-left: 0px;
  border-bottom: 1px solid #e3e8ed; }

.ajout_link {
  padding: 5px 10px;
  font-size: 1.3rem;
  background-color: var(--blue-medium);
  color: black;
  border-radius: 5px;
  font-family: inherit;
  font-weight: normal;
  float: right;
  text-transform: normal;
  margin-right: 10px;
  margin-top: -6px;
  margin-bottom: -9px; }
  .ajout_link i {
    margin-right: 3px !important; }
  .ajout_link a {
    color: black;
    font-size: 1.3rem;
    vertical-align: top; }
    .ajout_link a:hover {
      color: #444; }

.ql-toolbar.ql-snow {
  text-align: left !important;
  border: none !important;
  border-bottom: 1px solid var(--blue-medium) !important;
  font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif !important;
  padding: 0px 0px 10px !important; }

.ql-container.ql-snow {
  border: none !important;
  min-height: 180px !important; }

.ql-editor {
  padding: 10px 0px 10px !important;
  font-size: 1.5rem !important;
  font-family: 'Open Sans' !important; }
  .ql-editor:before {
    color: #999999 !important;
    font-style: normal !important;
    left: 3px !important;
    pointer-events: none !important;
    position: absolute !important;
    right: 3px !important; }

.opt-container {
  margin: 0px;
  width: 100%;
  max-width: 400px;
  padding: 20px 15px 10px;
  border-radius: 10px;
  margin-top: 20px;
  display: inline-block;
  background-color: var(--blue-light);
  display: inline-block; }
  .opt-container input[type="text"] {
    background-color: white; }
  .opt-container hr {
    border-top-color: #e3e7eb;
    display: block; }
  .opt-container .rowDeclination {
    margin-bottom: 0px !important; }

.declination_opt .declinationName {
  display: inline-block;
  width: 100%;
  border-top: 1px solid var(--blue-light);
  margin-top: 20px;
  padding-top: 20px; }

.declination_opt listKeywordsDeclination:empty ~ .declination_opt {
  border-bottom: 1px solid black; }

.b2boptions {
  padding-top: 10px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: 0px;
  column-gap: 15px; }

.list-item {
  overflow-y: auto;
  height: auto;
  max-height: 500px;
  overflow-x: hidden;
  scrollbar-width: thin;
  margin-right: 5px;
  margin-top: 35px; }

.promo-page {
  display: grid;
  gap: 18px;
  margin-bottom: 24px; }

.promo-editor {
  padding: 6px 2px 10px; }

.promo-editor-grid {
  display: grid;
  grid-template-columns: minmax(420px, 1.35fr) minmax(280px, 0.9fr);
  gap: 18px; }

.promo-card {
  background: var(--input-background-color);
  border: 1px solid var(--blue-medium);
  border-radius: var(--border-radius-medium);
  padding: 18px; }

.promo-card-title {
  margin: 0 0 14px;
  font-size: 16px;
  font-weight: 700;
  color: var(--title-color); }

.promo-target-tabs,
.promo-kind-toggle {
  display: inline-grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  border: 1px solid var(--blue-medium);
  border-radius: var(--border-radius-medium);
  overflow: hidden;
  background: var(--input-background-color); }

.promo-kind-toggle {
  grid-template-columns: repeat(2, minmax(0, 1fr)); }

.promo-target-tab-count {
  background: var(--blue-light);
  height: 20px;
  width: 20px;
  margin-left: 3px;
  border-radius: 14px;
  font-size: 1.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: normal;
  color: var(--blue-dim); }

.promo-target-tabs {
  margin-bottom: 16px; }

.promo-kind-toggle {
  margin-bottom: 14px; }

.promo-target-tab,
.promo-kind-btn {
  border: 0;
  background: transparent;
  padding: 12px 14px;
  font-weight: 600;
  color: var(--text-color); }

.promo-target-tab.active, .promo-kind-btn.active {
  background: var(--blue-selected);
  color: var(--background-color); }

.promo-section {
  padding-top: 10px; }

.promo-section-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px; }

.promo-section-label {
  font-weight: 700;
  color: var(--title-color); }

.promo-section-copy {
  color: var(--blue-dim);
  line-height: 1.4;
  margin-bottom: 12px; }

.promo-section-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px; }

.promo-target-list {
  display: grid;
  gap: 10px; }

.promo-target-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 34px;
  gap: 10px;
  align-items: center; }

.promo-target-row.single-field {
  grid-template-columns: minmax(0, 1fr) 34px; }

.promo-icon-btn {
  width: 34px;
  height: 34px;
  border: 1px solid var(--blue-medium);
  border-radius: var(--border-radius-little);
  background: var(--input-background-color);
  color: var(--blue-dim); }

.promo-icon-btn:hover,
.promo-icon-btn:focus {
  color: var(--red-danger);
  border-color: var(--red-danger); }

.promo-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px; }

.promo-summary {
  margin-top: 16px;
  padding: 14px;
  border-radius: var(--border-radius-medium);
  background: var(--blue-light);
  border: 1px solid var(--blue-medium);
  color: var(--text-color);
  line-height: 1.45; }

.promo-summary-line + .promo-summary-line {
  margin-top: 6px; }

.promo-error {
  display: none;
  margin-top: 12px;
  color: var(--red-danger);
  font-weight: 600; }

.promo-error-visible {
  display: block; }

.promo-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 18px; }

@media (max-width: 991px) {
  .promo-editor-grid {
    grid-template-columns: 1fr; } }
@media (max-width: 720px) {
  .promo-target-row,
  .promo-target-row.single-field,
  .promo-fields,
  .promo-kind-toggle {
    grid-template-columns: 1fr; }

  .promo-actions {
    justify-content: stretch; }

  .promo-actions .btn {
    flex: 1 1 auto; } }
#login_body {
  padding: 0;
  height: 100%;
  background-color: white; }

#corps {
  min-height: calc(100vh - 60px);
  display: inline-block;
  text-align: center; }

.login_content {
  display: table-cell;
  vertical-align: middle; }

#login_name_input, #login_pwd_input {
  text-align: center; }

#login_content {
  margin-left: auto;
  margin-right: auto;
  padding: 5px 30px; }

#modal-container .control-label {
  padding-top: 7px; }

#login_content .input_div {
  padding-left: 0px;
  padding-right: 0px; }

#login_container {
  display: inline-block;
  height: auto;
  background-color: white;
  border-radius: var(--border-radius-medium);
  overflow: hidden;
  width: 100%;
  max-width: 460px;
  margin-left: auto;
  margin-right: auto;
  vertical-align: middle;
  padding: 40px;
  text-align: left; }
  @media (max-width: 767px) {
    #login_container {
      margin: 0px;
      box-shadow: unset !important; } }
  #login_container h2 {
    margin: 0px;
    padding: 0px;
    padding-top: 5px;
    font-weight: 600;
    margin-bottom: 6px; }

#login_submit_div {
  padding-top: 30px; }

#logo_div {
  width: 100%; }

#login_inputs {
  padding-top: 25px; }

.login_h2 {
  margin-right: 30px;
  height: 40px;
  line-height: 40px;
  font-family: 'Times New Roman', 'serif';
  color: black;
  font-size: 3.0rem;
  font-weight: normal; }
  .login_h2 #logo {
    margin-bottom: 7px;
    margin-top: 3px; }

.btn-login {
  background-color: white;
  color: black;
  border: 1px solid black; }
  .btn-login a {
    color: black; }
  .btn-login:hover {
    background-color: black;
    color: white;
    border: 1px solid black; }

.separatorline {
  display: flex;
  align-items: center;
  text-align: center; }

.separatorline::before, .separator::after {
  content: '';
  flex: 1;
  border-bottom: 1px solid var(--blue-light); }

.separatorline::before {
  margin-right: .25em; }

.separatorline::after {
  margin-left: .25em; }

.modal-body #login_container.infos_content {
  box-shadow: none !important;
  padding: 20px 20px 0px; }

#myCarousel {
  padding: 20px 10px 0px; }

#myCarousel .fleches {
  position: relative;
  top: 25%;
  left: 0;
  vertical-align: middle;
  color: #e4e4e4; }

#myCarousel .carousel-control.left {
  background-image: none; }

#myCarousel .carousel-control.right {
  background-image: none; }

.item_list_cloture_date {
  color: #aaa; }

#statsLoading {
  top: calc(50% - 32px);
  left: calc(50% - 50px);
  position: absolute; }

.excelIcon {
  color: #12D5A9; }
  .excelIcon:hover {
    cursor: pointer;
    color: #0ea684; }

.pdfIcon {
  color: #1AA0D3; }
  .pdfIcon:hover {
    cursor: pointer;
    color: #147ea6; }

.operationStockUpgrade {
  max-height: 500px;
  overflow: auto; }

.stockUpgrade_menu {
  cursor: pointer;
  padding: 5px; }

.stockUpgrade_menuSelected {
  background-color: #1AA2D3;
  color: white; }

.stockUpgrade_noTransactions {
  padding: 20px; }

.stockUpgrade_colStore {
  width: 100px; }

.stockUpgrade_colArticle {
  width: 150px; }

.stockUpgrade_colOperation {
  width: 50px; }

.stockUpgrade_colQuantity {
  width: 50px; }

.stockUpgrade_colPrice {
  width: 100px; }

.stockUpgrade_colDate {
  width: 150px; }

.stockUpgrade_colMotif {
  width: 100px; }

.stockUpgrade_colComment {
  width: 150px; }

.table_filter_profit {
  width: 25%;
  height: 500px;
  float: left; }

.table_filter_profit tbody {
  display: block;
  height: 470px;
  overflow-x: hidden;
  overflow-y: auto; }

.table_filter_profit thead tr {
  display: block;
  width: 100%;
  display: table; }

.table_filter_profit td, .table_marge_commerciale td {
  border-top: 1px solid var(--blue-dark) !important; }

.table_filter_profit tr {
  display: table;
  width: 100%; }

.table > tbody > tr > td {
  border-top: 1px solid #e1e7eb !important; }

.table_filter_profit th {
  cursor: pointer; }

.table_profit_col_center {
  background-color: var(--blue-light); }

#modal_filter_family .modal-dialog {
  height: 600px;
  width: 1200px; }

#modal_filter_family .modal-content {
  height: 100%;
  width: 100%;
  overflow: hidden; }

#modal_filter_family .modal-body {
  height: 100%;
  width: 100%; }

.selectedFilterProfit {
  background-color: #3FAFDA; }

.table_marge_commerciale {
  table-layout: fixed;
  font-size: 0.9em; }

.table_marge_commerciale .firstCol {
  text-align: left;
  padding-left: 20px; }

.table_marge_commerciale .lastCol {
  padding-right: 20px; }

.marginYear {
  margin-bottom: 20px; }

.labelYear {
  min-width: 10px;
  margin-right: 15px;
  padding-top: 13px; }

.inputYear {
  width: 100px; }

.period {
  text-align: left;
  padding-left: 2px;
  padding-top: 12px; }

.labelPeriod {
  padding-bottom: 7px; }

.displayFilter {
  text-transform: none;
  padding-top: 12px; }

.validerProfit {
  margin-top: 10px; }

.table_marge_commerciale .backgroundGrey {
  background-color: #eee; }

.table_marge_commerciale .backgroundDarkGrey {
  background-color: #D2D3D6; }

.table_marge_commerciale .colEmpty:hover {
  background-color: white; }

.table_marge_commerciale .total {
  background-color: aliceblue; }

.table_marge_commerciale .totalDark {
  background-color: #DCEBF9; }

.table_marge_commerciale .margin {
  background-color: #FEFCFC; }
  .table_marge_commerciale .margin:hover {
    background-color: #FFF5F5; }

.table_marge_commerciale .totalMarginDark {
  background-color: #FFE6E6; }

.table_marge_commerciale .fontBold {
  font-weight: bold; }

.table_marge_commerciale .fontItalic {
  font-style: italic; }

.table_marge_commerciale .fontGrey {
  color: #bbb; }

.table_marge_commerciale .fontRed {
  color: #D41C1C; }

.table_marge_commerciale .purchase {
  padding-left: 40px; }

.lockMonth {
  color: gold; }

#articlesRevisionsPartialView {
  margin: 0px 5px; }

#articleRevisionArray {
  white-space: nowrap;
  overflow-y: hidden;
  overflow-x: auto;
  display: table;
  background-color: white; }

#articlesRevisionsPartialView {
  display: inline-block; }

#articleRevisionContainer {
  display: inline-block;
  white-space: nowrap; }

#listArticleRevisions {
  width: 100%;
  height: 100%;
  white-space: nowrap; }

.ArticleRevisionsContent {
  min-height: 200px;
  width: auto;
  display: grid;
  position: relative;
  margin-bottom: 0px; }

.rowHeader {
  border-top: 1px solid #e7edf3;
  border-bottom: 1px solid #e7edf3;
  position: sticky;
  top: 0;
  z-index: 3; }

.firstCellRevision .cellRevision span.cellProductName {
  display: table-cell; }

.cellRevisionDeclination {
  font-weight: normal;
  display: inline-block;
  padding-top: 4px; }

.colRevision {
  display: inline-block;
  white-space: nowrap;
  font-size: 1.4rem;
  line-height: 1em; }

.colRevisionLarge {
  width: 200px; }

.colRevisionSupplier {
  width: 8%; }

.colRevisionMedium {
  width: 150px; }

.colRevisionSmall {
  width: 100px; }

.rowHeader .cellRevision {
  height: 35px;
  font-weight: bold;
  padding-top: 8px;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  background-color: #e7edf3 !important; }

.rowRevision .cellRevision {
  height: 54px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column; }

.cellRevision {
  padding: 10px;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  position: relative;
  border: 0px solid #e7edf3;
  border-bottom: 1px solid #e7edf3;
  border-right: 1px solid #e7edf3; }

.firstCellRevision {
  border-left: 0px solid #ddd;
  background-color: transparent;
  position: sticky;
  left: 0;
  z-index: 2;
  width: 250px;
  font-weight: 600;
  background-color: white; }
  .firstCellRevision .cellRevision {
    padding-left: 20px; }

.rowRevision {
  height: 54px;
  font-size: 0px;
  background-color: white;
  display: flex; }
  .rowRevision:hover {
    background-color: #f3f8fc !important; }
    .rowRevision:hover .firstCellRevision {
      background-color: #f3f8fc !important; }

.secondCellRevision {
  margin-left: 0px; }

.cellRevisionMargin {
  float: left;
  width: 80%;
  border-right: none;
  text-align: right !important;
  cursor: default; }

.percentRevision {
  float: left;
  width: 20%;
  padding: 0px;
  padding-top: 10px;
  padding-right: 10px; }

.rowEdited {
  background-color: var(--blue-selected);
  height: 8px;
  width: 8px;
  border-radius: 6px;
  float: right;
  margin-right: 10px;
  display: none;
  position: absolute;
  left: 6px;
  top: 23px; }

.editValueInput {
  width: 100%;
  height: 100% !important;
  margin-top: 0px;
  border-radius: 0px;
  background-color: transparent;
  border: none;
  position: absolute;
  margin-left: -10px;
  padding: 0px 10px;
  left: 10px;
  display: flex;
  justify-content: center; }
  .editValueInput label {
    margin-bottom: 0px; }

.editValueInput:focus {
  border: 1px solid var(--blue-selected) !important; }

.submitRevision {
  padding-bottom: 20px; }

.cellRevisionIconSort {
  padding-top: 5px;
  padding-left: 8px; }

.cellRevisionIconSortDown {
  vertical-align: top;
  padding-top: 2px !important; }

.keywordRevision {
  float: left;
  background-color: aliceblue;
  padding: 10px;
  margin-right: 10px;
  margin-bottom: 10px;
  border-radius: 10px; }

.keywordRevision span {
  padding-left: 5px;
  cursor: pointer;
  color: #D41C1C;
  vertical-align: middle; }
  .keywordRevision span:hover {
    cursor: pointer;
    color: #FF0000; }

.warnMargin {
  color: red; }

.marginTargetInput {
  max-width: 50px; }

.marginTargetLabel {
  max-width: 165px; }

.marginTarget label {
  margin-bottom: 6px; }

.marginTarget input {
  text-align: right; }

.refreshRevision {
  padding-top: 2px; }

.refreshRevision span {
  font-size: 1.5rem;
  color: #1aa2d3;
  cursor: pointer; }

.percentMarginTargethRevision {
  padding-top: 2px;
  padding-left: 0px;
  max-width: 20px; }

#PrintLabelArticleRevision {
  margin-right: 20px; }

.rowRevisionUpdated {
  font-weight: bold; }

.displayInactiveArticles {
  padding-top: 10px; }

@media print {
  *,
  *:before,
  *:after {
    /*new E*/
    /*text-shadow: none !important;*/
    /*background: transparent !important;*/
    /*box-shadow: none !important;*/
    color: #666 !important;
    font-size: 11px !important;
    -webkit-print-color-adjust: exact !important; } }
.facture_prestataire {
  margin-top: 20px !important; }

.facture_no_entete {
  background-color: #f1f1f1 !important; }

.container-fluid {
  width: 100% !important;
  margin-top: 0% !important;
  border: 0px solid !important; }

#listeclient {
  border-radius: 3px;
  height: 25px;
  padding: 0;
  font-size: 1.1rem; }

#listeclient > option {
  font-size: 300px; }

.selectedInvoices {
  /*background-color: azure;*/ }

.selectedClient {
  background-color: azure; }

.ligne_facture:hover {
  background-color: #F6F6F6;
  cursor: default; }

.aucun_client {
  padding-top: 100px; }

.srch_clients {
  background-color: #D5D5D5;
  padding-bottom: 5px; }

.n_client_icon {
  padding-left: 0px;
  padding-right: 0px; }
  .n_client_icon span {
    width: 30px;
    height: 30px;
    line-height: 30px;
    color: #524949; }

.padding_srch {
  padding-top: 5px; }

.padding_srch_icon {
  padding-top: 5px;
  padding-left: 0px;
  padding-right: 0px; }

@media (max-width: 767px) {
  .padding_srch_bar {
    padding-right: 0px; } }

.facture_image {
  display: block;
  max-width: 150px;
  max-height: 150px;
  width: auto;
  height: auto; }

.facture_prestataire p, .facture_client p {
  text-align: left;
  margin-bottom: 2px; }

.facture_client {
  border: 1px solid var(--blue-medium);
  padding: 10px;
  margin-top: 20px; }

.facture_no_entete {
  padding: 10px 20px;
  background-color: #f1f1f1;
  border: 1px solid var(--blue-medium);
  margin-top: 20px; }

.facture_date_emission, .facture_no {
  font-weight: bold; }

.facture_content_table {
  min-height: 200px;
  margin: 10px 0px; }

.facture_table_facture {
  text-align: right;
  width: 25%;
  padding: 2px 10px 2px 5px; }

.facture_table_qte {
  text-align: right;
  width: 10%;
  padding: 2px 10px 2px 5px; }

.facture_table_designation {
  width: calc(40% - 20px);
  text-align: left; }

.facture_table_designation.facture_table_firstColumn {
  padding-left: 0px !important;
  width: calc(25% - 10px) !important; }

.facture_table_puht {
  text-align: right;
  width: calc(15% - 20px); }

.facture_table_totalht {
  text-align: right;
  width: calc(20% - 20px); }

.facture_table_tva {
  text-align: right;
  width: calc(10% - 20px); }

.facture_table_taux {
  width: 40%;
  text-align: right; }
  .facture_table_taux b {
    color: var(--blue-selected); }

.facture_table_tvaht {
  width: 60%;
  text-align: right; }
  .facture_table_tvaht b {
    color: var(--blue-selected); }

.facture_table_tvamt {
  width: 60%;
  text-align: right; }
  .facture_table_tvamt b {
    color: var(--blue-selected); }

.accountBalance_table_taux {
  width: calc(20% - 20px);
  text-align: right; }
  .accountBalance_table_taux b {
    color: var(--blue-selected); }

.accountBalance_table_tvaht {
  width: calc(30% - 20px);
  text-align: right; }
  .accountBalance_table_tvaht b {
    color: var(--blue-selected); }

.accountBalance_table_tvamt {
  width: calc(20% - 20px);
  text-align: right; }
  .accountBalance_table_tvamt b {
    color: var(--blue-selected); }

.facture_block {
  margin-top: 20px;
  border: 1px solid gray; }
  .facture_block .row {
    padding-top: 8px;
    padding-bottom: 8px; }

.facture_border_bottom {
  border-bottom: 1px solid #f0f0f0; }

.facture_block_title {
  color: var(--blue-selected); }

.facture_conditions {
  padding: 10px;
  border: 1px solid var(--blue-medium); }

.info_facture {
  margin-top: 20px;
  border-top: 1px solid grey;
  border-bottom: 1px solid grey;
  border-left: 1px solid grey; }

.fontBold {
  font-weight: bold; }

.designationFactureTotal {
  text-align: right; }

.removeMarginTop {
  margin-top: 0px; }

.facture_entete_table {
  background-color: #f1f1f1;
  border-bottom: 1px solid var(--blue-medium);
  text-align: left;
  padding: 0px !important;
  height: 25px; }

.facture_entete_border_bottom {
  border-bottom: 1px solid var(--blue-medium); }

.facture_entete_border_top {
  border-top: 1px solid var(--blue-medium); }

.invoiceItemTicketNumber {
  display: flex;
  align-items: center; }

.infoPaymentInvoiceBubble {
  border-radius: 5px;
  padding: 2px 5px;
  color: white;
  margin-right: 5px;
  white-space: nowrap;
  display: inline-block; }
  .infoPaymentInvoiceBubble.paidInvoice {
    background-color: mediumseagreen; }
  .infoPaymentInvoiceBubble.unpaidInvoice {
    background-color: #eb4d11; }

.btnCreateGroupedInvoice {
  margin-right: 10px; }

.separator {
  width: 100%;
  height: 1px;
  margin-top: 7px;
  background-color: #E6E6E6;
  background-repeat: no-repeat;
  text-decoration: none; }

#ValiditeBA {
  text-align: right; }

.moisBA {
  text-align: right !important; }

.dashboard-bloc {
  text-align: left; }

#img.logo_param {
  margin: 0;
  height: 100px; }

.logo_param {
  max-width: 280px;
  float: none !important; }

.param_upload_link {
  float: right;
  line-height: 100px;
  padding-right: 10px; }

.image_logo_param {
  margin-top: 15px;
  -webkit-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 100% !important; }
  @media (min-width: 341px) {
    .image_logo_param {
      margin-top: 10px; } }

.param_btn_radio {
  text-align: right;
  padding-top: 10px; }

.sousLabel {
  font-weight: normal; }

.moisBA {
  font-weight: normal; }

.margBottom0 {
  margin-bottom: 0px; }

.margBottom30 {
  margin-bottom: 30px; }

.width30 {
  width: 30px; }

.labelPoints {
  float: left; }

a.labelPoints {
  padding-top: 7px;
  padding-left: 15px;
  margin-top: 0;
  margin-bottom: 0; }

.itemFamille {
  background-color: darkgray;
  border: 1px solid black; }

.itemArticle {
  background-color: antiquewhite;
  border: 1px solid black; }

.editArticleFidelite {
  margin-right: 15px; }

.validArticleFidelite {
  color: mediumseagreen;
  cursor: pointer; }

.displayArticleNameFidelite {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; }

.ui-autocomplete {
  max-height: 300px;
  overflow: auto;
  text-align: left;
  padding: 0px;
  font-size: 1.4rem;
  font-weight: 100;
  z-index: 30000 !important; }

.ui-menu-item {
  border: none !important;
  background-color: white;
  color: #000 !important;
  min-height: 30px;
  padding: 8px 12px;
  cursor: pointer;
  display: flex;
  align-items: center; }
  .ui-menu-item:hover {
    background-color: #e7edf3 !important; }
  .ui-menu-item .profile_img {
    margin-right: 10px; }
    .ui-menu-item .profile_img img {
      border-radius: 5px;
      width: 30px;
      height: 30px;
      object-fit: cover; }
  .ui-menu-item .ui-state-active {
    background-color: transparent !important;
    border: none !important;
    color: inherit !important; }
  .ui-menu-item .ui-widget-content {
    border: none !important;
    background: #ffffff;
    color: #333333;
    border-radius: 10px;
    margin-top: 5px; }
  .ui-menu-item .ui-menu-item.autocompleteFamille {
    color: white !important;
    min-height: 40px;
    border-bottom: 1px solid white !important;
    padding: 10px 5px; }
  .ui-menu-item .ui-state-focus {
    background: none !important;
    border: 0px solid #000 !important; }
    .ui-menu-item .ui-state-focus:hover {
      background-color: #e7edf3 !important; }
  .ui-menu-item .parentNewUser {
    background-color: transparent;
    z-index: 4; }
    .ui-menu-item .parentNewUser:hover {
      cursor: pointer; }
      .ui-menu-item .parentNewUser:hover .newUser {
        transition: all 0.5s;
        opacity: 0.9; }
  .ui-menu-item .newUser {
    display: block;
    width: calc(100% - 20px);
    height: calc(100% - 10px);
    z-index: 2;
    position: absolute;
    line-height: 178px;
    opacity: 0.6;
    background-color: white;
    cursor: pointer; }
  .ui-menu-item .addNewUser {
    opacity: 1;
    z-index: 3;
    position: absolute;
    line-height: 178px !important;
    left: calc(50% - 7px);
    color: #1aa2d3;
    cursor: pointer; }
  .ui-menu-item .parameters_bloc {
    margin-top: 0px;
    margin-left: -15px;
    padding-top: 30px; }
    @media (max-width: 991px) {
      .ui-menu-item .parameters_bloc {
        margin-left: 5px;
        width: calc(100% - 10px);
        padding: 10px 5px; } }
  .ui-menu-item .ins-settings-bloc {
    margin: 10px 0px;
    padding: 20px;
    display: inline-block;
    width: 100%;
    background-color: var(--blue-light);
    border-radius: 15px; }
    .ui-menu-item .ins-settings-bloc .form-control {
      background-color: white; }

.ui-menu-divider {
  border: 0.5px solid var(--blue-light) !important; }

.ui-widget.ui-widget-content {
  border: none !important;
  border-radius: 10px; }

#activeFacturation {
  position: absolute;
  bottom: calc(50% - 12px);
  right: 0; }

.ligne_all_clients {
  height: 30px;
  line-height: 30px;
  white-space: nowrap; }

.ligneClient {
  padding: 8px 0px;
  border-top: 1px solid var(--blue-medium);
  display: flex;
  align-items: center; }
  @media (min-width: 768px) {
    .ligneClient {
      margin-right: 0px; } }
  .ligneClient:first-of-type {
    border-top: 1px solid white !important; }
  .ligneClient:hover {
    background-color: #F6F6F6;
    cursor: pointer;
    border-radius: 5px;
    border-top: 1px solid #F6F6F6; }
    .ligneClient:hover + .ligneClient {
      border-top: 1px solid #fff; }

.clientEvent {
  color: black; }

.lastEventNotSeen {
  color: var(--blue-selected) !important; }

.img_preview span {
  width: 50px;
  height: 50px;
  border-radius: 7px;
  display: block;
  background-position: center center;
  object-fit: cover;
  display: block;
  vertical-align: middle;
  line-height: 50px;
  text-align: center;
  color: white;
  font-size: 2.2rem; }

.img_preview_customer {
  height: 80px;
  width: 80px;
  text-align: center;
  display: block;
  background-position: center center;
  object-fit: cover;
  display: block;
  vertical-align: middle;
  line-height: 80px;
  text-align: center;
  font-weight: normal;
  color: white;
  font-size: 2.8rem; }
  .img_preview_customer .imgArticle_preview {
    display: inline-block;
    height: 80px;
    width: 80px;
    border-radius: 10px;
    object-fit: cover;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #98c1e1;
    position: relative; }

.ligneClient.client_selected {
  background-color: var(--selected-opacity);
  border-radius: 5px;
  border-top: 1px solid transparent !important; }
  .ligneClient.client_selected + .ligneClient {
    border-top: 1px solid #fff; }

.solde_client {
  padding-left: 0px;
  padding-right: 10px;
  font-size: 0.90em; }

.init_client {
  width: 50px;
  height: 50px;
  background-color: #ccc;
  position: absolute;
  left: 10px;
  top: calc(50% - 25px);
  border-radius: 25px;
  color: white;
  line-height: 48px;
  letter-spacing: 3px;
  padding-left: 3px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 100;
  border: 1px solid #bbb; }

div#listClients {
  height: calc(100vh - 80px); }

.ticketSansNom {
  min-height: 71px;
  padding-top: 25px; }

.msg-bubble-container-right {
  text-align: right; }

.msg-bubble-container-left {
  text-align: left; }

.msg-bubble-body {
  display: inline-block;
  max-width: 500px;
  color: #666;
  text-align: right;
  margin-bottom: 10px;
  font-size: 1.2rem; }

.msg-bubble-me {
  text-align: right; }
  .msg-bubble-me .msg-bubble-container {
    text-align: left; }

.msg-bubble-container-right .msg-bubble {
  background-color: var(--blue-selected);
  color: white; }

@media (max-width: 767px) {
  #customerContainer {
    padding: 0px 10px; } }

.customer-header {
  border-bottom: 1px solid #e7edf3;
  position: sticky;
  top: 0px;
  margin-top: -25px;
  padding-top: 25px;
  margin-bottom: 0px;
  z-index: 10;
  background-color: white; }

.msg-bubble-container-left .msg-bubble {
  background-color: var(--blue-light);
  color: black; }

.msg-bubble-new {
  padding: 15px 20px;
  color: white;
  border-radius: 5px;
  background-color: #ddb2a9;
  text-align: left;
  margin-bottom: 3px;
  font-size: 1.5rem; }

.messageNotSent {
  font-style: italic;
  font-weight: bold;
  color: #5f3030; }

.msg-bubble {
  padding: 15px 20px;
  color: white;
  border-radius: 5px;
  text-align: left;
  margin-bottom: 3px;
  font-size: 1.5rem; }
  .msg-bubble .msg-bubble-action {
    display: block;
    text-align: right;
    padding-top: 6px; }
    .msg-bubble .msg-bubble-action span {
      text-decoration: underline;
      cursor: pointer; }
      .msg-bubble .msg-bubble-action span:hover {
        opacity: 0.7; }

.modif_mdp_container .infos_content {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  top: 50%;
  padding: 20px; }

.list_content {
  border-top: 1px solid #666666; }

#Nom_Liste {
  text-transform: uppercase; }

.supplement.control-checkbox {
  margin-left: 0px;
  margin-right: 10px; }

.supplement_row {
  padding-bottom: 10px; }

.overflowModalVisible {
  overflow: visible; }

@media (min-width: 1200px) {
  #FormFournisseur {
    padding-top: 25px; } }

.shop-family-select {
  cursor: pointer;
  transition: color 0.2s ease; }

.shop-family-select :hover {
  color: var(--blue-selected); }

.declinationSelected {
  color: white !important;
  background-color: var(--blue-selected) !important; }

.declinationKey {
  padding-top: 20px; }

.extraProductContainer {
  padding: 3px 0px; }
  .extraProductContainer .btn-primary {
    background-color: transparent;
    border: 1px solid var(--blue-selected);
    color: var(--blue-selected); }

.declinationItemParentStyle {
  width: auto;
  display: inline-block;
  padding: 6px 15px;
  margin: 6px;
  margin-left: 0px;
  margin-top: 0px;
  color: black;
  border-radius: 4px;
  background-color: var(--blue-light); }

.declinationItemDisabled {
  opacity: 0.3; }

.declinationItem:hover {
  cursor: pointer; }

.listFamilies, .sub-family-container {
  /* Optional: show position indicator in red */ }
  @media (min-width: 768px) {
    .listFamilies.reduce-for-scroll, .sub-family-container.reduce-for-scroll {
      margin-bottom: -5px; } }
  @media (min-width: 768px) {
    .listFamilies::-webkit-scrollbar, .sub-family-container::-webkit-scrollbar {
      width: 0;
      /* Remove scrollbar space */
      height: 4px;
      margin: 0px 10px;
      background-color: transparent;
      /* Optional: just make scrollbar invisible */ } }
  @media (min-width: 768px) {
    .listFamilies::-webkit-scrollbar-thumb, .sub-family-container::-webkit-scrollbar-thumb {
      background: transparent;
      max-height: 3px;
      border-radius: 30px;
      padding: 0px 10px;
      min-height: 3px;
      margin-top: -10px;
      border-left: 10px solid white;
      border-right: 10px solid white;
      transition: background-color ease 0.8s; } }
  @media (min-width: 768px) {
    .listFamilies:hover::-webkit-scrollbar-thumb, .sub-family-container:hover::-webkit-scrollbar-thumb {
      background-color: var(--blue-light); }
      .listFamilies:hover::-webkit-scrollbar-thumb:hover, .sub-family-container:hover::-webkit-scrollbar-thumb:hover {
        background-color: var(--blue-medium); } }

#listGroupFamilies {
  padding: 0px 0px 0px;
  width: 100%;
  margin: 0px 0px 0px;
  z-index: 10;
  text-align: left; }

.product_thumbnail_container {
  padding: 10px 0px;
  margin-bottom: 20px;
  color: black; }
  @media (max-width: 767px) {
    .product_thumbnail_container {
      padding: 10px 0px; } }
  .product_thumbnail_container span[data-type="currency"] {
    font-size: 1.6rem;
    font-weight: 500;
    display: inline-block;
    margin-top: 3px; }

.searchResultText {
  padding-top: 15px;
  display: inline-block;
  font-size: 1.8rem;
  padding-left: 5px; }
  .searchResultText a {
    display: inline-block;
    margin-left: 10px;
    font-size: 1.5rem; }

.shopProductThumbnail, .newProductThumbnail {
  width: 100%;
  padding: 0px;
  background-size: cover;
  background-position: center;
  margin-left: 0px;
  margin-bottom: 10px;
  vertical-align: middle;
  margin: auto;
  display: flex !important;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  border-radius: var(--border-radius-medium); }
  .shopProductThumbnail:after, .newProductThumbnail:after {
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--blue-dim);
    opacity: .05;
    pointer-events: none;
    padding-bottom: 100%;
    display: inline-block; }
  .shopProductThumbnail img, .newProductThumbnail img {
    align-self: center;
    display: inline-block;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .shopProductThumbnail .btn-edit-mini, .newProductThumbnail .btn-edit-mini {
    right: 10px;
    bottom: 10px; }

.shopProductThumbnail.longThumbnail:after {
  padding-bottom: 125%; }

.newProductThumbnail:after {
  padding-bottom: 90%;
  display: inline-block; }

.medium-image-preview {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  overflow: hidden; }

#shopProductDetails .img-preview-container {
  border-radius: 7px; }

.askforaccess-container {
  color: #9ca1a7;
  border-radius: 7px;
  display: inline-block;
  width: 100%;
  padding: 10px;
  white-space: normal; }

.askAccessBakgroundGrey .askforaccess-container {
  background-color: white;
  border: 1px solid var(--blue-dark);
  color: black;
  padding: 15px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start; }

.askforaccess-container-link {
  color: #eb4d11; }
  .askforaccess-container-link:hover {
    color: #D90000; }

#shopProductDetails .action-button-container {
  text-align: left; }

.suggestion_container {
  margin: 0px;
  margin-top: 80px;
  display: inline-block;
  width: 100%;
  max-width: 1510px;
  padding: 0px 30px; }
  .suggestion_container .titlesuggestion {
    font-size: 1.8rem; }
  @media (max-width: 991px) {
    .suggestion_container {
      padding: 0px 15px; } }
  .suggestion_container .lds-ring {
    margin-left: 10px; }
  @media (max-width: 767px) {
    .suggestion_container {
      display: block; } }
  .suggestion_container #suggestion_items_container {
    display: inline-grid;
    grid-template-columns: repeat(5, 1fr);
    row-gap: 30px;
    column-gap: 30px;
    width: 100%; }
    @media (max-width: 1199px) {
      .suggestion_container #suggestion_items_container {
        grid-template-columns: repeat(4, 1fr); } }
    @media (max-width: 991px) {
      .suggestion_container #suggestion_items_container {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 15px; } }
    @media (max-width: 767px) {
      .suggestion_container #suggestion_items_container {
        grid-template-columns: repeat(2, 1fr); } }

.modal-body .suggestion_container .product_thumbnail_container .shopProductThumbnail {
  margin: 0px; }

.modal-body .suggestion_container .product_thumbnail_container {
  margin: 0px;
  margin-bottom: 10px; }

#shopProductDetails .suggestion_container {
  padding: 0px 5px;
  margin-right: 0px; }
  #shopProductDetails .suggestion_container .product_thumbnail_container {
    padding-left: 10px; }
    #shopProductDetails .suggestion_container .product_thumbnail_container.shopProductThumbnail {
      margin-bottom: 0px;
      height: calc(100vw / 1.8); }

.product_thumbnail {
  text-decoration: none; }

.product_thumbnail:hover {
  cursor: pointer;
  text-decoration: underline; }

#miniatureImages {
  padding: 0px;
  text-align: left; }
  @media (max-width: 767px) {
    #miniatureImages {
      padding: 0px 0px 10px; } }

#shopProductDetails #miniatureImages {
  padding: 0px 0px; }

#filter_container {
  width: 100%;
  height: auto;
  overflow: hidden;
  max-width: 440px; }

#webshoplinkpreview {
  padding-top: 20px;
  max-width: 600px;
  display: flex;
  align-items: center; }
  @media (max-width: 767px) {
    #webshoplinkpreview {
      padding-bottom: 20px; } }

.description_container p {
  margin: 0px; }
.description_container label {
  font-weight: normal;
  color: black;
  margin: 0px;
  margin-top: 5px;
  text-decoration: underline;
  font-weight: 500; }
.description_container strong {
  font-weight: 600; }

.description_label {
  line-height: 2.5rem;
  white-space: pre-line; }

.description_container input {
  opacity: 0;
  position: absolute;
  pointer-events: none;
  width: auto; }
.description_container input:focus ~ label {
  outline: -webkit-focus-ring-color auto 5px; }
.description_container input:checked + div, .description_container input:checked + p {
  -webkit-line-clamp: unset; }
.description_container input:checked ~ label {
  display: none; }

.miniature_thumbnail {
  height: 60px;
  width: 60px;
  margin: 0 8px;
  background-position: center center;
  background-size: cover;
  display: inline-block;
  margin: 3px 6px;
  margin-left: 0px;
  opacity: 0.6;
  border-radius: 4px; }
  .miniature_thumbnail:hover {
    opacity: 1;
    cursor: pointer; }

.selected_miniature {
  opacity: 1; }

.fas.fa-star.rated {
  cursor: pointer;
  color: #eb4d11; }
  .fas.fa-star.rated.hovered {
    color: #eb4d11; }
  .fas.fa-star.rated.unhovered {
    color: var(--blue-medium); }

.fas.fa-star.unrated {
  cursor: pointer;
  color: var(--blue-medium); }
  .fas.fa-star.unrated.hovered {
    color: #eb4d11; }
  .fas.fa-star.unrated.unhovered {
    color: var(--blue-medium); }

.review_content {
  display: flex;
  flex-direction: column; }

.selectedTypePromotionalCode {
  background-color: green; }

.darkLink {
  color: var(--link-color); }

.darkLink:hover, .darkLink:active, .darkLink:focus {
  text-decoration: underline;
  color: var(--link-color) !important; }

.shop-header {
  padding-top: 20px;
  padding-bottom: 10px;
  font-size: 16px;
  display: inline-flex;
  width: 100%;
  align-items: center;
  justify-content: flex-end; }
  @media (max-width: 767px) {
    .shop-header {
      padding-bottom: 0px; } }
  .shop-header .shop-header-return {
    color: black; }
    .shop-header .shop-header-return:hover {
      text-decoration: underline; }
  .shop-header i {
    font-size: 1.5rem;
    margin: 0px 6px;
    color: var(--blue-dark); }
  @media (max-width: 767px) {
    .shop-header {
      display: inline-block; }
      .shop-header .row {
        width: 100%; }
      .shop-header .search-shop-container {
        max-width: unset;
        width: 100%; }
      .shop-header .d-inline-block {
        padding-left: 0px !important;
        margin-bottom: 10px !important; }
      .shop-header .margin-right-6.d-inline-block {
        padding-left: 0px !important;
        margin-bottom: 0px !important; }
      .shop-header .link-tri {
        margin-bottom: 10px; } }

.shop-title-text {
  max-width: 520px;
  display: inline-block;
  font-size: 1.6rem; }

.shop-family-select {
  padding: 6px;
  display: inline-block;
  margin: 0px 5px; }
  @media (max-width: 767px) {
    .shop-family-select {
      padding: 6px 10px; } }
  .shop-family-select .btn-edit-mini {
    display: none; }
  .shop-family-select:hover {
    background-color: var(--blue-light);
    cursor: pointer;
    color: var(--blue-selected); }
    .shop-family-select:hover .btn-edit-mini {
      display: block; }

.btn-edit-mini {
  font-size: 1.2rem; }

.familyImage .btn-edit-mini {
  top: 19px;
  right: 10px; }

#listProducts {
  vertical-align: top;
  padding: 0px 0px 30px; }
  @media (min-width: 992px) {
    #listProducts {
      width: 100%;
      padding: 0px 0px; } }

#shopProductThumbnailsLoading {
  bottom: 0px;
  padding-top: 20px; }
  #shopProductThumbnailsLoading .lds-ring {
    margin-bottom: -10px;
    margin-left: 10px; }
    @media (max-width: 767px) {
      #shopProductThumbnailsLoading .lds-ring {
        margin-bottom: 5px; } }

#no_product_thumbnails {
  display: none; }

#shopProductThumbnailsContainer {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  row-gap: 30px;
  column-gap: 30px; }
  #shopProductThumbnailsContainer.grid-5 {
    grid-template-columns: repeat(5, 1fr); }
  @media (max-width: 1199px) {
    #shopProductThumbnailsContainer {
      grid-template-columns: repeat(3, 1fr); }
      #shopProductThumbnailsContainer.grid-5 {
        grid-template-columns: repeat(4, 1fr); } }
  @media (max-width: 991px) {
    #shopProductThumbnailsContainer {
      grid-template-columns: repeat(2, 1fr);
      column-gap: 15px; }
      #shopProductThumbnailsContainer.grid-5 {
        grid-template-columns: repeat(3, 1fr); } }
  @media (max-width: 767px) {
    #shopProductThumbnailsContainer {
      grid-template-columns: repeat(2, 1fr); } }

#basket_qty_btn:empty + .action-button-container {
  display: none !important; }

.productTotalQty:empty {
  display: none !important; }

.search-shop {
  padding: 0px 5px;
  padding-top: 15px;
  margin-top: 0px;
  padding-left: 10px; }
  @media (min-width: 992px) {
    .search-shop {
      float: right;
      text-align: right;
      max-width: 760px;
      margin-right: 10px; } }
  @media (max-width: 767px) {
    .search-shop {
      margin-top: 10px; } }

#loadingProducts {
  display: inline-block;
  width: 100%;
  padding: 50px;
  text-align: center; }

#shop_container {
  margin-top: 0px;
  padding: 0px 30px 30px;
  position: relative;
  border-radius: 0px;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media (max-width: 991px) {
    #shop_container {
      padding: 0px 15px 30px; } }
  #shop_container .hidden-header-infos {
    display: none; }
  #shop_container .sc2 {
    display: inline-block;
    max-width: 1420px;
    width: 100%;
    padding-top: 30px; }

.search-shop-container {
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  color: #9ca1a7; }
  .search-shop-container input {
    min-height: 0px;
    padding: 10px 20px;
    height: auto;
    width: 100%; }

.search-shop-btn {
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  position: absolute;
  right: 0px;
  height: 100%;
  padding-right: 5px; }
  .search-shop-btn .btn-primary {
    padding: 5px;
    background-color: transparent !important;
    height: 100%;
    display: inline-flex;
    align-items: center;
    color: #9ca1a7; }

.mediumImageContainer {
  width: 100%;
  overflow: hidden; }

#mediumImages img {
  object-fit: contain; }

.modal-body #shopProductDetailsContainer {
  width: 100%;
  max-width: 1140px; }

.wi55 {
  width: 50%;
  float: left;
  margin: 0px; }
  @media (min-width: 768px) {
    .wi55 {
      position: sticky;
      top: 75px; } }
  @media (max-width: 767px) {
    .wi55 {
      width: 100%; } }

#shopProductDetailsContainer {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-content: center;
  align-items: center;
  padding-bottom: 30px; }
  @media (min-width: 768px) {
    #shopProductDetailsContainer {
      padding-top: 40px; } }

.returnToFamily .darkLink {
  font-size: 1.3rem;
  color: var(--link-color); }

.deliveryAndReturn {
  line-height: 1.9;
  width: 100%;
  display: inline-flex;
  align-content: center;
  align-items: start;
  flex-direction: column; }

.full_product_name {
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.8rem; }

.modal-body #shopProductDetailsContainer {
  max-width: 1140px; }

#shopProductForm {
  width: 100%;
  max-width: 1500px; }

#shopProductForm .action-button-container {
  text-align: center; }
  @media (min-width: 768px) {
    #shopProductForm .action-button-container {
      text-align: left; } }

.wi45 {
  width: 50%;
  float: left;
  padding: 10px 0px 0px 40px;
  margin: 0px; }
  @media (max-width: 767px) {
    .wi45 {
      width: 100%;
      padding: 0px; }
      .wi45 .product_name {
        margin-top: 10px; } }

.modal-body .wi45 {
  padding: 5px 20px 10px; }
  @media (max-width: 767px) {
    .modal-body .wi45 {
      padding: 0px 5px; } }

#btn-minus, #btn-plus {
  padding: 0px;
  border-radius: calc(var(--border-radius-little) - 1px);
  font-size: 1.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px; }

.share-product {
  padding-top: 6px;
  display: inline-block;
  width: 100%;
  font-size: 1.3rem;
  padding-left: 1px; }
  .share-product .fa-brands, .share-product .fa-light, .share-product .fak {
    margin-right: 15px; }
  .share-product .fa-tradastra-plein {
    color: #75bbd9; }
  .share-product .fa-facebook {
    color: #3b5998; }
    .share-product .fa-facebook:hover {
      color: #5c7bbc; }
  .share-product .fa-pinterest {
    color: #ca2128; }
    .share-product .fa-pinterest:hover {
      color: #f1575e; }
  .share-product .fa-x-twitter {
    color: #000; }
    .share-product .fa-x-twitter:hover {
      color: #333; }
  .share-product .fa-external-link {
    color: steelblue; }
    .share-product .fa-external-link:hover {
      color: #76a7d1; }

.no-shop-item {
  padding: 15px;
  position: absolute;
  background-color: white;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  top: 5px;
  left: 5px;
  z-index: 2; }

.link-tri {
  font-size: 1.5rem;
  color: steelblue; }

#filter_button_container {
  left: 0px;
  width: 100%;
  padding: 0px 0px;
  display: inline-block;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, white 15%, white 80%, rgba(255, 255, 255, 0) 100%); }

.shopSpecificationContainer {
  margin-bottom: 15px;
  box-shadow: none;
  margin-left: 0px;
  padding-left: 0px;
  border-radius: 5px;
  padding: 10px 15px;
  background-color: var(--blue-light); }

.sub-family-shop {
  cursor: pointer; }
  .sub-family-shop:hover {
    text-decoration: underline; }

#filtersContainer {
  padding-bottom: 15px;
  width: 100%;
  float: right;
  text-align: left; }
  #filtersContainer:empty {
    display: none; }

#listGroupSubFamilies {
  padding-top: 20px; }

.institution-thumbnail {
  border: 1px solid var(--blue-medium);
  border-radius: 7px;
  padding: 10px;
  text-align: left;
  position: relative;
  margin-bottom: 5px; }
  .institution-thumbnail i {
    color: var(--blue-selected);
    position: absolute;
    right: 7px;
    top: 8px;
    display: none; }
  .institution-thumbnail:hover {
    background-color: var(--blue-light);
    cursor: pointer; }
  .institution-thumbnail.selected {
    border-color: var(--blue-selected);
    background-color: var(--blue-light);
    color: var(--blue-selected); }
    .institution-thumbnail.selected i {
      display: block; }
  .institution-thumbnail img {
    width: 60px;
    height: 60px;
    border-radius: 7px;
    margin-right: 6px; }

#payment_container {
  margin-top: 0px;
  padding-top: 20px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 30px; }
  @media (max-width: 767px) {
    #payment_container {
      padding-left: 0px;
      padding-right: 0px;
      margin-top: 0px;
      padding-top: 20px;
      padding-bottom: 20px; } }

.delivery-hr {
  display: none; }

.no-delivery-option {
  display: none; }

.delivery-option {
  display: block; }

@media (max-width: 767px) {
  .basket-panel-right {
    padding: 0px; } }
@media (min-width: 768px) {
  .basket-panel-right {
    border-right: 1px solid var(--blue-medium); } }

#add-to-basket {
  display: flex;
  align-items: center; }
  @media (max-width: 767px) {
    #add-to-basket {
      flex-direction: column; }
      #add-to-basket .btn-basket-add {
        height: 54px !important;
        margin-top: 20px; } }

.order-resume {
  padding-top: 10px;
  margin: 0px 0px; }
  @media (min-width: 768px) {
    .order-resume {
      padding: 0px 15px 15px; } }

#deliveryModeContainerValue:empty + .no-delivery-option {
  display: inline-block; }

.addressThumbnail {
  cursor: pointer;
  border-radius: 10px;
  padding: 15px;
  text-align: left;
  margin-bottom: 0px;
  width: 100%;
  display: inline-block;
  background-color: var(--blue-light); }
  .addressThumbnail:hover {
    background-color: var(--blue-medium); }
  .addressThumbnail.selected {
    background-color: var(--blue-light);
    cursor: default;
    color: var(--blue-selected); }

.delivery-mode-thumbnail {
  border: 0px solid var(--blue-medium);
  border-radius: 10px;
  padding: 10px 15px;
  position: relative;
  margin-bottom: 5px;
  background-color: var(--blue-light);
  display: flex;
  align-items: center;
  width: 100%;
  border-radius: 10px; }
  .delivery-mode-thumbnail i {
    margin-right: 15px; }
  .delivery-mode-thumbnail span.fas {
    color: var(--blue-light); }
  .delivery-mode-thumbnail:hover {
    background-color: var(--blue-medium);
    cursor: pointer; }
  .delivery-mode-thumbnail .styled-checkbox {
    pointer-events: none; }
  .delivery-mode-thumbnail.selected {
    background-color: var(--blue-light);
    border: 0px solid var(--blue-selected);
    color: var(--blue-selected); }
    .delivery-mode-thumbnail.selected i {
      color: var(--blue-selected); }
    .delivery-mode-thumbnail.selected span.fas {
      color: var(--blue-selected); }
    .delivery-mode-thumbnail.selected:hover {
      background-color: var(--blue-light);
      cursor: default; }
      .delivery-mode-thumbnail.selected:hover a {
        cursor: pointer; }

#promotionalCodeList:empty + .no-item {
  display: block; }

.promotionalCodeThumbnail {
  background-color: var(--blue-light);
  border-radius: 5px;
  padding: 0px 10px;
  cursor: pointer;
  margin-bottom: 5px; }
  .promotionalCodeThumbnail:hover {
    background-color: var(--blue-light); }

.promotionalCodeCreate {
  max-width: 450px; }

.order-sale-thumbnail {
  padding: 0px;
  cursor: pointer;
  display: table;
  width: 100%;
  text-align: left; }
  .order-sale-thumbnail div {
    display: table-cell;
    vertical-align: middle;
    float: unset !important; }

.orderDetailsContent {
  width: calc(100vw - 60px);
  max-width: 600px;
  padding-top: 15px; }

@media (min-width: 768px) {
  #productGroupPurchaseForm #reviews_container.productreviewcontainer {
    margin: 0px; }

  #reviews_container {
    padding: 0px 10px;
    max-width: 550px; }

  .wi45 #reviews_container {
    padding: 0px; }

  #shopProductDetailsForm .suggestion_container {
    margin-top: 0px; }
    #shopProductDetailsForm .suggestion_container .titlesuggestion {
      font-size: 1.8rem; } }
.no_payment_mode {
  color: #666;
  font-weight: normal;
  padding: 10px; }

#paymentMethodManagerFormMessage {
  width: 100%;
  padding: 10px;
  margin-bottom: 10px;
  margin-top: 0px;
  text-align: left;
  border-radius: 4px;
  background-color: #d7edff;
  border: 1px solid #aedaff;
  color: black; }
  #paymentMethodManagerFormMessage:empty {
    display: none !important; }

#shopProductValidationErrorMessage {
  color: #eb4d11;
  display: block;
  padding-bottom: 15px; }

#shopProductDetailsForm hr {
  margin-top: 10px;
  margin-bottom: 10px; }

#shopProductDetailsForm {
  width: 100%;
  max-width: 1510px;
  padding: 0px 30px;
  padding-top: 30px; }
  @media (max-width: 991px) {
    #shopProductDetailsForm {
      padding: 0px 15px;
      padding-top: 30px; } }

@media (max-width: 767px) {
  .modal-body #shopProductDetailsForm {
    padding: 0px 0px; } }

.editFamily {
  position: absolute;
  bottom: 5px;
  right: 5px; }

#logo-login {
  height: 40px;
  margin-bottom: 30px; }

#shop_body {
  display: inline-flex;
  flex-direction: row;
  width: 100%; }
  @media (max-width: 767px) {
    #shop_body {
      flex-direction: column; } }
  #shop_body #shop_lateral {
    width: 100%;
    max-width: 260px;
    padding-right: 30px;
    padding-top: 42px;
    padding-left: 0px; }
    @media (max-width: 991px) {
      #shop_body #shop_lateral {
        padding-right: 15px; } }
    @media (max-width: 767px) {
      #shop_body #shop_lateral {
        max-width: unset;
        padding-right: 0px; } }
  #shop_body #shopProductThumbnailsContainer {
    width: 100%; }
  #shop_body .select-family {
    padding: 10px 20px;
    border: 1px solid #eb4d11;
    color: #eb4d11;
    font-weight: 600;
    border-radius: 5px;
    margin-bottom: 20px; }
    @media (max-width: 767px) {
      #shop_body .select-family {
        border: 1px solid var(--blue-selected);
        color: var(--blue-selected); } }
    #shop_body .select-family i {
      float: right;
      margin-top: 3px; }

#desktop-preview {
  pointer-events: none;
  padding: 20px 15px;
  display: inline-block;
  max-width: 585px;
  width: 100%;
  background-color: black;
  border-radius: 15px;
  overflow: hidden;
  position: relative; }
  #desktop-preview #captureResultD {
    position: absolute;
    overflow: hidden;
    border-radius: 4px;
    width: calc(200% - 60px);
    height: calc(200% - 80px);
    transform: scale(0.5);
    transform-origin: top left;
    background: var(--background-color); }
  #desktop-preview:after {
    display: inline-block;
    content: '';
    padding-bottom: 62%; }
  @media (max-width: 767px) {
    #desktop-preview .insCont {
      transform: scale(0.25);
      width: 400%;
      transform-origin: top left;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-content: center;
      align-items: center; }
    #desktop-preview #captureResultD {
      width: calc(300% - 80px);
      height: calc(300% - 110px);
      transform: scale(0.33); } }

#phone-preview {
  pointer-events: none;
  padding: 17px 8px;
  margin-left: -60px;
  z-index: 20;
  position: relative;
  display: inline-block;
  max-width: 127px;
  width: 23%;
  background-color: black;
  border-radius: 12px;
  overflow: hidden;
  align-self: flex-end; }
  @media (max-width: 767px) {
    #phone-preview {
      display: none; } }
  #phone-preview:after {
    display: inline-block;
    content: '';
    padding-bottom: 190%; }

.customize-style-line {
  align-items: center;
  padding: 20px 0px 10px; }

.customize-style-column {
  display: flex;
  align-items: center;
  background: var(--blue-light);
  border-radius: var(--border-radius-little);
  padding: 10px 15px; }
  .customize-style-column .csc-text {
    flex: 1; }

#inventory_content {
  min-height: calc(100vh - 55px); }

.inventory_container {
  padding-top: 30px !important; }

.transfer_wrap .transfer_wrap_container {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 10px 0px;
  text-align: left; }
  .transfer_wrap .transfer_wrap_container .cb_container {
    display: table-cell;
    padding-left: 0px; }
.transfer_wrap .img_preview {
  display: table-cell;
  vertical-align: middle;
  padding: 0;
  width: 50px; }
.transfer_wrap .qty_preview {
  display: table-cell;
  vertical-align: middle;
  padding-left: 15px;
  width: 90px; }
.transfer_wrap .amount_preview {
  display: table-cell;
  vertical-align: middle;
  padding-left: 15px;
  width: 160px; }
.transfer_wrap .label_preview {
  display: table-cell;
  vertical-align: middle;
  padding-left: 10px; }
  .transfer_wrap .label_preview span {
    color: #888;
    font-size: 1.2rem; }
.transfer_wrap .delete_view {
  display: table-cell;
  vertical-align: middle;
  width: 30px;
  padding-right: 4px; }
.transfer_wrap .form-control {
  min-height: 38px; }

.panelTransferItem {
  width: 100%; }

.panelTransferItem .blue-light-border-bottom:last-child {
  border-bottom: none !important; }
  .panelTransferItem .blue-light-border-bottom:last-child .transfer_wrap_container {
    border-radius: 0px 0px 7px 7px !important; }

.wait_transfer_wrap .transfer_wrap_container {
  display: table;
  width: 100%;
  padding: 12px 0px;
  cursor: pointer; }
  .wait_transfer_wrap .transfer_wrap_container .cb_container {
    display: table-cell;
    padding-left: 0px; }
  .wait_transfer_wrap .transfer_wrap_container.nohover {
    cursor: default; }
    .wait_transfer_wrap .transfer_wrap_container.nohover:hover {
      background-color: white; }
  .wait_transfer_wrap .transfer_wrap_container:hover {
    background-color: #f0f3f6; }
.wait_transfer_wrap .transfer_wrap_inventoryInfo_container {
  display: table;
  width: 100%; }
.wait_transfer_wrap .qty_preview {
  display: table-cell;
  vertical-align: middle;
  padding-right: 10px;
  width: 60px;
  text-align: right; }
.wait_transfer_wrap .label_preview {
  display: table-cell;
  vertical-align: middle;
  padding-left: 5px; }
.wait_transfer_wrap .delivery_preview {
  display: table-cell;
  vertical-align: middle;
  width: 120px;
  padding-right: 4px; }

.checkbox_unitaire_price {
  float: right;
  display: none; }

.label_unitaire_price {
  display: table-cell;
  padding-right: 8px;
  vertical-align: middle;
  line-height: 1.5; }

.panelTransferItem a .wait_transfer_wrap {
  padding: 0px 0px;
  border-bottom: 1px solid var(--blue-medium); }
.panelTransferItem a:last-of-type .wait_transfer_wrap {
  border-bottom: 0px solid; }

.inventoryDraftLine {
  border-top: 1px solid var(--blue-medium);
  padding: 10px 0; }
  .inventoryDraftLine .transfer_wrap_container {
    display: flex;
    align-items: center;
    width: 100%; }

.inventory-draft-picker {
  position: relative;
  flex: 3;
  padding-left: 10px; }

.inventory-draft-cell {
  flex: 1;
  padding: 0 10px;
  color: var(--blue-dark); }
  .inventory-draft-cell.text-right {
    text-align: right; }

.inventory-draft-delete {
  width: 30px;
  text-align: right; }

.ipublication_edit_container select.select_institution {
  outline: 0;
  text-align: center;
  border: none;
  padding: 7px 10px 6px 10px;
  width: 100%;
  border-radius: 0px 7px 0px 0px; }

.ipublication_visibility_container {
  border-bottom: 1px solid #e7edf3; }

.ipublication_textarea {
  padding: 10px 0px;
  resize: none;
  max-height: 400px;
  border: none;
  outline: 0;
  width: calc(100% - 40px);
  border-radius: 7px;
  font-size: 1.5rem;
  color: black; }

.ipublication_visibility_container .disabled_selection {
  background-color: #e7edf3;
  color: gray;
  cursor: not-allowed; }

.liked i {
  color: #ef5858; }

.publications_view_container {
  position: relative;
  z-index: 0;
  margin-top: 0px;
  padding: 0px;
  border-radius: 15px 15px 0px 0px;
  overflow: hidden;
  text-align: center; }
  @media (max-width: 767px) {
    .publications_view_container {
      border-radius: 0px; } }

.public_img_profile {
  width: 50px;
  height: 50px;
  box-shadow: 0px 8px 8px -4px rgba(12, 65, 154, 0.1);
  border-radius: 10px;
  background-color: white;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  float: left;
  margin-right: 10px;
  cursor: pointer; }
  @media (max-width: 767px) {
    .public_img_profile {
      width: 44px;
      height: 44px; } }

.public_name_profile {
  float: left;
  line-height: 1.2;
  padding-top: 5px; }
  @media (max-width: 767px) {
    .public_name_profile {
      padding-top: 3px; } }
  .public_name_profile a {
    color: black;
    font-weight: 600; }

.from-price {
  display: inline-block;
  width: auto;
  float: right;
  color: #666; }
  @media (max-width: 395px) {
    .from-price {
      padding-top: 10px;
      float: left; } }

.public_name_profile a:hover {
  cursor: pointer;
  text-decoration: underline; }

.public_name_profile span {
  font-size: 1.2rem;
  color: #666;
  padding-left: 6px;
  text-decoration: none; }

.ipublication_edit_container {
  padding: 0px;
  box-shadow: none;
  margin-top: 0px;
  margin-bottom: 12px;
  border-radius: 7px !important; }

#create_publication_container {
  height: auto;
  transition: max-height 2s ease;
  overflow: hidden;
  max-height: 0px;
  position: relative;
  overflow: hidden; }

#home_timeline li:not(:last-child) {
  margin-bottom: 20px; }

.ipublication_media_display_container {
  border-radius: 7px;
  overflow: hidden; }

.img-post {
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 0px 0px;
  cursor: pointer;
  vertical-align: middle;
  display: inline-block !important;
  align-self: center;
  object-fit: cover; }

.img-preview-container {
  overflow: hidden;
  position: relative;
  vertical-align: middle;
  margin: auto;
  display: flex !important;
  align-items: center;
  justify-content: center; }
  @media (max-width: 767px) {
    .img-preview-container {
      max-height: 420px; } }

.modal-body .img-preview-container {
  border-radius: 7px; }

.preview-link-container {
  height: auto;
  margin: 10px;
  margin-bottom: 0px;
  padding-top: 10px;
  display: inline-block;
  width: calc(100% - 40px);
  border-top: 1px solid var(--blue-medium); }
  .preview-link-container:empty {
    display: none; }

.preview-link-image {
  height: 215px;
  width: 100%;
  border-radius: 7px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 0px;
  float: left; }

.preview-link-text {
  padding: 0px 20px 15px;
  width: 100%;
  float: left;
  text-align: left;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  padding-top: 10px;
  border-top: 1px solid var(--blue-medium); }

.pm-container {
  position: relative;
  display: inline-block;
  width: 100%; }

.publication_product_text {
  padding: 5px 15px;
  display: inline-flex;
  cursor: pointer;
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 10px;
  color: white;
  position: absolute;
  bottom: 20px;
  left: 20px;
  align-items: center; }
  .publication_product_text .pm-c-2 {
    display: flex;
    flex-direction: column;
    line-height: 1.8rem; }
  .publication_product_text .link-title {
    color: white;
    font-weight: normal;
    font-size: 1.3rem; }
  .publication_product_text .link-domain {
    color: var(--blue-light);
    font-weight: 600;
    font-size: 1.5rem; }

.video-preview {
  height: 280px;
  width: 100%;
  background-color: black; }

.publication_body .video-preview {
  height: 290px;
  margin-top: -28px;
  border-radius: 7px 7px 0px 0px; }
  @media (max-width: 767px) {
    .publication_body .video-preview {
      margin-top: -24px; } }

.link_view_container {
  margin: 0px;
  margin-top: -20px;
  border-bottom: 1px solid var(--blue-light);
  border-radius: 7px 7px 0px 0px;
  width: 100%;
  cursor: pointer; }

.link-title {
  font-weight: bold;
  color: black; }

.link-domain {
  color: var(--blue-dark);
  font-size: 1.4rem; }

.img-link-container {
  height: 290px;
  overflow: hidden;
  display: flex !important;
  align-items: center;
  justify-content: center; }

.slick-dots {
  display: none !important; }

#home_timeline {
  list-style: none;
  list-style-type: none;
  margin: 0 auto;
  padding: 20px;
  padding-bottom: 10px; }

.adminview #timeline .infos_content {
  border: 1px solid var(--blue-light); }

#timeline, #home_timeline {
  margin: 0px 0px 0px;
  padding: 0px 0px;
  width: 100%;
  max-width: 1200px;
  text-align: center; }
  #timeline .btn-default, #home_timeline .btn-default {
    margin-bottom: 15px; }
  #timeline .wall .publicationView:nth-child(2), #home_timeline .wall .publicationView:nth-child(2) {
    margin-top: 30px; }
  @media (min-width: 768px) {
    #timeline .wall .publicationView:nth-child(3), #home_timeline .wall .publicationView:nth-child(3) {
      margin-top: 30px; } }
  #timeline .infos_content, #home_timeline .infos_content {
    margin-bottom: 30px;
    box-shadow: none !important;
    border: 1px solid var(--blue-light); }
    @media (max-width: 767px) {
      #timeline .infos_content, #home_timeline .infos_content {
        border: 0px solid;
        border-radius: 0px; } }
  #timeline .publications_view_container, #home_timeline .publications_view_container {
    margin-top: 0px; }
  #timeline .publication_body, #home_timeline .publication_body {
    margin-top: -28px; }
    @media (max-width: 767px) {
      #timeline .publication_body, #home_timeline .publication_body {
        margin-top: -24px;
        padding-bottom: 10px;
        border-bottom: 1px solid var(--blue-light);
        margin-bottom: 30px; } }
  #timeline .description_container, #home_timeline .description_container {
    padding: 10px 15px 3px; }
  #timeline.publications_show_header .infos_content, #home_timeline.publications_show_header .infos_content {
    margin-bottom: 20px; }
  #timeline.publications_show_header .publication_header, #home_timeline.publications_show_header .publication_header {
    display: inline-block;
    width: 100%; }
  #timeline.publications_show_header .publications_view_container, #home_timeline.publications_show_header .publications_view_container {
    margin-top: 0px; }
  #timeline.publications_show_header .publication_body, #home_timeline.publications_show_header .publication_body {
    margin-top: -28px; }
    @media (max-width: 767px) {
      #timeline.publications_show_header .publication_body, #home_timeline.publications_show_header .publication_body {
        margin-top: -24px; } }
  #timeline.publications_show_header .description_container, #home_timeline.publications_show_header .description_container {
    padding-top: 10px !important;
    padding-bottom: 5px !important; }

.publish-action-buttons {
  padding: 10px 15px;
  padding-bottom: 15px;
  margin-bottom: 15px;
  margin-bottom: 0px;
  display: inline-block;
  width: 100%; }

#publicationsContainer, #specialOffersContainer {
  list-style: none;
  list-style-type: none;
  margin: 0px; }

#publicationsContainer, #specialOffersContainer:after {
  content: '';
  display: block;
  clear: both; }

#publicationsContainer li, #specialOffersContainer li {
  float: left;
  width: 50%;
  padding: 10px 20px; }
  @media (max-width: 991px) {
    #publicationsContainer li, #specialOffersContainer li {
      padding: 10px 15px; } }
  @media (max-width: 767px) {
    #publicationsContainer li, #specialOffersContainer li {
      width: 100%;
      overflow: hidden;
      padding: 0px; } }

.publicationTopView {
  position: relative !important; }

.publish_reaction {
  display: inline-block;
  width: auto; }

a.publish_reaction {
  color: black; }

.publish_reaction i {
  font-size: 1.6rem;
  margin-right: 3px;
  cursor: pointer; }
  .publish_reaction i:hover {
    color: var(--blue-selected); }

.reaction_comment {
  margin: 0 30px; }

.reaction_like i:hover {
  color: #ef5858; }

.noPublication {
  display: inline-block;
  width: 100% !important;
  padding: 0px 0px;
  margin-top: 0px !important;
  color: black; }
  .noPublication i {
    font-size: 40px;
    color: #eb4d11;
    margin: 0px 10px; }

#publication-media-preview {
  height: 280px;
  border-radius: 10px;
  overflow: hidden;
  background-color: var(--blue-light);
  margin-bottom: 10px;
  position: relative; }

.stats-options {
  float: right;
  margin-right: 5px;
  margin-top: 10px;
  position: relative;
  margin-top: 3px; }
  .stats-options .fas {
    padding: 6px; }
  .stats-options .edit-publication-box {
    padding: 10px 0px;
    text-align: left;
    margin-top: -20px;
    font-weight: normal; }
  .stats-options .action-item {
    padding: 10px 20px;
    padding-right: 20px;
    white-space: nowrap;
    font-size: 1.5rem; }
    .stats-options .action-item i {
      width: 25px; }

.publication-options {
  float: right;
  margin-left: 10px;
  position: relative;
  margin-top: 0px; }
  .publication-options .fas {
    padding: 0px;
    font-size: 1.6rem; }
  .publication-options .edit-publication-box {
    padding: 10px 0px;
    text-align: left;
    font-weight: normal;
    top: unset;
    bottom: 30px; }
  .publication-options b {
    font-weight: normal;
    font-size: 1.5rem; }
  .publication-options .action-item {
    padding: 10px 15px;
    padding-right: 20px;
    white-space: nowrap;
    font-size: 1.5rem; }
    .publication-options .action-item i {
      width: 25px; }

.edit-publication-box:before {
  right: 9px;
  left: unset;
  top: unset;
  bottom: -7px;
  border-bottom: none;
  border-top: 7px solid #fff; }

.edit-publication-box:after {
  right: 10px;
  left: unset;
  top: unset;
  bottom: -6px;
  border-bottom: none;
  border-top: 6px solid #fff; }

.edit-publication-box.top:before {
  bottom: unset;
  top: -7px;
  border-top: none;
  border-bottom: 7px solid #fff; }

.edit-publication-box.top:after {
  bottom: unset;
  top: -6px;
  border-top: none;
  border-bottom: 6px solid #fff; }

.like_text {
  padding: 10px 25px 40px 25px; }

.publication_header {
  padding-left: 25px;
  position: relative;
  z-index: 1;
  display: inline-block;
  width: 100%; }

.publication_body {
  margin-top: -28px;
  padding: 0px;
  text-align: left;
  position: relative;
  z-index: 0; }
  .publication_body .timeElapsed {
    font-size: 1.35rem;
    color: #9ca1a7;
    float: right; }

.edit-publication-box, .edit-review-box {
  left: unset;
  right: -8px; }
  .edit-publication-box b, .edit-review-box b {
    padding: 10px 15px;
    display: inline-block; }

.edit-comment-box {
  left: unset;
  right: 6px;
  top: 65px;
  font-size: 1.5rem; }
  .edit-comment-box b {
    padding: 10px 15px;
    display: inline-block; }

.tri-box {
  left: 0px;
  top: 65px;
  font-size: 1.5rem; }
  .tri-box b {
    padding: 10px 15px;
    display: inline-block; }
  .tri-box:before {
    left: 9px;
    right: unset; }
  .tri-box:after {
    left: 10px;
    right: unset; }

.edit-publication-box:before, .edit-review-box:before, .edit-comment-box:before {
  right: 9px;
  left: unset; }

.edit-publication-box:after, .edit-review-box:after, .edit-comment-box:after {
  right: 10px;
  left: unset; }

#ipublication_product_btn, #ipublication_media_div {
  border-radius: 4px;
  float: left; }
  #ipublication_product_btn i, #ipublication_media_div i {
    margin-right: 6px; }

.auto_grow_input {
  resize: none;
  border: none;
  outline: 0;
  border: 1px solid var(--blue-medium);
  background-color: white;
  padding: 10px;
  height: auto;
  border-radius: 4px; }

.commentAuthorName span {
  font-size: 1.2rem;
  color: #666;
  padding-left: 6px;
  text-decoration: none; }

.comment-author-container {
  background-color: var(--blue-light);
  border-radius: 4px;
  padding: 5px 10px;
  margin-top: 6px;
  position: relative; }

.show_more_comments {
  padding-left: 20px;
  padding-top: 10px;
  display: inline-block;
  width: 100%; }

.pcomment {
  padding-right: 70px; }
  @media (max-width: 767px) {
    .pcomment {
      padding-right: 40px; } }

.tooltip:not(.shown) {
  display: none; }

.publication-filtre-toggle {
  background-color: var(--blue-selected);
  padding: 0px 5px;
  border-radius: 5px;
  display: inline-block; }

.publication-filtre-toggle [name="publication"] {
  display: none; }

.publication-filtre-toggle input[type="radio"] + label {
  background-color: var(--blue-selected);
  margin: 5px 0px;
  color: white;
  padding: 5px 10px;
  border-radius: 5px;
  cursor: pointer;
  user-select: none; }

.publication-filtre-toggle input[type="radio"]:checked + label {
  background-color: white;
  color: var(--blue-selected); }

.newNotification {
  display: inline-flex;
  align-content: center;
  justify-content: center;
  align-items: center; }

.newNotification:before {
  display: inline-block;
  content: '';
  position: relative;
  width: 10px;
  height: 10px;
  background-color: var(--blue-selected);
  border-radius: 6px;
  border-left: 3px solid var(--blue-selected);
  margin: 0px 3px;
  vertical-align: -1px;
  margin-left: 0px;
  vertical-align: middle; }

.notification {
  padding: 10px;
  display: inline-block;
  width: 100%;
  text-align: left;
  padding-left: 0px;
  line-height: 1.3;
  cursor: pointer; }
  .notification .seenotification {
    padding-left: 15px; }
  .notification:not(:last-child) {
    border-bottom: 1px solid #eff2f5; }

.notification:hover {
  background-color: var(--blue-light); }

.notification span {
  color: #9ca1a7; }

.notificationBox {
  line-height: 2.5;
  right: -5px;
  top: 40px;
  left: auto;
  min-height: 60px;
  width: 350px;
  cursor: default;
  max-height: calc(100vh - 80px); }

.no-notification {
  padding-top: 10px;
  padding-bottom: 8px;
  color: #9ca1a7; }

#notification-loading {
  margin-top: 15px; }

#notification_icon {
  color: #1c4c66;
  margin-right: 5px;
  background-color: transparent;
  font-size: 2rem;
  position: relative; }
  #notification_icon:hover {
    background-color: var(--blue-light); }

.notificationBox:before {
  top: -7px;
  right: 15px;
  left: initial; }

.notificationBox:after {
  top: -6px;
  right: 16px;
  left: initial; }

#notification-container {
  white-space: initial; }

.cityCountry {
  font-size: 1.3rem;
  color: #666;
  cursor: pointer; }
  .cityCountry:hover {
    text-decoration: underline; }

.titleShopAdmin {
  display: inline-block;
  width: 100%;
  text-align: left;
  align-self: flex-end;
  margin-top: 20px; }
  @media (max-width: 767px) {
    .titleShopAdmin {
      padding: 10px 15px 20px; } }
  .titleShopAdmin h1 {
    margin-bottom: 3px;
    font-size: 2.5rem;
    font-weight: 500; }
  .titleShopAdmin .grid-2 {
    align-items: flex-end; }

@media (max-width: 767px) {
  .conseil {
    margin-bottom: 20px; } }

@media (max-width: 767px) {
  #topProductsSeen {
    margin-bottom: 15px; } }

.btn-black {
  background-color: transparent;
  color: #eb4d11;
  padding: 7px 15px;
  border-radius: 8px;
  cursor: pointer;
  display: inline-block;
  font-size: 1.5rem;
  margin-left: 5px; }
  @media (max-width: 767px) {
    .btn-black {
      margin-left: 0px;
      margin-top: 0px;
      padding-left: 5px; } }
  @media (min-width: 768px) {
    .btn-black:hover {
      background-color: var(--blue-light);
      color: var(--red-danger); } }
  .btn-black.light {
    color: black; }

.bricksize {
  padding: 0px !important; }

.wall {
  margin: 0px 0px !important; }

.fPcenter {
  padding: 10px 10px 50px;
  max-width: 1140px;
  display: inline-block;
  width: 100%; }
  @media (max-width: 767px) {
    .fPcenter {
      padding: 20px 0px 30px; } }

.cityCountry {
  font-size: 1.3rem;
  color: #666;
  cursor: pointer; }
  .cityCountry:hover {
    text-decoration: underline; }

.selectboxreturn {
  position: absolute;
  color: inherit;
  background-color: white;
  border: 1px solid #ddd;
  width: 310px;
  max-width: none;
  padding: 0;
  margin-top: 7px;
  top: 50px;
  left: 10px;
  z-index: 3001;
  display: none;
  font-family: arial;
  font-size: 1.4rem;
  line-height: 1em;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  padding: 10px; }

.selectboxreturn:before {
  top: -7px;
  left: 9px;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-bottom: 7px solid #ccc; }

.selectboxreturn:after {
  top: -6px;
  left: 10px;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-left: 6px solid transparent; }

.selectboxreturn:before, .selectboxreturn:after {
  position: absolute;
  display: inline-block;
  content: ''; }

.initialreturn {
  display: inline-block;
  background-color: var(--blue-selected);
  border-radius: 10px;
  display: inline-block;
  color: white;
  text-align: center;
  width: 56px;
  position: relative; }
  .initialreturn .fa-lg {
    font-size: 1.8rem;
    padding: 17px;
    display: inline-block; }
  .initialreturn:hover {
    cursor: pointer;
    color: var(--blue-light); }

.ins-profile-menu-container {
  font-weight: normal;
  display: inline-block; }
  .ins-profile-menu-container label {
    padding: 10px 20px;
    color: #333;
    margin: 0px 5px;
    font-weight: normal;
    opacity: 0.8;
    border-radius: 4px;
    cursor: pointer;
    font-size: 1.6rem;
    font-weight: bold; }
    .ins-profile-menu-container label:hover {
      opacity: 1; }
    .ins-profile-menu-container label.selected {
      opacity: 1;
      color: #333;
      background-color: white;
      cursor: default;
      box-shadow: 0px 10px 10px -3px rgba(0, 0, 0, 0.2); }

.iconList {
  color: var(--blue-selected);
  padding: 17px;
  background-color: var(--blue-light);
  border-radius: 7px;
  margin: 6px;
  width: 56px; }
  .iconList:hover {
    cursor: pointer;
    background-color: var(--blue-medium); }

#profile_image_container {
  width: 120px;
  height: 120px;
  position: relative;
  z-index: 14;
  display: flex;
  margin-top: 0px;
  margin-bottom: 10px; }
  @media (max-width: 767px) {
    #profile_image_container {
      margin-top: 0px; } }

blockquote {
  position: relative;
  margin: 0em;
  padding: 0px;
  border: none;
  font-size: 1.8rem;
  white-space: pre-line;
  padding: 0.5em 2em 0.5em 3em;
  font-family: Georgia, serif;
  font-style: oblique; }

/* Thanks: http://callmenick.com/post/styling-blockquotes-with-css-pseudo-classes */
blockquote:before {
  font-family: Georgia, serif;
  position: absolute;
  font-size: 3.5em;
  line-height: 1;
  top: 0;
  left: 0;
  content: "\201C"; }

blockquote:after {
  font-family: Georgia, serif;
  position: absolute;
  /* display: block; don't use this, it raised the quote too high from the bottom - defeated line-height? */
  float: right;
  font-size: 3.5em;
  line-height: 1;
  right: 0;
  bottom: -0.5em;
  content: "\201D"; }

blockquote footer {
  padding: 0 2em 0 0;
  text-align: right; }

blockquote cite:before {
  content: "\2013"; }

.square-img {
  border-radius: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  background-color: white;
  background-position: center center;
  height: 120px;
  width: 120px;
  box-shadow: 0 8px 16px rgba(12, 65, 154, 0.1);
  position: relative;
  z-index: 2;
  cursor: pointer;
  overflow: hidden;
  display: inline-block; }
  .square-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center; }

#short_description_edit {
  height: 100px;
  width: 100%;
  padding: 10px;
  margin-bottom: 10px; }

.loadingProfileImage, .loadingCoverImage {
  position: absolute;
  display: inline-flex;
  text-align: center;
  align-items: center;
  justify-items: center;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.6);
  z-index: 3; }
  .loadingProfileImage .lds-ring, .loadingCoverImage .lds-ring {
    left: 0%;
    margin-top: 0px; }

.institution_profile_container {
  display: block;
  margin-bottom: -60px;
  width: 100%;
  text-align: left; }
  @media (max-width: 767px) {
    .institution_profile_container {
      margin-bottom: -45px; } }

.institution_infos_container {
  text-align: left;
  padding-top: 40px;
  width: calc(100% - 150px);
  padding-left: 10px;
  display: inline-block;
  vertical-align: top; }
  @media (max-width: 767px) {
    .institution_infos_container {
      padding-top: 30px;
      padding-left: 0px; } }

#institution_short_infos {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.2;
  color: #9ca1a7;
  padding-top: 3px;
  display: inline-block;
  position: relative; }
  #institution_short_infos:hover {
    cursor: pointer;
    text-decoration: underline; }

.institution_actions_btn {
  left: 0px;
  width: 100%;
  text-align: right;
  padding-left: 27px;
  height: 40px;
  margin-top: -50px;
  padding-right: 0px; }

.btn-white {
  color: black; }
  .btn-white:hover {
    color: var(--blue-selected); }

.btn-white span {
  line-height: 1.5;
  display: inline-block;
  vertical-align: middle; }

.btn-basket i {
  margin-right: 6px; }
.btn-basket span {
  position: absolute;
  width: 26px;
  height: 26px;
  right: -8px;
  top: -8px;
  color: white;
  background-color: var(--blue-selected);
  text-align: center;
  line-height: 26px;
  border-radius: 13px;
  font-size: 1.2rem; }

.btn-basket-add {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  max-width: 400px;
  min-height: 55px;
  display: flex;
  align-items: center;
  justify-content: center; }
  .btn-basket-add .label-basket {
    font-size: 1.4rem !important; }

.row-wrapper {
  display: flex;
  flex-direction: row; }

#institution_name_span {
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 1.2;
  color: black;
  cursor: pointer; }
  #institution_name_span:hover {
    text-decoration: underline; }
  @media (max-width: 767px) {
    #institution_name_span {
      font-size: 1.75rem; } }

#institution_header {
  line-height: 1.6;
  vertical-align: middle;
  display: inline-block;
  width: 100%;
  padding-bottom: 17px;
  font-size: 1.5rem;
  font-weight: normal; }

.institution_review span {
  color: steelblue;
  padding-left: 0px; }

#institution_shortdescription {
  display: none;
  resize: none;
  border: none;
  outline: 0;
  background-color: transparent;
  padding: 12px 10px 10px 10px;
  height: auto; }

#short_description_label {
  white-space: pre-line;
  line-height: 2.5rem; }

.edit_description {
  cursor: pointer;
  width: 28px;
  height: 28px;
  font-size: 1.4rem;
  text-align: center;
  left: 10px;
  padding: 4px;
  border-radius: 14px;
  color: #333;
  display: inline-block;
  cursor: pointer; }
  .edit_description:hover {
    color: var(--blue-selected); }

#ireview_container {
  margin: 0px 10px; }
  @media (max-width: 767px) {
    #ireview_container {
      margin: 0px; } }

#cover_container {
  z-index: 1;
  position: relative;
  display: flex;
  width: 100%;
  overflow: hidden; }
  @media (max-width: 767px) {
    #cover_container {
      padding: 0px;
      margin-top: 0px; } }

.cover_div {
  width: 100%;
  overflow: hidden;
  z-index: 2;
  margin-top: 0px;
  position: relative; }
  .cover_div .btn-edit-mini {
    display: block; }

.cover_div:after {
  padding-bottom: 43%;
  display: inline-block;
  content: ""; }
  @media (max-width: 767px) {
    .cover_div:after {
      padding-bottom: 40%; } }

.pic-header {
  flex-direction: row;
  display: flex;
  align-items: start;
  justify-content: start;
  width: 100%;
  max-width: 940px;
  padding: 0px 30px; }
  @media (max-width: 767px) {
    .pic-header {
      width: calc(100% - 30px);
      align-items: start;
      padding: 0px; } }

.shop-section-header {
  max-width: 1510px;
  padding: 0px 30px;
  margin-bottom: -30px; }
  @media (max-width: 991px) {
    .shop-section-header {
      padding: 0px 15px; } }

.headerandcover {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center; }

.insheader {
  display: flex;
  justify-content: center;
  flex: 1;
  width: 100%; }
  @media (max-width: 767px) {
    .insheader {
      background: white;
      margin-top: -30px;
      border-bottom: 1px solid var(--blue-light); } }

.top_infos_container {
  display: flex;
  width: 100%;
  align-items: start;
  padding-top: 20px;
  overflow: hidden; }
  @media (max-width: 767px) {
    .top_infos_container {
      padding-bottom: 6px; } }
  @media (min-width: 768px) {
    .top_infos_container.mini-header {
      padding-top: 10px; } }

.show_more_reviews {
  display: inline-block;
  margin-top: 10px; }

.white-background {
  background-color: white;
  text-align: center; }

.root-path {
  padding-bottom: 20px;
  font-size: 1.4rem;
  display: inline-block;
  width: 100%; }
  @media (max-width: 767px) {
    .root-path {
      padding-bottom: 0px; } }
  .root-path i {
    vertical-align: middle;
    color: #d6dbdf;
    font-size: 1rem;
    margin: 0px 6px; }

.cover-light {
  height: 200px !important; }
  .cover-light img {
    filter: blur(5px); }

.cover_img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  display: block; }

.institutionBody {
  width: 100%; }

.institutionBody > div:first-child {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-items: center;
  align-items: center; }

.main_container_ins {
  max-width: unset;
  padding: 0px; }

#institutionValidated {
  margin: 0px;
  border: none !important;
  text-align: center;
  background-color: #fff1ee;
  border-radius: 0px; }

.profile_header_container {
  margin-top: 0px;
  z-index: 0;
  margin-bottom: 0px;
  padding: 70px 30px 0px;
  position: revert; }
  @media (max-width: 991px) {
    .profile_header_container {
      padding: 20px 15px; } }
  @media (max-width: 767px) {
    .profile_header_container .col-lg-12 {
      padding: 0px; } }

.profile_header {
  max-width: 1200px;
  display: inline-block;
  width: 100%; }
  @media (max-width: 767px) {
    .profile_header {
      display: block;
      padding-top: 0px; } }

#navigation-container {
  margin-bottom: 0px;
  border-bottom: none;
  margin-left: 0px;
  padding: 5px 15px;
  display: inline-flex;
  justify-content: left;
  text-align: left; }

#institutionFamiliesList {
  display: flex;
  flex-direction: column;
  padding-top: 20px; }
  #institutionFamiliesList .select-menu-hor {
    margin-right: 0px !important; }
    #institutionFamiliesList .select-menu-hor:after {
      bottom: 5px !important; }

#background-mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1;
  display: none; }

.deliveryanddescription {
  text-align: center; }
  @media (max-width: 767px) {
    .deliveryanddescription {
      text-align: left;
      padding-left: 15px; } }

.delivery-infos {
  font-weight: normal;
  padding: 3px 0px 0px;
  display: inline-grid;
  position: relative;
  width: 100%;
  max-width: 1420px;
  grid-template-columns: repeat(4, 1fr);
  justify-items: left; }
  .delivery-infos i {
    font-size: 3.5rem;
    color: var(--blue-selected);
    margin-right: 10px;
    margin-bottom: 15px; }
  @media (max-width: 767px) {
    .delivery-infos {
      grid-template-columns: repeat(1, 1fr);
      row-gap: 30px;
      justify-items: left; } }

.delivery-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left; }

.timeline {
  margin-top: 30px; }

.institution-infos-center {
  background-color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 0px;
  margin-bottom: 0px;
  text-align: left;
  z-index: 11;
  box-shadow: 0 -8px 16px rgba(185, 185, 185, 0.1);
  border-bottom: 1px solid #eff2f5;
  position: sticky;
  top: 60px; }
  .institution-infos-center hr {
    display: inline-block;
    width: 100%; }

.institutionFamiliesList {
  display: flex; }

.listFamilies {
  overflow: auto;
  display: flex;
  width: 100%;
  max-width: 240px;
  text-align: left;
  padding: 0px;
  vertical-align: bottom;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start; }
  .listFamilies .show-all {
    margin-top: 10px;
    display: none !important;
    position: sticky;
    left: 0px;
    font-size: 1.4rem;
    padding-left: 10px;
    padding-bottom: 10px;
    text-align: center; }
    .listFamilies .show-all i {
      margin-left: 6px; }

.home_family {
  display: inline-flex;
  text-align: left;
  width: 100%;
  vertical-align: top;
  white-space: normal;
  cursor: pointer;
  border-radius: 15px;
  padding: 10px 0px;
  margin: 0px 0px 0px;
  align-items: center; }
  .home_family .family_thumbnail {
    width: 40px;
    height: 40px;
    border-radius: 20px;
    vertical-align: middle;
    display: inline-block !important;
    align-items: center;
    justify-content: center;
    position: relative;
    border: 1.5px solid transparent;
    position: relative; }
    @media (max-width: 767px) {
      .home_family .family_thumbnail {
        display: none !important; } }
    .home_family .family_thumbnail .btn-edit-mini {
      display: none;
      right: 20px;
      bottom: 20px; }
    .home_family .family_thumbnail:after {
      content: '';
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #011d5c;
      opacity: .03;
      pointer-events: none;
      padding-bottom: 100%;
      display: inline-block;
      border-radius: 20px; }
  .home_family img {
    align-self: center;
    display: inline-block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
    position: absolute; }
  .home_family .familyName {
    text-align: center;
    padding: 0px 10px;
    display: -webkit-inline-box !important; }
  .home_family.selected {
    color: #eb4d11 !important;
    font-weight: 600;
    border-radius: 0px;
    cursor: default; }
    @media (max-width: 767px) {
      .home_family.selected {
        color: var(--blue-selected) !important; } }
    .home_family.selected div {
      border-color: #eb4d11; }
    .home_family.selected .family_thumbnail {
      border-color: var(--red-danger); }
  .home_family:hover {
    color: #666; }

.institutionFamiliesList_C .listFamilies {
  padding: 10px 20px;
  text-align: center;
  display: block;
  flex-direction: row;
  max-width: 1490px;
  justify-content: center;
  white-space: nowrap; }
  @media (max-width: 767px) {
    .institutionFamiliesList_C .listFamilies {
      padding: 10px 5px; } }
.institutionFamiliesList_C .shopFamilyGroup {
  display: flex;
  justify-items: center; }
.institutionFamiliesList_C .family_thumbnail {
  display: inline-flex !important;
  padding: 10px; }
.institutionFamiliesList_C .home_family {
  padding: 0px 0px 15px;
  margin: 0px;
  width: 180px; }
  .institutionFamiliesList_C .home_family .family_thumbnail {
    position: relative;
    border-radius: 100px; }
    .institutionFamiliesList_C .home_family .family_thumbnail:after {
      position: absolute;
      content: '';
      top: 10px;
      left: 10px;
      width: calc(100% - 20px);
      height: calc(100% - 20px);
      background: #011d5c;
      opacity: .03;
      pointer-events: none;
      border-radius: 100px; }
  .institutionFamiliesList_C .home_family .familyName {
    text-align: center;
    padding: 0px 5px;
    display: -webkit-inline-box !important; }
  .institutionFamiliesList_C .home_family img {
    border-radius: 100px; }
  @media (max-width: 767px) {
    .institutionFamiliesList_C .home_family {
      width: 140px; } }
.institutionFamiliesList_C .home_family_C {
  display: none; }

.publication_view_header {
  padding: 20px 20px; }
  @media (max-width: 767px) {
    .publication_view_header {
      padding: 20px 10px; } }

@media (max-width: 767px) {
  .top-products .col-sm-6:first-child {
    margin-bottom: 30px; } }

.preview-container {
  display: flex;
  flex: 1; }
  @media (max-width: 767px) {
    .preview-container {
      width: 100%; } }

.shop-sub-family {
  display: inline-block;
  background-color: white;
  padding: 10px 10px;
  border-radius: 5px;
  cursor: pointer;
  white-space: normal;
  width: 100%;
  margin-bottom: 5px; }
  @media (min-width: 767px) {
    .shop-sub-family:hover {
      background-color: var(--blue-light); } }
  .shop-sub-family.selected {
    border-right: 3px solid var(--blue-selected);
    color: var(--blue-selected);
    cursor: default;
    border-radius: 0;
    font-weight: 600; }

.sub-family-container {
  width: 100%;
  display: inline-block;
  overflow: auto;
  margin-bottom: 15px; }
  .sub-family-container.empty {
    border-top: none;
    margin-top: 0px; }
  .sub-family-container .show-all {
    margin-top: 10px;
    display: none;
    position: sticky;
    left: 0px;
    font-size: 1.4rem; }
    .sub-family-container .show-all i {
      margin-left: 6px; }

#institutionProfilePopularProducts .btn-edit-mini {
  display: none !important; }

.previous-families, .next-families {
  display: inline-flex;
  align-items: center;
  padding: 10px;
  position: absolute;
  vertical-align: middle;
  height: calc(100% - 1px);
  line-height: 110px;
  color: #9ca1a7;
  cursor: pointer;
  display: none; }
  .previous-families i, .next-families i {
    margin-bottom: 110px; }

.sub-family-container .previous-families, .sub-family-container .next-families {
  height: 66px;
  line-height: 64px; }

.previous-families {
  left: 0px;
  background: linear-gradient(to left, rgba(255, 255, 255, 0), #fff 45%);
  z-index: 10;
  padding-right: 30px; }

.next-families {
  right: 0px;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), #fff 45%);
  padding-left: 30px; }

@media (max-width: 767px) {
  #shop_families {
    position: absolute;
    background-color: white;
    width: 100%;
    top: calc(100% - 65px);
    padding: 0px 10px 10px;
    border: 1px solid var(--blue-selected);
    border-top: none;
    border-radius: 0px 0px 5px 5px; } }
#shop_families .previous-families {
  background: linear-gradient(to left, rgba(255, 255, 255, 0), #f5f8fb 45%); }
  #shop_families .previous-families i {
    margin-bottom: 55px; }
#shop_families .next-families {
  background: linear-gradient(to right, rgba(255, 255, 255, 0), #f5f8fb 45%); }
  #shop_families .next-families i {
    margin-bottom: 55px; }

#shop_conditions {
  display: inline-block;
  width: 100%;
  max-width: 600px;
  margin-top: 40px;
  border-top: 1px solid #9ca1a7;
  border-bottom: 1px solid #9ca1a7;
  padding: 20px 0px 15px;
  color: #9ca1a7;
  margin-bottom: 10px;
  position: relative;
  line-height: 1.4; }
  @media (max-width: 767px) {
    #shop_conditions {
      padding: 15px 0px;
      text-align: left; } }
  #shop_conditions i {
    margin-bottom: 10px;
    font-size: 24px;
    width: 100%; }
    @media (max-width: 767px) {
      #shop_conditions i {
        margin: 10px 0px;
        margin-right: 10px;
        width: 30px; } }

.profile_action_container {
  left: 0px;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  margin-top: 12px;
  margin-bottom: 5px; }
  @media (max-width: 767px) {
    .profile_action_container {
      margin-bottom: 12px;
      line-height: 65px; } }

.catalog_access {
  display: inline-block;
  cursor: pointer;
  width: auto;
  cursor: pointer !important;
  padding: 15px 30px;
  border-radius: var(--border-radius-little);
  box-shadow: 0px 10px 10px -3px rgba(0, 0, 0, 0.2);
  position: relative; }

#profile_img_div .btn-edit-mini {
  display: block; }

.shop_preview_container {
  display: inline-flex;
  width: 100%;
  align-items: center; }
  @media (max-width: 767px) {
    .shop_preview_container {
      flex-direction: column; } }

.pub-cont-2 {
  display: flex;
  align-content: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 0px 10px; }
  @media (max-width: 991px) {
    .pub-cont-2 {
      padding: 0px; } }

.insHeaderCenterContainer {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: start;
  padding: 0px;
  position: relative;
  text-align: left; }
  .insHeaderCenterContainer .follower_counter {
    text-align: right;
    display: inline-block;
    padding: 3px 0px;
    font-size: 1.3rem;
    color: #666; }
  @media (max-width: 767px) {
    .insHeaderCenterContainer {
      flex-direction: column;
      align-items: center;
      text-align: center; }
      .insHeaderCenterContainer .follower_counter {
        text-align: center;
        width: 100%;
        padding-bottom: 10px; } }

.newProductListContainer {
  display: inline-block;
  width: 100%; }

.shopNewProductThumbnail {
  text-align: left;
  display: flex;
  flex-direction: column;
  padding: 10px 0px;
  color: black;
  white-space: normal; }
  .shopNewProductThumbnail span {
    text-align: left;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 0px 0px;
    padding-right: 10px;
    margin-top: 15px;
    vertical-align: bottom; }
    .shopNewProductThumbnail span.productPrice {
      text-decoration: none !important;
      text-align: left;
      display: inline-block;
      margin-top: 3px;
      font-weight: 500;
      font-size: 1.6rem; }
    .shopNewProductThumbnail span:hover {
      cursor: pointer;
      text-decoration: underline; }
  .shopNewProductThumbnail .btn-edit-mini {
    width: auto;
    padding-left: 10px;
    display: block; }
    .shopNewProductThumbnail .btn-edit-mini span {
      font-size: 1.3rem;
      font-family: Open Sans,Arial,sans-serif;
      font-weight: normal;
      margin-left: 6px;
      color: #fff; }
    .shopNewProductThumbnail .btn-edit-mini:hover {
      color: var(--blue-dark); }
      .shopNewProductThumbnail .btn-edit-mini:hover span {
        color: var(--blue-dark);
        text-decoration: none; }
  @media (max-width: 991px) {
    .shopNewProductThumbnail {
      padding: 10px 0px; } }

.shoph2 {
  padding: 10px 0px 25px;
  text-align: center;
  font-size: 2.6rem; }
  @media (max-width: 991px) {
    .shoph2 {
      padding: 10px 0px 15px; } }

#institution_infos {
  top: 20px;
  left: 0px;
  padding: 20px;
  width: 300px;
  white-space: pre-line;
  line-height: 1.7;
  cursor: default; }

#institution_phoneèaction {
  position: relative; }

#institution_phone {
  top: 50px;
  right: 0px;
  padding: 20px;
  width: 150px;
  white-space: pre-line;
  line-height: 1.7;
  cursor: default;
  text-align: left;
  color: black; }

.institutionInformationsNotSent {
  background-color: red; }

.institutionUnderValidation {
  background-color: blue; }

#createInstitutionForm {
  display: inline-block;
  max-width: 440px; }

.bloc_legal {
  text-align: left; }
  .bloc_legal .legal_titre {
    font-size: 2.0rem;
    display: inline-block; }

#InstitutionParametersContainer {
  padding-top: 10px;
  text-align: left;
  max-width: 800px;
  padding-top: 30px;
  width: 100%; }
  #InstitutionParametersContainer:empty {
    display: none !important; }

.condition-line .dynInput {
  width: calc(100% - 66px);
  display: inline-block;
  vertical-align: top;
  margin-left: 6px; }

.institutionDeliveryItem {
  background-color: var(--blue-light);
  border-radius: 5px;
  padding: 15px;
  display: inline-block;
  width: 100%;
  margin: 0px 0px 10px;
  position: relative;
  max-width: 600px; }

.bankAccountContainer {
  background-color: var(--blue-light);
  border-radius: 4px;
  padding: 15px;
  display: flex;
  align-items: center;
  width: auto;
  position: relative; }

.topbar-control {
  display: flex;
  align-items: center; }

.catalog_demand_container {
  padding: 10px 0px; }

.catalog_demand_container:last-child {
  border-bottom: 1px solid var(--blue-medium); }

.config-step-container {
  width: 100%;
  display: inline-block;
  white-space: nowrap;
  overflow: hidden; }

.config-step {
  width: calc(100% - 10px);
  display: inline-block;
  padding: 20px 10px;
  vertical-align: middle;
  transition: transform ease 0.3s;
  white-space: normal; }
  .config-step .config-step-text {
    padding-top: 5px; }

.previous-step {
  color: var(--blue-dark);
  font-size: 2.2rem;
  height: 100%;
  margin-right: 10px !important;
  display: flex !important;
  align-items: center;
  cursor: pointer; }
  .previous-step:hover {
    color: var(--blue-selected); }
  .previous-step::before {
    vertical-align: middle;
    display: flex; }

.next-step {
  color: var(--blue-dark);
  font-size: 2.2rem;
  height: 100%;
  margin-left: 10px !important;
  display: flex !important;
  align-items: center;
  cursor: pointer; }
  .next-step:hover {
    color: var(--blue-selected); }
  .next-step::before {
    vertical-align: middle;
    display: flex; }

.step-arrow-left {
  display: flex; }

.step-arrow-right {
  display: flex; }

.step-arrow-disabled {
  cursor: default !important;
  color: var(--blue-light) !important; }

.step-resume {
  text-align: left;
  color: #9ca1a7;
  font-size: 1.5rem;
  padding-left: 5px;
  display: inline-block; }
  .step-resume div {
    margin: 0px 5px;
    cursor: pointer;
    display: inline-block;
    border-radius: 20px;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 40px;
    background-color: var(--blue-medium); }
    .step-resume div span:hover {
      opacity: 0.7; }
    .step-resume div.selected {
      cursor: default;
      color: var(--blue-selected); }
      .step-resume div.selected i {
        color: var(--blue-medium); }
    .step-resume div.completed {
      color: white;
      background-color: var(--blue-selected); }
      .step-resume div.completed span {
        display: none; }

.circle {
  display: inline-block;
  background: black;
  border-radius: 50%;
  height: 15px;
  width: 15px;
  background: radial-gradient(circle at 100px 100px, #5b93ae, #1e4d9c); }

.circleClose {
  display: inline-block;
  background: black;
  border-radius: 50%;
  height: 15px;
  width: 15px;
  background: radial-gradient(circle at 100px 100px, #ffffff, #97999c); }

.tri-box {
  right: 18px; }

.follow-institution-thumbnail {
  border: 1px solid var(--blue-medium);
  border-radius: 7px;
  padding: 10px;
  text-align: left;
  position: initial;
  margin-bottom: 5px;
  width: 230px; }
  .follow-institution-thumbnail i {
    color: var(--blue-selected);
    position: initial;
    right: 7px;
    top: 8px; }
  .follow-institution-thumbnail:hover {
    background-color: var(--blue-light);
    cursor: pointer; }
  .follow-institution-thumbnail.selected {
    border-color: var(--blue-selected);
    background-color: var(--blue-light);
    color: var(--blue-selected);
    margin-left: 10px;
    margin-bottom: 20px; }
    .follow-institution-thumbnail.selected i {
      display: initial; }
      .follow-institution-thumbnail.selected i.sized {
        font-size: 22px !important;
        padding-right: 10px; }
  .follow-institution-thumbnail img {
    width: 60px;
    height: 60px;
    border-radius: 7px;
    margin-right: 6px; }

.tradastraChatContainer {
  display: flex;
  justify-content: end; }

.tradastraChatHeader {
  padding: 15px 10px;
  background: var(--blue-selected); }

.tradastraChatContent {
  width: 380px;
  height: 100%;
  max-height: 600px;
  background-color: white;
  padding: 0;
  z-index: 3001;
  font-family: arial;
  font-size: 1.5rem;
  box-shadow: 0 5px 40px rgba(0, 0, 0, 0.16);
  border-radius: 20px;
  overflow: hidden;
  color: #8294a7;
  line-height: 2.5;
  position: fixed;
  bottom: 20px;
  right: 10px; }
  @media (min-width: 768px) {
    .tradastraChatContent {
      margin-right: 10px; } }
  @media (max-width: 767px) {
    .tradastraChatContent {
      margin-right: 0px;
      width: 100%;
      height: 100%;
      right: 0px; } }
  .tradastraChatContent.close {
    border-radius: 40px;
    width: 80px;
    height: 80px; }

.profile_image_chat_container {
  width: 40px;
  height: 40px;
  position: relative;
  z-index: 4;
  display: inline-block;
  top: 5px;
  float: left;
  margin-left: 10px; }

.square-img-chat {
  width: 40px;
  height: 40px;
  border-radius: 5px;
  box-shadow: none; }

.tradastraChatMessageHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 1;
  position: relative; }

.tradastraChatInstitutionName {
  font-weight: bold;
  float: left;
  margin-left: 10px;
  color: rgba(255, 255, 255, 0.95);
  line-height: 1.3em;
  text-align: left;
  padding: 5px 0px; }
  .tradastraChatInstitutionName span {
    font-size: 1.4rem;
    color: rgba(255, 255, 255, 0.7);
    font-weight: normal; }

.tradastraChatClose {
  padding: 6px 8px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 6px;
  cursor: pointer;
  margin-right: 10px;
  color: white; }

.tradastraChatMessageListContainer {
  padding: 10px;
  position: absolute;
  width: 100%;
  height: 100%; }

#tradastraChatMessageList {
  position: relative;
  padding: 0px 10px;
  padding-right: 0px;
  height: calc(100% - 135px); }

input.form-control.tradastraChatInputMessage {
  border-radius: 0px;
  background-color: white; }

.tradastraChatMessageThumbnail {
  line-height: 1.2em;
  text-align: left; }

.msg-bubble-container-chat {
  margin-bottom: 10px; }

.msg-bubble-container-right-chat .msg-bubble-chat-date {
  text-align: left; }

.msg-bubble-container-left-chat {
  display: flex;
  justify-content: flex-start; }
  .msg-bubble-container-left-chat .msg-bubble-chat-date {
    text-align: right; }

.msg-bubble-container-right {
  display: flex;
  justify-content: flex-end; }
  .msg-bubble-container-right .msg-bubble-body-chat {
    display: flex;
    flex-direction: column;
    align-items: flex-end; }
  .msg-bubble-container-right .msg-bubble-chat-date {
    align-self: flex-start; }
  .msg-bubble-container-right .msg-bubble-chat {
    background-color: var(--blue-light);
    color: #202124; }

.msg-bubble-container-left .mesg-bubble-body-chat {
  display: flex;
  flex-direction: column;
  align-items: flex-start; }
.msg-bubble-container-left .msg-bubble-chat {
  background-color: #eb4d11;
  color: white; }

.msg-bubble-body-chat {
  max-width: 70%;
  margin-bottom: 0px; }

.msg-bubble-chat {
  padding: 8px;
  border-radius: 15px; }

.msg-bubble-chat-date {
  font-size: 0.8em; }

.tradastraChatInputMessageContainer {
  display: flex;
  align-items: center;
  border-top: 1px solid #e7edf3;
  position: relative;
  margin-bottom: -15px; }
  .tradastraChatInputMessageContainer i:hover {
    color: var(--blue-selected); }
  .tradastraChatInputMessageContainer.chatpopup {
    padding: 5px 0px; }

.tradastraChatInputMessage {
  width: 100%;
  border-radius: 15px; }

.tradastraChatInputMessageContainer i {
  position: absolute;
  right: 15px;
  cursor: pointer;
  font-size: 1.3em; }

.dark-selected-blue {
  position: relative;
  background: linear-gradient(rgba(0, 0, 0, 0.88), rgba(0, 0, 0, 0.88)), var(--blue-selected) no-repeat center center; }
  .dark-selected-blue.revert {
    background: linear-gradient(rgba(0, 0, 0, 0.7)), var(--blue-selected) no-repeat center center; }

.tradastraChatImageOverlay {
  margin-right: 30px;
  width: auto;
  height: auto;
  z-index: 50000;
  box-shadow: 0px 3px 10px -3px rgba(0, 0, 0, 0.2);
  border-radius: 30px;
  position: fixed;
  bottom: 20px;
  padding: 30px;
  height: 30px;
  width: 30px;
  text-align: center;
  cursor: pointer;
  transition: 0.2s linear;
  color: white;
  right: 0px;
  display: flex;
  align-items: center;
  justify-content: center; }
  .tradastraChatImageOverlay i {
    vertical-align: middle;
    margin-right: 0px;
    opacity: 0.95; }
  .tradastraChatImageOverlay span {
    vertical-align: middle; }
  .tradastraChatImageOverlay:hover {
    background-color: #9ca1a7; }
    .tradastraChatImageOverlay:hover.dark-selected-blue:after {
      opacity: 0.6; }
  .tradastraChatImageOverlay .notification_bubble {
    background-color: #ef5858;
    padding: 4px;
    min-width: 30px;
    font-size: 1.4rem;
    border-radius: 12px;
    color: white;
    position: absolute;
    top: 0px;
    right: 0px;
    width: 20px;
    min-width: 24px;
    line-height: 16px;
    height: 25px; }

#store_publish_tuto {
  text-align: left;
  margin: 0px;
  border-radius: 5px;
  width: 100%;
  display: none; }
  #store_publish_tuto button {
    vertical-align: middle;
    margin: 10px 0px; }
  #store_publish_tuto .spt-table {
    display: inline-grid;
    padding: 0px 10px; }
  @media (min-width: 768px) {
    #store_publish_tuto .spt-table {
      display: table; } }

#dashboardInstitution-Image {
  text-align: left;
  padding: 15px 10px 5px;
  display: flex;
  justify-content: start;
  align-items: center;
  flex-direction: row; }
  #dashboardInstitution-Image .square-img {
    width: 100px;
    height: 100px; }
  #dashboardInstitution-Image .dashboardIns-Info {
    font-size: 2.3rem;
    font-weight: 600;
    padding: 10px 20px;
    padding-right: 0px;
    display: flex;
    flex: 1;
    align-items: center; }
    #dashboardInstitution-Image .dashboardIns-Info a {
      font-weight: normal;
      font-size: 1.5rem;
      color: var(--blue-dark);
      padding: 5px 10px;
      border: 1px solid var(--blue-dark);
      border-radius: 8px;
      margin-top: 10px;
      display: inline-block;
      line-height: 1.8rem; }
      #dashboardInstitution-Image .dashboardIns-Info a b {
        font-weight: 600;
        font-size: 1.8rem; }
  #dashboardInstitution-Image .follower_counter {
    font-size: 1.3rem;
    font-weight: normal;
    color: #666;
    padding-top: 5px; }

.dash-resume {
  background-color: white;
  padding-bottom: 30px; }

.dash-Counter {
  font-size: 2.1rem;
  font-weight: 500;
  padding-top: 3px;
  display: inline-block; }

.insNameContainer {
  padding: 0px 20px 0px;
  width: 100%;
  text-align: left;
  display: flex;
  flex-direction: column; }
  .insNameContainer a, .insNameContainer span {
    width: fit-content; }
  @media (max-width: 767px) {
    .insNameContainer {
      padding: 22px 15px 5px; } }

.insCont {
  background-color: #f3f6f7;
  display: flex;
  flex-direction: column;
  align-items: center; }

.contact_container {
  padding-top: 5px; }
  @media (max-width: 767px) {
    .contact_container {
      padding-top: 0px;
      width: 100%;
      padding-bottom: 5px;
      background: white;
      border-bottom: 1px solid var(--blue-light); } }

#edit_crop_container {
  position: relative;
  display: none;
  bottom: 0px;
  vertical-align: bottom;
  margin: auto;
  z-index: 2;
  top: calc(100% - 100px);
  background-color: var(--color-primary);
  color: white;
  padding: 10px 20px; }
  #edit_crop_container .btn-primary {
    background: var(--blue-selected); }

.preview_opt {
  padding-top: 0px;
  padding-left: 30px; }
  @media (max-width: 767px) {
    .preview_opt {
      padding-left: 0px;
      width: 100%; } }

.newProductList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: 30px;
  column-gap: 50px;
  align-items: start; }
  @media (max-width: 991px) {
    .newProductList {
      column-gap: 15px; } }
  @media (max-width: 767px) {
    .newProductList {
      grid-template-columns: repeat(2, 1fr); } }

.conseil .img-c {
  width: 100%;
  margin-bottom: 15px;
  position: relative; }
  .conseil .img-c img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px; }
  .conseil .img-c:after {
    display: inline-block;
    content: '';
    padding-bottom: 65%; }

#customize_bloc {
  text-align: left; }
  #customize_bloc .institutionProfileNewProducts {
    max-width: 700px;
    display: inline-block;
    width: 100%; }
    #customize_bloc .institutionProfileNewProducts .col-xs-5, #customize_bloc .institutionProfileNewProducts .col-xs-7 {
      display: none; }

.loyalty-card {
  position: relative;
  color: black;
  padding: 25px 60px; }
  .loyalty-card .icon_preview {
    width: 120px;
    height: 120px;
    background: white;
    border-radius: 5px;
    margin-right: 20px;
    display: flex;
    align-items: center;
    justify-content: center; }
  .loyalty-card div {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start; }
    .loyalty-card div .reward-label {
      font-family: 'Archivo Black', sans serif;
      color: var(--blue-selected);
      font-weight: 600;
      margin-top: 10px; }
    .loyalty-card div i {
      font-size: 4rem;
      color: var(--blue-selected); }

.carousel-container {
  position: relative;
  overflow: hidden;
  /* Cache les slides non visibles */
  margin: auto;
  border-radius: 0px; }

#slides-wrapper {
  /* La largeur doit être X00% où X est le nombre de slides (ex: 3 slides = 300%) */
  width: 300%;
  display: flex;
  /* Définit la durée de l'animation pour le JS */
  transition: transform 0.5s ease-in-out; }

.slide {
  flex-shrink: 0;
  width: 100%;
  /* Chaque slide prend 100% de la largeur du viewport */ }

.carousel-indicators-container {
  display: inline-flex;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%);
  gap: 8px;
  /* Espacement entre les points */
  margin: 20px 0px;
  z-index: 10;
  mix-blend-mode: difference;
  filter: brightness(1.2) contrast(1.1); }

.carousel-indicator {
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background-color: #5a5a5a;
  /* Point inactif */
  cursor: pointer;
  /* Transition pour l'effet d'élargissement/rétrécissement */
  transition: width 0.3s ease-in-out, background-color 0.3s; }

/* Style et effet pour le point actif */
.carousel-indicator.active {
  width: 45px;
  /* Le point actif est plus large */
  background-color: #FFFFFF;
  /* Couleur pleine pour le point actif */
  border-radius: 7.5px; }

#search_results_container {
  left: 50%;
  position: absolute;
  width: 100%;
  max-width: 580px;
  margin-top: 5px;
  top: 60px;
  margin-left: 0px;
  z-index: 2;
  transform: translateX(-50%); }
  #search_results_container.embedded {
    top: 0px;
    margin-top: 0px;
    margin-left: 0px;
    width: 100%;
    max-width: 100%;
    transform: translateX(0%);
    position: relative;
    left: 0px;
    margin-top: 15px; }

.srch_result_container_row {
  border-radius: 7px;
  overflow: hidden;
  border: 0px solid #e3e3e3;
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.15);
  padding: 10px;
  background-color: white;
  white-space: initial; }
  .srch_result_container_row.none {
    display: none; }

.first_page .resultSearch {
  padding-top: 15px; }

.search_result {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-items: center;
  width: 100%;
  padding: 10px;
  color: black;
  margin: 0;
  overflow: hidden;
  border: none;
  box-shadow: none;
  border-bottom: 1px solid var(--blue-light); }
  .search_result .srch_result_infos {
    display: flex;
    flex-direction: column;
    align-items: start;
    margin-left: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.5;
    max-width: 100%; }
  .search_result .srchres_store_product {
    font-size: 1.3rem; }
  .search_result .srchres_store_address {
    font-size: 1.3rem;
    font-weight: bold;
    color: #9ca1a7;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 100%; }
  .search_result .srchres_store_desc {
    font-size: 1.3rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 100%;
    color: #9ca1a7; }
  .search_result:hover {
    background-color: var(--blue-light);
    border-radius: 7px;
    color: var(--blue-selected); }

.srchres_store_name {
  font-size: 1.2rem;
  white-space: nowrap; }
  .srchres_store_name b {
    font-size: 1.4rem;
    margin-right: 6px; }

#search_term_infos_container .search_result:last-child {
  border-bottom: none; }

.searchIcon {
  position: relative;
  display: flex;
  align-items: center; }
  .searchIcon input {
    padding-left: 32px; }
  .searchIcon:before {
    content: '\f002';
    font-family: 'Font Awesome 6 Pro';
    position: absolute;
    font-weight: 300;
    left: 10px;
    color: #6e6e6e; }

#paymentMethodManagerFormMessage.error {
  color: lightcoral !important; }

.saveCard {
  margin-left: 55px;
  margin-bottom: 10px; }

.cardThumbnail {
  border: 1px solid #d4dde6;
  border-radius: 4px;
  padding: 15px;
  text-align: left;
  margin: 5px 0px;
  width: 100%;
  display: inline-block;
  max-width: 500px; }
  .cardThumbnail:hover {
    background-color: #e7edf3; }

.cardTypeUnchecked {
  opacity: 0.5;
  color: #996; }

.paymentMethodManagerModalWindow {
  max-width: 650px; }

.cardType-selection-thumbnail {
  border: 1px solid var(--blue-medium);
  border-radius: 7px;
  padding: 12px;
  text-align: left;
  position: initial;
  margin-bottom: 5px;
  width: 230px; }
  .cardType-selection-thumbnail i {
    color: var(--blue-selected);
    position: initial;
    right: 7px;
    top: 8px; }
  .cardType-selection-thumbnail:hover {
    background-color: var(--blue-light);
    cursor: pointer; }
  .cardType-selection-thumbnail.selected {
    border-color: var(--blue-selected);
    background-color: var(--blue-light);
    color: var(--blue-selected);
    margin-left: 10px;
    margin-bottom: 20px; }
    .cardType-selection-thumbnail.selected i {
      display: initial; }
      .cardType-selection-thumbnail.selected i.sized {
        font-size: 22px !important;
        padding-right: 10px; }
  .cardType-selection-thumbnail img {
    width: auto;
    height: 2.5em;
    border-radius: 7px;
    margin-right: 6px; }

#panelBasketList {
  margin-top: 0px;
  padding: 0px 0px 10px; }
  @media (max-width: 767px) {
    #panelBasketList {
      padding-top: 0px;
      padding-bottom: 0px; } }

.basketThumbnail {
  display: flex;
  flex-direction: row;
  cursor: pointer;
  padding: 10px 0px;
  display: inline-flex;
  width: 100%;
  align-items: center;
  margin-left: -10px;
  margin-top: 10px; }
  .basketThumbnail:hover {
    border-radius: 5px;
    background-color: var(--blue-medium); }

.basketThumbnailInstitutionLogo {
  width: 44px;
  height: 44px;
  margin-left: 10px;
  margin-right: 0px;
  border-radius: 10px;
  background-color: white;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }

.basketThumbnailInstitutionInfos {
  display: flex;
  flex-direction: column; }

.basketThumbnailInstitutionName {
  padding: 0px 10px; }

.basketThumbnailInstitutionPrice {
  text-align: left;
  padding: 0px 10px;
  color: #9ca1a7;
  font-size: 1.3rem; }

.btn-loading {
  position: relative;
  color: transparent !important;
  pointer-events: none; }
  .btn-loading::after {
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    top: calc(50% - 8px);
    left: calc(50% - 8px);
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-top-color: #fff;
    animation: btn-spin 0.65s linear infinite; }

@keyframes btn-spin {
  to {
    transform: rotate(360deg); } }
.insInfo {
  padding: 12px 20px 0px;
  width: 100%; }

.basketView {
  display: flex;
  justify-content: center; }

#basketContact {
  row-gap: 10px;
  display: flex;
  flex-direction: column; }

@media (max-width: 767px) {
  .basketView .insHeaderCenterContainer {
    flex-direction: row;
    padding: 0px 20px !important; }
  .basketView #profile_image_container {
    width: 60px !important;
    height: 60px !important;
    margin-top: 0px !important; }
  .basketView #profile_img_div {
    width: 60px !important;
    height: 60px !important; }
  .basketView .insInfo {
    padding: 12px 20px 20px; }

  #basketStep {
    display: inline-flex;
    flex-direction: column-reverse; }

  #basketLeftPanel, #FinalBasketPaymentActions {
    padding: 0px !important; } }
.basket-panel-right .box-message {
  padding: 0px 25px; }
  @media (max-width: 767px) {
    .basket-panel-right .box-message {
      padding: 0px; } }

#BasketEditAddressForm {
  max-width: 460px; }

@media (max-width: 767px) {
  #BasketProduct div {
    display: none; } }

.checkout-layout {
  display: flex;
  gap: 20px;
  align-items: flex-start; }

.checkout-summary-col {
  position: sticky;
  top: 80px;
  align-self: flex-start;
  margin-bottom: 20px; }
  @media (max-width: 991px) {
    .checkout-summary-col {
      position: static; } }

.checkout-summary-sticky {
  background: #fff;
  border: 1px solid var(--blue-light);
  border-radius: 10px;
  padding: 16px; }

@media (max-width: 767px) {
  .checkout-layout {
    flex-direction: column-reverse; }

  .checkout-main-col,
  .checkout-summary-col {
    width: 100%;
    padding: 0; } }
.checkout-block {
  background: #fff;
  border: 1px solid var(--blue-light);
  border-radius: 10px;
  padding: 25px;
  margin-bottom: 16px; }

.checkout-block__title {
  font-size: 1.6rem;
  font-weight: 600;
  margin: 0 0 12px;
  color: var(--blue-dark); }

.checkout-block__subtitle {
  font-size: 1.3rem;
  color: #666;
  margin: -4px 0 12px; }

.checkout-user-card {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid var(--blue-light);
  border-radius: 8px;
  background: #fafafa;
  font-size: 1.3rem; }
  .checkout-user-card .checkout-user-card__email {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .checkout-user-card .checkout-user-card__action {
    font-size: 1.2rem;
    color: var(--blue-dark);
    cursor: pointer; }

.checkout-error {
  margin-top: 8px;
  padding: 8px 10px;
  background: #fdecea;
  border: 1px solid #f5c2c0;
  border-radius: 6px;
  color: #b71c1c;
  font-size: 1.25rem; }
  .checkout-error:empty {
    display: none; }

.fulfillment-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border: 1px solid var(--blue-light);
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 16px; }

.fulfillment-tab {
  appearance: none;
  background: #fff;
  border: none;
  border-right: 1px solid var(--blue-light);
  padding: 12px 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 1.35rem;
  color: #333;
  transition: background 0.2s ease, color 0.2s ease; }
  .fulfillment-tab__radio {
    width: 18px;
    height: 18px;
    min-width: 18px;
    border-radius: 999px;
    border: 2px solid var(--blue-dark);
    background: #fff;
    position: relative;
    transition: border-color 0.2s ease, background 0.2s ease; }
    .fulfillment-tab__radio::after {
      content: "";
      position: absolute;
      inset: 2px;
      border-radius: 999px;
      background: transparent;
      transition: background 0.2s ease;
      width: 10px;
      height: 10px; }
  .fulfillment-tab:last-child {
    border-right: none; }
  .fulfillment-tab:hover {
    background: var(--blue-medium); }
  .fulfillment-tab i,
  .fulfillment-tab .fulfillment-tab__icon {
    font-size: 1.6rem;
    color: #888;
    transition: color 0.2s ease; }
  .fulfillment-tab--active {
    background: var(--blue-selected) !important;
    color: #fff; }
    .fulfillment-tab--active .fulfillment-tab__radio {
      border-color: #fff;
      background: rgba(255, 255, 255, 0); }
      .fulfillment-tab--active .fulfillment-tab__radio::after {
        background: #fff; }
    .fulfillment-tab--active i,
    .fulfillment-tab--active .fulfillment-tab__icon {
      color: #fff; }
  .fulfillment-tab--disabled {
    opacity: .65; }
    .fulfillment-tab--disabled .fulfillment-tab__radio {
      border-color: #c7d1dc;
      background: #f5f7fa; }

.fulfillment-panel {
  display: none; }
  .fulfillment-panel--active {
    display: block; }

.address-picker {
  display: flex;
  flex-direction: column;
  gap: 8px; }

.address-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--blue-light);
  border-radius: 8px;
  cursor: pointer;
  background: #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease; }
  .address-card:hover {
    border-color: var(--blue-selected); }
  .address-card__radio {
    position: relative;
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid var(--blue-dark);
    margin-top: 2px; }
    .address-card__radio::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: var(--blue-selected);
      transform: translate(-50%, -50%) scale(0);
      opacity: 0;
      transition: transform 0.15s ease, opacity 0.15s ease; }
  .address-card--selected {
    border-color: var(--blue-selected);
    box-shadow: inset 0 0 0 1px var(--blue-selected); }
    .address-card--selected .address-card__radio {
      border-color: var(--blue-selected); }
    .address-card--selected .address-card__radio::after {
      opacity: 1;
      transform: translate(-50%, -50%) scale(1); }
  .address-card__body {
    flex: 1;
    font-size: 1.3rem;
    color: #333; }
  .address-card__name {
    font-weight: 600;
    margin-bottom: 2px; }
  .address-card__lines {
    color: #555;
    line-height: 1.4; }
  .address-card__actions {
    margin-top: 4px;
    font-size: 1.2rem; }
    .address-card__actions a {
      color: var(--blue-dark);
      cursor: pointer;
      margin-right: 8px; }
      .address-card__actions a:hover {
        text-decoration: underline; }

.address-add-btn {
  appearance: none;
  background: #fff;
  border: 1px dashed var(--blue-light);
  border-radius: 8px;
  padding: 12px;
  cursor: pointer;
  color: var(--blue-selected);
  font-size: 1.3rem;
  text-align: left;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: border-color 0.2s ease, background 0.2s ease; }
  .address-add-btn:hover {
    border-color: var(--blue-selected);
    background: var(--blue-medium); }
  .address-add-btn i {
    font-size: 1.2rem; }

.checkout-address-form {
  display: flex;
  flex-direction: column; }
  .checkout-address-form__fields {
    display: flex;
    flex-direction: column; }
  .checkout-address-form__actions {
    display: flex;
    justify-content: flex-end; }

.delivery-modes-title {
  font-size: 1.4rem;
  font-weight: 600;
  margin: 0 0 8px;
  color: var(--blue-dark); }

.delivery-modes-hint {
  padding: 12px;
  border: 1px dashed var(--blue-light);
  border-radius: 8px;
  background: #fafafa;
  color: #666;
  font-size: 1.3rem;
  text-align: center; }

.delivery-mode-list {
  display: flex;
  flex-direction: column;
  gap: 8px; }

.delivery-mode-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--blue-light);
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease; }
  .delivery-mode-card:hover {
    border-color: var(--blue-selected); }
  .delivery-mode-card__radio {
    position: relative;
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid var(--blue-dark); }
    .delivery-mode-card__radio::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: var(--blue-selected);
      transform: translate(-50%, -50%) scale(0);
      opacity: 0;
      transition: transform 0.15s ease, opacity 0.15s ease; }
  .delivery-mode-card--selected {
    border-color: var(--blue-selected);
    box-shadow: inset 0 0 0 1px var(--blue-selected); }
    .delivery-mode-card--selected .delivery-mode-card__radio {
      border-color: var(--blue-selected); }
    .delivery-mode-card--selected .delivery-mode-card__radio::after {
      opacity: 1;
      transform: translate(-50%, -50%) scale(1); }
  .delivery-mode-card__main {
    flex: 1; }
  .delivery-mode-card__name {
    font-weight: 600;
    font-size: 1.35rem;
    color: #333; }
  .delivery-mode-card__sub {
    margin-top: 2px;
    font-size: 1.2rem;
    color: #666; }
  .delivery-mode-card__price {
    font-weight: 600;
    font-size: 1.35rem;
    color: var(--blue-dark); }

.payment-methods-block,
.billing-address-block,
.remember-me-block {
  margin-bottom: 16px; }
  .payment-methods-block .checkout-block__subtitle,
  .billing-address-block .checkout-block__subtitle,
  .remember-me-block .checkout-block__subtitle {
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--blue-dark);
    margin: 0 0 8px; }

.billing-same-label {
  display: inline-flex;
  align-items: center;
  margin-bottom: 10px; }

.billing-optional-hint {
  font-size: 1.2rem;
  color: #888;
  font-style: italic; }

.billing-address-header {
  margin-bottom: 6px; }

.payment-picker {
  display: flex;
  flex-direction: column;
  gap: 8px; }

.payment-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--blue-light);
  border-radius: var(--border-radius-little);
  cursor: pointer;
  background: #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease; }
  .payment-card:hover {
    border-color: var(--blue-selected); }
  .payment-card__radio {
    position: relative;
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid var(--blue-dark);
    margin-top: 2px; }
    .payment-card__radio::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: var(--blue-selected);
      transform: translate(-50%, -50%) scale(0);
      opacity: 0;
      transition: transform 0.15s ease, opacity 0.15s ease; }
  .payment-card--selected {
    border-color: var(--blue-selected);
    box-shadow: inset 0 0 0 1px var(--blue-selected); }
    .payment-card--selected .payment-card__radio {
      border-color: var(--blue-selected); }
    .payment-card--selected .payment-card__radio::after {
      opacity: 1;
      transform: translate(-50%, -50%) scale(1); }
  .payment-card__icon {
    flex-shrink: 0;
    width: 28px;
    text-align: center;
    font-size: 1.7rem;
    color: var(--blue-dark);
    margin-top: 1px; }
  .payment-card__body {
    flex: 1;
    font-size: 1.3rem;
    color: #333;
    text-align: left; }
  .payment-card__title {
    font-weight: 600;
    margin-bottom: 2px; }
  .payment-card__details {
    color: #555;
    line-height: 1.4; }
  .payment-card__badge {
    display: inline-block;
    background-color: var(--blue-selected);
    border-radius: 4px;
    padding: 0 6px;
    color: #fff;
    font-size: 1.1rem;
    margin-left: 6px; }
  .payment-card__actions {
    margin-top: 4px;
    font-size: 1.2rem; }
    .payment-card__actions a {
      color: var(--blue-dark);
      cursor: pointer;
      margin-right: 8px; }
      .payment-card__actions a:hover {
        text-decoration: underline; }

.inline-card-form .card-form-actions {
  display: none !important; }

.pickup-info {
  border: 1px solid var(--blue-light);
  border-radius: 8px;
  padding: 12px;
  background: #fafafa; }
  .pickup-info__name {
    font-weight: 600;
    font-size: 1.35rem;
    color: var(--blue-dark); }
  .pickup-info__address {
    margin-top: 2px;
    font-size: 1.3rem;
    color: #555;
    line-height: 1.4; }
  .pickup-info__time {
    margin-top: 4px;
    font-size: 1.25rem;
    color: #666; }

.checkout-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 1050; }
  .checkout-modal[aria-hidden="false"] {
    display: block; }
  .checkout-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45); }
  .checkout-modal__dialog {
    position: relative;
    max-width: 500px;
    margin: 60px auto;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 6px 30px rgba(0, 0, 0, 0.25);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 120px); }
    @media (max-width: 575px) {
      .checkout-modal__dialog {
        margin: 20px 12px;
        max-height: calc(100vh - 40px); } }
  .checkout-modal__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid var(--blue-light); }
  .checkout-modal__title {
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0;
    color: var(--blue-dark); }
  .checkout-modal__close {
    appearance: none;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1.8rem;
    color: #666;
    padding: 0 4px; }
    .checkout-modal__close:hover {
      color: var(--blue-dark); }
  .checkout-modal__body {
    padding: 16px;
    overflow-y: auto; }

body.checkout-modal-open {
  overflow: hidden; }

.checkout-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px;
  color: #666;
  font-size: 1.3rem; }
  .checkout-loader .lds-ring {
    width: 22px;
    height: 22px; }
    .checkout-loader .lds-ring div {
      width: 18px;
      height: 18px;
      border-width: 2px; }
  .checkout-loader__text {
    font-style: italic; }

.d-flex {
  display: flex; }

.flex-column {
  flex-direction: column; }

#deliveryModeContainerValue.is-loading,
#paymentModeContainer.is-loading {
  position: relative; }
  #deliveryModeContainerValue.is-loading > *:not(.checkout-loader),
  #paymentModeContainer.is-loading > *:not(.checkout-loader) {
    opacity: 0.45;
    pointer-events: none; }
  #deliveryModeContainerValue.is-loading .checkout-loader,
  #paymentModeContainer.is-loading .checkout-loader {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.6); }

.productTotalIncludingTaxes.price-loading .price-loading__text {
  display: inline-block;
  font-style: italic;
  color: #888;
  font-size: 0.85em;
  font-weight: normal;
  animation: price-loading-pulse 1.2s ease-in-out infinite; }

@keyframes price-loading-pulse {
  0%, 100% {
    opacity: 0.45; }
  50% {
    opacity: 1; } }
.checkout-summary-sticky {
  position: relative; }
  .checkout-summary-sticky .summary-loader-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: rgba(255, 255, 255, 0.7);
    color: #444;
    font-size: 1.3rem;
    font-style: italic;
    z-index: 5;
    border-radius: inherit;
    pointer-events: none; }
    .checkout-summary-sticky .summary-loader-overlay .lds-ring {
      width: 22px;
      height: 22px; }
      .checkout-summary-sticky .summary-loader-overlay .lds-ring div {
        width: 18px;
        height: 18px;
        border-width: 2px; }
    .checkout-summary-sticky .summary-loader-overlay__text {
      animation: price-loading-pulse 1.2s ease-in-out infinite; }

.ui-autocomplete {
  z-index: 30000 !important; }

.row-wrapper, #page-render-container {
  width: 100%;
  display: flex;
  flex-direction: column; }
  .row-wrapper .container-fluid, #page-render-container .container-fluid {
    display: flex;
    justify-content: center;
    max-width: 100vw; }
  .row-wrapper .btn, #page-render-container .btn {
    display: block; }
  .row-wrapper p, #page-render-container p {
    margin-bottom: 0px; }

.row-wrapper {
  justify-content: center;
  position: relative; }

.builder-newsletter-form {
  gap: 10px;
  display: flex; }
  .builder-newsletter-form input {
    flex: 1; }

.constructor .entete {
  top: 60px; }

/* --- Base des éléments --- */
.builder-element {
  position: relative;
  min-height: 50px;
  /* Important : donne du corps aux éléments vides */
  transition: all 0.1s ease;
  /* On utilise outline au lieu de border pour ne pas décaler les pixels */
  outline: 2px dashed transparent;
  outline-offset: -2px;
  /* L'outline est À L'INTÉRIEUR de la boite */
  cursor: pointer;
  display: flex; }

/* --- L'astuce "Hit Box" (Zone de clic) --- */
/* Cela crée une couche invisible par-dessus l'élément pour capter la souris partout */
.builder-element::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  /* Laisse passer les clics vers le texte/image */
  z-index: 1; }

/* --- Styles au survol (Classes ajoutées par JS) --- */
/* LIGNE : Bleu */
.builder-element.hover-row {
  outline: 2px solid #007bff60;
  z-index: 3; }
  .builder-element.hover-row .spacing-overlay {
    display: block !important;
    border-color: rgba(0, 123, 255, 0.2); }

.type-widget.edit-selection {
  outline: 4px solid #ffc107 !important;
  z-index: 2; }

.type-widget {
  display: inline-block;
  box-sizing: border-box;
  position: relative; }

*, *::before, *::after {
  box-sizing: border-box; }

/* Pour que la toolbar passe au-dessus */
.builder-element.hover-row > .builder-toolbar {
  display: flex;
  background-color: #007bff;
  z-index: 3; }

.type-row.edit-selection {
  outline: 4px solid #007bff !important;
  z-index: 2; }

.type-row {
  overflow-x: clip;
  overflow-y: visible; }
  .type-row:hover .add-col-btn-container {
    display: block; }

.clr-picker {
  z-index: 2000; }

.clr-field {
  border-radius: Min(var(--border-radius-little), 10px);
  overflow: hidden; }
  .clr-field button {
    border-radius: Min(var(--border-radius-little), 10px);
    margin: 0px 2px;
    height: calc(100% - 4px);
    width: 50px; }
  .clr-field input {
    padding: 5px; }

/* COLONNE : Vert */
.builder-element.hover-col {
  outline: 2px solid #28a745;
  z-index: 3;
  /* Passe au-dessus de la ligne */ }
  .builder-element.hover-col .spacing-overlay {
    display: block !important;
    border-color: rgba(40, 167, 69, 0.2);
    /* Fond vert un peu plus visible */ }

div[data-wtype="newsletter"] {
  width: 100%;
  max-width: 600px; }

div[data-wtype="contact"] {
  width: 100%;
  max-width: 600px; }

.builder-contact-form {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-direction: column; }

.type-col {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column; }

.type-col.edit-selection {
  outline: 4px solid #28a745 !important;
  z-index: 2; }

.builder-element.hover-col > .builder-toolbar {
  display: flex;
  background-color: #28a745; }

/* WIDGET : Orange */
.builder-element.hover-widget {
  outline: 2px solid #ffc107;
  z-index: 3;
  /* Passe au-dessus de la colonne */ }
  .builder-element.hover-widget .spacing-overlay {
    display: block !important;
    border-color: rgba(255, 193, 7, 0.2);
    /* Fond orange */ }

.builder-element.hover-widget > .builder-toolbar {
  display: flex;
  background-color: #ffc107;
  color: #000; }

/* --- La Toolbar (inchangée mais z-index augmenté) --- */
.builder-toolbar {
  display: none;
  position: absolute;
  top: 0px;
  /* Un peu plus compact */
  left: 50%;
  height: 30px;
  transform: translateX(-50%);
  z-index: 100;
  /* Toujours tout au-dessus */
  color: white;
  padding: 5px 10px;
  border-radius: 4px;
  box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
  align-items: center; }

.type-widget .builder-toolbar {
  top: -22px; }

.builder-add-section {
  bottom: 0px;
  top: unset;
  right: unset;
  left: 50%;
  transform: translateX(-50%);
  align-items: center;
  height: 30px;
  border-radius: 3px;
  width: auto;
  align-content: center;
  justify-content: center;
  justify-self: center;
  cursor: pointer; }
  .builder-add-section span {
    margin: 0px 5px; }

.type-widget .builder-toolbar.builder-add-section {
  bottom: -22px;
  top: unset; }

.builder-add-column {
  right: 0px;
  bottom: unset;
  left: unset;
  top: 50%;
  transform: translateY(-50%);
  align-items: center;
  height: auto;
  width: 30px;
  align-content: center;
  justify-content: center;
  justify-self: center;
  cursor: pointer;
  flex-direction: column; }
  .builder-add-column span {
    margin: 3px 0px; }

.toolbar-col {
  left: 0px;
  bottom: unset;
  right: unset;
  top: 50%;
  transform: translateY(-50%);
  align-items: center;
  height: auto;
  width: 30px;
  align-content: center;
  justify-content: center;
  justify-self: center;
  cursor: pointer;
  flex-direction: column; }
  .toolbar-col span {
    margin: 3px 0px; }

.builder-toolbar-text {
  font-size: 1rem; }

.btn-add-first-widget {
  margin: 5px; }

.builder-btn {
  margin-left: 8px;
  cursor: pointer;
  opacity: 0.8; }

.builder-btn:hover {
  opacity: 1;
  transform: scale(1.1); }

.builder-principal-btn {
  cursor: pointer;
  height: 60px;
  padding: 0px 20px;
  background: rgba(255, 255, 255, 0.15); }
  .builder-principal-btn:hover {
    background: rgba(255, 255, 255, 0.2); }

.builder-secondary-btn {
  cursor: pointer;
  padding: 6px 15px;
  background: rgba(255, 255, 255, 0.15);
  border-radius: Min(5px, var(--border-radius-little));
  color: white; }
  .builder-secondary-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    color: white !important;
    opacity: 1 !important; }

.container-link {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  inset: 0;
  z-index: 1; }

.constructor .container-link {
  pointer-events: none; }

.row-section {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  height: 100%;
  justify-content: flex-start;
  width: 100%; }
  .row-section .col-12 {
    display: inline-flex; }

.nav-tabs {
  --bs-nav-tabs-border-color: transparent;
  --bs-nav-tabs-link-hover-border-color: transparent;
  --bs-nav-tabs-link-active-color: var(--blue-selected);
  --bs-nav-tabs-link-active-bg: transparent;
  --bs-nav-tabs-link-active-border-color: transparent;
  border-bottom: transparent; }

.nav {
  --bs-nav-link-color: transparent;
  --bs-nav-link-hover-color: transparent;
  --bs-nav-link-disabled-color: transparent; }

#lbl-upload-file {
  text-align: right; }

.ui-sortable-placeholder {
  border: 2px dashed #ccc;
  background: #f9f9f9;
  visibility: visible !important;
  min-height: 50px;
  margin-bottom: 15px; }

.container-fluid {
  padding: 0px;
  border: 0px solid transparent; }

#configModal {
  z-index: 1;
  position: sticky;
  left: 0;
  top: 60px;
  width: 350px;
  height: calc(100vh - 60px);
  color: white;
  padding: 15px;
  overflow-y: auto;
  overflow-x: hidden;
  text-align: left;
  background-color: var(--blue-dim); }
  #configModal input, #configModal textarea, #configModal select {
    padding: 5px 5px;
    min-height: 36px; }

.config-tab {
  margin-bottom: 16px;
  padding-top: 20px;
  border-top: 1px solid #ffffff30; }

.config-tab-title {
  font-weight: bold;
  font-size: 1.7rem;
  margin-bottom: 0px;
  display: inline-block; }
  .config-tab-title.with-margin {
    margin-bottom: 20px; }

.config-label {
  opacity: 0.8;
  font-size: 1.3rem;
  margin-bottom: 5px;
  margin-top: 20px;
  display: inline-block; }

.config-value {
  margin-top: 20px; }

.config-range .config-label, .config-range .config-value {
  margin-top: 0px; }

.anim {
  opacity: 0;
  will-change: transform, opacity; }

.anim.is-visible {
  /* L'animation reprend la main sur l'opacité */
  animation-duration: 0.6s;
  animation-fill-mode: both;
  /* Reste visible à la fin */
  animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

/* 1. Depuis le bas (Fade Up) */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 40px, 0); }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }
.anim.is-visible.anim-bottom {
  animation-name: fadeInUp; }

/* 2. Depuis la gauche (Slide Right) */
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-150px, 0, 0); }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }
.anim.is-visible.anim-left {
  animation-name: fadeInLeft; }

/* 3. Depuis la droite (Slide Left) */
@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(150px, 0, 0); }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }
.anim.is-visible.anim-right {
  animation-name: fadeInRight; }

.marquee-rtl, .marquee-ltr {
  overflow-x: clip;
  position: relative; }
  .marquee-rtl:hover .type-col, .marquee-ltr:hover .type-col {
    animation-play-state: paused; }
  .marquee-rtl > .type-col, .marquee-rtl.type-widget > span, .marquee-rtl.type-widget > h2, .marquee-rtl.type-widget > button, .marquee-rtl.type-widget > h2, .marquee-ltr > .type-col, .marquee-ltr.type-widget > span, .marquee-ltr.type-widget > h2, .marquee-ltr.type-widget > button, .marquee-ltr.type-widget > h2 {
    flex-direction: row !important;
    width: auto !important;
    padding-left: 100% !important;
    /* un peu d'espace pour la transition */
    padding-right: 2em !important;
    /* placement à droite du conteneur */
    white-space: nowrap;
    /* pas de passage à la ligne */
    animation: defilement-rtl 0s infinite linear;
    animation-duration: inherit;
    animation-timing-function: linear !important;
    justify-content: flex-end !important; }
    .marquee-rtl > .type-col .type-widget, .marquee-rtl.type-widget > span .type-widget, .marquee-rtl.type-widget > h2 .type-widget, .marquee-rtl.type-widget > button .type-widget, .marquee-rtl.type-widget > h2 .type-widget, .marquee-ltr > .type-col .type-widget, .marquee-ltr.type-widget > span .type-widget, .marquee-ltr.type-widget > h2 .type-widget, .marquee-ltr.type-widget > button .type-widget, .marquee-ltr.type-widget > h2 .type-widget {
      width: auto !important; }

.marquee-ltr > .type-col, .marquee-ltr.type-widget > span, .marquee-ltr.type-widget > h2, .marquee-ltr.type-widget > button, .marquee-ltr.type-widget > h2 {
  animation: defilement-ltr 0s infinite linear;
  padding-left: 100% !important;
  /* un peu d'espace pour la transition */
  padding-right: 2em !important;
  /* placement à droite du conteneur */
  justify-content: flex-start !important; }

/* 4. Depuis le centre (Zoom In) */
@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale(0.8); }
  to {
    opacity: 1;
    transform: scale(1); } }
@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@keyframes defilement-rtl {
  from {
    transform: translate3d(0, 0, 0); }
  to {
    transform: translate3d(-100%, 0, 0); } }
@keyframes defilement-ltr {
  from {
    transform: translate3d(-100%, 0, 0); }
  to {
    transform: translate3d(0, 0, 0); } }
.anim.is-visible.anim-center {
  animation-name: zoomIn; }

.anim.is-visible.anim-opacity {
  animation-name: fadeIn; }

.section-parallax {
  position: relative;
  overflow: hidden;
  /* Important : cache ce qui dépasse */
  height: auto;
  background-attachment: fixed; }

.section-parallax .row-section {
  will-change: transform;
  /* Optimisation GPU */ }

.config-label.flex-1 {
  margin-bottom: 0px; }

#page-render-preview {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center; }

.img-preview-container {
  position: relative; }

.img-preview {
  max-height: 100px;
  max-width: 100%;
  object-fit: contain;
  margin: 5px;
  border-radius: 5px; }
  .img-preview button {
    position: absolute;
    top: 5px;
    left: 5px;
    width: 25px;
    height: 25px;
    padding: 0px; }

.btn-group {
  column-gap: 0px;
  background: var(--blue-light);
  border-radius: Min(var(--border-radius-little), 10px);
  padding: 3px; }
  .btn-group .btn {
    padding: 7px;
    background-color: transparent;
    color: var(--blue-dim) !important;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: Min(var(--border-radius-little), 10px); }
    .btn-group .btn:hover {
      background-color: transparent !important;
      color: var(--blue-selected) !important; }

.btn-check:checked + .btn {
  background-color: transparent;
  color: var(--blue-selected) !important;
  background: color-mix(in srgb, var(--blue-selected) 25%, transparent 0%) !important;
  border: 1px solid color-mix(in srgb, var(--blue-selected) 5%, transparent 0%); }

.importBtn {
  position: absolute;
  width: 50px;
  height: 50px;
  bottom: 5px;
  right: 5px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: Min(var(--border-radius-little), 10px) !important;
  cursor: pointer; }
  .importBtn:after {
    border-radius: 0px Min(var(--border-radius-little), 10px) Min(var(--border-radius-little), 10px) 0px !important; }
  .importBtn:before {
    background: var(--blue-light);
    opacity: 1;
    border-radius: 0; }

.preview-image-container {
  position: relative;
  background: var(--blue-light);
  border-radius: Min(var(--border-radius-little), 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  height: 110px; }

.form-switch .form-check-input:focus {
  border-color: rgba(0, 0, 0, 0.25);
  outline: 0;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba(0,0,0,0.25)'/></svg>"); }

.form-switch .form-check-input:checked {
  background-color: var(--blue-selected);
  border-color: var(--blue-selected);
  border: none;
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba(255,255,255,1.0)'/></svg>"); }

@media (max-width: 767px) {
  .revert-order {
    flex-direction: column-reverse; } }

.caroussel-arrow-left, .caroussel-arrow-right {
  display: inline-flex;
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
  z-index: 10;
  width: 40px;
  height: 40px;
  background: var(--blue-light);
  border-radius: var(--border-radius-medium);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer; }
  .caroussel-arrow-left:before, .caroussel-arrow-right:before {
    content: '\f060';
    font-family: 'Font Awesome 6 Pro';
    color: var(--text-color); }

.caroussel-arrow-right {
  left: unset;
  right: 0px; }
  .caroussel-arrow-right:before {
    content: '\f061'; }

input[type="range"] {
  accent-color: var(--blue-selected); }

@media (min-width: 768px) {
  .visible-xs {
    display: none !important; } }

.add-widget-btn-container .btn-add-widget, .add-col-btn-container .btn-add-widget {
  background-color: #ffc107;
  padding: 5px 10px;
  border-radius: 5px; }

.add-col-btn-container .btn-add-widget {
  background-color: #28a745;
  color: white; }

.hover.hover-background:hover {
  background: var(--hover-background) !important;
  transition: background var(--hover-duration) cubic-bezier(0.25, 0.46, 0.45, 0.94) !important; }

.hover.hover-color:hover {
  color: var(--hover-color) !important;
  border-color: var(--hover-color) !important;
  transition: color var(--hover-duration) cubic-bezier(0.25, 0.46, 0.45, 0.94), border var(--hover-duration) cubic-bezier(0.25, 0.46, 0.45, 0.94) !important; }

.hover.hover-zoom-in:hover {
  transform: scale(1.05);
  transition: transform var(--hover-duration) cubic-bezier(0.25, 0.46, 0.45, 0.94) !important; }

.hover.hover-zoom-out:hover {
  transform: scale(1.05);
  transition: transform var(--hover-duration) cubic-bezier(0.25, 0.46, 0.45, 0.94) !important; }

.editor-container .editor-toolbar {
  display: flex;
  flex-direction: row;
  padding: 6px 10px 10px;
  border-bottom: 1px solid var(--blue-medium);
  margin: 0px -10px; }
.editor-container .editor {
  margin: 10px 0px;
  min-height: 150px; }
  .editor-container .editor:focus {
    outline: none; }
.editor-container #output {
  display: none; }

.btn-tool {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 4px;
  transition: all 0.2s;
  color: #374151;
  border: 0px;
  margin-right: 6px;
  background: transparent; }

.btn-tool:hover {
  background-color: #f3f4f6; }

.btn-tool.active {
  color: var(--blue-selected) !important; }

::-webkit-scrollbar {
  width: 8px; }

::-webkit-scrollbar-track {
  background: #f1f1f1; }

::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 4px; }

.tool-select {
  height: 40px;
  background-color: white;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  padding: 0 8px;
  font-size: 14px;
  color: #374151;
  cursor: pointer;
  outline: none; }

.tool-select:focus {
  border-color: #3b82f6; }

.color-picker-wrapper {
  position: relative;
  width: 40px;
  height: 40px;
  overflow: hidden;
  border-radius: 4px;
  border: 1px solid #d1d5db; }

.color-picker-wrapper input[type="color"] {
  position: absolute;
  top: -5px;
  left: -5px;
  width: 50px;
  height: 50px;
  cursor: pointer;
  border: none;
  background: none; }

.pdt-0 {
  padding-top: 0; }

.pdt-5 {
  padding-top: 5px; }

.pdt-10 {
  padding-top: 10px; }

.pdt-15 {
  padding-top: 15px; }

.pdt-20 {
  padding-top: 20px; }

.pdt-25 {
  padding-top: 25px; }

.pdt-30 {
  padding-top: 30px; }

.pdt-35 {
  padding-top: 35px; }

.pdt-40 {
  padding-top: 40px; }

.pdt-45 {
  padding-top: 45px; }

.pdt-50 {
  padding-top: 50px; }

.pdt-55 {
  padding-top: 55px; }

.pdt-60 {
  padding-top: 60px; }

.pdt-65 {
  padding-top: 65px; }

.pdt-70 {
  padding-top: 70px; }

.pdt-75 {
  padding-top: 75px; }

.pdt-80 {
  padding-top: 80px; }

.pdt-85 {
  padding-top: 85px; }

.pdt-90 {
  padding-top: 90px; }

.pdt-95 {
  padding-top: 95px; }

.pdt-100 {
  padding-top: 100px; }

.pdr-0 {
  padding-right: 0; }

.pdr-5 {
  padding-right: 5px; }

.pdr-10 {
  padding-right: 10px; }

.pdr-15 {
  padding-right: 15px; }

.pdr-20 {
  padding-right: 20px; }

.pdr-25 {
  padding-right: 25px; }

.pdr-30 {
  padding-right: 30px; }

.pdr-35 {
  padding-right: 35px; }

.pdr-40 {
  padding-right: 40px; }

.pdr-45 {
  padding-right: 45px; }

.pdr-50 {
  padding-right: 50px; }

.pdr-55 {
  padding-right: 55px; }

.pdr-60 {
  padding-right: 60px; }

.pdr-65 {
  padding-right: 65px; }

.pdr-70 {
  padding-right: 70px; }

.pdr-75 {
  padding-right: 75px; }

.pdr-80 {
  padding-right: 80px; }

.pdr-85 {
  padding-right: 85px; }

.pdr-90 {
  padding-right: 90px; }

.pdr-95 {
  padding-right: 95px; }

.pdr-100 {
  padding-right: 100px; }

.pdb-0 {
  padding-bottom: 0; }

.pdb-5 {
  padding-bottom: 5px; }

.pdb-10 {
  padding-bottom: 10px; }

.pdb-15 {
  padding-bottom: 15px; }

.pdb-20 {
  padding-bottom: 20px; }

.pdb-25 {
  padding-bottom: 25px; }

.pdb-30 {
  padding-bottom: 30px; }

.pdb-35 {
  padding-bottom: 35px; }

.pdb-40 {
  padding-bottom: 40px; }

.pdb-45 {
  padding-bottom: 45px; }

.pdb-50 {
  padding-bottom: 50px; }

.pdb-55 {
  padding-bottom: 55px; }

.pdb-60 {
  padding-bottom: 60px; }

.pdb-65 {
  padding-bottom: 65px; }

.pdb-70 {
  padding-bottom: 70px; }

.pdb-75 {
  padding-bottom: 75px; }

.pdb-80 {
  padding-bottom: 80px; }

.pdb-85 {
  padding-bottom: 85px; }

.pdb-90 {
  padding-bottom: 90px; }

.pdb-95 {
  padding-bottom: 95px; }

.pdb-100 {
  padding-bottom: 100px; }

.pdl-0 {
  padding-left: 0; }

.pdl-5 {
  padding-left: 5px; }

.pdl-10 {
  padding-left: 10px; }

.pdl-15 {
  padding-left: 15px; }

.pdl-20 {
  padding-left: 20px; }

.pdl-25 {
  padding-left: 25px; }

.pdl-30 {
  padding-left: 30px; }

.pdl-35 {
  padding-left: 35px; }

.pdl-40 {
  padding-left: 40px; }

.pdl-45 {
  padding-left: 45px; }

.pdl-50 {
  padding-left: 50px; }

.pdl-55 {
  padding-left: 55px; }

.pdl-60 {
  padding-left: 60px; }

.pdl-65 {
  padding-left: 65px; }

.pdl-70 {
  padding-left: 70px; }

.pdl-75 {
  padding-left: 75px; }

.pdl-80 {
  padding-left: 80px; }

.pdl-85 {
  padding-left: 85px; }

.pdl-90 {
  padding-left: 90px; }

.pdl-95 {
  padding-left: 95px; }

.pdl-100 {
  padding-left: 100px; }

@media (max-width: 767px) {
  /* TOP */
  .pdt-20 {
    padding-top: 15px; }

  .pdt-25 {
    padding-top: 16px; }

  .pdt-30 {
    padding-top: 18px; }

  .pdt-35 {
    padding-top: 20px; }

  .pdt-40 {
    padding-top: 22px; }

  .pdt-45 {
    padding-top: 24px; }

  .pdt-50 {
    padding-top: 26px; }

  .pdt-55 {
    padding-top: 28px; }

  .pdt-60 {
    padding-top: 30px; }

  .pdt-65 {
    padding-top: 32px; }

  .pdt-70 {
    padding-top: 34px; }

  .pdt-75 {
    padding-top: 35px; }

  .pdt-80 {
    padding-top: 36px; }

  .pdt-85 {
    padding-top: 37px; }

  .pdt-90 {
    padding-top: 38px; }

  .pdt-95 {
    padding-top: 39px; }

  .pdt-100 {
    padding-top: 40px; }

  /* RIGHT */
  .pdr-20 {
    padding-right: 15px; }

  .pdr-25 {
    padding-right: 16px; }

  .pdr-30 {
    padding-right: 18px; }

  .pdr-35 {
    padding-right: 20px; }

  .pdr-40 {
    padding-right: 22px; }

  .pdr-45 {
    padding-right: 24px; }

  .pdr-50 {
    padding-right: 26px; }

  .pdr-55 {
    padding-right: 28px; }

  .pdr-60 {
    padding-right: 30px; }

  .pdr-65 {
    padding-right: 32px; }

  .pdr-70 {
    padding-right: 34px; }

  .pdr-75 {
    padding-right: 35px; }

  .pdr-80 {
    padding-right: 36px; }

  .pdr-85 {
    padding-right: 37px; }

  .pdr-90 {
    padding-right: 38px; }

  .pdr-95 {
    padding-right: 39px; }

  .pdr-100 {
    padding-right: 40px; }

  /* BOTTOM */
  .pdb-20 {
    padding-bottom: 15px; }

  .pdb-25 {
    padding-bottom: 16px; }

  .pdb-30 {
    padding-bottom: 18px; }

  .pdb-35 {
    padding-bottom: 20px; }

  .pdb-40 {
    padding-bottom: 22px; }

  .pdb-45 {
    padding-bottom: 24px; }

  .pdb-50 {
    padding-bottom: 26px; }

  .pdb-55 {
    padding-bottom: 28px; }

  .pdb-60 {
    padding-bottom: 30px; }

  .pdb-65 {
    padding-bottom: 32px; }

  .pdb-70 {
    padding-bottom: 34px; }

  .pdb-75 {
    padding-bottom: 35px; }

  .pdb-80 {
    padding-bottom: 36px; }

  .pdb-85 {
    padding-bottom: 37px; }

  .pdb-90 {
    padding-bottom: 38px; }

  .pdb-95 {
    padding-bottom: 39px; }

  .pdb-100 {
    padding-bottom: 40px; }

  /* LEFT */
  .pdl-20 {
    padding-left: 15px; }

  .pdl-25 {
    padding-left: 16px; }

  .pdl-30 {
    padding-left: 18px; }

  .pdl-35 {
    padding-left: 20px; }

  .pdl-40 {
    padding-left: 22px; }

  .pdl-45 {
    padding-left: 24px; }

  .pdl-50 {
    padding-left: 26px; }

  .pdl-55 {
    padding-left: 28px; }

  .pdl-60 {
    padding-left: 30px; }

  .pdl-65 {
    padding-left: 32px; }

  .pdl-70 {
    padding-left: 34px; }

  .pdl-75 {
    padding-left: 35px; }

  .pdl-80 {
    padding-left: 36px; }

  .pdl-85 {
    padding-left: 37px; }

  .pdl-90 {
    padding-left: 38px; }

  .pdl-95 {
    padding-left: 39px; }

  .pdl-100 {
    padding-left: 40px; } }
/* TOP */
.mgt-0 {
  margin-top: 0; }

.mgt-5 {
  margin-top: 5px; }

.mgt-10 {
  margin-top: 10px; }

.mgt-15 {
  margin-top: 15px; }

.mgt-20 {
  margin-top: 20px; }

.mgt-25 {
  margin-top: 25px; }

.mgt-30 {
  margin-top: 30px; }

.mgt-35 {
  margin-top: 35px; }

.mgt-40 {
  margin-top: 40px; }

.mgt-45 {
  margin-top: 45px; }

.mgt-50 {
  margin-top: 50px; }

.mgt-55 {
  margin-top: 55px; }

.mgt-60 {
  margin-top: 60px; }

.mgt-65 {
  margin-top: 65px; }

.mgt-70 {
  margin-top: 70px; }

.mgt-75 {
  margin-top: 75px; }

.mgt-80 {
  margin-top: 80px; }

.mgt-85 {
  margin-top: 85px; }

.mgt-90 {
  margin-top: 90px; }

.mgt-95 {
  margin-top: 95px; }

.mgt-100 {
  margin-top: 100px; }

/* BOTTOM */
.mgb-0 {
  margin-bottom: 0; }

.mgb-5 {
  margin-bottom: 5px; }

.mgb-10 {
  margin-bottom: 10px; }

.mgb-15 {
  margin-bottom: 15px; }

.mgb-20 {
  margin-bottom: 20px; }

.mgb-25 {
  margin-bottom: 25px; }

.mgb-30 {
  margin-bottom: 30px; }

.mgb-35 {
  margin-bottom: 35px; }

.mgb-40 {
  margin-bottom: 40px; }

.mgb-45 {
  margin-bottom: 45px; }

.mgb-50 {
  margin-bottom: 50px; }

.mgb-55 {
  margin-bottom: 55px; }

.mgb-60 {
  margin-bottom: 60px; }

.mgb-65 {
  margin-bottom: 65px; }

.mgb-70 {
  margin-bottom: 70px; }

.mgb-75 {
  margin-bottom: 75px; }

.mgb-80 {
  margin-bottom: 80px; }

.mgb-85 {
  margin-bottom: 85px; }

.mgb-90 {
  margin-bottom: 90px; }

.mgb-95 {
  margin-bottom: 95px; }

.mgb-100 {
  margin-bottom: 100px; }

/* LEFT */
.mgl-0 {
  margin-left: 0; }

.mgl-5 {
  margin-left: 5px; }

.mgl-10 {
  margin-left: 10px; }

.mgl-15 {
  margin-left: 15px; }

.mgl-20 {
  margin-left: 20px; }

.mgl-25 {
  margin-left: 25px; }

.mgl-30 {
  margin-left: 30px; }

.mgl-35 {
  margin-left: 35px; }

.mgl-40 {
  margin-left: 40px; }

.mgl-45 {
  margin-left: 45px; }

.mgl-50 {
  margin-left: 50px; }

.mgl-55 {
  margin-left: 55px; }

.mgl-60 {
  margin-left: 60px; }

.mgl-65 {
  margin-left: 65px; }

.mgl-70 {
  margin-left: 70px; }

.mgl-75 {
  margin-left: 75px; }

.mgl-80 {
  margin-left: 80px; }

.mgl-85 {
  margin-left: 85px; }

.mgl-90 {
  margin-left: 90px; }

.mgl-95 {
  margin-left: 95px; }

.mgl-100 {
  margin-left: 100px; }

/* RIGHT */
.mgr-0 {
  margin-right: 0; }

.mgr-5 {
  margin-right: 5px; }

.mgr-10 {
  margin-right: 10px; }

.mgr-15 {
  margin-right: 15px; }

.mgr-20 {
  margin-right: 20px; }

.mgr-25 {
  margin-right: 25px; }

.mgr-30 {
  margin-right: 30px; }

.mgr-35 {
  margin-right: 35px; }

.mgr-40 {
  margin-right: 40px; }

.mgr-45 {
  margin-right: 45px; }

.mgr-50 {
  margin-right: 50px; }

.mgr-55 {
  margin-right: 55px; }

.mgr-60 {
  margin-right: 60px; }

.mgr-65 {
  margin-right: 65px; }

.mgr-70 {
  margin-right: 70px; }

.mgr-75 {
  margin-right: 75px; }

.mgr-80 {
  margin-right: 80px; }

.mgr-85 {
  margin-right: 85px; }

.mgr-90 {
  margin-right: 90px; }

.mgr-95 {
  margin-right: 95px; }

.mgr-100 {
  margin-right: 100px; }

/* ===========================
   MOBILE ADAPTATION
   =========================== */
@media (max-width: 767px) {
  /* Margin TOP — réduction douce */
  .mgt-20 {
    margin-top: 18px; }

  .mgt-30 {
    margin-top: 24px; }

  .mgt-40 {
    margin-top: 30px; }

  .mgt-50 {
    margin-top: 36px; }

  .mgt-60 {
    margin-top: 42px; }

  .mgt-70 {
    margin-top: 48px; }

  .mgt-80 {
    margin-top: 52px; }

  .mgt-90 {
    margin-top: 56px; }

  .mgt-100 {
    margin-top: 60px; }

  /* Margin BOTTOM — séparé */
  .mgb-20 {
    margin-bottom: 18px; }

  .mgb-30 {
    margin-bottom: 24px; }

  .mgb-40 {
    margin-bottom: 30px; }

  .mgb-50 {
    margin-bottom: 36px; }

  .mgb-60 {
    margin-bottom: 42px; }

  .mgb-70 {
    margin-bottom: 48px; }

  .mgb-80 {
    margin-bottom: 52px; }

  .mgb-90 {
    margin-bottom: 56px; }

  .mgb-100 {
    margin-bottom: 60px; }

  /* Margin LEFT / RIGHT — réduction plus forte */
  .mgl-20 {
    margin-left: 15px; }

  .mgl-30 {
    margin-left: 18px; }

  .mgl-40 {
    margin-left: 22px; }

  .mgl-50 {
    margin-left: 26px; }

  .mgl-60 {
    margin-left: 30px; }

  .mgl-70 {
    margin-left: 34px; }

  .mgl-80 {
    margin-left: 36px; }

  .mgl-90 {
    margin-left: 38px; }

  .mgl-100 {
    margin-left: 40px; }

  .mgr-20 {
    margin-right: 15px; }

  .mgr-30 {
    margin-right: 18px; }

  .mgr-40 {
    margin-right: 22px; }

  .mgr-50 {
    margin-right: 26px; }

  .mgr-60 {
    margin-right: 30px; }

  .mgr-70 {
    margin-right: 34px; }

  .mgr-80 {
    margin-right: 36px; }

  .mgr-90 {
    margin-right: 38px; }

  .mgr-100 {
    margin-right: 40px; } }
/* ═══════════════════════════════════════════════
   core-table.css — Styles partagés CoreTable
   ═══════════════════════════════════════════════ */
:root {
  --ct-font: 'DM Sans', system-ui, sans-serif;
  --ct-mono: 'DM Mono', monospace;
  --ct-surface: #ffffff;
  --ct-page-bg: #f3f4f1;
  --ct-border: rgba(0,0,0,0.07);
  --ct-border-md: rgba(0,0,0,0.12);
  --ct-text-1: #181816;
  --ct-text-2: #5c5c58;
  --ct-text-3: #9a9a94;
  --ct-accent: #1D9E75;
  --ct-accent-hover: #0F6E56;
  --ct-r-sm: 6px;
  --ct-r-md: 8px;
  --ct-r-lg: 12px; }

.ct-root {
  display: flex;
  flex-direction: column;
  gap: 14px;
  font-family: var(--ct-font);
  font-size: 13px;
  color: var(--ct-text-1);
  /* Si .ct-root est lui-même un flex item d'un shell (sidebar + contenu), on
     l'autorise à rétrécir pour que le scroll horizontal reste confiné au
     tableau et ne déborde pas la page. */
  min-width: 0; }

/* ── KPIs ── */
.ct-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px; }

.ct-kpi {
  background: var(--ct-surface);
  border: 0.5px solid var(--ct-border);
  border-radius: var(--ct-r-lg);
  padding: 13px 15px;
  position: relative; }

.ct-kpi-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3);
  margin-bottom: 5px; }

.ct-kpi-val {
  font-size: 22px;
  font-weight: 500;
  font-family: var(--ct-mono);
  color: var(--ct-text-1); }

.ct-kpi-sub {
  font-size: 11px;
  color: var(--ct-text-3);
  margin-top: 2px; }

.ct-kpi-danger .ct-kpi-val {
  color: #A32D2D; }

.ct-kpi-warn .ct-kpi-val {
  color: #854F0B; }

.ct-kpi-good .ct-kpi-val {
  color: #085041; }

.ct-kpi-info .ct-kpi-val {
  color: #0C447C; }

/* ── TOOLBAR ── */
.ct-toolbar {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap; }

.ct-toolbar-actions {
  margin-left: auto;
  display: flex;
  gap: 6px; }

/* Conteneur des filtres : inline (flux toolbar) en desktop ; devient un volet
   latéral en mobile (cf. @media). Les éléments propres au volet (déclencheurs,
   en-tête, bouton « Voir les résultats », voile) sont masqués en desktop. */
.ct-filters {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap; }

.ct-filters-toggle,
.ct-bulk-toggle,
.ct-filters-apply,
.ct-drawer-header,
.ct-drawer-backdrop {
  display: none; }

.ct-toolbar-action {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 13px;
  border-radius: var(--ct-r-md);
  font-size: 12px;
  font-weight: 500;
  border: none;
  cursor: pointer;
  background: var(--ct-surface);
  color: var(--ct-text-2);
  border: 0.5px solid var(--ct-border); }
  .ct-toolbar-action:hover {
    background: var(--ct-surface-hover, #ebebeb); }
  .ct-toolbar-action.ct-toolbar-action-primary {
    background: var(--blue-selected, #4ea7e8);
    color: #fff;
    border-color: transparent; }
    .ct-toolbar-action.ct-toolbar-action-primary:hover {
      filter: brightness(0.92); }
  .ct-toolbar-action.ct-toolbar-action-warn {
    background: var(--ct-warn, #e67e22);
    color: #fff;
    border-color: transparent; }

.ct-tabs {
  display: flex;
  background: var(--ct-surface);
  border: 0.5px solid var(--ct-border);
  border-radius: var(--ct-r-md);
  overflow: hidden;
  flex-shrink: 0; }

.ct-tab {
  padding: 8px 13px;
  font-size: 12px;
  color: var(--ct-text-2);
  cursor: pointer;
  border-right: 0.5px solid var(--ct-border);
  transition: background .12s, color .12s;
  white-space: nowrap;
  user-select: none; }

.ct-tab:last-child {
  border-right: none; }

.ct-tab.active {
  background: var(--blue-selected);
  color: #fff;
  font-weight: 500; }

.ct-tab:not(.active):hover {
  background: var(--ct-page-bg); }

.ct-search-wrap {
  position: relative;
  flex: 1;
  min-width: 160px;
  max-width: 280px; }

.ct-search-icon {
  position: absolute;
  left: 9px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--ct-text-3);
  pointer-events: none;
  font-size: 14px; }

.ct-search {
  width: 100%;
  padding: 8px 10px 8px 28px;
  font-size: 12px;
  border: 0.5px solid var(--ct-border-md);
  border-radius: var(--ct-r-md);
  background: var(--ct-surface);
  color: var(--ct-text-1);
  font-family: var(--ct-font);
  outline: none;
  transition: border-color .15s; }

.ct-search:focus {
  border-color: var(--blue-selected); }

.ct-fsel {
  padding: 8px 26px 8px 10px;
  font-size: 12px;
  border: 0.5px solid var(--ct-border-md);
  border-radius: var(--ct-r-md);
  background: var(--ct-surface);
  color: var(--ct-text-2);
  font-family: var(--ct-font);
  cursor: pointer;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239a9a94' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  transition: border-color .15s;
  width: auto; }

.ct-fsel:focus {
  border-color: var(--blue-selected); }

.ct-filter-daterange {
  position: relative;
  display: inline-flex; }

.ct-drp {
  cursor: pointer;
  min-width: 200px; }

.daterangepicker {
  border: 0.5px solid var(--ct-border-md);
  border-radius: var(--ct-r-lg);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  font-family: var(--ct-font);
  color: var(--ct-text-1); }

.daterangepicker .ranges li {
  border-radius: var(--ct-r-sm);
  font-size: 12px;
  color: var(--ct-text-2); }

.daterangepicker .ranges li.active,
.daterangepicker .ranges li:hover {
  background: var(--ct-page-bg);
  color: var(--ct-text-1); }

.daterangepicker td.active,
.daterangepicker td.active:hover,
.daterangepicker .calendar-table td.in-range {
  background: color-mix(in srgb, var(--blue-selected) 14%, white);
  color: var(--ct-text-1); }

.daterangepicker td.start-date,
.daterangepicker td.end-date,
.daterangepicker td.start-date:hover,
.daterangepicker td.end-date:hover {
  background: var(--blue-selected);
  color: #fff; }

.daterangepicker .drp-buttons .btn {
  border-radius: var(--ct-r-sm);
  font-size: 12px; }

/* ── BULK BAR ── */
.ct-bulk-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  background: var(--ct-surface);
  border: 0.5px solid var(--ct-border);
  border-radius: var(--ct-r-md);
  animation: ct-slide-in .15s ease; }

@keyframes ct-slide-in {
  from {
    opacity: 0;
    transform: translateY(-4px); }
  to {
    opacity: 1;
    transform: translateY(0); } }
/* Volet latéral mobile : glissé depuis le bord droit */
@keyframes ct-drawer-in {
  from {
    transform: translateX(100%); }
  to {
    transform: translateX(0); } }
/* Voile du volet : fondu d'apparition */
@keyframes ct-fade-in {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
.ct-bulk-count {
  font-size: 12px;
  font-weight: 500;
  color: var(--blue-selected); }

.ct-bulk-actions {
  display: flex;
  gap: 6px;
  margin-left: 4px; }

.ct-bulk-btn {
  padding: 4px 10px;
  font-size: 12px;
  border: 0.5px solid var(--ct-border-md);
  border-radius: var(--ct-r-sm);
  background: var(--ct-surface);
  color: var(--ct-text-1);
  cursor: pointer;
  font-family: var(--ct-font);
  transition: background .12s; }

.ct-bulk-btn:hover {
  background: var(--ct-page-bg); }

.ct-bulk-clear {
  margin-left: auto;
  font-size: 11px;
  color: var(--ct-text-3);
  cursor: pointer;
  border: none;
  background: none;
  font-family: var(--ct-font);
  padding: 4px 6px;
  border-radius: var(--ct-r-sm);
  transition: color .12s; }

.ct-bulk-clear:hover {
  color: var(--ct-text-2); }

/* ── TABLE ── */
.ct-table-wrap {
  background: var(--ct-surface);
  border: 0.5px solid var(--ct-border);
  border-radius: var(--ct-r-lg);
  /* Débordement horizontal : si trop de colonnes pour la largeur dispo, le
     tableau dépasse son min-width et le conteneur défile latéralement plutôt
     que d'écraser les colonnes. */
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  /* .ct-root est un conteneur flex (colonne) ; sans ceci, ce flex item garderait
     min-width:auto (= largeur de son contenu) et refuserait de rétrécir, faisant
     déborder la page entière → double barre de défilement. min-width:0 le laisse
     rétrécir à la largeur dispo, son overflow-x gérant seul le scroll interne. */
  min-width: 0; }

.ct-table {
  /* width:100% pour remplir quand ça tient ; min-width (calculé en JS depuis la
     somme des largeurs de colonnes, exposé via --ct-table-min-w) comme plancher :
     dès que la largeur dispo passe sous ce plancher, le tableau garde sa largeur
     naturelle et .ct-table-wrap défile. */
  width: 100%;
  min-width: var(--ct-table-min-w, 0);
  border-collapse: collapse;
  table-layout: fixed; }

.ct-th {
  padding: 9px 12px;
  text-align: left;
  font-size: 10px;
  font-weight: 500;
  color: var(--text-color);
  background: var(--blue-medium);
  border-bottom: 0.5px solid var(--ct-border);
  text-transform: uppercase;
  letter-spacing: .07em;
  white-space: nowrap;
  user-select: none; }

.ct-th-r {
  text-align: right; }

.ct-th-cb {
  width: 34px;
  padding: 9px 0px;
  background: var(--blue-medium);
  border-bottom: 0.5px solid var(--ct-border);
  text-align: right; }

/* Sans colonne de gauche (ni checkbox ni chevron — classe .ct-no-lead posée par le JS
   quand il n'y a pas d'action de masse ni de groupes) : on redonne 16px de marge à
   gauche sur la 1re colonne (en-tête + corps), sinon le contenu colle au bord du
   tableau. Desktop uniquement (en mobile, le tableau devient des cartes). */
@media (min-width: 768px) {
  .ct-table.ct-no-lead > thead > tr > th:first-child,
  .ct-table.ct-no-lead > tbody > tr > td:first-child {
    padding-left: 16px; } }
.ct-th-act {
  background: var(--blue-medium);
  border-bottom: 0.5px solid var(--ct-border); }

.ct-sortable {
  cursor: pointer; }

.ct-sortable:hover {
  color: var(--ct-text-1); }

.ct-sort-icon {
  margin-left: 4px;
  opacity: .4;
  font-size: 10px; }

.ct-sortable:hover .ct-sort-icon {
  opacity: .7; }

tbody tr {
  border-bottom: 0.5px solid var(--ct-border);
  transition: background .1s;
  cursor: pointer; }

tbody tr:last-child {
  border-bottom: none; }

tbody tr:hover {
  background: #f9fdf9; }

tbody tr:hover .ct-row-actions {
  opacity: 1; }

td {
  padding: 9px 12px;
  overflow: hidden;
  text-overflow: unset;
  white-space: wrap;
  vertical-align: middle; }

.ct-td-r {
  text-align: right;
  justify-content: flex-end; }
  .ct-td-r * {
    justify-content: flex-end; }

.ct-empty {
  text-align: center;
  padding: 32px;
  color: var(--ct-text-3);
  font-style: italic;
  font-size: 13px; }

/* ── FOOTER ── */
.ct-foot {
  padding: 9px 16px;
  background: var(--blue-medium);
  border-top: 0.5px solid var(--ct-border);
  font-size: 11px;
  color: var(--text-color);
  display: flex;
  align-items: center;
  justify-content: space-between; }

/* Quand le tableau déborde et que .ct-table-wrap défile horizontalement, la
   barre de pied reste épinglée à gauche (toujours visible) au lieu de défiler
   avec les colonnes. */
.ct-table-wrap > .ct-foot {
  position: sticky;
  left: 0; }

tfoot.ct-foot {
  padding: 9px 12px;
  display: table-footer-group;
  height: 42px;
  font-size: inherit; }

.ct-pagination {
  display: flex;
  gap: 4px; }

.ct-page-btn {
  padding: 3px 8px;
  font-size: 11px;
  border: 0.5px solid var(--ct-border-md);
  border-radius: var(--ct-r-sm);
  background: var(--ct-surface);
  color: var(--ct-text-2);
  cursor: pointer;
  font-family: var(--ct-font);
  transition: background .12s; }

.ct-page-btn.active {
  background: var(--blue-selected);
  color: #fff;
  border-color: var(--blue-selected); }

.ct-page-btn:hover:not(.active) {
  background: var(--ct-page-bg); }

/* ── ROW ACTIONS ── */
.ct-row-actions {
  opacity: 0;
  display: flex;
  gap: 4px;
  justify-content: flex-end;
  transition: opacity .12s; }

.ct-act-btn {
  padding: 3px 7px;
  font-size: 11px;
  border: 0.5px solid var(--ct-border-md);
  border-radius: var(--ct-r-sm);
  background: var(--ct-surface);
  color: var(--ct-text-2);
  cursor: pointer;
  font-family: var(--ct-font);
  transition: background .1s;
  white-space: nowrap; }

.ct-act-btn:hover {
  background: var(--ct-page-bg); }

/* ── ROW ACTIONS MENU (3-points) ── */
.ct-row-menu-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: none;
  border-radius: var(--ct-r-sm);
  background: transparent;
  cursor: pointer;
  color: var(--ct-text-2);
  font-size: 13px;
  padding: 0;
  transition: background .1s, color .1s; }
  .ct-row-menu-toggle:hover {
    background: var(--ct-page-bg);
    color: var(--ct-text-1); }

/* ── RENDERERS ── */
.ct-text {
  color: var(--ct-text-1); }

.ct-mono {
  font-family: var(--ct-mono);
  font-size: 12px;
  color: var(--ct-text-1); }

.ct-na {
  color: var(--ct-text-3);
  font-style: italic; }

.ct-name {
  font-weight: 500; }

/* Badges */
.ct-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 20px;
  font-size: 10px;
  font-weight: 500;
  white-space: nowrap; }

.ct-amount-neg {
  color: #A32D2D;
  font-weight: 600; }

.ct-amount-pos {
  color: #085041; }

.ct-badge-success {
  background: #E1F5EE;
  color: #085041; }

.ct-badge-neutral {
  background: #f1efe8;
  color: #5f5e5a; }

.ct-badge-danger {
  background: #FCEBEB;
  color: #A32D2D; }

.ct-badge-warn {
  background: #FAEEDA;
  color: #854F0B; }

.ct-badge-info {
  background: #E6F1FB;
  color: #0C447C; }

.ct-badge-purple {
  background: #EEEDFE;
  color: #3C3489; }

.ct-badge-sm {
  font-size: 9px;
  padding: 1px 5px; }

/* Margin bar */
.ct-bar-wrap {
  display: flex;
  align-items: center;
  gap: 6px; }

.ct-bar-bg {
  flex: 1;
  height: 3px;
  border-radius: 2px;
  background: var(--ct-border-md);
  overflow: hidden; }

.ct-bar-fill {
  height: 100%;
  border-radius: 2px; }

.ct-bar-high .ct-bar-fill {
  background: #1D9E75; }

.ct-bar-mid .ct-bar-fill {
  background: #EF9F27; }

.ct-bar-low .ct-bar-fill {
  background: #E24B4A; }

.ct-bar-val {
  font-family: var(--ct-mono);
  font-size: 11px;
  min-width: 34px;
  text-align: right; }

.ct-bar-high .ct-bar-val {
  color: #085041; }

.ct-bar-mid .ct-bar-val {
  color: #854F0B; }

.ct-bar-low .ct-bar-val {
  color: #A32D2D; }

/* Stock */
.ct-stock-ok {
  font-family: var(--ct-mono);
  font-size: 12px;
  color: var(--ct-text-1); }

.ct-stock-low {
  font-family: var(--ct-mono);
  font-size: 12px;
  color: #854F0B;
  font-weight: 500; }

.ct-stock-zero {
  font-family: var(--ct-mono);
  font-size: 12px;
  color: #A32D2D;
  font-weight: 500; }

/* Dates */
.ct-date-today {
  color: #085041;
  font-weight: 500; }

.ct-date-recent {
  color: #854F0B; }

/* Amounts */
.ct-amount-pos {
  font-family: var(--ct-mono);
  font-size: 12px;
  color: #085041;
  font-weight: 500; }

.ct-amount-neg {
  font-family: var(--ct-mono);
  font-size: 12px;
  color: #A32D2D;
  font-weight: 500; }

/* Avatar */
.ct-avatar {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 500;
  flex-shrink: 0; }

.ct-avatar-sm {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  font-size: 9px; }

.ct-av-name-wrap {
  display: flex;
  align-items: center;
  gap: 8px; }

.ct-av-teal {
  background: #E1F5EE;
  color: #085041; }

.ct-av-blue {
  background: #E6F1FB;
  color: #0C447C; }

.ct-av-purple {
  background: #EEEDFE;
  color: #3C3489; }

.ct-av-coral {
  background: #FAECE7;
  color: #712B13; }

.ct-av-amber {
  background: #FAEEDA;
  color: #633806; }

/* Progress */
.ct-progress-wrap {
  display: flex;
  align-items: center;
  gap: 6px; }

.ct-progress-bg {
  flex: 1;
  height: 4px;
  border-radius: 2px;
  background: var(--ct-border-md);
  overflow: hidden; }

.ct-progress-fill {
  height: 100%;
  border-radius: 2px;
  background: var(--ct-accent); }

.ct-progress-val {
  font-size: 11px;
  color: var(--ct-text-2);
  white-space: nowrap; }

/* Checkbox */
input[type=checkbox] {
  width: 13px;
  height: 13px;
  cursor: pointer;
  accent-color: var(--ct-accent); }

.ct-td-cb {
  padding: 9px 0px;
  text-align: right; }

.ct-td-cb::before {
  content: none !important; }

/* Cellule checkbox avec bouton expand intégré */
.ct-td-cb-group {
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 0px !important;
  white-space: nowrap;
  justify-content: flex-end; }

.ct-td-cb-group .ct-expand-btn {
  position: static;
  transform: none;
  width: 15px;
  height: 20px;
  flex-shrink: 0;
  font-size: 14px; }

.ct-td-cb-group .ct-expand-icon {
  font-size: 14px; }

.ct-td-cb-group input[type=checkbox] {
  flex-shrink: 0; }

/* Images */
.ct-img-wrap {
  display: inline-flex;
  align-items: center; }

.ct-img-thumb {
  width: 30px;
  height: 30px;
  border-radius: 7px;
  object-fit: cover;
  display: block;
  border: 0.5px solid var(--ct-border); }

.ct-img-placeholder {
  width: 30px;
  height: 30px;
  border-radius: 7px;
  background: var(--ct-page-bg);
  border: 0.5px solid var(--ct-border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 500;
  color: var(--ct-text-3); }

/* ═══════════════════════════════════════════════
   GROUPES & VARIANTES
   ═══════════════════════════════════════════════ */
/* Colonne expand */
.ct-th-expand {
  background: var(--blue-medium);
  border-bottom: 0.5px solid var(--ct-border);
  width: 32px;
  padding: 0; }

.ct-expand-cell {
  padding: 0 4px;
  text-align: center; }

.ct-expand-btn {
  width: 22px;
  height: 22px;
  border: none;
  background: none;
  cursor: pointer;
  border-radius: 4px;
  color: var(--ct-text-3);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background .12s, color .12s; }

.ct-expand-btn:hover {
  background: var(--ct-page-bg);
  color: var(--ct-text-1); }

.ct-expand-icon {
  font-size: 10px; }

/* Chevron « détail » des lignes normales : seulement utile en mobile (sur desktop toutes les colonnes sont visibles) */
.ct-row-expand {
  display: none; }

/* Ligne parente */
.ct-group-parent {
  background: var(--ct-surface); }

.ct-group-parent.ct-group-open {
  background: #f4fbf7; }

/* ═══════════════════════════════════════════════
   COLONNES GELÉES (sticky) — défilement horizontal
   La case à cocher + les colonnes verrouillées (locked) restent collées à
   gauche, la colonne d'actions reste collée à droite quand le tableau déborde.
   Chaque type de ligne expose sa couleur via --ct-row-bg ; les cellules gelées
   la reprennent pour rester opaques au-dessus des colonnes qui défilent dessous.
   Neutralisé en mobile (cartes) — cf. @media.
   ═══════════════════════════════════════════════ */
tbody tr {
  --ct-row-bg: var(--ct-surface); }

.ct-group-parent {
  --ct-row-bg: var(--ct-surface); }

.ct-group-parent.ct-group-open {
  --ct-row-bg: #f4fbf7; }

.ct-variant-row {
  --ct-row-bg: #f4fbf7; }

tbody tr:hover {
  --ct-row-bg: #f9fdf9; }

.ct-variant-row:hover {
  --ct-row-bg: #ecf8f2; }

.ct-table-wrap .ct-sticky {
  position: sticky;
  z-index: 1;
  background: var(--ct-row-bg, var(--ct-surface)); }

.ct-sticky-left {
  left: var(--ct-sl, 0px); }

.ct-sticky-right {
  right: 0; }

/* En-têtes gelés : fond du thead, au-dessus des cellules gelées du corps */
.ct-table-wrap th.ct-sticky {
  background: var(--blue-medium);
  z-index: 3; }

/* Ombres de bord — seulement quand le tableau défile réellement
   (.ct-scrollable posée par le JS). Indiquent qu'il y a du contenu masqué. */
.ct-table-wrap.ct-scrollable .ct-sticky-edge {
  box-shadow: 6px 0 8px -6px rgba(0, 0, 0, 0.18); }

.ct-table-wrap.ct-scrollable .ct-sticky-right {
  box-shadow: -6px 0 8px -6px rgba(0, 0, 0, 0.18); }

/* Ligne variante */
.ct-variant-row {
  background: #f4fbf7; }

.ct-variant-row:hover {
  background: #ecf8f2; }

/* Séparateur après la dernière variante du groupe */
.ct-variant-last {
  border-bottom: 1.5px solid rgba(29, 158, 117, 0.2) !important; }

/* Cellule connecteur — trait vertical vert, pas d'image sur les variantes */
.ct-variant-connector {
  padding: 0 !important;
  width: 38px;
  position: relative;
  text-align: center; }

.ct-variant-connector::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 1.5px;
  background: rgba(29, 158, 117, 0.22);
  transform: translateX(-50%);
  pointer-events: none; }

/* Sur la dernière variante, le trait s'arrête à mi-hauteur */
.ct-variant-last .ct-variant-connector::before {
  bottom: 50%; }

/* Retrait + tiret sur la première colonne texte des variantes */
.ct-variant-name-wrap {
  display: flex;
  align-items: center;
  gap: 6px;
  padding-left: 18px;
  position: relative; }

.ct-variant-name-wrap::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 50%;
  width: 10px;
  height: 1px;
  background: rgba(29, 158, 117, 0.45);
  transform: translateY(-50%); }

/* Tag déclinaison */
.ct-decl-tag {
  display: inline-flex;
  align-items: center;
  padding: 1px 7px;
  border-radius: 4px;
  font-size: 11px;
  background: var(--ct-page-bg);
  color: var(--ct-text-2);
  border: 0.5px solid var(--ct-border-md);
  white-space: nowrap; }

/* Label de variante (concaténation des déclinaisons) */
.ct-variant-label {
  color: var(--ct-text-1);
  font-weight: 400; }

/* Colonnes spécifiques variante — masquées (intégrées dans le label) */
.ct-variant-specific {
  color: var(--ct-text-3);
  font-size: 11px; }

/* Prix range */
.ct-price-range {
  font-size: 11px;
  color: var(--ct-text-2); }

/* ═══════════════════════════════════════════════
   ÉDITION INLINE
   ═══════════════════════════════════════════════ */
.ct-td-editable {
  cursor: pointer; }

.ct-td-editable:hover .ct-editable-display {
  text-decoration: underline;
  text-decoration-style: dashed;
  text-underline-offset: 2px; }

.ct-editable-wrap {
  display: flex;
  align-items: center;
  gap: 6px;
  position: relative; }

.ct-editable-display {
  cursor: pointer; }

.ct-editable-input {
  width: 64px;
  padding: 3px 6px;
  font-size: 12px;
  font-family: var(--ct-mono);
  border: 1px solid var(--ct-accent);
  border-radius: var(--ct-r-sm);
  background: var(--ct-surface);
  color: var(--ct-text-1);
  outline: none; }

.ct-save-spinner {
  font-size: 13px;
  color: var(--ct-accent);
  animation: ct-spin .8s linear infinite;
  display: inline-block; }

@keyframes ct-spin {
  to {
    transform: rotate(360deg); } }
.ct-saving {
  opacity: .6; }

/* ── Export dropdown ── */
#ct-export-menu {
  background: var(--ct-surface, #fff);
  border: 0.5px solid var(--ct-border-md, rgba(0, 0, 0, 0.12));
  border-radius: var(--ct-r-lg, 12px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  min-width: 200px;
  font-family: var(--ct-font, sans-serif); }

.ct-export-item {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 14px;
  font-size: 13px;
  color: var(--ct-text-1, #181816);
  cursor: pointer;
  transition: background .1s;
  border-bottom: 0.5px solid var(--ct-border, rgba(0, 0, 0, 0.07)); }

.ct-export-item:last-child {
  border-bottom: none; }

.ct-export-item:hover {
  background: var(--ct-page-bg, #f3f4f1); }

.ct-export-item svg {
  flex-shrink: 0;
  color: var(--ct-text-2, #5c5c58); }

.ct-export-hint {
  margin-left: auto;
  font-size: 10px;
  color: var(--ct-text-3, #9a9a94); }

/* ═══════════════════════════════════════════════
   CoreColumnPicker.css
   ═══════════════════════════════════════════════ */
.ccp-panel {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 200;
  width: 300px;
  height: 100vh;
  background: var(--ct-surface, #fff);
  border: 0.5px solid var(--ct-border-md, rgba(0, 0, 0, 0.12));
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
  font-family: var(--ct-font, sans-serif);
  font-size: 13px;
  text-align: left;
  font-weight: normal; }

/* ── Header ── */
.ccp-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px 10px;
  border-bottom: 0.5px solid var(--ct-border, rgba(0, 0, 0, 0.07));
  flex-shrink: 0; }

.ccp-title {
  font-weight: 500;
  font-size: 13px; }

.ccp-header-actions {
  display: flex;
  align-items: center;
  gap: 8px; }

.ccp-btn-reset {
  font-size: 11px;
  color: var(--ct-accent, #1D9E75);
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--ct-font, sans-serif);
  padding: 2px 4px;
  border-radius: 4px;
  transition: background .12s; }

.ccp-btn-reset:hover {
  background: var(--ct-accent-bg, #E1F5EE); }

.ccp-btn-close {
  font-size: 12px;
  color: var(--ct-text-3, #9a9a94);
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--ct-font, sans-serif);
  width: 22px;
  height: 22px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .12s, color .12s; }

.ccp-btn-close:hover {
  background: var(--ct-page-bg, #f3f4f1);
  color: var(--ct-text-1, #181816); }

/* ── Body ── */
.ccp-body {
  overflow-y: auto;
  flex: 1;
  padding: 8px 0;
  scrollbar-width: thin; }

.ccp-body::-webkit-scrollbar {
  width: 4px; }

.ccp-body::-webkit-scrollbar-thumb {
  background: var(--ct-border-md, rgba(0, 0, 0, 0.12));
  border-radius: 4px; }

/* ── Groupes ── */
.ccp-group {
  margin-bottom: 2px; }

.ccp-group-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 14px 4px; }

.ccp-group-name {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3, #9a9a94);
  font-weight: 500; }

.ccp-group-toggle {
  font-size: 10px;
  color: var(--ct-accent, #1D9E75);
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--ct-font, sans-serif);
  padding: 1px 4px;
  border-radius: 3px;
  transition: background .12s; }

.ccp-group-toggle:hover {
  background: var(--ct-accent-bg, #E1F5EE); }

.ccp-group-items {
  padding: 0 6px; }

/* ── Items ── */
.ccp-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 5px 8px;
  border-radius: var(--ct-r-sm, 6px);
  cursor: pointer;
  user-select: none;
  transition: background .1s; }

.ccp-item:hover {
  background: var(--ct-page-bg, #f3f4f1); }

.ccp-item.ccp-locked {
  opacity: .6;
  cursor: default; }

.ccp-item.ccp-locked:hover {
  background: none; }

.ccp-item input[type=checkbox] {
  width: 13px;
  height: 13px;
  cursor: pointer;
  accent-color: var(--ct-accent, #1D9E75);
  flex-shrink: 0; }

.ccp-item.ccp-locked input {
  cursor: default; }

.ccp-item-label {
  flex: 1;
  font-size: 12px;
  color: var(--ct-text-1, #181816);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.ccp-locked-badge {
  font-size: 9px;
  color: var(--ct-text-3, #9a9a94);
  background: var(--ct-page-bg, #f3f4f1);
  border: 0.5px solid var(--ct-border-md, rgba(0, 0, 0, 0.12));
  padding: 1px 5px;
  border-radius: 20px;
  flex-shrink: 0; }

/* ── Footer ── */
.ccp-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  border-top: 0.5px solid var(--ct-border, rgba(0, 0, 0, 0.07));
  flex-shrink: 0; }

.ccp-count {
  font-size: 11px;
  color: var(--ct-text-3, #9a9a94); }

.ccp-btn-apply {
  padding: 6px 14px;
  font-size: 12px;
  font-weight: 500;
  font-family: var(--ct-font, sans-serif);
  background: var(--ct-accent, #1D9E75);
  color: #fff;
  border: none;
  border-radius: var(--ct-r-md, 8px);
  cursor: pointer;
  transition: background .12s; }

.ccp-btn-apply:hover {
  background: var(--ct-accent-hover, #0F6E56); }

/* ── Bouton auto-créé par CoreColumnPicker.init({ el }) ── */
.ccp-trigger-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  background: transparent;
  border: 0.5px solid var(--ct-border-md, rgba(0, 0, 0, 0.12));
  border-radius: var(--ct-r-md, 8px);
  color: var(--ct-text-2, #5c5c58);
  cursor: pointer;
  transition: background .12s, color .12s, transform .2s;
  flex-shrink: 0;
  margin: 0 5px; }

.ccp-trigger-btn:hover {
  background: var(--ct-page-bg, #f3f4f1); }

.ccp-trigger-btn.active {
  background: var(--ct-accent-bg, #E1F5EE);
  color: var(--ct-accent, #1D9E75);
  border-color: var(--ct-accent, #1D9E75); }

/* ── Onglets de mode (Sélection / Ordre) ── */
.ccp-mode-tabs {
  display: flex;
  border-bottom: 0.5px solid var(--ct-border, rgba(0, 0, 0, 0.07));
  flex-shrink: 0; }

.ccp-mode-tab {
  flex: 1;
  padding: 7px 10px;
  font-size: 12px;
  font-family: var(--ct-font, sans-serif);
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  color: var(--ct-text-3, #9a9a94);
  cursor: pointer;
  transition: color .12s, border-color .12s;
  margin-bottom: -0.5px; }

.ccp-mode-tab:hover {
  color: var(--ct-text-1, #181816); }

.ccp-mode-tab.active {
  color: var(--ct-accent, #1D9E75);
  border-bottom-color: var(--ct-accent, #1D9E75);
  font-weight: 500; }

/* ── Mode "Ordre" ── */
.ccp-order-hint {
  font-size: 11px;
  color: var(--ct-text-3, #9a9a94);
  padding: 8px 14px 4px;
  font-style: italic; }

.ccp-order-list {
  padding: 4px 6px; }

.ccp-order-separator {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3, #9a9a94);
  padding: 10px 14px 4px;
  font-weight: 500; }

.ccp-order-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border-radius: var(--ct-r-sm, 6px);
  cursor: grab;
  user-select: none;
  transition: background .1s;
  border: 1px solid transparent; }

.ccp-order-item:hover {
  background: var(--ct-page-bg, #f3f4f1); }

.ccp-order-item.ccp-dragging {
  opacity: .4;
  cursor: grabbing; }

.ccp-order-item.ccp-drag-over {
  background: var(--ct-accent-bg, #E1F5EE);
  border-color: var(--ct-accent, #1D9E75); }

.ccp-order-item.ccp-order-locked {
  cursor: default; }

.ccp-order-item.ccp-order-locked:hover {
  background: none; }

.ccp-order-item.ccp-order-hidden {
  opacity: .4;
  cursor: default; }

.ccp-order-item.ccp-order-hidden:hover {
  background: none; }

.ccp-drag-handle {
  font-size: 14px;
  color: var(--ct-text-3, #9a9a94);
  flex-shrink: 0;
  line-height: 1; }

.ccp-order-label {
  flex: 1;
  font-size: 12px;
  color: var(--ct-text-1, #181816);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

/* ── POS Order Modal (pom-*) — design CoreTable ─────────────── */
.modal-body {
  text-align: left; }

.pom-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 8px;
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px solid var(--ct-border-md); }

.pom-hero-left {
  display: flex;
  flex-direction: column;
  gap: 3px; }

.pom-hero-amount {
  font-family: var(--ct-mono);
  font-size: 26px;
  font-weight: 600;
  color: var(--ct-text-1);
  letter-spacing: -.5px;
  line-height: 1; }

.pom-hero-sub {
  font-size: 12px;
  color: var(--ct-text-3); }

.pom-meta {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px 8px;
  background: var(--blue-light);
  border-radius: var(--ct-r-lg);
  padding: 14px 16px;
  margin-bottom: 20px; }
  @media (max-width: 480px) {
    .pom-meta {
      grid-template-columns: 1fr 1fr; } }

.pom-mi {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0; }

.pom-mi-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3);
  white-space: nowrap; }

.pom-mi-val {
  font-size: 13px;
  font-weight: 500;
  color: var(--ct-text-1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.pom-section-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3);
  margin: 0 0 8px; }

.pom-lines {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  margin-bottom: 2px; }
  .pom-lines thead th {
    padding: 0 10px 8px;
    font-size: 11px;
    font-weight: 500;
    color: var(--ct-text-3);
    text-align: left;
    border-bottom: 1px solid var(--ct-border-md); }
    .pom-lines thead th:first-child {
      padding-left: 0; }
    .pom-lines thead th:last-child {
      padding-right: 0;
      text-align: right; }
  .pom-lines tbody td {
    padding: 9px 10px;
    border-bottom: 1px solid var(--ct-border);
    vertical-align: middle;
    color: var(--ct-text-1); }
    .pom-lines tbody td:first-child {
      padding-left: 0; }
    .pom-lines tbody td:last-child {
      padding-right: 0;
      text-align: right;
      font-family: var(--ct-mono); }
  .pom-lines tbody tr:last-child td {
    border-bottom: none; }

.pom-thumb {
  width: 36px !important;
  height: 36px !important;
  border-radius: var(--ct-r-sm) !important;
  flex-shrink: 0;
  font-size: 13px !important; }

.pom-article-cell {
  display: flex;
  align-items: center;
  gap: 10px; }

.pom-article-info {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0; }

.pom-line-name {
  display: block;
  font-weight: 500; }

.pom-line-sub {
  display: block;
  font-size: 11px;
  color: var(--ct-text-3);
  margin-top: 1px; }

.pom-line-disc {
  display: block;
  font-size: 11px;
  color: #A32D2D;
  margin-top: 1px; }

.pom-summary {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 5px;
  border-top: 1px solid var(--ct-border-md);
  padding-top: 12px;
  margin-top: 4px; }

.pom-sum-row {
  display: flex;
  gap: 24px;
  font-size: 12px;
  color: var(--ct-text-2); }
  .pom-sum-row span:last-child {
    min-width: 72px;
    text-align: right;
    font-family: var(--ct-mono); }

.pom-sum-reste {
  color: #A32D2D; }

.pom-sum-total {
  display: flex;
  gap: 24px;
  align-items: baseline;
  font-size: 13px;
  font-weight: 600;
  color: var(--ct-text-1);
  margin-top: 3px; }
  .pom-sum-total span:last-child {
    min-width: 72px;
    text-align: right;
    font-family: var(--ct-mono);
    font-size: 17px;
    font-weight: 700;
    color: var(--blue-selected); }

/* ── Ticket Detail Modal (ticket-detail-*) ───────────────────────── */
.ticket-detail {
  color: var(--ct-text-1);
  font-family: var(--ct-font); }
  .ticket-detail .ct-kpis {
    margin-bottom: 16px; }
  .ticket-detail .ct-table-wrap {
    margin: 0;
    border-radius: var(--ct-r-lg);
    box-shadow: none;
    overflow-x: auto; }
  .ticket-detail .ct-table td,
  .ticket-detail .ct-table th {
    vertical-align: middle;
    white-space: nowrap; }
  .ticket-detail .ct-table td.ticket-detail-product {
    min-width: 200px;
    white-space: normal; }
  .ticket-detail .ct-badge-color {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600; }

.ticket-detail-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 18px;
  margin-bottom: 20px;
  padding: 14px 16px;
  border-radius: var(--ct-r-lg);
  background: var(--ct-page-bg); }

.ticket-detail-meta-item {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
  font-size: 13px; }
  .ticket-detail-meta-item strong {
    font-family: var(--ct-mono);
    font-weight: 500; }

.ticket-detail-meta-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3);
  white-space: nowrap; }

.ticket-detail-section {
  margin-top: 18px; }

.ticket-detail-section-title {
  margin: 0 0 8px;
  font-size: 10px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3); }

@media (max-width: 767px) {
  .ticket-detail-meta {
    grid-template-columns: 1fr; } }
/* ── Supplier Invoice Create Form (si-*) ─────────────────────────── */
.si-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 16px;
  margin-bottom: 16px; }
  .si-form-grid .dynInput, .si-form-grid .dynDropDown {
    margin-bottom: 0; }
  .si-form-grid .si-full {
    grid-column: 1 / -1; }

.si-notes-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-top: 6px; }

.si-label-static {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3);
  font-weight: 500;
  margin: 0; }

.si-textarea {
  resize: vertical;
  min-height: 70px;
  font-family: var(--ct-font);
  font-size: 13px; }

.si-payment-section {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--ct-border-md); }

.si-payment-title {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3);
  font-weight: 500;
  margin-bottom: 10px; }

.si-payment-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 16px; }
  .si-payment-grid .dynInput, .si-payment-grid .dynDropDown {
    margin-bottom: 0; }
  .si-payment-grid .si-payment-full {
    grid-column: 1 / -1; }

.si-file-zone {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  background: var(--ct-page-bg);
  border-radius: var(--ct-r-md);
  border: 1px dashed var(--ct-border-md);
  margin-bottom: 14px; }

.si-file-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ct-text-3);
  font-weight: 500;
  white-space: nowrap; }

.si-file-btn {
  font-family: var(--ct-font);
  font-size: 12px;
  padding: 4px 10px;
  border-radius: var(--ct-r-md);
  border: 1px solid var(--ct-border-md);
  background: var(--ct-surface);
  color: var(--ct-text-2);
  cursor: pointer;
  white-space: nowrap;
  transition: border-color .15s, color .15s; }
  .si-file-btn:hover {
    border-color: var(--blue-selected);
    color: var(--blue-selected); }
  .si-file-btn i {
    margin-right: 4px; }

.si-file-name {
  font-size: 12px;
  color: var(--ct-text-2);
  font-family: var(--ct-font);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.si-error {
  background: #fef2f2;
  border: 1px solid #fca5a5;
  color: #b91c1c;
  border-radius: var(--ct-r-md);
  padding: 8px 12px;
  font-size: 12px;
  margin-bottom: 12px; }

.si-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--ct-border-md); }

@media (max-width: 600px) {
  .si-form-grid {
    grid-template-columns: 1fr; } }
/* ── Orders Sales Modal (.orderDetailsContent) ───────────────────── */
.modal-body .orderDetailsContent {
  font-family: var(--ct-font);
  font-size: 13px;
  color: var(--ct-text-1); }
  .modal-body .orderDetailsContent hr {
    border-color: var(--ct-border-md);
    margin: 12px 0; }
  .modal-body .orderDetailsContent .light-Container {
    background: var(--ct-page-bg);
    border-radius: var(--ct-r-lg);
    border: none; }
  .modal-body .orderDetailsContent .excludindLabelStyle {
    font-family: var(--ct-mono); }
  .modal-body .orderDetailsContent b {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--ct-text-3);
    font-weight: 500; }

/* ═══════════════════════════════════════════════
   CORETABLE — MOBILE (cartes label : valeur)
   Chaque ligne devient une carte. Lignes normales (.ct-row) :
   titre en bandeau + badge de statut + ligne résumé visibles
   repliés ; le chevron révèle les colonnes de détail.
   Groupes/variantes : disposition « bande » conservée.
   ═══════════════════════════════════════════════ */
@media (max-width: 767px) {
  /* Le wrap devient un simple conteneur transparent : chaque ligne porte sa propre bordure */
  .ct-table-wrap {
    background: none;
    border: none;
    border-radius: 0;
    overflow: visible; }

  /* Colonnes gelées : neutralisées en vue cartes (le positionnement des cartes
     reprend la main). Placé tôt pour que les règles de carte (case/vignette/
     action en position absolue, posées plus bas) restent prioritaires. */
  .ct-table-wrap .ct-sticky {
    position: static;
    left: auto;
    right: auto;
    z-index: auto;
    background: none;
    box-shadow: none; }

  .ct-table {
    display: block;
    width: 100%;
    /* En cartes, on annule le plancher desktop (--ct-table-min-w) pour éviter
       un débordement horizontal parasite. */
    min-width: 0;
    table-layout: auto; }

  .ct-table colgroup,
  .ct-table thead {
    display: none; }

  .ct-table tbody {
    display: block; }

  /* Ligne → carte (générique : groupes & variantes) */
  .ct-table tbody tr {
    display: block;
    position: relative;
    background: var(--ct-surface);
    border: 0.5px solid var(--ct-border);
    border-radius: var(--ct-r-md);
    margin-bottom: 10px;
    padding: 34px 12px 8px; }

  .ct-table tbody tr:last-child {
    border-bottom: 0.5px solid var(--ct-border); }

  .ct-table tbody tr:hover {
    background: var(--ct-surface); }

  /* Cellule de données → ligne « label : valeur » */
  .ct-table td {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 5px 0;
    border: none;
    white-space: normal;
    overflow: visible;
    text-align: left; }

  .ct-table td::before {
    content: attr(data-label);
    flex-shrink: 0;
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--ct-text-3); }

  /* Cellules sans libellé (images de variante, ligne vide…) : pas de préfixe */
  .ct-table td[data-label=""]::before,
  .ct-table td:not([data-label])::before {
    content: none; }

  /* Colonnes détail masquées tant que la ligne n'est pas dépliée */
  .ct-table .ct-td-secondary {
    display: none; }

  /* Lignes normales ET cartes variantes révèlent leurs détails au dépliage.
     Un parent de groupe déplie ses sous-cartes variantes (rendues à part),
     pas ses propres colonnes — qui restent masquées sur mobile. */
  .ct-table .ct-row.ct-row-open .ct-td-secondary,
  .ct-table .ct-variant-row.ct-variant-open .ct-td-secondary {
    display: flex; }

  /* Conserver libellé à gauche / valeur à droite même sur les colonnes alignées à droite */
  .ct-table .ct-td-r {
    justify-content: space-between; }

  /* Bande supérieure : checkbox + chevron à gauche */
  .ct-table .ct-td-cb {
    position: absolute;
    top: 8px;
    left: 10px;
    width: auto;
    padding: 0; }

  /* Chevron : MASQUÉ pour les lignes normales (le clic sur la carte révèle
     ses détails) ; CONSERVÉ pour les parents de groupe afin de signaler
     qu'il y a des variantes à dérouler (+ son état ouvert/fermé).
     Les actions restent accessibles via les boutons d'action. */
  .ct-table .ct-row-expand {
    display: none; }

  .ct-table .ct-group-parent .ct-expand-btn {
    display: inline-flex; }

  /* Actions toujours visibles (pas de hover en mobile), en haut à droite */
  .ct-table .ct-td-act {
    position: absolute;
    top: 8px;
    right: 8px;
    width: auto;
    padding: 0; }

  .ct-table .ct-td-act::before {
    content: none; }

  .ct-table .ct-row-actions {
    opacity: 1; }

  /* ── Carte « complète » : lignes normales ET parents de groupe ──
     Gabarit unique (harmonisation article simple / à variantes).
     Colonnes latérales ancrées à une position FIXE (centre de l'en-tête
     à 2 lignes, ~33px) — et NON 50% de la hauteur — pour qu'elles ne
     bougent pas quand la carte se déplie :
       • gauche : [checkbox] (+ chevron pour les groupes) puis [vignette]
       • droite : [action]
     Le clic sur la carte l'ouvre / la ferme ; le chevron (groupes) reste
     comme repère visuel des variantes.
     Zone centrale = 2 lignes empilées :
       ligne 1 → désignation (+ badge « N variantes »)
       ligne 2 → statut + métas (valeurs seules, même ligne)
     puis, sur les lignes normales dépliées, les détails (libellé : valeur). */
  .ct-table tbody tr.ct-row,
  .ct-table tbody tr.ct-group-parent {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
    column-gap: 16px;
    row-gap: 3px;
    min-height: 64px;
    cursor: pointer;
    /* gouttière gauche = checkbox seul (plus de chevron) ; élargie si vignette */
    padding: 12px 48px 12px 40px; }

  /* Ligne normale avec vignette */
  .ct-table tbody tr.ct-row:has(> .ct-td-image) {
    padding-left: 88px; }

  /* Parent de groupe : le chevron (variantes) occupe de la place à gauche,
     on décale donc la zone de contenu un peu plus. */
  .ct-table tbody tr.ct-group-parent {
    padding-left: 56px; }

  .ct-table tbody tr.ct-group-parent:has(> .ct-td-image) {
    padding-left: 90px; }

  /* Table groupee : les lignes normales adoptent la meme gouttiere gauche que
     les parents de groupe (place du chevron incluse), pour que vignettes, cases
     a cocher et contenus restent alignes d'une carte a l'autre. La vignette est
     aussi decalee a 42px comme les parents. */
  .ct-table.ct-has-groups tbody tr.ct-row {
    padding-left: 56px; }

  .ct-table.ct-has-groups tbody tr.ct-row:has(> .ct-td-image) {
    padding-left: 90px; }

  .ct-table.ct-has-groups .ct-row > .ct-td-image {
    left: 42px; }

  /* Checkbox : ancré à gauche, centré sur l'en-tête (position fixe) */
  .ct-row > .ct-td-cb,
  .ct-group-parent > .ct-td-cb {
    position: absolute;
    left: 10px;
    top: 33px;
    transform: translateY(-50%);
    width: auto;
    padding: 0; }

  .ct-row > .ct-td-cb::before,
  .ct-group-parent > .ct-td-cb::before {
    content: none; }

  /* Tables groupées : pour aligner TOUTES les cases à cocher (cartes avec
     ou sans chevron), on réserve la largeur du chevron (15px + 2px de
     gouttière) sur chaque carte, puis on sort le chevron du flux pour le
     replacer dans cette gouttière, à gauche de la case. La case ne bouge
     donc plus : elle est toujours à la même position.
     (classe .ct-has-groups posée par CoreTable dès qu'un groupBy est actif). */
  .ct-table.ct-has-groups .ct-row > .ct-td-cb,
  .ct-table.ct-has-groups .ct-group-parent > .ct-td-cb {
    padding-left: 7px; }

  .ct-table.ct-has-groups .ct-td-cb-group .ct-expand-btn {
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%); }

  /* Vignette : à droite du checkbox, centrée sur l'en-tête (position fixe) */
  .ct-row > .ct-td-image,
  .ct-group-parent > .ct-td-image {
    position: absolute;
    left: 38px;
    top: 33px;
    transform: translateY(-50%);
    width: auto;
    padding: 0; }

  /* Parent de groupe : vignette décalée pour laisser la place au chevron */
  .ct-group-parent > .ct-td-image {
    left: 42px; }

  .ct-row > .ct-td-image::before,
  .ct-group-parent > .ct-td-image::before {
    content: none; }

  .ct-row > .ct-td-image .ct-img-thumb,
  .ct-row > .ct-td-image .ct-img-placeholder,
  .ct-group-parent > .ct-td-image .ct-img-thumb,
  .ct-group-parent > .ct-td-image .ct-img-placeholder {
    width: 40px;
    height: 40px; }

  /* Avatar-name servant de visuel (identité secondaire, ex. client d'un
     ticket) : on n'affiche que la pastille avatar, le nom est masqué — il
     déborderait de la position absolue et chevaucherait le titre. Un
     avatar-name porteur du titre (rôle title, ex. liste clients) conserve
     son nom : il n'est pas concerné par ces règles « > .ct-td-image ». */
  .ct-row > .ct-td-image .ct-av-name-wrap,
  .ct-group-parent > .ct-td-image .ct-av-name-wrap {
    gap: 0; }

  .ct-row > .ct-td-image .ct-name,
  .ct-group-parent > .ct-td-image .ct-name {
    display: none; }

  .ct-row > .ct-td-image .ct-avatar,
  .ct-group-parent > .ct-td-image .ct-avatar {
    width: 38px;
    height: 38px;
    border-radius: var(--ct-r-md);
    font-size: 13px; }

  /* Action : ancrée à droite, centrée sur l'en-tête (position fixe) */
  .ct-row > .ct-td-act,
  .ct-group-parent > .ct-td-act {
    position: absolute;
    right: 8px;
    top: 33px;
    transform: translateY(-50%);
    width: auto;
    padding: 0; }

  /* Désignation = ligne 1, pleine largeur, police réduite, sans libellé,
     identique avec ou sans variante (critiques « réduire la police » +
     « pas de Designation » + « aligner le style »). */
  .ct-row > .ct-td-title,
  .ct-group-parent > .ct-td-title {
    order: 1;
    flex: 0 0 100%;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    min-width: 0;
    padding: 0;
    color: var(--ct-text-1); }

  .ct-row > .ct-td-title::before,
  .ct-group-parent > .ct-td-title::before {
    content: none; }

  .ct-row > .ct-td-title .ct-text,
  .ct-group-parent > .ct-td-title .ct-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }

  /* ── Identité principale portée par un avatar-name (clients, prospects,
     fournisseurs) ── Rendu aligné sur Tickets/Factures : l'avatar est ancré
     dans la gouttière gauche (centré verticalement, comme une vignette) et le
     NOM devient le titre. On décale le contenu de la carte pour dégager
     l'avatar ; le nom tronque proprement s'il est trop long. */
  .ct-table tbody tr.ct-row:has(> .ct-td-title .ct-av-name-wrap) {
    padding-left: 88px; }

  .ct-table tbody tr.ct-group-parent:has(> .ct-td-title .ct-av-name-wrap) {
    padding-left: 100px; }

  .ct-row > .ct-td-title .ct-av-name-wrap,
  .ct-group-parent > .ct-td-title .ct-av-name-wrap {
    min-width: 0; }

  /* L'avatar sort du flux et se place dans la gouttière gauche, comme la
     vignette d'un ticket. */
  .ct-row > .ct-td-title .ct-av-name-wrap .ct-avatar,
  .ct-group-parent > .ct-td-title .ct-av-name-wrap .ct-avatar {
    position: absolute;
    left: 38px;
    top: 33px;
    transform: translateY(-50%);
    width: 38px;
    height: 38px;
    border-radius: var(--ct-r-md);
    font-size: 13px; }

  /* Parent de groupe : avatar décalé pour laisser la place au chevron. */
  .ct-group-parent > .ct-td-title .ct-av-name-wrap .ct-avatar {
    left: 42px; }

  .ct-row > .ct-td-title .ct-name,
  .ct-group-parent > .ct-td-title .ct-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }

  /* Ligne 2 : statut puis métas (valeurs seules) sur la même ligne.
     Le badge passe en 1er (order) bien qu'il soit en dernier dans le DOM ;
     les libellés sont retirés (critique « seulement les valeurs »). */
  .ct-row > .ct-td-badge,
  .ct-group-parent > .ct-td-badge {
    order: 2; }

  .ct-row > .ct-td-summary,
  .ct-group-parent > .ct-td-summary {
    order: 3; }

  .ct-row > .ct-td-badge,
  .ct-row > .ct-td-summary,
  .ct-group-parent > .ct-td-badge,
  .ct-group-parent > .ct-td-summary {
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-start;
    width: auto;
    padding: 0; }

  .ct-row > .ct-td-badge::before,
  .ct-row > .ct-td-summary::before,
  .ct-group-parent > .ct-td-badge::before,
  .ct-group-parent > .ct-td-summary::before {
    content: none; }

  /* Détails (lignes normales ET variantes dépliées) : empilés, pleine
     largeur, libellé : valeur conservé. */
  .ct-row.ct-row-open > .ct-td-secondary,
  .ct-variant-row.ct-variant-open > .ct-td-secondary {
    order: 4;
    flex: 0 0 100%;
    border-top: 0.5px solid var(--ct-border); }

  /* Espace au-dessus du premier détail révélé (« Famille ») pour le
     détacher de l'en-tête (statut/prix/stock). Les détails suivants
     gardent leur seul séparateur (border-top), sans marge additionnelle. */
  .ct-row.ct-row-open > .ct-td-secondary,
  .ct-variant-row.ct-variant-open > .ct-td-secondary {
    margin-top: 8px; }

  .ct-row.ct-row-open > .ct-td-secondary ~ .ct-td-secondary,
  .ct-variant-row.ct-variant-open > .ct-td-secondary ~ .ct-td-secondary {
    margin-top: 0; }

  /* ── Cartes de variantes ──────────────────────────────────────────────
     Reprend le rendu d'une carte normale : fond blanc, bordure et rayon
     hérités de la règle générique « .ct-table tbody tr » (pas de fond teinté
     ni de rayon custom — on reste dans le Design System). Seule petite
     variation pour signaler la déclinaison : léger retrait + filet d'accent
     à gauche.
     Les cellules ont reçu leurs rôles (titre/badge/résumé/détail) comme les
     lignes normales ; les colonnes de détail (.ct-td-secondary, dont les
     options de déclinaison déjà résumées dans le libellé) restent masquées
     par la règle générique : seuls les champs clés apparaissent. */
  .ct-table tbody tr.ct-variant-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
    column-gap: 16px;
    row-gap: 3px;
    min-height: 0;
    margin: 0 0 8px 14px;
    padding: 10px 40px 10px 12px;
    border-left: 3px solid var(--ct-accent);
    cursor: pointer; }

  /* Filet vert « dernière variante » (desktop) neutralisé : carte uniforme */
  .ct-table tbody tr.ct-variant-last {
    border-bottom: 0.5px solid var(--ct-border) !important; }

  /* Connecteur (trait vertical desktop) + case à cocher vide : inutiles ici */
  .ct-table tr.ct-variant-row > .ct-variant-connector,
  .ct-table tr.ct-variant-row > .ct-td-cb {
    display: none; }

  /* Ligne 1 : libellé de la variante (déclinaisons concaténées) en titre */
  .ct-variant-row > .ct-td-title {
    order: 1;
    flex: 0 0 100%;
    align-items: center;
    gap: 6px;
    min-width: 0;
    padding: 0;
    color: var(--ct-text-1);
    font-weight: 500; }

  .ct-variant-row > .ct-td-title::before {
    content: none; }

  .ct-variant-row > .ct-td-title .ct-variant-name-wrap {
    padding-left: 0;
    min-width: 0; }

  .ct-variant-row > .ct-td-title .ct-variant-name-wrap::before {
    content: none; }

  .ct-variant-row > .ct-td-title .ct-variant-label {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }

  /* Ligne 2 : statut puis métas (valeurs seules, même ligne) */
  .ct-variant-row > .ct-td-badge {
    order: 2; }

  .ct-variant-row > .ct-td-summary {
    order: 3; }

  .ct-variant-row > .ct-td-badge,
  .ct-variant-row > .ct-td-summary {
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-start;
    width: auto;
    padding: 0; }

  .ct-variant-row > .ct-td-badge::before,
  .ct-variant-row > .ct-td-summary::before {
    content: none; }

  /* Action de variante : ancrée à droite, centrée verticalement */
  .ct-variant-row > .ct-td-act {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: auto;
    padding: 0; }

  /* Message « aucun résultat » : pas de mise en page flex */
  .ct-table td.ct-empty {
    display: block;
    text-align: center; }

  /* Recherche pleine largeur */
  .ct-search-wrap {
    max-width: none;
    width: 100%; }

  /* ═══════════════════════════════════════════════
     VOLETS LATÉRAUX MOBILES (filtres & actions groupées)
     Les filtres inline et les boutons d'actions groupées sont déportés dans
     un volet latéral droit, ouvert par un déclencheur dédié. L'état d'ouverture
     vit dans state.drawer (classe .ct-drawer-* sur .ct-root) pour survivre aux
     re-rendus de CoreTable.
     ═══════════════════════════════════════════════ */
  /* Déclencheurs (cachés en desktop, visibles ici) */
  .ct-filters-toggle,
  .ct-bulk-toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 13px;
    font-size: 12px;
    font-weight: 500;
    font-family: var(--ct-font);
    color: var(--ct-text-2);
    background: var(--ct-surface);
    border: 0.5px solid var(--ct-border-md);
    border-radius: var(--ct-r-md);
    cursor: pointer;
    white-space: nowrap; }

  /* Pastille « nombre de filtres actifs » */
  .ct-filters-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 8px;
    background: var(--blue-selected);
    color: #fff;
    font-size: 10px;
    font-weight: 600; }

  /* Panneaux : volet latéral droit, hors-écran par défaut.
     Pas d'ombre ici : à l'état fermé (translateX(100%)) son flou déborderait
     sur le bord droit de l'écran. L'ombre est ajoutée à l'état ouvert. */
  .ct-filters,
  .ct-bulk-actions {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1001;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    width: min(86vw, 320px);
    margin: 0;
    padding: 16px;
    background: var(--ct-surface);
    overflow-y: auto;
    transform: translateX(100%); }

  /* Ouverture pilotée par l'état (.ct-drawer-* posée sur .ct-root) */
  .ct-root.ct-drawer-filters .ct-filters,
  .ct-root.ct-drawer-bulk .ct-bulk-actions {
    transform: translateX(0);
    box-shadow: -6px 0 24px rgba(0, 0, 0, 0.12); }

  /* Animation d'apparition — jouée seulement à l'ouverture (classe
     .ct-drawer-anim posée le temps d'un rendu), pas sur les re-rendus
     provoqués par un changement de filtre. */
  .ct-root.ct-drawer-anim.ct-drawer-filters .ct-filters,
  .ct-root.ct-drawer-anim.ct-drawer-bulk .ct-bulk-actions {
    animation: ct-drawer-in .22s ease; }

  .ct-root.ct-drawer-anim .ct-drawer-backdrop {
    animation: ct-fade-in .18s ease; }

  /* En-tête du volet : titre + bouton fermer */
  .ct-drawer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 8px;
    border-bottom: 0.5px solid var(--ct-border); }

  .ct-drawer-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--ct-text-1); }

  .ct-drawer-close {
    border: none;
    background: none;
    padding: 4px 6px;
    font-size: 16px;
    line-height: 1;
    color: var(--ct-text-3);
    cursor: pointer;
    border-radius: var(--ct-r-sm); }

  /* Contrôles de filtre : pleine largeur, empilés */
  .ct-filters .ct-fsel,
  .ct-filters .ct-drp,
  .ct-filters .ct-filter-daterange {
    width: 100%;
    min-width: 0; }

  .ct-filters .ct-filter-daterange {
    display: flex; }

  /* Bouton « Voir les résultats » collé en bas du volet filtres */
  .ct-filters-apply {
    display: block;
    margin-top: auto;
    padding: 12px;
    border: none;
    border-radius: var(--ct-r-md);
    background: var(--blue-selected);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    font-family: var(--ct-font);
    cursor: pointer; }

  /* Actions groupées : boutons pleine largeur, empilés */
  .ct-bulk-actions .ct-bulk-btn {
    width: 100%;
    padding: 12px;
    text-align: left;
    font-size: 13px; }

  /* Barre d'actions groupées : pas d'animation (évite que le volet enfant,
     en position fixed, se réancre sur la barre pendant son transform). */
  .ct-bulk-bar {
    animation: none;
    flex-wrap: wrap; }

  /* Voile derrière le volet */
  .ct-drawer-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: rgba(0, 0, 0, 0.35); } }
.flex-8-4 {
  display: flex;
  gap: 25px; }
  .flex-8-4 > *:first-child {
    flex: 8; }
  .flex-8-4 > *:last-child {
    flex: 4; }

.oui {
  background-color: #1aa2d3;
  box-shadow: 2px 0px 3px 0.5px #168bb6 inset;
  border: 1px solid #168bb6; }
  .oui div {
    left: 14px; }

.non {
  background-color: #a4a4a4;
  transition: all 0.3s ease 0s;
  box-shadow: -2px 0px 3px 0.5px #8c8c8c inset;
  border: 1px solid #8c8c8c; }
  .non div {
    left: 0px; }

#client_radio_buttons a {
  border-radius: 0px; }
  @media (max-width: 767px) {
    #client_radio_buttons a {
      padding-top: 5px;
      padding-bottom: 5px;
      font-size: 1.2em; } }
@media (max-width: 767px) {
  #client_radio_buttons label {
    font-size: 0.8em; } }

.menu {
  vertical-align: middle;
  padding: 0px 5px; }
  .menu .fa-lg {
    font-size: 1.2em !important;
    text-align: center;
    padding-right: 10px; }

.submenus {
  transition: max-height ease-in-out 0.3s;
  max-height: 0px;
  overflow: hidden; }

.current-menu .submenus {
  max-height: 120px; }

div[name="sub-menu"].selected {
  padding: 5px 3px 4px !important;
  background-color: white;
  color: var(--color-primary);
  border-radius: 5px; }
  div[name="sub-menu"].selected a {
    color: var(--color-primary) !important; }

.parent-selected {
  background-color: transparent !important; }
  .parent-selected a {
    color: white !important; }

div[name="parent-menu"] {
  padding: 8px 10px;
  display: flex;
  align-items: center; }
  div[name="parent-menu"] .menu_label {
    flex: 1; }
  div[name="parent-menu"] i {
    float: right;
    transform-origin: center center;
    color: rgba(255, 255, 255, 0.3);
    transition: transform ease-in-out 0.3s; }

div[name="sub-menu"] {
  padding: 3px;
  margin-left: 38px; }

div[name="sub-menu"] .menu_label {
  padding-left: 5px;
  border-left: 3px solid transparent;
  font-weight: 400; }

div[name="sub-menu"] .selected {
  color: var(--color-primary);
  border-color: #eb4d11; }

.menu-icon {
  width: 38px;
  vertical-align: middle; }

.separemenu {
  width: 100%;
  height: 1px;
  float: left;
  font-family: Arial;
  background-color: #E6E6E6;
  background-repeat: no-repeat;
  text-decoration: none;
  padding: 0px;
  margin-top: 15px; }

#menu-left {
  color: rgba(255, 255, 255, 0.9);
  padding-top: 20px;
  font-weight: normal;
  z-index: 50;
  position: fixed;
  overflow: visible; }
  @media (max-width: 767px) {
    #menu-left {
      padding-top: 80px;
      padding-right: 30px; } }
  #menu-left a {
    color: rgba(255, 255, 255, 0.9); }
    #menu-left a:hover {
      color: white; }
  #menu-left a.nav-link.selected {
    color: var(--color-primary) !important; }
  #menu-left .current-menu [name="parent-menu"] {
    background-color: white;
    padding: 8px 10px;
    border-radius: 5px; }
    #menu-left .current-menu [name="parent-menu"] a {
      color: var(--color-primary); }
    #menu-left .current-menu [name="parent-menu"] i {
      transform: rotate(-180deg); }
  #menu-left .current-menu [name="sub-menu"] {
    font-weight: normal;
    padding: 3px;
    margin-bottom: 3px; }

#menu-little-screen {
  width: 25px;
  height: 30px;
  position: relative;
  margin-left: 5px;
  margin-right: 10px;
  margin-top: 3px;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
  color: var(--menu-text-color); }
  #menu-little-screen:hover {
    color: var(--blue-selected); }

#menu-little-screen span {
  display: block;
  position: absolute;
  height: 2px;
  width: 50%;
  background: white;
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out; }

#menu-little-screen.black span {
  background: #333; }

#menu-little-screen span:nth-child(even) {
  left: 50%;
  border-radius: 0 2px 2px 0; }

#menu-little-screen span:nth-child(odd) {
  left: 0px;
  border-radius: 2px 0 0 2px; }

#menu-little-screen span:nth-child(1), #menu-little-screen span:nth-child(2) {
  top: 0px; }

#menu-little-screen span:nth-child(3), #menu-little-screen span:nth-child(4) {
  top: 11px; }

#menu-little-screen span:nth-child(5), #menu-little-screen span:nth-child(6) {
  top: 22px; }

#menu-little-screen.open span:nth-child(1), #menu-little-screen.open span:nth-child(6) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }

#menu-little-screen.open span:nth-child(2), #menu-little-screen.open span:nth-child(5) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg); }

#menu-little-screen.open span:nth-child(1) {
  left: 2px;
  top: 6px; }

#menu-little-screen.open span:nth-child(2) {
  left: calc(50% - 2px);
  top: 6px; }

#menu-little-screen.open span:nth-child(3) {
  left: -50%;
  opacity: 0; }

#menu-little-screen.open span:nth-child(4) {
  left: 100%;
  opacity: 0; }

#menu-little-screen.open span:nth-child(5) {
  left: 2px;
  top: 14px; }

#menu-little-screen.open span:nth-child(6) {
  left: calc(50% - 2px);
  top: 14px; }

.menu_market_background_div {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 60px;
  left: 0;
  background: #00000066;
  z-index: 20;
  display: none; }

.submenuname {
  font-weight: 600;
  padding: 0px 5px !important;
  margin-top: 15px;
  display: flex;
  align-items: center;
  height: 30px; }

.submenu {
  padding: 0px 0px; }
  .submenu li {
    height: 30px; }
    .submenu li a {
      padding: 0px 5px; }

.sidebar {
  width: var(--sidebar-width);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  height: 100vh;
  overflow: hidden;
  position: sticky;
  top: 0px; }

/* Hamburger (topbar) — visible uniquement en mobile pour ouvrir le drawer */
.sidebar-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 34px;
  flex-shrink: 0;
  border: none;
  background: transparent;
  color: var(--text-2);
  font-size: 22px;
  cursor: pointer;
  border-radius: var(--r-sm);
  padding: 0;
  transition: background .12s, color .12s; }

.sidebar-toggle:hover {
  background: var(--page-bg);
  color: var(--text-1); }

/* Backdrop du drawer — masqué hors mobile / drawer fermé */
.sidebar-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 998;
  opacity: 0;
  transition: opacity .2s ease; }

/* ── DESK SHELL — MOBILE : sidebar en drawer off-canvas ── */
@media (max-width: 767px) {
  .sidebar {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    z-index: 999;
    transform: translateX(-100%);
    transition: transform .25s ease, box-shadow .25s ease; }

  body.sidebar-open .sidebar {
    transform: translateX(0);
    box-shadow: 2px 0 16px rgba(0, 0, 0, 0.25); }

  body.sidebar-open .sidebar-backdrop {
    display: block;
    opacity: 1; }

  .sidebar-toggle {
    display: inline-flex; }

  /* « clip » (et non « hidden ») masque le débordement horizontal SANS créer
     de conteneur de défilement parasite : « overflow-x: hidden » force
     « overflow-y » à « auto », ce qui casserait le sticky de la topbar. */
  #main-container {
    overflow-x: clip; }

  /* Topbar sur 2 lignes : fil d'ariane au-dessus (aligné à gauche),
     actions en dessous (alignées à droite). Pas de padding latéral : le
     contenu est contraint à 90% et centré (aligné sur #main_content).
     Reste fixée en haut au défilement (position: sticky héritée du desktop). */
  .topbar {
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 16px 0 12px !important;
    position: sticky;
    top: 0;
    z-index: 6; }

  .topbar-left {
    width: 100%;
    max-width: 90%;
    justify-content: flex-start; }

  #topbar-actions {
    width: 100%;
    max-width: 90%;
    justify-content: flex-end;
    flex-wrap: wrap;
    padding-right: 2px; }

  #main_content {
    max-width: 100%;
    margin-top: 16px; } }
.sidebar-header {
  padding: 14px 14px 12px;
  border-bottom: 0.5px solid rgba(255, 255, 255, 0.06);
  flex-shrink: 0; }

.inst-btn {
  display: flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
  padding: 6px 8px;
  border-radius: var(--r-md);
  transition: background .15s; }

.inst-btn:hover {
  background: rgba(255, 255, 255, 0.06); }

.inst-avatar {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: var(--accent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 500;
  color: #fff;
  flex-shrink: 0; }

.inst-info {
  flex: 1;
  min-width: 0; }

.inst-name {
  font-weight: 500;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.inst-role {
  font-size: 1.35rem;
  color: rgba(255, 255, 255, 0.35);
  margin-top: 1px; }

.inst-chevron {
  color: rgba(255, 255, 255, 0.25);
  font-size: 10px;
  flex-shrink: 0; }

.role-switcher {
  padding: 8px 14px;
  border-bottom: 0.5px solid rgba(255, 255, 255, 0.06);
  flex-shrink: 0; }

.sidebar-nav {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 4px 8px 8px;
  scrollbar-width: none; }

.sidebar-nav::-webkit-scrollbar {
  display: none; }

.nav-section {
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.22);
  padding: 11px 8px 3px; }

.nav-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
  border-radius: var(--r-md);
  cursor: pointer;
  color: rgba(255, 255, 255, 0.5);
  font-size: 1.4rem;
  transition: background .12s, color .12s;
  user-select: none; }

.nav-item:hover {
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.8); }

.nav-item.active {
  background: color-mix(var(--blue-selected), transparent 84%);
  color: color-mix(var(--blue-selected), white 15%); }

.nav-item.open {
  color: rgba(255, 255, 255, 0.8); }

.nav-icon {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: .7; }

.nav-item.active .nav-icon, .nav-item.open .nav-icon {
  opacity: 1; }

.nav-chevron {
  margin-left: auto;
  font-size: 1.2rem;
  opacity: .35;
  transition: transform .2s;
  flex-shrink: 0; }

.nav-item.open .nav-chevron {
  transform: rotate(90deg);
  opacity: .55; }

.nav-badge {
  margin-left: auto;
  background: #E24B4A;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  padding: 1px 5px;
  border-radius: 20px;
  min-width: 16px;
  text-align: center;
  flex-shrink: 0; }

.nav-read {
  margin-left: auto;
  font-size: 1.2rem;
  opacity: .35;
  flex-shrink: 0;
  font-style: italic; }

.subnav {
  overflow: hidden;
  max-height: 0;
  transition: max-height .22s ease; }

.subnav.open {
  max-height: 400px; }

.subnav-item {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 5px 8px 5px 30px;
  border-radius: var(--r-md);
  cursor: pointer;
  color: rgba(255, 255, 255, 0.38);
  font-size: 1.35rem;
  transition: background .12s, color .12s;
  position: relative; }

.subnav-item:hover {
  background: rgba(255, 255, 255, 0.04);
  color: rgba(255, 255, 255, 0.65); }

.subnav-item.active {
  color: Color-mix(var(--blue-selected) 100%, white 20%);
  background: rgba(29, 158, 117, 0.08); }

.subnav-item::before {
  content: '';
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: currentColor;
  opacity: .6;
  flex-shrink: 0; }

.subnav-item.primary-item {
  color: rgba(255, 255, 255, 0.55); }

.subnav-item.primary-item::before {
  opacity: 1; }

.subnav-badge {
  margin-left: auto;
  background: rgba(226, 75, 74, 0.22);
  color: #f09595;
  font-size: 1.2rem;
  padding: 1px 5px;
  border-radius: 10px;
  flex-shrink: 0; }

.subnav-tag {
  margin-left: auto;
  font-size: 1.2rem;
  opacity: .35;
  font-style: italic; }

.nav-divider {
  height: 0.5px;
  background: rgba(255, 255, 255, 0.06);
  margin: 5px 8px; }

.nav-hidden {
  display: none !important; }

.sidebar-footer {
  padding: 10px 14px;
  border-top: 0.5px solid rgba(255, 255, 255, 0.06);
  flex-shrink: 0; }

.help-btn {
  display: flex;
  align-items: center;
  gap: 7px;
  color: rgba(255, 255, 255, 0.3);
  font-size: 1.35rem;
  cursor: pointer;
  padding: 6px 8px;
  border-radius: var(--r-sm);
  transition: background .12s, color .12s; }

.help-btn:hover {
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.55); }

:root {
  --sidebar-bg: #0e1a17;
  --sidebar-width: 240px;
  --accent: #1D9E75;
  --accent-hover: #0F6E56;
  --accent-light: #E1F5EE;
  --page-bg: #f3f4f1;
  --surface: #ffffff;
  --border: rgba(0,0,0,0.07);
  --border-md: rgba(0,0,0,0.12);
  --text-1: #181816;
  --text-2: #5c5c58;
  --text-3: #9a9a94;
  --danger: #A32D2D;
  --danger-bg: #FCEBEB;
  --warn: #854F0B;
  --warn-bg: #FAEEDA;
  --success: #085041;
  --success-bg: #E1F5EE;
  --info: #0C447C;
  --info-bg: #E6F1FB;
  --purple: #3C3489;
  --purple-bg: #EEEDFE;
  --font: 'DM Sans', sans-serif;
  --mono: 'DM Mono', monospace;
  --r-sm: 6px;
  --r-md: 8px;
  --r-lg: 12px; }

#main_loading {
  display: none;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); }

#main_content:empty + #main_loading {
  display: block; }

#main_view {
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  /* Colonne de contenu = flex item de la rangée (sidebar + contenu). Sans ceci,
     son min-width:auto (= largeur min de son contenu) l'empêche de rétrécir : un
     contenu large (tableau au min-width élevé) déborderait alors la page entière,
     en plus de son propre défilement → double barre de scroll. min-width:0 lui
     permet de rétrécir pour que le scroll horizontal reste confiné au tableau. */
  min-width: 0; }

#main_content {
  width: 100%;
  max-width: 90%;
  margin-top: 30px;
  margin-bottom: 50px;
  text-align: left; }

.topbar {
  background: var(--surface);
  border-bottom: 0.5px solid var(--border);
  padding: 15px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  gap: 12px;
  width: 100%;
  position: sticky;
  top: 0px;
  z-index: 5; }

.topbar-left {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0; }

.breadcrumb {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 0px; }

#topbar-actions i {
  margin-right: 3px; }

#topbar-actions {
  gap: 6px;
  display: flex;
  min-height: 39px; }

.tb-link {
  color: var(--text-3);
  text-decoration: none;
  cursor: pointer;
  transition: color .12s; }

.tb-link:hover {
  color: var(--t1); }

.tb-sep {
  color: var(--t3);
  font-size: 10px; }

.tb-current {
  color: var(---text-1);
  font-weight: 600; }

.bc-parent {
  color: var(--text-3);
  cursor: pointer;
  transition: color .12s; }

.bc-parent:hover {
  color: var(--text-2); }

.bc-sep {
  color: var(--text-3);
  font-size: 1.2rem; }

.bc-current {
  font-weight: 600;
  color: var(--text-1); }

.topbar-right {
  display: flex;
  gap: 8px;
  align-items: center; }

#nprogress {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2.5px;
  z-index: 9999;
  pointer-events: none;
  background: var(--blue-selected);
  transform-origin: left center;
  transform: scaleX(0);
  transition: transform .2s ease, opacity .3s ease;
  opacity: 0; }

#nprogress.active {
  opacity: 1; }

.page-error {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #FCEBEB;
  border: 0.5px solid rgba(163, 45, 45, 0.2);
  border-radius: 10px;
  margin: 20px; }

.page-error-icon {
  flex-shrink: 0; }

.page-error-body {
  flex: 1;
  min-width: 0; }

.page-error-title {
  font-size: 13px;
  font-weight: 500;
  color: #A32D2D;
  margin-bottom: 2px; }

.page-error-msg {
  font-size: 12px;
  color: #791F1F; }

.page-error-retry {
  flex-shrink: 0;
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 500;
  font-family: var(--font, sans-serif);
  background: transparent;
  border: 0.5px solid rgba(163, 45, 45, 0.35);
  border-radius: 7px;
  color: #A32D2D;
  cursor: pointer;
  transition: background .12s; }

.page-error-retry:hover {
  background: rgba(163, 45, 45, 0.08); }

.ct-th-act-slot {
  text-align: right; }

.comm_img {
  position: absolute;
  vertical-align: middle;
  width: 60px;
  top: calc(50% - 30px);
  left: 10px; }

.vignette {
  padding: 5px;
  z-index: 2; }
  .vignette .shadow-left, .vignette .shadow-right {
    bottom: 20px; }

.current_panel {
  background-color: #D5D5D5;
  font-weight: bold; }
  .current_panel:hover {
    background-color: #D5D5D5;
    font-weight: bold; }

@media (max-width: 1199px) {
  .panel_option.full {
    width: auto;
    line-height: 24px;
    height: 24px;
    padding: 0px 13px;
    margin: 10px 10px 0px; } }

@media (max-width: 1199px) {
  .panel_option {
    width: 40px;
    height: 40px;
    line-height: 40px;
    padding: 0;
    margin: 10px 10px 0px; } }

.panel_option_label {
  padding-left: 5px; }

.comm_content_inner {
  width: 100%; }
  .comm_content_inner label {
    height: 44px;
    padding-top: 11px; }

.comm_four {
  float: left; }

.comm_qte input {
  width: calc(100% - 60px); }

.comm_unite {
  height: 44px;
  line-height: 44px;
  text-align: right;
  padding-right: 10px;
  text-transform: capitalize;
  width: 60px; }

.comm_content {
  position: relative;
  padding-left: 60px;
  vertical-align: middle;
  display: flex;
  align-items: center;
  min-height: 32px; }

.comm_bl.input_border, .comm_ttc.input_border, .comm_ajout {
  float: left; }

.comm_container .comm_ajout div {
  padding-left: 0px;
  padding-right: 0px; }
.comm_container .comm_ajout .form-control {
  padding-left: 0px;
  padding-right: 0px; }

.comm_container {
  background-color: white;
  border: 1px solid #e3e3e3;
  padding: 52px 10px 8px;
  min-height: 32px; }
  .comm_container .form-control {
    padding-left: 0px;
    padding-right: 10px; }
  .comm_container .input_border {
    margin: 0;
    width: 100%; }
  .comm_container select {
    margin-left: -4px; }

.comm_prix {
  position: absolute;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 25px;
  line-height: 25px; }

.comm_delete {
  position: absolute;
  width: 25px;
  height: 25px;
  right: 0;
  top: 0;
  z-index: 2; }

.comm_designation {
  display: block;
  position: absolute;
  padding-right: 25px;
  top: 0;
  left: 0;
  height: 44px;
  line-height: 44px;
  text-align: left;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  padding-left: 80px;
  padding-top: 8px; }

.panel_info {
  display: none;
  height: 200px;
  vertical-align: middle; }

.panel_info_text {
  position: relative;
  top: 50%;
  vertical-align: middle;
  color: grey;
  font-style: italic; }

.panel_content_inner {
  padding: 15px 5px; }

#pcontenth_label_livraison {
  max-width: 80px; }

#pcontenth_label_commande {
  max-width: 230px; }

#pcontenth_label_promotion {
  max-width: 200px; }

.panel_buttons {
  padding-bottom: 10px; }

.panel_content_header {
  min-height: 41px;
  padding-top: 3px;
  padding-bottom: 3px;
  background-color: white;
  border-top: 1px solid #d5d5d5; }
  .panel_content_header .form-control {
    height: 34px;
    color: gray; }
  .panel_content_header .control-label {
    padding-top: 8px !important;
    padding-bottom: 8px;
    margin: 0; }
    .panel_content_header .control-label label {
      margin: 0; }
  .panel_content_header .comm_link {
    font-weight: bold;
    display: block; }
    @media (max-width: 990px) {
      .panel_content_header .comm_link {
        padding-right: 10px; } }
    .panel_content_header .comm_link span {
      padding-left: 6px; }
    @media (max-width: 990px) {
      .panel_content_header .comm_link .comm_link_icon {
        font-size: 2em; } }

.validStock {
  padding-top: 10px; }

@media (min-width: 768px) {
  div[name="optionStock"] .control-label {
    max-width: 130px; } }

.comm_stock_de, .comm_stock_a {
  padding-top: 11px;
  font-weight: normal;
  text-align: left; }

@media (min-width: 768px) {
  #article_panel_content {
    padding-top: 0px; } }
@media (min-width: 1200px) {
  #article_panel_content {
    padding-top: 0px; } }

@media (min-width: 768px) {
  #client_panel_content {
    padding-top: 44px; } }

@media (min-width: 1200px) {
  #article_panel_content .container-fluid {
    padding-left: 15px;
    padding-right: 15px; } }

#modal_fournisseur {
  max-width: 450px;
  margin-top: 40px;
  margin-bottom: 40px; }

#modal_stockUpgrade {
  width: 1100px; }

.ligneList {
  padding: 10px 20px;
  border-bottom: solid 1px #e7edf3; }
  .ligneList:hover {
    background-color: #edf2f7;
    cursor: default; }

.modal-open .modal {
  overflow-y: scroll; }

.nom_fournisseur {
  font-weight: bold;
  height: 100%; }

.infos_fournisseur {
  color: gray; }

.table_fournisseurs {
  padding-bottom: 40px; }
  @media (max-width: 767px) {
    .table_fournisseurs {
      padding-top: 39px; } }

.list_artfam {
  max-height: calc(100vh - 165px); }

#radios_art_fam {
  height: 31px;
  margin-top: 7px;
  margin-bottom: 2px; }

.radio_art, .radio_fam {
  height: 31px;
  line-height: 100%; }
  .radio_art a, .radio_fam a {
    border: 1px solid #A4A4A4;
    background-color: white;
    width: 100%;
    height: 100%; }
    .radio_art a label, .radio_fam a label {
      line-height: 31px; }

.radio_art {
  padding-left: 0px;
  padding-right: 0px; }
  .radio_art a {
    border-radius: 15px 0px 0px 15px; }

.radio_fam {
  padding-right: 0px;
  padding-left: 0px; }
  .radio_fam a {
    border-radius: 0px 15px 15px 0px; }

.list-choice-product {
  max-width: 640px; }

.modal-content.list_modal {
  border-radius: 4px;
  max-width: 450px;
  overflow: hidden;
  margin-top: 40px;
  margin-bottom: 40px; }

.modal-body.list_modal_inner {
  padding: 0px;
  margin: -10px;
  width: calc(100% + 20px); }

.modal_srch.art_fam_srch {
  height: 80px; }

.modal_srch {
  z-index: 2;
  padding: 10px 5px;
  position: sticky;
  top: 55px;
  background-color: white; }
  @media (min-width: 768px) {
    .modal_srch {
      width: 100%; } }

.save_div_modal {
  padding-top: 20px; }

#recherche_art_fam {
  border-radius: 15px; }

.modal_srch .form-control {
  min-height: 40px;
  padding-left: 10px;
  padding-right: 10px; }

.icon {
  color: #524949;
  height: 30px;
  width: 30px;
  line-height: 30px;
  padding: 0px;
  margin-left: auto;
  margin-right: auto; }

#creation_fournisseur {
  border: 1px solid #e3e3e3;
  padding: 10px; }

.modal-content.bibliotheque_images {
  max-width: 640px;
  overflow: visible;
  margin-top: 0px;
  margin-bottom: 0px; }

.commentaire_input {
  border-top: 1px solid #f1f1f1;
  border-bottom: 1px solid #f1f1f1; }

@media (max-width: 560px) {
  .modal-content {
    min-width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important; } }

.validationMainContainer {
  padding: 15px; }
  .validationMainContainer div.validationIcon {
    display: inline-block; }
    .validationMainContainer div.validationIcon i.fas.valid {
      color: var(--blue-selected); }
    .validationMainContainer div.validationIcon i.fas.error {
      color: var(--blue-light); }
  .validationMainContainer .validationTextBold {
    font-weight: bold;
    margin-top: 15px; }
  .validationMainContainer .validationText {
    padding: 0 15px 15px; }

.modalMessageInformation {
  padding-top: 30px; }

.fact_thumb_rows {
  padding: 10px 0px; }

.fact_thumb_row {
  padding-top: 3px;
  padding-bottom: 3px; }

.fact_thumb_container {
  background-color: white;
  border: 1px solid #e3e3e3;
  padding: 5px 10px;
  min-height: 32px; }
  .fact_thumb_container:hover {
    cursor: pointer;
    background-color: #f8f8f8; }

.fact_thumb_id {
  font-weight: bold; }

.fact_thumb_date {
  font-weight: normal;
  color: gray; }

.fact_thumb_ttc {
  font-weight: bold;
  color: #666;
  font-size: 1.15em; }

.user_thumb_container {
  background-color: white;
  border: 1px solid #e3e3e3;
  padding: 5px 10px;
  min-height: 32px; }

.vignette_icons .printLabel {
  top: -25px;
  left: -3px;
  font-size: 1.6rem;
  margin-right: 8px; }
.vignette_icons .deleteVente {
  bottom: -25px;
  left: -3px;
  font-size: 1.6rem; }
.vignette_icons .delete {
  left: -2px;
  font-size: 1.6rem; }

#reglementsClient, #caFamille {
  width: 100%; }

#canvasStats, #canvasPurchasesStats {
  padding-top: 0px;
  width: 100%;
  display: inherit;
  max-height: 300px; }

#reglementsClient_legend, #caFamille_legend {
  display: flex;
  align-items: center;
  width: 50%;
  height: 100%;
  position: absolute;
  padding-left: 20px;
  background-color: transparent;
  vertical-align: middle;
  right: 0;
  top: 0; }
  #reglementsClient_legend li, #caFamille_legend li {
    vertical-align: middle;
    padding: 5px 20px 10px 25px; }
  @media (min-width: 768px) {
    #reglementsClient_legend, #caFamille_legend {
      font-size: 1.3rem;
      padding-left: 20px; }
      #reglementsClient_legend li, #caFamille_legend li {
        padding: 2px 20px; } }
  @media (min-width: 1200px) {
    #reglementsClient_legend, #caFamille_legend {
      padding-left: 20px; } }

.chart_config_btn_grp {
  color: grey;
  font-size: 0.8em;
  border: 1px solid #E3E3E3;
  float: left;
  padding: 5px 10px;
  width: 100%; }
  .chart_config_btn_grp .chart_config_btn {
    height: 39px;
    line-height: 39px;
    white-space: nowrap; }
  .chart_config_btn_grp input[type="radio"] {
    width: auto; }

.chart_config_links {
  font-size: 0.9em; }
  .chart_config_links span.fa {
    padding-right: 5px; }

.chart_infos_container {
  padding-top: 5px;
  padding-bottom: 20px; }

.chart_infos_container .chart_infos_left {
  padding-right: 10px; }

.chart_infos_container .chart_infos_right {
  padding-left: 10px; }

.chart_infos_container .chart_infos_header_left {
  width: 95px; }

.chart_infos_container .chart_infos_header_right {
  width: 120px; }

.chart_infos_container .chart_infos_label {
  width: 60%;
  color: #666;
  line-height: 12px;
  font-size: 1.3rem;
  font-weight: bold; }

.chart_infos_container .chart_infos_value {
  color: grey;
  white-space: nowrap;
  font-size: 1.3rem;
  padding: 0px 10px;
  width: 40%;
  max-width: 100px; }

.chart_infos_container .chart_infos_content {
  text-align: right;
  border: 1px solid #e3e3e3;
  padding: 20px;
  width: calc(100% - 20px);
  margin: 0px 10px;
  float: left; }

.chart_legend_container {
  width: 100%;
  display: block;
  vertical-align: middle;
  display: none; }

.chart_legend_list {
  text-align: left;
  list-style-type: none;
  padding: 0px;
  margin: 0px;
  display: none; }

.chart_legend_circle {
  width: 20px;
  height: 20px;
  border-radius: 10px;
  float: left;
  margin-right: 10px; }
  @media (min-width: 768px) {
    .chart_legend_circle {
      width: 16px;
      height: 16px;
      margin-top: 2px;
      border-radius: 8px; } }

.chart_legend_label {
  height: 20px;
  line-height: 20px;
  padding-left: 0px;
  color: #666;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap; }

.topproduct_wrapper {
  display: grid !important;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  height: 100%; }

.topproduct_wrapper, .cloture_wrapper {
  display: flex;
  flex-direction: column; }
  .topproduct_wrapper .topproduct_image, .cloture_wrapper .topproduct_image {
    background-size: cover;
    background-position: center center;
    width: 30px;
    height: 30px;
    display: table;
    border-radius: 7px;
    margin: 0px 10px;
    margin-left: 0px;
    padding-right: 15px; }
  .topproduct_wrapper .topproduct_infoscontainer, .topproduct_wrapper .cloture_infoscontainer, .cloture_wrapper .topproduct_infoscontainer, .cloture_wrapper .cloture_infoscontainer {
    display: flex;
    flex-direction: row;
    text-align: left;
    width: 100%;
    justify-content: space-between;
    align-items: center; }
  .topproduct_wrapper .topproduct_item, .topproduct_wrapper .cloture_item, .cloture_wrapper .topproduct_item, .cloture_wrapper .cloture_item {
    width: 100%;
    margin: 10px 0px;
    overflow: hidden; }
  .topproduct_wrapper .topproduct_itemwrap, .topproduct_wrapper .cloture_itemwrap, .cloture_wrapper .topproduct_itemwrap, .cloture_wrapper .cloture_itemwrap {
    border-bottom: 1px solid var(--blue-light);
    display: flex;
    align-items: center; }
    .topproduct_wrapper .topproduct_itemwrap:last-child, .topproduct_wrapper .cloture_itemwrap:last-child, .cloture_wrapper .topproduct_itemwrap:last-child, .cloture_wrapper .cloture_itemwrap:last-child {
      border: none; }
  .topproduct_wrapper .topproduct_iteminfos, .topproduct_wrapper .cloture_iteminfos, .cloture_wrapper .topproduct_iteminfos, .cloture_wrapper .cloture_iteminfos {
    display: flex;
    flex-direction: column;
    padding-left: 10px; }
  .topproduct_wrapper .topproduct_container, .topproduct_wrapper .cloture_itemcontainer, .cloture_wrapper .topproduct_container, .cloture_wrapper .cloture_itemcontainer {
    display: flex;
    flex-direction: row;
    align-items: center; }
  .topproduct_wrapper .topproduct_price, .topproduct_wrapper .cloture_itemdeclared, .topproduct_wrapper .cloture_itemtheo, .cloture_wrapper .topproduct_price, .cloture_wrapper .cloture_itemdeclared, .cloture_wrapper .cloture_itemtheo {
    padding: 0px 10px; }

@media (max-width: 767px) {
  #sales_bloc, #purchase_bloc, #commercial_bloc {
    max-width: calc(100vw - 30px); } }

@media (max-width: 767px) {
  .evolution_marge {
    overflow: auto;
    table-layout: unset !important; } }

.visits-summary {
  padding-top: 10px;
  visibility: hidden; }
  .visits-summary span {
    margin-bottom: 10px;
    display: inline-block; }
    .visits-summary span b {
      font-size: 1.7rem; }

.visits-flag {
  vertical-align: top;
  margin-top: 3px; }

.no_countries {
  display: none; }

#visits_countries {
  text-align: left;
  display: inline-block;
  width: 100%; }
  #visits_countries div {
    margin-bottom: 10px; }

#visits_countries:empty {
  display: none; }

#visits_countries:empty + .no_countries {
  display: block; }

@media (max-width: 767px) {
  #reportrange, #comparerange {
    margin: 0px;
    width: 100%;
    margin-bottom: 10px; } }

.select-graph {
  border-left: 0px solid var(--blue-light);
  text-align: left;
  padding-left: 10px;
  margin-bottom: 0px;
  display: flex;
  align-items: center; }
  .select-graph:hover {
    cursor: pointer;
    background-color: var(--blue-light); }
  .select-graph .stat-title {
    color: #666; }
  .select-graph .select-graph-col2 {
    display: flex;
    flex-direction: column;
    flex: 1; }
  .select-graph i {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
    font-size: 2.1rem;
    display: none; }
  .select-graph .styled-checkbox {
    width: auto;
    margin: 0px 5px;
    display: block;
    pointer-events: none; }
  .select-graph[data-datatype=profit].selected {
    border-left: 4px solid #0db90d; }
    .select-graph[data-datatype=profit].selected .styled-checkbox input:checked ~ .checkmark {
      background: #0db90d !important;
      border-color: #0db90d !important; }
    .select-graph[data-datatype=profit].selected .stat-title {
      color: #0db90d; }
  .select-graph[data-datatype=orderqty].selected, .select-graph[data-datatype=salesqty].selected, .select-graph[data-datatype=shippingfees].selected {
    border-left: 4px solid #ff9f00; }
    .select-graph[data-datatype=orderqty].selected .styled-checkbox input:checked ~ .checkmark, .select-graph[data-datatype=salesqty].selected .styled-checkbox input:checked ~ .checkmark, .select-graph[data-datatype=shippingfees].selected .styled-checkbox input:checked ~ .checkmark {
      background: #ff9f00 !important;
      border-color: #ff9f00 !important; }
    .select-graph[data-datatype=orderqty].selected .stat-title, .select-graph[data-datatype=salesqty].selected .stat-title, .select-graph[data-datatype=shippingfees].selected .stat-title {
      color: #ff9f00; }
  .select-graph[data-datatype=ticket].selected, .select-graph[data-datatype=salesDF].selected, .select-graph[data-datatype=purchaseqty].selected {
    border-left: 4px solid #af00ff; }
    .select-graph[data-datatype=ticket].selected .styled-checkbox input:checked ~ .checkmark, .select-graph[data-datatype=salesDF].selected .styled-checkbox input:checked ~ .checkmark, .select-graph[data-datatype=purchaseqty].selected .styled-checkbox input:checked ~ .checkmark {
      background: #af00ff !important;
      border-color: #af00ff !important; }
    .select-graph[data-datatype=ticket].selected .stat-title, .select-graph[data-datatype=salesDF].selected .stat-title, .select-graph[data-datatype=purchaseqty].selected .stat-title {
      color: #af00ff; }
  .select-graph[data-datatype=sales].selected, .select-graph[data-datatype=purchase].selected {
    border-left: 4px solid var(--blue-selected); }
    .select-graph[data-datatype=sales].selected .styled-checkbox input:checked ~ .checkmark, .select-graph[data-datatype=purchase].selected .styled-checkbox input:checked ~ .checkmark {
      background: var(--blue-selected) !important;
      border-color: var(--blue-selected) !important; }
    .select-graph[data-datatype=sales].selected .stat-title, .select-graph[data-datatype=purchase].selected .stat-title {
      color: var(--blue-selected); }

.titleReport {
  font-weight: bold; }

@page {
  @top-left {
    content: "TOP SECRET";
    color: red; }
  @bottom-right {
    content: counter(page);
    font-style: italic; } }
.page-break {
  margin-top: 50px; }

#report_body {
  background-color: white;
  color: #666;
  font-family: 'Calibri', 'sans-serif'; }
  #report_body table {
    page-break-after: auto; }
  #report_body tr {
    page-break-inside: avoid;
    page-break-after: auto; }
  #report_body td {
    page-break-inside: avoid;
    page-break-after: auto; }
  #report_body th {
    page-break-inside: avoid;
    page-break-after: auto; }
  #report_body thead {
    display: table-header-group; }
  #report_body tfoot {
    display: table-footer-group; }

#report_body_debt {
  background-color: white;
  color: #666;
  font-family: 'Lato', 'sans-serif'; }
  #report_body_debt table {
    page-break-inside: avoid;
    page-break-after: auto; }
  #report_body_debt tr {
    page-break-inside: avoid;
    page-break-after: auto; }
  #report_body_debt td {
    page-break-inside: avoid;
    page-break-after: auto; }
  #report_body_debt th {
    page-break-inside: avoid;
    page-break-after: auto; }
  #report_body_debt thead {
    display: table-header-group; }
  #report_body_debt tfoot {
    display: table-footer-group; }

#salesThumbnailPeriod {
  min-width: 991px; }
  @media (max-width: 1150px) {
    #salesThumbnailPeriod .fa-chevron-right {
      display: none !important; } }

.sales-summary, .purchase-summary {
  overflow: auto; }
  @media (max-width: 1150px) {
    .sales-summary, .purchase-summary {
      margin-right: -25px;
      padding-right: 25px; } }
  @media (max-width: 767px) {
    .sales-summary, .purchase-summary {
      margin-right: -15px;
      padding-right: 15px; } }

.breakafter {
  page-break-after: always;
  padding: 20px; }

.breakbefore {
  page-break-before: always;
  padding: 20px; }

.test {
  color: blue; }

.report_logo {
  width: 100%; }

.report_title {
  font-size: large;
  font-weight: bold;
  padding: 10px; }

.report_header {
  padding-bottom: 30px; }

.report_table_container {
  padding-left: 15px;
  padding-right: 15px; }

.report_table_title {
  font-size: 1.3em;
  font-weight: bold;
  color: #666;
  padding: 20px 10px 10px;
  text-align: center; }

.report_table_title_sub {
  font-size: 1.1em;
  padding: 0px 10px 5px; }

.report_table {
  width: 100%;
  /*entree sortie de stock*/ }
  .report_table th, .report_table td {
    border: 1px solid gray;
    padding: 5px 10px; }
  .report_table th {
    background-color: #1AA2D3 !important;
    color: white; }
  .report_table tr.main_clot td.report_clot_label {
    padding-left: 20px; }
  .report_table .report_clot_enr, .report_table .report_clot_recu {
    text-align: right;
    width: 30%; }
  .report_table .report_clot_label {
    width: 40%;
    text-align: left; }
  .report_table .report_vente_designation {
    width: 40%;
    text-align: left; }
  .report_table .report_vente_qte, .report_table .report_vente_ttc {
    width: 15%;
    text-align: right; }
  .report_table .report_vente_ht,
  .report_table .report_vente_tva,
  .report_table .report_vente_mtva {
    width: 10%;
    text-align: right; }
  .report_table .report_ref {
    width: 20%; }
  .report_table .report_art {
    text-align: left;
    width: 50%; }
  .report_table .report_qte {
    text-align: center;
    width: 15%; }
  .report_table .report_unite {
    text-align: center;
    width: 15%; }
  .report_table .report_footer_span {
    padding-top: 10px;
    padding-bottom: 10px; }
  .report_table .report_main_content {
    padding-bottom: 30px; }
  .report_table .report_es_march {
    width: 22%; }
  .report_table .report_es_stk {
    width: 9%; }
  .report_table .report_es_ope {
    width: 7%; }
  .report_table .report_es_avope {
    text-align: right;
    width: 10%; }
  .report_table .report_es_qtar {
    text-align: center;
    width: 4%; }
  .report_table .report_es_apope {
    text-align: right;
    width: 10%; }
  .report_table .report_es_date {
    width: 9%; }
  .report_table .report_es_user {
    width: 8%; }
  .report_table .report_es_motif {
    width: 9%; }
  .report_table .report_es_comm {
    width: 12%; }
  .report_table .rpt_palm_des {
    width: 16%; }
  .report_table .rpt_palm_qtev, .report_table .rpt_palm_pumttc, .report_table .rpt_palm_tva, .report_table .rpt_palm_ecop, .report_table .rpt_palm_reme, .report_table .rpt_palm_promo, .report_table .rpt_palm_caht, .report_table .rpt_palm_mtva, .report_table .rpt_palm_mecop, .report_table .rpt_palm_cattc, .report_table .rpt_palm_cattceco, .report_table .rpt_palm_marght,
  .report_table .rpt_palm_margpc, .report_table .rpt_palm_marchpc {
    width: 6%; }

.report_table.palm_tva {
  border: 1px solid lightgray;
  margin: 30px 0px; }

.report_etiquette_container {
  overflow: hidden;
  color: black;
  float: left;
  page-break-inside: avoid;
  page-break-after: auto; }

.report_item_container {
  position: absolute;
  display: block;
  text-align: left;
  font-weight: bold;
  text-overflow: ellipsis;
  overflow: hidden;
  page-break-inside: avoid;
  page-break-after: auto; }

.report_barcodeEan13 {
  float: left; }

div[data-sales="paymentmode"] .loading-details[style="display: none;"] ~ .sales-summary:empty ~ #noPayment, div[data-sales="paymentmode"] .loading-details[style="display:none;"] ~ .sales-summary:empty ~ #noPayment {
  display: block !important; }

#senderId {
  padding: 15px 10px; }

/*# sourceMappingURL=styles.css.map */
