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