.rst-side-by-side{position:relative;display:flex;gap:2rem}.rst-side-by-side .rst-steps{flex:1 1 40%}.rst-side-by-side .rst-graphic{flex:1 1 60%}.rst-overlay{position:relative}.rst-overlay .rst-graphic{width:100%;z-index:0}.rst-steps--overlay{position:relative;z-index:1;margin-top:-100vh;pointer-events:none}.rst-steps--overlay .rst-step{pointer-events:auto}.rst-stacked{display:flex;flex-direction:column}.rst-graphic--sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;justify-content:center}.rst-steps{padding-bottom:50vh}.rst-step{min-height:75vh;display:flex;align-items:center;justify-content:center}.rst-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.rst-step--snap{scroll-snap-align:center;scroll-snap-stop:always}: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: #8b8fa3;--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}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only-focusable:focus{position:static;width:auto;height:auto;padding:.5rem 1rem;margin:0;overflow:visible;clip:auto;white-space:normal;background:var(--color-accent);color:var(--color-base);z-index:9999}*,*: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}.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-primary:focus-visible{outline:2px solid #fff;outline-offset:2px}.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)}.btn-ghost:focus-visible{outline:2px solid #fff;outline-offset:2px}.demo-section{max-width:1200px;margin:0 auto;padding:0 1.5rem 6rem}.section-label{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:focus-visible{outline:2px solid #fff;outline-offset:2px}.layout-btn-active{background:var(--color-surface-raised);color:#fff;box-shadow:0 1px 4px #0000004d}.step-card{max-width:20rem;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 .4s ease,transform .4s ease}.step-card h3{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-text-muted);margin-bottom:.5rem;opacity:1}.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-toolbar{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:#718096}.code-block .tag{color:#f472b6}.code-block .attr{color:#fbbf24}.code-block .punct{color:#8b8fa3}.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}}
