.hub{--hub-display:var(--font-sol-display,"Gelasio"), Georgia, serif;--hub-sans:var(--font-sol-sans,"IBM Plex Sans"), system-ui, -apple-system, "Segoe UI", sans-serif;--hub-mono:var(--font-sol-mono,"IBM Plex Mono"), ui-monospace, SFMono-Regular, Menlo, monospace;--hub-ground:#f4f4f1;--hub-ink:#152224;--hub-muted:#3d4f51;--hub-teal:#1a7c86;--hub-deep:#073740;--hub-mist:#e1ecec;--hub-line:#07374029;--hub-slate:#141b1d;background:var(--hub-ground);min-height:100vh;color:var(--hub-ink);font-family:var(--hub-sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}.hub a{color:var(--hub-deep);text-underline-offset:3px;text-decoration-thickness:1px}.hub a:hover{color:var(--hub-teal)}.hub a:focus-visible,.hub [tabindex="0"]:focus-visible{outline:2px solid var(--hub-teal);outline-offset:3px;border-radius:4px}.hub code{font-family:var(--hub-mono);overflow-wrap:anywhere;font-size:.86em}.hub-skip{background:var(--hub-deep);z-index:10;padding:8px 12px;position:absolute;top:8px;left:-9999px;color:#fff!important}.hub-skip:focus{left:8px}.hub-bar{z-index:5;background:var(--hub-ground);border-bottom:1px solid var(--hub-line);position:sticky;top:0}.hub-bar-in{align-items:center;gap:14px;max-width:1120px;height:60px;margin:0 auto;padding:0 clamp(16px,4vw,40px);display:flex}.hub-home{align-self:center;margin:0}.hub-sep{background:var(--hub-line);width:1px;height:20px}.hub-product{color:var(--hub-deep);font-family:var(--hub-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;text-decoration:none}.hub-nav{scrollbar-width:none;gap:4px;margin-left:16px;display:flex;overflow-x:auto}.hub-nav a{min-height:44px;color:var(--hub-muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;padding:0 10px;font-size:.9rem;text-decoration:none;display:inline-flex}.hub-nav a:hover{color:var(--hub-deep)}.hub-nav a[aria-current=page]{color:var(--hub-deep);border-bottom-color:var(--hub-teal);font-weight:600}.hub-bar-end{margin-left:auto}.hub-button{border:1px solid var(--hub-deep);min-height:44px;font-family:var(--hub-sans);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0 18px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex;color:var(--hub-deep)!important}.hub-button:hover{background:var(--hub-mist)}.hub-button-solid{background:var(--hub-teal);border-color:var(--hub-teal);color:#fff!important}.hub-button-solid:hover{background:var(--hub-deep);border-color:var(--hub-deep)}.hub-bar .hub-button{min-height:40px;padding:0 14px}.hub-main{max-width:1120px;margin:0 auto;padding:0 clamp(16px,4vw,40px) 96px}.hub h1,.hub h2,.hub h3{font-family:var(--hub-display);color:var(--hub-deep);letter-spacing:-.01em;margin:0;font-weight:400}.hub h1{font-size:clamp(2rem,4.4vw,3.05rem);font-weight:600;line-height:1.1}.hub h2{font-size:1.56rem;line-height:1.2}.hub h3{font-size:1.25rem;line-height:1.25}.hub-eyebrow{color:var(--hub-deep);font-family:var(--hub-mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px;font-size:.72rem}.hub-lede{max-width:62ch;color:var(--hub-muted);margin:18px 0 0;font-size:1.125rem;line-height:1.5}.hub-intro{max-width:68ch;color:var(--hub-muted);margin:10px 0 24px}.hub-note{max-width:68ch;color:var(--hub-muted);margin:16px 0 0;font-size:.9rem}.hub-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(24px,5vw,64px);padding:clamp(40px,7vw,88px) 0 clamp(32px,5vw,56px);display:grid}.hub-cta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.hub-panel{background:var(--hub-slate);color:#e9edec;border-radius:8px;padding:18px 18px 8px}.hub-panel-head{color:#5fb6bd;font-family:var(--hub-mono);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #bfe3e533;justify-content:space-between;margin:0 0 14px;padding-bottom:12px;font-size:.72rem;display:flex}.hub-panel-step{color:#e9edecc7;margin:0 0 8px;font-size:.85rem}.hub-panel pre,.hub-code pre{color:#e9edec;font-family:var(--hub-mono);background:#bfe3e512;border-radius:6px;margin:0 0 16px;padding:12px 14px;font-size:.78rem;line-height:1.55;overflow-x:auto}.hub-panel code,.hub-code code{font-size:inherit;overflow-wrap:normal;white-space:pre}.hub-facts{border-top:1px solid var(--hub-line);border-bottom:1px solid var(--hub-line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 clamp(40px,6vw,72px);display:grid}.hub-facts div{padding:16px 20px 16px 0}.hub-facts div+div{border-left:1px solid var(--hub-line);padding-left:20px}.hub-facts dt{color:var(--hub-deep);font-family:var(--hub-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem}.hub-facts dd{margin:4px 0 0;font-weight:500}.hub-section{border-top:1px solid var(--hub-line);padding:clamp(32px,5vw,56px) 0}.hub-hero+.hub-facts+.hub-section{border-top:0;padding-top:0}.hub-table{border:1px solid var(--hub-line);background:#ffffff80;border-radius:8px;overflow-x:auto}.hub-table table{border-collapse:collapse;width:100%;font-size:.92rem}.hub-table th,.hub-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--hub-line);padding:12px 16px}.hub-table tbody tr:last-child>*{border-bottom:0}.hub-table thead th{background:var(--hub-mist);color:var(--hub-deep);font-family:var(--hub-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:500}.hub-table tbody th{white-space:nowrap;font-weight:600}.hub-table td code{white-space:nowrap}.hub-chip,.hub-kind{border:1px solid var(--hub-deep);color:var(--hub-deep);font-family:var(--hub-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:4px;padding:2px 8px;font-size:.68rem;line-height:1.5;display:inline-block}.hub-chip[data-state=available]{background:var(--hub-deep);color:#f4f4f1}.hub-chip[data-state=preview]{background:var(--hub-mist)}.hub-chip[data-state=planned],.hub-chip[data-state=paused]{color:var(--hub-muted);border-style:dashed;border-color:#07374080}.hub-kind{border-color:var(--hub-line);background:var(--hub-mist);margin-right:10px}.hub-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,5vw,64px);margin-top:24px;display:grid}.hub-latest h3{margin-bottom:8px}.hub-rows{border-top:1px solid var(--hub-line);margin:0;padding:0;list-style:none}.hub-rows li{border-bottom:1px solid var(--hub-line);grid-template-columns:6.5rem 1fr;gap:12px;padding:12px 0;display:grid}.hub-rows time,.hub-entry>time,.hub-meta time{color:var(--hub-muted);font-family:var(--hub-mono);letter-spacing:.02em;font-size:.78rem}.hub-clients{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.hub-clients li{border:1px solid var(--hub-line);background:#ffffff80;border-radius:8px;flex-direction:column;gap:10px;padding:18px;display:flex}.hub-clients h3 a{text-decoration:none}.hub-clients h3 a:hover{text-decoration:underline}.hub-clients p{color:var(--hub-muted);flex:1;margin:0;font-size:.9rem}.hub-clients .hub-chip{align-self:flex-start}@media (max-width:860px){.hub-clients{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.hub-clients{grid-template-columns:minmax(0,1fr)}}.hub-steps{max-width:68ch;margin:20px 0;padding-left:1.4rem;line-height:1.55;list-style:decimal}.hub-steps li+li{margin-top:10px}.hub-signin{max-width:440px;margin-top:8px}.hub-band{border:1px solid var(--hub-line);background:var(--hub-mist);border-radius:8px;justify-content:space-between;align-items:center;gap:24px;margin-top:24px;padding:28px clamp(20px,4vw,36px);display:flex}.hub-band p{max-width:62ch;color:var(--hub-muted);margin:8px 0 0}.hub-pagehead{padding:clamp(40px,6vw,72px) 0 clamp(24px,4vw,40px)}.hub-pagehead h1{max-width:20ch}.hub-log{border-top:1px solid var(--hub-line);grid-template-columns:200px minmax(0,1fr);gap:clamp(24px,5vw,64px);padding-top:8px;display:grid}.hub-log-filter{align-self:start;padding-top:24px;position:sticky;top:84px}.hub-log-filter ul{margin:0;padding:0;list-style:none}.hub-log-filter a{min-height:36px;color:var(--hub-muted);border-radius:4px;justify-content:space-between;align-items:center;gap:8px;margin:0 -8px;padding:0 8px;font-size:.9rem;text-decoration:none;display:flex}.hub-log-filter a:hover{background:var(--hub-mist);color:var(--hub-deep)}.hub-log-filter a[aria-current=true]{background:var(--hub-mist);color:var(--hub-deep);font-weight:600}.hub-log-filter span{color:var(--hub-muted);font-family:var(--hub-mono);font-size:.75rem}.hub-log-sub{margin-top:20px;font-size:.85rem}.hub-log-list{margin:0;padding:0;list-style:none}.hub-entry{border-bottom:1px solid var(--hub-line);grid-template-columns:8rem minmax(0,1fr);gap:24px;padding:28px 0 32px;scroll-margin-top:80px;display:grid}.hub-entry>time{padding-top:6px}.hub-entry-summary{color:var(--hub-muted);margin:8px 0 0}.hub-changes{margin:18px 0 0;padding:0;list-style:none}.hub-changes li{border-top:1px solid var(--hub-line);padding:10px 0}.hub-changes li:first-child{border-top:0;padding-top:0}.hub-empty{color:var(--hub-muted);padding:28px 0}.hub-posts{border-top:1px solid var(--hub-line);margin:0;padding:0;list-style:none}.hub-posts li{border-bottom:1px solid var(--hub-line);max-width:760px;padding:28px 0}.hub-posts h2 a{color:inherit;text-decoration:none}.hub-posts h2 a:hover{color:var(--hub-teal);text-decoration:underline}.hub-posts p:last-child{color:var(--hub-muted);margin:8px 0 0}.hub-meta{color:var(--hub-muted);flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0 0 10px;font-size:.8rem;display:flex}.hub-meta .hub-kind{margin:0}.hub-article{max-width:760px}.hub-crumb{margin:32px 0 0;font-size:.9rem}.hub-article .hub-pagehead{padding-top:16px}.hub-article .hub-pagehead h1{max-width:none;font-size:clamp(1.9rem,4vw,2.6rem)}.hub-byline{color:var(--hub-muted);margin:16px 0 0;font-size:.9rem}.hub-toc{border:1px solid var(--hub-line);background:var(--hub-mist);border-radius:8px;margin:0 0 32px;padding:16px 20px}.hub-toc ol{margin:0;padding-left:1.2rem}.hub-toc li{margin:4px 0}.hub-prose p,.hub-prose li{max-width:68ch}.hub-prose h2{margin:40px 0 10px;font-size:1.56rem}.hub-prose p{margin:0 0 16px}.hub-prose ul{margin:0 0 16px;padding-left:1.3rem}.hub-prose li+li{margin-top:8px}.hub-code{margin:20px 0}.hub-code figcaption{color:var(--hub-deep);font-family:var(--hub-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:.7rem}.hub-code pre{background:var(--hub-slate);margin:0}.hub-callout{border-left:3px solid var(--hub-teal);background:var(--hub-mist);border-radius:0 6px 6px 0;padding:14px 18px}.hub-plain{max-width:68ch;margin:16px 0 0;padding-left:1.2rem}.hub-plain li+li{margin-top:10px}.hub-foot{border-top:1px solid var(--hub-line)}.hub-foot-in{max-width:1120px;color:var(--hub-muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px 32px;margin:0 auto;padding:24px clamp(16px,4vw,40px) 88px;font-size:.85rem;display:flex}.hub-foot-in p{max-width:62ch;margin:0}.hub-foot-in ul{flex-wrap:wrap;gap:6px 20px;margin:0;padding:0;list-style:none;display:flex}.hub .developers-in-hub{--dev-ink:var(--hub-ink);--dev-muted:var(--hub-muted);--dev-line:var(--hub-line);--dev-teal:var(--hub-teal);--dev-wash:var(--hub-mist);max-width:none;font-family:var(--hub-sans);margin:0;padding:clamp(32px,5vw,56px) 0 0;font-size:1rem}.hub .developers-in-hub h1{font-size:2rem}.hub .developers-in-hub h2{border-top:1px solid var(--hub-line);margin:48px 0 12px;padding-top:28px;font-size:1.56rem;font-weight:400}.hub .developers-in-hub h3{font-family:var(--hub-sans);color:var(--hub-ink);font-size:1rem;font-weight:600}.hub .developers-in-hub>*{max-width:860px}.hub .developers-in-hub button{min-height:40px;font-family:var(--hub-sans);border-radius:6px;font-size:.88rem}.hub .developers-in-hub button.developers-primary{background:var(--hub-teal);border-color:var(--hub-teal)}.hub .developers-in-hub button:hover{border-color:var(--hub-teal)}.hub .developers-in-hub .developers-callout,.hub .developers-in-hub .developers-notice{border-radius:8px}.hub .developers-in-hub .developers-notice[data-tone=error]{border-color:var(--hub-deep);color:var(--hub-deep);background:var(--hub-mist)}.hub .developers-in-hub pre{background:var(--hub-slate);border-radius:6px}.hub .developers-in-hub .developers-list,.hub .developers-in-hub .developers-table{border-radius:8px}.hub .developers-in-hub a{color:var(--hub-deep)}@media (max-width:860px){.hub-hero{grid-template-columns:minmax(0,1fr)}.hub-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-facts div:nth-child(3){border-left:0;padding-left:0}.hub-facts div:nth-child(n+3){border-top:1px solid var(--hub-line)}.hub-latest-grid,.hub-log{grid-template-columns:minmax(0,1fr)}.hub-log-filter{padding-top:20px;position:static}.hub-log-filter ul{flex-wrap:wrap;gap:6px;display:flex}.hub-log-filter a{border:1px solid var(--hub-line);margin:0;padding:0 12px}.hub-entry{grid-template-columns:minmax(0,1fr);gap:4px}.hub-band{flex-direction:column;align-items:flex-start}}@media (max-width:640px){.hub-bar-in{gap:8px}.hub-sep,.hub-product{display:none}.hub-nav{margin-left:0}.hub-table{background:0 0;border:0;overflow:visible}.hub-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.hub-table table,.hub-table tbody,.hub-table tr,.hub-table th,.hub-table td{display:block}.hub-table tr{border:1px solid var(--hub-line);background:#ffffff80;border-radius:8px;margin-bottom:12px;padding:12px 14px}.hub-table th,.hub-table td{white-space:normal;border:0;padding:6px 0}.hub-table tbody tr:last-child>*{border-bottom:0}.hub-table td[data-label]:before{content:attr(data-label);color:var(--hub-deep);font-family:var(--hub-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.66rem;display:block}.hub-table td code{white-space:normal}.hub-rows li{grid-template-columns:minmax(0,1fr);gap:2px}}
