.tool-personal .schedule-editor { width:min(760px,calc(100vw - 32px)); }
.schedule-editor form { margin:0; }
.schedule-editor .zg-modal__header { display:flex; flex-direction:row; justify-content:space-between; align-items:flex-start; }
.schedule-editor h2,.schedule-editor p { margin-block:0 8px; }
.schedule-editor .zg-modal__body { display:grid; gap:var(--zg-space-4,16px); }
.schedule-editor label { display:grid; gap:var(--zg-space-2,8px); font-size:var(--zg-font-label); }
.schedule-editor-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--zg-space-4,16px); }
.schedule-editor-wide,.schedule-editor label:has(> [name="date"]) { grid-column:1/-1; }
.schedule-editor-section { margin:0; min-width:0; border:0; padding:var(--zg-space-4,16px); border-radius:var(--zg-radius-md); background:var(--zg-surface-subtle,var(--zg-neutral-100)); }
.schedule-editor-section legend { font-weight:700; }
.schedule-date-modes,.schedule-weekdays { display:flex; flex-wrap:wrap; gap:var(--zg-space-4,16px); margin-block:var(--zg-space-4,16px); }
.schedule-editor :is(.schedule-date-modes,.schedule-weekdays) label,.schedule-editor .schedule-next-day { display:flex; align-items:center; gap:var(--zg-space-2,8px); }
.schedule-editor [data-mode-panel] { margin-block:var(--zg-space-4,16px); }
.schedule-date-row { display:flex; gap:var(--zg-space-2,8px); align-items:end; margin-bottom:var(--zg-space-2,8px); }
.schedule-date-row label { flex:1; }
.schedule-editor-summary { margin-top:var(--zg-space-4,16px)!important; font-weight:700; }
.schedule-editor [data-error] { color:var(--zg-state-danger); }
.schedule-editor .zg-modal__footer { position:sticky; bottom:0; flex-wrap:wrap; background:var(--zg-surface-card); }
.staff-request-feedback { position:fixed; inset:auto 16px 16px auto; z-index:10000; display:flex; align-items:center; gap:var(--zg-space-2,8px); max-width:calc(100vw - 32px); padding:12px 16px; background:var(--zg-surface-card); color:var(--zg-text-primary); border:1px solid var(--zg-border-default); border-radius:var(--zg-radius-md); box-shadow:var(--zg-shadow-soft); }
.staff-request-feedback progress { inline-size:4rem; block-size:0.5rem; accent-color:var(--zg-accent-primary); }
dialog > .staff-request-feedback { position:sticky; bottom:0; margin:0 16px 16px; }
.staff-request-feedback[hidden],.schedule-editor [hidden] { display:none!important; }
@media(max-width:600px){.schedule-editor-grid{grid-template-columns:1fr}.schedule-editor .zg-modal__footer .zg-btn{flex:1}.schedule-date-modes{flex-direction:column}}
