:root{color-scheme:dark;--bg:#0d1117;--panel:#161b22;--line:#30363d;--line-soft:#21262d;--text:#e6edf3;--muted:#9da7b3;--faint:#7d8590;--accent:#58a6ff;--accent-strong:#2f81f7;--ok:#3fb950}:where(.astro-lcdefpme){box-sizing:border-box}html,body{overflow-x:hidden}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,sans-serif;line-height:1.6}.wrap:where(.astro-lcdefpme){max-width:1040px;margin:0 auto;padding:0 24px}header:where(.astro-lcdefpme).hero{text-align:center;padding-top:96px;padding-bottom:56px}.hero:where(.astro-lcdefpme) h1:where(.astro-lcdefpme){margin:0 0 20px;font-size:clamp(2.1rem,6vw,3.5rem);line-height:1.15}.hero:where(.astro-lcdefpme) .fjarr:where(.astro-lcdefpme){color:var(--accent)}.hero:where(.astro-lcdefpme) p:where(.astro-lcdefpme).fit{color:var(--text);max-width:42rem;margin:0 auto 16px;font-size:1.3rem}.hero:where(.astro-lcdefpme) p:where(.astro-lcdefpme).tag{color:var(--muted);max-width:44rem;margin:0 auto 8px;font-size:1.1rem}.hero:where(.astro-lcdefpme) p:where(.astro-lcdefpme).sub{color:var(--faint);max-width:44rem;margin:0 auto 32px}.cta:where(.astro-lcdefpme){border-radius:8px;margin:0 6px 8px;padding:12px 28px;font-weight:600;text-decoration:none;display:inline-block}.cta:where(.astro-lcdefpme).primary{background:var(--accent-strong);color:#fff}.cta:where(.astro-lcdefpme).ghost{border:1px solid var(--line);color:var(--text)}.release:where(.astro-lcdefpme){background:var(--panel);border:1px solid var(--line);text-align:left;border-radius:10px;max-width:40rem;margin:40px auto 0;padding:16px 20px}.release:where(.astro-lcdefpme) .meta:where(.astro-lcdefpme){color:var(--muted);margin:0 0 8px;font-size:.95rem}.release:where(.astro-lcdefpme) .meta:where(.astro-lcdefpme) b:where(.astro-lcdefpme){color:var(--ok)}section:where(.astro-lcdefpme).wrap{padding-top:48px;padding-bottom:48px}h2:where(.astro-lcdefpme){margin:0 0 12px;font-size:1.7rem;line-height:1.25}h2:where(.astro-lcdefpme) small:where(.astro-lcdefpme){color:var(--faint);font-weight:400}.lede:where(.astro-lcdefpme){color:var(--muted);max-width:50rem;margin:0 0 24px}.note:where(.astro-lcdefpme){color:var(--faint);margin:20px 0 0}.grid:where(.astro-lcdefpme).two{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr))}.grid:where(.astro-lcdefpme){grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:16px;display:grid}.card:where(.astro-lcdefpme){background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:0;padding:18px}.card:where(.astro-lcdefpme) h3:where(.astro-lcdefpme){margin:0 0 6px;font-size:1.05rem}.card:where(.astro-lcdefpme) p:where(.astro-lcdefpme){color:var(--muted);margin:0}.badge:where(.astro-lcdefpme){float:right;border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.7rem}.badge:where(.astro-lcdefpme).avail{border-color:var(--ok);color:var(--ok)}.badge:where(.astro-lcdefpme).dev{border-color:var(--accent-strong);color:var(--accent)}code:where(.astro-lcdefpme){background:var(--line-soft);overflow-wrap:anywhere;border-radius:4px;padding:1px 6px;font-size:.9em}pre:where(.astro-lcdefpme){border:1px solid var(--line-soft);background:#010409;border-radius:8px;margin:12px 0 0;padding:12px 14px;font-size:.85rem;line-height:1.5;overflow-x:auto}pre:where(.astro-lcdefpme) code:where(.astro-lcdefpme){overflow-wrap:normal;background:0 0;padding:0}pre:where(.astro-lcdefpme) .c:where(.astro-lcdefpme){color:var(--faint)}a:where(.astro-lcdefpme){color:var(--accent)}ul:where(.astro-lcdefpme).patchwork{gap:10px;margin:0 0 20px;padding:0;list-style:none;display:grid}ul:where(.astro-lcdefpme).patchwork li:where(.astro-lcdefpme){background:var(--panel);border:1px solid var(--line);color:var(--muted);border-left:3px solid #d29922;border-radius:8px;padding:12px 16px}ul:where(.astro-lcdefpme).patchwork li:where(.astro-lcdefpme) b:where(.astro-lcdefpme){color:var(--text)}.tiers-diagram:where(.astro-lcdefpme){grid-template-rows:auto auto;grid-template-columns:1fr minmax(120px,.8fr) 1fr;align-items:center;gap:0 12px;margin:8px 0 24px;display:grid}.tiers-diagram:where(.astro-lcdefpme) .node:where(.astro-lcdefpme){background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:0;padding:16px}.tiers-diagram:where(.astro-lcdefpme) .node:where(.astro-lcdefpme) h3:where(.astro-lcdefpme){margin:0 0 4px;font-size:1.05rem}.tiers-diagram:where(.astro-lcdefpme) .node:where(.astro-lcdefpme) p:where(.astro-lcdefpme){color:var(--muted);margin:0;font-size:.95rem}.tiers-diagram:where(.astro-lcdefpme) .backend:where(.astro-lcdefpme){text-align:center;grid-column:1/4;justify-self:center;max-width:30rem}.tiers-diagram:where(.astro-lcdefpme) .control:where(.astro-lcdefpme){color:var(--faint);grid-column:1/4;justify-content:space-between;padding:0 16%;font-size:.8rem;display:flex}.tiers-diagram:where(.astro-lcdefpme) .control:where(.astro-lcdefpme) span:where(.astro-lcdefpme){border-left:2px dashed var(--line);padding:10px 0 10px 8px}.tiers-diagram:where(.astro-lcdefpme) .machine:where(.astro-lcdefpme){grid-area:3/1}.tiers-diagram:where(.astro-lcdefpme) .dashboard:where(.astro-lcdefpme){grid-area:3/3}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme){text-align:center;color:var(--ok);grid-area:3/2;font-size:.85rem;line-height:1.35}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme) .arrow:where(.astro-lcdefpme){background:var(--ok);border-radius:2px;height:3px;margin:6px 0;display:block;position:relative}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme) .arrow:where(.astro-lcdefpme):before,.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme) .arrow:where(.astro-lcdefpme):after{content:"";border:6.5px solid #0000;position:absolute;top:-5px}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme) .arrow:where(.astro-lcdefpme):before{border-right-color:var(--ok);border-left:0;left:-6px}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme) .arrow:where(.astro-lcdefpme):after{border-left-color:var(--ok);border-right:0;right:-6px}.snippets:where(.astro-lcdefpme){grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:16px;display:grid}.snippets:where(.astro-lcdefpme) .card:where(.astro-lcdefpme) h3:where(.astro-lcdefpme){color:var(--muted);font-size:.95rem;font-weight:600}.numbers:where(.astro-lcdefpme){grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:12px;display:grid}.numbers:where(.astro-lcdefpme) a:where(.astro-lcdefpme){background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:10px;padding:16px;text-decoration:none;display:block}.numbers:where(.astro-lcdefpme) a:where(.astro-lcdefpme):hover{border-color:var(--accent-strong)}.numbers:where(.astro-lcdefpme) .v:where(.astro-lcdefpme){color:var(--text);font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:700;line-height:1.2;display:block}.numbers:where(.astro-lcdefpme) .l:where(.astro-lcdefpme){color:var(--muted);font-size:.95rem;display:block}.numbers:where(.astro-lcdefpme) .d:where(.astro-lcdefpme){color:var(--faint);margin-top:4px;font-size:.8rem;display:block}ul:where(.astro-lcdefpme).features{columns:2 16rem;color:var(--muted);margin:0 0 28px;padding-left:1.2rem}ul:where(.astro-lcdefpme).features li:where(.astro-lcdefpme){break-inside:avoid;margin-bottom:6px}h3:where(.astro-lcdefpme).sub{margin:8px 0 12px;font-size:1.15rem}table:where(.astro-lcdefpme).tiers{border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:10px;width:100%;overflow:hidden}table:where(.astro-lcdefpme).tiers td:where(.astro-lcdefpme){border-bottom:1px solid var(--line-soft);vertical-align:top;padding:12px 14px}table:where(.astro-lcdefpme).tiers tr:where(.astro-lcdefpme):last-child td:where(.astro-lcdefpme){border-bottom:0}table:where(.astro-lcdefpme).tiers td:where(.astro-lcdefpme):first-child{white-space:nowrap}.closing:where(.astro-lcdefpme){text-align:center;padding:56px 0 24px}footer:where(.astro-lcdefpme){color:var(--faint);text-align:center;padding:24px 0 64px}@media (width<=720px){.wrap:where(.astro-lcdefpme){padding:0 16px}header:where(.astro-lcdefpme).hero{padding-top:64px;padding-bottom:40px}.tiers-diagram:where(.astro-lcdefpme){grid-template-columns:1fr}.tiers-diagram:where(.astro-lcdefpme) .backend:where(.astro-lcdefpme),.tiers-diagram:where(.astro-lcdefpme) .control:where(.astro-lcdefpme),.tiers-diagram:where(.astro-lcdefpme) .machine:where(.astro-lcdefpme),.tiers-diagram:where(.astro-lcdefpme) .dashboard:where(.astro-lcdefpme),.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme){grid-area:auto/1}.tiers-diagram:where(.astro-lcdefpme) .control:where(.astro-lcdefpme){padding:0 24px}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme){padding:10px 0}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme) .arrow:where(.astro-lcdefpme){width:3px;height:28px;margin:6px auto}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme) .arrow:where(.astro-lcdefpme):before{border:6.5px solid #0000;border-bottom-color:var(--ok);border-top:0;top:-6px;left:-5px}.tiers-diagram:where(.astro-lcdefpme) .p2p:where(.astro-lcdefpme) .arrow:where(.astro-lcdefpme):after{border:6.5px solid #0000;border-top-color:var(--ok);border-bottom:0;inset:auto auto -6px -5px}table:where(.astro-lcdefpme).tiers td:where(.astro-lcdefpme){border-bottom:0;display:block}table:where(.astro-lcdefpme).tiers tr:where(.astro-lcdefpme){border-bottom:1px solid var(--line-soft);display:block}table:where(.astro-lcdefpme).tiers td:where(.astro-lcdefpme):first-child{padding-bottom:0}}
