.filters { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; margin: 22px 0; padding: 18px; border: 1px solid #e5e5e5; border-radius: 6px; background: #fff; }
.filters label { display: grid; gap: 6px; font-size: .85rem; }
.filters input, .filters select { min-height: 42px; padding: 9px 12px; border: 1px solid #ddd; border-radius: 4px; background: #fff; font: inherit; }
.page-heading { margin-bottom: 24px; }
.pagination { margin-top: 24px; }
.modal-overlay { display: none; position: fixed; inset: 0; z-index: 9999; align-items: center; justify-content: center; background: rgba(0, 0, 0, .4); }
.modal-overlay.open { display: flex; }
.custom-modal { width: 320px; padding: 16px; border-radius: 6px; background: #fff; box-shadow: 0 6px 18px rgba(0, 0, 0, .2); }
.custom-modal h4 { margin: 0 0 8px; }
.custom-modal .fields { display: flex; gap: 8px; margin-bottom: 12px; }
.custom-modal input[type="date"] { flex: 1; padding: 6px; }
.custom-modal .actions { text-align: right; }
.custom-modal .actions button { margin-left: 8px; }
