.loading {
  width: 100%;
  height: 100%;
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 99;
}
.loading-icon {
  color: rgba(255, 255, 255, 0.8);
  position: absolute;
  top: 40%;
  text-align: center;
  right: 0;
  left: 0;
  margin: auto;
}

.dropdown-menu-lg {
  max-width: 330px;
  min-width: 300px;
  padding: 0;
}

.dropdown-menu-left {
  right: inherit;
  left: 30px;
}

.products-list .product-img {
  float: left;
}

.products-list .product-img img {
  height: 100%;
  width: 40px;
}

.blockquote-start {
  border-left: 0.7rem solid #dc3545;
}

.blockquote-end {
  border-left: 0.7rem solid #28a745;
}

.qr-overlay {
  position: relative;
  margin: 0 auto;
}
.qr-overlay video {
  width: 100%;
  display: block;
}
.qr-overlay:before {
  content: "";
  position: absolute;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 5px;
  z-index: 8;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-clip-path: polygon(
    0 0,
    0 100%,
    25% 100%,
    25% 34%,
    75% 34%,
    75% 64%,
    25% 64%,
    25% 100%,
    100% 100%,
    100% 0
  );
  clip-path: polygon(
    0 0,
    0 100%,
    25% 100%,
    25% 34%,
    75% 34%,
    75% 64%,
    25% 64%,
    25% 100%,
    100% 100%,
    100% 0
  );
}
.qr-overlay-success {
  position: relative;
  margin: 0 auto;
}
.qr-overlay-success video {
  width: 100%;
  display: block;
}
.qr-overlay-success:before {
  content: "";
  position: absolute;
  background: rgba(0, 200, 0, 0.5);
  border-radius: 5px;
  z-index: 9;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-clip-path: polygon(
    23% 34%,
    23% 66%,
    25% 66%,
    25% 35%,
    75% 35%,
    75% 65%,
    25% 65%,
    25% 66%,
    77% 66%,
    77% 34%
  );

  clip-path: polygon(
    23% 34%,
    23% 66%,
    25% 66%,
    25% 35%,
    75% 35%,
    75% 65%,
    25% 65%,
    25% 66%,
    77% 66%,
    77% 34%
  );
}

.w-10 {
  width: 2% !important;
}
.w-45 {
  width: 29% !important;
}
.w-25 {
  width: 12% !important;
}
.grpimg {
  max-height: 80px;
  max-width: 80px;
}

/* Zeige install app button nicht wenn in pwa*/
@media all and (display-mode: standalone) {
  .install-button {
    display: none;
  }
}
.main-footer .fa-stack {
  font-size: 10px;
}

@font-face {
  font-family: "Ubuntu";
  font-style: normal;
  font-weight: 400;
  src: local("Ubuntu"),
    url(plugins/font-ubuntu/Ubuntu-Regular.ttf) format("truetype");
}
body {
  font-family: "Ubuntu", "Calibri";
}

.btn {
  /* margin-bottom: 0.25rem; */
  border-radius: 0;
}

.btn-purple {
  color: #fff;
  background-color: #59339d;
  border-color: #59339d;
  box-shadow: none;
}

.btn-lg {
  font-size: 1.75rem;
  min-width: 70px;
  border-radius: 0;
}

.info-box-icon {
  border-radius: 0;
  min-height: 70px;
  padding: 0rem;
}
.info-box .info-box-icon {
  border-radius: 0;
  min-height: 70px;
  padding: 0rem;
}

.info-box {
  border-radius: 0;
  min-height: 70px;
  padding: 0rem;
}

.info-box .btn-lg {
  line-height: 1.2;
}

.card .card-body {
  padding: 0.75rem;
}

.dark-mode > table.dataTable.fixedHeader-floating,
table.dataTable.fixedHeader-locked {
  background-color: #3f474e;
}

.modal-body .card {
  background-color: #454d55;
}

