html, body, h1, h2, h3, main, .struct {
	margin: 0;
	padding: 0;
}

.struct, .struct li, .struct dt, .struct dd {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
fieldset {
	margin: 0;
	padding: 0;
	border: none;
	display: block;
}
html {
	font-size: 	var(--title-size-base);
}
main {
	overflow: hidden;
}
svg {
	vertical-align: middle	;
	fill: var(--text-color);
}
body {
	min-height: 100vh;
	color: var(--text-color);
	font-family: var(--main-font);
	font-weight: var(--font-weight-normal);
	font-size: 	var(--font-size);
	background: var(--white);
	line-height: 1.4;
}


h1, h2, h3, .title, .h1 {
	font-family: var(--title-font);
	font-weight: var(--title-weight);
}
h1, .h1 {
	font-size: 160%;
}
h2 {
	font-size: 120%;
	margin-bottom: 1em;
}
h3 {
	font-size: 110%;
}
p {
	margin: 0 0 1em 0;	
}
.hidden {
	display: none;	
}
button.link {
	display: inline;
	border: none;
	background: none;	
}
button.link,
a {
	cursor: pointer;
	color: var(--link-color);
	text-decoration: underline;
}
button.link:hover,
a:hover {
	color: inherit;	
}
a.button,
.button {
	cursor: pointer;
	display: inline-block;
	height: var(--button-height);
	line-height: var(--button-height);
	background: var(--button-color);
	color: var(--button-text-color);
	padding: 0 20px;
	border: none;
	border-radius: var(--button-radius);
	font-size: 	var(--font-size);
	text-decoration: none;
	box-sizing: border-box;
	text-align: center;
	position: relative;
}
.button.cancel {
	background: var(--gray);	
}

.button.licon {
	padding-left: 40px;	
}
.button.ricon {
	padding-right: 40px;
}
.button svg {
	fill: var(--button-text-color); 
	position: absolute;
	top: 50%;
	left: 14px;
	transform: translate(0,-50%);
}
.button.ricon svg {
	right: 14px;
	left: auto;
}

.button.wide {
	display: block;
	width: 100%;
}
.button:hover {
	background: var(--button-hover-color);
	color: var(--button-hover-text-color);
}
pre {
	font-size: 14px;	
}

.lightbox {
	padding: 30px 40px;
	border-radius: var(--mega-radius);	
	background: var(--lightbox-bg);
	color: var(--lightbox-color);
	margin-bottom: 30px;
}
.lightbox .actionlist li {
	padding: 10px 0;
	border-top: 1px solid var(--gray);	
}
.lightbox .actionlist li:first-child {
	border: none;	
}
.lightbox .actionlist a {
	display: block;
	text-decoration: none;
	position: relative;
	padding-left: 30px;
}
.lightbox .actionlist a svg:first-child {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
	
}

.tabmenu {
	display: flex;
	border-bottom: 1px solid var(--gray);
	margin-bottom: 1em;
}
.tabmenu li {
	margin-left: 20px;
	position: relative;
	padding-bottom: 10px;
}
.tabmenu li.active a {
	color: var(--text-color);	
}
.tabmenu li.active:after {
	content: "";
	background: var(--link-color);
	position: absolute;
	left: -2px;
	right: -2px;
	bottom: -2px;
	height: 3px;
	border-radius: 1.5px;
}
.tabmenu li:first-child {
	margin-left: 0;
}	
.tabmenu a {
	text-decoration: none;
	color: var(--text-lighter);
	display: block;
	height: 30px;
	line-height: 30px;
}
#debugpane {
	padding: 20px;
	font-size: 13px;
	overflow-x: auto;
	color: #EEE;
	background: #000;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: none;
}
#debugpane:target {
	display: block;	
}
#debugpane .closepane {
	position: absolute;
	top: 10px;
	right: 10px;
}
#debugpane .closepane:before,
#debugpane .closepane:after {
	content: "";
	display: block;
	position: absolute;
	width: 3px;
	height: 12px;
	left: 50%;
	top: 50%;
	background: var(--button-text-color);
	transform: translate(-50%,-50%) rotate(45deg);
}
#debugpane .closepane:before {
	transform: translate(-50%,-50%) rotate(-45deg);
}
#debugpane .closepane:hover:before,
#debugpane .closepane:hover:after { 
	background: var(--button-hover-text-color);
}

