/* html {
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
} */
:root {
  --mdb-primary: #66db9e !important;
  --mdb-primary-text: #73c79f !important;
  --mdb-secondary: #62beda !important;
  --mdb-light: #fbfbfb;
  --mdb-light-grey: rgb(223, 223, 223);
  --mdb-dark: #262626;
  --mdb-white: #fff;
  --mdb-black: #000;
  --mdb-primary-rgb: 18, 102, 241;
  --mdb-secondary-rgb: 178, 60, 253;
  --mdb-success-rgb: 0, 183, 74;
  --mdb-info-rgb: 57, 192, 237;
  --mdb-warning-rgb: 255, 169, 0;
  --mdb-danger-rgb: 249, 49, 84;
  --mdb-light-rgb: 251, 251, 251;
  --mdb-dark-rgb: 38, 38, 38;
  --mdb-white-rgb: 255, 255, 255;
  --mdb-black-rgb: 0, 0, 0;
  --mdb-body-color-rgb: 79, 79, 79;
  --mdb-body-bg-rgb: 255, 255, 255;
  --mdb-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto,
    "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif,
    "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --mdb-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace;
  --mdb-gradient: linear-gradient(
    180deg,
    hsla(0, 0%, 100%, 0.15),
    hsla(0, 0%, 100%, 0)
  );
  --mdb-body-font-family: var(--mdb-font-roboto);
  --mdb-body-font-size: 1rem;
  --mdb-body-font-weight: 400;
  --mdb-body-line-height: 1.6;
  --mdb-body-color: #fafafa !important;
  --mdb-body-bg: #fff;
  --grey1: #636363;
}
.custom-small {
  font-size: 0.85rem !important;
}

/* custom overrides */
.bg-primary,
.primary-color {
  color: var(--mdb-primary) !important;
}
.btn {
  text-transform: none !important;
}
.btn-primary {
  background-color: var(--mdb-primary) !important;
}
.btn-secondary {
  background-color: rgb(227, 227, 227) !important;
  color: var(--grey1) !important;
}

.btn-tertiary {
  color: #439b6e !important;
  background-color: #66db9f38 !important;
}
.form-control:focus ~ .form-notch div {
  border-color: var(--mdb-primary) !important;
}
.btn-outline-primary {
  color: var(--mdb-black) !important;
  border-color: var(--mdb-black) !important;
}

.form-control:focus ~ .form-label {
  color: var(--mdb-primary) !important;
}
.adminDashboard {
  margin-bottom: 20rem;
}
h1,
h2 {
  margin-bottom: 1rem;
}
html,
body {
  background-color: var(--mdb-body-color) !important;
}
body {
  /* overflow: hidden; */
  overflow-x: hidden;
}
.accordion-button:not(.collapsed) {
  color: var(--mdb-primary-text) !important;
}
.range .thumb:after,
input[type="range"]::-webkit-slider-thumb {
  background: var(--mdb-primary-text) !important;
  cursor: pointer !important;
}
input[type="range"]::-moz-range-thumb {
  background: var(--mdb-primary-text) !important;
}
.form-check-input:checked::after,
.form-check-input[type="radio"]:checked {
  border-color: var(--mdb-primary-text) !important;
  /* background-color: var(--mdb-primary) !important;; */
}
.form-check-input:checked::after {
  background-color: var(--mdb-primary-text) !important;
}
/* input[type=checkbox]:checked{
  accent-color: var(--mdb-primary-text) !important;

} */
.card-primary {
  background-color: var(--mdb-primary) !important;
  color: var(--mdb-white) !important;
}
.card-primary .btn-primary-inverted {
  background-color: white;
  color: #73c79f;
  font-weight: 600;
  box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.1);
}
.btn-primary-inverted:hover {
  color: #73c79f !important;
  box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.25) !important;
}
.card-primary .card-footer {
  border-top: 1px solid rgba(255, 255, 255, 0.61);
}
.list-group-item {
  width: 100%;
}
.list-group-item.active {
  background-color: var(--mdb-light-grey) !important;
  border: 1px solid rgba(0, 0, 0, 0.125) !important ;
  color: initial !important;
}
.visible {
  display: block !important;
}

.paginationjs-pages ul {
  padding: 0 !important;
}
.col-number-input {
  padding: 0 !important;
}

/* fontsizes */
p.small {
  font-size: 0.75rem;
}
/* scrollbar changes */
/* width */
::-webkit-scrollbar {
  width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #ffffff;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: rgb(194, 194, 194);
  border-radius: 10px;
}

.disbaled-btn-primary {
  border: 1px solid #999999 !important;
  background-color: #cccccc !important;
  color: #666666 !important;
}
.visible {
  opacity: 1 !important;
}
.hidden {
  opacity: 0 !important;
  display: none !important;
}

.square {
  margin-left: auto;
}
#launchTestModalBtn {
  margin-right: 15px;
}
#close-details-drawer-btn {
  padding: 10px !important;
  min-width: 0 !important;
}
.header-align-end {
  align-self: flex-end;
}
/* overview */
.card-fa-icon {
  /* margin: 0.5rem; */
  font-size: 4rem;
}
.card-footer .btn {
  margin: 0.5rem;
}
#preview-map {
  min-height: 150px;
}
/* map */
#map-container {
  position: relative;
  height: 100% !important;
}

#map {
  position: relative;
  min-width: 100px;
  width: 100%;
  height: calc(100vh - 55px);
  z-index: 1;
}

.leaflet-control-zoom-out,
.leaflet-control-zoom-in {
  /* border-radius: 20px !important; */
}

.leaflet-control {
  border: none !important;
}
.leaflet-top {
  right: 10px;
  left: unset;
}

/* css to customize Leaflet default styles  */
.leaflet-popup.detail-popup {
  pointer-events: all;
  /* width: 400px; */
}
.leaflet-popup-close-button {
  pointer-events: all;
}
.area-marker {
  display: none;
}
.point-marker {
  width: 30px !important;
  height: 30px !important;
}
.point-marker-inner {
  width: 100%;
  height: 100%;
  background-color: #66db9e !important;
  border: rgba(0, 0, 0, 0.185) solid 1px;
  box-shadow: 2px 0px 10px rgba(0, 0, 0, 0.425);

  color: white;
  transform: rotate(45deg);
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100% 100% 100%;
  border-bottom-right-radius: 0;
}
.marker-inner-content {
  transform: rotate(-45deg);
  border-radius: 100%;
  font-size: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: rgb(255, 255, 255);
  font-weight: bold;
  background-color: #0000009f;
  height: 20px;
  width: 20px;
}
.detail-popup .leaflet-popup-content {
  margin: 0px;
  font-size: 0.8rem;
  width: 100% !important;
  max-width: none;
}
.leaflet-popup-content h4 {
  margin-bottom: 2px;
  line-height: 1rem;
  font-size: 0.85rem;
}
.leaflet-popup-content p {
  margin: 0;
  line-height: 1rem;
}

.custom-popup-content {
  /* width: 400px; */
}
.custom-popup-content.card .card-header,
.custom-popup-content.card .card-body {
  padding: 8px;
  font-size: 0.8rem;
}
i.popupFavIcon {
  /* pointer-events: none; */
  font-size: 1rem !important;
  margin-left: 5px;
  display: none;
  cursor: auto !important;
}
/* marker on map */
/* fav marker */
.customFavMarker {
  /* pointer-events: none !important; */
  width: 25px !important;
  height: 25px !important;
  background-color: white;

  display: flex;
  opacity: 1;
  border-radius: 100% 100% 0 100%;
  border: 1px solid grey;
  justify-content: center;
  align-items: center;
  box-shadow: 5px -5px 11px -6px #000000d3;
  transform: rotate(45deg);
}
.my-custom-pin-fav i {
  color: #66db9e;
  transform: rotate(-45deg);
  /* pointer-events: none; */
}
/* layer marker */
.custome-layer-marker {
  pointer-events: none;
}
.custom-layer-icon {
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  opacity: 1;
  border-radius: 3rem 3rem 0;
  transform: rotate(45deg);
  border: 2px solid #ececec;
  box-shadow: 0px -2px 5px 0.5px #00000049;
}
.custom-layer-icon img,
.custom-layer-icon i {
  transform: rotate(-45deg);
  /* padding: 5px; */
}
/* cluster marker */
.custom-cluster-icon {
  padding: 5px;
  border-radius: 100%;
  display: grid;
  justify-content: center;
  align-items: center;
  color: white;
  font-weight: 700;
  text-align: center;
  outline: 5px solid rgba(255, 255, 255, 0.75);
  box-shadow: 0px -2px 10px 5px #00000070;
  width: 35px !important;
  height: 35px !important;
}

