/*
* Schedules & Program results page.
*/

/* Content > Subheader */

.schedule-dashboard__arrow {
  cursor: pointer;
  background: none;
  border: 0;
}

.schedules-data__row .calendar-column {
  display: inline-block;
  width: 100%;
}

.schedule-dashboard__arrow:hover {
  opacity: .7;
  cursor: pointer;
  background: none;
  border: 0;
}

@media (max-width: 1060px) {
  .schedule-dashboard__arrow {
    padding: 0;
  }
}

.schedule-dashboard__arrow:hover {
  opacity: .7;
}

/* dashboard main date heading */
.schedules-data {
  border-top: 1px solid #636466;
}

.schedule-dashboard__content--header h2 {
  font-size: 22px;
  margin-top: 0;
  margin-bottom: 16px;
  color: #333;
  text-align: left;
}

@media (min-width: 768px) {
  .schedule-dashboard__content--header h2 {
    font-size: 28px;
  }
}

.register-btn[disabled] {
  pointer-events: none;
  cursor: default;
}

.schedule-dashboard__content--header .date {
  margin: auto 0;
  color: #231f20;
  font-size: 18px;
  font-weight: 400;
  font-family: Verdana, Arial, Helvetica, sans-serif;
}

.btn.btn-schedule-pdf,
.btn.btn-schedule-pdf-generate {
  border: 1px solid #d4d4d4;
  background-color: #f4f4f4;
  border-radius: 0;
  box-shadow: none;
  color: #333;
}

.btn.btn-schedule-pdf:hover,
.btn.btn-schedule-pdf-generate:hover {
  border: 1px solid #ccc;
  background-color: #eee;
  color: #333;
}

.btn.btn-schedule-pdf .fa,
.btn.btn-schedule-pdf-generate .fa {
  margin-left: 10px;
}

button.show-date-filter {
  background: none;
  border: none;
  padding: 0;
}

body.modal-open .top-navs .nav-wrapper,
body.modal-open .top-navs .nav-global {
  z-index: 200 !important;
}

/* Schedules Sidebar */
.schedule-dashboard__sidebar .form-group-wrapper {
  border-width: 0 0 0;
  border-style: solid;
  border-color: #939495 !important;
  background-color: #f2f2f2;
  padding: 0;
}

.schedule-dashboard__sidebar .collapse.in,
.schedule-dashboard__sidebar .collapse.show {
  padding-bottom: 0;
}

.schedule-dashboard__sidebar .navbar-controls.navbar-controls-mobile {
  margin-bottom: 0;
  padding: 15px 10px;
}

.schedule-dashboard__sidebar .navbar-controls-mobile .navbar-controls__title strong {
  font-size: 14px;
}

.schedule-dashboard__sidebar .form-group-wrapper.mobile-refine-results {
  background: #fff;
}

.schedule-dashboard__sidebar .form-group-wrapper.mobile-refine-results .badge {
  background: #fff;
  color: #0060ad;
  border: 1px solid #0060ad;
}

.schedule-dashboard__sidebar .form-group-wrapper.mobile-refine-results label {
  font-size: 14px;
}

.schedule-dashboard__sidebar .form-group-wrapper > label {
  line-height: 2;
  background-color: #fff;
  border-bottom: 1px solid #939495;
  border-top: 1px solid #939495;
  color: #636466;
  font-size: 12px;
  margin-bottom: -1px;
  margin-top: -1px;
  padding: 15px 10px;
  text-transform: uppercase;
  text-decoration: none;
}

.schedule-dashboard__sidebar .form-group-wrapper .svg-inline--fa {
  font-size: 15px;
}

.schedule-dashboard__sidebar label {
  font-family: Verdana, Arial, Helvetica, sans-serif;
}

.schedule-dashboard__sidebar a.clear-filters {
  color: #0060af;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
}

#schedules-filters {
  border: 1px solid #939495;
}

#schedules-filters .navbar-form {
  padding: 0;
  margin: 0;
}

.schedule-dashboard__sidebar .checkbox-wrapper input {
  position: absolute;
  left: -9999px;
}

