:root {
	--chrysalis-blue: rgba(60,182,206,1);
	--chrysalis-blue-lighter: color-mix(in oklab, var(--chrysalis-blue), white);
	--chrysalis-blue-darker: color-mix(in oklab, var(--chrysalis-blue), black);
	--primary-colour: rgba(60,182,206,1);
	--primary-colour-lighter: color-mix(in oklab, var(--primary-colour), white);
	--primary-colour-darker: color-mix(in oklab, var(--primary-colour), black);
	--secondary-colour: rgba(49,49,49,1);
}

@keyframes rotateicon{
	from {
		transform: translate(-12px, -12px) rotate(0deg);
 		}
	to {
		transform: translate(-12px, -12px) rotate(360deg);
		}
	}
@keyframes rotateicon-notranslate{
	from {
		transform: rotate(0deg);
 		}
	to {
		transform: rotate(360deg);
		}
	}

/* Google charts label flicker fix */

svg > g > g:last-child { pointer-events: none }

/* MDL Overrides */

.mdl-menu__container{
	margin-top:10px;
	}

	.mdl-menu .mdl-menu__item i.material-icons {
		vertical-align: middle;
		margin-bottom: 1px;
		margin-right: 4px;
		}

.mdl-mega-footer__link-list{
	margin-bottom: 0;
	}

.mdl-card__title{
	flex-grow:1;
	}
.mdl-card__title + .mdl-card__title{
	flex-grow:100;
	}
.mdl-card__title.mdl-card__signatures {
	padding: 10px 16px;
	}
	.mdl-card__title.mdl-card__signatures.orange {
		background-color: rgba(255, 108, 0, 0.77);
		}
	.mdl-card__title.mdl-card__signatures.green {
		background-color: rgba(23, 128, 1, 0.77);
		}
	.mdl-card__title.mdl-card__signatures.red {
		background-color: rgba(255, 48, 0, 0.77);
		}
.mdl-card__title.mdl-card__signatures i.material-icons {
	font-size: 18px;
	vertical-align: middle;
	}

.mdl-card__title,
.mdl-card__menu{
	text-shadow:1px 1px 2px rgba(0,0,0,0.5);
}
.mdl-card .circularimage {
	border-radius: 50%;
	width: 64px;
	height: 64px;
	margin-left: auto;
	margin-top: auto;
	object-fit: cover;
}

.mdl-card .charicon{
	font-size:24px;
	line-height:24px;
	display:inline-block;
	width:24px;
	text-align:center;
	font-weight:bold;
	}

.mdl-card__subtitle-text{
	padding-right: 2em;
	line-height: 1.5;
	text-wrap: balance;
	}

.mdl-grid.full-width{
	padding:0;
	margin-left:-8px;
	margin-right:-8px;
	margin-bottom:24px
	}
	.mdl-grid.full-width:last-child{
		margin-bottom:0;
		}

.mdl-grid.full-width.readonly .media .mdl-card__title{
	visibility:hidden;
	}
.mdl-grid.full-width.readonly .media:hover .mdl-card__title{
	visibility:visible;
	}

.mdl-card__supporting-text{
	width: 100%;
	box-sizing: border-box;
	}

.mdl-button--icon.loading{
	background-color:rgba(158,158,158,0.20) !important;
	}
.mdl-button--icon.loading i {
	animation-name: rotateicon;
	animation-duration: 2s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}
i.material-icons.inline-loader {
	animation-name: rotateicon-notranslate;
	animation-duration: 2s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
	}

.mdl-button:hover {
	filter: brightness(110%);
	}

.mdl-button--small{
	height: 24px;
	line-height: 24px;
	min-width: 16px;
	font-size: 13px;
	}
.mdl-button--raised.mdl-button--small{
	box-shadow:0 1px 1px 0 rgb(0 0 0 / 14%), 0 2px 1px -1px rgb(0 0 0 / 20%), 0 1px 3px 0 rgb(0 0 0 / 12%);
	}

.mdl-textfield--floating-label .mdl-textfield__label{
	transition-duration: 0s;
	}

.mdl-textfield{
	width:100%;
	}
.mdl-textfield.inline{
	width:auto;
	}
.mdl-textfield__input{
	scroll-margin-top: 40px;
	border-bottom: 1px solid rgba(0,0,0, 0.36);
	}
.mdl-textfield__label{
	font-weight:bold;
	font-size: 13px;
	text-transform:uppercase;
	top: 2px;
	}

.mdl-switch__input{
	scroll-margin-top: 40px;
	}
.mdl-cell > .mdl-textfield{
	width:calc(100% - 16px);
	}
.mdl-textfield textarea{
	min-height:10em;
	}
.mdl-textfield.tall textarea{
	min-height:40em;
	}
.mdl-textfield input,
.mdl-textfield textarea,
.mdl-textfield select{
	padding-top:8px;
	}
	.mdl-textfield select option:disabled{
		color: #aaaaaa;
		}
.mdl-textfield input[type=date]{
	height:18px;
	}
.mdl-textfield.character-count{
	margin-bottom:1.5rem;
	}
.mdl-textfield.character-count span{
	color:#cccccc;
	position:absolute;
	height:1.5rem;
	line-height:1.5rem;
	font-size:0.9125rem;
	}

.mdl-textfield.postcode-search input,
.mdl-textfield.postcode-search label {
	width: calc(100% - 150px);
	}
.mdl-textfield.postcode-search button {
	width: 140px;
	top: 20px;
	right: 0px;
	}

.mdl-chip--small {
	height:16px;
	line-height:16px;
	border-radius:8px;
	padding:0 8px;
	font-size:13px;
	}
	.mdl-chip--small .mdl-chip__text{
		font-size: 10px;
		text-transform:uppercase;
		}

.mdl-chip--green {
	background-color:rgb(27,94,32);
	color:rgba(255,255,255,1);
	}
.mdl-chip--orange {
	background-color:rgb(230,81,0);
	color:rgba(255,255,255,1);
	}
.mdl-chip--red {
	background-color:rgb(183,28,28);
	color:rgba(255,255,255,1);
	}

