:root {
    --main-color: #cda301;
    --sub-color: #ffde60;
}

.timing {
    white-space: nowrap;
    font-size: 10px;
}

div:not(#offCanvas) a {
    color: var(--main-color);
}

div:not(#offCanvas) a:hover, div:not(#offCanvas) a:focus {
    color: var(--sub-color);
}

div:not(#offCanvas) a.button:not(.black),div:not(#offCanvas) a.button:not(.black):hover {
    color: #000;
}



.button {
    background-color: var(--main-color);;
    color: #000;
}

.button:hover, .button:focus {
    background-color: var(--sub-color);
    color: #000;
}

.new_admin {
    color: #000 !important;
}

.blink_me {
  animation: blinker 1s linear 3;
}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

@keyframes blinker {
  50% { opacity: 0.5; }
}

.nomargin {
  margin: 0;
}

cp,a,span,button,a.button,button.button,label,legend,input,textarea,select,option,th,td,h1,h2,h3,h4,h5,h6 {
	font-family: 'Roboto', sans-serif;
}

ul.small {
  font-size: 0.7em;
}

ul.small li{
  margin-bottom: 2px;;
}

body {
	background-color: #000;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: bold;
}

table.spinning_timetable_table ,.spinning_timetable_table th,.spinning_timetable_table td,
table.extraclass_timetable_table ,.extraclass_timetable_table th,.extraclass_timetable_table td,
table.padeltennis_timetable_table ,.padeltennis_timetable_table th,.padeltennis_timetable_table td,
table.tennis_timetable_table ,.tennis_timetable_table th,.tennis_timetable_table td
{
  border: 1px solid #aaa;
}

.padeltennis_bookings li,
.tennis_bookings li {
  margin-bottom: 10px;
}

.padeltennis_bookings .callout,
.tennis_bookings .callout {
  font-size: 0.9em;
}

.padeltennis_bookings .callout p,
.tennis_bookings .callout p {
  margin-bottom: 3px;
}

.padeltennis_bookings .callout li,
.tennis_bookings .callout li {
  margin-bottom: 0;
}

.padeltennis_timetable_table tbody td,
.tennis_timetable_table tbody td {
  padding: 1px;
  vertical-align: top;
}

.padeltennis_timetable_table .padeltennis_slot,
.tennis_timetable_table .tennis_slot,
.auto_booking {
  font-size: 14px;
  text-align: center;
  width: 100%;
  padding: 5px;
  background-color: #9f9f9f;
  border: 2px solid #fff;
  color: #fff;
  overflow: hidden;
  position: relative;
}

.padeltennis_timetable_table .padeltennis_slot.booking,
.tennis_timetable_table .tennis_slot.booking,
.auto_booking {
  background-color: #1695ce;
}

.auto_booking.obsolete {
    opacity: 0.75;
    background-color: #9b6c6c;
}

.auto_booking.comingup {
    background-color: #6c9b74;
}

.padeltennis_timetable_table .padeltennis_slot.booking.autobooked,
.tennis_timetable_table .tennis_slot.booking.autobooked {
  background-color: #c18400;
}

.padeltennis_timetable_table .padeltennis_slot.booking button,
.tennis_timetable_table .tennis_slot.booking button,
.auto_booking button:not(.hide-for-large){
  display: none;
}

.padeltennis_timetable_table .padeltennis_slot.booking:hover button,
.tennis_timetable_table .tennis_slot.booking:hover button,
.auto_booking:hover button:not(.hide-for-large){
  display: inline-block;
}

@media print, screen and (max-width: 63.9988em) {
  .auto_booking:hover button:not(.hide-for-large){
    display: none;
  }
}

.padeltennis_timetable_table .booking .padeltennis_time, .padeltennis_timetable_table .booking .padeltennis_name,
.tennis_timetable_table .booking .tennis_time, .tennis_timetable_table .booking .tennis_name{
    font-size: 16px;
    font-weight: bold;
}

#weekly_bookings {
  font-size: 0.8em;
  border: 1px solid #ccc;
  padding: 1em;
  margin-bottom: 1em;
}

#weekly_bookings h5 {
  font-size: 1.3em;
}

.event_booking_registration .content {
  background-color: #fff;
}

.month_td.bad_debt {
  position: relative;
  overflow: hidden;
}

.month_td.bad_debt::after {
  content: "";
  width: 160%;
  height: 2px;
  background-color: red;
  top: 50%;
  left: -30%;
  position: absolute;
  transform: rotate(-30deg);
}

.app_member_row .month_td:hover {
  opacity: 0.5;
}
.gym_workout_config {
  padding: 10px;
  overflow: auto;
  width: 1410px;
  height: 900px;
}

.gym_week_boxes {
  display: inline;
  white-space: nowrap;
}

.workout_item.in_progress::after,.workout_item.done::after {
  content: "IN PROGRESS";
  color: yellow;
  background-color: #68b1dd;
  padding: 2px 8px;
  font-size: 10px;
  font-weight: bold;
  position: absolute;
  bottom: -3px;
  right: -3px;
  border-radius: 11px;
  border: 1px solid #fff;
}

.workout_item.done::after {
  content: "DONE";
  color: #fff;
  background-color: #000;
}

.extraclass_slot.locked:before {
  content: "DISABLED";
  display: inline-block;
  text-align: center;
  width: 120%;
  background-color: rgba(255,0,0,0.75);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-19deg);
  font-size: 12px;
  font-weight: bold;
  padding: 10px 0;
}

#app_spinning_slot_info .user,
#app_extraclass_slot_info .user
{
  margin-bottom: 5px;
  border: 1px solid #ddd;
  box-shadow: rgba(0,0,0,0.3) 2px 2px 2px;
}

#app_spinning_slot_info .user .button,
#app_extraclass_slot_info .user .button
{
  margin: 4px 0;
}

#app_spinning_slot_info .user a,
#app_extraclass_slot_info .user a
{
  display: block;
  margin: 5px 0;
}

.spinning_timetable_table tbody td,
.extraclass_timetable_table tbody td
{
	padding: 1px;
  vertical-align: top;
}

.spinning_timetable_table tbody tr:nth-child(even),
.extraclass_timetable_table tbody tr:nth-child(even)
{
  background-color: #fff;
}

.spinning_timetable_table .timetable_date,
.extraclass_timetable_table .timetable_date
{
  font-size:8px;
  width:100%;
}

.spinning_timetable_table .spinning_slot,
.extraclass_timetable_table .extraclass_slot
{
  font-size: 14px;
  text-align: center;
  width: 100%;
  padding: 5px;
  background-color: #1695ce;
  border: 2px solid #fff;
  color: #fff;
  overflow: hidden;
  position: relative;
}

.spinning_timetable_table .spinning_time,
.extraclass_timetable_table .extraclass_time
{
  font-size: 12px;
  font-weight: bold;
}

.extraclass_timetable_table .extraclass_name
{
  font-size: 10px;
  font-weight: bold;
}

.spinning_timetable,
.extraclass_timetable
{
  background-color: #eee;
}

.spinning_slot.mid,
.extraclass_slot.mid
{
  background-color: #006c9c;
}

.spinning_slot.full,
.extraclass_slot.full
{
  background-color: #000;
}

.spinning_slot.expired,.spinning_slot.closed,
.extraclass_slot.expired
{
  background-color: #ccc;
}

.spinning_slot.booked,
.extraclass_slot.booked
{
  background-color: #38b138;
  padding: 14px 0;
}

.spinning_slot.open:hover,.spinning_slot_admin:hover,
.extraclass_slot.open:hover,.extraclassg_slot_admin:hover
{
  border-color: #0474a7;
  cursor: pointer;
}

.spinning_slot .spinning_count,
.extraclass_slot .extraclass_count
{
  font-size: 12px;
}

.spinning_slot.booked::after,
.extraclass_slot.booked::after
{
  content: "BOOKED";
  position: absolute;
  background-color: #82ff73;
  color: green;
  font-weight: bold;
  font-size: 0.5rem;
  padding: 0.05rem 1rem;
  line-height: 1rem;
  top: 0.3rem;
  right: -1.2rem;
  transform: rotate(45deg);
  opacity:0.5;
}

.alternate_exercise {
  font-size: 12px;
}

.alternate_exercise .or {
  color: #3095ce;
}

.alternate_exercise .member_workout_play {
  font-size: 18px;
}

.exercise_notes {
  font-size: small;
  border: 1px solid #ddd;
  padding: 3px 6px;
  margin: 5px 0;
}

.package_add_info {
  font-size: smaller;
  color: #1779ba;
  font-style: italic;
}

.id_link:hover, .corporate_link:hover {
  color: #1779ba;
  font-weight: bold;
}

#idcard_input {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding-top: 10px;
  margin-bottom: 10px;
}

#idcard_input .croppie-container .cr-boundary {
  margin:0;
  background-image: url("/img/id_placeholder.png");
}

#idcard_input .croppie-container .cr-slider-wrap {
  width: 600px;;
  margin: 0;
}

#idcard_input input[type=range] {
  -webkit-appearance: none;
  margin: 18px 0;
  width: 100%;
}
#idcard_input input[type=range]:focus {
  outline: none;
}
#idcard_input input[type=range]::-webkit-slider-runnable-track {
  width: 100%;
  height: 8.4px;
  cursor: pointer;
  box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
  background: #3071a9;
  border-radius: 1.3px;
  border: 0.2px solid #010101;
}
#idcard_input input[type=range]::-webkit-slider-thumb {
  box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
  border: 1px solid #000000;
  height: 36px;
  width: 16px;
  border-radius: 3px;
  background: #ffffff;
  cursor: pointer;
  -webkit-appearance: none;
  margin-top: -14px;
}
#idcard_input input[type=range]:focus::-webkit-slider-runnable-track {
  background: #367ebd;
}
#idcard_input input[type=range]::-moz-range-track {
  width: 100%;
  height: 8.4px;
  cursor: pointer;
  box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
  background: #3071a9;
  border-radius: 1.3px;
  border: 0.2px solid #010101;
}
#idcard_input input[type=range]::-moz-range-thumb {
  box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
  border: 1px solid #000000;
  height: 36px;
  width: 16px;
  border-radius: 3px;
  background: #ffffff;
  cursor: pointer;
}
#idcard_input input[type=range]::-ms-track {
  width: 100%;
  height: 8.4px;
  cursor: pointer;
  background: transparent;
  border-color: transparent;
  border-width: 16px 0;
  color: transparent;
}
#idcard_input input[type=range]::-ms-fill-lower {
  background: #2a6495;
  border: 0.2px solid #010101;
  border-radius: 2.6px;
  box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
}
#idcard_input input[type=range]::-ms-fill-upper {
  background: #3071a9;
  border: 0.2px solid #010101;
  border-radius: 2.6px;
  box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
}
#idcard_input input[type=range]::-ms-thumb {
  box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
  border: 1px solid #000000;
  height: 36px;
  width: 16px;
  border-radius: 3px;
  background: #ffffff;
  cursor: pointer;
}
#idcard_input input[type=range]:focus::-ms-fill-lower {
  background: #3071a9;
}
#idcard_input input[type=range]:focus::-ms-fill-upper {
  background: #367ebd;
}