.cluster-icon-number {
  font-size: 10px;
  line-height: 10px;
  margin-top: 1px;
}
#details-col {
  right: 0;
}
#grid-wrapper .card {
  font-size: 0.85rem;
}
/* drawer styles */
#grid-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;

  width: 100%;
}
#grid-wrapper .card {
  max-width: 300px;
  width: max-content;
}
#grid-wrapper .card p {
  margin: 0;
  padding: 0;
}
#grid-wrapper .card p:first-of-type {
  font-weight: 800;
}

.drawer-col {
  position: relative;
  transition: all 0.1s ease;
  /* z-index: 2; */
  width: 400px;
  pointer-events: all;
  height: auto;
  height: auto;
}
.drawer-cols-left {
  display: grid;
  gap: 8px;
  overflow: auto;
  max-height: calc(100vh - 2rem - 55px);
  /* background-color: #000; */
  z-index: 10000;
  pointer-events: all;
  padding-bottom: 10px;
}
.drawer-col .accordion-button,
.drawer-col .accordion-body,
.drawer-col .card-header,
.drawer-col .card-body {
  padding: 0.6rem;
}
.drawer-col .accordion-body {
  padding-bottom: 2rem !important;
}

.drawer-col .card-title {
  margin-bottom: 0;
}
#map-overlay-wrapper {
  padding: 1rem;
  gap: 1rem;
  width: 100%;
  z-index: 10;
  position: absolute;
  pointer-events: none;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
}
.details-header {
  display: flex;
}

#fav-toggle {
  border: none;
  background: transparent;
  cursor: pointer;
  height: 100%;
  color: #66db9e;
  font-size: 2rem;
}
.rank-toggle +label,
.layerToggle + label,
/* map: pred toggles */
.layerPredToggle + label {
  background-color: white;
  border: 1px solid gray;
  color: grey;
  margin: 2px;
}
.rank-toggle:checked + label,
.layerToggle:checked + label,
.layerPredToggle:checked + label {
  background-color: #e9e9e9;
  filter: none;
}
/* map: layer toggle */

.toggleWrapper {
  min-width: 0 !important;
  background-color: #66db9e;
  padding: 5px !important;
}

.toggleWrapper:checked {
  background-color: #66db9fc2;
}

.colorIndicator {
  height: 1.1rem;
  aspect-ratio: 1 / 1;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.colorIndicator i {
  color: #fff;
  font-size: 0.6rem;
  line-height: 0.6rem;
}

/* poly tool */
#map-poly {
  height: calc(100vh - 50px);
  margin: 0;
  padding: 0;
}

.poly-wrapper {
  display: grid;
  grid-template-columns: 7fr 1fr;
}

#poly-tools {
  min-width: 450px;
  padding: 15px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
  height: calc(100vh - 50px);
  box-sizing: border-box;
}
#polyGeo {
  height: 400px;
  width: 100%;
}
#store-poly-status,
#store-poly-loader {
  margin: 5px;

  margin-left: 0;
  display: none;
}
.leaflet-control-scale {
  padding-bottom: 1rem;
  padding-left: 1rem;
}
.leaflet-control-layers {
  border: 1px solid grey !important;
  padding: 5px;
}
.leaflet-control-layers-toggle {
}

/* poly tool modal */
/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 5000; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0, 0, 0); /* Fallback color */
  background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
}

/* Modal Content */
.modal-content {
  position: relative;
  background-color: #fefefe;
  margin: auto;
  border: 1px solid #888;
  width: 80%;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  -webkit-animation-name: animatetop;
  -webkit-animation-duration: 0.4s;
  animation-name: animatetop;
  animation-duration: 0.4s;
  padding: 15px;
}

/* Add Animation */
@-webkit-keyframes animatetop {
  from {
    top: -300px;
    opacity: 0;
  }
  to {
    top: 0;
    opacity: 1;
  }
}

@keyframes animatetop {
  from {
    top: -300px;
    opacity: 0;
  }
  to {
    top: 0;
    opacity: 1;
  }
}

/* The Close Button */
.close {
  color: #000;
  float: right;
  font-size: 28px;
  font-weight: bold;
  font-size: 1.2rem;
  cursor: pointer;
}

.close p:hover,
.close p:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

.modal-header {
  /* color: #000; */
  /* padding: 15px; */
}
.modal-header span {
  display: flex;
  justify-content: space-between;
}

.modal-body {
  /* padding: 15px; */
}

.modal-footer {
  /* padding: 15px; */
  /* background-color: #ebebeb; */
}
/* modal create user */
.modal-small {
  width: max-content;
}

/* modal reset password */
p.modal-info {
  max-width: 500px;
}

.modal-content {
  background-color: white;
  border-radius: 20px;
}

/* user / admin element handling */
.actionElement {
  display: none;
}
.userActionElementUser {
}

.adminActionElement {
}
.vertical {
  border-left: 1px solid rgb(196, 196, 196);
  height: 100%;
  min-height: 50px;
}

.opa-marker {
  background-color: rgb(34, 164, 250);
  border: 2px solid white;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 8px;
  border-radius: 40%;
  font-size: 8px;
  color: white;
  box-shadow: 5px -5px 11px -6px #000000d3;
  line-height: 8px;
  width: 30px !important;
}
.opa-marker i {
  color: white;
}
.info-tile {
  display: none;
  overflow-y: auto;
  overflow-x: hidden;
}
#poi-tile .poi-charti {
  display: grid;
  grid-template-columns: 1fr 5fr;
}
.info-tile .content {
  position: relative;
}
.leaflet-poi-pane {
  /* z-index: ; */
}
.pop-up-ul {
  padding-left: 1.5rem;
  margin-bottom: 0.5rem;
}

.navbar {
  z-index: 410;
}

/* #create-analysis-card{
  background-color: var(--mdb-primary)
} */
#analysis_list_point_wrapper,
#analysis_list_area_wrapper {
  display: none;
}

.k_circle {
  font-size: 0.7rem;
  border-radius: 100%;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: whitesmoke;
  color: #000;
  cursor: pointer;
  transition: all 0.2s ease;
}
.k_circle.active,
.k_circle:hover {
  background-color: grey;
  color: white;
}
#corr_name {
  font-size: 0.8rem;
  height: 30px;
}
.circle-big {
  /* border-radius: 100%; */
  /* height: 80px; */
  /* aspect-ratio: 1; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  /* flex-direction: column; */
  border: 1px solid rgb(180, 180, 180);
  margin: 2px;
  gap: 3px;
  padding: 2px;
  width: 100%;
  min-width: 77px;
}
.circle-big h7 {
  font-size: 0.75rem;
}
.circle-big h4 {
  font-size: 1.5rem;
  margin-bottom: 0;
}
.circle-big_1 {
  background-color: whitesmoke;
  border: whitesmoke;
}
.corrs {
  display: block;
}
/* .corrs > div{
  background: whitesmoke;
  margin: 1px;
  border-radius: 2px;
  padding: 2px;
  line-height: 1rem;
  cursor: pointer;
} */

/* .corrs > div.active,
.corrs > div:hover{
  background-color: grey;
  color: white;
} */

#col-left {
  display: flex;
  flex-flow: column;
  height: 100%;
}
#poi-wrapper-full {
  overflow: auto;
  flex-grow: 1;
}
.corr-details {
  z-index: 100;
  display: flex;
  flex-wrap: wrap;
  height: 100%;
}

.data-source {
  position: absolute;
  right: 2px;
  bottom: 0px;
  font-size: 0.65rem;
  max-width: 300px;
  line-height: 0.75rem;
  text-align: end;
  padding: 3px;
}
.leaflet-bar button {
  height: 26px; /* easyButton's height default */
  width: 26px; /*  easyButton's width default */
}
.easy-button-button {
  transition: 0.2s ease all;
  font-size: 1rem;
  border: 1px solid rgb(177, 177, 177) !important;
  color: #666666 !important;
}
.easy-button-button:hover {
  transition: 0.2s ease all;
  font-size: 1rem;
  color: #525252 !important;
  /* box-shadow: 0px 0px 5px rgb(100, 100, 100); */
}
.easy-button-button .pdf-icon {
  color: #ff1a0ea6;
}

