#ba-sky{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(120% 90% at 78% 14%,#10131f,#0a0c15 42%,#06070c),radial-gradient(70% 55% at 10% 100%,rgba(79,79,255,.1) 0%,transparent 60%)}#ba-dawn{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.55;background:radial-gradient(52% 64% at 84% 6%,rgba(255,196,128,.14) 0%,rgba(255,170,110,.04) 40%,transparent 68%),radial-gradient(40% 40% at 70% 0%,rgba(91,255,138,.06) 0%,transparent 60%);will-change:opacity}#scrim{z-index:2!important}#grain{z-index:3!important}.ba-page{position:relative;z-index:5}a.brand{text-decoration:none}.skip-link{position:absolute;top:-48px;left:12px;z-index:60;padding:10px 16px;border-radius:var(--radius-pill);background:var(--mint);color:var(--bg);font-weight:600;font-size:var(--fs-body-sm);text-decoration:none;transition:top var(--dur-fast) var(--ease-out)}.skip-link:focus{top:12px}.ba-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:80;background:var(--grad-relay);transform:scaleX(0);transform-origin:left;pointer-events:none}.ba-hero{padding:calc(var(--hero-pt) - 40px) 0 var(--space-12)}.ba-crumb{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 var(--space-6);font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:var(--ls-mono);text-transform:uppercase}.ba-crumb a{color:var(--ink-3);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}.ba-crumb a:hover{color:var(--ink)}.ba-crumb-sep{color:var(--ink-3);opacity:.5}.ba-crumb-cat{color:var(--mint-3)}.ba-h1{max-width:24ch;margin:0;font-size:clamp(30px,4.4vw,56px);line-height:1.05;letter-spacing:var(--ls-section);font-weight:500;text-wrap:balance}.ba-lede{margin:var(--space-6) 0 0;font-size:var(--fs-lede);line-height:var(--lh-lede);color:var(--ink-2);max-width:56ch}.ba-body{padding:var(--space-10) 0 0}.ba-grid{display:grid;grid-template-columns:240px minmax(0,70ch);column-gap:clamp(40px,6vw,96px);align-items:start}.ba-rail{position:sticky;top:110px;display:grid;border-bottom:1px solid var(--line)}.ba-rail-item{display:grid;gap:5px;padding:var(--space-4) 0;border-top:1px solid var(--line)}.ba-rail-k{font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:var(--ls-mono);text-transform:uppercase;color:var(--ink-3)}.ba-rail-v{font-size:var(--fs-body-sm);color:var(--ink-2)}.ba-rail-v.ba-rail-cat{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--mint-3)}.ba-rail-links{display:flex;gap:14px;align-items:baseline}.ba-rail-links a,.ba-rail-links button{font-family:var(--font-sans);font-size:var(--fs-body-sm);color:var(--ink-2);background:none;border:0;padding:0;cursor:pointer;text-decoration:none;border-bottom:1px solid var(--line-2);transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.ba-rail-links a:hover,.ba-rail-links button:hover{color:var(--mint-3);border-color:var(--mint)}.ba-rail-links button.is-copied{color:var(--mint);border-color:transparent}.ba-content{font-size:17px;line-height:1.7;color:var(--ink-2);min-width:0}.ba-content>:first-child{margin-top:0}.ba-content p{margin:0 0 1.3em;font-size:inherit;line-height:inherit;color:inherit}.ba-content strong{color:var(--ink);font-weight:600}.ba-content h2,.ba-content h3,.ba-content h4{scroll-margin-top:110px}.ba-content h2{position:relative;margin:var(--space-16) 0 var(--space-5);padding-top:var(--space-6);border-top:1px solid var(--line);font-size:clamp(24px,2.6vw,32px);line-height:1.2;letter-spacing:-.02em;font-weight:500;color:var(--ink);text-wrap:balance}.ba-content h2:before{content:"";position:absolute;top:-1px;left:0;width:64px;height:1px;background:linear-gradient(90deg,var(--mint),var(--indigo-3))}.ba-content h3{margin:var(--space-10) 0 var(--space-4);font-size:21px;letter-spacing:-.015em;font-weight:500;color:var(--ink)}.ba-content h4{margin:var(--space-8) 0 var(--space-3);font-size:var(--fs-h4);font-weight:600;color:var(--ink)}.ba-content a{color:var(--mint-3);text-decoration:underline;text-decoration-color:#5bff8a59;text-underline-offset:3px;transition:color var(--dur-fast) var(--ease-out),text-decoration-color var(--dur-fast) var(--ease-out)}.ba-content a:hover{color:#fff;text-decoration-color:var(--mint)}.ba-content ul,.ba-content ol{margin:0 0 1.3em;padding-left:1.3em}.ba-content li{margin-bottom:.55em}.ba-content ul li::marker{color:var(--mint)}.ba-content ol li::marker{color:var(--ink-3);font-family:var(--font-mono);font-size:.9em}.ba-content blockquote{margin:var(--space-8) 0;padding:2px 0 2px var(--space-6);border-left:2px solid transparent;border-image:linear-gradient(var(--mint),var(--indigo-2)) 1}.ba-content blockquote p{font-size:var(--fs-lede);line-height:var(--lh-lede);color:var(--ink);font-weight:450}.ba-content blockquote p:last-child{margin-bottom:0}.ba-content pre{margin:var(--space-8) 0;padding:var(--space-5) var(--space-6);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-md);overflow-x:auto}.ba-content pre code{font-family:var(--font-mono);font-size:var(--fs-body-sm);letter-spacing:var(--ls-mono-tight);color:var(--ink-2);background:none;padding:0;border-radius:0}.ba-content :not(pre)>code{font-family:var(--font-mono);font-size:.85em;letter-spacing:var(--ls-mono-tight);color:var(--mint-3);background:#ffffff0f;padding:2px 7px;border-radius:var(--radius-xs)}.ba-content img{display:block;width:100%;height:auto;margin:var(--space-8) 0;border-radius:var(--radius-lg);border:1px solid var(--line)}.ba-content hr{border:0;height:1px;background:var(--line);margin:var(--space-12) 0}.ba-content table{display:block;overflow-x:auto;width:100%;margin:var(--space-8) 0;border-collapse:collapse;font-size:var(--fs-body-sm);line-height:1.5}.ba-content th{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--ink-3);text-align:left;padding:10px 18px 10px 0;border-bottom:1px solid var(--line-2)}.ba-content td{padding:12px 18px 12px 0;border-bottom:1px solid var(--line);color:var(--ink-2);vertical-align:top}.ba-content td strong{color:var(--ink)}.ba-content .faq-item{border-top:1px solid var(--line-2)}.ba-content .faq-item:last-child{border-bottom:1px solid var(--line-2)}.ba-content .faq-question{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);width:100%;padding:var(--space-5) 0;background:none;border:0;cursor:pointer;text-align:left;font-family:var(--font-sans);font-size:17px;font-weight:500;color:var(--ink);letter-spacing:-.01em;transition:color var(--dur-fast) var(--ease-out)}.ba-content .faq-question:hover{color:var(--mint-3)}.ba-content .faq-question .faq-icon{flex:0 0 auto;width:18px;height:18px;stroke:var(--ink-3);transition:transform var(--dur-base) var(--ease-out),stroke var(--dur-base) var(--ease-out)}.ba-content .faq-item.open .faq-icon{transform:rotate(45deg);stroke:var(--mint)}.ba-content .faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease-out)}.ba-content .faq-answer p{overflow:hidden;min-height:0;margin:0;font-size:var(--fs-body);color:var(--ink-2);max-width:62ch}.ba-content .faq-item.open .faq-answer{grid-template-rows:1fr}.ba-content .faq-item.open .faq-answer p{padding-bottom:var(--space-5)}.ba-content .article-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid var(--line)}.ba-content .article-tags .tag{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius-pill);padding:7px 14px;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.ba-content .article-tags .tag:hover{color:var(--mint-3);border-color:var(--line-2)}.ba-cta{padding:var(--section-py) 0 0}.ba-cta-wrap{padding-top:var(--space-16);padding-bottom:var(--space-8);border-top:1px solid var(--line)}.ba-cta-h2{margin:14px 0 0;font-size:var(--fs-cta);line-height:var(--lh-section);letter-spacing:var(--ls-section);font-weight:500;text-wrap:balance}.ba-cta-sub{margin:var(--space-5) 0 var(--space-8);font-size:var(--fs-lede);line-height:var(--lh-lede);color:var(--ink-2);max-width:52ch}@media (max-width: 980px){.ba-grid{grid-template-columns:minmax(0,1fr)}.ba-rail{position:static;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:0 var(--space-6);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:var(--space-10)}.ba-rail-item{border-top:0}}@media (max-width: 680px){.ba-hero{padding-top:92px}.ba-content{font-size:var(--fs-body)}.ba-crumb{gap:8px 16px}.ba-crumb a{display:inline-flex;align-items:center;min-height:44px}.ba-rail-links{gap:8px 24px;flex-wrap:wrap;align-items:center}.ba-rail-links a,.ba-rail-links button{display:inline-flex;align-items:center;min-height:44px}}@media (prefers-reduced-motion: reduce){.ba-content .faq-answer,.ba-content .faq-question .faq-icon{transition:none}.klabel:before{animation:none}}