.general_tcs_details,.challenge_tcs_details,.gym_tcs_details,.padeltennis_tcs_details,.tennis_tcs_details  {
  background-color: #eee;
  padding: 1em;
}

.past_booking-title {
  background-color: #0090cc;
  color: #fff;
  font-size: 0.9rem;
  font-weight: bold;
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  line-height: 1;
}

.past_booking-title span {
  display: block;
  font-weight: normal;
  font-size: 0.8em;
  margin-top: 0.3rem;
}

a, a:active, a:focus, button, button:active, button:focus{
  outline: none;
}

.no-js .top-bar {
  display: none;
}
.white {
	color: #fff;
}

[type='text'], [type='password'], [type='date'],
[type='datetime'], [type='datetime-local'], [type='month'],
[type='week'], [type='email'], [type='number'], [type='search'],
[type='tel'], [type='time'], [type='url'], [type='color'], textarea {

	border-radius: 0.3rem;
}

h1,h2,h3,h4,h5,p,span,a {
	text-rendering: optimizeLegibility;
}

p.note {
	font-size: 0.8rem;
	font-style: italic;
}

.grid-container {
	padding-right: 0;
	padding-left: 0;
	background-color: #000000;
}


.top_header{
	background-color: #000000;
	text-align:center;
	padding-bottom:0.3rem;
	position:relative;
}

.top_spacer {
	height: 85vw;
}

.white_logo {
  margin-top: 0.5rem;
  height: 2rem;
}

.white_logo img {
	max-height: 100%;
}

.top_header .page_title {
	font-weight: bold;
	font-size: 0.8rem;
	color: #fff;
}

.top_header .header_profile_pic {
    height: 40px;
    width: 40px;
    position: absolute;
    top: 12px;
    left: 12px;
    border: 1px solid #fff;
		cursor: pointer;
}

.top_header .member_logout {
    position: absolute;
    top: 5px;
    right: 5px;
    background-color: rgba(206,170,48,0.5);
}

a.header_button {
  display: block;
  position: absolute;
  width: 50px;
  height: 50px;
  top: 5px;
  left: 5px;
	cursor: pointer;
}

a.header_button:hover {
	opacity: 0.7;
}

.buttons_menu {
	margin: 0.4rem;
}

a.menu_button {
  display: block;
  margin: 0;
  padding: 0;
}

.buttons_menu .menu_button:hover{
	opacity: 0.7;
}

.content_title {
	width: 100%;
	overflow: hidden;
}

.content_title h1{
	text-transform: uppercase;
	font-size: 1rem;
	color: #999;
  line-height: 5px;
  text-align: center;
	margin: 0.5rem 0 1rem 0;
}

.offer_box {
    background: var(--main-color);
    background: linear-gradient(326deg, var(--main-color) 0%, rgb(255 255 255) 100%);
    text-align: center;
    position: relative;
    width: 100%;
    padding: 0.1rem 0;
    overflow: hidden;
    color: #000;
    border-top: 2px solid var(--sub-color);
    border-bottom: 2px solid var(--sub-color);
}

.offer_box.self_assessment_box {
  background: #fff;
  background: linear-gradient(326deg, hsl(0, 0%, 66%) 0%, rgb(202, 202, 202) 50%, rgb(255, 255, 255) 100%);
  text-align: center;
  border-top: 2px solid #ffffff;
  border-bottom: 2px solid #ffffff;
  margin-bottom: 1.5rem;
}

.offer_box h1 {
	font-size: 1rem;
  font-weight: bold;
  font-family: 'Roboto', sans-serif;
  margin-bottom: 0;
}

.offer_box h2 {
	font-weight: normal;
	font-size: 1rem;
	margin-bottom: 0;
}

.offer_box.self_assessment_box h1,.offer_box.self_assessment_box h2 {
  color: #0b59b9;
}

.offer_box a.more_info {
	background-color: rgba(255,255,255,0.35);
	display: block;
	font-size: 0.7rem;
	width: fit-content;
	color: #000 !important;
	padding: 0.2rem 0.3rem;
	border-radius: 0.5rem;
	margin: 0.2rem auto;
	position: absolute;
	bottom: 0;
	right: 2px;
}

.offer_box a.more_info.hidden {
	display: none;
}

.offer_box p {
  line-height: 1rem;
  font-size: 0.8rem;
	margin-bottom: 0;
	font-style: italic;
}

 p.warning, legend span.warning {
  font-size: 0.6rem;
	color: #990c0c;
	margin-bottom: 0;
}

p.warning2 {
  color: #fff;
  background-color: #990c0c;
  font-size: 0.65rem;
  text-align: center;
  line-height: 1.4rem;
  margin-bottom: 0.5rem;
}

.offer_box h4 {
  font-size: 0.8rem;
  font-style: italic;
}

.offer_box .button {
	font-weight: bold;
	min-width: 50%;
  margin: 0.5rem 0;
	padding: 0.5rem 1rem;
	line-height: 1.2rem;
	background-color: #fff;
      color: #ff9b00 !important;
}

.offer_box .button.warning {
  background-color: #ffae00;
  color: #0a0a0a;
}

.booking_referral_view,.booking_peer_referral_view {
  background-color:#fefefe;
  padding: 1rem 0;
}

.offer_box .button-group {
	margin-top:0.25rem;
	margin-bottom: 0.3rem;
}

.offer_box .button-group .button {
  font-weight: bold;
  min-width: unset;
  margin: 0.5rem 0;
  padding: 0.5rem 1rem;
  line-height: 1.2rem;
  margin: 0 0.2rem;
  font-size: 0.7rem;
}

.offer_box .button-group .button.warning {
  background-color: #ffae00;
  color: #0a0a0a;
}

.offer_box .button.green {
	background-color:#092;
	color: #fff !important;
	font-weight: bold;
}

.offer_box .button.highlight {
	background-color:#ffae00;
	color: #000;
	font-weight: bold;
}

.offer_box.event_box {
  padding: 0;
  margin-bottom: 2rem;
}

.offer_box.challenge_box {
	margin-bottom: 2rem;
}

.tag_container {
	position: relative;
	overflow: hidden;
}

.offer_box .free_tag {
  position: absolute;
  background-color: red;
  color: white;
  font-weight: bold;
  font-size: 0.8rem;
  padding: 0.1rem 1.5rem;
  line-height: 1.2rem;
  top: 0.5rem;
  right: -1.4rem;
  transform: rotate(45deg);
}

.lifestyle_tag {
  position: absolute;
  background-color: #75b8df;
  color: white;
  font-weight: bold;
  font-size: 0.55rem;
  padding: 0.1rem 1.5rem;
  line-height: 1.2rem;
  top: 0.9rem;
  right: -1.6rem;
  transform: rotate(45deg);
}

.onhold_tag {
	position: absolute;
  background-color: #ff8800;
  color: white;
  font-weight: bold;
  font-size: 0.65rem;
  padding: 0.2rem 1.5rem;
  line-height: 1.2rem;
  top: 0.6rem;
  right: -1.6rem;
  transform: rotate(45deg);
}

.homepage_or {
  width: 100%;
  text-align: center;
  font-size: 1.1rem;
  font-weight: bold;
	color: #999;
  margin: 0.4rem 0;
}

.profile_pic {
	position: relative;
  margin: 1rem;
  border: 1px solid #fff;
}

.profile_pic a {
  position: absolute;
  bottom: 0.05rem;
  right: 0;
  font-size: 0.7rem;
  background-color: rgba(0,0,0,0.7);
  padding: 0.2rem 0.5rem;
}

.vip_membership h3,.gym_membership h3,.padeltennis_membership h3,.tennis_membership h3  {
  font-size: 0.8rem;
  margin-top: 0.8rem;
  text-align: center;
  color: #ffdd00;
	margin-bottom: 0.5rem;
}

.vip_membership img{
  width: 50%;
  display: block;
  margin: 0 auto;
}

.vip_membership h4,.gym_membership h4,.padeltennis_membership h4,.tennis_membership h4 {
  text-align: center;
  font-size: 1rem;
  margin-top: 0.2rem;
  color: #999;
	margin-bottom:0;
}

.vip_membership a.info,.gym_membership a.info,.padeltennis_membership a.info,.tennis_membership a.info {
  text-align: center;
  width: 100%;
  display: inline-block;
  font-size: 0.8rem;
}

.gym_membership_image_holder,.padeltennis_membership_image_holder,.tennis_membership_image_holder {
  position: relative;
  border-radius: 50%;
  overflow: hidden;
  width: 50%;
  margin: 0 auto;
}

