[x-cloak] {
    display: none !important;
}

#pageWrapper {
    min-height: 100%;
    position: relative;
}

html, body {
    height: 100%;
    margin-bottom: 0;
    padding-bottom: 0;
    counter-reset: h3counter;
}

a {
    cursor: pointer;
}

a.disabled {
    pointer-events: none;
    color: #ccc;
}

a.api {
    color: #66b91c;
    text-decoration: underline;
}

a.api:hover, a.api:focus {
    color: #417712; !important;
    text-decoration: underline;
}

h3.counter {
    counter-reset: h4counter;
}

h3.counter::before {
    counter-increment: h3counter;
    content: counter(h3counter) ". "
}

h4.counter::before {
    counter-increment: h4counter;
    content: counter(h3counter) "." counter(h4counter) ". "
}

ol.counter {
    counter-reset: section;
}

li.counter::before {
    font-weight: bold;
    counter-increment: section;
    content: counter(h3counter) "." counter(section) ". "
}

li.counter {
    /* text-indent: 0em; */
    position: relative;
    margin: 2px;
    padding: 1em 0.5em 0.5em;
    list-style-type: none
}

ol.api {
    padding-left: 30px;
}

ul.api {
    padding-left: 30px;
    list-style: disc;
}

pre.api {
    display: block;
    padding: 6px;
    margin-bottom: 7px;
    font-size: 90%;
    line-height: 1.2;
    word-break: break-all;
    word-wrap: break-word;
    color: #333;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: scroll;
}

code.api {
    font-size: 90%;
    color: #c7254e;
    background-color: #f9f2f4;
}

div.api {
    padding: 6px;
    margin-bottom: 7px;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: scroll;
}

#mainBody {
    padding-bottom: 69px;
    margin-bottom: 0;
}

#footer {
    position: absolute;
    width: 100%;
    bottom: 0;
    margin-top: 25px;
    margin-bottom: 0;
}

table > tbody > tr > td.alternativ {
    border-top: unset;
    padding-top: unset;
}

table > tbody > tr > td.alternativ.alternativtext {
    font-style: italic;
}

table > tbody > tr > td.alternativhead {
    padding-bottom: unset;
    font-style: italic;
}

table.no-lines > tbody > tr > td {
    border: none;
    vertical-align: center;
}

table.no-v-padding > tbody > tr > td {
    padding-top: 0;
    padding-bottom: 0;
}

table .preise td {
    padding-right: 8px;
}

.btn_more {
    display: none;
}

tr.alternativ {
    background-color: #f2f2f2;
}

div.ticketmsgbtn {
    display: table;
    width: 100%;
}

div.ticketmsg {
    display: table-cell;
}

div.ticketbtn {
    display: table-cell;
    text-align: right;
}

.scrollbar-thin {
    --scrollbar-track: initial;
    --scrollbar-thumb: initial;
    --scrollbar-corner: initial;
    --scrollbar-track-hover: var(--scrollbar-track);
    --scrollbar-thumb-hover: var(--scrollbar-thumb);
    --scrollbar-corner-hover: var(--scrollbar-corner);
    --scrollbar-track-active: var(--scrollbar-track-hover);
    --scrollbar-thumb-active: var(--scrollbar-thumb-hover);
    --scrollbar-corner-active: var(--scrollbar-corner-hover);
    scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
    overflow: overlay;
}

.scrollbar-thin.overflow-x-hidden {
    overflow-x: hidden;
}

.scrollbar-thin.overflow-y-hidden {
    overflow-y: hidden;
}

.scrollbar-thin::-webkit-scrollbar-track {
    background-color: var(--scrollbar-track);
}

.scrollbar-thin::-webkit-scrollbar-thumb {
    background-color: var(--scrollbar-thumb);
}

.scrollbar-thin::-webkit-scrollbar-corner {
    background-color: var(--scrollbar-corner);
}

.scrollbar-thin::-webkit-scrollbar-track:hover {
    background-color: var(--scrollbar-track-hover);
}

.scrollbar-thin::-webkit-scrollbar-thumb:hover {
    background-color: var(--scrollbar-thumb-hover);
}

