.banner .nav li {
    @extend .nav-item;
}

.banner .nav a {
    @extend .nav-link;
}

.navbar-text {
    margin-left: 1rem;
}

.navbar-brand {
    font-weight: $font-weight-bold;
}

.navbar-brand svg {
    margin-right: 0.25rem;
}

@include color-mode(dark) {
    .navbar-brand {
        color: inherit;
    }
}

/*
.navbar-light .navbar-brand,
.navbar-light .navbar-brand:hover,
.navbar-light .navbar-brand:active {
  color: $body-color;
}

.navbar-light .navbar-nav .active .nav-link {
  color: $primary;
}
*/

.navbar {
    z-index: 1000;
    // background-color: rgba(255, 255, 255, 0.95);
    background-color: var(--bs-body-bg);
    border-bottom: 1px solid $gray-200;

    /*
  margin-top: 4px;
  */
}

@include media-breakpoint-up(lg) {
    .navbar {
        z-index: 1025;

        /*
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    */
    }
}

@include media-breakpoint-up(md) {
    .navbar-brand {
        font-size: $font-size-xl;
    }

    .navbar-text {
        margin-left: 1.25rem;
    }
}

/*
.navbar-nav {
  flex-direction: row;
}
*/

.nav-item {
    margin-left: 0;
}

@include media-breakpoint-down(lg) {
    .navbar .icon-tabler-chevron-down {
        display: block;
        float: right;
        transform: rotate(270deg);
        transition: transform 0.35s ease;
    }

    .navbar .dropdown-toggle[aria-expanded="true"] .icon-tabler-chevron-down {
        transform: rotate(360deg);
    }

    .navbar-nav .dropdown-menu {
        border: 0;
    }

    /*
  .navbar-nav .nav-item {
    border-bottom: 1px solid rgba(52, 56, 65, 0.5);
    font-family: $headings-font-family;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }
  */

    .navbar-nav .nav-link {
        font-weight: $font-weight-normal;
    }

    .navbar-nav .dropdown-item {
        font-weight: $font-weight-light;
    }

    .dropdown-toggle svg {
        margin-top: 0.25rem;
        margin-left: 0;
    }
}

@include media-breakpoint-up(md) {
    .nav-item {
        margin-left: 0.5rem;
    }
}

/*
@include media-breakpoint-down(sm) {
  .nav-item:first-child {
    margin-left: 0;
  }
}
*/

/*
@include media-breakpoint-down(md) {
  .navbar .container {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
*/

.break {
    flex-basis: 100%;
    height: 0;
}

span#doks-language-current {
    margin-left: 0.1rem;
}

button#doks-languages {
    margin: 0.25rem 0 0;

    @include media-breakpoint-up(lg) {
        margin: 0.25rem 0.5rem 0 0.25rem;
    }
}

button#doks-versions {
    margin: 0.25rem 0 0;

    @include media-breakpoint-up(lg) {
        margin: 0.25rem 0.5rem 0 0.25rem;
    }
}

@include media-breakpoint-down(sm) {
    .navbar .offcanvas.offcanvas-start,
    .navbar .offcanvas.offcanvas-end {
        width: 80vw;
    }
}

.offcanvas-header {
    border-bottom: 1px solid $gray-300;
    padding-top: 1.0625rem;
    padding-bottom: 0.8125rem;
}

h5.offcanvas-title {
    margin: 0;
    color: inherit;
}

.offcanvas .nav-link {
    color: $body-color;
}

/*
.doks-subnavbar {
  background-color: rgba(255, 255, 255, 0.95);
  border-bottom: 1px solid $gray-200;
}

.doks-subnavbar .nav-link {
  padding: 0.5rem 1.5rem 0.5rem 0;
}

.doks-subnavbar .nav-link:first-child {
  padding: 0.5rem 1.5rem 0.5rem 0;
}
*/

.offcanvas .nav-link:hover,
.offcanvas .nav-link:focus {
    color: $link-color;
}

.offcanvas .nav-link.active {
    color: $link-color;
}

/*
.navbar {
  background-color: rgba(255, 255, 255, 0.95);
  border-bottom: 1px solid $gray-200;
  margin-top: 4px;
}
*/

.header-bar {
    border-top: 4px solid;
    border-image-source: linear-gradient(83.21deg, $db-yellow-900 0%, $db-vermilion-100 100%);
    border-image-slice: 1;
}

@include color-mode(dark) {
    .header-bar {
        border-top: 4px solid;
        border-image-source: linear-gradient(83.21deg, var(--sl-color-accent) 0%, var(--sl-color-green) 100%);
        border-image-slice: 1;
    }
}

.offcanvas .header-bar {
    margin-bottom: -4px;
}

.home .navbar {
    border-bottom: 0;
}

/*
.navbar-form {
  position: relative;
  margin-top: 0.25rem;
}
*/

