.rst-side-by-side{position:relative;display:flex;gap:2rem}.rst-side-by-side .rst-graphic{flex:1 1 60%;order:2}.rst-side-by-side .rst-steps{flex:1 1 40%;order:1}.rst-overlay{position:relative}.rst-overlay .rst-graphic{width:100%}.rst-overlay .rst-steps{position:relative;z-index:1;pointer-events:none}.rst-overlay .rst-step{pointer-events:auto}.rst-stacked{position:relative}.rst-stacked .rst-graphic{position:sticky;top:0;height:50vh;display:flex;align-items:center;justify-content:center}.rst-stacked .rst-steps{position:relative;z-index:1}.rst-graphic--sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;justify-content:center}.rst-step{min-height:75vh;display:flex;align-items:center;justify-content:center}:root{--color-base: #0a0a1a;--color-surface: #111128;--color-surface-raised: #1a1a2e;--color-border: #2a2d45;--color-border-glow: #3b82f640;--color-text: #e2e4ed;--color-text-muted: #8b8fa3;--color-text-dim: #5a5e73;--color-accent: #f59e0b;--color-accent-dim: #f59e0b33;--color-blue: #3b82f6;--color-blue-dim: #3b82f622;--font-display: "Fraunces", serif;--font-body: "DM Sans", sans-serif;--font-mono: "JetBrains Mono", monospace}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-base);color:var(--color-text);font-family:var(--font-body);margin:0;padding:0;line-height:1.6;-webkit-font-smoothing:antialiased}.hero{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:90vh;padding:4rem 1.5rem;text-align:center;overflow:hidden}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 50% 0%,#3b82f610 0%,transparent 70%),radial-gradient(ellipse 40% 40% at 80% 80%,#f59e0b08 0%,transparent 60%);pointer-events:none}.hero-package{font-family:var(--font-mono);font-size:.875rem;color:var(--color-accent);letter-spacing:.04em;margin-bottom:1.5rem;opacity:.9}.hero h1{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:700;line-height:1.1;margin:0 0 1.25rem;color:#fff}.hero-subtitle{font-size:clamp(1rem,2vw,1.2rem);color:var(--color-text-muted);max-width:540px;margin:0 auto 2.5rem;line-height:1.6}.hero-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;justify-content:center}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;background:var(--color-accent);color:#0a0a1a;font-family:var(--font-body);font-weight:600;font-size:.95rem;border:none;border-radius:8px;cursor:pointer;transition:transform .15s,box-shadow .15s;text-decoration:none}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 24px var(--color-accent-dim)}.btn-ghost{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;color:var(--color-text-muted);font-family:var(--font-body);font-weight:500;font-size:.95rem;border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:border-color .2s,color .2s;text-decoration:none}.btn-ghost:hover{border-color:var(--color-text-muted);color:var(--color-text)}.demo-section{max-width:1200px;margin:0 auto;padding:0 1.5rem 6rem}.section-label{display:block;font-family:var(--font-mono);font-size:.8rem;color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.75rem}.section-title{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;color:#fff;margin:0 0 2rem}.layout-switcher{display:flex;gap:.25rem;background:var(--color-surface);padding:.25rem;border-radius:10px;border:1px solid var(--color-border);margin-bottom:2rem;width:fit-content}.layout-btn{padding:.5rem 1.25rem;font-family:var(--font-body);font-size:.85rem;font-weight:500;color:var(--color-text-muted);background:transparent;border:none;border-radius:8px;cursor:pointer;transition:color .2s,background .2s}.layout-btn:hover{color:var(--color-text)}.layout-btn-active{background:var(--color-surface-raised);color:#fff;box-shadow:0 1px 4px #0000004d}.step-card{max-width:340px;padding:1.75rem;background:#111128b3;border-radius:14px;border:1px solid var(--color-border);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1),border-color .6s ease,box-shadow .6s ease;opacity:.15;transform:translateY(16px) scale(.97)}.is-active .step-card{opacity:1;transform:translateY(0) scale(1);border-color:var(--color-border-glow);box-shadow:0 4px 32px #3b82f61a,0 0 0 1px #3b82f60d}.step-card h2{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:#fff;margin:0 0 .75rem}.step-card p{margin:0;color:var(--color-text-muted);line-height:1.7;font-size:.92rem}.step-card .step-number{display:inline-block;font-family:var(--font-mono);font-size:.7rem;color:var(--color-accent);margin-bottom:.5rem;opacity:.7}.rst-overlay .rst-step{align-items:flex-end;padding-bottom:4rem}.rst-overlay .step-card{max-width:480px;background:#0a0a1ad9;border-color:#3b82f626;box-shadow:0 8px 40px #00000080}.rst-overlay .is-active .step-card{border-color:#3b82f64d;box-shadow:0 8px 40px #00000080,0 0 0 1px #3b82f61a}.rst-stacked .rst-graphic{background:var(--color-surface);border-radius:16px;margin-bottom:1rem}.rst-stacked .rst-step{min-height:40vh}.rst-stacked .step-card{max-width:600px;text-align:center}.scatter-viz{width:100%;height:auto;display:block;border-radius:16px}.features-section{max-width:1000px;margin:0 auto;padding:4rem 1.5rem 6rem}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.feature-card{padding:1.75rem;background:var(--color-surface);border-radius:14px;border:1px solid var(--color-border);transition:transform .2s,border-color .2s}.feature-card:hover{transform:translateY(-3px);border-color:var(--color-border-glow)}.feature-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--color-blue-dim);margin-bottom:1rem}.feature-icon svg{width:20px;height:20px;stroke:var(--color-blue);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.feature-card h3{font-family:var(--font-display);font-size:1.05rem;color:#fff;margin:0 0 .5rem}.feature-card p{margin:0;color:var(--color-text-muted);font-size:.88rem;line-height:1.6}.install-section{max-width:760px;margin:0 auto;padding:4rem 1.5rem 6rem}.install-command{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;font-family:var(--font-mono);font-size:.9rem;color:var(--color-text);margin-bottom:2rem}.install-command .prompt{color:var(--color-accent);-webkit-user-select:none;user-select:none}.code-block{background:#0d0d20;border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.code-block-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--color-surface);border-bottom:1px solid var(--color-border);font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-dim)}.code-block pre{margin:0;padding:1.25rem;overflow-x:auto;font-family:var(--font-mono);font-size:.82rem;line-height:1.7;color:var(--color-text-muted)}.code-block .kw{color:#c084fc}.code-block .fn{color:#60a5fa}.code-block .str{color:#34d399}.code-block .cmt{color:#4a5568}.code-block .tag{color:#f472b6}.code-block .attr{color:#fbbf24}.code-block .punct{color:#6b7280}.api-section{max-width:860px;margin:0 auto;padding:4rem 1.5rem 6rem}.api-table-wrap{overflow-x:auto;margin-bottom:2.5rem}.api-table{width:100%;border-collapse:collapse;font-size:.88rem}.api-table th{text-align:left;padding:.75rem 1rem;font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-border);white-space:nowrap}.api-table td{padding:.65rem 1rem;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);vertical-align:top}.api-table code{font-family:var(--font-mono);font-size:.82rem;color:var(--color-accent);background:var(--color-accent-dim);padding:.15em .4em;border-radius:4px}.api-heading{font-family:var(--font-display);font-size:1.15rem;color:#fff;margin:2.5rem 0 1rem}.api-heading:first-of-type{margin-top:0}.site-footer{text-align:center;padding:3rem 1.5rem;border-top:1px solid var(--color-border);color:var(--color-text-dim);font-size:.85rem}.site-footer a{color:var(--color-blue);text-decoration:none;margin:0 .75rem;transition:color .2s}.site-footer a:hover{color:var(--color-text)}.site-footer p{margin:.5rem 0 0}@media (max-width: 768px){.features-grid{grid-template-columns:1fr}.hero{min-height:70vh;padding:3rem 1rem}.step-card{max-width:100%}}@media (max-width: 480px){.hero-actions{flex-direction:column}.layout-switcher{flex-wrap:wrap}}
