.calendar-modal__backdrop[data-v-32a3678f]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#2b2621a6;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem;animation:.2s ease-out fadeIn-32a3678f;display:flex;position:fixed;top:0;left:0}.calendar-modal[data-v-32a3678f]{background:#f8f6f2;border:1px solid #d7d1c8;border-radius:1.25rem;outline:none;flex-direction:column;width:100%;max-width:540px;max-height:min(90dvh,100%);animation:.3s cubic-bezier(.16,1,.3,1) slideUp-32a3678f;display:flex;overflow-y:auto;box-shadow:0 20px 25px -5px #2b26212e,0 10px 10px -5px #2b262114}.calendar-modal[data-v-32a3678f]:focus{box-shadow:0 0 0 2px #bb842e}.calendar-modal__header[data-v-32a3678f]{z-index:10;background:#f8f6f2;border-bottom:1px solid #e3dbcf;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem 1.75rem;display:flex;position:sticky;top:0}.calendar-modal__title[data-v-32a3678f]{color:#2b2621;margin-bottom:.25rem;font-size:1.25rem;font-weight:700;line-height:1.2}.calendar-modal__subtitle[data-v-32a3678f]{color:#7b7266;margin:0;font-size:.9rem}.calendar-modal__close[data-v-32a3678f]{color:#7b7266;cursor:pointer;background:#ede5da;border:none;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.calendar-modal__close[data-v-32a3678f]:hover{color:#5a4330;background:#e3d6c3}.calendar-modal__content[data-v-32a3678f]{flex-direction:column;gap:1.25rem;padding:1.75rem;display:flex}.calendar-modal__actions[data-v-32a3678f]{background:#f3eee6;border-top:1px solid #e3dbcf;border-bottom-right-radius:1.25rem;border-bottom-left-radius:1.25rem;flex-wrap:wrap;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.75rem;display:flex}@media (width<=640px){.calendar-modal__actions[data-v-32a3678f]{gap:.5rem;padding:1rem 1.25rem}}@keyframes fadeIn-32a3678f{0%{opacity:0}to{opacity:1}}@keyframes slideUp-32a3678f{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.calendar-modal__banner[data-v-32a3678f]{background:#fef2f2;border:1px solid #fecaca;border-radius:.75rem;align-items:flex-start;gap:.75rem;margin:1rem 1.75rem 0;padding:.75rem 1rem;display:flex}.calendar-modal__banner-icon[data-v-32a3678f]{flex-shrink:0;font-size:1.1rem;line-height:1.4}.calendar-modal__banner-text[data-v-32a3678f]{color:#991b1b;margin:0;font-size:.9rem;line-height:1.5}.calendar-modal__banner-link[data-v-32a3678f]{color:#991b1b;text-underline-offset:2px;font-weight:600;-webkit-text-decoration:underline #991b1b66;text-decoration:underline #991b1b66}.calendar-modal__banner-link[data-v-32a3678f]:hover{text-decoration-color:currentColor}.teacher-filter[data-v-beb90884]{min-width:0;position:relative}.teacher-filter__trigger[data-v-beb90884]{color:#2b2621;white-space:nowrap;background:#f3eee6;border:1px solid #d7d1c8;border-radius:999px;align-items:center;gap:.4rem;max-width:min(17rem,100%);min-height:40px;padding:.5rem .9rem;font-size:.875rem;font-weight:600;transition:background-color .2s,border-color .2s;display:inline-flex}@media (hover:hover){.teacher-filter__trigger[data-v-beb90884]:hover{background:#e8dfd2}.teacher-filter__option[data-v-beb90884]:hover{background:#f4ece0}.teacher-filter__mode[data-v-beb90884]:hover:not(.is-active){background:#e8dfd2}}.teacher-filter__trigger.is-filtered[data-v-beb90884]{background:#f3e6cf;border-color:#8b611f}.teacher-filter__icon[data-v-beb90884],.teacher-filter__chevron[data-v-beb90884]{flex:none;width:1rem;height:1rem}.teacher-filter__chevron[data-v-beb90884]{color:#6f665b;transition:transform .2s}.teacher-filter__trigger[aria-expanded=true] .teacher-filter__chevron[data-v-beb90884]{transform:rotate(180deg)}.teacher-filter__value[data-v-beb90884]{text-overflow:ellipsis;min-width:0;overflow:hidden}.teacher-filter__panel[data-v-beb90884]{z-index:40;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:.9rem;flex-direction:column;gap:.6rem;width:min(17.5rem,100vw - 2rem);padding:.75rem;animation:.14s ease-out teacherFilterIn-beb90884;display:flex;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 18px 36px #32271b2e}.teacher-filter__header[data-v-beb90884]{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.teacher-filter__heading[data-v-beb90884]{letter-spacing:.08em;text-transform:uppercase;color:#6f665b;margin:0;font-size:.72rem;font-weight:600}.teacher-filter__reset[data-v-beb90884]{color:#8b611f;text-underline-offset:2px;border-radius:.4rem;padding:.15rem .35rem;font-size:.8rem;font-weight:600;text-decoration:underline}.teacher-filter__options[data-v-beb90884]{flex-direction:column;max-height:min(50vh,18rem);display:flex;overflow-y:auto}.teacher-filter__option[data-v-beb90884]{color:#2b2621;cursor:pointer;border-radius:.6rem;align-items:center;gap:.6rem;min-height:36px;padding:.25rem .4rem;font-size:.875rem;display:flex}.teacher-filter__checkbox[data-v-beb90884]{flex:none;width:1rem;height:1rem}.teacher-filter__swatch[data-v-beb90884]{border-radius:999px;flex:none;width:.75rem;height:.75rem}.teacher-filter__swatch.is-unassigned[data-v-beb90884]{background:repeating-linear-gradient(135deg,#57534e 0 2px,#a8a29e 2px 4px)}.teacher-filter__name[data-v-beb90884]{overflow-wrap:anywhere;min-width:0}.teacher-filter__hint[data-v-beb90884]{color:#6f665b;margin:-.3rem 0 0;padding:0 .4rem;font-size:.78rem}.teacher-filter__section[data-v-beb90884]{border-top:1px solid #e6ded2;flex-direction:column;gap:.4rem;padding-top:.6rem;display:flex}.teacher-filter__modes[data-v-beb90884]{background:#f3eee6;border:1px solid #d7d1c8;border-radius:999px;grid-template-columns:1fr 1fr;gap:.2rem;padding:.2rem;display:grid}.teacher-filter__mode[data-v-beb90884]{color:#554c41;border-radius:999px;min-height:34px;padding:.35rem .75rem;font-size:.85rem;font-weight:600;transition:background-color .2s,color .2s}.teacher-filter__mode.is-active[data-v-beb90884]{color:#fff;background:#8b611f}@keyframes teacherFilterIn-beb90884{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.teacher-filter__panel[data-v-beb90884]{animation:none}}@media (width<=900px){.teacher-filter__option[data-v-beb90884]{min-height:44px}.teacher-filter__mode[data-v-beb90884]{min-height:40px}}@media (width<=640px){.teacher-filter__trigger[data-v-beb90884]{min-height:36px;padding:.45rem .75rem}.teacher-filter__prefix[data-v-beb90884]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.teacher-filter__chevron[data-v-beb90884]{display:none}}.teacher-legend[data-v-4a048109]{flex-wrap:wrap;align-items:center;gap:.375rem;min-width:0;margin-top:.75rem;display:flex}.teacher-legend__label[data-v-4a048109]{letter-spacing:.08em;text-transform:uppercase;color:#6f665b;margin-right:.15rem;font-size:.72rem;font-weight:600}.teacher-legend__chip[data-v-4a048109]{color:#2b2621;white-space:nowrap;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:999px;flex:none;align-items:center;gap:.35rem;min-height:28px;padding:0 .65rem;font-size:.8rem;font-weight:600;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}@media (hover:hover){.teacher-legend__chip[data-v-4a048109]:hover{background:#f4ece0;border-color:#bfa98a}}.teacher-legend__chip.is-selected[data-v-4a048109]{background:#f3e6cf;border-color:#8b611f}.teacher-legend__chip.is-muted[data-v-4a048109]{color:#6f665b}.teacher-legend__check[data-v-4a048109]{color:#8b611f;width:.8rem;height:.8rem;margin-left:-.15rem}.teacher-legend__swatch[data-v-4a048109]{border:2px solid var(--teacher-color);background:var(--teacher-color);border-radius:999px;flex:none;width:.7rem;height:.7rem}.teacher-legend__chip.is-muted .teacher-legend__swatch[data-v-4a048109]{background:0 0}.teacher-legend__swatch.is-unassigned[data-v-4a048109]{background:repeating-linear-gradient(135deg,#57534e 0 2px,#a8a29e 2px 4px)}.teacher-legend__chip.is-muted .teacher-legend__swatch.is-unassigned[data-v-4a048109]{background:0 0}@media (width<=900px){.teacher-legend[data-v-4a048109]{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;margin:.35rem 0 0 -.2rem;padding:.2rem 1.25rem .2rem .2rem;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 1.25rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 1.25rem),#0000)}.teacher-legend[data-v-4a048109]::-webkit-scrollbar{display:none}.teacher-legend__chip[data-v-4a048109]{min-height:32px}}.google-recurrence[data-v-4fea683f]{flex-direction:column;gap:.4rem;display:flex}.calendar-input[data-v-4fea683f]{color:#2b2621;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:.75rem;width:100%;padding:.55rem .75rem;font-size:.9rem}.calendar-input[data-v-4fea683f]:focus{border-color:#bb842e;outline:none;box-shadow:0 0 0 3px #bb842e33}.calendar-input[data-v-4fea683f]:disabled{color:#938779;cursor:not-allowed;background:#f3eee6;border-color:#ddd5c8}.calendar-input--compact[data-v-4fea683f]{max-width:130px}.form-label[data-v-4fea683f]{color:#2b2621;font-size:.85rem;font-weight:600}.form-help[data-v-4fea683f]{color:#938779;font-size:.75rem}.btn[data-v-4fea683f]{border:1px solid #0000;border-radius:999px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:all .2s}.btn-primary[data-v-4fea683f]{color:#fff;background:#8b611f}.btn-primary[data-v-4fea683f]:hover{background:#6f4c17}.btn-secondary[data-v-4fea683f]{color:#2b2621;background:#f3eee6;border-color:#d7d1c8}.btn-secondary[data-v-4fea683f]:hover{background:#e8dfd2}.google-recurrence__warning[data-v-4fea683f]{color:#9f1239;background:#fff1f2;border:1px solid #fecdd3;border-radius:.75rem;flex-direction:column;gap:.5rem;padding:.65rem .8rem;font-size:.8rem;display:flex}.google-recurrence__confirm-row[data-v-4fea683f]{align-items:flex-start;gap:.5rem;font-size:.8rem;display:flex}.google-recurrence__overlay[data-v-4fea683f]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#2b2621a6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.google-recurrence__modal[data-v-4fea683f]{background:#f8f6f2;border:1px solid #d7d1c8;border-radius:1.25rem;flex-direction:column;gap:1rem;width:min(560px,100%);max-height:90vh;padding:1.25rem 1.5rem;display:flex;overflow-y:auto;box-shadow:0 20px 25px -5px #2b26212e,0 10px 10px -5px #2b262114}.google-recurrence__modal-header[data-v-4fea683f]{border-bottom:1px solid #e3dbcf;align-items:center;padding-bottom:.6rem;display:flex}.google-recurrence__modal-header h3[data-v-4fea683f]{color:#2b2621;margin:0;font-size:1.25rem;font-weight:700}.google-recurrence__grid[data-v-4fea683f]{flex-direction:column;gap:1rem;display:flex}.google-recurrence__row[data-v-4fea683f]{grid-template-columns:110px minmax(0,1fr);align-items:center;gap:.75rem;display:grid}.google-recurrence__row--stacked[data-v-4fea683f]{align-items:flex-start}.google-recurrence__inline-fields[data-v-4fea683f]{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.google-recurrence__inline-fields--wide[data-v-4fea683f]>*{min-width:120px}.google-recurrence__ends-options[data-v-4fea683f]{flex-direction:column;gap:.65rem;display:flex}.google-recurrence__end-row[data-v-4fea683f]{grid-template-columns:90px minmax(0,1fr);align-items:center;gap:.75rem;display:grid}.google-recurrence__end-field[data-v-4fea683f]{min-width:0;max-width:300px}.google-recurrence__end-spacer[data-v-4fea683f]{min-height:1px}.google-recurrence__weekday-list[data-v-4fea683f]{flex-wrap:wrap;gap:.45rem;display:flex}.google-recurrence__weekday[data-v-4fea683f]{color:#5b5348;background:#ede5da;border:1px solid #d7d1c8;border-radius:999px;width:2rem;height:2rem;font-size:.82rem;font-weight:700}.google-recurrence__weekday.is-active[data-v-4fea683f]{color:#fff;background:#8b611f;border-color:#6f4c17}.google-recurrence__radio-row[data-v-4fea683f]{color:#3f382f;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.google-recurrence__radio-row--end[data-v-4fea683f]{min-width:0}.google-recurrence__actions[data-v-4fea683f]{border-top:1px solid #e3dbcf;justify-content:flex-end;gap:.6rem;padding-top:.75rem;display:flex}.google-recurrence__error[data-v-4fea683f]{color:#991b1b;font-size:.8rem;font-weight:600}@media (width<=640px){.google-recurrence__row[data-v-4fea683f]{grid-template-columns:1fr}.google-recurrence__end-row[data-v-4fea683f]{grid-template-columns:1fr;gap:.45rem}.google-recurrence__end-field[data-v-4fea683f]{max-width:100%}}.calendar-shell[data-v-fb440917]{flex-direction:column;height:100%;min-height:0;display:flex}.calendar-toolbar[data-v-fb440917]{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.calendar-toolbar__primary[data-v-fb440917]{align-items:center;gap:1rem;min-width:0;display:flex}.calendar-toolbar__group[data-v-fb440917]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.calendar-toolbar__group--nav[data-v-fb440917]{flex-wrap:nowrap;flex:none}.calendar-toolbar__group--actions[data-v-fb440917]{justify-content:flex-end}.calendar-toolbar__range[data-v-fb440917]{text-align:center;flex-direction:column;flex:auto;gap:.1rem;min-width:0;display:flex}.calendar-toolbar__controls[data-v-fb440917]{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1rem;min-width:0;margin-left:auto;display:flex}.calendar-toolbar__label[data-v-fb440917]{text-transform:uppercase;letter-spacing:.08em;color:#6f665b;margin:0;font-size:.72rem;font-weight:600}.calendar-toolbar__title[data-v-fb440917]{color:#2b2621;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:clamp(1.05rem,2vw,1.35rem);font-weight:700;line-height:1.2;overflow:hidden}.calendar-toolbar__view-switch[data-v-fb440917]{background:#fcfaf6;border:1px solid #d7d1c8;border-radius:999px;align-items:center;gap:.2rem;padding:.2rem;display:inline-flex}.calendar-layout[data-v-fb440917]{flex-direction:column;flex:auto;align-items:stretch;min-height:0;display:flex}.calendar-panel[data-v-fb440917]{height:100%;min-height:0}.calendar-panel__rail[data-v-fb440917]{display:none}.calendar-panel__rail-button[data-v-fb440917]{color:#574f45;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;width:40px;height:40px;transition:all .2s;display:flex;box-shadow:0 12px 24px #32271b1f}.calendar-panel__rail-button[data-v-fb440917]:hover{background:#f4ece0;border-color:#d7c3a4}.calendar-panel__rail-icon[data-v-fb440917]{width:18px;height:18px}.calendar-panel__card[data-v-fb440917]{background:#f8f6f2;border:1px solid #d7d1c8;border-radius:1rem;flex-direction:column;gap:1rem;height:100%;min-height:0;padding:1rem;display:flex;overflow:hidden;box-shadow:0 8px 18px #32271b0f}.calendar-panel--embedded .calendar-panel__card[data-v-fb440917]{box-shadow:none;background:0 0;border:0;border-right:1px solid #d7d1c8;border-radius:0;padding:0 1rem 0 0}.calendar-panel__header[data-v-fb440917]{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.calendar-panel__collapse[data-v-fb440917]{color:#84796b;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:inline-flex}.calendar-panel__collapse[data-v-fb440917]:hover{color:#2b2621;border-color:#d7c3a4}.calendar-panel__collapse-icon[data-v-fb440917]{width:18px;height:18px}.calendar-panel__title[data-v-fb440917]{color:#2b2621;font-size:1rem;font-weight:700}.calendar-panel__subtitle[data-v-fb440917]{color:#7b7266;font-size:.85rem}.calendar-panel__label[data-v-fb440917]{text-transform:uppercase;letter-spacing:.08em;color:#938779;margin-bottom:.4rem;font-size:.75rem;font-weight:600}.calendar-panel__section[data-v-fb440917]{flex-direction:column;gap:.6rem;display:flex}.calendar-panel__section--contacts[data-v-fb440917]{flex:auto;min-height:0}.calendar-panel__empty[data-v-fb440917]{color:#938779;font-size:.85rem}.calendar-panel__scrim[data-v-fb440917],.calendar-panel__sheet-close[data-v-fb440917],.calendar-panel__subtitle-touch[data-v-fb440917]{display:none}.calendar-card[data-v-fb440917]{background:#f8f6f2;border:1px solid #d7d1c8;border-radius:1rem;flex-direction:column;height:100%;min-height:0;padding:1rem;display:flex;box-shadow:0 8px 18px #32271b0f}.calendar-card__body[data-v-fb440917]{flex-direction:column;flex:auto;min-height:0;padding-top:.75rem;display:flex}.calendar-card__content[data-v-fb440917]{flex:auto;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:1rem;min-height:0;display:grid}.calendar-card__content.is-collapsed[data-v-fb440917]{grid-template-columns:1fr}.calendar-card__calendar[data-v-fb440917]{flex-direction:column;min-width:0;min-height:0;display:flex}.calendar-card[data-v-fb440917] .fc{flex:auto;min-height:0}.calendar-card[data-v-fb440917] .fc-view-harness,.calendar-card[data-v-fb440917] .fc-view-harness-active{min-height:0}.student-list[data-v-fb440917]{flex-direction:column;flex:auto;gap:.5rem;min-height:0;padding-right:.25rem;display:flex;overflow-y:auto}.student-chip[data-v-fb440917]{cursor:grab;text-align:left;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:.9rem;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.75rem .9rem;transition:all .2s;display:flex}.student-chip[data-v-fb440917]:hover{background:#f4ece0;border-color:#d7c3a4}.student-chip[data-v-fb440917]:active{cursor:grabbing}.student-chip__name-row[data-v-fb440917]{align-items:center;gap:.35rem;display:inline-flex}.student-chip__color-dot[data-v-fb440917]{border:1px solid #e5ded2;border-radius:999px;flex:none;width:.625rem;height:.625rem;display:inline-flex}.student-chip__name[data-v-fb440917]{color:#2b2621;font-weight:600}.student-chip__birthday[data-v-fb440917]{color:#a8762a;align-items:center;line-height:1;display:inline-flex}.student-chip__birthday svg[data-v-fb440917]{width:.9rem;height:.9rem}.pill-group[data-v-fb440917]{flex-wrap:wrap;gap:.5rem;display:flex}.pill[data-v-fb440917]{color:#2b2621;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:999px;padding:.35rem .75rem;font-size:.8rem;font-weight:600;transition:all .2s}.pill[data-v-fb440917]:hover{border-color:#bfa98a}.pill.is-active[data-v-fb440917]{color:#fff;background:#8b611f;border-color:#6f4c17}.calendar-input[data-v-fb440917]{color:#2b2621;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:.75rem;width:100%;padding:.55rem .75rem;font-size:.9rem}.calendar-input[data-v-fb440917]:focus{border-color:#bb842e;outline:none;box-shadow:0 0 0 3px #bb842e33}.calendar-input--compact[data-v-fb440917]{max-width:130px}.calendar-readonly[data-v-fb440917]{color:#2b2621;background:#f3eee6;border:1px solid #d7d1c8;border-radius:.75rem;width:100%;padding:.55rem .75rem;font-size:.9rem}.btn[data-v-fb440917]{white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:all .2s}.btn-icon[data-v-fb440917]{justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:inline-flex}.btn-icon svg[data-v-fb440917]{width:18px;height:18px}.btn-primary[data-v-fb440917]{color:#fff;background:#8b611f}.btn-primary[data-v-fb440917]:hover{background:#6f4c17}.btn-secondary[data-v-fb440917]{color:#2b2621;background:#f3eee6;border-color:#d7d1c8}.btn-secondary[data-v-fb440917]:hover{background:#e8dfd2}.btn-secondary.is-active[data-v-fb440917]{color:#fff;background:#8b611f}.btn-danger[data-v-fb440917]{color:#9f1239;background:#fff1f2;border-color:#fecdd3}.btn-danger[data-v-fb440917]:hover{background:#ffe4e6;border-color:#fda4af}.btn-segment[data-v-fb440917]{color:#554c41;background:0 0;border:none;padding:.45rem .85rem}.btn-segment[data-v-fb440917]:hover{background:#f3eee6}.btn-segment.is-active[data-v-fb440917]{color:#fff;background:#8b611f;box-shadow:0 6px 14px #593d1633}.btn[data-v-fb440917]:disabled{opacity:.65;cursor:not-allowed}.calendar-modal__error[data-v-fb440917]{color:#991b1b;background:#fee2e2;border-radius:.75rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600}.calendar-modal__loading[data-v-fb440917]{color:#675f55;background:#f3eee6;border-radius:.75rem;padding:.6rem .9rem;font-size:.85rem;font-weight:600}.calendar-modal__teacher[data-v-fb440917]{color:#3f382f;margin:0;font-size:.85rem}.form-group[data-v-fb440917]{flex-direction:column;gap:.4rem;display:flex}.form-row[data-v-fb440917]{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.form-label[data-v-fb440917]{color:#2b2621;font-size:.85rem;font-weight:600}.form-help[data-v-fb440917]{color:#938779;font-size:.75rem}.form-checkbox-row[data-v-fb440917]{-moz-column-gap:.55rem;grid-template-columns:auto 1fr;align-items:flex-start;column-gap:.55rem;width:100%;display:grid}.form-checkbox-row--scope[data-v-fb440917]{padding:0 .35rem}.form-checkbox__label[data-v-fb440917]{color:#3f382f;font-size:.85rem;font-weight:500;line-height:1.35}.form-checkbox__input[data-v-fb440917]{accent-color:#bb842e;flex-shrink:0;width:1rem;height:1rem;margin-top:.15rem}.duration-custom[data-v-fb440917]{align-items:center;gap:.4rem;display:flex}.duration-custom__label[data-v-fb440917]{color:#84796b;font-size:.75rem}.calendar-scope-options[data-v-fb440917]{flex-direction:column;gap:.75rem;display:flex}.scope-option[data-v-fb440917]{text-align:left;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:.75rem;align-items:flex-start;gap:1rem;width:100%;padding:1rem;transition:all .2s;display:flex}.scope-option[data-v-fb440917]:hover{background:#f4ece0;border-color:#d7c3a4}.scope-option--danger[data-v-fb440917]:hover{background:#fff1f2;border-color:#fda4af}.scope-option__icon[data-v-fb440917]{color:#bb842e;background:#f3e6cf;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.scope-option--danger .scope-option__icon[data-v-fb440917]{color:#be123c;background:#ffe4e6}.scope-option__content[data-v-fb440917]{flex-direction:column;gap:.25rem;display:flex}.scope-option__title[data-v-fb440917]{color:#2b2621;font-size:.95rem;font-weight:600}.scope-option__desc[data-v-fb440917]{color:#7b7266;font-size:.85rem;line-height:1.4}.scope-option__note[data-v-fb440917]{color:#8b611f;font-size:.8rem;font-weight:600;line-height:1.35}.scope-option[data-v-fb440917]:disabled{cursor:not-allowed;opacity:.5}.scope-option[data-v-fb440917]:disabled:hover{background:#fcfaf6;border-color:#d7d1c8}.calendar-scope-notice[data-v-fb440917]{color:#92400e;background:#fef9e7;border:1px solid #facc158c;border-radius:.75rem;align-items:flex-start;gap:.5rem;margin:0;padding:.65rem .75rem;font-size:.85rem;line-height:1.4;display:flex}.calendar-scope-notice__icon[data-v-fb440917]{flex:none;width:1.1rem;height:1.1rem;margin-top:.1rem}[data-v-fb440917] .calendar-event--unlinked{border-left:4px solid #dc2626!important}[data-v-fb440917] .calendar-event--cancelled{opacity:.6;text-decoration:line-through}[data-v-fb440917] .fc-timegrid-event.calendar-event--unassigned,[data-v-fb440917] .fc-daygrid-block-event.calendar-event--unassigned{background-image:repeating-linear-gradient(135deg,#ffffff1f 0 6px,#0000 6px 12px)}[data-v-fb440917] .calendar-event--locked{border-style:dashed!important;border-color:#f59e0b!important}[data-v-fb440917] .calendar-event-lock{flex:none;align-items:center;line-height:1;display:inline-flex}[data-v-fb440917] .calendar-event-icon{width:.78rem;height:.78rem}[data-v-fb440917] .fc-event-header{justify-content:space-between;align-items:center;width:100%;display:flex}[data-v-fb440917] .fc-event-icons{align-items:center;gap:2px;margin-left:auto;display:flex}[data-v-fb440917] .calendar-event-birthday{flex:none;align-items:center;line-height:1;display:inline-flex}[data-v-fb440917] .calendar-event-journal{flex:none;align-items:center;margin-left:1px;line-height:1;display:inline-flex}[data-v-fb440917] .fc .fc-bg-event.calendar-availability--outside,[data-v-fb440917] .fc .fc-bg-event.calendar-availability--time-off{opacity:1}[data-v-fb440917] .fc .fc-bg-event.calendar-availability--outside{background-image:repeating-linear-gradient(135deg,#57534e17 0 1px,#0000 1px 7px)}[data-v-fb440917] .fc .fc-bg-event.calendar-availability--time-off{background-image:repeating-linear-gradient(135deg,#b4530921 0 2px,#0000 2px 8px)}[data-v-fb440917] .fc .fc-bg-event.calendar-availability--time-off .fc-event-title{color:#92400e;letter-spacing:.04em;text-transform:uppercase;margin:.3rem .4rem;font-size:.7rem;font-style:normal;font-weight:700}[data-v-fb440917] .calendar-event-away{color:#92400e;letter-spacing:.03em;text-transform:uppercase;vertical-align:1px;background:#fef3c7;border-radius:9999px;align-items:center;gap:2px;margin:0 4px 1px 0;padding:1px 5px 1px 3px;font-size:.66rem;font-weight:700;line-height:1.2;display:inline-flex}[data-v-fb440917] .calendar-event-away .calendar-event-icon{width:.7rem;height:.7rem}[data-v-fb440917] .fc-daygrid-dot-event.calendar-event--time-off{background:#fef3c7}.calendar-availability-note[data-v-fb440917]{color:#5d544a;align-items:center;gap:.5rem;margin:0;padding:.3rem 1rem .45rem;font-size:.8rem;display:flex}.calendar-availability-note__swatch[data-v-fb440917]{background-color:#57534e12;background-image:repeating-linear-gradient(135deg,#57534e2e 0 1px,#0000 1px 5px);border:1px solid #d7d1c8;border-radius:.2rem;flex:none;width:1.25rem;height:.8rem}.calendar-availability-note__swatch--time-off[data-v-fb440917]{background-color:#d977061a;background-image:repeating-linear-gradient(135deg,#b453094d 0 1px,#0000 1px 5px);border-color:#d9770673}.calendar-modal__availability[data-v-fb440917]{color:#92400e;background:#fef9e7;border:1px solid #facc158c;border-radius:.75rem;align-items:flex-start;gap:.6rem;padding:.65rem .75rem;font-size:.85rem;line-height:1.4;display:flex}.calendar-modal__availability-icon[data-v-fb440917]{flex:none;width:1.1rem;height:1.1rem;margin-top:.1rem}.calendar-modal__availability-text[data-v-fb440917]{flex-direction:column;flex:auto;gap:.15rem;min-width:0;display:flex}.calendar-modal__availability-text p[data-v-fb440917]{margin:0}.calendar-modal__availability-lead[data-v-fb440917]{font-weight:600}.calendar-modal__availability-dismiss[data-v-fb440917]{color:#92400e;border-radius:9999px;flex:none;justify-content:center;align-items:center;width:2rem;height:2rem;margin:-.35rem -.35rem 0 0;transition:background-color .15s;display:inline-flex}.calendar-modal__availability-dismiss[data-v-fb440917]:hover{background:#92400e14}@media (prefers-reduced-motion:reduce){.calendar-modal__availability-dismiss[data-v-fb440917]{transition:none}}@media (width<=900px){.calendar-toolbar[data-v-fb440917]{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"primary actions""range range""views views";align-items:start;display:grid}.calendar-toolbar__primary[data-v-fb440917]{grid-area:primary}.calendar-toolbar__controls[data-v-fb440917]{display:contents}.calendar-toolbar__group--actions[data-v-fb440917]{grid-area:actions}.calendar-toolbar__view-switch[data-v-fb440917]{grid-area:views;justify-self:start}.calendar-toolbar__teachers[data-v-fb440917]{grid-area:views;place-self:center end;min-width:0;max-width:calc(100% - 13rem)}.calendar-toolbar__range[data-v-fb440917]{text-align:left;grid-area:range;justify-self:start}.calendar-card[data-v-fb440917]{min-height:74dvh}.calendar-panel--embedded[data-v-fb440917]{z-index:60;background:#f8f6f2;border-top:1px solid #d7d1c8;border-radius:1.25rem 1.25rem 0 0;height:auto;max-height:78dvh;padding:0;animation:.24s cubic-bezier(.16,1,.3,1) quickAddSheetUp-fb440917;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 32px #2b262138}.calendar-panel--embedded .calendar-panel__card[data-v-fb440917]{border-radius:inherit;height:auto;max-height:78dvh;box-shadow:none;padding:.75rem 1rem calc(1rem + env(safe-area-inset-bottom,0px));background:0 0;border:0;gap:.75rem}.calendar-panel__scrim[data-v-fb440917]{z-index:59;background:#2b262173;animation:.2s ease-out fadeIn-fb440917;display:block;position:fixed;inset:0}.calendar-panel__sheet-close[data-v-fb440917]{color:#7b7266;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:999px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;margin:-.25rem -.25rem 0 0;transition:color .2s,border-color .2s;display:inline-flex}.calendar-panel__sheet-close[data-v-fb440917]:hover{color:#2b2621;border-color:#d7c3a4}.calendar-panel__subtitle-pointer[data-v-fb440917]{display:none}.calendar-panel__subtitle-touch[data-v-fb440917]{display:inline}.student-chip[data-v-fb440917]{border-radius:.7rem;flex-direction:row;align-items:center;gap:.5rem;min-height:44px;padding:.5rem .75rem}.student-list[data-v-fb440917]{gap:.375rem}.calendar-card__content[data-v-fb440917],.calendar-card__content.is-collapsed[data-v-fb440917]{grid-template:"calendar"minmax(0,1fr)/1fr;gap:.75rem}@keyframes quickAddSheetUp-fb440917{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn-fb440917{0%{opacity:0}to{opacity:1}}.calendar-card__calendar[data-v-fb440917]{grid-area:calendar}}@media (width<=640px){.calendar-modal__actions .btn[data-v-fb440917]{flex:calc(50% - .25rem);justify-content:center;align-items:center;min-height:44px;padding-inline:.75rem;display:inline-flex}.calendar-toolbar[data-v-fb440917]{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"primary actions""range range""views views";gap:.5rem}.calendar-toolbar__primary[data-v-fb440917]{flex-direction:row;align-items:center}.calendar-toolbar__group--nav .btn-icon[data-v-fb440917]{width:34px;height:34px}.calendar-toolbar__group--nav .btn[data-v-fb440917]:not(.btn-icon){padding:.45rem .75rem}.calendar-toolbar__group--actions .btn-primary[data-v-fb440917]{white-space:nowrap;padding:.45rem .75rem}.calendar-toolbar__view-switch[data-v-fb440917]{justify-content:space-between;width:100%}.calendar-toolbar--with-teachers .calendar-toolbar__view-switch[data-v-fb440917]{width:auto}.btn-segment[data-v-fb440917]{text-align:center;flex:auto}.calendar-toolbar__group--actions[data-v-fb440917]{justify-content:flex-end}}[data-v-fb440917] .fc-theme-standard td,[data-v-fb440917] .fc-theme-standard th,[data-v-fb440917] .fc-scrollgrid{border-color:#d7d1c8}.calendar-card[data-v-fb440917] .fc-timeGridWeek-view .fc-col-header-cell .fc-scrollgrid-sync-inner{container-type:inline-size}.calendar-card[data-v-fb440917] .calendar-day-header__compact{flex-direction:column;align-items:center;line-height:1.15;display:none}.calendar-card[data-v-fb440917] .calendar-day-header__weekday{letter-spacing:.05em;text-transform:uppercase;color:#6f665b;font-size:.6875rem;font-weight:600}.calendar-card[data-v-fb440917] .calendar-day-header__date{color:#2b2621;font-size:1rem;font-weight:700}@container (width<=3.5em){.calendar-card[data-v-fb440917] .fc-timeGridWeek-view .fc-col-header-cell-cushion{vertical-align:top;padding:4px 0}.calendar-card[data-v-fb440917] .calendar-day-header__full{display:none}.calendar-card[data-v-fb440917] .calendar-day-header__compact{display:flex}}.fade-enter-active[data-v-2f4a5e89],.fade-leave-active[data-v-2f4a5e89]{transition:opacity .2s}.fade-enter-from[data-v-2f4a5e89],.fade-leave-to[data-v-2f4a5e89]{opacity:0}.onboarding-fade-enter-active[data-v-18b8e632],.onboarding-fade-leave-active[data-v-18b8e632]{transition:opacity .18s}.onboarding-fade-enter-from[data-v-18b8e632],.onboarding-fade-leave-to[data-v-18b8e632]{opacity:0}.onboarding-coachmark[data-v-18b8e632]{z-index:140;background:linear-gradient(#f8efde 0%,#fcfaf6 48% 100%);border:1px solid #c7ad80;border-radius:1rem;width:min(24rem,100vw - 2rem);max-height:calc(100dvh - 2rem);padding:1rem;position:fixed;overflow-y:auto;box-shadow:0 18px 44px #2b262147,inset 0 0 0 1px #fcfaf6a6}.onboarding-coachmark__notice[data-v-18b8e632]{overflow-wrap:anywhere;border:1px solid;border-radius:.75rem;margin:0 0 .7rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;line-height:1.35}.onboarding-coachmark__notice--success[data-v-18b8e632]{border-color:var(--sc-success-border);background:var(--sc-success-bg);color:var(--sc-success-text)}.onboarding-coachmark__notice--danger[data-v-18b8e632]{border-color:var(--sc-danger-border);background:var(--sc-danger-bg);color:var(--sc-danger-text)}.onboarding-coachmark.is-dragging[data-v-18b8e632]{cursor:grabbing;box-shadow:0 22px 48px #2b262157,inset 0 0 0 1px #fcfaf6b3}.onboarding-coachmark__drag-handle[data-v-18b8e632]{color:#6d5a3b;cursor:grab;-webkit-user-select:none;user-select:none;background:#f4e4ca;border:1px solid #dbc6a3;border-radius:.8rem;align-items:center;gap:.45rem;margin:-.35rem -.35rem .7rem;padding:.42rem .55rem;display:flex}.onboarding-coachmark.is-dragging .onboarding-coachmark__drag-handle[data-v-18b8e632]{cursor:grabbing}.onboarding-coachmark__grip[data-v-18b8e632]{letter-spacing:.07em;color:#8d7244;font-size:.72rem}.onboarding-coachmark__chip[data-v-18b8e632]{letter-spacing:.08em;text-transform:uppercase;background:#fcfaf6;border:1px solid #c7ad80;border-radius:999px;padding:.15rem .48rem;font-size:.62rem;font-weight:700}.onboarding-coachmark__hint[data-v-18b8e632]{letter-spacing:.06em;text-transform:uppercase;color:#7e6844;margin-left:auto;font-size:.62rem;font-weight:600}.onboarding-coachmark__progress[data-v-18b8e632]{letter-spacing:.1em;text-transform:uppercase;color:#8a7f72;margin:0;font-size:.67rem;font-weight:700}.onboarding-coachmark__title[data-v-18b8e632]{color:#2b2621;margin:.45rem 0 0;font-size:1rem;font-weight:700}.onboarding-coachmark__copy[data-v-18b8e632]{color:#5d544a;margin:.55rem 0 0;font-size:.86rem;line-height:1.45}.onboarding-coachmark__team[data-v-18b8e632]{color:#5d544a;background:#fcfaf6;border:1px solid #dbc6a3;border-radius:.8rem;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.75rem;padding:.55rem .75rem;font-size:.8rem;line-height:1.4;text-decoration:none;transition:background-color .12s,border-color .12s;display:flex}.onboarding-coachmark__team[data-v-18b8e632]:hover{background:#f8efde;border-color:#bb842e}.onboarding-coachmark__team-title[data-v-18b8e632]{color:#2b2621;font-weight:700;display:block}.onboarding-coachmark__team-arrow[data-v-18b8e632]{color:#8b611f;font-weight:700}.onboarding-coachmark__actions[data-v-18b8e632]{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.9rem;display:flex}.onboarding-coachmark__button[data-v-18b8e632]{letter-spacing:.08em;text-transform:uppercase;border:1px solid #0000;border-radius:.75rem;padding:.55rem .95rem;font-size:.73rem;font-weight:700;transition:background-color .12s,border-color .12s}.onboarding-coachmark__button[data-v-18b8e632]:disabled{cursor:not-allowed;opacity:.6}.onboarding-coachmark__button--primary[data-v-18b8e632]{color:#fcfaf6;background:#8b611f;border-color:#8b611f}.onboarding-coachmark__button--primary[data-v-18b8e632]:hover:not(:disabled){background:#6f4c17;border-color:#6f4c17}.onboarding-coachmark__button--ghost[data-v-18b8e632]{color:#7b7266;background:0 0;border-color:#d7c3a4}.onboarding-coachmark__button--ghost[data-v-18b8e632]:hover:not(:disabled){color:#2b2621;border-color:#bb842e}.onboarding-coachmark-backdrop[data-v-b43ec4ce]{z-index:130;pointer-events:none;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#2b262121;position:fixed;inset:0}.onboarding-celebration[data-v-b43ec4ce]{z-index:150;pointer-events:none;position:fixed;inset:0}.onboarding-celebration__particle[data-v-b43ec4ce]{width:var(--particle-size);height:var(--particle-size);background:var(--particle-color);animation:1.2s ease-out forwards onboarding-burst-b43ec4ce;animation-delay:var(--particle-delay);opacity:0;border-radius:999px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.onboarding-celebration__particle.is-note[data-v-b43ec4ce]{background:0 0;border-radius:0;width:auto;height:auto}.onboarding-celebration__note[data-v-b43ec4ce]{color:var(--particle-color);font-size:calc(var(--particle-size) * 2);transform:rotate(var(--particle-rotate));font-weight:700;line-height:1;display:inline-flex}@keyframes onboarding-burst-b43ec4ce{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--particle-x)), calc(-50% + var(--particle-y))) scale(1) rotate(var(--particle-rotate))}}.nudge-slide-enter-active[data-v-2b0b827b],.nudge-slide-leave-active[data-v-2b0b827b]{transition:transform .22s,opacity .22s}.nudge-slide-enter-from[data-v-2b0b827b],.nudge-slide-leave-to[data-v-2b0b827b]{opacity:0;transform:translateY(8px)}.post-onboarding-nudge[data-v-2b0b827b]{z-index:130;background:#fcfaf6;border:1px solid #d7d1c8;border-radius:1rem;width:min(21rem,100vw - 2rem);padding:.9rem 1rem 1rem;position:fixed;bottom:1rem;right:1rem;box-shadow:0 10px 24px #2b262129}.post-onboarding-nudge__close[data-v-2b0b827b]{color:#8a7f72;background:0 0;border:0;font-size:1.1rem;line-height:1;position:absolute;top:.4rem;right:.55rem}.post-onboarding-nudge__title[data-v-2b0b827b]{color:#2b2621;margin:0;padding-right:1.2rem;font-size:.93rem;font-weight:700}.post-onboarding-nudge__description[data-v-2b0b827b]{color:#5d544a;margin:.4rem 0 0;font-size:.8rem;line-height:1.4}.post-onboarding-nudge__cta[data-v-2b0b827b]{color:#fcfaf6;letter-spacing:.08em;text-transform:uppercase;background:#bb842e;border:1px solid #bb842e;border-radius:.75rem;margin-top:.75rem;padding:.5rem .8rem;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex}.post-onboarding-nudge__cta[data-v-2b0b827b]:hover{background:#a8762a}
