body { font-family: Arial, sans-serif; margin: 20px; }
.controls { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.grid-wrap { overflow:auto; border:1px solid #ccc; }
table { border-collapse: collapse; font-size: 12px; }
th, td { border:1px solid #ddd; padding:4px; text-align:center; }
.employees-actions { margin-bottom: 8px; }
.employees-actions { display: flex; align-items: center; gap: 10px; }
#employeesStatus { font-size: 12px; color: #555; }
#employeesStatus.dirty { color: #ef6c00; }
#employeesStatus.saved { color: #2e7d32; }
#employeesTable input[type="text"],
#employeesTable input[type="number"],
#employeesTable input[type="date"] { width: 100%; box-sizing: border-box; }
#employeesTable th { white-space: nowrap; }
#employeesTable { min-width: 1450px; }
#employeesTable thead th.sticky { position: sticky; top: 0; z-index: 2; background: #f5f5f5; }
#employeesTable tbody tr:nth-child(odd) { background: #fafafa; }
#employeesTable .index-col { width: 36px; min-width: 36px; }
#employeesTable .col-station { min-width: 120px; }
#employeesTable .col-name { min-width: 140px; }
#employeesTable .col-short_code { min-width: 78px; }
#employeesTable .col-birth_date { min-width: 125px; }
#employeesTable .col-meta_json { min-width: 180px; }
#employeesTable td.col-type-checkbox,
#employeesTable th.col-type-checkbox { width: 74px; min-width: 74px; text-align: center; }
#employeesTable td.col-type-checkbox input[type="checkbox"] { transform: scale(1.08); }
#employeesTable input:focus { outline: 2px solid #1976d2; outline-offset: -1px; }
.sort-btn { margin-left: 6px; font-size: 11px; padding: 2px 6px; cursor: pointer; }
#plan .editable-balance input { width: 4.2rem; text-align: right; box-sizing: border-box; }
.weekend { background: #ffeb3b; }
.late { background: #f44336; color: #fff; }
.emergency { outline: 2px solid #b71c1c; background: #ffccbc; }
.warnung { color: #ef6c00; }
.notfall { color: #c62828; font-weight: bold; }

/* Ampel: max 8 Zeilen, bei Klick alle */
#rules.rules-collapsed li:nth-child(n+9) { display: none; }
.rules-wrap .toggle-more { margin-top: 6px; }

/* Audit-Log: max 8 Zeilen (nach Header), bei Klick alle */
#audit.audit-collapsed tr:nth-child(n+10) { display: none; }
.audit-wrap .toggle-more { margin-top: 6px; }