.gym_membership img,.padeltennis_membership img,.tennis_membership img {
  display: block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

.gym_discount_tag,.padeltennis_discount_tag,.tennis_discount_tag {
  position: absolute;
  background-color: #ffdd00;
  color: #000;
  top: 25%;
  left: -15%;
  font-size: 12px;
  line-height: 1em;
  padding: 2px;
  width: 100%;
  text-align: center;
  transform-origin: center;
  transform: rotate(-45deg);
  box-shadow: #000 0 2px 7px;
}

a.profile_edit {
  background-color: var(--main-color);
  color: #000 !important;
  font-size: 0.8rem;
  font-weight: normal;
  padding: 0.1rem 0.2rem;
}

.add_member_monthly_due,.add_member_yearly_due,.add_gym_monthly_due,.add_gym_yearly_due {
  color: #fff;
  background-color: #000;
  padding: 2px 4px;
  cursor: pointer;
  border: 1px solid #fff;
}

.add_monthly_due:hover,.add_gym_monthly_due:hover,.add_gym_yearly_due:hover {
  color: #000;
  background-color: #fff;
  border: 1px solid #000;
}

.profile_details p {
  font-weight: bold;
  margin-bottom: 0;
  margin-top: 0.75rem;
  color: #767676;
}

.profile_details p.info {
	color: #ccc;
	font-size: 0.9rem;
	margin: 0;
	margin-left: 1rem;
	font-weight: normal;
}

.profile_details p.info span {
	color: #767676;
	font-weight: bold;
}

.profile_details hr {
	margin:0 auto 0.5rem;
}

.profile_details .setting {
  background-color: #0f0f0f;
  padding: 0.5rem 0;
  margin-bottom: 0.5rem;
}

.profile_details .setting p {
  margin: 0;
  line-height: 1rem;
  color: #ccc;
}

.profile_details .setting .switch {
  margin: 0;
}

.challenge_details,.workout_view,.mealplan_view,.vip_registration,.booking_registration,.gym_registration,.padeltennis_registration,.tennis_registration {
  background-color: #fefefe;
}

.assessments_view,.workouts_view,.challenge_details_content,.timetable_view,.workout_details,.mealplan_view,.discounts_view,.videos_view,.streamings_list{
  margin-top: 0.5rem;
}

.mealplan_view {
padding-top:1rem;
}

.div_booking a.accordion-title {
  font-size: 0.9rem;
  font-weight: bold;
}

.div_booking a.accordion-title::before {
	right: 1.8rem;
}

.div_booking .accordion-content {
	padding:0.5rem 0 1.5rem 0;
}

.div_booking a.accordion-title span {
  display: block;
  font-weight: normal;
  font-size: 0.8em;
  margin-top: 0.3rem;
}

.div_booking .is-active a.accordion-title {
	background-color: #0090cc;
	color: #fff;
}

.bookings_list {
	margin-top:0.5rem;
}

.member_header {
	background-color: #eee;
	padding:0.6rem 0.7rem;
	font-weight: bold;
	text-transform: uppercase;
	margin-bottom: 0;
}

.challenge_details_content, .mealplan_details {
	zoom: 80%;
}

.class_countdown {
    text-align: center;
    font-weight: bold;
    font-size: 1.2rem;
}

.live_countdown {
    font-size: 1.5em;
    background-color: #1779ba;
    display: inline;
    padding: 0.5rem 1rem;
    color: #fff;
}

.discount_holder {
  border: 1px solid #999;
  padding: 1rem;
  text-align: center;
	margin-bottom: 0.8rem;
	background-color: #fff;
}

.discount_holder h5.discount_title {
  font-size: 1.2rem;
}

.discount_holder p.validity {
  font-size: 0.8rem;
  font-style: italic;
}

h5.video_title {
  background-color: #3095ce;
  margin: 0;
  padding: 0.2rem 0.5rem;
  color: #fff;
}

.video_holder {
  margin-bottom: 1rem;
	border: 1px solid #3095ce;
}

.video_border {
	border: 1px solid #3095ce;
}

p.admin_info {
	color: #ddd;
	margin-bottom: 0;
	padding: 0 0.5rem 0 0;
}

.button.black {
	background-color: #0a0a0a;
	color: var(--main-color);
	border: 1px solid var(--main-color);
}

.button.black:hover {
	background-color: #111;
	color: #fff;
}

.accordion-title:not(.unstyled) {
  color: #3095ce;
	background-color: #0a0a0a
}

.extraclass_timetables .accordion-title {
  font-size: 1.1rem;
  font-weight: bold;
}

.challenge_workout_item {
  border: 5px solid #1695ce;
  padding: 0;
  border-radius: 15px;
  color: #1695ce;
  background-color: #fff;
  overflow: hidden;
  cursor: pointer;
}

.challenge_workout_item h5.workout_title {
  line-height: 2em;
  overflow: hidden;
  margin: 0;
  padding: 0 0.5em;
}

.challenge_workout_item a {
  font-size: 0.8rem;
  display: block;
  text-align: right;
}

.challenge_workout_item .workout_image {
  aspect-ratio: 16/9;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  min-height: 100px;
  transition: opacity 0.5s;
}

.challenge_workout_item:hover .workout_image {
  opacity: 0.5;
}

.workout_item {
  color: #fff;
  position: relative;
  cursor: pointer;
  margin-bottom: 1.25rem;
}

.workout_item:hover img {
  opacity:0.7;
}

.workout_item .workout_details {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  padding: 10px;
  margin: 0;
  width: 95%;
}

.workout_item img {
  display: block;
}

.workout_item h5.workout_title {
  font-size: 0.9rem;
  margin: 0;
  line-height: 1.2em;
  margin-bottom: 0.3em;
}

.workout_item h6 {
  font-weight: normal;
  font-size: 0.7rem;
  margin: 0;
  line-height: 0.8rem;
}

span.sup {
  top: -0.3rem;
  font-weight: bold;
  color: red;
}

p.supdetails {
  font-size: 0.8rem;
  color: #444444;
}

span.supdetails {
  color: red;
  font-size: 1rem;
  margin-right: 0.3rem;
  font-weight: bold;
}

a.member_admin {
  font-size: 0.7rem;
  display: inline-block;
  width: fit-content;
  margin: 0 auto;
  background-color: #005dff;
  color: #000;
  font-weight: bold;
  padding: 0.1rem 0.3rem;
  border-radius: 0.4rem;
}

.app_booking_row i.corp_name {
	font-size: 0.7rem;
}

.admin_content {
	margin-top: 2rem;
}

.dashboard-table td {
  border-bottom: 1px dashed #DDD;
	line-height: 1.1rem;
}

.info.has-tip {
  color: #fff;
  background-color: #2378ba;
  padding: 0.1rem 0.4rem;
  line-height: 0.8rem;
  font-size: 0.7rem;
  border-radius: 0.5rem;
}

.app_booking_row {
	background-image: linear-gradient(to bottom right, rgba(200,50,50,0.3), rgba(200,50,50,0), rgba(200,50,50,0));
}

.app_booking_row.confirmed {
    background-image: linear-gradient(to bottom right, rgba(0,128,0,0.3), rgba(0,128,0,0), rgba(0,128,0,0));
}

.app_booking_row.onhold {
  background-image: linear-gradient(to bottom right, rgba(255, 207, 0, 0.47), rgba(0,128,0,0), rgba(186, 151, 0, 0));
}
.app_booking_row.confirmed.onhold {
  background-image: linear-gradient(to bottom right, rgba(0, 189, 255, 0.3), rgba(0,128,0,0), rgba(186, 151, 0, 0));
}

.app_booking_row.staying {
  border: 2px solid #ffb000;
}

.app_booking_row.confirmed.onhold td.name a {
	text-decoration: line-through;
}

.app_booking_row.unconfirmed td.name a {
	text-decoration: line-through;
	font-style: italic;
	color: #d00;
}

.app_booking_row.unconfirmed.onhold td.name a {
	text-decoration: line-through;
	font-style: italic;
	color: #f90;
}

.self_assessment_view {
	padding: 0.5rem 1rem;
}

.self_assessment_upload {
	position: relative;
}

.self_assessment_upload input[type="file"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}

.cr-slider::-webkit-slider-runnable-track {
  background: rgba(255, 255, 255, 0.5);
}

.croppie-container {
  height: fit-content;
}

.no_break {
	white-space: nowrap;
}

#timer_workout_grid_preview {
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
  border: 7px solid #fff;
}

#timer_workout_grid_preview tbody, #timer_workout_grid_preview tbody tr {
  background-color: #000;
}

#timer_workout_grid_preview td {
  padding: 0;
  border: none;
  position: relative;
}

#timer_workout_grid_preview .exercise_cell {
  height: 200px;
  position: relative;
  overflow-x: visible;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}

#timer_workout_grid_preview td .header {
  position: absolute;
  z-index: 2;
  width: 100%;
  top: 0;
  left: 0;
  cursor: pointer;
}

#timer_workout_grid_preview td .header.filled {
  position: absolute;
  z-index: 2;
  width: 100%;
  top: -5px;
  left: -5px;
  cursor: pointer;
}

#timer_workout_grid_preview td .header_gap,#timer_workout_grid_preview td .title,#timer_workout_grid_preview td .header {
  height: 12%;
  padding: 2px 6px;
  line-height: 20px;
  font-size: 16px;
  font-weight: bold;
}

#timer_workout_grid_preview td .header.filled {
  height: 16%;
}

#timer_workout_grid_preview td .title {
  cursor: pointer;
  color: #fff;
  text-align: center;
  font-size:14px;
}

#timer_workout_grid_preview td .title:hover {
  background-color: rgba(255,255,0,0.3);
}

#timer_workout_grid_preview td .video {
  height: 76%;
  cursor:pointer;
  position:relative;
  border-top: 1px solid #111;
  border-bottom: 1px solid #111;
}

#timer_workout_grid_preview td .video:hover {
  background-color: rgba(255,255,100,0.3);
}

#timer_workout_grid_preview td .header.filled {
  background-color: #000;
  color: #fff;
  width: max-content;
  border: 5px solid #fff;
}

#timer_workout_grid_preview td .header:hover {
  background-color: rgba(255,255,0,0.3) !important;
  width: 100%;
  overflow: hidden;
}

#timer_workout_grid_preview  .border_click {
  background-color: transparent;
  cursor: pointer;
}

#timer_workout_grid_preview  .border_click:hover {
  background-color: rgba(100,100,255,0.7);
}

#timer_workout_grid_preview .border_click.horizontal {
  width: 100%;
  height: 15px;
  position: absolute;
  z-index: 10;
  left: 0;
}

#timer_workout_grid_preview .border_click.top {
  top: -8px;
}

#timer_workout_grid_preview .border_click.bottom {
  bottom: -8px;
}

#timer_workout_grid_preview .border_click.vertical {
  height: 100%;
  width: 15px;
  position: absolute;
  z-index: 10;
  top: 0;
}

#timer_workout_grid_preview .border_click.left {
  left: -8px;
}

#timer_workout_grid_preview .border_click.right {
  right: -8px;
}

#timer_workout_grid_preview .has_video .video:after {
  content: "\f16a";
  font-family: "fontello";
  font-size: 7em;
  height: 1em;
  line-height: 1em;
  padding: 0;
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: cadetblue;
  opacity: 0.5;
}

.app_workout_grid_row,.app_gym_workout_row{
    cursor: pointer;
}

.tabata_header {
  height: 15vh;
}

.tabata_header img {
  max-height: 15vh;
}

.counter_holder {
    min-height: 15vh;
    overflow: hidden;
    padding: 5px;
}

.tabata_setting {
    min-height: 7.5vh;
    overflow: hidden;
    padding: 5px;
}

.tabata_setting2 {
    min-height: 5vh;
    padding: 0.5vh;
}

.tabata_setting2 .button-group {
  margin-bottom: 0;
  height: 4vh;
}

.tabata_setting2 .button {
  height: 100%;
}

.tabata_setting .button-group {
  margin-bottom: 0;
}