.material-icons-inline{
	vertical-align:bottom;
	}

textarea.tinymce{
	min-height:300px;
	}
textarea.tinymce.tinymce-medium{
	min-height:500px;
	}

.carousel{
	position:relative;
	}
.carousel .mdl-grid.full-width{
	overflow:hidden;
	max-height:236px;
	}
	.carousel a.carousel-previous,
	.carousel a.carousel-next{
		position:absolute;
		top:calc(50% - 16px);
		z-index:2;
		display:none;
		}
	.carousel a.carousel-previous{
		left:-24px;
		}
	.carousel a.carousel-next{
		right:-24px;
		}
	.carousel .mdl-grid.full-width .media{
		}

body{
	background-color:#ffffff;
	color:#7e7d7a;
	overflow-y:scroll;
	}

header,
div.breadcrumbs,
section.intro,
section.content,
footer{
	}
header .container,
div.breadcrumbs .container,
section.content .container,
footer .container{
	max-width:1400px;
	padding:24px;
	margin:0 auto;
	box-sizing:border-box;
	}
	section.content.full-width .container {
		max-width: 95vw;
		}

section.content .container,
section.map .container{
	position:relative;
	}

header{
	background-color:#FFFFFF;
	color:var(--chrysalis-blue);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	}
	header .container{
		padding-top:32px;
		padding-bottom:32px;
		position:relative;
		height:164px;
		}
	header a.welcome{
		line-height:1.5;
		text-transform:uppercase;
		text-decoration:none;
		display:flex;
		float:left;
		flex-direction:column;
		justify-content:center;
		height:100px;
		color:var(--chrysalis-blue);
		}
		header a.welcome span{
			display:block;
			}
			header a.welcome span.hello{
				font-weight:900;
				font-size:2.75rem;
				}
			header a.welcome span.weare{
				font-weight:700;
				font-size:2rem;
				}
				header a.welcome span.weare sup{
					font-size:1rem;
					margin-left:0.25rem;
					}
		header a.welcome:hover{
			color:var(--chrysalis-blue-lighter);
			}
	header a img.logo{
		position:absolute;
		display:block;
		height:100px;
		opacity:1;
		border:none;
		}
		header a:hover img.logo{
			opacity:0.9;
			}
	header h1{
		position:absolute;
		line-height:1em;
		font-size:3em;
		text-align:center;
		margin-top:0;
		margin-bottom:0;
		right:28px;
		bottom:32px;
		}

	header ul.mini-nav{
		position:absolute;
		margin-left:0;
		right:16px;
		top:16px;
		padding:0;
		}
		header ul.mini-nav li{
			margin-left:0;
			display:inline-block;
			border-left:1px solid var(--chrysalis-blue-lighter);
			}
		header ul.mini-nav li:first-child{
			border-left:none;
			}
			header ul.mini-nav li a{
				text-decoration:none;
				padding:8px 16px;
				color:var(--chrysalis-blue);
				}
			header ul.mini-nav li a:hover{
				color:var(--chrysalis-blue-darker);
				}

div.breadcrumbs{
	background:var(--primary-colour);
	color:rgba(255,255,255, 0.5);
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
	}
	div.breadcrumbs .container{
		padding-top:0;
		padding-bottom:0;
		}
	div.breadcrumbs ul{
		padding-left:0;
		margin-top:12px;
		margin-bottom:12px;
		}
		div.breadcrumbs ul li{
			display:inline-block;
			line-height:1.5rem;
			}
			div.breadcrumbs ul li a{
				text-decoration:none;
				}
			div.breadcrumbs ul li i{
				margin:0 0.5rem;
				}
			div.breadcrumbs ul li i.fa-level-up{
				display:none;
				}
	div.breadcrumbs p.reference{
		margin-top:12px;
		margin-bottom:0;
		float:right;
		}
	div.breadcrumbs a{
		color:rgba(255,255,255, 0.9);
		}
	div.breadcrumbs a:hover{
		color:rgba(255,255,255,1);
		}

.uploader{
	padding-top:12px;
	}

p.pagination{
	text-align:center;
	margin-top:24px;
	margin-bottom:24px;
	}
	p.pagination a{
		display:inline-block;
		text-align:center;
		text-decoration:none;
		border-radius:12px;
		color:#7e7d7a;
		min-width:1.75em;
		padding:0 6px;
		box-sizing:border-box;
		}
	p.pagination a[href]:hover,
	p.pagination a.current{
		color:#000000;
		}

section.simpleform .mdl-layout{
	align-items:center;
	}
	section.simpleform .mdl-layout__content{
		padding:64px 48px;
		flex:none;
		}
	section.simpleform .mdl-layout__content .mdl-card__title img{
		width:80%;
		max-width:374px;
		margin:0 auto;
		display:block;
		padding:24px;
		}
	section.simpleform .mdl-layout__content .mdl-card__actions{
		padding:16px;
		}

section.content{
	}
	section.content .container{
		padding-bottom:2rem;
		}

section.content > .container > h2{
	position:relative;
}
section.content > .container > .menu-right{
	float:right;
	margin:24px 0;
	height:48px;
	width:48px;
	z-index:10;
	margin-left:16px;
	}
	section.content > .container > .menu-right.separator{
		width: 0;
		border-left: 1px solid rgba(0, 0, 0, 0.12);
		margin-left: 30px;
		margin-right: 14px;
		}
	section.content > .container > .menu-right.snooze-date {
		width: 150px;
		margin-top: 18px;
		margin-right: 20px;
		position: relative;
		z-index: 10;
		}

section.content > .container h1.centered,
section.content > .container h2.centered,
section.content > .container h3.centered,
section.content > .container p.centered{
	text-align:center;
	}
section.content > .container h1.centered,
section.content > .container h2.centered{
	margin-bottom:48px;
	}

section.hero{
	background-size:cover;
	background-position:center;
	}
	section.hero .container{
		background-color:rgba(0,0,0,0.25);
		backdrop-filter: blur(3px);
		color:rgba(255,255,255,1);
		padding-top:8vh;
		padding-bottom:8vh;
		}
		section.hero .container h1{
			text-align:center;
			text-shadow:1px 1px 2px rgba(0,0,0,0.5);
			}

