*{box-sizing:border-box}:root{--bg-darkest:#0f0f1a;--bg-dark:#1a1a2e;--bg-panel:#1e1e32;--bg-surface:#252540;--bg-elevated:#2d2d4a;--border:#3d3d5c;--border-light:#4a4a6a;--purple-deep:#6b4fa0;--purple-mid:#8b6fc0;--purple-light:#a78bdb;--purple-glow:#6b4fa04d;--green-bright:#4ade80;--green-mid:#86efac;--green-dark:#166534;--green-glow:#4ade8033;--blue-mid:#60a5fa;--blue-light:#93c5fd;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#64748b;--text-bright:#f8fafc;--error:#f87171;--warning:#fbbf24;--success:#4ade80}body{color:var(--text-primary);background:var(--bg-darkest);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px}#root{width:100%;height:100vh;overflow:hidden}h1,h2,h3,h4,p{margin:0}code{font-family:Courier New,Courier,monospace}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.terminal{background:#0d0d1a;flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.terminal-header{border-bottom:1px solid var(--border);background:#09091a;flex-shrink:0;align-items:center;gap:12px;padding:8px 12px;display:flex}.terminal-dots{gap:6px;display:flex}.dot{border-radius:50%;width:12px;height:12px}.dot.red{background:#ff5f57}.dot.yellow{background:#febc2e}.dot.green{background:#28c840}.terminal-title{color:var(--text-muted);font-family:Courier New,Courier,monospace;font-size:12px}.terminal-body{flex:1;min-height:0;padding:12px;overflow-y:auto}.terminal-line{margin:0;line-height:1.5}.terminal-line pre{white-space:pre-wrap;word-break:break-word;margin:0;font-family:Courier New,Courier,monospace;font-size:14px}.terminal-line.input pre{color:var(--text-primary)}.terminal-line.output pre{color:var(--text-secondary)}.terminal-line.error pre{color:var(--error)}.terminal-input-line{align-items:center;margin:0;display:flex}.prompt{color:var(--green-bright);-webkit-user-select:none;user-select:none;flex-shrink:0;font-family:Courier New,Courier,monospace;font-size:14px}.terminal-input{color:var(--text-primary);caret-color:var(--green-bright);background:0 0;border:none;outline:none;flex:1;padding:0;font-family:Courier New,Courier,monospace;font-size:14px}.terminal-body::-webkit-scrollbar{width:6px}.terminal-body::-webkit-scrollbar-track{background:0 0}.terminal-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.terminal-line.preview-input pre{color:var(--purple-light);opacity:.7;font-style:italic}.terminal-line.preview-output pre{color:var(--text-muted);opacity:.6;font-style:italic}.terminal-line.preview-error pre{color:var(--error);opacity:.6;font-style:italic}.terminal-hint{color:var(--text-muted);opacity:.5;margin-left:auto;font-family:Courier New,Courier,monospace;font-size:10px}.transport-diagram{flex-direction:column;height:100%;padding:16px;display:flex;position:relative}.transport-empty{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.transport-empty code{background:var(--bg-darkest);color:var(--green-bright);border-radius:4px;padding:4px 12px;font-family:Courier New,Courier,monospace}.zones-container{flex:1;grid-template-columns:repeat(4,1fr);gap:12px;min-height:0;display:grid}.zone{background:var(--bg-surface);border:2px solid var(--border);border-radius:12px;flex-direction:column;min-height:0;padding:12px;transition:all .3s;display:flex;overflow:hidden}.zone:hover{border-color:var(--zone-color)}.zone-highlight{border-color:var(--zone-color);box-shadow:0 0 20px color-mix(in srgb, var(--zone-color) 25%, transparent)}.zone-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;display:flex}.zone-icon{font-size:18px}.zone-label{color:var(--text-primary);white-space:nowrap;font-size:13px;font-weight:600}.zone-files{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex;overflow-y:auto}.zone-empty{color:var(--text-muted);text-align:center;padding:16px 0;font-size:12px;font-style:italic}.file-blob{background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;transition:background .2s;display:flex}.file-blob:hover{background:var(--bg-dark);border-color:var(--border-light)}.file-moving{border-color:var(--purple-mid);background:#6b4fa026}.file-icon{flex-shrink:0;font-size:14px}.file-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-family:Courier New,Courier,monospace;font-size:11px;overflow:hidden}.file-version{letter-spacing:.3px;border-radius:8px;flex-shrink:0;margin-left:auto;padding:1px 5px;font-family:Courier New,Courier,monospace;font-size:9px;font-weight:700;line-height:1.4}.file-version-current{color:#4ade80;background:#4ade8033;border:1px solid #4ade8059}.file-version-stale{color:#fbbf24;background:#fbbf2426;border:1px solid #fbbf244d}.file-stale{opacity:.75}.arrows-container{flex-wrap:wrap;flex-shrink:0;justify-content:center;gap:16px;padding:12px 0 4px;display:flex}.arrow{background:var(--bg-surface);border:1px solid var(--border);border-radius:16px;align-items:center;padding:4px 10px;transition:all .3s;display:flex}.arrow-active{border-color:var(--purple-mid);box-shadow:0 0 12px var(--purple-glow);background:#6b4fa033;transform:scale(1.05)}.arrow-label{color:var(--text-secondary);white-space:nowrap;font-family:Courier New,Courier,monospace;font-size:11px}.arrow-active .arrow-label{color:var(--purple-light);font-weight:600}.file-flying{background:var(--purple-mid);border:1px solid var(--purple-light);pointer-events:none;z-index:10;box-shadow:0 0 16px var(--purple-glow), 0 2px 8px #0000004d;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:flex;position:absolute}.file-flying .file-name{color:#fff;white-space:nowrap;font-family:Courier New,Courier,monospace;font-size:11px}.file-version-flying{color:#fff;background:#fff3;border:1px solid #ffffff59}.commit-graph{background:var(--bg-panel);width:100%;height:100%;overflow:auto}.commit-graph svg{min-width:100%;min-height:100%}.commit-graph-empty{height:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:13px;display:flex}.commit-graph-empty p{margin:0}.viz-panel-container{flex-direction:column;height:100%;display:flex;overflow:hidden}.viz-tabs{background:var(--bg-dark);border-bottom:1px solid var(--border);flex-shrink:0;gap:0;padding:0 12px;display:flex}.viz-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 16px;font-size:12px;transition:all .2s}.viz-tab:hover{color:var(--text-secondary)}.viz-tab.active{color:var(--purple-light);border-bottom-color:var(--purple-mid);font-weight:600}.viz-content{flex:1;min-height:0;overflow:hidden}.viz-content.transport .viz-pane,.viz-content.graph .viz-pane{height:100%}.viz-content.split{display:flex}.viz-content.split .viz-pane{border-right:1px solid var(--border);flex:1;min-width:0}.viz-content.split .viz-pane:last-child{border-right:none}.viz-pane{overflow:auto}.tutorial-overlay{background:var(--bg-surface);border:2px solid var(--border);border-radius:12px;padding:16px;transition:border-color .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 2px 8px #0003}.tutorial-flash{border-color:var(--green-bright);box-shadow:0 0 20px var(--green-glow)}.step-advance-banner{background:linear-gradient(135deg, var(--green-bright), var(--green-dark));color:#fff;text-align:center;padding:6px 16px;font-size:12px;font-weight:700;animation:.3s bannerSlideDown,.5s .5s forwards bannerFadeOut;position:absolute;top:0;left:0;right:0}@keyframes bannerSlideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes bannerFadeOut{0%{opacity:1}to{opacity:0}}.tutorial-complete{text-align:center;padding:24px}.tutorial-badge{background:var(--green-bright);width:48px;height:48px;color:var(--bg-darkest);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:24px;display:flex}.tutorial-complete h3{color:var(--green-bright);margin:0 0 8px}.tutorial-complete p{color:var(--text-secondary);margin:0;font-size:13px}.tutorial-progress{align-items:center;gap:10px;margin-bottom:12px;display:flex}.tutorial-progress-bar{background:var(--bg-elevated);border-radius:2px;flex:1;height:4px;overflow:hidden}.tutorial-progress-fill{background:var(--purple-mid);border-radius:2px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.tutorial-progress-text{color:var(--text-muted);white-space:nowrap;font-size:11px}.tutorial-step-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.tutorial-title{color:var(--text-bright);margin:0;font-size:15px}.bash-badge{background:var(--bg-elevated);color:var(--text-secondary);letter-spacing:.5px;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:9px;font-weight:700;display:inline-block}.tutorial-narrative{color:var(--text-secondary);margin:0 0 12px;font-size:13px;line-height:1.5}.tutorial-expected{background:var(--bg-darkest);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;margin-bottom:12px;padding:8px 12px;display:flex;position:relative}.tutorial-expected-label{width:100%;color:var(--text-muted);letter-spacing:.3px;font-size:11px}.tutorial-expected code{color:var(--purple-light);word-break:break-all;min-width:0;font-family:Courier New,Courier,monospace;font-size:13px}.copy-btn{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:opacity .15s,color .15s,background .15s;display:flex}.tutorial-expected:hover .copy-btn{opacity:1}.copy-btn:hover{color:var(--text-primary);background:var(--bg-elevated)}.copy-btn.copied{opacity:1;color:var(--green-bright)}.tutorial-hint-container{margin-top:8px}.tutorial-hint{color:var(--warning);background:#fbbf241a;border:1px solid #fbbf244d;border-radius:6px;margin:0;padding:8px 12px;font-size:12px}.tutorial-hint-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:4px 12px;font-size:12px;transition:all .2s}.tutorial-hint-btn:hover{background:var(--bg-elevated);color:var(--text-secondary);border-color:var(--border-light)}.help-sidebar{background:var(--bg-dark);flex-direction:column;gap:8px;padding:12px;display:flex}.help-collapse-toggle{background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.help-collapse-toggle:hover{background:var(--bg-elevated);border-color:var(--border-light)}.help-collapse-toggle.expanded{background:var(--bg-elevated);border-bottom-color:#0000;border-radius:8px 8px 0 0}.help-collapse-chevron{font-size:10px}.help-collapsible-body{border:1px solid var(--border);border-top:none;border-radius:0 0 8px 8px;flex-direction:column;gap:10px;padding:12px;animation:.2s helpExpand;display:flex}@keyframes helpExpand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.milestone-banner{color:var(--green-bright);background:#4ade801a;border:1px solid #4ade804d;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:600;animation:.3s slideIn;display:flex}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.milestone-check{font-size:16px}.help-content{flex-direction:column;gap:8px;display:flex}.help-explanation p{color:var(--text-primary);margin:0;font-size:13px;line-height:1.6}.help-why-toggle{background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text-secondary);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;transition:all .2s;display:flex}.help-why-toggle:hover{background:var(--bg-elevated)}.help-why-toggle.expanded{border-bottom-color:#0000;border-radius:6px 6px 0 0}.help-chevron{font-size:10px}.help-why{background:var(--bg-surface);border:1px solid var(--border);border-top:none;border-radius:0 0 6px 6px;padding:8px 12px}.help-why p{color:var(--text-secondary);margin:0;font-size:13px;font-style:italic;line-height:1.5}.help-related h4{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin:0 0 6px;font-size:12px}.help-related-list{flex-wrap:wrap;gap:6px;display:flex}.help-related-list code{background:var(--bg-darkest);color:var(--purple-light);border-radius:4px;padding:2px 8px;font-family:Courier New,Courier,monospace;font-size:12px}.help-empty{text-align:center;padding:12px 0}.help-empty p{color:var(--text-muted);margin:0;font-size:13px}.help-docs{border-top:1px solid var(--border);padding-top:8px}.help-docs h4{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin:0 0 8px;font-size:12px}.help-docs ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.help-docs a{color:var(--blue-mid);font-size:12px;text-decoration:none;transition:color .2s}.help-docs a:hover{color:var(--blue-light);text-decoration:underline}.milestone-toast{background:linear-gradient(135deg, var(--purple-deep), var(--purple-mid));color:#fff;box-shadow:0 8px 32px var(--purple-glow);z-index:1000;pointer-events:none;border-radius:12px;align-items:center;gap:10px;padding:12px 24px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%)translateY(-100px)}.milestone-toast.visible{transform:translate(-50%)translateY(0)}.milestone-toast-icon{font-size:20px}.milestone-toast-text{font-size:14px;font-weight:600}.file-viewer-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.file-viewer-modal{background:var(--bg-dark);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:90%;max-width:600px;max-height:70vh;display:flex;overflow:hidden;box-shadow:0 16px 48px #0006}.file-viewer-header{background:var(--bg-darkest);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.file-viewer-path{color:var(--purple-light);font-family:Courier New,Courier,monospace;font-size:13px}.file-viewer-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:16px;transition:color .2s}.file-viewer-close:hover{color:var(--error)}.file-viewer-body{flex:1;padding:12px 0;overflow:auto}.file-viewer-content{margin:0;font-family:Courier New,Courier,monospace;font-size:13px}.file-viewer-line{padding:1px 16px 1px 0;line-height:1.6;display:flex}.file-viewer-line:hover{background:#8b6fc00d}.file-viewer-line-num{color:var(--text-muted);text-align:right;-webkit-user-select:none;user-select:none;flex-shrink:0;width:40px;padding-right:16px}.file-viewer-line-text{color:var(--text-primary);white-space:pre}.welcome-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;animation:.3s welcome-fade-in;display:flex;position:fixed;inset:0}@keyframes welcome-fade-in{0%{opacity:0}to{opacity:1}}.welcome-modal{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:16px;width:90%;max-width:720px;max-height:95vh;animation:.3s welcome-slide-up;overflow-y:auto;box-shadow:0 24px 64px #00000080}@keyframes welcome-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.welcome-header{text-align:center;padding:24px 32px 0}.welcome-title{margin:0 0 8px;font-size:32px;font-weight:700}.welcome-git{color:var(--green-bright);font-family:Courier New,Courier,monospace}.welcome-viz{color:var(--purple-light)}.welcome-subtitle{color:var(--text-secondary);margin:0;font-size:16px}.welcome-body{padding:16px 32px}.welcome-section{margin-bottom:14px}.welcome-section:last-child{margin-bottom:0}.welcome-section h2{color:var(--purple-light);text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px;font-size:14px;font-weight:600}.welcome-section p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.welcome-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.welcome-list li{color:var(--text-secondary);padding-left:20px;font-size:14px;line-height:1.6;position:relative}.welcome-list li:before{content:"";background:var(--purple-mid);border-radius:50%;width:8px;height:8px;position:absolute;top:9px;left:0}.welcome-list li strong{color:var(--text-primary)}.welcome-list li code{background:var(--bg-darkest);color:var(--green-bright);border-radius:3px;padding:1px 6px;font-family:Courier New,Courier,monospace;font-size:13px}.welcome-list li kbd{background:var(--bg-dark);border:1px solid var(--border-light);color:var(--text-primary);border-radius:4px;padding:1px 6px;font-family:Courier New,Courier,monospace;font-size:12px}.welcome-footer{text-align:center;padding:0 32px 24px}.welcome-start{background:var(--purple-mid);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 36px;font-size:15px;font-weight:600;transition:background .2s,transform .1s}.welcome-start:hover{background:var(--purple-light);transform:translateY(-1px)}.welcome-start:active{transform:translateY(0)}.upgrade-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;animation:.25s upgrade-fade-in;display:flex;position:fixed;inset:0}@keyframes upgrade-fade-in{0%{opacity:0}to{opacity:1}}.upgrade-modal{background:var(--bg-surface);border:1px solid var(--border-light);text-align:center;border-radius:16px;width:90%;max-width:480px;max-height:95vh;padding:28px 32px 24px;animation:.25s upgrade-slide-up;overflow-y:auto;box-shadow:0 24px 64px #00000080}@keyframes upgrade-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.upgrade-lock{margin-bottom:8px;font-size:34px;line-height:1}.upgrade-title{color:var(--text-primary);margin:0 0 8px;font-size:22px}.upgrade-sub{color:var(--text-secondary);margin:0 0 18px;font-size:14px;line-height:1.5}.upgrade-sub strong{color:var(--purple-light)}.upgrade-feats{text-align:left;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;margin:0 0 22px;padding:16px 18px;list-style:none}.upgrade-feats li{color:var(--text-primary);padding:4px 0 4px 24px;font-size:14px;position:relative}.upgrade-feats li:before{content:"✓";color:var(--green-bright);font-weight:700;position:absolute;left:0}.upgrade-actions{flex-direction:column;gap:10px;display:flex}.upgrade-btn{cursor:pointer;text-align:center;box-sizing:border-box;border:1px solid #0000;border-radius:10px;width:100%;padding:12px 18px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;transition:all .2s;display:block}.upgrade-btn-primary{background:var(--purple-mid);color:#fff}.upgrade-btn-primary:hover{background:var(--purple-light)}.upgrade-btn-primary[aria-disabled=true]{opacity:.6;cursor:not-allowed;pointer-events:none}.upgrade-btn-ghost{color:var(--text-secondary);border-color:var(--border-light);background:0 0}.upgrade-btn-ghost:hover{color:var(--text-primary);border-color:var(--purple-mid)}.upgrade-fineprint{color:var(--text-secondary);margin:16px 0 0;font-size:12px;line-height:1.5}.app{background:var(--bg-darkest);flex-direction:column;height:100vh;display:flex;overflow:hidden}.app-header{background:var(--bg-dark);border-bottom:1px solid var(--border);z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 20px;display:flex}.header-left{flex:none}.app-title{align-items:baseline;gap:4px;margin:0;font-size:26px;display:flex}.title-git{color:var(--green-bright);font-family:Courier New,Courier,monospace;font-weight:700}.title-viz{color:var(--purple-light);font-weight:300}.header-center{flex:1;justify-content:center;display:flex}.scenario-select{border:1px solid var(--border);color:var(--text-primary);background:var(--bg-surface);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:8px;min-width:280px;padding:6px 32px 6px 12px;font-size:14px}.scenario-select:hover{border-color:var(--border-light)}.scenario-select:focus{border-color:var(--purple-mid);box-shadow:0 0 0 2px var(--purple-glow);outline:none}.header-right{align-items:center;gap:8px;display:flex}.header-toggle{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:13px;display:flex}.header-toggle input{accent-color:var(--purple-mid)}.header-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 12px;font-size:13px;transition:all .2s}.header-btn:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--border-light);color:var(--text-primary)}.header-btn:disabled{opacity:.4;cursor:default}.header-btn-layout{padding:4px 10px;font-size:16px}.header-text-link{color:var(--text-primary);letter-spacing:-.1px;cursor:pointer;background:0 0;border:none;border-radius:6px;margin-right:6px;padding:7px 12px;font-family:inherit;font-size:15px;font-weight:600;transition:background .14s,color .14s}.header-text-link:hover{color:var(--purple-light);background:#a78bdb1f}.header-text-link:active{background:#a78bdb2e}.header-divider{background:linear-gradient(180deg, transparent 0%, var(--border) 30%, var(--purple-mid) 50%, var(--border) 70%, transparent 100%);flex-shrink:0;align-self:center;width:1px;height:26px;margin:0 8px;display:inline-block}.header-btn-reset{color:var(--error);border-color:#f871714d}.header-btn-reset:hover{border-color:var(--error);background:#f871711a}.settings-menu-container{position:relative}.header-btn-settings{padding:4px 10px;font-size:16px}.settings-dropdown{background:var(--bg-surface);border:1px solid var(--border-light);z-index:100;border-radius:8px;min-width:160px;padding:6px 0;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #0006}.settings-item{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;width:100%;padding:8px 14px;font-size:13px;display:flex}.settings-item:hover{background:var(--bg-elevated);color:var(--text-primary)}.settings-item input{accent-color:var(--purple-mid)}.settings-item-btn{text-align:left;font:inherit;background:0 0;border:none}.scenario-banner{background:var(--bg-dark);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:10px 20px;display:flex}.scenario-banner-label{text-transform:uppercase;letter-spacing:1px;color:var(--bg-dark);background:var(--purple-mid);border-radius:4px;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:700}.scenario-banner-body{flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0;display:flex}.scenario-banner-title{color:var(--text-bright);white-space:nowrap;flex-shrink:0;font-size:14px;font-weight:600}.scenario-banner-sep{color:var(--text-muted);flex-shrink:0}.scenario-banner-narrative{color:var(--text-secondary);font-size:13px;line-height:1.4}.app-body{flex:1;min-height:0;display:flex;overflow:hidden}.app-body.layout-reversed{flex-direction:row-reverse}.app-body.layout-reversed .sidebar-area{border-left:none;border-right:1px solid var(--border)}.main-area{flex-direction:column;flex:1;min-width:0;display:flex}.viz-panel{border-bottom:1px solid var(--border);background:var(--bg-panel);flex:0 0 45%;overflow:hidden}.terminal-panel{flex:1;min-height:0}.sidebar-area{border-left:1px solid var(--border);background:var(--bg-dark);flex-direction:column;flex:0 0 300px;gap:0;display:flex;overflow-y:auto}@media (width<=1024px){.app-body,.app-body.layout-reversed{flex-direction:column}.sidebar-area,.app-body.layout-reversed .sidebar-area{border-left:none;border-right:none;border-top:1px solid var(--border);flex:none;max-height:200px}.scenario-select{min-width:200px}}.lp{--lp-ink:#1a1a2e;--lp-ink-soft:#4b4b63;--lp-ink-mute:#6b6b85;--lp-line:#e4e4ef;--lp-surface:#fff;--lp-surface-2:#f6f6fb;--lp-accent:#6b4fa0;--lp-accent-light:#8b6fc0;--lp-green:#2f9e5f;background:var(--lp-surface);height:100vh;color:var(--lp-ink);scroll-behavior:smooth;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden auto}.lp a{color:inherit;text-decoration:none}.lp-container{width:100%;max-width:1120px;margin:0 auto;padding:0 24px}.lp-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:15px;font-weight:600;transition:transform .15s,background .2s,box-shadow .2s;display:inline-flex}.lp-btn-lg{border-radius:12px;padding:14px 26px;font-size:16px}.lp-btn-primary{background:linear-gradient(135deg, var(--lp-accent), var(--lp-accent-light));color:#fff;box-shadow:0 6px 18px #6b4fa047}.lp-btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px #6b4fa05c}.lp-btn-ghost{color:var(--lp-accent);background:0 0;border-color:currentColor}.lp-btn-ghost:hover{background:#6b4fa014}.lp-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.lp-btn[aria-disabled=true]:hover{transform:none}.lp-nav{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f0f1aeb;border-bottom:1px solid #ffffff14;align-items:center;gap:24px;padding:14px 24px;display:flex;position:sticky;top:0}.lp-brand{align-items:baseline;gap:4px;font-size:22px;display:flex}.lp-brand-git{color:var(--green-bright);font-family:Courier New,Courier,monospace;font-weight:700}.lp-brand-viz{color:var(--purple-light);font-weight:300}.lp-brand-tag{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);align-self:center;margin-left:8px;font-size:12px;font-weight:600}.lp-nav-links{color:var(--text-secondary);gap:22px;margin-left:auto;font-size:14px;display:flex}.lp-nav-links a:hover{color:var(--text-bright)}.lp-nav-cta{padding:8px 16px;font-size:14px}.lp-hero{background:radial-gradient(1000px 500px at 15% -10%, #6b4fa059, transparent 60%), radial-gradient(800px 500px at 100% 0%, #4ade801f, transparent 55%), var(--bg-darkest);color:var(--text-primary);grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;max-width:1120px;margin:0 auto;padding:72px 24px 88px;display:grid}.lp-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--purple-light);margin-bottom:16px;font-size:13px;font-weight:700}.lp-hero-title{color:var(--text-bright);letter-spacing:-.02em;font-size:clamp(34px,5vw,54px);font-weight:800;line-height:1.08}.lp-accent{background:linear-gradient(120deg, var(--purple-light), var(--green-mid));color:#0000;-webkit-background-clip:text;background-clip:text}.lp-hero-sub{color:var(--text-secondary);max-width:520px;margin-top:20px;font-size:18px;line-height:1.6}.lp-hero-actions{flex-wrap:wrap;gap:14px;margin-top:30px;display:flex}.lp-hero-note{color:var(--text-muted);margin-top:18px;font-size:13px}.lp-hero-visual{justify-content:center;display:flex}.lp-term{border:1px solid var(--border);background:#12121f;border-radius:12px;width:100%;max-width:460px;overflow:hidden;box-shadow:0 24px 60px #00000073}.lp-term-bar{border-bottom:1px solid var(--border);background:#1c1c30;align-items:center;gap:7px;padding:10px 14px;display:flex}.lp-term-dot{background:#3d3d5c;border-radius:50%;width:11px;height:11px}.lp-term-dot:first-child{background:#f87171}.lp-term-dot:nth-child(2){background:#fbbf24}.lp-term-dot:nth-child(3){background:#4ade80}.lp-term-title{color:var(--text-muted);margin-left:8px;font-size:12px}.lp-term-body{color:var(--text-primary);padding:18px;font-family:Courier New,Courier,monospace;font-size:14px;line-height:1.7}.lp-term-body p{white-space:nowrap;margin:0}.lp-term-prompt{color:var(--purple-light);margin-right:8px}.lp-term-dim{color:var(--text-muted)}.lp-term-red{color:var(--error)}.lp-term-green{color:var(--green-bright)}.lp-term-cursor{color:var(--green-bright);animation:1.1s step-end infinite lp-blink}@keyframes lp-blink{50%{opacity:0}}.lp-section{padding:72px 0}.lp-light{background:var(--lp-surface-2)}.lp-h2{letter-spacing:-.02em;color:var(--lp-ink);font-size:clamp(26px,3.4vw,36px);font-weight:800}.lp-lead{color:var(--lp-ink-soft);max-width:720px;margin-top:14px;font-size:17px;line-height:1.6}.lp-grid{gap:20px;margin-top:36px;display:grid}.lp-grid-2{grid-template-columns:repeat(2,1fr)}.lp-grid-3{grid-template-columns:repeat(3,1fr)}.lp-card{background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:14px;padding:24px}.lp-card-title{color:var(--lp-ink);font-size:18px;font-weight:700}.lp-card-body{color:var(--lp-ink-soft);margin-top:10px;font-size:15px;line-height:1.6}.lp-card-dark{background:var(--bg-panel);border-color:var(--border)}.lp-card-dark .lp-card-title{color:var(--text-bright)}.lp-card-dark .lp-card-body{color:var(--text-secondary)}.lp-flow{flex-wrap:wrap;align-items:stretch;gap:8px;margin-top:40px;display:flex}.lp-flow-item{flex:200px;align-items:center;gap:8px;display:flex}.lp-flow-zone{background:var(--bg-panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;flex:1;justify-content:center;gap:6px;min-height:96px;padding:20px 18px;display:flex}.lp-flow-label{color:var(--text-bright);font-size:15px;font-weight:700}.lp-flow-blurb{color:var(--text-secondary);font-size:13px;line-height:1.45}.lp-zone-working{border-left:3px solid var(--blue-mid)}.lp-zone-staging{border-left:3px solid var(--warning)}.lp-zone-local{border-left:3px solid var(--purple-light)}.lp-zone-remote{border-left:3px solid var(--green-bright)}.lp-flow-arrow{color:var(--lp-accent);font-size:22px;font-weight:700}.lp-how-detail{margin-top:28px}.lp-scenario{background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:14px;flex-direction:column;gap:8px;padding:22px;transition:transform .15s,box-shadow .2s,border-color .2s;display:flex}.lp-scenario:hover{border-color:var(--lp-accent-light);transform:translateY(-2px);box-shadow:0 12px 28px #1a1a2e1a}.lp-scenario-diff{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;align-self:flex-start;padding:3px 9px;font-size:11px;font-weight:700}.lp-diff-beginner{color:#1f7a44;background:#e6f6ec}.lp-diff-intermediate{color:#9a6a00;background:#fef3d9}.lp-diff-advanced{color:#a23a52;background:#f6e6ea}.lp-scenario-tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lp-scenario-tier{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.lp-tier-free{color:#4a5568;background:#eef1f6}.lp-tier-paid{color:#6a3aa2;background:#ece6f6}.lp-scenario-title{color:var(--lp-ink);font-size:17px;font-weight:700}.lp-scenario-desc{color:var(--lp-ink-soft);font-size:14px;line-height:1.55}.lp-proof{text-align:center}.lp-proof .lp-lead{margin-left:auto;margin-right:auto}.lp-proof-slots{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:36px;display:grid}.lp-proof-slot{border:1px dashed var(--lp-line);background:var(--lp-surface-2);border-radius:14px;padding:28px}.lp-proof-quote{color:var(--lp-ink-soft);font-size:17px;font-style:italic}.lp-proof-attr{color:var(--lp-ink-mute);margin-top:10px;font-size:14px}.lp-pricing{align-items:stretch}.lp-pricing-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px;margin-left:auto;margin-right:auto}.lp-price-card{background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:16px;flex-direction:column;padding:28px 24px;display:flex;position:relative}.lp-price-featured{border-color:var(--lp-accent-light);box-shadow:0 16px 40px #6b4fa029}.lp-price-badge{background:linear-gradient(135deg, var(--lp-accent), var(--lp-accent-light));color:#fff;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.lp-price-name{color:var(--lp-ink-soft);font-size:16px;font-weight:700}.lp-price-amount{color:var(--lp-ink);margin-top:4px;font-size:40px;font-weight:800}.lp-price-per{color:var(--lp-ink-mute);font-size:13px}.lp-price-feats{flex-direction:column;flex:1;gap:10px;margin:20px 0 24px;padding:0;list-style:none;display:flex}.lp-price-feats li{color:var(--lp-ink-soft);padding-left:24px;font-size:14px;position:relative}.lp-price-feats li:before{content:"✓";color:var(--lp-green);font-weight:700;position:absolute;left:0}.lp-price-feats li.lp-price-sub{color:var(--lp-ink-mute);padding-left:38px;font-size:13px}.lp-price-feats li.lp-price-sub:before{content:"·";color:var(--lp-ink-mute);left:24px}.lp-price-cta{width:100%}.lp-fineprint{text-align:center;color:var(--lp-ink-mute);margin-top:22px;font-size:13px}.lp-faq-container{max-width:800px}.lp-faq{flex-direction:column;gap:12px;margin-top:28px;display:flex}.lp-faq-item{border:1px solid var(--lp-line);background:var(--lp-surface);border-radius:12px;padding:4px 20px}.lp-faq-q{cursor:pointer;color:var(--lp-ink);justify-content:space-between;align-items:center;padding:16px 0;font-size:16px;font-weight:700;list-style:none;display:flex}.lp-faq-q::-webkit-details-marker{display:none}.lp-faq-q:after{content:"+";color:var(--lp-accent);font-size:22px;font-weight:400}.lp-faq-item[open] .lp-faq-q:after{content:"−"}.lp-faq-a{color:var(--lp-ink-soft);padding:0 0 18px;font-size:15px;line-height:1.65}.lp-cta-band{background:radial-gradient(700px 300px at 50% 0%, #6b4fa066, transparent 65%), var(--bg-dark);padding:64px 24px}.lp-cta-inner{text-align:center}.lp-cta-title{color:var(--text-bright);margin-bottom:26px;font-size:clamp(24px,3.4vw,34px);font-weight:800}.lp-footer{background:var(--bg-darkest);color:var(--text-secondary);border-top:1px solid var(--border);padding:40px 24px}.lp-footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.lp-footer-note{color:var(--text-muted);max-width:320px;margin-top:8px;font-size:13px}.lp-footer-links{flex-direction:column;gap:10px;font-size:14px;display:flex}.lp-footer-links a:hover{color:var(--text-bright)}@media (width<=900px){.lp-hero{grid-template-columns:1fr;gap:36px;padding:56px 24px 64px}.lp-nav-links{display:none}.lp-grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.lp-brand-tag{display:none}.lp-grid-2,.lp-grid-3,.lp-proof-slots,.lp-pricing-2{grid-template-columns:1fr}.lp-section{padding:52px 0}.lp-flow-item{flex:100%}.lp-flow-arrow{text-align:center;align-self:center;width:100%;transform:rotate(90deg)}.lp-hero-actions .lp-btn{flex:100%}.lp-term-body{font-size:12.5px}}