.counter_holder .counter_box {
    background-color: #ccc;
    border-radius: 2vmin;
    min-height: 100%;
    max-height: 100%;
    height: 100%;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.counter_holder .counter_box:after {
  content: "";
  width:100%;
  height:50%;
  position: absolute;
  top:0;
  left:0;
  background-color: rgba(255,255,255,0.25);
}

.tabata_countdown_total .total_title {
  height: 3vh;
  width: 100%;
  text-align: center;
  font-size: 2.4vmin;
  font-weight: bold;
  z-index: 2;
  position: relative;
}

.tabata_countdown_cycles,.tabata_countdown_tabatas {
  height: 100%;
}

.tabata_countdown_total .tabata_counter,.tabata_countdown_cycles .tabata_cycles_count,.tabata_countdown_tabatas .tabata_tabatas_count {
  min-height: calc(12vh - 10px);
  width: 100%;
  text-align: center;
  font-size: 5.2vw;
  line-height: calc(12vh - 10px);
  font-weight: bold;
  font-family: monospace;
  margin-top: -1vh;
}

.tabata_countdown_cycles .tabata_cycles_title,.tabata_countdown_tabatas .tabata_tabatas_title {
  height: 3vh;
  width: 100%;
  text-align: center;
  font-size: 1.8vmin;
  font-weight: bold;
  z-index: 2;
  position: relative;
}

.tabata_countdown_tabatas .counter_box {
  background-color: #81d4ff;
}

.tabata_settings .setting_box {
  background-color: #ccc;
  border-radius: 0.8vmin;
  height: calc(7.5vh - 10px);
  width: 100%;
  position: relative;
  overflow: hidden;
  font-weight: bold;
  font-size: 1.5vw;
  line-height: 6.7vh;
  padding: 0 0.75vw;
  display: flex;
  flex-flow: row;
}

.tabata_settings .setting_box span {
  opacity: 0.8;
  width:50%;
  display: block;
}

.tabata_settings .setting_box span.setting_count {
  text-align: right;
}

.tabata_settings .setting_box:after {
  content: "";
  width:100%;
  height:50%;
  position: absolute;
  bottom:0;
  left:0;
  background-color: rgba(0,0,0,0.1);
}

.tabata_prepare .setting_box,.tabata_countdown_total.counter_box.prepare {
  background-color: #ffe000;
}

.tabata_work .setting_box,.tabata_countdown_total.counter_box.work {
  background-color: #53ba0f;
}

.tabata_rest .setting_box,.tabata_countdown_total.counter_box.rest {
  background-color: #af0000;
  color: #fff;
}

.tabata_recover.inactive {
  opacity: 0.1;
}

.tabata_recover .setting_box,.tabata_countdown .counter_box.recover {
  background-color: #505050;
  color: #fff;
}

.tabata_setting2.controls .button{
  background-color: #181818;
  color: #777;
  margin-bottom: 0;
  font-size: 14px;
  padding: 6px;
}

#tabata_volume_button {
  position: relative;
}

#tabata_volume_button .music_volume{
  position: absolute;
  width: 200%;
  display:none;
  right: 0;
  bottom: -3vh;
  padding: 1vh 0;
}

#tabata_volume_button:hover .music_volume {
  display:block;
}

#tabata_volume_button span {
  margin-top: 0.5vh;
  display: inline-block;
}

.tabata_setting.controls .button-group {
  margin:0;
}

.tabata_setting.controls .button:hover {
  background-color: #333;
  color: #ccc;
}

.tabata_setting.tabata_start {
  height: calc(7.5vh - 10px);
}

.tabata_setting.tabata_start .button{
  height: calc(7.5vh - 10px);
  margin-bottom: 0;
}

input#tabata_prepare {
  background-color: #ffff70;
}
input#tabata_work {
  background-color: #90ff90;
}
input#tabata_rest {
  background-color: #ff9090;
}
input#tabata_recover {
  background-color: #ccc;
}

.blink {
  animation: blinker 1s linear infinite;
}

@keyframes blinker {
  50% {
    opacity: 0;
  }
}

.tabata_workout {
    height: 85vh;
    width: 100%;
    padding: 10px;
}

table#tabata_workout_grid {
    height: 100%;
    width: 100%;
    border: 5px solid #fff;
    margin: 0;
    table-layout: fixed;
}

table#tabata_workout_grid tbody, table#tabata_workout_grid tbody tr {
  background-color: #000;
}

table#tabata_workout_grid tbody td {
  border:none;
  padding: 0;
}

table#tabata_workout_grid tbody td.topborder {
  border-top:5px solid #fff;
}

table#tabata_workout_grid tbody td.bottomborder {
  border-bottom:5px solid #fff;
}

table#tabata_workout_grid tbody td.leftborder {
  border-left:5px solid #fff;
}

table#tabata_workout_grid tbody td.rightborder {
  border-right:5px solid #fff;
}

table#tabata_workout_grid .exercise_cell {
  width: 100%;
  position:relative;
}

table#tabata_workout_grid .exercise_cell .header_gap {
  height: 4vh;
}

table#tabata_workout_grid .exercise_cell .header{
  width: max-content;
  height: 5vh;
  font-size: 3vh;
  line-height: 4vh;
  font-weight: bold;
  position: absolute;
  padding: 0 10px 0 5px;
  text-align: left;
  top:-5px;
  left: -5px;
  z-index: 2;
  color: #fff;
  background-color: #000;
  border: 5px solid #fff;
}

table#tabata_workout_grid .exercise_cell .video {
  display: flex;
  height: calc(100% - 10vh);
  padding: 0 5px;
}

table#tabata_workout_grid .exercise_cell .video video {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: 0;
  padding: 0;
  display: inline-block;
  align-self: flex-end;
  margin: 0 auto;
}

table#tabata_workout_grid .exercise_cell .title_container{
  height: 6vh;
  position: relative;
}

table#tabata_workout_grid .exercise_cell .title {
  color: #fff;
  font-size: 2.7vh;
  font-weight: bold;
  line-height: 3vh;
  vertical-align: top;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 100%;
}

.colorpicker {
  margin-bottom: 10px;
}

.colorpicker .colorbox {
  width: 100%;
  height: 35px;
  cursor: pointer;
}

.colorpicker .colorbox1, .exercise_cell.color1,#tabata_workout_grid td.color1,table#tabata_workout_grid td.color1 .exercise_cell .header,#timer_workout_grid_preview td .color1 .header.filled {
  background-color: #000;
}

.colorpicker .colorbox2, .exercise_cell.color2,#tabata_workout_grid td.color2,table#tabata_workout_grid td.color2 .exercise_cell .header,#timer_workout_grid_preview td .color2 .header.filled  {
  background-color: #222;
}

.colorpicker .colorbox3, .exercise_cell.color3,#tabata_workout_grid td.color3,table#tabata_workout_grid td.color3 .exercise_cell .header,#timer_workout_grid_preview td .color3 .header.filled  {
  background-color: #444;
}

.colorpicker .colorbox4, .exercise_cell.color4,#tabata_workout_grid td.color4,table#tabata_workout_grid td.color4 .exercise_cell .header,#timer_workout_grid_preview td .color4 .header.filled  {
  background-color: #00181d;
}

.colorpicker .colorbox5, .exercise_cell.color5,#tabata_workout_grid td.color5,table#tabata_workout_grid td.color5 .exercise_cell .header,#timer_workout_grid_preview td .color5 .header.filled  {
  background-color: #00303a;
}

.colorpicker .colorbox6, .exercise_cell.color6,#tabata_workout_grid td.color6,table#tabata_workout_grid td.color6 .exercise_cell .header,#timer_workout_grid_preview td .color6 .header.filled  {
  background-color: #004959;
}

.colorpicker .colorbox7, .exercise_cell.color7,#tabata_workout_grid td.color7,table#tabata_workout_grid td.color7 .exercise_cell .header,#timer_workout_grid_preview td .color7 .header.filled  {
  background-color: #000c1b;
}

.colorpicker .colorbox8, .exercise_cell.color8,#tabata_workout_grid td.color8,table#tabata_workout_grid td.color8 .exercise_cell .header,#timer_workout_grid_preview td .color8 .header.filled  {
  background-color: #001a3a;
}

.colorpicker .colorbox9, .exercise_cell.color9,#tabata_workout_grid td.color9,table#tabata_workout_grid td.color9 .exercise_cell .header,#timer_workout_grid_preview td .color9 .header.filled  {
  background-color: #002759;
}

.colorpicker .colorbox:hover,.colorpicker .colorbox.selected {
  border: 1px solid #FF0;
}

#assignments_holder table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #000;
}

#assignments_holder table tbody, #assignments_holder table tbody tr {
  background-color: #fff;
}

#assignments_holder table td,#assignments_holder table th {
  padding: 5px;
  border: 1px solid #000;
  position: relative;
}

#assignments_holder div.tabata_slot {
  text-align: center;
  margin:2px;
  border: 2px solid #eee;
  position: relative;
  cursor: pointer;
}

#assignments_holder div.tabata_slot:hover {
  border: 2px solid #000;
}

#assignments_holder div.tabata_slot span{
  position: absolute;
  top:0;
  left:0;
  display:none;
  background-color: #777;
  color: #fff;
  min-width: 100%;
}

#assignments_holder div.tabata_slot.marked {
  background-color: #777;
  color: #fff;
  font-weight: bold;
}

#assignments_holder div.tabata_slot.marked:hover span {
  display: block;
}

#assignments_holder div.tabata_slot.selected {
  background-color: #3095ce;
  color: #fff;
  font-weight: bold;
}

#app_gym_assessment_input h6,#app_group_assessment_input h6 {
  background-color: #3095ce;
  color: #fff;
  padding: 2px 6px;
}

.gym_assessment_input_form canvas.canvas_preview,.group_assessment_input_form canvas.canvas_preview {
  width: 100%;
  background-color: #3095ce;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-bottom: 10px;
  cursor: pointer;
}

.gym_assessment_input_form small.total,.group_assessment_input_form small.total {
  color: #000;
  margin-left: 7px;
}

#gym_graph_holder .position-bottom,#group_graph_holder .position-bottom {
  transform: none;
  -webkit-transform: none;
  height : auto;
  width: auto;
}

#app_gym_fullimage .image_holder img,#app_gym_fullimage .image_holder canvas,#app_group_fullimage .image_holder img,#app_group_fullimage .image_holder canvas {
    display: block;
    margin: 0 auto;
    cursor: pointer;
}

h6.white.assessment_view_title {
    text-align: center;
    margin-bottom: 1rem;
}

h6.white.assessment_view_title a.button.tiny.prev_link {
  margin-bottom: 0;
  margin-right: 0.5rem;
}

h6.white.assessment_view_title a.button.tiny.next_link {
  margin-bottom: 0;
  margin-left: 0.5rem;
}

.assessment_data_box_border {
  border: 1px solid #fff;
  padding: 0.5rem;
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}

.assessment_data_box h6 {
  background-color: #3095ce;
  color: #fff;
  padding: 3px 7px;
}

.assessment_data_box h6 small {
  font-size: 100%;
  color: #000;
}

.assessment_data_box .value {
  color: #fff;
  font-size: 0.9rem;
}

.assessment_data_box .value small {
  font-size: 120%;
  font-weight: bold;
}

p.discount_info {
    font-size: smaller;
    font-style: italic;
    margin: 0;
    text-align: right;
}

/*

#tabata_timer {
  width: 33.33vw;
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  color: #000;
  padding: 1vmin;
}

.tabata_countdown {
  width:60%;
  height: 100%;
}

.tabata_countdown_top {
  height:55%;
  width: 100%;
  padding:1vmin;
}








.tabata_countdown_bottom {
  height:45%;
  width: 100%;
  display: flex;
  flex-flow: row;
}

.tabata_countdown_cycles,.tabata_countdown_tabatas {
  height:100%;
  width: 50%;
  padding:1vmin;
}





.tabata_settings {
  width:40%;
  height: 100%;
  padding: 1vmin 0;
}

.tabata_setting {
  width: 100%;
  height: 16.66%;
  box-sizing: border-box;
  padding: 0.5vmin;
}










*/