.schedule-dashboard__sidebar .checkbox-wrapper input:checked + label,
.schedule-dashboard__sidebar .checkbox-wrapper input:not(:checked) + label {
  color: #231F20;
  font-size: 12px;
  font-weight: normal;
  line-height: 25px;
  margin-bottom: 0;
  padding: 5px 5px 5px 35px;
}

.schedule-dashboard__sidebar .checkbox-wrapper input + label {
  position: relative;
  padding-left: 25px;
  cursor: pointer;
  display: inline-block;
  word-break: break-word;
  padding-bottom: 0;
}

.schedule-dashboard__sidebar .navbar-controls.navbar-controls-mobile {
  margin-bottom: 0;
  padding: 15px 10px;
}

.schedule-dashboard__sidebar .navbar-controls-mobile .navbar-controls__title strong {
  font-size: 14px
}

.schedule-dashboard__sidebar .form-group-wrapper.mobile-refine-results{
  background: #fff;
}


.schedule-dashboard__sidebar .form-group-wrapper.mobile-refine-results .badge {
  background: #fff;
  color: #0060ad;
  border: 1px solid #0060ad;
}

.schedule-dashboard__sidebar .form-group-wrapper.mobile-refine-results label {
  font-size: 14px;
}

@media (min-width: 1060px) {
  .col-12.schedule-dashboard__sidebar {
    padding-left: 0;
  }
}

@media (max-width: 1058px) {
  .col-12.schedule-dashboard__sidebar {
    padding: 0;
  }

  .col-12.schedule-dashboard__content {
    padding: 0;
  }

  .col-12.schedule-dashboard__content .schedules-data__row {
    margin: 0;
  }

  .schedule-dashboard__sidebar .col-12 .label-mobile-results {
    padding: 15px 0;
  }

  .schedule-dashboard__content--header > .col-md-12 {
    padding: 0;
  }

  .schedule-dashboard__arrow.right {
    padding-right: 15px;
  }

  .schedule-dashboard__arrow.left {
    padding-left: 15px;
  }
}

.schedule-dashboard__sidebar .form-group-wrapper > label {
  line-height: 2;
  background-color: #fff;
  border-bottom: 1px solid #939495;
  border-top: 1px solid #939495;
  color: #636466;
  font-size: 12px;
  margin-bottom: -1px;
  margin-top: -1px;
  padding: 15px 10px;
  text-transform: uppercase;
  text-decoration: none;
}

@media (max-width: 1058px) {
  .schedule-dashboard__sidebar {
    padding: 15px 0;
  }
}

.schedule-dashboard__sidebar .form-group-wrapper i {
  font-size: 15px;
}

.schedule-dashboard__sidebar label {
  font-family: Verdana, Arial, Helvetica, sans-serif;
}

.schedule-dashboard__sidebar a.clear-filters {
  color: #0060af;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
}


#schedules-filters {
  border: 1px solid #939495;
}

#schedules-filters .navbar-form {
  padding: 0;
  margin: 0;
}

.schedule-dashboard__sidebar .checkbox-wrapper input {
  position: absolute;
  left: -9999px;
}

.schedule-dashboard__sidebar .checkbox-wrapper input:checked + label,
.schedule-dashboard__sidebar .checkbox-wrapper input:not(:checked) + label {
  color: #231F20;
  font-size: 12px;
  font-weight: normal;
  line-height: 25px;
  margin-bottom: 0;
  padding: 5px 5px 5px 35px;
}

.schedule-dashboard__sidebar .checkbox-wrapper input + label {
  position: relative;
  padding-left: 25px;
  cursor: pointer;
  display: inline-block;
  word-break: break-word;
}

.schedule-dashboard__sidebar .checkbox-wrapper input:checked + label:before,
.schedule-dashboard__sidebar .checkbox-wrapper input:not(:checked) + label:before,
.schedule-dashboard__sidebar .checkbox-wrapper input:checked + label:after,
.schedule-dashboard__sidebar .checkbox-wrapper input:not(:checked) + label:after {
  left: 10px;
  top: 8px;
}

.schedule-dashboard__sidebar .checkbox-wrapper input + label:before {
  border: 2px solid #666666;
  background: white;
}