@include media-breakpoint-up(lg) {
    .navbar-brand {
        margin-right: 0.75rem !important;
    }

    .main-nav .nav-item:first-child .nav-link,
    .social-nav .nav-item:first-child .nav-link {
        padding-left: 0;
    }

    .main-nav .nav-item:last-child .nav-link,
    .social-nav .nav-item:last-child .nav-link {
        padding-right: 0;
    }

    /*
  .doks-search {
    max-width: 20rem;
    margin-top: 0.125rem;
    margin-bottom: 0.125rem;
  }
  */

    /*
  .navbar-form {
    margin-top: 0;
    margin-left: 6rem;
    margin-right: 1.5rem;
  }
  */
}

.form-control.is-search {
    padding-right: 4rem;
    border: 1px solid transparent;
    background: $gray-100;

    @include media-breakpoint-up(md) {
        width: calc(100% + 2rem);
    }

    @include media-breakpoint-up(lg) {
        width: 100%;
    }
}

.form-control.is-search:focus {
    border: 1px solid $primary;
}

/*
.doks-search::after {
  position: absolute;
  top: 0.4625rem;
  right: 0.5375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.5rem;
  padding-right: 0.3125rem;
  padding-left: 0.3125rem;
  font-size: $font-size-base * 0.75;
  color: $gray-700;
  content: "Ctrl + /";
  border: 1px solid $gray-300;
  border-radius: 0.25rem;

  @include media-breakpoint-up(md) {
    right: -1.4625rem;
  }

  @include media-breakpoint-up(lg) {
    right: 0.3125rem;
  }
}
*/

/*
@include media-breakpoint-up(lg) {
  .navbar-form {
    margin-left: 15rem;
  }
}

@include media-breakpoint-up(xl) {
  .navbar-form {
    margin-left: 30rem;
  }
}
*/

/*
.form-control.is-search {
*/

/*
  padding-right: calc(1.5em + 0.75rem);
  */

/*
  padding-right: 2.5rem;
  background: $gray-100;
  border: 0;
  */

/*
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-search'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
  */

/*
}
*/

/*
.navbar-form::after {
  position: absolute;
  top: 0.4625rem;
  right: 0.5375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.5rem;
  padding-right: 0.4375rem;
  padding-left: 0.4375rem;
  font-size: $font-size-base * 0.75;
  color: $gray-700;
  content: "/";
  border: 1px solid $gray-300;
  border-radius: 0.25rem;
}
*/

/*! purgecss start ignore */

/*
.algolia-autocomplete {
  display: flex !important;
}

.algolia-autocomplete .ds-dropdown-menu {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

@include media-breakpoint-down(sm) {
  .algolia-autocomplete .ds-dropdown-menu {
    max-width: 512px !important;
    min-width: 312px !important;
    width: auto !important;
  }

  .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column {
    font-weight: normal;
  }

  .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column::after {
    content: "/";
    margin-right: 0.25rem;
  }
}

.algolia-autocomplete .algolia-docsearch-suggestion--category-header {
  color: $link-color-dark;
}

.algolia-autocomplete .algolia-docsearch-suggestion--title {
  margin-bottom: 0;
}

.algolia-autocomplete .algolia-docsearch-suggestion--highlight {
  padding: 0 0.05em;
}

.algolia-autocomplete .algolia-docsearch-footer {
  margin-top: 1rem;
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
}
*/

/*! purgecss end ignore */

/*
 * Source: https://medium.com/creative-technology-concepts-code/responsive-mobile-dropdown-navigation-using-css-only-7218e4498a99
*/

/* Style the menu icon for the dropdown */

.navbar .menu-icon {
    cursor: pointer;

    /* display: inline-block; */

    /* float: right; */
    padding: 1.125rem 0.625rem;
    margin: 0 0 0 -0.625rem;

    /* position: relative; */
    user-select: none;
}

.navbar .menu-icon .navicon {
    background: $navbar-light-color;
    display: block;
    height: 2px;
    position: relative;
    transition: background 0.2s ease-out;
    width: 18px;
}

.navbar .menu-icon .navicon::before,
.navbar .menu-icon .navicon::after {
    background: $navbar-light-color;
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    transition: all 0.2s ease-out;
    width: 100%;
}

.navbar .menu-icon .navicon::before {
    top: 5px;
}

.navbar .menu-icon .navicon::after {
    top: -5px;
}

/* Add the icon and menu animations when the checkbox is clicked */

.navbar .menu-btn {
    display: none;
}

.navbar .menu-btn:checked ~ .navbar-collapse {
    display: block;
    max-height: 100vh;
}

.navbar .menu-btn:checked ~ .menu-icon .navicon {
    background: transparent;
}

.navbar .menu-btn:checked ~ .menu-icon .navicon::before {
    transform: rotate(-45deg);
}

.navbar .menu-btn:checked ~ .menu-icon .navicon::after {
    transform: rotate(45deg);
}

.navbar .menu-btn:checked ~ .menu-icon:not(.steps) .navicon::before,
.navbar .menu-btn:checked ~ .menu-icon:not(.steps) .navicon::after {
    top: 0;
}

