/*noprefix*/

/*
/// Global {
*/

html, body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body * {
	box-sizing: border-box;
}

body.has-modal {
	overflow: hidden;
}

.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, Opera and Firefox */
}

.simple-container {
	width: 100%;
	padding: 1em;
}

.form-container:not(.plain) {
	padding: 1em;
	border: 1px solid #ccc;
	border-radius: 0.5em;
	background: #fafafa;
}

/*
/// }
*/

/*
/// Input Fields {
*/

input.form-input, textarea.form-input, select.form-input,
.form-container input, .form-container textarea, .form-container select {
	display: block;
	width: 100%;
	margin-bottom: 0.5rem;
	padding: 0.375rem 0.75rem;
	border: 1px solid #ced4da;
	border-radius: 0.25rem;
	background-color: white;
	background-clip: padding-box;
	color: #495057;
	font-size: 1rem;
	line-height: 1.5;
	transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

label.form-input, .form-container label {
	display: inline-block;
	margin-bottom: .5rem;
}

/*
/// }
*/

/*
/// Buttons {
*/

.buttons {
	display: block;
	text-align: center;
}

button.form-input, .buttons button, .form-container button, .button {
	display: inline-block;
	width: unset;
	margin: 0.5em;
	padding: 0.5em;
	border: 1px solid rgba(0,0,0,0.1);
	border-radius: 0.5em;
	//box-shadow: #606060 1px 1px 10px 0px;
	background: cornflowerblue;
	color: white;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
	-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, Opera and Firefox */
}

.window button.form-input, .window .buttons button, .window .button {
	min-width: 4em;
	padding: 0.5em;
	font-size: 0.9em;
	background: #005b94;
}

form button.form-input, .form-container button, form .button, .form-container .button {
	padding: 0.5em 0.5em;
}

button.form-input:hover, .buttons button:hover, .form-container button:hover, .button:hover {
	color: white;
	text-decoration: none;
}

button.form-input.browse, .buttons button.browse, .window .buttons button.browse, .form-container button.browse,
.button.browse, .window .button.browse {
	background: darkslategray;
}

button.form-input.ok, .buttons button.ok, .window .buttons button.ok, .form-container button.ok,
.button.ok, .window .button.ok {
	background: darkgreen;
}

button.form-input.attention, .buttons button.attention, .window .buttons button.attention, .form-container button.attention,
.button.attention, .window .button.attention {
	background: crimson;
}

button.form-input.delete, .buttons button.delete, .window .buttons button.delete, .form-container button.delete,
.button.delete, .window .button.delete {
	background: darkred;
}

button.form-input.cancel, .buttons button.cancel, .window .buttons button.cancel, .form-container button.cancel,
.button.cancel, .window .button.cancel {
	background: dimgrey;
}

button.form-input:disabled, .buttons button:disabled, .form-container button:disabled,
.button:disabled, .button.disabled {
	background: darkgrey !important;
	color: #606060 !important;
	text-shadow: 1px 1px 1px white !important;
	cursor: default !important;
}

/*
/// }
*/

/*
/// Checkboxes {
*/

.form-input[type="checkbox"] {
	display: none;
}
.form-input[type="checkbox"] + label:before {
	content: "\f204";
	font-weight: 900;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right: 0.3em;
}
.form-input[type="checkbox"]:checked + label:before {
	content: "\f205";
}
.form-input[type="checkbox"] + label:hover:before {
	color: #4778d9;
}
.form-input[type="checkbox"]:disabled + label,
.form-input[type="checkbox"]:disabled + label:before {
	color: #999;
}

/*
/// }
*/

/*
/// Checkmark {
*/

.checkmark {
	display: inline-block;
}

.checkmark > .checkmark-body {
	position: relative;
	padding: 0.2em;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid rgba(0,128,0,0.2);
	border-radius: 50%;
	background: white;
	overflow: hidden;
	vertical-align: middle;
	/*font-size: 1.5em;*/
	cursor: pointer;
	transition: border 0.3s ease;
}

.checkmark > .checkmark-body > i.icon {
	color: rgba(0,128,0,0.2);
	transition: color 0.3s ease;
}

.checkmark > .checkmark-body > span {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 100%;
	background: rgba(119,255,111,0.44);
}

.checkmark:hover > .checkmark-body {
	border: 2px solid rgba(0,128,0,0.5);
}
.checkmark:not(.inactive):hover > .checkmark-body > i.icon {
	color: rgba(0,128,0,0.5);
}

.checkmark.checked > .checkmark-body {
	border-color: #008000;
	background: #008000;
}
.checkmark.checked > .checkmark-body > i.icon,
.checkmark.checked:hover > .checkmark-body > i.icon {
	color: white;
}
.checkmark.checked > .checkmark-body > span {
	display: none;
}

.checkmark.checked:hover > .checkmark-body {
	border-color: rgba(0,128,0,0.8);
	background: rgba(0,128,0,0.8);
}
.checkmark.checked:hover > .checkmark-body > i.icon {
}

.checkmark.inactive > .checkmark-body {
	border-color: transparent;
	cursor: default;
}
.checkmark.checked.inactive > .checkmark-body {
	border-color: transparent;
	background: transparent;
}
.checkmark.checked.inactive > .checkmark-body > i.icon {
	color: #008000;
}

/*
/// }
*/

/*
/// Loader {
*/

.action-loading {
	position: relative;
	pointer-events: none !important;
}
.action-loading::after {
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    position: absolute;
    top: -2px;
    left: -2px;
    background: white;
    content: " ";
    opacity: 0.5;
    pointer-events: none;
    z-index: 1;
}
.load-next, .action-loading {
	text-align: center;
	cursor: pointer;
}
.action-loading::before {
	content: '\f078';
	font-weight: 900;
	font-family: "Font Awesome 5 Free";
	display: inline-block;
	padding: 0 0.2em;
}
.action-loading::before {
	content: '\f110';
	animation: fa-spin 1s infinite steps(8);
}

.cssloader, .cssloader:before, .cssloader:after {
	background: black;
	-webkit-animation: load1 1s infinite ease-in-out;
	animation: load1 1s infinite ease-in-out;
	width: 1em;
	height: 4em;
}

.cssloader {
	color: black;
	text-indent: -9999em;
	margin: 32px auto;
	position: relative;
	font-size: 11px;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

.cssloader:before, .cssloader:after {
	position: absolute;
	top: 0;
	content: '';
}

.cssloader:before {
	left: -1.5em;
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.cssloader:after {
	left: 1.5em;
}

@-webkit-keyframes load1 {
	0%, 80%, 100% {
		box-shadow: 0 0 black;
		height: 4em;
	}
	40% {
		box-shadow: 0 -2em black;
		height: 5em;
	}
}

@keyframes load1 {
	0%, 80%, 100% {
		box-shadow: 0 0 black;
		height: 4em;
	}
	40% {
		box-shadow: 0 -2em black;
		height: 5em;
	}
}

/*
/// }
*/

/*
/// List Item {
*/

.list-item {
	border: 1px solid #ddd;
	font-size: 1em;
}

.list-item .list-item {
	border-left: none;
	border-right: none;
	border-top: none;
}

.list-item .list-item:last-child {
	border-bottom-width: 0;
}

.list-item:focus {
	outline: none;
}

.list-item button.form-input, .list-item .button {
	box-shadow: inset rgba(0,0,0,0.4) -3px -3px 5px -5px;
	background: #379bda;
}

.list-item button.form-input:hover, .list-item .button:hover {
	/*background: #3c89b9;*/
	filter: brightness(130%);
}

.list-item > .list-item-title {
	padding: 0.5em;
/*	border-bottom: 1px solid #ddd;*/
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
}

.list-item.collapsed > .list-item-title {
	border-bottom: none;
}

.list-item .list-item > .list-item-title {
	border-bottom: none;
}

/*
.list-item > .list-item-title.header {
	background: aliceblue;
}
*/

.list-item.selected > .list-item-title {
	background: #f0f8ff; /* not yellow because we show quickform input as yellow */
}

.list-item > .list-item-title > * {
	margin: 0 0.5em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.list-item > .list-item-title .fill {
	flex: 1 1;
	margin: 0;
	min-width: 0;
}

.list-item > .list-item-title > h1,
.list-item > .list-item-title > h2,
.list-item > .list-item-title > h3 {
	padding: 0.356rem 0;
	min-width: 5em;
}

.list-item > .list-item-title > .list-item-date {
	flex-shrink: 10;
	min-width: 5em;
}

.list-item > .list-item-title .list-item-count {
	min-width: 1.5em;
	padding: 0.2em;
	border: 1px solid #b3cbe0;
	border-radius: 40%;
	background: #d0e9ff;
	text-align: center;
	text-overflow: unset;
	font-size: 0.9em;
	font-weight: bold;
}
.list-item > .list-item-title .list-item-count:empty {
	display: none;
}

.list-item .list-item-action {
	color: #3c89b9;
	text-decoration: none;
	cursor: pointer;
}
.pushed {
    padding: 2px;
    background: linear-gradient(135deg, #ccc, #eee);
    box-shadow: inset 0px 1px 3px #aaa, inset 1px -2px 3px #aaa;
    border: 1px solid #aaa;
    border-radius: 4px;
}
.list-item-title .list-item-action {
	font-size: 0.9em;
	margin: 0 0.5em 0 0;
}

.list-item .list-item > .list-item-title .list-item-action.collapse {
	display: inline-block;
}
.list-item > .list-item-title .list-item-action.collapse {
	/* hide because we can click header - notice for item-in-item we do show as per rule above */
	display: none;
	order: 100;
	min-width: 0.6em;
	transition-property: transform;
	transition-duration: 0.3s;
}
.list-item > .list-item-title .list-item-action.collapse:after {
	content: "\f0d8"; /*fa-caret-up*/
	font-weight: 900;
	font-family: "Font Awesome 5 Free" !important;
}
.list-item.collapsed > .list-item-title .list-item-action.collapse {
	transform: rotate(-180deg);
}

.list-item .list-item-action.explore {
	order: 101;
	margin-right: 0;
	margin-top: 0.1em;
	width: 1em;
	text-align: center;
	font-size: 1.5em;
}
.list-item .list-item-action.explore:after {
	content: "\f054"; /*fa-chevron-right*/
	font-weight: 900;
	font-family: "Font Awesome 5 Free" !important;
}

.list-item > .list-item-body {
}

.list-item.collapsed > .list-item-body {
	display: none;
}

.list-item.compact > .list-item-title:not(.header) {
	padding: 0.55em;
}

.list-item.compact > .list-item-title > * {
	margin: 0 0.3em;
}

.list-item.compact > .list-item-title > h1,
.list-item.compact > .list-item-title > h2,
.list-item.compact > .list-item-title > h3 {
	padding: 0;
}

.list-item.compact > .list-item-title .list-item-count {
	padding: 0.1em;
	border-radius: 0.6em;
}

/*
/// }
*/

/*
/// Window {
*/

.modal {
	z-index: 499;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	background: rgba(0,0,0,0.4);
	backdrop-filter: blur(2px);
}
.modal.maximized {
	overflow-y: auto;
}

.window {
	z-index: 500;
	position: absolute;
	min-width: 360px;
	max-width: calc(100vw - 20px);
	max-height: 100vh;
	display: flex;
	flex-flow: column nowrap;
	align-items: stretch;
	justify-content: stretch;
	box-sizing: border-box;
	overflow: hidden;
	box-shadow: rgba(0,0,0,0.4) 0 0 20px;
	border-radius: 0.5em;
	background: white;
}

.window.centered {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.window.maximized {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transform: none;
	max-width: unset;
	max-height: unset;
	width: 100%;
	height: 100%;
	border-radius: 0;
}

@media screen and (max-width: 380px) {
	.window {
		min-width: unset;
	}
}

.modal > .window, .modal > .window.centered {
	position: static;
	margin: auto;
}

.window > .title {
	flex-shrink: 0;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	padding: 0.5em;
	overflow: hidden;
	background-color: #00395d;
	color: white;
	font-size: 1.2em;
	font-weight: 500;
}

.window > .title > span {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.window > .title > span > i {
	margin-right: 0.4em;
}

.window > .title .button {
	min-width: 1.5em;
	margin: 0.1em;
	padding: 0.2em;
	box-shadow: none;
	border: 1px solid black;
	border-bottom-color: rgba(0,0,0,0.2);
	border-right-color: rgba(0,0,0,0.2);
	border-top-color: rgba(255,255,255,0.2);
	border-left-color: rgba(255,255,255,0.2);
	border-radius: 0.4em;
	background: none;
	color: white;
	font-size: 0.8em;
	font-weight: normal;
}

.window > .title .button.close {
	/*background: darkred;*/
}

.window > .body {
	flex-shrink: 1;
	position: relative;
	padding: 1em;
	overflow: auto;
	box-shadow: inset rgba(0,0,0,0.2) 0 0 20px 0;
	background: white;
	color: #606060;
	font-size: 1em;
	font-weight: normal;
}

.window.maximized > .body {
	flex-grow: 1;
	display: flex;
	flex-flow: column nowrap;
	align-items: stretch;
	justify-content: stretch;
}

.window > .body > .question {
	min-height: 2em;
}

.window > .body > .error-message {
	min-width: 16em;
	color: black;
}
.window > .body > .error-message > .error-icon {
	float: left;
}
.window > .body > .error-message > .error-icon::before {
	content: "\f071"; /*fa-exclamation-triangle*/
	font-weight: 900;
	font-family: "Font Awesome 5 Free";
	font-size: 3em;
	letter-spacing: 0.1em;
	color: red;
}

.window > .buttons {
	flex-shrink: 0;
	padding: 0.5em;
	text-align: right;
}

/*
/// }
*/

/*
/// Popup Window {
*/

.window.popup {
	position: fixed;
	min-width: 200px;
	max-width: 80%;
	font-size: 0.8rem;
}

.window.popup > .title {
	padding: 0.2em;
}

.window.popup > .title > span {
	text-align: center;
	flex-grow: 1;
}

.window.popup > .title .button.close {
	background: transparent;
}

.window.popup > .buttons {
	padding: 0;
	box-shadow: inset rgba(0,0,0,0.2) 0 0 30px 0;
	text-align: center;
}

/*
/// }
*/

/*
/// Layout {
*/

div.layout {
	min-height: 100%;
	box-sizing: border-box;
	margin: 0;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: stretch;
	align-content: center;
	background: white;
}

div.layout img {
	max-width: 100%;
	object-fit: contain;
}

/*
/// }
*/

/*
/// Breadcrumb Menu {
*/

.breadcrumb {
	display: block;
	padding-right: 2px;
	overflow: hidden;
	white-space: nowrap;
	font-family: "open sans", sans-serif;
	line-height: 1em;
	text-align: left;
}

.breadcrumb > ul {
	display: flex;
	flex-flow: row-reverse nowrap;
	justify-content: flex-end;
	list-style: none;
	margin: 0;
	padding: 0;
}

.breadcrumb > ul > li {
	flex: 0 4 auto;
	min-width: 3em;
	margin: 0;
}

.breadcrumb > ul > li.active {
	flex-shrink: 1;
}

.breadcrumb > ul > li i {
	margin-right: 0.4em;
	transform: scale(1.4);
}

.breadcrumb > ul > li > a, .breadcrumb > ul > li > span {
	display: block;
	margin-left: -20px;
	padding: 1em calc(1em + 10px) 1em calc(1em + 20px);
	border-radius: 0 2em 2em 0;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	background-color: #43618e;
	color: white;
	font-family: "open sans", sans-serif;
	font-size: 0.9em;
	font-weight: normal;
	text-decoration: none;
}

/*.breadcrumb > ul > li:first-child > a, .breadcrumb > ul > li:first-child > span {
	box-shadow: none;
}*/

.breadcrumb > ul > li:last-child i {
	margin-right: 0;
}

.breadcrumb > ul > li:last-child > a, .breadcrumb > ul > li:last-child > span {
	background-color: #344763;
}

.breadcrumb > ul > li.active > a, .breadcrumb > ul > li.active > span {
	background-color: #EEF5FF;
	color: #436aa2;
	font-weight: 600;
}

.breadcrumb > ul > li:hover:not(.active) > a {
	background-color: #297EFE;
	color: #EEF5FF;
}

.breadcrumb-count {
    min-width: 1.1em;
    border-radius: 1em;
    height: 1.1em;
    display: inline-block;
    text-align: center;
    color: white;
    background: #436aa2;
    vertical-align: middle;
    margin-top: -0.2em;
    padding: 0 3px;
    margin-left: 0.2em;
}

@media screen and (max-width: 600px) {
	.breadcrumb {
		font-size: 0.9em;
	}

	/*.breadcrumb > ul {
		flex-flow: row-reverse wrap-reverse;
	}*/

	.breadcrumb > ul > li {
		min-width: 3em;
	}

	.breadcrumb > ul > li > a, .breadcrumb > ul > li > span {
		padding: 1em calc(.5em + 2px) 1em calc(1em + 15px);
	}

	.breadcrumb > ul > li:last-child > a, .breadcrumb > ul > li:last-child > span {
		padding: 1em calc(1em + 10px) 1em calc(1em + 20px);
	}

	.breadcrumb > ul > li.active > a, .breadcrumb > ul > li.active > span {
		font-weight: normal;
	}
}

/*
/// }
*/

/*
/// Tiles {
*/

.tiles-title {
	z-index: 3;
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	margin: 0;
	padding: 1em;
	box-shadow: rgba(0,0,0,0.4) 0px 5px 8px 0px;
	background: rgba(51, 102, 153, 1);
	color: white;
}

.tiles-title > h3 {
	display: inline-block;
	margin: 0;
	color: white;
	font-size: 1.4em;
	font-weight: bold;
}

.tiles-title > .description {
	display: inline-block;
	color: white;
	font-size: 1em;
	padding-left: 1em;
}

@media screen and (min-height: 400px) {
	.tiles-title {
		/*position: sticky;*/
		/*top: 0;*/
	}
}

.tiles {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: center;
	width: 100%;
	box-sizing: border-box;
	padding: 1em;
	overflow: auto;
	text-align: center;
}

.tiles-title + .tiles {
	border-radius: 0 0 8px 8px;
}

.tile {
	z-index: 0;
	position: relative;
	display: inline-block;
	margin: .5em;
	width: 250px;
	height: 250px;
	box-sizing: border-box;
	text-align: center;
	border: 1px solid rgba(51, 102, 153, 1);
	border-radius: 6px 6px 0 0;
}

@media screen and (max-width:25em) {
	.tile {
		width: calc(100% - 2em);
	}
}

.tile .title {
	display: block;
	padding: 0.5em;
	font-size: 1em;
	font-weight: bold;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	/*background-color: #00395d;
	color: white;*/
	text-align: left;
}

.tile > .title > a,
div.page > .page-body .tile > .title > a,
div.page > .page-body .tile > .title > a:hover {
	color: white;
	text-decoration: none;
}

.tile > .body {
	position: relative;
	background: white;
	font-size: 0.9em;
	font-weight: normal;
	color: #606060;
	height: 100%;
	border-radius: 6px 6px 0 0;
}

.tile > .body::before,
.tile > .body::after {
	content: '';
	z-index: -1;
	position: absolute;
	top: 80%;
	bottom: 0.6em;
	box-shadow: 0 5px 5px 0 rgba(0,0,0,0.5);
}

.tile > .body::before {
	left: 0.25em;
	right: 2em;
	background: #777;
	transform: rotate(-3deg);
}

.tile > .body::after {
	right: 0.25em;
	left: 2em;
	background: #777;
	transform: rotate(3deg);
}

.tile > .body > .content {
	padding: 0.5em;
	overflow: hidden;
	display: flex;
    flex-flow: column;
    height: 100%;
}

.tile > .body > .content > .info {
	flex: 1;
	display: flex;
}
.tile > .body > .content > .info > * {
	flex: 1;
}
.tile > .body > .content > .info > .description {
	position: relative;
	/*height: 8em;*/
	overflow: hidden;
}

/*.tile.category > .body > .content > .info > .description {
	height: 5em;
}

.tile > .body > .content > .info > .description::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1.5em;
	background: linear-gradient(to top, white, 0.8em, rgba(255,255,255,0));
}*/

.tile .buttons {
	position: relative;
	clear: both;
	margin: -0.5em;
	padding: 0.5em;
	background: linear-gradient(to top, white, 0.8em, rgba(255,255,255,0));
	text-align: right;
}

.tile .button {
	position: relative;
	white-space: nowrap;
	background-color: darkcyan;
	font-size: 0.8em;
}

.tile .button::after {
	content: '';
	position: absolute;
	left: -1px;
	right: -1px;
	bottom: -1px;
	height: 100%;
	background: linear-gradient(to top, rgba(255,255,255,0.5), 0.3em, rgba(255,255,255,0));
	border: 0px solid white;
	border-radius: 0.5em;
}

.tile .button > span {
	font-weight: bold;
}

.tile .button.open {
	padding-left: 2em;
	padding-right: 2em;
}

/*
/// }
*/

/*
/// Page {
*/

div.page {
	height: 100%;
	box-sizing: border-box;
	margin: 0;
	display: flex;
	flex-flow: column nowrap;
	justify-content: stretch;
	align-items: center;
	background: none;
}

div.page.section {
	height: unset;
}

div.page:empty {
	display: none;
}

.page > .page {
	width: 100%;
}

/*
/// }
*/

/*
/// Page Body {
*/

div.page > .page-body {
	width: 100%;
	flex: 1 1;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: stretch;
	align-content: flex-start;
}

div.page > .page-body:empty {
	display: none;
}

div.page > .page-body > .ref {
	flex: 1 1;
}

div.page > .page-body > .contents {
	order: 20;
	flex: 1 1 45em;
	min-width: 20em;
	max-width: 60em;
	margin: 1em;
	overflow: hidden;
	/*text-align: justify;*/
}

div.page > .page-body > .contents > div {
}

div.page > .page-body > .contents > div > h3 {
	clear: left;
}

div.page > .page-body > .contents > div:first-child > h3 {
	margin-top: 0;
}

div.page > .page-body > .image-gallery.slides {
	order: 10;
	flex: 1 1 128px;
	max-width: 300px;
	margin: 1em;
	margin-right: 0;
}

div.page > .page-body > .image-gallery.videos {
	order: 30;
	flex: 1 1 128px;
	max-width: 300px;
	margin: 1em;
	margin-left: 0;
}

div.page > .page-body > .ads {
	order: 40;
	flex: 0 0 120px;
	margin: 5px;
}

div.page > .page-body .slide-group {
	margin: 1em;
	text-align: center;
}

div.page > .page-body .ad {
	float: right;
	margin-left: 1em;
}

div.page > .page-body a:not(.button) {
	text-decoration: none;
	color: #406090;
}

div.page > .page-body a:not(.button):hover {
	color: #6090C5;
}

div.page .block {
	display: block;
	page-break-inside: avoid;
	text-align: left;
}

div.page .block.spaced {
	margin: 0.5em 0;
}
div.page .block.spaced:first-child {
	margin-top: 0;
}
div.page .block.spaced:last-child {
	margin-bottom: 0;
}

div.page .block > table {
	margin: 1em;
}

/* no border lists style */
div.page .block > div > .list-item, .block > .list-item {
    border: 0;
}
div.page .block > div > .list-item > .list-item-title, .block > .list-item > .list-item-title {
/*    border: 1px solid #ddd;*/
}
.block > .list-item > .list-item-body > form > textarea.form-input,
.block > .list-item > > form > textarea.form-input {
	background: #ffd;
	transition: background-color 0.5s;
}
.block > .list-item > .list-item-body > form > textarea.form-input:focus,
.block > .list-item > form > textarea.form-input:focus {
	background: #ffa;
	transition: background-color 0.5s;
}
.block > .list-item > .list-item-body > form,
.block > .list-item > form {
	padding: 0.5em 0.5em 0.5em;
}
.block > .list-item .list-item > .list-item-body > form, 
.block > .list-item .list-item > form {
	padding: initial;
}

div.page .inline:not(.menu) {
	display: inline-block;
	vertical-align: top;
	margin-right: 1em;
}

div.page .column {
	width: calc(50% - 2em);
	min-width: 20em;
}

@media screen and (max-width: 40em) {
	div.page .column {
		width: unset;
		min-width: unset;
	}
}

div.page .left {
	float: left;
	margin: 1em;
	margin-left: 0;
}

div.page .right {
	float: right;
	margin: 1em;
	margin-right: 0;
}

div.page .center {
	text-align: center;
}
div.page .center > img {
  max-width: 100%;
}

@media screen and (max-width: 400px) {
	div.page .left, div.page .right {
		/*float: unset;*/
		margin: 1em 0;
		text-align: center;
	}
}

div.page .hidden {
	display: none;
}

div.page .image-gallery {
	text-align: center;
}

div.page .image-gallery.slides {
}

div.page .image-gallery.videos {
}

div.page .img-block {
	display: inline-block;
	margin: 4px;
	padding: 0;
	vertical-align: top;
}

div.page .img-block > .img-holder {
	position: relative;
	background: white;
	border: 2px solid white;
	box-sizing: content-box;
	box-shadow: 0 0 4px 0 black;
	cursor: pointer;
	overflow: hidden;
}

div.page .img-block > .img-holder > img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

div.page .img-block > .img-holder > iframe {
}

div.page .img-block > .img-title {
	margin: 2px 0 4px 0;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.contents .inline ul {
  padding-left: 1em;
}

@media screen and (max-width: 1000px) {
	div.page > .page-body {
		flex-flow: row wrap;
		justify-content: center;
		align-items: stretch;
		align-content: flex-start;
	}

	div.page > .page-body > .contents {
		min-width: unset;
	}

	div.page > .page-body > .image-gallery.slides {
		order: 30;
		flex: 1 1 auto;
		margin: 1em;
	}

	div.page > .page-body > .image-gallery.videos {
		order: 40;
		flex: 1 1 auto;
		margin: 1em;
	}

	div.page > .page-body > .ads {
		order: 10;
		flex: 1 1 auto;
		margin-top: 1em;
		text-align: center;
	}
}

/*
/// }
*/

/*
/// Page Tags {
*/

div.page .tags {
	order: 0;
	margin: 1em;
	font-size: 0.8em;
	text-align: right;
}

div.page .tags::before {
	content: 'Tags:';
	margin-right: 0.5rem;
	color: #909090;
}

div.page .tags:empty::before {
	content: '';
}

div.page .tag {
	display: inline-block;
	margin: 0 3px 14px 0;
}

div.page .tag > a {
	padding: 3px 6px;
	border: 1px solid rgba(0,0,0,0.1);
	border-radius: 3px;
	background: rgba(64,96,144,0.1);
	text-decoration: none;
	color: #406090;
	transition: background-color 350ms, color 350ms;
}

div.page .tag > a:hover {
	background: rgba(64,96,144,0.7);
	color: white;
}

/*
/// }
*/

/*
/// Category Page {
*/

div.page-category {
	width: 100%;
	box-sizing: border-box;
	padding: 1em;
}

div.page-category > .tiles-title {
	z-index: 3;
}

/*
/// }
*/

/*
/// Tag Page {
*/

div.page-tag {
	max-width: 100%;
}

div.page-tag > h2 {
	text-align: center;
}

div.page-tag > .description {
	width: calc(100% - 2em);
	max-width: 45em;
	margin: 0 auto 1em auto;
	padding-bottom: 1em;
	border-bottom: 1px dotted #ccc;
	text-align: justify;
}

div.page-tag > .description:empty {
	display: none;
}

div.page-tag .pages {
	width: calc(100% - 2em);
	max-width: 45em;
	margin: 1em auto;
}

div.page-tag .pages .page-preview {
	z-index: 0;
}

div.page-tag .pages .page-preview > h2 {
	z-index: 3;
	/*position: sticky;*/
	/*top: 0;*/
	margin-bottom: 0;
	padding: 1em;
	box-shadow: #606060 0px 5px 5px 0px;
	background: #43618e;
	color: white;
	font-size: 1.2em;
	font-weight: normal;
}

div.page-tag .pages .page-preview > .preview-body {
	padding: 1em;
	overflow: hidden;
	background: rgba(240,240,255,0.5);
	color: #333;
}

div.page-tag .pages .page-preview > .buttons > .button {
	padding: 0.5em;
}

/*
/// }
*/

/*
/// Widgets {
*/

.tile .widget {
	float: left;
	height: 80%;
	width: 50% !important;
    display: flex;
    justify-content: stretch;
    align-items: stretch;
    flex-flow: row wrap;
}
.tile.category .widget > .widget-fallback-image {
	height: 8em;
}

.widget .slice text {
	font-family: Arial;
	font-size: 8pt;
}

.widget > table {
	margin: 0 auto !important;
}

.zoomed-widget {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	justify-content: center;
	max-width: calc(100vw - 20px - 2em);
	max-height: 95vh;
	min-width: 300px;
	min-height: 300px;
}

.zoomed-body {
	width: 100%;
	text-align: center;
}

/* prevent flickering in google charts tooltips */
.widget svg > g:last-child > g:last-child {
    pointer-events: none;
}

.widget-zoomed {
	transform-origin: 50% 0;
	overflow: auto;
}

/*
/// }
*/

/*
/// TOC {
*/

/*.breadcrumb {
	position: relative;
}*/
.breadcrumb .breadcrumb-toc-btn {
	float: right;
    font-size: 32px;
    color: #43618e;
    position: absolute;
    left: calc(100% - 32px);
    top: calc(50% - 16px);
}

.breadcrumb .attention-badge {
    min-width: 1.5em;
    margin: 0;
    border-radius: 50%;
    background: red !important;
    color: white;
    padding: 2px;
    display: inline-block;
    text-align: center;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}
.breadcrumb .attention-badge:empty {
	display: none;
}


/*
/// }
*/

/*
/// Generic progress animation {
*/

@-webkit-keyframes progress {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1175px 0px;
  }
}
@-moz-keyframes progress {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1175px 0px;
  }
}    
@-ms-keyframes progress {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1175px 0px;
  }
}    
@keyframes progress {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1175px 0px;
  }
} 

.progress-frame {
	position: relative;
}
.progress-frame::after {
    content: " ";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image:
        linear-gradient(
        -45deg,
        rgba(154, 154, 154, 1) 25%,
        transparent 25%,
        transparent 50%,
        rgba(154, 154, 154, 1) 50%,
        rgba(154, 154, 154, 1) 75%,
        transparent 75%,
        transparent
    );
    -webkit-background-size:10px 10px;
    -moz-background-size:10px 10px;
    -ms-background-size:10px 10px;
    background-size:10px 10px;
    opacity: 0.5;
	-webkit-animation:progress 60s linear infinite;
	-moz-animation:progress 60s linear infinite;
	-ms-animation:progress 60s linear infinite;
	animation: progress 60s linear infinite;
}

/*
/// }
*/

/*
/// Drawer {
*/

.site-content {
	margin-right: 0;
	margin-left: 0;
	transition: margin-right 0.4s, margin-left 0.4s;
}
.site-content.site-drawer-right-opened {
	margin-right: 300px;
	transition: margin-right 0.4s;
}
.site-content.site-drawer-left-opened {
	margin-left: 250px;
	transition: margin-left 0.4s;
}
@media only screen and (max-width: 800px) {
	.site-content.site-drawer-right-opened {
		margin-right: 0;
	}
	.site-content.site-drawer-left-opened {
		margin-left: 0;
	}
}
.site-drawer.menu {
	display: none;
}
.site-drawer {
	overflow: auto;
    position: fixed;
    top: 0;
    height: 100%;
    background: #edf0f5dd;
    left: 100%;
    z-index: 333;
    display: none;
    transition: left 0.4s;
    z-index: 444 !important; /* above top menu, below dialogs */
}
.site-drawer > ul {
	height: 100%;
}
.site-drawer[data-side="right"] {
	width: 300px;
	box-shadow: 2px 8px 5px 0 #222d;
}
.site-drawer[data-side="left"] {
	box-shadow: -2px 8px 5px 0 #222d;
	min-width: 250px;
}
.site-drawer-right-opened .site-drawer[data-side="right"] {
    left: calc(100% - 300px);
    transition: left 0.4s;
}
.site-drawer[data-side="left"] {
	left: -300px;
    transition: left 0.4s;
}
.site-drawer-left-opened .site-drawer[data-side="left"] {
	left: 0;
    transition: left 0.4s;
}
.site-content.no-drawer-animation,
.site-content.no-drawer-animation .site-drawer {
	transition: none !important;
}

/*
/// }
*/

/*
/// Quasar fixes {
*/

h3, h4 {
    font-weight: initial;
}
h3 {
    font-size: initial;
    line-height: initial;
    letter-spacing: normal;
}

/*
/// }
*/


}