html{
	height:100%;
}
body{
	padding-top:72px;
	background:#F9F9F9;
	line-height:1.6;
	font-size:16px;
}
body.login{
	padding-top:0;
	height:100%;
	background: #FBFBFB;
	/* background:url(../images/bg.png);
	background-size:cover; */
}
body, input, select, textarea, a, button{
	font-family: 'Open Sans', sans-serif;
	color:#333;
}
h1{
	position:relative;
	color:#7C7C7C;
	font-size:14px;
	text-transform:uppercase;
	line-height:1;
}
h1.hr{
	padding-bottom:5px;
	border-bottom:solid 1px #E6E6E6;
}
h2{
	position:relative;
	color:#7C7C7C;
	font-size:13px;
	line-height:1;
}
ul{
	display: table;
	position:relative;
	left:25px;
	margin-right:25px;
	list-style:disc outside none;
}
ol{
	display: table;
	position:relative;
	left:25px;
	margin-right:25px;
	list-style:decimal outside none;
}
img[align="left"] {
	display: inline-block;
	margin-right: 20px;
}
.strike-through{
	text-decoration: line-through;
}
th, td{
	text-align:left;
	vertical-align:middle;
	font-weight:normal;
}
th{
	font-weight:bold;
}
* + th, * + td{
	padding-left:40px;
}
tr + tr > th,
tr + tr > td,
thead + tbody > tr > td{
	padding-top:25px;
}
tr + tr.same > th,
tr + tr.same > td,
thead + tbody > tr.same > td{
	padding-top:0px;
}
th.top, td.top{
	vertical-align:top;
}
th.center, td.center{
	text-align:center;
}
th.right, td.right{
	text-align:right;
}

.jqplot-table-legend td{
	padding:4px;
}
.jqplot-table-legend * + td{
	padding-left: 8px;
}
.jqplot-table-legend tr + tr > td{
	padding-top: 4px;
}
.jqplot-highlighter-tooltip, .jqplot-canvasOverlay-tooltip{
	background: #FFF;
	padding: 4px;
}
.jqplot-highlighter-tooltip tr + tr > td{
	padding-top: 0px;
}
.jqplot-highlighter-tooltip * + td{
	padding-left: 4px;
}

div.submit, td.submit{
	text-align:right;
}
table.data{
	width:100%;
}
	table.data > tbody > tr > *{
		position:relative;
		padding:10px 5px;
		z-index:1;
	}
	table.data > tbody > tr:hover > *{
		z-index:2;
	}
	table.data > thead > tr > *, table.data > thead + tbody > tr > *, table.data > tfoot > tr > *{
		padding:20px 35px;
	}
		table.data * > tr > td.sub_data{
			padding:0 0 0 70px;
			border-top:0;
		}
			.sub_data table.data tbody td{
				background:rgba(0,0,0,.015);
			}
			.sub_data > table.data > thead > tr > *{
				border-top:solid 1px #E6E6E6;
			}
			.sub_data > table.data > * > tr > *:first-child{
				border-left:solid 1px #E6E6E6;
			}
	table.data > thead > tr > th, table.data > tfoot > tr > td{
		background:rgba(0,0,0,.1);
		background:#e6e6e6;
	}
	table.data > tbody > tr > td{
		background:#FFF;
	}
	table.data > tbody > tr + tr > *{
		border-top:solid 1px #E6E6E6;
	}
	table.data > tbody > tr + tr.same > *{
		border-top:0;
		padding-top:0;
	}
table.data > tbody .strike-through td {
	text-decoration: line-through;
}
table.data > tbody .same td {
	padding-top:0;
}
table.data > tbody .faulty td {
	background-color: #E60000;
	color: #FFF;
}
table.data > tbody .faulty svg {
	fill: #FFF;
}
label{
	position:relative;
	cursor:pointer;
}
img{
	max-width:100%;
}
small{
	font-size:80%;
}
icon{
	fill:#333;
}
.icon--red{
	fill:#E60000;
}
.icon-disabled{
	position: relative;
	display: inline-block;
}
	.icon-disabled::before{
		content:'';
		position: absolute;
		top:50%;
		left:50%;
		width:1px;
		height: 130%;
		border-left:solid 1px #FFF;
		border-right:solid 1px #FFF;
		background:#E60000;
		translate: -50% -50%;
		rotate: 45deg;
	}
.invalid-value{
	color:#E60000;
	opacity: .8;
	font-style: italic;
}
bar{
	display:block;
	height:15px;
	border-radius:3px;
	background:rgba(0,0,0,.1);
}
	bar_line{
		float: left;
		height:100%;
		border-radius:3px;
		background:#CDDC39;
		font-size:9px;
		color:#000;
		text-align:left;
		overflow: hidden;
	}
	bar_line[blue]{
		background:#5bc3f0;
		color:#FFF;
	}
	bar_line[orange]{
		background:#e69d00;
		color:#FFF;
	}
	bar_line[red]{
		background:#E60000;
		color:#FFF;
	}
.color-label{
	display:inline-block;
	margin-right:10px;
	width:12px;
	height:12px;
}
.message{
	margin-bottom: 16px;
	padding:24px;
	border:solid 2px #f1f2fe;
	border-radius: 5px;
	background: #f1f2fe83;
	font-size: 90%;
	color:#666;
}
.error{
	margin-bottom:15px;
	color:#CD0025;
}
	tr.error td{
		padding-top:5px;
	}
.admin-only{
	padding:8px;
	background: #EEE;
	font-size: 90%;
	opacity: .7;
}
	.admin-only::before{
		content: '(admin only)';
		display: block;
		font-weight: bold;
		font-size: 80%;
		opacity: .5;
	}
.sticky-bottom{
	position: sticky;
	bottom:0;
	background-image: linear-gradient(to bottom, rgba(249, 249, 249, 0), rgba(249, 249, 249, .9) 32px);
    z-index: 10;
}
.tabs{
	/*margin-bottom:20px;*/
	overflow:hidden;
}
	.tabs a{
		float:left;
		padding:10px 15px 7px;
		/*background:#EEE;*/
		border-bottom:#FFFFFF 3px solid;
		/*border-radius:3px;*/
		text-decoration:none;
		font-weight:600;
	}
	.tabs a.current{
		border-color:#E60000;
		/*color:#FFF;*/
	}
	.tabs a + a{
		margin-left:10px;
	}
	.tabs a.right{
		float:right;
	}
	.tabs a.export{
		background:#E60000;
		border-color:#E60000;
		color:#FFF;
	}
