:root{--primary-color: #4a90e2;--secondary-color: #f5f5f5;--correct-color: #4caf50;--incorrect-color: #f44336;--text-color: #333;--light-text-color: #fff;--border-color: #ddd;--shadow-color: rgba(0, 0, 0, .1)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;background-color:var(--secondary-color);color:var(--text-color);margin:0;display:flex;justify-content:center;align-items:center;min-height:100vh}.app-container{width:100%;max-width:1000px;background-color:var(--light-text-color);border-radius:8px;box-shadow:0 4px 15px var(--shadow-color);overflow:hidden;margin:20px}.centered-container{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px;text-align:center}.spinner{border:4px solid rgba(0,0,0,.1);width:36px;height:36px;border-radius:50%;border-left-color:var(--primary-color);animation:spin 1s ease infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container{text-align:center}.loading-container p{margin-top:15px;color:#666;font-size:1.1rem}.error-container{text-align:center;max-width:500px;padding:30px;border:2px solid var(--incorrect-color);border-radius:8px;background-color:#ffeaea}.error-container h2{color:var(--incorrect-color);margin-bottom:15px}.error-message{color:#666;margin-bottom:20px;line-height:1.5}.form-container{width:100%;max-width:500px;text-align:center}.form-container h1{color:var(--primary-color);margin-bottom:20px;font-size:2.2rem}.form-container p{color:#666;margin-bottom:15px;line-height:1.5}.input-group{margin-bottom:25px;text-align:left}.input-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color)}.form-input{width:100%;padding:14px;margin-bottom:5px;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease;box-sizing:border-box}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a90e21a}.form-input.input-error{border-color:var(--incorrect-color)}.error-text{color:var(--incorrect-color);font-size:.85rem;margin-top:5px;display:block}.btn{background-color:var(--primary-color);color:var(--light-text-color);border:none;padding:14px 28px;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;min-width:140px}.btn:disabled{background-color:#a0a0a0;cursor:not-allowed;transform:none}.btn:not(:disabled):hover{background-color:#357abd;transform:translateY(-2px);box-shadow:0 4px 12px #4a90e24d}.btn-start{font-size:1.1rem;padding:16px 32px;margin-top:10px}.quiz-info{margin-top:40px;padding:25px;background-color:#f8f9fa;border-radius:8px;border-left:4px solid var(--primary-color)}.quiz-info h3{margin-top:0;margin-bottom:15px;color:var(--primary-color)}.quiz-info ul{text-align:left;margin:0;padding-left:20px}.quiz-info li{margin-bottom:8px;color:#555}.quiz-layout{display:flex;flex-direction:row}.overview-panel{width:250px;border-right:1px solid var(--border-color);padding:20px;background-color:#f9f9f9}.overview-panel h3{margin-top:0;color:var(--primary-color)}.overview-panel h4{margin:20px 0 10px;color:var(--text-color)}.progress-stats{display:flex;justify-content:space-between;margin-bottom:20px;padding:15px;background-color:var(--light-text-color);border-radius:8px;border:1px solid var(--border-color)}.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-number{font-size:1.5rem;font-weight:700;color:var(--primary-color)}.stat-label{font-size:.8rem;color:#666;margin-top:2px}.question-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:20px}.question-nav-item{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;border:2px solid var(--border-color);background-color:#fff;transition:all .2s ease;font-size:.9rem;font-weight:500}.question-nav-item:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}.question-nav-item.visited{background-color:#e3f2fd;border-color:#90caf9;color:#1976d2}.question-nav-item.attempted{background-color:var(--primary-color);color:var(--light-text-color);border-color:var(--primary-color)}.question-nav-item.current{box-shadow:0 0 0 3px #4a90e24d;transform:scale(1.1);z-index:1}.legend{border-top:1px solid var(--border-color);padding-top:15px}.legend-item{display:flex;align-items:center;margin-bottom:8px;font-size:.85rem}.legend-color{width:16px;height:16px;border-radius:50%;margin-right:8px;border:2px solid var(--border-color)}.legend-color.attempted{background-color:var(--primary-color);border-color:var(--primary-color)}.legend-color.visited{background-color:#e3f2fd;border-color:#90caf9}.legend-color.current{background-color:#fff;border-color:var(--primary-color);box-shadow:0 0 0 2px #4a90e24d}.quiz-main{flex-grow:1;padding:20px}.quiz-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:10px;margin-bottom:20px}.timer{font-size:1.2rem;font-weight:700;color:var(--primary-color);display:flex;align-items:center;gap:8px;padding:8px 16px;border:2px solid var(--primary-color);border-radius:8px;background-color:#4a90e21a;transition:all .3s ease}.timer-warning{color:var(--incorrect-color);border-color:var(--incorrect-color);background-color:#f443361a;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.timer-label{font-size:.9rem;font-weight:400}.timer-value{font-size:1.3rem;font-weight:700;font-family:Courier New,monospace}.question-container{animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.question-header{display:flex;gap:15px;margin-bottom:20px;flex-wrap:wrap}.question-category,.question-difficulty,.question-type{padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:500;text-transform:capitalize}.question-category{background-color:#e3f2fd;color:#1976d2;border:1px solid #90caf9}.question-difficulty{background-color:#f3e5f5;color:#7b1fa2;border:1px solid #ce93d8}.question-type{background-color:#e8f5e8;color:#388e3c;border:1px solid #a5d6a7}.question-text{font-size:1.2rem;margin-bottom:25px;line-height:1.6;font-weight:500}.options-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:12px}.option-item{padding:18px;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:12px;background-color:#fff;animation:slideInLeft .4s ease-out;animation-fill-mode:both}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.option-item:hover{background-color:#f8f9fa;border-color:var(--primary-color);transform:translate(5px);box-shadow:0 4px 12px #4a90e226}.option-item.selected{background-color:var(--primary-color);color:var(--light-text-color);border-color:var(--primary-color);transform:translate(5px);box-shadow:0 4px 15px #4a90e24d}.option-letter{font-weight:700;font-size:1.1rem;min-width:24px;display:flex;align-items:center;justify-content:center}.option-text{flex:1;font-size:1rem;line-height:1.4}.quiz-actions{margin-top:40px;text-align:right;padding-top:20px;border-top:1px solid var(--border-color)}.report-page{max-width:900px;margin:0 auto;padding:30px}.report-page h1{color:var(--primary-color);text-align:center;margin-bottom:20px;font-size:2.5rem}.user-info{text-align:center;margin-bottom:30px;padding:20px;background-color:#f8f9fa;border-radius:8px}.user-info p{margin:5px 0;color:#666}.score-summary{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:40px}.score-card{background:linear-gradient(135deg,var(--primary-color),#357abd);color:#fff;padding:30px;border-radius:12px;text-align:center;box-shadow:0 8px 25px #4a90e24d}.score-card h2{margin:0 0 20px;font-size:1.3rem;opacity:.9}.score-display{display:flex;align-items:baseline;justify-content:center;margin-bottom:10px}.score-number{font-size:4rem;font-weight:700;line-height:1}.score-total{font-size:2rem;margin-left:10px;opacity:.8}.percentage{font-size:1.5rem;font-weight:700;margin-bottom:15px}.performance-message{font-size:1.1rem;margin:0;opacity:.9}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.stat-box{background-color:#fff;padding:20px;border-radius:8px;text-align:center;border:2px solid #e0e0e0;transition:all .3s ease}.stat-box:hover{border-color:var(--primary-color);transform:translateY(-2px)}.stat-value{display:block;font-size:2rem;font-weight:700;color:var(--primary-color);line-height:1}.stat-label{display:block;font-size:.9rem;color:#666;margin-top:5px;text-transform:uppercase;letter-spacing:.5px}.questions-review h3{color:var(--primary-color);margin-bottom:25px;font-size:1.8rem;text-align:center}.report-question{text-align:left;margin-bottom:25px;padding:25px;border-radius:8px;border-left:4px solid #ddd;background-color:#fff;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.report-question:hover{transform:translateY(-2px);box-shadow:0 4px 15px #00000026}.report-question.correct{border-left-color:var(--correct-color);background-color:#f8fff8}.report-question.incorrect{border-left-color:var(--incorrect-color);background-color:#fff8f8}.report-question.unanswered{border-left-color:#ffa726;background-color:#fff9f0}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.question-number{font-weight:700;color:var(--primary-color);font-size:1.1rem}.result-icon{font-size:1.5rem}.question-text{font-size:1.1rem;margin-bottom:15px;line-height:1.5}.answer-comparison{margin-bottom:15px}.answer-comparison p{margin:8px 0;padding:12px;border-radius:6px}.user-answer.correct{background-color:#4caf501a;color:var(--correct-color);border:1px solid rgba(76,175,80,.3)}.user-answer.incorrect{background-color:#f443361a;color:var(--incorrect-color);border:1px solid rgba(244,67,54,.3)}.user-answer.unanswered{background-color:#ffa7261a;color:#f57c00;border:1px solid rgba(255,167,38,.3)}.correct-answer{background-color:#4caf501a;color:var(--correct-color);border:1px solid rgba(76,175,80,.3)}.not-answered{font-style:italic;color:#999}.question-meta{display:flex;gap:15px;margin-top:15px}.category,.difficulty{padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:500;text-transform:capitalize}.category{background-color:#e3f2fd;color:#1976d2;border:1px solid #90caf9}.difficulty{background-color:#f3e5f5;color:#7b1fa2;border:1px solid #ce93d8}.report-actions{text-align:center;margin-top:40px;padding-top:30px;border-top:2px solid #e0e0e0}.retake-btn{font-size:1.1rem;padding:16px 32px;background:linear-gradient(135deg,var(--primary-color),#357abd);box-shadow:0 4px 15px #4a90e24d}.retake-btn:hover{box-shadow:0 6px 20px #4a90e266}@media (max-width: 768px){.quiz-layout{flex-direction:column}.overview-panel{width:auto;border-right:none;border-bottom:1px solid var(--border-color)}.question-grid{grid-template-columns:repeat(auto-fill,minmax(30px,1fr))}.score-summary{grid-template-columns:1fr;gap:20px}.stats-grid{grid-template-columns:repeat(2,1fr)}.question-header{flex-direction:column;align-items:flex-start;gap:10px}.question-meta{flex-direction:column;gap:8px}}