section.footer-image{
	background-size:cover;
	background-position:center;
	}
	section.footer-image .container{
		background-color:rgba(0,0,0,0.25);
		backdrop-filter: blur(3px);
		color:rgba(255,255,255,1);
		min-height:25vh;
		}

.map-legend{
	position:absolute;
	bottom:24px;
	left:12px;
	z-index: 99;
	min-height:auto;
	width:auto;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	}
	.map-legend .mdl-list{
		margin:0 24px 0 16px;
		}
		.map-legend .mdl-list .mdl-list__item{
			padding:0;
			font-size:14px;
			min-height:32px;
			}
		.map-legend .mdl-list .mdl-list__item i{
			margin-right:8px;
			}
		.map-legend .mdl-list .mdl-list__item a{
			cursor:pointer;
			}
			.map-legend .mdl-list .mdl-list__item a[href]:hover{
				color:#000000;
				}

.tile-card{
	position:relative;
	background-size:cover;
	background-position:50%;
	background-repeat:no-repeat;
	width:100%;
	min-height:220px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	height:0; /* IE Hack */
	}
	.tile-card .mdl-button{
		min-width:20px;
		}
	.tile-card > .mdl-card__menu{
		color:#fff;
		}
	.tile-card > .mdl-card__supporting-text + .mdl-card__supporting-text{
		padding-top:0;
		}
	.tile-card:hover{
		box-shadow:0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 1px 8px 0 rgba(0, 0, 0, 0.12);
		}
	.tile-card .button-right{
		padding:0 8px;
		}

.tile-card.book-card{
	min-height:450px;
	}

.lazyloading::before{
	position:absolute;
	content:'';
	left:0;
	right:0;
	top:0;
	bottom:0;
	background-position:50%;
	background-repeat:no-repeat;
	background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAyVBMVEUAAAC9vsDCw8W9v8G9vsD29/fr7O29vsDm5+jx8fK/wML29vf///+9vsHR0tPm5+jt7u7w8PHr7Ozc3d7n6OnExcfGx8nJyszMzM7V1tjZ2tvf4OG9vsDHyMrp6uvIycu9v8HAwcTPz9HCw8W9vsC9vsDBwsTj5OXj5OXW19i9vsDm5+jw8PHy8vL09fW9vsDFxsjJyszAwsS9vsDU1dbLzM7Y2drb3N3c3d7e3+DHyMrBwsTh4uPR0tPDxcfa293R0tTV1ti9vsAll6RJAAAAQnRSTlMA7+t/MAZHQDYjHxABv6xSQjEgFgzi2M7Emop0cGVLD/ryt7Cfj3dmYWBgWjgsGd/Cv7SvopSSg4B6eHZrQjkyKx1dd0xhAAAA9klEQVR4AYWPeXOCMBBHFxIgCQKC3KCo1Wprtfd98/0/VBPb6TC0Wd+/783+ZqELrQkRoIMujFbiaLTwpESC029reB7919d7u6SgYaE8aUCivW84oEUY0lPQc408pxBqHxCIHGiw4Lxtl5h35ALFglouAAaZTj00OJ7NrvDANI/Q4PlQMDbNFA3ekiQRaHGRpmM0eMqyyxgLRlme4ydu8/n8Az3h+37xiRWv/k1RRlhxUtyVD8yCXwaDflHeP1Zr5sIey3WtfvFeVS+rTWAzFobhNhrFf4omWK03wcS2h8OzLd/1TyhiNvkJQu5amocjznm0i6HDF1RMG1aMA/PYAAAAAElFTkSuQmCC);
	animation: rotation 1s infinite linear;
	}

.media-card{
	position:relative;
	width:100%;
	min-height:220px;
	background-size:contain;
	background-position:50%;
	background-repeat:no-repeat;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	height:0; /* IE Hack */
	}
	.media-card .mdl-button{
		min-width:20px;
		}
	.media-card > .mdl-card__title{
		flex-grow:0;
		font-size:0.8125em;
		}
	.media-card > .mdl-card__supporting-text{
		flex-grow:1;
		}
	.media-card > .mdl-card__menu{
		color:#fff;
		}
	.media-card > .mdl-card__actions,
	.media-card > .mdl-card__title{
		background-color:rgba(0,0,0,0.5);
		}
	.media-card:hover{
		box-shadow:0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 1px 8px 0 rgba(0, 0, 0, 0.12);
		}
	.media-card .button-right{
		float:none;
		position:absolute;
		right:8px;
		}

.media .document-checker-percentages {
	display: flex;
	width: 100%;
	}
	.media .document-checker-percentages p {
		margin: 0;
		margin-top: 8px;
		text-align: center;
		width: 100%;
		}
	.media .document-checker-percentages .document-checker-percentage {
		width: 100%;
		margin: 0rem 1rem;
		}
		.media .document-checker-percentages .document-checker-percentage p:not(:first-child) {
			margin: 0;
			color: lightgrey;
			}

.media-card-a4{
	min-height:100vh;
	margin-bottom:24px;
	}

.chart-card{
	position:relative;
	width:100%;
	min-height:250px;
	}
	.chart-card .chart-container{
		padding:24px;
		}
		.chart-card .chart-container > div{
			min-height:200px;
			height:100%;
			}

.chart-card-tall{
	min-height:350px;
	}
	.chart-card .chart-container > div{
		min-height:300px;
		}

.wide-card{
	position:relative;
	width:100%;
	min-height:48px;
	margin-bottom:24px;
	page-break-inside:avoid;
	}
	.wide-card.list-options{
		padding:0 16px;
		flex-direction:row;
		}
	.wide-card.list-options select{
		margin:0;
		padding:4px 6px;
		border:none;
		color:#7e7d7a;
		}
	.wide-card.list-options select + select{
		margin-left:16px;
		}
	.wide-card.list-options .search-input{
		margin-left:auto;
		}
		.wide-card.list-options .search-input .mdl-textfield{
			width:200px;
			vertical-align:middle;
			}

