.annual-date-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:16px 0}.annual-date-toolbar label{min-width:200px}.annual-date-toolbar .hint{flex:1;min-width:220px;padding-bottom:10px}#actualCheckpointDialog{max-width:760px}#actualCheckpointInputs fieldset{margin:12px 0;border:1px solid #d9e4df;border-radius:8px}
.service-auto-panel{margin-top:24px;padding-top:20px;border-top:1px solid #d9e4df}.service-auto-panel h3{margin:0 0 16px}.service-auto-panel form{align-items:end}.service-auto-panel .table-wrap{max-height:480px;margin-top:16px;overflow:auto}.service-auto-panel th{position:sticky;top:0;background:#eef4f1}.saved-client-goals{white-space:normal;line-height:1.6;margin:12px 0 0;padding:12px;background:#eef5f0;border-radius:8px}.revision-list{max-height:450px;overflow:auto}.revision-list article{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #dce5e0}.revision-list span{flex:1}.service-auto-panel .mini{margin:2px}#versionDialog{max-width:800px}#versionManager{font-size:12px}
.timetable-table .fixed-lunch td{text-align:center;vertical-align:middle;background:#f6f7fa;height:48px;font-weight:700;letter-spacing:8px}.timetable-table .fixed-merged{vertical-align:middle}.fixed-actual-time.different{color:#b54825;font-weight:700}.timetable-table .timetable-session span{white-space:normal}.timetable-table [data-fixed-row]>th{vertical-align:middle}
.goal-planning-panel{margin-top:24px;padding-top:20px;border-top:1px solid #d9e4df}.goal-planning-panel h3{margin:0 0 12px}.goal-plan-table{min-width:1030px}.goal-plan-table td{vertical-align:middle}.goal-plan-status{display:inline-block;max-width:140px;padding:6px 9px;border-radius:8px;background:#edf0f5;color:#505a6d;font-size:12px;line-height:1.5}.goal-plan-status.achieved,.goal-plan-status.on-track{background:#e3f3ea;color:#216547}.goal-plan-status.shortfall,.goal-plan-status.closed{background:#fff0e2;color:#a34c17}.goal-monthly-plans details{margin:10px 0;border:1px solid #dce3ee;border-radius:10px;padding:12px}.goal-monthly-plans summary{cursor:pointer;font-weight:600}.goal-monthly-plans .table-wrap{margin-top:12px}.goal-planning-panel .notice{line-height:1.7}
.timetable-session[draggable=true]{cursor:grab}.timetable-session[draggable=true]:active{cursor:grabbing}.timetable-session.dragging{opacity:.45}.timetable-table td.drop-ready{background:#e0f4eb!important;outline:3px solid #3c9878;outline-offset:-3px}.timetable-table td.drop-blocked{background:#fff0e9!important;outline:2px solid #d27751;outline-offset:-2px}.timetable-table.drag-active td[data-drop-day]{transition:background .1s}.timetable-table [data-drag-placeholder]{text-align:center;vertical-align:middle;min-height:65px}.timetable-drag-status{min-height:24px;margin-top:12px;line-height:1.6}#timetableMoveDialog{max-width:700px}.move-error{color:#a23d24!important;background:#fff0e9!important}
#saveTimetableMove:disabled{opacity:.45;cursor:not-allowed}
.monthly-editor-toolbar{grid-template-columns:180px minmax(260px,1fr)}.monthly-editor-actions{grid-column:1/-1;flex-wrap:wrap;justify-content:flex-start}.generated-confirmation,.monthly-record-card>.notice{display:block;margin:0;padding:12px 16px;font-size:12px}.monthly-record-card input[type=checkbox],#diaryGeneratorDialog input[type=checkbox]{width:auto;height:auto;margin-right:6px}#diaryGeneratorDialog{width:min(980px,94vw);max-width:980px}#diaryGeneratorRows{max-height:48vh;overflow:auto}#diaryGeneratorRows article>p,#diaryGeneratorRows article>label{margin:12px;display:block}#diaryGeneratorRows textarea{width:100%;box-sizing:border-box;font-size:13px;line-height:1.7}#diaryGeneratorRows header label{line-height:1.6}#diaryGeneratorContext{font-weight:700}#diaryGeneratorRows .empty{display:block}
#diaryGeneratorDialog .dialog-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #dce3ee;padding:12px 0;margin-top:12px;z-index:1}
.monthly-editor-toolbar{grid-template-columns:180px 190px minmax(260px,1fr)}#monthlyStatusSummary{line-height:1.7}.preview-actions{flex-wrap:wrap}@media(max-width:900px){.monthly-editor-toolbar{grid-template-columns:1fr}}
#batchDiaryDialog{width:min(860px,94vw);max-width:860px;max-height:calc(100vh - 40px);padding:0;overflow:hidden}#batchDiaryForm.batch-wizard-form{display:flex;flex-direction:column;max-height:calc(100vh - 40px);gap:0;padding:0}.batch-wizard-header{padding:22px 24px 12px;flex-shrink:0}.batch-wizard-header p{margin:8px 0 14px}.batch-step-labels{display:flex;gap:8px}.batch-step-labels span{flex:1;padding:9px 12px;border-radius:8px;background:#f1f3f8;color:#667085;font-size:13px}.batch-step-labels .current{background:#e7ecff;color:#3048a7;font-weight:700}.batch-wizard-body{min-height:0;overflow:auto;padding:0 24px 18px}.batch-wizard-body #batchDiarySummary{padding:12px;background:#f5f7fb;border-radius:8px;font-weight:600;line-height:1.65}.batch-wizard-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:14px 24px;border-top:1px solid #dce3ee;background:#fff;flex-shrink:0}#batchDiaryPeople{display:flex;flex-direction:column;gap:8px;margin-top:12px}#batchDiaryPeople article{padding:12px 14px;border:1px solid #dce3ee;border-radius:9px}#batchDiaryPeople .batch-person-name{display:flex;align-items:center;gap:8px;margin:0 0 8px}#batchDiaryPeople .batch-person-name span{margin-left:auto;color:#667085;font-size:12px}#batchDiaryDialog input[type=checkbox]{width:auto;height:auto;margin-right:5px}#batchDiaryDialog summary{cursor:pointer}#batchDiaryPeople details>summary{font-size:12px;color:#536584}#batchDiaryPeople textarea,#batchDiaryRows textarea{width:100%;font-size:13px;line-height:1.7}#batchDiaryPeople details>label,#batchDiaryRows details>label{display:block;margin-top:10px}.batch-preview-option{display:block;margin:12px 0}.batch-review-group{border:1px solid #dce3ee;border-radius:9px;margin:10px 0;padding:13px}.batch-review-group>summary span{display:block;margin:6px 0 0 18px;font-size:12px;color:#667085}.batch-review-row{border-top:1px solid #e4e8f0;margin-top:12px;padding-top:12px}.batch-review-row>label{font-weight:600}.batch-review-row>details{margin-top:8px}.batch-review-row p{font-size:12px;line-height:1.6}.batch-ready{padding:20px;text-align:center;color:#30674d}
