.rapportage-bundeltegel {
    grid-column: 1 / -1;
    min-width: 0;
}

.rapportage-bundelkop,
.rapportage-bundelactiebalk,
.rapportage-bundelvoet,
.rapportage-bundeldownloads {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.rapportage-bundelkop h2,
.rapportage-bundelkop p,
.rapportage-bundelvoet p {
    margin: 0;
}

.rapportage-bundelkop p {
    margin-top: 4px;
}

.rapportage-bundelteller {
    flex: 0 0 auto;
    color: #0f5132;
    font-size: 13px;
}

.rapportage-bundelfilters {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) minmax(160px, .4fr) minmax(160px, .4fr);
    gap: 10px;
    margin-top: 16px;
}

.rapportage-bundelfilters label {
    display: grid;
    gap: 5px;
    color: #3f4944;
    font-size: 12px;
    font-weight: 600;
}

.rapportage-bundelfilters input,
.rapportage-bundelfilters select {
    width: 100%;
    min-height: 36px;
    padding: 6px 9px;
    border: 1px solid #69736e;
    border-radius: 2px;
    background: #fff;
    color: #1f2421;
    font: inherit;
    font-size: 14px;
}

.rapportage-bundelfilters input:focus-visible,
.rapportage-bundelfilters select:focus-visible,
.rapportage-bundelactiebalk button:focus-visible,
.rapportage-bundelbron:focus-within {
    outline: 2px solid #0f6cbd;
    outline-offset: 1px;
}

.rapportage-bundelactiebalk {
    justify-content: flex-start;
    margin-top: 12px;
    padding: 8px 0;
    border-bottom: 1px solid #d5dad7;
}

.rapportage-bundelactiebalk button {
    min-height: 34px;
    padding: 5px 10px;
    border: 1px solid #69736e;
    border-radius: 2px;
    background: #fff;
    color: #1f2421;
}

.rapportage-bundelactiebalk span {
    margin-left: auto;
    color: #59635e;
    font-size: 12px;
}

.rapportage-bundelbronnen {
    max-height: 380px;
    overflow: auto;
    border-bottom: 1px solid #d5dad7;
}

.rapportage-bundelbron {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: center;
    min-height: 48px;
    padding: 5px 10px;
    border-bottom: 1px solid #e2e5e3;
    background: #fff;
    cursor: pointer;
}

.rapportage-bundelbron:hover,
.rapportage-bundelbron.is-geselecteerd {
    background: #edf6f1;
}

.rapportage-bundelbron input {
    width: 18px;
    height: 18px;
    accent-color: var(--primair);
}

.rapportage-bundelbron-tekst {
    display: grid;
    min-width: 0;
    gap: 4px;
}

.rapportage-bundelbron-tekst strong,
.rapportage-bundelbron-tekst small {
    overflow-wrap: anywhere;
}

.rapportage-bundelbron-meta {
    display: grid;
    grid-template-columns: minmax(100px, .5fr) minmax(120px, 1fr) minmax(100px, .4fr);
    align-items: center;
    gap: 8px;
}

.rapportage-bundelbron-meta .is-status {
    color: #0f5132;
    font-weight: 600;
}

.rapportage-bundelbron-meta .is-bedrag {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.rapportage-bundelbron-tekst small,
.rapportage-bundelvoet p {
    color: #59635e;
    font-size: 12px;
}

.rapportage-bundelleeg {
    margin: 0;
    padding: 22px 10px;
    color: #59635e;
}

.rapportage-bundelvoet {
    align-items: flex-start;
    padding-top: 12px;
}

.rapportage-bundelvoorlopig {
    display: block;
    color: #0f5132;
    font-size: 14px;
    font-variant-numeric: tabular-nums;
}

@media (max-width: 600px) {
    .rapportage-bundelkop,
    .rapportage-bundelactiebalk,
    .rapportage-bundelvoet,
    .rapportage-bundeldownloads {
        align-items: stretch;
        flex-direction: column;
    }

    .rapportage-bundelfilters,
    .rapportage-bundelbron-meta {
        grid-template-columns: 1fr;
    }

    .rapportage-bundelfilters input,
    .rapportage-bundelfilters select,
    .rapportage-bundelactiebalk button {
        min-height: 44px;
        font-size: 16px;
    }

    .rapportage-bundeldownloads fluent-button,
    .rapportage-bundeldownloads fluent-button::part(control) {
        min-height: 44px;
    }

    .rapportage-bundelactiebalk span {
        margin-left: 0;
    }

    .rapportage-bundelbronnen {
        max-height: 50vh;
    }

    .rapportage-bundelbron {
        min-height: 56px;
        padding: 7px 8px;
    }

    .rapportage-bundelbron-meta {
        gap: 2px;
    }

    .rapportage-bundelbron-meta .is-bedrag {
        text-align: left;
    }
}
