.custom-checkbox .custom-control-input:checked~.custom-control-label::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}

.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E");
}

.app-header {
    z-index: 99999;
}

div.dataTables_filter {
    text-align: left !important;
}

.dataTables_filter label {
    width: 100% !important;
    display: block !important;
}
.dataTables_filter input {
    font-size: 200%;
    width: 90% !important;
    height: 100%;
    float: left;
    background: #fcfcfc;
    border: 1px solid #aaa;
    border-radius: 5px;
    text-indent: 10px;
}

.btn-filter-reset {
    height: 38px;
}

.tag-free {
    background-color: darkgreen;
    color: white;
}

.tag-product {
    background-color: blue;
    color: white;
}

.tag-marketplace {
    background-color: blue;
    color: white;
}

.tag-invalid {
    background-color: darkred;
    color: white;
}

.tag-sold {
    background-color: lightgreen;
    color: black;
}

.tag-reserved {
    background-color: orange;
    color: black;
}

.dist_filter_reset {
    height: 38px;
    padding: 0 !important;
    margin: 0 !important;
}

.dist_filter_reset span {
    padding: 8px 12px 12px 12px !important;
}



.do-pulse {
    animation: do-pulse 1s infinite;
}

@keyframes do-pulse {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.6);
    }
    50% {
        transform: scale(1.3);
        box-shadow: 0 0 20px 25px rgba(255, 0, 0, 0);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 0, 0, 0);
    }
}

.do-pulse-soft {
    animation: 1s 5 do-pulse-soft ;
}

@keyframes do-pulse-soft {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(200, 255, 200, 0.75);
    }
    50% {
        transform: scale(1.05);
        box-shadow: 0 0 10px 25px rgba(0, 255, 0, 0);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
    }
}



input.do-pulse {
    animation: input-do-pulse 1s infinite;
}

@keyframes input-do-pulse {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.6);
    }
    50% {
        transform: scale(1.00);
        box-shadow: 0 0 10px 12px rgba(255, 0, 0, 0);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 0, 0, 0);
    }
}

.form-label {
    font-weight: bold !important;
}

.form-control,
.form-select {
    border-color: #aeaec5;
    box-shadow: inset 0 3px 4px rgba(0,0,0,0.1);
}

.leaflet-tooltip {
    z-index: 200000000 !important;
}



table.table-hover tr.product_link td {
    padding: 0.05rem 0.75rem;
}

table.table-hover tr:hover {
    cursor: pointer;
}

table.table-hover tr.product_link td:last-child {
    cursor: default;
}

.distributors_offer {
    border-radius: 7px;
    border: 1px solid var(--bs-gray-400);
    background: linear-gradient(180deg, var(--bs-gray-200), white);
}

.distributors_offer .card-body {
    padding: 0.75rem;
}


.distributors_offer .merchant {
    border-bottom: 1px solid var(--bs-gray-400);
    padding-bottom: 0.5rem;
}

.distributors_offer .price {
    margin: 3px 0;
    text-align: center;
    font-size: 1.5rem;
}

.distributors_offer .qty {
    margin: 3px 0;
    text-align: center;
    font-size: 1rem;
}

.distributors_offer .offerid {
    margin: 16px 0 3px 0;
    text-align: center;
    font-size: 0.8rem;
}

.offer_thumbnail {
    text-align: right;
}

.offer_thumbnail img {
    max-height: 150px !important;
    width: auto;
}

.modal-xl,
.modal-xxl,
.modal-3xl {
    width: 90%;
}

@media (min-width: 996px) {
    .modal-xl {
        width: 70%;
        max-width: 700px;
    }

    .modal-xxl {
        width: 80%;
        max-width:800px;
    }

    .modal-3xl {
        width: 90%;
        max-width:900px;
    }
}

@media (min-width: 1440px) {
    .modal-xl {
        width: 70%;
        max-width: 1000px;
    }

    .modal-xxl {
        width: 80%;
        max-width: 1150px;
    }

    .modal-3xl {
        width: 90%;
        max-width: 1280px;
    }
}

@media (min-width: 1920px) {
    .modal-xl {
        width: 70%;
        max-width: 1400px;
    }

    .modal-xxl {
        width: 80%;
        max-width: 1600px;
    }

    .modal-3xl {
        width: 90%;
        max-width: 1800px;
    }
}

#clear_search {
    cursor: pointer;
    border: 1px solid rgb(170, 170, 170);
    border-right: 0;
    box-shadow: inset 0 3px 4px rgba(0,0,0,0.1);
}
