
.flatpickr-calendar
{
  width: 400px;
}

.flatpickr-months
{
  display: flex;
  justify-content: space-between;
  padding: 15px 10px;
}

.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg
{
  width: 14px;
  height: 14px;
  fill: var(--color-text);
}

.flatpickr-prev-month,
.flatpickr-next-month
{
  width: 32px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.flatpickr-month
{
  position: relative;
  width: 260px;
  padding-right: 110px;
}

.flatpickr-current-month
{
  border: none;
  background: var(--color-button-light);

  select
  {
    background: transparent;
    color: var(--color-text);
  }

  &:after
  {
    opacity: 0.2;
    transition: opacity 0.2s ease;
  }

  &:hover:after
  {
    opacity: 1;
  }

  .numInputWrapper
  {
    position: absolute !important;
    top: 0;
    right: -110px;
    width: 100px;

    input
    {
      background: var(--color-button-light);
      border: none;
    }
  }
}


.flatpickr-innerContainer
{
  overflow: hidden;
  padding: 15px 5px;
}

.flatpickr-weekdaycontainer,
.flatpickr-days .dayContainer
{
  display: grid;
  width: 100%;
  grid-template-columns: repeat(7, 1fr);
  text-align: center;
}

.flatpickr-weekday
{
  color: var(--color-text-dim-one);
  font-size: var(--font-size-xs);
  margin-bottom: 20px;
}

.flatpickr-day
{
  min-height: 40px;
  line-height: 40px;
  cursor: pointer;
  position: relative;
  font-size: var(--font-size-s);

  &:after
  {
    content: '';
    width: 30px;
    height: 30px;
    margin-left: -15px;
    margin-top: -16px;
    border-radius: 30px;
    background: transparent; //var(--color-highlight);
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: -1;
    transition: background 0.2s ease;
  }

  &:hover:after
  {
    background: var(--color-button-light);
  }

  &.today
  {
    font-weight: 700;

    &:after
    {
      background: var(--color-button-light);
    }
  }

  &.selected
  {
    font-weight: 700;
    color: var(--color-primary-text) !important;

    &:after
    {
      background: var(--color-primary);
    }
  }

  &.nextMonthDay, &.prevMonthDay
  {
    color: var(--color-text-dim-one);
  }
}


.flatpickr-calendar .numInputWrapper
{
  position: relative;

  input
  {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
  }

  .arrowUp, .arrowDown
  {
    position: absolute;
    right: 5px;
    top: 3px;
    width: 21px;
    height: 21px;
    line-height: 21px;
    text-align: center;
    cursor: pointer;
    opacity: 0.2;
    transition: opacity 0.2s ease;

    &:before
    {
      font-family: var(--font-icon);
      content: "\e845";
    }
  }

  .arrowDown
  {
    top: auto;
    bottom: 1px;

    &:before
    {
      content: "\e842"
    }
  }

  &:hover
  {
    .arrowUp, .arrowDown
    {
      opacity: 1;
    }
  }
}


.flatpickr-time
{
  border-top: 1px solid var(--color-line);
  background: var(--color-button-light);
  padding: 20px 15px;
  display: flex;
  align-items: center;

  input[type="number"]
  {
    padding-left: 20px;
    border: none;
    background: var(--color-dropdown);
    box-shadow: var(--shadow-short);
  }
}

.flatpickr-time-separator
{
  margin: 0 15px;
}