.miniwrap {
	background: #FFF;
	border: 1px solid var(--gray);
	max-width: 400px;
	margin: 0 auto;
	margin-top: 100px;
	padding: 40px;
	border-radius: var(--big-radius);
}


/**
 * Forms section
 */
.grouptabs {
	border-bottom: 1px solid var(--gray);	
	height: 24px;
	padding-bottom: 10px;
	margin-bottom: 30px;
}
.grouptabs h2 {
	display: inline-block;
	font-family: var(--main-font);
	font-weight: var(--font-weight-normal);
	font-size: 	var(--font-size);
	color: var(--text-lighter);
	height: 24px;
	line-height: 24px;
	margin: 0; padding: 0;
	position: relative;
	margin-right: 30px;
	cursor: pointer;
}
.grouptabs h2.active {
	color: var(--text-color);	
}
.grouptabs h2.verror:after,
.grouptabs h2.active:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -13px;
	height: 4px;
	left: 0;
	right: 0;
	background: var(--brand-color-1);
	border-radius: 2px;
}
.grouptabs h2.verror:after {
	background: var(--error-red);
}
.langselector {
	position: relative;
	text-align: right;
	height: 19px;
	line-height: 19px;
}
.langselector label {
	display: inline-block;
	margin-left: 1px;
	border: 1px solid transparent;
	height: 15px;
	line-height: 15px;
	padding: 1px;
	cursor: pointer;
	border-radius: var(--small-radius);
	opacity: 0.6;
	vertical-align: top;
	
}
.langselector label.verror {
	background: var(--error-red);
	border-color:  var(--error-red);	
}
.langselector label.verror:after {
	content: "!";
	font-weight: var(--font-weight-bold);
	color: var(--white);	
}
.langselector label svg {
	vertical-align: top;	
}
.langselector label span {
	display: none;
	position: absolute;
	right: 0;
	top: 100%;
	padding-top: 4px;
	color: var(--text-lighter);
}
form .itl .lang { display: none; }
 
select,
textarea,
input[type=text],input[type=password],input[type=number],input[type=email]  {
	margin: 0;
	padding: 0 10px;
	font-family: var(--main-font);
	font-weight: var(--font-weight-normal);
	font-size: 	var(--font-size);
 
	color: var(--input-color);
	border: 1px solid var(--gray);
	display: block;
	height: 2.5em;
	line-height: 2.5em;
	width: 100%;
	box-sizing: border-box;
	border-radius: var(--small-radius);
}
textarea {
	line-height: 20px;
	padding: 10px;
	height: 122px;
}
textarea:focus,
input:focus {
	color: var(--input-focus-color);
	border-color: var(--input-focus-color);
	outline: none;
}

.fieldset legend {
	display: block;
	float: none;
	position: relative;
	width: 100%;
	font-family: var(--title-font);
	font-weight: var(--title-weight);
	margin: 0;
	padding: 20px 0 0 
}
.fieldset + .fieldset legend {
	margin-top: 20px;
	border-top: 2px dashed var(--gray);
}
.fieldset label {
	display: block;
	padding: 10px 0 5px;	
}


