body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}*,body{margin:0}*{box-sizing:border-box;padding:0}#root,.home-container{min-height:100vh}.home-container{padding:40px 20px}.home-header{color:#fff;margin-bottom:40px;text-align:center}.home-header h1{color:#fff;font-size:48px;margin-bottom:10px;text-shadow:2px 2px 4px #0003}.subtitle{font-size:20px;opacity:.9}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.info-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;display:flex;gap:16px;padding:24px;transition:transform .3s ease}.info-card:hover{box-shadow:0 8px 12px #00000026;transform:translateY(-4px)}.info-icon{font-size:48px}.info-content h3{color:#667eea;font-size:32px;margin:0 0 4px}.info-content p{color:#666;font-size:14px;margin:0}.main-actions{margin-bottom:30px}.action-buttons{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:30px}.action-btn{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border:2px solid #0000;border-radius:12px;cursor:pointer;padding:30px;text-align:center;transition:all .3s ease}.action-btn:hover{border-color:#667eea;box-shadow:0 8px 16px #0003;transform:translateY(-4px)}.action-icon{font-size:64px;margin-bottom:16px}.action-btn h3{color:#333;margin-bottom:8px}.action-btn p{color:#666;font-size:14px;margin:0}.recent-exams{display:flex;flex-direction:column;gap:12px;margin-top:20px}.exam-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;padding:16px;transition:background .2s ease}.exam-item:hover{background:#e9ecef}.exam-info h4{color:#333;margin:0 0 4px}.exam-badge{border-radius:20px;font-size:14px;font-weight:600;padding:8px 16px}.exam-badge.passed{background:#d4edda;color:#155724}.exam-badge.failed{background:#f8d7da;color:#721c24}.footer-info{color:#fff;margin-top:40px;padding:20px;text-align:center}.footer-info p{font-size:18px;opacity:.9}@media (max-width:768px){.home-header h1{font-size:32px}.action-buttons,.info-grid{grid-template-columns:1fr}}.exam-config-container{align-items:center;display:flex;min-height:100vh;padding:40px 20px}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.form-control{border:2px solid #e0e0e0;border-radius:8px;font-size:16px;padding:12px;transition:border-color .3s ease;width:100%}.form-control:focus{border-color:#667eea;outline:none}.button-group{display:flex;gap:12px;margin-top:30px}.button-group button{flex:1 1}@media (max-width:768px){.exam-config-container{align-items:stretch;padding:20px 12px}.button-group{flex-direction:column}}.exam-page-container{min-height:100vh;padding:20px}.exam-header{margin-bottom:20px}.exam-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.exam-timer{color:#333;display:flex;font-weight:600;justify-content:flex-end;margin-bottom:12px}.exam-info h2{margin:0}.exam-info p{color:#666;font-size:14px;margin:0}.progress-bar{background:#e0e0e0;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(135deg,#667eea,#764ba2);height:100%;transition:width .3s ease}.question-card,.question-header{margin-bottom:20px}.question-header{display:flex;justify-content:space-between}.question-number{border-radius:4px;font-weight:600}.question-category{background:#f0f0f0;border-radius:4px;color:#666;padding:6px 12px}.question-text{font-size:20px;margin-bottom:12px;white-space:pre-line}.question-note{margin-bottom:20px;padding:12px}.ai-panel{margin-top:16px}.ai-panel-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.ai-panel-title{color:#0b0f19;font-weight:700;letter-spacing:.3px}.btn-ai{background:linear-gradient(135deg,#0ea5e9,#6366f1);border:none;box-shadow:0 8px 18px #0ea5e940;color:#fff;font-weight:700}.btn-ai:hover:not(:disabled){box-shadow:0 12px 22px #6366f159;transform:translateY(-1px)}.btn-ai:disabled{cursor:not-allowed;opacity:.6}.ai-result{background:#f3f6ff;border:1px solid #dbe3ff;border-radius:6px;padding:12px}.ai-title{color:#2c3e50;font-weight:600;margin-bottom:6px}.ai-suggestion{color:#1f2a44;font-size:16px;font-weight:700;margin-bottom:8px}.ai-suggestion-llm{color:#475569;font-size:14px;font-weight:600;margin-top:-4px}.ai-explanation{color:#2c3e50;font-size:14px;line-height:1.5;margin-bottom:10px}.ai-ranked{color:#555;font-size:13px}.ai-ranked-item{margin-bottom:4px}.ai-error{color:#b00020;font-size:13px}.ai-ask{border-top:1px solid #e2e8f0;margin-top:16px;padding-top:12px}.ai-ask-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.btn-ai-secondary{background:#0f172a;border:none;color:#fff;font-weight:600}.btn-ai-secondary:hover:not(:disabled){box-shadow:0 10px 18px #0f172a40;transform:translateY(-1px)}.btn-ai-secondary:disabled{cursor:not-allowed;opacity:.6}.ai-ask-input{background:#fff;border:1px solid #d0d7e2;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;resize:vertical;width:100%}.ai-ask-result{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin-top:10px;padding:10px 12px}.ai-ask-response{color:#1f2937;font-size:14px;line-height:1.6}.ai-ask-response code{background:#f1f5f9;border-radius:3px;color:#e53e3e;font-family:Monaco,Courier New,monospace;font-size:13px;padding:2px 6px}.ai-ask-response pre{background:#1e1e1e!important;border:1px solid #334155;border-radius:8px;margin:12px 0!important;overflow-x:auto;padding:16px!important}.ai-ask-response pre code{background:#0000!important;color:inherit!important;font-size:13px;line-height:1.5;padding:0!important}.ai-ask-response strong{color:#0f172a;font-weight:600}.ai-ask-response blockquote,.ai-ask-response em{color:#475569;font-style:italic}.ai-ask-response blockquote{border-left:4px solid #667eea;margin:12px 0;padding-left:16px}.ai-ask-response hr{border:none;border-top:1px solid #e2e8f0;margin:16px 0}.ai-ask-response a{color:#667eea;text-decoration:none}.ai-ask-response a:hover{text-decoration:underline}.ai-ask-sources{border-top:1px solid #e2e8f0;color:#475569;font-size:12px;margin-top:12px;padding-top:12px}.ai-ask-source{background:#f8fafc;border-left:3px solid #667eea;border-radius:4px;margin-bottom:6px;padding:4px 8px}.options{display:flex;flex-direction:column;gap:12px}.jump-group{align-items:center;display:flex;gap:10px}.jump-input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;width:120px}.jump-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea33;outline:none}.option{align-items:center;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;padding:16px;transition:all .2s ease}.option:hover{background:#f8f9fa;border-color:#667eea}.option.selected{background:#e7f0ff;border-color:#667eea}.option-letter{background:#667eea;font-weight:600;margin-right:12px}.option.selected .option-letter{background:#28a745}.navigation{display:flex;gap:12px;justify-content:space-between}.navigation button{flex:1 1;max-width:200px}@media (max-width:768px){.exam-info{align-items:flex-start;flex-direction:column;gap:6px}.exam-timer{justify-content:flex-start;margin-bottom:8px}.question-header{align-items:flex-start;flex-direction:column;gap:10px}.question-text{font-size:18px}.jump-group{align-items:stretch;flex-direction:column}.jump-input{width:100%}.navigation{align-items:stretch;flex-direction:column}.navigation button{max-width:none}.ai-panel-header{align-items:flex-start;flex-direction:column}}.option.correct{background-color:#d4edda!important;border-color:#28a745!important}.option.wrong{background-color:#f8d7da!important;border-color:#dc3545!important}.feedback-icon{font-size:24px;font-weight:700;margin-left:auto}.option.correct .feedback-icon{color:#28a745}.option.wrong .feedback-icon{color:#dc3545}.immediate-feedback{margin-top:24px}.feedback-box{border:2px solid;border-radius:8px;padding:20px}.feedback-box.correct{background:#d4edda;border-color:#28a745}.feedback-box.incorrect{background:#f8d7da;border-color:#dc3545}.feedback-header{font-size:20px;font-weight:700;margin-bottom:12px}.feedback-box.correct .feedback-header{color:#155724}.feedback-box.incorrect .feedback-header{color:#721c24}.feedback-correct-answer{background:#ffffff80;border-radius:4px;margin:12px 0;padding:12px}.feedback-explanation{background:#e7f3ff;border-left:4px solid #007bff;border-radius:4px;margin-top:16px;padding:16px}.feedback-explanation strong{color:#007bff;display:block;margin-bottom:8px}.feedback-explanation p{color:#333;line-height:1.6;margin:0}.btn-warning{background:#ffc107;color:#000;font-weight:600}.btn-warning:hover:not(:disabled){background:#e0a800}.btn-warning:disabled{background:#f0f0f0;color:#999;cursor:not-allowed}.btn-danger{font-weight:600}.btn-danger:hover:not(:disabled){background:#c82333}.results-container{min-height:100vh;padding:40px 20px}.results-header{padding:40px;text-align:center}.results-header.passed{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745}.results-header.failed{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:2px solid #dc3545}.result-icon{font-size:80px;margin-bottom:20px}.results-header h1{font-size:36px;margin-bottom:12px}.result-message{color:#666;font-size:18px}.score-card{align-items:center;display:flex;flex-wrap:wrap;gap:40px;justify-content:space-around;padding:40px}.score-circle{height:200px;position:relative;width:200px}.score-text{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.score-text h2{color:#333;font-size:48px;margin:0}.score-text p{color:#666;margin:0}.score-details{display:flex;flex-direction:column;gap:16px}.detail-item{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;min-width:300px;padding:12px 0}.detail-label{color:#666}.detail-value{color:#333;font-weight:600}.detail-badge{border-radius:4px;font-weight:600;padding:6px 12px}.detail-badge.passed{background:#d4edda;color:#155724}.detail-badge.failed{background:#f8d7da;color:#721c24}.review-section{margin-top:30px}.questions-review{display:flex;flex-direction:column;gap:16px;margin-top:20px}.review-item{border-left:4px solid;border-radius:8px;padding:20px}.review-item.correct{background:#d4edda;border-color:#28a745}.review-item.incorrect{background:#f8d7da;border-color:#dc3545}.review-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.review-number{color:#333;font-weight:600}.review-status{border-radius:4px;font-weight:600;padding:4px 8px}.review-status.correct{color:#155724}.review-status.incorrect{color:#721c24}.review-question{font-weight:500;margin-bottom:12px}.review-answers{display:flex;flex-direction:column;font-size:14px;gap:8px;margin-top:12px}.review-explanation{background:#fff;font-size:14px;margin-top:12px;padding:12px}.results-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:40px}@media (max-width:768px){.score-card{flex-direction:column}.detail-item{min-width:auto}.results-actions{flex-direction:column}.results-actions button{width:100%}}.review-note{background:#fff3cd;border-left:4px solid #ffc107;font-size:14px;margin:16px 0;padding:12px}.review-all-options{display:flex;flex-direction:column;gap:12px;margin:20px 0}.review-option{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;padding:16px;transition:all .3s ease}.review-option.option-correct{background:#d4edda;border-color:#28a745}.review-option.option-wrong{background:#f8d7da;border-color:#dc3545}.option-header{align-items:center;display:flex;gap:12px;margin-bottom:8px}.option-letter{background:#007bff;color:#fff;display:flex;font-size:16px}.review-option.option-correct .option-letter{background:#28a745}.review-option.option-wrong .option-letter{background:#dc3545}.option-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px}.option-badge.correct{background:#28a745;color:#fff}.option-badge.wrong{background:#dc3545;color:#fff}.option-badge.correct-choice{background:#17a2b8;color:#fff}.option-text{line-height:1.6;padding-left:44px}.review-explanation{background:#e7f3ff;border-left:4px solid #007bff;border-radius:4px;margin-top:20px;padding:16px}.review-explanation p{color:#333;line-height:1.6;margin:8px 0 0}.review-explanation strong{color:#007bff;display:block;margin-bottom:8px}.answer-key-container{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:40px 20px}.answer-key-header{background:#fff;margin-bottom:30px;padding:40px;text-align:center}.header-icon{font-size:4rem;margin-bottom:20px}.answer-key-header h1{color:#333;font-size:2.5rem;margin:0 0 10px}.header-subtitle{color:#666;font-size:1.2rem;margin:10px 0}.header-info{color:#555;font-size:1rem;margin:15px 0 0}.header-info strong{color:#667eea;font-size:1.1rem}.answer-key-section{margin-bottom:30px}.answer-key-section h2{border-bottom:3px solid #667eea;color:#333;font-size:1.8rem;margin:0 0 25px;padding-bottom:10px}.questions-list{display:flex;flex-direction:column;gap:25px}.answer-key-item{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:25px}.answer-key-item-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:15px}.question-number{background:#667eea;border-radius:6px;color:#fff;font-size:1rem;font-weight:700;padding:6px 12px}.question-category{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:.85rem;font-weight:500;padding:5px 12px}.question-text{color:#333;font-size:1.1rem;line-height:1.6;margin:15px 0;white-space:pre-wrap}.question-note{background:#fff3cd;border-left:4px solid #ffc107;border-radius:4px;color:#856404;font-size:.95rem;margin:15px 0;padding:12px 15px}.question-note strong{color:#856404}.options-list{display:flex;flex-direction:column;gap:12px;margin:20px 0}.option-item{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:6px;display:flex;justify-content:space-between;padding:15px;transition:all .3s ease}.option-item.correct-option{background:#f1f8f4;border-color:#28a745}.option-content{align-items:flex-start;display:flex;flex:1 1;gap:12px}.option-letter{align-items:center;background:#e0e0e0;border-radius:50%;color:#333;display:inline-flex;flex-shrink:0;font-size:.9rem;font-weight:700;height:32px;justify-content:center;width:32px}.option-item.correct-option .option-letter{background:#28a745;color:#fff}.option-text{color:#333;flex:1 1;font-size:1rem;line-height:1.5;margin:0;padding-top:4px}.correct-badge{background:#28a745;border-radius:20px;color:#fff;flex-shrink:0;font-size:.85rem;font-weight:600;padding:6px 12px;white-space:nowrap}.explanation{background:#e8f4fd;border-left:4px solid #2196f3;border-radius:4px;color:#333;font-size:.95rem;margin-top:20px;padding:15px}.explanation strong{color:#1976d2;display:block;margin-bottom:8px}.explanation p{line-height:1.6;margin:0}.answer-key-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:30px}@media (max-width:768px){.answer-key-container{padding:20px 10px}.answer-key-header{padding:30px 20px}.answer-key-header h1{font-size:2rem}.header-subtitle{font-size:1rem}.answer-key-item{padding:20px 15px}.question-text{font-size:1rem}.option-content{gap:8px}.option-content,.option-item{align-items:flex-start;flex-direction:column}.option-item{gap:10px}.correct-badge{align-self:flex-start}.answer-key-actions{flex-direction:column}.answer-key-actions button{width:100%}}.App{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.container{margin:0 auto;max-width:1200px;padding:20px}.card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;margin-bottom:20px;padding:30px}.btn{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:16px;font-weight:600;padding:12px 24px;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.btn-secondary{background:#6c757d;color:#fff}.btn-success{background:#28a745;color:#fff}.btn-danger{background:#dc3545;color:#fff}.btn-large{font-size:18px;padding:16px 32px}h1,h2,h3{color:#333;margin-bottom:20px}.text-center{text-align:center}.mt-20{margin-top:20px}.mb-20{margin-bottom:20px}.loading{align-items:center;color:#fff;display:flex;font-size:24px;justify-content:center;min-height:50vh}.spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:40px;margin:0 auto 20px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.e81f1278.css.map*/