.report-table {
  border-collapse: collapse;
  width: 100%;
}
.report-table td,
.report-table th {
  border: 1px solid #ddd;
  padding: 8px;
}

.report-table tr:nth-child(even) {
  background-color: #f2f2f2;
}
.report-table tr:hover {
  background-color: #ddd;
}

.report-table th {
  padding-top: 5px;
  padding-bottom: 5px;
  text-align: left;
  background-color: grey;
  color: white;
}

.header-analysis-list {
  background-color: whitesmoke;
  padding: 5px;
  margin-bottom: 15px;
  border-radius: 8px;
  font-weight: 600;
}

.user-actions {
  text-align: left !important;
}

#szenario-loader {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  z-index: 9000000;
  background-color: #ffffffdc;
  display: none;
  justify-content: center;
  align-items: center;
  border-radius: 0.5rem;
}

#szenario-loader {
}

.beta-hint {
  background-color: #a0a0a0;
  color: whitesmoke;
  padding: 4px 8px;
  border-radius: 5px;
  margin-right: 5px;
  font-size: 0.7rem;
}
.beta-hint-white {
  background-color: white;
  color: #73c79f;
  padding: 2px 8px;
  font-size: 0.8rem;
  margin-right: 0;
  margin-top: 3px;
}
#popup-prediction-wrap {
  display: flex;
  gap: 5px;
}

#popup-prediction-wrap .entry-highlight {
}

.huechange {
  filter: grayscale(1);
}

.ranking-list-wrapper .ranking-item {
  cursor: pointer;
  padding: 3px 8px;
}
.ranking-item:hover {
  background-color: whitesmoke;
}
#ranking-btn {
  padding: 0;
}
#legend-wrapper {
  display: none;
  /* font-size: 0.9rem; */
}
#legend-scale {
  display: none;

  flex-direction: row;
  /* padding: 5px; */
  justify-content: center;
  align-items: center;
  border-radius: 8px;
  grid-auto-columns: minmax(0, 1fr);
  grid-auto-flow: column;
}

#legend-scale p {
  margin-bottom: 0;
  padding: 2px;
}
.color-box {
  display: flex;
  justify-content: center;
  align-items: center;
  /* width: 50px; */
  height: 20px;
}
.color-box:first-child {
  border-bottom-left-radius: 10px;
  border-top-left-radius: 10px;
}
.color-box:last-child {
  border-bottom-right-radius: 10px;
  border-top-right-radius: 10px;
}
.color-box > div {
  text-align: center;
  width: 80%;
  margin: 5px;
  /* background-color: white; */
  padding: 0;
  color: white;
  text-shadow: 2px 0px 10px rgba(134, 134, 134, 0.425);
  font-weight: bold;
  font-size: 0.8rem;
}

.poi-charti {
  grid-template-columns: 2fr 10fr;
  margin-bottom: 15px;
  font-size: 0.7rem;
  display: grid;
  position: relative;
}
.poi-charti-bar {
  display: block;
  height: 20px;
  position: relative;
  background-color: #e9e9e9;
  width: 100%;
}
.bar-start {
  position: relative;
  height: 100%;
  left: 0;
  text-align: right;
  display: flex;
  justify-content: flex-end;
  padding-left: 2px;
  /* z-index: 1000; */
  font-weight: bold;
}
.bar-start-inner {
  background-color: #73c79f;
  height: 100%;
  width: 100%;
}
.bar-end {
  text-align: right;
  padding: 2px;
  font-size: 0.7rem;
}

.box-dia {
  background-color: whitesmoke;
  width: auto;
  height: 20px;
  color: white;
  font-size: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.box-dia-header {
  background-color: transparent;
  color: #525252;
}
.mean-legend,
.mean {
  position: absolute;
  height: 22.5px;
  width: 3px;
  background-color: grey;
  top: -2.5px;
  text-align: center;
  display: flex;
  justify-content: center;
}
.mean-legend {
  top: 55px;
  margin-left: 2px;
}

.mean-val {
  /* height: 100%; */
  z-index: 1000;
  font-size: 0.6rem;
  line-height: 0.6rem;
  padding: 1px 5px;
  position: absolute;
  top: -10px;
  background-color: rgb(204, 204, 204);
  color: rgb(37, 37, 37);
  border-radius: 5%;
  font-weight: 700;
  display: flex;
}
.mean-val::before {
  content: "Ø: ";
}

.median {
  position: absolute;
  height: 4px;
  width: 4px;
  top: calc(50% - 2px);
  border-radius: 100%;
  background-color: grey;
}

.head-address {
  font-size: 1rem;
  line-height: 1.1rem;
}

/* .radio-elements > div{
  font-size: 1r;
  margin: 0;
  margin-right: 1rem;
} */

.szenario-custom-input {
  width: 50px;
}
#private-slider {
  gap: 5px;
}
#private_charging_text {
  max-width: none;
  width: 100%;
}

.meter {
  align-self: flex-end;
  box-sizing: content-box;
  height: 20px;
  position: relative;
  background-color: rgb(237, 237, 237);
  border-radius: 5px;
  margin-top: 5px;
  width: 100%;
}
.meter > span {
  display: block;
  height: 100%;
  border-radius: 5px;
  background-color: #73c79f;
  width: 10%;
  position: relative;
  overflow: hidden;
}
.meter > span:after,
.animate > span > span {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-image: linear-gradient(
    -45deg,
    rgba(255, 255, 255, 0.2) 25%,
    transparent 25%,
    transparent 50%,
    rgba(255, 255, 255, 0.2) 50%,
    rgba(255, 255, 255, 0.2) 75%,
    transparent 75%,
    transparent
  );
  z-index: 1;
  background-size: 50px 50px;
  animation: move 2s linear infinite;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  overflow: hidden;
}

.meter span {
  transition: all ease 0.5s;
}

.animate > span:after {
  display: none;
}

@keyframes move {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 50px 50px;
  }
}

.text-muted.hint {
  font-size: 0.8rem;
  line-height: 0.95rem;
}

.card-text {
  line-height: 1.3rem;
}

.grid-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 280px; /* 3 */
  overflow-x: hidden !important;
  grid-gap: 5px; /* 4 */
  /* width: 100%; */
  grid-auto-flow: dense;
  grid-auto-columns: 320px;
}

.wide {
  grid-column: 1 / 3; /* 6 */
}
.wide-2 {
  grid-column: 1 / 4;
}
.tall {
  grid-row: 1 / 3; /* 5 */
  transition: all 1s ease;
}
.info-tile {
  margin: 0;
  /* width: 300px; */
  /* min-width: 320px; */
  /* max-width: 400px; */
  /* height: 260px; */
  /* background-color: rgb(122, 122, 122); */
  /* flex: 1; */
}
.info-tile-2x {
  min-width: calc(600px + 1rem);
  width: calc(600px + 1rem);
  max-width: calc(800px + 1rem);
}
.info-tile-3x {
  min-width: calc(900px + 1rem);
  width: calc(900px + 1rem);
  max-width: calc(900px + 1rem);
}
.tooltip-inner ul {
  margin-bottom: 0 !important;
}
#potential-score-wrapper {
  position: absolute;
  left: 50%;
  top: 53%;
  transform: translate(-50%, -50%);
}
#potenial-score-tooltip {
  position: absolute;
  right: 20%;
  top: 20%;
  transform: translate(-50%, -50%);
}

#detailsModal .modal-content,
#optimalPlacementModal .modal-content {
  max-width: 80vw !important;

  height: 93vh !important;
  /* box-sizing: border-box; */
  padding: 20px 20px;
}

.val-indicator {
  padding: 2px;
  background: grey;
  /* margin: 2px; */
  border-radius: 10%;
  /* width: 20px; */
  min-width: 25px;
  height: 20px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
}
.point-val-legend-red,
.point-val-legend,
.point-val {
  position: relative;
  height: 20px;
  min-width: 20px;
  width: 20px;
  padding: 2px;
  display: flex;
  justify-content: right;
  align-items: center;
  z-index: 100;
  background-color: #73c79f;

  border-top-right-radius: 100%;
  border-bottom-right-radius: 100%;
  padding-right: 5px;
  text-align: right;
}
.point-val-legend {
  font-weight: bold;
}
.point-val-legend-red {
  background-color: #fa7e6b;
}

@media only screen and (max-width: 1550px) {
  #detailsModal .modal-content {
    max-width: 85vw !important;
  }
  .grid-container {
    grid-template-columns: repeat(3, 1fr);
  }
}

