/* Card que “acopla” filtro + tabela */
.panel-card {
    margin-top: 14px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: var(--radius);
    background: rgba(255, 255, 255, .04);
    overflow: hidden;
}

.panel-card__head {
    padding: 14px 14px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, .10);
    background: rgba(255, 255, 255, .03);
}

.panel-card__title {
    margin: 0;
}

.panel-card__subtitle {
    margin: 4px 0 0;
}

/* ===== FILTRO: grid responsivo sem apertar ===== */

.panel-filter {
    padding: 14px 16px 16px;
}

.panel-filter__grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    align-items: end;
}

.panel-filter .select {
    width: 100%;
    min-width: 0;
}

/* ações em linha própria */
.panel-filter__actions {
    margin-top: 12px;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    flex-wrap: wrap;
}

/* tabela dentro do painel */
.table-wrap--panel {
    margin-top: 2%;
    border-radius: 0;
    border: 0;
    background: transparent;
}

/* pager dentro do painel */
.pager--panel {
    padding: 12px 14px 14px;
    margin-top: 0;
    border-top: 1px solid rgba(255, 255, 255, .10);
    background: rgba(255, 255, 255, .02);
}

/* quebras previsíveis */
@media (max-width: 1200px) {
    .panel-filter__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 860px) {
    .panel-filter__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .panel-filter__grid {
        grid-template-columns: 1fr;
    }

    .panel-filter__actions {
        justify-content: stretch;
    }

    .panel-filter__actions .btn {
        width: 100%;
    }
}