.single-panel-page[data-v-5deb8cec]{padding:0;overflow:hidden}.single-panel-page[data-v-5deb8cec],.teacher-rule-page[data-v-5deb8cec]{width:100%;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.teacher-rule-page[data-v-5deb8cec]{padding:16px 20px;overflow-y:auto;background:#f8fafc}.page-toolbar[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #e2e8f0;background:#fff;padding:14px 18px;border-radius:10px;border:1px solid #e2e8f0}.page-title-box[data-v-5deb8cec]{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-5deb8cec]{font-size:18px;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}.page-title i[data-v-5deb8cec]{color:#6366f1}.page-subtitle[data-v-5deb8cec]{font-size:12px;color:#64748b}.toolbar-actions[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px}.toolbar-actions[data-v-5deb8cec] .el-button+.el-button{margin-left:0}.custom-btn-modern[data-v-5deb8cec]{border-radius:8px;font-weight:500;padding:9px 16px}.btn-default-modern[data-v-5deb8cec]{background:#fff;border:1px solid #cbd5e1;color:#334155}.btn-indigo[data-v-5deb8cec]{background:#6366f1;border-color:#6366f1;color:#fff}.btn-indigo[data-v-5deb8cec]:hover{background:#4f46e5;border-color:#4f46e5;color:#fff}.rules-grid[data-v-5deb8cec]{display:grid;grid-template-columns:repeat(auto-fill,minmax(480px,1fr));gap:16px}.rule-saas-card[data-v-5deb8cec]{background:#fff;border-radius:12px;border:1px solid #e2e8f0;-webkit-box-shadow:0 1px 3px rgba(15,23,42,.04);box-shadow:0 1px 3px rgba(15,23,42,.04);-webkit-transition:all .2s cubic-bezier(.4,0,.2,1);transition:all .2s cubic-bezier(.4,0,.2,1);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rule-saas-card[data-v-5deb8cec]:hover{border-color:#c7d2fe;-webkit-box-shadow:0 10px 25px -5px rgba(99,102,241,.08),0 8px 10px -6px rgba(15,23,42,.02);box-shadow:0 10px 25px -5px rgba(99,102,241,.08),0 8px 10px -6px rgba(15,23,42,.02)}.rule-saas-card.is-default-rule[data-v-5deb8cec]{border-color:#a7f3d0;background:linear-gradient(180deg,#f0fdf4,#fff 60px)}.card-header-bar[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;padding:16px 18px 12px 18px}.header-left[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px}.rule-icon-box[data-v-5deb8cec]{width:40px;height:40px;border-radius:10px;background:#eef2ff;color:#6366f1;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;font-size:20px;-ms-flex-negative:0;flex-shrink:0}.is-default-rule .rule-icon-box[data-v-5deb8cec]{background:#d1fae5;color:#059669}.rule-title-group[data-v-5deb8cec]{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}.title-with-tags[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px}.rule-main-title[data-v-5deb8cec]{font-size:16px;font-weight:700;color:#0f172a}.badge-tag[data-v-5deb8cec]{font-size:11px;padding:2px 8px;border-radius:9999px;font-weight:600}.badge-default[data-v-5deb8cec]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.badge-enabled[data-v-5deb8cec]{background:#eef2ff;color:#4f46e5;border:1px solid #c7d2fe}.badge-disabled[data-v-5deb8cec]{background:#f1f5f9;color:#94a3b8;border:1px solid #e2e8f0}.rule-sub-info[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:14px;font-size:12px;color:#64748b}.info-item[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px}.card-desc-box[data-v-5deb8cec]{margin:0 18px 12px 18px;padding:6px 10px;background:#f8fafc;border-radius:6px;font-size:12px;color:#64748b;border:1px dashed #e2e8f0}.slots-container-modern[data-v-5deb8cec]{margin:0 18px 14px 18px;background:#fafbff;border-radius:10px;border:1px solid #eef2ff;padding:12px 14px}.slots-meta-head[data-v-5deb8cec]{font-size:12px;font-weight:600;color:#475569;margin-bottom:8px}.slots-cards-list[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:8px}.slot-row-card[data-v-5deb8cec]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px}.slot-idx-col[data-v-5deb8cec]{-ms-flex-negative:0;flex-shrink:0}.idx-badge[data-v-5deb8cec]{width:22px;height:22px;background:#e0e7ff;color:#4338ca;font-weight:700;border-radius:50%;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;font-size:11px}.slot-content-col[data-v-5deb8cec]{-webkit-box-flex:1;-ms-flex:1;flex:1;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}.slot-top-row[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.slot-name-txt[data-v-5deb8cec]{font-size:13px;font-weight:600;color:#1e293b}.slot-type-pill[data-v-5deb8cec]{font-size:10px;padding:1px 6px;border-radius:4px}.pill-late[data-v-5deb8cec]{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.pill-pure[data-v-5deb8cec]{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.slot-timeline-bar[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;font-size:11px}.time-node[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:4px;color:#64748b}.node-time[data-v-5deb8cec]{font-family:JetBrains Mono,monospace;font-weight:600;color:#334155}.node-standard .node-time[data-v-5deb8cec]{color:#6366f1;font-weight:700}.time-arrow[data-v-5deb8cec]{color:#cbd5e1;font-size:10px}.card-footer-ops[data-v-5deb8cec]{margin-top:auto;border-top:1px solid #f1f5f9;padding:10px 18px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.bound-text[data-v-5deb8cec]{font-size:12px;color:#64748b}.footer-right-buttons[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px}.footer-right-buttons[data-v-5deb8cec] .el-button{padding:0;font-size:12px;font-weight:500}.btn-danger-text[data-v-5deb8cec]{color:#ef4444!important}.empty-state-wrap[data-v-5deb8cec]{margin-top:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.empty-box[data-v-5deb8cec]{background:#fff;border-radius:16px;border:1px solid #e2e8f0;padding:40px 60px;text-align:center;max-width:480px}.empty-icon[data-v-5deb8cec]{font-size:48px;color:#a5b4fc;margin-bottom:12px}.empty-box h3[data-v-5deb8cec]{font-size:18px;color:#0f172a;margin:0 0 8px 0}.empty-box p[data-v-5deb8cec]{font-size:13px;color:#64748b;margin:0 0 20px 0}[data-v-5deb8cec] .el-dialog.pro-max-dialog{margin-top:20px!important;border-radius:12px}[data-v-5deb8cec] .el-dialog.pro-max-dialog .el-dialog__header{padding:14px 20px 10px 20px}[data-v-5deb8cec] .el-dialog.pro-max-dialog .el-dialog__body{padding:12px 20px}.pro-form[data-v-5deb8cec]{padding:2px 0}.rule-dialog-two-col[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:16px;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.left-col-card[data-v-5deb8cec]{width:360px;-ms-flex-negative:0;flex-shrink:0;-ms-flex-direction:column;flex-direction:column}.left-col-card[data-v-5deb8cec],.right-col-card[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal}.right-col-card[data-v-5deb8cec]{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0;-ms-flex-direction:column;flex-direction:column}.right-card-scrollable[data-v-5deb8cec]{max-height:520px;overflow-y:auto;padding-right:4px}.form-section-card[data-v-5deb8cec]{background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0;padding:16px 18px}.section-card-header[data-v-5deb8cec]{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #edf2f7}.flex-between[data-v-5deb8cec]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.flex-between[data-v-5deb8cec],.sec-title[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.sec-title[data-v-5deb8cec]{font-size:14px;font-weight:700;color:#1e293b;gap:6px}.sec-title i[data-v-5deb8cec]{color:#6366f1}.btn-sec-add[data-v-5deb8cec]{background:#eef2ff;border-color:#c7d2fe;color:#4f46e5;border-radius:6px;font-weight:600}.btn-sec-add[data-v-5deb8cec]:hover{background:#6366f1;border-color:#6366f1;color:#fff}.switch-field-box[data-v-5deb8cec]{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;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:6px 12px;height:32px}.switch-tip[data-v-5deb8cec]{font-size:12px;color:#64748b}.weekday-selector[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:8px;-ms-flex-wrap:wrap;flex-wrap:wrap}.weekday-chip[data-v-5deb8cec]{width:68px;height:32px;border-radius:6px;background:#fff;border:1px solid #cbd5e1;color:#334155;font-size:13px;font-weight:500;cursor:pointer;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;-webkit-transition:all .15s ease;transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-sizing:border-box;box-sizing:border-box}.weekday-chip[data-v-5deb8cec]:hover{border-color:#6366f1;color:#6366f1}.weekday-chip.is-selected[data-v-5deb8cec]{background:#eef2ff;border-color:#6366f1;color:#4f46e5;font-weight:600;-webkit-box-shadow:0 1px 2px rgba(99,102,241,.12);box-shadow:0 1px 2px rgba(99,102,241,.12)}.rule-algo-tips-banner[data-v-5deb8cec]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:10px 12px;display:-webkit-box;display:-ms-flexbox;display:flex;gap:10px;margin-bottom:14px}.tip-icon[data-v-5deb8cec]{color:#10b981;font-size:18px;-ms-flex-negative:0;flex-shrink:0;margin-top:1px}.tip-content[data-v-5deb8cec]{font-size:12px;color:#166534;line-height:1.5}.slot-edit-list[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:12px;margin-bottom:12px}.slot-edit-item[data-v-5deb8cec]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.02);box-shadow:0 1px 2px rgba(0,0,0,.02)}.slot-edit-head[data-v-5deb8cec]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;border-bottom:1px dashed #f1f5f9}.head-left[data-v-5deb8cec],.slot-edit-head[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.head-left[data-v-5deb8cec]{gap:8px}.slot-edit-number[data-v-5deb8cec]{font-size:13px;font-weight:700;color:#6366f1;background:#eef2ff;padding:2px 8px;border-radius:4px}.slot-name-input[data-v-5deb8cec]{width:160px}.calc-status-tag[data-v-5deb8cec]{font-size:11px;padding:2px 8px;border-radius:4px;font-weight:500}.is-late-mode[data-v-5deb8cec]{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.is-pure-mode[data-v-5deb8cec]{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.is-error-mode[data-v-5deb8cec]{background:#fef2f2;color:#dc2626;border:1px solid #fecaca;font-weight:600}.is-info-mode[data-v-5deb8cec]{background:#f8fafc;color:#94a3b8;border:1px solid #e2e8f0}.btn-delete-slot[data-v-5deb8cec]{color:#ef4444!important;font-size:12px;padding:0}.slot-edit-times-grid[data-v-5deb8cec]{display:grid;grid-template-columns:1fr auto 1.15fr auto 1fr;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px}.time-pick-box[data-v-5deb8cec]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 10px;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}.time-pick-box.highlight-standard[data-v-5deb8cec]{background:#faf5ff;border-color:#d8b4fe}.time-box-label[data-v-5deb8cec]{font-size:11px;font-weight:600;color:#475569;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px}.standard-color[data-v-5deb8cec]{color:#7c3aed!important}.time-subtip[data-v-5deb8cec]{font-size:10px;color:#94a3b8}.time-separator[data-v-5deb8cec]{color:#94a3b8;font-weight:700}.add-slot-dashed-btn[data-v-5deb8cec]{border:2px dashed #cbd5e1;background:#fff;border-radius:10px;padding:12px;text-align:center;cursor:pointer;color:#6366f1;font-size:13px;font-weight:600;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;-webkit-transition:all .2s ease;transition:all .2s ease}.add-slot-dashed-btn[data-v-5deb8cec]:hover{border-color:#6366f1;background:#eef2ff}.dialog-footer-modern[data-v-5deb8cec]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;gap:10px;padding-top:10px;border-top:1px solid #f1f5f9}.binding-wrap[data-v-5deb8cec]{padding:4px 0}.binding-tip-box[data-v-5deb8cec]{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:10px 12px;font-size:12px;color:#1e40af;display:-webkit-box;display:-ms-flexbox;display:flex;gap:8px;margin-bottom:14px}.tree-box-card[data-v-5deb8cec]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;height:280px;min-height:280px;max-height:380px;overflow-y:auto;-webkit-box-sizing:border-box;box-sizing:border-box}.binding-dept-tree[data-v-5deb8cec]{background:transparent}.binding-dept-tree[data-v-5deb8cec] .el-tree-node__content{height:32px;border-radius:6px;margin-bottom:2px}.binding-dept-tree[data-v-5deb8cec] .el-tree-node__content:hover{background-color:#f1f5f9}