.wide-card > *:first-child,
.wide-card > .card-content > *:first-child{
	margin-top:0;
	}

.wide-card > *:last-child,
.wide-card > .card-content > *:last-child{
	margin-bottom:0;
	}

.plist-card{

	}
	.plist-card p{
		margin-bottom:8px;
		}

.wide-card > div img.logo{
	display:block;
	}

.wide-card .filter-input select{
	max-width:200px;
	}

.mdl-tabs{
	position:relative;
}
.mdl-tabs:not(.is-upgraded) .mdl-tabs__panel > *,
.mdl-tabs:not(.is-upgraded) .mdl-tabs__panel.is-active > *{
	display:none;
}
.mdl-tabs:not(.is-upgraded) .mdl-tabs__panel.is-active::before{
	content:'';
	width:32px;
	height:32px;
	position:absolute;
	top:70px;
	background-repeat:no-repeat;
	background-image:url(data:image/gif;base64,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);
}
.mdl-tabs.vertical-tabs:not(.is-upgraded) .mdl-tabs__panel.is-active::before{
	top:30px;
	}
.mdl-tabs .mdl-tabs__panel > h1:first-child,
.mdl-tabs .mdl-tabs__panel > h2:first-child,
.mdl-tabs .mdl-tabs__panel > h3:first-child{
	margin-top:0;
	}
.mdl-tabs .mdl-tabs__tab{
	color:#7e7d7a;
	text-transform:none;
	}
	.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active{
		color:#000000;
		}
	.mdl-tabs__panel.is-active,
	.mdl-tabs__panel{
		padding:24px;
		}
	.vertical-tabs .mdl-tabs__tab-bar{
		flex-direction:column;
		padding-top:24px;
		padding-bottom:24px;
		height:inherit;
		border-bottom:none;
		border-right:1px solid rgba(10, 11, 49, 0.20);
		}
	.vertical-tabs .mdl-tabs__tab{
		width:100%;
		height:36px;
		line-height:36px;
		box-sizing:border-box;
		border-right:5px solid #ffffff;
		}
		.vertical-tabs.mdl-tabs.is-upgraded a.mdl-tabs__tab.is-active{
			border-right:5px solid rgb(7,199,220);
			}
		.vertical-tabs.mdl-tabs.is-upgraded .mdl-tabs__tab.is-active:after{
			content:inherit;
			height:0;
			}
		.vertical-tabs.mdl-tabs .mdl-tabs__tab {
			text-align:left;
			}

.tab-counter{
	position:absolute;
	right:0.75rem;
	min-width:0.5rem;
	height:1.5rem;
	padding-left:0.5rem;
	padding-right:0.5rem;
	top:0.5rem;
	background:rgba(255,87,34,1);
	color:rgb(255,255,255);
	border-radius:1em;
	text-align:center;
	line-height:1.5rem;
	}

.yearpicker{
	position:relative;
	}
	.yearpicker select{
		font-size:2em;
		}

.scrollable{
	max-height:50vh;
	overflow:auto;
	min-width:100%;
	width:100%;
	padding:0.5em;
	margin-left:-0.5em;
	margin-right:-0.5em;
	}

.collapsor{
	display:inline-block;
	margin-left:-8px;
	}
	.collapsor > span{
		cursor:pointer;
		}
	.collapsor > span i{
		font-size:24px;
		}
	.collapsor > span.collapse{
		display:block;
		}
	.collapsor > span.expand{
		display:none;
		}
	.collapsor.collapsed > span.collapse{
		display:none;
		}
	.collapsor.collapsed > span.expand{
		display:block;
		}

.quicksearch{
	padding:0 16px;
	}
.quicksearch .search-input{
	margin-left:auto;
	width:100%;
	}
	.quicksearch .search-input .mdl-textfield{
		width:calc(100% - 40px);
		}
	.quicksearch .quicksearch-results{
		}
		.quicksearch .quicksearch-results > ul{
			list-style-type:none;
			margin:0;
			padding:0;
			}
			.quicksearch .quicksearch-results > ul > li{
				}
				.quicksearch .quicksearch-results > ul > li p{
					margin-bottom: 12px;
					}
					.quicksearch .quicksearch-results > ul > li p i{
						display:inline-block;
						vertical-align:middle;
						margin:0 10px 0 2px;
						}
					.quicksearch .quicksearch-results > ul > li p a{
						text-decoration:none;
						color:#7e7d7a;
						}
					.quicksearch .quicksearch-results > ul > li p a[href]:hover{
						color:#000000;
						}
				.quicksearch .quicksearch-results > ul > li table {
					box-sizing: border-box;
					background: #f7f7f7;
					margin-left: 32px;
					margin-right: 32px;
					border-radius: 4px;
					font-size: 12px;
					margin-top: -9px;
					margin-bottom: 12px;
					padding-top: 3px;
					padding-bottom: 3px;
					width: calc(100% - 64px);
					}
					.quicksearch .quicksearch-results > ul > li table tr td,
					.quicksearch .quicksearch-results > ul > li table tr th {
						padding: 0 12px;
						text-align: left;
						}
						.quicksearch .quicksearch-results > ul > li table tr th {
							font-weight: bold;
							width: 140px;
							}

.colourswatch{
	display:inline-block;
	margin-right:0.25em;
	width:1.5em;
	height:1.5em;
	border:1px solid rgba(0,0,0,.12);
	vertical-align:middle;
	}

.completenessbar{
	position:relative;
	display:inline-flex;
	height:15px;
	width:100%;
	background:#dddddd;
	vertical-align:middle;
	border-radius:3px;
	}
	.completenessbar > *{
		width:0%;
		background:green;
		border-radius:3px;
		}
	.completenessbar.belowthreshold > *{
		background:orange;
		}

table.data{
	width:100%;
	border-collapse:collapse;
	table-layout:fixed;
	}