.btn-menu {
    margin-left: 1rem;
    border: transparent;
}

.btn-doks-light {
    border: transparent;
}

.btn-menu,
.doks-sidebar-toggle {
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    margin-right: -0.5rem;
}

.btn-menu:hover,
.btn-doks-light:hover,
.doks-sidebar-toggle:hover {
    background: transparent;
    border: transparent;
}

.btn-menu:focus,
.btn-doks-light:focus,
.doks-sidebar-toggle:focus,
.doks-mode-toggle:focus {
    outline: 0;
    border: transparent;
}

.doks-sidebar-toggle .doks-collapse,
.doks-toc-toggle .doks-collapse {
    display: none;
}

.doks-sidebar-toggle:not(.collapsed) .doks-expand,
.doks-toc-toggle:not(.collapsed) .doks-expand {
    display: none;
}

.doks-sidebar-toggle:not(.collapsed) .doks-collapse,
.doks-toc-toggle:not(.collapsed) .doks-collapse {
    display: inline-block;
}

.navbar-light .navbar-brand,
.navbar-light .navbar-brand:hover,
.navbar-light .navbar-brand:active {
    color: $body-color;
}

.navbar-light .navbar-nav .active .nav-link {
    color: $primary;
}

.dropdown-divider {
    border-top: 1px dashed $gray-200;
}

.dropdown-item:hover {
    background: $gray-100;
}

.dropdown-item:active {
    color: inherit;
}

.social-link {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
}

@include media-breakpoint-down(lg) {
    #buttonColorMode {
        margin: 0.5rem 0;
    }

    #socialMenu .nav-item:first-child {
        margin-left: 0;

        .social-link {
            padding-left: 0;
        }
    }

    #socialMenu .nav-item {
        margin-left: 0;

        .social-link {
            padding-right: 0.5rem;
            padding-left: 0.5rem;
        }
    }

    .navbar-nav {
        margin-top: 1rem;
    }

    .dropdown:not(#ai-dropdown) .dropdown-menu {
        box-shadow: none !important;
        background: transparent !important;
        border-radius: 0 !important;
        padding: 0;
        margin-bottom: 0.25rem;
    }

    .dropdown-item {
        padding: 0.375rem 1rem 0.375rem 0;
    }

    .nav-item .nav-link {
        font-weight: $font-weight-normal;
        font-size: $font-size-md;
    }

    .btn-dropdown {
        font-weight: $font-weight-normal;
        font-size: $font-size-md;
    }
}

/*
@include media-breakpoint-up(lg) {
  // Source: https://bootstrap-menu.com/detail-basic-hover.html
  .navbar .nav-item .dropdown-menu {
    display: none;
  }

  .navbar .nav-item:hover .dropdown-menu {
    display: block;
  }
}
*/

.modal-backdrop,
.offcanvas-backdrop {
    visibility: hidden;
    background: hsla(224deg, 10%, 10%, 0.5);
    opacity: 0;
}

@include color-mode(dark) {
    .modal-backdrop,
    .offcanvas-backdrop {
        visibility: hidden;
        background: hsla(224deg, 10%, 10%, 0.5);
        opacity: 0;
    }
}

.modal-backdrop.show,
.offcanvas-backdrop.show {
    visibility: visible;
    opacity: 1;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
}

.showing,
.hiding {
    -webkit-transition: none;
    transition: none;
    display: none;
}

.offcanvas-top.h-auto {
    bottom: initial;
}

.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
    padding-right: 0.75rem;
}

.dropdown-menu {
    border: 1px solid var(--sl-color-gray-6) !important;
    box-shadow: none !important;
    margin-left: 0.75rem;
    padding: 0 0.25rem;

    .dropdown-item {
        margin: 0.25rem 0;
        padding-left: 0.625rem;

        &:hover,
        &:focus,
        &:active {
            background-color: var(--sl-color-gray-7);
            border-radius: 0.25rem;
            color: inherit;
        }

        &.active {
            background-color: var(--sl-color-gray-7);
        }
    }
}

@include color-mode(dark) {
  .dropdown-menu {
      border: 1px solid var(--sl-color-gray-6) !important;
      box-shadow: none !important;
      margin-left: 0.75rem;
      padding: 0 0.25rem;
      background-color: var(--sl-color-black);

      .dropdown-item {
          margin: 0.25rem 0;
          padding-left: 0.625rem;

          &:hover,
          &:focus,
          &:active {
              background-color: var(--sl-color-gray-6);
              border-radius: 0.25rem;
              color: inherit;
          }

          &.active {
              background-color: var(--sl-color-gray-6);
          }
      }
  }
}

@include media-breakpoint-down(lg) {
  .dropdown-menu {
    margin-left: 0 !important;
    padding: 0 0.25rem !important;

  }

  .dropdown:not(#ai-dropdown) .dropdown-menu {
        border-radius: 0.25rem !important;
  }
}

.nav-link-name-post {
  margin-left: 0.125rem;
}

.nav-link-name-pre {
  margin-right: 0.375rem;
}
