/* Floating label example used as basis: https://codepen.io/devesh8/pen/MWYEJEP */

.filtering-container{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
}
.floating-group { 
  position:relative; 
  margin-bottom:20px; 
  min-width: 200px;
}
.floating-label {
  color: var(--dark-accent); 
  font-size:13px;
  font-weight:normal;
  position:absolute;
  pointer-events:none;
  left:15px;
  top:11px;
  padding:0 5px;
  background: var(--light-color);
  transition:0.2s ease all; 
  -moz-transition:0.2s ease all; 
  -webkit-transition:0.2s ease all;
}
.floating-input, .floating-select {
  font-size:12px;
  display:block;
  width:100%;
  height:36px;
  padding: 0 20px;
  background: var(--light-color);
  color:  var(--dark-color);
  border: 1px solid  var(--light-accent);
  border-radius: 4px;
  box-sizing: border-box;
  &:focus{
    outline:none;
    ~ .floating-label{
      top:-8px;
      font-size:13px;
    }
  }
}

select.floating-select {
  -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
select.floating-select::-ms-expand {
  display: none;
}

.floating-input:not(:placeholder-shown) ~ .floating-label {
  top:-8px;
  font-size:13px;
}
.floating-select:not([value=""]):valid ~ .floating-label {
  top:-8px;
  font-size:13px;
}
.floating-select[value=""]:focus ~ .floating-label {
  top:11px;
  font-size:13px;
}
.floating-select:not([multiple]):not([size]) {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='https://www.w3.org/2000/svg' width='8' height='6' viewBox='0 0 8 6'%3E%3Cpath id='Path_1' data-name='Path 1' d='M371,294l4,6,4-6Z' transform='translate(-371 -294)' fill='%23003d71'/%3E%3C/svg%3E%0A");
    background-position: right 15px top 50%;
    background-repeat: no-repeat;
}

.did-error-input{
  .floating-input, .floating-select {
    border: 2px solid #9d3b3b;
    color:#9d3b3b;
  }
  .floating-label{
    font-weight: 600;
    color:#9d3b3b;
  }
  .floating-select:not([multiple]):not([size]) {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='https://www.w3.org/2000/svg' width='8' height='6' viewBox='0 0 8 6'%3E%3Cpath id='Path_1' data-name='Path 1' d='M371,294l4,6,4-6Z' transform='translate(-371 -294)' fill='%239d3b3b'/%3E%3C/svg%3E%0A");
}
}

.input-group {
  display: flex;
  .floating-input{
    border-radius:0 4px 4px 0;
    border-left:0;
    padding-left:0;
  }
}
.input-group-append {
  display:flex;
  align-items:center;
/*   margin-left:-1px; */
}
.input-group-text {
    display: flex;
    align-items: center;
    font-weight: 400;
    height:34px;
    color: #323840;
    padding: 0 5px 0 20px;
  font-size:12px;
    text-align: center;
    white-space: nowrap;
    border: 1px solid var(--dark-color);
  border-radius: 4px 0 0 4px;
  border-right:none;
}