.form-item-editor-format label {
  margin-right: 0.5rem;
}

.form-item label.form-required::after,
.form-required::after {
  content: '*';
  color: var(--bs-danger);
  margin-left: 0.15em;
}

.views-exposed-form .form-select {
  width: 100%;
}

/* Exposed filters: horizontal row on desktop, stack on small screens. */
.views-exposed-form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0.5rem;
  margin-bottom: 1rem;
}

.views-exposed-form > .form-item {
  flex: 0 0 auto;
  width: auto;
  max-width: 16rem;
  margin-bottom: 0;
}

.views-exposed-form > .form-actions {
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  margin-bottom: 0;
}

@media (max-width: 767.98px) {
  .views-exposed-form > .form-item,
  .views-exposed-form > .form-actions {
    flex: 1 1 100%;
    max-width: 100%;
  }
}

.views-exposed-form .form-item,
.views-exposed-form .form-actions {
  margin-bottom: 0;
}

button.link {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--bs-link-color);
  text-decoration: underline;
}

button.link:hover {
  color: var(--bs-link-hover-color);
}

/* Checkboxes and radios inside tables (tableselect, VBO, Views UI listings).
   Bootstrap's .form-check indents the input with padding + negative margin,
   which pushes the control outside the table cell. Reset it so the control
   stays centred within the cell. */
td .form-check,
th .form-check,
td .form-item,
th .form-item {
  margin-bottom: 0;
  padding-left: 0;
  min-height: 0;
}

td .form-check .form-check-input,
th .form-check .form-check-input,
td .form-check-input,
th .form-check-input,
td .form-checkbox,
th .form-checkbox,
td .form-radio,
th .form-radio {
  float: none;
  margin: 0;
}

td .form-check-label,
th .form-check-label {
  margin-left: 0.375rem;
}