.schedule-dashboard__sidebar .checkbox-wrapper input + label:before,
.schedule-dashboard__sidebar .checkbox-wrapper input + label:after {
  content: '';
  position: absolute;
  left: 0;
  top: 4px;
  width: 16px;
  height: 16px;
  border-radius: 2px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.schedule-dashboard__sidebar .checkbox-wrapper.skip-checked input + label:after,
.schedule-dashboard__sidebar .checkboxes .checkbox-checked input + label:after,
.schedule-dashboard__sidebar .checkboxes input:checked + label:after,
.schedule-dashboard__sidebar .radios input:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.schedule-dashboard__sidebar .checkbox-wrapper input:checked + label:before,
.schedule-dashboard__sidebar .checkbox-wrapper input:checked + label:after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%230060ad' d='M0 0h24v24H0z'/%3E%3Cpath fill='white' d='M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z'/%3E%3C/svg%3E");
  background-size: contain;
}

.schedule-dashboard__sidebar .checkboxes input + label:after {
  background-image: none !important;
}

.schedule-dashboard__sidebar .badge {
  background-color: #0060ad;
  border-radius: 5px;
  font-size: 12px;
  margin-left: 9px;
}

.navbar-controls__title strong {
  color: #636466;
  font-size: 18px;
  font-weight: 400;
  text-transform: uppercase;
}

/* Calendar Schedules Sidebar */
.schedule-dashboard__sidebar .form-group-date .datepicker-inline {
  margin: 0 auto;
}

.datepicker td, .datepicker th {
  border-radius: 0;
}

.datepicker .table-condensed > tbody > tr > td.disabled,
.datepicker .table-condensed > tbody > tr > td.disabled:hover {
  background: #f2f2f2;
  color: #646366;
}

.datepicker .table-condensed > tbody > tr > td.new,
.datepicker .table-condensed > tbody > tr > td.new:hover,
.datepicker .table-condensed > tbody > tr > td.old:hover,
.datepicker .table-condensed > tbody > tr > td.old {
  background: #636466 !important;
  color: #636466 !important;
  cursor: default;
}

.form-group-date .datepicker-inline .datepicker-days {
  /*display: grid !important;*/
}

.schedule-dashboard__sidebar .date {
  padding: 15px 10px;
}

.datepicker .table-condensed > tbody > tr > td {
  background: white;
  border: 2px solid #636466;
  color: #231f20;
}

.datepicker .table-condensed > thead > tr > .next,
.datepicker .table-condensed > thead > tr > .prev {
  border: 1px solid #636466;
  border-radius: 5px;
}

.datepicker table tr td.active.active {
  background: #b92f9e;
  border-radius: 0;
  color: white;
  font-weight: bold;
}

.datepicker table tr td.active {
  text-shadow: none;
}

.datepicker table tr td.day:hover,
.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover:hover {
  background: #ffffff;
}

.datepicker table tr td.active.active:hover {
  background: #b92f9e;
}

.header-today {
  text-transform: none;
  font-size: 12px;
  font-weight: 400;
}

.header-today .date {
  padding: 0;
}

.datepicker th.datepicker-switch {
  color: #231f20;
}

.table-condensed > thead > tr > th.dow {
  padding-top: 10px;
}

/*Modal view for instructor*/
.schedule-dashboard__modal .modal-dialog:not(.hb-loc-modal__modal) {
  height: 80% !important;
  padding-top: 10%;
  top: 12%;
}

.schedule-dashboard__modal .modal-dialog:not(.hb-loc-modal__modal) .modal-content {
  height: 100% !important;
  overflow: visible;
  bottom: 5vh;
}

.schedule-dashboard__modal .modal-body {
  height: 80%;
  overflow: auto;
}

.schedule-dashboard__modal .modal-content {
  border: 0 !important;
}

.schedule-dashboard__modal--body {
  overflow-x: hidden;
  overflow-y: scroll;
  height: 80%;
}

.schedule-dashboard__modal .modal-dialog {
  max-width: 60%;
}

.schedule-dashboard__modal--header .close {
  background: #0060ad;
  padding: 10px;
  color: white;
  opacity: 1;
}

.schedule-dashboard__modal--header {
  padding-left: 0;
  border-bottom: 2px solid #636466;
  display: inline-flex;
  width: 100%;
}

.schedule-dashboard__modal--header .modal-title {
  color: #636466;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: 500;
  line-height: 48px;
  padding: 0 15px;
  width: 100%;
}