.tooltip-inner {
  max-width: 350px !important;
  /* If max-width does not work, try using width instead */
  width: 350px !important;
}

.bar-corr {
  padding: 0;
  /* height: 10px; */
  height: 100%;
}
.corr-box {
  width: 10%;
  height: 100%;
  border-right: 2px solid rgba(221, 221, 221, 0.356);
  padding-right: 2px;
}

.poi-charti-bar-header {
  display: block;
  /* height: 20px; */
  position: relative;
  /* background-color: #e9e9e9; */
  width: 100%;
  height: 100%;
}
.poi-charti-header {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 100;
  height: 100%;
}

.poi-charti:nth-of-type(2) {
  padding-top: 30px;
}

.legend-field {
  background-color: whitesmoke;
  padding: 5px 15px;
  border-radius: 5px;
  gap: 3px;
  align-items: center;
  min-height: 50px;
  line-height: 0.75rem;
}

#bottom-btn-info-col {
  height: 0;
  top: 250px;
  position: sticky;
  display: flex;
  justify-content: center;
  bottom: 0;
  margin: 0 auto;
  /* width: 100%; */
  width: 100%;
  /* margin-bottom: -20px; */
  pointer-events: none;
  transition: 0.3s ease all;
  z-index: 1000;
}
.expansion-position-tall {
  top: 535px !important;
}
#toggle-expansion-poi-corr {
  z-index: 1000;
  background-color: grey;
  pointer-events: all;
}
#toggle-expansion-poi-corr i {
  color: whitesmoke;
  transform: translateY(-10px);
  transition: 0.2s ease all;
  z-index: 1000;
}
#bottom-btn-info-col:hover {
  transform: translateY(-10px);
}

#bottom-btn-info-col:hover #toggle-expansion-poi-corr i {
  transform: translateY(-2px);
}

.turn-180-deg {
  transform: rotate(180);
}

#filePreviewTable th,
#filePreviewTable td {
  font-family: Arial, sans-serif;
  color: #333;
}
#filePreviewTable th {
  background-color: #f5f5f5;
}
#filePreviewTable {
  border: 1px solid #ddd;
  border-collapse: collapse;
  margin: 5px auto;
  font-size: 0.9rem;
  width: 100%;
}
#filePreviewTable td,
#filePreviewTable th {
  padding: 8px;
  border: 1px solid #ddd;
}
#filePreview {
  overflow-x: auto;
}
#filePreviewTable tr:hover {
  background-color: #f5f5f5;
}
#filePreviewTable {
  border: 2px solid #ddd;
}

#filePreviewTableWrapper {
  max-height: 500px;
  overflow: auto;
}
#import-progress {
  font-size: 0.9rem;
  line-height: 1rem;
}
#placementModal .modal-dialog {
  margin-right: 40px;
}

#numSpotsForm {
  max-width: max-content !important;
}

#recentPlacementInfo {
  background-color: #ececec;
  padding: 10px 10px;
  border-radius: 5px;
}
#currentConfigPlacementModal {
  background-color: #ddd;
  padding: 0px 10px;
  border-radius: 5px;
}

.leaflet-glify-pane {
  opacity: 0.8 !important;
  /* cursor: pointer; */
}
.glifyElements {
  cursor: pointer !important;
}
.leaflet-glify-pane canvas {
  cursor: auto;
}
#download-progress-wrapper {
  display: flex;
  justify-content: center;
}
#download-progress {
  /* padding: 30px; */
  background-color: whitesmoke;
  font-size: 1.1rem;
  color: grey;
  border-radius: 10px;
  padding: 10px 1px;
  margin-top: 15px;
  /* width: 70px; */
  width: 100%;
  /* height: 70px; */
  /* aspect-ratio: 1; */
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}

.leaflet-popup-content {
  margin: 0;
}

.leaflet-popup-content:has(.poi-popup-content) {
  margin: 15px;
  /* width: 600px !important; */
}
.leaflet-popup-content:has(.square-popup-content) {
  margin: 0;
  width: 350px !important;
}

.umsatz-square-wrapper {
  display: grid;
  align-items: center;
  justify-content: center;
  height: 200px;
  gap: 5px;
  grid-template-columns: 1fr 1fr 1fr;
  /* flex-basis: 1; */
}
.umsatz-square {
  padding: 5px;
}

#analysis-name-wrapper {
  /* max-width: 500px; */
  font-size: 1rem;
  line-height: 1rem;

  display: block;

  font-weight: 600;
  border: 2px solid white;
  outline: none !important;
  text-align: center;
  transition: 0.5s ease all;
  border-radius: 5px;
}

.pad-wrapper {
  padding: 4px;
  /* background-color: rgb(216, 216, 216); */
  border-radius: 5px;
}

#analysis-info-nav.extern {
  background-color: rgba(255, 166, 0, 0.274);
  color: black;
  padding: 5px;
  font-weight: 400;
  border-radius: 3px;
}
#analysis-info-nav.extern #analysis-name-wrapper {
  background-color: rgba(255, 166, 0, 0.678);
  border-color: rgba(255, 166, 0, 0.678);
}
#analysis-name-wrapper:hover {
  /* outline: none !important; */

  border: 2px solid rgba(219, 219, 219, 0.438);
  background-color: rgb(255, 255, 255);
  border-radius: 5px;
}
#analysis-name-wrapper:focus {
  /* outline: none !important; */

  border: 2px solid rgba(128, 128, 128, 0.438);
  background-color: whitesmoke;
  border-radius: 5px;
}
.list-group-item-placeholder {
  background-color: rgb(221, 221, 221) !important;
  font-weight: normal !important;
}

#detail-view {
  width: 65vw;
  height: calc(100vh - 55px);
  z-index: 100;
  position: absolute;
  background-color: whitesmoke;
  overflow: auto;
  right: 0;
  transition: all cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s;
}
#detail-view .content .loading-detail-placeholder {
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.detail-view-closed {
  right: -65vw !important;
}
.potential-card-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 9px;
}
.potential-card {
  /* height: 250px; */
  max-width: 1/3fr;
  border-radius: 5px 6px 6px 6px;
  background-color: #f8fcfa;
  border: solid 1px #73c79e4d;
  display: flex;
  /* flex-wrap: wrap; */
  flex-direction: column;
  position: relative;
}
.potential-card .chart-wrap {
  margin: auto;
}
.potential-card > div:nth-child(1) {
  /* height: max-content; */
  flex: 1;
}

.potential-card > div:nth-child(2),
.potential-card > div:nth-child(3) {
  /* height: 35px; */
  /* border: 1px green solid; */
  line-height: 1rem;
}
.potential-card > div:nth-child(2) {
  margin-top: auto;
  background-color: #73c79f30;
}
.potential-card > div:nth-child(3) {
  margin-top: auto;
  background-color: #73c79e80;
  border-radius: 0 0 5px 5px;
}
.potential-card > div:nth-child(2) {
  color: #61a785;
  font-size: 0.7rem;
}
.potential-card > div:nth-child(3) {
  color: rgb(69, 124, 98);
  font-size: 0.7rem;
}
.potential-card i.start-icon {
  font-size: 1rem;
  /* color: #42be8b; */
  background-color: rgba(92, 141, 125, 0);
  /* padding: 4px; */
  border-radius: 100%;
}

.potential-card-name {
  position: absolute;
  top: 0;
  left: 0;
  padding: 5px;
}

.card-green-bg {
  font-size: 0.9rem;
  line-height: 1.1rem;
  padding: 10px;
  background-color: #caeada;
  border-radius: 5px;
}

#ansprechpartner-card .contact-row {
  font-size: 0.9rem;
  line-height: 1.1rem;
  display: flex;
  align-items: center;
  transition: 0.2s ease all;
  cursor: pointer;
  border-radius: 10px;
  padding: 10px;
}
#ansprechpartner-card .contact-row:hover {
  background-color: #caeada;
  /* border-bottom: 2px solid #adddc5; */
}

#ansprechpartner-card .contact-row .contact-row-icon {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
#ansprechpartner-card .contact-row i {
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 3px;
  aspect-ratio: 1;
  border-radius: 100%;
  height: 35px;
}
#ansprechpartner-card .contact-row-wrapper {
  max-height: 285px !important;
  overflow: auto;
  max-width: 98% !important;
}

.card-subline {
  font-size: 0.9rem;
  line-height: 1.1rem;
}

