.attendance-editor{width:min(980px,calc(100vw - 32px));max-height:90dvh;padding:0;border:1px solid #d7e1dc;border-radius:20px;color:#182a24;background:#fffefa;box-shadow:0 24px 80px #102c2440}
.attendance-editor::backdrop{background:#102c2466}
.attendance-editor-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 26px;border-bottom:1px solid #d7e1dc}
.attendance-editor-header h2{margin:0;font-size:1.5rem}.attendance-editor-header .eyebrow{margin:0 0 6px}
.attendance-editor-body{padding:16px 26px}.attendance-editor-footer{position:sticky;bottom:0;display:flex;gap:16px;align-items:center;justify-content:space-between;background:#fffefa;padding:16px 26px;border-top:1px solid #d7e1dc}.attendance-editor-footer p{margin:0}
.attendance-employee-switch{display:flex;flex-wrap:wrap;gap:6px;background:#edf2ef;padding:6px;border-radius:12px;margin:16px 0}.attendance-employee-switch button{background:transparent;color:#456258;border:0;padding:10px 22px;border-radius:8px}.attendance-employee-switch button[aria-pressed=true]{background:#153d32;color:white}
.attendance-grid-scroll{overflow-x:auto}.attendance-edit-grid{display:grid;grid-template-columns:repeat(7,minmax(85px,1fr));min-width:630px;gap:6px}.attendance-edit-weekday{text-align:center;padding:10px;color:#65756e;font-weight:600}.attendance-edit-weekday:first-child{color:#a06b52}
.attendance-edit-day{display:flex;flex-direction:column;align-items:stretch;gap:7px;min-height:95px;border:1px solid #d9e2dc;border-radius:8px;padding:9px;font-weight:400;background:#fff}.attendance-edit-day>span:first-child{font-weight:650;font-size:.85rem;color:#64756b}.attendance-edit-day.present{background:#eff7f1;border-color:#9fbea8}.attendance-edit-day input[type=number]{height:36px;padding:4px 8px;font-size:1rem;width:100%;min-width:0;border-radius:5px}.attendance-edit-day small{font-size:.75rem;color:#718478}.attendance-check{display:flex;align-items:center;gap:6px;font-size:.85rem}.attendance-check input{width:20px;height:20px;accent-color:#1b654a}
.attendance-editor-totals{display:flex;flex-wrap:wrap;gap:12px 24px;padding:18px 0;border-bottom:1px solid #d9e2dc}.attendance-difference{color:#9a5725;font-weight:650}.attendance-editor table small{display:block;color:#718478;font-weight:400}.payroll-table input:disabled,.payroll-table select:disabled{background:#eef3ef;color:#344e42;opacity:1}.attendance-payroll-tools{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}
.attendance-grid-hint{display:none}
@media(max-width:600px){.attendance-editor-header,.attendance-editor-body,.attendance-editor-footer{padding:16px}.attendance-editor-header h2{font-size:1.2rem}.attendance-editor-footer{align-items:flex-start;flex-direction:column}.attendance-editor-footer button{width:100%}}
@media(max-width:600px){.attendance-grid-hint{display:block;color:#718478;font-size:.8rem}}
