*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{line-height:1.5}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root{isolation:isolate}.confirm-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.confirm-dialog{position:relative;width:100%;max-width:400px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.5rem;text-align:center}.confirm-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);transition:color .15s}.confirm-close:hover{color:var(--text-primary)}.confirm-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0 auto 1rem;background:#ca8a041a;border-radius:50%;color:var(--accent-warning)}.confirm-dialog h2{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:.5rem}.confirm-dialog>p{color:var(--text-secondary);font-size:.875rem;margin-bottom:1.5rem;line-height:1.5}.confirm-actions{display:flex;gap:.75rem;justify-content:center}.confirm-actions .btn{min-width:120px}.confirm-typing{display:flex;flex-direction:column;gap:1rem}.typing-prompt{font-size:.875rem;color:var(--text-secondary);margin-bottom:0}.typing-prompt strong{color:var(--text-primary);font-family:var(--font-display)}.confirm-typing input{width:100%;padding:.625rem 1rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:var(--font-display);font-size:.9rem;color:var(--text-primary);text-align:center}.confirm-typing input:focus{outline:none;border-color:var(--accent-primary)}.confirm-typing input::placeholder{color:var(--text-muted);font-family:var(--font-body)}.question-browser{max-width:1200px;margin:0 auto}.browser-header{margin-bottom:1.5rem}.browser-header h2{font-family:var(--font-display);font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.browser-subtitle{color:var(--text-muted);font-size:.875rem}.browser-controls{display:flex;gap:.75rem;margin-bottom:1rem}.controls-right{display:flex;gap:.5rem}.search-box{flex:1;display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted)}.search-box input{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:.9rem;outline:none}.filter-toggle{display:flex;align-items:center;gap:.5rem;height:36px;padding:0 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-body);font-size:.875rem;cursor:pointer;transition:all .15s;white-space:nowrap}.filter-toggle:hover,.filter-toggle.active{border-color:var(--accent-primary);color:var(--text-primary)}.filter-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem;display:flex;gap:2rem;flex-wrap:wrap;overflow:hidden}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em}.filter-buttons{display:flex;gap:.25rem}.filter-buttons button{display:inline-flex;align-items:center;gap:.375rem;height:30px;padding:0 .75rem;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-body);font-size:.8125rem;cursor:pointer;transition:all .15s;white-space:nowrap}.filter-buttons button:hover{border-color:var(--text-muted);color:var(--text-primary)}.filter-buttons button.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.filter-buttons button:disabled{opacity:.5;cursor:not-allowed}.bulk-action-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--accent-primary);border-radius:var(--radius-md);margin-bottom:1rem;overflow:hidden}.bulk-info{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);font-size:.875rem;font-weight:500}.bulk-actions{display:flex;align-items:center;gap:.5rem}.btn-link{background:none;border:none;color:var(--accent-primary);font-size:.8125rem;cursor:pointer;text-decoration:underline;padding:0}.btn-link:hover{color:var(--text-primary)}.select-all-row{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem;padding:.5rem 0}.select-all-btn{display:flex;align-items:center;gap:.5rem;font-size:.8125rem}.selected-count{font-size:.8125rem;color:var(--text-muted)}.question-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:2rem}.question-card{position:relative;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;transition:border-color .15s}.question-card:hover{border-color:var(--text-muted)}.question-card.archived{opacity:.6}.question-card.under-review{border-color:var(--accent-warning)}.question-card.selected{border-color:var(--accent-primary);background:#fafaf5}.card-checkbox{position:absolute;top:.5rem;left:.5rem;z-index:10;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .15s}.card-checkbox:hover{border-color:var(--accent-primary);color:var(--text-primary)}.card-checkbox.checked{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.card-thumbnail{position:relative;aspect-ratio:16 / 9;background:var(--bg-secondary);overflow:hidden}.card-thumbnail img{width:100%;height:100%;object-fit:cover}.no-thumbnail{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-size:.8125rem}.status-badge{position:absolute;top:.5rem;right:.5rem;display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:600;text-transform:uppercase}.status-badge.archived{background:var(--text-muted);color:#fff}.status-badge.review{background:var(--accent-warning);color:#fff}.card-content{padding:1rem}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.question-id{font-family:var(--font-display);font-size:.75rem;color:var(--text-muted)}.difficulty{font-size:.6875rem;font-weight:600;padding:.125rem .5rem;background:var(--bg-secondary);border-radius:100px;color:var(--text-muted)}.question-preview{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.report-preview{margin-bottom:.75rem;padding:.75rem;border-radius:var(--radius-sm);border:1px solid rgba(202,138,4,.3);background:#ca8a0414}.report-reason{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;color:var(--accent-warning);margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.03em}.report-description{font-size:.8125rem;color:var(--text-secondary);line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-meta{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:var(--text-muted)}.topic{background:var(--bg-secondary);padding:.25rem .5rem;border-radius:var(--radius-sm);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions{display:flex;gap:.25rem;padding:.5rem;border-top:1px solid var(--border-subtle);background:var(--bg-secondary)}.action-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:.375rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .15s;position:relative}.action-btn:hover{background:var(--bg-card);color:var(--text-primary)}.action-btn.delete:hover{color:var(--accent-error)}.action-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:.375rem .625rem;background:var(--text-primary);color:var(--bg-card);font-size:.75rem;font-weight:500;white-space:nowrap;border-radius:var(--radius-sm);opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;pointer-events:none;z-index:100}.action-btn[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--text-primary);opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;pointer-events:none;z-index:100}.action-btn[data-tooltip]:hover:after,.action-btn[data-tooltip]:hover:before{opacity:1;visibility:visible}.loading-state,.error-state,.empty-state{text-align:center;padding:3rem 2rem;color:var(--text-muted)}.spinner-small{width:24px;height:24px;border:2px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.error-state button{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 1rem;margin-top:1rem;background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:#fff;font-family:var(--font-body);font-size:.875rem;cursor:pointer;transition:background .15s}.error-state button:hover{background:var(--accent-hover)}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem}.page-btn{display:inline-flex;align-items:center;gap:.5rem;height:36px;padding:0 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-body);font-size:.875rem;cursor:pointer;transition:all .15s;white-space:nowrap}.page-btn:hover:not(:disabled){border-color:var(--text-muted);color:var(--text-primary)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-info{font-size:.875rem;color:var(--text-muted)}.page-input-form{display:flex;align-items:center;gap:.5rem}.page-label{font-size:.875rem;color:var(--text-muted)}.page-input{width:50px;height:30px;padding:0 .5rem;text-align:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.875rem;color:var(--text-primary);transition:border-color .15s}.page-input:focus{outline:none;border-color:var(--accent-primary)}.page-input::-webkit-inner-spin-button,.page-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}@media(max-width:768px){.browser-controls{flex-direction:column}.filter-panel{flex-direction:column;gap:1rem}.question-grid{grid-template-columns:1fr}.bulk-action-bar{flex-direction:column;gap:.75rem}}.prompt-lab{display:grid;grid-template-columns:380px 1fr;gap:0;min-height:600px;height:calc(100vh - 180px);max-height:none;background:var(--bg-darker);border-radius:16px;overflow:hidden;border:1px solid var(--border-color)}.modal-body .prompt-lab{height:calc(90vh - 120px);max-height:none;border-radius:0;border:none}.prompt-lab-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;gap:16px;color:var(--text-secondary)}.prompt-lab-loading .spin{animation:spin 1s linear infinite}.prompt-sidebar{background:var(--bg-dark);border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:24px 20px;border-bottom:1px solid var(--border-color)}.sidebar-header h2{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:600;margin:0;color:var(--text-primary)}.prompt-lab .btn-icon{width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all .15s}.prompt-lab .btn-icon svg{width:14px;height:14px}.prompt-lab .btn-icon:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.new-prompt-form{display:flex;gap:8px;padding:12px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-darker)}.new-prompt-form select{flex:1;padding:8px 12px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-dark);color:var(--text-primary);font-size:.85rem}.filter-dropdown{position:relative;padding:16px 20px;border-bottom:1px solid var(--border-color)}.filter-dropdown select{width:100%;padding:10px 32px 10px 12px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-darker);color:var(--text-primary);font-size:.9rem;appearance:none;cursor:pointer}.filter-dropdown .dropdown-icon{position:absolute;right:32px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.prompt-list{flex:1;overflow-y:auto;padding:16px}.prompt-item{padding:16px;border-radius:10px;background:var(--bg-darker);border:1px solid transparent;margin-bottom:12px;cursor:pointer;transition:all .2s}.prompt-item:hover{background:var(--bg-lighter)}.prompt-item.selected{border-color:var(--accent-primary);background:#6366f11a}.prompt-item.active{border-color:#10b981}.prompt-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.prompt-name{display:flex;align-items:center;gap:6px;font-weight:500;color:var(--text-primary);font-size:.9rem}.builtin-icon{color:var(--text-secondary)}.active-badge{display:flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;background:#10b98126;color:#10b981;font-size:.7rem;font-weight:600}.prompt-type-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:500;color:#fff;opacity:.9}.prompt-editor{display:flex;flex-direction:column;overflow:hidden}.error-banner{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#ef444426;color:#ef4444;font-size:.9rem}.error-banner button{margin-left:auto;background:none;border:none;color:inherit;font-size:1.2rem;cursor:pointer;padding:0;line-height:1}.editor-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color);background:var(--bg-dark)}.editor-title{display:flex;align-items:center;gap:12px}.name-input{font-size:1.25rem;font-weight:600;background:transparent;border:none;color:var(--text-primary);padding:4px 0;min-width:200px}.name-input:focus{outline:none;border-bottom:2px solid var(--accent-primary)}.name-input:disabled{color:var(--text-secondary)}.builtin-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;background:#8b5cf626;color:#8b5cf6;font-size:.75rem;font-weight:500}.editor-actions{display:flex;gap:8px}.btn-sm{height:36px;padding:0 1rem;font-size:.875rem;display:inline-flex;align-items:center;gap:.5rem}.editor-content{flex:1;display:grid;grid-template-columns:1fr 380px;overflow:hidden}.editor-main{display:flex;flex-direction:column;padding:20px 24px;overflow-y:auto;gap:12px}.editor-main label{font-weight:500;color:var(--text-secondary);font-size:.85rem;margin-top:8px}.editor-main label:first-child{margin-top:0}.editor-hint{font-size:.8rem;color:var(--text-muted);margin:0}.editor-hint code{background:var(--bg-darker);padding:2px 6px;border-radius:4px;font-family:JetBrains Mono,monospace;font-size:.75rem}.prompt-textarea{flex:1;min-height:300px;padding:16px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-darker);color:var(--text-primary);font-family:JetBrains Mono,Fira Code,monospace;font-size:.85rem;line-height:1.6;resize:none}.prompt-textarea:focus{outline:none;border-color:var(--accent-primary)}.prompt-textarea:disabled{opacity:.7;cursor:not-allowed}.notes-textarea{padding:12px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-darker);color:var(--text-primary);font-size:.9rem;line-height:1.5;resize:none}.notes-textarea:focus{outline:none;border-color:var(--accent-primary)}.notes-textarea:disabled{opacity:.7;cursor:not-allowed}.editor-test{display:flex;flex-direction:column;gap:16px;padding:20px;background:var(--bg-dark);border-left:1px solid var(--border-color);overflow-y:auto}.test-header{display:flex;align-items:center;justify-content:space-between}.test-header h3{display:flex;align-items:center;gap:8px;font-size:1rem;margin:0;color:var(--text-primary)}.editor-test label{font-weight:500;color:var(--text-secondary);font-size:.85rem}.sample-textarea{padding:12px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-darker);color:var(--text-primary);font-size:.9rem;line-height:1.5;resize:none}.sample-textarea:focus{outline:none;border-color:var(--accent-primary)}.test-result{padding:16px;border-radius:10px;font-size:.9rem}.test-result.success{background:#10b9811a;border:1px solid rgba(16,185,129,.3)}.test-result.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3)}.test-result .result-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.test-result.success .result-header{color:#10b981}.test-result.error .result-header{color:#ef4444}.test-result p{margin:0 0 8px;color:var(--text-secondary)}.test-result details{margin-top:12px}.test-result summary{cursor:pointer;color:var(--text-secondary);font-size:.85rem}.test-result summary:hover{color:var(--text-primary)}.test-result pre{margin-top:8px;padding:12px;background:var(--bg-darker);border-radius:8px;overflow-x:auto;font-size:.75rem;max-height:200px;overflow-y:auto}.no-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);gap:16px}.no-selection svg{opacity:.3}@media(max-width:1200px){.prompt-lab{grid-template-columns:320px 1fr}.editor-content{grid-template-columns:1fr}.editor-test{border-left:none;border-top:1px solid var(--border-color);max-height:300px}}@media(max-width:768px){.prompt-lab{grid-template-columns:1fr;height:auto}.prompt-sidebar{border-right:none;border-bottom:1px solid var(--border-color);max-height:300px}}.job-progress-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.job-progress-modal{position:relative;width:100%;max-width:520px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:2rem;box-shadow:0 25px 50px -12px #00000080}.modal-close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);transition:all .15s}.modal-close-btn:hover{color:var(--text-primary);background:var(--bg-secondary)}.progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.progress-header h2{font-family:var(--font-display);font-size:1.25rem;font-weight:700;margin:0}.job-status-badge{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .75rem;border-radius:100px;background:var(--bg-secondary);color:var(--text-muted)}.job-status-badge.pending{background:#eab30826;color:#eab308}.job-status-badge.processing{background:#3b82f626;color:#3b82f6}.job-status-badge.completed{background:#22c55e26;color:#22c55e}.job-status-badge.failed{background:#ef444426;color:#ef4444}.progress-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:1rem 0}.circular-progress-container{position:relative;width:140px;height:140px}.circular-progress{width:100%;height:100%;transform:rotate(-90deg)}.progress-bg{stroke:var(--bg-tertiary)}.progress-bar{stroke:var(--accent-primary);transition:stroke-dashoffset .5s ease}.progress-bar.completed{stroke:#22c55e}.progress-bar.failed{stroke:#ef4444}.progress-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem}.status-icon{color:var(--accent-primary)}.status-icon.spinning{animation:spin 1s linear infinite}.status-icon.success{color:#22c55e}.status-icon.error{color:#ef4444}.progress-percent{font-family:var(--font-mono);font-size:1.5rem;font-weight:700;color:var(--text-primary)}.progress-details{text-align:center}.progress-status{font-size:.9375rem;color:var(--text-secondary);margin:0 0 .25rem}.progress-count{font-size:.8125rem;color:var(--text-muted);margin:0}.console-section{margin-top:1.5rem;border-top:1px solid var(--border-subtle);padding-top:1rem}.console-toggle{display:flex;align-items:center;gap:.5rem;width:100%;padding:.625rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-body);font-size:.875rem;cursor:pointer;transition:all .15s}.console-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary)}.console-toggle span{flex:1;text-align:left}.log-count{font-size:.75rem;background:var(--accent-primary);color:#fff;padding:.125rem .5rem;border-radius:100px;font-weight:600}.console-container{overflow:hidden}.console-output{margin-top:.75rem;background:#0d1117;border:1px solid #30363d;border-radius:var(--radius-md);padding:.75rem;max-height:200px;overflow-y:auto;font-family:var(--font-mono);font-size:.75rem;line-height:1.6}.log-entry{display:flex;gap:.5rem;padding:.125rem 0}.error-details{margin-top:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);padding:1rem}.error-details h4{font-size:.875rem;font-weight:600;color:#ef4444;margin:0 0 .5rem}.error-details pre{margin:0;font-family:var(--font-mono);font-size:.75rem;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.modal-actions{display:flex;justify-content:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.modal-actions .btn{min-width:140px}.background-hint{text-align:center;font-size:.8125rem;color:var(--text-muted);margin:1rem 0 0}@media(max-width:480px){.job-progress-modal{padding:1.5rem}.circular-progress-container{width:120px;height:120px}.progress-percent{font-size:1.25rem}.console-output{max-height:150px}}.question-creator{max-width:900px;margin:0 auto}.creator-header{margin-bottom:2rem}.creator-header h2{font-family:var(--font-display);font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.creator-subtitle{color:var(--text-muted);font-size:.9rem}.error-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#dc262614;border:1px solid rgba(220,38,38,.2);border-radius:var(--radius-md);margin-bottom:1rem;color:var(--accent-error);font-size:.875rem}.error-banner button{margin-left:auto;background:none;border:none;color:inherit;cursor:pointer;padding:.25rem;opacity:.7;transition:opacity .15s}.error-banner button:hover{opacity:1}.method-toggle{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.method-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .15s;color:var(--text-secondary)}.method-btn:hover{border-color:var(--text-muted)}.method-btn.active{border-color:var(--accent-primary);background:#fafaf5;color:var(--text-primary)}.method-btn span{font-size:.9rem;font-weight:600}.method-btn small{font-size:.8rem;color:var(--text-muted)}.manual-form{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.5rem}.form-section{margin-bottom:1.25rem}.form-section label{display:flex;align-items:center;gap:.375rem;font-size:.8rem;font-weight:600;margin-bottom:.5rem;color:var(--text-secondary)}.required-indicator{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:50%;color:var(--accent-error);font-size:.75rem;font-weight:700;cursor:help;transition:all .15s;position:relative}.required-indicator:hover{background:#dc262633;border-color:var(--accent-error)}.required-indicator[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:.375rem .625rem;background:var(--text-primary);color:var(--bg-card);font-size:.75rem;font-weight:500;white-space:nowrap;border-radius:var(--radius-sm);opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;pointer-events:none;z-index:100}.required-indicator[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--text-primary);opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;pointer-events:none;z-index:100}.required-indicator[data-tooltip]:hover:after,.required-indicator[data-tooltip]:hover:before{opacity:1;visibility:visible}.form-section textarea,.form-section input[type=text],.form-section select{width:100%;padding:.625rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem;font-family:var(--font-body);resize:vertical;transition:border-color .15s}.form-section textarea:focus,.form-section input[type=text]:focus,.form-section select:focus{outline:none;border-color:var(--accent-primary)}.form-hint{display:block;margin-top:.5rem;font-size:.75rem;color:var(--text-muted)}.form-row{display:grid;grid-template-columns:1fr 2fr;gap:1rem}.alternatives-grid{display:flex;flex-direction:column;gap:.75rem}.alternative-input{display:flex;align-items:center;gap:.75rem}.alt-label{display:flex;align-items:center;gap:.5rem;min-width:50px;background:transparent}.alt-label input[type=radio]{width:16px;height:16px;accent-color:var(--accent-primary);margin:0;cursor:pointer}.alt-label input[type=radio]:focus{outline:none}.alt-label span{font-weight:600;color:var(--text-secondary);background:transparent}.alternative-input:has(input[type=radio]:checked){background:transparent}.alternative-input:has(input[type=radio]:checked) .alt-label{background:transparent}.alternative-input:has(input[type=radio]:checked) .alt-label span{color:var(--accent-primary)}.alternative-input input[type=text]{flex:1}.form-actions{display:flex;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-subtle)}.upload-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md)}.upload-zone{border:2px dashed var(--border-color);border-radius:var(--radius-md);padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .15s}.upload-zone:hover,.upload-zone:focus{border-color:var(--accent-primary);background:#fafaf5;outline:none}.upload-zone.dragging{border-color:var(--accent-primary);background:#fafaf5;border-style:solid}.upload-icon{display:flex;align-items:center;justify-content:center;color:var(--text-muted);margin:1rem 0 1.5rem;transition:color .15s}.upload-zone:hover .upload-icon,.upload-zone.dragging .upload-icon{color:var(--accent-primary)}.upload-zone h3{font-family:var(--font-display);font-size:1.1rem;margin-bottom:0}.file-input{display:none}.file-hint{font-size:.75rem;color:var(--text-muted);margin-top:1rem!important}.parse-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#dc262614;border:1px solid rgba(220,38,38,.2);border-radius:var(--radius-md);margin:1rem;color:var(--accent-error);font-size:.875rem}.parse-error button{margin-left:auto;background:none;border:none;color:inherit;cursor:pointer;padding:.25rem;opacity:.7}.parse-error button:hover{opacity:1}.file-loaded{padding:1.5rem}.file-info{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-secondary);border-radius:var(--radius-sm);margin-bottom:1rem}.file-info svg{color:var(--accent-primary);flex-shrink:0}.file-info>div{flex:1}.file-info strong{display:block;margin-bottom:.25rem;font-family:var(--font-display)}.file-info span{font-size:.8rem;color:var(--text-muted)}.btn-icon{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);transition:all .15s}.btn-icon:hover{background:#dc26261a;color:var(--accent-error)}.file-preview{margin-bottom:1rem}.file-preview h4{font-size:.8rem;color:var(--text-muted);margin-bottom:.5rem}.file-preview pre{background:var(--bg-secondary);padding:1rem;border-radius:var(--radius-sm);overflow-x:auto;font-size:.75rem;max-height:150px;color:var(--text-secondary);font-family:var(--font-display)}.upload-actions{display:flex;justify-content:flex-end;gap:.75rem}.review-step{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.5rem}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.review-stats{display:flex;gap:1.5rem}.stat{text-align:center}.stat-value{display:block;font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--text-primary)}.stat-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.stat.valid .stat-value{color:var(--accent-success)}.stat.invalid .stat-value{color:var(--accent-error)}.stat.selected .stat-value{color:var(--accent-primary)}.review-controls{display:flex;gap:.5rem}.toggle-btn{display:inline-flex;align-items:center;gap:.5rem;height:30px;padding:0 .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:.8125rem;font-family:var(--font-body);transition:all .15s;white-space:nowrap}.toggle-btn:hover,.toggle-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.question-list{max-height:400px;overflow-y:auto;margin-bottom:1.5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm)}.question-item{border-bottom:1px solid var(--border-subtle)}.question-item:last-child{border-bottom:none}.question-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background .15s}.question-row:hover{background:var(--bg-secondary)}.question-item.selected .question-row{background:#fafaf5}.question-item.invalid .question-row{background:#dc26260d}.question-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary);flex-shrink:0}.question-status{flex-shrink:0}.valid-icon{color:var(--accent-success)}.invalid-icon{color:var(--accent-error)}.question-summary{flex:1;min-width:0;display:flex;align-items:center;gap:.75rem}.question-index{font-family:var(--font-display);font-weight:600;color:var(--text-muted);font-size:.8rem;flex-shrink:0}.question-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-size:.875rem}.question-meta{display:flex;gap:.5rem;flex-shrink:0}.difficulty{padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;background:var(--bg-secondary);color:var(--text-muted)}.alternatives-count{font-size:.75rem;color:var(--text-muted)}.question-expand{color:var(--text-muted);flex-shrink:0}.remove-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);transition:all .15s;flex-shrink:0}.remove-btn:hover{background:#dc26261a;color:var(--accent-error)}.question-details{padding:0 1rem 1rem;overflow:hidden}.validation-errors{background:#dc262614;border:1px solid rgba(220,38,38,.2);border-radius:var(--radius-sm);padding:.75rem 1rem;margin-bottom:1rem;font-size:.8rem}.validation-errors strong{color:var(--accent-error);display:block;margin-bottom:.5rem}.validation-errors ul{margin:0;padding-left:1.25rem;color:var(--accent-error)}.detail-grid{display:grid;gap:.75rem}.detail-section{background:var(--bg-secondary);padding:.75rem 1rem;border-radius:var(--radius-sm)}.detail-section h5{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem}.detail-section p{font-size:.875rem;line-height:1.5;margin:0}.empty{color:var(--text-muted)}.alternatives-list{margin:0;padding-left:1.25rem}.alternatives-list li{padding:.25rem 0;font-size:.875rem}.alternatives-list li.correct{color:var(--accent-success);font-weight:500;display:flex;align-items:center;gap:.5rem}.correct-mark{color:var(--accent-success)}.detail-section.original pre{background:var(--bg-primary);padding:.75rem;border-radius:var(--radius-sm);overflow-x:auto;font-size:.7rem;max-height:150px;font-family:var(--font-display)}.import-options{display:flex;gap:2rem;padding:1rem;background:var(--bg-secondary);border-radius:var(--radius-sm);margin-bottom:1rem;align-items:center}.option-group{display:flex;flex-direction:column;gap:.5rem}.option-group label{font-size:.8rem;font-weight:500}.option-group select{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);font-size:.875rem;font-family:var(--font-body)}.option-group.checkbox{flex-direction:row;align-items:center;gap:.75rem}.option-group.checkbox input{width:16px;height:16px;accent-color:var(--accent-primary)}.option-group.checkbox label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.option-hint{font-size:.75rem;color:var(--text-muted);font-weight:400;margin-left:.25rem}.review-actions{display:flex;gap:.75rem;justify-content:flex-end}.advanced-section{margin-bottom:1rem}.advanced-toggle{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;font-family:var(--font-body);transition:all .15s}.advanced-toggle:hover{background:var(--bg-card);color:var(--text-primary)}.advanced-toggle.open{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:transparent}.advanced-toggle .toggle-icon{margin-left:auto;transition:transform .15s}.advanced-toggle.open .toggle-icon{transform:rotate(180deg)}.advanced-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);overflow:hidden}.prompts-summary{padding:1rem}.prompts-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.prompts-header h4{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;margin:0}.prompts-desc{font-size:.8rem;color:var(--text-muted);margin-bottom:1rem}.active-prompts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.prompt-chip{display:flex;flex-direction:column;gap:.25rem;padding:.5rem .75rem;background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.prompt-type{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.prompt-name{font-size:.8rem;font-weight:500}.prompt-name.active{color:var(--accent-primary)}.prompt-name.default{color:var(--text-secondary)}.generating-step{text-align:center;padding:4rem 2rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md)}.generating-animation{margin-bottom:1.5rem}.spinner-large{width:48px;height:48px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.generating-step h3{font-family:var(--font-display);font-size:1.1rem;margin-bottom:.5rem}.generating-step p{color:var(--text-secondary);font-size:.875rem}.generating-hint{font-size:.8rem;margin-top:1rem;color:var(--text-muted)}.progress-container{display:flex;align-items:center;gap:1rem;max-width:400px;margin:1.5rem auto 0}.progress-bar{flex:1;height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--accent-primary);border-radius:3px;transition:width .3s}.progress-text{font-size:.8rem;font-weight:600;color:var(--text-secondary);min-width:40px}.complete-step{text-align:center;padding:3rem 2rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md)}.success-icon{width:64px;height:64px;border-radius:50%;background:var(--accent-success);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff}.complete-step h3{font-family:var(--font-display);font-size:1.25rem;margin-bottom:.5rem}.complete-step p{color:var(--text-secondary);margin-bottom:2rem;font-size:.9rem}.complete-actions{display:flex;gap:.75rem;justify-content:center}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:var(--bg-card);border-radius:var(--radius-md);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--border-color)}.modal-large{width:95%;max-width:1400px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h2{font-family:var(--font-display);font-size:1.1rem;font-weight:600;margin:0}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);transition:all .15s}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body{flex:1;overflow-y:auto;padding:1.5rem}@media(max-width:768px){.method-toggle,.form-row{grid-template-columns:1fr}.review-header{flex-direction:column;align-items:flex-start}.import-options{flex-direction:column;gap:1rem;align-items:flex-start}.question-meta{display:none}.review-stats{gap:1rem}.active-prompts-grid{grid-template-columns:1fr}.modal-overlay,.modal-body{padding:1rem}}.password-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.gate-loading{display:flex;align-items:center;justify-content:center}.gate-loading .spinner{width:32px;height:32px;border:2px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.gate-container{width:100%;max-width:360px;padding:2rem;text-align:center}.gate-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 1.5rem;background:var(--bg-secondary);border-radius:50%;color:var(--text-muted)}.gate-container h1{font-family:var(--font-display);font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.gate-container p{color:var(--text-muted);font-size:.875rem;margin-bottom:1.5rem}.gate-container form{display:flex;flex-direction:column;gap:1rem}.gate-container input{width:100%;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:var(--font-body);font-size:.9rem;color:var(--text-primary);text-align:center}.gate-container input:focus{outline:none;border-color:var(--accent-primary)}.gate-container input::placeholder{color:var(--text-muted)}.gate-error{color:var(--accent-error);font-size:.8125rem;margin-top:-.5rem}.gate-container button[type=submit]{width:100%;height:42px;padding:0 1.5rem;background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:#fff;font-family:var(--font-body);font-size:.9rem;font-weight:500;cursor:pointer;transition:background .15s}.gate-container button[type=submit]:hover:not(:disabled){background:var(--accent-hover)}.gate-container button[type=submit]:disabled{opacity:.5;cursor:not-allowed}@font-face{font-family:Menlo;src:url(/assets/Menlo-Regular-kIV6b86d.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Menlo;src:url(/assets/Menlo-Bold-BgvUe-4O.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:Inconsolata;src:url(/assets/Inconsolata-VariableFont_wdth_wght-Dy3FmpuR.ttf) format("truetype");font-weight:200 900;font-style:normal}:root{--bg-primary: #f5f5f0;--bg-secondary: #ebebdf;--bg-tertiary: #e0e0d4;--bg-card: #ffffff;--accent-primary: #1a1a1a;--accent-hover: #333333;--accent-success: #16a34a;--accent-warning: #ca8a04;--accent-error: #dc2626;--text-primary: #1a1a1a;--text-secondary: #525252;--text-muted: #737373;--border-color: #d4d4c8;--border-subtle: #e5e5d8;--container-max: 1400px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--font-display: "Menlo", monospace;--font-body: "Inconsolata", monospace}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:var(--font-body);font-weight:400;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}.app{min-height:100vh;display:flex;flex-direction:column}.header{padding:1rem 2rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.header-content{display:flex;justify-content:center;align-items:center;max-width:var(--container-max);margin:0 auto}.header-glow{display:none}.nav-tabs{display:inline-flex;gap:0;background:transparent}.nav-tab{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:var(--font-body);font-size:.9rem;font-weight:500;cursor:pointer;transition:color .15s,border-color .15s}.nav-tab:hover{color:var(--text-primary)}.nav-tab.active{color:var(--text-primary);border-bottom-color:var(--accent-primary)}.main{flex:1;padding:2rem}.container{max-width:var(--container-max);margin:0 auto}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.3}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:36px;padding:0 1rem;font-family:var(--font-body);font-size:.875rem;font-weight:500;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all .15s;white-space:nowrap}.btn-primary{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--text-muted)}.btn-danger{background:var(--accent-error);color:#fff;border-color:var(--accent-error)}.btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.btn-warning{background:var(--accent-warning);color:#fff;border-color:var(--accent-warning)}.btn-warning:hover:not(:disabled){background:#a16207;border-color:#a16207}.btn-success{background:var(--accent-success);color:#fff;border-color:var(--accent-success)}.btn-success:hover:not(:disabled){background:#15803d;border-color:#15803d}.btn-small{height:30px;padding:0 .75rem;font-size:.8125rem}.btn-large{height:42px;padding:0 1.5rem;font-size:.9rem}input[type=text],input[type=number],input[type=email],textarea,select{font-family:var(--font-body);font-size:.9rem;padding:.625rem .75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color .15s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-primary)}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem}.error-state{text-align:center;padding:3rem 2rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.error-state h2{font-size:1.25rem;margin-bottom:.5rem;color:var(--accent-error)}.error-state p{color:var(--text-secondary);margin-bottom:1.5rem}.result-container{animation:fadeIn .3s ease}.result-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-subtle)}.result-header h2{font-size:1.25rem}.result-actions{display:flex;gap:.5rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.header,.main{padding:1rem}.nav-tab{padding:.5rem .75rem;font-size:.8125rem}.result-header{flex-direction:column;gap:1rem;text-align:center}}.video-player{background:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border-subtle);overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.video-player.empty{padding:4rem 2rem;text-align:center;color:var(--text-muted)}.section-tabs{display:flex;background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle)}.tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 1.5rem;background:transparent;border:none;color:var(--text-muted);font-family:var(--font-body);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:transparent;transition:background .2s ease}.tab:hover{color:var(--text-secondary);background:#7c3aed0d}.tab.active{color:var(--text-primary);background:#7c3aed1a}.tab.active:after{background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary))}.tab-icon{font-size:1.25rem}.tab-count{font-size:.75rem;color:var(--text-muted);background:var(--bg-tertiary);padding:.125rem .5rem;border-radius:100px}.video-container{position:relative;background:#000}.video-frame{position:relative;aspect-ratio:9 / 16;max-height:70vh;margin:0 auto;overflow:hidden;background:linear-gradient(180deg,#1e1b4b,#0c0a1d)}.video-frame img{width:100%;height:100%;object-fit:contain}.frame-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff1a}.frame-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));transform-origin:left}.narration-box{padding:1rem 1.5rem;background:var(--bg-secondary);border-top:1px solid var(--border-subtle);min-height:80px;display:flex;align-items:center;justify-content:center}.narration-box p{color:var(--text-secondary);font-size:.9375rem;text-align:center;font-style:italic;max-width:600px}.video-controls{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--bg-tertiary);border-top:1px solid var(--border-subtle)}.controls-left,.controls-right{display:flex;align-items:center;gap:.5rem}.control-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.control-btn:hover:not(:disabled){background:var(--bg-primary);color:var(--text-primary);border-color:var(--border-color)}.control-btn:disabled{opacity:.3;cursor:not-allowed}.control-btn.play-btn{width:52px;height:52px;background:linear-gradient(135deg,var(--accent-primary),#6d28d9);border:none;border-radius:50%;color:#fff;box-shadow:0 4px 15px #7c3aed4d}.control-btn.play-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px #7c3aed66}.frame-indicator{font-family:var(--font-mono);font-size:.875rem;color:var(--text-muted);background:var(--bg-secondary);padding:.5rem 1rem;border-radius:var(--radius-sm)}.timeline{padding:1rem 1.5rem;background:var(--bg-secondary)}.timeline-track{display:flex;gap:4px;height:32px}.timeline-frame{position:relative;flex:1;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;overflow:hidden}.timeline-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));opacity:0;transition:opacity .2s ease}.timeline-frame:hover:before{opacity:.3}.timeline-frame.played:before{opacity:.5}.timeline-frame.active{border-color:var(--accent-primary);box-shadow:0 0 0 2px #7c3aed4d}.timeline-frame.active:before{opacity:.8}.frame-number{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:600;color:var(--text-muted);z-index:1}.timeline-frame.active .frame-number,.timeline-frame.played .frame-number{color:#fff}.metadata{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1rem 1.5rem;background:var(--bg-primary);border-top:1px solid var(--border-subtle)}.meta-item{font-size:.8125rem;color:var(--text-muted)}.meta-item strong{color:var(--text-secondary);font-weight:500}.video-container:fullscreen{background:#000;display:flex;flex-direction:column}.video-container:fullscreen .video-frame{flex:1;max-height:none}@media(max-width:640px){.section-tabs{font-size:.875rem}.tab{padding:.875rem 1rem;gap:.375rem}.tab-count{display:none}.video-controls{padding:.75rem 1rem}.control-btn{width:36px;height:36px}.control-btn.play-btn{width:46px;height:46px}.timeline{padding:.75rem 1rem}.metadata{gap:1rem}}.question-editor{max-width:100%;margin:0 auto}.editor-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.back-btn{display:inline-flex;align-items:center;gap:.375rem;height:30px;padding:0 .75rem;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-family:var(--font-body);font-size:.8125rem;cursor:pointer;transition:all .15s;white-space:nowrap}.back-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.editor-title{flex:1;display:flex;align-items:center;gap:.5rem}.editor-title h2{font-family:var(--font-display);font-size:1rem;margin:0}.unsaved-badge{font-size:.625rem;font-weight:600;padding:.125rem .375rem;background:var(--accent-warning);color:#fff;border-radius:100px;text-transform:uppercase}.editor-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.editor-tabs .tab{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:var(--font-body);font-size:.8125rem;cursor:pointer;transition:all .15s}.editor-tabs .tab:hover{color:var(--text-primary)}.editor-tabs .tab.active{color:var(--text-primary);border-bottom-color:var(--accent-primary)}.tab-count{font-size:.625rem;background:var(--bg-secondary);padding:.125rem .375rem;border-radius:100px}.editor-tabs .tab.active .tab-count{background:var(--accent-primary);color:#fff}.editor-content{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;max-width:1200px;margin:0 auto}.editor-content>*{width:100%}.details-form{display:flex;flex-direction:column;gap:.875rem;max-width:800px}.question-editor .reports-meta{font-size:.8125rem;color:var(--text-muted);padding:.5rem 0}.question-editor .reports-meta.reports-error{color:#ef4444f2}.question-editor .reports-section{margin-bottom:1.5rem}.question-editor .reports-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.question-editor .reports-header label{display:flex;align-items:center;gap:.5rem;margin-bottom:0}.question-editor .reports-header label svg{color:var(--accent-warning)}.question-editor .reports-bulk-actions{display:flex;gap:.5rem}.question-editor .reports-list{display:flex;flex-direction:column;gap:.5rem}.question-editor .report-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:var(--radius-md);border:1px solid rgba(245,158,11,.25);background:#f59e0b14;transition:all .2s}.question-editor .report-item.report-status-resolved{border-color:#22c55e40;background:#22c55e14;opacity:.7}.question-editor .report-item.report-status-dismissed{border-color:#64748b40;background:#64748b14;opacity:.6}.question-editor .report-content{flex:1;min-width:0}.question-editor .report-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.question-editor .report-reason{font-size:.8rem;font-weight:600;color:var(--text-primary)}.question-editor .report-status-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.65rem;font-weight:600;padding:.125rem .375rem;border-radius:100px;text-transform:uppercase;letter-spacing:.03em}.question-editor .report-status-badge.status-pending{background:#f59e0b33;color:#f59e0b}.question-editor .report-status-badge.status-in_review{background:#3b82f633;color:#3b82f6}.question-editor .report-status-badge.status-resolved{background:#22c55e33;color:#22c55e}.question-editor .report-status-badge.status-dismissed{background:#64748b33;color:#64748b}.question-editor .report-meta{display:flex;align-items:center;gap:.5rem;font-size:.7rem;color:var(--text-muted);margin-bottom:.25rem}.question-editor .report-meta span:not(:last-child):after{content:"•";margin-left:.5rem}.question-editor .report-description{font-size:.8rem;color:var(--text-secondary);line-height:1.45;display:-webkit-box;line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.question-editor .report-actions{display:flex;flex-direction:column;gap:.25rem;flex-shrink:0}.btn-tiny{height:24px;padding:0 .5rem;font-size:.75rem}.form-section{display:flex;flex-direction:column;gap:.25rem}.form-section label{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em}.form-section textarea,.form-section input[type=text],.form-section input[type=number]{padding:.5rem .625rem;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-primary);font-family:var(--font-body);font-size:.8125rem;line-height:1.5;transition:all .2s ease}.form-section textarea:focus,.form-section input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #7c3aed1a}.form-section textarea{resize:vertical;min-height:70px}.disabled-input{opacity:.6;cursor:not-allowed}.field-hint{font-size:.6875rem;color:var(--text-muted);margin-top:.125rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.alternatives-list{display:flex;flex-direction:column;gap:.25rem}.alternative-item{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:4px}.alternative-item.correct{border-color:var(--accent-success);background:#10b9811a}.alt-letter{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:var(--bg-tertiary);border-radius:50%;font-size:.6875rem;font-weight:600;color:var(--text-muted)}.alternative-item.correct .alt-letter{background:var(--accent-success);color:#fff}.alternative-item input{flex:1;padding:.25rem;background:transparent;border:none;color:var(--text-primary);font-size:.8125rem}.alternative-item input:focus{outline:none}.correct-badge{font-size:.5625rem;font-weight:600;padding:.125rem .375rem;background:var(--accent-success);color:#fff;border-radius:100px}.frames-editor-split{display:grid;grid-template-columns:80px minmax(0,1fr);gap:.75rem;width:100%;height:calc(100vh - 200px);min-height:400px}.filmstrip-sidebar{display:flex;flex-direction:column;background:var(--bg-tertiary);border-radius:6px;overflow:hidden}.filmstrip-header{display:flex;align-items:center;justify-content:space-between;padding:.375rem;border-bottom:1px solid var(--border-subtle)}.filmstrip-title{font-size:.5625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.filmstrip-count{font-size:.5625rem;font-weight:600;padding:.0625rem .25rem;background:var(--accent-primary);color:#fff;border-radius:100px}.filmstrip-scroll{flex:1;overflow-y:auto;padding:.25rem;display:flex;flex-direction:column;gap:.125rem}.filmstrip-frame{display:flex;align-items:center;gap:.25rem;padding:.125rem;background:var(--bg-secondary);border:1px solid transparent;border-radius:4px;cursor:pointer;transition:all .15s ease}.filmstrip-frame:hover{border-color:var(--border-color)}.filmstrip-frame.selected{border-color:var(--accent-primary);background:#7c3aed26}.filmstrip-number{font-size:.5625rem;font-weight:700;color:var(--text-muted);min-width:12px;text-align:center}.filmstrip-frame.selected .filmstrip-number{color:var(--accent-primary)}.filmstrip-thumb{width:28px;height:50px;border-radius:2px;overflow:hidden;background:var(--bg-primary);flex-shrink:0}.filmstrip-thumb img{width:100%;height:100%;object-fit:cover}.filmstrip-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted)}.filmstrip-meta{display:none}.filmstrip-duration{font-size:.5625rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.filmstrip-icons{display:flex;gap:.125rem;color:var(--accent-success)}.filmstrip-actions{display:flex;gap:.125rem;padding:.25rem;border-top:1px solid var(--border-subtle)}.btn-icon{flex:1;display:flex;align-items:center;justify-content:center;padding:.25rem;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.btn-icon:hover{border-color:var(--border-color);color:var(--text-primary)}.frame-editor-panel{display:flex;flex-direction:column;width:100%;background:var(--bg-secondary);border-radius:6px;overflow:hidden}.frame-editor-content{display:flex;flex-direction:column;width:100%;height:100%}.frame-editor-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.frame-editor-header h3{font-size:.75rem;font-weight:600;margin:0}.frame-editor-actions{display:flex;gap:.25rem}.frame-editor-actions .btn{padding:.2rem .4rem!important;font-size:.625rem!important;min-height:0}.frame-editor-actions .btn svg{width:12px;height:12px}.frame-editor-main{flex:1;display:flex;width:100%;gap:.75rem;padding:.75rem;overflow:hidden}.frame-preview-large{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;border-radius:6px;overflow:hidden;background:var(--bg-tertiary);border:1px solid var(--border-subtle)}.frame-preview-large img{max-width:100%;max-height:100%;object-fit:contain}.frame-preview-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;gap:.5rem;color:var(--text-muted)}.frame-preview-empty span{font-size:.75rem}.frame-editor-fields{width:600px;flex-shrink:0;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto}.field-group{display:flex;flex-direction:column;gap:.25rem}.field-group label{display:flex;align-items:center;gap:.25rem;font-size:.625rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em}.field-group textarea,.field-group input{width:100%;box-sizing:border-box;padding:.375rem .5rem;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-primary);font-family:var(--font-body);font-size:.75rem;transition:all .15s ease}.field-group textarea:focus,.field-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #7c3aed1a}.audio-field audio{width:100%;height:28px;border-radius:4px}.editor-fields-row{display:flex;flex-direction:column;gap:.5rem;flex:1;min-height:0}.narration-field{display:flex;flex-direction:column;flex-shrink:0}.narration-field textarea{min-height:50px;max-height:80px;resize:vertical;font-size:.8125rem;line-height:1.5}.latex-field{display:flex;flex-direction:column;flex:1;min-height:0}.latex-field textarea{flex:1;min-height:80px;resize:none;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:.6875rem;line-height:1.4;white-space:pre;overflow:auto}.field-row-compact{display:grid;grid-template-columns:1fr 1fr;gap:.375rem}.frame-nav{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);flex-shrink:0}.frame-nav .btn{padding:.375rem .75rem;font-size:.75rem}.frame-nav .btn:disabled{opacity:.4;cursor:not-allowed}.frame-editor-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:.75rem;color:var(--text-muted)}.frame-editor-empty p{font-size:.75rem}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:1000px){.frame-editor-fields{width:320px}}@media(max-width:800px){.frame-editor-main{flex-direction:column}.frame-preview-large{flex:none;height:250px}.frame-editor-fields{width:100%;flex-direction:row;flex-wrap:wrap}.editor-fields-row{flex-basis:100%}.field-row-compact,.audio-field{flex:1}}@media(max-width:768px){.editor-header{flex-wrap:wrap}.editor-title{order:-1;width:100%;margin-bottom:.5rem}.editor-tabs{flex-direction:column}.form-row,.field-row,.field-row-compact{grid-template-columns:1fr}.frames-editor-split{grid-template-columns:1fr;grid-template-rows:70px 1fr;height:auto;min-height:500px}.filmstrip-sidebar{flex-direction:row}.filmstrip-header{padding:.375rem;border-bottom:none;border-right:1px solid var(--border-subtle);writing-mode:vertical-rl;text-orientation:mixed}.filmstrip-scroll{flex-direction:row;overflow-x:auto;overflow-y:hidden}.filmstrip-frame{flex-direction:column;width:45px}.filmstrip-thumb{width:100%;height:45px}.filmstrip-actions{flex-direction:column;border-top:none;border-left:1px solid var(--border-subtle)}}.regenerate-dropdown{position:relative}.regenerate-dropdown>.btn{display:flex;align-items:center;gap:.25rem}.regenerate-menu{position:absolute;top:100%;right:0;margin-top:.25rem;min-width:140px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:100;overflow:hidden}.regenerate-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;background:transparent;border:none;color:var(--text-primary);font-family:var(--font-body);font-size:.75rem;cursor:pointer;transition:background .15s ease;text-align:left}.regenerate-menu-item:hover{background:var(--bg-secondary)}.regenerate-menu-item:not(:last-child){border-bottom:1px solid var(--border-subtle)}.stats-page{padding:24px;max-width:1400px;margin:0 auto}.stats-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--text-secondary)}.stats-loading svg{margin-bottom:16px;color:var(--accent)}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.stats-title{display:flex;align-items:center;gap:12px}.stats-title h2{font-size:24px;font-weight:600;color:var(--text-primary);margin:0}.stats-title svg{color:var(--accent)}.stats-controls{display:flex;gap:12px;align-items:center}.stats-select{padding:8px 12px;border-radius:8px;background:var(--card-bg);border:1px solid var(--border);color:var(--text-primary);font-size:14px;cursor:pointer}.stats-select:hover{border-color:var(--border-hover)}.stats-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:16px;display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.stats-error p{color:#ef4444;margin:0}.stats-error button{background:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:20px;display:flex;gap:16px;align-items:center;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card.stat-highlight{border-color:var(--accent);background:linear-gradient(135deg,var(--card-bg),rgba(99,102,241,.05))}.stat-card.stat-success{border-color:#22c55e4d;background:linear-gradient(135deg,var(--card-bg),rgba(34,197,94,.05))}.stat-card.stat-error{border-color:#ef44444d;background:linear-gradient(135deg,var(--card-bg),rgba(239,68,68,.05))}.stat-card.stat-warning{border-color:#fbbf244d;background:linear-gradient(135deg,var(--card-bg),rgba(251,191,36,.05))}.stat-icon{width:48px;height:48px;border-radius:12px;background:var(--accent-muted);display:flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.stat-card.stat-success .stat-icon{background:#22c55e26;color:#22c55e}.stat-card.stat-error .stat-icon{background:#ef444426;color:#ef4444}.stat-card.stat-warning .stat-icon{background:#fbbf2426;color:#fbbf24}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:28px;font-weight:700;color:var(--text-primary);line-height:1.2}.stat-label{font-size:13px;color:var(--text-secondary);margin-top:2px}.stats-highlights{display:flex;gap:16px;margin-bottom:24px}.highlight-card{flex:1;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:16px}.highlight-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.highlight-icon.gold{color:#fbbf24}.highlight-icon.blue{color:#3b82f6}.highlight-content{display:flex;flex-direction:column;gap:4px}.highlight-name{font-weight:600;color:var(--text-primary);font-size:16px}.highlight-stat{color:var(--text-secondary);font-size:14px}.stats-table-container{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;overflow:hidden}.table-controls{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border);gap:16px;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:8px;background:var(--input-bg);border:1px solid var(--border);border-radius:8px;padding:8px 12px}.search-box svg{color:var(--text-secondary)}.search-box input{background:transparent;border:none;outline:none;color:var(--text-primary);font-size:14px;width:200px}.search-box input::placeholder{color:var(--text-muted)}.sort-control{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:14px}.sort-control select{padding:6px 10px;border-radius:6px;background:var(--input-bg);border:1px solid var(--border);color:var(--text-primary);font-size:14px;cursor:pointer}.table-count{font-size:13px;color:var(--text-secondary)}.stats-table{width:100%;border-collapse:collapse}.stats-table th,.stats-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border)}.stats-table th{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-subtle)}.stats-table tr:hover{background:var(--bg-hover)}.stats-table tr:last-child td{border-bottom:none}.empty-row{text-align:center!important;color:var(--text-secondary);padding:40px 16px!important}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:12px;font-weight:600;background:var(--bg-subtle);color:var(--text-secondary)}.rank-badge.rank-1{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.rank-badge.rank-2{background:linear-gradient(135deg,#9ca3af,#6b7280);color:#fff}.rank-badge.rank-3{background:linear-gradient(135deg,#cd7f32,#b87333);color:#fff}.user-cell{display:flex;flex-direction:column}.user-name{font-weight:500;color:var(--text-primary)}.user-email{font-size:12px;color:var(--text-secondary)}.answer-cell{display:flex;flex-direction:column;gap:2px}.answer-total{font-weight:600;color:var(--text-primary)}.answer-correct{font-size:12px;color:var(--text-secondary)}.accuracy-cell{display:flex;align-items:center;gap:10px}.accuracy-bar{width:80px;height:6px;background:var(--bg-subtle);border-radius:3px;overflow:hidden}.accuracy-fill{height:100%;border-radius:3px;transition:width .3s}.accuracy-excellent .accuracy-fill{background:linear-gradient(90deg,#22c55e,#4ade80)}.accuracy-good .accuracy-fill{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.accuracy-average .accuracy-fill{background:linear-gradient(90deg,#fbbf24,#fcd34d)}.accuracy-needs-work .accuracy-fill{background:linear-gradient(90deg,#ef4444,#f87171)}.accuracy-value{font-weight:500;font-size:13px}.rating-cell{display:flex;align-items:center;gap:6px}.rating-value{font-weight:600;color:var(--text-primary)}.rating-trend{color:var(--text-secondary)}.rating-cell.trend-up .rating-trend{color:#22c55e}.rating-cell.trend-down .rating-trend{color:#ef4444}.time-cell,.date-cell{color:var(--text-secondary);font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:24px}.stats-section{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:24px}.stats-section h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 16px;display:flex;align-items:center;gap:8px}.frame-breakdown{display:flex;flex-direction:column;gap:12px}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-subtle);border-radius:8px}.breakdown-label{color:var(--text-secondary);font-size:14px}.breakdown-value{font-weight:600;color:var(--text-primary)}.subject-breakdown{display:flex;flex-direction:column;gap:16px}.subject-row{display:flex;flex-direction:column;gap:8px}.subject-info{display:flex;justify-content:space-between;align-items:center}.subject-name{font-weight:500;color:var(--text-primary)}.subject-count{font-size:13px;color:var(--text-secondary)}.subject-bar-container{display:flex;align-items:center;gap:12px}.subject-bar{flex:1;height:8px;background:var(--bg-subtle);border-radius:4px;overflow:hidden}.subject-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),#818cf8);border-radius:4px;transition:width .3s}.subject-percent{font-size:13px;font-weight:600;color:var(--text-primary);min-width:40px;text-align:right}.no-data{text-align:center;color:var(--text-secondary);padding:20px;font-style:italic}.accuracy-distribution{display:flex;flex-direction:column;gap:12px}.distribution-row{display:flex;flex-direction:column;gap:6px}.distribution-info{display:flex;align-items:center;gap:8px}.dist-icon{flex-shrink:0}.dist-icon.excellent{color:#22c55e}.dist-icon.good{color:#3b82f6}.dist-icon.average{color:#fbbf24}.dist-icon.learning{color:#ef4444}.distribution-label{font-size:13px;color:var(--text-secondary)}.distribution-bar-container{display:flex;align-items:center;gap:12px}.distribution-bar{flex:1;height:8px;background:var(--bg-subtle);border-radius:4px;overflow:hidden}.distribution-bar-fill{height:100%;border-radius:4px;transition:width .3s}.distribution-bar-fill.excellent{background:linear-gradient(90deg,#22c55e,#4ade80)}.distribution-bar-fill.good{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.distribution-bar-fill.average{background:linear-gradient(90deg,#fbbf24,#fcd34d)}.distribution-bar-fill.learning{background:linear-gradient(90deg,#ef4444,#f87171)}.distribution-count{font-size:13px;font-weight:600;color:var(--text-primary);min-width:40px;text-align:right}.chart-legend{display:flex;justify-content:center;gap:24px;margin-top:16px;padding-top:12px;border-top:1px solid var(--border)}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary)}.legend-color{width:12px;height:12px;border-radius:2px}.legend-color.correct{background:#22c55e}.legend-color.total{background:var(--bg-subtle)}.daily-chart{display:flex;align-items:flex-end;gap:4px;height:120px;padding-top:20px}.daily-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.daily-bar{width:100%;max-width:40px;background:var(--bg-subtle);border-radius:4px 4px 0 0;display:flex;flex-direction:column-reverse;overflow:hidden;margin-top:auto}.daily-bar-success{background:#22c55e;width:100%}.daily-bar-failed{background:#ef4444;width:100%}.daily-label{font-size:10px;color:var(--text-secondary);margin-top:8px;white-space:nowrap}.questions-section{margin-top:24px}.section-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding-bottom:16px;border-bottom:1px solid var(--border);margin-bottom:16px}.section-header h3{margin:0;display:flex;align-items:center;gap:8px}.section-chevron{transition:transform .2s}.section-chevron.expanded{transform:rotate(90deg)}.section-badge{background:var(--accent);color:#fff;font-size:12px;padding:2px 8px;border-radius:12px;font-weight:500}.section-actions{display:flex;gap:8px}.questions-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:16px;flex-wrap:wrap}.controls-left,.controls-right{display:flex;align-items:center;gap:12px}.checkbox-label{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text-secondary);cursor:pointer}.checkbox-label input{cursor:pointer}.filter-select{padding:6px 10px;border-radius:6px;background:var(--input-bg);border:1px solid var(--border);color:var(--text-primary);font-size:14px;cursor:pointer}.questions-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px;color:var(--text-secondary)}.no-questions{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.no-questions svg{color:#22c55e;margin-bottom:12px}.questions-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}.question-item{display:flex;gap:12px;padding:12px 16px;background:var(--bg-subtle);border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s;border:2px solid transparent}.question-item:hover{background:var(--bg-hover)}.question-item.selected{border-color:var(--accent);background:#6366f10d}.question-item.completed{border-color:#22c55e4d;background:#22c55e0d}.question-item.failed{border-color:#ef44444d;background:#ef44440d}.question-item.processing{border-color:#3b82f64d;background:#3b82f60d}.question-checkbox{display:flex;align-items:flex-start;padding-top:2px}.question-checkbox input{width:18px;height:18px;cursor:pointer}.status-success{color:#22c55e}.status-error{color:#ef4444}.status-processing{color:#3b82f6}.status-pending{color:var(--text-secondary)}.question-info{flex:1;min-width:0}.question-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.question-id{font-weight:600;color:var(--text-primary)}.question-subject{font-size:11px;padding:2px 6px;background:var(--accent-muted);color:var(--accent);border-radius:4px;text-transform:uppercase}.question-warning{font-size:11px;padding:2px 6px;background:#fbbf2426;color:#fbbf24;border-radius:4px}.question-text{font-size:13px;color:var(--text-secondary);margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.question-status{font-size:12px;margin-top:6px;padding:4px 8px;border-radius:4px}.question-status.completed{background:#22c55e1a;color:#22c55e}.question-status.failed{background:#ef44441a;color:#ef4444}.questions-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.pagination-info{font-size:13px;color:var(--text-secondary)}.generation-console{background:#0d1117;border:1px solid #30363d;border-radius:12px;overflow:hidden;margin-top:24px}.console-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#161b22;border-bottom:1px solid #30363d}.console-title{display:flex;align-items:center;gap:8px;color:#f0f6fc;font-weight:500}.console-status{display:flex;align-items:center;gap:6px;font-size:12px;padding:4px 8px;border-radius:4px}.console-status.processing{background:#3b82f626;color:#58a6ff}.console-actions{display:flex;gap:8px}.console-progress{padding:16px;border-bottom:1px solid #30363d}.progress-bar-container{height:8px;background:#21262d;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#238636,#3fb950);border-radius:4px;transition:width .3s}.progress-bar-fill.animating{background:linear-gradient(90deg,#238636,#3fb950,#238636);background-size:200% 100%;animation:progressPulse 1.5s linear infinite}@keyframes progressPulse{0%{background-position:0% 0%}to{background-position:200% 0%}}.progress-stats{display:flex;justify-content:space-between;align-items:center}.progress-percent{font-size:14px;font-weight:600;color:#f0f6fc}.progress-counts{display:flex;gap:12px;font-size:12px}.count-success{color:#3fb950}.count-failed{color:#f85149}.count-total{color:#8b949e}.console-output{padding:16px;max-height:300px;overflow-y:auto;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;line-height:1.6}.log-entry{display:flex;gap:8px;margin-bottom:4px}.log-time{color:#6e7681;flex-shrink:0}.log-qid{color:#58a6ff;font-weight:500;flex-shrink:0}.log-message{color:#c9d1d9;word-break:break-word}.log-entry.info .log-message{color:#8b949e}.log-entry.success .log-message{color:#3fb950}.log-entry.error .log-message{color:#f85149}.log-entry.progress .log-message{color:#58a6ff}.log-entry.log .log-message{color:#c9d1d9}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;border:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--card-bg);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-hover)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-small{padding:6px 12px;font-size:13px}@media(max-width:768px){.stats-page{padding:16px}.stats-header{flex-direction:column;gap:16px;align-items:flex-start}.stats-overview{grid-template-columns:repeat(2,1fr)}.stats-highlights{flex-direction:column}.table-controls{flex-direction:column;gap:12px;align-items:stretch}.search-box input{width:100%}.questions-controls{flex-direction:column;align-items:stretch}.controls-left,.controls-right{justify-content:space-between}.stats-table{font-size:13px}.stats-table th,.stats-table td{padding:10px 12px}}