.scrollbar-thin::-webkit-scrollbar-corner:hover {
    background-color: var(--scrollbar-corner-hover);
}

.scrollbar-thin::-webkit-scrollbar-track:active {
    background-color: var(--scrollbar-track-active);
}

.scrollbar-thin::-webkit-scrollbar-thumb:active {
    background-color: var(--scrollbar-thumb-active);
}

.scrollbar-thin::-webkit-scrollbar-corner:active {
    background-color: var(--scrollbar-corner-active);
}

.scrollbar-thin {
    scrollbar-width: thin;
}

.scrollbar-track-gray-100 {
    --scrollbar-track: #f2f2f2 !important;
}

.scrollbar-thumb-gray-300 {
    --scrollbar-thumb: #cdcdcd !important;
}

.scrollbar-track-rounded-full::-webkit-scrollbar-track {
    border-radius: 9999px;
}

.scrollbar-thumb-rounded-full::-webkit-scrollbar-thumb {
    border-radius: 9999px;
}

.scrollbar-thin::-webkit-scrollbar {
    width: 4px;
    height: 4px;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
    font-size: 1.25rem;
    margin: 0;
}

.text-lg [class^="icon-"]:before, .text-lg [class*=" icon-"]:before {
    font-size: 1.5rem;
    margin: 0;
}

.text-sm [class^="icon-"]:before, .text-sm [class*=" icon-"]:before {
    font-size: 1.0rem;
    margin: 0;
}

.text-xs [class^="icon-"]:before, .text-xs [class*=" icon-"]:before {
    font-size: 0.8rem;
    margin: 0;
}

.navbar-left [class^="icon-"]:before, .navbar-left [class*=" icon-"]:before {
    font-size: 1.8rem;
}

.icons-lg [class^="icon-"]:before, .icons-lg [class*=" icon-"]:before {
    font-size: 1.5rem;
}

.icons-sm [class^="icon-"]:before, .icons-sm [class*=" icon-"]:before {
    font-size: 1.0rem;
}

.icons-xs [class^="icon-"]:before, .icons-xs [class*=" icon-"]:before {
    font-size: 0.8rem;
    display: block;
}

.navbar-left li > .dropdown-menu {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
}

.form-input-boxes label {
    flex: 1;
    hyphens: auto;
    font-weight: bold;
}

.form-input-boxes input, .form-input-boxes textarea {
    flex: 4;
}

.form-input-boxes .form-group {
    display: flex;
    gap: 1rem;
    align-items: center;
}

.form-grid .form-group {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.25rem 0.2rem;
}

.form-grid label {
    font-weight: bold;
}

.form-grid .checkbox label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.checkbox input[type="checkbox"] {
    color: #65b32e;
}

input[type="radio"]:checked {
    color: #65b32e;
}

input[type=file]::file-selector-button {
    background-color: #65b32e;
    color: #ffffff;
    border: 0;
    padding: 0.5rem 1.25rem 0.5rem 1.25rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    width: 160px;
}

select:disabled, input:disabled {
    color: #000;
    opacity: 1;
    background-color: #e0e0e0;
}

#formTabs li .dot {
    width: 2.5rem;
    height: 2.5rem;
    margin-right: 0.5rem;
    margin-left: 0.5rem;
    margin-top: 0.5rem;
    transform: scale(0.5);
    position: relative;
    border-radius: 100%;
    background: rgb(249 249 249);
    transition: all 0.3s ease-in-out;
}

#formTabs li .dot:before, #formTabs li .dot:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    border-radius: 100%;
    transition: all 0.3s ease-in-out;
}

#formTabs li.active .dot {
    transform: scale(1);
    /*background: rgb(249 249 249);*/
}

#formTabs li .dot:before {
    width: 1rem;
    height: 1rem;
    background: rgb(101 179 46 / 0.2);
}

#formTabs li.active .dot:before {
    transform: translate(-50%, -50%) scale(2);
}

#formTabs li .dot:after {
    width: 1rem;
    height: 1rem;
    background: rgb(180 180 180);
}

#formTabs li.active .dot:after {
    transform: translate(-50%, -50%) scale(0.5);
}

#formTabs li.done .dot:after, #formTabs li.active .dot:after {
    background: rgb(101 179 46);
}

