html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

html {
  position: relative;
  min-height: 100%;
}

.navbar-brand img {
  width: 185px;
}

footer {
  background-color: var(--bs-gray-200);
}

label:has( + [required]):after {
  content: " *";
  font-weight: bold;
  color: darkgrey;
}

.ok {
  font-size: 20px !important;
  font-weight: bold !important;
  border: 0;
  margin-top: 10px;
  margin-bottom: 10px;
  background-color: #011627;
}

.validation-summary-valid {
  display: none;
}

.validation-summary-errors {
  ul {
    margin: 0;
  }

  &:not(.card-body) {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }

  color: var(--bs-danger);
}

.nav-link.active:not([role=tab]) {
  text-decoration: underline;
  text-underline-offset: 8px;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--bs-gray-800);
}

tbody tr:has(td:first-child input[type=checkbox]:checked) td {
  background-color: var(--bs-info-bg-subtle);
}

.dataTables_wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
  width: 100%;

  .dt-row {
    padding: var(--bs-gutter-y) calc(var(--bs-gutter-x) * .5);

    > div {
      width: 100%;
      overflow-x: auto;
      padding: 0;
    }
  }

  .row:last-of-type > div:first-of-type {
    display: flex;
    align-items: center;
    @media screen and (max-width: 768px) {
      justify-content: center;
    }

    div {
      padding-top: 0;
    }
  }
}

.card .form-control {
  background-color: #fbfbfb;
}

@media print {
  .dataTables_length, .dataTables_filter, .dataTables_paginate {
    display: none;
  }
}