body, textarea {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
}
body {
	font-size: 13px;
    color: #202020;
    background-color: #444;
}

a, span.paypal-info-link {
	color: #8dd02e;
	text-decoration: underline;
	cursor: pointer;
}

.red {
	color: #dd1c24;
}

.content {
	color: #e4f1fc;
	font-size: 16px;
}

.content.booking, .content.voucher {
	background-color: #444;
}

h1 {
	margin-top: 10px;
	font-size: 17px;
	color: #eeeeee;
}

h2 {
	margin-top: 10px;
	font-size: 15px;
	color: #eeeeee;
}

.form-element {
	background-color: #333 !important;
	padding: 5px;
	margin-bottom: 10px;
	font-size: 16px;
}

.form-element ::placeholder {
	color: #aaa;
}

.form-element.timepicker {
	display: none;
	padding: 5px 0px 0px 0px; 
}

#notifications ul {
	padding: 0px;
}

.hidden {
	display: none;
}

.center {
	text-align: center;
}

.form-element .row {
	padding-right: 0px;
}

.booking-item {
	display: inline-block;
	background-color: #11100C;
	padding: 5px;
	margin-bottom: 5px;
	width: 100%;
}

.booking-item:hover:not(.sold-out) {
	cursor: pointer;
	background-color: #8dd02e;
}

.booking-item .time {
	font-weight: 400;
}

.datepicker-container {
	width: 100%;
}

.datepicker-panel > ul {
	width: 100%;
}

.datepicker-panel > ul > li[data-view="month current"] {
	width: 71.43%;
}

.datepicker-panel > ul > li {
	width: 14.28%;
}

.datepicker-panel {
	color: black;
}

.form-element label {
	margin-left: 5px;
	width: 7em;
	display: inline-block;
	vertical-align: middle;
}

.form-element label.top {
	vertical-align: top;
}

.form-element .row {
	margin-bottom: 0px;
}

.form-element input, .form-element select, .form-element textarea {
	background-color: #11100C;
	border: none;
	width: 50%;
}

.form-element textarea {
	height: 100px;
}

.form-element, .form-element input, .form-element select, .form-element textarea {
	color: #e4f1fc;
	padding: 5px;
	font-size: 16px;
	font-weight: normal;
}

.form-element select:not(.location) {
	width: 50px;
}

select.location {
	width: 100%; 
	text-align: center;
}

select.location option.selected {
	background-color: #8dd02e;
}

.form-element.image::before {
	content: " ";
	background-size: 18px 18px;
	position: absolute;
	left: 20px;
	height: 18px;
	width: 18px;
}

.datepicker {
	min-height: 30px;
}

.datepicker::before {
	content: " ";
	background-image: url(../img/event_white.png);
}

.datepicker::after {
	content: attr(data-weekday);
	margin-left: 5px;
	color: #e4f1fc;
}

.timefield::before {
	content: " ";
	background-image: url(../img/clock_white.png);
}

.booking-item .persons {
	float: right;
	font-size: 13px;
}

.sold-out .persons {
	color: #168783;
	overflow: hidden;
	width: 100%;
}
.sold-out .time {
	color: #777777;
}

.booking-item .persons img {
	height: auto;
	width: 12px;
	margin-left: 5px;
	padding-bottom: 2px;
	vertical-align: middle;
}

.booking-item::after {
	clear: both;
}

.cursor {
	cursor: pointer;
}

.close-icon {
	float: right;
	height: 30px;
	display: none;
}

.booking-button {
	font-size: 18px;
	text-transform: uppercase;
	width: 100%;
	max-width: 900px;
	border: none;
	padding: 10px;
	color: black;
	margin-bottom: 20px;
	background-image: linear-gradient(255deg,#8dd02e 0,#8dd02e 100%);
}


.delete-button {
	font-size: 18px;
	text-transform: uppercase;
	width: 100%;
	max-width: 900px;
	border: none;
	padding: 10px;
	color: white;
	margin-top: 20px;
	margin-bottom: 20px;
	background-image: linear-gradient(255deg,#f66767 0%,#f66767 100%);
}

input[type="checkbox"], input[type="radio"] {
	display: none;
}

.checkbox label:before, .radio label::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 10px;
	position: absolute;
	height: 16px;
	left: 0;
	background-color: #11100C;
	border: 1px solid white;
}

.radio label::before {
	content: "";
	margin-top: 4px;
	border-radius: 20px;
	border: 1px solid white;
}

.checkbox input[type=checkbox]:checked + label:before {
	content: "\2713";
	font-size: 16px;
	color: white;
	text-align: center;
	line-height: 16px;
}

.checkbox input[type=checkbox]:disabled + label:before {
	opacity: 0.5;
}

.radio input[type=radio]:checked + label:before {
	content: "";
	background-image: url(../img/dot.png);
	background-size: 14px;
	font-size: 16px;
	text-align: center;
	line-height: 16px;
}

label.checkbox, label.radio {
	font-family: Helvetica, sans-serif;
	width: 100%;
	display: inline-block;
	position: relative;
		
	cursor: pointer;
	padding-left: 25px;
	margin-right: 5px;
	margin-bottom: 5px;
	margin-top: 5px;
}

label.radio {
	line-height: 25px;
	padding-right: 20px;
}

p.radio {
	padding: 5px;
	margin: 0px;
	border-bottom: 2px solid #17263d;
}

#payment_method {
	padding: 0px;
}

