html:has(.dialog[open]) {
  overflow: hidden;
}

.counsellor-profile-sidebar-dialog {
  --_sidebar-width: 600px;
  --_progress-clr: #d9990e;

  .rating-section {
    padding-block: 1rem;
    display: grid;
    border-block: 1px solid var(--border-clr);

    @media (width <=600px) {
      gap: 1.25rem;
    }

    @media (width > 600px) {
      grid-template-columns: 0.75fr 1fr;

      .rating-distribution {
        padding-left: 2.125rem;
        border-left: 1px solid #e9e9e9;
      }
    }
  }

  .counsellor-card-header {
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  .counsellor-info {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
  }

  .counsellor-name {
    color: hsl(0, 0%, 8%);
  }

  .counsellor-country {
    display: flex;
    justify-content: start;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.25rem;
  }

  .counsellor-country-name {
    font-size: var(--fs-300);
    line-height: 16.8px;
    color: var(--tertiary-clr);
  }

  .counsellor-languages {
    font-size: var(--fs-200);
    line-height: 14.4px;
    color: var(--text-clr);
  }

  .rating-header {
    display: grid;
    gap: 0.5rem;
    align-content: start;
  }

  .stars {
    display: flex;
    gap: 0.25rem;
    color: var(--_progress-clr);
  }

  .rating-count {
    color: var(--text-secondary);
    font-size: 0.875rem;
    margin-right: auto;
  }

  .rating-distribution {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .rating-bar {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .rating-label {
    min-width: 60px;
    font-size: 0.875rem;
    color: var(--text-secondary);
  }

  .progress-bar {
    flex-grow: 1;
    height: 8px;
    background: var(--border-color);
    border-radius: 4px;
    overflow: hidden;
  }

  .progress {
    height: 100%;
    background: var(--_progress-clr);
    border-radius: 4px;
  }

  .rating-value {
    min-width: 40px;
    font-size: 0.875rem;
    color: var(--text-secondary);
    text-align: right;
  }

  .reviews-header {
    display: flex;
    justify-content: space-between;
    padding-block: 1.5rem;

    .input-wrapper {
      display: flex;
      align-items: center;
      text-wrap: nowrap;
      gap: 1rem;
    }

    label {
      padding-bottom: initial;
    }

    select {
      min-width: 150px;
      padding: 0.25rem 1rem;
      font-size: var(--fs-300);
      line-height: 18px;
      border-radius: 0.25rem;
    }
  }

  .review-list-item {
    padding-block: 1rem;
    display: grid;
    gap: 0.375rem;
    border-bottom: 1px solid #d5d5d5;

    h5 {
      color: var(--tertiary-clr);
    }

    h6 {
      font-weight: var(--fw-700);
      color: var(--primary-clr);
    }

    h5,
    .rating-count {
      font-size: var(--fs-400);
    }

    p,
    .rating-count {
      color: var(--text-clr);
    }

    p {
      line-height: 1.6;
    }
  }

  .review-list-item-rating {
    display: flex;
    gap: 0.75rem;
  }

  .tags {
    gap: 0.5rem;
  }

  .tag {
    border-radius: 100vw;
    padding: 0.25rem 0.75rem;
    font-size: var(--fs-300);
  }
}

/* New one */
.view-agent-wrapper {
  --_view-agent-roww-gap: 1rem;
  padding: 1rem 1rem 0 1rem;
  display: flex;
  flex-direction: column;
  height: 100%;
  gap: 1rem;

  .view-header {
    padding: var(--_view-agent-roww-gap) 0.75rem;
    background-color: var(--secondary-clr-5);
    border-radius: 0.25rem;
  }

  .agent-profile-section {
    padding-bottom: var(--_view-agent-roww-gap);
    display: grid;
    grid-template-columns: 4rem auto auto;
    grid-template-rows: 20px auto;
    gap: 0.75rem;
    place-content: start;
    place-items: start;

    .agent-profile {
      grid-row: span 2;
    }

    .agent-name {
      grid-column: span 2;
    }
  }

  .agent-profile {
    border-radius: 50%;
    border: 2px solid var(--white-clr);
    box-shadow: 0px 4px 4px hsla(0, 0%, 0%, 0.15);

    img {
      border-radius: inherit;
    }
  }

  .header-items {
    display: grid;
    gap: 1rem;
  }

  .header-item {
    display: grid;
    align-items: start;
    gap: 0.25rem;

    @media (width >600px) {
      grid-template-columns: 150px auto;
      gap: 1rem;
    }
  }

  figure {
    display: flex;
    align-items: start;
    gap: 0.75rem;

    .bx {
      font-size: 1.125rem;
      line-height: 19.2px;
      color: var(--secondary-clr);
    }
  }

  figcaption {
    color: var(--text-clr);
  }

  .item-value {
    color: var(--tertiary-clr);

    @media (width <=600px) {
      padding-left: 1.75rem;
    }

    >*+* {
      padding-top: 0.75rem;
    }
  }

  a.item-value {
    color: var(--secondary-clr);
  }

  .view-body-item {
    h4 {
      font-weight: var(--fw-600);
      line-height: 19.2px;
      color: var(--tertiary-clr);
    }

    .header-item {
      padding-block: 1rem;
    }
  }

  hr {
    margin-top: -0.5rem;
    border-top: 0;
    border-bottom: 1px solid #d5d5d5;
  }

  .view-footer-item {
    margin-top: auto;
    position: sticky;
    bottom: 0;
    padding-block: 1rem;
    border-top: 1px solid var(--border-clr);
    background-color: var(--white-clr);
    box-shadow: 0 -6px 3px hsla(0, 0%, 0%, 0.05);

    display: flex;
    gap: 1rem;
  }
}

.counsellor-profile-body {
  position: relative;
}

/* End of New one */