.schedule-dashboard__modal .modal-content {
  padding: 0;
}

.schedule-dashboard__modal--body h4 {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  padding: 10px 0;
  color: #231f20;
  font-size: 18px;
  font-weight: 700;
  line-height: 27px;
}

.schedule-dashboard__modal--body .header-border {
  border-bottom: 1px solid #636466;
  padding: 0 20px;
}

@media (min-width: 992px) {
  .schedule-dashboard__modal--body .header-border {
    padding: 0 24px;
  }
}

.schedules-data__row:nth-child(even) {
  background-color: #f2f2f2;
}

.schedules-data__row:nth-child(odd) {
  background-color: white;
}

.schedules-data__row .atcb-link {
  color: #92278f;
  font-weight: 700;
  line-height: 21px;
}

.schedules-data__row {
  color: #231f20;
}

.schedules-data__row a {
  color: #0060af;
}

.schedules-data__row span {
  font-size: 12px;
}

.schedules-data__row .time {
  font-weight: 400;
}

.schedule-dashboard__modal--body {
  font-size: 14px;
}

.schedules-data__row .class-name {
  color: #0060ad;
  font-weight: 700;
}

.schedules-data__row .class-name span {
  color: #231f20;
  font-weight: 400;
}

.schedule-dashboard__modal--header .close:hover,
.schedule-dashboard__modal--header .close:focus {
  opacity: 1 !important;
  color: white !important;
}

.schedule-dashboard__wrapper .modal-cover {
  background: rgba(0, 0, 0, 0.5);
}

.schedules-data__row .addtocalendar {
  top: 0;
  right: 0;
  float: none;
}

.schedule-dashboard__arrow i.fa,
.schedule-dashboard__arrow {
  display: inline-block;
}

.schedule-dashboard__arrow.right,
.schedule-dashboard__arrow.left {
  border-radius: 60px;
  padding: 0.3em 0.6em;
  border: 2px solid #f2f2f2;
}

.schedule-dashboard__modal--instructor-link {
  color: #0060af;
}

.schedule-dashboard__modal--location .schedule-dashboard__modal--body .table > tbody > tr > td {
  padding: 8px;
}

.btn-schedule-pdf-generate,
.btn-schedule-bookings {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  border: 0;
  color: #0060af;
  text-transform: none;
  font-weight: 700;
  float: right;
}

.btn-schedule-bookings {
  padding-top: 5px;
}

.btn-schedule-group {
  display: flex;
  flex-direction: column-reverse;
}

@media (min-width: 768px) {
  .btn-schedule-group {
    flex-direction: row;
    justify-content: flex-end;
  }

  .btn-schedule-bookings {
    padding-right: 20px;
    padding-top: 0;
  }
}


.schedule-dashboard__content--header .btn-schedule-pdf-generate:after {
  display: none;
}

@media (min-width: 768px) and (max-width: 991px) {
  .schedule-dashboard__sidebar .form-group-date .datepicker-inline {
    width: 366px;
    margin: 0 auto;
  }

  .datepicker .table-condensed > tbody > tr > td {
    padding: 16px;
  }

  .schedule-dashboard__wrapper > .container {
    margin-top: 0;
  }

  .schedule-dashboard__modal--class .date-column,
  .schedule-dashboard__modal--class .instructor-column {
    flex: 0 1 50%;
  }

  .schedule-dashboard__modal--class .time-column {
    flex: auto;
  }

  .schedule-dashboard__modal--class .location-column {
    flex: 1 1 100%;
  }

  .schedules-data__row > div:nth-child(even) {
    text-align: left !important;
  }

  .schedule-dashboard__modal--instructor .class-column,
  .schedule-dashboard__modal--instructor .location-column,
  .schedule-dashboard__modal--instructor .calendar-column {
    flex: 0 1 100%;
  }

  .schedule-dashboard__modal--instructor .date-column {
    flex: 0 1 50%;
  }

  .schedule-dashboard__modal--instructor .calendar-column .addtocalendar {
    padding-left: 0;
    float: none;
  }

  .atcb-link {
    font-size: 12px;
  }

  .schedule-dashboard__modal--class .addtocalendar {
    float: none;
    padding-left: 0;
  }

  .day-label .date {
    font-size: 14px;
  }

  .day-label .schedule-dashboard__arrow {
    font-size: 16px;
  }
}

