
.openfuture { 
	position: relative;
	border: 1px solid #111;
  padding: 18px 8px;
  margin: -20px 12px 5px 10px;
  background-color: #fff;
  text-align: center;
  cursor: pointer;
  box-shadow: 0px 5px 8px 0px rgba(0,0,0,0.5);
}

.month_divider {
	padding: 6px 0px 6px 8px;
	margin: 8px 0 0 0;
	color: #000;
  background-color: #eee;
  cursor: pointer;
  opacity: .7;

}
.month_divider.future { display: none; }

.month_divider.closed .close_month { display: none; }
.month_divider.closed .open_month { display: inline; padding: 2px 6px 2px 0px; }
.month_divider .open_month { display: none; }
.month_divider .close_month { display: inline; padding: 2px 6px 2px 0px; }

.legende_icon__element .bookinginfo_icon i { margin-right: 20px; }
.legende_ampel .max_min { font-size: 15px; color: #888; }


.contentbox.termine .row { 
	position: relative; padding-right: 5px !important;
	border-top: 1px dotted rgba(255,255,255,0.2);
}
.contentbox.termine .row:hover { background-color: rgba(255,255,255,0.1); }

.contentbox.termine .termin.past { opacity: 0.35; }
.contentbox.termine .termin.past:hover { background-color: transparent; }

.contentbox.termine .col { float:left; padding: 4px 6px 3px 6px; margin: 0px; }
.contentbox.termine .termin .col.nr { width: 40px; background-color: rgba(255,255,255,0.1) }
.contentbox.termine .termin .col.date { width: 129px;  }
.contentbox.termine .termin .col.date strong { color: #fff; font-weight: normal;   }
.contentbox.termine .termin .col.info { width: 100px; }
.contentbox.termine .termin .col.info .price { float: right; text-align: right; padding: 5px 12px 0px 0px; }

.contentbox.termine .legende_ampel { margin: 0px 0px 10px 0px; }
.contentbox.termine .legende_ampel .max_min { font-size: 13px; }
.contentbox.termine .termin .ampel { float: left; margin: 6px 8px 0px 0px; }
.contentbox.termine .legende_ampel__element { display:inline-block; margin: 0px 12px 5px 0px; vertical-align: middle; }
.contentbox.termine .legende_ampel__element span { vertical-align: middle; margin-right: 8px; }
.contentbox.termine .legende_ampel__element span { vertical-align: middle; margin-right: 8px; }

.contentbox.termine .bookinginfo_ampel {
	display:inline-block;
	width: 15px;
	height: 15px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	box-sizing: border-box;
	border: 1px solid rgba(255,255,255, 0.5);
	cursor: pointer;
}

.contentbox.termine .bookinginfo_ampel.green { background-color: #30C030; }
.contentbox.termine .bookinginfo_ampel.yellow { background-color: #FFB733; }
.contentbox.termine .bookinginfo_ampel.red { background-color: #FF0000; }


.bookinginfo_icon { display: flex; }
.bookinginfo_icon.green { color: #30C030; }
.bookinginfo_icon.yellow { color: #FFB733; }

.bookinginfo_icon .icon-usergroup3-filled::before { vertical-align: super; }
.bookinginfo_icon.green .icon-usergroup3-filled::before { vertical-align: super; }
.bookinginfo_icon.yellow .icon-usergroup3-filled::before  { color: #FFB733; vertical-align: super; }
.bookinginfo_icon .member_count { font-size: 22px; }


.contentbox.termine .termin .col.book { 
	cursor: pointer; position: absolute; right: 0px; top: 0px; bottom: 0px; width: 50px; text-align: center; 
}

.contentbox.termine .termin .col.book:hover { background-color: #83AF00; }


.contentbox.termine .termin .col.book {
	width: 60px;
	padding: 0px;
	background-image: url(/tramino/gfx/cart-add.png);
	background-repeat: no-repeat;
	background-position: center center;
}

.contentbox.termine .spacer { height: 10px; }

/* Neue Buchungsdarstellung */

.contentbox.termine .booking_info { margin: 10px 0px 0px 0px; }

.contentbox.termine .booking_info .booking_option {
	width: 80%;
	float: right;
	margin: 3px 0px;
}

.contentbox.termine .booking_info .booking_option .amount {
	float: left;
	width: 45px;
	margin-right: 5%;
	font-size: 14px;
	height: 25px;
	margin-top: 2px;
}

.contentbox.termine .booking_info .booking_option .class_name {
	float: left;
	width: 37%;
	margin-right: 2%;
	text-align: left;
	line-height: 30px;
}

.contentbox.termine .booking_info .booking_option .class_price {
	width: 15%;
	float: left;
	margin-right: 5%;
	line-height: 30px;
	text-align: right;
}

.contentbox.termine .booking_info .booking_option .book {
	height: 30px;
	float: left;
	background-image: url(/tramino/gfx/cart-add.png);
	background-repeat: no-repeat;
	background-position: center center;
	width: 20%;
	cursor: pointer;
	background-color: #8d95a1;
	-webkit-border-radius: 1px;
	-moz-border-radius: 1px;
	border-radius: 1px;
}


.contentbox.termine .booking_info .booking_option .book:hover { background-color: #83AF00; }

.contentbox.termine .termin .modalcart {
	display:none;
	position: absolute;
	width: 100%;
	min-width: 320px;
	margin-top: 1px;
	/*max-width: 320px;*/
	padding: 20px 15px 10px 15px;
	right: 0px;
	height: auto;
	background-color: #8d95a1;
	/*-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;*/
	box-sizing: border-box;
	min-height: 60px;
	z-index: 10;
}


.contentbox.termine .termin .modalcart.show { display: block !important; }


.contentbox.termine .termin .modalcart .amount {
	float: left;
	width: 50px;
	margin: 0px 15px 0px 0px;
}

.contentbox.termine .termin .modalcart .booking_option { 
	padding: 0px 0px 5px 0px;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	margin: 0px 0px 5px 0px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
}


.contentbox.termine .termin .modalcart .booking_option.disabled * { color: #ccc !important; }

.contentbox.termine .termin .modalcart .booking_option.noborder {
	border: none;
	padding: 0px;
}

.contentbox.termine .termin .modalcart .class_name {
	float: left;
	width: 100px;
	margin: 0px 5px 0px 0px;
	font-weight: bold;
	color: #fff;
}


.contentbox.termine .termin .modalcart .class_price {
	font-weight: bold;
	float: left;
	width: 50px;
	color: #fff;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	text-align: center;
}


.contentbox.termine .termin .modalcart .modalcart_max_booking {
	font-size: 14px;
}

.contentbox.termine .termin .modalcart .book {
	height: 30px;
	float: right;
	background-image: url(/tramino/gfx/cart-add.png);
	background-repeat: no-repeat;
	background-position: center center;
	width: 20%;
	cursor: pointer;
	background-color: #93A4B4;/*
	-webkit-border-radius: 1px;
	-moz-border-radius: 1px;
	border-radius: 1px;*/
}

.contentbox.termine .termin .modalcart .booking_option.disabled .book { background-color: #ccc !important; }
.contentbox.termine .termin .modalcart .booking_option.disabled .book:hover { background-color: #ccc !important; }

.contentbox.termine .termin .modalcart .book:hover { background-color: #83AF00; }


.contentbox.termine .termin .carticon {
	float: left;
	width: 50px;
	margin: 4px 0px 0px 0px;
	height: 30px;
	background-image: url(/tramino/gfx/cart-add.png);
	background-repeat: no-repeat;
	background-position: center center;
	cursor: pointer;
	background-color: #8d95a1;
}

.contentbox.termine .termin .carticon:hover {
	background-color: #83AF00;
}


/* Tooltip */


.tooltip {
  position: relative;
  display: inline-block;
  margin-right: 15px;
}

.tooltip .tooltiptext {
  visibility: hidden;
  width: 180px;
  background-color: #d7621d;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;

  position: absolute;
  z-index: 1;
  bottom: 100%;
  left: 50%;
  margin-left: -90px; 
}

.tooltip:hover .tooltiptext {
  visibility: visible;
}

.tooltip .tooltiptext.visible {
  visibility: visible;
}