.inactive{
	opacity:.25;
}
.indication-bullet {
	position: relative;
}
	.indication-bullet::after {
		content: '';
		position: absolute;
		top: 0;
		right: -10px;
		width: 8px;
		height: 8px;
		border-radius: 50%;
		background: #E60000;
	}
.options{
	float:right;
	white-space:nowrap;
}
	.options a,
	.options__option{
		display:inline-block;
		padding:9px;
		border-radius:3px;
	}
	.options a[disabled]{
		cursor:default;
	}
	.options a + a,
	.options__option + .options__option{
		margin-left:7px;
	}
		.options > a icon,
		.options__option__label icon{
			display:block;
			width:18px;
			height:18px;
			fill:#666;
		}
		.options a:hover icon,
		.options__option:hover > icon{
			fill:#000;
		}
		.options a[disabled] icon{
			fill:#999;
		}
		.options a i{
			position:absolute;
			top:2px;
			right:0;
			width:16px;
			height:16px;
			background:#E60000;
			border-radius:50%;
			line-height:16px;
			text-align:center;
			font-style:normal;
			font-size:10px;
			color:#FFF;
		}
	.options__dropdown{
		position: relative;
	}
		.options__dropdown:hover{
			z-index:2;
		}
		.options__dropdown__label{
			position: relative;
			transition: opacity .15s;
			z-index: 2;
		}
		.options__dropdown:hover .options__dropdown__label{
			opacity: .7;
		}
		.options__dropdown__content{
			position: absolute;
			top:0;
			left:0;
			min-width: 100%;
			border-top: solid 100% transparent;
			background: #FFF;
			box-shadow: 2px 2px 5px rgba(0,0,0,.3);
			pointer-events: none;
			opacity: 0;
			transition: opacity .15s;
		}
		.options__dropdown:hover .options__dropdown__content{
			opacity: 1;
			pointer-events: all;
		}
			.options__dropdown__content::before{
				content:"\00a0";
				display:block;
				padding-bottom:12px;
			}
			.options__dropdown__content a{
				float: none;
				display: grid;
				align-items: center;
				justify-content: left;
				grid-auto-flow: column;
				gap:4px;
			}
			.options__dropdown__content a:hover{
				background:#EEEEEE;
			}
			.options__dropdown__content a + a{
				margin-left: 0;
			}
				.options__dropdown__content__button{
					line-height: 18px;
					text-decoration: none;
				}
					.options__dropdown__content__button icon{
						margin-right: 4px;
						width:18px;
						height:18px;
					}
.label, .options a{
	position:relative;
}
span.label{
	display: inline-block;
}
	.label span, .options a span{
		position:absolute;
		left:50%;
		bottom:50%;
		padding:10px 17px;
		background:#6D8B9A;
		border-radius:3px;
		font-size:0px;
		color:#FFF;
		opacity:0;
		transform:translateX(-50%);
		transition:all .25s;
		pointer-events: none;
	}
	.label:hover span, .options a:hover span{
		bottom:100%;
		font-size:14px;
		opacity:1;
	}
		.label span:before, .options a span:before{
			content:"";
			position:absolute;
			top:100%;
			left:50%;
			margin:-11px 0 0 -8px;
			width:16px;
			height:16px;
			border-radius:3px;
			background:inherit;
			transform:rotate(45deg);
		}
.big-options{
	padding:0 5px;
}
	.big-options a, .big-options > span{
		float:left;
		padding:12px 20px 12px 15px;
		line-height:1;
		text-decoration:none;
		border-radius:3px;
		display: flex;
		gap: 16px;
	}
	.big-options a + a, .big-options > span + span,
	.big-options a + span, .big-options > span + a{
		margin-left:7px;
		/*border-left:solid 1px #E1E1E1;*/
	}
	.big-options a:hover{
		background:#EEEEEE;
	}
		.big-options a icon{
			width:18px;
			height:18px;
		}
	.big-options select {
		height: 40px;
	}
	.big-options button, .big-options .button {
		padding: 12px 15px;
	}
	.big-options__dropdown{
		position: relative;
	}
		.big-options__dropdown__label{
			position: relative;
			transition: opacity .15s;
			z-index: 2;
		}
		.big-options__dropdown:hover .big-options__dropdown__label{
			opacity: .7;
		}
			.big-options__dropdown__label icon{
				float:left;
				margin-right:15px;
				width:18px;
				height:18px;
			}
		.big-options__dropdown__content{
			position: absolute;
			top:0;
			left:0;
			min-width: 100%;
			border-top: solid 100% transparent;
			background: #FFF;
			box-shadow: 2px 2px 5px rgba(0,0,0,.3);
			pointer-events: none;
			opacity: 0;
			transition: opacity .15s;
		}
		.big-options__dropdown:hover .big-options__dropdown__content{
			opacity: 1;
			pointer-events: all;
		}
			.big-options__dropdown__content::before{
				content:"\00a0";
				display:block;
				padding:12px 20px 12px 15px;
			}
			.big-options__dropdown__content a{
				width: 100%;
				box-sizing: border-box;
				overflow: hidden;
			}
			.big-options__dropdown__content a + a{
				margin-left: 0;
			}
.form-field{
	display:inline-block;
	margin-bottom:10px;
	vertical-align: top;
}
	.form-field__name{
		display:block;
		font-size:80%;
	}
	.form-field small{
		display: block;
	}
