﻿.custom-checkbox {
    position: relative;
}

    .custom-checkbox input[type="checkbox"] {
        opacity: 0;
        position: absolute;
        cursor: pointer;
        height: 100%;
        width: 100%;
        z-index: 1;
    }

    .custom-checkbox label {
        cursor: pointer;
        padding-left: 25px;
    }

        .custom-checkbox label::before {
            content: "";
            position: absolute;
            left: 0;
            top: -2px;
            width: 20px;
            height: 20px;
            border: 1px solid #002800;
            border-radius: 2px;
            background-color: #fff;
        }

    .custom-checkbox input[type="checkbox"]:checked + label::before {
        content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M213.333 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z' fill='%23002800'/%3E%3C/svg%3E");
        background-color: #a6c54d;
        border-color: #002800;
    }

.rounded-modal .modal-content {
    border-radius: 5px;
}

.img-plastic-shadow {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.08);
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
}

.img-plastic-shadow:hover {
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15), 0 2px 4px rgba(0, 0, 0, 0.1);
    transform: translateY(-3px);
}


.cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #fff;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 9998;
    /* Responsive styles */
    @media (max-width: 768px) {
        .cookie-banner {
            flex-direction: column;
            text-align: center;
            padding: 10px;
        }
    }
}

    .cookie-banner p {
        margin: 0;
        padding-right: 20px;
    }

    .cookie-banner button {
        background-color: #007bff;
        color: #fff;
        border: none;
        padding: 10px 20px;
        border-radius: 5px;
        cursor: pointer;
        transition: background-color 0.2s ease;
    }

        .cookie-banner button:hover {
            background-color: #0062cc;
        }

/* Responsive styles */
@media (max-width: 768px) {
    .cookie-banner button {
        margin-top: 10px;
    }
}


.szif-logo {
    max-width: 60%;
}

/* waiting spinner on sending form e.g.*/
.spinner-border {
    width: 1rem;
    height: 1rem;
    border-width: 0.15em;
    margin-left: 0.5rem;
}

.break-on-small {
    display: inline;
}

@media (max-width: 991.98px) {
    .break-on-small {
        display: none;
    }
}


.food-logo {

    position: absolute;
    z-index: 10;
}

@media (min-width: 1200px) {

    .mai-sub-header .search {
        right: 20em;
    }

    .food-logo {
            width: 18em;
            top: -5em;
            margin-left: -18em;
        }
}

@media (max-width: 1199.98px) {
    .food-logo {
        width: 13em;
        top: -2.5em;
        margin-left: -12em;
    }
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
    .food-logo {
        max-width: 8em !important;
        right: 0.5em;
        top: -0.5em;
    }
}

/* X-Small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
    .food-logo {
        max-width: 5em !important;
        right: 0.5em;
        top: 1em;
    }
}


    .food-menu {
        margin-top: -54px;
        position: relative;
        z-index: 1;
        box-shadow: 0 8px 4px -4px rgba(0, 0, 0, 0.1);
    }

    .mai-sub-header .navbar-nav > .nav-item > .nav-link:hover {
        background-color: transparent;
        color: #a6c54d !important;
    }

    @media (max-width: 991.98px) {
        .food-menu {
            margin-top: -44px;
        }
    }

    .food-download i {
        color: #a6c54d;
        padding-right: 16px;
        padding-left: 16px;
    }

        .food-download i:hover {
            color: #002800 !important;
        }

    .food-download a:hover {
        color: #002800 !important;
        font-weight: bold;
    }

    .material-icons {
        vertical-align: middle;
        line-height: 0 !important;
        position: relative;
        top: -1px;
    }

    hr.border-primary {
        border-color: #002800;
    }

    hr.align-bottom {
        position: absolute;
        bottom: 0;
        left: .8em;
        width: calc(100% - 1.5em) !important;
    }

    .spinner-spin {
        display: inline-block;
        width: 50px;
        height: 50px;
        border: 3px solid rgba(0, 40, 0, .3);
        border-radius: 50%;
        border-top-color: #002800;
        animation: spin 1s ease-in-out infinite;
        -webkit-animation: spin 1s ease-in-out infinite;
    }

    input.no-spin[type=number]::-webkit-inner-spin-button,
    input.no-spin[type=number]::-webkit-outer-spin-button {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        margin: 0;
    }

    @keyframes spin {
        to {
            -webkit-transform: rotate(360deg);
        }
    }

    @-webkit-keyframes spin {
        to {
            -webkit-transform: rotate(360deg);
        }
    }

    .placeholder {
        padding: 10px;
    }

        .placeholder div {
            background: #E8E8E8;
        }

        .placeholder .square {
            float: left;
            min-width: 90px;
            min-height: 56px;
            margin: 0 0 10px;
            width: 100%;
            height: 100%;
        }

        .placeholder .line {
            height: 12px;
            margin: 0 0 10px 1px;
        }

            .placeholder .line:nth-child(2) {
                width: 92%;
            }

            .placeholder .line:nth-child(3) {
                width: 94%;
            }

            .placeholder .line:nth-child(4) {
                width: 80%;
            }

        .placeholder .circle {
            float: left;
            width: 15px;
            height: 15px;
            margin: 0 15px 10px 0;
            border-radius: 15px;
        }

        /* 
  --------------
  Pulse effect animation 
  Activated by adding a '.pulse' class to the placeholder
  --------------
*/

        .placeholder.pulse div {
            animation: pulse 1s infinite ease-in-out;
            -webkit-animation: pulse 1s infinite ease-in-out;
        }

    @keyframes pulse {
        0% {
            background-color: rgba(165,165,165,.1);
        }

        50% {
            background-color: rgba(165,165,165,.3);
        }

        100% {
            background-color: rgba(165,165,165,.1);
        }
    }

    @-webkit-keyframes pulse {
        0% {
            background-color: rgba(165,165,165,.1);
        }

        50% {
            background-color: rgba(165,165,165,.3);
        }

        100% {
            background-color: rgba(165,165,165,.1);
        }
    }

    /* 
  --------------
  Wave effect animation 
  Activated by adding a '.wave' class to the placeholder
  --------------
*/

    .placeholder.wave div {
        animation: wave 1s infinite linear forwards;
        -webkit-animation: wave 1s infinite linear forwards;
        background: #f6f7f8;
        background: linear-gradient(to right, #eeeeee 8%, #dddddd 18%, #eeeeee 33%);
        background-size: 800px 104px;
    }

    @keyframes wave {
        0% {
            background-position: -468px 0
        }

        100% {
            background-position: 468px 0
        }
    }

    @-webkit-keyframes wave {
        0% {
            background-position: -468px 0
        }

        100% {
            background-position: 468px 0
        }
    }
