.navbar .btn-link {
  color: $navbar-light-color;
  padding: 0.4375rem 0;
}

#mode {
  padding: 0.5rem;
}

.btn-link:focus {
  outline: 0;
  box-shadow: none;
}

#navigation {
  margin-left: 1.25rem;
}

@include media-breakpoint-up(lg) {
  #mode {
    margin-left: 0.5rem;
    margin-right: 0.25rem;
  }

  .navbar .btn-link {
    padding: 0.5625em 0.25rem 0.5rem 0.125rem;
  }
}

.navbar .btn-link:hover {
  color: $navbar-light-hover-color;
}

.navbar .btn-link:active {
  color: $navbar-light-active-color;
}

body .toggle-dark {
  display: block;
}

body .toggle-light {
  display: none;
}

[data-dark-mode] body .toggle-light {
  display: block;
}

[data-dark-mode] body .toggle-dark {
  display: none;
}

.collapsible-sidebar {
  margin: 2.125rem 0;
}

.btn-toggle {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.5rem 0.25rem 0;
  font-weight: $headings-font-weight;
  font-size: $font-size-base;
  text-transform: uppercase;
  color: $body-color;
  background-color: transparent;
  border: 0;
}

.btn-toggle:hover,
.btn-toggle:focus {
  color: $body-color;
  background-color: transparent;
  outline: 0;
  box-shadow: none;
}

.btn-toggle::before {
  width: 1.25em;
  line-height: 0;
  content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba%2829, 45, 53, 0.75%29' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 14l6-6-6-6'/%3e%3c/svg%3e");
  transition: transform 0.35s ease;
  transform-origin: 0.5em 50%;
  margin-bottom: 0.125rem;
}

.btn-toggle[aria-expanded="true"] {
  color: $body-color;
}

.btn-toggle[aria-expanded="true"]::before {
  transform: rotate(90deg);
}

.btn-toggle-nav a {
  display: inline-flex;
  padding: 0.1875rem 0.5rem;
  margin-top: 0.125rem;
  margin-left: 1.25rem;
  text-decoration: none;
}

.btn-toggle-nav a:hover,
.btn-toggle-nav a:focus {
  background-color: transparent;
  color: $link-color;
}

.btn-toggle-nav a.active {
  color: $link-color;
}

@include media-breakpoint-down(lg) {
  .dropdown:not(#ai-dropdown) .dropdown-menu {
    width: 100%;
    position: static;
  }
}

/*
@include media-breakpoint-up(lg) {
  .dropdown-menu {
    width: auto;
  }
}
*/

.btn-dropdown {
  border: 0;
}

@include media-breakpoint-down(lg) {
  .btn-dropdown {
    width: 100%;
    text-align: left;
    padding-left: 0;
    padding-right: 0;
  }
}

.navbar .dropdown-item.current {
  font-weight: 600;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23292b2c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 1rem top 0.6rem;
  background-size: 0.75rem 0.75rem;

  @include media-breakpoint-down(lg) {
    background-position: right 0.375rem top 0.6rem;
  }
}

.btn-close {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-x'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
  background-size: 1.5rem;
}

.offcanvas-header .btn-close {
  margin-right: 0 !important;
}

.dropdown-toggle::after {
  display: none;
}

.dropdown-caret {
  margin-left: -0.1875rem;
}

.dropdown-menu .dropdown-item.untranslated {
  color: $gray-600;
  text-decoration: line-through;

  &:focus-visible,
  &:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-home' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='%23#{str-slice(inspect($link-color), 2)}' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M5 12l-2 0l9 -9l9 9l-2 0' /%3E%3Cpath d='M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7' /%3E%3Cpath d='M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6' /%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 1rem top 0.6rem;
    background-size: 0.9rem 0.9rem;
    text-decoration: unset;
  }
}

.dropdown-menu .dropdown-item:hover {
  color: $link-color;
}

.dropdown-menu span.dropdown-item.current:hover {
  color: unset;
}

.clipboard {
  position: relative;
  float: right;
}

// Clipboard button
.btn-clipboard {
  transition: opacity 0.25s ease-in-out;
  opacity: 0;
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
  line-height: 1;
  padding: 0.3125rem 0.3125rem 0.1875rem;
  background-color: transparent;

  // border-color: $gray-300;
  border-color: transparent;

  @include media-breakpoint-down(md) {
    position: absolute;
    right: -0.5rem;
    top: 0.5rem;
  }
}