.selectbox.withicon {
	width: calc(100% - 40px);
	margin-left: 40px;
}
.selectbox.withicon svg {
	width: 25px;
	height: 25px;
	position: absolute;
	left: -40px;
	top: 5px;
}
.selectbox {
	width: 100%;
	height: 2.5em;
	line-height: calc(2.5em - 2px);
	border: 1px solid var(--gray);
	font-size: 	var(--font-size);
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	vertical-align: bottom;
	cursor: pointer;
	background: #FFF;
	border-radius: var(--small-radius);
}
.selectbox:before {
	content: "";
	position: absolute;
	display: block;
	top: 0;
	right: 0;
	bottom: 0;
	width: 40px;
	background: var(--brand-lighter);
	border-left: 1px solid var(--gray);
}
.selectbox:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 16px;
	width: 7px;
	height: 7px;
	border: 2px solid  var(--input-focus-color);;
	border-width: 2px 2px 0 0;
	display: block;
	transform: translate(0,-50%) rotate(135deg);
}

.selectbox select:-moz-focusring {
	color:transparent;
	text-shadow:0 0 0 var(--input-color);
}
form .selectbox select:-moz-focusring * {
	color: var(--input-color);
	text-shadow:none;
}
/** and in other browsers */
form .selectbox select:option {
	outline: none;	
}
/* remove the styling of the normal select box completely */
form .selectbox select {
	display: block;
	font-family: inherit;
	font-size: 	var(--font-size);
	outline: none;
	position: relative;
	width: 100%;
	height: 100%;
	line-height: calc(2.5em - 2px);
	border: 0;
	padding: 0 50px 0 20px;
	background: transparent;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}




.verror input {
	border: 1px solid var(--error-red);	
}
.verror .errors li:before {
	content: "! ";	
}
.verror .errors li {
	font-weight: var(--font-weight-bold);
	color: var(--error-red);
}

p.buttons {
	text-align: center;	
	padding: 30px 0 0 0;
}
 ul.sortable + p.buttons {
	 padding: 0;
}

label.bool {
	display: block;
	position: relative;
	padding: 10px 0 9px 24px;
	cursor: pointer;
}
label.boolplus {
	display: block;
	position: relative;
	padding: 0 0 0 24px;
	cursor: pointer;
	line-height: 40px;
}
label.boolplus:after {
	content: "";
	display: block;
	clear: both;	
}
label.bool.cbonly {
	padding: 0;
	height: 14px;
}
label.bool.inline {
	display: inline-block;
	vertical-align: middle;
}
label.bool span:empty {
	display: inline-block;	
}
label.boolplus span:before,
label.bool span:before {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	position: absolute;
	left: 0;
	top: 12px;
	border: 1px solid var(--gray);
	border-radius: var(--small-radius);
}
label.bool.cbonly input:checked ~ span:after,
label.bool.cbonly span:before {
	top: 0;	
}
label.boolplus input:checked ~ span:before,
label.bool input:checked ~ span:before {
	border-color: var(--link-color);
	background: var(--link-color);
}
label.boolplus input:checked ~ span:after,
label.bool input:checked ~ span:after {
	content: "";
	position: absolute;
	left: 2px;
	top: 13px;
	width: 11px;
	height: 7px;
	border: 2px solid var(--white);
	border-width: 0 0 2px 2px;
	transform: rotate(-45deg);
}
label.boolplus input,
label.bool input {
	display: none;
}

label.boolplus .plus {
	width: 200px;
	display: inline-block;
	float: right;
	visibility: hidden;
}
label.boolplus input:checked ~ .plus {
	visibility: visible;	
}


.checklistset dt {
	display: block;
	
	margin: 5px 0 0 0;
	padding: 0 0 5px 0;
}
.checklistset dt label {
	font-weight: var(--font-weight-bold);
}
.checklistset dd {
	color: var(--text-lighter);
	border-bottom: 1px solid var(--gray);
	padding-bottom: 20px;	
}



