/* Feature geometry for the horizontally scrollable employee/month roster. */
.tool-personal .schedule-content.is-staff-month,
.tool-personal .schedule-content.is-staff-month.staffing-collapsed { grid-template-columns:minmax(0,1fr); }
.is-staff-month #staffingOverview { display:none; }
.is-staff-month #scheduleBoard { max-height:75vh; min-width:0; }
.staff-month-help { padding:var(--zg-space-3); color:var(--zg-text-secondary); max-width:75ch; }
.staff-month-caption { text-align:start; padding:var(--zg-space-3); }
.staff-month-table { table-layout:fixed; width:max-content; min-width:100%; }
.staff-month-table :is(th,td) { width:112px; min-width:112px; vertical-align:top; border-inline-end:1px solid var(--zg-border-soft); padding:var(--zg-space-2); }
.staff-month-table tr>:first-child { position:sticky; left:0; z-index:2; width:190px; min-width:190px; }
.staff-month-table thead tr>:first-child { z-index:3; }
.tool-personal .staff-month-table tbody th[scope="row"] { background:var(--staff-header-color,var(--zg-neutral-700)); color:var(--staff-header-text,var(--zg-text-on-dark)); }
.tool-personal .staff-month-table tbody th[scope="row"] :is(strong,span) { color:inherit; }
.staff-month-table th span { display:block; margin-top:var(--zg-space-2); }
.staff-month-table td.is-weekend { background:var(--zg-surface-hover); }
.staff-month-table th[aria-current] { box-shadow:inset 0 -3px var(--zg-accent-primary); }
.staff-month-table .schedule-shift { min-width:0; padding:var(--zg-space-1); }
.staff-month-table .schedule-shift button { width:100%; text-align:start; }
.staff-month-table .schedule-shift small { overflow-wrap:anywhere; }
.staff-month-day-total { display:block; color:var(--zg-text-secondary); margin-block:var(--zg-space-2); }
.staff-month-table .schedule-create-at { width:100%; }
.schedule-views { flex-wrap:wrap; }