table.borderless,
table.borderless th,
table.borderless td{
	border-width:0;
	}
	table.data thead th{
		color:#7e7d7a;
		font-size:14px;
		line-height:1.125rem;
		}
	table.data th{
		text-align:left;
		}
	table.data th,
	table.data td{
		padding-left:6px;
		padding-right:6px;
		}
table.data tr.total,
table.data tr.dynamictotal{
	background-color:#eeeeee;
	}
table.data .text-center{
	text-align:center;
	}
table.data .text-right{
	text-align:right;
	}
table.data td i.material-icons{
	vertical-align:middle;
	}

table.data td,
table.data th{
	min-width:0;
	overflow:hidden;
	text-overflow:ellipsis;
	}
	table.data td input:not(.mdl-textfield__input){
		width:90px;
		padding:4px 3px;
		}
	table.data td .mdl-textfield {
		padding: 0px;
		}
	table.data td .mdl-textfield .mdl-textfield__label:after {
		bottom: 0px;
		}
	table.compact-data td input{
		padding:1px 0;
		}
	table.wide-inputs td input{
		width:80%;
		}
	table.data td a:not(.student-detail)[href] {
		text-decoration:none;
		color:var(--primary-colour);
		}
	table.data td a:not([href]) {
		color: #7e7d7a;
	}
	table.data td a.student-detail{
		text-decoration: none;
		cursor: help;
		margin-left: 5px;
		color: #7e7d7a;
		}
		table.data td a.student-detail i.material-icons {
			vertical-align: bottom;
			}
	table.data td a[href]:hover{
		color:#000000;
		}

table.mdl-data-table--selectable.is-upgraded thead tr th:first-child,
table.mdl-data-table--selectable.is-upgraded tbody tr td:first-child{
	width:48px;
	text-overflow:clip;
	padding-left:16px;
	text-align:center;
	}
table.mdl-data-table--selectable.is-upgraded thead tr th:first-child label,
table.mdl-data-table--selectable.is-upgraded tbody tr td:first-child label{
	padding-left:0;
	}

table.mdl-data-table.no-hoverstate tbody tr:hover{
	background-color:inherit;
	}

table.mdl-data-table.sticky-headers {
	border-spacing: 0;
	border-collapse: separate;
	}
	table.mdl-data-table.sticky-headers td {
		border-top: 0;
		}
table.mdl-data-table.sticky-headers thead {
	top: 0;
	position: sticky;
	z-index: 100;
	background: #fff;
	}
	table.mdl-data-table.sticky-headers thead tr th {
		border-bottom: 1px solid rgba(0, 0, 0, 0.12);
		}

i.status{
	color:lightgrey;
	}
	i.status.green,
	i.status.accepted{
		color:green;
		}
	i.status.blue{
		color:cornflowerblue;
		}
	i.status.darkgreen,
	i.status.conditionallyaccepted{
		color:darkgreen;
		}
	i.status.orange,
	i.status.confirmed{
		color:orange;
		}
	i.status.red,
	i.status.cancelled,
	i.status.noshow{
		color:red;
		}
	i.status.darkred,
	i.status.rejected{
		color:darkred;
		}

i.letter-icon{
	min-width:22px;
	height:22px;
	line-height:22px;
	display:inline-flex;
	align-content:center;
	justify-content:center;
	font-style:normal;;
	font-size:inherit;
	font-weight:bold;
	text-rendering:auto;
	border:1px solid currentColor;
	border-radius:50%;
}

.paymentstatus-paid{
	color:green;
	}
.paymentstatus-refunded{
	color:cornflowerblue;
	}
.paymentstatus-pending,
.paymentstatus-scheduled{
	color:orange;
	}
.paymentstatus-overdue,
.paymentstatus-late{
	color:darkred;
	}
.paymentstatus-failed{
	color:red;
	}

.calendar{
	min-height:200px;
	}
	.calendar .statustext{
		font-size:2em;
		padding-top:5rem;
		padding-bottom:5rem;
		text-align:center;
		}
	.calendar table{
		width:100%;
		table-layout:fixed;
		}
		.calendar table p{
   			margin-bottom:0;
			}
	.calendar table td{
		}
		.calendar table.monthselect{
			margin-bottom:2rem;
			}
			.calendar table.monthselect td.year{
				}
				.calendar table.monthselect select{
					}
				.calendar table.monthselect select option{
					}
		.calendar table.days{
			}
		.calendar table.days th,
		.calendar table.days td{
			font-size:0.875em;
			padding:0.75rem;
			border:1px solid #dddddd;
			vertical-align:top;
			}
		.calendar table.days td.noday{
			border-width:0;
			}
		.calendar table.days thead th{
			text-transform:uppercase;
			padding-top:0.75rem;
			padding-bottom:0.75rem;
			}
		.calendar table.days th.week{
			vertical-align:middle;
			}
		.calendar table.days th.week span{
			font-size:1.188rem;
			font-weight:700;
			}
			.calendar table.days tbody th,
			.calendar table.days tbody td{
				height:6rem;
				position:relative;
				}
			.calendar table.days tbody td p.day{
				font-size:1rem;
				line-height:1.5rem;
				}
			.calendar table.days tbody td.day:hover,
			.calendar table.days tbody td.today{
				background-color:rgba(0,0,0,0.05);
				}
			.calendar table.days tbody td.day.today:hover{
				background-color:rgba(0,0,0,0.1);
				}
				.calendar table.days tbody td.today p.day{
					font-weight:700;
					}
				.calendar table.days tbody td div.info{
					position:absolute;
					top:0.75rem;
					}
					.calendar table.days tbody td div.info p{
						font-size:0.612rem;
						line-height:1.5rem;
						}
				.calendar table.days tbody td div.events{
					margin-top:1rem;
					text-align:left;
					}
					.calendar table.days tbody td div.events p{
						font-size:0.75rem;
						line-height:1.25rem;
						margin-bottom:0.25rem;
						white-space: nowrap;
						overflow: hidden;
						text-overflow: ellipsis;
						}
				.calendar table.days tbody td .pill {
					display: block;
					min-width: auto;
					font-size: 1.1em;
					margin-right: 0;
					}

