.flatpickr-input {
  -webkit-border-radius: 2px;
          border-radius: 2px;
  border: solid 1px #c4cbe1;
  font-size: 12px;
  color: #333333;
  padding: 10px 15px;
  line-height: 1.25;
  width: 100%; }
  .flatpickr-input:disabled {
    background-color: #ebeef5;
    border: solid 1px #d7dceb; }
  .flatpickr-input:-moz-read-only {
    border: solid 1px #c4cbe1;
    background: #fff; }
  .flatpickr-input:read-only {
    border: solid 1px #c4cbe1;
    background: #fff; }
    .flatpickr-input:-moz-read-only:focus, .flatpickr-input:-moz-read-only.active {
      border-color: #999; }
    .flatpickr-input:read-only:focus, .flatpickr-input:read-only.active {
      border-color: #999; }
  .flatpickr-input:focus, .flatpickr-input.active {
    border-color: #999; }
  .flatpickr-input.rounded {
    -webkit-border-radius: 18px;
            border-radius: 18px; }
  .flatpickr-input.form-control-lg {
    font-size: 20px;
    padding: 12px 15px; }
  .flatpickr-input.form-control-sm {
    font-size: 10px;
    padding: 7px 15px; }

.flatpickr [data-toggle] {
  cursor: pointer; }

.flatpickr-calendar {
  padding: 25px;
  -webkit-border-radius: 2px;
          border-radius: 2px;
  background-color: #ffffff;
  border: solid 1px rgba(57, 81, 155, 0.3); }
  .flatpickr-calendar .flatpickr-time {
    margin: -25px;
    margin-top: -19px; }
    .flatpickr-calendar .flatpickr-time .flatpickr-hour, .flatpickr-calendar .flatpickr-time .flatpickr-minute, .flatpickr-calendar .flatpickr-time .flatpickr-am-pm, .flatpickr-calendar .flatpickr-time .flatpickr-second {
      font-size: 15px;
      font-weight: normal; }
      .flatpickr-calendar .flatpickr-time .flatpickr-hour:hover, .flatpickr-calendar .flatpickr-time .flatpickr-minute:hover, .flatpickr-calendar .flatpickr-time .flatpickr-am-pm:hover, .flatpickr-calendar .flatpickr-time .flatpickr-second:hover {
        background: transparent; }
  .flatpickr-calendar .flatpickr-rContainer + .flatpickr-time {
    margin-top: 10px;
    border-top: 1px solid #d7dceb;
    padding-bottom: 2px; }
  .flatpickr-calendar:after, .flatpickr-calendar:before {
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    left: 30px; }
  .flatpickr-calendar.arrowTop:after {
    border-color: rgba(255, 255, 255, 0);
    border-bottom-color: #fff;
    border-width: 9px;
    margin-left: -9px; }
  .flatpickr-calendar.arrowTop:before {
    border-color: rgba(245, 0, 0, 0);
    border-bottom-color: rgba(57, 81, 155, 0.3);
    border-width: 10px;
    margin-left: -10px; }
  .flatpickr-calendar.arrowBottom:after {
    border-color: rgba(255, 255, 255, 0);
    border-top-color: #fff;
    border-width: 9px;
    margin-left: -9px; }
  .flatpickr-calendar.arrowBottom:before {
    border-color: rgba(245, 0, 0, 0);
    border-top-color: rgba(57, 81, 155, 0.3);
    border-width: 10px;
    margin-left: -10px; }
  .flatpickr-calendar.inline {
    max-width: 100%;
    margin-top: 14px; }
    .flatpickr-calendar.inline.arrowBottom:after {
      border-color: rgba(255, 255, 255, 0);
      border-bottom-color: #fff;
      border-top-color: transparent;
      border-width: 9px;
      margin-left: -9px;
      bottom: 100%;
      top: auto; }
    .flatpickr-calendar.inline.arrowBottom:before {
      bottom: 100%;
      top: auto;
      border-color: rgba(245, 0, 0, 0);
      border-bottom-color: rgba(57, 81, 155, 0.3);
      border-width: 10px;
      margin-left: -10px; }
  .flatpickr-calendar .flatpickr-month {
    margin-bottom: 15px; }
    .flatpickr-calendar .flatpickr-month > .flatpickr-prev-month {
      float: left;
      margin-left: 2px; }
      .flatpickr-calendar .flatpickr-month > .flatpickr-prev-month::before {
        content: "\f11a";
        font-family: "LineAwesome";
        color: #c4cbe1;
        font-size: 25px;
        position: relative;
        left: -1px; }
      .flatpickr-calendar .flatpickr-month > .flatpickr-prev-month:hover::before {
        color: #808fbf; }
      .flatpickr-calendar .flatpickr-month > .flatpickr-prev-month > svg {
        display: none; }
    .flatpickr-calendar .flatpickr-month > .flatpickr-next-month {
      float: right;
      margin-right: 5px; }
      .flatpickr-calendar .flatpickr-month > .flatpickr-next-month::before {
        content: "\f11d";
        font-family: "LineAwesome";
        color: #c4cbe1;
        font-size: 25px;
        position: relative;
        left: -1px; }
      .flatpickr-calendar .flatpickr-month > .flatpickr-next-month:hover::before {
        color: #808fbf; }
      .flatpickr-calendar .flatpickr-month > .flatpickr-next-month > svg {
        display: none; }
  .flatpickr-calendar .flatpickr-current-month {
    left: 8px; }
    .flatpickr-calendar .flatpickr-current-month > .cur_month, .flatpickr-calendar .flatpickr-current-month > .cur_year {
      color: #333;
      font-size: 16px;
      font-weight: 500; }
    .flatpickr-calendar .flatpickr-current-month > .cur_year:hover {
      background: transparent; }
  .flatpickr-calendar .flatpickr-weekdays {
    margin-bottom: 5px; }
    .flatpickr-calendar .flatpickr-weekdays > .flatpickr-weekday {
      text-align: center;
      font-size: 12px;
      font-weight: bold;
      text-transform: uppercase;
      color: #333; }
      .flatpickr-calendar .flatpickr-weekdays > .flatpickr-weekday:nth-child(7) {
        margin-right: 0; }
  .flatpickr-calendar .flatpickr-day {
    border: none;
    width: 26px;
    height: 26px;
    -webkit-border-radius: 18px;
            border-radius: 18px;
    line-height: 26px;
    font-size: 12px;
    color: #333;
    margin-right: 10px;
    font-weight: normal; }
    .flatpickr-calendar .flatpickr-day:nth-child(7n) {
      margin-right: 0; }
    .flatpickr-calendar .flatpickr-day:not(.selected):not(.today):not(.disabled):hover {
      background-color: rgba(57, 81, 155, 0.1); }
    .flatpickr-calendar .flatpickr-day.prevMonthDay, .flatpickr-calendar .flatpickr-day.nextMonthDay, .flatpickr-calendar .flatpickr-day.disabled {
      color: #858585; }
    .flatpickr-calendar .flatpickr-day.today {
      background: rgba(222, 187, 12, 0.2); }
      .flatpickr-calendar .flatpickr-day.today:not(.selected):hover {
        color: #333; }
    .flatpickr-calendar .flatpickr-day.selected {
      background: #25628F;
      color: #fff; }
  .flatpickr-calendar .flatpickr-weekday {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: bold;
    color: #858585;
    text-align: left;
    padding-left: 2px; }
    .flatpickr-calendar .flatpickr-weekday:first-child {
      padding-left: 0; }
  .flatpickr-calendar .flatpickr-weeks {
    margin-top: 6px;
    margin-right: 1px;
    padding: 0 7px 0 0;
    border-right: 1px solid #e7eaf3; }