// Clipboard icon
.btn-clipboard::after {
  width: 22px;
  height: 22px;
  display: inline-block;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-copy' width='22' height='22' viewBox='0 0 24 24' stroke-width='1' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M8 8m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z'%3E%3C/path%3E%3Cpath d='M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2'%3E%3C/path%3E%3C/svg%3E")
    no-repeat 50% 50%;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-copy' width='22' height='22' viewBox='0 0 24 24' stroke-width='1' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M8 8m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z'%3E%3C/path%3E%3Cpath d='M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2'%3E%3C/path%3E%3C/svg%3E")
    no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: $gray-700;
}

// Clipboard button
.btn-clipboard:hover {
  // border-color: $gray-500;
  border-color: transparent;
}

// Clipboard icon
.btn-clipboard:hover::after {
  width: 22px;
  height: 22px;
  display: inline-block;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-copy' width='22' height='22' viewBox='0 0 24 24' stroke-width='1' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M8 8m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z'%3E%3C/path%3E%3Cpath d='M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2'%3E%3C/path%3E%3C/svg%3E")
    no-repeat 50% 50%;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-copy' width='22' height='22' viewBox='0 0 24 24' stroke-width='1' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M8 8m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z'%3E%3C/path%3E%3Cpath d='M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2'%3E%3C/path%3E%3C/svg%3E")
    no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;

  // background-color: $gray-700;
  background-color: $gray-900;
}

// Clipboard button
.btn-clipboard:focus,
.btn-clipboard:active {
  // border-color: $gray-500 !important;
  border-color: transparent !important;
}

// Check icon
.btn-clipboard:focus::after,
.btn-clipboard:active::after {
  width: 22px;
  height: 22px;
  display: inline-block;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' stroke-width='1.25' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M5 12l5 5l10 -10'%3E%3C/path%3E%3C/svg%3E")
    no-repeat 50% 50%;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' stroke-width='1.25' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M5 12l5 5l10 -10'%3E%3C/path%3E%3C/svg%3E")
    no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;

  // background-color: $gray-700;
  background-color: $gray-900;
}

@include color-mode(dark) {
  // Clipboard button
  .btn-clipboard {
    background-color: transparent;

    // border-color: $gray-800;
    border-color: transparent;
  }

  // Clipboard icon
  .btn-clipboard::after {
    background-color: $gray-400;
  }

  // Clipboard button
  .btn-clipboard:hover {
    // border-color: $gray-600;
    border-color: transparent;
  }

  // Clipboard icon
  .btn-clipboard:hover::after {
    background-color: $gray-200;
  }

  // Clipboard button
  .btn-clipboard:focus,
  .btn-clipboard:active {
    // border-color: $gray-600 !important;
    border-color: transparent;
  }

  // Check icon
  .btn-clipboard:focus::after,
  .btn-clipboard:active::after {
    background-color: $gray-200;
  }
}

.highlight {
  position: relative;
}

@include media-breakpoint-up(md) {
  .highlight:hover .btn-clipboard {
    opacity: 1;
  }
}

#toTop {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

#toTop.fade {
  opacity: 1;
}

.btn-cta {
  padding-left: 2rem;
  padding-right: 2rem;
}

#ai-dropdown {
  margin-left: 1.5rem;

  .btn.dropdown-toggle {
    border: 1px solid $gray-200;
  }

  .btn.dropdown-toggle:hover,
  .btn.dropdown-toggle:focus,
  .btn.dropdown-toggle:active {
    border: 1px solid $db-gray-600;
  }

  .dropdown-menu {
    padding: 0.25rem;
    border: 1px solid $db-gray-600;
  }

  .dropdown-item {
    font-size: 0.9375rem;
    border-radius: 0.25rem;
    padding: 0.25rem 0.75rem;
  }

  .dropdown-item:hover,
  .dropdown-item:focus,
  .dropdown-item:active {
    color: var(--bs-body-color);
  }
}

@include media-breakpoint-up(xl) {
  #ai-dropdown {
    // background: lightyellow;
    margin-top: 2.5rem;
  }
}

@include color-mode(dark) {
  #ai-dropdown {
    .btn.dropdown-toggle {
      border: 1px solid hsl(224deg, 10%, 23%);
    }

    .btn.dropdown-toggle:hover,
    .btn.dropdown-toggle:focus,
    .btn.dropdown-toggle:active {
      border: 1px solid hsl(224deg, 6%, 56%);
    }

    .dropdown-menu {
      background: $body-bg-dark;
      border: 1px solid hsl(224deg, 10%, 23%);
    }

    .dropdown-item:hover,
    .dropdown-item:focus,
    .dropdown-item:active {
      background-color: var(--sl-color-gray-6);
    }

    hr.dropdown-divider {
      border-color: hsl(224deg, 10%, 23%);
    }
  }

  .section-switcher {
    .dropdown-toggle {
      border: 1px solid hsl(224deg, 10%, 23%);
    }

    .dropdown-menu {
      border: 1px solid hsl(224deg, 10%, 23%);
    }
  }
}