.modal-dialog {
    /*display: none;*/
}

#errorDiv {
    /*padding: 16px;*/
}

.growe-select2-dropdown {
    font-size: 14px;
}

.select2-container--classic .select2-selection--single, .select2-container--classic.select2-container--open.select2-container--below .select2-selection--single, .select2-container--classic.select2-container--open.select2-container--above .select2-selection--single, .chosen-container-single .chosen-single, .chosen-container-active.chosen-with-drop .chosen-single, .chosen-container-single .chosen-search input[type="text"], .chosen-container .chosen-results li {
    font-size: 14px;
    line-height: 1.25rem;
    padding: 0.25rem;
    border-radius: 0;
    border: 1px solid rgb(224 224 224);
    box-sizing: border-box;
    box-shadow: 0 0 0 transparent;
}

.select2-container--classic .select2-selection--single, .select2-container--classic.select2-container--open.select2-container--below .select2-selection--single, .select2-container--classic.select2-container--open.select2-container--above .select2-selection--single, .chosen-container-single .chosen-single, .chosen-container-active.chosen-with-drop .chosen-single {
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23818181' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e") no-repeat center right 0.5rem, #fff;
    background-size: 1.5em 1.5em, 100%;
}

.select2-search .select2-search__field {
    font-size: 14px;
}

.select2-required > .select2-container--classic .select2-selection--single {
    border: 1px solid rgb(239 68 68);
}

.select2-container--classic .select2-selection--single[aria-disabled=true] {
    background-color: #e0e0e0;
}

.select2-container--classic .select2-selection--single .select2-selection__rendered {
    color: #000;
    padding-left: 0;
    line-height: inherit;
    padding-right: 1.5rem;
}

.select2-container--classic .select2-selection--single .select2-selection__arrow, .chosen-container-single .chosen-single div {
    display: none;
}

.select2-search--inline {
    display: contents; /*this will make the container disappear, making the child the one who sets the width of the element*/
}

.select2-selection__rendered {
    width: 100% !important;
    font-size: 14px;
}

.chosen-container-single .chosen-default {
    color: #000000;
}

.select2-container--classic .select2-selection--single:focus {
    border: 0;
    box-shadow: 0 0 0 2px #2563eb;
}

.progress-bar {
    width: 200%;
    background: linear-gradient(to right, rgb(255 255 255 / 0) 10%, rgb(255 255 255 / 0.5) 25%, rgb(255 255 255 / 0) 40%, rgb(255 255 255 / 0) 60%, rgb(255 255 255 / 0.5) 75%, rgb(255 255 255 / 0) 90%);
    animation: progress 1.5s linear infinite;
}

.modal-footer {
    padding: 15px;
    text-align: right;
}

.modal-body {
    padding: 20px;
    border-radius: 5px;
    border: none;
    text-align: center;
    font-size: 14px;
}

@keyframes progress {
    from {
        transform:translateX(-50%);
    }
    to {
        transform:translateX(0);
    }
}

/* Tabellen mit Sortierung  */
.tablesort {
    padding-left: 1.1rem !important;
    background-repeat: no-repeat;
    background-size: 13px 16px;
    background-position: left;
}
.tablesortUnsorted {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z"/></svg>');
}
.tablesortDesc {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41z"/></svg>');
}
.tablesortAsc {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M279 224H41c-21.4 0-32.1-25.9-17-41L143 64c9.4-9.4 24.6-9.4 33.9 0l119 119c15.2 15.1 4.5 41-16.9 41z"/></svg>');
}
.tablesortRight {
    padding-right: 1.1rem !important;
    background-repeat: no-repeat;
    background-size: 13px 16px;
    background-position: right;
}
.tablesortBottom {
    padding-bottom: 1.3rem !important;
    background-repeat: no-repeat;
    background-size: 13px 16px;
    background-position: bottom;
}

/** Rechteverwaltung **/
th.rotate-text {
    width: 25px;
    height: 250px;
    padding: 10px;
    vertical-align: bottom;
}

th.darktable, td.darktable {
    border-left: black solid 1px;
    border-right: black solid 1px;
    text-align: center;
}

