@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";.login-wrapper[data-v-3bcc6d16]{background:linear-gradient(135deg,#0f172a 0%,#1e1b4b 50%,#312e81 100%);justify-content:center;align-items:center;width:100vw;min-height:100vh;padding:24px;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;display:flex;position:relative;overflow:hidden}.bg-shape[data-v-3bcc6d16]{filter:blur(80px);opacity:.35;pointer-events:none;border-radius:50%;position:absolute}.shape-1[data-v-3bcc6d16]{background:#6366f1;width:450px;height:450px;top:-100px;left:-100px}.shape-2[data-v-3bcc6d16]{background:#ec4899;width:400px;height:400px;bottom:-100px;right:-80px}.shape-3[data-v-3bcc6d16]{background:#06b6d4;width:300px;height:300px;top:40%;left:60%}.login-card-container[data-v-3bcc6d16]{z-index:10;background:#fffffffa;border-radius:28px;grid-template-columns:1fr 1.15fr;width:100%;max-width:980px;min-height:560px;display:grid;position:relative;overflow:hidden;box-shadow:0 25px 60px -15px #00000080,0 0 0 1px #fff3}@media (width<=820px){.login-card-container[data-v-3bcc6d16]{grid-template-columns:1fr}.branding-side[data-v-3bcc6d16]{display:none!important}}.branding-side[data-v-3bcc6d16]{color:#fff;background:linear-gradient(155deg,#4338ca 0%,#3730a3 50%,#1e1b4b 100%);flex-direction:column;justify-content:space-between;padding:44px 38px;display:flex;position:relative}.branding-side[data-v-3bcc6d16]:after{content:"";pointer-events:none;background-image:radial-gradient(#ffffff1a 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.brand-header[data-v-3bcc6d16]{align-items:center;gap:12px;display:flex}.brand-logo-icon[data-v-3bcc6d16]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff2e;border:1px solid #ffffff4d;border-radius:14px;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.brand-title[data-v-3bcc6d16]{letter-spacing:-.5px;font-size:22px;font-weight:900;display:block}.brand-badge[data-v-3bcc6d16]{color:#78350f;letter-spacing:.8px;background:#f59e0b;border-radius:6px;margin-top:1px;padding:2px 7px;font-size:9.5px;font-weight:800;display:inline-block}.branding-heading[data-v-3bcc6d16]{margin-bottom:14px;font-size:24px;font-weight:800;line-height:1.35}.branding-sub[data-v-3bcc6d16]{color:#c7d2fe;margin-bottom:24px;font-size:13.5px;line-height:1.6}.feature-bullets[data-v-3bcc6d16]{flex-direction:column;gap:12px;display:flex}.bullet-item[data-v-3bcc6d16]{color:#e0e7ff;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.bullet-icon[data-v-3bcc6d16]{background:#ffffff26;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;display:flex}.branding-footer[data-v-3bcc6d16]{color:#a5b4fc;font-size:11.5px}.form-side[data-v-3bcc6d16]{background:#fff;flex-direction:column;justify-content:center;padding:44px;display:flex}.form-header[data-v-3bcc6d16]{margin-bottom:24px}.form-title[data-v-3bcc6d16]{color:#0f172a;margin-bottom:6px;font-size:22px;font-weight:800}.form-desc[data-v-3bcc6d16]{color:#64748b;font-size:13px;line-height:1.5}.login-form[data-v-3bcc6d16]{flex-direction:column;gap:16px;display:flex}.form-group[data-v-3bcc6d16]{flex-direction:column;display:flex}.form-label[data-v-3bcc6d16]{color:#334155;margin-bottom:6px;font-size:12.5px;font-weight:700}.forgot-link[data-v-3bcc6d16]{color:#6366f1;font-size:11px;font-weight:600}.input-wrapper[data-v-3bcc6d16]{align-items:center;display:flex;position:relative}.input-icon[data-v-3bcc6d16]{pointer-events:none;font-size:14px;position:absolute;left:14px}.form-input[data-v-3bcc6d16]{color:#0f172a;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:100%;padding:12px 14px 12px 42px;font-size:13.5px;transition:all .2s}.form-input[data-v-3bcc6d16]:focus{background:#fff;border-color:#4f46e5;box-shadow:0 0 0 3.5px #4f46e51f}.btn-toggle-pwd[data-v-3bcc6d16]{cursor:pointer;opacity:.7;background:0 0;border:none;padding:4px;font-size:14px;position:absolute;right:12px}.btn-toggle-pwd[data-v-3bcc6d16]:hover{opacity:1}.error-banner[data-v-3bcc6d16]{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:12.5px;font-weight:600;display:flex}.btn-submit[data-v-3bcc6d16]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4f46e5 0%,#4338ca 100%);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:13px 20px;font-size:14px;font-weight:800;transition:all .2s;display:flex;box-shadow:0 4px 14px #4f46e559}.btn-submit[data-v-3bcc6d16]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #4f46e573}.btn-submit[data-v-3bcc6d16]:disabled{opacity:.7;cursor:not-allowed}.spinner-small[data-v-3bcc6d16]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin-3bcc6d16}@keyframes spin-3bcc6d16{to{transform:rotate(360deg)}}.demo-accounts-box[data-v-3bcc6d16]{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;margin-top:22px;padding:14px 16px}.demo-box-header[data-v-3bcc6d16]{color:#64748b;align-items:center;gap:4px;margin-bottom:8px;font-size:11.5px;font-weight:700;display:flex}.demo-btn-group[data-v-3bcc6d16]{flex-wrap:wrap;gap:8px;display:flex}.demo-chip[data-v-3bcc6d16]{color:#334155;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s}.demo-chip[data-v-3bcc6d16]:hover{color:#4f46e5;background:#eef2ff;border-color:#a5b4fc}.btn-forgot-link[data-v-3bcc6d16]{color:#4f46e5;cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:700;transition:color .15s}.btn-forgot-link[data-v-3bcc6d16]:hover{color:#3730a3;text-decoration:underline}.modal-backdrop[data-v-3bcc6d16]{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9999;background:#0f172abf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card[data-v-3bcc6d16]{background:#fff;border-radius:20px;width:100%;max-width:480px;animation:.25s cubic-bezier(.16,1,.3,1) modalPop-3bcc6d16;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes modalPop-3bcc6d16{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header[data-v-3bcc6d16]{border-bottom:1px solid #f1f5f9;align-items:center;gap:14px;padding:20px 24px 16px;display:flex;position:relative}.modal-icon-badge[data-v-3bcc6d16]{background:#eff6ff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;display:flex}.modal-title[data-v-3bcc6d16]{color:#0f172a;margin:0 0 2px;font-size:16px;font-weight:800}.modal-subtitle[data-v-3bcc6d16]{color:#64748b;margin:0;font-size:12px}.btn-close-modal[data-v-3bcc6d16]{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;transition:all .15s;display:flex;position:absolute;top:18px;right:18px}.btn-close-modal[data-v-3bcc6d16]:hover{color:#0f172a;background:#e2e8f0}.modal-body[data-v-3bcc6d16]{padding:20px 24px}.forgot-instructions[data-v-3bcc6d16]{color:#475569;margin:0;font-size:13px;line-height:1.45}.otp-preview-chip[data-v-3bcc6d16]{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;margin-top:10px;padding:8px 12px;font-size:12.5px}.modal-footer[data-v-3bcc6d16]{background:#fafafa;border-top:1px solid #f1f5f9;justify-content:flex-end;gap:10px;padding:14px 24px 20px;display:flex}.btn-cancel[data-v-3bcc6d16]{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:9px 16px;font-size:13px;font-weight:700}.btn-cancel[data-v-3bcc6d16]:hover{background:#f1f5f9}.btn-primary-action[data-v-3bcc6d16]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4f46e5,#6366f1);border:none;border-radius:10px;align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:800;transition:opacity .15s;display:flex;box-shadow:0 2px 6px #4f46e540}.btn-primary-action[data-v-3bcc6d16]:disabled{opacity:.6;cursor:not-allowed}.login-history-view[data-v-77c51d15]{flex-direction:column;gap:20px;display:flex}.page-header[data-v-77c51d15]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:4px;display:flex}.page-title[data-v-77c51d15]{color:#0f172a;letter-spacing:-.5px;font-size:24px;font-weight:800}.page-subtitle[data-v-77c51d15]{color:#64748b;margin-top:4px;font-size:13.5px}.btn-refresh[data-v-77c51d15]{color:#334155;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;align-items:center;gap:8px;padding:9px 16px;font-size:13px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 2px 4px #0f172a08}.btn-refresh[data-v-77c51d15]:hover:not(:disabled){color:#4f46e5;background:#eef2ff;border-color:#6366f1}.refresh-icon[data-v-77c51d15]{width:16px;height:16px}.refresh-icon.spinning[data-v-77c51d15]{animation:.8s linear infinite spin-77c51d15}@keyframes spin-77c51d15{to{transform:rotate(360deg)}}.stats-grid[data-v-77c51d15]{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.stat-card[data-v-77c51d15]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;align-items:center;gap:14px;padding:18px 20px;display:flex;box-shadow:0 2px 6px #0f172a0a}.stat-icon-wrapper[data-v-77c51d15]{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.stat-icon[data-v-77c51d15]{width:22px;height:22px}.stat-indigo .stat-icon-wrapper[data-v-77c51d15]{color:#4f46e5;background:#eef2ff}.stat-emerald .stat-icon-wrapper[data-v-77c51d15]{color:#059669;background:#ecfdf5}.stat-rose .stat-icon-wrapper[data-v-77c51d15]{color:#e11d48;background:#ffe4e6}.stat-amber .stat-icon-wrapper[data-v-77c51d15]{color:#d97706;background:#fef3c7}.stat-label[data-v-77c51d15]{color:#64748b;font-size:12px;font-weight:600;display:block}.stat-value[data-v-77c51d15]{color:#0f172a;margin-top:2px;font-size:18px;font-weight:800}.stat-unit[data-v-77c51d15]{color:#94a3b8;font-size:12px;font-weight:600}.filter-card[data-v-77c51d15]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;display:flex;box-shadow:0 2px 6px #0f172a0a}.search-box[data-v-77c51d15]{flex:1;min-width:280px;position:relative}.search-icon[data-v-77c51d15]{color:#94a3b8;width:17px;height:17px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input[data-v-77c51d15]{color:#0f172a;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:100%;padding:10px 38px 10px 40px;font-size:13.5px;transition:all .2s}.search-input[data-v-77c51d15]:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.clear-search-btn[data-v-77c51d15]{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:14px;font-weight:700;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.clear-search-btn[data-v-77c51d15]:hover{color:#ef4444}.filter-actions[data-v-77c51d15]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-select-wrap[data-v-77c51d15]{align-items:center;gap:8px;display:flex}.filter-label[data-v-77c51d15]{color:#64748b;white-space:nowrap;font-size:12px;font-weight:700}.filter-select[data-v-77c51d15]{color:#334155;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;padding:9px 12px;font-size:13px;font-weight:600}.filter-select[data-v-77c51d15]:focus{border-color:#6366f1}.table-card[data-v-77c51d15]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:0;overflow:hidden;box-shadow:0 2px 6px #0f172a0a}.table-responsive[data-v-77c51d15]{overflow-x:auto}.custom-table[data-v-77c51d15]{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.custom-table thead[data-v-77c51d15]{background:#f8fafc;border-bottom:1.5px solid #e2e8f0}.custom-table th[data-v-77c51d15]{color:#475569;text-transform:uppercase;letter-spacing:.5px;padding:14px 18px;font-size:11.5px;font-weight:700}.table-row[data-v-77c51d15]{border-bottom:1px solid #f1f5f9;transition:background .15s}.table-row[data-v-77c51d15]:hover{background-color:#f8fafc}.custom-table td[data-v-77c51d15]{vertical-align:middle;padding:16px 18px}.user-profile-cell[data-v-77c51d15]{align-items:center;gap:12px;display:flex}.user-avatar[data-v-77c51d15]{color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:14px;font-weight:800;display:flex}.avatar-admin[data-v-77c51d15]{background:linear-gradient(135deg,#f59e0b,#d97706)}.avatar-student[data-v-77c51d15]{background:linear-gradient(135deg,#6366f1,#4f46e5)}.user-name[data-v-77c51d15]{color:#0f172a;font-size:13.5px;font-weight:700}.user-email[data-v-77c51d15]{color:#64748b;margin-top:1px;font-size:12px}.badge-admin[data-v-77c51d15]{color:#b45309;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:800}.badge-student[data-v-77c51d15]{color:#4f46e5;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:700}.badge-neutral[data-v-77c51d15]{color:#64748b;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:600}.device-cell[data-v-77c51d15]{align-items:center;gap:10px;display:flex}.device-icon[data-v-77c51d15]{font-size:18px}.device-platform[data-v-77c51d15]{color:#1e293b;font-size:13px;font-weight:700}.device-browser[data-v-77c51d15]{color:#64748b;font-size:11.5px}.ip-code[data-v-77c51d15]{color:#334155;background:#f1f5f9;border-radius:6px;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:600}.status-pill[data-v-77c51d15]{border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:800;display:inline-flex}.status-success[data-v-77c51d15]{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.status-failed[data-v-77c51d15]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.status-tooltip[data-v-77c51d15]{opacity:.85;font-size:10.5px;font-weight:400}.time-main[data-v-77c51d15]{color:#1e293b;font-size:12.5px;font-weight:700}.time-sub[data-v-77c51d15]{color:#94a3b8;margin-top:1px;font-size:11px}.empty-cell[data-v-77c51d15]{text-align:center;padding:54px 20px!important}.empty-state-wrap[data-v-77c51d15]{flex-direction:column;align-items:center;gap:8px;display:flex}.empty-title[data-v-77c51d15]{color:#0f172a;font-size:16px;font-weight:800}.empty-desc[data-v-77c51d15]{color:#64748b;max-width:400px;font-size:13px}.spinner-blue[data-v-77c51d15]{border:3px solid #eef2ff;border-top-color:#4f46e5;border-radius:50%;width:32px;height:32px;margin-bottom:8px;animation:.8s linear infinite spin-77c51d15}.btn-reset[data-v-77c51d15]{color:#4f46e5;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:10px;margin-top:8px;padding:8px 16px;font-size:12.5px;font-weight:700}.btn-reset[data-v-77c51d15]:hover{color:#fff;background:#4f46e5}.pagination-footer[data-v-77c51d15]{background:#f8fafc;border-top:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex}.pagination-info[data-v-77c51d15]{color:#64748b;font-size:13px}.font-bold[data-v-77c51d15]{color:#0f172a;font-weight:700}.pagination-controls[data-v-77c51d15]{align-items:center;gap:6px;display:flex}.pagination-pages[data-v-77c51d15]{gap:4px;display:flex}.pagination-btn[data-v-77c51d15]{color:#334155;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;padding:6px 12px;font-size:12.5px;font-weight:700;transition:all .15s}.pagination-btn[data-v-77c51d15]:hover:not(:disabled){color:#4f46e5;border-color:#6366f1}.pagination-btn[data-v-77c51d15]:disabled{opacity:.5;cursor:not-allowed}.pagination-number.active[data-v-77c51d15]{color:#fff;background:#4f46e5;border-color:#4f46e5}.page-header[data-v-3ed6788c]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.breadcrumb[data-v-3ed6788c]{color:var(--slate-500);align-items:center;gap:6px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.breadcrumb-separator[data-v-3ed6788c]{width:14px;height:14px;color:var(--slate-400)}.breadcrumb-current[data-v-3ed6788c]{color:var(--primary-600)}.page-title[data-v-3ed6788c]{color:var(--slate-900);font-size:24px;font-weight:800}.page-subtitle[data-v-3ed6788c]{color:var(--slate-500);margin-top:3px;font-size:13.5px}.header-actions[data-v-3ed6788c]{flex-wrap:wrap;gap:10px;display:flex}.tabs-container[data-v-3ed6788c]{border-bottom:1.5px solid var(--slate-200);gap:8px;margin-bottom:18px;padding-bottom:4px;display:flex}.tab-btn[data-v-3ed6788c]{color:var(--slate-600);cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 18px;font-size:13.5px;font-weight:700;transition:all .2s;display:flex}.tab-btn[data-v-3ed6788c]:hover{background:var(--slate-100);color:var(--slate-900)}.tab-btn.active-tab[data-v-3ed6788c]{color:#4f46e5;background:#eef2ff}.tab-icon[data-v-3ed6788c]{width:16px;height:16px}.tab-badge[data-v-3ed6788c]{background:var(--slate-200);color:var(--slate-700);border-radius:20px;padding:2px 8px;font-size:11px;font-weight:800}.active-tab .tab-badge[data-v-3ed6788c]{color:#fff;background:#4f46e5}.badge-indigo[data-v-3ed6788c]{color:#4338ca;background:#e0e7ff}.badge-amber[data-v-3ed6788c]{color:#92400e;background:#fef3c7}.filter-card[data-v-3ed6788c]{margin-bottom:24px;padding:18px 22px}.filter-grid[data-v-3ed6788c]{grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) 1.3fr;align-items:end;gap:16px;display:grid}.grid-without-topic[data-v-3ed6788c]{grid-template-columns:repeat(3,1fr) 1.5fr}.table-card[data-v-3ed6788c]{border:1px solid #e2e8f0;padding:0;overflow:hidden}.custom-table[data-v-3ed6788c]{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.custom-table th[data-v-3ed6788c]{color:#475569;text-transform:uppercase;letter-spacing:.5px;background:#f8fafc;border-bottom:1.5px solid #e2e8f0;font-size:11.5px;font-weight:700}.table-row[data-v-3ed6788c]{border-bottom:1px solid #f1f5f9;transition:background .15s}.table-row[data-v-3ed6788c]:hover{background-color:#f8fafc}.question-title[data-v-3ed6788c]{color:#0f172a;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.tag-topic[data-v-3ed6788c]{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;align-items:center;gap:4px;margin-top:5px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.tag-quiz[data-v-3ed6788c]{color:#d97706;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:4px;margin-top:5px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.quiz-results-view[data-v-568c9734]{padding-bottom:40px}.page-header[data-v-568c9734]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.breadcrumb[data-v-568c9734]{color:var(--slate-500);align-items:center;gap:6px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.breadcrumb-separator[data-v-568c9734]{width:14px;height:14px;color:var(--slate-400)}.breadcrumb-current[data-v-568c9734]{color:var(--primary-600)}.page-title[data-v-568c9734]{color:var(--slate-900);letter-spacing:-.5px;font-size:24px;font-weight:800}.page-subtitle[data-v-568c9734]{color:var(--slate-500);margin-top:3px;font-size:13.5px}.header-actions[data-v-568c9734]{gap:10px;display:flex}.tabs-container[data-v-568c9734]{border-radius:var(--radius-xl);border:1.5px solid var(--slate-200);width:fit-content;box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:8px;margin-bottom:20px;padding:6px;display:flex}.tab-btn[data-v-568c9734]{color:var(--slate-600);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:8px;padding:8px 18px;font-size:13px;font-weight:700;transition:all .2s;display:flex}.tab-btn[data-v-568c9734]:hover{color:var(--slate-900);background:var(--slate-100)}.tab-btn.active-tab[data-v-568c9734]{background:var(--primary-600);color:#fff;box-shadow:0 2px 8px #4f46e54d}.tab-icon[data-v-568c9734]{width:16px;height:16px}.tab-badge[data-v-568c9734]{background:var(--slate-200);color:var(--slate-700);border-radius:999px;padding:2px 7px;font-size:11px;font-weight:800}.active-tab .tab-badge[data-v-568c9734]{color:#fff;background:#ffffff40}.badge-indigo[data-v-568c9734]{color:#4f46e5;background:#eef2ff}.badge-amber[data-v-568c9734]{color:#b45309;background:#fffbeb}.stats-grid[data-v-568c9734]{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.stat-card[data-v-568c9734]{border-radius:var(--radius-xl);border:1px solid var(--slate-200);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:16px;padding:18px 20px;transition:transform .15s;display:flex}.stat-card[data-v-568c9734]:hover{transform:translateY(-2px)}.stat-icon-wrapper[data-v-568c9734]{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.stat-indigo .stat-icon-wrapper[data-v-568c9734]{color:#4f46e5;background:#eef2ff}.stat-emerald .stat-icon-wrapper[data-v-568c9734]{color:#10b981;background:#ecfdf5}.stat-amber .stat-icon-wrapper[data-v-568c9734]{color:#f59e0b;background:#fffbeb}.stat-blue .stat-icon-wrapper[data-v-568c9734]{color:#3b82f6;background:#eff6ff}.stat-icon[data-v-568c9734]{width:24px;height:24px}.stat-label[data-v-568c9734]{color:var(--slate-500);text-transform:uppercase;letter-spacing:.5px;font-size:11.5px;font-weight:700;display:block}.stat-value[data-v-568c9734]{color:var(--slate-900);align-items:baseline;gap:4px;margin-top:2px;font-size:22px;font-weight:800;display:flex}.stat-unit[data-v-568c9734]{color:var(--slate-500);font-size:13px;font-weight:600}.filter-panel[data-v-568c9734]{border-radius:var(--radius-xl);border:1.5px solid var(--slate-200);background:#fff;margin-bottom:24px;padding:20px 24px;box-shadow:0 4px 16px #00000008}.filter-header[data-v-568c9734]{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.filter-title-wrap[data-v-568c9734]{align-items:center;gap:8px;display:flex}.filter-header-icon[data-v-568c9734]{width:17px;height:17px;color:var(--primary-600)}.filter-title[data-v-568c9734]{color:var(--slate-800);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:800}.btn-reset-filter[data-v-568c9734]{background:var(--slate-100);border:1px solid var(--slate-200);color:var(--slate-600);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.btn-reset-filter[data-v-568c9734]:hover{color:#dc2626;background:#fee2e2;border-color:#fca5a5}.reset-icon[data-v-568c9734]{width:13px;height:13px}.filter-grid[data-v-568c9734]{align-items:flex-end;gap:16px;display:grid}.grid-four-col[data-v-568c9734]{grid-template-columns:1fr 1fr 1.2fr 1fr 1fr 1.4fr}.grid-three-col[data-v-568c9734]{grid-template-columns:1fr 1fr 1fr 1fr 1.5fr}.filter-label[data-v-568c9734]{color:var(--slate-700);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.custom-select-wrapper[data-v-568c9734]{width:100%;position:relative}.custom-select-wrapper[data-v-568c9734]:after{content:"";pointer-events:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:50%;background-repeat:no-repeat;background-size:contain;width:10px;height:6px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.custom-select[data-v-568c9734]{appearance:none;border:1.5px solid var(--slate-200);width:100%;font-family:var(--font-body);color:var(--slate-800);cursor:pointer;background-color:#fff;border-radius:12px;outline:none;padding:10px 36px 10px 14px;font-size:13px;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #0000000a}.custom-select[data-v-568c9734]:hover{border-color:var(--slate-300);background-color:#fafafa}.custom-select[data-v-568c9734]:focus{border-color:var(--primary-500);background-color:#fff;box-shadow:0 0 0 3.5px #6366f126}.search-input-wrapper[data-v-568c9734]{align-items:center;display:flex;position:relative}.search-icon[data-v-568c9734]{width:16px;height:16px;color:var(--slate-400);position:absolute;left:12px}.custom-input[data-v-568c9734]{border:1.5px solid var(--slate-200);width:100%;font-family:var(--font-body);color:var(--slate-800);background:#fff;border-radius:12px;outline:none;padding:10px 36px;font-size:13px;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #0000000a}.custom-input[data-v-568c9734]:focus{border-color:var(--primary-500);box-shadow:0 0 0 3.5px #6366f126}.btn-clear-search[data-v-568c9734]{background:var(--slate-200);width:18px;height:18px;color:var(--slate-600);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:10px;display:flex;position:absolute;right:10px}.table-container[data-v-568c9734]{border-radius:var(--radius-xl);border:1px solid var(--slate-200);box-shadow:var(--shadow-sm);background:#fff;overflow:hidden}.data-table[data-v-568c9734]{border-collapse:collapse;text-align:left;width:100%}.data-table th[data-v-568c9734]{background:var(--slate-50);color:var(--slate-600);text-transform:uppercase;letter-spacing:.5px;border-bottom:1.5px solid var(--slate-200);padding:14px 18px;font-size:12px;font-weight:800}.data-table td[data-v-568c9734]{border-bottom:1px solid var(--slate-100);vertical-align:middle;padding:14px 18px;font-size:13.5px}.table-row[data-v-568c9734]:hover{background-color:#f8fafc}.text-right[data-v-568c9734]{text-align:right}.student-cell[data-v-568c9734]{align-items:center;gap:12px;display:flex}.student-avatar[data-v-568c9734]{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:12.5px;font-weight:800;display:flex}.avatar-topic[data-v-568c9734]{color:#4f46e5;background:#eef2ff}.avatar-quiz[data-v-568c9734]{color:#b45309;background:#fffbeb}.student-name[data-v-568c9734]{color:var(--slate-900);font-weight:700;line-height:1.2}.student-email[data-v-568c9734]{color:var(--slate-500);font-size:11.5px}.grade-text[data-v-568c9734]{color:var(--slate-900);font-weight:800}.subject-text[data-v-568c9734]{color:var(--primary-600);margin-top:2px;font-size:12px;font-weight:600}.topic-tag-box[data-v-568c9734],.quiz-tag-box[data-v-568c9734]{flex-direction:column;gap:2px;display:flex}.topic-badge[data-v-568c9734]{color:#166534;white-space:nowrap;text-overflow:ellipsis;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;align-items:center;gap:4px;max-width:240px;padding:3px 8px;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.topic-chapter[data-v-568c9734]{color:#15803d;font-weight:800}.category-sub[data-v-568c9734]{color:#64748b;font-size:10.5px;font-weight:600}.quiz-session-tag[data-v-568c9734]{color:#b45309;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:5px;width:fit-content;padding:3px 8px;font-size:12px;font-weight:700;display:inline-flex}.tag-icon[data-v-568c9734]{width:13px;height:13px}.mode-pill[data-v-568c9734]{color:#64748b;font-size:10.5px;font-weight:600}.date-text[data-v-568c9734]{color:var(--slate-800);font-size:12.5px;font-weight:600}.duration-text[data-v-568c9734]{color:var(--slate-500);margin-top:2px;font-size:11px}.accuracy-container[data-v-568c9734]{width:120px}.accuracy-text[data-v-568c9734]{margin-bottom:4px;font-size:11.5px}.accuracy-bar-bg[data-v-568c9734]{background:#fee2e2;border-radius:999px;width:100%;height:6px;overflow:hidden}.accuracy-bar-fill[data-v-568c9734]{background:#10b981;border-radius:999px;height:100%}.score-container[data-v-568c9734]{align-items:center;gap:8px;display:flex}.score-badge[data-v-568c9734]{border-radius:8px;padding:4px 10px;font-size:14px;font-weight:800}.score-passed[data-v-568c9734]{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.score-remedial[data-v-568c9734]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.status-label[data-v-568c9734]{font-size:11.5px;font-weight:700}.text-success[data-v-568c9734]{color:#059669}.text-danger[data-v-568c9734]{color:#dc2626}.text-muted[data-v-568c9734]{color:var(--slate-400)}.font-bold[data-v-568c9734]{font-weight:700}.reward-pill[data-v-568c9734]{align-items:center;gap:6px;display:flex}.xp-text[data-v-568c9734]{color:#4f46e5;background:#eef2ff;border-radius:6px;padding:2px 8px;font-size:11.5px;font-weight:800}.coins-text[data-v-568c9734]{color:#b45309;background:#fffbeb;border-radius:6px;padding:2px 6px;font-size:11px;font-weight:700}.btn-review[data-v-568c9734]{color:#4f46e5;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.btn-review[data-v-568c9734]:hover{color:#fff;background:#4f46e5;border-color:#4f46e5}.btn-icon-sm[data-v-568c9734]{width:14px;height:14px}.loading-state[data-v-568c9734],.empty-state[data-v-568c9734]{text-align:center;color:var(--slate-500);padding:56px 20px}.spinner[data-v-568c9734]{border:3.5px solid #e2e8f0;border-top-color:var(--primary-600);border-radius:50%;width:36px;height:36px;margin:0 auto 16px;animation:.8s linear infinite spin-568c9734}@keyframes spin-568c9734{to{transform:rotate(360deg)}}.empty-icon-box[data-v-568c9734]{background:var(--slate-100);border-radius:20px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;font-size:28px;display:flex}.modal-detail[data-v-568c9734]{border-radius:var(--radius-2xl);max-width:860px;padding:0;overflow:hidden}.modal-header[data-v-568c9734]{border-bottom:1.5px solid var(--slate-200);background:#fff;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-subtitle[data-v-568c9734]{color:var(--primary-600);letter-spacing:.6px;text-transform:uppercase;font-size:11px;font-weight:800}.modal-title[data-v-568c9734]{color:var(--slate-900);margin-top:2px;font-size:20px;font-weight:800}.btn-close[data-v-568c9734]{background:var(--slate-100);width:32px;height:32px;color:var(--slate-500);cursor:pointer;border:none;border-radius:50%;font-size:14px;font-weight:700;transition:all .15s}.btn-close[data-v-568c9734]:hover{background:var(--slate-200);color:var(--slate-900)}.modal-body[data-v-568c9734]{max-height:72vh;padding:24px;overflow-y:auto}.modal-footer[data-v-568c9734]{background:var(--slate-50);border-top:1px solid var(--slate-200);justify-content:flex-end;padding:16px 24px;display:flex}.attempt-overview-card[data-v-568c9734]{border:1.5px solid var(--slate-200);border-radius:var(--radius-xl);background:#f8fafc;justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px;display:flex}.overview-meta[data-v-568c9734]{align-items:center;gap:16px;display:flex}.overview-avatar[data-v-568c9734]{border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:18px;font-weight:800;display:flex}.overview-student-name[data-v-568c9734]{color:var(--slate-900);font-size:17px;font-weight:800}.overview-student-email[data-v-568c9734]{color:var(--slate-500);margin-top:2px;font-size:12.5px}.overview-chips[data-v-568c9734]{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.chip[data-v-568c9734]{border-radius:6px;padding:3px 10px;font-size:11.5px;font-weight:700}.chip-purple[data-v-568c9734]{color:#7e22ce;background:#f3e8ff}.chip-blue[data-v-568c9734]{color:#1d4ed8;background:#eff6ff}.chip-green[data-v-568c9734]{color:#047857;background:#ecfdf5}.chip-amber[data-v-568c9734]{color:#b45309;background:#fffbeb}.overview-score-box[data-v-568c9734]{text-align:right;border:1.5px solid var(--slate-200);background:#fff;border-radius:14px;padding:12px 20px}.overview-score-label[data-v-568c9734]{color:var(--slate-500);text-transform:uppercase;font-size:11px;font-weight:800}.overview-score-num[data-v-568c9734]{margin:2px 0;font-size:32px;font-weight:900;line-height:1.1}.status-pill[data-v-568c9734]{border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800;display:inline-block}.status-pass[data-v-568c9734]{color:#059669;background:#ecfdf5}.status-fail[data-v-568c9734]{color:#dc2626;background:#fef2f2}.section-title[data-v-568c9734]{color:var(--slate-900);margin-bottom:16px;font-size:15px;font-weight:800}.answers-list[data-v-568c9734]{flex-direction:column;gap:16px;display:flex}.answer-review-card[data-v-568c9734]{border-radius:var(--radius-xl);border:1.5px solid var(--slate-200);background:#fff;padding:18px 20px;transition:all .15s}.card-correct[data-v-568c9734]{border-left:5px solid #10b981}.card-wrong[data-v-568c9734]{border-left:5px solid #ef4444}.ans-card-header[data-v-568c9734]{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;display:flex}.ans-num-badge[data-v-568c9734]{background:var(--slate-100);color:var(--slate-700);border-radius:6px;padding:3px 10px;font-size:11.5px;font-weight:800}.badge-result-correct[data-v-568c9734]{color:#059669;font-size:12px;font-weight:700}.badge-result-wrong[data-v-568c9734]{color:#dc2626;font-size:12px;font-weight:700}.ans-time-badge[data-v-568c9734]{color:var(--slate-500);font-size:11.5px;font-weight:600}.ans-question-text[data-v-568c9734]{color:var(--slate-900);margin-bottom:12px;font-size:14.5px;font-weight:700;line-height:1.5}.ans-question-img img[data-v-568c9734]{border:1px solid var(--slate-200);border-radius:8px;max-height:160px;margin-bottom:12px}.ans-options-grid[data-v-568c9734]{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;display:grid}.ans-opt-box[data-v-568c9734]{border:1.5px solid var(--slate-200);background:#fff;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex;position:relative}.opt-key-circle[data-v-568c9734]{background:var(--slate-100);width:24px;height:24px;color:var(--slate-700);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.opt-text[data-v-568c9734]{color:var(--slate-800);flex:1;font-weight:600}.opt-is-key[data-v-568c9734]{background:#ecfdf5!important;border-color:#34d399!important}.opt-is-key .opt-key-circle[data-v-568c9734]{color:#fff;background:#10b981}.opt-is-user-wrong[data-v-568c9734]{background:#fef2f2!important;border-color:#f87171!important}.opt-is-user-wrong .opt-key-circle[data-v-568c9734]{color:#fff;background:#ef4444}.opt-is-user-correct[data-v-568c9734]{background:#ecfdf5!important;border-color:#10b981!important}.opt-indicator[data-v-568c9734]{font-size:11px;font-weight:800}.indicator-key[data-v-568c9734]{color:#059669}.indicator-user-wrong[data-v-568c9734]{color:#dc2626}.indicator-user-correct[data-v-568c9734]{color:#059669}.ans-solution-box[data-v-568c9734]{border:1px dashed var(--slate-300);background:#f8fafc;border-radius:12px;padding:14px 16px}.solution-header[data-v-568c9734]{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.solution-title[data-v-568c9734]{color:var(--slate-800);font-size:12.5px;font-weight:800}.quick-trick-badge[data-v-568c9734]{color:#b45309;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700}.solution-diagram-box[data-v-568c9734]{border:1px solid var(--slate-200);background:#fff;border-radius:8px;margin-bottom:12px;padding:8px}.solution-diagram-img[data-v-568c9734]{object-fit:contain;max-height:140px}.solution-steps-list[data-v-568c9734]{flex-direction:column;gap:8px;display:flex}.solution-step-item[data-v-568c9734]{border:1px solid var(--slate-200);background:#fff;border-radius:8px;align-items:flex-start;gap:10px;padding:8px 12px;display:flex}.step-num[data-v-568c9734]{background:var(--primary-600);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:2px;font-size:10.5px;font-weight:800;display:flex}.step-title[data-v-568c9734]{color:var(--slate-900);font-size:12.5px;font-weight:700}.step-content[data-v-568c9734]{color:var(--slate-600);margin-top:2px;font-size:12px}.step-formula-box[data-v-568c9734]{background:#f1f5f9;border-radius:4px;margin-top:4px;padding:3px 8px;font-size:11.5px}.step-tip-box[data-v-568c9734]{color:#b45309;margin-top:3px;font-size:11px;font-weight:600}.solution-summary[data-v-568c9734]{color:var(--slate-700);border-top:1px solid var(--slate-200);margin-top:10px;padding-top:8px;font-size:12px}.modal-materials-manager[data-v-74dcf931]{flex-direction:column;width:95vw;max-width:1050px;height:88vh;min-height:580px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040;padding:0!important}.materials-modal-header[data-v-74dcf931]{border-bottom:1px solid var(--slate-200);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.materials-tab-bar[data-v-74dcf931]{border-bottom:1.5px solid var(--slate-200);background:#f8fafc;flex-shrink:0;gap:8px;padding:6px 16px 0;display:flex;overflow-x:auto}.mat-tab-btn[data-v-74dcf931]{color:var(--slate-600);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2.5px solid #0000;flex-shrink:0;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:700;transition:all .15s;display:inline-flex}.mat-tab-btn[data-v-74dcf931]:hover{color:var(--slate-900)}.active-mat-tab[data-v-74dcf931]{color:#4f46e5;background:#fff;border-bottom-color:#4f46e5;border-top-left-radius:8px;border-top-right-radius:8px}.tab-icon-sm[data-v-74dcf931]{width:15px;height:15px}.materials-modal-body[data-v-74dcf931]{flex:1;min-height:400px;padding:24px;overflow-y:auto}.btn-close[data-v-74dcf931]{background:var(--slate-100);cursor:pointer;width:32px;height:32px;color:var(--slate-600);border:none;border-radius:50%;font-weight:800}.btn-chapter-header[data-v-74dcf931]{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;padding:5px 11px;font-size:11.5px;font-weight:700;transition:all .15s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 1px 2px #0000000a}.btn-header-materi[data-v-74dcf931]{color:#4f46e5;background:#eef2ff;border-color:#c7d2fe}.btn-header-materi[data-v-74dcf931]:hover{color:#fff;background:#4f46e5;border-color:#4f46e5;transform:translateY(-1px);box-shadow:0 3px 10px #4f46e540}.btn-header-add[data-v-74dcf931]{color:#1e293b;background:#fff;border-color:#cbd5e1}.btn-header-add[data-v-74dcf931]:hover{color:#0f172a;background:#f8fafc;border-color:#94a3b8;transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.btn-preview-toggle[data-v-74dcf931]{color:#4f46e5;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700;transition:all .15s}.btn-preview-toggle[data-v-74dcf931]:hover{color:#fff;background:#4f46e5}.markdown-quick-toolbar[data-v-74dcf931]{background:#f1f5f9;border:1.5px solid #cbd5e1;border-bottom:1px solid #e2e8f0;border-radius:10px 10px 0 0;flex-wrap:wrap;align-items:center;gap:4px;padding:6px 8px;display:flex}.btn-tool[data-v-74dcf931]{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;padding:4px 8px;font-size:11.5px;font-weight:700;line-height:1;transition:all .15s;display:inline-flex}.btn-tool[data-v-74dcf931]:hover{color:#4f46e5;background:#eef2ff;border-color:#4f46e5;transform:translateY(-1px)}.tool-divider[data-v-74dcf931]{background:#cbd5e1;width:1px;height:18px;margin:0 3px}.textarea-with-toolbar[data-v-74dcf931]{border-top:none!important;border-radius:0 0 10px 10px!important}.live-form-preview-box[data-v-74dcf931]{background:#fff;border:1.5px solid #c7d2fe;border-radius:12px;margin-top:10px;padding:14px 16px;box-shadow:0 4px 12px #4f46e50d}.live-preview-badge[data-v-74dcf931]{color:#4f46e5;letter-spacing:.3px;text-transform:uppercase;border-bottom:1px solid #eef2ff;margin-bottom:8px;padding-bottom:6px;font-size:11px;font-weight:800}.media-card-item[data-v-74dcf931]{transition:transform .2s,box-shadow .2s,border-color .2s}.media-card-item[data-v-74dcf931]:hover{transform:translateY(-2px);border-color:#c7d2fe!important;box-shadow:0 10px 25px -5px #4f46e51f,0 8px 10px -6px #4f46e514!important}.game-config-view[data-v-c292f501]{padding-bottom:40px}.page-header[data-v-c292f501]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.breadcrumb[data-v-c292f501]{color:#64748b;align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:500;display:flex}.breadcrumb-separator[data-v-c292f501]{color:#cbd5e1}.breadcrumb-current[data-v-c292f501]{color:#4f46e5;font-weight:700}.page-title[data-v-c292f501]{color:#0f172a;letter-spacing:-.02em;font-size:24px;font-weight:800}.page-subtitle[data-v-c292f501]{color:#64748b;max-width:700px;margin-top:4px;font-size:14px}.info-alert-box[data-v-c292f501]{background:linear-gradient(135deg,#eef2ff 0%,#e0e7ff 100%);border:1px solid #c7d2fe;border-radius:14px;align-items:center;gap:16px;margin-bottom:24px;padding:16px 20px;display:flex}.info-alert-icon[data-v-c292f501]{background:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:28px;display:flex;box-shadow:0 4px 12px #4f46e526}.info-alert-title[data-v-c292f501]{color:#3730a3;font-size:15px;font-weight:800}.info-alert-desc[data-v-c292f501]{color:#4338ca;margin-top:3px;font-size:13px;line-height:1.45}.games-grid[data-v-c292f501]{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:22px;display:grid}.game-card[data-v-c292f501]{background:#fff;border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;justify-content:space-between;padding:22px;transition:all .25s;display:flex;position:relative;overflow:hidden}.game-card[data-v-c292f501]:hover{border-color:#cbd5e1;transform:translateY(-3px);box-shadow:0 12px 28px -6px #0f172a14}.card-inactive[data-v-c292f501]{opacity:.85;background:#f8fafc}.game-card-header[data-v-c292f501]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.game-identity[data-v-c292f501]{align-items:center;gap:14px;display:flex}.game-icon-bubble[data-v-c292f501]{color:#fff;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:26px;display:flex;box-shadow:0 6px 16px #0000001a}.game-title[data-v-c292f501]{color:#0f172a;font-size:17.5px;font-weight:800;line-height:1.25}.game-code-badge[data-v-c292f501]{margin-top:4px}.game-code-badge code[data-v-c292f501]{color:#475569;background:#f1f5f9;border-radius:6px;padding:2px 6px;font-family:monospace;font-size:11px;font-weight:600}.status-toggle-btn[data-v-c292f501]{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:20px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:700;transition:all .2s;display:inline-flex}.status-active[data-v-c292f501]{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.status-inactive[data-v-c292f501]{color:#64748b;background:#f1f5f9;border-color:#cbd5e1}.status-dot[data-v-c292f501]{background:currentColor;border-radius:50%;width:7px;height:7px}.game-description[data-v-c292f501]{color:#64748b;min-height:40px;margin-bottom:18px;font-size:13.5px;line-height:1.5}.game-specs-grid[data-v-c292f501]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px;padding:12px 14px;display:grid}.spec-item[data-v-c292f501]{flex-direction:column;display:flex}.spec-label[data-v-c292f501]{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:700}.spec-val[data-v-c292f501]{color:#0f172a;margin-top:2px;font-size:13.5px;font-weight:800}.text-indigo[data-v-c292f501]{color:#4f46e5}.text-amber[data-v-c292f501]{color:#d97706}.text-emerald[data-v-c292f501]{color:#059669}.game-card-footer[data-v-c292f501]{margin-top:auto}.edit-config-btn[data-v-c292f501]{border-radius:12px;justify-content:center;width:100%;padding:10px 16px;font-size:13.5px;font-weight:700}.modal-backdrop[data-v-c292f501]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-dialog[data-v-c292f501]{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:650px;max-height:90vh;animation:.2s ease-out modalPop-c292f501;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes modalPop-c292f501{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-header[data-v-c292f501]{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.game-icon-bubble-sm[data-v-c292f501]{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.modal-title[data-v-c292f501]{color:#0f172a;font-size:17px;font-weight:800}.modal-subtitle[data-v-c292f501]{color:#64748b;margin-top:2px;font-size:12.5px}.modal-close[data-v-c292f501]{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:26px;line-height:1}.modal-body[data-v-c292f501]{flex:1;padding:20px 24px;overflow-y:auto}.modal-tabs[data-v-c292f501]{border-bottom:1px solid #e2e8f0;gap:8px;margin-bottom:18px;padding-bottom:2px;display:flex}.modal-tab-btn[data-v-c292f501]{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 12px;font-size:13px;font-weight:600;transition:all .2s}.modal-tab-btn.active[data-v-c292f501]{color:#4f46e5;border-bottom-color:#4f46e5;font-weight:700}.modal-footer[data-v-c292f501]{background:#f8fafc;border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.form-group[data-v-c292f501]{margin-bottom:16px}.form-row[data-v-c292f501]{gap:14px;display:flex}.col-6[data-v-c292f501]{flex:1}.form-label[data-v-c292f501]{color:#334155;margin-bottom:6px;font-size:13px;font-weight:700;display:block}.form-label-xs[data-v-c292f501]{color:#475569;margin-bottom:4px;font-size:11.5px;font-weight:600;display:block}.form-control[data-v-c292f501]{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:10px;outline:none;width:100%;padding:9px 12px;font-size:13.5px;transition:border-color .2s}.form-control[data-v-c292f501]:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f}.form-control-sm[data-v-c292f501]{padding:6px 10px;font-size:12.5px}.code-editor[data-v-c292f501]{color:#f8fafc;background:#0f172a;border-radius:10px;font-family:Fira Code,monospace;font-size:12.5px;line-height:1.5}.config-subhead[data-v-c292f501]{color:#1e293b;border-bottom:1px dashed #e2e8f0;margin-bottom:14px;padding-bottom:8px;font-size:14.5px;font-weight:800}.checkbox-label[data-v-c292f501]{color:#334155;cursor:pointer;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.puzzle-item-box[data-v-c292f501]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:10px;padding:12px}.switch[data-v-c292f501]{width:44px;height:24px;display:inline-block;position:relative}.switch input[data-v-c292f501]{opacity:0;width:0;height:0}.slider[data-v-c292f501]{cursor:pointer;background-color:#cbd5e1;border-radius:24px;transition:all .3s;position:absolute;inset:0}.slider[data-v-c292f501]:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}input:checked+.slider[data-v-c292f501]{background-color:#10b981}input:checked+.slider[data-v-c292f501]:before{transform:translate(20px)}.spin-animate[data-v-c292f501]{animation:1s linear infinite spin-c292f501}@keyframes spin-c292f501{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state[data-v-c292f501],.empty-state[data-v-c292f501]{text-align:center;padding:48px}.grade-pill-group[data-v-c292f501]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.grade-pill-section[data-v-c292f501]{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pill-section-label[data-v-c292f501]{color:#64748b;text-transform:uppercase;min-width:32px;font-size:11px;font-weight:800}.grade-pill-btn[data-v-c292f501]{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600;transition:all .2s}.grade-pill-btn[data-v-c292f501]:hover{color:#059669;background:#f0fdf4;border-color:#10b981}.grade-pill-btn.active[data-v-c292f501]{color:#fff;background:#10b981;border-color:#10b981;box-shadow:0 2px 6px #10b98159}.empty-pairs-box[data-v-c292f501]{text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;padding:24px}.pairs-card-list[data-v-c292f501]{flex-direction:column;gap:10px;max-height:380px;padding-right:4px;display:flex;overflow-y:auto}.pair-item-card[data-v-c292f501]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px;transition:border-color .2s;box-shadow:0 1px 3px #00000008}.pair-item-card[data-v-c292f501]:hover{border-color:#cbd5e1}.pair-card-header[data-v-c292f501]{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.pair-number-badge[data-v-c292f501]{color:#475569;background:#f1f5f9;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:800}.pair-category-input[data-v-c292f501]{color:#059669;background:#f0fdf4;border:1px solid #e2e8f0;border-radius:6px;outline:none;max-width:160px;padding:3px 8px;font-size:11px;font-weight:600}.pair-delete-btn[data-v-c292f501]{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600;transition:background .15s}.pair-delete-btn[data-v-c292f501]:hover{background:#fee2e2}.font-semibold[data-v-c292f501]{color:#0f172a!important;font-weight:700!important}.btn-xs[data-v-c292f501]{border-radius:6px;padding:4px 10px;font-size:11.5px}.btn-outline-secondary[data-v-c292f501]{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1}.btn-outline-secondary[data-v-c292f501]:hover{color:#1e293b;background:#f1f5f9}.type-toggle-group[data-v-c292f501]{background:#f1f5f9;border-radius:6px;gap:2px;padding:2px;display:flex}.type-toggle-btn[data-v-c292f501]{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;transition:all .15s}.type-toggle-btn[data-v-c292f501]:hover{color:#0f172a}.type-toggle-btn.active[data-v-c292f501]{color:#0f172a;background:#fff;box-shadow:0 1px 3px #0000001a}.pair-mode-tag[data-v-c292f501]{border-radius:6px;padding:2px 6px;font-size:10px;font-weight:700}.mode-text-text[data-v-c292f501]{color:#475569;background:#f1f5f9}.mode-img-text[data-v-c292f501]{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.mode-text-img[data-v-c292f501]{color:#7e22ce;background:#faf5ff;border:1px solid #e9d5ff}.mode-img-img[data-v-c292f501]{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.students-view[data-v-8a74a48a]{flex-direction:column;gap:20px;display:flex}.page-header[data-v-8a74a48a]{margin-bottom:4px}.page-title[data-v-8a74a48a]{color:#0f172a;letter-spacing:-.5px;font-size:24px;font-weight:800}.page-subtitle[data-v-8a74a48a]{color:#64748b;margin-top:4px;font-size:13.5px}.stats-grid[data-v-8a74a48a]{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.stat-card[data-v-8a74a48a]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;align-items:center;gap:14px;padding:18px 20px;display:flex;box-shadow:0 2px 6px #0f172a0a}.stat-icon-wrapper[data-v-8a74a48a]{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.stat-icon[data-v-8a74a48a]{width:22px;height:22px}.stat-indigo .stat-icon-wrapper[data-v-8a74a48a]{color:#4f46e5;background:#eef2ff}.stat-amber .stat-icon-wrapper[data-v-8a74a48a]{color:#d97706;background:#fef3c7}.stat-emerald .stat-icon-wrapper[data-v-8a74a48a]{color:#059669;background:#ecfdf5}.stat-rose .stat-icon-wrapper[data-v-8a74a48a]{color:#e11d48;background:#ffe4e6}.stat-label[data-v-8a74a48a]{color:#64748b;font-size:12px;font-weight:600;display:block}.stat-value[data-v-8a74a48a]{color:#0f172a;margin-top:2px;font-size:18px;font-weight:800}.stat-unit[data-v-8a74a48a]{color:#94a3b8;font-size:12px;font-weight:600}.filter-card[data-v-8a74a48a]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;display:flex;box-shadow:0 2px 6px #0f172a0a}.search-box[data-v-8a74a48a]{flex:1;min-width:260px;position:relative}.search-icon[data-v-8a74a48a]{color:#94a3b8;width:17px;height:17px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input[data-v-8a74a48a]{color:#0f172a;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:100%;padding:10px 38px 10px 40px;font-size:13.5px;transition:all .2s}.search-input[data-v-8a74a48a]:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.clear-search-btn[data-v-8a74a48a]{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:14px;font-weight:700;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.clear-search-btn[data-v-8a74a48a]:hover{color:#ef4444}.filter-actions[data-v-8a74a48a]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-select-wrap[data-v-8a74a48a]{align-items:center;gap:8px;display:flex}.filter-label[data-v-8a74a48a]{color:#64748b;white-space:nowrap;font-size:12px;font-weight:700}.filter-select[data-v-8a74a48a]{color:#334155;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;padding:9px 12px;font-size:13px;font-weight:600}.filter-select[data-v-8a74a48a]:focus{border-color:#6366f1}.table-card[data-v-8a74a48a]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:0;overflow:hidden;box-shadow:0 2px 6px #0f172a0a}.table-responsive[data-v-8a74a48a]{overflow-x:auto}.custom-table[data-v-8a74a48a]{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.custom-table thead[data-v-8a74a48a]{background:#f8fafc;border-bottom:1.5px solid #e2e8f0}.custom-table th[data-v-8a74a48a]{color:#475569;text-transform:uppercase;letter-spacing:.5px;padding:14px 18px;font-size:11.5px;font-weight:700}.table-row[data-v-8a74a48a]{border-bottom:1px solid #f1f5f9;transition:background .15s}.table-row[data-v-8a74a48a]:hover{background-color:#f8fafc}.custom-table td[data-v-8a74a48a]{vertical-align:middle;padding:16px 18px}.rank-container[data-v-8a74a48a]{align-items:center;display:flex}.rank-badge[data-v-8a74a48a]{border-radius:8px;padding:4px 10px;font-size:13.5px;font-weight:800;display:inline-block}.rank-gold[data-v-8a74a48a]{color:#b45309;background:#fef3c7}.rank-silver[data-v-8a74a48a]{color:#475569;background:#f1f5f9}.rank-bronze[data-v-8a74a48a]{color:#c2410c;background:#ffedd5}.rank-normal[data-v-8a74a48a]{color:#64748b;font-weight:700}.student-profile-cell[data-v-8a74a48a]{align-items:center;gap:12px;display:flex}.student-avatar[data-v-8a74a48a]{color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:15px;font-weight:800;display:flex;box-shadow:0 2px 6px #0000001a}.student-name[data-v-8a74a48a]{color:#0f172a;font-size:14px;font-weight:700}.student-email[data-v-8a74a48a]{color:#64748b;margin-top:1px;font-size:12px}.badge-grade[data-v-8a74a48a]{color:#4f46e5;background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;padding:5px 10px;font-size:12px;font-weight:700}.level-text[data-v-8a74a48a]{color:#4f46e5;font-size:13.5px;font-weight:800}.xp-subtext[data-v-8a74a48a]{color:#64748b;margin-top:2px;font-size:12px;font-weight:600}.streak-pill[data-v-8a74a48a]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:800;display:inline-flex}.streak-icon[data-v-8a74a48a]{width:14px;height:14px}.coin-badge[data-v-8a74a48a]{color:#b45309;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:6px 12px;font-size:14.5px;font-weight:800;display:inline-block}.empty-cell[data-v-8a74a48a]{text-align:center;padding:54px 20px!important}.empty-state-wrap[data-v-8a74a48a]{flex-direction:column;align-items:center;gap:8px;display:flex}.empty-title[data-v-8a74a48a]{color:#0f172a;font-size:16px;font-weight:800}.empty-desc[data-v-8a74a48a]{color:#64748b;max-width:400px;font-size:13px}.btn-reset[data-v-8a74a48a]{color:#4f46e5;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:10px;margin-top:8px;padding:8px 16px;font-size:12.5px;font-weight:700}.btn-reset[data-v-8a74a48a]:hover{color:#fff;background:#4f46e5}.pagination-footer[data-v-8a74a48a]{background:#f8fafc;border-top:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex}.pagination-info[data-v-8a74a48a]{color:#64748b;font-size:13px}.font-bold[data-v-8a74a48a]{color:#0f172a;font-weight:700}.pagination-controls[data-v-8a74a48a]{align-items:center;gap:6px;display:flex}.pagination-pages[data-v-8a74a48a]{gap:4px;display:flex}.pagination-btn[data-v-8a74a48a]{color:#334155;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;padding:6px 12px;font-size:12.5px;font-weight:700;transition:all .15s}.pagination-btn[data-v-8a74a48a]:hover:not(:disabled){color:#4f46e5;border-color:#6366f1}.pagination-btn[data-v-8a74a48a]:disabled{opacity:.5;cursor:not-allowed}.pagination-number.active[data-v-8a74a48a]{color:#fff;background:#4f46e5;border-color:#4f46e5}.math-speed-view[data-v-460c1d6b]{padding-bottom:40px}.page-header[data-v-460c1d6b]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.breadcrumb[data-v-460c1d6b]{color:#64748b;align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.breadcrumb-separator[data-v-460c1d6b]{color:#94a3b8;width:14px;height:14px}.breadcrumb-current[data-v-460c1d6b]{color:#4f46e5}.page-title[data-v-460c1d6b]{color:#1e293b;letter-spacing:-.02em;margin:0;font-size:24px;font-weight:800}.header-actions[data-v-460c1d6b]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-card[data-v-460c1d6b]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:20px;padding:16px 20px}.categories-tabs[data-v-460c1d6b]{border-bottom:1px solid #f1f5f9;gap:8px;margin-bottom:14px;padding-bottom:12px;display:flex;overflow-x:auto}.cat-tab-btn[data-v-460c1d6b]{cursor:pointer;color:#475569;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.cat-tab-btn[data-v-460c1d6b]:hover{color:#4f46e5;background:#eef2ff;border-color:#c7d2fe}.cat-tab-btn.active[data-v-460c1d6b]{color:#fff;background:#4f46e5;border-color:#4f46e5;box-shadow:0 2px 8px #4f46e540}.cat-badge[data-v-460c1d6b]{background:#00000014;border-radius:20px;padding:2px 7px;font-size:11px}.cat-tab-btn.active .cat-badge[data-v-460c1d6b]{color:#fff;background:#ffffff40}.filter-tools-row[data-v-460c1d6b]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.search-input-wrapper[data-v-460c1d6b]{flex:1;min-width:260px;position:relative}.search-icon[data-v-460c1d6b]{color:#94a3b8;width:17px;height:17px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input[data-v-460c1d6b]{box-sizing:border-box;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;outline:none;width:100%;padding:9px 38px;font-size:13.5px;transition:all .2s}.search-input[data-v-460c1d6b]:focus{background:#fff;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.clear-search-btn[data-v-460c1d6b]{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:14px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.filter-controls-right[data-v-460c1d6b]{align-items:center;gap:10px;display:flex}.form-select-sm[data-v-460c1d6b]{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;outline:none;padding:8px 12px;font-size:13px;font-weight:600}.form-select-sm[data-v-460c1d6b]:focus{background:#fff;border-color:#4f46e5}.view-mode-toggle[data-v-460c1d6b]{background:#f1f5f9;border-radius:8px;gap:2px;padding:3px;display:flex}.view-mode-btn[data-v-460c1d6b]{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px 9px;transition:all .15s;display:flex}.view-mode-btn.active[data-v-460c1d6b]{color:#4f46e5;background:#fff;box-shadow:0 1px 3px #0000001a}.tricks-grid[data-v-460c1d6b]{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:20px;display:grid}.trick-card[data-v-460c1d6b]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;justify-content:space-between;padding:20px;transition:all .2s;display:flex;box-shadow:0 2px 6px #00000008}.trick-card[data-v-460c1d6b]:hover{border-color:#c7d2fe;transform:translateY(-2px);box-shadow:0 10px 24px #4f46e514}.card-inactive[data-v-460c1d6b]{opacity:.7;background:#f8fafc;border-style:dashed}.trick-card-header[data-v-460c1d6b]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.trick-badge-row[data-v-460c1d6b]{align-items:center;gap:6px;display:flex}.grade-pill[data-v-460c1d6b]{border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.pill-sdEarly[data-v-460c1d6b]{color:#0284c7;background:#e0f2fe}.pill-sdMid[data-v-460c1d6b]{color:#d97706;background:#fef3c7}.pill-sdHigh[data-v-460c1d6b]{color:#16a34a;background:#dcfce7}.pill-smp[data-v-460c1d6b]{color:#7c3aed;background:#ede9fe}.pill-sma[data-v-460c1d6b]{color:#e11d48;background:#ffe4e6}.code-pill code[data-v-460c1d6b]{color:#475569;background:#f1f5f9;border-radius:6px;padding:3px 8px;font-size:11px}.status-toggle-btn[data-v-460c1d6b]{cursor:pointer;border:none;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:700;transition:all .2s;display:flex}.status-active[data-v-460c1d6b]{color:#15803d;background:#dcfce7}.status-inactive[data-v-460c1d6b]{color:#94a3b8;background:#f1f5f9}.status-dot[data-v-460c1d6b]{background:currentColor;border-radius:50%;width:6px;height:6px}.trick-title[data-v-460c1d6b]{color:#0f172a;margin:0 0 12px;font-size:16px;font-weight:800;line-height:1.4}.concept-preview-box[data-v-460c1d6b],.example-preview-box[data-v-460c1d6b]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:10px;padding:10px 12px}.preview-box-label[data-v-460c1d6b]{color:#64748b;align-items:center;gap:4px;margin-bottom:4px;font-size:11px;font-weight:700;display:flex}.preview-box-content[data-v-460c1d6b]{color:#334155;white-space:pre-line;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.stats-counter-row[data-v-460c1d6b]{background:#f1f5f9;border-radius:10px;justify-content:space-around;align-items:center;margin:12px 0;padding:10px;display:flex}.counter-item[data-v-460c1d6b]{text-align:center}.counter-num[data-v-460c1d6b]{font-size:15px;font-weight:800;display:block}.counter-label[data-v-460c1d6b]{color:#64748b;font-size:11px;font-weight:600}.counter-divider[data-v-460c1d6b]{background:#cbd5e1;width:1px;height:24px}.trick-card-actions[data-v-460c1d6b]{gap:8px;margin-top:6px;display:flex}.flex-1[data-v-460c1d6b]{flex:1}.table-view-card[data-v-460c1d6b]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden}.table-responsive[data-v-460c1d6b]{width:100%;overflow-x:auto}.data-table[data-v-460c1d6b]{border-collapse:collapse;width:100%;font-size:13px}.data-table th[data-v-460c1d6b]{text-align:left;color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:12px 14px;font-weight:700}.data-table td[data-v-460c1d6b]{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:12px 14px}.data-table tbody tr[data-v-460c1d6b]:hover{background:#f8fafc}.row-dimmed[data-v-460c1d6b]{opacity:.6}.order-badge[data-v-460c1d6b]{color:#64748b;background:#f1f5f9;border-radius:6px;padding:3px 6px;font-size:11px;font-weight:800}.table-title-cell[data-v-460c1d6b]{color:#0f172a;margin-bottom:2px;font-weight:700}.table-concept-cell[data-v-460c1d6b]{color:#64748b;-webkit-line-clamp:1;-webkit-box-orient:vertical;max-width:320px;font-size:11.5px;display:-webkit-box;overflow:hidden}.table-actions-cell[data-v-460c1d6b]{justify-content:flex-end;align-items:center;gap:6px;display:flex}.btn-icon-action[data-v-460c1d6b]{cursor:pointer;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.btn-icon-action[data-v-460c1d6b]:hover{border-color:#cbd5e1}.btn-edit[data-v-460c1d6b]:hover{color:#4f46e5;background:#eef2ff;border-color:#c7d2fe}.btn-delete[data-v-460c1d6b]:hover{color:#ef4444;background:#fef2f2;border-color:#fecaca}.modal-overlay[data-v-460c1d6b]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card[data-v-460c1d6b]{background:#fff;border-radius:18px;flex-direction:column;width:100%;max-width:860px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 40px #0003}.modal-header[data-v-460c1d6b]{background:#fafafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.modal-title-group[data-v-460c1d6b]{align-items:center;gap:12px;display:flex}.modal-icon-bubble[data-v-460c1d6b]{color:#4f46e5;background:#eef2ff;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.import-icon-bubble[data-v-460c1d6b]{color:#059669;background:#ecfdf5}.modal-title[data-v-460c1d6b]{color:#0f172a;margin:0 0 2px;font-size:18px;font-weight:800}.modal-subtitle[data-v-460c1d6b]{color:#64748b;margin:0;font-size:12px}.modal-close-btn[data-v-460c1d6b]{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;width:32px;height:32px;font-weight:700;transition:all .2s}.modal-close-btn[data-v-460c1d6b]:hover{color:#0f172a;background:#e2e8f0}.modal-body[data-v-460c1d6b]{flex:1;padding:24px;overflow-y:auto}.form-section-header[data-v-460c1d6b]{align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.section-step-num[data-v-460c1d6b]{color:#fff;background:#4f46e5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:800;display:flex}.icon-blue-step[data-v-460c1d6b]{background:#2563eb}.icon-amber-step[data-v-460c1d6b]{background:#d97706}.section-step-title[data-v-460c1d6b]{color:#1e293b;margin-bottom:2px;font-size:14px;font-weight:800}.section-step-desc[data-v-460c1d6b]{color:#64748b;font-size:12px}.form-section-header-between[data-v-460c1d6b]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.form-grid-2[data-v-460c1d6b]{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid-3[data-v-460c1d6b]{grid-template-columns:1.2fr 1fr 1.2fr;gap:16px;display:grid}.form-group[data-v-460c1d6b]{margin-bottom:14px}.form-label[data-v-460c1d6b]{color:#334155;margin-bottom:6px;font-size:13px;font-weight:700;display:block}.required[data-v-460c1d6b]{color:#ef4444}.form-input[data-v-460c1d6b],.form-select[data-v-460c1d6b],.form-textarea[data-v-460c1d6b]{box-sizing:border-box;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:13px}.form-input[data-v-460c1d6b]:focus,.form-select[data-v-460c1d6b]:focus,.form-textarea[data-v-460c1d6b]:focus{background:#fff;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.questions-excel-tool-card[data-v-460c1d6b]{background:#f0fdf4;border:1px dashed #86efac;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin:18px 0;padding:12px 16px;display:flex}.tool-left[data-v-460c1d6b]{align-items:center;gap:12px;display:flex}.tool-title[data-v-460c1d6b]{color:#166534;font-size:13px;font-weight:700}.tool-desc[data-v-460c1d6b]{color:#15803d;font-size:11.5px}.tool-actions[data-v-460c1d6b]{gap:8px;display:flex}.dynamic-rows-container[data-v-460c1d6b]{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.dynamic-row-card[data-v-460c1d6b]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.row-num-badge[data-v-460c1d6b]{color:#4f46e5;background:#eef2ff;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:800}.test-badge[data-v-460c1d6b]{color:#d97706;background:#fef3c7}.row-fields[data-v-460c1d6b]{flex:1;grid-template-columns:1.2fr 1fr 1.5fr;gap:10px;display:grid}.test-fields[data-v-460c1d6b]{grid-template-columns:1.5fr 1fr}.field-mini-label[data-v-460c1d6b]{color:#64748b;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.row-delete-btn[data-v-460c1d6b]{color:#ef4444;cursor:pointer;background:#fee2e2;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;transition:all .2s;display:flex}.row-delete-btn[data-v-460c1d6b]:hover:not(:disabled){color:#fff;background:#ef4444}.row-delete-btn[data-v-460c1d6b]:disabled{opacity:.4;cursor:not-allowed}.excel-dropzone[data-v-460c1d6b]{text-align:center;cursor:pointer;background:#f8fafc;border:2px dashed #c7d2fe;border-radius:16px;margin-bottom:18px;padding:36px 20px;transition:all .2s}.excel-dropzone[data-v-460c1d6b]:hover,.dropzone-active[data-v-460c1d6b]{background:#eef2ff;border-color:#4f46e5}.dropzone-icon[data-v-460c1d6b]{margin-bottom:12px}.dropzone-title[data-v-460c1d6b]{color:#1e293b;margin-bottom:4px;font-size:15px;font-weight:800}.dropzone-subtitle[data-v-460c1d6b]{color:#64748b;font-size:12.5px}.template-help-banner[data-v-460c1d6b]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.template-help-left[data-v-460c1d6b]{align-items:center;gap:12px;display:flex}.template-help-title[data-v-460c1d6b]{color:#1e293b;font-size:13px;font-weight:700}.template-help-desc[data-v-460c1d6b]{color:#64748b;font-size:12px}.preview-stats-bar[data-v-460c1d6b]{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;display:grid}.preview-stat-card[data-v-460c1d6b]{text-align:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px}.stat-total .stat-value[data-v-460c1d6b]{color:#1e293b}.stat-valid[data-v-460c1d6b]{background:#ecfdf5;border-color:#a7f3d0}.stat-valid .stat-value[data-v-460c1d6b]{color:#059669}.stat-error[data-v-460c1d6b]{background:#f8fafc}.stat-has-errors[data-v-460c1d6b]{background:#fef2f2;border-color:#fecaca}.stat-has-errors .stat-value[data-v-460c1d6b]{color:#dc2626}.stat-value[data-v-460c1d6b]{margin-bottom:2px;font-size:22px;font-weight:900}.stat-label[data-v-460c1d6b]{color:#64748b;font-size:11.5px;font-weight:700}.preview-table-container[data-v-460c1d6b]{border:1px solid #e2e8f0;border-radius:12px;max-height:360px;overflow-y:auto}.preview-table[data-v-460c1d6b]{border-collapse:collapse;width:100%;font-size:12.5px}.preview-table th[data-v-460c1d6b]{text-align:left;color:#475569;z-index:1;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:10px 12px;font-weight:700;position:sticky;top:0}.preview-table td[data-v-460c1d6b]{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:10px 12px}.row-error[data-v-460c1d6b]{background:#fff1f2}.preview-title-cell[data-v-460c1d6b]{color:#0f172a;margin-bottom:2px;font-weight:700}.preview-concept-cell[data-v-460c1d6b]{color:#64748b;-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:11px;display:-webkit-box;overflow:hidden}.counter-badge[data-v-460c1d6b]{border-radius:6px;padding:3px 8px;font-size:11px;font-weight:800}.badge-practice[data-v-460c1d6b]{color:#4f46e5;background:#eef2ff}.badge-test[data-v-460c1d6b]{color:#d97706;background:#fef3c7}.validation-badge[data-v-460c1d6b]{border-radius:20px;align-items:center;gap:5px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.badge-success[data-v-460c1d6b]{color:#15803d;background:#dcfce7}.badge-danger[data-v-460c1d6b]{color:#b91c1c;text-overflow:ellipsis;white-space:nowrap;background:#fee2e2;max-width:160px;overflow:hidden}.modal-footer[data-v-460c1d6b]{background:#fafafc;border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding:18px 24px;display:flex}.btn[data-v-460c1d6b]{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.btn-sm[data-v-460c1d6b]{padding:7px 12px;font-size:12px}.btn-xs[data-v-460c1d6b]{padding:5px 10px;font-size:11px}.btn-primary[data-v-460c1d6b]{color:#fff;background:#4f46e5}.btn-primary[data-v-460c1d6b]:hover:not(:disabled){background:#4338ca}.btn-secondary[data-v-460c1d6b]{color:#475569;background:#f1f5f9}.btn-secondary[data-v-460c1d6b]:hover:not(:disabled){background:#e2e8f0}.btn-outline[data-v-460c1d6b]{color:#334155;background:#fff;border:1px solid #cbd5e1}.btn-outline[data-v-460c1d6b]:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.btn-outline-danger[data-v-460c1d6b]{color:#ef4444;background:#fef2f2;border:1px solid #fca5a5}.btn-outline-danger[data-v-460c1d6b]:hover:not(:disabled){color:#fff;background:#ef4444}.btn[data-v-460c1d6b]:disabled{opacity:.5;cursor:not-allowed}.btn-icon[data-v-460c1d6b]{width:15px;height:15px}.text-indigo[data-v-460c1d6b]{color:#4f46e5}.text-emerald[data-v-460c1d6b]{color:#059669}.text-amber[data-v-460c1d6b]{color:#d97706}.text-slate[data-v-460c1d6b]{color:#475569}.font-mono[data-v-460c1d6b]{font-family:monospace}.font-bold[data-v-460c1d6b]{font-weight:700}.spin-animate[data-v-460c1d6b]{animation:1s linear infinite spin-460c1d6b}@keyframes spin-460c1d6b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state[data-v-460c1d6b],.empty-state[data-v-460c1d6b]{text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}@media (width<=768px){.page-header[data-v-460c1d6b]{flex-direction:column}.header-actions[data-v-460c1d6b]{width:100%}.form-grid-2[data-v-460c1d6b],.form-grid-3[data-v-460c1d6b]{grid-template-columns:1fr}}:root{--font-heading:"Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-body:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--primary-50:#eef2ff;--primary-100:#e0e7ff;--primary-200:#c7d2fe;--primary-500:#6366f1;--primary-600:#4f46e5;--primary-700:#4338ca;--success-50:#ecfdf5;--success-100:#d1fae5;--success-500:#10b981;--success-600:#059669;--warning-50:#fffbeb;--warning-100:#fef3c7;--warning-500:#f59e0b;--warning-600:#d97706;--danger-50:#fef2f2;--danger-100:#fee2e2;--danger-500:#ef4444;--danger-600:#dc2626;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 2px 4px 0 #0000000a;--shadow-md:0 4px 12px -1px #0000000f, 0 2px 4px -2px #0000000a;--shadow-lg:0 10px 25px -3px #00000014, 0 4px 6px -4px #0000000a;--shadow-xl:0 20px 35px -5px #0000001a, 0 8px 10px -6px #0000000a;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-body);background-color:var(--slate-50);color:var(--slate-800);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--slate-300);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--slate-400)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--slate-900);letter-spacing:-.02em;font-weight:700}.card{border-radius:var(--radius-lg);border:1px solid var(--slate-200);box-shadow:var(--shadow-sm);background:#fff;padding:24px;transition:box-shadow .2s,border-color .2s}.card:hover{box-shadow:var(--shadow-md)}.card-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.btn{font-family:var(--font-body);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .18s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary-600), var(--primary-500));color:#fff;box-shadow:0 2px 8px #4f46e547}.btn-primary:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 4px 14px #4f46e561}.btn-secondary{border-color:var(--slate-200);color:var(--slate-700);background:#fff}.btn-secondary:hover{background:var(--slate-50);border-color:var(--slate-300);color:var(--slate-900)}.btn-danger{background:var(--danger-50);border-color:var(--danger-100);color:var(--danger-600)}.btn-danger:hover{background:var(--danger-500);color:#fff;border-color:var(--danger-500)}.btn-sm{border-radius:var(--radius-sm);padding:6px 12px;font-size:12px}.form-group{margin-bottom:16px}.form-label{color:var(--slate-700);text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px;font-size:12.5px;font-weight:700;display:block}.form-control{width:100%;font-family:var(--font-body);border:1.5px solid var(--slate-200);border-radius:var(--radius-md);color:var(--slate-800);background:#fff;outline:none;padding:10px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-control:focus{border-color:var(--primary-500);box-shadow:0 0 0 3.5px #6366f11f}textarea.form-control{resize:vertical;min-height:85px}.badge{letter-spacing:.2px;border-radius:9999px;align-items:center;gap:5px;padding:4px 10px;font-size:11.5px;font-weight:700;display:inline-flex}.badge-primary{background:var(--primary-50);color:var(--primary-600);border:1px solid var(--primary-100)}.badge-success{background:var(--success-50);color:var(--success-600);border:1px solid var(--success-100)}.badge-warning{background:var(--warning-50);color:var(--warning-600);border:1px solid var(--warning-100)}.badge-danger{background:var(--danger-50);color:var(--danger-600);border:1px solid var(--danger-100)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:28px;display:grid}.stat-card{border:1px solid var(--slate-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:16px;padding:22px 20px;transition:transform .2s,box-shadow .2s;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon{color:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.stat-value{color:var(--slate-900);font-size:28px;font-weight:800;line-height:1.1;font-family:var(--font-heading)}.stat-label{color:var(--slate-500);margin-top:4px;font-size:13px;font-weight:600}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:200;background:#0f172a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-xl);width:100%;max-width:800px;max-height:88vh;box-shadow:var(--shadow-xl);border:1px solid var(--slate-200);background:#fff;animation:.2s cubic-bezier(.16,1,.3,1) modalPop;overflow-y:auto}@keyframes modalPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.step-card{border:1.5px dashed var(--primary-500);background:var(--primary-50);border-radius:var(--radius-md);margin-bottom:12px;padding:16px}.step-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.step-num-badge{background:var(--primary-600);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:800;display:flex}.toast-wrapper[data-v-5404741d]{pointer-events:none;flex-direction:column;gap:12px;width:calc(100vw - 48px);max-width:420px;display:flex;position:fixed;top:24px;right:24px;z-index:999999999!important}.toast-card[data-v-5404741d]{pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border:1px solid #e2e8f0e6;border-radius:16px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 35px -4px #0000001f,0 4px 10px #0000000d}.toast-icon-box[data-v-5404741d]{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.icon-svg[data-v-5404741d]{width:20px;height:20px}.toast-success[data-v-5404741d]{border-left:4px solid #10b981}.toast-success .toast-icon-box[data-v-5404741d]{color:#059669;background:#ecfdf5}.toast-error[data-v-5404741d]{border-left:4px solid #ef4444}.toast-error .toast-icon-box[data-v-5404741d]{color:#dc2626;background:#fef2f2}.toast-warning[data-v-5404741d]{border-left:4px solid #f59e0b}.toast-warning .toast-icon-box[data-v-5404741d]{color:#d97706;background:#fffbeb}.toast-info[data-v-5404741d]{border-left:4px solid #3b82f6}.toast-info .toast-icon-box[data-v-5404741d]{color:#2563eb;background:#eff6ff}.toast-content[data-v-5404741d]{flex:1}.toast-title[data-v-5404741d]{font-family:var(--font-heading);color:#0f172a;font-size:14px;font-weight:800;line-height:1.3}.toast-message[data-v-5404741d]{color:#475569;margin-top:3px;font-size:13px;line-height:1.4}.toast-close-btn[data-v-5404741d]{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px;transition:color .15s}.toast-close-btn[data-v-5404741d]:hover{color:#0f172a}.toast-progress[data-v-5404741d]{background:linear-gradient(90deg, var(--primary-600), #a855f7);height:3px;animation:3.5s linear forwards shrink-5404741d;position:absolute;bottom:0;left:0;right:0}@keyframes shrink-5404741d{0%{width:100%}to{width:0%}}.toast-enter-active[data-v-5404741d],.toast-leave-active[data-v-5404741d]{transition:all .3s cubic-bezier(.16,1,.3,1)}.toast-enter-from[data-v-5404741d]{opacity:0;transform:translate(40px)scale(.95)}.toast-leave-to[data-v-5404741d]{opacity:0;transform:translateY(-15px)scale(.95)}.confirm-modal-overlay[data-v-671c3b88]{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172abf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;z-index:99999999!important}.confirm-box[data-v-671c3b88]{text-align:center;border-radius:20px;flex-direction:column;align-items:center;max-width:440px;padding:32px 28px;animation:.2s cubic-bezier(.16,1,.3,1) confirmPop-671c3b88;display:flex;box-shadow:0 25px 60px #0006}@keyframes confirmPop-671c3b88{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.confirm-icon-wrapper[data-v-671c3b88]{border-radius:18px;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:18px;display:flex}.icon-danger[data-v-671c3b88]{color:#ef4444;background:#fef2f2;border:1.5px solid #fee2e2}.icon-primary[data-v-671c3b88]{color:#4f46e5;background:#eef2ff;border:1.5px solid #e0e7ff}.icon-main[data-v-671c3b88]{width:28px;height:28px}.confirm-title[data-v-671c3b88]{font-family:var(--font-heading);color:#0f172a;margin-bottom:8px;font-size:19px;font-weight:800}.confirm-message[data-v-671c3b88]{color:#64748b;margin-bottom:24px;font-size:13.5px;line-height:1.5}.confirm-actions[data-v-671c3b88]{gap:12px;width:100%;display:flex}.confirm-btn[data-v-671c3b88]{flex:1;padding:11px 18px;font-size:13.5px}.login-layout[data-v-c351bb61]{background:#0f172a;width:100vw;min-height:100vh}.admin-app[data-v-c351bb61]{background-color:var(--slate-50);flex-direction:column;min-height:100vh;display:flex}.header-container[data-v-c351bb61]{justify-content:space-between;align-items:center;width:100%;max-width:1440px;margin:0 auto;padding:0 20px;display:flex}.top-brand-bar[data-v-c351bb61]{background-color:var(--white);border-bottom:1px solid var(--slate-200);z-index:30;align-items:center;height:68px;display:flex;position:relative}.navbar-left[data-v-c351bb61]{align-items:center;gap:12px;display:flex}.mobile-menu-toggle[data-v-c351bb61]{background-color:var(--slate-100);border:1px solid var(--slate-200);width:40px;height:40px;color:var(--slate-700);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:none}.mobile-menu-toggle[data-v-c351bb61]:hover{background-color:var(--slate-200);color:var(--slate-900)}.toggle-icon[data-v-c351bb61]{width:20px;height:20px}.navbar-brand[data-v-c351bb61]{align-items:center;gap:12px;display:flex}.brand-logo[data-v-c351bb61]{background:linear-gradient(135deg, var(--primary-600), var(--primary-700));color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;font-weight:800;display:flex;box-shadow:0 4px 10px #4f46e540}.brand-text[data-v-c351bb61]{flex-direction:column;display:flex}.brand-title[data-v-c351bb61]{color:var(--slate-900);letter-spacing:-.5px;font-size:18px;font-weight:800;line-height:1.1}.brand-subtitle[data-v-c351bb61]{color:var(--primary-600);text-transform:uppercase;letter-spacing:.6px;font-size:11px;font-weight:600}.navbar-right[data-v-c351bb61]{align-items:center;gap:14px;display:flex}.admin-profile-chip[data-v-c351bb61]{background-color:var(--slate-100);border:1px solid var(--slate-200);border-radius:9999px;align-items:center;gap:10px;padding:4px 12px 4px 4px;display:flex}.admin-avatar[data-v-c351bb61]{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:11.5px;font-weight:700;display:flex}.admin-avatar.large[data-v-c351bb61]{width:44px;height:44px;font-size:16px}.admin-meta[data-v-c351bb61]{flex-direction:column;display:flex}.admin-name[data-v-c351bb61]{color:var(--slate-800);font-size:12.5px;font-weight:700;line-height:1.2}.admin-email[data-v-c351bb61]{color:var(--slate-500);font-size:10.5px}.admin-role-badge[data-v-c351bb61]{color:var(--primary-700);background-color:var(--primary-50);border-radius:4px;width:fit-content;margin-top:4px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.btn-logout[data-v-c351bb61]{color:#dc2626;cursor:pointer;background-color:#fef2f2;border:1px solid #fecaca;border-radius:10px;flex-shrink:0;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:700;transition:all .2s;display:flex}.btn-logout[data-v-c351bb61]:hover{color:#fff;background-color:#dc2626;border-color:#dc2626}.logout-icon[data-v-c351bb61]{width:15px;height:15px}.sub-nav-bar[data-v-c351bb61]{border-bottom:1px solid var(--slate-200);z-index:25;background-color:#fff;position:sticky;top:0;box-shadow:0 1px 3px #00000005}.nav-container[data-v-c351bb61]{padding:0 16px}.nav-menu-list[data-v-c351bb61]{scrollbar-width:thin;scrollbar-color:var(--slate-300) transparent;-webkit-overflow-scrolling:touch;align-items:center;gap:4px;padding:6px 0;display:flex;overflow-x:auto}.nav-menu-list[data-v-c351bb61]::-webkit-scrollbar{height:3px}.nav-menu-list[data-v-c351bb61]::-webkit-scrollbar-thumb{background-color:var(--slate-300);border-radius:4px}.nav-menu-item[data-v-c351bb61]{color:var(--slate-600);white-space:nowrap;border-radius:8px;flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s;display:flex}.nav-menu-item[data-v-c351bb61]:hover{background-color:var(--slate-100);color:var(--slate-900)}.nav-menu-item.router-link-active[data-v-c351bb61]{background-color:var(--primary-50);color:var(--primary-700);font-weight:700}.nav-item-icon[data-v-c351bb61]{flex-shrink:0;width:16px;height:16px}.mobile-drawer-backdrop[data-v-c351bb61]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:998;background-color:#0f172a99;position:fixed;inset:0}.mobile-drawer[data-v-c351bb61]{z-index:999;background-color:#fff;flex-direction:column;width:300px;max-width:85vw;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:4px 0 25px #00000026}.mobile-drawer.is-open[data-v-c351bb61]{transform:translate(0)}.drawer-header[data-v-c351bb61]{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.btn-close-drawer[data-v-c351bb61]{background-color:var(--slate-100);width:36px;height:36px;color:var(--slate-600);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.btn-close-drawer[data-v-c351bb61]:hover{background-color:var(--slate-200);color:var(--slate-900)}.drawer-profile-card[data-v-c351bb61]{background-color:var(--slate-50);border-bottom:1px solid var(--slate-200);align-items:center;gap:12px;padding:16px 20px;display:flex}.drawer-menu-list[data-v-c351bb61]{flex-direction:column;flex:1;gap:4px;padding:16px 12px;display:flex}.drawer-menu-heading[data-v-c351bb61]{color:var(--slate-400);letter-spacing:.6px;padding:0 10px 8px;font-size:11px;font-weight:800}.drawer-menu-item[data-v-c351bb61]{color:var(--slate-700);border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .15s;display:flex}.drawer-item-left[data-v-c351bb61]{align-items:center;gap:12px;display:flex}.drawer-icon-wrap[data-v-c351bb61]{background-color:var(--slate-100);width:32px;height:32px;color:var(--slate-600);border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.drawer-menu-item[data-v-c351bb61]:hover{background-color:var(--slate-100);color:var(--slate-900)}.drawer-menu-item:hover .drawer-icon-wrap[data-v-c351bb61]{background-color:var(--slate-200);color:var(--slate-900)}.drawer-menu-item.router-link-active[data-v-c351bb61]{background-color:var(--primary-50);color:var(--primary-700);font-weight:700}.drawer-menu-item.router-link-active .drawer-icon-wrap[data-v-c351bb61]{background-color:var(--primary-600);color:#fff}.drawer-chevron[data-v-c351bb61]{width:16px;height:16px;color:var(--slate-400)}.drawer-footer[data-v-c351bb61]{border-top:1px solid var(--slate-200);background-color:var(--slate-50);padding:16px}.drawer-logout-btn[data-v-c351bb61]{width:double;color:#dc2626;cursor:pointer;background-color:#fef2f2;border:1px solid #fecaca;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;padding:11px;font-size:13px;font-weight:700;transition:all .2s;display:flex}.drawer-logout-btn[data-v-c351bb61]:hover{color:#fff;background-color:#dc2626;border-color:#dc2626}.main-container[data-v-c351bb61]{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:24px 20px}.fade-enter-active[data-v-c351bb61],.fade-leave-active[data-v-c351bb61]{transition:opacity .25s}.fade-enter-from[data-v-c351bb61],.fade-leave-to[data-v-c351bb61]{opacity:0}@media (width<=1024px){.mobile-menu-toggle[data-v-c351bb61]{display:flex}}@media (width<=768px){.top-brand-bar[data-v-c351bb61]{height:60px}.header-container[data-v-c351bb61]{padding:0 14px}.brand-title[data-v-c351bb61]{font-size:16px}.brand-subtitle[data-v-c351bb61]{font-size:10px}.admin-meta .admin-email[data-v-c351bb61]{display:none}.admin-profile-chip[data-v-c351bb61]{padding:3px 8px 3px 3px}.main-container[data-v-c351bb61]{padding:16px 12px}}@media (width<=520px){.brand-text[data-v-c351bb61],.admin-meta[data-v-c351bb61]{display:none}.admin-profile-chip[data-v-c351bb61]{background:0 0;border:none;padding:2px}.btn-logout .logout-text[data-v-c351bb61]{display:none}.btn-logout[data-v-c351bb61]{border-radius:50%;padding:8px}.btn-change-pwd .pwd-text[data-v-c351bb61]{display:none}.btn-change-pwd[data-v-c351bb61]{border-radius:50%;padding:8px}}.btn-change-pwd[data-v-c351bb61]{background-color:var(--slate-100);border:1px solid var(--slate-200);color:var(--slate-700);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.btn-change-pwd[data-v-c351bb61]:hover{color:#4f46e5;background-color:#eef2ff;border-color:#c7d2fe}.pwd-icon[data-v-c351bb61]{width:15px;height:15px}.drawer-pwd-btn[data-v-c351bb61]{color:#4f46e5;cursor:pointer;background-color:#eef2ff;border:1px solid #c7d2fe;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;margin-bottom:8px;padding:11px;font-size:13px;font-weight:700;transition:all .2s;display:flex}.drawer-pwd-btn[data-v-c351bb61]:hover{color:#fff;background-color:#4f46e5}.modal-backdrop[data-v-c351bb61]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172a99;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-card[data-v-c351bb61]{border:1px solid var(--slate-100);background:#fff;border-radius:20px;width:100%;max-width:460px;animation:.25s cubic-bezier(.16,1,.3,1) slideUp-c351bb61;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes slideUp-c351bb61{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header[data-v-c351bb61]{border-bottom:1px solid var(--slate-100);background:linear-gradient(135deg,#f8fafc 0%,#fff 100%);align-items:center;gap:12px;padding:20px 24px;display:flex;position:relative}.modal-icon-badge[data-v-c351bb61]{background:#eef2ff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:24px;display:flex}.modal-title[data-v-c351bb61]{color:var(--slate-900);margin:0;font-size:16px;font-weight:700}.modal-subtitle[data-v-c351bb61]{color:var(--slate-500);margin:2px 0 0;font-size:12px}.btn-close-modal[data-v-c351bb61]{color:var(--slate-400);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;font-size:18px;transition:all .15s;position:absolute;top:16px;right:16px}.btn-close-modal[data-v-c351bb61]:hover{background:var(--slate-100);color:var(--slate-700)}.modal-body[data-v-c351bb61]{flex-direction:column;gap:16px;padding:24px;display:flex}.modal-error-banner[data-v-c351bb61]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.modal-form-group[data-v-c351bb61]{flex-direction:column;gap:6px;display:flex}.modal-label[data-v-c351bb61]{color:var(--slate-700);font-size:13px;font-weight:600}.modal-input[data-v-c351bb61]{border:1.5px solid var(--slate-200);width:100%;color:var(--slate-800);box-sizing:border-box;background:#f8fafc;border-radius:10px;outline:none;padding:11px 14px;font-size:14px;transition:all .2s}.modal-input[data-v-c351bb61]:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.modal-footer[data-v-c351bb61]{border-top:1px solid var(--slate-100);background:#f8fafc;justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.modal-btn-cancel[data-v-c351bb61]{border:1px solid var(--slate-300);color:var(--slate-600);cursor:pointer;background:#fff;border-radius:10px;padding:10px 18px;font-size:13px;font-weight:600;transition:all .15s}.modal-btn-cancel[data-v-c351bb61]:hover:not(:disabled){background:var(--slate-100)}.modal-btn-submit[data-v-c351bb61]{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4f46e5 0%,#6366f1 100%);border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:700;transition:all .15s;display:flex;box-shadow:0 4px 12px #4f46e540}.modal-btn-submit[data-v-c351bb61]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #4f46e559}.modal-btn-submit[data-v-c351bb61]:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner-small[data-v-c351bb61]{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin-c351bb61}@keyframes spin-c351bb61{to{transform:rotate(360deg)}}
