/*
 * QueerFriends correction for The Events Calendar List View.
 *
 * Every selector is scoped to TEC's List View container. Single-event pages,
 * Month View, Day View, Community cards, and ordinary WordPress images are not
 * affected.
 */

/* Build a predictable two-column event row instead of allowing theme image
   rules to cover the event details. */
body .tribe-events-view--list .tribe-events-calendar-list__event {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 320px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 30px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
}

body .tribe-events-view--list .tribe-events-calendar-list__event-featured-image-wrapper {
    position: relative !important;
    inset: auto !important;
    z-index: 1 !important;
    display: block !important;
    float: none !important;
    grid-column: 1 !important;
    width: 320px !important;
    min-width: 0 !important;
    max-width: 320px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body .tribe-events-view--list .tribe-events-calendar-list__event-featured-image-link {
    position: relative !important;
    inset: auto !important;
    z-index: 1 !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 214px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    transform: none !important;
}

body .tribe-events-view--list img.tribe-events-calendar-list__event-featured-image {
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    display: block !important;
    float: none !important;
    width: 320px !important;
    min-width: 0 !important;
    max-width: 320px !important;
    height: 214px !important;
    min-height: 0 !important;
    max-height: 214px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
}

body .tribe-events-view--list .tribe-events-calendar-list__event-details {
    position: relative !important;
    inset: auto !important;
    z-index: 2 !important;
    display: block !important;
    float: none !important;
    grid-column: 2 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
}

@media (max-width: 900px) {
    body .tribe-events-view--list .tribe-events-calendar-list__event {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 22px !important;
    }

    body .tribe-events-view--list .tribe-events-calendar-list__event-featured-image-wrapper,
    body .tribe-events-view--list .tribe-events-calendar-list__event-details {
        grid-column: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body .tribe-events-view--list .tribe-events-calendar-list__event-featured-image-link {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
    }

    body .tribe-events-view--list img.tribe-events-calendar-list__event-featured-image {
        width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        max-height: none !important;
        aspect-ratio: 16 / 9 !important;
    }
}
