p {
  margin-bottom: 0.5rem;
}

/* Search form button: use hover style as default, darker on hover */
.btn.btn-light {
  background-color: #e9ecef;
  border-color: #dee2e6;
  color: #212529;

  &:hover {
    background-color: #ced4da;
    border-color: #adb5bd;
    color: #212529;
  }
}

/* Generic Bootstrap tweaks */
div.field_with_errors {
  display: inline;
  border: 0;
}

.field_with_errors>select,
.field_with_errors>input {
  border: 1px solid red;
}

/* Global form styling: inputs, spacing, actions */
input.form-control,
select.form-control {
  max-width: 20rem;
}

.form-group {
  margin-bottom: 1rem;
}

/* Radio buttons: label on own line, each option on its own line with spacing */
.form-group .radio {
  display: block;
  margin-bottom: 0.5rem;
}

.form-group .radio label {
  margin-left: 0.35rem;
  font-weight: normal;
}

/* Checkboxes: space between checkbox and label text */
.form-group .checkbox {
  display: block;
}

.form-group .checkbox input[type="checkbox"] {
  margin-right: 0.5rem;
}

.form-actions {
  margin-bottom: 2rem;
}

a,
.nav-tabs a.nav-link {
  color: var(--orv-link);
  text-decoration: none;

  &:hover {
    color: var(--orv-link-hover);
    text-decoration: underline;
  }
}

a.btn.btn-primary,
a.btn.btn-primary:visited,
button.btn.btn-primary,
input.btn.btn-primary,
input[type="submit"].btn-primary {
  background-color: var(--orv-link);
  color: #fff;
  border-color: var(--orv-link);

  &:hover {
    background-color: var(--orv-link-hover);
    color: #fff;
    border-color: var(--orv-link-hover);
  }
}

a.btn.btn-info:visited,
a.btn.btn-danger:visited,
a.btn.btn-warning:visited {
  color: #fff;
}

ul.dropdown-menu a.disabled {
  color: #ccc;
}

ul.dropdown-menu a.disabled:hover {
  background-color: transparent;
  color: #ccc;
  text-decoration: none;
}

/* Pagination: use theme link color for page links */
.pagination .page-link {
  color: var(--orv-link);
}

.pagination .page-link:hover {
  color: var(--orv-link-hover);
}

/* Navbar */
.mainnav.navbar {
  background-color: #fff !important;
  border-bottom: none;
}

.navbar-nav .nav-link {
  color: var(--orv-text-header);
  padding: 0.5rem 1rem;
  border: none;
  border-bottom: 3px solid transparent;
  border-radius: 0;
}

.navbar-nav .nav-link:hover {
  color: var(--orv-text-header-hover);
}

.navbar-nav .nav-item.active .nav-link {
  font-weight: 600;
  border-bottom-color: var(--orv-text-header);
}

/* Tables */
.table {
  background-color: #fff;
  border-collapse: collapse;
  width: 100%;

  &.table-bordered th,
  &.table-bordered td {
    border-left: none;
    border-right: none;
    border-top: none;
    border-bottom: 1px solid var(--orv-border);
  }

  & thead th {
    border-bottom: 2px solid var(--orv-border);
    font-weight: 600;
    padding: 0.75rem 0.75rem 0.2rem;
    text-align: left;
    background: transparent;
  }

  tbody td {
    padding: 0.75rem 1rem;
  }

  tbody tr:hover {
    background-color: #f5f5f5;
  }

  tbody.table-group-divider {
    border-top: 3px solid var(--orv-nav-inactive);
  }

  &.table-sm thead th {
    padding: 0.2rem 0.5rem;
  }

  &.table-sm tbody td {
    padding: 0.2rem 0.5rem;
  }
}