.blog-background[data-v-553aa2a3]{position:fixed;inset:0;z-index:-1;pointer-events:none}.blog-background__field[data-v-553aa2a3]{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 0 35%,rgb(59 130 246/9%),transparent 35%),radial-gradient(ellipse at 100% 75%,rgb(59 130 246/7%),transparent 35%);-webkit-mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.65) 12%,transparent 34%,transparent 66%,rgba(0,0,0,.65) 88%,#000);mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.65) 12%,transparent 34%,transparent 66%,rgba(0,0,0,.65) 88%,#000)}.blog-background__rail[data-v-553aa2a3]{position:absolute;top:0;bottom:0;width:clamp(160px,24vw,350px);direction:ltr}.blog-background__rail--left[data-v-553aa2a3]{left:0}.blog-background__rail--right[data-v-553aa2a3]{right:0;transform:translateY(-76px)}.blog-background svg[data-v-553aa2a3]{display:block;width:100%;height:100%}.blog-background__branch[data-v-553aa2a3],.blog-background__packet[data-v-553aa2a3],.blog-background__spine[data-v-553aa2a3]{fill:none;stroke:#3b82f6;vector-effect:non-scaling-stroke}.blog-background__spine[data-v-553aa2a3]{stroke-opacity:.24;stroke-dasharray:2 8}.blog-background__branch[data-v-553aa2a3]{stroke-opacity:.42}.blog-background__node[data-v-553aa2a3]{fill:#60a5fa;opacity:.65}.blog-background__hash[data-v-553aa2a3],.blog-background__number[data-v-553aa2a3],.blog-background__plus[data-v-553aa2a3],.blog-background__syntax[data-v-553aa2a3]{font:10px ui-monospace,monospace;fill:#93c5fd}.blog-background__hash[data-v-553aa2a3]{letter-spacing:1.5px;opacity:.65}.blog-background__syntax[data-v-553aa2a3]{fill:#60a5fa;opacity:.8}.blog-background__number[data-v-553aa2a3]{opacity:.4}.blog-background__code[data-v-553aa2a3]{stroke:#6383ac;stroke-width:3;stroke-opacity:.5;vector-effect:non-scaling-stroke}.blog-background__addition .blog-background__code[data-v-553aa2a3]{stroke:#60a5fa;stroke-opacity:.8}.blog-background__highlight[data-v-553aa2a3]{fill:#3b82f6;opacity:.1}.blog-background__cursor[data-v-553aa2a3]{fill:#bfdbfe;animation:blog-revision-cursor-553aa2a3 13s step-end infinite;animation-delay:var(--delay)}.blog-background__hunk[data-v-553aa2a3]{animation:blog-revision-write-553aa2a3 13s step-end infinite;animation-delay:var(--delay)}.blog-background__packet[data-v-553aa2a3]{stroke:#93c5fd;stroke-width:2;stroke-opacity:.65;stroke-dasharray:22 978;animation:blog-revision-packet-553aa2a3 16s linear infinite}.blog-background__rail--right[data-v-553aa2a3] :is(.blog-background__hunk,.blog-background__cursor){animation-direction:reverse}.blog-background__rail--right .blog-background__packet[data-v-553aa2a3]{animation-delay:-8s}.blog-background[data-v-553aa2a3] :is(.blog-background__hunk,.blog-background__cursor,.blog-background__packet){animation-play-state:paused}.blog-background.is-running[data-v-553aa2a3] :is(.blog-background__hunk,.blog-background__cursor,.blog-background__packet){animation-play-state:running}.is-reading .blog-background__rail--left[data-v-553aa2a3]{transform:translateY(var(--blog-scroll-shift))}.is-reading .blog-background__rail--right[data-v-553aa2a3]{transform:translateY(var(--blog-scroll-return))}.is-reading .blog-background__hunk[data-v-553aa2a3]{animation:none;opacity:.25}.is-reading .is-current .blog-background__hunk[data-v-553aa2a3]{opacity:1}.is-reading .is-current .blog-background__branch[data-v-553aa2a3]{stroke-opacity:.85}.is-reading .blog-background__cursor[data-v-553aa2a3]{display:none}.is-reading .blog-background__packet[data-v-553aa2a3]{animation:none;stroke-dashoffset:var(--blog-scroll-packet)}@keyframes blog-revision-write-553aa2a3{0%,82%,to{opacity:.65;clip-path:inset(0)}84%{opacity:.3;clip-path:inset(0 0 75% 0)}86%{opacity:1;clip-path:inset(0 0 50% 0)}88%{clip-path:inset(0 0 22% 0)}90%,96%{opacity:1;clip-path:inset(0)}}@keyframes blog-revision-cursor-553aa2a3{0%,81%,97%,to{opacity:0;transform:translateY(0)}84%{opacity:1;transform:translateY(24px)}86%{transform:translateY(62px)}88%{transform:translateY(100px)}90%,95%{transform:translateY(119px)}}@keyframes blog-revision-packet-553aa2a3{to{stroke-dashoffset:-1000}}@media(max-width:767px){.blog-background__field[data-v-553aa2a3]{opacity:.7;-webkit-mask-image:linear-gradient(90deg,#000,transparent 25%,transparent 75%,#000);mask-image:linear-gradient(90deg,#000,transparent 25%,transparent 75%,#000)}.blog-background__hash[data-v-553aa2a3],.blog-background__number[data-v-553aa2a3],.blog-background__plus[data-v-553aa2a3],.blog-background__rail--right[data-v-553aa2a3],.blog-background__syntax[data-v-553aa2a3]{display:none}}@media(prefers-reduced-motion:reduce){.is-reading .blog-background__rail[data-v-553aa2a3]{transform:none}.blog-background[data-v-553aa2a3] :is(.blog-background__hunk,.blog-background__cursor,.blog-background__packet){animation:none}.blog-background__cursor[data-v-553aa2a3],.blog-background__packet[data-v-553aa2a3]{display:none}}@media print{.blog-background[data-v-553aa2a3]{display:none!important}}.blog-page{--blog-line:rgba(96,165,250,.24);--blog-accent:#93c5fd;--blog-reading-font:var(--ui-font);--blog-heading-font:var(--blog-reading-font);position:relative;isolation:isolate;padding-block:28px 36px;color:var(--title-color);font-family:var(--ui-font)}.blog-page *,.blog-page :after,.blog-page :before{box-sizing:border-box}.blog-page :is(h1,h2,p){margin:0}.blog-page a{color:inherit}.blog-page :is(a,button):focus-visible{outline:2px solid var(--blog-accent);outline-offset:5px}.blog-page a{text-decoration-thickness:1px;text-underline-offset:4px}.blog-code__bar,.blog-filebar,.blog-sectionbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;font:500 .72rem/1.7 var(--ui-font);letter-spacing:.035em;color:#9caec7}.blog-filebar{padding-block-end:18px;border-bottom:1px solid var(--blog-line)}.blog-label{color:var(--blog-accent);font:500 .75rem/1.8 var(--ui-font)}.blog-intro{padding-block:clamp(36px,6vw,72px) 44px}.blog-intro h1{font:650 clamp(2.4rem,5.2vw,5rem)/1.15 var(--title-font);margin-block:18px;overflow-wrap:anywhere}.blog-intro__description{max-width:58ch;font:400 1.25rem/1.85 var(--description-font);color:var(--description-color)}.blog-sectionbar{padding-block:18px;border-top:1px solid var(--blog-line)}.blog-sectionbar h2{font:inherit;color:var(--blog-accent)}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px}.blog-grid>*{display:flex;min-width:0}.blog-card.q-card{position:relative;display:flex;flex-direction:column;width:100%;overflow:hidden;color:inherit;border:1px solid var(--blog-line);border-top:2px solid #3b82f6;background:linear-gradient(160deg,#0b1728,#050b13 65%);clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);transition:border-color .18s ease}:where([dir=rtl]) .blog-card.q-card{background:linear-gradient(-160deg,#0b1728,#050b13 65%)}.blog-card:focus-within{border-color:#60a5fa}.blog-card :is(a,button):focus-visible{outline-offset:-3px}.blog-card__visual{position:relative;flex:none;min-width:0;border-bottom:1px solid var(--blog-line);background:linear-gradient(rgb(59 130 246/5%) 1px,transparent 0),linear-gradient(90deg,rgb(59 130 246/5%) 1px,transparent 0),radial-gradient(ellipse at center,#10284c,#030913 80%)}:where([dir=rtl]) .blog-card__visual{background:linear-gradient(rgb(59 130 246/5%) 1px,transparent 0),linear-gradient(-90deg,rgb(59 130 246/5%) 1px,transparent 0),radial-gradient(ellipse at center,#10284c,#030913 80%)}:where([dir]) .blog-card__visual{background-size:24px 24px,24px 24px,auto}.blog-card__index{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;padding:9px 16px;border-bottom:1px solid var(--blog-line);background:#07111e;color:#719ad2;font:500 .6875rem/1.5 var(--ui-font)}.blog-card__index>span:first-child{color:#bfdbfe}.blog-card__cover,.blog-card__placeholder{display:grid;place-items:center;width:100%;aspect-ratio:16/9;overflow:hidden}.blog-card__placeholder{color:#3b82f6;border:1px dashed var(--blog-line)}.blog-card__tags{align-content:start}.blog-card .blog-card__tags .q-badge{padding:3px 7px;font-size:.6875rem;background:#0a1628}.blog-card__signal{display:inline-flex;align-items:center;gap:8px;color:#93c5fd}.blog-card__signal i{width:5px;height:5px;background:#3b82f6;box-shadow:0 0 8px #3b82f6a6}.blog-card__content{display:flex;flex:1;flex-direction:column;gap:14px;min-width:0;padding:20px}.blog-card__copy{flex:1;min-width:0}.blog-tags{display:flex;flex-wrap:wrap;gap:8px}.blog-tags .q-badge{padding:5px 9px;border-color:#315176;border-radius:0;color:var(--blog-accent);font:500 .75rem/1.5 var(--ui-font)}.blog-card h2{font:650 1.1875rem/1.45 var(--blog-heading-font);margin-block:0 12px;overflow-wrap:anywhere;text-wrap:pretty}.blog-card h2 a{text-decoration:none}.blog-card h2 a:hover{color:var(--blog-accent)}.blog-summary{color:#b5c4d9;font:400 1.0625rem/1.85 var(--blog-reading-font)}.blog-card .blog-summary{font-size:.9375rem;line-height:1.75}.blog-card__excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.blog-card__footer{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding-block-start:12px;border-top:1px solid var(--blog-line)}.blog-card .blog-meta{justify-content:space-between;gap:6px 14px;font-size:.6875rem}.blog-meta--compact>span{display:inline-flex;align-items:center;gap:5px}.blog-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;color:#a1b3cd;font:400 .75rem/1.8 var(--ui-font)}.blog-meta a{color:#d7e6fa}.blog-button.q-btn{min-height:46px;padding:12px 20px;font:600 .8125rem/1.5 var(--ui-font)}.blog-button .q-btn__content{gap:18px}.blog-button--primary{background:#3b82f6;color:#fff}.blog-languages{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;font:400 .8125rem/1.8 var(--ui-font);color:#afbed4}.blog-languages a[aria-current=page]{color:var(--blog-accent)}.blog-card .blog-languages{gap:4px}.blog-card .blog-languages a{display:grid;place-items:center;min-width:44px;min-height:44px;padding:8px;border:1px solid transparent;color:#8ea6c7;text-decoration:none;font-size:.75rem}.blog-card .blog-languages a.is-current{border-color:var(--blog-line);background:#3b82f614;color:#bfdbfe}.blog-card .blog-card__read{justify-self:end;min-height:44px;min-width:0;max-width:100%;padding:10px 12px;color:#bfdbfe;background:#102443;font-size:.75rem}.blog-card__read .q-btn__content{gap:8px}@media(hover:hover)and (pointer:fine){.blog-card:hover{border-color:#60a5fa}.blog-card .blog-languages a:hover{color:#dbeafe;border-color:#527cba}}.blog-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding-block:28px;color:#a4b7d1;font:400 .8125rem/1.8 var(--ui-font)}.blog-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.blog-card__copy[lang=fa]{--blog-reading-font:"Vazirmatn Variable",Tahoma,sans-serif;--blog-heading-font:"Vazirmatn Variable",Tahoma,sans-serif}.blog-page :is(.typed-text,.page-glitch,.glitch-text){max-width:100%;overflow-wrap:inherit}.blog-page .glitch-text{white-space:normal}.blog-page .blog-intro{text-shadow:0 2px 12px #000,0 0 24px #000}html[dir=rtl] .blog-intro h1{line-height:1.6}.blog-card__copy[dir=rtl] h2{line-height:1.7;letter-spacing:normal}@media(max-width:1199px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}@media(max-width:767px){.blog-grid{grid-template-columns:minmax(0,1fr)}.blog-card__content{padding:18px;gap:14px}.blog-card .blog-meta{gap:4px 12px}.blog-card h2{font-size:1.25rem;margin-bottom:10px}.blog-card .blog-summary{font-size:1rem}.blog-card__footer{gap:8px}.blog-card .blog-card__read{padding-inline:10px}.blog-card .blog-languages{gap:4px}.blog-intro{padding-block:34px}.blog-intro__description{font-size:1.125rem}.blog-summary{font-size:1rem}}@media(max-width:359px){.blog-card__content{padding:16px}}@media(prefers-reduced-motion:reduce){.blog-card.q-card{transition:none}}
