.shift-calendar-panel{padding:22px;min-width:0}.shift-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.shift-month-nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.shift-month-nav h3{font-size:17px;font-weight:500;min-width:170px;text-align:center}.shift-month-nav .btn{min-width:34px;min-height:34px}.shift-owner{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--ink-muted)}.shift-owner select{min-width:150px}.shift-overview{display:flex;gap:24px;flex-wrap:wrap;font-size:12px;color:var(--ink-muted);padding:14px 0 18px;border-top:1px solid var(--line)}.shift-overview strong{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:500}.shift-pending{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:var(--s2);border:1px solid var(--line-3);padding:14px 16px;border-radius:8px;margin-bottom:18px}.shift-pending strong{font-size:13px;font-weight:500}.shift-pending p{font-size:12px;color:var(--ink-muted);margin-top:5px}.shift-weekdays,.shift-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.shift-weekdays span{font-size:12px;color:var(--ink-subtle);padding:10px;text-align:right}.shift-days{border-top:1px solid var(--line);border-left:1px solid var(--line);border-radius:8px;overflow:hidden}.shift-day,.shift-blank{min-height:115px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--s1);min-width:0}.shift-day{display:flex;flex-direction:column;align-items:stretch;padding:9px;text-align:left;color:var(--ink);gap:8px}.shift-day:hover{background:var(--s2)}.shift-day:focus-visible{outline:2px solid var(--primary-hover);outline-offset:-3px}.shift-day-number{align-self:flex-end;font-size:13px;line-height:24px;min-width:24px;text-align:center;font-variant-numeric:tabular-nums}.shift-day.is-today .shift-day-number{background:var(--primary);color:var(--ink);border-radius:6px}.shift-day.is-past .shift-day-number{color:var(--ink-subtle)}.shift-day.has-due{background:var(--s2)}.shift-day-content{display:flex;flex-direction:column;gap:5px;min-width:0}.shift-day-item{display:flex;flex-direction:column;gap:3px;padding:5px 6px;border-radius:4px;background:var(--s3);font-size:10px;color:var(--ink-muted);border-left:2px solid var(--ink-subtle)}.shift-day-item b{font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.shift-day-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shift-day-item.due{border-color:var(--amber)}.shift-day-item.done{border-color:var(--green)}.shift-day-item.running{border-color:var(--primary-hover)}.shift-add,.shift-more{font-size:10px;color:var(--ink-subtle)}.shift-add{opacity:0}.shift-day:hover .shift-add,.shift-day:focus-visible .shift-add{opacity:1}.shift-mobile-count{display:none}.shift-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px;font-size:11px;color:var(--ink-muted)}.shift-legend span{display:flex;align-items:center;gap:6px}.shift-legend i{width:6px;height:6px;border-radius:50%;background:var(--ink-subtle)}.shift-legend i.running{background:var(--primary-hover)}.shift-legend i.due{background:var(--amber)}.shift-legend i.done{background:var(--green)}.shift-plan-list{display:flex;flex-direction:column;gap:10px;margin-top:18px}.shift-plan-card{display:flex;flex-direction:column;gap:8px;background:var(--s2);border:1px solid var(--line-2);border-radius:8px;padding:14px;text-align:left}.shift-plan-card:hover{border-color:var(--ink-subtle)}.shift-plan-card strong{font-size:13px;font-weight:500;overflow-wrap:anywhere}.shift-plan-card span,.shift-plan-card small{font-size:12px;color:var(--ink-muted)}.shift-lock{padding:14px;background:var(--s2);border:1px solid var(--line-2);border-radius:8px;margin:15px 0;font-size:13px}.shift-lock p{font-size:12px;color:var(--ink-muted);margin-top:6px;line-height:1.6}.shift-end{display:block;padding:10px 0;font-size:13px;color:var(--ink-muted);line-height:1.5}.shift-report-entry{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.shift-report-entry h4{font-size:14px;font-weight:500}.shift-legacy{padding:14px;border:1px solid var(--line);border-radius:8px;font-size:12px}.shift-legacy p{margin-top:8px;color:var(--ink-muted)}#shiftScheduleForm input:disabled,#shiftReportForm input:disabled{opacity:.65;cursor:default}#shiftScheduleForm button:disabled,#shiftReportForm button:disabled{opacity:.5;cursor:wait}@media(max-width:700px){.shift-calendar-panel{padding:12px}.shift-day,.shift-blank{min-height:68px}.shift-day{padding:5px}.shift-day-content{display:none}.shift-mobile-count{display:block;font-size:9px;text-align:center;color:var(--ink-muted)}.shift-day.has-due .shift-mobile-count{color:var(--amber)}.shift-day-number{align-self:center}.shift-weekdays span{text-align:center;padding:8px 0}.shift-month-nav{gap:6px}.shift-month-nav h3{min-width:145px;font-size:15px}.shift-overview{gap:12px}.shift-owner{width:100%;justify-content:space-between}.shift-legend{gap:10px;font-size:10px}.shift-day.has-due{box-shadow:inset 0 -2px var(--amber)}}

.shift-month-nav h3::first-letter{text-transform:uppercase}
.shift-empty{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:13px 16px;margin-bottom:16px;border:1px dashed var(--line-2);border-radius:8px;background:var(--s2);font-size:12px}.shift-empty strong{font-size:13px}.shift-empty span{color:var(--ink-muted);flex:1;min-width:200px}

/* Compact spacing for the shift scheduling modal. */
.modal:has(#shiftScheduleForm){padding:18px}
.modal:has(#shiftScheduleForm) .m-sub{margin-bottom:12px}
.modal:has(#shiftScheduleForm) .field{margin-bottom:9px}
.modal:has(#shiftScheduleForm) .sales-note{margin:6px 0;line-height:1.45}
.modal:has(#shiftScheduleForm) .shift-end{padding:7px 0;line-height:1.35}
.modal:has(#shiftScheduleForm) .m-acts{margin-top:10px;padding-top:10px}
.shift-day-item b.shift-time-list{display:flex;flex-direction:column;gap:2px;white-space:normal}
.shift-day-item.break{border-color:var(--line-3)}
.shift-legend i.break{background:var(--line-3)}
.shift-segment-group{margin:10px 0 0;padding:12px 14px;background:var(--s2);border:1px solid var(--line);border-radius:8px}
.shift-segment-group[hidden],.shift-segment-controls [hidden]{display:none!important}
.shift-segment-group h4{font-size:13px;font-weight:500;margin-bottom:10px}
.shift-segment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.shift-segment-controls{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 6px}
.shift-total{margin:6px 0 8px!important}
@media(max-width:700px){.shift-segment-grid{grid-template-columns:1fr}}
.shift-plan-hint{margin:6px 0 0!important;font-weight:600}
.shift-plan-hint[data-state="done"]{color:#10B981}
.shift-plan-hint[data-state="short"]{color:#F59E0B}
