.sr-only:where(.astro-lcdefpme){clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sec:where(.astro-lcdefpme){border-top:1px solid var(--rule);background:var(--bg);padding:104px 0}.sec-head:where(.astro-lcdefpme){max-width:720px;margin:0 0 56px}.eyebrow:where(.astro-lcdefpme){margin-bottom:18px}.sec-title:where(.astro-lcdefpme){text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(30px,3.6vw,44px);line-height:1.08}.sec-sub:where(.astro-lcdefpme){color:var(--ink-soft);max-width:52ch;margin:18px 0 0;font-size:17px}.fig:where(.astro-lcdefpme){border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-card);min-width:0;margin:0;overflow:hidden}.fig-bar:where(.astro-lcdefpme){border-bottom:1px solid var(--rule);background:var(--surface-alt);justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;display:flex}.fig-label:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.fig-tag:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;font-size:10.5px}.fig-cap:where(.astro-lcdefpme){border-top:1px solid var(--rule);color:var(--ink-soft);max-width:none;padding:14px 20px 16px;font-size:14px;line-height:1.55}.hero:where(.astro-lcdefpme){background:var(--bg);isolation:isolate;position:relative;overflow:hidden}.hero-backdrop:where(.astro-lcdefpme){z-index:0;pointer-events:none;opacity:.8;position:absolute;inset:0;-webkit-mask-image:radial-gradient(132% 52%,#000 0% 30%,#0000009e 62%,#0000 92%);mask-image:radial-gradient(132% 52%,#000 0% 30%,#0000009e 62%,#0000 92%)}.hero-backdrop:where(.astro-lcdefpme) .hero-gradient-scrim{background:radial-gradient(60% 80% at 50% 48%,#0c0b0bfa 0%,#0c0b0bf2 42%,#0c0b0bb8 74%,#0c0b0b00 100%);position:absolute;inset:0}:root[data-theme=light] .hero-backdrop:where(.astro-lcdefpme) .hero-gradient-scrim{background:radial-gradient(60% 80% at 50% 48%,#fffffffa 0%,#fffffff2 42%,#ffffffb8 74%,#fff0 100%)}.hero-backdrop:where(.astro-lcdefpme) astro-island{width:100%;height:100%;display:block}.hero:where(.astro-lcdefpme)>.container:where(.astro-lcdefpme){z-index:1;position:relative}.hero-inner:where(.astro-lcdefpme){text-align:center;flex-direction:column;align-items:center;max-width:880px;margin:0 auto;padding:96px 0 56px;display:flex}.hero-inner:where(.astro-lcdefpme) .eyebrow:where(.astro-lcdefpme){margin-bottom:0}.hero-title:where(.astro-lcdefpme){text-wrap:balance;margin:22px 0 0;font-size:clamp(34px,4.8vw,56px);line-height:1.06}.hero-sub:where(.astro-lcdefpme){color:var(--ink-soft);max-width:54ch;margin:22px auto 0;font-size:18px;line-height:1.55}.give:where(.astro-lcdefpme){flex-direction:column;align-items:center;gap:12px;width:100%;max-width:640px;margin-top:34px;display:flex}.give-label:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-size:11px;font-weight:500}.give:where(.astro-lcdefpme) .cmdline:where(.astro-lcdefpme){border-color:var(--rule-control,var(--ink-faint));width:100%;padding:8px 8px 8px 16px}.give:where(.astro-lcdefpme) .cmd-scroll:where(.astro-lcdefpme){text-align:left;flex:1}.give--final:where(.astro-lcdefpme){margin-left:auto;margin-right:auto}.cmdline:where(.astro-lcdefpme){border:1px solid var(--rule-control,var(--rule));border-radius:var(--radius-sm);background:var(--bg-card);align-items:center;gap:10px;min-width:0;max-width:100%;padding:6px 6px 6px 14px;display:flex}.cmdline-prompt:where(.astro-lcdefpme){font-family:var(--font-mono);color:var(--ink-faint);font-size:13px}.cmd-scroll:where(.astro-lcdefpme){min-width:0;overflow-x:auto}.cmd:where(.astro-lcdefpme){white-space:pre;font-family:var(--font-mono);color:var(--ink);font-size:13px;line-height:1.7;display:block}.hero-note:where(.astro-lcdefpme){max-width:none;color:var(--ink-faint);margin:22px auto 0;font-size:14px}.hero-note:where(.astro-lcdefpme) span:where(.astro-lcdefpme){opacity:.6;padding:0 6px}.hero-note:where(.astro-lcdefpme) a:where(.astro-lcdefpme){color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-control,var(--ink-faint));text-underline-offset:3px}.hero-note:where(.astro-lcdefpme) a:where(.astro-lcdefpme):hover{text-decoration-color:var(--ink)}.copy-btn:where(.astro-lcdefpme){border:1px solid var(--rule-control,var(--rule));background:var(--bg);color:var(--ink-soft);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border-radius:6px;flex-shrink:0;align-items:center;gap:6px;padding:6px 12px;font-size:11px;transition:border-color .15s,color .15s;display:inline-flex}.copy-btn:where(.astro-lcdefpme):hover{border-color:var(--ink);color:var(--ink)}.copy-btn--primary:where(.astro-lcdefpme){border-color:var(--brand);background:var(--brand);color:var(--on-brand,#fff);padding:9px 16px}.copy-btn--primary:where(.astro-lcdefpme):hover{border-color:var(--brand-hover);background:var(--brand-hover);color:var(--on-brand,#fff)}.copy-btn:where(.astro-lcdefpme).is-copied{border-color:var(--brand-tint-border);color:var(--brand-strong);background:var(--brand-tint)}.demo:where(.astro-lcdefpme){background:var(--bg);padding:8px 0 104px}.term:where(.astro-lcdefpme){border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-card);max-width:860px;margin:0 auto;overflow:hidden}.term-window:where(.astro-lcdefpme){--term-bg:#17181a;--term-bar:#232427;--term-rule:#34363b;--term-ink:#e7e7ea;--term-soft:#a9abb3;--term-faint:#70737c;--term-ok:#4fd08c;background:var(--term-bg);color:var(--term-ink);font-family:var(--font-mono);font-size:13px;line-height:1.6}.term-bar:where(.astro-lcdefpme){background:var(--term-bar);border-bottom:1px solid #0d0d0e;justify-content:center;align-items:center;min-height:38px;padding:0 76px;display:flex;position:relative}.term-lights:where(.astro-lcdefpme){gap:8px;display:inline-flex;position:absolute;left:14px}.term-lights:where(.astro-lcdefpme) span:where(.astro-lcdefpme){border-radius:50%;width:12px;height:12px}.term-lights:where(.astro-lcdefpme) span:where(.astro-lcdefpme):first-child{background:#ff5f57}.term-lights:where(.astro-lcdefpme) span:where(.astro-lcdefpme):nth-child(2){background:#febc2e}.term-lights:where(.astro-lcdefpme) span:where(.astro-lcdefpme):nth-child(3){background:#28c840}.term-title:where(.astro-lcdefpme){font-family:var(--font-body);color:var(--term-soft);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:500;overflow:hidden}.term-body:where(.astro-lcdefpme){padding:18px 20px 14px}.term-body:where(.astro-lcdefpme) p:where(.astro-lcdefpme),.term-body:where(.astro-lcdefpme) ul:where(.astro-lcdefpme){max-width:none;margin:0;padding:0;list-style:none}.term-line:where(.astro-lcdefpme),.term-result:where(.astro-lcdefpme),.term-prompt:where(.astro-lcdefpme){grid-template-columns:20px minmax(0,1fr);display:grid}.term-mark:where(.astro-lcdefpme){color:var(--term-faint)}.term-body:where(.astro-lcdefpme) .term-echo:where(.astro-lcdefpme){color:var(--term-soft);margin-bottom:14px}.term-body:where(.astro-lcdefpme) .term-say:where(.astro-lcdefpme){margin-bottom:14px}.term-dot:where(.astro-lcdefpme){color:var(--term-ink)}.term-call:where(.astro-lcdefpme) .term-dot:where(.astro-lcdefpme){color:var(--term-ok)}.term-call:where(.astro-lcdefpme).is-running .term-dot:where(.astro-lcdefpme){color:var(--term-faint);animation:.9s steps(2,jump-none) infinite term-blink}.term-call:where(.astro-lcdefpme) b:where(.astro-lcdefpme){font-weight:600}.term-args:where(.astro-lcdefpme):before,.term-hint:where(.astro-lcdefpme):before{content:" "}.term-args:where(.astro-lcdefpme){color:var(--term-soft);overflow-wrap:anywhere}.term-result:where(.astro-lcdefpme){color:var(--term-soft);margin-bottom:14px;padding-left:20px}.term-rows:where(.astro-lcdefpme) li:where(.astro-lcdefpme){flex-wrap:wrap;justify-content:space-between;gap:0 24px;display:flex}.term-rows:where(.astro-lcdefpme) li:where(.astro-lcdefpme) span:where(.astro-lcdefpme):first-child{white-space:pre-wrap}.term-aside:where(.astro-lcdefpme){color:var(--term-faint)}.term-rows:where(.astro-lcdefpme) .term-cost:where(.astro-lcdefpme){color:var(--term-ok)}.term-body:where(.astro-lcdefpme) .term-status:where(.astro-lcdefpme){color:var(--term-soft);margin-bottom:12px;display:none}.term-spinner:where(.astro-lcdefpme){color:var(--term-ink);animation:1.6s linear infinite term-spin;display:inline-block}.term-hint:where(.astro-lcdefpme){color:var(--term-faint)}.term-prompt:where(.astro-lcdefpme){border:1px solid var(--term-rule);border-radius:8px;align-content:start;min-height:2.6lh;padding:9px 12px}.term-input:where(.astro-lcdefpme){color:var(--term-ink);overflow-wrap:anywhere}.term-foot:where(.astro-lcdefpme){color:var(--term-faint);justify-content:space-between;gap:16px;font-size:12px;display:flex;margin-top:8px!important;padding:0 12px!important}.term-cap:where(.astro-lcdefpme){flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.term-cap-right:where(.astro-lcdefpme){align-items:center;gap:16px;display:inline-flex}.term-replay:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px}.term-replay:where(.astro-lcdefpme):hover{color:var(--ink)}@media (prefers-reduced-motion:no-preference){.term-body:where(.astro-lcdefpme){scrollbar-width:none;height:500px;overflow-y:auto}.term-body:where(.astro-lcdefpme)::-webkit-scrollbar{display:none}}.term:where(.astro-lcdefpme).is-armed :where(.astro-lcdefpme)[data-beat]:not(.is-shown){display:none}.term:where(.astro-lcdefpme).is-working .term-status:where(.astro-lcdefpme){display:block}.term:where(.astro-lcdefpme) .type-cursor{vertical-align:text-bottom;background:var(--term-ink);width:.55em;height:1.05em;margin-left:1px;display:inline-block}.term:where(.astro-lcdefpme) .type-cursor.is-idle{animation:1.06s steps(2,jump-none) infinite term-blink}@keyframes term-blink{0%{opacity:1}to{opacity:.12}}@keyframes term-spin{to{transform:rotate(360deg)}}.chart:where(.astro-lcdefpme){max-width:980px}.chart-body:where(.astro-lcdefpme){padding:28px 28px 20px}.plot:where(.astro-lcdefpme){aspect-ratio:16/5;position:relative}.plot-reveal:where(.astro-lcdefpme){position:absolute;inset:0}.plot-bars:where(.astro-lcdefpme){align-items:flex-end;gap:4px;display:flex}.bar:where(.astro-lcdefpme){flex-direction:column-reverse;flex:1;gap:1px;min-width:0;height:100%;display:flex}.bar-part:where(.astro-lcdefpme):last-child{border-radius:2px 2px 0 0}.tone-0:where(.astro-lcdefpme){background:var(--ink-soft)}.tone-1:where(.astro-lcdefpme){background:var(--ink-faint)}.tone-2:where(.astro-lcdefpme){background:color-mix(in oklab, var(--ink-faint) 45%, transparent)}.swatch:where(.astro-lcdefpme){border-radius:2px;width:8px;height:8px;margin-right:8px;display:inline-block}.plot-axis:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;align-items:flex-start;gap:10px;margin-top:18px;font-size:10.5px;display:flex}.plot-axis-before:where(.astro-lcdefpme){border-top:1px solid var(--rule-control,var(--ink-faint));min-width:0;color:var(--ink-soft);flex:1;padding-top:8px}.plot-axis-today:where(.astro-lcdefpme){border-top:1px solid var(--brand);color:var(--brand-strong);padding-top:8px}@media (prefers-reduced-motion:no-preference){.plot-reveal:where(.astro-lcdefpme){animation:1.6s cubic-bezier(.22,1,.36,1) .35s both plot-wipe}}@keyframes plot-wipe{0%{clip-path:inset(-12px 100% -12px -12px)}to{clip-path:inset(-12px)}}.diff-body:where(.astro-lcdefpme){padding:26px 24px 8px}.diff-head:where(.astro-lcdefpme){font-variant-numeric:tabular-nums;align-items:baseline;gap:12px;display:flex}.diff-from:where(.astro-lcdefpme){color:var(--ink-faint);font-size:22px}.diff-arrow:where(.astro-lcdefpme){color:var(--ink-faint)}.diff-to:where(.astro-lcdefpme){letter-spacing:-.02em;color:var(--ink);font-size:34px;font-weight:500;line-height:1}.diff-delta:where(.astro-lcdefpme){border:1px solid var(--brand-tint-border);background:var(--brand-tint);color:var(--brand-strong);font-family:var(--font-mono);border-radius:999px;margin-left:auto;padding:3px 9px;font-size:12px}.week:where(.astro-lcdefpme){grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-top:26px;display:grid}.week-col:where(.astro-lcdefpme){flex-direction:column;align-items:stretch;gap:8px;display:flex}.week-track:where(.astro-lcdefpme){align-items:flex-end;height:84px;display:flex}.week-bar:where(.astro-lcdefpme){background:var(--rule-control,var(--rule));border-radius:3px 3px 0 0;width:100%;display:block}.week-col:where(.astro-lcdefpme).is-changed .week-bar:where(.astro-lcdefpme),.week-col:where(.astro-lcdefpme).is-today .week-bar:where(.astro-lcdefpme){background:var(--brand)}.week-day:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;text-align:center;color:var(--ink-faint);font-size:10.5px}.week-col:where(.astro-lcdefpme).is-changed .week-day:where(.astro-lcdefpme){color:var(--ink)}.diff-rows:where(.astro-lcdefpme){border-top:1px solid var(--rule);margin:22px 0 0}.diff-rows:where(.astro-lcdefpme) div:where(.astro-lcdefpme){border-bottom:1px solid var(--rule);justify-content:space-between;gap:16px;padding:11px 0;font-size:14px;display:flex}.diff-rows:where(.astro-lcdefpme) div:where(.astro-lcdefpme):last-child{border-bottom:0}.diff-rows:where(.astro-lcdefpme) dt:where(.astro-lcdefpme){color:var(--ink-soft)}.diff-rows:where(.astro-lcdefpme) dd:where(.astro-lcdefpme){color:var(--ink);font-variant-numeric:tabular-nums;margin:0}.diff-rows:where(.astro-lcdefpme) dd:where(.astro-lcdefpme).is-pos{color:var(--brand-strong)}.caps:where(.astro-lcdefpme){border-top:1px solid var(--rule)}.cap:where(.astro-lcdefpme){border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:72px;padding:56px 0;display:grid}.cap:where(.astro-lcdefpme):last-child{border-bottom:0;padding-bottom:0}.cap-n:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-faint);font-size:12px;display:block}.cap-name:where(.astro-lcdefpme){letter-spacing:-.02em;margin:14px 0 0;font-size:24px;font-weight:500;line-height:1.2}.cap-text:where(.astro-lcdefpme) p:where(.astro-lcdefpme){max-width:44ch;margin:14px 0 0;font-size:16.5px}.cap--lead:where(.astro-lcdefpme){border-bottom:0;align-items:center;padding:0}.cap--lead:where(.astro-lcdefpme) .cap-text:where(.astro-lcdefpme){flex-direction:column;align-items:flex-start;display:flex}.cap-text:where(.astro-lcdefpme) .sec-sub:where(.astro-lcdefpme){max-width:44ch;margin:18px 0 0;font-size:17px}.ticks:where(.astro-lcdefpme){border-top:1px solid var(--rule);width:100%;max-width:420px;margin:26px 0 0;padding:0;list-style:none}.ticks:where(.astro-lcdefpme) li:where(.astro-lcdefpme){border-bottom:1px solid var(--rule);color:var(--ink);padding:12px 0 12px 22px;font-size:15.5px;position:relative}.ticks:where(.astro-lcdefpme) li:where(.astro-lcdefpme):before{content:"";background:var(--brand);border-radius:50%;width:7px;height:7px;margin-top:-3.5px;position:absolute;top:50%;left:2px}.cap-text:where(.astro-lcdefpme) p:where(.astro-lcdefpme).cap-link{margin-top:22px;font-size:15px}.cap-link:where(.astro-lcdefpme) a:where(.astro-lcdefpme){color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-control,var(--ink-faint));text-underline-offset:3px}.cap-link:where(.astro-lcdefpme) a:where(.astro-lcdefpme):hover{text-decoration-color:var(--ink)}.route-body:where(.astro-lcdefpme){grid-template-columns:auto minmax(36px,1fr) auto minmax(36px,1fr) minmax(0,200px);align-items:stretch;padding:22px;display:grid}.route-agents:where(.astro-lcdefpme),.route-sources:where(.astro-lcdefpme){grid-auto-rows:1fr;margin:0;padding:0;list-style:none;display:grid}.route-agent:where(.astro-lcdefpme){font-family:var(--font-mono);color:var(--ink-soft);white-space:nowrap;align-items:center;font-size:12px;display:flex}.route-link:where(.astro-lcdefpme){min-height:0;position:relative}.route-lines:where(.astro-lcdefpme){width:100%;height:100%;position:absolute;inset:0}.route-lines:where(.astro-lcdefpme) path:where(.astro-lcdefpme){fill:none;stroke:var(--ink-faint);stroke-width:1.25px}.route-hub:where(.astro-lcdefpme){border:1px solid var(--brand-tint-border);background:var(--brand-tint);border-radius:12px;align-self:center;justify-items:center;gap:2px;padding:12px 16px;display:grid}.route-hub-name:where(.astro-lcdefpme){color:var(--brand-strong);font-size:14.5px;font-weight:500}.route-hub-note:where(.astro-lcdefpme){font-family:var(--font-mono);color:var(--brand-strong);opacity:.8;white-space:nowrap;font-size:10.5px}.route-source:where(.astro-lcdefpme){align-items:center;gap:10px;min-height:50px;padding-left:10px;display:flex}.route-icon:where(.astro-lcdefpme){border:1px solid var(--rule);background:#fff;border-radius:7px;flex:none;place-items:center;width:28px;height:28px;display:grid}.route-icon:where(.astro-lcdefpme) svg:where(.astro-lcdefpme).is-outline{stroke-width:1.8px;stroke-linejoin:round}.route-source-text:where(.astro-lcdefpme){gap:1px;min-width:0;display:grid}.route-source-name:where(.astro-lcdefpme){color:var(--ink);font-size:14px}.route-source-data:where(.astro-lcdefpme){font-family:var(--font-mono);color:var(--ink-faint);font-size:10.5px;line-height:1.4}.route-picks:where(.astro-lcdefpme){border-top:1px solid var(--brand-tint-border);justify-self:stretch;margin-top:8px;padding-top:8px;display:grid}.route-pick:where(.astro-lcdefpme){grid-area:1/1;justify-items:center;gap:6px;display:grid}.route-pick:where(.astro-lcdefpme):not(:first-child){visibility:hidden}.route-candidates:where(.astro-lcdefpme){justify-self:stretch;gap:2px;margin:0;padding:0;list-style:none;display:grid}.route-candidate:where(.astro-lcdefpme){font-family:var(--font-mono);white-space:nowrap;color:var(--ink-soft);opacity:.45;border-radius:5px;justify-content:space-between;gap:12px;padding:2px 6px;font-size:10.5px;line-height:1.5;display:flex}.route-candidate:where(.astro-lcdefpme).is-picked{background:var(--brand);color:var(--surface);opacity:1}.route-pick-reason:where(.astro-lcdefpme){font-family:var(--font-mono);color:var(--brand-strong);white-space:nowrap;font-size:10.5px}.route-dot:where(.astro-lcdefpme){display:none}@media (prefers-reduced-motion:no-preference){.route-body:where(.astro-lcdefpme){--route-step:3.4s;--route-agent-cycle:calc(var(--route-step) * 3);--route-source-cycle:calc(var(--route-step) * 6)}.route-dot:where(.astro-lcdefpme){background:var(--brand);width:6px;height:6px;box-shadow:0 0 0 3px var(--brand-tint);visibility:hidden;animation-duration:var(--route-step), var(--route-step), var(--route-step), var(--route-agent-cycle);animation-timing-function:var(--route-ease-x), var(--route-ease-y), linear, step-end;animation-iteration-count:infinite;animation-delay:0s, 0s, 0s, calc(var(--i) * var(--route-step));border-radius:50%;margin:-3px 0 0 -3px;display:block;position:absolute}.is-inbound:where(.astro-lcdefpme) .route-dot:where(.astro-lcdefpme){animation-name:route-dot-in-x,route-dot-in-y,route-dot-in-fade,route-turn-of-three}.is-outbound:where(.astro-lcdefpme) .route-dot:where(.astro-lcdefpme){animation-name:route-dot-out-x,route-dot-out-y,route-dot-out-fade,route-turn-of-six;animation-duration:var(--route-step), var(--route-step), var(--route-step), var(--route-source-cycle)}.route-agent:where(.astro-lcdefpme){animation:route-agent-lit var(--route-agent-cycle) ease-out infinite;animation-delay:calc(var(--i) * var(--route-step))}.route-hub:where(.astro-lcdefpme){animation:route-hub-lit var(--route-step) ease-out infinite}.route-pick:where(.astro-lcdefpme){animation:route-turn-of-three var(--route-agent-cycle) step-end infinite;animation-delay:calc(var(--i) * var(--route-step))}.route-candidate:where(.astro-lcdefpme){animation:route-candidate-passed var(--route-step) ease-out infinite}.route-candidate:where(.astro-lcdefpme).is-picked{animation-name:route-candidate-picked}.route-pick-reason:where(.astro-lcdefpme){animation:route-reason-shown var(--route-step) ease-out infinite}.route-icon:where(.astro-lcdefpme){animation:route-source-lit var(--route-source-cycle) ease-out infinite;animation-delay:calc(var(--i) * var(--route-step))}.route:where(.astro-lcdefpme).is-offscreen :where(.astro-lcdefpme):is(.route-dot,.route-agent,.route-hub,.route-icon,.route-pick,.route-candidate,.route-pick-reason){animation-play-state:paused}}@keyframes route-dot-in-x{0%{left:0}28%,to{left:100%}}@keyframes route-dot-in-y{0%{top:var(--y)}28%,to{top:50%}}@keyframes route-dot-in-fade{0%,28%,to{opacity:0}3%,25%{opacity:1}}@keyframes route-dot-out-x{0%{animation-timing-function:linear;left:0}50%{left:0}82%,to{left:100%}}@keyframes route-dot-out-y{0%{animation-timing-function:linear;top:50%}50%{top:50%}82%,to{top:var(--y)}}@keyframes route-dot-out-fade{0%,50%,82%,to{opacity:0}53%,79%{opacity:1}}@keyframes route-turn-of-three{0%{visibility:visible}33.33%,to{visibility:hidden}}@keyframes route-turn-of-six{0%{visibility:visible}16.66%,to{visibility:hidden}}@keyframes route-agent-lit{2%,8%{color:var(--ink)}0%,14%,to{color:var(--ink-soft)}}@keyframes route-hub-lit{0%,24%,46%,to{border-color:var(--brand-tint-border);box-shadow:0 0 #0000}31%{border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-tint)}}@keyframes route-candidate-passed{0%,30%,to{opacity:1}38%,95%{opacity:.45}}@keyframes route-candidate-picked{0%,30%,to{color:var(--ink-soft);background:0 0}38%,95%{background:var(--brand);color:var(--surface)}}@keyframes route-reason-shown{0%,32%,to{opacity:0}40%,95%{opacity:1}}@keyframes route-source-lit{0%,13.2%,23%,to{border-color:var(--rule);box-shadow:0 0 #0000}14.2%,17.5%{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}}.sched-body:where(.astro-lcdefpme){padding:26px 24px 20px}.sched-cost:where(.astro-lcdefpme){border:1px solid var(--brand-tint-border);border-radius:var(--radius-sm);background:var(--brand-tint);grid-template-columns:1fr auto;align-items:baseline;gap:4px 16px;padding:14px 16px;display:grid}.sched-cost-label:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brand-strong);grid-row:span 2;align-self:center;font-size:11px}.sched-cost-amt:where(.astro-lcdefpme){color:var(--ink);text-align:right;font-size:17px;font-weight:500}.sched-cost-sub:where(.astro-lcdefpme){color:var(--ink-soft);text-align:right;font-size:13px}.sched-line:where(.astro-lcdefpme){grid-template-columns:repeat(4,minmax(0,1fr));margin:30px 0 0;padding:0;list-style:none;display:grid;position:relative}.sched-line:where(.astro-lcdefpme):before{content:"";background:linear-gradient(to right, var(--ink-faint) 0%, var(--ink-faint) 82%, transparent 100%);height:1px;position:absolute;top:5px;left:0;right:0}.sched-line:where(.astro-lcdefpme) li:where(.astro-lcdefpme){flex-direction:column;gap:3px;display:flex;position:relative}.sched-dot:where(.astro-lcdefpme){background:var(--bg-card);border:2px solid var(--ink);border-radius:50%;width:11px;height:11px;margin-bottom:9px}.sched-day:where(.astro-lcdefpme){color:var(--ink);font-size:14px}.sched-run:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:10.5px}.sched-foot:where(.astro-lcdefpme){color:var(--ink-faint);margin:22px 0 0;font-size:13px}.shape:where(.astro-lcdefpme){container-type:inline-size}.shape-body:where(.astro-lcdefpme){gap:12px;padding:20px;display:grid}.shape-providers:where(.astro-lcdefpme){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.shape-pane:where(.astro-lcdefpme){border:1px solid var(--rule);background:var(--surface);border-radius:10px;min-width:0;padding:12px 14px 14px}.shape-pane:where(.astro-lcdefpme).is-voxoria{border-color:var(--brand-tint-border);background:var(--brand-tint)}.shape-label:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:8px;font-size:10.5px;display:block}.is-voxoria:where(.astro-lcdefpme) .shape-label:where(.astro-lcdefpme){color:var(--brand-strong)}.shape-code:where(.astro-lcdefpme){font-family:var(--font-mono);color:var(--ink-soft);margin:0;font-size:11.5px;line-height:1.65;overflow-x:auto}.shape-code:where(.astro-lcdefpme) .shape-key{color:var(--ink)}.shape-code:where(.astro-lcdefpme) .shape-key.is-renamed{text-decoration:underline wavy var(--ink-faint);text-underline-offset:3px}.is-voxoria:where(.astro-lcdefpme) .shape-code:where(.astro-lcdefpme) .shape-key{color:var(--brand-strong)}.shape-join:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);justify-self:center;font-size:10.5px}.shape-join:where(.astro-lcdefpme):after{content:" ↓"}@container (width<=540px){.shape-providers:where(.astro-lcdefpme){grid-template-columns:minmax(0,1fr)}}.steps:where(.astro-lcdefpme){grid-template-rows:auto auto 1fr;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;margin:0;padding:0;list-style:none;display:grid}.step:where(.astro-lcdefpme){grid-template-rows:subgrid;grid-row:span 3;min-width:0;display:grid}.step-head:where(.astro-lcdefpme){align-items:baseline;gap:12px;display:flex}.step-n:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-faint);font-size:12px}.step-name:where(.astro-lcdefpme){letter-spacing:-.02em;margin:0;font-size:20px;font-weight:500;line-height:1.2}.step-text:where(.astro-lcdefpme){max-width:34ch;color:var(--ink-soft);margin:10px 0 22px;font-size:15.5px}.step:where(.astro-lcdefpme) .fig:where(.astro-lcdefpme){flex-direction:column;display:flex}.step:where(.astro-lcdefpme) .fig:where(.astro-lcdefpme)>:where(.astro-lcdefpme):last-child{flex-direction:column;flex:1;display:flex}.step:where(.astro-lcdefpme) .sched-foot:where(.astro-lcdefpme){margin-top:auto;padding-top:22px}.step:where(.astro-lcdefpme) .split-row:where(.astro-lcdefpme){justify-content:space-between;gap:12px;display:flex}.step:where(.astro-lcdefpme) .diff-head:where(.astro-lcdefpme){flex-wrap:wrap;gap:6px 10px}.step:where(.astro-lcdefpme) .diff-to:where(.astro-lcdefpme){font-size:30px}.step:where(.astro-lcdefpme) .diff-delta:where(.astro-lcdefpme){margin-left:auto}.sec-head:where(.astro-lcdefpme) .cap-link:where(.astro-lcdefpme){margin:18px 0 0;font-size:15px}.step:where(.astro-lcdefpme) .chart-body:where(.astro-lcdefpme){padding:24px 24px 20px}.step:where(.astro-lcdefpme) .plot:where(.astro-lcdefpme){aspect-ratio:16/7}.step:where(.astro-lcdefpme) .plot-bars:where(.astro-lcdefpme){gap:2px}.step:where(.astro-lcdefpme) .plot-axis:where(.astro-lcdefpme){margin-top:12px}.step:where(.astro-lcdefpme) .split:where(.astro-lcdefpme){margin:16px 0 0;padding:0;list-style:none}.receipt-body:where(.astro-lcdefpme),.budget-body:where(.astro-lcdefpme){padding:26px 24px 20px}.receipt-rows:where(.astro-lcdefpme){border-top:0;margin-top:0}.receipt-rows:where(.astro-lcdefpme) div:where(.astro-lcdefpme){align-items:baseline;padding:14px 0}.receipt-rows:where(.astro-lcdefpme) dd:where(.astro-lcdefpme){font-family:var(--font-mono);white-space:nowrap}.diff-rows:where(.astro-lcdefpme) div:where(.astro-lcdefpme).is-total{border-top:1px solid var(--rule-control,var(--ink-faint));border-bottom:0}.receipt-rows:where(.astro-lcdefpme) .is-total:where(.astro-lcdefpme) dt:where(.astro-lcdefpme){color:var(--ink)}.receipt-rows:where(.astro-lcdefpme) .is-total:where(.astro-lcdefpme) dd:where(.astro-lcdefpme){color:var(--brand-strong);font-size:20px;font-weight:500}.split:where(.astro-lcdefpme) ul:where(.astro-lcdefpme){margin:0;padding:0;list-style:none}.split-row:where(.astro-lcdefpme){border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,7.5rem) minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 0;font-size:14px;display:grid}.split-row:where(.astro-lcdefpme):last-child{border-bottom:0;padding-bottom:0}.split-name:where(.astro-lcdefpme){color:var(--ink-soft);overflow-wrap:anywhere}.split-track:where(.astro-lcdefpme),.meter:where(.astro-lcdefpme){background:var(--rule);border-radius:3px;height:6px;display:block;overflow:hidden}.split-bar:where(.astro-lcdefpme),.meter-bar:where(.astro-lcdefpme){border-radius:3px;height:100%;display:block}.split-bar:where(.astro-lcdefpme):not([class*=tone-]),.meter-bar:where(.astro-lcdefpme){background:var(--ink-faint)}.split-amt:where(.astro-lcdefpme){font-family:var(--font-mono);color:var(--ink);font-variant-numeric:tabular-nums;font-size:13px}.budget-body:where(.astro-lcdefpme) .diff-from:where(.astro-lcdefpme){font-size:18px}.meter:where(.astro-lcdefpme){margin-top:22px}.meter-bar:where(.astro-lcdefpme){background:var(--brand)}.price-cta:where(.astro-lcdefpme){margin-top:32px}.faq:where(.astro-lcdefpme){border-top:1px solid var(--rule);max-width:820px}.faq-item:where(.astro-lcdefpme){border-bottom:1px solid var(--rule)}.faq-item:where(.astro-lcdefpme) summary:where(.astro-lcdefpme){cursor:pointer;font-family:var(--font-body);letter-spacing:-.015em;color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 0;font-size:1.05rem;font-weight:600;list-style:none;display:flex}.faq-item:where(.astro-lcdefpme) summary:where(.astro-lcdefpme)::-webkit-details-marker{display:none}.faq-ind:where(.astro-lcdefpme){flex:0 0 14px;width:14px;height:14px;position:relative}.faq-ind:where(.astro-lcdefpme):before,.faq-ind:where(.astro-lcdefpme):after{content:"";background:var(--ink);transition:transform .2s;position:absolute}.faq-ind:where(.astro-lcdefpme):before{width:14px;height:2px;top:6px;left:0}.faq-ind:where(.astro-lcdefpme):after{width:2px;height:14px;top:0;left:6px}.faq-item:where(.astro-lcdefpme)[open] .faq-ind:where(.astro-lcdefpme):after{transform:scaleY(0)}.faq-item:where(.astro-lcdefpme) p:where(.astro-lcdefpme){color:var(--ink-soft);max-width:65ch;margin:0 0 1.4rem;line-height:1.65}.ledger:where(.astro-lcdefpme){grid-template-columns:minmax(0,4fr) minmax(0,3fr);align-items:start;gap:56px;display:grid}.ledger-label:where(.astro-lcdefpme){font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 4px;font-size:11px;font-weight:500}.ledger:where(.astro-lcdefpme) ul:where(.astro-lcdefpme){margin:0;padding:0;list-style:none}.ledger:where(.astro-lcdefpme) li:where(.astro-lcdefpme){border-bottom:1px solid var(--rule);font-size:18px}.ledger:where(.astro-lcdefpme) a:where(.astro-lcdefpme){color:var(--ink);padding:14px 0;display:block}.ledger-group--next:where(.astro-lcdefpme) a:where(.astro-lcdefpme){color:var(--ink-soft)}.ledger:where(.astro-lcdefpme) a:where(.astro-lcdefpme):hover{color:var(--brand-strong)}.final:where(.astro-lcdefpme){border-top:1px solid var(--rule);background:var(--bg);padding:104px 0 40px}.final-inner:where(.astro-lcdefpme){text-align:center;max-width:780px;margin:0 auto}.final-title:where(.astro-lcdefpme){text-wrap:balance;max-width:20ch;margin:0 auto;font-size:clamp(30px,3.8vw,46px);line-height:1.08}@media (width<=960px){.steps:where(.astro-lcdefpme){grid-template-rows:none;grid-template-columns:minmax(0,1fr);gap:44px}.step:where(.astro-lcdefpme){grid-row:auto;grid-template-rows:none}.cap:where(.astro-lcdefpme){grid-template-columns:minmax(0,1fr);gap:36px;padding:44px 0}}@media (width<=720px){.container:where(.astro-lcdefpme){padding:0 20px}.sec:where(.astro-lcdefpme){padding:72px 0}.sec-head:where(.astro-lcdefpme){margin-bottom:40px}.demo:where(.astro-lcdefpme){padding-bottom:72px}.hero-inner:where(.astro-lcdefpme){padding:56px 0 40px}.hero-br:where(.astro-lcdefpme){display:none}.hero-sub:where(.astro-lcdefpme){font-size:17px}.give:where(.astro-lcdefpme) .cmdline:where(.astro-lcdefpme){align-items:flex-start;padding:10px 8px 10px 12px}.give:where(.astro-lcdefpme) .cmdline-prompt:where(.astro-lcdefpme){line-height:1.7}.give:where(.astro-lcdefpme) .cmd:where(.astro-lcdefpme){white-space:pre-wrap;overflow-wrap:anywhere}.term-window:where(.astro-lcdefpme){font-size:12px}.term-body:where(.astro-lcdefpme){padding:14px 14px 12px}.ledger:where(.astro-lcdefpme){grid-template-columns:minmax(0,1fr);gap:36px}.chart-body:where(.astro-lcdefpme){padding:26px 16px 16px}.plot:where(.astro-lcdefpme){aspect-ratio:16/10}.plot-bars:where(.astro-lcdefpme){gap:1px}.fig-bar:where(.astro-lcdefpme){padding:12px 16px}.shape-body:where(.astro-lcdefpme){padding:16px}.fig-cap:where(.astro-lcdefpme){padding:14px 16px 16px}.diff-body:where(.astro-lcdefpme),.sched-body:where(.astro-lcdefpme),.receipt-body:where(.astro-lcdefpme),.budget-body:where(.astro-lcdefpme){padding-left:16px;padding-right:16px}.route-body:where(.astro-lcdefpme){grid-template-columns:auto minmax(14px,1fr) auto minmax(14px,1fr) minmax(0,auto);padding:18px 14px}.final:where(.astro-lcdefpme){padding-top:72px}}@media (width<=600px){.route-source-data:where(.astro-lcdefpme){display:none}}@media (width<=480px){.route-picks:where(.astro-lcdefpme){display:none}}@media (width<=420px){.week:where(.astro-lcdefpme){gap:5px}.route-hub:where(.astro-lcdefpme){padding:10px}.route-hub-note:where(.astro-lcdefpme){display:none}.route-source:where(.astro-lcdefpme){gap:8px;min-height:42px;padding-left:6px}.sched-cost:where(.astro-lcdefpme){grid-template-columns:1fr}.sched-cost-label:where(.astro-lcdefpme){grid-row:auto}.sched-cost-amt:where(.astro-lcdefpme),.sched-cost-sub:where(.astro-lcdefpme){text-align:left}}@media (prefers-reduced-motion:reduce){.copy-btn:where(.astro-lcdefpme),.faq-ind:where(.astro-lcdefpme):before,.faq-ind:where(.astro-lcdefpme):after{transition:none}}
