@import url('telerik.css');
@import url('../lib/font-awesome/css/all.min.css');
@import url('fonts.css');

/* -------------------------------------------------------------------------- */
/* Root Elements */
/* -------------------------------------------------------------------------- */
:root {
	/* Background Colors */
	--bg-primary: #003866;
	--bg-light: #FFFFFF;
	--bg-disabled: #A4ACB9;
	--bg-border: #E4E4E4;

	/* Text Colors */
	--text-primary: #333333;
	--text-secondary: #006080;
	--text-disabled: #A4ACB9;
	--text-light: #A6CFF9;

	--text-gray-400: #C4CADA;
	--text-gray-500: #99A1B7;
	--text-gray-600: #78829D;

	/* Fonts */
	--icon-font: 'Font Awesome 6 Pro';
	--body-font: roboto, Segoe UI, sans-serif;
	--font-size: 1.4rem;
	font-size: 62.5%;
}

	:root body {
		margin: 0;
		padding: 0;
		line-height: 1.15;
		color: var(--text-primary);
		font-family: var(--body-font);
		font-size: var(--font-size);
		scroll-behavior: smooth;
		-moz-osx-font-smoothing: grayscale;
		-webkit-font-smoothing: antialiased;
	}

/* -------------------------------------------------------------------------- */
/* Main Elements */
/* -------------------------------------------------------------------------- */

*,
*:before,
*:after {
	/*direction: rtl;*/
	text-size-adjust: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

html {
}

body {
	height: 100vh;
	overflow-y: scroll;
}

h1:focus {
	outline: none;
}

/* -------------------------------------------------------------------------- */
/* Layout Elements */
/* -------------------------------------------------------------------------- */

.main-layout {
	height: 100%;
}

/* -------------------------------------------------------------------------- */
/* Content Elements */
/* -------------------------------------------------------------------------- */

a,
.btn-link {
	color: #0071c1;
}

.content {
	padding-top: 1.1rem;
}

/* -------------------------------------------------------------------------- */
/* Sizing Elements */
/* -------------------------------------------------------------------------- */

.grid-fill-vertical {
	height: 100%;
}

/* -------------------------------------------------------------------------- */
/* Button Elements */
/* -------------------------------------------------------------------------- */

.btn-primary {
	color: #fff;
	background-color: #1b6ec2;
	border-color: #1861ac;
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
	box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

/* -------------------------------------------------------------------------- */
/* Validation Elements */
/* -------------------------------------------------------------------------- */

.valid.modified:not([type=checkbox]) {
	outline: 1px solid #26b050;
}

.invalid {
	outline: 1px solid red;
}

.validation-message {
	color: red;
}

/* -------------------------------------------------------------------------- */
/* Alert Styling */
/* -------------------------------------------------------------------------- */
.alert {
	position: relative;
	padding: .75rem 1.25rem;
	margin-bottom: 1rem;
	border: 1px solid transparent;
	border-top-color: transparent;
	border-right-color: transparent;
	border-bottom-color: transparent;
	border-left-color: transparent;
	border-radius: .25rem;
	width: 100%;
}

.alert-primary {
	color: #004085;
	background-color: #cce5ff;
	border-color: #b8daff;
}

.alert-secondary {
	color: #383d41;
	background-color: #e2e3e5;
	border-color: #d6d8db;
}

.alert-success {
	color: #155724;
	background-color: #d4edda;
	border-color: #c3e6cb;
}

.alert-danger {
	color: #721c24;
	background-color: #f8d7da;
	border-color: #f5c6cb;
}

.alert-warning {
	color: #856404;
	background-color: #fff3cd;
	border-color: #ffeeba;
}

.alert-info {
	color: #0c5460;
	background-color: #d1ecf1;
	border-color: #bee5eb;
}

.alert-light {
	color: #818182;
	background-color: #fefefe;
	border-color: #fdfdfe;
}

.alert-dark {
	color: #1b1e21;
	background-color: #d6d8d9;
	border-color: #c6c8ca;
}



/* -------------------------------------------------------------------------- */
/* Blazor Elements */
/* -------------------------------------------------------------------------- */

#blazor-error-ui {
	background: lightyellow;
	bottom: 0;
	box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
	display: none;
	left: 0;
	padding: 0.6rem 1.25rem 0.7rem 1.25rem;
	position: fixed;
	width: 100%;
	z-index: 1000;
}

	#blazor-error-ui .dismiss {
		cursor: pointer;
		position: absolute;
		right: 0.75rem;
		top: 0.5rem;
	}

.blazor-error-boundary {
	background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
	padding: 1rem 1rem 1rem 3.7rem;
	color: white;
}

	.blazor-error-boundary::after {
		content: "An error has occurred."
	}

/* -------------------------------------------------------------------------- */
/* Styling */
/* -------------------------------------------------------------------------- */

