.staff-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; padding-block: 1rem; border-bottom: 1px solid; }
.staff-toolbar form { display: flex; gap: .5rem; }
.staff-current-account { flex-basis: 100%; min-width: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: .5rem; }
.staff-current-account strong { min-width: 0; overflow-wrap: anywhere; }
.staff-form { display: grid; gap: .75rem; max-width: 36rem; margin-block: 1.5rem; }
.staff-courts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 1rem; }
.staff-court { border: 1px solid; padding: 1rem; }
.staff-intervals { list-style: none; padding: 0; }
.staff-intervals li { padding: .75rem; margin-block: .5rem; border: 1px solid; overflow-wrap: anywhere; }
.staff-occupied { background: #D4FF00; font-weight: bold; }
.staff-free { background: #fff; }
.staff-key { display: block; overflow-wrap: anywhere; font-size: 1.1rem; }
.staff-area dt { font-weight: bold; }
.staff-area dd { overflow-wrap: anywhere; }
.staff-area button, .staff-area input, .staff-area select { min-height: 44px; }
.staff-area main { padding-block: 1.5rem; }
.staff-report-table { overflow-x: auto; margin-block: 1.5rem; }
.staff-report-table th, .staff-report-table td { white-space: nowrap; text-align: start; }
