#app{font-family:Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#2c3e50;background-color:#f5f7fa;min-height:100vh}#app,body{margin:0;padding:0}.loading-container[data-v-82c0e1e0]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner[data-v-82c0e1e0]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin-82c0e1e0 1s linear infinite;margin-bottom:20px}@keyframes spin-82c0e1e0{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-text[data-v-82c0e1e0]{font-size:16px;color:#666;margin:0}.error-container[data-v-82c0e1e0]{display:flex;justify-content:center;align-items:center;padding:60px 20px}.error-message[data-v-82c0e1e0]{text-align:center;padding:40px;background:#fff;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);border:1px solid #e0e0e0;max-width:400px}.error-message h3[data-v-82c0e1e0]{color:#dc3545;margin:0 0 16px 0;font-size:18px}.error-message p[data-v-82c0e1e0]{color:#666;margin:0 0 24px 0;line-height:1.5}.retry-button[data-v-82c0e1e0]{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s,transform .1s}.retry-button[data-v-82c0e1e0]:hover{background:#0056b3;transform:translateY(-1px)}.retry-button[data-v-82c0e1e0]:active{transform:translateY(0)}.exam-home[data-v-82c0e1e0]{max-width:900px;margin:0 auto;padding:0;min-height:100vh;display:flex;flex-direction:column}.page-header[data-v-82c0e1e0]{background-color:#fff;color:#333;padding:10px 20px;border-bottom:1px solid #ddd;box-shadow:0 2px 4px rgba(0,0,0,.1);margin:0 -20px 0 -20px;width:calc(100% + 40px);position:relative;left:-20px}.page-header .system-name[data-v-82c0e1e0]{font-size:18px;font-weight:700}.exam-home>.card-container[data-v-82c0e1e0],.exam-home>h1[data-v-82c0e1e0]{padding:0 20px}.exam-home>h1[data-v-82c0e1e0]{padding-top:20px}.exam-home>.card-container[data-v-82c0e1e0]{flex:1;padding-bottom:20px}.page-footer[data-v-82c0e1e0]{background-color:#f8f9fa;border-top:1px solid #ddd;padding:20px;text-align:center;margin-top:auto}.admin-button[data-v-82c0e1e0]{background-color:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.admin-button[data-v-82c0e1e0]:hover{background-color:#5a6268}.exam-title[data-v-82c0e1e0]{text-align:center;margin-bottom:30px;color:#2c3e50}.card-container[data-v-82c0e1e0]{display:flex;flex-direction:column;gap:20px}.main-exam-card[data-v-82c0e1e0]{background:#fff;border-radius:8px;border:1px solid #d1d5db;box-shadow:0 1px 3px rgba(0,0,0,.1);overflow:hidden}.main-card-header[data-v-82c0e1e0]{background:#f9fafb;padding:16px 20px;border-bottom:1px solid #e5e7eb}.main-card-header h1[data-v-82c0e1e0]{margin:0 0 12px 0;font-size:18px;font-weight:600;color:#111827;text-align:left}.main-card-description[data-v-82c0e1e0]{background:#fff;padding:16px;border-radius:6px;border:1px solid #e5e7eb;color:#6b7280;line-height:1.6;margin-top:8px}.main-card-description p[data-v-82c0e1e0]{margin:0 0 12px 0;font-size:14px}.main-card-description p[data-v-82c0e1e0]:last-child{margin-bottom:0}.main-card-content[data-v-82c0e1e0]{padding:20px;display:flex;flex-direction:column;gap:16px}.exam-card[data-v-82c0e1e0]{border:1px solid #e8e8e8;border-radius:6px;background:#fafafa;transition:all .3s ease;overflow:hidden}.exam-card[data-v-82c0e1e0]:hover{background:#f5f5f5;border-color:#d0d0d0}.card-header[data-v-82c0e1e0]{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background-color:#f5f5f5;border-bottom:1px solid #e0e0e0;cursor:pointer;transition:background-color .2s}.card-header[data-v-82c0e1e0]:hover{background-color:#e8e8e8}.card-header-content[data-v-82c0e1e0]{display:flex;flex-direction:column;gap:5px}.card-header h2[data-v-82c0e1e0]{margin:0;font-size:18px;color:#2c3e50}.card-meta[data-v-82c0e1e0]{display:flex;gap:10px;align-items:center}.exam-count[data-v-82c0e1e0]{font-size:12px;color:#666;background-color:#e9ecef;padding:2px 8px;border-radius:12px}.toggle-icon[data-v-82c0e1e0]{font-size:16px;color:#666;transition:transform .3s ease}.toggle-icon.rotated[data-v-82c0e1e0]{transform:rotate(180deg)}.card-content[data-v-82c0e1e0]{padding:20px;animation:fadeIn-82c0e1e0 .3s ease-in-out}@keyframes fadeIn-82c0e1e0{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.card-description[data-v-82c0e1e0]{margin-bottom:15px;color:#6b7280;line-height:1.6;font-size:14px}.exam-links[data-v-82c0e1e0]{display:flex;flex-direction:column;gap:8px}.exam-link[data-v-82c0e1e0]{padding:12px 16px;border:1px solid #e5e7eb;border-radius:6px;background-color:#fff;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px rgba(0,0,0,.05)}.exam-link[data-v-82c0e1e0]:hover{background-color:#f3f4f6;border-color:#3b82f6;transform:translateY(-1px);box-shadow:0 4px 6px rgba(0,0,0,.1)}.exam-title[data-v-82c0e1e0]{font-weight:500;font-size:14px;color:#374151;margin:0;transition:color .2s ease}.exam-link:hover .exam-title[data-v-82c0e1e0]{color:#1f2937}.answer-card .card-content[data-v-82c0e1e0]{padding:0}.answer-links[data-v-82c0e1e0]{display:flex;flex-direction:column}.answer-link[data-v-82c0e1e0]{padding:15px 20px;border-bottom:1px solid #e0e0e0;transition:background-color .2s}.answer-link[data-v-82c0e1e0]:hover{background-color:#f9f9f9}.answer-link[data-v-82c0e1e0]:last-child{border-bottom:none}.action-button button[data-v-82c0e1e0]{background-color:#08c;color:#fff;border:none;padding:8px 15px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s,transform .1s}.action-button button[data-v-82c0e1e0]:hover{background-color:#069;transform:translateY(-1px)}.action-button button[data-v-82c0e1e0]:active{transform:translateY(0)}.solution-loading[data-v-82c0e1e0]{text-align:center;padding:20px;color:#6c757d}.solution-error[data-v-82c0e1e0]{text-align:center;padding:20px;color:#dc3545}.solution-error .retry-button[data-v-82c0e1e0]{background-color:#dc3545;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;margin-top:10px;transition:background-color .2s}.solution-error .retry-button[data-v-82c0e1e0]:hover{background-color:#c82333}.answer-link[data-v-82c0e1e0]{display:flex;justify-content:space-between;align-items:center;padding:15px;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-bottom:10px;transition:box-shadow .2s}.answer-link[data-v-82c0e1e0]:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}.solution-info[data-v-82c0e1e0]{flex:1;display:flex;flex-direction:column;gap:4px}.solution-title[data-v-82c0e1e0]{font-weight:500;color:#333;font-size:16px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help}.solution-exam[data-v-82c0e1e0]{color:#6c757d}.solution-description[data-v-82c0e1e0],.solution-exam[data-v-82c0e1e0]{font-size:14px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help}.solution-description[data-v-82c0e1e0]{color:#495057;font-style:italic}.action-buttons[data-v-82c0e1e0]{display:flex;gap:8px;align-items:center}.preview-btn[data-v-82c0e1e0]{background-color:#17a2b8;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.preview-btn[data-v-82c0e1e0]:hover{background-color:#138496}.download-btn[data-v-82c0e1e0]{background-color:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.download-btn[data-v-82c0e1e0]:hover{background-color:#0056b3}.no-solutions[data-v-82c0e1e0]{text-align:center;padding:40px;color:#6c757d;font-style:italic}.no-solutions p[data-v-82c0e1e0]{margin:0;font-size:16px}[data-v-6f8e0f31] .text-highlight{background-color:#fff3a3;border-radius:2px;padding:0 1px}.highlighter-button.active[data-v-6f8e0f31]{background-color:#ffe58f}.material-text[data-v-6f8e0f31],.question-text[data-v-6f8e0f31]{-webkit-user-select:text;-moz-user-select:text;user-select:text}.exam-page[data-v-6f8e0f31]{max-width:1200px;margin:0 auto;padding:0;background-color:#fff;min-height:100vh;box-shadow:0 2px 10px rgba(0,0,0,.1);position:relative}.exam-page.width-normal[data-v-6f8e0f31]{max-width:1200px}.exam-page.width-wide[data-v-6f8e0f31]{max-width:1600px}.exam-page.width-ultra-wide[data-v-6f8e0f31]{max-width:95%;min-width:1800px}:-moz-full-screen .exam-page[data-v-6f8e0f31],:-ms-fullscreen .exam-page[data-v-6f8e0f31],:-webkit-full-screen .exam-page[data-v-6f8e0f31],:fullscreen .exam-page[data-v-6f8e0f31]{max-width:100%;margin:0;padding:0 40px;box-shadow:none;height:100vh;overflow-y:auto}:-moz-full-screen .exam-content[data-v-6f8e0f31],:-ms-fullscreen .exam-content[data-v-6f8e0f31],:-webkit-full-screen .exam-content[data-v-6f8e0f31],:fullscreen .exam-content[data-v-6f8e0f31]{height:calc(100vh - 40px);overflow-y:auto}:-moz-full-screen .option-text[data-v-6f8e0f31],:-ms-fullscreen .option-text[data-v-6f8e0f31],:-webkit-full-screen .option-text[data-v-6f8e0f31],:fullscreen .option-text[data-v-6f8e0f31]{font-size:16px;line-height:1.5}.toolbar[data-v-6f8e0f31]{display:flex;justify-content:space-between;align-items:center;background-color:#333;color:#fff;padding:0;height:40px;width:100%;position:sticky;top:0;z-index:100;border-bottom:1px solid #444}.toolbar-center[data-v-6f8e0f31],.toolbar-left[data-v-6f8e0f31],.toolbar-right[data-v-6f8e0f31]{display:flex;align-items:center;height:100%}.toolbar-center[data-v-6f8e0f31]{flex:1;display:flex;justify-content:center;align-items:center;gap:20px}.toolbar-left[data-v-6f8e0f31]{margin-left:15px}.toolbar-left .system-name[data-v-6f8e0f31]{font-size:18px;font-weight:700;color:#fff}.toolbar-right[data-v-6f8e0f31]{margin-right:10px}.nav-buttons-group[data-v-6f8e0f31]{display:flex;gap:8px}.nav-button[data-v-6f8e0f31]{background-color:#06c;color:#fff;border:none;width:30px;height:30px;cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:4px;transition:background-color .2s}.nav-button[data-v-6f8e0f31]:hover:not(:disabled){background-color:#08c}.nav-button[data-v-6f8e0f31]:disabled{background-color:#555;cursor:not-allowed;opacity:.5}.nav-icon[data-v-6f8e0f31]{font-size:18px;font-weight:700}.mark-button[data-v-6f8e0f31],.review-button[data-v-6f8e0f31]{background-color:#333;color:#fff;border:none;padding:0 15px;height:100%;cursor:pointer;display:flex;align-items:center;transition:background-color .2s}.mark-button[data-v-6f8e0f31]:hover,.review-button[data-v-6f8e0f31]:hover{background-color:#444}.mark-button[data-v-6f8e0f31]{background-color:#4caf50;margin-left:5px}.submit-button-toolbar[data-v-6f8e0f31]{background-color:#28a745;color:#fff;border:none;padding:0 15px;height:100%;cursor:pointer;display:flex;align-items:center;transition:background-color .2s;margin-left:5px;font-weight:700}.submit-button-toolbar[data-v-6f8e0f31]:hover{background-color:#218838}.submit-text[data-v-6f8e0f31]{margin-left:5px}.mark-text[data-v-6f8e0f31],.review-text[data-v-6f8e0f31]{margin-right:5px}.mark-icon[data-v-6f8e0f31],.review-icon[data-v-6f8e0f31]{font-size:16px}.clickable[data-v-6f8e0f31]{cursor:pointer}.clickable[data-v-6f8e0f31]:hover{background-color:#f0f0f0;border-radius:4px}.stat-item.active[data-v-6f8e0f31]{background-color:#e6f7ff;border-bottom:2px solid #08c;border-radius:4px}.tool-button[data-v-6f8e0f31]{background-color:transparent;color:#999;border:none;width:30px;height:30px;margin:0 5px;cursor:pointer;display:flex;justify-content:center;align-items:center;border-radius:4px;transition:all .2s}.tool-button[data-v-6f8e0f31]:hover{background-color:#444}.tool-button.bookmarked[data-v-6f8e0f31]{color:#4caf50}.tool-button.fullscreen-button[data-v-6f8e0f31]{color:#17a2b8}.tool-button.fullscreen-button[data-v-6f8e0f31]:hover{color:#fff;background-color:#17a2b8}.tool-button.fullscreen-button.active[data-v-6f8e0f31]{color:#fff;background-color:#dc3545}.tool-button.fullscreen-button.active[data-v-6f8e0f31]:hover{background-color:#c82333}.tool-icon[data-v-6f8e0f31]{font-size:16px}.width-selector[data-v-6f8e0f31]{position:relative;display:inline-block}.tool-button.width-button[data-v-6f8e0f31]{color:#6c757d}.tool-button.width-button[data-v-6f8e0f31]:hover{color:#fff;background-color:#6c757d}.width-dropdown[data-v-6f8e0f31]{position:absolute;top:calc(100% + 5px);right:0;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:1002;min-width:80px;overflow:hidden}.width-option[data-v-6f8e0f31]{padding:8px 12px;cursor:pointer;transition:background-color .2s;font-size:14px;color:#333;border-bottom:1px solid #f0f0f0}.width-option[data-v-6f8e0f31]:last-child{border-bottom:none}.width-option[data-v-6f8e0f31]:hover{background-color:#f8f9fa}.width-option.active[data-v-6f8e0f31]{background-color:#08c;color:#fff}.width-option.active[data-v-6f8e0f31]:hover{background-color:#07b}.width-label[data-v-6f8e0f31]{font-weight:500}.timer-display[data-v-6f8e0f31]{display:flex;align-items:center;background-color:#333;color:#fff;padding:5px 10px;border-radius:4px;margin-right:10px;font-size:14px;font-weight:700;border:1px solid #555}.timer-display.time-warning[data-v-6f8e0f31]{background-color:#dc3545;color:#fff;animation:pulse-6f8e0f31 1s infinite}@keyframes pulse-6f8e0f31{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.timer-icon[data-v-6f8e0f31]{margin-right:5px;font-size:16px}.timer-text[data-v-6f8e0f31]{font-family:Courier New,monospace}.user-info[data-v-6f8e0f31]{display:flex;align-items:center;margin-left:15px;font-size:14px}.user-menu-button[data-v-6f8e0f31]{background:none;border:none;color:#fff;margin-left:5px;cursor:pointer;font-size:10px}.exam-header[data-v-6f8e0f31]{border-bottom:1px solid #e0e0e0;padding:20px;margin-bottom:0;background-color:#f9f9f9}.exam-breadcrumb[data-v-6f8e0f31]{display:flex;align-items:center;margin-bottom:15px;font-size:14px;color:#666}.breadcrumb-item[data-v-6f8e0f31]{color:#08c;font-weight:500}.breadcrumb-separator[data-v-6f8e0f31]{margin:0 8px;color:#999}.breadcrumb-current[data-v-6f8e0f31]{color:#333;font-weight:600}.exam-header h1[data-v-6f8e0f31]{font-size:24px;color:#2c3e50;margin-bottom:15px;text-align:center}.exam-group-info[data-v-6f8e0f31]{background-color:#e8f4fd;padding:12px 16px;border-radius:6px;margin-bottom:15px;border-left:4px solid #08c}.group-description[data-v-6f8e0f31]{margin:0;color:#2c3e50;font-size:14px;line-height:1.5}.exam-info[data-v-6f8e0f31]{background-color:#f5f5f5;padding:15px;border-radius:4px;margin:0 auto;max-width:800px}.exam-info p[data-v-6f8e0f31]{margin:5px 0;color:#333}.page-header[data-v-6f8e0f31]{background-color:#333;color:#fff;padding:10px 20px;border-bottom:1px solid #444}.exam-start-form[data-v-6f8e0f31]{display:flex;justify-content:center;align-items:center;padding:40px 0}.form-container[data-v-6f8e0f31]{width:100%;max-width:500px;padding:30px;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);border:1px solid #e0e0e0}.form-container h2[data-v-6f8e0f31]{margin-top:0;margin-bottom:20px;color:#1a1a1a;font-size:22px;font-weight:600;text-align:center}.input-group[data-v-6f8e0f31]{margin-bottom:20px}.input-group label[data-v-6f8e0f31]{display:block;margin-bottom:8px;font-weight:600;color:#1a1a1a;font-size:16px}.input-group input[data-v-6f8e0f31],.input-group select[data-v-6f8e0f31]{width:100%;padding:12px 15px;border:2px solid #ddd;border-radius:6px;font-size:16px;color:#1a1a1a;background-color:#fff;transition:all .2s;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none}.input-group select[data-v-6f8e0f31]{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='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:40px;cursor:pointer}.input-group select[data-v-6f8e0f31]:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed;border-color:#e9ecef}.input-group input[data-v-6f8e0f31]:focus,.input-group select[data-v-6f8e0f31]:focus{border-color:#08c;outline:none;box-shadow:0 0 0 3px rgba(0,136,204,.1)}.input-group input[data-v-6f8e0f31]::-moz-placeholder{color:#666;opacity:1}.input-group input[data-v-6f8e0f31]::placeholder{color:#666;opacity:1}.input-group select option[data-v-6f8e0f31]{padding:8px 12px;color:#1a1a1a;background-color:#fff}.input-group select option[data-v-6f8e0f31]:disabled{color:#6c757d;background-color:#f8f9fa}.start-button[data-v-6f8e0f31]{display:block;width:100%;padding:12px;background-color:#08c;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s}.start-button[data-v-6f8e0f31]:hover{background-color:#069}.start-button[data-v-6f8e0f31]:disabled{background-color:#ccc;cursor:not-allowed}.guest-mode-toggle[data-v-6f8e0f31]{display:flex;justify-content:flex-end;margin-bottom:20px}.guest-toggle-btn[data-v-6f8e0f31]{display:flex;align-items:center;gap:8px;padding:8px 16px;background-color:#f8f9fa;border:2px solid #dee2e6;border-radius:20px;font-size:14px;font-weight:500;color:#495057;cursor:pointer;transition:all .3s ease}.guest-toggle-btn[data-v-6f8e0f31]:hover{background-color:#e9ecef;border-color:#adb5bd}.guest-toggle-btn.active[data-v-6f8e0f31]{background-color:#08c;border-color:#08c;color:#fff}.guest-toggle-btn.active[data-v-6f8e0f31]:hover{background-color:#069;border-color:#069}.toggle-icon[data-v-6f8e0f31]{font-size:16px}.guest-form[data-v-6f8e0f31],.normal-form[data-v-6f8e0f31]{width:100%}.exam-content[data-v-6f8e0f31]{display:flex;min-height:calc(100vh - 40px);position:relative}.review-dropdown[data-v-6f8e0f31]{position:relative}.review-panel.dropdown[data-v-6f8e0f31]{width:320px;max-height:450px;background-color:#fff;border:1px solid #ccc;border-radius:6px;overflow-y:auto;position:absolute;left:0;top:calc(100% + 2px);z-index:1001;box-shadow:0 6px 16px rgba(0,0,0,.15);pointer-events:auto}.review-header[data-v-6f8e0f31]{padding:10px;background-color:#f5f5f5;border-bottom:1px solid #ddd}.question-stats[data-v-6f8e0f31]{display:flex;justify-content:space-between;padding:5px 0}.stat-item[data-v-6f8e0f31]{text-align:center;flex:1;padding:8px 4px;border-radius:4px;transition:background-color .2s}.stat-item.clickable[data-v-6f8e0f31]{cursor:pointer}.stat-item.clickable[data-v-6f8e0f31]:hover{background-color:#f0f0f0}.stat-item.active[data-v-6f8e0f31]{background-color:#08c;color:#fff}.stat-item.active .stat-label[data-v-6f8e0f31],.stat-item.active .stat-number[data-v-6f8e0f31]{color:#fff}.stat-number[data-v-6f8e0f31]{display:block;font-size:18px;font-weight:700;color:#333}.stat-label[data-v-6f8e0f31]{display:block;font-size:12px;color:#666}.section-tabs[data-v-6f8e0f31]{display:flex;border-bottom:1px solid #ddd}.section-tab[data-v-6f8e0f31]{padding:10px;cursor:pointer;background-color:#f9f9f9;border-bottom:2px solid transparent;font-size:14px}.section-tab.active[data-v-6f8e0f31]{background-color:#fff;border-bottom:2px solid #08c;font-weight:700}.question-list[data-v-6f8e0f31]{padding:10px}.question-item[data-v-6f8e0f31]{padding:8px 10px;margin-bottom:5px;border-radius:4px;cursor:pointer;background-color:#f9f9f9;position:relative;font-size:14px;color:#333;border:1px solid #ddd}.question-item[data-v-6f8e0f31]:hover{background-color:#f0f0f0}.question-item.current[data-v-6f8e0f31]{background-color:#08c;color:#fff}.question-item.submit-item[data-v-6f8e0f31]{background-color:#28a745;color:#fff;font-weight:700;border:2px solid #1e7e34;margin-top:10px}.question-item.submit-item[data-v-6f8e0f31]:hover{background-color:#218838;border-color:#1c7430}.submit-icon[data-v-6f8e0f31]{font-size:16px;margin-left:5px;font-weight:700;box-shadow:0 0 5px rgba(0,136,204,.5);border-color:#06c}.question-item.answered[data-v-6f8e0f31]{background-color:#e6f7ff;color:#06c;border-color:#a8d4f5}.question-item.answered.current[data-v-6f8e0f31]{background-color:#08c}.question-item.bookmarked[data-v-6f8e0f31]{border-left:3px solid #ff9800;background-color:#fff8e1;color:#e65100}.question-item.bookmarked[data-v-6f8e0f31]:before{content:"🔖";position:absolute;right:10px;top:8px;font-size:14px;color:#ff9800}.question-item.marked[data-v-6f8e0f31]{border-right:3px solid #4caf50}.mark-indicator[data-v-6f8e0f31]{position:absolute;right:5px;color:#4caf50}.question-item.hidden[data-v-6f8e0f31]{display:none}.question-container[data-v-6f8e0f31]{flex:1;padding:20px;overflow-y:auto}.question-content[data-v-6f8e0f31]{height:calc(100vh - 120px)}.material-section[data-v-6f8e0f31]{flex:1;background-color:#f9f9f9;border:1px solid #ddd;overflow:hidden}.material-header[data-v-6f8e0f31]{background-color:#e9ecef;padding:15px;border-bottom:1px solid #ddd}.material-header h3[data-v-6f8e0f31]{color:#333;font-weight:600}.material-content[data-v-6f8e0f31]{padding:20px}.material-content.scrollable[data-v-6f8e0f31]{max-height:calc(100vh - 120px)}.exam-page.width-ultra-wide .material-content.scrollable[data-v-6f8e0f31]{max-height:calc(100vh - 100px)}.exam-page.width-wide .material-content.scrollable[data-v-6f8e0f31]{max-height:calc(100vh - 110px)}.exam-page.width-normal .material-content.scrollable[data-v-6f8e0f31]{max-height:calc(100vh - 120px)}.material-image[data-v-6f8e0f31]{padding:15px;display:block}.exam-page.width-ultra-wide .material-image[data-v-6f8e0f31]{padding:20px}.exam-page.width-wide .material-image[data-v-6f8e0f31]{padding:18px}.exam-page.width-normal .material-image[data-v-6f8e0f31]{padding:15px}.material-img[data-v-6f8e0f31]{width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1);cursor:pointer;transition:transform .2s ease;display:block}.material-img[data-v-6f8e0f31]:hover{transform:scale(1.01)}.question-section[data-v-6f8e0f31]{flex:1}.question-section.full-width[data-v-6f8e0f31]{flex:none;width:100%}.question-section.with-material[data-v-6f8e0f31]{flex:1;min-width:0}.clear-button[data-v-6f8e0f31]{background-color:transparent;color:#fff}.clear-button[data-v-6f8e0f31]:hover{background-color:rgba(255,0,0,.2)}.clear-button.active[data-v-6f8e0f31]{background-color:rgba(255,152,0,.3);border-color:#ff9800}.clear-button.active[data-v-6f8e0f31]:hover{background-color:rgba(255,152,0,.5)}.question-header[data-v-6f8e0f31]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #eee}.section-info[data-v-6f8e0f31]{display:flex;justify-content:space-between;width:100%;color:#666;font-size:14px}.progress[data-v-6f8e0f31]{color:#08c}.question-content h3[data-v-6f8e0f31]{text-align:center;margin-bottom:20px;color:#333;font-size:18px}.reading-passage[data-v-6f8e0f31]{background-color:#f9f9f9;padding:20px;margin-bottom:30px;border-radius:4px;border-left:4px solid #ddd}.question-text[data-v-6f8e0f31]{padding:20px}.answer-options[data-v-6f8e0f31]{gap:10px}.answer-option[data-v-6f8e0f31]{padding:15px;border:1px solid #ddd;border-radius:4px;transition:all .2s}.answer-option[data-v-6f8e0f31]:hover{background-color:#f5f5f5;border-color:#ccc}.answer-option.selected[data-v-6f8e0f31]{background-color:#e6f7ff}.answer-option.exclusion-mode[data-v-6f8e0f31]{border-style:dashed;border-color:#ff9800}.answer-option.exclusion-mode[data-v-6f8e0f31]:hover{background-color:#fff3e0;border-color:#ff9800}.answer-option.excluded[data-v-6f8e0f31]{background-color:#f5f5f5;border-color:#ccc;opacity:.6;position:relative;pointer-events:auto}.answer-option.excluded[data-v-6f8e0f31]:before{content:"";position:absolute;top:50%;left:10px;right:10px;height:2px;background-color:#f44;transform:translateY(-50%);z-index:1}.answer-option.excluded .option-text[data-v-6f8e0f31]{text-decoration:line-through;color:#999}.answer-option.excluded .option-marker[data-v-6f8e0f31]{background-color:#ddd;color:#999}.answer-option.excluded.exclusion-mode[data-v-6f8e0f31]:hover{background-color:#ffebee;border-color:#f44}.option-marker[data-v-6f8e0f31]{width:25px;height:25px;background-color:#f0f0f0;border-radius:50%;display:flex;justify-content:center;align-items:center;margin-right:15px;color:#333}.selected .option-marker[data-v-6f8e0f31]{background-color:#08c;color:#fff}.global-notes-panel[data-v-6f8e0f31]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:400px;height:300px;background-color:#fff;border:2px solid #ddd;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.3);z-index:1000;display:flex;flex-direction:column}.notes-header[data-v-6f8e0f31]{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background-color:#f5f5f5;border-bottom:1px solid #ddd;border-radius:6px 6px 0 0;font-weight:700;color:#333}.close-notes[data-v-6f8e0f31]{background:none;border:none;font-size:18px;cursor:pointer;color:#666;padding:0;width:20px;height:20px;display:flex;justify-content:center;align-items:center}.close-notes[data-v-6f8e0f31]:hover{color:#333;background-color:#e0e0e0;border-radius:50%}.notes-textarea[data-v-6f8e0f31]{flex:1;padding:15px;border:none;outline:none;resize:none;font-family:inherit;font-size:14px;line-height:1.5;background-color:#fefefe;border-radius:0 0 6px 6px}.notes-textarea[data-v-6f8e0f31]::-moz-placeholder{color:#999}.notes-textarea[data-v-6f8e0f31]::placeholder{color:#999}.submit-page[data-v-6f8e0f31]{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:#f5f5f5;z-index:2000;overflow-y:auto;padding:0}.submit-page-header[data-v-6f8e0f31]{background-color:#333;color:#fff;padding:10px 20px;border-bottom:1px solid #444}.system-name[data-v-6f8e0f31]{font-size:18px;font-weight:700;color:#fff}.submit-page .submit-header[data-v-6f8e0f31]{margin-top:20px}.submit-header[data-v-6f8e0f31]{max-width:800px;margin:0 auto;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1);overflow:hidden}.congratulations[data-v-6f8e0f31]{background-color:#5a9fd4;color:#fff;text-align:center;padding:15px;font-size:18px;font-weight:700}.submit-content[data-v-6f8e0f31]{padding:30px;text-align:center;margin:0 20px}.submit-content h2[data-v-6f8e0f31]{color:#333;margin-bottom:20px;font-size:24px}.submit-content p[data-v-6f8e0f31]{color:#666;line-height:1.6;margin-bottom:15px}.submit-final-button[data-v-6f8e0f31]{background-color:#28a745;color:#fff;border:none;padding:12px 30px;font-size:16px;font-weight:700;border-radius:6px;cursor:pointer;margin:20px 0;transition:background-color .2s}.submit-final-button[data-v-6f8e0f31]:hover{background-color:#218838}.unanswered-notice[data-v-6f8e0f31]{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;padding:10px;margin:20px 0;color:#856404;display:flex;align-items:center;justify-content:center;gap:8px}.question-grid[data-v-6f8e0f31]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:18px;max-height:380px;overflow-y:auto;padding:14px;border:1px solid #e8e8e8;border-radius:6px;background-color:#fafafa;box-shadow:inset 0 1px 2px rgba(0,0,0,.05)}.question-number-btn[data-v-6f8e0f31]{background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:6px 10px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:space-between;min-height:32px;font-family:inherit;box-shadow:0 1px 3px rgba(0,0,0,.08)}.question-number-btn[data-v-6f8e0f31]:hover{background-color:#f8f9fa;border-color:#08c;transform:translateY(-.5px);box-shadow:0 2px 6px rgba(0,136,204,.15)}.question-number-btn.answered[data-v-6f8e0f31]{background-color:#e8f5e8;border-color:#4caf50;color:#2e7d32}.question-number-btn.answered[data-v-6f8e0f31]:hover{background-color:#dcedc8;border-color:#388e3c;transform:translateY(-.5px);box-shadow:0 2px 6px rgba(76,175,80,.2)}.question-number-btn.unanswered[data-v-6f8e0f31]{background-color:#fff8e1;border-color:#ffb74d;color:#f57c00}.question-number-btn.unanswered[data-v-6f8e0f31]:hover{background-color:#ffecb3;border-color:#ff9800;transform:translateY(-.5px);box-shadow:0 2px 6px rgba(255,183,77,.2)}.question-text[data-v-6f8e0f31]{font-size:13px;font-weight:500;color:inherit;flex:1;text-align:left;letter-spacing:.3px}.dot[data-v-6f8e0f31]{color:#ff5722;font-size:10px;font-weight:700;margin-left:4px;line-height:1;opacity:.8}.back-to-exam[data-v-6f8e0f31]{background-color:#6c757d;color:#fff;border:none;padding:10px 20px;margin:20px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.back-to-exam[data-v-6f8e0f31]:hover{background-color:#5a6268}.fill-blank-container[data-v-6f8e0f31]{margin-top:20px;padding:20px;background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px}.fill-blank-label[data-v-6f8e0f31]{font-weight:600;color:#333;margin-bottom:10px;font-size:14px}.fill-blank-input[data-v-6f8e0f31]{width:100%;min-height:80px;padding:12px;border:2px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;line-height:1.5;resize:vertical;transition:border-color .2s ease;background-color:#fff;box-sizing:border-box}.fill-blank-input[data-v-6f8e0f31]:focus{outline:none;border-color:#08c;box-shadow:0 0 0 3px rgba(0,136,204,.1)}.fill-blank-input[data-v-6f8e0f31]::-moz-placeholder{color:#999;font-style:italic}.fill-blank-input[data-v-6f8e0f31]::placeholder{color:#999;font-style:italic}.fill-blank-hint[data-v-6f8e0f31]{margin-top:8px;font-size:12px;color:#666;font-style:italic}.answer-option.readonly[data-v-6f8e0f31]{cursor:not-allowed;opacity:.7;background-color:#f8f9fa}.answer-option.readonly[data-v-6f8e0f31]:hover{background-color:#f8f9fa;transform:none}.fill-blank-input.readonly[data-v-6f8e0f31]{background-color:#f8f9fa;cursor:not-allowed;border-color:#e9ecef}.readonly-notice[data-v-6f8e0f31]{margin-top:15px;padding:12px;background-color:#e3f2fd;border:1px solid #bbdefb;border-radius:6px;color:#1565c0;font-size:14px}.back-to-report[data-v-6f8e0f31]{display:flex;align-items:center;gap:8px;background-color:#28a745;color:#fff;min-width:140px;padding:8px 16px;white-space:nowrap}.back-to-report[data-v-6f8e0f31]:hover{background-color:#218838}.nav-text[data-v-6f8e0f31]{font-size:13px;font-weight:500}.report-page[data-v-6f8e0f31]{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:#f5f5f5;z-index:2000;overflow-y:auto}.report-page-header[data-v-6f8e0f31]{background-color:#333;color:#fff;padding:8px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #444}.report-page-header .system-name[data-v-6f8e0f31]{font-size:18px;font-weight:700}.header-buttons[data-v-6f8e0f31]{display:flex;gap:10px}.home-button[data-v-6f8e0f31],.review-button[data-v-6f8e0f31],.sign-out-button[data-v-6f8e0f31]{background-color:transparent;color:#fff;border:1px solid #fff;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;min-width:80px;height:36px;display:flex;align-items:center;justify-content:center;transition:all .2s}.home-button[data-v-6f8e0f31]:hover,.review-button[data-v-6f8e0f31]:hover,.sign-out-button[data-v-6f8e0f31]:hover{background-color:#fff;color:#333}.report-content[data-v-6f8e0f31]{max-width:900px;margin:0 auto;padding:20px;background-color:#fff;margin-top:20px;margin-bottom:20px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.report-notice[data-v-6f8e0f31]{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:15px;margin-bottom:20px}.print-button[data-v-6f8e0f31]{background-color:#6c757d;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;min-width:120px;height:36px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;transition:background-color .2s}.print-button[data-v-6f8e0f31]:hover{background-color:#5a6268}.report-notice p[data-v-6f8e0f31]{margin:8px 0;line-height:1.5;color:#333}.student-info[data-v-6f8e0f31]{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #dee2e6}.student-info h2[data-v-6f8e0f31]{color:#333;margin-bottom:10px;font-size:24px}.student-info h3[data-v-6f8e0f31]{color:#666;margin-top:15px;font-size:18px;font-weight:400}.student-info p[data-v-6f8e0f31]{color:#333;line-height:1.5;margin:8px 0}.total-score-section[data-v-6f8e0f31]{margin-bottom:30px;padding:20px;background-color:#f8f9fa;border-radius:8px;border:2px solid #08c}.total-score-table[data-v-6f8e0f31]{width:100%;border-collapse:collapse;margin:0;font-size:16px}.total-score-table th[data-v-6f8e0f31]{background-color:#08c;color:#fff;padding:15px;text-align:center;font-weight:700;border:1px solid #07b;font-size:16px}.total-score-table td[data-v-6f8e0f31]{padding:15px;border:1px solid #dee2e6;background-color:#fff;text-align:center;font-size:16px;font-weight:500}.total-score-table tbody tr:hover td[data-v-6f8e0f31]{background-color:#e9ecef}.section-report[data-v-6f8e0f31]{margin-bottom:30px}.section-header[data-v-6f8e0f31]{background-color:#5a9fd4;color:#fff;padding:10px 15px;font-weight:700;font-size:16px}.score-table[data-v-6f8e0f31]{width:100%;border-collapse:collapse;margin-top:0}.score-table th[data-v-6f8e0f31]{background-color:#5a9fd4;color:#fff;padding:10px;text-align:left;font-weight:700;border:1px solid #4a8bc2}.score-table td[data-v-6f8e0f31]{padding:8px 10px;border:1px solid #dee2e6;background-color:#fff}.instructions-row td[data-v-6f8e0f31]{background-color:#f8f9fa;font-style:italic}.part-score-row td[data-v-6f8e0f31]{background-color:#e3f2fd;font-weight:500;color:#1565c0}.question-row:nth-child(2n) td[data-v-6f8e0f31]{background-color:#f8f9fa}.question-row.answered-row td[data-v-6f8e0f31]{background-color:#d1ecf1!important;color:#0c5460;font-weight:500}.question-row.unanswered-row td[data-v-6f8e0f31]{background-color:#fff3cd!important;color:#856404;font-style:italic}.question-row.correct-row td[data-v-6f8e0f31]{background-color:#d4edda!important;color:#155724;font-weight:500}.question-row.incorrect-row td[data-v-6f8e0f31]{background-color:#f8d7da!important;color:#721c24;font-weight:500}.structured-content[data-v-6f8e0f31]{width:100%;height:100%}.part-intro-container[data-v-6f8e0f31],.subtype-intro-container[data-v-6f8e0f31]{padding:40px;max-width:800px;margin:0 auto;text-align:center}.intro-content h2[data-v-6f8e0f31]{color:#08c;font-size:28px;margin-bottom:30px;font-weight:700}.part-intro-text[data-v-6f8e0f31],.subtype-intro-text[data-v-6f8e0f31]{font-size:16px;line-height:1.6;margin-bottom:25px;color:#333}.question-count-info[data-v-6f8e0f31],.question-range-info[data-v-6f8e0f31]{background-color:#f8f9fa;padding:15px;border-radius:8px;margin-bottom:25px;border-left:4px solid #08c}.navigation-hint[data-v-6f8e0f31]{color:#666;font-style:italic;margin-top:30px}.question-container[data-v-6f8e0f31]{display:flex;flex-direction:column;height:100%}.question-content[data-v-6f8e0f31]{display:flex;flex:1;gap:20px;padding:20px;overflow:hidden}.material-section[data-v-6f8e0f31]{flex:none;display:flex;flex-direction:column;border:1px solid #dee2e6;border-radius:8px;background-color:#f8f9fa}.material-header[data-v-6f8e0f31]{background-color:#08c;color:#fff;padding:12px 16px;border-radius:8px 8px 0 0}.material-header h3[data-v-6f8e0f31]{margin:0;font-size:16px;font-weight:700}.material-content[data-v-6f8e0f31]{flex:1;padding:16px;overflow-y:auto;background-color:#fff;border-radius:0 0 8px 8px}.material-content.scrollable[data-v-6f8e0f31]{max-height:500px}.material-text[data-v-6f8e0f31]{line-height:1.6;color:#333;font-size:14px;white-space:pre-wrap}.question-section[data-v-6f8e0f31]{flex:none;display:flex;flex-direction:column}.question-section.with-material[data-v-6f8e0f31]{min-width:400px}.question-text[data-v-6f8e0f31]{margin-bottom:20px;padding:16px;background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);white-space:pre-wrap}.question-text p[data-v-6f8e0f31]{margin:0;line-height:1.6;color:#333;font-size:16px}.answer-options[data-v-6f8e0f31]{display:flex;flex-direction:column;gap:12px}.answer-option[data-v-6f8e0f31]{display:flex;align-items:flex-start;padding:12px 16px;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;transition:all .2s ease;background-color:#fff}.answer-option[data-v-6f8e0f31]:hover{border-color:#08c;background-color:#f0f8ff}.answer-option.selected[data-v-6f8e0f31]{border-color:#08c;background-color:#e6f3ff}.option-marker[data-v-6f8e0f31]{font-weight:700;color:#08c;margin-right:12px;min-width:20px;font-size:16px}.option-text[data-v-6f8e0f31]{flex:1;line-height:1.5;color:#333;font-size:15px}.error-container[data-v-6f8e0f31],.loading-container[data-v-6f8e0f31]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:40px 20px;width:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-height:50vh}.error-buttons[data-v-6f8e0f31]{display:flex;gap:12px;margin-top:16px;justify-content:center}.error-container button[data-v-6f8e0f31]{padding:8px 16px;background-color:#08c;color:#fff;border:none;border-radius:4px;cursor:pointer}.error-container button[data-v-6f8e0f31]:hover{background-color:#07b}.error-container .exit-button[data-v-6f8e0f31]{background-color:#6c757d}.error-container .exit-button[data-v-6f8e0f31]:hover{background-color:#5a6268}.clickable-image[data-v-6f8e0f31]{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.clickable-image[data-v-6f8e0f31]:hover{transform:scale(1.02);box-shadow:0 4px 12px rgba(0,0,0,.15)}.image-modal[data-v-6f8e0f31]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.8);display:flex;justify-content:center;align-items:center;z-index:9999;cursor:pointer;overflow:auto}.image-modal-content[data-v-6f8e0f31]{position:relative;cursor:default;overflow:auto;max-width:95vw;max-height:95vh;display:flex;justify-content:flex-start;align-items:flex-start}.modal-image[data-v-6f8e0f31]{width:auto;height:auto;min-width:300px;border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.3);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:block}.modal-image[data-v-6f8e0f31]:active{cursor:grabbing}.close-modal-btn[data-v-6f8e0f31]{position:absolute;top:-15px;right:-15px;width:40px;height:40px;background-color:#fff;border:none;border-radius:50%;font-size:24px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.2);transition:background-color .2s ease}.close-modal-btn[data-v-6f8e0f31]:hover{background-color:#f0f0f0}@media (max-width:768px){.question-content[data-v-6f8e0f31]{flex-direction:column;gap:16px}.material-section[data-v-6f8e0f31]{max-height:300px}.question-section.with-material[data-v-6f8e0f31]{min-width:auto}.part-intro-container[data-v-6f8e0f31],.subtype-intro-container[data-v-6f8e0f31]{padding:20px}.image-modal-content[data-v-6f8e0f31]{max-width:95%;max-height:95%}.close-modal-btn[data-v-6f8e0f31]{top:-10px;right:-10px;width:35px;height:35px;font-size:20px}}.submit-confirm-modal[data-v-6f8e0f31]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:10000}.submit-confirm-content[data-v-6f8e0f31]{background:#fff;border-radius:8px;padding:0;max-width:500px;width:90%;box-shadow:0 4px 20px rgba(0,0,0,.3);animation:modalFadeIn-6f8e0f31 .3s ease-out}.confirm-header[data-v-6f8e0f31]{background:#2c5aa0;color:#fff;padding:20px 24px;border-radius:8px 8px 0 0;margin:0}.confirm-header h3[data-v-6f8e0f31]{margin:0;font-size:18px;font-weight:600}.confirm-body[data-v-6f8e0f31]{padding:24px}.confirm-body p[data-v-6f8e0f31]{margin:0 0 16px 0;font-size:16px;line-height:1.5}.warning-text[data-v-6f8e0f31]{color:#d73502;font-weight:500}.unanswered-summary[data-v-6f8e0f31]{background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;padding:12px;margin-top:16px;display:flex;align-items:center;gap:8px}.warning-icon[data-v-6f8e0f31]{font-size:16px}.confirm-actions[data-v-6f8e0f31]{padding:0 24px 24px 24px;display:flex;gap:12px;justify-content:flex-end}.cancel-button[data-v-6f8e0f31],.confirm-button[data-v-6f8e0f31]{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-button[data-v-6f8e0f31]{background:#f8f9fa;color:#6c757d;border:1px solid #dee2e6}.cancel-button[data-v-6f8e0f31]:hover{background:#e9ecef;color:#495057}.confirm-button[data-v-6f8e0f31]{background:#d73502;color:#fff}.confirm-button[data-v-6f8e0f31]:hover:not(:disabled){background:#c12e02}.cancel-button[data-v-6f8e0f31]:disabled,.confirm-button[data-v-6f8e0f31]:disabled,.submit-final-button[data-v-6f8e0f31]:disabled{opacity:.6;cursor:not-allowed}.loading-spinner[data-v-6f8e0f31]{display:inline-block;margin-right:8px;animation:spin-6f8e0f31 1s linear infinite}.confirm-dialog-overlay[data-v-6f8e0f31]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:3000}.confirm-dialog[data-v-6f8e0f31]{background:#fff;border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,.3);width:100%;max-width:400px;min-width:320px;animation:dialogSlideIn-6f8e0f31 .3s ease-out}@keyframes dialogSlideIn-6f8e0f31{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-dialog-header[data-v-6f8e0f31]{padding:20px 24px 0;text-align:center}.confirm-dialog-header h3[data-v-6f8e0f31]{margin:0;font-size:20px;color:#e74c3c;font-weight:600}.confirm-dialog-body[data-v-6f8e0f31]{padding:16px 24px;text-align:center}.confirm-dialog-body p[data-v-6f8e0f31]{margin:8px 0;color:#333;line-height:1.5}.confirm-dialog-body .warning-text[data-v-6f8e0f31]{color:#e74c3c!important;font-weight:500;font-size:14px}.confirm-dialog-footer[data-v-6f8e0f31]{padding:0 24px 24px;display:flex;gap:12px;justify-content:center}.confirm-dialog-footer .cancel-btn[data-v-6f8e0f31],.confirm-dialog-footer .confirm-btn[data-v-6f8e0f31]{padding:10px 24px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:80px}.confirm-dialog-footer .cancel-btn[data-v-6f8e0f31]{background-color:#f8f9fa;color:#6c757d;border:1px solid #dee2e6}.confirm-dialog-footer .cancel-btn[data-v-6f8e0f31]:hover{background-color:#e9ecef;color:#495057}.confirm-dialog-footer .confirm-btn[data-v-6f8e0f31]{background-color:#e74c3c;color:#fff}.confirm-dialog-footer .confirm-btn[data-v-6f8e0f31]:hover{background-color:#c0392b}@keyframes spin-6f8e0f31{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes modalFadeIn-6f8e0f31{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.resize-divider[data-v-6f8e0f31]{width:12px;background-color:#e9ecef;cursor:col-resize;position:relative;transition:background-color .2s ease;flex-shrink:0;min-height:100%;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-divider[data-v-6f8e0f31]:active,.resize-divider[data-v-6f8e0f31]:hover,body.dragging .resize-divider[data-v-6f8e0f31]{background-color:#08c}.resize-divider[data-v-6f8e0f31]:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:30px;background-color:#6c757d;border-radius:1px;pointer-events:none}.resize-divider[data-v-6f8e0f31]:active:before,.resize-divider[data-v-6f8e0f31]:hover:before,body.dragging .resize-divider[data-v-6f8e0f31]:before{background-color:#fff}body.dragging[data-v-6f8e0f31]{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:col-resize!important}body.dragging[data-v-6f8e0f31] *{cursor:col-resize!important}.exam-management[data-v-b686b55e]{padding:20px;max-width:1400px;margin:0 auto}.exam-management h1[data-v-b686b55e]{color:#2c3e50;font-size:28px;font-weight:700;margin-bottom:24px;text-align:center}.import-section[data-v-b686b55e]{background:#f8f9fa;padding:24px;border-radius:12px;margin-bottom:32px;border:1px solid #dee2e6}.import-section h2[data-v-b686b55e]{color:#495057;font-size:20px;margin-bottom:16px}.import-area[data-v-b686b55e]{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.import-button[data-v-b686b55e],.upload-button[data-v-b686b55e]{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.import-button[data-v-b686b55e]{background:#6c757d;color:#fff}.import-button[data-v-b686b55e]:hover{background:#5a6268}.upload-button[data-v-b686b55e]{background:#28a745;color:#fff}.upload-button[data-v-b686b55e]:hover:not(:disabled){background:#218838}.upload-button[data-v-b686b55e]:disabled{background:#6c757d;cursor:not-allowed}.exam-list-management[data-v-b686b55e]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.exam-management-header[data-v-b686b55e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e9ecef}.exam-management-header h2[data-v-b686b55e]{color:#2c3e50;font-size:24px;margin:0}.create-exam-button[data-v-b686b55e]{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,123,255,.3)}.create-exam-button[data-v-b686b55e]:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,123,255,.4)}.plus-icon[data-v-b686b55e]{font-size:18px;font-weight:700}.filter-section[data-v-b686b55e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px;background:#f8f9fa;border-radius:8px}.filter-controls[data-v-b686b55e]{display:flex;align-items:center;gap:12px}.filter-controls label[data-v-b686b55e]{font-weight:600;color:#495057}.group-filter[data-v-b686b55e]{padding:8px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px}.group-management[data-v-b686b55e]{display:flex;gap:8px}.group-action-btn[data-v-b686b55e]{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;background:#17a2b8;color:#fff}.group-action-btn[data-v-b686b55e]:hover{background:#138496}.exam-groups[data-v-b686b55e]{margin-top:24px}.exam-group-section[data-v-b686b55e]{margin-bottom:24px;border:1px solid #dee2e6;border-radius:12px;overflow:hidden;transition:all .3s ease}.exam-group-section.draggable[data-v-b686b55e]{cursor:move}.exam-group-section.draggable[data-v-b686b55e]:hover{border-color:#007bff;box-shadow:0 4px 12px rgba(0,123,255,.15)}.exam-group-section.dragging[data-v-b686b55e]{opacity:.5;transform:rotate(2deg);box-shadow:0 8px 24px rgba(0,0,0,.2)}.exam-group-section.drag-over[data-v-b686b55e]{border-color:#28a745;background:linear-gradient(135deg,#d4edda,#c3e6cb);transform:scale(1.02)}.group-header[data-v-b686b55e]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);cursor:pointer;transition:all .3s ease}.group-header[data-v-b686b55e]:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6)}.group-title[data-v-b686b55e]{display:flex;align-items:center;gap:12px}.group-icon[data-v-b686b55e]{font-size:14px;transition:transform .3s ease}.group-icon.collapsed[data-v-b686b55e]{transform:rotate(-90deg)}.group-title h3[data-v-b686b55e]{margin:0;color:#2c3e50;font-size:18px}.group-actions[data-v-b686b55e]{display:flex;gap:8px}.group-action-btn.rename-btn[data-v-b686b55e]{background:#ffc107;color:#212529}.group-action-btn.delete-btn[data-v-b686b55e]{background:#dc3545;color:#fff}.group-content[data-v-b686b55e]{padding:20px}.exam-list[data-v-b686b55e]{display:flex;flex-direction:column;gap:16px}.exam-item[data-v-b686b55e]{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:20px;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.05)}.exam-item[data-v-b686b55e]:hover:not(.dragging){transform:translateY(-2px);box-shadow:0 8px 16px rgba(0,0,0,.1);border-color:#007bff}.exam-item.draggable[data-v-b686b55e],.exam-item.draggable[data-v-b686b55e]:not(.single-exam){cursor:move}.exam-item.draggable.single-exam[data-v-b686b55e]{cursor:default}.exam-item.dragging[data-v-b686b55e]{opacity:.6;transform:rotate(2deg) scale(.98);z-index:1000;transition:none!important;box-shadow:0 8px 24px rgba(0,0,0,.2)}.exam-item.drag-over[data-v-b686b55e]{border:2px dashed #007bff;background-color:#f8f9fa;transform:none!important;transition:all .2s ease}.exam-main-info h4[data-v-b686b55e]{margin:0 0 8px 0;color:#333;font-size:18px}.exam-description[data-v-b686b55e]{margin:0;color:#666;font-size:14px;line-height:1.4}.exam-title-section[data-v-b686b55e]{display:flex;align-items:center;gap:12px;margin-bottom:8px}.exam-title-container[data-v-b686b55e]{display:flex;align-items:center;gap:8px;flex:1}.exam-title-input[data-v-b686b55e]{flex:1;padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:16px;font-weight:600}.edit-title-btn[data-v-b686b55e]{opacity:.6;transition:opacity .2s}.edit-title-btn[data-v-b686b55e]:hover{opacity:1;background-color:#f5f5f5}.exam-group[data-v-b686b55e]{font-size:12px;padding:4px 8px;border-radius:12px;font-weight:700}.exam-group.group-a[data-v-b686b55e]{background-color:#e3f2fd;color:#1565c0}.exam-group.group-b[data-v-b686b55e]{background-color:#f3e5f5;color:#7b1fa2}.exam-group.group-none[data-v-b686b55e]{background-color:#f5f5f5;color:#757575}.exam-status[data-v-b686b55e]{font-size:12px;padding:4px 8px;border-radius:12px;font-weight:700}.exam-status.online[data-v-b686b55e]{background-color:#d4edda;color:#155724}.exam-status.offline[data-v-b686b55e]{background-color:#f8d7da;color:#721c24}.exam-bottom-row[data-v-b686b55e]{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:1px solid #e9ecef}.exam-stats[data-v-b686b55e]{display:flex;gap:24px;align-items:center}.stat-item[data-v-b686b55e]{display:flex;flex-direction:column;align-items:center;min-width:60px}.stat-label[data-v-b686b55e]{font-size:12px;color:#888;margin-bottom:4px}.stat-value[data-v-b686b55e]{font-size:16px;font-weight:700;color:#333}.exam-actions[data-v-b686b55e]{display:flex;gap:8px}.action-button[data-v-b686b55e]{padding:8px 12px}.action-button.toggle-btn.online[data-v-b686b55e]{background:#dc3545;color:#fff}.action-button.toggle-btn.offline[data-v-b686b55e]{background:#28a745;color:#fff}.action-button.edit-btn[data-v-b686b55e]{background:#ffc107;color:#212529}.action-button.view-btn[data-v-b686b55e]{background:#17a2b8;color:#fff}.action-button.results-btn[data-v-b686b55e]{background:#6f42c1;color:#fff}.action-button.delete-btn[data-v-b686b55e]{background:#dc3545;color:#fff}.action-button.group-btn[data-v-b686b55e]{background:#6c757d;color:#fff}.action-button[data-v-b686b55e]:hover{transform:translateY(-1px);opacity:.9}.error-message[data-v-b686b55e],.loading-message[data-v-b686b55e]{text-align:center;padding:40px 20px}.loading-message p[data-v-b686b55e]{color:#6c757d;font-size:16px}.error-message p[data-v-b686b55e]{color:#dc3545;font-size:16px;margin-bottom:16px}.retry-button[data-v-b686b55e]{padding:8px 16px;border-radius:6px}.no-exams[data-v-b686b55e]{text-align:center;padding:40px 20px}.empty-state[data-v-b686b55e]{max-width:300px;margin:0 auto}.empty-icon[data-v-b686b55e]{font-size:48px;margin-bottom:16px}.empty-state h3[data-v-b686b55e]{color:#495057;margin:0 0 8px 0}.empty-state p[data-v-b686b55e]{color:#6c757d;margin:0}.modal-overlay[data-v-b686b55e]{top:0!important;left:0!important;right:0!important;bottom:0!important;z-index:999999!important;transform:none!important;margin:0!important}.modal-content[data-v-b686b55e]{max-height:80vh;transform:scale(1);transition:all .3s ease}.modal-header[data-v-b686b55e]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #dee2e6}.modal-header h3[data-v-b686b55e]{margin:0;color:#2c3e50;font-size:20px}.close-button[data-v-b686b55e]{background:none;border:none;font-size:24px;color:#6c757d;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.close-button[data-v-b686b55e]:hover{color:#495057}.create-exam-form[data-v-b686b55e],.create-group-form[data-v-b686b55e]{padding:24px}.form-group[data-v-b686b55e]{margin-bottom:20px}.form-group label[data-v-b686b55e]{display:block;margin-bottom:8px;font-weight:600;color:#495057}.form-input[data-v-b686b55e],.form-select[data-v-b686b55e],.form-textarea[data-v-b686b55e]{width:100%;max-width:100%;box-sizing:border-box;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;transition:all .3s ease}.form-input[data-v-b686b55e]:focus,.form-select[data-v-b686b55e]:focus,.form-textarea[data-v-b686b55e]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.form-row[data-v-b686b55e]{display:flex;gap:16px}.form-group.half[data-v-b686b55e]{flex:1}.modal-actions[data-v-b686b55e]{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #dee2e6}.cancel-button[data-v-b686b55e],.confirm-button[data-v-b686b55e]{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.confirm-button[data-v-b686b55e]{background:#007bff;color:#fff}.confirm-button[data-v-b686b55e]:hover:not(:disabled){background:#0056b3}.confirm-button[data-v-b686b55e]:disabled{background:#6c757d;cursor:not-allowed}.cancel-button[data-v-b686b55e]{background:#6c757d;color:#fff}.cancel-button[data-v-b686b55e]:hover{background:#5a6268}.rename-group-modal[data-v-b686b55e]{max-width:500px}.error-message[data-v-b686b55e]{color:#dc3545;font-size:12px;margin-top:5px;display:block}.loading-text[data-v-b686b55e]{display:flex;align-items:center;gap:8px}.loading-spinner[data-v-b686b55e]{display:inline-block;animation:spin-b686b55e 1s linear infinite}@keyframes spin-b686b55e{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.cancel-button[data-v-b686b55e]:disabled,.confirm-button[data-v-b686b55e]:disabled{opacity:.6;cursor:not-allowed}.cancel-button[data-v-b686b55e]:disabled:hover,.confirm-button[data-v-b686b55e]:disabled:hover{background:#007bff;transform:none}.solutions-management[data-v-b686b55e]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,.1);margin-top:32px}.solutions-management-header[data-v-b686b55e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e9ecef}.solutions-management-header h2[data-v-b686b55e]{color:#2c3e50;font-size:24px;margin:0}.upload-solution-button[data-v-b686b55e]{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#28a745,#1e7e34);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(40,167,69,.3)}.upload-solution-button[data-v-b686b55e]:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(40,167,69,.4)}.solution-list[data-v-b686b55e]{margin-top:20px}.solution-items[data-v-b686b55e]{display:flex;flex-direction:column;gap:16px}.solution-item[data-v-b686b55e]{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6;transition:all .3s ease}.solution-item[data-v-b686b55e]:hover{background:#e9ecef;border-color:#adb5bd}.solution-main-info[data-v-b686b55e]{flex:1}.solution-title-section[data-v-b686b55e]{display:flex;align-items:center;gap:12px;margin-bottom:8px}.solution-status[data-v-b686b55e]{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase}.solution-status.active[data-v-b686b55e]{background:#d4edda;color:#155724}.solution-status.inactive[data-v-b686b55e]{background:#f8d7da;color:#721c24}.solution-title-container[data-v-b686b55e]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.solution-title-container h4[data-v-b686b55e]{margin:0;color:#2c3e50;font-size:18px;font-weight:600}.solution-title-input[data-v-b686b55e]{padding:4px 8px;border:1px solid #ced4da;border-radius:4px;font-size:16px;font-weight:600}.edit-title-btn[data-v-b686b55e]{background:none;border:none;cursor:pointer;font-size:14px;padding:4px;border-radius:4px;transition:background .3s ease}.edit-title-btn[data-v-b686b55e]:hover{background:#e9ecef}.solution-description[data-v-b686b55e]{color:#6c757d;margin:4px 0;font-size:14px}.solution-exam[data-v-b686b55e]{color:#495057;margin:4px 0;font-size:14px;font-weight:500}.solution-actions[data-v-b686b55e]{display:flex;gap:8px;align-items:center}.action-button[data-v-b686b55e]{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.status-btn.online[data-v-b686b55e]{background:#28a745;color:#fff}.status-btn.online[data-v-b686b55e]:hover{background:#218838}.status-btn.offline[data-v-b686b55e]{background:#6c757d;color:#fff}.status-btn.offline[data-v-b686b55e]:hover{background:#5a6268}.toggle-btn.active[data-v-b686b55e]{background:#dc3545;color:#fff}.toggle-btn.active[data-v-b686b55e]:hover{background:#c82333}.toggle-btn.inactive[data-v-b686b55e]{background:#28a745;color:#fff}.toggle-btn.inactive[data-v-b686b55e]:hover{background:#218838}.preview-btn[data-v-b686b55e]{background:#17a2b8;color:#fff}.preview-btn[data-v-b686b55e]:hover{background:#138496}.download-btn[data-v-b686b55e]{background:#6f42c1;color:#fff}.download-btn[data-v-b686b55e]:hover{background:#5a32a3}.edit-btn[data-v-b686b55e]{background:#ffc107;color:#212529}.edit-btn[data-v-b686b55e]:hover{background:#e0a800}.delete-btn[data-v-b686b55e]{background:#dc3545;color:#fff}.delete-btn[data-v-b686b55e]:hover{background:#c82333}.no-solutions[data-v-b686b55e]{text-align:center;padding:60px 20px}.no-solutions .empty-state[data-v-b686b55e]{max-width:400px;margin:0 auto}.no-solutions .empty-icon[data-v-b686b55e]{font-size:48px;margin-bottom:16px}.no-solutions h3[data-v-b686b55e]{color:#6c757d;margin-bottom:8px}.no-solutions p[data-v-b686b55e]{color:#adb5bd;margin:0}.loading-message[data-v-b686b55e]{text-align:center;padding:40px;color:#6c757d}.retry-button[data-v-b686b55e]{margin-left:12px;padding:6px 12px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.retry-button[data-v-b686b55e]:hover{background:#0056b3}.edit-solution-form[data-v-b686b55e],.upload-solution-form[data-v-b686b55e]{padding:24px}.edit-solution-modal[data-v-b686b55e],.upload-solution-modal[data-v-b686b55e]{max-width:600px;width:90vw}.file-input[data-v-b686b55e]{display:none}.file-select-button[data-v-b686b55e]{width:100%;padding:12px 16px;border:2px dashed #dee2e6;border-radius:8px;background:#f8f9fa;color:#6c757d;cursor:pointer;transition:all .3s ease;text-align:center;font-size:14px}.file-select-button[data-v-b686b55e]:hover{border-color:#007bff;background:#e3f2fd;color:#007bff}.edit-solution-form .form-input[data-v-b686b55e],.edit-solution-form .form-select[data-v-b686b55e],.edit-solution-form .form-textarea[data-v-b686b55e],.upload-solution-form .file-select-button[data-v-b686b55e],.upload-solution-form .form-input[data-v-b686b55e],.upload-solution-form .form-select[data-v-b686b55e],.upload-solution-form .form-textarea[data-v-b686b55e]{width:100%;box-sizing:border-box}.modal-overlay[data-v-b686b55e]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:99999;padding:20px;box-sizing:border-box}.modal-content[data-v-b686b55e]{background:#fff;border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,.3);width:100%;max-width:600px;min-width:320px;max-height:90vh;overflow-y:auto;position:relative;margin:auto}.input-error[data-v-b686b55e]{display:block;margin-top:6px;color:#9aa0a6;font-size:11px;line-height:1.3;min-height:16px}.form-input.invalid[data-v-b686b55e]{border-color:#b00020;box-shadow:inset 0 0 0 1px #b00020}.class-management[data-v-b26d3b8e]{padding:20px}.class-management h1[data-v-b26d3b8e]{color:#2c3e50;font-size:28px;font-weight:700;margin-bottom:24px;text-align:center}.class-management-header[data-v-b26d3b8e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:24px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;border:1px solid #dee2e6}.header-info .header-description[data-v-b26d3b8e]{color:#6c757d;font-size:16px;margin:0}.create-class-button[data-v-b26d3b8e]{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,123,255,.3)}.create-class-button[data-v-b26d3b8e]:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,123,255,.4)}.plus-icon[data-v-b26d3b8e]{font-size:18px;font-weight:700}.class-grid[data-v-b26d3b8e]{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px;margin-top:24px}.class-card[data-v-b26d3b8e]{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:24px;transition:all .3s ease;box-shadow:0 2px 8px rgba(0,0,0,.08);cursor:move}.class-card[data-v-b26d3b8e]:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.15);border-color:#007bff}.class-card.dragging[data-v-b26d3b8e]{transform:rotate(5deg) scale(1.05);box-shadow:0 12px 32px rgba(0,123,255,.3);border-color:#007bff}.class-card[draggable=true][data-v-b26d3b8e]:not(.guest-class){cursor:grab}.class-card[draggable=true][data-v-b26d3b8e]:not(.guest-class):active{cursor:grabbing}.class-card.guest-class[data-v-b26d3b8e]{cursor:default}.class-card.guest-class[draggable=true][data-v-b26d3b8e]{cursor:not-allowed}.class-header[data-v-b26d3b8e]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.class-title-section[data-v-b26d3b8e]{flex:1}.class-name[data-v-b26d3b8e]{font-size:20px;font-weight:700;color:#2c3e50;margin:0 0 8px 0}.class-status[data-v-b26d3b8e]{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.class-status.active[data-v-b26d3b8e]{background:#d4edda;color:#155724}.class-status.inactive[data-v-b26d3b8e]{background:#f8d7da;color:#721c24}.class-actions[data-v-b26d3b8e]{display:flex;gap:8px}.class-action-btn[data-v-b26d3b8e]{min-width:36px;height:36px;padding:0 8px;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;white-space:nowrap}.class-action-btn.edit-btn[data-v-b26d3b8e]{background:#e3f2fd;color:#1976d2}.class-action-btn.edit-btn[data-v-b26d3b8e]:hover{background:#bbdefb;transform:scale(1.1)}.class-action-btn.delete-btn[data-v-b26d3b8e]{background:#ffebee;color:#d32f2f}.class-action-btn.delete-btn[data-v-b26d3b8e]:hover{background:#ffcdd2;transform:scale(1.1)}.class-info[data-v-b26d3b8e]{margin-bottom:20px}.class-description[data-v-b26d3b8e]{color:#6c757d;font-size:14px;margin:0 0 12px 0;line-height:1.5}.class-meta[data-v-b26d3b8e]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.meta-item[data-v-b26d3b8e]{display:flex;align-items:center;font-size:14px}.meta-label[data-v-b26d3b8e]{font-weight:600;color:#495057;margin-right:8px}.meta-value[data-v-b26d3b8e]{color:#6c757d}.class-stats[data-v-b26d3b8e]{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid #e9ecef;margin-bottom:16px}.stat-item[data-v-b26d3b8e]{text-align:center}.stat-number[data-v-b26d3b8e]{display:block;font-size:24px;font-weight:700;color:#007bff}.stat-label[data-v-b26d3b8e]{font-size:12px;color:#6c757d;text-transform:uppercase;font-weight:600}.class-actions-bottom[data-v-b26d3b8e]{display:flex;gap:12px}.manage-students-btn[data-v-b26d3b8e]{flex:1;padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.manage-students-btn[data-v-b26d3b8e]:hover{background:#218838;transform:translateY(-1px)}.no-classes[data-v-b26d3b8e],.no-exams[data-v-b26d3b8e],.no-results[data-v-b26d3b8e],.no-students[data-v-b26d3b8e]{text-align:center;padding:60px 20px}.empty-state[data-v-b26d3b8e]{max-width:300px;margin:0 auto}.empty-icon[data-v-b26d3b8e]{font-size:48px;margin-bottom:16px}.empty-state h3[data-v-b26d3b8e],.empty-state h4[data-v-b26d3b8e]{color:#495057;margin:0 0 8px 0}.empty-state p[data-v-b26d3b8e]{color:#6c757d;margin:0}.error-message[data-v-b26d3b8e],.loading-message[data-v-b26d3b8e]{text-align:center;padding:40px 20px}.loading-message p[data-v-b26d3b8e]{color:#6c757d;font-size:16px}.error-message p[data-v-b26d3b8e]{color:#dc3545;font-size:16px;margin-bottom:16px}.retry-button[data-v-b26d3b8e]{padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:6px;cursor:pointer}.modal-overlay[data-v-b26d3b8e]{position:fixed;top:0!important;left:0!important;right:0!important;bottom:0!important;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:999999!important;padding:20px;box-sizing:border-box;transform:none!important;margin:0!important}.modal-content[data-v-b26d3b8e]{background:#fff;border-radius:12px;box-shadow:0 20px 40px rgba(0,0,0,.3);width:100%;max-width:600px;min-width:320px;max-height:80vh;overflow-y:auto;position:relative;transform:scale(1);transition:all .3s ease}.modal-header[data-v-b26d3b8e]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #dee2e6}.modal-header h3[data-v-b26d3b8e]{margin:0;color:#2c3e50;font-size:20px}.close-button[data-v-b26d3b8e]{background:none;border:none;font-size:24px;color:#6c757d;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.close-button[data-v-b26d3b8e]:hover{color:#495057}.add-student-form[data-v-b26d3b8e],.create-class-form[data-v-b26d3b8e],.edit-class-form[data-v-b26d3b8e],.edit-student-form[data-v-b26d3b8e]{padding:24px}.form-group[data-v-b26d3b8e]{margin-bottom:20px}.form-group label[data-v-b26d3b8e]{display:block;margin-bottom:8px;font-weight:600;color:#495057}.form-input[data-v-b26d3b8e],.form-select[data-v-b26d3b8e],.form-textarea[data-v-b26d3b8e]{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;transition:all .3s ease;box-sizing:border-box}.form-input[data-v-b26d3b8e]:focus,.form-select[data-v-b26d3b8e]:focus,.form-textarea[data-v-b26d3b8e]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.form-row[data-v-b26d3b8e]{display:flex;gap:16px}.form-group.half[data-v-b26d3b8e]{flex:1}.form-group.full[data-v-b26d3b8e]{flex:1;width:100%}.modal-actions[data-v-b26d3b8e]{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #dee2e6}.cancel-button[data-v-b26d3b8e],.confirm-button[data-v-b26d3b8e]{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.confirm-button[data-v-b26d3b8e]{background:#007bff;color:#fff}.confirm-button[data-v-b26d3b8e]:hover:not(:disabled){background:#0056b3}.confirm-button[data-v-b26d3b8e]:disabled{background:#6c757d;cursor:not-allowed}.cancel-button[data-v-b26d3b8e]{background:#6c757d;color:#fff}.cancel-button[data-v-b26d3b8e]:hover{background:#5a6268}.student-management-modal[data-v-b26d3b8e]{max-width:900px;max-height:80vh}.student-management-content[data-v-b26d3b8e]{padding:24px}.student-management-header[data-v-b26d3b8e]{display:flex;justify-content:flex-end;margin-bottom:24px}.add-student-button[data-v-b26d3b8e]{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#28a745;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.add-student-button[data-v-b26d3b8e]:hover{background:#218838;transform:translateY(-1px)}.student-table[data-v-b26d3b8e]{overflow-x:auto}.student-table table[data-v-b26d3b8e]{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}.student-table th[data-v-b26d3b8e]{background:#f8f9fa;padding:16px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.student-table td[data-v-b26d3b8e]{padding:16px;border-bottom:1px solid #dee2e6}.student-actions[data-v-b26d3b8e]{display:flex;gap:8px}.student-action-btn[data-v-b26d3b8e]{width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:14px}.student-action-btn.edit-btn[data-v-b26d3b8e]{background:#ffc107;color:#212529}.student-action-btn.edit-btn[data-v-b26d3b8e]:hover{background:#e0a800;transform:scale(1.1)}.student-action-btn.delete-btn[data-v-b26d3b8e]{background:#dc3545;color:#fff}.student-action-btn.delete-btn[data-v-b26d3b8e]:hover{background:#c82333;transform:scale(1.1)}.score-management-modal[data-v-b26d3b8e]{max-width:1000px;max-height:85vh}.score-management-content[data-v-b26d3b8e]{padding:24px}.class-summary[data-v-b26d3b8e]{margin-bottom:24px}.summary-card[data-v-b26d3b8e]{display:flex;justify-content:space-around;background:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #dee2e6}.summary-item[data-v-b26d3b8e]{text-align:center}.summary-label[data-v-b26d3b8e]{display:block;font-size:14px;color:#6c757d;margin-bottom:4px;font-weight:600}.summary-value[data-v-b26d3b8e]{display:block;font-size:24px;font-weight:700;color:#007bff}.exam-table[data-v-b26d3b8e]{overflow-x:auto}.exam-table table[data-v-b26d3b8e]{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}.exam-table th[data-v-b26d3b8e]{background:#f8f9fa;padding:16px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.exam-table td[data-v-b26d3b8e]{padding:16px;border-bottom:1px solid #dee2e6}.score-cell[data-v-b26d3b8e]{font-weight:600}.score-cell.high-score[data-v-b26d3b8e]{color:#28a745}.score-cell.low-score[data-v-b26d3b8e]{color:#dc3545}.exam-action-btn[data-v-b26d3b8e]{width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:14px}.exam-action-btn.detail-btn[data-v-b26d3b8e]{background:#17a2b8;color:#fff}.exam-action-btn.detail-btn[data-v-b26d3b8e]:hover{background:#138496;transform:scale(1.1)}.exam-detail-modal[data-v-b26d3b8e]{max-width:800px;max-height:80vh}.exam-detail-content[data-v-b26d3b8e]{padding:24px}.exam-summary[data-v-b26d3b8e]{margin-bottom:24px;background:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #dee2e6}.summary-row[data-v-b26d3b8e]{display:flex;justify-content:space-between;align-items:center}.summary-row .summary-item[data-v-b26d3b8e]{display:flex;align-items:center;gap:8px}.summary-row .summary-label[data-v-b26d3b8e]{font-weight:600;color:#495057}.summary-row .summary-value[data-v-b26d3b8e]{color:#007bff;font-weight:600}.results-table[data-v-b26d3b8e]{overflow-x:auto}.results-table table[data-v-b26d3b8e]{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}.results-table th[data-v-b26d3b8e]{background:#f8f9fa;padding:16px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.results-table td[data-v-b26d3b8e]{padding:16px;border-bottom:1px solid #dee2e6}.results-table tr.top-score[data-v-b26d3b8e]{background:#fff3cd}.rank-cell[data-v-b26d3b8e]{text-align:center}.rank-badge[data-v-b26d3b8e]{display:inline-block;width:32px;height:32px;border-radius:50%;background:#6c757d;color:#fff;font-weight:700;line-height:32px;text-align:center}.rank-badge.gold[data-v-b26d3b8e]{background:gold;color:#333}.rank-badge.silver[data-v-b26d3b8e]{background:silver;color:#333}.rank-badge.bronze[data-v-b26d3b8e]{background:#cd7f32;color:#fff}.score-value[data-v-b26d3b8e]{font-weight:700;font-size:16px}.score-value.high-score[data-v-b26d3b8e]{color:#28a745}.score-value.medium-score[data-v-b26d3b8e]{color:#ffc107}.score-value.low-score[data-v-b26d3b8e]{color:#dc3545}@media (max-width:768px){.class-grid[data-v-b26d3b8e]{grid-template-columns:1fr}.class-management-header[data-v-b26d3b8e]{flex-direction:column;gap:16px;text-align:center}.form-row[data-v-b26d3b8e]{flex-direction:column}.form-group.full[data-v-b26d3b8e],.form-group.half[data-v-b26d3b8e]{flex:none}.modal-content[data-v-b26d3b8e]{margin:20px;max-width:calc(100vw - 40px)}.exam-table[data-v-b26d3b8e],.results-table[data-v-b26d3b8e],.student-table[data-v-b26d3b8e]{font-size:14px}.exam-table td[data-v-b26d3b8e],.exam-table th[data-v-b26d3b8e],.results-table td[data-v-b26d3b8e],.results-table th[data-v-b26d3b8e],.student-table td[data-v-b26d3b8e],.student-table th[data-v-b26d3b8e]{padding:8px}}.delete-confirm-modal[data-v-b26d3b8e]{background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);max-width:480px;width:90%;overflow:hidden;animation:modalSlideIn-b26d3b8e .3s ease-out}.delete-confirm-modal .modal-header[data-v-b26d3b8e]{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;border:none}.delete-confirm-modal .modal-header h3[data-v-b26d3b8e]{margin:0;font-size:18px;font-weight:600}.delete-confirm-modal .close-btn[data-v-b26d3b8e]{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.delete-confirm-modal .close-btn[data-v-b26d3b8e]:hover{background-color:hsla(0,0%,100%,.2)}.delete-confirm-modal .modal-body[data-v-b26d3b8e]{padding:24px;text-align:center}.delete-confirm-modal .modal-body p[data-v-b26d3b8e]{margin:0 0 16px 0;font-size:16px;line-height:1.5;color:#333}.delete-confirm-modal .modal-body p[data-v-b26d3b8e]:last-child{margin-bottom:0}.delete-confirm-modal .warning-text[data-v-b26d3b8e]{color:#666;font-size:14px;font-style:italic}.delete-confirm-modal .modal-footer[data-v-b26d3b8e]{padding:20px 24px;background:#f8f9fa;display:flex;justify-content:flex-end;gap:12px;border:none}.delete-confirm-modal .btn-cancel[data-v-b26d3b8e],.delete-confirm-modal .btn-delete[data-v-b26d3b8e]{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;min-width:80px}.delete-confirm-modal .btn-cancel[data-v-b26d3b8e]{background:#6c757d;color:#fff}.delete-confirm-modal .btn-cancel[data-v-b26d3b8e]:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.delete-confirm-modal .btn-delete[data-v-b26d3b8e]{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff}.delete-confirm-modal .btn-delete[data-v-b26d3b8e]:hover:not(:disabled){background:linear-gradient(135deg,#ff5252,#e53935);transform:translateY(-1px);box-shadow:0 4px 12px hsla(0,100%,71%,.3)}.delete-confirm-modal .btn-cancel[data-v-b26d3b8e]:disabled,.delete-confirm-modal .btn-delete[data-v-b26d3b8e]:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes modalSlideIn-b26d3b8e{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.loading-spinner[data-v-b26d3b8e]{display:inline-block;animation:spin-b26d3b8e 1s linear infinite;font-size:14px}@keyframes spin-b26d3b8e{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-text[data-v-b26d3b8e]{display:flex;align-items:center;gap:6px}button[data-v-b26d3b8e]:disabled{opacity:.6;cursor:not-allowed}button[data-v-b26d3b8e]:disabled:hover{background-color:inherit;transform:none}.guest-class[data-v-b26d3b8e]{border:2px solid #17a2b8;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.guest-badge[data-v-b26d3b8e]{display:inline-block;background:#ffc107;color:#212529;font-size:12px;font-weight:700;padding:2px 8px;border-radius:12px;margin-left:8px;vertical-align:middle}.guest-class-note[data-v-b26d3b8e]{color:#6c757d;font-size:12px;font-style:italic;padding:4px 8px;background:hsla(208,7%,46%,.1);border-radius:4px}.class-card.dragging[data-v-b26d3b8e]{opacity:.5;transform:rotate(2deg);box-shadow:0 8px 25px rgba(0,0,0,.15);z-index:1000}.class-card.drag-over[data-v-b26d3b8e]{transform:translateY(-2px);box-shadow:0 8px 25px rgba(74,144,226,.3);border:2px dashed #4a90e2}.drop-indicator[data-v-b26d3b8e]{position:absolute;top:-3px;left:0;right:0;height:6px;background:linear-gradient(90deg,#4a90e2,#357abd);border-radius:3px;z-index:1001;animation:dropIndicatorPulse-b26d3b8e 1s ease-in-out infinite alternate}.drop-indicator[data-v-b26d3b8e]:before{left:-8px;border-right:8px solid #4a90e2}.drop-indicator[data-v-b26d3b8e]:after,.drop-indicator[data-v-b26d3b8e]:before{content:"";position:absolute;top:50%;transform:translateY(-50%);width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent}.drop-indicator[data-v-b26d3b8e]:after{right:-8px;border-left:8px solid #4a90e2}@keyframes dropIndicatorPulse-b26d3b8e{0%{opacity:.6;transform:scaleY(.8)}to{opacity:1;transform:scaleY(1.2)}}.class-grid[data-v-b26d3b8e]{position:relative}.class-card[data-v-b26d3b8e]{position:relative;transition:all .2s ease}.class-card[data-v-b26d3b8e]:not(.dragging):hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.1)}.admin-page[data-v-8d5abd54]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.error-toast[data-v-8d5abd54]{position:fixed;top:20px;right:20px;background:#fdecea;border-left:4px solid #ef4444;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.12);z-index:10000;transform:translateX(400px);opacity:0;transition:all .4s cubic-bezier(.175,.885,.32,1.275);max-width:400px}.error-toast.show[data-v-8d5abd54]{transform:translateX(0);opacity:1}.success-toast[data-v-8d5abd54]{position:fixed;top:20px;right:20px;background:#fff;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.12);z-index:10000;transform:translateX(400px);opacity:0;transition:all .4s cubic-bezier(.175,.885,.32,1.275);border-left:4px solid #10b981;max-width:400px}.success-toast.show[data-v-8d5abd54]{transform:translateX(0);opacity:1}.toast-content[data-v-8d5abd54]{display:flex;align-items:center;padding:16px 20px;gap:12px}.toast-icon[data-v-8d5abd54]{flex-shrink:0;width:20px;height:20px}.toast-message[data-v-8d5abd54]{color:#1f2937;font-weight:500;font-size:14px;line-height:1.4}.admin-header[data-v-8d5abd54]{background:hsla(0,0%,100%,.95);backdrop-filter:blur(10px);padding:16px 32px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 20px rgba(0,0,0,.1);border-bottom:1px solid hsla(0,0%,100%,.2)}.system-name[data-v-8d5abd54]{font-size:24px;font-weight:700;color:#2c3e50;letter-spacing:-.5px}.header-buttons[data-v-8d5abd54]{display:flex;gap:12px}.back-button[data-v-8d5abd54],.logout-button[data-v-8d5abd54]{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.logout-button[data-v-8d5abd54]{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;box-shadow:0 4px 12px hsla(0,100%,71%,.3)}.logout-button[data-v-8d5abd54]:hover{background:linear-gradient(135deg,#ff5252,#e53935);transform:translateY(-2px);box-shadow:0 6px 20px hsla(0,100%,71%,.4)}.back-button[data-v-8d5abd54]{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;box-shadow:0 4px 12px rgba(78,205,196,.3)}.back-button[data-v-8d5abd54]:hover{background:linear-gradient(135deg,#26d0ce,#38a3a5);transform:translateY(-2px);box-shadow:0 6px 20px rgba(78,205,196,.4)}.admin-content[data-v-8d5abd54]{padding:32px;max-width:1400px;margin:0 auto}.tab-navigation[data-v-8d5abd54]{margin-bottom:32px}.tab-buttons[data-v-8d5abd54]{display:flex;background:hsla(0,0%,100%,.95);backdrop-filter:blur(10px);border-radius:16px;padding:8px;box-shadow:0 8px 32px rgba(0,0,0,.1);border:1px solid hsla(0,0%,100%,.2);gap:4px}.tab-button[data-v-8d5abd54]{flex:1;padding:16px 24px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);background:transparent;color:#6c757d;display:flex;align-items:center;justify-content:center;gap:12px;position:relative;overflow:hidden}.tab-button[data-v-8d5abd54]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea,#764ba2);opacity:0;transition:opacity .3s ease;border-radius:12px}.tab-button.active[data-v-8d5abd54]:before{opacity:1}.tab-button.active[data-v-8d5abd54]{color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px rgba(102,126,234,.4)}.tab-icon[data-v-8d5abd54]{font-size:20px}.tab-button span[data-v-8d5abd54]:not(.tab-icon),.tab-icon[data-v-8d5abd54]{position:relative;z-index:1}.tab-button[data-v-8d5abd54]:hover:not(.active){background:rgba(102,126,234,.1);color:#667eea;transform:translateY(-1px)}.tab-content[data-v-8d5abd54]{background:hsla(0,0%,100%,.95);backdrop-filter:blur(10px);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.1);border:1px solid hsla(0,0%,100%,.2);overflow:hidden;min-height:600px;max-height:calc(100vh - 200px);overflow-y:auto;position:relative}@media (max-width:768px){.admin-header[data-v-8d5abd54]{padding:12px 20px;flex-direction:column;gap:16px;text-align:center}.system-name[data-v-8d5abd54]{font-size:20px}.header-buttons[data-v-8d5abd54]{flex-direction:column;width:100%;max-width:300px}.back-button[data-v-8d5abd54],.logout-button[data-v-8d5abd54]{width:100%;justify-content:center}.admin-content[data-v-8d5abd54]{padding:20px}.tab-buttons[data-v-8d5abd54]{flex-direction:column}.tab-button[data-v-8d5abd54]{flex:none;padding:12px 20px}.success-toast[data-v-8d5abd54]{right:10px;left:10px;max-width:none;transform:translateY(-100px)}.success-toast.show[data-v-8d5abd54]{transform:translateY(0)}}@media (max-width:480px){.admin-content[data-v-8d5abd54]{padding:16px}.tab-button[data-v-8d5abd54]{font-size:14px;padding:10px 16px}.tab-icon[data-v-8d5abd54]{font-size:18px}}.password-management[data-v-8d5abd54]{margin-top:40px;padding:0 24px 40px}.password-section[data-v-8d5abd54]{background:hsla(0,0%,100%,.95);border-radius:16px;padding:24px;box-shadow:0 8px 32px rgba(0,0,0,.1);backdrop-filter:blur(10px)}.section-title[data-v-8d5abd54]{color:#333;font-size:20px;font-weight:600;margin-bottom:20px;text-align:center}.password-controls[data-v-8d5abd54]{display:flex;flex-direction:column;gap:20px;max-width:600px;margin:0 auto}.password-group[data-v-8d5abd54]{display:flex;justify-content:space-between;align-items:center;gap:16px}.password-group label[data-v-8d5abd54]{color:#555;font-weight:500;font-size:14px;flex:1}.change-password-btn[data-v-8d5abd54]{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.change-password-btn[data-v-8d5abd54]:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(102,126,234,.3)}.modal-overlay[data-v-8d5abd54]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-8d5abd54]{background:#fff;border-radius:16px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.3);animation:modalSlideIn-8d5abd54 .3s ease-out}@keyframes modalSlideIn-8d5abd54{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header[data-v-8d5abd54]{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 0;border-bottom:1px solid #e1e5e9;margin-bottom:24px}.modal-header h3[data-v-8d5abd54]{color:#333;font-size:20px;font-weight:600;margin:0}.close-btn[data-v-8d5abd54]{background:none;border:none;font-size:28px;color:#999;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease,color .2s ease}.close-btn[data-v-8d5abd54]:hover{background-color:#f5f5f5;color:#666}.modal-body[data-v-8d5abd54]{padding:0 24px 24px}.form-group[data-v-8d5abd54]{margin-bottom:20px}.form-group label[data-v-8d5abd54]{display:block;color:#555;font-weight:500;font-size:14px;margin-bottom:8px}.form-input[data-v-8d5abd54]{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:14px;transition:border-color .3s ease;box-sizing:border-box}.form-input[data-v-8d5abd54]:focus{outline:none;border-color:#667eea}.error-message[data-v-8d5abd54]{color:#e74c3c;font-size:14px;margin-top:8px;padding:8px 12px;background:#fdf2f2;border:1px solid #fecaca;border-radius:6px}.modal-footer[data-v-8d5abd54]{display:flex;justify-content:flex-end;gap:12px;padding:0 24px 24px;border-top:1px solid #e1e5e9;margin-top:24px;padding-top:24px}.cancel-btn[data-v-8d5abd54]{padding:12px 24px;background:#f8f9fa;color:#666;border:1px solid #e1e5e9;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.cancel-btn[data-v-8d5abd54]:hover{background:#e9ecef;border-color:#ced4da}.confirm-btn[data-v-8d5abd54]{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.confirm-btn[data-v-8d5abd54]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px rgba(102,126,234,.3)}.confirm-btn[data-v-8d5abd54]:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width:768px){.password-group[data-v-8d5abd54]{flex-direction:column;align-items:stretch;gap:8px}.change-password-btn[data-v-8d5abd54]{width:100%}.modal-content[data-v-8d5abd54]{width:95%;margin:20px}.modal-footer[data-v-8d5abd54]{flex-direction:column}.cancel-btn[data-v-8d5abd54],.confirm-btn[data-v-8d5abd54]{width:100%}}.admin-login[data-v-60b36f4a]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:20px}.login-container[data-v-60b36f4a]{width:100%;max-width:400px}.login-card[data-v-60b36f4a]{background:#fff;border-radius:12px;padding:40px 30px;box-shadow:0 10px 30px rgba(0,0,0,.2);text-align:center}.login-title[data-v-60b36f4a]{color:#333;margin-bottom:10px;font-size:28px;font-weight:600}.login-subtitle[data-v-60b36f4a]{color:#666;margin-bottom:30px;font-size:14px}.login-form[data-v-60b36f4a]{text-align:left}.form-group[data-v-60b36f4a]{margin-bottom:20px}.form-group label[data-v-60b36f4a]{display:block;margin-bottom:8px;color:#333;font-weight:500}.form-control[data-v-60b36f4a]{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:16px;transition:border-color .3s ease;box-sizing:border-box}.form-control[data-v-60b36f4a]:focus{outline:none;border-color:#667eea}.error-message[data-v-60b36f4a]{color:#e74c3c;font-size:14px;margin-bottom:15px;text-align:center;padding:8px;background-color:#fdf2f2;border-radius:4px;border:1px solid #fecaca}.login-btn[data-v-60b36f4a]{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;margin-bottom:20px}.login-btn[data-v-60b36f4a]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px rgba(102,126,234,.4)}.login-btn[data-v-60b36f4a]:disabled{opacity:.6;cursor:not-allowed}.back-link[data-v-60b36f4a]{text-align:center}.back-btn[data-v-60b36f4a]{color:#667eea;text-decoration:none;font-size:14px;transition:color .3s ease}.back-btn[data-v-60b36f4a]:hover{color:#764ba2;text-decoration:underline}.home-login[data-v-800541e8]{min-height:100vh;background:linear-gradient(135deg,#4facfe,#00f2fe);display:flex;align-items:center;justify-content:center;padding:20px}.login-container[data-v-800541e8]{width:100%;max-width:400px}.login-card[data-v-800541e8]{background:#fff;border-radius:12px;padding:40px 30px;box-shadow:0 10px 30px rgba(0,0,0,.2);text-align:center}.login-title[data-v-800541e8]{color:#333;margin-bottom:10px;font-size:28px;font-weight:600}.login-subtitle[data-v-800541e8]{color:#666;margin-bottom:30px;font-size:14px}.login-form[data-v-800541e8]{text-align:left}.form-group[data-v-800541e8]{margin-bottom:20px}.form-group label[data-v-800541e8]{display:block;margin-bottom:8px;color:#333;font-weight:500}.form-control[data-v-800541e8]{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:16px;transition:border-color .3s ease;box-sizing:border-box}.form-control[data-v-800541e8]:focus{outline:none;border-color:#4facfe}.error-message[data-v-800541e8]{color:#e74c3c;font-size:14px;margin-bottom:15px;text-align:center;padding:8px;background-color:#fdf2f2;border-radius:4px;border:1px solid #fecaca}.login-btn[data-v-800541e8]{width:100%;padding:14px;background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;margin-bottom:20px}.login-btn[data-v-800541e8]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px rgba(79,172,254,.4)}.login-btn[data-v-800541e8]:disabled{opacity:.6;cursor:not-allowed}.exam-detail-page[data-v-650b6fc8]{min-height:100vh;background-color:#f5f5f5}.detail-header[data-v-650b6fc8]{background-color:#333;color:#fff;padding:10px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #444}.system-name[data-v-650b6fc8]{font-size:18px;font-weight:700}.back-button[data-v-650b6fc8]{background-color:transparent;color:#fff;border:1px solid #fff;padding:6px 12px;border-radius:3px;cursor:pointer;font-size:14px;transition:all .2s}.back-button[data-v-650b6fc8]:hover{background-color:#fff;color:#333}.detail-content[data-v-650b6fc8]{max-width:900px;margin:0 auto;padding:20px}.exam-summary[data-v-650b6fc8]{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-bottom:20px}.exam-summary h1[data-v-650b6fc8]{color:#333;margin:0 0 15px 0;text-align:center}.summary-stats[data-v-650b6fc8]{display:flex;justify-content:space-around;gap:20px}.summary-item[data-v-650b6fc8]{display:flex;flex-direction:column;align-items:center;padding:10px;border-radius:6px;background-color:#f8f9fa}.summary-label[data-v-650b6fc8]{font-size:12px;color:#666;margin-bottom:5px}.summary-value[data-v-650b6fc8]{font-size:18px;font-weight:700;color:#333}.score-distribution[data-v-650b6fc8]{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-bottom:20px}.score-distribution h2[data-v-650b6fc8]{color:#333;margin:0 0 15px 0}.distribution-chart[data-v-650b6fc8]{display:flex;justify-content:space-around;align-items:end;height:200px;padding:20px 0}.score-bar[data-v-650b6fc8]{display:flex;flex-direction:column;align-items:center;width:80px}.bar-container[data-v-650b6fc8]{width:40px;height:150px;background-color:#f0f0f0;border-radius:4px;display:flex;align-items:end;margin-bottom:8px}.bar-fill[data-v-650b6fc8]{width:100%;background:linear-gradient(0deg,#007bff,#66b3ff);border-radius:4px;transition:height .3s ease}.bar-label[data-v-650b6fc8]{font-size:12px;color:#666;margin-bottom:2px}.bar-count[data-v-650b6fc8]{font-size:11px;color:#333;font-weight:700}.score-list[data-v-650b6fc8]{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.score-list h2[data-v-650b6fc8]{color:#333;margin:0 0 15px 0}.list-controls[data-v-650b6fc8]{display:flex;gap:15px;margin-bottom:15px}.search-input[data-v-650b6fc8]{flex:1}.search-input[data-v-650b6fc8],.sort-select[data-v-650b6fc8]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.sort-select[data-v-650b6fc8]{background-color:#fff}.batch-operations[data-v-650b6fc8]{display:flex;gap:12px;margin-bottom:15px;padding:12px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border:1px solid #dee2e6;box-shadow:0 2px 4px rgba(0,0,0,.05)}.batch-delete-btn[data-v-650b6fc8]{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px rgba(220,53,69,.2);display:flex;align-items:center;gap:6px}.batch-delete-btn[data-v-650b6fc8]:before{content:"🗑️";font-size:16px}.batch-delete-btn[data-v-650b6fc8]:hover{background:linear-gradient(135deg,#c82333,#a71e2a);transform:translateY(-1px);box-shadow:0 4px 8px rgba(220,53,69,.3)}.batch-delete-btn[data-v-650b6fc8]:active{transform:translateY(0);box-shadow:0 2px 4px rgba(220,53,69,.2)}.batch-cancel-btn[data-v-650b6fc8]{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px hsla(208,7%,46%,.2);display:flex;align-items:center;gap:6px}.batch-cancel-btn[data-v-650b6fc8]:before{content:"✖️";font-size:14px}.batch-cancel-btn[data-v-650b6fc8]:hover{background:linear-gradient(135deg,#5a6268,#495057);transform:translateY(-1px);box-shadow:0 4px 8px hsla(208,7%,46%,.3)}.batch-cancel-btn[data-v-650b6fc8]:active{transform:translateY(0);box-shadow:0 2px 4px hsla(208,7%,46%,.2)}.score-table[data-v-650b6fc8]{border:1px solid #ddd;border-radius:4px;overflow:hidden}.table-header[data-v-650b6fc8]{display:flex;background-color:#f8f9fa;font-weight:700;color:#333;border-bottom:1px solid #ddd}.table-body[data-v-650b6fc8]{max-height:400px;overflow-y:auto}.table-row[data-v-650b6fc8]{display:flex;border-bottom:1px solid #eee;transition:background-color .2s}.table-row[data-v-650b6fc8]:hover{background-color:#f8f9fa}.table-row.top-performer[data-v-650b6fc8]{background-color:#fff3cd}.table-row.selected[data-v-650b6fc8]{background-color:#e3f2fd!important;border-left:4px solid #2196f3}.table-row.selected[data-v-650b6fc8]:hover{background-color:#bbdefb!important}.col-checkbox[data-v-650b6fc8]{width:50px;padding:10px 8px;text-align:center;display:flex;align-items:center;justify-content:center}.select-all-checkbox[data-v-650b6fc8]{cursor:pointer;width:18px;height:18px;accent-color:#007bff;transform:scale(1.2);border-radius:3px}.student-checkbox[data-v-650b6fc8]{cursor:pointer;width:16px;height:16px;accent-color:#007bff;transform:scale(1.1);margin:0;border-radius:3px}.student-checkbox[data-v-650b6fc8]:checked{background-color:#007bff;border-color:#007bff}.col-rank[data-v-650b6fc8]{width:60px;padding:10px 8px;text-align:center;display:flex;align-items:center;justify-content:center}.col-name[data-v-650b6fc8]{width:120px;padding:10px 8px}.col-score[data-v-650b6fc8]{width:100px;padding:10px 8px;text-align:center}.col-percentage[data-v-650b6fc8]{width:80px;padding:10px 8px;text-align:center}.col-time[data-v-650b6fc8]{width:140px;padding:10px 8px;font-size:13px}.col-duration[data-v-650b6fc8]{width:80px;padding:10px 8px;text-align:center}.rank-medal[data-v-650b6fc8]{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff}.rank-medal.rank-1[data-v-650b6fc8]{background-color:gold;color:#333}.modal-overlay[data-v-650b6fc8]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.6);display:flex;justify-content:center;align-items:center;z-index:1000;backdrop-filter:blur(2px);animation:fadeIn-650b6fc8 .2s ease-out}@keyframes fadeIn-650b6fc8{0%{opacity:0}to{opacity:1}}@keyframes slideIn-650b6fc8{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content[data-v-650b6fc8]{background-color:#fff;padding:35px;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.2);max-width:450px;width:90%;text-align:center;animation:slideIn-650b6fc8 .3s ease-out;border:1px solid hsla(0,0%,100%,.2)}.modal-content h3[data-v-650b6fc8]{margin:0 0 20px 0;color:#2c3e50;font-size:20px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px}.modal-content h3[data-v-650b6fc8]:before{content:"⚠️";font-size:24px}.modal-content p[data-v-650b6fc8]{margin:12px 0;color:#555;line-height:1.6;font-size:15px}.warning-text[data-v-650b6fc8]{color:#e74c3c!important;font-weight:600;font-size:14px;background-color:#fdf2f2;padding:8px 12px;border-radius:6px;border-left:4px solid #e74c3c;margin:15px 0}.modal-buttons[data-v-650b6fc8]{display:flex;gap:12px;justify-content:center;margin-top:30px}.cancel-btn[data-v-650b6fc8],.confirm-btn[data-v-650b6fc8]{padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;min-width:100px;position:relative;overflow:hidden}.cancel-btn[data-v-650b6fc8]{background-color:#6c757d;color:#fff;border:2px solid transparent}.cancel-btn[data-v-650b6fc8]:hover{background-color:#5a6268;transform:translateY(-1px);box-shadow:0 4px 12px hsla(208,7%,46%,.3)}.confirm-btn[data-v-650b6fc8]{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;border:2px solid transparent}.confirm-btn[data-v-650b6fc8]:hover{background:linear-gradient(135deg,#c0392b,#a93226);transform:translateY(-1px);box-shadow:0 4px 12px rgba(231,76,60,.4)}.cancel-btn[data-v-650b6fc8]:active,.confirm-btn[data-v-650b6fc8]:active{transform:translateY(0);box-shadow:0 2px 6px rgba(0,0,0,.2)}.rank-medal.rank-2[data-v-650b6fc8]{background-color:silver;color:#333}.rank-medal.rank-3[data-v-650b6fc8]{background-color:#cd7f32;color:#fff}.rank-number[data-v-650b6fc8]{color:#666}.exam-edit-page[data-v-35d1d188]{min-height:100vh;background-color:#f5f5f5;display:flex;flex-direction:column}.edit-header[data-v-35d1d188]{background-color:#fff;border-bottom:1px solid #ddd;padding:15px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px rgba(0,0,0,.1)}.header-left[data-v-35d1d188]{display:flex;align-items:center;gap:15px}.back-button[data-v-35d1d188]{background-color:#6c757d;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.back-button[data-v-35d1d188]:hover{background-color:#5a6268}.title-section[data-v-35d1d188]{display:flex;align-items:center;gap:12px}.exam-title[data-v-35d1d188]{margin:0;color:#333;font-size:24px}.edit-exam-btn[data-v-35d1d188]{background-color:#007bff;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s;display:flex;align-items:center;gap:4px}.edit-exam-btn[data-v-35d1d188]:hover{background-color:#0056b3}.exam-edit-form-container[data-v-35d1d188]{background-color:#fff;border-bottom:1px solid #ddd;box-shadow:0 2px 4px rgba(0,0,0,.1)}.exam-edit-form[data-v-35d1d188]{max-width:800px;margin:0 auto;padding:0}.form-header[data-v-35d1d188]{background-color:#f8f9fa;padding:16px 20px;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center}.form-header h3[data-v-35d1d188]{margin:0;color:#333;font-size:18px;font-weight:600}.close-form-btn[data-v-35d1d188]{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.close-form-btn[data-v-35d1d188]:hover{background-color:#e9ecef}.form-body[data-v-35d1d188]{padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group[data-v-35d1d188]{display:flex;flex-direction:column}.form-group[data-v-35d1d188]:first-child{grid-column:1/-1}.form-group label[data-v-35d1d188]{font-weight:600;color:#495057;margin-bottom:6px;font-size:14px}.form-input[data-v-35d1d188],.form-textarea[data-v-35d1d188]{padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .2s;font-family:inherit}.form-input[data-v-35d1d188]:focus,.form-textarea[data-v-35d1d188]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.form-textarea[data-v-35d1d188]{resize:vertical;min-height:80px}.form-footer[data-v-35d1d188]{padding:16px 20px;background-color:#f8f9fa;border-top:1px solid #e9ecef;display:flex;justify-content:flex-end;gap:12px}.form-btn[data-v-35d1d188]{padding:8px 16px;border:1px solid;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;min-width:80px}.form-btn.cancel-btn[data-v-35d1d188]{background-color:#fff;border-color:#6c757d;color:#6c757d}.form-btn.cancel-btn[data-v-35d1d188]:hover{background-color:#6c757d;color:#fff}.form-btn.save-btn[data-v-35d1d188]{background-color:#007bff;border-color:#007bff;color:#fff}.form-btn.save-btn[data-v-35d1d188]:hover{background-color:#0056b3;border-color:#0056b3}.save-button[data-v-35d1d188]{background-color:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:16px;font-weight:700;transition:background-color .2s}.save-button[data-v-35d1d188]:hover:not(:disabled){background-color:#218838}.save-button[data-v-35d1d188]:disabled{background-color:#6c757d;cursor:not-allowed}.error-container[data-v-35d1d188],.loading-container[data-v-35d1d188]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.retry-button[data-v-35d1d188]{background-color:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;margin-top:10px}.edit-content[data-v-35d1d188]{display:flex;flex:1;gap:20px;padding:20px}.question-sidebar[data-v-35d1d188]{width:300px;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);overflow:hidden}.sidebar-header[data-v-35d1d188]{background-color:#f8f9fa;padding:15px;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;align-items:center}.sidebar-header h3[data-v-35d1d188]{margin:0;color:#495057;font-size:16px}.add-question-btn[data-v-35d1d188]{background-color:#28a745;color:#fff;border:none;border-radius:50%;width:32px;height:32px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.add-question-btn[data-v-35d1d188]:hover{background-color:#218838}.add-question-btn.small[data-v-35d1d188]{width:24px;height:24px;font-size:12px;margin-left:8px}.question-list[data-v-35d1d188]{max-height:calc(100vh - 200px);overflow-y:auto}.part-group[data-v-35d1d188]{margin-bottom:20px;border:1px solid #e9ecef;border-radius:8px;overflow:hidden}.part-header[data-v-35d1d188]{background-color:#f8f9fa;padding:12px 16px;border-bottom:1px solid #e9ecef}.part-header h4[data-v-35d1d188]{margin:0;font-size:16px;font-weight:600;color:#495057}.subtype-group[data-v-35d1d188]{border-bottom:1px solid #f0f0f0}.subtype-group[data-v-35d1d188]:last-child{border-bottom:none}.subtype-header[data-v-35d1d188]{background-color:#fff;padding:10px 16px;border-bottom:1px solid #f8f9fa;display:flex;align-items:center;justify-content:space-between}.subtype-header h5[data-v-35d1d188]{margin:0;font-size:14px;font-weight:500;color:#6c757d}.part-level-questions[data-v-35d1d188]{background-color:#fff;padding:10px 16px;border-bottom:1px solid #f8f9fa;display:flex;align-items:center;justify-content:flex-end}.subtype-questions[data-v-35d1d188]{background-color:#fff}.question-item[data-v-35d1d188]{display:flex;align-items:center;padding:12px 15px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s;position:relative}.question-item[data-v-35d1d188]:hover{background-color:#f8f9fa}.question-item.active[data-v-35d1d188]{background-color:#e3f2fd;border-left:4px solid #2196f3}.question-item.modified[data-v-35d1d188]{background-color:#fff3cd}.question-item.active.modified[data-v-35d1d188]{background-color:#d1ecf1}.question-item.dragging[data-v-35d1d188]{opacity:.5;transform:rotate(2deg);box-shadow:0 4px 8px rgba(0,0,0,.2)}.question-item[draggable=true][data-v-35d1d188]{cursor:grab}.question-item[draggable=true][data-v-35d1d188]:active{cursor:grabbing}.drag-handle[data-v-35d1d188]{color:#6c757d;font-size:12px;margin-right:8px;cursor:grab;opacity:.6;transition:opacity .2s}.question-item:hover .drag-handle[data-v-35d1d188]{opacity:1}.question-number[data-v-35d1d188]{font-weight:700;color:#495057;margin-right:10px;min-width:30px}.question-preview[data-v-35d1d188]{flex:1;min-width:0}.question-text[data-v-35d1d188]{font-size:14px;color:#333;margin-bottom:4px;white-space:pre-wrap;word-wrap:break-word}.question-type[data-v-35d1d188]{font-size:12px;color:#6c757d}.modified-indicator[data-v-35d1d188]{color:#ffc107;font-size:12px;margin-left:5px}.question-editor[data-v-35d1d188]{flex:1;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);overflow:hidden}.editor-content[data-v-35d1d188]{padding:20px}.question-header[data-v-35d1d188]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.question-title-row[data-v-35d1d188]{display:flex;align-items:center;gap:15px}.question-header h2[data-v-35d1d188]{margin:0;color:#333}.delete-question-btn[data-v-35d1d188]{background:#dc3545;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:5px;transition:background-color .2s}.delete-question-btn[data-v-35d1d188]:hover:not(:disabled){background:#c82333}.delete-question-btn[data-v-35d1d188]:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.question-meta[data-v-35d1d188]{display:flex;align-items:center;gap:10px}.question-meta label[data-v-35d1d188]{font-weight:700;color:#495057}.question-meta select[data-v-35d1d188]{padding:5px 10px;border:1px solid #ced4da;border-radius:4px;background-color:#fff}.editor-section[data-v-35d1d188]{margin-bottom:25px}.section-label[data-v-35d1d188]{display:block;font-weight:700;color:#495057;margin-bottom:8px}.answer-editor[data-v-35d1d188],.explanation-editor[data-v-35d1d188],.passage-editor[data-v-35d1d188],.question-editor-text[data-v-35d1d188]{width:100%;max-width:100%;box-sizing:border-box;padding:10px;border:1px solid #ced4da;border-radius:4px;font-family:inherit;font-size:14px;line-height:1.5;resize:none;overflow-y:auto}.passage-editor[data-v-35d1d188]{background-color:#f8f9fa}.options-editor[data-v-35d1d188]{display:flex;flex-direction:column;gap:15px}.option-item[data-v-35d1d188]{border:2px solid #e9ecef;border-radius:8px;padding:16px;background-color:#fff;margin-bottom:12px;transition:all .2s ease;box-shadow:0 1px 3px rgba(0,0,0,.1)}.option-item[data-v-35d1d188]:hover{border-color:#007bff;box-shadow:0 2px 8px rgba(0,123,255,.15)}.option-header[data-v-35d1d188]{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #f1f3f4}.option-label[data-v-35d1d188]{font-weight:600;color:#007bff;min-width:24px;font-size:16px;background-color:#f8f9fa;padding:4px 8px;border-radius:4px;text-align:center}.option-header input[type=radio][data-v-35d1d188]{margin:0;transform:scale(1.2);accent-color:#007bff}.option-header label[data-v-35d1d188]{font-size:14px;color:#6c757d;font-weight:500;cursor:pointer}.option-text[data-v-35d1d188]{width:100%;max-width:100%;box-sizing:border-box;padding:12px;border:1px solid #ced4da;border-radius:6px;font-family:inherit;font-size:14px;background-color:#fff;resize:none;transition:border-color .2s ease;line-height:1.4;overflow-y:auto}.option-text[data-v-35d1d188]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.option-text[data-v-35d1d188]::-moz-placeholder{color:#adb5bd;font-style:italic}.option-text[data-v-35d1d188]::placeholder{color:#adb5bd;font-style:italic}.option-label-input[data-v-35d1d188]{width:40px;padding:4px 8px;border:1px solid #ced4da;border-radius:4px;font-weight:600;color:#007bff;background-color:#f8f9fa;text-align:center;font-size:14px}.option-label-input[data-v-35d1d188]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.option-dot[data-v-35d1d188]{font-weight:600;color:#007bff;font-size:16px}.remove-option-btn[data-v-35d1d188]{background:#dc3545;color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;margin-left:auto}.remove-option-btn[data-v-35d1d188]:hover{background:#c82333}.add-option-container[data-v-35d1d188]{display:flex;justify-content:center;margin-top:15px}.add-option-btn[data-v-35d1d188]{background:#28a745;color:#fff;border:none;border-radius:6px;padding:10px 20px;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s ease;font-weight:500}.add-option-btn[data-v-35d1d188]:hover{background:#218838}.material-controls[data-v-35d1d188]{display:flex;flex-direction:column;gap:12px}.material-type-select[data-v-35d1d188]{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background-color:#fff;cursor:pointer;max-width:200px}.material-edit-container[data-v-35d1d188]{margin-top:12px;padding:16px;border:2px solid #e9ecef;border-radius:8px;background-color:#f8f9fa;box-shadow:0 2px 4px rgba(0,0,0,.05)}.sidebar-actions[data-v-35d1d188]{display:flex;gap:8px;margin-top:8px}.manage-btn[data-v-35d1d188]{background:#007bff;color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:12px;cursor:pointer;transition:background-color .2s ease;display:flex;align-items:center;gap:4px}.manage-btn[data-v-35d1d188]:hover{background:#0056b3}.modal-overlay[data-v-35d1d188]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-dialog[data-v-35d1d188]{background:#fff;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.15);max-width:800px;width:90%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-35d1d188]{padding:20px;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa}.modal-header h3[data-v-35d1d188]{margin:0;color:#333;font-size:18px}.modal-close[data-v-35d1d188]{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.modal-close[data-v-35d1d188]:hover{background:#e9ecef}.modal-body[data-v-35d1d188]{padding:20px;overflow-y:auto;flex:1}.part-list[data-v-35d1d188]{margin-bottom:30px}.part-item[data-v-35d1d188]{border:1px solid #e9ecef;border-radius:6px;padding:16px;margin-bottom:12px;background:#f8f9fa}.part-info[data-v-35d1d188]{margin-bottom:12px}.part-intro-input[data-v-35d1d188],.part-name-input[data-v-35d1d188]{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;margin-bottom:8px;font-size:14px}.part-meta[data-v-35d1d188]{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:8px;align-items:center}.part-meta label[data-v-35d1d188]{font-size:12px;color:#666;font-weight:500}.part-count-input[data-v-35d1d188],.part-range-input[data-v-35d1d188]{padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:13px}.part-actions[data-v-35d1d188]{display:flex;gap:8px}.btn-update[data-v-35d1d188]{background:#28a745;color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.btn-update[data-v-35d1d188]:hover{background:#218838}.btn-delete[data-v-35d1d188]{background:#dc3545;color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.btn-delete[data-v-35d1d188]:hover{background:#c82333}.add-part-section[data-v-35d1d188],.add-subtype-section[data-v-35d1d188]{border-top:2px solid #e9ecef;padding-top:20px}.add-part-section h4[data-v-35d1d188],.add-subtype-section h4[data-v-35d1d188]{margin:0 0 16px 0;color:#333;font-size:16px}.new-part-form[data-v-35d1d188],.new-subtype-form[data-v-35d1d188]{display:flex;flex-direction:column;gap:12px}.form-input[data-v-35d1d188],.form-select[data-v-35d1d188]{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.form-row[data-v-35d1d188]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.btn-create[data-v-35d1d188]{background:#007bff;color:#fff;border:none;border-radius:4px;padding:10px 20px;font-size:14px;cursor:pointer;transition:background-color .2s ease;align-self:flex-start}.btn-create[data-v-35d1d188]:hover{background:#0056b3}.subtype-list[data-v-35d1d188]{margin-bottom:30px}.subtype-item[data-v-35d1d188]{border:1px solid #e9ecef;border-radius:6px;padding:16px;margin-bottom:12px;background:#f8f9fa}.subtype-info[data-v-35d1d188]{margin-bottom:12px}.part-select[data-v-35d1d188]{background:#fff}.part-select[data-v-35d1d188],.subtype-intro-input[data-v-35d1d188],.subtype-name-input[data-v-35d1d188]{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;margin-bottom:8px;font-size:14px}.subtype-meta[data-v-35d1d188]{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:8px;align-items:center}.subtype-meta label[data-v-35d1d188]{font-size:12px;color:#666;font-weight:500}.subtype-count-input[data-v-35d1d188],.subtype-range-input[data-v-35d1d188]{padding:6px 8px;border:1px solid #ced4da;border-radius:4px;font-size:13px}.subtype-actions[data-v-35d1d188]{display:flex;gap:8px}.material-title-section[data-v-35d1d188]{margin-bottom:12px}.material-title-label[data-v-35d1d188]{display:block;font-size:14px;font-weight:600;color:#495057;margin-bottom:6px}.material-info-display[data-v-35d1d188]{margin-bottom:12px;padding:6px 10px;background-color:#e7f3ff;border:1px solid #b3d9ff;border-radius:4px;font-size:12px;color:#0056b3;font-weight:500}.material-content-section[data-v-35d1d188]{margin-bottom:0}.material-content-label[data-v-35d1d188]{display:block;font-size:14px;font-weight:600;color:#495057;margin-bottom:6px}.material-info[data-v-35d1d188]{margin:10px 0;padding:8px 12px;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px}.material-title[data-v-35d1d188]{font-size:14px;color:#495057;font-weight:500}.material-image-editor[data-v-35d1d188]{margin-top:10px}.image-upload-area[data-v-35d1d188]{border:2px dashed #dee2e6;border-radius:8px;padding:20px;background-color:#f8f9fa;transition:border-color .2s ease;display:flex;flex-direction:column;align-items:center;gap:16px}.image-upload-area[data-v-35d1d188]:hover{border-color:#007bff}.upload-button[data-v-35d1d188]{background-color:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,123,255,.2);min-width:140px}.upload-button[data-v-35d1d188]:hover{background-color:#0056b3;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,123,255,.3)}.image-preview[data-v-35d1d188]{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.preview-image[data-v-35d1d188]{max-width:100%;max-height:300px;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.15);transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.preview-image[data-v-35d1d188]:hover{transform:scale(1.02);box-shadow:0 6px 20px rgba(0,0,0,.2)}.remove-image-button[data-v-35d1d188]{position:absolute;top:8px;right:8px;background-color:#dc3545;color:#fff;border:none;border-radius:50%;width:36px;height:36px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 8px rgba(220,53,69,.3)}.remove-image-button[data-v-35d1d188]:hover{background-color:#c82333;transform:scale(1.1);box-shadow:0 4px 12px rgba(220,53,69,.4)}.clickable-image[data-v-35d1d188]{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.clickable-image[data-v-35d1d188]:hover{transform:scale(1.02);box-shadow:0 4px 12px rgba(0,0,0,.15)}.image-modal[data-v-35d1d188]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.8);display:flex;justify-content:center;align-items:center;z-index:9999;cursor:pointer;overflow:auto}.image-modal-content[data-v-35d1d188]{position:relative;cursor:default;overflow:auto;max-width:95vw;max-height:95vh;display:flex;justify-content:flex-start;align-items:flex-start}.modal-image[data-v-35d1d188]{width:auto;height:auto;min-width:300px;border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.3);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:block}.modal-image[data-v-35d1d188]:active{cursor:grabbing}.close-modal-btn[data-v-35d1d188]{position:absolute;top:-15px;right:-15px;width:40px;height:40px;background-color:#fff;border:none;border-radius:50%;font-size:24px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.2);transition:background-color .2s ease}.close-modal-btn[data-v-35d1d188]:hover{background-color:#f0f0f0}.question-navigation[data-v-35d1d188]{display:flex;justify-content:space-between;align-items:center;margin-top:30px;padding-top:20px;border-top:2px solid #f0f0f0}.nav-button[data-v-35d1d188]{background-color:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.nav-button[data-v-35d1d188]:hover:not(:disabled){background-color:#0056b3}.nav-button[data-v-35d1d188]:disabled{background-color:#6c757d;cursor:not-allowed}.question-counter[data-v-35d1d188]{font-weight:700;color:#495057}.no-question[data-v-35d1d188]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:#6c757d;font-size:18px;text-align:center}.add-first-question[data-v-35d1d188]{margin-top:20px;display:flex;flex-direction:column;align-items:center;gap:12px}.hint-text[data-v-35d1d188]{color:#dc3545;font-size:14px;margin:0;font-style:italic}.message-toast[data-v-35d1d188]{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:9999;min-width:300px;max-width:500px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);animation:slideDown-35d1d188 .3s ease-out}.message-toast.success[data-v-35d1d188]{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.message-toast.error[data-v-35d1d188]{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.message-content[data-v-35d1d188]{display:flex;align-items:center;padding:12px 16px}.message-icon[data-v-35d1d188]{font-size:18px;font-weight:700;margin-right:10px}.message-text[data-v-35d1d188]{font-size:14px;font-weight:500}@keyframes slideDown-35d1d188{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.material-selection-container[data-v-35d1d188]{margin-bottom:15px}.material-selection-label[data-v-35d1d188]{display:block;font-size:14px;font-weight:500;color:#495057;margin-bottom:8px}.material-selection-wrapper[data-v-35d1d188]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.material-selection-dropdown[data-v-35d1d188]{flex:1;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;background-color:#fff;font-size:14px;color:#495057;cursor:pointer;transition:border-color .2s ease}.material-selection-dropdown[data-v-35d1d188]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.1)}.material-selection-dropdown option[data-v-35d1d188]{padding:8px}.current-material-preview[data-v-35d1d188]{padding:6px 8px;background-color:#e7f3ff;border:1px solid #b3d9ff;border-radius:4px;font-size:12px;color:#0056b3}.create-material-btn-inline[data-v-35d1d188]{padding:8px 12px;font-size:12px;font-weight:500;border:1px solid #28a745;background-color:#28a745;color:#fff;border-radius:4px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.create-material-btn-inline[data-v-35d1d188]:hover{background-color:#218838;border-color:#1e7e34;transform:translateY(-1px);box-shadow:0 2px 4px rgba(40,167,69,.2)}.create-material-btn-inline[data-v-35d1d188]:active{transform:translateY(0);box-shadow:0 1px 2px rgba(40,167,69,.2)}.confirm-dialog-overlay[data-v-35d1d188]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.confirm-dialog[data-v-35d1d188]{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.15);max-width:400px;width:90%;max-height:90vh;overflow:hidden}.confirm-dialog-header[data-v-35d1d188]{padding:20px 20px 0 20px;border-bottom:1px solid #e9ecef}.confirm-dialog-header h3[data-v-35d1d188]{margin:0 0 15px 0;font-size:18px;font-weight:600;color:#495057}.confirm-dialog-body[data-v-35d1d188]{padding:20px}.confirm-dialog-body p[data-v-35d1d188]{margin:0 0 12px 0;font-size:14px;color:#495057;line-height:1.5}.confirm-dialog-details[data-v-35d1d188]{background-color:#f8f9fa;padding:10px;border-radius:4px;border-left:3px solid #007bff;font-size:13px}.confirm-dialog-footer[data-v-35d1d188]{padding:0 20px 20px 20px;display:flex;justify-content:flex-end;gap:10px}.confirm-dialog-btn[data-v-35d1d188]{padding:8px 16px;border:1px solid;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-btn[data-v-35d1d188]{background-color:#fff;border-color:#6c757d;color:#6c757d}.cancel-btn[data-v-35d1d188]:hover{background-color:#6c757d;color:#fff}.confirm-btn[data-v-35d1d188]{background-color:#007bff;border-color:#007bff;color:#fff}.confirm-btn[data-v-35d1d188]:hover{background-color:#0056b3;border-color:#0056b3}.material-category-input[data-v-35d1d188]{max-width:300px;width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background-color:#fff;transition:border-color .2s ease;box-sizing:border-box}.material-category-input[data-v-35d1d188]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.material-title-editor[data-v-35d1d188]{margin-bottom:16px;padding:12px;background-color:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.material-label[data-v-35d1d188]{display:block;font-weight:600;color:#495057;margin-bottom:6px;font-size:14px}.material-title-input[data-v-35d1d188]{width:100%;max-width:400px;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;background-color:#fff;transition:border-color .2s ease;box-sizing:border-box}.material-title-input[data-v-35d1d188]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.delete-confirm-modal[data-v-35d1d188]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.delete-confirm-content[data-v-35d1d188]{background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3);max-width:400px;width:90%;animation:modalSlideIn-35d1d188 .3s ease-out}@keyframes modalSlideIn-35d1d188{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.delete-confirm-header[data-v-35d1d188]{padding:20px 24px 0;text-align:center}.delete-confirm-header h3[data-v-35d1d188]{margin:0;font-size:20px;color:#e74c3c;font-weight:600}.delete-confirm-body[data-v-35d1d188]{padding:16px 24px;text-align:center}.delete-confirm-body p[data-v-35d1d188]{margin:8px 0;color:#333;line-height:1.5}.warning-text[data-v-35d1d188]{color:#e74c3c!important;font-weight:500;font-size:14px}.delete-confirm-footer[data-v-35d1d188]{padding:0 24px 24px;display:flex;gap:12px;justify-content:center}.delete-confirm-footer .cancel-btn[data-v-35d1d188],.delete-confirm-footer .confirm-btn[data-v-35d1d188]{padding:10px 24px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:80px}.delete-confirm-footer .cancel-btn[data-v-35d1d188]{background-color:#f8f9fa;color:#6c757d;border:1px solid #dee2e6}.delete-confirm-footer .cancel-btn[data-v-35d1d188]:hover{background-color:#e9ecef;color:#495057}.delete-confirm-footer .confirm-btn[data-v-35d1d188]{background-color:#e74c3c;color:#fff}.delete-confirm-footer .confirm-btn[data-v-35d1d188]:hover{background-color:#c0392b;transform:translateY(-1px);box-shadow:0 4px 12px rgba(231,76,60,.3)}.class-detail[data-v-46bb7f4c]{padding:20px;max-width:1200px;margin:0 auto}.back-navigation[data-v-46bb7f4c]{margin-bottom:20px}.back-btn[data-v-46bb7f4c]{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;transition:all .3s ease}.back-btn[data-v-46bb7f4c]:hover{background:#e9ecef;color:#007bff}.class-header[data-v-46bb7f4c]{display:flex;justify-content:space-between;align-items:flex-start;background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);margin-bottom:30px}.class-info[data-v-46bb7f4c]{flex:1}.class-name[data-v-46bb7f4c]{font-size:28px;font-weight:700;color:#333;margin:0 0 10px 0}.class-description[data-v-46bb7f4c]{color:#666;font-size:16px;margin-bottom:20px}.class-meta[data-v-46bb7f4c]{display:flex;flex-wrap:wrap;gap:20px}.meta-item[data-v-46bb7f4c]{display:flex;align-items:center;gap:8px;color:#666;font-size:14px}.meta-item i[data-v-46bb7f4c]{color:#007bff;width:16px}.class-stats[data-v-46bb7f4c]{display:flex;gap:20px}.stat-card[data-v-46bb7f4c]{text-align:center;padding:20px;background:#f8f9fa;border-radius:8px;min-width:100px}.stat-number[data-v-46bb7f4c]{font-size:24px;font-weight:700;color:#007bff;display:block}.stat-label[data-v-46bb7f4c]{font-size:14px;margin-top:5px}.error-state[data-v-46bb7f4c],.loading-state[data-v-46bb7f4c]{text-align:center;padding:60px 20px;color:#666}.error-state i[data-v-46bb7f4c]{color:#dc3545;margin-bottom:20px}.retry-btn[data-v-46bb7f4c]{padding:10px 20px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;margin-top:20px}.exams-section[data-v-46bb7f4c]{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.section-header[data-v-46bb7f4c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.section-header h2[data-v-46bb7f4c]{margin:0;color:#333}.filters[data-v-46bb7f4c]{display:flex;gap:15px}.filter-select[data-v-46bb7f4c],.search-input[data-v-46bb7f4c]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.search-input[data-v-46bb7f4c]{width:200px}.exams-grid[data-v-46bb7f4c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.exam-card[data-v-46bb7f4c]{border:1px solid #e0e0e0;border-radius:8px;padding:20px;cursor:pointer;transition:all .3s ease;background:#fff}.exam-card[data-v-46bb7f4c]:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15);border-color:#007bff}.exam-header[data-v-46bb7f4c]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.exam-title[data-v-46bb7f4c]{font-size:18px;font-weight:700;color:#333;margin:0;flex:1}.exam-info[data-v-46bb7f4c]{margin-bottom:15px}.info-item[data-v-46bb7f4c]{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:14px;color:#666}.info-item i[data-v-46bb7f4c]{width:16px;color:#007bff}.exam-stats[data-v-46bb7f4c]{display:flex;justify-content:space-between;margin-bottom:15px;padding:10px;background:#f8f9fa;border-radius:4px}.stat-item[data-v-46bb7f4c]{text-align:center}.stat-label[data-v-46bb7f4c]{display:block;font-size:12px;color:#666;margin-bottom:2px}.stat-value[data-v-46bb7f4c]{font-weight:700;font-size:14px;color:#333}.stat-value.high[data-v-46bb7f4c]{color:#28a745}.stat-value.low[data-v-46bb7f4c]{color:#dc3545}.exam-actions[data-v-46bb7f4c]{display:flex;gap:10px}.action-btn[data-v-46bb7f4c]{flex:1;padding:8px 12px;border:none;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;gap:5px;transition:all .3s ease}.action-btn.primary[data-v-46bb7f4c]{background:#007bff;color:#fff}.action-btn.primary[data-v-46bb7f4c]:hover{background:#0056b3}.action-btn.secondary[data-v-46bb7f4c]{background:#6c757d;color:#fff}.action-btn.secondary[data-v-46bb7f4c]:hover{background:#545b62}.empty-state[data-v-46bb7f4c]{text-align:center;padding:60px 20px;color:#666}.empty-state i[data-v-46bb7f4c]{color:#ccc;margin-bottom:20px}.empty-state h3[data-v-46bb7f4c]{margin:20px 0 10px;color:#999}@media (max-width:768px){.class-header[data-v-46bb7f4c]{flex-direction:column;gap:20px}.class-stats[data-v-46bb7f4c]{width:100%;justify-content:center}.section-header[data-v-46bb7f4c]{flex-direction:column;gap:15px;align-items:stretch}.filters[data-v-46bb7f4c]{flex-direction:column}.search-input[data-v-46bb7f4c]{width:100%}.exams-grid[data-v-46bb7f4c]{grid-template-columns:1fr}.class-meta[data-v-46bb7f4c]{flex-direction:column;gap:10px}}.students-section[data-v-46bb7f4c]{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px rgba(0,0,0,.1);margin-top:30px}.add-student-btn[data-v-46bb7f4c]{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:background-color .3s ease}.add-student-btn[data-v-46bb7f4c]:hover{background:#0056b3}.student-table[data-v-46bb7f4c]{overflow-x:auto}.student-table table[data-v-46bb7f4c]{width:100%;border-collapse:collapse;margin-top:20px}.student-table td[data-v-46bb7f4c],.student-table th[data-v-46bb7f4c]{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.student-table th[data-v-46bb7f4c]{background:#f8f9fa;font-weight:700;color:#333}.student-table td.actions[data-v-46bb7f4c]{display:flex;gap:8px}.delete-btn[data-v-46bb7f4c],.edit-btn[data-v-46bb7f4c],.history-btn[data-v-46bb7f4c]{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.1);min-width:70px;justify-content:center}.edit-btn[data-v-46bb7f4c]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.edit-btn[data-v-46bb7f4c]:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);transform:translateY(-1px);box-shadow:0 4px 8px rgba(102,126,234,.3)}.history-btn[data-v-46bb7f4c]{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.history-btn[data-v-46bb7f4c]:hover{background:linear-gradient(135deg,#0e8478,#2dd865);transform:translateY(-1px);box-shadow:0 4px 8px rgba(17,153,142,.3)}.delete-btn[data-v-46bb7f4c]{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff}.delete-btn[data-v-46bb7f4c]:hover{background:linear-gradient(135deg,#ff5252,#d32f2f);transform:translateY(-1px);box-shadow:0 4px 8px hsla(0,100%,71%,.3)}.modal-overlay[data-v-46bb7f4c]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(2px);animation:fadeIn-46bb7f4c .3s ease}@keyframes fadeIn-46bb7f4c{0%{opacity:0}to{opacity:1}}.modal-content[data-v-46bb7f4c]{background:#fff;border-radius:12px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.3);animation:slideUp-46bb7f4c .3s ease}@keyframes slideUp-46bb7f4c{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header[data-v-46bb7f4c]{padding:24px 24px 20px;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px 12px 0 0}.modal-header h3[data-v-46bb7f4c]{margin:0;color:#2c3e50;font-size:18px;font-weight:600;display:flex;align-items:center;gap:8px}.modal-header h3[data-v-46bb7f4c]:before{content:"👤";font-size:16px}.close-btn[data-v-46bb7f4c]{background:none;border:none;font-size:20px;cursor:pointer;color:#6c757d;padding:8px;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.close-btn[data-v-46bb7f4c]:hover{color:#495057;background:rgba(0,0,0,.05)}.modal-body[data-v-46bb7f4c]{padding:24px}.form-group[data-v-46bb7f4c]{margin-bottom:24px}.form-group label[data-v-46bb7f4c]{display:block;margin-bottom:8px;font-weight:500;color:#374151;font-size:14px}.form-input[data-v-46bb7f4c],.form-select[data-v-46bb7f4c]{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;transition:all .2s ease;box-sizing:border-box;background:#fff}.form-input[data-v-46bb7f4c]:focus,.form-select[data-v-46bb7f4c]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);background:#fefefe}.form-input[data-v-46bb7f4c]:hover,.form-select[data-v-46bb7f4c]:hover{border-color:#d1d5db}.form-input[readonly][data-v-46bb7f4c]{background-color:#f8f9fa;cursor:not-allowed}.modal-footer[data-v-46bb7f4c]{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px 24px;border-top:1px solid #f0f0f0;background:#fafafa;border-radius:0 0 12px 12px}.cancel-btn[data-v-46bb7f4c],.confirm-btn[data-v-46bb7f4c]{padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:6px;min-width:80px;justify-content:center}.cancel-btn[data-v-46bb7f4c]{background:#fff;color:#6b7280;border:2px solid #e5e7eb}.cancel-btn[data-v-46bb7f4c]:hover{background:#f9fafb;border-color:#d1d5db;color:#4b5563}.confirm-btn[data-v-46bb7f4c]{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 4px rgba(59,130,246,.2)}.confirm-btn[data-v-46bb7f4c]:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 8px rgba(59,130,246,.3);transform:translateY(-1px)}.confirm-btn[data-v-46bb7f4c]:disabled{cursor:not-allowed;opacity:.6}.confirm-btn[data-v-46bb7f4c]:disabled,.confirm-btn[data-v-46bb7f4c]:disabled:hover{background:#9ca3af;box-shadow:none;transform:none}.class-exam-scores[data-v-0e5e5546]{padding:20px;max-width:1400px;margin:0 auto}.back-navigation[data-v-0e5e5546]{margin-bottom:20px}.back-btn[data-v-0e5e5546]{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;transition:all .3s ease}.back-btn[data-v-0e5e5546]:hover{background:#e9ecef;color:#007bff}.exam-header[data-v-0e5e5546]{display:flex;justify-content:space-between;align-items:flex-start;background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);margin-bottom:30px}.exam-info[data-v-0e5e5546]{flex:1}.exam-title[data-v-0e5e5546]{font-size:24px;font-weight:700;color:#333;margin:0 0 15px 0}.exam-meta[data-v-0e5e5546]{display:flex;flex-wrap:wrap;gap:20px}.meta-item[data-v-0e5e5546]{display:flex;align-items:center;gap:8px;color:#666;font-size:14px}.meta-item i[data-v-0e5e5546]{color:#007bff;width:16px}.exam-stats[data-v-0e5e5546]{display:flex;gap:15px}.stat-card[data-v-0e5e5546]{text-align:center;padding:15px;background:#f8f9fa;border-radius:8px;min-width:80px}.stat-number[data-v-0e5e5546]{font-size:20px;font-weight:700;color:#007bff;display:block}.stat-label[data-v-0e5e5546]{font-size:12px;color:#666;margin-top:5px}.error-state[data-v-0e5e5546],.loading-state[data-v-0e5e5546]{text-align:center;padding:60px 20px;color:#666}.error-state i[data-v-0e5e5546]{color:#dc3545;margin-bottom:20px}.retry-btn[data-v-0e5e5546]{padding:10px 20px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;margin-top:20px}.scores-content[data-v-0e5e5546]{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.toolbar[data-v-0e5e5546]{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.search-filters[data-v-0e5e5546]{display:flex;gap:15px;flex:1}.search-input[data-v-0e5e5546]{width:250px}.search-input[data-v-0e5e5546],.sort-select[data-v-0e5e5546]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.sort-select[data-v-0e5e5546]{min-width:150px}.actions[data-v-0e5e5546]{display:flex;gap:10px}.export-btn[data-v-0e5e5546],.stats-btn[data-v-0e5e5546]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:5px;transition:all .3s ease}.export-btn[data-v-0e5e5546]{background:#28a745;color:#fff}.export-btn[data-v-0e5e5546]:hover{background:#218838}.stats-btn[data-v-0e5e5546]{background:#17a2b8;color:#fff}.stats-btn[data-v-0e5e5546]:hover{background:#138496}.scores-table-container[data-v-0e5e5546]{overflow-x:auto;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.scores-table[data-v-0e5e5546]{width:100%;border-collapse:collapse;background:#fff}.scores-table th[data-v-0e5e5546]{background:#f8f9fa;padding:15px 10px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;white-space:nowrap}.scores-table td[data-v-0e5e5546]{padding:15px 10px;border-bottom:1px solid #dee2e6;vertical-align:middle}.scores-table tr[data-v-0e5e5546]:hover{background:#f8f9fa}.scores-table tr.top-score[data-v-0e5e5546]{background:#fff3cd}.scores-table tr.high-score[data-v-0e5e5546]{border-left:4px solid #28a745}.scores-table tr.medium-score[data-v-0e5e5546]{border-left:4px solid #ffc107}.scores-table tr.low-score[data-v-0e5e5546]{border-left:4px solid #dc3545}.rank-col[data-v-0e5e5546]{width:80px;text-align:center}.rank-badge[data-v-0e5e5546]{display:inline-block;width:32px;height:32px;border-radius:50%;background:#6c757d;color:#fff;font-weight:700;line-height:32px;text-align:center;font-size:14px}.rank-badge.gold[data-v-0e5e5546]{background:gold;color:#333}.rank-badge.silver[data-v-0e5e5546]{background:silver;color:#333}.rank-badge.bronze[data-v-0e5e5546]{background:#cd7f32;color:#fff}.student-col[data-v-0e5e5546]{width:150px}.student-info[data-v-0e5e5546]{display:flex;flex-direction:column}.student-name[data-v-0e5e5546]{font-weight:600;color:#333;margin-bottom:2px}.student-number[data-v-0e5e5546]{font-size:12px;color:#666}.score-col[data-v-0e5e5546]{width:100px;text-align:center}.score-display[data-v-0e5e5546]{display:flex;align-items:baseline;justify-content:center;gap:2px}.score-value[data-v-0e5e5546]{font-size:18px;font-weight:700;color:#333}.total-score[data-v-0e5e5546]{font-size:14px;color:#666}.percentage-col[data-v-0e5e5546]{width:120px}.percentage-display[data-v-0e5e5546]{display:flex;flex-direction:column;align-items:center;gap:5px}.percentage-value[data-v-0e5e5546]{font-weight:600;color:#333}.percentage-bar[data-v-0e5e5546]{width:80px;height:6px;background:#e9ecef;border-radius:3px;overflow:hidden}.percentage-fill[data-v-0e5e5546]{height:100%;background:linear-gradient(90deg,#dc3545,#ffc107 50%,#28a745);transition:width .3s ease}.submit-time-col[data-v-0e5e5546],.time-col[data-v-0e5e5546]{width:100px;text-align:center;font-size:14px;color:#666}.status-col[data-v-0e5e5546]{width:80px;text-align:center}.status-badge[data-v-0e5e5546]{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:700}.status-badge.completed[data-v-0e5e5546]{background:#d4edda;color:#155724}.status-badge.in_progress[data-v-0e5e5546]{background:#fff3cd;color:#856404}.status-badge.timeout[data-v-0e5e5546]{background:#f8d7da;color:#721c24}.actions-col[data-v-0e5e5546]{width:100px;text-align:center}.action-btn[data-v-0e5e5546]{padding:6px 8px;margin:0 2px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;color:#495057;transition:all .3s ease}.action-btn[data-v-0e5e5546]:hover{background:#007bff;color:#fff;border-color:#007bff}.empty-state[data-v-0e5e5546]{text-align:center;padding:60px 20px;color:#666}.empty-state i[data-v-0e5e5546]{color:#ccc;margin-bottom:20px}.empty-state h3[data-v-0e5e5546]{margin:20px 0 10px;color:#999}.modal-overlay[data-v-0e5e5546]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-0e5e5546]{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-header[data-v-0e5e5546]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.modal-header h3[data-v-0e5e5546]{margin:0;color:#333}.close-btn[data-v-0e5e5546]{background:none;border:none;font-size:18px;cursor:pointer;color:#666;padding:5px}.stats-content[data-v-0e5e5546]{padding:20px}.stats-grid[data-v-0e5e5546]{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:20px;margin-bottom:30px}.stat-item[data-v-0e5e5546]{text-align:center;padding:15px;background:#f8f9fa;border-radius:8px}.stat-item .stat-label[data-v-0e5e5546]{font-size:14px;color:#666;margin-bottom:5px}.stat-item .stat-value[data-v-0e5e5546]{font-size:20px;font-weight:700;color:#007bff}.score-distribution h4[data-v-0e5e5546]{margin:0 0 20px 0;color:#333}.distribution-bars[data-v-0e5e5546]{display:flex;flex-direction:column;gap:15px}.bar-item[data-v-0e5e5546]{display:flex;align-items:center;gap:15px}.bar-label[data-v-0e5e5546]{width:80px;font-size:14px;color:#666}.bar-container[data-v-0e5e5546]{flex:1;height:20px;background:#e9ecef;border-radius:10px;overflow:hidden}.bar-fill[data-v-0e5e5546]{height:100%;border-radius:10px;transition:width .3s ease}.bar-fill.excellent[data-v-0e5e5546]{background:#28a745}.bar-fill.good[data-v-0e5e5546]{background:#17a2b8}.bar-fill.average[data-v-0e5e5546]{background:#ffc107}.bar-fill.below[data-v-0e5e5546]{background:#fd7e14}.bar-fill.fail[data-v-0e5e5546]{background:#dc3545}.bar-count[data-v-0e5e5546]{width:40px;text-align:right;font-size:14px;color:#666}@media (max-width:1200px){.exam-header[data-v-0e5e5546]{flex-direction:column;gap:20px}.exam-stats[data-v-0e5e5546]{width:100%;justify-content:center}}@media (max-width:768px){.toolbar[data-v-0e5e5546]{flex-direction:column;align-items:stretch}.search-filters[data-v-0e5e5546]{flex-direction:column}.search-input[data-v-0e5e5546]{width:100%}.actions[data-v-0e5e5546]{justify-content:center}.scores-table[data-v-0e5e5546]{font-size:14px}.scores-table td[data-v-0e5e5546],.scores-table th[data-v-0e5e5546]{padding:10px 5px}.exam-meta[data-v-0e5e5546]{flex-direction:column;gap:10px}.stats-grid[data-v-0e5e5546]{grid-template-columns:repeat(2,1fr)}.bar-item[data-v-0e5e5546]{flex-direction:column;align-items:stretch;gap:5px}.bar-count[data-v-0e5e5546],.bar-label[data-v-0e5e5546]{width:auto;text-align:center}}.student-history[data-v-41b397c0]{padding:20px;max-width:1200px;margin:0 auto}.page-header[data-v-41b397c0]{display:flex;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e9ecef}.back-btn[data-v-41b397c0]{background:#6c757d;color:#fff;border:none;padding:10px 15px;border-radius:5px;cursor:pointer;margin-right:20px;display:flex;align-items:center;gap:8px;transition:background-color .3s}.back-btn[data-v-41b397c0]:hover{background:#5a6268}.page-title[data-v-41b397c0]{margin:0;color:#333;font-size:28px}.student-info[data-v-41b397c0]{margin-bottom:30px}.info-card[data-v-41b397c0]{background:#fff;border-radius:10px;padding:25px;box-shadow:0 2px 10px rgba(0,0,0,.1);border-left:4px solid #007bff}.info-card h2[data-v-41b397c0]{margin:0 0 15px 0;color:#333;font-size:24px}.info-details[data-v-41b397c0]{display:flex;gap:30px;flex-wrap:wrap}.info-item[data-v-41b397c0]{align-items:center;gap:8px;color:#666;font-size:14px}.info-item i[data-v-41b397c0]{color:#007bff;width:16px}.error[data-v-41b397c0],.loading[data-v-41b397c0]{text-align:center;padding:40px;font-size:16px}.loading[data-v-41b397c0]{color:#666}.loading i[data-v-41b397c0]{font-size:24px;margin-right:10px}.error[data-v-41b397c0]{color:#dc3545;background:#f8d7da;border:1px solid #f5c6cb;border-radius:5px}.score-chart[data-v-41b397c0]{margin-bottom:30px}.chart-card[data-v-41b397c0]{background:#fff;border-radius:10px;padding:25px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.chart-title[data-v-41b397c0]{margin:0 0 20px 0;color:#333;font-size:20px;text-align:center}.chart-container[data-v-41b397c0]{display:flex;justify-content:center;align-items:center;min-height:400px;position:relative}.chart-container canvas[data-v-41b397c0]{border:1px solid #e9ecef;border-radius:8px;background:#fff}.chart-tooltip[data-v-41b397c0]{position:absolute;background:rgba(0,0,0,.75);color:#fff;padding:6px 8px;border-radius:4px;font-size:12px;white-space:nowrap;pointer-events:none}.score-stats[data-v-41b397c0]{margin-bottom:30px}.stats-card[data-v-41b397c0]{background:#fff;border-radius:10px;padding:25px;box-shadow:0 2px 10px rgba(0,0,0,.1);display:flex;justify-content:space-around;gap:20px}.stat-item[data-v-41b397c0]{text-align:center}.stat-value[data-v-41b397c0]{font-size:32px;font-weight:700;color:#007bff;display:block}.stat-label[data-v-41b397c0]{font-size:14px;color:#666;margin-top:5px}.exam-records[data-v-41b397c0]{background:#fff;border-radius:10px;padding:25px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.empty-state[data-v-41b397c0]{text-align:center;padding:60px 20px;color:#666}.empty-state i[data-v-41b397c0]{font-size:48px;margin-bottom:15px;color:#ccc}.records-list[data-v-41b397c0]{display:flex;flex-direction:column;gap:20px}.record-item[data-v-41b397c0]{border:1px solid #e9ecef;border-radius:8px;padding:20px;transition:box-shadow .3s}.record-item[data-v-41b397c0]:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.record-header[data-v-41b397c0]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.exam-title[data-v-41b397c0]{margin:0;color:#333;font-size:18px}.exam-date[data-v-41b397c0]{color:#666;font-size:14px}.record-content[data-v-41b397c0]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.score-info[data-v-41b397c0]{display:flex;flex-direction:column;align-items:center}.score-main[data-v-41b397c0]{display:flex;align-items:baseline;gap:5px}.score-value[data-v-41b397c0]{font-size:32px}.score-good[data-v-41b397c0]{color:#007bff}.score-total[data-v-41b397c0]{font-size:18px;color:#666}.score-percentage[data-v-41b397c0]{font-size:14px;color:#666;margin-top:5px}.record-details[data-v-41b397c0]{display:flex;flex-direction:column;gap:8px}.detail-item[data-v-41b397c0]{display:flex;gap:10px;font-size:14px}.detail-item .label[data-v-41b397c0]{color:#666;min-width:60px}.detail-item .value[data-v-41b397c0]{color:#333}.status-completed[data-v-41b397c0]{color:#28a745}.status-in_progress[data-v-41b397c0]{color:#ffc107}.status-not_started[data-v-41b397c0]{color:#6c757d}.status-expired[data-v-41b397c0]{color:#dc3545}.record-actions[data-v-41b397c0]{display:flex;gap:10px;justify-content:flex-end}.action-btn[data-v-41b397c0]{padding:8px 15px;border:none;border-radius:5px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:5px;transition:background-color .3s}.view-detail-btn[data-v-41b397c0]{background:#007bff;color:#fff}.view-detail-btn[data-v-41b397c0]:hover{background:#0056b3}.detail-modal-overlay[data-v-41b397c0]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.detail-modal[data-v-41b397c0]{background:#fff;border-radius:8px;width:100%;max-width:900px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px rgba(0,0,0,.15)}.modal-header[data-v-41b397c0]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb;border-radius:8px 8px 0 0}.modal-title[data-v-41b397c0]{margin:0;font-size:18px;color:#111827}.close-btn[data-v-41b397c0]{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;padding:4px 8px;border-radius:4px;transition:all .2s}.close-btn[data-v-41b397c0]:hover{background:#f3f4f6;color:#374151}.modal-body[data-v-41b397c0]{flex:1;overflow-y:auto;padding:24px}.error-state[data-v-41b397c0],.loading-state[data-v-41b397c0]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b7280}.loading-spinner[data-v-41b397c0]{width:32px;height:32px;border:3px solid #f3f4f6;border-top:3px solid #3b82f6;border-radius:50%;animation:spin-41b397c0 1s linear infinite;margin-bottom:16px}@keyframes spin-41b397c0{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.report-content[data-v-41b397c0]{display:flex;flex-direction:column;gap:24px}.info-section[data-v-41b397c0]{background:#f9fafb;padding:20px;border-radius:6px;border:1px solid #e5e7eb}.info-grid[data-v-41b397c0]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-item[data-v-41b397c0]{display:flex;flex-direction:column;gap:4px}.info-label[data-v-41b397c0]{font-weight:500;color:#6b7280}.info-value[data-v-41b397c0]{font-weight:600;color:#111827}.score-section[data-v-41b397c0]{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.section-title[data-v-41b397c0]{margin:0;padding:16px 20px;background:#f3f4f6;border-bottom:1px solid #e5e7eb;font-size:16px;font-weight:600;color:#374151}.score-grid[data-v-41b397c0]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0}.score-item[data-v-41b397c0]{padding:20px;text-align:center;border-right:1px solid #e5e7eb;background:#fff}.score-item[data-v-41b397c0]:last-child{border-right:none}.score-label[data-v-41b397c0]{font-size:14px;color:#6b7280;margin-bottom:8px}.score-value[data-v-41b397c0]{font-size:24px;font-weight:700;color:#111827}.parts-section[data-v-41b397c0],.questions-section[data-v-41b397c0]{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.table-container[data-v-41b397c0]{overflow-x:auto}.data-table[data-v-41b397c0]{width:100%;border-collapse:collapse;background:#fff}.data-table th[data-v-41b397c0]{background:#f3f4f6;padding:12px 16px;text-align:left;font-weight:600;font-size:14px;color:#374151;border-bottom:1px solid #e5e7eb}.data-table td[data-v-41b397c0]{padding:12px 16px;border-bottom:1px solid #f3f4f6;font-size:14px;color:#374151}.data-table tbody tr[data-v-41b397c0]:hover{background:#f9fafb}.data-table tbody tr:last-child td[data-v-41b397c0]{border-bottom:none}.answer-cell[data-v-41b397c0]{max-width:150px;word-wrap:break-word;white-space:pre-wrap;line-height:1.4}.score-perfect[data-v-41b397c0]{color:#059669;font-weight:600}.score-good[data-v-41b397c0]{color:#0284c7;font-weight:600}.score-pass[data-v-41b397c0]{color:#d97706;font-weight:600}.score-fail[data-v-41b397c0]{color:#dc2626;font-weight:600}.score-zero[data-v-41b397c0]{color:#6b7280;font-weight:600}@media (max-width:768px){.detail-modal-overlay[data-v-41b397c0]{padding:10px}.detail-modal[data-v-41b397c0]{max-height:90vh}.modal-header[data-v-41b397c0]{padding:16px 20px}.modal-title[data-v-41b397c0]{font-size:16px}.modal-body[data-v-41b397c0]{padding:20px}.info-grid[data-v-41b397c0],.score-grid[data-v-41b397c0]{grid-template-columns:1fr}.score-item[data-v-41b397c0]{border-right:none;border-bottom:1px solid #e5e7eb}.score-item[data-v-41b397c0]:last-child{border-bottom:none}.data-table td[data-v-41b397c0],.data-table th[data-v-41b397c0]{padding:10px 12px;font-size:13px}.answer-cell[data-v-41b397c0]{max-width:100px}}.error-state[data-v-41b397c0],.loading-state[data-v-41b397c0]{text-align:center;padding:40px 20px}.loading-state[data-v-41b397c0]{color:#6c757d}.error-state[data-v-41b397c0]{color:#dc3545}.report-content[data-v-41b397c0]{max-width:100%}.report-section[data-v-41b397c0]{margin-bottom:30px}.section-title[data-v-41b397c0]{font-size:18px;font-weight:700;color:#333;margin-bottom:15px;padding-bottom:8px;border-bottom:2px solid #007bff}.basic-info[data-v-41b397c0]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:20px}.info-item[data-v-41b397c0]{background:#f8f9fa;padding:12px 15px;border-radius:5px;border-left:3px solid #007bff}.info-label[data-v-41b397c0]{font-weight:700;color:#495057;font-size:14px}.info-value[data-v-41b397c0]{color:#333;font-size:16px;margin-top:4px}.report-table[data-v-41b397c0]{width:100%;border-collapse:collapse;margin-top:15px;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}.report-table td[data-v-41b397c0],.report-table th[data-v-41b397c0]{padding:12px 15px;text-align:left;border-bottom:1px solid #e9ecef}.report-table th[data-v-41b397c0]{background:#f8f9fa;font-weight:700;color:#495057;font-size:14px}.report-table tbody tr[data-v-41b397c0]:hover{background:#f8f9fa}.report-table tbody tr:last-child td[data-v-41b397c0]{border-bottom:none}.score-cell[data-v-41b397c0]{font-weight:700}.score-excellent[data-v-41b397c0]{color:#28a745}.score-good[data-v-41b397c0]{color:#17a2b8}.score-pass[data-v-41b397c0]{color:#ffc107}.score-fail[data-v-41b397c0]{color:#dc3545}.correct-row td[data-v-41b397c0]{background-color:#d4edda!important;color:#155724;font-weight:500}.incorrect-row td[data-v-41b397c0]{background-color:#f8d7da!important;color:#721c24;font-weight:500}.unanswered-row td[data-v-41b397c0]{background-color:#fff3cd!important;color:#856404;font-style:italic}.modal-overlay[data-v-41b397c0]{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.confirm-modal[data-v-41b397c0]{background:#fff;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.15);max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header[data-v-41b397c0]{padding:20px 20px 0;border-bottom:1px solid #e9ecef}.modal-title[data-v-41b397c0]{margin:0 0 15px 0;color:#dc3545;font-size:1.25rem;font-weight:600}.modal-body[data-v-41b397c0]{padding:20px}.modal-body p[data-v-41b397c0]{margin-bottom:15px;color:#495057}.warning-text[data-v-41b397c0]{color:#dc3545!important;font-weight:500;display:flex;align-items:center;gap:8px;background:#f8d7da;padding:10px;border-radius:4px;border-left:4px solid #dc3545}.record-info[data-v-41b397c0]{background:#f8f9fa;padding:15px;border-radius:4px;border-left:4px solid #007bff;margin-top:15px;line-height:1.6}.modal-footer[data-v-41b397c0]{padding:15px 20px 20px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #e9ecef}.btn-danger[data-v-41b397c0]{background:#dc3545;color:#fff;border:1px solid #dc3545;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-danger[data-v-41b397c0]:hover:not(:disabled){background:#c82333;border-color:#bd2130}.btn-danger[data-v-41b397c0]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-41b397c0]{background:#6c757d;color:#fff;border:1px solid #6c757d;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-secondary[data-v-41b397c0]:hover:not(:disabled){background:#5a6268;border-color:#545b62}.btn-secondary[data-v-41b397c0]:disabled{opacity:.6;cursor:not-allowed}@media (max-width:768px){.student-history[data-v-41b397c0]{padding:15px}.page-header[data-v-41b397c0]{align-items:flex-start}.info-details[data-v-41b397c0],.page-header[data-v-41b397c0],.record-content[data-v-41b397c0],.stats-card[data-v-41b397c0]{flex-direction:column;gap:15px}.record-header[data-v-41b397c0]{flex-direction:column;align-items:flex-start;gap:10px}}.error-boundary[data-v-b81f614c]{display:flex;align-items:center;justify-content:center;min-height:400px;padding:20px;background-color:#f8f9fa}.error-content[data-v-b81f614c]{text-align:center;max-width:600px;background:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.1);border:1px solid #e9ecef}.error-icon[data-v-b81f614c]{margin-bottom:24px;display:flex;justify-content:center}.error-title[data-v-b81f614c]{color:#dc3545;font-size:24px;font-weight:600;margin-bottom:16px;margin-top:0}.error-message[data-v-b81f614c]{color:#6c757d;font-size:16px;line-height:1.6;margin-bottom:32px;margin-top:0}.error-actions[data-v-b81f614c]{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}.btn[data-v-b81f614c]{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:100px}.btn-primary[data-v-b81f614c]{background-color:#007bff;color:#fff}.btn-primary[data-v-b81f614c]:hover{background-color:#0056b3;transform:translateY(-1px)}.btn-secondary[data-v-b81f614c]{background-color:#6c757d;color:#fff}.btn-secondary[data-v-b81f614c]:hover{background-color:#545b62;transform:translateY(-1px)}.btn-outline[data-v-b81f614c]{background-color:transparent;color:#007bff;border:2px solid #007bff}.btn-outline[data-v-b81f614c]:hover{background-color:#007bff;color:#fff;transform:translateY(-1px)}.error-details[data-v-b81f614c]{text-align:left;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px;margin-top:20px}.error-details h4[data-v-b81f614c]{color:#495057;font-size:16px;margin-bottom:12px;margin-top:0}.error-details pre[data-v-b81f614c]{background-color:#fff;border:1px solid #dee2e6;border-radius:4px;padding:12px;font-size:12px;line-height:1.4;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;color:#495057;margin:0}@media (max-width:768px){.error-content[data-v-b81f614c]{padding:24px;margin:0 16px}.error-title[data-v-b81f614c]{font-size:20px}.error-message[data-v-b81f614c]{font-size:14px}.error-actions[data-v-b81f614c]{flex-direction:column;align-items:center}.btn[data-v-b81f614c]{width:100%;max-width:200px}}.error-content[data-v-b81f614c]{animation:fadeInUp-b81f614c .5s ease-out}@keyframes fadeInUp-b81f614c{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}