.radio-beheer { max-width:950px; }
.radio-beheer label { display:block; margin:12px 0; }
.radio-beheer input:not([type=checkbox]):not([type=hidden]),.radio-beheer select { display:block; width:100%; max-width:600px; box-sizing:border-box; padding:10px; min-height:42px; font:inherit; }
.radio-beheer .radio-keuze { display:flex; align-items:center; gap:9px; min-height:40px; margin:4px 0; }
.radio-beheer .radio-keuze input[type=checkbox] { width:18px; height:18px; flex:0 0 18px; margin:0; }
.radio-beheer details { margin:12px 0; border:1px solid #a8bbc8; border-radius:6px; padding:12px; background:#fff; }
.radio-beheer summary { cursor:pointer; font-weight:600; min-height:32px; }
.radio-beheer button { margin:8px 8px 8px 0; }
.radio-beheer .radio-herladen { font-size:14px; padding:6px 12px; }
.radio-selectierij { display:grid; grid-template-columns:minmax(120px,1fr) 150px 150px; gap:8px; align-items:center; border-bottom:1px solid #ced8df; padding:4px; }
.radio-keuzeteller { font-weight:600; }
.radio-incident { padding:12px; margin:10px 0; border:1px solid #bbcbd5; background:#fff; }
@media(max-width:600px) { .radio-selectierij { grid-template-columns:1fr 1fr; }.radio-selectierij strong{grid-column:1/-1;} }
.radio-beheer:has(.radio-zendertabel) { max-width:none; }
.radio-tabel-scroll { max-width:100%; overflow-x:auto; margin:16px 0; border:1px solid #a8bbc8; border-radius:6px; }
.radio-zendertabel { width:100%; min-width:720px; border-collapse:collapse; background:#fff; font-size:14px; }
.radio-zendertabel th,.radio-zendertabel td { padding:10px 12px; text-align:left; vertical-align:top; border-bottom:1px solid #ced8df; }
.radio-zendertabel thead th { background:#e5edf3; color:#23465e; }
.radio-zendertabel tbody tr[data-station-id]:hover { background:#f0f5f8; }
.radio-zendertabel .radio-streamadres { min-width:180px; max-width:300px; overflow-wrap:anywhere; }
.radio-zendertabel button { white-space:nowrap; margin:0; }
.radio-zendertabel details { max-width:900px; }
.radio-zendertabel [hidden] { display:none; }
.radio-zendertabel td { min-width:130px; }
.radio-zendertabel td:first-child { min-width:40px; width:40px; text-align:center; }
.radio-zendertabel td:nth-child(6) { min-width:100px; }
.radio-zendertabel label { margin:0; }
.radio-zendertabel .radio-keuze { font-size:13px; min-height:28px; }
.radio-cel-keuzes { max-height:110px; overflow-y:auto; min-width:160px; margin-top:6px; }
.radio-zendertabel input:not([type=checkbox]):not([type=hidden]) { min-width:150px; padding:7px; }
.radio-zendertabel [data-row-status] { font-size:12px; }

.radio-zendertabel thead th[aria-sort] { background:#cbdde9; box-shadow:inset 0 -3px #325f82; }
.radio-zendertabel thead button { background:transparent; border:0; border-radius:0; color:inherit; font-weight:700; padding:4px 0; min-height:36px; }
.radio-beheer .radio-keuze[hidden] { display:none; }

/* Compacte filters: naam/status en taal/nationaliteit elk op één regel. */
.radio-overzichtfilters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 16px;max-width:820px;align-items:center}
body .radio-beheer .radio-overzichtfilters>label{margin:0;min-width:0}
body .radio-beheer .radio-overzichtfilters :is(input,select){margin-block:0;max-width:100%;width:100%}
body .radio-beheer .radio-zendertabel :is(th,td){vertical-align:middle}
body .radio-beheer .radio-zendertabel th:last-child{text-align:center}
body .radio-beheer .radio-zendertabel label{margin:0}
body .radio-beheer .radio-zendertabel label>:is(input,select){margin-block:0}
body .radio-beheer .radio-zendertabel [data-row-status]:empty{display:none}
body .radio-beheer .radio-keuze{align-items:center}
body .radio-beheer input[type=checkbox]{margin-block:0!important;vertical-align:middle;align-self:center}
body .radio-beheer .ja-nee-keuze{align-items:center;vertical-align:middle}
body .radio-beheer .radio-keuze>span{line-height:1.4}

body .radio-beheer .radio-zendertabel label>input:not([type=checkbox]):not([type=radio]),body .radio-beheer .radio-overzichtfilters label>input:not([type=checkbox]):not([type=radio]){margin-block:0}
body .radio-beheer .radio-zendertabel form[data-inline-station]{display:flex;flex-direction:column;align-items:center;margin:0}
body .radio-beheer .radio-zendertabel form[data-inline-station]>button{margin:0}

.radio-verwijderdialoog { max-width:min(440px,calc(100vw - 48px)); border:1px solid #333; border-radius:12px; padding:24px; background:#fff; color:#111; box-shadow:0 12px 40px #0006; }
.radio-verwijderdialoog::backdrop { background:#0006; }

.radio-zendertabel .storing-open, .radio-zendertabel .storing-open td { background:#fff; color:#111; }
.radio-icoonknop { width:38px; height:38px; padding:7px!important; display:inline-flex; align-items:center; justify-content:center; vertical-align:middle; }
.radio-icoonknop + .radio-icoonknop { margin-left:6px; }
.radio-icoonknop svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linejoin:round; stroke-linecap:round; }
.radio-icoonknop:disabled { opacity:.4; cursor:default; box-shadow:none; }
.radio-zendertabel [data-row-status][role=alert] { color:#9b1515; background:#fff1ef; border:1px solid #9b1515; padding:8px; }

.radio-zendertabel .storing-hersteld td { background:#f0f0f0; }

.radio-selectie-acties{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:16px}
body .radio-beheer [hidden]{display:none!important}
.radio-selectie-acties>button{margin:0!important;flex:0 1 auto}
.radio-zender-acties{display:flex;gap:12px;align-items:stretch;margin-top:16px}
body .radio-beheer .radio-zender-acties>button{flex:1 1 0;min-width:0;max-width:none;min-height:44px;height:auto;margin:0!important;white-space:normal;overflow-wrap:anywhere;display:flex;align-items:center;justify-content:center;text-align:center}
.radio-zender-acties + [role=status]:empty{display:none}
[data-meting] small{display:block;margin:6px 0}
body .radio-verwijderdialoog>button{min-width:110px;min-height:44px;padding:8px 16px;margin:8px;font:inherit}
