@media (min-width: 520px) {
  .dl-horizontal {
    & > div {
      display: flex;
      flex-wrap: wrap;
    }

    dt {
      flex: 0 0 auto;
      padding-right: 0.5rem;
      width: 9.5em;
      overflow-wrap: break-word;
      hyphens: auto;
    }

    dd {
      flex: 0 0 auto;
      margin-left: 9.5em;
      width: calc(100% - 9.5em);
    }

    dd:first-of-type {
      margin-left: 0;
    }
  }
}

@media (max-width: 1200px) {
  .dl-text {
    dt {
      width: 100%;
    }

    dd {
      width: 100%;
    }
  }
}

.document-title {
  /* create room for the thumbnail */
  margin-right: 150px;
}

.ms-n3 {
  margin-inline-start: -1rem !important;
}

.mb-n3 {
  margin-bottom: -1rem !important;
}

.bi.rotate-180::before {
  transform: rotateY(180deg);
}

.record-panels {
  --bs-offcanvas-height: 50%;
  overflow: auto;
}

.access-panel {
  &.panel-exhibit {
    img {
      height: 75px;
      width: 75px;
    }

    .exhibit-heading h4 {
      margin-top: 0;
    }

    .see-all-exhibits {
      margin-top: 15px;
    }
  }
}

.managed-purl {
  li {
    &:hover {
      --bs-border-color: var(--stanford-80-black);
    }

    &.active,&:active {
      --bs-border-color: var(--stanford-cardinal);
    }

    img {
      background-color: var(--stanford-fog-light);
    }
  }
}

.managed-purl-embed {
  margin-bottom: 15px;
  margin-left: -15px;
}

.bookmark-toolbar,
.record-toolbar {
  --item-padding-x: 0.25rem;
  --bs-link-hover-color: var(--bs-btn-hover-color);
  .btn {
    /* --bs-btn-padding-y: 0.25rem; */
    --bs-btn-padding-x: var(--item-padding-x);
  }
  .nav-link, .action-button {
    --bs-nav-link-color: var(--stanford-80-black);
    --bs-nav-link-padding-y: 0.25rem;
    --bs-nav-link-padding-x: var(--item-padding-x);
  }

  /* Suppress e.g. the save button tooltip, which is unnecessary because we're showing the label already */
  .tooltip {
    display: none !important;
  }
}

.panel-library-location {
  .item-row {
    display: flex;
  }

  h3 a {
    --bs-link-color-rgb: var(--bs-body-color-rgb);
    &:hover {
      color: var(--stanford-cardinal);
    }
  }
}

.note-highlight {
  background-color: rgba(var(--stanford-illuminating-base-rgb), 0.2);
  padding: 0.125rem 0.25rem;
  margin: 0.25rem 0;
}

.show-more-button {
  margin-top: 0.75rem;
  margin-bottom: 1rem;
}

.blacklight-catalog-show {
  .cover-image {
    max-height: 300px;
    max-width: 128px;
  }
}

.bookplate-image {
  max-height: 300px;
  max-width: 128px;
}

.collection-result-preview {
  .btn {
    --bs-btn-padding-y: 0.125rem;
    --bs-btn-padding-x: 0.375rem;
    --bs-btn-font-size: 0.875rem;
  }

  .preview-trigger-btn {
    position: absolute;
    bottom: 0;
    right: 0.3125rem;
    transform: translate(0, 0);
    z-index: 1;
    background-color: var(--stanford-digital-blue);
    color: var(--bs-white);
    -webkit-text-stroke: 0.1rem;
    border-radius: 2px;
    padding: 0.3125rem 0.5rem;
    opacity: 0.85;

    &:hover {
      width: 100%;
      right: 0;

      &::before {
        content: "Preview";
        margin-right: 0.5rem;
        -webkit-text-stroke: 0rem;
      }

      &.preview-open::before {
        content: "Close";
      }
    }
  }
}

.collection-result-preview .image-filmstrip,
.collection-result-preview .collection-members,
.managed-purl .digital-viewer {
  --bs-border-radius: 0.25rem;
  --bs-border-color: var(--stanford-20-black);

  margin-top: -1rem;
  padding-top: 2rem;

  svg {
    vertical-align: inherit;
  }
}

