/* app/styles/global.css */
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-Regular.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-Medium.ttf) format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-SemiBold.ttf) format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-SemiBoldItalic.ttf) format("truetype");
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-Bold.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-BoldItalic.ttf) format("truetype");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-ExtraLight.ttf) format("truetype");
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-Italic.ttf) format("truetype");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: Nunito;
  src: url(/fonts/nunito/Nunito-MediumItalic.ttf) format("truetype");
  font-weight: 500;
  font-style: italic;
}
:root {
  --topbar-height: 55px;
  --global-min-height: 768px;
  --global-min-width: 1024px;
  --filterbar-width: 250px;
  --list-page-main-container-padding-horizontal: 10px;
  --fiche-top-bar-container-height: 50px;
  --fiche-subpage-side-top-header-height: 35px;
}
html {
  height: 100%;
}
body {
  margin: 0;
  height: 100%;
  min-width: var(--global-min-width);
  min-height: var(--global-min-height);
  font-family: Nunito, sans-serif;
}
button {
  font-family: Nunito, sans-serif;
}
a {
  text-decoration: none;
}
.h-100-minus-topbar {
  height: calc(100% - var(--topbar-height));
}
#list-page-main-container {
  height: calc(100% - var(--topbar-height));
  display: flex;
  padding: 10px var(--list-page-main-container-padding-horizontal);
  width: 100%;
}
.h-25-pct {
  height: 25%;
}
.switch {
  position: relative;
  display: inline-block;
  width: 31px;
  height: 14px;
}
.small-checkbox .switch {
  height: 12px;
}
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
.slider {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background-color: #ddd;
  -webkit-transition: .4s;
  transition: .4s;
}
.slider:before {
  position: absolute;
  content: "";
  height: 12px;
  width: 12px;
  left: 3px;
  bottom: 1px;
  background-color: #fff;
  -webkit-transition: .4s;
  transition: .4s;
}
.small-checkbox .slider:before {
  content: "";
  height: 10px;
  width: 10px;
  left: 3px;
  bottom: 1px;
}
.separator {
  width: 100%;
  height: 1px;
  border-top: 1px solid #e5e7eb;
}
input:checked + .slider {
  background-color: #6edc5f;
}
input:focus + .slider {
  box-shadow: 0 0 1px #6edc5f;
}
input:checked + .slider:before {
  -webkit-transform: translateX(13px);
  -ms-transform: translateX(13px);
  transform: translate(13px);
}
.border-color-light {
  border-color: var(--border-light);
}
.border-top-1 {
  border-top: 1px solid black;
}
.border-right-1 {
  border-right: 1px solid black;
}
.border-bottom-1 {
  border-bottom: 1px solid black;
}
.border-left-1 {
  border-left: 1px solid black;
}
.border-top-2 {
  border-top: 2px solid black;
}
.border-right-2 {
  border-right: 2px solid black;
}
.border-bottom-2 {
  border-bottom: 2px solid black;
}
.border-left-2 {
  border-left: 2px solid black;
}
.border-bottom-dashed-2 {
  border-bottom: 2px dashed black;
}
.animated-transform {
  transition: transform .3s ease;
}
.rotate-up {
  transform: rotate(180deg);
}
.rotate-down {
  transform: rotate(0);
}
.slider.round {
  border-radius: 17px;
}
.slider.round:before {
  border-radius: 50%;
}
.custom-switch .p-inputswitch {
  height: 14px;
  width: 2.5em;
}
.custom-switch .p-inputswitch .p-inputswitch-slider {
  width: 30px;
  height: 14px;
}
.custom-switch .p-inputswitch .p-inputswitch-slider:before {
  top: 50%;
  left: 50%;
  transform: translate(-90%, .28em);
  width: 10px;
  height: 10px;
  background-color: #fff;
}
.custom-switch .p-inputswitch .p-focus {
  border: none;
  box-shadow: none;
}
.custom-switch .p-inputswitch.p-inputswitch-checked .p-inputswitch-slider:before {
  background-color: #fff;
  left: calc(100% - 15px);
  transform: translateY(.28em);
}
.switch-label {
  font-size: 13px;
  line-height: 1.3em;
}
.custom-switch .p-inputswitch.p-inputswitch-checked .p-inputswitch-slider {
  background-color: #6edc5f;
}
.custom-switch .p-inputswitch:not(.p-inputswitch-checked):hover .p-inputswitch-slider {
  background-color: #e5e5e5;
}
.custom-switch .p-inputswitch.p-inputswitch-checked:hover .p-inputswitch-slider {
  background-color: #60dc50;
}
.custom-switch.padded {
  padding-left: .5rem;
}
.not-padded-switch .custom-switch.padded,
.not-padded-switch.custom-switch.padded {
  padding-left: 0;
}
.radio-switch-container {
  border: 1px dashed var(--grey);
  border-radius: 8px;
  position: absolute;
  height: 94%;
  top: 2%;
  right: 0;
  pointer-events: none;
}
.radio-switch-form-container {
  border: 1px solid var(--grey);
  border-radius: 4px;
  height: 25px;
}
.abs-top-right-corner {
  position: absolute;
  top: .25em;
  right: .25em;
}
.text-bold-first-item .p-menuitem-text:first-child {
  font-weight: 700;
}
.text-italic {
  font-style: italic;
}
.text-extra-small {
  font-size: .8em;
}
.text-smaller {
  font-size: .85em;
}
.text-small {
  font-size: .9em;
}
.text-small-medium {
  font-size: .95em;
}
.text-big {
  font-size: 1.5em;
}
.text-underlined {
  text-decoration: underline;
}
.text-bold {
  font-weight: 700;
}
.text-normal,
.text-normal th {
  font-weight: 400;
}
.text-boldish {
  font-weight: 500;
}
.text-600 {
  font-weight: 600;
}
.hv-100 {
  height: 100vh;
}
.w-100 {
  width: 100%;
}
.w-100-7em {
  width: calc(100% - 7em);
}
.w-50 {
  width: 50%;
}
.w-6em-important {
  width: 6em !important;
}
.h-100 {
  height: 100%;
}
.border-none {
  border: none !important;
}
.border-focus-none:focus {
  border: none !important;
  outline: none;
}
.bordered {
  border: 1px solid grey;
}
.border-black {
  border: 1px solid black;
}
.form-validation-error {
  color: var(--red);
  margin-top: 8px;
}
.round-btn {
  width: 32px;
  height: 32px;
  border-radius: 16px;
}
.small-panel-btn {
  background-color: transparent;
  box-shadow: none;
  border: none;
  width: 100%;
  text-align: left;
  border-radius: 4px;
  padding: 4px 8px;
  font-size: .8em;
  display: flex;
  align-items: center;
}
.small-panel-btn:hover {
  background-color: var(--chrome-hover-grey);
}
.transparent-button {
  background-color: transparent;
  box-shadow: none;
  border: none;
}
.transparent-button:hover {
  background-color: transparent !important;
}
.borderless-btn {
  box-shadow: none;
  border: none;
  background-color: transparent;
}
.no-style-button {
  all: unset;
}
.hoverable:hover {
  cursor: pointer;
  background-color: var(--filterbar-grey);
}
.clickable:hover {
  cursor: pointer;
}
.clickable:disabled:hover {
  cursor: not-allowed;
}
.no-click:hover {
  cursor: not-allowed;
}
.no-pointer:hover {
  cursor: default !important;
}
.topbar-container {
  background-color: var(--filterbar-grey);
  height: var(--topbar-height);
  display: flex;
  align-content: flex-end;
  justify-content: space-between;
  width: 100%;
}
.topbar-left {
  border-bottom: 1px solid var(--border-light);
  width: calc(var(--filterbar-width) + var(--list-page-main-container-padding-horizontal));
}
.topbar-right {
  width: calc(var(--filterbar-width) + var(--list-page-main-container-padding-horizontal));
}
.planning-page .topbar-right {
  width: calc(var(--sidebar-left-width));
}
.topbar-middle-tab {
  border-bottom: 1px solid white !important;
  border: 1px solid var(--border-light);
  background-color: #fff;
  border-radius: 10px 10px 0 0;
  margin-top: 8px;
  height: 47px;
}
.topbar-middle {
  border-bottom: 1px solid var(--border-light);
  width: calc(100% - 2 * (var(--filterbar-width) + var(--list-page-main-container-padding-horizontal)));
}
.aggrid-topbar {
  height: 40px;
  margin-top: 15px;
  border-left: none;
  border-bottom: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: absolute;
  top: 0;
  right: calc(var(--filterbar-width) + var(--list-page-main-container-padding-horizontal));
  width: calc(100% - 2 * (var(--filterbar-width) + var(--list-page-main-container-padding-horizontal)) - var(--sidebarmenu-collapsed-width) - 10px);
}
.topbar-subpage {
  width: 100%;
  height: 48px;
  display: flex;
  align-items: flex-end;
}
.topbar-subpage .header {
  font-weight: 700;
  font-size: 1.2em;
}
.h-70vh-autoflow {
  height: 50vh;
  overflow-y: auto;
}
.views-panel {
  margin-bottom: .5em;
  max-height: 150px;
  overflow: auto;
  padding-left: 5px;
  padding-bottom: 5px;
}
.views-commands {
  margin: 0 .25em;
  border-top: 1px solid var(--border-light);
}
.filterbar-vues-box {
  border-top: 1px solid var(--border-light);
  border-bottom: 1px solid var(--border-light);
  margin: .75em 0 .5em;
  padding: .3em;
}
.filterbar-filters-box {
  padding: .3em;
}
.filters-list {
  max-height: 40vh;
  overflow: auto;
}
.small-input {
  width: 100%;
  height: 28px;
  padding: 5px 10px;
}
.medium-input {
  height: 32px;
  padding: 7px 10px;
}
.input-with-icon {
  position: relative;
  display: inline-block;
}
.input-with-icon input {
  padding-right: 35px;
  padding-left: 5px;
}
.thin-scrollbar ::-webkit-scrollbar,
.thin-scrollbar::-webkit-scrollbar {
  width: 4px !important;
  height: 4px !important;
}
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-thumb {
  background-color: #a8a8a8;
  border-radius: 3px;
}
::-webkit-scrollbar-track {
  background-color: #f1f1f1;
  border-radius: 3px;
}
* {
  scrollbar-width: thin;
  scrollbar-color: #a8a8a8 #f1f1f1;
}
.rounded-full {
  border-radius: 50%;
}
.rounded-border {
  border-radius: 4px;
}
.rounded-border-2 {
  border-radius: 2px;
}
.rounded-border-8 {
  border-radius: 8px;
}
.dot {
  border-radius: 6px;
  width: 12px;
  height: 12px;
}
.small-dot {
  border-radius: 3px;
  width: 6px;
  height: 6px;
}
.corner-triangle-right {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  overflow: hidden;
  width: 5px;
  height: 5px;
}
.corner-triangle-right:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 5px 5px 0;
  border-color: transparent;
  border-right-color: var(--red);
  right: 0;
  top: 0;
  position: absolute;
}
.corner-triangle-left {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  overflow: hidden;
  width: 5px;
  height: 5px;
}
.corner-triangle-left:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 5px 5px;
  border-color: transparent;
  border-left-color: var(--red);
  left: 0;
  top: 0;
  position: absolute;
}
.text-underligned {
  text-decoration: underline;
}
.text-no-wrap {
  text-wrap: nowrap;
}
.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.btn {
  border-radius: 4px;
}
.btn:hover {
  cursor: pointer;
}
.rounded-small-btn {
  border-radius: 14px;
  width: 28px;
  height: 28px;
  padding: .2rem;
  font-size: 1em;
  border: none;
}
.rounded-medium-btn {
  border-radius: 17px;
  width: 32px;
  height: 32px;
  padding: .1rem;
  font-size: 1.1em;
  border: none;
}
.dialog-btn {
  padding: .75em 1em;
  height: 2rem;
  font-size: 12px;
  border-radius: 10px !important;
}
.small-btn {
  padding: .15em 1em;
  font-size: 12px;
}
.medium-btn {
  padding: 0 1em;
  height: 1.5rem;
  font-size: 12px;
  border-radius: 8px;
}
.font-12 {
  font-size: 12px;
}
.medium-btn-classic {
  padding: .5em 1em;
  font-size: 12px;
  border-radius: 8px;
}
.medium-padding {
  padding-left: .5em;
  padding-right: .5em;
}
.long-btn {
  width: 14em;
}
.long-btn2 {
  width: 18em;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=number] {
  appearance: none;
  -moz-appearance: textfield;
  -webkit-appearance: none;
}
.marquage-container {
  border-bottom: 1px solid var(--border-light);
  overflow: auto;
  display: flex;
  flex-wrap: wrap;
  margin: auto;
  justify-content: center;
  width: 100%;
  height: 100%;
  max-height: 5em;
}
.marquage-box {
  border-radius: 4px;
  border: 1px solid var(--border-light);
  min-width: 115px;
  padding: 0 4px;
  text-align: center;
  height: 24px;
  font-weight: 700;
  font-size: .9em;
  margin: 2px;
}
.p-tooltip .p-tooltip-text {
  background-color: #fff;
  color: var(--grey-2);
  border: 1px solid var(--border-light);
  font-size: .9em;
}
.p-tooltip.p-tooltip-right .p-tooltip-arrow {
  border-right-color: var(--border-light);
}
.p-tabview .p-tabview-nav li .p-tabview-nav-link {
  padding: 10px !important;
}
.p-tabview .p-tabview-panels {
  padding: 0;
}
.p-checkbox .p-checkbox-box {
  width: .9em;
  height: .9em;
  border-radius: 3px;
  border: 1px solid var(--dark-grey-1);
  margin-top: 3px;
}
.p-checkbox .p-checkbox-icon {
  width: .8em;
  height: .8em;
  font-weight: 600;
}
.p-checkbox.p-checkbox-checked .p-checkbox-box,
.p-checkbox .p-checkbox-box.p-highlight {
  background-color: #181c1f;
  border-color: #181c1f;
}
.p-checkbox .p-checkbox-box.p-highlight:hover {
  background-color: #21272b !important;
}
.p-checkbox.p-checkbox-checked .p-checkbox-icon {
  color: #fff;
  font-size: .7em;
  height: 10px !important;
  width: 10px !important;
  font-weight: 500;
}
.p-checkbox:not(.p-checkbox-disabled) .p-checkbox-box.p-focus {
  box-shadow: none;
  outline: none;
  border-color: inherit;
}
.tree-element {
  padding: 2px 10px;
  border-radius: 4px;
}
.tree-element:hover:not(.nohover) {
  background-color: #e9ecef;
  cursor: pointer;
}
.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight .p-tree-toggler {
  color: #21272b;
}
.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight {
  background-color: #f1f1f1de;
  color: #21272b;
}
.p-tree .p-tree-container .p-treenode .p-treenode-content.p-highlight:hover {
  background-color: #e9ecef !important;
}
.p-accordion .p-accordion-header:not(.p-disabled) .p-accordion-header-link,
.p-accordion .p-accordion-header:not(.p-disabled).p-highlight .p-accordion-header-link {
  background-color: #f1f1f1de;
}
.p-accordion .p-accordion-header:not(.p-disabled) .p-accordion-header-link:focus {
  outline: none;
  box-shadow: none;
}
.p-accordion .p-accordion-header .p-accordion-header-link {
  border-bottom: none;
  border-radius: 4px;
  padding: .7rem 1rem;
  height: 33px !important;
}
.custom-badge {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 .5em;
  font-size: 1em;
  font-weight: 700;
  min-width: 1.5rem;
  height: 1.5rem;
  text-align: center;
  border-radius: 4px;
  border: 1px solid #e7e7e7;
  margin: 3px 2px;
  flex-shrink: 0;
}
.background-image-selector-item {
  width: 200px;
  height: 150px;
  border: 2px solid white;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.background-image-selector-item img {
  height: 150px;
}
.background-image-selector-item-container {
  border: 2px solid transparent;
}
.background-image-selector-item-container.active {
  border: 2px solid var(--devis-color);
  border-radius: 3px;
}
.custom-badge-icon {
  margin-left: 8px;
  height: 1em;
  margin-top: 2px;
  cursor: pointer;
}
.relative {
  position: relative;
}
.absolute {
  position: absolute;
}
.eye-icon {
  position: absolute;
  top: 3px;
  right: 5px;
}
.right-sidebar-lignes-item {
  height: 3.5em;
  border-top: 1px solid var(--grey);
  font-size: .8em;
  padding: .2em;
}
.right-sidebar-lignes-item:hover {
  background-color: var(--filterbar-grey);
}
.right-sidebar-lignes-item .row-one {
  height: 1.5em;
}
.right-sidebar-lignes-item.three-lines {
  height: 5em;
}
.fiche-top-tab-container {
  border-bottom: 1px solid var(--border-light);
  height: var(--fiche-top-bar-container-height);
  padding-right: var(--right-sidebar-right-side-width);
  display: flex;
  min-height: 50px;
}
.fiche-top-tab-container.small {
  height: 2em;
  min-height: auto;
  padding-right: 0;
}
.fiche-top-tab {
  width: 19%;
  font-size: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 15px 25px;
  margin-bottom: 1px;
  color: var(--dark-grey);
}
.fiche-top-tab.active {
  margin-bottom: 0;
  font-weight: 700;
  color: #000;
  background-color: #e8f4fe;
  border-bottom: 2px solid #7f7f7f;
}
.fiche-top-tab-equal-width {
  flex: 1;
  font-size: .8em;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 3px 6px;
  margin-bottom: 1px;
  color: var(--dark-grey);
}
.fiche-top-tab-equal-width.active {
  margin-bottom: 0;
  font-weight: 600;
  color: var(--devis-color);
  border-bottom: 2px solid var(--devis-color);
}
.fiche-top-tab-blue.active {
  color: var(--articles-color);
  border-bottom: 2px solid var(--articles-color);
}
.fiche-top-tab.active:hover,
.fiche-top-tab-small:hover,
.fiche-top-tab-equal-width:hover {
  background-color: #e8f4fe !important;
}
.fiche-top-tab-small {
  width: 18%;
  font-size: .8em;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 3px 6px;
  margin-bottom: 1px;
  color: var(--dark-grey);
}
.fiche-top-tab-small.active {
  margin-bottom: 0;
  font-weight: 600;
  color: var(--devis-color);
  border-bottom: 2px solid var(--devis-color);
}
.fiche-input-ql-editor .ql-editor {
  padding: 0 0 0 2px !important;
  background-color: transparent !important;
  border-radius: 0 !important;
  border: none !important;
}
.listpage-grid-link {
  position: relative;
  display: inline-block;
}
.listpage-grid-link:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background: currentColor;
  transition: width .5s ease-out;
}
.listpage-grid-link:hover:after {
  width: 100%;
}
.annuaire-activite .p-accordion .p-accordion-content {
  padding: 0 !important;
}
.annuaire-activite .ag-root-wrapper {
  border: none !important;
}
.annuaire-activite .ag-header {
  height: 42px !important;
  min-height: 42px !important;
}
.fiche-input-ql-editor-ml p {
  margin-left: 3px !important;
}
p.ql-align-center,
.fiche-input-ql-editor p {
  padding: 0;
  margin: 0;
}
.fiche-input-ql-editor .p-editor-content .ql-container .ql-snow {
  border: none !important;
}
.list-panel-tieredmenu.p-tieredmenu {
  padding: 4px;
  border: none;
  width: auto;
}
.list-panel-tieredmenu.p-tieredmenu .p-menuitem-link {
  padding: 5px 6px;
  font-size: .9em;
  height: auto;
  border-radius: 4px;
}
.list-panel-tieredmenu.p-tieredmenu .p-menuitem-text {
  margin-left: 0;
}
.list-panel-tieredmenu.p-tieredmenu .p-menuitem-active > .p-submenu-list {
  padding: 5px 4px;
  border-radius: 4px;
}
.textarea {
  padding-left: 2px;
}
.input-overlay-text {
  position: absolute;
  top: 3px;
  font-size: 14px;
  line-height: 1.2em;
  left: -2px;
  padding: 1px 2px;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.libelle-html p {
  margin: 0;
}
.p-toast .p-toast-message.p-toast-message-success {
  background: rgba(202, 252, 232, .99);
}
.bold-input .input-overlay-text {
  font-weight: 700;
}
.text-right.input-overlay-text {
  right: 0;
}
.search-input-icon {
  position: absolute;
  right: .8em;
  top: calc(50% + .1em);
  transform: translateY(-50%);
  font-size: 1em;
  font-weight: 700;
  color: var(--dark-grey);
  padding: .2em;
  width: 1.5em;
}
.custom-dim-header {
  font-weight: 700;
  font-style: italic;
  color: var(--grey-2);
  font-size: .9em;
}
.caption-text {
  font-size: .8em;
  font-style: italic;
}
.search-warn-message {
  position: absolute;
  left: 256px;
  top: 45px;
  min-width: 18em;
  padding: .25em;
  z-index: 3;
}
.search-warn-message.pin-left {
  left: 0;
}
.p-inline-message .p-inline-message-text {
  font-size: .9em;
}
.menubar {
  height: 60px;
  background-color: green;
}
.navbar-ariane {
  display: flex;
  align-items: center;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-width: 100%;
}
.navbar-ariane-item {
  flex-shrink: 0;
  font-weight: 700;
  background-color: transparent;
  border: none;
  overflow: hidden;
  text-overflow: ellipsis;
}
.navbar-ariane-item a {
  color: #000;
}
.navbar-ariane-arrow {
  margin: 0 8px;
}
svg:not(:root) {
  overflow-clip-margin: none;
  overflow: visible;
}
button:disabled:hover {
  cursor: not-allowed !important;
}
.left-tab-sub-link {
  font-size: .9em;
  width: 100%;
}
.left-tab-sub-link:hover {
  background-color: var(--filterbar-grey);
  border-radius: 4px;
}
.transition-0,
.transition-0.hoverCustomPopup,
.transition-0 .hoverCustomPopup,
.hoverCustomPopup.transition-0,
.hoverCustomPopup .transition-0 {
  transition-duration: .1s;
  transition-delay: .1s;
}
.hoverCustomPopup {
  opacity: 0;
  visibility: hidden;
  transition: opacity ease, visibility linear;
  transition-duration: .3s;
  transition-delay: .5s;
  position: absolute;
  top: -1px;
  right: -202px;
  width: 230px;
  padding: 5px;
  border-radius: 4px;
  background-color: #fff;
  border: 1px solid var(--border-light);
  z-index: 50;
}
.item-tab-label {
  font-weight: 400;
}
.item-tab-label:hover {
  background-color: var(--filterbar-grey);
  border-radius: 4px;
  width: 100%;
}
.hoverCustomPopupContainer:hover .hoverCustomPopup {
  opacity: 1;
  visibility: visible;
  transition-delay: .5s;
}
.document-grid-container {
  display: flex;
  flex-wrap: wrap;
  padding: .25em;
}
.document-grid-container-main {
  border-radius: 4px;
  border: 1px solid #babfc7;
  overflow-y: auto;
}
.document-icon-text {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90%;
  margin-bottom: 4px;
  height: 4em;
  font-size: .95em;
}
.document-icon-panel-btn {
  position: absolute;
  top: -5px;
  right: -5px;
  font-size: .8em;
  display: none;
}
.document-icon-container {
  position: relative;
  width: 6em;
  height: 7.5em;
  font-size: .8em;
  margin: .2em;
  border-radius: 4px;
  text-align: center;
  word-wrap: break-word;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  transition: background-color .25s ease;
}
.document-icon-container:hover {
  transition: background-color .25s ease;
  background-color: #eee;
}
.document-icon-container:hover .document-icon-panel-btn {
  display: block;
}
.document-icon {
  width: 1.5em;
  height: 1.5em;
  font-size: 1.5em;
}
.nano-icon {
  height: 7px;
  font-size: 7px;
}
.micro-icon {
  height: 10px;
  font-size: 10px;
}
.tiny-icon {
  height: 12px;
  font-size: 12px;
}
.normal-icon {
  width: 14px;
  height: 14px;
  font-size: 14px;
}
.normal-icon-1 {
  width: auto;
  height: 15px;
  font-size: 15px;
}
.burger-menu-big-icon {
  width: 20px;
  height: 20px;
  font-size: 20px;
}
.long-icon {
  height: 24px;
  width: auto;
}
.big-icon {
  width: 1.7em;
  height: 1.7em;
  font-size: 1.7em;
}
.tiny-icon-grid .no-rows-icon {
  margin-top: 10px;
  height: 30px;
  width: 30px;
  font-size: 30px;
}
.no-rows-icon {
  height: 4vw;
  width: 4vw;
  font-size: 4vw;
}
.fiche-icon-fixed {
  width: 2.7em;
  height: 2.7em;
  font-size: 2.7em;
}
.fiche-icon {
  width: 2.5em;
  height: 2.5em;
  font-size: 2.5em;
}
.ariane-icon {
  width: 1.7em;
  height: 1.7em;
  font-size: 1.3em;
}
.ariane-accueil svg {
  font-size: .9em;
  color: var(--orange);
}
.ariane-header {
  padding-top: auto;
  font-size: 22px;
}
.medium-icon {
  width: 1.2em;
  height: 1.2em;
  font-size: 1.2em;
}
.medium-icon-1 {
  width: 1.3em;
  height: 1.3em;
  font-size: 1.3em;
}
.medium-icon-2 {
  width: 1em;
  height: 1em;
  font-size: 1em;
}
.medium-icon-3 {
  width: 1.1em;
  height: 1.1em;
  font-size: 1.1em;
}
.medium-icon-4 {
  width: 1.4em;
  height: 1.4em;
  font-size: 1.4em;
}
.medium-icon-5 {
  width: 1.5em;
  height: 1.5em;
  font-size: 1.5em;
}
.star-icon {
  width: 1.1em;
  height: 1.1em;
  font-size: 1.1em;
}
.p-radiobutton,
.p-radiobutton .p-radiobutton-box {
  width: 16px;
  height: 16px;
  margin-top: 1px;
}
.p-radiobutton .p-radiobutton-box.p-highlight {
  border: 4px solid var(--orange);
  background-color: #fff;
}
.p-radiobutton .p-radiobutton-box .p-radiobutton-icon {
  width: 0px;
  height: 0px;
}
.p-field-radiobutton {
  margin-bottom: 0;
  margin-left: 1.4em;
  line-height: 1.4em;
}
.p-field-radiobutton.active {
  font-weight: 700;
}
.adjusted-margin-text {
  margin-bottom: 3px;
}
.small-line-height {
  line-height: 1.5em;
}
.text-wrap {
  text-wrap: wrap;
}
.truncate-text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90%;
}
.header-fiche-2-lines {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90%;
  margin-bottom: 4px;
  height: 3em;
}
.header-fiche-3-lines {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90%;
  margin-bottom: 4px;
  height: 3em;
}
.ellipsis-3-lines {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 97%;
  margin-bottom: 4px;
  height: 4em;
}
.ellipsis-4-lines {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 97%;
  margin-bottom: 4px;
  max-height: 6em;
}
.role-header {
  font-weight: 600;
  margin: 0;
  padding: 0;
  color: var(--grey-2);
}
.disabled-link {
  cursor: default;
  color: gray;
}
.small-text {
  font-size: .9em;
}
.p-tree {
  border: none;
  padding: 0;
}
textarea.no-resize {
  resize: none;
}
.p-tree .p-tree-container .p-treenode .p-treenode-content .p-tree-toggler:focus {
  box-shadow: none;
}
.p-tree .p-tree-container .p-treenode .p-treenode-content .p-tree-toggler {
  height: 1.75em;
  width: 1.75em;
}
.p-tree .p-tree-container .p-treenode .p-treenode-content {
  padding: 0;
}
.p-tree .p-tree-container .p-treenode .p-treenode-content .p-checkbox {
  display: flex;
  margin-right: 0;
  align-items: center;
}
.p-dropdown:not(.p-disabled).p-focus,
.p-inputswitch.p-focus .p-inputswitch-slider {
  box-shadow: 0 0 0 .1rem #c7d2fed3;
}
.p-inputtext:enabled:focus,
button.p-button.p-component.p-datepicker-trigger.p-button-icon-only:focus {
  box-shadow: none;
}
.p-button:hover {
  border-color: #000 !important;
}
.p-component {
  font-family: Nunito, sans-serif;
}
.orange-dropdown {
  background-color: var(--orange);
  border: none;
  margin-top: 1em;
  width: 90%;
}
.orange-dropdown .p-inputtext {
  color: #fff;
}
.no-border-input input,
.no-border-input .p-dropdown {
  border: none;
  background-color: transparent;
}
.my-select {
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciICBoZWlnaHQ9IjE1IiB3aWR0aD0iMTUiIHZpZXdCb3g9IjAgMCA0NDggNTEyIj48cGF0aCBkPSJNMjAxLjQgMzQyLjZjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBsMTYwLTE2MGMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM3MtMzIuOC0xMi41LTQ1LjMgMEwyMjQgMjc0LjcgODYuNiAxMzcuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsMTYwIDE2MHoiLz48L3N2Zz4=);
  background-repeat: no-repeat;
  background-size: 10px 10px;
  background-position-x: 98%;
  background-position-y: 5px;
}
.tiny-select {
  height: 20px;
  width: 4.2em;
  font-size: 12px;
}
.tiny-select .p-dropdown-trigger {
  width: 1.3em;
}
.tiny-select .p-inputtext {
  font-size: 12px;
  line-height: 16px;
  padding: 0 .1em !important;
  text-align: right;
  margin-right: 8px;
}
.small-select .p-dropdown {
  padding: .25em .75em;
  height: 3em;
}
.small-select .p-inputtext {
  padding: .25em .75em;
}
.my-select .p-dropdown {
  padding: 0 .75em;
  height: 23px;
  background-color: #fff;
}
.my-select .p-inputtext {
  padding: 0 .75em;
}
.p-calendar {
  width: 100%;
  height: 100%;
}
.calendar .p-inputtext {
  padding: 0 .75em;
}
.calendar.text-bold .p-inputtext {
  font-weight: 700;
}
.calendar .p-inputtext,
.calendar .p-button {
  border-radius: 0;
}
.calendar .p-button {
  background-color: var(--filterbar-grey);
  border-color: var(--filterbar-grey);
  color: #000;
}
.calendar .p-button:hover {
  border-color: transparent !important;
  color: #000;
}
.calendar .p-button.p-button-icon-only {
  padding: 0;
  width: auto;
}
.version-item {
  padding: .75em .75em 0 .25em;
  margin: .75em 0;
  font-size: .8em;
  min-width: 275px;
  background-color: #fff;
}
.version-item.active {
  background-color: #dae9f8;
}
.message-item {
  border-radius: 8px;
  border: 1px solid var(--border-light);
  padding: .75em;
  margin: .75em;
  font-size: .8em;
  min-width: 275px;
  background-color: #fff;
}
.message-item-date {
  font-size: .8em;
  font-weight: 700;
  color: var(--dark-grey);
  display: flex;
  align-items: start;
  flex-direction: column;
  margin-top: 2px;
}
.message-item-title {
  font-size: .95em;
  font-weight: 700;
  display: flex;
  align-items: start;
}
.message-item-content {
  font-size: .95em;
}
.maps-img {
  width: 70%;
  height: 100%;
  margin: .5em 0;
}
.bold-input input,
.bold-input textarea,
.bold-input .p-inputtext,
.bold-input .p-dropdown {
  font-weight: 700;
  font-family: Nunito, sans-serif;
}
.p-inputtext,
textarea,
input,
.p-dropdown {
  font-family: Nunito, sans-serif;
  font-size: 14px;
  line-height: 1.2em;
  padding: 0;
}
.ellipsis-menu-btn {
  display: none;
}
.ag-row-hover .ellipsis-menu-btn,
.right-sidebar-lignes-item:hover .ellipsis-menu-btn {
  display: initial;
}
.right-sidebar-lignes-item:hover .hide-on-hover,
.ag-cell:hover .hide-on-hover {
  display: none;
}
.visibility-panel {
  overflow: auto;
  font-size: 13px;
  max-height: 25vh;
  padding: .5em;
}
.visibility-panel.long {
  max-height: 45vh;
}
.p-overlaypanel:after,
.p-overlaypanel:before {
  display: none;
}
.p-overlaypanel .p-overlaypanel-content {
  padding: 4px;
}
.p-overlaypanel {
  margin-top: 0;
}
.centered-burger-menu-header {
  color: var(--grey-2);
  text-align: center;
  width: 100%;
  font-style: italic;
  font-weight: 600;
  margin-bottom: .25em;
  font-size: .9em;
}
.burger-menu-bloc {
  border-top: 1px solid var(--border-light);
  margin-top: .2em;
  padding: .2em 0 0;
}
.overlay-menu hr {
  height: 1px !important;
  border-top: 1px solid var(--border-light);
  border-bottom: none;
  margin-top: .6em;
  box-sizing: border-box;
}
.overlay-menu {
  padding: .25em .5em;
}
.filters-bar-container {
  position: absolute !important;
  top: 5px;
  z-index: 99;
  overflow-x: auto;
  border-radius: 4px;
  border: 1px solid transparent;
}
.filters-bar-container:hover {
  border: 1px solid var(--filterbar-grey);
}
.filters-bar {
  flex-wrap: wrap;
  overflow-y: hidden;
  white-space: nowrap;
  max-height: 28px;
  height: 28px;
  transition: max-height .5s ease-out;
  background-color: #fff;
}
.filters-bar:hover,
.filters-bar-container:hover > .filters-bar {
  max-height: 700px;
  height: auto;
  transition: max-height .5s ease-in;
}
.filter-bar-container {
  width: var(--filterbar-width);
  height: 100%;
  position: relative;
}
.filter-sidebar {
  border-radius: 7px 0 0 7px;
  padding: 10px;
  width: var(--filterbar-width);
  font-size: .9em;
  overflow: auto;
}
.filter-sidebar-minimized-content {
  display: none;
}
.filter-sidebar.over-everything {
  width: var(--filterbar-width) !important;
  transition: width .1s ease;
}
.filter-sidebar-toggle-btn {
  position: absolute;
  top: 4px;
  left: 4px;
}
.confirmButtonsFixed {
  position: absolute;
  top: -29px;
  right: 20px;
}
@media screen and (max-width: 1367px) {
  .filter-bar-container {
    width: 40px;
  }
  .filter-sidebar {
    transition: width .1s ease;
    width: 40px !important;
    z-index: 15;
    position: absolute;
    top: 0;
    left: 0;
  }
  .filter-sidebar-minimized-content {
    display: block;
  }
  .filter-sidebar-maximized-content {
    display: none;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 1.1) {
  .fiche-icon {
    width: 2em;
    height: 2em;
    font-size: 2em;
  }
  html {
    font-size: 85%;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 1.25) {
  .fiche-icon {
    width: 1.75em;
    height: 1.75em;
    font-size: 1.75em;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 1.4) {
  html {
    font-size: 80%;
  }
  .fiche-icon {
    width: 1.5em;
    height: 1.5em;
    font-size: 1.5em;
  }
}
code {
  color: #f8f8f2;
  white-space: nowrap;
}
pre {
  background-color: #272822;
  border-radius: .3em;
  padding: 5px;
  margin: 5px;
}
pre code {
  white-space: inherit;
}
.burgermenu-item-button {
  height: 18px;
}
.checkboxmulti-renderer {
  display: flex;
  flex-wrap: wrap;
  padding: 2px;
  border: 1px dashed #ccc;
  border-radius: 4px;
}
.checkboxmulti-renderer.multi-select {
  border: none;
}
.checkboxmulti-renderer .checkboxmulti-switch-label {
  display: flex;
  align-items: center;
  flex-basis: 50%;
  padding-right: 10px;
  height: 22px;
}
.checkboxmulti-label {
  flex-grow: 7;
  white-space: "nowrap";
  flex-basis: 65%;
}
#form-file-upload {
  height: 16rem;
  width: 28rem;
  max-width: 100%;
  text-align: center;
  position: relative;
}
#input-file-upload {
  display: none;
}
#label-file-upload {
  display: flex;
  align-items: center;
  justify-content: center;
  border-width: 2px;
  border-radius: 1rem;
  border-style: dashed;
  border-color: #cbd5e1;
  background-color: #f8fafc;
}
#label-file-upload.drag-active {
  background-color: #fff;
}
.upload-button {
  cursor: pointer;
  padding: .25rem;
  font-size: 1rem;
  border: none;
  font-family: Oswald, sans-serif;
  background-color: transparent;
}
.upload-button:hover {
  text-decoration-line: underline;
}
#drag-file-element {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  inset: 0;
}
.fa-person-chantier-solid {
  width: auto !important;
}
