@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600&display=swap";
:root{--orange:#f58220;--orange-light:#fff3e6;--orange-100:bisque;--orange-200:#ffd09b;--orange-hover:#e0740c;--blue:#1e88e5;--blue-light:#e3f2fd;--blue-100:#bbdefb;--blue-200:#90caf9;--blue-hover:#1565c0;--white:#fff;--bg:#fff;--bg-section:#f9fafb;--bg-card:#fff;--text-primary:#1a1a2e;--text-secondary:#4a4a6a;--text-muted:#8e8ea9;--border:#e5e7eb;--border-light:#f0f0f5;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--container-max:1280px;--nav-height:64px;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 30px #0000001a;--shadow-orange:0 4px 14px #f5822033;--shadow-blue:0 4px 14px #1e88e533;--transition-fast:.15s ease;--transition-base:.25s ease;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg);color:var(--text-secondary);min-height:100vh;line-height:1.7;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700;line-height:1.2}h1{font-size:clamp(2.2rem,5vw,3.5rem)}h2{font-size:clamp(1.6rem,3.5vw,2.5rem)}h3{font-size:clamp(1.2rem,2.5vw,1.5rem)}h4{font-size:1.15rem}p{color:var(--text-secondary);font-size:1rem}.container{max-width:var(--container-max);margin:0 auto;padding:0 2rem}.section{padding:5rem 2rem}.section-alt{background:var(--bg-section)}.section-header{text-align:center;margin-bottom:3.5rem}.section-header h2{margin-bottom:.75rem}.section-header p{max-width:560px;margin:0 auto;font-size:1.05rem}.text-orange{color:var(--orange)}.text-blue{color:var(--blue)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--orange);transform:translateY(-2px)}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);font-size:.9rem;font-weight:600;font-family:var(--font-sans);border:none;align-items:center;gap:.5rem;padding:.7rem 1.5rem;display:inline-flex}.btn-orange{background:var(--orange);color:var(--white);box-shadow:var(--shadow-orange)}.btn-orange:hover{background:var(--orange-hover);transform:translateY(-1px);box-shadow:0 6px 20px #f582204d}.btn-blue{background:var(--blue);color:var(--white);box-shadow:var(--shadow-blue)}.btn-blue:hover{background:var(--blue-hover);transform:translateY(-1px)}.btn-outline{color:var(--text-primary);border:1.5px solid var(--border);background:0 0}.btn-outline:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-light)}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.form-select,.form-input{background:var(--bg-section);border:1.5px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem;font-family:var(--font-sans);transition:border-color var(--transition-fast);width:100%;padding:.6rem .9rem}.form-select:focus,.form-input:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px #f582201a}input[type=range]{appearance:none;background:var(--border);border-radius:3px;outline:none;width:100%;height:5px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--orange);cursor:pointer;width:16px;height:16px;transition:transform var(--transition-fast);border-radius:50%;box-shadow:0 1px 4px #f582204d}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}.module-page{padding-top:calc(var(--nav-height) + 1.5rem);background:var(--bg);min-height:100vh}.module-header{text-align:center;padding:2rem 2rem 2.5rem}.module-header h1{margin-bottom:.5rem}.module-header p{max-width:620px;color:var(--text-secondary);margin:0 auto}.module-badge{text-transform:uppercase;letter-spacing:.1em;border-radius:999px;margin-bottom:.75rem;padding:.25rem .8rem;font-size:.7rem;font-weight:700;display:inline-block}.badge-orange{background:var(--orange-light);color:var(--orange);border:1px solid var(--orange-100)}.badge-blue{background:var(--blue-light);color:var(--blue);border:1px solid var(--blue-100)}.module-content{max-width:var(--container-max);margin:0 auto;padding:0 2rem 4rem}.module-grid{grid-template-columns:300px 1fr;align-items:start;gap:1.5rem;display:grid}.module-controls{top:calc(var(--nav-height) + 1rem);position:sticky}.controls-card{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.module-results{flex-direction:column;gap:1.5rem;display:flex}.chart-container{min-height:380px;padding:1.5rem;position:relative}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.75rem;padding:1.25rem;display:grid}.stat-item{text-align:center;background:var(--bg-section);border-radius:var(--radius-sm);border:1px solid var(--border-light);padding:.85rem .5rem}.stat-value{color:var(--orange);font-size:1.25rem;font-weight:700;font-family:var(--font-mono)}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.2rem;font-size:.7rem}.matrix-cell{border:1.5px solid var(--border);background:var(--bg);width:56px;height:38px;color:var(--text-primary);text-align:center;font-family:var(--font-mono);border-radius:4px;font-size:.85rem}.matrix-cell:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 2px #f582201f}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.animate-fade-in-up{animation:.5s forwards fadeInUp}.animate-fade-in{animation:.4s forwards fadeIn}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}@media (max-width:1024px){.module-grid{grid-template-columns:1fr}.module-controls{position:static}}@media (max-width:768px){.section{padding:3.5rem 1.25rem}.container{padding:0 1.25rem}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}}