@media only screen and (max-width: 640px) {
  #idcard_input .crop_zone {
    zoom:50%;
  }

  #idcard_input input[type=range]::-webkit-slider-thumb {
    height: 72px;
    width: 32px;
    margin-top: -28px;
  }

  #idcard_input input[type=range]::-moz-range-thumb {
    height: 72px;
    width: 32px;
    margin-top: -28px;
  }

  #idcard_input input[type=range]::-ms-thumb {
    height: 72px;
    width: 32px;
    margin-top: -28px;
  }

  #idcard_input .crop_zone {
    margin-bottom: 10px;
  }
}

@media only screen and (min-width: 40.063em) {
	.white_logo {
    height: 4rem;
	}

	.top_header .header_profile_pic {
    height: 60px;
    width: 60px;
	}

	a.header_button {
		height: 75px;
    width: 75px;
	}

	.profile_details .setting {
    margin: 0;
    margin-bottom: 0.5rem;
	}

	.challenge_details_content, .mealplan_details {
    zoom: unset;
	}
}

@media only screen and (min-width: 64em) {
	.admin_content {
		margin-top: 0;
	}
}

/* REACHED HERE: Eveything after that should be reviewed */


.percentage_bar {
  background-color: #1779ba;
  color: white;
  padding: 2px 5px;
  width: 0;
  font-weight: bold;
}

.percentage_bar span {
    text-shadow: black 1px 1px 3px;
}

.challenge_setup_form .button.app_delete {
	float: left;
}

.challenge_setup_form .button.app_alert {
	float: left;
	margin-left: 10px;
}

.contract ol {
  list-style-type: none;
  counter-reset: item;
  margin: 0;
  padding: 0;
}

.contract ol > li {
  display: table;
  counter-increment: item;
  margin-bottom: 0.6em;
}

.contract ol > li:before {
  content: counters(item, ".") ". ";
  display: table-cell;
  padding-right: 0.6em;
}

.contract li ol > li {
  margin: 0;
	counter-increment: item;
}

.contract li ol > li:before {
  content: counters(item, ".") " ";
}

.contract li ol li ol li:before {
	content: "(" counter(item, lower-alpha) ") ";
}


.iframe-container{
	position: relative;
	width: 100%;
	padding-bottom: 56.25%;
	height: 0;
}

.iframe-container2{
	position: relative;
	width: 100%;
	padding-bottom: 66.66%;
	height: 0;
}

.iframe-container iframe,.iframe-container2 iframe{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
}

.inline-block {
    margin-bottom: 0;
    margin-top: 0.5rem;
}

select.inline-block {
	 margin-top: 0;
}

.hidden,.hidden2 {
	display: none !important;
}



.sticky-top-bar {
    width: 100%;
    background-color: #fefefe;
    margin-top: 0;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 50;
    -webkit-transition: -webkit-transform 0.4s;
    transition: -webkit-transform 0.4s;
    transition: transform 0.4s;
    transition: transform 0.4s, -webkit-transform 0.4s;
}

.week_tr {
	background-color: #333;
	color: #fff;
	text-align: center;
	font-size:0.9rem;
	font-weight: bold;
	padding:0.21rem 0;
}



p.selected_week_date {
    background: #555;
    padding: 0.1rem 0.3rem;
    color: #fff;
    font-size: 0.85rem;
    font-weight: bold;
    text-align: center;
	margin-bottom: 0;
}

.payments_tooltip {
	max-width: 300px;
}

.accordion-menu a.is-active {
    font-weight: bold;
	font-style: italic;
	background-color: var(--main-color);
	border-bottom: 1px solid #000;
	color: #000;
}

.menu .is-active > a {
    background: #000;
    color: var(--main-color);
}

.form_box {
	max-width: 490px;
}

.button
 {
    border-radius: 0.3rem;
}

.badge {
    font-size: 0.8rem;
}



.button.logout {
	margin-top: 2rem;
}

.app_logo {
	text-align: center;
}

.app_title {
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 1rem;
}

.app_forgot_password p {
	text-align: center;
	margin-bottom: 0;
}

.app_reset_message p {
	text-align: center;
}

.admin_menu {
	background-color: #656565;
}

.admin_menu a{
	font-size: 0.9rem;
	color: var(--main-color);
}

.admin_content {
	background-color: #f4f4f4;
}

.dashboard-table {
  border-collapse: collapse;
  margin-bottom: 0;
}



.dashboard-table  a {
	color: #333;
}

.dashboard-table .bold {
	color: #000;
	font-weight: 600;
}

.dashboard-table thead {
    background: none;
    border: 0;
    border-bottom: 1px solid #CCC;
    color: #555;
    font-size: 0.8rem;
}

.dashboard-table thead a {
    color: #555;
}

.dashboard-table tbody {
    border: 1px solid #BBB;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.15);
}

.dashboard-table tbody tr:nth-child(even) {
	background-color: transparent;
}

.dashboard-table tbody tr {
	transition: all 0.5s ease;
}

.assessment_management thead th {
    background-color: #000;
    color: #fff;
    padding: 0.25rem 0.625rem;
}

.assessment_management .dashboard-table {
    margin-bottom: 1rem;
}

tr.app_assessment_calc_row,.dashboard-table tbody tr:nth-child(even).app_assessment_calc_row {
    background-color: #def;
}

.dashboard-table tbody tr.active {
	background-image: linear-gradient(to bottom right, rgba(0,128,0,0.3), rgba(0,128,0,0), rgba(0,128,0,0));
}

.dashboard-table tbody tr.off {
	background-image: linear-gradient(to bottom right, rgba(200,50,50,0.3), rgba(200,50,50,0), rgba(200,50,50,0));
}

.dashboard-table tbody tr.done {
	background-image: linear-gradient(to bottom right, rgba(30,110,238,0.3), rgba(30,110,238,0), rgba(30,110,238,0));
}

.dashboard-table tbody tr.coming {
	background-image: linear-gradient(to bottom right, rgba(255,220,0,0.3), rgba(255,220,0,0), rgba(255,220,0,0));
}

.dashboard-table tbody tr:hover {
	background-color: #fcf7da;
	transition: all 0.5s ease;
}

.dashboard-table tbody tr.active.signed {
    background-color: rgba(127,255,0,0.4);
}

.dashboard-table tbody > tr:last-child > td {
	border-bottom: 0;
}

.dashboard-table img.thumb {
    min-width: 30px;
    display: inline-block;
}

.dashboard-table tr.app_challenge_row, .dashboard-table tr.app_timetable_row, .dashboard-table tr.app_member_row, .dashboard-table tr.app_event_row,.dashboard-table tr.app_extraclass_row {
	cursor: pointer;
}

table.timetable_preview ,.timetable_preview th,.timetable_preview td,
table.app_timetable ,.app_timetable th,.app_timetable td,
table.assesment_table ,.assesment_table th,.assesment_table td,
table.challenge_timetable ,.challenge_timetable th,.challenge_timetable td,
table.booking_timetable ,.booking_timetable th,.booking_timetable td,
table.challenge_timetable2 ,.challenge_timetable2 th,.challenge_timetable2 td,
table.replacement_slots ,.replacement_slots th,.replacement_slots td,
table.video_timetable ,.video_timetable th,.video_timetable td
{
  border: 1px solid #ccc;
}

table.replacement_slots th span {
	display:block;
	font-size: 0.8rem;
	font-weight: normal;
}

.replacement_slots tbody td div.replace_day{
    padding: 0.3rem;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	cursor: pointer;
	text-align: center;
	margin-bottom: -1px;
}

.replacement_slots tbody td div.replace_day.full{
    cursor: not-allowed;
	background-color: #eee;
	color: #ccc;
}

.replacement_slots tbody td div.replace_day.expired{
    cursor: not-allowed;
	background-color: #eee;
	color: #faa;
}

.replacement_slots tbody td div.replace_day.locked{
    cursor: not-allowed;
	background-color: #ddd;
	color: #bbb;
}

.replacement_slots tbody td div.replace_day.original{
  cursor: not-allowed;
	background-color: #ffa;
	color: #cc7;
}

.replacement_slots tbody td div.replace_day.no_class{
  cursor: not-allowed;
  position:relative;
}

.replacement_slots tbody td div.replace_day:not(.unavailable):hover,.replacement_slots tbody td div.replace_day.selected{
	background-color: #092;
	color: #fff;
}

table.booking_timetable {
	margin-bottom: 1rem;
}

.challenge_timetable tbody td,.challenge_timetable2 tbody td,.booking_timetable tbody td,.replacement_slots tbody td,.video_timetable tbody td{
	padding: 0;
}

.challenge_timetable tbody td div.day_slot,.video_timetable tbody td div.day_slot{
    padding: 0.5rem;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	cursor: pointer;
	text-align: center;
	margin-bottom: -1px;
	font-size: 0.9rem;
}

.challenge_timetable tbody td div.day_slot.full {
	cursor: not-allowed;
	background-color: #eee;
	color: #ccc;
}

.challenge_timetable_holder h5 {
	background-color: #000;
	color: #fff;
	margin-top: 1.5rem;
	padding: 0.3rem 0.8rem;
	margin-bottom: 0;
	font-size: 1.5rem;
}

.challenge_timetable_holder h5 span {
	font-size: 0.9rem;
	font-variant: normal;
}

div.challenge_day_slot {
	position: relative;
  overflow: hidden;
}

div.challenge_day_slot .live_link{
	display: none;
	position: absolute;
	right: 5px;
	bottom: 5px;
	color: #fff;
}

div.challenge_day_slot:hover .live_link{
	display: block;
}

.challenge_timetable2 tbody td div.challenge_day_slot{
  padding: 0.25rem;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	text-align: center;
	background-color: #1695ce;
	color: #fff;
	font-weight: bold;
	margin-bottom: -1px;
  position: relative;
}

.challenge_timetable2 tbody td div.challenge_day_slot span.freespace{
	font-size:0.7rem;
	font-weight: normal;
}

.challenge_timetable2 tbody td div.challenge_day_slot.empty{
	background-color: #666;
	color: #fff;
}

.challenge_timetable2 tbody td div.challenge_day_slot.empty.overriden{
	background-color: #000;
}

.challenge_timetable2 tbody td div.challenge_day_slot.full{
	background-color: #092;
	color: #fff;
}

.challenge_timetable2 tbody td div.challenge_day_slot.no_class:before,.booking_timetable tbody td div.booking_day_slot.no_class:before,.replacement_slots tbody td div.replace_day.no_class:before {
  content: "No Class";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%) rotate(-12deg);
  background-color: red;
  border: 2px solid white;
  padding: 2px 5px;
  font-size: 0.8em;
  font-weight: bold;
  opacity: 1;
  z-index: 1;
  color: #fff;
}

.challenge_timetable2 tbody td div.challenge_day_slot.no_class:hover:before,.booking_timetable tbody td div.booking_day_slot.no_class:hover:before {
  opacity: 0.1;
}