label.checkbox{
	display: inline-block;
}
	label.checkbox input[type=checkbox]{
		position:absolute;
		top:0;
		left:0;
		opacity:.01;
	}
	label.checkbox span{
		display:inline-block;
		position:relative;
		padding-left:38px;
		line-height:30px;
	}
	label.checkbox input[type=checkbox][disabled] ~ span,
	label.checkbox input[type=checkbox][readonly] ~ span::before,
	label.checkbox input[type=checkbox][readonly] ~ span::after{
		opacity:.5;
		cursor:default;
	}
	label.checkbox input[type=checkbox][disabled] ~ span:after {
		border-color:#EEE;
	}
	label.checkbox:hover input[type=checkbox][disabled] ~ span:before, label.checkbox input[type=checkbox][disabled]:focus ~ span:before{
		border-color:#C2C2C2;
	}
	label.checkbox:hover input[type=checkbox][disabled] ~ span:after, label.checkbox input[type=checkbox][disabled]:focus ~ span:after{
		border-color:#EEE;
	}
	label.checkbox span:before{
		content:"";
		position:absolute;
		top:0;
		left:0;
		width:28px;
		height:28px;
		border-radius:4px;
		background:#FFF;
		border:solid 1px #C2C2C2;
	}
	label.checkbox span:after{
		content:"";
		position:absolute;
		top:6px;
		left:5px;
		width:14px;
		height:6px;
		border-left:solid 5px #EEE;
		border-bottom:solid 5px #EEE;
		transform:rotate(-45deg);
	}
	label.checkbox:hover span:before, label.checkbox input:focus ~ span:before{
		border-color:#333;
	}
	label.checkbox:hover span:after, label.checkbox input:focus ~ span:after{
		border-color:#DDD;
	}
	label.checkbox input:checked ~ span:after{
		border-color:#E60000;
	}
br + label.checkbox{
	margin-top:5px;
}
label.radio{
	display:inline-block;
}
br + label.radio{
	margin-top:5px;
}
	label.radio input[type=radio]{
		position:absolute;
		top:0;
		left:0;
		opacity:.01;
	}
	label.radio span{
		display:inline-block;
		position:relative;
		padding-left:38px;
		line-height:30px;
	}
	label.radio span:before{
		content:"";
		position:absolute;
		top:0;
		left:0;
		width:26px;
		height:26px;
		border-radius:50%;
		background:#FFF;
		border:solid 2px #C2C2C2;
	}
	label.radio span:after{
		content:"";
		position:absolute;
		top:8px;
		left:8px;
		width:14px;
		height:14px;
		border-radius:50%;
		background:#EEE;
	}
	label.radio:hover span:before, label.radio input:focus ~ span:before{
		border-color:#333;
	}
	label.radio:hover span:after, label.radio input:focus ~ span:after{
		background:#DDD;
	}
	label.radio input:checked ~ span:after{
		background:#E60000;
	}
	label.radio input[disabled] ~ span:before{
		border-color:#C2C2C2;
	}
	label.radio input[disabled] ~ span:after{
		background:#DDD;
	}
	label.radio input[disabled]:checked ~ span:after{
		background:#999;
	}
	label.radio input[disabled] ~ span{
		opacity:.5;
		cursor:default;
	}
input, select, button, textarea{
	font-size:16px;
}
input[type=text], input[type=number], input[type=tel], input[type=email], input[type=password], input[type=search], input[type=date], input[type=time], input[type=datetime-local], select, textarea{
	width:275px;
	height:45px;
	border:solid 1px #C2C2C2;
	border-radius:3px;
	padding:0 18px;
	border-radius:4px;
	box-sizing:border-box;
}
input[type=tel]{
	width:11em;
}
input[type=number]{
	width:90px !important;
	min-width:90px !important;
	max-width:90px !important;
}
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button{
	margin: 0;
	-webkit-appearance: none;
}
input[type=date]{
	width:190px;
}
input[type=time]{
	width:120px;
}
input[type=datetime-local]{
	width:230px;
}
textarea{
	width:100%;
	height:275px;
	padding-top:5px;
	padding-bottom:5px;
}
input.fit, select.fit{
	width:100%;
	min-width:120px;
}
input[type=text]:focus, input[type=email]:focus, input[type=password]:focus, input[type=search]:focus, input[type=datetime-local]:focus, select:focus, textarea:focus{
	border-color:#333333;
}
input.icon{
	padding-left:50px;
	background:no-repeat 18px center;
	background-size:20px;
}
input.icon_user{
	background-image:url(../images/user.svg);
}
input.icon_password{
	background-image:url(../images/lock.svg);
}
input[disabled], select[disabled], a.button[disabled], button[disabled]{
	background:#DDD;
	cursor: auto;
}
.toggle-container{
	display: inline-flex;
	gap: 8px;
	align-items: center;
}
	.toggle-container__label{
		font-size: 80%;
		opacity: .9;
	}
.toggle{
	display: inline-block;
	position: relative;
	width: 30px;
	height: 10px;
}
	.toggle__input{
		position: absolute;
		top:0;
		left:0;
		width: 0;
		height: 0;
		opacity: 0;
	}
	.toggle__handle{
		display: block;
		position: relative;
		width: 100%;
		height: 100%;
		background: #DDD;
		border-radius: 999px;
		transition: .15s;
	}
	.toggle__handle::before{
		content:'';
		position: absolute;
		top:-2px;
		left:0;
		height: calc(100% + 4px);
		aspect-ratio: 1;
		background: #666;
		border-radius: 50%;
		box-shadow: 2px 2px 5px rgba(0,0,0,.35);
		transition: inherit;
	}
	.toggle__input:checked ~ .toggle__handle{
		background: #E60000;
	}
	.toggle__input:checked ~ .toggle__handle::before{
		left:100%;
		translate: -100% 0;
		background: #E60000;
	}
button, .button, a.small-button{
	display:inline-block;
	min-width:200px;
	padding:15px;
	border:0;
	border-radius:4px;
	box-sizing:border-box;
	background:#333;
	font-weight:bold;
	color:#FFF;
	text-align:center;
	text-decoration:none;
	line-height:1;
	cursor:pointer;
}
button, .button.button--red {
	background:#E60000;
}
.button--checkbox{
	position: relative;
	padding-left:42px;
}
	.button--checkbox::before{
		content: '';
		position: absolute;
		top:50%;
		left:15px;
		width:12px;
		aspect-ratio: 1;
		border:solid 1px #FFF;
		border-radius: 2px;
		translate: 0 -50%;
	}
	.button--checkbox--checked::after{
		content: '';
		position: absolute;
		top:calc(50% - 1px);
		left:17px;
		width: 8px;
		height: 3px;
		border-left:solid 2px #FFF;
		border-bottom:solid 2px #FFF;
		border-radius: 2px;
		rotate: -45deg;
		translate: 0 -50%;
	}
