:root {
  /*//////////////////////////////////////////////////////////////////
  [ COLOR ]*/
  --cl-main: #7a88c9;
  --cl-main-dark: #091931;
  --cl-button-primary: #ffc947;
  --cl-button-secondary: #289E64;
  --cl-placeholders: #606060;
  --cl-input: #F0F0F0;
  --fn-cl-primary: #091931;
  --fn-cl-yellow: #FFC947;
  --fn-cl-white: #fff;
  --fn-cl-logo: #011562;
  --fn-cl-placeholder: #999999;
  --bg-cl-light: #EBEEF7;
}

th {
  text-align: center;
}

.elegant-calencar {
  max-width: 700px;
  text-align: center;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 5px;
  z-index: 4;
}

.wrap-header {
  position: relative;
  width: 35%;
  z-index: 0; 
  background: var(--cl-main);
}

@media (max-width: 767.98px) {
  .wrap-header {
  width: 100%;
  padding: 20px 0; } 
}

#header {
  width: 100%;
  position: relative; }
  #header .pre-button, #header .next-button {
    cursor: pointer;
    width: 1em;
    height: 1em;
    line-height: 1em;
    border-radius: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 18px; }
    #header .pre-button i, #header .next-button i {
      color: #fff; }

.button-wrap {
  position: relative;
  padding: 10px 0; 
}
.button-wrap .pre-button, .button-wrap .next-button {
  cursor: pointer;
  width: 1em;
  height: 1em;
  line-height: 1em;
  border-radius: 50%;
  font-size: 18px; 
}

.button-wrap .pre-button i, .button-wrap .next-button i {
  color: #cccccc; 
}
.button-wrap .pre-button i:hover, .button-wrap .next-button i:hover {
  color: var(--cl-main-dark); 
}

.head-fullday.todayWeekDay {
  padding: 1rem;
  background: var(--cl-main-dark);
}

.head-day {
  line-height: 1;
  color: #fff; }

.head-month {
  min-width: 9ch;
  line-height: 1;
  font-size: 16px;
  text-transform: capitalize;
  font-weight: 300; 
}

.calendar-wrap {
  width: 65%;
  background: #F5F5F6;
  padding: 20px 20px 20px 20px; }
  @media (max-width: 767.98px) {
    .calendar-wrap {
      width: 100%; } }

#calendar {
  width: 100%; }

#calendar tr {
  height: 3em; }

thead tr {
  color: var(--cl-main);
}

tbody tr {
  color: var(--cl-main-dark); }

tbody td {
  width: 14%;
  border-radius: 50%;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-in;
  -o-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in;
  position: relative;
  z-index: 0; }
  tbody td:after {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    bottom: 0;
    content: '';
    width: 34px;
    height: 29px;
    margin: 0 auto;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    border-radius: .3rem;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    z-index: -1; }
    @media (prefers-reduced-motion: reduce) {
      tbody td:after {
        -webkit-transition: none;
        -o-transition: none;
        transition: none; } }

tbody td:hover:not(.not-for-select), .selected {
  color: #fff;
  border: none; }
  tbody td:hover:after, .selected:after {
    background: rgba(122, 136, 201, .75);
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.34);
  }

tbody td:active {
  -webkit-transform: scale(0.7);
  -ms-transform: scale(0.7);
  transform: scale(0.7); }

#today {
  color: var(--cl-button-primary);
  font-weight: 700;  
}
#today.selected {
  color: var(--fn-cl-white); 
}
#today.selected:after {
  border: none; 
}
#today:after {
  border: 1px solid var(--cl-button-primary); 
}

#disabled {
  cursor: default;
  color: black; }

/* #disabled:hover {
  background: #fff;
  color: #c9c9c9; } */
#disabled:hover:after {
  background: transparent;
  box-shadow: none; 
}

#reset {
  display:inline-block;
  cursor: pointer;
  padding: 0.3rem 1rem;
  color: var(--cl-main);
  border: 1px solid var(--cl-main);
  border-radius: 4px;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-transform: uppercase;
  font-size: 11px; }

#reset:hover {
  color: var(--cl-main-dark);
  border-color: var(--cl-main-dark); }

#reset:active {
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8); }

  .not-for-select {
    opacity: 0.32;
    cursor: not-allowed;
  }
  tbody td.not-for-select:hover::after {
    background: transparent;
    box-shadow: none;
  }