.breadcrumb-item.active a:link,
.breadcrumb-item.active a:hover,
.breadcrumb-item.active a:active,
.breadcrumb-item.active a:visited {
  color: #adb5bd;
}
/* Scrollbars */
::-webkit-scrollbar {
  width: 1rem;
}
::-webkit-scrollbar-track {
  background: #2f3439;
}
::-webkit-scrollbar-thumb {
  background: #3f474e;
}
::-webkit-scrollbar-thumb:hover {
  background: #3f474e;
}
/* DataTable Buttons */
.dt-buttons [type="button"] {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0;
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}
/* DataTable Header */
div.dataTables_wrapper div.dataTables_info {
  padding-top: 0.2em;
}
/* DataTable pagination */
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
  margin: 0px;
}
/* preloader */
/* .dark-mode .preloader {
	background-color: rgba(0, 0, 0, 0.9) !important
}
*/
.fc {
  height: 95vh;
}
/* Breakpoint Portrait view mobile */
@media (max-width: 575.98px) {
  .fc {
    height: 82vh;
  }
  .fc table {
    font-size: 0.85em;
  }
  /* remove weekNumbers from fullcalendar on small screens */
  .fc-daygrid-week-number {
    display: none;
  }
  /* remove fullcalendar spacer on small screens */
  .fc-toolbar,
  .fc-toolbar.fc-header-toolbar {
    padding: 0rem;
    border-radius: 0;
  }
  .fc .fc-toolbar.fc-header-toolbar {
    margin-bottom: 0rem;
  }
  /* small the buttons on small screens[type=button] {
	padding: 0.25rem 0.5rem;
	font-size: 0.875rem;
	line-height: 1.5;
	border-radius: 0.2rem;
	padding-right: 0.375rem;
	padding-left: 0.375rem;
	margin-bottom: 0.375rem;
	margin-left: 0rem
	}
	*/
  .breadcrumb {
    display: none;
  }
  .dt-buttons {
    display: none;
  }
}
/* remove space on p mainly for userfocus lead */
.lead {
  margin-top: 0;
  margin-bottom: 0rem;
}
@media (max-width: 991px) {
  .column-margin {
    margin: 6px 0;
  }
  .dt-buttons {
    display: none;
  }
}

.user-block img {
  float: left;
  height: 30px;
  width: 30px;
}
.card-footer.todo {
  padding: 0.45rem 0.75rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 0 solid rgba(0, 0, 0, 0.125);
}

.user-block.description.todo {
  margin-top: -7px;
}
.custom-clickable-row {
  cursor: pointer;
}
[class*="sidebar-light-"] .nav-treeview > .nav-item > .nav-link {
  color: #eee;
}
[class*="sidebar-dark-"] .nav-treeview > .nav-item > .nav-link {
  color: #eee;
}
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before {
  top: 50%;
  left: 5px;
  height: 1.25em;
  width: 1.25em;
  margin-top: -9px;
  margin-right: -5px;
  display: block;
  position: absolute;
  color: #007bff;
  border: 0;
  box-shadow: none;
  box-sizing: content-box;
  text-align: center;
  text-indent: 0 !important;
  font-family: "Courier New", Courier, monospace;
  line-height: 1em;
  font-size: 1.25rem;
  content: "▼";
  background-color: transparent;
}
table.dataTable.dtr-inline.collapsed
  > tbody
  > tr.parent
  > td.dtr-control:before,
table.dataTable.dtr-inline.collapsed
  > tbody
  > tr.parent
  > th.dtr-control:before {
  content: "▲";
  background-color: transparent;
}
table.dataTable.dtr-column > tbody > tr > td.dtr-control:before,
table.dataTable.dtr-column > tbody > tr > th.dtr-control:before,
table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before {
  top: 50%;
  left: 50%;
  height: 1.25em;
  width: 1.25em;
  margin-top: -0.5em;
  margin-left: -0.5em;
  margin-right: -5px;
  display: block;
  position: absolute;
  color: #007bff;
  border: 0;
  border-radius: 1em;
  box-shadow: none;
  box-sizing: content-box;
  text-align: center;
  text-indent: 0 !important;
  font-family: "Courier New", Courier, monospace;
  line-height: 1em;
  font-size: 1.25rem;
  content: "▼";
  background-color: transparent;
}
table.dataTable.dtr-column > tbody > tr.parent td.dtr-control:before,
table.dataTable.dtr-column > tbody > tr.parent th.dtr-control:before,
table.dataTable.dtr-column > tbody > tr.parent td.control:before,
table.dataTable.dtr-column > tbody > tr.parent th.control:before {
  content: "▲";
  background-color: transparent;
}
.chat {
  height: calc(100vh - 318px);
  padding: 1.25rem;
  overflow-y: auto;
}
.decor-default {
  background-color: #ffffff;
}
.chat-users h6 {
  font-size: 1.25rem;
  margin: 0 0 1.25rem;
}
.chat-users .user {
  position: relative;
  padding: 0 0 0 3.125;
  display: block;
  cursor: pointer;
  margin: 0 0 1.25rem;
}
.chat-users .user .avatar {
  top: 0;
  left: 0;
}
.chat .avatar {
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
}
.chat .avatar img {
  display: block;
  border-radius: 1.25rem;
  height: 100%;
  object-fit: cover;
}
.chat-users .user .name {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
/*****************CHAT BODY *******************/
.chat-body h6 {
  font-size: 1.25rem;
  margin: 0 0 1.25rem;
}
.chat-body .answer.left {
  padding: 0 0 0.625rem 58px;
  text-align: left;
  float: left;
}
.chat-body .answer {
  position: relative;
  max-width: 600px;
  min-width: 200px;
  overflow: hidden;
  clear: both;
}
.chat-body .answer.left .avatar {
  left: 0;
}
.chat-body .answer .avatar {
  bottom: 0.625rem;
}
.chat-body .answer .name {
  font-size: 0.875rem;
  text-align: right;
  line-height: 2.25rem;
}
.chat-body .answer.left .text {
  background: #00bc8c;
  color: #ffffff;
  border-radius: 8px 8px 8px 0;
}
.chat-body .answer .text {
  padding: 0 0.75rem 0 0.75rem;
  text-align: left;
  line-height: 26px;
  position: relative;
}
.chat-body .answer.left .text:before {
  left: -30px;
  border-right-color: #00bc8c;
  border-right-width: 0.75rem;
}
.chat-body .answer .text:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  border: 18px solid transparent;
  border-bottom-width: 0;
}
.chat-body .answer .time {
  padding-bottom: 0.425rem;
  text-align: right;
  position: relative;
}
/*RIGHT*/
.chat-body .answer.right {
  padding: 0 58px 0.625rem 0;
  text-align: right;
  float: right;
}
.chat-body .answer.right .avatar {
  right: 0;
}
.chat-body .answer.right .avatar .status {
  left: 4px;
}
.chat-body .answer.right .text {
  margin-top: 1rem;
  background: #7266ba;
  color: #ffffff;
  border-radius: 8px 8px 0 8px;
}
.chat-body .answer.right .text:before {
  right: -30px;
  border-left-color: #7266ba;
  border-left-width: 0.75rem;
}
/* 
h1 u
{
	text-decoration-color: #7266ba;
	text-underline-offset: 3px ;
	text-decoration-thickness: 4px;
}
h1 i
{
	color: #7266ba;
} */

