/**
 * Mobile: grid compacto (sem padding trapezoidal) + scroll vertical/horizontal.
 */
@media (max-width: 767.98px) {
    .cadeiras_novo:not(.cadeiras_cart) {
        overflow: visible;
    }

    .cadeiras_novo:not(.cadeiras_cart) > .row.no-gutters {
        position: relative;
        display: flex;
        flex-wrap: nowrap;
        align-items: flex-start;
        overflow-y: auto;
        overflow-x: hidden;
        max-height: min(58vh, 520px);
        -webkit-overflow-scrolling: touch;
        scroll-padding-block: 8px;
    }

    .cadeiras_novo:not(.cadeiras_cart) .col-fileiras {
        position: sticky;
        left: 0;
        z-index: 3;
        align-self: flex-start;
        flex: 0 0 36px;
        max-width: 36px;
        min-width: 36px;
        background: var(--fileiras-bg, #fff);
    }

    .cadeiras_novo:not(.cadeiras_cart) .col-fileiras + div {
        margin-left: 0 !important;
        flex: 1 1 auto;
        min-width: 0;
        max-width: calc(100% - 36px);
    }

    .cadeiras_novo:not(.cadeiras_cart) .seats {
        white-space: normal;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        scroll-padding-inline: 8px;
        padding-bottom: 6px;
    }

    .cadeiras_novo:not(.cadeiras_cart) .seat-row.has-seats {
        white-space: nowrap;
        display: block;
    }

    /* Padding trapezoidal — oculto no mobile */
    .cadeiras_novo:not(.cadeiras_cart) .seats .empty {
        display: none !important;
        width: 0 !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .cadeiras_novo:not(.cadeiras_cart) .seat,
    .cadeiras_novo:not(.cadeiras_cart) .place {
        width: 34px;
        height: 30px;
        font-size: 11px;
        line-height: 28px;
    }

    .cadeiras_novo:not(.cadeiras_cart) .seat-row {
        height: auto;
        min-height: 34px;
    }

    .cadeiras_novo:not(.cadeiras_cart) .seat-row.has-seats {
        padding-top: 4px;
        padding-bottom: 2px;
    }

    .cadeiras_novo:not(.cadeiras_cart) .col-fileiras .seat-row {
        line-height: 34px;
        min-height: 34px;
    }

    .cadeiras_novo:not(.cadeiras_cart) .col-fileiras .seat-row strong {
        padding-top: 4px;
        font-size: 11px;
    }

    .cadeiras_novo:not(.cadeiras_cart) .block.campo {
        margin-top: 8px;
    }
}
