#search_menu_wrapper {
  display: flex;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 40;
  background-color: rgba(0,0,0,.75);

  mark {
    background-color: unset;
    color: unset;
    border-bottom: 2px solid var(--color-text);
  }

  #search_menu {
    position: fixed;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    border-radius: 0;
    background-color: var(--color-background);

    @media screen and (min-width: $sm_min_width) {
      height: auto;
      top: 6rem;
      bottom: 6rem;
      width: 30rem;
      z-index: 50;
      border-radius: 0.375rem;
    }

    #search_menu_toolbar {
      display: flex;
      min-height: 2.5rem;
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);

      #search_menu_input_wrapper {
        display: flex;
        flex-grow: 1;

        input {
          @include px-4;
          flex-grow: 1;
          border-top-left-radius: 0.375rem;
        }

        input:focus {
          outline: 2px solid transparent;
          outline-offset: 2px;            
        }
      }

      #search_menu_close_btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.5rem;
        border-top-right-radius: 0.375rem;
        cursor: pointer;

        &:hover {
          background-color: var(--color-background-overlay);
        }
      }
    }

    #search_menu_results {
      flex-grow: 1;
      overflow-y: auto;

      .search-menu-result-item {
        @include px-4;
        padding-top: 0.875rem;
        padding-bottom: 0.875rem;
        min-height: 2.5rem;

        &:hover {
          background-color: var(--color-background-overlay);
        }

        .search-menu-result-item-title {
          @include font-bold;
          line-height: 1.7rem;
          color: var(--color-text);
        }
  
        .search-menu-result-item-content {
          @include text-xs;
          text-overflow: ellipsis;
          overflow: hidden;
          white-space: nowrap;
          color: var(--color-text-secondary);
        }
      }
    }
  }
}
