*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{overflow-x:hidden;scroll-behavior:smooth}a,button,input,select,textarea{touch-action:manipulation}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}.ndd-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1100}.ndd-modal{background:#fff;border-radius:14px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:700px;overflow:hidden;width:100%}.ndd-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:18px 24px}.ndd-header-info{align-items:center;display:flex;gap:10px}.ndd-sent-at{color:#6b7280;font-size:13px}.ndd-close-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:22px;line-height:1;padding:2px 6px;transition:background .2s}.ndd-close-btn:hover{background:#f3f4f6;color:#111827}.ndd-modal-body{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:20px 24px}.ndd-field-row{align-items:baseline;display:flex;gap:12px}.ndd-field-label{color:#6b7280;flex:0 0 110px;font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.ndd-field-value{align-items:center;color:#111827;display:flex;font-size:14px;gap:8px}.ndd-field-value a{color:#4f46e5;font-weight:600;text-decoration:none}.ndd-field-value a:hover{text-decoration:underline}.ndd-section{display:flex;flex-direction:column;gap:8px}.ndd-body-note{color:#6b7280;font-size:12px;margin:0}.ndd-body-pre{background:#f9fafb;color:#374151;font-size:13px;margin:0;max-height:320px;overflow-y:auto;padding:14px 16px;white-space:pre-wrap;word-break:break-word}.ndd-body-iframe,.ndd-body-pre{border:1px solid #e5e7eb;border-radius:8px}.ndd-body-iframe{background:#fff;min-height:320px;width:100%}.ndd-param-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.ndd-param-list li{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#374151;display:flex;font-size:13px;gap:10px;padding:6px 12px}.ndd-param-index{color:#4f46e5;font-family:monospace;font-weight:700}.ndd-param-type{font-weight:500}.ndd-param-value{color:#6b7280;margin-left:auto;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ndd-count-sent{color:#059669;font-weight:600}.ndd-count-failed{color:#dc2626;font-weight:600}.ndd-modal-footer{border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:8px;padding:16px 24px}.ndd-resend-area{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.ndd-resend-btn{background:#4f46e5;border:1px solid #4f46e5;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 18px;transition:background .15s,opacity .15s;white-space:nowrap}.ndd-resend-btn:hover:not(:disabled){background:#4338ca}.ndd-resend-btn:disabled{background:#e5e7eb;border-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.ndd-resend-note{color:#9ca3af;font-size:12px}.ndd-resend-message{font-size:13px;margin:0}.ndd-resend-success{color:#059669}.ndd-resend-error{color:#dc2626}@media (max-width:640px){.ndd-field-row{flex-direction:column;gap:4px}.ndd-field-label{flex:none}}.bd-container{background-color:#f1f5f9;font-family:Segoe UI,sans-serif;margin:0 auto;max-width:100%;min-height:100vh;padding:24px}.bd-header{background:#fff;border-radius:14px;box-shadow:0 1px 6px #00000012;justify-content:space-between;margin-bottom:24px;padding:20px 24px}.bd-header,.bd-header-title{align-items:center;display:flex}.bd-header-title{gap:16px}.bd-avatar{align-items:center;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:14px;color:#fff;display:flex;flex-shrink:0;font-size:22px;font-weight:700;height:52px;justify-content:center;width:52px}.bd-title{color:#111827;font-size:1.4rem;font-weight:700;margin:0 0 5px}.bd-header-actions{align-items:center;display:flex;flex-shrink:0;gap:10px}.bd-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px;transition:background-color .2s ease,opacity .2s}.bd-btn-primary{background-color:#22c55e;color:#fff}.bd-btn-primary:hover{background-color:#16a34a}.bd-btn-secondary{background-color:#f3f4f6;border:1.5px solid #e5e7eb;color:#374151}.bd-btn-secondary:hover{background-color:#e5e7eb}.bd-status-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;padding:3px 11px;text-transform:uppercase}.bd-status-active{background:#dcfce7;color:#16a34a}.bd-status-inactive{background:#f3f4f6;color:#6b7280}.bd-status-completed{background:#dbeafe;color:#1d4ed8}.bd-status-deleted{background:#fee2e2;color:#dc2626}.bd-body{align-items:flex-start;display:flex;gap:24px}.bd-sidebar{flex:0 0 260px;flex-direction:column}.bd-main,.bd-sidebar{display:flex;gap:16px}.bd-main{flex:1 1;flex-direction:column;min-width:0}.bd-card{background:#fff;border-radius:12px;box-shadow:0 1px 6px #00000012;padding:18px 20px}.bd-card-heading{color:#9ca3af;font-size:11px;font-weight:700;letter-spacing:.7px;margin:0 0 14px;text-transform:uppercase}.bd-trainer{align-items:center;display:flex;flex-direction:column;text-align:center}.bd-trainer-pic{border:3px solid #e5e7eb;border-radius:50%;object-fit:cover}.bd-trainer-avatar,.bd-trainer-pic{height:80px;margin-bottom:10px;width:80px}.bd-trainer-avatar{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;color:#fff;display:flex;font-size:30px;font-weight:700;justify-content:center}.bd-trainer-name{color:#111827;font-size:15px;font-weight:700;margin:0 0 3px}.bd-trainer-company{color:#6b7280;font-size:12px;margin:0 0 12px}.bd-trainer-meta{border-top:1px solid #f3f4f6;padding-top:10px;text-align:left;width:100%}.bd-info-row{align-items:flex-start;border-bottom:1px solid #f9fafb;display:flex;gap:8px;justify-content:space-between;padding:7px 0}.bd-info-row:last-child{border-bottom:none}.bd-info-label{color:#6b7280;flex-shrink:0;font-size:12px;font-weight:500}.bd-info-value{color:#1f2937;font-size:13px;font-weight:500;text-align:right;word-break:break-word}.bd-day-chips{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.bd-day-chip{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;color:#16a34a;font-size:11px;font-weight:600;padding:2px 8px}.bd-description{color:#374151;font-size:14px;line-height:1.7;margin:0}.bd-table-wrapper{overflow-x:auto}.bd-table{border-collapse:collapse;font-size:13.5px;width:100%}.bd-table th{background:#f9fafb;border-bottom:2px solid #f3f4f6;color:#6b7280;font-size:11px;font-weight:700;letter-spacing:.5px;padding:10px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.bd-table td{border-bottom:1px solid #f3f4f6;color:#374151;padding:11px 14px;vertical-align:top}.bd-table tr:last-child td{border-bottom:none}.bd-table tbody tr:hover{background:#fafafa}.bd-note-title{color:#111827;font-weight:600;white-space:nowrap}.bd-note-desc{color:#6b7280;font-size:13px;max-width:280px}.bd-note-date{color:#6b7280;font-size:12.5px;white-space:nowrap}.bd-link{color:#3b82f6;font-size:13px;font-weight:500;text-decoration:none}.bd-link:hover{text-decoration:underline}.bd-note-status{border-radius:10px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.4px;padding:2px 10px;text-transform:uppercase;white-space:nowrap}.bd-note-enabled{background:#dcfce7;color:#16a34a}.bd-note-disabled{background:#fee2e2;color:#dc2626}.bd-empty-state{align-items:center;display:flex;flex-direction:column;gap:8px;padding:32px 0 16px}.bd-empty-icon{font-size:32px;opacity:.5}.bd-empty-state p{color:#9ca3af;font-size:13.5px;margin:0}.bd-empty-text{color:#9ca3af;font-size:13px;font-style:italic}.bd-notif-recipients{align-items:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534;display:flex;font-size:13.5px;gap:8px;margin-bottom:6px;padding:10px 14px}.bd-notif-recipients-icon{flex-shrink:0;font-size:18px}.bd-notif-result{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-top:10px;padding:14px 16px}.bd-notif-result-counts{display:flex;font-size:14px;font-weight:700;gap:16px;margin-bottom:8px}.bd-notif-result-sent{color:#16a34a}.bd-notif-result-failed{color:#dc2626}.bd-notif-failed-list{border-top:1px solid #e2e8f0;padding-top:10px}.bd-notif-failed-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.4px;margin:0 0 6px;text-transform:uppercase}.bd-notif-failed-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:4px 0}.bd-notif-failed-row:last-child{border-bottom:none}.bd-notif-failed-name{color:#374151;flex-shrink:0;font-weight:600}.bd-notif-failed-reason{color:#ef4444;font-size:12px;text-align:right}.bd-students-table tbody tr.bd-student-row{cursor:pointer;transition:background .14s}.bd-students-table tbody tr.bd-student-row:hover{background:#f0fdf4}.bd-student-serial{color:#9ca3af;font-size:12px;font-weight:600;width:36px}.bd-student-name{color:#111827;font-weight:600;white-space:nowrap}.bd-student-contact{color:#374151;font-family:monospace;white-space:nowrap}.bd-student-email{color:#3b82f6;font-size:13px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bd-feedback-badge{background:#ede9fe;border-radius:10px;color:#5b21b6;display:inline-block;font-size:12px;font-weight:700;min-width:28px;padding:2px 10px;text-align:center}.bd-students-loading{align-items:center;color:#9ca3af;display:flex;font-size:13.5px;gap:10px;padding:20px 0}.bd-students-spinner{animation:bd-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#22c55e;flex-shrink:0;height:20px;width:20px}.bd-overlay{align-items:center;display:flex;flex-direction:column;height:90vh;justify-content:center}.bd-loader{animation:bd-spin .9s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#22c55e;height:48px;margin-bottom:12px;width:48px}@keyframes bd-spin{to{transform:rotate(1turn)}}.bd-loading-text{color:#6b7280;font-size:15px}.bd-error-text{color:#dc2626;font-size:15px;margin-top:40px;text-align:center}.bd-assignments-table tbody tr.bd-student-row{cursor:pointer}.bd-assignment-title{color:#111827;font-weight:600}.bd-assignment-window{color:#6b7280;font-size:12.5px;white-space:nowrap}.bd-assignment-status{border-radius:10px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.4px;padding:2px 10px;text-transform:uppercase;white-space:nowrap}.bd-assignment-status-open{background:#dcfce7;color:#16a34a}.bd-assignment-status-closed{background:#fee2e2;color:#dc2626}.bd-assignment-status-completed{background:#dbeafe;color:#1d4ed8}@media (max-width:900px){.bd-body{flex-direction:column}.bd-sidebar{flex:none;flex-direction:row;flex-wrap:wrap;gap:14px;width:100%}.bd-sidebar>*{flex:1 1 280px;min-width:0}}@media (max-width:767px){.bd-container{padding:14px 12px}.bd-header{border-radius:12px;flex-wrap:wrap;gap:12px;margin-bottom:14px;padding:14px 16px}.bd-header-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.bd-btn{font-size:13px;padding:8px 16px}.bd-sidebar{flex-direction:column;gap:12px}.bd-sidebar>*{flex:none;width:100%}.bd-card{border-radius:10px;padding:14px 16px}}@media (max-width:479px){.bd-title{font-size:1.1rem}.bd-btn{font-size:12.5px;padding:7px 12px}}.student-details-container{background-color:#f1f5f9;font-family:Segoe UI,sans-serif;margin:0 auto;max-width:100%;min-height:100vh;padding:24px}.student-header{align-items:center;background:#fff;border-radius:14px;box-shadow:0 1px 6px #00000012;display:flex;justify-content:space-between;margin-bottom:24px;padding:20px 24px}.student-header-title{align-items:center;display:flex;gap:16px}.student-avatar{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:22px;font-weight:700;height:52px;justify-content:center;width:52px}.student-header h1{color:#111827;font-size:1.5rem;font-weight:700;margin:0 0 4px}.student-header-actions{align-items:center;display:flex;gap:10px}.edit-btn{font-size:14px;padding:9px 20px;transition:background-color .2s ease}.student-details-layout{align-items:flex-start;display:flex;gap:24px}.batch-right-section{display:flex;flex:0 0 280px;flex-direction:column;gap:16px}.batch-card{box-shadow:0 1px 6px #00000012;padding:18px 20px}.sd-card-heading{color:#6b7280;font-size:13px;font-weight:700;letter-spacing:.6px;margin:0 0 14px;text-transform:uppercase}.sd-batch-title{border-bottom:1px solid #f0f0f0;color:#111827;font-size:16px;font-weight:700;margin-bottom:12px;padding-bottom:10px}.sd-batch-desc{color:#6b7280;font-size:12.5px;line-height:1.5;margin-top:10px}.sd-batch-info{display:flex;flex-direction:column;gap:0}.sd-empty-text{color:#9ca3af;font-size:13px;font-style:italic}.sd-fee-row{align-items:center;border-bottom:1px solid #f9fafb;color:#374151;display:flex;font-size:13.5px;justify-content:space-between;padding:7px 0}.sd-fee-row:last-child{border-bottom:none}.sd-fee-paid{color:#16a34a}.sd-fee-balance{color:#dc2626}.student-left-section{display:flex;flex:1 1;flex-direction:column;gap:16px;min-width:0}.student-card-block{background-color:#fff;border-radius:12px;box-shadow:0 1px 6px #00000012;padding:20px 24px}.sd-section-heading{border-bottom:2px solid #f3f4f6;color:#1f2937;font-size:14px;font-weight:700;margin:0 0 16px;padding-bottom:10px}.sd-grid{grid-gap:0;display:grid;gap:0;grid-template-columns:1fr 1fr}.sd-info-row{border-bottom:1px solid #f9fafb;display:flex;flex-direction:column;padding:9px 12px 9px 0}.sd-grid .sd-info-row:nth-last-child(-n+2){border-bottom:none}.sd-info-label{color:#9ca3af;font-size:11px;font-weight:600;letter-spacing:.4px;margin-bottom:3px;text-transform:uppercase}.sd-info-value{color:#1f2937;font-size:14px;font-weight:500;word-break:break-word}.batch-card .sd-info-row{align-items:center;border-bottom:1px solid #f9fafb;flex-direction:row;gap:8px;justify-content:space-between;padding:7px 0}.batch-card .sd-info-row:last-child{border-bottom:none}.batch-card .sd-info-label{color:#6b7280;flex-shrink:0;font-size:12px;letter-spacing:0;text-transform:none}.batch-card .sd-info-value{font-size:13px;text-align:right}.sd-status-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;padding:2px 10px;text-transform:uppercase}.sd-status-active{background:#dcfce7;color:#16a34a}.sd-status-inactive{background:#f3f4f6;color:#6b7280}.sd-status-completed{background:#dbeafe;color:#1d4ed8}.sd-status-deleted{background:#fee2e2;color:#dc2626}.sd-status-enrolled{background:#dcfce7;color:#16a34a}.sd-status-pending{background:#fef9c3;color:#a16207}.sd-rating{background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;color:#0369a1;display:inline-block;font-size:13px;font-weight:600;padding:2px 10px}.student-performance-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:0}.add-btn{background-color:#6366f1;border-radius:7px;font-size:13px;font-weight:600;padding:7px 14px;transition:background-color .2s ease}.add-btn:hover{background-color:#4f46e5}.student-details-table{border-collapse:collapse;font-size:13.5px;width:100%}.student-details-table td,.student-details-table th{border-bottom:1px solid #f0f0f0;color:#374151;padding:10px 12px;text-align:left;vertical-align:top}.student-details-table th{background-color:#f9fafb;color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.student-details-table tr:last-child td{border-bottom:none}.overlay{height:90vh}.custom-loader{animation:spin .9s linear infinite;border:4px solid #e5e7eb;border-top-color:#6366f1;height:48px;margin-bottom:12px;width:48px}.loading-text{color:#6b7280;font-size:15px}.error-text{color:#dc2626;font-size:15px}.notif-trigger-btn{background-color:#7c3aed;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 18px;transition:background-color .2s ease}.notif-trigger-btn:hover{background-color:#6d28d9}.notif-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.notif-modal{background:#fff;border-radius:14px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:620px;overflow:hidden;width:100%}.notif-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px 16px}.notif-modal-header h2{color:#111827;font-size:1.15rem;font-weight:700;margin:0}.notif-close-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:22px;line-height:1;padding:2px 6px;transition:background .2s}.notif-close-btn:hover{background:#f3f4f6;color:#111827}.notif-modal-body{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:20px 24px}.notif-radio-group{display:flex;gap:12px}.notif-radio-option{align-items:center;border:2px solid #e5e7eb;border-radius:10px;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:border-color .2s,background .2s;-webkit-user-select:none;user-select:none}.notif-radio-option input[type=radio]{display:none}.notif-radio-option:hover{background:#f5f3ff;border-color:#a78bfa}.notif-radio-selected{background:#f5f3ff;border-color:#7c3aed;color:#7c3aed}.notif-radio-icon{font-size:16px}.notif-email-fields{gap:16px}.notif-email-fields,.notif-field{display:flex;flex-direction:column}.notif-field{gap:6px}.notif-label{align-items:center;color:#374151;display:flex;flex-wrap:wrap;font-size:13px;font-weight:600;gap:8px}.notif-param-hint{color:#9ca3af;font-size:11px;font-style:italic;font-weight:400}.notif-input{border:1.5px solid #d1d5db;border-radius:8px;color:#111827;font-size:14px;outline:none;padding:9px 12px;transition:border-color .2s}.notif-input:focus{border-color:#7c3aed}.notif-textarea{border:1.5px solid #d1d5db;border-radius:8px;color:#111827;font-family:inherit;font-size:14px;outline:none;padding:9px 12px;resize:vertical;transition:border-color .2s}.notif-textarea:focus{border-color:#7c3aed}.notif-file-input-hidden{display:none}.notif-file-btn{align-items:center;align-self:flex-start;background:#f9fafb;border:1.5px dashed #9ca3af;border-radius:8px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:border-color .2s,color .2s,background .2s}.notif-file-btn:hover{background:#f5f3ff;border-color:#7c3aed;color:#7c3aed}.notif-file-hint{color:#9ca3af;font-size:11px}.notif-attachments-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.notif-attachment-chip{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;color:#374151;display:flex;font-size:12px;gap:5px;max-width:240px;padding:4px 10px 4px 8px}.notif-attachment-icon{font-size:13px}.notif-attachment-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-attachment-size{color:#9ca3af;flex-shrink:0;font-size:11px}.notif-attachment-remove{background:none;border:none;color:#9ca3af;cursor:pointer;flex-shrink:0;font-size:14px;line-height:1;margin-left:2px;padding:0}.notif-attachment-remove:hover{color:#ef4444}.notif-preview-toggle{align-self:flex-start;background:none;border:none;color:#7c3aed;cursor:pointer;font-size:13px;font-weight:600;padding:4px 0;text-decoration:underline;text-underline-offset:3px}.notif-preview-toggle:hover{color:#6d28d9}.notif-preview-wrapper{border:1.5px solid #e5e7eb;border-radius:10px;overflow:hidden}.notif-preview-bar{align-items:center;background:#f3f4f6;border-bottom:1px solid #e5e7eb;color:#6b7280;display:flex;font-size:12px;font-weight:600;justify-content:space-between;padding:8px 14px}.notif-preview-hint{color:#9ca3af;font-size:11px;font-weight:400}.notif-email-preview{background:#fff}.preview-email-chrome{align-items:center;background:#e5e7eb;border-bottom:1px solid #d1d5db;display:flex;gap:10px;padding:8px 12px}.preview-chrome-dots{display:flex;gap:5px}.preview-chrome-dots span{background:#9ca3af;border-radius:50%;display:block;height:10px;width:10px}.preview-chrome-dots span:first-child{background:#ef4444}.preview-chrome-dots span:nth-child(2){background:#f59e0b}.preview-chrome-dots span:nth-child(3){background:#22c55e}.preview-chrome-title{color:#6b7280;font-size:12px;font-weight:500}.preview-email-body-wrapper{display:flex;flex-direction:column;gap:8px;padding:16px 18px}.preview-meta-row{color:#374151;display:flex;font-size:13px;gap:10px}.preview-field-label{color:#6b7280;flex-shrink:0;font-weight:600;min-width:50px}.preview-field-value{color:#374151}.preview-subject-row{border-bottom:1px solid #f0f0f0;margin-bottom:4px;padding-bottom:10px}.preview-subject-text{color:#111827;font-size:15px;font-weight:700}.preview-email-content{color:#374151;font-size:13.5px;line-height:1.6;min-height:60px}.preview-empty{color:#d1d5db;font-style:italic}.preview-attachments-row{border-top:1px solid #f0f0f0;display:flex;flex-direction:column;gap:6px;padding-top:10px}.preview-attachments-label{color:#6b7280;font-size:12px;font-weight:600}.preview-attachment-chips{display:flex;flex-wrap:wrap;gap:6px}.preview-attachment-pill{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;font-size:11.5px;padding:3px 10px}.notif-status{border-radius:8px;font-size:13.5px;font-weight:500;padding:10px 14px}.notif-status-success{background:#dcfce7;border:1px solid #bbf7d0;color:#16a34a}.notif-status-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.notif-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.notif-cancel-btn{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:9px 20px;transition:background .2s}.notif-cancel-btn:hover:not(:disabled){background:#f3f4f6}.notif-send-btn{background:#7c3aed;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 24px;transition:background .2s,opacity .2s}.notif-send-btn:hover:not(:disabled){background:#6d28d9}.notif-cancel-btn:disabled,.notif-send-btn:disabled{cursor:not-allowed;opacity:.5}.wa-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%236b7280' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;cursor:pointer;padding-right:30px}.wa-params-list{display:flex;flex-direction:column;gap:10px;margin-top:4px}.wa-param-row{align-items:flex-start;display:flex;gap:10px}.wa-param-name{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;flex-shrink:0;font-size:13px;font-weight:600;line-height:1.2;max-width:130px;min-width:110px;padding:8px 10px;text-align:center;word-break:break-word}.wa-param-select-wrap{display:flex;flex:1 1;flex-direction:column;gap:6px}.wa-custom-textarea{font-size:13px;min-height:52px}.wa-assignment-picker{display:flex;flex-direction:column;gap:6px}.wa-assignment-link-preview{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;color:#3b82f6;display:block;font-family:monospace;font-size:11.5px;padding:5px 9px;word-break:break-all}.wa-preview-wrapper{border:1.5px solid #e5e7eb;border-radius:10px;overflow:hidden}.wa-preview-bar{align-items:center;background:#25d366;color:#fff;display:flex;font-size:12px;font-weight:600;justify-content:space-between;padding:8px 14px}.wa-preview-screen{background:#e5ddd5;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='80' height='80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h40v40H0V0zm40 40h40v40H40V40zm0-40h2l-2 2V0zm0 4 4-4h2l-6 6V4zm0 4 8-8h2L40 10V8zm0 4L52 0h2L40 14v-2zm0 4L56 0h2L40 18v-2zm0 4L60 0h2L40 22v-2zm0 4L64 0h2L40 26v-2zm0 4L68 0h2L40 30v-2zm0 4L72 0h2L40 34v-2zm0 4L76 0h2L40 38v-2zm0 4L80 0v2L42 40h-2zm4 0L80 4v2L46 40h-2zm4 0L80 8v2L50 40h-2zm4 0 28-28v2L54 40h-2zm4 0 24-24v2L58 40h-2zm4 0 20-20v2L62 40h-2zm4 0 16-16v2L66 40h-2zm4 0 12-12v2L70 40h-2zm4 0 8-8v2l-6 6h-2zm4 0 4-4v2l-2 2h-2zm4 0z' fill='%23c8b9a8' fill-opacity='.3' fill-rule='evenodd'/%3E%3C/svg%3E");display:flex;justify-content:flex-end;min-height:100px;padding:12px}.wa-preview-bubble{background:#dcf8c6;border-radius:10px 0 10px 10px;box-shadow:0 1px 2px #00000021;display:flex;flex-direction:column;gap:2px;max-width:85%;padding:8px 12px 4px}.wa-preview-text{color:#111827;font-size:14px;line-height:1.5;margin:0;word-break:break-word}.wa-preview-meta{color:#6b7280;font-size:10.5px;margin-top:2px;text-align:right}.sd-log-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;padding:2px 10px;text-transform:capitalize;white-space:nowrap}.sd-log-login{background:#dcfce7;color:#166534}.sd-log-logout{background:#fee2e2;color:#991b1b}.sd-log-page_visit{background:#dbeafe;color:#1e40af}.sd-log-assignment_access{background:#fef9c3;color:#854d0e}.sd-log-test_access{background:#ede9fe;color:#5b21b6}.sd-log-button_click{background:#ffedd5;color:#9a3412}@media (max-width:900px){.student-details-layout{flex-direction:column}.batch-right-section{flex:none;flex-direction:row;flex-wrap:wrap;gap:14px;width:100%}.batch-right-section>*{flex:1 1 260px;min-width:0}}@media (max-width:767px){.student-details-container{padding:14px 12px}.student-header{border-radius:12px;flex-wrap:wrap;gap:12px;margin-bottom:14px;padding:14px 16px}.student-header-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.edit-btn,.notif-trigger-btn{font-size:13px;padding:8px 14px}.batch-right-section{flex-direction:column;gap:12px}.batch-right-section>*{flex:none;width:100%}.student-card-block{border-radius:10px;padding:14px 16px}.sd-grid{grid-template-columns:1fr}.sd-grid .sd-info-row:nth-last-child(-n+2){border-bottom:1px solid #f9fafb}.sd-grid .sd-info-row:last-child{border-bottom:none}.notif-modal{border-radius:12px 12px 0 0;bottom:0;left:0;max-height:95vh;max-width:100%;position:fixed;right:0;top:auto}.notif-radio-group{flex-direction:column;gap:8px}}@media (max-width:479px){.student-header h1{font-size:1.15rem}.student-avatar{font-size:18px;height:42px;width:42px}}.sd-primary-tag{background:#eef2ff;border-radius:9px;color:#3730a3;display:inline-block;font-size:10.5px;font-weight:600;letter-spacing:.3px;margin-left:8px;padding:1px 7px;text-transform:uppercase;vertical-align:middle}.sd-batch-info+.sd-batch-info{border-top:1px solid #e5e7eb;margin-top:14px;padding-top:14px}.note-container{font-family:Arial,sans-serif;font-size:14px;margin:auto;width:60%}.note-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.add-note-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:700;padding:8px 14px;transition:background-color .2s ease}.add-note-btn:hover{background-color:#0056b3}.note-table{background-color:#fff;border-collapse:collapse;border-radius:6px;box-shadow:0 2px 6px #0000001a;font-size:13px;overflow:hidden;width:100%}.note-table td,.note-table th{border:1px solid #ccc;padding:10px;text-align:left}.note-table th{background-color:#007bff;color:#fff;font-weight:700}.dialog-backdrop{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:999}.dialog-box{box-shadow:0 4px 12px #0003;padding:25px}.dialog-box h4{color:#333;font-size:18px;margin-bottom:20px}.form-group{align-items:flex-start!important;margin-bottom:16px}.form-group label{color:#333;font-weight:700;margin-bottom:6px}.form-group input{border:1px solid #ccc;border-radius:5px;font-size:14px;padding:10px;transition:border-color .2s ease}.form-group input:focus{border-color:#007bff;box-shadow:0 0 3px #007bff44;outline:none}.dialog-actions{gap:10px;justify-content:flex-end}.dialog-actions button{border:none;border-radius:4px;cursor:pointer;font-weight:700;padding:8px 14px;transition:background-color .2s ease}.dialog-actions button:hover{opacity:.9}.dialog-actions button:first-child{background-color:#007bff;color:#fff}.close-btn{background-color:#dc3545;color:#fff}.popup-backdrop{background-color:#0000004d;height:100%;width:100%;z-index:999}.popup-box{background:#fff;border-radius:8px;box-shadow:0 0 10px #888;padding:20px 30px}.popup-box button{background:#007bff;color:#fff;cursor:pointer;margin-top:15px;padding:8px 15px}.af-page{background-color:#f1f5f9;font-family:Segoe UI,sans-serif;min-height:100vh;padding:28px 24px}.af-card{background:#fff;border-radius:16px;box-shadow:0 1px 8px #00000014,0 4px 24px #0000000a;margin:0 auto;max-width:780px;overflow:hidden}.af-header{border-bottom:1px solid #f3f4f6;gap:14px;padding:24px 32px 22px}.af-header,.af-header-icon{align-items:center;display:flex}.af-header-icon{border-radius:12px;flex-shrink:0;font-size:20px;height:44px;justify-content:center;width:44px}.af-header-icon.green{background:#dcfce7}.af-header-icon.indigo{background:#e0e7ff}.af-header-icon.amber{background:#fef9c3}.af-header-icon.violet{background:#ede9fe}.af-header-icon.sky{background:#e0f2fe}.af-title{color:#111827;font-size:1.2rem;font-weight:700;margin:0 0 3px}.af-subtitle{color:#9ca3af;font-size:12.5px;margin:0}.af-alert{border-radius:8px;font-size:13.5px;font-weight:500;margin:0 32px;padding:11px 16px}.af-alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.af-alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.af-body{gap:28px;padding:28px 32px}.af-body,.af-section{display:flex;flex-direction:column}.af-section{gap:16px}.af-section-header-row{align-items:center;border-bottom:1.5px solid #f3f4f6;display:flex;gap:12px;justify-content:space-between;padding-bottom:9px}.af-section-header-row .af-section-title{border-bottom:none;padding-bottom:0}.af-same-address-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:7px;-webkit-user-select:none;user-select:none;white-space:nowrap}.af-same-address-checkbox{accent-color:#6366f1;cursor:pointer;flex-shrink:0;height:16px;width:16px}.af-section-title{border-bottom:1.5px solid #f3f4f6;color:#9ca3af;font-size:11px;font-weight:700;letter-spacing:.8px;margin:0;padding-bottom:9px;text-transform:uppercase}.af-row{grid-gap:16px;grid-template-columns:1fr 1fr}.af-row,.af-row-3{display:grid;gap:16px}.af-row-3{grid-gap:16px;grid-template-columns:1fr 1fr 1fr}.af-field{display:flex;flex-direction:column;gap:5px}.af-label{color:#374151;font-size:13px;font-weight:600}.af-required{color:#ef4444;margin-left:2px}.af-field input[type=date],.af-field input[type=datetime-local],.af-field input[type=email],.af-field input[type=number],.af-field input[type=text],.af-field input[type=time],.af-field select,.af-field textarea,.af-input,.af-select,.af-textarea{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-family:inherit;font-size:14px;padding:10px 13px;transition:border-color .18s,box-shadow .18s;width:100%}.af-field input:focus,.af-field select:focus,.af-field textarea:focus,.af-input:focus,.af-select:focus,.af-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f;outline:none}.af-field textarea,.af-textarea{min-height:90px;resize:vertical}.af-field select,.af-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='m1 1 5 5 5-5' stroke='%236b7280' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;cursor:pointer;padding-right:36px}.af-field .error-input,.af-field input.is-error,.af-field select.is-error,.af-field textarea.is-error,.error-input{background:#fff5f5;border-color:#ef4444!important}.af-error,.error-text{color:#ef4444;font-size:12px;margin:0}.af-day-grid{display:flex;flex-wrap:wrap;gap:8px}.af-day-chip{background:#f9fafb;border:1.5px solid #d1d5db;border-radius:20px;color:#6b7280;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;transition:all .15s;-webkit-user-select:none;user-select:none}.af-day-chip:hover{background:#f0f0ff;border-color:#6366f1;color:#6366f1}.af-day-chip.selected{background:#6366f1;border-color:#6366f1;color:#fff}.af-time-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.af-action-strip{display:flex;gap:10px}.af-secondary-btn{align-items:center;background:#f9fafb;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:9px 18px;transition:border-color .15s,background .15s}.af-secondary-btn:hover{background:#f5f3ff;border-color:#6366f1;color:#6366f1}.af-submit-row{border-top:1px solid #f3f4f6;padding:20px 32px 28px}.af-cancel-btn{background:#fff;border:1.5px solid #d1d5db;border-radius:10px;color:#374151;cursor:pointer;font-size:15px;font-weight:600;padding:13px 24px;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}.af-cancel-btn:hover:not(:disabled){background:#f5f3ff;border-color:#6366f1;color:#6366f1}.af-cancel-btn:disabled{cursor:not-allowed;opacity:.5}.af-submit{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;letter-spacing:.2px;padding:13px;transition:opacity .2s,transform .1s;width:100%}.af-submit:hover:not(:disabled){opacity:.92}.af-submit:active:not(:disabled){transform:scale(.99)}.af-submit:disabled{cursor:not-allowed;opacity:.55}.af-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0a148c;display:flex;flex-direction:column;gap:14px;inset:0;justify-content:center;position:fixed;z-index:9999}.af-spinner{animation:af-spin .8s linear infinite;border:4px solid #fff3;border-radius:50%;border-top-color:#fff;height:48px;width:48px}@keyframes af-spin{to{transform:rotate(1turn)}}.af-overlay-text{color:#fff;font-size:15px;font-weight:500}.af-toggle-row{align-items:center;border-bottom:1px solid #f9fafb;display:flex;justify-content:space-between;padding:12px 0}.af-toggle-row:last-child{border-bottom:none}.af-toggle-label{color:#374151;font-size:13.5px;font-weight:500}.af-toggle{flex-shrink:0;height:24px;position:relative;width:42px}.af-toggle input{height:0;opacity:0;position:absolute;width:0}.af-toggle-track{background:#d1d5db;border-radius:12px;cursor:pointer;inset:0;position:absolute;transition:background .2s}.af-toggle input:checked+.af-toggle-track{background:#6366f1}.af-toggle-track:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:18px;left:3px;position:absolute;top:3px;transition:transform .2s;width:18px}.af-toggle input:checked+.af-toggle-track:after{transform:translateX(18px)}@media (max-width:600px){.af-page{padding:16px 12px}.af-header{padding:18px 20px 16px}.af-body{gap:20px;padding:20px}.af-submit-row{padding:16px 20px 20px}.af-row,.af-row-3,.af-time-row{grid-template-columns:1fr}.af-alert{margin:0 20px}}.af-hint{color:#6b7280;display:block;font-size:11.5px;line-height:1.4;margin-top:5px}.af-switch{align-items:center;color:#111827;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;-webkit-user-select:none;user-select:none}.af-switch input[type=checkbox]{accent-color:#4f46e5;cursor:pointer;height:16px;width:16px}.dialog-box{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0003;margin:100px auto auto;padding:20px;position:relative;width:400px}.dialog-actions{display:flex;justify-content:space-between;margin-top:20px}.update-btn{background-color:green}.update-delete-btn{background-color:initial!important;border:1px solid red!important;border-radius:4px;color:red!important;cursor:pointer;padding:10px 20px}.cancel-btn{background-color:red;border:1px solid red;border-radius:5px;color:#fff;font-size:16px;font-weight:700;padding:4px 10px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:14px;margin-top:4px;padding:10px;width:100%}.form-group textarea{min-height:60px;resize:vertical}.student-dropdown-column-row{display:flex;flex:1 1;flex-direction:column;min-width:100px}.student-dropdown-column-label{color:#333;font-size:14px;font-weight:600;margin-bottom:6px}.student-dropdown-column-filter{font-size:14px}.student-dropdown__control{border:1px solid #ccc;border-radius:6px;box-shadow:none;min-height:36px;transition:border-color .2s ease}.student-dropdown__control:hover{border-color:#666}.student-dropdown__control--is-focused{border-color:#4a90e2;box-shadow:0 0 0 1px #4a90e2}.student-dropdown__menu{border-radius:6px;z-index:10}.student-dropdown__option{font-size:14px;padding:8px 12px}.student-dropdown__option--is-focused{background-color:#f0f8ff}.student-dropdown__option--is-selected{background-color:#4a90e2;color:#fff}.student-dropdown__placeholder{color:#888}.lp-page{background:#f1f5f9;box-sizing:border-box;min-height:100vh;padding:24px 28px}.lp-header{background:#fff;border-radius:14px;box-shadow:0 1px 6px #00000012;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:14px;padding:16px 22px}.lp-header,.lp-header-left{align-items:center;display:flex}.lp-header-left{gap:10px}.lp-title{color:#1e293b;font-size:18px;font-weight:700;margin:0}.lp-count{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#64748b;font-size:12px;font-weight:600;padding:3px 10px}.lp-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.lp-btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:9px;color:#fff;cursor:pointer;font-size:13.5px;font-weight:600;padding:9px 18px;transition:opacity .18s;white-space:nowrap}.lp-btn-primary:hover{opacity:.88}.lp-btn-secondary{background:#fff;border:1.5px solid #d1d5db;border-radius:9px;color:#374151;cursor:pointer;font-size:13.5px;font-weight:500;padding:8px 16px;transition:border-color .18s,color .18s,background .18s;white-space:nowrap}.lp-btn-secondary:hover{background:#f5f3ff;border-color:#6366f1;color:#6366f1}.lp-toolbar{background:#fff;border-radius:14px;box-shadow:0 1px 6px #00000012;display:flex;flex-direction:column;gap:12px;margin-bottom:14px;padding:14px 20px}.lp-search-wrap{max-width:340px;position:relative}.lp-search-icon{color:#94a3b8;font-size:14px;left:12px;line-height:1;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.lp-search{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:9px;box-sizing:border-box;color:#1e293b;font-size:14px;outline:none;padding:9px 13px 9px 36px;transition:border-color .18s,box-shadow .18s;width:100%}.lp-search:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.lp-filters{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px}.lp-table-card{background:#fff;border-radius:14px;box-shadow:0 1px 6px #00000012;margin-bottom:14px;overflow:hidden;overflow-x:auto}.lp-table{border-collapse:collapse;min-width:600px;width:100%}.lp-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.6px;padding:11px 16px;text-align:left;text-transform:uppercase;transition:color .14s;-webkit-user-select:none;user-select:none;white-space:nowrap}.lp-table thead th:hover{color:#6366f1}.lp-table tbody tr{border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .14s}.lp-table tbody tr:last-child{border-bottom:none}.lp-table tbody tr:hover{background:#f5f3ff}.lp-table tbody td{color:#374151;font-size:13.5px;padding:13px 16px}.lp-sort-asc:after{color:#6366f1;content:" ↑";font-size:11px}.lp-sort-desc:after{color:#6366f1;content:" ↓";font-size:11px}.lp-state{color:#94a3b8;font-size:14px;padding:56px 0;text-align:center}.lp-spinner{animation:lp-spin .8s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#6366f1;height:34px;margin:0 auto 12px;width:34px}@keyframes lp-spin{to{transform:rotate(1turn)}}.lp-pagination{align-items:center;background:#fff;border-radius:14px;box-shadow:0 1px 6px #00000012;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:12px 20px}.lp-page-info{color:#64748b}.lp-page-btn,.lp-page-info{font-size:13.5px;font-weight:500}.lp-page-btn{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;color:#374151;cursor:pointer;padding:7px 16px;transition:all .15s}.lp-page-btn:hover:not(:disabled){background:#f5f3ff;border-color:#6366f1;color:#6366f1}.lp-page-btn:disabled{cursor:not-allowed;opacity:.38}.lp-page-size{align-items:center;display:flex;gap:8px;margin-left:6px}.lp-page-size label{color:#64748b;font-size:13px}.lp-page-size select{background:#fff;border:1.5px solid #e2e8f0;border-radius:7px;cursor:pointer;font-size:13px;outline:none;padding:6px 10px;transition:border-color .18s}.lp-page-size select:focus{border-color:#6366f1}.lp-toast{animation:lp-fadeIn .25s ease;background:#22c55e;border-radius:10px;box-shadow:0 4px 14px #00000024;color:#fff;font-size:14px;font-weight:500;padding:12px 20px;position:fixed;right:22px;top:22px;z-index:9999}@keyframes lp-fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.lp-toast.lp-toast-error{background:#dc2626;line-height:1.5;max-width:420px}.lp-overlay{align-items:center;animation:lp-fadeIn .18s ease;background:#0f172a75;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.lp-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000029;padding:2rem;text-align:center;width:360px}.lp-modal.lp-modal-error{max-width:90vw;text-align:left;width:560px}.lp-modal.lp-modal-error h3{text-align:center}.lp-error-msg{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.6;max-height:240px;overflow-y:auto;padding:12px 14px;white-space:pre-wrap;word-break:break-word}.lp-error-hint,.lp-error-msg{font-size:13px;margin:0 0 16px}.lp-error-hint{color:#64748b;text-align:center}.lp-modal.lp-modal-error .lp-modal-btn-row{display:flex;justify-content:center}.lp-modal h3{color:#1e293b;font-size:16px;font-weight:700;margin:0 0 10px}.lp-modal p{color:#64748b;font-size:14px;margin:0 0 18px}.lp-modal-btn{background:#6366f1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 22px;transition:background .18s}.lp-modal-btn:hover{background:#4f46e5}.lp-drop-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000029;max-width:90vw;padding:2rem 2.5rem;text-align:center;width:420px}.lp-drop-zone{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;padding:2rem;transition:all .18s}.lp-drop-zone h3{color:#1e293b;font-size:16px;font-weight:700;margin:0 0 6px}.lp-drop-zone p{color:#64748b;font-size:14px;margin:0 0 16px}.lp-drag-active{background:#eef2ff;border-color:#6366f1}.lp-drop-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:14px}@media (max-width:767px){.lp-page{padding:14px 12px}.lp-header{border-radius:12px;padding:12px 14px}.lp-header-left{flex-wrap:wrap}.lp-title{font-size:16px}.lp-header-actions{justify-content:flex-start;width:100%}.lp-btn-primary,.lp-btn-secondary{flex:1 1;font-size:13px;justify-content:center;padding:8px 14px;text-align:center}.lp-toolbar{border-radius:12px;padding:12px 14px}.lp-search-wrap{max-width:100%;width:100%}.lp-search{font-size:14px}.lp-filters{gap:8px}.lp-table-card{border-radius:12px}.lp-table{min-width:520px}.lp-table tbody td,.lp-table thead th{font-size:12.5px;padding:10px 12px}.lp-pagination{border-radius:12px;gap:8px;padding:10px 14px}.lp-page-btn{font-size:13px;padding:7px 12px}.lp-drop-modal,.lp-modal{padding:1.5rem;width:calc(100vw - 40px)}}@media (max-width:479px){.lp-page{padding:10px 8px}.lp-btn-primary,.lp-btn-secondary{font-size:12px;padding:7px 10px}.lp-title{font-size:15px}}.lp-import-dialog{background:#fff;border-radius:18px;box-shadow:0 8px 30px #0000002e;padding:2rem;text-align:center;width:360px}.lp-import-dialog h3{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1.2rem}.lp-import-spinner{animation:lp-spin .8s linear infinite;border:5px solid #e5e7eb;border-radius:50%;border-top-color:#6366f1;height:52px;margin:0 auto 1.2rem;width:52px}.lp-import-dialog p{color:#64748b;font-size:14px;margin:0}.lp-job-card{animation:lp-card-in .3s cubic-bezier(.34,1.56,.64,1);background:#fff;border:1.5px solid #e2e8f0;border-radius:16px;bottom:28px;box-shadow:0 8px 32px #00000029;display:flex;flex-direction:column;gap:10px;padding:18px 20px;position:fixed;right:28px;width:320px;z-index:9999}@keyframes lp-card-in{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.lp-job-card.lp-job-done{border-color:#86efac}.lp-job-card.lp-job-failed{border-color:#fca5a5}.lp-job-card-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.lp-job-card-title{color:#1e293b;font-size:14px;font-weight:700}.lp-job-done .lp-job-card-title{color:#166534}.lp-job-failed .lp-job-card-title{color:#991b1b}.lp-job-card-dismiss{background:none;border:none;color:#94a3b8;cursor:pointer;flex-shrink:0;font-size:20px;line-height:1;padding:0}.lp-job-card-dismiss:hover{color:#1e293b}.lp-progress-track{background:#e2e8f0;border-radius:99px;height:6px;overflow:hidden}.lp-progress-fill{background:linear-gradient(90deg,#6366f1,#4f46e5);border-radius:99px;height:100%;transition:width .5s ease}.lp-job-done .lp-progress-fill{background:linear-gradient(90deg,#22c55e,#16a34a)}.lp-job-failed .lp-progress-fill{background:linear-gradient(90deg,#ef4444,#dc2626)}.lp-job-card-count{color:#475569;font-size:12px;font-weight:600;margin:0}.lp-job-card-msg{color:#64748b;font-size:13px;line-height:1.45;margin:0;word-break:break-word}.lp-job-failed .lp-job-card-msg{color:#b91c1c}.lp-job-card-note{color:#94a3b8;font-size:11.5px;margin:0}.success-toast{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;color:#166534;font-size:14px;font-weight:500;margin-bottom:14px;padding:12px 18px}.lp-btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:9px;color:#fff;cursor:pointer;font-size:13.5px;font-weight:600;padding:9px 18px;transition:opacity .18s;white-space:nowrap}.lp-btn-danger:hover:not(:disabled){opacity:.88}.lp-btn-danger:disabled{cursor:not-allowed;opacity:.5}.lp-row-action-btn{border:1.5px solid #0000;border-radius:7px;cursor:pointer;font-size:12.5px;font-weight:600;padding:5px 12px;transition:background .15s,color .15s,border-color .15s}.lp-row-edit{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.lp-row-edit:hover{background:#dbeafe}.lp-row-delete{background:#fef2f2;border-color:#fecaca;color:#dc2626}.lp-row-delete:hover{background:#fee2e2}.bl-status-filter,.sl-status-filter{display:flex;flex-direction:column;gap:2px;min-width:120px}.bl-status-filter label,.sl-status-filter label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.bl-status-filter select,.sl-status-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#111827;cursor:pointer;font-size:13.5px;padding:8px 10px}.sl-upload-icon{display:block;font-size:36px;margin-bottom:10px}.sl-drop-note{color:#94a3b8;font-size:12px;line-height:1.6;margin:12px 0 0}.sl-error-modal{max-width:94vw;text-align:left;width:460px}.sl-error-modal h3{text-align:center}.sl-success-modal{max-width:94vw;text-align:center;width:460px}.sl-modal-icon{align-items:center;border-radius:50%;display:flex;font-size:22px;font-weight:700;height:48px;justify-content:center;margin:0 auto 14px;width:48px}.sl-modal-icon--error{background:#fee2e2;color:#dc2626}.sl-modal-icon--success{background:#dcfce7;color:#16a34a}.sl-error-body{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:10px;max-height:180px;overflow-y:auto;padding:12px 14px}.sl-error-body p{color:#7f1d1d;font-family:monospace;font-size:13px;margin:0 0 4px;white-space:pre-wrap;word-break:break-word}.sl-error-body p:last-child{margin-bottom:0}.sl-error-hint{color:#64748b;font-size:13px;margin:0 0 16px}.sl-modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.sl-success-table-wrap{border:1px solid #e2e8f0;border-radius:10px;margin-top:12px;max-height:260px;overflow-y:auto}.sl-success-table{border-collapse:collapse;width:100%}.sl-success-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.5px;padding:9px 14px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0}.sl-success-table tbody tr{border-bottom:1px solid #f1f5f9}.sl-success-table tbody tr:last-child{border-bottom:none}.sl-success-table tbody td{color:#374151;font-size:13.5px;padding:9px 14px;text-align:left}.sl-success-table tbody tr:nth-child(2n){background:#f8fafc}.sl-tag-list{display:flex;flex-wrap:wrap;gap:4px}.sl-tag{background:#eef2ff;border-radius:11px;color:#3730a3;display:inline-block;font-size:12px;font-weight:500;line-height:1.5;padding:2px 8px;white-space:nowrap}.sl-tag--course{background:#ecfdf5;color:#065f46}.sl-activity{display:flex;flex-direction:column;gap:1px;min-width:170px}.sl-activity-time{color:#1f2937;font-size:13px;white-space:nowrap}.sl-activity-detail{color:#6b7280;font-size:11px;line-height:1.35}.sl-activity-none{color:#9ca3af;font-size:12px;font-style:italic}.dropdown__menu{min-width:260px;overflow-x:hidden}.dropdown__option{line-height:1.3;overflow-wrap:break-word;white-space:normal!important;word-break:break-word}.dropdown__single-value{white-space:normal;word-break:break-word}.dropdown__control{min-height:38px}.dropdown__menu-list{max-height:300px;overflow-x:hidden;overflow-y:auto}.msd-wrapper{flex:1 1;min-width:100px}.msd-option-checkbox{accent-color:#2563eb;margin-right:9px;pointer-events:none;vertical-align:middle}.af-email-tags-wrapper{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:text;display:flex;flex-wrap:wrap;gap:6px;min-height:40px;padding:6px 10px}.af-email-tags-wrapper.error-input{border-color:#ef4444}.af-email-tag{align-items:center;background:#ede9fe;border-radius:20px;color:#4f46e5;display:inline-flex;font-size:13px;font-weight:500;gap:4px;padding:2px 10px;white-space:nowrap}.af-email-tag-remove{background:none;border:none;color:#6d28d9;cursor:pointer;font-size:15px;line-height:1;margin-left:2px;padding:0}.af-email-tag-remove:hover{color:#dc2626}.af-email-tag-input{background:#0000;border:none;flex:1 1;font-size:14px;min-width:160px;outline:none;padding:2px 0}.af-email-add-btn{background:none;border:1px solid #6366f1;border-radius:6px;color:#6366f1;cursor:pointer;font-size:13px;margin-top:6px;padding:4px 12px;transition:background .15s}.af-email-add-btn:hover{background:#ede9fe}.af-checkbox-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:8px;margin:8px 0;-webkit-user-select:none;user-select:none}.af-checkbox-label input[type=checkbox]{accent-color:#6366f1;cursor:pointer;height:16px;width:16px}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0000004d;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:999}.modal-content{background-color:#fff;border-radius:12px;box-shadow:0 10px 25px #00000040;padding:30px 40px;position:relative;width:400px}.modal-title{font-size:20px;font-weight:600;margin-bottom:20px;margin-top:0}.modal-form{display:flex;flex-direction:column;gap:15px}.form-group label{display:block;font-weight:500;margin-bottom:5px}.input-field{border:1px solid #ccc;border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;padding:10px 12px;transition:border-color .3s}.input-field:focus{border-color:#4a90e2}.error-border{border-color:red!important}.error-text{font-weight:500;margin-left:2px}.performance-cancel-btn{background-color:#f44336;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:10px;padding:10px 18px}.performance-cancel-btn:hover{background-color:#d32f2f}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.save-btn{background-color:#00f;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;margin-top:10px;padding:10px 18px}.save-btn:hover{background-color:#00c}.error-popup{background-color:#ffe0e0;border:1px solid #d8000c;border-radius:8px;color:#d8000c;font-size:14px;font-weight:500;margin-bottom:10px;padding:12px 14px;position:relative}.performance-dialog-box{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0003;margin:100px auto auto;padding:20px;position:relative;width:400px}.cancel-btn{background:#0000;border:none;font-size:20px;position:absolute;right:10px;top:10px}.performance-dialog-actions{display:flex;justify-content:space-between;margin-top:20px}.update-performance-btn{background-color:blue;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 20px}.update-performance-delete-btn{background-color:initial!important;border:1px solid red!important;border-radius:4px;color:red!important;cursor:pointer;padding:10px 20px}.cancel-performance-btn{background-color:red;border:1px solid red;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:4px 10px;position:absolute;right:10px;top:10px}.cancel-btn:hover{background-color:#d50a0af2}.performance-popup-backdrop{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.performance-popup-box{background-color:#fff;border-radius:10px;box-shadow:0 8px 24px #00000040;max-width:400px;padding:25px 30px;text-align:center;width:90%}.delete-performance-confirm-actions{display:flex;gap:20px;justify-content:center;margin-top:20px}.btn-performance-ok{background-color:#e74c3c!important}.btn-performance-cancel,.btn-performance-ok{border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:700;padding:8px 20px}.btn-performance-cancel{background-color:#27ae60!important}.btn-performance-ok:hover{background-color:#c0392b}.btn-performance-cancel:hover{background-color:#219150}.form-group input{border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:14px;margin-top:4px;padding:10px;width:100%}.update-student-container{background-color:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001a;font-family:Segoe UI,sans-serif;margin:40px auto;max-width:100%;padding:30px}.update-student-container h2{color:#333;margin-bottom:25px;text-align:center}.update-student-form{display:flex;flex-direction:column;gap:18px}.update-student-form select,.update-student-form textarea{background-color:#f9f9f9;border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-size:16px;padding:12px;transition:border-color .3s ease;width:100%}.update-student-form input:focus,.update-student-form select:focus,.update-student-form textarea:focus{border-color:#007bff;outline:none}.update-performances-btn,.update-student-btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background-color .3s ease}.update-performances-btn:hover,.update-student-btn:hover{background-color:#0056b3}.update-performances-btn-wrapper{display:flex}.update-student-success-message{background-color:#d4edda;border-left:5px solid #28a745;border-radius:6px;color:#155724;margin-bottom:20px;padding:10px 15px}.update-student-error-message{background-color:#f8d7da;border-left:5px solid #dc3545;border-radius:6px;color:#721c24;margin-bottom:20px;padding:10px 15px}.update-student-input-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.update-student-input-group label{color:#333;font-size:15px;font-weight:600}.update-student-input-group input,.update-student-input-group select,.update-student-input-group textarea{background-color:#f9f9f9;border:1px solid #ccc;border-radius:6px;font-size:16px;padding:12px;transition:border-color .3s ease,box-shadow .3s ease}.update-student-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.delete-student-btn{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:6px 12px}.delete-batch-btn:hover{background-color:#c82333}.delete-student-popup-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.student-delete-popup{background:#fff;border-radius:10px;box-shadow:0 4px 12px #0003;padding:20px 30px;text-align:center;width:300px}.student-popup-buttons{display:flex;justify-content:space-between;margin-top:20px}.student-popup-btn-ok{background-color:red}.student-popup-btn-cancel,.student-popup-btn-ok{border:none;border-radius:5px;color:#fff;cursor:pointer;padding:8px 16px}.student-popup-btn-cancel{background-color:green}.is-invalid{border:1px solid red!important}.is-invalid-border{border-color:red!important}.us-email-tags-wrapper{align-items:center;background:#fff;border:1px solid #ccc;border-radius:8px;cursor:text;display:flex;flex-wrap:wrap;gap:6px;min-height:42px;padding:6px 10px}.us-email-tag{align-items:center;background:#ede9fe;border-radius:20px;color:#4f46e5;display:inline-flex;font-size:13px;font-weight:500;gap:4px;padding:2px 10px;white-space:nowrap}.us-email-tag-remove{background:none;border:none;color:#6d28d9;cursor:pointer;font-size:15px;line-height:1;margin-left:2px;padding:0}.us-email-tag-remove:hover{color:#dc2626}.us-email-tag-input{background:#0000;border:none;flex:1 1;font-size:14px;min-width:160px;outline:none;padding:2px 0}.us-email-add-btn{background:none;border:1px solid #6366f1;border-radius:6px;color:#6366f1;cursor:pointer;font-size:13px;margin-top:6px;padding:4px 12px;transition:background .15s}.us-email-add-btn:hover{background:#ede9fe}.us-edu-section,.us-edu-sub{display:flex;flex-direction:column;gap:12px}.us-edu-sub{background:#f8f7ff;border-left:3px solid #6366f1;border-radius:0 8px 8px 0;padding:16px}.us-edu-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.us-checkbox-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:8px;margin:4px 0;-webkit-user-select:none;user-select:none}.us-checkbox-label input[type=checkbox]{accent-color:#6366f1;cursor:pointer;height:16px;width:16px}.nm-filters{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.nm-select{font-size:14px;min-width:200px}.nm-select__control{background:#f8fafc!important;border:1.5px solid #e2e8f0!important;border-radius:9px!important;box-shadow:none!important;min-height:40px!important}.nm-select__control--is-focused{background:#fff!important;border-color:#6366f1!important;box-shadow:0 0 0 3px #6366f11a!important}.nm-select__menu{border-radius:9px;overflow:hidden;z-index:20}.nm-select__option--is-focused{background-color:#eef2ff!important}.nm-select__option--is-selected{background-color:#6366f1!important}.nm-date-range{align-items:center;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:9px;display:flex;gap:8px;height:40px;padding:0 12px}.nm-date-range input[type=date]{background:#0000;border:none;color:#1e293b;font-size:13px;outline:none;padding:0}.nm-date-sep{color:#94a3b8;font-size:12px}.nm-nowrap{color:#6b7280;font-size:13px;white-space:nowrap}.nm-entity-cell{align-items:center;display:flex;gap:8px}.nm-entity-name{color:#111827;font-size:13px;font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nm-subject-cell{max-width:280px}.nm-subject{color:#111827;font-size:13px;font-weight:500}.nm-preview,.nm-subject{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nm-preview{color:#6b7280;font-size:12px}.nm-sent-count{color:#059669;font-weight:600}.nm-failed-count{color:#dc2626;font-weight:600;margin-left:2px}.nm-status-cell{display:flex;flex-wrap:wrap;gap:4px}@media (max-width:768px){.nm-select{flex:1 1;min-width:160px}}.ql-badge{border-radius:20px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;white-space:nowrap}.ql-easy{background:#22c55e}.ql-medium{background:#f59e0b}.ql-hard{background:#ef4444}.ql-very-hard{background:#991b1b}.ql-professional{background:#7c3aed}.ql-label-chips{display:flex;flex-wrap:wrap;gap:4px;max-width:220px}.ql-label-chip{background:#ede9fe;border:1px solid #c4b5fd;border-radius:20px;color:#5b21b6;font-size:11.5px;font-weight:600;padding:2px 10px;white-space:nowrap}.ql-clear-filters{align-self:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:7px 13px;transition:background .15s,border-color .15s;white-space:nowrap}.ql-clear-filters:hover{background:#f9fafb;border-color:#9ca3af}.ql-asked-filters{align-items:center;align-self:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:14px;padding:7px 12px;white-space:nowrap}.ql-asked-option{align-items:center;color:#374151;cursor:pointer;display:inline-flex;font-size:13px;gap:6px;-webkit-user-select:none;user-select:none}.ql-asked-option input[type=checkbox]{accent-color:#4f46e5;cursor:pointer;height:15px;margin:0;width:15px}.Slider-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000026;height:100%;left:0;opacity:0;position:fixed;top:0;transition:opacity .4s ease-in-out,visibility .4s;visibility:hidden;width:100%;z-index:900}.Slider-overlay.show{opacity:1;visibility:visible}.slider-panel{background:#fff;box-shadow:-5px 0 15px #0000004d;display:flex;flex-direction:column;height:100vh;position:fixed;right:-70%;top:0;transition:right .45s ease;width:70%;z-index:1000}.slider-panel.open{right:0}.slider-header{align-items:center;border-bottom:1px solid #ddd;display:flex;flex-direction:row;justify-content:space-between;padding:15px 20px}.slider-content{height:calc(100% - 60px);overflow-y:auto;padding:20px}.footer-button{display:flex;gap:10px;justify-content:flex-end;margin-bottom:10px;margin-top:10px}.slider-title{color:#111827;font-size:18px;font-weight:600;margin:0}.aqp-header-actions{align-items:center;display:flex;gap:10px}.aqp-confirm-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 18px;transition:opacity .18s;white-space:nowrap}.aqp-confirm-btn:hover{opacity:.88}.aqp-close-btn{align-items:center;background:none;border:1.5px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:16px;height:34px;justify-content:center;transition:border-color .18s,color .18s;width:34px}.aqp-close-btn:hover{border-color:#ef4444;color:#ef4444}.aq-section{margin-top:4px}.aq-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.aq-section-title{color:#374151;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.aq-add-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:7px 16px;transition:opacity .18s}.aq-add-btn:hover{opacity:.88}.aq-empty{border:1.5px dashed #e5e7eb;border-radius:8px;color:#9ca3af;font-size:14px;padding:20px;text-align:center}.aq-table-wrap{border:1.5px solid #e5e7eb;border-radius:10px;overflow-x:auto}.aq-table{border-collapse:collapse;font-size:13px;width:100%}.aq-table th{background:#f3f4f6;border-bottom:1px solid #e5e7eb;color:#374151;font-weight:600;padding:9px 12px;text-align:left;white-space:nowrap}.aq-table td{border-bottom:1px solid #f3f4f6;color:#374151;padding:8px 12px;vertical-align:middle}.aq-table tr:last-child td{border-bottom:none}.aq-table tr:hover td{background:#f9fafb}.aq-q-text{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aq-idx{color:#9ca3af;font-size:12px;text-align:center;width:36px}.aq-badge{border-radius:20px;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px}.aq-easy{background:#d1fae5;color:#065f46}.aq-medium{background:#fef3c7;color:#92400e}.aq-hard{background:#fee2e2;color:#991b1b}.aq-very-hard{background:#ede9fe;color:#5b21b6}.aq-professional{background:#dbeafe;color:#1e40af}.aq-del-btn{background:none;border:1px solid #fca5a5;border-radius:6px;color:#ef4444;cursor:pointer;font-size:12px;padding:4px 10px;transition:background .15s}.aq-del-btn:hover{background:#fee2e2}.aq-del-overlay{align-items:center;background:#00000059;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.aq-del-modal{background:#fff;border-radius:14px;box-shadow:0 10px 30px #0000002e;max-width:380px;padding:28px 32px;text-align:center;width:90%}.aq-del-modal p{color:#374151;font-size:15px;line-height:1.5;margin-bottom:22px}.aq-del-actions{display:flex;gap:12px;justify-content:center}.aq-cancel-btn{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:600;padding:9px 22px}.aq-cancel-btn:hover{background:#f3f4f6}.aq-confirm-del-btn{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 22px}.aq-confirm-del-btn:hover{background:#dc2626}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#282c34;color:#abb2bf}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}.rte-wrap{background:#fff;border:1px solid #d1d5db;border-radius:8px;overflow:hidden;transition:border-color .15s,box-shadow .15s}.rte-wrap:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.rte-toolbar{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:2px;padding:6px 8px;-webkit-user-select:none;user-select:none}.rte-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#475569;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:13px;height:28px;justify-content:center;line-height:1;padding:0;transition:background .1s,color .1s;width:28px}.rte-btn:hover{background:#e2e8f0;color:#1e293b}.rte-btn.is-active{background:#e0e7ff;color:#4f46e5}.rte-btn.is-active:hover{background:#c7d2fe}.rte-sep{background:#e2e8f0;flex-shrink:0;height:20px;margin:0 3px;width:1px}.rte-select{background:#fff;border:1px solid #e2e8f0;border-radius:4px;color:#374151;cursor:pointer;flex-shrink:0;font-size:12px;height:28px;max-width:130px;outline:none;padding:0 6px}.rte-select:focus{border-color:#6366f1}.rte-select-font{max-width:110px}.rte-body{position:relative}.rte-placeholder{color:#94a3b8;font-size:14.5px;left:16px;pointer-events:none;position:absolute;top:12px;-webkit-user-select:none;user-select:none}.rte-wrap .ProseMirror{color:#1e293b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14.5px;line-height:1.7;outline:none;padding:12px 16px;word-break:break-word}.rte-wrap .ProseMirror>*+*{margin-top:.55em}.rte-wrap .ProseMirror p{margin:0}.rte-wrap .ProseMirror h1{color:#0f172a;font-size:1.8em;font-weight:700;line-height:1.2;margin:.4em 0 .2em}.rte-wrap .ProseMirror h2{color:#0f172a;font-size:1.4em;font-weight:700;line-height:1.3;margin:.4em 0 .2em}.rte-wrap .ProseMirror h3{font-size:1.17em}.rte-wrap .ProseMirror h3,.rte-wrap .ProseMirror h4{color:#0f172a;font-weight:600;line-height:1.4;margin:.4em 0 .2em}.rte-wrap .ProseMirror h4{font-size:1.05em}.rte-wrap .ProseMirror ol,.rte-wrap .ProseMirror ul{padding-left:1.6em}.rte-wrap .ProseMirror ul{list-style-type:disc}.rte-wrap .ProseMirror ol{list-style-type:decimal}.rte-wrap .ProseMirror li{margin:.15em 0}.rte-wrap .ProseMirror li>p{margin:0}.rte-wrap .ProseMirror blockquote{background:#f8fafc;border-left:3px solid #c7d2fe;border-radius:0 4px 4px 0;color:#64748b;font-style:italic;margin:0;padding:4px 12px}.rte-wrap .ProseMirror pre{background:#282c34;border-radius:6px;color:#abb2bf;font-family:Courier New,monospace;font-size:13px;overflow-x:auto;padding:12px 16px}.rte-wrap .ProseMirror pre code{background:none;color:inherit;font-family:inherit;font-size:1em;padding:0}.rte-wrap .ProseMirror code{background:#f1f5f9;border-radius:3px;color:#e11d48;font-family:Courier New,monospace;font-size:.87em;padding:1px 5px}.rte-wrap .ProseMirror a{color:#6366f1;cursor:pointer;text-decoration:underline}.rte-wrap .ProseMirror hr{border:none;border-top:2px solid #e2e8f0;margin:.8em 0}.rte-wrap .ProseMirror table{border-collapse:collapse;overflow:hidden;table-layout:fixed;width:100%}.rte-wrap .ProseMirror td,.rte-wrap .ProseMirror th{border:1px solid #cbd5e1;font-size:13.5px;min-width:50px;padding:7px 10px;position:relative;vertical-align:top}.rte-wrap .ProseMirror th{background:#f8fafc;font-weight:700;text-align:left}.rte-wrap .ProseMirror .selectedCell:after{background:#6366f11a;content:"";inset:0;pointer-events:none;position:absolute;z-index:2}.rte-wrap .ProseMirror img{border-radius:4px;display:block;height:auto;margin:4px 0;max-width:100%}.rte-wrap .ProseMirror img.ProseMirror-selectednode{outline:2px solid #6366f1;outline-offset:2px}.rte-wrap .ProseMirror .is-editor-empty:first-child:before{color:#94a3b8;content:attr(data-placeholder);float:left;height:0;pointer-events:none}.rte-format-bar{align-items:center;animation:rte-slide-in .12s ease;background:#eef2ff;border-bottom:1px solid #c7d2fe;display:flex;flex-wrap:wrap;gap:2px;padding:5px 8px;-webkit-user-select:none;user-select:none}@keyframes rte-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.rte-format-label{color:#6366f1;flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.05em;margin:0 3px 0 2px;text-transform:uppercase}.rte-fmt-btn{align-items:center;background:#fff;border:1px solid #c7d2fe;border-radius:4px;color:#374151;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:600;height:24px;justify-content:center;padding:0 8px;transition:background .1s,color .1s,border-color .1s}.rte-fmt-btn:hover{background:#e0e7ff;border-color:#a5b4fc}.rte-fmt-btn.is-active{background:#6366f1;border-color:#6366f1;color:#fff}.rte-btn-danger{color:#dc2626!important}.rte-btn-danger:hover{background:#fee2e2!important}.rte-wrap .ProseMirror img[data-align=center]{display:block;float:none;margin-left:auto;margin-right:auto}.rte-wrap .ProseMirror img[data-align=left]{float:left;margin-bottom:6px;margin-right:14px}.rte-wrap .ProseMirror img[data-align=right]{float:right;margin-bottom:6px;margin-left:14px}.rte-wrap .ProseMirror p:has(+p){clear:none}.rte-wrap .ProseMirror>:not(img){clear:both}.rte-wrap .ProseMirror.ProseMirror-focused[data-drag-over]{background:#6366f108;outline:2px dashed #6366f1;outline-offset:-2px}.rte-wrap .ProseMirror div[data-video-embed]{border-radius:6px;margin:.75em 0;overflow:hidden;width:100%}.rte-wrap .ProseMirror div[data-video-embed] iframe,.rte-wrap .ProseMirror div[data-video-embed] video{border:none;border-radius:4px;display:block;width:100%}.rte-wrap .ProseMirror div[data-video-embed] iframe{aspect-ratio:16/9}.af-editor-wrap.error-input{border-color:#ef4444}.aa-checkbox-label{align-items:center;color:#374151;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;-webkit-user-select:none;user-select:none}.aa-checkbox{accent-color:#7c3aed;cursor:pointer;flex-shrink:0;height:16px;width:16px}.al-copy-wrap{position:relative}.al-copy-wrap,.al-link-btn{align-items:center;display:inline-flex}.al-link-btn{background:none;border:1.5px solid #d1d5db;border-radius:6px;color:#6366f1;cursor:pointer;justify-content:center;padding:4px 6px;transition:border-color .18s,background .18s}.al-link-btn:hover{background:#eef2ff;border-color:#6366f1}.al-copy-tip{background:#1e293b;border-radius:5px;color:#fff;font-size:11px;left:50%;padding:3px 8px;pointer-events:none;position:absolute;top:-28px;transform:translateX(-50%);white-space:nowrap}.assignment-details-container{background-color:#f9fafb;font-family:Segoe UI,sans-serif;margin:30px auto;max-width:100%;padding:20px}.assignment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.assignment-header h1{color:#1f2937;font-size:1.8rem;font-weight:600}.assignment-header-actions{align-items:center;display:flex;gap:10px}.ad-copy-wrap{position:relative}.ad-copy-wrap,.ad-link-btn{align-items:center;display:inline-flex}.ad-link-btn{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;color:#6366f1;cursor:pointer;justify-content:center;padding:8px 10px;transition:border-color .18s,background .18s}.ad-link-btn:hover{background:#eef2ff;border-color:#6366f1}.ad-copy-tip{background:#1e293b;border-radius:5px;color:#fff;font-size:11px;left:50%;padding:3px 8px;pointer-events:none;position:absolute;top:-30px;transform:translateX(-50%);white-space:nowrap}.edit-btn{background-color:#22c55e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background-color .3s ease}.edit-btn:hover{background-color:#16a34a}.details-assignment-layout{display:flex;gap:30px}.right-batch-section{flex:1 1}.batch-card{align-items:flex-start;background-color:#fff;border-radius:12px;box-shadow:0 1px 8px #0000000f;padding:20px}.batch-card p{color:#374151;font-size:14px;margin:6px 0}.left-assignment-section{display:flex;flex:2 1;flex-direction:column;gap:30px}.card-assignment-block{background-color:#fff;border-radius:12px;box-shadow:0 1px 8px #0000000f;padding:20px}.card-assignment-block h3{color:#111827;font-size:16px;font-weight:600;margin-bottom:12px}.assign-details-table{background-color:#fff;border-collapse:collapse;border-radius:10px;box-shadow:0 1px 3px #0000000d;font-size:13.5px;overflow:hidden;width:100%}.assign-details-table td,.assign-details-table th{border-bottom:1px solid #f0f0f0;color:#374151;padding:8px 10px;text-align:left;vertical-align:top}.assign-details-table th{background-color:#f3f4f6;font-weight:600}.assign-details-table tr:last-child td{border-bottom:none}.assign-details-table a{color:#3b82f6;text-decoration:none}.assign-details-table a:hover{text-decoration:underline}.ad-rich-content{color:#374151;font-size:13.5px;line-height:1.6}.ad-rich-content p{margin:4px 0}.ad-rich-content ol,.ad-rich-content ul{margin:4px 0;padding-left:20px}.ad-rich-content strong{font-weight:600}.ad-rich-content em{font-style:italic}.ad-rich-content a{color:#3b82f6;text-decoration:underline}.overlay{height:120vh}.custom-loader{border:5px solid #ccc;border-top-color:#22c55e;height:50px;margin-bottom:10px;width:50px}.loading-text{color:#4b5563;font-size:16px}@media (max-width:767px){.assignment-details-container{margin:0;padding:14px 12px}.assignment-header{flex-wrap:wrap;gap:12px;margin-bottom:16px}.assignment-header h1{font-size:1.3rem}.assignment-header-actions{flex-wrap:wrap;width:100%}.details-assignment-layout{flex-direction:column;gap:16px}}.update-assignment-container{background-color:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001a;font-family:Segoe UI,sans-serif;margin:40px auto;max-width:100%;padding:30px}.update-assignment-container h2{color:#333;margin-bottom:25px;text-align:center}.update-assignment-form{display:flex;flex-direction:column;gap:18px}.update-batch-form input[type=time],.update-batch-form select,.update-batch-form textarea{background-color:#f9f9f9;border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-size:16px;padding:12px;transition:border-color .3s ease;width:100%}.update-batch-form input:focus,.update-batch-form select:focus,.update-batch-form textarea:focus{border-color:#007bff;outline:none}.update-checkbox-group{display:flex;flex-direction:column}.update-checkbox-group>label{font-weight:600;margin-bottom:8px}.update-checkboxes{display:flex;flex-wrap:wrap;gap:10px}.update-checkboxes label{align-items:center;background-color:#f5f5f5;border-radius:6px;cursor:pointer;display:flex;gap:6px;padding:6px 10px}.update-assignment-btn,.update-notes-btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background-color .3s ease}.update-assignment-btn:hover,.update-notes-btn:hover{background-color:#0056b3}.update-notes-btn-wrapper{display:flex}.update-time-range-section{display:flex;gap:20px;justify-content:space-between}.update-time-range-group{display:flex;flex-direction:column;gap:12px;margin-top:8px;width:50%}.update-success-message{background-color:#d4edda;border-left:5px solid #28a745;color:#155724}.update-error-message,.update-success-message{border-radius:6px;margin-bottom:20px;padding:10px 15px}.update-error-message{background-color:#f8d7da;border-left:5px solid #dc3545;color:#721c24}.update-overlay{align-items:center;background:#0f0f0fe6;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.update-loader{animation:spin 1s linear infinite;border:6px solid #f3f3f3;border-radius:50%;border-top-color:#00bcd4;height:60px;margin-bottom:15px;width:60px}.update-loading-text{color:#fff;font-size:18px;font-weight:700}@media (max-width:480px){.update-checkboxes,.update-time-range-section{flex-direction:column}.update-time-range-group{width:100%}}.update-input-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.update-assignment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.delete-assignment-btn{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:6px 12px}.delete-assignment-btn:hover{background-color:#c82333}.delete-assignment-popup-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.assignment-delete-popup{background:#fff;border-radius:10px;box-shadow:0 4px 12px #0003;padding:20px 30px;text-align:center;width:300px}.assignment-popup-buttons{display:flex;justify-content:space-between;margin-top:20px}.assignment-popup-btn-ok{background-color:red}.assignment-popup-btn-cancel,.assignment-popup-btn-ok{border:none;border-radius:5px;color:#fff;cursor:pointer;min-width:100px;padding:8px 16px}.assignment-popup-btn-cancel{background-color:green}.aaf-wrapper{display:flex;flex-direction:column;gap:8px;margin-top:8px}.aaf-row{align-items:center;display:flex;gap:8px}.aaf-input{border:1px solid #cbd5e1;border-radius:6px;color:#334155;flex:1 1;font-size:13px;padding:8px 10px}.aaf-input:focus{border-color:#2563eb;outline:none}.aaf-remove-btn{background:none;border:1px solid #e2e8f0;border-radius:6px;color:#ef4444;cursor:pointer;flex-shrink:0;font-size:13px;height:32px;width:32px}.aaf-remove-btn:hover{background:#fef2f2;border-color:#fca5a5}.aaf-add-btn{align-self:flex-start;background:none;border:1px dashed #cbd5e1;border-radius:6px;color:#2563eb;cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px}.aaf-add-btn:hover{background:#eff6ff;border-color:#93c5fd}.option-container{font-family:Arial,sans-serif;font-size:14px;margin:auto;width:60%}.option-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.option-table{background-color:#fff;border-radius:6px;box-shadow:0 2px 6px #0000001a;font-size:13px;overflow:hidden}.option-table th{background-color:#007bff;color:#fff;font-weight:700}.option-dialog-backdrop{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:999}.option-dialog-box{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0003;padding:25px;width:400px}.option-dialog-box h4{color:#333;font-size:18px;margin-bottom:20px}.option-dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.option-dialog-actions button{border:none;border-radius:4px;cursor:pointer;font-weight:700;padding:8px 14px;transition:background-color .2s ease}.option-dialog-actions button:hover{opacity:.9}.option-dialog-actions button:first-child{background-color:#007bff;color:#fff}.option-close-btn{background-color:#dc3545;color:#fff}.error-text{font-size:.8rem;margin-top:4px}.option-popup-backdrop{align-items:center;background-color:#0000004d;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:999}.option-popup-box{background:#fff;border-radius:8px;box-shadow:0 0 10px #888;padding:20px 30px}.option-popup-box button{background:#007bff;cursor:pointer;margin-top:15px;padding:8px 15px}.iuf-wrap{display:flex;flex-direction:column;gap:6px}.iuf-pick-btn{align-items:center;align-self:flex-start;background:#faf5ff;border:1.5px dashed #c4b5fd;border-radius:8px;color:#7c3aed;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:8px;padding:10px 18px;transition:border-color .15s,background .15s}.iuf-pick-btn:hover:not(:disabled){background:#f5f0ff;border-color:#7c3aed}.iuf-pick-btn:disabled{cursor:not-allowed;opacity:.6}.iuf-pick-icon{font-size:15px;line-height:1}.iuf-preview-row{align-items:flex-start;align-self:flex-start;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:10px;display:flex;gap:12px;max-width:100%;padding:10px}.iuf-thumb{background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex-shrink:0;height:80px;object-fit:contain;width:120px}.iuf-preview-actions{display:flex;flex-direction:column;gap:6px;justify-content:center}.iuf-change-btn,.iuf-remove-btn{border:1.5px solid;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 14px;transition:all .15s}.iuf-change-btn{background:#fff;border-color:#6366f1;color:#6366f1}.iuf-change-btn:hover:not(:disabled){background:#eef2ff}.iuf-remove-btn{background:#fff;border-color:#fca5a5;color:#ef4444}.iuf-remove-btn:hover:not(:disabled){background:#fef2f2}.iuf-change-btn:disabled,.iuf-remove-btn:disabled{cursor:not-allowed;opacity:.5}.iuf-error{color:#ef4444;font-size:12px}.af-options-block{background:#f9fafb;border:1.5px dashed #d1d5db;border-radius:10px;display:flex;flex-direction:column;gap:12px;padding:16px}.af-mcq-answer-hint{background:#f0fdf4;border-left:3px solid #22c55e;border-radius:6px;color:#6b7280;font-size:13px;margin:4px 0 0;padding:10px 14px}.af-mcq-correct-preview{background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:12px 16px}.af-mcq-correct-label{color:#15803d;font-size:12px;font-weight:700;letter-spacing:.6px;margin:0;text-transform:uppercase}.af-mcq-correct-opt{align-items:center;background:#fff;border:1px solid #d1fae5;border-radius:6px;display:flex;gap:10px;padding:6px 10px}.af-mcq-correct-opt-text{color:#111827;font-size:13.5px}.af-mcq-correct-opt-img{border:1px solid #e5e7eb;border-radius:4px;max-height:64px;max-width:100px;object-fit:contain}.af-mcq-correct-opt-empty{color:#9ca3af;font-size:12px;font-style:italic}.question-details-container{background-color:#f9fafb;font-family:Segoe UI,sans-serif;margin:30px auto;max-width:100%;padding:20px}.question-details-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.question-details-header h1{color:#1f2937;font-size:1.8rem;font-weight:600}.question-details-edit-btn{background-color:#22c55e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background-color .3s ease}.question-details-edit-btn:hover{background-color:#16a34a}.trainer-card{align-items:flex-start;background-color:#fff;border-radius:12px;box-shadow:0 1px 8px #0000000f;padding:20px}.question-details-left-section{display:flex;flex:2 1;flex-direction:column;gap:30px}.question-details-card-block{background-color:#fff;border-radius:12px;box-shadow:0 1px 8px #0000000f;padding:20px}.card-block h3{font-size:16px}.question-details-table{background-color:#fff;border-collapse:collapse;border-radius:10px;box-shadow:0 1px 3px #0000000d;font-size:13.5px;overflow:hidden;width:100%}.question-details-table td,.question-details-table th{border-bottom:1px solid #f0f0f0;color:#374151;padding:8px 10px;text-align:left;vertical-align:top}.question-details-table th{background-color:#f3f4f6;font-weight:600}.question-details-table tr:last-child td{border-bottom:none}.question-details-table a{color:#3b82f6;text-decoration:none}.question-details-table td p{margin:.6em 0}.question-details-table td p:empty{min-height:1em}.question-details-table td sup{font-size:.75em;line-height:0;vertical-align:super}.question-details-table td sub{font-size:.75em;line-height:0;vertical-align:sub}.question-details-table a:hover{text-decoration:underline}.question-details-overlay{align-items:center;background:#0f0f0fe6;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.question-details-custom-loader{animation:spin 1s linear infinite;border:6px solid #f3f3f3;border-radius:50%;border-top-color:#00bcd4;height:60px;margin-bottom:15px;width:60px}.question-details-loading-text{color:#fff;font-size:18px;font-weight:700}.question-details-error-text{color:red;font-size:16px;margin-top:40px;text-align:center}@media (max-width:767px){.question-details-container{margin:0;padding:14px 12px}.question-details-header{flex-wrap:wrap;gap:12px;margin-bottom:16px}.question-details-header h1{font-size:1.3rem}}.option-table-wrapper{font-family:sans-serif;padding:1rem}.option-table-header{margin-bottom:1rem}.option-modal-backdrop,.option-popup-backdrop{align-items:center;background:#0006;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.option-modal,.option-popup-box{background:#fff;border-radius:8px;box-shadow:0 0 20px #0003;min-width:300px;padding:24px}.option-modal h4{margin-bottom:1rem}.option-modal-close{background:none;border:none;cursor:pointer;float:right;font-size:20px;margin-right:-10px;margin-top:-10px}.option-modal-group{margin-bottom:1rem}.option-modal-group input{border:1px solid #ccc;border-radius:5px;padding:8px 10px;width:100%}.option-modal-footer{display:flex;gap:.5rem;justify-content:space-between}.option-save-btn{background-color:#007bff;border:none;border-radius:5px;color:#fff;font-weight:700;padding:10px 14px}.option-delete-btn{background:#fff;border:1px solid red;border-radius:5px;color:red;font-weight:700;padding:10px 14px}.option-error{color:red;font-size:12px;margin-top:4px}.option-table{border-collapse:collapse;margin-top:1rem;width:100%}.option-table td,.option-table th{border:1px solid #ccc;padding:10px;text-align:left}.option-table tr:hover{background-color:#f9f9f9;cursor:pointer}.option-popup-box{text-align:center}.option-popup-box button{background-color:#007bff;margin-top:10px}.option-confirm-btn,.option-popup-box button{border:none;border-radius:5px;color:#fff;padding:8px 14px}.option-confirm-btn{background-color:red}.option-cancel-btn{background-color:#d3d3d3;border:none;border-radius:5px;margin-right:10px;padding:8px 14px}.option-form-group{display:flex;flex-direction:column;margin-bottom:16px}.option-form-group label{color:#333;font-weight:700;margin-bottom:6px}.option-form-group input{border:1px solid #ccc;border-radius:5px;font-size:14px;padding:10px;transition:border-color .2s ease}.option-form-group input:focus{border-color:#007bff;box-shadow:0 0 3px #007bff44;outline:none}.update-question-container{background-color:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001a;font-family:Segoe UI,sans-serif;max-width:100%;padding:30px}.update-question-container h2{color:#333;margin-bottom:25px;text-align:center}.update-question-form{display:flex;flex-direction:column;gap:18px}.update-option-btn,.update-question-btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background-color .3s ease}.update-option-btn:hover,.update-question-btn:hover{background-color:#0056b3}.update-option-btn-wrapper{display:flex}.update-question-update-success-message{background-color:#d4edda;border-left:5px solid #28a745;border-radius:6px;color:#155724;margin-bottom:20px;padding:10px 15px}.update-question-update-error-message{background-color:#f8d7da;border-left:5px solid #dc3545;border-radius:6px;color:#721c24;margin-bottom:20px;padding:10px 15px}.update-question-update-overlay{align-items:center;background:#0f0f0fe6;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.update-question-update-loader{animation:spin 1s linear infinite;border:6px solid #f3f3f3;border-radius:50%;border-top-color:#00bcd4;height:60px;margin-bottom:15px;width:60px}.update-question-loading-text{color:#fff;font-size:18px;font-weight:700}.update-question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.delete-question-btn{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:6px 12px}.delete-question-btn:hover{background-color:#c82333}.update-question-delete-popup-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.update-question-delete-popup{background:#fff;border-radius:10px;box-shadow:0 4px 12px #0003;padding:20px 30px;text-align:center;width:300px}.update-question-popup-buttons{display:flex;justify-content:space-between;margin-top:20px}.update-question-popup-btn-ok{background-color:red}.update-question-popup-btn-cancel,.update-question-popup-btn-ok{border:none;border-radius:5px;color:#fff;cursor:pointer;min-width:100px;padding:8px 16px}.update-question-popup-btn-cancel{background-color:green}.options-flex-row{align-items:flex-start;display:flex;gap:20px;justify-content:center;margin-top:1rem;position:relative;width:100%}.options-flex-row .option-table-wrapper{flex:1 1;margin:0 auto;max-width:600px}.update-options-btn-wrapper{position:absolute;right:0;top:0}.add-options-btn{background-color:#007bff;border:none;border-radius:5px;color:#fff;font-size:14px;font-weight:700;height:-webkit-fit-content;height:fit-content;padding:10px 16px;white-space:nowrap}.tl-filter-select{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:8px;color:#374151;cursor:pointer;font-size:13.5px;min-width:130px;outline:none;padding:8px 12px;transition:border-color .18s,box-shadow .18s}.tl-filter-select:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}body{background-color:#e4e9f7;font-family:Segoe UI,sans-serif;margin:0}.sidebar{background-color:#fff;box-shadow:2px 0 10px #00000014;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;overflow-x:hidden;overflow-y:auto;padding:10px;transition:all .3s ease}.top-section{gap:8px;justify-content:space-between;padding:6px 4px 10px}.logo,.top-section{align-items:center;display:flex}.logo{gap:10px;min-width:0;overflow:hidden}.logo-text h3{color:#1e293b;font-size:16px;font-weight:700;margin:0;white-space:nowrap}.logo-circle{border-radius:50%;flex-shrink:0;font-weight:700;height:36px;width:36px}.toggle-button{color:#6b7280;cursor:pointer;flex-shrink:0;font-size:14px;transition:transform .3s ease}.toggle-button.rotate{transform:rotate(180deg)}.sidebar-mobile-close{color:#6b7280;cursor:pointer;display:none;flex-shrink:0;font-size:16px;padding:4px}.menu{flex:1 1;list-style:none;margin:4px 0 0;padding:0}.menu li{margin:3px 0}.menu-link{border-radius:10px;color:#374151;gap:13px;overflow:hidden;padding:11px 10px;text-decoration:none;transition:background .2s ease,color .2s ease;white-space:nowrap}.menu-icon,.menu-link{align-items:center;display:flex}.menu-icon{flex-shrink:0;font-size:16px}.menu-label{font-size:13.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-link:hover{background-color:#f0f0ff;color:#6366f1}.menu-link.active{background-color:#6366f1;color:#fff;font-weight:600}.menu-link.active .menu-icon{color:#fff}@media (max-width:767px){.toggle-button{display:none}.sidebar-mobile-close{display:block}.menu-label{display:block!important}}@media (min-width:768px) and (max-width:1023px){.sidebar-mobile-close{display:none}}.main-nav-container{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;min-height:44px;padding:6px 14px}.breadcrumbs-left,.main-nav-container{align-items:center;display:flex;gap:8px}.breadcrumbs-left{flex:1 1;min-width:0}.hamburger-btn{background:none;border:none;border-radius:8px;color:#374151;cursor:pointer;display:none;flex-shrink:0;font-size:16px;padding:6px 8px;transition:background .15s,color .15s}.hamburger-btn:hover{background:#f1f5f9;color:#6366f1}.breadcrumbs-nav{align-items:center;display:flex;flex-wrap:wrap;font-size:13px;gap:2px;min-width:0}.breadcrumb-link{color:#6366f1;font-weight:500;text-decoration:none;transition:color .15s;white-space:nowrap}.breadcrumb-link:hover{color:#4f46e5;text-decoration:underline}.breadcrumb-separator{color:#cbd5e1;font-size:12px;margin:0 5px}.breadcrumb-current{color:#64748b;display:inline-block;font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumbs-right{align-items:center;display:flex;flex-shrink:0}@media (max-width:767px){.hamburger-btn{align-items:center;display:flex;justify-content:center}.breadcrumb-current{max-width:120px}.main-nav-container{padding:6px 10px}}@media (max-width:479px){.breadcrumb-link{font-size:12px}.breadcrumb-current{font-size:12px;max-width:90px}}.header-container{align-items:center;display:flex;font-size:13px;gap:10px}.user-name{color:#374151;font-weight:600;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-icon{color:#6366f1;flex-shrink:0;font-size:22px}.logout-button{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:7px;color:#fff;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;padding:6px 12px;transition:opacity .18s;white-space:nowrap}.logout-button:hover{opacity:.88}@media (max-width:479px){.user-name{display:none}.profile-icon{font-size:20px}.logout-button{font-size:12px;padding:5px 9px}}body,html{height:100%;margin:0;padding:0}#root{display:flex;flex-direction:column;min-height:100vh}.app-footer{background-color:#fff;border-top:1px solid #e2e8f0;bottom:0;font-size:10px;left:0;padding:5px 12px;position:fixed;right:0;z-index:200}.footer-content{align-items:center;display:flex;flex-direction:row;justify-content:center;position:relative}.footer-text{color:#94a3b8;font-size:10px;margin:0 auto}.footer-version{color:#94a3b8;font-size:10px;left:0;position:absolute}@media (max-width:479px){.footer-version{display:none}}.layout-container{display:flex;height:100vh;overflow:hidden;position:relative}.sidebar-wrapper{flex-shrink:0;height:100vh;overflow:hidden;transition:transform .3s ease;z-index:300}.content-wrapper{display:flex;flex:1 1;flex-direction:column;height:100vh;min-width:0;overflow:hidden;padding-bottom:32px}.breadcrumbs-wrapper{flex-shrink:0}.outlet{flex:1 1;min-height:0;overflow-y:auto}.sidebar-backdrop{animation:backdrop-in .2s ease;background:#0f172a73;display:none;inset:0;position:fixed;z-index:400}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@media (max-width:767px){.sidebar-wrapper{height:100vh;left:0;position:fixed;top:0;transform:translateX(-100%);z-index:500}.sidebar-wrapper.mobile-open{transform:translateX(0)}.sidebar-backdrop{display:block}.content-wrapper{width:100%}}@media (min-width:768px) and (max-width:1023px){.sidebar-wrapper{flex-shrink:0}}.list-add-btn{background-color:#28a745;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .3s ease}.add-export-import-button:hover{background-color:#218838}.add-export-import-csv-button{background-color:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 14px;transition:background-color .2s ease}.add-export-import-csv-button:hover{background-color:#388e3c}.paginationNext-Btn,.paginationPrevious-btn{background-color:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .3s ease}.paginationNext-Btn:hover:not(:disabled),.paginationPrevious-btn:hover:not(:disabled){background-color:#0056b3}.paginationPrevious-btn:disabled{background-color:#ccc;cursor:not-allowed}.Browse-Download-btn,.import-close-btn{background:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;margin:10px;padding:8px 12px}.Add-Btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background-color .3s ease}.Add-Btn:hover{background-color:#0056b3}.add-btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background-color .3s ease}.add-btn:hover{background-color:#0056b3}button{border:none;border-radius:4px;cursor:pointer;font-weight:700;padding:8px 14px;transition:background-color .2s ease}button:hover{opacity:.9}.save-btn{background-color:#007bff;color:#fff}.cancel-btn{border:.2em solid #dc3545;border-radius:4px;color:#dc3545;cursor:pointer;font-weight:500;padding:6px 12px}.ok-btn{background:#007bff;margin-top:15px;padding:8px 15px}.Edit-btn,.ok-btn{color:#fff;cursor:pointer}.Edit-btn{background-color:#22c55e;border:none;border-radius:8px;font-weight:600;padding:10px 20px;transition:background-color .3s ease}.Edit-btn:hover{background-color:#16a34a}.Delete-btn{border:.2em solid #dc3545;border-radius:4px;color:#dc3545;cursor:pointer;font-weight:500;padding:6px 12px}.Delete-btn-btn:hover{background-color:#c82333}.Delete-Cancel-btn{background-color:green}.Delete-Cancel-btn,.Delete-Ok-btn{border:none;border-radius:5px;color:#fff;cursor:pointer;padding:8px 16px}.Delete-Ok-btn{background-color:red}.Update-btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background-color .3s ease}.save-btn:hover,.update-batch-btn:hover{background-color:#0056b3}.save-btn-wrapper{display:flex}.x-cancel-btn{background-color:red;border:1px solid red;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:4px 10px;position:absolute;right:10px;top:10px}.x-cancel-btn:hover{background-color:#d50a0af2}.delete-btn{background-color:initial!important;border:1px solid red!important;color:red!important;cursor:pointer}.delete-btn,.update-btn{border-radius:4px;padding:10px 20px}.btn-cancel{background-color:#27ae60!important;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:700;padding:8px 20px}.btn-cancel:hover{background-color:#219150}.btn-ok{background-color:#e74c3c!important;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:700;padding:8px 20px}.btn-ok:hover{background-color:#c0392b}.update-btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background-color .3s ease}.test-details-container{background-color:#f9fafb;font-family:Segoe UI,sans-serif;margin:30px auto;max-width:100%;padding:20px}.test-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.test-header h1{color:#1f2937;font-size:1.8rem;font-weight:600}.details-layout,.left-section{display:flex;gap:30px}.left-section{flex:2 1;flex-direction:column}.card-block{background-color:#fff;border-radius:12px;box-shadow:0 1px 8px #0000000f;padding:20px}.right-btn{display:flex;justify-content:flex-end}.card-block h3{color:#111827;font-size:20px;font-weight:600;margin-bottom:12px}.error-text{font-size:16px;margin-top:40px;text-align:center}.info-table{background-color:#fff;border-collapse:collapse;border-radius:10px;box-shadow:0 1px 3px #0000000d;font-size:17.5px;overflow:hidden;width:100%}.info-table td,.info-table th{border-bottom:1px solid #f0f0f0;color:#374151;padding:8px 10px;text-align:left;vertical-align:top}.info-table th{background-color:#f3f4f6;font-weight:600}.info-table tr:last-child td{border-bottom:none}@media (max-width:767px){.test-details-container{margin:0;padding:14px 12px}.test-header{flex-wrap:wrap;gap:12px;margin-bottom:16px}.test-header h1{font-size:1.3rem}.details-layout{flex-direction:column;gap:16px}}.overlay{align-items:center;background:#0f0f0fe6;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.custom-loader{animation:spin 1s linear infinite;border:6px solid #f3f3f3;border-radius:50%;border-top-color:#00bcd4;height:60px;margin-bottom:15px;width:60px}@keyframes spin{to{transform:rotate(1turn)}}.loading-text{color:#fff;font-size:18px;font-weight:700}.success-message{background-color:#d4edda;border-left:5px solid #28a745;color:#155724}.error-message,.success-message{border-radius:6px;margin-bottom:20px;padding:10px 15px}.error-message{background-color:#f8d7da;border-left:5px solid #dc3545;color:#721c24}.delete-popup{font-size:18px}.confirmationDialogBody{margin:2em 0 3em}.delete-popup h2{margin:0}.list-table{border:1px solid #ddd;border-collapse:collapse;width:100%}.add-info-table{background-color:#fff;border-collapse:collapse;border-radius:6px;box-shadow:0 2px 6px #0000001a;font-size:13px;overflow:hidden;width:100%}.add-info-table td,.add-info-table th{border:1px solid #ccc;padding:10px;text-align:left}.add-info-table th{background-color:#007bff;color:#fff;font-weight:700}.details-table{background-color:#fff;border-collapse:collapse;border-radius:10px;box-shadow:0 1px 3px #0000000d;font-size:13.5px;overflow:hidden;width:100%}.details-table td,.details-table th{border-bottom:1px solid #f0f0f0;color:#374151;padding:8px 10px;text-align:left;vertical-align:top}.details-table th{background-color:#f3f4f6;font-weight:600}.details-table tr:last-child td{border-bottom:none}.details-table a{color:#3b82f6;text-decoration:none}.details-table a:hover{text-decoration:underline}.no-data-label{align-items:center;display:flex;font-size:14px;justify-content:center;padding:25px;text-align:center}.table-header{background-color:#007bff;border:1px solid #ddd;color:#fff;cursor:pointer;font-size:16px;padding:12px;text-align:left}.table-cell{border:1px solid #ddd;color:#333;font-size:13px;padding:10px 14px}.table-row.no-blink{animation:none!important;transition:none!important}.table-row:nth-child(2n){background-color:#f2f2f2}.table-row:hover{background-color:#e0f7fa;cursor:pointer;transition:background-color .3s ease}.af-editor-wrap{border:1.5px solid #d1d5db;border-radius:8px;overflow:hidden;transition:border-color .18s}.af-editor-wrap:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.af-toggles{background:#f9fafb;border:1.5px solid #f3f4f6;border-radius:10px;padding:4px 16px}.uf-delete-trigger{background:#0000;border:1.5px solid #ef4444;border-radius:8px;color:#ef4444;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:600;padding:7px 16px;transition:background .15s,color .15s}.uf-delete-trigger:hover{background:#fef2f2}.uf-delete-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.uf-delete-modal{background:#fff;border-radius:14px;box-shadow:0 8px 40px #0000002e;padding:28px 32px;width:340px}.uf-delete-msg{color:#111827;font-size:15px;font-weight:500;margin:0 0 22px;text-align:center}.uf-delete-actions{display:flex;gap:12px}.uf-cancel-btn,.uf-confirm-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px;transition:opacity .15s}.uf-cancel-btn{background:#f3f4f6;color:#374151}.uf-cancel-btn:hover{background:#e5e7eb}.uf-confirm-btn{background:#ef4444;color:#fff}.uf-confirm-btn:hover{opacity:.88}@media (max-width:600px){.uf-delete-modal{padding:22px 20px;width:calc(100vw - 40px)}}.update-test-container{background-color:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001a;font-family:Segoe UI,sans-serif;margin:40px auto;max-width:100%;padding:30px}.update-test-header-h2{color:#333;margin-bottom:25px;text-align:center}.update-test-form{display:flex;flex-direction:column;gap:18px}.update-test-form input:focus,.update-test-form select:focus,.update-test-form textarea:focus{border-color:#007bff;outline:none}.error-input{background-color:#fff0f0;border:1px solid red!important}.error-text{color:red;display:flex;font-size:13px;margin-bottom:5px;margin-top:5px}.update-test-header{align-items:center;margin-bottom:1rem}.popup-buttons,.update-test-header{display:flex;justify-content:space-between}.popup-buttons{margin-top:20px}.delete-confirm-actions{display:flex;gap:20px;justify-content:center;margin-top:20px}.login-page{align-items:center;background:linear-gradient(135deg,#f0f4ff,#e8ecff);box-sizing:border-box;display:flex;font-family:Segoe UI,Arial,sans-serif;justify-content:center;margin:0;min-height:100vh;padding:20px}.login-container{background-color:#fff;border-radius:16px;box-shadow:0 4px 24px #6366f11f,0 1px 4px #0000000f;display:flex;flex-direction:column;max-width:460px;overflow:hidden;width:100%}.login-left{border-bottom:1px solid #f1f5f9;padding:32px 32px 20px;text-align:center}.login-logo{height:80px;margin-bottom:14px;object-fit:contain;width:80px}.login-title{color:#1e293b;font-size:1.4rem;font-weight:700;line-height:1.3;margin:0}.login-right{align-items:stretch;display:flex;flex-direction:column;padding:28px 32px 32px}.form-group{margin-bottom:18px}.form-group label,.login-label{color:#374151;font-size:13.5px;font-weight:600;margin-bottom:7px;text-align:left}.form-group input,.login-input{background:#f8fafc;border:1.5px solid #d1d5db;border-radius:9px;box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:14.5px;outline:none;padding:11px 14px;transition:border-color .18s,box-shadow .18s;width:100%}.form-group input:focus,.login-input:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.login-error{align-self:flex-start;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;box-sizing:border-box;color:#dc2626;font-size:12.5px;font-weight:500;margin-top:6px;padding:6px 10px;width:100%}.login-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:9px;color:#fff;cursor:pointer;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:.2px;margin-top:4px;padding:12px;transition:opacity .18s,transform .1s;width:100%}.login-btn:hover{opacity:.9}.login-btn:active{transform:scale(.99)}@media (max-width:479px){.login-left{padding:24px 20px 16px}.login-right{padding:20px 20px 24px}.login-title{font-size:1.15rem}.login-logo{height:64px;width:64px}.login-btn{font-size:14px;padding:11px}}.otp-page{align-items:center;background:linear-gradient(135deg,#f0f4ff,#e8ecff);display:flex;font-family:Segoe UI,Arial,sans-serif;justify-content:center;margin:0;min-height:100vh;padding:20px}.otp-page,.otp-page *,.otp-page :after,.otp-page :before{box-sizing:border-box}.verify-container{background-color:#fff;border-radius:16px;box-shadow:0 4px 24px #6366f11f,0 1px 4px #0000000f;display:flex;flex-direction:column;max-width:440px;overflow:hidden;width:100%}.verify-left{border-bottom:1px solid #f1f5f9;padding:28px 28px 18px;text-align:center}.verify-logo{height:72px;margin-bottom:12px;object-fit:contain;width:72px}.verify-title{color:#1e293b;font-size:1.2rem;font-weight:700;line-height:1.3;margin:0}.verify-right{align-items:stretch;display:flex;flex-direction:column;padding:24px 28px 28px}.otp-info{color:#64748b;font-size:14px;margin-bottom:20px;text-align:center}.otp-info span{color:#1e293b;font-weight:700}.form-group{display:flex;flex-direction:column;margin-bottom:0;width:100%}.verify-label{color:#374151;font-size:13.5px;font-weight:600;margin-bottom:8px;width:100%}.otp-input{background-color:#f8fafc;border:1.5px solid #d1d5db;border-radius:10px;font-family:inherit;font-size:22px;letter-spacing:8px;outline:none;padding:14px;text-align:center;transition:all .2s ease;width:100%}.otp-input:focus{background-color:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.otp-input::placeholder{color:#94a3b8;font-size:14px;letter-spacing:normal}.verify-error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:12.5px;font-weight:500;margin-top:8px;padding:6px 10px;width:100%}.verify-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:9px;color:#fff;cursor:pointer;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:.2px;margin-top:20px;padding:13px;transition:opacity .18s,transform .1s;width:100%}.verify-btn:hover:not(:disabled){opacity:.9}.verify-btn:active:not(:disabled){transform:scale(.99)}.verify-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:479px){.verify-left{padding:22px 18px 14px}.verify-right{padding:18px 18px 22px}.verify-title{font-size:1rem}.verify-logo{height:58px;width:58px}.otp-input{font-size:18px;letter-spacing:6px;padding:12px}.verify-btn{font-size:14px;padding:11px}}.dash-page{display:flex;flex-direction:column}.dash-range-filter{display:flex;gap:6px}.dash-range-btn{background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:7px 14px;transition:all .15s;white-space:nowrap}.dash-range-btn:hover{border-color:#6366f1;color:#6366f1}.dash-range-btn-active{background:#6366f1;border-color:#6366f1;color:#fff}.dash-range-btn-active:hover{color:#fff}.dash-section{margin-bottom:18px}.dash-section-title{color:#1e293b;font-size:15px;font-weight:700;margin:0 0 10px}.dash-section-error{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#991b1b;font-size:13.5px;padding:14px 18px}.dash-section-empty{color:#94a3b8;font-size:13.5px;padding:24px 0;text-align:center}.dash-card{background:#fff;border-radius:14px;box-shadow:0 1px 6px #00000012;padding:18px 20px}.dash-numbers-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.dash-numbers-grid-narrow{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));max-width:500px}.dash-stat-card{background:#fff;border-radius:12px;box-shadow:0 1px 6px #00000012;padding:14px 16px}.dash-stat-label{color:#64748b;font-size:12px;font-weight:600;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-stat-value{color:#1e293b;font-size:24px;font-weight:700}.dash-stat-skeleton{animation:dash-shimmer 1.4s ease infinite;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 37%,#f1f5f9 63%);background-size:400% 100%;border-radius:6px;height:24px;width:60%}@keyframes dash-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.dash-chart-skeleton{animation:dash-shimmer 1.4s ease infinite;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 37%,#f1f5f9 63%);background-size:400% 100%;border-radius:10px;height:220px}.dash-activity-charts{display:flex;flex-direction:column;gap:20px}.dash-chart-panel-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px;justify-content:space-between;margin-bottom:4px}.dash-chart-panel-title{color:#374151;font-size:13.5px;font-weight:700;margin:0}.dash-chart-caption{align-items:center;color:#898781;display:flex;font-size:11.5px;gap:5px}.dash-caption-swatch{display:inline-block;height:2px;margin-left:8px;width:14px}.dash-caption-swatch:first-child{margin-left:0}.dash-caption-solid{background:#2a78d6}.dash-caption-dashed{background:repeating-linear-gradient(90deg,#2a78d6 0 4px,#0000 4px 7px)}.dash-table-toggle{align-self:flex-start;background:none;border:none;color:#6366f1;cursor:pointer;font-size:12.5px;font-weight:600;padding:4px 0}.dash-table-toggle:hover{text-decoration:underline}.dash-table-wrap{overflow-x:auto}.dash-data-table{border-collapse:collapse;font-size:12.5px;min-width:560px;width:100%}.dash-data-table th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;font-weight:700;padding:8px 12px;text-align:left;white-space:nowrap}.dash-data-table td{font-feature-settings:"tnum";border-bottom:1px solid #f1f5f9;color:#374151;font-variant-numeric:tabular-nums;padding:8px 12px}.dash-tooltip{background:#fcfcfb;border:1px solid #e1e0d9;border-radius:8px;box-shadow:0 4px 14px #0000001f;font-size:12.5px;padding:8px 12px}.dash-tooltip-label{color:#0b0b0b;font-weight:700;margin-bottom:4px}.dash-tooltip-row{align-items:center;display:flex;gap:6px;padding:2px 0}.dash-tooltip-key{border-radius:2px;flex-shrink:0;height:3px;width:10px}.dash-tooltip-value{font-feature-settings:"tnum";color:#0b0b0b;font-variant-numeric:tabular-nums;font-weight:700}.dash-tooltip-name{color:#52514e}.dash-progress-pct{color:#94a3b8;font-size:12px}@media (max-width:767px){.dash-numbers-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.dash-card{padding:14px}}.tp-panel-head{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.tp-panel-sub{color:#64748b;font-size:12.5px;margin:2px 0 10px}.tp-detail-btn{background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;color:#3730a3;cursor:pointer;font-size:13px;font-weight:600;padding:7px 13px;transition:background .15s,border-color .15s;white-space:nowrap}.tp-detail-btn:hover{background:#e0e7ff;border-color:#a5b4fc}.tp-state{color:#64748b;font-size:13.5px;padding:32px 12px;text-align:center}.tp-state-error{color:#b91c1c}.tp-warn{background:#fffbeb;border:1px solid #fde68a;border-radius:6px;color:#92400e;font-size:12px;margin:0 0 8px;padding:7px 10px}.tp-axis-date{fill:#334155;font-size:11.5px}.tp-axis-title{fill:#94a3b8;font-size:10.5px}.tp-tooltip{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 6px 20px #0f172a1f;max-height:320px;min-width:190px;overflow-y:auto;padding:10px 12px}.tp-tooltip-title{color:#0f172a;font-size:13px;font-weight:700;margin:0}.tp-tooltip-date{color:#94a3b8;font-size:11.5px;margin:1px 0 8px}.tp-tooltip-block+.tp-tooltip-block{border-top:1px solid #f1f5f9;margin-top:9px;padding-top:9px}.tp-tooltip-student{align-items:center;color:#0f172a;display:flex;font-size:12.5px;font-weight:600;gap:6px;margin:0 0 4px}.tp-tooltip-score{font-weight:700;margin-left:auto}.tp-swatch{border-radius:2px;flex-shrink:0;height:9px;width:9px}.tp-stat{color:#475569;display:flex;font-size:12px;gap:14px;justify-content:space-between;margin:1px 0}.tp-stat span{font-weight:600}.tp-correct span{color:#047857}.tp-incorrect span{color:#b91c1c}.tp-unattempted span{color:#64748b}.tp-filter-bar{flex-wrap:wrap;gap:14px}.tp-date-range{display:flex;gap:12px}.tp-date-range label{color:#6b7280;display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:2px;letter-spacing:.4px;text-transform:uppercase}.tp-date-range input{border:1px solid #d1d5db;border-radius:6px;color:#111827;font-size:13.5px;padding:8px 10px}.tp-questions{padding:4px}.tp-question{border-bottom:1px solid #eef2f7;padding:18px 20px}.tp-question:last-child{border-bottom:none}.tp-q-head{align-items:flex-start;display:flex;gap:12px}.tp-q-num{background:#eef2ff;border-radius:5px;color:#3730a3;flex-shrink:0;font-size:12px;font-weight:700;padding:2px 9px}.tp-q-text{color:#0f172a;font-size:14.5px;line-height:1.55}.tp-q-solution img,.tp-q-text img{height:auto;max-width:100%}.tp-q-meta{color:#334155;font-size:13.5px;margin:10px 0 12px 44px}.tp-q-meta p{margin:3px 0}.tp-q-solution{background:#f8fafc;border-left:3px solid #c7d2fe;border-radius:0 6px 6px 0;line-height:1.55;margin-top:8px;padding:9px 12px}.tp-answers{border-collapse:collapse;font-size:13.5px;margin-left:44px;max-width:calc(100% - 44px);width:100%}.tp-answers thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.5px;padding:7px 10px;text-align:left;text-transform:uppercase}.tp-answers tbody td{border-bottom:1px solid #f1f5f9;color:#334155;padding:8px 10px}.tp-answers tbody tr:last-child td{border-bottom:none}.tp-result-col{text-align:center;width:76px}.tp-unanswered{color:#94a3b8;font-style:italic}.tp-dash{color:#cbd5e1}@media (max-width:720px){.tp-answers,.tp-q-meta{margin-left:0;max-width:100%}.tp-panel-head{align-items:flex-start;flex-direction:column}}.pr-root{display:flex;flex-direction:column;gap:18px}.pr-state{color:#64748b;font-size:13.5px;padding:36px 12px;text-align:center}.pr-state-error{color:#b91c1c}.pr-empty{color:#94a3b8;font-size:13px;padding:26px 12px;text-align:center}.pr-tiles{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.pr-tile{background:#fff;border:1px solid #e8eef5;border-radius:10px;padding:14px 16px}.pr-tile-label{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.pr-tile-value{color:#0f172a;font-size:25px;font-weight:700;line-height:1.1;margin-top:4px}.pr-tile-sub{color:#94a3b8;font-size:12px;margin-top:3px}.pr-card{background:#fff;border:1px solid #e8eef5;border-radius:10px;padding:16px 18px}.pr-card-head{align-items:baseline;display:flex;gap:12px;justify-content:space-between}.pr-card-title{color:#0f172a;font-size:15px;font-weight:700;margin:0}.pr-card-note{color:#94a3b8;font-size:11.5px}.pr-card-sub{color:#64748b;font-size:12.5px;line-height:1.5;margin:3px 0 12px}.pr-two-col{grid-gap:18px;display:grid;gap:18px;grid-template-columns:1fr 1fr}.pr-topic-groups{display:flex;flex-direction:column;gap:14px;max-height:320px;overflow-y:auto}.pr-topic-subject{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.5px;margin:0 0 5px;text-transform:uppercase}.pr-topic-row{align-items:center;border-bottom:1px solid #f4f7fa;display:flex;font-size:13px;gap:10px;padding:5px 0}.pr-topic-row:last-child{border-bottom:none}.pr-topic-title{color:#334155;flex:1 1}.pr-topic-acc{font-weight:700}.pr-strong{color:#047857}.pr-weak{color:#b91c1c}.pr-topic-meta{color:#94a3b8;font-size:12px;text-align:right;width:58px}.pr-consistency{display:flex;flex-direction:column;gap:14px;max-height:340px;overflow-y:auto}.pr-con-row{border-bottom:1px solid #f4f7fa;padding-bottom:12px}.pr-con-row:last-child{border-bottom:none;padding-bottom:0}.pr-con-head{align-items:baseline;display:flex;justify-content:space-between}.pr-con-name{color:#0f172a;font-size:13.5px;font-weight:600}.pr-con-score{color:#0f172a;font-size:15px;font-weight:700}.pr-con-ceiling{color:#94a3b8;font-size:12px;font-weight:500}.pr-con-days{display:flex;gap:4px;margin:6px 0 4px}.pr-con-day{background:#e8eef5;border-radius:3px;height:8px;width:100%}.pr-con-day--met{background:#059669}.pr-con-meta{color:#94a3b8;font-size:11.5px;margin:0}.pr-con-cap{color:#b45309}@media (max-width:900px){.pr-two-col{grid-template-columns:1fr}}.perf-filters-card{margin-bottom:18px;padding:14px 18px}.perf-filters-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:14px}.perf-filter-item{flex:1 1 200px;min-width:200px}.perf-filter-item .assignment-column-row{margin:0}.perf-filter-item .assignment-column-label{color:#64748b;display:block;font-size:11px;font-weight:700;letter-spacing:.4px;margin-bottom:4px;text-transform:uppercase}.perf-filter-date{display:flex;flex:0 1 150px;flex-direction:column;min-width:150px}.perf-date-label{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.perf-date-input{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:9px;color:#1e293b;font-size:13.5px;outline:none;padding:9px 10px;transition:border-color .18s,box-shadow .18s}.perf-date-input:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.perf-filters-loading{color:#94a3b8;font-size:12px;margin-top:10px}.perf-summary-grid{margin-bottom:18px}.perf-chart-note{color:#898781;font-size:11.5px;margin:8px 0 0}@media (max-width:767px){.perf-filter-date,.perf-filter-item{flex-basis:100%;min-width:100%}}.tss-card{background:#fff;border:1px solid #e8eef5;border-radius:10px;margin-top:18px;padding:18px 20px}.tss-heading{color:#0f172a;font-size:16px;font-weight:700;margin:0 0 14px}.tss-state{color:#64748b;font-size:13.5px;padding:24px 12px;text-align:center}.tss-state-error{color:#b91c1c}.tss-empty{font-size:13.5px;margin:8px 0 0}.tss-empty,.tss-muted{color:#94a3b8}.tss-meta{display:flex;flex-direction:column;gap:7px;margin:0 0 16px}.tss-meta>div{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px}.tss-meta dt{color:#64748b;font-size:12px;font-weight:700;letter-spacing:.4px;min-width:132px;text-transform:uppercase}.tss-meta dd{color:#0f172a;font-size:14px;margin:0}.tss-breakdown{font-size:13.5px}.tss-level{font-size:12px;font-weight:600}.tss-table-wrap{overflow-x:auto}.tss-table{border-collapse:collapse;font-size:13.5px;width:100%}.tss-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.5px;padding:9px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.tss-table tbody td{border-bottom:1px solid #f1f5f9;color:#334155;padding:9px 12px}.tss-table tbody tr:last-child td{border-bottom:none}.tss-num,.tss-table thead th.tss-num{text-align:right}.tss-accuracy{color:#0f172a;font-weight:700}.tss-correct{color:#047857;font-weight:600}.tss-incorrect{color:#b91c1c;font-weight:600}.tss-unattempted{color:#64748b}.tss-schedule{grid-gap:7px 26px;border-top:1px solid #eef2f7;display:grid;gap:7px 26px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));margin-top:2px;padding-top:14px}.tss-count{cursor:help;font-weight:700}.tss-approx{color:#94a3b8;cursor:help;font-size:11px;margin-left:3px}.tss-table td,.tss-table th{white-space:nowrap}.tss-table td:first-child{min-width:140px;white-space:normal}.eqm-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000059;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:999}.eqm-content{background-color:#fff;border-radius:12px;box-shadow:0 10px 25px #00000040;max-height:90vh;max-width:720px;overflow-y:auto;padding:28px 32px;width:100%}.eqm-title{font-size:20px;font-weight:600;margin:0 0 20px}.eqm-loading{color:#94a3b8;padding:40px 0;text-align:center}.eqm-form{display:flex;flex-direction:column;gap:18px}.eqm-field label{color:#334155;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.eqm-mcq-notice{background-color:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;font-size:13px;line-height:1.5;padding:12px 14px}.eqm-mcq-notice a{color:#2563eb;font-weight:600;text-decoration:none}.eqm-mcq-notice a:hover{text-decoration:underline}.eqm-error{background-color:#ffe0e0;border:1px solid #d8000c;border-radius:8px;color:#d8000c;font-size:14px;font-weight:500;padding:10px 14px}.eqm-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.eqm-cancel-btn{background-color:#f1f5f9;border:none;border-radius:8px;color:#334155;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px}.eqm-cancel-btn:hover{background-color:#e2e8f0}.eqm-save-btn{background-color:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px}.eqm-save-btn:hover{background-color:#1d4ed8}.eqm-cancel-btn:disabled,.eqm-save-btn:disabled{cursor:default;opacity:.6}.srs-card{background:#fff;border:1px solid #e8eef5;border-radius:10px;margin:0 0 18px;padding:18px 20px}.srs-heading{color:#0f172a;font-size:16px;font-weight:700;margin:0 0 14px}.srs-state{background:#fff;border:1px solid #e8eef5;border-radius:10px;color:#64748b;font-size:13.5px;margin:0 0 18px;padding:22px 12px;text-align:center}.srs-state-error{color:#b91c1c}.srs-tiles{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:18px}.srs-tile{background:#f8fafc;border:1px solid #eef2f7;border-radius:8px;padding:12px 14px}.srs-tile-label{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.srs-tile-value{color:#0f172a;font-size:23px;font-weight:700;line-height:1.1;margin-top:3px}.srs-split{grid-gap:22px;display:grid;gap:22px;grid-template-columns:1fr 1fr}.srs-block-title{color:#64748b;font-size:12px;font-weight:700;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.srs-table{border-collapse:collapse;font-size:13px;width:100%}.srs-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:10.5px;font-weight:700;letter-spacing:.5px;padding:7px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.srs-table tbody td{border-bottom:1px solid #f1f5f9;color:#334155;padding:7px 10px}.srs-table tbody tr:last-child td{border-bottom:none}.srs-num,.srs-table thead th.srs-num{text-align:right}.srs-correct{color:#047857;font-weight:600}.srs-incorrect{color:#b91c1c;font-weight:600}.srs-acc{color:#0f172a;font-weight:700}@media (max-width:900px){.srs-split{grid-template-columns:1fr}}.sr-container{padding:24px 32px}.sr-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:16px}.sr-header h2{color:#1e293b;font-size:22px;font-weight:700;margin:0}.sr-total{color:#64748b;font-size:13px}.sr-header-actions{align-items:center;display:flex;gap:14px}.sr-header-btn{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px}.sr-header-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.sr-header-btn:disabled{cursor:default;opacity:.5}.sr-header-btn-primary{background:#2563eb;border-color:#2563eb;color:#fff}.sr-header-btn-primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.sr-info{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1d4ed8;font-size:14px;margin-bottom:16px;padding:10px 14px}.sr-toolbar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.sr-toolbar .assignment-column-row{min-width:160px}.sr-date-range{display:flex;gap:10px}.sr-date-range label{color:#64748b;display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:4px}.sr-date-range input[type=datetime-local]{border:1px solid #cbd5e1;border-radius:6px;color:#334155;font-size:13px;padding:8px 10px}.sr-clear-filters-btn{background:none;border:1px solid #e2e8f0;border-radius:6px;color:#ef4444;cursor:pointer;font-size:13px;font-weight:600;height:38px;padding:9px 14px}.sr-clear-filters-btn:hover{background:#fef2f2;border-color:#fca5a5}.sr-error{background-color:#ffe0e0;border:1px solid #d8000c;border-radius:8px;color:#d8000c;font-size:14px;margin-bottom:16px;padding:10px 14px}.sr-empty,.sr-loading{color:#94a3b8;padding:80px 20px;text-align:center}.sr-spinner{animation:sr-spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#2563eb;height:32px;margin:0 auto 16px;width:32px}@keyframes sr-spin{to{transform:rotate(1turn)}}.sr-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto}.sr-table{border-collapse:collapse;font-size:13px;width:100%}.sr-table th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.sr-table td{border-bottom:1px solid #f1f5f9;color:#334155;padding:12px 16px;vertical-align:top}.sr-table tr:last-child td{border-bottom:none}.sr-question-cell{max-width:280px}.sr-deleted{color:#ef4444;font-style:italic}.sr-muted{color:#94a3b8}.sr-badge{border-radius:999px;display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;white-space:nowrap}.sr-badge-correct{background:#dcfce7;color:#16a34a}.sr-badge-incorrect{background:#fee2e2;color:#dc2626}.sr-actions-cell{white-space:nowrap}.sr-action-btn{background:none;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;font-size:12px;font-weight:600;margin-right:6px;padding:6px 10px}.sr-action-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.sr-action-btn:disabled{cursor:default;opacity:.5}.sr-action-btn-correct{border-color:#86efac;color:#16a34a}.sr-action-btn-correct:hover:not(:disabled){background:#f0fdf4;border-color:#4ade80}.sr-load-more-row{padding:16px 0;text-align:center}.sr-load-more-btn{background:none;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:13px;font-weight:600;padding:8px 20px}.sr-load-more-btn:disabled{cursor:default;opacity:.6}.sr-tag{border-radius:10px;display:inline-block;font-size:11px;font-weight:600;line-height:1.6;margin-top:6px;padding:2px 8px;white-space:nowrap}.sr-tag--practice{background:#eff6ff;color:#1d4ed8}.sr-tag--example{background:#f0fdf4;color:#15803d}.sr-tag--assignment{background:#fefce8;color:#a16207}.sr-tag--quiz{background:#faf5ff;color:#7e22ce}.sr-tag--test{background:#1e293b;color:#e2e8f0;max-width:320px;overflow:hidden;text-overflow:ellipsis}.toast-success{background-color:#4caf50;border-radius:8px;box-shadow:0 0 10px #00000026;color:#fff;font-size:14px;padding:12px 20px;position:fixed;right:20px;top:20px;z-index:9999}.toast-success.hide{opacity:0;visibility:hidden}.host-container{background:#f4f4f9;border:1px solid #ddd;border-radius:10px;box-shadow:0 4px 15px #0000001a;display:inline-block;max-width:500px;padding:50px;width:100%}.host-input{border:2px solid #007bff;border-radius:5px;font-size:14px;margin-bottom:20px;outline:none;padding:12px;width:100%}.host-button{background-color:#2d8cff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px 25px;transition:background .3s}.host-button:hover{background-color:#1d73d6}#zmmtg-root{background-color:#000;display:none;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:9999}.input-field{background-color:#fff;width:100%}.meeting-start-btn{background:linear-gradient(135deg,#2d8cff,#1571d9);border:none;border-radius:10px;box-shadow:0 4px 15px #2d8cff4d;color:#fff;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:1px;margin-top:30px;outline:none;overflow:hidden;padding:10px;position:relative;transition:all .3s ease;width:100%}.dropdown-container{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.dropdown-column-row{display:flex;flex:1 1;flex-direction:column;min-width:100px}.dropdown-column-filter{font-size:14px}.dropdown__control{border:1px solid #ccc;border-radius:6px;box-shadow:none;min-height:36px;transition:border-color .2s ease}.dropdown__control:hover{border-color:#666}.dropdown__control--is-focused{border-color:#4a90e2;box-shadow:0 0 0 1px #4a90e2}.dropdown__menu{border-radius:6px}.dropdown__option{font-size:14px;padding:8px 12px}.dropdown__option--is-focused{background-color:#f0f8ff}.dropdown__option--is-selected{background-color:#4a90e2;color:#fff}.dropdown__placeholder{color:#888}.delete-popup-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.delete-popup{background:#fff;border-radius:10px;box-shadow:0 4px 12px #0003;font-size:16px;padding:20px 30px;text-align:center;width:300px}.popup-backdrop{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.popup-box{background-color:#fff;border-radius:10px;box-shadow:0 8px 24px #00000040;max-width:400px;padding:25px 30px;text-align:center;width:90%}.nn-page{background:#f8fafc;height:calc(100vh - 64px)}.nn-page,.nn-sidebar{display:flex;overflow:hidden}.nn-sidebar{background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;max-width:340px;min-width:260px;width:300px}.nn-sidebar-top{border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:16px 14px 10px}.nn-sidebar-title{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.07em;margin:0 0 10px;text-transform:uppercase}.nn-subject-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;max-height:90px;overflow-y:auto}.nn-subject-tab{align-items:center;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:20px;color:#64748b;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:5px;max-width:240px;padding:5px 11px;transition:all .15s}.nn-subject-tab-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nn-subject-tab:hover{border-color:#6366f1;color:#6366f1}.nn-subject-tab.active{background:#6366f1;border-color:#6366f1;color:#fff}.nn-subject-actions{align-items:center;display:flex;gap:6px}.nn-add-subject-btn{background:#0000;border:1.5px dashed #cbd5e1;border-radius:7px;color:#64748b;cursor:pointer;flex:1 1;font-size:12px;font-weight:600;padding:6px 10px;transition:all .15s}.nn-add-subject-btn:hover{background:#eef2ff;border-color:#6366f1;color:#6366f1}.nn-edit-subject-btn{background:#fff;border:1px solid #e2e8f0;border-radius:7px;color:#64748b;cursor:pointer;font-size:12px;font-weight:600;padding:5px 10px;transition:all .15s}.nn-edit-subject-btn:hover{border-color:#6366f1;color:#6366f1}.nn-tree{flex:1 1;overflow-y:auto;padding:8px 0 16px}.nn-module-group{margin-bottom:2px}.nn-mod-header{align-items:center;cursor:pointer;display:flex;gap:6px;padding:8px 14px;transition:background .12s;-webkit-user-select:none;user-select:none}.nn-mod-header:hover{background:#f1f5f9}.nn-mod-chevron{color:#94a3b8;flex-shrink:0;font-size:11px;transition:transform .2s}.nn-mod-chevron.open{transform:rotate(90deg)}.nn-mod-title-wrap{align-items:center;display:flex;flex:1 1;gap:6px;min-width:0;overflow:hidden}.nn-mod-title{color:#1e293b;flex-shrink:1;font-size:13px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nn-mod-meta{color:#94a3b8;flex-shrink:0;font-size:11px}.nn-mod-actions{display:none;flex-shrink:0;gap:4px}.nn-mod-header:hover .nn-mod-actions{display:flex}.nn-icon-btn{align-items:center;background:#0000;border:none;border-radius:5px;cursor:pointer;display:flex;font-size:12px;height:24px;justify-content:center;transition:all .12s;width:24px}.nn-icon-btn:hover{background:#e2e8f0}.nn-icon-btn.del:hover{background:#fee2e2;color:#dc2626}.nn-topics-list{padding-left:28px}.nn-topic-item{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:6px;margin:1px 8px 1px 0;padding:7px 14px 7px 10px;transition:all .12s}.nn-topic-item:hover{background:#f1f5f9}.nn-topic-item.active{background:#eef2ff;border-left:3px solid #6366f1;padding-left:7px}.nn-topic-dot{background:#cbd5e1;border-radius:50%;flex-shrink:0;height:6px;width:6px}.nn-topic-item.active .nn-topic-dot{background:#6366f1}.nn-topic-label-wrap{align-items:center;display:flex;flex:1 1;gap:6px;min-width:0;overflow:hidden}.nn-topic-label{color:#374151;flex-shrink:1;font-size:12.5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nn-topic-item.active .nn-topic-label{color:#4f46e5;font-weight:600}.nn-topic-actions{display:none;gap:3px}.nn-topic-item.active .nn-topic-actions,.nn-topic-item:hover .nn-topic-actions{display:flex}.nn-tree-add-btn{align-items:center;background:#0000;border:1.5px dashed #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;font-size:11.5px;font-weight:600;gap:6px;margin:2px 8px 2px 10px;padding:5px 10px;transition:all .12s;width:calc(100% - 18px)}.nn-tree-add-btn:hover{background:#eef2ff;border-color:#6366f1;color:#6366f1}.nn-add-module-wrap{padding:6px 14px 4px}.nn-inline-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:4px 8px 4px 0;padding:6px 8px}.nn-inline-input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:12.5px;margin-bottom:6px;outline:none;padding:6px 8px;width:100%}.nn-inline-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #eef2ff}.nn-inline-row{display:flex;gap:5px}.nn-inline-save{background:#6366f1;border:none;border-radius:5px;color:#fff;font-weight:700}.nn-inline-cancel,.nn-inline-save{cursor:pointer;font-size:11.5px;padding:4px 10px}.nn-inline-cancel{background:#fff;border:1px solid #d1d5db;border-radius:5px;color:#64748b;font-weight:600}.nn-main{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.nn-main-inner{flex:1 1;overflow-y:auto;padding:24px 28px}.nn-empty-state{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:12px;height:100%;justify-content:center;text-align:center}.nn-empty-icon{font-size:48px;opacity:.4}.nn-empty-state h3{color:#64748b;font-size:18px;margin:0}.nn-empty-state p{font-size:14px;margin:0;max-width:320px}.nn-content-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.nn-content-breadcrumb{align-items:center;color:#94a3b8;display:flex;flex-wrap:wrap;font-size:12px;gap:6px;margin-bottom:4px}.nn-content-breadcrumb span{color:#64748b}.nn-content-breadcrumb .sep{color:#cbd5e1}.nn-content-title{color:#0f172a;font-size:20px;font-weight:700;margin:0}.nn-section-count{color:#94a3b8;font-size:12px;font-weight:600;margin-bottom:12px}.nn-section-row{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:10px;margin-bottom:8px;padding:12px 16px;transition:box-shadow .15s}.nn-section-row:hover{box-shadow:0 2px 8px #0000000f}.nn-section-num{color:#cbd5e1;font-size:13px;font-weight:700;min-width:22px}.nn-section-info{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:10px;min-width:0}.nn-section-title{color:#1e293b;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nn-section-actions{display:flex;flex-shrink:0;gap:6px}.nn-btn-manage{background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:background .15s}.nn-btn-manage:hover{background:#4f46e5}.nn-btn-rename{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:all .15s}.nn-btn-rename:hover{border-color:#6366f1;color:#6366f1}.nn-btn-del{background:#fff;border:1px solid #fecaca;border-radius:6px;color:#dc2626;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:all .15s}.nn-btn-del:hover{background:#fee2e2}.nn-add-section-btn{align-items:center;background:#0000;border:2px dashed #cbd5e1;border-radius:10px;color:#64748b;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;margin-top:8px;padding:10px 16px;transition:all .15s;width:100%}.nn-add-section-btn:hover{background:#eef2ff;border-color:#6366f1;color:#6366f1}.nn-type-badge{align-items:center;border-radius:20px;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:600;gap:4px;padding:3px 10px}.nn-toast{animation:nn-toast-in .2s ease;background:#1e293b;border-radius:24px;bottom:24px;box-shadow:0 4px 20px #0003;color:#fff;font-size:13px;font-weight:600;left:50%;padding:10px 22px;position:fixed;transform:translateX(-50%);z-index:9999}@keyframes nn-toast-in{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.nn-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.nn-modal{background:#fff;border-radius:14px;box-shadow:0 20px 60px #0003;max-width:95vw;overflow:hidden;padding:0;width:440px}.nn-modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:18px 22px 16px}.nn-modal-title{color:#0f172a;font-size:16px;font-weight:700;margin:0}.nn-modal-close{background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;font-size:18px;padding:2px 6px}.nn-modal-close:hover{background:#f1f5f9;color:#1e293b}.nn-modal-body{padding:20px 22px}.nn-form-label{color:#64748b;display:block;font-size:12px;font-weight:700;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase}.nn-form-input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;padding:9px 12px;width:100%}.nn-form-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #eef2ff}.nn-error-msg{color:#dc2626;font-size:12px;margin-top:6px}.nn-type-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.nn-type-chip{align-items:center;border:2px solid;border-radius:8px;cursor:pointer;display:flex;font-size:12.5px;font-weight:600;gap:5px;padding:7px 13px;transition:all .15s}.nn-modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:10px;justify-content:flex-end;padding:14px 22px}.nn-btn-cancel-lg{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#64748b;cursor:pointer;font-size:13px;font-weight:600;padding:8px 18px}.nn-btn-save-lg{background:#6366f1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:700;padding:8px 20px;transition:background .15s}.nn-btn-save-lg:hover{background:#4f46e5}.nn-btn-save-lg:disabled{cursor:not-allowed;opacity:.6}.nn-tree-loading{color:#94a3b8;font-size:12px;padding:10px 28px}.nn-drag-grip{color:#cbd5e1;cursor:grab;flex-shrink:0;font-size:13px;line-height:1;padding:0 2px;-webkit-user-select:none;user-select:none}.nn-drag-grip:active{cursor:grabbing}.nn-module-group.nn-dragging .nn-mod-header,.nn-section-row.nn-dragging,.nn-topic-item.nn-dragging{opacity:.35}.nn-module-group.nn-drag-over>.nn-mod-header,.nn-section-row.nn-drag-over,.nn-topic-item.nn-drag-over{border-top:2px solid #6366f1;margin-top:-2px}.nn-insert-form{align-items:center;background:#eef2ff;border:1.5px solid #a5b4fc;border-radius:8px;display:flex;gap:5px;margin:4px 8px 4px 0;padding:6px 8px}.nn-insert-form.for-topic{margin-left:0;margin-right:0}.nn-insert-form input{background:#fff;border:1px solid #c7d2fe;border-radius:5px;flex:1 1;font-size:12px;outline:none;padding:5px 8px}.nn-insert-form input:focus{border-color:#6366f1}.nn-insert-form .nn-inline-cancel,.nn-insert-form .nn-inline-save{font-size:11.5px;padding:4px 10px}.nn-section-insert-row{align-items:center;background:#eef2ff;border:1.5px dashed #a5b4fc;border-radius:8px;color:#4f46e5;display:flex;font-size:12px;font-weight:600;gap:8px;margin-bottom:4px;padding:6px 16px}.nn-resize-handle{background:#0000;cursor:col-resize;flex-shrink:0;transition:background .15s;width:4px}.nn-resize-handle:hover{background:#6366f1}.nn-id-badge{align-items:center;background:#6366f114;border:1px solid #6366f133;border-radius:10px;color:#6366f1;cursor:pointer;display:inline-flex;flex-shrink:0;font-family:Courier New,monospace;font-size:10px;font-weight:700;line-height:1.4;padding:1px 6px;transition:all .15s;-webkit-user-select:none;user-select:none;white-space:nowrap}.nn-id-badge:hover{background:#eef2ff;border-color:#6366f1}.nn-id-badge.copied{background:#dcfce7;border-color:#bbf7d0;color:#16a34a}.nn-subject-tab.active .nn-id-badge{background:#fff3;border-color:#ffffff4d;color:#ffffffe6}.nn-subject-tab.active .nn-id-badge:hover{background:#ffffff59}.nn-subject-tab.active .nn-id-badge.copied{background:#22c55e4d;border-color:#22c55e66;color:#fff}.nn-section-title-row{gap:8px}.nn-section-detail-nav,.nn-section-title-row{align-items:center;display:flex;flex-wrap:wrap}.nn-section-detail-nav{border-bottom:1px solid #e2e8f0;gap:14px;margin-bottom:16px;padding-bottom:14px}.nn-back-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:12.5px;font-weight:600;gap:5px;padding:6px 13px;transition:all .15s}.nn-back-btn:hover{background:#eef2ff;border-color:#6366f1;color:#6366f1}.nn-section-detail-meta{align-items:center;display:flex;gap:8px;margin-bottom:6px}.nn-notes-editor-wrap{margin-top:4px}.nn-notes-save-row{align-items:center;display:flex;gap:12px;justify-content:flex-end;margin-top:14px}.nn-saved-ok{color:#16a34a;font-size:13px;font-weight:600}.nn-q-panel{margin-top:8px}.nn-q-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.nn-q-empty{color:#94a3b8;font-size:14px;padding:28px 0;text-align:center}.nn-q-row{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:10px;padding:12px 14px;transition:box-shadow .12s}.nn-q-row:hover{box-shadow:0 2px 8px #0000000f}.nn-q-num{color:#cbd5e1;flex-shrink:0;font-size:13px;font-weight:700;min-width:20px;padding-top:2px}.nn-q-body{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:0}.nn-q-text{color:#1e293b;font-size:13.5px;line-height:1.5}.nn-q-meta{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.nn-q-tag{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;color:#1d4ed8}.nn-diff-badge,.nn-q-tag{align-items:center;display:inline-flex;font-size:11px;font-weight:600;padding:2px 8px}.nn-diff-badge{border-radius:10px}.cn-breadcrumb{align-items:center;color:#6b7280;display:flex;flex-wrap:wrap;font-size:13px;gap:2px;margin-bottom:16px}.cn-breadcrumb-link{color:#6366f1;cursor:pointer;font-weight:500;transition:color .15s}.cn-breadcrumb-link:hover{color:#4338ca;text-decoration:underline}.cn-breadcrumb-sep{color:#d1d5db;margin:0 2px}.cn-breadcrumb-current{color:#374151;font-weight:600}.cn-page{margin:0 auto;max-width:1400px;min-height:calc(100vh - 120px);padding:24px}.cn-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.cn-title{color:#111827;font-size:22px;font-weight:700;margin:0 0 4px}.cn-subtitle{color:#6b7280;font-size:13px;margin:0}.cn-back-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:background .15s;white-space:nowrap}.cn-back-btn:hover{background:#f9fafb}.cn-toast{animation:cn-fade-in .2s ease;background:#111827;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;font-size:13px;font-weight:500;padding:10px 18px;position:fixed;right:24px;top:20px;z-index:9999}@keyframes cn-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.cn-columns{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.cn-columns{grid-template-columns:1fr}}.cn-col{background:#fff;border:1px solid #e5e7eb;border-radius:12px;min-height:300px;overflow:hidden}.cn-col-header{align-items:center;background:#f9fafb;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:14px 16px}.cn-col-title{color:#111827;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.cn-add-btn{background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:background .15s}.cn-add-btn:hover{background:#4f46e5}.cn-item{align-items:center;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;gap:8px;justify-content:space-between;padding:11px 16px;transition:background .1s}.cn-item:last-child{border-bottom:none}.cn-item:hover{background:#f8fafc}.cn-item-active{background:#eef2ff!important;border-left:3px solid #6366f1}.cn-topic-item{cursor:default}.cn-item-title{color:#111827;flex:1 1;font-size:13.5px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cn-item-btns{display:flex;flex-shrink:0;gap:6px}.cn-add-q-btn,.cn-del-btn,.cn-edit-btn,.cn-view-btn{border:1px solid #0000;border-radius:5px;cursor:pointer;font-size:11.5px;font-weight:600;padding:4px 10px;transition:all .15s;white-space:nowrap}.cn-edit-btn{background:#f3f4f6;border-color:#e5e7eb;color:#374151}.cn-edit-btn:hover{background:#e5e7eb}.cn-del-btn{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.cn-del-btn:hover{background:#fca5a5}.cn-view-btn{background:#ede9fe;border-color:#c4b5fd;color:#5b21b6}.cn-view-btn:hover{background:#c4b5fd}.cn-add-q-btn{background:#dcfce7;border-color:#86efac;color:#16a34a}.cn-add-q-btn:hover{background:#86efac}.cn-inline-form{background:#fafafa;border-bottom:1px solid #f3f4f6;padding:10px 16px}.cn-inline-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;color:#111827;font-size:13px;outline:none;padding:7px 10px;width:100%}.cn-inline-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.cn-inline-actions{display:flex;gap:6px;margin-top:6px}.cn-save-btn{background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:5px 14px}.cn-save-btn:hover{background:#4f46e5}.cn-cancel-btn{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:12px;font-weight:500;padding:5px 12px}.cn-cancel-btn:hover{background:#e5e7eb}.cn-empty{color:#9ca3af;font-size:13px;padding:20px 16px;text-align:center}.cn-empty-hint{color:#d1d5db;font-style:italic}.cn-loading{color:#9ca3af;font-size:13px;padding:16px;text-align:center}.cn-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:4px;margin-bottom:20px;overflow-x:auto}.cn-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:13.5px;font-weight:500;margin-bottom:-2px;padding:10px 20px;transition:all .15s;white-space:nowrap}.cn-tab:hover{color:#374151}.cn-tab-active{border-bottom-color:#6366f1;color:#6366f1;font-weight:600}.cn-tab-content{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px}.cn-tab-toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.cn-tab-count{color:#6b7280;font-size:13px}.cn-primary-btn{background:#6366f1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 18px;transition:background .15s}.cn-primary-btn:hover{background:#4f46e5}.cn-notes-list{display:flex;flex-direction:column;gap:8px}.cn-note-row{align-items:center;background:#fafafa;border:1px solid #f3f4f6;border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:12px 16px;transition:box-shadow .15s}.cn-note-row:hover{box-shadow:0 1px 4px #0000000f}.cn-note-info{display:flex;flex-direction:column;gap:3px;min-width:0}.cn-note-title{color:#111827;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cn-note-date{color:#9ca3af;font-size:11.5px}.cn-note-actions{display:flex;flex-shrink:0;gap:6px}.cn-qset-layout{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:1fr 1fr}@media (max-width:800px){.cn-qset-layout{grid-template-columns:1fr}}.cn-qset-panel{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.cn-panel-title{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-size:13px;font-weight:700;margin:0;padding:12px 16px}.cn-added-qs,.cn-q-picker-list{max-height:420px;overflow-y:auto}.cn-q-row{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;gap:10px;justify-content:space-between;padding:10px 14px;transition:background .1s}.cn-q-row:last-child{border-bottom:none}.cn-q-row:hover{background:#f8fafc}.cn-q-added{background:#fafffe}.cn-q-info{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.cn-q-num{color:#9ca3af;flex-shrink:0;font-size:12px;font-weight:600}.cn-q-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#111827;display:-webkit-box;font-size:13px;line-height:1.5;overflow:hidden}.cn-q-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.cn-q-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px}.cn-q-subject{background:#ede9fe;color:#5b21b6}.cn-diff-easy{background:#dcfce7;color:#16a34a}.cn-diff-medium{background:#fef9c3;color:#b45309}.cn-diff-hard{background:#fee2e2;color:#dc2626}.cn-diff-very-hard{background:#fce7f3;color:#be185d}.cn-diff-professional{background:#f3e8ff;color:#7e22ce}.cn-q-search{background:#fff;border:none;border-bottom:1px solid #e5e7eb;box-sizing:border-box;color:#111827;font-size:13px;outline:none;padding:10px 14px;width:100%}.cn-q-search:focus{background:#fafafa}.cn-q-pagination{align-items:center;border-top:1px solid #f3f4f6;color:#6b7280;display:flex;font-size:12px;gap:12px;justify-content:center;padding:10px}.cn-q-pagination button{background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;font-size:12px;padding:4px 12px}.cn-q-pagination button:disabled{cursor:default;opacity:.4}.cn-sd-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.cn-sd-section-header{align-items:center;background:#f9fafb;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:14px 20px}.cn-sd-section-title{color:#111827;font-size:14px;font-weight:700}.cn-sd-count{color:#6b7280;font-weight:400}.cn-sd-inline-form{background:#fafafa;border-bottom:1px solid #f3f4f6;padding:12px 20px}.cn-module-list{display:flex;flex-direction:column}.cn-module-card{border-bottom:1px solid #f3f4f6}.cn-module-card:last-child{border-bottom:none}.cn-module-row{align-items:center;cursor:pointer;display:flex;gap:10px;padding:13px 20px;transition:background .1s}.cn-module-row:hover{background:#f8fafc}.cn-expand-icon{color:#6b7280;flex-shrink:0;font-size:11px;width:16px}.cn-module-title{color:#111827;flex:1 1;font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cn-module-edit-wrap{align-items:center;display:flex;flex:1 1;gap:8px}.cn-module-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.cn-topic-pill{background:#f3f4f6;border-radius:10px;color:#6b7280;font-size:11.5px;padding:2px 10px;white-space:nowrap}.cn-topics-panel{background:#f8fafc;border-top:1px solid #f3f4f6;padding-bottom:4px}.cn-topics-panel-header{align-items:center;display:flex;justify-content:space-between;padding:10px 20px 8px 40px}.cn-topics-panel-label{color:#6b7280;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.cn-topics-add-form{border-radius:8px;margin:0 20px 8px 40px;padding:10px 14px}.cn-topic-row{align-items:center;border-top:1px solid #f3f4f6;display:flex;gap:10px;padding:9px 20px 9px 40px;transition:background .1s}.cn-topic-row:hover{background:#f1f5f9}.cn-topic-title-link{color:#3b82f6;cursor:pointer;flex:1 1;font-size:13.5px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cn-topic-title-link:hover{color:#2563eb;text-decoration:underline}.cn-topic-actions{display:flex;flex-shrink:0;gap:6px}.cn-note-detail-card{max-width:100%}.cn-note-content{color:#374151;font-size:14.5px;line-height:1.75;word-break:break-word}.cn-note-content h1,.cn-note-content h2,.cn-note-content h3,.cn-note-content h4,.cn-note-content h5,.cn-note-content h6{color:#111827;line-height:1.3;margin:16px 0 8px}.cn-note-content h1{font-size:22px}.cn-note-content h2{font-size:19px}.cn-note-content h3{font-size:16px}.cn-note-content p{margin:0 0 12px}.cn-note-content ol,.cn-note-content ul{margin:0 0 12px;padding-left:24px}.cn-note-content li{margin-bottom:4px}.cn-note-content a{color:#6366f1;text-decoration:underline}.cn-note-content img{border-radius:6px;margin:8px 0;max-width:100%}.cn-note-content table{border-collapse:collapse;margin:12px 0;width:100%}.cn-note-content table td,.cn-note-content table th{border:1px solid #e5e7eb;font-size:13.5px;padding:8px 12px}.cn-note-content table th{background:#f9fafb;font-weight:600}.cn-note-content code,.cn-note-content pre{background:#f3f4f6;border-radius:4px;font-family:monospace;font-size:13px}.cn-note-content pre{overflow-x:auto;padding:12px 16px}.cn-note-content code{padding:2px 5px}.cn-note-content blockquote{background:#f5f3ff;border-left:3px solid #6366f1;border-radius:0 6px 6px 0;color:#4b5563;margin:12px 0;padding:8px 16px}.cn-delete-btn-lg{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#dc2626;cursor:pointer;font-size:14px;font-weight:600;padding:10px 22px;transition:background .15s}.cn-delete-btn-lg:hover:not(:disabled){background:#fca5a5}.cn-delete-btn-lg:disabled{cursor:not-allowed;opacity:.5}.cn-form-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;max-width:1100px;padding:24px}.cn-error{background:#fee2e2;border-radius:8px;color:#dc2626;font-size:13px;font-weight:500;margin-bottom:16px;padding:10px 14px}.cn-form-field{margin-bottom:20px}.cn-form-label{color:#374151;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.cn-form-input{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#111827;font-size:14px;outline:none;padding:10px 14px;transition:border-color .15s;width:100%}.cn-form-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.cn-form-actions{border-top:1px solid #f3f4f6;display:flex;gap:10px;justify-content:flex-end;margin-top:24px;padding-top:20px}.cn-cancel-btn-lg{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:10px 22px;transition:background .15s}.cn-cancel-btn-lg:hover:not(:disabled){background:#e5e7eb}.cn-cancel-btn-lg:disabled{cursor:not-allowed;opacity:.5}.cn-save-btn-lg{background:#6366f1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:background .15s}.cn-save-btn-lg:hover:not(:disabled){background:#4f46e5}.cn-save-btn-lg:disabled{cursor:not-allowed;opacity:.6}.nq-section{margin-top:28px}.nq-section-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:16px}.nq-section-title{color:#111827;display:flex;font-size:17px;gap:8px;margin:0 0 4px}.nq-count-badge,.nq-section-title{align-items:center;font-weight:700}.nq-count-badge{background:#6366f1;border-radius:99px;color:#fff;display:inline-flex;font-size:12px;height:22px;justify-content:center;min-width:22px;padding:0 7px}.nq-section-hint{color:#9ca3af;font-size:12.5px;margin:0}.nq-picker-toggle-active{background:#374151!important}.nq-picker-panel{background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:20px;overflow:hidden}.nq-picker-toolbar{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:12px;padding:12px 16px}.nq-picker-search{background:#fff;border:1px solid #d1d5db;border-radius:7px;color:#111827;flex:1 1;font-size:13px;min-width:180px;outline:none;padding:7px 12px}.nq-picker-search:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f11f}.nq-picker-list{max-height:360px;overflow-y:auto}.nq-type-pill{background:#f3f4f6;color:#6b7280}.nq-cards-list{display:flex;flex-direction:column;gap:16px}.nq-empty-state{background:#fafafa;border:1px dashed #e5e7eb;border-radius:10px;color:#9ca3af;font-size:13.5px;padding:32px 24px;text-align:center}.nq-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000a;overflow:hidden;padding:0;transition:box-shadow .15s}.nq-card:hover{box-shadow:0 2px 8px #00000014}.nq-card-header{background:#f9fafb;border-bottom:1px solid #f3f4f6;gap:10px;justify-content:space-between;padding:12px 16px}.nq-card-header,.nq-card-meta{align-items:center;display:flex}.nq-card-meta{flex-wrap:wrap;gap:8px}.nq-num{background:#eef2ff;border-radius:5px;color:#6366f1;font-size:13px;font-weight:700;padding:2px 9px}.nq-type-badge{background:#f3f4f6;border-radius:5px;color:#374151;font-size:11.5px;font-weight:600;padding:3px 9px}.nq-remove-btn{background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;flex-shrink:0;font-size:18px;font-weight:400;line-height:1;padding:2px 6px;transition:color .12s,background .12s}.nq-remove-btn:hover:not(:disabled){background:#fee2e2;color:#dc2626}.nq-remove-btn:disabled{cursor:not-allowed;opacity:.4}.nq-question-text{color:#111827;font-size:15px;font-weight:500;line-height:1.65;margin:0;padding:18px 20px 14px}.nq-options{display:flex;flex-direction:column;gap:8px;padding:4px 20px 16px}.nq-option{align-items:center;background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;cursor:default;display:flex;gap:10px;padding:9px 14px;transition:border-color .15s,background .15s}.nq-option-correct{background:#f0fdf4;border-color:#86efac}.nq-indicator{background:#fff;border:2px solid #d1d5db;flex-shrink:0;height:16px;transition:border-color .15s,background .15s;width:16px}.nq-radio{border-radius:50%}.nq-checkbox{border-radius:3px}.nq-indicator-correct{background:#16a34a;border-color:#16a34a}.nq-option-text{color:#374151;flex:1 1;font-size:13.5px;line-height:1.45}.nq-option-correct .nq-option-text{color:#15803d;font-weight:500}.nq-correct-mark{color:#16a34a;flex-shrink:0;font-size:14px;font-weight:700}.nq-card-actions{background:#f9fafb;border-top:1px solid #f3f4f6;display:flex;flex-wrap:wrap;gap:10px;padding:12px 20px}.nq-action-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 18px;transition:all .15s}.nq-action-btn-answer{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.nq-action-btn-answer:hover{background:#dbeafe}.nq-action-btn-solution{background:#fef9c3;border-color:#fde68a;color:#854d0e}.nq-action-btn-solution:hover{background:#fef08a}.nq-action-btn-active{background:#374151;border-color:#374151;color:#fff}.nq-action-btn-active:hover{background:#1f2937}.nq-reveal{animation:nq-slide-in .2s ease;border-radius:8px;margin:0 20px 16px;padding:14px 16px}@keyframes nq-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nq-reveal-answer{background:#f0fdf4;border:1px solid #bbf7d0}.nq-reveal-solution{background:#fffbeb;border:1px solid #fde68a}.nq-reveal-label{font-size:11.5px;font-weight:700;letter-spacing:.06em;margin-bottom:8px;text-transform:uppercase}.nq-reveal-answer .nq-reveal-label{color:#16a34a}.nq-reveal-solution .nq-reveal-label{color:#b45309}.nq-reveal-text{color:#374151;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.nq-code-block{background:#1e293b;border-radius:7px;color:#e2e8f0;font-family:Courier New,Courier,monospace;font-size:13px;line-height:1.55;margin:0;overflow-x:auto;padding:14px 16px;white-space:pre}.cn-modal-overlay{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.cn-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-width:520px;overflow:hidden;width:100%}.cn-modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px 16px}.cn-modal-title{color:#0f172a;font-size:16px;font-weight:700;margin:0}.cn-modal-close{background:none;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:16px;line-height:1;padding:4px 8px}.cn-modal-close:hover{background:#f1f5f9;color:#475569}.cn-modal-body{flex:1 1;padding:20px 24px}.cn-modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:10px;justify-content:flex-end;padding:16px 24px}
/*# sourceMappingURL=main.a6ab74cc.css.map*/