.button--full-width{
	width:100%;
}
.button--processing{
	position: relative;
	overflow: hidden;
}
a.small-button{
	padding:10px 15px;
	min-width:0;
}
	a.small-button icon{
		float:left;
		margin-right:15px;
		width:18px;
		height:18px;
		fill:#FFF;
	}
	.button__process{
		display: none;
		position:absolute;
		left:0;
		bottom:0;
		width:100%;
		height:4px;
		background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.5) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.5) 75%, transparent 75%, transparent);
		background-size: 30px 30px;
		animation: barberpole 2s linear infinite;
	}
	.button--processing .button__process{
		display: block;
	}
		.button__process__bar{
			display: block;
			width:0%;
			height:100%;
			background:#333333;
			transition: .1s;
		}
.expandable{
	position:relative;
	top:1px;
	display:none;
	margin:0 5px 5px 0;
	width:30px;
	height:30px;
	border:solid 1px #C2C2C2;
	border-radius: 3px;
	box-sizing:border-box;
	vertical-align: middle;
}
.expandable-show{
	display:inline-block;
}
.expanded{

}
	.expandable::before, .expandable::after{
		content:"";
		position:absolute;
		top:50%;
		left:10%;
		margin-top:-2px;
		width:80%;
		height:4px;
		background:#DDD;
	}
	.expandable::after{
		transform:rotate(90deg);
	}
	.expanded::after{
		display:none;
	}
.wysiwyg_container {
	border: solid 1px #C2C2C2;
	border-radius: 4px;
}
div.wysiwyg {
	padding: 9px 18px;
	white-space: nowrap;
}
.ui-sortable {
	position: relative;
}
.sortable{

}
	.sortable > *{
		padding-left:20px;
	}
	.handle_parent, .sub-handle_parent{
		position:relative;
	}
	.handle, .sub-handle{
		position:absolute;
		top:4px;
		left:-20px;
		width:16px;
		height:6px;
		border-top:solid 2px #E6E6E6;
		border-bottom:solid 2px #E6E6E6;
		cursor:move;
	}
	.sortable > * > .handle{
		left:0px;
	}
	th.handle_parent .handle{
		top:50%;
		transform:translateY(-50%);
	}
		.handle:before, .sub-handle::before{
			content:"";
			position:absolute;
			top:50%;
			left:0;
			width:100%;
			border-top:inherit;
			transform:translateY(-50%);
		}
	tbody.sortable > tr > *.handle_parent{
		width:16px;
		min-width:16px;
		max-width:16px;
		padding-right:0;
	}
		tbody.sortable > tr > *.handle_parent .handle,
		tbody.sub-sortable > tr > *.sub-handle_parent .sub-handle{
			position:relative;
			top:0;
			left:0;
			margin:0 auto;
		}
iframe.preview{
	width:100%;
	height:300px;
	border:solid 2px #EEE;
}
icon{
	display:inline-block;
	width:32px;
	height:32px;
}
.small-icon{
	display: inline-block;
	vertical-align: middle;
}
	.small-icon--red icon{
		fill:#E60000;
	}
	.small-icon icon{
		width: 24px;
	}
.bouncetype icon {
	width: 18px;
	height: 18px;
	vertical-align: middle;
	fill: #666;
}
.bouncetype span {
	vertical-align: middle;
}
chart{
	display:block;
}
.search{
	display: grid;
	grid-template-columns: 1fr auto;
}
.search input[type=search]{
	width: 100%;
	border:none;
}
.chart{
	display:flex;
	flex-direction: column;
	overflow:hidden;
}
.chart + .chart{
	margin-top:20px;
	border-top:solid 2px #EEE;
	padding-top:20px;
}
.chart_small{
	flex-direction: row;
	min-height:150px;
}
	.chart_legend{
		position:relative;
		margin-top:30px;
		order:2;
	}
	.chart_small .chart_legend{
		margin-top:0;
		-webkit-flex: 1 1 auto;
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
	}
		.chart_legend table{
			margin:0 auto;
		}
		.chart_small .chart_legend table{
			margin:0 0 0 50px;
		}
		.chart_legend td{
			text-align:right;
		}
	.chart_stats{
		position:relative;
		margin:0 auto;
		max-width:300px;
		width:100%;
		max-height:300px;
		height:1%;
		overflow:hidden;
		order:1;
	}
	.chart_small .chart_stats{
		max-width:150px;
		max-height:150px;
	}
		.chart_stats:before{
			content:"";
			display:block;
			margin-top:100%;
		}
		.chart_stats chart{
			position:absolute;
			top:0;
			left:0;
			width:100%;
			height:100%;
		}
.calendar-date{
	position:relative;
	min-height:70px;
	padding-left:90px;
}
.calendar-date + .calendar-date{
	margin-top:20px;
	border-top:solid 2px #EEE;
	padding-top:20px;
}
	.calendar-date-day{
		position:absolute;
		left:0;
		width:90px;
		line-height:1;
		text-align:center;
	}
		.calendar-date-day-number{
			display:block;
			font-size:40px;
		}
		.calendar-date-day-month{
			display:block;
			color:#999999;
			text-transform:lowercase;
		}
		.calendar-date-day-year{
			display:block;
			padding-top:5px;
			font-size:50%;
		}
	.calendar-date-time{
		position:relative;
		font-size:12px;
		font-weight:600;
	}
	.calendar-date-event + .calendar-date-time{
		border-bottom:solid 2px #EEE;
	}
		.calendar-date-time span{
			display:inline-block;
			padding:3px 5px;
			background:#EEE;
		}
	.calendar-date-event{
		padding:5px;
	}
	.calendar-date-event + .calendar-date-event{
	}
