/** Mobile card rendering for operational dashboard tables. */
@media (max-width: 767px) {
    .rtb-view-bookings-table {
        border: 0;
    }

    .rtb-view-bookings-table thead {
        display: none;
    }

    .rtb-view-bookings-table,
    .rtb-view-bookings-table tbody,
    .rtb-view-bookings-table tr,
    .rtb-view-bookings-table td {
        display: block;
        width: 100%;
    }

    .rtb-view-bookings-table tr {
        margin-bottom: 1rem;
        padding: 1rem;
        border: 1px solid #ddd;
        border-radius: 12px;
        background: #fff;
    }

    .rtb-view-bookings-table td {
        display: flex;
        justify-content: space-between;
        gap: 1rem;
        padding: 0.5rem 0;
        border: none;
    }

    .rtb-view-bookings-table td::before {
        font-weight: 600;
        flex-shrink: 0;
    }

    .rtb-view-bookings-table-column-time::before { content: "Uhrzeit"; }
    .rtb-view-bookings-table-column-party::before { content: "Personen"; }
    .rtb-view-bookings-table-column-name::before { content: "Name"; }
    .rtb-view-bookings-table-column-email::before { content: "E-Mail"; }
    .rtb-view-bookings-table-column-phone::before { content: "Telefon"; }
    .rtb-view-bookings-table-column-status::before { content: "Status"; }
    .rtb-view-bookings-table-column-arrived::before { content: "Angekommen"; }
    .rtb-view-bookings-table-column-details::before { content: "Details"; }

    .pix-rtb-dashboard-filter-toolbar {
        display: grid;
        align-items: stretch;
    }
}

@media (max-width: 767px) {
    .rtb-view-bookings-table td {
        align-items: flex-start;
    }

    .rtb-view-bookings-table td::before {
        content: attr(data-label);
    }

    .rtb-view-bookings-table-column-status,
    .rtb-view-bookings-table-column-details {
        display: grid;
        gap: 0.5rem;
    }

    .rtb-view-bookings-table-column-status::before,
    .rtb-view-bookings-table-column-details::before {
        margin-bottom: 0.25rem;
    }
}


/** Explicit stacked renderer support. */
.pix-rtb-booking-row--stacked {
    display: none;
}

.pix-rtb-stacked-card {
    padding: 1rem;
}

.pix-rtb-stacked-card__header,
.pix-rtb-stacked-card__primary,
.pix-rtb-stacked-card__meta {
    display: grid;
    gap: 0.5rem;
}

.pix-rtb-stacked-card__primary {
    grid-template-columns: 1fr auto;
    align-items: center;
}

.pix-rtb-stacked-card__time {
    font-size: 1.125rem;
}

.pix-rtb-stacked-card__actions {
    display: grid;
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.pix-rtb-stacked-card__details {
    margin-top: 0.75rem;
}

@media (max-width: 767px) {
    .pix-rtb-booking-row--stacked {
        display: block;
    }

    .pix-rtb-booking-row--table {
        display: none !important;
    }

    .pix-rtb-booking-row--stacked .pix-rtb-stacked-card {
        display: block;
        margin-bottom: 1rem;
        border: 1px solid #ddd;
        border-radius: 12px;
        background: #fff;
    }
}


@media (min-width: 768px) and (max-width: 1024px) {
    .pix-rtb-booking-row--stacked {
        display: table-row;
    }

    .pix-rtb-booking-row--table {
        display: none !important;
    }

    .pix-rtb-booking-row--stacked .pix-rtb-stacked-card {
        display: block;
        margin-bottom: 1rem;
        border: 1px solid #ddd;
        border-radius: 12px;
        background: #fff;
    }

    .pix-rtb-stacked-card__actions .pix-rtb-dashboard-action-buttons,
    .pix-rtb-stacked-card__actions .pix-rtb-dashboard-contact-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.625rem;
    }

    .pix-rtb-stacked-card__actions .pix-rtb-dashboard-action-button,
    .pix-rtb-stacked-card__actions .pix-rtb-dashboard-contact-action {
        min-height: 2.75rem;
        border-radius: 12px;
        text-align: center;
    }

    .pix-rtb-stacked-card__actions .pix-rtb-status-select {
        display: none;
    }
}

/** Operational stacked dashboard refinements. */
@media (max-width: 1024px) {
    .pix-rtb-stacked-card__contact {
        display: grid;
        gap: 0.625rem;
    }

    .pix-rtb-stacked-card__message {
        margin-top: 0.75rem;
    }

    .pix-rtb-stacked-card__actions .pix-rtb-dashboard-action-buttons,
    .pix-rtb-stacked-card__contact .pix-rtb-dashboard-contact-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0.625rem;
    }

    .pix-rtb-stacked-card__actions .pix-rtb-dashboard-action-button,
    .pix-rtb-stacked-card__contact .pix-rtb-dashboard-contact-action,
    .pix-rtb-contact-reveal__toggle,
    .pix-rtb-dashboard-message-toggle {
        width: 100%;
        min-height: 2.75rem;
        border-radius: 12px;
        text-align: center;
    }
}