.popover-availability {
  --bs-popover-bg: var(--stanford-black);
  --bs-popover-body-color: #ffffff;
  --bs-popover-max-width: 22rem;
}

.record-browse-nearby {
  --bs-border-color: var(--stanford-20-black);
  border-radius: 0.25rem;
  margin-top: 4rem;

  /* Applied by the browse nearby controller to resize versus the aside */
  &.breakout {
    width: 153.33%;
  }

  .heading,
  .tabs {
    .btn {
      --bs-btn-font-size: 0.875rem;
      --bs-btn-padding-y: 0.0625rem;
    }
  }

  li .btn {
    border-color: var(--stanford-60-black);
    color: var(--stanford-black);
    &::before {
      padding-right: 0.25rem;
    }
  }

  li .btn.active {
    background-color: var(--stanford-10-black);
    font-weight: 600;
  }

  .heading {
    background-color: white;
    margin-top: -2.4rem;
    max-width: 16.5em;

    a {
      --bs-btn-bg: white;
      --bs-btn-color: rgb(var(--stanford-digital-blue-rgb));
      --bs-btn-line-height: 1.5rem;
      --bs-btn-padding-y: 0;

      &::before {
        padding-right: 0.25rem;
      }
    }
  }

  .embed-callnumber-browse-container {
    .gallery {
      .gallery-document {
        margin-left: 0.375rem;
        margin-right: 0.375rem;
        margin-bottom: 0;

        &:hover {
          box-shadow: var(--bs-box-shadow);
        }

        &.current-document {
          box-shadow: var(--bs-box-shadow);
        }
      }
    }
  }
}

.availability-modal {
  --bs-accordion-border-radius: 0;

  .accordion-body {
    padding: 0.1rem 1rem 1rem;
  }

  table .border-top {
    border-bottom: 1px var(--bs-border-style) var(--bs-border-color);
    --bs-border-width: 0;
  }

  .accordion-button {
    --bs-accordion-btn-bg: var(--stanford-fog-light);
    --bs-accordion-active-bg: var(--stanford-fog-light);
    --bs-accordion-btn-padding-y: 0;
    --bs-heading-color: var(--stanford-black);
    --bs-link-color-rgb: var(--stanford-black-rgb);
    --bs-accordion-active-color: var(--stanford-black);
    --bs-link-hover-color-rgb: var(--stanford-black-rgb);
    --bs-light-rgb: transparent;
    --bs-accordion-inner-border-radius: 0;
    box-shadow: none;

    div {
      flex: 1;
    }
  }

  .accordion-item {
    border: none;
  }

  .badge {
    background-color: var(--stanford-20-black);
    --bs-badge-color: var(--stanford-black);
    --bs-badge-font-weight: 500;
  }

}

.alert.citations-alert {
  --bs-alert-bg: rgba(var(--stanford-poppy-dark-rgb), 0.1);
  &::before {
    color: rgb(var(--stanford-poppy-rgb))
  }
}

.availability-library-location {
  display: flex;
}

.item-row {
  display: flex;
}

.search-mode {
  h2 .badge {
    background-color: rgba(var(--stanford-digital-green-rgb), 0.2);
  }

  #online {
    display: none !important
  }

  .item-row {
    display: none !important;
  }

  .item-row:has(mark) {
    display: flex !important;
  }

  .availability-library-location  {
    display: none !important;
  }

  .availability-library-location:has(mark) {
    display: flex !important;
  }
}

.bound-with .show-more-button {
  margin-bottom: 0.1rem;
}

.blacklight-articles-fulltext_html {
  #topnav .navbar-nav { display: none; }
  .access-panel-heading {
    display: none;
  }
}

.popover-availability {
  --bs-popover-header-padding-y: 0.5rem;
  --bs-popover-header-padding-x: 0.5rem 0;
  --bs-popover-header-bg: var(--bs-popover-body-bg);
  --bs-popover-header-color: var(--bs-popover-body-color);
  --bs-popover-body-padding-y: 0;
  --bs-popover-body-padding-x: 0.5rem 0.75rem;
  --bs-popover-border-color: transparent;
  .btn {
    --bs-btn-color: var(--bs-popover-body-color);
  }
}

.toc {
  list-style-position: inside;
  padding-left: 0.25rem;
}
