:root{color-scheme:dark;--bg: #101010;--fg: #dadada;--accent: #4db07a;--run: #e0934f;--ok: #08b94e;--warn: #e0ac00;--danger: #e93147;--surface: color-mix(in srgb, var(--fg) 6%, transparent);--surface-hover: color-mix(in srgb, var(--fg) 4%, var(--surface));--surface-badge: color-mix(in srgb, var(--fg) 5%, var(--surface));--surface-subtle: color-mix(in srgb, var(--fg) 4%, var(--surface));--line: color-mix(in srgb, var(--fg) 16%, transparent);--muted: color-mix(in srgb, var(--fg) 55%, var(--bg));--ring: color-mix(in srgb, var(--accent) 45%, var(--bg));--accent-tint: color-mix(in srgb, var(--accent) 18%, var(--bg));--button-bg: var(--accent);--button-fg: #06120c;--wash-accent: 34%;--wash-run: 18%;--wash-ok: 11%;--font-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SF Mono", ui-monospace, Menlo, Consolas, monospace;--tracking-display: -.03em;--leading-display: .95;--radius-pill: 100px;--radius-surface: 16px;--radius-card: 14px;--radius-chip: 10px;--transition-fast: .12s ease;--page-width: 1120px;--page-gutter: clamp(24px, 5vw, 56px);--blur: blur(24px) saturate(1.3)}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--bg);scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}body{overflow-x:clip;margin:0;min-height:100vh;color:var(--fg);background:radial-gradient(1200px 900px at 88% -12%,color-mix(in srgb,var(--accent) var(--wash-accent),transparent),transparent 68%),radial-gradient(900px 700px at -12% 38%,color-mix(in srgb,var(--run) var(--wash-run),transparent),transparent 62%),radial-gradient(900px 700px at 60% 115%,color-mix(in srgb,var(--ok) var(--wash-ok),transparent),transparent 62%),var(--bg);background-attachment:fixed;font-family:var(--font-sans);font-size:1.0625rem;line-height:1.6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}a{color:var(--accent)}a:hover{color:color-mix(in srgb,var(--accent) 78%,white)}:focus-visible{outline:2px solid var(--ring);outline-offset:3px}::selection{color:var(--fg);background:var(--accent-tint)}.skip-link{position:absolute;left:var(--page-gutter);top:.75rem;z-index:20;transform:translateY(-180%);padding:.5rem .85rem;border-radius:var(--radius-pill);background:var(--accent);color:var(--button-fg);font-size:.875rem;font-weight:650;text-decoration:none}.skip-link:focus{transform:none}.wrap{width:min(var(--page-width),calc(100% - 2 * var(--page-gutter)));margin-inline:auto}.glass{border:1px solid var(--line);border-radius:var(--radius-surface);background:var(--surface);backdrop-filter:var(--blur)}.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:var(--radius-pill);background:var(--surface-badge);color:var(--fg);font-size:.75rem;font-weight:550;white-space:nowrap}.dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--line)}.dot.ok{background:var(--ok)}.dot.warn{background:var(--warn)}.dot.run{background:var(--run)}.dot.danger{background:var(--danger)}.site-header{position:sticky;top:0;z-index:8;background:color-mix(in srgb,var(--bg) 55%,transparent);backdrop-filter:var(--blur);border-bottom:1px solid color-mix(in srgb,var(--fg) 8%,transparent)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:1.5rem;min-width:0}.brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--fg);text-decoration:none;font-family:"Avenir Next",Avenir,var(--font-sans);font-weight:600;font-size:1.0625rem;letter-spacing:-.045em}.brand:hover{color:var(--fg)}.brand-mark{display:block;width:26px;height:26px;color:var(--accent)}.site-nav{display:flex;align-items:center;gap:.2rem}.site-nav a{color:var(--muted);text-decoration:none;font-size:.9375rem;font-weight:550;padding:.4rem .8rem;border-radius:var(--radius-pill);transition:color var(--transition-fast),background var(--transition-fast)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--fg);background:var(--surface)}.eyebrow{margin:0 0 1rem;color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hero h1,.display{margin:0 0 1.15rem;font-size:clamp(2.6rem,6.4vw,4.5rem);font-weight:800;letter-spacing:var(--tracking-display);line-height:var(--leading-display);text-wrap:balance}h2{margin:0 0 .75rem;font-size:clamp(1.85rem,3.4vw,2.5rem);font-weight:800;letter-spacing:var(--tracking-display);line-height:1.05;text-wrap:balance}.lead,.lede{color:var(--muted)}code{padding:1px 5px;border-radius:5px;background:var(--surface-badge);font-family:var(--font-mono);font-size:.875em}.telemetry{color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 1.35rem;border-radius:var(--radius-pill);font-size:.9375rem;font-weight:650;letter-spacing:-.01em;text-decoration:none;white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.button:active{transform:scale(.98)}.button.primary{background:var(--button-bg);color:var(--button-fg);box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 30%,transparent)}.button.primary:hover{background:color-mix(in srgb,var(--accent) 82%,white);color:var(--button-fg);box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 45%,transparent);transform:translateY(-1px)}.button.quiet{border:1px solid var(--line);background:var(--surface);backdrop-filter:var(--blur);color:var(--fg)}.button.quiet:hover{background:var(--surface-hover);border-color:color-mix(in srgb,var(--fg) 25%,transparent);color:var(--fg);transform:translateY(-1px)}.hero{padding:clamp(2.5rem,6vw,4.5rem) 0 0}.hero .lead{margin:0 0 2rem;max-width:34rem;font-size:1.1875rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:3rem}.section{padding:clamp(3.5rem,8vw,6rem) 0}.section.tight{padding-top:0}.section-head{max-width:44rem;margin-bottom:2.25rem}.section-head p{margin:0;color:var(--muted)}.site-footer{margin-top:clamp(2rem,6vw,4rem);padding:2.5rem 0 3.5rem;border-top:1px solid color-mix(in srgb,var(--fg) 8%,transparent);color:var(--muted);font-size:.9375rem}.site-footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem}.site-footer p{margin:0}.footer-links{display:flex;flex-wrap:wrap;gap:.35rem 1.15rem}.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover{color:var(--fg)}.policy{padding:clamp(2.5rem,6vw,4rem) 0 2rem}.policy header{max-width:44rem;margin-bottom:2.25rem}.policy h1{margin:0;font-size:clamp(2.1rem,4.5vw,3rem);font-weight:800;letter-spacing:var(--tracking-display);line-height:1.05;text-wrap:balance}.policy .effective{margin:.75rem 0 0;color:var(--muted);font-size:.9375rem}.prose{max-width:68ch}.prose h2{margin:2.4rem 0 .7rem;font-size:1.3rem;font-weight:700;letter-spacing:-.02em}.prose h3{margin:1.6rem 0 .45rem;font-size:1.0625rem;font-weight:650}.prose p,.prose li{color:color-mix(in srgb,var(--fg) 82%,var(--bg))}.prose a{overflow-wrap:anywhere}.prose code{padding:1px 5px;border-radius:5px;background:var(--surface-badge);font-family:var(--font-mono);font-size:.875em}.prose ul,.prose ol{padding-left:1.2rem}.prose table{width:100%;max-width:68ch;margin:1rem 0 1.5rem;border-collapse:collapse;font-size:.9375rem}.prose th,.prose td{padding:.65rem .75rem .65rem 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.prose th{color:var(--muted);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.not-found{display:grid;align-content:center;min-height:55vh;padding:4rem 0}.github-icon{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.125em}.github-link>.github-icon{margin-inline-end:.4em}.button.github-link>.github-icon{margin-inline-end:0;width:18px;height:18px}.hero{padding-top:clamp(3.5rem,10vw,7rem)}.hero-copy{max-width:64rem;margin-inline:auto;text-align:center}.hero h1{margin-inline:auto;max-width:18ch}.hero-copy h1+p{max-width:34rem;margin:0 auto 1.75rem;color:var(--muted);font-size:1.1875rem}.hero-copy .notepad+p{max-width:36rem;margin:0 auto .85rem;color:var(--muted);font-size:.9375rem;line-height:1.55}.button.github-link{gap:.5rem}@media(max-width:640px){.site-nav a{padding:.35rem .55rem;font-size:.875rem}}.shot{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:0 24px 60px color-mix(in srgb,#000 55%,transparent)}.shot-hero{margin:clamp(3rem,7vw,4.5rem) 0 0}.caption{margin:1rem 0 0;color:var(--muted);font-size:.9375rem}.features{padding:clamp(5rem,11vw,8rem) 0 clamp(4rem,9vw,6rem)}.features .wrap{display:flex;flex-direction:column;gap:clamp(5rem,11vw,8rem)}.feature{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}.feature.reverse{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.feature.reverse .text{order:2}.feature h2{font-size:clamp(1.6rem,2.8vw,2.1rem);letter-spacing:-.03em;line-height:1.15;margin-bottom:1rem}.feature .text p:not(.eyebrow){margin:0;color:var(--muted)}.feature .text p:not(.eyebrow)+p{margin-top:1rem}.feature .visual.phone{display:flex;justify-content:center}.feature .visual.phone .shot{width:min(100%,280px);border-radius:24px}@media(max-width:860px){.feature,.feature.reverse{grid-template-columns:minmax(0,1fr);gap:1.75rem}.feature.reverse .text{order:initial}}img.shot{cursor:zoom-in}.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:clamp(.75rem,3vw,2.5rem);border:0;background:transparent;cursor:zoom-out}.lightbox[open]{display:flex;align-items:center;justify-content:center}.lightbox::backdrop{background:color-mix(in srgb,#000 88%,transparent);backdrop-filter:blur(6px)}.lightbox img{max-width:100%;max-height:100%;border-radius:var(--radius-card);box-shadow:0 30px 80px #000}.prose-section .wrap{max-width:46rem}.prose-section h2{font-size:clamp(1.4rem,2.4vw,1.75rem);letter-spacing:-.03em}.prose-section p{margin:0 0 1.25rem;color:var(--muted)}.rollmark-block.chart svg{display:block;width:100%;height:auto}.notepad{max-width:48rem;margin:0 auto 1.1rem;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-chip);background:color-mix(in srgb,var(--bg) 82%,transparent);text-align:left}.notepad-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.45rem .6rem .45rem 1rem;border-bottom:1px solid color-mix(in srgb,var(--fg) 8%,transparent);color:var(--muted);font-size:.8125rem}.copy{padding:.2rem .5rem;border:0;border-radius:6px;background:none;color:var(--muted);font:inherit;font-weight:600;cursor:pointer}.copy:hover{background:var(--surface);color:var(--fg)}.notepad pre{margin:0;padding:.9rem 1rem 1rem;white-space:pre-wrap;overflow-wrap:anywhere}.notepad pre code{padding:0;background:none;font-size:.8125rem;line-height:1.55}.prose-section .notepad{margin-inline:0}.prose-section .wrap:has(ul:not(.logos)){max-width:64rem}.prose-section ul:not(.logos){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem 3rem;margin:1.75rem 0 0;padding:0;list-style:none}.prose-section ul:not(.logos) li{color:var(--muted);font-size:1rem;line-height:1.6}.prose-section ul:not(.logos) li strong{display:block;margin-bottom:.3rem;color:var(--fg);font-size:1.0625rem}.prose-section+.prose-section{padding-top:0}@media(max-width:760px){.prose-section ul:not(.logos){grid-template-columns:1fr}}.prose-section .wrap:has(.logos){max-width:52rem}.logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;margin:2rem 0;padding:0;list-style:none}.logos li{display:flex;flex-direction:column;align-items:center;gap:.7rem;padding:1.25rem .5rem 1rem;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);color:var(--fg);font-size:.875rem;font-weight:600;text-align:center}.logos img{width:40px;height:40px;object-fit:contain}@media(max-width:760px){.logos{grid-template-columns:repeat(3,minmax(0,1fr))}}.prose-section+.features{padding-top:clamp(2rem,5vw,3.5rem)}
