.hh-date-fields{display:grid!important;grid-template-columns:minmax(85px,1.5fr) minmax(42px,.65fr) minmax(65px,.85fr);gap:5px;min-width:0;align-items:center}.hh-date-fields>[data-hh-date-part]{width:100%;min-width:0!important;max-width:100%;min-height:42px!important;padding:8px 5px!important;font:inherit;box-sizing:border-box}.hh-date-fields>[data-hh-date-part=time]{grid-column:1/-1}.hh-date-fields select{padding-right:16px!important}[data-hh-date-original][hidden]{display:none!important}.hr-school-row{grid-template-columns:minmax(190px,1fr) minmax(190px,1fr) minmax(135px,1fr) minmax(120px,.7fr) auto!important;align-items:end!important}.hr-school-row label{min-width:0}.hr-school-row button{min-height:42px}.hr-school-times{border-top:1px solid #ddd;padding:12px 0;margin-bottom:12px}.hr-school-times .hr-toolbar{align-items:end}.hr-school-draft{font-size:13px;color:#4c5260}.hr-school-recovery{background:#fff7d6;border:1px solid #bca947;border-radius:10px;padding:10px;margin:10px 0}.hr-school-recovery button{margin:4px}.hr-year-summary{max-height:240px;overflow:auto}.hh-plan-batch .hh-date-fields{min-width:210px}@media(max-width:850px){.hr-school-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hr-school-row>label:nth-child(3){grid-column:1/-1}}@media(max-width:420px){.hr-school-row{grid-template-columns:1fr!important}.hr-school-row>label:nth-child(3){grid-column:auto}}
.hh-routines .hr-school-year-heading{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hh-routines .hr-dialog:has(form[data-form=year]){width:min(760px,95vw)}
.hh-routines .hr-dialog form[data-form=year]{gap:12px}
.hh-routines .hr-dialog form[data-form=year]>h3{margin:4px 0}
.hh-routines .hr-dialog form[data-form=year] .hh-date-fields{grid-template-columns:minmax(58px,.9fr) minmax(40px,.6fr) minmax(62px,.85fr)}
.hh-routines .hr-school-draft{margin:0;font-size:11px;line-height:1.4}
.hh-routines .hr-school-month{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid #ddd}
.hh-routines .hr-school-month>header button{display:flex;align-items:center;gap:7px;min-height:40px;padding:6px 8px;font-size:13px;white-space:nowrap}
.hh-routines .hr-month-group+.hr-month-group{border-top:1px dashed #ccc;padding-top:9px;margin-top:9px}
.hh-routines .hr-month-group-fields{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:8px;margin-top:7px}
.hh-routines .hr-month-group-fields label{font-size:11px;gap:3px}.hh-routines .hr-month-group-fields input,.hh-routines .hr-month-group-fields select{font-size:13px;padding:6px;min-height:36px}
.hh-routines .hr-school-date-chips{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.hh-routines .hr-school-date-chip{display:inline-flex;align-items:center;gap:3px;border:1px solid #bbb;border-radius:8px;padding:0 0 0 8px;font-size:13px;background:#fff}
.hh-routines .hr-school-date-chip button[data-hr]{border:0;box-shadow:none;background:none;color:#b62434;min-width:28px;min-height:32px;margin:0;padding:4px;font-size:19px}
.hh-routines .hr-school-date-chip.is-outside{border-color:#b62434;background:#fff0f1}
.hh-routines .hr-edit-dates{font-size:11px;min-height:32px;padding:5px 7px}
.hh-routines .hr-school-hint{font-size:12px;color:#666;margin:8px 0;display:block}
.hh-routines .hr-school-manual>summary{font-size:13px}.hh-routines .hr-school-row{grid-template-columns:minmax(170px,1fr) auto!important;gap:8px}
.hh-routines .hr-school-row>[data-school-through]{grid-column:1/-1;max-width:240px}.hh-routines .hr-school-row>label:has([name=closure_reason]){grid-column:1/-1}.hh-routines .hr-school-row>[hidden]{display:none!important}
.hh-routines .hr-school-range{font-size:12px;white-space:nowrap}.hh-routines .hr-school-row>button{justify-self:end;font-size:12px}
.hh-routines .hr-month-picker{width:min(380px,94vw);max-height:90dvh;overflow:auto;box-sizing:border-box;border:2px solid #29232e;border-radius:16px;padding:16px;background:#fff;color:#29232e}
.hh-routines .hr-month-picker::backdrop{background:#29232e70}.hh-routines .hr-month-picker header,.hh-routines .hr-month-picker footer{display:flex;justify-content:space-between;gap:10px;align-items:center}.hh-routines .hr-month-picker h3{margin:0}.hh-routines .hr-month-picker p{font-size:12px;margin:10px 0}
.hh-routines .hr-month-pick-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;touch-action:none;user-select:none}
.hh-routines .hr-month-weekday{text-align:center;font-size:10px;padding:5px 0}
.hh-routines .hr-month-picker .hr-month-pick-grid button{padding:5px;min-height:40px;min-width:0;box-shadow:none;border:1px solid #ccc;border-radius:8px;background:#fff;color:#29232e;font-size:13px}
.hh-routines .hr-month-pick-grid button[aria-pressed=true]{background:#ffe86c;color:#29232e;border:2px solid #29232e}.hh-routines .hr-month-pick-grid button:disabled{opacity:.3;cursor:default}
@media(max-width:520px){.hh-routines .hr-school-month{grid-template-columns:1fr;gap:6px}.hh-routines .hr-school-year-heading{grid-template-columns:1fr}.hh-routines .hr-month-group-fields{grid-template-columns:minmax(0,1fr) 118px}.hh-routines .hr-month-picker .hr-month-pick-grid button{min-height:38px}}

/* Each person's calendar, times and saved periods share one compact surface. */
.hh-routines .hr-school-student{border:1px solid #d6cddd;border-radius:9px;background:#fff;padding:12px;margin:12px 0}.hr-school-student>header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.hh-routines .hr-school-student h3{font-size:16px;margin:0}.hh-routines .hr-school-student .hr-school-times{border:0;margin:7px 0;padding:4px 0}.hh-routines .hr-school-student .hr-library{display:block;margin:6px 0 0}.hh-routines .hr-school-student .hr-library article{border:0;border-top:1px solid #e3dce8;border-radius:0;padding:8px 0;margin:0;box-shadow:none}.hh-routines .hr-school-student .hr-library article h4{margin:3px 0;font-size:14px}.hh-routines .hr-school-student .hr-library article p{margin:2px 0;font-size:12px}.hr-school-dialog .hr-month-group{grid-template-columns:minmax(80px,1fr) minmax(180px,3fr) 26px!important;align-items:center}.hr-school-dialog .hr-school-remove-entry{grid-column:3;justify-self:end;width:25px;min-width:25px;min-height:26px;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;color:#b42339!important;font-size:21px!important}.hr-school-dialog [data-school-weekdays]{border:0;padding:0;margin:6px 0;gap:9px}.hr-school-dialog [data-school-weekdays] label{display:flex;align-items:center;gap:3px;font-size:11px}.hr-school-dialog [hidden]{display:none!important}.hr-school-preview{margin:14px 0 10px;max-width:540px;border:1px solid #ddd5e5;border-radius:8px;padding:10px;background:#fff}.hr-school-preview:empty{display:none}.hr-school-preview>header{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px}.hr-school-preview>header h3{font-size:13px;margin:0}.hr-school-preview>header>div{display:flex;gap:4px;align-items:center}.hr-school-dialog .hr-school-preview>header button{padding:3px 9px!important;font-size:18px!important}.hr-school-preview-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.hr-school-dialog .hr-school-preview-grid button{display:flex;flex-direction:column;gap:2px;align-items:center;min-height:43px;padding:4px 2px!important;background:#fff!important;box-shadow:none!important;border:1px solid #e7e1ed!important;border-radius:4px!important;font-size:11px!important}.hr-school-preview-grid button>span{font-size:8px;line-height:1.1}.hr-school-dialog .hr-school-preview-grid .is-closed{background:#fff6d6!important}.hr-school-dialog .hr-school-preview-grid .is-half{background:#eee4fa!important}.hr-school-dialog .hr-school-preview-grid .is-open{background:#e6f6e5!important}.hr-school-preview-grid button:disabled{opacity:.28}
@media(max-width:600px){.hr-school-dialog .hr-month-group{grid-template-columns:65px minmax(0,1fr) 24px!important;gap:4px!important}.hr-school-dialog .hr-month-group-fields{grid-template-columns:minmax(0,1fr)!important}.hr-school-preview>header{flex-wrap:wrap}.hr-school-student>header h3{font-size:15px}.hr-school-preview-grid button>span{font-size:7px}}
