@charset "utf-8";

/*********/
/* Color */
/*********/

:root {
	--bs-primary-rgb: 229,14,57;
	--bs-primary-darker-rgb: 206,12,51;
	
	--bs-primary: rgb(var(--bs-primary-rgb));
	--bs-link-color: rgb(var(--bs-primary-rgb));
	--bs-link-hover-color: rgb(var(--bs-primary-rgb));
	--input-border-color:#ced4da;
	--input-border-color-focus:rgba(var(--bs-primary-rgb),0.3);
	--input-box-shadow: rgba(var(--bs-primary-rgb),0.25);
	--highlight-color: rgb(var(--bs-primary-rgb));
	
	--bs-info: #3b7ddd;
	--bs-info-rgb: 59, 125, 221;
}

.btn-primary {
	--bs-btn-bg: rgb(var(--bs-primary-rgb));
	--bs-btn-border-color: rgb(var(--bs-primary-rgb));
	--bs-btn-hover-bg: rgb(var(--bs-primary-darker-rgb));
	--bs-btn-hover-border-color: rgb(var(--bs-primary-darker-rgb));
	--bs-btn-active-bg: rgb(var(--bs-primary-darker-rgb));
	--bs-btn-active-border-color: rgb(var(--bs-primary-darker-rgb));
	--bs-btn-disabled-bg: rgba(var(--bs-primary-rgb), 0.5);
	--bs-btn-disabled-border-color: rgba(var(--bs-primary-rgb), 0);
}

.pagination{
	--bs-pagination-active-bg: rgb(var(--bs-primary-rgb));
	--bs-pagination-active-border-color: rgb(var(--bs-primary-rgb));
}

.list-group-item.active{
	background-color:var(--bs-primary);
	border-color:var(--bs-primary);
}

.sidebar-item.active .sidebar-link:hover, .sidebar-item.active > .sidebar-link{
	border-left-color:var(--bs-primary);
	background:linear-gradient(90deg,rgba(var(--bs-primary-rgb),.1),rgba(var(--bs-primary-rgb),.088) 50%,transparent);
}

.stat.text-primary{
	background-color:rgba(var(--bs-primary-rgb),0.05);
}

.sidebar-dropdown .sidebar-item.active .sidebar-link{
	color:#FFFFFF;
}

.nav-icon:hover{
	color:var(--bs-primary);
}

.nav-item .indicator{
	background-color:var(--bs-primary);
}

