.record-grid-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 21px; border-bottom:1px solid var(--line); background:var(--card); font-size:12px; }
.record-grid-status { color:var(--ink-soft); line-height:1.5; }
.record-grid-pagination { display:flex; align-items:center; justify-content:flex-end; gap:10px; padding:12px 21px; border-top:1px solid var(--line); font-size:12px; color:var(--ink-soft); }
.record-grid-pagination>span { margin-right:auto; }
.record-grid-reset, .record-grid-sort { border:1px solid var(--line); border-radius:6px; background:var(--paper); color:var(--ink); min-height:32px; padding:5px 10px; font:inherit; cursor:pointer; }
.record-grid-reset { white-space:nowrap; }
.record-grid-reset:hover:not(:disabled), .record-grid-sort:hover:not(:disabled) { background:var(--surface-hover); border-color:var(--green); }
.record-grid th { vertical-align:top; white-space:normal; }
.record-grid-controls { display:flex; align-items:center; gap:6px; flex-wrap:wrap; min-width:140px; margin-top:8px; }
.record-grid-sort { min-width:32px; flex:none; font-size:17px; line-height:1; }
.record-grid-field { display:flex; flex-direction:column; gap:3px; }
.record-grid-filter-label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.record-grid-date-label { position:static; width:auto; height:auto; overflow:visible; clip:auto; white-space:normal; font-size:11px; font-weight:400; }
.record-grid-filter { min-width:90px; width:140px; max-width:100%; min-height:32px; border:1px solid var(--line); border-radius:6px; background:var(--paper); color:var(--ink); padding:5px 8px; font:inherit; font-weight:400; }
.record-grid-filter[type=datetime-local] { width:215px; }
.record-grid-filter::placeholder { color:var(--text-subtle); opacity:1; }
.record-grid-filter:disabled, .record-grid-sort:disabled { opacity:.5; cursor:not-allowed; }
.record-grid-filter[aria-invalid=true] { border-color:var(--red); }
.record-grid th[aria-sort=ascending], .record-grid th[aria-sort=descending] { color:var(--green); }
.record-grid-empty td { padding:24px; text-align:center; color:var(--ink-soft); }
.record-grid tbody tr[hidden] { display:none; }
.record-grid[aria-busy=true] { opacity:.72; }
.record-grid-toolbar button:focus-visible, .record-grid-pagination button:focus-visible, .record-grid-controls button:focus-visible, .record-grid-controls input:focus-visible { outline:3px solid var(--sg-focus); outline-offset:3px; }
@media(max-width:640px) { .record-grid-toolbar { align-items:flex-start; flex-direction:column; padding-inline:14px; } .record-grid-controls { min-width:120px; } }
