._8ZofXq_document{color:#d4d4d8;min-width:0;font-family:var(--font-sans,sans-serif);overflow-wrap:break-word;word-break:normal;hyphens:manual;text-align:start;unicode-bidi:isolate;font-size:1.0625rem;line-height:1.8;container:blog-document/inline-size}._8ZofXq_document:lang(ar){font-family:var(--font-blog-arabic,var(--font-sans,sans-serif));line-height:1.9}._8ZofXq_document>:first-child{margin-block-start:0}._8ZofXq_document p{margin-block:1.1rem}._8ZofXq_document strong,._8ZofXq_heading{color:#fafafa;font-weight:650}._8ZofXq_heading{letter-spacing:-.01em;overflow-wrap:break-word;word-break:normal;hyphens:manual;text-wrap:balance;margin-block:2.25rem .85rem;scroll-margin-top:7rem;line-height:1.3}._8ZofXq_heading:lang(ar){letter-spacing:0;line-height:1.5}._8ZofXq_document h1{font-size:clamp(1.75rem,1rem + 4cqi,2.5rem)}._8ZofXq_document h2{font-size:clamp(1.35rem,.9rem + 3cqi,1.875rem)}._8ZofXq_document h3{font-size:clamp(1.2rem,1rem + 1.25cqi,1.4rem)}._8ZofXq_document h4{font-size:1.15rem}._8ZofXq_document h5{font-size:1.05rem}._8ZofXq_document h6{font-size:1rem}._8ZofXq_document a{color:var(--color-brand-300,#c4b4fe);text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px}@media (hover:hover){._8ZofXq_document a:hover{color:#ddd5ff}}._8ZofXq_document ._8ZofXq_anchor{color:var(--devup-gradient-orange,#fd831c);opacity:0;margin-inline-start:.4em;padding-inline:.1em;font-size:.75em;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-block}._8ZofXq_heading:hover ._8ZofXq_anchor,._8ZofXq_heading:focus-within ._8ZofXq_anchor,._8ZofXq_document ._8ZofXq_anchor:focus-visible{opacity:1}._8ZofXq_document a:focus-visible,._8ZofXq_document pre:focus-visible,._8ZofXq_tableScroll:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:3px;border-radius:.2rem}._8ZofXq_document ul,._8ZofXq_document ol{margin-block:1.1rem;padding-inline-start:1.6rem}._8ZofXq_document ul{list-style:outside}._8ZofXq_document ol{list-style:decimal}._8ZofXq_document li{margin-block:.4rem}._8ZofXq_document li::marker{color:#a3a3a3}._8ZofXq_document li>div>p:first-child{margin-block-start:0}._8ZofXq_document li>div>p:last-child{margin-block-end:0}._8ZofXq_task{align-items:baseline;gap:.65rem;list-style:none;display:flex}._8ZofXq_task input{accent-color:#a788fc;flex:none}._8ZofXq_task>div{min-width:0}._8ZofXq_document blockquote{border-inline-start:3px solid var(--color-brand-400,#a788fc);color:#d4d4d8;margin-block:1.5rem;margin-inline:0;padding-inline-start:1.1rem}._8ZofXq_callout{border:1px solid #222;border-inline-start:3px solid var(--color-brand-400,#a788fc);background:#0f0f0f;border-radius:.75rem;margin-block:1.5rem;padding:1rem 1.15rem}._8ZofXq_callout[data-kind=warning],._8ZofXq_callout[data-kind=caution]{border-inline-start-color:var(--color-gold-400,#fbbf24)}._8ZofXq_document ._8ZofXq_calloutTitle{color:#fafafa;margin-block:0 .3rem;font-weight:650}._8ZofXq_callout>:last-child{margin-block-end:0}._8ZofXq_document hr{border:0;border-block-start:1px solid #222;margin-block:2.25rem}._8ZofXq_inlineCode{color:#ede8ff;font-size:.875em;font-family:var(--font-mono,monospace);overflow-wrap:break-word;unicode-bidi:isolate;background:#111;border:1px solid #262626;border-radius:.3rem;padding:.1em .35em;display:inline}._8ZofXq_codeBlock{text-align:left;background:#0a0a0a;border:1px solid #222;border-radius:.75rem;min-width:0;max-width:100%;margin-block:1.75rem;overflow:hidden}._8ZofXq_codeHeader{background:#0f0f0f;border-block-end:1px solid #222;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;min-width:0;min-height:2.5rem;padding:.4rem .5rem .4rem 1rem;display:flex}._8ZofXq_codeHeader>:last-child{margin-left:auto}._8ZofXq_codeLabel{min-width:0;font:600 .72rem/1.4 var(--font-mono,monospace);letter-spacing:.04em;color:#c4b4fe;unicode-bidi:isolate;flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}._8ZofXq_filename{overflow-wrap:break-word;letter-spacing:0;color:#a3a3a3;min-width:0;font-weight:400}._8ZofXq_codeBlock pre,._8ZofXq_literal{white-space:pre;overflow-wrap:normal;word-break:normal;tab-size:4;color:#e5e5e5;min-width:0;max-width:100%;font:.875rem/1.7 var(--font-mono,monospace);text-align:left;unicode-bidi:isolate;margin:0;padding:1rem 1.1rem;overflow-x:auto}._8ZofXq_codeBlock pre{background:#0a0a0a}._8ZofXq_codeBlock code{white-space:inherit;unicode-bidi:isolate}._8ZofXq_literal{background:#0f0f0f;border:1px solid #222;border-radius:.6rem;margin-block:1.5rem}._8ZofXq_image{border-radius:.6rem;max-width:100%;height:auto;margin-block:.5rem;display:inline-block}._8ZofXq_tableScroll{border:1px solid #222;border-radius:.6rem;min-width:0;max-width:100%;margin-block:1.5rem;overflow-x:auto}._8ZofXq_document table{border-collapse:collapse;width:100%;font-size:.925rem}._8ZofXq_document th,._8ZofXq_document td{text-align:start;vertical-align:top;border-block-end:1px solid #222;padding:.65rem .9rem}._8ZofXq_document th{color:#fafafa;background:#0f0f0f;font-weight:650}._8ZofXq_document tr:last-child td{border-block-end:0}._8ZofXq_footnoteRef{font-size:.75em;line-height:0}._8ZofXq_document ._8ZofXq_footnoteRef a{padding-inline:.1em;scroll-margin-block-start:7rem;text-decoration:none}._8ZofXq_footnotes{color:#a3a3a3;border-block-start:1px solid #222;margin-block-start:3rem;padding-block-start:1.25rem;font-size:.925rem}._8ZofXq_document ._8ZofXq_footnotes>h2{color:#fafafa;margin-block:0 .75rem;font-size:1rem;font-weight:650}._8ZofXq_footnotes li{scroll-margin-block-start:7rem}._8ZofXq_footnotes li>p:first-child{margin-block-start:0}._8ZofXq_footnotes li>p:last-child{margin-block-end:0}._8ZofXq_document ._8ZofXq_backLink{margin-inline-start:.15rem;text-decoration:none}._8ZofXq_modelCard{background:linear-gradient(#111,#0a0a0a);border:1px solid #222;border-radius:.85rem;margin-block:1.75rem;padding:1.05rem 1.2rem}._8ZofXq_document ._8ZofXq_modelHeader{align-items:center;gap:.65rem;min-width:0;margin-block:0;display:flex}._8ZofXq_modelLogo{object-fit:contain;border-radius:.3rem;flex:none;block-size:1.5rem;inline-size:1.5rem}._8ZofXq_modelName{color:#fafafa;overflow-wrap:break-word;min-width:0;font-size:1.05rem;font-weight:650}._8ZofXq_document ._8ZofXq_modelCapabilities{flex-wrap:wrap;gap:.4rem;margin-block:.8rem 0;padding-inline-start:0;list-style:none;display:flex}._8ZofXq_document ._8ZofXq_modelCapabilities li{color:#d4d4d8;background:#111;border:1px solid #2a2a2a;border-radius:999px;margin-block:0;padding:.1rem .6rem;font-size:.8rem}._8ZofXq_modelOptional{color:#a3a3a3}._8ZofXq_document ._8ZofXq_modelActions{flex-wrap:wrap;gap:.6rem 1.25rem;margin-block:.9rem 0;font-size:.925rem;display:flex}._8ZofXq_document ._8ZofXq_modelAction{color:var(--color-brand-300,#c4b4fe);font-weight:600}._8ZofXq_srOnly{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@container blog-document (min-width:36rem){._8ZofXq_codeBlock pre,._8ZofXq_literal{padding:1.1rem 1.35rem}._8ZofXq_callout,._8ZofXq_modelCard{padding:1.15rem 1.4rem}}@container blog-document (max-width:22rem){._8ZofXq_document ul,._8ZofXq_document ol{padding-inline-start:1.25rem}._8ZofXq_document th,._8ZofXq_document td{padding:.55rem .7rem}}@media (prefers-reduced-motion:reduce){._8ZofXq_document{scroll-behavior:auto}._8ZofXq_document ._8ZofXq_anchor{transition:none}}
.bruVIG_article{color:#d4d4d8;min-width:0;font-family:var(--font-sans,sans-serif);container:blog-article/inline-size}.bruVIG_article:lang(ar){font-family:var(--font-blog-arabic,var(--font-sans,sans-serif))}.bruVIG_layout{--blog-gutter:1rem;grid-template-columns:minmax(0, 1fr) min(720px, 100% - 2 * var(--blog-gutter)) minmax(0, 1fr);min-width:0;padding-block:2.5rem 4rem;display:grid}.bruVIG_layout>*{grid-column:2;min-width:0}.bruVIG_header{grid-row:1}.bruVIG_tocInline{grid-row:2}.bruVIG_body{grid-row:3}.bruVIG_about{grid-row:4}.bruVIG_category{letter-spacing:.06em;text-transform:uppercase;margin:0 0 .9rem;font-size:.8rem;font-weight:600}.bruVIG_category:lang(ar){letter-spacing:0;text-transform:none;font-size:.9rem}.bruVIG_category a{color:var(--devup-gradient-orange,#fd831c);text-decoration:none}@media (hover:hover){.bruVIG_category a:hover{text-underline-offset:.2em;text-decoration:underline}}.bruVIG_title{color:#fff;letter-spacing:-.02em;overflow-wrap:break-word;word-break:normal;hyphens:manual;text-wrap:balance;margin:0;font-size:clamp(2rem,1.2rem + 3.5cqi,3rem);font-weight:700;line-height:1.15}.bruVIG_title:lang(ar){letter-spacing:0;line-height:1.4}.bruVIG_excerpt{color:#a3a3a3;overflow-wrap:break-word;margin:1rem 0 0;font-size:clamp(1.05rem,.95rem + .6cqi,1.25rem);line-height:1.6}.bruVIG_meta{color:#a3a3a3;border-block-end:1px solid #222;flex-wrap:wrap;align-items:baseline;gap:.35rem 1.25rem;margin-block:1.4rem 0;padding-block-end:1.75rem;font-size:.875rem;display:flex}.bruVIG_byline{color:#fafafa;font-weight:600}.bruVIG_codeButton{background:var(--color-emerald-400,#00d492);color:#000;border-radius:999px;align-self:center;align-items:center;gap:.35rem;min-block-size:2rem;padding-block:.3rem;padding-inline:.9rem;font-size:.85rem;font-weight:650;line-height:1.2;text-decoration:none;transition:filter .15s;display:inline-flex}.bruVIG_codeButton:focus-visible{outline:2px solid var(--color-emerald-400,#00d492);outline-offset:3px}@media (hover:hover){.bruVIG_codeButton:hover{filter:brightness(1.08)}}.bruVIG_externalMark{flex:none;display:block}.bruVIG_article[dir=rtl] .bruVIG_externalMark{transform:scaleX(-1)}.bruVIG_body{padding-block-start:2rem}.bruVIG_tocInline{background:#0f0f0f;border:1px solid #222;border-radius:.75rem;margin-block:1.5rem 0}.bruVIG_tocSummary{cursor:pointer;color:#fafafa;border-radius:.75rem;padding:.75rem 1rem;font-size:.925rem;font-weight:600}.bruVIG_tocSummary:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:2px}.bruVIG_tocInline[open] .bruVIG_tocSummary{border-block-end:1px solid #222;border-end-end-radius:0;border-end-start-radius:0}.bruVIG_tocInline .bruVIG_tocList{padding:.75rem 1rem .9rem}.bruVIG_tocAside{display:none}.bruVIG_tocTitle{color:#fafafa;letter-spacing:.06em;text-transform:uppercase;margin:0 0 .75rem;font-size:.8rem;font-weight:600}.bruVIG_tocTitle:lang(ar){letter-spacing:0;text-transform:none;font-size:.875rem}.bruVIG_tocList{margin:0;padding:0;font-size:.875rem;line-height:1.5;list-style:none}.bruVIG_tocList li{overflow-wrap:break-word;margin-block:.4rem}.bruVIG_tocList .bruVIG_tocSub{padding-inline-start:.9rem}.bruVIG_tocList a{color:#a3a3a3;text-decoration:none}.bruVIG_tocList a:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:2px;border-radius:.2rem}@media (hover:hover){.bruVIG_tocList a:hover{color:#fff}}.bruVIG_about{background:radial-gradient(120% 140% at 0 0,#7c3aed29,#0000 60%),#0f0f0f;border:1px solid #222;border-radius:1rem;margin-block-start:3.5rem;padding:1.5rem}.bruVIG_aboutHeading{color:#fff;margin:0;font-size:1.15rem;font-weight:650}.bruVIG_aboutBody{color:#a3a3a3;overflow-wrap:break-word;margin:.6rem 0 1.25rem;line-height:1.7}.bruVIG_cta{background:var(--devup-brand-gradient-pill,linear-gradient(135deg, #fd831c 0%, #f93d31 30%, #e0296e 65%, #a855f7 100%));min-height:2.5rem;color:var(--devup-brand-gradient-pill-text,#000);border-radius:999px;align-items:center;padding:.55rem 1.15rem;font-size:.925rem;font-weight:650;text-decoration:none;transition:filter .15s;display:inline-flex}.bruVIG_cta:focus-visible{outline:3px solid var(--devup-focus-ring,#fd831c73);outline-offset:3px}@media (hover:hover){.bruVIG_cta:hover{filter:brightness(1.08)}}@container blog-article (min-width:40rem){.bruVIG_layout{--blog-gutter:1.5rem;padding-block:3.5rem 5rem}.bruVIG_about{padding:1.75rem 2rem}}@container blog-article (min-width:64rem){.bruVIG_layout{--blog-gutter:2rem;padding-block:4.5rem 6rem}}@container blog-article (min-width:1100px){.bruVIG_tocInline{display:none}.bruVIG_tocAside{grid-area:3/3/span 2;align-self:start;max-block-size:calc(100dvh - 8rem);max-inline-size:16rem;padding-block-start:2rem;padding-inline:2.5rem 1rem;display:block;position:sticky;top:6rem;overflow-y:auto}}@media (prefers-reduced-motion:reduce){.bruVIG_cta,.bruVIG_codeButton{transition:none}}
.I7f58G_page{color:#d4d4d8;min-width:0;font-family:var(--font-sans,sans-serif);container:blog-code/inline-size}.I7f58G_page:lang(ar){font-family:var(--font-blog-arabic,var(--font-sans,sans-serif))}.I7f58G_shell{--blog-code-gutter:1rem;box-sizing:border-box;inline-size:min(1280px,100%);min-width:0;padding-block:2rem 4rem;padding-inline:var(--blog-code-gutter);margin-inline:auto}.I7f58G_backRow{margin:0 0 1rem;font-size:.9rem}.I7f58G_back{color:#a3a3a3;overflow-wrap:break-word;align-items:baseline;gap:.4rem;text-decoration:none;display:inline-flex}.I7f58G_back:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:2px;border-radius:.2rem}@media (hover:hover){.I7f58G_back:hover{color:#fff}}.I7f58G_backArrow{display:inline-block}.I7f58G_page[dir=rtl] .I7f58G_backArrow{transform:scaleX(-1)}.I7f58G_title{color:#fff;letter-spacing:-.02em;overflow-wrap:break-word;word-break:normal;hyphens:manual;text-wrap:balance;margin:0;font-size:clamp(1.6rem,1.1rem + 2.2cqi,2.4rem);font-weight:700;line-height:1.2}.I7f58G_title:lang(ar){letter-spacing:0;line-height:1.4}.I7f58G_title a{color:inherit;text-decoration:none}.I7f58G_title a:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:2px;border-radius:.2rem}@media (hover:hover){.I7f58G_title a:hover{text-underline-offset:.15em;text-decoration:underline}}.I7f58G_meta{color:#a3a3a3;border-block-end:1px solid #222;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;margin-block:1rem 0;padding-block-end:1.5rem;font-size:.875rem;display:flex}.I7f58G_zip{background:var(--color-emerald-400,#00d492);color:#000;border-radius:999px;align-items:center;min-block-size:2.25rem;padding-block:.4rem;padding-inline:1rem;font-weight:650;text-decoration:none;transition:filter .15s;display:inline-flex}.I7f58G_zip:focus-visible{outline:2px solid var(--color-emerald-400,#00d492);outline-offset:3px}@media (hover:hover){.I7f58G_zip:hover{filter:brightness(1.08)}}.I7f58G_columns{grid-template-columns:minmax(0,1fr);gap:1.5rem;min-width:0;margin-block-start:1.5rem;display:grid}.I7f58G_content{min-width:0}.I7f58G_tree{box-sizing:border-box;min-width:0;max-block-size:20rem;font:.85rem/1.4 var(--font-mono,monospace);text-align:start;background:#0f0f0f;border:1px solid #222;border-radius:.75rem;padding:.5rem;overflow:auto}.I7f58G_treeList{margin:0;padding:0;list-style:none}.I7f58G_treeList .I7f58G_treeList{padding-inline-start:.9rem}.I7f58G_row{color:#d4d4d8;white-space:nowrap;cursor:pointer;border-radius:.4rem;align-items:center;gap:.45rem;min-block-size:1.9rem;padding-block:.15rem;padding-inline:.5rem;text-decoration:none;display:flex}.I7f58G_row:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:-2px}@media (hover:hover){.I7f58G_row:hover{color:#fff;background:#1a1a1a}}.I7f58G_row[aria-current=page]{color:#fff;background:#00d49224;font-weight:600}summary.I7f58G_row{list-style:none}summary.I7f58G_row::-webkit-details-marker{display:none}.I7f58G_icon{flex:none;display:block}.I7f58G_iconOpen{flex:none;display:none}.I7f58G_iconClosed{flex:none;display:block}.I7f58G_folder[open]>summary>.I7f58G_iconOpen{display:block}.I7f58G_folder[open]>summary>.I7f58G_iconClosed{display:none}.I7f58G_file{background:#0f0f0f;border:1px solid #222;border-radius:.75rem;min-width:0;overflow:hidden}.I7f58G_fileHeader{border-block-end:1px solid #222;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding-block:.75rem;padding-inline:1rem;display:flex}.I7f58G_filePath{color:#fff;min-width:0;font:600 .925rem/1.4 var(--font-mono,monospace);overflow-wrap:break-word;word-break:normal;align-items:center;gap:.5rem;margin:0;display:flex}.I7f58G_filePath>bdi{min-width:0}.I7f58G_fileSize{color:#a3a3a3;font-size:.85rem}.I7f58G_actions{flex-wrap:wrap;gap:.5rem;margin-inline-start:auto;display:flex}.I7f58G_action{color:#fafafa;border:1px solid #333;border-radius:.5rem;align-items:center;min-block-size:2rem;padding-block:.25rem;padding-inline:.8rem;font-size:.85rem;text-decoration:none;display:inline-flex}.I7f58G_action:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:2px}@media (hover:hover){.I7f58G_action:hover{background:#1a1a1a}}.I7f58G_notice{color:#d4d4d8;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0;padding-block:1.25rem;padding-inline:1rem;display:flex}.I7f58G_media{padding:1rem}.I7f58G_image{border-radius:.5rem;block-size:auto;max-inline-size:100%;margin-inline:auto;display:block}.I7f58G_codeBlock{text-align:start;background:#0a0a0a;min-width:0}.I7f58G_codeHeader{border-block-end:1px solid #1c1c1c;justify-content:space-between;align-items:center;gap:.75rem;padding-block:.4rem;padding-inline:.75rem;display:flex}.I7f58G_codeLanguage{color:#c4b4fe;font:600 .72rem/1.4 var(--font-mono,monospace);letter-spacing:.04em}.I7f58G_lines{min-width:0;color:#e5e5e5;max-inline-size:100%;font:.85rem/1.6 var(--font-mono,monospace);tab-size:4;white-space:pre;overflow-wrap:normal;word-break:normal;background:#0a0a0a;margin:0;padding-block:.75rem;overflow-x:auto}.I7f58G_lines:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:-2px}.I7f58G_linesInner{inline-size:max-content;min-inline-size:100%;display:block}.I7f58G_line{scroll-margin-block-start:8rem;display:flex}.I7f58G_line:target{background:#fd831c29}.I7f58G_lineNumber{box-sizing:border-box;color:#8b8b8b;text-align:end;-webkit-user-select:none;user-select:none;background:#0a0a0a;flex:none;min-inline-size:3.75rem;padding-inline:.75rem 1rem;text-decoration:none;position:sticky;inset-inline-start:0}.I7f58G_line:target .I7f58G_lineNumber{color:#fd831c;background:#24170b}.I7f58G_lineNumber:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:-2px}@media (hover:hover){.I7f58G_lineNumber:hover{color:#fafafa}}.I7f58G_lineText{white-space:pre;flex:none;padding-inline-end:1rem}.I7f58G_bidi{color:#fca5a5;background:#3f1d1d;border-radius:.2em;padding-inline:.15em;font-size:.85em}.I7f58G_readme{background:#0f0f0f;border:1px solid #222;border-radius:.75rem;min-width:0;overflow:hidden}.I7f58G_readmeHeader{font:600 .9rem/1.4 var(--font-mono,monospace);border-block-end:1px solid #222;align-items:center;gap:.5rem;padding-block:.75rem;padding-inline:1rem;display:flex}.I7f58G_readmeHeader a{color:#fafafa;text-decoration:none}.I7f58G_readmeHeader a:focus-visible{outline:2px solid var(--color-brand-300,#c4b4fe);outline-offset:2px;border-radius:.2rem}@media (hover:hover){.I7f58G_readmeHeader a:hover{text-decoration:underline}}.I7f58G_readmeBody{min-width:0;padding-block:1rem 1.5rem;padding-inline:1.25rem}.I7f58G_noReadme{color:#a3a3a3;border:1px dashed #333;border-radius:.75rem;margin:0;padding:1rem}@container blog-code (min-width:48rem){.I7f58G_shell{--blog-code-gutter:1.5rem;padding-block:2.5rem 5rem}.I7f58G_columns{grid-template-columns:minmax(12rem,16rem) minmax(0,1fr);align-items:start}.I7f58G_tree{max-block-size:calc(100dvh - 8rem);position:sticky;inset-block-start:6rem}.I7f58G_readmeBody{padding-block:1.5rem 2rem;padding-inline:2rem}}@container blog-code (min-width:64rem){.I7f58G_shell{--blog-code-gutter:2rem}.I7f58G_columns{grid-template-columns:18rem minmax(0,1fr);gap:2rem}}@media (prefers-reduced-motion:reduce){.I7f58G_zip{transition:none}}
