body{min-height:100vh;margin:0}#root{min-height:100vh}.quiz-editor{max-width:900px;margin:0 auto;padding:20px}.editor-toolbar{background:#f8f9fa;border-radius:12px;margin-bottom:20px;padding:20px}.editor-toolbar h2{color:#333;margin:0 0 16px;font-size:1.5rem}.toolbar-stats{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.stat-badge{background:#e9ecef;border-radius:20px;padding:6px 12px;font-size:.875rem;font-weight:500}.stat-badge.multiple{color:#1565c0;background:#e3f2fd}.stat-badge.truefalse{color:#e65100;background:#fff3e0}.stat-badge.answered{color:#2e7d32;background:#e8f5e9}.stat-badge.answered.complete{color:#fff;background:#4caf50}.toolbar-filters{gap:12px;display:flex}.search-input{border:1px solid #ddd;border-radius:8px;flex:1;padding:10px 16px;font-size:1rem}.search-input:focus{border-color:#1976d2;outline:none}.filter-select{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;padding:10px 16px;font-size:1rem}.toolbar-actions{justify-content:flex-end;gap:12px;margin-top:16px;display:flex}.btn-edit-mode{color:#fff;cursor:pointer;background:#1976d2;border:1px solid #1976d2;border-radius:8px;align-items:center;gap:6px;padding:10px 20px;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.btn-edit-mode:hover{background:#1565c0}.btn-export{color:#333;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;align-items:center;gap:6px;padding:10px 20px;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.btn-export:hover{background:#f5f5f5;border-color:#bbb}.btn-export-answers{color:#2e7d32;background:#e8f5e9;border-color:#4caf50}.btn-export-answers:hover{background:#c8e6c9}.btn-export:disabled{opacity:.5;cursor:not-allowed}.editor-questions{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.no-questions{text-align:center;color:#666;background:#f8f9fa;border-radius:12px;padding:60px 20px}.editor-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;transition:box-shadow .2s;overflow:hidden}.editor-card:hover{box-shadow:0 2px 8px #0000001a}.editor-card.editing{border-color:#1976d2;box-shadow:0 0 0 2px #1976d233}.editor-card.unknown-type{border-color:#d32f2f;padding:20px}.editor-header{background:#f5f5f5;border-bottom:1px solid #e0e0e0;align-items:center;gap:12px;padding:12px 16px;display:flex}.editor-number{color:#333;font-weight:600}.editor-type{color:#1565c0;text-transform:uppercase;background:#e3f2fd;border-radius:4px;padding:4px 8px;font-size:.75rem}.editor-type[data-type=truefalse]{color:#e65100;background:#fff3e0}.editor-type.multi-answer{color:#7b1fa2;background:#f3e5f5;font-weight:500}.editor-header-actions{gap:8px;margin-left:auto;display:flex}.btn-edit,.btn-delete{cursor:pointer;border:none;border-radius:6px;padding:6px 12px;font-size:.875rem;transition:background .2s}.btn-edit{color:#1565c0;background:#e3f2fd}.btn-edit:hover{background:#bbdefb}.btn-delete{color:#c62828;background:#ffebee}.btn-delete:hover{background:#ffcdd2}.editor-content{padding:16px}.editor-question-text{color:#333;margin:0 0 16px;font-size:1.1rem;font-weight:500}.editor-label{color:#666;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.875rem;font-weight:500;display:flex}.editor-textarea{resize:vertical;border:1px solid #ddd;border-radius:8px;width:100%;min-height:60px;margin-bottom:16px;padding:12px;font-family:inherit;font-size:1rem}.editor-textarea:focus{border-color:#1976d2;outline:none}.option-editor-row{background:#f8f9fa;border-radius:8px;align-items:center;gap:12px;padding:12px;transition:background .2s;display:flex}.option-editor-row.correct-option{background:#e8f5e9;border:1px solid #4caf50}.option-editor-row input[type=checkbox]{cursor:pointer;accent-color:#4caf50;width:20px;height:20px}.option-correct-checkbox{flex-shrink:0}.option-correct-indicator{text-align:center;color:#4caf50;width:20px;font-size:1.1rem;font-weight:700}.option-label{color:#333;min-width:24px;font-weight:600}.option-text-input{border:1px solid #ddd;border-radius:8px;flex:1;padding:10px 14px;font-size:1rem}.option-text-input:focus{border-color:#1976d2;outline:none}.btn-remove-option{color:#c62828;cursor:pointer;background:#ffebee;border:none;border-radius:6px;padding:8px 12px;font-size:.875rem}.btn-remove-option:hover{background:#ffcdd2}.btn-add-option{color:#1565c0;cursor:pointer;background:#e3f2fd;border:1px dashed #1976d2;border-radius:8px;margin-top:8px;padding:10px 16px;font-size:.875rem}.btn-add-option:hover{background:#bbdefb}.statement-editor-row{background:#f8f9fa;border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.statement-text-input{border:1px solid #ddd;border-radius:8px;flex:1;padding:10px 14px;font-size:1rem}.statement-text-input:focus{border-color:#1976d2;outline:none}.btn-remove-statement{color:#c62828;cursor:pointer;background:#ffebee;border:none;border-radius:6px;padding:8px 12px;font-size:.875rem}.btn-remove-statement:hover{background:#ffcdd2}.btn-add-statement{color:#e65100;cursor:pointer;background:#fff3e0;border:1px dashed #e65100;border-radius:8px;margin-top:8px;padding:10px 16px;font-size:.875rem}.btn-add-statement:hover{background:#ffe0b2}.tf-answer-selector{gap:16px;display:flex}.tf-option{cursor:pointer;border:1px solid #ddd;border-radius:6px;align-items:center;gap:6px;padding:8px 16px;transition:all .2s;display:flex}.tf-option:hover{background:#f5f5f5}.tf-option.selected{color:#2e7d32;background:#e8f5e9;border-color:#4caf50}.tf-option input[type=radio]{width:16px;height:16px}.option-text{color:#333;flex:1}.answer-badge{border-radius:4px;padding:4px 10px;font-size:.875rem;font-weight:500}.answer-badge.correct{color:#fff;background:#4caf50}.answer-badge.incorrect{color:#fff;background:#f44336}.answer-badge.unset{color:#666;background:#e0e0e0}.warning-text{color:#e65100;background:#fff3e0;border-radius:8px;margin-top:12px;padding:10px;font-size:.875rem}.editor-footer{background:#f8f9fa;border-radius:12px;justify-content:space-between;align-items:center;padding:20px;display:flex;position:sticky;bottom:20px;box-shadow:0 -2px 10px #0000001a}.footer-actions{align-items:center;gap:16px;display:flex}.btn-start-quiz{padding:14px 32px;font-size:1.1rem}.btn-start-quiz:disabled{cursor:not-allowed;background:#ccc}.btn-cancel,.btn-save{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:1rem;transition:background .2s}.btn-cancel{color:#666;background:#e0e0e0}.btn-cancel:hover{background:#bdbdbd}.btn-save{color:#fff;background:#4caf50}.btn-save:hover{background:#43a047}.editor-actions{background:#f5f5f5;border-top:1px solid #e0e0e0;gap:12px;padding:16px;display:flex}@media (width<=768px){.toolbar-stats{flex-direction:column}.toolbar-actions{flex-wrap:wrap}.editor-footer{flex-direction:column;gap:16px}.footer-actions{flex-direction:column;width:100%}.btn-start-quiz{width:100%}}.restore-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.restore-modal{text-align:center;background:#fff;border-radius:16px;width:90%;max-width:480px;padding:40px;animation:.3s ease-out modalSlideIn;box-shadow:0 20px 60px #0000004d}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.restore-icon{margin-bottom:20px;font-size:64px}.restore-modal h2{color:#333;margin:0 0 16px;font-size:1.5rem}.restore-modal p{color:#666;margin:0 0 12px;line-height:1.5}.restore-note{color:#888;font-size:.875rem;margin-bottom:24px!important}.restore-actions{justify-content:center;gap:12px;display:flex}.restore-actions .btn{cursor:pointer;border:none;border-radius:8px;padding:14px 28px;font-size:1rem;font-weight:500;transition:all .2s}.btn-discard{color:#666;background:#f5f5f5}.btn-discard:hover{background:#e0e0e0}.btn-restore{color:#fff;background:#4caf50}.btn-restore:hover{background:#43a047}.quiz-library{max-width:900px;margin:0 auto;padding:20px}.library-header{margin-bottom:30px}.library-header h1{color:var(--text);margin-bottom:8px;font-size:2rem}.library-header p{color:var(--text-secondary);font-size:1rem}.library-back-btn{background:var(--bg);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:8px;align-items:center;gap:8px;margin-bottom:20px;padding:10px 20px;font-size:.95rem;transition:all .2s;display:inline-flex}.library-back-btn:hover{border-color:var(--primary);color:var(--primary)}.subjects-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.subject-card{background:var(--card-bg);box-shadow:var(--shadow);cursor:pointer;border:2px solid #0000;border-radius:16px;padding:24px;transition:all .2s}.subject-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary);transform:translateY(-2px)}.subject-icon{margin-bottom:12px;font-size:3rem}.subject-card h3{color:var(--text);margin-bottom:8px;font-size:1.2rem}.subject-card p{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.subject-meta{border-top:1px solid var(--border);gap:12px;margin-top:16px;padding-top:16px;display:flex}.subject-badge{color:var(--primary);background:#4f46e51a;border-radius:12px;padding:4px 12px;font-size:.8rem;font-weight:600}.subject-header{margin-bottom:30px}.subject-header h1{color:var(--text);margin-bottom:8px;font-size:1.8rem}.subject-header p{color:var(--text-secondary)}.quizzes-list{flex-direction:column;gap:12px;display:flex}.quiz-card{background:var(--card-bg);box-shadow:var(--shadow);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:20px;transition:all .2s;display:flex}.quiz-card:hover{box-shadow:var(--shadow-lg)}.quiz-info h3{color:var(--text);margin-bottom:4px;font-size:1.1rem}.quiz-info p{color:var(--text-secondary);font-size:.9rem}.quiz-start-btn{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:12px 24px;font-size:.95rem;font-weight:600;transition:all .2s}.quiz-start-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.quiz-start-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.library-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.loading-spinner{border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:48px;height:48px;margin-bottom:16px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.library-loading p{color:var(--text-secondary)}.library-error{text-align:center;padding:60px 20px}.error-icon{margin-bottom:16px;font-size:4rem}.library-error h2{color:var(--text);margin-bottom:8px}.library-error p{color:var(--text-secondary);margin-bottom:20px}.retry-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:600}.library-empty{text-align:center;padding:60px 20px}.empty-icon{margin-bottom:16px;font-size:4rem}.library-empty h2{color:var(--text);margin-bottom:8px}.library-empty p{color:var(--text-secondary)}@media (width<=600px){.subjects-grid{grid-template-columns:1fr}.quiz-card{flex-direction:column;align-items:flex-start}.quiz-start-btn{width:100%}}*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#4f46e5;--primary-hover:#4338ca;--success:#22c55e;--success-hover:#16a34a;--danger:#ef4444;--secondary:#6b7280;--secondary-hover:#4b5563;--bg:#f8fafc;--card-bg:#fff;--text:#1e293b;--text-secondary:#64748b;--border:#e2e8f0;--shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}.app{min-height:100vh;padding:20px}.container{max-width:800px;margin:0 auto;padding:20px}.header{text-align:center;margin-bottom:40px}.header h1{color:var(--primary);margin-bottom:8px;font-size:2.5rem;font-weight:700}.header p{color:var(--text-secondary);font-size:1.1rem}.upload-area{background:var(--card-bg);box-shadow:var(--shadow);text-align:center;border-radius:16px;margin-bottom:30px;padding:40px}.file-input-wrapper{margin-bottom:20px;position:relative}.file-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.file-label{border:2px dashed var(--border);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:40px 30px;transition:all .2s;display:flex}.file-label:hover{border-color:var(--primary);background:#4f46e50d}.file-icon{font-size:3rem}.file-text{color:var(--text-secondary);font-size:1rem}.error-message{color:var(--danger);background:#ef44441a;border-radius:8px;margin-bottom:20px;padding:12px 20px;font-size:.9rem}.btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:14px 32px;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.btn-secondary{background:var(--secondary);color:#fff}.btn-secondary:hover:not(:disabled){background:var(--secondary-hover)}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:var(--success-hover)}.btn-library{background:var(--card-bg);color:var(--primary);border:2px solid var(--primary);margin-left:12px}.btn-library:hover:not(:disabled){background:#4f46e51a;transform:translateY(-1px)}.instructions{background:var(--card-bg);box-shadow:var(--shadow);border-radius:16px;padding:30px}.instructions h3{color:var(--text);margin-bottom:16px;font-size:1.1rem}.format-example{margin-bottom:20px}.format-example p{margin-bottom:8px;font-size:.95rem}.format-example pre{color:#e2e8f0;background:#1e293b;border-radius:8px;padding:16px;font-size:.85rem;line-height:1.8;overflow-x:auto}.ready-info{justify-content:center;gap:20px;margin-bottom:30px;display:flex}.info-card{background:var(--card-bg);box-shadow:var(--shadow);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:30px 50px;display:flex}.info-icon{font-size:2rem}.info-label{color:var(--text-secondary);font-size:.9rem}.info-value{color:var(--primary);font-size:2rem;font-weight:700}.action-buttons{flex-wrap:wrap;justify-content:center;gap:15px;display:flex}.quiz-header{margin-bottom:30px}.progress-info{color:var(--text-secondary);text-align:center;justify-content:center;gap:10px;margin-bottom:10px;font-size:.9rem;display:flex}.answered-count{color:var(--primary);font-weight:500}.progress-bar{background:var(--border);border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:var(--primary);border-radius:4px;height:100%;transition:width .3s}.question-card{background:var(--card-bg);box-shadow:var(--shadow);border-radius:16px;margin-bottom:25px;padding:30px}.question-text{margin-bottom:25px;font-size:1.2rem;font-weight:600;line-height:1.7}.question-number{color:var(--primary)}.options-list{flex-direction:column;gap:12px;display:flex}.option-btn{background:var(--bg);border:2px solid var(--border);cursor:pointer;text-align:left;border-radius:12px;align-items:flex-start;gap:12px;width:100%;padding:16px 20px;font-size:1rem;transition:all .2s;display:flex}.option-btn:hover{border-color:var(--primary);background:#4f46e50d}.option-btn.selected{border-color:var(--primary);background:#4f46e51a}.option-marker{color:var(--primary);min-width:24px;font-weight:600}.option-text{flex:1;line-height:1.5}.multi-select-hint{color:var(--text-secondary);margin-left:12px;font-size:.9rem;font-weight:400}.options-list.multi-select .option-btn{align-items:center}.options-list.multi-select .checkbox{border:2px solid var(--border);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:700;transition:all .2s;display:flex}.options-list.multi-select .checkbox.checked{background:var(--primary);border-color:var(--primary);color:#fff}.multi-select-badge{color:#ca8a04;background:#eab3081a;border-radius:12px;margin-left:8px;padding:3px 10px;font-size:.75rem;font-weight:600}.statements-list{flex-direction:column;gap:16px;display:flex}.statement-item{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:16px 20px}.statement-text{gap:10px;margin-bottom:12px;line-height:1.6;display:flex}.statement-number{color:var(--text-secondary);min-width:24px;font-weight:600}.statement-answers{gap:12px;padding-left:34px;display:flex}.tf-btn{border:2px solid var(--border);cursor:pointer;background:var(--card-bg);color:var(--text);border-radius:8px;padding:10px 24px;font-size:.95rem;font-weight:600;transition:all .2s}.tf-btn:hover{border-color:var(--primary);color:var(--primary)}.tf-btn.selected{background:var(--primary);border-color:var(--primary);color:#fff}.navigation-buttons{justify-content:space-between;gap:15px;margin-bottom:20px;display:flex}.question-dots{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.dot{border:2px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;width:12px;height:12px;padding:0;transition:all .2s}.dot.answered{background:var(--primary);border-color:var(--primary)}.dot.current{border-color:var(--primary);transform:scale(1.3)}.results-header{text-align:center;margin-bottom:30px}.results-header h1{color:var(--text);font-size:2rem}.score-card{background:var(--card-bg);box-shadow:var(--shadow);text-align:center;border-radius:16px;margin-bottom:30px;padding:40px}.score-circle{background:linear-gradient(135deg, var(--primary), #818cf8);color:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:160px;height:160px;margin:0 auto 20px;display:flex}.score-value{font-size:2.5rem;font-weight:700}.score-percent{opacity:.9;font-size:1.1rem}.score-message{color:var(--text);font-size:1.3rem;font-weight:600}.results-details{flex-direction:column;gap:15px;margin-bottom:30px;display:flex}.result-item{background:var(--card-bg);box-shadow:var(--shadow);border-left:4px solid var(--danger);border-radius:12px;padding:20px}.result-item.correct{border-left-color:var(--success)}.result-question{gap:12px;margin-bottom:15px;display:flex}.result-number{color:var(--primary);font-weight:600}.result-text{font-weight:500;line-height:1.5}.result-answers{flex-direction:column;gap:8px;padding-left:36px;display:flex}.result-option{border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:.95rem;display:flex}.result-option.correct-answer{background:#22c55e1a}.result-option.selected-answer{background:#ef44441a}.result-option-marker{color:var(--text-secondary);font-weight:600}.correct-badge{color:var(--success);margin-left:auto;font-weight:700}.wrong-badge{color:var(--danger);margin-left:auto;font-weight:700}.selected-badge{color:var(--primary);margin-left:auto;font-size:.8rem;font-weight:600}.practice-badge{color:var(--primary);background:#4f46e51a;border-radius:12px;margin-left:8px;padding:3px 10px;font-size:.75rem;font-weight:600}.result-statements{flex-direction:column;gap:12px;padding-left:36px;display:flex}.result-statement{background:var(--bg);border-radius:8px;padding:12px 16px}.result-statement-row{gap:10px;margin-bottom:8px;display:flex}.result-statement-row.correct{color:var(--success)}.result-statement-row.incorrect{color:var(--danger)}.result-statement-answer{justify-content:space-between;padding-left:34px;font-size:.9rem;display:flex}.result-statement-answer .answer{font-weight:500}.result-statement-answer .answer.true{color:var(--success)}.result-statement-answer .answer.false{color:var(--text-secondary)}.result-statement-answer .user-answer{font-weight:600}.result-statement-answer .user-answer.correct{color:var(--success)}.result-statement-answer .user-answer.incorrect{color:var(--danger)}@media (width<=600px){.app,.container{padding:15px}.header h1{font-size:1.8rem}.upload-area,.instructions,.question-card,.score-card{padding:20px}.file-label{padding:30px 20px}.btn{padding:12px 24px;font-size:.95rem}.action-buttons{flex-direction:column}.action-buttons .btn{justify-content:center;width:100%}.navigation-buttons{flex-direction:column}.navigation-buttons .btn{width:100%}.score-circle{width:140px;height:140px}.score-value{font-size:2rem}.statement-answers{padding-left:0}.result-answers,.result-statements{padding-left:20px}.result-statement-answer{flex-direction:column;gap:4px;padding-left:0}}