.mail-moment-filter {
	margin-bottom: 16px;
	padding:12px;
	background:rgba(0,0,0,.05);
}
.mail-moment-filter b {
	display: block;
	position: relative;
	padding:0 24px 8px 0;
	margin-bottom: 8px;
	border-bottom: solid 1px rgba(0,0,0,.05);
}
.mail-moment-filter__remove{
	position: absolute;
	top:0;
	right:0;
	margin-left: 8px;
	cursor: pointer;
}
	.mail-moment-filter__remove icon {
		width:16px;
	}
dialog{
	border:none;
	max-width: 80%;
	padding: 32px;
	box-shadow: 5px 5px 5px rgba(0,0,0,.3);
	border-radius: 8px;
}
.popup{
	position:absolute;
	top:50%;
	left:50%;
	padding:50px;
	transform:translate(-50%, -50%);
	background:rgba(255,255,255, .5);
	background:#FFF;
	border:solid 1px #F1F2FE;
	border-radius: 3px;
	/* box-shadow:5px 5px 10px rgba(0,0,0,.1); */
	color:#000;
	font-weight:600;
}
	/* .popup input[type=text], .popup input[type=email], .popup input[type=password]{
		background-color:#FFF;
		border-width:0;
	} */
	/* .popup label.checkbox span:before{
		border-width:0;
	} */
	.popup_row + .popup_row{
		margin-top:25px;
	}
.clear{
	float:none !important;
	width:0;
	height:0;
	clear:both !important;
}
#header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:72px;
	background:#FFF;
	box-shadow:5px 5px 10px rgba(0,0,0,.1);
	z-index:5;
}

	#logo{

	}
		#logo img{
			vertical-align:middle;
		}
	#header a{
		float:right;
		padding:0 42px;
		border-left:solid 1px #F2F2F2;
		line-height:72px;
		font-weight:600;
		text-decoration:none;
		color:#FFF;
	}
		#header a icon{
			float:left;
			position:relative;
			top:20px;
			margin-right:25px;
			line-height:1;
			fill:#7F7F7F;
		}
	.header-event{
		position: relative;
	}
		@keyframes barberpole {
			from {
				background-position: 0 0;
			}
			to {
				background-position: 60px 30px;
			}
		}
		.header-event__background-job-progress{
			position: absolute;
			left:16px;
			right:16px;
			bottom:7px;
			height:5px;
			background:#DDD;
			border-radius: 2px;
		}
			.header-event__background-job-progress::before{
				content:"";
				position: absolute;
				top:0;
				left:0;
				width:100%;
				height:100%;
				background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.5) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.5) 75%, transparent 75%, transparent);
				background-size: 30px 30px;
				animation: barberpole 2s linear infinite;
				border-radius: 2px;
				z-index:2;
			}
			.header-event__background-job-progress__bar{
				display: block;
				height:100%;
				background: #E60000;
				border-radius: 2px;
				transition: .25s;
			}
			.header-event__background-job-progress__label{
				position: absolute;
				top:100%;
				left:50%;
				margin-top:0;
				padding:10px;
				border-radius: 5px;
				background:#6D8B9A;
				line-height: 1.1;
				font-size:80%;
				color:#FFF;
				white-space: nowrap;
				transform: translateX(-50%);
				opacity: 0;
				visibility: hidden;
				transition:visibility .25s 0s, margin-top .25s, opacity .25s;
			}
			.header-event:hover .header-event__background-job-progress__label{
				margin-top:10px;
				visibility: visible;
				opacity: 1;
				transition:visibility 0s, margin-top .25s, opacity .25s;
			}
				.header-event__background-job-progress__label::before{
					content:"";
					position: absolute;
					top:-5px;
					left:50%;
					width:12px;
					height:12px;
					border-radius: 2px;
					background:inherit;
					transform: translateX(-50%) rotate(45deg);
				}
	#error-button, #status-button{
		position:relative;
		background:#bb0022;
	}
	#status-button{
		background:#333;
	}
		#error-button:after, #status-button:after{
			content:"\00a0";
		}
		a#error-button icon, a#status-button icon{
			margin:0;
			fill:#FFF;
		}
		#error-button span, #status-button span{
			position:absolute;
			top:10px;
			right:30px;
			width:20px;
			height:20px;
			border-radius:50%;
			background:#FFF;
			color:#bb0022;
			line-height:20px;
			text-align:center;
			font-weight:bold;
			font-size:11px;
			opacity:.75;
		}
		#status-button span{
			color:#333;
		}
#menu{
	position:fixed;
	top:0;
	left:-275px;
	width:275px;
	height:100%;
	padding:247px 30px 0;
	box-sizing:border-box;
	background:#E60000;
	overflow:auto;
	transition:all .5s;
	z-index:4;
}
.menu #menu{
	left:0;
}
	#menu a{
		position:relative;
		display:block;
		padding:15px 20px 15px 50px;
		border-radius:3px;
		font-size:16px;
		font-weight:600;
		text-decoration:none;
		line-height:20px;
		color:#FFF;
	}
	#menu a:hover{
		background:rgba(0,0,0,.15);
	}
	#menu a.current{
		background:rgba(0,0,0,.35);
	}
	#menu a + a{
		margin-top:25px;
	}
		#menu a icon{
			position:absolute;
			top:13px;
			left:15px;
			width:24px;
			fill:#FFF;
		}
#error, #status, #event-offline{
	background:#CD0025;
	color:#FFF;
	padding:30px 60px;
	box-sizing:border-box;
	box-shadow:5px 5px 10px rgba(0,0,0,.1);
}
#status{
	background:#333;
}
#status a {
	color: #FFF;
}
#menu ~ #error, #menu ~ #status, #menu ~ #event-offline{
	padding-left:335px;
}
#error.show, #status.show{
	position:absolute;
	top:72px;
	left:0;
	width:100%;
	z-index:2;
	transition:all .5s;
}
#error.hide, #status.hide{
	transform:translateY(calc(-100% + 10px));
}
#event-offline{
	background:#92DCE5;
	font-weight:bold;
}
	#event-offline a{
		color:#FFF;
	}