#poi-evaluation-card .poi-evaluation-container {
  /* height: 185px; */
  border: 1px solid #cbcbcb93;
  border-radius: 5px;
  /* margin: 2px; */
  /* background-color: #000; */
}
#poi-evaluation-card .poi-evaluation-container.poi-list {
  height: 100%;
}
#poi-evaluation-card .poi-evaluation-title {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 2px;
  padding: 10px;
}
#highway-exit-list .poi-evaluation-list tr {
  border: 1px solid rgba(128, 128, 128, 0.322);
}

.poi-info-card {
  height: 150px;
  width: 120px !important;
  /* background-color: grey; */
  margin: 5px;
  border-radius: 10px;
  position: relative;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  cursor: pointer;
  margin-bottom: 20px;
}
.poi-info-card > div {
  border-radius: 10px;
}
.poi-info-card-inner {
  height: 100%;
  width: 100%;
}
.poi-info-card-upper,
.poi-info-card-lower {
  position: absolute;
  height: 50%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.poi-info-card-lower {
  bottom: 0;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  text-align: center;
}
.poi-info-card-upper {
  top: 0;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.poi-info-card-upper i {
  color: white;
  font-size: 2.5rem;
}

.num-poi-tile {
  font-size: 1.2rem;
  font-weight: bold;
  color: white;
  line-height: 1.2rem;
}
.avg-poi-tile {
  font-size: 0.7rem;
  color: whitesmoke;
  line-height: 0.8rem;
}
.name-poi-tile {
  color: white;
  font-size: 0.9rem;
  line-height: 1.1rem;
  font-weight: bold;
}
.feat_imp {
  position: absolute;
  top: -5px;
  right: 5px;
}
.feat_imp_rating {
  font-size: 0.5rem !important;
}
.poi-empty-hint-wrapper {
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  color: grey;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.poi-empty-hint-wrapper i {
  margin-top: 30px;
  font-size: 3rem;
}

.splide:not(.is-overflow) .splide__arrows {
  display: none;
}

#selected-poi-table-icon i {
  padding: 8px;
  border-radius: 100%;
  color: white;
}
#poi-evaluation-card .poi-evaluation-list-wrapper {
  max-height: 400px;
  height: unset;
  /* overflow-y: auto; */
  overflow: hidden;
  overflow-y: auto;
}
.poi-evaluation-list {
  /* margin: 20px; */
  margin-top: 0;
  margin-left: 10px;
  margin-right: 30px;
  margin-bottom: 10px;
}
.poi-evaluation-list-entry {
  height: 40px;
  border: 1px solid #d0d0d0;
  background-color: #d0d0d030;
  margin-top: -1px;
  transition: 0.1s ease all;
}
.poi-evaluation-list-entry:hover {
  border-color: #73c79f80 !important;
  background-color: #caeada !important;
}
.card-green-bg {
  position: relative;
  padding-right: 25px;
  border: none !important;
  display: flex;
  align-items: end;
  padding-top: 3rem;
}
.card-green-bg i {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 1.5rem;
}
.card-green-bg p {
  font-size: 0.9rem;
  line-height: 1rem;
  font-weight: bolder;
  padding: 0;
  margin-bottom: 0;
  color: rgb(59, 59, 59);
}
.card-green-bg p:first-of-type {
  margin-top: 3rem;
}
.poi-evaluation-list {
  font-size: 0.9rem;
  line-height: 1rem;
  width: 95%;
}
.poi-evaluation-list td {
  margin: 10px !important;
  padding: 8px !important;
  padding-right: 30px;
}
.poi-evaluation-list td:last-of-type {
  padding-right: 8px !important;
}

.poi-evaluation-list tr {
  /* background-color: #d0d0d030; */
  cursor: pointer;
  transition: 0.1s ease all;
}

.poi-evaluation-list tr:hover {
  border-color: #73c79f80 !important;
  background-color: #caeada !important;
}

#highway-exit-list .active-row {
  background-color: #caeada !important;
}
.small-info-card {
}
.small-info-card tr td,
.small-info-card * {
  font-size: 0.9rem;
  line-height: 1rem;
}
.small-info-card {
  /* height: max-content; */
  display: flex;
  /* align-items: center; */
  justify-content: space-between;
}
.small-info-card i {
  font-size: 1.2rem;
}

#admin-overview-wrapper {
  max-width: 98vw;
}

.group-list {
}
#request-analysis-loading-indicator-wrapper {
  display: flex;
  justify-content: center;
}
#request-analysis-loading-indicator.spinner-border {
  -webkit-animation: spinner-border 1.5s linear infinite;
  animation: spinner-border 1.5s linear infinite;
}

.request-hint {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.8rem;
  max-width: 195px;
}
.request-hint-bottom {
  margin-top: 20px;
}
#request-successfull-indicator-wrapper {
  display: flex;
  justify-content: center;
  flex-direction: row;
  flex-wrap: wrap;
}
#request-successfull-indicator-wrapper i {
  text-align: center;
  aspect-ratio: 1;
  font-size: 10rem;
  /* width: 10rem; */
  height: 220px;
  color: #66db9e;
  border: 5px solid #66db9f28;
  border-radius: 100%;
  padding: 25px;
}
.kw-type-legend {
  /* width: 40px; */
  padding: 3px 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  font-size: 0.7rem;
  border-radius: 7px;
}
.kw-type-legend-wide {
  width: auto;
  padding: 0 5px;
}
.splide__pagination__page.is-active {
  color: #000 !important;
  background-color: white !important;
  border: 2px rgb(218, 218, 218) solid;
}
.splide__pagination {
  bottom: 0em !important;
}

*[id^="apexchartsexit-"] {
  /* CSS-Regeln hier */
  /* padding: 30px; */
}

#highway-ranking-container-list li {
  display: flex;
  justify-content: center;
  /* align-items: center; */
}

#highway-exit-list {
  max-height: 250px;
  overflow-y: auto;
  /* height: 100px; */
  overflow-x: hidden;
  font-weight: bold;
  color: grey;
}
.poi-evaluation-list tr {
  border: 1px solid rgba(128, 128, 128, 0.322);
}
.poi-evaluation-list tr:first-child {
  border-radius: 20px;
}
.poi-evaluation-list tr:nth-child(even) {
  /* background-color: rgb(226, 226, 226); */
}
.poi-detail-row-header {
  font-weight: bold;
  background-color: whitesmoke;
  border-radius: 10px;
}
.poi-detail-row-header,
.poi-detail-row {
  padding: 10px;
}
.poi-detail-row {
  transition: 0.2s ease all;
  border-radius: 10px;
  margin-top: 4px;
  cursor: pointer;
}
.poi-detail-row > div {
  padding: 10px !important;
  transition: 0.2s ease all;
}
.info-general {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.info-contact {
  background-color: whitesmoke;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.poi-detail-row:last-child {
  border: none;
}
.poi-detail-row:hover > .info-general {
  background-color: #caeada;
}
.poi-detail-row:hover > .info-contact {
  background-color: rgb(212, 212, 212);
}
#highway-exit-list .poi-evaluation-list td {
  padding: 10px 5px !important;
}
#highway-exit-list .poi-evaluation-list td:first-child {
  color: rgb(80, 80, 80);
}

#add-settings .form-check > div {
  display: flex;
}
#add-settings .form-check > div input {
  aspect-ratio: 1;
}
#groupManagementModal .modal-dialog {
  max-width: 95%;
}
#groupManagementModal table td {
  padding: 4px;
}
#groupManagementModal table {
  width: 100%;
  font-size: 0.9rem;

  table-layout: auto;
}

.is-group-member {
  background-color: rgb(236, 236, 236);
  display: none;
}
#point-quota input,
#area-quota input {
  width: 100px;
}

#modalImportData li {
  font-size: 0.95rem !important;
  line-height: 1.2rem;
}
#export-points-btn {
  position: relative;
}
#export-spinner {
  display: none;
  position: absolute;
  right: 8px;
}

#mapillary-wrapper {
  display: none;
}

.show-extern-wrapper {
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px;
  border-radius: 10px;
  gap: 5px;
}

#highway-analysis-container {
  display: none;
}
#no-surrounding-objects-hint {
  /* height: 100px; */
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.9rem;
}

