

/* Slimmer table of contents heading and links */
#quarto-margin-sidebar #toc-title {
  font-size: 0.85rem;
  font-weight: 500;
}

#quarto-margin-sidebar .nav-link {
  font-size: 0.85rem;
  font-weight: 400;
}

.navbar-brand .navbar-title {
  font-weight: 600;
  text-transform: lowercase;
}

/* Stack metadata below the description on homepage listing */
.quarto-post {
  display: block !important;
  padding-bottom: 1.5rem;
}

.quarto-post .metadata {
  display: block !important;
  margin-top: 0.2rem;
  font-size: 0.9rem;
  color: var(--bs-secondary-color);
}

.quarto-post .metadata .listing-date {
  display: inline-block;
}

@media (max-width: 767.98px) {
  /* Hide navbar tool icons (e.g., GitHub, theme toggle) on mobile */
  .quarto-navbar-tools {
    display: none !important;
  }

  /* Hide Quarto search on mobile */
  #quarto-search {
    display: none !important;
  }

  /* Restructure navbar row for mobile alignment */
  #quarto-header .navbar-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
  }

  #quarto-header .navbar-brand-container {
    order: 0;
    margin-left: 0 !important;
    margin-right: auto !important;
    justify-content: flex-start !important;
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    width: 100%;
  }

  #quarto-header .navbar-toggler {
    order: 1;
    margin-left: auto;
    margin-right: 0;
    flex: 0 0 auto;
  }

  #quarto-header .navbar-collapse {
    order: 2;
    width: 100%;
  }

  #quarto-header .navbar-brand-container .navbar-brand.navbar-brand-logo {
    flex: 0 0 auto;
  }

  #quarto-header .navbar-brand-container .navbar-brand:not(.navbar-brand-logo) {
    flex: 1 1 0%;
    min-width: 0;
  }

  #quarto-header .navbar-brand-container .navbar-brand:not(.navbar-brand-logo) .navbar-title {
    display: block;
    white-space: normal;
  }
}

/* Center and limit width of listing on homepage */
.listing-default {
  max-width: 750px;
  margin: 0 auto;
}

/* Limit main content width to 800px and center it */
#quarto-document-content {
  max-width: 800px;
  margin: 0 auto;
}

/* Make blog post titles smaller in listing */
.listing-title {
  font-size: 1.2rem;
}

/* Target the anchor tag within the h3 for better spacing */
.listing-title a {
  display: block;
  margin-bottom: 0.5em;
}

/* Right-align the navigation ul items and add some right margin */
#navbarCollapse .navbar-nav.navbar-nav-scroll.ms-auto {
  margin-left: auto !important;
  justify-content: flex-end !important;
  width: auto;
  margin-right: 1rem;
}

/* Category pill styling on listing cards */
.listing-category {
  border: 1px solid var(--bs-border-color, #d0d0d0);
  padding: 0.1rem 0.35rem;
  border-radius: 999px;
  font-size: 0.75rem;
  letter-spacing: 0.03em;
}

.listing-category[data-tag="notebook"],
.listing-category.tag-notebook {
  color: #c77700;
  border-color: #ffa726;
}

.listing-category[data-tag="papr"],
.listing-category[data-tag="paper"],
.listing-category.tag-papr,
.listing-category.tag-paper {
  color: #a233c7;
  border-color: #d266ff;
}