.booking_timetable tbody td div.booking_day_slot{
  padding: 0.1rem;
	text-align: center;
	background-color: #092;
	color: #fff;
	font-weight: bold;
	position: relative;
}

.booking_timetable tbody td div.booking_day_slot.override{
	background-color: #070;
}

.booking_timetable tbody td div.booking_day_slot .location,.booking_timetable tbody td div.booking_day_slot .date {
	font-size: 0.7rem;
	font-weight: normal;
}

.booking_timetable.weekly tbody td div.booking_day_slot {
	cursor: pointer;
}

.booking_timetable.weekly tbody td div.booking_day_slot.attended{
	background-color: #444;
	cursor:default;
}

.booking_timetable.weekly tbody td div.booking_day_slot .icon{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 3rem;
	text-shadow: rgb(1,1,1) 2px 2px 5px;
}

.booking_timetable.weekly tbody td div.booking_day_slot.attended:hover .icon{
	opacity: 0.5;
}

.booking_timetable.weekly tbody td div.booking_day_slot:hover {
	opacity:0.7;
}

.challenge_timetable tbody td,.challenge_timetable2 tbody td,.replacement_slots tbody td {
	vertical-align:top;
}

.challenge_timetable tbody td div.day_slot:first-child,.challenge_timetable2 tbody td div.challenge_day_slot:first-child,.replacement_slots tbody td div.replace_day:first-child {
	margin-top: -1px;
}

.challenge_timetable tbody td div.day_slot.locked{
	background-color: #eee;
	color: #bbb;
}

.challenge_timetable tbody td div.day_slot.selected{
	background-color: #092;
	color: #fff;
	font-weight: bold;
}

.assesment_table thead th {
    text-align: center;
}

.assesment_table tbody th {
    text-align: left;
}

table.timetable_preview td {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

table.timetable_preview td:hover {
  background-color: #aaa !important;
}

table.timetable_preview td.filled {
	background-color: #1779ba;
	color: #fff;
}

table.timetable_preview td.filled .seats_override {
	font-size: 0.7rem;
}

table.timetable_preview td.filled.overriden {
	background-color: #17ba79;
}

.challenge_day_slot.locked:before,table.timetable_preview td.locked:before,.challenge_timetable tbody td div.day_slot.locked:before {
  content: "DISABLED";
  display: inline-block;
  text-align: center;
  width: 120%;
  background-color: rgba(255,0,0,0.75);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-19deg);
  font-size: 12px;
  font-weight: bold;
  padding: 10px 0;
}

.challenge_day_slot.locked:before {
  content: "WARNING";
}

.app_timetable .slot {
  background-color: #1779ba;
  color: #fff;
  padding: 0.1rem 0.4rem;
  margin-bottom: 0.3rem;
  font-weight: bold;
  letter-spacing: 0.05rem;
	height: 2rem;
}

.app_timetable .slot.peak_time {
  border: 3px solid #ffba00;
}

.app_timetable .slot.overriden {
    background-color: #17ba79;
}

.app_timetable .slot .seats_override{
	font-size: 0.7rem;
}

.app_timetable tbody td {
	padding: 0;
}

.app_timetable tbody tr {
	vertical-align: top;
}

.app_timetable .button {
	opacity:0;
}

.app_timetable td:hover .button {
	opacity:1;
}

.app_timetable .button:hover {
	background-color: #000;
}

.app_timetable .slot .badge,.dashboard-table .badge {
	float: right;
	margin-left: 0.2rem;
	cursor: pointer;
}
.app_timetable .slot .badge:hover,.dashboard-table .badge:hover {
	background-color:#000;
	color: #fff;
}

.admin_challenge_boxes .challenge_box, .admin_event_boxes .event_box {
    border: 1px solid #ccc;
    padding: 0.3rem 0.7rem;
    background-color: #fff;
    margin-bottom: 0.6rem;
    box-shadow: #ccc 0.2rem 0.2rem 0.3rem;
	border-radius: 0.5rem;
}

.admin_challenge_boxes .challenge_box .registration_status, .admin_event_boxes .event_box .registration_status {
	font-style: italic;
	font-size: 0.8rem;
	color: #aaa;
}

.admin_challenge_boxes .challenge_box .registration_status .comingsoon, .admin_event_boxes .event_box .registration_status .comingsoon {
	color: #ffc405;
}

.admin_challenge_boxes .challenge_box .registration_status .open, .admin_event_boxes .event_box .registration_status .open {
	color: #ff9605;
}

.admin_challenge_boxes .challenge_box .registration_status .closed, .admin_event_boxes .event_box .registration_status .closed {
	color: #d10000;
}

.admin_challenge_boxes .challenge_box .registration_status .inprogress, .admin_event_boxes .event_box .registration_status .inprogress {
	color: #0eae00;
}

.admin_challenge_boxes .challenge_box .registration_status .done, .admin_event_boxes .event_box .registration_status .done {
	color: #000;
}

.app_booking_row .button {
	margin: 0;
}

.assessment_box {
  border: 3px solid #ddd;
  border-radius: 1rem;
  overflow: hidden;
  background-color: #fff;
  padding: 0.5rem;
	box-shadow: 0.3rem 0.3rem 0.4rem rgba(1,1,1,0.1);
	cursor: pointer;
	margin-bottom: 1rem;
}

.assessment_box p {
    margin: 0.4rem 0 0;
}

.assessment_box:hover {
	opacity: 0.7;
}

h4.blue_box {
  color: #fff;
  background-color: #1779ba;
  padding: 0.1rem 0.5rem;
  font-size: 1.2rem;
  letter-spacing: 0.05rem;
	margin-bottom:0.5rem;
}

.assessment_tables {
    margin-top: 1rem;
}

.dashboard-table .input-group {
	margin-bottom: 0;
}

.dashboard-table tbody tr.category_name, .dashboard-table tbody tr.category_name:nth-child(even) {
	background-color: #3095ce;
	color :#fff;
	font-weight: bold;
}

#assessment_canvas,#app_gym_assessment_preview canvas,#app_group_assessment_preview canvas{
  max-width: 100%;
  background-color: #fff;
  margin: 0 auto;
  display: block;
}

#app_gym_assessment_preview canvas,#app_group_assessment_preview canvas{
  border: 1px solid #3095ce;
  margin-bottom:10px;
}

.canvas_holder{
	position: relative;
}

.canvas_holder input {
	width: 100%;
  background-color: #DDD;
  padding: 0.3rem;
	margin: 0;
}

.button.expanded.hidden {
	display: none;
}

.prev_assessements {
	font-size: 0.8rem;
	font-style: italic;
	color: #3095ce;
}

.prev_assessements span{
	margin-right: 1rem;
}

.assessment_title .button.tiny {
	margin: 0 0 0.1rem;
}
.member_menu {
	background-color: #f6f6f6;
	padding-bottom: 5rem !important;
	position: relative;
}

.member_menu a{
	font-size: 0.8rem;
	padding: 0.6rem 0;
	margin-left: 1rem;
	margin-right: 1rem;
	border-bottom: 1px solid #ccc;
	color: #222;
}

.member_menu h5{
	margin: 2rem 1rem 0.2rem 1rem;
	border-bottom: 1px solid #ccc;
	font-size: 0.9rem;
}

.member_menu .button{
	position: absolute;
	bottom: 0.5rem;
	left: 0.5rem;
	right: 0.5rem;
	margin: 0 0.2rem;
	color: #fff;
}

.member_menu .is-active > a{
	background-color: transparent;
	color: #1695ce;
	font-weight: bold;
	padding-left:0.5rem;
	position:relative;
}

.member_menu .is-active > a:before {
	content: "";
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid #1695ce;
	position:absolute;
	left: -0.3rem;
	display: block;
}











.member_header .button_holder {
	text-align: right;
}

.member_header a {
	color: #000;
	text-decoration:underline;
	font-size: 0.6rem;
}

.booking_registration legend {
	font-weight: bold;
}

.div_booking h4,.div_video_timetable h4 {
	background-color: #1779ba;
	color: #fff;
	font-size:1.2rem;
    padding: 0.2rem 0.5rem;
	    margin-top: 1rem;
}

.div_booking h4 span,.div_video_timetable h4 span.dates {
	font-size:0.8rem;
	margin-left: 0.6rem;
}

.admin_dashboard h4 {
	background-color: #1695ce;
	color: #fff;
	padding: 0.6rem;
	position: relative;;
}

.admin_dashboard h4 select {
	display: block;
	position: absolute;;
	right: 3px;
	top: 3px;
	width :45%;
}

.dashboard_box,.challenge_timetable_holder {
	padding: 1rem 1rem 0;
	border: 1px solid #ddd;
	background-color: #fff;
	margin-bottom: 2rem;
	box-shadow: #bbb 0.2rem 0.2rem 0.5rem;
	font-size: 0.7rem;
}

.admin_dashboard h5 {
	background-color: #000;
	color: #fff;
	margin-top: 1.5rem;
	padding: 0.3rem 0.8rem;
	margin-bottom: 0;
	font-size: 1.5rem;
}

.admin_dashboard h5 span {
	font-size: 0.9rem;
	font-variant: normal;
}

.icon-ok {
	color: #092;
}

.icon-cancel {
	color: #b00;
}

.button.alert .icon-cancel,.button.success .icon-ok  {
  color: #fff;
}

.icon-female {
    color: #f4c;
}

.icon-male {
    color: #08f;
}

.download_booking {
	margin-bottom:0;
}





.app_booking_row td.attendance {
    background-color: #eee;
    border: 1px solid #aaa;
		text-align: center;
}

.app_booking_row td.attendance a.hit{
	width: 100%;
	height: 100%;
	display: block;
	z-index:99;
}

.app_booking_row td.blocked_attendance {
		text-align: center;
}

.items_check td.check {
  background-color: #eee;
  border: 1px solid #aaa;
  text-align: center;
	position: relative;
	padding: 0;
}

.items_check td.check span {
  font-size: 10px;
  padding: 0;
  margin: 0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(0,0,0,0.5);
	white-space: nowrap;
}

.items_check td.check a.hit {
  width: 100%;
  height: 100%;
  display: block;
  z-index: 99;
  font-size: 24px;
}

.items_check thead th {
    text-align: center;
}

/* Online editor */
#gjs {
  border: 3px solid #444;
}

/* Reset some default styling */
.gjs-cv-canvas {
  top: 0;
  width: 100%;
  height: 100%;
}


.gjs-block {
  width: auto;
  font-size: 4px;
  height: auto;
  min-height: auto;
}

.gjs-block-label {
    display: none;
}

.notifyjs-bootstrap-base span{
	white-space: normal;
}

.terms_conditions li {
	margin-bottom: 1rem;
}

.assessment_box_holder .member_name {
	font-size: 0.8rem;
  background-color: #333;
  color: #fff;
  padding-bottom: 0.3rem;
}

.assessment_box_holder .member_name.confirmed_0 {
  background-color: #FF0000;
}