.modal,
.overlay {
	background: rgba(0,0,0,0.5);	
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.ovlwrap {
	position: fixed;
	top: 20px;
	left: 20px;
	right: 20px;
	bottom: 20px;
	background: var(--white);
	border: 1px solid var(--gray);
	border-radius: var(--big-radius);
	overflow: hidden;
}
.ovlmain {
	position: absolute;
	top: 40px;
	left: 0;
	right: 0;
	bottom: 0;
}
.modalhead,
.ovlhead {
	border-bottom: 1px solid var(--gray);
	height: 39px;
	position: relative;
}
.ovlhead h2 {
	text-align: center;
	line-height: 39px;
}

.ovlclose {
	width: 30px;
	height: 30px;
	position: absolute;
	right: 5px;
	top: 5px;
	cursor: pointer;
}	
.ovlclose:before, .ovlclose:after {
	content: "";
	display: block;
	width: 4px;
	height: 20px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -10px 0 0 -2px;
	border-radius: 2px;
	background: var(--text-lighter);
	transform: rotate(-45deg);	
}
.ovlclose:after {
	transform: rotate(45deg);	
}
.ovlclose:hover:before, .ovlclose:hover:after {
	background: var(--text-color);
}

.modal {
	overflow: auto;
	padding: 100px 0;
}
.modalwrap {
	top: 50px;
	margin: 0 auto;
	width: calc(100% - 40px);
	max-width: 720px;
	
	background: var(--white);
	border: 1px solid var(--gray);
	border-radius: var(--big-radius);
	overflow: hidden;
}
.modalhead h2 {
	line-height: 39px;
	margin-right: 40px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	padding-left: 20px;	
}
.modalmain {
	padding: 20px;
}

/**
 * application response
 */
.widthwrap {
	max-width: 1600px;
	margin: 0 auto;	
	position: relative;
}
#app {
	position: relative;
	
}

#app .head {
	line-height: 50px;
	padding: 30px 0;
}	
#app .head h1, #app .head .h1 {
	display: inline-block;
	margin-right: 1em;
}
#app .head h1 {
	border-bottom: 2px solid var(--link-color);
	
}
#app .head a {
	color: var(--text-lighter);
	text-decoration: none;	
}
	
#mainmenu {
	width: 260px;
	position: fixed;
	left: 0;
	top: 0;
	height: 100vh;
	min-height: 600px;
	background: var(--white);
	float: left;
}
@media (min-width: 1600px) {
	#mainmenu {
		left: 50%;
		transform: translate(-800px, 0);
		
	}
}
@media (max-height: 600px) {
	#mainmenu {
		position: absolute;
		height: 100%;
	}

}
#mainmenu .topmenu {
	padding: 80px 20px 120px 20px;
		
}
#mainmenu a {
	position: relative;
	font-weight: var(--font-weight-normal);
	color: var(--text-color);
	text-decoration: none;
	display: block;
	padding: 15px 10px 15px 44px;
	border-radius: 25px;
	line-height: 20px;
	cursor: pointer;
}
#mainmenu a.active {
	background: var(--brand-lighter);
	color: var(--brand-lighter-text);
}
#mainmenu a svg {
	position: absolute;
	top: 50%;
	left: 14px;
	transform: translate(0,-50%);
	margin-right: 10px;
	fill: var(--brand-dark);
	
}
#mainmenu a.active svg {
	fill: var(--brand-lighter-text);
}
#main {
	margin: 0 0 0 260px;
	padding: 0 40px 0 40px;
	background: var(--light-gray);
	border-radius: var(--mega-radius) 0 0  var(--mega-radius);
	min-height: 100vh;
}

#topmenu {
	position: absolute;
	top: 0;
	right: 40px;
	height: 50px;
	line-height: 50px;
	padding: 30px 0 15px 0;
	display: flex;
	align-items: center;
}

#topmenu #parkform{
	margin-right: 20px;
}
#topmenu #parkform select{
	border-radius: 5px;
}

#topmenu label {
	cursor: pointer;
	padding: 0 20px 0 0;
	display: inline-block;
}

