@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/vazirmatn-arabic-wght-normal.Cafbb7Zc.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/vazirmatn-latin-ext-wght-normal.tDTa1Fj6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/vazirmatn-latin-wght-normal.BFexNX-K.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-theme=neon]{--bg:#07060d;--bg2:#110e1f;--fg:#ece9ff;--muted:#9a94bd;--accent:#a855f7;--accent2:#22d3ee;--glass:#ffffff0d;--border:#ffffff1a;--shadow:0 20px 60px -20px #a855f773;color-scheme:dark}[data-theme=cyber]{--bg:#030807;--bg2:#07130f;--fg:#dcfff0;--muted:#7fb39d;--accent:#10f5a0;--accent2:#f5e50a;--glass:#10f5a00d;--border:#10f5a029;--shadow:0 20px 60px -20px #10f5a066}[data-theme=light]{--bg:#f6f4fb;--bg2:#fff;--fg:#16132a;--muted:#3e3a56;--accent:#7c3aed;--accent2:#0891b2;--glass:#fff9;--border:#16132a1a;--shadow:0 20px 60px -25px #7c3aed59;color-scheme:light}@view-transition{navigation:auto}::view-transition-old(root){animation:.28s both vt-out}::view-transition-new(root){animation:.28s forwards vt-in}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}html.no-motion ::view-transition-group(*),html.no-motion ::view-transition-old(*),html.no-motion ::view-transition-new(*){animation:none!important}*,:before,:after{box-sizing:border-box}html{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;font-family:Inter Variable,Vazirmatn Variable,system-ui,sans-serif}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}html:lang(fa),html[lang|=fa]{font-family:Vazirmatn Variable,Inter Variable,system-ui,sans-serif}html.lenis,html.lenis body{height:auto}body{min-height:100vh;margin:0;line-height:1.7;transition:background .4s,color .4s;overflow-x:clip}a{color:inherit}::selection{background:var(--accent);color:var(--bg)}.container{width:min(1100px,100% - 2.5rem);margin-inline:auto}.gradient-text{background:linear-gradient(100deg, var(--accent), var(--accent2));color:#0000;-webkit-background-clip:text;background-clip:text}.glass{background:var(--glass);border:1px solid var(--border);-webkit-backdrop-filter:blur(14px)saturate(140%);border-radius:1.25rem}.btn{border:1px solid var(--border);background:var(--glass);backdrop-filter:blur(10px);border-radius:999px;align-items:center;gap:.5rem;padding:.8rem 1.4rem;font-weight:600;text-decoration:none;transition:transform .25s,box-shadow .25s,background .25s;display:inline-flex}.btn.primary{background:linear-gradient(100deg, var(--accent), var(--accent2));color:#0b0716;box-shadow:var(--shadow);border:0}.btn:hover,.btn:focus-visible{transform:translateY(-2px)}pre .copy-btn:focus-visible{opacity:1}.section{padding-block:5rem}.section-title{margin:0 0 .5rem;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.2}.section-lede{color:var(--muted);max-width:60ch;margin:0 0 2.5rem}.tag{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.15rem .65rem;font-size:.78rem;text-decoration:none;display:inline-block}.tag:hover{color:var(--accent);border-color:var(--accent)}.astro-code,.astro-code span{color:var(--shiki-dark);background-color:var(--shiki-dark-bg)}[data-theme=light] .astro-code,[data-theme=light] .astro-code span{color:var(--shiki-light);background-color:var(--shiki-light-bg)}.reveal{opacity:1;transform:none}html.is-motion .reveal{opacity:0;transform:translateY(30px)}html:not(.is-motion) .reveal,html.no-motion .reveal{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal,html.is-motion .reveal,html.no-motion .reveal{opacity:1;transform:none}.btn:hover,.btn:focus-visible{transform:none}body.konami{animation:none}}html.no-motion .btn:hover,html.no-motion .btn:focus-visible{transform:none}html.no-motion body.konami{animation:none}@media (forced-colors:active){:focus-visible{outline-color:highlight}.gradient-text{color:canvastext;-webkit-text-fill-color:CanvasText;background:0 0}.btn.primary{color:buttontext;box-shadow:none;background:buttonface;border:1px solid buttontext}}body.konami{animation:4s linear infinite hue}@keyframes hue{to{filter:hue-rotate(360deg)}}
