:root{--primary-50:#172136;--primary-100:#1c2b4a;--primary-200:#243c6b;--primary-300:#2c4f96;--primary-400:#2d64d2;--primary-500:#3d7af5;--primary-600:#5a8cf2;--primary-700:#7ea5f1;--primary-800:#afc6f4;--primary-900:#dce6f9;--accent-50:#0f241f;--accent-100:#133930;--accent-200:#195748;--accent-300:#21836a;--accent-400:#20b691;--accent-500:#1ae6b3;--accent-600:#44e4bc;--accent-700:#74e7ca;--accent-800:#abeddd;--accent-900:#def7f1;--success-50:#122b1b;--success-100:#174528;--success-500:#1cce5e;--success-600:#16a249;--success-700:#52e086;--warning-50:#2b2212;--warning-500:#f6a823;--warning-600:#dc8f09;--error-50:#2b1212;--error-500:#ef4343;--error-600:#eb1414;--neutral-50:#16181d;--neutral-100:#1d2026;--neutral-200:#282c33;--neutral-300:#393e46;--neutral-400:#525760;--neutral-500:#6d737e;--neutral-600:#8b919c;--neutral-700:#abb0ba;--neutral-800:#cccfd7;--neutral-900:#e8eaee;--background:#0d1016;--surface:#161a22;--surface-elevated:#1f242d;--text-primary:#eef2f6;--text-secondary:#98a6b3;--text-tertiary:#657381;--border:#2b303b;--border-hover:#434956;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:"Outfit",var(--font-sans);--font-mono:"JetBrains Mono","Fira Code",monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006,0 2px 4px -1px #0000004d;--shadow-lg:0 10px 15px -3px #0006,0 4px 6px -2px #0000004d;--shadow-xl:0 20px 25px -5px #00000080,0 10px 10px -5px #0000004d;--shadow-2xl:0 25px 50px -12px #0009;--shadow-glow:0 0 20px #388bfd26;--shadow-glow-accent:0 0 20px #2dd4a026;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-base:.25s cubic-bezier(.4,0,.2,1);--transition-slow:.35s cubic-bezier(.4,0,.2,1)}[data-theme=light]{--background:#f9fafb;--surface:#fff;--surface-elevated:#fff;--text-primary:#141a1f;--text-secondary:#515c67;--text-tertiary:#6a7581;--border:#dce0e5;--border-hover:#bfc7cf}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background-color:var(--background);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);margin-bottom:var(--space-4);font-weight:700;line-height:1.2}h1{font-size:3rem}h2{font-size:2.25rem}h3{font-size:1.875rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1.125rem}p{margin-bottom:var(--space-4)}a{color:var(--primary-600);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--primary-700)}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:1280px;padding:0 var(--space-6);margin:0 auto}.container-narrow{max-width:960px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.min-h-screen{min-height:100vh}.text-center{text-align:center}@media (max-width:768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-6);border-radius:var(--radius-md);transition:all var(--transition-base);cursor:pointer;border:none;outline:none;font-size:1rem;font-weight:600;display:inline-flex}.btn-primary{background:linear-gradient(135deg,var(--primary-500),var(--primary-400));color:#fff;box-shadow:var(--shadow-md),var(--shadow-glow)}.btn-primary:hover{background:linear-gradient(135deg,var(--primary-400),var(--primary-300));box-shadow:var(--shadow-lg),0 0 30px #388bfd40;transform:translateY(-2px)}.btn-secondary{background:var(--surface-elevated);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--primary-500);color:var(--primary-600);background:var(--primary-50)}.btn-accent{background:linear-gradient(135deg,var(--accent-500),var(--accent-400));color:#0d1016;box-shadow:var(--shadow-md),var(--shadow-glow-accent);font-weight:700}.btn-accent:hover{background:linear-gradient(135deg,var(--accent-400),var(--accent-300));box-shadow:var(--shadow-lg),0 0 30px #2dd4a040;transform:translateY(-2px)}.btn-success{background:var(--success-500);color:#fff}.btn-success:hover{background:var(--success-600);transform:translateY(-2px)}.btn-outline{color:var(--text-secondary);border:1px solid var(--border);background:0 0}.btn-outline:hover{border-color:var(--text-secondary);color:var(--text-primary)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{color:var(--text-primary);background:var(--surface-elevated)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-md);transition:all var(--transition-base);border:1px solid var(--border)}.card:hover{box-shadow:var(--shadow-lg)}.card-interactive{cursor:pointer}.card-interactive:hover{border-color:var(--primary-400);box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-2px)}.card-header{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.badge{padding:var(--space-1)var(--space-3);border-radius:var(--radius-full);letter-spacing:.02em;align-items:center;font-size:.8125rem;font-weight:600;display:inline-flex}.badge-primary{background:var(--primary-100);color:var(--primary-700)}.badge-success{background:var(--success-100);color:var(--success-700)}.badge-warning{background:var(--warning-50);color:var(--warning-500)}.badge-accent{background:var(--accent-100);color:var(--accent-600)}.badge-secondary{background:var(--neutral-200);color:var(--neutral-700)}.progress{background:var(--neutral-200);border-radius:var(--radius-full);width:100%;height:6px;position:relative;overflow:hidden}.progress-bar{background:linear-gradient(90deg,var(--primary-500),var(--accent-500));border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.input{width:100%;padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-elevated);color:var(--text-primary);transition:all var(--transition-base);font-family:inherit;font-size:1rem}.input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-50);outline:none}.textarea{resize:vertical;min-height:120px}.navbar{border-bottom:1px solid var(--border);z-index:1000;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0c0f16e6;position:sticky;top:0}.navbar-content{padding:var(--space-3)var(--space-6);justify-content:space-between;align-items:center;display:flex}.nav-links{gap:var(--space-6);align-items:center;display:flex}.nav-link{color:var(--text-tertiary);transition:color var(--transition-fast);font-size:.9375rem;font-weight:500;position:relative}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--primary-600)}.nav-link.active:after{content:"";background:var(--primary-500);height:2px;position:absolute;bottom:-12px;left:0;right:0}.hero{padding:var(--space-24)0;background:linear-gradient(135deg,#0d1016d9 0%,#151c28cc 50%,#141f1cd9 100%),url(/robots2.png) 50%/cover no-repeat;position:relative;overflow:hidden}.hero:before{content:"";background-image:radial-gradient(circle at 1px 1px,var(--primary-200).5px,transparent 0);opacity:.1;background-size:48px 48px;position:absolute;inset:0}.module-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8);transition:all var(--transition-base)}.module-card:hover{border-color:var(--primary-400);box-shadow:var(--shadow-xl),var(--shadow-glow);transform:translateY(-4px)}.module-card-locked{opacity:.4;cursor:not-allowed}.module-card-locked:hover{box-shadow:var(--shadow-md);border-color:var(--border);transform:none}.scenario-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden}.scenario-card:before{content:"";background:linear-gradient(180deg,var(--primary-500),var(--accent-500));width:3px;height:100%;transition:transform var(--transition-base);position:absolute;top:0;left:0;transform:scaleY(0)}.scenario-card:hover:before{transform:scaleY(1)}.scenario-card:hover{border-color:var(--primary-400);box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translate(4px)}.scenario-completed{border-color:var(--success-500);background:var(--success-50)}.workspace{gap:var(--space-4);min-height:calc(100vh - 56px);padding:var(--space-4);grid-template-columns:3fr 2fr;max-width:1400px;margin:0 auto;display:grid}.workspace-main{gap:var(--space-4);max-height:calc(100vh - 56px);padding-right:var(--space-2);flex-direction:column;display:flex;overflow-y:auto}.workspace-sidebar{gap:var(--space-4);max-height:calc(100vh - 56px);padding-left:var(--space-2);flex-direction:column;display:flex;overflow-y:auto}.workspace-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5)}.workspace-panel-context{border-left:3px solid var(--primary-500)}.workspace-panel-challenge{border-left:3px solid var(--accent-500)}.workspace-panel-response{border-left:3px solid var(--neutral-400)}.workspace-panel-evaluation{border-left:3px solid var(--accent-500);background:var(--accent-50)}.workspace-panel-optimal{border-left:3px solid var(--success-500);background:var(--success-50)}.workspace-panel-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:var(--space-3);font-size:.6875rem;font-weight:700}.score-ring{background:var(--surface-elevated);border:3px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;display:flex;position:relative}.score-ring-value{font-size:1.5rem;font-weight:800;font-family:var(--font-display)}.score-bar-container{gap:var(--space-3);flex-direction:column;display:flex}.score-bar-row{align-items:center;gap:var(--space-3);display:flex}.score-bar-label{color:var(--text-tertiary);flex-shrink:0;width:100px;font-size:.75rem}.score-bar{background:var(--neutral-200);border-radius:var(--radius-full);flex:1;height:6px;overflow:hidden}.score-bar-fill{border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow);background:var(--primary-500)}.score-bar-fill-accent{background:var(--accent-500)}.score-bar-value{color:var(--text-secondary);text-align:right;flex-shrink:0;width:32px;font-size:.75rem;font-weight:700}.eval-tag{padding:var(--space-1)var(--space-3);border-radius:var(--radius-md);margin:var(--space-1);align-items:center;font-size:.8125rem;line-height:1.5;display:inline-flex}.eval-tag-strength{background:var(--success-50);color:var(--success-700);border:1px solid var(--success-500)}.eval-tag-gap{background:var(--warning-50);color:var(--warning-500);border:1px solid var(--warning-500)}.eval-tag-growth{background:var(--primary-50);color:var(--primary-700);border:1px solid var(--primary-400)}@keyframes evaluating-pulse{0%,to{opacity:.3}50%{opacity:1}}@keyframes evaluating-dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.evaluating-indicator{padding:var(--space-12);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.evaluating-ring{border:3px solid var(--border);border-top-color:var(--accent-500);width:64px;height:64px;margin-bottom:var(--space-4);border-radius:50%;animation:1s linear infinite spin}.evaluating-text{color:var(--text-secondary);font-size:.9375rem;animation:2s ease-in-out infinite evaluating-pulse}.browse-overlay{z-index:900;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--space-4);background:#000000b3;justify-content:center;display:flex;position:fixed;inset:0;overflow-y:auto}.browse-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:1100px;max-height:90vh;padding:var(--space-6);margin:auto;overflow-y:auto}.category-bar-container{gap:var(--space-4);flex-direction:column;display:flex}.category-bar-row{align-items:center;gap:var(--space-4);display:flex}.category-bar-label{color:var(--text-secondary);flex-shrink:0;width:140px;font-size:.875rem;font-weight:600}.category-bar{background:var(--neutral-200);border-radius:var(--radius-full);flex:1;height:10px;overflow:hidden}.category-bar-fill{border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.category-bar-fill-systems{background:linear-gradient(90deg,var(--primary-500),var(--primary-400))}.category-bar-fill-analytical{background:linear-gradient(90deg,var(--accent-500),var(--accent-400))}.category-bar-fill-adaptive{background:linear-gradient(90deg,var(--warning-500),var(--warning-600))}.category-bar-value{color:var(--text-primary);text-align:right;flex-shrink:0;width:48px;font-size:.9375rem;font-weight:700}.grading-grid{gap:var(--space-4);grid-template-columns:1fr 1fr 280px;min-height:400px;display:grid}.grading-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);overflow-y:auto}.grading-panel-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:var(--space-3);font-size:.6875rem;font-weight:700}.stat-strip{gap:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);text-align:center}.stat-value{font-size:2.5rem;font-weight:800;font-family:var(--font-display);margin-bottom:var(--space-2);line-height:1}.stat-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-size:.8125rem;font-weight:600}.feed-item{align-items:center;gap:var(--space-4);padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--border);transition:background var(--transition-fast);cursor:pointer;display:flex}.feed-item:hover{background:var(--surface-elevated)}.feed-item:last-child{border-bottom:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:.4s ease-out fadeIn}.slide-in{animation:.4s ease-out slideIn}.pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.spinner{border:3px solid var(--border);border-top-color:var(--accent-500);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1024px){.workspace{grid-template-columns:1fr}.workspace-main,.workspace-sidebar{max-height:none}.grading-grid{grid-template-columns:1fr}}@media (max-width:768px){html{font-size:14px}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}.stat-strip{grid-template-columns:repeat(2,1fr)}}.live-feedback{gap:var(--space-3);flex-direction:column;display:flex}.feedback-signal{align-items:center;gap:var(--space-3);display:flex}.feedback-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);flex-shrink:0;width:80px;font-size:.6875rem;font-weight:700}.feedback-dots{gap:3px;display:flex}.feedback-dot{background:var(--neutral-300);width:8px;height:8px;transition:all var(--transition-base);border-radius:50%}.feedback-dot.active{background:var(--accent-500);box-shadow:0 0 6px #1ae6b366}.feedback-dot.active-warn{background:var(--warning-500);box-shadow:0 0 6px #f6a82366}.feedback-hint{color:var(--text-tertiary);flex:1;font-size:.6875rem;line-height:1.4}.coaching-note{padding:var(--space-3)var(--space-4);border-radius:var(--radius-md);color:var(--text-secondary);background:linear-gradient(135deg,#1ae6b30f,#3d7af50a);border:1px solid #1ae6b326;font-size:.8125rem;line-height:1.6}.coaching-note:before{content:"";text-transform:uppercase;letter-spacing:.1em;color:var(--accent-500);margin-bottom:var(--space-2);font-size:.625rem;font-weight:800;display:block}.tab-bar{border-bottom:1px solid var(--border);background:var(--surface);display:flex}.tab-btn{padding:var(--space-2)var(--space-4);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;font-size:.75rem;font-weight:700}.tab-btn:hover{color:var(--text-secondary)}.tab-btn.active{color:var(--accent-500);border-bottom-color:var(--accent-500)}.scenario-welcome{max-width:640px;margin:var(--space-8)auto;padding:var(--space-6);text-align:center}.scenario-welcome-category{padding:var(--space-1)var(--space-4);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-4);align-items:center;gap:6px;font-size:.6875rem;font-weight:700;display:inline-flex}.scenario-welcome h3{letter-spacing:-.02em;margin-bottom:var(--space-3);font-size:1.5rem;font-weight:800;line-height:1.2}.scenario-welcome p{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:.9375rem;line-height:1.7}.scenario-welcome-cta{color:var(--accent-500);font-size:.8125rem;font-weight:600}.intel-section{margin-bottom:var(--space-4)}.intel-section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);margin-bottom:var(--space-2);font-size:.625rem;font-weight:800}.intel-section-content{color:var(--text-secondary);font-size:.8125rem;line-height:1.6}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.slide-up{animation:.3s ease-out slideUp}.scale-in{animation:.25s ease-out scaleIn}