.assessment_box_holder .record {
  font-size: 0.9rem;
  text-align: center;
  border-top: 1px solid #333;
}

.assessment_box_holder .record .assessment_title{
  font-weight: bold;
}

.assessment_box_holder .record.ordered {
  background-color: #000;
  color: #fff;
  font-weight: bold;
}

table.assesment_table {
    font-size: 0.7rem;
}

.assesment_table td {
	text-align: right;
}

.assesment_table th.diff {
	background-color: #eee;
	color: #000;
	font-weight: bold;
}

.assesment_table td.diff {
	background-color: #ddd;
	color: #000;
}

.assesment_table tr.total td,.assesment_table tr.total th {
	background-color: #444;
	color: #fff;
	font-weight: bold;
}

.assesment_table tr.total td.diff {
	background-color: #000;
	color: #fff;
	font-weight: bold;
}

.assesment_table tr.calc{
	background-color: #cde;
	color: #0264c5;
	font-weight: bold;
}

.assesment_table tr.calc td.diff{
	background-color: #0264c5;
	color: #fff;
}

.app_entries select.location {
	background-color: #000;
	color: #fff;
	font-weight: bold;
}

.admin_dashboard .challenge_day_slot,#admin_challenge_timetables .challenge_day_slot{
	cursor: pointer;
}

.admin_dashboard .challenge_day_slot:hover,#admin_challenge_timetables .challenge_day_slot:hover {
	opacity: 0.7;
}

.slot_date {
  font-size: 0.7em;
}

.rotatepic {
	position: absolute;
  top: 50%;
  left: 50%;
  font-size: 4rem;
  transform: translate(-50%, -50%);
  opacity: 0.8;
  cursor: pointer;
	color: #3095ce;
	text-shadow: rgba(1,1,1,0.8) 2px 2px 5px;
}

.button .out {
	display: block;
}

.button .hover {
	display: none;
}

.button:hover .out{
	display: none;
}

.button:hover .hover{
	display: block;
}

.booking_timetable tbody td div.booking_day_slot.unlocked {
	-webkit-animation-name: example;
  -webkit-animation-duration: 4s;
  animation-name: slot_fade;
  animation-duration: 4s;
}



.workouts_view .workout_p {
  color: #fff;
  font-size: 0.8rem;
}

.discount_form canvas.logo_canvas,.ad_form canvas.banner_canvas, .event_setup_form canvas.banner_canvas{
	max-width: 100%;
	background-size: contain;
	margin: 0 auto;
	display: block;
	background-image: url(/img/discount_logo.png);
	background-repeat: no-repeat;
  background-position: center;
}

.event_setup_form canvas.banner_canvas{
	background-image: url(/img/ad.png);
}

.discount_form textarea {
	height:100px;
}



label.link {
    color: rgb(0,150,255);
    font-weight: bold;
    cursor: pointer;
}

.vip_row.pending {
    background-image: linear-gradient(to bottom right, rgba(208,180,0,0.3), rgba(208,180,0,0), rgba(208,180,0,0));
}

.vip_row.blocked {
    background-image: linear-gradient(to bottom right, rgba(255,0,0,0.3), rgba(255,0,0,0), rgba(255,0,0,0));
}

.vip_row.active {
    background-image: linear-gradient(to bottom right, rgba(0,128,0,0.3), rgba(0,128,0,0), rgba(0,128,0,0));
}

.vip_row span.unlimitedx,.vip_row span.unlimited,.vip_row span.litex,.vip_row span.lite,.vip_row span.goldx,.vip_row span.gold,.vip_row span.silverx,.vip_row span.silver,.vip_row span.bronzex,.vip_row span.bronze,.vip_row span.platinumx,.vip_row span.platinum,.vip_row span.diamondx,.vip_row span.diamond,
.app_booking_row span.unlimited,.app_booking_row span.unlimited,.app_booking_row span.litex,.app_booking_row span.lite,.app_booking_row span.goldx,.app_booking_row span.gold,.app_booking_row span.silverx,.app_booking_row span.silver,.app_booking_row span.bronzex,.app_booking_row span.bronze,.app_booking_row span.platinumx,.app_booking_row span.platinum,.app_booking_row span.diamondx,.app_booking_row span.diamond,
.vip_row span.gym_member {
		display: inline-block;
		width: 20px;
		height: 20px;
		background-size: contain;
		margin-right: 4px;
}

.app_booking_row span.monthly_member {
    border: 4px solid #3699f7;
    border-radius: 12px;
}

.vip_row span.diamondx,.app_booking_row span.diamondx {
		background-image: url(/img/diamondx.png);
}

.vip_row span.diamond,.app_booking_row span.diamond {
		background-image: url(/img/diamond.png);
}

.vip_row span.platinumx,.app_booking_row span.platinumx {
		background-image: url(/img/platinumx.png);
}

.vip_row span.platinum,.app_booking_row span.platinum {
		background-image: url(/img/platinum.png);
}

.vip_row span.goldx,.app_booking_row span.goldx {
		background-image: url(/img/goldx.png);
}

.vip_row span.gold,.app_booking_row span.gold {
		background-image: url(/img/gold.png);
}

.vip_row span.silverx,.app_booking_row span.silverx {
		background-image: url(/img/silverx.png);
}

.vip_row span.silver,.app_booking_row span.silver {
		background-image: url(/img/silver.png);
}

.vip_row span.bronzex,.app_booking_row span.bronzex {
		background-image: url(/img/bronzex.png);
}

.vip_row span.bronze,.app_booking_row span.bronze {
		background-image: url(/img/bronze.png);
}

.vip_row span.litex,.app_booking_row span.litex {
		background-image: url(/img/litex.png);
}

.vip_row span.lite,.app_booking_row span.lite {
		background-image: url(/img/lite.png);
}

.vip_row span.unlimitedx,.app_booking_row span.unlimitedx {
		background-image: url(/img/unlimitedx.png);
}

.vip_row span.unlimited,.app_booking_row span.unlimited {
		background-image: url(/img/unlimited.png);
}

.vip_row span.gym_member {
		background-image: url(/img/family.png);
}

.vip_row span.gym_member_0 {
		background-image: url(/img/single.png);
}

.vip_row span.gym_member_1 {
		background-image: url(/img/couple.png);
}
.vip_row span.gym_member.gym_dependent {
    background: none;
}

.vip_row .family_info {
  font-size: smaller;
  color: rgba(0,0,0,0.5);
  font-style: italic;
}

.vip_row td.method,.vip_row td.discount,.vip_row td.start_date,.vip_row td.agent,.app_booking_row td.agent {
  font-size: 10px;
  color: rgba(0,0,0,1);
}

.vip_payment {
    display: inline-block;
    font-size: 0.8rem;
    border: 1px solid #bbb;
    background-color: #fff;
    padding: 1px 3px;
    float: left;
    margin-right: 5px;
}

.vip_payment span.month {
    font-size: 0.8em;
}
.vip_payment span.amount {
    font-weight: bold;
}

table.monthly_payments {
	float: left;
  font-size: 0.6rem;
  margin: 0;
  border: 2px solid #ccc;
  color: #999;
  letter-spacing: -0.7px;
}

table.monthly_payments td {
	padding: 0.15rem;
	border: 1px solid #ccc;
}

span.vip_plan_status {
    font-size: 0.9rem;
    font-weight: bold;
    font-style: italic;
}

td.month_td.paid {
  background-color: greenyellow;
  color: black;
}

td.month_td.partly {
  background-color: orange;
  color: black;
}

td.month_td.unpaid {
  background-color: red;
  color: white;
}

p.vip_plan {
    font-weight: bold;
    background-color: #ffdd00;
    display: inline-block;
    color: #000;
    padding: 0.2rem 0.5rem;
}

