.staff-portal #resolutions-admin > .rd-actions{margin:0 0 16px;align-items:center}
.staff-portal #resolutions-admin [data-resolution-load]{display:none}
.staff-portal #resolutions-admin.resolution-editing > .rd-actions{display:none}
.staff-portal #resolutions-admin [role=status]:empty{display:none}
.staff-portal #resolutions-admin .rd-list-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0}
.staff-portal #resolutions-admin .rd-list-filters label{gap:6px;min-width:110px}
.staff-portal #resolutions-admin .rd-list-filters .rd-grow{flex:1;min-width:180px}
.staff-portal #resolutions-admin .rd-meeting-table{font-size:14px;background:white}
.staff-portal #resolutions-admin .rd-meeting-table th,.staff-portal #resolutions-admin .rd-meeting-table td{padding:12px 14px;vertical-align:middle}
.staff-portal #resolutions-admin .rd-meeting-link{text-align:left;line-height:1.5;padding:4px 0}
.staff-portal #resolutions-admin .rd-meeting-table tbody tr:hover{background:#f5f4fc}
.staff-portal #resolutions-admin .rd-meeting-detail{background:white;border:1px solid #dce1ed;padding:20px;border-radius:8px}
.staff-portal #resolutions-admin .rd-meeting-detail h3{font-size:21px;margin:16px 0 8px}
.staff-portal #resolutions-admin .rd-editor{background:white;margin-top:12px;padding:20px;border-radius:8px}
.staff-portal #resolutions-admin .rd-editor > .rd-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.staff-portal #resolutions-admin .rd-editor .rd-grow{min-width:0}
.staff-portal #resolutions-admin input,.staff-portal #resolutions-admin select,.staff-portal #resolutions-admin textarea{max-width:100%;box-sizing:border-box}
.staff-portal #resolutions-admin [data-editor] > form > .rd-actions{position:sticky;bottom:0;background:white;border-top:1px solid #dce1ed;padding:12px 0;margin-bottom:0;z-index:2}
.staff-portal #resolutions-admin .rd-delete-help{font-size:12px;color:#657087}
.staff-portal #resolutions-admin dialog::backdrop{background:#20213c80}
.staff-portal #resolutions-admin dialog{max-width:100%;box-sizing:border-box}
@media(max-width:700px){
.staff-portal #resolutions-admin .rd-editor > .rd-fields{grid-template-columns:1fr}
.staff-portal #resolutions-admin .rd-list-filters label{flex:1 1 40%;min-width:0}
.staff-portal #resolutions-admin .rd-list-filters .rd-grow{flex-basis:100%}
.staff-portal #resolutions-admin .rd-editor,.staff-portal #resolutions-admin .rd-meeting-detail{padding:14px}
.staff-portal #resolutions-admin dialog{width:100vw;max-width:none;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:16px}
.staff-portal #resolutions-admin [data-editor] > form > .rd-actions{gap:8px}
.staff-portal #resolutions-admin [data-editor] > form > .rd-actions button{flex:1 1 40%}
}
.staff-portal #roster-admin [data-roster-load]{display:none}
.staff-portal #roster-admin .roster-toolbar{gap:12px;align-items:end}
.staff-portal #roster-admin .roster-toolbar label:first-child{flex:1;min-width:180px}
.staff-portal #roster-admin .roster-toolbar a{padding:10px 14px;text-decoration:none;border:1px solid #c8cbe0;border-radius:6px;background:white;white-space:nowrap}
.staff-portal #roster-admin td,.staff-portal #roster-admin th{padding:12px;font-size:14px}
.staff-portal #roster-admin .portal-roster-dialog{width:min(1000px,calc(100vw - 40px));max-width:1000px;max-height:90dvh;padding:0;border:1px solid #dce1ed;border-radius:10px;color:#252737;background:white}
.staff-portal #roster-admin .portal-roster-dialog::backdrop{background:#20213c80}
.staff-portal #roster-admin .portal-roster-dialog .roster-editor{margin:0;border:0;background:white}
.staff-portal #roster-admin .portal-roster-dialog .roster-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.staff-portal #roster-admin .portal-roster-dialog input,.staff-portal #roster-admin .portal-roster-dialog select{width:100%;box-sizing:border-box;min-width:0}
.staff-portal #roster-admin .portal-roster-dialog input[type=checkbox]{width:20px}
.staff-portal #roster-admin .portal-roster-dialog .roster-actions{position:sticky;bottom:0;padding:12px 0;background:white;border-top:1px solid #dce1ed}
.staff-portal:has(.portal-roster-dialog[open]){overflow:hidden}
@media(max-width:700px){.staff-portal #roster-admin .portal-roster-dialog{width:100%;max-width:none;height:100dvh;max-height:100dvh;border-radius:0;margin:0}.staff-portal #roster-admin .portal-roster-dialog .roster-fields{grid-template-columns:1fr}.staff-portal #roster-admin .roster-toolbar label{flex:1 1 40%}.staff-portal #roster-admin .roster-toolbar label:first-child{flex-basis:100%}}