.poi-detail-info td {
  /* margin: 0 !important; */
  /* padding: 0 !important; */
  width: max-content !important;
}
.small-info-card .val,
#lis-bev-card .val,
#time-to-highway,
#pendler-card.small-info-card table * {
  font-size: 1.5rem;
  line-height: 1.7rem;
  font-weight: 300;
}

#pendler-card.small-info-card table strong {
  /* font-weight: 400; */
}

#parking-info-card .badge {
  white-space: normal;
  padding: 0.8rem;
  font-weight: 500;
}
#parking-info-card .badge div {
  width: 100%;
}
.parking-info-wrapper {
  background-color: whitesmoke;
  padding: 20px;
  border-radius: 5px;
}
.parking-info {
  margin-top: 10px;
}

.btn .export-hint {
  transition: 0.2s ease all;
}
.btn .loading-export {
  padding-right: 0.8rem;
}
.pacman-wrapper {
  cursor: pointer;
  pointer-events: all;
  z-index: 4000;
  width: 15px;
  height: 15px;
  aspect-ratio: 1;
  background-color: #36af6d90;
  border-radius: 100%;

  border: 2px solid transparent;
  /* transform: rotate(155deg) !important; */
  transition: all 0.1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.pacman {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
  flex-basis: 1;
}
.pacman-wrapper::before {
  z-index: 4999;
  display: block;
  text-align: center;
  justify-content: center;
  align-items: center;
  content: "";
  width: 20px;
  height: 20px;
  width: 0px;
  height: 0px;
  transform: translateY(-15px) translateX(-4px);
  border-style: solid;
  border-width: 20px 10px 20px;
  border-color: transparent transparent transparent transparent;
  /* transition: all 0.1s ease; */
}
.pacman-wrapper:hover {
  /* background-color: ; */
  background-color: rgb(0, 153, 255);
  border-color: white;
  border-width: 2px;
}
.pacman-wrapper:hover::before {
  border-color: transparent transparent #1a4dac transparent;
}
.pacman-wrapper.active::before {
  /* display: flex; */
  border-color: transparent transparent #ffc01b transparent;
}
.pacman-wrapper.active {
  /* width: 20px; */
  /* height: 20px; */
  background-color: #ff861b;
  border-color: white;
  border-width: 2px;
}
#details-subtitle {
  /* line-height: 1rem; */
  /* font-size: 0.9rem; */
  font-size: 1.3rem;
}
#mapillary-hint {
  background-color: whitesmoke;
  font-size: 0.75rem;
  border-radius: 5px;
  width: auto;
  /* margin-left: auto; */
}

#close-detail-view {
  height: 15px;
  width: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.2s ease;
}
#close-detail-view:hover {
  color: rgba(184, 56, 56, 0.76);
}

.nav-pills .nav-link.active {
  background-color: #61a78552 !important;
}
.tab-kw {
  cursor: pointer;
}

#dynamic-user-info-box .card {
  background-color: rgba(255, 166, 0, 0.308);
  font-size: 0.9rem;
}
#tab-kw-wrapper {
  gap: 10px;
}
#tab-kw-wrapper .nav-link {
  padding: 10px;
  margin: 0;
}
#detail-view a {
  color: #61a785 !important;
}
#matrixRankingModal {
  padding-top: 0;
}
#matrixRankingModal .modal-dialog {
  margin-left: 2rem;
  margin-top: 2rem;
  max-width: 1800px;
}
.input-grid-entry:nth-child(odd) {
  background-color: whitesmoke;
}
.input-grid-entry {
  display: grid;
  grid-template-columns: 3fr 1fr;
  padding: 2px;
}

.google_rating_grid {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 5px;
}
#result-snapshot .result-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  margin-top: 3px;
  padding: 2px;
}
#result-snapshot .result-row:nth-child(even) {
  background-color: whitesmoke;
}
.result-row div {
  margin: 2px;
  padding: 2px;
}
.result-row div:nth-child(4),
.result-row div:nth-child(5),
.result-row div:nth-child(9),
.result-row div:nth-child(2) {
  background-color: rgb(216, 216, 216);
}
#outer-map-wrapper {
  margin: 0;
  padding: 0;
}
#outer-map-wrapper > div {
  padding: 0;
  margin: 0;
}
#startRatingBtn {
  background-color: #66db9e;
  display: flex;
  cursor: pointer;
  color: white;
  font-weight: bold;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}

#startRatingBtn i {
  font-size: 6rem;
  color: whitesmoke;
  transition: 0.1s cubic-bezier(0.445, 0.05, 0.55, 0.95) all;
}
#rating-result-list > * {
  max-height: 60vh;
  overflow: auto;
}
#startRatingBtn:hover i {
  font-size: 6.5rem;
}
#startRatingBtn:active i {
  font-size: 6rem;
}
#rating-result-grid {
  /* width: 90%; */
}
#rating-result-grid th,
#rating-result-grid td {
  font-size: 0.7rem !important;
  padding: 0px 5px !important;
}
textarea {
  font-size: 0.9rem !important;
  line-height: 1rem !important;
  width: 100% !important;
}

#rating-filter-container > div {
  border: 1px solid grey;
  /* margin: 5px; */
  /* background-color: white */
  /* border-radius: 10px */
  padding-top: 20px;
}

#rating-filter-container > div:last-of-type {
  border: 1px solid #61a785;
}

.parking-infor-marker-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}
.parking-info-marker {
  background-color: rgb(255, 255, 255);
  /* height: 45px; */
  /* width: 60px; */
  border-radius: 10px;
  padding: 5px;
  font-size: 0.7rem;
  /* border: rgb(116, 116, 116) solid 1px; */
  box-shadow: 2px 2px 5px rgb(155, 155, 155);
  background: rgba(255, 255, 255, 0.9);
  transition: 0.3s ease all;
}
.parking-info-marker:hover {
  box-shadow: 2px 2px 15px rgb(109, 109, 109);
  background: rgb(255, 255, 255);
}
.parking-category {
  font-weight: bold;
  background-color: grey;
  color: white;
  width: max-content;
  padding: 2px 5px;
  border-radius: 10px;
  font-size: 0.6rem !important;
}

.parking-category-2CL {
  background-color: rgb(216, 172, 27);
}
.parking-category-4CL {
  background-color: rgb(65, 202, 11);
}
.parking-category-Lounge {
  background-color: rgb(15, 197, 173);
}
.map {
  overflow: hidden;
}
.parking-info-marker-index {
  font-weight: bold;
  color: white;
  background-color: rgb(61, 61, 61);
  width: max-content;
  padding: 1px 5px;
  border-radius: 8px;
  position: absolute;
  top: -30px;
  left: -30px;
}
#rating-filter-container hr {
  margin: 3px;
}

.parking-info-marker-index {
}

.parking-area {
  font-weight: 800;
}

#ratingModalDetailsContent table {
  font-family: arial, sans-serif;
  border-collapse: collapse;
  width: 100%;
  font-size: 0.9rem;
}

#ratingModalDetailsContent table td,
#ratingModalDetailsContent table th {
  border: 1px solid #dddddd;
  text-align: left;
  padding: 4px;
}
#legend-wrapper {
  position: absolute;
  bottom: 70px;
  right: 10px;
  z-index: 200;
  background-color: white;
  padding: 5px;
  border-radius: 5px;
}

.analysis_list {
  /* display: grid; */
  /* grid-template-columns: repeat( auto-fit, minmax(250px, 1fr) ); */
  /* grid-template-columns: 1fr 1fr 1fr; */
  width: 100%;
  /* gap: 1rem */
}

.analysis_list > div {
  /* width: 300px; */
  /* height: 100px; */
  /* margin: 5px; */
}

.list-item-analysis-entry {
  width: 33%;
  height: 135px;
  display: grid;
  place-items: center;
  /* height: max-content; */
}
.list-item-analysis-entry .badge {
  font-size: 0.65rem;
}
.list-item-analysis-entry > div:first-child {
  width: 98%;
  height: 95%;
  border: 1px solid rgb(207, 207, 207);
  padding: 8px;
  border-radius: 5px;
  background-color: white;
}

.list-item-analysis-entry > div:hover {
  background-color: #f1f1f1;
  transition: all 0.2s ease;
}
@media only screen and (min-width: 800px) {
  .list-item-analysis-entry {
    width: 50%;
  }
}
@media only screen and (min-width: 100px) {
  .list-item-analysis-entry {
    width: 33%;
  }
}
@media only screen and (min-width: 1400px) {
  .list-item-analysis-entry {
    width: 20%;
  }
}
@media only screen and (min-width: 1000px) {
  .list-item-analysis-entry {
    width: 25%;
  }
}
@media only screen and (min-width: 1400px) {
  .list-item-analysis-entry {
    width: 20%;
  }
}

