.p-datepicker {
  min-width: 220px !important;

  & &-header {
    height: 2.5rem;
    padding: .25rem 0;
    font-size: .9rem;
  }

  & &-header &-prev,
  & &-header &-next {
    width: 1.75rem;
    height: 1.75rem;
  }

  &-month,
  &-year {
    padding: .125rem !important;
    font-size: .9rem;

    &:hover {
      color: var(--text-color) !important;
    }
  }

  table {
    margin: 0;
    font-size: .7rem;

    th {
      padding: .5rem;
    }

    td {
      padding: 0;
      > span {
        width: 1.55rem;
        height: 1.55rem;
      }
    }
  }

  &-other-month {
    opacity: .6;
  }

  &-title {
    display: flex;
  }

  &-multiple-month {
    .p-datepicker-group {
      border: none !important;
    }

    .p-datepicker-group:first-child {
      border-right: 1px solid var(--surface-d) !important;
    }

    .p-datepicker-group-container {
      padding-left: .5rem;
    }

    .p-datepicker-group:first-child {
      .p-datepicker-header-custom {
        display: none;
      }
    }

    .p-datepicker-group:nth-child(2) {
      .p-datepicker-prev,
      .p-datepicker-title,
      .p-datepicker-month,
      .p-datepicker-year {
        display: none;
      }

      .p-datepicker-header-custom {
        margin: 0 auto;
        line-height: 2rem;
      }

      .p-datepicker-month-name {
        margin-right: .5rem;
      }
    }
  }

  &_buttons-bar {
    display: flex;
    flex-direction: row-reverse;

    .p-datepicker-footer {
      padding-right: .5rem;
      border-right: 1px solid var(--surface-d);

      .p-datepicker-range-buttons {
        width: 90px;
        font-size: .7rem;
        background: var(--surface-a);
      }

      .p-button {
        padding: .3rem .25rem;
        margin-bottom: .3rem !important;
        font-size: .7rem;
        line-height: 1;

        &-label {
          font-size: .8rem;
        }
      }
    }
  }
}

.p-calendar {
  width: 100%;

  .p-button.p-button-icon-only {
    width: 2.2rem;
    padding: 0;

    &,
    &:hover,
    &:active {
      color: var(--text-color);
      background: var(--surface-50);
      border: 1px solid var(--surface-d);
      border-left: 0;
    }
  }
}