.pill {
	display: inline-block;
	min-width: 120px;
	border-radius: 2px;
	padding: 8px;
	margin-top: 10px;
	margin-right: 10px;
	white-space: normal;
	text-align: center;
	}
a.pill {
	cursor: pointer;
	}

span.compare{
	}
	span.compare-increase{
		color:green;
		}
	span.compare-decrease{
		color:red;
		}
	span.compare-equal{
		color:orange;
		}
span.compare:before{
	font-family:FontAwesome;
	padding-right:0.25em;
	}
	span.compare-increase:before{
		content:"\f0d8";
		}
	span.compare-decrease:before{
		content:"\f0d7";
		}
	span.compare-equal:before{
		content:"\3d";
		}

ul.files{
	margin-top:0;
	margin-bottom:0;
	padding-left:0;
	}
	ul.files li{
		margin-left:0;
		list-style-type:none;
		}
		ul.files li i{
			margin-right:0.5em;
			}

div.gallery{

	}
	div.gallery .media-card{
		height:0;
		min-height:0;
		padding-bottom:56.25%;
		}
	div.gallery .mdl-card__title{
		display:none;
		}
	div.gallery .media-card:hover .mdl-card__title{
		display:block;
		}

.float-right{
	float:right;
	}
.button-right{
	float:right;
	}

.product-info .product-description{
	max-width:60em;
	}
.product-info .product-listprice{
	float:right;
	margin-top:0;
	}
.product-info .product-gtin{
	float:right;
	clear:right;
	}

.guide-panel{

	}
	.guide-panel img{
		display:block;
		max-width:100%;
		}
	.guide-panel img.screenshot{
		border-radius:3px;
		border:1px solid rgba(0,0,0,0.25);
		cursor:not-allowed;
		}
	.guide-panel p{
		max-width:60em;
		}
	.guide-panel p.centered,
	.guide-panel p.full{
		max-width:100%;
		}
	.guide-panel p.full img{
		width:100%;
		}
	.guide-panel table{
		width:100%;
		table-layout:fixed;
		border:1px solid #dddddd;
		border-collapse:collapse;
		margin-bottom:1em;
		}
		.guide-panel table th{
			text-align:left;
			font-weight:bold;
			}
		.guide-panel table th,
		.guide-panel table td{
			padding:8px;
			border:1px solid #dddddd;
			}
		.guide-panel table tr.highlight th,
		.guide-panel table tr.highlight td{
			background-color:#eeeeee;
			}

p.message{
	background-color:#ffffff;
	border-radius:2px;
	}
	p.message.padded{
		padding:16px;
		}
	p.message.small-padded{
		padding:8px 16px;
		}
	p.text-center{
		text-align:center;
		}
	p.text-large{
		font-size:1.5em;
		}
	p.message.warning{
		background-color:#ffffdd;
		color:#313131;
		}
	p.message.error{
		background-color:#ffdddd;
		color:#313131;
		}
	p.message.success{
		background-color:#ddffdd;
		color:#313131;
		}

p.alert i.material-icons{
	vertical-align:middle;
	font-size:24px;
	margin-right:0.25em;
	}
	p.alert .button-right{
		margin-top:-4px;
		margin-left:8px;
		}

div.representative{
	padding:24px;
	}
	div.representative p:last-child{
		margin-bottom:0;
		}

img.inline-round{
	display:inline-block;
	border-radius:50%;
	height:1em;
	vertical-align:bottom;
	}
img.photo-round{
	border-radius:50%;
	height:64px;
	}

.iframe iframe{
	height:90vh;
	border:none;
	}
.iframe.iframe-short iframe{
	height:50vh;
	}

/* CMS Content */
.cmscontent h1,
.cmscontent h2,
.cmscontent h3,
.cmscontent h4,
.cmscontent h5,
.cmscontent h6{
	margin-bottom:1rem;
	line-height:1.5rem;
	}
.cmscontent h1{
	font-size:2rem;
	font-weight:600;
	}
.cmscontent h2{
	font-size:1.5rem;
	font-weight:600;
	margin-bottom:0.5rem;
	}
.cmscontent h3{
	font-size:1.25rem;
	}
.cmscontent h4{
	}
.cmscontent h5{
	}
.cmscontent h6{
	}
.cmscontent a{

	}
.cmscontent p{
	margin-bottom:1rem;
	line-height:1.5rem;
	}
	.cmscontent p.note{
		padding:.5em 1rem;
		background:rgba(0,0,0,0.125);
		}
.cmscontent strong{
	font-weight:600;
	}
.cmscontent blockquote{
	}
.cmscontent ul{
	list-style-type:disc;
	margin-left:2rem;
	margin-bottom:1rem;
	}
	.cmscontent ul ul{
		list-style-type:circle;
		margin-left:1rem;
		margin-bottom:0.5rem;
		}
.cmscontent li{
	line-height:1.5rem;
	}
.cmscontent ol{
	list-style-type:decimal;
	margin-left:2rem;
	margin-bottom:1rem;
	}
.cmscontent img.alignleft, .cmscontent img.aligncenter, .cmscontent img.alignright{
	display:block;
	padding:5px;
	}
.cmscontent img.alignleft{
	float:left;
	margin:0 10px 10px 0;
	}
.cmscontent img.aligncenter{
	margin:0 auto 10px auto;
	}
.cmscontent img.alignright{
	float:right;
	margin:0 0 10px 10px;
	}
.cmscontent table{
	margin-bottom:1rem;
	}

.notemanager{

	}
	.notemanager form{
		margin-bottom:24px;
		}
	.notemanager ul.notes{
		margin:0;
		padding:0;
		}
		.notemanager ul.notes li.note{
			margin:8px 0;
			padding:8px 0;
			border-bottom:5px solid rgba(10, 11, 49, 0.20);
			margin-bottom:24px;
			list-style-type:none;
			}
			.notemanager ul.notes li.note.mine{
				border-bottom: 5px solid rgb(7,199,220);
				}
			.notemanager ul.notes li.note.system{
				border-bottom: 5px solid rgb(220,154,7);
				}
		.notemanager ul.notes li.note button{
			float:right;
			}
		.notemanager ul.notes li.note p.body{
			color:#000000;
			width:calc(100% - 10em);
			}
		.notemanager ul.notes li.note p.author,
		.notemanager ul.notes li.note p.context{
			font-size:12px;
			margin-bottom:0;
			}
		.notemanager ul.notes li.note p.context{
			float:right;
			}