.analysis-entry-name {
  -webkit-line-clamp: 1;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 0.9rem;
  width:90%;
}
.list-item-analysis-entry small {
  font-size: 0.7rem;
}
#external-analysis-name {
  font-size: 0.7rem;
}

.apexcharts-xaxis-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.exploreOptionsActiveEntry {
  background-color: whitesmoke;
  border-radius: 5px;
  padding-left: 5px;
  /* padding-top: ; */
  transition: 0.1s ease all;
}
.exploreOptionsActiveEntry:hover {
  background-color: rgb(231, 231, 231);
}
.exploreOptionsActiveEntry div:first-child {
  font-size: 0.8rem;
  line-height: 0.9rem;
}
#exploreContainer .dropdown-menu {
  height: 200px;
  overflow: auto;
}
#exploreContainer .dropdown-menu .dropdown-item {
  font-size: 0.75rem;
  padding: 5px 2px;
}
.exploreOptionsActiveEntry input {
  padding: 2px 5px !important;
  font-size: 0.9rem;
  background-color: white !important;
}
.removeFilter {
  transition: 0.2s ease all;
}

.removeFilter:hover {
  color: rgb(238, 122, 122);
}
.netzentgelte-table {
  width: 100%;
}
.netzentgelte-table th,
.netzentgelte-table tr:nth-child(odd) {
  background-color: whitesmoke;
}
.netzentgelte-table td,
.netzentgelte-table th {
  padding: 5px;
  border: 1px solid whitesmoke;
}
#feedback-modal.modal {
  padding-top: 20px !important;
}

#feedback-button {
  position: fixed;
  bottom: 5rem;
  left: -5px;
  z-index: 10000;
  padding: 1rem;
  background-color: var(--mdb-primary);
  border-top-right-radius: 100%;
  border-bottom-right-radius: 100%;
  aspect-ratio: 1;
  transition: all 0.1s ease;
  color: white;
}
#feedback-button:hover {
  left: 0;
}
#feedback-button i.filled {
  display: none;
}
#feedback-button:hover i.filled {
  display: block;
}
#feedback-button:hover i.unfilled {
  display: none;
}
#look-up-site-dropdown {
  position: absolute;
  z-index: 10000;
  height: 30px;
  aspect-ratio: 1;
  top: 10px;
  right: 10px;
}
#look-up-site-dropdown i {
  font-size: 1rem;
  color: grey;
}
#look-up-site-dropdown i:hover {
  color: black;
}
#look-up-site-dropdown .dropdown-menu {
  max-height: 400px;
  overflow: auto;
  min-width: 70px;
}
#look-up-site-dropdown .dropdown-menu li,
#look-up-site-dropdown .dropdown-menu a {
}

.tooltip-pred-result {
  z-index: 10000 !important;
  transform: scale(1);
  font-size: 0.9rem;
}
.tooltip-pred-result > div {
  padding: 0.5rem;
}
.tooltip-pred-result .tooltip-body {
  width: 240px;
}
.tooltip-pred-result .tooltip-body > span {
  display: flex;
  justify-content: space-between;
}
.tooltip-pred-result .tooltip-head {
  background-color: whitesmoke;
  border-bottom: 1px rgb(221, 221, 221) solid;
}
#activeUsers {
  display: flex;
  flex-wrap: wrap;
  font-size: 0.8rem;
  line-height: 0.9rem;
  gap: 0.5rem;
}
#activeUsers > span {
  background-color: rgb(206, 206, 206);
  color: rgb(54, 54, 54);
  border-radius: 5px;
  font-weight: bold;
}
@keyframes pulsate {
  0% {
    background-color: var(--mdb-primary); /* Startfarbe (Grün) */
  }
  50% {
    background-color: #598a71c9; /* Mittlere Farbe (etwas dunkleres Grün) */
  }
  100% {
    background-color: var(--mdb-primary); /* Endfarbe (Grün) */
  }
}

#activeUsers > span.active {
  animation: pulsate 1s infinite; /* 2 Sekunden Dauer, unendliche Wiederholung */
  background-color: var(--mdb-primary); /* Startfarbe (Grün) */
  color: whitesmoke;
  border-radius: 5px;
  font-weight: bold;
}
.liveUserLocationHint {
  font-size: 0.7rem;
  line-height: 0.7rem;
  font-weight: normal;
}
.started-hint-tile {
  position: absolute;
  top: 50%; /* Zentriert den oberen Rand des inneren divs auf 50% des Elternelements */
  transform: translate(
    +5%,
    -45%
  ); /* Verschiebt das innere div um 50% seiner eigenen Breite und Höhe nach links und oben, um es zu zentrieren */
  font-size: 0.7rem;
  line-height: 0.7rem;
  font-weight: 600;
  display: flex;
  gap: 0.2rem;
  color: #ffffff;
  align-items: baseline;
  z-index: 1000;
  text-shadow: 2px 2px 8px #818181;
  letter-spacing: 0.3px;
}
.spinner-border-sm2 {
  width: 0.6rem !important;
  height: 0.6rem !important;
  border: 0.2em solid !important;
  border-right: 0.2em solid transparent !important;
  border-radius: 50%;
  animation: spinner-border 1s linear infinite !important;
}
/* border: 0.25em solid !important} */

/**
 * ==============================================
 * Dot Typing
 * ==============================================
 */
.dot-container {
  display: flex;
  gap: 2px;
}
.dot {
  display: inline-block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #fff;
}
.dot-grey {
  background-color: var(--grey1);
}

.dot-container .dot:nth-last-child(1) {
  animation: jumpingAnimation 1.2s 0.6s linear infinite;
}
.dot-container .dot:nth-last-child(2) {
  animation: jumpingAnimation 1.2s 0.3s linear infinite;
}
.dot-container .dot:nth-last-child(3) {
  animation: jumpingAnimation 1.2s 0s linear infinite;
}

@keyframes jumpingAnimation {
  0% {
    transform: translate(0, 0);
  }
  16% {
    transform: translate(0, -4px);
  }
  33% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(0, 0);
  }
}

.warning-container {
  background-color: #f0933d42;
  color: #f0933d;
  font-size: 1rem;
  margin-left: auto;
  justify-content: center;
  align-items: center;
  padding: 8px;
  margin-bottom: 1rem;
}

.warning-container {
  background-color: #f0933d42;
  color: #f0933d;
  font-size: 1rem;
  margin-left: auto;
  justify-content: center;
  align-items: center;
  padding: 8px;
  margin-bottom: 1rem;
}

.tippy-tooltip-custom .hint {
  /* font-size: 0.75rem; */
  /* font-weight: 500 !important; */
  color: black;
}
.tooltippi {
  transition: 0.2s ease color, transform 0.5s ease-in-out;
  height: max-content;
  /* font-size: 1rem; */
  cursor: pointer;
}
.tooltippi:hover {
  color: #376951;
  /* transform: rotate(90deg); */
}
.hint-popup {
  font-size: 1.5rem;
  color: black;
}

.icon-hint-container {
  display: flex;
  /* justify-content: center; */
  align-items: center;
  gap: 10px;
  padding: 8px;
  width: max-content;
  border-radius: 8px;
  background-color: #eeeeee;
  color: black !important;
  font-size: 1.1rem;
  font-weight: normal;
}
.icon-hint-container i {
  font-size: 2rem;
}

#netzentgelte-options-wrap {
  margin-top: 8px;
  /* margin-left: -2px; */
  display: flex;
  gap: 10px;
}
#netzentgelte-options-wrap > div {
  display: grid;
  width: max-content;
  gap: 5px;
  background-color: whitesmoke;
  padding: 5px;
  border-radius: 5px;
}
#netzentgelte-table-umlagen {
  margin-left: auto;
  margin-top: auto;
  height: 100%;
  margin-bottom: 20px;
}
#netzentgelte-legend-wrap {
}
#netzentgelte-legend {
  font-size: 0.7rem !important;
}
#netzentgelte-legend-title {
  display: none;
}
#netzentgelte-legend tr:nth-child(odd) {
  background-color: whitesmoke;
  /* padding: 5px; */
}
#netzentgelte-legend td {
  font-size: 0.75rem !important;

  padding: 8px;
}
#netzentgelte-legend tr td:nth-child(1) {
  font-weight: 800;
  padding-left: 3px;
}

