.el-overlay.is-message-box{background-color:rgba(0,0,0,.5)!important;justify-content:center!important;align-items:center!important;display:flex!important}.el-overlay.is-message-box .el-message-box{background:#fff!important;border-radius:12px!important;margin:0!important;position:relative!important;overflow:hidden!important;box-shadow:0 8px 30px rgba(0,0,0,.15)!important}.el-overlay.is-message-box .el-message-box__header{justify-content:space-between!important;align-items:center!important;padding:16px 20px 10px!important;display:flex!important;position:relative!important}.el-overlay.is-message-box .el-message-box__headerbtn{color:#909399!important;background:0 0!important;border:none!important;border-radius:50%!important;width:20px!important;height:20px!important;font-size:16px!important;transition:all .2s!important;position:absolute!important;top:12px!important;right:14px!important}.el-overlay.is-message-box .el-message-box__headerbtn:hover{color:#409eff!important}.el-overlay.is-message-box .el-message-box__headerbtn:hover svg path{fill:#409eff!important}.el-overlay.is-message-box .el-message-box__title{text-align:center!important;flex:1!important;padding-right:20px!important;font-size:17px!important;font-weight:600!important}.el-overlay.is-message-box .el-message-box__content{text-align:center!important;padding:20px!important}.el-overlay.is-message-box .el-message-box__btns{justify-content:center!important;padding:10px 20px 20px!important;display:flex!important}.gate-page[data-v-ecc6ef03]{color:#fff;background:linear-gradient(135deg,#0a1628,#1a2a4a);min-height:100vh;padding:20px;font-family:-apple-system,BlinkMacSystemFont,sans-serif}.gate-header[data-v-ecc6ef03]{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.gate-header h1[data-v-ecc6ef03]{margin:0;font-size:24px}.subtitle[data-v-ecc6ef03]{color:#888;margin-top:4px;font-size:14px}.manage-link[data-v-ecc6ef03]{color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:6px;padding:6px 16px;text-decoration:none}.main-area[data-v-ecc6ef03]{flex-wrap:wrap;gap:20px;margin-bottom:20px;display:flex}.left-panel[data-v-ecc6ef03]{flex:1;min-width:300px}.photo-box[data-v-ecc6ef03]{aspect-ratio:4/3;background:#000;border-radius:16px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.video-feed[data-v-ecc6ef03]{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.photo-preview[data-v-ecc6ef03]{object-fit:contain;max-width:100%;max-height:100%}.placeholder[data-v-ecc6ef03]{text-align:center;color:#666}.placeholder .icon[data-v-ecc6ef03]{font-size:48px;display:block}.flash[data-v-ecc6ef03]{background:#fff;animation:.3s flash-ecc6ef03;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes flash-ecc6ef03{0%{opacity:1}to{opacity:0}}.buttons[data-v-ecc6ef03]{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.buttons button[data-v-ecc6ef03]{cursor:pointer;border:none;border-radius:12px;flex:1;min-width:100px;padding:16px;font-size:16px;font-weight:600}.btn-enter[data-v-ecc6ef03]{color:#000;background:linear-gradient(135deg,#43e97b,#38f9d7)}.btn-exit[data-v-ecc6ef03]{color:#fff;background:linear-gradient(135deg,#f093fb,#f5576c)}.btn-capture[data-v-ecc6ef03]{color:#fff;background:linear-gradient(135deg,#409eff,#6c5ce7);font-size:18px}.btn-retake[data-v-ecc6ef03]{color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3)}.btn-confirm[data-v-ecc6ef03]{color:#fff;background:linear-gradient(135deg,#f5a623,#f76b1c)}.btn-next[data-v-ecc6ef03]{color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3)}.right-panel[data-v-ecc6ef03]{background:rgba(255,255,255,.05);border-radius:16px;flex:1;justify-content:center;align-items:center;min-width:300px;padding:20px;display:flex}.status[data-v-ecc6ef03]{text-align:center}.status.processing .spinner[data-v-ecc6ef03]{border:4px solid rgba(255,255,255,.1);border-top-color:#409eff;border-radius:50%;width:48px;height:48px;margin:0 auto 16px;animation:1s linear infinite spin-ecc6ef03}@keyframes spin-ecc6ef03{to{transform:rotate(360deg)}}.status .icon[data-v-ecc6ef03]{margin-bottom:12px;font-size:48px}.status.success .icon[data-v-ecc6ef03]{color:#43e97b}.status.warning .icon[data-v-ecc6ef03]{color:#f7b731}.status.error .icon[data-v-ecc6ef03]{color:#f5576c}.badge[data-v-ecc6ef03]{border-radius:20px;margin-bottom:12px;padding:4px 16px;font-size:14px;display:inline-block}.badge.enter[data-v-ecc6ef03]{color:#43e97b;background:rgba(67,233,123,.2)}.badge.exit[data-v-ecc6ef03]{color:#f5576c;background:rgba(245,87,108,.2)}.badge.no-leave[data-v-ecc6ef03]{color:#f7b731;background:rgba(247,183,49,.2)}.student-info .avatar[data-v-ecc6ef03]{border-radius:50%;width:72px;height:72px;margin-bottom:12px}.student-info h2[data-v-ecc6ef03]{margin:0 0 4px}.leave-info[data-v-ecc6ef03]{text-align:left;background:rgba(247,183,49,.1);border-radius:8px;margin-top:12px;padding:12px}.leave-info p[data-v-ecc6ef03]{margin:4px 0;font-size:14px}.status.idle .big-icon[data-v-ecc6ef03]{margin-bottom:16px;font-size:64px}.status.idle p[data-v-ecc6ef03]{color:#888}.records[data-v-ecc6ef03]{background:rgba(255,255,255,.05);border-radius:16px;padding:16px}.records h3[data-v-ecc6ef03]{margin:0 0 12px;font-size:16px}.list[data-v-ecc6ef03]{max-height:150px;overflow-y:auto}.item[data-v-ecc6ef03]{border-bottom:1px solid rgba(255,255,255,.1);gap:12px;padding:8px 0;font-size:14px;display:flex}.item .time[data-v-ecc6ef03]{color:#888;min-width:90px}.item .name[data-v-ecc6ef03]{color:#fff}.item .class[data-v-ecc6ef03]{color:#888}.item .dir[data-v-ecc6ef03]{border-radius:10px;margin-left:auto;padding:2px 8px;font-size:12px}.item .dir.enter[data-v-ecc6ef03]{color:#43e97b;background:rgba(67,233,123,.2)}.item .dir.exit[data-v-ecc6ef03]{color:#f5576c;background:rgba(245,87,108,.2)}.manage-page[data-v-5ec56ee1]{background:#f5f7fa;min-height:100vh;padding:24px}.page-header[data-v-5ec56ee1]{margin-bottom:24px}.page-header h2[data-v-5ec56ee1]{color:#303133;margin:0 0 4px;font-size:22px}.page-header p[data-v-5ec56ee1]{color:#909399;margin:0;font-size:14px}.section[data-v-5ec56ee1]{margin-bottom:16px}.section h3[data-v-5ec56ee1]{color:#303133;margin:0 0 12px;font-size:15px}.section h3 i[data-v-5ec56ee1]{color:#409eff;margin-right:6px}.card[data-v-5ec56ee1]{background:#fff;border-radius:10px;padding:18px 22px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.reg-form[data-v-5ec56ee1]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.text-muted[data-v-5ec56ee1]{color:#c0c4cc}.login-page[data-v-68bef81e]{background:var(--color-bg-deep);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-bg-decor[data-v-68bef81e]{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.bg-grid[data-v-68bef81e]{background-image:linear-gradient(rgba(59,130,246,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(59,130,246,.05) 1px,transparent 1px);background-size:60px 60px;position:absolute;top:0;bottom:0;left:0;right:0}.bg-line[data-v-68bef81e]{background:linear-gradient(90deg, transparent, var(--color-ice), transparent);opacity:.08;height:1px;position:absolute}.bg-line-1[data-v-68bef81e]{top:20%;left:-10%;right:-10%}.bg-line-2[data-v-68bef81e]{top:50%;left:-5%;right:-15%;transform:rotate(2deg)}.bg-line-3[data-v-68bef81e]{bottom:25%;left:-15%;right:-5%;transform:rotate(-1.5deg)}.login-card[data-v-68bef81e]{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:380px;box-shadow:var(--shadow-lg);z-index:1;padding:44px 40px 36px;animation:.4s scaleIn;position:relative}.card-accent-bar[data-v-68bef81e]{background:linear-gradient(90deg, transparent, var(--color-accent), transparent);border-radius:0 0 2px 2px;height:2px;position:absolute;top:0;left:20%;right:20%}.login-logo[data-v-68bef81e]{object-fit:contain;width:96px;height:96px;margin:0 auto var(--space-4);border:1.5px solid var(--color-border-active);background:var(--color-bg-elevated);box-shadow:var(--glow-sm);border-radius:50%;padding:8px;display:block}.login-title[data-v-68bef81e]{text-align:center;color:var(--color-text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:1px;margin-bottom:2px}.login-subtitle[data-v-68bef81e]{text-align:center;color:var(--color-text-muted);margin-bottom:var(--space-8);font-size:var(--font-size-sm);letter-spacing:2px}.login-btn[data-v-68bef81e]{width:100%;margin-top:var(--space-2);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);letter-spacing:4px;background:var(--color-bg-surface);border:1px solid var(--color-border-active);color:var(--color-ice);border-radius:var(--radius-sm);transition:all var(--transition-fast);box-shadow:var(--glow-sm);padding:10px 0}.login-btn[data-v-68bef81e]:hover{background:var(--color-bg-elevated);border-color:var(--color-ice);box-shadow:var(--glow-md)}.login-bg[data-v-bfe42505]{background:linear-gradient(135deg, var(--color-bg-gradient-start,#1a2a6c), var(--color-bg-gradient-mid,#b21f1f), var(--color-bg-gradient-end,#fdbb2d));justify-content:center;align-items:center;min-height:100vh;display:flex}.sci-card[data-v-bfe42505]{background:var(--color-bg-card,#fff);border-radius:var(--radius-md,16px);padding:var(--space-5,40px);width:400px;box-shadow:var(--shadow-glow,0 20px 60px rgba(0,0,0,.3))}.sci-card-title[data-v-bfe42505]{text-align:center;margin-bottom:var(--space-4,16px);color:var(--color-accent,#1a2a6c)}.sub[data-v-bfe42505]{text-align:center;color:var(--color-text-secondary,#888);margin-bottom:var(--space-5,30px);font-size:var(--font-size-sm,16px)}.bottom-btns[data-v-bfe42505]{margin-top:var(--space-4,8px);justify-content:space-between;display:flex}.sci-btn-block[data-v-bfe42505]{width:100%;margin-top:var(--space-4,8px)}.layout[data-v-cf9c3bf8]{height:100vh;font-family:var(--font-family);display:flex}.table-wrap[data-v-5a61d5eb]{overflow-x:auto}.class-browser[data-v-79d32d52]{padding:0}.browser-toolbar[data-v-79d32d52]{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.form-select[data-v-79d32d52]{border:1px solid var(--color-border,#dcdfe6);border-radius:var(--radius-md,6px);background:var(--color-bg-card,#fff);color:var(--color-text-primary,#333);padding:8px 12px;font-size:14px}.class-browser .el-table[data-v-79d32d52]{cursor:pointer;font-size:16px}.class-browser .el-table th[data-v-79d32d52],.class-browser .el-table td[data-v-79d32d52]{text-align:center;font-size:16px}.class-browser .el-table .cell[data-v-79d32d52]{font-size:16px}.class-browser .el-table tr[data-v-79d32d52]:hover{background:var(--color-bg-hover,#f5f7fa)}.breadcrumb-bar[data-v-79d32d52]{background:var(--color-bg-hover,#f5f7fa);border-radius:var(--radius-md,8px);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px;padding:10px 16px;display:flex}.back-btn[data-v-79d32d52]{border:1px solid var(--color-accent,#1a3a6b);color:var(--color-accent,#1a3a6b);border-radius:var(--radius-md,6px);cursor:pointer;white-space:nowrap;background:0 0;padding:6px 16px;font-size:13px;font-weight:600;transition:all .2s}.back-btn[data-v-79d32d52]:hover{background:var(--color-accent,#1a3a6b);color:#fff}.student-count[data-v-79d32d52]{font-size:var(--font-size-sm,13px);color:var(--color-text-secondary,#888);margin-left:auto;font-weight:500}.toolbar-row[data-v-79d32d52]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.search-bar[data-v-79d32d52]{align-items:center;gap:16px;margin-bottom:12px;display:flex}.name-cell[data-v-79d32d52]{color:var(--color-accent);font-weight:600}.guardian-list[data-v-79d32d52]{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.guardian-row[data-v-79d32d52]{align-items:center;gap:8px;display:flex}.transfer-hint[data-v-79d32d52]{color:var(--color-text-secondary,#666);margin-bottom:16px;font-size:14px}.leave-page[data-v-869769aa]{padding:0}.table-header[data-v-869769aa]{background:var(--color-bg-hover,#f5f7fa);border-radius:var(--radius-md,8px) var(--radius-md,8px) 0 0;color:var(--color-text-secondary,#606266);border-bottom:1px solid var(--color-border,#e4e7ed);padding:12px 16px;font-size:14px;font-weight:600;display:flex}.leave-list[data-v-869769aa]{flex-direction:column;display:flex}.leave-row[data-v-869769aa]{border-bottom:1px solid var(--color-border-light,#ebeef5);align-items:center;padding:14px 16px;font-size:14px;transition:background .2s;display:flex}.leave-row>span[data-v-869769aa]:not(.col-reason){text-align:center}.leave-row[data-v-869769aa]:hover{background:var(--color-bg-hover,#f5f7fa)}.leave-row[data-v-869769aa]:last-child{border-bottom:none}.col-id[data-v-869769aa]{width:110px;color:var(--color-text-secondary,#606266);text-align:center;flex-shrink:0}.col-campus[data-v-869769aa],.col-class[data-v-869769aa]{width:90px;color:var(--color-text-secondary,#606266);text-align:center;flex-shrink:0}.col-name[data-v-869769aa]{width:110px;color:var(--color-text-primary,#303133);text-align:center;flex-shrink:0;font-weight:500}.col-date[data-v-869769aa]{width:200px;min-width:200px;color:var(--color-text-secondary,#606266);white-space:nowrap;text-align:center;flex-shrink:0;padding-right:16px}.col-days[data-v-869769aa]{width:100px;color:var(--color-text-secondary,#606266);text-align:center;flex-shrink:0;padding-right:12px}.col-apply[data-v-869769aa]{width:160px;min-width:160px;color:var(--color-text-tertiary,#909399);font-size:var(--font-size-sm,13px);white-space:nowrap;text-align:center;flex-shrink:0;padding-right:12px}.col-reason[data-v-869769aa]{min-width:80px;color:var(--color-text-primary,#303133);text-overflow:ellipsis;white-space:nowrap;text-align:center;flex:1;padding-right:16px;overflow:hidden}.col-status[data-v-869769aa]{text-align:center;flex-shrink:0;width:90px;padding-right:16px}.col-status .sci-badge[data-v-869769aa]{text-align:center;justify-content:center;align-items:center;width:64px;display:inline-flex}.col-action[data-v-869769aa]{flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:160px;display:flex}.table-header .col-date[data-v-869769aa]{text-align:center}.table-header .col-action[data-v-869769aa]{justify-content:center}.col-action .sci-badge[data-v-869769aa]{text-align:center;justify-content:center;align-items:center;width:64px;display:inline-flex}.pagination-wrap[data-v-869769aa]{justify-content:center;padding:16px 0 4px;display:flex}.data-table[data-v-869769aa]{border-collapse:collapse;border:1px solid var(--color-border-light,#ebeef5);width:100%;font-size:14px}.data-table thead th[data-v-869769aa]{background:var(--color-bg-hover,#f5f7fa);color:var(--color-text-primary,#333);text-align:center;border:1px solid var(--color-border-light,#ebeef5);white-space:nowrap;padding:12px 10px;font-size:14px;font-weight:700}.data-table tbody td[data-v-869769aa]{text-align:center;border:1px solid var(--color-border-light,#ebeef5);color:var(--color-text-primary,#303133);vertical-align:middle;padding:14px 10px;font-size:14px}.data-table tbody tr[data-v-869769aa]:nth-child(2n){background:var(--color-bg-stripe,#fafcff)}.data-table tbody tr[data-v-869769aa]:hover{background:var(--color-bg-hover-light,#f0f5ff)}.data-table thead th.sortable[data-v-869769aa]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.data-table thead th.sortable[data-v-869769aa]:hover{background:var(--color-bg-hover-active,#e8edf5)}.sort-arrow[data-v-869769aa]{color:var(--color-accent,#409eff);margin-left:2px;font-size:12px}.empty-row[data-v-869769aa]{text-align:center;color:var(--color-text-tertiary,#c0c4cc);font-size:15px;padding:50px 0!important}.loading-text[data-v-869769aa]{text-align:center;color:var(--color-text-secondary,#909399);padding:60px 0;font-size:15px}.spin-icon[data-v-869769aa]{display:inline-block}.detail-content[data-v-869769aa]{padding:10px 0}.detail-row[data-v-869769aa]{border-bottom:1px solid var(--color-border-light,#ebeef5);padding:10px 0;display:flex}.detail-row[data-v-869769aa]:last-child{border-bottom:none}.detail-label[data-v-869769aa]{width:90px;color:var(--color-text-secondary,#606266);font-size:14px}.detail-value[data-v-869769aa]{color:var(--color-text-primary,#303133);text-align:center;flex:1;font-size:14px}.approval-chain[data-v-869769aa]{flex-wrap:nowrap;justify-content:center;align-items:center;gap:4px;display:flex}.chain-node[data-v-869769aa]{background:var(--color-bg-node,#f0f2f5);color:var(--color-text-tertiary,#909399);border-radius:12px;align-items:center;gap:4px;padding:3px 10px;font-size:13px;display:flex}.chain-node.node-done[data-v-869769aa]{background:var(--color-bg-success-light,#e1f3d8);color:var(--color-success,#67c23a)}.chain-node.node-current[data-v-869769aa]{background:var(--color-bg-warning-light,#fdf6ec);color:var(--color-warning,#e6a23c);font-weight:500}.chain-node.node-waiting[data-v-869769aa]{background:var(--color-bg-node,#f0f2f5);color:var(--color-text-tertiary,#c0c4cc)}.chain-node.node-rejected[data-v-869769aa]{background:var(--color-bg-danger-light,#fef0f0);color:var(--color-danger,#f56c6c)}.chain-arrow[data-v-869769aa]{color:var(--color-text-tertiary,#c0c4cc);margin:0 2px;font-size:13px}.node-icon[data-v-869769aa]{font-size:14px;line-height:1}.node-text[data-v-869769aa]{white-space:nowrap}.date-hint-inline[data-v-869769aa]{color:var(--color-text-secondary,#606266);white-space:nowrap;align-items:center;margin-left:4px;font-size:13px;display:flex}.inline-row[data-v-869769aa]{flex-wrap:nowrap;align-items:center;gap:16px;display:flex}.inline-row .sci-form-group[data-v-869769aa]{align-items:center;gap:8px;margin-bottom:0;display:flex}.inline-row .sci-form-label[data-v-869769aa]{white-space:nowrap;margin-bottom:0;display:inline}.stat-cards[data-v-812762e0]{flex-wrap:wrap;gap:16px;margin-bottom:24px;display:flex}.stat-card[data-v-812762e0]{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center;flex:1;min-width:100px;padding:20px 12px;transition:box-shadow .2s}.stat-card[data-v-812762e0]:hover{box-shadow:var(--shadow-glow)}.stat-num[data-v-812762e0]{color:var(--color-text-primary);font-size:28px;font-weight:800;line-height:1.2}.stat-label[data-v-812762e0]{color:var(--color-text-secondary);margin-top:6px;font-size:13px}.section-title[data-v-812762e0]{color:var(--color-accent);border-left:4px solid var(--color-accent);margin:20px 0 10px;padding-left:10px;font-size:15px;font-weight:700}.text-primary[data-v-812762e0]{color:var(--color-accent);font-weight:700}.text-success[data-v-812762e0]{color:var(--color-success,#67c23a);font-weight:600}.text-danger[data-v-812762e0]{color:var(--color-danger,#f56c6c);font-weight:600}.att-page[data-v-a24a2d12]{padding:0}.filter-row[data-v-a24a2d12]{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.filter-bar[data-v-a24a2d12]{align-items:center;gap:12px;display:flex}.inline-row[data-v-a24a2d12]{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.date-hint-inline[data-v-a24a2d12]{color:var(--color-text-secondary,#909399);white-space:nowrap;font-size:14px}.val-normal[data-v-a24a2d12]{color:var(--color-success,#67c23a);font-size:15px;font-weight:700}.val-leave[data-v-a24a2d12]{color:var(--color-text-secondary,#909399);font-size:14px;font-weight:600}.val-absent[data-v-a24a2d12]{color:var(--color-danger,#f56c6c);font-size:15px;font-weight:700}.empty-row[data-v-a24a2d12]{text-align:center;color:var(--color-text-tertiary,#c0c4cc);font-size:15px;padding:50px 0!important}.loading-text[data-v-a24a2d12]{text-align:center;color:var(--color-text-secondary,#909399);padding:60px 0;font-size:15px}.spin-icon[data-v-a24a2d12]{display:inline-block}@keyframes spin-a24a2d12{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.grade-table thead tr:first-child th[data-v-a24a2d12]:nth-child(4),.grade-table thead tr.sub-header th[data-v-a24a2d12]:nth-child(-n+3),.grade-table tbody td[data-v-a24a2d12]:nth-child(4),.grade-table tbody td[data-v-a24a2d12]:nth-child(5),.grade-table tbody td[data-v-a24a2d12]:nth-child(6){background-color:#e8f4fd}.grade-table thead tr:first-child th[data-v-a24a2d12]:nth-child(5),.grade-table thead tr.sub-header th[data-v-a24a2d12]:nth-child(n+4):nth-child(-n+6),.grade-table tbody td[data-v-a24a2d12]:nth-child(7),.grade-table tbody td[data-v-a24a2d12]:nth-child(8),.grade-table tbody td[data-v-a24a2d12]:nth-child(9){background-color:#e8f5e9}.grade-table thead tr:first-child th[data-v-a24a2d12]:nth-child(6),.grade-table thead tr.sub-header th[data-v-a24a2d12]:nth-child(n+7):nth-child(-n+9),.grade-table tbody td[data-v-a24a2d12]:nth-child(10),.grade-table tbody td[data-v-a24a2d12]:nth-child(11),.grade-table tbody td[data-v-a24a2d12]:nth-child(12){background-color:#fff3e0}.class-table thead tr:first-child th[data-v-a24a2d12]:nth-child(5),.class-table thead tr.sub-header th[data-v-a24a2d12]:nth-child(-n+3),.class-table tbody td[data-v-a24a2d12]:nth-child(5),.class-table tbody td[data-v-a24a2d12]:nth-child(6),.class-table tbody td[data-v-a24a2d12]:nth-child(7){background-color:#e8f4fd}.class-table thead tr:first-child th[data-v-a24a2d12]:nth-child(6),.class-table thead tr.sub-header th[data-v-a24a2d12]:nth-child(n+4):nth-child(-n+6),.class-table tbody td[data-v-a24a2d12]:nth-child(8),.class-table tbody td[data-v-a24a2d12]:nth-child(9),.class-table tbody td[data-v-a24a2d12]:nth-child(10){background-color:#e8f5e9}.class-table thead tr:first-child th[data-v-a24a2d12]:nth-child(7),.class-table thead tr.sub-header th[data-v-a24a2d12]:nth-child(n+7):nth-child(-n+9),.class-table tbody td[data-v-a24a2d12]:nth-child(11),.class-table tbody td[data-v-a24a2d12]:nth-child(12),.class-table tbody td[data-v-a24a2d12]:nth-child(13){background-color:#fff3e0}.grade-table th[data-v-a24a2d12]:first-child,.grade-table td[data-v-a24a2d12]:first-child,.grade-table th[data-v-a24a2d12]:nth-child(2),.grade-table td[data-v-a24a2d12]:nth-child(2){width:70px}.grade-table th[data-v-a24a2d12]:nth-child(3),.grade-table td[data-v-a24a2d12]:nth-child(3){width:60px}.grade-table th[data-v-a24a2d12]:nth-child(4),.grade-table td[data-v-a24a2d12]:nth-child(4),.grade-table th[data-v-a24a2d12]:nth-child(5),.grade-table td[data-v-a24a2d12]:nth-child(5),.grade-table th[data-v-a24a2d12]:nth-child(6),.grade-table td[data-v-a24a2d12]:nth-child(6),.grade-table th[data-v-a24a2d12]:nth-child(7),.grade-table td[data-v-a24a2d12]:nth-child(7),.grade-table th[data-v-a24a2d12]:nth-child(8),.grade-table td[data-v-a24a2d12]:nth-child(8),.grade-table th[data-v-a24a2d12]:nth-child(9),.grade-table td[data-v-a24a2d12]:nth-child(9),.grade-table th[data-v-a24a2d12]:nth-child(10),.grade-table td[data-v-a24a2d12]:nth-child(10),.grade-table th[data-v-a24a2d12]:nth-child(11),.grade-table td[data-v-a24a2d12]:nth-child(11),.grade-table th[data-v-a24a2d12]:nth-child(12),.grade-table td[data-v-a24a2d12]:nth-child(12){width:58px}.grade-table th[data-v-a24a2d12]:nth-child(13),.grade-table td[data-v-a24a2d12]:nth-child(13){width:75px}.class-table th[data-v-a24a2d12]:first-child,.class-table td[data-v-a24a2d12]:first-child{width:80px}.class-table th[data-v-a24a2d12]:nth-child(2),.class-table td[data-v-a24a2d12]:nth-child(2),.class-table th[data-v-a24a2d12]:nth-child(3),.class-table td[data-v-a24a2d12]:nth-child(3),.class-table th[data-v-a24a2d12]:nth-child(4),.class-table td[data-v-a24a2d12]:nth-child(4){width:55px}.class-table th[data-v-a24a2d12]:nth-child(5),.class-table td[data-v-a24a2d12]:nth-child(5),.class-table th[data-v-a24a2d12]:nth-child(6),.class-table td[data-v-a24a2d12]:nth-child(6),.class-table th[data-v-a24a2d12]:nth-child(7),.class-table td[data-v-a24a2d12]:nth-child(7),.class-table th[data-v-a24a2d12]:nth-child(8),.class-table td[data-v-a24a2d12]:nth-child(8),.class-table th[data-v-a24a2d12]:nth-child(9),.class-table td[data-v-a24a2d12]:nth-child(9),.class-table th[data-v-a24a2d12]:nth-child(10),.class-table td[data-v-a24a2d12]:nth-child(10),.class-table th[data-v-a24a2d12]:nth-child(11),.class-table td[data-v-a24a2d12]:nth-child(11),.class-table th[data-v-a24a2d12]:nth-child(12),.class-table td[data-v-a24a2d12]:nth-child(12),.class-table th[data-v-a24a2d12]:nth-child(13),.class-table td[data-v-a24a2d12]:nth-child(13){width:56px}.class-table th[data-v-a24a2d12]:nth-child(14),.class-table td[data-v-a24a2d12]:nth-child(14){width:72px}.page-header[data-v-c62c669d]{margin-bottom:var(--space-5,20px);justify-content:flex-end;align-items:center;display:flex}.class-cards[data-v-c62c669d]{gap:var(--space-4,16px);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.class-card[data-v-c62c669d]{cursor:pointer;transition:all .2s}.class-card[data-v-c62c669d]:hover{border-color:var(--color-accent);box-shadow:var(--shadow-glow,0 4px 12px rgba(64,158,255,.2))}.class-card.active[data-v-c62c669d]{border-color:var(--color-success);background:color-mix(in srgb, var(--color-success) 8%, var(--color-bg-card))}.card-body[data-v-c62c669d]{margin-bottom:var(--space-4,12px)}.card-name[data-v-c62c669d]{color:var(--color-text-primary);margin-bottom:6px;font-size:28px;font-weight:700}.card-meta[data-v-c62c669d]{color:var(--color-text-secondary);justify-content:space-between;font-size:15px;display:flex}.card-actions[data-v-c62c669d]{gap:var(--space-2,8px);display:flex}.empty[data-v-c62c669d]{text-align:center;color:var(--color-text-secondary);padding:60px 0}.empty-icon[data-v-c62c669d]{margin-bottom:var(--space-4,16px);font-size:48px}.name-cell[data-v-8dc7c12a]{color:var(--color-accent);font-weight:600}.guardian-cell[data-v-8dc7c12a]{color:var(--color-text-secondary)}.guardian-list[data-v-8dc7c12a]{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.guardian-row[data-v-8dc7c12a]{align-items:center;gap:8px;display:flex}.guardian-input-group[data-v-8dc7c12a]{border:1px solid var(--el-border-color);border-radius:4px;flex:1;align-items:stretch;display:flex;overflow:hidden}.guardian-input-group .el-input__wrapper[data-v-8dc7c12a]{background:0 0;box-shadow:none!important;border-radius:0!important}.guardian-name-input[data-v-8dc7c12a]{width:140px}.guardian-phone-input[data-v-8dc7c12a]{flex:1}.guardian-divider[data-v-8dc7c12a]{background:var(--el-border-color);flex-shrink:0;width:1px;margin:6px 0}[data-v-8dc7c12a] .el-table th .cell,[data-v-8dc7c12a] .el-table td .cell{text-align:center;padding-left:6px!important;padding-right:6px!important}.page-header[data-v-8f22ad90]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.empty-tip[data-v-8f22ad90]{text-align:center;color:var(--color-text-secondary);padding:40px 0;font-size:14px}.pagination-bar[data-v-8f22ad90]{justify-content:flex-end;margin-top:16px;display:flex}.detail-content[data-v-8f22ad90]{padding:10px 0}.detail-row[data-v-8f22ad90]{border-bottom:1px solid var(--color-border);padding:10px 0;display:flex}.detail-row[data-v-8f22ad90]:last-child{border-bottom:none}.detail-label[data-v-8f22ad90]{width:90px;color:var(--color-text-secondary);font-size:14px}.detail-value[data-v-8f22ad90]{color:var(--color-text-primary);text-align:center;flex:1;font-size:14px}.approval-chain[data-v-8f22ad90]{flex-wrap:nowrap;justify-content:center;align-items:center;gap:4px;display:flex}.chain-node[data-v-8f22ad90]{border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-bg-card);color:var(--color-text-secondary);align-items:center;gap:4px;padding:3px 10px;display:flex}.chain-node.node-done[data-v-8f22ad90]{color:#67c23a;background:rgba(103,194,58,.1)}.chain-node.node-current[data-v-8f22ad90]{color:#e6a23c;background:rgba(230,162,60,.1);font-weight:500}.chain-node.node-waiting[data-v-8f22ad90]{background:var(--color-bg-card);color:var(--color-text-secondary)}.chain-node.node-rejected[data-v-8f22ad90]{color:#f56c6c;background:rgba(245,108,108,.1)}.chain-arrow[data-v-8f22ad90]{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 2px}.node-text[data-v-8f22ad90]{white-space:nowrap}@media (min-width:768px){.page-header[data-v-8f22ad90]{margin-bottom:20px}}.score-entry-table[data-v-44889492]{max-height:600px;overflow-x:auto}.score-entry-table table[data-v-44889492]{border-collapse:collapse;width:100%;margin:0 auto}.score-entry-table th[data-v-44889492],.score-entry-table td[data-v-44889492]{border:1px solid var(--color-border);text-align:center;font-size:var(--font-size-base,16px);padding:12px}.score-entry-table th[data-v-44889492]{background:var(--color-bg-secondary,#f5f7fa);color:var(--color-text-primary);z-index:10;font-weight:600;position:-webkit-sticky;position:sticky;top:0}.sticky-col[data-v-44889492]{background:var(--color-bg-card);z-index:5;min-width:80px;position:-webkit-sticky;position:sticky;left:0}.sticky-col-2[data-v-44889492]{background:var(--color-bg-card);z-index:5;min-width:80px;position:-webkit-sticky;position:sticky;left:80px}.subject-col[data-v-44889492]{min-width:100px}.total-col[data-v-44889492]{color:var(--color-accent,#3b82f6);font-weight:700}.name-cell[data-v-44889492]{color:var(--color-text-primary);text-align:left;padding-left:10px;font-weight:600}.score-input[data-v-44889492]{text-align:center;width:80px;font-size:var(--font-size-base,16px);padding:8px}.score-invalid[data-v-44889492]{border-color:var(--color-danger,#f56c6c);background:var(--color-danger-light,#fef0f0);color:var(--color-danger,#f56c6c)}.total-cell[data-v-44889492]{color:var(--color-accent,#3b82f6);font-weight:700}.score-high[data-v-44889492]{color:var(--color-success,#67c23a);font-weight:600}.score-low[data-v-44889492]{color:var(--color-danger,#f56c6c)}.sci-modal-lg[data-v-44889492]{width:90%;max-width:700px}.analysis-modal[data-v-44889492]{width:92%;max-width:720px;max-height:90vh;overflow-y:auto}.analysis-body[data-v-44889492]{padding:20px 24px}.analysis-summary[data-v-44889492]{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px;display:grid}.summary-card[data-v-44889492]{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:12px;padding:16px;transition:transform .2s,box-shadow .2s;display:flex}.summary-card[data-v-44889492]:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}.summary-icon[data-v-44889492]{flex-shrink:0;font-size:28px}.summary-info[data-v-44889492]{flex:1}.summary-label[data-v-44889492]{color:#64748b;margin-bottom:4px;font-size:12px}.summary-value[data-v-44889492]{color:#1e293b;font-size:22px;font-weight:700}.summary-value.highlight-gold[data-v-44889492]{color:#d97706}.analysis-section[data-v-44889492]{margin-bottom:24px}.section-title[data-v-44889492]{color:#1e293b;border-left:4px solid #3b82f6;margin-bottom:14px;padding-left:8px;font-size:16px;font-weight:700}.rank-desc[data-v-44889492]{color:#64748b;margin-top:-8px;margin-bottom:10px;font-size:12px}.subject-stats-table[data-v-44889492]{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.stats-header[data-v-44889492],.stats-row[data-v-44889492]{grid-template-columns:100px 70px 1fr 70px 70px 80px 80px;align-items:center;padding:10px 14px;font-size:13px;display:grid}.stats-header[data-v-44889492]{color:#475569;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-weight:600}.stats-row[data-v-44889492]{border-bottom:1px solid #f1f5f9;transition:background .15s}.stats-row[data-v-44889492]:last-child{border-bottom:none}.stats-row[data-v-44889492]:hover{background:#f8fafc}.row-alt[data-v-44889492]{background:#fafbfc}.stats-col-name[data-v-44889492]{color:#334155;align-items:center;gap:6px;font-weight:600;display:flex}.subject-dot[data-v-44889492]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.stats-col-score[data-v-44889492]{text-align:center;color:#475569;font-weight:500}.stats-col-rate[data-v-44889492]{text-align:center}.stats-col-bar[data-v-44889492]{padding:0 8px}.score-bar-bg[data-v-44889492]{background:#e2e8f0;border-radius:4px;height:8px;overflow:hidden}.score-bar-fill[data-v-44889492]{border-radius:4px;height:100%;transition:width .6s}.rate-badge[data-v-44889492]{border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.rate-high[data-v-44889492]{color:#15803d;background:#dcfce7}.rate-mid[data-v-44889492]{color:#b45309;background:#fef3c7}.rate-low[data-v-44889492]{color:#b91c1c;background:#fee2e2}.rank-table[data-v-44889492]{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.rank-header[data-v-44889492],.rank-row[data-v-44889492]{grid-template-columns:60px 1fr 80px 1fr;align-items:center;padding:10px 14px;font-size:13px;display:grid}.rank-header[data-v-44889492]{color:#475569;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-weight:600}.rank-row[data-v-44889492]{border-bottom:1px solid #f1f5f9}.rank-row[data-v-44889492]:last-child{border-bottom:none}.rank-row[data-v-44889492]:hover{background:#f8fafc}.rank-col-rank[data-v-44889492]{text-align:center;font-weight:600}.rank-col-name[data-v-44889492]{color:#334155;font-weight:500}.rank-col-score[data-v-44889492]{text-align:center;color:#1e293b;font-weight:600}.rank-col-bar[data-v-44889492]{padding:0 8px}.medal[data-v-44889492]{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:inline-flex}.medal-1[data-v-44889492]{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 2px 6px rgba(245,158,11,.4)}.medal-2[data-v-44889492]{background:linear-gradient(135deg,#cbd5e1,#94a3b8);box-shadow:0 2px 6px rgba(148,163,184,.4)}.medal-3[data-v-44889492]{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 2px 6px rgba(180,83,9,.4)}.rank-gold[data-v-44889492]{background:linear-gradient(90deg,#fffbeb 0%,#fff 60%)}.rank-silver[data-v-44889492]{background:linear-gradient(90deg,#f8fafc 0%,#fff 60%)}.rank-bronze[data-v-44889492]{background:linear-gradient(90deg,#fef3c7 0%,#fff 60%)}.text-success[data-v-44889492]{color:#15803d;font-weight:600}.text-danger[data-v-44889492]{color:#dc2626;font-weight:600}@media (max-width:640px){.analysis-summary[data-v-44889492]{grid-template-columns:1fr}.stats-header[data-v-44889492],.stats-row[data-v-44889492]{grid-template-columns:80px 55px 1fr 55px 55px 65px 65px;padding:8px 6px;font-size:11px}.rank-header[data-v-44889492],.rank-row[data-v-44889492]{grid-template-columns:50px 1fr 60px 1fr;padding:8px 6px}.analysis-modal[data-v-44889492]{width:96%;padding:0}.analysis-body[data-v-44889492]{padding:12px}.section-title[data-v-44889492]{font-size:14px}.summary-value[data-v-44889492]{font-size:18px}}.tip[data-v-efa2e995]{text-align:center;color:var(--color-text-secondary);padding:60px 0}.tip-center[data-v-efa2e995]{text-align:center;color:var(--color-text-secondary);padding:40px 0}.card[data-v-efa2e995]{margin-bottom:var(--space-4,16px)}.card-header[data-v-efa2e995]{margin-bottom:var(--space-4,16px);justify-content:space-between;align-items:center;gap:var(--space-2,10px);flex-wrap:wrap;display:flex}.header-left[data-v-efa2e995]{gap:var(--space-2,10px);flex-wrap:wrap;align-items:center;display:flex}.header-right[data-v-efa2e995]{gap:var(--space-2,8px);display:flex}.att-tabs[data-v-efa2e995]{margin-bottom:var(--space-4,16px)}.att-tab[data-v-efa2e995]{font-size:16px;font-weight:600;transition:all .2s}.att-tab[data-v-efa2e995]:hover,.att-tab.active[data-v-efa2e995]{color:var(--color-accent)}.name-cell[data-v-efa2e995]{color:var(--color-accent);font-weight:600}.empty-inline[data-v-efa2e995]{text-align:center;color:var(--color-text-secondary);padding:32px 0}.empty-status[data-v-efa2e995]{color:var(--color-text-secondary)}.period-card[data-v-efa2e995]{border-left:4px solid var(--color-accent);margin-bottom:var(--space-4,16px)}.period-label[data-v-efa2e995]{color:var(--color-accent);margin-bottom:var(--space-4,12px);font-size:28px;font-weight:700}.stat-grid[data-v-efa2e995]{gap:var(--space-4,16px);flex-wrap:wrap;display:flex}.stat-mini[data-v-efa2e995]{text-align:center;min-width:90px}.stat-mini .val[data-v-efa2e995]{color:var(--color-accent);font-size:28px;font-weight:700}.stat-mini .lbl[data-v-efa2e995]{font-size:var(--font-size-base,16px);color:var(--color-text-secondary);margin-top:var(--space-1,4px)}.summary-inline-stats[data-v-efa2e995]{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:14px;font-size:13px;display:flex}.summary-inline-stats .inline-label[data-v-efa2e995]{color:var(--color-accent);margin-right:4px;font-size:15px;font-weight:700}.summary-inline-stats .inline-stat b[data-v-efa2e995]{margin-right:2px;font-size:16px}@media (max-width:768px){.summary-inline-stats[data-v-efa2e995]{gap:8px;font-size:12px}.summary-inline-stats .inline-label[data-v-efa2e995]{font-size:13px}.summary-inline-stats .inline-stat b[data-v-efa2e995]{font-size:14px}}.entry-header[data-v-efa2e995]{align-items:center;gap:var(--space-3,12px);margin-bottom:var(--space-3,12px);font-size:var(--font-size-base,16px);display:flex}.val-normal[data-v-efa2e995]{color:var(--color-success);font-size:15px;font-weight:600}.val-leave[data-v-efa2e995]{color:var(--color-text-secondary);font-size:15px;font-weight:600}.val-absent[data-v-efa2e995]{color:var(--color-danger);font-size:15px;font-weight:600}.rate-val[data-v-efa2e995]{font-size:15px;font-weight:600}.rate-good[data-v-efa2e995]{color:var(--color-success)}.rate-warn[data-v-efa2e995]{color:var(--color-warning)}.rate-bad[data-v-efa2e995]{color:var(--color-danger)}.rate-none[data-v-efa2e995]{color:var(--color-text-secondary)}.att-dialog[data-v-efa2e995] .el-dialog__title{font-size:20px;font-weight:600}.att-dialog[data-v-efa2e995] .el-table{font-size:16px}.att-dialog[data-v-efa2e995] .el-table th{font-weight:600;font-size:16px!important}.att-dialog[data-v-efa2e995] .el-radio__label,.att-dialog[data-v-efa2e995] .el-input__inner{font-size:15px}.user-info[data-v-c5bdb45f]{font-size:var(--font-size-base,16px);color:var(--color-text-primary);text-align:left;padding:0 20px 10px;font-weight:600}.form-container[data-v-c5bdb45f]{max-width:450px;padding:20px 0}.account-stats[data-v-c5bdb45f]{color:var(--color-text-secondary,#666);font-size:var(--font-size-sm,14px);margin-bottom:12px}.selected-count[data-v-c5bdb45f]{color:var(--color-accent,#1a3a6b);font-weight:600}.name-cell[data-v-c5bdb45f]{color:var(--color-text-primary);font-weight:600}.password-text[data-v-c5bdb45f]{color:var(--color-text-primary);font-family:monospace;font-size:15px;font-weight:600}.no-password[data-v-c5bdb45f]{color:var(--color-text-disabled,#ccc)}.photo-wrapper[data-v-db7164e0]{justify-content:center;align-items:center;display:flex}.student-photo[data-v-db7164e0]{object-fit:cover;border:2px solid var(--color-border);border-radius:8px;width:64px;height:64px;transition:transform .2s,box-shadow .2s}.student-photo[data-v-db7164e0]:hover{transform:scale(1.1);box-shadow:0 2px 8px rgba(0,0,0,.15)}.no-photo[data-v-db7164e0]{flex-direction:column;align-items:center;gap:4px;padding:8px 0;display:flex}.no-photo-icon[data-v-db7164e0]{opacity:.5;font-size:24px}.no-photo-text[data-v-db7164e0]{color:var(--color-text-muted);font-size:12px}.photo-actions[data-v-db7164e0]{justify-content:center;align-items:center;gap:6px;display:flex}.name-cell[data-v-db7164e0]{color:var(--color-accent);font-weight:600}[data-v-db7164e0] .el-table th .cell,[data-v-db7164e0] .el-table td .cell{text-align:center;padding-left:6px!important;padding-right:6px!important}.eval-page[data-v-2319bffe]{box-sizing:border-box;background:#f5f7fa;min-height:100vh;padding:24px}.page-header-bar[data-v-2319bffe]{margin-bottom:16px}.page-header-bar h2[data-v-2319bffe]{color:#303133;margin:0 0 4px;font-size:22px}.subtitle[data-v-2319bffe]{color:#909399;margin:0;font-size:14px}.tab-bar[data-v-2319bffe]{border-bottom:2px solid #e4e7ed;gap:0;margin-bottom:20px;display:flex}.tab-item[data-v-2319bffe]{color:#606266;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom:2px solid transparent;margin-bottom:-2px;padding:10px 24px;font-size:15px;transition:all .2s}.tab-item[data-v-2319bffe]:hover{color:#409eff}.tab-item.active[data-v-2319bffe]{color:#409eff;border-bottom-color:#409eff;font-weight:600}.tab-item i[data-v-2319bffe]{margin-right:6px}.card[data-v-2319bffe]{background:#fff;border-radius:10px;margin-bottom:14px;padding:18px 22px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.semester-grid[data-v-2319bffe]{flex-direction:column;gap:12px;display:flex}.semester-card[data-v-2319bffe]{background:#fff;border:2px solid #ebeef5;border-radius:10px;transition:all .3s;overflow:hidden}.semester-card.active[data-v-2319bffe]{border-color:#67c23a}.semester-card.expanded[data-v-2319bffe]{box-shadow:0 4px 12px rgba(0,0,0,.08)}.semester-header[data-v-2319bffe]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:18px 22px;transition:background .2s;display:flex}.semester-header[data-v-2319bffe]:hover{background:#fafbfc}.sem-info[data-v-2319bffe]{flex:1;align-items:center;gap:12px;display:flex}.sem-index[data-v-2319bffe]{color:#fff;background:#409eff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:flex}.sem-name[data-v-2319bffe]{color:#303133;font-size:16px;font-weight:600}.teacher-count[data-v-2319bffe]{color:#909399;background:#f0f2f5;border-radius:10px;padding:2px 10px;font-size:13px}.sem-actions[data-v-2319bffe]{align-items:center;gap:14px;display:flex}.expand-icon[data-v-2319bffe]{color:#c0c4cc;font-size:14px;transition:transform .3s}.expand-icon.rotated[data-v-2319bffe]{transform:rotate(180deg)}.teacher-section[data-v-2319bffe]{background:#fafbfd;border-top:1px solid #f0f2f5;padding:18px 22px 22px}.add-teacher-row[data-v-2319bffe]{align-items:center;gap:10px;margin-bottom:16px;display:flex}.empty-tip[data-v-2319bffe]{text-align:center;color:#c0c4cc;padding:24px 0;font-size:14px}.teacher-table[data-v-2319bffe]{border-collapse:collapse;width:100%;font-size:14px}.teacher-table th[data-v-2319bffe]{text-align:left;color:#606266;background:#f5f7fa;border-bottom:1px solid #ebeef5;padding:10px 12px;font-weight:500}.teacher-table td[data-v-2319bffe]{color:#303133;border-bottom:1px solid #f0f2f5;padding:10px 12px}.teacher-table tr:hover td[data-v-2319bffe]{background:#f5f7fa}.text-muted[data-v-2319bffe]{color:#c0c4cc}.query-toolbar[data-v-2319bffe]{align-items:center;gap:14px;display:flex}.query-label[data-v-2319bffe]{color:#303133;white-space:nowrap;font-size:15px;font-weight:500}.summary-bar[data-v-2319bffe]{color:#303133;background:linear-gradient(135deg,#f0f9ff,#e6f4ff);border:1px solid #b3d8ff;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;display:flex}.summary-bar i[data-v-2319bffe]{color:#409eff;font-size:22px}.divider[data-v-2319bffe]{color:#dcdfe6}.score-num[data-v-2319bffe]{color:#409eff;font-size:18px}.teacher-simple-card[data-v-2319bffe]{border-left:4px solid #409eff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;transition:all .2s;display:flex}.teacher-simple-card[data-v-2319bffe]:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.tr-header-left[data-v-2319bffe]{align-items:center;gap:10px;display:flex}.tr-index[data-v-2319bffe]{color:#fff;background:#409eff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:flex}.tr-name[data-v-2319bffe]{color:#303133;font-size:16px}.tr-eval-count[data-v-2319bffe]{color:#909399;font-size:13px}.tr-header-right[data-v-2319bffe]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tr-total[data-v-2319bffe]{color:#606266;white-space:nowrap;font-size:15px}.avg-summary[data-v-2319bffe]{margin-bottom:24px}.avg-title[data-v-2319bffe]{color:#303133;margin-bottom:12px;font-size:15px;font-weight:600}.avg-title i[data-v-2319bffe]{color:#409eff;margin-right:4px}.avg-table[data-v-2319bffe]{border-collapse:collapse;width:100%;font-size:13px}.avg-table th[data-v-2319bffe]{text-align:left;color:#606266;background:#f5f7fa;border-bottom:1px solid #ebeef5;padding:8px 10px;font-weight:500}.avg-table td[data-v-2319bffe]{color:#303133;border-bottom:1px solid #f0f2f5;padding:8px 10px}.avg-table td[data-v-2319bffe]:first-child{width:90px}.avg-table td[data-v-2319bffe]:nth-child(3){text-align:center;width:70px}.avg-table td[data-v-2319bffe]:nth-child(4){text-align:center;color:#909399;width:50px}.cat-tag[data-v-2319bffe]{color:#fff;white-space:nowrap;border-radius:4px;padding:2px 8px;font-size:12px;display:inline-block}.student-detail-section[data-v-2319bffe]{border-top:2px dashed #e4e7ed;margin-top:20px;padding-top:20px}.detail-title[data-v-2319bffe]{color:#303133;margin-bottom:12px;font-size:15px;font-weight:600}.detail-title i[data-v-2319bffe]{color:#409eff;margin-right:4px}.detail-table-wrap[data-v-2319bffe]{overflow-x:auto}.detail-table[data-v-2319bffe]{border-collapse:collapse;width:100%;min-width:800px;font-size:12px}.detail-table th[data-v-2319bffe]{text-align:center;color:#606266;white-space:nowrap;background:#f5f7fa;border-bottom:1px solid #ebeef5;padding:8px 6px;font-weight:500}.detail-table td[data-v-2319bffe]{text-align:center;color:#303133;border-bottom:1px solid #f0f2f5;padding:7px 6px}.detail-table tr:hover td[data-v-2319bffe]{background:#f8fafc}.ds-seq[data-v-2319bffe]{width:40px;min-width:40px}.ds-name[data-v-2319bffe]{min-width:60px;font-weight:500;text-align:left!important}.ds-item[data-v-2319bffe]{min-width:52px}.ds-total[data-v-2319bffe]{color:#409eff;min-width:50px;font-weight:600}.detail-table thead th[data-v-2319bffe]:first-child,.detail-table tbody td[data-v-2319bffe]:first-child{background:inherit;position:-webkit-sticky;position:sticky;left:0}.ds-actions[data-v-2319bffe]{white-space:nowrap;min-width:60px;text-align:center!important}.student-layout[data-v-9650594f]{height:100vh;background:#f5f7fa;flex-direction:column;height:100dvh;display:flex;overflow:hidden}.top-nav[data-v-9650594f]{z-index:100;background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:-webkit-sticky;position:sticky;top:0}.nav-left[data-v-9650594f]{align-items:center;gap:8px;display:flex}.nav-logo[data-v-9650594f]{width:28px;height:28px}.nav-brand[data-v-9650594f]{color:#1e293b;font-size:15px;font-weight:600}.nav-right[data-v-9650594f]{align-items:center;gap:10px;display:flex}.nav-user[data-v-9650594f]{color:#64748b;font-size:13px}.nav-logout[data-v-9650594f]{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:5px 12px;font-size:12px;transition:all .15s}.nav-logout[data-v-9650594f]:hover{color:#3b82f6;border-color:#3b82f6}.menu-bar[data-v-9650594f]{-webkit-overflow-scrolling:touch;background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:0 8px;display:flex;overflow-x:auto}.menu-bar[data-v-9650594f]::-webkit-scrollbar{display:none}.menu-item[data-v-9650594f]{color:#64748b;white-space:nowrap;border-bottom:2px solid transparent;flex-direction:row;align-items:center;gap:6px;padding:8px 16px;font-size:14px;text-decoration:none;transition:all .15s;display:flex}.menu-item.active[data-v-9650594f]{color:#3b82f6;border-bottom-color:#3b82f6}.menu-item[data-v-9650594f]:hover{color:#3b82f6;background:#f8fafc}.menu-icon[data-v-9650594f]{font-size:16px}.menu-text[data-v-9650594f]{white-space:nowrap;font-size:14px;font-weight:500}.page-header[data-v-9650594f]{padding:16px 16px 0}.page-header h2[data-v-9650594f]{color:#1e293b;margin:0;font-size:18px;font-weight:600}.main-area[data-v-9650594f]{-webkit-overflow-scrolling:touch;flex:1;padding:12px 16px 24px;overflow-y:auto}@media (max-width:360px){.nav-brand[data-v-9650594f]{font-size:14px}.nav-user[data-v-9650594f]{display:none}.menu-item[data-v-9650594f]{min-width:60px;padding:8px 6px}.menu-icon[data-v-9650594f]{font-size:18px}.menu-text[data-v-9650594f]{font-size:10px}.page-header h2[data-v-9650594f]{font-size:16px}.main-area[data-v-9650594f]{padding:10px 12px 20px}}.info-list[data-v-90915275]{flex-direction:column;display:flex}.info-row[data-v-90915275]{align-items:center;gap:12px;padding:14px 16px;display:flex;position:relative}.info-row.clickable[data-v-90915275]:active{background:var(--color-bg-card,#f5f7fa)}.info-icon[data-v-90915275]{text-align:center;flex-shrink:0;width:32px;font-size:22px}.info-body[data-v-90915275]{flex:1;min-width:0}.info-label[data-v-90915275]{color:var(--color-text-secondary,#909399);margin-bottom:2px;font-size:12px}.info-value[data-v-90915275]{color:var(--color-text-primary,#303133);font-size:15px;font-weight:600}.info-value.phone[data-v-90915275]{color:var(--color-accent,#409eff)}.info-value.muted[data-v-90915275]{color:var(--color-text-disabled,#c0c4cc);font-weight:400}.info-arrow[data-v-90915275]{color:var(--color-text-disabled,#c0c4cc);flex-shrink:0;font-size:20px}@media (min-width:768px){.info-row[data-v-90915275]{padding:16px 24px}.info-icon[data-v-90915275]{width:36px;font-size:24px}.info-value[data-v-90915275]{font-size:16px}}.filter-card[data-v-d006c9e6]{flex-direction:column;gap:8px;padding:10px 12px;display:flex}.section-title[data-v-d006c9e6]{color:var(--color-accent);text-align:center;margin-bottom:12px;font-size:15px;font-weight:700}.date-pick-row[data-v-d006c9e6]{width:100%}.range-label[data-v-d006c9e6]{text-align:center;color:var(--color-text-secondary);background:var(--color-bg-card,#f5f7fa);border-radius:6px;padding:8px 12px;font-size:13px;font-weight:500}.record-list[data-v-d006c9e6]{flex-direction:column;gap:8px;display:flex}.record-item[data-v-d006c9e6]{background:var(--color-bg-card,#f8f9fb);border-radius:8px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.ri-date[data-v-d006c9e6]{color:var(--color-text-primary);font-size:14px;font-weight:600}.ri-meta[data-v-d006c9e6]{gap:6px;display:flex}.week-list[data-v-d006c9e6]{flex-direction:column;gap:6px;display:flex}.week-header[data-v-d006c9e6]{color:var(--color-text-secondary,#909399);border-bottom:1px solid var(--color-border-light,#e4e7ed);justify-content:space-between;align-items:center;padding:8px 14px;font-size:12px;display:flex}.wh-left[data-v-d006c9e6]{flex:none;min-width:60px}.wh-right[data-v-d006c9e6]{text-align:center;grid-template-columns:repeat(3,56px);gap:12px;display:grid}.wh-col[data-v-d006c9e6]{font-weight:500}.week-item[data-v-d006c9e6]{background:var(--color-bg-card,#f8f9fb);border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.week-item.item-today[data-v-d006c9e6]{background:var(--color-info-light,#ecf5ff);border:1px solid var(--color-info,#a0cfff)}.wi-left[data-v-d006c9e6]{align-items:center;gap:8px;display:flex}.wi-weekday[data-v-d006c9e6]{color:var(--color-text-primary);font-size:14px;font-weight:700}.wi-date[data-v-d006c9e6]{color:var(--color-text-secondary);font-size:12px}.wi-right[data-v-d006c9e6]{text-align:center;grid-template-columns:repeat(3,56px);gap:12px;font-size:13px;display:grid}.wi-cell[data-v-d006c9e6]{justify-content:center;align-items:center;display:flex}@media (max-width:480px){.week-item[data-v-d006c9e6]{padding:8px 10px}.wi-weekday[data-v-d006c9e6]{font-size:13px}.wi-date[data-v-d006c9e6]{font-size:11px}.wi-right[data-v-d006c9e6]{font-size:12px}.stats-card[data-v-d006c9e6]{gap:4px}.stat-item[data-v-d006c9e6]{font-size:11px}.sn[data-v-d006c9e6]{font-size:15px}}.summary-list[data-v-d006c9e6]{flex-direction:column;gap:10px;display:flex}.sum-item[data-v-d006c9e6]{background:var(--color-bg-card,#f8f9fb);border-radius:10px;justify-content:space-between;align-items:center;padding:12px;display:flex}.si-period[data-v-d006c9e6]{color:var(--color-text-primary);white-space:nowrap;font-size:14px;font-weight:600}.si-stats[data-v-d006c9e6]{flex-wrap:wrap;justify-content:flex-end;gap:6px;font-size:12px;display:flex}.ss.normal[data-v-d006c9e6]{color:var(--color-success,#67c23a);font-weight:600}.ss.leave[data-v-d006c9e6]{color:var(--color-text-disabled,#909399);font-weight:600}.ss.absent[data-v-d006c9e6]{color:var(--color-danger,#f56c6c);font-weight:600}.si-rate[data-v-d006c9e6]{text-align:right;min-width:56px;font-size:18px;font-weight:700}.rate-good[data-v-d006c9e6]{color:var(--color-success,#67c23a)}.rate-warn[data-v-d006c9e6]{color:var(--color-warning,#e6a23c)}.rate-bad[data-v-d006c9e6]{color:var(--color-danger,#f56c6c)}.stats-card[data-v-d006c9e6]{flex-wrap:wrap;gap:8px;display:flex}.stat-item[data-v-d006c9e6]{color:var(--color-text-secondary);align-items:center;gap:3px;font-size:13px;display:flex}.sn[data-v-d006c9e6]{color:var(--color-accent);font-size:18px;font-weight:700}.sn.normal[data-v-d006c9e6]{color:var(--color-success,#67c23a)}.sn.leave[data-v-d006c9e6]{color:var(--color-text-disabled,#909399)}.sn.absent[data-v-d006c9e6]{color:var(--color-danger,#f56c6c)}@media (min-width:768px){.stats-card[data-v-d006c9e6]{gap:16px}.stat-item[data-v-d006c9e6]{font-size:14px}.sn[data-v-d006c9e6]{font-size:20px}}.month-block[data-v-d006c9e6]{background:var(--color-bg-card,#f8f9fb);border-radius:8px;padding:10px 14px}.mb-title[data-v-d006c9e6]{color:var(--color-text-primary);border-bottom:1px solid var(--color-border-light,#e4e7ed);margin-bottom:8px;padding-bottom:6px;font-size:15px;font-weight:700}.month-table[data-v-d006c9e6]{width:100%}.mt-header[data-v-d006c9e6],.mt-row[data-v-d006c9e6]{align-items:center;padding:8px 0;font-size:13px;display:flex}.mt-header[data-v-d006c9e6]{color:var(--color-text-secondary,#909399);border-bottom:1px solid var(--color-border-light,#e4e7ed);padding-bottom:6px;font-weight:500}.mt-row+.mt-row[data-v-d006c9e6]{border-top:1px solid var(--color-border-lighter,#f0f0f0)}.mt-col[data-v-d006c9e6]{text-align:center;flex:1}.mt-col.period[data-v-d006c9e6]{text-align:left;flex:0 0 60px}.mt-col.rate[data-v-d006c9e6]{text-align:right;flex:0 0 60px}.mt-col.normal[data-v-d006c9e6]{color:var(--color-success,#67c23a);font-weight:600}.mt-col.leave[data-v-d006c9e6]{color:var(--color-info,#409eff);font-weight:600}.mt-col.absent[data-v-d006c9e6]{color:var(--color-danger,#f56c6c);font-weight:600}.page-header[data-v-38e04d82]{justify-content:center;align-items:center;margin-bottom:12px;display:flex}.page-title[data-v-38e04d82]{color:var(--color-text-primary);font-size:20px;font-weight:700}.back-wrap[data-v-38e04d82]{text-align:center;margin-top:16px}.exam-list[data-v-38e04d82]{flex-direction:column;display:flex}.exam-item[data-v-38e04d82]{cursor:pointer;justify-content:space-between;align-items:center;padding:14px 16px;transition:background .15s;display:flex}.exam-item[data-v-38e04d82]:active{background:var(--color-bg-card,#f5f7fa)}.ei-left[data-v-38e04d82]{min-width:0}.ei-name[data-v-38e04d82]{color:var(--color-text-primary);margin-bottom:2px;font-size:15px;font-weight:600}.ei-date[data-v-38e04d82]{color:var(--color-text-disabled,#909399);font-size:12px}.ei-right[data-v-38e04d82]{flex-shrink:0;align-items:center;display:flex}.ei-arrow[data-v-38e04d82]{color:var(--color-text-disabled,#c0c4cc);font-size:20px}.score-list[data-v-38e04d82]{flex-direction:column;display:flex}.score-item[data-v-38e04d82]{border-bottom:1px solid var(--color-border-light,#f0f0f0);align-items:baseline;gap:12px;padding:12px 16px;display:flex}.score-item[data-v-38e04d82]:last-child{border-bottom:none}.si-name[data-v-38e04d82]{color:var(--color-text-primary);flex:1;min-width:0;font-size:15px;font-weight:500}.si-score[data-v-38e04d82]{white-space:nowrap;text-align:right;font-size:18px;font-weight:700}.si-full[data-v-38e04d82]{color:var(--color-text-disabled,#909399);font-size:13px;font-weight:400}.si-score.excellent[data-v-38e04d82]{color:var(--color-success,#67c23a)}.si-score.normal[data-v-38e04d82]{color:var(--color-accent,#409eff)}.si-score.low[data-v-38e04d82]{color:var(--color-danger,#f56c6c)}@media (min-width:768px){.page-header[data-v-38e04d82]{margin-bottom:20px}.page-title[data-v-38e04d82]{font-size:20px}.exam-item[data-v-38e04d82]{padding:16px 24px}.score-item[data-v-38e04d82]{padding:14px 24px}}.page-header[data-v-898a00ca]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.page-title[data-v-898a00ca]{color:var(--color-text-primary);font-size:20px;font-weight:700}.table-header[data-v-898a00ca]{background:var(--color-bg-card,#f5f7fa);color:var(--color-text-secondary,#606266);border-bottom:1px solid var(--color-border,#e4e7ed);border-radius:8px 8px 0 0;gap:8px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.table-header .col-id[data-v-898a00ca]{text-align:center;width:50px}.table-header .col-date[data-v-898a00ca]{text-align:center;flex:1;padding-left:0}.table-header .col-status[data-v-898a00ca]{text-align:center;width:130px}.table-header .col-action[data-v-898a00ca]{text-align:center;width:100px}.leave-list[data-v-898a00ca]{flex-direction:column;display:flex}.leave-row[data-v-898a00ca]{border-bottom:1px solid var(--color-border-light,#ebeef5);align-items:center;gap:8px;padding:14px 16px;font-size:14px;transition:background .2s;display:flex}.leave-row[data-v-898a00ca]:hover{background:var(--color-bg-card,#f5f7fa)}.leave-row[data-v-898a00ca]:last-child{border-bottom:none}.col-id[data-v-898a00ca]{width:50px;color:var(--color-text-secondary,#606266);text-align:center;flex-shrink:0}.col-date[data-v-898a00ca]{color:var(--color-text-primary,#303133);text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;padding-left:0;overflow:hidden}.col-status[data-v-898a00ca]{flex-shrink:0;justify-content:center;align-items:center;gap:4px;width:130px;display:flex}.col-action[data-v-898a00ca]{flex-shrink:0;justify-content:center;align-items:center;width:100px;display:flex}.verified-tag[data-v-898a00ca]{color:var(--color-success,#67c23a);font-size:13px;font-weight:600}.student-name[data-v-898a00ca]{color:var(--color-text-primary,#303133);background:var(--color-bg-card,#f5f7fa);border:1px solid var(--color-border,#e4e7ed);border-radius:4px;padding:0 12px;font-size:14px;line-height:32px;display:inline-block}.qr-box[data-v-898a00ca]{text-align:center;padding:10px}.qr-date-info[data-v-898a00ca]{color:var(--color-text-primary,#303133);border-bottom:1px solid var(--color-border-light,#ebeef5);margin-bottom:12px;padding-bottom:12px;font-size:15px;font-weight:500}.qr-img[data-v-898a00ca]{border-radius:8px;width:240px;height:240px}.qr-tip[data-v-898a00ca]{color:var(--color-text-secondary,#606266);margin-top:12px;font-size:13px}.verified-text[data-v-898a00ca]{color:var(--color-success,#67c23a);margin-top:8px;font-size:16px;font-weight:600}.expired-text[data-v-898a00ca]{color:var(--color-text-disabled,#909399);margin:20px 0 8px;font-size:18px;font-weight:600}.expired-tip[data-v-898a00ca]{color:var(--color-text-disabled,#909399);margin:0;font-size:12px}.detail-content[data-v-898a00ca]{padding:10px 0}.detail-row[data-v-898a00ca]{border-bottom:1px solid var(--color-border-light,#ebeef5);padding:10px 0;display:flex}.detail-row[data-v-898a00ca]:last-child{border-bottom:none}.detail-label[data-v-898a00ca]{width:80px;color:var(--color-text-secondary,#606266);flex-shrink:0;font-size:14px}.detail-value[data-v-898a00ca]{color:var(--color-text-primary,#303133);flex:1;font-size:14px}.approval-flow[data-v-898a00ca]{background:var(--color-bg-card,#f8f9fb);border-radius:8px;margin-top:16px;padding:16px}.flow-title[data-v-898a00ca]{color:var(--color-text-primary,#303133);margin-bottom:12px;font-size:15px;font-weight:600}.flow-steps[data-v-898a00ca]{flex-direction:column;gap:0;display:flex}.flow-step[data-v-898a00ca]{align-items:flex-start;gap:10px;display:flex;position:relative}.flow-step .step-icon[data-v-898a00ca]{z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex}.flow-step.done .step-icon[data-v-898a00ca]{color:#67c23a;background:#e1f3d8}.flow-step.pending .step-icon[data-v-898a00ca]{color:#c0c4cc;background:#f0f2f5}.flow-step.pending.active .step-icon[data-v-898a00ca]{color:#e6a23c;background:#fdf6ec}.icon-done[data-v-898a00ca]{color:#67c23a;font-weight:700}.icon-reject[data-v-898a00ca]{color:#f56c6c;font-weight:700}.step-connector[data-v-898a00ca]{background:#dcdfe6;width:2px;height:24px;position:absolute;top:28px;left:13px}.step-info[data-v-898a00ca]{flex:1;padding-top:2px}.step-name[data-v-898a00ca]{color:var(--color-text-primary,#303133);font-size:14px;font-weight:500}.step-result[data-v-898a00ca]{color:var(--color-text-disabled,#909399);margin-top:2px;font-size:12px}.step-result.waiting[data-v-898a00ca]{color:#e6a23c}@media (max-width:768px){.page-header[data-v-898a00ca]{flex-wrap:wrap;gap:8px;margin-bottom:12px}.page-title[data-v-898a00ca]{font-size:16px}.table-header[data-v-898a00ca]{gap:6px;padding:10px 8px;font-size:12px}.table-header .col-id[data-v-898a00ca]{width:40px}.table-header .col-status[data-v-898a00ca]{width:100px}.table-header .col-action[data-v-898a00ca]{width:90px}.leave-row[data-v-898a00ca]{gap:6px;padding:10px 8px;font-size:12px}.col-id[data-v-898a00ca]{width:40px}.col-status[data-v-898a00ca]{width:100px}.col-action[data-v-898a00ca]{width:90px}.col-date[data-v-898a00ca]{font-size:12px}@media (max-width:480px){.sci-card[data-v-898a00ca]{overflow-x:auto}.table-header[data-v-898a00ca]{gap:4px;min-width:320px;padding:8px 6px;font-size:11px}.table-header .col-id[data-v-898a00ca]{width:32px}.table-header .col-status[data-v-898a00ca]{width:90px}.table-header .col-action[data-v-898a00ca]{width:80px}.leave-list[data-v-898a00ca]{min-width:320px}.leave-row[data-v-898a00ca]{gap:4px;padding:8px 6px;font-size:12px}.col-id[data-v-898a00ca]{width:32px;font-size:11px}.col-status[data-v-898a00ca]{width:90px}.col-action[data-v-898a00ca]{width:80px}.col-date[data-v-898a00ca]{font-size:11px}.detail-label[data-v-898a00ca]{width:70px;font-size:13px}.detail-value[data-v-898a00ca]{font-size:13px}.flow-step .step-icon[data-v-898a00ca]{width:24px;height:24px;font-size:12px}.step-connector[data-v-898a00ca]{height:20px;top:24px;left:11px}.step-name[data-v-898a00ca]{font-size:13px}.step-result[data-v-898a00ca]{font-size:11px}.qr-img[data-v-898a00ca]{width:200px;height:200px}}}@media (min-width:768px){.page-header[data-v-898a00ca]{margin-bottom:20px}.page-title[data-v-898a00ca]{font-size:20px}.leave-item[data-v-898a00ca]{padding:18px}}.eval-page[data-v-18491ab0]{box-sizing:border-box;background:#f5f7fa;padding:14px}.page-header-bar[data-v-18491ab0]{margin-bottom:16px}.page-header-bar h2[data-v-18491ab0]{color:#303133;margin:0 0 4px;font-size:20px}.subtitle[data-v-18491ab0]{color:#909399;margin:0;font-size:13px}.card[data-v-18491ab0]{background:#fff;border-radius:12px;margin-bottom:14px;padding:16px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.current-semester-bar[data-v-18491ab0]{background:linear-gradient(135deg,#ecf5ff,#f0f9ff);border:1.5px solid #b3d8ff;flex-wrap:wrap;align-items:center;gap:6px;padding:12px 16px;display:flex}.current-semester-bar i[data-v-18491ab0]{color:#409eff;font-size:18px}.current-semester-bar span[data-v-18491ab0]{color:#303133;font-size:14px}.current-semester-bar strong[data-v-18491ab0]{color:#409eff;font-weight:600}.teacher-count[data-v-18491ab0]{color:#909399;font-size:13px}.select-bar[data-v-18491ab0]{flex-direction:column;gap:8px;display:flex}.select-label[data-v-18491ab0]{color:#606266;font-size:14px;font-weight:500}.hint-text[data-v-18491ab0]{color:#67c23a;margin:8px 0 0;font-size:13px}.teacher-info[data-v-18491ab0]{border-bottom:1px solid #f0f2f5;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:14px;display:flex}.info-avatar[data-v-18491ab0]{color:#fff;background:linear-gradient(135deg,#409eff,#66b1ff);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.info-text h3[data-v-18491ab0]{color:#303133;margin:0 0 2px;font-size:16px}.info-text p[data-v-18491ab0]{color:#909399;margin:0;font-size:12px}.dimensions[data-v-18491ab0]{flex-direction:column;gap:12px;margin-bottom:18px;display:flex}.dimension-card[data-v-18491ab0]{border:1.5px solid #e8ecf1;border-radius:10px;transition:border-color .2s;overflow:hidden}.dimension-card[data-v-18491ab0]:hover{border-color:#c6d6e7}.dim-header[data-v-18491ab0]{background:linear-gradient(135deg,#f8fafc,#f0f4f8);border-bottom:1px solid #ebeef5;align-items:center;gap:8px;padding:11px 14px;display:flex}.dim-index[data-v-18491ab0]{color:#fff;background:#409eff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:flex}.dim-title[data-v-18491ab0]{color:#303133;font-size:14px;font-weight:600}.dim-score-display[data-v-18491ab0]{color:#409eff;white-space:nowrap;margin-left:auto;font-size:13px;font-weight:600}.sub-item[data-v-18491ab0]{border-bottom:1px solid #f5f7fa;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.sub-item[data-v-18491ab0]:last-child{border-bottom:none}.sub-left[data-v-18491ab0]{flex:1;gap:4px;min-width:0;display:flex}.sub-num[data-v-18491ab0]{color:#409eff;flex-shrink:0;font-size:13px;font-weight:600}.sub-text[data-v-18491ab0]{color:#606266;word-break:break-all;font-size:13px;line-height:1.6}.sub-right[data-v-18491ab0]{flex-shrink:0;align-items:center;gap:4px;display:flex}.score-input[data-v-18491ab0]{text-align:center;color:#303133;-moz-appearance:textfield;border:1.5px solid #dcdfe6;border-radius:6px;outline:none;width:64px;height:36px;font-size:15px;font-weight:600;transition:border-color .2s}.score-input[data-v-18491ab0]:focus{border-color:#409eff;box-shadow:0 0 0 2px rgba(64,158,255,.15)}.score-input[data-v-18491ab0]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.score-input[data-v-18491ab0]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.score-unit[data-v-18491ab0]{color:#909399;white-space:nowrap;font-size:12px}.comment-section[data-v-18491ab0]{margin-bottom:18px}.comment-section label[data-v-18491ab0]{color:#606266;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.total-section[data-v-18491ab0]{text-align:center;margin-bottom:16px}.total-box[data-v-18491ab0]{background:linear-gradient(135deg,#f0f9ff,#e8f4fd);border:1px solid #b3d8ff;border-radius:30px;align-items:baseline;gap:4px;padding:10px 24px;transition:all .3s;display:inline-flex}.total-box.total-over[data-v-18491ab0]{background:linear-gradient(135deg,#fef0f0,#fde2e2);border-color:#f56c6c}.total-label[data-v-18491ab0]{color:#606266;font-size:14px}.total-box strong[data-v-18491ab0]{color:#409eff;font-size:32px;font-weight:700}.total-box strong.good[data-v-18491ab0]{color:#67c23a}.total-max[data-v-18491ab0]{color:#909399;font-size:14px}.submit-area[data-v-18491ab0]{padding-top:4px}.submit-btn[data-v-18491ab0]{letter-spacing:4px;height:46px;font-size:17px;border-radius:23px!important;width:100%!important}.empty-state[data-v-18491ab0]{text-align:center;color:#c0c4cc;padding:36px 0}.empty-state i[data-v-18491ab0]{margin-bottom:10px;font-size:40px;display:block}.empty-state p[data-v-18491ab0]{margin:0;font-size:14px}.my-records h3[data-v-18491ab0]{color:#303133;margin:0 0 12px;font-size:15px}.my-records h3 i[data-v-18491ab0]{color:#409eff;margin-right:6px}.record-table[data-v-18491ab0]{border-collapse:collapse;width:100%;font-size:13px}.record-table th[data-v-18491ab0]{text-align:left;color:#606266;white-space:nowrap;background:#f5f7fa;border-bottom:1px solid #ebeef5;padding:8px 10px;font-weight:500}.record-table td[data-v-18491ab0]{color:#303133;word-break:break-all;border-bottom:1px solid #f0f5fa;padding:8px 10px}.verify-container[data-v-44537703]{background:#f5f7fa;min-height:100vh}.verify-top[data-v-44537703]{background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:16px 20px}.verify-top-inner[data-v-44537703]{justify-content:space-between;align-items:center;max-width:500px;margin:0 auto;display:flex}.user-info[data-v-44537703]{align-items:center;gap:8px;display:flex}.user-icon[data-v-44537703]{font-size:20px}.user-name[data-v-44537703]{color:#1e293b;font-size:16px;font-weight:600}.logout-btn[data-v-44537703]{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:all .15s}.logout-btn[data-v-44537703]:hover{color:#3b82f6;border-color:#3b82f6}.verify-body[data-v-44537703]{box-sizing:border-box;width:100%;max-width:500px;margin:0 auto;padding:24px 16px 80px}.scan-section[data-v-44537703]{flex-direction:column;align-items:center;margin-bottom:20px;display:flex}.scanner-box[data-v-44537703]{background:#1e293b;border-radius:16px;width:280px;height:280px;position:relative;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.15)}.scanner-video[data-v-44537703]{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.scanner-canvas[data-v-44537703]{width:100%;height:100%;display:none;position:absolute;top:0;left:0}.scan-frame[data-v-44537703]{pointer-events:none;width:200px;height:200px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.corner[data-v-44537703]{border:3px solid #3b82f6;width:28px;height:28px;position:absolute}.corner-tl[data-v-44537703]{border-bottom:none;border-right:none;border-radius:8px 0 0;top:0;left:0}.corner-tr[data-v-44537703]{border-bottom:none;border-left:none;border-radius:0 8px 0 0;top:0;right:0}.corner-bl[data-v-44537703]{border-top:none;border-right:none;border-radius:0 0 0 8px;bottom:0;left:0}.corner-br[data-v-44537703]{border-top:none;border-left:none;border-radius:0 0 8px;bottom:0;right:0}.scan-line[data-v-44537703]{background:linear-gradient(90deg,transparent,#3b82f6,transparent);height:2px;animation:2s linear infinite scanMove-44537703;position:absolute;top:0;left:10px;right:10px}@keyframes scanMove-44537703{0%{opacity:0;top:0}10%{opacity:1}90%{opacity:1}to{opacity:0;top:100%}}.start-scan-btn[data-v-44537703]{color:#1e293b;cursor:pointer;background:rgba(255,255,255,.95);border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:130px;height:130px;transition:all .3s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 16px rgba(0,0,0,.2)}.start-scan-btn[data-v-44537703]:active{transform:translate(-50%,-50%)scale(.95)}.start-scan-btn .scan-icon[data-v-44537703]{font-size:36px}.start-scan-btn span[data-v-44537703]:last-child{font-size:13px;font-weight:600}.stop-scan-btn[data-v-44537703]{color:#fff;cursor:pointer;background:rgba(239,68,68,.9);border:none;border-radius:20px;padding:8px 20px;font-size:13px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.scan-tip[data-v-44537703]{color:#94a3b8;text-align:center;margin-top:14px;font-size:13px}.result-section[data-v-44537703]{text-align:center;border-radius:12px;margin-bottom:16px;padding:20px}.result-section.success[data-v-44537703]{background:#ecfdf5;border:1px solid #10b981}.result-section.already[data-v-44537703]{background:#fffbeb;border:1px solid #f59e0b}.result-section.error[data-v-44537703]{background:#fef2f2;border:1px solid #ef4444}.result-icon[data-v-44537703]{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 12px;font-size:24px;font-weight:700;display:flex}.success-icon[data-v-44537703]{background:#10b981}.already-icon[data-v-44537703]{background:#f59e0b}.error-icon[data-v-44537703]{background:#ef4444}.result-title[data-v-44537703]{margin-bottom:16px;font-size:18px;font-weight:600}.result-section.success .result-title[data-v-44537703]{color:#10b981}.result-section.already .result-title[data-v-44537703]{color:#f59e0b}.result-section.error .result-title[data-v-44537703]{color:#ef4444}.student-info[data-v-44537703]{text-align:left;background:#fff;border-radius:8px;padding:14px}.info-row[data-v-44537703]{border-bottom:1px solid #f1f5f9;padding:10px 0;display:flex}.info-row[data-v-44537703]:last-child{border-bottom:none}.info-label[data-v-44537703]{color:#64748b;flex-shrink:0;width:72px;font-size:13px}.info-value[data-v-44537703]{color:#1e293b;word-break:break-all;flex:1;font-size:13px;font-weight:500}.info-value.highlight[data-v-44537703]{color:#3b82f6;font-weight:600}.error-message[data-v-44537703]{color:#ef4444;background:#fff;border-radius:8px;padding:14px;font-size:13px}.history-section[data-v-44537703]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:16px;padding:16px}.history-title[data-v-44537703]{color:#1e293b;border-bottom:1px solid #e2e8f0;margin-bottom:12px;padding-bottom:10px;font-size:15px;font-weight:600}.history-list[data-v-44537703]{flex-direction:column;gap:8px;display:flex}.history-item[data-v-44537703]{background:#f8fafc;border-radius:6px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.history-info[data-v-44537703]{flex-direction:column;gap:2px;display:flex}.history-name[data-v-44537703]{color:#1e293b;font-size:14px;font-weight:500}.history-class[data-v-44537703]{color:#64748b;font-size:12px}.history-time[data-v-44537703]{color:#94a3b8;white-space:nowrap;font-size:12px}.verify-bottom[data-v-44537703]{background:#fff;border-top:1px solid #e2e8f0;justify-content:center;padding:12px 16px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-btn[data-v-44537703]{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:100%;max-width:500px;padding:12px;font-size:14px;font-weight:500;transition:all .15s}.bottom-btn[data-v-44537703]:hover{color:#3b82f6;border-color:#3b82f6}.modal-overlay[data-v-44537703]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:rgba(15,23,42,.4);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-box[data-v-44537703]{background:#fff;border-radius:16px;width:100%;max-width:400px;box-shadow:0 8px 32px rgba(0,0,0,.15)}.modal-header[data-v-44537703]{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.modal-header h3[data-v-44537703]{color:#1e293b;margin:0;font-size:16px;font-weight:600}.modal-close[data-v-44537703]{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;font-size:16px;display:flex}.modal-close[data-v-44537703]:hover{color:#1e293b;background:#f1f5f9}.modal-body[data-v-44537703]{padding:20px}.modal-input[data-v-44537703]{color:#1e293b;box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .15s}.modal-input[data-v-44537703]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.modal-input[data-v-44537703]::-webkit-input-placeholder{color:#94a3b8}.modal-input[data-v-44537703]::-moz-placeholder{color:#94a3b8}.modal-input[data-v-44537703]::-ms-input-placeholder{color:#94a3b8}.modal-input[data-v-44537703]::placeholder{color:#94a3b8}.modal-footer[data-v-44537703]{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.modal-btn[data-v-44537703]{cursor:pointer;border:none;border-radius:6px;padding:8px 18px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.btn-cancel[data-v-44537703]{color:#64748b;background:#fff;border:1px solid #e2e8f0}.btn-cancel[data-v-44537703]:hover{color:#3b82f6;border-color:#3b82f6}.btn-primary[data-v-44537703]{color:#fff;background:#3b82f6}.btn-primary[data-v-44537703]:hover{background:#2563eb}@media (max-width:480px){.verify-top[data-v-44537703]{padding:12px 16px}.user-name[data-v-44537703]{font-size:15px}.logout-btn[data-v-44537703]{padding:5px 12px;font-size:12px}.verify-body[data-v-44537703]{padding:16px 12px 80px}.scanner-box[data-v-44537703]{width:260px;height:260px}.scan-frame[data-v-44537703]{width:180px;height:180px}.corner[data-v-44537703]{border-width:3px;width:24px;height:24px}.start-scan-btn[data-v-44537703]{width:120px;height:120px}.start-scan-btn .scan-icon[data-v-44537703]{font-size:32px}.start-scan-btn span[data-v-44537703]:last-child{font-size:12px}.result-section[data-v-44537703]{padding:16px}.result-icon[data-v-44537703]{width:44px;height:44px;font-size:20px}.result-title[data-v-44537703]{margin-bottom:12px;font-size:16px}.student-info[data-v-44537703]{padding:12px}.info-row[data-v-44537703]{flex-wrap:wrap;padding:8px 0}.info-label[data-v-44537703]{width:66px;font-size:12px}.info-value[data-v-44537703]{font-size:12px}.history-section[data-v-44537703]{padding:14px}.history-title[data-v-44537703]{margin-bottom:10px;padding-bottom:8px;font-size:14px}.history-item[data-v-44537703]{padding:8px 10px}.history-name[data-v-44537703]{font-size:13px}.history-class[data-v-44537703],.history-time[data-v-44537703]{font-size:11px}.verify-bottom[data-v-44537703]{padding:10px 12px}.bottom-btn[data-v-44537703]{padding:10px;font-size:13px}.modal-box[data-v-44537703]{max-width:340px}.modal-header[data-v-44537703]{padding:14px 16px}.modal-header h3[data-v-44537703]{font-size:15px}.modal-body[data-v-44537703]{padding:16px}.modal-footer[data-v-44537703]{padding:12px 16px}.modal-btn[data-v-44537703]{padding:7px 14px;font-size:13px}}@media (max-width:360px){.scanner-box[data-v-44537703]{width:240px;height:240px}.scan-frame[data-v-44537703]{width:160px;height:160px}.corner[data-v-44537703]{width:20px;height:20px}.start-scan-btn[data-v-44537703]{width:100px;height:100px}.start-scan-btn .scan-icon[data-v-44537703]{font-size:28px}.modal-box[data-v-44537703]{max-width:300px}}:root{--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-primary-light:#eff6ff;--color-primary-dim:rgba(59,130,246,.08);--color-bg-deep:#fff;--color-bg-base:#f5f7fa;--color-bg-elevated:#fff;--color-bg-surface:#f8fafc;--color-bg-card:#fff;--color-bg-hover:#f1f5f9;--color-border:#e2e8f0;--color-border-hover:#cbd5e1;--color-border-active:var(--color-primary);--color-text-primary:#1e293b;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-text-accent:#3b82f6;--color-accent:#3b82f6;--color-accent-hover:#2563eb;--color-accent-dim:#eff6ff;--color-ice:#3b82f6;--color-ice-dim:#eff6ff;--color-success:#10b981;--color-success-dim:rgba(16,185,129,.1);--color-success-light:#ecfdf5;--color-warning:#f59e0b;--color-warning-dim:rgba(245,158,11,.1);--color-warning-light:#fffbeb;--color-danger:#ef4444;--color-danger-dim:rgba(239,68,68,.1);--color-danger-light:#fef2f2;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 4px 12px rgba(0,0,0,.08);--shadow-lg:0 8px 24px rgba(0,0,0,.12);--shadow-card:0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-card-hover:0 4px 16px rgba(0,0,0,.1);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--font-family:"Microsoft YaHei", "PingFang SC", "SimHei", "Heiti SC", "Noto Sans SC", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:22px;--font-size-3xl:28px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.3;--line-height-normal:1.5;--line-height-relaxed:1.7}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-bg-base);line-height:var(--line-height-normal);overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#cbd5e1}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.app-layout{height:100vh;display:flex;overflow:hidden}.sidebar{border-right:1px solid var(--color-border);background:#fff;flex-direction:column;flex-shrink:0;width:220px;display:flex;box-shadow:1px 0 3px rgba(0,0,0,.04)}.sidebar-header{padding:var(--space-5) var(--space-4);text-align:center;border-bottom:1px solid var(--color-border)}.sidebar-logo{background:var(--color-primary-light);width:72px;height:72px;margin-bottom:var(--space-3);border:2px solid #dbeafe;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.sidebar-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:var(--line-height-relaxed)}.sidebar-nav{padding:var(--space-3) 0;flex:1;overflow-y:auto}.nav-item{padding:13px var(--space-5);color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:3px solid transparent;align-items:center;margin:1px 0;text-decoration:none;display:flex}.nav-item:hover{color:var(--color-primary);background:var(--color-primary-light)}.nav-item.router-link-active{color:var(--color-primary);background:var(--color-primary-light);border-left-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.sidebar-footer{padding:var(--space-4);border-top:1px solid var(--color-border);font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center}.content-area{flex-direction:column;flex:1;display:flex;overflow:hidden}.topbar{border-bottom:1px solid var(--color-border);height:56px;padding:0 var(--space-6);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.topbar-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.topbar-right{align-items:center;gap:var(--space-4);display:flex}.topbar-user{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.main-content{padding:var(--space-6);background:var(--color-bg-base);flex:1;overflow-y:auto}.sci-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-5);transition:box-shadow var(--transition-fast), border-color var(--transition-fast);box-shadow:var(--shadow-card);background:#fff}.sci-card:hover{box-shadow:var(--shadow-card-hover);border-color:var(--color-border-hover)}.sci-card-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:nowrap;display:flex}.sci-card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);align-items:center;gap:var(--space-2);white-space:nowrap;display:flex}.sci-card-actions{gap:var(--space-2);align-items:center;display:flex}.sci-btn{justify-content:center;align-items:center;gap:var(--space-1);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-family);white-space:nowrap;border:none;padding:8px 18px;line-height:1.4;display:inline-flex}.sci-btn-primary{background:var(--color-primary);color:#fff;box-shadow:0 1px 2px rgba(59,130,246,.3)}.sci-btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 2px 8px rgba(59,130,246,.4)}.sci-btn-accent{background:var(--color-primary-light);color:var(--color-primary);border:1px solid #dbeafe}.sci-btn-accent:hover{background:#dbeafe;border-color:#bfdbfe}.sci-btn-success{background:var(--color-success);color:#fff}.sci-btn-success:hover{background:#059669}.sci-btn-ghost{color:var(--color-text-secondary);border:1px solid var(--color-border);background:#fff}.sci-btn-ghost:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.sci-btn-danger{background:var(--color-danger);color:#fff}.sci-btn-danger:hover{background:#dc2626}.sci-btn-sm{font-size:var(--font-size-xs);padding:5px 12px}.sci-btn-icon{padding:6px 10px;font-size:13px}.sci-table{border-collapse:separate;border-spacing:0;width:100%}.sci-table th{background:var(--color-bg-surface);color:var(--color-text-secondary);text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-bottom:2px solid var(--color-border);white-space:nowrap;padding:10px 12px}.sci-table th:first-child{border-radius:var(--radius-sm) 0 0 0}.sci-table th:last-child{border-radius:0 var(--radius-sm) 0 0}.sci-table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;transition:color var(--transition-fast)}.sci-table th.sortable:hover{color:var(--color-primary)}.sci-table td{border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);text-align:center;color:var(--color-text-primary);background:#fff;padding:10px 12px}.sci-table tr:hover td{background:var(--color-bg-hover)}.sci-form-group{margin-bottom:var(--space-5)}.sci-form-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2);font-weight:var(--font-weight-medium);display:block}.sci-form-input{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;font-size:var(--font-size-sm);color:var(--color-text-primary);transition:all var(--transition-fast);font-family:var(--font-family);background:#fff;outline:none;padding:9px 14px}.sci-form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(59,130,246,.1)}.sci-form-input::-webkit-input-placeholder{color:var(--color-text-muted)}.sci-form-input::-moz-placeholder{color:var(--color-text-muted)}.sci-form-input::-ms-input-placeholder{color:var(--color-text-muted)}.sci-form-input::placeholder{color:var(--color-text-muted)}.el-input.sci-form-input{border:none;padding:0;transition:none}.sci-form-select{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 10.5l-4-4h8z'/%3E%3C/svg%3E") right 12px center no-repeat;outline:none;padding:9px 32px 9px 14px}.sci-form-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(59,130,246,.1)}.sci-form-select option{color:var(--color-text-primary);background:#fff}.sci-tabs{margin-bottom:var(--space-5);border-bottom:2px solid var(--color-border);gap:2px;padding-bottom:0;display:flex;overflow-x:auto}.sci-tab{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;color:var(--color-text-muted);white-space:nowrap;transition:color var(--transition-fast);font-family:var(--font-family);background:0 0;border:none;border-bottom:2px solid transparent;flex-shrink:0;margin-bottom:-2px;padding:10px 24px;position:relative}.sci-tab:hover{color:var(--color-text-secondary)}.sci-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.sci-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);align-items:center;padding:2px 10px;display:inline-flex}.sci-badge-success{background:var(--color-success-light);color:var(--color-success)}.sci-badge-danger{background:var(--color-danger-light);color:var(--color-danger)}.sci-badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.sci-badge-info,.sci-badge-accent{background:var(--color-primary-light);color:var(--color-primary)}.sci-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:rgba(15,23,42,.4);justify-content:center;align-items:center;animation:.2s overlayFadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.sci-modal{border:1px solid var(--color-border);border-radius:var(--radius-xl);width:580px;max-height:85vh;box-shadow:var(--shadow-lg);background:#fff;animation:.25s modalSlideIn;overflow-y:auto}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.sci-modal-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.sci-modal-header h3{font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin:0}.sci-modal-close{cursor:pointer;border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-muted);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:18px;display:flex}.sci-modal-close:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.sci-modal-body{padding:var(--space-6)}.sci-modal-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);justify-content:flex-end;gap:var(--space-2);display:flex}.sci-empty{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-text-muted);font-size:var(--font-size-sm)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
