#header {
  max-height: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  background-color: var(--color-header-background);
  color: var(--color-black);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.09);
  flex-shrink: 0;
  position: fixed;
  z-index: 999;
  width: -webkit-fill-available;
  width: -moz-available;

  @include breakpoint(lg) {
    max-height: 83px;
    height: 83px;
    position: relative;
  }

  &.is-spaced {
    padding: 0 0.8rem;

    @include breakpoint(lg) {
      padding: 0 2.5rem;
    }
  }

  >*:not(:first-child) {
    margin-left: 2rem;

    @include breakpoint(lg) {
      margin-left: 0;
    }
  }

  .logo {
    flex: 1 0 0;
    align-items: stretch;
  }

  /* To remove the place taken by this element */
  solid-widget[name='hubl-user-avatar'] {
    display: contents;
  }
}
  
/* General styling for both notification and user's panel */
details {
  margin-right: 0;
  position: relative;

  @include breakpoint(lg) {
    margin-right: 2.5rem;
  }

  summary {

    &::-moz-list-bullet {
      list-style-type: none; /* To remove the disclosure triangle on Firefox v.<69 */
    }

    &::-webkit-details-marker {
      display: none;
    }
  }
}
/* End */

solid-notifications {
  color: var(--color-bell);

  @include breakpoint(sm) {
    padding: 0;
  }

  .solid-notifications__container {
    position: relative;
  
    .solid-notifications__button {
      @include icon('bell');
        font-size: 2.5rem;

      @include breakpoint(lg) {
        font-size: 3rem;
      }
  
      &::before {
        margin-left: 0;
      }
  
      img {
        display: none;
      }
  
      .solid-notifications__counter {
        left: 2rem;
        position: absolute;
        top: 1px;

        @include breakpoint(lg) {
          left: 2.1rem;
          top: -3px;
        }

        span {
          color: var(--color-notification-counter-number);
        }
      }
    }

    .solid-notifications__triangle-back {
      display: none;
    }

    .solid-notifications__triangle-shadow {
      display: none;

      @include breakpoint(lg) {
        background: white;
        display: block;
        position: absolute;
        left: auto;
        right: -2.1em;
        top: 5em;
        transform: initial;
        width: 0;
        z-index: 4;

        &::after {
          content: "";
          position: absolute;
          width: 0;
          height: 0;
          margin-left: -5em;
          top: 0px;
          left: 50%;
          border: 1em solid black;
          border-color: #fff #fff transparent transparent;
          transform-origin: 0 0;
          transform: rotate(-45deg);
          box-shadow: 6px -6px 10px -3px rgba(92, 97, 104, 0.14);
        }
      }
    }
  
    .solid-notifications__list {
      border: none;
      border-radius: 0;
      box-shadow: 0 0 7px 0 rgba(92, 97, 104, 0.24);
      max-height: calc(100vh - 50px);
      position: fixed;
      left: 0;
      top: 2.5em;
      width: 100vw;
      
      @include breakpoint(lg) {
        max-height: calc(100vh - 93px);
        position: absolute;
        left: auto;
        right: -2.3em;
        top: 3.99em;
        width: 347px;
      }

      /* Custom scrollbar */
      overflow: auto;
      -webkit-overflow-scrolling: touch;
      -ms-overflow-style: none;
      scrollbar-width: thin;
      scrollbar-color: var(--color-notification-scrollbar-track) var(--color-notification-scrollbar-background);

      &::-webkit-scrollbar-track {
        background: var(--color-notification-scrollbar-background);
      }

      &::-webkit-scrollbar-thumb {
        background-color: var(--color-notification-scrollbar-track);
        border-radius: 6px;
      }

      &::-webkit-scrollbar {
        width: 6px;
      }
      /* End of custom scrollbar */

      .solid-notifications__item {
        border-bottom: 1px solid var(--color-notification-item-border);

        .solid-notification {
          padding: 1.2rem 0 1.5rem;

          .solid-notification__avatar {
            align-items: center;
            background: var(--color-avatar-background);
            display: flex;
            height: 35px;
            justify-content: center;
            margin-left: 1.6rem;
            margin-right: 1.4rem;
            overflow: hidden;
            position: relative;
            vertical-align: middle;
            width: 35px;

            img {
              background-color: var(--color-grey-10);
              height: 100%;
              object-fit: cover;
              object-position: center center;
              width: 100%;
            }

            object {
              height: 45%;
              width: 45%;
            }
          }

          .solid-notification__content {
            font-family: Open Sans, sans-serif;

            .solid-notification__title {
              font-size: 1.3rem;
              font-weight: 600;

              .solid-notification__title__side {
                font-weight: normal;
              }

              .solid-notification__title__icon {
                font-family: simple-line-icons;
              }
            }

            .solid-notification__summary {
              color: var(--color-notification-summary);
              font-size: 1.2rem;
              line-height: 1.7rem;
              margin: 1.1rem 0 0;

              @include breakpoint(320px, 388px) {
                max-width: 226px;
              }

              @include breakpoint(lg) {
                max-width: 256px;
              }
            }
          }

          .solid-notification__read {
            display: none;
          }
        }
      }
    }
  }
}