.text-status-1{color:#dc3545;}
.text-status-2{color:#fcb92c;}
.text-status-3{color:#1cbb8c;}
.text-status-4{color:#3b7ddd;}
.bg-status-1{background-color:#dc3545;}
.bg-status-2{background-color:#fcb92c;}
.bg-status-3{background-color:#1cbb8c;}
.bg-status-4{background-color:#3b7ddd;}

.fc-exportButton-button{
	background-color:var(--bs-primary) !important;
	border-color:var(--bs-primary) !important;
}

/**********/
/* Layout */
/**********/

body, .btn{
	
}

body > #overlay{
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	z-index:99999;
	background-color:rgba(0,0,0,0.5);
	cursor:progress;
}

::selection {
	background: var(--highlight-color);
	color:#FFFFFF;
}
::-moz-selection {
	background: var(--highlight-color);
	color:#FFFFFF;
}

main{
	background-image: linear-gradient(132.6deg, #f5f7fb 23.3%, #f1f3f7 84.7%);
	background-image: linear-gradient(132.6deg, #cfd9df 0%, #e2ebf0 100%);
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type=number]{
	-moz-appearance:textfield;
}

pre{
	/*white-space:normal;*/
}

@media (max-width: 767px) {
	.table-responsive .bootstrap-select {
		position: static !important;
	}
	.table-responsive .bootstrap-select .dropdown-menu{
		max-width:100%;
	}
}
@media (min-width: 768px) {
	.table-responsive {
		overflow: visible;
	}
}

/*************/
/* Allgemein */
/*************/

.fadelink{
	display:inline-block;
	-webkit-transition: opacity 0.2s ease;
	-moz-transition: opacity 0.2s ease;
	-o-transition: opacity 0.2s ease;
	transition: opacity 0.2s ease;
}
.fadelink:hover, .fadelink:focus{
	opacity:0.65;
}

.disabled,
.btn:disabled,
.form-control:disabled,
.form-select:disabled{
	cursor:not-allowed !important;
	pointer-events: all !important;
}

option:disabled{
	color:#999999;
}

.page-link{
	cursor:pointer;
}

.grecaptcha-badge{
	display:none;
}

.sidebar-content{
	z-index:9999;
}

.page-link:focus{
	box-shadow:none;
}

.btn:focus{
	box-shadow:none;
	outline:none;
}

.btn-file {
	position: relative;
	overflow: hidden;
}
.btn-file input[type=file] {
	position: absolute;
	top:0;
	right:0;
	left:0;
	bottom:0;
	text-align: right;
	filter: alpha(opacity=0);
	opacity: 0;
	outline: none;
	background: white;
	cursor: inherit;
	display: block;
}

#toast-container > div{
	opacity: 1;
}

.passstrength{
	position:absolute;
	right:8px;
	bottom:3.5px;
	line-height:1.5;
	z-index:100;
}
.passstrength.passstrength_lg{
	bottom:7px;
}

.table-button{
	cursor:pointer;
	background:transparent;
	border:none !important;
	outline:none !important;
	padding:0;
	color:rgb(108, 117, 125);
}
.table-button:hover, .table-button:focus{
	color:rgb(33, 37, 41);
}

.table-cursor-pointer .click{
	cursor:pointer;
}

.fa-spin-hover:hover i{
	-webkit-animation: fa-spin 2s infinite linear;
	-moz-animation: fa-spin 2s infinite linear;
	-o-animation: fa-spin 2s infinite linear;
	animation: fa-spin 2s infinite linear;
}

#activityLog [data-bs-toggle="collapse"] {
	cursor: pointer;
}

.tooltip{
	z-index:20000;
}

.card > .table-responsive:last-child{
	border-radius:var(--bs-card-border-radius);
}

.bg-image{
	background-color:#F8F9FA;
}
.table-striped-columns > :not(caption) > tr > :nth-child(2n) .bg-image, .table-striped > tbody > tr:nth-of-type(2n+1) .bg-image{
	background-color:#FFFFFF;
}

.box-square{
	display:block;
	position:relative;
}

.box-square::after{
	content: "";
	display: block;
	padding-bottom: 100%;
}

.box-square > *{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.datatables thead, .datatables tfoot{
	display: table-row-group;
}

table.dataTable tbody td.select-checkbox::after, table.dataTable tbody td.select-checkbox::before, table.dataTable tbody th.select-checkbox::after, table.dataTable tbody th.select-checkbox::before{
	top:50%;
	height:14px;
	width:14px;
	margin-left:-7px;
	margin-top:-7px;
}
table.dataTable tr.selected td.select-checkbox::after, table.dataTable tr.selected th.select-checkbox::after{
	text-shadow:none;
	font-size:11px;
	margin-top:-9px;
	margin-left:-8px;
}

@media screen and (max-width:1199px){
	.datatables .text-nowrap{
		/*white-space:initial !important;*/
	}
}

.dataTables_length{
	padding: 0.9rem 1.25rem;
}
.dataTables_length label{
	margin:0;
}

.dataTables_info{
	margin-top:2px;
	padding: 1rem 1.25rem;
}

.card > .dataTables_wrapper .table.dataTable tr:last-child td{
	border-bottom:1px solid var(--bs-border-color);
}
table.dataTable.table-striped > tbody > tr > *{
	box-shadow:none !important;
}
table.dataTable.table-striped > tbody > tr.odd > *{
	background-color:var(--bs-table-striped-bg);
	color:var(--bs-table-striped-color);
}
table.dataTable.table-striped > tbody > tr:hover > *{
	background-color:var(--bs-table-hover-bg);
	color:var(--bs-table-hover-color);
}
table.dataTable tbody > tr.selected, table.dataTable tbody > tr > .selected,
table.dataTable.table-striped > tbody > tr.selected{
	background-color:rgb(var(--bs-primary-rgb),0.25);
}
table.dataTable.table-striped > tbody > tr.selected{
	--bs-table-striped-bg: rgb(0,0,0,0);
	--bs-table-striped-color: var(--bs-table-striped-color);
}
table.dataTable > tbody > tr.selected > *,
table.dataTable > tbody > tr.odd.selected > *{
	color:var(--bs-table-color);
}

@media screen and (max-width: 767px)
{
	li.paginate_button.previous,
	li.paginate_button.next,
	li.paginate_button.active{
		display: inline;
	}

	li.paginate_button.first,
	li.paginate_button.last
	{
		display: none;
	}
}

.header > .row{
	min-height:42px;
}

.card-actions .dropdown{
	line-height: 1.25;
}

/************/
/* Combobox */
/************/

.bootstrap-select .dropdown-menu{
	top:100% !important;
	border-radius:0;
	border-radius:0.2rem;
}

.bootstrap-select .dropdown-toggle{
	border:1px solid #ced4da !important;
}
.bootstrap-select .dropdown-toggle:focus{
	outline:none !important;
	box-shadow:0 0 0 .2rem var(--input-box-shadow);
}

.bootstrap-select .bs-searchbox{
	padding-bottom:10px;
}

.bootstrap-select .dropdown-item.active{
	background-color:var(--bs-primary);
}

.bootstrap-select .btn{
	background-color:#FFFFFF;
}

/*********/
/* Modal */
/*********/

#modalPopup{
	z-index:10001;
}

.modal-backdrop{
	z-index:10000;
}

.modal-body{
	position:static !important;
}

.modal-body .modal-action{
	position:absolute;
	left:16px;
	bottom:16px;
}

/**************/
/* Navigation */
/**************/

.sidebar-dropdown .sidebar-link::before{
	font-family:'Font Awesome 6 Pro';
	content:'\f0da';
	font-weight:600;
}

#navbar-top{
	min-height:65px;
}

/*********/
/* Forms */
/*********/

.form-control:focus,
.form-select:focus{
	border-color:var(--input-border-color-focus);
	box-shadow:0 0 0 .2rem var(--input-box-shadow);
}

.form-control-lg{
	padding:.85rem 1rem;
	font-size: 1.2rem;
}

.form-check.form-check-lg .form-check-input{
	width: 1.5rem;
	height: 1.5rem;
}

.btn-group-lg>.btn, .btn-lg {
	padding: 0.5rem 1rem;
	font-size: 1.25rem;
}

.form-check-input{
	/*margin-top:0;*/
	border-color:var(--input-border-color);
}
.form-check-input:focus{
	border-color:var(--input-border-color-focus);
	box-shadow:0 0 0 .2rem var(--input-box-shadow);
}
.form-check-input:checked{
	background-color: var(--bs-primary);
	border-color: var(--bs-primary);
}

.form-switch .form-check-input:focus{
	background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0, 0, 0, 0.25)'/%3E%3C/svg%3E");
}
.form-switch .form-check-input:checked{
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E");
}

.form-group[class*=has-icon-].has-icon-left .form-control-icon {
	left: 0.2rem;
}

.form-group[class*=has-icon-] .form-control.form-control-lg{
	padding-left:3rem;
}

.form-group[class*=has-icon-] .form-control-icon {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	padding: 0 0.6rem;
}

label{
	margin-bottom:4px;
}

.input-group-text{
	padding-left:0.5rem;
	padding-right:0.5rem;
}

.input-group .btn{
	padding-left:0.5rem;
	padding-right:0.5rem;
	border:1px solid #ced4da;
	background-color:#e9ecef;
}
.input-group .btn:hover, .input-group .btn:focus{
	background-color:var(--bs-btn-hover-bg);
}

/*********/
/* Login */
/*********/

#auth{
	height: 100vh;
	overflow-x: hidden;
	background-color:#FFFFFF;
}

#auth #auth-right{
	position: relative;
	background-color:#2C2C2C;
	background-image:url('/img/layout/bg_auth.jpg');
	background-size:cover;
	background-position:right center;
}

#auth #auth-right:after{
	content: "";
	display: block;
	position: absolute;
	z-index: 0;
	top: 0;
	right: 100%;
	width: 10000px;
	height: 100%;
	background-color: #fff;
	transform-origin: bottom right;
	-webkit-transform: skewX(175deg);
	-moz-transform: skewX(175deg);
	-ms-transform: skewX(175deg);
	-o-transform: skewX(175deg);
	transform: skewX(175deg);
}

#auth #auth-left{
	padding:5rem 8rem;
	z-index:1;
}

#auth #auth-left .auth-title{
	font-size:3rem;
	margin-bottom:1rem;
}

