@import "https://fonts.googleapis.com/css2?family=DynaPuff:wght@400..700&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap";.theme_light{--primary-color:#306fce;--background-color:#fff;--accent-background-color:#f3f7fe;--font-color:#000;--light-font-color:#7993bc}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{-webkit-user-select:none;user-select:none;width:100%;height:100%;font-family:Ubuntu,sans-serif;overflow:hidden}@keyframes loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(1px);-webkit-tap-highlight-color:transparent;overscroll-behavior:contain;touch-action:manipulation;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-sheet{width:100%;max-width:640px;padding-bottom:env(safe-area-inset-bottom,0px);will-change:transform;touch-action:none;background:#fff;border-top-left-radius:20px;border-top-right-radius:20px;flex-direction:column;max-height:90vh;display:flex;position:relative;box-shadow:0 -8px 32px #0000001a}.modal-sheet__drag-handle{box-sizing:content-box;cursor:grab;touch-action:none;background:#d0d0d0 padding-box content-box;border-radius:2px;flex-shrink:0;width:44px;height:4px;margin:8px auto;padding:12px 24px}.container{background-color:var(--background-color);width:100%;height:100%;color:var(--font-color);flex-direction:column;display:flex}.loader{-webkit-user-select:none;user-select:none;background-color:var(--primary-color);justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.loader__title{font-optical-sizing:auto;color:#fff;font-family:DynaPuff,system-ui;font-size:6rem;font-style:normal;font-weight:600}.set_group{background-color:var(--background-color);flex-direction:column;align-items:center;width:100%;height:100%;padding:3rem 1.5rem 2rem;display:flex}.set_group__inner{flex-direction:column;width:100%;max-width:26rem;animation:.45s cubic-bezier(.4,0,.2,1) setGroupFadeIn;display:flex;position:relative}@keyframes setGroupFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.set_group__title{text-align:center;letter-spacing:.02em;font-size:2rem;font-weight:600}.set_group__subtitle{text-align:center;color:var(--light-font-color);margin-top:.4rem;font-size:1.05rem}.set_group__form{width:100%;margin-top:2.25rem;position:relative}.set_group__input-wrap{width:100%;position:relative}.set_group__input{border:2px solid var(--primary-color);background-color:var(--accent-background-color);width:100%;color:var(--font-color);box-shadow:0 6px 18px -12px var(--primary-color);border-radius:1.2rem;outline:none;padding:.85rem 2.6rem .85rem 1.2rem;font-size:1.3rem;transition:border-color .2s,box-shadow .25s,transform .15s}.set_group__input::placeholder{color:var(--light-font-color)}.set_group__input:focus{box-shadow:0 10px 28px -12px var(--primary-color);transform:translateY(-1px)}.set_group__results{flex-direction:column;gap:.5rem;width:100%;margin-top:1rem;animation:.18s ease-out setGroupDropdown;display:flex}.set_group__results--centered{justify-content:center;align-items:center}.set_group__results__item{background-color:var(--accent-background-color);cursor:pointer;color:var(--font-color);-webkit-tap-highlight-color:transparent;border-radius:1rem;padding:.5rem 1rem;font-size:1.2rem;transition:background-color .15s,color .15s,transform .1s}.set_group__results__item:hover,.set_group__results__item:active{background-color:var(--primary-color);color:var(--background-color)}.set_group__results__item:active{transform:scale(.985)}.set_group__results__placeholder{color:var(--light-font-color);opacity:.6;text-align:center;margin:0;font-size:1.2rem}@keyframes setGroupDropdown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.header{-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:1rem;display:flex}.header__left__title{letter-spacing:5%;font-size:1.5rem;font-weight:600}.header__left__group{color:var(--light-font-color);margin-top:.2rem;font-size:.9rem}.header__right{color:var(--light-font-color)}.menu-modal{background:var(--background-color);flex-direction:column;gap:2.5rem;padding:1rem 1rem 2.5rem;display:flex;overflow-y:auto}.menu-modal__section{flex-direction:column;gap:1rem;display:flex}.menu-modal__item{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;align-items:center;gap:.7rem;display:flex}.menu-modal__item--clickable{cursor:pointer}.menu-modal__item--clickable:active{background:#f2f2f7}.menu-modal__icon{border-radius:.7rem;flex-shrink:0;justify-content:center;align-items:center;width:2.3rem;height:2.3rem;display:flex}.menu-modal__title{color:#111;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1rem;line-height:1.2;overflow:hidden}.menu-modal__right{color:var(--light-font-color);opacity:.6;flex-shrink:0;align-items:center;gap:6px;font-size:1rem;display:flex}.menu-modal__chevron{color:var(--light-font-color);opacity:.6;flex-shrink:0}.groups_modal{padding:1rem 1rem 2.5rem}.groups_modal__title{font-size:1.5rem;font-weight:500}.groups_modal__form{margin-top:1.5rem}.groups_modal__form__hint{color:var(--light-font-color);font-size:1.1rem}.groups_modal__form__input-wrap{width:100%;margin-top:.3rem;position:relative}.groups_modal__form__input{border:2px solid var(--primary-color);border-radius:1rem;outline:none;width:100%;padding:.5rem 2.2rem .5rem .8rem;font-size:1.2rem}.groups_modal__results{flex-direction:column;gap:.5rem;width:100%;height:15rem;margin-top:1rem;display:flex;overflow:auto}.groups_modal__results__item{background-color:var(--accent-background-color);border-radius:1rem;padding:.5rem 1rem;font-size:1.2rem}.groups_modal__results--centered{justify-content:center;align-items:center}.groups_modal__results__placeholder{color:var(--light-font-color);opacity:.6;text-align:center;margin:0;font-size:1.2rem}.day_list{-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;margin-bottom:.5rem}.day_list::-webkit-scrollbar{display:none}.day_list__inner{height:100%;position:relative}.day_list__item{box-sizing:border-box;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;color:#000;flex-direction:column;justify-content:space-between;align-items:center;width:100%;min-width:0;height:100%;padding:.5rem .25rem;transition:color .3s cubic-bezier(.4,0,.2,1);display:flex}.day_list__item__day{color:var(--light-font-color);white-space:nowrap;font-size:.7rem;line-height:1}.day_list__item__date{white-space:nowrap;align-items:flex-start;margin-top:.1rem;font-size:1.1rem;font-weight:500;line-height:1;display:flex}.day_list__item__date>span{opacity:.6;margin-left:.1rem;font-size:.8rem;font-weight:400}.day_list__item__dot{aspect-ratio:1;background-color:var(--primary-color);opacity:0;border-radius:50%;height:4px;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.day_list__item__active>.day_list__item__day{color:var(--primary-color);font-weight:600}.day_list__item__active>.day_list__item__date{color:var(--primary-color)}.day_list__item__active>.day_list__item__dot{opacity:1}.day_list__item__disabled{opacity:.6}.day_list__item__disabled>.day_list__item__date{color:var(--light-font-color)}.schedule{flex-direction:column;flex:1;padding:1rem;display:flex;overflow:auto}.schedule_lesson{gap:.5rem;width:100%;display:flex}.schedule_lesson__times{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;width:13vw;display:flex}.schedule_lesson__times__start{white-space:nowrap;font-size:1.1rem;font-weight:500}.schedule_lesson__times__end{color:var(--light-font-color);white-space:nowrap}.schedule_lesson__line{flex-direction:column;flex:none;align-items:center;width:max-content;display:flex}.schedule_lesson__line__dot{aspect-ratio:1;border:2px solid var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;height:1rem;margin-top:.2rem;display:flex}.schedule_lesson__line__dot__inner{aspect-ratio:1;background-color:var(--primary-color);border-radius:50%;height:.3rem}.schedule_lesson__line__line{background-color:var(--primary-color);flex:1;width:2px;margin:.2rem 0}.schedule_lesson__content__wrapper{padding-bottom:1rem}.schedule_lesson__content{background-color:var(--accent-background-color);border-radius:1rem;flex:1;min-width:0;padding:1.5rem}.schedule_lesson__content__title{font-size:1rem;font-weight:500}.schedule_lesson__content__type{color:var(--light-font-color);margin-top:.5rem;margin-bottom:1.5rem}.schedule_lesson__content__type>span{color:var(--light-font-color)}.schedule_lesson__active>.schedule_lesson__content__type>span{color:var(--background-color);opacity:.5}.schedule_lesson__past{opacity:.5}.schedule_lesson__content__meta{gap:.5rem;margin-top:.5rem;display:flex}.schedule_lesson__content__meta__icon{color:var(--light-font-color)}.schedule_lesson__content__meta__data{font-size:.9rem}.schedule_lesson__active{color:var(--background-color);background-color:var(--primary-color)!important}.schedule_lesson__active>.schedule_lesson__content__meta>.schedule_lesson__content__meta__icon{color:var(--background-color);opacity:.5}.schedule-viewport{flex:1;min-height:0;position:relative;overflow:hidden}.schedule-page{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;position:absolute;inset:0;overflow-y:auto}.schedule-page::-webkit-scrollbar{display:none}.schedule--centered{justify-content:center;align-items:center;height:100%;display:flex}.schedule__empty-title{text-align:center;margin:0;font-size:1.7rem;font-weight:500}.schedule__empty-subtitle{text-align:center;color:var(--light-font-color);margin-top:.5rem;margin-bottom:30%;font-size:1.1rem}.schedule__empty-image{aspect-ratio:1;width:80%;margin-bottom:1rem}.install{box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none;background:radial-gradient(circle at 20% 0,#f4f7fe 0%,#0000 55%),radial-gradient(circle at 100% 100%,#eef3fc 0%,#0000 50%),#fff;justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:2rem;display:flex;position:relative;overflow:hidden auto}.install::-webkit-scrollbar{display:none}.install__blob{filter:blur(80px);opacity:.55;pointer-events:none;will-change:transform;border-radius:50%;position:absolute}.install__blob--1{background:radial-gradient(circle,#cddffb 0%,#0000 70%);width:420px;height:420px;animation:14s ease-in-out infinite install-float-1;top:-120px;left:-120px}.install__blob--2{background:radial-gradient(circle,#d7e6fd 0%,#0000 70%);width:360px;height:360px;animation:18s ease-in-out infinite install-float-2;bottom:-100px;right:-80px}.install__blob--3{background:radial-gradient(circle,#e3ecfd 0%,#0000 70%);width:300px;height:300px;animation:22s ease-in-out infinite install-float-3;top:45%;left:55%}@keyframes install-float-1{0%,to{transform:translate(0)scale(1)}50%{transform:translate(40px,30px)scale(1.08)}}@keyframes install-float-2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-30px,-20px)scale(1.05)}}@keyframes install-float-3{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-50px,20px)scale(.95)}}.install__card{z-index:1;-webkit-backdrop-filter:blur(20px);box-sizing:border-box;background:#ffffffb8;border:1px solid #ffffffe6;border-radius:28px;width:100%;max-width:1180px;padding:3rem;position:relative;box-shadow:0 20px 60px -20px #306fce2e,0 4px 20px -8px #306fce14}.install__content{align-items:center;gap:4rem;display:flex}.install__content__left{flex-direction:column;flex:1.1;min-width:0;display:flex}.install__badge{letter-spacing:.08em;text-transform:uppercase;color:var(--primary-color,#306fce);background:#306fce1a;border-radius:999px;align-self:flex-start;margin-bottom:1.25rem;padding:.35rem .85rem;font-size:.75rem;font-weight:600;display:inline-block}.install__content__left__title{letter-spacing:-.02em;color:#0f1e3d;margin:0;font-size:clamp(2rem,3.5vw,3.25rem);font-weight:700;line-height:1.1}.install__content__left__title br{display:none}.install__content__left__subtitle{color:#4b5675;max-width:30rem;margin:1.25rem 0 0;font-size:1.05rem;line-height:1.55}.install__guide{margin-top:2.25rem}.install__guide__title{color:#0f1e3d;margin:0 0 .5rem;font-size:1rem;font-weight:600}.install__guide__content{color:#6b7280;margin:0 0 1.25rem;font-size:.95rem;line-height:1.55}.install__qr{background:#fff;border-radius:16px;padding:.75rem;display:inline-flex;box-shadow:0 8px 24px -12px #306fce59}.install__qr__image{border-radius:10px;width:180px;height:180px;display:block}.install__button__container{padding:.5rem 0}.install__button{color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;background:linear-gradient(135deg,#306fce 0%,#4a86e8 100%);border:none;border-radius:14px;justify-content:center;align-items:center;padding:1rem 1.75rem;font-family:inherit;font-size:1rem;font-weight:600;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 10px 24px -8px #306fce8c,inset 0 1px #ffffff40}.install__button:active{transform:translateY(1px)scale(.98);box-shadow:0 6px 16px -8px #306fce99}.install__button__or{text-align:center;color:var(--light-font-color);opacity:.6;margin-top:.5rem}.install__steps{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.install__steps__item{color:#2a3350;background:#306fce0d;border:1px solid #306fce14;border-radius:14px;align-items:center;gap:.9rem;padding:.85rem 1rem;font-size:.95rem;line-height:1.4;display:flex}.install__steps__num{color:#fff;background:linear-gradient(135deg,#306fce 0%,#4a86e8 100%);border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:.8rem;font-weight:700;display:inline-flex}.install__steps__text{flex:1;min-width:0}.install__done{background:#22c55e14;border:1px solid #22c55e33;border-radius:14px;align-items:center;gap:.9rem;padding:1rem 1.25rem;display:flex}.install__done__icon{color:#fff;background:#22c55e;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;font-weight:700;display:inline-flex}.install__done__text{color:#14532d;margin:0;font-size:.95rem;line-height:1.4}.install__content__right{flex:.9;justify-content:center;align-items:center;min-width:0;display:flex}.install__mockup{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.install__mockup__glow{filter:blur(40px);z-index:0;pointer-events:none;background:radial-gradient(circle,#306fce47 0%,#0000 65%);border-radius:50%;width:80%;height:80%;position:absolute}.install__mockup__image{z-index:1;object-fit:contain;filter:drop-shadow(0 30px 40px #0f1e3d2e);width:auto;max-width:100%;height:auto;max-height:62dvh;display:block;position:relative}@media (width<=999px){.install{padding:1.5rem}.install__card{border-radius:24px;padding:2.25rem}.install__content{gap:2.5rem}.install__content__left__title{font-size:clamp(1.75rem,3.5vw,2.5rem)}.install__content__left__subtitle{font-size:1rem}.install__mockup__image{max-height:55dvh}}@media (width<=699px){.install{background:radial-gradient(circle at 0 0,#eaf1fd 0%,#0000 55%),radial-gradient(circle at 100% 100%,#eef3fc 0%,#0000 60%),#fff;align-items:flex-start;padding:1rem .9rem 1.5rem}.install__blob{filter:blur(60px);opacity:.5}.install__blob--1{width:260px;height:260px;top:-80px;left:-80px}.install__blob--2{width:220px;height:220px;bottom:-60px;right:-60px}.install__blob--3{display:none}.install__card{background:#ffffffd9;border-radius:22px;padding:1.75rem 1.25rem}.install__content{flex-direction:column;align-items:stretch;gap:0}.install__content__left,.install__content__right{flex:none;width:100%}.install__badge{align-self:center;margin-bottom:1rem}.install__content__left__title{text-align:center;font-size:1.75rem;line-height:1.2}.install__content__left__title br{display:block}.install__content__left__subtitle{text-align:center;max-width:none;margin-top:.9rem;font-size:.95rem}.install__guide{margin-top:1.5rem}.install__guide__title{text-align:center;font-size:.95rem}.install__guide__content{text-align:center}.install__button{width:100%;padding:1rem 1.25rem}.install__steps__item{padding:.75rem .9rem;font-size:.9rem}.install__content__right{order:2;margin-top:1.75rem}.install__content__left{order:1}.install__mockup__image{filter:drop-shadow(0 20px 28px #0f1e3d29);max-height:36dvh}.install__mockup__glow{filter:blur(30px);width:70%;height:70%}.install__qr__image{width:160px;height:160px}}@media (width<=380px){.install{padding:.75rem .65rem 1.25rem}.install__card{border-radius:18px;padding:1.5rem 1rem}.install__content__left__title{font-size:1.5rem}.install__content__left__subtitle{font-size:.88rem}.install__steps__item{gap:.7rem;padding:.7rem .8rem;font-size:.85rem}.install__steps__num{width:22px;height:22px;font-size:.72rem}.install__mockup__image{max-height:30dvh}}