#container{
	position:relative;
	padding:40px 60px;
	padding:20px;
	box-sizing:border-box;
	z-index:1;
}
.login #container{
	height:100%;
}
	.block{
		border-radius:3px;
		background:#FFF;
		box-shadow:5px 5px 10px rgba(0,0,0,.1);
	}
	.block--bar{
		display: flex;
		gap: 16px;
	}
		.block--bar .clear{
			display: none;
		}
	 h1 + .block{
		margin-top:20px;
	 }
	.block + .block, .block + h1, .margin-top{
		margin-top:35px;
	}
	.block__error{
		margin:0;
		padding:32px 80px;
		background:#CD0025;
		color:#FFF;
	}
	.block h1, .block h2{
		margin-bottom:30px;
		padding:30px 0px;
		border-bottom:solid 1px #E6E6E6;
	}
	.block-search{
		display: grid;
		width: 100%;
		align-items: center;
	}
	.block-left{
		float:left;
		padding-right:5px;
		border-right:solid 1px #E1E1E1;
	}
	.block-right{
		float:right;
		position: relative;
		display: flex;
		align-items: center;
	}
		.block-right::before{
			content:'';
			position: absolute;
			top:0;
			left:-12px;
			height: 100%;
			border-left:solid 1px #E1E1E1;
		}
		.block-right.no-border::before{
			display: none;
		}
	.block--bar .block-right{
		white-space: nowrap;
	}
	.block-form{
		padding-bottom:50px;
	}
		.block-form h1, .block-form h2{
			padding:30px 80px;
		}
		.block-form table{

		}
			.block-form table > tbody > tr > *:first-child{
				padding-left:80px;
			}
			.block-form table > tbody > tr > *{
				padding-right:80px;
			}
				.block-form table table > tbody > tr > *:first-child{
					padding-left:0;
				}
				.block-form table table > tbody > tr > *{
					padding-right:0;
				}
	.small-margin{
		margin:10px;
	}
	.full-height{
		height:calc(100vh - 112px);
	}
	.small-padding{
		padding:10px;
	}
	.padding{
		padding:30px;
	}
		.padding h2:first-child{
			padding-top:0;
		}
		.block-right + .padding {
			padding-top: 0;
			clear: both;
		}
		.block-left + .padding {
			padding-top: 0;
			clear: both;
		}
	.columns-2{
	}
		.columns-2 > *{
			float:left;
			margin-top: 35px;
			box-sizing:border-box;
		}
		.columns-2 > *:first-child, .columns-2 > .clear{
			margin-top: 0;
		}
	@media all and (max-width: 700px){
		.columns-2{
			display:flex;
			flex-direction: column;
		}
			.columns-2 > *{
				width:100%;
			}
	}
	@media all and (min-width: 701px){
		.columns-2 > *{
			margin-left:4%;
			width:48%;
		}
		.columns-2 > *:nth-child(-n+2){
			margin-top:0;
		}
		.columns-2 > *:nth-child(1n+3){
			margin-top:35px;
		}
		.columns-2 > *:nth-child(2n+1){
			margin-left:0;
			clear:both;
		}
		.columns-2 .columns-2 > *{
			margin-top:35px;
			margin-left: 0;
			width:100%;
		}
		.columns-2 .columns-2 > *:first-child{
			margin-top:0;
		}
	}
	@media all and (min-width: 1700px){
		.columns-2 .columns-2 > *{
			margin-left: 4%;
			width:48%;
		}
		.columns-2 .columns-2 > *:nth-child(-n+2){
			margin-top:0;
		}
		.columns-2 .columns-2 > *:nth-child(1n+3){
			margin-top:35px;
		}
		.columns-2 .columns-2 > *:nth-child(2n+1){
			margin-left:0;
			clear:both;
		}
	}
	.columns-3{
	}
		.columns-3 > *{
			float:left;
			box-sizing:border-box;
		}
	.columns-4{

	}
		.columns-4 > *{
			float:left;
			box-sizing:border-box;
		}
icons{
	display:none;
}
input[type=number].one_time_password {
	width: 120px!important;
	max-width: 120px!important;
}
/* login */
.login-container{
	display: grid;
	align-items: center;
	min-height: 100%;
}
	@media (max-width: 800px){
		.login-container{
			padding: 80px 0 40px;
		}
	}
	.login-container__body{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
		@media (max-width: 800px){
			.login-container__body{
				display: flex;
				flex-wrap: wrap;
				justify-content: center;
				gap: 40px;
			}
		}
	.login-container__option{
		display: grid;
		justify-content: center;
		align-items: start;
	}
		.login-container__option__container{
			max-width: 375px;
			width: 100%;
			padding:50px;
			background:#FFF;
			border:solid 1px #F1F2FE;
			border-radius: 3px;
			color:#000;
			box-sizing: border-box;
		}
		.login-container__option__container input[type=email],
		.login-container__option__container input[type=password]{
			max-width: 275px;
			width: 100%;
		}
.login-single-sign-on-logos{
	display: flex;
	flex-wrap: wrap;
	margin-top: 24px;
	gap: 8px;
}
	.login-single-sign-on-logos__logo{
		width:48px;
	}
/* customers */
#customers{

}
	#customers a{
		text-decoration:none;
		font-size:18px;
		font-weight:600;
	}
/* events */
.label-tag{
	position: relative;
	display:inline-block;
	padding:0 7px;
	border-width:2px;
	border-style: solid;
	border-radius:10px;
	line-height:19px;
	font-size:70%;
	letter-spacing:1px;
	font-weight:600;
}
	.label-tag--black-border{
		color:#333;
		border-color: #333;
	}
	.label-tag--black{
		color:#FFF;
		background:#333;
		border-color: #333;
	}
	.label-tag--green-border{
		color:#CDDC39;
		border-color: #CDDC39;
	}
	.label-tag--red-border{
		color:#CD0025;
		border-color: #CD0025;
	}
	.label-tag--line-through{
		text-decoration: line-through;
	}
