
.o_hidden {
  display: none !important;
}

.o_text_overflow {
  display: inline-block;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}

.ui-autocomplete {
  z-index: 1051;
  max-width: 600px;
}

.ui-autocomplete .ui-menu-item > a {
  display: block;
}

[aria-hidden="true"], [aria-hidden="1"] {
  display: none !important;
}

.dropdown-toggle {
  white-space: nowrap;
}

.dropdown-toggle.o-no-caret::before, .dropdown-toggle.o-no-caret::after {
  content: normal;
}

:not(.collapsed) > .o-collapsed-label,
.collapsed > .o-not-collapsed-label {
  display: none;
}

.o_rtl .ui-autocomplete {
  direction: ltr;
  right: 0;
  left: auto;
}

.o_rtl .ui-datepicker-next, .o_rtl .ui-datepicker-prev {
  -webkit-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.custom-control.custom-checkbox .custom-control-input:not(:checked):not(:indeterminate) ~ .custom-control-label:before {
  background: none;
  outline: 1px solid #4c4c4c;
}

.custom-control.custom-checkbox .custom-control-input:not(:checked):not(:indeterminate):disabled ~ .custom-control-label:before {
  background: #e2e2e0;
  opacity: 0.25;
}

@media print {
  .custom-control.custom-checkbox {
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
  }
}

.o_catch_attention {
  position: relative;
  z-index: 1;
  animation: catchAttention 200ms ease 0s infinite normal;
}

@keyframes catchAttention {
  0% {
    outline: 0px solid #7c7bad;
  }
  100% {
    outline: 20px solid rgba(124, 123, 173, 0);
  }
}

.o_debounce_disabled {
  pointer-events: none;
}

span.o_force_ltr {
  display: inline-block;
}

.o_force_ltr, .o_field_phone {
  unicode-bidi: embed;
  /*rtl:ignore*/
  direction: ltr;
}

.o_object_fit_cover {
  object-fit: cover;
}

.o_image_24_cover {
  width: 24px;
  height: 24px;
  object-fit: cover;
}

.o_image_40_cover {
  width: 40px;
  height: 40px;
  object-fit: cover;
}

.o_image_64_cover {
  width: 64px;
  height: 64px;
  object-fit: cover;
}

.o_image_64_contain {
  width: 64px;
  height: 64px;
  object-fit: contain;
}

.o_image_64_max {
  max-width: 64px;
  max-height: 64px;
}

.o_image_128_max {
  max-width: 128px !important;
  max-height: 128px !important;
}

.o_width_128 {
  width: 128px;
}