p.file span.maxsize,
.progress .progresskb{
	float:right;
	}
p.message.progress{
	background-color:transparent;
	}

.progressbar{
	display:inline-block;
	height:5px;
	width:100%;
	background:#cccccc;
	vertical-align:middle;
	}
	.progressbar > *{
		display:block;
		border-radius:3px;
		height:100%;
		width:0%;
		background-color:rgb(7,199,220);
		}

ul.payment-timeline {
	display: flex;
	width: 100%;
	box-sizing: border-box;
	padding: 0 100px 160px !important;
	justify-content: center;
	}
	ul.payment-timeline li {
		display: inline-block;
		position: relative;
		flex-grow: 1;
		text-align: right;
		background-color: rgb(227, 227, 227);
		height: 5px;
		}
		ul.payment-timeline li:first-child {
			flex-grow: 0;
			}
		ul.payment-timeline li div.details {
			position: absolute;
			text-align: center;
			width: 220px;
			right: -120px;
			padding :0 10px;
			top: 35px;
			}
			ul.payment-timeline li:first-child div.details {
				left: -121px;
				}
			ul.payment-timeline li:first-child i.icon {
				left: -16px;
				right: auto;
				}
		ul.payment-timeline li i.icon {
			font-size: 36px;
			position: absolute;
			top: -9px;
			right: -16px;
			font-style: normal;
			font-family: FontAwesome;
			background-color: #fff;
			z-index: 999;
			}
			ul.payment-timeline li.scheduled i.icon:after,
			ul.payment-timeline li.waiting i.icon:after {
				color: #666;
				content: "\f017";
				}
			ul.payment-timeline li.pending i.icon:after {
				color: #009fff;
				content: "\f09d";
				}
			ul.payment-timeline li.paid i.icon:after,
			ul.payment-timeline li.success i.icon:after {
				color: #090;
				content: "\f058";
				}
			ul.payment-timeline li.failed i.icon:after {
				color: #f00;
				content: "\f057";
				}
			ul.payment-timeline li.overdue i.icon:after {
				color: #f90;
				content: "\f017";
				}
			ul.payment-timeline li.underpayment i.icon:after,
			ul.payment-timeline li.warning i.icon:after {
				color: #f80;
				content: "\f071";
				}
		ul.payment-timeline li p {
			}
			ul.payment-timeline li p.amount {
				font-size: 20px;
				font-weight: bold;
				margin-bottom: 2px;
				text-wrap: balance;
				}
				ul.payment-timeline li p.date,
				ul.payment-timeline li p.actions {
					margin-bottom: 5px;
				}
				ul.payment-timeline li p.date.overdue {
					color: #f90;
				}
				ul.payment-timeline li p:last-child {
					margin-bottom: 0;
				}

.embera-embed-responsive {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden;
	}

.embera-embed-responsive-item {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
	}

.exception{
	font-family:monospace;
	}
	.exception h1,
	.exception h2,
	.exception p{
		margin-bottom:1rem;
		line-height:1.25rem;
		}
	.exception ol.trace {
		margin-bottom:1rem;
		}
		.exception ol.trace li{
			list-style-type:decimal;
			margin-left:2rem;
			line-height:1.25rem;
			margin-bottom:0.5rem;
			}
		.exception ol.trace li span.file{
			opacity:0.75;
			}

#overlay{
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	width:100%;
	height:100%;
	box-sizing:border-box;
	padding:2rem 3rem;
	display:flex;
	align-items: center;
	justify-content: center;
	background:rgba(0,0,0,0.5);
	z-index:999;
	}
	#overlay::before{
		content:'X';
		position:absolute;
		top:1rem;
		right:1rem;
		color:rgba(255,255,255,1);
		font-size:2em;
		cursor:pointer;
		}
	#overlay .modal{
		box-sizing:border-box;
		padding:0 1rem;
		width:100%;
		max-height:100%;
		overflow-y:auto;
		}
		#overlay .modal *:last-child{
			}
	#overlay .mdl-card[style]{
		padding:16px !important;
		}
	#overlay .wysiwyg table th,
	#overlay .wysiwyg table td{
		padding:4px 8px;
		font-size:14px;
		}
	#overlay .modal-video{
		background:#000000;
		padding:6px;
		}
	#overlay .modal-photo{
		background:#ffffff;
		padding:12px;
		}
		#overlay .modal-video > video,
		#overlay .modal-photo > div{
			width:100%;
			}
		#overlay .modal-photo > div{
			height:0;
			padding-bottom:75%;
			background-repeat:no-repeat;
			background-position:50%;
			background-size:contain;
			}

footer.mdl-mega-footer{
	padding:0;
	background: var(--secondary-colour);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	}

footer.below-footer{
	background: var(--primary-colour);
	color: rgba(255, 255, 255, 0.5);
	padding: 8px 24px;
	user-select: none;
	}

/* TinyMCE Fix */

div.mce-edit-area[style]{
	border-width:1px 1px 0 0 !important;
	}
.mce-branding-powered-by{
	display:none;
	}

@media (min-width: 840px) {

	}

@media (max-width: 839px) and (min-width: 480px) {

	.vertical-tabs .mdl-grid--no-spacing > .mdl-cell--2-col{
		width:100%;
		}

	}