#topmenu label::before, #topmenu label::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	margin-top: 7px;
	right: 5px;
	height: 3px;
	width: 7px;
	border-radius: 1px;
	background: var(--text-color);
	transform: translate(2px, 0) rotate(-40deg);
	transition: translate 0.3s ease;
}
#topmenu label::before {
	transform: translate(-2px, 0) rotate(40deg);
}
#topmenu label img,
#topmenu label span {
	width: 50px;
	height: 50px;
	display: inline-block;
	text-align: center;
	border-radius: 50%;
	background: var(--gray);		
}
#topmenu .dropdown {
	display: none;
	background: #FFF;
	position: absolute;
	margin-top: 1px;
	top: 100%;
	right: 0;
	width: 200px;
	padding: 20px;
	border-radius: var(--big-radius);
}
#toggleusermenu:checked ~ .dropdown {
	display: block;	
}

#toggleusermenu:checked ~ label::before {
	transform: translate(-2px, 0) rotate(-40deg);
}
#topmenu #toggleusermenu:checked ~ label::after {
	transform: translate(2px, 0) rotate(40deg);
}




table.overview {
	width: 100%;
	border-spacing: 0;
}

table.overview th, table.overview td {
	line-height: 20px;
	padding: 15px 0;
	border-bottom: 1px solid var(--gray);
}
table.overview th {
	color: var(--text-lighter);
	font-weight: var(--font-weight-normal);
	text-align: left;
	padding-bottom: 25px;
	
}
table.overview td {
}
table.overview tbody tr:last-child td {
	border: none;	
}
table.overview a.delete:hover svg {
	fill: var(--error-red);	
}
	
table.overview .c {
	text-align: center;	
}
table.overview .r {
	text-align: right;	
}
table.overview tbody.formrow tr:last-child td {
	border-top: 1px solid var(--text-lighter);
	padding-right: 10px;
}
table.overview .formrow td:last-child {
	padding-right: 0;	
}

table.overview tr td select{
	width: 90%;
}


.rowmanaged.editonly .add {
	display: none;	
}
tr[data-href]:hover td, tr[data-href]:hover th {
	background: var(--row-hover);
	cursor: pointer;
}


/**
 * General overlay
 */
#msgContainer .message {
	top: 20px;
	left: 50%;
	z-index: 100;
	transform: translate(-50%,0);
	width: 450px;
	position: fixed;
	padding: 20px;
	border: 2px solid var(--gray);
	background: var(--white);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.2);
	border-radius: var(--big-radius);
	transition: all 0.4s;
}
#msgContainer .message.succes {
	border: 2px solid var(--msg-success);
	color: var(--msg-success);;
}
#msgContainer .message.error {
	border:  2px solid var(--error-red);
	color: var(--error-red);;
}
#msgContainer .message.warning {
	border: 2px solid var(--msg-warning);
	color: var(--msg-warning);
}
#msgContainer .message .close {
	position: absolute;
	z-index: 100;
	top: 4px;
	right: 4px;
	display: block;
	width: 16px;
	height: 16px;
	border: 1px solid var(--gray);
	border-radius: var(--small-radius);
	cursor: pointer;
}
#msgContainer .message .close::before, #msgContainer .message .close::after {
	content: "";
	width: 2px;
	height: 10px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -5px 0 0 -1px;
	display: block;
	transform: rotate(-45deg);
	background: var(--gray);
}
#msgContainer .message .close::after {
	transform: rotate(45deg);
}
#msgContainer .message .close:hover {
	border-color: var(--dark-gray);
}
#msgContainer .message .close:hover::before, #msgContainer .message .close:hover::after {
	background: var(--dark-gray);
}

#msgContainer .message h5 {
	margin: 0;
	padding: 0 0 10px 0;
	font-family: var(--main-font);
	font-weight: var(--font-weight-bold);
	font-size: 	var(--font-size);
	line-height: 1.2;
	padding-bottom: 10px;
	
}
#msgContainer .message.closed {
	top: -30vh;
}