#auth #auth-left .auth-subtitle{
	font-size:1.5rem;
	line-height:2.5rem;
	color:#a8aebb;
}

#auth #auth-left .auth-logo{
	margin-bottom:5rem;
}

#auth #auth-left .auth-logo img{
	height:4rem;
}

@media screen and (max-width:1199px){
	#auth #auth-left{
		padding:2rem 2rem;
	}
	
	#auth #auth-left .auth-title{
		font-size:2rem;
	}
}

#auth .navbar-lang{
	padding:0;
	box-shadow:none;
	position:absolute;
	top:44px;
	right:44px;
}

@media screen and (max-width:1199px){
	.content{
		padding-left:0.75rem;
		padding-right:0.75rem;
	}
}

/***************/
/* Drag & Drop */
/***************/

.files{
	position:relative;
	outline: 2px dashed var(--input-border-color);
	outline-offset: -10px;
	margin: 0;
	height:200px;
	border:1px solid var(--input-border-color);
	border-radius:.2rem;
}

.files input{
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	width:100%;
	cursor:pointer;
	opacity:0;
	z-index:20;
}
.files:focus-within{
	box-shadow:0 0 0 .2rem var(--input-box-shadow);
}

.files .label{
	height:100%;
	width:100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	align-items:center;
	text-align:center;
}

