: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-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)}*{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}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.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}.relative{position:relative}.overflow-hidden{overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@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-sm{padding:var(--space-2)var(--space-4);font-size:.875rem}.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)}.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)}.badge-tier{letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem;font-weight:800}.progress{background:var(--neutral-200);border-radius:var(--radius-full);width:100%;height:6px;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}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--primary-600)}.hero{padding:var(--space-24)0;background:linear-gradient(135deg,#0d1016 0%,#151c28 50%,#141f1c 100%);position:relative;overflow:hidden}.hero:before{content:"";background-image:radial-gradient(circle at 1px 1px,var(--primary-200).5px,transparent 0);opacity:.15;background-size:48px 48px;position:absolute;inset:0}.platform-layout{min-height:100vh;display:flex}.platform-sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:240px;display:flex;position:fixed;top:0;bottom:0;left:0}.platform-sidebar-header{padding:var(--space-4)var(--space-5);border-bottom:1px solid var(--border);align-items:center;gap:var(--space-3);display:flex}.platform-sidebar-nav{padding:var(--space-4)var(--space-3);gap:var(--space-1);flex-direction:column;flex:1;display:flex;overflow-y:auto}.sidebar-link{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);font-size:.9375rem;font-weight:500;display:flex}.sidebar-link:hover{background:var(--surface-elevated);color:var(--text-primary)}.sidebar-link.active{background:var(--primary-50);color:var(--primary-600);font-weight:600}.sidebar-section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);padding:var(--space-4)var(--space-3)var(--space-2);font-size:.6875rem;font-weight:700}.platform-sidebar-footer{padding:var(--space-4)var(--space-5);border-top:1px solid var(--border)}.platform-main{flex:1;min-height:100vh;margin-left:240px}.platform-topbar{padding:var(--space-3)var(--space-6);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:50;background:#0c0f16e6;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.platform-content{padding:var(--space-6);max-width:1200px}.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}.product-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:all var(--transition-base);cursor:pointer;overflow:hidden}.product-card:hover{border-color:var(--primary-400);box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-2px)}.product-card-image{aspect-ratio:1;background:var(--neutral-200);justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.product-card-image img{object-fit:cover;width:100%;height:100%}.product-card-body{padding:var(--space-4)}.product-card-title{margin-bottom:var(--space-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.product-card-price{align-items:baseline;gap:var(--space-2);display:flex}.product-card-cost{color:var(--accent-500);font-size:.875rem;font-weight:700}.product-card-margin{color:var(--success-700);background:var(--success-50);border-radius:var(--radius-sm);padding:2px 6px;font-size:.75rem}.product-card-actions{gap:var(--space-2);padding:0 var(--space-4)var(--space-4);display:flex}.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}.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-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}.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-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)}.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)}.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)}.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}.empty-state{padding:var(--space-12);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{margin-bottom:var(--space-4);opacity:.3;font-size:3rem}.empty-state-title{margin-bottom:var(--space-2);font-size:1.25rem;font-weight:700}.empty-state-desc{color:var(--text-tertiary);max-width:400px;margin-bottom:var(--space-6);font-size:.9375rem}@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 spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(8px)}}.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}@media (max-width:1024px){.workspace{grid-template-columns:1fr}.workspace-main,.workspace-sidebar{max-height:none}.platform-sidebar{display:none}.platform-main{margin-left:0}}@media (max-width:768px){html{font-size:14px}h1{font-size:2rem}h2{font-size:1.75rem}.stat-strip{grid-template-columns:repeat(2,1fr)}}
