.bv2{--white:#fff;--shadow-card:0 1px 3px #0f172a0f, 0 4px 12px #0f172a0a;--shadow-card-hover:0 2px 8px #0f172a14, 0 8px 32px #0f172a0f;--shadow-glow-blue:0 0 24px #3b82f61f;--ease-out:cubic-bezier(.4, 0, .2, 1);font-family:var(--font-montserrat),-apple-system,system-ui,sans-serif;color:var(--slate-800);-webkit-font-smoothing:antialiased;background:radial-gradient(ellipse 70% 50% at 0 0,var(--blue-50) 0,transparent 60%) no-repeat 0 0/100% 720px,radial-gradient(ellipse 60% 50% at 100% 0,#fce7f38c 0,transparent 60%) no-repeat 0 0/100% 720px,linear-gradient(180deg,#eff6ff8c 0,#f8fafcbf 45%,#eff6ff80 100%),var(--white);font-size:16px;line-height:1.6}.bv2 *,.bv2 :after,.bv2 :before{box-sizing:border-box}.bv2 h1,.bv2 h2,.bv2 h3{font-family:var(--font-poppins),sans-serif;color:var(--heading-color);text-wrap:balance;margin:0}.bv2 p{margin:0}.bv2 .accent{color:var(--blue-600)}.bv2 .bv2-label{font-family:var(--font-montserrat),sans-serif;letter-spacing:.02em;color:var(--slate-500);font-size:13px;font-weight:600}.bv2 .grain,.bv2.grain{position:relative}.bv2 .grain:after,.bv2.grain:after{content:"";opacity:.035;pointer-events:none;z-index:1;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:256px 256px;position:absolute;inset:0}.bv2 .bv-hero{padding:88px 32px 56px;position:relative;overflow:clip}.bv2 .bv-hero-inner{z-index:2;max-width:var(--content-width);text-align:center;flex-direction:column;align-items:center;margin:0 auto;display:flex;position:relative}.bv2 .bv-cat{border:1px solid var(--slate-200);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-card);background:#ffffffb3;border-radius:999px;align-items:center;gap:8px;margin-bottom:24px;padding:7px 16px;display:inline-flex}.bv2 .bv-cat .bv2-label{color:var(--blue-600)}.bv2 .bv-hero h1{font-weight:700;font-size:var(--h1-compact);letter-spacing:-.025em;max-width:900px;margin-bottom:20px;line-height:1.1}.bv2 .bv-hero-sub{color:var(--slate-600);max-width:62ch;margin-bottom:28px;font-size:18px}.bv2 .bv-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.bv2 .bv-meta img{object-fit:cover;border:2px solid var(--white);width:40px;height:40px;box-shadow:var(--shadow-card);border-radius:50%}.bv2 .bv-meta-who{text-align:left}.bv2 .bv-meta-name{color:var(--slate-800);font-size:14px;font-weight:600}.bv2 .bv-meta-role{color:var(--slate-500);font-size:12.5px}.bv2 .bv-meta-dot{background:var(--slate-300);border-radius:50%;width:3px;height:3px}.bv2 .bv-meta-when{color:var(--slate-500);font-size:14px}.bv2 .bv-body,.bv2 .bv-hero,.bv2 .bv-related{z-index:2;position:relative}.bv2 .bv-body{padding:48px 32px 72px}.bv2 .bv-rail{max-width:var(--content-width-narrow);margin:0 auto;position:relative}.bv2 .bv-tldr{border-top:1px solid var(--slate-200);margin-bottom:52px;padding-top:26px}.bv2 .bv-tldr .bv2-label{color:var(--blue-600);margin-bottom:16px;display:block}.bv2 .bv-tldr ul{margin:0;padding:0;list-style:none}.bv2 .bv-tldr li{color:var(--slate-600);margin-bottom:14px;padding-left:24px;font-size:16px;line-height:1.65;position:relative}.bv2 .bv-tldr li:last-child{margin-bottom:0}.bv2 .bv-tldr li:before{content:"";background:var(--blue-500);border-radius:50%;width:7px;height:7px;position:absolute;top:.62em;left:2px}.bv2 .bv-tldr strong{color:var(--slate-900);font-weight:600}.bv2 .bv-toc-rail{width:216px;position:absolute;top:0;bottom:0;right:calc(100% + 44px)}.bv2 .bv-toc-sticky{position:sticky;top:96px}.bv2 .bv-toc-sticky .bv2-label{margin-bottom:12px;display:block}.bv2 .bv-toc-sticky a{color:var(--slate-500);border-left:2px solid var(--slate-200);padding:5px 0 5px 12px;font-size:13.5px;line-height:1.4;text-decoration:none;display:block}.bv2 .bv-toc-sticky a:hover{color:var(--blue-600);border-left-color:var(--blue-400)}.bv2 .bv-toc-card{background:var(--white);border:1px solid var(--slate-200);box-shadow:var(--shadow-card);border-radius:16px;margin-bottom:40px;padding:26px 30px;display:none}.bv2 .bv-toc-card .bv2-label{margin-bottom:12px;display:block}.bv2 .bv-toc-card a{color:var(--slate-600);padding:5px 0;font-size:14.5px;text-decoration:none;display:block}.bv2 .bv-toc-card a:hover{color:var(--blue-600)}@media (max-width:1463px){.bv2 .bv-toc-rail{display:none}.bv2 .bv-toc-card{display:block}}.bv2 .bv-article{color:var(--slate-700)}.bv2 .bv-article>p:first-of-type{font-size:17px}.bv2 .bv-article p{margin:0 0 18px}.bv2 .bv-article h2{letter-spacing:-.02em;margin:52px 0 16px;scroll-margin-top:90px;font-size:calc(clamp(1.5rem,2.6vw,1.9rem));font-weight:600}.bv2 .bv-article h3{letter-spacing:-.01em;margin:34px 0 10px;scroll-margin-top:90px;font-size:1.15rem;font-weight:600}.bv2 .bv-article ol,.bv2 .bv-article ul{margin:0 0 18px 22px;padding:0}.bv2 .bv-article li{margin-bottom:8px}.bv2 .bv-article strong{color:var(--slate-900)}.bv2 .bv-article a{color:var(--blue-600);border-bottom:1px solid var(--blue-200);transition:border-color .15s var(--ease-out);text-decoration:none}.bv2 .bv-article a:hover{border-bottom-color:var(--blue-600)}.bv2 .bv-article hr{background:linear-gradient(90deg,#0000,#94a3b852,#0000);border:none;height:1px;margin:52px 0}.bv2 .bv-article pre{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:12px;margin:0 0 24px;padding:18px 20px;overflow-x:auto}.bv2 .bv-article pre code,.bv2 .bv-article pre code[class*=language-]{color:var(--slate-800);background:0 0;padding:0;font-size:13.5px;line-height:1.7}.bv2 .bv-article :not(pre)>code,.bv2 .bv-article :not(pre)>code[class*=language-]{background:var(--slate-100);color:var(--slate-800);border-radius:6px;padding:.15em .4em;font-size:.9em}.bv2 .bv-article table{border-collapse:collapse;border-spacing:0;border:1px solid var(--slate-200);width:100%;box-shadow:var(--shadow-card);border-radius:12px;margin:0 0 18px;font-size:14.5px;overflow:hidden}.bv2 .bv-article td,.bv2 .bv-article th{text-align:left;border-bottom:1px solid var(--slate-100);vertical-align:top;padding:11px 14px}.bv2 .bv-article th{background:var(--slate-50);color:var(--slate-800);font-weight:600}.bv2 .bv-article tr:last-child td{border-bottom:none}.bv2 .bv-article img{border-radius:12px;max-width:100%}.bv2 .bv-author{border-top:1px solid var(--slate-200);align-items:center;gap:16px;margin-top:56px;padding-top:28px;display:flex}.bv2 .bv-author img{object-fit:cover;border-radius:50%;width:56px;height:56px}.bv2 .bv-author-name{color:var(--slate-900);font-weight:600}.bv2 .bv-author-role{color:var(--slate-500);font-size:13.5px}.bv2 .bv-related{padding:var(--section-pad) 32px}.bv2 .bv-related-rail{max-width:var(--content-width-narrow);margin:0 auto}.bv2 .bv-related h2{letter-spacing:-.025em;margin-bottom:28px;font-size:calc(clamp(1.8rem,3.4vw,2.4rem));font-weight:700}.bv2 .bv-row{border-bottom:1px solid var(--slate-200);transition:background .2s var(--ease-out),box-shadow .25s var(--ease-out);border-radius:12px;grid-template-columns:1fr auto;align-items:baseline;gap:24px;margin:0 -18px;padding:22px 18px;text-decoration:none;display:grid}.bv2 .bv-related-rail .bv-row:first-of-type{border-top:1px solid var(--slate-200)}.bv2 .bv-row:hover{border-bottom-color:var(--blue-100);box-shadow:var(--shadow-glow-blue);background:#eff6ffa6}.bv2 .bv-row-title{font-family:var(--font-poppins),sans-serif;letter-spacing:-.015em;color:var(--slate-900);text-wrap:balance;font-size:21px;line-height:1.3}.bv2 .bv-row-more,.bv2 .bv-row-title{transition:color .2s var(--ease-out);font-weight:600}.bv2 .bv-row-more{color:var(--blue-600);white-space:nowrap;font-size:14px}.bv2 .bv-row-more .arr{transition:transform .2s var(--ease-out);display:inline-block}.bv2 .bv-row:hover .bv-row-title{color:var(--blue-600)}.bv2 .bv-row:hover .bv-row-more{color:var(--blue-700)}.bv2 .bv-row:hover .bv-row-more .arr{transform:translate(3px)}@media (max-width:1023px){.bv2 .bv-hero{padding:64px 24px 44px}.bv2 .bv-body{padding:40px 24px 56px}.bv2 .bv-related{padding:var(--section-pad) 24px}}@media (max-width:767px){.bv2 .bv-row{grid-template-columns:1fr;gap:6px}.bv2 .bv-row-title{font-size:18px}.bv2 .bv-article [style*=grid-template-columns]{grid-template-columns:1fr!important}}.bv2 .bv-article a,.bv2 .bv-article code{overflow-wrap:anywhere}
code[class*=language-],pre[class*=language-]{color:#d4d4d4;text-shadow:none;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;tab-size:4;-webkit-hyphens:none;hyphens:none;direction:ltr;font-family:Menlo,Monaco,Consolas,Andale Mono,Ubuntu Mono,Courier New,monospace;font-size:13px;line-height:1.5}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#264f78}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{background:#1e1e1e;margin:.5em 0;padding:1em;overflow:auto}:not(pre)>code[class*=language-]{color:#db4c69;background:#1e1e1e;border-radius:.3em;padding:.1em .3em}.namespace{opacity:.7}.token.doctype .token.doctype-tag{color:#569cd6}.token.doctype .token.name{color:#9cdcfe}.token.comment,.token.prolog{color:#6a9955}.language-html .language-css .token.punctuation,.language-html .language-javascript .token.punctuation,.token.punctuation{color:#d4d4d4}.token.boolean,.token.constant,.token.inserted,.token.number,.token.property,.token.symbol,.token.tag,.token.unit{color:#b5cea8}.token.attr-name,.token.builtin,.token.char,.token.deleted,.token.selector,.token.string{color:#ce9178}.language-css .token.string.url{text-decoration:underline}.token.entity,.token.operator{color:#d4d4d4}.token.operator.arrow{color:#569cd6}.token.atrule{color:#ce9178}.token.atrule .token.rule{color:#c586c0}.token.atrule .token.url{color:#9cdcfe}.token.atrule .token.url .token.function{color:#dcdcaa}.token.atrule .token.url .token.punctuation{color:#d4d4d4}.token.keyword{color:#569cd6}.token.keyword.control-flow,.token.keyword.module{color:#c586c0}.token.function,.token.function .token.maybe-class-name{color:#dcdcaa}.token.regex{color:#d16969}.token.important{color:#569cd6}.token.italic{font-style:italic}.token.constant{color:#9cdcfe}.token.class-name,.token.maybe-class-name{color:#4ec9b0}.token.console,.token.interpolation,.token.parameter{color:#9cdcfe}.token.boolean,.token.punctuation.interpolation-punctuation{color:#569cd6}.token.exports .token.maybe-class-name,.token.imports .token.maybe-class-name,.token.property,.token.variable{color:#9cdcfe}.token.escape,.token.selector{color:#d7ba7d}.token.tag{color:#569cd6}.token.cdata,.token.tag .token.punctuation{color:gray}.token.attr-name{color:#9cdcfe}.token.attr-value,.token.attr-value .token.punctuation{color:#ce9178}.token.attr-value .token.punctuation.attr-equals{color:#d4d4d4}.token.entity{color:#569cd6}.token.namespace{color:#4ec9b0}code[class*=language-javascript],code[class*=language-jsx],code[class*=language-tsx],code[class*=language-typescript],pre[class*=language-javascript],pre[class*=language-jsx],pre[class*=language-tsx],pre[class*=language-typescript]{color:#9cdcfe}code[class*=language-css],pre[class*=language-css]{color:#ce9178}code[class*=language-html],pre[class*=language-html]{color:#d4d4d4}.language-regex .token.anchor{color:#dcdcaa}.language-html .token.punctuation{color:gray}pre[class*=language-]>code[class*=language-]{z-index:1;position:relative}.line-highlight.line-highlight{z-index:0;background:#f7ebc6;box-shadow:inset 5px 0 #f7d87c}
