/* Extracted from index.php. Loaded at the original cascade position. */

    /* =====================================================
       COMPACT FOOD CATALOGUE
    ===================================================== */

    #all-menu-items {
        margin-top: 38px;
        margin-bottom: 42px;
    }

    .fk-catalogue-compact {
        position: relative;
        overflow: hidden;

        padding: 26px;

        border: 1px solid #eceef2;
        border-radius: 24px;

        background:
            radial-gradient(
                circle at 100% 0,
                rgba(239,35,60,.055),
                transparent 28%
            ),
            #ffffff;

        box-shadow:
            0 14px 38px rgba(15,23,42,.055);
    }


    /* =====================================================
       HEADER
    ===================================================== */

    .fk-catalogue-compact-head {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 25px;

        margin-bottom: 18px;
    }

    .fk-catalogue-heading {
        max-width: 720px;
    }

    .fk-catalogue-kicker {
        display: inline-flex;
        align-items: center;
        gap: 7px;

        margin-bottom: 8px;

        color: #d90429;

        font-size: 10px;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .fk-catalogue-kicker i {
        width: 26px;
        height: 26px;

        display: grid;
        place-items: center;

        border-radius: 8px;

        color: #fff;
        background: #ef233c;

        font-size: 10px;
    }

    .fk-catalogue-heading h2 {
        margin: 0 0 7px;

        color: #111827;

        font-size: clamp(23px, 2.6vw, 31px);
        font-weight: 900;
        line-height: 1.1;

        letter-spacing: -1px;
    }

    .fk-catalogue-heading h2 span {
        color: #ef233c;
    }

    .fk-catalogue-heading p {
        margin: 0;

        max-width: 650px;

        color: #6b7280;

        font-size: 12px;
        line-height: 1.6;
    }


    /* count */

    .fk-catalogue-count {
        flex: 0 0 auto;

        display: flex;
        align-items: center;
        gap: 9px;

        padding: 9px 12px;

        border: 1px solid #eceef2;
        border-radius: 12px;

        background: #fafafa;

        color: #111827;
    }

    .fk-catalogue-count i {
        color: #ef233c;
    }

    .fk-catalogue-count strong {
        display: block;

        font-size: 13px;
        font-weight: 900;
        line-height: 1;
    }

    .fk-catalogue-count small {
        display: block;

        margin-top: 2px;

        color: #8a94a3;

        font-size: 8.5px;
        font-weight: 700;
    }


    /* =====================================================
       SEARCH
    ===================================================== */

    .fk-catalogue-toolbar {
        display: flex;
        align-items: center;
        gap: 10px;

        margin-bottom: 17px;
    }

    .fk-catalogue-search {
        position: relative;

        flex: 1;

        display: flex;
        align-items: center;

        min-height: 45px;

        border: 1px solid #e6e8ec;
        border-radius: 13px;

        background: #fafafa;

        transition:
            border-color .2s ease,
            box-shadow .2s ease,
            background .2s ease;
    }

    .fk-catalogue-search:focus-within {
        border-color: rgba(239,35,60,.4);

        background: #ffffff;

        box-shadow:
            0 0 0 3px rgba(239,35,60,.06);
    }

    .fk-catalogue-search > i {
        margin-left: 14px;
        margin-right: 10px;

        color: #ef233c;

        font-size: 13px;
    }

    .fk-catalogue-search input {
        width: 100%;

        padding: 12px 12px 12px 0;

        border: 0;
        outline: 0;

        background: transparent;

        color: #111827;

        font-family: inherit;
        font-size: 11.5px;
        font-weight: 600;
    }

    .fk-catalogue-search input::placeholder {
        color: #9aa3af;
        font-weight: 500;
    }

    .fk-catalogue-clear {
        width: 31px;
        height: 31px;

        display: none;
        place-items: center;

        margin-right: 7px;

        border: 0;
        border-radius: 9px;

        color: #64748b;

        background: #eeeeef;

        cursor: pointer;
    }

    .fk-catalogue-clear:hover {
        color: #fff;
        background: #ef233c;
    }


    /* =====================================================
       ITEMS
    ===================================================== */

    .fk-all-items-grid {
        display: flex;
        flex-wrap: wrap;

        gap: 7px;

        max-height: 220px;

        overflow-y: auto;

        padding: 2px 4px 4px 1px;

        scrollbar-width: thin;
        scrollbar-color: #d1d5db transparent;
    }

    .fk-all-items-grid::-webkit-scrollbar {
        width: 6px;
    }

    .fk-all-items-grid::-webkit-scrollbar-thumb {
        background: #d1d5db;
        border-radius: 10px;
    }


    .fk-menu-item-link {
        display: inline-flex;
        align-items: center;
        gap: 6px;

        min-height: 34px;

        padding: 7px 10px;

        border: 1px solid #e8eaee;
        border-radius: 10px;

        color: #313640;

        background: #ffffff;

        text-decoration: none;

        font-size: 10.5px;
        font-weight: 750;

        box-shadow:
            0 2px 5px rgba(15,23,42,.025);

        transition:
            color .18s ease,
            border-color .18s ease,
            background .18s ease,
            transform .18s ease,
            box-shadow .18s ease;
    }

    .fk-menu-item-link i {
        color: #ef233c;

        font-size: 9px;
    }

    .fk-menu-item-link:hover {
        color: #d90429;

        border-color: rgba(239,35,60,.22);

        background: #fff5f6;

        box-shadow:
            0 5px 13px rgba(15,23,42,.055);

        transform: translateY(-1px);
    }


    /* =====================================================
       EMPTY
    ===================================================== */

    .fk-items-empty {
        display: none;

        margin-top: 8px;

        padding: 25px 15px;

        border: 1px dashed #e0e3e7;
        border-radius: 14px;

        color: #7c8796;
        background: #fafafa;

        text-align: center;

        font-size: 11px;
        font-weight: 700;
    }

    .fk-items-empty i {
        display: block;

        margin-bottom: 7px;

        color: #ef233c;

        font-size: 18px;
    }


    /* =====================================================
       BOTTOM
    ===================================================== */

    .fk-catalogue-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 15px;

        margin-top: 13px;
        padding-top: 12px;

        border-top: 1px solid #f0f1f3;
    }

    .fk-catalogue-bottom span {
        color: #8a94a3;

        font-size: 9.5px;
        font-weight: 650;
    }

    .fk-catalogue-bottom span i {
        margin-right: 5px;
        color: #ef233c;
    }

    .fk-view-food-btn {
        display: inline-flex;
        align-items: center;
        gap: 6px;

        color: #d90429;

        text-decoration: none;

        font-size: 10px;
        font-weight: 900;
    }

    .fk-view-food-btn:hover {
        color: #111827;
    }


    /* =====================================================
       TABLET
    ===================================================== */

    @media(max-width:780px) {

        .fk-catalogue-compact {
            padding: 21px;
            border-radius: 20px;
        }

        .fk-catalogue-compact-head {
            align-items: flex-start;
            flex-direction: column;
            gap: 12px;
        }

        .fk-catalogue-count {
            padding: 8px 10px;
        }

        .fk-all-items-grid {
            max-height: 200px;
        }

    }


    /* =====================================================
       MOBILE
    ===================================================== */

    @media(max-width:520px) {

        #all-menu-items {
            margin-top: 27px;
            margin-bottom: 30px;
        }

        .fk-catalogue-compact {
            padding: 16px 13px;

            border-radius: 17px;
        }

        .fk-catalogue-heading h2 {
            font-size: 23px;
        }

        .fk-catalogue-heading p {
            font-size: 10.5px;
        }

        .fk-catalogue-toolbar {
            margin-bottom: 13px;
        }

        .fk-catalogue-search {
            min-height: 42px;
        }

        .fk-catalogue-search input {
            font-size: 10.5px;
        }

        .fk-all-items-grid {
            gap: 6px;

            max-height: 185px;
        }

        .fk-menu-item-link {
            min-height: 31px;

            padding: 6px 9px;

            border-radius: 9px;

            font-size: 9.5px;
        }

        .fk-catalogue-bottom {
            align-items: flex-start;
            flex-direction: column;
            gap: 6px;
        }

    }
    
