*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font);margin:0;font-size:17px;line-height:1.55}a{color:var(--accent)}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}code{font-family:var(--mono);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-size:.88em}pre{font-family:var(--mono);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-size:14px;overflow-x:auto}pre code{font-size:inherit;background:0 0;border:0;padding:0}.wrap{max-width:1080px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}.narrow{max-width:760px}.top{justify-content:space-between;align-items:center;gap:16px;padding:18px 0;display:flex}.brand{letter-spacing:.01em;color:var(--ink);align-items:center;gap:10px;font-size:19px;font-weight:700;text-decoration:none;display:inline-flex}.brand svg{width:26px;height:26px}.top>.language-switch{margin-left:auto}.top nav{align-items:center;gap:4px 16px;display:flex}.top nav a{color:var(--ink-2);white-space:nowrap;font-size:14.5px;text-decoration:none}.top nav a:hover,.top nav a[aria-current=page]{color:var(--ink)}.top nav a[aria-current=page]{font-weight:600}.top nav a.cab{color:var(--accent);font-weight:600}.top nav a.btn{padding:8px 13px;font-size:14px}.top nav a.btn-primary,.top nav a.btn-primary:hover{color:var(--accent-ink)}.top .menu-btn{display:none}.hero{border-top:0;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:40px;padding:36px 0 56px;display:grid}.hero.single{grid-template-columns:1fr;padding-bottom:28px}.soon{background:var(--amber-bg);color:var(--amber);border:1px solid color-mix(in srgb, var(--amber) 35%, transparent);border-radius:999px;align-items:center;gap:10px;margin:0 0 22px;padding:6px 14px 6px 10px;font-size:14px;font-weight:600;line-height:1.35;display:inline-flex}.soon a{color:inherit;font-weight:600}.soon i{background:var(--amber);border-radius:50%;width:9px;height:9px;display:inline-block}h1{letter-spacing:-.025em;max-width:16ch;margin:0 0 18px;font-size:clamp(34px,5.4vw,58px);font-weight:800;line-height:1.04}.hero.single h1{max-width:22ch}.lead{color:var(--ink-2);max-width:52ch;margin:0 0 30px;font-size:clamp(17px,1.6vw,20px)}.cta{flex-wrap:wrap;align-items:center;gap:12px 14px;display:flex}.btn{cursor:pointer;border:1.5px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:13px 20px;font-family:inherit;font-size:16px;font-weight:650;line-height:1;text-decoration:none;display:inline-flex}.btn svg{flex:none;width:18px;height:18px}.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn-primary:hover{filter:brightness(1.08)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-ghost{color:var(--ink);border-color:var(--line);background:var(--surface)}.btn-ghost:hover{border-color:var(--ink-2)}.fine{color:var(--ink-2);flex-basis:100%;margin:2px 0 0;font-size:14px}.ring{width:100%;max-width:440px;margin:0 auto;display:block}.ring text{font-family:var(--mono);fill:var(--ink-2);font-size:11.5px}.ring .core{fill:var(--accent)}.ring .core-label{fill:var(--accent-ink);font-size:12px;font-weight:700}.ring .orbit{fill:none;stroke:var(--ring-soft);stroke-width:1px;stroke-dasharray:3 5}.ring .node{fill:var(--surface);stroke:var(--ring);stroke-width:1.5px}.ring .arrow{stroke:var(--accent);stroke-width:1.75px;fill:none;marker-end:url(#ah)}.ring .nat{fill:none;stroke:var(--ring-soft);stroke-width:1px;stroke-dasharray:2 3}@media (prefers-reduced-motion:no-preference){.ring .pulse{transform-origin:220px 220px;animation:3.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.35;transform:scale(.92)}50%{opacity:0;transform:scale(1.35)}}}section{border-top:1px solid var(--line);padding:52px 0}h2{letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(24px,3vw,32px);font-weight:750;line-height:1.15}h3{letter-spacing:-.01em;margin:28px 0 8px;font-size:20px}.sub{color:var(--ink-2);max-width:60ch;margin:0 0 30px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 10px;font-size:12.5px;font-weight:700}.feat{grid-template-columns:1fr 1fr;column-gap:48px;margin:0;padding:0;list-style:none;display:grid}.feat li{border-top:1px solid var(--line);grid-template-columns:28px 1fr;gap:14px;padding:18px 0;display:grid}.feat li:nth-child(-n+2){border-top:0}.feat svg{width:24px;height:24px;stroke:var(--accent);fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;margin-top:2px}.feat b{margin-bottom:3px;font-weight:700;display:block}.feat b a{color:inherit;text-decoration:none}.feat b a:hover{color:var(--accent)}.feat p{color:var(--ink-2);margin:0;font-size:15.5px}.steps{counter-reset:s;grid-template-columns:repeat(3,1fr);gap:28px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:s;padding-top:52px;position:relative}.steps li:before{content:counter(s);border:1.5px solid var(--ink);border-radius:50%;place-items:center;width:38px;height:38px;font-size:16px;font-weight:700;display:grid;position:absolute;top:0;left:0}.steps b{margin-bottom:4px;font-weight:700;display:block}.steps p{color:var(--ink-2);margin:0;font-size:15.5px}.steps code{white-space:nowrap}.cards{grid-template-columns:1fr 1fr;gap:28px;display:grid}.cards.three{grid-template-columns:repeat(3,1fr)}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:26px}.card h3{margin:0 0 6px;font-size:20px}.card p{color:var(--ink-2);margin:0 0 18px;font-size:15.5px}.card p:last-child{margin-bottom:0}.card .price{letter-spacing:-.02em;margin:6px 0 2px;font-size:30px;font-weight:800}.card ul{color:var(--ink-2);margin:0 0 18px;padding-left:20px;font-size:15px}.card.soon-card{border-style:dashed}a.card{color:inherit;text-decoration:none;transition:border-color .15s;display:block}a.card:hover{border-color:var(--accent)}a.card .more{color:var(--accent);font-size:15px;font-weight:600}.beta{max-width:760px;margin:18px 0 34px}.beta-grid{grid-template-columns:1fr 1fr;gap:12px 16px;display:grid}.beta-grid label{color:var(--ink-2);flex-direction:column;gap:5px;font-size:14px;display:flex}.beta-grid .wide{grid-column:1/-1}.beta-grid input,.beta-grid textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;width:100%;padding:9px 11px;font-size:15px}.beta-grid input:focus,.beta-grid textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.beta-grid .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.beta-actions{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:16px;display:flex}.beta-note{color:var(--ink-2);max-width:380px;font-size:13.5px}.beta-msg{min-height:1.4em;margin:12px 0 0;font-size:15px}.beta-msg[data-ok]{color:var(--accent)}.beta-msg[data-err]{color:var(--danger)}.prose{overflow-wrap:anywhere;max-width:720px}.prose p,.prose li{color:var(--ink-2);font-size:16.5px}.prose p strong,.prose li strong{color:var(--ink)}.prose h2{margin:40px 0 8px;font-size:24px}.prose h3{margin:26px 0 6px;font-size:19px}.prose ul{padding-left:22px}.prose li+li{margin-top:4px}.prose table{border-collapse:collapse;width:100%;margin:12px 0 20px;font-size:15px}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 10px}.prose th{color:var(--ink);font-weight:700}.prose td{color:var(--ink-2)}.table-wrap{overflow-x:auto}.epigraph{border-left:3px solid var(--accent);margin:0 0 28px;padding:4px 0 4px 22px}.epigraph p{color:var(--ink);margin:0 0 10px;font-size:16.5px;font-style:italic;line-height:1.6}.epigraph footer{color:var(--ink-2);font-size:14px}.log{margin:0;padding:0;list-style:none}.log>li{border-top:1px solid var(--line);grid-template-columns:180px 1fr;gap:24px;padding:34px 0;display:grid}.log>li:first-child{border-top:0;padding-top:0}.log .meta{align-self:start;position:sticky;top:20px}.log .ver{font-family:var(--mono);letter-spacing:-.01em;font-size:22px;font-weight:700}.log .ver a{color:var(--ink);text-decoration:none}.log .ver a:hover{color:var(--accent)}.log time{color:var(--ink-2);margin-top:2px;font-size:14px;display:block}.tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.tag{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600}.log h3.entry-title{margin:0 0 10px;font-size:22px}.log .prose h2{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin:20px 0 4px;font-size:15px}.log .prose ul{margin:0}footer.foot{border-top:1px solid var(--line);color:var(--ink-2);padding:34px 0 44px;font-size:14.5px}footer.foot .cols{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px;margin-bottom:26px;display:grid}footer.foot b{color:var(--ink);margin-bottom:8px;font-size:14px;display:block}footer.foot ul{margin:0;padding:0;list-style:none}footer.foot li{margin:4px 0}footer.foot a{color:var(--ink-2);text-decoration:none}footer.foot a:hover{color:var(--ink)}footer.foot .legal{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:8px 28px;padding-top:18px;display:flex}@media (width<=820px){.hero{grid-template-columns:1fr;gap:28px;padding:20px 0 44px}.ring{max-width:340px}.feat{grid-template-columns:1fr}.feat li:nth-child(2){border-top:1px solid var(--line)}.steps{grid-template-columns:1fr;gap:22px}.steps li{padding-top:0;padding-left:52px}.cards,.cards.three{grid-template-columns:1fr}.log>li{grid-template-columns:1fr;gap:8px}.log .meta{position:static}footer.foot .cols{grid-template-columns:1fr 1fr}}@media (width<=560px){.beta-grid{grid-template-columns:1fr}}@media (width<=420px){.btn:not(.top .btn){justify-content:center;width:100%}}@media (width<=1199px){.top{flex-wrap:wrap}.top nav{flex-direction:column;align-items:flex-start;gap:12px;width:100%;padding:10px 0 6px;display:none}.top nav.open{display:flex}.top .menu-btn{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:8px;padding:7px 9px;display:inline-flex}.top .menu-btn svg{width:20px;height:20px}}.log>li>div{min-width:0}.prose :not(pre)>code{overflow-wrap:anywhere}
