.courses-overview-module__q0vBdq__header{grid-template-columns:auto 1fr;gap:1rem;width:100%;display:grid}.courses-overview-module__q0vBdq__createButton{align-items:center;gap:.5rem;display:flex}.courses-overview-module__q0vBdq__table{max-height:calc(100% - 8rem);overflow-y:auto}.courses-overview-module__q0vBdq__tableHeader{z-index:10;background-color:#e5edee;position:sticky;top:0}.courses-overview-module__q0vBdq__descriptionCell{text-overflow:ellipsis;white-space:nowrap;max-width:400px;overflow:hidden}
.new-course-class-module__KuWa9q__tabs{max-height:100%;overflow-y:hidden}.new-course-class-module__KuWa9q__tabsContent{max-height:calc(100% - 3rem)}
.calendar-header-module__uCkimW__calendarHeader{--border-color:var(--color-primary);grid-template-columns:subgrid;border-bottom:1px solid var(--border-color);z-index:10;background:#edf0f3;grid-area:span 2/span 8;display:grid;position:sticky;top:0}.calendar-header-module__uCkimW__dayNumber{font-size:1.75rem;font-weight:600}.calendar-header-module__uCkimW__weekHeader{border-right:1px solid var(--border-color);padding:.5rem}.calendar-header-module__uCkimW__dayHeader,.calendar-header-module__uCkimW__singleDayHeader{background-color:#edf0f3;padding:.5rem}.calendar-header-module__uCkimW__singleDayHeader{grid-column:span 7}.calendar-header-module__uCkimW__today{--border-color:var(--color-secondary);background-color:#a93d8654}
.planning-calendar-module__16BDYq__calendarWrapper{grid-template-rows:auto 1fr;height:calc(100% - 3.25rem);display:grid}.planning-calendar-module__16BDYq__planningCalendar{border:1px solid var(--color-primary);scrollbar-width:thin;border-radius:.75rem;grid-template-rows:auto auto repeat(30,minmax(1.75rem,1fr));grid-template-columns:3.75rem repeat(7,1fr);height:100%;display:grid;overflow-y:auto}.planning-calendar-module__16BDYq__errorContainer{height:100%;color:var(--color-error,#e11d48);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.planning-calendar-module__16BDYq__errorContainer p{margin-bottom:1rem;font-weight:500}.planning-calendar-module__16BDYq__skeleton{background:linear-gradient(90deg,#0000000f 0%,#0000001f 50%,#0000000f 100%) 0 0/200% 100%;border-radius:.25rem;animation:1.5s infinite planning-calendar-module__16BDYq__shimmer}@keyframes planning-calendar-module__16BDYq__shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}
.calendar-time-indicator-module__kyTmlq__timeGrid{grid-template-columns:subgrid;grid-template-rows:subgrid;grid-area:span 30/1;display:grid}.calendar-time-indicator-module__kyTmlq__timeCell{grid-template-columns:subgrid;grid-template-rows:subgrid;border-right:1px solid var(--color-primary);grid-area:span 2/1;padding:.15rem .5rem;font-size:.75rem;display:grid}
.calendar-column-module__zzyhBW__calendarColumn{--border-color:var(--color-primary);grid-template-columns:subgrid;grid-template-rows:subgrid;grid-row:span 30;grid-column:var(--calendar-column,2);--cell-height:minmax(1.25rem,1fr);display:grid;position:relative}.calendar-column-module__zzyhBW__calendarColumn:not(:last-of-type) .calendar-column-module__zzyhBW__calendarCell{border-right:1px solid var(--border-color)}.calendar-column-module__zzyhBW__calendarCell{background-color:var(--cell-background-color)}.calendar-column-module__zzyhBW__calendarCell:not(:last-of-type){border-bottom:1px solid var(--border-color)}.calendar-column-module__zzyhBW__today{--cell-background-color:#a93d871c;--border-color:var(--color-secondary)}.calendar-column-module__zzyhBW__day,.calendar-column-module__zzyhBW__day .calendar-column-module__zzyhBW__calendarCell{grid-column:span 7}
.calendar-cell-module__2EVkjq__calendarCell{height:100%}.calendar-cell-module__2EVkjq__selected{background:#0099633b}
.course-detail-module__ST6L1G__header{grid-template-columns:auto auto;justify-content:start;gap:2rem;width:100%;display:grid}.course-detail-module__ST6L1G__createButton{align-items:center;gap:.5rem;display:flex}
.signup-module__8Fjwta__signupPage{background-color:var(--backgrounds-tui-background-alt);width:100%;min-height:100vh}.signup-module__8Fjwta__signupContainer{min-height:100vh}.signup-module__8Fjwta__backgroundImage{display:none}.signup-module__8Fjwta__quote{z-index:2;text-shadow:0 1px 2px #000c;max-width:90%;margin-top:40px;padding:20px;font-size:16px;font-weight:200;line-height:1.4}.signup-module__8Fjwta__poweredBy{margin-top:20px;font-size:14px}.signup-module__8Fjwta__formSection{background:url(/login-image.png) 50%/cover no-repeat;flex-direction:column;width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.signup-module__8Fjwta__formContainer{-webkit-backdrop-filter:blur(16px);background:#0006;flex-direction:column;min-height:100vh;padding:2rem 1.5rem;display:flex;position:relative}.signup-module__8Fjwta__headerContainer{text-align:center;flex-shrink:0;margin-bottom:1rem;padding-bottom:1.5rem;position:relative}.signup-module__8Fjwta__formWrapper{flex:1;padding-bottom:2rem;overflow-y:auto}:is(.signup-module__8Fjwta__formWrapper [data-slot=form-item-label],.signup-module__8Fjwta__formWrapper label){color:var(--text-color-inverse)}.signup-module__8Fjwta__formWrapper [data-slot=form-item-description]{color:#ffffffb3}.signup-module__8Fjwta__welcomeText{color:var(--text-color-inverse);z-index:1;max-width:100%;font-size:26px;font-weight:300;line-height:1.2;position:relative}.signup-module__8Fjwta__highlight{color:var(--text-color-inverse);font-size:2rem;font-weight:700;position:relative}.signup-module__8Fjwta__highlight:before{content:"";background-color:var(--backgrounds-tui-background-accent-2);z-index:-1;width:4.5rem;height:.625rem;position:absolute;bottom:.25rem}.signup-module__8Fjwta__subtitle{color:var(--text-color-muted);margin-top:.75rem;font-size:.95rem}.signup-module__8Fjwta__avatarSection{flex-direction:column;align-items:center;margin-bottom:1.5rem;display:flex}.signup-module__8Fjwta__avatarPreview{border:3px solid var(--backgrounds-tui-background-accent-2);background-color:var(--backgrounds-tui-background-base);border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;margin-bottom:.75rem;display:flex;overflow:hidden}.signup-module__8Fjwta__avatarImage{object-fit:cover;width:100%;height:100%}.signup-module__8Fjwta__avatarPlaceholder{color:var(--text-color-muted);font-size:2.5rem}.signup-module__8Fjwta__uploadButton{margin-top:.25rem}.signup-module__8Fjwta__form{flex-direction:column;gap:1.25rem;width:100%;display:flex}.signup-module__8Fjwta__formRow{flex-direction:column;gap:1rem;display:flex}.signup-module__8Fjwta__submitButton{margin-top:1.5rem;padding:1rem 2rem;font-size:1.1rem;font-weight:600}.signup-module__8Fjwta__loginLink{text-align:center;color:var(--text-color-muted);margin-top:1rem;font-size:.9rem}.signup-module__8Fjwta__loginLink a{color:var(--backgrounds-tui-background-accent-2);font-weight:500;text-decoration:none}.signup-module__8Fjwta__loginLink a:hover{text-decoration:underline}.signup-module__8Fjwta__successContainer{text-align:center;padding:2rem}.signup-module__8Fjwta__successIcon{color:var(--color-success);margin-bottom:1.5rem}.signup-module__8Fjwta__successTitle{color:var(--text-color-inverse);margin-bottom:1rem;font-size:1.5rem;font-weight:600}.signup-module__8Fjwta__successMessage{color:var(--text-color-muted);margin-bottom:2rem;line-height:1.5}.signup-module__8Fjwta__errorMessage{color:var(--color-error);border-radius:var(--border-radius-md);background-color:#ef44441a;border:1px solid #ef44444d;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.signup-module__8Fjwta__passwordRequirements{color:var(--text-color-muted);margin-top:.25rem;font-size:.8rem}@media (min-width:768px){.signup-module__8Fjwta__signupPage{flex-direction:row;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex;position:relative}.signup-module__8Fjwta__signupContainer{border-radius:var(--border-radius-xl);background-image:none;grid-template-columns:1fr 2fr;width:min(90dvw,85rem);min-height:auto;max-height:90dvh;display:grid;overflow:hidden;box-shadow:0 0 33px 5px #a3bdfa66}.signup-module__8Fjwta__backgroundImage{background:url(/login-image.png) 50%/cover;justify-content:flex-start;min-height:600px;display:block;position:relative}.signup-module__8Fjwta__quote{color:var(--text-color-inverse);padding:40px;position:absolute;bottom:0}.signup-module__8Fjwta__formSection{min-height:auto;max-height:90dvh;box-shadow:none;background-color:var(--backgrounds-tui-background-base);background-image:none;flex-direction:column;display:flex;overflow:hidden}.signup-module__8Fjwta__formContainer{border-radius:var(--border-radius-xl);background:0 0;flex-direction:column;width:100%;min-height:auto;max-height:90dvh;padding:2rem 2rem 0;display:flex}.signup-module__8Fjwta__headerContainer{flex-shrink:0;margin-bottom:0;padding-bottom:1.5rem}.signup-module__8Fjwta__formWrapper{flex:1;width:100%;max-width:min(100%,38rem);margin:0 auto;padding:0 1rem 2rem;overflow-y:auto}:is(.signup-module__8Fjwta__formWrapper [data-slot=form-item-label],.signup-module__8Fjwta__formWrapper label){color:var(--text-color)}.signup-module__8Fjwta__formWrapper [data-slot=form-item-description]{color:var(--text-color-muted)}.signup-module__8Fjwta__welcomeText,.signup-module__8Fjwta__highlight{color:var(--text-color)}.signup-module__8Fjwta__welcomeText{font-size:2rem}.signup-module__8Fjwta__subtitle{color:var(--text-color-muted)}.signup-module__8Fjwta__formRow{flex-direction:row;gap:1.5rem}.signup-module__8Fjwta__formRow>*{flex:1}.signup-module__8Fjwta__avatarSection{margin-bottom:2rem}.signup-module__8Fjwta__avatarPreview{width:110px;height:110px}.signup-module__8Fjwta__successTitle{color:var(--text-color)}.signup-module__8Fjwta__loginLink{color:var(--text-color-muted)}}@media (min-width:1024px){.signup-module__8Fjwta__signupContainer{width:min(85dvw,80rem)}.signup-module__8Fjwta__formContainer{padding:3rem 2.5rem}}@media (min-width:1280px){.signup-module__8Fjwta__signupContainer{width:min(80dvw,75rem)}}
.page-header-module__ZCPxYq__header{grid-area:header;justify-content:space-between;align-items:center;padding:1rem 0;display:flex}.page-header-module__ZCPxYq__bellContainer{color:var(--text-color-inverse);cursor:pointer;background-color:#48a6b1b5;border-radius:50%;padding:.75rem}.page-header-module__ZCPxYq__bellContainer:hover{background-color:#48a6b1}.page-header-module__ZCPxYq__title,.page-header-module__ZCPxYq__mobileTitle{font-family:Inter;font-size:2.25rem;font-style:normal;font-weight:200;line-height:normal}.page-header-module__ZCPxYq__mobileTitle{font-size:1.5rem}@media (min-width:768px){.page-header-module__ZCPxYq__header{grid-area:header}.page-header-module__ZCPxYq__title{font-size:2rem}}
.notification-item-module__hIXJsq__container{cursor:pointer;border-bottom:1px solid var(--notification-item-border,#f3f4f6);padding:16px 20px;transition:background-color .2s;display:flex}.notification-item-module__hIXJsq__container:last-child{border-bottom:none}.notification-item-module__hIXJsq__container:hover{background-color:var(--notification-item-hover-bg,#f9fafb)}.notification-item-module__hIXJsq__unread{background-color:var(--notification-unread-bg,#fef3c7)}.notification-item-module__hIXJsq__unread:hover{background-color:var(--notification-unread-hover-bg,#fde68a)}.notification-item-module__hIXJsq__read{background-color:#0000}.notification-item-module__hIXJsq__iconContainer{background-color:var(--notification-icon-bg,#e5e7eb);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;margin-right:12px;display:flex}.notification-item-module__hIXJsq__content{flex:1;min-width:0}.notification-item-module__hIXJsq__header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.notification-item-module__hIXJsq__typeBadge{text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:500}.notification-item-module__hIXJsq__type-class{background-color:var(--notification-class-bg,#dbeafe);color:var(--notification-class-color,#1e40af);border-color:var(--notification-class-border,#93c5fd)}.notification-item-module__hIXJsq__type-info{background-color:var(--notification-info-bg,#d1fae5);color:var(--notification-info-color,#065f46);border-color:var(--notification-info-border,#6ee7b7)}.notification-item-module__hIXJsq__type-course{background-color:var(--notification-course-bg,#fef3c7);color:var(--notification-course-color,#92400e);border-color:var(--notification-course-border,#fbbf24)}.notification-item-module__hIXJsq__type-substitution{background-color:var(--notification-substitution-bg,#fce7f3);color:var(--notification-substitution-color,#be185d);border-color:var(--notification-substitution-border,#f9a8d4)}.notification-item-module__hIXJsq__type-waitlist{background-color:var(--notification-waitlist-bg,#fef3c7);color:var(--notification-waitlist-color,#b45309);border-color:var(--notification-waitlist-border,#fcd34d)}.notification-item-module__hIXJsq__timestamp{color:var(--notification-timestamp-color,#9ca3af);font-size:11px}.notification-item-module__hIXJsq__message{color:var(--notification-message-color,#374151);word-wrap:break-word;margin:0 0 8px;font-size:14px;line-height:1.4}.notification-item-module__hIXJsq__classInfo,.notification-item-module__hIXJsq__courseInfo{color:var(--notification-detail-color,#6b7280);align-items:center;gap:8px;font-size:12px;display:flex}.notification-item-module__hIXJsq__className,.notification-item-module__hIXJsq__courseName{color:var(--notification-detail-name-color,#374151);font-weight:500}.notification-item-module__hIXJsq__classTime{font-family:monospace}
.notification-list-module__oKVkaW__container{flex-direction:column;height:100%;display:flex}.notification-list-module__oKVkaW__header{background-color:var(--notification-header-bg,#f9fafb);border-bottom:1px solid var(--notification-header-border,#e5e7eb);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.notification-list-module__oKVkaW__title{color:var(--notification-title-color,#111827);margin:0;font-size:16px;font-weight:600}.notification-list-module__oKVkaW__markAllReadButton{color:var(--notification-mark-read-color,#6b7280);height:auto;padding:4px 8px;font-size:12px;text-decoration:underline}.notification-list-module__oKVkaW__markAllReadButton:hover{color:var(--notification-mark-read-hover-color,#374151)}.notification-list-module__oKVkaW__scrollArea{flex:1;max-height:400px}.notification-list-module__oKVkaW__loadingContainer{color:var(--notification-loading-color,#6b7280);flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;display:flex}.notification-list-module__oKVkaW__spinner{border:2px solid var(--notification-spinner-border,#e5e7eb);border-top:2px solid var(--notification-spinner-top,#3b82f6);border-radius:50%;width:24px;height:24px;margin-bottom:12px;animation:1s linear infinite notification-list-module__oKVkaW__spin}@keyframes notification-list-module__oKVkaW__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.notification-list-module__oKVkaW__emptyContainer{color:var(--notification-empty-color,#9ca3af);justify-content:center;align-items:center;padding:40px 20px;font-style:italic;display:flex}.notification-list-module__oKVkaW__notificationsContainer{padding:8px 0}
.notification-bell-module__dJ-Qna__bellContainer{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:background-color .2s;display:flex;position:relative}.notification-bell-module__dJ-Qna__bellContainer:hover{background-color:var(--notification-bell-hover-bg,#0000000d)}.notification-bell-module__dJ-Qna__badge{border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;font-size:11px;font-weight:600;animation:2s infinite notification-bell-module__dJ-Qna__pulse;display:flex;position:absolute;top:0;right:0;transform:translate(50%,-50%)}@keyframes notification-bell-module__dJ-Qna__pulse{0%{box-shadow:0 0 #48a6b1b3}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}.notification-bell-module__dJ-Qna__popoverContent{border:1px solid var(--notification-popover-border,#e5e7eb);background-color:var(--notification-popover-bg,#fff);border-radius:12px;width:400px;max-width:90vw;max-height:500px;padding:0;box-shadow:0 10px 25px #00000026}
.booking-page-client-module__YHQJTG__mainContainer{width:100%;max-height:calc(100dvh - 8rem);padding-bottom:7.5rem;overflow-y:auto;container-type:inline-size}@container (max-width:340px){.booking-page-client-module__YHQJTG__cardContainer{grid-template-columns:1fr}}