.texteditor {
	border: 1px solid var(--gray);
	border-radius: var(--small-radius);
	
}
.texteditor .buttonbar {
	height: 40px;
	line-height: 40px;
	display: flex;
}
.texteditor .buttonbar .separator {
	display: block;
	border: 1px solid var(--gray);
	height: 16px;
	margin: 12px 4px;
}
.texteditor .buttonbar a {
	width: 36px;
	height: 36px;
	line-height: 36px;
	margin: 1px;
	border: 1px solid transparent;
	text-align: center;
	border-radius: var(--big-radius);
	color: var(--text-color);
	text-decoration: none;
	display: block;
	position: relative;	
}
.texteditor .buttonbar a:hover {
	background: var(--brand-color);
}
.texteditor .buttonbar a svg {
	position: absolute;
	fill: var(--text-color);
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.texteditor textarea {
	height: 400px;
	padding: 10px;
	border: none;
	border-top: 1px solid var(--gray);
	border-radius: 0;
	line-height: 1.2;
	font-family: var(--mono-font);
	resize: none;
	
}

.fileinput {
	position: relative;
	margin-right: 50px;
	border: 2px dashed var(--gray);
	display: inline-block;
	vertical-align: top;
}
.fileinput .preview {
	min-width: 200px;
	height: 90px;	
	padding: 5px 5px 5px 32px;
	line-heightL 24px;
}
.fileinput > svg {
	position: absolute;
	top: 5px;
	left: 5px;	
}


.imageinput {
	position: relative;
	margin-right: 50px;
	border: 2px dashed var(--gray);
	display: inline-block;
	vertical-align: top;
}
.fileinput ul.struct,
.gallery .gimage ul.struct,
.imageinput ul.struct {
	width: 30px;
	position: absolute;
	right: -45px;
	top: -2px;
	text-align: center;
	background: var(--gray);
	padding: 5px;
	border-radius: var(--big-radius);
}
.fileinput ul.struct svg,
.gallery .gimage ul.struct svg,
.imageinput ul.struct svg {
	width: 18px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.fileinput ul.struct li,
.gallery .gimage ul.struct li,
.imageinput ul.struct li {
	border-radius: var(--big-radius);
	width: 30px;
	height: 30px;
	position: relative;
	cursor: pointer;
}
.fileinput ul.struct li:hover,
.gallery .gimage ul.struct li:hover,
.imageinput ul.struct li:hover {
	background: var(--light-gray);
	
}
.fileinput.dragging,
.imageinput.dragging {
	border: 2px dashed var(--button-color);
}
.fileinput .dragging .preview a,
.imageinput.dragging .preview img {
	opacity: 0.7;
}
.fileinput label.droptarget,
.imageinput label.droptarget {
	position: absolute;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	top: 0;
	left: 0;	
}
.galleryinput .droptarget:hover span,
.imageinput label:hover span {
	display: block;
}
.fileinput.dragging label:hover span,
.galleryinput.dragging .droptarget:hover span,
.imageinput.dragging label:hover span {
	display: none;
}
.fileinput label span,
.galleryinput .droptarget span,
.imageinput label span {
	white-space: nowrap;
	display: none;
	position: absolute;
	bottom: 10px;
	left: 50%;
	transform: translate(-50%,0);
}
.fileinput label span {
	display: block;	
}
.imageinput .preview {
	position: relative;	
}
.imageinput .preview img {
	vertical-align: top;	
}

.galleryinput .droptarget:before,
.galleryinput .droptarget:after,
.imageinput .preview:empty:before,
.imageinput .preview:empty:after {
	content: "";
	display: block;
	width: 4px;
	height: 24px;
	border-radius: 2px;
	top: 50%;
	left: 50%;
	position: absolute;
	background: var(--button-color);
	transform: translate(-50%,-50%);
}
.galleryinput .droptarget:before,
.imageinput .preview:empty:before {
	width: 24px;
	height: 4px;
}


.galleryinput .gimage,
.galleryinput .droptarget {
	float: left;
	position: relative;
	padding: 0;
	margin: 0 50px 20px 0;
	border: 2px dashed var(--gray);
	display: inline-block;
	vertical-align: top;
}
.galleryinput {
	margin-right: -50px;	
}

.notification{
	background: var(--brand-lighter);
	color: var(--text-color);
	display: block;
	line-height: 50px;
	border-radius: 25px;
	padding: 0 10px 0 44px;
	text-decoration: none;
	margin-bottom: 20px;

}


/**
 * Drag-sort
 */
 ul.sortable {
 	margin: 40px 0;
 	padding: 0;
 	list-style-type: none;
 }
 li.dr {
 	margin: 0;
 	padding: 0;
 	position: relative;
 	list-style-type: none;
 	margin-bottom: 6px;
 	min-height: 50px;
 	border-radius: 14px 25px 25px 14px;
	border: 1px solid var(--light-gray);
	background: var(--lightbox-bg);;

 }
 
 li.dr .linner {
 	margin: 0 0 0 30px;
 	padding: 0 10px 0 5px;
 }
 
 li.dr .draghandle {
 	background: var(--brand-lighter);;
 	display: block;
 	height: 100%;
 	width: 28px;
 	position: absolute;
 	top: 0;
 	left: 0;
 	text-align: center;
 	cursor: move;
 	border-radius: 14px;
}
li.dr .draghandle:after,
li.dr .draghandle:before {
	content: "...";
	display: block;
	text-align: center;
	line-height: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -2px;
	transform: translate(-50%,-50%);
	color: var(--text-color);
}
li.dr .draghandle:after {
	margin-top: -6px;
}

.listlinkact {
	display: flex;
	line-height: 20px;
	padding: 15px;	
}
.listlinkact > a {
	flex-grow: 1;
}
.listlinkact .actions {
	flex-grow: 0;	
}

.filter details {
	position: relative;
	border-radius: 10px;
	margin-left: 20px;
	align-items: center;
	background: #f5f5f5;
	padding: 0 20px;
	line-height: 40px;
}

.filter details .type_modal{
	position: absolute;
	background: white;
	padding: 20px;
	border-radius: 10px;
	top: 50px;
	right: 0;
	z-index: 100;
	list-style: none;
	margin: 0;
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
	width: 210px;

}

.filter details .type_modal li label{
	display: flex;
}

.filter details .type_modal li label input{
	margin-right: 10px;
}

.main .loading{
	opacity: 0.3;
}

.main .loading:before {
	content: "";
	float: left;
	display: block;
	border: 6px solid #f3f3f3;
	border-radius: 50%;
	border-top: 6px solid #3498db;
	width: 24px;
	height: 24px;
	-webkit-animation: spin 2s linear infinite;
	animation: spin 2s linear infinite;
}

/* Safari */
@-webkit-keyframes spin {
	0% { -webkit-transform: rotate(0deg); }
	100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

.filter details#when {
	padding:15px;
	width: 300px;
}

.filter details p{
	margin:0;
}

.filter details.accordion {
	display: block;
	list-style: none;
	border: 1px solid var(--gray);
	padding: 10px;
	margin: 0 0 20px 0;
	border-radius: var(--small-radius);
}
.filter details summary {
	display: block;
	list-style: '';
	cursor: pointer;
	position: relative;

}
.filter details.accordion[open] summary {
	border-bottom: 1px solid var(--gray);
}
.filter details.accordion summary h2, details.accordion summary h3 {
	padding: 0;
	margin: 0;
}
.filter details.accordion .body {
	padding: 0;
	margin-top: 20px;
}
.filter details summary h3{
	margin-bottom: 10px;
}
.filter details summary h3,
.filter details summary p{
	line-height: 18px;
}

.head .filter{
	display: flex;
	flex-direction: row;
	position: relative;
	align-items: center;
	justify-content: flex-end;
	background: white;
	border-radius: var(--mega-radius);
	padding: 10px;
}

.filter .filter_item{
	display: none;
	margin-left: 10px;
}

.filter select{
	width: 300px;
	border-radius: 10px;
}

.filter #year-select{
	width: 200px;
}

.filter details .container{
	display: grid;
	grid-template-columns: 140px 1fr;
}

.filter details .container aside label{
	display: block;

}

.filter .placeholder{
	color: var(--current-period);
}
.filter .compare_placeholder{
	color: var(--previous-period);
	margin-top: 10px;
	font-size: 13px;
}

.filter details .body {
	background: #FFF;
	width: 680px;
	position: absolute;
	top: 78px;
	right: 0;
	border-radius: 8px;
	padding: 20px;
	z-index: 10000;
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
}

.drw button {
	width: 36px;
	height: 36px;
	text-align: center;
	border: none;
	background: transparent;
	cursor: pointer;
	border-radius: 18px;
}
.drw nav {
	position: relative;
}
.drw nav button {
	position: absolute;

	top: 0;
	left: 0;
}
.drw nav button:before {
	content: "";
	width: 10px;
	height: 10px;
	display: block;
	border: 2px solid var(--title-color);
	border-width: 0 0  2px 2px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) rotate(45deg);
}
.drw nav button.next:before {
	border-width: 2px 2px 0 0;
}
.drw nav button.next {
	left: auto;
	right: 0;
}
.drw .cholder {
	display: grid;
	grid-template-columns: 1fr 1fr
}
.drw table {
	border-collapse: collapse;
}
.drw .calendar h3 {
	text-align: center;
	line-height: 38px;
}
.drw th {
	font-weight: 500;
	text-align: center;
}
.drw .selected {
	background: var(--light-gray);
}
.drw table .start {
	background: linear-gradient(90deg, transparent 0, transparent 50%, var(--light-gray) 50%);
}
.drw table .end {
	background: linear-gradient(90deg, var(--light-gray) 0, var(--light-gray) 50%, transparent 50%);
}

