.ios-glass-page[data-v-722bfdd7]{min-height:100vh;width:100%;background:radial-gradient(circle at top left,#f1f3f9,#dfe4ea);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica,Arial,sans-serif;color:#1c1c1e;overflow:hidden;display:flex;flex-direction:column}.background-blobs[data-v-722bfdd7]{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.background-blobs .blob[data-v-722bfdd7]{position:absolute;border-radius:50%;filter:blur(60px);opacity:.5}.background-blobs .blob-1[data-v-722bfdd7]{width:250px;height:250px;background:#cce0ff;top:-50px;left:-50px}.background-blobs .blob-2[data-v-722bfdd7]{width:300px;height:300px;background:#ffe5d0;top:20%;right:-80px}.background-blobs .blob-3[data-v-722bfdd7]{width:200px;height:200px;background:#e0f2f1;bottom:10%;left:10%}.fixed-header[data-v-722bfdd7]{position:relative;z-index:10;padding:16px 16px 10px;flex-shrink:0}.class-selector[data-v-722bfdd7]{margin-bottom:10px}.glass-panel[data-v-722bfdd7]{background:hsla(0,0%,100%,.65);border:1px solid hsla(0,0%,100%,.8);border-radius:16px;padding:14px 16px;box-shadow:0 4px 16px rgba(0,0,0,.03)}.glass-panel[data-v-722bfdd7]:active{opacity:.8;transform:scale(.99);transition:all .2s}.glass-panel .selector-content[data-v-722bfdd7]{display:flex;justify-content:space-between;align-items:center}.glass-panel .selector-content .label[data-v-722bfdd7]{font-size:14px;color:#8e8e93}.glass-panel .selector-content .value[data-v-722bfdd7]{font-size:15px;font-weight:600;color:#007aff;display:flex;align-items:center;gap:4px}.filter-sort-controls[data-v-722bfdd7]{display:flex;flex-direction:column;gap:8px}.segment-control .segment-bg[data-v-722bfdd7]{display:flex;background:rgba(118,118,128,.12);padding:2px;border-radius:9px}.segment-control .segment-bg .segment-item[data-v-722bfdd7]{flex:1;text-align:center;padding:6px 0;font-size:13px;font-weight:500;color:#1c1c1e;border-radius:7px;transition:all .3s cubic-bezier(.25,.8,.25,1);cursor:pointer}.segment-control .segment-bg .segment-item.active[data-v-722bfdd7]{background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.1);font-weight:600;color:#000}.list-container[data-v-722bfdd7]{position:relative;z-index:1;flex:1;overflow-y:auto;padding-bottom:20px}.list-container[data-v-722bfdd7]::-webkit-scrollbar{width:0}.flat-list-wrapper[data-v-722bfdd7]{padding-top:4px}.index-badge[data-v-722bfdd7]{flex-shrink:0;width:26px;height:26px;border-radius:8px;background:rgba(0,122,255,.08);color:#007aff;font-size:12px;font-weight:600;font-family:DIN Alternate,-apple-system,sans-serif;display:flex;align-items:center;justify-content:center;margin-right:12px}[data-v-722bfdd7] .van-index-anchor{background:transparent!important;color:#8e8e93;font-weight:600;padding-left:20px;line-height:32px}[data-v-722bfdd7] .van-index-bar__sidebar{right:8px}[data-v-722bfdd7] .van-index-bar__sidebar .van-index-bar__index{color:#007aff;font-size:11px;font-weight:600;line-height:16px;padding:2px 4px}.student-card[data-v-722bfdd7]{display:flex;align-items:center;background:hsla(0,0%,100%,.65);margin:0 16px 12px 16px;padding:12px 14px;border-radius:18px;border:1px solid hsla(0,0%,100%,.6);box-shadow:0 4px 12px rgba(0,0,0,.03);transition:all .2s cubic-bezier(.25,.8,.25,1);position:relative;overflow:hidden}.student-card[data-v-722bfdd7]:active{transform:scale(.985);background:hsla(0,0%,100%,.85)}.student-card .info[data-v-722bfdd7]{flex:1;display:flex;flex-direction:column;justify-content:center}.student-card .info .name-row[data-v-722bfdd7]{margin-bottom:4px}.student-card .info .name-row .name[data-v-722bfdd7]{font-size:16px;font-weight:600;color:#1c1c1e;letter-spacing:.5px}.student-card .info .meta-row[data-v-722bfdd7]{font-size:13px;color:#8e8e93;display:flex;align-items:center}.student-card .info .meta-row .label[data-v-722bfdd7]{margin-right:6px;font-size:11px;background:rgba(0,0,0,.05);padding:1px 4px;border-radius:4px}.student-card .info .meta-row .code[data-v-722bfdd7]{font-family:DIN Alternate,sans-serif;letter-spacing:.5px}.student-card .action-area[data-v-722bfdd7]{margin-left:10px;flex-shrink:0}.student-card .action-area .action-done-group[data-v-722bfdd7]{display:flex;align-items:center;gap:8px}.student-card .action-area .status-box.done[data-v-722bfdd7]{display:flex;flex-direction:column;align-items:center}.student-card .action-area .status-box.done .icon-circle[data-v-722bfdd7]{width:22px;height:22px;border-radius:50%;background:#34c759;color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:2px;box-shadow:0 2px 5px rgba(52,199,89,.3)}.student-card .action-area .status-box.done .icon-circle i[data-v-722bfdd7]{font-size:12px}.student-card .action-area .status-box.done .text[data-v-722bfdd7]{font-size:10px;color:#34c759;font-weight:500}.student-card .action-area .reset-btn[data-v-722bfdd7]{background:rgba(255,59,48,.08);color:#ff3b30;border:1px solid rgba(255,59,48,.22);border-radius:16px;padding:5px 12px;font-size:12px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.25,.8,.25,1);box-shadow:0 2px 5px rgba(255,59,48,.06)}.student-card .action-area .reset-btn[data-v-722bfdd7]:active{background:rgba(255,59,48,.18);transform:scale(.95)}.student-card .action-area .status-btn.todo[data-v-722bfdd7]{background:#007aff;color:#fff;padding:8px 14px;border-radius:20px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:4px;box-shadow:0 4px 10px rgba(0,122,255,.25);transition:all .2s;cursor:pointer}.student-card .action-area .status-btn.todo[data-v-722bfdd7]:active{background:#0062cc;transform:scale(.96)}.student-card .action-area .status-btn.todo i[data-v-722bfdd7]{font-size:14px}.empty-state[data-v-722bfdd7]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:100px;color:#8e8e93;font-size:14px}.empty-state p[data-v-722bfdd7]{margin-top:10px}.glass-popup[data-v-722bfdd7]{background:#f2f2f7}.popup-header[data-v-722bfdd7]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff}.popup-header .btn[data-v-722bfdd7]{font-size:15px;cursor:pointer}.popup-header .cancel[data-v-722bfdd7]{color:#8e8e93}.popup-header .confirm[data-v-722bfdd7]{color:#007aff;font-weight:600}.popup-header .title[data-v-722bfdd7]{font-weight:600;font-size:16px}.grade-capsule-bar[data-v-722bfdd7]{padding:10px 16px 8px;background:#fff;border-bottom:1px solid rgba(0,0,0,.05)}.grade-capsule-bar .grade-scroll-wrap[data-v-722bfdd7]{display:flex;overflow-x:auto;gap:8px;padding-bottom:2px;-ms-overflow-style:none;scrollbar-width:none}.grade-capsule-bar .grade-scroll-wrap[data-v-722bfdd7]::-webkit-scrollbar{display:none;width:0;height:0}.grade-capsule-bar .grade-pill[data-v-722bfdd7]{flex-shrink:0;padding:6px 14px;border-radius:16px;font-size:13px;background:rgba(118,118,128,.08);color:#636366;display:flex;align-items:center;gap:4px;cursor:pointer;transition:all .25s cubic-bezier(.25,.8,.25,1);font-weight:500}.grade-capsule-bar .grade-pill .grade-count[data-v-722bfdd7]{font-size:11px;opacity:.75}.grade-capsule-bar .grade-pill.active[data-v-722bfdd7]{background:#007aff;color:#fff;font-weight:600;box-shadow:0 2px 8px rgba(0,122,255,.3)}.grade-capsule-bar .grade-pill.active .grade-count[data-v-722bfdd7]{opacity:.9}.grade-capsule-bar .grade-pill[data-v-722bfdd7]:active{transform:scale(.96)}.picker-option-row[data-v-722bfdd7]{display:flex;align-items:center;justify-content:center;width:100%;padding:0 16px;box-sizing:border-box}.picker-option-row .picker-class-name[data-v-722bfdd7]{font-size:15px;color:#1c1c1e;font-weight:500;max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:8px}.picker-option-row .picker-count-badge[data-v-722bfdd7]{flex-shrink:0;font-size:11px;font-weight:600;padding:2px 7px;border-radius:10px;background:rgba(0,122,255,.1);color:#007aff;border:1px solid rgba(0,122,255,.22);line-height:1.3;white-space:nowrap}.picker-option-row .picker-count-badge.is-full[data-v-722bfdd7]{background:rgba(52,199,89,.12);color:#34c759;border:1px solid rgba(52,199,89,.28)}[data-v-722bfdd7] .van-picker-column__item--selected .picker-class-name{font-weight:600;color:#000}