.payment-card {
  background-color: whitesmoke;
  padding: 15px;
  height: 100%;
  border-radius: 8px;
  text-align: left;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.testHex {
  opacity: 1;
}

.big-custom-btn {
  background-color: #66db9e;
  font-size: 1.5rem;
  line-height: 1.8rem;
  padding: 5%;
  color: white;
  border-radius: 5px;
  transition: 0.3s ease all;
  cursor: pointer;
}

.big-custom-btn-grey {
  background-color: #aaaaaa;
}

.big-custom-btn i {
  font-size: 1.3rem;
}

.big-custom-btn:hover {
  box-shadow: 0px 0px 10px rgb(201, 201, 201);
}

#num-selected-hexas-wrap {
  width: max-content;
  background-color: white !important;
}

#current-explore-status {
  width: max-content;
}
#sites-found {
  background-color: #66db9e !important;
  color: white;
}
#explore-drawer .card-body {
  padding: 0.7rem !important;
}
.inactive {
  background-color: #bebebe !important;
  cursor: auto;
  pointer-events: none !important;
}
#explore-drawer {
  min-width: 450px;
  padding: 15px;
  box-sizing: border-box;
}
#explore-drawer > div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.parking-div-icon {
  background-color: white;
  border-radius: 6px;
  /* border: 2px solid #c; */
  box-shadow: 5px 0px 11px 2px #00000057;
}
.parking-div-icon-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  background-color: white;

  /* width: 100%; */
}
.parking-div-icon i {
  font-size: 1.7rem;
  color: #026dba;
}
.parking-cluster-icon {
  background-color: #026dba;
  color: white;
  font-size: 1.5rem;
  width: 40px;
  height: 40px;
  border-radius: 100%;
  transform: translate(-20px, -20px);
  box-shadow: 5px 0px 11px 2px #00000057;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10000 !important;
}
.parking-cluster-counter-bubble {
  position: absolute;
  top: -5px;
  background-color: #73c79f;
  width: 20px;
  height: 20px;
  text-align: center;
  border-radius: 100%;
  aspect-ratio: 1;
  font-weight: 600;
  right: -5px;
  font-size: 0.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 5px 0px 11px 2px #00000057;
}
.form-check-input:checked[type="checkbox"]:after,
.form-check-input:checked[type="checkbox"] {
  background-color: #73c79f !important;
}

.explore-sites-popup {
  display: grid;
  grid-template-columns: 1fr 5fr;
  gap: 5px;
  text-wrap: nowrap;
  font-size: 1rem;
  align-items: center;
  justify-content: center;
  margin-top: 1.5rem;
}
.explore-sites-popup i {
  font-size: 1.5rem;
  color: #66db9e;
}
.btn-darkred {
  background-color: #e05353 !important;
  color: white !important;
  font-weight: 500 !important;
}

.site-excluded {
  opacity: 0.3 !important;
}
.analyze-hexas-btn-title {
  /* font-size: 1rem !important; */
}
/* Eigene CSS-Regel für die Cluster-Animation */
/* Die Zeilengeschwindigkeit der Animation anpassen */
.leaflet-marker-cluster {
  transition-duration: 5s; /* Hier die gewünschte Geschwindigkeit in Sekunden einstellen */
}
#spark-icon {
  position: absolute;
  top: 15px;
  width: 25px;
  right: 35%;
}
.small-warning {
  color: #d66f6f;
  margin-bottom: 0;
  font-weight: bold;
  background-color: #d66f6f25;
  width: max-content;
  padding: 2px 4px;
  border-radius: 5px;
  line-height: 0.9rem;
}
.card-warning {
  background-color: #cf4f14 !important;
  color: white !important;
}
.card-warning .btn {
  background-color: white;
  color: #cf4f14 !important;
  font-weight: bold;
  /* padding: 8px 10px; */
  font-size: 0.9rem;
}
.card-warning .btn a {
  color: #cf4f14 !important;
  font-weight: bold;
}
/* .card-warning a{
  color: white;
}
.card-warning a:hover{
  color: whitesmoke;
} */
.street-label {
}
.street-label > div {
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  width: max-content;
  font-size: 0.7rem;
  background-color: #09204b;
  color: white;
  font-weight: bold;
  letter-spacing: 2px;
  border: 2px solid black;
  border-radius: 2px;
}
.street-popup .leaflet-popup-content-wrapper {
  margin-bottom: -2px;
}
.street-popup .leaflet-popup-tip,
.street-popup .leaflet-popup-content-wrapper {
  background-color: #262626;
}
.street-popup-inner {
  color: white;
  padding: 5px;
  display: grid;
  justify-content: center;
}
.street-popup-inner strong {
  font-size: 2rem;
}
.street-direction-icon {
  background-color: white;
}
.polygon-label > div {
  background-color: #383838;
  font-size: 0.7rem;
  font-weight: bold;
  letter-spacing: 1px;
  border-radius: 2px;
  padding: 1px 19px;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
}
.street-lines {
}

#top-loading-indicator {
  position: absolute;
  top: -10rem;
  z-index: 1000;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 1s ease all;
}
#top-loading-indicator > div {
  background-color: #73c79f;
  color: white;
  font-weight: bold;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  border-radius: 100%;
  box-shadow: rgba(0, 0, 0, 0.76) 4px 4px 20px 1px;
}
.accordion-loading-overview {
  /* background-color: rgba(0, 0, 0, 0.123); */
  position: absolute;
  top: 0;
  z-index: 2000;
  pointer-events: auto;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(1.5px);
  -webkit-backdrop-filter: blur(1.5px);
  display: flex;
  justify-content: center;
  align-items: center;
}
.form-switch {
  display: flex;
  justify-content: center;
  align-items: center;
}
.highlightElement {
  background-color: #47c08630;
  border-radius: 7px;
  color: var(--mdb-primary-text);
  justify-content: center;
  align-items: center;
  transition: 0.05s ease all;
}
.highlightElement:hover {
  background-color: #47c08645;
  border-radius: 7px;
  color: var(--mdb-primary-text);
  justify-content: center;
  align-items: center;
}
.locked-icon {
  display: none;
  background-color: #47c08630;
  padding: 3px;
  border-radius: 7px;
  color: #73c79f;
  width: 1.5rem;
  height: 1.5rem;
  justify-content: center;
  align-items: center;
  font-size: 0.9rem;
}
.locked-icon.active {
  display: flex;
}
.accordion-locked .locked-icon {
  display: flex;
}
.accordion-locked .accordion-collapse {
  opacity: 0.3;
  pointer-events: none;
}

.pin-analysis-entry {
  position: absolute;
  top: 10px;
  right: 10px;
  display: none;
  cursor: pointer;
}
.list-item-analysis-entry:hover .pin-analysis-entry{
  display: block;
}
.list-item-analysis-entry .pin-analysis-entry.active {
  display: block;
}
.pin-analysis-entry i {
  color: #6c6c6c;
  position: absolute;
  right: 0;
  top: 0;
  font-size: 1.3rem;
  pointer-events: auto;
  transition: 0.15s ease all;
}
.pin-analysis-entry i:hover {
  color: #4c4c4c;
}
.pin-analysis-entry.active i{
  color: var(--mdb-primary-text);
}
.pin-analysis-entry.active i:hover{
  color: #56a47e;
}
.leaflet-geosearch-bar form{
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2) !important;
  transition: 0.1s ease all;
  border: 2px solid rgb(182, 182, 182) !important;

}
.leaflet-geosearch-bar form.active{
  border-color: var(--mdb-primary) !important;

}
.input-validation-error{
  font-size: 0.7rem;
  color: #aa3131;
}
.list-item-analysis-entry .external-link-icon{
  display: none;
  background-color: white;
  /* height: max-content; */
  z-index: 20000;
}
.list-item-analysis-entry:not([data-version="1"])[data-status="4000"] .external-link-icon{
  display: flex;
  position: absolute;
  right: 10px;
  bottom: 5px;
  transform: translateX(1px);

}

.list-item-analysis-entry:not([data-version="1"])[data-status="4000"] > div {
  filter: grayscale(0.1) brightness(0.95);
}
#new-tool-hint-wrap .card{
  background-color: #caeada90;
  color: var(--mdb-primary-text);
}
.checkmark-round-wrap{
  color: white;
  font-size: 1.5rem;
  background-color: var(--mdb-primary-text);
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}