.schedule-calendar{gap:1rem;display:grid}.schedule-calendar__toolbar{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.schedule-calendar__warning{border:1px solid hsl(var(--destructive) / .25);border-radius:var(--radius);background:hsl(var(--destructive) / .08);color:hsl(var(--destructive));align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;display:flex}.schedule-calendar__week{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));grid-template-columns:repeat(7,minmax(9rem,1fr));display:grid;overflow-x:auto}.schedule-calendar__day{border-right:1px solid hsl(var(--border));grid-template-rows:auto 1fr;min-width:9rem;min-height:24rem;display:grid}.schedule-calendar__day:last-child{border-right:0}.schedule-calendar__day[data-today=true]{background:hsl(var(--primary) / .04);box-shadow:inset 0 0 0 1px hsl(var(--primary) / .35)}.schedule-calendar__day-header{border-bottom:1px solid hsl(var(--border));background:hsl(var(--muted) / .45);gap:.15rem;padding:.75rem;display:grid}.schedule-calendar__day-header span{color:hsl(var(--muted-foreground));text-transform:uppercase;font-size:.7rem;font-weight:700}.schedule-calendar__day-header strong{font-size:.95rem}.schedule-calendar__day-body{align-content:start;gap:.55rem;padding:.65rem;display:grid}.schedule-calendar__shift,.schedule-calendar__gap,.schedule-calendar__empty{border-radius:calc(var(--radius) - 1px);text-align:left;min-width:0;padding:.65rem}.schedule-calendar__shift{border:1px solid hsl(var(--border));background:hsl(var(--background));border-left-width:4px;gap:.25rem;display:grid}.schedule-calendar__shift:hover{background:hsl(var(--muted) / .45)}.schedule-calendar__shift[data-override=true]{border-color:hsl(var(--alert-p2));background:hsl(var(--alert-p2) / .08)}.schedule-calendar__gap{border:1px solid hsl(var(--destructive) / .25);background:hsl(var(--destructive) / .08);color:hsl(var(--destructive));gap:.2rem;display:grid}.schedule-calendar__empty{color:hsl(var(--muted-foreground));align-items:center;gap:.4rem;font-size:.8125rem;display:flex}.schedule-calendar__month{grid-template-columns:repeat(7,minmax(8.5rem,1fr));gap:.6rem;display:grid}.schedule-calendar__month-day{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));text-align:left;grid-template-columns:auto 1fr;gap:.65rem;min-height:6.5rem;padding:.75rem;display:grid}.schedule-calendar__month-day:not(:disabled):hover{border-color:hsl(var(--ring))}.schedule-calendar__month-day:disabled{cursor:default}.schedule-calendar__month-day[data-today=true]{box-shadow:inset 0 0 0 1px hsl(var(--primary) / .35)}.schedule-calendar__month-day[data-gap=true]{border-color:hsl(var(--destructive) / .35)}.schedule-calendar__month-date{border-radius:calc(var(--radius) - 1px);background:hsl(var(--muted));align-self:start;place-items:center;min-width:2.5rem;padding:.4rem;display:grid}.schedule-calendar__month-date span{color:hsl(var(--muted-foreground));text-transform:uppercase;font-size:.62rem;font-weight:700}.schedule-calendar__month-date strong{font-size:1.1rem;line-height:1.1}@media (max-width:900px){.schedule-calendar__toolbar{flex-direction:column}.schedule-calendar__week,.schedule-calendar__month{grid-template-columns:repeat(7,minmax(11rem,1fr))}}
