.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.app-header{border-bottom:1px solid var(--border-subtle);background:#0b0f19d9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;top:0;z-index:50}.header-container{max-width:1360px;margin:0 auto;padding:.875rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}@media (max-width: 680px){.header-container{flex-wrap:wrap;justify-content:center;gap:.75rem;padding:.75rem 1rem}.brand-section{width:100%;justify-content:center;text-align:center}.mode-switcher-container{order:2}.header-meta{order:3;flex-wrap:wrap;justify-content:center}}.brand-section{display:flex;align-items:center;gap:.875rem}.logo-badge{width:38px;height:38px;border-radius:var(--radius-md);background:var(--gradient-brand);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--glow-primary)}.brand-titles{display:flex;flex-direction:column}.brand-title{font-size:1.25rem;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#fff 30%,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-tagline{font-size:.775rem;color:var(--text-muted);font-weight:500}.header-meta{display:flex;align-items:center;gap:.875rem}.milestone-badge{font-size:.75rem;padding:.25rem .625rem;border-radius:9999px;background:var(--gradient-badge);border:1px solid rgba(99,102,241,.3);color:#c7d2fe;font-weight:600}.backend-status-pill{display:flex;align-items:center;gap:.5rem;font-size:.75rem;padding:.25rem .75rem;border-radius:9999px;border:1px solid var(--border-subtle);background:#111827cc;color:var(--text-muted);font-weight:500}.status-dot{width:8px;height:8px;border-radius:50%}.status-dot.online{background-color:var(--accent-emerald);box-shadow:0 0 10px #10b98199}.status-dot.offline{background-color:var(--accent-rose);box-shadow:0 0 10px #f43f5e99}.status-dot.checking{background-color:var(--accent-amber);animation:pulseGlow 1.5s infinite}.app-main{flex:1;max-width:1360px;width:100%;margin:0 auto;padding:2rem 1.5rem 3.5rem;display:flex;flex-direction:column;gap:2rem}.hero-banner{text-align:center;max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:.75rem}.hero-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.3rem .85rem;background:#6366f11f;border:1px solid rgba(99,102,241,.3);border-radius:9999px;color:#a5b4fc;font-size:.8rem;font-weight:600}.hero-title{font-size:2.25rem;font-weight:800;letter-spacing:-.03em;line-height:1.2}.hero-highlight{background:var(--gradient-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.05rem;color:var(--text-muted)}.workspace-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 1024px){.workspace-grid{grid-template-columns:1.15fr 1fr}}.panel-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 10px 30px #0000004d;transition:border-color var(--transition-normal)}.panel-card:hover{border-color:var(--border-light)}.panel-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.panel-title-group{display:flex;align-items:center;gap:.625rem}.panel-title{font-size:1.05rem;font-weight:700;color:var(--text-main)}.language-selector-group{display:flex;align-items:center;gap:.5rem}.lang-selector-label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.segmented-control{display:inline-flex;padding:3px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);gap:2px}.segment-btn{padding:.45rem 1rem;border-radius:var(--radius-sm);font-size:.825rem;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:.4rem;transition:all var(--transition-fast)}.segment-btn:hover{color:var(--text-main);background:#ffffff0d}.segment-btn.active{background:var(--accent-primary);color:#fff;box-shadow:0 2px 8px #6366f166}.lang-icon{font-size:.9rem}.sample-bar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.sample-bar-label{font-size:.75rem;color:var(--text-dim);font-weight:500}.sample-chip{padding:.25rem .625rem;font-size:.75rem;border-radius:9999px;background:#ffffff0a;border:1px solid var(--border-subtle);color:var(--text-muted);transition:all var(--transition-fast)}.sample-chip:hover{background:#6366f126;border-color:#6366f166;color:#e0e7ff}.editor-wrapper{display:flex;flex-direction:column;border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;background:var(--bg-input);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.editor-wrapper:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 2px #6366f133}.editor-bar{display:flex;align-items:center;justify-content:space-between;padding:.5rem .875rem;background:#00000059;border-bottom:1px solid var(--border-subtle);font-size:.75rem;color:var(--text-dim)}.editor-tag{font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-cyan)}.code-textarea{width:100%;min-height:220px;background:transparent;color:#e2e8f0;font-family:var(--font-mono);font-size:.875rem;line-height:1.6;padding:.875rem;border:none;resize:vertical;outline:none;-moz-tab-size:4;tab-size:4}.code-textarea::placeholder{color:#475569}.error-input-section{display:flex;flex-direction:column;gap:.5rem}.error-input-header{display:flex;align-items:center;justify-content:space-between}.error-label{font-size:.85rem;font-weight:600;color:var(--text-main);display:flex;align-items:center;gap:.375rem}.optional-tag{font-size:.7rem;color:var(--text-dim);font-weight:400;padding:.1rem .4rem;border-radius:var(--radius-sm);background:#ffffff0d}.error-textarea{width:100%;min-height:80px;background:var(--bg-input);color:#fca5a5;font-family:var(--font-mono);font-size:.825rem;line-height:1.5;padding:.75rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);resize:vertical;outline:none;transition:border-color var(--transition-fast)}.error-textarea:focus{border-color:var(--accent-rose);box-shadow:0 0 0 2px #f43f5e33}.action-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.5rem;flex-wrap:wrap}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--gradient-brand);color:#fff;font-weight:700;font-size:.95rem;padding:.75rem 1.75rem;border-radius:var(--radius-md);box-shadow:var(--glow-primary);transition:all var(--transition-normal)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #6366f18c}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{display:inline-flex;align-items:center;gap:.375rem;background:#ffffff0d;border:1px solid var(--border-subtle);color:var(--text-muted);font-size:.85rem;font-weight:500;padding:.65rem 1.15rem;border-radius:var(--radius-md);transition:all var(--transition-fast)}.btn-secondary:hover:not(:disabled){color:var(--text-main);background:#ffffff1a}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.alert-box{padding:.875rem 1.125rem;border-radius:var(--radius-md);font-size:.85rem;display:flex;align-items:flex-start;gap:.75rem;animation:slideDownFade .3s ease}.alert-warning{background:#f59e0b1f;border:1px solid rgba(245,158,11,.35);color:#fde68a}.alert-error{background:#f43f5e1f;border:1px solid rgba(244,63,94,.35);color:#fecdd3}.alert-icon{font-size:1.15rem;line-height:1}.results-panel{display:flex;flex-direction:column;gap:1.25rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:380px;padding:2.5rem 1.5rem;background:#11182766;border:1px dashed var(--border-subtle);border-radius:var(--radius-lg);gap:1rem}.empty-state-icon{width:56px;height:56px;border-radius:50%;background:#6366f11a;display:flex;align-items:center;justify-content:center;color:#818cf8;font-size:1.5rem}.empty-state-title{font-size:1.1rem;font-weight:700;color:var(--text-main)}.empty-state-desc{font-size:.875rem;color:var(--text-muted);max-width:360px}.placeholder-callout{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#6366f11a;border:1px solid rgba(99,102,241,.25);border-radius:var(--radius-md);font-size:.8rem;color:#c7d2fe}.placeholder-badge{font-size:.7rem;text-transform:uppercase;font-weight:800;padding:.2rem .5rem;border-radius:var(--radius-sm);background:var(--accent-primary);color:#fff;white-space:nowrap}.result-card{background:#0f172a99;border-radius:var(--radius-md);border:1px solid var(--border-subtle);overflow:hidden;transition:transform var(--transition-fast),border-color var(--transition-fast)}.result-card:hover{transform:translateY(-1px);border-color:#ffffff26}.result-card-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle);font-size:.85rem;font-weight:700}.result-card-body{padding:1rem;font-size:.9rem;line-height:1.6}.card-root-cause{border-left:4px solid var(--accent-rose)}.card-root-cause .result-card-header{color:#fda4af;background:#f43f5e14}.card-evidence{border-left:4px solid var(--accent-amber)}.card-evidence .result-card-header{color:#fde68a;background:#f59e0b14}.card-fix{border-left:4px solid var(--accent-emerald)}.card-fix .result-card-header{color:#6ee7b7;background:#10b98114}.card-question{border-left:4px solid var(--accent-cyan)}.card-question .result-card-header{color:#67e8f9;background:#06b6d414}.evidence-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.evidence-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;color:#e2e8f0}.evidence-bullet{color:var(--accent-amber);font-weight:700}.code-block-display{background:var(--bg-code);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);padding:.875rem;overflow-x:auto;font-family:var(--font-mono);font-size:.825rem;line-height:1.5;color:#a7f3d0;white-space:pre}.question-container{display:flex;flex-direction:column;gap:.75rem}.question-text{font-size:.925rem;font-weight:500;color:#f1f5f9}.question-tip{font-size:.8rem;color:var(--text-dim);font-style:italic}.app-footer{border-top:1px solid var(--border-subtle);background:#07090ee6;padding:1.5rem;font-size:.8rem;color:var(--text-dim);margin-top:auto}.footer-container{max-width:1360px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.footer-ai-disclosure{color:var(--text-muted);font-size:.775rem}.sample-chips-row{display:flex;flex-wrap:wrap;gap:.5rem}.diagnostic-summary-bar{display:flex;flex-direction:column;gap:.625rem;padding:1rem;background:#0f172ab3;border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-bottom:.5rem}.diagnostic-badge-group{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.status-badge{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.25rem .65rem;border-radius:var(--radius-sm);display:inline-flex;align-items:center}.badge-error{background:#f43f5e2e;color:#fda4af;border:1px solid rgba(244,63,94,.35)}.badge-valid{background:#10b9812e;color:#6ee7b7;border:1px solid rgba(16,185,129,.35)}.badge-runtime{background:#f59e0b2e;color:#fde68a;border:1px solid rgba(245,158,11,.35)}.badge-ambiguous{background:#a855f72e;color:#d8b4fe;border:1px solid rgba(168,85,247,.35)}.meta-pill{font-size:.725rem;font-weight:600;padding:.2rem .55rem;border-radius:var(--radius-sm);background:#ffffff0f;color:var(--text-muted);border:1px solid var(--border-subtle)}.line-pill{background:#ef44441f;color:#fca5a5;border-color:#ef444440}.confidence-pill{background:#6366f11f;color:#c7d2fe;border-color:#6366f140}.disclaimer-text{font-size:.775rem;color:var(--text-dim);display:flex;align-items:center;gap:.375rem}.evidence-code-text{font-family:var(--font-mono);background:#00000040;padding:.15rem .35rem;border-radius:3px;font-size:.8rem;color:#cbd5e1}.copy-fix-btn{background:#ffffff14;border:1px solid var(--border-subtle);color:#cbd5e1;font-size:.725rem;font-weight:600;padding:.2rem .55rem;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.copy-fix-btn:hover{background:#ffffff26;color:#fff}.fix-explanation-box{margin-top:.875rem;background:#10b98112;border:1px solid rgba(16,185,129,.22);border-radius:var(--radius-sm);padding:.75rem .875rem;font-size:.85rem;color:#d1fae5;line-height:1.5}.fix-explanation-title{color:#6ee7b7;display:block;margin-bottom:.25rem}.expected-output-box{margin-top:.875rem;background:#06b6d412;border:1px solid rgba(6,182,212,.22);border-radius:var(--radius-sm);padding:.75rem .875rem;font-size:.85rem}.expected-output-title{color:#67e8f9;display:block;margin-bottom:.375rem}.output-code-block{background:var(--bg-code);border:1px solid rgba(6,182,212,.15);border-radius:4px;padding:.5rem .75rem;font-family:var(--font-mono);font-size:.8rem;color:#e0f2fe;white-space:pre-wrap;word-break:break-all;margin:0}.guided-stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1.25rem}@media (max-width: 640px){.guided-stepper{grid-template-columns:repeat(2,1fr);gap:.375rem}}.step-tab{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem .75rem;background:#ffffff0a;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-dim);font-size:.8rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.step-tab:hover{background:#ffffff14;color:var(--text-main);border-color:var(--border-light)}.step-tab.active{background:#6366f12e;border-color:var(--accent-primary);color:#c7d2fe;box-shadow:0 0 16px #6366f140}.step-tab.completed{color:#a7f3d0;border-color:#10b9814d}.step-num{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;background:#ffffff1a}.step-tab.active .step-num{background:var(--accent-primary);color:#fff}.step-tab.completed .step-num{background:#10b98140;color:#6ee7b7}.step-title{white-space:nowrap}.step-content-pane{display:flex;flex-direction:column;gap:1rem;animation:fadeInStep .25s ease-out}@keyframes fadeInStep{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.step-card-heading{display:flex;align-items:center;gap:.625rem}.step-indicator-tag{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:#6366f133;color:#c7d2fe;padding:.15rem .45rem;border-radius:var(--radius-sm);border:1px solid rgba(99,102,241,.3)}.diagnostic-headline{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.diagnostic-category-tag{font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:var(--radius-sm);background:#f43f5e26;color:#fda4af;border:1px solid rgba(244,63,94,.3)}.diagnostic-line-tag{font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:var(--radius-sm);background:#f59e0b26;color:#fde68a;border:1px solid rgba(245,158,11,.3)}.diagnostic-severity-tag{font-size:.725rem;font-weight:600;padding:.2rem .55rem;border-radius:var(--radius-sm);background:#ffffff0f;color:var(--text-muted)}.beginner-explanation-text{font-size:.95rem;line-height:1.6;color:#f1f5f9;margin-bottom:.75rem}.step-evidence-box{background:#0000004d;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);padding:.75rem;display:flex;flex-direction:column;gap:.375rem}.evidence-header-label{font-size:.75rem;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.evidence-line-snippet{display:flex;flex-direction:column;gap:.25rem}.step-navigation-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.5rem;border-top:1px solid var(--border-subtle);flex-wrap:wrap}.nav-step-info{font-size:.8rem;color:var(--text-dim)}.card-hint{border-left:4px solid var(--accent-amber)}.card-hint .result-card-header{color:#fde68a;background:#f59e0b14}.hint-container{display:flex;flex-direction:column;gap:1rem}.hint-question-box{background:#f59e0b14;border:1px solid rgba(245,158,11,.25);border-radius:var(--radius-md);padding:1rem}.hint-text{font-size:1rem;font-weight:500;color:#fef3c7;line-height:1.6;margin:0}.hint-reflection-callout{display:flex;align-items:flex-start;gap:.625rem;font-size:.85rem;color:#cbd5e1;background:#ffffff0a;padding:.75rem;border-radius:var(--radius-sm)}.skip-hint-row{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;font-size:.8rem}.skip-hint-text{color:var(--text-dim)}.btn-text-link{background:none;border:none;color:var(--accent-cyan);font-weight:600;font-size:.825rem;cursor:pointer;padding:0;text-decoration:underline;transition:color var(--transition-fast)}.btn-text-link:hover{color:#a5f3fc}.fix-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:.625rem;flex-wrap:wrap;gap:.5rem}.fix-toolbar-label{font-size:.8rem;font-weight:600;color:var(--text-dim)}.card-verify{border-left:4px solid var(--accent-emerald)}.card-verify .result-card-header{color:#6ee7b7;background:#10b98114}.verification-status-banner{background:#10b98114;border:1px solid rgba(16,185,129,.25);border-radius:var(--radius-md);padding:.875rem 1rem;margin-bottom:1rem}.verification-badge{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.9rem;color:#6ee7b7;margin-bottom:.25rem}.verification-check-icon{width:18px;height:18px;border-radius:50%;background:#10b98133;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800}.verification-disclaimer-note{font-size:.775rem;color:var(--text-dim);margin:0}.output-safety-tag{font-size:.725rem;color:var(--text-dim);font-style:italic;display:block;margin-top:.375rem}.interactive-attempt-section{background:#0f172a80;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:1rem;margin-top:1rem;display:flex;flex-direction:column;gap:.625rem}.attempt-label{display:flex;align-items:center;gap:.375rem;font-size:.85rem;font-weight:600;color:#f1f5f9}.attempt-textarea{width:100%;background:var(--bg-input);color:#e2e8f0;font-family:var(--font-mono);font-size:.825rem;line-height:1.5;padding:.75rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);resize:vertical;outline:none;transition:border-color var(--transition-fast)}.attempt-textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f133}.attempt-action-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.attempt-feedback-pill{font-size:.8rem;padding:.375rem .75rem;border-radius:var(--radius-sm);font-weight:500;max-width:100%}.feedback-success{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.feedback-error{background:#f43f5e26;color:#fda4af;border:1px solid rgba(244,63,94,.3)}.technical-details-disclosure{margin-top:1rem;background:#0f172a66;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:.8rem;color:var(--text-dim)}.technical-summary{padding:.625rem .875rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;color:var(--text-muted)}.technical-summary:hover{color:#f1f5f9}.technical-body{padding:.75rem .875rem;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:.5rem}.tech-meta{margin:0;font-size:.775rem;color:var(--text-dim)}.analogy-callout-box{margin-top:.85rem;padding:.75rem 1rem;background:#6366f114;border-left:3px solid var(--accent-primary);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:.35rem}.analogy-label{display:flex;align-items:center;gap:.45rem;font-size:.8rem;color:var(--accent-cyan);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.analogy-text{font-size:.9rem;line-height:1.5;color:#e2e8f0;margin:0;font-style:italic}.actionable-summary-box{margin-top:.75rem;padding:.75rem 1rem;background:#10b98114;border-left:3px solid var(--accent-emerald);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:.35rem}.actionable-label{display:flex;align-items:center;gap:.45rem;font-size:.8rem;color:var(--accent-emerald);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.actionable-text{font-size:.9rem;line-height:1.5;color:#e2e8f0;margin:0;font-weight:500}.mode-switcher-container{display:flex;align-items:center}.mode-segmented-control{display:inline-flex;padding:4px;background:#0f172acc;border:1px solid var(--border-subtle);border-radius:var(--radius-md);gap:4px}.mode-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .95rem;border-radius:var(--radius-sm);font-size:.825rem;font-weight:600;color:var(--text-muted);transition:all var(--transition-fast);position:relative}.mode-btn:hover{color:var(--text-main);background:#ffffff0d}.mode-btn.active{background:var(--gradient-brand);color:#fff;box-shadow:0 2px 10px #6366f166}.mode-icon{font-size:.95rem}.mode-solved-count{font-size:.7rem;padding:.1rem .45rem;background:#10b98140;border:1px solid rgba(16,185,129,.5);color:#6ee7b7;border-radius:9999px;font-weight:700}.detective-hero{gap:.85rem}.detective-pill{background:#06b6d41f;border-color:#06b6d459;color:#67e8f9}.dossier-stats-bar{display:flex;align-items:center;gap:1rem;margin-top:.5rem}.dossier-stat-pill{display:inline-flex;align-items:center;gap:.4rem;font-size:.825rem;padding:.35rem .85rem;border-radius:9999px;background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:#34d399}.case-selector-bar{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.case-selector-label{font-size:.8rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.case-selector-dropdown{flex:1;background:transparent;color:var(--text-main);border:none;font-size:.85rem;font-weight:500;outline:none;cursor:pointer}.case-selector-dropdown option{background:#0f172a;color:#f8fafc}.detective-dossier-card{border-color:#06b6d440}.detective-case-title-text{font-size:1.05rem;font-weight:700;color:var(--text-main);margin-top:.25rem}.badge-solved{display:inline-flex;align-items:center;padding:.25rem .65rem;font-size:.75rem;font-weight:700;border-radius:9999px;background:#10b98126;border:1px solid rgba(16,185,129,.4);color:#34d399}.badge-open{display:inline-flex;align-items:center;padding:.25rem .65rem;font-size:.75rem;font-weight:600;border-radius:9999px;background:#06b6d41f;border:1px solid rgba(6,182,212,.3);color:#38bdf8}.scenario-briefing-box{display:flex;flex-direction:column;gap:.35rem;padding:.85rem 1rem;background:#0f172a99;border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.scenario-briefing-label{font-size:.8rem;font-weight:700;color:#f87171;text-transform:uppercase;letter-spacing:.03em}.expected-behavior-box{display:flex;flex-direction:column;gap:.35rem;padding:.85rem 1rem;background:#10b9810f;border-left:3px solid var(--accent-emerald);border-radius:var(--radius-sm)}.detective-clues-card{border-color:#6366f140}.clues-action-row{display:flex;justify-content:flex-start;margin-bottom:.85rem}.hint-reveal-btn{font-weight:600;font-size:.825rem;padding:.5rem 1rem;border-radius:var(--radius-md);border:1px solid rgba(99,102,241,.4);background:#6366f11f;color:#c7d2fe;transition:all var(--transition-fast)}.hint-reveal-btn:hover:not(:disabled){background:#6366f140;border-color:var(--accent-primary);color:#fff}.hint-reveal-btn:disabled{opacity:.6;cursor:not-allowed}.clues-list-container{display:flex;flex-direction:column;gap:.75rem}.clue-empty-prompt{font-size:.825rem;color:var(--text-muted);padding:.85rem;border:1px dashed var(--border-subtle);border-radius:var(--radius-md);text-align:center;background:#00000026}.clue-item-card{padding:.85rem 1rem;background:#0f172acc;border:1px solid rgba(139,92,246,.25);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.4rem;animation:fadeIn .25s ease-in-out}.clue-item-header{display:flex;align-items:center;gap:.5rem}.clue-number-badge{font-size:.7rem;font-weight:700;padding:.15rem .5rem;border-radius:9999px;background:#8b5cf633;color:#c4b5fd;border:1px solid rgba(139,92,246,.4);text-transform:uppercase}.clue-item-text{font-size:.875rem;color:#e2e8f0;line-height:1.5;margin:0}.detective-feedback-banner{margin-top:1.25rem;padding:1.15rem 1.25rem;border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:.65rem;animation:fadeIn .3s ease-out}.feedback-banner-correct{background:#10b9811a;border:1px solid rgba(16,185,129,.45);box-shadow:0 4px 20px #10b98126}.feedback-banner-incorrect{background:#f43f5e1a;border:1px solid rgba(244,63,94,.45);box-shadow:0 4px 20px #f43f5e26}.feedback-banner-ambiguous{background:#f59e0b1a;border:1px solid rgba(245,158,11,.45);box-shadow:0 4px 20px #f59e0b26}.feedback-banner-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.feedback-status-badge{font-size:.8rem;font-weight:800;padding:.25rem .7rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.03em}.feedback-banner-correct .feedback-status-badge{background:#10b98140;color:#34d399;border:1px solid rgba(16,185,129,.5)}.feedback-banner-incorrect .feedback-status-badge{background:#f43f5e40;color:#fb7185;border:1px solid rgba(244,63,94,.5)}.feedback-banner-ambiguous .feedback-status-badge{background:#f59e0b40;color:#fcd34d;border:1px solid rgba(245,158,11,.5)}.feedback-outcome-text{font-size:.95rem;font-weight:700;color:var(--text-main)}.feedback-pedagogical-text{font-size:.885rem;line-height:1.55;color:#cbd5e1;margin:0}.feedback-details-box{font-size:.825rem;color:#94a3b8;padding:.45rem .75rem;background:#00000040;border-radius:var(--radius-sm);display:inline-flex;gap:.5rem}.feedback-next-prompt{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.5rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.1);font-size:.85rem;color:#a7f3d0;font-weight:500}.solution-gate-container{margin-top:1.25rem;padding:1rem;background:#0f172aa6;border:1px dashed rgba(99,102,241,.4);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.solution-gate-text{margin:0;font-size:.875rem;color:var(--text-secondary);line-height:1.45}.reveal-solution-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:600;padding:.6rem 1.25rem;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem}.reveal-solution-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px #6366f173}.card-solution-revealed{border:1px solid rgba(139,92,246,.45);background:linear-gradient(180deg,#1e1b4b59,#0f172a8c);margin-top:1.25rem;border-radius:var(--radius-lg);overflow:hidden}.solution-revealed-header{background:#8b5cf626;border-bottom:1px solid rgba(139,92,246,.3);padding:.875rem 1.25rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.badge-solution-revealed{background:#8b5cf640;color:#c4b5fd;border:1px solid rgba(139,92,246,.5);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .6rem;border-radius:var(--radius-sm);display:inline-block;margin-bottom:.25rem}.solution-revealed-title{font-size:1.05rem;font-weight:700;color:#f1f5f9;margin:0}.solution-section{margin-bottom:1rem}.solution-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#a5b4fc;display:block;margin-bottom:.35rem}.solution-explanation-text{font-size:.9rem;color:#e2e8f0;line-height:1.5;margin:0}.solution-analogy-text{font-size:.875rem;color:#cbd5e1;font-style:italic;line-height:1.5;margin:0;padding:.6rem .85rem;background:#00000040;border-left:3px solid #8b5cf6;border-radius:var(--radius-sm)}.solution-code-block-container{margin:1rem 0;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);overflow:hidden;background:#090d16}.solution-notice-pill{padding:.75rem 1rem;background:#6366f11a;border:1px solid rgba(99,102,241,.25);border-radius:var(--radius-md);font-size:.825rem;color:#cbd5e1;line-height:1.45}:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "Fira Code", Menlo, Monaco, Consolas, "Liberation Mono", monospace;--bg-dark: #07090e;--bg-canvas: #0b0f19;--bg-card: rgba(17, 24, 39, .7);--bg-card-hover: rgba(30, 41, 59, .6);--bg-input: #080c14;--bg-code: #05070c;--border-subtle: rgba(255, 255, 255, .08);--border-light: rgba(255, 255, 255, .14);--border-focus: #6366f1;--text-main: #f8fafc;--text-muted: #94a3b8;--text-dim: #64748b;--accent-primary: #6366f1;--accent-purple: #8b5cf6;--accent-cyan: #06b6d4;--accent-emerald: #10b981;--accent-amber: #f59e0b;--accent-rose: #f43f5e;--gradient-brand: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #06b6d4 100%);--gradient-badge: linear-gradient(135deg, rgba(99, 102, 241, .15) 0%, rgba(139, 92, 246, .15) 100%);--glow-primary: 0 0 25px rgba(99, 102, 241, .35);--glow-cyan: 0 0 20px rgba(6, 182, 212, .25);--glow-rose: 0 0 20px rgba(244, 63, 94, .25);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-dark);color:var(--text-main);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.12) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(6,182,212,.1) 0px,transparent 50%),radial-gradient(at 50% 100%,rgba(139,92,246,.08) 0px,transparent 50%);background-attachment:fixed}code,pre,kbd{font-family:var(--font-mono)}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0003}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}@keyframes pulseGlow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
