.btn-press{transition:transform .15s ease,box-shadow .15s ease}.btn-press:active{box-shadow:none;transform:scale(.96)}.card-hover{transition:transform .25s ease,box-shadow .25s ease}.card-hover:active{box-shadow:0 .2rem .6rem rgba(0,0,0,.1);transform:translateY(-.05rem)}.btn-gradient{background:#3a86ff;border:none;border-radius:24.975rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);color:#fff;font-weight:500;padding:.6rem 1.2rem;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.btn-gradient:active{opacity:.9;transform:scale(.96)}.glass-card{background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);transition:transform .25s ease,box-shadow .25s ease}.glass-card:active{box-shadow:0 .1rem .4rem rgba(0,0,0,.08);transform:translateY(-.05rem)}.navbar-glass{backdrop-filter:saturate(180%) blur(.75rem);-webkit-backdrop-filter:saturate(180%) blur(.75rem);background:hsla(0,0%,100%,.78);border-bottom:.025rem solid rgba(0,0,0,.06);box-shadow:inset 0 .025rem 0 hsla(0,0%,100%,.5),0 .025rem .1rem rgba(0,0,0,.03)}page{background:#f5f7fa;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,sans-serif;font-size:.75rem;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:#f5f7fa}taro-button-core,taro-input-core,taro-text-core,taro-view-core{box-sizing:border-box}::-webkit-scrollbar{display:none!important;height:0!important;width:0!important}*,*::after,*::before{scrollbar-width:none!important;-ms-overflow-style:none!important}#app,body,html{overflow-x:hidden!important;-ms-overflow-style:none!important;scrollbar-width:none!important}.about-page::-webkit-scrollbar,.attendance-page::-webkit-scrollbar,.class-workspace__content::-webkit-scrollbar,.growth-page::-webkit-scrollbar,.homework-page::-webkit-scrollbar,.index-page::-webkit-scrollbar,.login-page::-webkit-scrollbar,.message-page::-webkit-scrollbar,.profile-edit-page::-webkit-scrollbar,.profile-page::-webkit-scrollbar,.profile-password-page::-webkit-scrollbar,.profile-phone-page::-webkit-scrollbar,.schedule-page::-webkit-scrollbar,.settings-page::-webkit-scrollbar,.student-page::-webkit-scrollbar{display:none!important}.about-page,.attendance-page,.class-workspace__content,.growth-page,.homework-page,.index-page,.login-page,.message-page,.profile-edit-page,.profile-page,.profile-password-page,.profile-phone-page,.schedule-page,.settings-page,.student-page{scrollbar-width:none!important}.login-page{background:linear-gradient(180deg,#f5f9ff,#f5f7fa 45%);display:flex;flex-direction:column;min-height:100vh;padding:0 1.2rem}.login-page__header{align-items:center;display:flex;flex-direction:column;margin-bottom:2rem;padding-top:3.5rem}.login-page__logo{align-items:center;background:#3a86ff;border-radius:.6rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;height:3.2rem;justify-content:center;margin-bottom:.8rem;width:3.2rem}.login-page__logo-letter{color:#fff;font-size:1.4rem;font-weight:700;line-height:1}.login-page__title{color:#1a1a1a;font-size:.9rem;font-weight:500;margin-bottom:.2rem}.login-page__desc{color:#999;font-size:.65rem}.login-page__tabs{display:flex;gap:1.2rem;margin-bottom:.9rem;padding:0 .2rem}.login-page__tab{padding-bottom:.4rem;position:relative}.login-page__tab--active .login-page__tab-text{color:#1a1a1a;font-weight:500}.login-page__tab--active::after{background:#3a86ff;border-radius:.075rem;bottom:0;content:"";height:.15rem;left:50%;position:absolute;transform:translateX(-50%);width:1rem}.login-page__tab-text{color:#999;font-size:.75rem}.login-page__form{background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.6rem;box-shadow:0 .1rem .4rem rgba(0,0,0,.06);margin-bottom:1.1rem;padding:0 .9rem;width:100%}.login-page__field{align-items:center;display:flex;height:2.7rem}.login-page__field-label{align-items:center;color:#1a1a1a;display:flex;flex-shrink:0;font-size:.75rem;font-weight:400;justify-content:flex-start;width:2rem}.login-page__field-input{align-items:center;background:transparent;border:none;color:#1a1a1a;display:flex;flex:1;font-size:.75rem;height:100%;margin:0;outline:none;padding:0}.login-page__field-input::-webkit-input-placeholder{color:#ccc;font-size:.75rem}.login-page__field-input::-moz-placeholder{color:#ccc;font-size:.75rem}.login-page__field-input::placeholder{color:#ccc;font-size:.75rem}.login-page__field-input taro-input-core{background:transparent;border:none;color:#1a1a1a;font-size:.75rem;height:100%;margin:0;outline:none;padding:0;width:100%}.login-page__field-input taro-input-core::-webkit-input-placeholder{color:#ccc}.login-page__field-input taro-input-core::-moz-placeholder{color:#ccc}.login-page__field-input taro-input-core::placeholder{color:#ccc}.login-page__divider{background:rgba(0,0,0,.04);height:.025rem;margin:0}.login-page__code-btn{align-items:center;display:flex;flex-shrink:0;height:100%;margin-left:.4rem;padding:0}.login-page__code-btn--disabled{opacity:.4}.login-page__code-btn:active{opacity:.7}.login-page__code-btn-text{color:#3a86ff;font-size:.75rem;font-weight:400;white-space:nowrap}.login-page__submit{align-items:center;background:#3a86ff;border-radius:.4rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;height:2.4rem;justify-content:center;margin-bottom:1.1rem;width:100%}.login-page__submit:active{background:#2563eb;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);transform:scale(.98)}.login-page__submit--disabled{box-shadow:none;opacity:.4}.login-page__submit-text{color:#fff;font-size:.8rem;font-weight:500;letter-spacing:.05rem}.login-page__wechat{margin-bottom:1.2rem}.login-page__wechat-divider{align-items:center;display:flex;margin-bottom:.9rem}.login-page__wechat-line{background:rgba(0,0,0,.04);flex:1;height:.025rem}.login-page__wechat-text{color:#999;font-size:.65rem;padding:0 .6rem}.login-page__wechat-btn{align-items:center;display:flex;flex-direction:column;gap:.3rem}.login-page__wechat-icon{align-items:center;background:#07c160;border-radius:50%;box-shadow:0 .1rem .3rem rgba(7,193,96,.25);display:flex;height:2.2rem;justify-content:center;width:2.2rem}.login-page__wechat-icon:active{transform:scale(.95)}.login-page__wechat-icon-text{color:#fff;font-size:.8rem;font-weight:500}.login-page__wechat-label{color:#999;font-size:.6rem}.login-page__modal-mask{align-items:center;background:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;padding:0 1.5rem;position:fixed;right:0;top:0;z-index:1000}.login-page__modal{background:#fff;border-radius:.6rem;box-shadow:0 .4rem 1.2rem rgba(0,0,0,.12);padding:1.2rem 1rem 1.1rem;width:100%}.login-page__modal-title{color:#1a1a1a;font-size:.85rem;font-weight:500;margin-bottom:.3rem;text-align:center}.login-page__modal-desc{color:#999;font-size:.65rem;margin-bottom:1rem;text-align:center}.login-page__modal-field{margin-bottom:.5rem}.login-page__modal-input{align-items:center;background:#f7f8fa;border:none;border-radius:.3rem;color:#1a1a1a;display:flex;font-size:.75rem;height:2.3rem;outline:none;padding:0 .7rem;width:100%}.login-page__modal-input::-webkit-input-placeholder{color:#ccc;font-size:.75rem}.login-page__modal-input::-moz-placeholder{color:#ccc;font-size:.75rem}.login-page__modal-input::placeholder{color:#ccc;font-size:.75rem}.login-page__modal-input taro-input-core{background:transparent;border:none;color:#1a1a1a;font-size:.75rem;height:100%;margin:0;outline:none;padding:0;width:100%}.login-page__modal-input taro-input-core::-webkit-input-placeholder{color:#ccc}.login-page__modal-input taro-input-core::-moz-placeholder{color:#ccc}.login-page__modal-input taro-input-core::placeholder{color:#ccc}.login-page__modal-actions{display:flex;gap:.6rem;margin-top:.9rem}.login-page__modal-btn{align-items:center;border-radius:.3rem;display:flex;flex:1;height:2.2rem;justify-content:center}.login-page__modal-btn--skip{background:#f7f8fa}.login-page__modal-btn--confirm{background:#3a86ff;box-shadow:0 .1rem .3rem rgba(58,134,255,.2)}.login-page__modal-btn-text{font-size:.75rem;font-weight:400}.login-page__modal-btn-text--skip{color:#999}.login-page__modal-btn-text--confirm{color:#fff;font-weight:500}.login-page__footer{align-items:center;display:flex;justify-content:center;margin-top:auto;padding-bottom:1.6rem}.login-page__footer-text{color:#999;font-size:.65rem}.login-page__footer-link{color:#3a86ff;font-size:.65rem}.search-bar{align-items:center;display:flex;gap:.4rem;position:relative}.search-bar__input{background:#fff;border:.025rem solid rgba(0,0,0,.08);border-radius:24.975rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);color:#1a1a1a;flex:1;font-size:.75rem;padding:.4rem .7rem;transition:border-color .15s ease,box-shadow .15s ease}.search-bar__input:focus{border-color:#3a86ff;box-shadow:0 .05rem .3rem rgba(58,134,255,.12)}.search-bar__input::-webkit-input-placeholder{color:#ccc;font-size:.75rem}.search-bar__input::-moz-placeholder{color:#ccc;font-size:.75rem}.search-bar__input::placeholder{color:#ccc;font-size:.75rem}.search-bar__filter{align-items:center;background:#e8f1ff;border-radius:24.975rem;display:flex;flex-shrink:0;gap:.2rem;max-width:50%;overflow:hidden;padding:.4rem .6rem}.search-bar__filter:active{opacity:.8}.search-bar__filter-text{color:#3a86ff;font-size:.65rem;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-bar__filter-arrow{color:#3a86ff;flex-shrink:0;font-size:.4rem}.search-bar__dropdown{position:static}.search-bar__dropdown-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:49}.search-bar__dropdown-menu{background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.4rem;box-shadow:0 .2rem .6rem rgba(0,0,0,.08);margin-top:.2rem;min-width:5rem;padding:.2rem 0;position:absolute;right:0;top:100%;z-index:50}.search-bar__dropdown-item{padding:.6rem .8rem;white-space:nowrap}.search-bar__dropdown-item:active{background:#f0f2f5}.search-bar__dropdown-item--active{background:#e8f1ff}.search-bar__dropdown-item--active .search-bar__dropdown-item-text{color:#3a86ff;font-weight:500}.search-bar__dropdown-item-text{color:#1a1a1a;font-size:.75rem}.search-bar--plain .search-bar__input{background:transparent;border:none;box-shadow:none;padding-left:0}.search-bar--plain .search-bar__input:focus{box-shadow:none}.index-page{background:#f5f7fa;min-height:100vh}.index-page__content{padding:0 .8rem}.index-page__search-bar{margin:.4rem 0 0}.index-page__loading{align-items:center;display:flex;flex-direction:column;gap:.4rem;justify-content:center;padding:3rem 0}.index-page__loading-spinner{animation:spin .8s linear infinite;border:.1rem solid rgba(0,0,0,.08);border-radius:50%;border-top-color:#3a86ff;height:1.2rem;width:1.2rem}.index-page__loading-text{color:#999;font-size:.65rem}.index-page__empty{align-items:center;display:flex;flex-direction:column;gap:.4rem;justify-content:center;padding:4rem 0}.index-page__empty-icon{color:rgba(0,0,0,.12);font-size:2rem}.index-page__empty-text{color:#999;font-size:.75rem}.index-page__card{background:#fff;border-radius:.6rem;box-shadow:0 .1rem .4rem rgba(0,0,0,.06);margin-bottom:.8rem;overflow:hidden;padding:0;position:relative}.index-page__card:active{box-shadow:0 .1rem .4rem rgba(0,0,0,.08);transform:translateY(-.05rem);transition:transform .15s ease,box-shadow .15s ease}.index-page__card-accent{background:#3a86ff;height:.15rem;width:100%}.index-page__card-body{padding:.9rem}.index-page__card-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:.7rem}.index-page__card-name{color:#1a1a1a;flex:1;font-size:.8rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.index-page__card-status{border-radius:24.975rem;flex-shrink:0;font-size:.65rem;font-weight:400;margin-left:.4rem;padding:.2rem .6rem}.index-page__card-status--active{background:#e8f1ff;color:#3a86ff}.index-page__card-status--pending{background:#fffbeb;color:#d97706}.index-page__card-status--completed{background:#f7f8fa;color:#999}.index-page__card-stats{background:#f7f8fa;border-radius:.3rem;display:flex;gap:0;margin-bottom:0;padding:.6rem 0}.index-page__card-stat{align-items:center;display:flex;flex:1;flex-direction:column;gap:.2rem;position:relative}.index-page__card-stat:not(:last-child)::after{background:rgba(0,0,0,.04);content:"";height:1.2rem;position:absolute;right:0;top:50%;transform:translateY(-50%);width:.025rem}.index-page__card-stat-label{color:#999;font-size:.6rem}.index-page__card-stat-value{color:#1a1a1a;font-size:.75rem;font-weight:500}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(1turn)}}.profile-page{background:#f5f7fa;min-height:100vh}.profile-page__empty{align-items:center;display:flex;flex-direction:column;gap:.6rem;justify-content:center;padding:5rem 0}.profile-page__empty-icon{font-size:2rem;opacity:.3}.profile-page__empty-text{color:#999;font-size:.75rem}.profile-page__empty-btn{background:#3a86ff;border-radius:.6rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);padding:.4rem 1.2rem}.profile-page__empty-btn:active{opacity:.8}.profile-page__empty-btn-text{color:#fff;font-size:.75rem;font-weight:500}.profile-card{background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.6rem;box-shadow:0 .1rem .4rem rgba(0,0,0,.06);margin:.9rem .7rem .7rem;overflow:visible;position:relative}.profile-card__bg{background:linear-gradient(135deg,#3a86ff,#5b9eff);border-radius:.6rem .6rem 0 0;height:4rem;left:0;position:absolute;right:0;top:0}.profile-card__inst-name{display:flex;justify-content:center;padding-bottom:.4rem;padding-top:.7rem;position:relative;z-index:1}.profile-card__inst-name-text{color:#fff;display:inline-block;font-size:.75rem;font-weight:500;letter-spacing:.1rem;padding:.2rem .8rem}.profile-card__body{align-items:center;background:#fff;border-radius:.6rem .6rem 0 0;display:flex;gap:.7rem;margin-top:0;padding:1.8rem .9rem 1rem;position:relative;z-index:2}.profile-card__avatar{align-items:center;background:#3a86ff;border:.125rem solid #fff;border-radius:50%;box-shadow:0 .1rem .4rem rgba(0,0,0,.06);display:flex;flex-shrink:0;height:3rem;justify-content:center;margin-top:-1.1rem;overflow:hidden;width:3rem}.profile-card__avatar-img{border-radius:50%;height:3rem;overflow:hidden;width:3rem}.profile-card__avatar-letter{color:#fff;font-size:1.3rem;font-weight:600}.profile-card__info{display:flex;flex:1;flex-direction:column;gap:.2rem;min-width:0}.profile-card__name-row{align-items:center;display:flex;gap:.3rem}.profile-card__name{color:#1a1a1a;font-size:.9rem;font-weight:500}.profile-card__gender{background:#f7f8fa;border-radius:.4rem;color:#999;font-size:.6rem;font-weight:400;padding:.075rem .35rem}.profile-card__phone{color:#999;font-size:.65rem}.profile-card__edit{background:#e8f1ff;border:.025rem solid rgba(58,134,255,.12);border-radius:24.975rem;box-shadow:0 .05rem .2rem rgba(58,134,255,.08);flex-shrink:0;padding:.3rem .8rem}.profile-card__edit:active{background:rgba(58,134,255,.1);transform:scale(.96)}.profile-card__edit-text{color:#3a86ff;font-size:.65rem;font-weight:500}.profile-section{background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin:0 .7rem .7rem;overflow:hidden}.profile-section__header{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;justify-content:space-between;padding:.8rem .9rem}.profile-section__title-row{align-items:center;display:flex;gap:.3rem}.profile-section__dot{background:#3a86ff;border-radius:.1rem;height:.7rem;width:.2rem}.profile-section__title{color:#1a1a1a;font-size:.75rem;font-weight:500}.profile-section__campus-picker{align-items:center;background:#f7f8fa;border-radius:24.975rem;display:flex;gap:.2rem;padding:.25rem .5rem}.profile-section__campus-picker:active{opacity:.7}.profile-section__campus-text{color:#3a86ff;font-size:.65rem;font-weight:400}.profile-section__campus-arrow{color:#3a86ff;font-size:.45rem}.profile-section__dropdown{background:#f7f8fa;border-bottom:.025rem solid rgba(0,0,0,.04)}.profile-section__dropdown-item{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.08);display:flex;justify-content:space-between;padding:.7rem .9rem}.profile-section__dropdown-item:last-child{border-bottom:none}.profile-section__dropdown-item--active{background:#e8f1ff}.profile-section__dropdown-item:active{background:#f0f2f5}.profile-section__dropdown-name{color:#333;font-size:.75rem}.profile-section__dropdown-check{color:#3a86ff;font-size:.75rem;font-weight:500}.profile-section__body{padding:.7rem .9rem .9rem}.profile-section__loading{color:#999;display:block;font-size:.65rem;padding:.6rem 0;text-align:center}.profile-stats{display:grid;gap:.4rem;grid-template-columns:1fr 1fr}.profile-stats__item{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.4rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;flex-direction:column;gap:.2rem;padding:.7rem .6rem;transition:transform .15s ease,box-shadow .15s ease}.profile-stats__item:active{box-shadow:0 .1rem .4rem rgba(0,0,0,.08);transform:translateY(-.05rem)}.profile-stats__value{color:#1a1a1a;font-size:.75rem;font-weight:600}.profile-stats__value--good{color:#3a86ff}.profile-stats__value--bad{color:#ef4444}.profile-stats__label{color:#999;font-size:.6rem}.profile-menu__item{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;justify-content:space-between;padding:.8rem .9rem}.profile-menu__item:last-child{border-bottom:none}.profile-menu__item:active{background:#f0f2f5}.profile-menu__left{align-items:center;display:flex;gap:.6rem}.profile-menu__icon{align-items:center;background:#e8f1ff;border:.025rem solid rgba(58,134,255,.12);border-radius:.4rem;display:flex;flex-shrink:0;height:1.8rem;justify-content:center;width:1.8rem}.profile-menu__label{color:#1a1a1a;font-size:.75rem;font-weight:400}.profile-menu__arrow{color:#ccc;font-size:.8rem}.profile-logout{padding:.9rem .7rem 1.2rem}.profile-logout__btn{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.8rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;height:2.4rem;justify-content:center;transition:transform .15s ease,box-shadow .15s ease;width:100%}.profile-logout__btn:active{background:#fef2f2;border-color:rgba(239,68,68,.15);transform:scale(.98)}.profile-logout__text{color:#ef4444;font-size:.75rem;font-weight:400}.class-workspace{background:#f5f7fa;min-height:100vh;padding-bottom:1rem}.class-workspace__header{background:#fff;border-radius:.8rem;box-shadow:0 .2rem .6rem rgba(0,0,0,.08);margin:.8rem;overflow:hidden;position:relative}.class-workspace__header-bg{background:linear-gradient(180deg,#f5f9ff,#fff);height:100%;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.class-workspace__info{padding:.9rem .8rem .6rem;position:relative;z-index:1}.class-workspace__info-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.class-workspace__info-name{color:#2563eb;font-size:.9rem;font-weight:500}.class-workspace__info-status{border-radius:24.975rem;font-size:.65rem;font-weight:500;padding:.2rem .6rem}.class-workspace__info-status--active{background:#e8f1ff;color:#3a86ff}.class-workspace__info-status--inactive{background:#fffbeb;color:#d97706}.class-workspace__info-status--archived,.class-workspace__info-status--completed{background:#f7f8fa;color:#999}.class-workspace__info-meta{display:flex;flex-wrap:wrap;gap:.3rem}.class-workspace__info-tag{background:#f7f8fa;border:.025rem solid rgba(0,0,0,.08);border-radius:.2rem;color:#999;font-size:.6rem;padding:.125rem .4rem}.class-workspace__info-dates{border-top:.025rem dashed rgba(0,0,0,.04);display:flex;gap:1rem;margin-top:.6rem;padding-top:.5rem}.class-workspace__date-item{display:flex;flex-direction:column;gap:.1rem}.class-workspace__date-label{color:#999;font-size:.6rem}.class-workspace__date-value{color:#1a1a1a;font-size:.65rem;font-weight:500}.class-workspace__skeleton{animation:workspaceShimmer 1.5s ease-in-out infinite;background:#f7f8fa;border-radius:.2rem}.class-workspace__skeleton--name{border-radius:.3rem;height:1rem;width:7rem}.class-workspace__skeleton--tag{border-radius:.2rem;height:.85rem;width:3rem}.class-workspace__date-bar{align-items:center;background:#f7f8fa;border-top:.025rem solid rgba(0,0,0,.04);display:flex;justify-content:space-between;padding:.5rem .8rem;position:relative;z-index:1}.class-workspace__date-btn{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:50%;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;height:1.7rem;justify-content:center;width:1.7rem}.class-workspace__date-btn:active{background:#f0f2f5;transform:scale(.95)}.class-workspace__date-arrow{color:#3a86ff;font-size:.95rem;font-weight:500;line-height:1}.class-workspace__date-center{align-items:center;border-radius:.4rem;display:flex;flex-direction:row;gap:.3rem}.class-workspace__date-text{color:#1a1a1a;font-size:.8rem;font-weight:500}.class-workspace__date-today{background:#e8f1ff;border-radius:24.975rem;color:#3a86ff;font-size:.6rem;font-weight:400;padding:.1rem .4rem;white-space:nowrap}.class-workspace__stats{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.4rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;margin:0 .8rem .8rem;padding:.8rem 0}.class-workspace__stat-item{align-items:center;display:flex;flex:1;flex-direction:column;gap:.2rem}.class-workspace__stat-num{color:#3a86ff;font-size:1.1rem;font-weight:600}.class-workspace__stat-label{color:#999;font-size:.65rem}.class-workspace__stat-divider{background:rgba(0,0,0,.04);height:1.2rem;width:.025rem}.class-workspace__section-title{align-items:center;display:flex;gap:.3rem;padding:0 .8rem .5rem}.class-workspace__section-bar{background:#3a86ff;border-radius:.075rem;height:.7rem;width:.15rem}.class-workspace__section-text{color:#333;font-size:.75rem;font-weight:500}.class-workspace__content{padding:0 .8rem}.class-workspace__loading{align-items:center;color:#999;display:flex;font-size:.75rem;justify-content:center;padding:3rem 0}.class-workspace__empty{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.4rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;flex-direction:column;gap:.2rem;justify-content:center;padding:.8rem}.class-workspace__empty-icon{color:#ccc;font-size:1rem}.class-workspace__empty-text{color:#999;font-size:.65rem}.class-workspace__empty-btn{background:#fff;border:.025rem solid rgba(0,0,0,.08);border-radius:24.975rem;color:#3a86ff;font-weight:400;padding:.35rem 1rem}.class-workspace__empty-btn:active{opacity:.85;transform:scale(.97)}.class-workspace__empty-btn Text{color:#3a86ff;font-size:.65rem;font-weight:400}.class-workspace__card{background:#fff;border-radius:.4rem;box-shadow:0 .1rem .4rem rgba(0,0,0,.06);margin-bottom:.8rem;overflow:hidden}.class-workspace__card-body{border-left:.15rem solid #3a86ff;border-radius:0 .4rem .4rem 0;display:flex;flex-direction:column;gap:.4rem;padding:.8rem .8rem .8rem .9rem}.class-workspace__time-block{align-items:center;display:flex;gap:.4rem}.class-workspace__time-text{color:#1a1a1a;font-size:.95rem;font-weight:500;letter-spacing:.025rem}.class-workspace__time-tag{border-radius:.4rem;font-size:.6rem;font-weight:500;padding:.1rem .4rem}.class-workspace__time-tag--active{background:#e8f1ff;color:#3a86ff}.class-workspace__time-tag--upcoming{background:#f7f8fa;color:#999}.class-workspace__time-tag--past{background:#f7f8fa;color:#999}.class-workspace__row{align-items:center;display:flex;justify-content:space-between}.class-workspace__row-left{display:flex;flex:1;flex-direction:column;gap:.2rem;min-width:0}.class-workspace__teacher-inline{color:#999;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.class-workspace__checkin-count{align-self:flex-start;background:#e8f1ff;border-radius:.2rem;color:#3a86ff;display:inline-block;font-size:.65rem;font-weight:500;padding:.1rem .4rem}.class-workspace__row-right{flex-shrink:0;margin-left:.6rem}.class-workspace__checkin-btn{align-items:center;background:#3a86ff;border-radius:.4rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;flex-direction:column;gap:.15rem;justify-content:center;padding:.8rem .9rem}.class-workspace__checkin-btn:active{background:#2563eb;transform:scale(.96)}.class-workspace__checkin-btn-icon{align-items:center;color:#fff;display:flex;height:.9rem;justify-content:center;width:.9rem}.class-workspace__checkin-btn-text{color:#fff;font-size:.65rem;font-weight:500;letter-spacing:.025rem}.class-workspace__nav{display:grid;gap:.6rem;grid-template-columns:repeat(3,1fr);padding:.8rem}.class-workspace__nav-item{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.8rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;flex-direction:column;gap:.3rem;padding:.6rem .3rem;transition:transform .25s ease,box-shadow .25s ease}.class-workspace__nav-item:active{box-shadow:0 .1rem .4rem rgba(0,0,0,.08);transform:translateY(-.05rem)}.class-workspace__nav-icon{align-items:center;background:#f5f9ff;border-radius:50%;box-shadow:0 0 .4rem rgba(58,134,255,.1);color:#3a86ff;display:flex;height:2.2rem;justify-content:center;width:2.2rem}.class-workspace__nav-label{color:#1a1a1a;font-size:.65rem;font-weight:500}@keyframes workspaceShimmer{0%{opacity:.4}50%{opacity:.8}100%{opacity:.4}}.campus-switcher__current{align-items:center;display:flex;gap:.2rem}.campus-switcher__current--clickable:active{opacity:.7}.campus-switcher__name{color:#1a1a1a;font-size:.75rem;font-weight:500}.campus-switcher__arrow{color:#999;font-size:.65rem}.campus-switcher__overlay{align-items:flex-start;background:rgba(0,0,0,.4);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:100}.campus-switcher__popup{background:#fff;border-radius:0 0 .4rem .4rem;box-shadow:0 .4rem 1.2rem rgba(0,0,0,.12);max-width:18.75rem;padding-bottom:.7rem;width:100%}.campus-switcher__popup-title{border-bottom:.025rem solid rgba(0,0,0,.08);color:#999;font-size:.75rem;font-weight:400;padding:.7rem .9rem}.campus-switcher__item{align-items:center;display:flex;gap:.3rem;padding:.8rem .9rem}.campus-switcher__item--active{background:#e8f1ff}.campus-switcher__item:active{background:#f0f2f5}.campus-switcher__check{color:#3a86ff;font-size:.75rem;font-weight:500}.campus-switcher__item-name{color:#1a1a1a;font-size:.75rem}.custom-tabbar{backdrop-filter:saturate(180%) blur(.5rem);-webkit-backdrop-filter:saturate(180%) blur(.5rem);background:hsla(0,0%,100%,.78);border-top:.025rem solid rgba(0,0,0,.06);bottom:0;box-shadow:inset 0 .025rem 0 hsla(0,0%,100%,.5),0 -.05rem .2rem rgba(0,0,0,.03);display:flex;height:calc(2.5rem + env(safe-area-inset-bottom, 0));left:0;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;right:0;z-index:200}.custom-tabbar__item{align-items:center;display:flex;flex:1;flex-direction:column;gap:.1rem;justify-content:center;padding-top:.3rem;position:relative}.custom-tabbar__item--active::after{background:#3a86ff;border-radius:.075rem;content:"";height:.15rem;left:50%;position:absolute;top:.05rem;transform:translateX(-50%);width:.8rem}.custom-tabbar__icon{align-items:center;display:flex;height:1.1rem;justify-content:center;width:1.1rem}.custom-tabbar__text{font-size:.6rem;line-height:1}.index-page,.profile-page{padding-bottom:calc(3rem + env(safe-area-inset-bottom, 0))}.page-layout{background:#f5f7fa;display:flex;flex-direction:column;min-height:100vh}.page-layout__content{flex:1;padding-bottom:calc(2.5rem + env(safe-area-inset-bottom, 0));padding-top:2.2rem}.custom-navbar{align-items:center;backdrop-filter:saturate(180%) blur(.5rem);-webkit-backdrop-filter:saturate(180%) blur(.5rem);background:hsla(0,0%,100%,.78);border-bottom:.025rem solid rgba(0,0,0,.06);box-shadow:inset 0 .025rem 0 hsla(0,0%,100%,.5);display:flex;height:2.2rem;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:100}.custom-navbar__back{align-items:center;display:flex;height:2.2rem;justify-content:center;left:.6rem;position:absolute;width:1.8rem}.custom-navbar__back:active{opacity:.7}.custom-navbar__back-icon{align-items:center;background:#3a86ff;border:.025rem solid rgba(58,134,255,.12);border-radius:50%;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;height:1.4rem;justify-content:center;width:1.4rem}.custom-navbar__title{color:#1a1a1a;font-size:.8rem;font-weight:500}.profile-edit-page{background:#f5f7fa;min-height:100vh}.profile-edit-page__section{background:#fff;border:.025rem solid rgba(0,0,0,.06);box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin-bottom:.7rem}.profile-edit-page__field{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;justify-content:space-between;padding:.9rem}.profile-edit-page__field:last-child{border-bottom:none}.profile-edit-page__field:active{background:#f0f2f5}.profile-edit-page__label{color:#1a1a1a;flex-shrink:0;font-size:.75rem;width:3rem}.profile-edit-page__input{align-items:center;background:transparent;border:none;color:#1a1a1a;display:flex;flex:1;font-size:.75rem;height:1.2rem;justify-content:flex-end;margin:0;outline:none;padding:0;text-align:right}.profile-edit-page__input::-webkit-input-placeholder{color:#ccc}.profile-edit-page__input::-moz-placeholder{color:#ccc}.profile-edit-page__input::placeholder{color:#ccc}.profile-edit-page__avatar-right{align-items:center;display:flex;gap:.4rem}.profile-edit-page__avatar-small{align-items:center;background:#3a86ff;border-radius:50%;display:flex;height:2rem;justify-content:center;width:2rem}.profile-edit-page__avatar-small-text{color:#fff;font-size:.8rem;font-weight:500}.profile-edit-page__arrow{color:#999;font-size:.9rem}.profile-edit-page__picker-value{align-items:center;display:flex;gap:.4rem}.profile-edit-page__value{color:#1a1a1a;font-size:.75rem}.profile-edit-page__actions{padding:1.2rem .9rem}.profile-edit-page__save-btn{align-items:center;background:#3a86ff;border-radius:.4rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;height:2.4rem;justify-content:center;width:100%}.profile-edit-page__save-btn:active{background:#2563eb;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);transform:scale(.98)}.profile-edit-page__save-btn--disabled{box-shadow:none;opacity:.4}.profile-edit-page__save-btn-text{color:#fff;font-size:.8rem;font-weight:500;letter-spacing:.05rem}.profile-password-page{background:#f5f7fa;min-height:100vh}.profile-password-page__form{background:#fff;border:.025rem solid rgba(0,0,0,.06);box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin-top:.7rem}.profile-password-page__field{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;padding:.9rem}.profile-password-page__field:last-child{border-bottom:none}.profile-password-page__label{color:#1a1a1a;flex-shrink:0;font-size:.75rem;width:3.5rem}.profile-password-page__input{align-items:center;background:transparent;border:none;color:#1a1a1a;display:flex;flex:1;font-size:.75rem;height:1.2rem;margin:0;outline:none;padding:0}.profile-password-page__input::-webkit-input-placeholder{color:#ccc}.profile-password-page__input::-moz-placeholder{color:#ccc}.profile-password-page__input::placeholder{color:#ccc}.profile-password-page__tips{padding:.7rem .9rem}.profile-password-page__tip-text{color:#999;font-size:.65rem}.profile-password-page__actions{padding:.7rem .9rem 1.2rem}.profile-password-page__submit-btn{align-items:center;background:#3a86ff;border-radius:.4rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;height:2.4rem;justify-content:center;width:100%}.profile-password-page__submit-btn:active{background:#2563eb;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);transform:scale(.98)}.profile-password-page__submit-btn--disabled{box-shadow:none;opacity:.4}.profile-password-page__submit-btn-text{color:#fff;font-size:.8rem;font-weight:500;letter-spacing:.05rem}.profile-phone-page{background:#f5f7fa;min-height:100vh}.profile-phone-page__current{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;justify-content:space-between;margin-bottom:.7rem;padding:.9rem}.profile-phone-page__current-label{color:#1a1a1a;font-size:.75rem}.profile-phone-page__current-value{color:#999;font-size:.75rem}.profile-phone-page__form{background:#fff;border:.025rem solid rgba(0,0,0,.06);box-shadow:0 .05rem .2rem rgba(0,0,0,.04)}.profile-phone-page__field{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;padding:.9rem}.profile-phone-page__field:last-child{border-bottom:none}.profile-phone-page__label{color:#1a1a1a;flex-shrink:0;font-size:.75rem;width:3.5rem}.profile-phone-page__input{align-items:center;background:transparent;border:none;color:#1a1a1a;display:flex;flex:1;font-size:.75rem;height:1.2rem;margin:0;outline:none;padding:0}.profile-phone-page__input::-webkit-input-placeholder{color:#ccc}.profile-phone-page__input::-moz-placeholder{color:#ccc}.profile-phone-page__input::placeholder{color:#ccc}.profile-phone-page__input--code{flex:1}.profile-phone-page__code-row{align-items:center;display:flex;flex:1;gap:.4rem}.profile-phone-page__code-btn{background:#e8f1ff;border-radius:.2rem;flex-shrink:0;padding:.3rem .7rem}.profile-phone-page__code-btn:active{opacity:.7}.profile-phone-page__code-btn--disabled{opacity:.4}.profile-phone-page__code-btn-text{color:#3a86ff;font-size:.65rem;font-weight:400;white-space:nowrap}.profile-phone-page__actions{padding:1.2rem .9rem}.profile-phone-page__submit-btn{align-items:center;background:#3a86ff;border-radius:.4rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;height:2.4rem;justify-content:center;width:100%}.profile-phone-page__submit-btn:active{background:#2563eb;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);transform:scale(.98)}.profile-phone-page__submit-btn--disabled{box-shadow:none;opacity:.4}.profile-phone-page__submit-btn-text{color:#fff;font-size:.8rem;font-weight:500;letter-spacing:.05rem}.profile-wechat-page{background:#f5f7fa;min-height:100vh}.profile-wechat-page__placeholder{align-items:center;display:flex;flex-direction:column;gap:.6rem;justify-content:center;padding:5rem 1.2rem}.profile-wechat-page__icon{color:#999;font-size:2rem}.profile-wechat-page__text{color:#1a1a1a;font-size:.8rem;font-weight:500}.profile-wechat-page__desc{color:#999;font-size:.65rem;line-height:1.6;text-align:center}.schedule-page{background:#f5f7fa;min-height:100vh}.schedule-page__week-nav{align-items:center;background:#fff;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;justify-content:space-between;padding:.6rem .8rem}.schedule-page__week-nav-btn{align-items:center;background:#f7f8fa;border-radius:24.975rem;display:flex;height:1.6rem;justify-content:center;width:1.6rem}.schedule-page__week-nav-btn:active{background:#f0f2f5}.schedule-page__week-nav-arrow{color:#333;font-size:.9rem;line-height:1}.schedule-page__week-nav-center{align-items:center;display:flex;flex-direction:column;gap:.1rem}.schedule-page__week-nav-title{color:#1a1a1a;font-size:.75rem;font-weight:500}.schedule-page__week-nav-sub{color:#999;font-size:.6rem}.schedule-page__back-today{background:#f5f9ff;display:flex;justify-content:center;padding:.3rem 0}.schedule-page__back-today-text{color:#3a86ff;font-size:.6rem;font-weight:500}.schedule-page__date-row{background:#fff;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;padding:.4rem .3rem .5rem}.schedule-page__date-item{align-items:center;border-radius:.6rem;display:flex;flex:1;flex-direction:column;gap:.15rem;padding:.3rem 0;position:relative}.schedule-page__date-item--active{background:#3a86ff}.schedule-page__date-item--today:not(.schedule-page__date-item--active){background:#e8f1ff}.schedule-page__date-weekday{color:#999;font-size:.6rem;font-weight:400}.schedule-page__date-weekday--active{color:#fff}.schedule-page__date-num{color:#1a1a1a;font-size:.75rem;font-weight:500}.schedule-page__date-num--active{color:#fff}.schedule-page__date-dot{background:#3a86ff;border-radius:50%;height:.2rem;width:.2rem}.schedule-page__date-item--active .schedule-page__date-dot{background:#fff}.schedule-page__date-dot--hidden{visibility:hidden}.schedule-page__content{padding:.6rem .8rem}.schedule-page__loading{display:flex;justify-content:center;padding:2rem 0}.schedule-page__loading-text{color:#999;font-size:.65rem}.schedule-page__empty{align-items:center;display:flex;flex-direction:column;gap:.4rem;justify-content:center;padding:3rem 0}.schedule-page__empty-icon{color:#ccc;margin-bottom:.2rem}.schedule-page__empty-text{color:#999;font-size:.65rem}.schedule-page__lesson-card{background:#fff;border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;margin-bottom:.5rem;overflow:hidden}.schedule-page__lesson-card--active{box-shadow:0 .1rem .4rem rgba(0,0,0,.06)}.schedule-page__lesson-card--past{opacity:.7}.schedule-page__lesson-bar{flex-shrink:0;width:.2rem}.schedule-page__lesson-card--active .schedule-page__lesson-bar{background:#3a86ff}.schedule-page__lesson-card--upcoming .schedule-page__lesson-bar{background:#14b8a6}.schedule-page__lesson-card--past .schedule-page__lesson-bar{background:#ccc}.schedule-page__lesson-body{display:flex;flex:1;flex-direction:column;gap:.3rem;padding:.7rem .8rem}.schedule-page__lesson-header{align-items:center;display:flex;justify-content:space-between}.schedule-page__lesson-time{color:#1a1a1a;font-size:.75rem;font-weight:600}.schedule-page__lesson-status{border-radius:.2rem;font-size:.6rem;font-weight:400;padding:.1rem .4rem}.schedule-page__lesson-status--active{background:#e8f1ff;color:#3a86ff}.schedule-page__lesson-status--upcoming{background:#e6faf7;color:#14b8a6}.schedule-page__lesson-status--past{background:#f7f8fa;color:#999}.schedule-page__lesson-class{color:#333;font-size:.65rem;font-weight:500}.schedule-page__lesson-room{color:#999;font-size:.6rem}.settings-page{background:#f5f7fa;min-height:100vh}.settings-page__menu{background:#fff;border:.025rem solid rgba(0,0,0,.06);box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin-bottom:.7rem;margin-top:.7rem}.settings-page__menu-item{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;justify-content:space-between;padding:.9rem}.settings-page__menu-item:last-child{border-bottom:none}.settings-page__menu-item:active{background:#f0f2f5}.settings-page__menu-title{color:#1a1a1a;font-size:.75rem}.settings-page__menu-arrow{color:#999;font-size:.9rem}.settings-page__logout{padding:1.2rem .9rem}.settings-page__logout-btn{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.08);border-radius:.3rem;display:flex;height:2.3rem;justify-content:center;width:100%}.settings-page__logout-btn:active{background:#f0f2f5}.settings-page__logout-btn-text{color:#ef4444;font-size:.75rem;font-weight:400}.about-page{background:#f5f7fa;min-height:100vh}.about-page__app{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;flex-direction:column;gap:.4rem;margin-bottom:.7rem;padding:2rem .9rem 1.6rem}.about-page__logo{align-items:center;background:#3a86ff;border-radius:.6rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;height:3.2rem;justify-content:center;margin-bottom:.4rem;width:3.2rem}.about-page__logo-text{color:#fff;font-size:1.4rem;font-weight:700;line-height:1}.about-page__app-name{color:#1a1a1a;font-size:.9rem;font-weight:500}.about-page__version{color:#999;font-size:.65rem}.about-page__info{background:#fff;border:.025rem solid rgba(0,0,0,.06);box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin-bottom:.7rem}.about-page__info-item{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.04);display:flex;justify-content:space-between;padding:.9rem}.about-page__info-item:last-child{border-bottom:none}.about-page__info-label{color:#1a1a1a;font-size:.75rem}.about-page__info-value{color:#999;font-size:.75rem}.about-page__copyright{align-items:center;display:flex;flex-direction:column;gap:.2rem;padding:1.2rem .9rem}.about-page__copyright-text{color:#999;font-size:.65rem}.attendance-page{background:#f5f7fa;display:flex;flex-direction:column;min-height:100vh;padding-bottom:4rem}.attendance-page__loading{align-items:center;display:flex;flex-direction:column;gap:.5rem;justify-content:center;padding:5rem 0}.attendance-page__loading-spinner{animation:attendanceSpin .8s linear infinite;border:.1rem solid rgba(0,0,0,.08);border-radius:50%;border-top-color:#3a86ff;height:1.2rem;width:1.2rem}.attendance-page__loading-text{color:#999;font-size:.65rem}.attendance-page__error{align-items:center;display:flex;flex-direction:column;gap:.5rem;justify-content:center;padding:5rem 1.2rem}.attendance-page__error-icon{align-items:center;background:#fef2f2;border-radius:50%;color:#ef4444;display:flex;font-size:1rem;font-weight:500;height:2rem;justify-content:center;line-height:1;width:2rem}.attendance-page__error-text{color:#999;font-size:.75rem;text-align:center}.attendance-page__error-btn{background:#3a86ff;border-radius:.6rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);padding:.4rem 1.2rem}.attendance-page__error-btn:active{opacity:.85;transform:scale(.97)}.attendance-page__error-btn-text{color:#fff;font-size:.65rem;font-weight:400}.attendance-page__header{background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.8rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin:.7rem;padding:.8rem .8rem .7rem}.attendance-page__header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:.6rem}.attendance-page__header-class{color:#1a1a1a;flex:1;font-size:.8rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-page__header-time-wrap{align-items:center;display:flex;flex-shrink:0;gap:.3rem;margin-left:.4rem}.attendance-page__header-date{color:#999;font-size:.75rem}.attendance-page__header-time{border-left:.025rem solid rgba(0,0,0,.08);color:#999;font-size:.75rem;padding-left:.3rem}.attendance-page__progress-bar{background:#f7f8fa;border-radius:.175rem;height:.35rem;margin-bottom:.4rem;overflow:hidden;width:100%}.attendance-page__progress-fill{background:#3a86ff;border-radius:.175rem;height:100%;transition:width .25s ease}.attendance-page__progress-text{color:#999;display:block;font-size:.65rem;text-align:right}.attendance-page__list{padding:0 .7rem}.attendance-page__student{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.4rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;justify-content:space-between;margin-bottom:.4rem;padding:.7rem}.attendance-page__student:active{background:#f0f2f5}.attendance-page__student-avatar{height:1.8rem;width:1.8rem}.attendance-page__student-avatar-text{font-size:.8rem;font-weight:500;line-height:1}.attendance-page__student-name{flex-shrink:0;font-weight:400}.attendance-page__student-status{border-radius:.2rem;flex-shrink:0;font-size:.6rem;font-weight:400;margin-left:.2rem;padding:.1rem .3rem}.attendance-page__student-status--present{background:#e8f1ff;color:#3a86ff}.attendance-page__student-status--late{background:#fffbeb;color:#f59e0b}.attendance-page__student-status--leave{background:#fef2f2;color:#ef4444}.attendance-page__student-status--checkout{background:#f0fdfa;color:#14b8a6}.attendance-page__student-status--makeup{background:#f5f3ff;color:#8b5cf6}.attendance-page__student-status--absent{background:#fef2f2;color:#ef4444}.attendance-page__student-actions{align-items:center;display:flex;flex-shrink:0;gap:.3rem;margin-left:.4rem}.attendance-page__student-action{background:#e8f1ff;border-radius:.2rem;flex-shrink:0;margin-left:.4rem;padding:.3rem .7rem}.attendance-page__student-action:active{background:#f5f9ff;transform:scale(.96)}.attendance-page__student-action--primary{background:#e8f1ff;margin-left:0}.attendance-page__student-action--secondary{background:#f7f8fa;margin-left:0}.attendance-page__student-action--secondary:active{background:#f0f2f5;transform:scale(.96)}.attendance-page__student-action--checkin{background:#e8f1ff}.attendance-page__student-action--checkin:active{background:#f5f9ff}.attendance-page__student-action--late{background:#fffbeb}.attendance-page__student-action--late:active{background:#fffbeb}.attendance-page__student-action--checkout{background:#f0fdfa}.attendance-page__student-action--checkout:active{background:#ecfeff}.attendance-page__student-action--leave{background:#fef2f2}.attendance-page__student-action--leave:active{background:#fffbeb}.attendance-page__student-action--makeup{background:#f5f3ff}.attendance-page__student-action--makeup:active{background:#f5f9ff}.attendance-page__student-action--disabled{background:#f7f8fa;cursor:not-allowed}.attendance-page__student-action--disabled:active{background:#f7f8fa;transform:none}.attendance-page__student-action-text{color:#3a86ff;font-size:.65rem;font-weight:400}.attendance-page__student-action-text--secondary{color:#999}.attendance-page__student-action-text--checkin{color:#3a86ff}.attendance-page__student-action-text--late{color:#f59e0b}.attendance-page__student-action-text--checkout{color:#14b8a6}.attendance-page__student-action-text--leave{color:#ef4444}.attendance-page__student-action-text--makeup{color:#8b5cf6}.attendance-page__student-action--disabled .attendance-page__student-action-text{color:#999}.attendance-page__empty{padding:4rem 0}.attendance-page__empty-icon{color:rgba(0,0,0,.12);font-size:2rem;line-height:1}.attendance-page__empty-text{color:#999}.attendance-page__batch-area{backdrop-filter:saturate(180%) blur(.5rem);-webkit-backdrop-filter:saturate(180%) blur(.5rem);background:hsla(0,0%,100%,.78);border-top:.025rem solid rgba(0,0,0,.06);bottom:0;box-shadow:inset 0 .025rem 0 hsla(0,0%,100%,.5),0 -.05rem .2rem rgba(0,0,0,.03);left:0;padding:.5rem .7rem calc(.5rem + env(safe-area-inset-bottom, 0));position:fixed;right:0;z-index:50}.attendance-page__batch-btn{align-items:center;background:#3a86ff;border-radius:.4rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;height:2.2rem;justify-content:center;width:100%}.attendance-page__batch-btn:active{background:#2563eb;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);transform:scale(.98)}.attendance-page__batch-btn--disabled{box-shadow:none;opacity:.4}.attendance-page__batch-btn-text{color:#fff;font-size:.75rem;font-weight:500;letter-spacing:.05rem}.attendance-page__modal{align-items:center;background:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;padding:0 1.2rem;position:fixed;right:0;top:0;z-index:1000}.attendance-page__modal-box{background:#fff;border-radius:.6rem;box-shadow:0 .4rem 1.2rem rgba(0,0,0,.12);padding:1.1rem .9rem 1rem;width:100%}.attendance-page__modal-title{color:#1a1a1a;display:block;font-size:.9rem;font-weight:500;margin-bottom:.9rem;text-align:center}.attendance-page__modal-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}.attendance-page__modal-tag{background:#f7f8fa;border:.025rem solid rgba(0,0,0,.08);border-radius:.2rem;padding:.35rem .7rem}.attendance-page__modal-tag:active{background:#f0f2f5}.attendance-page__modal-tag--active{background:#e8f1ff;border-color:#3a86ff}.attendance-page__modal-tag-text{color:#333;font-size:.65rem;font-weight:400}.attendance-page__modal-tag--active .attendance-page__modal-tag-text{color:#3a86ff}.attendance-page__modal-input-wrap{margin-bottom:.9rem}.attendance-page__modal-input{align-items:center;background:#f7f8fa;border:none;border-radius:.3rem;color:#1a1a1a;display:flex;font-size:.75rem;height:2.2rem;outline:none;padding:0 .7rem;width:100%}.attendance-page__modal-input::-webkit-input-placeholder{color:#ccc;font-size:.75rem}.attendance-page__modal-input::-moz-placeholder{color:#ccc;font-size:.75rem}.attendance-page__modal-input::placeholder{color:#ccc;font-size:.75rem}.attendance-page__modal-input taro-input-core{background:transparent;border:none;color:#1a1a1a;font-size:.75rem;height:100%;margin:0;outline:none;padding:0;width:100%}.attendance-page__modal-input taro-input-core::-webkit-input-placeholder{color:#ccc}.attendance-page__modal-input taro-input-core::-moz-placeholder{color:#ccc}.attendance-page__modal-input taro-input-core::placeholder{color:#ccc}.attendance-page__modal-actions{display:flex;gap:.6rem}.attendance-page__modal-btn{align-items:center;border-radius:.3rem;display:flex;flex:1;height:2.2rem;justify-content:center}.attendance-page__modal-btn:active{transform:scale(.97)}.attendance-page__modal-btn--cancel{background:#f7f8fa}.attendance-page__modal-btn--cancel:active{background:#f0f2f5}.attendance-page__modal-btn--confirm{background:#3a86ff;box-shadow:0 .1rem .3rem rgba(58,134,255,.2)}.attendance-page__modal-btn--confirm:active{background:#2563eb;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);transform:scale(.98)}.attendance-page__modal-btn--disabled{box-shadow:none;opacity:.4}.attendance-page__modal-btn-text{color:#999;font-size:.75rem;font-weight:400}.attendance-page__modal-btn-text--confirm{color:#fff;font-weight:500}.attendance-page__history{display:flex;flex-direction:column;gap:.5rem;padding:.6rem}.attendance-page__history-card{background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.8rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;flex-direction:column;gap:.4rem;padding:.7rem;transition:transform .15s ease}.attendance-page__history-card:active{transform:scale(.98)}.attendance-page__history-top{align-items:center;display:flex;gap:.4rem}.attendance-page__history-date{color:#1a1a1a;flex:1;font-size:.75rem;font-weight:500}.attendance-page__history-time{color:#999;font-size:.65rem}.attendance-page__history-status{border-radius:24.975rem;font-size:.6rem;font-weight:400;padding:.1rem .3rem}.attendance-page__history-status--completed{background:#e8f1ff;color:#3a86ff}.attendance-page__history-status--ongoing{background:#fffbeb;color:#f59e0b}.attendance-page__history-status--scheduled{background:#f7f8fa;color:#999}.attendance-page__history-status--cancelled{background:#fef2f2;color:#ef4444}.attendance-page__history-stats{display:flex;gap:.6rem}.attendance-page__history-stat{font-size:.65rem}.attendance-page__history-stat--present{color:#3a86ff}.attendance-page__history-stat--absent{color:#ef4444}.attendance-page__history-stat--total{color:#999}.attendance-page__pagination{gap:.6rem;padding:.6rem 0 .4rem}.attendance-page__pagination-btn{background:#3a86ff;border-radius:.3rem;padding:.3rem .8rem}.attendance-page__pagination-btn--disabled{background:#f7f8fa}.attendance-page__pagination-btn:active{opacity:.7}.attendance-page__pagination-btn-text{color:#fff}.custom-tabbar__pagination-btn--disabled .attendance-page__pagination-btn-text{color:#ccc}.attendance-page__pagination-info{color:#999;font-size:.65rem}.attendance-page__filter-row{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.08);border-radius:24.975rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;gap:.3rem;margin:.5rem .7rem .3rem;padding:.2rem}.attendance-page__date-range{align-items:center;background:#f7f8fa;border-radius:24.975rem;display:flex;flex-shrink:0;padding:.1rem}.attendance-page__date-range:active{opacity:.8}.attendance-page__date-btn{align-items:center;background:transparent;border:none;border-radius:24.975rem;display:flex;flex:1;justify-content:center;padding:.3rem .4rem}.attendance-page__date-btn:active{background:rgba(0,0,0,.04)}.attendance-page__date-btn-text{color:#1a1a1a;font-size:.65rem;font-weight:400}.attendance-page__date-arrow{align-items:center;color:#999;display:flex;flex-shrink:0;justify-content:center;padding:0 .2rem}.attendance-page__date-arrow-text{color:#999;font-size:.65rem;font-weight:400}.attendance-page__empty{align-items:center;display:flex;flex-direction:column;gap:.4rem;justify-content:center;padding:3rem 1.2rem}.attendance-page__empty-icon-wrap{align-items:center;background:#f7f8fa;border-radius:50%;display:flex;height:3rem;justify-content:center;margin-bottom:.2rem;width:3rem}.attendance-page__empty-icon-text{font-size:1.3rem}.attendance-page__empty-text{color:#1a1a1a;font-size:.75rem;font-weight:400}.attendance-page__empty-sub{color:#999;font-size:.65rem}.attendance-page__student-list{display:flex;flex-direction:column;gap:.5rem;padding:.2rem .7rem 1.2rem}.attendance-page__student-card{background:#fff;border:.025rem solid rgba(0,0,0,.06);border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);overflow:hidden;transition:box-shadow .2s}.attendance-page__student-card--expanded{box-shadow:0 .1rem .4rem rgba(0,0,0,.06)}.attendance-page__student-header{align-items:center;display:flex;justify-content:space-between;padding:.7rem}.attendance-page__student-left{align-items:center;display:flex;flex:1;gap:.5rem;min-width:0}.attendance-page__student-avatar-img{border:.1rem solid rgba(0,0,0,.04);border-radius:50%;flex-shrink:0;height:2rem;width:2rem}.attendance-page__student-avatar{align-items:center;background:#3a86ff;border-radius:50%;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);display:flex;flex-shrink:0;height:2rem;justify-content:center;width:2rem}.attendance-page__student-avatar-text{color:#fff;font-size:.75rem;font-weight:600}.attendance-page__student-info{display:flex;flex:1;flex-direction:column;gap:.25rem;min-width:0}.attendance-page__student-name{color:#1a1a1a;font-size:.75rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-page__student-tags{display:flex;flex-wrap:wrap;gap:.2rem}.attendance-page__student-tag{align-items:center;border-radius:24.975rem;display:inline-flex;height:1.1rem;padding:0 .4rem}.attendance-page__student-tag--present{background:#e8f1ff}.attendance-page__student-tag--leave{background:#fef2f2}.attendance-page__student-tag--makeup{background:#f5f3ff}.attendance-page__student-tag--absent{background:#f7f8fa}.attendance-page__student-tag-text{font-size:.6rem;font-weight:400}.attendance-page__student-tag--present .attendance-page__student-tag-text{color:#3a86ff}.attendance-page__student-tag--leave .attendance-page__student-tag-text{color:#ef4444}.attendance-page__student-tag--makeup .attendance-page__student-tag-text{color:#8b5cf6}.attendance-page__student-tag--absent .attendance-page__student-tag-text{color:#999}.attendance-page__student-right{align-items:center;display:flex;flex-shrink:0;gap:.4rem;margin-left:.3rem}.attendance-page__student-rate{align-items:center;background:#e8f1ff;border-radius:50%;display:flex;height:2.1rem;justify-content:center;width:2.1rem}.attendance-page__student-rate-text{color:#3a86ff;font-size:.65rem;font-weight:500}.attendance-page__expand-icon{align-items:center;display:flex;height:1rem;justify-content:center;transition:transform .25s ease;width:1rem}.attendance-page__expand-icon--open{transform:rotate(-90deg)}.attendance-page__expand-icon-text{color:#ccc;font-size:.8rem;font-weight:500}.attendance-page__detail{padding:0 .7rem .7rem}.attendance-page__detail-divider{background:rgba(0,0,0,.04);height:.025rem;margin-bottom:.5rem}.attendance-page__detail-loading{align-items:center;display:flex;flex-direction:column;gap:.4rem;padding:1.2rem 0}.attendance-page__date-group--multi{margin-top:.7rem}.attendance-page__date-header{align-items:center;display:flex;gap:.3rem;margin-bottom:.4rem}.attendance-page__date-header-dot{background:#3a86ff;border-radius:50%;flex-shrink:0;height:.3rem;width:.3rem}.attendance-page__date-header-text{color:#1a1a1a;font-size:.65rem;font-weight:500}.attendance-page__record-row{align-items:center;display:flex;gap:.4rem;padding:.35rem 0 .35rem .15rem;position:relative}.attendance-page__record-row::before{background:rgba(0,0,0,.08);bottom:0;content:"";left:.05rem;position:absolute;top:0;width:.05rem}.attendance-page__record-row:last-child::before{display:none}.attendance-page__record-time{color:#999;flex-shrink:0;font-size:.65rem;font-variant-numeric:tabular-nums;font-weight:400;width:5rem}.attendance-page__record-badge{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:1.1rem;justify-content:center;width:1.1rem}.attendance-page__record-badge--present{background:#f5f9ff}.attendance-page__record-badge--late{background:#fffbeb}.attendance-page__record-badge--leave{background:#fef2f2}.attendance-page__record-badge--absent{background:#fef2f2}.attendance-page__record-badge--makeup{background:#f5f3ff}.attendance-page__record-badge-icon{font-size:.55rem;font-weight:500}.attendance-page__record-badge--present .attendance-page__record-badge-icon{color:#3a86ff}.attendance-page__record-badge--late .attendance-page__record-badge-icon{color:#f59e0b}.attendance-page__record-badge--leave .attendance-page__record-badge-icon{color:#ef4444}.attendance-page__record-badge--absent .attendance-page__record-badge-icon{color:#ef4444}.attendance-page__record-badge--makeup .attendance-page__record-badge-icon{color:#8b5cf6}.attendance-page__record-info{align-items:center;display:flex;flex:1;flex-wrap:wrap;gap:.15rem .25rem;min-width:0}.attendance-page__record-status{color:#1a1a1a;font-size:.75rem;font-weight:500}.attendance-page__record-detail{border-radius:.2rem;font-size:.6rem;padding:.05rem .25rem}.attendance-page__record-detail--checkin{background:#e8f1ff;color:#3a86ff}.attendance-page__record-detail--late{background:#fffbeb;color:#f59e0b}.attendance-page__record-detail--checkout{background:#f0fdfa;color:#14b8a6}.attendance-page__record-detail--makeup{background:#f5f3ff;color:#8b5cf6}.attendance-page__record-detail--leave{background:#fef2f2;color:#ef4444}.attendance-page__record-detail--absent{background:#fef2f2;color:#ef4444}.attendance-page__record-detail--remark{font-style:italic}.attendance-page__empty-detail{padding:1.2rem 0;text-align:center}.attendance-page__empty-detail-text{color:#ccc;font-size:.65rem}.attendance-page__status-filter{align-items:center;display:flex;gap:.3rem;overflow-x:auto;padding:.5rem .8rem;-webkit-overflow-scrolling:touch}.attendance-page__status-filter::-webkit-scrollbar{display:none}.attendance-page__status-tag{align-items:center;background:#f7f8fa;border-radius:.7rem;display:flex;flex-shrink:0;gap:.2rem;height:1.4rem;padding:0 .6rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.attendance-page__status-tag:active{transform:scale(.96)}.attendance-page__status-tag--active{background:#fff;box-shadow:0 .05rem .3rem rgba(0,0,0,.06)}.attendance-page__status-tag.attendance-page__status-tag--present.attendance-page__status-tag--active{background:#e8f1ff;box-shadow:0 .05rem .3rem rgba(58,134,255,.15)}.attendance-page__status-tag.attendance-page__status-tag--leave.attendance-page__status-tag--active{background:#fef2f2;box-shadow:0 .05rem .3rem rgba(239,68,68,.15)}.attendance-page__status-tag.attendance-page__status-tag--makeup.attendance-page__status-tag--active{background:#f5f3ff;box-shadow:0 .05rem .3rem rgba(139,92,246,.15)}.attendance-page__status-tag.attendance-page__status-tag--absent.attendance-page__status-tag--active{background:rgba(0,0,0,.06);box-shadow:0 .05rem .3rem rgba(0,0,0,.06)}.attendance-page__status-tag-text{color:#999;font-size:.65rem;font-weight:400;line-height:1}.attendance-page__status-tag--active .attendance-page__status-tag-text{color:#1a1a1a;font-weight:500}.attendance-page__status-tag--present.attendance-page__status-tag--active .attendance-page__status-tag-text{color:#3a86ff;font-weight:500}.attendance-page__status-tag--leave.attendance-page__status-tag--active .attendance-page__status-tag-text{color:#ef4444;font-weight:500}.attendance-page__status-tag--makeup.attendance-page__status-tag--active .attendance-page__status-tag-text{color:#8b5cf6;font-weight:500}.attendance-page__status-tag--absent.attendance-page__status-tag--active .attendance-page__status-tag-text{color:#999;font-weight:500}.attendance-page__load-more{align-items:center;display:flex;justify-content:center;margin-top:.2rem;padding:.5rem 0}.attendance-page__load-more--loading{opacity:.6}.attendance-page__load-more-text{color:#3a86ff;font-size:.65rem;font-weight:400}.attendance-page__pagination{align-items:center;display:flex;gap:.5rem;justify-content:center;padding:.8rem 0 .4rem}.attendance-page__pagination-btn{background:#fff;border:.05rem solid rgba(0,0,0,.08);border-radius:24.975rem;padding:.35rem .8rem;transition:all .2s}.attendance-page__pagination-btn:active{background:#f0f2f5;transform:scale(.97)}.attendance-page__pagination-btn--disabled{opacity:.4;pointer-events:none}.attendance-page__pagination-btn-text{color:#1a1a1a;font-size:.65rem;font-weight:400}.attendance-page__pagination-info{background:#f7f8fa;border-radius:24.975rem;padding:.35rem .6rem}.attendance-page__pagination-info-text{color:#999;font-size:.65rem;font-weight:400}@keyframes attendanceSpin{from{transform:rotate(0deg)}to{transform:rotate(1turn)}}.growth__placeholder,.homework__placeholder,.message__placeholder,.schedule__placeholder,.student__placeholder{align-items:center;display:flex;flex-direction:column;gap:.6rem;justify-content:center;padding:5rem 1.2rem}.growth__icon-wrap,.homework__icon-wrap,.message__icon-wrap,.schedule__icon-wrap,.student__icon-wrap{align-items:center;background:#f7f8fa;border-radius:50%;display:flex;height:4rem;justify-content:center;margin-bottom:.4rem;width:4rem}.growth__icon,.homework__icon,.message__icon,.schedule__icon,.student__icon{color:#ccc;font-size:2rem}.growth__title,.homework__title,.message__title,.schedule__title,.student__title{color:#1a1a1a;font-size:.8rem;font-weight:500}.growth__desc,.homework__desc,.message__desc,.schedule__desc,.student__desc{color:#999;font-size:.65rem;line-height:1.6;text-align:center}.homework-page__actions{background:#f5f7fa;display:flex;gap:.6rem;padding:.6rem .8rem}.homework-page__action-btn{align-items:center;background:#fff;border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;flex:1;flex-direction:column;gap:.4rem;justify-content:center;padding:1.2rem .6rem;transition:all .2s}.homework-page__action-btn:active{box-shadow:0 .05rem .2rem rgba(0,0,0,.04);transform:scale(.98)}.homework-page__action-btn.assign{background:linear-gradient(135deg,#3a86ff,#5b9eff)}.homework-page__action-btn.submit{background:#14b8a6}.homework-page__action-icon{font-size:1.2rem}.homework-page__action-text{color:#fff;font-size:.75rem;font-weight:500}.homework-page__list{background:#f5f7fa;padding:.2rem .8rem 1.2rem}.homework-page__toolbar{align-items:center;background:#fff;border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;gap:.4rem;margin-bottom:.4rem;padding:.4rem .5rem}.homework-page__search-mini{flex:1;min-width:0}.homework-page__select-mini{align-items:center;cursor:pointer;display:flex;gap:.2rem;padding:.2rem .4rem;transition:all .2s}.homework-page__select-mini:active{opacity:.8}.homework-page__checkbox-mini{align-items:center;background:#fff;border:.05rem solid rgba(0,0,0,.08);border-radius:.2rem;display:flex;height:.9rem;justify-content:center;transition:all .2s;width:.9rem}.homework-page__checkbox-mini--checked{background:#3a86ff;border-color:#3a86ff}.homework-page__checkbox-mini-icon{color:#fff;font-size:.6rem;font-weight:700;line-height:1}.homework-page__select-mini-text{color:#1a1a1a;font-size:.65rem;font-weight:500}.homework-page__selected-mini{background:#e8f1ff;border-radius:24.975rem;padding:.2rem .4rem}.homework-page__selected-mini-text{color:#3a86ff;font-size:.65rem;font-weight:500}.homework-page__empty,.homework-page__loading{padding:2rem 0;text-align:center}.homework-page__empty Text,.homework-page__loading Text{color:#999;font-size:.75rem}.homework-page__checkbox{align-items:center;background:#fff;border:.05rem solid rgba(0,0,0,.08);border-radius:.3rem;display:flex;height:1.1rem;justify-content:center;transition:all .2s;width:1.1rem}.homework-page__checkbox--checked{background:#3a86ff;border-color:#3a86ff}.homework-page__checkbox-icon{color:#fff;font-size:.7rem;font-weight:700;line-height:1}.homework-page__student-list{display:flex;flex-direction:column;gap:.3rem}.homework-page__student-card{align-items:center;background:#fff;border:.05rem solid transparent;border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);cursor:pointer;display:flex;gap:.4rem;padding:.6rem;transition:all .2s}.homework-page__student-card:active{transform:scale(.98)}.homework-page__student-card--selected{background:#f5f9ff;border-color:#3a86ff}.homework-page__student-content{align-items:center;display:flex;flex:1;justify-content:space-between}.homework-page__student-name{color:#1a1a1a;font-size:.75rem;font-weight:400}.homework-page__student-badge{background:#14b8a6;border-radius:24.975rem;padding:.2rem .5rem}.homework-page__student-badge Text{color:#fff;font-size:.6rem;font-weight:500}.homework-page__student-badge-text{color:#fff;font-size:.6rem;font-weight:500}.homework-assign-page{background:#f5f5f5;min-height:100vh}.homework-assign-page__card{background:#fff;border-radius:.6rem;box-shadow:0 .05rem .3rem rgba(0,0,0,.08);box-sizing:border-box;margin:.6rem;padding:.8rem}.homework-assign-page__form-item{margin-bottom:.6rem}.homework-assign-page__form-item:last-child{margin-bottom:0}.homework-assign-page__form-label{color:#333;display:block;font-size:.8rem;font-weight:500;margin-bottom:.4rem}.homework-assign-page__form-input{align-items:center;background:#fff;border:.025rem solid #d9d9d9;border-radius:.2rem;box-sizing:border-box;color:#333;display:flex;font-size:.7rem;font-weight:400;height:2rem;padding:0 .5rem;transition:border-color .2s;width:100%}.homework-assign-page__form-input:focus{border-color:#3a86ff}.homework-assign-page__form-input::-webkit-input-placeholder{color:#bfbfbf;font-size:.7rem}.homework-assign-page__form-input::-moz-placeholder{color:#bfbfbf;font-size:.7rem}.homework-assign-page__form-input::placeholder{color:#bfbfbf;font-size:.7rem}.homework-assign-page__form-textarea{background:#fff;border:.025rem solid #d9d9d9;border-radius:.2rem;box-sizing:border-box;color:#333;font-size:.7rem;font-weight:400;line-height:1rem;min-height:5rem;padding:.4rem .5rem;transition:border-color .2s;width:100%}.homework-assign-page__form-textarea:focus{border-color:#3a86ff}.homework-assign-page__form-textarea::-webkit-input-placeholder{color:#999;font-size:.7rem}.homework-assign-page__form-textarea::-moz-placeholder{color:#999;font-size:.7rem}.homework-assign-page__form-textarea::placeholder{color:#999;font-size:.7rem}.homework-assign-page__chip-group{display:flex;flex-wrap:wrap;gap:.4rem}.homework-assign-page__chip{background:#f7f8fa;border:none;border-radius:24.975rem;color:#666;cursor:pointer;font-size:.6rem;font-weight:400;padding:.3rem .6rem;transition:all .25s ease}.homework-assign-page__chip:active{transform:scale(.96)}.homework-assign-page__chip--active{background:#3a86ff;box-shadow:0 .1rem .3rem rgba(58,134,255,.2);color:#fff;font-weight:500}.homework-assign-page__select-wrap{position:relative}.homework-assign-page__select-box{background:#f7f8fa;border:none;border-radius:.3rem;display:flex;flex-direction:column;gap:.3rem;padding:.4rem}.homework-assign-page__select-box--focus{background:#fff;border:.025rem solid #3a86ff}.homework-assign-page__select-tags{display:flex;flex-wrap:wrap;gap:.2rem}.homework-assign-page__select-tag{align-items:center;background:rgba(58,134,255,.1);border-radius:.2rem;display:inline-flex;height:1.4rem;line-height:1.4rem;max-width:6.5rem;padding:0 .4rem 0 .5rem}.homework-assign-page__select-tag-text{color:#3a86ff;font-size:.65rem;font-weight:400;max-width:4.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.homework-assign-page__select-tag-close{align-items:center;display:flex;height:1rem;justify-content:center;margin-left:.1rem;width:1rem}.homework-assign-page__select-tag-close-x{color:#999;font-size:.65rem;font-weight:500;line-height:1}.homework-assign-page__select-input-wrap{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.08);border-radius:.2rem;display:flex;height:1.8rem;padding:0 .4rem}.homework-assign-page__select-search-icon{color:#999;font-size:.7rem;margin-right:.2rem;opacity:.5}.homework-assign-page__select-input{align-items:center;background:transparent;color:#333;display:flex;flex:1;font-size:.7rem;font-weight:400;height:1.8rem}.homework-assign-page__select-input::-webkit-input-placeholder{color:#999;font-size:.7rem}.homework-assign-page__select-input::-moz-placeholder{color:#999;font-size:.7rem}.homework-assign-page__select-input::placeholder{color:#999;font-size:.7rem}.homework-assign-page__select-dropdown{background:#fff;border:.025rem solid #e8e8e8;border-radius:.2rem;box-shadow:0 .1rem .4rem rgba(0,0,0,.12);left:0;margin-top:.3rem;position:absolute;right:0;z-index:100}.homework-assign-page__dropdown-toolbar{align-items:center;border-bottom:.025rem solid rgba(0,0,0,.06);display:flex;justify-content:space-between;padding:.5rem .6rem}.homework-assign-page__dropdown-all{color:#3a86ff;font-size:.6rem;font-weight:500}.homework-assign-page__dropdown-count{color:#999;font-size:.6rem;font-weight:400}.homework-assign-page__dropdown-scroll{max-height:12rem}.homework-assign-page__dropdown-item{align-items:center;display:flex;gap:.4rem;padding:.5rem .6rem;transition:background .2s ease}.homework-assign-page__dropdown-item:active{background:#f7f8fa}.homework-assign-page__dropdown-item--selected{background:rgba(58,134,255,.08)}.homework-assign-page__dropdown-item-check{align-items:center;display:flex;flex-shrink:0;justify-content:center;width:1rem}.homework-assign-page__check-icon{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.12);border-radius:50%;color:#fff;display:flex;font-size:.6rem;height:1rem;justify-content:center;transition:all .25s ease;width:1rem}.homework-assign-page__check-icon--on{background:#3a86ff;border-color:#3a86ff;box-shadow:0 .05rem .2rem rgba(58,134,255,.25)}.homework-assign-page__dropdown-item-avatar{border:.025rem solid rgba(0,0,0,.06);border-radius:50%;flex-shrink:0;height:1.4rem;width:1.4rem}.homework-assign-page__dropdown-item-avatar-fake{align-items:center;background:#3a86ff;border-radius:50%;display:flex;flex-shrink:0;height:1.4rem;justify-content:center;width:1.4rem}.homework-assign-page__dropdown-item-avatar-letter{color:#fff;font-size:.6rem;font-weight:500}.homework-assign-page__dropdown-item-name{color:#333;flex:1;font-size:.7rem;font-weight:400}.homework-assign-page__dropdown-empty{padding:1.2rem;text-align:center}.homework-assign-page__dropdown-empty-text{color:#999;font-size:.6rem;font-weight:400}.homework-assign-page__select-mask{bottom:0;left:0;position:fixed;right:0;top:0;z-index:99}.homework-assign-page__media-grid{display:flex;flex-wrap:wrap;gap:.4rem}.homework-assign-page__media-item{background:#f7f8fa;border:none;border-radius:.4rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);overflow:hidden;position:relative;width:5rem}.homework-assign-page__media-item--video{background:#1a1a2e}.homework-assign-page__media-thumb{display:block;height:4rem;width:5rem}.homework-assign-page__video-empty{align-items:center;background:#f7f8fa;border:.025rem solid #d9d9d9;border-radius:.2rem;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;height:5rem;justify-content:center}.homework-assign-page__video-empty:active{background:#fff;border-color:#3a86ff}.homework-assign-page__video-empty-icon{color:#bfbfbf;font-size:1.2rem;font-weight:300;line-height:1}.homework-assign-page__video-empty-text{color:#666;font-size:.7rem;font-weight:500}.homework-assign-page__video-empty-hint{color:#999;font-size:.55rem}.homework-assign-page__video-thumb{align-items:center;background:#333;cursor:pointer;display:flex;height:4rem;justify-content:center;width:5rem}.homework-assign-page__video-play-icon{color:hsla(0,0%,100%,.9);font-size:1.2rem}.homework-assign-page__media-del{align-items:center;background:rgba(239,68,68,.9);border-radius:0 .4rem 0 .3rem;cursor:pointer;display:flex;height:1.1rem;justify-content:center;position:absolute;right:0;top:0;transition:background .2s ease;width:1.1rem}.homework-assign-page__media-del:active{background:#ef4444}.homework-assign-page__media-del-icon{color:#fff;font-size:.65rem;font-weight:600;line-height:1}.homework-assign-page__media-loading{align-items:center;background:hsla(0,0%,100%,.9);border-radius:.4rem .4rem 0 0;display:flex;height:4rem;justify-content:center;left:0;position:absolute;right:0;top:0}.homework-assign-page__media-loading-text{color:#3a86ff;font-size:.6rem;font-weight:500}.homework-assign-page__media-name-input{background:#fff;border-top:.025rem solid rgba(0,0,0,.06);box-sizing:border-box;color:#333;font-size:.6rem;font-weight:400;height:1.5rem;padding:0 .35rem;width:5rem}.homework-assign-page__media-name-input::-webkit-input-placeholder{color:#999;font-size:.6rem}.homework-assign-page__media-name-input::-moz-placeholder{color:#999;font-size:.6rem}.homework-assign-page__media-name-input::placeholder{color:#999;font-size:.6rem}.homework-assign-page__media-add{align-items:center;background:#f7f8fa;border:.025rem dashed rgba(0,0,0,.12);border-radius:.4rem;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;height:5.5rem;justify-content:center;transition:all .25s ease;width:5rem}.homework-assign-page__media-add:active{background:#fff;border-color:#3a86ff}.homework-assign-page__media-add-icon{color:#999;font-size:1.2rem;font-weight:300}.homework-assign-page__media-add-label{color:#999;font-size:.6rem;font-weight:400}.homework-assign-page__date-row{align-items:center;background:#f7f8fa;border:none;border-radius:.3rem;cursor:pointer;display:flex;height:2.2rem;justify-content:space-between;padding:0 .6rem;transition:all .25s ease}.homework-assign-page__date-row:active{background:#fff;border:.025rem solid #3a86ff}.homework-assign-page__date-text{color:#333;font-size:.7rem;font-weight:400}.homework-assign-page__date-placeholder{color:#999;font-size:.7rem;font-weight:400}.homework-assign-page__date-arrow{color:#999;font-size:.5rem}.homework-assign-page__submit-btn{align-items:center;background:#3a86ff;border-radius:24.975rem;box-shadow:0 .1rem .3rem rgba(58,134,255,.25);cursor:pointer;display:flex;height:2.4rem;justify-content:center;margin-top:1.2rem;transition:all .25s ease;width:100%}.homework-assign-page__submit-btn:active{box-shadow:0 .05rem .2rem rgba(58,134,255,.2);opacity:.9;transform:scale(.97)}.homework-assign-page__submit-btn--loading{box-shadow:none;cursor:not-allowed;opacity:.6}.homework-assign-page__submit-btn-text{color:#fff;font-size:.8rem;font-weight:500;letter-spacing:.05rem}.homework-submit-page{background:#f5f7fa;min-height:100vh;padding-bottom:1rem}.homework-submit-page__search-bar{background:#f5f7fa;padding:.5rem .6rem .2rem;position:-webkit-sticky;position:sticky;top:2.2rem;z-index:20}.homework-submit-page__search-inner{align-items:center;background:#fff;border-radius:24.975rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);display:flex;height:1.8rem;padding:0 .6rem}.homework-submit-page__search-input{align-items:center;color:#333;display:flex;flex:1;font-size:.75rem;height:1.8rem}.homework-submit-page__search-clear{color:#ccc;flex-shrink:0;font-size:.75rem;padding:0 .2rem}.homework-submit-page__student-bar{align-items:center;background:#fff;display:flex;position:-webkit-sticky;position:sticky;top:4.2rem;z-index:19}.homework-submit-page__arrow{align-items:center;background:#fff;display:flex;flex-shrink:0;height:100%;justify-content:center;min-height:3rem;width:1.3rem;z-index:2}.homework-submit-page__arrow--left{box-shadow:.1rem 0 .3rem rgba(0,0,0,.06)}.homework-submit-page__arrow--right{box-shadow:-.1rem 0 .3rem rgba(0,0,0,.06)}.homework-submit-page__arrow-icon{color:#999;font-size:.9rem;font-weight:600}.homework-submit-page__student-scroll{flex:1;padding:.45rem 0 .35rem;white-space:nowrap}.homework-submit-page__student-tab-list{display:inline-flex;gap:.7rem;padding:0 .6rem}.homework-submit-page__student-tab{align-items:center;display:inline-flex;flex-direction:column;min-width:2rem;position:relative}.homework-submit-page__student-tab:active{transform:scale(.97)}.homework-submit-page__student-tab-avatar-wrap{border:.075rem solid transparent;border-radius:50%;height:1.7rem;overflow:hidden;transition:all .2s;width:1.7rem}.homework-submit-page__student-tab.active .homework-submit-page__student-tab-avatar-wrap{border-color:#3a86ff;box-shadow:0 .1rem .3rem rgba(58,134,255,.22)}.homework-submit-page__student-tab-avatar{border-radius:50%;height:1.7rem;width:1.7rem}.homework-submit-page__student-tab-avatar-fake{align-items:center;background:linear-gradient(135deg,#3a86ff,#5b9eff);border-radius:50%;display:flex;height:1.7rem;justify-content:center;width:1.7rem}.homework-submit-page__student-tab-avatar-letter{color:#fff;font-size:.65rem;font-weight:500}.homework-submit-page__student-tab-name{color:#999;font-size:.6rem;margin-top:.15rem;max-width:2.4rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.homework-submit-page__student-tab.active .homework-submit-page__student-tab-name{color:#3a86ff;font-weight:500}.homework-submit-page__student-tab-indicator{background:#3a86ff;border-radius:.075rem;bottom:0;height:.15rem;left:50%;position:absolute;transform:translateX(-50%);width:.7rem}.homework-submit-page__empty-section{padding:2rem 0;text-align:center}.homework-submit-page__empty-text{color:#999;font-size:.75rem}.homework-submit-page__hw-card{background:#fff;border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin:.5rem .6rem 0;overflow:hidden}.homework-submit-page__hw-card-header{align-items:center;display:flex;justify-content:space-between;padding:.65rem .7rem}.homework-submit-page__hw-card-left{align-items:center;display:flex;flex:1;gap:.35rem;min-width:0}.homework-submit-page__hw-type-tag{background:#e8f1ff;border-radius:.2rem;color:#3a86ff;display:inline-block;flex-shrink:0;font-size:.6rem;font-weight:500;padding:.1rem .35rem}.homework-submit-page__hw-title{color:#333;font-size:.75rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.homework-submit-page__hw-card-right{align-items:center;display:flex;flex-shrink:0;gap:.3rem}.homework-submit-page__hw-status{font-size:.6rem;font-weight:500}.homework-submit-page__hw-status--done{color:#22c55e}.homework-submit-page__hw-status--pending{color:#f59e0b}.homework-submit-page__hw-expand-arrow{color:#e5e6eb;font-size:.75rem;transition:transform .2s}.homework-submit-page__hw-expand-arrow.open{transform:rotate(90deg)}.homework-submit-page__hw-card-body{border-top:.025rem solid rgba(0,0,0,.04)}.homework-submit-page__hw-info-zone{background:#f7f8fa;padding:.55rem .7rem}.homework-submit-page__hw-info-row{align-items:flex-start;display:flex;margin-bottom:.35rem}.homework-submit-page__hw-info-row:last-child{margin-bottom:0}.homework-submit-page__hw-info-label{color:#999;flex-shrink:0;font-size:.6rem;line-height:1.6;width:3.25rem}.homework-submit-page__hw-info-value{color:#333;flex:1;font-size:.65rem;line-height:1.6}.homework-submit-page__hw-info-content{white-space:pre-wrap;word-break:break-all}.homework-submit-page__hw-att-list{display:flex;flex-wrap:wrap;gap:.3rem}.homework-submit-page__hw-att-item{align-items:center;display:flex;flex-direction:column;gap:.1rem}.homework-submit-page__hw-att-thumb{border-radius:.2rem;height:2.2rem;width:2.2rem}.homework-submit-page__hw-att-name{color:#999;font-size:.45rem;max-width:2.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.homework-submit-page__hw-submit-zone{padding:.6rem .7rem}.homework-submit-page__submit-textarea{background:#fff;border:.025rem solid #d9d9d9;border-radius:.2rem;box-sizing:border-box;color:#333;font-size:.7rem;line-height:1rem;margin-bottom:.5rem;min-height:5rem;padding:.4rem .5rem;transition:border-color .2s;width:100%}.homework-submit-page__submit-textarea:focus{border-color:#3a86ff}.homework-submit-page__submit-textarea::-webkit-input-placeholder{color:#999;font-size:.7rem}.homework-submit-page__submit-textarea::-moz-placeholder{color:#999;font-size:.7rem}.homework-submit-page__submit-textarea::placeholder{color:#999;font-size:.7rem}.homework-submit-page__hw-submitted-tip{color:#22c55e;font-size:.65rem;padding:.7rem;text-align:center}.homework-submit-page__submitted-time{margin-top:.4rem;text-align:right}.homework-submit-page__submitted-time-text{color:#ccc;font-size:.6rem}.homework-submit-page__media-grid{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.homework-submit-page__media-item{background:#f7f8fa;border-radius:.4rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);overflow:hidden;position:relative;width:5rem}.homework-submit-page__media-item--video{background:#1a1a2e}.homework-submit-page__media-thumb{display:block;height:5rem;width:5rem}.homework-submit-page__video-thumb{align-items:center;background:#333;cursor:pointer;display:flex;height:5rem;justify-content:center;width:5rem}.homework-submit-page__video-play-icon{color:hsla(0,0%,100%,.9);font-size:1.2rem}.homework-submit-page__media-del{align-items:center;background:rgba(239,68,68,.9);border-radius:0 .4rem 0 .3rem;cursor:pointer;display:flex;height:1.1rem;justify-content:center;position:absolute;right:0;top:0;transition:background .2s ease;width:1.1rem}.homework-submit-page__media-del:active{background:#ef4444}.homework-submit-page__media-del-icon{color:#fff;font-size:.65rem;font-weight:600;line-height:1}.homework-submit-page__media-add{align-items:center;background:#f7f8fa;border:.025rem dashed rgba(0,0,0,.12);border-radius:.4rem;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;height:5.5rem;justify-content:center;transition:all .25s ease;width:5rem}.homework-submit-page__media-add:active{background:#fff;border-color:#3a86ff}.homework-submit-page__media-add-icon{color:#999;font-size:1.2rem;font-weight:300}.homework-submit-page__media-add-label{color:#999;font-size:.6rem;font-weight:400}.homework-submit-page__media-name-input{background:#fff;border-top:.025rem solid rgba(0,0,0,.06);box-sizing:border-box;color:#333;font-size:.6rem;font-weight:400;height:1.5rem;padding:0 .35rem;width:5rem}.homework-submit-page__media-name-input::-webkit-input-placeholder{color:#999;font-size:.6rem}.homework-submit-page__media-name-input::-moz-placeholder{color:#999;font-size:.6rem}.homework-submit-page__media-name-input::placeholder{color:#999;font-size:.6rem}.homework-submit-page__btn-submit{align-items:center;background:linear-gradient(135deg,#3a86ff,#5b9eff);border:none;border-radius:24.975rem;box-shadow:0 .15rem .5rem rgba(58,134,255,.3);color:#fff;display:flex;font-size:.75rem;font-weight:500;height:2rem;justify-content:center;letter-spacing:.05rem;margin-top:.6rem;width:100%}.homework-submit-page__btn-submit:active{box-shadow:0 .075rem .3rem rgba(58,134,255,.25);transform:scale(.98)}.homework-submit-page__btn-submit.disabled{box-shadow:none;opacity:.5}.homework-submit-page__btn-submit-text{color:#fff;font-size:.75rem;font-weight:500;letter-spacing:.05rem}.homework-submit-page__custom-card{background:#fff;border-radius:.6rem;box-shadow:0 .05rem .2rem rgba(0,0,0,.04);margin:.5rem .6rem 0;overflow:hidden}.homework-submit-page__custom-card-header{align-items:center;display:flex;justify-content:space-between;padding:.65rem .7rem}.homework-submit-page__custom-card-left{align-items:center;display:flex;gap:.25rem}.homework-submit-page__custom-icon{font-size:.75rem}.homework-submit-page__custom-title{color:#333;font-size:.75rem;font-weight:500}.homework-submit-page__custom-card-body{border-top:.025rem solid rgba(0,0,0,.04)}.homework-submit-page__custom-info-zone{background:#f7f8fa;padding:.6rem .7rem}.homework-submit-page__custom-field{margin-bottom:.45rem}.homework-submit-page__custom-field:last-child{margin-bottom:0}.homework-submit-page__custom-field-label{color:#999;display:block;font-size:.6rem;margin-bottom:.2rem}.homework-submit-page__custom-field-input{align-items:center;background:#fff;border:.025rem solid rgba(0,0,0,.08);border-radius:.2rem;box-sizing:border-box;color:#333;display:flex;font-size:.75rem;height:1.8rem;padding:0 .5rem;width:100%}.homework-submit-page__custom-field-input:focus{border-color:#3a86ff}.homework-submit-page__custom-field-textarea{background:#fff;border:.025rem solid rgba(0,0,0,.08);border-radius:.2rem;box-sizing:border-box;color:#333;font-size:.75rem;min-height:3.5rem;padding:.4rem .5rem;width:100%}.homework-submit-page__custom-field-textarea:focus{border-color:#3a86ff}.homework-submit-page__custom-divider{align-items:center;display:flex;padding:.6rem .7rem 0}.homework-submit-page__custom-divider::after,.homework-submit-page__custom-divider::before{background:rgba(0,0,0,.04);content:"";flex:1;height:.025rem}.homework-submit-page__custom-divider-text{color:#3a86ff;font-size:.6rem;font-weight:500;padding:0 .5rem;white-space:nowrap}.homework-submit-page__custom-submit-zone{padding:.6rem .7rem .7rem}.homework-submit-page__chip-group{display:flex;gap:.35rem}.homework-submit-page__chip{background:#fff;border:.025rem solid rgba(0,0,0,.08);border-radius:24.975rem;color:#999;font-size:.6rem;font-weight:400;padding:.2rem .6rem;transition:all .2s}.homework-submit-page__chip:active{transform:scale(.96)}.homework-submit-page__chip.active{background:linear-gradient(135deg,#3a86ff,#5b9eff);border-color:transparent;box-shadow:0 .1rem .3rem rgba(58,134,255,.22);color:#fff;font-weight:500}