/* ==========================================================================
   Menu Item Thumbnails
   ========================================================================== */

/* Wrapper: thumbnail + content side by side */
.custom-menu-item-with-thumb {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

/* Thumbnail image */
.custom-menu-thumb {
    width: 56px;
    height: 56px;
    min-width: 56px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid rgba(0,0,0,.08);
    transition: opacity .2s;
}

.custom-menu-thumb-link:hover .custom-menu-thumb,
.custom-menu-thumb-link:active .custom-menu-thumb {
    opacity: .8;
}

/* Content fills remaining space */
.custom-menu-item-content {
    flex: 1;
    min-width: 0;
}

/* Keep the dotted line + price layout working inside the new wrapper */
.custom-menu-item-content .custom-menu-item-details {
    display: flex;
    justify-content: space-between;
    position: relative;
}

/* Tap hint on mobile — subtle expand icon overlay */
.custom-menu-thumb-link {
    position: relative;
    display: block;
    flex-shrink: 0;
}

.custom-menu-thumb-link::after {
    content: '\f065';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    font-size: 10px;
    color: #fff;
    background: rgba(0,0,0,.45);
    border-radius: 3px;
    padding: 2px 4px;
    position: absolute;
    bottom: 3px;
    right: 3px;
    opacity: 0;
    transition: opacity .2s;
    pointer-events: none;
}

.custom-menu-thumb-link:hover::after,
.custom-menu-thumb-link:focus::after {
    opacity: 1;
}

/* Always show expand hint on touch devices */
@media (hover: none) and (pointer: coarse) {
    .custom-menu-thumb-link::after {
        opacity: 1;
    }
}

/* Slightly larger thumbnails on tablet+ */
@media (min-width: 768px) {
    .custom-menu-thumb {
        width: 64px;
        height: 64px;
        min-width: 64px;
    }

    .custom-menu-item-with-thumb {
        gap: 16px;
    }
}
