.TextButton-module__YQeJFW__textButton{align-items:center;gap:var(--space-1-5);min-height:var(--size-touch-target);padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--color-link);font-family:var(--font-family-body);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-none);cursor:pointer;background:0 0;border:none;text-decoration:none;display:inline-flex}.TextButton-module__YQeJFW__textButton:hover{background:var(--color-surface-hover);color:var(--color-link-hover);text-decoration:none}.TextButton-module__YQeJFW__textButton:focus-visible{outline:var(--focus-ring-width) solid var(--color-border-focus);outline-offset:var(--focus-ring-offset)}.TextButton-module__YQeJFW__textButton:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.TextButton-module__YQeJFW__underline,.TextButton-module__YQeJFW__underline:hover{text-underline-offset:var(--space-0-5);text-decoration:underline}.TextButton-module__YQeJFW__underline:hover{background:0 0}.TextButton-module__YQeJFW__icon{flex-shrink:0;display:flex}
.WeekCalendar-module__bHwjtG__calendar{gap:var(--space-3-5);flex-direction:column;display:flex}.WeekCalendar-module__bHwjtG__toolbar{align-items:center;gap:var(--space-2-5);flex-wrap:wrap;display:flex}.WeekCalendar-module__bHwjtG__title{margin:0 0 0 var(--space-1-5);font-family:var(--font-family-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight)}.WeekCalendar-module__bHwjtG__summary{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-left:auto}.WeekCalendar-module__bHwjtG__grid{grid-template-columns:repeat(var(--week-calendar-days,7), minmax(0, 1fr));gap:var(--space-2);display:grid}.WeekCalendar-module__bHwjtG__day{gap:var(--space-1-5);flex-direction:column;min-width:0;display:flex}.WeekCalendar-module__bHwjtG__header{height:var(--size-week-day-header);padding:0 var(--space-2-5);border-radius:var(--radius-sm);background:var(--color-surface-subtle);color:var(--color-text);flex-direction:column;justify-content:center;display:flex}.WeekCalendar-module__bHwjtG__header[data-today]{background:var(--color-brand);color:var(--color-on-brand)}.WeekCalendar-module__bHwjtG__weekday{font-size:var(--font-size-xs);line-height:var(--line-height-snug)}.WeekCalendar-module__bHwjtG__date{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);font-variant-numeric:tabular-nums}.WeekCalendar-module__bHwjtG__cell{justify-content:center;align-items:flex-start;gap:var(--space-0-5);width:100%;min-width:0;min-height:var(--size-week-cell);padding:var(--space-2) var(--space-2-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-subtle);font-family:var(--font-family-body);text-align:left;flex-direction:column;display:flex}button.WeekCalendar-module__bHwjtG__cell{cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard)}button.WeekCalendar-module__bHwjtG__cell:hover{border-color:var(--color-brand)}button.WeekCalendar-module__bHwjtG__cell:focus-visible{outline:var(--focus-ring-width) solid var(--color-border-focus);outline-offset:var(--focus-ring-offset)}.WeekCalendar-module__bHwjtG__time{color:var(--color-text-muted);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.WeekCalendar-module__bHwjtG__line{max-width:100%;font-size:var(--font-size-sm);line-height:var(--line-height-snug);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.WeekCalendar-module__bHwjtG__cell[data-status=booked]{border-color:var(--color-brand-soft);background:var(--color-brand-soft);color:var(--color-text)}.WeekCalendar-module__bHwjtG__cell[data-status=booked] .WeekCalendar-module__bHwjtG__line,.WeekCalendar-module__bHwjtG__cell[data-status=blocked] .WeekCalendar-module__bHwjtG__line{font-weight:var(--font-weight-semibold)}.WeekCalendar-module__bHwjtG__cell[data-status=blocked]{border-color:var(--color-status-warning-bg);background:var(--color-status-warning-bg);color:var(--color-status-warning-fg)}button.WeekCalendar-module__bHwjtG__cell[data-status=blocked]:hover{border-color:var(--color-status-warning-fg)}.WeekCalendar-module__bHwjtG__cell[data-status=past]{background:var(--color-surface-subtle);color:var(--color-text-muted)}.WeekCalendar-module__bHwjtG__empty{min-height:var(--size-week-cell);padding:var(--space-2) var(--space-2-5);border:var(--border-width) dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-subtle);font-size:var(--font-size-sm);align-items:center;display:flex}.WeekCalendar-module__bHwjtG__legend{gap:var(--space-5);color:var(--color-text-muted);font-size:var(--font-size-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.WeekCalendar-module__bHwjtG__legendItem{align-items:center;gap:var(--space-1-5);display:flex}.WeekCalendar-module__bHwjtG__swatch{width:var(--size-legend-swatch);height:var(--size-legend-swatch);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-xs);background:var(--color-surface)}.WeekCalendar-module__bHwjtG__swatch[data-status=booked]{border-color:var(--color-brand-soft);background:var(--color-brand-soft)}.WeekCalendar-module__bHwjtG__swatch[data-status=blocked]{border-color:var(--color-status-warning-fg);background:var(--color-status-warning-bg)}.WeekCalendar-module__bHwjtG__swatch[data-status=past]{border-color:var(--color-border);background:var(--color-surface-subtle)}@media (prefers-reduced-motion:reduce){button.WeekCalendar-module__bHwjtG__cell{transition:none}}
