.reason-list[data-v-c4b4a065]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.reason-btn[data-v-c4b4a065]{width:100%;min-width:0}.score-adjust[data-v-c4b4a065]{display:flex;align-items:center;gap:14px;margin:16px 0;font-size:18px}.score-adjust strong[data-v-c4b4a065]{min-width:50px;text-align:center;font-size:24px}.plus[data-v-c4b4a065]{color:#e91e63}.minus[data-v-c4b4a065]{color:#2196f3}.score-reason-dialog-title[data-v-c4b4a065]{text-align:center;width:100%;font-size:26px;line-height:1.35;font-weight:900;color:#2563eb;letter-spacing:1px}.score-reason-floating-notice[data-v-c4b4a065]{position:fixed;transform:translate(-50%);z-index:5000;padding:10px 22px;border-radius:18px;font-size:20px;line-height:1.15;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:1px;pointer-events:none;text-align:center;box-shadow:0 16px 48px #00000047}.score-reason-floating-notice.plus[data-v-c4b4a065]{background:#22c55eeb;color:#ecfdf5;border:2px solid rgba(187,247,208,.95)}.score-reason-floating-notice.minus[data-v-c4b4a065]{background:#ef4444eb;color:#fff1f2;border:2px solid rgba(254,202,202,.95)}[data-v-c4b4a065] .score-reason-dialog .el-dialog__header{margin-right:0;text-align:center}[data-v-c4b4a065] .score-dialog-resize-handle{position:absolute;z-index:20;width:20px;height:20px;background:transparent;pointer-events:auto}[data-v-c4b4a065] .score-dialog-resize-tl{left:0;top:0;cursor:nwse-resize}[data-v-c4b4a065] .score-dialog-resize-tr{right:0;top:0;cursor:nesw-resize}[data-v-c4b4a065] .score-dialog-resize-bl{left:0;bottom:0;cursor:nesw-resize}[data-v-c4b4a065] .score-dialog-resize-br{right:0;bottom:0;cursor:nwse-resize}[data-v-c4b4a065] .score-reason-dialog-compact{max-width:calc(100vw - 24px);width:305px;min-height:460px;resize:both;overflow:auto;position:relative}[data-v-c4b4a065] .score-reason-dialog-compact .el-dialog__body{padding-top:10px;padding-bottom:10px}[data-v-c4b4a065] .score-reason-dialog.edge-positioned-dialog{max-height:calc(100vh - 24px);overflow:hidden;display:flex;flex-direction:column}[data-v-c4b4a065] .score-reason-dialog-compact.edge-positioned-dialog{max-height:calc(100vh - 24px);min-height:260px}[data-v-c4b4a065] .score-reason-dialog.edge-positioned-dialog .el-dialog__body{overflow-y:auto;max-height:calc(100vh - 150px)}.lesson-board[data-v-249b9d05]{padding-bottom:84px;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.lesson-board-no-class[data-v-249b9d05]{min-height:calc(100vh - 170px)}.lesson-board[data-v-249b9d05] *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.student-grid[data-v-249b9d05]{display:grid;gap:18px;width:100%;max-width:100%;margin:0 auto;padding:10px 16px;box-sizing:border-box;overflow:hidden}.placeholder-card[data-v-249b9d05]{min-height:180px;visibility:hidden;box-sizing:border-box}.empty-students-guide[data-v-249b9d05]{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:min(920px,calc(100vw - 80px));padding:28px 34px;border-radius:18px;background:#ffffffeb;box-shadow:0 12px 36px #0f172a29;color:#303133;font-size:16px;line-height:1.8;text-align:center;font-weight:700}.empty-template-link[data-v-249b9d05]{border:none;background:transparent;color:#2563eb;cursor:pointer;font-size:inherit;font-weight:900;padding:0 2px;text-decoration:underline}.empty-template-link[data-v-249b9d05]:hover{color:#1d4ed8}.large-center-notice[data-v-249b9d05]{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:5000;padding:22px 44px;border-radius:22px;background:#111827e0;color:#fff;font-size:24px;font-weight:900;letter-spacing:1px;box-shadow:0 16px 48px #00000047;pointer-events:none;text-align:center;max-width:90vw}.large-center-notice.plus[data-v-249b9d05]{background:#22c55eeb;color:#ecfdf5;border:2px solid rgba(187,247,208,.95)}.large-center-notice.minus[data-v-249b9d05]{background:#ef4444eb;color:#fff1f2;border:2px solid rgba(254,202,202,.95)}.student-card[data-v-249b9d05]{background:#fff;border-radius:15px;padding:10px;text-align:center;box-shadow:0 4px 15px #0000001a;transition:all .25s;min-height:180px;min-width:0;width:100%;max-width:100%;position:relative;-webkit-user-select:none;user-select:none;touch-action:none;box-sizing:border-box;overflow:hidden}.student-card.attendance-disabled-card[data-v-249b9d05]{filter:grayscale(.2);background:#f5f5f5}.student-card.rank-1[data-v-249b9d05]{border:4px solid #FFD700;box-shadow:0 0 20px #ffd70080}.student-card.rank-2[data-v-249b9d05]{border:4px solid #C0C0C0;box-shadow:0 0 20px #c0c0c080}.student-card.rank-3[data-v-249b9d05]{border:4px solid #CD7F32;box-shadow:0 0 20px #cd7f3280}.student-card[data-v-249b9d05]:hover{transform:translateY(-4px);box-shadow:0 6px 20px #00000026}.student-grid-compact[data-v-249b9d05]{gap:14px;padding:8px 13px}.student-grid-compact .placeholder-card[data-v-249b9d05]{min-height:144px}.student-grid-compact .student-card[data-v-249b9d05]{min-height:144px;padding:8px;border-radius:12px}.student-grid-compact .student-card.rank-1[data-v-249b9d05],.student-grid-compact .student-card.rank-2[data-v-249b9d05],.student-grid-compact .student-card.rank-3[data-v-249b9d05]{border-width:3px}.student-grid-compact .student-card[data-v-249b9d05]:hover{transform:translateY(-3px)}.student-grid-compact .student-info[data-v-249b9d05]{top:6px;left:6px;font-size:10px;gap:5px}.student-grid-compact .student-group-badge[data-v-249b9d05]{top:6px;right:6px;border-radius:6px;padding:2px 6px;font-size:10px}.student-grid-compact .student-number[data-v-249b9d05]{font-size:16px;margin:13px 0 10px;gap:5px}.student-grid-compact .pre-checkin-button[data-v-249b9d05],.student-grid-compact .student-status-button[data-v-249b9d05]{padding:2px 7px;font-size:12px}.student-grid-compact .not-arrived-status-button[data-v-249b9d05],.student-grid-compact .temp-leave-return-button[data-v-249b9d05],.student-grid-compact .leave-status-button[data-v-249b9d05],.student-grid-compact .late-status-button[data-v-249b9d05]{font-size:12px}.student-grid-compact .student-name-link[data-v-249b9d05],.student-grid-compact .student-name-text[data-v-249b9d05]{font-size:21px}.student-grid-compact .score-controls[data-v-249b9d05]{gap:5px;margin-top:11px}.student-grid-compact .score-button[data-v-249b9d05]{transform:scale(1.15)}.student-grid-compact .score-button[data-v-249b9d05]:hover,.student-grid-compact .score-button[data-v-249b9d05]:focus,.student-grid-compact .score-button[data-v-249b9d05]:active{transform:scale(1.18)}.student-grid-compact .student-score[data-v-249b9d05]{font-size:22px;min-width:48px}.student-grid-compact .locked-score[data-v-249b9d05]{margin-top:11px}.student-grid-ultra-compact[data-v-249b9d05]{gap:11px;padding:6px 10px}.student-grid-ultra-compact .placeholder-card[data-v-249b9d05]{min-height:115px}.student-grid-ultra-compact .student-card[data-v-249b9d05]{min-height:115px;padding:6px;border-radius:10px}.student-grid-ultra-compact .student-card.rank-1[data-v-249b9d05],.student-grid-ultra-compact .student-card.rank-2[data-v-249b9d05],.student-grid-ultra-compact .student-card.rank-3[data-v-249b9d05]{border-width:2px}.student-grid-ultra-compact .student-card[data-v-249b9d05]:hover{transform:translateY(-2px)}.student-grid-ultra-compact .student-info[data-v-249b9d05]{top:5px;left:5px;font-size:8px;gap:4px}.student-grid-ultra-compact .student-group-badge[data-v-249b9d05]{top:5px;right:5px;border-radius:5px;padding:1px 5px;font-size:8px}.student-grid-ultra-compact .student-number[data-v-249b9d05]{font-size:13px;margin:10px 0 8px;gap:4px}.student-grid-ultra-compact .pre-checkin-button[data-v-249b9d05],.student-grid-ultra-compact .student-status-button[data-v-249b9d05]{padding:2px 6px;font-size:10px}.student-grid-ultra-compact .not-arrived-status-button[data-v-249b9d05],.student-grid-ultra-compact .temp-leave-return-button[data-v-249b9d05],.student-grid-ultra-compact .leave-status-button[data-v-249b9d05],.student-grid-ultra-compact .late-status-button[data-v-249b9d05]{font-size:10px}.student-grid-ultra-compact .student-name-link[data-v-249b9d05],.student-grid-ultra-compact .student-name-text[data-v-249b9d05]{font-size:17px}.student-grid-ultra-compact .score-controls[data-v-249b9d05]{gap:5px;margin-top:9px}.student-grid-ultra-compact .score-button[data-v-249b9d05]{transform:scale(.92)}.student-grid-ultra-compact .score-button[data-v-249b9d05]:hover,.student-grid-ultra-compact .score-button[data-v-249b9d05]:focus,.student-grid-ultra-compact .score-button[data-v-249b9d05]:active{transform:scale(.94)}.student-grid-ultra-compact .student-score[data-v-249b9d05]{font-size:18px;min-width:38px}.student-grid-ultra-compact .locked-score[data-v-249b9d05]{margin-top:9px}.student-card.rank-1[data-v-249b9d05]:hover{box-shadow:0 0 24px #ffd700b3}.student-card.rank-2[data-v-249b9d05]:hover{box-shadow:0 0 24px #c0c0c0b3}.student-card.rank-3[data-v-249b9d05]:hover{box-shadow:0 0 24px #cd7f32b3}.student-info[data-v-249b9d05]{position:absolute;top:8px;left:8px;max-width:58%;font-size:13px;color:#666;display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:3}.student-group-badge[data-v-249b9d05]{position:absolute;top:8px;right:8px;max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid;border-radius:8px;padding:2px 8px;font-size:13px;font-weight:700;background:#f0fdf4}.student-number[data-v-249b9d05]{font-size:20px;margin:16px 0 12px;display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}.pre-checkin-button[data-v-249b9d05],.student-status-button[data-v-249b9d05]{border:none;border-radius:999px;padding:3px 9px;margin:0;font-size:15px;font-weight:900;cursor:pointer;text-decoration:none;line-height:1.2;box-shadow:0 2px 6px #0f172a1f;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.pre-checkin-button[data-v-249b9d05]:hover,.pre-checkin-button[data-v-249b9d05]:focus,.pre-checkin-button[data-v-249b9d05]:active,.student-status-button[data-v-249b9d05]:hover,.student-status-button[data-v-249b9d05]:focus,.student-status-button[data-v-249b9d05]:active{text-decoration:none;outline:none;transform:translateY(-1px);box-shadow:0 4px 10px #0f172a2e}.pre-checkin-button[data-v-249b9d05]{background:#fee2e2;color:#f56c6c;text-shadow:0 0 5px rgba(245,108,108,.18)}.pre-checkin-button.checked[data-v-249b9d05]{background:#dcfce7;color:#16a34a;text-shadow:0 0 5px rgba(22,163,74,.18);border:1px solid #86efac}.not-arrived-status-button[data-v-249b9d05]{background:#fed7aa;color:#c2410c;text-shadow:0 0 5px rgba(234,88,12,.18);border:1px solid #fb923c;font-size:15px}.temp-leave-return-button[data-v-249b9d05]{background:#fef08a!important;color:#854d0e!important;text-shadow:0 0 5px rgba(202,138,4,.18)!important;border:1px solid #facc15!important;font-size:15px}.leave-status-button[data-v-249b9d05]{background:#fee2e2;color:#f56c6c;text-shadow:0 0 5px rgba(245,108,108,.18);font-size:15px}.late-status-button[data-v-249b9d05]{background:#f5e7d4;color:#92400e;text-shadow:0 0 5px rgba(146,64,14,.16);border:1px solid #c08457;font-size:15px;cursor:default}.not-arrived-status-button[data-v-249b9d05]:hover,.not-arrived-status-button[data-v-249b9d05]:focus,.not-arrived-status-button[data-v-249b9d05]:active{color:#9a3412;background:#fdba74;text-decoration:none!important}.temp-leave-return-button[data-v-249b9d05]:hover,.temp-leave-return-button[data-v-249b9d05]:focus,.temp-leave-return-button[data-v-249b9d05]:active{color:#713f12!important;background:#fde047!important;text-decoration:none!important}.leave-status-button[data-v-249b9d05]:disabled{cursor:default;opacity:1}.leave-status-button[data-v-249b9d05]:disabled:hover{transform:none;box-shadow:0 2px 6px #0f172a1f}.student-name-link[data-v-249b9d05]{display:inline-block;text-decoration:none;font-size:26px;font-weight:600;cursor:pointer;color:#000;background:transparent;border:none;padding:0;pointer-events:auto;position:relative;z-index:2;max-width:100%;white-space:normal;word-break:break-word;line-height:1.25}.student-name-link[data-v-249b9d05]:hover{color:#1976d2;text-decoration:none}.student-name-text[data-v-249b9d05]{font-size:26px;font-weight:600;color:#000;max-width:100%;white-space:normal;word-break:break-word;line-height:1.25}.student-name-text.disabled-name[data-v-249b9d05]{color:#9e9e9e}.score-controls[data-v-249b9d05]{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:14px}.score-button[data-v-249b9d05]{transform:scale(1.44);opacity:.92;transition:background-color .18s ease,border-color .18s ease,color .18s ease,opacity .18s ease,transform .18s ease}.score-button[data-v-249b9d05]:hover,.score-button[data-v-249b9d05]:focus,.score-button[data-v-249b9d05]:active{opacity:1;transform:scale(1.48)}.score-minus-button[data-v-249b9d05]{--el-button-bg-color:#fde2e2;--el-button-border-color:#fab6b6;--el-button-text-color:#d03030;--el-button-hover-bg-color:#f56c6c;--el-button-hover-border-color:#f56c6c;--el-button-hover-text-color:#fff;--el-button-active-bg-color:#f56c6c;--el-button-active-border-color:#f56c6c;--el-button-active-text-color:#fff}.score-plus-button[data-v-249b9d05]{--el-button-bg-color:#e1f3d8;--el-button-border-color:#b3e19d;--el-button-text-color:#2f9e44;--el-button-hover-bg-color:#67c23a;--el-button-hover-border-color:#67c23a;--el-button-hover-text-color:#fff;--el-button-active-bg-color:#67c23a;--el-button-active-border-color:#67c23a;--el-button-active-text-color:#fff}.student-score[data-v-249b9d05]{font-size:28px;font-weight:700;min-width:60px}.locked-score[data-v-249b9d05]{margin-top:14px}.score-zero[data-v-249b9d05]{color:#999}.score-negative[data-v-249b9d05]{color:#2196f3}.score-positive[data-v-249b9d05]{color:#e91e63}.score-high[data-v-249b9d05]{color:#9c27b0}.flash-selected[data-v-249b9d05]{animation:flashBlink-249b9d05 .12s infinite;background:#2196f359!important}.final-selected[data-v-249b9d05]{background:#2196f366!important;border:3px solid #2196f3!important;box-shadow:0 0 25px #2196f399!important;transform:scale(1.06)}@keyframes flashBlink-249b9d05{0%,to{background:#2196f32e}50%{background:#2196f37a}}.drag-source[data-v-249b9d05]{opacity:.45}.drag-target[data-v-249b9d05]:after{content:"";position:absolute;right:4px;top:8px;bottom:8px;width:4px;background:#2196f3;border-radius:2px;box-shadow:0 0 8px #2196f399}.drag-ghost[data-v-249b9d05]{position:fixed;z-index:9999;background:#2196f3d9;color:#fff;padding:12px 18px;border-radius:12px;pointer-events:none}.long-press-hint[data-v-249b9d05]{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000bf;color:#fff;padding:15px 25px;border-radius:10px;z-index:10000}.long-press-hint.show[data-v-249b9d05]{display:block}@media(max-width:1400px){.student-grid[data-v-249b9d05]{gap:14px;padding:8px 12px}.student-card[data-v-249b9d05]{padding:9px}}@media(max-width:1100px){.student-grid[data-v-249b9d05]{gap:10px;padding:8px}.student-name-link[data-v-249b9d05],.student-name-text[data-v-249b9d05]{font-size:22px}.student-score[data-v-249b9d05]{font-size:24px}}.bottom-toolbar[data-v-249b9d05]{position:fixed;left:0;right:0;bottom:0;z-index:1000;background:#fff;border-top:1px solid #ddd;box-shadow:0 -2px 12px #00000014;padding:12px 18px;display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}.bottom-toolbar-actions[data-v-249b9d05]{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}.toolbar-control-shell[data-v-249b9d05]{display:inline-flex;align-items:center}.bottom-workbench-btn[data-v-249b9d05],.bottom-mengyin-btn[data-v-249b9d05],.bottom-saiyin-blackboard-btn[data-v-249b9d05]{font-weight:700}.bottom-toolbar-toggle[data-v-249b9d05]{display:none;border:1px solid #dcdfe6;background:#fff;color:#303133;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:900;box-shadow:0 3px 10px #0f172a1f;cursor:pointer}@media(max-width:900px),(max-width:1366px)and (pointer:coarse){.lesson-board[data-v-249b9d05]{padding-bottom:38px}.lesson-board.bottom-toolbar-expanded[data-v-249b9d05]{padding-bottom:86px}.bottom-toolbar[data-v-249b9d05]{justify-content:flex-start;align-items:center;gap:6px;padding:4px 8px;min-height:34px;box-sizing:border-box;flex-wrap:nowrap}.bottom-toolbar-toggle[data-v-249b9d05]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:30px;min-width:34px;padding:0;font-size:18px;line-height:1}.bottom-toolbar-actions[data-v-249b9d05]{flex:1 1 auto;width:auto;max-height:70px;overflow:auto;padding-top:0;justify-content:flex-start;gap:6px;-webkit-overflow-scrolling:touch}.bottom-toolbar.toolbar-collapsed[data-v-249b9d05]{padding-top:2px;padding-bottom:2px;min-height:34px}.bottom-toolbar.toolbar-collapsed .bottom-toolbar-actions[data-v-249b9d05]{display:none}.bottom-toolbar[data-v-249b9d05]:not(.toolbar-collapsed){align-items:center;max-height:78px;overflow:hidden}.bottom-toolbar:not(.toolbar-collapsed) .el-button[data-v-249b9d05]{margin-left:0}}@media(max-width:600px){.score-controls[data-v-249b9d05],.student-grid-compact .score-controls[data-v-249b9d05],.student-grid-ultra-compact .score-controls[data-v-249b9d05]{gap:2px}}.student-import-hidden-input[data-v-249b9d05]{position:fixed;left:-9999px;top:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.ranking-table[data-v-249b9d05]{width:100%;border-collapse:collapse;margin-bottom:12px}.ranking-table th[data-v-249b9d05],.ranking-table td[data-v-249b9d05]{padding:12px 15px;text-align:center;border:1px solid #ddd;font-size:16px}.ranking-table th[data-v-249b9d05]{background:#4caf50;color:#fff}.ranking-table tr[data-v-249b9d05]:nth-child(2n){background:#f2f2f2}.ranking-table tr[data-v-249b9d05]:hover{background:#e8f5e9}.rank-number[data-v-249b9d05]{font-weight:700}.empty-ranking[data-v-249b9d05]{color:#666;padding:30px}.record-section[data-v-249b9d05]{margin-bottom:24px}.record-section-title[data-v-249b9d05]{font-size:18px;font-weight:700;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #e0e0e0}.record-options[data-v-249b9d05]{display:flex;flex-wrap:wrap;gap:12px}.record-option[data-v-249b9d05]{display:flex;flex-direction:column;align-items:center;padding:10px 14px;background:#f5f5f5;border-radius:10px;border:2px solid transparent;cursor:pointer;min-width:64px}.record-option[data-v-249b9d05]:hover{background:#e3f2fd;border-color:#90caf9}.record-option input[data-v-249b9d05]{margin-bottom:6px;width:18px;height:18px;accent-color:#4caf50;pointer-events:none}.record-option.checked[data-v-249b9d05]{background:#e8f5e9;border-color:#4caf50;box-shadow:0 2px 8px #4caf5033}.record-option small[data-v-249b9d05]{font-size:11px;color:#4caf50;margin-top:4px}.board-loading[data-v-249b9d05]{color:#2563eb}.no-class-center[data-v-249b9d05]{position:fixed;left:50%;top:50%;z-index:50;transform:translate(-50%,-50%);min-width:360px;max-width:90vw;padding:28px 36px;border-radius:18px;background:#fff;border:1px solid #e5e7eb;box-shadow:0 18px 46px #0f172a1f;text-align:center;color:#334155;font-size:16px;font-weight:800;letter-spacing:.5px}.ranking-dialog-title[data-v-249b9d05]{text-align:center;width:100%;font-size:28px;line-height:1.35;font-weight:900;color:#2563eb;letter-spacing:1px}.ranking-dialog-footer[data-v-249b9d05]{display:flex;justify-content:flex-end;align-items:center;gap:14px;width:100%}.mastery-dialog-title[data-v-249b9d05]{text-align:center;width:100%;font-size:28px;line-height:1.35;font-weight:900;color:#2563eb;letter-spacing:1px}.mastery-swipe-area[data-v-249b9d05]{position:relative;min-height:360px;max-height:calc(var(--mastery-dialog-height, 720px) - 176px);overflow-y:auto;overflow-x:hidden;padding-right:8px;touch-action:pan-y;box-sizing:border-box}.mastery-switch-button[data-v-249b9d05]{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:46px;height:82px;border:none;border-radius:999px;background:#2563eb1f;color:#2563eb;font-size:42px;line-height:1;font-weight:900;cursor:pointer;box-shadow:0 8px 24px #2563eb2e;transition:background .18s ease,color .18s ease,transform .18s ease}.mastery-switch-button[data-v-249b9d05]:hover{background:#2563ebe0;color:#fff;transform:translateY(-50%) scale(1.04)}.mastery-switch-left[data-v-249b9d05]{left:-58px}.mastery-switch-right[data-v-249b9d05]{right:-58px}[data-v-249b9d05] .el-dialog.mastery-record-dialog{position:fixed;left:50%;top:max(16px,calc((100vh - var(--mastery-dialog-height, 720px)) / 2));transform:translate(-50%);max-height:calc(100vh - 32px);height:var(--mastery-dialog-height, 720px);margin:0!important;display:flex;flex-direction:column}[data-v-249b9d05] .el-dialog.mastery-record-dialog .el-dialog__header{flex:0 0 auto;margin-right:0;text-align:center}[data-v-249b9d05] .el-dialog.mastery-record-dialog .el-dialog__body{overflow:hidden;flex:1 1 auto;min-height:0}[data-v-249b9d05] .el-dialog.mastery-record-dialog .el-dialog__footer{flex:0 0 auto;text-align:right}[data-v-249b9d05] .el-dialog.mastery-record-dialog .el-dialog__headerbtn{right:70px}[data-v-249b9d05] .el-dialog.mastery-record-dialog .el-dialog__footer{text-align:center}[data-v-249b9d05] .el-dialog.mastery-record-dialog .el-dialog__footer .el-button{margin-left:0}.mastery-resize-layer[data-v-249b9d05]{position:fixed;left:50%;top:max(16px,calc((100vh - var(--mastery-dialog-height, 720px)) / 2));width:var(--mastery-dialog-width, 1300px);height:var(--mastery-dialog-height, 720px);transform:translate(-50%);z-index:3000;pointer-events:none}.mastery-dialog-resize-handle[data-v-249b9d05]{position:absolute;z-index:3001;width:52px;height:52px;background:#2563eb14;border-radius:10px;pointer-events:auto;touch-action:none}.mastery-dialog-resize-handle.resize-nw[data-v-249b9d05]{left:-6px;top:-6px;cursor:nwse-resize}.mastery-dialog-resize-handle.resize-ne[data-v-249b9d05]{right:-6px;top:-6px;cursor:nesw-resize}.mastery-dialog-resize-handle.resize-sw[data-v-249b9d05]{left:-6px;bottom:-6px;cursor:nesw-resize}.mastery-dialog-resize-handle.resize-se[data-v-249b9d05]{right:-6px;bottom:-6px;cursor:nwse-resize}.mastery-dialog-resize-handle[data-v-249b9d05]:after{content:"";position:absolute;top:15px;right:15px;bottom:15px;left:15px;border-color:#2563eb9e;border-style:solid}.mastery-dialog-resize-handle.resize-nw[data-v-249b9d05]:after{border-width:3px 0 0 3px}.mastery-dialog-resize-handle.resize-ne[data-v-249b9d05]:after{border-width:3px 3px 0 0}.mastery-dialog-resize-handle.resize-sw[data-v-249b9d05]:after{border-width:0 0 3px 3px}.mastery-dialog-resize-handle.resize-se[data-v-249b9d05]:after{border-width:0 3px 3px 0}[data-v-249b9d05] .ranking-dialog .el-dialog__header{margin-right:0;text-align:center}.group-dialog-toolbar[data-v-249b9d05]{display:flex;justify-content:flex-start;align-items:center;margin-bottom:12px}.group-color-cell[data-v-249b9d05]{display:flex;align-items:center;justify-content:center}.group-color-input[data-v-249b9d05]{width:38px;height:30px;border:1px solid #dcdfe6;border-radius:4px;background:#fff;padding:2px;cursor:pointer}.attendance-card-scroll[data-v-249b9d05]{width:100%;overflow:auto;padding:4px 2px 10px;box-sizing:border-box}.attendance-card-grid[data-v-249b9d05]{display:grid;gap:12px;align-items:stretch}.attendance-card-placeholder[data-v-249b9d05]{min-height:188px;visibility:hidden}.attendance-card.attendance-card-not-arrived[data-v-249b9d05]{background:linear-gradient(180deg,#fff8db,#fffdf4);border-color:#facc15;box-shadow:0 4px 14px #ca8a042e}.attendance-card.attendance-card-leave[data-v-249b9d05]{background:linear-gradient(180deg,#e0f2fe,#f5fbff);border-color:#7dd3fc;box-shadow:0 4px 14px #0284c724}.attendance-card.attendance-card-late[data-v-249b9d05]{background:linear-gradient(180deg,#f5e7d4,#fff8ed);border-color:#c08457;box-shadow:0 4px 14px #92400e29}.attendance-card-temp-leaving .attendance-return-button[data-v-249b9d05],.attendance-return-button[data-v-249b9d05]:not(.is-disabled){--el-button-bg-color:#16a34a;--el-button-border-color:#15803d;--el-button-text-color:#fff;--el-button-hover-bg-color:#22c55e;--el-button-hover-border-color:#16a34a;--el-button-hover-text-color:#fff;--el-button-active-bg-color:#15803d;--el-button-active-border-color:#166534;--el-button-active-text-color:#fff;font-weight:900;box-shadow:0 4px 12px #16a34a47}.leave-name-text[data-v-249b9d05]{color:#64748b;cursor:default}.attendance-card[data-v-249b9d05]{min-width:0;min-height:188px;border:1px solid #dcdfe6;border-radius:14px;background:#fff;box-shadow:0 4px 12px #0f172a14;padding:10px;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;overflow:hidden}.attendance-card-line[data-v-249b9d05]{min-width:0}.attendance-card-student[data-v-249b9d05]{display:flex;align-items:center;justify-content:center;gap:8px;min-height:30px;font-weight:900;color:#1f2937;white-space:nowrap;overflow:hidden}.attendance-card-display-no[data-v-249b9d05]{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:26px;border-radius:999px;background:#eef2ff;color:#2563eb;font-size:15px}.attendance-card-name[data-v-249b9d05]{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:17px}.attendance-card-status[data-v-249b9d05]{flex:1;display:flex;align-items:flex-start;justify-content:center;min-height:64px}.attendance-card-status[data-v-249b9d05] .el-checkbox-group{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;align-items:center}.attendance-card-status[data-v-249b9d05] .el-checkbox{margin-right:0;min-width:0;height:24px}.attendance-card-status[data-v-249b9d05] .el-checkbox__label{padding-left:5px;font-size:13px}.attendance-card-remark[data-v-249b9d05] .el-input__wrapper{min-height:30px}.attendance-card-temp-access[data-v-249b9d05]{display:flex;align-items:center;justify-content:center;gap:8px;min-height:30px;white-space:nowrap}.temporary-leave-actions[data-v-249b9d05]{display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.temporary-leave-name-tag[data-v-249b9d05]{color:#f56c6c;font-weight:900;text-shadow:0 0 5px rgba(245,108,108,.28);text-decoration:none!important}.not-arrived-name-tag[data-v-249b9d05]{cursor:pointer;display:inline-block}.not-arrived-name-tag[data-v-249b9d05]:hover,.not-arrived-name-tag[data-v-249b9d05]:focus,.not-arrived-name-tag[data-v-249b9d05]:active{text-decoration:none!important;color:#f56c6c}.temporary-leave-dialog .temporary-leave-student[data-v-249b9d05]{font-size:18px;font-weight:700;margin-bottom:14px;text-align:center}.temporary-leave-reason-buttons[data-v-249b9d05]{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;min-height:50px}.temporary-leave-empty[data-v-249b9d05]{color:#909399;padding:18px;text-align:center}.member-selected-group[data-v-249b9d05]{margin-bottom:14px}.member-selected-group .el-select[data-v-249b9d05]{width:100%}.member-list-box[data-v-249b9d05]{border:1px solid #dcdfe6;border-radius:6px;padding:12px;overflow:auto;flex:1;min-height:220px;max-height:none}.member-snake-grid[data-v-249b9d05]{display:grid;gap:10px;align-items:stretch}.member-student-slot[data-v-249b9d05]{min-height:42px}.member-student-cell[data-v-249b9d05]{width:100%;height:100%;min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 34px 8px 10px;border:1px solid #dcdfe6;border-radius:10px;background:#fff;color:#303133;cursor:pointer;font-size:15px;line-height:1.25;white-space:normal;word-break:break-word;position:relative}.member-student-cell[data-v-249b9d05]:hover{border-color:#409eff;background:#ecf5ff}.member-student-cell.selected[data-v-249b9d05]{border-color:#67c23a;background:#f0f9eb;color:#1f7a1f;font-weight:800}.member-check-mark[data-v-249b9d05]{position:absolute;right:8px;top:8px;width:18px;height:18px;border-radius:50%;border:1px solid #c0c4cc;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:#67c23a;font-weight:900;background:#fff}.member-student-cell.selected .member-check-mark[data-v-249b9d05]{border-color:#67c23a;background:#67c23a;color:#fff}.member-student-main[data-v-249b9d05]{min-width:0;width:100%;text-align:center;font-weight:800;font-size:16px}.member-current-group[data-v-249b9d05]{display:inline-flex;align-items:center;justify-content:center;max-width:100%;padding:2px 8px;border-radius:999px;font-size:13px;font-weight:800;background:#f4f4f5;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-current-group.ungrouped[data-v-249b9d05]{background:#fef3c7;color:#92400e;border:1px solid #facc15}.record-option.intonation-option .relative-pitch-name[data-v-249b9d05]{font-size:18px;font-weight:800;letter-spacing:.5px}.record-option .pitch-note-name .note-name[data-v-249b9d05]{display:inline-flex;align-items:flex-start;justify-content:center;line-height:1;white-space:nowrap;vertical-align:middle}.record-option .pitch-note-name .accidental[data-v-249b9d05]{font-size:.62em;line-height:1;transform:translateY(-.22em);margin-right:1px;font-weight:900}.record-option .pitch-note-name .letter[data-v-249b9d05]{line-height:1}.record-option .pitch-note-name .octave[data-v-249b9d05]{font-size:.9em;line-height:1;margin-left:1px}.relative-pitch-name[data-v-249b9d05] .relative-low-mark,[data-v-249b9d05] .relative-pitch-name .relative-low-mark{display:inline-block;font-size:.72em;vertical-align:baseline;line-height:1;margin-left:1px;position:relative;top:.22em;left:.04em;font-weight:900}.relative-pitch-name[data-v-249b9d05] .relative-high-mark,[data-v-249b9d05] .relative-pitch-name .relative-high-mark{display:inline-block;font-size:.72em;vertical-align:super;line-height:1;margin-left:1px;position:relative;top:-.12em;font-weight:900}.el-overlay-dialog .el-dialog.attendance-dialog:not(.edge-positioned-dialog){margin-top:calc(var(--el-dialog-margin-top, 15vh) - 50px)!important}[data-v-249b9d05] .attendance-dialog{position:relative;height:var(--attendance-dialog-height,680px);max-height:90vh}[data-v-249b9d05] .attendance-dialog .el-dialog__body{height:calc(var(--attendance-dialog-height,680px) - 122px);box-sizing:border-box;overflow:visible}[data-v-249b9d05] .attendance-dialog .el-dialog__footer{padding:10px 20px 12px}[data-v-249b9d05] .group-member-dialog{position:relative;height:var(--member-dialog-height,620px);max-height:90vh}[data-v-249b9d05] .group-member-dialog .el-dialog__body{height:calc(var(--member-dialog-height,620px) - 136px);box-sizing:border-box;display:flex;flex-direction:column;overflow:visible}.member-dialog-resize-handle[data-v-249b9d05],.attendance-dialog-resize-handle[data-v-249b9d05]{position:absolute;z-index:20;width:20px;height:20px;background:transparent;border-radius:4px}.member-dialog-resize-handle[data-v-249b9d05]:after,.attendance-dialog-resize-handle[data-v-249b9d05]:after{content:"";position:absolute;width:8px;height:8px;border-color:#409eff;opacity:.75}.member-dialog-resize-handle.resize-nw[data-v-249b9d05],.attendance-dialog-resize-handle.resize-nw[data-v-249b9d05]{left:0;top:0;cursor:nwse-resize}.member-dialog-resize-handle.resize-ne[data-v-249b9d05],.attendance-dialog-resize-handle.resize-ne[data-v-249b9d05]{right:0;top:0;cursor:nesw-resize}.member-dialog-resize-handle.resize-sw[data-v-249b9d05],.attendance-dialog-resize-handle.resize-sw[data-v-249b9d05]{left:0;bottom:0;cursor:nesw-resize}.member-dialog-resize-handle.resize-se[data-v-249b9d05],.attendance-dialog-resize-handle.resize-se[data-v-249b9d05]{right:0;bottom:0;cursor:nwse-resize}.member-dialog-resize-handle.resize-nw[data-v-249b9d05]:after,.attendance-dialog-resize-handle.resize-nw[data-v-249b9d05]:after{left:5px;top:5px;border-left:2px solid;border-top:2px solid}.member-dialog-resize-handle.resize-ne[data-v-249b9d05]:after,.attendance-dialog-resize-handle.resize-ne[data-v-249b9d05]:after{right:5px;top:5px;border-right:2px solid;border-top:2px solid}.member-dialog-resize-handle.resize-sw[data-v-249b9d05]:after,.attendance-dialog-resize-handle.resize-sw[data-v-249b9d05]:after{left:5px;bottom:5px;border-left:2px solid;border-bottom:2px solid}.member-dialog-resize-handle.resize-se[data-v-249b9d05]:after,.attendance-dialog-resize-handle.resize-se[data-v-249b9d05]:after{right:5px;bottom:5px;border-right:2px solid;border-bottom:2px solid}.member-dialog-resize-handle[data-v-249b9d05]:hover:after,.attendance-dialog-resize-handle[data-v-249b9d05]:hover:after{opacity:1;border-color:#2563eb}.student-name-link.readonly-name[data-v-249b9d05]{color:#000;background:transparent;border-color:transparent}.mastery-readonly-tip[data-v-249b9d05]{margin:-4px 0 16px;padding:10px 14px;border-radius:10px;background:#f3f4f6;color:#6b7280;text-align:center;font-weight:800}.record-option.readonly[data-v-249b9d05]{cursor:not-allowed;background:#eee;color:#777;border-color:#d1d5db;filter:grayscale(1);opacity:.72}.record-option.readonly[data-v-249b9d05]:hover{background:#eee;border-color:#d1d5db}.record-option.readonly.checked[data-v-249b9d05]{background:#e5e7eb;border-color:#9ca3af;box-shadow:none}.record-option.readonly input[data-v-249b9d05]{accent-color:#9ca3af}.student-card .late-status-button[data-v-249b9d05],.student-card .runtime-late-status[data-v-249b9d05]{display:none!important}.pre-checkin-static[data-v-249b9d05]{cursor:default;-webkit-user-select:none;user-select:none}.checkin-completed-name-text[data-v-249b9d05]{cursor:default}.classroom-occupied-banner[data-v-249b9d05]{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:30;max-width:min(760px,calc(100vw - 28px));padding:10px 18px;border-radius:10px;background:#f56c6cf0;color:#fff;font-weight:700;box-shadow:0 4px 16px #0000002e;text-align:center;pointer-events:none}.classroom-session-warning[data-v-249b9d05]{background:#e6a23cf5}
