.name-mode-options[data-v-088c9bf1]{display:flex;flex-direction:column;gap:8px}.name-mode-option[data-v-088c9bf1]{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1.5px solid var(--border-color, #e2e8f0);border-radius:8px;cursor:pointer;transition:border-color .15s}.name-mode-option.selected[data-v-088c9bf1]{border-color:var(--color-primary, #3b82f6);background:var(--color-primary-light, #eff6ff)}.name-mode-option input[type=radio][data-v-088c9bf1]{margin-top:3px;flex-shrink:0}.name-mode-option div[data-v-088c9bf1]{display:flex;flex-direction:column;gap:2px}.name-mode-option strong[data-v-088c9bf1]{font-size:.9rem}.name-mode-option span[data-v-088c9bf1]{font-size:.8rem;color:var(--text-muted, #64748b)}.desc[data-v-d7f31bbb]{font-size:.85em;opacity:.7;margin-bottom:1.2rem}fieldset[data-v-d7f31bbb]{border:1px solid var(--border, #e5e7eb);border-radius:6px;padding:.75rem 1rem}legend[data-v-d7f31bbb]{font-weight:600;font-size:.9em;padding:0 .4rem}.hint[data-v-d7f31bbb]{font-size:.8em;opacity:.55;margin:0 0 .5rem;line-height:1.4}.row[data-v-d7f31bbb],.rule-row[data-v-d7f31bbb]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.rule-row input[type=checkbox][data-v-d7f31bbb]{flex-shrink:0;margin-top:3px}.row em[data-v-d7f31bbb]{font-style:normal;opacity:.55;font-size:.8em}.mt-1[data-v-d7f31bbb]{margin-top:7px}.mt-2[data-v-d7f31bbb]{margin-top:12px}.mb-3[data-v-d7f31bbb]{margin-bottom:1rem}.flex[data-v-d7f31bbb]{display:flex}.gap-2[data-v-d7f31bbb]{gap:.5rem}.slider-group[data-v-d7f31bbb]{display:flex;align-items:center;gap:4px;flex-shrink:0}.slider-group input[type=range][data-v-d7f31bbb]{width:90px}.slider-group input[type=number][data-v-d7f31bbb]{width:52px;text-align:right}.chk-label[data-v-d7f31bbb]{display:flex;align-items:center;gap:.5rem;cursor:pointer}.plain-num[data-v-d7f31bbb]{width:70px}.alert-info[data-v-d7f31bbb]{background:#eff6ff;color:#1d4ed8;border:1px solid #93c5fd;border-radius:6px;padding:.6rem .9rem}.edit-error[data-v-fc3d9dc6]{background:#fff1f2;border:1px solid #fca5a5;border-radius:6px;color:#9f1239;font-size:.875rem;padding:.5rem .75rem;margin-bottom:.75rem}.bulk-bar[data-v-fc3d9dc6]{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;margin-bottom:.75rem;font-size:.875rem;font-weight:500;color:#1e40af}.row-selected td[data-v-fc3d9dc6]{background:#eff6ff!important}.guests-cell[data-v-fc3d9dc6]{min-width:200px;vertical-align:top;padding-top:6px}.guest-row[data-v-fc3d9dc6]{display:flex;align-items:center;gap:.4rem;margin-bottom:3px}.guest-name[data-v-fc3d9dc6]{font-size:.8rem;white-space:nowrap}.guest-status-select[data-v-fc3d9dc6]{font-size:.75rem;padding:1px 4px;border-radius:4px;border:1px solid #d1d5db;cursor:pointer}.guest-status-ungeprüft[data-v-fc3d9dc6]{background:#f3f4f6;color:#374151}.guest-status-genehmigt[data-v-fc3d9dc6]{background:#dcfce7;color:#15803d;border-color:#86efac}.guest-status-optional[data-v-fc3d9dc6]{background:#fef9c3;color:#854d0e;border-color:#fde047}.guest-status-nicht-genehmigt[data-v-fc3d9dc6]{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.page-wrap[data-v-9d48f5c1]{padding:1.5rem 2rem;max-width:1300px;margin:0 auto}.page-title[data-v-9d48f5c1]{font-size:1.3rem;font-weight:700;margin-bottom:1rem;color:#1e293b}.create-guest-card[data-v-9d48f5c1]{border:1px solid #e5e7eb;border-radius:8px;background:#f8fafc;padding:.85rem;margin-bottom:.9rem}.create-guest-title[data-v-9d48f5c1]{font-size:.92rem;font-weight:700;color:#334155;margin:0 0 .55rem}.create-guest-grid[data-v-9d48f5c1]{display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(140px,1fr)) auto;gap:.5rem;align-items:center}.create-select[data-v-9d48f5c1]{min-width:260px}.create-status-select[data-v-9d48f5c1]{min-width:140px}.btn-create[data-v-9d48f5c1]:disabled{opacity:.6;cursor:not-allowed}.create-msg[data-v-9d48f5c1]{margin:.55rem 0 0;font-size:.8rem}.create-msg-error[data-v-9d48f5c1]{color:#b91c1c}.create-msg-success[data-v-9d48f5c1]{color:#15803d}.filter-bar[data-v-9d48f5c1]{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.filter-input[data-v-9d48f5c1]{padding:.3rem .6rem;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;min-width:120px}.row-count[data-v-9d48f5c1]{margin-left:auto;font-size:.82rem;color:#6b7280}.table-wrap[data-v-9d48f5c1]{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb}.guests-table[data-v-9d48f5c1]{width:100%;border-collapse:collapse;font-size:.85rem}.guests-table thead th[data-v-9d48f5c1]{background:#f8fafc;padding:.5rem .75rem;text-align:left;font-weight:600;font-size:.8rem;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.guests-table tbody td[data-v-9d48f5c1]{padding:.4rem .75rem;border-bottom:1px solid #f3f4f6;vertical-align:middle}.guests-table tbody tr:last-child td[data-v-9d48f5c1]{border-bottom:none}.guests-table tbody tr[data-v-9d48f5c1]:hover{background:#f8fafc}.sortable[data-v-9d48f5c1]{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable[data-v-9d48f5c1]:hover{background:#f1f5f9}.row-status-genehmigt td[data-v-9d48f5c1]:first-child{border-left:3px solid #22c55e}.row-status-optional td[data-v-9d48f5c1]:first-child{border-left:3px solid #eab308}.row-status-nicht-genehmigt td[data-v-9d48f5c1]:first-child{border-left:3px solid #ef4444}.row-status-ungeprüft td[data-v-9d48f5c1]:first-child{border-left:3px solid #d1d5db}.status-select[data-v-9d48f5c1]{padding:.15rem .35rem;border-radius:5px;border:1px solid #d1d5db;font-size:.8rem;cursor:pointer}.status-ungeprüft[data-v-9d48f5c1]{background:#f3f4f6;color:#374151}.status-genehmigt[data-v-9d48f5c1]{background:#dcfce7;color:#15803d}.status-optional[data-v-9d48f5c1]{background:#fef9c3;color:#854d0e}.status-nicht-genehmigt[data-v-9d48f5c1]{background:#fee2e2;color:#991b1b}.center-cell[data-v-9d48f5c1]{text-align:center;padding:1rem;color:#6b7280}.center-num[data-v-9d48f5c1]{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.muted[data-v-9d48f5c1]{font-style:italic}.btn-export[data-v-9d48f5c1]{background:#1e40af;color:#fff;border-color:#1e40af}.interessierte-total[data-v-9d48f5c1]{font-weight:600;margin-right:.2rem}.interessierte-detail[data-v-9d48f5c1]{font-size:.78rem}.interessierte-detail span[data-v-9d48f5c1]{padding:0 .05rem}.ist-ungeprueft[data-v-9d48f5c1]{color:#9ca3af}.ist-genehmigt[data-v-9d48f5c1]{color:#16a34a;font-weight:600}.ist-optional[data-v-9d48f5c1]{color:#d97706;font-weight:600}.ist-nicht-genehmigt[data-v-9d48f5c1]{color:#dc2626;font-weight:600}.approved-count[data-v-9d48f5c1]{color:#16a34a;font-weight:600}@media(max-width:1100px){.create-guest-grid[data-v-9d48f5c1]{grid-template-columns:1fr 1fr}}@media(max-width:680px){.page-wrap[data-v-9d48f5c1]{padding:1rem}.create-guest-grid[data-v-9d48f5c1]{grid-template-columns:1fr}.create-select[data-v-9d48f5c1],.create-status-select[data-v-9d48f5c1],.filter-input[data-v-9d48f5c1]{min-width:0;width:100%}}.export-modal-wide[data-v-41a272d4]{width:80vw;max-width:none;max-height:90vh;overflow:hidden;overflow-y:hidden;display:flex;flex-direction:column}.export-layout[data-v-41a272d4]{display:flex;gap:1rem;height:100%;min-height:0}.export-left[data-v-41a272d4]{width:340px;min-width:340px;flex-shrink:0;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;padding-right:.25rem}.export-fs[data-v-41a272d4]{border:1px solid #e5e7eb;border-radius:6px;padding:.5rem .6rem;margin:0}.export-fs legend[data-v-41a272d4]{font-size:.78rem;font-weight:600;color:#6b7280;padding:0 .25rem}.export-fs-sublabel[data-v-41a272d4]{font-size:.76rem;font-weight:600;color:#374151}.export-text-input[data-v-41a272d4]{width:100%;margin-top:.22rem;border:1px solid #d1d5db;border-radius:6px;padding:.32rem .45rem;font-size:.83rem;color:#1f2937;background:#fff;box-sizing:border-box;font-family:inherit}textarea.export-text-input[data-v-41a272d4]{resize:vertical;min-height:2.5rem}.export-text-input[data-v-41a272d4]:focus{outline:2px solid #bfdbfe;border-color:#60a5fa}.export-text-input[data-v-41a272d4]:disabled{background:#f3f4f6;color:#9ca3af}.export-radio[data-v-41a272d4],.export-check[data-v-41a272d4]{display:flex;align-items:center;gap:.35rem;font-size:.83rem;color:#374151;margin-top:.28rem;cursor:pointer}.slider-row[data-v-41a272d4]{display:flex;align-items:center;gap:.4rem;margin-top:.35rem}.slider-label[data-v-41a272d4]{font-size:.78rem;color:#6b7280;width:80px;flex-shrink:0}.ctrl-row[data-v-41a272d4]{display:flex;align-items:center;gap:.35rem;margin-top:.32rem}.ctrl-label[data-v-41a272d4]{font-size:.76rem;color:#6b7280;width:92px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-auto[data-v-41a272d4]{font-size:.72rem;font-weight:600;padding:1px 6px;border:1px solid #d1d5db;border-radius:4px;background:#f3f4f6;color:#6b7280;cursor:pointer;flex-shrink:0;line-height:1.6;white-space:nowrap}.btn-auto--on[data-v-41a272d4]{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}.ctrl-val[data-v-41a272d4]{font-size:.78rem;font-weight:600;color:#1d4ed8;width:38px;text-align:right;flex-shrink:0}.ctrl-auto-val[data-v-41a272d4]{font-size:.76rem;color:#9ca3af;font-style:italic}.slider[data-v-41a272d4]{flex:1;accent-color:#3b82f6;height:3px}.slider-val[data-v-41a272d4]{font-size:.78rem;font-weight:600;color:#1d4ed8;width:36px;text-align:right;flex-shrink:0}.export-preview-panel[data-v-41a272d4]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.export-preview-header[data-v-41a272d4]{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;font-weight:600;color:#6b7280}.preview-loading[data-v-41a272d4]{font-weight:400;font-style:italic;color:#9ca3af}.preview-format-tag[data-v-41a272d4]{font-size:.72rem;font-weight:600;padding:1px 8px;border-radius:10px;background:#dbeafe;color:#1d4ed8;border:1px solid #93c5fd}.export-preview-frame[data-v-41a272d4]{flex:1;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;background:#f1f5f9;aspect-ratio:210 / 297;max-height:calc(90vh - 80px)}.export-preview-frame.preview-landscape[data-v-41a272d4]{aspect-ratio:297 / 210}.preview-iframe[data-v-41a272d4]{width:100%;height:100%;border:none;display:block}.preview-placeholder[data-v-41a272d4]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.85rem}.modal-wide[data-v-95c6b2be]{max-width:700px;width:95vw}.cpsat-grid[data-v-95c6b2be]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem}.cpsat-fs[data-v-95c6b2be]{border:1px solid #e5e7eb;border-radius:6px;padding:.75rem}.cpsat-fs legend[data-v-95c6b2be]{font-size:.85rem;font-weight:600;color:#374151;padding:0 .4rem}.fr[data-v-95c6b2be]{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.85rem;gap:.5rem}.fr label[data-v-95c6b2be]{flex:1;color:#4b5563}.ni[data-v-95c6b2be]{width:60px;text-align:right;padding:.2rem .4rem;border:1px solid #d1d5db;border-radius:4px;font-size:.85rem}.cpsat-result[data-v-95c6b2be]{padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.cpsat-result.status-optimal[data-v-95c6b2be]{background:#f0fdf4;border:1px solid #22c55e;color:#15803d}.cpsat-result.status-feasible[data-v-95c6b2be]{background:#fefce8;border:1px solid #eab308;color:#854d0e}.cpsat-result.status-infeasible[data-v-95c6b2be],.cpsat-result.status-unknown[data-v-95c6b2be],.cpsat-result.status-model_invalid[data-v-95c6b2be]{background:#fff1f2;border:1px solid #f43f5e;color:#9f1239}.cpsat-unscheduled[data-v-95c6b2be]{margin-top:.5rem;width:100%;font-size:.8rem;border-collapse:collapse}.cpsat-unscheduled th[data-v-95c6b2be],.cpsat-unscheduled td[data-v-95c6b2be]{text-align:left;padding:.2rem .4rem;border-bottom:1px solid #e5e7eb}.oral-plan-page[data-v-95c6b2be]{max-width:100%;padding:0;box-sizing:border-box}.plan-wrapper[data-v-95c6b2be]{width:100%;overflow-x:auto;border:1px solid var(--border, #e2e8f0);border-radius:10px;box-shadow:0 1px 4px #0000000f;background:#fff}.plan-header[data-v-95c6b2be]{display:flex;position:sticky;top:0;z-index:4;background:#fff;border-bottom:2px solid var(--border, #e2e8f0);width:100%}.plan-axis-corner[data-v-95c6b2be]{width:52px;min-width:52px;background:var(--surface-2, #f8fafc);font-size:.75rem;font-weight:700;text-align:center;padding:6px 4px;position:sticky;left:0;z-index:5;border-right:1px solid var(--border, #e2e8f0);display:flex;align-items:center;justify-content:center}.plan-room-header[data-v-95c6b2be]{flex:1;min-width:120px;border-right:1px solid var(--border, #e2e8f0);overflow:hidden}.plan-room-name[data-v-95c6b2be]{background:var(--primary, #3b82f6);color:#fff;font-weight:700;font-size:.9rem;text-align:center;padding:8px 10px;letter-spacing:.02em}.plan-room-subheaders[data-v-95c6b2be]{display:flex;border-top:1px solid var(--border, #e2e8f0)}.plan-rsh-main[data-v-95c6b2be]{flex:1;min-width:0;background:var(--surface-2, #f8fafc);font-size:.68rem;font-weight:600;color:var(--text-muted, #64748b);text-transform:uppercase;letter-spacing:.05em;padding:4px 6px}.plan-rsh-role[data-v-95c6b2be]{width:32px;min-width:32px;min-height:36px;background:var(--surface-2, #f8fafc);font-size:.68rem;font-weight:700;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--border, #e2e8f0);writing-mode:vertical-rl;transform:rotate(180deg)}.plan-body[data-v-95c6b2be]{display:flex;position:relative;width:100%}.plan-time-axis[data-v-95c6b2be]{width:52px;min-width:52px;position:sticky;left:0;z-index:3;background:var(--surface-2, #f8fafc);border-right:1px solid var(--border, #e2e8f0);flex-shrink:0}.plan-time-label[data-v-95c6b2be]{position:absolute;left:0;right:0;font-size:.72rem;font-weight:700;color:var(--text-muted, #64748b);text-align:center;padding:2px 4px;transform:translateY(-50%);white-space:nowrap}.plan-drag-time-label[data-v-95c6b2be]{position:absolute;left:0;right:0;font-size:.72rem;font-weight:700;color:#ef4444;text-align:center;padding:1px 3px;background:#fff;border:1px solid #ef4444;border-radius:3px;transform:translateY(-50%);z-index:2;white-space:nowrap}.plan-room-col[data-v-95c6b2be]{position:relative;flex:1;min-width:120px;border-right:1px solid var(--border, #e2e8f0);overflow:hidden;background:#fff}.plan-gridline[data-v-95c6b2be]{position:absolute;left:0;right:0;height:0;pointer-events:none;z-index:1}.plan-gridline-30[data-v-95c6b2be]{border-top:1px solid #cbd5e1}.plan-gridline-15[data-v-95c6b2be]{border-top:1px dashed #e2e8f0}.plan-drag-line[data-v-95c6b2be]{position:absolute;left:0;right:0;height:0;border-top:2px solid #ef4444;z-index:10;pointer-events:none}.plan-drag-preview[data-v-95c6b2be]{position:absolute;left:1px;right:1px;background:#3b82f61f;border:2px dashed #3b82f6;border-radius:4px;z-index:9;pointer-events:none}.plan-drag-preview.drag-preview-conflict[data-v-95c6b2be]{background:#ef44441f;border-color:#ef4444}.plan-drag-preview.drag-preview-partial[data-v-95c6b2be]{background:#f59e0b1f;border-color:#f59e0b}.plan-exam-block[data-v-95c6b2be]{position:absolute;left:1px;right:1px;display:flex;flex-direction:row;background:#fff;border:1px solid var(--border, #e2e8f0);border-radius:4px;overflow:hidden;cursor:grab;box-shadow:0 1px 3px #00000014;z-index:5;transition:box-shadow .15s}.plan-exam-block[data-v-95c6b2be]:hover{box-shadow:0 2px 8px #00000026;z-index:6}.plan-exam-block[data-v-95c6b2be]:active{cursor:grabbing}.plan-exam-block.is-dragging[data-v-95c6b2be]{opacity:.4;cursor:grabbing}.plan-exam-block.is-draft[data-v-95c6b2be]{outline:2px solid #f59e0b;background:#fffbeb}.plan-exam-block.abi-warn-red[data-v-95c6b2be]{border-left:4px solid #ef4444;background:#fff1f2}.plan-exam-block.abi-warn-orange[data-v-95c6b2be]{border-left:4px solid #f97316;background:#fff7ed}.plan-pause-block[data-v-95c6b2be]{position:absolute;left:1px;right:1px;background:repeating-linear-gradient(45deg,#e2e8f0,#e2e8f0 3px,#f1f5f9 3px,#f1f5f9 8px);border:1px solid #cbd5e1;border-top:none;border-radius:0 0 4px 4px;z-index:4;pointer-events:none;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:600;color:#94a3b8;letter-spacing:.04em;text-transform:uppercase;overflow:hidden}.exam-block-main[data-v-95c6b2be]{flex:1;min-width:0;padding:4px 6px;overflow:hidden}.exam-student[data-v-95c6b2be]{font-weight:700;font-size:.78rem;color:var(--text, #1e293b);line-height:1.25;white-space:pre-line;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.exam-time-range[data-v-95c6b2be]{font-size:.7rem;color:#6b7280;font-weight:500;margin-top:1px;white-space:nowrap}.exam-subject[data-v-95c6b2be]{font-size:.78rem;color:var(--primary, #3b82f6);font-weight:600;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam-block-subject[data-v-95c6b2be]{width:32px;min-width:32px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f1f5f9;border-left:3px solid #cbd5e1}.subject-name[data-v-95c6b2be]{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.68rem;font-weight:700;color:#374151;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-height:110px}.exam-block-role[data-v-95c6b2be]{width:32px;min-width:32px;display:flex;align-items:center;justify-content:center;overflow:hidden}.role-name[data-v-95c6b2be]{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.68rem;font-weight:600;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-height:110px}.bar-examiner-0[data-v-95c6b2be]{background:#eff6ff;border-left:3px solid #3b82f6}.bar-examiner-0 .role-name[data-v-95c6b2be]{color:#1d4ed8}.bar-examiner-1[data-v-95c6b2be]{background:#fefce8;border-left:3px solid #eab308}.bar-examiner-1 .role-name[data-v-95c6b2be]{color:#854d0e}.bar-notetaker-0[data-v-95c6b2be]{background:#f0fdf4;border-left:3px solid #22c55e}.bar-notetaker-0 .role-name[data-v-95c6b2be]{color:#15803d}.bar-notetaker-1[data-v-95c6b2be]{background:#fff1f2;border-left:3px solid #f43f5e}.bar-notetaker-1 .role-name[data-v-95c6b2be]{color:#9f1239}.bar-chair-0[data-v-95c6b2be]{background:#fdf4ff;border-left:3px solid #a855f7}.bar-chair-0 .role-name[data-v-95c6b2be]{color:#7e22ce}.bar-chair-1[data-v-95c6b2be]{background:#fff7ed;border-left:3px solid #f97316}.bar-chair-1 .role-name[data-v-95c6b2be]{color:#9a3412}.unscheduled-section[data-v-95c6b2be]{background:#fffbeb;padding:16px}.unscheduled-grid[data-v-95c6b2be]{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.unscheduled-block[data-v-95c6b2be]{background:#fef9c3;border:1px solid #fde68a;border-radius:6px;padding:6px 10px;font-size:.8rem;line-height:1.4}.date-tabs[data-v-95c6b2be]{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pause-input-label[data-v-95c6b2be]{display:flex;align-items:center;gap:.3rem;font-size:.82rem;font-weight:600;color:#374151;white-space:nowrap}.date-tab-btn[data-v-95c6b2be]{padding:6px 14px;border-radius:6px;border:1px solid var(--border, #e2e8f0);background:var(--surface-2, #f8fafc);cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-muted, #64748b);transition:background .15s,color .15s}.date-tab-btn.active[data-v-95c6b2be],.date-tab-btn[data-v-95c6b2be]:hover{background:var(--primary, #3b82f6);color:#fff;border-color:var(--primary, #3b82f6)}.date-tab-btn.tab-conflict[data-v-95c6b2be]{border-color:#f43f5e;color:#9f1239;background:#fff1f2;position:relative}.date-tab-btn.tab-conflict[data-v-95c6b2be]:hover{background:#fecdd3;color:#9f1239}.tab-conflict-badge[data-v-95c6b2be]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#f43f5e;color:#fff;font-size:.65rem;font-weight:700;margin-left:4px;vertical-align:middle}.mt-3[data-v-95c6b2be]{margin-top:1rem}.mb-2[data-v-95c6b2be]{margin-bottom:.5rem}.mb-4[data-v-95c6b2be]{margin-bottom:1.25rem}.text-muted[data-v-95c6b2be]{color:var(--text-muted, #64748b)}.is-dragging[data-v-95c6b2be]{opacity:.4;cursor:grabbing}.exam-cell-header[data-v-95c6b2be]{display:flex;align-items:flex-start;gap:4px}.exam-warn[data-v-95c6b2be]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;font-size:.65rem;font-weight:900;line-height:1;cursor:help;margin-top:1px}.exam-warn-red[data-v-95c6b2be]{background:#ef4444;color:#fff}.exam-warn-yellow[data-v-95c6b2be]{background:#f59e0b;color:#fff}.td-main[draggable=true][data-v-95c6b2be]{cursor:grab}.td-main[draggable=true][data-v-95c6b2be]:active{cursor:grabbing}.drag-over[data-v-95c6b2be]{background:#dbeafe!important;outline:2px dashed #3b82f6;outline-offset:-2px}.personnel-conflict[data-v-95c6b2be]{background:#fff1f2!important;outline:1px solid #fca5a5;outline-offset:-1px}.personnel-partial[data-v-95c6b2be]{background:#fff7ed!important;outline:1px solid #fdba74;outline-offset:-1px}.no-date-filter-row[data-v-95c6b2be]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-select[data-v-95c6b2be]{padding:.25rem .5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.85rem;background:#fff}.no-date-dropzone[data-v-95c6b2be]{min-height:4px;border-radius:6px;transition:all .2s;margin-bottom:.5rem}.no-date-dropzone.drop-active[data-v-95c6b2be]{min-height:40px;border:2px dashed #f59e0b;background:#fffbeb;display:flex;align-items:center;justify-content:center;font-size:.85rem;color:#92400e;font-weight:600}.no-date-block[data-v-95c6b2be]{cursor:grab}.no-date-block[data-v-95c6b2be]:active{cursor:grabbing}.no-date-block.is-dragging[data-v-95c6b2be]{opacity:.4}.no-date-block.is-draft[data-v-95c6b2be]{outline:2px solid #f59e0b;background:#fffbeb}.role-clickable[data-v-95c6b2be]{cursor:pointer;text-decoration:underline dotted}.role-clickable[data-v-95c6b2be]:hover{opacity:.7}.role-dropdown-overlay[data-v-95c6b2be]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.role-dropdown[data-v-95c6b2be]{position:fixed;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 20px #0000002e;min-width:220px;max-height:340px;overflow-y:auto;z-index:1001}.role-dropdown-header[data-v-95c6b2be]{padding:.5rem .75rem;font-weight:700;font-size:.85rem;border-bottom:1px solid #e5e7eb;color:#374151;background:#f9fafb;border-radius:8px 8px 0 0}.role-dropdown-option[data-v-95c6b2be]{padding:.4rem .75rem;font-size:.85rem;cursor:pointer;transition:background .12s}.role-dropdown-option[data-v-95c6b2be]:hover{background:#f3f4f6}.role-dropdown-option.role-conflict[data-v-95c6b2be]{background:#fff1f2;color:#9f1239}.role-dropdown-option.role-conflict[data-v-95c6b2be]:hover{background:#fecdd3}.role-dropdown-option.role-unavail[data-v-95c6b2be]{background:#fff1f2;color:#9f1239}.role-dropdown-option.role-unavail[data-v-95c6b2be]:hover{background:#fecdd3}.role-dropdown-option.role-partial[data-v-95c6b2be]{background:#fff7ed;color:#92400e}.role-dropdown-option.role-partial[data-v-95c6b2be]:hover{background:#fed7aa}.role-dropdown-option.role-none[data-v-95c6b2be]{color:#6b7280;font-style:italic;border-bottom:1px solid #e5e7eb}.plan-filter-bar[data-v-95c6b2be]{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:.6rem .75rem}.plan-filter-bar .filter-select[data-v-95c6b2be]{min-width:150px}.plan-filter-bar .plan-filter-text[data-v-95c6b2be]{min-width:230px}.name-settings-bar[data-v-95c6b2be]{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:.5rem .75rem;font-size:.83rem}.name-settings-toggle[data-v-95c6b2be]{background:none;border:1px solid #d1d5db;border-radius:5px;padding:.2rem .6rem;font-size:.82rem;cursor:pointer;color:#374151;white-space:nowrap}.name-settings-toggle[data-v-95c6b2be]:hover{background:#f3f4f6}.name-settings-group[data-v-95c6b2be]{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.name-settings-label[data-v-95c6b2be]{font-weight:600;color:#6b7280;white-space:nowrap}.name-settings-check[data-v-95c6b2be]{display:flex;align-items:center;gap:.25rem;color:#374151;cursor:pointer;white-space:nowrap}.name-settings-sep[data-v-95c6b2be]{width:1px;height:1.4em;background:#d1d5db;margin:0 .25rem}.name-max-input[data-v-95c6b2be]{width:48px;padding:.15rem .3rem;border:1px solid #d1d5db;border-radius:4px;font-size:.82rem;text-align:right}.plan-filtered-out[data-v-95c6b2be]{opacity:.15;pointer-events:none}.warn-badge-btn[data-v-95c6b2be]{background:#f59e0b;border-color:#d97706;color:#fff;font-weight:600;font-size:.85rem;padding:.35rem .8rem}.warn-badge-btn[data-v-95c6b2be]:hover{background:#d97706}.plan-conflict-overlay[data-v-95c6b2be]{position:absolute;left:0;right:0;pointer-events:none;z-index:2;border-radius:2px}.drag-overlay-conflict[data-v-95c6b2be]{background:#ef444447;border-left:3px solid rgba(239,68,68,.6)}.drag-overlay-partial[data-v-95c6b2be]{background:#fbbf2440;border-left:3px solid rgba(251,191,36,.6)}.drag-overlay-occupied[data-v-95c6b2be]{background:#f9731638;border-left:3px solid rgba(249,115,22,.5)}.plan-outer[data-v-95c6b2be]{display:flex;align-items:flex-start;gap:0}.plan-outer .plan-wrapper[data-v-95c6b2be]{flex:1;min-width:0;width:auto;border-radius:10px 0 0 10px}.plan-sidebar[data-v-95c6b2be]{width:150px;min-width:130px;max-width:190px;flex-shrink:0;border:1px solid var(--border, #e2e8f0);border-left:none;border-radius:0 10px 10px 0;background:#fff;box-shadow:0 1px 4px #0000000f;display:flex;flex-direction:column;align-self:stretch}.plan-sidebar-header[data-v-95c6b2be]{position:sticky;top:0;z-index:4;background:#fff;border-bottom:2px solid var(--border, #e2e8f0);border-radius:0 10px 0 0}.plan-sidebar-body[data-v-95c6b2be]{overflow-y:visible;padding:4px}.sidebar-exam-block[data-v-95c6b2be]{border:1px solid #e5e7eb;border-radius:4px;padding:4px 6px;margin-bottom:4px;cursor:grab;background:#f9fafb;font-size:.8rem;line-height:1.3}.sidebar-exam-block.is-draft[data-v-95c6b2be]{outline:2px solid #f59e0b;background:#fffbeb}.sidebar-exam-block.is-dragging[data-v-95c6b2be]{opacity:.4}.sidebar-exam-block.plan-filtered-out[data-v-95c6b2be]{opacity:.3}.sidebar-exam-block.abi-warn-red[data-v-95c6b2be]{border-left:4px solid #ef4444;background:#fff1f2}.sidebar-exam-block.abi-warn-orange[data-v-95c6b2be]{border-left:4px solid #f97316;background:#fff7ed}.sidebar-separator[data-v-95c6b2be]{font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;padding:6px 4px 2px;border-top:1px solid #e5e7eb;margin-top:4px}.sidebar-filter-row[data-v-95c6b2be]{display:flex;flex-direction:column;gap:3px;margin-bottom:4px}.sidebar-dropzone[data-v-95c6b2be]{min-height:30px;margin-bottom:4px;padding:4px;text-align:center;border:1px dashed #d1d5db;border-radius:4px;color:#9ca3af}.sidebar-dropzone.drop-active[data-v-95c6b2be]{border-color:#3b82f6;background:#eff6ff;color:#1d4ed8}.exam-history-btn[data-v-95c6b2be]{position:absolute;bottom:2px;right:2px;background:none;border:none;cursor:pointer;font-size:.75rem;opacity:.4;padding:0;line-height:1;transition:opacity .15s}.plan-exam-block:hover .exam-history-btn[data-v-95c6b2be]{opacity:.85}.exam-guests-badge[data-v-95c6b2be]{background:none;border:none;cursor:pointer;font-size:.68rem;opacity:.5;padding:0;line-height:1;transition:opacity .15s;color:inherit;flex-shrink:0;margin-left:auto}.plan-exam-block:hover .exam-guests-badge[data-v-95c6b2be]{opacity:.9}.exam-guests-popup[data-v-95c6b2be]{display:none}.exam-guests-teleport-popup[data-v-95c6b2be]{position:fixed;z-index:9999;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 6px 20px #0000002e;padding:.5rem .7rem;min-width:220px;max-width:320px}.exam-guests-popup-title[data-v-95c6b2be]{font-size:.75rem;font-weight:600;color:#374151;margin-bottom:.3rem;padding-bottom:.2rem;border-bottom:1px solid #e5e7eb}.exam-guests-popup-row[data-v-95c6b2be]{display:flex;align-items:center;gap:.4rem;padding:.15rem 0}.exam-guest-status-dot[data-v-95c6b2be]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-ungeprüft[data-v-95c6b2be]{background:#9ca3af}.dot-genehmigt[data-v-95c6b2be]{background:#22c55e}.dot-optional[data-v-95c6b2be]{background:#eab308}.dot-nicht-genehmigt[data-v-95c6b2be]{background:#ef4444}.exam-guest-popup-name[data-v-95c6b2be]{font-size:.78rem;flex:1}.exam-guest-popup-status[data-v-95c6b2be]{font-size:.72rem;color:#6b7280;white-space:nowrap}.exam-guest-status-select[data-v-95c6b2be]{font-size:.75rem;padding:.1rem .25rem;border-radius:4px;border:1px solid #d1d5db;color:#374151;background:#f9fafb;cursor:pointer}.history-timeline[data-v-95c6b2be]{max-height:420px;overflow-y:auto;display:flex;flex-direction:column;gap:0}.history-entry[data-v-95c6b2be]{display:flex;gap:.75rem;padding:.6rem 0;border-bottom:1px solid #f1f5f9}.history-entry[data-v-95c6b2be]:last-child{border-bottom:none}.history-dot[data-v-95c6b2be]{width:10px;height:10px;border-radius:50%;margin-top:4px;flex-shrink:0}.history-dot-manual[data-v-95c6b2be]{background:#6366f1}.history-dot-proposal[data-v-95c6b2be]{background:#f59e0b}.history-dot-restore[data-v-95c6b2be]{background:#10b981}.history-body[data-v-95c6b2be]{flex:1;min-width:0}.history-meta[data-v-95c6b2be]{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;margin-bottom:.15rem}.history-time[data-v-95c6b2be]{font-weight:600;font-size:.85rem}.history-source-badge[data-v-95c6b2be]{font-size:.72rem;padding:.1rem .4rem;border-radius:999px;font-weight:600}.source-manual[data-v-95c6b2be]{background:#e0e7ff;color:#4338ca}.source-proposal[data-v-95c6b2be]{background:#fef3c7;color:#92400e}.source-restore[data-v-95c6b2be]{background:#d1fae5;color:#065f46}.history-state[data-v-95c6b2be]{font-size:.83rem;color:#374151}.mobile-plan[data-v-c9fb09c1]{padding-bottom:1rem}.mobile-plan-header[data-v-c9fb09c1]{margin-bottom:.75rem}.mobile-plan-header h1[data-v-c9fb09c1]{margin-bottom:.15rem;font-size:1.2rem}.mobile-plan-subtitle[data-v-c9fb09c1]{margin:0;color:#6b7280;font-size:.85rem}.mobile-export-btn[data-v-c9fb09c1]{margin-top:.55rem}.mobile-toolbar[data-v-c9fb09c1]{display:grid;grid-template-columns:1fr;gap:.35rem;margin-bottom:.75rem;padding:.75rem}.mobile-label[data-v-c9fb09c1]{font-size:.78rem;font-weight:700;color:#4b5563}.mobile-select[data-v-c9fb09c1],.mobile-input[data-v-c9fb09c1]{width:100%;border:1px solid #d1d5db;border-radius:6px;padding:.45rem .55rem;font-size:.88rem;background:#fff}.mobile-summary[data-v-c9fb09c1]{color:#6b7280;font-size:.82rem;margin-bottom:.55rem}.mobile-card-list[data-v-c9fb09c1]{display:grid;grid-template-columns:1fr;gap:.6rem}.mobile-exam-card[data-v-c9fb09c1]{padding:.7rem}.card-top-row[data-v-c9fb09c1]{display:flex;align-items:center;justify-content:space-between;gap:.45rem;margin-bottom:.45rem}.time-pill[data-v-c9fb09c1],.room-pill[data-v-c9fb09c1]{font-size:.76rem;font-weight:700;border-radius:999px;padding:.18rem .48rem}.time-pill[data-v-c9fb09c1]{background:#dbeafe;color:#1d4ed8}.room-pill[data-v-c9fb09c1]{background:#ecfeff;color:#0e7490}.student-line[data-v-c9fb09c1]{font-weight:700;color:#111827;margin-bottom:.28rem}.meta-line[data-v-c9fb09c1]{font-size:.86rem;color:#374151;margin-bottom:.24rem}.meta-sep[data-v-c9fb09c1]{opacity:.45;margin:0 .2rem}.roles-line[data-v-c9fb09c1]{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.8rem;color:#6b7280}.mobile-empty[data-v-c9fb09c1]{padding:.8rem;color:#6b7280;font-size:.88rem}.material-handout-banner[data-v-bb07ced9]{display:flex;align-items:center;gap:10px;background:var(--bg-card);border:1px solid var(--border);border-left:4px solid var(--primary, #4f8ef7);border-radius:6px;padding:10px 16px;font-size:.95rem}.material-handout-label[data-v-bb07ced9]{font-weight:600;color:var(--text-muted, #888);white-space:nowrap}.material-handout-name[data-v-bb07ced9]{font-weight:600;color:var(--text)}.material-handout-name.clickable[data-v-bb07ced9]{cursor:pointer;border-bottom:1px dashed var(--primary, #4f8ef7);text-decoration:none}.material-handout-name.clickable[data-v-bb07ced9]:hover{color:var(--primary, #4f8ef7)}.handout-select[data-v-bb07ced9]{font-size:.95rem;padding:2px 6px;border:1px solid var(--primary, #4f8ef7);border-radius:4px;background:var(--bg-card);color:var(--text);cursor:pointer}.date-tabs[data-v-bb07ced9]{display:flex;flex-wrap:wrap;gap:8px}.date-tab-btn[data-v-bb07ced9]{padding:6px 14px;border:2px solid var(--border);border-radius:6px;background:var(--bg-card);color:var(--text);cursor:pointer;font-size:.875rem;transition:all .15s}.date-tab-btn[data-v-bb07ced9]:hover{border-color:var(--primary);color:var(--primary)}.date-tab-btn.active[data-v-bb07ced9]{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.plan-outer[data-v-bb07ced9]{overflow-x:hidden;position:relative}.plan-header-row[data-v-bb07ced9]{display:grid;position:sticky;top:0;z-index:10;background:var(--bg-card);border-bottom:2px solid var(--border)}.plan-time-header[data-v-bb07ced9]{display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--text-muted);padding:4px;min-height:56px}.plan-col-header[data-v-bb07ced9]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 4px;min-height:56px;border-left:1px solid var(--border);gap:2px}.header-hallway[data-v-bb07ced9]{background:#f5f1ff}.header-room[data-v-bb07ced9]{background:#f0f7ff}.col-name[data-v-bb07ced9]{font-weight:600;font-size:.8em;text-align:center}.col-name-clickable[data-v-bb07ced9]{cursor:pointer;border-bottom:1px dashed var(--primary, #4f8ef7);border-radius:2px;padding:0 2px;transition:color .15s}.col-name-clickable[data-v-bb07ced9]:hover{color:var(--primary, #4f8ef7)}.capacity-warning[data-v-bb07ced9]{background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5;border-radius:6px;padding:8px 12px;font-size:.88rem;font-weight:600;margin-bottom:12px}select option.option-over-capacity[data-v-bb07ced9]{color:#b91c1c;background:#fee2e2}.col-group-line[data-v-bb07ced9]{display:flex;gap:4px;align-items:baseline;font-size:.68em;line-height:1.3}.col-group-name[data-v-bb07ced9]{font-weight:600;color:var(--primary);white-space:nowrap}.col-group-count[data-v-bb07ced9]{color:var(--text-muted);white-space:nowrap}.col-group-dot[data-v-bb07ced9]{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.col-opener-line[data-v-bb07ced9]{display:flex;gap:3px;align-items:baseline;font-size:.66em;margin-top:2px;border-top:1px dashed var(--border);padding-top:2px;flex-wrap:wrap}.col-opener-label[data-v-bb07ced9]{color:var(--text-muted);white-space:nowrap}.col-opener-names[data-v-bb07ced9]{font-weight:600;color:#b45309;white-space:nowrap}.col-opener-btn[data-v-bb07ced9]{cursor:pointer;border-radius:3px;padding:1px 3px;margin:0 -3px;transition:background .1s}.col-opener-btn[data-v-bb07ced9]:hover{background:#b453091a;text-decoration:underline;text-decoration-style:dotted}.plan-body[data-v-bb07ced9]{position:relative}.plan-time-label[data-v-bb07ced9]{position:absolute;left:0;display:flex;align-items:flex-start;justify-content:flex-end;padding-right:6px;font-size:.7rem;color:var(--text-muted);height:20px;transform:translateY(-9px);pointer-events:none;z-index:3}.plan-band-label[data-v-bb07ced9]{position:absolute;left:0;display:flex;align-items:center;justify-content:flex-end;padding-right:6px;font-size:.68rem;font-weight:700;color:var(--primary);pointer-events:none;z-index:2;opacity:.7}.plan-grid-line[data-v-bb07ced9]{position:absolute;height:1px;pointer-events:none;z-index:1}.grid-line-major[data-v-bb07ced9]{background:var(--border)}.grid-line-minor[data-v-bb07ced9]{background:color-mix(in srgb,var(--border) 40%,transparent)}.plan-col-bg[data-v-bb07ced9]{position:absolute;top:0;border-left:1px solid var(--border)}.col-bg-room[data-v-bb07ced9]{background:#0078ff05}.col-bg-hallway[data-v-bb07ced9]{background:#7850dc0a}.plan-divider[data-v-bb07ced9]{position:absolute;top:0;width:3px;background:var(--border);z-index:3}.exam-bar[data-v-bb07ced9]{position:absolute;border-radius:4px;z-index:4;pointer-events:all;cursor:default}.sup-block[data-v-bb07ced9]{position:absolute;border-radius:6px;padding:4px 6px;font-size:.72em;overflow:hidden;z-index:5;box-shadow:0 1px 4px #0000001f;display:flex;flex-direction:column;gap:1px;cursor:default}.sup-room[data-v-bb07ced9]{background:#dbeafe;border-left:3px solid #3b82f6;color:#1e40af}.sup-hallway[data-v-bb07ced9]{background:#f3e8ff;border-left:3px solid #9333ea;color:#6b21a8}.sup-teacher[data-v-bb07ced9]{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sup-sub[data-v-bb07ced9]{font-size:.65em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.85}.sup-time[data-v-bb07ced9]{font-size:.63em;opacity:.7;margin-top:auto}.unassigned-panel[data-v-bb07ced9]{padding:10px 16px;border-top:1px solid var(--border);font-size:.8rem;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.unassigned-chip[data-v-bb07ced9]{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:2px 8px}.text-muted[data-v-bb07ced9]{color:var(--text-muted)}.ctx-menu[data-v-bb07ced9]{position:fixed;z-index:99999;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 6px 24px #0000002e;min-width:220px;padding:4px 0;font-size:.875rem}.ctx-item[data-v-bb07ced9]{padding:8px 16px;cursor:pointer;white-space:nowrap;color:var(--text);transition:background .1s}.ctx-item[data-v-bb07ced9]:hover{background:var(--bg)}.ctx-danger[data-v-bb07ced9]{color:#dc2626}.ctx-danger[data-v-bb07ced9]:hover{background:#fee2e2}.ctx-sep[data-v-bb07ced9]{height:1px;background:var(--border);margin:4px 0}.sup-handle[data-v-bb07ced9]{position:absolute;left:0;right:0;height:7px;cursor:ns-resize;z-index:10;opacity:0;border-radius:inherit;transition:opacity .15s,background .15s}.sup-handle[data-v-bb07ced9]:hover{opacity:1;background:#ffffff73}.sup-handle-top[data-v-bb07ced9]{top:0}.sup-handle-bottom[data-v-bb07ced9]{bottom:0}.is-dragging .sup-handle[data-v-bb07ced9]{opacity:1}.is-dragging[data-v-bb07ced9]{box-shadow:0 4px 16px #00000038!important;opacity:.92;z-index:20}.sup-teacher-btn[data-v-bb07ced9]{cursor:pointer;border-radius:3px;padding:0 2px;margin:0 -2px}.sup-teacher-btn[data-v-bb07ced9]:hover{background:#ffffff73;text-decoration:underline;text-decoration-style:dotted}.modal-overlay[data-v-bb07ced9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:9999}.modal-box[data-v-bb07ced9]{background:#fff;border-radius:10px;padding:24px 24px 18px;width:380px;max-width:95vw;box-shadow:0 12px 40px #0000004d}.modal-box h3[data-v-bb07ced9]{margin:0 0 18px;font-size:1rem;font-weight:700;color:var(--text)}.modal-field[data-v-bb07ced9]{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.modal-field label[data-v-bb07ced9]{font-size:.78rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.modal-field select[data-v-bb07ced9],.modal-field input[type=time][data-v-bb07ced9]{width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.875rem;font-family:inherit}.modal-field select[data-v-bb07ced9]:focus,.modal-field input[type=time][data-v-bb07ced9]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #2563eb26}.modal-time-row[data-v-bb07ced9]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions[data-v-bb07ced9]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.oral-sup-plan-page[data-v-c84820cb]{display:flex;flex-direction:column;height:100%}.sp-wrapper[data-v-c84820cb]{overflow-x:auto;overflow-y:auto;flex:1;min-height:0;border:1px solid var(--border, #e2e8f0);border-radius:10px;box-shadow:0 1px 4px #0000000f;background:#fff}.sp-header[data-v-c84820cb]{position:sticky;top:0;z-index:10;background:#fff;border-bottom:2px solid var(--border, #e2e8f0)}.sp-header-row1[data-v-c84820cb]{display:flex;border-bottom:1px solid var(--border, #e2e8f0)}.sp-corner-top[data-v-c84820cb]{flex-shrink:0;background:var(--surface-2, #f8fafc);position:sticky;left:0;z-index:11;border-right:1px solid var(--border, #e2e8f0)}.sp-day-header[data-v-c84820cb]{flex-shrink:0;background:var(--primary, #3b82f6);color:#fff;font-weight:700;font-size:.88rem;text-align:center;padding:7px 10px;letter-spacing:.02em;border-right:2px solid #1d4ed8;white-space:nowrap}.sp-day-header[data-v-c84820cb]:last-child{border-right:none}.sp-header-row2[data-v-c84820cb]{display:flex}.sp-corner-bottom[data-v-c84820cb]{flex-shrink:0;background:var(--surface-2, #f8fafc);font-size:.75rem;font-weight:700;text-align:center;padding:5px 4px;position:sticky;left:0;z-index:11;border-right:1px solid var(--border, #e2e8f0);display:flex;align-items:center;justify-content:center;color:var(--text-muted, #64748b)}.sp-room-header[data-v-c84820cb]{flex-shrink:0;background:var(--surface-2, #f8fafc);font-size:.8rem;font-weight:700;text-align:center;padding:6px 8px;border-right:1px solid var(--border, #e2e8f0);color:var(--text, #1e293b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-room-header.sp-day-last-col[data-v-c84820cb]{border-right:2px solid #93c5fd}.sp-room-header[data-v-c84820cb]:last-child{border-right:none}.sp-exam-header[data-v-c84820cb]{flex-shrink:0;background:#e2e8f0;font-size:.68rem;font-weight:700;text-align:center;padding:6px 2px;border-right:1px solid var(--border, #e2e8f0);color:var(--text-muted, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;justify-content:center}.sp-body[data-v-c84820cb]{display:flex;position:relative}.sp-time-axis[data-v-c84820cb]{position:sticky;left:0;z-index:5;background:var(--surface-2, #f8fafc);border-right:1px solid var(--border, #e2e8f0);flex-shrink:0}.sp-time-label[data-v-c84820cb]{position:absolute;left:0;right:0;font-size:.72rem;font-weight:700;color:var(--text-muted, #64748b);text-align:center;padding:2px 4px;transform:translateY(-50%);white-space:nowrap}.sp-room-col[data-v-c84820cb]{position:relative;flex-shrink:0;border-right:1px solid var(--border, #e2e8f0);background:#fff;overflow:hidden}.sp-room-col.sp-day-last-col[data-v-c84820cb]{border-right:2px solid #93c5fd}.sp-room-col[data-v-c84820cb]:last-child{border-right:none}.sp-exam-col[data-v-c84820cb]{position:relative;flex-shrink:0;border-right:1px solid var(--border, #e2e8f0);background:#f8fafc;overflow:hidden}.sp-exam-block[data-v-c84820cb]{position:absolute;left:2px;right:2px;background:#cbd5e1;border-radius:2px;z-index:2;pointer-events:none}.sp-gridline[data-v-c84820cb]{position:absolute;left:0;right:0;height:0;border-top:1px solid #e2e8f0;pointer-events:none;z-index:1}.sp-sup-block[data-v-c84820cb]{position:absolute;left:2px;right:2px;background:#dbeafe;border:1px solid #3b82f6;border-radius:5px;padding:3px 5px;z-index:2;overflow:hidden;cursor:grab;display:flex;flex-direction:column;gap:1px}.sp-sup-block[data-v-c84820cb]:active{cursor:grabbing}.sp-resize-handle[data-v-c84820cb]{position:absolute;bottom:0;left:0;right:0;height:8px;cursor:ns-resize;z-index:3;border-radius:0 0 4px 4px;background:transparent}.sp-resize-handle[data-v-c84820cb]:hover{background:#3b82f659}.sp-sup-dragging[data-v-c84820cb]{opacity:.35}.sp-sup-teacher[data-v-c84820cb]{font-weight:700;font-size:.78rem;color:#1e40af;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-sup-time[data-v-c84820cb]{font-size:.78rem;font-style:italic;color:#1e3a8a;line-height:1.2}.sp-sup-sub[data-v-c84820cb]{font-size:.78rem;color:#6b7280;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-editable[data-v-c84820cb]{cursor:pointer}.sp-editable[data-v-c84820cb]:hover{text-decoration:underline dotted}.sp-sup-add-sub[data-v-c84820cb]{font-size:.65rem;color:#9ca3af;cursor:pointer;line-height:1.2}.sp-sup-add-sub[data-v-c84820cb]:hover{color:#3b82f6}.sp-inline-select-wrap[data-v-c84820cb]{display:flex}.sp-inline-select[data-v-c84820cb]{font-size:.75rem;padding:0 2px;border:1px solid #3b82f6;border-radius:3px;background:#eff6ff;width:100%;min-width:0;position:relative;z-index:10}.sp-time-edit-row[data-v-c84820cb]{display:flex;align-items:center;gap:1px;flex-wrap:nowrap}.sp-time-input[data-v-c84820cb]{font-size:.65rem;padding:0;border:1px solid #3b82f6;border-radius:3px;background:#eff6ff;width:62px;min-width:0}.sp-drag-over[data-v-c84820cb]{background:#eff6ff!important}.sp-drag-preview[data-v-c84820cb]{position:absolute;left:2px;right:2px;background:#3b82f626;border:2px dashed #3b82f6;border-radius:5px;z-index:3;pointer-events:none}.sp-hint[data-v-c84820cb]{font-size:.78rem;color:var(--text-muted, #64748b);font-style:italic}.sp-warn-badge[data-v-c84820cb]{display:inline-block;font-size:.75rem;font-weight:700;margin-left:3px;line-height:1;cursor:help}.sp-context-menu[data-v-c84820cb]{position:fixed;z-index:9999;background:#fff;border:1px solid var(--border, #e2e8f0);border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:200px;padding:4px 0;-webkit-user-select:none;user-select:none}.sp-context-title[data-v-c84820cb]{font-size:.75rem;font-weight:700;color:var(--text-muted, #64748b);padding:6px 14px 4px;border-bottom:1px solid var(--border, #e2e8f0);margin-bottom:2px}.sp-context-item[data-v-c84820cb]{display:block;width:100%;background:none;border:none;text-align:left;padding:7px 14px;font-size:.88rem;cursor:pointer;color:var(--text, #1e293b)}.sp-context-item[data-v-c84820cb]:hover{background:var(--surface-2, #f1f5f9)}.sp-context-cancel[data-v-c84820cb]{color:#6b7280;font-size:.8rem}.sp-context-danger[data-v-c84820cb]{color:#dc2626}.sp-context-danger[data-v-c84820cb]:hover{background:#fee2e2}.modal-wide[data-v-facd7155]{max-width:700px;width:95vw}.avail-table[data-v-facd7155]{width:100%;border-collapse:collapse;margin-top:.5rem}.avail-table th[data-v-facd7155],.avail-table td[data-v-facd7155]{padding:.4rem .5rem;border-bottom:1px solid #e5e7eb;text-align:left}.avail-table th[data-v-facd7155]{font-size:.8rem;color:#6b7280;font-weight:600}.avail-input[data-v-facd7155]{width:100%;padding:.3rem .4rem;border:1px solid #d1d5db;border-radius:4px;font-size:.85rem}.btn-secondary[data-v-facd7155]{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.btn-secondary[data-v-facd7155]:hover{background:#e5e7eb}.btn-warning[data-v-202ee2a4]{background:#f59e0b;color:#fff;border:none}.btn-warning[data-v-202ee2a4]:hover{background:#d97706}.warning-box[data-v-202ee2a4]{background:#fff8e1;border:1px solid #f0c040;border-radius:6px;padding:.65rem 1rem;font-size:.9rem;margin-top:.75rem}.result-box[data-v-202ee2a4]{border-radius:6px;padding:.65rem 1rem;font-size:.9rem;margin-top:.75rem}.result-ok[data-v-202ee2a4]{background:#f0fdf4;border:1px solid #86efac;color:#166534}.result-warn[data-v-202ee2a4]{background:#fefce8;border:1px solid #fde047;color:#854d0e}.modal-wide[data-v-202ee2a4]{max-width:720px;width:95vw}.preview-table[data-v-202ee2a4]{width:100%;border-collapse:collapse;font-size:.83rem}.preview-table th[data-v-202ee2a4]{background:#f9fafb;padding:.35rem .6rem;text-align:left;font-weight:600;color:#6b7280;border-bottom:1px solid #e5e7eb;position:sticky;top:0}.preview-table td[data-v-202ee2a4]{padding:.3rem .6rem;border-bottom:1px solid #f3f4f6;vertical-align:middle}.preview-row-error td[data-v-202ee2a4]{background:#fff1f2}.preview-new[data-v-202ee2a4]{color:#166534;font-weight:600}.overview-card[data-v-202ee2a4]{padding:0}.overview-scroll[data-v-202ee2a4]{overflow-x:auto;width:100%}.overview-table[data-v-202ee2a4]{font-size:.78rem;white-space:nowrap;border-collapse:collapse;width:100%}.overview-table th[data-v-202ee2a4],.overview-table td[data-v-202ee2a4]{padding:4px 6px;border:1px solid #e5e7eb;vertical-align:middle}.overview-table thead th[data-v-202ee2a4]{background:#f9fafb;font-weight:600;color:#374151}.group-header-row th[data-v-202ee2a4]{text-align:center;border-bottom:2px solid #d1d5db}.group-head-student[data-v-202ee2a4]{background:#f1f5f9!important}.group-head-written[data-v-202ee2a4]{background:#dbeafe!important;color:#1e40af}.group-head-oral[data-v-202ee2a4]{background:#ede9fe!important;color:#5b21b6}.group-head-abi[data-v-202ee2a4]{background:#fed7aa!important;color:#9a3412;font-weight:700}.group-head-punkte[data-v-202ee2a4]{background:#99f6e4!important;color:#134e4a;font-weight:700}.col-head-lkgk[data-v-202ee2a4]{background:#fed7aa!important;color:#9a3412;font-weight:600}.col-subhead[data-v-202ee2a4]{font-weight:500;font-size:.72rem;color:#6b7280}.col-written[data-v-202ee2a4]{background:#eff6ff!important}.col-oral[data-v-202ee2a4]{background:#f5f3ff!important}.col-zusatz[data-v-202ee2a4],.col-nachp[data-v-202ee2a4]{background:#fef9c3!important}.col-ppf[data-v-202ee2a4]{background:#d1fae5!important}.bg-ppf[data-v-202ee2a4]{background:#ecfdf5;font-weight:600}.bg-lkgk[data-v-202ee2a4]{background:#fff7ed}.bg-abi[data-v-202ee2a4]{background:#fff7ed;font-weight:700}.bg-punkte[data-v-202ee2a4]{background:#f0fdfa;font-weight:700}.bg-note[data-v-202ee2a4]{background:#f0fdfa}.bg-written[data-v-202ee2a4]{background:#f8fbff}.bg-oral[data-v-202ee2a4]{background:#faf5ff}.bg-nachp[data-v-202ee2a4],.bg-zusatz[data-v-202ee2a4]{background:#fefce8}.cell-vorname[data-v-202ee2a4]{max-width:65px}.cell-tutor[data-v-202ee2a4]{max-width:30px;text-align:center}.cell-note[data-v-202ee2a4]{font-weight:700;color:#134e4a}.warn-red[data-v-202ee2a4]{background:#fca5a5!important;color:#7f1d1d!important}.warn-orange[data-v-202ee2a4]{background:#fed7aa!important;color:#7c2d12!important}.warn-cell-red[data-v-202ee2a4]{background:#ef4444!important;color:#fff!important;font-weight:700}.cell-num[data-v-202ee2a4]{text-align:center;font-variant-numeric:tabular-nums}.cell-center[data-v-202ee2a4]{text-align:center}.cell-trunc[data-v-202ee2a4]{max-width:70px;overflow:hidden;text-overflow:ellipsis}.row-selected td[data-v-202ee2a4]{background:#eff6ff!important}.overview-table .filter-row th[data-v-202ee2a4]{background:#fff;padding:4px}.overview-table .filter-row .filter-input[data-v-202ee2a4]{width:100%;font-size:.75rem}.result-input[data-v-202ee2a4]{width:48px;text-align:center;border:1px solid #d1d5db;border-radius:3px;padding:1px 2px;font-size:.78rem;background:#fff}.result-input[data-v-202ee2a4]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.result-input[data-v-202ee2a4]::-webkit-outer-spin-button,.result-input[data-v-202ee2a4]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.result-input[type=number][data-v-202ee2a4]{-moz-appearance:textfield}.role-select[data-v-c7a9312c]{border:1px solid #d1d5db;border-radius:6px;padding:2px 6px;font-size:.88rem;background:#f9fafb;cursor:pointer}.preview-modal[data-v-5cebd838]{max-width:1100px;width:96vw;max-height:90vh;display:flex;flex-direction:column}.preview-summary[data-v-5cebd838]{margin-bottom:12px}.summary-grid[data-v-5cebd838]{display:flex;flex-wrap:wrap;gap:8px}.sum-item[data-v-5cebd838]{display:flex;flex-direction:column;align-items:center;padding:6px 12px;border-radius:6px;min-width:90px;font-size:.8rem}.sum-num[data-v-5cebd838]{font-size:1.3rem;font-weight:700;line-height:1.2}.sum-label[data-v-5cebd838]{color:#6b7280;font-size:.72rem;text-align:center}.sum-ok[data-v-5cebd838]{background:#f0fdf4;border:1px solid #bbf7d0}.sum-new[data-v-5cebd838]{background:#dbeafe;border:1px solid #93c5fd}.sum-changed[data-v-5cebd838]{background:#fef9c3;border:1px solid #fde047}.preview-filter[data-v-5cebd838]{display:flex;align-items:center;gap:12px;margin-bottom:8px;font-size:.85rem}.preview-count[data-v-5cebd838]{color:#6b7280;font-size:.8rem}.preview-scroll[data-v-5cebd838]{overflow:auto;flex:1;min-height:200px;max-height:55vh;border:1px solid #e5e7eb;border-radius:6px}.prev-table[data-v-5cebd838]{width:100%;border-collapse:collapse;font-size:.8rem;white-space:nowrap}.prev-table th[data-v-5cebd838]{background:#f9fafb;padding:6px 8px;text-align:left;font-weight:600;position:sticky;top:0;border-bottom:1px solid #e5e7eb}.prev-table td[data-v-5cebd838]{padding:4px 8px;border-bottom:1px solid #f3f4f6;vertical-align:top}.row-new td[data-v-5cebd838]{background:#eff6ff}.row-updated td[data-v-5cebd838]{background:#fefce8}.badge[data-v-5cebd838]{padding:1px 6px;border-radius:999px;font-size:.72rem;font-weight:600}.badge-new[data-v-5cebd838]{background:#dbeafe;color:#1d4ed8}.badge-updated[data-v-5cebd838]{background:#fef9c3;color:#92400e}.badge-exists[data-v-5cebd838]{background:#f3f4f6;color:#6b7280}.cell-changes[data-v-5cebd838]{white-space:normal;min-width:150px}.cell-exams[data-v-5cebd838]{white-space:normal;min-width:180px}.change-pill[data-v-5cebd838]{display:inline-block;background:#fef9c3;border:1px solid #fde047;border-radius:4px;padding:1px 5px;margin:1px 2px;font-size:.72rem}.exam-row[data-v-5cebd838]{display:flex;flex-wrap:wrap;gap:3px;align-items:center;margin-bottom:2px}.exam-tag[data-v-5cebd838]{font-size:.72rem;background:#f3f4f6;border-radius:4px;padding:1px 5px;font-weight:600}.tag-new[data-v-5cebd838]{background:#dbeafe;color:#1d4ed8}.result-change[data-v-5cebd838]{font-size:.72rem;background:#fef9c3;border-radius:4px;padding:1px 5px}.import-error[data-v-5cebd838]{color:#dc2626;font-size:.85rem;margin-top:8px}.name-mode-options[data-v-5cebd838]{display:flex;flex-direction:column;gap:8px}.name-mode-option[data-v-5cebd838]{display:flex;align-items:flex-start;gap:10px;padding:10px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer}.name-mode-option.selected[data-v-5cebd838]{border-color:#6366f1;background:#eef2ff}.name-mode-option div[data-v-5cebd838]{display:flex;flex-direction:column;gap:2px}.name-mode-option strong[data-v-5cebd838]{font-size:.88rem}.name-mode-option span[data-v-5cebd838]{font-size:.78rem;color:#6b7280}.import-result[data-v-5cebd838]{margin-top:12px;border-radius:8px;padding:12px 14px;position:relative}.import-result--success[data-v-5cebd838]{background:#f0fdf4;border:1px solid #bbf7d0}.import-result__close[data-v-5cebd838]{position:absolute;top:8px;right:10px;background:none;border:none;cursor:pointer;font-size:1rem;color:#6b7280}.import-result__message[data-v-5cebd838]{font-weight:600;margin-bottom:6px}.stats[data-v-5cebd838]{font-size:.82rem;color:#374151;line-height:1.8}.guest-import-wrap[data-v-c00de41e]{font-size:.9rem}.file-row[data-v-c00de41e]{display:flex;align-items:center;gap:.75rem}.file-label[data-v-c00de41e]{cursor:pointer}.file-input-hidden[data-v-c00de41e]{display:none}.gi-error[data-v-c00de41e]{background:#fff1f2;border:1px solid #fca5a5;border-radius:6px;color:#991b1b;font-size:.85rem;padding:.4rem .75rem;margin-top:.5rem}.gi-stats[data-v-c00de41e]{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.gi-badge[data-v-c00de41e]{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:20px;font-size:.8rem;font-weight:600}.gi-badge-green[data-v-c00de41e]{background:#dcfce7;color:#15803d}.gi-badge-red[data-v-c00de41e]{background:#fee2e2;color:#991b1b}.gi-badge-orange[data-v-c00de41e]{background:#fef3c7;color:#92400e}.gi-stats-total[data-v-c00de41e]{font-size:.8rem;color:#6b7280;margin-left:auto}.gi-groups[data-v-c00de41e]{max-height:520px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.75rem}.gi-group[data-v-c00de41e]{display:flex;align-items:flex-start;gap:0;border-bottom:1px solid #f3f4f6;padding:.55rem .75rem .55rem 0;transition:background .1s}.gi-group[data-v-c00de41e]:last-child{border-bottom:none}.gi-group-indicator[data-v-c00de41e]{width:4px;min-height:100%;flex-shrink:0;border-radius:4px 0 0 4px;align-self:stretch;margin-right:.6rem}.gi-group-matched .gi-group-indicator[data-v-c00de41e]{background:#22c55e}.gi-group-no-exam .gi-group-indicator[data-v-c00de41e]{background:#f59e0b}.gi-group-no-student .gi-group-indicator[data-v-c00de41e]{background:#ef4444}.gi-group-skipped .gi-group-indicator[data-v-c00de41e]{background:#d1d5db}.gi-group-matched[data-v-c00de41e]{background:#f0fdf4}.gi-group-no-exam[data-v-c00de41e]{background:#fffbeb}.gi-group-no-student[data-v-c00de41e]{background:#fff1f2}.gi-group-skipped[data-v-c00de41e]{background:#f9fafb;opacity:.7}.gi-group-body[data-v-c00de41e]{flex:1;min-width:0}.gi-group-actions[data-v-c00de41e]{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;padding-left:.5rem}.gi-group-top[data-v-c00de41e]{display:flex;align-items:baseline;flex-wrap:wrap;gap:.3rem;margin-bottom:.2rem}.gi-student[data-v-c00de41e]{font-weight:600;font-size:.875rem}.gi-chip[data-v-c00de41e]{background:#dbeafe;color:#1d4ed8;font-size:.75rem;padding:.1rem .4rem;border-radius:4px;font-weight:500}.gi-chip-gray[data-v-c00de41e]{background:#f3f4f6;color:#374151}.gi-guests-inline[data-v-c00de41e]{font-size:.8rem;color:#6b7280;margin-left:.2rem}.gi-exam-display[data-v-c00de41e]{font-size:.8rem;color:#15803d;margin-bottom:.3rem}.gi-resolve[data-v-c00de41e]{margin-top:.3rem}.gi-resolve-row[data-v-c00de41e]{display:flex;align-items:center;gap:.4rem;margin-bottom:.25rem}.gi-resolve-label[data-v-c00de41e]{font-size:.78rem;color:#6b7280;white-space:nowrap;width:4.5rem;flex-shrink:0}.gi-select[data-v-c00de41e]{font-size:.8rem;padding:.15rem .4rem;border-radius:4px;border:1px solid #d1d5db;max-width:350px;flex:1}.gi-no-match-hint[data-v-c00de41e]{font-size:.78rem;color:#b45309;margin-top:.2rem;padding:.2rem .4rem;background:#fef3c7;border-radius:4px}.gi-skip-btn[data-v-c00de41e]{font-size:.75rem;padding:.1rem .35rem;color:#9ca3af;border-color:#e5e7eb}.gi-skip-btn[data-v-c00de41e]:hover{color:#ef4444;border-color:#fca5a5}.gi-skipped-label[data-v-c00de41e]{font-size:.75rem;color:#9ca3af;font-style:italic}.gi-action-bar[data-v-c00de41e]{display:flex;align-items:center;gap:.75rem;padding-top:.5rem}.gi-confirm-count[data-v-c00de41e]{flex:1;font-size:.875rem;color:#374151}.gi-done[data-v-c00de41e]{padding:.5rem 0}.gi-success[data-v-c00de41e]{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;color:#15803d;font-weight:600;padding:.6rem 1rem;margin-bottom:.75rem}.gi-done-actions[data-v-c00de41e]{display:flex;gap:.5rem}.import-card-wide[data-v-153f169d]{grid-column:1 / -1}.bar-detail[data-v-917e1c31]{font-size:.8em;color:var(--text-muted);font-weight:400}.section-subtitle[data-v-917e1c31]{font-size:.75rem;font-weight:400;color:var(--text-muted)}.bar-fill-purple[data-v-917e1c31]{background:#7c3aed}.teacher-exams-table[data-v-917e1c31]{width:100%;border-collapse:collapse;font-size:.9rem}.teacher-exams-table thead th[data-v-917e1c31]{background:var(--bg-secondary);padding:.6rem .8rem;text-align:left;font-weight:600;border-bottom:2px solid var(--border);white-space:nowrap}.teacher-exams-table thead th.sortable[data-v-917e1c31]{cursor:pointer;-webkit-user-select:none;user-select:none}.teacher-exams-table thead th.sortable[data-v-917e1c31]:hover{background:var(--bg-hover)}.teacher-exams-table thead th.sorted[data-v-917e1c31]{background:var(--primary);color:#fff}.teacher-exams-table tbody tr[data-v-917e1c31]{border-bottom:1px solid var(--border)}.teacher-exams-table tbody tr[data-v-917e1c31]:hover{background:var(--bg-hover)}.teacher-exams-table tbody td[data-v-917e1c31]{padding:.5rem .8rem}.teacher-exams-table .teacher-name[data-v-917e1c31]{font-weight:500}.bar-cell[data-v-917e1c31]{display:flex;align-items:center;gap:.5rem}.bar-track-small[data-v-917e1c31]{flex:1;height:18px;background:var(--bg-secondary);border-radius:3px;overflow:hidden;min-width:60px}.bar-track-small .bar-fill[data-v-917e1c31],.bar-track-small .bar-fill-orange[data-v-917e1c31],.bar-track-small .bar-fill-green[data-v-917e1c31]{height:100%;transition:width .3s;border-radius:3px}.bar-value-small[data-v-917e1c31]{font-weight:600;min-width:30px;text-align:right;color:var(--text)}.admin-data-view[data-v-f1ec2704]{max-width:700px;margin:2rem auto}h2[data-v-f1ec2704]{margin-bottom:1.5rem}.card[data-v-f1ec2704]{background:#fff;border:1px solid #dde3ec;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.card h3[data-v-f1ec2704]{margin:0 0 .75rem;font-size:1.1rem}.card p[data-v-f1ec2704]{margin:0 0 1rem;color:#444}.warning-box[data-v-f1ec2704]{background:#fff8e1;border:1px solid #f0c040;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.9rem}.btn-primary[data-v-f1ec2704]{background:#2563eb;color:#fff;border:none;border-radius:5px;padding:.55rem 1.25rem;cursor:pointer;font-size:.95rem}.btn-primary[data-v-f1ec2704]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-f1ec2704]{background:#e5e7eb;color:#222;border:none;border-radius:5px;padding:.55rem 1.25rem;cursor:pointer;font-size:.95rem}.btn-danger[data-v-f1ec2704]{background:#dc2626;color:#fff;border:none;border-radius:5px;padding:.55rem 1.25rem;cursor:pointer;font-size:.95rem}.btn-danger[data-v-f1ec2704]:disabled{opacity:.6;cursor:not-allowed}.file-label[data-v-f1ec2704]{display:inline-block;cursor:pointer}.file-name[data-v-f1ec2704]{margin-left:.75rem;font-size:.9rem;color:#555}.error-msg[data-v-f1ec2704]{color:#dc2626;margin-top:.75rem;font-size:.9rem}.modal-backdrop[data-v-f1ec2704]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:9999}.modal[data-v-f1ec2704]{background:#fff;border-radius:10px;padding:2rem;max-width:480px;width:90%;box-shadow:0 8px 32px #0000002e}.modal h3[data-v-f1ec2704]{margin:0 0 1rem}.modal p[data-v-f1ec2704]{margin:0 0 1.5rem;line-height:1.6}.danger-text[data-v-f1ec2704]{color:#dc2626;font-weight:600}.modal-actions[data-v-f1ec2704]{display:flex;gap:.75rem;justify-content:flex-end}.toast-success[data-v-f1ec2704]{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:#16a34a;color:#fff;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;z-index:10000;box-shadow:0 4px 16px #00000026}.proposal-header[data-v-ff02ca6b]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.status-badge[data-v-ff02ca6b]{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.78rem;font-weight:600}.status-pending[data-v-ff02ca6b]{background:#fef3c7;color:#92400e}.status-accepted[data-v-ff02ca6b]{background:#d1fae5;color:#065f46}.status-rejected[data-v-ff02ca6b]{background:#fee2e2;color:#991b1b}.proposals-table[data-v-ff02ca6b]{width:100%;border-collapse:collapse;font-size:.87rem;margin-bottom:1rem}.proposals-table th[data-v-ff02ca6b]{background:#f3f4f6;padding:.4rem .6rem;text-align:left;font-weight:600;border-bottom:1px solid #e5e7eb}.proposals-table td[data-v-ff02ca6b]{padding:.35rem .6rem;border-bottom:1px solid #f3f4f6;vertical-align:top}.current-col[data-v-ff02ca6b]{color:#6b7280}.changed[data-v-ff02ca6b]{color:#15803d;font-weight:600}.proposal-actions[data-v-ff02ca6b]{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.comment-input[data-v-ff02ca6b]{flex:1;min-width:180px;padding:.35rem .6rem;border:1px solid #d1d5db;border-radius:6px;font-size:.87rem}.btn-success[data-v-ff02ca6b]{background:#16a34a;color:#fff;border:none;padding:.4rem .9rem;border-radius:6px;cursor:pointer;font-size:.9rem}.btn-success[data-v-ff02ca6b]:hover:not(:disabled){background:#15803d}.btn-danger[data-v-ff02ca6b]{background:#dc2626;color:#fff;border:none;padding:.4rem .9rem;border-radius:6px;cursor:pointer;font-size:.9rem}.btn-danger[data-v-ff02ca6b]:hover:not(:disabled){background:#b91c1c}.btn-success[data-v-ff02ca6b]:disabled,.btn-danger[data-v-ff02ca6b]:disabled{opacity:.6;cursor:not-allowed}.edit-error[data-v-1177549d]{background:#fff1f2;border:1px solid #fca5a5;border-radius:6px;color:#9f1239;font-size:.875rem;padding:.5rem .75rem;margin-bottom:.75rem}:root{--primary: #2563eb;--primary-hover: #1d4ed8;--danger: #dc2626;--danger-hover: #b91c1c;--success: #16a34a;--success-hover: #15803d;--warning: #d97706;--warning-hover: #b45309;--bg: #f8fafc;--card: #ffffff;--border: #e2e8f0;--text: #1e293b;--text-muted: #64748b}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}.container{max-width:100%;margin:0 auto;padding:0 1.5rem}.navbar{background:var(--primary);color:#fff;padding:.75rem 0;box-shadow:0 2px 4px #0000001a}.navbar .container{display:flex;align-items:center;justify-content:space-between}.navbar h1{font-size:1.25rem}.navbar nav{display:flex;gap:1rem;align-items:center}.navbar .nav-item{position:relative}.navbar .nav-link,.navbar .nav-link-direct{color:#fff;text-decoration:none;padding:.5rem .75rem;border-radius:.375rem;transition:background .2s;font-size:.875rem;cursor:pointer;display:block}.navbar .nav-link:hover,.navbar .nav-item.active .nav-link,.navbar .nav-link-direct:hover,.navbar .nav-link-direct.router-link-active{background:#fff3}.navbar .dropdown{position:absolute;top:100%;left:0;margin-top:0;padding-top:.25rem;background:#fff;border-radius:.375rem;box-shadow:0 4px 6px #0000001a;min-width:200px;z-index:1000}.navbar .dropdown a{display:block;padding:.5rem 1rem;color:var(--text);text-decoration:none;font-size:.875rem;transition:background .2s}.navbar .dropdown a:hover,.navbar .dropdown a.router-link-active{background:var(--bg);color:var(--primary)}.navbar .dropdown a:first-child{border-radius:.375rem .375rem 0 0}.navbar .dropdown a:last-child{border-radius:0 0 .375rem .375rem}.navbar button{background:#ffffff26;border:none;cursor:pointer;color:#fff;padding:.5rem .75rem;border-radius:.375rem;transition:background .2s;font-size:.875rem}.navbar button:hover{background:#ffffff40}.submenu-bar{background:#f1f5f9;border-bottom:1px solid var(--border);padding:.5rem 0}.submenu-bar .container{display:flex;gap:.5rem}.submenu-bar a{color:var(--text);text-decoration:none;padding:.375rem .75rem;border-radius:.375rem;font-size:.875rem;transition:background .2s}.submenu-bar a:hover{background:var(--border)}.submenu-bar a.router-link-active{background:var(--primary);color:#fff;font-weight:500}.card{background:var(--card);border:1px solid var(--border);border-radius:.5rem;padding:1.5rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000000d}.card h2{margin-bottom:1rem;font-size:1.25rem}table{width:100%;border-collapse:collapse}th,td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border)}th{font-weight:600;color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}th.sortable:hover{background:#e2e8f0;color:var(--text)}th.sortable span{margin-left:.25rem;font-size:.7rem}tr.filter-row th{padding:.35rem .5rem;background:#eef2f7;font-weight:400}tr.filter-row:hover{background:#eef2f7}.filter-input{width:100%;padding:.2rem .4rem;border:1px solid var(--border);border-radius:.25rem;font-size:.8rem;background:#fff;box-sizing:border-box}tr:hover{background:#f1f5f9}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s;background:#e2e8f0;color:var(--text)}.btn:hover{background:#cbd5e1}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:var(--success-hover)}.btn-warning{background:var(--warning);color:#fff}.btn-warning:hover{background:var(--warning-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-hover)}.btn-sm{padding:.25rem .5rem;font-size:.75rem}.btn:disabled{opacity:.6;cursor:not-allowed}.col-checkbox{width:40px}tr.selected-row{background-color:#f0f8ff}.select-tall{height:120px}.select-medium{height:80px}.input-disabled{background:#f5f5f5;cursor:not-allowed}.hint-text{color:#666;margin-top:.25rem;display:block;font-size:.8rem}.empty-state{padding:2rem;text-align:center;color:var(--text-muted)}.info-card{background:#f0f7ff;border-left:4px solid #0066cc}.info-card p{margin:0;color:#06c}.badge+.badge{margin-left:4px}.usage-info{max-height:400px;overflow-y:auto;margin:1rem 0}.usage-section{margin-bottom:1rem}.usage-section ul{margin:.5rem 0;padding-left:1.5rem}.usage-section ul li{margin:.25rem 0}.error-message{color:#d32f2f;font-weight:700;margin-top:.5rem}.imports-view{padding:2rem;max-width:1200px;margin:0 auto}.imports-subtitle{color:var(--text-muted);margin-bottom:2rem}.import-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.import-card{background:var(--card);border:1px solid var(--border);border-radius:.5rem;padding:1.5rem;box-shadow:0 2px 4px #00000014}.import-card h2{margin-top:0;margin-bottom:.5rem}.import-description{color:var(--text-muted);margin-bottom:1rem;font-size:.875rem}.stats{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;margin-top:.25rem}.import-button-wrapper{position:relative;display:inline-block}.import-result{position:absolute;top:calc(100% + .25rem);right:0;min-width:280px;padding:.6rem 2rem .6rem .75rem;border-radius:.375rem;font-size:.8rem;z-index:500;white-space:normal;box-shadow:0 4px 6px #0000001a}.import-result--success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.import-result--error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.import-result__message{margin:0 0 .25rem;font-weight:500}.import-result__close{position:absolute;top:.4rem;right:.5rem;background:none;border:none;cursor:pointer;font-size:.75rem;color:inherit;opacity:.7}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:.5rem;padding:1.25rem 1rem;text-align:center;box-shadow:0 1px 3px #0000000d}.stat-card .stat-number{display:block;font-size:2rem;font-weight:700;color:var(--primary);line-height:1;margin-bottom:.4rem}.stat-card .stat-label{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.bar-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.4rem}.bar-label{min-width:120px;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{flex:1;height:12px;display:flex;align-items:center;justify-content:center}.bar-fill{height:100%;border-radius:9999px;background:var(--primary);transition:width .4s}.bar-track--left{background:#e2e8f0;overflow:hidden;display:block;justify-content:unset}.bar-fill-green{background:var(--success)}.bar-fill-orange{background:var(--warning)}.bar-value{min-width:2.5rem;width:2.5rem;text-align:right;font-size:.85rem;font-weight:600}.bar-detail-line{padding-left:calc(120px + .75rem);font-size:.78rem;color:var(--text-muted);margin-top:-.25rem;margin-bottom:.3rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:500;margin-bottom:.25rem;font-size:.875rem}.form-group input,.form-group select{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:.375rem;font-size:.875rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #2563eb26}.form-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.flex{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-wrap{flex-wrap:wrap}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.text-muted{color:var(--text-muted)}.text-sm{font-size:.875rem}.text-center{text-align:center}.page{padding:2rem 0}.page h1{font-size:1.5rem;margin-bottom:1.5rem}.badge{display:inline-block;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.badge-blue{background:#dbeafe;color:#1e40af}.badge-green{background:#dcfce7;color:#166534}.badge-yellow{background:#fef9c3;color:#854d0e}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.modal-box{background:#fff;border-radius:10px;padding:24px 24px 18px;width:380px;max-width:95vw;box-shadow:0 12px 40px #0000004d}.modal-box h3{margin:0 0 14px;font-size:1rem;font-weight:700}.modal-actions{display:flex;gap:8px;justify-content:flex-end}.modal{background:#fff;border-radius:.5rem;padding:1.5rem;width:100%;max-width:500px;max-height:80vh;overflow-y:auto}.modal h2{margin-bottom:1rem}.alert{padding:.75rem 1rem;border-radius:.375rem;margin-bottom:1rem;font-size:.875rem}.alert-success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.alert-warning{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.schedule-grid{display:grid;grid-template-columns:80px repeat(var(--rooms, 3),1fr);gap:2px;background:var(--border);border:1px solid var(--border);border-radius:.5rem;overflow:hidden}.schedule-header{background:#f1f5f9;padding:.5rem;font-weight:600;font-size:.8rem;text-align:center}.schedule-time{background:#f1f5f9;padding:.5rem;font-size:.75rem;text-align:right;font-weight:500}.schedule-cell{background:#fff;padding:.25rem;min-height:3rem}.exam-block{background:#dbeafe;border:1px solid #93c5fd;border-radius:.25rem;padding:.25rem .5rem;font-size:.7rem;cursor:pointer;transition:background .2s}.exam-block:hover{background:#bfdbfe}.exam-block .student-name{font-weight:600}.exam-block .subject-name{color:var(--text-muted)}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto}.criteria-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:4px 0;font-size:.875rem}