.payment-amount {
	font-weight: bold;
	float: right;
	margin-right: 10px;
}

label.radio img {
	width: 100px;
	display: inline;
	float: right;
}
  
.voucher {
	max-width: 900px;
}

.voucher h1, .voucher h2 {
	padding: 10px;
}

.voucher input.quantity {
	width: 70px;
	color: white;
	text-align: center;
	float: left;
	border: 1px solid #e4f1fc;
	height: 35px;
	margin: 7px;
	font-size: 16px;
	background-color: #11100C;
	-webkit-appearance: textfield;
	-moz-appearance: textfield;
		 appearance: textfield;
}
.voucher input.quantity::-webkit-inner-spin-button, 
.voucher input.quantity::-webkit-outer-spin-button { 
	-webkit-appearance: none;
}

.voucher-part-table {
	width: 100%;
	max-width: 900px;
	border-collapse: collapse;
}

.voucher-part-table tr {
	background-image: linear-gradient(225deg,#22201c 0%,#22201c 100%) !important;
	border-bottom: 10px solid #11100C;
}

.voucher-part-table td {
	padding: 5px;
	vertical-align: top;
}

.voucher-part-table .start {
	padding-left: 10px;
}

.voucher-part-table td.p20 {
	width: 20%;
}

.voucher-part-table td.p10 {
	width: 10%;
}

.voucher-part-table td.p50 {
	width: 50%;
}

.voucher-line-button, .voucher-action-button {
	cursor: pointer;
	font-size: 15px;
	text-transform: uppercase;
	border: none;
	padding: 5px;
	color: black;
	background-color: #8dd02e;
}

.voucher-action-button {
	margin-top: 10px;
}

.voucher-line-button {
	float: right;
	margin-left: 10px;
}

.voucher-line-button.delete {
	color: #f71c1c;
	background: transparent;
}

.voucher-part-description {
	display: block;
	font-size: 15px;
	color: #c3e7ff;
}

.voucher-item {
	background-color: #101e34;
	
}

.voucher-part-table label {
	display: inline-block;
	font-size: 18px;
	padding-top: 5px;
}

.voucher-part-table label.euro {
	line-height: 40px;
	float: left;
}

.voucher-up-down-container {
	float: left;
}

.button-up-down {
	padding: 5px;;
	height: 50px;
	cursor: pointer;
}

.voucher .price {
	text-align: right;
	padding-right: 10px;
}

#notifications.inline ul {
	list-style: none;
	padding: 0px;
	line-height: 1.3;
	margin-top: 10px;
	margin-bottom: 0px;
	margin-right: 10px;
	margin-left: 10px;
	width: 96%; 
	max-width: 580px;
	font-weight: bold;
}

#notifications li {
	padding: 10px;
	border-radius: 5px;
	background-image: linear-gradient(255deg,#f66767 0%,#f71c1c 100%);
	color: white;
	margin-bottom: 10px;
}

#tintview {
	background-color: rgba(0, 0, 0, 0.5);
	position: fixed;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	display: flex;
	display: none;
	z-index: 101;
	-ms-flex-align: center;
	-ms-flex-pack: center;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}

#alert-window {
	display: none;
	max-width: 300px;
	padding: 10px;
	background-color: white;
	border-radius: 4px;
}

#alert-window button {
	padding: 5px;
	background-color: #f0f0f0;
	border: none;
	border-radius: 3px;
	margin-top: 10px;
	width: 100%;
}

#input-check-area {
	width: 220px;
	font-size: 12px;
	display: none;
}

.voucher-thumb {
	width: 100%;
}

.voucher-check {
	position: absolute;
	color: #1f3441;
	text-align: center;
	line-height: 30px;
	font-size: 22px;
	margin: 5px;
	background-color: white;
	border-radius: 15px;
	height: 30px;
	width: 30px;
}

.promotion-info {
	padding: 10px;
	border: 1px solid #8dd02e;
	margin-bottom: 10px;
}

.promotion-error {
	padding: 10px;
	border: 1px solid #dd1c24;
	margin-bottom: 10px;
}

.preview-link {
	color: white;
	display: inline-block;
	padding: 5px;
	font-weight: normal;
	margin: 0px;
}

.pointer {
	cursor: pointer;
}

.wheel, .wheel::after {
    border-radius: 50%;
    width: 50px;
    height: 50px;
}
.wheel {
    text-indent: -9999em;
    border-top: 5px solid rgba(33, 206, 200, .3);
    border-right: 5px solid #8dd02e;
    border-bottom: 5px solid #8dd02e;
    border-left: 5px solid #8dd02e;
    display: inline-block;
    transform: translateZ(0);
	animation: wheel 1.5s infinite linear;
}

@keyframes wheel {
	from {
		transform: rotate(0deg);
	}
  
	to {
		transform: rotate(360deg);
	}
  }
  