.classroom-theme{--classroom-primary:#4a90e2;--classroom-primary-light:#5ba3f5;--classroom-primary-lighter:#e3f2fd;--classroom-secondary:#64b5f6;--classroom-accent:#2196f3;--classroom-bg:#f5f9fc;--classroom-card-bg:#fff;--classroom-text:#2c3e50;--classroom-text-secondary:#546e7a;--classroom-border:#e1e8ed;--classroom-hover:#e3f2fd;--classroom-success:#66bb6a;--classroom-warning:#ffa726;--classroom-danger:#ef5350}.classroom-card{background:var(--classroom-card-bg);border:1px solid var(--classroom-border);border-radius:12px;box-shadow:0 2px 8px rgba(74,144,226,.08);transition:all .3s ease}.classroom-card:hover{box-shadow:0 4px 16px rgba(74,144,226,.12);transform:translateY(-2px)}.classroom-btn{border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .3s ease;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.classroom-btn-primary{background:#4a90e2;color:#fff;box-shadow:0 2px 8px rgba(74,144,226,.3)}.classroom-btn-primary:hover{background:#3a7bc8;box-shadow:0 4px 12px rgba(74,144,226,.4);transform:translateY(-1px)}.classroom-btn-secondary{background:var(--classroom-primary-lighter);color:var(--classroom-primary);border:1px solid var(--classroom-primary)}.classroom-btn-secondary:hover{background:var(--classroom-primary);color:#fff}.classroom-btn-success{background:#66bb6a;color:#fff;box-shadow:0 2px 8px rgba(102,187,106,.3)}.classroom-btn-success:hover{box-shadow:0 4px 12px rgba(102,187,106,.4);transform:translateY(-1px)}.classroom-btn-warning{background:#ffa726;color:#fff;box-shadow:0 2px 8px rgba(255,167,38,.3)}.classroom-btn-warning:hover{box-shadow:0 4px 12px rgba(255,167,38,.4);transform:translateY(-1px)}.classroom-btn-info{background:#42a5f5;color:#fff;box-shadow:0 2px 8px rgba(66,165,245,.3)}.classroom-btn-info:hover{box-shadow:0 4px 12px rgba(66,165,245,.4);transform:translateY(-1px)}.classroom-btn-danger{background:#ef5350;color:#fff;box-shadow:0 2px 8px rgba(239,83,80,.3)}.classroom-btn-danger:hover{box-shadow:0 4px 12px rgba(239,83,80,.4);transform:translateY(-1px)}.classroom-tag{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:500;gap:4px}.classroom-tag-primary{background:var(--classroom-primary-lighter);color:var(--classroom-primary);border:1px solid rgba(74,144,226,.2)}.classroom-tag-success{background:#e8f5e9;color:#66bb6a;border:1px solid rgba(102,187,106,.2)}.classroom-tag-warning{background:#fff3e0;color:#ffa726;border:1px solid rgba(255,167,38,.2)}.classroom-tag-info{background:#e3f2fd;color:#2196f3;border:1px solid rgba(33,150,243,.2)}.classroom-input{border:1px solid var(--classroom-border);border-radius:8px;padding:10px 14px;font-size:14px;transition:all .3s ease;background:#fff}.classroom-input:focus{border-color:var(--classroom-primary);box-shadow:0 0 0 3px rgba(74,144,226,.1);outline:none}.classroom-table .el-table__header{background:var(--classroom-primary-lighter)}.classroom-table .el-table__header th{background:#e3f2fd;color:var(--classroom-text);font-weight:600;border-bottom:2px solid var(--classroom-primary)}.classroom-table .el-table__body tr:hover{background:var(--classroom-hover)}.classroom-table .el-table__body td{border-bottom:1px solid var(--classroom-border)}.classroom-tabs .el-tabs__item{color:var(--classroom-text-secondary);font-size:15px;padding:0 24px}.classroom-tabs .el-tabs__item:hover{color:var(--classroom-primary)}.classroom-tabs .el-tabs__item.is-active{color:var(--classroom-primary);font-weight:600}.classroom-tabs .el-tabs__active-bar{background:var(--classroom-primary);height:3px;border-radius:2px}.classroom-card-header{background:#e3f2fd;border-bottom:2px solid var(--classroom-primary);padding:16px 20px;border-radius:12px 12px 0 0}.classroom-card-title{font-size:18px;font-weight:600;color:var(--classroom-text);margin:0}.classroom-stat-card{background:#fff;border:1px solid var(--classroom-border);border-radius:12px;padding:20px;text-align:center;transition:all .3s ease}.classroom-stat-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px rgba(74,144,226,.15)}.classroom-stat-value{font-size:32px;font-weight:700;color:var(--classroom-primary);margin-bottom:8px}.classroom-stat-label{font-size:14px;color:var(--classroom-text-secondary);font-weight:500}.classroom-progress .el-progress-bar__outer{background:var(--classroom-primary-lighter);border-radius:10px;height:8px}.classroom-progress .el-progress-bar__inner{background:#4a90e2;border-radius:10px}.classroom-divider{height:1px;background:var(--classroom-border);margin:20px 0}.classroom-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;background:var(--classroom-danger);color:#fff;border-radius:12px;font-size:12px;font-weight:600}.classroom-avatar-group{display:flex;align-items:center}.classroom-avatar-group .el-avatar{border:2px solid #fff;margin-left:-8px}.classroom-avatar-group .el-avatar:first-child{margin-left:0}.classroom-empty{text-align:center;padding:60px 20px;color:var(--classroom-text-secondary)}.classroom-empty-icon{font-size:64px;color:var(--classroom-primary-lighter);margin-bottom:20px}.classroom-empty-text{font-size:16px;margin-bottom:8px}.classroom-empty-hint{font-size:14px;color:#909399}.classroom-loading{display:flex;align-items:center;justify-content:center;padding:40px}.classroom-loading .el-loading-spinner{color:var(--classroom-primary)}@media (max-width:768px){.classroom-btn{padding:8px 16px;font-size:13px}.classroom-card{border-radius:8px}.classroom-stat-value{font-size:24px}}@keyframes classroom-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.classroom-fade-in{animation:classroom-fade-in .3s ease}.classroom-toolbar{display:flex;align-items:center;gap:12px;padding:16px;background:var(--classroom-bg);border-radius:8px;margin-bottom:20px;flex-wrap:wrap}.classroom-toolbar-item{flex:1;min-width:200px}.classroom-action-group{display:flex;gap:8px;flex-wrap:wrap}.classroom-action-group .classroom-btn{margin:0}.classroom-status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.classroom-status-online{background:var(--classroom-success);box-shadow:0 0 0 2px rgba(102,187,106,.2)}.classroom-status-offline{background:#bdbdbd}.classroom-timeline .el-timeline-item__timestamp{color:var(--classroom-text-secondary);font-size:13px}.classroom-timeline .el-timeline-item__tail{border-left:2px solid var(--classroom-primary-lighter)}.classroom-timeline .el-timeline-item__node{background:var(--classroom-primary);border:2px solid #fff}.qrcode-container[data-v-531c5f9e]{padding:20px 0}.qrcode-wrapper[data-v-531c5f9e]{display:flex;justify-content:center;margin-bottom:20px}.qrcode-box[data-v-531c5f9e]{padding:15px;background:#fff;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.1);transition:all .3s ease}.qrcode-box.expired[data-v-531c5f9e]{opacity:.5;filter:grayscale(100%)}.qrcode-image[data-v-531c5f9e]{display:block;width:280px;height:280px}.qrcode-placeholder[data-v-531c5f9e]{display:flex;flex-direction:column;align-items:center;justify-content:center;width:280px;height:280px;color:#909399}.qrcode-placeholder i[data-v-531c5f9e]{font-size:48px;margin-bottom:10px;animation:rotate-531c5f9e 1s linear infinite}@keyframes rotate-531c5f9e{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.countdown-wrapper[data-v-531c5f9e]{margin-bottom:20px}.countdown-content[data-v-531c5f9e]{display:flex;align-items:center;gap:8px;font-size:16px}.checkin-info[data-v-531c5f9e]{padding:15px;background:#f5f7fa;border-radius:8px;margin-bottom:15px}.checkin-info p[data-v-531c5f9e]{margin:8px 0;font-size:14px;color:#606266}.checkin-info strong[data-v-531c5f9e]{color:#303133;margin-right:8px}.stats[data-v-531c5f9e]{text-align:center;padding:10px}.dialog-footer[data-v-531c5f9e]{display:flex;justify-content:flex-end;gap:10px}.checkin-panel[data-v-02dc6dc2]{padding:24px;background:var(--classroom-bg);min-height:100vh;max-width:1400px;margin:0 auto}.header[data-v-02dc6dc2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px 24px;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(74,144,226,.08)}.header h3[data-v-02dc6dc2]{font-size:22px;color:var(--classroom-text);margin:0;font-weight:700}.checkin-timeline[data-v-02dc6dc2]{position:relative}.timeline-item[data-v-02dc6dc2]{display:flex;gap:20px;margin-bottom:24px;position:relative}.timeline-item[data-v-02dc6dc2]:before{content:"";position:absolute;left:89px;top:40px;bottom:-40px;width:2px;background:var(--classroom-primary-lighter)}.timeline-item[data-v-02dc6dc2]:last-child:before{display:none}.timeline-time[data-v-02dc6dc2]{min-width:80px;text-align:right;padding-top:16px;color:var(--classroom-text-secondary);font-size:13px;font-weight:500}.timeline-content[data-v-02dc6dc2]{flex:1}.checkin-card-single-row[data-v-02dc6dc2]{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#fff;border:1px solid var(--classroom-border);border-radius:12px;gap:20px}.checkin-left[data-v-02dc6dc2]{flex:1;min-width:0;display:flex;align-items:center;gap:16px}.checkin-title[data-v-02dc6dc2]{margin:0;font-size:16px;font-weight:600;color:var(--classroom-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkin-tags[data-v-02dc6dc2]{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.checkin-right[data-v-02dc6dc2]{display:flex;gap:8px;flex-shrink:0}.classroom-tag-secondary[data-v-02dc6dc2]{background:#e0e0e0;color:#757575;border:1px solid #bdbdbd}.records-header[data-v-02dc6dc2]{margin-bottom:16px;display:flex;justify-content:flex-end}.classroom-dialog .el-dialog__header[data-v-02dc6dc2]{background:#e3f2fd;border-bottom:2px solid var(--classroom-primary)}.classroom-dialog .el-dialog__title[data-v-02dc6dc2]{color:var(--classroom-text);font-weight:600}@media (max-width:768px){.timeline-item[data-v-02dc6dc2]{flex-direction:column;gap:12px}.timeline-item[data-v-02dc6dc2]:before{display:none}.timeline-time[data-v-02dc6dc2]{text-align:left;padding-top:0}.checkin-card-single-row[data-v-02dc6dc2]{flex-direction:column;align-items:stretch;gap:16px}.checkin-left[data-v-02dc6dc2]{flex-direction:column;align-items:flex-start;gap:12px}.checkin-title[data-v-02dc6dc2]{white-space:normal}.checkin-right[data-v-02dc6dc2]{flex-wrap:wrap;justify-content:flex-start}.checkin-right .classroom-btn[data-v-02dc6dc2]{flex:1;min-width:120px}}