/*!
 * jQuery QueryBuilder 2.7.0
 * Copyright 2014-2023 Damien "Mistic" Sorel (http://www.strangeplanet.fr)
 * Licensed under MIT (https://opensource.org/licenses/MIT)
 */
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transition-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  100% {
    transform: perspective(400px);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes shake {
  0% {
    transform: translate(2px, 1px) rotate(0deg);
  }
  10% {
    transform: translate(-1px, -2px) rotate(-2deg);
  }
  20% {
    transform: translate(-3px, 0) rotate(3deg);
  }
  30% {
    transform: translate(0, 2px) rotate(0deg);
  }
  40% {
    transform: translate(1px, -1px) rotate(1deg);
  }
  50% {
    transform: translate(-1px, 2px) rotate(-1deg);
  }
  60% {
    transform: translate(-3px, 1px) rotate(0deg);
  }
  70% {
    transform: translate(2px, 1px) rotate(-2deg);
  }
  80% {
    transform: translate(-1px, -1px) rotate(4deg);
  }
  90% {
    transform: translate(2px, 2px) rotate(0deg);
  }
  100% {
    transform: translate(1px, -2px) rotate(-1deg);
  }
}
@keyframes wobble {
  0% {
    transform: none;
  }
  15% {
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  100% {
    transform: none;
  }
}
:root {
  --qb-group-background-color: rgba(0, 0, 0, .015);
  --qb-group-border-color: #DEE2E6;
  --qb-rule-background-color: rgba(0, 0, 0, .015);
  --qb-rule-border-color: #DEE2E6;
  --qb-error-border-color: var(--bs-form-invalid-color);
  --qb-error-background-color: transparent;
  --qb-ticks-color: #CCC;
}

.query-builder .rule-container, .query-builder .rules-group-container {
  position: relative;
  margin: 4px 0;
  border-radius: 5px;
  padding: 5px;
  border: 1px solid var(--qb-rule-border-color);
  background: var(--qb-rule-background-color);
}

.query-builder .error-container, .query-builder .rule-container .rule-filter-container,
.query-builder .rule-container .rule-operator-container,
.query-builder .rule-container .rule-value-container {
  display: inline-block;
  margin: 0 5px 0 0;
  vertical-align: middle;
}

.query-builder .rules-group-container {
  padding: 10px;
  padding-bottom: 6px;
  border: 1px solid var(--qb-group-border-color);
  background: var(--qb-group-background-color);
}
.query-builder .rules-group-header {
  margin-bottom: 10px;
}
.query-builder .rules-group-header .group-conditions .btn.readonly:not(.active),
.query-builder .rules-group-header .group-conditions input[name$=_cond] {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.query-builder .rules-group-header .group-conditions .btn.readonly {
  border-radius: 3px;
}
.query-builder .rules-list {
  list-style: none;
  padding: 0 0 0 15px;
  margin: 0;
}
.query-builder .rule-value-container {
  border-left: 1px solid #DDD;
  padding-left: 5px;
}
.query-builder .rule-value-container label {
  margin-bottom: 0;
  font-weight: normal;
}
.query-builder .rule-value-container label.block {
  display: block;
}
.query-builder .rule-value-container select,
.query-builder .rule-value-container input[type=text],
.query-builder .rule-value-container input[type=number] {
  padding: 0.375rem 0.75rem;
}
.query-builder .error-container {
  display: none;
  color: var(--bs-form-invalid-color);
}
.query-builder .has-error {
  background-color: var(--qb-error-background-color);
}
.query-builder .has-error .error-container {
  display: inline-block !important;
}
.query-builder .rules-list > *::before, .query-builder .rules-list > *::after {
  content: "";
  position: absolute;
  left: -10px;
  width: 10px;
  height: calc(50% + 4px);
  border-color: var(--qb-ticks-color);
  border-style: solid;
}
.query-builder .rules-list > *::before {
  top: -4px;
  border-width: 0 0 2px 2px;
}
.query-builder .rules-list > *::after {
  top: 50%;
  border-width: 0 0 0 2px;
}
.query-builder .rules-list > *:first-child::before {
  top: -12px;
  height: calc(50% + 14px);
}
.query-builder .rules-list > *:last-child::before {
  border-radius: 0 0 0 4px;
}
.query-builder .rules-list > *:last-child::after {
  display: none;
}

:root {
  --qb-description-background-color: #D9EDF7;
  --qb-description-border-color: #BCE8F1;
  --qb-description-text-color: #31708F;
}

.query-builder p.filter-description {
  margin: 5px 0 0 0;
  background: var(--qb-description-background-color);
  border: 1px solid var(--qb-description-border-color);
  color: var(--qb-description-text-color);
  border-radius: 5px;
  padding: 2.5px 5px;
  font-size: 0.8em;
}

.query-builder .rules-group-header [data-invert] {
  margin-left: 5px;
}

[data-bs-theme=dark] :root {
  --qb-group-background-color: rgba(50, 70, 80, .5);
  --qb-group-border-color: #495057;
  --qb-rule-background-color: rgba(40, 40, 40, .9);
  --qb-rule-border-color: #495057;
  --qb-error-border-color: #800;
  --qb-error-background-color: #322;
  --qb-ticks-color: #222;
  --qb-description-background-color: rgba(0, 170, 255, .2);
  --qb-description-text-color: #AAD1E4;
  --qb-description-border-color: #346F7B;
}