.tavo-calendar {
  text-align: center;
  /*font-size: 13px;*/
  max-width:600px;
  margin-left: auto;
  margin-right: auto;
  }

.tavo-calendar__info {
  display: none;
  text-align: left;
  margin-bottom: 8px;
  /*font-size: 12px; */}
  .tavo-calendar__info span {
    font-weight: bold;
    background-color: #f1f1f1; }
  .tavo-calendar__info:after {
    content: '';
    display: block;
    clear: both; }

.tavo-calendar__header {
  display: flex;
  justify-content: space-between;
  color: #6b28a4;
  align-items: center;
  padding: 4px 80px;
  font-size:1.5em;
  
  text-transform:uppercase; }

.tavo-calendar__nav {
  float: left;
  /*font-size: 1.125em;*/
  font-weight: bold;
  position: relative;
  padding: 0;
  cursor: pointer;
  fill: white; }
  .tavo-calendar__nav_prev, .tavo-calendar__nav_next {
    text-align: left; }
    .tavo-calendar__nav_prev svg, .tavo-calendar__nav_next svg {
      width: 26px;
      height: 26px;
     fill: #6b28a4;
     transition: all .2s ease-in-out;
      }
      .tavo-calendar__nav_prev svg:hover, .tavo-calendar__nav_next svg:hover {
      transform: scale(1.3);
       }

.tavo-calendar__code_lock {
  opacity: 0.7; }

.tavo-calendar__code_lock:hover {
  opacity: 1; }

.tavo-calendar__code_lock .tavo-calendar__days {/*º*/
  pointer-events: none; }

.tavo-calendar__week-names {
  display: flex;
  font-weight:bold;
  border-top:1px solid #ddd;
  color:#444;
  text-transform:uppercase;
  font-size: 12px;
  padding: 10px 4px 4px 4px; }

.tavo-calendar__days {
  display: flex;
  flex-wrap: wrap;
  margin-top: 5px; }

.tavo-calendar__reset {
  float: right; }
  .tavo-calendar__reset svg {
    height: 16px;
    width: 16px; }

.tavo-calendar__weekday {
  flex: 1;
  text-align: center; }

.tavo-calendar__day {
  flex: 1;
  min-width: 14%;
  max-width: 14%;
  text-align: center;
  cursor: pointer;
  margin-bottom:10px; }
  .tavo-calendar__day span {
    width: 26px;
    height: 26px;
 
    border-radius: 50%;
    display: inline-block;
    line-height: 26px;
    /*font-size: 12px;*/ }
    .tavo-calendar__day span:hover {
      background-color: #6b28a4;
      opacity:.5;
      color:white; }
  /*.tavo-calendar__day_highlight {
    color: red !important;}*/
  .tavo-calendar__day_abs-today {
     background-color: #ffc10726;
 
    border-radius: 35px; }
  .tavo-calendar__day_today:hover span {
    border-radius: 50%; }
  .tavo-calendar__day_off, .tavo-calendar__day_exp, .tavo-calendar__day_different-month, .tavo-calendar__day_lock {
    cursor: default;
    color: #adb5bd;
    background-color: #f8f9fa; }
    .tavo-calendar__day_off day, .tavo-calendar__day_off day:hover, .tavo-calendar__day_exp day, .tavo-calendar__day_exp day:hover, .tavo-calendar__day_different-month day, .tavo-calendar__day_different-month day:hover, .tavo-calendar__day_lock day, .tavo-calendar__day_lock day:hover {
      background: unset; }
  .tavo-calendar__day_off span {
    text-decoration: line-through; }
  .tavo-calendar__day_select {
    background-color: #6b28a4;
    color:white;
    border-radius:30px }
  .tavo-calendar__day_select span {
    background-color: #6b28a4;
    color:white;
    border-radius: 50%; }
  .tavo-calendar__day_select day:hover {
    background-color: lightblue; }
  .tavo-calendar__day_range-select {
    background-color: lightblue; }
  .tavo-calendar__day_select-lock {
    pointer-events: none;
    color: grey; }

    @media (max-width: 600px) {
      .tavo-calendar__header { padding: 4px 10px; }
    }