.separator {
	display: block;
	height: 0;
	border-bottom: 0.1rem solid var(--bg-border);
	margin-top: 2rem;
	margin-bottom: 2rem;
}

	.separator.separator-content {
		display: flex;
		align-items: center;
		border-bottom: 0;
		text-align: center;
	}

	.separator-content::after, 
	.separator-content::before {
		content: " ";
		width: 100%;
		border-bottom: 0.1rem solid var(--bg-border);
	}

		.separator.separator-content > .separator-content-text {
			color: var(--text-gray-500);
			font-weight: 500;
			font-size: 0.95rem;
		}

.rounded-border {
	border-style: solid;
	border-width: 1px;
	border-color: var(--bg-border);
	border-radius: 0.5rem;
}

.padding-10 {
	padding: 1rem;
}

.margin-10 {
	margin: 1rem;
}

.fill-height {
	height: 100%;
}

.fill-width {
	width: 100%;
}
/* -------------------------------------------------------------------------- */
/* Overidden */
/* -------------------------------------------------------------------------- */
.k-splitbar {
	background-color: var(--bg-border);
}


.main-layout-container {
	display: grid;
	grid-template-areas: "header header header" ". main ." ". footer .";
	grid-template-columns: 1fr 4fr 1fr;
	grid-template-rows: 1fr auto 1fr;
	grid-gap: 1rem;
	align-items: center;
	justify-content: center;
}

.main-layout-container {
	background: url(../images/signInBackground.png) hsl(207, 100%, 30%);
	background-repeat: repeat-x, no-repeat;
	background-size: cover;
	background-attachment: fixed;
}

.main-layout {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: column;
	flex: 0 0 auto;
	justify-content: flex-start;
	align-content: space-between;
	align-items: center;
	align-self: center;
	justify-self: center;
	grid-area: main;
	width: 100%;

	position: relative;
	z-index: 1;
}
	.main-layout form {
		display: flex;
		flex-wrap: wrap;
		gap: 1rem;
		flex-direction: column;
		align-content: flex-start;
		justify-content: flex-start;
		width: 100%;
	}

.main-content-container {
	grid-area: main;
}

.main-content {
	box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.2);
	border-radius: 0.5rem;
	background-color: #fff;
	padding: 2.5rem;
}

.page-header-container {
	grid-area: header;
	height: 100%;
}

.page-header-content {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.page-footer-container {
	grid-area: footer;
}
.page-footer-content {
	color: var(--text-light);
}

.sign-in-container {
	width: 44rem;
	min-width: 32rem;
	max-width: 44rem;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	align-items: center;
	justify-content: center;
}

	.sign-in-form {
	}

.sign-in-logo {
	display: flex;
	flex-wrap: nowrap;
	position: absolute;
	margin: 0 auto;
	left: 0;
	right: 0;
	top: -90px;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	z-index: 9;
	background: #37384a;
	padding: 1.5rem;
	box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.2);
}

	.sign-in-logo img {
		width: 100%;
		align-self: center;
	}

.manage-layout {
	width: 100%;
	height: 95vh;
	overflow: hidden;
	overflow-y: scroll;
}

.error-layout {
	width: 100%;
	height: 95vh;
}

.editor {
	display: flex;
	flex-direction: column;
	padding-bottom: 0.8rem;
	width: 100%;
}

.editor .editor-label {
	font-weight: 500;
	font-size: 1.3rem;
	color: #333;
	word-wrap: break-word;
}

	.editor .editor-field {
		font-size: 1.3rem;
		font-weight: 300;
		-ms-word-wrap: break-word;
		word-wrap: break-word;
		overflow: visible;
		white-space: normal;
		padding-left: 0.4rem;
		margin-top: 0.5rem;
		margin-bottom: 0.2rem;
	}

		.editor .editor-field #userName,
		.editor .editor-field #password {
			padding: 1rem;
			font-size: 1.5rem;
			font-weight: 400;
		}

		.editor .editor-field select {
			padding: 0.8rem 0.5rem 0.8rem 0.5rem;
			font-size: 1.1rem;
			overflow: hidden;
			-ms-text-overflow: ellipsis;
			-o-text-overflow: ellipsis;
			text-overflow: ellipsis;
			white-space: nowrap;
			max-width: 100%;
			width: 100%;
		}

@media only screen and (max-width: 1250px) {
	.main-layout-container {
		grid-template-columns: 1fr 3fr 1fr;
		grid-template-areas: "header header header" ". main ." ". footer .";
	}
}

@media screen and (max-width: 769px) {
	.main-layout-container {
		grid-template-columns: 2fr;
		grid-template-areas: "header" "main" "footer";
	}
}

@media screen and (max-width: 640px) {
	.sign-in-container {
		width: 100%;
		max-width: 100%;
	}
}

@media screen and (max-width: 460px) {
}