@charset "utf-8";
/* CSS Document */

/* Body - Default Font and Layout */
body {
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	color: #2E3B4C;
	font-weight: 500;

	background-color: #ECEDF2;

	overflow-x: hidden;
}

/* Body - Smooth Scroll */
html {
	scroll-behavior: smooth;
}

/* Body - links */
a {
	color: #183153;
	text-decoration: none;
}
a:hover {
	color: #183153;
	text-decoration: none;
}
.link-full {
	display: block;

	width: 100%;
}

/* Body - Lines */
hr {
	border-top: 1px solid #ececec;
}

/* Body - Headers */
h1, h2, h3, h4, h5 {
	font-family: 'Quicksand', sans-serif;
	font-weight: 700;
	color: #2E3B4C;
}

/* Body - Default Buttons */
button {
	outline: none !important;
}
	*:focus {
		outline: none !important;
	    box-shadow: none !important;
	}
	*:active {
		outline: none !important;
	    box-shadow: none !important;
	}

/* Body - Overlay */
#body-overlay {
	transition: 0.2s;
}
#main-panel {
	transition: 0.2s;
}

.body-overlay__blur {
    background: rgba(0, 0, 0, 0.5);

	position: fixed;
	right: -300px;

	width: 100%;
	height: 100%;

	z-index: 100;

	transition: 0.2s;
}
.panel-blur {
	filter: opacity(25%);
	transition: 0.2s
}

/* Image Blurring */
.img-blur-wrapper {
	border-radius: 4px;

	width: 98px;
	height: 78px;

	overflow: hidden;
	position: relative;
}
.img-blur {
	filter: grayscale(0.8) blur(2px);
	opacity: 0.8;

	margin: -1px;
}
	.img-blur-wrapper::after {
		font-family: "Font Awesome 5 Free";
	  	font-weight: 900;
		font-size: 25px;
	  	content: "\f071";

		position: absolute;
		left: 35px;
		top: 18px;
	}

/* Tables */
.container-main__content th:first-child {
	border-top-left-radius: 4px;
}
.container-main__content th:last-child {
	border-top-right-radius: 4px;
}
.container-main__content th {
	background: #2e3b4c;

    color: #fff;

	padding: 15px !important;
}
.container-main__content td {
	background: #ecedf2;
	padding: 15px !important;
}

/* Body - Default Navigation - Sticky */
.sticky-element {
    position: sticky;
    top: 0;

    width: 100%;

    z-index: 300;
}
	.side-panel .sticky-element {
		top: 100px;

		z-index: 0;
	}
	.main-panel .sticky-element {
		top: 80px;

		z-index: 50;
	}

/* Body- Notifications */
.notification {
	background: #2E3B4C;

	font-size: 16px;
	font-weight: 400;
	color: #fff;

	text-align: left;

	width: auto;
	height: 80px;
	line-height: 80px;

	padding: 0px 60px 0px 30px;

	position: absolute;
	right: 0;

	z-index: 400;

	animation: fadeOut 0.8s forwards;
	animation-delay: 4s;
}
@keyframes fadeOut {
	from {right: 0;}
	to {right: -100%;}
}

/* Notification - Green Box */
.notification__success {
	border-left: 3px solid #2caf85;
}

/* Notification - Red Box */
.notification__error {
	border-left: 3px solid #af2c2c;
}

/* Notification - Blue Box */
.notification__info {
	border-left: 3px solid #7ca1d9;
}

/* Image Zoom */
.image-zoom__area {
	position: relative;
}
	.image-zoom__large {
		position: absolute;

		border-radius: 100%;

		width: 225px;
		height: 225px;

		box-shadow: 0 0 12px #3D3D3D;

		display: none;
	}
	.image-zoom__small {
		display: block;
	}

/* Tool Tip */
.tip {
	position: relative;

	display: inline-block;
}
	.tip .tooltiptext {
		background-color: #000;
		border-radius: 6px;

		text-align: center;
		white-space: nowrap;
		color: #fff;

		width: auto;
		height: auto;

		padding: 6px 12px;
		margin-left: -100px; /* We need this specific for word length */

	  	visibility: hidden;

		position: absolute;
		top: -40px;
  	  	left: 50%;

  	  	z-index: 1;
	}
	.tip .tooltiptext::after {
	  content: " ";
	  position: absolute;
	  top: 100%;
	  left: 50%;

	  margin-left: -5px;
	  border-width: 5px;
	  border-style: solid;
	  border-color: #000 transparent transparent transparent;
	}
	.tip:hover .tooltiptext {
	  visibility: visible;
	}

/* Modal - Hack */
body.modal-open {
    overflow: auto !important;
}
body.modal-open[style] {
    padding-right: 0px !important;
}
.modal::-webkit-scrollbar {
    width: 0 !important;
}
.modal-content {
	border: none;
}
.modal-header {
	border-bottom: 1px solid #ededed;

	font-weight: 500;
	font-size: 14px;

	padding: 20px;
}
.modal-body {
	padding: 20px 20px 0 20px;

	text-align: left;
}
	.modal-body img {
		width: 100% !important;
		height: 150px !important;

		object-fit: cover !important;
	}
.modal-footer {
	border: none;

	padding: 0 20px 20px 20px;
}