/* Safari 4.0 - 8.0 */
@-webkit-keyframes slot_fade {
  0%   {background-color: #964900;}
  100% {background-color: #092;}
}

/* Standard syntax */
@keyframes slot_fade {
	0%   {background-color: #964900;}
  100% {background-color: #092;}
}

.workout_details table,.workout_details table td,.workout_details table th {
	border: 1px solid #333;
	width: auto;
}

.assessment_pic_holder {
	position: relative;
}

.assessment_pic_holder .replace_pic{
	position: absolute;
	bottom:5px;
	left: 5px;
	margin:0;
	display: none;
}

.assessment_pic_holder .download_pic{
	position: absolute;
	top:5px;
	left: 5px;
	margin:0;
	display: none;
}

.assessment_pic_holder .delete_pic{
	position: absolute;
	bottom:5px;
	right: 5px;
	margin:0;
	display: none;
}

.assessment_pic_holder:hover .replace_pic,.assessment_pic_holder:hover .download_pic,.assessment_pic_holder:hover .delete_pic{
	display: block;
}

select.confirmed_1, select.confirmed_0 option.confirmed_1,select.confirmed_1 option.confirmed_1 {
	color: #000000 !important;
}

select.confirmed_0, select.confirmed_0 option.confirmed_0,select.confirmed_1 option.confirmed_0 {
	color: #FF0000 !important;
}

.video_time_slot {
    text-align: center;
    background-color: #eee;
    color: #888;
    font-weight: bold;
    position: relative;
		border-bottom: 1px solid #000;
		padding: 0.5rem 0;
}

.today .video_time_slot {
	background-color: #ddd;
	color: #444;
}

.video_timetable th.today {
	background-color: #444;
	color: #eee;
}
.video_timetable tbody td {
	vertical-align: top;
}


.video_time_slot .time {
	margin-bottom: .8rem;
}

.video_time_slot .message{
	font-size:0.7em;
	position:absolute;
	width: 100%;
	text-align: center;
	top:1.8rem;
}

.video_time_slot .message.playing {
	color: #0a0;
}

.video_time_slot .message.coming {
	color: #fa0;
}

div#videooverlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background-color: #eee;
}

#videooverlay h5 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
		text-align: center;
    width: 80%;
}

.ytp-chrome-top.ytp-show-cards-title {
    display: none !important;
}

.migration_arrow {
	text-align: center;
}



h5.channelname a {
	display:none;
}

h5.channelname:hover a {
	display:inline;
}

.chat_box {
    border: solid 2px rgba(23,123,233,0.5);
    margin: 15px 0;
    padding: 0;
    height: 300px;
		overflow-x: hidden;
		overflow-y: scroll;
		background-color: #fff;
}

.chat_input {
	height: 4rem;
}

.chat_box .content {
	padding: 10px;
}

.chat_box .content p {
	margin-bottom: 0.1rem;
}

.workout_holder {
	text-align: center;
}

.chat_box .content p.me {
    color: #1779ba;
}

.streaming_members {
	margin: 10px 0;
}

.streaming_members .member {
	font-size: 0.7rem;
	padding: 1px 4px;
	background-color: red;
	color: #fff;
	display: block;
	break-inside: avoid;
	line-height: 1rem;
	margin: 2px 2px 0 0;
	float: left;
}

.streaming_members .member.attending {
	background-color: green;
}

.live_holder .fullscreen_button,.live_holder .smallscreen_button {
  color: white;
  position: absolute;
  z-index: 100;
  right: 5px;
  bottom: 5px;
  margin: 0;
	font-size: 0.7em;
  border: 1px solid white;
  padding: 1px 2px;
  cursor: pointer;
}

.live_holder .smallscreen_button {
	display: none;
}

.live_holder .fullscreen_button:hover,.live_holder .smallscreen_button:hover {
	color: black;
	background-color: white;
	border-color:black;
}

.live_holder:-webkit-full-screen .fullscreen_button {
  display:none;
}

.live_holder:-ms-full-screen .fullscreen_button {
  display:none;
}

.live_holder:fullscreen .fullscreen_button {
  display:none;
}

.live_holder:-webkit-full-screen .smallscreen_button {
  display: block;
}

.live_holder:-ms-full-screen .smallscreen_button {
  display: block;
}

.live_holder:fullscreen .smallscreen_button {
  display: block;
}

.countdown i {
	font-size: 0.7em;
	opacity: 0.6;
	font-style: normal;
}

.audio_but {
	margin-top: 5px;
}

.border_right {
	border-right: 1px solid #ccc;
}

label.yearly_include {
    font-size: 0.6em;
    margin: 0;
}

.copy_input label.date {
  margin-right:1em;
}

.copy_input input.include {
  margin: 1.2em 5px;
}

.dependents_row td {
  vertical-align: top;
}

#app_gym_dependent_add_modal {
  overflow: visible;
}

.gym_dependent_delete {
  visibility:hidden;
}

.dependent_list tr:hover .gym_dependent_delete {
      visibility:visible;
}

.workout_description textarea[name="description"] {
  height: 6rem;
}

.gym_week {
  display: inline-block;
  white-space: nowrap;
  vertical-align: top;
}

.gym_week_box {
  border: 4px solid #3095ce;
  width:480px;
  display: inline-block;
  vertical-align: top;
  margin-left: -8px;
}

.gym_week_box h2 {
  background-color: #3095ce;
  color: #fff;
  font-size: 1.5em;
  padding: 5px 10px;
}

.gym_section:last-child {
  margin-bottom: 10px;
}

.gym_section {
  border-bottom: 4px solid #3095ce;
  background-color: #e5f0f7;
}

.gym_section input[name="section_name"] {
  width: 420px;
  max-width: 60%;
  margin: 10px;
  display: inline-block;
}

.gym_section .gym_exercises {
  background-color: rgba(255,255,255,0.5);
}

.gym_section .gym_exercises .gym_exercise {
  border-top: 1px solid #3095ce;
  padding: 5px 5px 0;
}

.gym_section .gym_exercises .gym_exercise .cell {
    padding: 0 3px;
}

.gym_section .workout_exercise_add {
    margin: -35px 0 0 15px;
}

.section_badges {
  display: inline-block;
  visibility: hidden;
}

.exercise_badges {
  visibility: hidden;
}

.gym_section:hover .section_badges, .gym_exercise:hover .exercise_badges {
  visibility: visible;
}

.gym_section .badge {
  cursor: pointer;
}

.gym_section .badge:hover {
  background-color: #000;
  color: #fff;
}

.gym_section:first-child .workout_section_up, .gym_section:last-child .workout_section_down,.gym_exercise:first-child .workout_exercise_up, .gym_exercise:last-child .workout_exercise_down {
  display: none;
}

.workout_section_add {
  margin-left: 15px;
}

.workout_exercise_add {
  margin: 10px 0 10px 30px;
}

.gym_user_workouts tbody tr{
  cursor: pointer;
}

.gym_user_workout_view_holder {
  background-color: #fff;
  padding: 2rem;
}

table.gym_user_workout_view {
  background-color: transparent;
  border-top: 0;
}

table.gym_user_workout_view tbody {
  background-color: transparent;
  border: none;
}

tr.gym_weekday {
  font-size: 2.4em;
  text-decoration: underline;
}

table.gym_user_workout_view tbody tr:nth-child(even) {
  background: transparent;
}

table.gym_user_workout_view tbody  tr.gym_weekday th {
  padding: 2rem 0.5rem 0;
}

table.gym_user_workout_view tbody  tr.gym_weekday_section th {
    padding: 0 0.5rem;
}

table.gym_user_workout_view tbody  tr.gym_weekday_section {
  font-size: 1.5em;
}

table.gym_user_workout_view tbody  tr.gym_weekday_section:not(.first) th {
  padding-top: 1em;
}

table.gym_user_workout_view tbody  tr.exercise_headers {
  border-bottom: 2px solid #000;
}

table.gym_user_workout_view tbody  tr.exercise_headers th {
  padding: 0 0 0 0.5rem;
  text-align: left;
}

table.gym_user_workout_view tbody tr.exercise_row:not(.last) {
    border-bottom: 1px dashed #ddd;
}

table.gym_user_workout_view tbody tr.exercise_row.last {
    border-bottom: 2px solid #000;
}

table.gym_user_workout_view tbody  tr.exercise_row td:not(:last-child) {
    border-right: 1px solid #000;
}

table.gym_user_workout_view tbody  tr.exercise_row td.value {
  text-align: center;
}

table.gym_user_workout_view tbody tr.gym_weekday:first-child th {
  padding-top: 0.5rem;
}

.gym_weekday_section th .title{
  text-align: left;
  background-color: #eee;
  margin: 0 -0.5rem 0.5rem;
  padding: 0.5rem 0.5rem 0 0.5rem;
}

.gym_weekday_section th label {
  display: inline-block;
  margin-left: 1em;
}

tr.gym_weekday a.prev_section,tr.gym_weekday a.next_section {
  float: left;
  display: block;
  font-size: 0.9rem;
  text-decoration: none;
  background-color: #3095ce;
  color: #fff;
  padding: 5px 10px;
  border-radius: 15px;
  cursor:pointer;
}

tr.gym_weekday a.next_section {
  float: right;
}

tr.gym_weekday a.prev_section:hover,tr.gym_weekday a.next_section:hover {
  background-color: #000;
}


#member_gym_workouts .tabs-content {
  background-color: transparent;
}

#member_gym_workouts .tabs{
  background: #3095ce;
}

#member_gym_workouts .tabs-title > a {
  color: #ffffff;
}

#member_gym_workouts .tabs-title > a[aria-selected='true'] {
  background: #1f79cb;
  color: #ffffff;
  font-weight: 600;
}

#member_gym_workouts .tabs-title > a:hover {
  background: #fefefe;
  color: #3095ce;
}

.member_workout_view {
  background-color: #fff;
}

.member_workout_view h3 {
  text-align: center;
  margin: 0.5em 0.5rem 0;
}

.member_workout_play {
  font-size: 1.5rem;
  line-height: 1rem;
  cursor: pointer;
}

.member_workout_play:hover {
  color: #3095ce;
}

#member_workout_reveal .video_holder video {
    width: 100%;
    height: auto;
    display: block;
}

#member_workout_reveal h4, #member_workout_weights_reveal h4 {
  background-color: #3095ce;
  color: #fff;
  font-size: 1.1rem;
  padding: 5px 10px;
}

#member_workout_reveal h4 {
  background-color: transparent;
  color: #3095ce;
}

.gym_weekday_section input[type="checkbox"]{
  cursor: pointer;
}

.gym_user_workout_view .weight_input_zone {
  font-size: 0.7rem;
  color: #999;
  border: 1px dashed #999;
  padding: 2px 5px;
  line-height: 0.8rem;
}

.gym_user_workout_view .weight_input_td {
  cursor: pointer;
}

.gym_user_workout_view .weight_input_td:hover {
  background-color: #999;
  color: #fff;
}

.gym_user_workout_view .weight_input_td:hover * {
  color: #fff;
  border-color: #fff;
}

@keyframes highlightflash {
 	0% {
 		background-color: rgb(255,255,128);
 	}
 	100% {
 		background-color: none;
 	}
}

.highlight {
  animation: highlightflash 1s;
}

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    border-color: var(--main-color) transparent transparent;
}

@media only screen and (min-width: 40.063em) {
  .spinning_timetable_table tbody td,
  .extraclass_timetable_table tbody td
  {
  	padding: 5px;
    vertical-align: top;
  }

  .spinning_slot.booked::after,
  .extraclass_slot.booked::after
  {
    content: "BOOKED";
    position: absolute;
    background-color: #82ff73;
    color: green;
    font-weight: bold;
    font-size: 0.8rem;
    padding: 0.1rem 1.5rem;
    line-height: 1.2rem;
    top: 0.7rem;
    right: -1.4rem;
    transform: rotate(45deg);
  }

  .spinning_timetable_table .spinning_time,
  .extraclass_timetable_table .extraclass_time
  {
    font-size: 16px;
    font-weight: bold;
  }

  .extraclass_timetable_table .extraclass_name
  {
    font-size: 12px;
    font-weight: bold;
  }

	.dashboard_box,.challenge_timetable_holder {
		font-size: 1rem;
	}

	.notifyjs-bootstrap-base span{
		white-space: nowrap;
	}

	.booking_box h1,.vip_box h1 {
		font-size: 2rem;
	}

	.booking_box h2,.vip_box h2 {
		font-size: 1.3rem;
	}


	.member_header a {
		font-size: 0.8rem;
	}

	.grid-container {
		padding-right: 0.625rem;
		padding-left: 0.625rem;
	}

	.no-js .top-bar {
		display: none;
	}

	.no-js .title-bar {
		display: none;
	}

	.booking_box p,.vip_box p {
		line-height: 1.2rem;
		font-size: 1rem;
		margin-bottom: 1rem;
	}

	.booking_box h2,.vip_box h2 {
		font-size: 1.3rem;
	}

	.booking_timetable tbody td div.booking_day_slot{
		padding: 0.3rem;
	}

	.x_option_label {
		margin-right: 2rem;
		display:inline-block;
	}

	select.inline-block {
		width: 12rem;
		margin-left: 0.3rem !important;
		margin-right: 0.3rem !important;
	}

	.inline-block {
		display:inline-block !important;
		margin-bottom: 1rem;
	}

	.challenge_timetable tbody td div.day_slot{
		padding: 0.8rem;
		font-size: 1rem;
    position: relative;
    overflow: hidden;
	}

	table.assesment_table {
	    font-size: 1rem;
	}

	.challenge_timetable2 tbody td div.challenge_day_slot span.freespace {
    font-size: 0.8rem;
	}

	.admin_dashboard h4 {
		padding: 0.3rem 0.6rem;
	}

	.admin_dashboard h4 select {
		width :25%;
	}

	.lock_slot {
		position: absolute;
    top: -0.3rem;
    right: -0.3rem;
    font-size: 1rem;
    background-color: #fff;
    border-radius: 1rem;
		display: none;
	}

	.booking_day_slot:hover .lock_slot {
		display: block;
	}

	.lock_slot:hover {
		color: #000;
	}
}
