.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}





/* Login Bereich */
body {
  font-family: 'Roboto', sans-serif;
  height: 100%;
}
html {
  height: 100%;
}
input, button {
  font-family: 'Roboto', sans-serif;
}

.login-div {
	min-width: 250px;
	max-width: 400px;
	margin: 0px auto;
	padding: 20px;
}

.main-div {
  min-width: 250px;
  max-width: 400px;
  margin: 0px auto;
  margin-top: 150px;
  padding: 20px;
}

.main-div input {
  display: block;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 15px;
  outline: none;
  margin-bottom: 20px;
  width: 100%
}

.main-div button {
  display: block;
  background: #57bfc7;
  color: #fff;
  border: 0px;
  border-radius: 5px;
  padding: 15px;
  width: 100%;
}

.main-div button:hover {
  background: #49a5ac;
  color: #fff;
}

body,
p,
li,
span,
h1,
h2,
h3,
h4 {
  font-family: 'Roboto';
	font-weight: 300;
}

h2{
	color: #297785;
}

a{
	color:#297785;
}
a:hover{
	color:#00384b;
}

/* Farbverlauf */
.verlauf {
  background: #00b7ea;
  background: -moz-linear-gradient(left, #00384b 0%, #57bfc7 100%);
  background: -webkit-linear-gradient(left, #00384b 0%, #57bfc7 100%);
  background: linear-gradient(to right, #00384b 0%, #57bfc7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00384b', endColorstr='#57bfc7', GradientType=1);
}

/* Farben */
.white {
  color: #fff;
}


/* Bootstrap Override */

.btn-outline-primary.custom-file-control::before,
.btn.btn-outline-primary {
  color: #297785;
  border: 1px solid #297785;
}
.btn-outline-primary.active.custom-file-control::before,
.btn-outline-primary.custom-file-control:active::before,
.btn-outline-primary.custom-file-control:focus::before,
.btn-outline-primary.custom-file-control:hover::before,
.btn-outline-primary.focus.custom-file-control::before,
.btn.btn-outline-primary.active,
.btn.btn-outline-primary.focus,
.btn.btn-outline-primary:active,
.btn.btn-outline-primary:focus,
.btn.btn-outline-primary:hover,
.open > .btn-outline-primary.dropdown-toggle.custom-file-control::before,
.open > .btn.btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #297785;
  border-color: #297785;
}
button, input[type="text"] {
  min-height: 35px;
	padding: 0 10px 0px 10px;
}
.btn{
	margin-right: 10px;
	font-size: 14px;
	font-weight: 400;
}


/* Plus Button */
.add-btn {
  float: left;
  position: relative;
  margin-top: 30px;
}




/* Menü Profil Button */
.btn-link {
  color: #fff;
}
.nav-tabs .nav-link {
  font-size: 14px;
  color: #fff;
	font-weight: 300;
}
.nav-tabs .nav-link:hover {
  background-color: #4797a6;

}
.nav-tabs.bg-primary .nav-link.active {
  color: #297785;
	font-weight: 400;
}
.nav-tabs .nav-link.active:hover {
  background-color: #fff;
}
.nav-tabs .nav-link,
.nav-tabs .nav-link:hover{
		border:0!important;
}
.btn.dropdown-toggle {
  color: #fff;
		padding: 11px 10px 0 0;
}

.nav-tabs .dropdown-menu {
  margin-top: 4px !important;
  padding: 0px 10px 5px 20px !important;
	background: #297785 !important;
	border-top: 1px solid #fff;
	padding-top: 15px !important;
}
.nav-tabs .dropdown-menu li{
	height: 35px;
}
.dropdown-item {
  color: #fff;
}
.nav-item {
  height: 47px;
}
.align-right {
  position: absolute;
  right: 0;
}
.dropdown-item.active,
.dropdown-item:active,
.dropdown-item:focus,
.dropdown-item:hover {
  color: #57bfc7;
}

/* ----- Tabellen Formatierung ---- */

.divTable {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.divTableRow {
  display: table-row;
}

.divTableRow:hover {
	background: #e6e6e6;
}

.divTableRow:nth-child(even) {
  display: table-row;
  background-color: #EEE;
}

.divTableHeading {
  background-color: #D2D2D2;
  display: table-header-group;
}

.divTableCell, .divTableHead {
  border: 0px solid #999999;
  display: table-cell;
}
.divTableCell{
	padding: 5px 10px 5px 10px;
}
.divTableHead,
.divTableFoot .divTableCell{
	padding: 3px 10px 3px 10px;
}
.divTableFoot .divTableCell .form-check-input {
  margin-top: 2px;
}
.divTableHeading {
  display: table-header-group;
}

.divTableFoot {
  background-color: #D2D2D2;
  display: table-footer-group;
}

.divTableBody {
  display: table-row-group;
}
.action-panel {
  position: absolute;
  margin-top: 2px;
}


/* Tabelle Keys */
.keys .divTableRow .divTableHead:nth-child(1) {
  width: 40px;
}
.keys .divTableRow .divTableHead:nth-child(2) {
/*  width: calc(20% - 230px);*/
}
.keys .divTableRow .divTableHead:nth-child(3) {
/*  width: calc(20% - 230px);*/
}
.keys .divTableRow .divTableHead:nth-child(4) {
  width: 10px;
  padding: 0;
}
.keys .divTableRow .divTableHead:nth-child(5) {
  width: 110px;
}
.keys .divTableRow .divTableHead:nth-child(6),
.keys .divTableRow .divTableHead:nth-child(7),
.keys .divTableRow .divTableHead:nth-child(8){
	/*  width: calc(20% - 230px);*/
}
.keys .divTableRow .divTableHead:nth-child(9) {
	width:40px;
}
.keys .divTableRow .divTableHead:nth-child(10) {
	width: 100px;
}

/* Tabelle Keybound Keys */
.kbkeys .divTableRow .divTableHead:nth-child(1) {
	width: 180px;
}
.kbkeys .divTableRow .divTableHead:nth-child(2) {
	/*  width: calc(20% - 230px);*/
}
.kbkeys .divTableRow .divTableHead:nth-child(3) {
	width: 10px;
	padding: 0;
}
.kbkeys .divTableRow .divTableHead:nth-child(4) {
	width:80px;
}
.kbkeys .divTableRow .divTableHead:nth-child(5) {
	/*  width: calc(20% - 230px);*/
}
.kbkeys .divTableRow .divTableHead:nth-child(6) {
	width: 80px;
}


/* Tabelle Objekt Keys */
.objkeys .divTableRow .divTableHead:nth-child(1) {
	width: 140px;
}

.objkeys .divTableRow .divTableHead:nth-child(2) {
	/*  width: calc(20% - 230px);*/
}

.objkeys .divTableRow .divTableHead:nth-child(3) {
	width: 10px;
	padding: 0;
}

.objkeys .divTableRow .divTableHead:nth-child(4) {
	width: 80px;
}

.objkeys .divTableRow .divTableHead:nth-child(5),
.objkeys .divTableRow .divTableHead:nth-child(6) {
	/*  width: calc(20% - 230px);*/
}




/* Tabelle LockingSystem Keys */
.lskeys .divTableRow .divTableHead:nth-child(1) {
	width: 140px;
}

.lskeys .divTableRow .divTableHead:nth-child(2) {
	/*  width: calc(20% - 230px);*/
}

.lskeys .divTableRow .divTableHead:nth-child(3) {
	width: 10px;
	padding: 0;
}

.lskeys .divTableRow .divTableHead:nth-child(4) {
	width: 80px;
}

.lskeys .divTableRow .divTableHead:nth-child(5),
.lskeys .divTableRow .divTableHead:nth-child(6) {
	/*  width: calc(20% - 230px);*/
}





/* Tabelle Objs */
.objs .divTableRow .divTableHead:nth-child(1),
.objs .divTableRow .divTableHead:nth-child(2),
.objs .divTableRow .divTableHead:nth-child(3) {
  width: 30%;
}
.objs .divTableRow .divTableHead:nth-child(4) {
  width: 100px;
}

/* Tabelle Verlauf */
.history .divTableRow .divTableHead:nth-child(1) {
	width: 40px;
}
.history .divTableRow .divTableHead:nth-child(2) {
	width: 100px;
}
.history .divTableRow .divTableHead:nth-child(3) {
	width:160px;
}
.history .divTableRow .divTableHead:nth-child(6){
  width: 200px;
}


/* Tabelle Users (Adressen) */
.users .divTableRow .divTableHead:nth-child(1) {
	width: 10px;
}
.users .divTableRow .divTableHead:nth-child(2),
.users .divTableRow .divTableHead:nth-child(3),
.users .divTableRow .divTableHead:nth-child(4){
  width: 27%;
}
.users .divTableRow .divTableHead:nth-child(5) {
  width: 50px;
}






/* Tabelle ---> MODAL */
table.table-modal > * > * > * {
  padding: 3px 10px 3px 10px;
}
table.table-modal.schluessel-waehlen tr th:nth-child(3){
  width: 10px;
  padding: 0;
}
table.table-modal.schluessel-waehlen tr th:nth-child(4){
  width: 80px;
}
table.table-modal.schluessel-waehlen tr th:nth-child(2),
table.table-modal.schluessel-waehlen tr th:nth-child(6){
  width: 150px;
}
table.table-modal.schluessel-waehlen tr td:nth-child(7) .btn{
  float: right;
  margin: 2px 0 0 0;
  padding: 5px 5px 0 5px;
}


.bgcolor-green {
  background: rgb(48, 168, 0);
}

.bgcolor-red {
  background: rgb(168, 0, 0);
}

.form-check-input[type="checkbox"]:checked,
.form-check-input[type="checkbox"]:checked:focus,
.form-check-input:checked:focus {
  background-color: #297785;
}
.form-check-input:checked,
.form-check-input:checked:focus{
	border-color: #297785;
}


/* SCAN Seite ZUsatzfelder*/
.auswahl-close {
  position: absolute;
  top: 10px;
  right: 10px;
}

.auswahl-info {
	position: absolute;
	top: 40px;
	right: 10px;
}

/* Card Grid Layout Override*/

.cards-grid {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  hyphens: auto;
}
.cards__item {
  display: flex;
  padding: 10px;
  overflow: hidden;
}
@media (min-width: 350px) {
  .cards__item {
    width: 100%;
  }
}
@media (min-width: 450px) {
  .cards__item {
    width: calc(100% / 2);
  }
}
@media (min-width: 800px) {
  .cards__item {
    width: calc(100% / 3);
  }
}
@media (min-width: 1080px) {
  .cards__item {
    width: calc(100% / 4);
  }
}
@media (min-width: 1500px) {
  .cards__item {
    width: calc(100% / 5);
  }
}
@media (min-width: 1800px) {
  .cards__item {
    width: calc(100% / 6);
  }
}
@media (min-width: 2100px) {
  .cards__item {
    width: calc(100% / 7);
  }
}


.card-grid {
  background-color: white;
  border-radius: 0.25rem;
  box-shadow: 0 10px 15px -3px rgba(0,0,0,.07),0 4px 6px -2px rgba(0,0,0,.05);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.card__content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 1rem;
}

.card__title {
  color: #696969;
  height: 5px;
  width: 1000px;
}
.card__text {
  flex: 1 1 auto;
  font-size: 0.875rem;
  line-height: 1.5;
  margin-bottom: 1.25rem;
}









.form-check-input.auswahl {
  float: right;
  position: relative;
}
.action-panel.card-footer {
  padding: 10px 5px 5px 10px;
}
.grey {
  color: #999;
}
.pad-right {
  display: block;
  padding: 0 20px 0 10px;
}

/* ----- Video responsive machen---- */

.responsive-video {
	position: relative;
	padding-bottom: 56%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.responsive-video iframe,
.responsive-video object,
.responsive-video embed,
.responsive-video video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}




/* ----- Dropdown Override---- */
.dropdown-item {
	float: left;
	display: contents;
}

	.dropdown-item span {
		margin-right: 10px;
		vertical-align: middle;
	}



.dropdown-item:last-child span {
  margin-right: 10px;
}

.dropdown-menu li {
	padding-left: 10px;
	padding-right: 10px;
}

.dropdown-menu-span-or  {
	float: left;
	margin-right: 5px;
}
.dropdown-menu-span-or-last {
	float: left;
	margin-right: 5px;
	margin-bottom: 5px;
}

.dropdown-btn-group-or {
	position: relative;
	display: inline-flex;
}


/* ----- Inputs Override---- */
.form-check-input {
	position: absolute;
	margin-top: 2px;
	margin-left: 0;
}

input[type="checkbox"],
input[type="radio"] {
  width: 20px;
  height: 20px;
}


/* Footer */
.bg-light{
  background-color: #f4f4f4 !important;
  position: relative;
width: 100%;
}
.wrapper{
  min-height: 100%;
  margin: 0 auto 0;
  margin-bottom: -56px;
  padding-bottom: 56px;
}
.p-3 {
  padding: 15px !important;
}


/* Pagination Override*/
.page-item.active .page-link {
  background-color: #297785;
  box-shadow: none;
}

/* Modals Hilfen*/
#einheitList{
  margin-top: 15px;
}

/* ----- Header / Menü---- */
.header {
  position: relative;
  width: 100%;
  display: block;
  z-index: 1000;
  background: #00b7ea;
  background: -moz-linear-gradient(left, #00384b 0%, #57bfc7 100%);
  background: -webkit-linear-gradient(left, #00384b 0%, #57bfc7 100%);
  background: linear-gradient(to right, #00384b 0%, #57bfc7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00384b', endColorstr='#57bfc7', GradientType=1);
  top: 0px;
  height: 110px;
  padding-top: 15px;
}

.header.scroll {
  margin-bottom: 64px;
}

.logo {
  margin: auto;
  height: 80px;
  position: relative;
  display: block;
}

.content {
  padding-top: 20px;
}

.nav {
  position: relative;
  width: 100%;
  z-index: 1000;
}

.nav.scroll {
  position: fixed;
  top: 0;
}

.light-gray-row-bg {
  background-color: rgb(240, 240, 240);
}

.dark-gray-row-bg {
	background-color: #D2D2D2;
}

.mark-red-row-text {
  color: red;
}

.bg-primary {
  background-color: #297785 !important;
}

.key-is-on-keybound {
	color: gray;
	font-size: small;
	background-color: rgb(240, 240, 250);
	font-style: italic;
}


/* ===== Responsive ===== */

/* Desktop */
@media only screen and (min-width: 1000px) {}

/* Tablet Querformat */
@media only screen and (max-width: 1000px) {
  .main-div {
    width: 70%;
  }
  .divTable {
    table-layout: auto;
  }
}

/* Tablet Hochformat */
@media only screen and (max-width: 600px) {
  .main-div {
    width: 90%;
  }
}

/* RESPONSIVE */




.nav .icon {
	color: #f2f2f2;
	padding-left: 14px;
	padding-top: 14px;
	padding-right: 16px;
	text-decoration: none;
	display: none;
}

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


	.nav a:not(.active):not(.dropdown-item):not(.icon) {
		display: none;
	}

	.nav a.icon {
		float: left;
		display: block;
	}
}

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




	.nav.responsive a:not(.active):not(.dropdown-item):not(.icon) {
		color: white;
		display: block;
		float: left;
		overflow: hidden;
	}
}

.loader {
	border: 8px solid #f3f3f3;
	border-radius: 50%;
	border-top: 8px solid #3498db;
	width: 60px;
	height: 60px;
	-webkit-animation: spin 1s linear infinite; /* Safari */
	animation: spin 1s linear infinite;
	position: absolute;
	left: 50%;
}

/* Safari */
@-webkit-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

#myProgress {
	width: 100%;
	background-color: lightgray;
}

#myBar {
	width: 1%;
	height: 25px;
	background-color: limegreen;
}

/* DIV mit Grafik */
.div-scan-check {
	position: relative; /* Ankerpunkt für das Bild */
}

.div-scan-check::after {
	content: "";
	position: absolute;
	top: 5px;
	right: 5px;
	width: 32px; /* Bildgröße */
	height: 32px;
	background: url('check_green_32.png') no-repeat center/contain;
}