#user-controls {
  padding: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  summary {
    cursor: pointer;
    display: block; /* To remove the disclosure triangle on Firefox v.>=69 */

    @include breakpoint(lg) {
      padding: 18px;
    }
    
    &:focus {
      background-color: transparent;
      color: var(--color-user-panel-header-text-open);
      outline: none;

      @include breakpoint(lg) {
        background-color: var(--color-user-panel-header-background-open);
      }
    }
  }

  #user-controls__profile {
    div {
      display: flex;
      flex-direction: row-reverse;
      
      > * {
        vertical-align: middle;
      }

      hubl-user-avatar {
        height: 3.3rem;
        margin-right: 0;
        width: 3.3rem;

        @include breakpoint(lg) {
          height: 4.8rem;
          margin-right: 2rem;
          width: 4.8rem;
        }
      }
      
      solid-display-value[name='first_name'] {
        @include icon('arrow-down');
        align-items: center;
        display: none;
        flex-direction: row-reverse;
        font-size: 1.8rem;
        font-weight: 600;

        &::before {
          margin-left: 1.5rem;
        }

        @include breakpoint(lg) {
          display: flex;
        }
      }
    }
  }

  #user-controls__panel {
    height: 0;
    position: absolute;
    right: 0;
    z-index: 1;
    /* Quick fix for mobile version */
    width: 215px;
    top: 42px;
    
    @include breakpoint (lg) {
      width: 100%;
      top: 83px;
    }
    
    > nav {
      background-color: var(--color-user-panel-list-background);
      box-shadow: 0 7px 8px 0 rgba(0, 0, 0, 0.16);
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      
      ul {
        list-style: none;
        margin: 0;
        padding: 0;
        
        li {

          solid-link {
            color: var(--color-grey-4);
            display: block;
            border-bottom: 1px solid var(--color-user-panel-list-border);
            margin-right: 0;
            padding: 1.6rem 1.3rem;

            &:hover {
              color: var(--color-user-panel-list-text-hover);
            }
          }
        }
      }

      button {
        color: var(--color-grey-4);
        padding: 1.6rem 1.3rem;
        text-align: left;
        width: 100%;

        &:hover {
          color: var(--color-user-panel-list-text-hover);
        }
      }
    }
  }

  &[open] {
    background-color: var(--color-user-panel-header-background);
    color: var(--color-user-panel-header-text);

    #user-controls__profile {

      div {

        solid-display-value[name='first_name'] {
          @include icon('close');

          &::before {
            margin-left: 1.5rem;
          }
        }
      }
    }
  }
}

.mobile-menu-icon {

  display: block;
  padding-left: 0;
  font-size: 24px;

  @include breakpoint(lg) {
    display: none;
  }
}

