/* Output role badges */
.role-badge {
  display: inline-block;
  font-size: 0.7em;
  font-weight: 600;
  padding: 0.15em 0.5em;
  border-radius: 2em;
  vertical-align: middle;
  line-height: 1.4;
  letter-spacing: 0.02em;
}

.role-badge.badge-artifact {
  background: #e6f4ea;
  color: #1e7e34;
}

.role-badge.badge-pipeline {
  background: #e8f0fe;
  color: #1a56db;
}

.role-badge.badge-internal {
  background: #f1f3f4;
  color: #5f6368;
}

[data-md-color-scheme="slate"] .role-badge.badge-artifact {
  background: #1e3a2a;
  color: #81c995;
}

[data-md-color-scheme="slate"] .role-badge.badge-pipeline {
  background: #1a2744;
  color: #8ab4f8;
}

[data-md-color-scheme="slate"] .role-badge.badge-internal {
  background: #2d2d2d;
  color: #9aa0a6;
}

/* Fields tables — fixed Field width, compact Type, Description fills rest */
.field-table table {
  table-layout: fixed;
  width: 100%;
}

.md-typeset .field-table table th,
.md-typeset .field-table table td {
  padding: 0.3em 0.5em;
}

.field-table table th:nth-child(1),
.field-table table td:nth-child(1) {
  width: 200px;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.md-typeset .field-table table th:nth-child(2),
.md-typeset .field-table table td:nth-child(2) {
  white-space: nowrap;
  width: 1px;
}

/* Remove padding below tabs navigation */
.md-tabs {
  margin-bottom: 0;
  padding-bottom: 0;
}

/* Header logos — fill available height with minimal padding */
.md-header__button.md-logo img {
  height: 40px;
}

.md-header__ga4gh {
  display: flex;
  align-items: center;
  margin-right: 0.75rem;
  flex-shrink: 0;
  line-height: 0;
}

.md-header__ga4gh img {
  height: 40px;
  width: auto;
  filter: brightness(0) invert(1);
}