.label-text{
	font-size:70%;
}
.events{

}
	.events a, .small-block {
		position:relative;
		text-decoration:none;
		font-size:18px;
		font-weight:600;
	}
	.events a{
		padding-right:100px;
	}
		.events a chart, .events a icon, .small-block chart {
			position:absolute;
			top:30px;
			right:20px;
			width:75px;
			height:75px;
		}
		.event-occupied{
			position:absolute;
			top:30px;
			right:20px;
			width:50px;
			font-size:80%;
			background:#EEE;
			text-align: center;
		}
		.events a b{
			display:block;
			position:relative;
			z-index:2;
		}
		.event-date{
			display:block;
			position:relative;
			z-index:2;
		}
		.event-complete{
			position:relative;
			display:inline-block;
			width:19px;
			height:19px;
			border:solid 2px #CDDC39;
			border-radius:50%;
			vertical-align:middle;
		}
			.event-complete:after{
				content:"";
				position:absolute;
				top:3px;
				left:3px;
				width:10px;
				height:5px;
				border-left:solid 4px #CDDC39;
				border-bottom:solid 4px #CDDC39;
				transform:rotate(-45deg);
			}
		.event-live{

		}
		.event-not-live{

		}
		.event-online-date{
			font-size:70%;
		}
		.event-full{
			display:inline-block;
			padding:0 7px;
			border:solid 2px #333;
			border-radius:10px;
			line-height:19px;
			background-color:#333;
			color:#FFF;
			font-size:70%;
			letter-spacing:1px;
			font-weight:600;
		}
.event-languages__language {
	position: relative;
	padding:8px 32px 8px 8px;
	background: #F6F6F6;
}
.event-languages__language:nth-child(2n){
	background: #EEE;
}
.event-languages__language:last-child{
	margin-bottom: 24px;
}

	.event-languages__language__remove {
		position: absolute;
		top:0;
		right:0;
		width:16px;
		height:16px;
		padding:8px;
		cursor: pointer;
	}
		.event-languages__language__remove icon{
			width:16px;
			height:16px;
		}
.project-manager {
	position: relative;
	padding:8px 32px 8px 8px;
}
	.project-manager__remove {
		position: absolute;
		top:50%;
		right:0;
		width:22px;
		height:22px;
		padding:8px;
		cursor: pointer;
		translate: 0% -50%;
	}
		.project-manager__remove icon{
			width:22px;
			height:22px;
		}
/* dashboard */
.dashboard-labels{
	float:right;
}
.dashboard-date-seat{
	position:relative;
}
	.dashboard-date-seat b{
		display:block;
	}
	.dashboard-date-seat span{
		font-size:90%;
	}
	.dashboard-date-seat bar{
		display:inline-block;
		margin-right:5px;
		width:100px;
		vertical-align:middle;
	}
/* Pagination */
.pagination{
	display:block;
	left:0;
	margin-bottom:20px;
	margin-right:0;
	list-style:none;
	text-align:center;
	overflow:hidden;
}
	.pagination li{
		display:inline-block;
		border:solid 1px #E6F0F3;
		text-align:center;
		line-height:45px;
	}
	.pagination li:hover{
		background:#EEE;
	}
	.pagination li.active{
		background:#E60000;
		color:#FFF;
	}
	.pagination li.disabled{
		border-color:#FFF;
	}
	.pagination li + li{
		border-left:0;
	}
	.pagination li:first-child, .pagination li:last-child{
		border:0;
	}
	.pagination li:first-child:hover, .pagination li:last-child:hover{
		background:transparent;
		font-weight:bold;
	}
		.pagination li > *{
			display:block;
			min-width:35px;
			padding:0 5px;
			text-decoration:none;
		}
.no-border {
	border: none;
}
/* progress */
.progress{
	position:relative;
	display:flex;
    justify-content:space-between;
	margin-top:20px;
	padding-bottom:45px;
	overflow:hidden;
}
	.progress::before{
		content:"";
		position:absolute;
		top:12px;
		left:0;
		width:100%;
		height:6px;
		background:#CCC;
	}
	.progress > div{
		position:relative;
		width:32px;
		height:32px;
		border-radius:50%;
		background:#E60000;
		z-index:3;
	}
	.progress > div.current{
		position:static;
		z-index:2;
	}
		.progress > div.current::before{
			content:"";
			position:absolute;
			top:12px;
			width:100%;
			height:6px;
			background:#E60000;
			transform:translateX(-100%);
			z-index:2;
		}
	.progress > div.current ~ div{
		background:#CCC;
	}
		.progress > div b{
			position:absolute;
			top:16px;
			margin-left:16px;
			transform:translate(-50%, -50%);
			color:#FFF;
			z-index:3;
		}
		.progress > div span{
			position:absolute;
			top:37px;
			margin-left:16px;
			transform:translateX(-50%);
			white-space:nowrap;
			line-height:1;
			font-size:80%;
		}
		.progress > div:first-child span{
			left:0;
			margin-left:0;
			transform:none;
		}
		.progress > div:last-child span{
			left:auto;
			right:0;
			transform:none;
		}
/* guestlist */
.guestlist-field-order-dorp-area{
	min-height:100px;
	padding:10px;
	border:solid 1px rgba(0,0,0,.25);
	border-radius:3px;
}
	.guestlist-field-order-dorp-area > div{
		position:relative;
		border:solid 1px rgba(0,0,0,.25);
		border-radius:3px;
		cursor:move;
	}
	.guestlist-field-order-dorp-area > div:hover{
		background:rgba(0,0,0,.05);
	}
	.guestlist-field-order-dorp-area > div + div{
		margin-top:5px;
	}
		.guestlist-field-order-dorp-area > div > span{
			display:block;
			padding:2px 5px;
		}
		.guestlist-field-order-dorp-area > div > input + span{
			position:absolute;
			top:0;
			left:0;
			padding-top:0;
			padding-bottom:0;
			font-weight:bold;
			font-size:80%;
			transform: translateY(-50%);
			background:#FFF;
		}
		.guestlist-field-order-dorp-area > div > input{
			margin-top:10px;
			border:0;
			padding:0 5px;
			width:100%;
			background:#F5F5F5;
			height:2em;
		}