.atcb-link, .atcb-link-cancel {
  font-size: 14px;
}

.atcb-link-cancel {
  color: red;
  cursor: auto;
  font-weight: bold;
}

.schedules-navbar-form {
  padding: 0;
}

#schedules-filters {
  border: 1px solid #939495;
}

.label-mobile-results {
  border-left: 1px solid #939495;
  border-right: 1px solid #939495;
}

.mobile-refine-results .btn-schedule-pdf-generate {
  padding: 10px 0;
}

.schedule-dashboard__modal--instructor p,
.schedule-dashboard__modal--class p {
  margin-bottom: 0;
  padding-top: 0;
}

.schedule-dashboard__modal--class .m-b {
  margin-bottom: 20px;
}

.schedule-dashboard__modal--location label,
.schedule-dashboard__modal--location .schedule-dashboard__modal--body {
  font-family: Verdana, Arial, Helvetica, sans-serif;
}

.schedule-dashboard__modal--header {
  font-family: "Cachet", Arial, sans-serif;
}

.center {
  -webkit-align-items: center;
  align-items: center;
}

.center li {
  background: deepskyblue;
}

.baseline {
  -webkit-align-items: baseline;
  align-items: baseline;
}

.baseline li {
  background: lightgreen;
}

.stretch {
  -webkit-align-items: stretch;
  align-items: stretch;
}

.stretch li {
  background: hotpink;
}

.flex-item {
  background: tomato;
  padding: 5px;
  width: 50px;
  margin: 5px;
  line-height: 50px;
  color: white;
  font-weight: bold;
  font-size: 2em;
  text-align: center;
}

.schedules-data__header > div,
.schedules-data__row > div {
  flex: 0 1 auto;
}

.schedules-data__row .register-column {
  text-align: center;
}

.schedules-data__row .register-column a {
  background: #92278f;
  color: #fff;
  font-weight: bold;
  border-radius: 5px;
  padding-top: 10px;
}

.schedules-data__row .register-column a:hover {
  background: #92278f;
}

.btn-schedule-pdf-generate .pdf-link:after {
  content: none;
}

.schedule-dashboard__top-header {
  background: #f2f2f2;
  display: flex;
  padding: 20px 0;
  margin: 0 15px 20px;
}

.schedule-dashboard__results-count {
  color: #231f20;
}

/*Pager*/
.schedule-dashboard__pager--current {
  text-align: center;
  color: #231f20;
  font-size: 14px;
}

.schedule-dashboard__pager {
  border-top: 1px solid #f2f2f2;
  padding: 20px;
}

.schedule-dashboard__pager a {
  color: #636466;
  font-weight: 700;
  cursor: pointer;
}

.schedule-dashboard__pager--next {
  margin-right: 15px;
}

.schedule-dashboard__pager--prev {
  margin-left: 15px;
}

.schedule-dashboard__pager a.btn {
  background: none;
  padding: 0;
}

.schedule-dashboard__pager a.btn:hover {
  color: #636466;
}

.schedule-dashboard__pager a.btn:active {
  box-shadow: none;
}

@media screen and (min-width: 1060px) {
  .schedules-filters {
    display: block !important;
  }
}

.schedule-dashboard__top-header a[href$=pdf]:after,
.schedule-dashboard__top-header a[href*=".pdf?"]:after {
  display: none;
}

.scroll-not {
  overflow-y: hidden;
}

.pr-none {
  padding-right: 0 !important;
}

.block-inline-blocklb-repeat-schedules a.btn {
  padding: 10px 12px 6px;
  font-size: 16px;
  line-height: 24px;
}

.btn-schedule-pdf-generate,
.btn-schedule-bookings {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  border: 0;
  color: #0060af;
  text-transform: none;
  font-weight: 700;
  float: right;
}

.btn-schedule-bookings {
  padding-top: 5px;
}

.btn-schedule-group {
  display: flex;
  flex-direction: column-reverse;
}

@media (min-width: 768px) {
  .btn-schedule-group {
    flex-direction: row;
    justify-content: flex-end;
  }

  .btn-schedule-bookings {
    padding-right: 20px;
    padding-top: 0;
  }
}