/* für benutzer */
.ratio {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;

  height: 0;
  padding-bottom: 100%;
  position: relative;
  width: 100%;
}

.img-circle {
  border-radius: 50%;
}

.img-responsive {
  display: block;
  height: auto;
  max-width: 100%;
}

.badgeBtn {
  font-size: 1.15rem;
  font-weight: 400;
  position: absolute;
  right: -0.625rem;
  top: -3px;
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.badgeGrp {
  font-size: 1.15rem;
  font-weight: 400;
  position: relative;
  left: -28px;
  top: -14px;
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 60%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
}

.badgechannel {
  position: relative;
  right: 1rem;
  top: -1rem;
  display: inline-block;
  white-space: nowrap;
  vertical-align: baseline;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

#HomeButton,
#ToTopButton,
#QRButton,
#SearchButton {
  display: none;
  position: fixed;
  bottom: 20px;
  z-index: 99;
  border-radius: 30px;
}

#HomeButton {
  right: 150px;
}

#SearchButton {
  right: 102px;
}

#QRButton {
  right: 56px;
}

#ToTopButton {
  right: 14px;
  color: white;
}

.card-maroon .nav-tabs .nav-item.show .nav-link,
.card-maroon .nav-tabs .nav-link.active {
  background-color: #343a40;
  border-color: #ed6c9b !important;
  border-bottom: none;
  color: white;
}
.dark-mode .bg-maroon,
.dark-mode .bg-maroon > a {
  color: #ffffff !important;
}

#mehr {
  margin-left: auto; /* Optional: Ausrichtung */
}

.lazy {
  opacity: 0; /* Unsichtbar, bevor geladen */
  transition: opacity 0.3s ease-in;
}

.lazy-loaded {
  opacity: 1; /* Sichtbar, sobald geladen */
}

/* Drehung der Schalter */
.custom-switch .custom-control-input {
  transform: rotate(-90deg); /* Schalter drehen */
  transform-origin: center;
  margin-left: -40px;
}

.custom-switch .custom-control-label {
  writing-mode: vertical-lr; /* Label vertikal ausrichten */
  text-orientation: mixed;
  transform: rotate(-90deg); /* Label drehen */
  transform-origin: center;
  margin-left: -40px;
}

.chart-home {
  min-height: 250px;
  height: 250px;
  max-height: 250px;
  max-width: 100%;
}
.img-thumbnail {
  background-color: #343a40;
  border: none;
}

.preview-popup {
    display: none;
    position: absolute;
    top: 0;
    left: 60px; /* next to the small image */
    z-index: 10;
	background:rgb(69, 77, 85); /* 80% transparent white background */
    padding: 5px;
    border: 2px solid #000;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.2);
    border-radius: 10px; /* round corners for popup */
}


.preview-image:hover + .preview-popup,
.preview-popup:hover {
    display: block;
}

.preview-popup img {
    display: block;
    max-width: 300px;
    max-height: 300px;
    opacity: 1; /* make sure the image stays fully opaque */
}