:root{--fc-border-color:var(--ui-border);--fc-page-bg-color:var(--ui-bg);--fc-button-bg-color:var(--ui-bg-elevated);--fc-button-border-color:var(--ui-border);--fc-button-text-color:var(--ui-text-muted);--fc-button-hover-bg-color:var(--ui-bg-accented);--fc-button-hover-border-color:var(--ui-border-accented);--fc-button-active-bg-color:var(--ui-bg-accented);--fc-button-active-border-color:var(--ui-primary);--fc-event-bg-color:var(--ui-primary);--fc-event-border-color:var(--ui-primary);--fc-event-text-color:#fff;--fc-event-selected-overlay-color:rgba(var(--ui-primary),.25);--fc-daygrid-event-dot-width:6px;--fc-today-bg-color:color-mix(in srgb,var(--ui-primary) 4%,transparent);--fc-neutral-bg-color:rgba(var(--ui-bg-muted),.25);--fc-list-event-hover-bg-color:var(--ui-bg-accented)}.fc{font-family:var(--ui-font-sans,inherit);color:var(--ui-text)}.fc .fc-toolbar{margin-bottom:1.5rem;display:flex;flex-wrap:wrap;gap:1rem}.fc .fc-toolbar-title{font-size:1.25rem;font-weight:700;letter-spacing:-.01em;color:var(--ui-text)}.fc .fc-button{box-shadow:0 1px 2px #0000000f;border:1px solid var(--ui-border);display:inline-flex;align-items:center;justify-content:center}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{color:var(--ui-primary);background-color:var(--ui-bg-accented);border-color:var(--ui-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-primary) 35%,transparent)}.fc .fc-col-header-cell{padding:.35rem 0;background-color:var(--ui-bg);border-bottom:1px solid var(--ui-border)}.dark .fc .fc-col-header-cell.fc-day-today,.fc .fc-col-header-cell.fc-day-today{background-color:color-mix(in srgb,var(--ui-primary) 30%,transparent)}.fc .fc-col-header-cell-cushion{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ui-text-muted)}.fc .fc-daygrid-day-number{padding:.5rem;font-size:.875rem;font-weight:500;color:var(--ui-text-muted)}.fc .fc-day-today .fc-daygrid-day-number{color:var(--ui-primary);font-weight:700}.fc-h-event,.fc-v-event{border-radius:var(--ui-radius);border:none;padding:2px 6px;box-shadow:0 1px 2px #00000014}.fc-event-main{font-size:11px;line-height:1.2;font-weight:500}.fc .fc-list{border-radius:var(--ui-radius);overflow:hidden;border:1px solid var(--ui-border)}.fc .fc-list-day-cushion{background-color:var(--ui-bg-muted);padding:.5rem 1rem}.fc{--fc-page-bg-color:var(--ui-bg-);--fc-border-color:var(--ui-border);--fc-neutral-bg-color:color-mix(in srgb,var(--ui-border) 60%,transparent);--fc-neutral-text-color:var(--ui-text-muted);--fc-today-bg-color:color-mix(in srgb,var(--ui-primary) 3%,transparent);--fc-button-bg-color:var(--ui-bg-elevated);--fc-button-border-color:var(--ui-border);--fc-button-text-color:var(--ui-text);--fc-button-hover-bg-color:var(--ui-bg-accented);--fc-button-hover-border-color:var(--ui-border);--fc-button-active-bg-color:var(--ui-primary);--fc-button-active-border-color:var(--ui-primary);--fc-event-bg-color:var(--ui-primary);--fc-event-border-color:var(--ui-primary);--fc-event-text-color:var(--ui-text-inverted)}.fc .fc-scrollgrid,.fc .fc-scrollgrid table{border-color:var(--ui-border)}.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-slot-label{font-size:.75rem;color:var(--ui-text-muted)}.fc .fc-slot-hover-overlay{position:absolute;background-color:color-mix(in srgb,var(--ui-primary) 10%,transparent);pointer-events:none!important;border-radius:6px;z-index:1;opacity:0;transition:opacity .12s ease}.fc .fc-daygrid-day.fc-day-today,.fc .fc-timegrid-col.fc-day-today{background-color:var(--fc-today-bg-color)}.fc .fc-button-primary{border-radius:var(--ui-radius);border:1px solid var(--ui-border);font-size:.875rem;font-weight:500;transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.fc .fc-button-primary:focus-visible{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-primary) 40%,transparent)}.fc .fc-toolbar.fc-header-toolbar{margin-bottom:1.25rem}.fc .fc-event,.fc .fc-h-event{border-radius:.5rem;box-shadow:0 1px 2px #00000014;cursor:pointer;pointer-events:auto}.fc .fc-timegrid-event .fc-event-main-frame{display:flex;align-items:center;gap:4px;min-width:0}.fc .fc-timegrid-event .fc-event-time{flex:0 0 auto;white-space:nowrap}.fc .fc-timegrid-event .fc-event-title-container{flex:1 1 auto;min-width:0}.fc .fc-timegrid-event .fc-event-title{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fc .fc-timegrid-event.fc-client-new .fc-event-title{white-space:pre-line;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.1;overflow-wrap:anywhere;word-break:break-word}.fc .fc-timegrid-event.fc-appointment-break{background-color:color-mix(in srgb,var(--ui-color-neutral-200) 72%,var(--ui-bg))!important;border:none!important;box-shadow:none}.fc .fc-timegrid-event.fc-appointment-break .fc-event-main,.fc .fc-timegrid-event.fc-appointment-break .fc-event-time,.fc .fc-timegrid-event.fc-appointment-break .fc-event-title{color:var(--ui-color-neutral-800)!important}.fc .fc-timegrid-event.fc-appointment-break .fc-event-title{font-weight:600}.dark .fc .fc-timegrid-event.fc-appointment-break{background-color:color-mix(in srgb,var(--ui-color-neutral-700) 78%,var(--ui-bg))!important;border:none!important}.dark .fc .fc-timegrid-event.fc-appointment-break .fc-event-main,.dark .fc .fc-timegrid-event.fc-appointment-break .fc-event-time,.dark .fc .fc-timegrid-event.fc-appointment-break .fc-event-title{color:var(--ui-color-neutral-50)!important}@media(max-width:767px){.fc .fc-timegrid-event.fc-appointment-event,.fc .fc-timegrid-event.fc-appointment-event .fc-event-main{min-width:0;max-width:100%;overflow:hidden}.fc .fc-timegrid-event.fc-appointment-event .fc-event-main-frame{max-width:100%}.fc .fc-timegrid-event.fc-appointment-event .fc-event-title-container{min-width:0;max-width:100%;overflow:hidden}.fc .fc-timegrid-event.fc-appointment-event.fc-client-new .fc-event-title,.fc .fc-timegrid-event.fc-appointment-event:not(.fc-client-new) .fc-event-title{max-width:100%}}.fc .fc-popover{border-radius:.75rem;border:1px solid color-mix(in srgb,var(--ui-border) 30%,transparent);background-color:color-mix(in srgb,var(--ui-bg-elevated) 95%,transparent);color:var(--ui-text);box-shadow:0 10px 30px #00000026}.fc .fc-popover-header{background-color:color-mix(in srgb,var(--ui-bg) 60%,transparent);font-size:.875rem;color:var(--ui-text-muted)}.dark .fc{--fc-neutral-bg-color:color-mix(in srgb,var(--ui-border) 40%,transparent);--fc-now-indicator-color:var(--ui-warning)}.fc .fc-bg-event.fc-work-interval{background:transparent;pointer-events:none}.fc .fc-bg-event.fc-outside-working-hours{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--ui-border) 34%,transparent) 0 3px,transparent 3px 6px),color-mix(in srgb,var(--ui-bg-muted) 32%,transparent);opacity:1;pointer-events:none}.fc .fc-col-header-cell-cushion{display:flex;align-items:stretch;justify-content:center;width:100%;min-height:50px;padding:0 4px;text-align:center;overflow:hidden}.fc .fc-day-header-wrap{display:flex;flex-direction:column;justify-content:flex-start;gap:6px;min-height:100%;align-items:center;text-align:center;width:100%}.fc .fc-day-header-row{display:flex;align-items:center;justify-content:center;gap:4px;width:100%}.fc .fc-day-header-label{font-size:12px;font-weight:600;color:var(--ui-text);line-height:1.1;text-align:center}.fc .fc-day-header-interval{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:-moz-fit-content;width:fit-content;max-width:calc(100% - 8px);min-height:20px;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--ui-primary) 90%,transparent);color:var(--ui-text-inverted);font-size:10px;font-weight:700;line-height:1;letter-spacing:.01em;white-space:nowrap;margin-top:auto;align-self:center}.fc .fc-day-header-interval-end,.fc .fc-day-header-interval-sep,.fc .fc-day-header-interval-start{display:inline-block}.fc .fc-day-header-interval-sep{opacity:.9}@media(max-width:640px){.fc .fc-day-header-interval{display:flex;flex-direction:column;gap:1px;width:calc(100% - 4px);max-width:calc(100% - 4px);min-width:0;min-height:24px;padding:3px 4px;border-radius:10px;line-height:1.05;white-space:normal;box-sizing:border-box;overflow:hidden}.fc .fc-day-header-interval-sep{display:none}}.fc .fc-bg-event.fc-non-working-day{background:color-mix(in srgb,var(--ui-error) 12%,transparent);opacity:1}.fc,.fc .fc-scrollgrid,.fc .fc-view-harness{height:100%}@media(min-width:768px){.fc .fc-scrollgrid-section-header .fc-scroller,.fc .fc-scrollgrid-section-header .fc-scroller-harness{overflow:hidden!important}}.calendar-loading{position:absolute;inset:0;display:grid;place-items:center;z-index:10}.calendar-loading__backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--ui-bg) 70%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.calendar-loading__spinner{position:relative;z-index:1;display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;background:var(--ui-bg-elevated);color:var(--ui-text);font-size:12px;font-weight:600;box-shadow:0 6px 20px #00000014}.calendar-loading__spinner:before{content:"";width:14px;height:14px;border-radius:999px;border:2px solid color-mix(in srgb,var(--ui-primary) 40%,transparent);border-top-color:var(--ui-primary);animation:schedule-spin .9s linear infinite}@keyframes schedule-spin{to{transform:rotate(1turn)}}