span.rotate-text {
    transform: rotate(-90deg);
    display: inline-block;
    width: 25px;
    white-space: nowrap;
    margin-bottom: 6px;
}

.sumline-small {
    border-bottom: 1px solid #e0e0e0;
    margin-top: 5px;
    margin-bottom: 5px;
}

.sumline-bold {
    border-bottom: 3px solid #e0e0e0;
    margin-top: 5px;
    margin-bottom: 5px;
}

/*---------------------- */
/*---- Lagerartikel ---- */
/*---------------------- */
.artikelpanel {
    padding: 15px 0 0 0; !important;
}
.artikelcontainer {
    padding: 0;
    width: 310px;
}
.singlearticle {
    width: 100%;
    border: 1px solid lightgrey;
    padding: 8px;
    margin: 4px;
}
div.artikelbild {
    height: 150px;
    width: 100%;
    margin-bottom: 25px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
img.artikelbild {
    vertical-align: middle;
    max-width: 100%;
    max-height: 148px;
}
div.artikeltext {
    width: 100%;
    overflow: hidden;
}
ul.artikelkat {
    list-style-type: none;
    padding-left: 10px;
    margin-top: 2px;
}
ul.artikelkat > li {
    margin-top: 4px;
}
ul.artikelkat > li > a {
    font-weight: 500;
    color: #145a1f;
}
.artbackdok {
    float: right;
    margin-top: 2px;
}
span.style-item {
    margin-left: -14px;
    cursor: pointer;
}

.password-meter {
    height: 0.8em;
    overflow: hidden;
    background: linear-gradient(to right,red,orange 25%,yellow 50%,green 75%);
    text-align: right;
}

.password-meter div {
    display: inline-block;
    height: 100%;
    background: rgba(255,255,255,.8);
    vertical-align: top;
}

.fileinput-button {
    position: relative;
    overflow: hidden;
    border: 2px dashed #145a1f;
    border-radius: 7px;
    text-align: center;
    vertical-align: middle;
    margin-top: 10px;
    margin-bottom: 20px;
    color: #145a1f;
    font-family: 'Roboto', sans-serif !important;
    font-size: 14px;
    font-weight: bold;
    padding: 6px 12px;
}

.fileinput-button input {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    opacity: 0;
    -ms-filter: 'alpha(opacity=0)';
    font-size: 200px;
    direction: ltr;
    cursor: pointer;
}

/*------- Slider (Tuchfinder) Styles -------*/

.slider-handle.custom::before {
    line-height: 20px;
    font-size: 20px;
    content: '\2605'; /*unicode star character*/
    color: #726204;
}

.slider-track {
    position: absolute;
    background-image: linear-gradient(to bottom, #dfeccf 0%, #dfeccf 100%) !important;
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdfeccf', endColorstr='#ffdfeccf', GradientType=0) !important;
    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
    border-radius: 4px;
}

.slider-selection.tick-slider-selection {
    background-image: linear-gradient(to bottom, #dfeccf 0%, #bdd999 100%) !important;
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdfeccf', endColorstr='#ffbdd999', GradientType=0) !important;
}

.slider-selection.tick-slider-selection {
    background-image: linear-gradient(to bottom, #65b32e 0%, #145a1f 100%) !important;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff4aad30', endColorstr='#ff145a1f', GradientType=0) !important;
}

.slider-handle {
    position: absolute;
    cursor: pointer;
    top: 0;
    width: 20px;
    height: 20px;
    background-color: #145a1f;
    background-image: linear-gradient(to bottom, #65b32e 0%, #145a1f 100%) !important;
    background-repeat: repeat-x;
    filter: none;
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
    border: 0 solid transparent;
}

.slider-tick {
    position: absolute;
    width: 20px;
    height: 20px;
    background-image: linear-gradient(to bottom, #f9f9f9 0%, #f5f5f5 100%);
    background-repeat: repeat-x;
    -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.3);
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
    filter: none;
    opacity: 0.8;
    border: 0 solid transparent;
}

.slider-tick.in-selection {
    background-image: linear-gradient(to bottom, #bdd999 0%, #65b32e 100%) !important;
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdfeccf', endColorstr='#ffbdd999', GradientType=0) !important;
    opacity: 1;
}