.guestlist-import-columns{
	padding-bottom:20px;
	overflow:auto;
}
	.guestlist-import-column{
		height:100%;
		padding:20px;
		border:solid 1px #EEE;
		border-radius:3px;
	}
	.guestlist-import-column[status=skip]{
		background:#F6F6F6;
		opacity:.5;
	}
	.guestlist-import-column[status=add]{
		border-color:#5bc3f0;
		background:rgba(91,195,240, .05);
	}
	.guestlist-import-column[status=auto]{
		border-color:#ffd600;
		background:rgba(255,214,0,.05);
	}
	.guestlist-import-column[status=set]{
		border-color:#00cc00;
		background:rgba(0,204,0,.1);
	}
		.guestlist-import-column-name{
			margin-bottom:5px;
		}
		.guestlist-import-column-name[readonly]{
			padding-left:0;
			border-color:transparent;
			background:transparent;
			pointer-events:none;
		}
		.guestlist-import-column-info{
			margin-top:8px;
			font-size:80%;
		}
		.guestlist-import-values{
			border:solid 1px rgba(0,0,0,.25);
			border-bottom:0;
			font-size:90%;
		}
			.guestlist-import-values div{
				padding:2px 5px;
				border-bottom:solid 1px rgba(0,0,0,.25);
			}
				.guestlist-import-values div:empty::before{
					content:"-";
					opacity:.15;
				}
.guestlist-form-comment{
	display: block;
	margin-top: 4px;
	padding:0 8px;
	font-size:80%;
	opacity: .8;
}
.guestlist-form-comment:empty{
	display:none;
}
@media all and (max-width: 500px){
	/*
	table, thead, tbody, tfoot, tr, th, td{
		display:block;
		padding-left:0;
		text-align:left !important;
	}
	tr + tr{
		padding-top:10px;
	}
		tr + tr th, tr + tr td{
			padding-top:0;
		}*/
}
@media all and (max-width: 700px){
	.columns-3, .column-4{
		display:flex;
		flex-direction: column;
	}
		.columns-3 > *, .columns-4 > *{
			width:100%;
		}
}
@media all and (min-width: 701px) and (max-width: 1300px){
	.columns-4 > *{
		margin-left:4%;
		width:48%;
	}
	.columns-4 > *:nth-child(-n+2){
		margin-top:0;
	}
	.columns-4 > *:nth-child(1n+3){
		margin-top:35px;
	}
	.columns-4 > *:nth-child(2n+1){
		margin-left:0;
		clear:both;
	}
}
@media all and (min-width: 1301px) and (max-width: 1600px){
	.columns-4 > *{
		margin-left:3%;
		width:31%;
	}
	.columns-4 > *:nth-child(-n+3){
		margin-top:0;
	}
	.columns-4 > *:nth-child(1n+4){
		margin-top:35px;
	}
	.columns-4 > *:nth-child(3n+1){
		margin-left:0;
		clear:both;
	}
}
@media all and (max-width: 1024px){
	a#header-user, a#header-mainboard{
		position:fixed;
		top:97px;
		left:-245px;
		width:145px;
		padding:15px 20px 15px 50px;
		border-left:0px;
		border-radius:3px;
		font-size:16px;
		font-weight:600;
		color:#FFF;
		line-height:20px;
		transition:left .5s;
	}
	.menu a#header-user, .menu a#header-mainboard{
		left:30px;
	}
		a#header-user icon, a#header-mainboard icon{
			position:absolute;
			top:13px;
			left:15px;
			width:24px;
			fill:#FFF;
		}
	a#header-event{
		display:none;
	}
	a#header-mainboard{
		top:172px;
	}
	a#header-user:hover, a#header-mainboard:hover{
		background:rgba(0,0,0,.15);
	}
	a#header-user.current, a#header-mainboard.current{
		background:rgba(0,0,0,.35);
	}
	#menu-button{
		position:absolute;
		top:25px;
		left:25px;
		width:32px;
		height:4px;
		background:#7F7F7F;
		border-top:solid 9px #FFF;
		border-bottom:solid 9px #FFF;
		cursor:pointer;
		transition:all .5s;
	}
		#menu-button:before, #menu-button:after{
			content:"";
			position:absolute;
			top:-9px;
			left:0;
			width:100%;
			height:100%;
			background:#7F7F7F;
			transition:all .5s;
		}
		#menu-button:after{
			top:9px;
		}
	.menu #menu-button{
		background:#FFF;
		transform:rotate(135deg);
	}
		.menu #menu-button:before, .menu #menu-button:after{
			top:0;
			transform:rotate(90deg);
		}
		.menu #menu-button:after{
			transform:rotate(180deg);
		}
}
@media all and (min-width: 1025px){
	#header{
		z-index:3;
	}
		#header a{
			color:#7F7F7F;
		}
			#header a icon{
				margin-right:25px;
			}
	#menu{
		left:0;
		padding-top:97px;
	}
	#menu ~ #container{
		padding-left:335px;
	}
}
@media all and (min-width: 1300px){
	.columns-3 > *{
		margin-left:3%;
		width:31%;
	}
	.columns-3 > .column-span-2{
		width:65%;
	}
	.columns-3 > *:nth-child(-n+3){
		margin-top:0;
	}
	.columns-3 > *:nth-child(1n+4){
		margin-top:35px;
	}
	.columns-3 > *:nth-child(3n+1){
		margin-left:0;
		clear:both;
	}
}
@media all and (min-width: 1600px){
	.columns-4 > *{
		margin-left:4%;
		width:22%;
	}
	.columns-4 > *:nth-child(-n+4){
		margin-top:0;
	}
	.columns-4 > *:nth-child(4n+1){
		margin-left:0;
		clear:both;
	}
}
.small-block {

}
	.small-block th {
		font-weight: 600;
	}
	.small-block tr + tr > th, .small-block tr + tr > td {
		padding-top: 0;
	}
.margin-bottom {
	margin-bottom: 35px;
}

.popup-header {
	color: white;
	font-size: 36px;
	text-transform: inherit;
}

.table-text-center {
	text-align: center;
}
.customer-table {
	margin-top: 10px;
	margin-left: 50px;
	margin-bottom: 10px;
}
.customer-table tr + tr > th, .customer-table tr + tr > td, .customer-table thead + tbody > tr > td {
	padding-top: 10px;
}
