.teacher-monthly-page[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%;padding:16px 20px;-webkit-box-sizing:border-box;box-sizing:border-box;background:#f8fafc;overflow:hidden}.page-toolbar[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:16px;padding:14px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;-webkit-box-shadow:0 1px 3px rgba(15,23,42,.04);box-shadow:0 1px 3px rgba(15,23,42,.04)}.page-title-box[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:4px}.page-title[data-v-9870d810]{font-size:16px;font-weight:700;color:#0f172a;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;white-space:nowrap}.page-title i[data-v-9870d810]{color:#6366f1}.page-subtitle[data-v-9870d810]{font-size:12px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolbar-actions[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:8px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-negative:0;flex-shrink:0}.kpi-card-row[data-v-9870d810]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:14px}.kpi-card[data-v-9870d810]{gap:14px;padding:16px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;-webkit-box-shadow:0 1px 3px rgba(15,23,42,.04);box-shadow:0 1px 3px rgba(15,23,42,.04)}.kpi-card[data-v-9870d810],.kpi-icon[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.kpi-icon[data-v-9870d810]{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:44px;height:44px;border-radius:8px;font-size:20px}.kpi-icon.blue[data-v-9870d810]{background:#eff6ff;color:#2563eb}.kpi-icon.green[data-v-9870d810]{background:#f0fdf4;color:#16a34a}.kpi-icon.purple[data-v-9870d810]{background:#faf5ff;color:#9333ea}.kpi-icon.orange[data-v-9870d810]{background:#fff7ed;color:#ea580c}.kpi-info[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:4px}.kpi-label[data-v-9870d810]{font-size:12px;color:#64748b}.kpi-value[data-v-9870d810]{font-size:20px;font-weight:700;color:#0f172a;font-variant-numeric:tabular-nums}.kpi-value small[data-v-9870d810]{font-size:12px;font-weight:400;color:#64748b}.filter-card[data-v-9870d810]{margin-top:14px;padding:14px 18px 2px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:6px}.filter-form[data-v-9870d810] .el-form-item{margin-bottom:12px;margin-right:18px}.table-container[data-v-9870d810]{margin-top:14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px;-webkit-box-flex:1;-ms-flex:1;flex:1;min-height:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.teacher-name-cell[data-v-9870d810]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:6px}.teacher-name-text[data-v-9870d810]{color:#0f172a;font-size:14px}.code-badge[data-v-9870d810]{font-family:monospace;font-weight:600;color:#475569}.days-tag[data-v-9870d810]{font-weight:600;padding:0 10px}.clock-count-link[data-v-9870d810]{font-weight:700;font-size:14px;color:#4f46e5!important;text-decoration:underline;cursor:pointer}.clock-count-link[data-v-9870d810]:hover{color:#4338ca!important}.btn-detail-sm[data-v-9870d810]{border-radius:6px;font-weight:600;border-color:#c7d2fe;color:#4f46e5;background:#eef2ff}.btn-detail-sm[data-v-9870d810]:hover{background:#6366f1;color:#fff;border-color:#6366f1}.dept-badge[data-v-9870d810]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:5px;padding:4px 10px;background-color:#f8fafc;color:#334155;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;font-weight:500}.dept-badge i[data-v-9870d810]{color:#64748b;font-size:13px}.required-days-badge[data-v-9870d810]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px;padding:3px 8px;background-color:#f1f5f9;color:#475569;border:1px solid #cbd5e1;border-radius:4px;font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}.required-days-badge i[data-v-9870d810]{color:#64748b}.text-slate[data-v-9870d810]{color:#475569}.pagination-bar[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-top:14px}.custom-btn-modern[data-v-9870d810]{border-radius:6px;font-weight:500}.btn-indigo[data-v-9870d810]{background:#6366f1;border-color:#6366f1;color:#fff}.btn-indigo[data-v-9870d810]:hover{background:#4f46e5;border-color:#4f46e5}.btn-default-modern[data-v-9870d810]{background:#fff;border:1px solid #cbd5e1;color:#334155}.btn-default-modern[data-v-9870d810]:hover{background:#f1f5f9}[data-v-9870d810] .modern-section-dialog{margin-top:3.5vh!important;margin-bottom:2vh!important;border-radius:14px;overflow:hidden;-webkit-box-shadow:0 25px 50px -12px rgba(15,23,42,.15),0 0 0 1px rgba(15,23,42,.05);box-shadow:0 25px 50px -12px rgba(15,23,42,.15),0 0 0 1px rgba(15,23,42,.05)}[data-v-9870d810] .modern-section-dialog .el-dialog__header{padding:14px 22px;background:#fff;border-bottom:1px solid #f1f5f9}[data-v-9870d810] .modern-section-dialog .el-dialog__body{padding:14px 22px 18px;max-height:82vh;overflow-y:auto;background:#f8fafc}[data-v-9870d810] .modern-section-dialog .el-dialog__footer{padding:10px 22px;background:#fff;border-top:1px solid #f1f5f9}.modern-dialog-header[data-v-9870d810]{gap:14px}.modern-dialog-header[data-v-9870d810],.teacher-avatar-pill[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.teacher-avatar-pill[data-v-9870d810]{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;font-size:20px;font-weight:700;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-shadow:0 4px 6px -1px rgba(79,70,229,.2);box-shadow:0 4px 6px -1px rgba(79,70,229,.2)}.teacher-header-meta[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:4px;text-align:left}.name-row[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px}.teacher-name[data-v-9870d810]{font-size:17px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.month-chip[data-v-9870d810]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:4px;padding:2px 8px;background:#eef2ff;color:#4f46e5;border-radius:6px;font-size:12px;font-weight:600}.month-chip[data-v-9870d810],.tags-row[data-v-9870d810]{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tags-row[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:8px}.info-pill[data-v-9870d810]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px;font-size:12px;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:4px}.stat-cards-grid[data-v-9870d810]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.metric-card[data-v-9870d810]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.03);box-shadow:0 1px 3px rgba(0,0,0,.03);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:4px;-webkit-transition:all .2s ease;transition:all .2s ease}.metric-card[data-v-9870d810]:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-box-shadow:0 4px 6px -1px rgba(0,0,0,.05);box-shadow:0 4px 6px -1px rgba(0,0,0,.05)}.metric-card-top[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.metric-title[data-v-9870d810]{font-size:12px;color:#64748b;font-weight:600}.card-icon[data-v-9870d810]{font-size:16px;opacity:.8}.metric-number[data-v-9870d810]{font-size:22px;font-weight:700;color:#0f172a;font-variant-numeric:tabular-nums;line-height:1.2}.metric-number small[data-v-9870d810]{font-size:12px;font-weight:500;color:#64748b;margin-left:2px}.metric-sub[data-v-9870d810]{font-size:11px;color:#94a3b8;margin-top:2px}.card-blue[data-v-9870d810]{border-top:3px solid #3b82f6}.card-blue .card-icon[data-v-9870d810]{color:#3b82f6}.card-indigo[data-v-9870d810]{border-top:3px solid #6366f1}.card-indigo .card-icon[data-v-9870d810]{color:#6366f1}.card-emerald[data-v-9870d810]{border-top:3px solid #10b981}.card-emerald .card-icon[data-v-9870d810]{color:#10b981}.card-amber[data-v-9870d810]{border-top:3px solid #f59e0b}.card-amber .card-icon[data-v-9870d810]{color:#f59e0b}.card-slate[data-v-9870d810]{border-top:3px solid #94a3b8}.card-slate .card-icon[data-v-9870d810]{color:#94a3b8}.rate-badge[data-v-9870d810]{display:inline-block;color:#4f46e5;font-weight:600}.text-amber-status[data-v-9870d810]{color:#d97706;font-weight:600}.text-muted-sub[data-v-9870d810]{color:#94a3b8}.section-block-wrapper[data-v-9870d810]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;margin-bottom:14px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.02);box-shadow:0 1px 2px rgba(0,0,0,.02)}.block-section-header[data-v-9870d810]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.block-section-header[data-v-9870d810],.header-left[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.header-left[data-v-9870d810]{gap:8px}.dot-indicator[data-v-9870d810]{width:6px;height:6px;border-radius:50%;background:#4f46e5}.dot-indicator.purple[data-v-9870d810]{background:#8b5cf6}.dialog-quick-filters[data-v-9870d810]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:3px;background:#f1f5f9;padding:2px 4px;border-radius:6px;margin-left:6px}.filter-pill[data-v-9870d810]{font-size:11px;padding:2px 8px;border-radius:4px;color:#64748b;cursor:pointer;-webkit-transition:all .15s ease;transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-weight:500}.filter-pill[data-v-9870d810]:hover{color:#4f46e5}.filter-pill.active[data-v-9870d810]{background:#fff;color:#4f46e5;font-weight:600;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.06);box-shadow:0 1px 2px rgba(0,0,0,.06)}.block-title[data-v-9870d810]{font-size:13px;font-weight:700;color:#1e293b}.count-tag[data-v-9870d810]{font-size:11px;padding:1px 6px;border-radius:4px;background:#eef2ff;color:#4f46e5;font-weight:600}.count-tag.purple[data-v-9870d810]{background:#f3e8ff;color:#7c3aed}.header-tip[data-v-9870d810]{font-size:11px;color:#94a3b8}.section-cards-grid[data-v-9870d810]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.section-stat-card[data-v-9870d810]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;-webkit-transition:all .2s ease;transition:all .2s ease}.section-stat-card[data-v-9870d810]:hover{border-color:#cbd5e1;background:#fff}.card-head[data-v-9870d810]{gap:8px;padding-bottom:6px;border-bottom:1px dashed #e2e8f0;margin-bottom:8px}.card-head[data-v-9870d810],.sec-badge[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.sec-badge[data-v-9870d810]{width:20px;height:20px;border-radius:6px;background:#4f46e5;color:#fff;font-size:11px;font-weight:700;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.sec-info[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:6px}.sec-name[data-v-9870d810]{font-size:13px;font-weight:700;color:#0f172a}.sec-time[data-v-9870d810]{font-size:11px;color:#64748b;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:2px}.card-metric-chips[data-v-9870d810]{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.chip-item[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:4px 2px;border-radius:6px}.chip-label[data-v-9870d810]{font-size:10px;opacity:.8;margin-bottom:1px}.chip-val[data-v-9870d810]{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.chip-normal[data-v-9870d810]{background:#ecfdf5;color:#059669}.chip-late[data-v-9870d810]{background:#fffbeb;color:#d97706}.chip-absent[data-v-9870d810]{background:#fef2f2;color:#dc2626}.empty-state-box[data-v-9870d810]{padding:24px;text-align:center;color:#94a3b8;font-size:12px;background:#f8fafc;border-radius:6px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:6px}.daily-table-container[data-v-9870d810]{border-radius:8px;overflow:hidden;border:1px solid #e2e8f0}.date-cell-box[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:6px}.date-text[data-v-9870d810]{font-weight:600;color:#1e293b;font-variant-numeric:tabular-nums}.week-pill[data-v-9870d810]{font-size:10px;padding:1px 4px;border-radius:4px}.week-pill.workday[data-v-9870d810]{background:#f1f5f9;color:#64748b}.week-pill.weekend[data-v-9870d810]{background:#fef3c7;color:#b45309;font-weight:600}.daily-status-tag[data-v-9870d810]{display:inline-block;padding:1px 8px;border-radius:4px;font-size:11px;font-weight:600}.tag-success[data-v-9870d810]{background:#dcfce7;color:#15803d}.tag-warning[data-v-9870d810]{background:#fef3c7;color:#b45309}.tag-danger[data-v-9870d810]{background:#fee2e2;color:#b91c1c}.tag-absent[data-v-9870d810]{background:#f1f5f9;color:#64748b}.tag-rest[data-v-9870d810]{background:#f8fafc;color:#94a3b8;border:1px solid #e2e8f0}.tag-default[data-v-9870d810]{background:#f1f5f9;color:#64748b}.table-slot-header[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1.2}.slot-header-name[data-v-9870d810]{font-size:12px;font-weight:700;color:#334155}.slot-header-time[data-v-9870d810]{font-size:10px;color:#64748b;font-weight:400}.slot-badge-container[data-v-9870d810]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:2px}.slot-clock-text[data-v-9870d810]{font-size:10px;color:#64748b;font-family:monospace}.bubble-normal[data-v-9870d810]{color:#15803d;background:#dcfce7}.bubble-late[data-v-9870d810],.bubble-normal[data-v-9870d810]{padding:1px 6px;border-radius:4px;font-size:11px;font-weight:600}.bubble-late[data-v-9870d810]{color:#b45309;background:#fef3c7}.bubble-absent[data-v-9870d810]{color:#dc2626;background:#fee2e2;padding:1px 6px;border-radius:4px;font-size:11px}.bubble-rest[data-v-9870d810]{color:#94a3b8;font-size:11px}.text-late-badge[data-v-9870d810]{color:#b45309;font-weight:700;background:#fef3c7;padding:1px 6px;border-radius:4px;font-size:11px}.text-slate-300[data-v-9870d810]{color:#cbd5e1}.text-indigo[data-v-9870d810]{color:#4f46e5}.text-success[data-v-9870d810]{color:#16a34a}.text-warning[data-v-9870d810]{color:#d97706}.text-danger[data-v-9870d810]{color:#ef4444}.text-gray[data-v-9870d810]{color:#94a3b8}.font-bold[data-v-9870d810]{font-weight:700}