body, html {
  width: 100%;
  height: 100%;
  position: relative;
}

.background {
  width: 110%;
  height: 110%;
  top: -5%;
  left: -5%;
  filter: blur(8px);
  -webkit-filter: blur(8px);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: fixed;
}

 /* Tooltip container */
.tooltip {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
  visibility: hidden;
  width: 120px;
  background-color: #555;
  color: #fff;
  text-align: center;
  padding: 5px 0;
  border-radius: 6px;

  /* Position the tooltip text */
  position: absolute;
  z-index: 1;
  bottom: 125%;
  left: 50%;
  margin-left: -60px;

  /* Fade in tooltip */
  opacity: 0;
  transition: opacity 0.3s;
}

/* Tooltip arrow */
.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #555 transparent transparent transparent;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}

.custom-file-button input[type="file"] {
  margin-left: -2px !important;
}

.custom-file-button input[type="file"]::-webkit-file-upload-button {
  display: none;
}

.custom-file-button input[type="file"]::file-selector-button {
  display: none;
}

.custom-file-button::file-selector-button label
{
  background-color: #dde0e3;
  cursor: pointer;
}

.laeufer-table {
  height: 500px;
  overflow: hidden;
}

.laeufer-table tr td.laeufer-profile-image
{
  background-size: auto calc(100% - 4px);
  background-repeat: no-repeat;
  background-position: 50% 2px;
  width: 100px;
}

.laeufer-table tr td
{
  height: 100px;
  vertical-align: middle;
}

.date-table{
  cursor: pointer;
}

.select-table {
  cursor: pointer;
}

.laeufer-table tbody tr td a {
  width: 100%;
  height: 100%;
  display: block;
  margin: 0;
  padding: 0;
  vertical-align: middle;
  position: relative;
}

.laeufer-table tbody tr td a i{
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 2em;
  left: 50%;
}

.round-corner-left {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.table-ver-mid tbody tr td {
  vertical-align: middle;
}

.laeufer-profile-heading{
  border-radius: 10px;
}

.btn-bar {
  background-color: #35A29F;
}

.btn-karte {
  background-color: #FD8D14;
}

.selectize-input {
    min-height: 38px;
}

.touch-btn {
  width: 50px;
  height: 50px;
  top: 0;
}

.v-align-middle {
  vertical-align: middle;
}

.signature-pad {
  border:1px solid #000000;
  display: block;
  left: 50%;
  position: relative;
  transform: translateX(-50%);
}
.text-right {
  text-align: right;
}

.div-center {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

#overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: #000000aa;
  z-index: 10000;
}

#overlay .spinner-grow {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.to-center{
  left: 50%;
  position: relative;
  transform: translateX(-50%);
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

:root {
  --variant-selection-border-radius: 5px;
}


.variant-selection {
  width: 100px;
  height: 100px;
  left: 50%;
  position: relative;
  transform: translateX(-50%);
  border-radius: var(--variant-selection-border-radius);
}

.variant-selection input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 100%;
  width: 100%;
}

.variant-selection input[type="checkbox"] + label{
  position: absolute;
  width: 110%;
  height: 110%;
  top: -5%;
  left: -5%;
  border: none;
  border-radius: calc(var(--variant-selection-border-radius) + 5%);
  display: flex;
  justify-content: center;
  align-items: center;
}

.variant-selection input[type="checkbox"]:checked + label{
    border: black solid 5px;
}

.variant-color-preview {
  width: 1lh;
  height: 1lh;
  display: block;
  position: relative;
  border-radius: 5px;
}

.table tr td {
  vertical-align: middle;
}

.tabulator{
  border: 1px solid #ddd;
}

.tabulator-edit-field-text{
  background-color: #ffc107;
}

.tabulator-edit-field-number{
  background-color: #6DC5D1;
}

.tooltip-inner {
  min-width: 300px;
}

.prevent-select {
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none; /* IE 10 and IE 11 */
  user-select: none; /* Standard syntax */
}

/* Style for the label that will act like a box */
.radio-box {
  display: inline-block;
  cursor: pointer;
  padding: 10px;
  border: 2px solid #ccc;
  border-radius: 5px;
  text-align: center;
  width: 100%;
  background-color: #f9f9f9;
  transition: background-color 0.3s, border-color 0.3s;
  position: relative;
  font-size: 2em;
}

/* Hide the original radio button */
.radio-box-input {
  display: none;
}

/* Change box appearance when radio button is checked */
.radio-box-input:checked + .radio-box {
  border-color: #007bff;
  background-color: #007bff;
  color: white;
}

.radio-box i {
  font-size: 2em;
}


/* Add hover effect */
.radio-box:hover {
  border-color: #007bff;
}

.sticky {
  background-color: #ffffff;
  padding: 15px;
  margin-bottom: 20px;
  position: -webkit-sticky;
  position: sticky;
  z-index: 1000;
  top: 0;
}

.form-label {
  margin-bottom: -10px;
  padding: 0;
}

.form-check .form-check-input {
  margin-left: 0;
}
.form-check .form-check-label {
  margin-left: 5px;
}
.row{
  margin-top: 5px;
}
.tab-pane{
  margin-top: 5px;
}