/* ===================== OSA style CSS ===================== */

body {
  /* set s & b image size based on overall original image sizes */
  --content-block: 1600px;
}

/* custmize for this app */
.tooltiptext-toparrow {
  text-align: left;
}

table td,
table th {
  padding: 0.5em;
}

.search-block {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  margin-top: 8px;
}

.search-block table tr td {
  border-width: 0;
}

.search-block table tr td .txt-width {
  width: 10em;
}

.search-block table tr td .btn-width {
  width: 4em;
}

.search-wrapper {
  background-color: var(--green);
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 8px;
  margin-left: auto;
  margin-right: auto;
  padding: 12px;
  border-radius: 4px;
}

.search-wrapper input[type="button"],
.search-wrapper input[type="text"] {
  font-size: 1em;
}

#main_form div:nth-child(2) {
  margin-top: 8px;
}

#main_form button {
  font-size: 0.9em;
}

.results-block {
  margin: 8px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 8px;
  overflow-x: auto;
  line-height: 1.5em;
}

#results_summary {
  text-align: center;
  margin-top: 8px;
}

.results-block table {
  border-collapse: collapse;
  table-layout: fixed;
}

.results-block table,
.results-block .tbl-caption-ext {
  width: clamp(48em, 100%, var(--width3));
}

.results-block table caption {
  text-align: left;
}

.results-block table tr td {
  vertical-align: top;
}

.results-block table tr th {
  border: 1px solid #fff;
}
.results-block table tr td {
  border: 1px solid #dee2e6;
}
.results-block table tr th .tooltip {
  font-weight: 400;
}

/* column width */
.results-block table tr th:nth-child(1) {
  width: 4em;
}

.results-block table tr th:nth-child(2) {
  width: 10em;
}

.results-block table tr th:nth-child(3) {
  width: 8em;
}

.results-block table tr th:nth-child(4) {
  width: 8em;
}

.results-block table tr th,
.results-block table tr td {
  word-wrap: break-word;
}

.results-block table tr td img {
  max-width: 100%;
}

.results-block ol,
.results-block ul,
#mdIntro ol,
#mdIntro ul,
#mdHelp ol,
#mdHelp ul {
  padding-inline-start: 2em;
}

.modal-body table td,
.modal-body table th {
  padding: 2px;
}
.modal-body table td:nth-child(3) {
  text-align: right;
}

.mode-title {
  font-weight: 700;
  text-align: center;
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
  .results-block table,
  .results-block .tbl-caption-ext {
    width: 48em;
  }
}
