.bsftfilt-grid {
  display: grid;
  gap: 12px;
  width: 100%;
}

.bsftfilt-grid.bsftfilt-grid--flex {
  display: flex;
}

.bsftfilt-grid__cell {
  min-width: 0;
}

.bsftfilt-grid__cell .bsftfilt-field {
  height: 100%;
}

.bsftfilt-grid__fallback {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px dashed var(--bsftfilt-border, #e2e8f0);
}

.bsftfilt--layout-grid .bsftfilt-field {
  margin: 0;
}

@media screen and (max-width: 1000px) {
  .bsftfilt-grid:not(.bsftfilt-grid--flex) {
    grid-template-columns: repeat(var(--bsftfilt-grid-cols-tablet, 1), minmax(0, 1fr)) !important;
  }
}

@media screen and (max-width: 550px) {
  .bsftfilt-grid:not(.bsftfilt-grid--flex) {
    grid-template-columns: repeat(var(--bsftfilt-grid-cols-mobile, 1), minmax(0, 1fr)) !important;
  }
}