.drw table .end button,
.drw table .start button {
	color: #FFF;
	background: var(--link-color);
}

@media (max-width: 600px) {
	.drw .cholder {
		grid-template-columns: 1fr;
	}
}

.tooltip_benchmark{
	background: var(--benchmark);
	padding:10px;
	border-radius: 5px;
	float: left;
}

.tooltip_current{
	padding:10px;
	border-radius: 5px;
	float: left;
}

/* The switch - the box around the slider */
.switch {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 34px;
}

/* Hide default HTML checkbox */
.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

/* The slider */
#topmenu label.switch{
	cursor: pointer;
	padding: 0;
	display: block;
}

#topmenu label .slider{
	width: unset;
	height: unset;
	display: inline-block;
	text-align: center;
	border-radius: 34px;
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	-webkit-transition: .4s;
	transition: .4s;
}

#topmenu .switch:before,
#topmenu .switch:after{
	display: none;
}

#topmenu .slider:before {
	position: absolute;
	content: "";
	height: 26px;
	width: 26px;
	left: 4px;
	bottom: 4px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
	border-radius: 50%;

}

input:checked + .slider {
	background-color: #8bff6b!important;
}

input:focus + .slider {
	box-shadow: 0 0 1px #8bff6b !important;
}

input:checked + .slider:before {
	-webkit-transform: translateX(26px);
	-ms-transform: translateX(26px);
	transform: translateX(26px);
}

.togglecontainer{
	display: flex;
	align-items: center;
	background: var(--benchmark);
	border-radius: 37px;
	padding: 0 10px 0 20px;
	margin-right: 20px;
	color: white;
}
.togglecontainer label{
	margin-left: 10px;
}

.benchmark{
	background: var(--benchmark);
	color: white;
}


.main .column-2{
	display: flex;
}