/***********/
/* Galerie */
/***********/
.gallery .icon{
	position:absolute;
	right:0;
	top:0;
	font-size:24px;
	line-height:1;
	height:32px;
	width:32px;
	text-align:center;
	color:#FFFFFF;
	z-index:20;
	padding:4px;
	background-color:#000000;
}

/*****************/
/* Notifications */
/*****************/

#notifications .list-group,
#notifications_list .list-group{
	overflow:hidden;
}

#notifications .item,
#notifications_list .item{
	position:relative;
}

#notifications a,
#notifications_list a{
	text-decoration:none;
}

/****************/
/* Fullcalendar */
/****************/
@media screen and (max-width:767px)
{
	.fc-toolbar.fc-header-toolbar{
		display:block;
		text-align:center;
	}
	.fc .fc-toolbar-title{
		margin:8px 0;
	}
}

#calendar .fc-day, #calendar .fc-content-skeleton, .fc-highlight-skeleton {
	cursor: pointer;
}

#calendar .fc-day-today .fc-daygrid-day-top {
	background-color:transparent;
	font-weight: bold;
}

#calendar .fc-daygrid-day-top .fc-daygrid-day-number{
	color:var(--bs-body-color);
}

#calendar .fc-day-today .fc-daygrid-day-top .fc-daygrid-day-number{
	/*color: #FFFFFF;*/
}

.fc-theme-standard .fc-col-header-cell{
	background-color:#222e3c;
}

.fc-theme-standard .fc-col-header-cell-cushion{
	color: #FFFFFF;
	text-decoration:none;
	cursor:default;
}

.fc-theme-standard .fc-event{
	background-color: var(--bs-primary);
	color: #FFFFFF;
	cursor:default;
}

.fc-theme-standard .fc-event .fc-daygrid-event-dot{
	border:none;
}

.fc-theme-standard .fc-event .fc-event-time{
	font-weight:bold;
	font-family:Monospace;
}

.fc-v-event{
	border:0;
	padding:0 4px;
}

.fc-list-event-graphic{
	display:none;
}

.fc .fc-daygrid-day.fc-day-today{
	
	background-color:rgba(0,0,0,0.025);
	border:1px solid var(--fc-border-color);
}

.fc .fc-daygrid-day:hover{
	background-color:rgba(0,0,0,0.025);
}

.fc-daygrid-body td{
	height:16%;
}

.tempus-dominus-widget{
	z-index:100000 !important;
}