$transition-duration: 200ms;

.container {
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0;
  z-index: 10000;
  overflow: hidden;
  transition:
    background-color $transition-duration,
    width 0ms linear $transition-duration;

  .panel {
    position: relative;
    background-color: var(--background-color);
    width: 100%;
    height: 100%;
    transform: translateX(100%);
    transition: transform $transition-duration;
    display: flex;
    flex-direction: column;

    @include media-breakpoint-up(md) {
      width: 50%;
    }

    .title {
      @include font-size(2rem);

      color: var(--black-500);
      font-style: normal;
      font-weight: 700;
      position: sticky;
      top: 0;
      padding: 1.23rem 38px;
      border-bottom: 2px solid var(--black-100);
    }

    .content {
      overflow-y: auto;
      flex: 1;
      padding: 0 38px 1rem;

      .loading {
        @include font-size(1.2rem);

        text-align: center;
        padding: 1rem;
        color: var(--black-300);
      }
    }

    .actions {
      padding: 24px 38px;
      width: 100%;
      bottom: 0;
      left: 0;
      background: var(--background-color);
      border-top: 1px solid var(--black-100);
    }
  }

  &.isOpened {
    width: 100%;
    background-color: rgb(0 0 0 / 60%);
    transition:
      background-color $transition-duration,
      width 0ms;

    .panel {
      transform: translateX(0);
    }
  }
}

.closeButton {
  position: absolute;
  top: 1.2rem;
  right: 1rem;
  padding: 1rem;
  cursor: pointer;
  z-index: 1;

  &:hover {
    background-color: var(--background-color-invert);

    .closeIcon {
      filter: invert(1);
    }
  }
}

.notificationView + .notificationView {
  margin-top: 8px;
}

.emptyMessageContainer {
  text-align: center;
}

.periodTitle {
  margin: 32px 0 16px;
  color: var(--black-400);
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
}