@media (max-width: 839px) {

	.hide-tablet {
	  	display:none !important;
		}

	header .container,
	div.breadcrumbs .container,
	section.content .container,
	footer .container{
		padding-left:8px;
		padding-right:8px;
		}

	header a.welcome{
		display:none;
		}

	header h1{
		right:8px;
		}
	header ul.mini-nav{
		right:0;
		}
		header ul.mini-nav li a{
			padding-left:8px;
			padding-right:8px;
			}

	.carousel a.carousel-previous{
		left:-8px;
		}
	.carousel a.carousel-next{
		right:-8px;
		}

	.columns{
		margin-left:0;
		margin-right:0;
		}
	div.breadcrumbs ul li{
		display:none;
		}
		div.breadcrumbs ul li:nth-last-child(2){
			display:block;
			}
		div.breadcrumbs ul li i.fa-angle-right{
			display:none;
			}
		div.breadcrumbs ul li i.fa-level-up{
			display:inline-block;
			}

	.mdl-textfield input,
	.mdl-textfield textarea,
	.mdl-textfield select{
		padding-top:22px;
		}

	.mdl-textfield__label{
		white-space:normal;
		overflow:initial;
		}

	}

@media (max-width: 479px) {

	header h1{
		left:8px;
		}

	header a img.logo{
		display:none;
		}

	header ul.mini-nav{
		text-align:center;
		left:0;
		}

	.hide-phone {
	  	display:none !important;
		}

	section.simpleform .mdl-layout__content{
		padding:24px;
		}

	.vertical-tabs .mdl-grid--no-spacing > .mdl-cell--2-col{
		width:100%;
		}

	}

@media print {

	h2{
		page-break-before:always;
		}

	body > header,
	body > .breadcrumbs,
	.mdl-tabs__tab-bar,
	.gallery{
		display:none;
		}

	.mdl-tabs.is-upgraded .mdl-tabs__panel {
		display: block;
		}

	.wide-card[style]{
		padding:0 !important;
		}
	.wysiwyg h4{
		padding-left:0 !important;
		padding-right:0 !important;
		}

	}

@media only screen and (max-width: 800px) {

	.mdl-data-table table,
	.mdl-data-table thead,
	.mdl-data-table tbody,
	.mdl-data-table th,
	.mdl-data-table td,
	.mdl-data-table tr {
		display: block;
	}

	.mdl-data-table thead {
		padding-bottom: 0;
	}

	.mdl-data-table thead tr {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}

	.mdl-data-table tbody tr {
		border-bottom: 5px solid rgba(0, 0, 0, 0.12);
		height: auto;
	}

	.mdl-data-table tbody td,
	.mdl-data-table tbody td:first-of-type {
		border-width: 0;
		height: auto;
		border-bottom-width: 1px;
		position: relative;
		padding-left: 40%;
		white-space: normal;
		text-align:left;
		min-height: 44px;
	}

	.mdl-data-table tbody tr:last-child,
	.mdl-data-table tbody td:last-child {
		border-bottom: 0;
	}

	.mdl-data-table td:before {
		position: absolute;
		left: 15px;
		width: 35%;
		padding-right: 10px;
		padding-top: 2px;
		white-space: nowrap;
		text-align: left;
		font-weight: bold;
	}

	.mdl-data-table td:before {
		content: attr(data-column-title);
	}

	.calendar table.days tbody th,
	.calendar table.days tbody td {
		height: auto;
		}

	.calendar table.days th.week,
	.calendar table.days td.noday{
		display: none;
		}

	.calendar .mdl-data-table tbody td,
	.calendar .mdl-data-table tbody td:first-of-type{
		padding-left:0.75rem;
		border-width: 1px;
		}
	.calendar .mdl-data-table tbody tr {
		border-bottom-width: 2px;
		}

	ul.payment-timeline {
		flex-direction: column;
		padding-left: 0;
		padding-bottom: 0 !important;
	}

	ul.payment-timeline li {
		width: 2px;
		height: 170px;
		margin-left: auto;
		margin-right: auto;
		background: none;
	}
}

.colourswatch{
	display:inline-block;
	margin-right:0.25em;
	width:1.5em;
	height:1.5em;
	border:1px solid rgba(0,0,0,.12);
	vertical-align:middle;
	}

.rating-question i {
	font-size: 36px;
	cursor: pointer;
	}

div.star-rating-container{
	display: flex;
}

div.star-holder {
	position: relative;
	height: calc(3rem - 2.5px);
	width: calc(3rem - 2.5px);
	}
	div.star-holder i.fa-star {
		color: var(--primary-colour-darker);
		}
	div.star-holder div.star {
		width: calc(100% - 1rem);
		height: calc(100% - 1rem);
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		position: absolute;
		}
	div.star-holder div.star:last-child {
		width: calc(100% - 1rem);
		height: calc(100% - 1rem);
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		}
		div.star-holder div.star i.fa-star {
			font-size: 2rem;
			z-index: 10;
			width: 100%;
			height: 100%;
			}
		div.star-holder div.star:last-child i.fa-star {
			font-size: 2rem;
			color: var(--primary-colour);
			z-index: 11;
			overflow: hidden;
			height: 100%;
			}

.draggable-list > * {
	border-top:1px solid transparent;
	}
.draggable-list [draggable="true"] {
	position:relative;
	width:100%;
	cursor:move;
	}
	.draggable-list [draggable="true"].being-dragged {
		opacity:0.5;
		}
	.draggable-list [draggable="true"].being-dragged-over {
		border-top: 2px solid green;
		}

div:has(> .lms-report-graphs) {
	height: 25rem;
}

.lms-report-graphs {
	height: 100%;
	width: 100%;
	}
	.lms-report-graphs .lmsmoduletimechart, .lms-report-graphs .lmsassessmentchart {
		height: 100%;
		}

@media (max-width: 1200px) {
	div:has(> .lms-report-graphs:not(:has(p))) {
		height: 40rem;
	}

	.lms-report-graphs:not(:has(p)) {
		display: flex;
		flex-direction: column;
		align-items: center;
		flex-wrap: nowrap;
		}
		.lms-report-graphs:not(:has(p)) > div {
			width: calc(100% - 2rem) !important;
			height: 50%;
			}
}

th.vertical-header {
	writing-mode: sideways-lr;
	text-orientation: mixed;
	vertical-align: middle;
	height: auto;
	padding: 12px 0px;
	text-align: left !important;
}